
:root{--ink:#1e2a3a;--mut:#5a6b80;--soft:#8195ab;--saffron:#ea580c;--saffron-soft:rgba(240,160,90,.16);
--navy:#4A6FA5;--hit:#16a34a;--partial:#ca8a04;--miss:#dc2626;--live:#0284c7;
--glass:linear-gradient(rgba(255,255,255,.66),rgba(255,255,255,.44));
--glass-strong:linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.62));
--gline:rgba(255,255,255,.75);--edge:rgba(30,42,58,.08);
--r:1.25rem;--sh:0 8px 22px rgba(30,42,58,.09);--shh:0 14px 34px rgba(30,42,58,.14)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{color:var(--ink);font:15.5px/1.65 Poppins,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
-webkit-font-smoothing:antialiased;background:#f6f8fb;position:relative}
body::before{content:'';position:fixed;inset:0;z-index:-1;background:
radial-gradient(580px circle at 18% 12%,rgba(74,111,165,.20),transparent 62%),
radial-gradient(560px circle at 82% 18%,rgba(240,160,90,.22),transparent 60%),
radial-gradient(640px circle at 78% 82%,rgba(123,104,238,.12),transparent 60%),
radial-gradient(520px circle at 22% 78%,rgba(74,165,140,.12),transparent 60%)}
a{color:var(--saffron);text-decoration:none}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
.topbar{height:5px;background:linear-gradient(90deg,#ea580c,#f5b942,#ea580c)}

.glass{background:var(--glass);-webkit-backdrop-filter:blur(18px) saturate(1.8);backdrop-filter:blur(18px) saturate(1.8);
border:1px solid var(--gline);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),var(--sh)}

/* hero */
header{padding:60px 0 26px;text-align:center}
.eyebrow{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--saffron);
background:var(--saffron-soft);border:1px solid rgba(234,88,12,.25);border-radius:2rem;padding:8px 18px;
margin-bottom:22px;text-transform:uppercase}
header h1{font-size:clamp(30px,5.2vw,54px);font-weight:700;letter-spacing:-1.2px;line-height:1.14;color:var(--ink)}
header h1 em{font-style:normal;color:var(--saffron)}
header .tag{color:var(--mut);margin:16px auto 0;font-size:clamp(14px,2.4vw,17px);max-width:640px}
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:40px 0 12px}
@media(max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}.stats .stat:first-child{grid-column:1/-1}}
.stat{border-radius:var(--r);padding:22px 10px;text-align:center}
.stat b{display:block;font-size:clamp(26px,3.6vw,38px);font-weight:700;letter-spacing:-1px;color:var(--ink)}
.stat span{color:var(--soft);font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.stat.hit b{color:var(--hit)}.stat.rate b{color:var(--saffron)}.stat.lead b{color:var(--navy)}.stat.live b{color:var(--live)}
.trustline{color:var(--mut);font-size:13.5px;margin:14px auto 0;max-width:730px}
.trustline b{color:var(--ink)}

/* live line + signature marquee */
.liveline{margin:20px auto 0;color:var(--mut);font-size:14px;min-height:22px}
.liveline #lv{color:var(--live);font-weight:600;transition:opacity .45s}
.mq{overflow:hidden;margin:30px 0 6px;
-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.mqtrack{display:flex;width:max-content;animation:mqmove 110s linear infinite}
.mq:hover .mqtrack{animation-play-state:paused}
@keyframes mqmove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.fcardx{border-radius:var(--r);padding:18px 20px;width:272px;flex:none;margin-right:14px;text-align:left;
transition:transform .2s,box-shadow .2s}
.fcardx:hover{transform:translateY(-3px);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),var(--shh)}
.fcardx .flabel{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--saffron);text-transform:uppercase}
.fcardx h3{font-size:14px;line-height:1.45;margin:10px 0 12px;font-weight:600;
display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fcardx h3 a{color:var(--ink)}
.fcardx .fmeta{font-size:12px;color:var(--mut)}
.fcardx .fmeta b{color:var(--saffron)}
@media(prefers-reduced-motion:reduce){.mqtrack{animation:none}}

/* category strength */
.cats{border-radius:var(--r);padding:22px 24px;display:flex;flex-direction:column;gap:12px}
.catrow{display:grid;grid-template-columns:220px 1fr 110px;gap:14px;align-items:center;font-size:13px}
@media(max-width:640px){.catrow{grid-template-columns:1fr;gap:4px}}
.cname{color:var(--ink);font-weight:600}
.cbar{height:10px;border-radius:999px;background:rgba(30,42,58,.08);overflow:hidden}
.cfill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--saffron),var(--hit))}
.cnum{color:var(--mut);font-size:12px;text-align:right;white-space:nowrap}

/* filter bar */
.fbar{position:sticky;top:0;z-index:20;background:linear-gradient(rgba(255,255,255,.62),rgba(255,255,255,.45));
-webkit-backdrop-filter:blur(18px) saturate(1.8);backdrop-filter:blur(18px) saturate(1.8);
border-bottom:1px solid rgba(255,255,255,.75);box-shadow:0 4px 18px rgba(30,42,58,.06);padding:12px 0;margin-top:28px}
.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.fbtn{background:rgba(255,255,255,.65);border:1px solid var(--edge);color:var(--ink);border-radius:2rem;
padding:8px 16px;cursor:pointer;font-size:13px;font-weight:600;font-family:Poppins,sans-serif;transition:.2s}
.fbtn:hover{border-color:var(--saffron);color:var(--saffron)}
.fbtn.on{background:var(--ink);color:#fff;border-color:var(--ink)}
select,input[type=search]{background:rgba(255,255,255,.72);border:1px solid var(--edge);color:var(--ink);
border-radius:.75rem;padding:9px 12px;font-size:13px;font-family:Poppins,sans-serif}
input[type=search]{flex:1;min-width:150px}
select:focus,input:focus{outline:none;border-color:var(--saffron);box-shadow:0 0 0 3px rgba(234,88,12,.12)}

/* predictions table */
.badge{font-size:10.5px;font-weight:700;letter-spacing:.07em;padding:5px 12px;border-radius:2rem;color:#fff;white-space:nowrap}
.b-hit{background:var(--hit)}.b-partial{background:var(--partial)}.b-miss{background:var(--miss)}.b-active{background:var(--live)}
.leadchip{color:var(--saffron);font-size:11.5px;font-weight:700;white-space:nowrap;
background:var(--saffron-soft);border:1px solid rgba(234,88,12,.25);border-radius:2rem;padding:4px 11px}
.tblwrap{border-radius:var(--r);margin:24px 0 46px;overflow:hidden}
.tblscroll{overflow-x:auto}
table.ptable{width:100%;border-collapse:collapse;font-size:13.5px;min-width:1020px}
.ptable thead th{position:sticky;top:0;background:rgba(255,255,255,.92);text-align:left;
font-size:10.5px;text-transform:uppercase;letter-spacing:.09em;color:var(--soft);font-weight:700;
padding:13px 14px;border-bottom:1px solid var(--edge);cursor:pointer;user-select:none;white-space:nowrap}
.ptable thead th:hover{color:var(--saffron)}
.ptable thead th .arr{font-size:9px;margin-left:4px}
.ptable tbody tr{border-bottom:1px solid rgba(30,42,58,.06);transition:background .15s}
.ptable tbody tr:hover{background:rgba(240,160,90,.10)}
.ptable td{padding:12px 14px;vertical-align:top;color:var(--mut)}
.ptable td.num{color:var(--soft);font-size:12px;white-space:nowrap}
.ptable td.pred{min-width:280px;color:var(--ink);font-weight:600;line-height:1.5}
.ptable td.cat{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em}
.ptable td.date{font-size:12.5px;max-width:180px;line-height:1.45}
.ptable td.date.pred-d{color:var(--saffron);font-weight:600}
.ptable td.lead{white-space:nowrap;color:var(--saffron);font-weight:700;font-size:12.5px}
.ptable td.src{font-size:12.5px;max-width:180px;line-height:1.45}
.ptable td.src a{color:var(--navy);font-weight:700}
.ptable td.src a:hover{color:var(--saffron)}

/* sections */
section.block{margin:52px 0}
section.block h2{font-size:25px;font-weight:700;letter-spacing:-.5px;margin-bottom:16px;color:var(--ink)}
section.block h2 span{color:var(--saffron)}
.method{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.method .m{border-radius:var(--r);padding:18px;font-size:13.5px;color:var(--mut)}
.method .m b{color:var(--ink);display:block;margin-bottom:6px}
.note{border-radius:var(--r);border-left:4px solid var(--saffron);padding:16px 20px;color:var(--mut);font-size:13.8px;margin:20px 0}
.note b{color:var(--ink)}
footer{border-top:1px solid var(--edge);padding:32px 0 46px;color:var(--soft);font-size:12.5px;text-align:center}
footer .credit{color:var(--ink);font-weight:600;font-size:14px}
.hidden{display:none}

/* permalink */
.pwrap{max-width:780px;margin:0 auto;padding:20px 22px 40px}
.back{color:var(--mut);font-size:13.5px}
.pcard{border-radius:1.5rem;padding:30px;margin:22px 0}
.pcard h1{font-size:clamp(20px,3.6vw,28px);line-height:1.38;margin:16px 0 20px;letter-spacing:-.4px;font-weight:700}
.ptl{border-left:2px solid var(--edge);padding-left:18px;margin:18px 4px;display:flex;flex-direction:column;gap:12px}
.ptl .trow{font-size:14.5px;color:var(--mut);position:relative}.ptl .trow b{color:var(--ink)}
.ptl .trow::before{content:'';position:absolute;left:-23.5px;top:8px;width:9px;height:9px;border-radius:50%;
background:var(--soft);box-shadow:0 0 0 3px #fff}
.ptl .trow.pred::before{background:var(--saffron)}
.ptl .trow.out.hit::before{background:var(--hit)}.ptl .trow.out.partial::before{background:var(--partial)}
.ptl .trow.out.miss::before{background:var(--miss)}.ptl .trow.out.active::before{background:var(--live)}
.evi{border-radius:var(--r);padding:20px;margin:20px 0;background:linear-gradient(rgba(255,255,255,.8),rgba(255,255,255,.6));
border:1px solid var(--gline);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 4px 14px rgba(30,42,58,.06)}
.evi h4{font-size:12.5px;letter-spacing:.08em;color:var(--saffron);text-transform:uppercase;margin-bottom:12px;font-weight:700}
.quote{border-left:3px solid rgba(234,88,12,.4);padding:4px 0 4px 14px;color:var(--mut);font-size:13.8px;white-space:pre-wrap;margin-bottom:14px}
.ebtns{display:flex;flex-wrap:wrap;gap:10px}
.ebtn{display:inline-block;border-radius:.75rem;padding:10px 16px;font-size:13px;font-weight:600;
border:1px solid var(--edge);color:var(--ink);background:rgba(255,255,255,.7);transition:.2s}
.ebtn.primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.ebtn:hover{border-color:var(--saffron);transform:translateY(-1px)}
.eshot{width:100%;border-radius:.75rem;border:1px solid var(--edge);margin:12px 0;box-shadow:var(--sh)}
.evinote{font-size:12px;color:var(--soft);margin-top:10px}
.sharerow{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.pnav{display:flex;justify-content:space-between;gap:12px;margin:26px 0;font-size:13px}
.pnav a{color:var(--mut)}.pnav a:hover{color:var(--saffron)}
.prow{color:var(--mut);font-size:13.5px}
