.share-link-label{display:block;margin-bottom:8px}#shared-view-link{width:100%;min-width:0;margin-bottom:12px;font-size:16px}.share-image-result{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.share-image-result img{display:block;width:100%;height:auto;border:1px solid #37566c;border-radius:6px}.share-image-result a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.shared-view-notice{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #37566c;background:#091521}.shared-view-notice p{flex:1;margin:0}.shared-view-notice button{min-width:44px;min-height:44px}.viewport-share-icon{width:18px;height:18px}.viewport-toolbar .viewport-share-button{display:inline-flex;align-items:center;justify-content:center;gap:6px}@media(max-width:700px){.viewport-share-label,.overview-long-label{display:none}.viewport-toolbar .viewport-share-button{padding:8px 10px}}.viewport-toolbar .shared-view-notice{flex:1 0 100%;min-width:0;font-size:12px;padding:4px 8px;overflow-wrap:anywhere}.lesson-framing-caption{color:#a9def1;font-size:12px;border-left:2px solid #67cdec;padding-left:9px}:root{color-scheme:dark;--color-void: #02050b;--color-night: #07101c;--color-panel: rgba(9, 20, 34, .84);--color-panel-solid: #0a1625;--color-line: rgba(155, 195, 222, .18);--color-line-strong: rgba(155, 195, 222, .35);--color-text: #edf7ff;--color-muted: #99afc0;--color-dim: #71889a;--color-cyan: #7edcff;--color-blue: #4ca6ff;--color-amber: #ffc45c;--color-warning: #ffda85;--color-danger: #ff8f8f;--color-success: #70e3b1;--shadow-panel: 0 24px 80px rgba(0, 0, 0, .38);--radius-large: 22px;--radius-medium: 14px;--radius-small: 9px;--font-display: "Aptos Display", "Segoe UI Variable Display", "Segoe UI", sans-serif;--font-body: "Aptos", "Segoe UI Variable Text", "Segoe UI", sans-serif;--font-mono: "Cascadia Mono", "SFMono-Regular", Consolas, monospace;--content-width: 1560px}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--color-void);font-family:var(--font-body);text-rendering:optimizeLegibility}body{min-width:320px;min-height:100vh;margin:0;background:var(--color-void);color:var(--color-text)}button,input,select{color:inherit;font:inherit}button,select,input[type=range]{cursor:pointer}button:disabled,select:disabled,input:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible,a:focus-visible{outline:2px solid var(--color-cyan);outline-offset:3px}h1,h2,p{margin-top:0}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:10px 14px;border-radius:var(--radius-small);background:var(--color-text);color:var(--color-void);font-weight:700;transform:translateY(-180%);transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}#root{min-height:100vh}.fatal-error{display:grid;min-height:100vh;align-content:center;justify-items:start;max-width:680px;margin-inline:auto;padding:40px 20px}.fatal-error h1{margin-bottom:12px;font-family:var(--font-display);font-size:clamp(2rem,7vw,4.5rem);font-weight:460;letter-spacing:-.05em}.fatal-error>p:not(.eyebrow){margin-bottom:24px;color:var(--color-muted);line-height:1.6}.observatory-app{position:relative;min-height:100vh;overflow-x:clip;background:radial-gradient(circle at 76% -10%,rgba(41,101,151,.22),transparent 38rem),radial-gradient(circle at -8% 55%,rgba(19,70,105,.2),transparent 34rem),linear-gradient(145deg,#02050b,#07111d 52%,#030810)}.observatory-app:before{position:fixed;z-index:0;inset:0;content:"";pointer-events:none;opacity:.18;background-image:linear-gradient(rgba(122,175,211,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(122,175,211,.04) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 82%)}.observatory-header,.observatory-main,.observatory-footer{position:relative;z-index:1;width:min(calc(100% - 24px),1800px);margin-inline:auto}.observatory-header{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:70px;padding-block:10px}.brand-lockup{display:flex;align-items:center;gap:14px}.brand-orbit{position:relative;display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid rgba(126,220,255,.48);border-radius:50%;box-shadow:inset 0 0 18px #4ca6ff29}.brand-orbit:before{width:8px;height:8px;border-radius:50%;background:var(--color-amber);box-shadow:0 0 18px var(--color-amber);content:""}.brand-orbit:after{position:absolute;top:5px;right:3px;width:5px;height:5px;border-radius:50%;background:var(--color-cyan);content:""}.brand-kicker,.brand-title{display:block}.brand-kicker{margin-bottom:3px;color:var(--color-muted);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.brand-title{font-family:var(--font-display);font-size:clamp(1rem,2vw,1.3rem);font-weight:560;letter-spacing:.01em}.header-meta{display:flex;align-items:center;gap:12px;color:var(--color-muted);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}.header-actions,.header-status,.stage-heading,.stage-heading-primary,.stage-heading-actions{display:flex;align-items:center}.header-actions{justify-content:flex-end;flex-wrap:wrap;gap:8px}.header-status{gap:10px;margin-right:4px}.command-button{min-height:38px;padding:7px 12px;border:1px solid var(--color-line-strong);border-radius:999px;background:#081523c2;color:#dcecf8;font-size:.76rem;font-weight:700}.command-button:hover:not(:disabled),.command-button[aria-pressed=true]{border-color:#7edcffb3;background:#2357797a;color:var(--color-cyan)}.status-pip{width:7px;height:7px;border-radius:50%;background:var(--color-success);box-shadow:0 0 14px #70e3b1b3}.observatory-main{padding-bottom:24px}.observatory-workspace{display:grid;grid-template-columns:minmax(220px,236px) minmax(0,1fr) minmax(280px,310px);gap:12px;align-items:start}.workspace-title-row{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:18px;padding:4px 2px 10px}.workspace-title-row h1,.workspace-title-row p{margin:0}.workspace-title-row h1{font-family:var(--font-display);font-size:clamp(1.08rem,2vw,1.45rem);font-weight:540;letter-spacing:-.02em}.workspace-title-row p{color:var(--color-muted);font-family:var(--font-mono);font-size:.7rem;text-align:right}.observatory-stage,.workspace-rail{display:grid;min-width:0;gap:12px}.stage-heading{min-height:48px;justify-content:space-between;gap:16px;padding:8px 12px;border:1px solid var(--color-line);border-radius:var(--radius-medium);background:#050e18b8}.stage-heading-primary{min-width:0;gap:10px}.stage-heading-primary strong,.stage-heading-primary span{display:block}.stage-heading-primary strong{overflow:hidden;font-family:var(--font-display);font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.stage-heading-primary span,.stage-heading-actions{color:var(--color-muted);font-family:var(--font-mono);font-size:.72rem}.stage-heading-actions{gap:8px;white-space:nowrap}.workspace-rail .control-panel,.observatory-stage>.control-panel{padding:17px;border-radius:var(--radius-medium)}.workspace-rail .control-panel h2,.observatory-stage>.control-panel h2{font-size:clamp(1.08rem,1.6vw,1.35rem)}.workspace-rail .body-list{max-height:325px}.workspace-rail .body-list-item{min-height:47px}.workspace-rail .body-list-action,.workspace-rail .body-list-item small,.workspace-rail .navigator-count,.workspace-rail .classification-badge,.mode-badge{font-size:max(.68rem,11px)}.observatory-stage .time-controls{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.observatory-stage .time-controls>.panel-heading-row{grid-column:1 / -1}.observatory-stage .epoch-timeline{grid-column:1 / span 7}.observatory-stage .exact-time-form{grid-column:8 / -1}.observatory-stage .exact-time-form input[type=datetime-local]{min-width:0;font-size:.78rem;letter-spacing:-.01em}.observatory-stage .input-action-row{align-items:stretch}.observatory-stage .transport-row{grid-column:1 / span 4}.observatory-stage .time-controls>.field-stack{grid-column:5 / span 3}.observatory-stage .speed-control{grid-column:8 / -1}.observatory-stage .focus-controls{display:grid;grid-column:1 / -1;grid-template-columns:minmax(180px,.8fr) minmax(250px,1.2fr);align-items:end;gap:10px 14px}.observatory-stage .focus-controls legend{grid-column:1 / -1}.observatory-stage .focus-controls .field-help{grid-column:1 / -1;margin-top:0}.observatory-stage .focus-controls .field-stack,.observatory-stage .focus-controls .segmented-row,.observatory-stage .epoch-timeline,.observatory-stage .exact-time-form,.observatory-stage .transport-row,.observatory-stage .time-controls>.field-stack,.observatory-stage .speed-control,.observatory-stage .focus-controls{margin-top:0}.hero-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.42fr);gap:30px;align-items:end;margin:20px 0 24px}.hero-copy h1{max-width:880px;margin-bottom:0;font-family:var(--font-display);font-size:clamp(2.2rem,5.4vw,5.2rem);font-weight:430;letter-spacing:-.055em;line-height:.96}.hero-copy>p{max-width:500px;margin-bottom:4px;color:var(--color-muted);font-size:clamp(.95rem,1.5vw,1.08rem);line-height:1.6}.canvas-section{position:relative;min-height:520px;overflow:hidden;border:1px solid var(--color-line);border-radius:var(--radius-large);background:var(--color-void);box-shadow:var(--shadow-panel)}.viewport-fullscreen-button{display:inline-flex;position:absolute;z-index:9;top:14px;right:14px;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border:1px solid rgba(132,217,255,.48);border-radius:999px;background:#040f19d6;box-shadow:0 8px 28px #00000057;color:#e8f7ff;font-size:.72rem;font-weight:760;letter-spacing:.025em;cursor:pointer;pointer-events:auto;backdrop-filter:blur(14px);transition:border-color .12s ease,background-color .12s ease,color .12s ease,transform .12s ease}.viewport-fullscreen-button:hover{border-color:#84d9ffdb;background:#19435ce0;color:var(--color-cyan)}.viewport-fullscreen-button:active{transform:translateY(1px)}.viewport-fullscreen-button:focus-visible{outline:2px solid var(--color-cyan);outline-offset:3px}.viewport-fullscreen-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.canvas-section[data-fullscreen-active=true]{width:100vw;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;border:0;border-radius:0;background:#000;box-shadow:none}.canvas-section::backdrop{background:#000}.canvas-section[data-fullscreen-mode=fallback]{position:fixed;z-index:1000;inset:0}body.observatory-viewport-expanded{overflow:hidden}.canvas-section[data-fullscreen-active=true] .observatory-canvas-frame,.canvas-section[data-fullscreen-active=true] .observatory-canvas,.canvas-section[data-fullscreen-active=true] .webgl-fallback{height:100%}.canvas-section[data-fullscreen-active=true] .mode-badge-static{display:none}.canvas-section[data-fullscreen-active=true] .viewport-fullscreen-button{top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right))}.observatory-canvas-frame,.observatory-canvas,.webgl-fallback{width:100%;height:clamp(520px,64vh,800px)}.observatory-canvas-frame{position:relative}.observatory-canvas{display:block;touch-action:none}.canvas-topbar,.canvas-legend,.canvas-hint,.canvas-status{position:absolute;z-index:2;pointer-events:none}.observatory-load-state{display:grid;position:absolute;z-index:5;top:50%;left:50%;width:min(calc(100% - 40px),420px);justify-items:center;gap:9px;padding:22px;border:1px solid var(--color-line-strong);border-radius:var(--radius-medium);background:#030a12eb;box-shadow:var(--shadow-panel);color:var(--color-muted);text-align:center;transform:translate(-50%,-50%);backdrop-filter:blur(18px)}.observatory-load-state strong{color:var(--color-text)}.observatory-load-error{border-color:#ff8f8f80}.loading-orbit{width:32px;height:32px;border:1px solid rgba(126,220,255,.25);border-top-color:var(--color-cyan);border-radius:50%;animation:loading-orbit-spin 1.4s linear infinite}@keyframes loading-orbit-spin{to{transform:rotate(360deg)}}.cinematic-tour-status{display:grid;position:absolute;z-index:4;bottom:86px;left:18px;max-width:min(340px,calc(100% - 36px));gap:4px;padding:12px 14px;border:1px solid rgba(126,220,255,.42);border-radius:12px;background:#040e18db;box-shadow:0 12px 36px #0000004d;pointer-events:none;backdrop-filter:blur(14px)}.cinematic-tour-status .eyebrow{margin-bottom:0}.cinematic-tour-status>span:last-child{color:var(--color-muted);font-size:.72rem;line-height:1.45}.canvas-topbar{display:flex;top:18px;right:142px;left:18px;align-items:flex-start;justify-content:space-between;gap:16px}.badge-stack{display:flex;flex-wrap:wrap;gap:8px}.mode-badge{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border:1px solid var(--color-line-strong);border-radius:999px;background:#050d17cc;backdrop-filter:blur(12px);color:#c5d7e5;font-size:max(.7rem,11px);font-weight:750;letter-spacing:.09em;text-transform:uppercase}.mode-badge-warning{border-color:#ffc45c75;color:var(--color-warning)}.canvas-section[data-close-up-active=true] .canvas-topbar{top:10px;right:134px;left:10px}.canvas-section[data-close-up-active=true] .badge-stack{gap:5px}.canvas-section[data-close-up-active=true] .mode-badge-static{display:none}.canvas-section[data-close-up-active=true] .mode-badge{min-height:25px;padding:4px 8px;background:#050d17a8;font-size:max(.58rem,9.5px);letter-spacing:.065em}.canvas-legend{display:flex;right:12px;bottom:12px;width:max-content;max-width:min(calc(100% - 24px),880px);box-sizing:border-box;flex-wrap:nowrap;justify-content:flex-start;gap:5px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;padding:6px 8px 9px;border:1px solid var(--color-line);border-radius:12px;background:#030910b8;color:var(--color-muted);font-size:.75rem;backdrop-filter:blur(10px);scrollbar-width:thin;scrollbar-color:rgba(126,220,255,.55) rgba(4,12,20,.45);touch-action:pan-x;-webkit-overflow-scrolling:touch}.canvas-legend::-webkit-scrollbar{height:6px}.canvas-legend::-webkit-scrollbar-track{margin-inline:6px;border-radius:999px;background:#040c1473}.canvas-legend::-webkit-scrollbar-thumb{border-radius:999px;background:#7edcff8c}.canvas-legend-action{display:inline-flex;min-height:30px;align-items:center;gap:4px;padding:3px 4px;border:1px solid transparent;border-radius:8px;appearance:none;background:transparent;color:inherit;font:inherit;line-height:1;cursor:pointer;pointer-events:auto;transition:border-color .12s ease,background-color .12s ease,color .12s ease,transform .12s ease}.canvas-legend-action:hover:not(:disabled){border-color:#84d9ff47;background:#84d9ff14;color:#eaf7ff}.canvas-legend-action:active:not(:disabled){transform:translateY(1px)}.canvas-legend-action:focus-visible{outline:2px solid var(--color-cyan);outline-offset:2px}.canvas-legend-action[aria-pressed=true]{border-color:#84d9ff66;background:#84d9ff1f;color:#f4fbff}.canvas-legend-action:disabled{cursor:not-allowed;opacity:.42}.canvas-section[data-close-up-active=true] .canvas-legend{right:10px;bottom:10px;max-width:calc(100% - 20px);flex-wrap:nowrap;gap:3px;overflow-x:auto;padding:4px 6px;border-radius:999px;background:#030910a3;font-size:max(.62rem,10px);scrollbar-width:thin}.canvas-section[data-close-up-active=true] .canvas-legend-action{min-height:28px;flex:0 0 auto;justify-content:center;gap:4px;padding:3px 5px;border-radius:999px}.canvas-legend i{display:block;flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--legend-color);box-shadow:0 0 10px var(--legend-color)}.canvas-hint{bottom:58px;left:18px;max-width:min(340px,calc(100% - 36px));color:#cde0ed94;font-size:.72rem;letter-spacing:.02em;line-height:1.35}.canvas-section[data-close-up-active=true] .canvas-hint{bottom:52px;max-width:min(280px,calc(100% - 28px));font-size:.66rem}.canvas-status{top:50%;left:50%;max-width:420px;padding:15px 18px;border:1px solid rgba(255,218,133,.4);border-radius:var(--radius-small);background:#120d06eb;color:var(--color-warning);text-align:center;transform:translate(-50%,-50%)}.webgl-fallback{display:grid;position:absolute;z-index:1;inset:0;align-content:center;justify-items:center;padding:42px;background:radial-gradient(circle at center,#102238,#02050b 60%);text-align:center}.webgl-fallback h2{margin:28px 0 9px;font-size:clamp(1.3rem,3vw,2rem)}.webgl-fallback p{max-width:600px;margin-bottom:6px;color:var(--color-muted);line-height:1.5}.fallback-diagram{display:flex;width:min(380px,80vw);align-items:center}.fallback-sun,.fallback-earth{flex:0 0 auto;border-radius:50%}.fallback-sun{width:62px;height:62px;background:var(--color-amber);box-shadow:0 0 45px #ffc45c73}.fallback-guide{height:1px;flex:1;background:linear-gradient(to right,#ffc45c80,#4ca6ff80)}.fallback-earth{width:24px;height:24px;background:var(--color-blue);box-shadow:0 0 20px #4ca6ff73}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:18px;margin-top:18px}.phase-three-dashboard{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(360px,1.18fr) minmax(300px,.9fr);gap:18px;margin-top:18px;align-items:start}.phase-three-center,.phase-three-right{display:grid;gap:18px}.control-panel{min-width:0;padding:clamp(20px,3vw,30px);border:1px solid var(--color-line);border-radius:var(--radius-large);background:linear-gradient(145deg,#0c1b2de6,#060f1adb);box-shadow:0 14px 50px #0000002e;backdrop-filter:blur(18px)}.panel-heading-row,.speed-label-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.eyebrow{margin-bottom:7px;color:var(--color-cyan);font-size:.67rem;font-weight:780;letter-spacing:.14em;text-transform:uppercase}.control-panel h2{margin-bottom:0;font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.65rem);font-weight:510;letter-spacing:-.02em}.direction-readout,.status-dot-label{display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;margin-top:2px;padding:6px 9px;border:1px solid var(--color-line);border-radius:999px;color:var(--color-muted);font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.direction-readout[data-direction=reverse]{border-color:#7edcff57;color:var(--color-cyan)}.exact-time-form,.field-stack,.speed-control,.focus-controls{margin-top:24px}.exact-time-form>label,.field-stack>span,.speed-label-row label,.focus-controls legend{display:block;margin-bottom:8px;color:var(--color-muted);font-size:.75rem;font-weight:720;letter-spacing:.045em;text-transform:uppercase}.input-action-row,.transport-row,.segmented-row{display:flex;gap:9px}.input-action-row input{width:auto;min-width:0;flex:1 1 160px}.input-action-row .button{flex:0 0 auto}input[type=datetime-local],input[type=search],select{width:100%;min-height:43px;border:1px solid var(--color-line-strong);border-radius:var(--radius-small);background:#02080eb8;color:var(--color-text)}input[type=datetime-local]{padding:8px 11px;color-scheme:dark;font-family:var(--font-mono)}input[type=search]{padding:8px 11px}select{padding:8px 34px 8px 11px}.button,.segmented-row button{min-height:42px;border:1px solid transparent;border-radius:var(--radius-small);font-weight:690}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 15px}.button-primary{background:linear-gradient(135deg,#9ce7ff,#4ca6ff);color:#02101c;box-shadow:0 8px 24px #4ca6ff30}.button-secondary,.segmented-row button{border-color:var(--color-line-strong);background:#0f23379e;color:var(--color-text)}.button:hover:not(:disabled),.segmented-row button:hover:not(:disabled){border-color:#7edcffa6;filter:brightness(1.08)}.transport-row{margin-top:15px}.transport-row .button-primary{min-width:112px}.field-stack{display:block}.speed-label-row output{color:var(--color-cyan);font-family:var(--font-mono);font-size:.76rem;text-align:right}input[type=range]{width:100%;margin:8px 0;accent-color:var(--color-cyan)}.range-extents{display:flex;justify-content:space-between;color:var(--color-dim);font-size:.68rem}.focus-controls{padding:0;border:0}.focus-controls .body-target-field{margin-top:12px}.segmented-row+.segmented-row{margin-top:8px}.segmented-row button{flex:1;padding:8px 10px;font-size:.78rem}.field-error,.diagnostic-message{margin:8px 0 0;color:var(--color-danger);font-size:.78rem}.status-dot-label span{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 9px currentColor}.status-dot-label[data-status=ready]{color:var(--color-success)}.status-dot-label[data-status=lost],.status-dot-label[data-status=error],.status-dot-label[data-status=unavailable]{color:var(--color-warning)}.diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:24px 0 0;border-top:1px solid var(--color-line);border-left:1px solid var(--color-line)}.diagnostic-grid>div{min-width:0;padding:14px;border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line)}.diagnostic-grid dt{margin-bottom:6px;color:var(--color-dim);font-size:.65rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase}.diagnostic-grid dd{overflow:hidden;margin:0;color:#dcecf8;font-family:var(--font-mono);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.technical-note{margin:18px 0 0;color:var(--color-muted);font-size:.76rem;line-height:1.55}.navigator-count,.classification-badge{display:inline-flex;min-height:28px;flex:0 0 auto;align-items:center;padding:5px 9px;border:1px solid var(--color-line);border-radius:999px;color:var(--color-muted);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.05em;text-transform:uppercase}.navigator-search{margin-top:20px}.body-list{display:grid;gap:7px;max-height:430px;margin-top:14px;padding-right:4px;overflow-y:auto;scrollbar-color:rgba(126,220,255,.35) transparent}.body-list-item{display:grid;min-height:50px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:#040c1575;color:var(--color-text);text-align:left}.body-list-item:hover:not(:disabled){border-color:var(--color-line-strong);background:#0e2337b8}.body-list-item[aria-pressed=true]{border-color:#7edcff94;background:linear-gradient(135deg,#27669161,#0a1b2dc7);box-shadow:inset 3px 0 0 var(--color-cyan)}.body-list-item strong,.body-list-item small{display:block}.body-list-item strong{font-size:.84rem}.body-list-item small,.body-list-action{color:var(--color-dim);font-size:.66rem}.body-list-action{font-family:var(--font-mono);text-transform:uppercase}.body-list-marker{width:8px;height:8px;border-radius:50%;background:#a8bfd0;box-shadow:0 0 10px currentColor}.catalog-result-marker{width:9px;height:9px;border:1px solid rgba(220,242,255,.72);border-radius:50%;background:#c8d1d8;box-shadow:0 0 9px #c8e1f2b8}.catalog-result-marker[data-kind=earth-satellite]{background:#70dcff;box-shadow:0 0 10px #5cd0ffe6}.catalog-result-marker[data-kind=spacecraft]{border-radius:2px;background:#ffc46c;box-shadow:0 0 10px #ffae48d1}.catalog-target-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.body-list-marker[data-body-id=sun]{background:#ffc45c}.body-list-marker[data-body-id=mercury]{background:#b9b4aa}.body-list-marker[data-body-id=venus]{background:#e7b66f}.body-list-marker[data-body-id=earth]{background:#55a9ff}.body-list-marker[data-body-id=moon]{background:#d7dbe2}.body-list-marker[data-body-id=mars]{background:#d86e4a}.body-list-marker[data-body-id=jupiter]{background:#d7aa7c}.body-list-marker[data-body-id=saturn]{background:#e2ca86}.body-list-marker[data-body-id=uranus]{background:#84d7df}.body-list-marker[data-body-id=neptune]{background:#567ee8}.body-list-marker[data-body-id="1p-halley"],.body-list-marker[data-body-id="2p-encke"],.body-list-marker[data-body-id="67p-churyumov-gerasimenko"],.body-list-marker[data-body-id=c-1995-o1-hale-bopp],.body-list-marker[data-body-id=c-2020-f3-neowise]{background:#84d9ff;box-shadow:0 0 6px #84d9ff,5px 0 10px #e7c18eb8}.navigator-empty{margin:14px 0;color:var(--color-muted);font-size:.78rem}.panel-empty{margin:10px 0 4px;padding:12px;border:1px dashed rgba(126,220,255,.28);border-radius:8px;background:#0816246b;color:#b7cdda;font-size:.76rem;line-height:1.45;text-align:center}.scale-mode-controls .segmented-row{flex-wrap:wrap}.layer-controls,.scale-mode-controls{display:grid;gap:9px;margin-top:22px;padding:0;border:0}.layer-controls legend,.scale-mode-controls legend{margin-bottom:5px;color:var(--color-muted);font-size:.72rem;font-weight:720;letter-spacing:.045em;text-transform:uppercase}.layer-controls label{display:flex;min-height:36px;align-items:center;gap:9px;color:#c7d8e5;font-size:.78rem}.layer-controls input{width:16px;height:16px;accent-color:var(--color-cyan)}.statistical-layer-note{margin:12px 0 0;padding:10px 11px;border:1px solid rgba(255,196,92,.22);border-radius:8px;background:#422f0e33;color:#dfcda7;font-size:.7rem;line-height:1.45}.natural-satellite-panel{margin-top:12px;padding:16px}.natural-satellite-panel .panel-heading-row{align-items:center}.panel-count{display:inline-grid;min-width:34px;min-height:28px;place-items:center;border:1px solid rgba(126,220,255,.32);border-radius:999px;color:var(--color-cyan);font-family:var(--font-mono);font-size:.72rem}.natural-satellite-list{display:grid;max-height:210px;gap:4px;margin-top:14px;overflow:auto}.natural-satellite-option{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;min-width:0;padding:7px 8px;border:1px solid transparent;border-radius:7px;background:#0209116b;color:#c7d8e5;text-align:left;font-size:.74rem}.natural-satellite-option:hover:not(:disabled),.natural-satellite-option[aria-selected=true]{border-color:#7edcff70;background:#27688d47;color:var(--color-cyan)}.natural-satellite-option small{color:var(--color-dim);font-family:var(--font-mono);font-size:.62rem}.natural-satellite-dot{width:7px;height:7px;border-radius:50%;background:#8ac9df;box-shadow:0 0 8px #8ac9dfb8}.natural-satellite-summary{display:grid;gap:5px;margin-top:14px;padding:10px;border:1px solid rgba(126,220,255,.26);border-radius:9px;color:var(--color-muted);font-size:.7rem;line-height:1.4}.natural-satellite-summary strong{color:#e7f5ff;font-size:.82rem}.natural-satellite-summary .button{margin-top:5px;padding:6px 8px;font-size:.68rem}.space-objects-panel{margin-top:12px;padding:16px}.layer-toggle-wide{display:flex;min-height:34px;align-items:center;gap:9px;margin-top:14px;color:#c7d8e5;font-size:.76rem}.layer-toggle-wide input{width:16px;height:16px;accent-color:var(--color-cyan)}.space-object-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:14px}.space-object-tabs button{min-height:32px;padding:5px 7px;border:1px solid var(--color-line);border-radius:7px;background:#0209116b;color:var(--color-muted);font-size:.68rem}.space-object-tabs button[aria-selected=true]{border-color:#7edcff85;background:#27688d47;color:var(--color-cyan)}.space-object-list{display:grid;max-height:180px;gap:4px;margin-top:10px;overflow:auto}.space-object-option{display:grid;gap:3px;min-width:0;padding:7px 8px;border:1px solid transparent;border-radius:7px;background:#0209116b;color:#c7d8e5;text-align:left;font-size:.72rem}.space-object-option:hover:not(:disabled),.space-object-option[aria-selected=true]{border-color:#7edcff70;color:var(--color-cyan)}.space-object-option small{color:var(--color-dim);font-family:var(--font-mono);font-size:.6rem}.space-object-warning{display:grid;gap:8px;margin-top:10px;padding:9px;border:1px solid rgba(255,196,92,.36);border-radius:8px;background:#422f0e33;color:#dfcda7;font-size:.68rem;line-height:1.4}.space-object-warning .button{justify-self:start;padding:6px 8px;font-size:.66rem}.field-help,.true-scale-note{margin:9px 0 0;color:var(--color-dim);font-size:.74rem;line-height:1.5}.scale-mode-controls .segmented-row button[aria-pressed=true]{border-color:#7edcffad;background:#3581b161;color:var(--color-cyan)}.scale-warning{margin:16px 0 0;padding:11px 12px;border:1px solid rgba(255,196,92,.46);border-radius:var(--radius-small);background:#36250957;color:var(--color-warning);font-size:.75rem;line-height:1.5;overflow-wrap:anywhere}.inspector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 0 0;border-top:1px solid var(--color-line);border-left:1px solid var(--color-line)}.inspector-grid>div{min-width:0;padding:12px;border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line)}.inspector-grid dt{margin-bottom:6px;color:var(--color-dim);font-size:.62rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.inspector-grid dd{margin:0;overflow-wrap:anywhere;color:#dcecf8;font-family:var(--font-mono);font-size:.7rem;line-height:1.45}.inspector-warning{margin-top:16px}.body-label-layer{position:absolute;z-index:3;inset:0;overflow:hidden;pointer-events:none}.body-screen-label{position:absolute;top:0;left:0;padding:3px 6px;border:1px solid rgba(155,195,222,.2);border-radius:999px;background:#02080ec2;color:#d8e9f6;font-family:var(--font-mono);font-size:10px;letter-spacing:.025em;opacity:0;transform:translate(-50%,-50%);white-space:nowrap;will-change:transform,opacity}.body-screen-label[data-selected=true]{border-color:#7edcffc7;color:#fff;opacity:1}.natural-satellite-screen-label{position:absolute;top:0;left:0;padding:2px 5px;border:1px solid rgba(138,201,223,.32);border-radius:999px;background:#02080ec7;color:#c5e5f4;font-family:var(--font-mono);font-size:9px;opacity:0;pointer-events:none;transform:translate(-50%,-50%);white-space:nowrap;will-change:transform,opacity}.natural-satellite-screen-label[data-selected=true]{border-color:#8ac9dfc2;color:#fff}.space-object-screen-label{position:absolute;top:0;left:0;padding:3px 7px;border:1px solid rgba(255,195,104,.76);border-radius:999px;background:#02080edb;box-shadow:0 0 14px #ffb14a2e;color:#fff3dc;font-family:var(--font-mono);font-size:10px;opacity:0;pointer-events:none;white-space:nowrap;will-change:transform,opacity}.space-object-coverage-label{border-color:#6fd8ff9e;box-shadow:0 0 10px #5abee624;color:#d9f4ff;font-size:9px;padding:2px 6px}.space-object-screen-label[data-selected=true]{border-color:#ffc368e6;color:#fff8ea}.body-selection-indicator{position:absolute;top:0;left:0;width:24px;height:24px;border:1px solid var(--color-cyan);border-radius:50%;box-shadow:0 0 16px #7edcff61;opacity:0;transform:translate(-50%,-50%);will-change:transform,opacity}.body-selection-indicator:before,.body-selection-indicator:after{position:absolute;content:"";background:var(--color-cyan)}.space-object-selection-indicator{border-color:#ffbf67;box-shadow:0 0 16px #ffb14a6b}.space-object-selection-indicator:before,.space-object-selection-indicator:after{background:#ffbf67}.body-selection-indicator:before{top:50%;right:-5px;left:-5px;height:1px}.body-selection-indicator:after{top:-5px;bottom:-5px;left:50%;width:1px}.observatory-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0 34px;border-top:1px solid var(--color-line);color:var(--color-dim);font-size:.73rem}.observatory-footer p{margin:0;line-height:1.55}.observatory-footer a{color:var(--color-cyan);text-underline-offset:3px;white-space:nowrap}abbr[title]{text-decoration-color:#7edcff80;text-underline-offset:3px}.observatory-dialog-backdrop{display:grid;position:fixed;z-index:100;inset:0;place-items:center;padding:20px;background:#00040ac7;backdrop-filter:blur(12px)}.observatory-dialog{display:grid;width:min(760px,100%);max-height:min(780px,calc(100vh - 40px));overflow:hidden;border:1px solid var(--color-line-strong);border-radius:var(--radius-large);background:linear-gradient(145deg,#0b1b2d,#050e19);box-shadow:0 30px 100px #000000a6}.observatory-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid var(--color-line)}.observatory-dialog-header h2{margin:0;font-family:var(--font-display);font-size:clamp(1.3rem,3vw,1.8rem)}.observatory-dialog-description{padding:14px 20px 0;color:var(--color-muted);line-height:1.5}.observatory-dialog-content{display:grid;gap:24px;min-height:0;padding:20px;overflow-y:auto}.observatory-dialog :focus{outline:2px solid var(--color-cyan);outline-offset:3px}.observatory-dialog-content section>h3{margin:0 0 12px;font-size:.95rem}.observatory-dialog-content section>p{color:var(--color-muted);line-height:1.55}.shortcut-list,.provenance-links{padding:0;margin:0;list-style:none}.shortcut-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shortcut-list li{display:grid;grid-template-columns:minmax(64px,auto) 1fr;align-items:start;gap:10px;padding:10px;border:1px solid var(--color-line);border-radius:10px;background:#02080e75}.shortcut-list strong,.shortcut-list small{display:block}.shortcut-list small{margin-top:3px;color:var(--color-muted);line-height:1.35}.shortcut-keys{display:flex;flex-wrap:wrap;gap:4px}kbd{min-width:27px;padding:3px 6px;border:1px solid var(--color-line-strong);border-radius:6px;background:#122a40e6;color:var(--color-cyan);font-family:var(--font-mono);font-size:.72rem;text-align:center}.motion-preference-controls{display:grid;gap:9px;margin:0 0 14px;padding:0;border:0}.motion-preference-controls legend{margin-bottom:6px;color:var(--color-muted)}.motion-preference-controls label,.reduce-flashes-control{display:flex;min-height:34px;align-items:center;gap:9px}.reduce-flashes-control{margin-bottom:16px}.provenance-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--color-line);border-left:1px solid var(--color-line)}.science-glossary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.science-glossary>div{padding:10px;border:1px solid var(--color-line);border-radius:10px;background:#02080e66}.science-glossary dt{margin-bottom:4px;color:var(--color-text);font-weight:700}.science-glossary dd{margin:0;color:var(--color-muted);font-size:.78rem;line-height:1.45}.provenance-facts>div{min-width:0;padding:12px;border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line)}.provenance-facts dt{margin-bottom:5px;color:var(--color-dim);font-size:.7rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.provenance-facts dd{margin:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:.76rem;line-height:1.45}.provenance-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.provenance-links a{display:inline-flex;min-height:36px;align-items:center;padding:6px 10px;border:1px solid var(--color-line-strong);border-radius:999px;color:var(--color-cyan);font-size:.76rem}.impact-lab-panel{min-width:0;border-color:#ffb15f57;background:radial-gradient(circle at 100% 0%,rgba(255,121,52,.12),transparent 17rem),linear-gradient(150deg,#0b1b2dfa,#050e19fa)}.impact-lab-workspace{display:contents}.impact-error{margin:0;border-color:#ff8f8f80}.impact-lab-panel h2,.impact-lab-panel h3,.impact-lab-panel p{margin-top:0}.impact-lab-panel h2{margin-bottom:0;font-family:var(--font-display);font-size:1.18rem}.impact-lab-panel h3{margin-bottom:9px;font-size:.88rem}.impact-lab-panel>*+*{margin-top:14px}.impact-lab-panel .mode-badge{width:fit-content;margin-bottom:0}.impact-parameter-controls{min-width:0;padding:0;border:0}.impact-parameter-controls legend{margin-bottom:10px;color:var(--color-text);font-size:.82rem;font-weight:760}.impact-parameter-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.impact-lab-panel .field-stack{min-width:0}.impact-lab-panel .field-stack>span{display:block;margin-bottom:5px;font-size:.73rem;font-weight:700}.impact-lab-panel .field-stack small{color:var(--color-dim);font-weight:500}.impact-lab-panel input[type=number],.impact-lab-panel select{width:100%;min-width:0;min-height:38px;padding:7px 9px;border:1px solid var(--color-line-strong);border-radius:9px;background:#020910c2;color:var(--color-text)}.impact-lab-panel input[aria-invalid=true]{border-color:#ff8f8fcc;box-shadow:0 0 0 1px #ff8f8f33}.impact-lab-panel input:focus,.impact-lab-panel select:focus,.impact-lab-panel button:focus{outline:2px solid var(--color-cyan);outline-offset:2px}.impact-lab-panel .field-help{display:block;margin:5px 0 0;overflow-wrap:anywhere;color:var(--color-muted);font-size:.68rem;line-height:1.45}.impact-toggle-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-block:11px}.impact-toggle-controls label,.reduce-flashes-control{display:flex;min-width:0;align-items:flex-start;gap:8px;color:var(--color-muted);font-size:.73rem;line-height:1.4}.impact-toggle-controls input,.reduce-flashes-control input{flex:0 0 auto;margin-top:2px}.impact-visibility-control{padding:11px;border:1px solid rgba(255,177,95,.24);border-radius:11px;background:#ffb15f0b}.impact-visibility-control .mode-badge{margin-top:9px}.impact-physical-summary,.impact-visual-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.impact-physical-summary dd,.impact-visual-summary dd{overflow-wrap:anywhere}.impact-approximation-notes{display:grid;gap:5px;margin:9px 0 0;padding-left:18px;color:var(--color-dim);font-size:.68rem;line-height:1.45}.impact-run-controls,.impact-active-controls{display:grid;gap:10px}.impact-active-controls{padding-top:12px;border-top:1px solid rgba(255,177,95,.26)}.impact-active-controls .transport-row,.dialog-action-row{display:flex;flex-wrap:wrap;gap:8px}.impact-active-controls [role=status]{margin:0;color:var(--color-muted);font-family:var(--font-mono);font-size:.7rem;line-height:1.5}.impact-event-hud{display:grid;position:absolute;z-index:4;bottom:18px;left:18px;width:min(300px,calc(100% - 36px));gap:3px;padding:9px 12px;border:1px solid rgba(255,177,95,.5);border-radius:12px;background:#100a08e0;box-shadow:0 14px 44px #0006;pointer-events:none;backdrop-filter:blur(14px)}.impact-event-hud strong{color:#ffe1b8}.impact-event-hud span{color:var(--color-muted);font-size:.72rem;line-height:1.45}.impact-confirmation .observatory-dialog-description{color:#ffd7a5}.impact-confirmation .dialog-action-row{justify-content:flex-end}.solar-fate-workspace{display:contents}.solar-fate-panel{min-width:0;border-color:#70c2ff61;background:radial-gradient(circle at 92% 2%,rgba(112,106,255,.16),transparent 18rem),radial-gradient(circle at 5% 100%,rgba(68,192,187,.1),transparent 16rem),linear-gradient(150deg,#09182bfa,#050c19fa)}.solar-fate-panel h2,.solar-fate-panel h3,.solar-fate-panel p{margin-top:0}.solar-fate-panel h2{margin-bottom:0;font-family:var(--font-display);font-size:1.18rem}.solar-fate-panel h3{margin-bottom:8px;font-size:.92rem}.solar-fate-panel button:focus,.solar-fate-panel input:focus{outline:2px solid var(--color-cyan);outline-offset:2px}.solar-fate-choice-list,.solar-fate-active,.solar-fate-progress,.solar-fate-active-controls{display:grid;gap:12px}.solar-fate-distinction,.solar-fate-separator{margin-bottom:0;color:var(--color-muted);font-size:.72rem;line-height:1.5}.solar-fate-separator{padding-inline:4px;text-align:center}.solar-fate-option{display:grid;gap:9px;padding:14px;border:1px solid rgba(111,193,255,.26);border-radius:13px;background:#040e1bad}.solar-fate-option>*{margin-bottom:0}.solar-evolution-option{border-color:#5bd8c95c;background:linear-gradient(145deg,#164d4e40,#051321b3)}.fictional-supernova-option{border-color:#ff7b9d6b;background:linear-gradient(145deg,#5b183752,#180818bd)}.solar-fate-option .mode-badge,.solar-fate-active .mode-badge{width:fit-content;margin-bottom:0}.solar-fate-option .button{width:100%;justify-content:center}.solar-fate-panel .field-help,.solar-fate-panel .scale-warning{overflow-wrap:anywhere;font-size:.7rem;line-height:1.5}.solar-evolution-caveats{color:var(--color-muted);font-size:.7rem;line-height:1.5}.solar-evolution-caveats summary{width:fit-content;cursor:pointer;color:var(--color-cyan)}.solar-evolution-caveats ul{display:grid;gap:5px;margin:8px 0 0;padding-left:18px}.solar-fate-active{padding-top:2px}.solar-fate-progress>label{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;color:var(--color-muted);font-size:.72rem}.solar-fate-progress progress{width:100%;height:7px;grid-column:1 / -1;overflow:hidden;border:0;border-radius:999px;accent-color:var(--color-cyan)}.solar-fate-progress output{grid-column:2;grid-row:1;color:var(--color-text);font-family:var(--font-mono)}.solar-fate-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.solar-fate-summary dd{overflow-wrap:anywhere}.solar-fate-active-controls{padding-top:12px;border-top:1px solid rgba(111,193,255,.24)}.solar-fate-active-controls h3{margin:0}.solar-fate-active-controls .transport-row{display:flex;flex-wrap:wrap;gap:8px}.solar-fate-event-hud{display:grid;position:absolute;z-index:4;bottom:82px;left:18px;width:min(430px,calc(100% - 36px));gap:5px;padding:13px 15px;border:1px solid rgba(96,210,203,.5);border-radius:12px;background:#05121ce6;box-shadow:0 14px 44px #0000006b;pointer-events:none;backdrop-filter:blur(14px)}.solar-fate-event-hud strong{color:#c9fff3}.solar-fate-event-hud span{color:var(--color-muted);font-size:.72rem;line-height:1.45}.fictional-supernova-hud{border-color:#ff769fa3;background:#1f0817eb}.fictional-supernova-hud strong{color:#ffd1dd}.fictional-supernova-confirmation .observatory-dialog-description{color:#ffd2df}.fictional-supernova-confirmation .dialog-action-row{justify-content:flex-end}.black-hole-encounter-workspace{display:contents}.black-hole-encounter-panel{min-width:0;border-color:#977cff6b;background:radial-gradient(circle at 100% 0%,rgba(118,75,255,.2),transparent 20rem),radial-gradient(circle at 0% 100%,rgba(35,160,205,.12),transparent 18rem),linear-gradient(150deg,#081124fc,#040814fc)}.black-hole-encounter-panel h2,.black-hole-encounter-panel h3,.black-hole-encounter-panel h4,.black-hole-encounter-panel p{margin-top:0}.black-hole-encounter-panel h2{margin-bottom:0;font-family:var(--font-display);font-size:1.18rem}.black-hole-encounter-panel h3{margin-bottom:8px;font-size:.92rem}.black-hole-encounter-panel h4{margin-block:4px 9px;font-size:.84rem}.black-hole-encounter-panel button:focus,.black-hole-encounter-panel input:focus,.black-hole-encounter-panel select:focus{outline:2px solid var(--color-cyan);outline-offset:2px}.black-hole-choice-list,.black-hole-active,.black-hole-progress,.black-hole-diagnostics,.black-hole-outcomes,.black-hole-active-controls{display:grid;gap:12px}.black-hole-mode-distinction,.black-hole-mode-separator,.black-hole-encounter-panel .field-help{margin-bottom:0;color:var(--color-muted);font-size:.7rem;line-height:1.5}.black-hole-mode-separator{padding-inline:4px;text-align:center}.black-hole-option{display:grid;min-width:0;gap:10px;padding:14px;border:1px solid rgba(119,185,255,.28);border-radius:13px;background:#040d1dbd}.black-hole-physics-option{border-color:#4fcde85c}.black-hole-cinematic-option{border-color:#d067ff6b;background:radial-gradient(circle at 100% 0%,rgba(198,60,242,.14),transparent 15rem),#11061fc7}.black-hole-option>*,.black-hole-active>*{margin-bottom:0}.black-hole-parameter-controls,.black-hole-vector-field{min-width:0;margin:0;padding:0;border:0}.black-hole-parameter-controls>legend,.black-hole-vector-field>legend{margin-bottom:9px;color:var(--color-text);font-size:.78rem;font-weight:760}.black-hole-parameter-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.black-hole-vector-field{grid-column:1 / -1;padding:10px;border:1px solid rgba(123,167,233,.2);border-radius:10px;background:#0208136b}.black-hole-vector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.black-hole-encounter-panel .field-stack{min-width:0}.black-hole-encounter-panel .field-stack>span{display:block;margin-bottom:5px;font-size:.71rem;font-weight:700}.black-hole-encounter-panel input[type=number],.black-hole-encounter-panel select{width:100%;min-width:0;min-height:38px;padding:7px 9px;border:1px solid var(--color-line-strong);border-radius:9px;background:#020711d1;color:var(--color-text)}.black-hole-encounter-panel input[aria-invalid=true]{border-color:#ff8fb1d1;box-shadow:0 0 0 1px #ff8fb133}.black-hole-toggle-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:11px}.black-hole-toggle-controls label{display:flex;min-width:0;align-items:flex-start;gap:8px;color:var(--color-muted);font-size:.73rem;line-height:1.4}.black-hole-physical-summary,.black-hole-diagnostics,.black-hole-outcomes,.black-hole-body-states{min-width:0;padding:12px;border:1px solid rgba(126,171,255,.2);border-radius:11px;background:#0209158c}.black-hole-summary,.black-hole-diagnostics .inspector-grid,.black-hole-outcomes .inspector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.black-hole-progress label{display:grid;grid-template-columns:1fr auto;gap:7px 10px;color:var(--color-muted);font-size:.72rem}.black-hole-progress progress{width:100%;grid-column:1 / -1;accent-color:#9d83ff}.black-hole-body-states ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.black-hole-body-states li{display:grid;min-width:0;grid-template-columns:minmax(70px,.8fr) minmax(100px,1fr);gap:4px 8px;padding:8px;border:1px solid rgba(145,120,238,.18);border-radius:8px;background:#05061380;font-size:.7rem}.black-hole-body-states li progress,.black-hole-body-states li small{grid-column:1 / -1}.black-hole-body-states li strong{overflow-wrap:anywhere;color:#d9cfff;text-align:right}.black-hole-body-states li small{color:var(--color-dim);line-height:1.4}.black-hole-active-controls{padding-top:12px;border-top:1px solid rgba(145,120,238,.28)}.black-hole-active-controls .transport-row{display:flex;flex-wrap:wrap;gap:8px}.black-hole-event-hud{display:grid;position:absolute;z-index:4;bottom:82px;left:18px;width:min(430px,calc(100% - 36px));gap:5px;padding:13px 15px;border:1px solid rgba(111,206,238,.54);border-radius:12px;background:#030c19e8;box-shadow:0 14px 44px #00000073;pointer-events:none;backdrop-filter:blur(14px)}.black-hole-event-hud strong{color:#cdefff}.black-hole-event-hud span{color:var(--color-muted);font-size:.72rem;line-height:1.45}.black-hole-cinematic-hud{border-color:#d369ffa8;background:#180522ed}.black-hole-cinematic-hud strong{color:#f0cfff}.black-hole-confirmation .dialog-action-row{justify-content:flex-end}.black-hole-cinematic-confirmation .observatory-dialog-description{color:#efceff}@media(max-width:920px){.hero-copy,.dashboard-grid{grid-template-columns:1fr}.phase-three-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.phase-three-center{order:-1;grid-column:1 / -1}.hero-copy{align-items:start}.dashboard-grid{gap:14px}}@media(max-width:620px){.observatory-header,.observatory-main,.observatory-footer{width:min(calc(100% - 22px),var(--content-width))}.observatory-header{min-height:78px}.header-meta,.canvas-hint{display:none}.hero-copy{margin-top:12px}.canvas-section{min-height:430px;border-radius:16px}.observatory-canvas-frame,.observatory-canvas,.webgl-fallback{height:430px}.canvas-topbar{top:11px;right:61px;left:11px}.viewport-fullscreen-button{top:10px;right:10px;width:44px;min-height:44px;padding:0}.viewport-fullscreen-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%)}.mode-badge{min-height:26px;padding:4px 8px;font-size:.6rem}.canvas-legend{left:11px;right:11px;bottom:11px;width:auto;max-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:3px;overflow-x:auto;overscroll-behavior-inline:contain;padding:5px 6px 9px;font-size:.67rem;scrollbar-width:thin;touch-action:pan-x;-webkit-overflow-scrolling:touch}.canvas-legend-action{min-height:32px;flex:0 0 auto;padding-inline:5px}.control-panel{border-radius:16px}.panel-heading-row{align-items:flex-start}.input-action-row{align-items:stretch;flex-direction:column}.diagnostic-grid,.phase-three-dashboard{grid-template-columns:1fr}.phase-three-center{grid-column:auto}.body-list{max-height:330px}.body-list-item{min-height:46px}.inspector-grid{grid-template-columns:1fr}.body-screen-label:not([data-selected=true]){display:none}.observatory-footer{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){.observatory-app:before{opacity:.1}.loading-orbit{animation:none}}.observatory-app[data-motion-preference=reduce]:before{opacity:.1}.observatory-app[data-motion-preference=reduce] .loading-orbit{animation:none}@media(forced-colors:active){.observatory-app:before{display:none}.mode-badge,.control-panel,.canvas-section{border:1px solid CanvasText}}@media(max-width:1120px){.observatory-workspace{grid-template-columns:minmax(210px,230px) minmax(0,1fr)}.observatory-stage{grid-column:2;grid-row:1}.workspace-rail-left{grid-column:1;grid-row:1}.workspace-rail-right{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-rail-right .impact-lab-panel,.workspace-rail-right .solar-fate-panel,.workspace-rail-right .black-hole-encounter-panel{grid-column:1 / -1}.impact-parameter-grid,.black-hole-parameter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.observatory-header{align-items:flex-start;flex-direction:column;gap:10px;padding-block:12px}.header-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.observatory-workspace{grid-template-columns:1fr}.observatory-stage,.workspace-rail-left,.workspace-rail-right{grid-column:1;grid-row:auto}.observatory-stage{order:-1}.workspace-rail-right{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.observatory-header,.observatory-main,.observatory-footer{width:min(calc(100% - 18px),1800px)}.header-status{display:none}.stage-heading{align-items:flex-start;flex-direction:column;gap:4px}.workspace-title-row{align-items:flex-start;flex-direction:column;gap:3px}.workspace-title-row p{text-align:left}.observatory-stage .time-controls{display:block}.observatory-stage .time-controls>*+*{margin-top:18px}.observatory-stage .focus-controls{display:grid;grid-template-columns:1fr}.observatory-stage .focus-controls legend{grid-column:auto}.workspace-rail-right,.impact-parameter-grid,.impact-toggle-controls,.impact-physical-summary,.impact-visual-summary,.black-hole-parameter-grid,.black-hole-toggle-controls,.black-hole-summary,.black-hole-diagnostics .inspector-grid,.black-hole-outcomes .inspector-grid{grid-template-columns:1fr}.impact-event-hud,.solar-fate-event-hud,.black-hole-event-hud{bottom:64px;left:11px;width:calc(100% - 22px)}.solar-fate-summary{grid-template-columns:1fr}.observatory-dialog-backdrop{align-items:end;padding:8px}.observatory-dialog{max-height:calc(100vh - 16px);border-radius:16px}.shortcut-list,.provenance-facts,.science-glossary{grid-template-columns:1fr}}@media(max-width:430px){.command-button{min-height:40px;flex:1 1 auto}.stage-heading-actions{white-space:normal}.observatory-stage .focus-controls .segmented-row,.observatory-stage .transport-row{flex-wrap:wrap}.black-hole-vector-grid,.black-hole-body-states li{grid-template-columns:1fr}.black-hole-body-states li strong{text-align:left}}@media(min-width:821px){.observatory-app{display:flex;flex-direction:column;height:100dvh;max-height:100dvh;min-height:0;overflow:hidden}.observatory-header{flex:0 0 auto;min-height:54px;padding-block:6px}.observatory-main{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden;padding-bottom:8px}.workspace-title-row{flex:0 0 auto;min-height:0;padding:0 2px 6px}.observatory-workspace{flex:1 1 auto;min-height:0;align-items:stretch;overflow:hidden}.workspace-rail,.observatory-stage{min-height:0;max-height:100%;align-content:start;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.observatory-stage{grid-template-rows:auto minmax(240px,1fr) auto}.observatory-stage>.canvas-section{height:100%;min-height:0}.observatory-stage .observatory-canvas-frame,.observatory-stage .observatory-canvas,.observatory-stage .webgl-fallback{height:100%;min-height:0}.observatory-footer{flex:0 0 auto;padding:6px 0 8px}}@media(max-width:1120px)and (min-width:821px){.observatory-workspace{grid-template-rows:minmax(0,1fr) minmax(148px,30dvh)}}@media(max-width:820px){.canvas-section,.observatory-canvas-frame,.observatory-canvas,.webgl-fallback{height:clamp(300px,58dvh,640px);min-height:300px}.observatory-footer{padding:12px 0 16px}}.solar-fate-navigation{margin:1rem 0;padding:1rem 0;border-block:1px solid #294052}.solar-fate-stages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.solar-fate-stages button{display:flex;align-items:center;gap:.45rem;min-height:42px;padding:.55rem;border:1px solid #314b60;border-radius:9px;background:#0a1723;color:#a9bdce;font:inherit;font-size:.78rem;text-align:left;cursor:pointer}.solar-fate-stages button span{color:#6d8ba2;font-size:.7rem}.solar-fate-stages button[aria-current=step]{background:#163c50;border-color:#77c9eb;color:#e3f7ff}.solar-fate-stages button:hover:not(:disabled){border-color:#77c9eb}.solar-fate-stages button:focus-visible{outline:2px solid #9ee4ff;outline-offset:2px}.solar-fate-stage-description{min-height:3em;color:#b1c6d6;font-size:.8rem;line-height:1.5}.solar-fate-navigation select{width:100%;min-width:0;margin-top:.4rem}.observatory-app{display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:0;max-height:100dvh;overflow:hidden;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}.observatory-header,.observatory-main,.observatory-footer{width:min(calc(100% - 24px),1800px);min-width:0}.observatory-header{flex:none;min-height:60px;gap:12px;padding-block:6px}.brand-lockup{flex:0 1 auto;min-width:0}.brand-title{font-size:18px}.header-actions{flex:1;min-width:0;gap:6px;justify-content:flex-end}.header-status{display:none}.observatory-back-slot{flex:none}#iom-back-link.observatory-back-link{position:static!important;inset:auto!important;z-index:auto!important;display:inline-flex!important;align-items:center;justify-content:center;min-width:44px!important;min-height:44px!important;margin:0!important;padding:8px 10px!important;border:1px solid #304a5c!important;border-radius:10px!important;background:#091520!important;color:#b8d4e4!important;font-weight:600;line-height:1.3;font-family:inherit!important;font-size:12px!important;text-decoration:none!important;box-shadow:none!important}#iom-back-link.observatory-back-link:after{content:none!important}.observatory-main{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden;padding-bottom:6px}.workspace-title-row{flex:none;margin:0;padding:0 0 8px}.workspace-title-row h1{font-size:clamp(14px,1.35vw,21px)}.workspace-title-row p{display:none}.observatory-workspace{flex:1;display:grid;align-items:stretch;grid-template-columns:minmax(200px,224px) minmax(0,1fr) minmax(260px,294px);grid-template-rows:minmax(0,1fr);min-height:0;gap:10px;overflow:hidden}.workspace-rail{display:block;min-width:0;min-height:0;max-height:100%;overflow:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin}.workspace-rail-right{grid-column:auto}.workspace-rail>*+*{margin-top:10px}.observatory-stage{display:flex;flex-direction:column;gap:8px;min-width:0;min-height:0;overflow:hidden}.stage-heading{flex:none;min-height:48px;padding:8px 12px;gap:8px}.stage-heading-primary,.stage-heading-primary>span:last-child{min-width:0}.stage-heading-primary strong{overflow-wrap:anywhere;white-space:normal}.stage-heading-actions{min-width:0;font-size:10px;white-space:normal;overflow-wrap:anywhere}.observatory-stage>.canvas-section,.canvas-section{display:flex;flex:1;flex-direction:column;height:auto;min-height:0;overflow:hidden}.viewport-toolbar{display:flex;flex:none;flex-wrap:wrap;gap:6px;padding:6px 8px;background:#08121d;border-bottom:1px solid #253948}.viewport-toolbar>button{font-size:12px;padding:8px 10px}.viewport-toolbar .viewport-fullscreen-button{position:static;margin-left:auto;transform:none;flex:0 0 auto;border-radius:9px}.viewport-surface{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);flex:1;min-height:0;min-width:0;position:relative;background:#03070c}.viewport-surface .observatory-canvas-frame{grid-column:1 / -1;grid-row:2;position:relative;height:100%;min-height:0;min-width:0;overflow:hidden}.viewport-surface .observatory-canvas{display:block;width:100%;height:100%;min-height:0;touch-action:none}.viewport-surface .webgl-fallback{height:100%;min-height:0;overflow:auto}.viewport-menus{grid-column:1 / -1;grid-row:1;display:flex;flex-direction:column;min-width:0;min-height:44px;max-height:min(40dvh,260px);overflow:hidden;background:#08131e;border-bottom:1px solid #253948}.viewport-menu-tabs{display:flex;flex:none;min-height:44px}.viewport-menu-tabs>button{flex:1;min-width:0;min-height:44px;padding:10px 12px;border:0;border-radius:0;background:transparent;color:#a3cbdc;font-size:12px;font-weight:600;text-align:left}.viewport-menu-tabs>button[aria-expanded=true]{background:#11293a;color:#d9f5ff}.viewport-menu-tabs>button:focus-visible{outline-offset:-3px}.viewport-menus .viewport-menu-content{position:static;inset:auto;display:block;width:100%;min-width:0;min-height:0;margin:0;max-height:none;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4c7189 #08131e;pointer-events:auto}.viewport-menus .viewport-menu-content[hidden]{display:none}.viewport-surface .badge-stack{display:flex;flex-wrap:wrap;padding:6px;margin:0;max-width:100%;gap:6px}.viewport-surface .mode-badge{white-space:normal;overflow-wrap:anywhere;max-width:100%;font-size:10px}.viewport-surface .canvas-legend{position:static;inset:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));width:100%;max-width:100%;margin:0;padding:6px;overflow:visible;border:none;border-radius:0;transform:none;gap:4px}.viewport-surface .canvas-legend-action{flex:1 1 70px;min-height:44px;padding:8px;font-size:12px;justify-content:center}.viewport-surface :is(.impact-event-hud,.solar-fate-event-hud,.black-hole-event-hud,.cinematic-tour-status){position:static;inset:auto;grid-column:1 / -1;width:auto;max-width:100%;max-height:22dvh;overflow:auto;margin:0;padding:8px 12px;border-radius:0;font-size:11px}.canvas-hint{max-width:calc(100% - 24px);font-size:10px;bottom:8px;left:12px;pointer-events:none}.body-label-layer .body-screen-label{display:flex;align-items:center;justify-content:center;pointer-events:auto;min-width:44px;min-height:44px;max-width:min(164px,calc(100% - 8px));padding:0 3px;border:0;border-radius:6px;background:transparent;font:600 12px/1.35 var(--font-body);white-space:nowrap;color:#d8e9f6;text-shadow:0 1px 3px #000,0 0 5px #000,0 0 10px #000;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none}.body-screen-label>span{overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid transparent}.body-label-layer .body-screen-label[data-selected=true]{background:transparent;color:#9be5ff}.body-screen-label[data-selected=true]>span{border-bottom-color:#83d7fb}.body-label-layer .body-screen-label:is(:hover,:focus-visible){background:#102839bd}.body-label-layer :is(.natural-satellite-screen-label,.space-object-screen-label){border:0;background:transparent;box-shadow:none;text-shadow:0 1px 3px #000,0 0 5px #000}.body-label-layer[data-names-visible=false] :is(.body-screen-label,.natural-satellite-screen-label,.space-object-screen-label){visibility:hidden!important;pointer-events:none!important}.workspace-time{display:none;min-height:0;min-width:0;max-height:44dvh;overflow:auto;overscroll-behavior:contain}.observatory-app[data-workspace-panel=time] .workspace-time{display:block;flex:0 1 44dvh}.compact-panel-heading{display:none}.time-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;background:#102334}.workspace-dock{display:none}.observatory-footer{flex:none;padding:3px 0}.observatory-footer p{font-size:10px;margin:0}.observatory-footer a{display:inline-flex;align-items:center;min-height:44px}.observatory-app :is(button,select,input:not([type=checkbox]):not([type=radio]),summary){min-width:44px;min-height:44px;box-sizing:border-box}.observatory-app button{cursor:pointer;line-height:1.35}.observatory-app button:disabled{cursor:not-allowed}.observatory-app :is(button,a,input,select,summary):focus-visible{outline:2px solid #99e1ff!important;outline-offset:-3px}.observatory-app :is(input,select,fieldset,.field-stack,.input-action-row){min-width:0;max-width:100%}.observatory-app label:has(input[type=checkbox]),.observatory-app label:has(input[type=radio]){min-height:44px;align-items:center}.observatory-app .segmented-row{flex-wrap:wrap}.observatory-app .segmented-row>button{white-space:normal;flex:1 1 100px}.observatory-app .body-list-item{min-height:52px}.observatory-app .body-list-item strong{overflow-wrap:anywhere}.observatory-app .body-list{max-height:min(50dvh,420px);overflow:auto;overscroll-behavior:contain}.observatory-dialog-backdrop{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.observatory-dialog{max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 16px);width:min(100%,1000px);min-width:0}.observatory-dialog-content{min-height:0;overflow:auto;overscroll-behavior:contain;overflow-wrap:anywhere}.canvas-section[data-fullscreen-active=true]{height:100dvh;max-height:100dvh;min-height:0;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}.canvas-section[data-fullscreen-active=true] .viewport-fullscreen-button{position:static}.canvas-section[data-fullscreen-active=true] :is(.observatory-canvas-frame,.observatory-canvas){height:100%;min-height:0}@media(max-width:1100px),(max-height:600px){.observatory-header,.observatory-main,.observatory-footer{width:calc(100% - 16px)}.observatory-header{flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px;min-height:54px;padding-block:4px}.brand-lockup{flex:1;gap:8px}.brand-orbit{width:30px;height:30px;flex:0 0 30px}.brand-title{font-size:15px}.brand-kicker{font-size:9px;letter-spacing:.14em}.header-actions{display:none;flex:0 0 100%;max-height:35dvh;overflow:auto;padding:8px;background:#0b1927;border:1px solid #30495b;border-radius:12px}.observatory-app[data-workspace-panel=tools] .header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.header-actions .compact-panel-heading{grid-column:1 / -1}.workspace-title-row{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.observatory-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:6px}.workspace-rail{display:none;max-height:42dvh;grid-column:1;grid-row:2;border:1px solid #30495b;border-radius:12px;background:#0b1725}.observatory-app[data-workspace-panel=objects] .workspace-rail-left,.observatory-app[data-workspace-panel=view] .workspace-rail-right{display:block}.observatory-app:is([data-workspace-panel=objects],[data-workspace-panel=view],[data-workspace-panel=tools]) .observatory-workspace{grid-template-rows:minmax(0,1fr) minmax(0,42dvh)}.observatory-stage{grid-column:1;grid-row:1;gap:5px}.stage-heading{min-height:44px;padding:5px 10px}.stage-heading-primary strong{font-size:13px}.stage-heading-primary small{font-size:9px}.stage-heading-actions{display:none}.compact-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;font-size:13px;background:#102334}.workspace-rail>.compact-panel-heading{position:sticky;top:0;z-index:3}.workspace-dock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex:none;gap:5px;padding:4px 8px 6px;background:#060d15}.workspace-dock button{padding:8px 3px;font-size:12px;border-radius:10px}.workspace-dock button[aria-expanded=true]{background:#16445d;border-color:#89dfff;color:#effaff}.desktop-time-toggle{display:none}.viewport-toolbar{gap:4px;padding:4px 6px}.viewport-toolbar .viewport-fullscreen-label{display:inline;position:static;width:auto;height:auto;clip:auto;clip-path:none}.viewport-toolbar .viewport-fullscreen-button{width:auto;min-width:44px}.viewport-fullscreen-icon{width:14px;height:14px}.canvas-hint{display:none}.workspace-time .time-controls{display:flex;flex-direction:column;gap:12px}.workspace-time .focus-controls{display:flex;flex-direction:column}.workspace-time .input-action-row{display:flex;flex-wrap:wrap}.workspace-time input[type=datetime-local]{flex:1 1 180px;width:100%}.observatory-footer{display:none;max-height:15dvh;overflow:auto}.observatory-app[data-workspace-panel=tools] .observatory-footer{display:block}.control-panel,.workspace-rail .control-panel{padding:12px}.observatory-dialog-header{align-items:start;gap:8px;padding:12px}.observatory-dialog-header h2{font-size:20px;overflow-wrap:anywhere}.observatory-dialog-content{padding:12px}}@media(orientation:landscape)and (max-height:600px){.brand-kicker{display:none}.observatory-header{min-height:48px}.observatory-app:is([data-workspace-panel=objects],[data-workspace-panel=time],[data-workspace-panel=view],[data-workspace-panel=tools]) .observatory-workspace{grid-template-columns:minmax(0,1fr) min(340px,42%);grid-template-rows:auto minmax(0,1fr)}.observatory-stage{display:contents}.stage-heading{grid-row:1;grid-column:1;min-height:32px}.observatory-stage>.canvas-section{grid-row:2;grid-column:1}.observatory-workspace{grid-template-rows:auto minmax(0,1fr)}.observatory-app .workspace-rail,.observatory-app .workspace-time{grid-row:1 / 3;grid-column:2;max-height:100%}.viewport-toolbar{padding-block:2px}.viewport-menu-tabs>button{padding-block:12px}.viewport-menus{max-height:100px}}.viewport-toolbar>button,.workspace-dock>button,.compact-panel-heading>button,.time-panel-heading>button{background:#0b1b2b;border:1px solid #37566c;color:#dcebf4;border-radius:9px;font-size:12px;font-weight:600;padding:8px 12px}.viewport-toolbar>button:hover:not(:disabled),.workspace-dock>button:hover,.compact-panel-heading>button:hover,.time-panel-heading>button:hover{background:#17384e;border-color:#82cde9}body{min-height:100dvh}.observatory-dialog :is(button,select,input:not([type=checkbox]),summary){min-width:44px;min-height:44px}@media(orientation:landscape)and (max-height:600px){.viewport-surface :is(.impact-event-hud,.solar-fate-event-hud,.black-hole-event-hud,.cinematic-tour-status){max-height:48px}}@media(min-width:1101px)and (min-height:601px){.observatory-app[data-workspace-panel=time] .workspace-time{flex-basis:34dvh;max-height:34dvh}}.workspace-rail-tools{display:none}@media(max-width:1100px),(max-height:600px){.observatory-app[data-workspace-panel=tools] .workspace-rail-tools{display:block}.workspace-rail-tools .header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;margin:0;padding:6px;border:none;overflow:visible}.workspace-rail-tools .observatory-footer{display:block;max-height:none;width:100%;padding:12px;overflow:visible}.workspace-rail-tools .observatory-footer a{font-size:12px}.observatory-app :is(input:not([type=range]):not([type=checkbox]),select){font-size:16px}}@media(max-width:1100px),(max-height:600px){.viewport-surface :is(.impact-event-hud,.solar-fate-event-hud,.black-hole-event-hud){max-height:88px}}@media(orientation:landscape)and (max-height:600px){.viewport-surface :is(.impact-event-hud,.solar-fate-event-hud,.black-hole-event-hud){max-height:48px}}.observatory-app[data-compact=true] .body-list{max-height:none;overflow:visible}.viewport-toolbar .scenario-exit-button{border-color:var(--accent, #79d9ff);color:#d4f4ff}.viewport-toolbar .scenario-exit-error{flex-basis:100%;font-size:12px;color:#ffcbab}.viewport-fullscreen-icon{width:20px;height:20px;flex:0 0 20px}.startup-screen{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:radial-gradient(ellipse at top,#11263c,#040a13 75%);overflow:auto}.startup-card{width:min(100%,420px);text-align:center}.startup-card h1{font-size:clamp(24px,5vw,32px);margin:12px 0 24px}.startup-card .startup-percent{font-size:40px;color:#91dfff;margin:12px 0;font-variant-numeric:tabular-nums}.startup-card progress{display:block;width:100%;height:10px;border:0;border-radius:8px;overflow:hidden;background:#162d41;accent-color:#80d8ff}.startup-card progress::-webkit-progress-bar{background:#162d41}.startup-card progress::-webkit-progress-value{background:#80d8ff}.startup-card progress::-moz-progress-bar{background:#80d8ff}.startup-detail{color:#93aabc;font-size:13px;line-height:1.6}.body-location-dot{position:absolute;top:0;left:0;width:5px;height:5px;border-radius:50%;background:var(--body-dot-color, #d7eaff);box-shadow:0 0 4px var(--body-dot-color, #d7eaff);opacity:0;pointer-events:none}.body-label-layer .body-screen-label{z-index:1}.viewport-toolbar .object-names-toggle[aria-pressed=true]{color:#b4ebff;border-color:#58839a}@media(max-width:700px){.viewport-toolbar .viewport-fullscreen-label{display:none}.viewport-toolbar .viewport-fullscreen-button{padding-inline:10px}.viewport-toolbar .viewport-fullscreen-icon{width:18px;height:18px}}.body-label-layer button.natural-satellite-screen-label{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 6px;pointer-events:auto;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;border-radius:6px}.body-label-layer button.natural-satellite-screen-label:is(:hover,:focus-visible){background:#102839bd;outline:1px solid #83d7fb}.lesson-panel,.data-mode-panel{min-width:0;min-height:0;background:#0b1927;color:#cfdfeb;font-size:14px;line-height:1.55;overflow-wrap:anywhere}.lesson-panel{grid-column:1 / -1;grid-row:3;display:flex;flex-direction:column;max-height:46dvh;border-top:1px solid #395267}.lesson-panel-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 12px;flex:none}.lesson-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 14px 12px}.lesson-scroll h2{font-size:21px;margin-block:12px}.lesson-objective,.lesson-context{font-size:12px}.lesson-context{color:#a6ccdf;border-left:2px solid #67cdec;padding-left:9px}.lesson-navigation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;flex:none;border-top:1px solid #395267}.lesson-navigation .lesson-motion{grid-column:1 / -1}.lesson-panel button,.data-mode-panel button{background:#112b3e;color:#d9efff;border:1px solid #52758d;border-radius:8px;padding:8px;min-height:44px;font-size:12px}.lesson-panel button:disabled,.data-mode-panel button:disabled{opacity:.45}.lesson-panel button[aria-pressed=true]{background:#225775;border-color:#83dcff}.lesson-panel table{border-collapse:collapse;width:100%;margin-block:12px;font-size:12px}.lesson-panel caption{text-align:left;padding-bottom:6px}.lesson-panel th,.lesson-panel td{border:1px solid #395267;padding:6px;text-align:left}.lesson-question{border:1px solid #395267;padding:10px;margin-block:14px;min-width:0}.lesson-question button{display:block;width:100%;margin-block:6px;text-align:left}.lesson-sources summary{display:flex;align-items:center;min-height:44px;cursor:pointer}.lesson-sources a{color:#9ddeff;display:inline-flex;align-items:center;min-height:44px}.data-mode-panel{grid-column:1 / -1;grid-row:2;overflow:auto;overscroll-behavior:contain;padding:16px}.data-mode-panel h2{font-size:24px}.data-mode-panel .field-stack{margin-block:14px}.data-facts{display:flex;flex-wrap:wrap;gap:14px}.data-facts div{flex:1 1 120px}.data-facts dd{margin:0}.observatory-app[data-data-mode=true] .observatory-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.observatory-app[data-data-mode=true] :is(.workspace-rail,.workspace-time,.workspace-dock,.header-actions,.viewport-menus,.observatory-canvas-frame,.desktop-time-toggle,.observatory-load-state){display:none}.observatory-app[data-data-mode=true] .viewport-surface{grid-template-rows:0 minmax(0,1fr)}.observatory-app[data-data-mode=true] .observatory-stage{display:flex;grid-row:1;grid-column:1}.observatory-app[data-data-mode=true] .observatory-stage>.canvas-section{grid-row:auto}.observatory-app[data-lesson-active=true] :is(.workspace-dock,.workspace-time,.viewport-menus,.workspace-rail-right,.desktop-time-toggle){display:none}.observatory-app[data-lesson-active=true] .observatory-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.observatory-app[data-lesson-active=true] .workspace-rail-left{display:none}.observatory-app[data-lesson-active=true] .viewport-surface{grid-template-rows:0 minmax(0,1fr) auto}.observatory-app[data-lesson-active=true][data-data-mode=true] .data-mode-panel{display:none}.observatory-app[data-lesson-active=true][data-data-mode=true] .lesson-panel{grid-row:2 / 4;max-height:none}@media(min-width:700px),(orientation:landscape)and (max-height:600px){.observatory-app[data-lesson-active=true] .viewport-surface{grid-template-columns:minmax(0,1fr) minmax(260px,36%);grid-template-rows:0 minmax(0,1fr)}.observatory-app[data-lesson-active=true] .observatory-canvas-frame{grid-column:1}.observatory-app[data-lesson-active=true] .lesson-panel{grid-column:2;grid-row:1 / 3;max-height:none;border-top:0;border-left:1px solid #395267}.observatory-app[data-lesson-active=true][data-data-mode=true] .lesson-panel{grid-column:1 / -1}}.lesson-date-notice{grid-column:1 / -1;margin:0;font-size:11px;color:#e5cc8b}.lesson-choices{display:grid;gap:12px}.lesson-choices button{display:grid;gap:7px;width:100%;min-height:44px;padding:16px;text-align:left;background:#112b3e;color:#d9efff;border:1px solid #52758d;border-radius:12px}.lesson-choices strong{font-size:18px}.lesson-choices span{font-size:14px;line-height:1.5}.lesson-choices small{color:#a6ccdf}.lesson-picker :focus-visible{outline:2px solid #99e1ff;outline-offset:-3px}.lesson-readout{border:1px solid #395267;border-radius:10px;padding:10px;margin:14px 0}.lesson-diagram{display:block;width:100%;max-width:330px;height:auto;margin-inline:auto}.lesson-diagram text{fill:#d9efff;font-size:12px;font-family:inherit}.lesson-caption,.eclipse-diagram figcaption{font-size:12px;line-height:1.45;color:#b4cad9}.lesson-measurements{font-size:13px}.lesson-measurements div{margin-block:9px}.lesson-measurements dt{color:#abc3d4}.lesson-measurements dd{margin:0;font-weight:600}.daylight-row{display:grid;gap:4px;margin-block:10px;font-size:12px}.daylight-row meter{width:100%;height:14px}.moon-phase-disc{max-width:170px}@media(orientation:landscape)and (max-height:450px){.lesson-navigation{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.lesson-navigation .lesson-navigation-exit{display:none}.lesson-navigation .lesson-motion{grid-column:auto}.lesson-navigation button{font-size:11px;padding:4px}.observatory-app[data-lesson-active=true] .stage-heading{display:none}.observatory-app[data-lesson-active=true] .observatory-stage>.canvas-section{grid-row:1}.lesson-panel-heading{padding:4px 8px;gap:2px 6px}.lesson-panel-heading .eyebrow{font-size:10px;letter-spacing:.06em}.lesson-date-notice{font-size:10px;line-height:1.4}.lesson-scroll h2{font-size:18px;margin-block:8px}}
