@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(./silkscreen-latin-400-normal-CtPo2yA5.woff2)format("woff2"),url(./silkscreen-latin-400-normal-D0DfPJut.woff)format("woff")}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pixelify-sans-latin-400-normal-DLrIX9QE.woff2)format("woff2"),url(./pixelify-sans-latin-400-normal-JapMNN6Z.woff)format("woff")}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./pixelify-sans-latin-600-normal-Dd_Dy7u5.woff2)format("woff2"),url(./pixelify-sans-latin-600-normal-BNlgYbDL.woff)format("woff")}:root{--ink:#1f2430;--ink-soft:#3b4a5c;--paper:#f6efdc;--paper-edge:#e4d8b8;--cream:#f1e6d0;--gold:#ffe27a;--bg:#141a24;--chip:#1f2a36eb;--font-pixel:"Silkscreen", ui-monospace, monospace;--font-body:"Pixelify Sans", system-ui, sans-serif;--font-read:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--strip-h:min(44dvh, 360px);--panel-w:min(420px, 40vw);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overscroll-behavior:none;margin:0;overflow:hidden}button{font:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.app{height:100dvh;display:flex}.stage{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex:1;min-width:0;position:relative}.screen{position:absolute;inset:0;overflow:hidden}#game{width:100%;height:100%;image-rendering:pixelated;display:block}.hud{pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;inset:12px 12px auto}.hud-group{flex-wrap:wrap;align-items:flex-start;gap:6px;display:flex}.hud-chip{font:12px/1 var(--font-pixel);color:var(--cream);background:var(--chip);box-shadow:inset 0 0 0 1px var(--ink-soft);white-space:nowrap;border:2px solid #0f1720;padding:6px 10px}.hud-right{justify-content:flex-end}.phone-open .hud,.phone-open .prompt,.phone-open .title{visibility:hidden}.hud-button{pointer-events:auto;cursor:pointer}.hud-button:hover,.hud-button:focus-visible{color:var(--ink);background:var(--gold)}.prompt{max-width:calc(100% - 24px);font:12px/1.2 var(--font-pixel);color:var(--ink);background:var(--gold);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;padding:7px 12px;position:absolute;bottom:30px;left:50%;overflow:hidden;transform:translate(-50%)}.prompt:active{box-shadow:1px 1px 0 var(--ink);transform:translate(calc(2px - 50%),2px)}.progress{pointer-events:none;position:absolute;bottom:10px;left:12px;right:12px}.progress-track{background:#0f1720d9;border:1px solid #0f1720;height:6px;position:relative}.progress-tick{background:var(--cream);width:4px;height:4px;margin-left:-2px;position:absolute;top:0}.progress-tick.is-visited{background:var(--gold)}.progress-player{border:2px solid var(--ink);background:#fff;width:12px;height:12px;margin-left:-6px;position:absolute;top:-4px}.title{--title-fade:1;text-align:center;width:min(640px,100% - 32px);opacity:var(--title-fade);pointer-events:none;position:absolute;top:6%;left:50%;transform:translate(-50%)}.title.is-hidden{visibility:hidden}.title a{pointer-events:auto}.title-badge{font:12px/1 var(--font-pixel);background:var(--gold);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);margin:0 0 14px;padding:6px 10px;display:inline-block}.title-name{font:400 clamp(32px, 5.5vw, 60px) / 1 var(--font-pixel);letter-spacing:1px;color:var(--ink);text-shadow:4px 4px #fff;margin:0}.title-role{font:600 clamp(18px, 2.2vw, 24px) / 1.2 var(--font-body);margin:12px 0 0}.title-pitch{max-width:34ch;margin:8px auto 0;font-size:clamp(16px,1.8vw,20px);line-height:1.35}.title-start{font:16px/1 var(--font-pixel);margin:18px 0 0;animation:1.1s steps(2,jump-none) infinite blink}.is-started .title-start{visibility:hidden;animation:none}.title-hint{font:11px/1.4 var(--font-pixel);margin:14px 0 0;display:none}.screen-hint{font:11px/1.2 var(--font-pixel);color:var(--cream);background:var(--chip);white-space:nowrap;pointer-events:none;margin:0;padding:6px 10px;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.is-started .screen-hint{display:none}.title-links{margin:14px 0 0}.is-dark .title-name{color:var(--cream);text-shadow:4px 4px #1b2140}.is-dark .title-role,.is-dark .title-pitch,.is-dark .title-start{color:var(--cream)}@keyframes blink{50%{opacity:0}}.panel{background:var(--paper);border-left:0 solid var(--ink);flex:none;width:0;transition:width .28s,border-width .28s;position:relative;overflow:hidden}.panel:focus{outline:none}.panel-open .panel{width:var(--panel-w);border-left-width:4px}.panel-inner{width:var(--panel-w);overscroll-behavior:contain;height:100%;padding:28px 28px 40px;overflow-y:auto}.panel-close{float:right;width:36px;height:36px;font:16px/1 var(--font-pixel);color:var(--ink);background:var(--paper-edge);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);cursor:pointer;margin:-8px -8px 0 12px;position:sticky;top:0}.station{max-width:60ch;font-family:var(--font-read);color:#2a2620}.station-title{font:400 21px/1.35 var(--font-pixel);letter-spacing:.5px;color:var(--ink);margin:0 0 20px}.station-text{margin:0 0 16px;font-size:17px;line-height:1.65}.station-image{border:2px solid var(--ink);width:100%;height:auto;margin:0 0 18px;display:block}.station-list{margin:0 0 18px;padding:0;font-size:17px;line-height:1.55;list-style:none}.station-list li{margin:0 0 8px;padding-left:20px;position:relative}.station-list li:before{content:"";background:var(--ink);width:8px;height:8px;position:absolute;top:.5em;left:2px}.station-links{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.pixel-button{font:13px/1 var(--font-pixel);color:var(--ink);background:var(--gold);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);padding:9px 14px;text-decoration:none;display:inline-block}.pixel-button:hover{background:#fff0a8}.pixel-button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.station-nav{z-index:10;gap:8px;display:flex;position:fixed;top:8px;left:50%;transform:translate(-50%,-200%)}.station-nav:focus-within{transform:translate(-50%)}.station-nav button{font:12px/1 var(--font-pixel);color:var(--ink);background:var(--gold);border:2px solid var(--ink);cursor:pointer;padding:8px 12px}.noscript{color:var(--cream);padding:24px}@media (width<=760px) and (orientation:portrait){.app{display:block}.stage{flex-direction:column;height:100dvh;display:flex}.screen{height:var(--strip-h);border-bottom:6px solid #0f1720;flex:none;position:relative}.screen:after{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 10px,#39424f 10px 16px) 0 2px/100% 2px no-repeat;height:6px;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.hud{inset:8px 8px auto}.hud-chip{padding:5px 7px;font-size:10px}.hud-group{flex-direction:column}.hud-right{align-items:flex-end}.hud-place{display:none}.prompt{font-size:11px;bottom:26px}.title{width:auto;padding:20px 20px calc(20px + env(safe-area-inset-bottom));opacity:1;color:var(--cream);flex-direction:column;flex:1;justify-content:center;display:flex;position:static;transform:none}.title.is-hidden{visibility:visible}.title-badge{color:var(--ink);align-self:center}.title-name{color:var(--cream);text-shadow:3px 3px 0 var(--ink-soft);font-size:clamp(30px,10vw,44px)}.title-role{color:var(--gold)}.title-hint{color:#a9b6c6;display:block}.screen-hint{display:none}.panel{z-index:5;width:auto;max-height:calc(100dvh - var(--strip-h));border-left:0;border-top:4px solid var(--ink);transition:transform .3s;position:fixed;bottom:0;left:0;right:0;transform:translateY(105%);box-shadow:0 -6px #00000040}.panel-open .panel{border-left-width:0;width:auto;transform:none}.panel-inner{width:auto;height:auto;max-height:calc(100dvh - var(--strip-h) - 4px);padding:20px 20px calc(28px + env(safe-area-inset-bottom))}.station-title{font-size:18px}.station-text,.station-list{font-size:16px}}@media (prefers-reduced-motion:reduce){.title-start{animation:none}.panel{transition:none}}
