.field-lab-workspace{margin:0;color:#f5f8fc}.fl-heading,.fl-comparison>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.fl-heading h2{font-size:25px;margin:10px 0}.fl-heading span,.fl-note{color:#b1c4d5;font-size:13px}.fl-controls{display:grid;grid-template-columns:2fr 1.3fr .7fr .7fr;gap:10px;margin:12px 0}.fl-controls label{display:grid;gap:5px;font-size:12px;color:#bbd0df}.fl-controls input,.fl-controls select,.field-lab-workspace button{background:#12283a;color:#f5f8fc;border:1px solid #355167;border-radius:7px;padding:10px;min-height:44px;font:inherit}.fl-row-head,.fl-row{display:grid;grid-template-columns:1.8fr .8fr .8fr 1fr 1.6fr;gap:15px;align-items:center}.fl-row-head{font-size:12px;color:#b8cede;padding:12px}.fl-board{display:block;border:1px solid #29485d;border-radius:10px;overflow:hidden;background:#0c2030}.fl-row{padding:12px;border-bottom:1px solid #294052}.fl-row:last-child{border:0}.fl-row>button{border:0;background:transparent;text-align:left;padding:0}.fl-row strong{font-size:17px;display:block}.fl-row small,.fl-row span{display:block;font-size:12px;color:#b5cbd9;line-height:1.6}.fl-row b{font-size:24px}.fl-row .fl-actual b{color:#71dff2}.fl-row .fl-forecast b{color:#edce78}.fl-row-usage{font-size:13px;line-height:1.6}.fl-row-usage b{font-size:14px}.fl-row-usage button{display:block;margin-top:6px;font-size:12px;padding:6px 12px}.fl-detail,.fl-comparison{margin-top:16px;padding:18px;border:1px solid #2b4a60;border-radius:10px;background:#0c2030}.fl-detail h2{font-size:25px;margin:5px 0 14px}.fl-explain{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.fl-explain h3{font-size:15px;color:#75d5eb}.fl-explain p{font-size:14px;line-height:1.6}.fl-table{width:100%;border-collapse:collapse;font-size:13px;margin:15px 0}.fl-table th,.fl-table td{padding:9px 7px;border-bottom:1px solid #294152;text-align:right}.fl-table th:first-child,.fl-table td:first-child{text-align:left}.fl-table caption{text-align:left;color:#bbcedc;font-size:12px;padding-bottom:10px}.fl-table td:nth-child(2){color:#edce78}.fl-table td:nth-child(3){color:#71dff2}.fl-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fl-pair{display:flex;gap:12px;flex-wrap:wrap}.fl-pair button{padding:4px 12px}.fl-takeaway{line-height:1.6;font-size:16px}.fl-status{padding:10px;color:#becedb}.fl-method, .fl-detail details{margin-top:12px;padding:12px 0;border-top:1px solid #284053;font-size:14px;line-height:1.6}.fl-statline{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.fl-statline dt{font-size:12px}.fl-statline dd{margin:5px 0;color:#edce78}.fl-trend>div{display:flex;gap:10px;align-items:center}.field-lab-workspace :focus-visible{outline:2px solid #7fddf0;outline-offset:3px}.nfl-team-route:has(.field-lab-workspace) .top{padding:8px 0;margin:0}.nfl-team-route:has(.field-lab-workspace) .top h1{font-size:30px;margin:8px 0}.nfl-team-route:has(.field-lab-workspace) .top p{display:none}.field-lab-deep{margin-top:18px}.fl-row>div{min-width:0}
@media(max-width:700px){.fl-controls{grid-template-columns:1fr 1fr}.fl-row-head{display:none}.fl-row{grid-template-columns:1fr 1fr;gap:12px;padding:14px}.fl-row>button{grid-column:1/-1}.fl-row-usage{grid-column:1/-1}.fl-row b{font-size:27px}.fl-row strong{font-size:18px}.fl-row-usage b{font-size:14px}.fl-explain,.fl-compare-grid{grid-template-columns:1fr}.fl-statline{grid-template-columns:1fr 1fr}.fl-detail,.fl-comparison{padding:12px}.fl-table{font-size:12px}.fl-table th,.fl-table td{padding:8px 3px}.fl-heading{align-items:start;flex-direction:column;gap:0}.fl-row>div:nth-child(4){grid-column:1/-1}.fl-row>div:nth-child(4) strong{display:inline}.fl-heading h2{margin-bottom:2px}}
/* Team and position rhythm; actual/projection labels remain visible without color. */
.fl-team-heading{margin:0;padding:13px 14px;background:linear-gradient(90deg,#17394d,#102436);border-left:3px solid #78cee5;font-size:19px;color:#f8fbff;display:flex;justify-content:space-between;align-items:center}.fl-team-heading span{font-size:12px;color:#b7cbd8;font-weight:400}.fl-position-heading{padding:8px 14px;margin:0;background:#112a3c;color:#dcc58a;font-size:12px;letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid #30495c}.fl-row{padding:10px 14px}.fl-row small:empty,.fl-row span:empty{display:none}.fl-row-usage{color:#d6e5ee}.fl-row>button strong{font-size:18px}.fl-detail>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.fl-detail-values{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:16px;background:#10283a;padding:14px;border-radius:8px;margin:14px 0}.fl-detail-values span,.fl-detail-values small{display:block;color:#c0d3df;font-size:12px}.fl-detail-values b{display:block;font-size:29px;margin:6px 0;color:#f4f7fb}.fl-detail-values .fl-actual b{color:#71dff2}.fl-detail-values .fl-forecast b{color:#edce78}.fl-current-status{font-size:12px;color:#b7ccd9;line-height:1.6}.fl-reason-kind{display:block;color:#d7bf80;font-size:11px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.fl-explain{grid-template-columns:1fr 1.6fr 1fr;gap:18px}.fl-explain h3{margin:12px 0 8px}.fl-explain p{margin:8px 0 12px;color:#e1eaf1}.fl-takeaway{font-size:17px;line-height:1.5;color:#f3f8fc}.fl-workload-charts{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fl-workload-charts>h3,.fl-workload-charts>.fl-note{grid-column:1/-1;margin:2px 0}.fl-workload-charts h4{font-size:14px;margin:8px 0}.fl-workload-bar{display:grid;grid-template-columns:100px 1fr 30px;gap:8px;align-items:center;font-size:12px;margin:8px 0;color:#c5d8e4}.fl-bar-track{background:#18374c;height:7px;border-radius:3px;overflow:hidden}.fl-bar-track i{background:#6bd8ed;height:100%;display:block}.fl-week-state{padding:16px;border:1px solid #355469;background:#102637;border-radius:9px}.fl-week-state h3{margin:0 0 10px}.fl-detail .fl-table small{display:block;color:#e8c67b}.fl-comparison .fl-takeaway{padding:12px 0;border-top:1px solid #315069}.fl-comparison .fl-takeaway br{display:block;margin:8px 0}.fl-heading h2{font-size:23px}.fl-row-head{padding:8px 14px}.fl-method{color:#b7cbd9}
@media(min-width:701px){.fl-row>div>small:first-child{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.fl-row>div>span{font-size:11px}}
@media(max-width:700px){.fl-team-heading{font-size:17px}.fl-team-heading span{font-size:11px}.fl-detail-values{grid-template-columns:1fr 1fr;gap:12px;padding:12px}.fl-detail-values>div:last-child{grid-column:1/-1}.fl-detail-values>div:last-child b{font-size:21px}.fl-detail-values b{font-size:28px}.fl-explain,.fl-workload-charts{grid-template-columns:1fr}.fl-workload-charts>h3,.fl-workload-charts>.fl-note{grid-column:1}.fl-detail>header{align-items:start}.fl-detail>header button{padding:8px;font-size:12px;white-space:nowrap}.fl-takeaway{font-size:16px}.fl-row-usage{font-size:13px}.fl-row>button strong{font-size:19px}}
.fl-history td:nth-child(n+2){color:#71dff2}
.fi-intelligence{color:#f2f7fb}.fi-hero{padding:18px 22px;background:linear-gradient(120deg,#173c50,#091d2c);border:1px solid #34566b;border-radius:12px}.fi-hero h2{font-size:32px;line-height:1.2;margin:12px 0}.fi-hero h2 span{font-size:17px;color:#98b2c4}.fi-hero strong{color:#71dff2}.fi-hero nav{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0}.fi-intelligence a{color:#8cdef0;min-height:44px;display:inline-flex;align-items:center}.fi-intelligence>h2,.fi-intelligence>section>h2,#fi-rankings>h2{font-size:23px;margin:26px 0 14px}.fi-sides{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fi-team,.fi-situation,.fi-player-team,.fi-comparison{background:#0d2434;border:1px solid #2d4c60;border-radius:10px;padding:16px}.fi-team h3{font-size:21px;margin:0 0 14px}.fi-team h3 span{display:block;font-size:13px;color:#b4cbd9;margin-top:5px}.fi-tag{display:block;color:#bdd0dd;font-size:12px;letter-spacing:.025em}.fi-tag.forecast,.fi-projections dd{color:#edce78}.fi-tag.actual{color:#71dff2}.fi-takeaway{font-size:19px;line-height:1.45}.fi-period{font-size:12px;color:#b5c9d6;line-height:1.6}.fi-values{display:flex;flex-wrap:wrap;gap:12px 22px;margin:12px 0}.fi-values>div{min-width:95px}.fi-values dt{font-size:12px;color:#bbcedb}.fi-values dd{font-size:25px;font-weight:750;margin:2px 0}.fi-intelligence summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:650}.fi-intelligence details{border-top:1px solid #294556;margin-top:10px}.fi-situation{margin:10px 0}.fi-situation>summary{font-size:18px}.fi-intelligence li{line-height:1.55;margin:8px 0}.fi-intelligence ul{padding-left:20px}.fi-player-team>h3{font-size:23px;margin:0 0 12px}.fi-player{padding:12px 0;border-top:1px solid #294556}.fi-player h4{font-size:18px;margin:4px 0}.fi-player header span{font-size:12px;color:#b3c8d6}.fi-player .fi-values dd{font-size:23px}.fi-player .fi-values>div{min-width:90px}.fi-links{font-size:13px}.fi-situation .sh-values{font-size:13px}.fi-intelligence .team-perspective{margin-bottom:0}.fi-intelligence p{line-height:1.55}.fi-intelligence .fi-team>ul{font-size:15px}@media(max-width:700px){.fi-sides{grid-template-columns:1fr}.fi-hero{padding:15px}.fi-hero h2{font-size:25px}.fi-hero nav{gap:4px 16px}.fi-team,.fi-situation,.fi-player-team{padding:13px}.fi-values{gap:10px 14px}.fi-values dd{font-size:23px}.fi-takeaway{font-size:18px}.fi-intelligence .sh-sides{grid-template-columns:1fr}}
.fi-values dt{min-height:44px;display:flex;align-items:center}
@media(max-width:700px){.fi-hero nav{flex-wrap:nowrap;overflow-x:auto;gap:16px;margin:6px 0}.fi-hero nav a{flex-shrink:0}.fi-hero>p{font-size:13px;margin:8px 0}.fi-hero .team-perspective button{white-space:nowrap;font-size:13px}.fi-hero h2{margin:8px 0}.fi-intelligence>h2{margin-top:18px}}

/* Release finish: matchup conclusions first, one shared sourcebook. */
.fi-hero{padding:12px 18px}.fi-hero h2{margin:7px 0;font-size:29px}.fi-hero nav{margin:4px 0;gap:8px 18px}.fi-hero>p{margin:5px 0;font-size:13px}.fi-takeaways{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fi-takeaway-card,.fi-published{padding:14px 16px;background:#0d2536;border:1px solid #345269;border-radius:9px}.fi-takeaway-card h3{font-size:20px;line-height:1.35;margin:8px 0}.fi-takeaway-card dd{color:#71dff2;font-size:31px}.fi-takeaway-card p{margin:5px 0;font-size:13px;color:#c2d4df}.fi-takeaway-card dt{min-height:24px}.fi-published{margin:12px 0;border-top:2px solid #cdb571}.fi-published h3{margin:0 0 8px;font-size:18px;color:#eed28e}.fi-published h4{font-size:15px;margin:8px 0}.fi-published p{font-size:14px;margin:6px 0}.fi-published a{font-size:13px}.fi-intelligence h3,.fi-intelligence h4,.fl-row strong{overflow-wrap:anywhere}.fi-intelligence>section>h2,#fi-rankings>h2{margin:20px 0 10px}.fi-situation .fi-sides>section{min-width:0}#fi-sourcebook{scroll-margin-top:24px}#fi-sourcebook summary{min-height:44px;cursor:pointer}.fi-player-grid{min-width:0}.fi-player .fi-values{gap:10px 18px}.fi-player .fi-values dt{min-height:28px}
@media(max-width:700px){.fi-takeaways{grid-template-columns:1fr}.fi-takeaway-card{padding:12px}.fi-takeaway-card h3{font-size:19px}.fi-hero{padding:12px}.fi-hero h2{font-size:24px}.fi-published{padding:12px}.fi-intelligence>section>h2{font-size:21px}.fi-values>div{min-width:85px}.fi-published .fi-sides{gap:8px}}

.fi-player .fi-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fi-player .fi-values>div{min-width:0}.fi-player .fi-values dt{height:44px;min-height:44px;gap:3px}.fi-player .fi-values dd{margin:2px 0}.fi-intelligence>.fi-period{margin:6px 0 10px}.nfl-team-route:has(.fi-intelligence) .top{padding:4px 0}.nfl-team-route:has(.fi-intelligence) .top .eyebrow{font-size:10px}
@media(max-width:700px){.fi-player .fi-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 8px}.fi-player .fi-values dt{font-size:11px}.fi-hero .team-perspective{margin-top:6px}.fi-hero>p{font-size:12px;line-height:1.45}.fi-hero h2{font-size:22px}.fi-intelligence>.fi-period{font-size:11px;line-height:1.45}.nfl-team-route:has(.fi-intelligence) .top h1{font-size:25px;margin:6px 0}.nfl-team-route:has(.fi-intelligence) .btn-branches,.fi-hero nav{scrollbar-width:none}.fi-intelligence>h2{margin:15px 0 8px}.fi-takeaway-card h3{margin:6px 0}.fi-takeaway-card .fi-values{margin:7px 0}.fi-takeaway-card .fi-values dd{font-size:28px}}

/* Final presentation: one persistent section navigator, compact matchup tools. */
.fi-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 18px;border-radius:12px 12px 0 0}.fi-game h2{margin:6px 0;font-size:29px;line-height:1.25}.fi-game p{margin:5px 0;font-size:12px;color:#bdd0dd}.fi-hero-tools .team-perspective{display:flex;gap:8px;margin:0}.fi-hero-tools button{min-width:145px;min-height:44px}.fi-section-nav{position:sticky;top:0;z-index:25;display:flex;gap:5px;padding:5px 8px;margin:0 0 14px;background:#0b2031;border:1px solid #34566b;border-top:0;border-radius:0 0 9px 9px;box-shadow:0 5px 14px #020c1466;overflow-x:auto;scrollbar-width:none}.fi-section-nav a{flex:1;text-align:center;white-space:nowrap;text-decoration:none;color:#c5d7e2;font-size:13px;padding:12px 9px;min-height:44px;box-sizing:border-box;border-radius:6px;display:flex;align-items:center;justify-content:center}.fi-section-nav a[aria-current]{background:#1b4156;color:#fff;box-shadow:inset 0 -2px #76dcef}.fi-section-nav a:focus-visible,.fi-position-nav button:focus-visible{outline:2px solid #edce78;outline-offset:-3px}.fi-intelligence [id],#fi-rankings,#fl-selected,#fi-sourcebook{scroll-margin-top:76px}.fi-takeaway-card h3{font-size:22px;line-height:1.3}.fi-position-nav{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 14px}.fi-position-nav button{background:#102a3d;color:#d8e5ed;border:1px solid #345166;border-radius:7px;font:inherit;font-size:13px;padding:10px 15px;min-height:44px;cursor:pointer}.fi-position-nav button[aria-pressed=true]{background:#235069;border-color:#7fdcea;color:#fff;box-shadow:inset 0 -2px #7fdcea}.fi-player-team [hidden]{display:none!important}.fi-player-team>h3{margin-bottom:6px}.fi-player-team>details{margin-top:4px}.fi-player-team>details>summary{padding:6px 0}.fi-player{padding:10px 0}.fi-player header{min-height:50px}.fi-player h4{font-size:19px}.fi-player .fi-metric-group.primary .fi-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 9px}.fi-player .fi-metric-group.primary dd{font-size:31px;color:#f0d386}.fi-player .fi-metric-group.support{padding:9px 0;border-top:1px solid #294658}.fi-player .fi-metric-group.support .fi-values{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:3px 0}.fi-player .fi-metric-group.support dd{font-size:18px;color:#e1c786}.fi-player .fi-metric-group .fi-values dt{height:44px;font-size:12px;line-height:1.25}.fi-player .fi-metric-group>.fi-tag{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#b6cbd9}.fi-player .fi-metric-group.primary{margin-top:10px}.fi-player .fi-period{margin:7px 0}.fi-player details{margin-top:5px}.fi-player summary{padding:6px 0}.fi-player .fi-values dt button{font-size:inherit}.fi-duel{background:#0d2536;border:1px solid #345269;border-radius:10px;padding:16px}.fi-duel-players{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fi-duel-players section{min-width:0;padding:0 12px 12px;border-bottom:2px solid #b79e61}.fi-duel-players h3{font-size:22px;margin:0 0 5px;overflow-wrap:anywhere}.fi-duel-players span,.fi-duel-players small{display:block;color:#c4d6e1;font-size:12px}.fi-duel-players strong{display:block;font-size:38px;color:#edce78;line-height:1.2;margin:8px 0 2px}.fi-duel-edge{font-size:14px;padding:10px 12px;background:#193347;border-radius:6px;margin:12px 0}.fi-duel-edge b{color:#edce78}.fi-duel-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.fi-duel-table caption{text-align:left;color:#bacfdc;font-size:12px;padding:4px 0 10px}.fi-duel-table th,.fi-duel-table td{padding:8px;border-bottom:1px solid #2b485b;overflow-wrap:anywhere}.fi-duel-table th{text-align:left;font-weight:500;color:#d8e5ed}.fi-duel-table th:not(:first-child),.fi-duel-table td{text-align:right}.fi-duel-table td{color:#edce78;font-variant-numeric:tabular-nums;font-size:16px}.fi-duel-trade{font-size:14px;margin:12px 0!important}.fi-duel-actual{border-top:2px solid #5abbd0;margin:14px 0 0;padding:10px 0 0}.fi-duel-actual h4{font-size:13px;color:#c7e7ed;margin:0 0 6px}.fi-duel-actual>div{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fi-duel-actual p{margin:4px 0}.fi-duel-actual span{display:block;font-size:13px}.fi-duel-actual strong{font-size:25px;color:#71dff2}.fi-duel-actual small{font-size:11px;color:#bdd2df}.fi-duel>.fi-period{margin:9px 0 0}.fi-intelligence>section>h2{margin-top:20px}
@media(max-width:700px){.fi-hero{grid-template-columns:1fr;padding:12px;gap:8px}.fi-game h2{font-size:23px}.fi-hero-tools .team-perspective{width:100%}.fi-hero-tools button{flex:1;min-width:0}.fi-section-nav{padding:4px;gap:4px;margin-bottom:10px}.fi-section-nav a{flex:0 0 auto;font-size:12px;padding:10px}.fi-position-nav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:3px;gap:5px}.fi-position-nav button{flex-shrink:0;padding:10px 12px}.fi-takeaway-card h3{font-size:19px}.fi-player .fi-metric-group.primary dd{font-size:27px}.fi-player .fi-metric-group.support .fi-values{grid-template-columns:repeat(3,minmax(0,1fr))}.fi-player .fi-metric-group .fi-values dt{font-size:11px}.fi-player .fi-metric-group.support dd{font-size:17px}.fi-player header{min-height:0}.fi-duel{padding:12px}.fi-duel-players{gap:12px}.fi-duel-players section{padding:0 0 10px}.fi-duel-players h3{font-size:18px;min-height:44px}.fi-duel-players strong{font-size:33px}.fi-duel-table th,.fi-duel-table td{padding:8px 4px}.fi-duel-table{font-size:12px}.fi-duel-table th:first-child{width:36%}.fi-duel-actual>div{gap:12px}.fi-duel-actual span{min-height:38px}.fi-duel-edge{padding:9px;font-size:13px}

/* Player duel: team-colored hero cards, a VS divider, and a mirrored
   "tale of the tape" bar chart replacing the plain three-column table -
   this is the moment someone decides Field Lab was worth paying for. */
.fi-duel{background:radial-gradient(ellipse at 50% 0%,#12283b,transparent 70%),linear-gradient(165deg,#0d2536,#081827);box-shadow:0 10px 30px #0005}
.fi-duel-players{position:relative;align-items:stretch}
.fi-duel-players section{border-bottom:0;border-radius:10px;padding:18px 14px!important;background:linear-gradient(160deg,color-mix(in srgb,var(--duel-fill) 30%,#0c2233),#081827);border:1px solid color-mix(in srgb,var(--duel-accent) 45%,#2b485b);position:relative;transition:transform .15s ease}
.fi-duel-players h3{color:#fff}
.fi-duel-players strong{color:var(--duel-accent);text-shadow:0 0 18px color-mix(in srgb,var(--duel-accent) 55%,transparent)}
.fi-duel-lead{transform:translateY(-4px);box-shadow:0 12px 24px color-mix(in srgb,var(--duel-accent) 30%,transparent)}
.fi-duel-crown{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--duel-accent);color:#04131f;font-size:9.5px;font-weight:800;letter-spacing:.03em;padding:3px 10px;border-radius:20px;white-space:nowrap}
.fi-duel-vs{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#8fa5b7;letter-spacing:.05em}
.fi-duel-players{display:grid;grid-template-columns:1fr auto 1fr}
.fi-tape{margin:18px 0 4px;padding:14px 8px;border:1px solid #294152;border-radius:10px;background:#0a1e2c}
.fi-tape-row{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;margin:9px 0}
.fi-tape-val{font-size:13px;font-weight:700;color:#e7eef6;font-variant-numeric:tabular-nums}
.fi-tape-row:first-child .fi-tape-val{color:var(--duel-a)}
.fi-tape-track{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;height:16px}
.fi-tape-bar{height:9px;border-radius:4px;min-width:2px}
.fi-tape-bar-a{justify-self:end}
.fi-tape-bar-b{justify-self:start}
.fi-tape-label{font-size:9.5px;color:#8fa5b7;text-align:center;white-space:nowrap;padding:0 2px}
.fi-tape-caption{font-size:11px;color:#8fa5b7;margin:6px 0 0!important}
@media(max-width:600px){.fi-duel-players{grid-template-columns:1fr auto 1fr}.fi-duel-players h3{font-size:15px}.fi-tape-row{grid-template-columns:46px 1fr 46px;gap:4px}.fi-tape-val{font-size:11px}.fi-tape-label{font-size:8.5px}}

/* Player board: each team's own color marks its section and rows, and a
   projected-PPR bar gives the number a visual length to scan instead of
   reading digits down a column. */
.fl-team-heading{border-left-color:var(--row-accent,#78cee5);background:linear-gradient(90deg,color-mix(in srgb,var(--row-accent,#17394d) 30%,#17394d),#102436)}
.fl-row{border-left:3px solid color-mix(in srgb,var(--row-accent,transparent) 55%,transparent)}
.fl-ppr-track{display:block;height:4px;background:#1c3548;border-radius:3px;margin:5px 0 3px;overflow:hidden;max-width:120px}
.fl-ppr-track i{display:block;height:100%;background:var(--row-accent,#edce78);border-radius:3px}
.fl-status-flag{color:#f2a89c!important;font-weight:600}}

/* Clip horizontal overflow without creating a second vertical scroll container. */
html:has(.nfl-team-route .fi-section-nav),body.nfl-team-route:has(.fi-section-nav){overflow-x:clip;overflow-y:visible}

/* The scouting report read as a citation list - flat gray cards, no color,
   same "boring" pattern the rest of the site already moved past. */
.fi-published .fi-sides>article{border-left:3px solid var(--side-accent,#cdb571);padding-left:14px;background:linear-gradient(115deg,color-mix(in srgb,var(--side-accent,#cdb571) 10%,transparent),transparent 60%);border-radius:0 8px 8px 0}
.fi-published .fi-sides>article h4{color:var(--side-accent,#eed28e)}
.fi-intelligence>h2,#fi-turns>h2,#fi-projections>h2,#fi-fantasy>h2{display:flex;align-items:center;gap:8px}

/* Command-center strip: the numbers a GM wants before scrolling into detail. */
/* This is the Pro pitch, not a stat footnote - a visitor sees this before
   anything else on the page and it needs to look like nothing else on the
   free tier: glowing accent, gradient depth, real weight per number. */
.fi-hud{margin-top:20px;padding:18px 18px 20px;border-radius:18px;background:linear-gradient(165deg,#0d2131,#081521 70%);border:1px solid #23394a;box-shadow:0 20px 50px #00000055,inset 0 1px #ffffff0d}
.fi-hud-eyebrow{margin:0 0 14px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7fe0c4;display:flex;align-items:center;gap:6px}
.fi-hud-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.fi-hud-card{position:relative;overflow:hidden;padding:18px 16px;border-radius:14px;background:linear-gradient(155deg,color-mix(in srgb,var(--hud-accent,#5be2c4) 18%,#0a1d2c),#081724 65%);border:1px solid color-mix(in srgb,var(--hud-accent,#5be2c4) 45%,#345269);box-shadow:0 10px 28px color-mix(in srgb,var(--hud-accent,#5be2c4) 18%,transparent),inset 0 1px #ffffff14;transition:transform .15s ease,box-shadow .15s ease;display:flex;flex-direction:column;gap:2px}
.fi-hud-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px color-mix(in srgb,var(--hud-accent,#5be2c4) 28%,transparent),inset 0 1px #ffffff1a}
.fi-hud-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--hud-accent,#5be2c4),transparent 85%)}
.fi-hud-card span{position:relative;display:block;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--hud-accent,#8fa9bc);margin-bottom:8px}
.fi-hud-card strong{position:relative;display:block;font-size:22px;font-weight:800;color:#fff;line-height:1.15;letter-spacing:-.01em;text-shadow:0 2px 10px #0006}
.fi-hud-card small{position:relative;display:block;font-size:11.5px;color:#c3d5e3;margin-top:2px;margin-bottom:10px;font-variant-numeric:tabular-nums}
.fi-hud-pending{background:linear-gradient(155deg,#132738,#081724 65%);border-color:#345269;box-shadow:none;align-items:center;justify-content:center;text-align:center}
.fi-hud-pending:before{background:linear-gradient(90deg,#5a7385,transparent 85%)}
.fi-hud-pending span{color:#8fa9bc}
.fi-hud-pending strong{color:#5a7385;text-shadow:none}
.fi-hud-card{min-height:0}

/* Numbers Edge: full-size radar (matches By The Numbers' own scale) + stat table.
   Given a full-width row of its own since the real radar is not a small icon. */
.fi-hud-numbers{grid-column:1/-1}
.fi-radar{margin:10px 0 6px;text-align:center}
.fi-radar svg{width:100%;max-width:280px;height:auto}
.fi-radar figcaption{font-size:10px;color:#6e8aa0;margin-top:2px}
.fi-stat-table{max-width:420px;margin:8px auto 0}
.fi-stat-head,.fi-stat-row{display:grid;grid-template-columns:1fr 46px 46px 30px;gap:6px;align-items:center}
.fi-stat-head{font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#6e8aa0;padding-bottom:4px;border-bottom:1px solid #1a3145}
.fi-stat-head span:nth-child(2),.fi-stat-head span:nth-child(3){text-align:right}
.fi-stat-row{font-size:11px;padding:4px 0;border-bottom:1px solid #1a3145}
.fi-stat-row:last-child{border-bottom:none}
.fi-stat-row .k{color:#c3d5e3;font-weight:600}
.fi-stat-row b{font-variant-numeric:tabular-nums;text-align:right;color:#fff}
.fi-stat-row .rk{font-size:9px;color:#6e8aa0;text-align:right}

/* Money Situations: offense-vs-opposing-defense rows */
.fi-situ-head{display:grid;grid-template-columns:100px 1fr 1fr;gap:8px;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#6e8aa0;padding-bottom:4px;border-bottom:1px solid #1a3145;margin-top:auto}
.fi-situ-row{display:grid;grid-template-columns:100px 1fr 1fr;align-items:center;gap:8px;font-size:11px;padding:6px 0;border-bottom:1px solid #1a3145}
.fi-situ-row:last-child{border-bottom:none}
.fi-situ-row .situ-name{font-weight:700}
.fi-situ-row .situ-name small{display:block;font-weight:500;color:#6e8aa0;font-size:9.5px}
.fi-situ-row .situ-cell{display:flex;align-items:center;gap:6px}
.fi-situ-row .situ-cell b{font-variant-numeric:tabular-nums;font-size:12px;min-width:36px;color:#fff}
.fi-situ-row .mini-track{flex:1;height:6px;border-radius:99px;background:#08141d;overflow:hidden}
.fi-situ-row .mini-track i{display:block;height:100%;border-radius:99px}
.fi-situ-row .situ-pending{grid-column:2/4;color:#6e8aa0;font-size:10.5px}

/* Defensive Battle */
.fi-db-head{display:grid;grid-template-columns:1fr 46px 46px;gap:6px;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#6e8aa0;padding-bottom:4px;border-bottom:1px solid #1a3145;margin-top:auto}
.fi-db-head span:nth-child(2),.fi-db-head span:nth-child(3){text-align:right}
.fi-db-row{display:grid;grid-template-columns:1fr 46px 46px;gap:6px;align-items:center;font-size:11px;padding:6px 0;border-bottom:1px solid #1a3145}
.fi-db-row:last-child{border-bottom:none}
.fi-db-row .k{color:#c3d5e3;font-weight:600}
.fi-db-row b{font-variant-numeric:tabular-nums;text-align:right;color:#fff}

/* Fantasy Watch: two per-team leaderboards */
.fi-fp-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:auto}
.fi-fp-col-head{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid #1a3145}
.fi-fp-row{display:flex;align-items:center;gap:7px;padding:4px 0}
.fi-fp-rank{width:13px;font-size:9.5px;color:#6e8aa0;font-weight:800}
.fi-fp-name{flex:1;font-size:11px;font-weight:600;min-width:0;color:#e7eef4}
.fi-fp-name small{display:block;color:#6e8aa0;font-size:9.5px;font-weight:500}
.fi-fp-ppr{font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;color:#f0c05a}
.fi-dst-row{display:flex;justify-content:space-between;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed #29485d;font-size:10.5px;color:#6e8aa0}
@media(max-width:900px){.fi-hud-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.fi-hud-grid{grid-template-columns:1fr}.fi-hud-card strong{font-size:20px}.fi-fp-cols{grid-template-columns:1fr}}
