:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--steel-black:#000;--steel-bg:#050505;--steel-bg-raised:#0d0d0d;--steel-bg-card:#111;--steel-bg-inset:#080808;--steel-gold:#ffb612;--steel-gold-bright:#ffd34e;--steel-gold-dim:#c8941a;--steel-gold-deep:#6a5210;--steel-gold-glow:#ffb6128c;--steel-gold-faint:#ffb6121f;--steel-border:#2a220a;--steel-border-strong:#5a4a10;--steel-border-dim:#1a1608;--terminal-text:#ffd166;--terminal-text-dim:#b89350;--terminal-text-muted:#6f5a2a;--alert-red:#ff3b3b;--alert-red-dim:#ff8a8a;--status-green:#4aff9e;--status-green-dim:#2a7a4a;--font-mono:"Share Tech Mono", "Courier New", Consolas, monospace;--font-display:"VT323", "Share Tech Mono", "Courier New", monospace}.app:after{content:"";pointer-events:none;z-index:9999;mix-blend-mode:screen;background:repeating-linear-gradient(#ffb61200 0 2px,#ffb61209 3px,#ffb61200 4px);position:fixed;inset:0}.app:before{content:"";pointer-events:none;z-index:9998;background:radial-gradient(#0000 55%,#0000008c 100%);position:fixed;inset:0}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-mono);background:var(--steel-bg);color:var(--terminal-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;overflow:hidden}.app{background:linear-gradient(#000 0%,#050505 100%);flex-direction:column;height:100vh;display:flex;overflow:hidden}.app-nav{border-bottom:2px solid var(--steel-gold);z-index:100;background:linear-gradient(#0a0a0a 0%,#000 100%);flex:none;grid-template-columns:1fr auto 1fr;align-items:center;padding:14px 24px;display:grid;position:relative;box-shadow:0 0 18px #ffb61240,inset 0 -1px #ffb61266}.app-nav:after{content:"";background:var(--steel-gold-deep);opacity:.6;height:1px;position:absolute;bottom:-6px;left:0;right:0}.nav-brand h1{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 8px var(--steel-gold-glow), 0 0 16px #ffb61259;font-size:1.9rem;font-weight:400;line-height:1}.nav-brand h1:before{content:"> ";color:var(--steel-gold-dim)}.nav-links{justify-self:center;gap:4px;display:flex}.nav-link{color:var(--terminal-text-dim);cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:0 0;border:1px solid #0000;border-radius:2px;padding:8px 18px;font-size:.9rem;font-weight:400;text-decoration:none;transition:all .15s}.nav-link:hover{color:var(--steel-gold-bright);border-color:var(--steel-border-strong);background:var(--steel-gold-faint);text-shadow:0 0 8px var(--steel-gold-glow)}.nav-link.active{color:var(--steel-black);background:var(--steel-gold);border-color:var(--steel-gold);box-shadow:0 0 12px var(--steel-gold-glow);text-shadow:none;font-weight:700}.nav-right{justify-self:end}.admin-chip{border:1px solid var(--steel-border-strong);color:var(--terminal-text-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:0 0;border-radius:2px;padding:4px 10px;font-size:.72rem;font-weight:400;text-decoration:none;transition:all .15s;display:inline-block}.admin-chip:hover,.admin-chip.active{color:var(--steel-gold);border-color:var(--steel-gold);box-shadow:0 0 10px var(--steel-gold-glow);text-shadow:0 0 6px var(--steel-gold-glow)}.app-main{flex:auto;min-height:0;padding:0;overflow-y:auto}.picker-select{background:var(--steel-bg-inset);color:var(--steel-gold);border:1px solid var(--steel-border-strong);font-family:var(--font-mono);cursor:pointer;letter-spacing:.05em;border-radius:2px;padding:6px 10px;font-size:.9rem}.picker-select:focus{border-color:var(--steel-gold);box-shadow:0 0 10px var(--steel-gold-glow);outline:none}.upload-btn{color:var(--steel-gold);border:1px solid var(--steel-gold);cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:0 0;border-radius:2px;padding:10px 20px;font-size:.85rem;text-decoration:none;transition:all .15s;display:inline-block}.upload-btn:hover{background:var(--steel-gold);color:var(--steel-black);box-shadow:0 0 16px var(--steel-gold-glow)}.loading{text-align:center;color:var(--terminal-text-dim);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;padding:40px}.loading:before{content:"> ";color:var(--steel-gold)}.error{text-align:center;color:var(--alert-red);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 8px #ff3b3b80;padding:40px}.empty-state{text-align:center;color:var(--terminal-text-muted);font-family:var(--font-mono);padding:80px 20px}.empty-state p{letter-spacing:.05em;margin-bottom:20px;font-size:1.05rem}.empty-state button{color:var(--steel-gold);border:1px solid var(--steel-gold);cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:0 0;border-radius:2px;padding:12px 28px;font-size:.9rem;transition:all .15s}.empty-state button:hover{background:var(--steel-gold);color:var(--steel-black);box-shadow:0 0 16px var(--steel-gold-glow)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--steel-bg-inset)}::-webkit-scrollbar-thumb{background:var(--steel-border-strong);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--steel-gold-dim)}@media (width<=768px){.app-nav{grid-template-columns:1fr auto;gap:8px 12px;padding:10px 14px}.nav-brand{grid-area:1/1;min-width:0}.nav-brand h1{white-space:nowrap;text-overflow:ellipsis;font-size:1.3rem;overflow:hidden}.nav-right{grid-area:1/2}.nav-links{-webkit-overflow-scrolling:touch;scrollbar-width:none;grid-area:2/1/auto/-1;justify-content:flex-start;justify-self:stretch;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-link{white-space:nowrap;padding:6px 12px;font-size:.85rem}}.rosters{flex-direction:column;height:100%;padding:20px;display:flex}.rosters-toolbar{background:var(--steel-bg);border-bottom:1px solid var(--steel-border-strong);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:16px;margin:-20px -20px 16px;padding:16px 20px;display:flex}.season-picker{color:var(--terminal-text-dim);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:8px;font-size:.85rem;font-weight:400;display:flex}.season-picker .picker-select{color:var(--steel-gold);padding:8px 14px;font-size:1rem;font-weight:700}.rosters-layout{flex:auto;align-items:stretch;gap:24px;min-height:0;display:flex}.rosters-scroll{flex:auto;min-width:0;min-height:0;padding-right:4px;overflow-y:auto}.transactions-panel{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);border-radius:2px;flex:0 0 300px;align-self:stretch;padding:16px;overflow-y:auto;box-shadow:inset 0 0 20px #ffb6120a}.transactions-panel h3{color:var(--steel-gold);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--steel-border-strong);text-shadow:0 0 8px var(--steel-gold-glow);margin-bottom:12px;padding-bottom:8px;font-size:1.3rem;font-weight:400}.transactions-panel h3:before{content:"// ";color:var(--steel-gold-dim)}.transactions-empty{color:var(--terminal-text-muted);font-size:.85rem;font-style:italic}.transactions-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.transaction-row{background:var(--steel-bg-inset);color:var(--terminal-text);border-left:2px solid var(--steel-gold-deep);border-radius:2px;align-items:baseline;gap:6px;padding:6px 8px;font-size:.85rem;display:flex}.transaction-team{color:var(--steel-gold);text-transform:uppercase;flex:none;min-width:72px;font-weight:700}.transaction-action{color:var(--terminal-text-muted);text-transform:uppercase;letter-spacing:.1em;flex:none;font-size:.75rem}.transaction-release .transaction-action{color:var(--alert-red)}.transaction-acquire .transaction-action{color:var(--status-green)}.transaction-player{color:var(--terminal-text);flex:auto}.transaction-nfl{color:var(--terminal-text-muted);font-size:.8rem}.teams-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;display:grid}.team-card{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);border-radius:2px;transition:all .2s;overflow:hidden;box-shadow:0 0 0 1px #0006,inset 0 0 30px #ffb61208}.team-card:hover{border-color:var(--steel-gold);box-shadow:0 0 16px var(--steel-gold-glow), inset 0 0 30px #ffb6120f}.team-header{border-bottom:1px solid var(--steel-gold-deep);background:linear-gradient(#141010 0%,#0a0805 100%);padding:14px 20px;position:relative}.team-header:before{content:"";background:var(--steel-gold);width:8px;height:8px;box-shadow:14px 0 0 var(--steel-gold-dim), 28px 0 0 var(--steel-gold-deep);opacity:.85;border-radius:50%;position:absolute;top:6px;left:8px}.team-header h3{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 8px var(--steel-gold-glow);margin:14px 0 4px;font-size:1.3rem;font-weight:400}.team-owners{color:var(--terminal-text-muted);letter-spacing:.05em;font-size:.8rem}.team-roster{padding:12px 20px}.position-group{border-bottom:1px dashed var(--steel-border-dim);gap:12px;padding:6px 0;display:flex}.position-group:last-child{border-bottom:none}.position-label{color:var(--steel-gold);letter-spacing:.1em;min-width:32px;padding-top:2px;font-size:.75rem;font-weight:700}.players{flex:1}.player{justify-content:space-between;padding:2px 0;font-size:.9rem;display:flex}.player-name{color:var(--terminal-text)}.nfl-team{color:var(--terminal-text-muted);text-align:right;min-width:40px;font-size:.75rem}.team-footer{color:var(--terminal-text-muted);border-top:1px solid var(--steel-border-dim);text-align:right;letter-spacing:.05em;padding:10px 20px;font-size:.75rem}@media (width<=1024px){.rosters-layout{flex-direction:column;overflow-y:auto}.rosters-scroll{flex:none;padding-right:0;overflow:visible}.transactions-panel{flex:none;align-self:stretch;width:100%;max-height:none;overflow:visible}}@media (width<=768px){.rosters{padding:12px}.rosters-toolbar{gap:10px;margin:-12px -12px 12px;padding:10px 12px}.teams-grid{grid-template-columns:1fr;gap:12px}}.rules-page{max-width:900px;margin:0 auto;padding:20px}.rules-title{font-family:var(--font-display);color:var(--steel-gold);border-bottom:2px solid var(--steel-gold);letter-spacing:.12em;text-transform:uppercase;text-shadow:0 0 10px var(--steel-gold-glow), 0 0 20px #ffb61259;margin-bottom:24px;padding-bottom:12px;font-size:2.2rem;font-weight:400}.rules-title:before{content:"> ";color:var(--steel-gold-dim)}.rules-section{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);border-radius:2px;margin-bottom:16px;padding:24px;box-shadow:inset 0 0 30px #ffb61208}.rules-section h3{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 6px var(--steel-gold-glow);margin-bottom:12px;font-size:1.5rem;font-weight:400}.rules-section h3:before{content:"// ";color:var(--steel-gold-dim)}.rules-section h4{color:var(--steel-gold-bright);letter-spacing:.06em;text-transform:uppercase;margin-top:16px;margin-bottom:8px;font-size:1rem}.rules-section h5{color:var(--terminal-text);letter-spacing:.05em;margin-bottom:6px;font-size:.9rem}.rules-section p{color:var(--terminal-text);margin-bottom:8px;line-height:1.6}.rules-section ul,.rules-section ol{margin-bottom:8px;padding-left:20px}.rules-section li{color:var(--terminal-text);padding:2px 0;line-height:1.7}.rules-section li::marker{color:var(--steel-gold)}.rules-section li strong{color:var(--steel-gold-bright);font-weight:700}.prizes-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.prize-card{background:var(--steel-bg-inset);border:1px solid var(--steel-border-strong);border-radius:2px;flex-direction:column;align-items:center;padding:16px 12px;display:flex}.prize-place{color:var(--terminal-text-dim);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:.78rem}.prize-amount{font-family:var(--font-display);font-size:1.8rem;font-weight:400}.prize-1st{border-color:var(--steel-gold);box-shadow:0 0 12px var(--steel-gold-glow)}.prize-1st .prize-amount{color:var(--steel-gold);text-shadow:0 0 10px var(--steel-gold-glow)}.prize-2nd .prize-amount{color:silver}.prize-3rd .prize-amount{color:#cd7f32}.prize-4th .prize-amount{color:var(--terminal-text-dim)}.tiebreaker-box{background:var(--steel-bg-inset);border-left:2px solid var(--steel-gold);border-radius:2px;margin-top:8px;padding:16px 20px}.tiebreaker-box h4{color:var(--steel-gold-bright);margin-top:12px}.tiebreaker-box h4:first-child{margin-top:0}.tiebreaker-note{color:var(--terminal-text-muted);margin-top:8px;font-size:.85rem;font-style:italic}.lineup-slots{background:var(--steel-bg-inset);border-left:2px solid var(--steel-gold);border-radius:2px;margin-top:12px;padding:16px 20px}.slots-grid{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.slot{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);color:var(--terminal-text);letter-spacing:.04em;border-radius:2px;padding:8px 14px;font-size:.9rem}.slot strong{color:var(--steel-gold);margin-right:4px;font-weight:700}.slot small{color:var(--terminal-text-muted)}.scoring-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);margin-bottom:16px}.scoring-table th,.scoring-table td{text-align:left;border-bottom:1px solid var(--steel-border-dim);padding:8px 12px}.scoring-table th{color:var(--steel-gold);text-transform:uppercase;letter-spacing:.1em;background:var(--steel-bg-inset);border-bottom:1px solid var(--steel-gold-deep);font-size:.78rem}.scoring-table td{color:var(--terminal-text);font-size:.9rem}.scoring-table tbody tr:hover{background:var(--steel-gold-faint)}.scoring-desc{color:var(--terminal-text-muted);margin-bottom:8px;font-size:.85rem;font-style:italic}.pattern-note{text-align:center;font-style:italic;color:var(--terminal-text-muted)!important;font-size:.8rem!important}.yards-bonus-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.special-rule{background:var(--steel-bg-inset);border-left:2px solid var(--steel-gold);border-radius:2px;margin-bottom:12px;padding:16px 20px}.special-rule h4{margin-top:0}.rule-example{color:var(--terminal-text-dim);border-left:3px solid var(--steel-gold-deep);margin-top:8px;padding-left:12px;font-size:.85rem;font-style:italic}.playoff-bracket{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px;display:grid}.playoff-round{background:var(--steel-bg-inset);border:1px solid var(--steel-border-strong);text-align:center;border-radius:2px;padding:14px}.playoff-round h4{color:var(--steel-gold);letter-spacing:.08em;margin:0 0 8px;font-size:.9rem}.playoff-round p{color:var(--terminal-text);margin:0;font-size:.8rem}@media (width<=768px){.prizes-grid{grid-template-columns:repeat(2,1fr)}.playoff-bracket{grid-template-columns:1fr 1fr}.yards-bonus-grid{grid-template-columns:1fr}.slots-grid{gap:6px}}@media (width<=480px){.prizes-grid{grid-template-columns:1fr 1fr}.playoff-bracket{grid-template-columns:1fr}}.gameday{padding:20px}.gameday-header{z-index:10;background:var(--steel-bg);border-bottom:1px solid var(--steel-border-strong);justify-content:space-between;align-items:flex-start;margin:-20px -20px 20px;padding:16px 20px;display:flex;position:sticky;top:0}.gameday-header h2{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.1em;text-transform:uppercase;text-shadow:0 0 8px var(--steel-gold-glow);font-size:1.7rem;font-weight:400}.gameday-header h2:before{content:"> ";color:var(--steel-gold-dim)}.last-update{color:var(--terminal-text-muted);letter-spacing:.05em;font-size:.78rem}.gameday-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.week-picker{gap:6px;display:flex}.auto-refresh-toggle{color:var(--terminal-text-dim);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;font-size:.8rem;display:flex}.auto-refresh-toggle input{accent-color:var(--steel-gold)}.refresh-btn{color:var(--steel-gold);border:1px solid var(--steel-gold);cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:0 0;border-radius:2px;padding:6px 14px;font-size:.8rem;transition:all .15s}.refresh-btn:hover{background:var(--steel-gold);color:var(--steel-black);box-shadow:0 0 12px var(--steel-gold-glow)}.nfl-games-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:24px;display:grid}.nfl-game-card{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);border-radius:2px;padding:14px;transition:all .2s;box-shadow:inset 0 0 20px #ffb61208}.nfl-game-card:hover{border-color:var(--steel-gold-dim)}.nfl-game-card.live{border-color:var(--status-green);background:#0a1408;box-shadow:0 0 12px #4aff9e4d}.nfl-game-card.final{opacity:.7}.ngc-matchup{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.ngc-team{flex:1;align-items:center;gap:6px;display:flex}.ngc-team:last-child{flex-direction:row-reverse}.ngc-logo{object-fit:contain;filter:drop-shadow(0 0 4px #ffb61240);width:24px;height:24px}.ngc-name{color:var(--terminal-text);letter-spacing:.05em;font-size:.9rem;font-weight:700}.ngc-score{font-family:var(--font-display);color:var(--steel-gold);text-shadow:0 0 6px var(--steel-gold-glow);font-size:1.4rem;font-weight:400}.ngc-at{color:var(--terminal-text-muted);font-size:.75rem}.ngc-status{text-align:center;color:var(--terminal-text-muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:.7rem}.nfl-game-card.live .ngc-status{color:var(--status-green);text-shadow:0 0 6px #4aff9e99}.ngc-fantasy{border-top:1px solid var(--steel-border-dim);flex-wrap:wrap;gap:4px;padding-top:6px;display:flex}.ngc-fp{color:var(--terminal-text-dim);background:var(--steel-bg-inset);border:1px solid var(--steel-border-dim);border-radius:2px;padding:2px 6px;font-size:.7rem}.fantasy-scores-section{margin-bottom:24px}.fantasy-scores-section h3{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.1em;text-transform:uppercase;text-shadow:0 0 6px var(--steel-gold-glow);margin-bottom:12px;font-size:1.4rem;font-weight:400}.fantasy-scores-section h3:before{content:"// ";color:var(--steel-gold-dim)}.fantasy-scores-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.fantasy-score-card{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);cursor:pointer;border-radius:2px;transition:all .2s;overflow:hidden;box-shadow:inset 0 0 20px #ffb61208}.fantasy-score-card:hover{border-color:var(--steel-gold-dim)}.fantasy-score-card.expanded{border-color:var(--steel-gold);box-shadow:0 0 16px var(--steel-gold-glow)}.fsc-header{justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.fsc-rank{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.1em;margin-right:6px;font-size:1rem;font-weight:400}.fsc-header h4{color:var(--terminal-text);letter-spacing:.04em;margin-bottom:2px;font-size:.95rem;display:inline}.fsc-owners{color:var(--terminal-text-muted);font-size:.75rem}.fsc-total{font-family:var(--font-display);color:var(--steel-gold-bright);font-variant-numeric:tabular-nums;text-shadow:0 0 10px var(--steel-gold-glow);font-size:2rem;font-weight:400}.fsc-breakdown{border-top:1px solid var(--steel-gold-deep);background:var(--steel-bg-inset);padding:12px 18px}.fsc-empty{color:var(--terminal-text-muted);text-align:center;padding:8px 0;font-size:.85rem}.fsc-player{margin-bottom:10px}.fsc-player:last-child{margin-bottom:0}.fsc-player-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.fsc-player-name{color:var(--terminal-text);font-size:.9rem;font-weight:700}.fsc-pos{color:var(--steel-black);background:var(--steel-gold);letter-spacing:.08em;border-radius:2px;margin-right:6px;padding:1px 5px;font-size:.7rem;font-weight:700;display:inline-block}.fsc-player-pts{font-family:var(--font-display);color:var(--steel-gold-bright);text-shadow:0 0 6px var(--steel-gold-glow);font-size:1.1rem;font-weight:400}.fsc-play{color:var(--terminal-text-dim);justify-content:space-between;padding:1px 0 1px 28px;font-size:.8rem;display:flex}.bonus-pts{color:var(--steel-gold-bright);font-weight:700}.scoring-feed{margin-top:24px}.scoring-feed h3{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.1em;text-transform:uppercase;text-shadow:0 0 6px var(--steel-gold-glow);margin-bottom:12px;font-size:1.4rem;font-weight:400}.scoring-feed h3:before{content:"// ";color:var(--steel-gold-dim)}.feed-list{flex-direction:column;gap:8px;display:flex}.feed-item{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);border-left:3px solid var(--steel-gold);border-radius:2px;flex-wrap:wrap;align-items:baseline;gap:8px;padding:10px 16px;display:flex}.feed-team{color:var(--steel-gold);letter-spacing:.08em;min-width:36px;font-size:.8rem;font-weight:700}.feed-text{color:var(--terminal-text);flex:1;font-size:.85rem}.feed-quarter{color:var(--terminal-text-muted);letter-spacing:.05em;font-size:.75rem}.feed-fantasy{border-top:1px dashed var(--steel-border-dim);gap:12px;width:100%;padding-top:4px;display:flex}.feed-fp{color:var(--steel-gold-bright);font-size:.8rem;font-weight:700}@media (width<=768px){.gameday{padding:12px}.gameday-header{flex-direction:column;gap:10px;margin:-12px -12px 14px;padding:12px}.gameday-controls{justify-content:space-between;row-gap:8px;width:100%}.fantasy-scores-grid{grid-template-columns:1fr}.nfl-games-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;margin-bottom:18px}.nfl-game-card{padding:10px 12px}.ngc-name{font-size:.85rem}.ngc-score{font-size:1.2rem}.fsc-header{flex-wrap:wrap;gap:8px 12px;padding:12px 14px}.fsc-header>div:first-child{flex:60%;min-width:0}.fsc-total{font-size:1.6rem}.fsc-breakdown{padding:10px 14px}.fsc-play{padding-left:20px}}@media (width<=480px){.week-picker{flex:100%}.week-picker .picker-select{flex:1}.nfl-games-grid{grid-template-columns:1fr 1fr}}.drafthub{color:var(--terminal-text);flex-direction:column;height:100%;padding:16px 24px 24px;display:flex}.dh-header{border-bottom:1px solid var(--steel-border-strong);flex:none;margin-bottom:12px;padding-bottom:12px}.dh-header h1{color:var(--steel-gold);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;text-shadow:0 0 10px var(--steel-gold-glow);margin:0 0 4px;font-size:2rem;font-weight:400}.dh-header h1:before{content:"> ";color:var(--steel-gold-dim)}.dh-subtitle{color:var(--terminal-text-muted);letter-spacing:.05em;margin:0;font-size:.85rem}.dh-board{flex-direction:column;flex:auto;min-height:0;display:flex}.dh-approx-note{color:var(--terminal-text-muted);margin-left:4px;font-style:italic}.dh-filters{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);border-radius:2px;flex-direction:column;flex:none;gap:10px;margin-bottom:12px;padding:12px;display:flex;box-shadow:inset 0 0 20px #ffb61208}.dh-filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dh-pos-chips{flex-wrap:wrap;gap:4px;display:flex}.dh-chip{background:var(--steel-bg-inset);border:1px solid var(--steel-border-strong);color:var(--terminal-text-dim);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:2px;padding:4px 12px;font-size:.8rem;transition:all .12s}.dh-chip:hover{background:var(--steel-gold-faint);color:var(--steel-gold-bright);border-color:var(--steel-gold-dim)}.dh-chip.active{background:var(--steel-gold);color:var(--steel-black);border-color:var(--steel-gold);box-shadow:0 0 10px var(--steel-gold-glow);font-weight:700}.dh-search{background:var(--steel-bg-inset);border:1px solid var(--steel-border-strong);color:var(--terminal-text);font-family:var(--font-mono);letter-spacing:.05em;border-radius:2px;min-width:200px;margin-left:auto;padding:6px 10px;font-size:.9rem}.dh-search::placeholder{color:var(--terminal-text-muted)}.dh-search:focus{border-color:var(--steel-gold);box-shadow:0 0 10px var(--steel-gold-glow);outline:none}.dh-toggle-group{border:1px solid var(--steel-border-strong);border-radius:2px;display:inline-flex;overflow:hidden}.dh-toggle{background:var(--steel-bg-inset);color:var(--terminal-text-dim);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;padding:6px 12px;font-size:.8rem}.dh-toggle:not(:last-child){border-right:1px solid var(--steel-border-strong)}.dh-toggle.active{background:var(--steel-gold);color:var(--steel-black);font-weight:700}.dh-check{color:var(--terminal-text-dim);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;align-items:center;gap:6px;margin-left:auto;font-size:.8rem;display:inline-flex}.dh-check input{accent-color:var(--steel-gold)}.dh-table-wrap{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);border-radius:2px;flex:auto;min-height:0;overflow:auto}.dh-table{border-collapse:collapse;width:100%;font-size:.9rem;font-family:var(--font-mono)}.dh-table thead th{z-index:1;background:var(--steel-bg-raised);color:var(--steel-gold);text-transform:uppercase;letter-spacing:.1em;text-align:left;border-bottom:1px solid var(--steel-gold-deep);white-space:nowrap;padding:8px 10px;font-size:.75rem;position:sticky;top:0}.dh-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.dh-th-sortable:hover{color:var(--steel-gold-bright);text-shadow:0 0 6px var(--steel-gold-glow)}.dh-th-stat{text-align:left}.dh-table td{border-bottom:1px solid var(--steel-border-dim);color:var(--terminal-text);padding:6px 10px}.dh-table tbody tr:hover{background:var(--steel-gold-faint)}.dh-row.drafted{opacity:.35;text-decoration:line-through}.dh-cell-check{text-align:center;width:32px}.dh-cell-check input{accent-color:var(--steel-gold)}.dh-cell-name{max-width:220px}.dh-name{color:var(--terminal-text);font-weight:400}.dh-injury{color:var(--alert-red);letter-spacing:.1em;text-transform:uppercase;margin-top:2px;font-size:.7rem;display:inline-block}.dh-cell-pos{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700}.dh-pos-QB{color:#ff6b6b}.dh-pos-RB{color:#4aff9e}.dh-pos-WR{color:var(--steel-gold)}.dh-pos-TE{color:#c77dff}.dh-pos-K{color:var(--steel-gold-bright)}.dh-pos-DEF{color:#7ab0ff}.dh-cell-team{color:var(--terminal-text-muted);font-size:.8rem}.dh-stat{text-align:left;font-variant-numeric:tabular-nums}.dh-stat-empty{color:var(--steel-border-strong)}.dh-cell-adp{text-align:left;color:var(--terminal-text-muted);font-variant-numeric:tabular-nums}.dh-empty-row{text-align:center;color:var(--terminal-text-muted);padding:24px;font-style:italic}.admin-page{width:100%;max-width:960px;margin:0 auto;padding:24px;overflow-y:auto}.admin-header{border-bottom:1px solid var(--steel-gold);justify-content:space-between;align-items:baseline;margin-bottom:24px;padding-bottom:16px;display:flex}.admin-header h2{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.1em;text-transform:uppercase;text-shadow:0 0 8px var(--steel-gold-glow);font-size:1.8rem;font-weight:400}.admin-header h2:before{content:"> ";color:var(--steel-gold-dim)}.admin-email{color:var(--terminal-text-muted);letter-spacing:.05em;font-size:.85rem}.admin-signin{text-align:center;padding:48px 24px}.admin-signin h2{color:var(--steel-gold);margin-bottom:12px}.admin-signin p{color:var(--terminal-text-dim);margin-bottom:24px}.admin-section{margin-bottom:24px}.access-denied-page{background:radial-gradient(#1a0000 0%,#0a0000 70%);justify-content:center;align-items:center;min-height:100%;padding:32px 16px;display:flex}.access-denied{text-align:center;width:100%;max-width:640px;font-family:var(--font-mono);color:var(--alert-red);border:3px solid var(--alert-red);background:#1e00008c;padding:48px 32px;animation:4s linear infinite access-flicker;position:relative;overflow:hidden;box-shadow:0 0 40px #ff3b3b8c,inset 0 0 60px #ff3b3b1f}.access-denied-scanlines{pointer-events:none;mix-blend-mode:screen;background:repeating-linear-gradient(#ff3b3b00 0 2px,#ff3b3b1f 3px,#ff3b3b00 4px);position:absolute;inset:0}.access-denied-title{font-family:var(--font-display);letter-spacing:.2em;text-shadow:0 0 10px #ff3b3b,0 0 30px #ff3b3b,0 0 60px #ff3b3bcc;margin-bottom:12px;font-size:clamp(2.6rem,8vw,5rem);font-weight:400;animation:1.4s ease-in-out infinite access-pulse;position:relative}.access-denied-subtitle{letter-spacing:.25em;color:var(--alert-red-dim);margin-bottom:28px;font-size:clamp(.8rem,2vw,1.05rem);position:relative}.access-denied-terminal{text-align:left;color:var(--alert-red-dim);letter-spacing:.06em;background:#0000008c;border:1px solid #ff3b3b99;margin-bottom:28px;padding:14px 22px;font-size:.85rem;line-height:1.9;display:inline-block;position:relative}.access-denied-blink{color:#fff;background:red;padding:0 6px;font-weight:700;animation:1s step-end infinite access-blink}.access-denied-signin{border:1px solid var(--alert-red);color:var(--alert-red-dim);letter-spacing:.12em;text-transform:uppercase;background:#ff3b3b14;padding:10px 22px;font-family:inherit;font-size:.85rem;text-decoration:none;transition:all .15s;display:inline-block;position:relative}.access-denied-signin:hover{color:#fff;background:#ff3b3b59;box-shadow:0 0 20px #ff3b3bb3}@keyframes access-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.45}94%{opacity:1}96%{opacity:.75}97%{opacity:1}}@keyframes access-pulse{0%,to{text-shadow:0 0 10px #ff3b3b,0 0 30px #ff3b3b,0 0 60px #ff3b3bcc}50%{text-shadow:0 0 4px #ff3b3b,0 0 12px #ff3b3b,0 0 24px #ff3b3b80}}@keyframes access-blink{0%,50%{opacity:1}51%,to{opacity:0}}.file-upload{background:var(--steel-bg-card);border:1px solid var(--steel-border-strong);border-radius:2px;margin-bottom:24px;padding:24px;box-shadow:inset 0 0 30px #ffb61208}.file-upload h3{font-family:var(--font-display);color:var(--steel-gold);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 6px var(--steel-gold-glow);margin-bottom:8px;font-size:1.3rem;font-weight:400}.file-upload h3:before{content:"// ";color:var(--steel-gold-dim)}.upload-hint{color:var(--terminal-text-muted);margin-bottom:16px;font-size:.85rem}.file-upload input[type=file]{color:var(--terminal-text);font-family:var(--font-mono);margin-bottom:12px}.file-upload input[type=file]::file-selector-button{color:var(--steel-gold);border:1px solid var(--steel-gold);cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:0 0;border-radius:2px;margin-right:12px;padding:6px 14px;font-size:.8rem;transition:all .15s}.file-upload input[type=file]::file-selector-button:hover{background:var(--steel-gold);color:var(--steel-black)}.upload-controls{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:12px;display:flex}.upload-season-label{color:var(--terminal-text-dim);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:.85rem;display:flex}.upload-status{color:var(--status-green);letter-spacing:.05em;margin-top:8px;font-size:.9rem}.upload-status:before{content:"> "}.upload-error{color:var(--alert-red);letter-spacing:.05em;text-shadow:0 0 6px #ff3b3b66;margin-top:8px;font-size:.9rem}.upload-error:before{content:"! ";font-weight:700}.upload-preview{background:var(--steel-bg-inset);border:1px dashed var(--steel-border-strong);border-radius:2px;margin-top:16px;padding:16px}.upload-preview h4{color:var(--steel-gold-bright);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;font-size:.9rem}.upload-preview ul{margin-bottom:16px;list-style:none}.upload-preview li{color:var(--terminal-text);padding:4px 0;font-size:.9rem}.upload-preview li:before{content:"> ";color:var(--steel-gold-dim)}.upload-preview button{color:var(--steel-gold);border:1px solid var(--steel-gold);cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:0 0;border-radius:2px;padding:10px 24px;font-size:.85rem;font-weight:700;transition:all .15s}.upload-preview button:hover{background:var(--steel-gold);color:var(--steel-black);box-shadow:0 0 14px var(--steel-gold-glow)}
