:root{--ink: #080b1c;--panel: rgba(14, 19, 48, .78);--line: rgba(143, 162, 255, .22);--text: #e9ecff;--muted: #8f9acb;--accent: #7c5cff;--mint: #5cf2c8;--coral: #ff6b5e;color-scheme:dark}*{box-sizing:border-box;margin:0}html,body,#root{height:100%}body{background:radial-gradient(900px 600px at 12% 8%,rgba(124,92,255,.38),transparent 60%),radial-gradient(800px 600px at 92% 96%,rgba(92,242,200,.16),transparent 60%),radial-gradient(700px 500px at 88% 4%,rgba(255,107,94,.12),transparent 60%),var(--ink);color:var(--text);font-family:Sora,system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}body:before,body:after{content:"";position:fixed;top:-450px;right:-450px;bottom:-450px;left:-450px;z-index:0;pointer-events:none;animation:drift var(--speed) linear infinite}body:before{--t: 260px;--speed: 140s;opacity:.6;background-size:260px 260px;background-image:radial-gradient(1.5px 1.5px at 20px 30px,#fff,transparent),radial-gradient(1px 1px at 90px 120px,#cfd6ff,transparent),radial-gradient(1.5px 1.5px at 160px 60px,#fff,transparent),radial-gradient(1px 1px at 230px 200px,#aab6ff,transparent),radial-gradient(1px 1px at 60px 220px,#fff,transparent)}body:after{--t: 410px;--speed: 240s;opacity:.4;background-size:410px 410px;background-image:radial-gradient(2px 2px at 50px 80px,#b9c4ff,transparent),radial-gradient(1px 1px at 190px 300px,#fff,transparent),radial-gradient(1.5px 1.5px at 320px 140px,#d9ddff,transparent),radial-gradient(1px 1px at 370px 360px,#fff,transparent)}@keyframes drift{to{transform:translate3d(calc(var(--t) * -1),calc(var(--t) * -1),0)}}.app{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));position:relative;z-index:1}.hud,.stage{width:min(100%,640px,calc(100dvh - 110px))}.hud{display:flex;align-items:center;gap:18px;padding:10px 16px;background:var(--panel);border:1px solid var(--line);border-radius:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.stat{display:flex;flex-direction:column;min-width:0}.stat span{font-size:.68rem;color:var(--muted)}.stat strong{font-size:1.15rem;font-weight:800;font-variant-numeric:tabular-nums}.lives{flex-direction:row;gap:6px;align-items:center}.lives i{width:12px;height:12px;border-radius:50%;border:2px solid var(--coral);opacity:.35}.lives i.on{background:var(--coral);opacity:1;box-shadow:0 0 10px var(--coral)}.tools{margin-left:auto;display:flex;gap:6px}.tools button{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--text);font-size:.9rem;cursor:pointer}.tools button:hover:not(:disabled){background:#7c5cff33}.tools button:disabled{opacity:.35;cursor:default}button:focus-visible{outline:3px solid var(--mint);outline-offset:2px}.stage{position:relative;aspect-ratio:1;border-radius:20px;overflow:hidden;cursor:pointer;border:1px solid var(--line);box-shadow:0 20px 60px #00000080,0 0 80px #7c5cff26}canvas{display:block;width:100%;height:100%}.chips{position:absolute;top:10px;left:10px;display:flex;gap:6px;flex-wrap:wrap;pointer-events:none}.chips span{font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:99px;border:1px solid var(--c);color:var(--c);background:#080b1cb3}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;background:#080b1cb8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:in .35s ease both}@keyframes in{0%{opacity:0}}h1{font-size:clamp(2rem,8vw,3.2rem);font-weight:800;letter-spacing:-.03em;line-height:1}h2{font-size:clamp(1.6rem,6vw,2.4rem);font-weight:800;letter-spacing:-.02em}.overlay p{max-width:32ch;color:var(--muted);line-height:1.5;font-size:.95rem}.overlay small{color:var(--muted);font-size:.75rem}.legend{list-style:none;padding:0;display:flex;gap:16px;flex-wrap:wrap;justify-content:center;font-size:.8rem;color:var(--muted)}.legend li{display:flex;align-items:center;gap:6px}.legend b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:var(--ink);font-size:.7rem}.cta{background:var(--accent);color:#fff;border:0;border-radius:12px;padding:14px 32px;font:800 1rem Sora,sans-serif;cursor:pointer;box-shadow:0 8px 28px #7c5cff80;transition:transform .15s ease,box-shadow .15s ease}.cta:hover{transform:translateY(-2px);box-shadow:0 12px 34px #7c5cffa6}.cta:active{transform:scale(.97)}.results{display:flex;gap:28px}.results div{display:flex;flex-direction:column}.results strong{font-size:1.8rem;font-weight:800;color:var(--mint);font-variant-numeric:tabular-nums}.results span{font-size:.72rem;color:var(--muted)}@media (max-width: 420px){.hud{gap:10px;padding:8px 12px}.stat strong{font-size:1rem}}@media (prefers-reduced-motion: reduce){.overlay{animation:none}.cta{transition:none}body:before,body:after{animation:none}}
