@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;600;700&display=swap');
:root{color-scheme:dark;--cyan:#62f5dc;--violet:#b398ff;--ink:#070b19;--muted:#a1b5cc;--white:#effffa}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--ink);color:var(--white);font-family:'DM Sans',sans-serif;overscroll-behavior:none}button{font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #fff;outline-offset:6px}.viewport{position:relative;width:100%;height:100%;height:100dvh;overflow:hidden;touch-action:none;isolation:isolate}canvas{display:block;width:100%;height:100%}.hud{position:absolute;inset:max(24px,env(safe-area-inset-top)) max(28px,env(safe-area-inset-right)) auto max(28px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:4;pointer-events:none}.run-stats{display:flex;flex-direction:column;gap:7px;font-size:10px;letter-spacing:1.8px;color:#9ab0c4;text-shadow:0 2px 5px #000}.run-stats b{color:var(--white);font-weight:600;margin-left:8px;font-variant-numeric:tabular-nums}.run-stats>span:last-child b{color:var(--cyan)}.progress{position:absolute;left:50%;transform:translateX(-50%);width:min(34vw,440px);display:flex;align-items:center;gap:13px}.progress-track{height:7px;flex:1;background:#020a1599;border:1px solid #779cab55;transform:skewX(-15deg)}.progress-track>div{height:100%;width:0;background:var(--cyan);box-shadow:0 0 14px #62f5dc66}#progressText{font-weight:700;font-size:13px;min-width:36px;font-variant-numeric:tabular-nums;text-shadow:0 2px 4px #000}.hud-actions{display:flex;gap:12px;pointer-events:auto}.icon-button{width:40px;height:40px;background:#08122177;border:1px solid #8bc2d93d;color:var(--white);font-size:22px;border-radius:4px}.icon-button:hover{border-color:var(--cyan);color:var(--cyan)}#pauseBtn{display:none}.game-overlay,.pause-overlay{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at center,#070e2180,#070b191c);text-align:center;z-index:3}.pause-overlay{background:#050b1de0;backdrop-filter:blur(7px);z-index:5}.menu{padding:28px;display:flex;flex-direction:column;align-items:center}.overlay-kicker{font-size:11px;letter-spacing:4px;color:var(--cyan);font-weight:700;text-shadow:0 0 15px #62f5dc88}h1,h2{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:clamp(68px,11vw,144px);line-height:.9;letter-spacing:1px;margin:24px 0;color:#f3ffff;text-shadow:0 4px 0 #13233b,0 0 45px #62f5dc44}h1 span{color:var(--cyan)}h2{font-size:clamp(68px,9vw,110px)}.game-overlay p{font-size:13px;line-height:1.8;color:#b2c7d7;margin:0 0 28px;text-shadow:0 2px 6px #000}.primary-button{border:2px solid var(--cyan);background:#62f5dced;color:#061d25;display:flex;justify-content:space-between;align-items:center;gap:46px;padding:17px 25px;min-width:210px;font-weight:800;letter-spacing:3px;font-size:14px;box-shadow:0 0 32px #62f5dc22;transform:skewX(-8deg)}.primary-button>*{transform:skewX(8deg)}.primary-button:hover{background:#b4fff0;box-shadow:0 0 38px #62f5dc55}.overlay-hint{margin-top:18px;font-size:11px;color:#a6b9cc}.overlay-hint kbd{color:var(--white);border:0;background:none;padding:0 3px}.menu-controls{display:flex;gap:28px;margin-top:36px;font-size:9px;letter-spacing:1px;color:#86a0b5}.menu-controls span{display:flex;align-items:center;gap:10px}kbd{font:inherit;font-size:9px;padding:5px 7px;border:1px solid #738fa955;border-radius:3px;color:#d2e5ee;background:#0b1d2a77;letter-spacing:.5px}.text-button{background:none;border:0;color:#a6bbcf;font-size:11px;letter-spacing:2px;margin-top:26px;padding:10px}.audio-credit{font-size:8px;color:#60778f;letter-spacing:1px;margin-top:28px}.phase-button,.jump-button{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));height:58px;min-width:120px;border:1px solid #62f5dc66;background:#081525aa;color:var(--cyan);border-radius:5px;font-size:11px;letter-spacing:2px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:2;backdrop-filter:blur(4px)}.phase-button{left:max(28px,env(safe-area-inset-left))}.phase-button>span{font-size:23px}.phase-button kbd{font-size:10px}.phase-help{position:absolute;bottom:max(94px,calc(env(safe-area-inset-bottom) + 66px));left:max(28px,env(safe-area-inset-left));color:#a2bdd0;font-size:8px;letter-spacing:1.5px;pointer-events:none}.jump-button{right:max(28px,env(safe-area-inset-right));font-size:26px;color:#e2fff8;min-width:100px}.jump-button span{font-size:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(pointer:fine){.jump-button{display:none}}@media(max-width:600px){.hud{inset:18px 18px auto;gap:8px}.run-stats{font-size:8px;letter-spacing:1px;gap:5px}.run-stats b{margin-left:3px}.progress{width:35vw;gap:7px}.progress-track{height:6px}#progressText{font-size:10px;min-width:25px}.hud-actions{gap:7px}.icon-button{width:32px;height:32px;font-size:18px}.overlay-kicker{font-size:9px;letter-spacing:3px}h1{font-size:clamp(66px,18vw,108px)}.game-overlay p{font-size:11px}.menu-controls{gap:16px;font-size:8px;margin-top:28px;flex-wrap:wrap;justify-content:center}.menu-controls span{gap:6px}kbd{font-size:8px}.phase-button,.jump-button{bottom:max(20px,env(safe-area-inset-bottom));height:58px;min-width:100px}.phase-button{left:18px}.jump-button{right:18px}.phase-help{left:18px;bottom:88px;font-size:7px}.primary-button{padding:15px 22px;min-width:190px}.menu{padding:20px}}@media(max-height:500px){.menu{padding:16px}h1,h2{font-size:70px;margin:13px 0}.game-overlay p{margin-bottom:14px;font-size:11px}.menu-controls{margin-top:18px}.overlay-hint{margin-top:10px}.primary-button{padding:12px 23px}.phase-button,.jump-button{height:44px;bottom:15px}.phase-help{bottom:67px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
:root{--cyan:#37ffe7;--violet:#c778ff;--phase:#37ffe7}.progress-track{border-color:#85d5ee88;background:#040b26bb;box-shadow:0 0 12px #6779ff22}.progress-track>div{background:linear-gradient(90deg,#537bff,#c778ff,var(--phase));box-shadow:0 0 16px var(--phase)}#levelText{position:absolute;top:-17px;left:0;font-size:8px;font-weight:700;letter-spacing:2px;color:#a6b9e1}#progressText{white-space:nowrap;min-width:48px}.overlay-kicker{color:#ffbc68;text-shadow:0 0 18px #ff58be88}h1{filter:drop-shadow(0 0 22px #7c45ff55)}h1 span{color:#57ffe7;text-shadow:0 0 15px #19e7db88,0 4px 0 #105d70}.primary-button{background:linear-gradient(110deg,#37ffe7,#8bffe0);box-shadow:0 0 22px #37ffe744,6px 6px 0 #b75aff44}.phase-button{border-color:var(--phase);box-shadow:inset 0 0 18px #142c6944,0 0 14px #62f5dc16}.jump-button{border-color:#8eb9ff88;background:#16214dcc}.icon-button{background:#110d2d99;border-color:#a78bfa55}@media(max-width:600px){#progressText{min-width:35px}#levelText{font-size:7px;top:-14px;letter-spacing:1px}.progress{width:35vw}}
.achievement-summary{margin-top:25px;font-size:9px;letter-spacing:1px;max-width:420px}.achievement-summary>span{color:#ffc46a;text-shadow:0 0 12px #ff779144}.game-overlay .achievement-summary p{font-size:9px;color:#bcb9e6;margin:8px 0 0;line-height:1.6}.achievement-summary+.menu-controls{margin-top:22px}@media(max-height:600px){.achievement-summary{margin-top:14px}.achievement-summary+.menu-controls{margin-top:12px}.game-overlay .achievement-summary p{font-size:8px}}@media(max-height:440px){.menu-controls{display:none}.achievement-summary{margin-top:10px}.game-overlay p{margin-bottom:10px}h1,h2{font-size:60px;margin:10px 0}}
.mode-select{border:0;padding:0;margin:0 0 18px;display:flex;gap:8px}.mode-select legend{font-size:9px;letter-spacing:2px;color:#b2c7d7;margin-bottom:8px}.mode-select label{cursor:pointer}.mode-select input{position:absolute;opacity:0}.mode-select label>span{display:flex;flex-direction:column;gap:4px;min-width:128px;padding:9px 14px;border:1px solid #8098bd77;background:#0a1635bb;color:#b2c7d7}.mode-select strong{font-size:10px;letter-spacing:1.5px}.mode-select small{font-size:9px}.mode-select input:checked+span{border-color:var(--cyan);color:#effffa;background:#16435b;box-shadow:0 0 16px #37ffe733}.mode-select input:focus-visible+span{outline:3px solid white;outline-offset:3px}@media(max-height:600px){.mode-select{margin-bottom:10px}.mode-select label>span{padding:6px 12px}.mode-select legend{margin-bottom:5px}}
@media(max-width:360px){.progress{top:38px;width:45vw;gap:7px}.game-overlay .menu-controls{display:none}}
