:root{--bg:#0b0d10;--bg-2:#12151a;--bg-3:#1a1e25;--line:#262b34;--text:#e8eaed;--muted:#8b929c;--lime:#3dff87;--lime-dim:#1c3d2a;--warn:#ffb020;--hurt:#ff5d6c;--q:#ffe14a;--you:#6aa7ff;--sans:"Segoe UI", system-ui, sans-serif;--mono:"Cascadia Mono", "Consolas", ui-monospace, monospace;color:var(--text);background:var(--bg);font:14px/1.4 var(--sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{width:100%;height:100dvh;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}.app{min-width:0;height:100%;padding-top:env(safe-area-inset-top);flex-direction:column;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--bg-2);flex-shrink:0;align-items:center;gap:16px;padding:10px 16px;display:flex}.brand{letter-spacing:.04em;text-transform:uppercase;color:inherit;background:0 0;border:0;min-height:44px;padding:0;font-size:12px;font-weight:700}.brand span{color:var(--lime)}.clock{align-items:baseline;gap:10px;min-width:0;display:flex}.clock strong{color:var(--lime);font-size:15px}.clock em{color:var(--muted);font-size:12px;font-style:normal}.clock.you strong{color:var(--you)}.clock.done strong{color:var(--text)}.topbar .top-menu{min-height:44px;margin-left:auto}.topbar .primary,.topbar .ghost:not(.top-menu){margin-left:0}.ticker{border-bottom:1px solid var(--line);background:#0e1014;flex-shrink:0;gap:8px;padding:8px 16px;display:flex;overflow-x:auto}.tick{background:var(--bg-3);border:1px solid var(--line);flex:none;align-items:center;gap:8px;min-width:168px;padding:6px 8px;display:flex}.tick b{color:var(--muted);font-size:11px;font-family:var(--mono)}.tick .who{color:var(--lime);font-size:11px}.room{flex:1;grid-template-columns:minmax(0,1fr) 320px;min-width:0;min-height:0;display:grid}.list-pane,.chat-pane{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.chat-pane{border-left:1px solid var(--line);background:var(--bg-2)}.tools{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:10px 16px;display:flex}.tools input{background:var(--bg);border:1px solid var(--line);color:var(--text);flex:1;padding:8px 10px}.pos-tabs{gap:4px;display:flex}.pos-tabs button,.ghost,.primary{border:1px solid var(--line);color:var(--muted);background:0 0;padding:6px 9px;font-size:12px}.pos-tabs button.on,.primary{background:var(--lime);color:#04150a;border-color:var(--lime);font-weight:700}.ghost:hover{color:var(--text)}.rows{flex:1;overflow:auto}.row{text-align:left;width:100%;color:inherit;background:0 0;border-bottom:1px solid #161a20;grid-template-columns:36px 36px 1fr 40px 72px;align-items:center;gap:8px;padding:8px 16px;display:grid}.row:hover{background:var(--bg-3)}.row:disabled{cursor:default;opacity:.45}.row.taken{opacity:.55}.row.taken .draft-btn{border-color:var(--line);color:var(--muted)}.empty{color:var(--muted);padding:24px 16px}.adp{font-family:var(--mono);color:var(--muted);font-size:12px}.name{font-weight:650}.meta{color:var(--muted);font-size:12px}.pos{color:#9ad0ff;font-size:11px;font-weight:700}.pos.RB{color:#7dffa6}.pos.WR{color:#8ecbff}.pos.TE{color:#e0b4ff}.pos.QB{color:#ffd27d}.pos.K,.pos.DST{color:var(--muted)}.pos.C,.pos[data-pos=C]{color:#ffd27d}.pos.W,.pos[data-pos=W]{color:#8ecbff}.pos.D,.pos[data-pos=D]{color:#7dffa6}.pos.G,.pos[data-pos=G]{color:var(--muted)}.pos[data-pos="1B"],.pos[data-pos="2B"],.pos[data-pos="3B"],.pos[data-pos=SS]{color:#7dffa6}.pos[data-pos=OF]{color:#8ecbff}.pos[data-pos=DH]{color:#e0b4ff}.pos[data-pos=P]{color:#ffd27d}.tag{letter-spacing:.04em;text-transform:uppercase;background:var(--lime-dim);color:var(--lime);padding:2px 5px;font-size:10px;font-weight:700}.tag.hurt{color:var(--hurt);background:#3a151a}.status-out{color:var(--hurt);font-weight:700}.status-q{color:var(--q);font-weight:700}.draft-btn{border:1px solid var(--lime);color:var(--lime);background:0 0;padding:5px 8px;font-size:11px;font-weight:700}.draft-btn:disabled{border-color:var(--line);color:var(--muted)}.chat{flex-direction:column;flex:1;gap:10px;padding:12px 14px;display:flex;overflow:auto}.msg .from{color:var(--lime);margin-bottom:2px;font-size:11px;font-weight:700}.msg .from.sys{color:var(--muted)}.msg p{color:var(--text);margin:0}.roster{border-top:1px solid var(--line);background:var(--bg-2);flex-shrink:0;gap:8px;padding:8px 16px;display:flex;overflow:auto}.chip{border:1px solid var(--line);background:var(--bg);flex:none;min-width:120px;padding:6px 8px}.chip small{color:var(--muted);text-transform:uppercase;font-size:10px;display:block}.home{height:100%;padding:16px 16px calc(24px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overflow:auto}.home-top,.home .primary.wide{margin-bottom:16px}.home-top .brand{font-size:22px;font-weight:800}.sport-block{margin:8px 0 18px}.mode-card{text-align:left;background:var(--bg-2);border:1px solid var(--line);width:100%;color:inherit;min-height:64px;margin-bottom:8px;padding:14px 12px;display:block}.mode-card strong{margin-bottom:4px;display:block}.mode-card span{color:var(--muted);font-size:13px}.mode-card.lock{opacity:.5;pointer-events:none}.setup,.grades{place-items:center;min-height:100%;padding:32px 16px;display:grid}.card{background:var(--bg-2);border:1px solid var(--line);width:min(520px,100%);padding:28px}.card h1{margin:0 0 8px;font-size:28px}.card p{color:var(--muted);margin:0 0 20px}.slots{grid-template-columns:repeat(8,1fr);gap:6px;margin-bottom:20px;display:grid}.slots button{border:1px solid var(--line);background:var(--bg);color:var(--text);padding:10px 0}.slots button.on{background:var(--lime);color:#04150a;border-color:var(--lime);font-weight:700}.board-y{-webkit-overflow-scrolling:touch;flex:1;min-width:0;min-height:0;overflow:hidden auto}.board-x{-webkit-overflow-scrolling:touch;padding:0 12px 16px;overflow:auto hidden}.league-main:has(.board-y){flex-direction:column;display:flex;overflow:hidden}.board-hint{z-index:2;color:var(--muted);padding:0 0 8px;font-size:11px;position:sticky;left:0}.board{border-collapse:collapse;width:max-content;min-width:100%;font-size:12px}.board th,.board td{border:1px solid var(--line);vertical-align:top;background:var(--bg);min-width:118px;padding:7px 8px}.board thead th{background:var(--bg-3);letter-spacing:.04em;text-transform:uppercase;z-index:1;font-size:11px;position:sticky;top:0}.board tbody th{background:var(--bg-3);width:36px;min-width:36px;color:var(--muted);font-family:var(--mono);position:sticky;left:0}.board th.you,.board td.you{background:#122033}.board td.live{outline:1px solid var(--lime);outline-offset:-1px}.board td b{font-size:10px;display:block}.board td span{font-weight:650;display:block}.board td small,.board td em{color:var(--muted);font-style:normal}.grades .card{width:min(720px,100%)}.grade-list{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.grade-list div{border:1px solid var(--line);background:var(--bg);padding:10px 12px}.grade-list b{color:var(--lime);margin-bottom:4px;font-size:12px;display:block}.wide{width:100%;min-height:44px;margin-top:10px}.ghost.wide{display:block}.league-main{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow:auto}.pad{padding:12px 16px 24px}.pad h2{margin:0 0 8px;font-size:18px}.slate-bar{border-top:1px solid var(--line);background:var(--bg-2);padding:8px 16px}.tabs{border-top:1px solid var(--line);background:var(--bg-2);padding-bottom:env(safe-area-inset-bottom);display:flex}.tabs button{min-height:48px;color:var(--muted);text-transform:capitalize;background:0 0;border:0;flex:1;font-size:11px;font-weight:650}.fa-row{grid-template-columns:36px minmax(0,1fr)!important}.claim-card{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:10px;display:flex}.wire-search{background:var(--bg);border:1px solid var(--line);width:100%;min-height:44px;color:var(--text);margin:8px 0;padding:8px 10px;font-size:16px}.trade-mgrs{margin:8px 0 4px;padding-bottom:6px;overflow-x:auto}.trade-mgrs button{flex:none;min-height:40px}.deal-card{flex-wrap:wrap;align-items:flex-start}.deal-actions{gap:8px;display:flex}.trade-send{margin:16px 0 8px}.flash-card{border-color:var(--lime);background:var(--lime-dim)}.deal-preview{margin:8px 0 0}.tabs button.on{color:var(--lime)}.stand,.slot-row,.duel-row{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:48px;padding:10px 8px;display:grid}.stand{grid-template-columns:24px 1fr auto auto}.stand.cut{border-bottom:1px dashed var(--lime)}.stand.playoff-in span{color:var(--lime)}.bracket-game{border-bottom:1px solid var(--line);min-height:44px;padding:10px 8px}.stand.you,.career.you,.slot-row.sel{background:#122033}.career{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:8px;min-height:48px;padding:10px 8px;display:grid}.trophy,.mark,.past-year{border:1px solid var(--line);background:var(--bg-3);min-height:44px;margin:8px 0 0;padding:10px 12px}.mark strong,.trophy strong,.past-year strong{display:block}.line-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:14px 0 4px;font-size:10px}.avatar{object-fit:cover;background:#1c2028;border-radius:50%;flex-shrink:0;width:36px;height:36px}.avatar.logo{object-fit:contain;background:#11151c;border-radius:6px;padding:2px}.avatar.fallback,.avatar.blank{color:var(--muted);justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.slot-row{text-align:left;width:100%;color:inherit;border:0;border-bottom:1px solid var(--line);background:0 0;grid-template-columns:38px 36px minmax(0,1fr) 44px;min-height:58px;padding:10px 2px}.badge{border-radius:4px;justify-content:center;align-items:center;width:34px;height:22px;font-size:10px;font-weight:800;display:inline-flex}.badge-QB{color:#ff7aa2;background:#3d1c2a}.badge-RB{color:#6dff9a;background:#163326}.badge-WR{color:#6eb6ff;background:#16324a}.badge-TE{color:#ffb056;background:#3a2610}.badge-FLEX{color:#5ee0d4;background:#12363a}.badge-K{color:#c4a6ff;background:#2a2244}.badge-DST{color:#d4b07a;background:#322616}.badge-BN,.badge-IR,.badge-TAXI{color:#8b929c;background:#1c2028}.slot-body{min-width:0}.slot-name{flex-wrap:wrap;align-items:baseline;gap:6px;font-weight:700;display:flex}.pos-team{font-size:11px;font-weight:700}.empty{color:var(--muted);font-weight:500}.slot-row.lock{opacity:.55}.slot-row b,.stand b{color:var(--muted);font-size:11px}.slot-row strong,.pcell strong{display:block}.slot-row em,.pcell em,.stand em,.stand small{color:var(--muted);font-size:12px;font-style:normal}.score-duel{grid-template-columns:1fr 1fr;gap:12px;margin:12px 0 8px;display:grid}.score-duel strong{font-size:28px;display:block}.score-duel small,.score-duel em{color:var(--muted)}.score-duel .right{text-align:right}.vs-row{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px;min-height:56px;padding:8px 0 10px;display:grid}.pcell{grid-template-columns:28px minmax(0,1fr);align-items:center;gap:6px;min-width:0;display:grid}.pcell .avatar{grid-row:1/span 3;width:28px;height:28px}.pcell.right{text-align:right;grid-template-columns:minmax(0,1fr) 28px}.pcell.right .avatar{grid-column:2}.pcell strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pcell b{font-variant-numeric:tabular-nums;margin-top:2px;font-size:16px;display:block}.pcell.right{text-align:right}.live-pts{color:var(--text)}.proj{color:var(--muted);font-weight:500}.mobile-chat{flex-direction:column;flex:1;min-height:0;display:flex}.draft-tabs{display:flex}.recap-sheet{left:12px;right:12px;bottom:calc(64px + env(safe-area-inset-bottom));z-index:30;background:var(--bg-2);border:1px solid var(--line);max-height:42%;padding:10px;position:fixed}.recap-sheet textarea{resize:none;background:var(--bg);width:100%;height:160px;color:var(--text);border:1px solid var(--line);font:inherit;padding:8px;font-size:12px}@media (width<=900px){.topbar{flex-wrap:wrap;gap:8px;padding:8px 12px}.clock{flex:100%}.room{grid-template-columns:minmax(0,1fr)}.desktop-chat{display:none}.draft-tabs{display:flex}.row{grid-template-columns:32px 32px 1fr 36px 64px;min-height:48px;padding:10px 12px}.hide-sm{display:none}.tools{flex-wrap:wrap}.tools input{flex:100%;min-height:44px;font-size:16px}.pos-tabs{flex-wrap:wrap}.pos-tabs button{min-height:36px}.ticker{padding:8px 12px}.setup,.grades{align-items:start;padding:16px}.card{width:100%;padding:20px 16px}.card h1{font-size:24px}.slots{grid-template-columns:repeat(4,1fr)}.slots button{min-height:44px}.board th,.board td{min-width:108px;padding:6px}}
