@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#101329;--mint:#b1ffd2;--pink:#ffadcc;--purple:#aba2ff;--muted:#9498b8}*{box-sizing:border-box}body{margin:0;color:#f5f3ff;background:var(--bg);font:14px 'DM Sans',sans-serif;min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid var(--mint);outline-offset:5px}.cosmos{position:fixed;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,#28204855,transparent 65%),radial-gradient(#9b96c537 1px,transparent 1px);background-size:auto,65px 65px}.planet{position:absolute;border-radius:50%;border:1px solid #aca6ff13}.planet-one{width:650px;height:650px;left:-440px;top:180px;box-shadow:0 0 0 50px #aa94ff03,0 0 0 100px #aa94ff03;background:radial-gradient(circle at 70% 35%,#49417340,#15182a)}.planet-two{width:400px;height:400px;right:-250px;bottom:-100px;background:#44365d18}.game-shell{max-width:1260px;margin:auto;padding:26px 42px 20px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:white;font:700 27px 'Space Grotesk';letter-spacing:-1.5px}.brand>span:first-child{background:var(--mint);color:#143e36;border-radius:9px;width:32px;height:32px;display:grid;place-items:center;transform:rotate(-8deg)}.edition{font:500 9px 'Space Grotesk';letter-spacing:2px;color:var(--purple);margin-left:13px;padding-left:20px;border-left:1px solid #ffffff25}.header-actions{display:flex;align-items:center;gap:24px;color:var(--muted);font:500 10px 'Space Grotesk';letter-spacing:1.3px}.icon-button{border:1px solid #ffffff20;background:#ffffff05;color:#c0bfda;border-radius:8px;padding:9px 12px;font-size:13px}.icon-button:hover{background:#ffffff10}.game-frame{border:1px solid #66618d55;border-radius:22px;overflow:hidden;background:#16192d;box-shadow:0 25px 100px #0004}.hud{display:flex;align-items:center;padding:20px 28px;gap:30px;border-bottom:1px solid #ffffff0c}.sector-block{min-width:130px}.sector-block small,.hud-label{display:block;color:var(--muted);font:500 9px 'Space Grotesk';letter-spacing:1.7px;margin-bottom:6px}.sector-block strong{font:700 20px 'Space Grotesk';letter-spacing:1px}.objective{flex:1;display:flex;justify-content:center;gap:20px;align-items:center;font:500 13px 'Space Grotesk';color:#d5cfff}.stage-pips{display:flex;gap:6px}.pip{padding:6px 10px;border:1px solid #ffffff12;border-radius:20px;color:#8586a6;font-size:10px}.pip.current{border-color:#b1ffd255;background:#b1ffd210;color:var(--mint)}.pip.done{background:#b1ffd21c;color:var(--mint);border-color:transparent}.arena{height:clamp(390px,53vh,630px);position:relative;overflow:hidden;touch-action:none;background:radial-gradient(ellipse at 50% 95%,#3a2c6340,transparent 65%),radial-gradient(#c5b8f941 .8px,transparent .8px),radial-gradient(#a4a2de30 1px,transparent 1px),#15172b;background-size:auto,79px 79px,137px 137px,auto;background-position:0 0,23px 10px,5px 44px,0 0;isolation:isolate}.arena:before{content:'';pointer-events:none;position:absolute;width:440px;height:440px;border:1px solid #ad92f810;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 70px #a28de603,0 0 0 71px #ad92f809,0 0 0 140px #a28de602}.arena:after{content:'✦';position:absolute;right:8%;top:17%;color:#b1ffd234;font-size:24px;pointer-events:none}.welcome{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:25px;z-index:4;background:radial-gradient(ellipse,#17192ce8, #17192c55);gap:14px}.kicker{color:var(--mint);font:600 10px 'Space Grotesk';letter-spacing:3px}.welcome h1,.welcome h2{font:700 clamp(32px,4.5vw,56px)/1.07 'Space Grotesk';letter-spacing:-2px;margin:0}.welcome h1 em{font-style:normal;color:var(--mint)}.welcome p{font-size:13px;color:#aaaac5;line-height:1.7;max-width:420px;margin:0}.mission-goals{display:flex;gap:18px;font-size:11px;color:#d5cfff;margin:2px 0 5px}.primary{background:var(--mint);color:#183c32;border:0;border-radius:11px;padding:15px 30px;font:700 14px 'Space Grotesk';box-shadow:0 4px 0 #6aae88,0 5px 30px #b1ffd211;transition:transform .15s}.primary:hover{transform:translateY(-2px)}.primary:active{transform:translateY(3px);box-shadow:0 1px 0 #6aae88}.secondary{background:transparent;border:0;color:#aaaac5;padding:8px;font-size:11px}.mascot{width:72px;height:65px;position:relative;margin:3px 0 8px;filter:drop-shadow(0 0 20px #b1ffd236);transform:rotate(-8deg);background:var(--mint);border-radius:28px 28px 22px 22px;border:4px solid #d4ffe3;box-shadow:inset 0 -9px #80d7ac}.mascot:before{content:'••';position:absolute;left:13px;right:13px;top:14px;background:#1d3a40;border-radius:15px;color:var(--mint);font-size:27px;letter-spacing:8px;line-height:24px;padding-left:6px}.mascot:after{content:'';position:absolute;width:18px;height:9px;background:#ffb5d9;border-radius:0 0 9px 9px;left:23px;bottom:-10px;box-shadow:0 6px 15px #ffb5d950}.game-bottom{display:flex;align-items:center;justify-content:space-between;padding:18px 30px;border-top:1px solid #ffffff0b;gap:30px}.game-bottom strong{font:600 25px 'Space Grotesk'}.game-bottom strong small{color:#6e7194;font-size:15px}.accuracy-meter{flex:1;max-width:450px;position:relative;padding-right:60px}.accuracy-meter .hud-label{display:flex;justify-content:space-between}.accuracy-meter strong{position:absolute;right:0;bottom:-3px;font-size:19px}.meter-track{height:7px;background:#ffffff0a;position:relative;border-radius:4px;margin-top:10px}.meter-track div{height:100%;background:var(--pink);border-radius:4px;transition:width .15s;width:0}.meter-track i{position:absolute;top:-3px;height:13px;width:2px;background:#fff9}.clock{text-align:right}.mission-strip{display:flex;justify-content:space-between;gap:20px;background:#ffffff03;padding:13px 28px;color:#a4a4c2;font-size:11px;min-height:42px}.mission-strip>span:last-child{color:var(--mint);font:500 10px 'Space Grotesk';letter-spacing:1px;white-space:nowrap}footer{display:flex;justify-content:space-between;gap:10px;margin-top:19px;font:500 9px 'Space Grotesk';letter-spacing:1.6px;color:#656987}footer span:last-child{font:10px 'DM Sans';letter-spacing:0}kbd{font:9px monospace;border:1px solid #ffffff19;border-radius:3px;padding:2px 4px}.target{position:absolute;border-radius:50%;border:2px solid #d4ffe3;background:radial-gradient(circle at 35% 30%,#ddffe9,#80e8b1 55%,#4aa77d);box-shadow:0 0 0 7px #b1ffd20a,0 0 30px #b1ffd22b,inset 0 -5px #3a80563a;display:grid;place-items:center;color:#26564a;font:700 25px 'Space Grotesk';user-select:none;touch-action:none;cursor:crosshair;z-index:2;animation:appear .22s ease-out}.target.drag{border-radius:22%;background:linear-gradient(145deg,#f5c1ff,#b493ef);border-color:#eed0ff;color:#4b366a;cursor:grab;box-shadow:0 0 25px #bc8ffb26}.target.drag:active{cursor:grabbing}.target.track{pointer-events:none;background:radial-gradient(circle,#ffe8b5,#e8b776);border-color:#ffe7ad;color:#745326;box-shadow:0 0 35px #ffd28a30}.target.on-target{box-shadow:0 0 0 8px #b1ffd22a,0 0 40px #b1ffd24a;border-color:var(--mint)}.drop{position:absolute;border:2px dashed #c9adf8;border-radius:25%;background:#c9adf80c;display:grid;place-items:center;color:#c9adf8;font-size:26px;pointer-events:none}.pop{position:absolute;color:var(--mint);font:700 20px 'Space Grotesk';pointer-events:none;z-index:3;animation:float .65s ease-out forwards}.notice{position:absolute;left:50%;top:18px;transform:translateX(-50%);color:var(--mint);font:600 12px 'Space Grotesk';border:1px solid #b1ffd232;border-radius:30px;background:#1a2937e8;padding:9px 20px;z-index:3;white-space:nowrap;pointer-events:none}.arena.miss{animation:miss .25s}.result-stars{font-size:40px;color:var(--mint);letter-spacing:10px}.result-row{display:flex;gap:30px;margin:6px 0 10px}.result-row strong{display:block;font:600 27px 'Space Grotesk';color:white}.result-row span{font-size:10px;color:var(--muted)}dialog{width:min(540px,90vw);max-height:80vh;background:#1c2037;color:#f5f3ff;border:1px solid #77719455;border-radius:20px;padding:32px}dialog::backdrop{background:#080b1bc9;backdrop-filter:blur(6px)}dialog h2{font:700 32px 'Space Grotesk';margin:10px 0}dialog p{font-size:12px;color:var(--muted);line-height:1.7}.close{float:right}.history-row{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid #ffffff0b;font-size:12px;gap:15px}.history-row small{display:block;color:var(--muted);margin-top:4px}.history-row>b{color:var(--mint)}@keyframes appear{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes float{to{transform:translateY(-45px);opacity:0}}@keyframes miss{50%{box-shadow:inset 0 0 80px #f995b222}}@media(max-width:700px){.game-shell{padding:18px 14px}.edition{display:none}.header-actions{gap:12px}.header-actions>span{display:none}.hud{padding:15px;gap:12px}.objective{flex-direction:column;gap:7px;align-items:flex-end;font-size:11px}.stage-pips{gap:3px}.pip{font-size:8px;padding:4px 7px}.sector-block{min-width:100px}.sector-block strong{font-size:17px}.arena{height:55vh;min-height:360px}.game-bottom{padding:16px;gap:16px}.game-bottom strong{font-size:21px}.accuracy-meter{padding-right:42px}.accuracy-meter strong{font-size:15px}.hud-label{font-size:8px;letter-spacing:1px}.mission-strip{padding:12px 16px;font-size:10px}.mission-strip>span:last-child{font-size:8px}footer{display:block;line-height:2.2}.welcome h1,.welcome h2{font-size:36px}.welcome{gap:12px}.mission-goals{gap:12px;font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.pause-screen{background:#15172b;z-index:10}.points-hud{text-align:right;min-width:65px}.points-hud strong{color:var(--mint)}.points-result{display:flex;flex-direction:column;align-items:center;gap:4px}.points-result>strong{font:700 38px 'Space Grotesk';color:var(--mint);line-height:1}.points-result>span{font:500 9px 'Space Grotesk';letter-spacing:2px;color:var(--mint)}.points-result small{font-size:11px;color:#aaaac5;max-width:380px;line-height:1.5}.welcome:has(.points-result){gap:10px}.welcome:has(.points-result) h2{font-size:clamp(28px,3.5vw,42px)}.welcome:has(.points-result) .result-stars{font-size:25px}.welcome:has(.points-result) .result-row{margin:0 0 4px}.welcome:has(.points-result) .result-row strong{font-size:21px}@media(max-width:700px){.game-bottom{gap:12px;flex-wrap:wrap}.accuracy-meter{max-width:none;min-width:150px}.points-hud{min-width:45px}.game-bottom strong{font-size:18px}.welcome:has(.points-result){padding:16px;gap:8px}.welcome:has(.points-result) p{font-size:11px}.points-result>strong{font-size:31px}.points-result small{font-size:10px}}

.penalty-pop{color:#ff91ac;font-size:16px;text-shadow:0 2px 6px #100919;white-space:nowrap}.points-hud strong.points-error{color:#ff7598}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.arena.miss{outline:2px solid #ff729b;outline-offset:-3px}@keyframes miss{50%{box-shadow:inset 0 0 110px #ff638550}}

.restart-recovery{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 16px;margin:-8px 0 18px;background:#283b3d;border:1px solid #b1ffd240;border-radius:12px;font-size:12px;color:#d5f8df}.restart-recovery[hidden]{display:none}.recovery-button{border:1px solid #b1ffd24a;border-radius:7px;background:#b1ffd218;color:var(--mint);padding:8px 12px;font-size:12px;font-weight:600}.dismiss-recovery{border:0;background:none;color:#a9c3b7;padding:8px}.recovery-button:hover{background:#b1ffd22b}@media(max-width:700px){header{gap:10px}.header-actions{gap:7px}.header-actions .icon-button{font-size:11px;padding:8px}.restart-recovery{gap:7px;flex-wrap:wrap;font-size:11px}.restart-recovery>span{width:100%;text-align:center}.brand{font-size:22px}}
