.secondary-header .secondary-description { max-width: none; }
.room-picker { min-width: 0; margin: 0 0 20px; padding: 0; border: 0; font-family: "Sweet Boys Futura", sans-serif; }
.room-picker legend { font: normal clamp(2rem, 4vw, 3rem)/1 "Sweet Boys Pretender Bold", sans-serif; text-transform: uppercase; }
.room-picker p { font-size: .8rem; line-height: 1.5; }
.floorplan { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: center; gap: clamp(24px, 4vw, 48px); margin-top: 24px; }
.floorplan-drawing, .floorplan-options { min-width: 0; }
.floorplan svg { display: block; width: 100%; height: auto; overflow: visible; }
.floor-room { cursor: pointer; }
.floor-area { fill: var(--background); stroke: none; }
.floor-room text { text-anchor: middle; fill: var(--ink); pointer-events: none; }
.floor-room-label { font: 300 28px "Sweet Boys Pretender Light", sans-serif; letter-spacing: 1px; }
.floor-room-hint { font: 700 12px "Sweet Boys Futura", sans-serif; opacity: .7; }
.floor-room:hover .floor-area { fill: color-mix(in srgb, var(--ink) 15%, var(--background)); }
.floor-room.is-selected .floor-area { fill: var(--ink); }
.floor-room.is-selected text { fill: var(--background); }
.floor-room:focus { outline: none; }
.floor-room:focus-visible .floor-area { stroke: var(--ink); stroke-width: 6; stroke-dasharray: 8 5; }
.floor-fixtures { pointer-events: none; }
.floor-fixtures text { fill: var(--ink); font: 700 12px "Sweet Boys Futura", sans-serif; text-anchor: middle; }
.floor-outline, .floor-door { fill: none; stroke: var(--ink); stroke-width: 3; }
.floor-divider { fill: none; stroke: var(--ink); stroke-width: 2; stroke-dasharray: 10 8; }
.floor-bar, .floor-service { fill: var(--background); stroke: var(--ink); stroke-width: 2; }
.floor-service { stroke-dasharray: 4 3; }
.floorplan .floorplan-status { font: 300 1.25rem "Sweet Boys Pretender Light", sans-serif; margin: 0 0 20px; text-transform: uppercase; }
.room-preferences { display: grid; gap: 8px; }
@media (max-width: 700px) { .floorplan { grid-template-columns: minmax(0, 1fr); gap: 24px; } }
.room-unsure { display: flex; gap: 10px; align-items: center; min-height: 44px; font-size: .8rem; cursor: pointer; }
.room-unsure input { -webkit-appearance: none; appearance: none; box-sizing: border-box; flex: 0 0 22px; width: 22px; height: 22px; margin: 0; border: 2px solid var(--ink); border-radius: 0; background: var(--background); cursor: pointer; }
.room-unsure input:checked { background: var(--ink); box-shadow: inset 0 0 0 4px var(--background); }
.room-unsure input:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
@media (forced-colors: active) {
  .room-unsure input { forced-color-adjust: none; border-color: CanvasText; background: Canvas; }
  .room-unsure input:checked { background: Highlight; box-shadow: inset 0 0 0 4px Canvas; }
}
.event-time-note { color: var(--ink-muted); font: .72rem/1.5 "Sweet Boys Futura", sans-serif; margin: 0; }
.field input[name="guestCount"]::placeholder { font: inherit; letter-spacing: inherit; color: var(--ink-muted); opacity: 1; }
.custom-date.is-invalid .custom-control-button { border: 2px solid var(--ink); }
.event-time-fields { min-width: 0; margin: 0; padding: 0; border: 0; }
.event-time-fields legend { color: var(--ink-muted); font: .78rem "Sweet Boys Futura", sans-serif; text-transform: uppercase; margin-bottom: 12px; }
.event-time-controls { display: grid; grid-template-columns: minmax(64px, 1fr) minmax(80px, 1fr) minmax(90px, 1fr); gap: 8px; }
.event-time-controls .field > span { font-size: .65rem; }
