:root{
  --bg:#05070b;
  --bg2:#081019;
  --ink:#f4f7fa;
  --muted:rgba(225,235,244,.58);
  --muted2:rgba(225,235,244,.36);
  --line:rgba(220,235,247,.14);
  --line2:rgba(220,235,247,.075);
  --glass:rgba(10,16,24,.56);
  --glass2:rgba(8,13,20,.78);
  --blue:#9fd7ff;
  --blue2:#d9efff;
  --amber:#e9c88c;
  --red:#ff856f;
  --shell:min(1260px,calc(100vw - 56px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}
button,a{font:inherit;color:inherit}
a{text-decoration:none}
button{cursor:pointer}
.shell{width:var(--shell);margin:0 auto}
.glass{background:linear-gradient(180deg,rgba(16,25,36,.76),rgba(6,11,17,.58));border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 28px 90px rgba(0,0,0,.34);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}

#globe-shell{position:fixed;inset:0;z-index:0;background:radial-gradient(circle at 50% 40%,#0b1724,#05070b 68%);overflow:hidden}
#cesiumContainer,#fallbackGlobe{position:absolute;inset:0;width:100%;height:100%}
#fallbackGlobe{z-index:0;display:none}
#cesiumContainer{z-index:1}
#cesiumContainer .cesium-viewer-bottom,#cesiumContainer .cesium-viewer-toolbar,#cesiumContainer .cesium-widget-credits{opacity:.42;transform:scale(.82);transform-origin:bottom right}
.earth-shade{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(circle at 50% 44%,transparent 0 24%,rgba(5,7,11,.04) 42%,rgba(5,7,11,.52) 88%,rgba(5,7,11,.78) 100%),linear-gradient(90deg,rgba(5,7,11,.30),transparent 26%,transparent 74%,rgba(5,7,11,.30))}
.scanlines{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:.10;background:repeating-linear-gradient(to bottom,transparent 0,transparent 3px,rgba(255,255,255,.04) 4px)}
.grain{position:absolute;inset:0;z-index:4;pointer-events:none;opacity:.05;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E")}

.topbar{position:fixed;z-index:50;top:16px;left:50%;transform:translateX(-50%);height:62px;border:1px solid var(--line);background:rgba(6,10,16,.64);backdrop-filter:blur(18px);border-radius:18px;padding:0 18px;display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:24px;box-shadow:0 18px 55px rgba(0,0,0,.28)}
.brand{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.22em;font-weight:700}.brand img{width:31px;height:31px}.brand.compact img{width:26px;height:26px}.brand.compact{font-size:11px}
.top-center{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.17em;color:var(--muted)}
.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--blue2);box-shadow:0 0 14px rgba(159,215,255,.85);animation:blink 2s ease-in-out infinite}
.topbar nav{display:flex;justify-content:flex-end;gap:20px;color:var(--muted);font-size:11px}.topbar nav a:hover{color:#fff}
.mini-btn,.exit-live,.reset-view{border:1px solid var(--line);background:rgba(255,255,255,.055);color:#fff;border-radius:999px;padding:10px 14px;font-size:9px;letter-spacing:.13em}.mini-btn:hover,.exit-live:hover,.reset-view:hover{background:rgba(255,255,255,.11)}

.side-rail{position:fixed;z-index:32;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;color:var(--muted2);font-size:8px;letter-spacing:.18em}.rail-left{left:17px}.rail-right{right:17px;gap:8px}.rail-title{writing-mode:vertical-rl}.rail-line{width:1px;height:72px;margin:14px 0;background:linear-gradient(transparent,var(--line),transparent)}
.rail-layer{border:0;background:none;color:var(--muted2);padding:7px 0;font-size:8px;letter-spacing:.16em;display:flex;gap:5px;align-items:center}.rail-layer i{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.18)}.rail-layer.active{color:var(--blue2)}.rail-layer.active i{background:var(--blue);box-shadow:0 0 9px var(--blue)}
.rail-right strong{font-size:8px;color:rgba(255,255,255,.68);font-weight:500;writing-mode:vertical-rl}

main{position:relative;z-index:10}
.scene{min-height:112vh;position:relative;display:flex;align-items:center;padding:130px 0 110px}
.scene.hero{min-height:100vh}
.hero-copy,.copy-block{position:relative;z-index:12;max-width:650px}
.eyebrow{font-size:10px;letter-spacing:.21em;color:var(--muted);display:flex;align-items:center;gap:10px;text-transform:uppercase}.eyebrow span{width:26px;height:1px;background:var(--blue);box-shadow:0 0 12px rgba(159,215,255,.4)}
.hero h1,.copy-block h2,.final-card h2{margin:18px 0 18px;font-weight:600;letter-spacing:-.065em;line-height:.91}.hero h1{font-size:clamp(58px,8.4vw,118px)}.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(225,240,250,.75)}
.hero p,.copy-block p,.final-card p{max-width:570px;color:var(--muted);font-size:16px;line-height:1.72}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{border:1px solid var(--line);border-radius:999px;padding:14px 18px;font-size:10px;letter-spacing:.14em;display:inline-flex;align-items:center;gap:18px;background:rgba(5,10,16,.44)}.btn.primary{background:#eef5fb;color:#07101a;border-color:#eef5fb;font-weight:700}.btn.ghost{color:#fff}.btn:hover{transform:translateY(-2px)}
.hero-telemetry{position:absolute;right:0;bottom:20%;width:275px;border-radius:18px;padding:17px}.panel-head{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.15em;color:var(--muted)}.panel-head b{font-size:8px;color:var(--blue2);font-weight:600}
.signal-wave{height:74px;display:flex;align-items:center;gap:6px;margin:10px 0 6px}.signal-wave i{display:block;width:100%;border-radius:99px;background:linear-gradient(180deg,rgba(217,239,255,.9),rgba(159,215,255,.1));animation:wave 1.6s ease-in-out infinite}.signal-wave i:nth-child(1){height:22%;animation-delay:-.2s}.signal-wave i:nth-child(2){height:64%;animation-delay:-.8s}.signal-wave i:nth-child(3){height:38%;animation-delay:-.4s}.signal-wave i:nth-child(4){height:82%;animation-delay:-1.1s}.signal-wave i:nth-child(5){height:48%;animation-delay:-.6s}.signal-wave i:nth-child(6){height:72%;animation-delay:-1.2s}.signal-wave i:nth-child(7){height:29%;animation-delay:-.3s}.signal-wave i:nth-child(8){height:54%;animation-delay:-.9s}
.telemetry-row{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line2);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.telemetry-row span{color:var(--muted2)}.telemetry-row strong{font-size:9px;font-weight:500}
.hero-caption{position:absolute;left:0;bottom:7%;display:flex;align-items:flex-start;gap:12px;color:var(--muted);font-size:10px;letter-spacing:.06em}.hero-caption span{font-size:9px;color:var(--blue)}.hero-caption p{margin:0;font-size:10px;line-height:1.45}

.copy-block.left{margin-right:auto}.copy-block.right{margin-left:auto;text-align:left}.copy-block h2{font-size:clamp(48px,6.3vw,84px)}
.signal-cards{position:absolute;right:0;bottom:14%;width:min(620px,50vw);display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.signal-card{border-radius:17px;padding:16px;min-height:185px}.signal-card>div{display:flex;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:.14em;color:var(--muted2)}.signal-card>div b{font-size:7px;font-weight:600;color:rgba(255,255,255,.5)}.signal-card .live-label{color:var(--blue2)}.signal-card>strong{display:block;margin:37px 0 8px;font-size:15px;line-height:1.25}.signal-card p{margin:0;color:var(--muted2);font-size:10px;line-height:1.5}
.scene-index{position:absolute;right:0;bottom:7%;font-size:86px;line-height:1;color:rgba(255,255,255,.035);font-weight:700;letter-spacing:-.08em}

.track-card{position:absolute;left:0;bottom:11%;width:min(660px,53vw);border-radius:20px;padding:18px}.track-head{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em;color:var(--muted)}.track-head b{color:var(--amber);font-size:8px}.track-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.track-grid div{padding:12px;border:1px solid var(--line2);border-radius:12px;background:rgba(255,255,255,.02)}.track-grid span{display:block;color:var(--muted2);font-size:7px;letter-spacing:.14em}.track-grid strong{display:block;margin-top:7px;font-size:12px;font-weight:500}.track-plot{height:150px;position:relative;overflow:hidden;border-radius:14px;background:linear-gradient(180deg,rgba(159,215,255,.025),rgba(255,255,255,.01))}.track-plot svg{width:100%;height:100%}.grid-path{stroke:rgba(255,255,255,.07);fill:none;stroke-width:1}.signal-path{stroke:var(--blue);fill:none;stroke-width:2;filter:drop-shadow(0 0 6px rgba(159,215,255,.5));stroke-dasharray:800;stroke-dashoffset:800;animation:drawPath 4s ease-in-out infinite alternate}.track-plot i{position:absolute;top:0;bottom:0;width:1px;background:linear-gradient(transparent,var(--blue),transparent);animation:sweep 4s linear infinite}.track-card small{display:block;margin-top:10px;color:var(--muted2);font-size:8px;letter-spacing:.06em}

.layer-stack{position:absolute;right:0;bottom:12%;width:min(540px,46vw);display:grid;gap:8px}.layer-row{border-radius:14px;padding:13px 15px;display:grid;grid-template-columns:34px 1fr auto 18px;align-items:center;text-align:left;color:#fff}.layer-row span{font-size:8px;color:var(--muted2)}.layer-row b{font-size:11px;letter-spacing:.04em}.layer-row small{font-size:8px;color:var(--muted2);margin-right:16px}.layer-row i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.16)}.layer-row.active i{background:var(--blue);box-shadow:0 0 11px rgba(159,215,255,.85)}

.final{min-height:105vh;display:grid;grid-template-columns:1fr .42fr;gap:24px;align-items:center}.final-card{border-radius:28px;padding:42px;max-width:820px}.final-card>img{width:70px;height:70px;margin-bottom:34px}.final-card h2{font-size:clamp(52px,7vw,92px)}.final-meta{display:grid;gap:10px}.final-meta div{border-top:1px solid var(--line);padding:14px 0;display:flex;justify-content:space-between;gap:18px}.final-meta span{font-size:8px;letter-spacing:.16em;color:var(--muted2)}.final-meta strong{font-size:9px;font-weight:500}

.bottom-dock{position:fixed;z-index:45;left:50%;bottom:17px;transform:translateX(-50%);height:48px;border-radius:16px;display:flex;align-items:center;padding:0 8px;gap:4px;transition:opacity .35s ease,transform .35s ease}.dock-brand,.dock-toggle{border:0;background:none;color:var(--muted);height:34px;border-radius:10px;padding:0 10px;font-size:8px;letter-spacing:.12em;display:flex;align-items:center;gap:7px}.dock-brand img{width:21px;height:21px}.dock-brand:hover,.dock-toggle:hover{background:rgba(255,255,255,.055);color:#fff}.dock-toggle i{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.16)}.dock-toggle.active{color:var(--blue2)}.dock-toggle.active i{background:var(--blue);box-shadow:0 0 8px var(--blue)}.dock-divider{width:1px;height:22px;background:var(--line);margin:0 4px}

.live-console{position:fixed;inset:0;z-index:70;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s ease;background:radial-gradient(circle at center,transparent 38%,rgba(4,7,11,.13) 100%)}
body.live-mode{overflow:hidden}body.live-mode .live-console{pointer-events:auto;opacity:1;visibility:visible}body.live-mode #story,body.live-mode .topbar,body.live-mode .side-rail,body.live-mode .bottom-dock,body.live-mode .footer{opacity:0;pointer-events:none}body.live-mode .earth-shade{background:radial-gradient(circle at center,transparent 0 60%,rgba(5,7,11,.34) 100%)}
.live-topbar{position:absolute;top:14px;left:16px;right:16px;height:54px;border-radius:16px;padding:0 15px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.live-mode-status{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.14em}.live-mode-status small{color:var(--muted2);font-size:7px}.exit-live{justify-self:end}
.live-panel{position:absolute;top:84px;width:270px;border-radius:18px;padding:15px}.live-panel-left{left:16px}.live-panel-right{right:16px}.console-layer{width:100%;border:0;border-top:1px solid var(--line2);background:none;color:#fff;padding:12px 2px;display:grid;grid-template-columns:12px 1fr auto;align-items:center;text-align:left}.console-layer i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.16)}.console-layer.active i{background:var(--blue);box-shadow:0 0 9px var(--blue)}.console-layer span{display:grid;gap:3px}.console-layer b{font-size:9px;letter-spacing:.1em}.console-layer small{font-size:7px;color:var(--muted2)}.console-layer em{font-style:normal;font-size:7px;color:var(--muted2)}.console-layer.active em{color:var(--blue2)}.panel-note{margin-top:10px;padding-top:11px;border-top:1px solid var(--line2);color:var(--muted2);font-size:8px;line-height:1.45}.readout{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-top:1px solid var(--line2)}.readout span{font-size:8px;color:var(--muted2);letter-spacing:.13em}.readout strong{font-size:9px;font-weight:500}.divider{height:8px}.reset-view{width:100%;margin-top:10px}.reticle{position:absolute;left:50%;top:50%;width:46px;height:46px;transform:translate(-50%,-50%);border:1px solid rgba(217,239,255,.34);border-radius:50%;pointer-events:none}.reticle:before,.reticle:after{content:"";position:absolute;background:rgba(217,239,255,.5)}.reticle:before{width:70px;height:1px;left:-13px;top:22px}.reticle:after{width:1px;height:70px;top:-13px;left:22px}.reticle i{position:absolute;inset:9px;border:1px solid rgba(217,239,255,.15);border-radius:50%}.reticle b{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--blue2);left:21px;top:21px;box-shadow:0 0 8px var(--blue)}.live-bottomline{position:absolute;left:18px;right:18px;bottom:14px;display:flex;justify-content:space-between;color:var(--muted2);font-size:7px;letter-spacing:.15em}

.footer{position:relative;z-index:12;padding:60px 0 95px;border-top:1px solid var(--line2);display:flex;justify-content:space-between;gap:30px;color:var(--muted2)}.footer div{display:flex;gap:18px;align-items:center}.footer b{font-size:10px;letter-spacing:.18em}.footer span,.footer p{font-size:9px;line-height:1.5}.footer p{margin:0;max-width:470px;text-align:right}

.reveal{opacity:0;transform:translateY(26px);filter:blur(6px);transition:opacity .9s ease,transform .9s ease,filter .9s ease}.reveal.in-view{opacity:1;transform:none;filter:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}.tilt{transform-style:preserve-3d;transition:transform .22s ease,border-color .22s ease}.tilt:hover{border-color:rgba(217,239,255,.23)}.magnetic{transition:transform .18s ease}

@keyframes blink{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes wave{0%,100%{transform:scaleY(.72);opacity:.45}50%{transform:scaleY(1.08);opacity:1}}
@keyframes drawPath{to{stroke-dashoffset:0}}
@keyframes sweep{from{left:-5%}to{left:105%}}

@media(max-width:1050px){
  :root{--shell:min(100vw - 32px,1260px)}
  .topbar{grid-template-columns:1fr auto auto}.top-center{display:none}.topbar nav{display:none}
  .side-rail{display:none}.hero-telemetry{right:0;width:250px}.signal-cards,.track-card,.layer-stack{position:relative;right:auto;left:auto;bottom:auto;width:100%;margin-top:55px}.signal-cards{grid-template-columns:repeat(3,1fr)}.scene{display:block;padding-top:155px;min-height:auto;padding-bottom:180px}.copy-block.right{margin-left:0}.scene-index{right:12px}.final{display:grid;padding-top:140px}.bottom-dock{max-width:calc(100vw - 18px)}
}
@media(max-width:760px){
  :root{--shell:calc(100vw - 22px)}
  .topbar{top:9px;height:54px;padding:0 11px;border-radius:15px}.brand img{width:27px;height:27px}.mini-btn{padding:9px 11px}.hero h1{font-size:clamp(46px,13.4vw,66px);letter-spacing:-.075em}.hero p,.copy-block p,.final-card p{font-size:14px}.hero-telemetry{position:relative;right:auto;bottom:auto;width:100%;margin-top:52px}.hero-caption{position:relative;bottom:auto;margin-top:26px}.signal-cards{grid-template-columns:1fr}.track-grid{grid-template-columns:repeat(2,1fr)}.copy-block h2,.final-card h2{font-size:clamp(44px,14vw,70px)}.final{grid-template-columns:1fr}.final-card{padding:24px}.bottom-dock{height:46px;gap:0;padding:0 5px}.dock-brand span{display:none}.dock-toggle{padding:0 7px;font-size:7px}.live-panel{width:calc(50% - 21px);top:78px}.live-panel-left{left:10px}.live-panel-right{right:10px}.live-topbar{left:10px;right:10px;top:9px}.live-mode-status small{display:none}.footer{flex-direction:column}.footer p{text-align:left}.scene{padding-bottom:130px}.scene-index{font-size:64px}
}
@media(max-width:560px){
  .live-panel-left{width:calc(100% - 20px);max-height:240px;overflow:auto}.live-panel-right{top:auto;bottom:40px;width:calc(100% - 20px);display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.live-panel-right .panel-head,.live-panel-right .divider,.live-panel-right .reset-view{grid-column:1/-1}.live-panel-right .readout{display:grid;gap:4px}.live-panel-right .readout:nth-of-type(n+5){display:none}.live-bottomline{display:none}.reticle{top:54%}.signal-card{min-height:160px}.layer-row{grid-template-columns:28px 1fr 18px}.layer-row small{display:none}.track-grid{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Source-aware states */
[data-layer].unavailable{cursor:not-allowed;opacity:.58}
[data-layer].unavailable i{background:rgba(255,255,255,.12)!important;box-shadow:none!important}
.unavailable-pulse{animation:unavailablePulse .42s ease}
@keyframes unavailablePulse{0%,100%{opacity:.58}50%{opacity:.9}}
