*{box-sizing:border-box} :root{--bg:#061018;--panel:#0b202cdd;--line:#9bd1e229;--text:#f4fbfd;--muted:#9ab5c0;--cyan:#48d8e8;--blue:#4f8fff;--green:#4ee08d;--yellow:#ffd463;--orange:#ff9d57;--red:#ff5c70;color-scheme:dark} body{margin:0;background:radial-gradient(circle at 10% 0,#247d9429,transparent 32rem),linear-gradient(#07141c,var(--bg));color:var(--text);font-family:Inter,system-ui,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:1rem clamp(1rem,4vw,3.5rem);background:#040e15c7;border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.brand,.actions{display:flex;align-items:center;gap:.8rem}.brand span:last-child{display:grid}.brand small,.eyebrow{color:var(--cyan);font-size:.69rem;font-weight:800;letter-spacing:.15em}.anchor{display:grid;place-items:center;width:2.8rem;height:2.8rem;border:1px solid #48d8e847;border-radius:50%;background:#48d8e814}.status,.chip{display:inline-flex;align-items:center;gap:.45rem;padding:.38rem .7rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.76rem}.status i{width:.55rem;height:.55rem;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px currentColor}.status.online i{background:var(--green)}.status.offline i{background:var(--orange)}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:2.6rem;padding:.65rem 1rem;border:1px solid var(--line);border-radius:.78rem;background:transparent;color:var(--text);cursor:pointer}.primary{background:linear-gradient(135deg,#48d8e838,#4f8fff3b)}.full{width:100%}main{width:min(1500px,calc(100% - 2rem));margin:1rem auto 3rem}.panel{background:linear-gradient(145deg,#0e2431e8,#071822d6);border:1px solid var(--line);border-radius:1.25rem;box-shadow:0 24px 70px #00000052}.hero{display:grid;grid-template-columns:1.6fr 1fr;align-items:center;gap:2rem;min-height:23rem;padding:clamp(1.4rem,4vw,3.5rem)}.hero h1{margin:.2rem 0;font-size:clamp(2.5rem,6vw,5.2rem);line-height:.94;letter-spacing:-.055em}.lede,.note,.score-wrap p{color:var(--muted)}.ticker{display:flex;margin-top:2rem;border:1px solid var(--line);border-radius:.75rem;overflow:hidden}.ticker b{padding:.7rem;background:#ff5c701f;color:var(--red)}.ticker span{padding:.7rem 1rem;white-space:nowrap;overflow:hidden}.score-wrap{text-align:center}.score{--score:0;--ring:var(--cyan);position:relative;width:min(18rem,70vw);aspect-ratio:1;margin:auto;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--ring) calc(var(--score)*1%),#ffffff14 0)}.score:before{content:"";position:absolute;inset:.65rem;border-radius:50%;background:#081923}.score div{z-index:1;display:grid}.score strong{font-size:6rem;line-height:1;letter-spacing:-.08em}.score span{font-size:.68rem;color:var(--muted);font-weight:900;letter-spacing:.15em}.score-wrap button{border:0;background:none;color:var(--cyan);cursor:pointer}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}.grid>.panel{padding:1.25rem;min-height:18rem}.wide{grid-column:span 2}.panel header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.panel h2{margin:0;font-size:1.15rem}.warning{color:var(--yellow)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.metrics>div,.mini-grid>div,.projection-grid>div,.simulation>div{padding:1rem;border:1px solid var(--line);border-radius:.9rem;background:#ffffff06}.metrics span,.mini-grid span,.projection span,.simulation span{display:block;color:var(--muted);font-size:.76rem}.metrics strong{display:block;font-size:1.6rem}.metrics small{color:#78939e}.trend-head{display:flex;justify-content:space-between;margin-top:1.2rem;color:var(--muted);font-size:.78rem}#sparkline{width:100%;height:7rem;color:var(--cyan)}.weather-icon{font-size:2rem;color:var(--yellow)}.weather-main{display:flex;align-items:center;gap:1rem}.weather-main>strong{font-size:4.5rem;letter-spacing:-.07em}.weather-main span{display:grid}.weather-main small{color:var(--muted)}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1rem}.risk{margin-top:1rem}.risk>div:first-child{display:flex;justify-content:space-between}.bar,.confidence{height:.55rem;margin-top:.4rem;border-radius:999px;background:#ffffff12;overflow:hidden}.bar i,.confidence i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--yellow),var(--red));transition:.8s}.projection{display:grid;grid-template-columns:1fr 1.5fr;gap:1rem}.projection>div:first-child strong{display:block;font-size:4.5rem;letter-spacing:-.07em}.projection-grid,.simulation{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.projection-grid b,.simulation b{display:block}.confidence i{background:linear-gradient(90deg,var(--blue),var(--cyan))}.activities{display:grid;gap:.55rem}.activities div{display:flex;justify-content:space-between;padding:.85rem 1rem;border:1px solid var(--line);border-radius:.8rem}input[type=range]{width:100%;accent-color:var(--cyan)}.simulation{margin:1rem 0}.gps{padding:.8rem;border-radius:.7rem;background:#ffffff08;color:var(--muted)}footer{display:grid;gap:.5rem;padding:2rem .4rem 0;color:var(--muted);font-size:.8rem}footer b,footer span{display:block}dialog{width:min(43rem,calc(100% - 2rem));border:1px solid var(--line);border-radius:1rem;background:#0c222f;color:var(--text)}dialog form{position:relative;padding:1rem}.close{position:absolute;right:.3rem;top:.1rem;border:0;background:none;font-size:1.8rem}#breakdown{display:grid;gap:.6rem}.breakdown{display:grid;grid-template-columns:8rem 1fr 2.5rem;gap:.6rem;align-items:center}.breakdown .bar{margin:0}.breakdown .bar i{background:var(--cyan)}@media(max-width:980px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.wide{grid-column:span 2}.metrics{grid-template-columns:1fr 1fr}}@media(max-width:680px){.actions .btn{display:none}main{width:calc(100% - 1rem)}.grid{grid-template-columns:1fr}.wide{grid-column:auto}.projection{grid-template-columns:1fr}.projection-grid,.simulation{grid-template-columns:1fr 1fr}.score strong{font-size:4.5rem}}