/* Custom calendar hides occupied dates, unlike native input type=date. */
.booking-date-picker{display:flex;flex-direction:column;gap:9px;min-width:0}
.booking-date-picker input[data-booking-date]{width:100%;min-height:47px;cursor:pointer;background:#10161d;color:#fff}
.booking-calendar-button,.booking-calendar-head button,.booking-calendar-day{font:inherit;cursor:pointer}
.booking-calendar-button{min-height:44px;padding:9px 13px;border:1px solid #59646d;border-radius:8px;color:#fff;background:#1b2833;font-weight:700;text-align:left}
.booking-calendar-button:hover,.booking-calendar-button:focus-visible{border-color:#ec1732}
.booking-date-picker [hidden]{display:none!important}
.booking-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px}
.booking-calendar-head strong{font-size:16px;text-transform:capitalize}
.booking-calendar-head button{border:1px solid #444f5a;background:#161e27;color:#fff;border-radius:8px;padding:3px 12px;font-size:24px;min-width:44px;min-height:44px}
.booking-calendar-head button:disabled{opacity:.3;cursor:default}
[data-calendar]{padding:14px;background:#0c1118;border:1px solid #3d4650;border-radius:12px;max-width:430px}
.booking-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;align-items:center;text-align:center}
.booking-calendar-weekday{font-size:12px;font-weight:750;color:#a1b0c0;padding-bottom:5px}
.booking-calendar-day{aspect-ratio:1;min-width:0;border-radius:8px;border:1px solid #394954;background:#172633;color:#fff;font-weight:700}
.booking-calendar-day:not(:disabled):hover,.booking-calendar-day:not(:disabled):focus-visible,.booking-calendar-day.is-selected{background:#c61029;border-color:#ed1531;color:#fff}
.booking-calendar-day:disabled{opacity:.22;cursor:not-allowed;background:#181b21}
.booking-availability-status,.booking-time-help{font-size:12px;color:#bfcbd7;line-height:1.6;margin:3px 0 0}
.booking-time-input select[data-time-shortcut] option:disabled{color:#8792a0}
.booking-time-input input:disabled{opacity:.5}
@media(max-width:600px){[data-calendar]{padding:9px;max-width:none}.booking-calendar-grid{gap:3px}.booking-calendar-day{min-height:39px;aspect-ratio:auto}.booking-calendar-button{min-height:46px}}
