@font-face{font-family:Bricolage Grotesque;src:url(../fonts/BricolageGrotesque-Variable.ttf)format("truetype");font-weight:200 800;font-display:swap}:root{--ink:#06080c;--panel:#0a0c10cc;--text:#f6efe4;--line:#f6efe45c;--amber:#ffb84d;--ease:cubic-bezier(.22, .8, .2, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--ink);height:100%;color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior:none;margin:0;font-family:Bricolage Grotesque,system-ui,sans-serif;overflow:hidden}#stage{touch-action:none;opacity:0;width:100%;height:100%;transition:opacity 1.2s var(--ease);display:block;position:fixed;inset:0}body.ready #stage{opacity:1}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sr-only button:focus-visible{clip:auto;z-index:30;width:auto;height:auto;margin:0;position:fixed;bottom:120px;left:50%}.mark{z-index:5;opacity:0;transition:opacity .8s var(--ease) 1s;align-items:center;gap:10px;margin:0;font-size:18px;font-weight:700;display:flex;position:fixed;top:20px;left:22px}body.ready .mark{opacity:1}.dot{background:var(--amber);width:10px;height:10px;box-shadow:0 0 14px var(--amber);border-radius:50%}.nav{z-index:6;gap:6px;display:flex;position:fixed;top:16px;right:18px}.nav-btn{color:var(--text);background:var(--panel);border:1.5px solid var(--line);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;padding:10px 16px;font:600 15px/1 Bricolage Grotesque,system-ui,sans-serif}.nav-btn[aria-pressed=true]{background:var(--amber);color:#0b0905;border-color:var(--amber)}.nav-btn:focus-visible,.btn:focus-visible,.chip:focus-visible,.hot-label:focus-visible,.cmd:focus-visible{outline:3px solid var(--amber);outline-offset:3px}body[data-mode=intro] .nav{display:none}.labels{pointer-events:none;z-index:4;position:fixed;inset:0}.hot-label{opacity:0;pointer-events:auto;cursor:pointer;white-space:nowrap;color:var(--text);background:var(--panel);border:1.5px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;padding:11px 18px;font:600 17px/1 Bricolage Grotesque,system-ui,sans-serif;transition:border-color .2s,opacity .25s;position:absolute;top:0;left:0}.hot-label:hover{border-color:var(--amber)}.hot-label.near{background:var(--amber);color:#0b0905;border-color:var(--amber)}.hint{z-index:5;background:var(--panel);border:1.5px solid var(--line);opacity:0;width:max-content;max-width:90vw;transition:opacity .6s var(--ease);pointer-events:none;text-align:center;border-radius:999px;margin:0;padding:10px 18px;font-size:16px;font-weight:500;position:fixed;bottom:26px;left:50%;transform:translate(-50%)}.hint.show{opacity:1}body[data-mode=screen] .hint{opacity:0;bottom:104px}body[data-mode=intro] .hint{opacity:0}.bar{z-index:7;opacity:0;pointer-events:none;width:min(640px,94vw);transition:opacity .5s var(--ease), transform .5s var(--ease);position:fixed;bottom:20px;left:50%;transform:translate(-50%,12px)}body[data-mode=screen] .bar{opacity:1;pointer-events:auto;transform:translate(-50%)}body.playing .bar{opacity:0;pointer-events:none}.cmdform{gap:10px;display:flex}.cmd{min-width:0;color:var(--text);background:var(--panel);border:1.5px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;flex:1;padding:14px 18px;font:600 17px/1 ui-monospace,Menlo,Consolas,monospace}.chips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;display:flex}.chip{color:var(--text);background:var(--panel);border:1.5px solid var(--line);cursor:pointer;border-radius:999px;padding:9px 13px;font:600 14px/1 ui-monospace,Menlo,Consolas,monospace}.chip:hover{border-color:var(--amber)}.btn{color:#0b0905;background:var(--amber);cursor:pointer;transition:transform .12s var(--ease), box-shadow .12s var(--ease);border:0;border-radius:999px;padding:14px 24px;font:700 17px/1 Bricolage Grotesque,system-ui,sans-serif;box-shadow:0 4px #8a5a12,0 10px 24px #00000073}.btn:active{transform:translateY(3px);box-shadow:0 1px #8a5a12,0 4px 12px #00000073}.btn-quiet{background:var(--text);box-shadow:0 4px #8b857b,0 10px 24px #00000073}.hit{z-index:8;padding:20px 56px;font-size:22px;display:none;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}body.playing .hit{display:block}.skip{z-index:9;position:fixed;bottom:26px;right:22px}.skip[hidden]{display:none}.skill{z-index:6;opacity:0;pointer-events:none;width:min(380px,80vw);transition:opacity .4s var(--ease), transform .4s var(--ease);position:fixed;bottom:clamp(24px,9vh,90px);left:clamp(20px,5vw,70px);transform:translateY(14px)}.skill.open{opacity:1;transform:none}.skill h2{letter-spacing:-.03em;margin:0 0 8px;font-size:clamp(40px,6vw,72px);font-weight:800;line-height:.95}.skill p{margin:0;font-size:clamp(17px,2vw,22px);font-weight:500;line-height:1.3}.intro{z-index:8;text-align:center;background:var(--ink);transition:opacity 1.1s var(--ease), visibility 0s linear 1.1s;place-content:center;justify-items:center;gap:16px;display:grid;position:fixed;inset:0}.intro.fade,.intro.done{opacity:0}.intro.done{visibility:hidden;pointer-events:none}.intro-title{letter-spacing:-.03em;margin:0;font-size:clamp(44px,9vw,120px);font-weight:800;line-height:.95}.intro-line{margin:0;font-size:clamp(18px,2.4vw,26px);font-weight:500}.fallback{z-index:10;background:var(--ink);padding:8vh 6vw;position:fixed;inset:0;overflow:auto}.fallback h2{margin:0 0 24px;font-size:clamp(34px,7vw,72px)}.fallback section{margin:0 0 28px}.fallback ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.fallback li{border:1.5px solid var(--line);border-radius:16px;padding:14px 16px}.fallback li strong,.fallback li span{display:block}.fallback-note{margin-top:24px;font-size:16px}.noscript{z-index:20;background:var(--ink);place-content:center;margin:0;padding:24px;font-size:20px;display:grid;position:fixed;inset:0}@media (max-width:760px),(max-aspect-ratio:11/10){.mark{font-size:15px;top:16px;left:16px}.nav{top:46px;left:16px;right:auto}.nav-btn{padding:8px 13px;font-size:14px}.skill{background:linear-gradient(to top, var(--ink) 60%, transparent);width:auto;padding:22px 22px 28px;bottom:0;left:0;right:0}.hint{font-size:15px;bottom:20px}.hot-label{padding:9px 14px;font-size:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
