[hidden]{display:none!important}
.config #bookingFields{scroll-margin-top:28px;border-top:1px solid var(--line);margin-top:26px;padding-top:25px}
.booking-calendar .field-help{margin-bottom:18px;font-size:12px;line-height:1.65;color:#a7b2bd}
.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin:16px 0;gap:12px}
.calendar-nav strong{font-size:16px;text-transform:capitalize}
.calendar-nav button{width:42px;height:42px;border:1px solid #2a5f86;background:#0d2130;color:#d8efff;border-radius:3px;font-size:25px;cursor:pointer}
.calendar-nav button:disabled{opacity:.35;cursor:default}
.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.calendar-week{margin-bottom:8px;font-size:11px;color:#a0adba;text-align:center}
.calendar-day{min-height:57px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1px solid #285a7c;border-radius:3px;background:#10283b;color:#eef8ff;cursor:pointer}
.calendar-day b{font:600 15px Manrope}.calendar-day small{font-size:9px;color:#87caff}
.calendar-day:hover{border-color:#68c1ff;background:#164266}.calendar-day[aria-pressed="true"]{background:#168fdf;border-color:#9ddaff;color:#fff}.calendar-day[aria-pressed="true"] small{color:#fff}
.calendar-day:disabled{background:#0a0f15;border-color:#18232e;color:#515f6b;cursor:not-allowed}.calendar-message{grid-column:1/-1;font-size:12px;color:#acb8c4;padding:20px 0}
.selected-date{font-size:12px;line-height:1.6;color:#d1eaff;background:#0b1e2d;padding:12px;border-left:2px solid var(--blue)}
.booking-details{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-details legend{margin-bottom:17px}
.booking-details label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#c9d4de}.booking-details input,.booking-details textarea,.admin-wrap input{background:#090e14;border:1px solid #324252;border-radius:3px;padding:13px;color:#f5f7fa;min-width:0;font:500 13px Manrope;width:100%}.booking-details .full-width{grid-column:1/-1}.booking-details small{color:#788c9e}
.booking-honeypot{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}.booking-error{color:#ffa5a5;font-size:12px;line-height:1.6}.booking-submit{width:100%;margin-top:14px}.booking-submit:disabled{opacity:.55;cursor:wait}
.booking-success{padding:24px;border:1px solid #256c9e;background:#0b2233;margin-top:24px}.booking-success h3{font-size:24px;margin-bottom:12px}.booking-success p{font-size:13px;color:#b5c8d8;line-height:1.7}.booking-success small{font-size:10px;word-break:break-word;color:#6fa4cd}
.offer-choice{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6;margin-top:15px;color:#b9daf4}.offer-choice input{margin-top:4px;accent-color:var(--blue)}.extra-option.included label span{background:#10251e;border-color:#254d3d}.extra-option.included small{color:#8ccdb0}.extra-option.included input{pointer-events:none}
#offerSummary{color:#8ccdb0;margin-top:8px;font-size:11px}
.modal-card{max-height:90vh;overflow-y:auto}.modal-card:focus{outline:none}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #8ed2ff;outline-offset:3px}.extras input:focus-visible+span,.segmented input:focus-visible+span{outline:2px solid #8ed2ff;outline-offset:3px}
.admin-wrap{max-width:1000px;margin:auto;padding:40px 24px}.admin-wrap>h1{font-size:44px;line-height:1.1;margin:24px 0}.admin-wrap>p{font-size:14px;line-height:1.7;color:#a4b5c4}.booking-notice{border-left:2px solid #deaa51;background:#251d10;padding:16px}.admin-block{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:25px 0}.admin-block input{max-width:180px}.admin-booking{padding:24px;background:#0d141c;border:1px solid #2c3d4c;margin-top:18px}.admin-booking-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-booking-top h3{margin:0;font-size:20px}.admin-booking-top span{color:#77c7ff;font-size:12px}.admin-booking p{font-size:13px;line-height:1.6;color:#c3cfdb}.admin-booking a{color:#77c7ff}.admin-booking-actions{display:flex;align-items:flex-end;gap:12px;margin-top:18px;flex-wrap:wrap}.admin-booking-actions label{font-size:12px}.admin-booking-actions input{display:block;margin-top:7px}.blocked-day{display:flex;align-items:center;gap:20px;font-size:13px;padding:10px 0}.blocked-day button{padding:10px}
@media(max-width:620px){.booking-details{grid-template-columns:1fr}.calendar-day{min-height:49px}.calendar-days,.calendar-week{gap:4px}.calendar-day small{font-size:8px}.calendar-day b{font-size:13px}.admin-wrap{padding:25px 18px}.admin-booking-top{display:block}.admin-booking-top span{display:block;margin-top:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{transition:none;transform:none}}

.time-slot-fields{margin:20px 0;padding:18px;border:1px solid #2e4b63;border-radius:9px;background:#0b1824}
.time-slot-fields legend{padding:0 7px;font-size:15px}
.time-slot-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.time-slot-option{display:block;position:relative}
.time-slot-option input{position:absolute;opacity:0;width:1px;height:1px}
.time-slot-option span{display:flex;flex-direction:column;gap:7px;padding:17px 12px;border:1px solid #3d617a;border-radius:7px;background:#102333;cursor:pointer;font-size:14px}
.time-slot-option small{font-size:11px;color:#a1c5dc}
.time-slot-option input:checked+span{border-color:#8bd7ff;background:#12456a}
.time-slot-option input:focus-visible+span{outline:2px solid #b7e7ff;outline-offset:3px}
.time-slot-option input:disabled+span{opacity:.45;cursor:not-allowed}
.calendar-day small.weekend-periods{font-size:7px;line-height:1.4;white-space:pre-line;text-align:center}
.calendar-day:has(.weekend-periods){min-height:70px}
.removal-quantity{padding:18px;border:1px solid #2e4b63;background:#0b1824;border-radius:8px;margin-top:14px}
.removal-quantity label{display:block;font-size:13px;margin-bottom:10px;color:#d6e9f6}
.removal-quantity p{font-size:11px;color:#9cb7c9;margin-bottom:0}
@media(max-width:370px){.time-slot-options{grid-template-columns:1fr}.calendar-day small.weekend-periods{font-size:6px}}
