:root{color-scheme:dark;--bg:#080e18;--panel:#0d1623;--border:#ffffff12;--muted:#8191a8;--mint:#5ce6d0;--gold:#e8bb74}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#e8edf5;font:14px 'Noto Sans SC',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:1px solid transparent;background:none;border-radius:6px;padding:9px 13px;transition:.2s}button:hover{background:#ffffff0c;color:var(--mint)}button:disabled{opacity:.35;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--mint);outline-offset:3px}a{color:inherit;text-decoration:none}header{height:80px;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 30px;gap:60px;background:#0b121d;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:12px;font-size:23px;letter-spacing:4px;font-weight:600}.brand-icon{color:var(--mint);font-size:43px;font-weight:400}.brand small{display:block;font:9px 'Space Grotesk',sans-serif;letter-spacing:2px;color:var(--muted);margin-top:4px}nav{display:flex;height:100%;gap:16px}nav button{border-radius:0;color:var(--muted);padding:0 16px}nav .active{border-bottom:2px solid var(--mint);color:var(--mint)}.header-right{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}.header-right button{margin-left:18px;font-size:12px;color:#d0dce9}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px #5ce6d077;flex-shrink:0}.outline{border:1px solid #ffffff20;background:#101c2b88}.primary{background:var(--mint);color:#062420;font-weight:600}.primary:hover{background:#8df3e2;color:#062420}main{display:flex;height:calc(100dvh - 80px);min-height:600px}.sidebar{width:310px;flex-shrink:0;background:linear-gradient(160deg,#101b2a,#0a121e);border-right:1px solid var(--border);padding:29px 23px 0;display:flex;flex-direction:column;z-index:1}.eyebrow{font:10px 'Space Grotesk',sans-serif;letter-spacing:2.7px;color:var(--mint)}h1{font-size:25px;margin:14px 0 25px;letter-spacing:1px}h1 span{display:block;color:var(--muted);font-size:11px;font-weight:400;letter-spacing:1px;margin-top:10px}.search{display:flex;align-items:center;border:1px solid #ffffff16;border-radius:6px;padding:0 10px;color:var(--muted);font-size:23px;background:#060d17}.search input{width:100%;background:none;border:0;padding:12px 7px;font-size:11px;outline:none}.section-head{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#b9c6d8;margin:23px 0 12px}.text-button{font-size:11px;color:var(--muted);padding:3px 0}.category{display:flex;align-items:center;gap:11px;padding:11px 9px;border-radius:5px;cursor:pointer;font-size:12px;color:#b5c1d2}.category:hover,.category:has(input:checked){background:#5ce6d009}.category input{accent-color:var(--mint);width:14px;height:14px;margin:0}.category small{margin-left:auto;color:#6e8199;font-family:'Space Grotesk',sans-serif}.list-heading{border-top:1px solid var(--border);padding-top:20px}.list-heading span{color:var(--mint);font-family:'Space Grotesk',sans-serif}.satellite-list{overflow-y:auto;flex:1;min-height:50px}.sat-row{width:100%;text-align:left;display:flex;gap:10px;padding:12px 8px;border-bottom:1px solid #ffffff07}.sat-row .point{width:5px;height:5px;border-radius:50%;background:var(--mint);margin-top:7px}.sat-row b{display:block;font-size:12px;font-weight:500;max-width:185px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sat-row small{font:10px 'Space Grotesk',sans-serif;display:block;color:var(--muted);margin-top:5px}.sat-row.active{background:#5ce6d00c;border-left:2px solid var(--mint)}.sidebar-foot{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--muted);padding:18px 0;border-top:1px solid var(--border)}.sidebar-foot span{margin-left:auto}.universe{position:relative;flex:1;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#10233a,#040912 70%)}#globe{position:absolute;inset:0}.map-title{position:absolute;left:32px;top:29px;pointer-events:none}.map-title h2{font-size:19px;font-weight:500;letter-spacing:2px;margin:10px 0}.map-title p{font-size:10px;color:var(--muted)}.metrics{position:absolute;right:30px;top:30px;display:flex;gap:28px;padding:0 0 15px;border-bottom:1px solid var(--border)}.metrics small{display:block;font-size:10px;color:var(--muted)}.metrics strong{display:block;font:27px 'Space Grotesk',sans-serif;margin-top:8px}.metrics .model{font-size:19px;padding-top:7px;color:var(--mint)}.map-tools{position:absolute;left:28px;top:160px;display:flex;flex-direction:column;gap:7px}.map-tools button{background:#0d1829c9;border:1px solid var(--border);font-size:22px;width:40px;height:40px;padding:0}.map-tools .selected{color:var(--mint);border-color:#5ce6d04a}.legend{position:absolute;bottom:110px;left:30px;display:flex;gap:20px;color:var(--muted);font-size:10px}.legend span:before{content:'';display:inline-block;width:5px;height:5px;background:var(--dot);margin-right:7px;border-radius:50%}.timebar{position:absolute;bottom:22px;left:26px;right:26px;border:1px solid #ffffff18;background:#0b1524e8;backdrop-filter:blur(20px);border-radius:10px;padding:16px;display:flex;align-items:center;gap:20px;box-shadow:0 12px 40px #0004}.timebar>button:first-child{background:#5ce6d015;color:var(--mint);font-size:18px}.time-display{min-width:170px}.time-display small{display:block;font-size:9px;color:var(--muted);margin-bottom:5px}.time-display b{font:12px 'Space Grotesk',sans-serif}.timebar input{flex:1;min-width:35px;accent-color:var(--mint)}select{background:#101b2a;border:1px solid var(--border);border-radius:5px;padding:9px;color:#d0dce9}.timebar select,.timebar button{font-size:11px}.detail{position:absolute;right:26px;top:132px;width:260px;border:1px solid #ffffff18;border-radius:9px;background:#0b1524ee;padding:20px;backdrop-filter:blur(20px)}.detail .section-head{font:9px 'Space Grotesk',sans-serif;margin:0;color:var(--mint);letter-spacing:1px}.detail h3{font:20px 'Space Grotesk','Noto Sans SC',sans-serif;overflow-wrap:anywhere}.tag{color:var(--mint);font:10px 'Space Grotesk',sans-serif;background:#5ce6d012;padding:5px 8px;border-radius:3px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 12px;margin-top:25px}.detail-grid small{display:block;color:var(--muted);font-size:10px;margin-bottom:7px}.detail-grid b{font:16px 'Space Grotesk',sans-serif}.detail p{font-size:10px;color:var(--muted);line-height:1.8}.detail .stale{color:var(--gold)}.full{width:100%}.empty-state{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);text-align:center;width:310px;background:#07101bd9;padding:26px;border:1px solid var(--border);border-radius:12px}.empty-state>span{font-size:45px;color:var(--mint)}.empty-state h3{font-weight:500;font-size:17px}.empty-state p{color:var(--muted);line-height:1.9;font-size:12px}.empty-state button{color:var(--mint);border:1px solid #5ce6d044;font-size:12px}dialog{color:#e8edf5;background:#0e1929;border:1px solid #ffffff20;border-radius:14px;width:640px;max-width:94vw;padding:28px;max-height:90dvh;box-shadow:0 30px 150px #000a}dialog::backdrop{background:#020710bb;backdrop-filter:blur(8px)}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{font-size:22px;font-weight:500;margin:10px 0 18px}form label,#adminPanel>label,.form-grid label{display:block;color:#a7b6c9;font-size:12px;margin:15px 0}label>input:not([type=checkbox]):not([type=radio]),textarea{display:block;width:100%;margin-top:8px;background:#080f1b;border:1px solid #ffffff19;border-radius:5px;padding:12px;color:inherit}textarea{resize:vertical;font-family:monospace;font-size:12px;max-height:260px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid select{display:block;width:100%;margin-top:8px}.file-drop{padding:15px;border:1px dashed #5ce6d044;border-radius:6px}.file-drop input{font-size:11px}.action-row{display:flex;gap:12px}.action-row input{flex:1;min-width:0;background:#080f1b;border:1px solid var(--border);border-radius:5px;padding:10px;color:inherit}.muted{color:var(--muted);font-size:12px;line-height:1.8}.import-result{font-size:11px;line-height:1.9;max-height:200px;overflow:auto;margin-top:15px;white-space:pre-wrap}#adminMessage{font-size:12px;color:var(--gold);white-space:pre-wrap}#audit{max-height:130px;overflow:auto}#toast{position:fixed;bottom:115px;left:50%;transform:translateX(-50%);background:#17293b;border:1px solid #5ce6d055;padding:12px 22px;border-radius:6px;z-index:100;display:none;font-size:12px}.cesium-viewer-bottom{left:5px;bottom:0}.cesium-widget-credits{font-size:8px!important}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:#33465e;border-radius:5px}[hidden]{display:none!important}@media(min-width:1600px){.sidebar{width:340px;padding:35px 28px 0}.map-title{left:40px;top:40px}}@media(max-width:1100px){header{gap:25px;padding:0 18px}.header-right>span{display:none}.sidebar{width:260px;padding:24px 16px 0}.metrics{gap:15px;right:20px}.map-title{left:24px}.timebar{gap:10px;left:15px;right:15px}.time-display{min-width:145px}.detail{width:230px;right:16px}}@media(max-width:760px){header{height:66px;padding:0 12px;gap:8px}.brand{font-size:18px;letter-spacing:2px}.brand small{font-size:7px;letter-spacing:1px}.brand-icon{font-size:32px}nav{display:none}.header-right button{margin-left:0;font-size:10px;padding:8px}main{height:calc(100dvh - 66px);min-height:650px;flex-direction:column}.sidebar{width:100%;height:200px;padding:14px 16px;flex-shrink:0;border-right:0;border-bottom:1px solid var(--border)}.sidebar>.eyebrow,.sidebar h1,.sidebar>.section-head,.sidebar-foot{display:none}.search input{padding:8px}.search{margin-bottom:12px}#categories{display:flex;overflow-x:auto;flex-shrink:0;gap:5px}.category{white-space:nowrap;padding:9px 6px;font-size:11px}.category small{display:none}.satellite-list{display:flex;overflow:auto;min-height:65px}.sat-row{min-width:155px;border:0}.sat-row b{max-width:135px}.universe{min-height:450px}.map-title{top:18px;left:18px}.map-title h2{font-size:16px}.map-title p{font-size:8px}.map-title .eyebrow{font-size:8px}.metrics{right:14px;top:16px;gap:15px}.metrics>div:last-child{display:none}.metrics strong{font-size:22px}.metrics small{font-size:9px}.map-tools{left:14px;top:120px}.detail{top:102px;width:210px;padding:15px}.detail-grid{gap:12px;margin-top:18px}.timebar{bottom:20px;padding:10px;gap:8px}.timebar input{display:none}.timebar .outline{margin-left:auto}.time-display{min-width:125px}.time-display b{font-size:10px}.timebar select{max-width:72px;padding:7px 3px}.legend{bottom:99px;left:17px;font-size:8px;gap:10px}}

@media(min-width:761px){#categories{max-height:36vh;overflow-y:auto;flex-shrink:0}}

.category input[type=radio]{accent-color:var(--mint)}.station-mode{width:100%;text-align:left;border:1px solid #ffffff18;background:#0a1421;color:#b8c9dc;font-size:12px;padding:12px}.station-mode span{display:block;font-size:10px;color:var(--muted);margin:7px 0 0 19px}.station-mode.selected{border-color:#5ce6d066;color:var(--mint);background:#5ce6d00b}@media(max-width:760px){main{min-height:760px}.sidebar{height:263px}.station-mode{padding:8px;margin-bottom:8px}.station-mode span{display:inline;margin-left:12px;font-size:9px}.sidebar>.section-head:has(#stationSettings){display:flex;margin:0 0 6px;font-size:10px}#categories{max-height:45px}.detail{max-height:320px;overflow:auto}}

/* Observation workspace: stable panels, independent scroll, compact real-time table. */
header{height:72px}main{height:calc(100dvh - 72px);min-height:700px}.sidebar{width:300px;padding:22px 18px 0;min-height:0}.sidebar h1{font-size:23px;margin:12px 0 18px}.sidebar h1 span{font-size:10px}.sidebar .section-head{margin:16px 0 9px;flex-shrink:0}.sidebar .list-heading{padding-top:12px;margin-top:12px}.sidebar .search{flex-shrink:0}#categories{max-height:none;min-height:100px;flex:1.3;overflow-y:auto;flex-shrink:1}.category{padding:8px 7px}.category span{min-width:0}.category small{white-space:nowrap;font-size:10px}.category-search{width:100%;flex-shrink:0;background:#07101b;border:1px solid var(--border);border-radius:5px;padding:9px 10px;font-size:11px;margin-bottom:6px;color:inherit}.satellite-list{flex:.8;min-height:85px;max-height:230px;overflow-y:auto}.sat-row{padding:10px 7px}.sat-row small{font-size:9px}.sat-row.overhead .point{background:var(--gold);box-shadow:0 0 8px #e8bb7466}.sidebar-foot{padding:12px 0;flex-shrink:0}#globe{bottom:350px}.map-title{top:24px;left:26px}.map-title p{font-size:10px}.metrics{top:24px;right:24px;gap:24px}.metrics strong{font-size:25px}.metrics .model{font-size:25px;padding:0;color:var(--gold)}.map-tools{left:26px;top:153px}.station-badge{position:absolute;left:26px;top:113px;display:flex;align-items:center;gap:9px;border:1px solid #e8bb7433;background:#101b29d9;border-radius:6px;padding:8px 12px;max-width:calc(100% - 52px);font-size:10px;color:#c8d6e4}.station-badge .live-dot{background:var(--gold);box-shadow:0 0 10px #e8bb7433}.station-badge button{font-size:10px;margin-left:10px;white-space:nowrap}.station-mode{font-size:11px}.detail{top:158px;right:24px;width:244px;max-height:calc(100% - 520px);overflow-y:auto;padding:16px;min-height:200px}.detail h3{font-size:18px;margin:15px 0}.detail-grid{gap:14px 10px;margin-top:19px}.detail-grid b{font-size:14px}.detail p{font-size:9px}.detail .full{padding:7px}.legend{bottom:335px;left:26px;font-size:9px}.telemetry-panel{position:absolute;left:24px;right:24px;bottom:104px;height:218px;background:#0c1726f5;border:1px solid #ffffff18;border-radius:9px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 30px #0003;transition:height .2s}.telemetry-heading{height:43px;min-height:43px;display:flex;justify-content:space-between;align-items:center;padding:0 15px;border-bottom:1px solid var(--border);font-size:12px}.telemetry-heading>div{display:flex;align-items:center;gap:10px}.telemetry-heading small{color:var(--muted);font:10px 'Space Grotesk',monospace}.telemetry-heading .tag{font-size:9px;padding:3px 6px}.table-scroll{overflow:auto;flex:1;min-height:0;scrollbar-gutter:stable}.table-scroll table{width:100%;border-collapse:collapse;font:11px 'Space Grotesk','Noto Sans SC',sans-serif;white-space:nowrap;text-align:right}.table-scroll th{position:sticky;top:0;background:#152132;color:#8fa3bb;font-size:9px;font-weight:500;padding:9px 12px;z-index:1}.table-scroll td{padding:8px 12px;border-bottom:1px solid #ffffff08;color:#c6d6e8;font-variant-numeric:tabular-nums}.table-scroll td:first-child,.table-scroll th:first-child{text-align:left}.table-scroll td:nth-child(2){color:var(--gold)}.table-scroll td small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.table-satellite{padding:0;font-size:11px;max-width:190px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;color:#d3e4f4;text-align:left}.table-scroll tr:hover{background:#5ce6d008}.table-scroll .stale-row td:last-child{color:var(--gold)}.table-empty{font-size:11px;line-height:1.8;color:var(--muted);margin:18px;text-align:center}.data-status{height:28px;min-height:28px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 14px;gap:10px;font-size:9px;color:#8fa2b8}.data-status button{font-size:9px;white-space:nowrap}.telemetry-panel.collapsed{height:73px}.telemetry-panel.collapsed .table-scroll{display:none}.telemetry-panel.expanded{height:calc(100% - 270px);z-index:3}.timebar{bottom:21px;left:24px;right:24px;padding:12px;gap:12px}.time-display{min-width:155px}.source-details{max-height:55vh;overflow-y:auto}.source-row{display:flex;align-items:center;justify-content:space-between;padding:12px 8px;border-bottom:1px solid var(--border);gap:16px;font-size:12px}.source-row small{color:var(--muted);white-space:nowrap}.source-row .stale{color:var(--gold)}#toast{bottom:350px;max-width:85vw}.empty-state{top:32%}
@media(max-width:1100px) and (min-width:761px){header{gap:20px;padding:0 18px}.header-right>span{display:none}.sidebar{width:260px}.map-title{left:18px}.map-title h2{font-size:17px}.metrics{right:18px;gap:16px}.metrics strong{font-size:22px}.metrics small{font-size:9px}.station-badge{left:18px;max-width:calc(100% - 36px);font-size:9px}.detail{width:210px;right:18px}.time-display{min-width:135px}.timebar input{display:none}.timebar .outline{margin-left:auto}.telemetry-panel{left:16px;right:16px}.telemetry-heading small{display:none}.station-badge button{margin-left:0}}
@media(max-width:760px){header{height:64px;position:sticky;top:0;padding:0 12px}main{height:auto;min-height:0;display:flex;flex-direction:column}.sidebar{width:100%;height:auto;min-height:0;padding:14px 16px 10px;display:flex;flex-shrink:0}.sidebar h1,.sidebar>.eyebrow,.sidebar-foot,.sidebar>.list-heading,.satellite-list{display:none}.sidebar>.section-head{display:flex!important;margin:9px 0 6px;font-size:10px}.sidebar .search{margin-bottom:0}.category-search{padding:8px;margin-bottom:7px;font-size:10px}.station-mode{padding:10px;margin:0}.station-mode span{display:block;margin:5px 0 0;font-size:10px}.sidebar #categories{display:flex;flex:none;overflow-x:auto;overflow-y:hidden;gap:5px;max-height:50px;min-height:45px}.category{white-space:nowrap;flex-shrink:0;padding:7px 9px;border:1px solid #ffffff0a}.category small{display:inline;font-size:9px}.category span{font-size:11px}.universe{height:790px;min-height:790px;flex:none;width:100%}#globe{bottom:340px}.map-title{top:19px;left:15px}.map-title h2{font-size:16px;letter-spacing:1px;margin:8px 0}.map-title .eyebrow{font-size:8px;letter-spacing:1px}.map-title p{font-size:8px;max-width:210px}.metrics{top:18px;right:15px;gap:16px}.metrics small{font-size:8px}.metrics strong{font-size:20px}.metrics>div:last-child{display:block}.metrics>div:first-child{display:none}.metrics .model{font-size:20px}.station-badge{left:15px;top:106px;max-width:calc(100% - 30px);font-size:9px;padding:8px;gap:6px}.station-badge button{font-size:9px;margin-left:0}.station-badge>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-tools{left:15px;top:158px}.map-tools button{width:34px;height:34px;font-size:19px}.detail{top:155px;right:15px;width:210px;max-height:245px;min-height:0;padding:13px}.detail-grid{gap:12px}.detail p{font-size:9px}.legend{bottom:330px;left:15px;font-size:8px;gap:12px}.telemetry-panel{left:12px;right:12px;bottom:96px;height:220px}.telemetry-heading{padding:0 10px;font-size:11px}.telemetry-heading small{display:none}.telemetry-panel.expanded{height:570px}.telemetry-heading>div{gap:7px}.table-scroll th,.table-scroll td{padding:9px 10px}.data-status{padding:0 9px;font-size:8px}.timebar{left:12px;right:12px;bottom:20px;padding:10px;gap:8px}.timebar input{display:none}.time-display{min-width:125px}.timebar>button:first-child{padding:8px}.timebar select{max-width:70px;font-size:10px}.timebar .outline{margin-left:auto;font-size:10px;padding:8px}.time-display b{font-size:10px}#toast{bottom:30px}.empty-state{top:30%;width:280px}dialog{padding:22px 18px}.form-grid{gap:12px}.source-row{font-size:11px}.source-row small{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.category input[type=radio]{display:inline-block;width:14px;height:14px;min-width:14px;margin:0;padding:0;flex:none}.universe:has(.telemetry-panel.collapsed) #globe{bottom:205px}.universe:has(.telemetry-panel.collapsed) .legend{bottom:190px}@media(max-width:760px){.sidebar>.list-heading{display:none!important}.universe:has(.telemetry-panel.collapsed) #globe{bottom:195px}.universe:has(.telemetry-panel.collapsed) .legend{bottom:180px}}

.category-quick{display:flex;flex-wrap:wrap;gap:5px;margin:2px 0 8px;flex-shrink:0}.quick-chip{font-size:10px;padding:6px 8px;border:1px solid #ffffff12;background:#0a1421;color:#9fb1c9}.quick-chip.active{color:var(--mint);border-color:#5ce6d066;background:#5ce6d012}.category-picker{width:100%;font-size:11px;margin-bottom:8px;padding:9px;flex-shrink:0}.sidebar #categories{min-height:65px;flex:1}.sidebar .list-heading{gap:10px}.list-heading>span{margin-right:auto}.mobile-picker{display:none}.map-options{position:absolute;top:112px;right:24px;z-index:4;width:190px;background:#0c1726ed;border:1px solid #ffffff1c;border-radius:6px;font-size:11px}.map-options summary{cursor:pointer;padding:10px 13px;color:#bdcfdf;list-style:none}.map-options summary:focus-visible{outline:2px solid var(--mint)}.map-options-body{padding:0 12px 12px;border-top:1px solid var(--border)}.map-options label{display:block;font-size:10px;color:#91a5be;margin-top:12px}.map-options select{display:block;width:100%;font-size:10px;margin-top:7px;padding:8px 6px}.map-options small{display:block;font-size:9px;color:var(--muted);line-height:1.7;margin-top:10px}.station-badge{max-width:calc(100% - 270px)}.detail{top:163px}.detail-actions{display:flex;gap:7px}.detail-actions button{flex:1;font-size:11px;padding:8px 4px}.picker-filters{display:grid;grid-template-columns:1fr 1fr;gap:14px}.picker-filters label{font-size:11px;color:var(--muted)}.picker-filters select,.picker-filters input{display:block;width:100%;margin-top:8px;font-size:11px;padding:10px}.picker-toolbar{display:flex;justify-content:space-between;gap:14px;font-size:11px;color:var(--muted);padding:15px 0}.picker-toolbar label{display:flex;align-items:center;gap:6px}.picker-toolbar input{accent-color:var(--mint)}.picker-rows{height:42vh;min-height:150px;overflow-y:auto;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.picker-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #ffffff09;padding:12px 5px}.picker-row>div{min-width:0}.picker-row b{display:block;font-size:12px;font-weight:500;overflow-wrap:anywhere}.picker-row small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.picker-row button{font-size:10px;white-space:nowrap}.picker-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:14px;font-size:11px;color:var(--muted)}
@media(max-width:1100px) and (min-width:761px){.map-options{right:18px;width:170px}.station-badge{max-width:calc(100% - 220px)}.station-badge>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar{width:280px}}
@media(max-width:760px){.sidebar .category-quick{flex-wrap:nowrap;overflow-x:auto;margin-bottom:7px}.quick-chip{white-space:nowrap;flex-shrink:0}.sidebar #categories{display:none}.sidebar .category-search{display:none}.category-picker{margin-bottom:7px}.mobile-picker{display:block;width:100%;font-size:11px;padding:9px}.sidebar .category-quick .quick-chip{font-size:10px}.map-options{top:155px;right:15px;width:172px}.map-options summary{padding:9px 11px;font-size:10px}.station-badge{max-width:calc(100% - 30px)}.detail{top:203px;max-height:220px}.map-options[open]~.detail{display:none}.picker-filters{grid-template-columns:1fr;gap:10px}.picker-rows{height:38vh}.picker-row{padding:12px 2px}.picker-row b{font-size:11px}.picker-row small{font-size:9px}.picker-toolbar{font-size:10px}.category-picker{font-size:11px}}

.wall-clock{font-family:monospace;white-space:nowrap;text-align:right;padding-right:8px}.wall-clock small{display:block;font:9px sans-serif;color:var(--muted);margin-bottom:5px}.wall-clock time{display:block;color:#d6e5f4;font-size:12px;letter-spacing:.5px}.prediction-live{color:var(--mint)}.prediction-simulation{color:var(--gold)}@media(max-width:1100px){.wall-clock time{font-size:11px}.wall-clock small{font-size:8px}.header-right{gap:5px}}@media(max-width:760px){.wall-clock{padding-right:4px}.wall-clock time{font-size:9px;letter-spacing:0}.wall-clock small{font-size:7px;margin-bottom:4px}.brand small{max-width:130px}.header-right button{font-size:9px;padding:7px}.brand{font-size:17px;letter-spacing:1px}.brand-icon{font-size:29px}}

.category-guide{position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);width:min(530px,calc(100% - 100px));padding:25px;background:#0b1727ed;border:1px solid #5ce6d02e;border-radius:10px;z-index:2;box-shadow:0 12px 50px #0006}.category-guide h3{font-size:18px;font-weight:500;margin:14px 0}.category-guide p{color:var(--muted);font-size:11px;line-height:1.9}.category-guide #guideChoices{display:flex;flex-wrap:wrap;gap:7px;max-height:130px;overflow:auto}.broad-chip{border-style:dashed;color:#9aacc4}.broad-chip:after{content:' 大类';font-size:8px;opacity:.6}@media(max-width:760px){.category-guide{width:calc(100% - 100px);padding:16px;top:37%;max-height:230px;overflow:auto}.category-guide h3{font-size:14px}.category-guide p{font-size:10px}.category-guide .eyebrow{font-size:8px;letter-spacing:1px}.category-guide #guideChoices{max-height:100px}}

.universe.telemetry-hidden #globe{bottom:120px}.universe.telemetry-hidden .legend{bottom:105px}.universe.telemetry-hidden .detail{max-height:calc(100% - 300px)}#telemetryToggle[aria-expanded=true]{color:var(--mint);border-color:#5ce6d04a}@media(max-width:760px){.universe.telemetry-hidden #globe{bottom:115px}.universe.telemetry-hidden .legend{bottom:100px}.universe.telemetry-hidden .detail{max-height:430px}}

.brand-logo{width:46px;height:46px;flex-shrink:0}.detail-actions{flex-wrap:wrap}#passesDialog{width:min(940px,94vw);max-height:85dvh}#passesDialog table{width:100%;min-width:640px;border-collapse:collapse}#passesDialog th,#passesDialog td{padding:14px 12px;text-align:left;border-bottom:1px solid #ffffff12;font-size:12px;white-space:nowrap}#passesWarning{color:#e8bb74;line-height:1.7}#passesMessage{color:#79ead7}

/* Readable type sizes across the observing and management workspaces. */
:root{--muted:#a3b3c8}body{font-size:15px}button,input,select,textarea{font-size:14px}.brand{font-size:24px}.brand small,.eyebrow,.wall-clock small{font-size:12px}.wall-clock time{font-size:15px}.section-head,.category,.category-picker,.quick-chip,.station-mode,.map-title p,.map-options,.map-options summary,.picker-row b{font-size:14px}.category small,.station-mode span,.sat-row small,.sidebar-foot,.map-options small,.picker-row small,.legend{font-size:12px}.sat-row b,.detail-grid b,.time-display b{font-size:14px}.muted,label,.source-row{font-size:14px;line-height:1.7}.telemetry-panel th,.telemetry-panel td,#passesDialog th,#passesDialog td{font-size:14px}.telemetry-panel td small,.telemetry-heading small,.data-status,.detail-grid small,#dataAge{font-size:12px}.telemetry-heading{font-size:15px}.table-scroll{overflow:auto}.history-table{width:100%;border-collapse:collapse;min-width:750px}.history-table td,.history-table th{font-size:14px;text-align:left;padding:12px;border-bottom:1px solid #ffffff18}.history-table small{display:block;color:var(--muted)}#historyPayload{white-space:pre-wrap;max-height:360px;overflow:auto}.satellite-loading{position:absolute;z-index:8;top:115px;left:50%;transform:translateX(-50%);width:min(380px,calc(100% - 40px));padding:16px;background:#0b1b2cf5;border:1px solid #5ce6d055;border-radius:10px;box-shadow:0 8px 30px #0005}.satellite-loading>div{display:flex;justify-content:space-between;gap:12px;font-size:14px}.satellite-loading progress{width:100%;height:8px;margin-top:12px;accent-color:var(--mint)}
@media(max-width:760px){.brand{font-size:20px}.brand small{font-size:10px}.brand-logo{width:38px;height:38px}.wall-clock time{font-size:12px}.wall-clock small{font-size:10px}.map-title p,.map-title .eyebrow,.metrics small{font-size:11px}.map-options summary,.category,.category-picker,.quick-chip{font-size:13px}.sidebar{height:290px}.satellite-loading{top:190px}.telemetry-panel th,.telemetry-panel td{font-size:13px}.station-mode span{font-size:12px}.admin-shell{padding:20px 14px}}

.detail{width:390px;max-height:calc(100% - 290px);overflow:auto;padding:22px}.detail h3{font-size:20px}.info-tabs{display:flex;border-bottom:1px solid #ffffff20;margin:14px 0;gap:8px}.info-tabs button{flex:1;font-size:15px}.info-tabs [aria-selected=true]{color:var(--mint);border-bottom:2px solid var(--mint);border-radius:0}.orbit-parameters{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.orbit-parameters>div{background:#ffffff05;padding:10px;border-radius:6px;overflow-wrap:anywhere}.orbit-parameters small{display:block;color:var(--muted);font-size:12px}.orbit-parameters b{display:block;font-size:14px;margin-top:6px;font-weight:500}.orbit-parameters .parameter-heading{grid-column:1/-1;color:var(--gold)}#infoHistoryPanel input,#infoHistoryPanel select{width:100%;margin:6px 0 10px;min-width:0}#publicHistoryRows button{display:block;text-align:left;width:100%;border-bottom:1px solid #ffffff12;padding:12px 4px;font-size:14px}#publicHistoryRows small{display:block;color:var(--muted);margin-top:5px}#satelliteLaunch{font-size:13px;color:#a9c5dd}#infoHistoryPanel .action-row{justify-content:space-between;align-items:center}
@media(max-width:760px){.detail{width:min(390px,calc(100% - 90px));top:203px;right:12px;max-height:calc(100% - 320px);padding:16px}.detail-grid{gap:12px}.universe.telemetry-hidden .detail{max-height:calc(100% - 310px)}}

.detail{z-index:6;top:150px;bottom:115px;height:auto;max-height:none}.universe.telemetry-hidden .detail{max-height:none}@media(max-width:760px){.detail{top:203px;bottom:110px;max-height:none}.universe.telemetry-hidden .detail{max-height:none}}

@media(min-width:761px){body{height:100dvh;overflow:hidden}header{flex-shrink:0}main{height:calc(100dvh - 72px);min-height:0}.sidebar,.universe{min-height:0}.detail{top:145px;bottom:105px}}

#updateScheduleStatus{white-space:pre-line}#adminDataDetails{max-height:320px;overflow:auto;border:1px solid #ffffff18;padding:12px}#updateSettingsForm input[type=checkbox]{width:auto;margin-right:8px}#updateSettingsMessage{color:var(--mint)}

@media(min-width:761px){html{height:100%;overflow:hidden}header{position:sticky;top:0;z-index:20}}

.list-pager{flex-shrink:0;font-size:12px;padding:8px 0;border-top:1px solid #ffffff18}.list-pager>div,.list-pager form{display:flex;align-items:center;justify-content:space-between;gap:6px}.list-pager button{padding:6px;font-size:13px}.list-pager input{width:58px;padding:5px;min-width:0}.picker-page-jump{display:flex;gap:12px;align-items:center;justify-content:flex-end;margin-top:14px}.picker-page-jump label{display:flex;align-items:center;gap:8px}.picker-page-jump input{width:75px;padding:8px}@media(max-width:760px){.list-pager{display:none}}

@media(min-width:761px){.sidebar{overflow-y:auto}.list-pager{position:sticky;bottom:0;background:#0d1623;z-index:2}}@media(min-width:761px) and (max-height:850px){.sidebar>h1,.sidebar>.eyebrow,.sidebar-foot,.sidebar #categories{display:none}.sidebar .section-head{margin-top:10px;margin-bottom:7px}.satellite-list{flex:1;min-height:80px;max-height:none}}

.category-history-overlay{position:absolute;z-index:8;inset:100px 24px 105px;background:#0b1727f5;border:1px solid #5ce6d03d;border-radius:12px;box-shadow:0 16px 55px #0008;backdrop-filter:blur(15px);padding:20px;display:flex;flex-direction:column;min-height:0}.category-history-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.category-history-heading h2{font-size:21px;margin:7px 0 14px}.category-history-filters{display:grid;grid-template-columns:1.2fr .8fr 1fr 1fr auto;gap:10px;align-items:end}.category-history-filters label{font-size:12px;min-width:0}.category-history-filters input,.category-history-filters select{width:100%;min-width:0;padding:9px;margin-top:5px;font-size:13px}.category-history-overlay>.muted{font-size:12px;margin:10px 0 4px}.category-history-overlay>p{flex-shrink:0}.category-history-scroll{min-height:80px;flex:1;overflow:auto}.category-history-scroll table{width:100%;border-collapse:collapse;min-width:1160px}.category-history-scroll th{position:sticky;top:0;background:#1a2b40;z-index:1;color:#b7cbe1}.category-history-scroll td,.category-history-scroll th{padding:12px 10px;text-align:left;font-size:13px;border-bottom:1px solid #ffffff12;white-space:nowrap}.category-history-scroll td small{display:block;color:var(--muted);margin-top:6px}.category-history-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:14px;flex-wrap:wrap;font-size:13px}.category-history-footer form,.category-history-footer label{display:flex;align-items:center;gap:7px}.category-history-footer input{width:65px;min-width:0;padding:7px}.detail.history-drilldown{z-index:9;box-shadow:0 0 0 1px #5ce6d044,0 15px 50px #000b;background:#0b1727fa}@media(max-width:1100px){.category-history-overlay{inset:100px 12px 100px;padding:14px}.category-history-filters{grid-template-columns:1fr 1fr}.category-history-overlay>.muted{display:none}}@media(max-width:760px){.category-history-overlay{inset:150px 10px 95px;padding:12px}.category-history-heading h2{font-size:17px}.category-history-filters label{font-size:11px}.category-history-footer{gap:5px;justify-content:center}.category-history-footer button{padding:7px}.category-history-scroll td,.category-history-scroll th{font-size:12px}}

.category-history-overlay{inset:20px 16px;padding:16px}.category-history-heading .eyebrow{display:none}.category-history-heading h2{margin:0 0 14px}.category-history-filters label{margin:0;line-height:1.5}.category-history-filters input,.category-history-filters select{margin-bottom:0}.category-history-overlay>.muted{margin:8px 0 0;line-height:1.5}.category-history-overlay>#categoryHistoryStatus{margin:10px 0}.category-history-scroll{min-height:120px}.category-history-footer{padding-top:10px}.category-history-footer label{margin:0;font-size:12px}.category-history-footer input{margin:0}@media(max-width:760px){.category-history-overlay{inset:20px 10px;padding:12px}}
/* Sidebar workspaces: one flexible pane, permanent navigation and pagination. */
.sidebar{display:flex;flex-direction:column;gap:0;padding:18px 16px 0;overflow:hidden}.sidebar-title{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;margin-bottom:12px}.sidebar-title .eyebrow{font-size:12px;letter-spacing:1px}.sidebar-title button{font-size:13px;padding:5px}.sidebar .search{margin:0 0 10px;flex-shrink:0}.sidebar .search input{font-size:14px;padding:10px 6px;min-width:0}.station-compact{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-bottom:16px;padding:8px 0;border-bottom:1px solid #ffffff0d}.station-compact #stationSummary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a9bdd3;font-size:12px}.station-compact .station-mode{width:auto;white-space:nowrap;flex-shrink:0;font-size:12px;padding:6px;margin:0}.sidebar-tabs{display:flex;border:1px solid #ffffff14;background:#07111d;padding:4px;border-radius:8px;margin-bottom:14px;flex-shrink:0;gap:4px}.sidebar-tabs button{flex:1;padding:10px 4px;font-size:14px;border-radius:5px}.sidebar-tabs [aria-selected=true]{background:#17342f;color:var(--mint);box-shadow:inset 0 0 0 1px #5ce6d02e}.sidebar-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.sidebar #sidebarCategoriesPanel .section-head{margin:0 0 10px}.sidebar #sidebarCategoriesPanel #categories{display:block;min-height:0;max-height:none;flex:1;overflow-y:auto;padding-bottom:12px}.sidebar #sidebarCategoriesPanel .category-search{display:block;margin-bottom:10px}.sidebar #sidebarCategoriesPanel .category-quick{flex-wrap:wrap;overflow:visible;margin-bottom:12px}.sidebar #sidebarCategoriesPanel .category-picker{font-size:14px;flex-shrink:0;margin-bottom:10px}.sidebar .current-category{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:0 0 12px;flex-shrink:0}.current-category>div{min-width:0}.current-category b{font-size:17px;color:#eaf6ff;display:block;overflow-wrap:anywhere}.current-category>div>span{display:block;color:var(--muted);font-size:12px;margin-top:6px}.current-category button{font-size:12px;white-space:nowrap;padding:6px}.observation-toolbar{display:flex;justify-content:space-between;align-items:center;gap:5px;color:var(--muted);font-size:11px;flex-shrink:0;border-bottom:1px solid #ffffff12;padding-bottom:8px}.observation-toolbar button{font-size:12px;white-space:nowrap;padding:4px}.sidebar #satelliteList{display:block;flex:1;min-height:0;max-height:none;overflow-y:auto;margin-top:6px}.sidebar .sat-row{display:flex;min-width:0;width:100%;padding:13px 7px}.sidebar .sat-row b{max-width:100%;font-size:14px;white-space:normal;overflow-wrap:anywhere}.sidebar .sat-row small{font-size:12px}.sidebar .list-pager{display:block;position:static;flex-shrink:0;min-height:82px;padding:10px 0 12px;background:#0d1623;border-top:1px solid #ffffff18}.sidebar .list-pager form{margin-top:5px}.sidebar #mobilePickerOpen{display:none}
@media(max-width:1100px) and (min-width:761px){.sidebar{width:290px}}
@media(max-width:760px){.sidebar{height:460px;padding:14px 16px 0}.sidebar-title{margin-bottom:8px}.station-compact{margin-bottom:10px;padding:5px 0}.sidebar-tabs{margin-bottom:10px}.sidebar #sidebarCategoriesPanel .category-quick .quick-chip{font-size:12px}.sidebar .sat-row{min-width:0}.sidebar .current-category{margin-bottom:8px}.sidebar .list-pager{min-height:72px;padding:6px 0}.sidebar-tabs button{padding:8px}.sidebar #sidebarCategoriesPanel #categories{display:block;white-space:normal}.sidebar #sidebarCategoriesPanel .category{padding:10px 7px;font-size:14px}}
.sidebar{padding:12px 14px 0}.sidebar .search{display:flex;align-items:center;height:42px;padding:0 10px;margin:0 0 6px}.sidebar .search input{border:0;background:transparent;box-shadow:none;margin:0;padding:8px 6px;height:38px;width:100%;line-height:1.4}.station-compact{height:38px;margin:0 0 10px;padding:4px 0;gap:5px}.station-compact #stationSettings{font-size:12px;white-space:nowrap;padding:5px 2px}.station-compact .station-mode{font-size:12px;padding:5px}.sidebar-tabs{height:44px;padding:3px;margin-bottom:10px}.sidebar-tabs button{padding:7px 4px}.sidebar .current-category{height:36px;margin-bottom:5px}.current-category>div{display:flex;align-items:baseline;gap:10px}.current-category>div>span{margin:0;white-space:nowrap}.observation-toolbar{font-size:11px;padding-bottom:6px}.sidebar .sat-row{padding:11px 7px}.sidebar .list-pager{min-height:78px;padding:8px 0 10px}
@media(max-width:760px){.sidebar{height:480px;padding:12px 14px 0}.station-compact{margin-bottom:8px}.sidebar-tabs{height:42px;margin-bottom:8px}.sidebar .current-category{height:32px;margin-bottom:5px}}

@media(max-width:760px){header{height:104px;align-items:flex-start;padding-top:12px}header nav{display:flex;position:absolute;left:12px;right:12px;bottom:0;height:36px;gap:4px;justify-content:space-between}header nav button{font-size:13px;padding:7px 12px;flex:1}.header-right{padding-top:4px}}

.header-right #connection{font-size:12px;white-space:nowrap;cursor:pointer;color:var(--muted);text-underline-offset:4px}.header-right #connection:hover{color:var(--mint);text-decoration:underline}@media(max-width:760px){.header-right #connection{position:absolute;right:12px;top:48px;font-size:11px}}
.admin-navigation{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 20px;border-bottom:1px solid #ffffff18;margin:10px 0 20px}.admin-navigation [aria-selected=true]{background:#183d37;color:var(--mint);border:1px solid #5ce6d044}.admin-navigation #adminLogoutTop{margin-left:auto}.database-query-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.database-query-grid label{margin:0}.database-query-grid input,.database-query-grid select{width:100%;min-width:0;margin-top:6px}.database-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:14px;background:#071321;border-radius:8px}.database-actions label{margin:0;font-size:13px}.database-actions input[type=checkbox]{width:auto}.database-actions select{display:block;padding:8px;margin-top:5px}.database-table-scroll{max-height:500px;margin-top:15px}.database-table-scroll th{position:sticky;top:0;background:#182a40;z-index:1}.database-table-scroll td{max-width:260px;overflow-wrap:anywhere}.database-pagination,.database-pagination form,.database-pagination label{display:flex;align-items:center;gap:10px}.database-pagination{justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.database-pagination label{margin:0}.database-pagination input{width:70px;padding:8px}.database-delete-preview{border:1px solid #f3a56e70;border-radius:8px;background:#4b241c40;padding:20px;margin-top:20px}.database-delete-preview p{white-space:pre-wrap;line-height:1.8}.danger-button{background:#a43e35;color:white}.database-report-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.database-report-totals>div{border:1px solid #ffffff14;padding:16px;border-radius:8px}.database-report-totals small{display:block;color:var(--muted)}.database-report-totals b{display:block;font-size:24px;margin-top:9px}#databaseRecordDetails{display:block}#databaseRecordDetails pre{white-space:pre-wrap;max-height:360px;overflow:auto}@media(max-width:760px){.database-query-grid{grid-template-columns:1fr 1fr}.database-report-totals{grid-template-columns:1fr 1fr}.admin-navigation button{font-size:13px;padding:8px}.database-pagination{justify-content:center}}

/* 站点备案与联系方式页脚：桌面端固定底部，移动端随内容流动 */
.site-footer{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;height:32px;padding:0 12px;font-size:11px;color:var(--muted);background:#0a1119;border-top:1px solid var(--border)}
.site-footer a{color:var(--muted);text-decoration:none}
.site-footer a:hover{color:var(--mint)}
.site-footer .footer-dot{color:#4a5a70}
@media(min-width:761px){main{height:calc(100dvh - 80px - 32px)}}
@media(max-width:760px){.site-footer{position:static;height:auto;padding:10px 12px;font-size:10px;gap:8px}main{height:auto}}

