@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--ink:#f8f0dc;--muted:#b2a9bb;--orange:#ff9e6e;--yellow:#ffd583;--purple:#2a203e;--line:#51435c}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#171128;color:var(--ink)}body{font-family:'DM Sans',system-ui,sans-serif;background:radial-gradient(circle at 80% -12%,#43304f 0,transparent 37%),linear-gradient(#20182e,#140f25 84%)}button{font:inherit;cursor:pointer}button:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.app{max-width:1480px;margin:auto;padding:0 32px 25px}.topbar{height:73px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #51405d}.brand{display:flex;align-items:center;gap:10px;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;font-size:20px;letter-spacing:.075em;line-height:.82}.brand-icon{font-size:36px;color:var(--yellow);transform:rotate(-18deg)}.brand small{display:block;font-size:9px;letter-spacing:.24em;color:#d5a88f;margin-top:8px}.top-right{display:flex;align-items:center;gap:22px}.edition,.eyebrow,.mission-stamp,.readout-label,.status,.coordinate,.goal-pill,.stage-bottom,.deck-label,.footer-line,.card-badge,.small-print{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;letter-spacing:.14em}.edition{font-size:12px;color:#aa9cac}.icon-button{width:37px;height:37px;background:#2d233d;border:1px solid #6b5367;border-radius:50%;color:var(--yellow);font-size:19px}.icon-button.muted{color:#796e83}.hero{height:208px;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:13px;margin:0;color:var(--yellow)}.sparkle{font-size:17px;margin-right:8px}.hero h1{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(100px,11vw,168px);font-weight:900;letter-spacing:-.06em;line-height:.73;margin:20px 0 12px;text-shadow:5px 7px 0 #6b405a}.hero h1 span{color:var(--orange)}.subtitle{font-size:14px;color:#dfd4d2;margin:0}.mission-stamp{width:135px;height:135px;border:2px dashed #8d6874;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);color:var(--yellow);font-size:10px;text-align:center;line-height:1.1;gap:4px}.mission-stamp strong{font-size:55px;line-height:.9;font-family:'Barlow Condensed',Impact,sans-serif}.mission-stamp span:last-child{width:80px}.game-shell{background:#2a203d;border:1px solid #6a5264;box-shadow:0 18px 0 #100c1e,0 30px 50px #07050b88;padding:10px;border-radius:11px}.telemetry{height:77px;display:flex;align-items:stretch;border:1px solid #5b4a5e;border-radius:5px 5px 0 0;background:#211a34}.readout{border-right:1px solid #51435c;padding:12px 19px;min-width:142px;display:flex;flex-direction:column;justify-content:center;gap:3px}.readout-label{color:#bdacc1;font-size:10px}.readout strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:27px;line-height:1;color:#fff2d8;letter-spacing:.02em}.readout strong small{font-size:13px;color:#e5a78c}.fuel-readout{min-width:190px;position:relative;padding-right:55px}.fuel-readout strong{position:absolute;right:11px;bottom:15px;font-size:19px}.fuel-wrap{height:11px;background:#574354;border:1px solid #806475;overflow:hidden;border-radius:2px}.fuel-bar{height:100%;width:100%;background:linear-gradient(90deg,#f58669,#ffce79);transition:width .12s}.status{margin-left:auto;align-self:center;display:flex;align-items:center;gap:9px;padding:0 21px;color:#ffda93;font-size:12px;white-space:nowrap}.status-light,.goal-dot{height:8px;width:8px;border-radius:50%;background:#f9d27d;box-shadow:0 0 12px #ffc16a}.status-light{animation:blink 1.6s infinite}@keyframes blink{50%{opacity:.35}}.stage{height:clamp(440px,48vw,675px);position:relative;overflow:hidden;border:1px solid #795367;border-top:0;background:#15152e}.stage canvas{display:block;width:100%;height:100%}.stage-top,.stage-bottom{position:absolute;left:20px;right:20px;display:flex;justify-content:space-between;pointer-events:none}.stage-top{top:19px;align-items:center}.coordinate{font-size:11px;color:#d5bdd0;text-shadow:0 2px 3px #000}.coordinate span{color:#ffcc82;margin:0 7px}.goal-pill{font-size:10px;color:#fff2cd;background:#2b213bc7;border:1px solid #bd846f;border-radius:30px;padding:9px 12px;display:flex;align-items:center;gap:8px}.stage-bottom{bottom:16px;color:#ecd4d0;font-size:11px;text-shadow:0 2px 3px #000}.overlay{position:absolute;inset:0;background:#100d23aa;display:grid;place-items:center;padding:20px;backdrop-filter:blur(5px)}.overlay.hidden{display:none}.overlay-card{width:min(435px,100%);background:#f7edd9;color:#2b203a;border:4px solid #2a1d35;outline:2px solid #ffb67d;border-radius:8px;box-shadow:11px 12px 0 #171022,0 26px 50px #080613a8;text-align:center;padding:20px 30px 19px;transform:rotate(-1deg)}.card-badge{display:inline-block;background:#e6605f;color:#fff4e0;font-size:11px;padding:5px 13px;transform:rotate(2deg);letter-spacing:.14em}.card-art{height:73px;position:relative;margin:5px auto 0;width:180px}.card-moon{position:absolute;color:#e6b875;font-size:98px;line-height:1;left:14px;top:-13px;transform:rotate(-35deg)}.card-ship{position:absolute;font-size:45px;color:#ac6a6d;left:80px;top:20px;text-shadow:3px 3px #58364e}.card-scream{position:absolute;right:-10px;top:6px;color:#d25557;font:900 20px 'Barlow Condensed',Impact,sans-serif;transform:rotate(-15deg)}.overlay-card h2{font:900 clamp(34px,4vw,47px)/.94 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;letter-spacing:-.015em;margin:10px 0}.overlay-card h2 em{font-style:normal;color:#dc685c}.overlay-card>p:not(.small-print){font-size:13px;line-height:1.45;margin:12px auto;max-width:325px;color:#66556a}.quick-controls{display:flex;justify-content:center;gap:20px;margin:19px 0}.quick-controls>div{display:flex;align-items:center;gap:4px;color:#67556a;font-size:11px}.quick-controls span{margin-left:3px}.quick-controls kbd{border:1px solid #b2a3a3;border-bottom-width:3px;background:white;border-radius:4px;font:700 11px 'DM Sans',sans-serif;padding:5px 7px;color:#34263d}.primary-button{display:flex;align-items:center;justify-content:space-between;width:100%;background:#f17b62;border:2px solid #693d54;border-bottom-width:5px;border-radius:4px;padding:13px 18px;color:#291c35;font:900 20px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.07em;text-align:left;transition:transform .12s,filter .12s}.primary-button:hover{filter:brightness(1.08);transform:translateY(-2px)}.primary-button span{font-size:26px;line-height:18px}.small-print{font-size:10px;color:#8f8089;margin:12px 0 0}.game-message{position:absolute;top:75px;left:50%;transform:translateX(-50%) rotate(-2deg);background:#ffdc90;color:#38273b;border:2px solid #59384d;padding:7px 14px;font:900 20px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.05em;box-shadow:4px 5px #191227;opacity:0;transition:opacity .18s;white-space:nowrap;pointer-events:none}.game-message.show{opacity:1}.control-deck{min-height:78px;background:#241b36;border:1px solid #5b4a5e;border-top:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 18px;border-radius:0 0 5px 5px}.deck-label{display:flex;align-items:center;gap:10px;color:#f9dbac;white-space:nowrap}.deck-label strong{display:block;font-size:13px}.deck-label small{display:block;color:#ac99a7;font-size:9px;margin-top:4px}.deck-symbol{font-size:39px;color:#f59875;line-height:1}.touch-controls{display:flex;gap:7px;align-items:center}.control-button{height:47px;border:1px solid #9c7986;border-bottom:4px solid #614757;border-radius:5px;background:#493650;color:#fff0d9;user-select:none;touch-action:none}.control-button:active,.control-button.pressed{transform:translateY(2px);border-bottom-width:2px}.control-button.steer{width:53px;font-size:26px;line-height:1}.control-button.thrust{min-width:177px;background:#f08d6f;color:#302038;font:900 16px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.05em;border-color:#ffbe91;border-bottom-color:#a25760}.thrust span{margin-left:10px}.mic-button{height:45px;min-width:128px;border:1px solid #86657e;background:#30243f;color:#f6e6d7;border-radius:4px;display:flex;align-items:center;gap:7px;padding:0 11px;font:800 12px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.08em;white-space:nowrap}.mic-button.active{border-color:#ffc57d;background:#49334c}.mic-icon{font-size:17px;color:#f7b784}.mic-meter{height:16px;width:16px;border-radius:50%;border:2px solid #80677d;overflow:hidden;display:flex;align-items:flex-end}.mic-meter i{display:block;width:100%;height:0;background:#ffcd83}.footer-line{display:flex;justify-content:space-between;gap:15px;color:#a99aaa;font-size:10px;margin:30px 4px 0}@media(max-width:1000px){.status{display:none}.readout{flex:1;min-width:0}.fuel-readout{min-width:170px}.stage{height:clamp(420px,58vw,630px)}}@media(max-width:680px){.app{padding:0 10px 25px}.topbar{height:59px}.brand{font-size:16px}.brand-icon{font-size:29px}.edition,.mission-stamp{display:none}.hero{height:163px}.hero h1{font-size:105px;margin:20px 0 11px}.subtitle{font-size:12px;max-width:280px;line-height:1.3}.eyebrow{font-size:11px}.game-shell{padding:5px}.telemetry{height:66px}.readout{padding:7px 6px;gap:5px}.readout-label{font-size:8px;letter-spacing:.06em}.readout strong{font-size:20px}.readout strong small{font-size:10px}.fuel-readout{min-width:84px;padding-right:6px}.fuel-readout strong{right:5px;bottom:8px;font-size:14px}.fuel-wrap{width:60%;height:8px}.stage{height:480px}.stage-top,.stage-bottom{left:10px;right:10px}.coordinate{font-size:8px}.goal-pill{font-size:8px;padding:7px}.stage-bottom{font-size:8px}.overlay-card{padding:16px 15px 14px}.overlay-card h2{font-size:36px}.card-art{height:62px}.quick-controls{gap:8px}.quick-controls>div{font-size:9px}.control-deck{padding:9px 7px;flex-wrap:wrap;justify-content:center}.deck-label{display:none}.control-button.steer{width:45px}.control-button.thrust{min-width:145px;font-size:14px}.mic-button{min-width:92px;justify-content:center}.mic-meter{display:none}.footer-line{font-size:9px;line-height:1.3}.footer-line span:last-child{display:none}}@media(max-width:390px){.control-button.thrust{min-width:130px}.control-button.steer{width:41px}.mic-button{min-width:78px;padding:0 5px;font-size:10px}}
