/* Photo-informed, flat SVG plan. One SVG unit is at least one CSS pixel at rest,
   giving every table its own non-overlapping 46px touch target on phone and desktop. */
html[data-venue="pachaicons"] .plan{padding:0 0 18px!important;overflow:hidden;background:#111113}
html[data-venue="pachaicons"] .plan-scroll{overflow-x:auto;overflow-y:hidden;margin:0!important;padding:0!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#65554b #171719;direction:ltr}
html[data-venue="pachaicons"] .plan-scroll svg#plan{display:block;width:1560px!important;min-width:1560px!important;max-width:none!important;height:900px!important;max-height:none!important;background:#111113;border-radius:0}
html[data-venue="pachaicons"] .plan-scroll #plan[style*="pan-y"]{touch-action:pan-x pan-y!important}
#zoneShapes{pointer-events:none}
#plan .pk-plan-label{font-family:Manrope,sans-serif;font-weight:600;fill:#c2b2a2;font-size:14px;letter-spacing:1.4px;direction:inherit}
#plan .pk-area-label{font-size:13px;letter-spacing:2px}
#plan .pk-zone-label{font-size:12px;letter-spacing:1px}
#plan .pk-floor-label{font-size:24px;font-weight:500;letter-spacing:3px;fill:#c4b09c}
#plan .pk-floor-brand{font-size:12px;letter-spacing:4px;fill:#9b847a}
#plan .pk-dj-label{font-size:12px;fill:#f8d5cd;paint-order:stroke;stroke:#5a181d;stroke-width:4px}
#plan .pk-screen-label{font-size:12px;fill:#cce8ed;paint-order:stroke;stroke:#152c49;stroke-width:4px}
#plan .pk-sea-label{font-size:12px;fill:#8fb2b4}
#plan .seat .lb,#plan .seat .seat-back,#plan .seat .m{pointer-events:none}
#plan .seat .seat-hit{pointer-events:all}
#plan .seat.off{cursor:not-allowed}
#plan .seat:not(.off):hover .m,#plan .seat:not(.off):focus-visible .m,#plan .seat.hov .m{stroke:#fff4e6;stroke-width:2.5}
#plan .seat.sel .m{fill:var(--rim);stroke:#fff4e6;stroke-width:2.5}
#plan .seat.sel .lb{fill:#131315}
html[data-venue="pachaicons"] .plan-zoom{border-radius:0;padding:12px 14px!important;border-bottom:1px solid #ffffff12}
html[data-venue="pachaicons"] .plan-zoom button{min-width:44px;min-height:44px}
.pk-plan-hint{margin:0!important;padding:10px 16px!important;color:#a99c92;font:500 12px/1.5 Manrope,sans-serif;text-align:start;border-bottom:1px solid #ffffff0a}
.pk-plan-hint::after{content:" →";display:inline-block;margin-inline-start:8px;color:#d59c91}
html[data-venue="pachaicons"] .plan .legend{margin:0 16px!important;padding:16px 0 0!important;justify-content:center!important}
html[data-venue="pachaicons"] .plan .legend .na i{width:14px;height:14px;border-radius:4px;background:#272729;border:1px solid #48474b}
html[data-venue="pachaicons"] .plan .note{padding:0 12px!important;margin:10px 0 0!important}
/* Wide displays can see the full venue without reducing the table targets. */
html[data-venue="pachaicons"] #selector.stage{max-width:1624px}

/* Fit the whole plan inside the screen (Tim, 8 Oct 2026); pinch / + to zoom in, drag to pan */
html[data-venue="pachaicons"] .plan-scroll{overflow:hidden!important}
html[data-venue="pachaicons"] .plan-scroll svg#plan{width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;aspect-ratio:1560/900}
.pk-plan-hint{display:none!important}
