:root{--ink:#10211d;--green:#0b201a;--lime:#d7f48b;--paper:#f5f6f0;--muted:#647268;--line:#ced6c9;--display:Impact,'Arial Narrow',system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.55}a{color:inherit}a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #478e59;outline-offset:5px}h1,h2,h3,p{margin-top:0}.wrap{width:min(1100px,100% - 48px);margin-inline:auto}.masthead{background:var(--green);color:var(--paper)}.mast-inner{width:min(1100px,100% - 48px);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}.brand{font-size:17px;font-weight:850;letter-spacing:.04em;text-decoration:none;display:flex;gap:10px;align-items:center}.brand-mark{width:30px;height:30px;display:grid;place-items:center;background:var(--lime);color:var(--green);font-weight:950;border-radius:4px}.edition{font-size:13px;letter-spacing:.09em;font-weight:650}nav{position:sticky;top:0;z-index:10;background:rgba(245,246,240,.97);border-bottom:1px solid var(--line)}nav>div{width:min(1100px,100% - 48px);margin:auto;display:flex;gap:30px;overflow:auto;scrollbar-width:none}nav a{font-size:14px;font-weight:700;text-decoration:none;padding:16px 0;white-space:nowrap}nav a:hover{color:#487025}.lead{padding-block:54px 0}.eyebrow{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}h1{font-size:clamp(48px,8vw,86px);line-height:1.03;letter-spacing:-.065em;font-weight:900;margin-bottom:28px}h1 span{color:#47722e}.intro{max-width:760px;font-size:19px;line-height:1.75}.intro p{margin-bottom:17px}.quick-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}.quick-scores>div+div{border-left:1px solid var(--line);padding-left:30px}.quick-scores span{font-size:12px;font-weight:750;letter-spacing:.07em;display:block}.quick-scores strong{font-size:44px;line-height:1.3;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.section{padding-block:64px}.section-heading{margin-bottom:24px}.section-heading .eyebrow{margin-bottom:8px}h2{font-size:clamp(30px,4.5vw,46px);line-height:1.16;letter-spacing:-.045em;margin-bottom:0}.section-deck{font-size:18px;color:var(--muted);margin-top:-9px;margin-bottom:30px}.matchups{display:grid;grid-template-columns:1fr 1fr;gap:22px}.matchup{border:1px solid var(--line);background:#fcfdf7;border-radius:10px;padding:23px}.scoreline{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;margin-bottom:14px}.scoreline .team-name{font-size:14px;line-height:1.35;font-weight:600}.scoreline strong{font-size:23px;position:relative;font-variant-numeric:tabular-nums;letter-spacing:-.035em}.winner strong{color:#2e6d39}.win-label{display:block;font-size:11px;letter-spacing:.08em;color:#497141;margin-top:5px}.team-badge{display:inline-flex;justify-content:center;align-items:center;min-width:51px;height:30px;padding:3px 7px;border-radius:5px;background:var(--team);color:#fff;font-size:13px;font-weight:800;letter-spacing:.015em}.matchup p{border-top:1px solid var(--line);padding-top:18px;margin-top:19px;margin-bottom:0;font-size:16px;line-height:1.75}.race{background:var(--green);color:var(--paper)}.race .eyebrow,.race .section-deck{color:#a8bda9}.divisions{display:grid;grid-template-columns:1fr 1fr;gap:28px}.division{border:1px solid #35503e;border-radius:10px;overflow:hidden}.division header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:#122f22}.division header h3{font-size:18px;letter-spacing:.06em;margin:0}.division header span{font-size:13px;color:#abc09f}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}thead{font-size:13px;color:#9fb89f;text-align:left}th,td{padding:15px 13px;text-align:right}th:first-child,td:first-child{text-align:left}thead th:nth-child(2),tbody th:nth-child(2){text-align:left}.division th:first-child,.division td:first-child{padding-left:20px;width:32px;color:#aac29e}.division th:last-child,.division td:last-child{padding-right:20px}.division tbody tr{font-size:16px}.division tbody tr.in{background:#173522}.division tbody tr.in td:last-child{color:var(--lime)}.division tbody tr.out{background:#0f291e}.division .cut td{text-align:center;padding:3px 0;color:#ecc472;background:#183022}.cut span{font-size:10px;font-weight:700;letter-spacing:.13em;display:flex;align-items:center;gap:12px}.cut span:before,.cut span:after{content:'';height:1px;border-top:1px dashed #9c8251;flex:1}.race-note{font-size:14px;color:#b9cbb0;margin:22px 0}.model-note{font-size:15px;border-top:1px solid #35503e;padding-top:18px}.model-note summary{font-weight:650;cursor:pointer;min-height:30px}.model-note div{max-width:760px;color:#b9cbb0;padding:14px 0 0}.model-note p:last-child{margin:0}.chart-scroll{overflow-x:auto;border:1px solid #d6ded0;border-radius:10px;padding:20px 10px;background:#f9faf5;scrollbar-color:#a7ba9c #e8ecdf}.scatter-svg{display:block;width:100%;min-width:690px;font-family:Arial,sans-serif}.tick{font-size:18px;fill:#677561}.quadrant{font-size:18px;font-weight:bold}.axis-label{font-size:19px;font-weight:bold;fill:#253e2c}.team-label{font-size:17px;font-weight:bold}.plot-team:hover circle,.plot-team:focus circle{r:11}.plot-team:focus{outline:none}.plot-team:focus rect{stroke-width:3}.chart-note{font-size:14px;color:var(--muted);margin:15px 0 25px}.data-detail summary{cursor:pointer;font-size:15px;font-weight:700;padding:7px 0}.data-detail table{max-width:560px;margin-top:18px}.data-detail thead{color:#465c44}.data-detail tbody tr{border-top:1px solid var(--line)}.rank-detail{margin-top:36px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0}.rank-detail>summary{list-style:none;cursor:pointer;font-size:25px;font-weight:800;display:flex;justify-content:space-between;gap:20px;align-items:center}.rank-detail summary::-webkit-details-marker{display:none}.rank-detail small{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:3px}.rank-detail .expand{font-size:30px;font-weight:400}.rank-detail[open] .expand{transform:rotate(45deg)}.rank-detail>p{font-size:16px;margin-top:24px}.rank-svg{min-width:840px;display:block;width:100%;font-family:Arial,sans-serif}.rank-empty{font-size:39px;fill:#253e2c;font-weight:bold}.hardware{background:#e6eddc;border-top:1px solid #cdd7c4;border-bottom:1px solid #cdd7c4}.bounty{padding:23px 27px;border:1px solid #b9c9a8;background:#f7f9f1;border-radius:8px;display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-bottom:25px}.bounty>div{display:flex;align-items:center;gap:10px}.bounty h3{margin:0;font-size:21px}.bounty-icon{font-size:25px}.bounty p{font-size:16px;margin:0;flex:1}.pending{font-size:11px;letter-spacing:.06em;font-weight:750;color:#6c765f;background:#e7ebdf;padding:7px 9px;border-radius:4px}.awards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.award{padding:24px;border:1px solid #c4d0b8;border-radius:8px;background:#f7f9f2}.award-label{display:flex;gap:9px;align-items:center;margin-bottom:18px}.award-label h3{font-size:15px;margin:0}.award-label span{font-size:19px}.award-score{font-size:42px;line-height:1.3;letter-spacing:-.04em;display:block}.award-person{font-size:17px;font-weight:700;margin-top:8px}.award p{font-size:14px;line-height:1.5;color:#697761;margin:4px 0 0}.shotguns{background:#10191d;color:#f3f0e5}.shotguns .eyebrow{color:#d4b36c}.shot-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:center;padding:14px 0 36px}.shot-feature>div{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.shot-icon{font-size:45px}.shot-feature strong{font-size:76px;letter-spacing:-.04em;color:#edc370;font-variant-numeric:tabular-nums}.shot-feature>div>span:last-child{width:100%;font-size:12px;letter-spacing:.1em;color:#b4b8af}.shot-feature p{font-size:18px;line-height:1.8;margin:0;color:#d1d6cd}.scoreboard-head{border-top:1px solid #3c4545;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 0 18px;flex-wrap:wrap}.scoreboard-head h3{font-size:16px;letter-spacing:.06em;margin:0;color:#edc370}.scoreboard-head span{font-size:14px;color:#b1b8b8}.shot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.shot-row{display:flex;align-items:center;justify-content:space-between;background:#1b2b31;border:1px solid #38474b;border-radius:6px;padding:12px 15px}.digital{font-family:ui-monospace,monospace;font-size:28px;color:#edc370;display:block;width:48px;text-align:center;background:#0d191e;border-radius:4px}.shot-note{font-size:14px;color:#a9b5b5;margin:16px 0 30px}.outstanding{border-top:1px solid #3c4545;padding-top:23px}.outstanding h3{font-size:18px;margin-bottom:7px}.outstanding p{font-size:16px;color:#a9b5b5;margin-bottom:0}footer{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding-block:29px}footer>span,footer p{font-size:13px;color:var(--muted)}footer p{width:100%;margin:0}.skip{position:absolute;top:-60px;padding:12px 20px;background:var(--lime);z-index:30}.skip:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.wrap,.mast-inner,nav>div{width:calc(100% - 36px)}.mast-inner{padding:18px 0}.brand{font-size:15px}.edition{font-size:12px}nav>div{gap:24px}nav a{font-size:13px;padding-block:14px}.lead{padding-top:35px}h1{font-size:52px}.intro{font-size:17px}.quick-scores{gap:10px;padding-block:21px}.quick-scores>div+div{padding-left:12px}.quick-scores span{font-size:10px;letter-spacing:.02em}.quick-scores strong{font-size:31px}.section{padding-block:44px}.matchups,.divisions{grid-template-columns:1fr}.matchup{padding:20px}.matchup p{font-size:16px}.scoreline{grid-template-columns:51px 1fr auto}.scoreline strong{font-size:22px}.scoreline .team-name{font-size:14px}.section-deck{font-size:16px}.divisions{gap:24px}.division th,.division td{padding:14px 8px}.division th:first-child,.division td:first-child{padding-left:14px}.division th:last-child,.division td:last-child{padding-right:14px}.division tbody tr{font-size:16px}.division .team-badge{font-size:13px}.awards{grid-template-columns:1fr 1fr;gap:12px}.award{padding:17px}.award-label{gap:7px;align-items:flex-start}.award-label h3{font-size:14px}.award-score{font-size:35px}.award-person{font-size:16px}.bounty{padding:20px;gap:12px}.bounty>div{width:100%}.bounty p{font-size:15px;flex-basis:100%}.shot-feature{grid-template-columns:1fr;gap:20px}.shot-feature strong{font-size:66px}.shot-feature p{font-size:17px}.shot-grid{grid-template-columns:1fr 1fr}.shot-row{padding:11px}.scoreboard-head{gap:8px}.scoreboard-head span{width:100%}.chart-scroll{padding:12px 0}.rank-detail>summary{font-size:23px}.rank-detail small{font-size:14px}}@media(max-width:360px){h1{font-size:45px}.quick-scores strong{font-size:27px}.quick-scores span{font-size:10px}.matchup{padding:15px}.scoreline{gap:7px}.scoreline strong{font-size:20px}.team-badge{min-width:47px}.award{padding:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(min-width:1500px){.wrap,.mast-inner,nav>div{width:min(1160px,100% - 64px)}}
.win-label,.cut span,.pending,.quick-scores span{font-size:12px}
h1{letter-spacing:-.045em}h2{letter-spacing:-.025em}@media(max-width:760px){h1{font-size:48px}}@media(max-width:360px){h1{font-size:43px}}

.week-nav{display:flex;align-items:center;gap:14px;margin:-18px 0 30px;font-size:14px;color:var(--muted)}
.week-nav>a{padding:10px 0;text-underline-offset:4px}.week-nav>span{color:#9aa693}
.week-picker{position:relative}.week-picker>summary{cursor:pointer;list-style:none;display:flex;gap:12px;align-items:center;padding:10px 8px;font-weight:750;color:var(--ink)}
.week-picker>summary::-webkit-details-marker{display:none}.week-menu{position:absolute;z-index:12;top:100%;left:0;min-width:160px;background:#fcfdf7;border:1px solid var(--line);border-radius:8px;padding:6px;box-shadow:0 8px 20px #10211d15}
.week-menu a{display:block;white-space:nowrap;text-decoration:none;padding:11px 12px;border-radius:4px}.week-menu a:hover,.week-menu a[aria-current]{background:#e6eddc;color:var(--ink)}
.week-menu a:last-child{border-top:1px solid var(--line);margin-top:5px;border-radius:0}.quick-scores small{display:block;font-size:14px;line-height:1.6;color:var(--muted);font-weight:650}.quick-scores{margin-top:28px}
.bounty{display:grid;grid-template-columns:1fr auto;gap:18px 36px;padding:27px}.bounty .bounty-heading{grid-column:1/-1;display:flex;width:auto}.bounty h3 span{font-size:13px;color:var(--muted);font-weight:600;margin-left:10px}
.bounty .bounty-challenge{display:block;align-self:start}.bounty h4{font-size:23px;line-height:1.3;margin:0 0 7px;max-width:370px}.bounty .bounty-challenge p{font-size:14px;color:var(--muted)}
.bounty .bounty-result{display:flex;align-items:center;gap:36px}.bounty-winner{font-size:23px;font-weight:800;display:block}.bounty-team{display:block;font-size:14px;color:var(--muted);margin:2px 0 10px}.bounty .bounty-result p{font-size:17px;font-weight:650}
.bounty-stat{text-align:right}.bounty-stat strong{display:block;font-size:54px;line-height:1.1;letter-spacing:-.04em;color:#2e6d39}.bounty-stat span{font-size:13px;white-space:nowrap}.bounty .bounty-roast{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px;font-size:16px}
.outstanding p{display:flex;justify-content:space-between;gap:20px}.outstanding strong{color:#e0e5da;font-weight:650}.archive-link{font-size:14px;text-underline-offset:4px;color:var(--muted)}
.season-archive{padding-block:60px}.season-archive h1{font-size:clamp(42px,6vw,70px)}.season-archive .section-deck{margin-top:0}.archive-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:40px}.week-card{display:block;padding:28px;border:1px solid var(--line);border-radius:10px;background:#fcfdf7;text-decoration:none}.week-card .eyebrow{display:block}.week-card h2{font-size:32px;line-height:1.25;margin-bottom:24px}.read-recap{font-size:14px;font-weight:750;color:#47722e}.week-card:hover{border-color:#789b49}
@media(max-width:760px){.week-nav{margin-top:-12px;margin-bottom:22px}.bounty{grid-template-columns:1fr;padding:20px;gap:18px}.bounty .bounty-heading,.bounty .bounty-roast{grid-column:auto}.bounty h4{font-size:21px}.bounty .bounty-result{justify-content:space-between;gap:20px}.bounty-stat strong{font-size:48px}.bounty-winner{font-size:22px}.bounty .bounty-result p{font-size:16px}.quick-scores small{font-size:12px}.archive-grid{grid-template-columns:1fr}.season-archive{padding-block:40px}.week-card{padding:23px}}

.quick-scores{row-gap:4px}.quick-scores>div{display:grid;grid-row:span 3;grid-template-rows:subgrid}
@supports not (grid-template-rows:subgrid){.quick-scores>div{grid-template-rows:auto auto 1fr}.quick-scores>div>span{min-height:3.1em}}

/* League-wide strength board. Keep the complete ranking readable on a phone. */
.power-rankings{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fcfdf7}
.power-caption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:18px 24px;background:var(--green);color:var(--lime);font-size:.875rem;font-weight:750;letter-spacing:.08em}
.power-table{table-layout:fixed;width:100%}
.power-table th,.power-table td{padding:13px 24px;border-bottom:1px solid #e0e5d9;text-align:left}
.power-table thead th{font-size:.875rem;font-weight:700;color:var(--muted);line-height:1.35;padding-block:16px}
.power-table th:first-child{width:18%}.power-table th:nth-child(2){width:32%}.power-table th:nth-child(3){width:22%}.power-table th:last-child{width:28%}
.power-table th:last-child,.power-table td:last-child{text-align:right}
.power-table .team-badge{font-size:.875rem;min-width:64px;height:32px}
.power-table .power-place{font-size:1.5rem;line-height:1.3;letter-spacing:-.04em;font-weight:850;color:#778373}
.power-table .power-record{font-size:1rem;color:var(--muted)}
.power-table .power-value{font-size:1.375rem;line-height:1.3;font-weight:800;letter-spacing:-.03em}
.power-table .power-leader{background:#e8f1d8}.power-table .power-leader .power-place,.power-table .power-leader .power-value{color:#365e20}
.power-aside{margin:0;padding:20px 24px 0;font-size:1rem;color:var(--muted)}
.power-method{padding:20px 24px;font-size:.875rem}.power-method summary{cursor:pointer;font-weight:750;min-height:24px}.power-method div{max-width:760px;padding-top:18px;color:var(--muted);font-size:1rem}.power-method p:last-child{margin-bottom:0}
.numbers-subheading{font-size:clamp(1.8rem,4vw,2.625rem);line-height:1.1;letter-spacing:-.045em;margin:60px 0 24px}
@media(max-width:600px){.power-caption{padding:16px;font-size:.875rem;letter-spacing:.025em}.power-table th,.power-table td{padding:13px 10px}.power-table th:first-child{width:17%}.power-table th:nth-child(2){width:26%}.power-table th:nth-child(3){width:24%}.power-table th:last-child{width:33%}.power-table .team-badge{min-width:0;max-width:100%;height:auto;min-height:30px;padding:3px 5px;overflow-wrap:anywhere}.power-table .power-place{font-size:1.25rem}.power-table .power-value{font-size:1.25rem}.power-table .power-record{font-size:.875rem}.power-aside,.power-method{padding:18px 16px}.power-aside{padding-bottom:0}.numbers-subheading{margin-top:44px}}
