:root{color-scheme:dark;--ink:#10191f;--panel:#16232b;--line:#30414a;--text:#ebeee8;--muted:#a5b4b9;--orange:#ffb477;--cyan:#8be8e9}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:var(--ink);color:var(--text);font-family:Arial,Helvetica,sans-serif;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}button{font:inherit;color:inherit;cursor:pointer;touch-action:none;border:1px solid var(--line);background:var(--panel);border-radius:6px}button:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}button:active{filter:brightness(1.2)}a{color:inherit;text-decoration:none}.app{height:100dvh;display:grid;grid-template-columns:minmax(190px,280px) minmax(300px,610px) minmax(180px,250px);gap:clamp(20px,3.8vw,64px);justify-content:center;padding:28px 30px 14px}.intro,.mission{display:flex;flex-direction:column;justify-content:space-between;min-height:0;padding:7px 0 24px}.brand{font-size:11px;font-weight:800;letter-spacing:1.4px}.brand span{display:block;color:var(--muted);font-size:9px;margin-top:7px;letter-spacing:2px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--orange);margin:0 0 17px}h1{font-size:clamp(32px,3.5vw,54px);letter-spacing:-2px;line-height:1.02;margin:0;position:relative}h1 small{display:block;font-size:18px;letter-spacing:0;margin-bottom:8px}em{font-style:normal;color:var(--orange)}.orbit-mark{position:absolute;font-size:38px;right:14px;bottom:4px;color:var(--cyan)}.lead{color:var(--muted);font-size:15px;line-height:1.6}.guide{border-top:1px solid var(--line);padding-top:5px}.guide p{margin:17px 0}.guide b{font-size:9px;letter-spacing:1px;color:var(--cyan)}.guide span{display:block;font-size:12px;line-height:1.6;color:var(--muted);margin-top:7px}.record span,.telemetry>span{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.record strong{display:block;font-size:27px;font-variant-numeric:tabular-nums;margin-top:8px}main{display:flex;flex-direction:column;min-height:0;min-width:0}.hud{display:flex;justify-content:space-between;gap:15px;padding:0 12px 15px}.hud span{font-size:9px;letter-spacing:1.4px;color:var(--muted)}.hud strong{display:block;font-size:25px;font-variant-numeric:tabular-nums;margin-top:5px}.hud strong small{font-size:14px;color:var(--muted)}.playfield{position:relative;min-height:0;flex:1;border:1px solid #3d505b;border-radius:18px;background:#14242d;overflow:hidden;box-shadow:0 14px 70px #0005;touch-action:none}canvas{display:block;width:100%;height:100%;touch-action:none}.controls{display:flex;gap:8px;margin-top:11px;height:51px;flex-shrink:0}.paddle{flex:1;font-size:20px}.paddle span{font-size:9px;letter-spacing:1px}.paddle.active{background:#8be8e930;border-color:var(--cyan)}.launch{flex:1.2;position:relative;overflow:hidden;font-size:12px;font-weight:700;letter-spacing:1px;border-color:#806146;color:var(--orange)}.launch i{position:absolute;bottom:0;left:0;width:0;height:4px;background:var(--orange)}.launch:disabled{opacity:.4;cursor:default}footer{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:var(--muted);padding:11px 1px 0;flex-shrink:0}footer div{display:flex;gap:5px}footer button{font-size:9px;border:0;padding:5px;background:none;color:var(--muted)}.station-no{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--muted)}.station-no span{color:var(--cyan);font-size:8px}.mission h2{font-size:37px;letter-spacing:-1px;line-height:1.06;margin:0 0 16px}.mission p:not(.eyebrow){font-size:12px;line-height:1.7;color:var(--muted)}.satellites{display:flex;gap:11px;margin-top:22px}.satellites span{border:1px solid #45565e;border-radius:50%;display:grid;place-items:center;width:42px;height:42px;color:var(--muted);font-size:14px}.satellites span.on{color:var(--ink);background:var(--cyan);border-color:var(--cyan);box-shadow:0 0 18px #8be8e922}.meteor{border-top:1px solid var(--line);padding-top:17px}.meteor-icon{font-size:30px;color:var(--orange);margin-bottom:13px}.meteor h3{font-size:22px;line-height:1.15;margin:0}.meteor strong{font-size:27px;color:var(--orange);font-variant-numeric:tabular-nums}.meteor strong span{font-size:10px}.telemetry{border-top:1px solid var(--line);padding-top:16px}.telemetry small{color:var(--muted);font-size:9px;letter-spacing:1px}.modal{position:absolute;inset:0;display:grid;place-items:center;background:#0c171ee8;text-align:center;padding:25px;backdrop-filter:blur(5px)}.modal[hidden]{display:none}.modal h2{font-size:clamp(30px,4vw,48px);letter-spacing:-1.6px;line-height:1.08;margin:0 0 22px}.modal p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.6;max-width:280px;margin:0 auto 25px}.primary{background:var(--orange);border:0;color:var(--ink);font-size:13px;font-weight:800;width:100%;padding:18px 22px;display:flex;justify-content:space-between}.modal .modalHint{font-size:10px!important;margin:16px auto 0!important}.toast{position:absolute;top:24%;left:50%;transform:translateX(-50%);white-space:nowrap;max-width:96%;padding:10px 16px;border:1px solid #8be8e966;background:#0b1b23e8;color:var(--cyan);border-radius:5px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .18s}.toast.show{opacity:1}@media(max-width:1000px){.app{grid-template-columns:180px minmax(280px,580px);gap:24px;padding:18px}.mission{display:none}h1{font-size:35px}.orbit-mark{display:none}}@media(max-width:650px){.app{display:flex;padding: max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));gap:0}.intro{display:none}main{width:100%;max-width:610px;margin:auto;height:100%}.hud{padding:0 8px 8px}.hud strong{font-size:22px;margin-top:3px}.hud span{font-size:8px}.controls{height:52px;margin-top:7px;gap:6px}.playfield{border-radius:12px}footer{padding-top:5px}.paddle span{font-size:8px}.modal h2{font-size:36px}}@media(max-height:680px) and (min-width:651px){.guide p{margin:10px 0}.guide span{font-size:11px}.intro{padding-bottom:0}.lead{font-size:12px}.meteor-icon{display:none}.mission h2{font-size:30px}.app{padding-top:12px}}
