@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{--bg-1:#080d1d;--bg-2:#101a3a;--panel:rgba(10,18,45,.74);--panel-border:rgba(125,255,255,.2);--text:#f2f8ff;--muted:#a1b5d8;--accent:#6ff3ff}*{box-sizing:border-box}body,html{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:Space Grotesk,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(circle at 15% -10%,rgba(94,197,255,.25),transparent 40%),radial-gradient(circle at 80% 0,rgba(124,255,200,.2),transparent 35%),linear-gradient(170deg,var(--bg-1),var(--bg-2))}.page-shell{width:100%;height:100vh;padding:1rem;display:flex;flex-direction:column;overflow:hidden}.header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.65rem}.title{margin:0;letter-spacing:.06em;text-transform:uppercase;font-size:clamp(1.2rem,2vw,1.9rem)}.subtitle{margin-top:.4rem;color:var(--muted)}.hero{background:linear-gradient(130deg,rgba(24,39,83,.8),rgba(10,18,40,.8));border:1px solid var(--panel-border);border-radius:1.4rem;padding:.75rem 1rem;margin-bottom:.75rem}.status-grid{display:grid;grid-gap:1rem;gap:1rem}.workspace-grid{flex:1 1;width:100%}.visual-workspace,.workspace-grid{display:grid;min-width:0;min-height:0}.workspace-pane{min-width:0;min-height:0}.mission-pane{overflow-x:hidden;overflow-y:auto}.visualization-pane{overflow:hidden;padding:.7rem}.earth-workspace-pane .orbit-viewer,.mercator-workspace-pane .mercator-viewer{height:100%;min-height:0;margin:0;display:flex;flex-direction:column}.earth-workspace-pane .orbit-canvas,.mercator-workspace-pane .mercator-map-wrap{min-width:0;min-height:0;height:auto;flex:1 1;resize:none}.earth-workspace-pane .orbit-detached-placeholder,.mercator-workspace-pane .mercator-detached-placeholder{height:100%;margin:0}.mercator-workspace-pane{display:flex;flex-direction:column}.mercator-workspace-pane>.mercator-viewer,.mercator-workspace-pane>:not(.panel-title):not(.workspace-summary){min-height:0;flex:1 1}.workspace-summary{flex:0 0 auto}.workspace-summary .caption{margin:.45rem 0 0}.workspace-summary .log-box{max-height:78px;margin-top:.35rem;padding:.55rem .7rem}.pane-divider{position:relative;z-index:5;padding:0;touch-action:none;outline:none}.pane-divider:after{content:"";position:absolute;border-radius:999px;background:rgba(111,243,255,.22);transition:background .14s ease,box-shadow .14s ease}.pane-divider:focus-visible:after,.pane-divider:hover:after{background:var(--accent);box-shadow:0 0 14px rgba(111,243,255,.65)}.pane-divider-vertical{cursor:col-resize}.pane-divider-vertical:after{inset:12px 3px}.pane-divider-horizontal{cursor:row-resize}.pane-divider-horizontal:after{inset:3px 12px}.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:1rem;padding:1rem}.panel-title{margin:0 0 .8rem;color:var(--accent);font-size:1.1rem}.control-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.3rem;gap:.3rem;margin-bottom:.9rem;padding:.3rem;border:1px solid rgba(111,243,255,.2);border-radius:.75rem;background:linear-gradient(135deg,rgba(9,30,54,.92),rgba(4,14,31,.94)),repeating-linear-gradient(90deg,transparent 0 18px,rgba(111,243,255,.025) 18px 19px)}.control-tab{min-width:0;padding:.55rem .35rem;border:1px solid transparent;border-radius:.5rem;background:transparent;color:rgba(214,236,247,.64);font-size:.68rem;font-weight:700;letter-spacing:.055em;line-height:1.2;text-transform:uppercase;cursor:pointer}.control-tab:hover{color:#effcff;background:rgba(111,243,255,.07)}.control-tab[aria-selected=true]{border-color:rgba(111,243,255,.5);background:linear-gradient(145deg,rgba(24,83,105,.92),rgba(9,42,68,.96));color:#f3fdff;box-shadow:inset 0 0 18px rgba(111,243,255,.08),0 5px 16px rgba(0,0,0,.26)}.control-tab:focus-visible{outline:2px solid #ffe28a;outline-offset:2px}.control-tab-panel{animation:control-tab-reveal .18s ease-out}.control-tab-panel[hidden]{display:none}.visual-toggle-grid{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;margin-bottom:.9rem}.visual-toggle{display:flex;align-items:center;gap:.45rem;color:#d4e5eb;font-size:.78rem;cursor:pointer}.visual-toggle:hover{color:#f2fdff}.visual-toggle input[type=checkbox]{width:.95rem;height:.95rem;margin:0;flex:0 0 auto;accent-color:#6ff3ff}.backend-terminal{position:fixed;right:1rem;bottom:0;width:min(58rem,calc(100vw - 28rem));min-width:32rem;z-index:50;border:1px solid rgba(86,225,255,.42);border-bottom:0;border-radius:.7rem .7rem 0 0;background:rgba(1,7,15,.97);box-shadow:0 -12px 36px rgba(0,0,0,.42);color:#d8f5ff}.backend-terminal summary{display:flex;min-height:2.35rem;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem .85rem;cursor:pointer;color:#58e9ff;font-family:IBM Plex Mono,Courier New,monospace;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.backend-terminal summary::marker{color:#58e9ff}.backend-terminal-status{color:#91a9b8;font-size:.68rem;letter-spacing:.12em}.backend-terminal-status.status-running{color:#ffd86a}.backend-terminal[open] pre{max-height:min(36vh,28rem);margin:0;overflow:auto;border-top:1px solid rgba(86,225,255,.22);padding:.9rem 1rem 1.1rem;background:linear-gradient(rgba(20,255,174,.025) 1px,transparent 0),#01060c;background-size:100% 1.45rem;color:#a9f4cb;font:.76rem/1.48 IBM Plex Mono,Courier New,monospace;white-space:pre-wrap;overflow-wrap:anywhere}@media (max-width:720px){.backend-terminal{right:.4rem;left:.4rem;width:auto;min-width:0}.backend-terminal[open] pre{max-height:42vh}}.transport-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.42rem;gap:.42rem;margin:.2rem 0 .9rem}.transport-button{padding:.48rem .4rem;border:1px solid rgba(111,243,255,.38);background:rgba(7,31,52,.92);color:var(--accent);font-size:.72rem;text-transform:uppercase}.transport-button:hover:not(:disabled),.transport-button[aria-pressed=true]{border-color:rgba(111,243,255,.8);background:rgba(18,67,88,.94);color:#f2fdff}.transport-button:disabled{cursor:default}.satellite-controls{display:grid;grid-gap:.75rem;gap:.75rem}.satellite-group{min-width:0;margin:0;padding:.75rem;border:1px solid rgba(111,243,255,.2);border-radius:.7rem;background:linear-gradient(145deg,rgba(7,27,49,.8),rgba(4,14,31,.88)),repeating-linear-gradient(135deg,transparent 0 14px,rgba(111,243,255,.018) 14px 15px)}.satellite-group legend{padding:0 .4rem;color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.satellite-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.38rem .7rem;gap:.38rem .7rem}.satellite-propagator-row{display:flex;flex-wrap:wrap;gap:.45rem .9rem}.satellite-choice{display:inline-flex;align-items:center;gap:.42rem;min-width:0;color:#d4e5eb;cursor:pointer}.satellite-choice input[type=checkbox],.satellite-choice input[type=radio]{width:.95rem;height:.95rem;margin:0;flex:0 0 auto;accent-color:var(--accent)}.satellite-choice:has(input:disabled){color:rgba(212,229,235,.42);cursor:not-allowed}.satellite-wide-choice{margin:.25rem 0 .7rem}.satellite-field input{min-width:0;width:10.5rem}.satellite-file-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.5rem;gap:.5rem}.satellite-native-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.satellite-browse{display:inline-flex;align-items:center;justify-content:center;width:auto;padding:.55rem .8rem;border-radius:.55rem;background:linear-gradient(90deg,#4fd0ff,#64ffca);color:#041028;font-weight:700;cursor:pointer}.satellite-browse.is-disabled{opacity:.45;pointer-events:none}.satellite-time-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:.55rem;gap:.55rem;margin-top:.35rem}.secondary-action{border:1px solid rgba(111,243,255,.36);background:rgba(7,31,52,.92);color:var(--accent)}.satellite-apply-notice{margin-top:.55rem;color:#a7ffd9;font-size:.76rem}.satellite-derived{border-color:rgba(255,226,138,.28)}.satellite-derived legend{color:#ffe28a}@keyframes control-tab-reveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.field{display:grid;grid-template-columns:1fr auto;grid-gap:.55rem;gap:.55rem;margin-bottom:.65rem;align-items:center}label{color:var(--muted);font-size:.84rem}button,input,select,textarea{width:100%;padding:.55rem .65rem;border:1px solid rgba(146,201,252,.34);border-radius:.55rem;background:#060d23;color:#f1f7ff;font-size:.9rem}textarea{min-height:110px}button{cursor:pointer;border:none;font-weight:600;letter-spacing:.03em;background:linear-gradient(90deg,#4fd0ff,#64ffca);color:#041028}button:disabled{opacity:.45;cursor:wait}.viz-card{border:1px solid rgba(111,238,255,.25);border-radius:1rem;padding:.85rem;background:rgba(5,12,30,.58);margin-bottom:1rem}.viz-card h3{margin:0}.orbit-viewer{width:100%}.orbit-viewer-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.orbit-window-button{width:auto;flex:0 0 auto;padding:.48rem .75rem;border:1px solid rgba(111,243,255,.42);background:rgba(6,21,42,.86);color:var(--accent);font-size:.76rem;text-transform:uppercase}.orbit-window-button:hover:not(:disabled){border-color:var(--accent);background:rgba(21,55,75,.94)}.orbit-window-error{margin:.65rem 0 0;color:#ffb7c8;font-size:.82rem}.mercator-detached-placeholder,.orbit-detached-placeholder{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:118px;margin-bottom:1rem;padding:1rem;border:1px dashed rgba(111,243,255,.45);border-radius:1rem;background:linear-gradient(135deg,rgba(16,44,73,.62),rgba(5,12,30,.7)),repeating-linear-gradient(135deg,transparent 0 12px,rgba(111,243,255,.03) 12px 13px)}.mercator-detached-placeholder div,.orbit-detached-placeholder div{display:grid;grid-gap:.3rem;gap:.3rem}.mercator-detached-placeholder span,.orbit-detached-placeholder span{color:var(--muted);font-size:.82rem}.orbit-pip-body{min-height:100vh;padding:.75rem;overflow:hidden}.orbit-pip-body .orbit-viewer{height:calc(100vh - 1.5rem);margin:0;display:flex;flex-direction:column}.orbit-floating-panel{position:fixed;right:1rem;bottom:1rem;z-index:1000;width:min(900px,calc(100vw - 2rem));height:min(640px,calc(100vh - 2rem));min-width:360px;min-height:320px;resize:both;overflow:hidden;border-radius:1rem;box-shadow:0 22px 70px rgba(0,0,0,.66)}.orbit-floating-panel .orbit-viewer{height:100%;margin:0;display:flex;flex-direction:column;background:rgba(5,12,30,.97);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mercator-pip-body{min-height:100vh;padding:.75rem;overflow:hidden}.mercator-pip-body .mercator-viewer{height:calc(100vh - 1.5rem);margin:0;display:flex;flex-direction:column}.mercator-floating-panel{position:fixed;right:1rem;bottom:1rem;z-index:1000;width:min(1000px,calc(100vw - 2rem));height:min(600px,calc(100vh - 2rem));min-width:420px;min-height:340px;resize:both;overflow:hidden;border-radius:1rem;box-shadow:0 22px 70px rgba(0,0,0,.66)}.mercator-floating-panel .mercator-viewer{height:100%;margin:0;display:flex;flex-direction:column;background:rgba(5,12,30,.97);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mercator-floating-panel .mercator-map-wrap,.mercator-pip-body .mercator-map-wrap,.orbit-floating-panel .orbit-canvas,.orbit-pip-body .orbit-canvas{min-width:0;min-height:0;height:auto;flex:1 1;resize:none}.caption{margin-top:.4rem;margin-bottom:.8rem;color:var(--muted);font-size:.87rem}.orbit-canvas{width:100%;height:420px;resize:none;overflow:auto;min-height:280px;min-width:320px;border-radius:.65rem;overflow:hidden;border:1px solid rgba(150,255,255,.2);display:flex}.orbit-canvas canvas{width:100%!important;height:100%!important}.mercator-map-wrap{position:relative;width:100%;height:420px;border-radius:.65rem;overflow:hidden;border:1px solid rgba(159,238,255,.25);resize:none;min-height:260px;min-width:320px;background-color:#06162b}.mercator-image{width:100%;height:100%;object-fit:fill;display:block;filter:saturate(1.1) contrast(1.03)}.mercator-illumination{z-index:1;image-rendering:auto}.mercator-illumination,.mercator-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.mercator-overlay{z-index:2}.mercator-orbit-animation{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none}.log-box{margin-top:.8rem;background:rgba(5,11,22,.85);border:1px solid rgba(146,223,246,.3);border-radius:.5rem;padding:.8rem;max-height:190px;overflow:auto;white-space:pre-wrap;color:#d4f5ff;font-size:.75rem;line-height:1.45}.error{border-color:rgba(255,146,170,.5);color:#ffccda}.actions{margin-top:.8rem;width:100%}@media (max-width:900px){body,html{height:auto;overflow:auto}.page-shell{min-height:100vh;height:auto;overflow:visible}.visual-workspace,.workspace-grid{display:flex;flex-direction:column}.mission-pane{overflow:visible}.pane-divider{display:none}.visualization-pane{min-height:560px;margin-top:1rem}}@media (max-width:560px){.mercator-detached-placeholder,.orbit-detached-placeholder,.orbit-viewer-header{align-items:stretch;flex-direction:column}.orbit-window-button{width:100%}.mercator-floating-panel,.orbit-floating-panel{inset:0;width:100vw;height:100vh;min-width:0;min-height:0;border-radius:0;resize:none}}