.navbar{z-index:10;box-shadow:0 4px 0 0 var(--gold);background:#0d0b1feb;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.navbar .brand{color:var(--gold);text-shadow:2px 2px 0 var(--ink);font-family:"Press Start 2P",monospace;font-size:12px;text-decoration:none}.navbar .links{align-items:center;gap:10px;display:flex}.navbar .links a{letter-spacing:1px;color:var(--cream);padding:7px 9px;font-family:"Press Start 2P",monospace;font-size:9px;text-decoration:none}.navbar .links a:hover{color:var(--teal)}.navbar .links a.active{color:var(--ink);background:linear-gradient(180deg, #ffe27a, var(--gold));box-shadow:2px 2px 0 0 var(--ink)}.navbar .links a.active:hover{color:var(--ink)}.game-canvas{inset:var(--nav-h,52px) 0 0 0;touch-action:none;background:#1d1f21;position:fixed;overflow:hidden}.game-canvas canvas{display:block}.touch-controls{pointer-events:none;z-index:10;height:200px;position:fixed;inset:auto 0 0}.touch-controls button{pointer-events:auto;color:#fff;touch-action:none;-webkit-user-select:none;user-select:none;background:#14161a99;border:none;border-radius:12px;width:60px;height:60px;font-size:20px;position:absolute}.dpad{width:192px;height:192px;position:absolute;bottom:24px;left:24px}.dpad-up{top:0;left:66px}.dpad-down{top:132px;left:66px}.dpad-left{top:66px;left:0}.dpad-right{top:66px;left:132px}.interact-btn{font-weight:700;bottom:56px;right:32px;color:#14161a!important;background:#f4b350d9!important;width:76px!important;height:76px!important}.congrats-page{background:radial-gradient(120% 90% at 50% 0%, var(--bg2) 0%, var(--bg) 60%, #0e0c22 100%);color:var(--cream);min-height:calc(100dvh - var(--nav-h));background-attachment:fixed;justify-content:center;align-items:center;padding:32px 16px;font-family:VT323,monospace;display:flex;position:relative;overflow-x:hidden}.stars{pointer-events:none;z-index:0;position:fixed;inset:0}.star{background:var(--cream);opacity:.5;width:3px;height:3px;image-rendering:pixelated;animation:3s steps(2,end) infinite twinkle;position:absolute}@keyframes twinkle{0%,to{opacity:.15}50%{opacity:.9}}.confetti{z-index:1;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.card{z-index:2;border:4px solid var(--ink);width:100%;max-width:560px;box-shadow:0 0 0 4px var(--gold), 8px 8px 0 0 #00000080;text-align:center;background:linear-gradient(#1d1740d9,#0d0b1fe6);padding:30px 26px 34px;position:relative}.eyebrow{letter-spacing:2px;color:var(--teal);margin-bottom:14px;font-family:"Press Start 2P",monospace;font-size:9px;line-height:1.8}.grad{image-rendering:pixelated;image-rendering:crisp-edges;margin:6px auto 4px;animation:1.6s steps(2,end) infinite bob;display:block}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.congrats-page h1{color:var(--gold);text-shadow:3px 3px 0 var(--ink), 0 0 18px #ffd23f59;margin:10px 0 8px;font-family:"Press Start 2P",monospace;font-size:26px;line-height:1.3}.sub{letter-spacing:1px;color:var(--coral);margin-bottom:20px;font-family:"Press Start 2P",monospace;font-size:10px;line-height:1.9}.stats{justify-content:center;gap:14px;margin:0 0 20px;display:flex}.stat{letter-spacing:1px;color:var(--cream);background:#3dd6b01a;border:2px solid #3dd6b073;flex-direction:column;align-items:center;gap:6px;padding:10px 16px;font-family:"Press Start 2P",monospace;font-size:8px;line-height:1.6;display:flex}.stat .num{color:var(--gold);text-shadow:2px 2px 0 var(--ink);font-size:22px}.distinction{letter-spacing:2px;color:var(--ink);background:linear-gradient(180deg, #ffe27a, var(--gold));border:2px solid var(--ink);margin:0 0 20px;padding:9px 16px;font-family:"Press Start 2P",monospace;font-size:10px;display:inline-block;box-shadow:3px 3px #00000073}.ecg-wrap{border-top:2px dashed #3dd6b066;border-bottom:2px dashed #3dd6b066;margin:6px 0 18px;padding:10px 0}.ecg-wrap svg{width:100%;height:48px;display:block}.ecg path{fill:none;stroke:var(--teal);stroke-width:3px;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 0 5px #3dd6b0b3);stroke-dasharray:600;stroke-dashoffset:600px;animation:2.4s linear infinite trace}@keyframes trace{to{stroke-dashoffset:-600px}}.note{color:var(--cream);max-width:42ch;margin:0 auto 24px;font-size:21px;line-height:1.5}.note b{color:var(--teal)}.congrats-page button{color:var(--ink);background:var(--gold);cursor:pointer;box-shadow:5px 5px 0 0 var(--ink);border:none;padding:14px 22px;font-family:"Press Start 2P",monospace;font-size:12px;transition:transform 50ms step-end,box-shadow 50ms step-end}.congrats-page button:hover{filter:brightness(1.08)}.congrats-page button:active{box-shadow:0 0 0 0 var(--ink);transform:translate(5px,5px)}.congrats-page button:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.footer{color:#fff4e08c;letter-spacing:1px;margin-top:18px;font-size:18px}@media (width<=420px){.congrats-page h1{font-size:20px}.card{padding:24px 18px 28px}}@media (prefers-reduced-motion:reduce){*{animation:none!important}.ecg path{stroke-dashoffset:0}}.home{min-height:calc(100dvh - var(--nav-h));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:32px 16px;display:flex}.home h1{color:var(--gold);text-shadow:3px 3px 0 var(--ink), 0 0 18px #ffd23f59;font-family:"Press Start 2P",monospace;font-size:34px}.home .tagline{color:var(--cream);font-size:22px}.home .enter-btn{color:var(--ink);background:var(--gold);box-shadow:5px 5px 0 0 var(--ink);margin-top:8px;padding:14px 22px;font-family:"Press Start 2P",monospace;font-size:12px;text-decoration:none}.home .enter-btn:hover{filter:brightness(1.08)}.home .enter-btn:active{box-shadow:0 0 0 0 var(--ink);transform:translate(5px,5px)}.home .enter-btn:focus-visible{outline:3px solid var(--teal);outline-offset:4px}@media (width<=420px){.home h1{font-size:24px}}:root{--bg:#15122e;--bg2:#1d1740;--gold:#ffd23f;--teal:#3dd6b0;--coral:#ff6b8a;--cream:#fff4e0;--ink:#0d0b1f;--nav-h:52px}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100dvh;color:var(--cream);background:radial-gradient(120% 90% at 50% 0%, var(--bg2) 0%, var(--bg) 60%, #0e0c22 100%);background-attachment:fixed;margin:0;font-family:VT323,monospace}
