@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/reference/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2) format("woff2"),url(/reference/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/reference/assets/barlow-condensed-latin-800-normal-BKzMuPgK.woff2) format("woff2"),url(/reference/assets/barlow-condensed-latin-800-normal-e9GbPXiK.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/reference/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/reference/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/reference/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/reference/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/reference/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/reference/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/reference/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/reference/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/reference/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/reference/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff")}:root{font-family:DM Sans,sans-serif;color:#eef4ee;background:#080e17;font-synthesis:none;--lime:#dfff83;--cyan:#65f5e3;--muted:#819095;--line:#ffffff1c}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{background:none;border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--lime);outline-offset:5px}header{height:86px;display:flex;align-items:center;gap:32px;padding:0 38px;border-bottom:1px solid var(--line);background:#0a1019;position:relative;z-index:5}.brand{font-family:Barlow Condensed,Arial Narrow,sans-serif;font-weight:800;font-size:30px;letter-spacing:-.5px;white-space:nowrap}.brand>span:first-child{color:var(--lime)}.brand-dot{color:var(--lime);font-size:10px;margin-left:8px;vertical-align:top;position:relative;top:5px}.header-label{font:9px IBM Plex Mono,monospace;letter-spacing:2px;color:#8a999f}nav{margin-left:auto;display:flex;gap:28px;align-items:center;font-size:11px}nav a span,nav button span{color:var(--lime);margin-left:10px}#audio-button{font:9px IBM Plex Mono,monospace;border-left:1px solid var(--line);padding-left:25px;letter-spacing:1px}main{height:calc(100svh - 139px);min-height:650px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 55% 54%,#14263a 0,#0a121e 68%)}#canvas-wrap{position:absolute;inset:0}canvas{display:block;outline:none}.vignette{position:absolute;inset:0;background:linear-gradient(90deg,#080e17e8 0,transparent 31%,transparent 80%,#080e1760 100%);pointer-events:none}.scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 3px,#03081112 4px);pointer-events:none;opacity:.4}.intro{position:absolute;top:53px;left:38px;z-index:2;width:300px;pointer-events:none}.intro button{pointer-events:auto}.eyebrow{font:9px IBM Plex Mono,monospace;letter-spacing:1.6px;color:#98a9aa;display:flex;align-items:center;gap:9px}.live-dot{height:5px;width:5px;background:var(--lime);display:inline-block;box-shadow:0 0 8px #dfff8370}h1{font-family:Barlow Condensed,Arial Narrow,Impact,sans-serif;text-transform:uppercase;font-weight:700;font-size:clamp(40px,4.5vw,70px);line-height:.98;letter-spacing:-1.4px;margin:25px 0 24px}h1 em{font-style:normal;color:var(--lime)}.intro p{font-size:13px;line-height:1.9;color:#96a4ae;margin:0}.intro strong{color:#eef4ee;font-weight:500}.intro-rule{width:28px;height:1px;background:#67716e;margin:24px 0 17px}.role{font:9px IBM Plex Mono,monospace;letter-spacing:.9px}.role span{color:var(--lime);padding:0 5px}.primary{margin-top:27px;background:var(--lime);color:#111b1a;padding:16px 18px;font:600 10px IBM Plex Mono,monospace;letter-spacing:.8px;display:flex;align-items:center;gap:30px;clip-path:polygon(0 0,100% 0,100% 75%,94% 100%,0 100%);transition:background .2s,transform .2s}.primary:hover{background:#efffc3;transform:translateY(-2px)}.primary span{font-size:18px}.intro-hint{font-size:10px;color:#70818d;display:block;margin-top:13px}.world-caption{position:absolute;top:40px;left:48%;display:flex;flex-direction:column;gap:7px;pointer-events:none}.world-caption>span{font-weight:700;font-size:22px;color:#6fe8e647;letter-spacing:5px}.world-caption small{font:7px IBM Plex Mono,monospace;color:#7b9aa85e;letter-spacing:2px}.location{position:absolute;bottom:30px;left:38px;display:flex;gap:10px;align-items:center;font:9px IBM Plex Mono,monospace;letter-spacing:1.2px;color:#b0bcbc}.coordinate{color:#58727a;margin-left:15px}.quest{position:absolute;right:30px;top:38px;width:218px;padding:19px;background:#0b1521c9;border:1px solid #8fa5b523;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.quest .eyebrow{color:var(--lime);font-size:8px;justify-content:space-between}.quest h2{font-size:13px;letter-spacing:-.2px;margin:16px 0 7px}.quest p{font-size:10px;color:#7f949f;line-height:1.6;margin:0 0 16px}#quest-stations{display:flex;flex-direction:column;gap:9px}.quest-stop{text-align:left;padding:0;font:9px IBM Plex Mono,monospace;color:#8b9da8;display:flex;gap:10px;align-items:center}.quest-stop:hover{color:#fff}.quest-stop .check{display:inline-block;border:1px solid #4b5c63;width:9px;height:9px;font-size:7px;text-align:center;line-height:8px}.quest-stop.visited .check{background:var(--lime);border-color:var(--lime);color:#101a17}.quest-stop.visited{color:#d0dbc5}.progress-row{display:flex;justify-content:space-between;font:7px IBM Plex Mono,monospace;letter-spacing:1px;color:#a8b7b4;margin-top:21px}.progress-track{height:3px;background:#29313a;margin-top:9px}#progress-fill{height:100%;background:var(--lime);width:0;transition:width .4s}.map{position:absolute;bottom:25px;right:30px;width:165px;padding:12px;border:1px solid var(--line);background:#08121dce}.map-title,.map-footer{font:7px IBM Plex Mono,monospace;color:#84999e;display:flex;justify-content:space-between;letter-spacing:.6px}.map-title span{color:var(--lime)}.map svg{width:100%;height:98px;margin:6px 0}#minimap path{fill:#10202c;stroke:#2a4450;stroke-width:1}#player-dot{fill:#fff;stroke:var(--lime);stroke-width:2}.map-footer{border-top:1px solid var(--line);padding-top:8px;font-size:6px}.map-footer span{color:var(--lime)}.world-tools{position:absolute;right:210px;bottom:26px;display:flex;gap:6px}.world-tools button{width:32px;height:32px;border:1px solid var(--line);background:#0b1521c9;color:#b5c6c9;font-size:20px}.world-tools button[aria-pressed=true]{color:var(--lime);border-color:var(--lime)}#labels{position:absolute;inset:0;pointer-events:none}.station-label{position:absolute;pointer-events:auto;display:flex;align-items:center;gap:7px;white-space:nowrap;background:#091520dc;border:1px solid #92adb246;border-left:2px solid var(--accent);padding:7px 9px;transform:translate(-50%,-100%);font:8px IBM Plex Mono,monospace;letter-spacing:.6px;box-shadow:0 5px 20px #0006;transition:background .15s}.station-label:hover,.station-label.near{background:#1a3340;border-color:var(--accent);z-index:3}.station-label .number{color:var(--accent);font-size:8px}.station-label.visited:after{content:"✓";color:var(--lime)}#interact-button{position:absolute;left:55%;bottom:55px;transform:translate(-50%);border:1px solid #dfff8360;background:#10221dee;padding:10px 15px;font:10px IBM Plex Mono,monospace;align-items:center;gap:13px;display:flex;z-index:4;white-space:nowrap}#interact-button[hidden]{display:none}kbd{display:inline-flex;justify-content:center;align-items:center;font:9px IBM Plex Mono,monospace;width:20px;height:20px;border:1px solid #64727b60;border-bottom-width:2px;color:#c6d0cc;border-radius:2px}#interact-button kbd{background:var(--lime);color:#172014;border-color:var(--lime)}footer{height:53px;padding:0 38px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);background:#0a1019}footer>div{display:flex;gap:4px;align-items:center}footer span{font:8px IBM Plex Mono,monospace;letter-spacing:.9px;color:#7a8e96;margin-left:8px}footer i{height:10px;width:1px;background:var(--line);margin:0 11px}.footer-right span{color:var(--lime);margin:0 12px}.loading{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);display:flex;gap:12px;align-items:center;font:9px IBM Plex Mono,monospace;letter-spacing:1px;padding:22px;background:#0b1521f0;border:1px solid var(--line);z-index:10}.loader-square{width:12px;height:12px;background:var(--lime);animation:load 1s steps(4) infinite}@keyframes load{to{transform:rotate(360deg)}}dialog{background:#0d1822;color:#e4ece8;border:1px solid #54707560;padding:40px;width:min(620px,calc(100% - 32px));max-height:85svh;box-shadow:0 30px 120px #000b}dialog::backdrop{background:#030810b3;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.close-dialog{position:absolute;right:17px;top:16px;font-size:17px;color:#97a7ad;padding:5px}dialog h2{font:600 42px Barlow Condensed,Arial Narrow,sans-serif;letter-spacing:-.6px;margin:18px 0 12px}.dialog-subtitle{color:var(--accent);font-size:14px;margin:0 0 14px}.dialog-intro{font-size:13px;color:#94a7af;line-height:1.8}article{border-top:1px solid var(--line);margin-top:23px;padding-top:22px}article h3{font-size:16px;margin:0 0 9px}article .meta{font:8px IBM Plex Mono,monospace;letter-spacing:.5px;color:var(--accent);line-height:1.8}article p{font-size:12px;line-height:1.9;color:#a2b1b9;overflow-wrap:anywhere}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.tag{font:9px IBM Plex Mono,monospace;border:1px solid #83b4b02b;padding:6px 9px;color:#b7cac8;background:#182934}.contact-links{display:flex;gap:20px;margin-top:22px;font:11px IBM Plex Mono,monospace;color:var(--lime)}#index-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}#index-list button{text-align:left;padding:18px 14px;border:1px solid var(--line);background:#122330}#index-list button:hover{border-color:var(--accent)}#index-list small{display:block;color:var(--accent);font:8px IBM Plex Mono,monospace;letter-spacing:.8px;margin-bottom:10px}#index-list strong{font-weight:500;font-size:15px}.detail-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:28px;border-top:1px solid var(--line);padding-top:20px;font:9px IBM Plex Mono,monospace;color:var(--lime)}.detail-footer button{border:1px solid #789d5960;padding:10px;font:inherit}#toast{position:absolute;left:50%;top:24px;transform:translate(-50%) translateY(-80px);padding:13px 22px;background:#192a20;border:1px solid #dfff8340;color:var(--lime);font:10px IBM Plex Mono,monospace;transition:transform .3s;z-index:11;max-width:90%;text-align:center}#toast.show{transform:translate(-50%) translateY(0)}#touch-controls{display:none}.playing .intro{opacity:.35;transition:opacity .4s}.playing .intro:hover{opacity:1}body.reduced-motion *,body.reduced-motion *:before{animation:none!important;transition:none!important}@media(min-width:1600px){.intro{top:80px;left:50px}.quest{right:40px;top:60px}h1{font-size:78px}}@media(max-width:1100px){header{padding:0 22px}.header-label{display:none}.intro{left:24px;top:35px;width:240px}h1{font-size:48px}.quest{width:190px;right:20px;padding:15px}.quest h2{font-size:11px}.quest p{font-size:9px}.intro p{font-size:12px}.world-caption{display:none}.role{font-size:8px}.primary{gap:12px}.station-label{font-size:7px;padding:6px}.map{right:20px}footer{padding:0 22px}.footer-right{display:none}}@media(max-width:700px){header{height:66px;padding:0 17px;gap:10px}.brand{font-size:25px}nav{gap:14px;font-size:9px}#audio-button{padding-left:12px;font-size:0}#audio-button span{font-size:15px;margin:0}nav button span,nav a span{margin-left:4px}main{height:calc(100svh - 106px);min-height:680px}.intro{top:25px;left:19px;width:235px}.eyebrow{font-size:7px}h1{font-size:43px;margin:18px 0 13px}.intro p{font-size:11px;line-height:1.6}.intro-rule,.role,.intro-hint{display:none}.primary{margin-top:16px;padding:11px 13px;font-size:8px}.quest{top:27px;right:14px;width:122px;padding:11px}.quest .eyebrow{font-size:6px;letter-spacing:.6px}.quest h2{font-size:10px;line-height:1.5;margin-top:11px}.quest p{display:none}#quest-stations{gap:8px}.quest-stop{font-size:7px;gap:6px}.progress-row{font-size:6px;letter-spacing:0;margin-top:14px}#progress-percent{display:none}.map{width:112px;bottom:60px;right:14px;padding:8px}.map svg{height:65px}.map-title{font-size:5px}.world-tools{right:14px;bottom:17px}.location{left:18px;bottom:20px;font-size:7px}.coordinate{display:none}footer{height:40px;padding:0 16px}footer>div kbd,footer i,footer>div span:nth-of-type(-n+2){display:none}footer>div span{font-size:7px;margin:0}.vignette{background:linear-gradient(#080e1740,transparent 60%)}#touch-controls{position:absolute;bottom:67px;left:17px;display:flex;flex-direction:column;align-items:center;gap:4px;touch-action:none}#touch-controls>div{display:flex;gap:4px}#touch-controls button{width:34px;height:34px;border:1px solid #8baba538;background:#101e2bd9;color:#c2d6cf}#interact-button{left:50%;bottom:195px;font-size:8px;padding:8px;gap:7px}.station-label{font-size:6px;padding:5px;gap:4px;letter-spacing:0}.station-label .number{font-size:6px}.playing .intro{opacity:.15;pointer-events:none}.playing .intro button{pointer-events:none}dialog{padding:30px 24px}dialog h2{font-size:36px}#index-list{gap:7px}#index-list button{padding:13px 10px}#index-list strong{font-size:12px}#index-list small{font-size:7px}.loading{font-size:7px;width:245px;justify-content:center}.detail-footer{font-size:8px}}@media(min-width:1101px){.intro{width:350px}h1{font-size:60px;white-space:nowrap}}
