:root{color-scheme:light;--navy:#142b46;--indiana:#762c43;--michigan:#23496d;--accent:var(--navy);--gold:#b18b47;--bg:#f6f5f1;--panel:#fff;--panel2:#eceeea;--white:#142b46;--muted:#526171;--line:#d4d8dc;font-family:Arial,Helvetica,sans-serif}
body{background:var(--bg);color:var(--navy)}body[data-state=IN]{--accent:var(--indiana)}body[data-state=MI]{--accent:var(--michigan)}
[hidden]{display:none!important}a{color:var(--accent);text-underline-offset:4px}a:hover{text-decoration:underline}button,input,select,summary{font:inherit}button,a,input,select{touch-action:manipulation}:focus-visible{outline:3px solid #a16400;outline-offset:4px}.skip:focus{background:#fff;color:var(--navy);z-index:100}
.site-header{background:var(--navy);border:0;border-bottom:3px solid var(--gold);color:#fff}.site-masthead{max-width:1220px;min-height:92px;margin:auto;padding:16px 32px;display:flex;align-items:center;gap:32px}.site-brand{color:#fff;display:flex;flex-direction:column;gap:3px;white-space:nowrap}.site-brand:hover{text-decoration:none}.site-wordmark{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:700;font-size:29px;letter-spacing:1.2px;line-height:1.1}.site-tagline{font-size:9px;letter-spacing:1px;color:#d8dee6}.primary-nav{display:flex;align-items:center;gap:24px;margin-left:auto}.primary-nav a{color:#fff;display:flex;align-items:center;min-height:44px;font-size:14px;font-weight:700}.masthead-search{color:#fff;font-size:12px;padding-left:20px;border-left:1px solid #5e6b7d;min-height:44px;display:flex;align-items:center;gap:10px}.menu-toggle{display:none;background:transparent;border:1px solid #788595;color:#fff;border-radius:0;min-height:44px;padding:8px 14px}
main{max-width:1180px;padding:38px 32px 64px;min-height:60vh}.site-footer{max-width:none;background:#e9e9e4;border-top:1px solid var(--line);padding:32px max(24px,calc((100vw - 1116px)/2));display:flex;justify-content:space-between;gap:30px;font-size:13px;color:var(--muted)}.site-footer strong{color:var(--navy);letter-spacing:1px}.site-footer p{margin:5px 0}.site-footer nav{display:flex;flex-wrap:wrap;align-content:start;gap:10px 24px;max-width:470px}.site-footer a{display:inline-flex;align-items:center;min-height:44px;color:var(--navy)}
h1,h2,h3{color:var(--navy)}h1{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:clamp(36px,4vw,58px);letter-spacing:.2px;line-height:1.05;font-weight:700}h2{font-family:'Arial Narrow',Arial,sans-serif;font-size:26px;line-height:1.2}.eyebrow{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.subtitle{color:var(--muted)}.fine-print{font-size:12px;line-height:1.55;color:var(--muted)}.notice{background:#fff7e5;border:1px solid #dfc897;color:#52380e;border-radius:0}.error{background:#fff0f1;color:#762c43}.site-header a:focus-visible{outline-color:#e7c984}
.home-lead{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:end;padding:12px 0 34px;border-bottom:1px solid var(--line)}.home-lead h1{margin:12px 0 14px;max-width:550px}.home-lead .subtitle{max-width:450px;margin:0}.discovery{position:relative;max-width:680px}.discovery label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:10px}.search-control{display:flex;align-items:center;background:#fff;border:2px solid var(--navy);padding:0 13px;gap:9px}.search-control>span{font-size:28px;line-height:1}.search-control input{min-width:0;width:100%;border:0;background:transparent;color:var(--navy);min-height:56px;padding:10px 0;font-size:16px;border-radius:0}.search-control input:focus{outline:none;box-shadow:none}.search-control:focus-within{outline:3px solid #a16400;outline-offset:3px}.search-control kbd{font-size:17px;color:var(--muted)}.search-hint{font-size:12px;color:var(--muted);margin:10px 0 0}.discovery-results{position:absolute;left:0;right:0;top:89px;margin:0;padding:0;list-style:none;background:#fff;border:1px solid var(--navy);box-shadow:0 8px 18px #142b461c;z-index:25;max-height:370px;overflow:auto}.discovery-results a{display:flex;flex-direction:column;padding:12px 16px;min-height:60px;gap:3px}.discovery-results li+li{border-top:1px solid var(--line)}.discovery-results li[aria-selected=true]{background:#e8eff5;box-shadow:inset 4px 0 var(--accent)}.discovery-results strong{font-size:15px}.discovery-results span{font-size:12px;color:var(--muted)}.search-empty{padding:16px;color:var(--muted);font-size:14px}
.state-panels{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:30px 0 8px}.state-panel{--state-color:var(--indiana);border-top:5px solid var(--state-color);background:#fff;padding:28px 28px 8px}.state-panel.michigan{--state-color:var(--michigan)}.state-panel .eyebrow{color:var(--state-color);margin-top:0}.state-panel h2{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:40px;margin:12px 0 9px}.state-panel h2 a{color:var(--state-color)}.state-panel p{font-size:14px;color:var(--muted)}.panel-title-link{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-title-link span{font-size:28px;color:var(--state-color)}.panel-links{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:24px}.panel-links a{min-height:54px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--state-color);font-weight:800}.panel-links a+a{border-left:1px solid var(--line)}
.section-heading{border-top:2px solid var(--navy);display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-top:17px;margin:36px 0 18px}.section-heading h2{margin:0}.section-heading a{font-size:13px;font-weight:700;min-height:44px;display:flex;align-items:center}.editorial-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:36px}.resource-note{border-left:1px solid var(--line);padding-left:28px}.resource-note h3{font-family:Georgia,serif;font-size:25px;line-height:1.2}.resource-note p{font-size:14px;color:var(--muted)}.state-intro{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.state-intro h1{margin:8px 0 10px}.state-nav{display:flex;gap:32px;border-bottom:2px solid var(--accent);padding:17px 0;margin:24px 0}.state-nav a{min-height:44px;display:flex;align-items:center;font-weight:800;color:var(--accent)}
.table-card{background:#fff;border:0;border-radius:0;border-top:2px solid var(--accent);overflow:auto}.table-title{padding:18px 20px;border-bottom:1px solid var(--line)}.table-title h2{font-size:20px}table{width:100%;border-collapse:collapse}th{font-size:10px;letter-spacing:.8px;color:var(--muted);background:#eceeea;text-align:left;padding:14px 18px}td{padding:13px 18px;border-bottom:1px solid var(--line);font-size:14px}tbody tr:hover{background:#f6f8fa}.rank{border:0;background:transparent;color:var(--accent);min-width:24px;font-weight:800}.top-rank{color:var(--accent);background:transparent}.rating{font-size:13px;text-align:right;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.school a{color:var(--navy);font-weight:700}.toolbar{border:0;border-bottom:1px solid var(--line);padding:20px 0;background:transparent;border-radius:0;gap:16px}.field input,.field select,.toolbar select{background:#fff;border:1px solid #9ba5b0;color:var(--navy);border-radius:0;min-height:46px}.section-nav{border:0}.source-details{border:1px solid var(--line);background:#fff}.source-details summary{min-height:48px;padding:10px}.release-card{border:0;background:none;padding:0;border-radius:0;max-width:320px}.official-tag{color:var(--accent)}.intro{padding:0 0 20px}.state-wrap{display:none}.road-home-promo{display:none}
.schedule-games{display:block}.date-heading{font-size:18px;border-bottom:1px solid var(--line);padding:20px 0 10px;grid-column:1/-1}.scoreboard-day{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.schedule-game{border:1px solid var(--line);border-top:3px solid var(--accent);background:#fff;border-radius:0;padding:18px 20px;min-width:0}.schedule-game h2{font-size:18px;line-height:1.4}.game-date{margin:0 0 10px;color:var(--muted);font-size:11px;letter-spacing:.5px}.score-team{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px}.score-team a{font-weight:700;min-height:44px;display:flex;align-items:center}.score-team strong{font-size:24px;font-variant-numeric:tabular-nums}.score-site{font-size:10px;color:var(--muted);min-width:32px}.score-name{display:flex;align-items:center;gap:10px}.game-status{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.4px}.game-details{border-top:1px solid var(--line);padding-top:12px}.game-details dt{color:var(--muted)}.game-details dd{font-size:13px;color:var(--navy)}.matchup-details summary{cursor:pointer;font-size:12px;color:var(--muted);min-height:44px;padding:12px 0}.schedule-week-nav button,.profile-actions a{background:#fff;border:1px solid var(--line);color:var(--accent);border-radius:0;min-height:44px;padding:10px 16px}.schedule-week-nav{gap:16px}.schedule-week-nav button:disabled{opacity:.45}.pending-card{background:#fff;border:1px solid var(--line);border-radius:0}.pending-card p{color:var(--muted)}.status-chip{color:var(--accent);background:#eef0f3}.integrated-bracket{border:1px solid var(--line)}
.team-page .profile-nav{margin-bottom:24px}.team-page .team-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:0;background:#fff}.team-page .stat-card{border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;padding:20px}.team-page .stat-card:last-child{border:0}.team-page .stat-card strong{font-size:23px}.team-page .stat-card h2{font-size:10px;font-family:Arial,sans-serif}.team-page .stat-card p{font-size:11px;color:var(--muted)}.team-page .profile-panel{background:#fff;border:0;border-top:2px solid var(--line);border-radius:0}.team-page .profile-panel h2{font-family:'Arial Narrow',Arial,sans-serif}.team-page .history-panel{margin-top:32px}.team-page .team-heading{margin-bottom:20px}.team-page .team-heading h1{max-width:none}.team-page .team-heading .back-ratings{margin-top:0}.team-page .next-game{background:var(--navy);color:#fff;padding:24px 28px;margin:24px 0;display:grid;grid-template-columns:1fr auto;gap:16px;border-left:5px solid var(--gold)}.team-page .next-game h2,.team-page .next-game a{color:#fff}.team-page .next-game h2{font-size:24px;margin:6px 0}.team-page .next-game .eyebrow{color:#e8ce9b}.team-page .next-game p{margin:6px 0;font-size:13px}.team-page .next-game a{min-height:44px;display:inline-flex;align-items:center}.team-page .profile-jump{display:flex;flex-wrap:wrap;gap:12px 26px;margin:24px 0}.profile-jump a{min-height:44px;display:inline-flex;align-items:center;font-size:13px;font-weight:700}.chart-controls button,.history-points button{background:#fff;color:var(--navy);border:1px solid var(--line);min-height:44px}.chart-controls button[aria-pressed=true]{background:var(--accent);color:#fff}.history-chart svg text{fill:var(--muted)}.chart-line{stroke:var(--accent)}.chart-dot{fill:var(--accent);stroke:#fff}.win,.loss{background:#edf2ed;color:#234a30}.loss{background:#f5e8eb;color:#762c43}.form-badge{border-radius:0}.team-page .history-table-wrap{overflow:auto}.team-directory li{background:#fff;border-bottom:1px solid var(--line);border-radius:0}.team-directory li a{color:var(--navy)}.path-controls{display:flex;gap:18px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.path-controls label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.path-controls select{min-height:46px;max-width:100%;background:#fff;color:var(--navy);border:1px solid #9ba5b0;padding:10px}.team-path-list{padding:0;list-style:none;display:grid;gap:14px}.team-path-list>li{background:#fff;border-left:4px solid var(--accent);padding:18px 20px}.team-path-list h3{margin:3px 0 10px;font-size:20px}.path-potential{font-size:12px;color:var(--muted)}.team-path-view{padding:22px 0}.path-heading{display:flex;justify-content:space-between;align-items:center}.bracket-toolbar{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.bracket-toolbar button{min-height:46px;background:#fff;border:1px solid var(--line);color:var(--navy);padding:10px 18px}.bracket-toolbar button[aria-pressed=true]{background:var(--accent);color:#fff}
@media(max-width:900px){.site-masthead{gap:20px}.primary-nav{gap:16px}.masthead-search{display:none}.site-wordmark{font-size:25px}.home-lead{gap:25px}.home-lead h1{font-size:42px}.scoreboard-day{grid-template-columns:1fr}}
@media(max-width:650px){.site-masthead{min-height:72px;padding:14px 20px;flex-wrap:wrap;gap:12px;position:relative}.site-wordmark{font-size:23px}.site-tagline{font-size:7px;letter-spacing:.6px}.menu-toggle{display:block;margin-left:auto}.primary-nav{display:none;flex-basis:100%;margin:0;flex-wrap:wrap;border-top:1px solid #5e6b7d;padding-top:8px;gap:6px 24px}.primary-nav.is-open{display:flex}main{padding:26px 20px 42px}.home-lead{display:block;padding:0 0 24px}.home-lead h1{font-size:36px;margin:10px 0}.home-lead .subtitle{font-size:14px;margin-bottom:24px}.state-panels{grid-template-columns:1fr;gap:18px;padding-top:24px}.state-panel{padding:20px 22px 2px}.state-panel h2{font-size:31px;margin:8px 0}.state-panel p{margin:8px 0;font-size:13px}.state-panel .eyebrow{font-size:9px}.panel-links{margin-top:15px}.panel-links a{min-height:48px}.state-intro{display:block}.state-intro h1{font-size:40px}.state-intro .discovery{margin-top:22px}.state-nav{gap:28px;margin:20px 0;padding:8px 0}.section-heading{margin-top:28px;padding-top:12px}.section-heading h2{font-size:22px}.editorial-grid{display:block}.resource-note{border:0;border-top:1px solid var(--line);margin-top:28px;padding:10px 0}.site-footer{display:block;padding:26px 20px}.site-footer nav{margin-top:18px;gap:4px 18px}.toolbar{display:grid;grid-template-columns:1fr 1fr}.toolbar .search-field{grid-column:1/-1}.toolbar input,.toolbar select{width:100%;max-width:100%;font-size:14px}.intro{display:block}.intro .release-card{margin-top:14px}.table-title{padding:14px}.table-title h2{font-size:17px}th,td{padding:12px 10px}td.school{font-size:13px}.rating{font-size:11px;min-width:100px;max-width:145px}.rank{padding:0;min-width:18px}.table-card{width:100%}.schedule-game{padding:16px}.score-team a{font-size:14px}.score-team strong{font-size:21px}.score-name{gap:6px}.team-page .team-stats{grid-template-columns:1fr 1fr}.team-page .stat-card{padding:16px}.team-page .stat-card strong{font-size:19px}.team-page .next-game{grid-template-columns:1fr;padding:20px;margin:20px 0}.team-page .next-game h2{font-size:22px}.team-page .profile-panel{padding:20px 14px}.team-page .team-grid{grid-template-columns:1fr}.team-page .schedule-table td{padding:12px 6px}.team-page .schedule-table td:first-child{width:55px;font-size:12px}.team-page .opponent-context{font-size:10px}.team-page .profile-cutoff{font-size:11px}.team-page h2{font-size:21px}.path-controls{display:block}.path-controls label{margin:12px 0}.path-controls select{width:100%}.game-matchup{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.site-editions{max-width:1156px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:40px;padding:0 0;color:#d8dee6;border-top:1px solid #506176;font-size:10px;letter-spacing:1px}.site-editions nav{display:flex;gap:24px}.site-editions a{display:flex;align-items:center;min-height:40px;color:#fff;font-size:12px;font-weight:700}.site-editions a[aria-current=page]{text-decoration:underline;text-decoration-color:#e8ce9b;text-decoration-thickness:2px}.team-page .profile-nav{display:none}@media(max-width:650px){.site-editions{margin:0 20px;min-height:36px}.site-editions a{min-height:36px}.team-page .team-heading h1{font-size:36px}}

.team-page .back-ratings{color:var(--accent)}.team-page .score{white-space:normal;overflow-wrap:anywhere;max-width:110px}.team-page .stat-card strong{overflow-wrap:anywhere}@media(max-width:650px){.team-page .stat-card strong{font-size:17px}.team-page .score{max-width:90px;font-size:13px}}

.section-nav a:nth-child(n+3){display:none}body[data-page=schedule] #section-nav,body[data-page=brackets] #section-nav{display:none}.section-nav{gap:24px;padding:6px 0;margin-bottom:12px}.section-nav a{min-height:44px;padding:10px 0}

.path-controls input{min-height:46px;padding:10px;background:#fff;color:var(--navy);border:1px solid #9ba5b0;max-width:100%}.team-path-list li p{overflow-wrap:anywhere}.path-controls{align-items:center}
.skip{background:var(--navy);color:#fff}.team-page .team-link,.team-page .source-link,.team-page .history-points strong,.team-page .playoff-chip,.integrated-bracket-toolbar a,.road-main .road-text-link,.road-main .hero-jump,.road-main .updates-links a,.road-main .preview-note a,.road-main .school-grid h3,.road-main .bracket-road-link{color:var(--accent)}.team-page .next-game a{color:#fff}.road-main a:hover{color:var(--accent)}
.team-page .highlights a{color:var(--accent)}

.search-control .search-submit{flex-shrink:0;min-width:68px;min-height:44px;margin:4px 0;padding:8px 10px;border:0;border-radius:0;background:var(--navy);color:#fff;font-size:13px;font-weight:700;cursor:pointer}.search-control .search-submit:hover{background:#23496D}.search-control .search-submit:focus-visible{outline:3px solid #a16400;outline-offset:3px}

/* Six-link shared navigation, including JOC Lab. */
@media(min-width:901px){.site-masthead{gap:20px}.primary-nav{gap:18px}.masthead-search{padding-left:12px}}

/* Reserve the destination viewport while its own data loads. */
body #content[aria-busy="true"]{min-height:calc(100svh - 130px)}
