@import "https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,400;1,8..60,400&family=Noto+Sans:ital,wght@0,400;0,450;0,500;1,400&display=swap";:root{--paper:#fff;--paper-2:#fafafb;--card:#f2f2f3;--card-deep:#e9e9ea;--ink:#17191c;--ink-soft:#3a3d42;--muted:#777b86;--ash:#979799;--smoke:#a3a6af;--line:#ececec;--line-strong:#dedee0;--peach:#fbe1d1;--sienna:#5d2a1a;--role-p:#2e9b64;--role-d:#4a86e8;--role-c:#c9a72e;--role-a:#dd4f5a;--danger:#8f2f25;--radius:24px;--radius-sm:16px;--radius-btn:9999px;--artifact-shadow:0 0 0 1px #04172b0d, 0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--serif:"Source Serif 4", "Libertinus Serif", "Iowan Old Style", Baskerville, Georgia, serif;--sans:"Noto Sans", "Liberation Sans", system-ui, sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;letter-spacing:-.009em}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--ink);background:var(--paper);letter-spacing:-.009em}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px}input,select,textarea{font:inherit;width:100%;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none;padding:13px 14px}input:focus,select:focus,textarea:focus{border-color:var(--ink);box-shadow:0 0 0 2px #17191c1a}.shell{min-height:100vh}.topbar{height:68px;color:var(--ink);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#fffffff0;border-bottom:1px solid #17191c14;align-items:center;gap:14px;padding:0 24px;display:flex;position:sticky;top:0}.brand{color:inherit;text-align:left;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;min-width:200px;padding:0;display:flex}.brand-name{font:400 22px/1 var(--serif);letter-spacing:-.03em;color:var(--ink)}.brand-name em{color:var(--ink);font-style:italic}.brand-tag{letter-spacing:.18em;text-transform:uppercase;color:var(--ash);font-size:8px;font-weight:400}.nav{align-items:center;gap:4px;margin-left:28px;display:flex}.nav button{color:var(--muted);border-radius:var(--radius-btn);white-space:nowrap;background:0 0;border:0;padding:9px 10px;font-size:13px;font-weight:400}.nav button:hover{color:var(--ink);background:var(--card)}.nav button.active{color:var(--ink);background:0 0}.nav button.active:after{content:"";background:var(--ink);height:1px;margin-top:4px;display:block}.toolbar{align-items:center;gap:6px;margin-left:auto;display:flex}.toolbar-separator{background:var(--line-strong);border-radius:999px;width:1px;height:18px;margin:0 5px}.ghost-btn{color:var(--muted);border-radius:var(--radius-btn);white-space:nowrap;background:0 0;border:0;padding:9px 10px;font-size:13px;font-weight:400}.ghost-btn:hover{color:var(--ink);background:var(--card)}.theme-toggle,.setup-theme-toggle{width:34px;height:34px;color:var(--ink);background:var(--card);border:0;border-radius:50%;place-items:center;padding:0;font-size:17px;line-height:1;display:grid}.setup-theme-toggle{z-index:8;color:var(--ink);background:var(--card);position:absolute;top:18px;right:22px}.burger{border:1px solid var(--line);border-radius:var(--radius-sm);width:40px;height:40px;color:inherit;background:0 0;flex-direction:column;flex-shrink:0;justify-content:center;gap:5px;padding:8px;display:none}.burger span{background:var(--ink);border-radius:2px;height:2px;display:block}.user-chip{align-items:center;gap:10px;display:flex}.user-chip .user-name{color:var(--ink);font-size:13px;font-weight:500}.user-chip .muted{color:var(--muted);font-size:13px}.content{max-width:1400px;margin:0 auto;padding:28px 28px 56px}.page{flex-direction:column;gap:16px;display:flex}.page h2{font:italic 400 40px/1.1 var(--serif);letter-spacing:-.03em;color:var(--ink);margin:0}.card h3{font:400 22px/1.2 var(--serif);letter-spacing:-.02em;color:var(--ink);margin:0}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.card-head .role-filters{margin:2px 0 0}h4{font:400 16px/1.2 var(--serif);letter-spacing:-.01em;color:var(--ink);margin:0}.card{background:var(--card);border-radius:var(--radius);flex-direction:column;gap:12px;padding:20px;display:flex}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.roster-split{grid-template-columns:minmax(280px,380px) 1fr;align-items:start;gap:16px;display:grid}@media (width>=1400px){.roster-split{grid-template-columns:minmax(320px,440px) 1fr}}.stats-row{flex-wrap:wrap;gap:10px;display:flex}.stat{background:var(--paper);box-shadow:var(--artifact-shadow);text-align:center;border-radius:20px;min-width:110px;padding:14px 18px}.stat-value{font:italic 400 26px/1 var(--serif);color:var(--ink);font-variant-numeric:tabular-nums}.stat-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ash);margin-top:6px;font-size:9px;font-weight:500}.stat.ok .stat-value{color:var(--role-p)}.stat.warn .stat-value{color:var(--danger)}.alert{border-radius:var(--radius-sm);background:var(--card);color:var(--ink);border:1px solid #0000;padding:12px 16px}.alert-success{color:#1d5c3a;background:#e6f5ec;border-color:#0000}.alert-warning{color:#6b4c12;background:#fbf3dd;border-color:#0000}.alert-danger{color:#8f2f25;background:#fdeceb;border-color:#0000}.alert-info{color:#1c4377;background:#eaf1fb;border-color:#0000}.undo-bar{justify-content:space-between;align-items:center;gap:12px;display:flex}.btn{border-radius:var(--radius-btn);border:1px solid var(--ink);color:var(--ink);background:0 0;padding:10px 18px;font-size:14px;font-weight:450;transition:transform .16s,color .16s,background-color .16s}.btn:hover{background:var(--card)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.btn-primary:hover{background:var(--ink);color:var(--paper);filter:none}.btn-danger{border-color:var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger);border-color:var(--danger);color:var(--paper)}.btn-small{padding:7px 14px;font-size:13px}.btn-logout{background:var(--ink);border-color:var(--ink);color:var(--paper);padding:7px 14px;font-size:12px}ul.plain{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}ul.plain li{border-bottom:1px solid var(--line);padding:9px 0}ul.plain li:last-child{border-bottom:none}.roster-line{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.flex-1{flex:1}.badge{border-radius:var(--radius-btn);background:var(--card-deep);color:var(--muted);white-space:nowrap;padding:3px 10px;font-size:11px;font-weight:500;display:inline-block}.badge.ok{background:var(--role-p);color:#fff}.badge.warn{color:#7a5a10;background:#f3e3bd}.role{text-align:center;border-radius:50%;min-width:26px;padding:3px 4px}.role-p{background:color-mix(in srgb, var(--role-p) 16%, var(--paper));color:var(--role-p);border:1px solid color-mix(in srgb, var(--role-p) 40%, transparent)}.role-d{background:color-mix(in srgb, var(--role-d) 16%, var(--paper));color:var(--role-d);border:1px solid color-mix(in srgb, var(--role-d) 40%, transparent)}.role-c{background:color-mix(in srgb, var(--role-c) 16%, var(--paper));color:var(--role-c);border:1px solid color-mix(in srgb, var(--role-c) 40%, transparent)}.role-a{background:color-mix(in srgb, var(--role-a) 16%, var(--paper));color:var(--role-a);border:1px solid color-mix(in srgb, var(--role-a) 40%, transparent)}.u21{background:var(--ink);color:var(--paper)}.muted{color:var(--muted);font-size:13px}.empty{text-align:center;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);padding:20px}.login-wrap{background:var(--paper);place-items:center;min-height:100vh;padding:24px 16px;display:grid;position:relative}.login-card{background:var(--card);border-radius:var(--radius);width:min(460px,100%);box-shadow:var(--artifact-shadow);flex-direction:column;gap:18px;padding:44px 42px;display:flex}.login-card h1{font:italic 400 46px/1.1 var(--serif);letter-spacing:-.03em;color:var(--ink);text-align:center;margin:0}.login-card h1 em{color:var(--ink);font-style:normal}.login-sub{text-align:center;color:var(--muted);margin:-6px 0 2px;font-size:14px}.login-card label{color:var(--muted);flex-direction:column;gap:7px;font-size:12px;font-weight:500;display:flex}.login-card input{padding:15px 16px;font-size:16px}.login-card .login-btn{align-self:stretch;padding:14px 18px;font-size:15px;font-weight:500}.role-filters{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.role-filter{border-radius:var(--radius-btn);background:var(--paper);min-width:40px;color:var(--muted);border:1px solid #0000;padding:8px 12px;font-size:12px;font-weight:600;line-height:1;transition:transform .14s,color .14s,background-color .14s}.role-filter:hover{color:var(--ink);background:var(--card)}.role-filter.active{color:var(--paper);background:var(--ink);border-color:var(--ink)}.role-filter.P.active{background:var(--role-p);border-color:var(--role-p)}.role-filter.D.active{background:var(--role-d);border-color:var(--role-d)}.role-filter.C.active{background:var(--role-c);border-color:var(--role-c)}.role-filter.A.active{background:var(--role-a);border-color:var(--role-a)}.role-filter .role-dot{opacity:.45;vertical-align:middle;background:currentColor;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}html[data-theme=dark] .role-filter{background:var(--card-deep);color:var(--muted)}html[data-theme=dark] .role-filter:hover{color:var(--ink);background:var(--card)}html[data-theme=dark] .role-filter.active{color:#18181a;background:var(--ink);border-color:var(--ink)}html[data-theme=dark] .role-filter.P.active{background:var(--role-p);border-color:var(--role-p);color:#fff}html[data-theme=dark] .role-filter.D.active{background:var(--role-d);border-color:var(--role-d);color:#fff}html[data-theme=dark] .role-filter.C.active{background:var(--role-c);border-color:var(--role-c);color:#fff}html[data-theme=dark] .role-filter.A.active{background:var(--role-a);border-color:var(--role-a);color:#fff}.listone-filters{flex-direction:column;gap:14px;display:flex}.filter-group{flex-direction:column;gap:7px;min-width:0;display:flex}.filter-label{color:var(--ash);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:600}.chip-row{flex-wrap:wrap;gap:5px;display:flex}.chip{border:1px solid var(--line);border-radius:var(--radius-btn);background:var(--paper);color:var(--muted);cursor:pointer;align-items:center;gap:5px;padding:7px 12px;font-size:12px;font-weight:500;line-height:1;transition:transform .14s,color .14s,background-color .14s,border-color .14s;display:inline-flex}.chip small{background:var(--card);min-width:18px;color:var(--muted);text-align:center;border-radius:999px;padding:2px 5px;font-size:9px;font-weight:700}.chip:hover{color:var(--ink);border-color:var(--line-strong)}.chip.active{color:var(--paper);background:var(--ink);border-color:var(--ink)}.chip.active small{color:var(--paper);background:#ffffff38}.search-field{border:1px solid var(--line);border-radius:var(--radius-btn);background:var(--paper);align-items:center;gap:9px;padding:0 15px;transition:border-color .14s,box-shadow .14s;display:flex}.search-field:focus-within{border-color:var(--ink);box-shadow:0 0 0 2px #17191c1a}.search-field>span{color:var(--muted);font-size:14px;line-height:1}.search-field input{background:0 0;border:0;flex:1;min-width:0;padding:11px 0;font-size:13px}.search-field input:focus{box-shadow:none;border:0}html[data-theme=dark] .chip{background:var(--card-deep);border-color:var(--line);color:var(--muted)}html[data-theme=dark] .chip small{color:var(--muted);background:#ffffff14}html[data-theme=dark] .chip:hover{color:var(--ink);border-color:var(--line-strong)}html[data-theme=dark] .chip.active{color:#18181a;background:var(--ink);border-color:var(--ink)}html[data-theme=dark] .chip.active small{color:#18181a;background:#18181a33}html[data-theme=dark] .search-field{background:var(--card-deep);border-color:var(--line)}html[data-theme=dark] .search-field:focus-within{border-color:var(--sienna);box-shadow:0 0 0 2px #f0c7b21f}html[data-theme=dark] .search-field input{color:var(--ink)}html[data-theme=dark] .search-field input::placeholder{color:var(--smoke)}html[data-theme=dark] .filter-label{color:var(--muted)}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#17191c47;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.app-modal{width:min(560px,100vw - 40px);max-height:min(680px,100vh - 40px);color:var(--ink);background:var(--paper);border-radius:var(--radius);box-shadow:var(--artifact-shadow);flex-direction:column;display:flex;overflow:hidden}.app-modal>header{justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 24px 12px;display:flex}.app-modal h2{font:italic 400 30px/1 var(--serif);letter-spacing:-.02em;margin:4px 0 0}.app-modal .eyebrow{color:var(--ash);text-transform:uppercase;letter-spacing:.12em;font-size:10px}.app-modal>header button{width:34px;height:34px;color:var(--ink);background:var(--card);cursor:pointer;border:0;border-radius:50%;flex:none;font-size:20px;line-height:1}.modal-body{min-height:0;padding:8px 24px 22px;overflow:auto}html[data-theme=dark] .modal-backdrop{background:#0000008c}html[data-theme=dark] .app-modal{color:var(--ink);background:#242427}html[data-theme=dark] .app-modal h2{color:var(--ink)}html[data-theme=dark] .app-modal .eyebrow{color:var(--muted)}html[data-theme=dark] .app-modal>header button{color:var(--ink);background:var(--card-deep)}.team-line-actions{flex-wrap:wrap;gap:6px;display:flex}.player-modal-backdrop{z-index:82;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#17191c47;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.player-modal{width:min(420px,100vw - 40px);color:var(--ink);background:var(--paper);border-radius:var(--radius);box-shadow:var(--artifact-shadow);flex-direction:column;display:flex;overflow:hidden}.player-modal>header{justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 10px;display:flex}.player-modal-identity{align-items:center;gap:12px;display:flex}.player-modal-identity .badge.role{flex:none;place-items:center;min-width:34px;height:34px;font-size:12px;display:inline-grid}.player-modal-identity h2{font:italic 400 26px/1.05 var(--serif);letter-spacing:-.02em;margin:2px 0 0}.player-modal-identity small{color:var(--ash);font-size:11px}.player-modal>header>button{width:32px;height:32px;color:var(--ink);background:var(--card);cursor:pointer;border:0;border-radius:50%;flex:none;font-size:18px;line-height:1}.player-modal-body{flex-direction:column;gap:14px;padding:6px 22px 22px;display:flex}.player-modal-meta{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;display:grid}.player-modal-meta div{background:var(--card);border-radius:14px;padding:10px}.player-modal-meta dt{color:var(--ash);text-transform:uppercase;letter-spacing:.1em;font-size:9px}.player-modal-meta dd{margin:3px 0 0;font-size:14px;font-weight:600}.player-modal-assignments{flex-direction:column;gap:8px;display:flex}.player-modal-assignments h3{font:italic 400 17px/1.2 var(--serif);color:var(--ash);margin:0}.player-modal-assignments .player-modal-team{background:var(--card);color:var(--ink);border-radius:999px;align-items:center;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.player-modal-rm{margin:0;font-size:12px}.player-modal .btn{align-self:flex-start}html[data-theme=dark] .player-modal-backdrop{background:#0000008c}html[data-theme=dark] .player-modal{color:var(--ink);background:#242427}html[data-theme=dark] .player-modal-identity h2{color:var(--ink)}html[data-theme=dark] .player-modal-identity small{color:var(--muted)}html[data-theme=dark] .player-modal>header>button{color:var(--ink);background:var(--card-deep)}html[data-theme=dark] .player-modal-meta div{background:var(--card-deep)}html[data-theme=dark] .player-modal-meta dt{color:var(--muted)}html[data-theme=dark] .player-modal-assignments .player-modal-team{background:var(--card-deep)}@media (width<=720px){.player-modal{width:calc(100vw - 24px)}.team-line-actions{width:100%}.team-line-actions .btn{flex:1}.app-modal{width:calc(100vw - 24px);max-height:calc(100vh - 24px)}}button.player-link{color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;margin:0;padding:0}button.player-link:hover{text-underline-offset:2px;text-decoration:underline}.league-compare-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.league-compare-head h3{font:italic 400 24px/1.1 var(--serif);letter-spacing:-.02em;margin:0}.compare-empty{flex-direction:column;gap:12px;display:flex}.compare-empty>p{color:var(--ash);margin:0;font-size:13px}.compare-grid{grid-template-columns:repeat(var(--compare-count,2), minmax(260px, 1fr));align-items:start;gap:12px;padding-bottom:4px;display:grid;overflow-x:auto}.compare-roster-card{border:1px solid var(--line);background:var(--card);border-radius:18px;min-width:0;padding:14px}.compare-roster-card>header{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.compare-roster-card h4{font:italic 400 20px/1.1 var(--serif);letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.compare-role-counts{gap:6px;margin-bottom:8px;display:flex}.compare-role-counts .mini-role{font-size:10px}.compare-roster-list{max-height:380px;overflow:auto}.compare-roster-list .roster-line{padding:6px 0}.compare-roster-list .roster-line+.roster-line{border-top:1px solid var(--line)}.compare-empty-roster{margin:8px 0 0;font-size:12px}.league-compare-toggle{margin-top:12px}@media (width<=720px){.compare-grid{grid-template-columns:1fr}}.app-modal.lega-modal{width:min(720px,100vw - 40px)}.lega-player-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;display:grid}ul.plain.lega-player-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;display:grid}.lega-player-grid .span-all,.lega-player-grid li.muted.span-all{grid-column:1/-1}.lega-player-grid li:nth-last-child(2):nth-child(odd){border-bottom:none}.lega-player-grid .roster-line{flex-wrap:nowrap;gap:8px}.lega-player-grid .roster-line .badge{white-space:nowrap}.lega-player-grid .roster-line .flex-1{min-width:0}.lega-player-grid .roster-line .flex-1 b,.lega-player-grid .roster-line .player-link b{white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}.lega-player-grid .muted{white-space:nowrap}.modal-role-filters{margin-bottom:6px}.lega-player-grid .mini-role{background:var(--card-deep);min-width:26px;height:26px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:600;display:inline-grid}@media (width<=720px){.app-modal.lega-modal{width:calc(100vw - 24px)}ul.plain.lega-player-grid,.lega-player-grid{grid-template-columns:1fr;column-gap:0}}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:6px;padding-bottom:10px;display:flex}.tab{border-radius:var(--radius-btn);color:var(--muted);background:0 0;border:0;padding:8px 14px;font-size:14px;font-weight:450}.tab:hover{color:var(--ink);background:var(--card)}.tab.active{background:var(--ink);color:var(--paper)}.form-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-row select,.form-row input{flex:0 auto;min-width:0}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.filters select,.filters input{flex:0 auto;min-width:0}.filters input.search{flex:180px}.import-row{margin-top:8px}.import-row label.btn{cursor:pointer;align-items:center;margin:0;display:inline-flex}.form-col{flex-direction:column;gap:12px;display:flex}.form-col label{color:var(--muted);flex-direction:column;gap:6px;font-size:11px;font-weight:450;display:flex}.search{width:100%}.team-line{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.deadline-tile{border-left:4px solid var(--line-strong)}.deadline-tile.registered{border-left-color:var(--role-p)}.deadline-tile.expired{opacity:.72}.deadline-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.deadline-head>div{flex-direction:column;gap:2px;display:flex}.deadline-body{margin-top:8px}.deadline-body .btn{align-self:flex-start}.admin-card{background:var(--card)}.league-team .team-line{flex-wrap:wrap;gap:10px}.league-team .team-line>b{font:400 20px/1.2 var(--serif);letter-spacing:-.01em}#toast{opacity:0;pointer-events:none;z-index:99;color:var(--paper);background:var(--ink);box-shadow:var(--artifact-shadow);white-space:nowrap;border-radius:999px;padding:11px 18px;font-size:13px;font-weight:500;transition:opacity .2s,transform .2s;position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px)}#toast.show{opacity:1;transform:translate(-50%)}html[data-theme=dark] #toast{color:#18181a;background:var(--ink)}.history-drawer{background:var(--paper);border:1px solid var(--line);width:360px;max-height:400px;box-shadow:var(--artifact-shadow);z-index:60;border-radius:20px;flex-direction:column;display:flex;position:fixed;bottom:18px;right:18px;overflow:hidden}.history-drawer.hidden{display:none}.history-drawer header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.history-drawer header h3{font:400 18px/1.2 var(--serif);letter-spacing:-.02em;margin:0}.history-drawer header button{background:var(--card);color:var(--ink);cursor:pointer;border:0;border-radius:50%;width:28px;height:28px;font-size:16px;line-height:1}.history-list{max-height:320px;padding:8px 16px;overflow:auto}.history-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:9px 0;font-size:12px;display:flex}.history-row:last-child{border-bottom:none}.history-row time{color:var(--muted);white-space:nowrap;font-size:10px}html[data-theme=dark] .history-drawer{border-color:var(--line);background:#242427}html[data-theme=dark] .history-drawer header{border-color:var(--line)}html[data-theme=dark] .history-drawer header h3{color:var(--ink)}html[data-theme=dark] .history-drawer header button{color:var(--ink);background:var(--card-deep)}html[data-theme=dark] .history-row{border-color:var(--line);color:var(--ink)}html[data-theme=dark] .history-row time{color:var(--muted)}@media (width<=720px){.history-drawer{width:auto;bottom:10px;left:10px;right:10px}}.spinner{text-align:center;color:var(--muted);padding:40px}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#18181a;--paper-2:#1c1c1f;--card:#222225;--card-deep:#29292d;--ink:#f2efec;--ink-soft:#d9d5d0;--muted:#aaa6a3;--ash:#77737a;--smoke:#55555b;--line:#ffffff1a;--line-strong:#ffffff2e;--peach:#4a2c25;--sienna:#f0c7b2;--danger:#ff9a90;--role-p:#2e9b64;--role-d:#4a86e8;--role-c:#c9a72e;--role-a:#dd4f5a;--artifact-shadow:0 0 0 1px #ffffff0f, 0 20px 28px -12px #0000008c}html[data-theme=dark] body{color:var(--ink);background:var(--paper)}html[data-theme=dark] .topbar{color:var(--ink);background:#18181af0;border-bottom:1px solid #ffffff12}html[data-theme=dark] .brand-name,html[data-theme=dark] .brand-name em{color:var(--ink)}html[data-theme=dark] .brand-tag,html[data-theme=dark] .nav button,html[data-theme=dark] .ghost-btn{color:var(--muted)}html[data-theme=dark] .nav button:hover,html[data-theme=dark] .ghost-btn:hover{color:#fff;background:var(--card-deep)}html[data-theme=dark] .nav button.active{color:var(--ink);background:0 0}html[data-theme=dark] .nav button.active:after{background:var(--ink)}html[data-theme=dark] .theme-toggle,html[data-theme=dark] .setup-theme-toggle{color:var(--ink);background:var(--card-deep)}html[data-theme=dark] .toolbar-separator{background:#44444a}html[data-theme=dark] .burger{border-color:var(--line)}html[data-theme=dark] .burger span{background:var(--ink)}html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{color:var(--ink);background:var(--card-deep);border-color:#39393e}html[data-theme=dark] input:focus,html[data-theme=dark] select:focus,html[data-theme=dark] textarea:focus{border-color:var(--sienna);box-shadow:0 0 0 2px #f0c7b21f}html[data-theme=dark] .card{background:var(--card)}html[data-theme=dark] .stat{background:var(--card-deep);box-shadow:none}html[data-theme=dark] .stat-value{color:var(--ink)}html[data-theme=dark] .stat-label{color:var(--ash)}html[data-theme=dark] .alert-success{color:#7fd6a8;background:#2e9b6421}html[data-theme=dark] .alert-warning{color:#e3c26a;background:#c9a72e21}html[data-theme=dark] .alert-danger{color:#ff9a90;background:#ce5a5321}html[data-theme=dark] .alert-info{color:#9fc0f2;background:#4a86e824}html[data-theme=dark] .btn{color:var(--ink);border-color:var(--ink)}html[data-theme=dark] .btn:hover{background:var(--card-deep)}html[data-theme=dark] .btn-primary{color:#18181a;background:var(--ink);border-color:var(--ink)}html[data-theme=dark] .btn-primary:hover{background:var(--ink);color:#18181a}html[data-theme=dark] .btn-danger{color:var(--danger);border-color:#a85852}html[data-theme=dark] .btn-danger:hover{background:var(--danger);color:#18181a}html[data-theme=dark] .btn-logout{color:#18181a;background:var(--ink);border-color:var(--ink)}html[data-theme=dark] ul.plain li{border-color:var(--line)}html[data-theme=dark] .badge{background:var(--card-deep);color:var(--muted)}html[data-theme=dark] .role-p{background:color-mix(in srgb, var(--role-p) 18%, transparent);border-color:#2e9b6480}html[data-theme=dark] .role-d{background:color-mix(in srgb, var(--role-d) 18%, transparent);border-color:#4a86e880}html[data-theme=dark] .role-c{background:color-mix(in srgb, var(--role-c) 18%, transparent);border-color:#c9a72e80}html[data-theme=dark] .role-a{background:color-mix(in srgb, var(--role-a) 18%, transparent);border-color:#dd4f5a80}html[data-theme=dark] .u21{background:var(--ink);color:#18181a}html[data-theme=dark] .login-card{background:var(--card);box-shadow:none}html[data-theme=dark] .login-card h1{color:var(--ink)}html[data-theme=dark] .login-card .login-sub,html[data-theme=dark] .login-card label{color:var(--muted)}html[data-theme=dark] .tabs{border-color:var(--line)}html[data-theme=dark] .tab{color:var(--muted)}html[data-theme=dark] .tab:hover{color:var(--ink);background:var(--card-deep)}html[data-theme=dark] .tab.active{color:#18181a;background:var(--ink)}html[data-theme=dark] .team-line{border-color:var(--line)}html[data-theme=dark] .deadline-tile{border-left-color:var(--line-strong)}html[data-theme=dark] .empty{border-color:var(--line-strong)}@media (width<=900px){.topbar{flex-wrap:wrap;gap:8px;height:auto;min-height:68px;padding:10px 16px}.topbar .brand{min-width:0}.burger{display:flex}.nav{border-top:1px solid var(--line);flex-direction:column;flex:none;order:3;align-items:stretch;width:100%;margin-left:0;padding-top:8px;display:none}.nav.open{display:flex}.nav button.active:after{display:none}.toolbar{margin-left:auto}.user-chip .user-name{display:none}.content{padding:20px 16px 48px}.roster-split{grid-template-columns:1fr}.login-card{padding:34px 26px}}@media (width<=720px){.grid-2{grid-template-columns:1fr}.page h2{font-size:30px}.stats-row{grid-template-columns:repeat(2,1fr);display:grid}.stat{min-width:0}}
