:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#05080d;color:#eef6ff;font-synthesis:none}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{background:radial-gradient(circle at 55% 35%,#132738,#071018 40%,#030509)}canvas{position:fixed;inset:0;width:100%;height:100%;display:block;outline:none}button,input{font:inherit}.glass{background:linear-gradient(135deg,#0c1924d1,#050c13a8);border:1px solid rgba(143,207,255,.17);box-shadow:0 18px 45px #00000052,inset 0 1px #ffffff0a;-webkit-backdrop-filter:blur(18px) saturate(125%);backdrop-filter:blur(18px) saturate(125%)}.topbar{position:fixed;z-index:10;top:18px;left:18px;right:18px;min-height:74px;border-radius:16px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.eyebrow,.section-label{color:#70c9ff;font-size:10px;letter-spacing:.18em;font-weight:800;text-transform:uppercase}h1{font-size:18px;line-height:1.2;margin:4px 0 0;font-weight:650;letter-spacing:-.02em}.status-cluster{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.status-chip{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;background:#02090e85;border:1px solid rgba(255,255,255,.08);font-size:10px;font-weight:800;letter-spacing:.08em}.dot{width:7px;height:7px;border-radius:50%;box-shadow:0 0 12px currentColor}.dot.live{color:#56f7a0;background:currentColor}.dot.cold{color:#6cc8ff;background:currentColor}.dot.link{color:#b8a0ff;background:currentColor}.left-panel,.right-panel{position:fixed;z-index:10;top:110px;bottom:106px;width:260px;border-radius:16px;padding:15px;overflow:auto}.left-panel{left:18px}.right-panel{right:18px}section+section{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.07)}.section-label{margin-bottom:10px}.button-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.button-grid.compact button{font-size:10px;padding:8px}button{color:#dceeff;background:#2c4c6347;border:1px solid rgba(138,200,245,.16);border-radius:10px;padding:9px 8px;cursor:pointer;transition:.18s ease}button:hover{background:#4a81a661;border-color:#7ad1ff75;transform:translateY(-1px)}button:active{transform:translateY(0)}button.primary{background:linear-gradient(135deg,#0097ff7a,#5654ff52);border-color:#64caff8c}button.active{color:#08101a;background:#8bd7ff}.toggle-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding:6px 0;cursor:pointer}.toggle-row input{display:none}.toggle-row i{width:32px;height:18px;border-radius:999px;position:relative;background:#ffffff24;transition:.2s}.toggle-row i:after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;background:#c6d6e1;border-radius:50%;transition:.2s}.toggle-row input:checked+i{background:#33b1ff80;box-shadow:0 0 12px #33b1ff40}.toggle-row input:checked+i:after{left:17px;background:#fff}.help-copy p,#part-description{color:#a9bdcb;font-size:11px;line-height:1.55;margin:0}.metric{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:11px;color:#9eb2c0}.metric strong{color:#eaf7ff;font-size:12px;text-align:right}h2{font-size:16px;line-height:1.25;margin:2px 0 8px}.tag-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.tag-row span{padding:4px 7px;border:1px solid rgba(128,205,255,.16);border-radius:999px;color:#8bd7ff;background:#1e5e822e;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.thermal-stack{display:grid;gap:7px}.thermal-stack div{position:relative;overflow:hidden;display:flex;justify-content:space-between;gap:10px;padding:8px 9px;border-radius:8px;background:#ffffff09;font-size:10px}.thermal-stack div:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(#ffbf75,#65bfff)}.thermal-stack b{color:#e9f7ff}.timeline{position:fixed;z-index:10;left:296px;right:296px;bottom:18px;height:72px;border-radius:16px;padding:12px 15px;pointer-events:none}.timeline-head{display:flex;justify-content:space-between;color:#cfe9fa;font-size:10px;margin-bottom:8px}.timeline-track{height:4px;background:#ffffff1a;border-radius:999px;overflow:hidden}.timeline-track div{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#51bfff,#a36dff,#55ffbd);box-shadow:0 0 15px #5bc5ffcc}.timeline-steps{display:grid;grid-template-columns:repeat(6,1fr);color:#7890a0;font-size:8px;letter-spacing:.08em;text-transform:uppercase;margin-top:8px}.timeline-steps span:not(:first-child){text-align:center}.timeline-steps span:last-child{text-align:right}.world-label{position:fixed;z-index:8;padding:5px 7px;border-radius:6px;background:#030a10bd;border:1px solid rgba(123,204,255,.26);color:#dff5ff;font-size:9px;transform:translate(-50%,-100%);white-space:nowrap;pointer-events:none;box-shadow:0 5px 14px #00000047}.world-label:after{content:"";position:absolute;top:100%;left:50%;height:12px;width:1px;background:#7bccff59}.tooltip{position:fixed;z-index:15;display:none;padding:6px 8px;border-radius:7px;color:#eaffff;background:#02080ce6;border:1px solid rgba(107,215,255,.3);font-size:10px;pointer-events:none}.loading{position:fixed;inset:0;z-index:50;display:grid;place-content:center;gap:14px;background:#05080d;color:#bfe8ff;font-size:11px;letter-spacing:.1em;text-transform:uppercase;transition:opacity .45s ease}.loading.hidden{opacity:0;pointer-events:none}.spinner{width:34px;height:34px;margin:auto;border-radius:50%;border:2px solid rgba(119,207,255,.18);border-top-color:#70cfff;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:980px){.right-panel{display:none}.timeline{right:18px}.status-chip:nth-child(n+2){display:none}}@media(max-width:680px){.topbar{top:8px;left:8px;right:8px}.left-panel{inset:auto 8px 80px;width:auto;height:150px;display:grid;grid-template-columns:1.1fr 1fr;gap:14px}.left-panel section{margin:0;padding:0;border:0}.left-panel section:nth-child(n+3){display:none}.timeline{left:8px;right:8px;bottom:8px;height:64px}.timeline-steps{display:none}h1{font-size:14px}}
