.bo-seating .bo-seat-row{display:grid;align-items:center}.bo-seating .bo-seat-row>div{display:flex}.bo-seating .bo-seat-row.align-left>div{justify-content:flex-start}.bo-seating .bo-seat-row.align-center>div{justify-content:center}.bo-seating .bo-seat-row.align-right>div{justify-content:flex-end}.bo-seating .bo-seat-row input{position:absolute;opacity:0;pointer-events:none}.bo-seating .bo-seat-row label span{display:flex;align-items:center;justify-content:center;width:100%;height:100%;box-sizing:border-box;cursor:pointer}.bo-seating .bo-stage{display:flex;align-items:center;background:#27373a;color:#fff;border-radius:5px}.bo-seating .bo-stage span{font-size:.8rem;font-weight:750}.bo-seating :is(button,a):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.bo-seating{min-width:0;max-width:100%;margin-block:16px}
.bo-seating [hidden]{display:none!important}
.bo-map-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.bo-map-toolbar>div{display:flex;align-items:center;gap:6px}
.bo-map-toolbar .link-button{min-height:44px;font-size:.82rem;cursor:pointer;padding:8px 12px}
.bo-map-toolbar [aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong);border-color:var(--accent)}
.bo-map-toolbar [data-bo-map-zoom]{width:44px;padding:0;font-size:1.25rem}
.bo-map-toolbar output{min-width:54px;text-align:center;font-size:.82rem;font-variant-numeric:tabular-nums}
.bo-map-toolbar button:disabled{opacity:.45;cursor:default}
.bo-map-help,.bo-map-selection{font-size:.85rem;line-height:1.5;color:var(--muted);margin:8px 0}
.bo-map-viewport{position:relative;width:100%;max-height:480px;max-height:min(55svh,480px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:8px;background:#f7f9f9}
.bo-map-size{position:relative;width:max-content;min-width:0;margin-inline:auto;overflow:hidden}
.bo-map-canvas{width:max-content;padding:16px;transform-origin:top left}
.bo-map-canvas .bo-stage{justify-content:center;min-height:32px;margin:0 0 20px}
.bo-seating .bo-seat-map,.bo-quick-sale .bo-seating .bo-seat-map{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;max-height:none;margin:0;padding:0;overflow:visible;border:0;background:transparent}
.bo-seating .bo-seat-map .bo-seat-row{display:grid}
.bo-seating .bo-seat-row label.blocked span::after{content:none}
.bo-seating .bo-seat-row{grid-template-columns:28px minmax(max-content,1fr);gap:8px}
.bo-seating .bo-seat-row>div{gap:6px}
.bo-seating .bo-seat-row>b{font-size:.9rem;color:var(--ink)}
.bo-seating .bo-seat-row i{flex:0 0 18px}
.bo-seating .bo-seat-row label,.bo-seating .bo-seat-display{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;box-sizing:border-box;position:relative}
.bo-seating .bo-seat-row label span,.bo-seating .bo-seat-display{font-size:.85rem;border:1px solid #9fb7b4;border-radius:5px;background:#fff;color:#33484a;font-weight:750;text-decoration:none}
.bo-seating .bo-seat-row label.taken span,.bo-seating .bo-seat-display.taken{background:#dde2e1;border-color:#c5cecb;color:#4d5d59;text-decoration:line-through}
.bo-seating .bo-seat-row label.blocked span,.bo-seating .bo-seat-display.blocked{background:#f8e7c4;border-color:#c98d20;color:#79520d}
.bo-seating .bo-seat-row input:checked+span{background:var(--accent);border-color:var(--accent);color:#fff}
.bo-seating .bo-seat-row input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
.bo-map-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px;font-size:.8rem;color:var(--muted)}
.bo-map-legend>span{display:inline-flex;align-items:center;gap:7px}
.bo-map-legend i{display:inline-block;width:14px;height:14px;border:1px solid #9fb7b4;border-radius:3px;background:#fff}
.bo-map-legend i.taken{background:#dde2e1;border-color:#c5cecb}.bo-map-legend i.blocked{background:#f8e7c4;border-color:#c98d20}.bo-map-legend i.selected{background:var(--accent);border-color:var(--accent)}

@media(max-width:600px){.bo-map-viewport{max-height:48svh}}
@media print{.bo-map-toolbar,.bo-map-help{display:none!important}.bo-map-viewport{max-height:none;overflow:visible}}
