/* v24: one composition layer for the league workspace. Data/analytics are unchanged. */
:root{--bg:#081322;--surface:#102139;--surface-2:#182e49;--ink:#f4f0e6;--muted:#adbbcd;--line:#ffffff12;--line-strong:#ffffff24}
html,body{background:var(--bg);color:var(--ink)}
body{font-family:Roboto,system-ui,sans-serif;font-size:16px}
body,main,.view,.topbar,.gd-primary,.gd-panel{min-width:0}
button,input,select,summary,a{touch-action:manipulation}
button[hidden],a[hidden],div[hidden],p[hidden]{display:none!important}
/* Persistent desktop workspace rail; exactly five primary destinations on mobile. */
.tool-nav.visual-nav{position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:6px;width:216px;max-width:none;margin:0;padding:24px 16px;background:#0a1c3a;box-shadow:none;border:0;z-index:90;overflow:visible}
.tool-nav.visual-nav>*{flex-shrink:0;min-width:0;max-width:100%}
.tool-nav.visual-nav>.rail-brand{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:0 0 26px;min-height:80px;border:0;background:none;box-shadow:none;text-align:left;color:var(--ink)}
.rail-brand img{object-fit:contain;border-radius:50%;background:var(--boat-cream);padding:2px;width:44px;height:44px}
.rail-brand>span{font:700 26px/1 Oswald,sans-serif;letter-spacing:.04em}.rail-brand strong{display:block;font:500 11px/1.5 Roboto,sans-serif;letter-spacing:.2em;margin-top:6px;color:#b6c4d6}
.rail-label{font:500 11px/1.4 Roboto,sans-serif;letter-spacing:.13em;color:#90a4be;margin:8px 10px 6px}
.tool-nav.visual-nav>button[data-view],.tool-nav.visual-nav>.tools-directory>summary{display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:50px;padding:13px 14px;font:500 15px/1.4 Roboto,sans-serif;border-radius:9px;color:#becadd;background:none;border:0;box-shadow:none;text-align:left}
.tool-nav.visual-nav>button[data-view]:hover,.tool-nav.visual-nav>.tools-directory>summary:hover{background:#173151;color:var(--ink)}
.tool-nav.visual-nav>button.active,.tool-nav.visual-nav>button[aria-current=page],.tool-nav.visual-nav>.tools-directory.contains-current>summary{background:#f4f0e6!important;color:#0a1c3a!important;box-shadow:none!important;border:0!important;font-weight:700}
.tool-nav.visual-nav .section-symbol{width:21px;height:21px;flex:0 0 21px;border:0;background:none!important;color:inherit!important}
.tool-nav.visual-nav .section-symbol svg{width:21px;height:21px}
.tool-nav.visual-nav>.tools-directory{margin:0;position:static;width:100%;align-self:stretch}
.rail-shortcuts{display:grid;gap:2px;margin-top:24px}.rail-shortcuts>button{min-height:44px;text-align:left;padding:10px 14px;background:none;border:0;font-size:14px;color:#bdcce0;border-radius:8px}.rail-shortcuts>button:hover{background:#173151;color:var(--ink)}
.rail-footer{margin-top:auto;padding:32px 10px 0}.rail-footer>span{font:500 10px/1.5 Roboto,sans-serif;letter-spacing:.12em;color:#99adc6}.rail-footer>strong{display:block;font:500 22px/1.2 Oswald,sans-serif;color:#d3b47d;margin:10px 0 16px}.rail-footer>a{display:flex;align-items:center;min-height:44px;color:#b7c6d9;font-size:12px;line-height:1.5;text-decoration:none}
.topbar{max-width:none;margin:0 0 0 216px;padding:20px 36px;min-height:84px;grid-template-columns:minmax(240px,560px) minmax(140px,1fr);gap:24px;background:#081322;border-bottom:1px solid var(--line)}
.topbar .brand{display:none}.topbar .league-utility-bar{grid-area:auto;max-width:560px;z-index:92}.topbar .source-status{grid-area:auto;grid-column:auto;justify-content:flex-end;margin:0;font-size:12px}
.topbar .global-search input{height:46px;border:0;border-radius:9px;background:#12243b;font-size:15px;padding:12px 16px}
.global-search-results{background:#162b45;border:0;box-shadow:0 20px 70px #0009}.global-search-results button{min-height:52px}
main{max-width:1600px;margin:0 0 0 216px;padding:28px 36px 48px}
body>footer{max-width:none;margin:0 36px 0 252px;padding:20px 0;font-size:12px;border-color:var(--line)}
/* The League directory is a searchable, deliberate navigation panel. */
.tools-directory[open]>.directory-panel{position:fixed;left:232px;right:auto;top:24px;bottom:auto;width:min(790px,calc(100vw - 264px));max-height:calc(100dvh - 48px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;background:#142940;padding:24px;border:0;border-radius:16px;box-shadow:0 24px 90px #000a;overflow:auto;overscroll-behavior:contain}
.directory-heading{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}.directory-heading h2{font:700 26px/1.2 Roboto,sans-serif;letter-spacing:-.04em;margin:5px 0 0}.directory-heading .eyebrow{font-size:11px;margin:0;color:#cbb17e}.directory-close{align-self:start;min-height:44px;background:#223f5c;color:var(--ink);border:0;border-radius:8px;padding:10px 15px;font-size:14px}
.directory-search{grid-column:1/-1}.directory-search input{width:100%;min-width:0;min-height:46px;border:0;border-radius:8px;padding:12px 14px;background:#0a1b30;color:var(--ink);font-size:16px}.directory-search input::placeholder{color:#a8b8cb}.directory-heading>p{grid-column:1/-1;font-size:14px;color:var(--muted);margin:0}
.directory-group{min-width:0}.directory-group>p{font-size:11px;letter-spacing:.09em;color:#a7b9cf;margin-bottom:12px}
.tool-nav.visual-nav .directory-group>button,.directory-group>a.top-link{min-height:58px;gap:10px;padding:12px;background:#203b56;border:0;border-radius:8px;margin-bottom:8px;color:var(--ink);font-size:14px;line-height:1.4;white-space:normal}
.tool-nav.visual-nav .directory-group>button .section-symbol{background:none!important;color:#cdb98f!important;width:24px;flex-basis:24px}
.tool-nav.visual-nav .directory-group>button:hover{background:#2b4b6a}.directory-group .league-help{font-size:13px;color:var(--muted)}
/* Source rails are readily available without pushing each tool below the fold. */
.scores-drawer{margin:16px 36px 0 252px;background:#102139;border-radius:9px;padding:0 16px}.scores-drawer>summary{display:flex;align-items:center;gap:16px;min-height:48px;cursor:pointer;list-style:none;font-size:14px;font-weight:600}.scores-drawer>summary::after{content:'+';font-size:20px;margin-left:auto;color:#c5a365}.scores-drawer[open]>summary::after{content:'−'}.scores-drawer>summary small{font-size:12px;font-weight:400;color:var(--muted)}
body[data-current-view=home]>.scores-drawer{display:none}.scores-drawer .scoreboards{padding:0 0 12px;margin:0;max-width:100%}
/* Typography and actions: ordinary copy is readable; numbers carry the hierarchy. */
.view>.page-heading,.view>.season-heading{padding:0 0 22px;margin:0 0 24px;border-bottom:1px solid var(--line);background:none;min-height:0}
.view>.page-heading h1,.view>.season-heading h1{font:700 clamp(28px,3vw,38px)/1.13 Roboto,sans-serif;letter-spacing:-.045em;gap:12px}
.view>.page-heading>div>p:not(.eyebrow){font-size:14px;line-height:1.6;margin:10px 0 0;color:var(--muted)}
.page-symbol{width:32px;height:32px;color:#c5a365}.page-symbol svg{width:24px;height:24px}.eyebrow{font-size:11px;letter-spacing:.1em}
.primary-button,.secondary-button{min-height:46px;border-radius:8px;font-size:14px;font-weight:600;padding:11px 16px}.primary-button{background:#c5a365!important}.secondary-button{background:#1a324e;border:0;color:var(--ink)}.text-action{font-size:14px;color:#d9c8a5}
.hq-card,.panel,.player-scan-card,.market-card{background:#102139;box-shadow:none;border-radius:12px}
.data-badge,.confidence-chip{font-size:11px;border-radius:5px;padding:4px 7px;font-weight:500;letter-spacing:.03em}
.market-chip,.category-chip{border-radius:5px;padding:5px 8px;font-size:12px}
/* Home: league-first composition, purposeful supporting rail, not a stack of dashboards. */
[data-page=home] .home-masthead{padding:0;margin:0 0 18px;align-items:center;border:0;gap:20px}
[data-page=home] .home-masthead h1{font:700 clamp(32px,3.8vw,46px)/1.1 Roboto,sans-serif;letter-spacing:-.055em;margin:0}.home-masthead h1>span:not(.page-symbol){color:#f4f0e6}.home-masthead .eyebrow{font-size:11px;margin:0 0 8px}.home-game-tagline{font-size:14px;margin:8px 0 0;color:var(--muted)}
.home-masthead-actions .primary-button{min-width:0;background:#1a324e!important;color:var(--ink)!important;border:0!important}.home-masthead-actions .secondary-button{background:none;font-weight:400;padding-inline:8px}
.home-fast-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-block:1px solid var(--line);margin:0 0 18px;padding:5px 0}
.home-fast-lanes>button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-height:64px;min-width:0;padding:10px 18px;background:none;border:0;color:var(--ink);text-align:left;border-radius:7px}.home-fast-lanes>button:first-child{padding-left:0}.home-fast-lanes>button+button{border-left:1px solid var(--line)}.home-fast-lanes>button>span{font-size:14px;font-weight:600}.home-fast-lanes>button>small{color:var(--muted);font-size:12px}.home-fast-lanes>button:hover{background:#142840}
[data-page=home] .manager-hub{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 14px;padding:0;margin:0 0 20px;border:0;background:none}
[data-page=home] .manager-hub-heading label{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted);max-width:520px}.manager-hub-heading label>span{display:none!important}.manager-hub select{min-width:0;width:100%;min-height:44px;flex:1;background:#152b44;border:0;border-radius:8px;padding:10px;color:var(--ink);font-size:14px}
[data-page=home] .manager-hub>button{min-height:44px;width:auto;border:0;background:none;color:#cbb98f;font-size:13px;padding:8px 0}.manager-shortcuts>summary{min-height:30px;font-size:12px;color:#91a5bf;padding:4px 0}.manager-shortcuts>summary::after{margin-left:8px}.manager-shortcuts[open] .manager-hub-content{background:#102139;border-radius:10px;padding:16px;margin-top:6px}
.gd-primary{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:28px;align-items:start}
.gd-panel{padding:24px;border:0;background:#102139;border-radius:14px;box-shadow:none}.gd-matchups.command-matchups{background:#102139}.gd-hockey{background:#0c1d32;border-radius:12px}
.gd-title h2,.gd-section-title h2{font:700 23px/1.2 Roboto,sans-serif;letter-spacing:-.035em;margin:6px 0 0}.gd-title .eyebrow,.gd-section-title .eyebrow{font-size:10px;color:#9cafc7;letter-spacing:.1em}.gd-date{font-size:12px;color:#9fb2cb;line-height:1.5}.gd-match-context{margin:14px 0 18px;font-size:12px}.gd-takeaway{font-size:13px;line-height:1.6}
[data-page=home] .gd-matchups .hq-match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
[data-page=home] .gd-matchups .landing-match{display:grid;grid-template-columns:minmax(0,1fr) 35px;grid-template-rows:minmax(44px,auto) minmax(44px,auto);gap:8px 12px;padding:15px 12px;min-height:108px;background:#1a304b;border:0;border-radius:9px;box-shadow:none;min-width:0}
[data-page=home] .gd-matchups .landing-match>.match-side{display:flex;align-items:center;justify-content:flex-start;min-height:44px;padding:0;border:0;min-width:0;text-align:left;grid-column:1;background:none}
[data-page=home] .gd-matchups .landing-match>.match-side:first-child{grid-row:1}[data-page=home] .gd-matchups .landing-match>.match-side:last-child{grid-row:2}
[data-page=home] .gd-matchups .landing-match .team-identity,[data-page=home] .gd-matchups .landing-match .match-side:last-child .team-identity{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:9px;min-width:0;text-align:left}
[data-page=home] .gd-matchups .landing-match .identity-avatar{width:32px;height:32px;flex-basis:32px;border:0;border-radius:50%}
[data-page=home] .gd-matchups .landing-match .identity-name{font:500 13px/1.35 Roboto,sans-serif;color:var(--ink);white-space:normal;overflow-wrap:anywhere;text-align:left}
[data-page=home] .gd-matchups .landing-match>.match-score{grid-column:2;grid-row:1/3;display:grid;grid-template-rows:1fr 1fr;align-items:center;gap:8px;width:100%;height:100%;padding:0;background:none;border:0;color:var(--ink);font:700 25px/1 Roboto,sans-serif;min-height:84px}
[data-page=home] .gd-matchups .landing-match>.match-score>span{display:none}.gd-matchups .match-score b{font-size:inherit;font-weight:700;letter-spacing:-.05em}
[data-page=home] .gd-matchups .landing-match:hover{background:#233d5b}.gd-matchups .landing-match button:focus-visible{outline:2px solid #d8c08d;outline-offset:3px}
.gd-show-matchups{display:none}.gd-matchups>.gd-small{font-size:11px;margin-top:16px;color:#98aac1}
[data-page=home] .gd-personal-match .landing-match{min-height:150px;padding:22px;grid-template-rows:minmax(48px,auto) minmax(48px,auto)}[data-page=home] .gd-personal-match .landing-match .identity-avatar{width:44px;height:44px;flex-basis:44px}[data-page=home] .gd-personal-match .landing-match .identity-name{font-size:16px}
.gd-category-moment h3{font:600 17px/1.4 Roboto,sans-serif}.gd-category-moment>.primary-button{max-width:100%;font-size:14px}.gd-category-bars>div{font-size:14px}.gd-evidence>summary,.gd-other-matchups>summary{font-size:12px;color:#b2c1d4}
#gameday-score-slot .score-rail{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}#gameday-score-slot .nhl-score{background:#172f4b;padding:14px 12px;border:0;border-radius:8px;min-height:108px}#gameday-score-slot .score-team{font-size:13px}#gameday-score-slot .score-team b{font:700 24px/1 Roboto,sans-serif}#gameday-score-slot .score-controls{flex-wrap:wrap}#gameday-score-slot .score-controls>details{min-width:0}#gameday-score-slot .score-refresh{font-size:12px;min-height:44px;background:none;border:0}#gameday-score-slot .score-controls p{font-size:12px;line-height:1.6}
.gd-roster-hint{font-size:12px;color:#91a5bf;line-height:1.6}.gd-roster-head h3{font:600 16px Roboto,sans-serif}.gd-show-games{font-size:13px;border:0;color:#d1bd96}
.gd-next-section{margin-top:32px}.gd-next-cards{gap:16px;margin-top:18px}.gd-next-card{position:relative;background:#102139;padding:22px;border:0;border-radius:12px;gap:10px}.gd-next-card .eyebrow{font-size:10px;color:#b4a17e;letter-spacing:.1em}.gd-next-card h3{font:600 20px/1.2 Roboto,sans-serif;letter-spacing:-.025em;max-width:100%;margin:2px 0 4px}.gd-next-card p{font-size:14px;line-height:1.5}.gd-next-card .gd-small{font-size:12px}.gd-next-card>.secondary-button{margin-top:auto;width:100%;background:#233c57;text-align:center}.gd-next-card>.text-action{align-self:center;min-height:44px;font-size:13px}.gd-local-note{font-size:11px;color:#92a4bc}
.gd-activity{margin:32px 0 0;padding-top:26px}.gd-activity-preview .transaction-card{background:#102139;border:0;border-radius:10px}.gd-league-desk{margin-top:26px}.gd-league-desk>summary>span{font:600 20px Roboto,sans-serif}
.home-lore{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0;gap:12px}.home-lore>button{background:none;border:0;border-radius:0;padding:12px 0;min-height:64px;display:flex;align-items:center;gap:12px;text-align:left}.home-lore .lore-number{color:#c5a365;font:500 20px Oswald,sans-serif}.home-lore strong{font:600 15px Roboto,sans-serif}.home-lore small{font:400 12px/1.5 Roboto,sans-serif;color:var(--muted)}
/* Market and scouting are working surfaces, with readable primary identities. */
.market-tabs{background:#102139;border:0;border-radius:10px;padding:5px;gap:4px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.market-tabs>button{min-height:50px;border:0;border-radius:7px;font-size:14px;font-weight:500;color:#b6c6da;background:none;box-shadow:none;padding:10px}
.market-tabs>button[aria-selected=true]{background:#f4f0e6;color:#0a1c3a;box-shadow:none;font-weight:700}
[data-page=trades]>.hq-links{gap:20px;margin:0 0 24px}.market-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.market-card.market-team{background:#102139;padding:22px}.market-team .identity-avatar{width:48px;height:48px;flex-basis:48px}.market-team h3{font:600 16px/1.35 Roboto,sans-serif}.market-team-signal>strong{font-size:13px}.market-partner-cta{width:100%;background:#213a55!important;border:0!important;color:var(--ink)!important;min-height:46px!important}
.player-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.player-scan-card{padding:22px;background:#102139}.player-scan-card .player-portrait{width:64px;height:64px;flex-basis:64px;border-radius:10px;background:#1a324b}.player-scan-card .player-identity{font:600 17px/1.4 Roboto,sans-serif}.player-mini-stats{border:0;gap:8px}.player-scan-card .player-mini-stats>span{background:#1a304b;padding:12px 8px;border:0;border-radius:7px}.player-mini-stats strong{font:700 24px/1.2 Roboto,sans-serif}.player-mini-stats small{font-size:12px}.player-scan-card .scout-open{min-height:46px;font-size:14px}
/* Matchups: readable team rows, one main action, supporting evidence on demand. */
[data-page=matchups] .matchup-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
[data-page=matchups] .matchup-card{padding:22px;background:#102139;border:0;border-radius:12px;box-shadow:none}
[data-page=matchups] .matchup-card>p:first-child{font:500 11px/1.5 Roboto,sans-serif;color:#95a8c1;letter-spacing:.05em;margin:0 0 18px;text-transform:uppercase}
[data-page=matchups] .matchup-team{padding:9px 0;min-height:64px;background:none;gap:12px;border:0}
[data-page=matchups] .matchup-team .identity-avatar{width:42px;height:42px;flex-basis:42px}[data-page=matchups] .matchup-team .identity-name{font:500 16px/1.35 Roboto,sans-serif}[data-page=matchups] .matchup-team>span{font:700 34px/1 Roboto,sans-serif;letter-spacing:-.06em;color:var(--ink)}
.matchup-context-details{margin-top:14px;border-top:1px solid var(--line)}.matchup-context-details>summary{min-height:44px;display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer;color:#aabdd4}.matchup-context-details>summary::after{content:'+';margin-left:auto}.matchup-context-details[open]>summary::after{content:'−'}
[data-page=matchups] .matchup-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding-top:4px}.matchup-footer .matchup-state{grid-column:1/-1;color:var(--muted);font-size:12px}
[data-page=matchups] .matchup-detail-button{background:#d0b27e;color:#0a1c3a;min-height:46px;padding:10px;font-size:13px;border:0;border-radius:8px}[data-page=matchups] .matchup-footer>.secondary-button{background:#1d3652;border:0;min-height:46px;font-size:13px}
@media(min-width:1680px){main{margin-right:auto}.topbar{max-width:1600px}.scores-drawer{max-width:1528px}}
@media(min-width:901px) and (max-height:700px){.rail-footer{padding-top:12px}.rail-footer strong{display:none}.rail-shortcuts{margin-top:10px}.tool-nav.visual-nav{padding-top:16px}.tool-nav.visual-nav>.rail-brand{padding-bottom:14px;min-height:64px}}
@media(max-width:1200px) and (min-width:901px){main{padding:24px}.topbar{padding:18px 24px}.scores-drawer{margin-inline:240px 24px}.gd-primary{grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);gap:18px}.gd-panel{padding:18px}[data-page=home] .gd-matchups .hq-match-grid{grid-template-columns:minmax(0,1fr)}.market-cards,.player-card-grid,[data-page=matchups] .matchup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-masthead-actions{max-width:230px}.home-fast-lanes>button{padding:10px}.home-fast-lanes>button>small{display:none}}
@media(max-width:900px){
 body{padding-bottom:90px}.rail-brand,.rail-label,.rail-shortcuts,.rail-footer{display:none!important}
 .tool-nav.visual-nav{position:fixed!important;inset:auto 0 0!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;width:100%;padding:7px 10px calc(7px + env(safe-area-inset-bottom))!important;gap:3px!important;background:#0c2039;box-shadow:0 -8px 30px #0004;border:0;z-index:90}
 .tool-nav.visual-nav>button[data-view],.tool-nav.visual-nav>.tools-directory>summary{min-height:56px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:7px 2px!important;text-align:center;font-size:12px!important;border-radius:8px;line-height:1.2}
 .tool-nav.visual-nav>button.active,.tool-nav.visual-nav>button[aria-current=page],.tool-nav.visual-nav>.tools-directory.contains-current>summary{background:#f4f0e6!important;color:#0a1c3a!important;box-shadow:none!important}
 .tool-nav.visual-nav>.tools-directory{grid-column:auto!important;width:auto;position:static!important}.tool-nav.visual-nav .section-symbol{width:20px;height:20px}.tool-nav.visual-nav .section-symbol svg{width:20px;height:20px}
 .topbar{margin:0;padding:16px 20px;min-height:0;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'brand status' 'search search';gap:14px;background:#0a1c3a;border-bottom:0}
 .topbar .brand{grid-area:brand;display:flex;gap:10px}.brand-crest{width:38px;height:38px;padding:2px}.brand-wordmark strong{font-size:22px!important}.brand-wordmark small{display:none}.topbar .source-status{grid-area:status;font-size:11px;max-width:115px;text-align:right}.topbar .league-utility-bar{grid-area:search;max-width:none}.topbar .global-search input{font-size:16px;background:#162d49}
 main{margin:0;padding:24px 20px 32px;max-width:none}body>footer{margin:0 20px;padding:20px 0}.scores-drawer{margin:14px 20px 0}.scores-drawer>summary{font-size:14px}
 .gd-primary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}[data-page=home] .gd-matchups .hq-match-grid{grid-template-columns:minmax(0,1fr)}
 .tools-directory[open]>.directory-panel{position:fixed!important;left:12px;right:12px;top:12px!important;bottom:calc(82px + env(safe-area-inset-bottom));width:auto;max-height:none;padding:20px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px;border:0!important}.directory-heading{grid-column:1/-1}.directory-group{display:block}.directory-group>p{margin:0 0 10px}.directory-group:last-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.directory-group:last-child>p{grid-column:1/-1}.directory-group:last-child>button{margin:0}
 .market-cards,.player-card-grid,[data-page=matchups] .matchup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .is-embedded .topbar{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:'search';padding:12px 20px}.is-embedded .topbar .brand,.is-embedded .topbar .source-status{display:none}.is-embedded main{padding-top:18px}
}
@media(max-width:600px){
 main{padding:20px 16px 28px}.topbar{padding:14px 16px;gap:12px}.is-embedded .topbar{padding:12px 16px}.view>.page-heading{gap:16px;padding-bottom:18px;margin-bottom:20px;align-items:flex-start}.view>.page-heading h1{font-size:28px;line-height:1.15}.view>.page-heading>div>p:not(.eyebrow){font-size:14px}.view>.page-heading>.primary-button{min-height:44px;font-size:12px;padding:10px 12px}.page-symbol{width:24px;height:24px}.page-symbol svg{width:22px;height:22px}
 [data-page=home] .home-masthead{gap:10px;margin-bottom:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}[data-page=home] .home-masthead h1{font-size:32px}.home-masthead .eyebrow{font-size:10px;margin-bottom:6px;gap:8px}.home-masthead .eyebrow span{padding-left:8px}.home-game-tagline{font-size:12px;margin-top:6px}.home-masthead-actions{flex-direction:column;align-items:stretch;gap:0;padding:0}.home-masthead-actions .primary-button{min-height:44px;font-size:12px;padding:10px 12px}.home-masthead-actions .secondary-button{min-height:44px;font-size:12px;padding:8px}
 .home-fast-lanes{margin-bottom:16px;padding:0;gap:0;grid-template-columns:repeat(4,minmax(0,1fr))}.home-fast-lanes>button,.home-fast-lanes>button:first-child{align-items:center;text-align:center;min-height:52px;padding:8px 5px}.home-fast-lanes>button>span{font-size:12px;line-height:1.35}.home-fast-lanes>button>small{display:none}
 [data-page=home] .manager-hub{grid-template-columns:minmax(0,1fr) auto;margin-bottom:16px;gap:0 10px}[data-page=home] .manager-hub-heading label{display:block;font-size:12px;line-height:1.5}.manager-hub select{display:block;margin-top:3px;min-height:44px;font-size:14px;max-width:100%}[data-page=home] .manager-hub>button{font-size:12px;max-width:90px;padding:8px 0;align-self:end}.manager-shortcuts>summary{min-height:44px;font-size:12px}
 .gd-primary{grid-template-columns:minmax(0,1fr);gap:20px}.gd-panel{padding:18px 14px;border-radius:12px}.gd-title h2,.gd-section-title h2{font-size:22px}.gd-title>.text-action{font-size:13px;padding:4px;min-height:44px;max-width:90px}.gd-match-context{margin:12px 0 14px;font-size:12px}
 [data-page=home] .gd-matchups .hq-match-grid{gap:8px;grid-template-columns:minmax(0,1fr)}[data-page=home] .gd-matchups .landing-match{grid-template-rows:minmax(44px,auto) minmax(44px,auto);gap:5px 12px;padding:12px;min-height:101px}[data-page=home] .gd-matchups .landing-match .identity-name{font-size:14px}[data-page=home] .gd-matchups .landing-match .identity-avatar{width:32px;height:32px;flex-basis:32px}[data-page=home] .gd-matchups .landing-match>.match-score{font-size:26px;min-height:93px;gap:5px}
 [data-page=home] .gd-league-slate:not(.gd-full-slate)>.landing-match:nth-child(n+4){display:none}.gd-show-matchups{display:block;min-height:46px;width:100%;margin-top:12px;font-size:14px;background:#213d59}
 [data-page=home] .gd-personal-match .landing-match{grid-template-rows:minmax(44px,auto) minmax(44px,auto);padding:16px}[data-page=home] .gd-personal-match .landing-match .identity-avatar{width:40px;height:40px;flex-basis:40px}.gd-hockey{padding:18px 14px}.gd-takeaway{font-size:13px}.gd-date{font-size:12px}.gd-next-section{margin-top:26px}.gd-next-cards{grid-template-columns:minmax(0,1fr);gap:12px}.gd-next-card{padding:20px;gap:10px}.gd-next-card>.secondary-button{margin-top:6px}.gd-next-card>.text-action{align-self:center}.gd-next-card h3{font-size:21px}.gd-local-note{font-size:12px;line-height:1.6}
 .gd-activity-preview .transaction-cards{grid-template-columns:minmax(0,1fr)}.gd-section-title>.text-action{font-size:12px;min-height:44px}.home-lore{grid-template-columns:minmax(0,1fr);gap:0;margin:18px 0}.home-lore>button{padding:14px 0;border-bottom:1px solid var(--line);min-height:66px}.home-lore .lore-number{font-size:24px;width:30px}.home-lore strong{font-size:15px}.home-lore small{font-size:12px}.gd-league-desk>summary>span{font-size:20px}.gd-league-desk>summary>small{font-size:12px}
 .market-cards,.player-card-grid,[data-page=matchups] .matchup-grid{grid-template-columns:minmax(0,1fr);gap:14px}.market-tabs{gap:2px}.market-tabs>button{font-size:13px;line-height:1.35;min-height:52px;padding:8px 6px}.market-card.market-team{padding:20px}[data-page=trades]>.hq-links{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}[data-page=trades]>.hq-links button{font-size:12px;min-height:44px}.player-scan-card{padding:20px}.player-scan-card .player-portrait{width:62px;height:62px;flex-basis:62px}
 [data-page=matchups] .matchup-card{padding:20px}[data-page=matchups] .matchup-team .identity-name{font-size:16px}.scores-drawer{margin:12px 16px 0;padding:0 12px}.scores-drawer>summary{gap:10px}.scores-drawer>summary small{font-size:11px}
 .tools-directory[open]>.directory-panel{left:10px;right:10px;padding:18px!important;grid-template-columns:minmax(0,1fr)!important;gap:18px}.directory-heading h2{font-size:24px}.directory-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.directory-group>p,.directory-group>.top-link,.directory-group>.league-help{grid-column:1/-1}.directory-group>p{margin:0 0 2px}.tool-nav.visual-nav .directory-group>button{font-size:13px;min-height:60px;margin:0;padding:10px;gap:8px}.tool-nav.visual-nav .directory-group>button .section-symbol{width:21px;flex-basis:21px}.directory-group:last-child{grid-column:auto}.directory-group[hidden]{display:none!important}.global-search-results{max-height:60dvh;overflow:auto}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Short Google Sites frames must never wrap sidebar items over page content. */
@media(min-width:901px) and (max-height:1000px){.rail-footer{display:none}}
@media(min-width:901px) and (max-height:780px){.rail-shortcuts{display:none}}
@media(min-width:901px) and (max-height:580px){.tool-nav.visual-nav>.rail-brand{min-height:48px;padding-bottom:8px}.rail-label{margin-top:2px}}
@media(min-width:901px) and (max-height:420px){.tool-nav.visual-nav{overflow-y:auto;overflow-x:hidden}}
/* Scoreboard day selection: large targets, explicit date, no midnight loss of games. */
.nhl-day-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;grid-column:2;min-width:0}
.nhl-day-nav>button{min-height:44px;min-width:0;padding:8px 6px;border:0;border-radius:7px;background:#213d59;color:#f4f0e6;font:500 13px/1.3 Roboto,sans-serif;white-space:normal}
.nhl-day-nav>button[aria-pressed=true]{background:#f4f0e6;color:#0a1c3a}.nhl-day-nav>button:disabled{opacity:.45;cursor:default}
.nhl-date-note{grid-column:2;margin:2px 0 8px;font:400 12px/1.5 Roboto,sans-serif;color:#b3c3d7}
.score-strip:has(.nhl-day-nav)>.score-rail{grid-column:2}.score-strip:has(.nhl-day-nav)>.score-label{grid-row:1/4}
#gameday-score-slot .nhl-day-nav{margin:10px 0 6px}#gameday-score-slot .nhl-date-note{margin:0 0 12px}
@media(max-width:600px){.scores-drawer .score-strip:has(.nhl-day-nav){grid-template-columns:minmax(0,1fr)}.scores-drawer .score-strip:has(.nhl-day-nav)>.score-label{grid-row:auto;flex-direction:row;align-items:center;gap:8px}.scores-drawer .nhl-day-nav,.scores-drawer .nhl-date-note,.scores-drawer .score-strip:has(.nhl-day-nav)>.score-rail{grid-column:1}}

/* Explicit tool discovery and same-document Back/Forward navigation. */
.journey-bar{display:flex;align-items:center;gap:6px;margin:0 36px 0 252px;padding:8px 0;min-width:0;background:#08172b;position:sticky;top:0;z-index:45}
.journey-bar>button{min-height:44px;padding:8px 12px;border:0;border-radius:8px;background:#1a304b;color:#f4f0e6;font-size:14px;white-space:nowrap}.journey-bar>button:disabled{opacity:.4;cursor:default}.journey-bar>[data-tools-open]{background:#c5a365;color:#0a1c3a;font-weight:700}
#current-tool-name{flex:1;min-width:0;padding:0 8px;font-size:14px;color:#c1cddd;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tool-caption{display:flex;flex-direction:column;gap:4px;min-width:0;text-align:left}.tool-caption strong{font-size:14px;font-weight:600}.tool-caption small{font-size:12px;color:#bac9da;font-weight:400;line-height:1.4}.directory-group [data-go]{width:100%;text-align:left}.directory-group [data-market-section]{scroll-margin-top:70px}
[data-page=home] .gd-matchups .landing-match>.match-score{grid-template-columns:minmax(0,1fr)}
[data-page=home] .gd-matchups .landing-match>.match-score>b:first-child{grid-row:1;grid-column:1}[data-page=home] .gd-matchups .landing-match>.match-score>b:last-child{grid-row:2;grid-column:1}
@media(max-width:900px){.journey-bar{margin:0 20px;gap:4px}.journey-bar>button{padding:8px 9px}#current-tool-name{font-size:12px;padding:0 4px}}
@media(max-width:600px){.journey-bar{margin-inline:14px}.journey-bar>button{font-size:13px;padding:8px}.tools-directory[open]>.directory-panel{left:12px;right:12px;top:12px;bottom:calc(84px + env(safe-area-inset-bottom));width:auto;max-height:none;grid-template-columns:minmax(0,1fr);padding:16px;gap:16px}.directory-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.directory-group>p,.directory-group>.league-help{grid-column:1/-1}.tool-nav.visual-nav .directory-group>button{display:flex;align-items:flex-start;min-height:64px;margin:0;padding:10px;gap:8px}.directory-heading{gap:10px}.directory-heading h2{font-size:23px}.tool-caption strong{font-size:13px}.tool-caption small{font-size:12px}}

.gd-score-notice{padding:12px 14px;margin:0 0 14px;background:#1b3047;border-radius:8px;color:#cbd7e5;font-size:14px;line-height:1.5}.gd-score-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:14px}.gd-score-actions>button,.gd-score-actions>a{min-height:44px;display:inline-flex;align-items:center;font-size:14px}.gd-score-actions>button{padding:10px 14px}.gd-score-actions>a{color:#dbc699;text-decoration:underline}
[data-market-section]{scroll-margin-top:70px}

/* Date-matched lineup snapshots, separate from scheduled NHL participation. */
.lineup-context{min-width:0;margin-top:12px}.lineup-note{font-size:13px;line-height:1.6;color:var(--muted);margin:10px 0}.lineup-counts{display:flex;flex-wrap:wrap;gap:8px}.lineup-counts>span{padding:8px 10px;border-radius:8px;background:#1a304b;font-size:14px}.lineup-counts b{margin-left:6px;color:var(--ink)}
.lineup-group{margin:18px 0;min-width:0}.lineup-group h4{font-size:15px;margin:0 0 10px}.lineup-group h4>span{margin-left:6px;color:var(--muted);font-weight:400}.lineup-players{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:10px}.lineup-player{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:14px;background:#182e49;border-radius:10px;min-width:0}.lineup-player .identity-copy{min-width:0;overflow-wrap:anywhere}.lineup-player-context{display:grid;gap:6px;min-width:0}.lineup-slot{justify-self:start;background:#264258;color:#f4f0e6;font-size:13px;font-weight:600;border-radius:5px;padding:5px 8px}.lineup-slot.bench{background:#4a3a27}.lineup-slot.ir,.lineup-slot.unknown{background:#303c50}.lineup-player-context small,.lineup-game span{display:block;color:#b9c6d6;font-size:13px;line-height:1.5}.lineup-game strong{font-size:14px}.lineup-expand>summary,.team-lineup-panel>summary{min-height:44px;padding:12px 0;cursor:pointer;font-size:14px}.lineup-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:12px 0}.lineup-toolbar label{display:grid;gap:6px;font-size:14px}.lineup-toolbar input,.lineup-toolbar button,.lineup-toolbar a{min-height:44px;font:inherit;max-width:100%}.lineup-toolbar input{padding:8px;background:#182e49;border:1px solid #41536a;border-radius:7px;color:var(--ink)}.lineup-toolbar a{display:flex;align-items:center;font-size:14px}.lineup-player button:focus-visible,.lineup-expand>summary:focus-visible,.lineup-toolbar :focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(max-width:600px){.lineup-player{padding:12px}.lineup-toolbar label{flex-basis:100%}.lineup-toolbar input{width:100%}.lineup-players{grid-template-columns:minmax(0,1fr)}}
