/* Husker Film Room — original design. Scarlet #E41C38, cream #FDF2D9. */
@font-face{font-family:"Alfa Slab";src:url(/assets/fonts/alfa-slab.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Graduate";src:url(/assets/fonts/graduate.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url(/assets/fonts/bc-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Inter";src:url(/assets/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--scarlet:#E41C38;--scarlet-d:#B5122A;--cream:#FDF2D9;--slab:"Alfa Slab",Rockwell,"Roboto Slab",Georgia,serif;--varsity:"Graduate","Alfa Slab",Georgia,serif;--cond:"Barlow Condensed","Arial Narrow",sans-serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--r:14px;--wrap:1180px;--ease:cubic-bezier(.2,.8,.2,1)}
.theme-day{--bg:#FDF2D9;--bg2:#F7E7C4;--ink:#1A1310;--muted:#5d5047;--card:#FFF9EC;--line:rgba(26,19,16,.14);--turf-a:#2B0A10;--turf-b:#320C13;--fline:#FDF2D9;--glow:rgba(228,28,56,.0)}
.theme-blackout{--bg:#0A0A0C;--bg2:#121114;--ink:#FDF2D9;--muted:#b9ad98;--card:#151318;--line:rgba(253,242,217,.12);--turf-a:#1a0a0e;--turf-b:#200c11;--fline:#FDF2D9;--glow:rgba(228,28,56,.45)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}
.skip{position:absolute;left:-999px;top:0;background:var(--scarlet);color:#fff;padding:8px 12px;z-index:50}.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--scarlet);outline-offset:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
/* top bar */
.topbar{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.topbar-in{display:flex;align-items:center;justify-content:space-between;height:60px;gap:12px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand-mark{width:30px;height:30px}
.brand-word{font:400 19px/1 var(--varsity);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.brand-word b{color:var(--scarlet);font-weight:400}
.nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.nav a{font:700 15px/1 var(--cond);text-transform:uppercase;letter-spacing:.08em;text-decoration:none;padding:10px 10px;border-radius:8px;white-space:nowrap;color:var(--muted)}
.nav a:hover,.nav a[aria-current]{color:var(--ink);background:var(--line)}
.nav a[aria-current]{box-shadow:inset 0 -3px 0 var(--scarlet)}
@media (max-width:560px){.brand-word{font-size:15px}.nav a{padding:8px 6px;font-size:13px}.nav a:first-child{display:none}}
/* hero */
.hero{position:relative;overflow:hidden;padding:56px 0 44px;border-bottom:1px solid var(--line)}
.hero-glow{position:absolute;inset:-30% -10% auto -10%;height:120%;background:radial-gradient(60% 55% at 70% 30%,var(--glow),transparent 70%),radial-gradient(40% 40% at 10% 0%,rgba(228,28,56,.18),transparent 70%);pointer-events:none}
.theme-day .hero{background:linear-gradient(180deg,#FBE7BE,var(--bg))}
.hero .wrap{position:relative}
.kicker{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.pill{font:700 13px/1 var(--cond);text-transform:uppercase;letter-spacing:.14em;padding:7px 10px;border-radius:999px;border:1.5px solid var(--line);color:var(--ink)}
.pill-theme{background:var(--scarlet);border-color:var(--scarlet);color:#fff;box-shadow:0 0 24px var(--glow)}
.matchup{margin:0;font:400 clamp(40px,8.4vw,96px)/.92 var(--varsity);text-transform:uppercase;letter-spacing:-.01em;display:flex;flex-wrap:wrap;align-items:baseline;gap:.08em .28em}
.matchup .at{font:400 .38em/1 var(--slab);color:var(--scarlet);text-transform:lowercase}
.matchup .team-home{color:var(--scarlet);text-shadow:0 0 34px var(--glow)}
.gameline{font:700 clamp(15px,2.2vw,19px)/1.3 var(--cond);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:16px 0 10px}
.records{display:flex;gap:18px;flex-wrap:wrap;align-items:center;font:700 18px/1 var(--cond);text-transform:uppercase;letter-spacing:.06em}
.records b{color:var(--scarlet)}.records span{color:var(--muted);font-weight:700}
.bottomline{margin-top:26px;max-width:860px;border-left:5px solid var(--scarlet);padding:4px 0 4px 18px}
.bottomline p{margin:0;font-size:clamp(16px,2vw,19px)}
.label,.ctl-l,.call-tag,.card-k{font:700 13px/1 var(--cond);text-transform:uppercase;letter-spacing:.16em;color:var(--scarlet);margin:0 0 8px}
.hero-cta{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 0}
.btn{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border-radius:10px;font:700 16px/1 var(--cond);text-transform:uppercase;letter-spacing:.1em;text-decoration:none;transition:transform .2s var(--ease),box-shadow .2s,background .2s}
.btn-primary{background:var(--scarlet);color:#fff;box-shadow:0 8px 28px rgba(228,28,56,.35)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(228,28,56,.5)}
.btn-ghost{border:2px solid var(--ink);color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--bg)}
.lede{font-size:clamp(16px,1.8vw,18px);max-width:620px;color:var(--ink);opacity:.92}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr;gap:28px}.hero{padding:34px 0 30px}}
/* teaser */
.teaser{display:block;text-decoration:none;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 30px 80px -30px var(--glow),0 20px 50px -30px rgba(0,0,0,.5);transition:transform .35s var(--ease),box-shadow .35s}
.teaser:hover{transform:translateY(-4px) rotate(-.3deg);box-shadow:0 40px 90px -30px rgba(228,28,56,.6)}
.teaser-top{display:flex;justify-content:space-between;gap:8px;font:700 14px/1.2 var(--cond);text-transform:uppercase;letter-spacing:.1em;margin:2px 4px 10px}
.teaser-go{color:var(--scarlet);white-space:nowrap}
.teaser-key{list-style:none;padding:0;margin:12px 4px 4px;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px 12px;font:700 14px/1.2 var(--cond);text-transform:uppercase;letter-spacing:.04em}
.teaser-key li{display:flex;align-items:center;gap:6px}.teaser-key b{margin-left:auto;color:var(--scarlet)}
.sw{width:14px;height:14px;border-radius:3px;background:color-mix(in srgb,var(--scarlet) calc(var(--heat)*85% + 10%),#2a0d12)}
.teaser-src{font-size:12px;color:var(--muted);margin:8px 4px 0}
/* field: broadcast-style grass */
.field{display:block;width:100%;height:auto;border-radius:10px;overflow:hidden;background:#2f6f2c}
.grain,.light,.chalk,.tick,.fnum,.farrow,.boundary,.post,.ez,.ez-word,.overlay{pointer-events:none}
.ez{fill:var(--scarlet)}
.ez-word{font:400 60px/1 var(--varsity);fill:#fff;text-anchor:middle;dominant-baseline:central;letter-spacing:.14em;paint-order:stroke;stroke:#8f0f22;stroke-width:6px}
.chalk{stroke:#fff;stroke-width:3.2;stroke-opacity:.93;fill:none}.chalk.gl{stroke-width:5}
.tick{stroke:#fff;stroke-width:2.4;stroke-opacity:.9}
.fnum{font:400 46px/1 var(--varsity);fill:#fff;fill-opacity:.94;text-anchor:middle;letter-spacing:.06em}
.farrow{fill:#fff;fill-opacity:.94}
.boundary{fill:none;stroke:#fff;stroke-width:9}
.post path{stroke:#F6CF1F;stroke-width:6;stroke-linecap:round;fill:none}.post .post-stem{stroke-width:7}.post circle{fill:#F6CF1F}
.zone{fill:transparent;transition:fill .3s var(--ease)}
.zone-heat{fill:rgba(228,28,56,calc(var(--heat)*.5 + .03))}
.field-lg .zone{cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent}
.field-lg .zone:hover{fill:rgba(253,242,217,.16)}
.field-lg .zone:focus-visible{fill:rgba(253,242,217,.22)}
.field-lg .zone.sel{fill:rgba(255,236,190,.20);stroke:#FDF2D9;stroke-width:4;stroke-opacity:.85}
.field-lg .zone.dim{fill:rgba(0,0,0,.30)}
.field-teaser .ez-word,.field-card .ez-word{font-size:54px}
.field-card .fnum,.field-card .farrow{display:none}
/* overlays: TV style */
.los{stroke:#2F7BFF;stroke-width:6}.los-glow{stroke:#2F7BFF;stroke-opacity:.35;stroke-width:18}
.ltg{stroke:#FFD21F;stroke-width:6}.ltg-glow{stroke:#FFD21F;stroke-opacity:.3;stroke-width:16}
.dot{fill:var(--scarlet);fill-opacity:.88;stroke:#fff;stroke-width:3}
.dot-ring{fill:none;stroke:#fff;stroke-opacity:.5;stroke-width:2;stroke-dasharray:4 5}
.tagbg{fill:#0b0b0d;fill-opacity:.82;stroke:rgba(255,255,255,.18);stroke-width:1.5}
.tag-t{font:700 22px/1 var(--cond);fill:#fff;text-anchor:middle;dominant-baseline:central;letter-spacing:.04em}
.tag-t.hi{fill:#FFD21F}
.runarrow{fill:none;stroke:#fff;stroke-linecap:round;opacity:.95}
.runarrow-sh{fill:none;stroke:#000;stroke-opacity:.35;stroke-linecap:round}
.runhead{fill:#fff}
.ol{fill:#fff;stroke:#0b0b0d;stroke-width:3}
.bk{fill:var(--scarlet);stroke:#fff;stroke-width:3.5}
.pl-t{font:700 19px/1 var(--cond);fill:#0b0b0d;text-anchor:middle;dominant-baseline:central;pointer-events:none}
.bk-t{fill:#fff}
.form-cap{font:700 26px/1 var(--cond);fill:#fff;letter-spacing:.08em;paint-order:stroke;stroke:#000;stroke-width:6px;stroke-opacity:.55}
.zcount{font:700 26px/1 var(--cond);fill:#fff;text-anchor:middle;dominant-baseline:central}
.zcount-bg{fill:#0b0b0d;fill-opacity:.7}
.zcount-bg.on{fill:var(--scarlet);fill-opacity:1}
.draw{animation:draw .6s var(--ease) both}@keyframes draw{from{opacity:0}to{opacity:1}}
.pop{transform-box:fill-box;transform-origin:center;animation:pop .45s var(--ease) both}@keyframes pop{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}
.rd-path{fill:none;stroke:#fff;stroke-linecap:round;opacity:.9}.rd-head{fill:var(--cream)}
.rd-0 .rd-path,.rd-0 .rd-head,.rd-1 .rd-path,.rd-1 .rd-head{stroke:var(--scarlet);fill:var(--scarlet)}.rd-0 .rd-path,.rd-1 .rd-path{fill:none}
.rd-v{font:400 34px/1 var(--slab);fill:var(--cream)}.rd-l{font:700 22px/1 var(--cond);fill:var(--cream);fill-opacity:.8;letter-spacing:.04em}
.fg-band{fill:rgba(228,28,56,calc(var(--p)*.8 + .2));stroke:#fff;stroke-width:3}.fg-none{fill:rgba(0,0,0,.35);stroke:#fff;stroke-opacity:.7;stroke-dasharray:8 6;stroke-width:2}
.fg-t{font:400 30px/1 var(--slab);fill:#fff;text-anchor:middle}.fg-t.dim{font:700 20px/1 var(--cond);fill-opacity:.6}.fg-s{font:700 18px/1 var(--cond);fill:var(--cream);text-anchor:middle;fill-opacity:.85}
.fg-name{font:700 28px/1 var(--cond);fill:var(--cream);text-transform:uppercase;letter-spacing:.08em}
.uprights{stroke:#F7C948;stroke-width:8;stroke-linecap:round}
/* sections */
.band{padding:56px 0;border-bottom:1px solid var(--line)}
@media (max-width:700px){.band{padding:40px 0}}
.dark-band{background:var(--bg2)}
.sec-head{margin-bottom:22px}
.sec-title{margin:0 0 10px;font:400 clamp(28px,4.4vw,46px)/1 var(--slab);text-transform:uppercase;letter-spacing:.005em;display:flex;align-items:center;gap:14px}
.sec-title::before{content:"";width:12px;height:.9em;background:var(--scarlet);border-radius:2px;box-shadow:0 0 18px var(--glow);flex:none}
.sec-sub{margin:0;color:var(--muted);max-width:760px;font-size:16.5px}
.h3{font:700 22px/1.1 var(--cond);text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px}
.mt{margin-top:36px}
.page-title{font:400 clamp(40px,7vw,80px)/.95 var(--varsity);text-transform:uppercase;margin:0 0 12px}
.page-head{background:linear-gradient(180deg,#FBE7BE,var(--bg))}
.two{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
.two-wide{grid-template-columns:1.35fr 1fr;margin-top:30px}
@media (max-width:860px){.two,.two-wide{grid-template-columns:1fr;gap:26px}}
.fig{margin:0}.fig-cap{font:700 14px/1.3 var(--cond);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px}
.static-field{box-shadow:0 20px 50px -25px rgba(0,0,0,.6)}
.fine{font-size:13.5px;color:var(--muted);margin:12px 0 0}
.src-line{font-size:13px;color:var(--muted);margin:14px 0 0}
.cite{white-space:nowrap;font:700 12px/1 var(--cond);letter-spacing:.02em;vertical-align:1px}
.cite a{color:var(--scarlet);text-decoration:none;padding:0 1px}.cite a:hover{text-decoration:underline}
/* stats */
.stats{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.stats-6{grid-template-columns:repeat(6,1fr)}.stats-5{grid-template-columns:repeat(5,1fr)}.stats-4{grid-template-columns:repeat(4,1fr)}.stats-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:1000px){.stats-6{grid-template-columns:repeat(3,1fr)}.stats-5{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.stats-6,.stats-5{grid-template-columns:repeat(2,1fr)}.stats-4{grid-template-columns:repeat(2,1fr)}}
.stat{background:var(--card);padding:18px 16px 16px;min-width:0}
.stat-v{font:400 clamp(28px,3.6vw,42px)/1 var(--slab);color:var(--scarlet);letter-spacing:-.01em;white-space:nowrap}
.stats-4 .stat-v,.stats-3 .stat-v{font-size:clamp(24px,3vw,32px)}
.stat-l{font:700 15px/1.15 var(--cond);text-transform:uppercase;letter-spacing:.08em;margin-top:8px}
.stat-n{font-size:13px;color:var(--muted);margin-top:4px}
.ticks{list-style:none;margin:0;padding:0}.ticks li{position:relative;padding:9px 0 9px 26px;border-bottom:1px dashed var(--line)}
.ticks li::before{content:"";position:absolute;left:2px;top:17px;width:12px;height:4px;background:var(--scarlet);border-radius:2px}
.ticks.small li{font-size:14.5px;padding:7px 0 7px 26px}.ticks.small li::before{top:15px}
/* film room */
.filmroom{padding:56px 0;border-bottom:1px solid var(--line);background:radial-gradient(70% 50% at 50% 0%,rgba(228,28,56,.14),transparent 70%)}
.fr-tabs{display:inline-flex;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:4px;margin-bottom:16px}
.tab{appearance:none;border:0;background:transparent;color:var(--muted);font:700 16px/1 var(--cond);text-transform:uppercase;letter-spacing:.1em;padding:12px 18px;border-radius:9px;cursor:pointer;min-height:44px}
.tab.on{background:var(--scarlet);color:#fff;box-shadow:0 6px 20px rgba(228,28,56,.4)}
.fr-controls{display:grid;gap:14px;margin-bottom:18px}
.ctl-l small{color:var(--muted);letter-spacing:.06em;text-transform:none;font-family:var(--sans);font-weight:500}
.chips{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:700px){.chips{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;margin:0 -20px;padding-left:20px;padding-right:20px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{scroll-snap-align:start;flex:none}}
.chip{appearance:none;border:1.5px solid var(--line);background:var(--card);color:var(--ink);font:700 15px/1 var(--cond);text-transform:uppercase;letter-spacing:.06em;padding:0 14px;min-height:42px;border-radius:999px;cursor:pointer;transition:background .2s,border-color .2s,transform .15s,color .2s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.chip small{opacity:.6;margin-left:4px;font-size:12px}
.chip:hover{border-color:var(--scarlet)}.chip:active{transform:scale(.96)}
.chip.on{background:var(--scarlet);border-color:var(--scarlet);color:#fff;box-shadow:0 0 18px var(--glow)}
.fr-stage{display:grid;grid-template-columns:1fr;gap:18px}
.ro-top{display:grid;grid-template-columns:minmax(260px,1fr) 1.2fr 1fr;gap:10px 22px;align-items:center}
.ro-top .ro-head{margin:0}.ro-top .split,.ro-top .ro-stats{margin:0}
.ro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:16px}
@media (max-width:980px){.ro-top{grid-template-columns:1fr}.ro-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.ro-grid{grid-template-columns:1fr}}
.field-wrap{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:0 30px 70px -35px var(--glow)}
.field-dir{display:flex;justify-content:space-between;align-items:center;font:700 13px/1 var(--cond);letter-spacing:.16em;color:var(--muted);margin:2px 4px 10px}.field-dir .arrow{color:var(--scarlet);font-size:20px}
.legend{display:flex;gap:14px;flex-wrap:wrap;font:700 13px/1.2 var(--cond);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:10px 4px 2px}
.legend i{display:inline-block;width:14px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.readout{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;min-height:200px}
.ro-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.ro-sit{font:400 26px/1.05 var(--slab);text-transform:uppercase}
.ro-n{font:700 14px/1 var(--cond);letter-spacing:.1em;color:var(--muted);text-transform:uppercase}
.split{height:34px;display:flex;border-radius:8px;overflow:hidden;font:700 15px/34px var(--cond);text-transform:uppercase;letter-spacing:.06em;margin:4px 0 14px}
.split .r{background:var(--scarlet);color:#fff;padding-left:10px;transition:width .5s var(--ease);white-space:nowrap;overflow:hidden}
.split .p{background:var(--cream);color:#1a1310;text-align:right;padding-right:10px;flex:1;white-space:nowrap;overflow:hidden}
.ro-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.ro-stats div{background:var(--bg2);border-radius:10px;padding:10px}.ro-stats b{display:block;font:400 26px/1 var(--slab);color:var(--scarlet)}.ro-stats span{font:700 12px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ro-sec{margin-top:12px}.ro-sec h4{font:700 13px/1 var(--cond);letter-spacing:.16em;text-transform:uppercase;color:var(--scarlet);margin:0 0 6px}
.rows{list-style:none;padding:0;margin:0}.rows li{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:6px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.rows .m{font-size:12.5px;color:var(--muted);grid-column:1/-1}
.rows .bar{grid-column:1/-1;height:4px;background:var(--line);border-radius:2px;overflow:hidden}.rows .bar i{display:block;height:100%;background:var(--scarlet);transition:width .5s var(--ease)}
.empty{padding:28px 10px;text-align:center;color:var(--muted);font:700 20px/1.2 var(--cond);text-transform:uppercase;letter-spacing:.1em;border:2px dashed var(--line);border-radius:12px}
/* call card */
.callcard{margin-top:20px;perspective:1400px}
.cc{position:relative;min-height:170px;transform-style:preserve-3d;transition:transform .7s var(--ease);cursor:pointer;border-radius:16px;outline:none}
.cc.flipped{transform:rotateX(180deg)}
.cc-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;justify-content:center}
.cc-front{background:repeating-linear-gradient(135deg,var(--scarlet) 0 18px,var(--scarlet-d) 18px 36px);color:#fff;box-shadow:0 18px 50px -18px rgba(228,28,56,.7);border:3px solid var(--cream)}
.cc-front .cc-big{font:400 clamp(24px,4vw,38px)/1 var(--varsity);text-transform:uppercase}
.cc-front .cc-hint{font:700 15px/1.2 var(--cond);letter-spacing:.14em;text-transform:uppercase;margin-top:10px;opacity:.95}
.cc-back{transform:rotateX(180deg);background:var(--cream);color:#1a1310;border:3px solid var(--scarlet);box-shadow:inset 0 0 0 6px var(--cream),inset 0 0 0 7px rgba(228,28,56,.4)}
.cc-back .call-tag{color:var(--scarlet)}
.cc-call{font:400 clamp(20px,2.8vw,28px)/1.12 var(--slab);margin:0 0 8px}
.cc-why{margin:0;font-size:15px;color:#3b302a}
.cc-none{font:700 18px/1.3 var(--cond);text-transform:uppercase;letter-spacing:.08em;color:#5d5047}
/* bars */
.bars{display:grid;gap:12px}
.bar{display:grid;grid-template-columns:140px 1fr auto;gap:4px 12px;align-items:center}
.bar-l b{display:block;font:700 17px/1 var(--cond);text-transform:uppercase;letter-spacing:.06em}.bar-l span{font-size:12.5px;color:var(--muted)}
.bar-t{height:18px;background:var(--line);border-radius:4px;overflow:hidden}.bar-t i{display:block;height:100%;background:linear-gradient(90deg,var(--scarlet-d),var(--scarlet))}
.bar-v{font:400 22px/1 var(--slab);color:var(--scarlet);white-space:nowrap}.bar-v small{font:600 11px var(--sans);color:var(--muted)}
.bar-n{grid-column:2/-1;font-size:13px;color:var(--muted);margin-top:-2px}
@media (max-width:520px){.bar{grid-template-columns:100px 1fr auto}}
/* suggested calls list */
.calls{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (max-width:760px){.calls{grid-template-columns:1fr}}
.call{display:flex;gap:14px;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--scarlet);border-radius:12px;padding:16px;transition:transform .2s var(--ease),box-shadow .2s}
.call:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px var(--glow)}
.call-n{font:400 30px/1 var(--varsity);color:var(--scarlet);flex:none;width:44px}
.call-t{font:400 19px/1.2 var(--slab);margin:0 0 6px}.call-w{margin:0;font-size:14.5px;color:var(--muted)}
.call-tag{margin-bottom:6px;font-size:11.5px}
/* qb */
.qbgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}@media (max-width:760px){.qbgrid{grid-template-columns:1fr}}
.qbcard{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;position:relative;overflow:hidden}
.qbcard h3{font:400 30px/1 var(--varsity);text-transform:uppercase;margin:0 0 6px}
.qbline{font:700 17px/1.2 var(--cond);letter-spacing:.04em;color:var(--muted);margin:0 0 14px}
/* punts */
.punts{display:grid;gap:16px}.punt h4{font:700 20px/1 var(--cond);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px}
/* keys */
.keygrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media (max-width:760px){.keygrid{grid-template-columns:1fr}}
.keycol{background:var(--scarlet);color:#fff;border-radius:16px;padding:22px;box-shadow:0 20px 50px -25px rgba(228,28,56,.8)}
.keycol h3{font:400 24px/1 var(--varsity);text-transform:uppercase;margin:0 0 12px}
.keycol ol{margin:0;padding-left:22px}.keycol li{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.22);font-size:15.5px}.keycol li::marker{font:400 18px var(--slab)}
/* ranks */
.rkhead{display:flex;gap:16px;font:700 13px/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.rkhead .ka{color:var(--scarlet)}.rkhead .kc{color:var(--muted)}
.rkhead span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;background:currentColor}
.rk{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}
.rk-n{font:700 15px/1.1 var(--cond);text-transform:uppercase;letter-spacing:.05em}
.rk-b{display:grid;gap:3px}.rk-b span{display:block;height:14px;border-radius:3px;position:relative;min-width:26px}
.rk-a{background:rgba(228,28,56,.45)}.rk-c{background:color-mix(in srgb,var(--ink) 25%,transparent)}.rk-a.win{background:var(--scarlet)}.rk-c.win{background:var(--ink)}
.rk-b em{position:absolute;right:4px;top:0;font:700 12px/14px var(--cond);font-style:normal;color:#fff}.rk-c em{color:var(--bg)}
@media (max-width:520px){.rk{grid-template-columns:96px 1fr}}
/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.card{display:block;text-decoration:none;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s}
.card:hover{transform:translateY(-4px);box-shadow:0 24px 50px -24px rgba(228,28,56,.6)}
.card-field{padding:12px 12px 0;background:#0A0A0C}
.card-body{padding:16px 18px 18px}.card-body h3{font:400 26px/1 var(--varsity);text-transform:uppercase;margin:0 0 8px}.card-body p{margin:0 0 10px;color:var(--muted);font-size:14.5px}
.card-go{font:700 15px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;color:var(--scarlet)}
.big{font-size:clamp(17px,2vw,20px)}
.about-points p{margin:0 0 12px}
.prose{max-width:780px}.prose h2{font:400 28px/1.1 var(--slab);text-transform:uppercase;margin:34px 0 10px}.prose h2:first-child{margin-top:0}
.srclist{list-style:none;padding:0;margin:16px 0 0;columns:2;column-gap:36px;font-size:14px}@media (max-width:760px){.srclist{columns:1}}
.srclist li{break-inside:avoid;padding:6px 0;border-bottom:1px solid var(--line)}.srclist li:target{background:rgba(228,28,56,.18)}
.sn{font:700 14px var(--cond);color:var(--scarlet)}
/* footer */
.footer{padding:40px 0 calc(40px + env(safe-area-inset-bottom));background:#0A0A0C;color:#e9dcc2;border-top:4px solid var(--scarlet)}
.foot-brand{font:400 22px/1 var(--varsity);text-transform:uppercase;margin-bottom:12px}.foot-brand b{color:var(--scarlet);font-weight:400}
.disclaimer{max-width:820px;font-size:14px;line-height:1.6;color:#cfc2a8}.disclaimer strong{color:#fff}
.foot-links{font:700 14px var(--cond);text-transform:uppercase;letter-spacing:.1em}.foot-links a{color:#fff}

.ctl,.fr-controls,.nav{min-width:0}
.fig + .two{margin-top:28px}
.fg-name{paint-order:stroke;stroke:#000;stroke-width:6px;stroke-opacity:.6}
.rd-l,.rd-v{paint-order:stroke;stroke:#000;stroke-width:6px;stroke-opacity:.55}
.tend-grid .ticks{columns:2;column-gap:36px}.tend-grid .ticks li{break-inside:avoid}
@media (max-width:760px){.tend-grid .ticks{columns:1}}
.tend-grid .stats{margin-bottom:24px}
@media (max-width:560px){.matchup{font-size:clamp(38px,12vw,60px)}.hero-cta .btn{flex:1;justify-content:center}.field-dir{font-size:11px}}

.legend-note{width:100%}


/* phones: same horizontal field, fewer details */
@media (max-width:700px){
 .field .tick,.field .farrow,.field .post{display:none}
 .field .chalk{stroke-width:4}.field .boundary{stroke-width:10}
 .field .fnum{font-size:58px}
 .field .ez-word{font-size:64px;letter-spacing:.08em}
 .field .zcount{font-size:34px}.field .los{stroke-width:9}.field .ltg{stroke-width:9}
 .dot{stroke-width:5}.runarrow{stroke-width:14px}
 .field-wrap{padding:8px;border-radius:14px}.field-dir{margin:0 2px 6px}
 .filmroom{padding:28px 0}.filmroom .sec-sub{font-size:14.5px}
 .fr-tabs{margin-bottom:10px}.tab{padding:9px 14px;min-height:40px;font-size:14px}
 .fr-controls{gap:8px;margin-bottom:12px}.ctl-l{margin-bottom:5px;font-size:11.5px}
 .chip{min-height:36px;font-size:14px;padding:0 12px}
 .legend{font-size:11px;gap:6px 10px}
 .readout{padding:14px}.ro-sit{font-size:21px}
 .hero{padding:26px 0 24px}.band{padding:32px 0}
 .sec-title{font-size:26px}
 .bottomline{margin-top:16px}.hero-cta{margin-top:18px}
}
@media (max-width:700px){.legend span:last-child{display:none}.legend{display:grid;grid-template-columns:1fr 1fr}}

/* article */
.narrow{max-width:820px}
.art-title{margin:0;font:400 clamp(34px,6vw,64px)/1 var(--varsity);text-transform:uppercase}
.art-dek{font-size:clamp(17px,2.2vw,21px);color:var(--muted);margin:14px 0 6px;max-width:700px}
.article .art-img{width:100%;height:auto;border-radius:14px;border:1px solid var(--line);margin-bottom:22px}
.article p,.article li{font-size:17.5px;line-height:1.7}
.article h2{color:var(--ink)}.article h2::after{content:"";display:block;width:56px;height:5px;background:var(--scarlet);margin-top:10px;border-radius:2px}
.art-list{padding-left:24px}.art-list li{margin:8px 0}.art-list li::marker{color:var(--scarlet);font:400 18px var(--slab)}
.art-src{font-size:14px!important;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:28px}
.art-link{margin:16px 0 0;font:700 16px/1.3 var(--cond);text-transform:uppercase;letter-spacing:.08em}.art-link a{color:var(--scarlet)}

/* film room views v8 */
.fr-tabs{max-width:100%;overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}.fr-tabs::-webkit-scrollbar{display:none}.tab{flex:none;white-space:nowrap}
.sm{font-style:normal;font:700 11px/1 var(--cond);letter-spacing:.08em;text-transform:uppercase;color:#FFD21F;background:rgba(255,210,31,.12);padding:2px 6px;border-radius:5px}
.pl-line{stroke-width:5;stroke-linecap:round;opacity:.95}.pl-line.ok{stroke:#E41C38}.pl-line.no{stroke:#e9efe6;opacity:.7}
.pl-end.ok{fill:#E41C38;stroke:#fff;stroke-width:2}.pl-end.no{fill:#e9efe6;stroke:#0b0b0b;stroke-width:2}.faint{opacity:.12}
.menu{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.mcard{appearance:none;text-align:left;cursor:pointer;background:var(--bg2);color:var(--ink);border:2px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:4px;font:400 13px/1.35 var(--body);transition:border-color .2s,transform .2s}
.mcard:hover{transform:translateY(-2px)}.mcard.on{border-color:var(--scarlet);box-shadow:0 0 0 3px rgba(228,28,56,.25),0 14px 30px -14px var(--glow)}
.mc-n{font:400 19px/1.05 var(--slab);text-transform:uppercase}.mc-f{font:700 13px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;color:var(--scarlet)}
.mc-s b{font:400 17px/1 var(--slab);color:var(--scarlet)}.mc-r{color:var(--muted)}.mc-v{font-size:12.5px;border-top:1px dashed var(--line);padding-top:3px}
.ro-grid-2{grid-template-columns:1fr 1fr}
.bp{cursor:pointer}.bp-hit{stroke:transparent;stroke-width:34}.bp-l{stroke-width:6;stroke-linecap:round}.bp-p .bp-l{stroke:#FFD21F}.bp-r .bp-l{stroke:#E41C38}
.bp-s{fill:#2F7BFF;stroke:#fff;stroke-width:2}.bp-e{stroke:#0b0b0b;stroke-width:3}.bp-p .bp-e{fill:#FFD21F}.bp-r .bp-e{fill:#E41C38}
.bp.on .bp-l{stroke-width:11}.bp.on .bp-e{r:15}.bp:focus{outline:none}.bp:focus-visible .bp-l{stroke:#fff}
.bp-card{background:var(--cream,#FDF2D9);color:#14080a;border-radius:14px;padding:12px 16px;margin-bottom:12px}.bp-card p{margin:2px 0}.bp-card .fine{color:#5a4a40}
.bp-big{font:400 34px/1 var(--slab);color:#B5122A}
.cov-grid,.qb-vs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.qb-vs{grid-template-columns:1fr 1fr}
.cov,.qbf{background:var(--bg2);border:2px solid var(--line);border-radius:14px;padding:12px}.cov.on,.qbf.on{border-color:var(--scarlet)}
.cov h4,.qbf h4{margin:0;font:400 20px/1 var(--slab);text-transform:uppercase}.cov-n{margin:4px 0 8px;font:700 12px/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cov p{margin:0 0 6px;font-size:14px}.cov b{color:var(--scarlet)}
.sugg{margin-top:12px;background:var(--cream,#FDF2D9);color:#14080a;border-left:6px solid var(--scarlet);border-radius:12px;padding:10px 14px}.sugg p{margin:2px 0}
@media (max-width:980px){.menu,.cov-grid{grid-template-columns:1fr 1fr}}
@media (max-width:700px){
 .menu{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -14px;padding:0 14px 6px;scrollbar-width:none}.mcard{flex:0 0 78%;scroll-snap-align:start}
 .cov-grid{grid-template-columns:1fr 1fr;gap:8px}.cov{padding:10px}.cov .rows{display:none}
 .qb-vs{gap:8px}.qbf{padding:10px}.qbf .ro-stats{grid-template-columns:1fr}.qbf h4{font-size:16px}
 .ro-grid-2{grid-template-columns:1fr 1fr;gap:10px}
 .pl-line{stroke-width:8}.bp-l{stroke-width:10}.bp-e{r:14}
}
.fr-stage>*,.readout{min-width:0}.faint{opacity:.28}.bp.faint{opacity:.35}

/* tap-anywhere marks + chalk/telestrator style (v9) */
.overlay .tapm{pointer-events:auto;cursor:pointer}.overlay .tag{pointer-events:none}
.hit,.hit-l{fill:transparent;stroke:transparent}.hit-l{stroke-width:30;fill:none}
.tapm{transition:opacity .2s}.tapm:focus{outline:none}.tapm:focus-visible .ch-l,.tapm:focus-visible .dot{stroke:#FFD21F}
.has-pick .tapm:not(.picked){opacity:.15}.has-pick .tag{opacity:.15}
.tag{opacity:.78}.tag-t{font-size:18px}.tagbg{fill-opacity:.7}
.ch-l{stroke-linecap:round;fill:none}
.ch-ok .ch-under{stroke:#FDF2D9;stroke-width:8;stroke-linecap:round}
.ch-ok .ch-l{stroke:#E41C38;stroke-width:5}
.ch-no{opacity:.4}.ch-no .ch-l{stroke:#FDF2D9;stroke-width:2.2}
.ch-p .ch-l{stroke-dasharray:12 8}.ch-p.ch-ok .ch-under{stroke-dasharray:12 8}
.ch-head{fill:#E41C38;stroke:#FDF2D9;stroke-width:1.5}.ch-no .ch-head{fill:#FDF2D9;stroke:none}
.ch-end{fill:#E41C38;stroke:#FDF2D9;stroke-width:1.5}.ch-no .ch-end{fill:#FDF2D9;stroke:none}
.ch-x .ch-end,.ch-x .ch-head{filter:drop-shadow(0 0 6px #FFD21F)}.ch-x .ch-end{stroke:#FFD21F;stroke-width:2.5}
.ch-los{fill:#fff;opacity:.8}
.tapm:hover .ch-l{stroke-width:7}.ch-no:hover{opacity:.85}.tapm.picked{opacity:1}
.tapm.picked .ch-l{stroke-width:7}.tapm.picked.ch-no .ch-l{stroke-width:4}
.lg-dash{background:repeating-linear-gradient(90deg,#E41C38 0 6px,transparent 6px 10px)!important}
.field-wrap{position:relative}
.tapcard{position:absolute;top:44px;right:16px;width:300px;max-height:calc(100% - 60px);overflow:auto;z-index:5;background:#FDF2D9;color:#14080a;border-radius:14px;padding:12px 14px 10px;box-shadow:0 20px 50px rgba(0,0,0,.55);border-top:6px solid #E41C38;font-size:13.5px}
.tapcard p{margin:0}.tc-x{position:absolute;top:6px;right:6px;width:36px;height:36px;border:0;border-radius:50%;background:rgba(0,0,0,.08);font-size:22px;line-height:1;cursor:pointer;color:#14080a}
.tc-back{border:0;background:none;color:#B5122A;font:700 12px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;padding:4px 0 6px;cursor:pointer}
.tc-k{font:700 12px/1.2 var(--cond);letter-spacing:.12em;text-transform:uppercase;color:#B5122A;padding-right:36px}
.tc-g{font:400 34px/1.05 var(--slab);color:#14080a;margin:4px 0 0!important}.tc-g.neg{color:#B5122A}
.tc-who{font:700 17px/1.2 var(--cond);text-transform:uppercase;letter-spacing:.04em}
.tc-b{margin:6px 0!important;display:flex;gap:6px;flex-wrap:wrap}.tc-b .b{font:700 11px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;padding:4px 7px;border-radius:5px}
.b.ok{background:#E41C38;color:#fff}.b.no{background:rgba(0,0,0,.1)}.b.x{background:#FFD21F;color:#14080a}
.tapcard dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:4px 0 0}.tapcard dt{font:700 11px/1.5 var(--cond);letter-spacing:.1em;text-transform:uppercase;color:#7a675a}.tapcard dd{margin:0}
.tc-list{list-style:none;margin:6px 0 0;padding:0}.tc-list button{width:100%;text-align:left;border:0;border-bottom:1px solid rgba(0,0,0,.1);background:none;padding:9px 2px;min-height:44px;cursor:pointer;font:inherit;color:inherit}
.tc-list button:hover{background:rgba(228,28,56,.08)}.tc-list b{font:400 16px var(--slab);color:#B5122A;margin-right:4px}.tc-list small{display:block;color:#7a675a}
@media (max-width:700px){
 .tapcard{position:fixed;left:0;right:0;top:auto;bottom:0;width:auto;max-height:44vh;border-radius:18px 18px 0 0;padding:14px 16px calc(12px + env(safe-area-inset-bottom));z-index:60}
 .tapcard dl{grid-template-columns:auto 1fr auto 1fr}
 .ch-ok .ch-l{stroke-width:7}.ch-ok .ch-under{stroke-width:11}.ch-no .ch-l{stroke-width:4}.hit-l{stroke-width:44}
}

/* replay v10 */
.replay{pointer-events:none}
.rp-trail{fill:none;stroke:#E41C38;stroke-width:9;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(228,28,56,.8))}
.rp-trail.air{stroke:#FDF2D9;stroke-width:3;stroke-opacity:.75;filter:none}
.rp-shadow{fill:#000;filter:blur(2px)}
.rp-pig{fill:#7a3b1d;stroke:#3d1a0a;stroke-width:2}.rp-lace{stroke:#fff;stroke-width:2.5}
.rp-inc{animation:rpfade 1s ease-out forwards}@keyframes rpfade{to{opacity:.2}}
.rp-count{font:400 64px/1 var(--varsity,var(--slab));fill:#FDF2D9;text-anchor:middle;paint-order:stroke;stroke:#0b0b0d;stroke-width:8;stroke-linejoin:round}
.rp-pop{font:400 36px/1 var(--slab);text-anchor:middle;paint-order:stroke;stroke:#0b0b0d;stroke-width:7;animation:rppop .45s cubic-bezier(.2,1.6,.4,1) both}
.rp-pop.x{fill:#FFD21F}.rp-pop.td{fill:#E41C38}.rp-pop.inc{fill:#FDF2D9}
@keyframes rppop{from{opacity:0;transform:scale(.4);transform-origin:600px 128px}to{opacity:1;transform:scale(1);transform-origin:600px 128px}}
.tapcard{opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s}.tapcard.in{opacity:1;transform:none}
@media (max-width:700px){.tapcard{transform:translateY(100%)}.tapcard.in{transform:none}.rp-count{font-size:84px}.rp-pop{font-size:46px}}
.tc-foot{display:flex;gap:10px;align-items:center;margin-top:8px!important;border-top:1px dashed rgba(0,0,0,.15);padding-top:8px}
.tc-foot span{font-size:11px;color:#7a675a;line-height:1.3}
.tc-replay{flex:none;border:0;border-radius:999px;background:#E41C38;color:#fff;font:700 13px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;padding:10px 14px;min-height:40px;cursor:pointer}
@media (prefers-reduced-motion:reduce){.tapcard,.rp-pop,.rp-inc{transition:none;animation:none}}
/* premium field polish, Blackout */
.theme-blackout .field-wrap{box-shadow:0 0 0 1px rgba(228,28,56,.25),0 30px 80px -30px rgba(228,28,56,.55),inset 0 1px 0 rgba(255,255,255,.05)}
.theme-blackout .field-lg{filter:drop-shadow(0 0 18px rgba(228,28,56,.28))}
.chalk{shape-rendering:geometricPrecision}
.has-pick .los,.has-pick .ltg,.has-pick .los-glow,.has-pick .ltg-glow,.has-pick .zcount,.has-pick .zcount-bg{opacity:.15}.has-pick .replay .los,.has-pick .replay .ltg{opacity:1}

/* chalkboard replay v11 */
.rp-def{stroke:#0b0b0d;stroke-width:3;opacity:.35;fill:none}
.rp-ol{fill:#FDF2D9;opacity:.4}.rp-off{fill:#FDF2D9;opacity:.35}
.rp-act .rp-dot{fill:#FDF2D9;stroke:#0b0b0d;stroke-width:2}.rp-act.mv .rp-dot{fill:#E41C38;stroke:#FDF2D9;stroke-width:2.5}
.rp-halo{fill:rgba(228,28,56,.25)}.rp-act.qb .rp-halo{fill:rgba(253,242,217,.2)}
.rp-name{font:700 20px/1 var(--cond);fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#0b0b0d;stroke-width:5;letter-spacing:.04em;text-transform:uppercase}
.rp-chalk{fill:none;stroke:#FDF2D9;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:2 7;opacity:.9}
.rp-tag rect{fill:#0b0b0d;fill-opacity:.72}.rp-tag text{font:600 13px/1 var(--body);fill:#FDF2D9;text-anchor:middle;dominant-baseline:central}
@media (max-width:700px){.rp-name{font-size:34px;stroke-width:8}.rp-chalk{stroke-width:7;stroke-dasharray:3 10}.rp-tag text{font-size:31px}.rp-def{stroke-width:5}}

/* v12: readable set formation + full-screen phone replay */
.rp-off{fill:#FDF2D9;opacity:.75;stroke:#0b0b0d;stroke-width:1.5}
.rp-ol{fill:#FDF2D9;opacity:1;stroke:#0b0b0d;stroke-width:1.5}
.rp-def{stroke:#111;stroke-width:3.5;opacity:.55;stroke-linecap:round}.rp-def-o{stroke:#FDF2D9;stroke-width:6.5;opacity:.3;fill:none;stroke-linecap:round}
.rp-act{filter:drop-shadow(0 0 8px rgba(228,28,56,.9))}.rp-act.qb{filter:drop-shadow(0 0 7px rgba(253,242,217,.8))}
.rp-act .rp-halo{fill:rgba(228,28,56,.4)}.rp-act.mv .rp-dot{stroke-width:3}.rp-act.qb .rp-dot{fill:#fff}
html.fs-lock,html.fs-lock body{overflow:hidden;overscroll-behavior:none}
.field-wrap.fs{position:fixed;inset:0;z-index:200;margin:0;border-radius:0;border:0;padding:56px 6px 6px;background:#050506;display:flex;flex-direction:column;justify-content:flex-start;box-shadow:none}
.field-wrap.fs:fullscreen{padding-top:56px}
.field-wrap.fs .field-dir,.field-wrap.fs .legend{display:none}
.field-wrap.fs svg{width:100%;height:auto;max-height:calc(100vh - 62px);filter:none}
.fs-x{position:absolute;top:6px;right:8px;z-index:3;width:48px;height:48px;border-radius:50%;border:2px solid rgba(253,242,217,.5);background:#E41C38;color:#fff;font-size:30px;line-height:1;cursor:pointer}
.field-wrap.fs .tapcard{position:relative;left:auto;right:auto;bottom:auto;top:auto;width:auto;max-height:none;margin-top:10px;border-radius:14px;transform:none;padding:10px 14px}
.field-wrap.fs .tapcard dl{grid-template-columns:auto 1fr;font-size:13px}
.field-wrap.fs .tapcard .tc-x{display:none}
@media (orientation:landscape){.field-wrap.fs{padding:6px 64px 6px 6px;justify-content:center}.field-wrap.fs svg{max-height:calc(100vh - 12px);width:auto;max-width:100%;margin:0 auto}
 .field-wrap.fs .tapcard{position:absolute;left:12px;bottom:12px;width:min(46vw,360px);margin:0;max-height:55vh;overflow:auto;opacity:.97}.field-wrap.fs .tapcard dl{display:none}}
@media (orientation:portrait){.field-wrap.fs{justify-content:center}}

/* v13 highlighter washes + compact tags */
.hl{pointer-events:none}.hl-wash{fill:#E41C38;filter:blur(14px);mix-blend-mode:screen}
.ztag{pointer-events:none}.ztag rect{fill:#0b0b0d;fill-opacity:.66}.ztag text{font:700 14px/1 var(--cond);fill:#FDF2D9;text-anchor:middle;dominant-baseline:central;letter-spacing:.04em}
.ztag.big text{font-size:26px}.has-pick .ztag,.has-pick .hl{opacity:.15}
.hl-wash{mix-blend-mode:normal;filter:blur(10px)}

/* v14 back to all plays */
.fr-back{position:absolute;top:44px;left:18px;z-index:6;min-height:44px;padding:0 16px;border-radius:999px;border:2px solid #FDF2D9;background:#0b0b0d;color:#FDF2D9;font:700 14px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.5)}
.fr-back:hover{background:#E41C38}.fr-back[hidden]{display:none}
@media (max-width:700px){.fr-back{top:36px;left:12px;font-size:13px}}
.field-wrap.fs .fr-back{position:absolute;top:6px;left:8px}
.field-wrap.fs .tapcard .tc-x{display:block}

/* v14 lanes */
.hl{pointer-events:auto}.hl-wash{cursor:pointer;filter:blur(7px);transition:opacity .25s}.hl-wash.on{filter:blur(4px)}
.ztag{pointer-events:auto;cursor:pointer}.ztag text{font-size:12px}.ztag.big text{font-size:22px}.ztag rect{fill-opacity:.72}
.lanes{width:100%;display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:4px}
.lane-btn{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid rgba(253,242,217,.3);background:#151318;color:#FDF2D9;font:700 12px/1 var(--cond);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.lane-btn:hover,.lane-btn.on{background:#E41C38;border-color:#E41C38}
.fan.ch-no{opacity:.55}
@media (max-width:700px){.lanes{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.lane-btn{flex:none;min-height:40px}}

.fan .ch-l{stroke-dasharray:none}.fan.ch-ok .ch-l{stroke-width:3}.fan.ch-ok .ch-under{stroke-width:5;stroke-dasharray:none}.fan.ch-no .ch-l{stroke-width:1.6}
.fan .ch-end{r:3}.fan .ch-head{transform-box:fill-box;transform-origin:center;transform:scale(.6)}.fan .ch-los{display:none}
@media (max-width:700px){.fan.ch-ok .ch-l{stroke-width:4}.fan.ch-ok .ch-under{stroke-width:6}.fan.ch-no .ch-l{stroke-width:2.5}}
.legend .lanes{grid-column:1/-1}.lanes span{white-space:nowrap;flex:none}@media (max-width:700px){.lanes{margin:0 -4px 6px}.lanes span{font-size:11px}}

/* v15 plays list */
.plays{background:#FDF2D9;color:#14080a;border-radius:16px;border-top:6px solid #E41C38;padding:14px 16px 12px;box-shadow:0 20px 50px -20px rgba(0,0,0,.6)}
.pl-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.pl-head .tc-k{padding:0;margin:0;font-size:13px}
.pl-sorts{display:flex;gap:6px;flex-wrap:wrap}
.pl-chip{min-height:30px;padding:0 10px;border-radius:999px;border:1px solid rgba(0,0,0,.18);background:transparent;color:#14080a;font:700 11px/1 var(--cond);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.pl-chip.on{background:#14080a;color:#FDF2D9;border-color:#14080a}.pl-chip[data-clear]{background:#E41C38;border-color:#E41C38;color:#fff}
.pl-list{columns:2;column-gap:28px;margin-top:8px}.pl-list li{break-inside:avoid}
.pl-list button{font-size:15px}.pl-list button.dim{opacity:.55}.pl-list button.on{background:rgba(228,28,56,.14);box-shadow:inset 4px 0 0 #E41C38;padding-left:10px}
.pl-list b{font-size:19px}.pl-list .b{font:700 10px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;padding:3px 6px;border-radius:4px;vertical-align:2px;margin-left:4px}
.pl-more{margin-top:8px;width:100%;min-height:44px;border:2px solid #14080a;border-radius:12px;background:transparent;font:700 14px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;color:#14080a}
.pl-more:hover{background:#14080a;color:#FDF2D9}
@media (max-width:900px){.pl-list{columns:1}}
@media (max-width:700px){.plays{padding:12px}.pl-list button{font-size:14px}.lanes{flex-wrap:wrap!important;overflow:visible!important}.lanes span{white-space:normal;width:100%}}
/* full-screen: field centered, card right under it */
@media (orientation:portrait){.field-wrap.fs{justify-content:center;gap:10px;padding-top:64px}.field-wrap.fs .tapcard{margin-top:0}.field-wrap.fs .tapcard:not(.in){display:none}}

.field-wrap.fs{overflow-y:auto;-webkit-overflow-scrolling:touch}
@media (orientation:portrait){.field-wrap.fs{justify-content:flex-start}.field-wrap.fs .plays{margin-top:10px;flex:none}.field-wrap.fs svg{flex:none}.field-wrap.fs .tapcard{flex:none}}
@media (orientation:landscape){.field-wrap.fs .plays{display:none}}

/* v16 polish: compact rows with yard strip, side-by-side desktop, landscape drawer, share link */
.pl-list button.pl-row{display:grid;grid-template-columns:62px minmax(0,1fr) 92px;grid-template-areas:"g m s" "g k k";align-items:center;gap:1px 10px;padding:8px 4px;min-height:52px}
.pl-row b{grid-area:g;margin:0;font-size:20px;text-align:right}
.pl-main{grid-area:m;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14.5px;font-weight:600}.pl-main em{font-style:normal;font-weight:400;color:#4a3b33}
.pl-row small{grid-area:k;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
.pl-strip{grid-area:s;position:relative;height:10px;border-radius:3px;background:linear-gradient(90deg,#3a7a37 0 50%,#357334 50%);box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}
.pl-strip i{position:absolute;top:2px;height:6px;border-radius:2px;background:#FDF2D9;box-shadow:0 0 0 1px rgba(0,0,0,.35)}.pl-strip i.ok{background:#E41C38}
.pl-strip u{position:absolute;top:-2px;width:2px;height:14px;background:#2F7BFF;text-decoration:none}
.pl-row .b{font-size:9px;padding:2px 5px}
.pl-def{margin:8px 0 0;font-size:12px;color:#7a675a}
.pl-drawer-t{display:none}
.tc-share{flex:none;border:2px solid #14080a;border-radius:999px;background:transparent;color:#14080a;font:700 12px/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;padding:0 12px;min-height:40px;cursor:pointer}
@media (min-width:1200px){
 .fr-stage{grid-template-columns:minmax(0,1fr) 400px;align-items:start}
 .fr-stage>.field-wrap{grid-column:1;grid-row:1}.fr-stage>.plays{grid-column:2;grid-row:1;max-height:640px;overflow:auto;position:sticky;top:80px}
 .fr-stage>.readout{grid-column:1/-1}.fr-stage .pl-list{columns:1}
}
@media (max-width:700px){.pl-list button.pl-row{grid-template-columns:50px minmax(0,1fr) 64px;gap:1px 8px;min-height:50px}.pl-row b{font-size:17px}.pl-main{font-size:13.5px}}
@media (pointer:coarse){.pl-chip,.lane-btn,.tc-share,.tc-replay{min-height:44px}}
@media (orientation:landscape){
 .field-wrap.fs .plays{display:block;position:fixed;left:0;right:0;bottom:0;z-index:7;max-height:72vh;overflow:auto;border-radius:16px 16px 0 0;transform:translateY(calc(100% - 46px));transition:transform .3s}
 .field-wrap.fs .plays.open{transform:none}
 .field-wrap.fs .pl-drawer-t{display:block;width:100%;min-height:44px;margin:-12px 0 6px;border:0;background:transparent;font:700 14px/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;color:#B5122A;cursor:pointer}
 .field-wrap.fs .tapcard{bottom:58px}
}
@media (prefers-reduced-motion:reduce){.field-wrap.fs .plays{transition:none}}

.pl-row b.xp::after{content:"EXPL";display:block;margin-top:3px;font:700 9px/1 var(--cond);letter-spacing:.1em;color:#14080a;background:#FFD21F;border-radius:3px;padding:2px 0;text-align:center}
@media (min-width:1200px){.fr-stage>.plays{position:static;height:0;min-height:100%;max-height:none;box-sizing:border-box}}
@media (orientation:landscape){.field-wrap.fs .tapcard{width:min(40vw,300px);padding:8px 12px}.field-wrap.fs .tc-foot span{display:none}.field-wrap.fs .tc-g{font-size:26px}}

/* v17: no caption bar over the field; lighter counter in the top margin */
.rp-tag{display:none}
.rp-count{font-size:40px;stroke-width:4;stroke-opacity:.55}.rp-pop{font:400 26px/1 var(--slab);stroke-width:4;stroke-opacity:.55;animation:none}
.rp-name{stroke-width:3.5;stroke-opacity:.7}
.rp-note{margin:6px 4px 0;font-size:11px;line-height:1.35;color:var(--muted)}.rp-note[hidden]{display:none}
.field-wrap.fs .rp-note{color:#b9ad98;padding:0 6px}
@media (max-width:700px){.rp-count{font-size:52px;stroke-width:6}.rp-pop{font-size:34px;stroke-width:5}.rp-name{font-size:30px;stroke-width:6}}

/* v18 */
.fr-illus{margin:4px 4px 0;font-size:10.5px;line-height:1.2;color:rgba(253,242,217,.5)}.field-wrap.fs .fr-illus{display:none}.rp-note{display:none!important}
.tc-foot{justify-content:flex-start;gap:8px}
