@import url('https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=IBM+Plex+Mono:wght@400;500&family=Inter:wght@400;500;600&display=swap');
:root{color-scheme:dark;--bg:#0b0f12;--panel:#10161b;--line:#263039;--muted:#8a9aa6;--accent:#c6e985}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#e4e9ed;font:14px Inter,Arial,sans-serif}a{color:var(--accent);text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:transparent;border:1px solid var(--line);border-radius:4px;padding:10px 13px}button:hover{background:#253038}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}header{height:100px;border-bottom:1px solid var(--line);padding:23px 30px;display:flex;align-items:center;justify-content:space-between}.brand{font:600 34px 'Barlow Condensed',sans-serif;letter-spacing:3px;color:white}.brand span{color:var(--accent);padding:0 5px}.brand small{display:block;font:9px 'IBM Plex Mono',monospace;letter-spacing:2.7px;margin-top:5px;color:var(--muted)}.header-right{display:flex;gap:28px;align-items:center;font:11px 'IBM Plex Mono',monospace}.local{color:var(--accent)}.shell{display:grid;grid-template-columns:235px minmax(0,1fr) 230px;min-height:calc(100vh - 138px)}aside{padding:28px 22px;background:#0e1317;border-right:1px solid var(--line);display:flex;flex-direction:column}.eyebrow{font:9px 'IBM Plex Mono',monospace;letter-spacing:1.5px;color:var(--muted)}h1{font:500 38px 'Barlow Condensed',sans-serif;margin:10px 0 16px}h2{font:500 23px 'Barlow Condensed',sans-serif;margin:14px 0}p{line-height:1.65}.muted{color:var(--muted);font-size:12px}.aside-bottom{margin-top:auto;padding-top:45px;font-size:11px;color:var(--muted)}.layer{display:flex;align-items:center;gap:10px;padding:18px 0;border-bottom:1px solid #1d272e;font-size:12px}.layer input{accent-color:var(--accent)}.layer small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.layer.disabled{opacity:.5}.layer b{margin-left:auto;font:10px 'IBM Plex Mono',monospace;color:var(--muted)}nav{display:flex;border-bottom:1px solid var(--line);padding:0 20px;gap:20px;overflow:auto;height:58px;align-items:stretch}nav button{border:0;border-radius:0;white-space:nowrap;font-size:11px;padding:0 3px}nav button.active{color:var(--accent);border-bottom:2px solid var(--accent)}.view{display:none;padding:30px;min-height:620px}.view.active{display:block}#view-map{padding:0}.map-toolbar{padding:25px 25px 10px;display:flex;justify-content:space-between;align-items:center;gap:12px}.map-toolbar h1{font-size:30px;margin:9px 0}.presets{display:flex;gap:6px}.presets button{font-size:10px;padding:8px 10px}#map{height:calc(100vh - 304px);min-height:460px;background:#111c24}.map-foot{padding:13px 20px;display:flex;justify-content:space-between;gap:20px;font:9px 'IBM Plex Mono',monospace;color:var(--muted)}.intel{border-left:1px solid var(--line);border-right:0}.feed{border-bottom:1px solid var(--line);padding:17px 0}.feed-name{font-size:11px;display:flex;justify-content:space-between;gap:8px}.feed small{font:9px 'IBM Plex Mono',monospace;display:block;margin-top:9px;color:var(--muted)}.ok{color:var(--accent)}.error{color:#ff826b}.stale{color:#e5c875}.note{margin-top:40px;font-size:11px;color:var(--muted);border-left:2px solid #445139;padding-left:13px}.legend{font:11px/2.5 'IBM Plex Mono',monospace;margin-top:auto;padding-top:25px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:13px 25px;display:flex;justify-content:space-between;font:8px 'IBM Plex Mono',monospace;letter-spacing:1.5px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:15px;margin-top:30px}.card{padding:23px;border:1px solid var(--line);background:linear-gradient(135deg,#172129,#10171b);border-radius:5px}.card h2{font-size:25px}.card p{font-size:12px}.badge{font:9px 'IBM Plex Mono',monospace;color:var(--accent);letter-spacing:1px}.big{font:500 52px 'Barlow Condensed',sans-serif}.countdown{font:16px 'IBM Plex Mono',monospace;color:var(--accent);margin:20px 0}.cta{display:inline-block;border:1px solid #55673c;padding:12px 18px;border-radius:4px;font-size:12px}.source-row{padding:18px 0;border-bottom:1px solid var(--line);font-size:12px}.source-row small{display:block;color:var(--muted);margin-top:9px;overflow-wrap:anywhere}.plane{color:#65d5f4;font-size:19px;text-shadow:0 0 4px #000}.empty{padding:25px;border:1px dashed var(--line);color:var(--muted);line-height:1.8}#market-widget{min-height:500px;margin:20px 0}@media(min-width:1600px){.shell{grid-template-columns:260px minmax(0,1fr) 260px}}@media(max-width:1100px){.shell{grid-template-columns:210px minmax(0,1fr)}.intel{display:none}nav{gap:15px}}@media(max-width:700px){header{padding:18px;height:85px}.brand{font-size:26px}.header-right{font-size:9px}.header-right time{display:none}.shell{display:block}aside{padding:15px;border-bottom:1px solid var(--line)}aside h2,aside>.muted,.aside-bottom,aside>.eyebrow{display:none}#layers{display:flex;overflow:auto;gap:17px}.layer{white-space:nowrap;border:0;padding:5px 0}.layer.disabled{display:none}.layer b{display:none}.map-toolbar{padding:20px 15px;display:block}.presets{margin-top:10px}.view{padding:22px;min-height:550px}#map{height:55vh;min-height:350px}.map-foot{flex-direction:column;gap:8px}footer span:last-child{display:none}nav{padding:0 15px}.cards{grid-template-columns:1fr}}


.maplibregl-map{background:radial-gradient(ellipse at center,#16232c 0%,#070b10 65%)}.maplibregl-popup-content{background:#172129;color:#e4e9ed;border:1px solid #36444f;border-radius:6px;padding:18px;font:12px/1.8 Inter,sans-serif}.maplibregl-popup-tip{border-top-color:#172129!important}.maplibregl-popup-close-button{padding:2px 7px}.maplibregl-ctrl-group{background:#172129!important}.maplibregl-ctrl-group button{filter:invert(.8)}.maplibregl-ctrl-attrib{background:#10161be8!important;color:#b8c8d4!important}.maplibregl-ctrl-attrib a{color:#c6e985!important}.countdown{font-variant-numeric:tabular-nums;font-size:20px;letter-spacing:1px}
/* DarkMatterIT identity: shared palette and typography, dashboard layout. */

:root{--bg:#04030a;--panel:#0d0a1e;--line:rgba(167,139,250,.16);--muted:#9b93b8;--accent:#a78bfa;--blue:#60a5fa;--pink:#f472b6}body{font-family:'Space Grotesk',sans-serif;color:#eae7f6;background:radial-gradient(ellipse at 60% 0%,#16102c 0,transparent 50%),#04030a}header{gap:26px;background:radial-gradient(ellipse at 60% -60%,rgba(124,82,208,.22),transparent 70%),#080612;padding:20px 26px;min-height:104px;height:auto}.brand{flex-shrink:0;font:600 27px 'Chakra Petch',sans-serif;letter-spacing:1px;color:#eae7f6}.brand span{color:#c6a5ff;text-shadow:0 0 18px #9870e0}.brand small{font-family:'Space Grotesk',sans-serif;font-size:8px;letter-spacing:2.5px;color:#9b93b8}.header-right{flex-shrink:0;gap:16px;font-size:10px}h1,h2{font-family:'Chakra Petch',sans-serif;font-weight:500}h1{font-size:32px}.map-toolbar h1{font-size:27px}.eyebrow{color:#a69ac2;font-family:'Chakra Petch',sans-serif}.shell>aside{background:rgba(10,8,23,.85)}nav{background:rgba(10,8,23,.65)}nav button.active{border-image:linear-gradient(90deg,#60a5fa,#a78bfa,#f472b6) 1;color:#d5c7ff}button:hover{background:rgba(167,139,250,.12);border-color:rgba(167,139,250,.45)}button{border-radius:9px}.card{background:linear-gradient(135deg,rgba(31,22,56,.85),rgba(13,10,30,.8));border-radius:16px;border-color:rgba(167,139,250,.2)}.card h2{font-size:22px}.card:hover{border-color:rgba(167,139,250,.4)}.big{font-family:'Chakra Petch',sans-serif}.note{border-left-color:#71569e}.ok,.local{color:#bda5ff}.countdown{color:#cbb7ff}.maplibregl-map{background:radial-gradient(ellipse at center,#19102d,#04030a 70%)}.maplibregl-popup-content{background:#100b24;border-color:#51406c;font-family:'Space Grotesk',sans-serif}.maplibregl-ctrl-attrib{background:#0d0a1ee8!important}.maplibregl-ctrl-attrib a{color:#cbb7ff!important}.map-foot{background:#090612}.launch-strip{display:flex;align-items:center;gap:0;min-width:0;flex:1;border-left:1px solid var(--line);padding-left:22px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#42315f transparent}.strip-label{flex-shrink:0;font:9px/1.7 'Chakra Petch',sans-serif;letter-spacing:1.4px;color:#9b93b8;padding-right:18px}.launch-mini{flex:1;min-width:150px;max-width:260px;text-align:left;border:0;border-left:1px solid var(--line);border-radius:0;padding:8px 16px}.launch-mini-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#c6bedb;max-width:220px}.launch-index{font:9px 'IBM Plex Mono',monospace;color:#856fa8;margin-right:7px}.launch-mini-time{display:block;font:500 14px 'Chakra Petch',sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.7px;color:#c8b0ff;margin-top:8px;white-space:nowrap}.launch-mini:first-of-type .launch-mini-time{background:linear-gradient(90deg,#7db5ff,#b39aff,#ec92c8);background-clip:text;-webkit-background-clip:text;color:transparent}.launch-mini:hover{background:rgba(167,139,250,.08)}.launch-mini:focus-visible{outline-offset:-2px}footer{background:#06040e}.presets button{border-radius:15px}.layer{border-bottom-color:var(--line)}
@media(max-width:1450px){header{flex-wrap:wrap}.header-right{margin-left:auto;order:1}.brand{order:0}.launch-strip{order:2;flex-basis:100%;padding:12px 0 0;border-left:0;border-top:1px solid var(--line)}header{gap:16px}.launch-mini{max-width:none}.launch-mini-title{max-width:270px}#map{height:calc(100vh - 382px)}}
@media(max-width:700px){header{padding:17px;gap:15px}.brand{font-size:23px}.brand small{font-size:7px;letter-spacing:1.8px}.header-right{font-size:8px}.launch-strip{padding-top:12px}.strip-label{font-size:8px;padding-right:12px}.launch-mini{min-width:185px;padding:6px 12px}.launch-mini-time{font-size:13px}.launch-mini-title{max-width:175px;font-size:10px}.map-toolbar h1{font-size:25px}#map{height:55vh}.view h1{font-size:28px}}
/* A compact, CSS-only interpretation of the DarkMatterIT black hole. */
.brand-orbit{display:flex;align-items:center;gap:16px}.brand-orbit .brand-wordmark{padding:0;color:#eae7f6;text-shadow:none}.brand-orbit .black-hole{position:relative;display:block;width:78px;height:68px;flex:0 0 78px;padding:0;isolation:isolate}.black-hole i{display:block;position:absolute;pointer-events:none}.bh-halo{inset:4px 7px;border-radius:50%;background:radial-gradient(ellipse,rgba(167,139,250,.3),rgba(96,165,250,.09) 50%,transparent 72%);filter:blur(5px)}.bh-orbit{inset:9px -2px;transform:rotate(-24deg) scaleY(.38);z-index:1}.bh-disk{inset:-9px 0;border-radius:50%;background:conic-gradient(from 20deg,transparent 0deg,rgba(96,165,250,.25) 40deg,#a78bfa 95deg,rgba(244,114,182,.8) 125deg,transparent 170deg,rgba(167,139,250,.12) 210deg,#6f59ba 270deg,transparent 330deg);mask:radial-gradient(ellipse,transparent 42%,#000 45%,#000 60%,transparent 72%);animation:abyss-orbit 13s linear infinite}.bh-core{width:46px;height:46px;left:16px;top:11px;border-radius:50%;background:radial-gradient(circle at 38% 28%,#070610,#000 55%);border:1px solid #d4c4f5;box-shadow:0 0 7px #a78bfa80,inset 0 0 5px #8c6bba44;z-index:2}.bh-front{inset:0;clip-path:polygon(0 51%,100% 20%,100% 100%,0 100%);z-index:3}.bh-photon{inset:4px 9px;border:2px solid transparent;border-top-color:#a78bfa66;border-bottom-color:#a78bfa44;border-radius:50%;animation:abyss-orbit 24s linear infinite;z-index:0}.brand-orbit:hover .bh-core{box-shadow:0 0 14px #a78bfaaa,inset 0 0 5px #8c6bba44}@keyframes abyss-orbit{to{transform:rotate(360deg)}}@media(max-width:700px){.brand-orbit{gap:9px}.brand-orbit .black-hole{width:56px;flex-basis:56px;height:54px;transform:scale(.76);transform-origin:center;margin:-7px}.brand-orbit .brand-wordmark{font-size:21px}.brand-orbit .brand-wordmark small{font-size:6px;letter-spacing:1.5px}}@media(prefers-reduced-motion:reduce){.bh-disk,.bh-photon{animation:none}}

.rcb-summary{display:block;width:100%;text-align:left;border:1px solid #574374;background:#1a122b;color:#ded5ff;padding:11px 16px;cursor:pointer;font:inherit;font-size:12px}.rcb-summary:hover{background:#291d41}.area-note{padding:10px 14px;color:#b8afcd;background:#100c1e;font-size:11px;line-height:1.8}.conflict-key{color:#ed7795}.planned-key{color:#65cfe3}.active-key{color:#ffb454}#view-rcb .cards{align-items:start}#view-rcb .card h2{font-size:20px}
/* Larger, readable brand signature and native space-weather dashboard. */
.brand-orbit .brand-wordmark small{font-size:13px;letter-spacing:1.9px;line-height:1.5;color:#c5bbdf;margin-top:9px;white-space:normal;max-width:350px;font-weight:500}.space-scales{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.scale-card{margin:0}.scale-value{display:flex;align-items:baseline;gap:9px;font:500 36px 'Chakra Petch',sans-serif;color:#d4baff;margin-top:20px}.scale-value b{font-size:58px;font-weight:500}.scale-value small{font-size:16px;color:var(--muted)}.space-context{border-left:2px solid #a78bfa;background:#120d23;padding:20px 24px;margin:24px 0;font-size:12px}.space-context p{color:#bcb2d2}.space-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.space-chart{min-width:0;padding:20px}.chart-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.chart-heading strong{font:500 25px 'Chakra Petch',sans-serif;white-space:nowrap}.space-chart h2{font-size:19px;margin:10px 0 20px}.space-chart svg{width:100%;height:auto;display:block;overflow:visible}.space-chart svg text{fill:#b6a9cd;font:10px 'IBM Plex Mono',monospace}.space-chart>a{font-size:11px}.scale-card>small{font-size:10px;line-height:1.6;display:block}@media(max-width:1250px){.space-charts{grid-template-columns:1fr}.space-scales{gap:10px}.scale-card{padding:15px}}@media(max-width:700px){.brand-orbit .brand-wordmark small{font-size:11px;letter-spacing:1px;max-width:245px}.brand-orbit .brand-wordmark{font-size:21px}.space-scales{grid-template-columns:1fr}.scale-card .scale-value{margin-top:8px}.chart-heading strong{font-size:20px}.space-chart{padding:15px}.header-right{margin-left:0}}

.object-art{margin:0 0 12px;border:1px solid #48345f;border-radius:9px;overflow:hidden;background:radial-gradient(ellipse at center,#281b3e,#0c0818)}.object-art svg{display:block;width:100%;height:130px}.object-art figcaption{padding:9px 12px;color:#d6c4ef;font-size:11px;line-height:1.5}.object-art small{display:block;color:#9b93b8;font-size:9px;margin-top:4px}.orbit-filter{padding:18px 0;font-size:11px}.orbit-filter label{display:block;color:#d0b9ef;margin-bottom:9px}.orbit-filter input{width:100%;min-width:0;background:#100b20;color:#eee4ff;border:1px solid #4b3865;border-radius:7px;padding:10px;font:inherit}.orbit-filter small{display:block;line-height:1.6;color:var(--muted);margin-top:9px}.layer:has([data-layer="starlink"]){color:#70b8ff}.layer:has([data-layer="stations"]){color:#f4a5d5}.layer:has([data-layer="gnss"]){color:#ffcf71}.layer:has([data-layer="satellites"]){color:#c6e985}@media(max-width:700px){.orbit-filter{padding:10px 0 0}.orbit-filter small{font-size:9px}}
.maplibregl-popup-content{max-height:min(420px,60vh);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#70558f #100b24}.maplibregl-popup-close-button{position:sticky;top:0;float:right;background:#100b24;z-index:2}
/* Readable space-weather labels. */
#view-weather .scale-card>.badge{display:block;font:600 22px/1.35 'Chakra Petch',sans-serif;letter-spacing:.3px;color:#e4d7ff;min-height:60px}#view-weather .chart-heading .badge{display:block;font:500 17px/1.5 'Space Grotesk',sans-serif;letter-spacing:.2px;color:#d9c8f2}#view-weather .space-context>strong{display:block;font:600 34px/1.2 'Chakra Petch',sans-serif;color:#f2eaff;margin-bottom:14px}#view-weather .space-context p{font-size:15px}#view-weather .chart-heading{align-items:flex-start;flex-wrap:wrap}.model-photo{margin:0 0 14px;background:#171022;border:1px solid #4b3865;border-radius:9px;overflow:hidden}.model-photo img{display:block;width:100%;height:175px;object-fit:contain;background:#07050c}.model-photo figcaption{padding:12px;line-height:1.5}.model-photo figcaption strong{display:block;font-size:14px;color:#ecdefb}.model-photo figcaption span{display:block;color:#c2b5d1;font-size:11px;margin:6px 0}.model-photo small{display:block;color:#b7a9c8;font-size:10px}.photo-unavailable,.photo-load-error{font-size:11px;color:#b4a7c5;line-height:1.5;padding:10px;border:1px solid #3d2e52}.inspired-credit{color:#c8b4e4;font-weight:500;letter-spacing:.6px;font-size:11px}footer>span:first-child{line-height:1.8}@media(max-width:700px){#view-weather .scale-card>.badge{min-height:0;font-size:23px}#view-weather .space-context>strong{font-size:31px}#view-weather .chart-heading .badge{font-size:17px}}
.header-signals{display:flex;gap:12px;flex:0 1 550px;min-width:360px}.header-signal{min-width:0;flex:1;text-align:left;padding:11px 13px;background:#130c22;border:1px solid #5b447c;border-radius:10px}.header-signal>span{display:block;font:10px/1.4 'Chakra Petch',sans-serif;letter-spacing:.5px;color:#c5b5dc}.header-signal strong{display:block;font-size:13px;line-height:1.4;color:#f5edff;margin:5px 0;max-width:270px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.header-signal small{display:block;font-size:9px;line-height:1.5;color:#b6a6ca}.rcb-top{border:2px solid #d54960}.rcb-top.pulse{animation:rcb-pulse 2.8s ease-in-out infinite}.geo-active{border-color:#eeb16b}.header-right{flex-direction:column;gap:7px}.launch-mini{min-width:130px;padding:8px 10px}.strip-label{padding-right:10px}@keyframes rcb-pulse{0%,100%{border-color:#9a3046;box-shadow:0 0 0 0 #e54c6610}50%{border-color:#ff6c7e;box-shadow:0 0 15px 2px #e54c6640}}@media(max-width:1800px){header{flex-wrap:wrap}.brand{order:0}.header-right{order:1;margin-left:auto}.launch-strip{order:2;flex:1 1 55%;border:0;padding:0}.header-signals{order:3;flex:1 1 35%}}@media(max-width:950px){.header-signals{flex-basis:100%;min-width:0}.launch-strip{flex-basis:100%}.header-signal strong{max-width:none}}@media(prefers-reduced-motion:reduce){.rcb-top.pulse{animation:none;border-color:#ff6c7e}}
