#tm-seating-map-root{box-sizing:border-box;margin:0 0 24px;color:#092c3d;font-family:inherit;max-width:100%;min-width:0}
#tm-seating-map-root *{box-sizing:border-box}
#tm-seating-map-root [hidden]{display:none!important}
#tm-seating-map-root details{border:1px solid #cfe2dc;border-radius:12px;background:#f5faf8;overflow:hidden}
#tm-seating-map-root summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:68px;padding:16px 18px;cursor:pointer;list-style:none;font-size:15px;font-weight:600}
#tm-seating-map-root summary::-webkit-details-marker{display:none}
#tm-seating-map-root summary:after{content:'＋';flex:none;font-size:22px;color:#087f72}
#tm-seating-map-root details[open]>summary:after{content:'−'}
#tm-seating-map-root summary small{display:block;margin-top:4px;color:#526a70;font-size:12px;font-weight:400;line-height:1.5}
#tm-seating-map-root .tm-seat-content{padding:0 18px 18px}
#tm-seating-map-root .tm-seat-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(170px,1fr);gap:18px;align-items:start}
#tm-seating-map-root .tm-seat-stage{min-width:0;position:relative;background:white;border:1px solid #dbe6e2;border-radius:9px;overflow:hidden}
#tm-seating-map-root .tm-seat-viewport{width:100%;max-height:520px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
#tm-seating-map-root .tm-seat-canvas{width:100%;min-width:100%;padding:8px}
#tm-seating-map-root svg{display:block;width:100%;height:auto;max-width:none;overflow:visible;pointer-events:none}
#tm-seating-map-root svg text,#tm-seating-map-root svg tspan{pointer-events:none}
#tm-seating-map-root .tm-seat-controls{display:flex;gap:7px;justify-content:flex-end;padding:8px;border-top:1px solid #e4ece9}
#tm-seating-map-root button{font-family:inherit;cursor:pointer}
#tm-seating-map-root .tm-seat-controls button{min-width:44px;min-height:44px;padding:7px 12px;border:1px solid #c9d9d4;border-radius:7px;background:white;color:#092c3d;font-size:15px}
#tm-seating-map-root .tm-seat-controls button:disabled{opacity:.4;cursor:default}
#tm-seating-map-root .tm-seat-legend{display:grid;gap:8px;min-width:0}
#tm-seating-map-root .tm-seat-legend button{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:12px;text-align:left;border:1px solid #cdded7;border-radius:8px;background:white;color:#092c3d;line-height:1.45;font-size:13px;font-weight:600;overflow-wrap:anywhere}
#tm-seating-map-root .tm-seat-legend button[aria-pressed=true]{border-color:#087f72;box-shadow:inset 0 0 0 1px #087f72;background:#e9f5f0}
#tm-seating-map-root .tm-seat-dot{flex:none;width:14px;height:14px;border-radius:4px;border:1px solid rgba(0,0,0,.25)}
#tm-seating-map-root .tm-seat-status{margin:14px 0 6px;min-height:24px;color:#092c3d;font-size:14px;font-weight:600;line-height:1.6}
#tm-seating-map-root .tm-seat-note{margin:0;color:#526a70;font-size:12px;line-height:1.7}
#tm-seating-map-root .tm-seat-shape{cursor:pointer;pointer-events:visiblePainted;transition:opacity .15s ease}
#tm-seating-map-root .tm-seat-dim{opacity:.2}
#tm-seating-map-root .tm-seat-active{opacity:1;stroke:#092c3d;stroke-width:2.4;vector-effect:non-scaling-stroke}
#tm-seating-map-root button:focus-visible,#tm-seating-map-root summary:focus-visible,#tm-seating-map-root .tm-seat-viewport:focus-visible{outline:3px solid #1261a0;outline-offset:3px}
@media(max-width:760px){#tm-seating-map-root summary{padding:14px}#tm-seating-map-root .tm-seat-content{padding:0 12px 14px}#tm-seating-map-root .tm-seat-grid{grid-template-columns:minmax(0,1fr);gap:12px}#tm-seating-map-root .tm-seat-viewport{max-height:420px}#tm-seating-map-root .tm-seat-legend{grid-template-columns:minmax(0,1fr)}#tm-seating-map-root .tm-seat-legend button{min-height:48px;font-size:13px}}
@media(prefers-reduced-motion:reduce){#tm-seating-map-root .tm-seat-shape{transition:none}}
