/* ui.css — single stylesheet for the final UI. Generated from the four
   HUD mockups: global tokens/scene/nav from slate, each view's rules scoped
   under its #v-* container so nothing fights. styles.css / pitchers.css /
   redesign.css are no longer loaded. */
:root{
  --h:192;--h2:258;                                   
  --ac:hsl(var(--h) 92% 62%);
  --ac2:hsl(var(--h2) 82% 68%);
  --pos:#2fd39a;--neg:#ff5f7e;--wrn:#ffc857;
  --bg:hsl(var(--h) 26% 5%);
  --pnl:hsl(var(--h) 22% 8.5%);
  --tx:hsl(var(--h) 30% 96%);--d1:hsl(var(--h) 14% 62%);--d2:hsl(var(--h) 12% 42%);
  --ln:hsl(var(--h) 20% 20% / .55);
}
*{box-sizing:border-box}
body{margin:0;font-family:'Plus Jakarta Sans',sans-serif;color:var(--tx);padding:34px 30px;
 background:
  radial-gradient(1000px 620px at 12% -14%, hsl(var(--h) 90% 55% / .13), transparent 60%),
  radial-gradient(880px 560px at 92% -6%, hsl(var(--h2) 85% 62% / .12), transparent 62%),
  radial-gradient(720px 460px at 50% 112%, hsl(var(--h2) 70% 50% / .07), transparent 60%),
  var(--bg);
 background-attachment:fixed}
.wrap{max-width:1290px;margin:0 auto;position:relative;z-index:1}
.nav{display:flex;gap:3px;padding:3px;border-radius:9px;margin-bottom:13px;width:max-content;
 background:hsl(var(--h) 24% 10% / .85);border:1px solid var(--ln)}
.nav a{font-family:'DM Mono';font-size:10px;padding:6px 12px;border-radius:7px;color:var(--d1);text-decoration:none}
.nav a:hover{color:var(--tx);background:hsl(var(--h) 40% 70% / .07)}
.nav a.on{background:var(--ac);color:hsl(var(--h) 45% 8%);font-weight:600}
.lnk{color:inherit;text-decoration:none;border-bottom:1px dotted hsl(var(--h) 30% 40% / .5)}
.lnk:hover{color:var(--ac);border-bottom-color:var(--ac)}
.scene{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.orb{position:absolute;border-radius:50%;filter:blur(1px)}
.orb::after{content:'';position:absolute;inset:0;border-radius:50%;
 background:radial-gradient(circle at 30% 24%, rgba(255,255,255,.55), transparent 42%)}
.o1{width:560px;height:560px;top:-190px;left:-150px;opacity:.42;
 background:radial-gradient(circle at 32% 26%,
   hsl(var(--h) 95% 72%), hsl(var(--h) 90% 46%) 44%, hsl(var(--h) 85% 16%) 78%);
 box-shadow:0 60px 120px -30px hsl(var(--h) 90% 30% / .6);
 animation:drift1 26s ease-in-out infinite}
.o2{width:430px;height:430px;top:-110px;right:3%;opacity:.36;
 background:radial-gradient(circle at 34% 28%,
   hsl(var(--h2) 92% 76%), hsl(var(--h2) 85% 50%) 46%, hsl(var(--h2) 80% 18%) 80%);
 box-shadow:0 50px 100px -28px hsl(var(--h2) 85% 32% / .55);
 animation:drift2 32s ease-in-out infinite}
.o3{width:400px;height:400px;bottom:-150px;left:34%;opacity:.30;
 background:radial-gradient(circle at 36% 30%,
   hsl(var(--h2) 90% 72%), hsl(var(--h2) 82% 44%) 48%, hsl(var(--h2) 76% 14%) 82%);
 animation:drift3 38s ease-in-out infinite}
@keyframes drift1{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(26px,32px,0)}}
@keyframes drift2{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-30px,24px,0)}}
@keyframes drift3{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(20px,-26px,0)}}
.ring{position:absolute;border-radius:50%;border:1.5px solid hsl(var(--h) 80% 66% / .5);
 transform-style:preserve-3d}
.r1{width:720px;height:720px;top:-250px;right:-180px;opacity:.55;
 transform:perspective(900px) rotateX(72deg) rotateZ(-14deg);
 box-shadow:0 0 60px hsl(var(--h) 85% 55% / .16) inset, 0 0 40px hsl(var(--h) 85% 55% / .1);
 animation:spin1 60s linear infinite}
.r2{width:520px;height:520px;bottom:-180px;left:-120px;opacity:.5;
 border-color:hsl(var(--h2) 80% 72% / .5);
 transform:perspective(800px) rotateX(70deg) rotateZ(18deg);
 animation:spin2 78s linear infinite reverse}
@keyframes spin1{to{transform:perspective(900px) rotateX(72deg) rotateZ(346deg)}}
@keyframes spin2{to{transform:perspective(800px) rotateX(70deg) rotateZ(378deg)}}
.floor{position:absolute;left:-20%;right:-20%;bottom:-4%;height:52%;
 background-image:
   linear-gradient(hsl(var(--h) 75% 65% / .3) 1px, transparent 1px),
   linear-gradient(90deg, hsl(var(--h) 75% 65% / .3) 1px, transparent 1px);
 background-size:82px 82px;
 transform:perspective(560px) rotateX(70deg);transform-origin:bottom center;
 mask-image:linear-gradient(to top, #000 0%, transparent 74%);
 -webkit-mask-image:linear-gradient(to top, #000 0%, transparent 74%);
 opacity:.85}
.grain{position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.5;mix-blend-mode:overlay;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E")}
@keyframes pl{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.82)}}
.o15{display:grid;grid-template-columns:1fr auto 38px;gap:9px;align-items:center;padding:9px 0;border-top:1px solid hsl(var(--h) 20% 24% / .3)}
.o15 b{font-size:12.5px;font-weight:700;display:block;letter-spacing:-.02em}
.o15 em{font-style:normal;font-family:'DM Mono';font-size:9px;color:var(--d2)}
.thm{position:fixed;bottom:16px;right:18px;z-index:60;display:flex;align-items:center;gap:7px;
 padding:6px 9px;border-radius:12px;
 background:linear-gradient(168deg,hsl(var(--h) 22% 16% / .92),hsl(var(--h) 24% 9% / .94));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 44% / .5);
 backdrop-filter:blur(18px);box-shadow:0 6px 20px -8px hsl(var(--h) 40% 2% / .8)}
.thm-l{font-family:'DM Mono',monospace;font-size:7.5px;letter-spacing:.11em;text-transform:uppercase;
 color:var(--d2);margin-right:1px}
.thm-g{display:flex;gap:4px}
.thm-g i{width:15px;height:15px;border-radius:5px;cursor:pointer;border:1.5px solid transparent;
 transition:.14s;box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 2px 4px hsl(var(--h) 40% 2% / .55)}
.thm-g i:hover{transform:translateY(-1px)}
.thm-g i.on{border-color:#fff;box-shadow:0 0 0 1px hsl(var(--h) 30% 8%),0 0 10px rgba(255,255,255,.5)}
.thm-div{width:1px;height:17px;background:var(--ln)}
:root{--neg2:#c2415c;--v1:hsl(190 88% 58%);--v2:hsl(160 70% 52%);--v3:hsl(42 94% 60%);--v4:hsl(12 90% 62%);}
/* ---- shell ---- */
body{padding:26px 26px 60px}
.wrap{max-width:1340px}
.bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px;row-gap:12px}
.bar>.nav{margin-right:4px}
.nav{margin-bottom:0}
.nav a{cursor:pointer}
.ctl{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;padding:10px 12px;border-radius:12px;background:hsl(var(--h) 24% 10% / .55);border:1px solid var(--ln)}
.ctl .search{flex:1 1 180px;min-width:160px}
.ctl .date-picker{min-width:150px}
.ctl .btn{white-space:nowrap}
.seg{display:flex;gap:2px;padding:2px;border-radius:8px;background:hsl(var(--h) 24% 10% / .85);border:1px solid var(--ln)}
.seg .seg-btn,.mode span{font-family:'DM Mono';font-size:10px;padding:5px 10px;border-radius:6px;color:var(--d1);background:none;border:0;cursor:pointer}
.seg .seg-btn.is-on,.mode span.on,.mode .ab-btn.is-on{background:var(--ac);color:hsl(var(--h) 45% 8%);font-weight:600}
.mode .ab-btn{font-family:'DM Mono';font-size:10px;padding:5px 10px;border-radius:6px;color:var(--d2);background:none;border:0;cursor:pointer}
.mode .ab-btn:hover{color:var(--tx)}
.mode{display:flex;gap:2px;padding:2px;border-radius:8px;background:hsl(var(--h) 24% 10% / .85);border:1px solid var(--ln)}
.abmode label{display:none}
.search,.date-picker{font-family:'DM Mono';font-size:10px;padding:6px 10px;border-radius:7px;color:var(--tx);background:hsl(var(--h) 24% 10% / .85);border:1px solid var(--ln);outline:none;min-width:150px}
.search::placeholder{color:var(--d2)}
.btn{font-family:'DM Mono';font-size:10px;padding:6px 10px;border-radius:7px;color:var(--d1);background:hsl(var(--h) 24% 10% / .85);border:1px solid var(--ln);cursor:pointer}
.btn:hover{color:var(--tx)}
.sub{font-family:'DM Mono';font-size:10px;color:var(--d2);margin:0}
#freshness{font-family:'DM Mono';font-size:10px;color:var(--d2);margin:0}
.view[hidden]{display:none}
#legacy{display:none!important}
.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);font-family:'DM Mono';font-size:11px;padding:8px 14px;border-radius:8px;background:var(--pnl,hsl(var(--h) 22% 9%));border:1px solid var(--ln);color:var(--tx);z-index:50}
.toast[hidden]{display:none}
.empty-view{font-family:'DM Mono';font-size:11px;color:var(--d2);padding:40px;text-align:center}
/* formula panel (app.js) */
#formula-panel{background:var(--pnl,hsl(var(--h) 22% 9%));border:1px solid var(--ln);border-radius:12px;padding:14px;margin-bottom:14px;font-family:'DM Mono';font-size:11px}
#formula-panel[hidden]{display:none}
#formula-panel h2{font-size:12px;margin:0 0 8px}
#formula-panel .code{width:100%;min-height:120px;background:hsl(var(--h) 24% 7%);color:var(--tx);border:1px solid var(--ln);border-radius:8px;font-family:'DM Mono';font-size:10px;padding:8px}
#formula-panel .hint{color:var(--d2);font-size:10px}
#formula-panel .errors{color:var(--neg)}
#formula-panel .formula-actions,#formula-panel .weight-row,#formula-panel .formula-apply{display:flex;gap:8px;align-items:center;margin:8px 0}
.formwin{display:flex;align-items:center;gap:8px;font-family:'DM Mono';font-size:10px;color:var(--d2)}
.formwin[hidden]{display:none}
.formwin input[type=range]{accent-color:var(--ac);width:110px}
.formwin output{color:var(--ac)}
.toggle{font-family:'DM Mono';font-size:10px;color:var(--d2);display:flex;align-items:center;gap:5px}
.toggle input{accent-color:var(--ac)}
@media(max-width:900px){body{padding:14px}.two{grid-template-columns:1fr!important}.grid{grid-template-columns:1fr!important}}

/* ===== SLATE ===== */
#v-slate .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}
#v-slate h1{font-size:25px;font-weight:800;margin:0;letter-spacing:-.03em}
#v-slate .sub{font-family:'DM Mono';font-size:10.5px;color:var(--d2);margin-top:4px;letter-spacing:-.01em}
#v-slate .tools{display:flex;gap:8px;align-items:center}
#v-slate .sw{display:flex;gap:5px;padding:5px;border-radius:11px;background:linear-gradient(168deg,hsl(var(--h) 22% 16% / .85),hsl(var(--h) 24% 9% / .85));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 28% 40% / .45);
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .09) inset,0 4px 12px -6px hsl(var(--h) 40% 2% / .7)}
#v-slate .sw i{width:16px;height:16px;border-radius:5px;cursor:pointer;border:1.5px solid transparent;
 box-shadow:0 1px 0 rgba(255,255,255,.28) inset,0 2px 4px hsl(var(--h) 40% 2% / .55)}
#v-slate .sw i.on{border-color:#fff}
#v-slate .mode{display:flex;gap:3px;padding:4px;border-radius:11px;background:linear-gradient(168deg,hsl(var(--h) 22% 16% / .85),hsl(var(--h) 24% 9% / .85));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 28% 40% / .45);
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .09) inset,0 4px 12px -6px hsl(var(--h) 40% 2% / .7)}
#v-slate .mode span{font-family:'DM Mono';font-size:10.5px;padding:5px 13px;border-radius:8px;color:var(--d1);cursor:pointer}
#v-slate .mode span.on{background:linear-gradient(165deg,hsl(var(--h) 95% 72%),hsl(var(--h) 92% 55%));
 color:hsl(var(--h) 45% 8%);font-weight:600;
 box-shadow:0 1px 0 hsl(var(--h) 100% 92% / .5) inset,0 2px 6px hsl(var(--h) 40% 2% / .5),
   0 0 16px hsl(var(--h) 92% 58% / .45)}
#v-slate .pills{display:flex;gap:8px;overflow-x:auto;padding-bottom:5px;margin-bottom:14px}
#v-slate .gp{flex:0 0 auto;min-width:124px;border-radius:15px;padding:11px 13px;position:relative;
 background:linear-gradient(168deg, hsl(var(--h) 22% 17% / .62), hsl(var(--h) 24% 9% / .72));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 48% / .55);
 backdrop-filter:blur(22px) saturate(1.3);transition:transform .18s cubic-bezier(.2,.8,.3,1), box-shadow .18s;
 box-shadow:
   0 1px 0 hsl(var(--h) 40% 72% / .10) inset,
   0 2px 3px hsl(var(--h) 40% 2% / .45),
   0 10px 20px -9px hsl(var(--h) 40% 2% / .6)}
#v-slate .gp:hover{transform:translateY(-2px);
 box-shadow:0 1px 0 hsl(var(--h) 40% 72% / .13) inset,0 4px 7px hsl(var(--h) 40% 2% / .5),0 18px 32px -12px hsl(var(--h) 40% 2% / .7)}
#v-slate .gp--live{border-color:hsl(160 70% 50% / .42);border-top-color:hsl(160 72% 62% / .6);
 background:linear-gradient(165deg,hsl(160 70% 40% / .22),hsl(var(--h) 22% 9% / .92));
 box-shadow:0 1px 0 hsl(160 80% 75% / .16) inset,0 2px 3px hsl(var(--h) 40% 2% / .45),
   0 12px 24px -10px hsl(160 70% 30% / .5),0 0 22px -6px hsl(160 70% 45% / .28)}
#v-slate .gp--fin{opacity:.62}
#v-slate .gp-l{display:inline-flex;align-items:center;gap:5px;font-family:'DM Mono';font-size:9px;color:var(--pos);letter-spacing:.06em}
#v-slate .gp-l i{width:5px;height:5px;border-radius:50%;background:var(--pos);box-shadow:0 0 9px var(--pos);animation:pl 1.8s ease-in-out infinite}
#v-slate .gp-f,#v-slate .gp-t{font-family:'DM Mono';font-size:9px;color:var(--d2);letter-spacing:.08em}
#v-slate .gp-t{color:var(--ac)}
#v-slate .sc{display:flex;justify-content:space-between;align-items:center;margin-top:5px}
#v-slate .sc span{font-size:13.5px;font-weight:700;letter-spacing:-.02em}
#v-slate .sc b{font-family:'DM Mono';font-size:16px}
#v-slate .mt{font-size:14px;font-weight:700;margin-top:6px;letter-spacing:-.02em}
#v-slate .mt em{font-style:normal;color:var(--d2);font-weight:400;margin:0 4px;font-size:12px}
#v-slate .pr{font-family:'DM Mono';font-size:9.5px;color:var(--d1);margin-top:3px}
#v-slate .anh{display:flex;align-items:center;gap:10px;cursor:pointer;padding:11px 16px;border-radius:13px;
 background:linear-gradient(168deg,hsl(var(--h) 22% 14% / .8),hsl(var(--h) 24% 8% / .8));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 28% 38% / .45);margin-bottom:12px;
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .08) inset,0 8px 20px -12px hsl(var(--h) 40% 2% / .7)}
#v-slate .anh h2{font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin:0;color:var(--d1)}
#v-slate .anh .cv{font-family:'DM Mono';font-size:10.5px;color:var(--d1);margin-left:auto}
#v-slate .anh .cv b{color:var(--ac)}
#v-slate .grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:12px;margin-bottom:14px}
#v-slate .p{border-radius:18px;padding:16px 18px;position:relative;isolation:isolate;
 background:linear-gradient(168deg, hsl(var(--h) 22% 15% / .66), hsl(var(--h) 24% 8% / .74));
 border:1px solid var(--ln);
 border-top-color:hsl(var(--h) 30% 42% / .55);          
 backdrop-filter:blur(26px) saturate(1.35);
 box-shadow:
   0 1px 0 hsl(var(--h) 40% 70% / .09) inset,           
   0 -18px 34px -26px hsl(var(--h) 60% 40% / .45) inset,
   0 2px 4px hsl(var(--h) 40% 2% / .5),                 
   0 12px 26px -10px hsl(var(--h) 40% 2% / .55),        
   0 34px 60px -28px hsl(var(--h) 40% 2% / .75)}
#v-slate .p::before{content:'';position:absolute;inset:0;border-radius:18px;pointer-events:none;z-index:-1;
 background:radial-gradient(120% 70% at 12% -12%, hsl(var(--h) 80% 70% / .10), transparent 58%)}
#v-slate .pt{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--d1)}
#v-slate .pn{font-family:'DM Mono';font-size:9px;color:var(--d2)}
#v-slate .ph2{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:13px}
#v-slate .hero{display:flex;align-items:baseline;gap:11px}
#v-slate .hero b{font-size:44px;font-weight:800;line-height:1;letter-spacing:-.045em;
 background:linear-gradient(150deg,#fff 2%,var(--ac) 38%,var(--ac2) 96%);
 -webkit-background-clip:text;background-clip:text;color:transparent;
 filter:drop-shadow(0 2px 10px hsl(var(--h) 90% 55% / .42)) drop-shadow(0 1px 0 hsl(var(--h) 40% 4% / .8))}
#v-slate .hero span{font-family:'DM Mono';font-size:10px;color:var(--d1);line-height:1.55}
#v-slate .lp{display:grid;grid-template-columns:52px 1fr 44px 26px;gap:9px;align-items:center;margin-top:7px}
#v-slate .lp-l{font-family:'DM Mono';font-size:9.5px;color:var(--d1)}
#v-slate .lp-s{width:100%;height:12px}
#v-slate .lp b{font-family:'DM Mono';font-size:10.5px;text-align:right}
#v-slate .lp em{font-style:normal;font-family:'DM Mono';font-size:8.5px;color:var(--d2);text-align:right}
#v-slate .db{display:grid;grid-template-columns:44px 1fr 36px;gap:9px;align-items:center;margin-top:9px}
#v-slate .db-l{font-family:'DM Mono';font-size:9.5px;color:var(--d1)}
#v-slate .db-s{width:100%;height:14px}
#v-slate .db b{font-family:'DM Mono';font-size:10px;text-align:right}
#v-slate .lbl{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 11px}
#v-slate .lbl h2{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0}
#v-slate .lbl span{font-family:'DM Mono';font-size:9.5px;color:var(--d2)}
#v-slate .lg{display:inline-flex;align-items:center;gap:4px}
#v-slate .lg .d{margin-right:1px}
#v-slate .two{display:grid;grid-template-columns:1fr 300px;gap:12px}
#v-slate table{width:100%;border-collapse:collapse}
#v-slate th{font-family:'DM Mono';font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--d2);text-align:left;padding:0 8px 9px 0;font-weight:400}
#v-slate td{padding:9px 8px 9px 0;border-top:1px solid hsl(var(--h) 20% 24% / .3)}
#v-slate tr{transition:background .15s}
#v-slate tr.w{background:linear-gradient(90deg,hsl(var(--h) 90% 60% / .10),transparent 52%);
 box-shadow:inset 2px 0 0 hsl(var(--h) 92% 62% / .55)}
#v-slate tbody tr:hover{background:hsl(var(--h) 40% 70% / .045)}
#v-slate .box{display:inline-block;width:17px;height:17px;border-radius:6px;cursor:pointer;position:relative;
 background:linear-gradient(165deg,hsl(var(--h) 20% 20%),hsl(var(--h) 24% 12%));
 border:1px solid hsl(var(--h) 16% 30%);border-top-color:hsl(var(--h) 22% 44%);
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .10) inset,0 2px 4px hsl(var(--h) 40% 2% / .55)}
#v-slate .box.on{background:linear-gradient(165deg,hsl(var(--h) 95% 74%),hsl(var(--h) 92% 56%));
 border-color:hsl(var(--h) 92% 68%);
 box-shadow:0 1px 0 hsl(var(--h) 100% 92% / .55) inset,0 2px 5px hsl(var(--h) 40% 2% / .5),
   0 0 14px hsl(var(--h) 92% 60% / .55)}
#v-slate .box.on::after{content:'';position:absolute;left:4.5px;top:1.5px;width:4px;height:8px;border:solid hsl(var(--h) 40% 8%);border-width:0 2px 2px 0;transform:rotate(42deg)}
#v-slate .nm b{font-size:14.5px;font-weight:700;letter-spacing:-.02em}
#v-slate .nm em{display:block;font-style:normal;font-family:'DM Mono';font-size:9.5px;color:var(--d1);margin-top:2px}
#v-slate .fls{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px}
#v-slate .fl{font-family:'DM Mono';font-size:8px;padding:2px 7px;border-radius:5px;background:hsl(var(--h) 18% 20% / .8);color:var(--d1)}
#v-slate .fl.pos{background:hsl(160 60% 45% / .16);color:var(--pos)}
#v-slate .fl.neg{background:hsl(348 90% 65% / .16);color:var(--neg)}
#v-slate .fl.w{background:hsl(42 95% 60% / .16);color:var(--wrn)}
#v-slate .sg{width:46px;text-align:center}
#v-slate .dots{display:inline-flex;gap:4px}
#v-slate .d{width:7px;height:7px;border-radius:50%;display:inline-block;cursor:help;
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .25) inset, 0 1px 2px hsl(var(--h) 40% 2% / .6)}
#v-slate .d--good{background:radial-gradient(circle at 33% 28%, hsl(160 80% 78%), var(--pos));
 box-shadow:0 0 7px hsl(160 70% 50% / .55),0 1px 2px hsl(var(--h) 40% 2% / .6)}
#v-slate .d--mid{background:radial-gradient(circle at 33% 28%, hsl(42 90% 78%), var(--wrn));
 box-shadow:0 0 6px hsl(42 90% 58% / .4),0 1px 2px hsl(var(--h) 40% 2% / .6)}
#v-slate .d--bad{background:radial-gradient(circle at 33% 28%, hsl(348 90% 80%), var(--neg));
 box-shadow:0 0 6px hsl(348 85% 62% / .4),0 1px 2px hsl(var(--h) 40% 2% / .6)}
#v-slate .bolt{color:var(--wrn);font-size:10px;cursor:help;
 filter:drop-shadow(0 0 6px hsl(42 95% 60% / .7))}
#v-slate .pb em{display:block;font-style:normal;font-family:'DM Mono';font-size:8px;color:var(--d2);
 text-align:right;margin-top:3px;letter-spacing:.02em}
#v-slate .rail.vol .fillbar{background:linear-gradient(90deg,hsl(38 90% 44% / .5),hsl(42 95% 60% / .8));
 box-shadow:0 1px 0 hsl(45 100% 85% / .3) inset,0 0 16px hsl(42 95% 58% / .4)}
#v-slate .rail.vol .rngband{border-color:hsl(42 92% 66% / .5)}
#v-slate .rail.vol s{background:radial-gradient(circle at 33% 26%,#fff 6%,hsl(45 90% 88%) 46%,hsl(42 85% 66%));
 box-shadow:0 0 0 3px hsl(var(--h) 26% 7%),0 2px 5px hsl(var(--h) 40% 2% / .95),
   0 0 18px hsl(42 95% 62% / .85),0 1px 0 rgba(255,255,255,.9) inset}
#v-slate .sp{width:58px;text-align:center}
#v-slate .spk{width:54px;height:18px;display:block;margin:0 auto}
#v-slate .nosp{color:var(--d2)}
#v-slate .eg{font-size:20px;font-weight:800;text-align:right;width:62px;letter-spacing:-.035em;
 background:linear-gradient(120deg,var(--ac),var(--ac2));-webkit-background-clip:text;background-clip:text;color:transparent}
#v-slate .pb{width:186px;padding-right:14px!important}
#v-slate .pb-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}
#v-slate .pb-top b{font-family:'DM Mono';font-size:19px;font-weight:500;letter-spacing:-.02em;
 color:var(--tx);text-shadow:0 1px 0 hsl(var(--h) 40% 3% / .8)}
#v-slate .pb-top b i{font-style:normal;font-size:11px;color:var(--d2);margin-left:1px}
#v-slate .pb-top em{font-style:normal;font-family:'DM Mono';font-size:9px;color:var(--d2);letter-spacing:.02em}
#v-slate .rail{position:relative;height:11px;border-radius:7px;overflow:visible;
 background:linear-gradient(180deg,hsl(var(--h) 26% 5% / .95),hsl(var(--h) 22% 9% / .95));
 box-shadow:0 2px 4px hsl(var(--h) 40% 2% / .85) inset,
   0 -1px 0 hsl(var(--h) 40% 60% / .09) inset,
   0 1px 0 hsl(var(--h) 40% 70% / .06)}
#v-slate .tick{position:absolute;top:3px;bottom:3px;width:1px;background:hsl(var(--h) 30% 50% / .16)}
#v-slate .fillbar{position:absolute;left:0;top:1.5px;bottom:1.5px;border-radius:6px;
 background:linear-gradient(90deg,hsl(var(--h) 88% 46% / .55),hsl(var(--h) 92% 62% / .8));
 box-shadow:0 1px 0 hsl(var(--h) 95% 82% / .3) inset,0 0 14px hsl(var(--h) 90% 55% / .35)}
#v-slate .rngband{position:absolute;top:-3px;bottom:-3px;border-radius:8px;
 border:1px dashed hsl(var(--h) 60% 70% / .34);background:transparent!important;box-shadow:none!important}
#v-slate .rail s{position:absolute;top:-3px;width:17px;height:17px;border-radius:50%;transform:translateX(-50%);
 background:radial-gradient(circle at 33% 26%, #fff 6%, hsl(var(--h) 45% 88%) 46%, hsl(var(--h) 60% 66%));
 box-shadow:0 0 0 3px hsl(var(--h) 26% 7%),
   0 2px 5px hsl(var(--h) 40% 2% / .95),
   0 0 18px hsl(var(--h) 92% 70% / .8),
   0 1px 0 rgba(255,255,255,.9) inset}
#v-slate .hn{width:76px;white-space:nowrap}
#v-slate .hp{display:inline-block;font-family:'DM Mono';font-size:9.5px;color:var(--d1);
 padding:3px 8px;border-radius:7px;letter-spacing:.01em;
 background:linear-gradient(168deg,hsl(var(--h) 20% 18% / .8),hsl(var(--h) 24% 11% / .8));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 28% 38% / .4);
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .07) inset,0 2px 4px hsl(var(--h) 40% 2% / .4)}
#v-slate .hp b{color:var(--tx);font-weight:500}
#v-slate .wl{display:grid;grid-template-columns:1fr auto 18px;gap:10px;align-items:center;padding:10px 12px;border-radius:13px;
 background:linear-gradient(168deg,hsl(var(--h) 20% 17% / .82),hsl(var(--h) 24% 10% / .82));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 28% 40% / .48);margin-bottom:7px;
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .08) inset,0 2px 4px hsl(var(--h) 40% 2% / .45),
   0 10px 20px -10px hsl(var(--h) 40% 2% / .6)}
#v-slate .wl.hit{border-color:hsl(160 65% 50% / .48);border-top-color:hsl(160 70% 64% / .6);
 background:linear-gradient(150deg,hsl(160 65% 40% / .24),hsl(var(--h) 22% 11% / .88));
 box-shadow:0 1px 0 hsl(160 80% 78% / .16) inset,0 2px 4px hsl(var(--h) 40% 2% / .45),
   0 12px 24px -10px hsl(160 60% 28% / .6),0 0 20px -8px hsl(160 70% 45% / .3)}
#v-slate .wl-n b{font-size:12.5px;font-weight:700;display:block;letter-spacing:-.02em}
#v-slate .wl-n em{font-style:normal;font-family:'DM Mono';font-size:9px;color:var(--d2)}
#v-slate .wl-l{font-family:'DM Mono';font-size:12.5px}
#v-slate .wl-i{font-size:12px;text-align:center}
#v-slate .wl.hit .wl-i{color:var(--pos)}
#v-slate .wl.pend .wl-i{color:var(--d2)}
#v-slate .mh{font-family:'DM Mono';font-size:10px;color:var(--d1)}
#v-slate .pp{font-family:'DM Mono';font-size:13.5px;color:var(--ac);text-align:right}
#v-slate .note{font-family:'DM Mono';font-size:9px;color:var(--d2);line-height:1.65;margin-top:11px}
#v-slate .dwrap{position:relative}
#v-slate .dmark{position:absolute;top:0;bottom:16px;width:1px;background:hsl(var(--h) 90% 65% / .5)}
#v-slate .dmark::after{content:'+6';position:absolute;top:-3px;left:4px;font-family:'DM Mono';font-size:8px;color:var(--ac)}
#v-slate .dx{display:flex;justify-content:space-between;font-family:'DM Mono';font-size:8.5px;color:var(--d2);margin-top:3px}
/* ===== GAMES ===== */
#v-games .bar{display:flex;align-items:center;gap:14px;padding:9px 14px;border-radius:14px;margin-bottom:11px;
 background:linear-gradient(168deg,hsl(var(--h) 22% 15% / .72),hsl(var(--h) 24% 8% / .8));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 42% / .5);backdrop-filter:blur(20px)}
#v-games .bar h1{font-size:15px;font-weight:800;letter-spacing:-.03em;margin:0;white-space:nowrap}
#v-games .bar .meta{font-family:'DM Mono';font-size:9.5px;color:var(--d2);white-space:nowrap}
#v-games select{background:linear-gradient(168deg,hsl(var(--h) 22% 19% / .92),hsl(var(--h) 24% 11% / .92));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 46% / .55);color:var(--tx);
 border-radius:9px;padding:7px 11px;font-family:'Plus Jakarta Sans';font-size:12.5px;font-weight:700;min-width:280px}
#v-games .seg{display:flex;gap:2px;padding:3px;border-radius:9px;margin-left:auto;
 background:hsl(var(--h) 24% 10% / .85);border:1px solid var(--ln)}
#v-games .seg span{font-family:'DM Mono';font-size:10px;padding:5px 11px;border-radius:7px;color:var(--d1);cursor:pointer}
#v-games .seg span.on{background:var(--ac);color:hsl(var(--h) 45% 8%);font-weight:600}
#v-games .seg span[data-s=dom].on{background:var(--pos)}
#v-games .seg span[data-s=vul].on{background:var(--neg)}
#v-games .key{display:flex;gap:11px;font-family:'DM Mono';font-size:8.5px;color:var(--d2);align-items:center;white-space:nowrap}
#v-games .key i{width:16px;height:6px;border-radius:3px;display:inline-block;margin-right:4px;vertical-align:middle}
#v-games .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#v-games .p{border-radius:16px;padding:13px 15px;
 background:linear-gradient(168deg,hsl(var(--h) 22% 15% / .66),hsl(var(--h) 24% 8% / .74));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 44% / .55);backdrop-filter:blur(24px) saturate(1.3);
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .09) inset,0 12px 26px -12px hsl(var(--h) 40% 2% / .6)}
#v-games .gh{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--ln);margin-bottom:2px}
#v-games .gh h2{font-size:18px;font-weight:800;letter-spacing:-.03em;margin:0}
#v-games .gh .vs{font-family:'DM Mono';font-size:10px;color:var(--d1)}
#v-games .gh .vs b{color:var(--tx)}
#v-games .armbox{margin-left:auto;display:flex;align-items:center;gap:12px}
#v-games .armstat{font-family:'DM Mono';font-size:9.5px;color:var(--d2);text-align:right;line-height:1.5}
#v-games .armstat b{color:var(--tx);font-size:11px}
#v-games .score{font-family:'DM Mono';font-size:19px;line-height:1}
#v-games .vstrip{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:9px;margin:9px 0 2px}
#v-games .vstrip .vl{font-family:'DM Mono';font-size:8.5px;letter-spacing:.1em;text-transform:uppercase}
#v-games .vscale{flex:1;position:relative;height:16px;border-radius:8px;overflow:hidden;
 background:hsl(var(--h) 28% 6% / .9);box-shadow:0 1px 3px hsl(var(--h) 45% 1% / .8) inset}
#v-games .vscale u{position:absolute;top:0;bottom:0;border-radius:8px}
#v-games .vscale s{position:absolute;top:-2px;bottom:-2px;transform:translateX(-50%);width:3px;border-radius:2px;
 background:linear-gradient(180deg,#fff,hsl(var(--h) 30% 88%));
 box-shadow:0 0 0 1px hsl(var(--h) 30% 6% / .9),0 0 10px rgba(255,255,255,.9)}
#v-games .vscale em{position:absolute;font-style:normal;font-family:'DM Mono';font-size:8.5px;top:50%;
 transform:translateY(-50%);color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9)}
#v-games .vnum{font-family:'DM Mono';font-size:12px;white-space:nowrap}
#v-games .hdr,#v-games .row{display:grid;
 grid-template-columns:16px 18px minmax(200px,1fr) 50px 96px 116px 32px 38px 38px;
 gap:8px;align-items:center}
#v-games .hdr{padding:9px 0 7px;font-family:'DM Mono';font-size:7px;letter-spacing:.09em;
 text-transform:uppercase;color:var(--d2);border-bottom:1px solid hsl(var(--h) 20% 22% / .3)}
#v-games .r{text-align:right}
#v-games .c{text-align:center}
#v-games .row{height:38px;padding:0;border-top:1px solid hsl(var(--h) 20% 22% / .26);transition:background .13s}
#v-games .row:first-of-type{border-top:0}
#v-games .row:hover{background:hsl(var(--h) 40% 70% / .045)}
#v-games .row.hot{background:linear-gradient(90deg,hsl(var(--h) 90% 60% / .085),transparent 55%);
 box-shadow:inset 2px 0 0 var(--ac)}
#v-games .n1{font-family:'DM Mono';font-size:9.5px;color:var(--d2)}
#v-games .n2{font-family:'DM Mono';font-size:9px;color:hsl(var(--h) 14% 34%)}
#v-games .nm{display:flex;align-items:center;gap:5px;min-width:0}
#v-games .nml{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#v-games .nm b{font-size:13px;font-weight:700;letter-spacing:-.02em;white-space:nowrap;flex-shrink:0}
#v-games .nm .hd2{font-family:'DM Mono';font-size:7.5px;color:var(--d2);border:1px solid var(--ln);
 border-radius:3px;padding:0 3px;margin-left:4px;vertical-align:middle}
#v-games .fls{display:flex;gap:3px;min-width:0;overflow:hidden}
#v-games .fl{font-family:'DM Mono';font-size:6.5px;padding:1px 4px;border-radius:3px;background:hsl(var(--h) 18% 20% / .8);color:var(--d1)}
#v-games .fl.pos{background:hsl(160 60% 45% / .15);color:var(--pos)}
#v-games .fl.neg{background:hsl(348 90% 65% / .15);color:var(--neg)}
#v-games .fl.w{background:hsl(42 95% 60% / .15);color:var(--wrn)}
#v-games .eg{font-family:'DM Mono';font-size:14px;font-weight:500;text-align:right;letter-spacing:-.02em}
#v-games .pv{font-family:'DM Mono';font-size:14px;text-align:right;display:flex;align-items:baseline;justify-content:flex-end;gap:6px;white-space:nowrap}
#v-games .pv i{font-style:normal;font-size:8px;color:var(--d2)}
/* GOLD LENS annotation — the gold/matchup edge in points, shown next to P when
   the Lens toggle is on Gold. A read-only lens; never part of the probability. */
.gold-ann{font-family:'DM Mono';font-size:9px;font-weight:500;letter-spacing:.02em;
  padding:1px 5px;border-radius:5px;line-height:1.5;white-space:nowrap}
.gold-ann.pos{color:var(--pos);background:hsl(160 60% 45% / .13)}
.gold-ann.neg{color:var(--neg);background:hsl(345 90% 65% / .13)}
#v-games .rail{position:relative;height:14px;border-radius:7px;overflow:hidden;
 background:linear-gradient(180deg,hsl(var(--h) 26% 5% / .95),hsl(var(--h) 22% 9% / .95));
 box-shadow:0 2px 4px hsl(var(--h) 40% 2% / .85) inset}
#v-games .band{position:absolute;top:0;bottom:0}
#v-games .fill{position:absolute;left:0;top:0;bottom:0}
#v-games .mark{position:absolute;top:-3px;bottom:-3px;width:3px;border-radius:2px;transform:translateX(-50%);
 background:linear-gradient(180deg,#fff,hsl(var(--h) 30% 88%));
 box-shadow:0 0 0 1px hsl(var(--h) 30% 6% / .9),0 0 9px rgba(255,255,255,.85)}
#v-games .lohi{font-family:'DM Mono';font-size:9px;color:var(--d2);text-align:right}
#v-games .h2h{font-family:'DM Mono';font-size:9.5px;color:var(--d1);text-align:center}
#v-games .sig{display:flex;gap:2.5px;justify-content:center}
#v-games .sd{width:6px;height:6px;border-radius:50%}
#v-games .sd.g{background:var(--pos);box-shadow:0 0 5px hsl(160 70% 50% / .6)}
#v-games .sd.y{background:var(--wrn);box-shadow:0 0 5px hsl(42 90% 58% / .45)}
#v-games .sd.r{background:var(--neg);box-shadow:0 0 5px hsl(348 85% 62% / .45)}
#v-games .p15{font-family:'DM Mono';font-size:11.5px;color:var(--d2);text-align:right}
#v-games .p15.on{color:var(--pos);font-weight:500}
#v-games .p15.mid{color:var(--wrn)}
#v-games .foot{display:flex;justify-content:space-between;font-family:'DM Mono';font-size:9px;color:var(--d2);
 margin-top:9px;padding-top:8px;border-top:1px solid var(--ln)}
#v-games .foot b{color:var(--ac);font-size:10.5px}
/* ===== PITCHERS ===== */
#v-pitchers .p{border-radius:20px;padding:17px 19px;
 background:linear-gradient(168deg,hsl(var(--h) 22% 15% / .66),hsl(var(--h) 24% 8% / .74));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 44% / .55);backdrop-filter:blur(26px) saturate(1.35);
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .09) inset,0 2px 4px hsl(var(--h) 40% 2% / .5),
   0 14px 30px -12px hsl(var(--h) 40% 2% / .6),0 38px 66px -30px hsl(var(--h) 40% 2% / .75)}
#v-pitchers h1{font-size:32px;font-weight:800;letter-spacing:-.04em;margin:0}
#v-pitchers .hd{display:flex;justify-content:space-between;align-items:flex-start;gap:22px}
#v-pitchers .mt{font-family:'DM Mono';font-size:10.5px;color:var(--d1);margin-top:5px}
#v-pitchers .tg{display:inline-block;font-family:'DM Mono';font-size:9px;padding:3px 9px;border-radius:6px;margin-left:9px;
 vertical-align:middle;letter-spacing:.08em}
#v-pitchers .rankbox{text-align:right;flex-shrink:0}
#v-pitchers .rankbox b{font-size:46px;font-weight:800;line-height:1;letter-spacing:-.05em;display:block;
 background:linear-gradient(150deg,#fff 2%,var(--ac) 40%,var(--ac2) 96%);
 -webkit-background-clip:text;background-clip:text;color:transparent;
 filter:drop-shadow(0 3px 13px hsl(var(--h) 90% 55% / .4))}
#v-pitchers .rankbox span{font-family:'DM Mono';font-size:10px;color:var(--d1);display:block;margin-top:3px}
#v-pitchers .kpi{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:16px}
#v-pitchers .k{padding:11px 13px;border-radius:13px;background:hsl(var(--h) 20% 13% / .62);border:1px solid var(--ln);
 border-top-color:hsl(var(--h) 28% 36% / .42);box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .07) inset,0 3px 7px hsl(var(--h) 40% 2% / .4)}
#v-pitchers .k span{font-family:'DM Mono';font-size:7.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--d2);display:block}
#v-pitchers .k b{font-family:'DM Mono';font-size:19px;display:block;margin-top:4px}
#v-pitchers .k em{font-style:normal;font-family:'DM Mono';font-size:7.5px;color:var(--d2)}
#v-pitchers .pctbar{position:relative;height:9px;border-radius:6px;margin-top:14px;
 background:linear-gradient(90deg,hsl(348 60% 32% / .55),hsl(var(--h) 20% 16% / .8) 50%,hsl(160 55% 36% / .55));
 box-shadow:0 2px 4px hsl(var(--h) 45% 1% / .8) inset}
#v-pitchers .pctbar u{position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:hsl(var(--h) 40% 70% / .28)}
#v-pitchers .pctbar s{position:absolute;top:-4px;width:17px;height:17px;border-radius:50%;transform:translateX(-50%);
 background:radial-gradient(circle at 33% 26%,#fff 6%,hsl(var(--h) 45% 88%) 46%,hsl(var(--h) 60% 66%));
 box-shadow:0 0 0 3px hsl(var(--h) 26% 7%),0 2px 5px hsl(var(--h) 45% 1% / .95),0 0 16px hsl(var(--h) 92% 70% / .7)}
#v-pitchers .pl{display:flex;justify-content:space-between;font-family:'DM Mono';font-size:8.5px;color:var(--d2);margin-top:6px}
#v-pitchers .grid{display:grid;grid-template-columns:1fr 350px;gap:13px;margin-top:13px}
#v-pitchers .pt2{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--d1)}
#v-pitchers .pd{font-family:'DM Mono';font-size:9px;color:var(--d2);margin:3px 0 14px}
#v-pitchers table{width:100%;border-collapse:collapse}
#v-pitchers th{font-family:'DM Mono';font-size:7.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--d2);
 text-align:right;padding:0 6px 9px 0;font-weight:400}
#v-pitchers th:first-child,#v-pitchers th:nth-child(2){text-align:left}
#v-pitchers .pn{color:var(--ac);font-size:9px}
#v-pitchers td{padding:8px 6px 8px 0;border-top:1px solid hsl(var(--h) 20% 22% / .38);font-family:'DM Mono';font-size:11px;text-align:right}
#v-pitchers td:first-child,#v-pitchers td:nth-child(2){text-align:left}
#v-pitchers .sl2{color:var(--d2);font-size:9.5px;width:22px}
#v-pitchers .nm{font-family:'Plus Jakarta Sans';font-size:12.5px;font-weight:600}
#v-pitchers .nm em{font-style:normal;font-family:'DM Mono';font-size:8.5px;color:var(--d2);display:block;margin-top:1px}
#v-pitchers .hz{border-radius:5px;padding:3px 0;display:block}
#v-pitchers .prob{font-size:13px;font-weight:500}
#v-pitchers .tot{border-top:2px solid hsl(var(--h) 40% 40% / .35)!important;background:hsl(var(--h) 90% 60% / .05)}
#v-pitchers .tot td{padding-top:11px;font-size:12.5px}
#v-pitchers .exp{display:flex;align-items:baseline;gap:10px;margin-bottom:3px}
#v-pitchers .exp b{font-family:'DM Mono';font-size:34px;color:var(--ac)}
#v-pitchers .exp span{font-family:'DM Mono';font-size:9.5px;color:var(--d1);line-height:1.5}
#v-pitchers .cmp{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:8px 0;
 border-top:1px solid hsl(var(--h) 20% 22% / .38);font-family:'DM Mono';font-size:11px}
#v-pitchers .cmp span{color:var(--d1)}
#v-pitchers .note{font-family:'DM Mono';font-size:9px;color:var(--d2);line-height:1.65;margin-top:12px}
#v-pitchers .stseg{display:flex;gap:3px;padding:4px;border-radius:11px;margin-bottom:13px;
 background:linear-gradient(168deg,hsl(var(--h) 22% 16% / .85),hsl(var(--h) 24% 9% / .85));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 28% 40% / .45)}
#v-pitchers .stseg span{flex:1;text-align:center;font-family:'DM Mono';font-size:10px;padding:6px 4px;border-radius:8px;color:var(--d1);cursor:pointer;transition:.15s}
#v-pitchers .stseg span:hover{color:var(--tx)}
#v-pitchers .stseg span.on{background:linear-gradient(165deg,hsl(var(--h) 95% 72%),hsl(var(--h) 92% 55%));color:hsl(var(--h) 45% 8%);font-weight:600}
#v-pitchers .stseg span[data-s=dom].on{background:linear-gradient(165deg,hsl(160 70% 62%),hsl(160 65% 44%));color:hsl(160 45% 8%)}
#v-pitchers .stseg span[data-s=vul].on{background:linear-gradient(165deg,hsl(348 88% 70%),hsl(348 80% 54%));color:hsl(348 45% 10%)}
#v-pitchers .blend{display:flex;justify-content:space-between;align-items:flex-end}
#v-pitchers .blend b{font-family:'DM Mono';font-size:32px;color:var(--ac);display:block;line-height:1}
#v-pitchers .blend em{font-style:normal;font-family:'DM Mono';font-size:8.5px;color:var(--d2)}
#v-pitchers .bpct{text-align:right}
#v-pitchers .bpct span{font-family:'DM Mono';font-size:20px;display:block}
#v-pitchers #psel2{background:linear-gradient(168deg,hsl(var(--h) 22% 18% / .92),hsl(var(--h) 24% 10% / .92));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 46% / .55);color:var(--tx);
 border-radius:12px;padding:10px 14px;font-family:'Plus Jakarta Sans';font-size:14px;font-weight:700;min-width:290px;
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .09) inset,0 4px 12px hsl(var(--h) 40% 2% / .55)}
#v-pitchers #psel{background:linear-gradient(168deg,hsl(var(--h) 22% 18% / .9),hsl(var(--h) 24% 10% / .9));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 44% / .5);color:var(--tx);
 border-radius:10px;padding:8px 11px;font-family:'DM Mono';font-size:11px}
#v-pitchers .pdrow{display:grid;grid-template-columns:1fr auto;gap:8px;padding:6px 0;
 border-top:1px solid hsl(var(--h) 20% 22% / .38);font-family:'DM Mono';font-size:10.5px}
#v-pitchers .pdrow span{color:var(--d1)}
#v-pitchers .rl2{font-family:'DM Mono';font-size:8px;padding:2px 7px;border-radius:5px;margin-left:6px}
#v-pitchers .plate{position:relative;aspect-ratio:1;border-radius:11px;overflow:hidden;background:hsl(var(--h) 30% 5% / .8);
 box-shadow:0 2px 6px hsl(var(--h) 45% 1% / .8) inset}
#v-pitchers .pout{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px}
#v-pitchers .pin{position:absolute;inset:23%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:0;
 border-radius:3px;outline:1px solid hsl(var(--h) 40% 78% / .3);overflow:hidden;background:hsl(var(--h) 30% 4%)}
#v-pitchers .c{position:relative;display:flex;align-items:center;justify-content:center;font-family:'DM Mono'}
#v-pitchers .c b{font-size:10.5px;position:relative;z-index:1}
#v-pitchers .c i{position:absolute;font-size:6px;font-style:normal;color:rgba(255,255,255,.26)}
#v-pitchers .pout .c i{top:4px;left:6px}
#v-pitchers .pin .c i{top:2px;left:3px}
#v-pitchers .pout .c:nth-child(1){border-radius:10px 0 0 0}
#v-pitchers .pout .c:nth-child(2){border-radius:0 10px 0 0}
#v-pitchers .pout .c:nth-child(3){border-radius:0 0 0 10px}
#v-pitchers .pout .c:nth-child(4){border-radius:0 0 10px 0}
#v-pitchers .pout .c b{position:absolute}
#v-pitchers .pout .c:nth-child(1) b{top:9px;left:11px}
#v-pitchers .pout .c:nth-child(2) b{top:9px;right:11px}
#v-pitchers .pout .c:nth-child(3) b{bottom:9px;left:11px}
#v-pitchers .pout .c:nth-child(4) b{bottom:9px;right:11px}
#v-pitchers .na{color:var(--d2);opacity:.5}
#v-pitchers .tabs2{display:flex;gap:5px;margin:18px 0 13px;border-top:1px solid var(--ln);padding-top:15px}
#v-pitchers .tb2{font-family:'DM Mono';font-size:10.5px;padding:6px 13px;border-radius:9px;cursor:pointer;color:var(--d1);
 background:linear-gradient(168deg,hsl(var(--h) 22% 17% / .85),hsl(var(--h) 24% 10% / .85));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 42% / .48);transition:.16s}
#v-pitchers .tb2:hover{color:var(--tx)}
#v-pitchers .tb2.on{background:linear-gradient(165deg,hsl(var(--h) 95% 72%),hsl(var(--h) 92% 55%));color:hsl(var(--h) 45% 8%);
 font-weight:600;border-color:hsl(var(--h) 92% 68%);box-shadow:0 0 16px hsl(var(--h) 92% 58% / .38)}
#v-pitchers #lpane{min-height:236px}
#v-pitchers .dmg2{display:grid;grid-template-columns:172px 1fr;gap:16px;align-items:start}
#v-pitchers .sub2{font-family:'DM Mono';font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--d2);margin-bottom:9px}
#v-pitchers .lg3{display:grid;grid-template-columns:52px 46px 1fr 118px;gap:10px;align-items:center;padding:8px 0;
 border-top:1px solid hsl(var(--h) 20% 22% / .38)}
#v-pitchers .lg3 .d{font-family:'DM Mono';font-size:10px;color:var(--d2)}
#v-pitchers .lg3 .ln{font-family:'DM Mono';font-size:11.5px}
#v-pitchers .stack{display:flex;height:9px;border-radius:5px;overflow:hidden;
 box-shadow:0 1px 3px hsl(var(--h) 45% 1% / .7) inset}
#v-pitchers .stack i{height:100%}
#v-pitchers .lg3 .res{font-family:'DM Mono';font-size:10px;text-align:right}
#v-pitchers .dr{display:grid;grid-template-columns:44px 1fr 52px;gap:9px;align-items:center;margin-bottom:7px}
#v-pitchers .dr-l{font-family:'DM Mono';font-size:10.5px}
#v-pitchers .dr-t{position:relative;height:8px;border-radius:5px;background:hsl(var(--h) 26% 6% / .9);
 box-shadow:0 1px 3px hsl(var(--h) 45% 1% / .8) inset}
#v-pitchers .dr-t u{position:absolute;top:0;bottom:0;border-radius:4px;background:hsl(var(--h) 20% 32% / .85)}
#v-pitchers .dr-t i{position:absolute;top:0;bottom:0;border-radius:4px}
#v-pitchers .dr-v{font-family:'DM Mono';font-size:10px;text-align:right}
#v-pitchers .dmgwrap{display:grid;grid-template-columns:158px 1fr;gap:14px;align-items:start}
#v-pitchers .dmg{display:grid;grid-template-columns:1fr auto auto;gap:8px;padding:5px 0;
 border-top:1px solid hsl(var(--h) 20% 22% / .34);font-family:'DM Mono';font-size:9.5px}
#v-pitchers .dmg .ev{color:var(--d2)}
#v-pitchers .legend{display:flex;gap:9px;flex-wrap:wrap;margin-top:8px;font-family:'DM Mono';font-size:8px;color:var(--d2)}
#v-pitchers .rnote{font-family:'DM Mono';font-size:8.5px;color:var(--d2);line-height:1.6;margin-top:11px;
 padding:8px 11px;border-radius:9px;background:hsl(var(--h) 26% 8% / .5);border:1px solid var(--ln)}
#v-pitchers .rnote b{color:var(--d1)}
#v-pitchers .empty2{font-family:'DM Mono';font-size:10px;color:var(--d2);padding:20px 0}
#v-pitchers .legend i{width:8px;height:8px;border-radius:2px;display:inline-block;margin-right:3px;vertical-align:middle}
#v-pitchers .ars{display:grid;grid-template-columns:1fr 52px 116px;gap:9px;align-items:center;padding:7px 0;
 border-top:1px solid hsl(var(--h) 20% 22% / .4)}
#v-pitchers .ars b{font-size:12px;font-weight:600}
#v-pitchers .ars em{font-style:normal;font-family:'DM Mono';font-size:8px;color:var(--d2);display:block}
#v-pitchers .ars .u{font-family:'DM Mono';font-size:10.5px;text-align:right;color:var(--d1)}
#v-pitchers .slash{white-space:nowrap;text-align:right}
#v-pitchers .slash b{font-family:'DM Mono';font-size:10.5px;font-weight:500}
#v-pitchers .slash i{font-style:normal;color:var(--d2);margin:0 3px;font-size:9px}
/* ===== BATTERS ===== */
#v-batters .p{border-radius:20px;padding:17px 19px;
 background:linear-gradient(168deg,hsl(var(--h) 22% 15% / .66),hsl(var(--h) 24% 8% / .74));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 44% / .55);backdrop-filter:blur(26px) saturate(1.35);
 box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .09) inset,0 2px 4px hsl(var(--h) 40% 2% / .5),
   0 14px 30px -12px hsl(var(--h) 40% 2% / .6),0 38px 66px -30px hsl(var(--h) 40% 2% / .75)}
#v-batters h1{font-size:29px;font-weight:800;letter-spacing:-.035em;margin:0}
#v-batters .hd{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
#v-batters .mt{font-family:'DM Mono';font-size:10.5px;color:var(--d1);margin-top:5px}
#v-batters .fls{display:flex;gap:5px;margin-top:8px;flex-wrap:wrap}
#v-batters .fl{font-family:'DM Mono';font-size:8px;padding:3px 8px;border-radius:6px;background:hsl(var(--h) 18% 20% / .8);color:var(--d1)}
#v-batters .fl.pos{background:hsl(160 60% 45% / .16);color:var(--pos)}
#v-batters .fl.neg{background:hsl(348 90% 65% / .16);color:var(--neg)}
#v-batters .fl.w{background:hsl(42 95% 60% / .16);color:var(--wrn)}
#v-batters select{background:linear-gradient(168deg,hsl(var(--h) 22% 18% / .9),hsl(var(--h) 24% 10% / .9));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 44% / .5);color:var(--tx);
 border-radius:11px;padding:9px 13px;font-family:'Plus Jakarta Sans';font-size:12.5px;font-weight:600;min-width:196px}
#v-batters .sl{font-family:'DM Mono';font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:var(--d2);display:block;margin-bottom:5px}
#v-batters .big{text-align:right;flex-shrink:0}
#v-batters .big b{font-size:54px;font-weight:800;line-height:.95;letter-spacing:-.05em;display:block;
 background:linear-gradient(150deg,#fff 2%,var(--ac) 38%,var(--ac2) 96%);
 -webkit-background-clip:text;background-clip:text;color:transparent;
 filter:drop-shadow(0 3px 14px hsl(var(--h) 90% 55% / .45))}
#v-batters .big > span:not(.eg){font-family:'DM Mono';font-size:10px;color:var(--d1);display:block;margin-top:3px}
#v-batters .eg{display:inline-block!important;margin-top:8px;font-family:'DM Mono';font-size:13.5px;padding:5px 13px;border-radius:9px;
 background:linear-gradient(165deg,hsl(var(--h) 95% 70%),hsl(var(--h) 92% 54%));color:hsl(var(--h) 45% 8%)!important;font-weight:600;
 box-shadow:0 1px 0 hsl(var(--h) 100% 92% / .5) inset,0 3px 10px hsl(var(--h) 90% 45% / .4)}
#v-batters .rl{display:flex;justify-content:space-between;font-family:'DM Mono';font-size:8.5px;color:var(--d2);margin:14px 0 5px}
#v-batters .rail{position:relative;height:13px;border-radius:8px;
 background:linear-gradient(180deg,hsl(var(--h) 26% 5% / .95),hsl(var(--h) 22% 9% / .95));
 box-shadow:0 2px 5px hsl(var(--h) 40% 2% / .85) inset,0 -1px 0 hsl(var(--h) 40% 60% / .09) inset}
#v-batters .rail u{position:absolute;top:-3px;bottom:-3px;border-radius:9px;border:1px dashed hsl(var(--h) 60% 70% / .4)}
#v-batters .rail i{position:absolute;left:0;top:2px;bottom:2px;border-radius:7px;
 background:linear-gradient(90deg,hsl(var(--h) 88% 46% / .55),hsl(var(--h) 92% 62% / .85));
 box-shadow:0 1px 0 hsl(var(--h) 95% 82% / .3) inset,0 0 16px hsl(var(--h) 90% 55% / .4)}
#v-batters .rail s{position:absolute;top:-3px;width:19px;height:19px;border-radius:50%;transform:translateX(-50%);transition:.35s cubic-bezier(.2,.8,.3,1);
 background:radial-gradient(circle at 33% 26%,#fff 6%,hsl(var(--h) 45% 88%) 46%,hsl(var(--h) 60% 66%));
 box-shadow:0 0 0 3px hsl(var(--h) 26% 7%),0 2px 6px hsl(var(--h) 40% 2% / .95),0 0 20px hsl(var(--h) 92% 70% / .8)}
#v-batters .grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:13px}
#v-batters .pt2{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--d1)}
#v-batters .pd{font-family:'DM Mono';font-size:9px;color:var(--d2);margin:3px 0 13px}
#v-batters .wfbox{height:auto;min-height:212px}
#v-batters .wf{display:grid;grid-template-columns:1fr 132px 52px;gap:11px;align-items:center;margin-bottom:9px}
#v-batters .wf-n{font-size:12px;font-weight:600}
#v-batters .wf-n em{display:block;font-style:normal;font-family:'DM Mono';font-size:8.5px;color:var(--d2);margin-top:1px}
#v-batters .wf-t{position:relative;height:9px;border-radius:5px;background:hsl(var(--h) 26% 6% / .9);box-shadow:0 1px 3px hsl(var(--h) 40% 2% / .7) inset}
#v-batters .wf-t i{position:absolute;top:1.5px;bottom:1.5px;border-radius:4px;box-shadow:0 0 10px currentColor}
#v-batters .wf-t u{position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:hsl(var(--h) 40% 70% / .3)}
#v-batters .wf b{font-family:'DM Mono';font-size:11.5px;text-align:right}
#v-batters .tot{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px;padding-top:11px;border-top:1px solid var(--ln)}
#v-batters .tot span{font-family:'DM Mono';font-size:9.5px;color:var(--d2)}
#v-batters .tot b{font-family:'DM Mono';font-size:15px;color:var(--ac)}
#v-batters .vd{display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:15px}
#v-batters .vd.strong{background:linear-gradient(120deg,hsl(348 70% 40% / .2),hsl(var(--h) 22% 11% / .7));border:1px solid hsl(348 80% 60% / .4)}
#v-batters .vd.neutral{background:linear-gradient(120deg,hsl(var(--h) 30% 24% / .35),hsl(var(--h) 22% 11% / .7));border:1px solid var(--ln)}
#v-batters .vd.weak{background:linear-gradient(120deg,hsl(160 65% 34% / .22),hsl(var(--h) 22% 11% / .7));border:1px solid hsl(160 70% 55% / .4)}
#v-batters .vd-i{font-size:25px;line-height:1}
#v-batters .vd-t{font-size:15.5px;font-weight:800;letter-spacing:-.03em}
#v-batters .vd-s{font-family:'DM Mono';font-size:9.5px;color:var(--d1);margin-top:3px;line-height:1.5}
#v-batters .vd-n{margin-left:auto;text-align:right}
#v-batters .vd-n b{font-family:'DM Mono';font-size:22px;display:block}
#v-batters .vd-n em{font-style:normal;font-family:'DM Mono';font-size:7.5px;color:var(--d2)}
#v-batters .gauge{position:relative;height:8px;border-radius:5px;margin-top:11px;
 background:linear-gradient(90deg,hsl(160 60% 40% / .55),hsl(var(--h) 20% 18% / .8) 50%,hsl(348 70% 48% / .55));
 box-shadow:0 2px 4px hsl(var(--h) 45% 1% / .8) inset}
#v-batters .gauge u{position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:hsl(var(--h) 40% 70% / .3)}
#v-batters .gauge s{position:absolute;top:-4px;width:16px;height:16px;border-radius:50%;transform:translateX(-50%);transition:.35s cubic-bezier(.2,.8,.3,1);
 background:radial-gradient(circle at 33% 26%,#fff 6%,hsl(var(--h) 45% 88%) 46%,hsl(var(--h) 60% 66%));
 box-shadow:0 0 0 3px hsl(var(--h) 26% 7%),0 2px 5px hsl(var(--h) 45% 1% / .95),0 0 16px hsl(var(--h) 92% 70% / .7)}
#v-batters .gl{display:flex;justify-content:space-between;font-family:'DM Mono';font-size:8px;color:var(--d2);margin-top:5px}
#v-batters .slab{border-radius:17px;padding:15px 16px;margin-top:13px;
 background:linear-gradient(170deg,hsl(var(--h) 30% 3.5%),hsl(var(--h) 32% 1.8%));
 border:1px solid hsl(var(--h) 25% 14% / .8);border-top-color:hsl(var(--h) 28% 26% / .6);
 box-shadow:0 3px 10px hsl(var(--h) 40% 1% / .9) inset}
#v-batters .zt{font-family:'DM Mono';font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:var(--d2);text-align:center;margin-bottom:7px}
#v-batters .plate{position:relative;aspect-ratio:1;border-radius:11px;overflow:hidden;background:hsl(var(--h) 30% 6% / .6);box-shadow:0 2px 6px hsl(var(--h) 45% 1% / .8) inset}
#v-batters .pout{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px}
#v-batters .pin{position:absolute;inset:23%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:0;
 border-radius:3px;outline:1px solid hsl(var(--h) 40% 78% / .3);overflow:hidden;
 background:hsl(var(--h) 30% 4%);           
 box-shadow:0 0 0 1px hsl(var(--h) 30% 2% / .9), 0 2px 8px hsl(var(--h) 45% 1% / .55)}
#v-batters .c{position:relative;display:flex;align-items:center;justify-content:center;font-family:'DM Mono';transition:.3s cubic-bezier(.2,.8,.3,1)}
#v-batters .c b{font-size:10.5px;position:relative;z-index:1}
#v-batters .c i{position:absolute;font-size:6px;font-style:normal;color:rgba(255,255,255,.26)}
#v-batters .pout .c i{top:4px;left:6px}
#v-batters .pin .c i{top:2px;left:3px}
#v-batters .pout .c:nth-child(1){border-radius:10px 0 0 0}
#v-batters .pout .c:nth-child(2){border-radius:0 10px 0 0}
#v-batters .pout .c:nth-child(3){border-radius:0 0 0 10px}
#v-batters .pout .c:nth-child(4){border-radius:0 0 10px 0}
#v-batters .pout .c b{position:absolute}
#v-batters .pout .c:nth-child(1) b{top:10px;left:12px}
#v-batters .pout .c:nth-child(2) b{top:10px;right:12px}
#v-batters .pout .c:nth-child(3) b{bottom:10px;left:12px}
#v-batters .pout .c:nth-child(4) b{bottom:10px;right:12px}
#v-batters .pin .c{border-radius:0;box-shadow:inset 0 0 0 .5px hsl(var(--h) 40% 78% / .10)}
#v-batters .pin .c b{text-shadow:0 1px 3px hsl(var(--h) 45% 2% / .95)}
#v-batters .na{color:var(--d2);opacity:.5}
#v-batters .zw{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#v-batters .pt-r{display:flex;gap:5px;align-items:center;margin:13px 0 0}
#v-batters .pt-l{font-family:'DM Mono';font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:var(--d2);margin-right:3px}
#v-batters .pt-b{font-family:'DM Mono';font-size:11px;padding:6px 12px;border-radius:9px;cursor:pointer;color:var(--d1);
 background:linear-gradient(168deg,hsl(var(--h) 22% 17% / .85),hsl(var(--h) 24% 10% / .85));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 42% / .48);transition:.16s}
#v-batters .pt-b:hover{color:var(--tx)}
#v-batters .pt-b.on{background:linear-gradient(165deg,hsl(var(--h) 95% 72%),hsl(var(--h) 92% 55%));color:hsl(var(--h) 45% 8%);font-weight:600;
 border-color:hsl(var(--h) 92% 68%);box-shadow:0 0 16px hsl(var(--h) 92% 58% / .38)}
#v-batters .sts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
#v-batters .st{padding:9px 11px;border-radius:11px;background:hsl(var(--h) 20% 13% / .62);border:1px solid var(--ln);border-top-color:hsl(var(--h) 28% 36% / .42)}
#v-batters .st span{font-family:'DM Mono';font-size:7.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--d2);display:block}
#v-batters .st b{font-family:'DM Mono';font-size:16px;display:block;margin-top:3px}
#v-batters .st em{font-style:normal;font-family:'DM Mono';font-size:7.5px;color:var(--d2)}
#v-batters .ars{display:grid;grid-template-columns:1fr 58px 40px 116px;gap:9px;align-items:center;padding:7px 0;
 border-top:1px solid hsl(var(--h) 20% 22% / .4);cursor:pointer}
#v-batters .ars:hover{background:hsl(var(--h) 40% 70% / .04)}
#v-batters .ars.on{background:hsl(var(--h) 90% 60% / .09);box-shadow:inset 2px 0 0 var(--ac)}
#v-batters .ars b{font-size:12px;font-weight:600}
#v-batters .ars em{font-style:normal;font-family:'DM Mono';font-size:8px;color:var(--d2);display:block}
#v-batters .ub{height:6px;border-radius:3px;background:hsl(var(--h) 28% 5% / .9);box-shadow:0 1px 3px hsl(var(--h) 45% 1% / .8) inset}
#v-batters .ub i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--ac2),var(--ac))}
#v-batters .ars span{font-family:'DM Mono';font-size:10.5px;text-align:right}
#v-batters .arsh{display:grid;grid-template-columns:1fr 58px 40px 116px;gap:9px;padding-bottom:5px}
#v-batters .arsh span{font-family:'DM Mono';font-size:7.5px;letter-spacing:.1em;color:var(--d2);text-align:right}
#v-batters .slh{white-space:nowrap}
#v-batters .slash{white-space:nowrap;text-align:right}
#v-batters .slash b{font-family:'DM Mono';font-size:10.5px;font-weight:500}
#v-batters .slash i{font-style:normal;color:var(--d2);margin:0 3px;font-size:9px}
#v-batters .fx{display:flex;justify-content:space-between;font-family:'DM Mono';font-size:8px;color:var(--d2);margin-top:4px}
#v-batters .tabs{display:flex;gap:5px;margin:18px 0 13px}
#v-batters .pane{max-height:300px;overflow-y:auto;padding-right:6px}
#v-batters .pane::-webkit-scrollbar{width:7px}
#v-batters .pane::-webkit-scrollbar-track{background:hsl(var(--h) 28% 6% / .6);border-radius:4px}
#v-batters .pane::-webkit-scrollbar-thumb{border-radius:4px;
 background:linear-gradient(180deg,hsl(var(--h) 40% 34%),hsl(var(--h) 40% 22%));
 border:1px solid hsl(var(--h) 40% 44% / .3)}
#v-batters .pane::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,hsl(var(--h) 60% 44%),hsl(var(--h) 60% 30%))}
#v-batters .tb{font-family:'DM Mono';font-size:10.5px;padding:6px 13px;border-radius:9px;cursor:pointer;color:var(--d1);
 background:linear-gradient(168deg,hsl(var(--h) 22% 17% / .85),hsl(var(--h) 24% 10% / .85));
 border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 42% / .48);transition:.16s}
#v-batters .tb:hover{color:var(--tx)}
#v-batters .tb.on{background:linear-gradient(165deg,hsl(var(--h) 95% 72%),hsl(var(--h) 92% 55%));color:hsl(var(--h) 45% 8%);
 font-weight:600;border-color:hsl(var(--h) 92% 68%);box-shadow:0 0 16px hsl(var(--h) 92% 58% / .38)}
#v-batters .gl2{display:grid;grid-template-columns:52px 30px 1fr 46px 46px;gap:9px;align-items:center;padding:6px 0;
 border-top:1px solid hsl(var(--h) 20% 22% / .38);font-family:'DM Mono';font-size:10.5px}
#v-batters .gl2 .dt{color:var(--d2);font-size:9.5px}
#v-batters .gl2 .bar{height:6px;border-radius:3px;background:hsl(var(--h) 28% 5% / .9);position:relative;
 box-shadow:0 1px 3px hsl(var(--h) 45% 1% / .8) inset}
#v-batters .gl2 .bar i{position:absolute;left:0;top:0;bottom:0;border-radius:3px}
#v-batters .rk{display:grid;grid-template-columns:88px 1fr 46px 40px;gap:10px;align-items:center;margin-bottom:8px}
#v-batters .rk-l{font-size:11.5px;font-weight:600}
#v-batters .rk-t{position:relative;height:8px;border-radius:5px;
 background:linear-gradient(90deg,hsl(348 60% 32% / .5),hsl(var(--h) 20% 15% / .8) 50%,hsl(160 55% 34% / .5));
 box-shadow:0 1px 3px hsl(var(--h) 45% 1% / .8) inset}
#v-batters .rk-t u{position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:hsl(var(--h) 40% 70% / .28)}
#v-batters .rk-t s{position:absolute;top:-3px;width:14px;height:14px;border-radius:50%;transform:translateX(-50%);
 background:radial-gradient(circle at 33% 26%,#fff 6%,hsl(var(--h) 45% 88%) 46%,hsl(var(--h) 60% 66%));
 box-shadow:0 0 0 2.5px hsl(var(--h) 26% 7%),0 1px 4px hsl(var(--h) 45% 1% / .9)}
#v-batters .rk-v{font-family:'DM Mono';font-size:11.5px;text-align:right}
#v-batters .rk-p{font-family:'DM Mono';font-size:10px;text-align:right;padding:2px 6px;border-radius:5px}
#v-batters .hi{background:hsl(160 60% 45% / .18);color:var(--pos)}
#v-batters .md{background:hsl(var(--h) 18% 22% / .8);color:var(--d1)}
#v-batters .lo{background:hsl(348 85% 62% / .16);color:var(--neg)}
#v-batters .h2r{display:grid;grid-template-columns:56px 1fr 62px 44px;gap:9px;align-items:center;padding:6px 0;
 border-top:1px solid hsl(var(--h) 20% 22% / .38);font-family:'DM Mono';font-size:10.5px}
#v-batters .h2r .ev{color:var(--d2);font-size:9.5px;text-align:right}
#v-batters .dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:6px}
#v-batters .empty{font-family:'DM Mono';font-size:10px;color:var(--d2);padding:16px 0;line-height:1.6}
#v-batters .sum{display:flex;gap:14px;font-family:'DM Mono';font-size:11px;color:var(--d1);margin-bottom:8px}
#v-batters .sum b{color:var(--tx);font-size:14px}
#v-batters .mt-r{display:flex;align-items:center;gap:5px;margin:8px 0 2px}
#v-batters .mt-r .pt-l{margin-right:4px}

#v-pitchers select{background:linear-gradient(168deg,hsl(var(--h) 22% 18% / .9),hsl(var(--h) 24% 10% / .9));border:1px solid var(--ln);color:var(--tx);border-radius:11px;padding:9px 13px;font-family:'Plus Jakarta Sans';font-size:12.5px;font-weight:600;min-width:196px;position:relative;z-index:2}
#v-pitchers optgroup{font-family:'DM Mono';font-size:10px;color:var(--d2)}

/* ---- spacing pass ---- */
#v-slate .pills{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px;overflow:visible;padding:0;margin-bottom:22px}
#v-slate .gp{min-width:0}
#v-slate .anh{margin:22px 0 12px}
#v-slate .grid{gap:16px;margin-bottom:22px}
#v-slate .two{gap:18px}
#v-slate table{table-layout:fixed;width:100%}
#v-slate th:nth-child(1),#v-slate td:nth-child(1){width:30px}
#v-slate th:nth-child(2){width:auto}
#v-slate th:nth-child(3),#v-slate td.sg{width:74px;text-align:center}
#v-slate th:nth-child(4),#v-slate td.sp{width:74px;text-align:center}
#v-slate th:nth-child(5),#v-slate td.eg{width:72px;text-align:right}
#v-slate th:nth-child(6),#v-slate td.pb{width:36%;min-width:200px}
#v-slate th:nth-child(7),#v-slate td.hn{width:84px}
#v-slate td{padding-top:13px;padding-bottom:13px;vertical-align:middle}
#v-slate .top{margin-bottom:20px}
#v-games .bar{margin-bottom:16px}
#v-pitchers .grid,#v-batters .grid{gap:16px;margin-top:16px}
@media(max-width:1100px){
  #v-slate .grid{grid-template-columns:1fr 1fr}
  #v-slate .two{grid-template-columns:1fr}
  #v-slate th:nth-child(6),#v-slate td.pb{width:32%}
}

#v-slate .grid[hidden]{display:none}
#v-slate .sortbar{display:flex;align-items:center;gap:6px;margin:4px 0 10px;font-family:'DM Mono';font-size:9px;color:var(--d2)}
#v-slate .sortbar button{font-family:'DM Mono';font-size:9.5px;padding:4px 10px;border-radius:7px;border:1px solid var(--ln);background:hsl(var(--h) 24% 10% / .6);color:var(--d1);cursor:pointer}
#v-slate .sortbar button.on{background:var(--ac);color:hsl(var(--h) 45% 8%);border-color:transparent;font-weight:600}
#v-slate .lbl{flex-wrap:wrap;gap:8px}

#v-slate .eye{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:6px 0 10px;padding:10px 12px;border-radius:11px;background:hsl(var(--h) 20% 12% / .55);border:1px solid var(--ln);font-family:'DM Mono';font-size:9.5px;color:var(--d2)}
#v-slate .eye-l{letter-spacing:.1em;text-transform:uppercase;font-size:8px}
#v-slate .eye input[type=range]{flex:1 1 160px;min-width:140px;accent-color:var(--ac)}
#v-slate .eye-v{color:var(--ac);font-size:13px;min-width:34px}
#v-slate .eye-n{color:var(--d1)}#v-slate .eye-n b{color:var(--tx)}
#v-slate .eye-acc{margin-left:auto}

/* edge number on the board: was gradient-clipped text, which ignored the per-edge colour */
#v-slate td.eg{background:none;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:currentColor;color:var(--d1);text-shadow:0 0 14px color-mix(in srgb,currentColor 45%,transparent)}

/* Option C: rail coloured by the starter's volatility tier, range is the bright segment */
#v-slate .rail.tier .fillbar{background:linear-gradient(90deg,color-mix(in srgb,var(--c) 30%,transparent),color-mix(in srgb,var(--c) 65%,transparent));box-shadow:0 0 12px color-mix(in srgb,var(--c) 30%,transparent)}
#v-slate .rail.tier .rngband{top:0;bottom:0;border:0;border-radius:6px;background:var(--c)!important;opacity:.9;box-shadow:0 0 10px color-mix(in srgb,var(--c) 60%,transparent)!important}
#v-slate .rail.tier s{background:radial-gradient(circle at 33% 26%,#fff 6%,#fff 46%,var(--c));box-shadow:0 0 0 3px hsl(var(--h) 26% 7%),0 2px 5px #000,0 0 16px color-mix(in srgb,var(--c) 70%,transparent)}
#v-slate .pb-top em.tier{color:var(--c);letter-spacing:.08em}
#v-slate .lg .vk{display:inline-block;width:14px;height:5px;border-radius:3px;margin:0 3px 0 6px;vertical-align:middle}

/* ---- batter attack log (last 20 PA) ---- */
#v-batters .al{margin-top:16px;padding-top:14px;border-top:1px solid var(--ln)}
#v-batters .al-top{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 12px}
#v-batters .al-kp{padding:9px 11px;border-radius:11px;background:hsl(var(--h) 20% 13% / .6);border:1px solid var(--ln)}
#v-batters .al-kp span{font-family:'DM Mono';font-size:7.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--d2);display:block}
#v-batters .al-kp b{font-family:'DM Mono';font-size:17px;display:block;margin-top:3px;color:var(--tx)}
#v-batters .al-kp em{font-style:normal;font-family:'DM Mono';font-size:8.5px;color:var(--d2);display:block;margin-top:2px}
#v-batters .al-mid{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:start}
#v-batters .al-plate{position:relative;width:140px;height:140px;margin-top:6px;border-radius:8px;background:hsl(var(--h) 26% 7% / .9);border:1px solid var(--ln)}
#v-batters .al-grid{position:absolute;left:28px;top:28px;width:84px;height:84px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
#v-batters .al-grid i{display:flex;align-items:center;justify-content:center;font-style:normal;font-family:'DM Mono';font-size:9px;color:var(--tx);border-radius:3px}
#v-batters .al-plate em{position:absolute;font-style:normal;font-family:'DM Mono';font-size:8.5px;color:var(--d1)}
#v-batters .al-plate .ctl{left:6px;top:5px}#v-batters .al-plate .ctr{right:6px;top:5px}
#v-batters .al-plate .cbl{left:6px;bottom:5px}#v-batters .al-plate .cbr{right:6px;bottom:5px}
#v-batters .al-mixrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
#v-batters .al-mix{font-family:'DM Mono';font-size:9.5px;padding:4px 8px;border-radius:6px;background:hsl(var(--h) 20% 13% / .6);border:1px solid var(--ln);color:var(--d1)}
#v-batters .al-mix b{color:var(--ac);margin-right:5px}
#v-batters .al-split{width:100%;border-collapse:collapse;margin-top:6px;font-family:'DM Mono';font-size:9.5px}
#v-batters .al-split th{font-size:7.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--d2);text-align:right;padding:2px 6px;font-weight:500}
#v-batters .al-split th:first-child{text-align:left}
#v-batters .al-split td{padding:4px 6px;text-align:right;color:var(--tx);border-top:1px solid hsl(var(--h) 30% 40% / .1)}
#v-batters .al-split td:first-child{text-align:left;color:var(--d1)}
#v-batters .al-strip{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
#v-batters .al-pa{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:30px;padding:4px 4px 3px;border-radius:6px;border:1px solid var(--ln);background:hsl(var(--h) 20% 13% / .5)}
#v-batters .al-pa b{font-family:'DM Mono';font-size:9px;color:var(--d1)}
#v-batters .al-pa.hit{border-color:hsl(160 70% 50% / .5);background:hsl(160 70% 45% / .14)}#v-batters .al-pa.hit b{color:var(--pos)}
#v-batters .al-pa.k{border-color:hsl(348 80% 60% / .5);background:hsl(348 80% 55% / .14)}#v-batters .al-pa.k b{color:var(--neg)}
#v-batters .al-pa.bb{border-color:hsl(42 90% 60% / .4);background:hsl(42 90% 55% / .1)}#v-batters .al-pa.bb b{color:var(--wrn)}
#v-batters .al-px{display:flex;gap:1px}
#v-batters .al-px u{text-decoration:none;font-family:'DM Mono';font-size:6.5px;line-height:1;padding:1px 2px;border-radius:2px;background:hsl(var(--h) 30% 40% / .25);color:var(--d1)}
#v-batters .al-pa em{font-style:normal;font-family:'DM Mono';font-size:6.5px;color:var(--d2)}
@media(max-width:900px){#v-batters .al-mid{grid-template-columns:1fr}#v-batters .al-top{grid-template-columns:repeat(2,1fr)}}

/* ---- Games: pill row replaces the <select> ---- */
#v-games .gpills{display:flex;flex-wrap:wrap;gap:6px;flex:1 1 100%;min-width:0;justify-content:center}
#v-games .gp{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:999px;border:1px solid var(--ln);background:hsl(var(--h) 20% 13% / .6);color:var(--d1);font-family:'DM Mono';font-size:10.5px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
#v-games .gp i{font-style:normal;color:var(--d2)}
#v-games .gp:hover{border-color:color-mix(in srgb,var(--ac) 45%,transparent);color:var(--tx)}
#v-games .gp.on{background:color-mix(in srgb,var(--ac) 22%,transparent);border-color:color-mix(in srgb,var(--ac) 60%,transparent);color:var(--tx)}
#v-games .gp.on b{color:var(--ac)}
/* ---- Eagle's Eye: two-ended band ---- */
#v-slate .eye .eye-to{font-family:'DM Mono';font-size:9px;color:var(--d2);letter-spacing:.1em;text-transform:uppercase}
#v-slate .eye input[type=range]{flex:1 1 120px;min-width:100px}
/* ---- Pitchers: hitters who live where he got hurt ---- */
#v-pitchers .hurt-match{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;margin:6px 0 10px}
#v-pitchers .hm{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;border-radius:9px;border:1px solid var(--ln);background:hsl(var(--h) 20% 13% / .6);text-decoration:none;color:var(--tx);font-size:11.5px;cursor:pointer;transition:border-color .15s}
#v-pitchers .hm:hover{border-color:color-mix(in srgb,var(--ac) 55%,transparent)}
#v-pitchers .hm b{font-family:'DM Mono';font-size:11px;color:var(--d1)}
#v-pitchers .hm.hot b{color:var(--neg)} #v-pitchers .hm.cold b{color:hsl(212 90% 62%)}
#v-pitchers .hm .hm-n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* ---- Batter attack log: stat cards keep equal height even when a sub-line is empty ---- */
#v-batters .al-kp{display:flex;flex-direction:column;justify-content:flex-start;min-height:64px}
#v-batters .al-kp em:empty{display:block;min-height:11px}

/* ---- Pitchers: League rank + Rolling window panes ---- */
#v-pitchers .rk{display:grid;grid-template-columns:150px 1fr 64px 40px;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid var(--ln)}
#v-pitchers .rk-l{font-size:11.5px;color:var(--tx)} #v-pitchers .rk-l i{display:block;font-style:normal;font-family:'DM Mono';font-size:8px;color:var(--d2);letter-spacing:.06em}
#v-pitchers .rk-t{position:relative;height:6px;border-radius:3px;background:linear-gradient(90deg,color-mix(in srgb,var(--neg) 35%,transparent),hsl(var(--h) 20% 22%) 50%,color-mix(in srgb,var(--pos) 35%,transparent))}
#v-pitchers .rk-t u{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:color-mix(in srgb,var(--ac) 35%,transparent)}
#v-pitchers .rk-t s{position:absolute;top:50%;width:11px;height:11px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 0 2px hsl(var(--h) 26% 7%)}
#v-pitchers .rk-v{font-family:'DM Mono';font-size:11px;text-align:right;color:var(--tx)} #v-pitchers .rk-p{font-family:'DM Mono';font-size:9.5px;font-style:normal;text-align:right}
#v-pitchers .rw{display:grid;grid-template-columns:110px repeat(4,1fr);gap:8px;padding:6px 0;border-bottom:1px solid var(--ln);font-family:'DM Mono';font-size:11px}
#v-pitchers .rw b{font-weight:500;text-align:right;color:var(--tx)} #v-pitchers .rw-l{color:var(--d1);font-family:inherit}
#v-pitchers .rw-h b{font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--d2)}
#v-pitchers .rw-wins{display:flex;flex-wrap:wrap;gap:6px} #v-pitchers .rw-wins span{display:grid;grid-template-columns:auto auto auto auto;gap:6px;align-items:baseline;padding:6px 9px;border-radius:8px;border:1px solid var(--ln);background:hsl(var(--h) 20% 13% / .6);font-family:'DM Mono';font-size:10px}
#v-pitchers .rw-wins i{font-style:normal;color:var(--d2)} #v-pitchers .rw-wins em{font-style:normal;color:var(--d2);font-size:9px}

/* ---- starter badge legend ---- */
#v-pitchers .blegend{margin:6px 0 0;font-family:'DM Mono';font-size:9.5px;color:var(--d2)}
#v-pitchers .blegend summary{cursor:pointer;letter-spacing:.1em;text-transform:uppercase;list-style:none;display:inline-block;padding:3px 8px;border-radius:6px;border:1px solid var(--ln)}
#v-pitchers .blegend summary::-webkit-details-marker{display:none}
#v-pitchers .blegend[open] summary{border-color:color-mix(in srgb,var(--ac) 45%,transparent);color:var(--tx)}
#v-pitchers .bl{display:grid;grid-template-columns:130px 1fr;gap:10px;align-items:start;padding:6px 0;border-bottom:1px solid var(--ln);color:var(--d1);font-size:10.5px;line-height:1.45}
#v-pitchers .bl .tg{justify-self:start}
#v-games .vs .fl{margin-left:4px;vertical-align:middle}


/* ---- Edge Hunters ---------------------------------------------------- */
.eh-wrap{max-width:1290px;margin:0 auto;padding:0}
/* header + panel adopt the shared design language used by #v-slate/#v-games/#v-pitchers */
#v-edge .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}
#v-edge h1{font-size:25px;font-weight:800;margin:0;letter-spacing:-.03em}
#v-edge .sub{font-family:'DM Mono';font-size:10.5px;color:var(--d2);margin-top:4px;letter-spacing:-.01em}
#v-edge .p{border-radius:18px;padding:6px 14px 10px;position:relative;isolation:isolate;
  background:linear-gradient(168deg,hsl(var(--h) 22% 15% / .66),hsl(var(--h) 24% 8% / .74));
  border:1px solid var(--ln);border-top-color:hsl(var(--h) 30% 42% / .55);
  backdrop-filter:blur(26px) saturate(1.35);
  box-shadow:0 1px 0 hsl(var(--h) 40% 70% / .09) inset,0 2px 4px hsl(var(--h) 40% 2% / .5),
    0 12px 26px -10px hsl(var(--h) 40% 2% / .55),0 34px 60px -28px hsl(var(--h) 40% 2% / .75)}
.eh-head{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}
.eh-head h2{font-size:15px;letter-spacing:.14em;margin:0}
.eh-sub{font-family:'DM Mono';font-size:9.5px;color:var(--d2)}
.eh-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:8px}
.eh-mkts,.eh-books{display:flex;gap:6px;flex-wrap:wrap}
.eh-mkt,.eh-bk,.eh-tag,.eh-retry{font-family:'DM Mono';font-size:9.5px;letter-spacing:.06em;
  padding:5px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--d2) 35%,transparent);
  color:var(--d1);cursor:pointer;user-select:none}
.eh-mkt.on,.eh-bk.on,.eh-tag.on{background:color-mix(in srgb,var(--pos) 16%,transparent);
  border-color:var(--pos);color:var(--pos)}
.eh-mkt.off{opacity:.35;cursor:default}
.eh-q{flex:1;min-width:180px;background:transparent;border:1px solid color-mix(in srgb,var(--d2) 35%,transparent);
  border-radius:8px;padding:6px 10px;color:var(--fg);font-family:'DM Mono';font-size:10px}
.eh-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}
.eh-grid{display:grid;grid-template-columns:minmax(220px,1.6fr) 60px 1fr 64px 64px 90px 84px;
  gap:8px;align-items:center;padding:9px 4px}
.eh-row{transition:background .12s}
.eh-row:hover{background:hsl(var(--h) 30% 50% / .05)}
.eh-hdr{font-family:'DM Mono';font-size:8.5px;letter-spacing:.1em;color:var(--d2);
  border-bottom:1px solid color-mix(in srgb,var(--d2) 25%,transparent)}
.eh-s{cursor:pointer}
.eh-row{border-bottom:1px solid color-mix(in srgb,var(--d2) 12%,transparent);font-size:11px}
.eh-nm b{display:block;font-size:12px}
.eh-nm i{font-style:normal;font-family:'DM Mono';font-size:9px;color:var(--d2)}
.eh-nm em{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px;font-style:normal}
.eh-t{font-family:'DM Mono';font-size:7.5px;letter-spacing:.06em;text-decoration:none;
  padding:2px 5px;border-radius:5px;border:1px solid color-mix(in srgb,var(--d2) 30%,transparent);color:var(--d1)}
.eh-t.pos{color:var(--pos);border-color:color-mix(in srgb,var(--pos) 45%,transparent)}
.eh-t.neg{color:var(--neg);border-color:color-mix(in srgb,var(--neg) 45%,transparent)}
.eh-t.w{color:var(--wrn);border-color:color-mix(in srgb,var(--wrn) 45%,transparent)}
.eh-side{font-family:'DM Mono';font-size:9.5px;letter-spacing:.08em}
.eh-side.ov{color:var(--pos)}.eh-side.un{color:#5eb8ff}
.eh-mb{font-family:'DM Mono';font-size:10px}
.eh-mb s{display:inline-block;width:14px;height:1px;background:var(--d2);vertical-align:middle;text-decoration:none;margin:0 4px}
.eh-px{font-family:'DM Mono';font-size:10.5px}
.eh-px i{font-style:normal;font-size:8px;color:var(--d2);margin-left:4px}
.eh-v{font-family:'DM Mono';font-size:9px;letter-spacing:.1em;text-align:center;
  padding:4px 0;border-radius:7px;border:1px solid transparent}
.eh-v.bet{color:var(--pos);border-color:color-mix(in srgb,var(--pos) 55%,transparent);
  background:color-mix(in srgb,var(--pos) 12%,transparent)}
.eh-v.lean{color:var(--wrn);border-color:color-mix(in srgb,var(--wrn) 45%,transparent)}
.eh-v.price{color:var(--neg);border-color:color-mix(in srgb,var(--neg) 40%,transparent)}
.eh-v.thin{color:var(--d2);border-color:color-mix(in srgb,var(--d2) 30%,transparent)}
.eh-foot{font-family:'DM Mono';font-size:8.5px;color:var(--d2);padding:12px 10px}
.eh-empty{font-family:'DM Mono';font-size:11px;color:var(--d1);text-align:center;padding:48px 0;line-height:2}
@media (max-width:760px){.eh-grid{grid-template-columns:minmax(150px,1.5fr) 44px 1fr 48px 48px 70px 64px;gap:5px}}


/* ---- Grading tab (v3.9.2): the tab shipped with zero scoped styles and
   rendered as raw text -- the four segment labels read as a sentence, so
   the Pitchers pane looked missing. Modeled on the pitchers-tab language. */
#v-grading{max-width:980px;margin:0 auto;padding:4px 2px 40px}
#v-grading .p{background:hsl(var(--h) 25% 9% / .72);border:1px solid var(--ln);border-radius:14px;
  padding:15px 17px;backdrop-filter:blur(14px)}
#v-grading .pt2{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:14px;letter-spacing:.04em;margin-bottom:3px}
#v-grading .pd{font-family:'DM Mono';font-size:10px;color:var(--d2);margin-bottom:9px}
#v-grading .stseg{display:flex;gap:4px;margin-top:10px;flex-wrap:wrap}
#v-grading .stseg span{font-family:'DM Mono';font-size:10.5px;letter-spacing:.05em;padding:6px 12px;
  border-radius:9px;border:1px solid var(--ln);color:var(--d1);cursor:pointer;user-select:none}
#v-grading .stseg span.on{background:var(--accent);color:#0b1020;border-color:transparent;font-weight:600}
#v-grading select{background:hsl(var(--h) 25% 11%);border:1px solid var(--ln);border-radius:10px;
  color:var(--tx);font-family:'DM Mono';font-size:11px;padding:9px 11px;width:100%}
#v-grading .sub2{font-family:'DM Mono';font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--d2);margin:13px 0 5px;padding-bottom:4px;border-bottom:1px solid var(--ln)}
#v-grading .cmp{display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  padding:5px 0;border-bottom:1px dashed hsl(var(--h) 20% 22% / .5);font-size:12px}
#v-grading .cmp:last-child{border-bottom:0}
#v-grading .cmp span{color:var(--d1);min-width:0}
#v-grading .cmp b{font-family:'DM Mono',monospace;font-size:12px;white-space:nowrap;text-align:right}
#v-grading .cmp em{font-style:normal;font-family:'DM Mono';font-size:9.5px}
#v-grading .note{font-family:'DM Mono';font-size:9.5px;color:var(--d2);line-height:1.55;
  margin-top:10px;padding-top:8px;border-top:1px solid var(--ln)}
#v-grading .empty2{font-family:'DM Mono';font-size:10.5px;color:var(--d2);padding:14px 4px}
#v-grading code{font-family:'DM Mono',monospace;font-size:10.5px;color:var(--tx)}


/* ---- v3.9.3 layout: public batter page + wide games canvas ---- */
#v-batters .tabs-center{justify-content:center;margin-top:14px}
#v-batters .al-first{margin-top:0;border-top:0;padding-top:0}
/* Games: break the two matchup columns out of the 1340px wrap -- centered
   by construction, stretched so the tables breathe on wide screens. */
#v-games .bar,#v-games .two{width:min(1760px,95vw);position:relative;left:50%;transform:translateX(-50%)}
#v-games .two{gap:18px}
@media(max-width:1100px){#v-games .bar,#v-games .two{width:100%;left:0;transform:none}}

/* --- Model 2.5 board (ui/v2.js) --- */
.v2-hd h2{margin:0 0 .2rem}
.v2-hd .small{font-size:.82rem;max-width:62ch}
.v2-ctl{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:.7rem 0}
.v2-ctl select,.v2-ctl input{padding:.35rem .5rem}
.v2-tbl th{cursor:pointer;white-space:nowrap}
.v2-tbl td,.v2-tbl th{padding:.3rem .45rem}
.v2-tbl .ta-r{text-align:right}
.v2-g{color:#e6b422;font-weight:600}
.v2-h{color:#e07a3c}
.v2-c{color:#6aa8d8}
.v2-pos{color:#3fb950}
.v2-neg{color:#fa5b5b}

/* --- Model 2.5 accuracy panel --- */
.v2-acc{margin:.9rem 0 1.1rem;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:.7rem .85rem}
.v2-acc-hd{display:flex;gap:.7rem;align-items:baseline;flex-wrap:wrap}
.v2-acc-hd b{letter-spacing:.06em;font-size:.82rem}
.v2-toggle{margin-left:auto;cursor:pointer;font-size:.8rem;opacity:.75}
.v2-acc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.7rem;margin-top:.7rem}
.v2-card{border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:.6rem .7rem}
.v2-card h4{margin:0 0 .25rem;font-size:.8rem;letter-spacing:.04em;opacity:.85}
.v2-big{font-size:1.9rem;font-weight:600;margin:.1rem 0}
.v2-mini{width:100%;border-collapse:collapse;font-size:.8rem;margin-top:.35rem}
.v2-mini td{padding:.14rem .25rem}
.v2-bar{display:block;height:6px;background:rgba(255,255,255,.08);border-radius:3px;min-width:56px}
.v2-bar i{display:block;height:100%;background:#4aa3d8;border-radius:3px}
.v2-note{margin:.6rem 0 0;max-width:70ch}

/* --- BG Scoring tab (ui/bg.js) --- */
#v-bg{width:min(1400px,94vw);margin:0 auto;padding-top:6px}
#v-bg .tbl{width:100%;border-collapse:collapse;font-family:'DM Mono';font-size:11.5px}
#v-bg .tbl thead th{color:var(--d2);font-weight:600;letter-spacing:.04em;border-bottom:1px solid var(--ln);text-align:left}
#v-bg .tbl tbody td{border-bottom:1px solid hsl(var(--h) 20% 16% / .5);color:var(--tx)}
#v-bg .tbl a{color:var(--tx);text-decoration:none}
#v-bg .tbl a:hover{color:var(--ac);text-decoration:underline}
#v-bg .muted{color:var(--d2)}
#v-bg .small{font-size:.82rem;line-height:1.5}
#v-bg .v2-hd h2{font-size:15px;letter-spacing:.02em}
#v-bg .bg-row{cursor:pointer}
#v-bg .bg-row:hover{background:hsl(var(--h) 22% 14% / .5)}
#v-bg .bg-row.on{background:color-mix(in srgb,var(--ac) 12%,transparent);box-shadow:inset 2px 0 0 var(--ac)}
#v-bg .bg-live{font-family:'DM Mono';font-size:8px;letter-spacing:.06em;color:var(--wrn);border:1px solid color-mix(in srgb,var(--wrn) 45%,transparent);border-radius:4px;padding:0 3px}
#v-bg .bg-flag{color:var(--wrn)}
#v-bg .bg-ctl{align-items:center}
#v-bg .bg-games{display:flex;flex-wrap:wrap;gap:5px;flex:1 1 auto}
#v-bg .bg-gp{font-family:'DM Mono';font-size:9.5px;letter-spacing:.04em;padding:5px 9px;border-radius:8px;color:var(--d1);background:hsl(var(--h) 24% 10% / .55);border:1px solid var(--ln);cursor:pointer}
#v-bg .bg-gp i{color:var(--d2);font-style:normal;margin:0 3px}
#v-bg .bg-gp:hover{border-color:color-mix(in srgb,var(--ac) 40%,transparent)}
#v-bg .bg-gp.on{background:var(--ac);color:hsl(var(--h) 45% 8%);border-color:var(--ac);font-weight:600}
#v-bg .bg-gp.on i{color:hsl(var(--h) 45% 8%)}
#v-bg #bg-q{font-family:'DM Mono';font-size:10px;padding:6px 10px;border-radius:7px;color:var(--tx);background:hsl(var(--h) 24% 10% / .85);border:1px solid var(--ln);outline:none;min-width:160px}

/* B — the zone graphic */
#v-bg .bg-zwrap{border:1px solid var(--ln);border-radius:12px;padding:14px 16px;margin:4px 0 14px;background:hsl(var(--h) 24% 10% / .45)}
#v-bg .bg-zhd{font-family:'DM Mono';font-size:12px;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}
#v-bg .bg-ztoggle{display:flex;gap:2px;padding:2px;border-radius:8px;background:hsl(var(--h) 24% 10% / .85);border:1px solid var(--ln)}
#v-bg .bg-zmode{font-family:'DM Mono';font-size:9px;letter-spacing:.04em;padding:4px 9px;border-radius:6px;color:var(--d1);background:none;border:0;cursor:pointer}
#v-bg .bg-zmode.on{background:var(--ac);color:hsl(var(--h) 45% 8%);font-weight:600}
#v-bg .bg-zgrid{display:grid;grid-template-columns:repeat(3,54px);grid-template-rows:repeat(3,42px);gap:3px;width:max-content}
#v-bg .bg-zc{position:relative;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid transparent;font-family:'DM Mono'}
#v-bg .bg-zc b{font-size:10.5px;color:var(--tx)}
#v-bg .bg-zc.hurt{border-color:color-mix(in srgb,var(--neg) 55%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--neg) 30%,transparent) inset}
#v-bg .bg-mk{position:absolute;top:2px;right:4px;font-size:8px;font-style:normal;line-height:1}
#v-bg .bg-mk.gold{color:#e6b422}
#v-bg .bg-mk.hot{color:#e07a3c}
#v-bg .bg-mk.cold{color:#6aa8d8}
#v-bg .bg-zlg{display:flex;flex-wrap:wrap;gap:14px;margin-top:11px;font-family:'DM Mono';font-size:9.5px;color:var(--d1)}
#v-bg .bg-zlg .bg-mk{position:static}
#v-bg .bg-ring{display:inline-block;width:9px;height:9px;border-radius:2px;border:1px solid color-mix(in srgb,var(--neg) 55%,transparent);vertical-align:middle}

/* --- Model source swap (app.js applyV2) --- */
#v2mode{display:flex;gap:.4rem;align-items:center}
#v2src.is-on{background:var(--acc,#4aa3d8);color:#04121c;font-weight:600}
body.v2-source .bar{box-shadow:inset 0 -2px 0 var(--acc,#4aa3d8)}
body.v2-source #freshness::after{content:" · MODEL 2.5";opacity:.85;letter-spacing:.06em}

/* clean-tree shell: future tabs visible but inert until they port */
.nav a.off{opacity:.35;pointer-events:none;cursor:default}

/* ---- conviction badges (icon tripwires — route attention, touch no number) ---- */
.cv{display:inline-flex;align-items:center;gap:2px;vertical-align:middle;margin-left:6px;opacity:.92}
.cv svg{display:block}
.cv i{font-style:normal;font-family:"DM Mono",monospace;font-size:9px;line-height:1;opacity:.85}
.cv-gold{color:var(--wrn, #e8c35a)}                 /* gold channel — solid earned, hollow unproven */
.cv-cold{color:var(--d1, #5b8fd6)}                  /* matchup drag */
.cv-form-up{color:var(--pos, #57d0a4)}              /* form carrier, hot */
.cv-form-dn{color:var(--neg, #e06c75)}              /* form carrier, cold */
.cv-id{color:var(--tx, #9fb0bd);opacity:.55}        /* identity: quiet on purpose */
.cv-flag{color:var(--ac, #7ab8ff);opacity:.8}       /* contested — the head's future signal */

/* ---- badge redesign: icon-first, unified with conviction glyphs ---- */
.bdg{display:inline-flex;align-items:center;gap:3px;position:relative;margin-left:5px;vertical-align:middle;cursor:default;opacity:.9}
.bdg svg{width:14px;height:14px;display:block;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.bdg-pos{color:var(--pos,#57d0a4)} .bdg-neg{color:var(--neg,#e06c75)} .bdg-warn{color:var(--wrn,#e8c35a)}
.bdg-n{font-style:normal;font-family:"DM Mono",monospace;font-size:9px;line-height:1;opacity:.85}
.bdg-l{font-size:10px;letter-spacing:.02em;opacity:.8}                /* label mode still available on demand */
.bdg .bdg-tip{display:none;position:absolute;bottom:130%;left:50%;transform:translateX(-50%);z-index:40;
  width:230px;background:#0f1721;border:1px solid #223244;border-radius:8px;padding:9px 11px;
  font-size:11px;line-height:1.45;color:var(--tx,#cfdae4);box-shadow:0 8px 24px rgba(0,0,0,.45)}
.bdg .bdg-tip b{display:block;font-size:11px;margin-bottom:1px}
.bdg .bdg-tip i{display:block;font-style:normal;opacity:.65;margin-bottom:5px}
.bdg:hover .bdg-tip,.bdg:focus .bdg-tip{display:block}

/* glossary additions */
.gloss-cv{border:1px solid #223244;border-radius:10px;padding:12px 14px;margin-bottom:14px}
.gloss-note{font-size:11px;opacity:.6;margin:2px 0 10px;line-height:1.5}
.gloss-row{display:grid;grid-template-columns:22px 130px 1fr;gap:8px;align-items:center;padding:4px 0;font-size:12px}
.gloss-row b{font-weight:600}
.gloss-row span:last-child{opacity:.7}

/* tabs being rebuilt on V2.5 — visible, dimmed, honest */
.nav a.porting{opacity:.4}
.nav a.porting::after{content:" ·rebuilding";font-size:9px;opacity:.7}

.rebuild-note{padding:40px;text-align:center;opacity:.7}
.rebuild-note h2{margin-bottom:8px}
.rebuild-note p{max-width:440px;margin:0 auto;font-size:13px;line-height:1.5}
