:root{--glass:#0d141fbd;--glass-strong:#0d141fe6;--line:#dce6f521;--text:#eef1f4;--muted:#a3afbd;--booster:#e07b33;--booster-hi:#f0924d;--on-booster:#1c1106;--frost:#a9d2ee;--radius-lg:14px;--radius-sm:8px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--display:"Saira Semi Condensed", "Arial Narrow", sans-serif;--body:"Public Sans", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;background:#0d1726;margin:0;font-size:15px;line-height:1.55;overflow:hidden}#scene{touch-action:none;outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}#fade{opacity:0;pointer-events:none;background:#02040a;position:fixed;inset:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--frost);outline-offset:2px}.brand{top:var(--s5);left:var(--s5);pointer-events:none;text-shadow:0 1px 12px #00000073;position:fixed}.brand h1{font-family:var(--display);letter-spacing:.01em;margin:0;font-size:28px;font-weight:700;line-height:1}.brand p{margin:var(--s1) 0 0;color:var(--text);opacity:.82;font-size:13px}.rail{left:var(--s5);width:210px;padding:var(--s3) var(--s2);background:var(--glass);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px)saturate(1.2);max-height:calc(100vh - 150px);position:fixed;top:104px;overflow-y:auto}.rail-sec+.rail-sec{margin-top:var(--s1)}.rail .rail-group{min-height:32px;font-family:var(--display);letter-spacing:.02em;color:var(--muted);justify-content:space-between;font-size:13.5px;font-weight:600}.rail .rail-group svg{width:16px;height:16px;transition:transform .2s}.rail-sec.closed .rail-group svg{transform:rotate(-90deg)}.rail-sec.closed ol{display:none}.rail ol{margin:0 0 var(--s2);padding:0;list-style:none}.rail button{align-items:center;gap:var(--s2);width:100%;min-height:34px;padding:var(--s1) var(--s2);border-radius:var(--radius-sm);text-align:left;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:14px;display:flex;position:relative}.rail button:hover{color:var(--text);background:#ffffff0d}.rail .num{width:22px;font-family:var(--display);font-variant-numeric:tabular-nums;color:inherit;opacity:.7;flex:none;font-weight:600}.rail button.done{color:#c9d2dc}.rail button.current{color:var(--text);background:#e07b3324}.rail button.current:before{content:"";background:var(--booster);border-radius:2px;width:3px;position:absolute;top:7px;bottom:7px;left:0}.rail button.current .num{color:var(--booster-hi);opacity:1}.tools{top:var(--s5);right:var(--s5);gap:var(--s2);display:flex;position:fixed}.icon-btn{border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(16px);cursor:pointer;border-radius:50%;place-items:center;width:44px;height:44px;transition:background .15s,border-color .15s;display:grid}.icon-btn:hover{background:var(--glass-strong);border-color:#dce6f54d}.icon-btn[aria-pressed=true]{border-color:var(--frost);color:var(--frost)}.icon-btn svg{stroke-width:1.75px;width:20px;height:20px}.hud{top:var(--s5);text-align:center;padding:var(--s2) var(--s5) var(--s3);background:var(--glass);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px);position:fixed;left:50%;transform:translate(-50%)}.hud[hidden]{display:none}.clock{font-family:var(--display);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:34px;font-weight:600;line-height:1.1}.telemetry{justify-content:center;gap:var(--s5);margin:var(--s1) 0 0;display:flex}.telemetry div{gap:var(--s2);align-items:baseline;display:flex}.telemetry dt{color:var(--muted);font-size:12px}.telemetry dd{white-space:nowrap;font-family:var(--display);color:var(--frost);font-variant-numeric:tabular-nums;margin:0;font-size:17px;font-weight:500}.card{right:var(--s5);bottom:var(--s5);width:392px;max-height:calc(100vh - 110px);padding:var(--s5) var(--s5) var(--s4);background:var(--glass);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(18px)saturate(1.2);flex-direction:column;display:flex;position:fixed;box-shadow:0 20px 60px #00000059}.card-toggle{display:none}.card-count{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:13px}.card-title{margin:2px 0 var(--s3);font-family:var(--display);letter-spacing:.005em;text-wrap:balance;font-size:32px;font-weight:600;line-height:1.05}.card-body{min-height:0;margin-right:calc(var(--s2) * -1);padding-right:var(--s2);overflow-y:auto}.card-body p{margin:0 0 var(--s3);color:#d9dfe6;max-width:62ch}.specs{margin:var(--s4) 0 0;column-gap:var(--s4);border-top:1px solid var(--line);grid-template-columns:auto 1fr;display:grid}.specs dt,.specs dd{border-bottom:1px solid var(--line);margin:0;padding:7px 0;font-size:13.5px}.specs dt{color:var(--muted)}.specs dd{color:var(--text);font-weight:500}.mass{margin:var(--s2) 0 var(--s1)}.mass-bar{border-radius:4px;gap:2px;height:14px;display:flex;overflow:hidden}.mass-key{margin:var(--s2) 0 0;color:#d9dfe6;gap:2px;padding:0;font-size:13px;list-style:none;display:grid}.mass-key li{align-items:center;gap:var(--s2);display:flex}.mass-key i{border-radius:2px;flex:none;width:10px;height:10px}.mass-key strong{font-family:var(--display);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}.m-prop{background:var(--frost)}.m-dry{background:#8a96a6}.m-pay{background:var(--booster)}.timeline{margin:var(--s2) 0 0;padding:0;list-style:none}.timeline li{padding:0 0 var(--s3) var(--s5);color:#d9dfe6;font-size:13.5px;line-height:1.45;position:relative}.timeline li:before{content:"";background:var(--frost);border-radius:50%;width:7px;height:7px;position:absolute;top:6px;left:4px}.timeline li:not(:last-child):after{content:"";background:var(--line);width:1px;position:absolute;top:17px;bottom:2px;left:7px}.timeline li:last-child:before{background:var(--booster)}.timeline strong{font-family:var(--display);color:var(--text);font-size:14.5px;font-weight:600;display:block}.orbit-pick{margin:var(--s1) 0 var(--s1);border:1px solid var(--line);background:#00000040;border-radius:10px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.orbit-pick button{min-height:44px;padding:0 var(--s1);cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:7px;font-size:13px;font-weight:600;line-height:1.2}.orbit-pick button:hover{color:var(--text);background:#ffffff0d}.orbit-pick button[aria-pressed=true]{background:var(--text);color:#111a26}.card-note{margin:var(--s3) 0 0;color:var(--muted);font-size:12.5px;line-height:1.45}.card-note:empty{display:none}.config{margin:var(--s2) 0 var(--s1)}.config-label{color:var(--muted);margin-bottom:var(--s2);justify-content:space-between;align-items:baseline;font-size:13px;display:flex}.config-label strong{font-family:var(--display);color:var(--text);font-size:20px;font-weight:600}.segmented{border:1px solid var(--line);background:#00000040;border-radius:10px;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;display:grid}.segmented button{min-height:44px;font-family:var(--display);cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:7px;font-size:18px;font-weight:600}.segmented button:hover{color:var(--text)}.segmented button[aria-pressed=true]{background:var(--text);color:#111a26}.card-nav{gap:var(--s2);margin-top:var(--s4);display:flex}.btn{white-space:nowrap;min-height:44px;padding:0 var(--s4);border:1px solid var(--line);cursor:pointer;background:#ffffff0a;border-radius:10px;justify-content:center;align-items:center;gap:6px;font-size:14.5px;font-weight:600;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.btn svg{stroke-width:2px;width:18px;height:18px}.btn.ghost:hover{background:#ffffff17}.btn.primary{background:var(--booster);border-color:var(--booster);color:var(--on-booster);padding:0 var(--s4) 0 var(--s5);margin-left:auto}.btn.primary:hover{background:var(--booster-hi)}.btn.primary.launch{padding:0 var(--s5)}.btn:disabled{opacity:.35;cursor:default}.btn[hidden]{display:none}.hint{left:50%;bottom:var(--s5);padding:6px var(--s3);color:var(--text);background:var(--glass);border:1px solid var(--line);pointer-events:none;border-radius:999px;margin:0;font-size:13px;transition:opacity .6s;position:fixed;transform:translate(-50%)}.hint.gone{opacity:0}.disclaimer{left:var(--s5);bottom:var(--s3);color:#eef1f499;text-shadow:0 1px 6px #0009;pointer-events:none;max-width:300px;margin:0;font-size:11.5px;line-height:1.4;position:fixed}.progress{display:none}#loader{z-index:10;background:radial-gradient(at 50% 120%,#3a2a24 0%,#121b2b 55%,#0a101b 100%);place-items:center;transition:opacity .8s;display:grid;position:fixed;inset:0}#loader.done{opacity:0;pointer-events:none}.loader-inner{text-align:center;width:min(280px,70vw)}.loader-bar{background:#ffffff1f;border-radius:2px;height:3px;overflow:hidden}.loader-bar span{background:var(--booster);width:0;height:100%;transition:width .25s;display:block}#loader p{margin:var(--s3) 0 0;font-family:var(--display);color:var(--muted);font-size:16px}@media (width<=860px){.rail{display:none}.brand{top:var(--s4);left:var(--s4)}.brand h1{font-size:22px}.brand p{display:none}.tools{top:var(--s3);right:var(--s3);gap:6px}.progress{left:var(--s4);right:var(--s4);gap:3px;display:flex;position:fixed;top:64px}.progress span{background:#ffffff38;border-radius:2px;flex:1;height:3px}.progress span.done{background:#ffffffb3}.progress span.current{background:var(--booster)}.hud{padding:6px var(--s4) var(--s2);top:78px}.telemetry{gap:var(--s4)}.clock{font-size:26px}.card{left:var(--s3);right:var(--s3);bottom:var(--s3);width:auto;max-height:48vh;padding:var(--s4) var(--s4) var(--s3)}.card-toggle{cursor:pointer;width:44px;height:44px;color:var(--muted);background:0 0;border:0;place-items:center;display:grid;position:absolute;top:6px;right:6px}.card-toggle svg{transition:transform .2s}.card.collapsed .card-body{display:none}.card.collapsed .card-toggle svg{transform:rotate(180deg)}.card-title{padding-right:40px;font-size:25px}.card-body p{font-size:14.5px}.hint,.disclaimer{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
