.booking-time-picker{margin-top:26px}
.booking-time-picker h3{font:400 1rem/1.4 Arial,Helvetica,sans-serif;color:var(--khaki);margin:0 0 14px}
.time-tablist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--umber)}
.time-tablist button{position:relative;min-height:48px;padding:9px 8px;color:var(--khaki);font-size:.875rem;background:#2a201a;border:0;border-right:1px solid var(--umber);transition:background .2s,color .2s}
.time-tablist button:last-child{border-right:0}
.time-tablist button[aria-selected="true"]{background:var(--khaki);color:var(--ink);font-weight:700}
.time-tablist button:hover:not([aria-selected="true"]){background:#4c3729;color:var(--ivory)}
.time-tabpanel{padding-top:14px}
.time-tabpanel[hidden]{display:none}
.booking-time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.booking-time-grid button{display:grid;place-items:center;min-width:0;min-height:44px;padding:7px 4px;border:1px solid var(--umber);background:#32251d;color:var(--ivory);font-size:.875rem;line-height:1.25;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.booking-time-grid button:hover{border-color:var(--khaki);background:#493522}
.booking-time-grid button[aria-pressed="true"]{background:var(--khaki);color:var(--ink);border-color:var(--khaki);font-weight:700}
.time-availability-note{margin:14px 0 0;font-size:.8125rem;line-height:1.6;color:var(--khaki)}
@media(max-width:480px){.time-tablist button{font-size:.875rem;min-height:44px}.booking-time-grid{gap:6px}.booking-time-grid button{font-size:.875rem;padding:7px 2px}}
@media(prefers-reduced-motion:reduce){.time-tablist button,.booking-time-grid button{transition:none}}
