/* ===== inherited tokens (kept in sync with index.php) ===== */
:root{--bg:#05070c;--panel:#0c111d;--line:rgba(93,220,255,.24);--txt:#eef7ff;--soft:#aab8ca;--muted:#718197;--cyan:#31e7ff;--red:#ff4058;--green:#79ff9f;--gold:#ffd166;--blue:#4aa3ff;--bronze:#d58b4c;--orange:#ff7a18;
  --p1:var(--cyan);--p2:var(--red);--p3:var(--gold);--p4:var(--green);--p5:var(--blue)}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;color:var(--txt);font-family:"Spline Sans Mono",monospace;background:radial-gradient(1100px 620px at 8% -8%,rgba(49,231,255,.16),transparent 60%),radial-gradient(940px 560px at 94% 2%,rgba(255,47,143,.15),transparent 56%),radial-gradient(1200px 900px at 50% 120%,rgba(49,231,255,.05),transparent 60%),linear-gradient(180deg,#04050a,#0a0d15 54%,#04050a);overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(123,227,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(123,227,255,.028) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 88%);z-index:0}
::selection{background:rgba(49,231,255,.32);color:#fff}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:#060a12}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(49,231,255,.35),rgba(49,231,255,.15));border:2px solid #060a12;border-radius:6px}
::-webkit-scrollbar-thumb:hover{background:rgba(49,231,255,.5)}
a{color:inherit;text-decoration:none}
.wrap{max-width:1320px;margin:0 auto;padding:34px 16px 90px;position:relative;z-index:1;counter-reset:panel}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}
.brand-mini{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.12em;color:var(--cyan);font-weight:700;text-shadow:0 0 18px rgba(49,231,255,.4)}
.nav{display:flex;gap:10px;flex-wrap:wrap}
.nav a{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:12px;border:1px solid rgba(93,220,255,.24);padding:9px 13px;background:rgba(6,11,19,.7);color:var(--soft);transition:color .2s,border-color .2s,box-shadow .2s}
.nav a:hover,.nav a.current{border-color:var(--cyan);color:var(--txt);box-shadow:0 0 18px rgba(49,231,255,.18)}
.nav a.current{background:linear-gradient(180deg,rgba(49,231,255,.16),rgba(49,231,255,.05))}
.eyebrow{font-family:"Chakra Petch",sans-serif;color:var(--cyan);letter-spacing:.18em;text-transform:uppercase;font-weight:700;font-size:12px;text-shadow:0 0 20px rgba(49,231,255,.38)}
.panel-body .eyebrow{display:inline-flex;align-items:center;gap:10px;color:#eef7ff;font-size:13px;letter-spacing:.14em;text-shadow:0 0 14px rgba(49,231,255,.22)}
.panel-body .eyebrow:before{content:"";width:26px;height:2px;flex:none;background:linear-gradient(90deg,var(--cyan),var(--gold));box-shadow:0 0 12px rgba(49,231,255,.3)}
h1{font-family:"Chakra Petch",sans-serif;font-size:clamp(32px,6.4vw,70px);line-height:.9;margin:12px 0 16px;text-transform:uppercase;letter-spacing:.035em}
.slash{color:var(--red);text-shadow:0 0 24px rgba(255,64,88,.42)}
p.lead{max-width:760px;color:var(--soft);font-family:"Rajdhani",sans-serif;font-size:20px;line-height:1.4}
.lead b{color:var(--txt)}
.panel{position:relative;border:1px solid var(--line);background:radial-gradient(720px 220px at 16% 0%,rgba(49,231,255,.10),transparent 62%),radial-gradient(540px 220px at 100% 100%,rgba(255,209,102,.05),transparent 64%),linear-gradient(180deg,rgba(9,14,24,.84),rgba(4,7,13,.92) 74%);box-shadow:0 18px 48px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.025);margin-top:38px;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));counter-increment:panel;overflow:hidden}
.panel:before{content:"";position:absolute;inset:9px;border:1px solid rgba(93,220,255,.075);clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));box-shadow:inset 0 0 32px rgba(0,0,0,.42);pointer-events:none;z-index:0}
.panel>*{position:relative;z-index:1}
.panel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:30px 26px 20px;border-bottom:1px solid rgba(93,220,255,.10);background:linear-gradient(90deg,rgba(49,231,255,.055),rgba(255,209,102,.028),transparent);position:relative}
.panel-head:before{content:"";position:absolute;left:26px;top:19px;width:38px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--gold));box-shadow:0 0 14px rgba(49,231,255,.3)}
.panel-head:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(93,220,255,.34),rgba(255,209,102,.22),transparent)}
.panel-title{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:clamp(19px,2.3vw,27px);line-height:.98;color:var(--txt);text-shadow:0 0 16px rgba(49,231,255,.18)}
.panel-title:before{content:"/ " counter(panel,decimal-leading-zero);display:block;font-family:"Spline Sans Mono",monospace;font-size:10px;letter-spacing:.2em;color:var(--muted);margin-bottom:9px;text-shadow:none}
.panel-note{flex:none;border:1px solid rgba(93,220,255,.16);background:linear-gradient(180deg,rgba(10,16,27,.84),rgba(4,7,13,.72));padding:9px 12px 8px;font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.085em;font-size:11px;color:var(--soft);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));position:relative;text-align:left}
.panel-note:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--cyan),var(--gold))}
.panel-body{padding:26px;position:relative}
.lede{font-family:"Rajdhani",sans-serif;font-size:21px;line-height:1.45;color:var(--soft);margin:0 0 22px;max-width:860px}
.lede b{color:var(--txt)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tnum{font-variant-numeric:tabular-nums}
.tile{position:relative;border:1px solid rgba(93,220,255,.18);background:linear-gradient(180deg,rgba(10,16,27,.84),rgba(4,7,13,.72));padding:18px 16px 16px;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));overflow:hidden;transition:border-color .25s,box-shadow .25s,transform .25s}
.tile:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--cyan),rgba(255,209,102,.72));box-shadow:0 0 14px rgba(49,231,255,.16)}
.tile:after{content:"";position:absolute;right:0;top:0;width:64px;height:64px;background:linear-gradient(135deg,rgba(49,231,255,.11),transparent 64%);clip-path:polygon(100% 0,0 0,100% 100%)}
.tile:hover{border-color:rgba(93,220,255,.45);box-shadow:0 0 26px rgba(49,231,255,.10);transform:translateY(-2px)}
.tile b{font-family:"Chakra Petch",sans-serif;font-size:clamp(28px,2.6vw,36px);display:block;line-height:.95;text-shadow:0 0 18px rgba(238,247,255,.12);position:relative}
.tile span{font-size:10px;text-transform:uppercase;color:var(--muted);display:block;margin-top:9px;letter-spacing:.1em;line-height:1.5;position:relative}
.tile.cyan b{color:var(--cyan);text-shadow:0 0 20px rgba(49,231,255,.4)}
.tile.green b{color:var(--green);text-shadow:0 0 20px rgba(121,255,159,.35)} .tile.green:before{background:linear-gradient(90deg,var(--green),rgba(49,231,255,.6))}
.tile.gold b{color:var(--gold);text-shadow:0 0 20px rgba(255,209,102,.35)} .tile.gold:before{background:linear-gradient(90deg,var(--gold),rgba(49,231,255,.5))}
.tile.red b{color:var(--red);text-shadow:0 0 20px rgba(255,64,88,.35)} .tile.red:before{background:linear-gradient(90deg,var(--red),rgba(255,209,102,.5))}
.insightbox{position:relative;margin-top:22px;border:1px solid rgba(49,231,255,.2);background:linear-gradient(90deg,rgba(49,231,255,.08),rgba(49,231,255,.015));padding:16px 19px 15px 22px;font-family:"Rajdhani",sans-serif;font-size:18px;line-height:1.5;color:var(--soft);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px))}
.insightbox:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--cyan),var(--gold));box-shadow:0 0 18px rgba(49,231,255,.45)}
.insightbox b{color:var(--txt)}
.empty{color:var(--muted);font-family:"Rajdhani",sans-serif;font-size:16px;padding:8px 2px}
.skeleton{color:var(--muted);font-size:13px;padding:6px 2px;animation:pulse 1.3s infinite}
@keyframes pulse{50%{opacity:.45}}
@media(max-width:760px){.panel-head{flex-direction:column;align-items:flex-start;gap:12px}.panel-body{padding:20px 16px}}

/* ===== toggles ===== */
.toolbar{display:flex;gap:10px;align-items:center}
.tg{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:11px;border:1px solid rgba(93,220,255,.24);padding:9px 12px;background:rgba(6,11,19,.7);color:var(--soft);cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.tg:hover{border-color:var(--cyan);color:var(--txt)}
.tg .led{width:8px;height:8px;border-radius:50%;background:var(--muted)}
.tg.on .led{background:var(--green);box-shadow:0 0 10px rgba(121,255,159,.7)}
.tg:focus-visible,.nav a:focus-visible,.r-search-input:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}

/* ===== HUD: status, bpm, ecg ===== */
.ecg-canvas{display:block;width:100%;height:100%}
.r-status{font-family:"Chakra Petch",sans-serif;font-weight:700;letter-spacing:.14em;font-size:13px;text-transform:uppercase;display:flex;align-items:center;gap:9px}
.r-status .pip{width:9px;height:9px;border-radius:50%;background:var(--muted)}
.r-stamp{font-size:10px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;text-align:right}
.bpm{position:absolute;right:18px;bottom:14px;text-align:right;pointer-events:none}
.bpm b{font-family:"Chakra Petch",sans-serif;font-size:44px;line-height:.85;display:block;color:var(--green);text-shadow:0 0 22px rgba(121,255,159,.35)}
.bpm span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.mstat{position:relative;display:flex;align-items:baseline;gap:16px;border:1px solid rgba(93,220,255,.18);background:linear-gradient(90deg,rgba(10,16,27,.85),rgba(4,8,15,.65));padding:17px 18px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.mstat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--cyan),var(--gold));box-shadow:0 0 12px rgba(49,231,255,.4)}
.mstat b{font-family:"Chakra Petch",sans-serif;font-size:33px;line-height:.95;color:#fff;text-shadow:0 0 18px rgba(49,231,255,.3);min-width:64px}
.mstat span{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.08em;line-height:1.4}
.st-FLATLINE .r-status .pip,.st-FAINT .r-status .pip{background:var(--red);box-shadow:0 0 12px rgba(255,64,88,.6)}
.st-FLATLINE .r-status,.st-FAINT .r-status{color:#ff6677}
.st-FLATLINE .bpm b,.st-FAINT .bpm b{color:#ff6677;text-shadow:0 0 22px rgba(255,64,88,.32)}
.st-STIRRING .r-status .pip{background:var(--gold);box-shadow:0 0 12px rgba(255,209,102,.6)}
.st-STIRRING .r-status{color:var(--gold)} .st-STIRRING .bpm b{color:var(--gold)}
.st-ALIVE .r-status .pip,.st-SURGE .r-status .pip{background:var(--green);box-shadow:0 0 12px rgba(121,255,159,.65)}
.st-ALIVE .r-status,.st-SURGE .r-status{color:var(--green)}

/* ===== reactor hero ===== */
.reactor{position:relative;border:1px solid var(--line);background:linear-gradient(135deg,rgba(13,18,29,.96),rgba(5,7,13,.94));box-shadow:0 26px 90px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.03) inset;clip-path:polygon(0 0,calc(100% - 30px) 0,100% 30px,100% 100%,30px 100%,0 calc(100% - 30px))}
.reactor:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(700px 380px at 72% 30%,rgba(49,231,255,.16),transparent 62%),radial-gradient(520px 300px at 8% 6%,rgba(255,64,88,.14),transparent 64%)}
.reactor:after{content:"";position:absolute;top:0;bottom:0;left:-15%;width:12%;z-index:1;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(49,231,255,.06),transparent);animation:rscan 9s linear infinite}
@keyframes rscan{to{left:108%}}
body.fx-off .reactor:after{animation:none;display:none}
@media(prefers-reduced-motion:reduce){.reactor:after{animation:none;display:none}}
.reactor-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,500px);gap:44px;align-items:center;padding:54px 46px 26px;z-index:4}
.r-left{min-width:0}.r-left h1{margin:12px 0 18px}
.r-core-wrap{display:flex;align-items:center;justify-content:center;position:relative}
.r-core-wrap:before{content:"";position:absolute;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(49,231,255,.13),transparent 62%);filter:blur(6px);pointer-events:none}
.r-core-wrap .fg-core{width:min(440px,100%)}
.r-readhead{position:absolute;left:18px;top:12px;z-index:3;display:flex;flex-direction:column;gap:5px;background:rgba(3,6,11,.78);border:1px solid rgba(93,220,255,.14);padding:8px 12px;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%)}
.r-band .r-stamp{text-align:left}
.r-statsrow{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:0 46px 24px;z-index:2}
.r-band{position:relative;height:148px;border-top:1px solid rgba(93,220,255,.14);background:linear-gradient(180deg,rgba(4,8,15,.55),rgba(3,6,11,.85));z-index:2;overflow:hidden}
.r-band:before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(93,220,255,.4),rgba(255,209,102,.25),transparent)}
.r-band .ecg-canvas{position:absolute;inset:0;width:100%;height:100%}
.r-band-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(93,220,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(93,220,255,.04) 1px,transparent 1px);background-size:100% 25%,6.25% 100%;mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.55))}
.r-bpm{right:26px;bottom:14px;z-index:3;background:rgba(3,6,11,.6);padding:6px 10px}
.r-mode-tag{position:absolute;left:26px;top:18px;z-index:3;font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:10px;color:var(--muted);display:flex;align-items:center;gap:8px}
.r-mode-tag .dot{width:7px;height:7px;border-radius:50%;background:var(--muted)}
body.calibrated .r-mode-tag .dot{background:var(--cyan);box-shadow:0 0 10px var(--cyan)}
body.compare-on .r-mode-tag .dot{background:var(--gold);box-shadow:0 0 10px var(--gold)}
@media(max-width:1120px){.reactor-grid{grid-template-columns:1fr;gap:14px;padding:34px 24px 14px}.r-core-wrap{order:-1}.r-core-wrap .fg-core{width:min(360px,86vw)}.r-statsrow{padding:0 24px 20px}}
@media(max-width:560px){.reactor-grid{padding:28px 16px 10px}.r-statsrow{grid-template-columns:1fr;padding:0 16px 16px;gap:10px}.r-band{height:118px}}

/* ===== fuel-gauge core (the dial) ===== */
.fg-core{position:relative;aspect-ratio:1;margin:0 auto;cursor:default;user-select:none}
.fg-dial{position:absolute;inset:0;width:100%;height:100%}
.fg-track{stroke:rgba(93,220,255,.13);stroke-width:9;stroke-linecap:round}
.fg-arc{stroke:var(--cyan);stroke-width:9;stroke-linecap:round;filter:drop-shadow(0 0 10px rgba(49,231,255,.65));transition:stroke .4s}
.fg-knob-dot{fill:#fff;filter:drop-shadow(0 0 7px rgba(49,231,255,.9))}
.fg-ticks line{stroke:rgba(93,220,255,.22)}
.fg-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}
.fg-rrv{font-family:"Chakra Petch",sans-serif;font-size:clamp(48px,7vw,84px);line-height:.85;color:#fff;text-shadow:0 0 32px rgba(49,231,255,.5)}
.fg-rrlab{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.fg-tier{margin-top:11px;font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:17px;color:var(--cyan);text-shadow:0 0 16px rgba(49,231,255,.4)}
.fg-hidden-range{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
@keyframes fgIgnite{0%{transform:scale(1);filter:brightness(1)}24%{transform:scale(1.055);filter:brightness(1.65)}100%{transform:scale(1);filter:brightness(1)}}
.fg-core.igniting{animation:fgIgnite .92s cubic-bezier(.18,.75,.2,1)}
@media(prefers-reduced-motion:reduce){.fg-core.igniting{animation:none}}

/* ===== war-room search ===== */
.r-search{margin-top:22px;position:relative;max-width:480px}
.r-search-input{width:100%;border:1px solid rgba(93,220,255,.28);background:rgba(2,5,10,.85);color:var(--txt);font-family:"Spline Sans Mono",monospace;font-size:15px;padding:15px 16px;outline:none;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}
.r-search-input:focus{border-color:var(--cyan);box-shadow:0 0 24px rgba(49,231,255,.16)}
.r-search-help{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:9px;line-height:1.45}
.r-search-help b{color:var(--soft)}
.r-results{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;background:rgba(5,9,16,.99);backdrop-filter:blur(6px);border:1px solid rgba(93,220,255,.35);box-shadow:0 24px 70px rgba(0,0,0,.7),0 0 24px rgba(49,231,255,.12);max-height:272px;overflow:auto}
.r-result{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:11px 13px;cursor:pointer;border:0;border-bottom:1px solid rgba(93,220,255,.08);background:transparent;color:var(--txt);font:inherit;text-align:left}
.r-result:last-child{border-bottom:0}
.r-result:hover,.r-result.kbd{background:rgba(49,231,255,.09)}
.r-result-name{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.r-result-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);white-space:nowrap;flex:none}
.r-result-rr{color:var(--cyan);font-weight:700}
.r-result-none{padding:12px 13px;color:var(--muted);font-size:13px;font-family:"Rajdhani",sans-serif}
.r-result-add{font-family:"Chakra Petch",sans-serif;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(255,209,102,.4);padding:3px 7px}
.r-chiprow{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px;min-height:0}
.r-chip{display:inline-flex;align-items:center;gap:7px;font-family:"Chakra Petch",sans-serif;font-size:11px;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line);background:rgba(4,8,15,.7);padding:5px 6px 5px 9px;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,0 100%)}
.r-chip .sw{width:9px;height:9px;border-radius:2px}
.r-chip b{color:#fff}
.r-chip .x{cursor:pointer;color:var(--muted);border:0;background:transparent;font:inherit;padding:0 2px}
.r-chip .x:hover{color:var(--red)}
.r-cta{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}
.r-btn{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.1em;font-weight:900;font-size:12px;border:1px solid rgba(93,220,255,.26);background:linear-gradient(180deg,rgba(49,231,255,.12),rgba(7,13,24,.88));color:var(--txt);padding:12px 18px;cursor:pointer;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 5px 0 rgba(0,0,0,.30),0 0 14px rgba(49,231,255,.08);transition:border-color .2s,background .2s,box-shadow .2s}
.r-btn:hover{border-color:rgba(255,209,102,.36);background:linear-gradient(180deg,rgba(255,209,102,.12),rgba(7,13,24,.90));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 5px 0 rgba(0,0,0,.30),0 0 18px rgba(255,209,102,.10)}
.r-btn[disabled]{opacity:.4;cursor:not-allowed;border-color:var(--muted);box-shadow:none}
.r-btn.ghost{border-color:var(--line);background:rgba(4,8,15,.7);color:var(--soft);box-shadow:none}
.r-btn.ghost:hover{border-color:var(--cyan);color:#fff;background:rgba(4,8,15,.7)}

/* ===== BOOM ignition ===== */
#boom{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:0;background:radial-gradient(circle at var(--bx,50%) var(--by,44%),rgba(255,255,255,.96),rgba(49,231,255,.55) 13%,rgba(255,64,88,.26) 30%,transparent 56%)}
#boom.go{animation:boomFlash .9s ease-out}
@keyframes boomFlash{0%{opacity:0}6%{opacity:1}20%{opacity:.8}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){#boom.go{animation:none}}
.core-ring{position:absolute;left:50%;top:50%;width:72%;aspect-ratio:1;transform:translate(-50%,-50%) scale(.55);border-radius:50%;border:3px solid rgba(49,231,255,.85);box-shadow:0 0 34px rgba(49,231,255,.55),inset 0 0 24px rgba(49,231,255,.3);opacity:0;pointer-events:none}
.core-ring.go{animation:coreRing .85s cubic-bezier(.2,.8,.3,1)}
@keyframes coreRing{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}12%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(1.45)}}
@media(prefers-reduced-motion:reduce){.core-ring.go{animation:none}}
body.fx-off .core-ring.go{animation:none}

/* ===== personal reactor (your war room) ===== */
.personal{margin-top:34px;border-color:rgba(49,231,255,.4);box-shadow:0 0 50px rgba(49,231,255,.11),0 18px 60px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,64,88,.06)}
.personal[hidden]{display:none}
.personal.reveal{animation:prReveal .6s cubic-bezier(.2,.8,.2,1)}
@keyframes prReveal{0%{opacity:0;transform:translateY(16px)}100%{opacity:1;transform:none}}
.pr-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:20px}
.pr-id{min-width:0}
.pr-name{font-family:"Chakra Petch",sans-serif;font-size:clamp(28px,3.6vw,44px);text-transform:uppercase;letter-spacing:.02em;color:#fff;line-height:.95;text-shadow:0 0 26px rgba(49,231,255,.35)}
.pr-sub{margin-top:10px;font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:12px;color:var(--soft)}
.pr-sub .vchk{color:var(--green)}
.pr-percentile{position:relative;font-family:"Chakra Petch",sans-serif;text-align:right;flex:none;border:1px solid rgba(255,209,102,.3);background:linear-gradient(165deg,rgba(255,209,102,.1),rgba(4,8,15,.6));padding:15px 19px;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}
.pr-percentile b{display:block;font-size:clamp(32px,3.4vw,44px);line-height:.9;color:var(--gold);text-shadow:0 0 22px rgba(255,209,102,.45)}
.pr-percentile span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.pr-scout{font-family:"Rajdhani",sans-serif;font-size:19px;line-height:1.5;color:#d8e6f2;border:1px solid rgba(49,231,255,.18);border-left:4px solid var(--cyan);background:linear-gradient(90deg,rgba(49,231,255,.07),transparent);padding:15px 19px;margin:0 0 22px;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}
.pr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
.pr-stat{position:relative;border:1px solid rgba(93,220,255,.18);background:linear-gradient(170deg,rgba(10,16,27,.85),rgba(4,8,15,.7));padding:15px 14px;clip-path:polygon(0 0,calc(100% - 11px) 0,100% 11px,100% 100%,0 100%);transition:border-color .25s,box-shadow .25s}
.pr-stat:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,rgba(93,220,255,.45),transparent 70%)}
.pr-stat:hover{border-color:rgba(93,220,255,.4);box-shadow:0 0 20px rgba(49,231,255,.08)}
.pr-stat b{font-family:"Chakra Petch",sans-serif;font-size:30px;display:block;line-height:1}
.pr-stat span{font-size:10px;text-transform:uppercase;color:var(--muted);display:block;margin-top:7px;letter-spacing:.06em;line-height:1.4}
.pr-stat.up b{color:var(--green);text-shadow:0 0 18px rgba(121,255,159,.4)} .pr-stat.up:before{background:linear-gradient(90deg,var(--green),transparent 70%)}
.pr-stat.down b{color:var(--red);text-shadow:0 0 18px rgba(255,64,88,.4)} .pr-stat.down:before{background:linear-gradient(90deg,var(--red),transparent 70%)}
@media(max-width:760px){.pr-grid{grid-template-columns:repeat(2,1fr)}}

/* gauges: form / consistency / climb */
.pr-gauges{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}
.gauge{position:relative;border:1px solid var(--line);background:linear-gradient(170deg,rgba(10,16,27,.8),rgba(4,8,15,.6));padding:19px 18px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.gauge-h{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:var(--muted);margin-bottom:11px;display:flex;justify-content:space-between;align-items:baseline}
.gauge-h b{font-size:27px;color:#fff;text-shadow:0 0 16px rgba(238,247,255,.15)}
.gauge-bar{height:11px;border-radius:6px;background:rgba(93,220,255,.1);overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.5)}
.gauge-fill{height:100%;border-radius:6px;transition:width .9s cubic-bezier(.2,.8,.2,1);box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.gauge-note{font-size:11px;color:var(--muted);margin-top:9px;font-family:"Rajdhani",sans-serif;font-weight:600;line-height:1.4}
@media(max-width:680px){.pr-gauges{grid-template-columns:1fr}}

/* DNA bars */
.dna{display:grid;gap:9px;margin-bottom:4px}
.dna-row{display:grid;grid-template-columns:110px 1fr 42px;align-items:center;gap:10px}
.dna-lab{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.05em;font-size:11px;color:var(--soft)}
.dna-track{display:block;height:11px;background:rgba(93,220,255,.1);border-radius:6px;overflow:hidden}
.dna-bar{display:block;height:100%;border-radius:6px;transition:width .9s cubic-bezier(.2,.8,.2,1)}
.dna-val{font-family:"Chakra Petch",sans-serif;font-size:13px;text-align:right;color:#fff}

.pr-rivals{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}
.pr-col-h{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:var(--muted);margin-bottom:10px}
.pr-rival{position:relative;display:flex;justify-content:space-between;gap:10px;padding:10px 12px 10px 15px;border:1px solid rgba(93,220,255,.13);background:linear-gradient(90deg,rgba(10,16,27,.8),rgba(4,8,15,.55));margin-bottom:8px;font-family:"Rajdhani",sans-serif;font-weight:600;font-size:15px;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%);transition:border-color .2s,transform .2s}
.pr-rival:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:rgba(93,220,255,.3)}
.pr-rival:hover{border-color:rgba(93,220,255,.4);transform:translateX(2px)}
.pr-rival .gp{font-variant-numeric:tabular-nums;font-weight:700;font-family:"Chakra Petch",sans-serif;font-size:13px}
.pr-rival .gp.up{color:var(--green);text-shadow:0 0 12px rgba(121,255,159,.4)} .pr-rival .gp.down{color:var(--red);text-shadow:0 0 12px rgba(255,64,88,.4)}
.pr-rival:has(.gp.up):before{background:var(--green);box-shadow:0 0 10px rgba(121,255,159,.5)}
.pr-rival:has(.gp.down):before{background:var(--red);box-shadow:0 0 10px rgba(255,64,88,.5)}
@media(max-width:680px){.pr-rivals{grid-template-columns:1fr}}
.pr-move{position:relative;border:1px solid rgba(255,209,102,.4);background:linear-gradient(165deg,rgba(255,209,102,.11),rgba(255,209,102,.03) 50%,rgba(10,16,27,.7));padding:19px 21px;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));box-shadow:0 0 36px rgba(255,209,102,.07)}
.pr-move:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent 70%)}
.pr-move-h{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.13em;font-size:12px;color:var(--gold);margin-bottom:10px;text-shadow:0 0 16px rgba(255,209,102,.45)}
.pr-move p{margin:0;font-family:"Rajdhani",sans-serif;font-size:19px;line-height:1.45;color:var(--txt)}
.pr-spark{position:relative;margin:2px 0 22px;border:1px solid rgba(93,220,255,.18);background:linear-gradient(170deg,rgba(10,16,27,.8),rgba(4,8,15,.6));padding:14px 16px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.pr-spark:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--cyan),transparent);box-shadow:0 0 10px rgba(49,231,255,.35)}
.pr-spark-h{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.09em;font-size:11px;color:var(--muted);margin-bottom:10px;display:flex;justify-content:space-between}
.pr-spark svg{display:block;width:100%;height:72px}
.pr-clock{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:16px}
.pr-clock .b{font-family:"Rajdhani",sans-serif;font-size:16px;color:var(--soft)}
.pr-clock .b b{color:var(--green);font-weight:700}
.pr-clock .b.bad b{color:var(--red)}

/* next-rank progress (exact ladder cutoffs, not estimates) */
.pr-next{position:relative;margin:0 0 22px;border:1px solid rgba(49,231,255,.28);background:linear-gradient(90deg,rgba(49,231,255,.08),rgba(49,231,255,.02));padding:15px 17px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.pr-next:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--cyan),transparent 70%)}
.pr-next-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.09em;font-size:11px;color:var(--muted);margin-bottom:10px}
.pr-next-h b{font-size:17px;color:var(--cyan);text-shadow:0 0 16px rgba(49,231,255,.45)}
.pr-next-bar{position:relative;height:13px;background:rgba(93,220,255,.1);border-radius:7px;overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.5)}
.pr-next-fill{height:100%;border-radius:7px;background:linear-gradient(90deg,rgba(49,231,255,.45),var(--cyan));box-shadow:0 0 16px rgba(49,231,255,.55);transition:width .9s cubic-bezier(.2,.8,.2,1)}
.pr-next-scale{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:7px;letter-spacing:.05em}

/* last scored game — why the RR moved */
.pr-read{position:relative;margin:0 0 22px;border:1px solid rgba(93,220,255,.2);background:linear-gradient(170deg,rgba(10,16,27,.8),rgba(4,8,15,.6));padding:16px 18px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.pr-read:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,rgba(93,220,255,.5),transparent)}
.pr-read-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.09em;font-size:11px;color:var(--muted);margin-bottom:9px}
.pr-read-h b{font-size:18px}
.pr-read-h b.up{color:var(--green);text-shadow:0 0 16px rgba(121,255,159,.45)} .pr-read-h b.down{color:var(--red);text-shadow:0 0 16px rgba(255,64,88,.45)}
.pr-read p{margin:0 0 12px;font-family:"Rajdhani",sans-serif;font-size:17px;line-height:1.45;color:var(--soft)}
.pr-read-chips{display:flex;flex-wrap:wrap;gap:7px}
.pr-fchip{font-family:"Chakra Petch",sans-serif;font-size:10px;letter-spacing:.05em;text-transform:uppercase;padding:6px 10px;border:1px solid var(--line);color:var(--soft);background:rgba(4,8,15,.5);clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,0 100%);transition:box-shadow .2s}
.pr-fchip:hover{box-shadow:0 0 14px rgba(93,220,255,.12)}
.pr-fchip.good{color:var(--green);border-color:rgba(121,255,159,.4);background:rgba(121,255,159,.05)}
.pr-fchip.bad{color:var(--red);border-color:rgba(255,64,88,.4);background:rgba(255,64,88,.05)}
.pr-fchip small{color:var(--muted);text-transform:none;letter-spacing:0}

/* coach order kicker */
.pr-move .order{margin-top:11px;padding-top:10px;border-top:1px dashed rgba(255,209,102,.3);font-family:"Spline Sans Mono",monospace;font-size:13px;color:var(--gold);text-shadow:0 0 12px rgba(255,209,102,.3)}
.pr-move .state{font-family:"Chakra Petch",sans-serif;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-left:10px;border:1px solid rgba(255,209,102,.25);padding:2px 7px}

/* where you rank by craft */
.pr-kings{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0 0}
.pr-king{position:relative;border:1px solid rgba(255,209,102,.32);background:linear-gradient(165deg,rgba(255,209,102,.1),rgba(4,8,15,.75) 55%);padding:10px 14px 9px;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%);transition:border-color .2s,box-shadow .2s,transform .2s}
.pr-king:hover{border-color:rgba(255,209,102,.6);box-shadow:0 0 18px rgba(255,209,102,.12);transform:translateY(-1px)}
.pr-king b{font-family:"Chakra Petch",sans-serif;color:var(--gold);font-size:18px;display:block;text-shadow:0 0 14px rgba(255,209,102,.4)}
.pr-king span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}

/* your teammates */
.pr-mates{margin:22px 0 0}
.pr-mate{position:relative;display:flex;justify-content:space-between;gap:10px;padding:10px 12px 10px 15px;border:1px solid rgba(93,220,255,.13);background:linear-gradient(90deg,rgba(10,16,27,.8),rgba(4,8,15,.55));margin-bottom:8px;font-family:"Rajdhani",sans-serif;font-weight:600;font-size:15px;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%)}
.pr-mate:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--cyan);box-shadow:0 0 10px rgba(49,231,255,.4)}
.pr-mate .ss{color:var(--cyan);font-variant-numeric:tabular-nums;flex:none;font-family:"Chakra Petch",sans-serif;font-size:12px}

/* copy war-room link */
.pr-share{font-family:"Chakra Petch",sans-serif;font-size:10px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);background:rgba(4,8,15,.7);color:var(--soft);padding:8px 12px;cursor:pointer;flex:none;align-self:flex-start;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);transition:border-color .2s,color .2s,box-shadow .2s}
.pr-share:hover{border-color:var(--cyan);color:#fff;box-shadow:0 0 16px rgba(49,231,255,.18)}

/* ===== hall of kings ===== */
.kings{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.king{position:relative;border:1px solid rgba(255,209,102,.3);background:linear-gradient(165deg,rgba(255,209,102,.10),rgba(10,16,27,.85) 45%,rgba(4,8,15,.8));padding:17px 17px 16px;clip-path:polygon(0 0,calc(100% - 13px) 0,100% 13px,100% 100%,0 100%);transition:border-color .25s,box-shadow .25s,transform .25s}
.king:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent 70%)}
.king:hover{border-color:rgba(255,209,102,.6);box-shadow:0 0 26px rgba(255,209,102,.14);transform:translateY(-2px)}
.king .kc{font-family:"Chakra Petch",sans-serif;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:9px;text-shadow:0 0 14px rgba(255,209,102,.45)}
.king .kn{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:21px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 16px rgba(255,255,255,.12)}
.king .kyou{margin-top:9px;display:inline-block;font-family:"Chakra Petch",sans-serif;font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--cyan);border:1px solid rgba(49,231,255,.35);background:rgba(49,231,255,.06);padding:4px 8px;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%)}
.king .kyou.crowned{color:var(--gold);border-color:rgba(255,209,102,.5);background:rgba(255,209,102,.09);text-shadow:0 0 12px rgba(255,209,102,.5)}
@media(max-width:900px){.kings{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.kings{grid-template-columns:1fr}}

/* ===== weekly heatmap ===== */
.heat{margin-top:28px;border-top:1px dashed rgba(93,220,255,.16);padding-top:20px}
.heat-grid{display:grid;grid-template-columns:46px repeat(24,1fr);gap:3px}
.heat-cell{height:22px;border-radius:3px;background:rgba(93,220,255,.05);box-shadow:inset 0 0 0 1px rgba(93,220,255,.05);transition:transform .15s,filter .15s}
.heat-cell:hover{transform:scale(1.18);filter:brightness(1.35);z-index:2;position:relative}
.heat-cell.peak{outline:2px solid var(--green);outline-offset:1px;box-shadow:0 0 16px rgba(121,255,159,.5)}
.heat-lab{font-family:"Chakra Petch",sans-serif;font-size:10px;color:var(--soft);letter-spacing:.1em;display:flex;align-items:center;text-transform:uppercase}
.heat-x{display:grid;grid-template-columns:46px repeat(24,1fr);gap:3px;margin-top:6px}
.heat-x span{font-size:10px;color:var(--muted);text-align:center;letter-spacing:.02em}
.heat-note{margin-top:14px;font-family:"Rajdhani",sans-serif;font-size:17px;color:var(--soft);display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.heat-note b{color:var(--green);text-shadow:0 0 14px rgba(121,255,159,.4)}
.heat-leg{display:inline-flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;flex:none;margin-left:auto}
.heat-leg i{width:90px;height:9px;border-radius:5px;background:linear-gradient(90deg,#0a1422,#1b6fae,#31e7ff,#79ff9f,#ffd166,#ff7a18,#ff4058)}

/* ===== COMPARISON REACTOR ===== */
.compare{margin-top:34px;border-color:rgba(255,209,102,.38);box-shadow:0 0 50px rgba(255,209,102,.09),0 18px 60px rgba(0,0,0,.42)}
.compare .panel-head:before{background:linear-gradient(180deg,var(--gold),rgba(255,209,102,.1));box-shadow:0 0 14px rgba(255,209,102,.55)}
.compare[hidden]{display:none}
.compare.reveal{animation:prReveal .55s cubic-bezier(.2,.8,.2,1)}
.cmp-players{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.cmp-pcard{flex:1 1 150px;min-width:140px;border:1px solid var(--line);background:linear-gradient(170deg,rgba(10,16,27,.85),rgba(4,8,15,.7));padding:15px;position:relative;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);border-top:3px solid var(--pc);box-shadow:0 0 22px color-mix(in srgb,var(--pc) 12%,transparent);transition:transform .25s}
.cmp-pcard:hover{transform:translateY(-2px)}
.cmp-pcard .nm{font-family:"Chakra Petch",sans-serif;font-size:16px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cmp-pcard .rr{font-family:"Chakra Petch",sans-serif;font-size:30px;color:var(--pc);margin-top:5px;text-shadow:0 0 18px var(--pc)}
.cmp-pcard .sub{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:4px}
.cmp-verdict{font-family:"Rajdhani",sans-serif;font-size:22px;line-height:1.4;color:var(--txt);border:1px solid rgba(255,209,102,.28);border-left:3px solid var(--gold);background:linear-gradient(90deg,rgba(255,209,102,.08),transparent);padding:12px 16px;margin-bottom:20px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.cmp-verdict b{color:var(--gold);text-shadow:0 0 16px rgba(255,209,102,.4)}
.cmp-axes{display:grid;gap:13px}
.cmp-ax{border-bottom:1px solid rgba(93,220,255,.1);padding-bottom:12px}
.cmp-ax-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.cmp-ax-lab{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--soft)}
.cmp-ax-lead{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.cmp-ax-lead b{color:var(--gold);text-shadow:0 0 10px rgba(255,209,102,.35)}
.cmp-bars{display:grid;gap:6px}
.cmp-brow{display:grid;grid-template-columns:96px 1fr 66px;align-items:center;gap:10px}
.cmp-bname{font-size:11px;color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:"Rajdhani",sans-serif;font-weight:600}
.cmp-btrack{display:block;height:14px;background:rgba(93,220,255,.07);border-radius:7px;overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.5)}
.cmp-bfill{display:block;height:100%;border-radius:7px;transition:width .8s cubic-bezier(.2,.8,.2,1);opacity:.92;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.cmp-bfill.lead{box-shadow:0 0 14px var(--pc),inset 0 1px 0 rgba(255,255,255,.3)}
.cmp-bval{font-family:"Chakra Petch",sans-serif;font-size:13px;text-align:right;color:#fff;font-variant-numeric:tabular-nums}
.cmp-bval.dim{color:var(--muted)}
.cmp-duo{position:relative;margin-top:20px;border:1px solid rgba(121,255,159,.32);background:linear-gradient(165deg,rgba(121,255,159,.09),rgba(121,255,159,.02) 55%,rgba(10,16,27,.6));padding:17px 19px;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px))}
.cmp-duo:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--green),transparent 70%)}
.cmp-duo-h{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.11em;font-size:11px;color:var(--green);margin-bottom:8px;text-shadow:0 0 14px rgba(121,255,159,.4)}
.cmp-duo p{margin:0;font-family:"Rajdhani",sans-serif;font-size:18px;line-height:1.45;color:var(--soft)}
@media(max-width:560px){.cmp-brow{grid-template-columns:74px 1fr 56px}}

/* ===== FOMO briefing strip ===== */
.brief{margin-top:34px;border:1px solid var(--line);background:rgba(6,11,19,.5);display:grid;grid-template-columns:repeat(6,1fr);gap:1px;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px))}
.brief-cell{position:relative;background:linear-gradient(180deg,rgba(10,16,27,.92),rgba(6,11,19,.85));padding:19px 19px 17px;min-width:0;transition:background .25s}
.brief-cell:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,rgba(93,220,255,.45),transparent 75%)}
.brief-cell:hover{background:linear-gradient(180deg,rgba(14,22,36,.95),rgba(8,13,22,.9))}
.brief-cell:nth-child(2):before{background:linear-gradient(90deg,var(--green),transparent 75%)}
.brief-cell:nth-child(3):before{background:linear-gradient(90deg,var(--red),transparent 75%)}
.brief-cell:nth-child(4):before{background:linear-gradient(90deg,var(--gold),transparent 75%)}
.brief-cell:nth-child(6):before{background:linear-gradient(90deg,var(--cyan),transparent 75%)}
.brief-k{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.11em;font-size:10px;color:var(--muted);margin-bottom:9px}
.brief-v{font-family:"Chakra Petch",sans-serif;font-size:20px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brief-v small{font-size:13px;color:var(--soft);font-family:"Rajdhani",sans-serif;font-weight:700}
.brief-v.up{color:var(--green);text-shadow:0 0 16px rgba(121,255,159,.35)} .brief-v.down{color:var(--red);text-shadow:0 0 16px rgba(255,64,88,.35)} .brief-v.cyan{color:var(--cyan);text-shadow:0 0 16px rgba(49,231,255,.35)} .brief-v.gold{color:var(--gold);text-shadow:0 0 16px rgba(255,209,102,.35)}
@media(max-width:1100px){.brief{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.brief{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.brief{grid-template-columns:1fr}}

/* ===== live servers ===== */
.sv{position:relative;border:1px solid var(--line);background:linear-gradient(170deg,rgba(10,16,27,.82),rgba(4,8,15,.65));padding:18px;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);transition:border-color .25s,box-shadow .25s,transform .25s}
.sv:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,rgba(93,220,255,.4),transparent 70%)}
.sv:hover{border-color:rgba(93,220,255,.4);box-shadow:0 0 26px rgba(49,231,255,.08);transform:translateY(-2px)}
.sv:has(.sv-verd.good):before{background:linear-gradient(90deg,var(--green),transparent 70%)}
.sv:has(.sv-verd.bad):before{background:linear-gradient(90deg,var(--red),transparent 70%)}
.sv:has(.sv-verd.mid):before{background:linear-gradient(90deg,var(--gold),transparent 70%)}
.sv-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:9px}
.sv-name{font-family:"Chakra Petch",sans-serif;font-size:15px;color:#fff}
.sv-meta{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:4px}
.sv-verd{font-family:"Chakra Petch",sans-serif;font-size:10px;letter-spacing:.07em;text-transform:uppercase;padding:5px 9px;flex:none;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%)}
.sv-verd.good{color:var(--green);border:1px solid rgba(121,255,159,.45);background:rgba(121,255,159,.06);text-shadow:0 0 10px rgba(121,255,159,.4)}
.sv-verd.mid{color:var(--gold);border:1px solid rgba(255,209,102,.45);background:rgba(255,209,102,.06)}
.sv-verd.bad{color:var(--red);border:1px solid rgba(255,64,88,.45);background:rgba(255,64,88,.06);text-shadow:0 0 10px rgba(255,64,88,.4)}
.sv-verd.warm{color:var(--soft);border:1px solid var(--line)}
.sv-roster{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.sv-pl{font-size:11px;font-family:"Rajdhani",sans-serif;font-weight:600;padding:4px 8px;border:1px solid rgba(93,220,255,.16);background:rgba(4,8,15,.55);color:var(--soft);clip-path:polygon(0 0,calc(100% - 5px) 0,100% 5px,100% 100%,0 100%)}
.sv-pl.fresh{border-color:rgba(121,255,159,.35);color:var(--green)}
.sv-pl b{color:var(--cyan)}
.sv-fit{margin-top:11px;border-top:1px dashed rgba(93,220,255,.16);padding-top:10px}
.svf-top{display:flex;justify-content:space-between;font-family:"Chakra Petch",sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px}
.sv-fit.good .svf-verdict{color:var(--green)} .sv-fit.mid .svf-verdict{color:var(--gold)} .sv-fit.bad .svf-verdict{color:var(--red)}
.svf-delta{color:var(--soft)}
.svf-gauge{position:relative;height:10px;background:rgba(93,220,255,.1);border-radius:6px}
.svf-band{position:absolute;top:0;bottom:0;background:rgba(121,255,159,.18);border-radius:6px}
.svf-fill{position:absolute;top:0;bottom:0;background:rgba(49,231,255,.35);border-radius:6px}
.svf-lobby{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--soft)}
.svf-you{position:absolute;top:-4px;bottom:-4px;width:3px;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
.svf-scale{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin-top:5px;letter-spacing:.04em}

/* ===== misc panels ===== */
.lst{display:grid;gap:8px}
.li{position:relative;display:flex;justify-content:space-between;gap:10px;padding:11px 13px 11px 16px;border:1px solid rgba(93,220,255,.13);background:linear-gradient(90deg,rgba(10,16,27,.8),rgba(4,8,15,.55));font-family:"Rajdhani",sans-serif;font-weight:600;font-size:15px;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%);transition:border-color .2s,transform .2s}
.li:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:rgba(93,220,255,.35)}
.li:hover{border-color:rgba(93,220,255,.4);transform:translateX(2px)}
.li .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis} .li .vv{font-variant-numeric:tabular-nums;flex:none;font-family:"Chakra Petch",sans-serif;font-size:13px}
.li .vv.up{color:var(--green);text-shadow:0 0 12px rgba(121,255,159,.4)} .li .vv.down{color:var(--red);text-shadow:0 0 12px rgba(255,64,88,.4)}
.li .nm small{display:block;margin-top:4px;font-family:"Spline Sans Mono",monospace;font-weight:400;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.li .vv small{display:block;margin-top:4px;text-align:right;font-size:10px;letter-spacing:.05em;color:var(--muted);text-shadow:none;text-transform:uppercase}
.li:has(.vv.up):before{background:var(--green);box-shadow:0 0 10px rgba(121,255,159,.5)}
.li:has(.vv.down):before{background:var(--red);box-shadow:0 0 10px rgba(255,64,88,.5)}
.act.after h3{color:var(--green)} .act.after:before{background:linear-gradient(90deg,var(--green),transparent 70%)} .act.after .yr{color:var(--green)}
@media(max-width:760px){.grid2{grid-template-columns:1fr}}
.deadband{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}
.dead{position:relative;border:1px solid rgba(255,64,88,.3);background:linear-gradient(170deg,rgba(255,64,88,.09),rgba(255,64,88,.02));padding:20px;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%)}
.dead:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--red),transparent 70%)}
.dead b{font-family:"Chakra Petch",sans-serif;font-size:36px;display:block;color:#ff6677;text-shadow:0 0 22px rgba(255,64,88,.4)}
.dead span{font-size:10px;text-transform:uppercase;color:var(--muted);display:block;margin-top:7px;letter-spacing:.08em}
.dead.good{border-color:rgba(121,255,159,.3);background:linear-gradient(170deg,rgba(121,255,159,.09),rgba(121,255,159,.02))} .dead.good b{color:var(--green);text-shadow:0 0 22px rgba(121,255,159,.4)} .dead.good:before{background:linear-gradient(90deg,var(--green),transparent 70%)}
@media(max-width:680px){.deadband{grid-template-columns:1fr}.grid3,.grid4{grid-template-columns:1fr 1fr}}
.footer-credit{margin-top:54px;text-align:center;font-family:"Chakra Petch",sans-serif;letter-spacing:.16em;text-transform:uppercase;font-size:11px;color:var(--muted)}
.footer-credit:before{content:"";display:block;width:120px;height:1px;margin:0 auto 16px;background:linear-gradient(90deg,transparent,rgba(49,231,255,.5),transparent)}
.bars24{display:flex;align-items:flex-end;gap:4px;height:110px;margin-top:8px;padding-top:6px}
.bar24{flex:1;background:linear-gradient(180deg,rgba(49,231,255,.55),rgba(49,231,255,.14));border-radius:3px 3px 0 0;min-height:2px;position:relative;transition:filter .2s}
.bar24:hover{filter:brightness(1.5)}
.bar24.peak{background:linear-gradient(180deg,var(--green),rgba(121,255,159,.25));box-shadow:0 0 14px rgba(121,255,159,.35)}
.bar24.you{outline:2px solid var(--gold);outline-offset:-1px;box-shadow:0 0 12px rgba(255,209,102,.4)} .bar24.you-bad{outline:2px solid var(--red);outline-offset:-1px;box-shadow:0 0 12px rgba(255,64,88,.4)}
.bars24-x{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:7px;letter-spacing:.06em}
body.fx-off .gauge-fill,body.fx-off .dna-bar,body.fx-off .cmp-bfill{transition:none}

/* Vitals nav beacon: header-banner DNA (cyan core, red slash) */
.nav a.nav-vitals{border-color:rgba(255,64,88,.45);background:linear-gradient(135deg,rgba(49,231,255,.16),rgba(255,64,88,.15));color:#fff;text-shadow:0 0 10px rgba(49,231,255,.5);box-shadow:0 0 14px rgba(49,231,255,.20),0 0 14px rgba(255,64,88,.14);animation:dbrNavVitalsPulse 3.2s ease-in-out infinite}
.nav a.nav-vitals:hover{color:#fff;border-color:#ff4058;box-shadow:0 0 22px rgba(49,231,255,.34),0 0 22px rgba(255,64,88,.30)}
.nav a.nav-vitals .nav-vitals-cursor{color:#ff4058;text-shadow:0 0 12px rgba(255,64,88,.6);animation:dbrNavVitalsBlink 1.1s steps(1) infinite}
@keyframes dbrNavVitalsPulse{0%,100%{border-color:rgba(49,231,255,.55);box-shadow:0 0 14px rgba(49,231,255,.22),0 0 10px rgba(255,64,88,.10)}50%{border-color:rgba(255,64,88,.60);box-shadow:0 0 10px rgba(49,231,255,.12),0 0 18px rgba(255,64,88,.26)}}
@keyframes dbrNavVitalsBlink{50%{opacity:0}}
@media (prefers-reduced-motion:reduce){.nav a.nav-vitals,.nav a.nav-vitals .nav-vitals-cursor{animation:none}}

/* ===== Homepage reactor chrome, ported onto the vitals core (proportional) ===== */
.fg-core{border-radius:50%;border:1px solid rgba(93,220,255,.34);background:radial-gradient(circle,rgba(49,231,255,.16),rgba(4,8,15,.82) 58%,rgba(2,5,10,.94));box-shadow:0 0 34px rgba(49,231,255,.18),0 0 80px rgba(255,64,88,.08),inset 0 0 0 1px rgba(255,255,255,.035)}
.fg-core:before,.fg-core:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.fg-core:before{inset:6.5%;border:1px dashed rgba(93,220,255,.32);box-shadow:0 0 18px rgba(49,231,255,.13)}
.fg-core:after{inset:-3.2%;border:1px solid rgba(255,64,88,.22);box-shadow:0 0 30px rgba(255,64,88,.13)}
.fg-reactor-ring{position:absolute;inset:13.5%;border-radius:50%;border:3px solid rgba(49,231,255,.16);border-top-color:#31e7ff;border-right-color:#ff4058;filter:drop-shadow(0 0 10px rgba(49,231,255,.36));animation:vitalsReactorSpin 18s linear infinite;pointer-events:none}
@keyframes vitalsReactorSpin{to{transform:rotate(360deg)}}
.fg-dial{position:relative;z-index:1}
/* Keep the beloved oval: the stretched core geometry is now intentional, not accidental */
.fg-core{aspect-ratio:1/1.35}
/* Readout centered inside the oval, above the chrome */
.fg-center{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}
body.fx-off .fg-reactor-ring{animation:none}
@media (prefers-reduced-motion:reduce){.fg-reactor-ring{animation:none}}


/* ===== THE ATOM: unstable plasma nucleus + electron orbits, mood-wired to scene status ===== */
.atom-core{position:absolute;inset:0;z-index:1;pointer-events:none;
  --coreA:#31e7ff;--coreB:rgba(49,231,255,.34);--pulse:2.6s;--espd:1;--dim:1}
.atom-nucleus{position:absolute;left:50%;top:50%;width:26%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle at 38% 34%,#fff 0%,var(--coreA) 26%,var(--coreB) 58%,transparent 74%);
  filter:drop-shadow(0 0 26px var(--coreA)) drop-shadow(0 0 60px var(--coreB));
  opacity:var(--dim);animation:atomPulse var(--pulse) ease-in-out infinite,atomFlicker 7.3s steps(1) infinite;transition:opacity .5s}
@keyframes atomPulse{0%,100%{transform:translate(-50%,-50%) scale(.92)}38%{transform:translate(-50%,-50%) scale(1.06)}55%{transform:translate(-50%,-50%) scale(.97)}74%{transform:translate(-50%,-50%) scale(1.1)}}
@keyframes atomFlicker{0%,100%{filter:drop-shadow(0 0 26px var(--coreA)) drop-shadow(0 0 60px var(--coreB)) brightness(1)}13%{filter:drop-shadow(0 0 34px var(--coreA)) drop-shadow(0 0 80px var(--coreB)) brightness(1.35)}14%{filter:drop-shadow(0 0 22px var(--coreA)) drop-shadow(0 0 46px var(--coreB)) brightness(.9)}47%{filter:drop-shadow(0 0 40px var(--coreA)) drop-shadow(0 0 90px var(--coreB)) brightness(1.5)}48.5%{filter:drop-shadow(0 0 24px var(--coreA)) drop-shadow(0 0 50px var(--coreB)) brightness(1)}81%{filter:drop-shadow(0 0 30px var(--coreA)) drop-shadow(0 0 70px var(--coreB)) brightness(1.2)}}
.orbit-wrap{position:absolute;left:50%;top:50%;aspect-ratio:1;transform:translate(-50%,-50%) rotate(var(--tilt))}
.ow1{width:56%;--tilt:8deg;--spd:3.4s}
.ow2{width:70%;--tilt:64deg;--spd:4.6s}
.ow3{width:84%;--tilt:-58deg;--spd:5.8s}
.orbit-ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(49,231,255,.30);transform:scaleY(.40);box-shadow:0 0 14px rgba(49,231,255,.10),inset 0 0 14px rgba(49,231,255,.06)}
.orbit-spin{position:absolute;inset:0;transform:scaleY(.40);animation:atomSpin calc(var(--spd)/var(--espd)) linear infinite}
.ow2 .orbit-spin{animation-direction:reverse}
.atom-e{position:absolute;left:50%;top:0;width:9px;height:9px;transform:translate(-50%,-50%);border-radius:50%;background:#fff;box-shadow:0 0 12px #31e7ff,0 0 26px rgba(49,231,255,.7)}
.atom-e.e-red{box-shadow:0 0 12px #ff4058,0 0 26px rgba(255,64,88,.75)}
@keyframes atomSpin{to{transform:scaleY(.40) rotate(360deg)}}
.atom-arc{position:absolute;inset:20%;border-radius:50%;border:2px solid transparent;border-top-color:rgba(255,64,88,.9);opacity:0;filter:drop-shadow(0 0 10px rgba(255,64,88,.8))}
.atom-arc.a1{animation:arcFlash1 7.1s linear infinite}
.atom-arc.a2{inset:14%;border-top-color:rgba(49,231,255,.9);filter:drop-shadow(0 0 10px rgba(49,231,255,.8));animation:arcFlash2 11.3s linear infinite}
@keyframes arcFlash1{0%,40.9%,43.1%,78.9%,80.6%,100%{opacity:0}41.3%{opacity:.95;transform:rotate(40deg)}42.6%{opacity:.2;transform:rotate(55deg)}79.4%{opacity:.85;transform:rotate(200deg)}}
@keyframes arcFlash2{0%,22.9%,24.6%,67.9%,69.3%,100%{opacity:0}23.3%{opacity:.9;transform:rotate(130deg)}24.1%{opacity:.15;transform:rotate(140deg)}68.4%{opacity:.8;transform:rotate(310deg)}}

/* Mood: the core breathes with the scene */
.reactor.st-SURGE .atom-core{--coreA:#79ff9f;--coreB:rgba(121,255,159,.4);--pulse:1.4s;--espd:1.7}
.reactor.st-ALIVE .atom-core{--coreA:#4df0e2;--coreB:rgba(49,231,255,.38);--pulse:2s;--espd:1.25}
.reactor.st-STIRRING .atom-core{--coreA:#31e7ff;--coreB:rgba(49,231,255,.32);--pulse:2.8s}
.reactor.st-FAINT .atom-core{--coreA:#ffd166;--coreB:rgba(255,209,102,.28);--pulse:4s;--espd:.6;--dim:.7}
.reactor.st-FLATLINE .atom-core{--coreA:#ff4058;--coreB:rgba(255,64,88,.3);--pulse:5.5s;--espd:.35;--dim:.55}
.reactor.st-FLATLINE .orbit-ring{border-color:rgba(255,64,88,.28)}
.reactor.st-FLATLINE .atom-e{box-shadow:0 0 12px #ff4058,0 0 26px rgba(255,64,88,.7)}

/* Readout hidden in idle; burns in on calibration, then fades */
.fg-center{opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s;z-index:2}
.fg-core.burnin .fg-center{opacity:1;visibility:visible}
.fg-core.burnin .atom-nucleus{opacity:.3}
.fg-core.burnin .atom-arc{animation-play-state:paused;opacity:0}

/* Safety: stillness for fx-off / reduced motion (static glowing atom, no readout flash) */
body.fx-off .atom-nucleus,body.fx-off .orbit-spin,body.fx-off .atom-arc{animation:none}
@media (prefers-reduced-motion:reduce){.atom-nucleus,.orbit-spin,.atom-arc{animation:none}}


/* ===== Loaded merc: NAME ONLY in the core, atom yields to the STORM ===== */
.fg-core.loaded .fg-center{opacity:1;visibility:visible}
.fg-core .fg-rrv,
.fg-core .fg-rrlab,
.fg-core .fg-tier{display:none}
.fg-name{display:block;font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.10em;font-size:clamp(22px,3vw,36px);line-height:1.05;color:#fff;text-shadow:0 0 20px rgba(49,231,255,.6),0 0 40px rgba(255,64,88,.25);max-width:82%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fg-core.loaded .atom-core{opacity:0;transition:opacity .7s ease}
.atom-core{transition:opacity .7s ease}
.storm-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:0;transition:opacity .7s ease;pointer-events:none}
.fg-core.loaded .storm-canvas{opacity:1}


/* ===== Mobile header: stacked topbar + swipeable nav pill row ===== */
@media(max-width:760px){
.topbar{flex-direction:column;align-items:stretch;gap:10px}
.brand,.brand-mini{text-align:left}
.nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -16px;padding:2px 16px 6px}
.nav::-webkit-scrollbar{display:none}
.nav a{flex:0 0 auto;white-space:nowrap;font-size:11px;padding:8px 11px}
}

/* ===== THE CONTAMINATION CORE (Live battlefield) ==================================
   Children of the homepage reactor-core: same concentric organism, same typography,
   same glow grammar. The spinning bicolor orbit is the gauge - red share = stomp %.
   Escalation is a radiation story: breathing halo, hazard dashed band, Geiger flicker. */
.svg-card{display:flex;flex-direction:column;align-items:center;gap:14px;padding:20px 6px 22px;border:0;background:transparent}
.ccore-wrap{filter:drop-shadow(0 26px 40px rgba(0,0,0,.66)) drop-shadow(0 8px 14px rgba(0,0,0,.5))}
.ccore{position:relative;width:300px;height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  border:1px solid rgba(93,220,255,.34);border-radius:50%;
  background:radial-gradient(circle,rgba(49,231,255,.16),rgba(4,8,15,.82) 58%,rgba(2,5,10,.94));
  box-shadow:0 0 34px rgba(49,231,255,.18),0 0 80px rgba(255,64,88,.08),inset 0 0 0 1px rgba(255,255,255,.035)}
.ccore:before{content:"";position:absolute;inset:20px;border-radius:50%;border:1px dashed rgba(93,220,255,.32);box-shadow:0 0 18px rgba(49,231,255,.13)}
.ccore:after{content:"";position:absolute;inset:-10px;border-radius:50%;border:1px solid rgba(255,64,88,.22);box-shadow:0 0 30px rgba(255,64,88,.13);pointer-events:none}
.ccore-ring{position:absolute;inset:42px;border-radius:50%;
  background:conic-gradient(#ff4058 0 calc(var(--p)*1%), rgba(49,231,255,.9) calc(var(--p)*1%) calc(var(--p)*1% + 26%), rgba(49,231,255,.16) 0);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3.5px),#000 calc(100% - 3px));
          mask:radial-gradient(farthest-side,transparent calc(100% - 3.5px),#000 calc(100% - 3px));
  filter:drop-shadow(0 0 10px rgba(49,231,255,.36));
  animation:ccOrbit var(--spin,18s) linear infinite}
.ccore-name{position:relative;max-width:72%;text-align:center;font-family:'Chakra Petch',sans-serif;text-transform:uppercase;
  letter-spacing:.13em;color:#9ff7ff;font-size:10.5px;line-height:1.4;margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ccore-rr{position:relative;font-family:'Chakra Petch',sans-serif;font-size:56px;line-height:.9;color:#fff;
  text-shadow:0 0 28px rgba(49,231,255,.42),0 0 18px rgba(255,64,88,.28)}
.ccore-rrlbl{position:relative;margin-top:9px;font-family:'Chakra Petch',sans-serif;text-transform:uppercase;letter-spacing:.14em;color:#9ff7ff;font-size:11px}
.ccore-occ{position:relative;margin-top:7px;font-family:'Spline Sans Mono',monospace;font-size:10.5px;letter-spacing:.16em;color:#7e93ab;text-transform:uppercase}
.ccore-meta{position:relative;margin-top:4px;font-family:'Spline Sans Mono',monospace;font-size:9px;letter-spacing:.16em;color:#5b7390;text-transform:uppercase}
.haz{display:flex;align-items:center;gap:10px;font-family:'Chakra Petch',sans-serif;font-weight:700;
  text-transform:uppercase;letter-spacing:.2em;font-size:11.5px;color:#9db4cc}
.haz .tref{width:17px;height:17px;display:inline-block}
.haz .tref svg{display:block;filter:drop-shadow(0 0 5px rgba(255,198,0,.5))}
.haz b{color:#ffc600}
@keyframes ccOrbit{to{transform:rotate(360deg)}}
@keyframes ccHalo{0%,100%{box-shadow:0 0 30px rgba(255,64,88,.13)}50%{box-shadow:0 0 52px rgba(255,64,88,.4)}}
@keyframes ccHazSpin{to{transform:rotate(-360deg)}}
@keyframes ccGeiger{0%,7%,12%,100%{text-shadow:0 0 28px rgba(255,64,88,.55),0 0 18px rgba(255,198,0,.3)}
  8%,11%{text-shadow:0 0 40px rgba(255,64,88,.9),0 0 26px rgba(255,198,0,.6)}
  44%,46%{text-shadow:0 0 40px rgba(255,64,88,.9),0 0 26px rgba(255,198,0,.6)}}
@keyframes ccBlink{0%,55%{opacity:1}56%,100%{opacity:.4}}
/* CALM (<25): nearly the homepage core itself */
/* CAUTION (25-50): orbit speeds up, halo warms */
.st-caution .ccore-ring{--spin:12s}
.st-caution .ccore{box-shadow:0 0 34px rgba(49,231,255,.14),0 0 80px rgba(255,64,88,.14),inset 0 0 0 1px rgba(255,255,255,.035)}
/* DANGER (50-75): halo breathes, dashed ring warms, faster orbit */
.st-danger .ccore-ring{--spin:8s}
.st-danger .ccore{box-shadow:0 0 30px rgba(49,231,255,.10),0 0 86px rgba(255,64,88,.22),inset 0 0 0 1px rgba(255,255,255,.035)}
.st-danger .ccore:after{animation:ccHalo 1.6s ease-in-out infinite}
.st-danger .ccore:before{border-color:rgba(255,198,0,.34)}
.st-danger .haz{color:#ff8a97}
.st-danger .haz b{color:#ff4058}
/* CRITICAL (>=75): contamination breach - hazard band, pulsing halo, Geiger number */
.st-critical .ccore-ring{--spin:4s}
.st-critical .ccore{border-color:rgba(255,64,88,.5);
  box-shadow:0 0 26px rgba(255,64,88,.28),0 0 110px rgba(255,64,88,.3),inset 0 0 0 1px rgba(255,255,255,.04)}
.st-critical .ccore:before{border:2px dashed rgba(255,198,0,.85);box-shadow:0 0 22px rgba(255,198,0,.3);animation:ccHazSpin 9s linear infinite}
.st-critical .ccore:after{animation:ccHalo .8s ease-in-out infinite}
.st-critical .ccore-rr{animation:ccGeiger 2.4s steps(1) infinite}
.st-critical .haz{color:#ff4058;animation:ccBlink .5s steps(2) infinite}
.st-critical .haz b{color:#ffc600}
/* ===== PERSONAL CALIBRATION LAYER =================================================
   When a pilot loads into the core, every instrument RE-TUNES to them: the dashed
   inner ring and the server name take the personal verdict color (green fair /
   amber dominate / red stomped), and a bold stamp lands under the hazard strip.
   State colors keep meaning lobby physics; fit colors mean YOU. Critical cores keep
   their hazard band identity - the verdict reads from the stamp + name there. */
.svg-fit{display:flex;flex-direction:column;align-items:center;gap:3px;margin-top:2px;padding:0}
.svf-verdict{font-family:'Chakra Petch',sans-serif;font-weight:700;font-size:13px;letter-spacing:.26em;text-transform:uppercase}
.svf-nums{font-family:'Spline Sans Mono',monospace;font-size:10px;letter-spacing:.12em;color:#7e93ab}
.svg-fit.good .svf-verdict{color:#27e8a7;text-shadow:0 0 16px rgba(39,232,167,.55)}
.svg-fit.mid .svf-verdict{color:#ffc24b;text-shadow:0 0 16px rgba(255,194,75,.55)}
.svg-fit.bad .svf-verdict{color:#ff4058;text-shadow:0 0 18px rgba(255,64,88,.65)}
.svg-card.fit-good:not(.st-critical) .ccore:before{border-color:rgba(39,232,167,.55);box-shadow:0 0 20px rgba(39,232,167,.18)}
.svg-card.fit-mid:not(.st-critical) .ccore:before{border-color:rgba(255,194,75,.6);box-shadow:0 0 20px rgba(255,194,75,.2)}
.svg-card.fit-bad:not(.st-critical) .ccore:before{border-color:rgba(255,64,88,.65);box-shadow:0 0 22px rgba(255,64,88,.24)}
.svg-card.fit-good .ccore-name{color:#7dffd2}
.svg-card.fit-mid .ccore-name{color:#ffd98a}
.svg-card.fit-bad .ccore-name{color:#ff8a97}
@media(prefers-reduced-motion:reduce){.ccore-ring,.ccore:before,.ccore:after,.ccore-rr,.haz{animation:none!important}}

/* ---- CONTAINMENT LOG (per-server roster drawer) ---- */
.cl-wrap{margin-top:18px}
.cl-panel{position:relative;border:1px solid var(--line);background:linear-gradient(180deg,rgba(9,14,24,.9),rgba(4,7,13,.95));box-shadow:0 16px 40px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.02);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));overflow:hidden;animation:clOpen .26s ease}
@keyframes clOpen{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.cl-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:14px 16px 12px;border-bottom:1px solid rgba(93,220,255,.1);background:linear-gradient(90deg,rgba(49,231,255,.05),rgba(255,209,102,.02),transparent);position:relative}
.cl-head:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--cyan),var(--gold))}
.cl-title{font-family:"Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:13px;color:var(--txt);text-shadow:0 0 14px rgba(49,231,255,.22)}
.cl-sub{font-family:"Spline Sans Mono",monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cl-close{margin-left:auto;border:1px solid rgba(93,220,255,.22);background:rgba(4,8,15,.7);color:var(--muted);font:inherit;font-size:12px;line-height:1;padding:5px 9px;cursor:pointer}
.cl-close:hover{border-color:var(--red);color:var(--red)}
.cl-list{padding:6px 8px}
.cl-list.two{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
@media(max-width:760px){.cl-list.two{grid-template-columns:1fr}}
.cl-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:11px;padding:9px 10px;border-bottom:1px solid rgba(93,220,255,.07);border-left:2px solid transparent;overflow:hidden}
.cl-row:last-child{border-bottom:0}
.cl-row.fr{border-left-color:var(--green)}
.cl-pip{width:8px;height:8px;border-radius:50%;flex:none;background:var(--muted)}
.cl-row.rk .cl-pip{background:var(--cyan);box-shadow:0 0 8px rgba(49,231,255,.6)}
.cl-row.fr .cl-pip{background:var(--green);box-shadow:0 0 8px rgba(121,255,159,.6)}
.cl-id{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.cl-name{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:15px;color:var(--txt);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
a.cl-name:hover{color:var(--cyan)}
.cl-meta{font-family:"Spline Sans Mono",monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-gauge{position:relative;width:104px;height:8px;flex:none;background:rgba(93,220,255,.1);border-radius:6px;overflow:hidden}
.cl-list.two .cl-gauge{width:64px}
@media(max-width:560px){.cl-gauge{display:none}}
.cl-fill{position:absolute;top:0;bottom:0;left:0;background:rgba(49,231,255,.4);border-radius:6px}
.cl-rr{font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:15px;color:var(--cyan);min-width:46px;text-align:right;text-shadow:0 0 12px rgba(49,231,255,.3)}
.cl-tag{font-family:"Chakra Petch",sans-serif;font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:3px 6px;flex:none}
.cl-tag.fr{color:var(--green);border:1px solid rgba(121,255,159,.4)}
.cl-tag.ur{color:var(--muted);border:1px solid rgba(113,129,151,.4)}
.cl-more{padding:10px 12px;font-family:"Spline Sans Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
@media(prefers-reduced-motion:reduce){.cl-panel{animation:none}}

/* ---- VITALS COUNTER-BRIEF -------------------------------------------------------
   One deliberate action per live lobby. The panel reads compact weekly evidence;
   it never scans raw match history from a public request. */
.cb-open{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;width:min(300px,calc(100% - 28px));min-height:44px;padding:10px 16px;border:1px solid rgba(49,231,255,.52);background:linear-gradient(180deg,rgba(19,55,66,.92),rgba(5,18,25,.98));color:#f2fbff;font-family:"Chakra Petch",sans-serif;font-size:13px;font-weight:700;letter-spacing:0;text-transform:uppercase;cursor:pointer;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));box-shadow:0 0 22px rgba(49,231,255,.16),inset 0 0 0 1px rgba(255,255,255,.035)}
.cb-open:before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:linear-gradient(180deg,var(--cyan),var(--gold))}
.cb-open span{color:var(--gold);font-size:18px;line-height:1;text-shadow:0 0 12px rgba(255,209,102,.55)}
.cb-open:hover,.cb-open:focus-visible{border-color:#fff;background:linear-gradient(180deg,rgba(25,76,89,.98),rgba(8,27,36,.98));box-shadow:0 0 28px rgba(49,231,255,.3),inset 0 0 0 1px rgba(255,255,255,.08);outline:0}
.cb-wrap{margin-top:18px}
.cb-panel{position:relative;overflow:hidden;border:1px solid rgba(49,231,255,.36);background:linear-gradient(145deg,rgba(5,12,20,.98),rgba(8,12,20,.98) 58%,rgba(25,10,16,.94));box-shadow:0 24px 70px rgba(0,0,0,.55),0 0 36px rgba(49,231,255,.08),inset 0 0 0 1px rgba(255,255,255,.025);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));animation:clOpen .24s ease}
.cb-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--cyan),var(--green) 35%,var(--gold) 66%,var(--red));box-shadow:0 0 18px rgba(49,231,255,.35)}
.cb-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:22px 24px 18px;border-bottom:1px solid rgba(49,231,255,.13);background:linear-gradient(90deg,rgba(49,231,255,.06),transparent 62%)}
.cb-head span,.cb-statusline span,.cb-command span,.cb-alts>span,.cb-read span{display:block;color:var(--cyan);font-family:"Spline Sans Mono",monospace;font-size:11px;font-weight:700;letter-spacing:0;text-transform:uppercase}
.cb-head h3{margin:4px 0 2px;color:#fff;font-family:"Chakra Petch",sans-serif;font-size:clamp(23px,3vw,34px);line-height:1.05;letter-spacing:0;text-transform:uppercase}
.cb-head p{margin:0;color:#7f94aa;font-family:"Spline Sans Mono",monospace;font-size:12px;letter-spacing:0;text-transform:uppercase}
.cb-close{flex:none;width:42px;height:42px;border:1px solid rgba(255,64,88,.38);background:rgba(20,6,11,.72);color:#ff8997;font:700 15px "Chakra Petch",sans-serif;cursor:pointer}
.cb-close:hover,.cb-close:focus-visible{border-color:var(--red);color:#fff;outline:0;box-shadow:0 0 18px rgba(255,64,88,.22)}
.cb-intents{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid rgba(49,231,255,.13);background:rgba(2,7,12,.76)}
.cb-intents button{min-height:50px;border:0;border-right:1px solid rgba(49,231,255,.12);background:transparent;color:#8296aa;font:700 13px "Chakra Petch",sans-serif;letter-spacing:0;text-transform:uppercase;cursor:pointer}
.cb-intents button:last-child{border-right:0}
.cb-intents button:hover,.cb-intents button:focus-visible{color:#fff;background:rgba(49,231,255,.07);outline:0}
.cb-intents button[aria-pressed="true"]{color:#061016;background:linear-gradient(135deg,var(--cyan),#8affd1);box-shadow:0 0 24px rgba(49,231,255,.2)}
.cb-body{padding:22px 24px 26px}
.cb-statusline{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;color:#8ea0b2;font-family:"Spline Sans Mono",monospace;font-size:11px;text-transform:uppercase}
.cb-statusline b{color:#d8e6ef;font-weight:600;text-align:right}
.cb-command{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:16px;padding:15px 17px;border-left:4px solid var(--gold);background:linear-gradient(90deg,rgba(255,209,102,.11),rgba(49,231,255,.035),transparent)}
.cb-command h3{margin:4px 0 0;color:#fff;font-family:"Chakra Petch",sans-serif;font-size:clamp(28px,4vw,46px);line-height:1;letter-spacing:0;text-transform:uppercase;text-shadow:0 0 22px rgba(49,231,255,.2)}
.cb-command em{padding:7px 10px;border:1px solid rgba(121,255,159,.42);color:var(--green);font:700 11px "Spline Sans Mono",monospace;font-style:normal;white-space:nowrap}
.cb-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:14px;align-items:stretch}
.cb-card{display:grid;grid-template-columns:112px minmax(0,1fr);gap:16px;align-items:center;min-width:0;padding:14px;border:1px solid rgba(118,143,165,.22);background:rgba(3,8,14,.78)}
.cb-card.is-primary{grid-template-columns:160px minmax(0,1fr);min-height:278px;border-color:rgba(49,231,255,.34);background:linear-gradient(135deg,rgba(49,231,255,.075),rgba(3,8,14,.84) 48%,rgba(255,64,88,.035))}
.cb-card-art{display:flex;align-items:center;justify-content:center;min-width:0}
.cb-card-art img{display:block;width:100%;max-width:150px;height:auto;aspect-ratio:5/7;object-fit:contain;border:1px solid rgba(255,255,255,.15);background:#020508;box-shadow:0 14px 26px rgba(0,0,0,.42)}
.cb-card:not(.is-primary) .cb-card-art img{max-width:98px}
.cb-card-copy{min-width:0}
.cb-card-flags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px}
.cb-action,.cb-confidence{display:inline-block;padding:4px 7px;font:700 10px "Spline Sans Mono",monospace;text-transform:uppercase}
.cb-action{border:1px solid rgba(255,209,102,.42);color:var(--gold);background:rgba(255,209,102,.055)}
.cb-confidence{border:1px solid rgba(121,255,159,.34);color:var(--green);background:rgba(121,255,159,.04)}
.cb-card h4{margin:0;color:#fff;font:700 clamp(23px,3vw,34px) "Chakra Petch",sans-serif;line-height:1;letter-spacing:0;text-transform:uppercase;overflow-wrap:anywhere}
.cb-card h4 b{color:var(--gold);font-weight:700}
.cb-card-copy>p{margin:7px 0 0;color:#8fa2b5;font:600 13px "Spline Sans Mono",monospace;text-transform:uppercase}
.cb-card-facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.cb-card-facts span{padding:4px 6px;border:1px solid rgba(49,231,255,.16);background:rgba(49,231,255,.035);color:#9bb7c8;font:700 9px "Spline Sans Mono",monospace;text-transform:uppercase}
.cb-card ul{margin:14px 0 0;padding:0;list-style:none}
.cb-card li{position:relative;margin:7px 0;padding-left:15px;color:#c4d0d9;font:600 15px/1.35 "Rajdhani",sans-serif}
.cb-card li:before{content:"";position:absolute;left:0;top:.52em;width:6px;height:6px;background:var(--cyan);box-shadow:0 0 8px rgba(49,231,255,.5)}
.cb-alts{display:grid;grid-template-rows:auto 1fr 1fr;gap:10px;min-width:0}
.cb-alts>span{padding:0 2px;color:var(--gold)}
.cb-alts .cb-card h4{font-size:22px}
.cb-alts .cb-card li{font-size:13px}
.cb-layers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}
.cb-layer{min-width:0;padding:10px 12px;border-top:2px solid rgba(49,231,255,.34);background:rgba(4,10,16,.68)}
.cb-layer span,.cb-layer b{display:block;overflow-wrap:anywhere;text-transform:uppercase}
.cb-layer span{color:#71889c;font:700 9px "Spline Sans Mono",monospace}
.cb-layer b{margin-top:4px;color:#dcebf3;font:700 11px "Chakra Petch",sans-serif}
.cb-layer.is-ready,.cb-layer.is-used_as_secondary_gate{border-color:rgba(121,255,159,.62)}
.cb-layer.is-no_map_model,.cb-layer.is-unavailable{border-color:rgba(255,64,88,.55)}
.cb-layer.is-not_loaded,.cb-layer.is-context_only{border-color:rgba(255,209,102,.55)}
.cb-read{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.cb-read>div{padding:14px 16px;border-top:1px solid rgba(49,231,255,.2);background:rgba(4,10,16,.62)}
.cb-read p{margin:6px 0 0;color:#aebcc8;font:600 15px/1.4 "Rajdhani",sans-serif}
.cb-card-rule{margin-top:12px;padding:11px 14px;border-left:3px solid var(--gold);background:rgba(255,209,102,.06);color:#cbd4da;font:600 14px/1.35 "Rajdhani",sans-serif}
.cb-state{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px;border:1px solid rgba(49,231,255,.16);background:rgba(3,8,14,.66)}
.cb-state b{color:#fff;font:700 26px "Chakra Petch",sans-serif;text-transform:uppercase}
.cb-state p{max-width:680px;margin:0;color:#a9bac8;font:600 17px/1.45 "Rajdhani",sans-serif}
.cb-state>span{color:var(--cyan);font:700 10px "Spline Sans Mono",monospace;text-transform:uppercase}
.cb-state small{max-width:680px;color:#71869a;font:600 12px/1.4 "Spline Sans Mono",monospace}
.cb-state.is-no_read{border-color:rgba(255,209,102,.3);background:linear-gradient(135deg,rgba(255,209,102,.035),rgba(3,8,14,.72))}
.cb-state.is-needs_profile{border-color:rgba(121,255,159,.27)}
.cb-state.is-bad{border-color:rgba(255,64,88,.28)}
.cb-state.is-bad b{color:#ff7b8b}
.cb-state i{width:180px;height:3px;margin-top:14px;background:linear-gradient(90deg,transparent,var(--cyan),var(--gold),transparent);background-size:200% 100%;animation:cbScan 1.2s linear infinite}
@keyframes cbScan{to{background-position:-200% 0}}
@media(max-width:900px){.cb-grid{grid-template-columns:1fr}.cb-alts{grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr}.cb-alts>span{grid-column:1/-1}.cb-card.is-primary{min-height:0}.cb-read{grid-template-columns:1fr}.cb-layers{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.cb-head,.cb-body{padding-left:15px;padding-right:15px}.cb-intents{grid-template-columns:1fr 1fr}.cb-intents button:nth-child(2){border-right:0}.cb-intents button:nth-child(-n+2){border-bottom:1px solid rgba(49,231,255,.12)}.cb-statusline,.cb-command{align-items:flex-start;flex-direction:column}.cb-statusline b{text-align:left}.cb-card,.cb-card.is-primary{grid-template-columns:92px minmax(0,1fr);gap:12px}.cb-card-art img,.cb-card.is-primary .cb-card-art img{max-width:90px}.cb-alts{grid-template-columns:1fr;grid-template-rows:auto}.cb-alts>span{grid-column:auto}.cb-card li{font-size:14px}.cb-command h3{font-size:30px}.cb-layers{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.cb-panel,.cb-state i{animation:none}}

/* ===== LIVE BATTLEFIELD BOARD: roster + three slots + exact map order ===== */
.battlefield-board{display:grid;grid-template-columns:1fr;gap:12px}
.lbf-card{position:relative;overflow:hidden;border:1px solid rgba(49,231,255,.3);background:radial-gradient(520px 190px at 7% 0%,rgba(49,231,255,.1),transparent 68%),linear-gradient(180deg,rgba(7,13,21,.95),rgba(3,7,12,.97));box-shadow:0 16px 44px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.025);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px))}
.lbf-card:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--cyan),var(--green) 42%,var(--gold) 68%,var(--red));opacity:.9}
.lbf-card:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.016) 0 1px,transparent 1px 5px);opacity:.2;pointer-events:none}
.lbf-card.is-filling,.lbf-card.is-pending{border-color:rgba(49,231,255,.34)}.lbf-card.is-calm{border-color:rgba(121,255,159,.34)}.lbf-card.is-caution{border-color:rgba(255,209,102,.37)}.lbf-card.is-danger,.lbf-card.is-critical{border-color:rgba(255,64,88,.44)}
.lbf-head,.lbf-body{position:relative;z-index:1}
.lbf-head{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:12px;align-items:start;padding:12px 14px 10px;border-bottom:1px solid rgba(93,220,255,.14)}
.lbf-title{min-width:0}.lbf-title h3{margin:0;color:#fff;font:700 15px/1.12 "Chakra Petch",sans-serif;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 14px rgba(49,231,255,.18)}.lbf-title p{margin:4px 0 0;color:#8ea0b2;font:700 10px/1.15 "Spline Sans Mono",monospace;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lbf-pressure{justify-self:end;width:108px;min-height:42px;border:1px solid rgba(93,220,255,.22);background:linear-gradient(180deg,rgba(9,20,29,.88),rgba(3,8,14,.9));display:grid;align-content:center;padding:6px 8px;text-align:right;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px))}
.lbf-pressure span{color:#8498aa;font:700 8px "Spline Sans Mono",monospace;text-transform:uppercase}.lbf-pressure b{color:#fff;font:700 19px/1 "Chakra Petch",sans-serif}.is-filling .lbf-pressure b{color:var(--cyan)}.is-pending .lbf-pressure b{color:#9cafc1}.is-calm .lbf-pressure b{color:var(--green)}.is-caution .lbf-pressure b{color:var(--gold)}.is-danger .lbf-pressure b,.is-critical .lbf-pressure b{color:var(--red)}
.lbf-body{display:grid;grid-template-columns:205px minmax(0,1.16fr) 330px;gap:10px;padding:10px 12px 12px;align-items:stretch}
.lbf-scan,.lbf-roster,.lbf-bring{min-width:0;border:1px solid rgba(93,220,255,.15);background:linear-gradient(180deg,rgba(5,12,19,.78),rgba(2,6,11,.84));box-shadow:inset 0 0 0 1px rgba(255,255,255,.018)}
.lbf-scan{padding:10px}.lbf-core-cell{display:flex;flex-direction:column;align-items:center;gap:8px}.lbf-ccore-wrap{width:100%;display:flex;justify-content:center}
.lbf-core-cell .ccore{width:184px;height:184px}.lbf-core-cell .ccore:before{inset:12px}.lbf-core-cell .ccore:after{inset:-6px}.lbf-core-cell .ccore-ring{inset:27px}.lbf-core-cell .ccore-name{max-width:78%;margin-bottom:6px;font-size:8px;letter-spacing:.08em}.lbf-core-cell .ccore-rr{font-size:37px}.lbf-core-cell .ccore-rrlbl{margin-top:6px;font-size:8px;letter-spacing:.1em}.lbf-core-cell .ccore-occ{margin-top:5px;font-size:7.5px;letter-spacing:.08em}.lbf-core-cell .ccore-meta{max-width:82%;margin-top:3px;font-size:7px;letter-spacing:.07em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lbf-haz{justify-content:center;text-align:center;gap:7px;font-size:9px;letter-spacing:.11em;line-height:1.25}.lbf-haz .tref{width:14px;height:14px}
.lbf-meters{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:5px}.lbf-meters div{min-width:0;padding:6px 7px;border:1px solid rgba(93,220,255,.13);background:rgba(0,0,0,.18)}.lbf-meters b{display:block;color:#eaf6ff;font:700 15px/1 "Chakra Petch",sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbf-meters span{display:block;margin-top:4px;color:#73879b;font:700 8px "Spline Sans Mono",monospace;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lbf-fit{width:100%;padding:7px 8px;border-left:3px solid rgba(93,220,255,.34);background:rgba(49,231,255,.035);display:flex;justify-content:space-between;gap:7px;font:700 9px "Spline Sans Mono",monospace;text-transform:uppercase}.lbf-fit b{color:var(--cyan)}.lbf-fit span{min-width:0;color:#9baebe;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbf-fit.is-good{border-color:var(--green)}.lbf-fit.is-mid{border-color:var(--gold)}.lbf-fit.is-bad{border-color:var(--red)}
.lbf-roster{padding:9px 10px;align-self:stretch}.lbf-roster-title{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:7px}.lbf-roster-title b{color:var(--cyan);font:700 10px "Spline Sans Mono",monospace}.lbf-roster-title span{color:#788da1;font:700 8px "Spline Sans Mono",monospace}
.lbf-roster-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.lbf-roster-col{min-width:0}.lbf-table-head,.lbf-player{display:grid;grid-template-columns:minmax(92px,1fr) 50px 138px;gap:6px;align-items:center}.lbf-table-head{min-height:24px;border-top:1px solid rgba(93,220,255,.15);border-bottom:1px solid rgba(93,220,255,.2);color:var(--cyan);font:700 9px "Spline Sans Mono",monospace;text-transform:uppercase}.lbf-table-head span:nth-child(2){text-align:right}.lbf-table-head span:last-child{text-align:center}
.lbf-player{min-height:32px;border-bottom:1px solid rgba(93,220,255,.075);font:700 14px/1.05 "Rajdhani",sans-serif}.lbf-player:last-child{border-bottom:0}.lbf-p-name,.lbf-p-rr{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbf-p-name a,.lbf-p-name span{color:#e5eef7;text-decoration:none}.lbf-p-name a:hover{color:var(--cyan)}.lbf-p-rr{color:#eaf6ff;text-align:right;font:700 13px "Chakra Petch",sans-serif}.lbf-player.is-unranked .lbf-p-rr,.lbf-player.is-pending .lbf-p-rr{color:#687b8e}.lbf-player.is-pending .lbf-p-name span{color:#8da0b2}.lbf-player.is-fresh .lbf-p-name a,.lbf-player.is-fresh .lbf-p-name span{color:var(--green)}
.lbf-deck{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.lbf-slot{min-width:0;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(49,231,255,.2);background:rgba(49,231,255,.045);color:#cbeff5;font:700 9px/1 "Spline Sans Mono",monospace;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:clip}.lbf-slot.is-known{border-color:rgba(121,255,159,.22);color:#d9fce4;background:rgba(121,255,159,.04)}.lbf-slot.is-missing{border-color:rgba(255,209,102,.13);color:#7c8995;background:rgba(255,209,102,.025)}
.lbf-roster-missing{margin-top:6px;padding:5px 7px;border-left:2px solid var(--gold);background:rgba(255,209,102,.035);color:#bcae7a;font:700 8px "Spline Sans Mono",monospace;text-transform:uppercase}.lbf-empty{padding:14px 0;color:#8295a8;font:700 13px "Rajdhani",sans-serif}
.lbf-bring{padding:10px;display:flex;flex-direction:column}.lbf-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-bottom:8px}.lbf-tab{min-width:0;min-height:42px;padding:5px 4px;border:1px solid rgba(93,220,255,.18);background:linear-gradient(180deg,rgba(7,17,25,.9),rgba(2,7,12,.94));color:#8fa4b7;text-align:left;cursor:pointer;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px));transition:border-color .16s ease,background .16s ease,color .16s ease}.lbf-tab span{display:block;color:var(--cyan);font:700 8px/1 "Spline Sans Mono",monospace;text-transform:uppercase;letter-spacing:.04em}.lbf-tab b{display:block;margin-top:5px;color:#c9d8e4;font:700 9px/1.05 "Rajdhani",sans-serif;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbf-tab.is-wait b{color:#7e91a3}.lbf-tab.has-card b{color:#f4fbff}.lbf-tab.is-active{border-color:rgba(255,209,102,.58);background:linear-gradient(135deg,rgba(255,209,102,.14),rgba(49,231,255,.055));box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 0 18px rgba(255,209,102,.07)}.lbf-tab.is-active span{color:var(--gold)}.lbf-intent-panel{min-height:0;display:flex;flex-direction:column;flex:1}.lbf-bring-state{min-height:100%;display:grid;align-content:center;gap:5px;padding:14px;border:1px solid rgba(93,220,255,.13);background:linear-gradient(135deg,rgba(49,231,255,.06),rgba(255,209,102,.025))}.lbf-bring-state.is-profile{min-height:0;align-content:start;padding:14px 15px}.lbf-bring-state span,.lbf-bring-top span{color:var(--cyan);font:700 9px "Spline Sans Mono",monospace;text-transform:uppercase}.lbf-bring-state b{color:#fff;font:700 23px/1 "Chakra Petch",sans-serif;text-transform:uppercase}.lbf-bring-state p{margin:0;color:#aebdcc;font:600 14px/1.35 "Rajdhani",sans-serif}.lbf-bring-state.is-bad{border-color:rgba(255,64,88,.26)}.lbf-bring-state.is-bad b{color:#ff7b8b}.lbf-bring-state.is-hold{border-color:rgba(255,209,102,.25)}.lbf-bring-state.is-hold b{color:var(--gold)}
.lbf-bring-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.lbf-bring-top em{flex:none;color:var(--green);border:1px solid rgba(121,255,159,.34);padding:4px 6px;font:700 8px "Spline Sans Mono",monospace;font-style:normal;text-transform:uppercase;white-space:nowrap}
.lbf-order-wrap{display:grid;grid-template-columns:82px minmax(0,1fr);gap:9px;align-items:stretch;margin-top:8px}.lbf-art{position:relative;width:82px;height:116px;overflow:hidden;border:1px solid rgba(93,220,255,.22);background:linear-gradient(135deg,rgba(49,231,255,.08),rgba(0,0,0,.34));box-shadow:0 0 18px rgba(49,231,255,.08),inset 0 0 0 1px rgba(255,255,255,.025)}.lbf-art img{width:100%;height:100%;object-fit:cover;display:block}.lbf-art.is-empty{background:repeating-linear-gradient(135deg,rgba(49,231,255,.08) 0 6px,rgba(0,0,0,.18) 6px 12px)}
.lbf-order{min-width:0;padding:9px 10px;border-left:3px solid var(--gold);background:linear-gradient(90deg,rgba(255,209,102,.09),rgba(49,231,255,.03),transparent);display:flex;flex-direction:column;justify-content:center}.lbf-order b{color:var(--gold);font:700 9px "Spline Sans Mono",monospace;text-transform:uppercase}.lbf-order strong{margin-top:3px;color:#fff;font:700 22px/1 "Chakra Petch",sans-serif;text-transform:uppercase;overflow-wrap:normal;word-break:normal;text-shadow:0 0 18px rgba(49,231,255,.16)}.lbf-order small{margin-top:7px;color:#91a6b8;font:700 9px "Spline Sans Mono",monospace;text-transform:uppercase}
.lbf-reasons{margin:8px 0 0;padding:0;list-style:none}.lbf-reasons li{position:relative;margin:5px 0;padding-left:11px;color:#c6d2dd;font:600 12px/1.25 "Rajdhani",sans-serif}.lbf-reasons li:before{content:"";position:absolute;left:0;top:.48em;width:4px;height:4px;background:var(--cyan);box-shadow:0 0 7px rgba(49,231,255,.48)}
.lbf-alts{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:8px;padding-top:7px;border-top:1px solid rgba(93,220,255,.12)}.lbf-alts span{width:100%;color:#74899c;font:700 8px "Spline Sans Mono",monospace}.lbf-alts b{padding:4px 6px;border:1px solid rgba(93,220,255,.16);background:rgba(0,0,0,.18);color:#d8e8f1;font:700 9px "Spline Sans Mono",monospace}.lbf-method{margin:8px 0 0;padding:7px 8px;border-left:2px solid rgba(49,231,255,.4);background:rgba(49,231,255,.025);color:#8fa4b7;font:600 11px/1.28 "Rajdhani",sans-serif}.lbf-bring-foot{margin-top:auto;padding-top:8px;display:flex;flex-wrap:wrap;gap:5px}.lbf-bring-foot span{padding:4px 5px;border:1px solid rgba(93,220,255,.14);background:rgba(0,0,0,.18);color:#9cafc1;font:700 8px "Spline Sans Mono",monospace;text-transform:uppercase}
@media(max-width:1100px){.lbf-body{grid-template-columns:188px minmax(300px,1fr) 305px}.lbf-core-cell .ccore{width:172px;height:172px}.lbf-core-cell .ccore-ring{inset:25px}.lbf-roster-cols{grid-template-columns:1fr}}
@media(max-width:880px){.lbf-body{grid-template-columns:1fr}.lbf-scan{order:1}.lbf-bring{order:2}.lbf-roster{order:3}.lbf-core-cell .ccore{width:204px;height:204px}.lbf-core-cell .ccore-ring{inset:30px}.lbf-meters,.lbf-fit{max-width:420px}.lbf-roster-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.lbf-head{grid-template-columns:minmax(0,1fr) 92px;padding:10px 11px 9px}.lbf-pressure{width:90px;min-height:39px}.lbf-title h3{font-size:13px;white-space:normal}.lbf-title p{font-size:9px;white-space:normal}.lbf-body{padding:8px;gap:8px}.lbf-roster{padding:8px}.lbf-roster-cols{grid-template-columns:1fr}.lbf-roster-title span,.lbf-table-head{font-size:9px}.lbf-table-head,.lbf-player{grid-template-columns:minmax(70px,1fr) 40px 116px;gap:4px}.lbf-player{min-height:30px}.lbf-slot{height:20px;font-size:9px;letter-spacing:-.05em}.lbf-bring{padding:9px}.lbf-tabs{gap:3px}.lbf-tab{min-height:38px;padding:5px 3px}.lbf-tab span{font-size:7px}.lbf-tab b{font-size:8px}.lbf-bring-top{align-items:flex-start;flex-direction:column}.lbf-order strong{font-size:20px}}
@media(max-width:360px){.lbf-table-head,.lbf-player{grid-template-columns:minmax(58px,1fr) 37px 103px;gap:3px}.lbf-p-name{font-size:11px}.lbf-p-rr{font-size:10px}.lbf-slot{font-size:9px}.lbf-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-order-wrap{grid-template-columns:66px minmax(0,1fr)}.lbf-art{width:66px;height:93px}.lbf-order strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){.lbf-card .ccore-ring,.lbf-card .ccore:after,.lbf-card .ccore:before,.lbf-card .ccore-rr{animation:none}}
