:root{--void: #060a0e;--panel: #0c141b;--panel-2: #101b24;--edge: #1b2a35;--line: rgba(46, 230, 107, .07);--turf: #2ee66b;--turf-dim: rgba(46, 230, 107, .14);--chalk: #e9f4ee;--dim: #7d94a0;--amber: #ffb02e;--red: #ff5566;--px: "Press Start 2P", monospace;--body: "Chakra Petch", system-ui, sans-serif;--r: 12px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{overflow-x:hidden;background:radial-gradient(1200px 600px at 50% -100px,rgba(46,230,107,.06),transparent 60%),repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 110px),var(--void);color:var(--chalk);font-family:var(--body);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}#root{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.container{flex:1;width:100%}.footer{width:100%}a{color:var(--turf);text-decoration:none}a:hover{text-decoration:underline}button{font-family:var(--body)}:focus-visible{outline:2px solid var(--turf);outline-offset:2px;border-radius:4px}h1{margin:0;font-family:var(--px);font-size:clamp(20px,5vw,30px);color:var(--chalk);text-shadow:0 0 18px rgba(46,230,107,.35)}h2{font-family:var(--px);font-size:10px;letter-spacing:2px;color:var(--turf);margin:26px 0 12px}h3{font-family:var(--px);font-size:9px;letter-spacing:2px;color:var(--dim);margin:26px 0 10px}.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:12px;padding:10px 16px;background:#060a0eeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--edge)}.brand{display:flex;align-items:center;gap:10px;color:var(--chalk)}.brand:hover{text-decoration:none}.brand-mark{width:34px;height:34px;flex:none;filter:drop-shadow(0 0 6px rgba(46,230,107,.55))}.brand-word{font-family:var(--px);font-size:15px;letter-spacing:1px;color:var(--turf);text-shadow:0 0 12px rgba(46,230,107,.5)}.brand-sub{display:block;font-family:var(--body);font-size:10px;letter-spacing:3px;color:var(--dim);margin-top:3px}.dgn{color:var(--amber);font-weight:600}.dgn:hover{color:#ffc95e}.nav nav{margin-left:auto;display:flex;align-items:center;gap:8px}.nav nav a{font-size:13px;font-weight:600;letter-spacing:1px;color:var(--dim);padding:7px 10px;border-radius:8px;border:1px solid transparent;text-transform:uppercase}.nav nav a:hover{color:var(--chalk);text-decoration:none}.nav nav a.active{color:var(--turf);border-color:var(--edge);background:var(--panel)}.container{max-width:1060px;margin:0 auto;padding:18px 14px 90px}.footer{margin-top:60px;padding:0 14px 24px;text-align:center;font-size:10px;letter-spacing:3px;color:#3a4d58;display:flex;flex-direction:column;align-items:center;gap:8px;text-transform:uppercase}.foot-brand{letter-spacing:3px}.foot-dgn{text-transform:none;font-family:var(--px);font-size:8px;letter-spacing:2px;color:var(--amber)}.foot-dgn:hover{color:#ffc95e;text-decoration:none}.foot-note{max-width:40rem;line-height:1.8}.foot-note a{color:var(--amber)}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 20px;margin:14px 0 4px}.page-subtitle{color:var(--dim);font-size:14px;margin:6px 0 14px}.day-heading{font-family:var(--px);font-size:10px;letter-spacing:2px;color:var(--turf);margin:26px 0 12px;padding-bottom:8px;border-bottom:1px dashed var(--edge)}.empty-note{color:var(--dim);font-size:14px;padding:26px 6px;text-align:center}select,.btn{font-family:var(--px);font-size:9px;color:var(--turf);background:var(--panel);border:1px solid var(--edge);border-radius:8px;padding:9px 10px;cursor:pointer}select:hover,.btn:hover:not(:disabled){color:var(--chalk)}select:focus{outline:none;border-color:var(--turf)}.btn:disabled{opacity:.4;cursor:default}.week-picker{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.feedback{display:flex;align-items:center;gap:12px;padding:20px 0;color:var(--dim);font-size:14px}.feedback.error{color:var(--red)}.spinner{width:18px;height:18px;border:2px solid var(--edge);border-top-color:var(--turf);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.card-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:26px}@media (min-width: 940px){.card-grid{grid-template-columns:1fr 1fr}}.game-card{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--edge);border-radius:var(--r);padding:12px 14px 14px;transition:transform .15s ease,border-color .15s ease}.game-card:hover{border-color:#27404f}.game-card-status{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.4px;color:var(--dim);margin-bottom:10px}.live-badge{font-family:var(--px);font-size:8px;letter-spacing:1px;padding:5px 8px;border-radius:6px;border:1px solid rgba(255,85,102,.5);color:var(--red);white-space:nowrap;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{50%{opacity:.45}}.team-row{display:flex;align-items:center;gap:10px;padding:6px 0}.team-row.loser{opacity:.55}.team-row.winner .team-score{color:var(--turf)}.team-name{color:var(--chalk);font-size:16px;font-weight:700;letter-spacing:.3px}.team-record{color:var(--dim);font-size:12px}.team-score{margin-left:auto;font-family:var(--px);font-size:16px;color:var(--chalk);min-width:2ch;text-align:right}.possession{font-size:12px}.game-card-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:10px;font-size:12px;color:var(--dim)}.team-logo{width:26px;height:26px;object-fit:contain;flex-shrink:0}.game-card .team-logo{width:42px;height:42px}.team-logo.small{width:20px;height:20px}.team-logo.big{width:56px;height:56px}.team-logo.hero{width:84px;height:84px}.team-logo.placeholder{display:inline-block;background:var(--panel-2);border:1px solid var(--edge);border-radius:50%}.conference-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}.standings-table,.schedule-table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--edge);border-radius:var(--r);overflow:hidden;font-size:14px}.standings-table th,.standings-table td,.schedule-table th,.schedule-table td{padding:9px 10px;text-align:center;border-bottom:1px solid var(--edge);font-variant-numeric:tabular-nums}.standings-table tbody tr:last-child td,.schedule-table tbody tr:last-child td{border-bottom:none}.standings-table th,.schedule-table th{font-family:var(--px);font-size:8px;letter-spacing:1.5px;color:var(--dim);background:var(--panel-2);text-transform:uppercase}.table-scroll{overflow-x:auto;border-radius:var(--r)}.col-team{text-align:left!important}td.col-team{display:flex;align-items:center;gap:8px;font-weight:700}.vs-at{color:var(--dim);font-size:12px;min-width:1.5ch}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.team-card{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--chalk);background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--edge);border-radius:var(--r);padding:16px 12px;text-align:center;transition:transform .15s ease,border-color .15s ease}.team-card:hover{border-color:#27404f;text-decoration:none}.team-card-name{font-weight:700;font-size:14px}.team-card-abbr{color:var(--dim);font-size:12px}.team-header{display:flex;align-items:center;gap:20px;margin:14px 0 16px}.result-badge{display:inline-block;min-width:1.4rem;text-align:center;font-family:var(--px);font-size:9px;border-radius:4px;padding:3px 5px}.result-w{background:var(--turf);color:#04160a}.result-l{background:var(--red);color:#04160a}.result-t{background:var(--dim);color:#04160a}.tabbar{display:none}@media (max-width: 700px){.nav{padding:8px 12px;gap:8px}.brand-mark{width:28px;height:28px}.brand-word{font-size:12px}.brand-sub{display:none}.nav nav a{display:none}.container{padding:14px 10px 130px}.tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#060a0ef5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--edge)}.tabbar a{flex:1;text-align:center;font-family:var(--px);font-size:9px;letter-spacing:1px;color:var(--dim);padding:12px 4px;border:1px solid var(--edge);border-radius:9px;background:var(--panel)}.tabbar a:hover{text-decoration:none}.tabbar a.active{color:#04160a;background:var(--turf);border-color:var(--turf);box-shadow:0 0 12px #2ee66b66}.footer{margin-bottom:8px}}@media (max-width: 480px){h1{font-size:20px}.game-card{padding:10px 12px 12px}.team-row{gap:8px}.game-card .team-logo{width:36px;height:36px}.team-name{font-size:15px}.team-score{font-size:14px}.standings-table,.schedule-table{font-size:12px}.standings-table th,.standings-table td,.schedule-table th,.schedule-table td{padding:8px 4px}.standings-table th,.schedule-table th{font-size:7px;letter-spacing:1px}td.col-team{gap:6px}.col-team .team-logo.small{width:18px;height:18px}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
