/* UFL Fantasy – colours/typography from the UFL GM draft app (tpl/base.css); layout patterned on Yahoo Fantasy */
:root{--bg:#0b1020;--panel:#141b31;--panel2:#1b2442;--line:#2a355c;--txt:#e9eefc;--mut:#93a0c4;--acc:#d62f3d;--acc2:#ffd166;--ok:#2ec4b6;--bad:#ff5c6c;
--qb:#e5487a;--rb:#2ec4b6;--wr:#4f8dff;--te:#ff9f43;--k:#b388ff;--def:#a1887f;--tqb:#e5487a;--pos-bg:#232c4a;--pos-bd:rgba(255,255,255,.12);--a-qb:#d0607e;--a-rb:#3aa99c;--a-wr:#5a8ae0;--a-te:#d39a4f;--a-k:#9585cf;--a-def:#8a97ad;--a-flex:#b3bdd8;--a-sflx:#d6b25e;--a-bn:#4b5574;--a-ir:#b05a64;--tab:62px;--top:56px}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:var(--bg);color:var(--txt);font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:15px}
body{background:radial-gradient(1200px 600px at 10% -10%,#1d2a55 0,transparent 60%),var(--bg);min-height:100vh;min-height:100dvh}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel2);padding:8px 14px;border-radius:9px}
button:hover{filter:brightness(1.15)}button:disabled{opacity:.45;cursor:default;filter:none}
button.pri{background:var(--acc);border-color:var(--acc);font-weight:700;color:#fff}button.gold{background:var(--acc2);border-color:var(--acc2);color:#111;font-weight:800}
button.ghost{background:transparent}button.sm{padding:5px 10px;font-size:13px;border-radius:7px}button.xs{padding:3px 8px;font-size:12px;border-radius:6px}
input,select,textarea{font:inherit;color:var(--txt);background:#0e1428;border:1px solid var(--line);border-radius:9px;padding:9px 11px;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(255,209,102,.4);border-color:var(--acc2)}
label{display:block;font-size:12px;color:var(--mut);margin:10px 0 4px;text-transform:uppercase;letter-spacing:.6px;font-weight:700}
.mut{color:var(--mut)}.sm{font-size:13px}.xs{font-size:11.5px}.b{font-weight:800}.r{text-align:right}.c{text-align:center}.row{display:flex;align-items:center;gap:10px}.sp{flex:1}.wrapx{flex-wrap:wrap}.hide{display:none!important}
.ok{color:var(--ok)}.bad{color:var(--bad)}.gold-t{color:var(--acc2)}

/* top bar */
.topbar{position:sticky;top:0;z-index:30;height:var(--top);display:flex;align-items:center;gap:10px;padding:0 14px;background:rgba(11,16,32,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.topbar .brand{display:flex;align-items:center;gap:8px;font-weight:900;letter-spacing:.4px}.topbar .brand img{height:30px}.topbar .brand .tag{background:var(--acc);font-size:11px;padding:2px 7px;border-radius:6px;color:#fff}
.lswitch{display:flex;align-items:center;gap:8px;min-width:0;padding:4px 8px;border-radius:10px;cursor:pointer}.lswitch:hover{background:var(--panel)}
.lswitch .ln{font-weight:800;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46vw}.lswitch .tn{font-size:12px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46vw}
.iconbtn{background:transparent;border:0;padding:8px;border-radius:50%;font-size:18px;line-height:1}
/* desktop league nav (Yahoo-style tabs under header) */
.lnav{display:none;gap:4px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--panel);position:sticky;top:var(--top);z-index:25;overflow-x:auto}
.lnav a{padding:12px 14px;font-weight:700;color:var(--mut);border-bottom:3px solid transparent;white-space:nowrap}.lnav a.on{color:var(--txt);border-color:var(--acc)}.lnav a:hover{color:var(--txt)}
/* bottom tab bar (phone) */
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;height:calc(var(--tab) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;background:rgba(14,20,40,.97);border-top:1px solid var(--line);backdrop-filter:blur(8px)}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:700;color:var(--mut)}
.tabbar a svg{width:23px;height:23px}.tabbar a.on{color:var(--acc2)}.tabbar a.on svg{filter:drop-shadow(0 0 6px rgba(255,209,102,.35))}
.page{max-width:1280px;margin:0 auto;padding:12px max(12px,env(safe-area-inset-right)) calc(var(--tab) + 18px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.page.has-sticky{padding-bottom:calc(var(--tab) + 70px + env(safe-area-inset-bottom))}
.layout{display:grid;grid-template-columns:1fr;gap:14px}.layout>*{min-width:0}
.rail{display:none}
@media(min-width:1000px){
  .tabbar,.ad-sticky{display:none!important}.lnav{display:flex}.page,.page.has-sticky{padding:16px 18px 40px}
  .layout{grid-template-columns:minmax(0,1fr) 300px}.rail{display:flex;flex-direction:column;gap:14px}.feed-ad{display:none}
}
/* cards */
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.card>.hd{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid var(--line);font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.8px;color:var(--mut)}
.card>.hd a{margin-left:auto;color:var(--acc2);text-transform:none;letter-spacing:0;font-size:13px}
.card>.bd{padding:12px 14px}.stack{display:flex;flex-direction:column;gap:14px}
.subtabs{display:flex;gap:6px;overflow-x:auto;padding:2px 0 10px;scrollbar-width:none}.subtabs::-webkit-scrollbar{display:none}
.subtabs a,.chip{white-space:nowrap;padding:7px 13px;border-radius:999px;border:1px solid var(--line);background:var(--panel);font-weight:700;font-size:13px;color:var(--mut);cursor:pointer;user-select:none}
.subtabs a.on,.chip.on{background:var(--txt);color:var(--bg);border-color:var(--txt)}
h1,h2,h3{margin:0}h2{font-size:20px}h3{font-size:16px}
/* tables */
table{width:100%;border-collapse:collapse}th{font-size:11.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--mut);font-weight:800;text-align:left;padding:8px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:9px 8px;border-bottom:1px solid rgba(42,53,92,.6);vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:rgba(255,255,255,.02)}
.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
/* avatars */
.hs{position:relative;flex:none;border-radius:50%;background:#0e1428;overflow:hidden;display:grid;place-items:center;border:2px solid var(--line)}
.hs img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}.hs.logo img{object-fit:contain;padding:12%}
.hs .ini{font-weight:900;color:#fff;font-size:12px}.hs .tl{position:absolute;right:-3px;bottom:-3px;width:42%;height:42%;background:#0b1020;border-radius:50%;padding:1px}
.tav{flex:none;border-radius:12px;display:grid;place-items:center;font-weight:900;color:#111;letter-spacing:.3px}
.lgo{object-fit:contain;flex:none}
.pl{display:flex;align-items:center;gap:10px;min-width:0}.pl .nm{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.pl .nm:hover{text-decoration:underline}
.pl .meta{font-size:12px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl>div{min-width:0}
.addbtn{width:30px;height:30px;padding:0;border-radius:50%;display:grid;place-items:center;font-size:20px;font-weight:900;background:transparent;border:2px solid var(--ok);color:var(--ok);line-height:1}
.addbtn.w{border-color:var(--acc2);color:var(--acc2);font-size:13px}.addbtn.drop{border-color:var(--bad);color:var(--bad)}
.star{background:transparent;border:0;padding:4px;font-size:18px;color:var(--mut)}.star.on{color:var(--acc2)}
/* lineup */
.lu td{padding:8px 6px}
.slotbtn.sel{outline:3px solid var(--acc2);outline-offset:1px}.lu tr.tgt{background:rgba(255,209,102,.09)}.lu tr.tgt .slotbtn{border-color:var(--acc2);animation:pulse 1s infinite}
.lu tr.drag{opacity:.4}.lu tr.over{background:rgba(46,196,182,.12)}
@keyframes pulse{50%{box-shadow:0 0 0 4px rgba(255,209,102,.25)}}
.secrow td{background:var(--panel2);font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--mut);padding:6px 10px}
.pts{font-weight:900;font-size:16px;font-variant-numeric:tabular-nums}.proj{font-size:12px;color:var(--mut)}
/* matchup */
.mhead{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:16px 12px;background:linear-gradient(135deg,#1b2442,#141b31)}
.mhead .side{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;min-width:0}.mhead .side .n{font-weight:900;font-size:15px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mhead .score{font-size:34px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1}.mhead .score.win{color:var(--acc2)}.mhead .vs{color:var(--mut);font-weight:900}
.wp{height:8px;border-radius:4px;background:var(--panel2);overflow:hidden;display:flex;margin:0 14px 12px}.wp i{display:block;height:100%}
.mrow{display:grid;grid-template-columns:minmax(0,1fr) 54px 46px 54px minmax(0,1fr);align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid rgba(42,53,92,.6)}
.mrow .l{display:flex;align-items:center;gap:8px;min-width:0}.mrow .rr{display:flex;align-items:center;gap:8px;min-width:0;flex-direction:row-reverse;text-align:right}
.mrow .p{font-variant-numeric:tabular-nums;font-weight:900;text-align:center}.mrow .p small{display:block;font-weight:600;color:var(--mut);font-size:11px}
.mrow .p.hi{color:var(--acc2)}.mrow .s{text-align:center}
.live{display:inline-flex;align-items:center;gap:6px;color:var(--bad);font-weight:900;font-size:12px;letter-spacing:.8px}.live:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--bad);animation:blink 1s infinite}
@keyframes blink{50%{opacity:.2}}
.prog{height:4px;background:var(--panel2);border-radius:2px;overflow:hidden}.prog i{display:block;height:100%;background:var(--ok)}
/* scoreboard */
.sbm{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:10px 14px;border-bottom:1px solid var(--line);cursor:pointer}.sbm:hover{background:rgba(255,255,255,.02)}
.sbm .t{display:flex;align-items:center;gap:8px;min-width:0;font-weight:700}.sbm .t span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sbm .s{font-weight:900;text-align:right;font-variant-numeric:tabular-nums}
/* draft */
.dclock{display:flex;align-items:center;gap:12px;padding:12px 14px;background:linear-gradient(90deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:14px}
.dclock .time{margin-left:auto;font-size:34px;font-weight:900;color:var(--acc2);font-variant-numeric:tabular-nums}.dclock .time.urgent{color:var(--bad);animation:blink 1s infinite}
.dclock.mine{border-color:var(--acc2);box-shadow:0 0 0 3px rgba(255,209,102,.18)}
.carousel{display:flex;gap:8px;overflow-x:auto;padding:10px 0;scrollbar-width:thin}
.ci{flex:none;width:112px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px;font-size:12px}.ci .k{color:var(--mut);font-weight:800;font-size:11px}.ci .tm{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ci.now{border-color:var(--acc2);background:#2a2a1c}.ci.me{box-shadow:inset 0 0 0 2px var(--acc)}.ci.done{opacity:.75}
.dgrid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;margin-top:10px}.dgrid>*{min-width:0}
@media(max-width:999px){.dgrid{grid-template-columns:1fr}.dside-desk{display:none}}
@media(min-width:1000px){.dtabs-mobile{display:none}}
.dlist{max-height:calc(100vh - 330px);min-height:300px;overflow:auto}
.board{overflow:auto;max-height:75vh}.board table{border-collapse:separate;border-spacing:3px;min-width:720px}.board th{position:sticky;top:0;background:var(--bg);z-index:1;font-size:11px;text-align:center;white-space:normal;max-width:110px;border:0}
.board td{border:0;padding:0}.bc{border-radius:7px;padding:6px 7px;min-height:52px;font-size:11.5px;color:#0b1020;line-height:1.2}.bc .bn{font-weight:900;font-size:12px}.bc.empty{background:var(--panel);color:var(--mut)}.bc.cur{outline:2px solid var(--acc2)}
.chat{display:flex;flex-direction:column;height:360px}.chat .msgs{flex:1;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:6px;font-size:13px}.chat form{display:flex;gap:6px;padding:8px;border-top:1px solid var(--line)}
/* modal / sheet */
.ov{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:60;display:flex;align-items:flex-end;justify-content:center}
.sheet{background:var(--panel);border:1px solid var(--line);border-radius:18px 18px 0 0;width:100%;max-width:640px;max-height:92vh;overflow:auto;padding-bottom:env(safe-area-inset-bottom);animation:up .18s ease-out}
@media(min-width:700px){.ov{align-items:center}.sheet{border-radius:18px}}
@keyframes up{from{transform:translateY(30px);opacity:.4}}
.sheet .sh{display:flex;align-items:center;gap:10px;padding:14px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel);z-index:1}
.pcard-top{display:flex;gap:14px;align-items:center;padding:16px;position:relative;overflow:hidden}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--tab) + 70px);background:var(--txt);color:var(--bg);padding:10px 16px;border-radius:10px;font-weight:700;z-index:80;box-shadow:0 8px 30px rgba(0,0,0,.5);max-width:90vw}
@media(min-width:1000px){.toast{bottom:30px}}
.toast.err{background:var(--bad);color:#fff}
/* hero / auth */
.auth{max-width:420px;margin:0 auto;padding:6vh 16px 24px}.auth .logo{display:block;margin:0 auto 14px;height:84px}
.hero{padding:22px 16px;text-align:center;background:linear-gradient(135deg,#1d2a55,#141b31);border-bottom:1px solid var(--line)}
.lcard{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);cursor:pointer}.lcard:hover{background:rgba(255,255,255,.02)}
.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;background:var(--panel2);color:var(--mut);border:1px solid var(--line)}.pill.gold{background:var(--acc2);color:#111;border-color:var(--acc2)}.pill.red{background:var(--acc);color:#fff;border-color:var(--acc)}.pill.ok{background:var(--ok);color:#06302b;border-color:var(--ok)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
@media(max-width:560px){.grid3{grid-template-columns:1fr 1fr}}
.kv{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(42,53,92,.6);font-size:14px}.kv:last-child{border:0}.kv span:first-child{color:var(--mut)}
.scroll-x{overflow-x:auto}
.empty{padding:26px;text-align:center;color:var(--mut)}
/* ads */
.ad{position:relative;display:flex;align-items:center;justify-content:center;margin:0 auto;overflow:hidden;border-radius:10px;background:#0e1428;border:1px dashed var(--line)}
.ad .adl{position:absolute;top:3px;right:6px;font-size:9.5px;letter-spacing:.6px;color:rgba(255,255,255,.55);text-transform:uppercase;z-index:2}
.ad-top{width:100%;max-width:728px;height:90px;margin:12px auto}.ad-rail{width:300px;height:250px}.ad-rail.tall{height:600px}.ad-feed{width:100%;max-width:340px;height:250px}
@media(max-width:999px){.ad-top{max-width:320px;height:50px;margin:10px auto}}
.ad-sticky{position:fixed;left:0;right:0;bottom:calc(var(--tab) + env(safe-area-inset-bottom));z-index:35;height:56px;display:flex;justify-content:center;align-items:center;background:rgba(11,16,32,.96);border-top:1px solid var(--line)}
.ad-sticky .ad{width:320px;height:50px;border-radius:6px}
.ad-sticky .x{position:absolute;right:6px;top:4px;background:transparent;border:0;color:var(--mut);padding:2px 6px;font-size:14px}
/* neutral fallback card: only visible if an ad image fails to load */
.adc{width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 14px;text-decoration:none;color:#fff;background:#000}
@media(max-width:700px){.hide-sm{display:none}}

@media(max-width:700px){.dlist td,.dlist th{padding-left:6px;padding-right:6px}.dlist .pl{min-width:0}.dlist table{table-layout:auto}.dlist td:nth-child(2){max-width:40vw;overflow:hidden}.dlist td,.dlist th{padding-left:4px;padding-right:4px}.dlist th{font-size:10.5px}}
.savebar{position:sticky;bottom:calc(var(--tab) + 64px);background:var(--bg);padding:10px 0;z-index:5}
@media(min-width:1000px){.savebar{bottom:0}}
.show-sm{display:none}
@media(max-width:700px){.show-sm{display:inline}.mrow{grid-template-columns:minmax(0,1fr) 48px 40px 48px minmax(0,1fr);padding:8px 8px;gap:4px}.mrow .hs{width:28px!important;height:28px!important}.mrow .l,.mrow .rr{gap:6px}}
/* ---- news ---- */
.nbadge{display:inline-flex;vertical-align:-2px;margin-left:5px;width:15px;height:15px;color:var(--acc2);flex:none}.nbadge svg{width:15px;height:15px}
.pl .nm{display:flex;align-items:center;min-width:0}.pl .nm .nmt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nfeed{display:flex;flex-direction:column;gap:12px}
.ncard{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.nhd{display:flex;align-items:flex-start;gap:10px}.nhd .lgo{flex:none;margin-top:2px}
.nhl{margin:3px 0 0;font-size:17px;line-height:1.3;font-weight:800}
.nsum{margin:10px 0;line-height:1.5;color:#d4dbf0;font-size:14.5px}
.ncat{flex:none;font-size:11px}.ncat.c-injury{background:rgba(255,92,108,.18);color:var(--bad)}.ncat.c-transaction{background:rgba(46,196,182,.16);color:var(--ok)}.ncat.c-depth_chart{background:rgba(79,141,255,.18);color:#8fb4ff}.ncat.c-game{background:rgba(255,209,102,.16);color:var(--acc2)}
.nplayers{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.nchip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 3px;border-radius:999px;background:var(--panel2);border:1px solid var(--line);font-size:13px;font-weight:700;cursor:pointer}.nchip:hover{border-color:var(--acc2)}
.nsrc{font-size:12.5px;color:var(--mut)}.nsrc a{color:var(--acc2);font-weight:800}.nsrc a:hover{text-decoration:underline}
.nfilter{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.nfilter a{display:inline-flex;align-items:center;gap:5px}
#pnews .pn{padding:10px 0;border-bottom:1px solid var(--line)}#pnews .pn:last-child{border-bottom:0}#pnews .pn .b{margin:2px 0 4px}
@media(min-width:1000px){.ncard{padding:16px 20px}.nhl{font-size:19px}}
/* ---- sign-in providers (Google: white/#747775 border; Apple: black/white) ---- */
.oauth{display:flex;flex-direction:column;gap:10px;margin:14px 0 4px}
.btn-google,.btn-apple{display:flex;align-items:center;justify-content:center;gap:10px;height:40px;border-radius:20px;font-family:Roboto,"Helvetica Neue",Arial,sans-serif;font-size:14px;font-weight:500;letter-spacing:.25px}
.btn-google{background:#fff;color:#1f1f1f;border:1px solid #747775}.btn-google:hover{background:#f7f8f8}
.btn-apple{background:#000;color:#fff;border:1px solid #000;font-family:-apple-system,"SF Pro Text","Helvetica Neue",Arial,sans-serif;font-size:15px}.btn-apple svg{margin-top:-3px}
.orline{display:flex;align-items:center;gap:10px;color:var(--mut);font-size:12px;margin:10px 0 0}.orline:before,.orline:after{content:"";flex:1;height:1px;background:var(--line)}

.ad .adlink{display:block;width:100%;height:100%;color:inherit;text-decoration:none}
.adimg{position:relative;width:100%;height:100%}
.adimg>img,.adimg>picture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.adimg>picture{display:contents}
.adimg>.adc{position:absolute;inset:0}
.ad .adl{background:rgba(0,0,0,.55);color:rgba(255,255,255,.85);padding:1px 5px;border-radius:4px;top:4px;right:4px}
@media(max-width:700px){.ptab-ly td:nth-child(2){max-width:46vw;overflow:hidden}.ptab-ly td,.ptab-ly th{padding-left:5px;padding-right:5px}}

.rsbadge{display:inline-flex;align-items:center;justify-content:center;vertical-align:1px;margin-left:5px;width:14px;height:14px;border-radius:50%;background:#f0a531;color:#111;font-size:10px;font-weight:900;line-height:1;flex:none;cursor:help}.pill.warn{background:#f0a531;color:#111;border-color:#f0a531}.rsnote{margin:8px 0 0;color:#f0c46a}

.ad-bottom{width:100%;max-width:728px;aspect-ratio:1206/646;height:auto;margin:14px auto 12px}.ad-bottom .adimg>picture>img,.ad-bottom .adimg>img{object-fit:contain;object-position:left center}
@media(max-width:999px){.ad-bwrap.with-bars{padding-bottom:calc(var(--tab) + 66px + env(safe-area-inset-bottom))!important}}
/* survivor */
.spill.red{background:rgba(230,57,70,.16);color:#ff6b78;border-color:rgba(230,57,70,.45)}.spill.ok{background:rgba(46,196,182,.14);color:var(--ok);border-color:rgba(46,196,182,.4)}.spill.gold{background:rgba(255,209,102,.14);color:var(--acc2);border-color:rgba(255,209,102,.4)}
.spill{font-size:11px;font-weight:800;white-space:nowrap}
.sboard td{vertical-align:middle}.sboard .num{text-align:right;white-space:nowrap}
.sboard tr.cutline td{padding:0;border:0;height:22px;position:relative;background:repeating-linear-gradient(90deg,var(--acc) 0 10px,transparent 10px 16px) center/100% 2px no-repeat}
.sboard tr.cutline span{position:relative;display:inline-block;margin-left:14px;padding:1px 8px;background:var(--acc);color:#fff;font-size:10.5px;font-weight:900;letter-spacing:1px;border-radius:4px}
.sboard tr.blockrow{background:rgba(230,57,70,.06)}.sboard tr.cutrow{opacity:.55}
.chop .mhead{border-top:1px solid var(--line)}
.relban{border-color:rgba(255,209,102,.5);background:linear-gradient(90deg,rgba(255,209,102,.08),var(--panel))}
.grave .lcard{opacity:.78;filter:grayscale(.5)}.grave .lcard:hover{opacity:1;filter:none}.grave .tomb{flex:none}
.survopts{margin-top:10px;padding:10px 12px;border:1px dashed var(--line);border-radius:10px}
/* ---------- player page (Yahoo-style layout, app palette) ---------- */
.sheet.pc-sheet{max-width:820px;padding-bottom:0;display:block;height:92vh;height:92dvh}
.pc>*{flex:none}.pc>.pc-body{flex:1 0 auto}
@media(min-width:1000px){.ov:has(.pc-sheet){align-items:center}.sheet.pc-sheet{border-radius:18px;height:88vh}}
.pc{display:flex;flex-direction:column;min-height:100%}
.pc-hd{position:relative;overflow:hidden;display:flex;gap:12px;align-items:flex-end;padding:18px 16px 14px;background:linear-gradient(135deg,var(--tc) 0%,color-mix(in srgb,var(--tc) 55%,#141b31) 55%,#141b31 100%);border-bottom:3px solid var(--acc)}
.pc-wm{position:absolute;right:-30px;top:-20px;width:210px;height:210px;object-fit:contain;opacity:.12;pointer-events:none}
.pc-hl{flex:1;min-width:0;position:relative}
.pc-own{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;background:rgba(11,16,32,.55);border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:3px 8px;margin-bottom:8px}
.pc-nm{display:flex;align-items:center;gap:8px}
.pc-nm h2{margin:0;font-size:30px;line-height:1.02;font-weight:900;font-style:italic;text-transform:uppercase;letter-spacing:.3px;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.pc-star{background:none;border:0;padding:2px 4px;font-size:24px;color:var(--mut);line-height:1}.pc-star.on{color:var(--acc2)}
.pc-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px;font-size:13.5px;font-weight:700}
.pc-bio{margin-top:4px;color:#d7def5;opacity:.85}
.pc-st{margin-top:8px;display:inline-block}
.pc-ph{position:relative;flex:none}.pc-ph .hs{border-width:3px}
.pc-x{position:absolute;right:10px;top:10px;background:rgba(11,16,32,.55);border:1px solid rgba(255,255,255,.18);border-radius:50%;width:34px;height:34px;padding:0;z-index:2}
.pc-strip{display:grid;grid-template-columns:repeat(4,1fr);background:var(--panel2);border-bottom:1px solid var(--line)}
.pc-sc{padding:10px 6px;text-align:center;border-right:1px solid var(--line)}.pc-sc:last-child{border-right:0}
.pc-v{font-size:19px;font-weight:900;display:flex;align-items:baseline;justify-content:center;gap:4px}
.pc-k{font-size:11px;color:var(--mut);text-transform:uppercase;letter-spacing:.5px;font-weight:700;margin-top:2px}
.pc-d{font-size:11px;font-weight:800}.pc-d .up{color:var(--ok)}.pc-d .dn{color:var(--bad)}
.pc-av{border-bottom:1px solid var(--line)}
.pc-avh{width:100%;display:flex;justify-content:space-between;align-items:center;background:var(--panel);border:0;border-radius:0;padding:11px 16px;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.6px}
.pc-car{transition:transform .15s;color:var(--acc2)}.pc-av.open .pc-car{transform:rotate(180deg)}
.pc-avl{display:none;padding:4px 16px 12px}.pc-av.open .pc-avl{display:block}
.pc-avr{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dashed var(--line);font-size:13.5px}.pc-avr:last-child{border-bottom:0}
.pc-tabs{display:flex;position:sticky;top:0;z-index:3;background:var(--panel);border-bottom:1px solid var(--line)}
.pc-tabs button{flex:1;background:none;border:0;border-radius:0;padding:12px 6px;font-weight:800;color:var(--mut);border-bottom:3px solid transparent;margin-bottom:-1px}
.pc-tabs button.on{color:var(--txt);border-bottom-color:var(--acc)}
.pc-body{padding:14px 14px 18px;flex:1}
.pc-cap{font-size:11.5px;font-weight:900;letter-spacing:1px;color:var(--mut);display:flex;align-items:center;gap:8px}
.pc-card{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.pc-mu .pc-cap{margin-bottom:10px}.pc-opp{display:flex;gap:10px;align-items:center}.pc-big{font-size:26px;font-weight:900;color:var(--acc2)}
.pc-inj{margin-top:10px;font-size:12.5px;color:var(--acc2);border-top:1px solid var(--line);padding-top:8px}
.pc-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}
.pc-chip{flex:none;min-width:92px;scroll-snap-align:start;background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:8px 10px}
.pc-chip.cur{border-color:var(--acc);box-shadow:inset 0 3px 0 var(--acc)}
.pc-cw{font-size:11px;font-weight:900;color:var(--mut);letter-spacing:.6px}.pc-co{display:flex;align-items:center;gap:4px;font-weight:800;font-size:13px;margin:4px 0}
.pc-ad{width:100%;max-width:340px;height:250px;margin:16px auto 0}.pc-ad.pc-ad-bn{max-width:728px;height:auto;aspect-ratio:728/90}
.pc-tw{overflow-x:auto;border:1px solid var(--line);border-radius:10px;margin-bottom:8px}
.pc-t{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:13px}
.pc-t th{background:var(--panel2);font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--mut);white-space:nowrap;padding:8px 10px}
.pc-t td{padding:8px 10px;border-top:1px solid var(--line);white-space:nowrap}
.pc-t .stk{position:sticky;left:0;background:var(--panel);z-index:1}.pc-t th.stk{background:var(--panel2)}
.pc-t .stk2{position:sticky;left:38px;background:var(--panel);z-index:1;box-shadow:1px 0 0 var(--line)}.pc-t th.stk2{background:var(--panel2)}
.pc-t td.stk{min-width:38px}
.pc-bye td{color:var(--mut);font-weight:800;background:repeating-linear-gradient(45deg,transparent 0 8px,rgba(255,255,255,.02) 8px 16px)}
.pc-oc{font-weight:800}.pc-oc small{font-weight:600;color:var(--mut)}.pc-oc.easy,.pc-oc.easy small{color:var(--ok)}.pc-oc.tough,.pc-oc.tough small{color:var(--bad)}
.pc .c-above{background:rgba(46,196,182,.18);color:#7fe6dc}.pc .c-below{background:rgba(255,92,108,.16);color:#ffa3ad}
.pc-leg{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.pc-leg span[class^="c-"]{font-size:11.5px;font-weight:800;padding:3px 8px;border-radius:6px;border:1px solid var(--line)}
.pc-leg .c-{background:var(--panel2)}
.pc-bar{position:sticky;bottom:0;display:flex;gap:8px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(20,27,49,.96);backdrop-filter:blur(6px);border-top:1px solid var(--line);z-index:4}
.pc-bar button{flex:1;font-weight:800;white-space:nowrap;padding:10px 6px}
.pc-usrc{margin:14px 0 0}
.pc-cs{position:relative;margin-bottom:12px}.pc-cl{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.pc-cr{display:flex;align-items:center;gap:8px;text-align:left;padding:6px 10px}
.pc-ct{width:100%;table-layout:fixed}.pc-ct th:first-child{width:30%}.pc-ct td{padding:8px 6px;border-top:1px solid var(--line)}
.pc-ch{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-radius:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--tc) 45%,transparent),transparent)}
@media(max-width:520px){.pc-nm h2{font-size:24px}.pc-ph .hs{width:88px!important;height:88px!important}.pc-v{font-size:16px}}

/* league chat */
.chat.tall{height:min(62vh,640px)}.chat .msgs{gap:2px}
.cmsg{display:flex;gap:9px;align-items:flex-start;padding:6px 4px;border-radius:9px}.cmsg:hover{background:rgba(255,255,255,.03)}
.cmsg .cbody{flex:1;min-width:0}.cmsg .chd{font-size:12.5px;line-height:1.3}.cmsg .ctx{font-size:14px;line-height:1.4;overflow-wrap:anywhere;margin-top:1px}
.cmsg.mine .ctx{color:#fff}.cmsg .mention{color:var(--acc2)}
.cmsg.sys{align-items:center;gap:8px;background:rgba(255,209,102,.06);border:1px solid rgba(255,209,102,.18);font-size:13px;margin:4px 0;padding:7px 10px}.cmsg.sys>span:nth-child(2){flex:1}
.cmsg .sysic{font-size:15px}.cmsg.del{padding:2px 4px 2px 39px}
.crx{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;align-items:center}.crx .radd,.crx .cdel{opacity:.35;padding:1px 6px;border-color:transparent}.cmsg:hover .radd,.cmsg:hover .cdel{opacity:.85}
@media (hover:none){.crx .radd,.crx .cdel{opacity:.6}}
.rchip{padding:1px 7px;border-radius:12px;background:var(--panel2)}.rchip.on{border-color:var(--acc2);background:rgba(255,209,102,.14)}
.rpick{display:inline-flex;flex-wrap:wrap;gap:3px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:2px}.rpick button{border:0;background:transparent;font-size:16px;padding:2px 5px}
.tav0{width:26px;height:26px;flex:none}
.chat-mini{padding:4px 10px 8px}.chat-mini .cmsg{padding:4px 2px}
.iconbtn.chatbtn{position:relative}.iconbtn .badge{position:absolute;top:-3px;right:-4px;background:var(--acc);color:#fff;font-size:10px;font-weight:800;border-radius:9px;padding:1px 5px;line-height:1.3}
/* pre-draft rankings + do not draft */
.rkgrid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}.rkgrid>div+div{border-left:1px solid var(--line)}
.rklist{max-height:62vh;overflow:auto;padding:0 8px 8px}.rkrow{gap:8px}.rkrow .rkn{width:26px;text-align:right;flex:none}.rkrow.taken{opacity:.45}
.dndrow{opacity:.6}.dndrow:hover{opacity:.9}tr.dndrow td{background:rgba(255,92,108,.05)}
button.on-bad{border-color:var(--bad);background:rgba(255,92,108,.15);color:#ffd5da}
.dndchip{display:inline-flex;gap:6px;align-items:center;border:1px solid rgba(255,92,108,.4);background:rgba(255,92,108,.08);border-radius:14px;padding:3px 10px;font-size:13px}.dndchip a{cursor:pointer;color:var(--mut)}
@media (max-width:760px){.rkgrid{grid-template-columns:1fr}.rkgrid>div+div{border-left:0;border-top:1px solid var(--line)}.rklist{max-height:none}}
.rkgrid .hd{padding:12px 14px 8px;font-size:12px;text-transform:uppercase;letter-spacing:.6px;font-weight:800;color:var(--mut);display:flex;gap:10px;align-items:center}.rkgrid .hd a{cursor:pointer;text-transform:none;letter-spacing:0;color:var(--acc2)}

/* draft grades + recap */
.gchip{display:inline-block;min-width:30px;text-align:center;font-weight:900;font-size:12px;padding:2px 6px;border-radius:6px;background:rgba(255,255,255,.06)}
.g-A{color:#0b1020;background:var(--ok)}.g-B{color:#fff;background:var(--wr)}.g-C{color:#111;background:var(--acc2)}.g-D{color:#111;background:#ff9f43}.g-F{color:#fff;background:var(--bad)}
.gbig{width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:36px;flex:none}.gbig.sm{width:52px;height:52px;font-size:22px}.gbig.xs{width:38px;height:38px;font-size:15px}
.recap-hero{display:flex;gap:18px;align-items:center;padding:18px;position:relative;overflow:hidden}
.recap-hero.confetti::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#ffd166 2px,transparent 3px),radial-gradient(circle,#e63946 2px,transparent 3px),radial-gradient(circle,#2ec4b6 2px,transparent 3px),radial-gradient(circle,#4f8dff 2px,transparent 3px);background-size:90px 70px,110px 90px,70px 110px,130px 80px;background-position:0 0,40px 30px,20px 60px,70px 10px;opacity:.55;animation:confetti 6s linear infinite}
@keyframes confetti{to{background-position:0 280px,40px 390px,20px 500px,70px 330px}}
.recap-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:14px}.recap-grid .card{margin:0}.gteam{cursor:pointer;border-radius:10px}.gteam.on{background:rgba(255,209,102,.08);outline:1px solid rgba(255,209,102,.35)}
@media (max-width:760px){.recap-grid{grid-template-columns:1fr}.recap-hero{padding:14px;gap:12px}.recap-hero h2{font-size:20px}.gbig{width:68px;height:68px;font-size:30px}}
/* trade review */
.trrev{margin-top:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel2)}.vbar{height:6px;border-radius:3px;background:var(--bg);overflow:hidden;margin:6px 0 4px}.vbar i{display:block;height:100%;background:var(--bad)}button.warnb{border-color:var(--bad);color:var(--bad)}
/* injury designations */
.injb{display:inline-block;margin-left:6px;padding:0 5px;border-radius:4px;font-size:10px;font-weight:800;line-height:16px;vertical-align:middle;color:#fff;background:#b7791f;letter-spacing:.3px}
.injb.inj-D{background:#dd6b20}.injb.inj-O,.injb.inj-IR{background:var(--bad,#e53e3e)}
.pc-inj{margin-top:4px;font-size:12px;color:#fff;opacity:.95}.pc-inj a{color:inherit;text-decoration:underline}
.irwarn{margin-top:12px;padding:10px 12px;border-radius:10px;background:rgba(229,62,62,.12);border:1px solid rgba(229,62,62,.45);font-size:13px}

.sbwp{grid-column:1/-1;display:flex;align-items:center;gap:8px}.sbwp .wp.mini{flex:1;height:6px;margin:0}
.medrow{padding:10px 14px;border-bottom:1px solid var(--line);background:rgba(255,209,102,.05)}.medrow .xs{margin-top:4px}
.lockwarn{border-color:rgba(255,209,102,.5);background:rgba(255,209,102,.08)}
/* league type info + roster-limit greying */
.infolink{background:none;border:0;padding:6px 0 0;color:var(--acc2);font-weight:700;font-size:13px;cursor:pointer;width:auto;text-align:left}
.infolink:hover{text-decoration:underline}
.fmtinfo{padding:12px 16px 16px}
.fmtinfo .fi{border:1px solid var(--line);border-left:4px solid #4f8dff;border-radius:12px;padding:10px 12px;margin-bottom:10px;background:rgba(255,255,255,.02)}
.fmtinfo .fi.ko{border-left-color:#e63946}
.fmtinfo .fi-h{font-weight:800;display:flex;gap:8px;align-items:center;margin-bottom:4px}
.fmtinfo p{margin:6px 0;font-size:14px;line-height:1.45}
tr.nofit td{opacity:.5}
tr.nofit td:last-child{opacity:1}
.nofit-why{color:#e63946;font-size:11.5px;font-weight:700}
.nofit-why{white-space:normal}
/* ---- t36u: position / slot badges – one neutral slate badge, white Barlow Condensed label, muted position accent on the left edge ---- */
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/barlow-condensed-700-latin.woff2) format("woff2")}
.p-QB,.p-TQB,.bg-QB,.bg-TQB{--pa:var(--a-qb)}.p-RB,.bg-RB{--pa:var(--a-rb)}.p-WR,.bg-WR{--pa:var(--a-wr)}.p-TE,.bg-TE{--pa:var(--a-te)}.p-K,.bg-K{--pa:var(--a-k)}.p-DEF,.bg-DEF{--pa:var(--a-def)}
.p-FLEX{--pa:var(--a-flex)}.p-SFLX{--pa:var(--a-sflx)}.p-BN{--pa:var(--a-bn)}.p-IR{--pa:var(--a-ir)}
.pos,.slotbtn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;vertical-align:middle;font-family:"Barlow Condensed","Arial Narrow",Inter,sans-serif;font-weight:700;letter-spacing:.05em;text-transform:uppercase;line-height:1;color:#fff;background:var(--pos-bg);border:1px solid var(--pos-bd);border-left:3px solid var(--pa,var(--a-bn));white-space:nowrap;flex:none}
.pos{width:40px;height:20px;padding:0 0 0 1px;font-size:13px;border-radius:4px}
.slotbtn{width:52px;min-width:52px;height:32px;padding:0 0 0 2px;font-size:16px;border-radius:6px;border-left-width:4px}
/* combo slots: a double rule on the accent edge + slightly lifted fill, no gradients */
.pos.p-FLEX,.pos.p-SFLX{border-left:4px double var(--pa,var(--a-bn));background:#2a3456}.slotbtn.p-FLEX,.slotbtn.p-SFLX{border-left:6px double var(--pa,var(--a-bn));background:#2a3456}
/* bench / IR: neutral and greyed */
.pos.p-BN,.pos.p-IR,.slotbtn.p-BN,.slotbtn.p-IR{background:#1a2139;color:#b4bdd6}
.slotbtn:hover{filter:none;background:#2c3659}.slotbtn.p-BN:hover,.slotbtn.p-IR:hover{background:#222a45}
.slotbtn.sel{outline:3px solid var(--acc2);outline-offset:1px}.lu tr.tgt .slotbtn{border-color:var(--acc2)}
/* draft board cells: same system – neutral cell, accent edge */
.bc[class*=" bg-"]{background:var(--panel2);color:var(--txt);border-left:4px solid var(--pa);padding-left:6px}.bc[class*=" bg-"] div:last-child{color:#b4bdd6}

/* ── t37u–t39u: phone layout (centered, no horizontal overflow), trades, login-only ads ── */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
img,video{max-width:100%}
/* iOS Safari zooms (and pans off-center) when a focused field's text is under 16px – keep form text at 16px on phones */
@media(max-width:999px){input,select,textarea{font-size:16px}}
.topbar{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
.tabbar{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
.ad-sticky .ad{max-width:calc(100% - 44px)}
.tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;max-width:100%}
.layout>*,.stack>*,.dgrid>*,.grid2>*,.grid3>*{min-width:0}
.subtabs a{flex:none}
.dtabs-mobile .subtabs,.page>.subtabs,.stack>.subtabs{scroll-snap-type:x proximity;padding-right:28px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
.subtabs a{scroll-snap-align:start}
/* trade screen: two columns on wide screens, stacked on phones */
.trgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.trcol2{border-left:1px solid var(--line)}
@media(max-width:760px){.trgrid{grid-template-columns:minmax(0,1fr)}.trcol2{border-left:0;border-top:1px solid var(--line)}}
.trerr{flex-basis:100%;background:rgba(229,72,77,.12);border:1px solid rgba(229,72,77,.55);color:#ffc2c2;border-radius:10px;padding:8px 10px;font-size:13px;line-height:1.35;margin:0 0 10px}
/* phone tab bar: 7 tabs incl. Trades, with an offer badge */
.tabbar a{position:relative;min-width:0}.tabbar a span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tabbar.t7 a{font-size:10px;gap:2px}.tabbar.t7 a svg{width:21px;height:21px}
.tbadge{position:absolute;top:5px;left:calc(50% + 5px);background:var(--acc);color:#fff;font-size:10px;font-weight:800;border-radius:9px;padding:1px 5px;line-height:1.3;min-width:16px;text-align:center}
.tbadge.in{position:static;display:inline-block;margin-left:4px;font-size:10.5px}
/* draft list on narrow phones: keep the Draft button on screen */
@media(max-width:440px){.dlist td:nth-child(2){max-width:31vw}.dlist button.sm{padding:5px 8px;font-size:12.5px}.dlist .xs{font-size:10.5px}}
/* t47u trade tools */
.trhd{display:flex;justify-content:space-between;gap:8px;padding:8px 14px;background:var(--panel2);font-weight:800;font-size:12px;letter-spacing:.02em}
.trpos{display:flex;gap:6px;overflow-x:auto;padding:8px 14px 6px;scrollbar-width:none;border-bottom:1px solid var(--line)}.trpos::-webkit-scrollbar{display:none}
.trpos .chip{padding:4px 10px;font-size:12px;flex:none}
.trwho{margin-top:6px;overflow-wrap:anywhere}
.trctr{background:rgba(255,209,102,.08);border-bottom:1px solid var(--line)}
.fair{border-top:1px solid var(--line)}
.fbar{position:relative;height:6px;border-radius:3px;margin:8px 0 6px;background:linear-gradient(90deg,rgba(240,120,120,.55),rgba(255,209,102,.5) 40%,rgba(120,220,160,.6) 50%,rgba(255,209,102,.5) 60%,rgba(240,120,120,.55))}
.fbar i{position:absolute;top:-4px;width:4px;height:14px;margin-left:-2px;border-radius:2px;background:var(--txt);box-shadow:0 0 0 2px var(--bg)}
/* t47u phone truncation: names wrap to two lines instead of being cut off; tables keep numbers visible */
.stn{max-width:180px;overflow-wrap:anywhere;line-height:1.2}
@media(max-width:700px){
  .pl .nm{white-space:normal}
  .pl .nm .nmt,.stn,.mhead .side .n,.ci .tm,.sbm .t span,.lswitch .ln{white-space:normal;text-overflow:clip;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere;line-height:1.18}
  .pl .nm .nmt{min-width:0}
  .stn{max-width:none;min-width:84px}
  .lswitch .ln{font-size:13.5px;max-width:52vw}
  .lswitch .tn{max-width:52vw}
  .mhead .side .n{font-size:14px}
  .ci .tm{font-size:11.5px}
  .ptab td,.ptab th{padding-left:6px;padding-right:6px}
  .ptab td:nth-child(2){min-width:128px}
  .scroll-x>table td:first-child,.scroll-x>table th:first-child{padding-left:10px}
}
@media(max-width:700px){
  .dlist .pl{gap:7px}.dlist .pl .hs{width:30px!important;height:30px!important;flex:none}
  .dlist .pl .nm .nmt{-webkit-line-clamp:3;font-size:14px}
  .stn,.mhead .side .n{-webkit-line-clamp:2}
}
@media(max-width:440px){.dlist td:nth-child(2){max-width:36vw}}
@media(max-width:700px){.stn{min-width:122px}}
.ci .cpk{line-height:1.25;overflow-wrap:anywhere}.ci .cpk span{font-weight:700}
/* t47u: slim phone tab bar (4 + More) and the More sheet */
.tabbar.t5 a{font-size:11px}
.tabbar a[data-tab=more]{cursor:pointer}
.more-sh{padding:6px 14px 16px}
.more-grab{width:38px;height:4px;border-radius:2px;background:var(--line);margin:4px auto 8px}
.more-hd{display:flex;align-items:center;justify-content:space-between;margin:0 2px 10px}
.more-hd b{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--acc2)}
.more-hd button{background:none;border:1px solid var(--line);color:var(--mut);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700}
.more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.more-it{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:12px 12px 11px;color:var(--txt);font:inherit;cursor:pointer;min-width:0;transition:border-color .15s,background .15s}
.more-it svg{width:22px;height:22px;color:var(--mut);margin-bottom:4px}
.more-it .ml{font-weight:800;font-size:14px;max-width:100%;overflow-wrap:anywhere}
.more-it .ms{font-size:11.5px;color:var(--mut);max-width:100%;overflow-wrap:anywhere}
.more-it.on{border-color:rgba(255,209,102,.55);background:linear-gradient(180deg,rgba(255,209,102,.08),var(--panel2))}
.more-it.on svg{color:var(--acc2)}
.more-it:active{transform:scale(.98)}
.more-it .tbadge.in{position:absolute;top:10px;right:10px;margin:0}
@media(min-width:700px){.more-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* t47u league settings: luck column, warnings */
td.luck{font-variant-numeric:tabular-nums;color:var(--mut)}td.luck.up{color:var(--ok)}td.luck.dn{color:var(--bad)}
.warnline{color:var(--acc2);margin:6px 0 0}

/* t48u: W-L(-T) records always fully visible on phones (never split at the hyphen, never pushed off the table edge) */
.rec,.nowrap{white-space:nowrap}
.stw{min-width:0}
@media(max-width:700px){
  .stw{max-width:max(122px,calc(100vw - 236px))}
  .stown{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .rec{font-variant-numeric:tabular-nums}
}
/* t49u: team logos (gallery avatars + uploads) layered over the initials monogram; picker grid */
.tav{position:relative;overflow:hidden}
.tav .tlogo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:var(--panel2);display:block}
.tav.haslogo{box-shadow:0 0 0 1px rgba(255,255,255,.1)}
.avgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px}
.avopt{padding:0;border:2px solid transparent;background:none;border-radius:14px;aspect-ratio:1;display:grid;place-items:center;min-width:0;transition:transform .12s,border-color .12s}
.avopt img{width:100%;height:100%;border-radius:12px;display:block}
.avopt:hover{transform:translateY(-1px)}
.avopt.on{border-color:var(--acc2);box-shadow:0 0 0 3px rgba(255,209,102,.18)}
.avopt.avini{background:var(--panel2);border-color:var(--line);font-weight:900;color:var(--mut);font-size:15px}
.avopt.avini.on{border-color:var(--acc2);color:var(--txt)}
.et .etprev{display:flex;gap:12px;align-items:flex-end;margin-bottom:6px}
.upbtn{display:inline-flex;align-items:center;gap:6px;margin:0;cursor:pointer;border:1px solid var(--line);background:var(--panel2);padding:6px 12px;border-radius:9px;font-size:13px;font-weight:700;text-transform:none;letter-spacing:0;color:var(--txt)}
.upbtn:focus-within{outline:2px solid var(--acc2)}
.et button.on{border-color:var(--acc2);color:var(--acc2)}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
table tr.pcut td{border-bottom:2px dashed rgba(255,209,102,.45)}
@media(min-width:700px){.avgrid{grid-template-columns:repeat(8,1fr)}}

/* ---- login review fixes (t77u) ---- */
.auth-h{font-size:24px;margin:0 0 4px}.auth-sub{margin-top:0}.auth-sub b{color:var(--txt);font-weight:700}
.auth-inv{margin:0 0 12px;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,209,102,.45);background:rgba(255,209,102,.08);font-size:14px;line-height:1.45}
.auth-inv .ai-k{display:block;font-size:11px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:var(--acc2);margin-bottom:2px}
.auth-inv.bad-inv{border-color:var(--line);background:var(--panel)}
.auth-modes{margin:12px auto 0;max-width:360px;line-height:1.5}
.auth-home{margin:18px 0 0;font-size:14px}.auth-home a{display:inline-block;padding:10px 6px;color:var(--mut);font-weight:700}.auth-home a:hover{color:var(--txt)}
a.tap{display:inline-block;padding:10px 8px}
.auth .logo{width:auto}
