@font-face{font-family:Libre Baskerville;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/libre-baskerville-latin-ext-400-normal.DehDhP4C.woff2)format("woff2"),url(/_astro/libre-baskerville-latin-ext-400-normal.BWURas-n.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/libre-baskerville-latin-400-normal.C42RasBZ.woff2)format("woff2"),url(/_astro/libre-baskerville-latin-400-normal.BTm3cn9P.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/libre-baskerville-latin-ext-400-italic.BgvGgHFw.woff2)format("woff2"),url(/_astro/libre-baskerville-latin-ext-400-italic.DZExQWkT.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/libre-baskerville-latin-400-italic.Dx5Rrf3o.woff2)format("woff2"),url(/_astro/libre-baskerville-latin-400-italic.DvfstiAl.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DT Octopia Neue;src:url(/fonts/DTOctopiaNeue-Regular.woff2)format("woff2");font-weight:400;font-display:swap}:root{color-scheme:dark;--bg-top:#1c1528;--bg-bottom:#0b0910;--text:#f4f1f8;--text-muted:#b3abc0;--line:#f4f1f859;--line-soft:#f4f1f824;--ease:cubic-bezier(.22, 1, .36, 1);--glow:0 0 12px #ffffff8c;--fringe-red:#ff4d6d;--fringe-cyan:#4de1ff;--font-display:"DT Octopia Neue", "Libre Baskerville", serif;--font-serif:"Libre Baskerville", Baskerville, serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace}html,body{background:linear-gradient(var(--bg-top), var(--bg-bottom)) fixed;min-height:100%;color:var(--text);font-family:var(--font-serif);margin:0}*,:before,:after{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overflow:hidden}body:before{content:"";pointer-events:none;z-index:100;opacity:.09;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}:focus-visible{outline:1px solid var(--text);outline-offset:3px}.sparkle{vertical-align:middle;flex-shrink:0;display:inline-block}.app{flex-direction:column;max-width:560px;height:100dvh;margin:0 auto;display:flex}.site-header{padding:max(16px, env(safe-area-inset-top)) 16px 0;position:relative}.header-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.wordmark{font-family:var(--font-display);letter-spacing:.12em;text-shadow:var(--glow);margin:0;font-size:30px;font-weight:400;line-height:1}.header-meta{text-align:right;color:var(--text-muted);margin:0;font-size:13px;line-height:1.35}.view-toggle{border-bottom:1px solid var(--line-soft);gap:20px;margin-top:16px;display:flex}.view-toggle button{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);padding:8px 0 10px;font-size:12px;position:relative}.view-toggle button[aria-pressed=true]{color:var(--text)}.view-toggle button[aria-pressed=true]:after{content:"";background:var(--text);height:1px;box-shadow:var(--glow);position:absolute;bottom:-1px;left:0;right:0}.views{flex:1;min-height:0;position:relative}.view{position:absolute;inset:0}.view[hidden]{display:none}.map-view{flex-direction:column;padding:12px 16px 16px;display:flex}.map-hint{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:0 0 8px;font-size:11px;transition:opacity .2s}body[data-sheet=open] .map-hint,body[data-sheet=full] .map-hint{opacity:0}.map-frame{flex:1;min-height:0}.floor-map{--u:2.5;width:100%;height:100%;display:block;overflow:visible}.floor-map .wall{fill:none;stroke:var(--line);stroke-width:calc(var(--u) * 1.5px)}.floor-map .partition,.floor-map .surface-empty{fill:var(--line-soft)}.floor-map .back-area{fill:#f4f1f808}.floor-map .entrance-arrow{fill:none;stroke:var(--text-muted);stroke-width:calc(var(--u) * 1.5px);stroke-linecap:round;stroke-linejoin:round}.map-label{font-family:var(--font-mono);font-size:calc(var(--u) * 11px);letter-spacing:.08em;text-transform:uppercase;fill:var(--text-muted)}.surface{cursor:pointer;outline:none}.surface-hit{fill:#0000}.surface-shape{fill:#0000;stroke:var(--text);stroke-width:calc(var(--u) * 1px);transition:fill .25s,filter .25s}.surface-label{fill:var(--text)}.surface-count{fill:var(--text-muted);text-transform:none;letter-spacing:.04em;font-size:.85em}.surface:hover .surface-shape,.surface:focus-visible .surface-shape{fill:#f4f1f859}.surface:focus-visible .surface-hit{stroke:var(--text-muted);stroke-width:calc(var(--u) * 1px);stroke-dasharray:calc(var(--u) * 3px)}.surface.is-selected .surface-shape{fill:var(--text);filter:drop-shadow(0 0 calc(var(--u) * 6px) #ffffffd9)}.surface.is-selected .surface-label{filter:drop-shadow(0 0 calc(var(--u) * 4px) #fff9)}.list-view{padding:8px 16px max(24px, env(safe-area-inset-bottom));overflow-y:auto}.list-group{margin-top:20px}.list-surface{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin:0 0 4px;font-size:11px;font-weight:400}.list-group ul{margin:0;padding:0;list-style:none}.list-item{text-align:left;border-bottom:1px solid var(--line-soft);align-items:baseline;gap:12px;width:100%;padding:12px 0;display:flex}.list-bullet{position:relative;top:1px}.list-text{flex-direction:column;gap:4px;display:flex}.list-title{font-family:var(--font-display);font-size:20px;line-height:1.2}.list-artist{color:var(--text-muted);font-size:14px;font-style:italic}.list-live{font-style:normal;font-family:var(--font-mono);letter-spacing:.06em;font-size:11px}.sheet{z-index:10;max-width:560px;height:var(--sheet-open,58dvh);-webkit-backdrop-filter:blur(16px);transition:transform .35s var(--ease), height .35s var(--ease);--sheet-open:58dvh;background:#161120;border-radius:22px 22px 0 0;flex-direction:column;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(0);box-shadow:0 -12px 40px #00000080}.sheet:before{content:"";pointer-events:none;clip-path:inset(0 20%);border-top:1px solid #f4f1f873;border-radius:50%;height:90px;position:absolute;top:0;left:-20%;right:-20%}.sheet[data-state=closed]{transform:translateY(105%)}.sheet[data-state=full]{height:calc(100dvh - 12px)}.sheet.is-dragging{transition:none}.sheet-grip{touch-action:none;cursor:grab;flex-shrink:0;justify-content:center;padding:10px 0 6px;display:flex}.sheet-grip span{background:var(--line);border-radius:2px;width:40px;height:4px}.sheet-close{width:40px;height:40px;font-family:var(--font-mono);color:var(--text-muted);font-size:22px;position:absolute;top:8px;right:10px}.sheet-panel{flex-direction:column;flex:1;min-height:0;display:flex}.sheet-panel[hidden]{display:none}.sheet-header{touch-action:none;align-items:center;gap:12px;min-height:32px;padding:0 56px 8px 20px;display:flex}.sheet-heading{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;outline:none;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:400;display:flex}.cards{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;flex:1;min-height:0;display:flex;overflow-x:auto}.cards::-webkit-scrollbar{display:none}.sheet-panel.is-multi{position:relative}.is-multi .cards{gap:10px;padding:0 16px;scroll-padding:0 16px;position:relative}.is-multi .card{padding:16px 16px max(24px, env(safe-area-inset-bottom));border:1px solid var(--line-soft);background:#f4f1f808;border-bottom:0;border-radius:14px 14px 0 0;flex-basis:calc(100% - 16px)}.is-multi .card:not(.is-current){cursor:pointer}.peek-hint{text-align:center;width:24px;font-family:var(--font-mono);color:var(--text-muted);pointer-events:none;font-size:22px;transition:opacity .2s;position:absolute;top:50%;right:2px}.peek-hint.is-hidden{opacity:0}.card{scroll-snap-align:start;scroll-snap-stop:always;overscroll-behavior-y:contain;padding:8px 20px max(24px, env(safe-area-inset-bottom));flex:0 0 100%;overflow-y:auto}.card-media{aspect-ratio:16/9;background:#f4f1f80d;border-radius:10px;margin:0 0 16px;overflow:hidden}.card-media img,.card-media video{object-fit:cover;width:100%;height:100%;display:block}.card-live{border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;margin:0 0 10px;padding:4px 10px;font-size:11px;display:inline-flex}.card-title{font-family:var(--font-display);text-shadow:var(--glow);margin:0;font-size:28px;font-weight:400;line-height:1.15}.card-artist{margin:8px 0 0;font-size:16px;font-style:italic}.card-role{color:var(--text-muted)}.arc-divider{border-top:1px solid var(--line);opacity:.8;border-radius:50% 50% 0 0/100% 100% 0 0;height:14px;margin:16px 0 4px}.card-desc{color:var(--text);font-size:15px;line-height:1.65}.card-desc p{margin:0 0 1em}.card-socials{font-family:var(--font-mono);flex-wrap:wrap;gap:8px 18px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.card-socials a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;padding:6px 0;display:inline-block}.card-title.shimmer{animation:.7s ease-out fringe}@keyframes fringe{0%{text-shadow:-3px 0 var(--fringe-red), 3px 0 var(--fringe-cyan), var(--glow)}to{text-shadow:0 0 transparent, 0 0 transparent, var(--glow)}}.pager{padding:8px 16px max(10px, env(safe-area-inset-bottom));border-top:1px solid var(--line-soft);flex-shrink:0;align-items:center;gap:2px;display:flex}.pager-dot{width:32px;height:32px;color:var(--text-muted);opacity:.45;place-items:center;transition:opacity .2s,transform .2s;display:grid;transform:scale(.6)}.pager-dot[aria-current=true]{opacity:1;color:var(--text);filter:drop-shadow(0 0 4px #ffffffb3);transform:scale(1)}.pager-count{font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-muted);margin-left:auto;font-size:12px}.not-found{text-align:center;place-content:center;gap:12px;min-height:100dvh;padding:16px;display:grid}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
