.sdp-picker{
    position:fixed;
    top:0;
    left:0;
    z-index:20050;
    width:255px;
    background:#fff;
    border:1px solid #f0d4bc;
    border-radius:10px;
    box-shadow:0 8px 18px rgba(0,0,0,.10);
    overflow:hidden;
    user-select:none;
}

.sdp-picker.d-none{
    display:none !important;
}

.sdp-picker__header{
    height:34px;
    background:var(--main-orange, #eb7719);
    color:#fff;
    display:grid;
    grid-template-columns:24px 24px 1fr 24px 24px;
    align-items:center;
    gap:2px;
    padding:0 4px;
}

.sdp-picker__title{
    text-align:center;
    font-size:11px;
    font-weight:700;
    letter-spacing:.1px;
    white-space:nowrap;
}

.sdp-picker__nav{
    width:22px;
    height:22px;
    border:none;
    border-radius:999px;
    background:transparent;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:11px;
    cursor:pointer;
    transition:.15s ease;
}

.sdp-picker__nav:hover{
    background:rgba(255,255,255,.18);
}

.sdp-picker__weekdays{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:0;
    padding:6px 6px 3px;
    background:#fff;
}

.sdp-picker__weekday{
    text-align:center;
    font-size:10px;
    font-weight:700;
    color:#7a7a7a;
    line-height:1;
}

.sdp-picker__days{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:1px;
    padding:0 7px 7px;
    background:#fff;
}

.sdp-picker__day{
    height:28px;
    border:none;
    border-radius:999px;
    background:transparent;
    color:#333;
    font-size:11px;
    cursor:pointer;
    transition:.15s ease;
    display:flex;
    align-items:center;
    justify-content:center;
}

.sdp-picker__day:hover:not(.is-selected){
    background:#fff2e6;
    color:var(--main-orange, #eb7719);
}

.sdp-picker__day.is-other-month{
    color:#cfcfcf;
}

.sdp-picker__day.is-today{
    box-shadow:inset 0 0 0 1px #ffb37c;
    font-weight:600;
}

.sdp-picker__day.is-selected{
    background:var(--main-orange, #eb7719);
    color:#fff;
    font-weight:700;
}

.sdp-picker__footer{
    border-top:1px solid #f3e4d7;
    background:#fff;
    padding:6px 8px;
    display:flex;
    justify-content:center;
}

.sdp-picker__today{
    border:none;
    background:transparent;
    color:var(--main-orange, #eb7719);
    font-size:11px;
    font-weight:700;
    cursor:pointer;
    padding:3px 8px;
    border-radius:8px;
    transition:.15s ease;
}

.sdp-picker__today:hover{
    background:#fff2e6;
}

[data-sdp]{
    cursor:text;
}

.sdp-time-input{
    min-width:92px;
    max-width:110px;
    text-align:center;
}

.sdp-picker.is-datetime{
    width:280px;
}

.sdp-picker__time{
    border-top:1px solid #f3e4d7;
    padding:8px 10px 10px;
    background:#fffaf5;
}

.sdp-time-label{
    font-size:11px;
    font-weight:700;
    color:#9a5a22;
    margin-bottom:6px;
    text-align:center;
}

.sdp-time-wheels{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
}

.sdp-time-col{
    width:72px;
    max-height:120px;
    overflow-y:auto;
    border:1px solid #f0d4bc;
    border-radius:10px;
    background:#fff;
    scroll-snap-type:y proximity;
    -webkit-overflow-scrolling:touch;
}

.sdp-time-col::-webkit-scrollbar{
    width:4px;
}

.sdp-time-col::-webkit-scrollbar-thumb{
    background:#efc9a7;
    border-radius:999px;
}

.sdp-time-item{
    height:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    font-weight:600;
    color:#555;
    cursor:pointer;
    scroll-snap-align:center;
    border:none;
    background:transparent;
    width:100%;
    padding:0;
}

.sdp-time-item:hover{
    background:#fff2e6;
    color:var(--main-orange, #eb7719);
}

.sdp-time-item.is-active{
    background:var(--main-orange, #eb7719);
    color:#fff;
}

.sdp-time-sep{
    font-size:16px;
    font-weight:700;
    color:#eb7719;
    line-height:1;
}