.jj-seatmap{border:1px solid var(--jj-color-border);border-radius:var(--jj-radius-md);background:var(--jj-color-surface);position:relative;overflow:hidden}.jj-seatmap__svg{touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none;cursor:grab;width:100%;height:auto;min-height:240px;max-height:min(70vh,640px);display:block}.jj-seatmap__stage{fill:var(--jj-color-surface-muted);stroke:var(--jj-color-border)}.jj-seatmap__section{fill:#0000;stroke:var(--jj-color-border);stroke-width:2px;vector-effect:non-scaling-stroke}.jj-seatmap__section-label,.jj-seatmap__label{fill:var(--jj-color-text-muted);pointer-events:none}.jj-seatmap__ga path{fill:var(--jj-color-surface-muted);stroke:var(--jj-color-border);vector-effect:non-scaling-stroke}.jj-seatmap__ga text{fill:var(--jj-color-text);pointer-events:none}.jj-seat{color:var(--jj-color-text);cursor:pointer;outline:none}.jj-seat__body{stroke:var(--jj-color-surface);stroke-width:1px}.jj-seat--available,.jj-seat--sold{color:var(--jj-color-surface)}.jj-seat--neutral{color:var(--jj-color-text)}.jj-seat--neutral .jj-seat__body{stroke:var(--jj-color-border-strong)}.jj-seat--held{fill:var(--jj-color-surface);cursor:not-allowed}.jj-seat--held .jj-seat__body{stroke:var(--jj-seat-held);stroke-width:2.5px;stroke-dasharray:4 2}.jj-seat--sold{fill:var(--jj-seat-sold);cursor:not-allowed}.jj-seat--blocked,.jj-seat--unknown{--jj-seat-mark-ground:var(--jj-color-surface);fill:var(--jj-color-surface);cursor:not-allowed}.jj-seat--blocked .jj-seat__body,.jj-seat--unknown .jj-seat__body{stroke:var(--jj-seat-blocked);stroke-width:2px}.jj-seat--selected{--jj-seat-mark-ground:none;color:var(--jj-seat-selected-ring);fill:var(--jj-seat-selected)}.jj-seat.jj-seat--selected .jj-seat__body{stroke:var(--jj-seat-selected-ring);stroke-width:2px;stroke-dasharray:none}.jj-seat:focus-visible .jj-seat__body{stroke:var(--jj-color-focus);stroke-width:4px}.jj-seatmap__controls{right:var(--jj-space-3);bottom:var(--jj-space-3);gap:var(--jj-space-1);flex-direction:column;display:flex;position:absolute}.jj-seatmap__controls button{width:var(--jj-target-min);height:var(--jj-target-min);border-radius:var(--jj-radius-sm);border:1px solid var(--jj-color-border);background:var(--jj-color-surface);color:var(--jj-color-text);font-size:var(--jj-text-lg);cursor:pointer}.jj-seatmap__controls button:focus-visible{outline:2px solid var(--jj-color-focus)}.jj-seatlegend{gap:var(--jj-space-2) var(--jj-space-4);font-size:var(--jj-text-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.jj-seatlegend li{align-items:center;gap:var(--jj-space-2);display:inline-flex}.jj-seatlegend__swatch{flex:none;width:28px;height:28px;display:inline-block;overflow:visible}.jj-seatlegend__swatch .jj-seat{cursor:inherit}.jj-seatlist__rows{gap:var(--jj-space-3);margin:0;padding:0;list-style:none;display:grid}.jj-seatlist__row fieldset{border:1px solid var(--jj-color-border);border-radius:var(--jj-radius-sm);padding:var(--jj-space-3);margin:0}.jj-seatlist__seats{gap:var(--jj-space-2) var(--jj-space-4);flex-wrap:wrap;display:flex}.jj-seatlist__seat{gap:var(--jj-space-1);align-items:center;display:inline-flex}.jj-seatmap__hint{top:var(--jj-space-3);padding:var(--jj-space-1) var(--jj-space-3);border-radius:var(--jj-radius-sm);background:var(--jj-color-text);color:var(--jj-color-surface);font-size:var(--jj-text-sm);pointer-events:none;margin:0;position:absolute;left:50%;transform:translate(-50%)}.jj-seatmap--filtered .jj-seat--available:not(.jj-seat--dimmed) .jj-seat__body{stroke:var(--jj-color-indicator);stroke-width:3px}.jj-seatmap__ga--pickable{cursor:pointer}.jj-seatmap__ga--pickable:focus-visible path{stroke:var(--jj-color-focus);stroke-width:3px}.jj-seatmap__section-summary{fill:var(--jj-color-text-muted)}.jj-seatdetail{background:var(--jj-color-surface);color:var(--jj-color-text);border:1px solid var(--jj-color-border);border-radius:var(--jj-radius-sm);padding:var(--jj-space-2) var(--jj-space-3);font-size:var(--jj-text-sm)}.jj-seatdetail p{margin:0}.jj-seatdetail--tooltip,.jj-sectioncard{pointer-events:none;white-space:nowrap;position:absolute;transform:translate(-50%,calc(-100% - 8px))}.jj-sectioncard{background:var(--jj-color-text);color:var(--jj-color-surface);border-radius:var(--jj-radius-sm);padding:var(--jj-space-1) var(--jj-space-3);font-size:var(--jj-text-sm)}.jj-seatdetail--card,.jj-seatmap__gapanel{left:var(--jj-space-3);right:calc(var(--jj-space-3) * 2 + var(--jj-target-min));bottom:var(--jj-space-3);gap:var(--jj-space-3);flex-wrap:wrap;align-items:flex-start;display:flex;position:absolute}.jj-seatmap__gapanel{background:var(--jj-color-surface);border:1px solid var(--jj-color-border);border-radius:var(--jj-radius-sm);padding:var(--jj-space-2) var(--jj-space-3)}.jj-seatdetail__place{gap:var(--jj-space-3);margin:0;display:flex}.jj-seatdetail__place dt{font-size:var(--jj-text-xs);color:var(--jj-color-text-muted)}.jj-seatdetail__place dd{margin:0;font-weight:600}.jj-seatdetail__close{min-width:var(--jj-target-min);min-height:var(--jj-target-min);color:var(--jj-color-text);font-size:var(--jj-text-lg);cursor:pointer;background:0 0;border:none;margin-left:auto}.jj-gaqty{align-items:center;gap:var(--jj-space-3);flex-wrap:wrap;display:flex}.jj-gaqty__info{display:grid}.jj-gaqty__stepper{align-items:center;gap:var(--jj-space-2);display:inline-flex}.jj-gaqty__stepper button{width:var(--jj-target-min);height:var(--jj-target-min);border-radius:var(--jj-radius-sm);border:1px solid var(--jj-color-border);background:var(--jj-color-surface);color:var(--jj-color-text);font-size:var(--jj-text-lg);cursor:pointer}.jj-gaqty__stepper button:disabled{opacity:.4;cursor:not-allowed}.jj-gaqty__stepper output{text-align:center;min-width:2ch}.jj-seatlegend--chips{flex-wrap:nowrap;overflow-x:auto}.jj-seatlegend--chips li{flex:none}.jj-seatlegend__chip{align-items:center;gap:var(--jj-space-2);padding:var(--jj-space-1) var(--jj-space-3);border:1px solid var(--jj-color-border);background:var(--jj-color-surface);color:var(--jj-color-text);font:inherit;cursor:pointer;border-radius:999px;display:inline-flex}.jj-seatlegend__chip[aria-pressed=true]{border-color:var(--jj-color-text);font-weight:600}.jj-seatlegend__chip:focus-visible{outline:2px solid var(--jj-color-focus)}
