/* Active October28 compact presentation; earlier boards retain their own assets. */
.clean-nhl-board{--board-accent:#a16b00;--board-panel:var(--white,#fff)}
html[data-theme="dark"] .clean-nhl-board{--board-accent:#f5c84c;--board-panel:var(--surface)}
.clean-nhl-board .shell{max-width:1100px}
.clean-nhl-board .board-section{margin-top:24px}
.clean-nhl-board .board-heading{margin-bottom:14px}
.clean-nhl-board .board-heading .eyebrow{display:none}
.clean-nhl-board .home-filters{border:0;padding:0;margin:0 0 12px;background:transparent}
.clean-nhl-board .home-filters>summary{font-size:12px;padding:10px 0;color:var(--muted)}
.clean-nhl-board .nhl-board-status{font-size:12px;color:var(--muted);line-height:1.7;margin:12px 0}
.clean-nhl-board .player-rankings.main-board-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;background:transparent;margin:0 0 20px;padding:0;border:0}
.clean-nhl-board .main-board-tabs>button,.clean-nhl-board .main-board-tabs>.btb-main-tab{grid-column:auto;min-height:52px;font-size:14px;font-weight:650;letter-spacing:0;line-height:1.4;padding:12px 8px;border:0;border-radius:9px;color:var(--muted);background:transparent;box-shadow:none;white-space:normal}
.clean-nhl-board .main-board-tabs>button[aria-pressed="true"]{color:var(--board-accent);background:var(--board-panel);box-shadow:inset 0 -2px var(--board-accent)}
.clean-nhl-board .main-board-tabs>#parlayBuilderTab{grid-column:1/-1;border:1px solid var(--line);background:var(--board-panel);min-height:44px}
.clean-nhl-board .btb-sort-tabs,.model-workspace-tabs,.odds-market-tabs{display:flex;gap:7px;flex-wrap:wrap;padding:0;border:0;margin:0 0 18px}
.clean-nhl-board .btb-sort-tabs button,.model-workspace-tabs button,.odds-market-tabs button{font-family:inherit;font-size:12px;font-weight:600;line-height:1.4;color:var(--muted);border:1px solid var(--line);background:transparent;border-radius:20px;min-height:40px;padding:8px 13px;cursor:pointer}
.clean-nhl-board .btb-sort-tabs button[aria-pressed="true"],.model-workspace-tabs button[aria-pressed="true"],.odds-market-tabs button[aria-pressed="true"]{background:var(--board-panel);color:var(--ink);border-color:var(--muted)}
html .clean-nhl-board .model-shortlist{background:transparent;border:0;padding:0;margin:0 0 16px}
.clean-nhl-board .model-shortlist .top-ten-list{gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--board-panel)}
.clean-nhl-board .model-shortlist .top-ten-player{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:16px;box-shadow:none}
.clean-nhl-board .model-shortlist .top-ten-player:last-child{border-bottom:0}
.clean-nhl-board .btb-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.clean-nhl-board .btb-metric strong{font-size:20px;color:var(--ink)}
.clean-nhl-board .top-ten-identity strong{font-size:14px}
.clean-nhl-board .top-ten-identity small{font-size:12px}
.clean-nhl-board .top-ten-identity .player-availability{display:block!important;font-size:11px}
.clean-nhl-board .btb-metric-value-row{display:block}
.clean-nhl-board .top-ten-identity,.clean-nhl-board .btb-metric{min-width:0}
.clean-nhl-board .btb-metric small{white-space:normal}
.odds-value-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.odds-value-heading h3{font-size:19px;margin:0}.odds-value-heading>span{font-size:12px;color:var(--muted)}
.clean-nhl-board .nhl-price-snapshot{font-size:12px;line-height:1.7;margin:0 0 18px;padding:0;color:var(--muted)}
.odds-value-rows{border:1px solid var(--line);border-radius:12px;background:var(--board-panel);overflow:hidden}
.odds-player{padding:16px;border-bottom:1px solid var(--line)}.odds-player:last-child{border:0}
.odds-player-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,auto) 40px;gap:12px;align-items:center}
.odds-player-name{font-family:inherit;font-size:14px;font-weight:600;line-height:1.5;background:transparent;border:0;text-align:left;padding:0;color:var(--ink);cursor:pointer}
.odds-player-heading small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.odds-best-prices{display:flex;gap:14px;text-align:right;flex-wrap:wrap;justify-content:flex-end;font-variant-numeric:tabular-nums}
.odds-best-prices strong{font-size:19px;font-weight:600;color:var(--ink)}.odds-best-prices small{font-size:11px}
.odds-unposted{color:var(--muted);font-size:12px}.odds-watch{border:0;background:transparent;color:var(--muted);font-size:22px;min-height:44px;cursor:pointer}
.odds-watch[aria-pressed="true"]{color:var(--board-accent)}
.odds-comparison{margin-top:10px}.odds-comparison>summary{font-size:12px;color:var(--muted);cursor:pointer;padding:8px 0;min-height:36px;list-style:revert}
.odds-comparison-content{padding:10px 0 0}.odds-comparison-content>.player-price{width:100%;font-size:12px}.odds-comparison-content .player-price-comparison{width:100%;margin-top:12px}
.odds-comparison-content .player-book-row{grid-template-columns:minmax(80px,.5fr) minmax(0,2fr);font-size:12px}
.odds-comparison-content .player-book-row>small{grid-column:1/-1}
.odds-state-settings{margin-top:14px;border-top:1px solid var(--line)}.odds-state-settings>summary{padding:14px 0;cursor:pointer;font-size:12px}.odds-empty{padding:18px;color:var(--muted)}
.clean-nhl-board .custom-builder,.clean-nhl-board .sog-line-panel{margin-top:0;background:var(--board-panel)}
.clean-nhl-board .ranking-intro{font-size:12px}
.clean-nhl-board .board-note{margin-top:24px}
.clean-nhl-board button:focus-visible,.clean-nhl-board summary:focus-visible{outline:2px solid var(--board-accent);outline-offset:3px}
@media(max-width:650px){
 .clean-nhl-board .player-rankings.main-board-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .clean-nhl-board .main-board-tabs>button,.clean-nhl-board .main-board-tabs>.btb-main-tab{min-height:48px;font-size:13px;padding:10px 7px}
 .clean-nhl-board .model-shortlist .top-ten-player{padding:14px 12px}
 .clean-nhl-board .btb-metrics{margin-top:7px;gap:10px;grid-column:2/4}.clean-nhl-board .btb-metric strong{font-size:19px}
 .odds-player{padding:14px 12px}.odds-player-heading{grid-template-columns:minmax(0,1fr) 36px;gap:8px}
 .odds-player-heading>.odds-best-prices{grid-row:2;grid-column:1/-1;text-align:left;justify-content:flex-start}.odds-watch{grid-column:2;grid-row:1}
 .odds-comparison-content .player-book-row{grid-template-columns:minmax(65px,.5fr) minmax(0,1.5fr)}
 .clean-nhl-board input:not([type=range]):not([type=checkbox]):not([type=radio]),.clean-nhl-board select{font-size:16px}
 .clean-nhl-board .btb-sort-tabs button{font-size:12px;flex:1;min-width:70px}
}

html[data-theme="dark"] .clean-nhl-board .model-shortlist{background:transparent;border:0}
html[data-theme="dark"] .clean-nhl-board .model-shortlist .top-ten-player{background:transparent}

/* Compact full player card; keep the board rankings unchanged. */
.clean-nhl-board #playerDialog .breakdown-player-header{display:flex;flex-direction:column;padding:16px 20px 14px}
.clean-nhl-board #playerDialog .breakdown-kicker{display:none}
.clean-nhl-board #playerDialog .breakdown-player-heading{align-items:center;gap:12px}
.clean-nhl-board #playerDialog .breakdown-player-heading h2{font-size:25px;line-height:1.2;letter-spacing:-.6px}
.clean-nhl-board #playerDialog .breakdown-player-meta{font-size:12px;margin:4px 0 0}
.clean-nhl-board #playerDialog .breakdown-watch{flex-direction:row;min-height:40px;min-width:0;padding:7px 10px;font-size:12px;gap:5px}
.clean-nhl-board #playerDialog .breakdown-watch>span:first-child{font-size:18px}
.clean-nhl-board #playerDialog .breakdown-role{order:1;margin-top:9px;gap:6px}
.clean-nhl-board #playerDialog .breakdown-role>span{font-size:11px;padding:0;border:0}
.clean-nhl-board #playerDialog .breakdown-player-header>.breakdown-snapshot-note{display:none}
.clean-nhl-board #playerDialog .breakdown-headlines{order:2;margin-top:13px;gap:10px}
.clean-nhl-board #playerDialog .breakdown-headline{min-height:0;padding:0;gap:3px;border:0;border-radius:0;background:transparent}
.clean-nhl-board #playerDialog .breakdown-headline>span{font-size:11px;min-height:0}
.clean-nhl-board #playerDialog .breakdown-headline>strong{font-size:20px;letter-spacing:-.5px;line-height:1.3}
.clean-nhl-board #playerDialog .breakdown-headline>small{display:none}
.clean-nhl-board #playerDialog .breakdown-status{order:3;font-size:11px;line-height:1.5;margin:10px 0 0}
.player-odds-panel{margin:0 20px 14px;border:1px solid var(--line);border-radius:12px;background:var(--board-panel);min-width:0}
.player-odds-panel>summary{padding:15px 16px;min-height:48px;font-size:14px;font-weight:650;cursor:pointer;list-style:none;color:var(--ink)}
.player-odds-panel>summary::-webkit-details-marker{display:none}.player-odds-panel>summary::before{content:'▸';margin-right:9px;color:var(--muted)}
.player-odds-panel[open]>summary::before{content:'▾'}
.player-odds-content{padding:0 16px 15px;min-width:0}.player-odds-snapshot,.player-odds-note{font-size:11px;line-height:1.6;color:var(--muted);margin:0 0 12px}
.player-odds-market{padding:13px;border:1px solid var(--line);border-radius:10px;margin:10px 0;min-width:0}
.player-odds-market h4{font-size:14px;color:var(--ink);margin:0 0 9px}.player-odds-market>.player-price{width:100%;font-size:12px}
.player-odds-market .player-price-best{padding:10px;gap:7px}.player-odds-market .player-price-value{font-size:17px}
.player-model-probability{font-size:11px;color:var(--muted);white-space:normal}
.player-odds-market .player-price-comparison{width:100%;margin-top:12px}
.player-odds-market .player-book-row{grid-template-columns:minmax(70px,.5fr) minmax(0,2fr);font-size:12px}
.player-odds-market .player-book-row>small{grid-column:1/-1}.player-odds-note{margin:12px 0 0}
@media(max-width:650px){
 .clean-nhl-board #playerDialog .breakdown-player-header{padding:14px 16px}
 .clean-nhl-board #playerDialog .breakdown-player-heading h2{font-size:24px}
 .clean-nhl-board #playerDialog .breakdown-headline>strong{font-size:19px}
 .player-odds-panel{margin:0 16px 14px}.player-odds-panel>summary{padding:14px 12px}
 .player-odds-content{padding:0 12px 13px}.player-odds-market{padding:11px}
 .player-odds-market .player-book-row{grid-template-columns:minmax(60px,.5fr) minmax(0,1.5fr)}
}

.odds-line-filters{margin:0 0 16px}.odds-line-filters>span{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}.odds-line-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:440px;gap:7px}.odds-line-options button{min-height:44px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--ink);font:inherit;font-size:12px;padding:9px 6px;cursor:pointer}.odds-line-options button[aria-pressed="true"]{background:var(--ink);color:var(--board-panel)}.odds-ev-note{font-size:12px;color:var(--muted);margin:0 0 16px}.odds-ev-rank{font-size:12px;color:var(--board-accent);margin-right:7px}.odds-top-ev strong{color:var(--board-accent)}
