/* The original typography, colors and spacing remain the base. */
[hidden]{display:none!important}
.brand{color:var(--fg);text-decoration:none}.brand-kbo{color:var(--fg-3)}
.navlinks{gap:20px}.navlinks a{font-size:15px}.nav-in{gap:24px}
#main{min-height:60vh;padding-top:40px;padding-bottom:12px}
#main:focus{outline:0}.page-loading{padding:80px 0;color:var(--fg-2)}
.phead{margin-bottom:26px}.phead h1{font-size:30px;line-height:1.3;font-weight:500}
.phead p{max-width:75ch}.pbody{max-width:1040px}.lede{max-width:65ch}
.site-footer{border-top:1px solid var(--line);margin-top:48px;padding-top:26px;padding-bottom:26px}
.footer-contact{display:flex;justify-content:space-between;gap:20px;align-items:center}
.footer-contact p{font-size:14px;color:var(--fg-2);margin-top:5px}.footline{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px}
.footline a{color:inherit}.section-link{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px}
.section-link h2{font-size:20px;font-weight:500}.section-link h3{font-size:16px;font-weight:500}
.reading-note{font-size:14px;color:var(--fg-2);line-height:1.8;margin:12px 0 20px;max-width:90ch}
.status-note{border-left:2px solid var(--line-2);padding:9px 14px;margin:18px 0;color:var(--fg-2);font-size:12.5px;line-height:1.8}
.status-note strong{color:var(--fg);font-weight:600}.metric-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;gap:20px;margin:20px 0}
.metric-strip .k{color:var(--fg-2);font-size:11.5px;margin-bottom:8px}.metric-strip .v{font-size:26px;font-family:var(--serif);line-height:1.2}.metric-strip small{display:block;color:var(--fg-2);font-size:13px;margin-top:7px}
.season-register{margin-bottom:28px}.season-register th,.season-register td{text-align:right}.season-register th:first-child,.season-register td:first-child,.season-register th:nth-child(2),.season-register td:nth-child(2){text-align:left}
.season-register a{color:var(--blue);text-decoration:none}.season-register tr.selected td{background:var(--panel)}
.table-scroll{overflow:auto;max-width:100%;overscroll-behavior-x:contain}.table-scroll table{width:100%;border-collapse:collapse;white-space:nowrap}.record-table{min-width:730px}
.record-table th,.record-table td{text-align:left}.record-table .q,.record-table .num{text-align:right}.record-table a{color:var(--fg);text-decoration:none}.record-table a:hover{color:var(--blue);text-decoration:underline}
.record-table small{display:block;color:var(--fg-2);font-size:10.5px}.result-hit{color:var(--blue)}.result-miss{color:var(--red)}
.filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin:22px 0 16px}.filter-field{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--fg-2)}
.filter-field select,.filter-field input{font:inherit;font-size:15px;color:var(--fg);background:var(--bg);border:1px solid var(--line-2);border-radius:5px;padding:8px 11px;min-height:37px;max-width:100%}
.filter-actions{margin-left:auto;display:flex;gap:14px;align-items:center}.filter-count{font-size:14px;color:var(--fg-2);margin:12px 0}
.pager{display:flex;gap:20px;align-items:center;justify-content:flex-end;margin:18px 0;font-size:14px}.pager button:disabled{opacity:.4;cursor:default}
.scope-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.scope-tabs a{padding:6px 12px;border:1px solid var(--line-2);border-radius:5px;color:var(--fg-2);font-size:14px;text-decoration:none}.scope-tabs a[aria-current]{color:var(--blue);background:var(--blue-soft);border-color:#c6d5f7}
.empty-state{padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:16px 0}.empty-state h3{font-size:15px;font-weight:500;margin-bottom:8px}.empty-state p{font-size:12.5px;color:var(--fg-2);line-height:1.8;max-width:80ch}.empty-state .lnk{margin-top:14px;display:inline-block}
.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.chart-panel{min-width:0;padding:18px 0 24px;border-top:1px solid var(--line)}
.chart-grid>.table-scroll{grid-column:1/-1}.section-link{flex-wrap:wrap}.sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.chart-panel h3{font-size:16px;font-weight:500;margin-bottom:8px}.chart-panel svg{display:block;width:100%;height:auto;max-height:330px}.chart-panel .chart-note{font-size:13px;line-height:1.7;color:var(--fg-2);margin-top:8px}.chart-panel.wide{grid-column:1/-1}
.chart-grid line.grid{stroke:var(--line)}.chart-grid text{fill:var(--fg-2);font-family:var(--sans);font-size:13px}.chart-grid .actual{stroke:var(--blue);fill:none}.chart-grid .baseline{stroke:var(--fg-3);stroke-dasharray:5 4;fill:none}.chart-grid circle{fill:var(--blue)}
.coverage-row{display:flex;flex-wrap:wrap;gap:12px 25px;font-size:12.5px;margin:18px 0}.coverage-row strong{font-weight:600}.coverage-bar{display:flex;height:9px;background:var(--panel-2);margin:12px 0;max-width:700px}.coverage-bar .strict{background:var(--blue)}.coverage-bar .candidate{background:#a7bce8}.coverage-bar .missing{background:var(--line-2)}.coverage-bar .tie{background:#eceef1}
.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;margin:20px 0}.detail-facts div{border-bottom:1px solid var(--line);padding:12px 0}.detail-facts dt{font-size:11.5px;color:var(--fg-2);margin-bottom:4px}.detail-facts dd{font-size:15px;overflow-wrap:anywhere}
.hero-prob{display:flex;gap:36px;flex-wrap:wrap;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:22px 0}.hero-prob .v{font-family:var(--serif);font-size:36px}.hero-prob .label{font-size:14px;color:var(--fg-2);margin-bottom:4px}
.shell{padding-top:0}.rail h1{font-size:30px}.rail .rcard{border-radius:8px}.rail .mini-metric{font-family:var(--serif);font-size:29px;margin:10px 0 5px}.rail .muted{font-size:14px;color:var(--fg-2)}
.game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.game-list .gc{min-width:0;overflow:hidden}.game-list .gc-top{font-size:14px;display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}.game-list .matchup{padding:17px;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.team-entry{display:flex;gap:9px;align-items:center;min-width:0}.team-entry:last-child{justify-content:flex-end}.team-entry img{width:32px;height:32px;object-fit:contain}.team-entry small{color:var(--fg-2);font-size:12px;display:block}.game-list .facts{font-size:14px;color:var(--fg-2);padding:12px 17px;border-top:1px solid var(--line);line-height:1.8}.game-list .card-prob{display:flex;justify-content:space-between;gap:12px;padding:0 17px 16px;font-size:26px;font-family:var(--serif)}.game-list .card-prob small{display:block;font-family:var(--ko);font-size:10.5px;color:var(--fg-2)}
.editorial-list{margin:14px 0}.editorial-list a{display:block;padding:20px 0;border-bottom:1px solid var(--line);color:var(--fg);text-decoration:none}.editorial-list h3{font-size:16px;font-weight:500;margin-bottom:6px}.editorial-list p{font-size:12.5px;color:var(--fg-2)}
.article{max-width:760px}.article p{margin:14px 0;line-height:1.9}.article h2{margin:28px 0 10px;font-size:19px;font-weight:500}.article ul{margin:12px 0;padding-left:20px;line-height:1.9}.article code{overflow-wrap:anywhere;font-size:14px}
.plan-columns{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin:24px 0}.plan-columns section{padding:24px 0;border-top:1px solid var(--line)}.plan-columns h2{font-family:var(--serif);font-size:24px}.plan-columns p,.plan-columns li{font-size:15px;line-height:1.9;color:var(--fg-2)}.plan-columns ul{padding-left:18px;margin:16px 0 22px}
.search-form{display:flex;gap:12px;max-width:680px;margin:20px 0}.search-form input{width:100%;min-width:0;border:1px solid var(--line-2);border-radius:5px;padding:11px 13px;font:inherit}
details{margin:16px 0;font-size:14px;color:var(--fg-2)}summary{cursor:pointer;margin-bottom:12px}.data-error{max-width:720px;margin:30px 0}.data-error h1{font-size:25px;margin-bottom:15px}.data-error p{line-height:1.8;margin-bottom:20px}
@media(max-width:1180px){.navlinks{display:none}.deskonly{display:none}.menub{display:block}.nav-in{gap:12px}.mark .tag{display:none}}
@media(max-width:1000px){.shell{grid-template-columns:240px minmax(0,1fr);gap:28px}.game-list{grid-template-columns:1fr}}
@media(max-width:760px){.shell{grid-template-columns:1fr;gap:28px}.rail .tz{padding-bottom:14px}.rail .rcard{margin-top:12px}.chart-grid{grid-template-columns:1fr;gap:16px}.metric-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 12px}.metric-strip .v{font-size:23px}.plan-columns{grid-template-columns:1fr;gap:8px}.filter-actions{margin-left:0}.footer-contact{align-items:flex-start;flex-direction:column}.phead h1{font-size:25px}#main{padding-top:28px}}
@media(max-width:480px){.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-facts{grid-template-columns:1fr}.filters{gap:10px}.filter-field{flex:1 1 42%}.filter-field select{width:100%}.hero-prob{gap:25px}.hero-prob .v{font-size:31px}.filter-actions{flex-wrap:wrap}.phead h1{font-size:23px}}

/* R17: Today's fixtures lead; the current season has a restrained blue accent. */
.shell{grid-template-columns:260px minmax(0,1fr);gap:32px}.game-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.representative-season{margin:20px 0;padding:20px 18px;background:#f1f5ff;border:1px solid #cedbfb;border-top:3px solid var(--blue);border-radius:8px}
.representative-season .eyebrow{color:var(--blue);font-size:14px;font-weight:600;margin-bottom:8px}.representative-season h2{font-size:16px;font-weight:500}
.season-brier{display:flex;align-items:baseline;gap:10px;margin:12px 0}.season-brier strong{font-family:var(--serif);font-size:46px;font-weight:500;line-height:1.1;color:var(--blue);font-variant-numeric:tabular-nums}.season-brier span{font-size:14px;color:var(--fg-2)}
.season-facts{display:flex;gap:22px;font-size:13px;color:var(--fg-2);margin:16px 0}.season-facts b{display:block;font-size:15px;font-weight:600;color:var(--fg);margin-top:4px}.representative-season>p:not(.eyebrow){font-size:11.5px;line-height:1.7;color:var(--fg-2);margin-bottom:12px}.representative-season>small{display:block;color:var(--fg-2);font-size:12px;line-height:1.6;margin-top:12px}.validation-season .mini-metric small{font-size:13px}
.fixture-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}.fixture-toolbar .scope-tabs{margin:0}.date-navigation{display:flex;align-items:center;gap:9px}.date-navigation input{background:var(--bg);border:1px solid var(--line-2);border-radius:5px;padding:6px 8px;font:inherit;font-size:14px;color:var(--fg)}.date-step{color:var(--fg-2);text-decoration:none;padding:8px;font-size:16px}
.fixture-card{display:flex;flex-direction:column;min-height:328px}.game-list .gc-top{padding:12px 14px;color:var(--fg-2);font-size:10.5px;border-bottom:0}.game-list .matchup{padding:14px;gap:8px;font-size:14px}.game-list .team-entry img{width:29px;height:29px}.game-list .team-entry{gap:6px}.game-list .matchup>span{font-size:12px;color:var(--fg-3)}
.forecast-area{margin:4px 14px 14px;background:var(--panel-2);padding:12px 10px}.game-list .card-prob{padding:0;gap:8px;font-size:30px;line-height:1.2}.card-prob>span{min-width:0}.card-prob .home-prob{text-align:right;color:var(--fg)}.game-list .card-prob small{margin-top:8px;font-size:12px;line-height:1.5}.forecast-state{font-size:12px;color:var(--fg-2);line-height:1.6;margin-top:10px}
.card-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:auto}.card-facts>div{padding:10px 13px;border-bottom:1px solid var(--line)}.card-facts>div:nth-child(odd){border-right:1px solid var(--line)}.card-facts dt{font-size:12px;color:var(--fg-3);margin-bottom:4px}.card-facts dd{font-size:13px;color:var(--fg-2);overflow-wrap:anywhere}.card-open{display:block;text-align:center;text-decoration:none;color:var(--fg-2);font-size:13px;padding:12px 8px}.card-open:hover{color:var(--blue);background:var(--blue-soft)}.fixture-card:focus-within{border-color:var(--blue)}.card-score{font-size:14px;text-align:center;padding:9px;border-bottom:1px solid var(--line)}
.record-table td.home-prob{font-weight:600;color:var(--fg)}.record-table small:empty{display:none}.scope-guide{max-width:90ch;color:var(--fg-2);font-size:14px;line-height:1.8}.scope-guide>summary{color:var(--fg-2);font-size:14px}.scope-guide p{margin:8px 0}.filter-feedback{font-size:14px;color:var(--blue);margin:12px 0}.result-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.result-summary .v{font-family:var(--ko);font-size:23px}.record-table .result-hit{color:var(--blue)}.record-table .result-miss{color:var(--red)}.schedule-source a{color:var(--fg-2)}
@media(max-width:1180px){.game-list{grid-template-columns:repeat(2,minmax(0,1fr))}.shell{grid-template-columns:240px minmax(0,1fr);gap:24px}}
@media(max-width:760px){.shell{display:flex;flex-direction:column}.shell>.rail{display:contents}.rail>h1{order:0;margin-bottom:0}.rail>.lede,.rail>.tz,.rail>.rcard:not(.validation-season){display:none}.representative-season{order:1;margin:0;padding:15px 17px}.rail>.validation-season{display:block;order:2;margin:12px 0 0}.shell>div{order:3}.representative-season h2{font-size:16px}.season-brier{margin:8px 0}.season-brier strong{font-size:38px}.season-facts{margin:8px 0;gap:30px}.game-list{grid-template-columns:repeat(2,minmax(0,1fr))}.fixture-toolbar{gap:12px}.fixture-toolbar .scope-tabs a{padding:6px 9px}.result-summary{grid-template-columns:1fr}.result-summary .v{font-size:23px}}
@media(max-width:540px){.game-list{grid-template-columns:1fr}.fixture-card{min-height:310px}.game-list .matchup{padding:16px}.game-list .card-prob{font-size:34px}.fixture-toolbar{align-items:flex-start;flex-direction:column}.filter-field{flex:1 1 44%}}

/* R18: existing typography and spacing; compact navigation and readable facts. */
.telegram-banner{display:flex;align-items:center;gap:12px;margin:0 0 24px;padding:12px 16px;border:1px solid #e1e6ed;border-radius:7px;background:#fafbfc;color:inherit;text-decoration:none}.telegram-banner:hover{border-color:#96ace6;background:#f6f8ff}.telegram-banner strong{font-size:14px;font-weight:600}.telegram-banner small{display:block;color:#75849b;font-size:13px;margin-top:3px}.telegram-mark{font-size:21px;color:#2359c8}.telegram-open{margin-left:auto;white-space:nowrap;color:#2359c8;font-size:14px}.calendar-links{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:10px 0;color:#75849b;font-size:13px}.calendar-links select{font:inherit;padding:5px;border:1px solid #d8dde5;border-radius:4px;background:white;color:#18212d}.date-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:10px 0 22px}.date-strip a{padding:9px 4px;text-align:center;border-bottom:2px solid transparent;text-decoration:none;color:#75849b}.date-strip b{display:block;font-size:14px;font-weight:500}.date-strip small{display:block;font-size:12px;margin-top:4px}.date-strip a[aria-current]{color:#1b4fd8;background:#f5f7fd;border-bottom-color:#1b4fd8}.detail-nav{display:flex;gap:25px;flex-wrap:wrap;border-bottom:1px solid #e0e4ec;padding:0 0 15px;margin-bottom:20px;font-size:14px}.detail-nav a{color:#537094;text-decoration:none}.detail-back{display:flex;justify-content:space-between;gap:15px;margin-bottom:26px}.detail-score{font-size:16px;display:flex;gap:24px;align-items:center}.detail-score strong{font-size:30px}.probability-track{display:flex;height:5px;background:#eee;overflow:hidden;margin:20px 0 28px}.probability-track span:first-child{background:#b6c3de}.probability-track span:last-child{background:#2359c8}.forecast-explanation{padding:0 0 6px}.forecast-explanation h2{font-size:17px;margin-bottom:10px}.lineup-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.lineup-grid h3{font-size:17px;margin-bottom:15px}.starter-summary{padding:15px;background:#f7f8fa;margin:12px 0 18px}.starter-summary strong{display:block;font-size:17px;font-weight:500}.starter-summary span{display:block;font-size:14px;color:#75849b;margin-top:6px}.lineup-table{width:100%}.lineup-table th,.lineup-table td{padding:10px 8px}.pitching-more{margin-top:18px}.pitching-more summary{cursor:pointer;color:#2359c8;font-size:14px}.pitching-more table{font-size:13px}.innings td,.innings th{padding:10px;text-align:center;white-space:nowrap}.innings th:first-child{min-width:70px}.break-word{overflow-wrap:anywhere}section[id]{scroll-margin-top:85px}.card-facts dd{overflow-wrap:anywhere}.card-score{font-size:14px}.card-open:focus-visible,.telegram-banner:focus-visible,.date-strip a:focus-visible{outline:2px solid #1b4fd8;outline-offset:3px}
@media(max-width:650px){.lineup-grid{grid-template-columns:1fr;gap:26px}.telegram-banner{padding:11px;gap:9px}.telegram-banner small{font-size:12px}.calendar-links span{display:none}.detail-nav{gap:18px}.detail-score{gap:14px}.date-strip a{padding:9px 1px}.date-strip b{font-size:13px}}

.representative-season .metric-review{padding-top:10px;border-top:1px solid #ccdaf8;font-size:13px;color:#537094}.reconciliation-note{max-width:105ch}

/* R19 game results and prior-day comparison. */
.archive-tabs{margin:18px 0 24px}.archive-tabs .active{background:var(--fg);color:white;border-radius:5px}.official-record-table{width:100%}.official-record-table td{white-space:nowrap}.official-record-table small{display:block;color:var(--fg-3)}.research-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.research-card{border:1px solid var(--line);border-radius:6px;padding:19px;min-width:0}.research-card h3{font-size:17px;margin:0 0 14px}.research-card>p,.research-card details{font-size:13px;line-height:1.8;color:var(--fg-2);margin-top:12px}.research-card h4{font-weight:500;margin-top:14px}.research-card ul{padding-left:16px}.comparison{width:100%;font-size:14px}.comparison th,.comparison td{padding:9px 7px;vertical-align:top;white-space:normal}.comparison tbody th{color:var(--fg-3);font-weight:400;width:32%}.comparison td{width:34%;overflow-wrap:anywhere}.comparison small{display:block;font-size:12px;color:var(--fg-3);line-height:1.6;margin-top:4px}.research-card details summary{cursor:pointer;color:var(--blue)}
@media(max-width:850px){.research-grid{grid-template-columns:1fr}.research-card{padding:15px}}
/* Forecast revision history follows the existing unframed editorial layout. */
.forecast-stages{list-style:none;margin:20px 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid #dddfe4;border-bottom:1px solid #dddfe4}
.forecast-stages li{padding:16px 12px;min-width:0;border-top:2px solid transparent}
.forecast-stages li.available{border-top-color:#1b4fd8}
.forecast-stages h3{font-size:15px;margin:0 0 12px;font-weight:500}
.forecast-stages strong{display:block;font-size:25px;font-weight:500;font-variant-numeric:tabular-nums}
.forecast-stages small,.forecast-stages time{display:block;font-size:13px;line-height:1.7;color:#737d8c;overflow-wrap:anywhere}
.revision-select{display:flex;align-items:center;gap:14px;margin:20px 0;flex-wrap:wrap;font-size:14px}
.revision-select select{min-width:0;max-width:100%;padding:9px;border:1px solid #dddfe4;border-radius:4px;background:white}
.revision-probabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0;font-size:14px}
.revision-probabilities strong{display:block;font-size:28px;margin-top:8px;font-weight:500;font-variant-numeric:tabular-nums}
.revision-body details{margin:18px 0}.revision-body summary{cursor:pointer}
.forecast-history{scroll-margin-top:85px}.forecast-history h2{margin-bottom:12px}
.reference-policy{line-height:1.9}
.comparison-overview{max-width:740px;margin:24px 0}.research-index{margin:24px 0}.research-card{scroll-margin-top:90px}
.community-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:780px;margin-top:36px;padding-top:24px;border-top:1px solid #dddfe4}
.community-form h2,.community-form .full{grid-column:1/-1}.community-form label,.community-action label{display:flex;flex-direction:column;gap:8px;font-size:14px}
.community-form input,.community-form textarea,.community-action input{font:inherit;padding:12px;border:1px solid #dddfe4;border-radius:4px;background:white;min-width:0;color:inherit}
.community-form small{color:#737d8c;font-size:13px}.community-form textarea{resize:vertical;width:100%;box-sizing:border-box}
.community-list article{border-bottom:1px solid #dddfe4;padding:20px 0}.community-list h3{margin:0 0 10px;font-weight:500}.community-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}
.community-post{padding:24px 0}.community-action{font-size:14px;margin-top:14px}.community-action form{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin:16px 0}.community-action p{flex-basis:100%}
.community-form .honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.community-form [role=status]{font-size:14px;margin-top:12px}
@media(max-width:600px){.community-form{grid-template-columns:1fr}.community-action form{align-items:stretch}.community-action label{width:100%}}
@media(max-width:600px){.forecast-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.revision-probabilities{grid-template-columns:repeat(2,minmax(0,1fr))}.revision-probabilities>div:last-child{grid-column:1/-1}.forecast-stages li{padding:14px 8px}}
