:root{--bg:#060a13;--bg-2:#0a1020;--panel:#0b1222;--panel-2:#0e1730;--panel-hi:#13203f;--line:#1d2e52;--line-hi:#2c447a;--cyan:#00e5ff;--cyan-dim:#0a5f6b;--magenta:#ff2d95;--amber:#ffb300;--green:#39ff9c;--text:#c9d7f2;--text-dim:#67779e;--text-faint:#3d4a6b;--font-display:"Orbitron", "Share Tech Mono", monospace;--font-mono:"Share Tech Mono", ui-monospace, monospace;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--glow-cyan:0 0 6px #00e5ff8c, 0 0 18px #00e5ff2e;--glow-magenta:0 0 6px #ff2d958c, 0 0 18px #ff2d952e;--glow-amber:0 0 6px #ffb30080, 0 0 16px #ffb30026}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-mono);background-image:radial-gradient(120% 80% at 50% -10%,#0d1730 0%,#0000 55%),radial-gradient(100% 60% at 50% 110%,#120a20 0%,#0000 60%);font-size:14px;line-height:1.45}body:after{content:"";pointer-events:none;z-index:999;background:repeating-linear-gradient(#0000 0 2px,#00000012 3px);position:fixed;inset:0}body:before{content:"";pointer-events:none;z-index:998;position:fixed;inset:0;box-shadow:inset 0 0 180px #0000008c}#root{min-height:100%}.shell{max-width:1280px;padding:var(--sp-4) var(--sp-4) 80px;margin:0 auto}.masthead{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel-2), var(--panel));padding:var(--sp-4) var(--sp-5);align-items:center;gap:var(--sp-4);flex-wrap:wrap;display:flex;position:relative}.masthead:before,.masthead:after,.panel:before,.panel:after{content:"";border:1px solid var(--cyan);opacity:.6;width:10px;height:10px;position:absolute}.masthead:before,.panel:before{border-bottom:0;border-right:0;top:-1px;left:-1px}.masthead:after,.panel:after{border-top:0;border-left:0;bottom:-1px;right:-1px}.brand{font-family:var(--font-display);letter-spacing:2px;color:#eaf6ff;text-shadow:var(--glow-cyan);white-space:nowrap;font-size:26px;font-weight:900}.brand .num{color:var(--magenta);text-shadow:var(--glow-magenta)}.brand-sub{color:var(--text-dim);letter-spacing:3px;text-transform:uppercase;font-size:11px}.cursor{background:var(--cyan);vertical-align:-3px;width:10px;height:20px;box-shadow:var(--glow-cyan);margin-left:6px;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.phase-strip{gap:var(--sp-3);flex-wrap:wrap;margin-left:auto;display:flex}.phase-light{letter-spacing:1px;color:var(--text-dim);border:1px solid var(--line);background:var(--bg-2);align-items:center;gap:6px;padding:4px 10px;font-size:11px;display:flex}.phase-light .dot{background:var(--text-faint);border-radius:50%;width:8px;height:8px}.phase-light.active{color:var(--cyan);border-color:var(--cyan-dim)}.phase-light.active .dot{background:var(--cyan);box-shadow:var(--glow-cyan);animation:1.6s infinite pulse}.phase-light.done{color:var(--green)}.phase-light.done .dot{background:var(--green)}@keyframes pulse{50%{opacity:.4}}.nav{gap:var(--sp-2);margin:var(--sp-4) 0;flex-wrap:wrap;display:flex}.nav button{font-family:var(--font-display);letter-spacing:2px;color:var(--text-dim);background:var(--panel);border:1px solid var(--line);cursor:pointer;padding:10px 18px;font-size:13px;font-weight:700;transition:color .15s,border-color .15s;position:relative}.nav button:hover{color:var(--text);border-color:var(--line-hi)}.nav button.active{color:var(--cyan);border-color:var(--cyan);text-shadow:var(--glow-cyan);box-shadow:inset 0 -3px 0 var(--cyan), 0 0 12px #00e5ff1f}.nav button .lock{color:var(--text-faint);margin-left:6px}.nav-actions{gap:var(--sp-2);margin-left:auto;display:flex}.btn{font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;background:var(--bg-2);color:var(--text);border:1px solid var(--line-hi);cursor:pointer;padding:8px 14px;font-size:12px;transition:all .15s}.btn:hover{border-color:var(--cyan);color:var(--cyan)}.btn.magenta:hover{border-color:var(--magenta);color:var(--magenta)}.btn.amber:hover{border-color:var(--amber);color:var(--amber)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn.small{padding:4px 10px;font-size:11px}.panel{border:1px solid var(--line);background:var(--panel);margin-bottom:var(--sp-4);position:relative}.panel-head{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--line);background:linear-gradient(180deg, var(--panel-hi), var(--panel-2));display:flex}.panel-title{font-family:var(--font-display);letter-spacing:2px;color:#dce9ff;text-transform:uppercase;font-size:13px;font-weight:700}.panel-tag{letter-spacing:1px;color:var(--bg);background:var(--cyan);padding:1px 7px;font-size:10px;font-weight:700}.panel-tag.magenta{background:var(--magenta)}.panel-tag.amber{background:var(--amber)}.panel-tag.dim{background:var(--text-faint);color:var(--text)}.panel-body{padding:var(--sp-3)}.panel-note{color:var(--text-dim);letter-spacing:1px;margin-left:auto;font-size:11px}.week-rail{gap:var(--sp-2);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.week-btn{font-family:var(--font-mono);text-align:center;background:var(--panel);border:1px solid var(--line);min-width:52px;color:var(--text-dim);cursor:pointer;padding:6px 8px 4px;font-size:12px}.week-btn:hover{border-color:var(--line-hi);color:var(--text)}.week-btn.active{border-color:var(--cyan);color:var(--cyan);box-shadow:0 0 10px #00e5ff26}.week-btn.ccg-btn.active{border-color:var(--magenta);color:var(--magenta);box-shadow:0 0 10px #ff2d9533}.week-btn .meter{background:var(--text-faint);height:3px;margin-top:4px;display:block;position:relative;overflow:hidden}.week-btn .meter i{background:var(--green);position:absolute;inset:0 auto 0 0}.week-btn.full .meter i{box-shadow:0 0 6px var(--green)}.week-btn:disabled{opacity:.4;cursor:not-allowed}.game-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(310px,1fr));display:grid}.game-card{border:1px solid var(--line);background:var(--panel-2);padding:var(--sp-2);position:relative}.game-card.picked-card{border-color:#1f4d3f}.game-card.exempt-card{opacity:.75;border-style:dashed}.game-meta{gap:var(--sp-2);letter-spacing:1px;color:var(--text-dim);text-transform:uppercase;margin-bottom:var(--sp-2);flex-wrap:wrap;align-items:center;font-size:10px;display:flex}.game-meta .spacer{margin-left:auto}.chip{border:1px solid var(--line);color:var(--text-dim);padding:0 6px;font-size:10px}.chip.conf-chip{color:var(--cyan);border-color:var(--cyan-dim)}.chip.exempt-chip{color:var(--amber);border-color:var(--amber)}.chip.neutral-chip{color:var(--text-dim)}.team-row{align-items:center;gap:var(--sp-2);width:100%;color:var(--text);font-family:var(--font-mono);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;padding:7px 8px;font-size:14px;transition:background .1s,border-color .1s;display:flex}.team-row:hover{background:var(--panel-hi);border-color:var(--line-hi)}.team-row.winner{border-color:var(--cyan);color:#eaffff;background:#00e5ff12;box-shadow:inset 0 0 14px #00e5ff12}.team-row.winner .w-tag{color:var(--bg);background:var(--green);padding:0 6px;font-size:11px;font-weight:700;box-shadow:0 0 8px #39ff9c80}.team-row.loser{opacity:.45}.team-row.unpickable{cursor:default}.team-row.unpickable:hover{background:0 0;border-color:#0000}.team-logo{object-fit:contain;filter:drop-shadow(0 0 2px #000c);width:22px;height:22px}.team-logo.placeholder{background:var(--bg-2);border:1px solid var(--line);color:var(--text-faint);justify-content:center;align-items:center;font-size:9px;display:inline-flex}.rank-badge{color:var(--amber);text-align:right;min-width:24px;font-size:11px}.team-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.at-sign{color:var(--text-faint);padding:0 4px;font-size:11px}.w-tag{text-align:center;min-width:20px}.hud-table{border-collapse:collapse;width:100%;font-size:13px}.hud-table th{letter-spacing:2px;text-transform:uppercase;color:var(--text-dim);text-align:left;border-bottom:1px solid var(--line);padding:6px 8px;font-size:10px}.hud-table td{border-bottom:1px solid #1d2e5266;padding:5px 8px}.hud-table tr:hover td{background:#13203f80}.hud-table .num{text-align:right;font-variant-numeric:tabular-nums}.hud-table .team-cell{align-items:center;gap:8px;display:flex}.div-head td{color:var(--magenta);letter-spacing:2px;text-transform:uppercase;border-bottom:1px dashed var(--line);padding-top:10px;font-size:10px}.standings-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(360px,1fr));display:grid}.rating-bar{background:var(--bg-2);border:1px solid var(--line);min-width:60px;height:8px;position:relative}.rating-bar i{background:linear-gradient(90deg, var(--cyan-dim), var(--cyan));position:absolute;inset:0 auto 0 0;box-shadow:0 0 8px #00e5ff59}.qw{color:var(--green);font-size:11px}.bl{color:var(--magenta);font-size:11px}.rank-1 .rk{color:var(--amber);text-shadow:var(--glow-amber);font-weight:700}.bracket-wrap{overflow-x:auto}.bracket{gap:var(--sp-4);grid-template-columns:repeat(4,minmax(250px,1fr));align-items:start;min-width:1050px;display:grid}.round-col>h3{font-family:var(--font-display);letter-spacing:2px;color:var(--text-dim);text-transform:uppercase;margin-bottom:var(--sp-3);text-align:center;font-size:12px}.bracket-slot{margin-bottom:var(--sp-3)}.bracket-slot .venue{color:var(--text-dim);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;font-size:10px}.tbd-box{border:1px dashed var(--line);color:var(--text-faint);padding:var(--sp-3);text-align:center;letter-spacing:1px;font-size:12px}.champ-box{border:1px solid var(--amber);box-shadow:var(--glow-amber);padding:var(--sp-4);text-align:center;background:linear-gradient(#ffb30014,#0000)}.champ-box .label{letter-spacing:3px;color:var(--amber);text-transform:uppercase;font-size:10px}.champ-box .name{font-family:var(--font-display);color:#fff3d6;text-shadow:var(--glow-amber);margin-top:6px;font-size:22px;font-weight:900}.seed-list{grid-template-columns:1fr 1fr;gap:2px 16px;font-size:12px;display:grid}.seed-list .row{align-items:center;gap:8px;padding:3px 0;display:flex}.seed-list .seed-num{color:var(--cyan);text-align:right;min-width:20px}.seed-list .bid{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;margin-left:auto;font-size:10px}.bowl-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.via-tag{color:var(--text-faint);letter-spacing:1px;text-transform:uppercase;font-size:9px}.locked-panel{border:1px dashed var(--line);padding:var(--sp-6);text-align:center;color:var(--text-dim)}.locked-panel .big{font-family:var(--font-display);letter-spacing:3px;color:var(--amber);text-shadow:var(--glow-amber);margin-bottom:var(--sp-3);font-size:16px}.progress-line{max-width:420px;margin:var(--sp-3) auto 0}.progress-line .meter{border:1px solid var(--line);background:var(--bg-2);height:10px;position:relative}.progress-line .meter i{background:linear-gradient(90deg, var(--cyan-dim), var(--cyan));position:absolute;inset:1px auto 1px 1px;box-shadow:0 0 10px #00e5ff4d}.loading{padding:var(--sp-6);text-align:center;color:var(--cyan);letter-spacing:3px;animation:1.2s infinite pulse}.error-bar{border:1px solid var(--magenta);color:var(--magenta);padding:var(--sp-2) var(--sp-3);margin-bottom:var(--sp-3);font-size:12px}.toolbar{gap:var(--sp-2);margin-bottom:var(--sp-4);flex-wrap:wrap;align-items:center;display:flex}.toolbar .right{gap:var(--sp-2);margin-left:auto;display:flex}.subtle{color:var(--text-dim);font-size:12px}.toggle-group{display:flex}.overlay{z-index:900;background:#02050bd1;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.sheet{background:var(--panel);border:1px solid var(--cyan);width:min(820px,100%);box-shadow:0 0 34px #00e5ff2e}.sheet-head{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line);background:linear-gradient(180deg, var(--panel-hi), var(--panel-2));display:flex}.sheet-title{font-family:var(--font-display);letter-spacing:1px;color:#eaf6ff;text-shadow:var(--glow-cyan);font-size:16px;font-weight:700}.sheet-body{padding:var(--sp-3);max-height:72vh;overflow-y:auto}.hud-table tr.clickable{cursor:pointer}.hud-table tr.clickable:hover td{background:#00e5ff0f}.toggle-group .btn{border-right-width:0}.toggle-group .btn:last-child{border-right-width:1px}.toggle-group .btn.on{color:var(--cyan);border-color:var(--cyan);box-shadow:inset 0 0 10px #00e5ff1a}.fav-star{color:var(--text-faint);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:15px;line-height:1;transition:color .15s}.fav-star:hover{color:var(--amber)}.fav-star.on{color:var(--amber);text-shadow:var(--glow-amber)}.game-card.persp-win{border-color:#39ff9c59;box-shadow:inset 0 0 12px #39ff9c0d}.game-card.persp-loss{border-color:#ff406066;box-shadow:inset 0 0 12px #ff40600f}.chip.final-chip{color:var(--green);border-color:var(--green)}.score{text-align:right;font-variant-numeric:tabular-nums;min-width:26px;color:var(--text-dim)}.score.win{color:var(--green);text-shadow:0 0 6px #39ff9c66;font-weight:700}.game-foot{align-items:center;gap:var(--sp-2);border-top:1px dashed var(--line);color:var(--text-dim);letter-spacing:.5px;flex-wrap:wrap;margin-top:6px;padding:5px 8px 1px;font-size:11px;display:flex}.game-foot .spacer{margin-left:auto}.tv-tag{color:var(--cyan);opacity:.8}.oracle{letter-spacing:1px;border:1px solid;padding:0 6px;font-size:10px}.oracle.hit{color:var(--green);border-color:var(--green)}.oracle.miss{color:var(--magenta);border-color:var(--magenta)}.win-total{color:var(--amber)}.auth-wrap{min-height:100vh;padding:var(--sp-4);justify-content:center;align-items:center;display:flex}.auth-box{width:min(420px,100%);padding:var(--sp-6) var(--sp-5);margin:0}.auth-form{gap:var(--sp-3);flex-direction:column;display:flex}.auth-form label{letter-spacing:2px;color:var(--text-dim);flex-direction:column;gap:4px;font-size:10px;display:flex}.auth-form input{font-family:var(--font-mono);color:var(--text);background:var(--bg-2);border:1px solid var(--line-hi);outline:none;padding:10px 12px;font-size:14px}.auth-form input:focus{border-color:var(--cyan);box-shadow:0 0 10px #00e5ff26}.auth-submit{margin-top:var(--sp-2);padding:12px}.auth-flip{margin-top:var(--sp-4);width:100%;color:var(--text-dim);font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;font-size:12px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.auth-flip:hover{color:var(--cyan)}.auth-note{border:1px dashed var(--amber);color:var(--amber);padding:var(--sp-2) var(--sp-3);margin-bottom:var(--sp-3);font-size:12px}.phase-light.operator{color:var(--cyan);border-color:var(--cyan-dim)}.phase-light.operator .dot{background:var(--cyan)}.live-row{padding:var(--sp-2) var(--sp-1);align-items:baseline;gap:var(--sp-2) var(--sp-4);border-bottom:1px solid #1d2e5266;flex-wrap:wrap;display:flex}.live-row:last-child{border-bottom:none}.live-teams{gap:var(--sp-2);flex-wrap:wrap;align-items:baseline;display:flex}.live-teams b{color:#eaffff;font-size:16px}.live-meta{gap:var(--sp-2);align-items:baseline;margin-left:auto;display:flex}.live-clock{color:var(--magenta);text-shadow:var(--glow-magenta);font-size:12px}.live-lastplay{color:var(--text-dim);flex-basis:100%;font-size:11px}.you-row td{background:#00e5ff0d}.chip.you-chip{color:var(--bg);background:var(--cyan);border:none;margin-left:8px;font-weight:700}.sheet-grid{grid-template-columns:1fr 1fr}.panel-body{overflow-x:auto}@media (width<=900px){.sheet-grid{grid-template-columns:1fr}.bracket{grid-template-columns:repeat(4,minmax(230px,1fr));min-width:940px}}@media (width<=760px){.shell{padding:var(--sp-2) var(--sp-2) 60px}.masthead{padding:var(--sp-2) var(--sp-3);gap:var(--sp-2)}.brand{letter-spacing:1px;font-size:19px}.cursor{width:8px;height:14px}.brand-sub{letter-spacing:2px;font-size:10px}.phase-strip{gap:6px}.phase-light{padding:3px 7px;font-size:10px}.nav button{letter-spacing:1px;padding:8px 10px;font-size:11px}.nav-actions{flex-wrap:wrap;width:100%;margin-left:0}.toolbar{align-items:flex-start;gap:var(--sp-2);flex-direction:column}.toolbar .right{flex-wrap:wrap;margin-left:0}.game-grid,.standings-grid,.bowl-grid,.seed-list{grid-template-columns:1fr}.hide-sm{display:none}.team-row{padding:10px 8px}.fav-star{padding:4px 8px;font-size:17px}.week-btn{min-width:46px;padding:8px 6px 6px}.btn{padding:9px 12px}.overlay{padding:12px 4px}.sheet{width:100%}.live-teams{flex-wrap:wrap}}
