:root{color-scheme:dark;--base:#080f22;--panel:#101e38;--surface:#172943;--border:#3a597a;--text:#f3f8ff;--muted:#b1c5df;--mint:#75f4d7;--blue:#91b6ff;--danger:#ff9c91}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(ellipse 700px 600px at 95% -10%,#243d6b55,transparent),radial-gradient(ellipse 700px 800px at 2% 22%,#172b5a40,transparent),var(--base);font:500 15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}
button,a{font:inherit}
button{cursor:pointer;touch-action:manipulation}
button:disabled{cursor:not-allowed;opacity:.5}
button:focus-visible,a:focus-visible{outline:3px solid #baffee;outline-offset:4px}
.shell{width:min(100%,1000px);padding:16px 18px 40px;margin:auto}
.masthead{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #33425f;padding:4px 0 16px}
.brand{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:900;letter-spacing:-.04em}.brand-icon{color:var(--mint);font-size:23px}.brand-accent{color:var(--mint)}
.prototype-pill{color:#f1dba2;background:#3d331f;border:1px solid #736243;border-radius:999px;font-size:10px;font-weight:850;letter-spacing:.08em;padding:6px 11px}
.game-header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:22px 0 18px}
.eyebrow{margin:0 0 5px;color:var(--mint);font-size:11px;letter-spacing:.18em;font-weight:900}
h1{margin:0;font-size:clamp(32px,6vw,46px);line-height:1;letter-spacing:-.06em;font-weight:950}h1 span{color:var(--mint)}
.tagline{color:#c5d8ed;margin:9px 0 0;font-size:14px}
.sound-toggle{border:1px solid #567c99;background:#1b3451;color:#f4fbff;border-radius:999px;font-size:12px;font-weight:800;padding:9px 14px;min-height:44px;white-space:nowrap}
.sound-toggle[aria-pressed=false]{color:#c3cedc}
.statistics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 13px}
.stat{border:1px solid var(--border);border-radius:13px;background:linear-gradient(145deg,#1b304e,#13253f);min-width:0;padding:11px 13px;box-shadow:inset 0 1px #a5cbec0c}
.stat small{display:block;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.06em;color:var(--muted)}
.stat strong{display:block;margin-top:2px;font-size:clamp(22px,4vw,29px);font-variant-numeric:tabular-nums;letter-spacing:-.035em}
.stat:first-child strong{color:var(--mint)}
.game-stage{height:500px;border:1px solid #4b7793;border-radius:21px;overflow:hidden;isolation:isolate;position:relative;background:radial-gradient(ellipse at 50% 0,#1c4572 0,transparent 65%),linear-gradient(180deg,#081731,#112b4a 70%,#0b1729);box-shadow:inset 0 -75px 90px #050b18c9,0 12px 45px #01081855}
.game-stage:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#e7f4ff 1px,transparent 1.3px),radial-gradient(circle,#8accff 1px,transparent 1.3px);background-size:73px 69px,127px 101px;background-position:21px 14px,50px 33px;opacity:.38}
.starfield{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 0 5%,#69d9fc08 35%,transparent 65% 95%);transform:perspective(450px) rotateX(23deg);transform-origin:bottom}
.course-lines{position:absolute;inset:0 7%;display:grid;grid-template-columns:repeat(3,1fr);pointer-events:none;background:linear-gradient(90deg,#8ad3ff0b,transparent 40%,#8ad3ff0b)}
.course-lines i{border-right:1px dashed #75bcd55e;transform:perspective(200px) rotateX(7deg)}
.track-glow{position:absolute;bottom:-12%;left:0;right:0;height:45%;pointer-events:none;background:radial-gradient(ellipse at 50% 100%,#4bf6d825,transparent 60%)}
.stage-topline{position:absolute;top:15px;left:20px;right:20px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#b1d0ed;font-size:11px;font-weight:900;letter-spacing:.08em;pointer-events:none}
.stage-topline span:last-child{color:#b4ffec}.orbit-label{color:#a3b9dd}
.stage-footer{position:absolute;bottom:10px;left:12px;right:12px;z-index:2;display:flex;justify-content:space-between;pointer-events:none;letter-spacing:.3em;font-size:10px;font-weight:850;color:#8acfc3a5}
.wave-layer{position:absolute;inset:0;pointer-events:none;z-index:1}
.hazard,.pickup{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);width:59px;height:59px;display:grid;place-items:center;will-change:top;filter:drop-shadow(0 7px 15px #020713bd)}
.hazard{background:radial-gradient(circle at 33% 25%,#ffdbc9,#c35e5f 48%,#693959 78%);border:2px solid #ffc9ac;border-radius:43% 57% 58% 42%;box-shadow:inset -7px -8px #381b3899,0 0 28px #ff88703a;transform:translate(-50%,-50%) rotate(-17deg)}
.hazard:before{content:"";position:absolute;width:11px;height:11px;border-radius:50%;background:#854c69;left:15px;top:15px;box-shadow:19px 8px #87506a,7px 24px #7a4664}
.pickup{font-size:43px;color:#ffe69d;text-shadow:0 0 18px #ffc850,0 0 31px #ffb648;animation:starPulse 1s ease-in-out infinite alternate}
.ship{position:absolute;z-index:3;left:50%;bottom:11%;width:58px;height:83px;transform:translateX(-50%);transition:left .12s ease-out;pointer-events:none;filter:drop-shadow(0 9px 17px #020b20)}
.ship-core{position:absolute;inset:0 14px 15px;background:linear-gradient(90deg,#3fd5c4,#e1fff7 48%,#45adcf);clip-path:polygon(50% 0,100% 72%,82% 100%,18% 100%,0 72%);border-radius:9px;filter:drop-shadow(0 0 13px #70ffeb)}
.ship-fin{position:absolute;inset:23px 0 0;background:linear-gradient(90deg,#5085da,#54ecd7 50%,#5085da);clip-path:polygon(30% 0,70% 0,100% 90%,66% 75%,50% 100%,34% 75%,0 90%)}
.ship-flame{position:absolute;width:15px;height:28px;left:22px;bottom:-9px;background:linear-gradient(#c7ffff,#4cfff3,#286cff00);clip-path:polygon(10% 0,90% 0,50% 100%);animation:flame .18s infinite alternate}
.ship.hit{animation:shipShake .25s 2}
.screen{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:8px;padding:22px;background:linear-gradient(135deg,#101d35f4,#111c38f7);backdrop-filter:blur(7px)}
.screen-icon{font-size:43px}.screen-kicker{font-size:11px;font-weight:900;letter-spacing:.18em;color:var(--mint)}
.screen h2{font-size:clamp(24px,5vw,36px);line-height:1.12;letter-spacing:-.045em;margin:4px 0 1px;max-width:460px}
.screen p{font-size:14px;line-height:1.55;color:#ccdaeb;max-width:420px;margin:0 auto 7px}
.screen-score{display:flex;flex-direction:column;gap:4px;margin:5px 0}.screen-score strong{font-size:35px;letter-spacing:-.04em;color:var(--mint)}.screen-score span{font-size:13px;color:#d6e5f5}
.screen-actions,.secondary-actions{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap}
.primary,.secondary,.secondary-actions button,.secondary-actions a{border-radius:12px;min-height:44px;padding:10px 15px;font-size:13px;font-weight:900;text-decoration:none}
.primary{background:linear-gradient(135deg,#c6fff4,#64edcd);color:#073b34;border:1px solid #d6fff6;box-shadow:0 7px 25px #42e5c344}
.primary:hover{filter:brightness(1.06)}
.secondary,.secondary-actions button,.secondary-actions a{color:#e5f1ff;background:#1c3453;border:1px solid #5a789a}
.secondary:hover:enabled,.secondary-actions button:hover,.secondary-actions a:hover{background:#2c496c}
.secondary-actions button,.secondary-actions a{background:transparent;border-color:#486989;color:#c0e0f2}
.screen .share-feedback{font-size:12px;color:#c2ffe9;overflow-wrap:anywhere}
.lane-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:13px}
.lane-button{display:flex;justify-content:center;align-items:center;gap:8px;min-height:58px;border-radius:12px;color:#e2ecf7;border:1px solid #4d6e8d;background:#19324f;font-size:12px;font-weight:950;letter-spacing:.07em;transition:background .12s,border .12s}
.lane-button small{font-size:10px;border:1px solid #6686a0;padding:2px 6px;border-radius:6px;color:#bdd1e2}
.lane-button.active{border-color:var(--mint);color:var(--mint);background:#174843;box-shadow:inset 0 0 0 1px #5dd5bd66,0 0 16px #48e5c31b}
.lane-button:hover:enabled{border-color:#b0ffe9}
.under-stage{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:11px 3px 21px}
.status{margin:0;color:#a8c1d9;font-size:12px;line-height:1.5}.round-buttons{display:flex;gap:8px;flex-shrink:0}.round-buttons .secondary{min-width:88px}
.instructions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.instructions>div{background:#12243d;border:1px solid #3c5271;border-radius:13px;padding:14px}
.instructions strong{font-size:12px;color:var(--mint);letter-spacing:.04em}.instructions p{font-size:12px;margin:7px 0 0;color:#c0cfe1}.instructions b{color:white}
.privacy-note{font-size:11px;text-align:center;color:#90a8c3;margin:21px 0 0}
@keyframes flame{to{height:20px;opacity:.7}}@keyframes shipShake{25%{transform:translateX(calc(-50% - 8px))}75%{transform:translateX(calc(-50% + 8px))}}@keyframes starPulse{to{opacity:.6;transform:translate(-50%,-50%) scale(.84)}}
@media(max-width:580px){.shell{padding:11px 10px 30px}.masthead{padding-bottom:12px}.prototype-pill{font-size:8px;max-width:160px;text-align:center}.game-header{align-items:center;gap:7px;margin:17px 2px 13px}.eyebrow{font-size:9px}.game-header h1{font-size:32px}.tagline{font-size:11px}.sound-toggle{font-size:11px;padding:9px 10px}.statistics{gap:5px;margin-bottom:8px}.stat{padding:7px 6px;border-radius:10px}.stat small{font-size:9px;letter-spacing:0}.stat strong{font-size:21px}.game-stage{height:440px;border-radius:16px}.hazard,.pickup{width:48px;height:48px}.pickup{font-size:36px}.stage-topline{left:11px;right:11px;font-size:9px}.lane-controls{gap:6px;margin-top:9px}.lane-button{gap:4px;min-height:53px;font-size:10px}.lane-button small{padding:2px 4px}.under-stage{flex-direction:column;text-align:center;align-items:stretch}.round-buttons{justify-content:center}.instructions{grid-template-columns:1fr;gap:8px}.instructions>div{padding:10px 12px}.screen{padding:16px}.screen p{font-size:12px}.screen h2{font-size:26px}}
@media(max-width:580px) and (max-height:740px){.game-stage{height:clamp(285px,calc(100svh - 280px),410px)}.screen-icon{font-size:32px}.screen{gap:5px}.screen h2{font-size:23px}.screen p{line-height:1.35}.screen-score strong{font-size:28px}}
@media(max-width:350px){.prototype-pill{max-width:130px}.game-header h1{font-size:28px}.sound-toggle span{display:none}.screen-actions{flex-direction:column}.screen-actions button{width:100%}}
@media(max-width:350px) and (max-height:700px){
 .screen{gap:3px;padding:9px 10px;overflow-y:auto;justify-content:safe center}
 .screen-icon{font-size:25px}
 .screen-kicker{font-size:9px;letter-spacing:.1em}
 .screen h2{font-size:20px;margin:1px 0;line-height:1.08}
 .screen p{font-size:11px;line-height:1.25;margin:0 auto 2px}
 .screen-score{gap:0;margin:1px 0}
 .screen-score strong{font-size:25px}
 .screen-score span{font-size:11px}
 .secondary-actions a{display:none}
 .screen-actions,.secondary-actions{gap:4px}
 .primary,.secondary-actions button{padding:8px 12px}
 .game-stage:has(.screen[hidden]) + .lane-controls{position:fixed;left:8px;right:8px;bottom:max(5px,env(safe-area-inset-bottom));z-index:8;margin-top:0;padding:4px;background:#0f2039f2;border:1px solid #41677c;border-radius:14px;box-shadow:0 8px 28px #061326aa}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
