.asteroid-shell{--asteroid-green:#65e5af;--asteroid-blue:#4aa8ff;--asteroid-red:#ff756b;--asteroid-yellow:#f5d64f;--asteroid-space:#01040c;--asteroid-glass:rgba(5,16,32,0.88);--asteroid-holo:#ffc857;background:radial-gradient(circle at 50% 16%,rgba(255,200,87,.1),transparent 30rem),radial-gradient(circle at 88% 4%,rgba(87,216,231,.08),transparent 24rem),var(--planner-void)}.asteroid-shell:before{opacity:.13;background-image:linear-gradient(rgba(255,200,87,.14) 1px,transparent 0),linear-gradient(90deg,rgba(255,200,87,.14) 1px,transparent 0);background-size:52px 52px}.asteroid-frame{width:min(1580px,100%)}.asteroid-header{display:flex;align-items:flex-end;justify-content:space-between;gap:34px;padding:4px 2px 26px}.asteroid-header>div{max-width:940px}.asteroid-header h1{width:fit-content;margin:0;color:var(--planner-text);font-family:Arial Narrow,Aptos Narrow,Roboto Condensed,sans-serif;font-size:clamp(2.6rem,5.35vw,5.6rem);font-stretch:condensed;font-weight:900;letter-spacing:-.055em;line-height:.86}.asteroid-header h1>small{display:block;margin-top:.42rem;color:var(--planner-muted);font-size:.225em;letter-spacing:.17em;line-height:1}.asteroid-header p{max-width:850px;margin:16px 0 0;color:var(--planner-muted);font-size:clamp(.95rem,1.35vw,1.12rem)}.asteroid-header p strong{color:var(--planner-orange)}.asteroid-header nav{display:flex;max-width:560px;flex-wrap:wrap;justify-content:flex-end;gap:8px}.asteroid-header nav a,.asteroid-header nav a:visited{display:flex;min-height:38px;align-items:center;padding:8px 13px;border:1px solid var(--planner-line);border-radius:999px;color:var(--planner-muted);background:rgba(11,23,41,.74);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.68rem;font-weight:900;letter-spacing:.1em;line-height:1;text-decoration:none}.asteroid-header nav a:first-child{border-color:rgba(185,167,255,.72);color:var(--planner-lavender)}.asteroid-header nav a:nth-child(2){border-color:rgba(255,155,66,.68);color:var(--planner-orange)}.asteroid-header nav a:nth-child(3){border-color:rgba(245,204,91,.55);color:var(--planner-gold)}.asteroid-header nav a:nth-child(4){border-color:rgba(87,216,231,.5);color:var(--planner-cyan)}.asteroid-header nav a:hover{border-color:var(--planner-text);color:var(--planner-text)}.asteroid-command-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(240px,1.25fr);overflow:hidden;border:1px solid var(--planner-line);border-radius:32px 7px 7px 7px;background:var(--planner-ink)}.asteroid-command-strip>div{display:flex;min-height:86px;align-items:center;gap:13px;padding:14px clamp(13px,1.5vw,23px);border-right:1px solid var(--planner-line)}.asteroid-command-strip>div:last-child{border-right:0;color:var(--planner-cyan)}.asteroid-command-strip span{color:var(--planner-orange);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:1.35rem;font-weight:900}.asteroid-command-strip p{display:grid;min-width:0;gap:3px;margin:0}.asteroid-command-strip b,.asteroid-command-strip small{overflow:hidden;font-family:Arial Narrow,Aptos Narrow,sans-serif;letter-spacing:.09em;text-overflow:ellipsis;white-space:nowrap}.asteroid-command-strip b{font-size:.76rem}.asteroid-command-strip small{color:var(--planner-muted);font-size:.61rem;letter-spacing:.035em}.asteroid-command-strip i{width:12px;height:12px;flex:0 0 auto;border:2px solid var(--planner-line);border-radius:50%}.asteroid-command-strip i.is-live{border:0;background:var(--asteroid-green);box-shadow:0 0 0 5px rgba(101,229,175,.11),0 0 16px var(--asteroid-green);animation:asteroid-signal 1.5s ease-in-out infinite}.asteroid-briefing{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;margin:16px 0;padding:13px 15px 13px 20px;border:1px solid rgba(255,155,66,.46);border-left:9px solid var(--planner-orange);border-radius:5px 28px 5px 5px;background:linear-gradient(90deg,rgba(255,155,66,.12),rgba(7,16,31,.92) 28%)}.asteroid-briefing>button,.asteroid-briefing>span{font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.12em}.asteroid-briefing>span{color:var(--planner-orange)}.asteroid-briefing p{display:grid;gap:4px;margin:0;color:var(--planner-muted);font-size:.8rem}.asteroid-briefing p small{color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.66rem;font-weight:900;letter-spacing:.1em}.asteroid-briefing>button{min-height:42px;padding:0 15px;border:1px solid var(--planner-line);border-radius:999px;color:var(--planner-muted);background:var(--planner-panel);cursor:pointer}.asteroid-briefing>button.is-active{border-color:var(--planner-cyan);color:var(--planner-cyan)}.asteroid-console-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:stretch}.asteroid-device-records,.asteroid-flight-console,.asteroid-records>article,.asteroid-telemetry{border:1px solid var(--planner-line);background:rgba(7,16,31,.94)}.asteroid-flight-console{min-width:0;overflow:hidden;border-radius:30px 6px 6px 6px}.asteroid-flight-console>header,.asteroid-records article>header,.asteroid-telemetry>header{display:flex;min-height:73px;align-items:center;justify-content:space-between;gap:14px;padding:11px 18px;border-bottom:1px solid var(--planner-line);background:linear-gradient(90deg,rgba(87,216,231,.08),transparent 48%)}.asteroid-flight-console>header>div,.asteroid-records article>header>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 13px;align-items:center}.asteroid-flight-console>header span,.asteroid-records article>header span,.asteroid-telemetry>header span{grid-row:1/span 2;color:var(--planner-orange);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:1.42rem;font-weight:900}.asteroid-flight-console>header h2,.asteroid-flight-console>header p,.asteroid-records article>header h2,.asteroid-records article>header p,.asteroid-telemetry>header p{margin:0}.asteroid-flight-console>header p,.asteroid-records article>header p,.asteroid-telemetry>header p{color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.63rem;font-weight:900;letter-spacing:.13em}.asteroid-flight-console>header h2,.asteroid-records article>header h2{font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:clamp(1.15rem,2vw,1.75rem);line-height:1}.asteroid-flight-console>header>strong{padding:7px 10px;border:1px solid var(--planner-line);border-radius:999px;color:var(--planner-muted);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.65rem;letter-spacing:.12em}.asteroid-flight-console>header>strong.is-running{border-color:var(--asteroid-green);color:var(--asteroid-green)}.asteroid-flight-console>header>strong.is-training{border-color:var(--planner-lavender);color:var(--planner-lavender);box-shadow:inset 0 0 18px rgba(174,150,255,.1)}.asteroid-flight-console>header>strong.is-collision{border-color:var(--planner-coral);color:var(--planner-coral)}.asteroid-flight-console>header>strong.is-failed{border-color:var(--planner-orange);color:var(--planner-orange)}.asteroid-flight-console>header>strong.is-completed{border-color:var(--planner-gold);color:var(--planner-gold)}.asteroid-flight-console>header>strong.is-arriving{border-color:var(--planner-cyan);color:var(--planner-gold);box-shadow:inset 0 0 18px rgba(87,216,231,.12)}.asteroid-stage{position:relative;min-height:0;overflow:hidden;aspect-ratio:16/9;background:var(--asteroid-space);box-shadow:inset 0 0 0 1px rgba(87,216,231,.14),inset 0 0 80px rgba(2,7,18,.62);touch-action:none}.asteroid-stage canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.asteroid-score-floats{z-index:3}.asteroid-arrival-confetti,.asteroid-score-floats{position:absolute;inset:0;overflow:hidden;pointer-events:none}.asteroid-arrival-confetti{z-index:8}.asteroid-arrival-confetti>i{position:absolute;top:-12%;left:var(--confetti-left);width:7px;height:19px;border-radius:1px 7px 1px 1px;background:var(--confetti-color);box-shadow:0 0 10px color-mix(in srgb,var(--confetti-color) 64%,transparent);opacity:0;animation:asteroid-confetti-fall var(--confetti-duration) cubic-bezier(.14,.65,.38,1) var(--confetti-delay) both;will-change:transform,opacity}.asteroid-arrival-confetti>i:nth-child(3n){width:15px;height:6px;border-radius:7px 1px 7px 1px}.asteroid-arrival-confetti>i:nth-child(4n){width:6px;height:12px;border-radius:50%}.asteroid-arrival-callout{position:absolute;bottom:11%;left:50%;z-index:9;display:grid;width:min(520px,calc(100% - 42px));justify-items:center;gap:4px;padding:12px 28px 14px;overflow:hidden;border:1px solid rgba(87,216,231,.76);border-left:14px solid var(--planner-orange);border-radius:5px 34px 5px 34px;color:var(--planner-text);background:linear-gradient(90deg,rgba(3,10,23,.9),rgba(7,24,41,.76));box-shadow:0 0 34px rgba(87,216,231,.2),inset 0 0 26px rgba(87,216,231,.06);text-align:center;text-shadow:0 0 10px rgba(87,216,231,.42);transform:translateX(-50%);animation:asteroid-arrival-callout .42s ease-out both;backdrop-filter:blur(5px);pointer-events:none}.asteroid-arrival-callout:after{position:absolute;right:0;bottom:0;left:0;height:4px;background:linear-gradient(90deg,var(--planner-coral) 0 20%,transparent 20% 21%,var(--planner-orange) 21% 52%,transparent 52% 53%,var(--planner-gold) 53% 72%,transparent 72% 73%,var(--planner-cyan) 73%);content:""}.asteroid-arrival-callout>small,.asteroid-arrival-callout>span{color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:clamp(.48rem,1.2vw,.64rem);font-weight:900;letter-spacing:.17em}.asteroid-arrival-callout>strong{color:var(--planner-gold);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:clamp(1.3rem,4vw,2.4rem);letter-spacing:.06em;line-height:1}.asteroid-arrival-callout>small{color:var(--planner-orange);letter-spacing:.11em}.asteroid-arrival-callout.is-orbit-intro{bottom:8%;width:min(680px,calc(100% - 42px));border-color:rgba(174,150,255,.78);border-left-color:var(--planner-lavender);background:linear-gradient(90deg,rgba(3,10,23,.94),rgba(22,18,49,.8)),repeating-linear-gradient(0deg,transparent 0 4px,rgba(126,245,255,.04) 4px 5px);box-shadow:0 0 42px rgba(174,150,255,.28),inset 0 0 30px rgba(126,245,255,.07)}.asteroid-stage.is-stage-orbit .asteroid-hud__reticle{top:var(--orbit-reticle-y,50%);left:var(--orbit-reticle-x,50%);filter:hue-rotate(122deg) saturate(1.2)}.asteroid-stage.is-stage-orbit .asteroid-hud__reticle>i{height:var(--orbit-guide-length,140px);transform:rotate(var(--orbit-guide-angle,0deg));transform-origin:50% 0}.asteroid-stage.is-stage-orbit .asteroid-hud__destination{border-color:rgba(174,150,255,.44);box-shadow:inset 0 0 22px rgba(174,150,255,.08)}@keyframes asteroid-confetti-fall{0%{opacity:0;transform:translate3d(0,-8%,0) rotate(0deg)}12%{opacity:1}88%{opacity:.94}to{opacity:0;transform:translate3d(var(--confetti-drift),118vh,0) rotate(var(--confetti-rotation))}}@keyframes asteroid-arrival-callout{0%{opacity:0;transform:translate(-50%,16px) scale(.94)}to{opacity:1;transform:translate(-50%) scale(1)}}.asteroid-score-float{position:absolute;color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:clamp(.88rem,2.15vw,1.7rem);font-weight:900;letter-spacing:.06em;line-height:1;text-shadow:0 0 6px currentColor,0 0 18px rgba(2,7,18,.94);white-space:nowrap;will-change:left,top,opacity,transform}.asteroid-score-float.is-small-shield{color:var(--asteroid-blue)}.asteroid-score-float.is-small-phaser{color:var(--planner-cyan)}.asteroid-score-float.is-medium-phaser{color:var(--asteroid-red)}.asteroid-score-float.is-large-photon{color:var(--asteroid-yellow);font-size:clamp(1.12rem,2.8vw,2.2rem);text-shadow:0 0 8px currentColor,0 0 24px rgba(245,204,91,.48)}.asteroid-score-float.is-pickup-comic{color:var(--planner-lavender);font-size:clamp(.9rem,2.3vw,1.75rem)}.asteroid-score-float.is-pickup-lanyard{color:var(--planner-coral);font-size:clamp(.9rem,2.3vw,1.75rem)}.asteroid-score-float.is-pickup-pin,.asteroid-score-float.is-pin-shield{color:var(--planner-gold);font-size:clamp(.9rem,2.3vw,1.75rem);text-shadow:0 0 8px currentColor,0 0 24px rgba(245,204,91,.48)}.asteroid-stage:focus-visible{outline:4px solid var(--planner-cyan);outline-offset:-5px}.asteroid-hud{position:absolute;inset:0;z-index:2;pointer-events:none;color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;text-shadow:0 0 10px rgba(87,216,231,.45)}.asteroid-hud:before{position:absolute;top:84px;right:14%;bottom:92px;left:14%;border-right:1px dashed rgba(87,216,231,.12);border-left:1px dashed rgba(87,216,231,.12);background:linear-gradient(180deg,rgba(87,216,231,.035),transparent 34%,rgba(87,216,231,.018));content:"";-webkit-mask-image:linear-gradient(transparent,#000 18%,#000 80%,transparent);mask-image:linear-gradient(transparent,#000 18%,#000 80%,transparent)}.asteroid-hud__lcars{position:absolute;top:96px;bottom:90px;display:grid;width:clamp(72px,9vw,118px);grid-template-rows:auto auto minmax(90px,1fr) auto auto;gap:5px;filter:drop-shadow(0 0 10px rgba(2,7,18,.9))}.asteroid-hud__lcars--port{left:12px}.asteroid-hud__lcars--starboard{right:12px}.asteroid-hud__lcars>span{display:grid;min-height:clamp(42px,5.2vw,62px);align-content:end;padding:7px 9px;color:#06111d;text-shadow:none}.asteroid-hud__lcars--port>span{border-radius:24px 4px 4px 24px;text-align:right}.asteroid-hud__lcars--starboard>span{border-radius:4px 24px 24px 4px}.asteroid-hud__lcars>span.is-coral{background:var(--planner-coral)}.asteroid-hud__lcars>span.is-orange{background:var(--planner-orange)}.asteroid-hud__lcars>span.is-gold{background:var(--planner-gold)}.asteroid-hud__lcars>span.is-cyan{background:var(--planner-cyan)}.asteroid-hud__lcars>span.is-lavender{background:var(--planner-lavender)}.asteroid-hud__lcars b,.asteroid-hud__lcars small{overflow:hidden;font-weight:900;line-height:1;text-overflow:ellipsis;white-space:nowrap}.asteroid-hud__lcars small{font-size:clamp(.34rem,.52vw,.46rem);letter-spacing:.08em}.asteroid-hud__lcars b{margin-top:3px;font-size:clamp(.78rem,1.45vw,1.25rem);letter-spacing:.04em}.asteroid-hud__lcars>i{position:relative;min-height:90px}.asteroid-hud__lcars>i:after,.asteroid-hud__lcars>i:before{position:absolute;content:""}.asteroid-hud__lcars>i:before{top:0;bottom:0;width:8px;background:linear-gradient(180deg,var(--planner-orange) 0 18%,transparent 18% 24%,var(--planner-lavender) 24% 52%,transparent 52% 72%,var(--planner-cyan) 72% 100%)}.asteroid-hud__lcars>i:after{top:53%;width:64%;height:9px;background:var(--planner-gold)}.asteroid-hud__lcars--port>i:after,.asteroid-hud__lcars--port>i:before{left:0}.asteroid-hud__lcars--port>i:after{border-radius:0 9px 9px 0}.asteroid-hud__lcars--starboard>i:after,.asteroid-hud__lcars--starboard>i:before{right:0}.asteroid-hud__lcars--starboard>i:after{border-radius:9px 0 0 9px}.asteroid-hud__combo,.asteroid-hud__score,.asteroid-hud__shields,.asteroid-hud__timer{position:absolute;display:grid}.asteroid-hud__score{top:20px;left:clamp(108px,12vw,182px);min-width:128px;padding:7px 24px 7px 11px;border-left:4px solid var(--planner-cyan);border-radius:4px 22px 4px 4px;background:rgba(3,10,23,.68)}.asteroid-hud__combo span,.asteroid-hud__score span,.asteroid-hud__shields span,.asteroid-hud__timer span{font-size:.59rem;font-weight:900;letter-spacing:.15em}.asteroid-hud__score strong,.asteroid-hud__timer strong{color:var(--planner-text);font-size:clamp(1.25rem,3vw,2rem);letter-spacing:.05em}.asteroid-hud__timer{top:20px;right:clamp(108px,12vw,182px);justify-items:end;min-width:142px;padding:7px 11px 7px 24px;border-right:4px solid var(--planner-gold);border-radius:22px 4px 4px 4px;background:rgba(3,10,23,.68)}.asteroid-hud__timer.is-slowed{border-right-color:var(--planner-lavender);color:var(--planner-lavender);box-shadow:0 0 22px rgba(174,150,255,.2);animation:asteroid-timer-slow 1.2s ease-in-out infinite alternate}@keyframes asteroid-timer-slow{0%{transform:scale(1)}to{transform:scale(1.035)}}.asteroid-hud__shields{bottom:52px;left:clamp(108px,12vw,182px);width:min(260px,32%);gap:5px}.asteroid-hud__shields i{height:7px;overflow:hidden;border:1px solid rgba(87,216,231,.55);background:rgba(2,7,18,.7)}.asteroid-hud__shields b{display:block;height:100%;background:var(--planner-cyan);box-shadow:0 0 12px var(--planner-cyan);transition:width .18s ease}.asteroid-hud__combo{right:clamp(108px,12vw,182px);bottom:48px;justify-items:end}.asteroid-hud__combo strong{color:var(--planner-orange);font-size:1.4rem}.asteroid-hud__destination{position:absolute;right:22px;bottom:20px;left:22px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:var(--planner-muted);font-size:.52rem;font-weight:900;letter-spacing:.08em}.asteroid-hud__destination:before{position:absolute;right:0;bottom:18px;left:0;height:2px;background:rgba(87,216,231,.2);content:""}.asteroid-hud__destination>i{position:absolute;bottom:18px;left:0;height:2px;background:var(--planner-cyan);box-shadow:0 0 10px var(--planner-cyan)}.asteroid-hud__destination>b{grid-column:3;color:var(--planner-gold)}.asteroid-hud__destination.is-locked>i{background:var(--planner-gold);box-shadow:0 0 14px var(--planner-gold)}.asteroid-hud__destination.is-locked>b,.asteroid-hud__destination.is-locked>span{color:var(--planner-gold)}.asteroid-hud__reticle{position:absolute;top:29%;left:50%;width:74px;height:74px;border:1px solid rgba(255,155,66,.46);border-radius:50%;transform:translate(-50%,-50%)}.asteroid-stage-pause{position:absolute;top:17px;left:50%;z-index:6;min-width:108px;min-height:48px;padding:0 16px;border:1px solid rgba(245,204,91,.75);border-radius:4px 18px 4px 4px;color:var(--planner-gold);background:rgba(3,10,23,.86);cursor:pointer;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.62rem;font-weight:900;letter-spacing:.13em;transform:translateX(-50%);backdrop-filter:blur(6px)}.asteroid-stage-pause:focus-visible,.asteroid-stage-pause:hover{color:#06111d;background:var(--planner-gold);outline:none}.asteroid-stage-pause:disabled{pointer-events:none;opacity:0}.asteroid-large-warning{position:absolute;top:78px;right:20px;left:20px;z-index:7;display:grid;min-height:62px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;overflow:hidden;padding:7px 8px 7px 0;border:2px solid var(--planner-gold);border-radius:31px 5px 5px 31px;color:#06111d;background:var(--planner-gold);box-shadow:0 0 28px rgba(245,204,91,.42),inset 0 -5px 0 rgba(255,155,66,.42);animation:asteroid-warning-pulse 1.1s ease-in-out infinite}.asteroid-large-warning>i{display:grid;align-self:stretch;place-items:center;border-radius:30px 4px 4px 30px;color:var(--planner-gold);background:#06111d;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:1.15rem;font-style:normal;font-weight:900}.asteroid-large-warning>span{display:grid;min-width:0;line-height:1.1}.asteroid-large-warning button,.asteroid-large-warning small,.asteroid-large-warning strong{font-family:Arial Narrow,Aptos Narrow,sans-serif;font-weight:900;letter-spacing:.09em}.asteroid-large-warning strong{font-size:clamp(.72rem,1.4vw,1rem)}.asteroid-large-warning small{margin-top:3px;font-size:.49rem}.asteroid-large-warning button{min-width:132px;min-height:46px;padding:0 14px;border:1px solid #06111d;border-radius:4px 20px 4px 4px;color:var(--planner-gold);background:#06111d;cursor:pointer;font-size:.58rem}.asteroid-large-warning button:focus-visible:not(:disabled),.asteroid-large-warning button:hover:not(:disabled){color:#06111d;background:var(--planner-text)}.asteroid-large-warning button:disabled{cursor:not-allowed;opacity:.56}.has-large-warning .asteroid-hud__photon{opacity:0}.asteroid-hud__photon{position:absolute;top:82px;right:clamp(108px,12vw,182px);display:grid;justify-items:end;padding:5px 8px;border-right:3px solid rgba(255,117,107,.52);color:var(--planner-coral);background:rgba(3,10,23,.46)}.asteroid-hud__photon span{font-size:.48rem;font-weight:900;letter-spacing:.15em}.asteroid-hud__photon strong{font-size:.78rem;letter-spacing:.08em}.asteroid-hud__photon.is-ready{border-color:var(--planner-gold);color:var(--planner-gold);text-shadow:0 0 12px rgba(245,204,91,.7)}.asteroid-hud__reticle:after,.asteroid-hud__reticle:before{position:absolute;background:rgba(255,155,66,.55);content:""}.asteroid-hud__reticle:before{top:50%;left:-12px;width:90px;height:1px}.asteroid-hud__reticle:after{top:-12px;left:50%;width:1px;height:90px}.asteroid-hud__reticle span{position:absolute;inset:10px;border:1px dashed rgba(87,216,231,.5);border-radius:50%;animation:asteroid-reticle 9s linear infinite}.asteroid-hud__reticle>i{position:absolute;top:calc(100% + 10px);left:50%;width:1px;height:clamp(90px,18vw,220px);background:repeating-linear-gradient(180deg,rgba(87,216,231,.55) 0 7px,transparent 7px 15px);content:"";opacity:.48}.asteroid-hud__reticle>b{position:absolute;top:-24px;left:50%;color:var(--planner-orange);font-size:.48rem;letter-spacing:.16em;transform:translateX(-50%)}.asteroid-hud__reticle>b:before{margin-right:6px;content:"↓"}.asteroid-stage-message{position:absolute;top:50%;left:50%;z-index:4;width:min(620px,calc(100% - 36px));padding:clamp(22px,4vw,42px);border:1px solid rgba(87,216,231,.52);border-left:8px solid var(--planner-cyan);border-radius:5px 38px 5px 5px;color:var(--planner-text);background:rgba(3,10,23,.91);box-shadow:0 24px 80px rgba(0,0,0,.52),inset 0 0 50px rgba(87,216,231,.05);transform:translate(-50%,-50%);backdrop-filter:blur(8px)}.asteroid-stage-message:not(.is-result){max-height:calc(100% - 24px);overflow-y:auto}.asteroid-stage-message>span{color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.66rem;font-weight:900;letter-spacing:.16em}.asteroid-stage-message h2{margin:8px 0 11px;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:clamp(1.55rem,4vw,2.6rem);line-height:.98}.asteroid-stage-message p{margin:0;color:var(--planner-muted);font-size:.86rem}.asteroid-orbit-tutorial{position:absolute;top:50%;left:50%;z-index:8;width:min(760px,calc(100% - 34px));max-height:calc(100% - 26px);padding:clamp(20px,3vw,34px);overflow-y:auto;border:1px solid rgba(245,204,91,.72);border-left:9px solid var(--planner-orange);border-radius:5px 38px 5px 5px;color:var(--planner-text);background:linear-gradient(125deg,rgba(255,155,66,.1),transparent 34%),rgba(3,9,21,.96);box-shadow:0 28px 90px rgba(0,0,0,.68),inset 0 0 70px rgba(245,204,91,.045);transform:translate(-50%,-50%);backdrop-filter:blur(10px)}.asteroid-orbit-tutorial>span,.asteroid-orbit-tutorial__quota,.asteroid-orbit-tutorial__rules b{color:var(--planner-orange);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.66rem;font-weight:900;letter-spacing:.15em}.asteroid-orbit-tutorial h2{margin:8px 0 10px;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:clamp(1.65rem,4vw,2.75rem);line-height:.98}.asteroid-orbit-tutorial>p{margin:0;color:var(--planner-muted);font-size:.9rem;line-height:1.5}.asteroid-orbit-tutorial__rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0 14px}.asteroid-orbit-tutorial__rules>div{display:grid;gap:4px;min-width:0;padding:12px;border:1px solid rgba(87,216,231,.3);background:rgba(5,19,34,.74)}.asteroid-orbit-tutorial__rules>div.is-warning{border-color:rgba(255,98,93,.68);background:rgba(84,17,24,.38)}.asteroid-orbit-tutorial__rules strong{color:var(--planner-text);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.84rem;letter-spacing:.08em}.asteroid-orbit-tutorial__rules small{color:var(--planner-muted);font-size:.72rem;line-height:1.35}.asteroid-orbit-tutorial p.asteroid-orbit-tutorial__quota{color:var(--planner-gold)}.asteroid-orbit-tutorial>button{width:100%;min-height:52px;margin-top:16px;border:0;border-radius:4px 24px 4px 4px;color:#07101a;background:var(--planner-orange);cursor:pointer;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.8rem;font-weight:900;letter-spacing:.14em}.asteroid-contact-briefing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:16px}.asteroid-contact-briefing>div{--contact-color:var(--asteroid-blue);--contact-preview-scale:1;display:grid;min-width:0;gap:7px;padding:7px;border:1px solid color-mix(in srgb,var(--contact-color) 58%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--contact-color) 10%,transparent),rgba(2,7,18,.78))}.asteroid-contact-briefing>div.is-small{--contact-color:var(--asteroid-blue);--contact-preview-scale:0.58}.asteroid-contact-briefing>div.is-medium{--contact-color:var(--asteroid-red);--contact-preview-scale:0.79}.asteroid-contact-briefing>div.is-large{--contact-color:var(--asteroid-yellow);--contact-preview-scale:1}.asteroid-contact-briefing figure{position:relative;height:112px;margin:0;border:1px solid color-mix(in srgb,var(--contact-color) 32%,transparent);border-radius:4px 24px 4px 4px;background:radial-gradient(circle,color-mix(in srgb,var(--contact-color) 18%,transparent),transparent 68%)}.asteroid-contact-briefing figure img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 10px rgba(0,0,0,.48));transform:scale(var(--contact-preview-scale));transform-origin:center}.asteroid-countermeasure-icon{position:relative;display:block;width:48px;height:48px;flex:0 0 48px;border:2px solid;color:var(--contact-color,var(--planner-cyan));background:rgba(2,8,20,.94);box-shadow:0 0 16px color-mix(in srgb,currentColor 28%,transparent)}.asteroid-contact-briefing figure .asteroid-countermeasure-icon{position:absolute;right:-5px;bottom:-6px}.asteroid-countermeasure-icon b,.asteroid-countermeasure-icon em,.asteroid-countermeasure-icon i{position:absolute;display:block;color:inherit;font-style:normal}.asteroid-countermeasure-icon.is-small{--contact-color:var(--asteroid-blue);border-radius:23px 23px 8px 8px}.asteroid-countermeasure-icon.is-small i{inset:8px 10px 7px;border:2px solid;border-radius:50% 50% 42% 42%/28% 28% 72% 72%}.asteroid-countermeasure-icon.is-small b{top:21px;right:14px;left:14px;height:2px;background:currentColor}.asteroid-countermeasure-icon.is-small em{bottom:8px;left:22px;width:2px;height:9px;background:currentColor}.asteroid-countermeasure-icon.is-medium{--contact-color:var(--asteroid-red);border-radius:50%}.asteroid-countermeasure-icon.is-medium i{inset:14px;border:2px solid;border-radius:50%}.asteroid-countermeasure-icon.is-medium b{top:22px;right:5px;left:5px;height:2px;background:currentColor}.asteroid-countermeasure-icon.is-medium em{top:5px;bottom:5px;left:22px;width:2px;background:currentColor}.asteroid-countermeasure-icon.is-large{--contact-color:var(--asteroid-yellow);border-radius:24px 8px 8px 24px}.asteroid-countermeasure-icon.is-large i{top:16px;right:7px;width:21px;height:12px;border:2px solid;border-radius:50%}.asteroid-countermeasure-icon.is-large b,.asteroid-countermeasure-icon.is-large em{left:5px;width:14px;height:2px;background:currentColor}.asteroid-countermeasure-icon.is-large b{top:18px}.asteroid-countermeasure-icon.is-large em{top:26px;width:10px}.asteroid-contact-briefing>div>span,.asteroid-contact-briefing>div>span b,.asteroid-contact-briefing>div>span small{display:grid;min-width:0}.asteroid-powerup-briefing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:9px}.asteroid-powerup-briefing>div{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:7px;border:1px solid rgba(174,150,255,.32);background:rgba(2,7,18,.72)}.asteroid-powerup-briefing>div.is-lanyard{border-color:rgba(255,117,107,.38)}.asteroid-powerup-briefing>div.is-gold-pin{border-color:rgba(245,204,91,.42)}.asteroid-powerup-briefing b,.asteroid-powerup-briefing small,.asteroid-powerup-briefing span{display:grid;min-width:0}.asteroid-powerup-briefing b{color:var(--planner-text);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.58rem;letter-spacing:.07em}.asteroid-powerup-briefing small{margin-top:2px;color:var(--planner-muted);font-size:.42rem;line-height:1.2;letter-spacing:.035em}.asteroid-ammo-briefing{margin-top:8px!important;color:var(--planner-coral)!important;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.58rem!important;font-weight:900;letter-spacing:.09em;text-align:center}.asteroid-powerup-icon{position:relative;display:block;width:36px;height:36px;flex:0 0 36px;color:var(--planner-lavender);filter:drop-shadow(0 0 7px color-mix(in srgb,currentColor 42%,transparent))}.asteroid-powerup-icon b,.asteroid-powerup-icon em,.asteroid-powerup-icon i{position:absolute;display:block;font-style:normal}.asteroid-powerup-icon.is-comic{border:2px solid;border-left:5px solid;border-radius:2px 7px 2px 2px;background:rgba(174,150,255,.14);transform:rotate(-5deg)}.asteroid-powerup-icon.is-comic i{top:7px;right:5px;width:16px;height:2px;background:currentColor;box-shadow:0 6px 0 currentColor,0 12px 0 currentColor}.asteroid-powerup-icon.is-comic b{top:5px;left:4px;width:5px;height:5px;border-radius:50%;background:var(--planner-gold)}.asteroid-powerup-icon.is-lanyard{color:var(--planner-coral)}.asteroid-powerup-icon.is-lanyard i{top:1px;left:7px;width:22px;height:25px;border:3px solid;border-bottom:0;border-radius:50% 50% 18% 18%}.asteroid-powerup-icon.is-lanyard b{right:6px;bottom:0;left:6px;height:15px;border:2px solid;border-radius:2px 7px 2px 2px;background:rgba(255,117,107,.12)}.asteroid-powerup-icon.is-gold-pin{display:grid;place-items:center;border:3px double;border-radius:50%;color:var(--planner-gold);background:rgba(245,204,91,.14)}.asteroid-powerup-icon.is-gold-pin b{position:static;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:1rem;font-weight:950}.asteroid-contact-briefing>div>span b{color:var(--contact-color);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.64rem;letter-spacing:.08em}.asteroid-contact-briefing>div>span small{margin-top:3px;color:var(--planner-muted);font-size:.45rem;line-height:1.25;letter-spacing:.04em}.asteroid-training-live{position:absolute;top:45%;left:13px;z-index:6;width:clamp(232px,29%,326px);color:var(--planner-text);pointer-events:none;transform:translateY(-50%);filter:drop-shadow(0 18px 34px rgba(0,0,0,.62))}.asteroid-training-live,.asteroid-training-live.is-small{--training-color:var(--asteroid-blue)}.asteroid-training-live.is-medium{--training-color:var(--asteroid-red)}.asteroid-training-live.is-large{--training-color:var(--asteroid-yellow)}.asteroid-training-mobile-cue{display:none}.asteroid-training-live__banner{display:flex;width:68%;min-height:31px;align-items:center;padding:5px 13px;border-radius:3px 18px 0 0;color:#07111d;background:var(--planner-orange);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.66rem;font-weight:900;letter-spacing:.14em}.asteroid-training-live__panel{position:relative;padding:13px 15px 14px 17px;overflow:hidden;border:2px solid var(--training-color);border-left-width:9px;border-radius:3px 54px 54px 3px;background:linear-gradient(110deg,color-mix(in srgb,var(--training-color) 13%,transparent),transparent 67%),rgba(4,13,28,.72);box-shadow:inset 0 0 36px color-mix(in srgb,var(--training-color) 6%,transparent),0 0 23px color-mix(in srgb,var(--training-color) 16%,transparent);backdrop-filter:blur(4px)}.asteroid-training-live__panel>header{display:flex;align-items:center;gap:11px}.asteroid-training-live .asteroid-countermeasure-icon{--contact-color:var(--training-color);width:43px;height:43px;flex-basis:43px;transform:scale(.92)}.asteroid-training-live__panel>header>div{display:grid;min-width:0}.asteroid-training-live__instruction small,.asteroid-training-live__instruction strong,.asteroid-training-live__keys,.asteroid-training-live__panel>header small,.asteroid-training-live__panel>header span{font-family:Arial Narrow,Aptos Narrow,sans-serif;font-weight:900}.asteroid-training-live__panel>header span{color:var(--planner-cyan);font-size:.51rem;letter-spacing:.14em}.asteroid-training-live h2{margin:2px 0 1px;color:var(--training-color);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:clamp(1.08rem,2.3vw,1.65rem);font-weight:500;line-height:.96;text-transform:uppercase}.asteroid-training-live__panel>header small{color:var(--planner-muted);font-size:.43rem;letter-spacing:.1em}.asteroid-training-live__instruction{display:grid;grid-template-columns:66px minmax(0,1fr);align-items:center;gap:10px;margin-top:10px}.asteroid-training-live__instruction img{width:66px;height:66px;object-fit:contain;filter:drop-shadow(0 7px 12px rgba(0,0,0,.55))}.asteroid-training-live__instruction p,.asteroid-training-live__instruction small,.asteroid-training-live__instruction strong{display:grid;margin:0}.asteroid-training-live__instruction strong{color:var(--planner-text);font-size:.58rem;letter-spacing:.06em;line-height:1.25}.asteroid-training-live__instruction small{margin-top:4px;color:var(--planner-muted);font-size:.45rem;font-weight:600;line-height:1.28}.asteroid-training-live__keys{display:flex;align-items:center;gap:5px;margin-top:10px;color:var(--planner-muted);font-size:.43rem}.asteroid-training-live__keys kbd{display:grid;min-width:27px;height:27px;place-items:center;padding:0 6px;border:1px solid var(--training-color);border-radius:2px;color:var(--training-color);background:rgba(2,7,18,.52);box-shadow:inset 0 0 10px color-mix(in srgb,var(--training-color) 8%,transparent);font:inherit}.asteroid-debrief__actions a,.asteroid-debrief__actions button,.asteroid-opt-in,.asteroid-sign-in,.asteroid-stage-message button{min-height:48px;padding:0 18px;border:0;border-radius:5px 24px 5px 5px;color:#06111d;background:var(--planner-orange);cursor:pointer;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-decoration:none}.asteroid-stage-message button{margin-top:20px}.asteroid-stage-message button.is-test-override{margin-left:8px;color:var(--planner-cyan);background:rgba(5,26,40,.92);box-shadow:inset 0 0 0 1px rgba(87,216,231,.56)}.asteroid-stage-message.is-compact{text-align:center}.asteroid-stage-message.is-result{display:grid;width:min(920px,calc(100% - 36px));max-height:calc(100% - 32px);grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:clamp(20px,3vw,38px);align-items:stretch;overflow-y:auto}.asteroid-result-summary{display:grid;align-content:center;justify-items:start}.asteroid-result-summary>span,.asteroid-tier-chart header span{color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.58rem;font-weight:900;letter-spacing:.14em}.asteroid-result-summary>h2{margin:8px 0 12px}.asteroid-result-summary>strong{font-size:clamp(2.5rem,8vw,5.4rem);line-height:.9}.asteroid-result-summary>small,.asteroid-result-summary>strong{color:var(--planner-gold);font-family:Arial Narrow,Aptos Narrow,sans-serif}.asteroid-result-summary>small{margin-top:9px;font-size:.62rem;font-weight:900;letter-spacing:.11em}.asteroid-tier-chart{display:grid;min-width:0;align-content:center;padding-left:clamp(16px,2.5vw,30px);border-left:1px solid rgba(87,216,231,.28)}.asteroid-tier-chart header{display:grid;margin-bottom:10px}.asteroid-tier-chart header strong{color:var(--planner-text);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:1rem}.asteroid-tier-chart ol{display:grid;gap:5px;margin:0;padding:0;list-style:none}.asteroid-tier-chart li{--tier-color:var(--planner-muted);display:grid;min-height:43px;grid-template-columns:41px minmax(0,1fr) auto;align-items:center;gap:9px;overflow:hidden;border:1px solid var(--tier-color);border-radius:22px 4px 4px 22px;color:var(--tier-color);background:rgba(2,7,18,.66);transition:opacity .16s ease,transform .16s ease}.asteroid-tier-chart li.is-coral{--tier-color:var(--planner-coral)}.asteroid-tier-chart li.is-orange{--tier-color:var(--planner-orange)}.asteroid-tier-chart li.is-gold{--tier-color:var(--planner-gold)}.asteroid-tier-chart li.is-cyan{--tier-color:var(--planner-cyan)}.asteroid-tier-chart li.is-lavender{--tier-color:var(--planner-lavender)}.asteroid-tier-chart li>b{display:grid;align-self:stretch;place-items:center;color:#06111d;background:var(--tier-color);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.72rem}.asteroid-tier-chart li>span{display:grid;min-width:0}.asteroid-tier-chart li em,.asteroid-tier-chart li small,.asteroid-tier-chart li strong,.asteroid-tier-chart>p{font-family:Arial Narrow,Aptos Narrow,sans-serif;font-weight:900;letter-spacing:.07em}.asteroid-tier-chart li strong{overflow:hidden;font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}.asteroid-tier-chart li small{color:var(--planner-muted);font-size:.43rem}.asteroid-tier-chart li em{align-self:stretch;display:grid;min-width:45px;place-items:center;padding:0 7px;color:#06111d;background:var(--tier-color);font-size:.46rem;font-style:normal}.asteroid-tier-chart li.is-earned{opacity:.58}.asteroid-tier-chart li.is-locked{opacity:.23}.asteroid-tier-chart li.is-current{opacity:1;box-shadow:0 0 18px color-mix(in srgb,var(--tier-color) 33%,transparent);transform:translateX(-7px)}.asteroid-tier-chart>p{margin:10px 0 0;color:var(--planner-muted);font-size:.48rem;text-align:right}.asteroid-stage-message.is-collision{border-color:rgba(255,117,107,.7);border-left-color:var(--planner-coral)}.asteroid-stage-message.is-failed{border-color:rgba(255,155,66,.72);border-left-color:var(--planner-orange)}.asteroid-touch-controls{display:grid;grid-template-columns:1fr minmax(130px,1.25fr) minmax(120px,1.1fr) 1fr auto;gap:7px;padding:10px;border-top:1px solid var(--planner-line);background:#050d1a;touch-action:none}.asteroid-touch-controls.is-orbit-controls{grid-template-columns:1fr minmax(92px,.82fr) minmax(140px,1.25fr) minmax(92px,.82fr) 1fr auto}.asteroid-touch-controls button{min-height:66px;border:1px solid var(--planner-line);border-radius:5px 20px 5px 5px;color:var(--planner-cyan);background:var(--planner-panel);cursor:pointer;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-weight:900;user-select:none}.asteroid-touch-controls button small,.asteroid-touch-controls button span{display:block}.asteroid-touch-controls button span{font-size:1rem;letter-spacing:.08em}.asteroid-touch-controls button small{margin-top:2px;color:var(--planner-muted);font-size:.52rem;letter-spacing:.12em}.asteroid-touch-controls button:active{color:#06111d;background:var(--planner-cyan);transform:translateY(1px)}.asteroid-touch-controls button.is-fire{border-color:rgba(255,117,107,.72);color:var(--planner-coral)}.asteroid-touch-controls button.is-fire:active{color:#06111d;background:var(--planner-coral)}.asteroid-touch-controls button.is-photon{border-color:rgba(245,204,91,.55);color:var(--planner-gold)}.asteroid-touch-controls button.is-photon.is-ready{border-color:var(--planner-gold);box-shadow:inset 0 0 20px rgba(245,204,91,.08),0 0 12px rgba(245,204,91,.08)}.asteroid-touch-controls button.is-photon:active{color:#06111d;background:var(--planner-gold)}.asteroid-touch-controls button.is-pause{min-width:92px;color:var(--planner-gold)}.asteroid-touch-controls button:disabled{cursor:not-allowed;opacity:.35}.asteroid-keyboard-help,.asteroid-live-status{margin:0;padding:8px 15px;color:var(--planner-muted);background:#050d1a;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.56rem;letter-spacing:.1em;text-align:center}.asteroid-powerup-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;border-top:1px solid var(--planner-line);background:var(--planner-line)}.asteroid-powerup-status>span{display:grid;grid-template-columns:32px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:0 8px;min-width:0;padding:7px 10px;color:var(--planner-muted);background:#050d1a;font-family:Arial Narrow,Aptos Narrow,sans-serif}.asteroid-powerup-status .asteroid-powerup-icon{grid-row:1/3;width:28px;height:28px;opacity:.48;transform:none}.asteroid-powerup-status b,.asteroid-powerup-status small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asteroid-powerup-status b{color:var(--planner-text);font-size:.58rem;letter-spacing:.08em}.asteroid-powerup-status small{font-size:.46rem;letter-spacing:.05em}.asteroid-powerup-status>span.is-active{color:var(--planner-lavender);background:linear-gradient(90deg,rgba(174,150,255,.16),#050d1a 72%);box-shadow:inset 0 0 18px rgba(174,150,255,.08)}.asteroid-powerup-status>span.is-active .asteroid-powerup-icon{opacity:1}.asteroid-powerup-status>span.is-danger{color:var(--planner-coral)}.asteroid-powerup-status>span.is-gold{color:var(--planner-gold)}.asteroid-powerup-status.is-orbit-status{grid-template-columns:repeat(3,minmax(0,1fr))}.asteroid-touch-controls button.is-vertical{border-color:rgba(174,150,255,.68);color:var(--planner-lavender)}.asteroid-touch-controls button.is-vertical:active{color:#06111d;background:var(--planner-lavender)}.asteroid-powerup-status.is-orbit-status>span{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;gap:2px;justify-items:center;padding:8px 5px;text-align:center}.asteroid-powerup-status.is-orbit-status>span.is-active{color:var(--planner-cyan);background:linear-gradient(180deg,rgba(87,216,231,.23),#050d1a 82%);box-shadow:inset 0 0 22px rgba(87,216,231,.14)}.asteroid-live-status{min-height:34px;padding-top:4px;color:var(--planner-cyan)}.asteroid-telemetry{display:grid;grid-template-columns:minmax(220px,.28fr) minmax(0,1fr);overflow:hidden;border-radius:6px 28px 6px 6px}.asteroid-telemetry>header{grid-column:1/-1;justify-content:flex-start}.asteroid-telemetry__radar{position:relative;width:min(180px,68%);aspect-ratio:1;margin:25px auto;overflow:hidden;border:1px solid rgba(87,216,231,.65);border-radius:50%;background:radial-gradient(circle,transparent 17%,rgba(87,216,231,.14) 18% 19%,transparent 20% 39%,rgba(87,216,231,.13) 40% 41%,transparent 42%),linear-gradient(90deg,transparent 49.5%,rgba(87,216,231,.25) 50%,transparent 50.5%),linear-gradient(transparent 49.5%,rgba(87,216,231,.25) 50%,transparent 50.5%),rgba(2,12,25,.88);box-shadow:inset 0 0 32px rgba(87,216,231,.08)}.asteroid-telemetry__radar:before{position:absolute;inset:50% 0 0 50%;border-left:1px solid var(--planner-cyan);background:conic-gradient(from 270deg,rgba(87,216,231,.28),transparent 34deg);content:"";transform-origin:0 0;animation:asteroid-radar 3.2s linear infinite}.asteroid-telemetry__radar b,.asteroid-telemetry__radar em,.asteroid-telemetry__radar i,.asteroid-telemetry__radar span{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--planner-orange);box-shadow:0 0 9px var(--planner-orange)}.asteroid-telemetry__radar span{top:28%;left:63%}.asteroid-telemetry__radar b{top:68%;left:30%}.asteroid-telemetry__radar i{top:45%;left:19%}.asteroid-telemetry__radar em{top:56%;left:73%}.asteroid-minimap{grid-row:2/span 2;padding:14px;border-bottom:1px solid var(--planner-line);background:linear-gradient(180deg,rgba(87,216,231,.04),transparent)}.asteroid-minimap__field{position:relative;min-height:230px;overflow:hidden;border:1px solid rgba(87,216,231,.55);border-radius:5px 28px 5px 5px;background:linear-gradient(90deg,transparent 49.6%,rgba(87,216,231,.22) 50%,transparent 50.4%),repeating-linear-gradient(0deg,transparent 0 24%,rgba(87,216,231,.11) 24.5% 25%,transparent 25.5% 49%),repeating-linear-gradient(90deg,transparent 0 24%,rgba(87,216,231,.08) 24.5% 25%,transparent 25.5% 49%),radial-gradient(ellipse at 50% 100%,rgba(87,216,231,.12),transparent 57%),rgba(2,12,25,.9);box-shadow:inset 0 0 34px rgba(87,216,231,.08)}.asteroid-minimap__field:after,.asteroid-minimap__field:before{position:absolute;left:50%;border:1px solid rgba(87,216,231,.13);border-radius:50% 50% 0 0;content:"";transform:translateX(-50%)}.asteroid-minimap__field:before{bottom:-34px;width:74%;height:62%}.asteroid-minimap__field:after{bottom:-12px;width:42%;height:35%}.asteroid-minimap__ship{position:absolute;bottom:5px;left:50%;z-index:2;color:var(--planner-cyan);font-size:1.05rem;line-height:1;text-shadow:0 0 10px var(--planner-cyan);transform:translateX(-50%)}.asteroid-minimap__field>i{position:absolute;z-index:1;display:grid;width:17px;height:17px;place-items:center;border:1px solid;color:var(--asteroid-blue);background:rgba(2,12,25,.9);box-shadow:0 0 10px currentColor;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.48rem;font-style:normal;font-weight:900;line-height:1;transform:translate(-50%,-50%);transition:top 90ms linear,left 90ms linear}.asteroid-minimap__field>i.is-small{border-radius:50%}.asteroid-minimap__field>i.is-medium{width:21px;height:21px;border:0;color:#06111d;background:var(--asteroid-red);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);box-shadow:none}.asteroid-minimap__field>i.is-large{width:26px;height:26px;border-width:2px;color:var(--asteroid-yellow)}.asteroid-minimap ul{display:grid;gap:5px;margin:9px 0 0;padding:0;list-style:none}.asteroid-minimap li{display:grid;grid-template-columns:23px 1fr;align-items:center;gap:7px;color:var(--planner-muted);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.52rem;font-weight:900;letter-spacing:.08em}.asteroid-minimap li>i{display:grid;width:20px;height:20px;place-items:center;border:1px solid;color:var(--asteroid-blue);font-size:.45rem;font-style:normal}.asteroid-minimap li.is-small>i{border-radius:50%}.asteroid-minimap li.is-medium>i{color:var(--asteroid-red)}.asteroid-minimap li.is-large>i{color:var(--asteroid-yellow)}.asteroid-minimap li>span{display:flex;justify-content:space-between;gap:7px}.asteroid-minimap li small{color:var(--planner-muted);font-size:.43rem}.asteroid-telemetry dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:11px;border-top:1px solid var(--planner-line)}.asteroid-telemetry dl>div{--telemetry-color:var(--planner-cyan);display:grid;min-height:62px;grid-template-columns:70px minmax(0,1fr);align-items:stretch;overflow:hidden;border:1px solid var(--telemetry-color);border-radius:31px 5px 5px 31px;background:linear-gradient(90deg,color-mix(in srgb,var(--telemetry-color) 12%,transparent),rgba(2,7,18,.4))}.asteroid-telemetry dl>div.is-small{--telemetry-color:var(--asteroid-blue)}.asteroid-telemetry dl>div.is-medium{--telemetry-color:var(--asteroid-red)}.asteroid-telemetry dl>div.is-large{--telemetry-color:var(--asteroid-yellow)}.asteroid-telemetry dl>div.is-accuracy{--telemetry-color:var(--planner-lavender)}.asteroid-telemetry dl>div.is-combo{--telemetry-color:var(--planner-coral)}.asteroid-telemetry dd,.asteroid-telemetry dt{font-family:Arial Narrow,Aptos Narrow,sans-serif}.asteroid-telemetry dt{display:grid;grid-column:2;grid-row:1;min-width:0;align-content:center;padding:7px 9px}.asteroid-telemetry dt b,.asteroid-telemetry dt small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asteroid-telemetry dt b{color:var(--telemetry-color);font-size:.56rem;font-weight:900;letter-spacing:.08em}.asteroid-telemetry dt small{margin-top:3px;color:var(--planner-muted);font-size:.43rem;font-weight:900;letter-spacing:.06em}.asteroid-telemetry dd{display:grid;grid-column:1;grid-row:1;min-width:0;align-self:stretch;place-items:center;margin:0;border-radius:30px 4px 4px 30px;color:#06111d;background:var(--telemetry-color);font-size:clamp(1.05rem,2vw,1.42rem);font-weight:900;line-height:1;text-align:center}.asteroid-telemetry__power{display:grid;grid-column:2;grid-template-columns:repeat(8,1fr);gap:3px;padding:18px 14px 10px}.asteroid-telemetry__power span{grid-column:1/-1;color:var(--planner-muted);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.55rem;font-weight:900;letter-spacing:.1em}.asteroid-telemetry__power i{height:29px;border:1px solid var(--planner-line);background:rgba(41,58,80,.22)}.asteroid-telemetry__power i.is-active{border-color:rgba(87,216,231,.7);background:var(--planner-cyan);box-shadow:0 0 10px rgba(87,216,231,.4)}.asteroid-telemetry>p{grid-column:2;margin:8px 14px 16px;padding:9px;border-left:3px solid var(--planner-gold);color:var(--planner-muted);background:rgba(245,204,91,.06);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.55rem;font-weight:900;letter-spacing:.07em}.asteroid-records{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.7fr);gap:14px;margin-top:14px}.asteroid-records>article{overflow:hidden;border-radius:6px}.asteroid-debrief__score{display:grid;grid-template-columns:1fr auto;gap:0 16px;align-items:end;margin:16px;padding:18px;border:1px solid rgba(245,204,91,.45);border-radius:5px 30px 5px 5px;background:rgba(245,204,91,.06)}.asteroid-debrief__score small,.asteroid-debrief__score span{font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.57rem;font-weight:900;letter-spacing:.12em}.asteroid-debrief__score span{color:var(--planner-gold)}.asteroid-debrief__score strong{grid-row:1/span 2;grid-column:2;color:var(--planner-text);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:clamp(2.3rem,5vw,4.3rem);line-height:.8}.asteroid-debrief__score small{color:var(--planner-muted)}.asteroid-achievement-bank{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:7px;padding:0 16px 16px}.asteroid-achievement-bank>div{display:grid;gap:4px;padding:13px;border:1px solid rgba(185,167,255,.5);border-left:5px solid var(--planner-lavender);background:rgba(185,167,255,.06)}.asteroid-achievement-bank small,.asteroid-achievement-bank span{font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.53rem;font-weight:900;letter-spacing:.1em}.asteroid-achievement-bank span{color:var(--planner-lavender)}.asteroid-achievement-bank small{color:var(--planner-muted)}.asteroid-debrief__actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 16px}.asteroid-debrief__actions a{display:flex;align-items:center;border:1px solid var(--planner-cyan);color:var(--planner-cyan);background:transparent}.asteroid-empty-copy{margin:0;padding:24px;color:var(--planner-muted)}.asteroid-leaderboard ol{margin:0;padding:0;list-style:none}.asteroid-leaderboard li{display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:8px 14px;border-bottom:1px solid var(--planner-line)}.asteroid-leaderboard li>b{color:var(--planner-orange);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.8rem}.asteroid-leaderboard li>span{display:grid;min-width:0}.asteroid-leaderboard li small,.asteroid-leaderboard li strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asteroid-leaderboard li small{color:var(--planner-muted);font-size:.53rem}.asteroid-leaderboard li em{color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:1rem;font-style:normal;font-weight:900}.asteroid-opt-in,.asteroid-sign-in{display:flex;width:calc(100% - 28px);min-height:48px;align-items:center;justify-content:center;gap:8px;margin:14px;border:1px solid var(--planner-cyan);border-radius:4px 24px 4px 4px;color:var(--planner-cyan);background:transparent;text-align:center}.asteroid-opt-in i{width:10px;height:10px;border:1px solid;border-radius:50%}.asteroid-opt-in.is-active{color:#06111d;background:var(--asteroid-green);border-color:var(--asteroid-green)}.asteroid-opt-in.is-active i{border:0;background:#06111d}.asteroid-opt-in:disabled{cursor:wait;opacity:.5}.asteroid-privacy-note{display:block;margin:-5px 14px 15px;color:var(--planner-muted);font-size:.57rem;line-height:1.4}.asteroid-device-records{margin-top:14px;padding:12px 14px;border-radius:22px 5px 5px 5px}.asteroid-device-records>span{color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.62rem;font-weight:900;letter-spacing:.12em}.asteroid-device-records ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:9px 0 0;padding:0;list-style:none}.asteroid-device-records li{display:grid;grid-template-columns:auto 1fr;gap:1px 8px;padding:9px;border:1px solid var(--planner-line);background:var(--planner-panel)}.asteroid-device-records li b{grid-row:1/span 2;color:var(--planner-orange)}.asteroid-device-records li span{color:var(--planner-muted);font-size:.51rem}.asteroid-device-records li strong{color:var(--planner-text);font-family:Arial Narrow,Aptos Narrow,sans-serif}.asteroid-device-records>p{margin:8px 0 0;color:var(--planner-muted);font-size:.65rem}.asteroid-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:14px 2px 0;border-top:1px solid var(--planner-line);color:var(--planner-muted);font-size:.62rem}.asteroid-footer p{margin:0}.asteroid-footer nav{display:flex;flex-wrap:wrap;gap:12px}.asteroid-footer a{color:var(--planner-cyan);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-weight:900;letter-spacing:.08em;text-decoration:none}@keyframes asteroid-signal{50%{opacity:.45;transform:scale(.75)}}@keyframes asteroid-warning-pulse{50%{box-shadow:0 0 42px rgba(245,204,91,.65),inset 0 -5px 0 rgba(255,155,66,.52)}}@keyframes asteroid-reticle{to{transform:rotate(1turn)}}@keyframes asteroid-radar{to{transform:rotate(1turn)}}@keyframes asteroid-mobile-cue-pulse{50%{border-color:color-mix(in srgb,var(--training-color) 42%,transparent);box-shadow:0 0 28px color-mix(in srgb,var(--training-color) 34%,transparent);transform:scale(.97)}}@keyframes asteroid-mobile-arrow-pulse{50%{opacity:.28;transform:translateX(var(--arrow-travel))}}@media (max-width:1100px){.asteroid-header{align-items:flex-start;flex-direction:column;gap:20px}.asteroid-header nav{max-width:none;justify-content:flex-start}.asteroid-command-strip{grid-template-columns:1fr 1fr}.asteroid-command-strip>div:nth-child(2){border-right:0}.asteroid-command-strip>div{border-bottom:1px solid var(--planner-line)}.asteroid-command-strip>div:nth-child(2n){border-right:0}.asteroid-command-strip>div:last-child{grid-column:1/-1;border-bottom:0}.asteroid-console-grid{grid-template-columns:1fr}.asteroid-hud__lcars{width:clamp(66px,8vw,88px)}.asteroid-telemetry{display:grid;grid-template-columns:minmax(190px,.35fr) 1fr}.asteroid-telemetry>header{grid-column:1/-1}.asteroid-minimap,.asteroid-telemetry__radar{grid-row:2/span 2}.asteroid-telemetry dl{display:grid;grid-template-columns:1fr 1fr}.asteroid-telemetry>p,.asteroid-telemetry__power{grid-column:2}.asteroid-records{grid-template-columns:1fr}}@media (max-width:720px){.asteroid-frame{padding:0 0 max(24px,env(safe-area-inset-bottom))}.asteroid-briefing,.asteroid-command-strip,.asteroid-flight-console>header,.asteroid-frame>.planner-rail,.asteroid-header{display:none}.asteroid-console-grid{gap:0}.asteroid-flight-console{border-right:0;border-left:0;border-radius:0}.asteroid-header h1{font-size:clamp(2.55rem,15vw,4rem)}.asteroid-header nav{display:grid;width:100%;grid-template-columns:1fr 1fr}.asteroid-header nav a{justify-content:center;text-align:center}.asteroid-command-strip{grid-template-columns:1fr;border-radius:22px 6px 6px 6px}.asteroid-command-strip>div{min-height:68px;border-right:0;border-bottom:1px solid var(--planner-line)}.asteroid-command-strip>div:last-child{border-bottom:0}.asteroid-briefing{grid-template-columns:1fr auto}.asteroid-briefing p{grid-column:1/-1;grid-row:2}.asteroid-stage{height:clamp(400px,64svh,500px);min-height:0;aspect-ratio:auto;touch-action:pan-y}.asteroid-hud__lcars{display:none}.asteroid-hud__score{left:14px;min-width:96px;padding-right:12px}.asteroid-hud__timer{right:14px;min-width:108px;padding-left:12px}.asteroid-hud__photon{right:14px}.asteroid-stage-message{padding:16px}.asteroid-orbit-tutorial{width:min(380px,calc(100% - 18px));max-height:calc(100% - 16px);padding:14px;border-left-width:6px;border-radius:4px 24px 4px 4px}.asteroid-orbit-tutorial h2{margin:5px 0 7px;font-size:clamp(1.25rem,7vw,1.68rem)}.asteroid-orbit-tutorial>p{font-size:.68rem;line-height:1.35}.asteroid-orbit-tutorial__rules{gap:5px;margin:10px 0 8px}.asteroid-orbit-tutorial__rules>div{gap:2px;padding:7px}.asteroid-orbit-tutorial__rules strong{font-size:.64rem}.asteroid-orbit-tutorial__rules small{font-size:.55rem}.asteroid-orbit-tutorial>button{min-height:46px;margin-top:9px}.asteroid-contact-briefing{grid-template-columns:1fr}.asteroid-contact-briefing>div{grid-template-columns:82px minmax(0,1fr);align-items:center}.asteroid-contact-briefing figure{width:78px;height:72px}.asteroid-contact-briefing figure .asteroid-countermeasure-icon{right:-4px;bottom:-4px;transform:scale(.72);transform-origin:right bottom}.asteroid-stage-message.is-briefing{width:min(360px,calc(100% - 22px));max-height:calc(100% - 18px);padding:14px;overflow:hidden;border-left-width:6px;border-radius:4px 24px 4px 4px}.asteroid-stage-message.is-briefing>span{font-size:.52rem}.asteroid-stage-message.is-briefing h2{margin:5px 0 0;font-size:clamp(1.22rem,7vw,1.62rem)}.asteroid-stage-message.is-briefing>p{display:none}.asteroid-stage-message.is-briefing .asteroid-contact-briefing{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:10px}.asteroid-stage-message.is-briefing .asteroid-contact-briefing>div{display:grid;grid-template-columns:1fr;gap:3px;padding:4px;text-align:center}.asteroid-stage-message.is-briefing .asteroid-contact-briefing figure{width:100%;height:48px}.asteroid-stage-message.is-briefing .asteroid-contact-briefing small,.asteroid-stage-message.is-briefing .asteroid-countermeasure-icon{display:none}.asteroid-stage-message.is-briefing .asteroid-contact-briefing b{font-size:.46rem;letter-spacing:.03em}.asteroid-stage-message.is-briefing>button{width:100%;min-height:46px;margin-top:10px}.asteroid-stage-message button.is-test-override{margin-left:0}.asteroid-stage-message.is-briefing .asteroid-powerup-briefing{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:6px}.asteroid-stage-message.is-briefing .asteroid-powerup-briefing>div{display:grid;grid-template-columns:1fr;justify-items:center;gap:2px;padding:4px 2px;text-align:center}.asteroid-stage-message.is-briefing .asteroid-powerup-icon{width:25px;height:25px}.asteroid-stage-message.is-briefing .asteroid-powerup-briefing b{font-size:.43rem;letter-spacing:.02em}.asteroid-stage-message.is-briefing .asteroid-powerup-briefing small{display:none}.asteroid-stage-message.is-briefing .asteroid-ammo-briefing{margin-top:5px!important;font-size:.46rem!important}.asteroid-training-live{top:22%;right:auto;bottom:auto;left:50%;width:150px;transform:translateX(-50%)}.asteroid-training-live__banner,.asteroid-training-live__panel{display:none}.asteroid-training-mobile-cue{display:grid;justify-items:center;padding:8px 10px 9px;border:2px solid var(--training-color);border-radius:5px 30px 5px 5px;color:var(--training-color);background:linear-gradient(145deg,color-mix(in srgb,var(--training-color) 18%,transparent),transparent 70%),rgba(2,8,20,.72);box-shadow:0 0 20px color-mix(in srgb,var(--training-color) 20%,transparent);text-align:center;backdrop-filter:blur(4px);animation:asteroid-mobile-cue-pulse 1.1s ease-in-out infinite}.asteroid-training-mobile-cue img{width:58px;height:48px;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(0,0,0,.62))}.asteroid-training-live.is-small .asteroid-training-mobile-cue img{transform:scale(.65)}.asteroid-training-live.is-medium .asteroid-training-mobile-cue img{transform:scale(.82)}.asteroid-training-mobile-cue strong{display:flex;align-items:center;justify-content:center;gap:10px;font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.85rem;font-weight:950;letter-spacing:.1em}.asteroid-training-mobile-cue strong i{--arrow-travel:3px;font-style:normal;animation:asteroid-mobile-arrow-pulse .72s ease-in-out infinite alternate}.asteroid-training-mobile-cue strong i:first-child{--arrow-travel:-3px}.asteroid-training-mobile-cue small{margin-top:3px;color:var(--planner-text);font-family:Arial Narrow,Aptos Narrow,sans-serif;font-size:.43rem;font-weight:900;letter-spacing:.08em}.asteroid-large-warning{right:10px;left:10px;grid-template-columns:38px minmax(0,1fr);padding-right:7px}.asteroid-large-warning button{grid-column:1/-1;width:calc(100% - 12px);min-height:48px;margin:0 6px 5px}.asteroid-stage-message.is-result{grid-template-columns:1fr;gap:18px}.asteroid-arrival-callout{bottom:12%;width:calc(100% - 24px);padding:10px 18px 12px;border-left-width:8px;border-radius:4px 22px 4px 22px}.asteroid-arrival-callout>small{display:none}.asteroid-tier-chart{padding:15px 0 0;border-top:1px solid rgba(87,216,231,.28);border-left:0}.asteroid-hud__shields{left:14px;width:44%}.asteroid-hud__combo{right:14px}.asteroid-touch-controls{position:relative;z-index:20;grid-template-areas:"port phasers photon starboard";grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.asteroid-touch-controls.is-orbit-controls{grid-template-areas:"port dive phasers starboard" "port climb phasers starboard";grid-template-columns:repeat(4,minmax(0,1fr))}.asteroid-touch-controls button{min-width:0;min-height:62px;padding:5px;border-radius:4px 16px 4px 4px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.asteroid-touch-controls button small{display:none}.asteroid-touch-controls button.is-port{grid-area:port}.asteroid-touch-controls button.is-fire{grid-area:phasers}.asteroid-touch-controls button.is-photon{grid-area:photon}.asteroid-touch-controls button.is-dive{grid-area:dive}.asteroid-touch-controls button.is-climb{grid-area:climb}.asteroid-touch-controls button.is-starboard{grid-area:starboard}.asteroid-keyboard-help,.asteroid-touch-controls button.is-pause{display:none}.asteroid-powerup-status>span{grid-template-columns:24px minmax(0,1fr);gap:0 5px;padding:5px}.asteroid-powerup-status .asteroid-powerup-icon{width:21px;height:21px}.asteroid-powerup-status b{font-size:.44rem}.asteroid-powerup-status small{font-size:.37rem}.asteroid-telemetry{display:block}.asteroid-minimap__field{min-height:260px}.asteroid-telemetry dl{display:grid;grid-template-columns:1fr 1fr}.asteroid-device-records ol{grid-template-columns:1fr}.asteroid-footer{align-items:flex-start;flex-direction:column}}@media (max-width:430px){.asteroid-briefing,.asteroid-header nav{grid-template-columns:1fr}.asteroid-briefing p{grid-column:auto;grid-row:auto}.asteroid-briefing>button{justify-self:start}.asteroid-stage{height:clamp(390px,63svh,470px);min-height:0}.asteroid-hud__destination{font-size:.45rem}.asteroid-telemetry dl{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.asteroid-shell *,.asteroid-shell :after,.asteroid-shell :before{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.asteroid-arrival-confetti>i{top:18%;opacity:.84;animation:none!important;transform:rotate(var(--confetti-rotation))}.asteroid-arrival-confetti>i:nth-child(3n){top:36%}.asteroid-arrival-confetti>i:nth-child(4n){top:58%}.asteroid-arrival-confetti>i:nth-child(n+16){display:none}}@media (forced-colors:active){.asteroid-flight-console,.asteroid-powerup-status>span,.asteroid-records>article,.asteroid-stage-message,.asteroid-telemetry,.asteroid-touch-controls button,.asteroid-training-live__panel{border:2px solid CanvasText}.asteroid-hud,.asteroid-hud *{color:CanvasText!important}}