#category-details fieldset{border:1px solid #ffffff25;border-radius:12px;margin:16px 0;padding:16px;min-width:0}
#category-details legend{font-size:13px;padding:0 6px;color:#cdd3db}
#category-details label{display:flex;align-items:center;gap:10px;min-height:44px}
#category-details input[type=radio],#category-details input[type=checkbox]{width:20px;min-height:20px;margin:0;flex-shrink:0}
.booking-steps button{font:inherit;color:inherit;background:none;border:0;text-align:left;padding:0;min-height:44px;cursor:pointer}
.booking-steps button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.booking-check{align-items:flex-start;line-height:1.7}
.booking-check input{flex-shrink:0}
.booking-layout[hidden],.booking-steps[hidden]{display:none}
#booking-next:disabled{opacity:.65;cursor:wait}
#booking-complete h2+p{overflow-wrap:anywhere;white-space:pre-line}
.booking-period-picker{display:flex;flex-wrap:wrap;gap:12px;border:1px solid #ffffff25;border-radius:12px;padding:12px 16px;margin:24px 0;min-width:0}.booking-period-picker legend{font-size:12px;padding:0 6px}.booking-step .booking-period-picker label{display:flex;gap:9px;align-items:center;min-height:44px;margin:0;padding:0 10px}.booking-period-picker input{width:18px;height:18px;accent-color:var(--accent)}.booking-step .booking-end-date[hidden]{display:none}.booking-step .booking-help[hidden]{display:none}
@media(max-width:600px){.booking-shell{padding-top:26px}.booking-page-title h1{font-size:30px}.booking-steps{gap:8px}.booking-steps li{font-size:11px}.booking-layout>form{padding:20px}.booking-top{margin-top:12px}}
