:root{--crimson:#9e1b32;--gray:#828a8f;--white:#fff;--black:#000;--pachyderm:#5f6a72;--chimes:#c1c6c9;--ivory:#dad7cb;--burgundy:#772432;--red:#d0103a;--yellow:#f2d653;--teal:#005c84;--paper:#f8f6ef;--line:#c7c2b5;--ink:#211d1e;--shadow:4px 4px 0 #000}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit}.shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:28px 20px;background:var(--burgundy);color:#fff}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:950;letter-spacing:.055em}.mark{width:42px;height:42px;border:3px solid #fff;display:grid;place-items:center;font:700 25px Georgia,serif;transform:rotate(-4deg)}.brand small{display:block;margin-top:2px;font-size:9px;letter-spacing:.14em;opacity:.72}.nav{display:grid;gap:7px;margin-top:42px}.nav a{padding:12px 14px;text-decoration:none;font-size:14px;font-weight:800}.nav a:hover,.nav a.active{background:var(--yellow);color:#000}.season-card{position:absolute;bottom:24px;left:20px;right:20px;padding:14px;border:1px solid rgba(255,255,255,.28);font-size:12px;line-height:1.5}.season-card strong{font-family:Georgia,serif;font-size:15px}.main{width:100%;max-width:1540px;margin:auto;padding:34px 42px 70px}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.eyebrow{color:var(--burgundy);font:800 11px Georgia,serif;letter-spacing:.16em;text-transform:uppercase}.topbar h1,.page-title{margin:4px 0 0;font:700 clamp(30px,4vw,48px)/1 Georgia,serif}.filters{display:flex;align-items:end;gap:9px;flex-wrap:wrap}.field{display:grid;gap:4px}.field label{font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--pachyderm)}select,input,.button{min-height:42px;border:1px solid var(--line);border-radius:2px;background:var(--paper);padding:9px 12px;color:var(--ink);font:700 13px inherit}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--burgundy);border-color:var(--burgundy);color:#fff;text-decoration:none;cursor:pointer}.button.yellow{background:var(--yellow);border-color:#000;color:#000}.button.ghost{background:transparent;border-color:currentColor;color:var(--burgundy)}.content-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(275px,.72fr);gap:22px;min-width:0}.content-grid>*{min-width:0}.card{background:var(--paper);border:1px solid #000;box-shadow:var(--shadow)}aside>.card+.card{margin-top:22px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 21px;border-bottom:1px solid var(--line)}.card-head h2{margin:0;font:700 18px Georgia,serif}.muted{color:var(--pachyderm);font-size:12px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:11px 14px;color:var(--pachyderm);font-size:10px;letter-spacing:.1em;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{padding:12px 14px;border-top:1px solid var(--line);font-size:13px;font-weight:650;white-space:nowrap}.data-table tbody tr:hover{background:#f0ebdf}.rank-number{font:700 21px Georgia,serif}.team-cell{display:flex;align-items:center;gap:10px;text-decoration:none}.team-logo{width:34px;height:34px;object-fit:contain}.team-fallback{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e9e4d7;color:var(--burgundy);font-weight:950}.rating{font-weight:950}.movement{font-size:11px;font-weight:900}.up{color:var(--teal)}.down{color:var(--red)}.hero{padding:24px;background:#000;color:#fff}.hero .eyebrow{color:var(--yellow)}.hero-score{margin:12px 0 3px;font:700 50px Georgia,serif}.hero a{text-decoration:none}.hero-name{font:700 20px Georgia,serif}.mini-list{list-style:none;margin:0;padding:5px 18px 16px}.mini-list li{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:13px 2px;border-bottom:1px solid var(--line);font-size:12px}.mini-list li:last-child{border:0}.tag{display:inline-block;padding:5px 7px;background:#e9e4d7;color:var(--burgundy);font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.tag.good{background:#d9e9e7;color:#004b59}.tag.bad{background:#f3d9dd;color:#8b1028}.notice{margin-bottom:22px;padding:13px 16px;border:1px solid #000;background:var(--yellow);box-shadow:3px 3px 0 #000;font-size:13px;font-weight:750}.notice.error{background:#f3d9dd;color:#780b20}.empty{padding:44px 22px;text-align:center;color:var(--pachyderm)}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(230px,1fr));gap:16px}.game-card{background:var(--paper);border:1px solid #000;box-shadow:3px 3px 0 #000}.game-meta{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line);font-size:10px;font-weight:900;text-transform:uppercase}.matchup{padding:10px 14px}.game-team{display:grid;grid-template-columns:1fr auto;gap:10px;padding:8px 0;font-weight:800}.game-team a{text-decoration:none}.game-team.winner{font-weight:950}.game-score{font:700 20px Georgia,serif}.venue{padding:9px 14px;border-top:1px solid var(--line);color:var(--pachyderm);font-size:11px}.team-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:24px;background:#000;color:#fff}.team-banner .team-logo,.team-banner .team-fallback{width:70px;height:70px}.team-banner h1{margin:0 0 6px;font:700 clamp(28px,4vw,43px) Georgia,serif}.team-banner .hero-score{text-align:right}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.stat{padding:18px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{display:block;font:700 25px Georgia,serif}.stat span{font-size:10px;font-weight:900;color:var(--pachyderm);text-transform:uppercase}.chart{display:flex;align-items:end;gap:6px;height:175px;padding:20px 20px 30px}.bar{position:relative;flex:1;min-width:12px;background:var(--crimson)}.bar span{position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);font-size:9px}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.admin-stat{padding:20px}.admin-stat strong{display:block;font:700 32px Georgia,serif}.admin-stat span{font-size:10px;font-weight:900;text-transform:uppercase;color:var(--pachyderm)}.action-panel{padding:20px}.action-panel form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.action-panel p{max-width:720px;color:var(--pachyderm);font-size:13px;line-height:1.6}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.team-insights{display:grid;gap:22px;min-width:0}.rank-chart .bar{background:var(--teal)}.rank-chart .bar b{display:block;padding-top:7px;color:#fff;font-size:10px;text-align:center}.footer{margin-top:35px;padding-top:16px;border-top:1px solid #aaa397;color:var(--pachyderm);font-size:11px}.mobile-toggle{display:none}
@media(max-width:1080px){.game-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.admin-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.shell{display:block}.sidebar{position:relative;height:auto;padding:16px}.brand{padding-right:50px}.mobile-toggle{display:block;position:absolute;right:16px;top:18px;background:var(--yellow);border:1px solid #000;width:40px;height:38px;font-size:20px}.nav{display:none;margin-top:16px}.nav.open{display:flex;overflow:auto}.nav a{white-space:nowrap}.season-card{display:none}.main{padding:24px 14px 55px}.topbar{display:block}.filters{margin-top:20px}.field{flex:1;min-width:90px}.field select{width:100%}.game-grid,.two-col{grid-template-columns:1fr}.team-banner{grid-template-columns:auto 1fr}.team-banner .hero-score{grid-column:1/-1;text-align:left;margin:0}.stats{grid-template-columns:repeat(2,1fr)}.data-table th:nth-child(5),.data-table td:nth-child(5),.data-table th:nth-child(6),.data-table td:nth-child(6){display:none}}
@media(max-width:460px){.admin-grid{grid-template-columns:1fr}.game-grid{grid-template-columns:1fr}.data-table th,.data-table td{padding:10px 8px}.team-logo,.team-fallback{display:none}}
.conference-table .current-team{background:#eee4c3}.conference-table .current-team:hover{background:#e7dab0}.conference-table .team-logo,.conference-table .team-fallback{width:28px;height:28px}.conference-table td{padding-top:9px;padding-bottom:9px}.team-hero{background:var(--leader-primary);color:var(--leader-ink);border-top:8px solid var(--leader-secondary)}.team-hero .eyebrow{color:var(--leader-ink);opacity:.75}
.sortable-table th[role=button]{cursor:pointer;user-select:none}.sortable-table th[role=button]:hover,.sortable-table th[role=button]:focus-visible{background:#eee8db;color:var(--ink);outline:2px solid var(--burgundy);outline-offset:-2px}.sortable-table th[aria-sort]::after{display:inline-block;width:1em;margin-left:5px;content:'\2195';opacity:.45}.sortable-table th[aria-sort=ascending]::after{content:'\2191';opacity:1}.sortable-table th[aria-sort=descending]::after{content:'\2193';opacity:1}
.predictor-form{margin-bottom:22px}.matchup-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(145px,.65fr) minmax(120px,.45fr) auto;gap:12px;align-items:end;padding:22px}.matchup-form select{width:100%}.predictor-form>p{margin:0;padding:0 22px 20px}.prediction-grid{display:grid;grid-template-columns:1fr minmax(190px,.55fr) 1fr;gap:22px;align-items:stretch}.prediction-team{overflow:hidden}.prediction-color{display:flex;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid #000}.prediction-color h2{margin:0;font:700 22px Georgia,serif}.prediction-values{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;align-items:baseline;padding:20px}.prediction-values strong{font:700 28px Georgia,serif}.prediction-values span{font-size:12px;color:var(--pachyderm)}.prediction-summary{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.prediction-summary strong{margin:8px 0;font:700 24px Georgia,serif}.prediction-summary small{color:var(--pachyderm)}.model-note{margin-top:22px;padding:16px 18px;border-left:5px solid var(--burgundy);background:rgba(255,255,255,.38);font-size:12px;line-height:1.55}.model-note strong{margin-right:8px}.game-prediction{display:inline-block;margin-top:4px;color:var(--burgundy);font-size:11px;font-weight:850}.game-prediction a{text-decoration:underline}
@media(max-width:1080px){.matchup-form{grid-template-columns:1fr 1fr}.prediction-grid{grid-template-columns:1fr}.prediction-summary{min-height:150px}}
@media(max-width:600px){.matchup-form{grid-template-columns:1fr}}
.confidence-badge{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid var(--burgundy);background:#fff7e3;color:var(--burgundy);font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.statistics-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.statistics-layout{display:block}.statistics-programs{min-width:0}.statistics-programs .data-table{table-layout:auto}.statistics-programs .data-table th{padding:10px 9px;white-space:normal;line-height:1.25;vertical-align:bottom}.statistics-programs .data-table td{padding:10px 9px}.statistics-programs .team-cell{min-width:150px}.statistics-programs .team-logo,.statistics-programs .team-fallback{width:30px;height:30px}.statistics-aside{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.history-list,.record-list{list-style:none;margin:0;padding:5px 18px 12px}.history-list li{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:8px;padding:11px 2px;border-bottom:1px solid var(--line)}.history-list li:last-child,.record-list li:last-child{border-bottom:0}.history-list>li>strong{font:700 15px Georgia,serif}.history-list a{display:flex;align-items:center;gap:9px;text-decoration:none;font-size:12px;font-weight:850}.history-list .team-logo,.history-list .team-fallback{width:28px;height:28px}.history-list small,.record-list small{display:block;margin-top:2px;color:var(--pachyderm);font-size:10px;font-weight:650}.record-list{counter-reset:record}.record-list li{counter-increment:record;display:grid;grid-template-columns:22px 1fr auto;gap:8px;align-items:center;padding:11px 2px;border-bottom:1px solid var(--line)}.record-list li::before{content:counter(record);color:var(--burgundy);font:700 15px Georgia,serif}.record-list a{text-decoration:none;font-size:12px;font-weight:850}.record-list>li>strong{font:700 15px Georgia,serif}.statistics-note{margin:20px 0 0;padding:13px 16px;border-left:4px solid var(--burgundy);background:rgba(255,255,255,.38);color:var(--pachyderm);font-size:11px;line-height:1.5}
.champion-mark{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border:1px solid #000;background:var(--yellow);color:#000;font-size:13px;font-weight:950;line-height:1;box-shadow:2px 2px 0 #000}
.stepper-control{display:flex;align-items:stretch}.stepper-control select{min-width:76px;border-left:0;border-right:0;border-radius:0;text-align:center}.filter-arrow{display:grid;place-items:center;width:38px;min-height:42px;border:1px solid var(--line);background:var(--paper);color:var(--burgundy);font:900 24px/1 Georgia,serif;text-decoration:none}.filter-arrow:first-child{border-radius:2px 0 0 2px}.filter-arrow:last-child{border-radius:0 2px 2px 0}.filter-arrow:hover{background:var(--yellow);border-color:#000;color:#000}.filter-arrow.disabled{background:#eeeae0;color:var(--chimes);cursor:default}.conference-field select{max-width:190px}
@media(max-width:1180px){.statistics-aside{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.statistics-summary{grid-template-columns:repeat(2,1fr)}.statistics-aside{grid-template-columns:1fr}}
@media(max-width:760px){.ranking-filters{display:grid;grid-template-columns:1fr 1fr}.ranking-filters .field{min-width:0}.ranking-filters .field select{min-width:0}.ranking-filters .stepper-control select{width:calc(100% - 76px)}.conference-field select{max-width:none}}
@media(max-width:460px){.statistics-summary{grid-template-columns:1fr}}
.insight-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:22px}.insight-stat{padding:18px;min-width:0}.insight-stat span{display:block;min-height:28px;color:var(--pachyderm);font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.insight-stat strong{display:block;margin:7px 0 4px;font:700 clamp(23px,2.2vw,34px) Georgia,serif}.insight-stat small{display:block;color:var(--pachyderm);font-size:10px}.insight-stat.primary{background:var(--burgundy);color:#fff}.insight-stat.primary span,.insight-stat.primary small{color:#fff;opacity:.78}.insight-panels{margin-bottom:22px}.advantage-list{padding:10px 20px 18px}.advantage-row{display:grid;grid-template-columns:minmax(145px,1fr) minmax(110px,1.25fr) 54px;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.advantage-row:last-child{border-bottom:0}.advantage-row strong{display:block;font:700 14px Georgia,serif}.advantage-row span{display:block;margin-top:3px;color:var(--pachyderm);font-size:10px}.advantage-row>b{text-align:right;font:700 15px Georgia,serif}.rate-track{height:11px;border:1px solid var(--line);background:#e8e2d6}.rate-track i{display:block;height:100%;background:var(--teal)}.decade-card{margin-top:0}
@media(max-width:1250px){.insight-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.insight-summary{grid-template-columns:repeat(2,1fr)}.advantage-row{grid-template-columns:1fr 48px}.rate-track{grid-column:1/-1;grid-row:2}.advantage-row>b{grid-column:2;grid-row:1}}
@media(max-width:460px){.insight-summary{grid-template-columns:1fr}}
.login-shell{min-height:calc(100vh - 140px);display:grid;place-items:center}.login-card{width:min(100%,560px);overflow:hidden}.login-banner{display:flex;align-items:center;gap:18px;padding:25px;background:var(--burgundy);color:#fff}.login-banner .mark{flex:0 0 48px;width:48px;height:48px}.login-banner .eyebrow{color:var(--yellow)}.login-banner h1{margin:3px 0 5px;font:700 32px Georgia,serif}.login-banner p{margin:0;font-size:12px;opacity:.8}.login-card form,.admin-password form{display:grid;gap:14px;padding:24px}.login-card .button,.admin-password .button{justify-self:start}.admin-password{max-width:760px}.admin-password>p{margin:0;padding:0 24px 24px}.admin-stat .button[aria-disabled=true]{pointer-events:none;opacity:.45}.admin-grid .admin-stat:first-child strong{font-size:24px;overflow-wrap:anywhere}.admin-grid .admin-stat:nth-child(2) strong{font-size:18px}
@media(max-height:700px) and (min-width:761px){.nav{gap:3px;margin-top:24px}.nav a{padding:9px 12px}.season-card{bottom:12px}}
.table-pagination{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:16px;padding:14px 18px;border-top:1px solid var(--line);background:#f2eee4}.pagination-summary{color:var(--pachyderm);font-size:11px;font-weight:800}.pagination-size{display:flex;align-items:center;gap:8px;color:var(--pachyderm);font-size:10px;font-weight:900;text-transform:uppercase}.pagination-size select{min-height:34px;padding:5px 28px 5px 9px}.pagination-navigation{display:flex;justify-content:flex-end;align-items:center;gap:5px;flex-wrap:wrap}.page-button{min-width:34px;height:34px;padding:0 9px;border:1px solid var(--line);background:var(--paper);color:var(--burgundy);font-size:11px;font-weight:900;cursor:pointer}.page-button:hover:not(:disabled),.page-button[aria-current=page]{border-color:#000;background:var(--yellow);color:#000}.page-button:disabled{opacity:.4;cursor:default}.page-ellipsis{padding:0 3px;color:var(--pachyderm)}
.statistics-aside>.card+.card{margin-top:0}
@media(max-width:760px){.table-pagination{grid-template-columns:1fr 1fr}.pagination-navigation{grid-column:1/-1;justify-content:flex-start}.pagination-size{justify-content:flex-end}}
