/* GameRanker Next — the approved October 2026 redesign, layered over app.css.
   Same Ice & Teal palette; Geist type, line icons, a bottom tab bar and the
   new Log, Night recap, Board, Duos, Profile and Rivalry components. */

:root{
  --app-font:"Geist",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --app-mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --surface:#ffffff; --surface2:#e8f3f3; --line:#dfebec; --line2:#c6dcde;
  --faint:#62777a; --primary:#087f8c; --onPrimary:#ffffff; --secondary:#2f7de1; --onSecondary:#ffffff;
  --a:#dff1f2; --aLine:#9fd0d3; --b:#e5eefc; --bLine:#b4caf0;
  --win:#16865a; --loss:#c83d36; --gold:#8f6a08; --goldSoft:rgba(182,133,15,.12);
  --live:#c8392f; --liveSoft:rgba(200,57,47,.10);
  --toast:#102f33; --onToast:#e7f4f5; --toastAction:#60d6cf;
  --tealSoft:rgba(8,127,140,.09); --blueSoft:rgba(47,125,225,.09);
  --s1:#087f8c; --s2:#2f7de1; --s3:#b6850f; --s4:#c83d36; --s5:#7a5bd1; --s6:#c2558f;
  --youRow:rgba(8,127,140,.06);
  --d1:#8f6a08; --d1Soft:rgba(182,133,15,.08); --d2:#2563c4; --d2Soft:rgba(47,125,225,.08);
  --d3:#16865a; --d3Soft:rgba(22,134,90,.07); --d4:#c83d36; --d4Soft:rgba(200,61,54,.07);
  --winSoft:rgba(22,134,90,.10); --lossSoft:rgba(200,61,54,.09);
  --area:rgba(8,127,140,.10); --aSoft:rgba(8,127,140,.11); --bSoft:rgba(47,125,225,.11);
  --tie:#d5e3e4; --av1:#cfeced; --av2:#d9e6fb; --heroBg:#ffffff;
  --hotBg:rgba(22,134,90,.12); --coldBg:rgba(200,61,54,.12);
  --sheet-shadow:0 -18px 40px -22px rgba(8,40,44,.35);
  --pop-shadow:0 18px 40px -18px rgba(8,40,44,.35);
  --nav-h:64px;
}
[data-theme="dark"]{
  --surface:#102629; --surface2:#143235; --line:#1d3a3d; --line2:#2d4c51;
  --faint:#7f9b9e; --primary:#60d6cf; --onPrimary:#062124; --secondary:#76a9ff; --onSecondary:#0a1c33;
  --a:#11302f; --aLine:#24585a; --b:#14243d; --bLine:#2d4a74;
  --win:#6bd5a7; --loss:#ff8b82; --gold:#efc65d; --goldSoft:rgba(239,198,93,.13);
  --live:#ff7a6b; --liveSoft:rgba(255,122,107,.14);
  --toast:#e7f4f5; --onToast:#0b2427; --toastAction:#087f8c;
  --tealSoft:rgba(96,214,207,.12); --blueSoft:rgba(118,169,255,.13);
  --s1:#60d6cf; --s2:#76a9ff; --s3:#efc65d; --s4:#ff8b82; --s5:#b49cff; --s6:#ff9ccf;
  --youRow:rgba(96,214,207,.08);
  --d1:#efc65d; --d1Soft:rgba(239,198,93,.10); --d2:#76a9ff; --d2Soft:rgba(118,169,255,.10);
  --d3:#6bd5a7; --d3Soft:rgba(107,213,167,.08); --d4:#ff8b82; --d4Soft:rgba(255,139,130,.08);
  --winSoft:rgba(107,213,167,.14); --lossSoft:rgba(255,139,130,.14);
  --area:rgba(96,214,207,.16); --aSoft:rgba(96,214,207,.16); --bSoft:rgba(118,169,255,.17);
  --tie:#2b494d; --av1:#1c4a4b; --av2:#1e3556; --heroBg:#0f2a2d;
  --hotBg:rgba(107,213,167,.14); --coldBg:rgba(255,139,130,.14);
  --sheet-shadow:0 -18px 40px -20px rgba(0,0,0,.6);
  --pop-shadow:0 18px 40px -16px rgba(0,0,0,.6);
}

/* ── base ─────────────────────────────────────────────────────────────── */
body{font-family:var(--app-font);font-size:15px;line-height:1.4}
button,input,select,textarea{font-family:inherit}
.mono,.num{font-family:var(--app-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.mono{font-size:.94em}
.grow{flex:1}
.up{color:var(--win)} .down{color:var(--loss)} .flat{color:var(--faint)} .gold{color:var(--gold)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.ic.sm{width:16px;height:16px;stroke-width:2}
.ic.xs{width:14px;height:14px;stroke-width:2}
.cap{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--faint)}
h2,h3{letter-spacing:-.02em}
.wrap{padding:14px 16px}
.btn{border-radius:12px;font-weight:700;letter-spacing:-.005em}
.btn.secondary{background:var(--surface2);color:var(--text)}
input,select{border-radius:12px;border-color:var(--line2)}
.card,.league-surface{border-color:var(--line);box-shadow:none}
.league-surface{border-radius:18px}
.screen-heading h3{font-size:24px;font-weight:800;letter-spacing:-.035em}
.surface-state{border-style:solid;border-color:var(--line);background:var(--surface);border-radius:16px}
.field-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--faint)}
.you-tag{padding:0;border-radius:0;background:none;color:var(--primary);font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.icon-btn{width:38px;height:38px;border-radius:12px;border:0;background:none;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}
.icon-btn:hover{background:var(--surface2);color:var(--text)}
.ghost{height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--line2);background:none;color:var(--text);
  font-size:12.5px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;text-decoration:none}
.ghost:hover{border-color:var(--primary)}
.ghost:disabled{opacity:.4;cursor:default}
.linkbtn{border:0;background:none;padding:2px 0;color:var(--primary);font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:3px;text-decoration:none}
.gcard{background:var(--surface);border:1px solid var(--line);border-radius:18px}
#toast{bottom:calc(var(--nav-h) + 22px + env(safe-area-inset-bottom,0px));border-radius:14px;background:var(--toast);color:var(--onToast);font-weight:600}

/* ── header ───────────────────────────────────────────────────────────── */
.app-head{background:color-mix(in srgb,var(--bg) 88%,transparent);border-bottom:1px solid var(--line)}
.app-head .toprow{height:56px;padding:0 10px 0 16px;gap:6px}
.app-head .brand{display:flex;align-items:center;gap:10px;min-width:0;color:var(--text);text-decoration:none}
.brand-logo{width:28px;height:28px;flex-shrink:0;border-radius:8px}
.app-head .brand-main{font-size:16.5px;font-weight:700;letter-spacing:-.02em;color:var(--text)}
.app-head .theme-toggle{width:38px;height:38px;border:0;border-radius:12px;background:none;color:var(--muted);font-size:0}
.app-head .theme-toggle:hover{background:var(--surface2);color:var(--text)}
.account{position:relative;display:flex}
.avatar{width:34px;height:34px;border-radius:50%;border:0;background:var(--surface2);color:var(--primary);
  font-size:12px;font-weight:700;letter-spacing:.02em;cursor:pointer;flex-shrink:0}
.avatar[aria-expanded="true"]{box-shadow:0 0 0 2px var(--primary)}
.account-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:210px;padding:6px;display:flex;flex-direction:column;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--pop-shadow);z-index:70}
.account-handle{padding:8px 10px 6px;font-size:12.5px;font-weight:600;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-item{display:flex;align-items:center;gap:10px;height:42px;padding:0 10px;border:0;border-radius:10px;background:none;
  color:var(--text);font-size:14px;font-weight:600;cursor:pointer;text-align:left}
.account-item:hover{background:var(--surface2)}
.account-item .ic{color:var(--muted)}

/* ── league shell, bottom tab bar, More sheet ─────────────────────────── */
#screen-league{padding-bottom:calc(var(--nav-h) + 26px + env(safe-area-inset-bottom,0px))}
.league-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 2px 12px}
.league-head h2{margin:1px 0 0;font-size:21px;font-weight:800;letter-spacing:-.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.league-title{min-width:0}
.role-pill{margin:0;border:0;background:var(--surface2);color:var(--muted);font-weight:700;text-transform:capitalize}
.watch-banner{border-color:var(--line);background:var(--tealSoft);color:var(--primary)}

.primary-tabs{position:fixed;left:0;right:0;bottom:0;z-index:45;display:flex;gap:0;margin:0 auto;max-width:720px;
  height:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));padding:0 6px env(safe-area-inset-bottom,0px);
  border:0;border-top:1px solid var(--line);border-radius:0;background:color-mix(in srgb,var(--surface) 94%,transparent);
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overflow:visible}
@media (min-width:721px){.primary-tabs{border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0}}
.primary-tabs .tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;min-width:0;
  padding:7px 0 0;border-radius:0;background:none;box-shadow:none;color:var(--muted);font-size:11px;font-weight:600}
.primary-tabs .tab b{font-size:11px;font-weight:600;line-height:1.1}
.primary-tabs .tab:hover{background:none;color:var(--text)}
.primary-tabs .tab.active{background:none;box-shadow:none;color:var(--primary)}
.primary-tabs .tab.active b{font-weight:800}
.tab-pill{width:54px;height:30px;border-radius:999px;display:flex;align-items:center;justify-content:center;transition:background .15s ease}
.primary-tabs .tab.active .tab-pill{background:var(--tealSoft)}
.primary-tabs .tab.active::after{display:none}

.more-backdrop{position:fixed;inset:0;z-index:46;background:rgba(4,16,18,.45)}
.more-drawer{position:fixed;left:0;right:0;bottom:0;z-index:47;display:block;margin:0 auto;max-width:720px;
  padding:10px 14px calc(16px + env(safe-area-inset-bottom,0px));background:var(--surface);
  border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0;box-shadow:var(--sheet-shadow)}
.more-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:2px 0 8px 4px}
.more-sheet-head strong{font-size:16px;font-weight:700}
.more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.more-drawer .tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  min-height:74px;padding:10px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);
  color:var(--text);font-size:12.5px;text-align:center}
.more-drawer .tab b{font-size:12.5px;font-weight:600}
.more-drawer .tab .ic{color:var(--primary)}
.more-drawer .tab .tab-pill{width:auto;height:auto;background:none}
.more-drawer .tab:hover{border-color:var(--primary);background:var(--surface2)}
.more-drawer .tab.active{border-color:var(--primary);background:var(--tealSoft);color:var(--primary)}
.more-drawer .tab .tab-count{position:absolute;top:6px;right:8px}

/* Redesigned screens are open layouts of cards, not one big card. */
#lg-board,#lg-log,#lg-nights,#lg-fans,#lg-profile,#lg-h2h{background:none;border:0;box-shadow:none;padding:0;margin:0}

/* ── shared controls ──────────────────────────────────────────────────── */
.scope-switch{padding:3px;border:0;border-radius:12px;background:var(--surface2)}
.scope-switch button{height:30px;padding:0 12px;border-radius:9px;color:var(--muted);font-size:13px;font-weight:600}
.scope-switch button.on,.scope-switch button[aria-pressed="true"]{background:var(--surface);color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.season-scope-select{height:34px;border-radius:999px;border-color:var(--line2);background-color:var(--surface);font-size:13px;font-weight:600}
.seg2{display:flex;padding:3px;border-radius:12px;background:var(--surface2)}
.seg2 button{height:30px;padding:0 12px;border:0;border-radius:9px;background:none;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer}
.seg2 button[aria-pressed="true"]{background:var(--surface);color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.fchips{display:flex;flex-wrap:wrap;gap:6px}
.fchip{height:34px;padding:0 13px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);color:var(--text);
  font-size:13.5px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.fchip[aria-pressed="true"]{background:var(--text);border-color:var(--text);color:var(--bg)}
.vsep{width:1px;height:20px;background:var(--line2);flex-shrink:0}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}
.sec-head h4{margin:0;font-size:15px;font-weight:700}
.sec-head > span{font-size:12px;color:var(--muted)}
.sec{padding:12px 14px 14px}

/* ── Log ──────────────────────────────────────────────────────────────── */
#log-entry{display:flex;flex-direction:column;gap:10px}
.ls-head{display:flex;align-items:center;gap:8px}
.ls-head h3{margin:0;font-size:20px;font-weight:700;letter-spacing:-.02em}
.datepill{padding:0 12px;border-color:var(--line2);background:none;color:var(--text);font-size:12.5px}
.mode-tabs{display:flex;border-bottom:1px solid var(--line)}
.mode-tab{flex:1;height:40px;border:0;background:none;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;position:relative}
.mode-tab[aria-pressed="true"]{color:var(--text)}
.mode-tab[aria-pressed="true"]::after{content:"";position:absolute;left:30%;right:30%;bottom:-1px;height:2px;border-radius:2px;background:var(--primary)}
#log-teams{display:flex;flex-direction:column;gap:10px}
#lg-log .teamBox{margin:0;padding:10px 11px 11px;border-radius:16px}
#lg-log .teamBox.A,#lg-log .teamBox.A.winner{background:var(--a);border-color:var(--aLine)!important;box-shadow:none}
#lg-log .teamBox.B,#lg-log .teamBox.B.winner{background:var(--b);border-color:var(--bLine)!important;box-shadow:none}
#lg-log .teamLabel{margin-bottom:8px;font-size:12.5px;font-weight:700}
#lg-log .teamBox.A .teamLabel > span{color:var(--primary)}
#lg-log .teamBox.B .teamLabel > span{color:var(--secondary)}
#lg-log .teamLabel small{font-size:11.5px;font-weight:400;color:var(--muted)}
.player-choices{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.player-choices .chip{height:38px;min-height:38px;padding:0 13px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);
  color:var(--text);font-size:14px;font-weight:600;display:inline-flex;align-items:center;white-space:nowrap;
  transition:background .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}
.player-choices .chip.on-a{background:var(--primary);border-color:var(--primary);color:var(--onPrimary)}
.player-choices .chip.on-b{background:var(--secondary);border-color:var(--secondary);color:var(--onSecondary)}
.player-choices .chip.winner{box-shadow:0 0 0 2px var(--gold)}
.player-choices .chip:disabled{opacity:.32;cursor:default}
.odds{display:flex;flex-direction:column;gap:6px;padding:2px 2px 0}
.odds-cap{display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--faint)}
.odds-row{display:flex;align-items:center;gap:10px}
.odds-row .pa,.odds-row .pb{width:46px;font-size:20px;font-weight:700}
.odds-row .pa{color:var(--primary)}
.odds-row .pb{color:var(--secondary);text-align:right}
.bar{flex:1;display:flex;gap:3px;height:8px}
.bar i{display:block;height:8px;border-radius:4px}
.bar .ba{background:var(--primary);width:50%;transition:width .25s ease}
.bar .bb{background:var(--secondary);flex:1}
.odds.idle .ba,.odds.idle .bb{background:var(--line2)}
.stakes{display:flex;justify-content:space-between;gap:10px;min-height:16px;font-size:11.5px;color:var(--muted)}
.segs{display:flex;gap:8px}
.segs > .seg{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;height:44px;margin:0;padding:0 6px;
  border:1px solid var(--line2);border-radius:12px;overflow:visible;background:var(--surface);color:var(--muted);
  font-size:14px;font-weight:600;cursor:pointer}
.segs > .seg .ic{display:none;width:15px;height:15px;stroke-width:2.4}
.segs > .seg[data-w="A"][aria-pressed="true"]{background:var(--a);border-color:var(--aLine);color:var(--primary)}
.segs > .seg[data-w="B"][aria-pressed="true"]{background:var(--b);border-color:var(--bLine);color:var(--secondary)}
.segs > .seg[data-w="D"][aria-pressed="true"]{background:var(--surface2);border-color:var(--line2);color:var(--text)}
.segs > .seg[aria-pressed="true"] .ic{display:block}
#lg-log .log-status{margin:-2px 2px 0;padding:0;background:none;font-size:12px;color:var(--muted)}
#lg-log .log-status.ready{background:none;color:var(--muted);font-weight:500}
.add-btn{width:100%;height:52px;margin:0;border:0;border-radius:14px;background:var(--primary);color:var(--onPrimary);
  font-size:16px;font-weight:700;letter-spacing:-.01em;cursor:pointer}
.add-btn:disabled{opacity:.38;cursor:default}
.undo-toast{display:flex;align-items:center;gap:10px;padding:11px 12px 11px 14px;border-radius:14px;background:var(--toast);color:var(--onToast)}
.undo-toast span{flex:1;min-width:0;font-size:13px;font-weight:600}
.undo-toast button{border:0;background:none;color:var(--toastAction);font-size:13.5px;font-weight:700;cursor:pointer;padding:4px 6px}
.undo-toast button:disabled{opacity:.5}

.rs-head{display:flex;align-items:baseline;justify-content:space-between;margin:22px 2px 8px;padding:0;border:0}
.rs-head h4{margin:0;font-size:15px;font-weight:700}
.rs-head span{font-size:12px;color:var(--muted)}
.sets{display:flex;flex-direction:column;gap:8px}
.set{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:8px 8px 11px 12px}
.set.saving{opacity:.6;animation:lgc-pulse 1.1s ease-in-out infinite}
.set.awaiting{border-style:dashed}
.set-top{display:flex;align-items:center;gap:6px;min-height:30px;margin-bottom:2px}
.set-id{min-width:0;font-size:11.5px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.set-tag{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.set-tag.pending{background:var(--surface2);color:var(--muted)}
/* Only the Night recap's set list keeps an Upset tag; its cards have no action buttons. */
.night-sets .set-tag.upset{background:var(--goldSoft);color:var(--gold)}
.mini{width:30px;height:30px;border-radius:9px;border:0;background:none;color:var(--faint);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}
.mini .ic{width:16px;height:16px;stroke-width:1.9}
.mini:hover{background:var(--surface2);color:var(--text)}
.mini.del:hover{background:var(--lossSoft);color:var(--loss)}
.set-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-right:4px}
.set-row + .set-row{margin-top:3px}
.set-row .w{min-width:0;font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.set-row .l{min-width:0;font-size:14px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.set-row .num{font-size:14px;font-weight:600;flex-shrink:0}
.set-actions{display:flex;gap:6px;margin-top:9px}
.set-actions button{flex:1;height:36px;border-radius:10px;border:1px solid var(--line2);background:var(--surface);color:var(--text);font-size:13px;font-weight:700;cursor:pointer}
.set-actions .confirm{background:var(--primary);border-color:var(--primary);color:var(--onPrimary)}
.set-actions .reject{color:var(--loss)}
.set-actions button:disabled{opacity:.5}
.set-note{margin-top:8px;font-size:12px;color:var(--muted)}

/* Tonight (automatic game night, 05:00 Riyadh cutoff) */
.tonight{display:flex;flex-direction:column;gap:11px;margin-bottom:16px;padding:13px 13px 12px;background:var(--surface);border:1px solid var(--line);border-radius:18px}
.tn-top{display:flex;align-items:center;gap:10px}
.live-pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:999px;background:var(--liveSoft);color:var(--live);font-size:11px;font-weight:700;letter-spacing:.08em}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--live);animation:grpulse 1.6s ease-in-out infinite}
@keyframes grpulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
@media (prefers-reduced-motion:reduce){.live-dot,.set.saving{animation:none}}
.tn-title{flex:1;min-width:0;margin:0;font-size:17px;font-weight:700;letter-spacing:-.015em}
.tn-meta{margin-top:-4px;font-size:12.5px;color:var(--muted)}
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.tile{min-width:0;padding:9px 9px 8px;border-radius:12px;background:var(--surface2)}
.tile.you{box-shadow:inset 0 0 0 1.5px var(--primary)}
.tile-n{display:flex;align-items:center;gap:3px;min-width:0;font-size:12.5px;font-weight:600}
.tile-n span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tile-n .ic{width:12px;height:12px;stroke-width:2.2;color:var(--gold)}
.tile-d{margin-top:4px;font-size:17px;font-weight:700;white-space:nowrap}
.tile-wl{margin-top:1px;font-size:11.5px;color:var(--muted)}
.tn-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}
.tonight.past{flex-direction:row;align-items:center;gap:12px;padding:11px 12px;text-decoration:none;color:var(--text);cursor:pointer;text-align:left;font:inherit;width:100%}
.tonight.past:hover{border-color:var(--primary)}
.tn-ico{width:36px;height:36px;border-radius:11px;background:var(--tealSoft);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tn-ico .ic{width:18px;height:18px;stroke-width:2}
.tn-txt{flex:1;min-width:0}
.tn-txt b{display:block;font-size:14px;font-weight:700}
.tn-txt small{display:block;margin-top:1px;font-size:12px;line-height:1.35;color:var(--muted)}
.tonight.past > .ic{color:var(--faint)}

/* ── Board ────────────────────────────────────────────────────────────── */
.board-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 12px}
.board-head h3{margin:0;font-size:26px;font-weight:800;letter-spacing:-.035em}
.board-head p{margin:2px 0 0}
.board-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.board-filters .scope-switch.season-scope-menu{display:block}
.board-filters .season-scope-field>span{display:none}
.board-table{border-color:var(--line);border-radius:18px;background:var(--surface)}
.band{display:flex;align-items:center;justify-content:space-between;gap:8px;height:30px;padding:0 12px;font-size:11.5px;font-weight:700;letter-spacing:.02em}
.band .num{font-weight:500;opacity:.9}
.band.d1{color:var(--d1);background:var(--d1Soft)}
.band.d2{color:var(--d2);background:var(--d2Soft)}
.band.d3{color:var(--d3);background:var(--d3Soft)}
.band.d4{color:var(--d4);background:var(--d4Soft)}
.band.season{color:var(--primary);background:var(--tealSoft)}
.band.pl,.band.ur{color:var(--muted);background:var(--surface2)}
.band.pl span:last-child,.band.ur span:last-child{font-weight:500}
.prow{display:grid;grid-template-columns:28px minmax(0,1fr) 50px 66px;column-gap:8px;align-items:center;padding:9px 10px;border-top:1px solid var(--line)}
.band + .prow,.band + .place{border-top:0}
.prow.you{background:var(--youRow)}
.prow.inactive{grid-template-columns:28px minmax(0,1fr) 66px}
.rk{display:flex;flex-direction:column;align-items:center;gap:1px}
.rk-n{font-size:15px;font-weight:600}
.rk-m{font-size:10px;font-weight:700}
.who{min-width:0}
.who-top{display:flex;align-items:center;gap:5px;min-width:0}
.who-top .nm{min-width:2.5em;font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bdg{min-width:0;overflow:hidden;font-size:12.5px;letter-spacing:1px;white-space:nowrap;text-overflow:clip}
.streak{display:inline-flex;align-items:center;flex-shrink:0;height:17px;padding:0 5px;border-radius:5px;font-size:10px;font-weight:700;letter-spacing:.03em}
.streak.hot{background:var(--hotBg);color:var(--win)}
.streak.cold{background:var(--coldBg);color:var(--loss)}
.who-sub{margin-top:2px;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.roster-chip{font-size:10px}
.spark{display:block;width:50px;height:22px}
.spark path{fill:none;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.spark .u{stroke:var(--primary)} .spark .n{stroke:var(--faint)}
.elo{text-align:right;min-width:0}
.elo-v{font-size:16px;font-weight:700}
.elo-w{margin-top:1px;font-size:11px;white-space:nowrap}
.place{display:flex;align-items:center;gap:12px;padding:11px 12px;border-top:1px solid var(--line)}
.place.you{background:var(--youRow)}
.place-name{font-size:15px;font-weight:600}
.pdots{display:flex;gap:3px;margin-top:6px}
.pdots i{display:block;width:18px;max-width:8%;height:5px;border-radius:3px;background:var(--line2)}
.pdots i.on{background:var(--primary)}
.place-v{text-align:right}
.place-v .num{font-size:13px;font-weight:600}
.place-v small{display:block;font-size:11px;color:var(--muted)}
.board-roster-row{display:flex;justify-content:center;margin:12px 0 0}
.board-roster-row .linkbtn{padding:6px 10px}

/* Duos */
.board-duos{display:flex;flex-direction:column;gap:12px}
.duo-note{font-size:12px;color:var(--muted);margin-left:4px}
.hero-duo{display:flex;flex-direction:column;gap:12px;padding:14px;background:var(--heroBg);border:1px solid var(--line);border-radius:18px}
.hd-top{display:flex;align-items:center;gap:12px}
.avs{display:flex;flex-shrink:0}
.av{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;border:2px solid var(--heroBg)}
.av.a1{background:var(--av1);color:var(--primary)}
.av.a2{background:var(--av2);color:var(--secondary);margin-left:-12px}
.hd-name{margin-top:2px;font-size:18px;font-weight:700;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hd-score{text-align:right}
.hd-score .num{display:block;font-size:26px;font-weight:700;letter-spacing:-.03em;color:var(--primary)}
.hd-score small{font-size:11px;color:var(--muted)}
.minis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mini-s{min-width:0;padding:8px 10px;border-radius:12px;background:var(--surface2)}
.mini-s .num{display:block;font-size:15px;font-weight:700;white-space:nowrap}
.mini-s small{font-size:11.5px;color:var(--muted)}
.dtable{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:18px}
.drow{display:grid;grid-template-columns:22px minmax(0,1fr) 58px 62px;column-gap:8px;align-items:center;padding:9px 12px;border-top:1px solid var(--line)}
.drow.th{border-top:0;padding-block:10px 8px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.drow.you{background:var(--youRow)}
.drow .ix{font-size:13px;color:var(--faint)}
.dn{display:flex;align-items:center;gap:5px;min-width:0}
.dn span:first-child{font-size:14.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dsub{margin-top:2px;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.r{text-align:right}
.dwl .a1{display:block;font-size:13.5px;font-weight:600}
.dwl .a2{display:block;font-size:11px;color:var(--muted)}
.dchem{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.dchem .num{font-size:14px;font-weight:700}
.cbar{width:52px;height:4px;border-radius:2px;background:var(--line2);overflow:hidden}
.cbar i{display:block;height:100%;border-radius:2px;background:var(--primary)}
.fine{margin:0;padding:0 4px;font-size:12px;line-height:1.45;color:var(--muted)}

/* ── Night recap ──────────────────────────────────────────────────────── */
.nights-shell{display:flex;flex-direction:column;gap:14px}
#nights-root{display:flex;flex-direction:column;gap:14px}
.rc-nav{display:flex;align-items:center;gap:4px;margin:-4px -6px 0}
.rc-nav .sub-title{flex:1;min-width:0;font-size:16px;font-weight:700;letter-spacing:-.01em}
.rc-nav .icon-btn{color:var(--text)}
.rc-nav .icon-btn:disabled{opacity:.3;cursor:default}
.rc-hero{display:flex;flex-direction:column;gap:6px;padding:2px 2px 0}
.rc-title{margin:2px 0 0;font-size:30px;line-height:1.08;font-weight:800;letter-spacing:-.035em}
.rc-lede{margin:4px 0 0;font-size:14px;line-height:1.45;color:var(--muted)}
.stats3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.stat{min-width:0;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:14px}
.stat-v{font-size:20px;font-weight:700;white-space:nowrap}
.stat-l{margin-top:1px;font-size:12px;color:var(--muted)}
.chart-card{padding:14px 16px 12px}
.cc-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.cc-head h4{margin:0;font-size:15px;font-weight:700}
.cc-head span{font-size:12px;color:var(--muted)}
.legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:10px 0 8px;font-size:12px;font-weight:600}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{display:block;width:10px;height:3px;border-radius:2px}
.k1{background:var(--s1)} .k2{background:var(--s2)} .k3{background:var(--s3)} .k4{background:var(--s4)} .k5{background:var(--s5)} .k6{background:var(--s6)} .k0{background:var(--line2)}
.awards{padding:2px 0}
.award{display:flex;align-items:center;gap:12px;padding:12px 14px}
.award + .award{border-top:1px solid var(--line)}
.ico{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ico .ic{width:18px;height:18px;stroke-width:2}
.ico.g{background:var(--goldSoft);color:var(--gold)}
.ico.t{background:var(--tealSoft);color:var(--primary)}
.ico.bl{background:var(--blueSoft);color:var(--secondary)}
.aw-body{flex:1;min-width:0}
.aw-cap{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.aw-name{margin-top:2px;font-size:15px;font-weight:600;line-height:1.3}
.aw-val{text-align:right;flex-shrink:0}
.aw-val .big1{font-size:15px;font-weight:700}
.aw-val .small1{font-size:12px;color:var(--muted)}
.rtable{overflow:hidden;padding-top:12px}
.rt-head{display:flex;align-items:baseline;justify-content:space-between;padding:0 14px 10px}
.rt-head h4{margin:0;font-size:15px;font-weight:700}
.trow{display:grid;grid-template-columns:22px minmax(0,1fr) 52px 62px 70px;align-items:center;gap:6px;height:46px;padding:0 14px;border-top:1px solid var(--line);font-size:13px}
.trow.th{height:30px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.trow .r{text-align:right}
.trow .nm{min-width:0;font-size:14.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.trow .ix{font-size:12px;color:var(--faint)}
.trow.you{background:var(--youRow)}
.btn-row{display:flex;gap:8px}
.bigbtn{height:50px;border-radius:14px;font-size:15px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.bigbtn.primary{flex:1.4;border:0;background:var(--primary);color:var(--onPrimary)}
.bigbtn.outline{flex:1;border:1px solid var(--line2);background:none;color:var(--text)}
.bigbtn .ic{width:18px;height:18px}
.night-sets{display:flex;flex-direction:column;gap:8px}
.nights-list{overflow:hidden}
.nl-row{display:flex;align-items:center;gap:12px;width:100%;padding:11px 14px;border:0;border-top:1px solid var(--line);background:none;color:var(--text);text-align:left;cursor:pointer;font:inherit}
.nl-row:first-of-type{border-top:0}
.nl-row:hover{background:var(--surface2)}
.nl-date{width:46px;flex-shrink:0;text-align:center}
.nl-date b{display:block;font-size:18px;font-weight:700;line-height:1}
.nl-date small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.nl-body{flex:1;min-width:0}
.nl-body b{display:block;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nl-body small{font-size:12px;color:var(--muted)}
.nl-row > .ic{color:var(--faint)}

/* ── charts ───────────────────────────────────────────────────────────── */
.chart{display:block;width:100%;height:auto;overflow:visible}
.chart text{font-family:var(--app-mono);font-size:11px;font-weight:600}
.chart text.sans{font-family:var(--app-font)}
.chart text.ax{font-size:10.5px;font-weight:500;fill:var(--faint)}
.chart .ln{fill:none;stroke-linejoin:round;stroke-linecap:round}
.f1{fill:var(--s1)} .f2{fill:var(--s2)} .f3{fill:var(--s3)} .f4{fill:var(--s4)} .f5{fill:var(--s5)} .f6{fill:var(--s6)} .f0{fill:var(--faint)}
.fg{fill:var(--gold)} .fp{fill:var(--primary)} .fs{fill:var(--secondary)} .fl{fill:var(--loss)}
.fsurf{fill:var(--surface)} .farea{fill:var(--area)}
.fza{fill:var(--aSoft);opacity:.5} .fzb{fill:var(--bSoft);opacity:.5}
.s1{stroke:var(--s1)} .s2{stroke:var(--s2)} .s3{stroke:var(--s3)} .s4{stroke:var(--s4)} .s5{stroke:var(--s5)} .s6{stroke:var(--s6)} .s0{stroke:var(--line2)}
.sg{stroke:var(--gold)} .sl{stroke:var(--line2)} .sp{stroke:var(--primary)} .ss{stroke:var(--secondary)} .sloss{stroke:var(--loss)} .stext{stroke:var(--text)}

/* ── Profile ──────────────────────────────────────────────────────────── */
#lg-profile{display:flex;flex-direction:column;gap:12px}
.profile-toolbar{align-items:center;margin:0}
.profile-player-field{min-width:0;flex:1}
.profile-player-field .field-label{display:none}
.profile-player-field select{height:38px;padding:0 34px 0 14px;border-radius:999px;font-weight:600}
.profile-scope-row{margin:0;justify-content:space-between;flex-wrap:wrap}
.profile-scope-note{font-size:12px;color:var(--muted)}
#profile-content{display:flex;flex-direction:column;gap:12px}
.pcard{display:flex;flex-direction:column;gap:14px;padding:16px}
.pc-top{display:flex;align-items:center;gap:12px}
.ring{width:52px;height:52px;padding:2px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));flex-shrink:0}
.ring > span{width:100%;height:100%;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:800;color:var(--primary)}
.pc-id{flex:1;min-width:0}
.pc-name{display:flex;align-items:center;gap:6px;min-width:0}
.pc-name h4{margin:0;min-width:0;font-size:23px;font-weight:800;letter-spacing:-.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:4px;font-size:12.5px;color:var(--muted)}
.divpill{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;font-size:11.5px;font-weight:700;background:var(--surface2);color:var(--muted)}
.divpill.d1{background:var(--d1Soft);color:var(--d1)} .divpill.d2{background:var(--d2Soft);color:var(--d2)}
.divpill.d3{background:var(--d3Soft);color:var(--d3)} .divpill.d4{background:var(--d4Soft);color:var(--d4)}
.pc-rank{text-align:right;flex-shrink:0}
.pc-rank .num:first-child{display:block;font-size:26px;font-weight:700;letter-spacing:-.03em}
.pc-rank .num + .num{font-size:11px;font-weight:600}
.pc-elo{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.big{font-size:44px;line-height:1;font-weight:700;letter-spacing:-.05em}
.elo-l{margin-left:8px;font-size:13px;font-weight:600;color:var(--muted)}
.peak{margin-top:6px;font-size:12.5px;color:var(--muted)}
.peak .num{color:var(--text)}
.badge-pill{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border-radius:999px;background:var(--goldSoft);color:var(--gold);font-size:12.5px;font-weight:700;white-space:nowrap}
.pc-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;background:var(--surface2);font-size:12.5px;color:var(--muted)}
.profile-tabs{display:flex;gap:0;padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none}
.profile-tab{flex:1;height:40px;border:0;border-radius:0;background:none;color:var(--muted);font-size:13.5px;font-weight:600;position:relative;cursor:pointer}
.profile-tab.on{background:none;box-shadow:none;color:var(--text)}
.profile-tab.on::after{content:"";position:absolute;left:22%;right:22%;bottom:-1px;height:2px;border-radius:2px;background:var(--primary)}
.rtabs{display:flex;gap:2px}
.rtab{height:26px;padding:0 9px;border:0;border-radius:8px;background:none;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer}
.rtab[aria-pressed="true"]{background:var(--surface2);color:var(--text)}
.form10{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px}
.fb{height:40px;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0}
.fb b{font-size:12px;font-weight:800}
.fb .num{font-size:9.5px;white-space:nowrap}
.fb.w{background:var(--winSoft);color:var(--win)}
.fb.l{background:var(--lossSoft);color:var(--loss)}
.fb.d{background:var(--surface2);color:var(--muted)}
.fb.last{box-shadow:inset 0 0 0 1.5px currentColor}
.roadbar{position:relative;height:10px;border-radius:5px;background:var(--surface2)}
.roadbar i{position:absolute;left:0;top:0;bottom:0;border-radius:5px;background:var(--d2)}
.roadbar b{position:absolute;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--d2);border:3px solid var(--surface)}
.road-ax{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:11px;color:var(--muted)}
.sigs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sig{display:block;min-width:0;padding:12px 13px;background:var(--surface);border:1px solid var(--line);border-radius:16px;color:var(--text);text-decoration:none;text-align:left;font:inherit}
button.sig{cursor:pointer}
button.sig:hover{border-color:var(--primary)}
.sig-n{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:4px;font-size:15px;font-weight:700}
.sig-n span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sig-n .ic{color:var(--faint)}
.sig-s{margin-top:1px;font-size:12px;color:var(--muted)}
.cap.loss{color:var(--loss)}
.chase-card{padding:12px 14px 4px}
.chase-card > h4{margin:0 0 4px;font-size:15px;font-weight:700}
.chase{display:grid;grid-template-columns:28px minmax(0,1fr) auto;column-gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.chase .em{font-size:18px;text-align:center}
.chase-t{font-size:13.5px;font-weight:600}
.chase-sub{margin-top:3px;font-size:11.5px;color:var(--muted)}
.pbar{width:100%;max-width:150px;height:5px;margin-top:6px;border-radius:3px;background:var(--surface2);overflow:hidden}
.pbar i{display:block;height:100%;border-radius:3px;background:var(--primary)}
.chase-v{text-align:right}
.chase-v .num{font-size:13.5px;font-weight:700;white-space:nowrap}
.chase-v .num span{color:var(--faint);font-weight:500}
.chase-v small{display:block;font-size:11px;color:var(--muted)}
.yours{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;background:var(--goldSoft);color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.04em}
.profile-more-insights{border-color:var(--line);border-radius:16px;background:var(--surface)}

/* ── Rivalry ──────────────────────────────────────────────────────────── */
#lg-h2h{display:flex;flex-direction:column;gap:12px}
#lg-h2h .analytics-scope-row,#lg-h2h .analytics-heading{margin:0}
#lg-h2h .h2h-selectors{margin:0}
.h2h-swap{display:inline-flex;align-items:center;justify-content:center;border-color:var(--line2);background:var(--surface);color:var(--text)}
#h2h-out{display:flex;flex-direction:column;gap:12px}
.vs-card{display:flex;flex-direction:column;gap:14px;padding:16px 16px 14px}
.vs-row{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:center}
.vp{display:flex;align-items:center;gap:10px;min-width:0}
.vp.rt{justify-content:flex-end;text-align:right}
.vring{width:44px;height:44px;padding:2px;border-radius:50%;flex-shrink:0}
.vring.c{background:var(--primary)} .vring.r{background:var(--secondary)}
.vring > span{width:100%;height:100%;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800}
.vring.c > span{color:var(--primary)} .vring.r > span{color:var(--secondary)}
.vp-n{font-size:16px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vp-s{font-size:11.5px;color:var(--muted)}
.vs-x{text-align:center;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--faint)}
.score{display:flex;align-items:baseline;justify-content:center;gap:14px}
.score .num{font-size:44px;line-height:1;font-weight:700;letter-spacing:-.05em}
.score .c{color:var(--primary)} .score .r{color:var(--secondary)}
.score .dash{font-size:20px;color:var(--faint)}
.split{display:flex;gap:3px;height:8px}
.split i{display:block;border-radius:4px}
.split .c{background:var(--primary)} .split .r{background:var(--secondary);flex:1}
.split.empty i{background:var(--line2)}
.vs-foot{display:flex;justify-content:space-between;gap:10px;margin-top:-6px;font-size:12.5px;color:var(--muted)}
.vs-foot b{font-weight:600}
.vs-foot b.c{color:var(--primary)} .vs-foot b.r{color:var(--secondary)}
.modes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.mt{min-width:0;padding:9px 10px;background:var(--surface);border:1px solid var(--line);border-radius:14px}
.mt .num{display:block;margin-top:3px;font-size:14px;font-weight:700;white-space:nowrap}
.months{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px}
.mcell{height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700}
.mcell.c{background:var(--aSoft);color:var(--primary)}
.mcell.r{background:var(--bSoft);color:var(--secondary)}
.mcell.t{background:var(--tie);color:var(--muted)}
.mcell.n{background:none;color:var(--faint);box-shadow:inset 0 0 0 1px var(--line)}
.mkey{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:11.5px;color:var(--muted)}
.mkey span{display:inline-flex;align-items:center;gap:5px}
.mkey i{display:block;width:9px;height:9px;border-radius:3px}
.mkey .c{background:var(--aSoft);box-shadow:inset 0 0 0 1px var(--primary)}
.mkey .r{background:var(--bSoft);box-shadow:inset 0 0 0 1px var(--secondary)}
.mkey .t{background:var(--tie)}
.last10{display:flex;gap:4px}
.m10{flex:1;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.m10.w{background:var(--aSoft);color:var(--primary)}
.m10.l{background:var(--bSoft);color:var(--secondary)}
.m10.d{background:var(--tie);color:var(--muted)}
.best{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.best .ico{width:32px;height:32px;border-radius:10px}
.best-t{font-size:13.5px;font-weight:600}
.best-s{margin-top:1px;font-size:12px;color:var(--muted)}
.next-card{display:flex;flex-direction:column;gap:12px;padding:14px}
.next-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.next-odds{margin-top:4px;font-size:14px;font-weight:600}
.next-stk{text-align:right;font-size:11.5px;color:var(--muted);line-height:1.5}
.cta{height:48px;border:0;border-radius:14px;background:var(--primary);color:var(--onPrimary);font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.cta .ic{width:18px;height:18px;stroke-width:2}
.cta:disabled{opacity:.45;cursor:default}
.cta-note{margin:-4px 0 0;font-size:12px;color:var(--muted);text-align:center}
.challenge-open{display:flex;flex-direction:column;gap:3px;padding-top:12px;border-top:1px solid var(--line)}
.next-row + .cta{margin-top:0}
.next-card .ghost{align-self:flex-start}
.rivalry-more{border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.rivalry-more > summary{padding:12px 14px;cursor:pointer;font-size:14px;font-weight:600;list-style:none}
.rivalry-more > summary::-webkit-details-marker{display:none}
.rivalry-more[open] > summary{border-bottom:1px solid var(--line)}
.rivalry-more .analytics-surface{margin:0;border:0;border-radius:0}

/* ── Sim ──────────────────────────────────────────────────────────────── */
#lg-sim{display:flex;flex-direction:column;gap:12px;background:none;border:0;box-shadow:none;padding:0;margin:0;overflow:visible}
#lg-sim .board-head{margin-bottom:0}
.model-pill{flex-shrink:0;height:28px;padding:0 11px;border-radius:999px;background:var(--surface2);color:var(--muted);
  font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;white-space:nowrap}
#lg-sim .sim-workflow-tabs{display:flex;margin:0;padding:3px;border-radius:12px;background:var(--surface2)}
#lg-sim .sim-workflow-tab{flex:1;height:34px;padding:0 10px;border:0;border-radius:9px;background:none;color:var(--muted);
  font-size:13.5px;font-weight:600;line-height:1;cursor:pointer;box-shadow:none}
#lg-sim .sim-workflow-tab.on{background:var(--surface);color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.12)}
#sim-compare-view,#sim-balance-view{display:flex;flex-direction:column;gap:10px}
#lg-sim .sim-mode-row{display:flex;gap:0;margin:0}
#lg-sim .sim-mode-btn{padding:0;border:0;border-radius:0;background:none;font-size:14px;font-weight:600}
#lg-sim .sim-mode-btn.on{background:none;color:var(--text)}
#lg-sim .sim-preview-mode{padding:8px 12px;border-radius:12px;background:var(--blueSoft);color:var(--secondary);font-size:12.5px;font-weight:600;text-align:center}
#lg-sim .sim-team-selects{display:flex;flex-direction:column;gap:10px}
#lg-sim .sim-team-box{margin:0;padding:10px 11px 11px;border:1px solid;border-radius:16px;box-shadow:none}
#lg-sim .sim-team-box.a{background:var(--a);border-color:var(--aLine)}
#lg-sim .sim-team-box.b{background:var(--b);border-color:var(--bLine)}
#lg-sim .sim-team-label{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:12.5px;font-weight:700}
#lg-sim .sim-team-box.a .sim-team-label > span{color:var(--primary)}
#lg-sim .sim-team-box.b .sim-team-label > span{color:var(--secondary)}
#lg-sim .sim-team-label small{font-size:11.5px;font-weight:500;color:var(--muted)}
#lg-sim .sim-actions{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;margin:0 2px}
#sim-compare-view:has(#sim-compare-result:not([hidden])) .sim-hint{visibility:hidden}
#lg-sim .sim-notice{min-height:0;margin:0 2px;color:var(--primary);font-size:12.5px;font-weight:600;text-align:left}
#lg-sim .sim-notice:empty{display:none}
#lg-sim .sim-result{margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.sim-matchup{display:flex;flex-direction:column;gap:12px;padding:14px 14px 14px}
.sim-vs{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}
.sim-side{display:flex;flex-direction:column;gap:3px;min-width:0}
.sim-side.b{text-align:right}
.sim-side b{font-size:15.5px;font-weight:700;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sim-side.a b{color:var(--primary)} .sim-side.b b{color:var(--secondary)}
.sim-matchup .odds.compact .odds-row .pa,.sim-matchup .odds.compact .odds-row .pb{font-size:15px}
.sim-matchup .odds.compact .bar,.sim-matchup .odds.compact .bar i{height:6px}
.sim-matchup .stakes{flex-wrap:wrap;row-gap:2px}
#lg-sim .sim-tape{margin:0;border-top:1px solid var(--line)}
#lg-sim .sim-tape-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
#lg-sim .sim-tape-row strong{font-weight:700}
#lg-sim .sim-tape-row strong:first-child{color:var(--primary)}
#lg-sim .sim-tape-row strong:last-child{color:var(--secondary);text-align:right}
#lg-sim .sim-tape-row span{font-size:12px;color:var(--muted);text-align:center;white-space:nowrap}
#lg-sim .sim-use{margin:2px 0 0;width:100%}
#lg-sim .sim-pool-card{display:flex;flex-direction:column;gap:10px;padding:12px 12px 13px}
#lg-sim .sim-pool-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
#lg-sim .sim-pool-head strong{display:block;font-size:15px;font-weight:700}
#lg-sim .sim-pool-head div span{display:block;margin-top:2px;font-size:12px;color:var(--muted)}
#lg-sim .sim-pool-head > span{flex-shrink:0;padding-top:2px;font-size:12px;color:var(--muted)}
#lg-sim .sim-pool{margin:0}
#lg-sim .sim-suggestions-head{margin:4px 2px 0;padding:0;border:0}
#lg-sim .sim-suggestions{display:flex;flex-direction:column;gap:8px;margin:0}
#lg-sim .sim-suggestion{display:flex;flex-direction:column;gap:7px;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
#lg-sim .sim-suggestion:first-child{border-color:var(--aLine)}
#lg-sim .sim-suggestion-top{margin:0}
#lg-sim .sim-suggestion-top strong{font-size:14px;font-weight:700}
#lg-sim .sim-fairness{padding:0 8px;height:22px;display:inline-flex;align-items:center;border-radius:999px;background:var(--tealSoft);color:var(--primary);font-size:12px;font-weight:700}
.sim-split-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:14px;font-weight:600}
.sim-split-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sim-split-row b{font-size:14px;font-weight:700}
.sim-split-row.a b{color:var(--primary)} .sim-split-row.b b{color:var(--secondary)}
#lg-sim .sim-suggestion .bar{flex:none}
#lg-sim .sim-suggestion-foot{margin:2px 0 0;font-size:12px;color:var(--muted)}
#lg-sim .sim-suggestion-foot button{height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--line2);background:none;color:var(--text);font-size:12.5px;font-weight:600}
#lg-sim .sim-suggestion-foot button:hover{border-color:var(--primary)}

/* ── secondary screens share one open layout ─────────────────────────── */
.next-screen{display:flex;flex-direction:column;gap:12px;background:none;border:0;box-shadow:none;padding:0;margin:0;overflow:visible}
.next-screen > .board-head{margin:0 2px}
.next-screen > .board-filters{margin:0}
.next-screen .surface-state{margin:0}
.ico.w{background:var(--winSoft);color:var(--win)}
.ico.l{background:var(--lossSoft);color:var(--loss)}

/* ── Records ──────────────────────────────────────────────────────────── */
#lg-records .record-spotlights{display:flex;flex-direction:column;gap:8px}
.rec-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.rec-spot{display:flex;flex-direction:column;gap:3px;min-width:0;padding:12px 12px 13px}
.rec-spot-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}
.rec-share{width:34px;height:34px;color:var(--faint)}
.rec-spot .rec-share{margin:-6px -6px 0 0}
.rec-holder{font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.25;overflow-wrap:anywhere}
.rec-stat{font-size:12.5px;color:var(--muted);line-height:1.35}
.rec-stat b{font-size:15px;font-weight:700;color:var(--text)}
.rec-spot.lead{padding:16px;border-color:color-mix(in srgb,var(--gold) 28%,var(--line));
  background:linear-gradient(135deg,var(--goldSoft),transparent 65%),var(--surface)}
.rec-spot.lead .rec-holder{font-size:25px;font-weight:800;letter-spacing:-.035em}
.rec-spot.lead .rec-stat{margin-top:4px}
.rec-spot.lead .rec-stat b{font-size:30px;letter-spacing:-.04em;color:var(--gold)}
#records-grid{display:flex;flex-direction:column;gap:12px}
.rec-book-head{margin:8px 4px 0}
#lg-records .record-book{display:flex;flex-direction:column;gap:14px;overflow:visible;border:0;border-radius:0;background:none}
#lg-records .record-group + .record-group{border-top:0}
.rec-group-head{margin:0 4px 8px}
.rec-group-head h4{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.rec-row{gap:11px;padding:12px 6px 12px 14px}
.rec-row .aw-name{overflow-wrap:anywhere}
.rec-rule{margin-top:2px;font-size:11.5px;color:var(--faint)}
.rec-row .aw-val{min-width:54px}
.rec-row .big1{white-space:nowrap}

/* ── History ──────────────────────────────────────────────────────────── */
.pill-select{position:relative;display:inline-flex;min-width:0}
.pill-select select,.next-screen .history-filters select{height:34px;max-width:100%;padding:0 30px 0 13px;border-radius:999px;border:1px solid var(--line2);
  background-color:var(--surface);color:var(--text);font-size:13px;font-weight:600}
#lg-history .history-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
#hist-rows{display:flex;flex-direction:column;gap:18px;padding-left:0}
#hist-rows::before{display:none}
.hnight{display:flex;flex-direction:column;gap:8px}
.hnight-head{display:flex;align-items:center;gap:12px;width:100%;padding:2px 4px;border:0;background:none;color:var(--text);text-align:left;font:inherit;cursor:pointer}
button.hnight-head:hover .nl-body b{color:var(--primary)}
.hnight-head .ic{color:var(--faint)}
.hnight-head .nl-date{width:40px}
.hnight-head .nl-date b{font-size:20px}
.hnight-sets{display:flex;flex-direction:column;gap:8px}
.hset{padding:10px 12px 8px}
.hset-top{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12px;color:var(--muted)}
.hset-top .num:first-child{color:var(--text);font-weight:600}
.hset-mode{height:20px;padding:0 7px;border-radius:6px;background:var(--surface2);font-size:11px;font-weight:700;display:inline-flex;align-items:center}
.upset-tag{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:999px;background:var(--goldSoft);color:var(--gold);font-size:11.5px;font-weight:700}
.hline{display:grid;grid-template-columns:20px minmax(0,1fr) 32px 120px 48px;column-gap:6px;align-items:center;min-height:30px;padding:0 4px;border-radius:8px;font-size:13px}
.hline.th{min-height:20px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.hline.th span:nth-child(n+3){text-align:right}
.hline.th span{font-size:10px;font-weight:700;color:var(--faint)}
.hline.split{margin-top:3px;border-top:1px dashed var(--line);border-radius:0}
.hline.you{background:var(--youRow)}
.hres{width:20px;height:20px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}
.hline.win .hres{background:var(--winSoft);color:var(--win)}
.hline.loss .hres{background:var(--lossSoft);color:var(--loss)}
.hline.draw .hres{background:var(--surface2);color:var(--muted)}
.hline .nm{min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hexp,.hba,.hdl{text-align:right;white-space:nowrap}
.hexp,.hba{font-size:11.5px;color:var(--muted)}
.hdl{font-size:13px;font-weight:700}
.history-more{align-self:center}
#lg-history .history-limit{margin:0;text-align:center;font-size:12px;color:var(--faint)}

/* ── Synergy & Rivals ─────────────────────────────────────────────────── */
.screen-stack{display:flex;flex-direction:column;gap:12px}
.screen-stack > .sec-head{margin:6px 4px -2px}
.syn-hero .hd-score .num{font-size:24px}
button.drow{width:100%;border:0;border-top:1px solid var(--line);background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}
button.drow:hover{background:var(--surface2)}
.drow .dsub{display:block}
.syn-table .drow,.lineup-table .drow{grid-template-columns:22px minmax(0,1fr) 62px 58px}
.lineup-table .drow{grid-template-columns:22px minmax(0,1fr) 70px}
.lineup-table .drow:first-child{border-top:0}
.lineup-table .analytics-empty{padding:14px;font-size:13px;color:var(--muted)}
.dwl .a2:not(.num){font-size:11px;color:var(--muted)}
.rivals-table .drow{grid-template-columns:minmax(0,1fr) 64px 56px 16px}
.rivals-table .drow:first-child{border-top:0}
.rivals-table .drow > .ic{color:var(--faint)}
.rival-split{display:flex;gap:2px;height:6px}
.rival-split i{display:block;height:6px;border-radius:3px}
.rival-split .w{background:var(--win)}
.rival-split .l{flex:1;background:var(--loss);opacity:.75}
.rival-spot .rec-stat b{font-size:14px}
#lg-rivals > .fchips{margin:0 2px}

/* ── Activity ─────────────────────────────────────────────────────────── */
#lg-activity .activity-filters{display:flex;flex-wrap:wrap;gap:8px}
.activity-list.gcard{overflow:hidden;border:1px solid var(--line)}
.activity-list.gcard:empty{display:none}
.act-day{padding:8px 14px 7px;background:var(--surface2);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.act-row{display:flex;align-items:flex-start;gap:12px;padding:11px 14px;border-top:1px solid var(--line)}
.act-day + .act-row,.activity-list > .act-row:first-child{border-top:0}
.act-row .ico{width:32px;height:32px;border-radius:10px}
.act-row .ico .ic{width:16px;height:16px}
.act-body{flex:1;min-width:0}
.act-row .activity-sentence{font-size:13.5px;line-height:1.45}
.act-row .activity-sentence strong{font-weight:700}
.act-meta{margin-top:3px;font-size:11.5px;color:var(--muted)}
.act-meta .activity-type{display:inline;margin:0;padding:0;border-radius:0;background:none;color:inherit;font-size:inherit;font-weight:600;letter-spacing:0;text-transform:none}
.activity-more{align-self:center}
.note-line{display:flex;gap:8px;align-items:flex-start}
.note-line .ic{margin-top:2px;color:var(--faint)}

/* ── Settings & Members ───────────────────────────────────────────────── */
.set-group{display:flex;flex-direction:column}
.set-head{margin:4px 4px 8px}
.set-head h4{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.set-head > span{font-size:12px;color:var(--muted)}
.set-group > .fine{margin:-2px 0 8px}
.set-card{display:flex;flex-direction:column;overflow:hidden}
.set-field{display:flex;flex-direction:column;gap:6px;margin:0;padding:12px 14px}
.set-field > span{font-size:12px;font-weight:600;color:var(--muted)}
.set-field input,.set-field select{width:100%;height:42px;margin:0;border-radius:12px;font-size:15px}
.set-block{padding:12px 14px;border-top:1px solid var(--line)}
.set-card > :first-child{border-top:0}
.set-label strong{display:block;font-size:14.5px;font-weight:600}
.set-label span{display:block;margin-top:2px;font-size:12px;color:var(--muted)}
.set-block .player-choices{margin-top:10px}
#ls-modes .chip.on{background:var(--primary);border-color:var(--primary);color:var(--onPrimary)}
.settings-rating-row.set-block{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:10px;margin:0}
.settings-rating-row .set-field{padding:0}
.set-warn{display:flex;align-items:center;gap:4px;padding:6px 14px 8px 6px;background:var(--surface2);font-size:12px;line-height:1.4;color:var(--muted)}
.set-warn .icon-btn{width:34px;height:34px;color:var(--primary)}
.set-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-template-areas:"ico title ctl" "ico desc desc";
  column-gap:12px;row-gap:3px;align-items:center;padding:12px 14px;border-top:1px solid var(--line)}
.set-item > .ico{grid-area:ico;align-self:start}
.set-copy{display:contents}
.set-copy strong{grid-area:title;min-width:0;color:var(--text);font-size:14.5px;font-weight:600}
.set-copy span{grid-area:desc;font-size:12px;line-height:1.45;color:var(--muted)}
.set-toggle{grid-area:ctl;justify-self:end}
.seg2.set-toggle button{height:28px;padding:0 12px}
.seg2 button[aria-selected="true"]{background:var(--surface);color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.seg2 button:disabled{opacity:.5;cursor:not-allowed}
#lg-settings > .add-btn{margin-top:4px}
#lg-invite .member-summary{margin:0}
.mem-list{overflow:hidden}
.mem-list:empty{display:none}
.mem-list > p{margin:0;padding:14px}
#lg-invite .roster-row,#lg-invite .member-card,#lg-invite .lg-row{margin:0;padding:11px 14px;border:0;border-top:1px solid var(--line)}
#lg-invite .mem-list > :first-child{border-top:0}
#lg-invite .roster-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
#lg-invite .roster-row-main{flex:1 1 170px}
#lg-invite .roster-row-actions{margin-left:auto}
#lg-invite .roster-row-main{min-width:0}
#lg-invite .roster-row-main strong{font-size:14.5px;font-weight:600}
#lg-invite .roster-row-main span:not(.roster-chip){font-size:12px;color:var(--muted)}
#lg-invite .roster-row-actions{gap:6px}
#lg-invite .roster-chip{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;background:var(--winSoft);color:var(--win);font-size:11.5px;font-weight:700}
#lg-invite .roster-chip.inactive{background:var(--surface2);color:var(--muted)}
#lg-invite .member-action{height:30px;padding:0 11px;border-radius:999px;border:1px solid var(--line2);background:none;color:var(--text);font-size:12px;font-weight:600}
#lg-invite .member-action:hover{border-color:var(--primary);filter:none}
#lg-invite .member-action.danger{color:var(--loss);border-color:color-mix(in srgb,var(--loss) 35%,var(--line2))}
#lg-invite .member-card{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:6px 12px;align-items:center}
#lg-invite .member-avatar{width:36px;height:36px;border-radius:50%;border:0;background:var(--av1);color:var(--primary);font-size:13px;font-weight:700}
#lg-invite .member-identity strong{font-size:14.5px;font-weight:600}
#lg-invite .member-identity span{font-size:12px}
#lg-invite .member-role{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border-radius:999px;background:var(--surface2);color:var(--muted);font-size:11.5px;font-weight:700;text-transform:capitalize}
#lg-invite .member-role.role-owner{background:var(--goldSoft);color:var(--gold)}
#lg-invite .member-role.role-admin{background:var(--tealSoft);color:var(--primary)}
#lg-invite .member-actions{grid-column:2/4;justify-content:flex-start;gap:6px}
#lg-invite .member-role-select{height:30px;padding:0 28px 0 11px;border-radius:999px;font-size:12px;font-weight:600}
#lg-invite .lg-row{display:flex;align-items:center;gap:8px;padding-right:8px}
#lg-invite .lg-row .nm{flex:1;min-width:0;font-weight:600}
#lg-invite .lg-row .mut{font-size:12px}
#lg-invite .hcard-del{width:32px;height:32px;padding:0;color:var(--faint)}
#lg-invite .hcard-del:hover{color:var(--loss);background:var(--lossSoft)}
.invite-card{gap:10px;padding:12px 14px}
.invite-card .seg2{align-self:flex-start}
.invite-card p{margin:0}
.link-field{display:flex;align-items:center;gap:8px;height:48px;padding:0 5px 0 12px;border:1px solid var(--line2);border-radius:14px;background:var(--surface2)}
.link-field > .ic{color:var(--faint)}
.link-field input{flex:1;min-width:0;height:44px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;font-size:13px}
.link-field input:focus{outline:none}
.link-field .btn{height:38px;margin:0;padding:0 14px;border-radius:11px;background:var(--primary);color:var(--onPrimary);font-size:13px;white-space:nowrap}
#inv-add-tools .set-card{padding:12px 14px}
.add-field{background:var(--surface)}

/* ── Seasons ──────────────────────────────────────────────────────────── */
#seasons-root > .board-head{margin:0 2px}
#lg-seasons .season-invariant{display:flex;align-items:flex-start;gap:12px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
#lg-seasons .season-invariant > .ico{flex-shrink:0;display:flex;width:36px;height:36px;border-radius:11px;font-weight:400}
#lg-seasons .season-invariant strong{font-size:14px;color:var(--text)}
#lg-seasons .season-invariant p{margin:2px 0 0;font-size:12.5px;line-height:1.45;color:var(--muted)}
#lg-seasons .season-invariant.compact{margin:12px 0 0;padding:10px 12px;background:var(--surface2);border:0}
#lg-seasons .season-card,#lg-seasons .season-review-card{margin:0;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:none}
#lg-seasons .season-review-card{border-color:var(--primary);background:linear-gradient(var(--tealSoft),var(--tealSoft)),var(--surface)}
#lg-seasons .season-correction-card{border-style:dashed}
#lg-seasons .season-card-head h4,#lg-seasons .season-review-card h4{margin:2px 0 4px;font-size:17px;font-weight:700;letter-spacing:-.01em}
#lg-seasons .season-card-head p,#lg-seasons .season-review-card p{font-size:12.5px;line-height:1.45;color:var(--muted)}
#lg-seasons .season-card .pill{flex-shrink:0;height:24px;padding:0 9px;border:0;border-radius:999px;background:var(--surface2);color:var(--muted);font-size:11.5px;font-weight:700;display:inline-flex;align-items:center}
#lg-seasons .season-card .pill.p-win{background:var(--winSoft);color:var(--win)}
#lg-seasons .season-rule-grid{gap:8px;margin:12px 0}
#lg-seasons .season-rule-grid > div{padding:10px 11px;border:0;border-radius:12px;background:var(--surface2)}
#lg-seasons .season-rule-grid span{font-size:10.5px;font-weight:700;letter-spacing:.06em;color:var(--faint)}
#lg-seasons .season-rule-grid strong{margin-top:3px;font-size:13.5px}
#lg-seasons .season-rule-grid small{margin-top:3px;font-size:11.5px;line-height:1.4}
#lg-seasons .season-start-choices{gap:8px;margin-top:12px}
#lg-seasons .season-start-choice{padding:14px;border:1px solid var(--line2);border-radius:16px;background:var(--surface)}
#lg-seasons .season-start-choice:hover{border-color:var(--primary)}
#lg-seasons .season-start-choice span{font-size:10.5px;font-weight:700;letter-spacing:.06em;color:var(--primary)}
#lg-seasons .season-start-choice strong{margin-top:4px;font-size:15px}
#lg-seasons .season-start-choice small{margin-top:4px;font-size:12px;line-height:1.45}
#lg-seasons .season-actions,#lg-seasons .season-review-actions{gap:8px;margin-top:12px}
#lg-seasons .season-actions .btn,#lg-seasons .season-review-actions .btn{height:44px;padding:0 18px;border-radius:12px}
#lg-seasons .season-board{margin-top:12px;border:1px solid var(--line);border-radius:14px}
#lg-seasons .season-board-head,#lg-seasons .season-board-row{grid-template-columns:28px minmax(0,1fr) 84px;padding:9px 12px}
#lg-seasons .season-board-head{background:var(--surface2);font-size:10.5px;font-weight:700;letter-spacing:.06em;color:var(--faint)}
#lg-seasons .season-board-row{border-top:1px solid var(--line);font-size:14px}
#lg-seasons .season-board-row > strong{font-family:var(--app-mono);font-size:13px;color:var(--faint)}
#lg-seasons .season-board-row:nth-child(2) > strong{color:var(--gold)}
#lg-seasons .season-board-row span b{font-weight:600}
#lg-seasons .season-board-row span small{font-size:11.5px}
#lg-seasons .season-board-row > b:last-child{font-family:var(--app-mono);font-weight:700}
#lg-seasons .season-archive{display:flex;flex-direction:column;gap:8px;margin-top:12px;border:0;border-radius:0;overflow:visible}
#lg-seasons .season-archive-card{padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}
#lg-seasons .season-archive-head strong{font-size:15px}
#lg-seasons .season-archive-head div > span{font-size:12px}
.season-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:6px;margin-top:12px}
.season-podium > .pod{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:0;border:0;background:none;text-align:center}
.season-podium .pod strong{max-width:100%;margin:0;font-size:13.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.season-podium .pod small{margin:0;font-size:11px;color:var(--muted)}
.pod-crown{color:var(--gold)}
.season-podium .pod-step{display:flex;align-items:flex-start;justify-content:center;width:100%;margin-top:6px;padding-top:6px;border-radius:10px 10px 4px 4px;font-size:16px;font-weight:700}
.pod.gold .pod-step{height:58px;background:var(--goldSoft);color:var(--gold)}
.pod.silver .pod-step{height:42px;background:var(--surface2);color:var(--muted)}
.season-archive-card .pod.silver .pod-step{background:var(--surface)}
.pod.bronze .pod-step{height:30px;background:rgba(176,112,64,.14);color:#b07040}
#lg-seasons .season-correction-blocked{margin-top:10px;padding:10px 12px;border-radius:12px;background:var(--surface2)}
#lg-seasons .season-correction-blocked strong{font-size:13px}
#lg-seasons .season-correction-blocked span{font-size:12px}
#lg-seasons .season-correction-field{gap:6px;margin-top:12px;font-size:12px;font-weight:600}
#lg-seasons .season-correction-field input{height:42px;border-radius:12px}

/* ── Tourney ──────────────────────────────────────────────────────────── */
#tourney-root > .board-head,#tourney-root > .rc-nav{margin-left:2px;margin-right:2px}
#lg-tourney .tourney-fieldset{min-width:0;margin:0;padding:0;border:0}
#lg-tourney .tourney-fieldset legend{display:flex;align-items:baseline;justify-content:space-between;width:100%;margin:0 0 8px;padding:0 4px}
#lg-tourney .tourney-fieldset legend h4{margin:0}
#lg-tourney .tourney-formats{display:flex;flex-direction:column;gap:8px}
.fmt{display:flex;flex-direction:row;align-items:center;gap:12px;width:100%;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:none}
.fmt:hover{border-color:var(--primary)}
.fmt.on{border-color:var(--primary);background:linear-gradient(var(--tealSoft),var(--tealSoft)),var(--surface);box-shadow:none}
.fmt-copy{flex:1;min-width:0}
.fmt-copy .t{display:block;color:var(--text);font-size:15px;font-weight:700}
.fmt-copy .d{display:block;margin-top:2px;font-size:12.5px;line-height:1.4;color:var(--muted)}
.fmt-check{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line2);display:flex;align-items:center;justify-content:center;color:transparent;flex-shrink:0}
.fmt.on .fmt-check{background:var(--primary);border-color:var(--primary);color:var(--onPrimary)}
.player-choices .chip.on:not(.on-b){background:var(--primary);border-color:var(--primary);color:var(--onPrimary)}
.tourney-method{align-self:flex-start}
#lg-tourney .tourney-ranked{margin:0;cursor:pointer}
input.switch{appearance:none;-webkit-appearance:none;position:relative;width:44px;min-width:44px;height:26px;margin:0;padding:0;border:0;border-radius:999px;
  background:var(--line2);box-shadow:none;cursor:pointer;transition:background .15s ease}
input.switch::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .15s ease}
input.switch:checked{background:var(--primary)}
input.switch:checked::after{transform:translateX(18px)}
input.switch:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
#lg-tourney .tourney-review-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
#lg-tourney .tourney-review-summary > .stat{padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
#lg-tourney .tourney-review-summary .stat-v{margin-top:2px;font-size:15px;white-space:normal;overflow-wrap:anywhere}
#lg-tourney .tourney-review-teams,#lg-tourney .tourney-preview,#lg-tourney .tourney-archive{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0}
.t-teams{display:flex;flex-direction:column;overflow:hidden}
#lg-tourney .tourney-review-teams > .sec-head{display:flex}
#lg-tourney .tourney-review-teams > .sec-head span{display:inline;padding:0;border:0;border-radius:0;background:none}
#lg-tourney .tourney-review-teams > .t-teams{display:flex;gap:0}
#lg-tourney .tourney-review-teams .t-team{flex-direction:row;gap:10px;padding:10px 14px;border:0;border-top:1px solid var(--line);border-radius:0;background:none;font-size:14px;font-weight:600}
#lg-tourney .tourney-review-teams .t-team:first-child{border-top:0}
#lg-tourney .tourney-review-teams .t-team b{font-size:12px;color:var(--faint)}
.t-team{display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid var(--line);font-size:14px;font-weight:600}
.t-team:first-child{border-top:0}
.t-team b{width:20px;font-size:12px;color:var(--faint)}
#lg-tourney .tourney-review-actions{display:flex;margin:0}
.t-sub{margin:6px 4px 0;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
#lg-tourney .bracket{gap:10px;margin:0;padding:2px 2px 8px}
#lg-tourney .b-round{width:168px}
#lg-tourney .b-title{font-size:10.5px;letter-spacing:.06em;color:var(--faint)}
#lg-tourney .b-match{border:1px solid var(--line);border-radius:14px;background:var(--surface)}
#lg-tourney .b-match.live{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
#lg-tourney .b-match.live .b-slot:hover{background:var(--tealSoft)}
#lg-tourney .b-slot{gap:6px;padding:10px 12px;font-size:13.5px}
#lg-tourney .b-slot span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#lg-tourney .b-slot + .b-slot{border-top:1px solid var(--line)}
#lg-tourney .b-slot.w{background:var(--winSoft);color:var(--win)}
#lg-tourney .b-slot.tbd{color:var(--faint);font-style:normal}
.t-table{overflow:hidden}
#lg-tourney .t-table .lg-row{padding:10px 14px;border-bottom:0;border-top:1px solid var(--line)}
#lg-tourney .t-table .lg-row:first-child{border-top:0}
#lg-tourney .setcard{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
#lg-tourney .sc-side.win{display:inline-flex;align-items:center;gap:4px;color:var(--win)}
#lg-tourney .sc-meta{margin-top:8px}
#lg-tourney .sc-rematch{height:32px;margin-left:6px;padding:0 12px;border:1px solid var(--line2);border-radius:999px;background:none;color:var(--text);font-size:12.5px;font-weight:600;cursor:pointer}
#lg-tourney .sc-rematch:hover{border-color:var(--primary)}
.t-del,.rc-nav .t-del{color:var(--loss)}
#lg-tourney .livechip{display:inline-flex;align-items:center;gap:6px;color:var(--live);font-size:inherit;font-weight:700;letter-spacing:0;vertical-align:baseline}
.t-podium{margin:0 0 4px}
#lg-tourney .tourney-empty{margin:0;font-size:13px;color:var(--muted);text-align:center}
.nl-row .ico{flex-shrink:0}

/* ── entry screens: sign-in, handle, home, create, invite ──────────────── */
.entry-shell{display:flex;flex-direction:column;gap:12px;max-width:560px;margin:8px auto 28px}
.entry-shell.narrow{max-width:420px;margin-top:20px}
#screen-home.entry-shell{width:auto;max-width:560px;margin:8px auto 28px;transform:none}
.entry-head{display:flex;flex-direction:column;gap:6px;padding:0 2px}
.entry-head.center{align-items:center;text-align:center}
.entry-head h1{margin:0;font-size:30px;line-height:1.1;font-weight:800;letter-spacing:-.035em}
.entry-head p{margin:0;font-size:14.5px;line-height:1.5;color:var(--muted)}
.entry-logo{width:60px;height:60px;margin-bottom:6px;border-radius:16px}
.entry-ico{width:56px;height:56px;margin-bottom:6px;border-radius:18px}
.entry-ico .ic{width:26px;height:26px}
.entry-card{display:flex;flex-direction:column;gap:12px;padding:16px}
.entry-card .set-field{padding:0}
.entry-card .entry-google{flex:none;width:100%}
.entry-card .divider{margin:0}
.entry-swap{margin:0;text-align:center}
.entry-swap a{color:var(--primary);font-weight:600}
.auth-recovery-link{align-self:flex-end;margin-top:-6px}
.center{text-align:center}
.set-field > label{font-size:12px;font-weight:600;color:var(--muted)}
.link-field .at{font-size:15px;color:var(--faint)}
.slugrow .mono.mut{font-size:13px}
.entry-shell .slugrow input{height:44px}
.cl-hint{margin:10px 0 0}
#screen-create .btn-row{margin-top:4px}
#pwa-home-card{position:relative;display:flex;align-items:flex-start;gap:12px;margin:0;padding:14px 44px 14px 14px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:none}
#pwa-home-card .pwa-app-icon{flex-shrink:0;width:46px;height:46px;border-radius:13px;background:none}
#pwa-home-card .pwa-home-copy h2{margin:0;font-size:16px;font-weight:700;letter-spacing:-.01em}
#pwa-home-card .pwa-home-copy p{margin:3px 0 0;font-size:12.5px;line-height:1.45;color:var(--muted)}
#pwa-home-card .pwa-home-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
#pwa-home-card .pwa-dismiss{position:absolute;top:6px;right:6px;width:34px;height:34px;border:0;border-radius:10px;background:none}
#screen-home .home-launch-grid{display:flex;flex-direction:column;gap:10px}
.home-leagues-card{padding:12px 0 4px}
.home-leagues-card > .sec-head{margin-bottom:4px;padding:0 14px}
.home-league-list{display:flex;flex-direction:column}
#home-leagues .league-tile{display:flex;align-items:center;gap:12px;width:100%;margin:0;padding:11px 14px;border:0;border-top:1px solid var(--line);border-radius:0;
  background:none;box-shadow:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}
#home-leagues .league-tile:first-child{border-top:0}
#home-leagues .league-tile:hover{background:var(--surface2);box-shadow:none}
#home-leagues .league-tile .ico{flex:none;width:40px;height:40px;border-radius:12px;font-size:20px}
#home-leagues .league-tile .lt-copy{display:flex;flex:1;flex-direction:column;min-width:0}
#home-leagues .league-tile .n{font-size:15.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#home-leagues .league-tile .s{font-size:12px;color:var(--muted)}
#home-leagues .league-tile > .ic{color:var(--faint)}
#screen-home .home-invite-note{margin:4px 14px 10px;padding:12px;border:0;border-radius:12px;background:var(--surface2)}
#screen-home .home-invite-note b{font-size:14px}
#screen-home .home-invite-note p{margin:4px 0 0;font-size:12.5px;line-height:1.45;color:var(--muted)}
.home-action{display:flex;align-items:center;gap:12px;width:100%;padding:14px;color:var(--text);font:inherit;text-align:left;text-decoration:none;cursor:pointer}
.home-action:hover{border-color:var(--primary)}
.home-action-copy{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}
.home-action-copy strong{font-size:16px;font-weight:700}
.home-action-copy small{font-size:12.5px;line-height:1.4;color:var(--muted)}
.home-action > .ic{color:var(--faint)}
.join-league{display:flex;align-items:center;gap:12px}
.join-league .n{font-size:17px;font-weight:700}
.join-league .s{font-size:12.5px;color:var(--muted)}
.join-target{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--aLine);border-radius:14px;background:var(--a)}
.join-target b{display:block;margin-top:2px;font-size:16px}
.join-yours{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;height:26px;padding:0 10px;border-radius:999px;background:var(--winSoft);color:var(--win);font-size:12px;font-weight:700}
#join-body > p{margin:0}

/* ── account Settings dialog ──────────────────────────────────────────── */
#pwa-dialog{width:min(520px,calc(100vw - 20px));padding:16px;border:1px solid var(--line);border-radius:22px;background:var(--bg);color:var(--text);box-shadow:var(--pop-shadow)}
#pwa-dialog .pwa-dialog-head{align-items:center;margin-bottom:2px}
#pwa-dialog .pwa-dialog-head h2{margin:0;font-size:22px;font-weight:800;letter-spacing:-.03em}
#pwa-dialog .pwa-dialog-head p{margin:2px 0 0}
#pwa-dialog .pwa-dialog-close{width:38px;height:38px;border:0;border-radius:12px;background:none}
#pwa-dialog .pwa-setting-card{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:10px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.pwa-card-top{display:flex;align-items:center;gap:12px}
#pwa-dialog .pwa-setting-copy{flex:1;min-width:0}
#pwa-dialog .pwa-setting-copy strong{font-size:15px;font-weight:700}
#pwa-dialog .pwa-setting-copy span{margin-top:2px;font-size:12.5px;line-height:1.4}
#pwa-dialog .pwa-setting-status{flex-shrink:0;display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;background:var(--surface2);color:var(--muted);font-size:11.5px;font-weight:700;text-transform:none;letter-spacing:0}
#pwa-dialog .pwa-setting-card > .ghost{align-self:flex-start}
#pwa-dialog .pwa-setting-card > .fine{margin:0;padding:0}
#pwa-dialog .pwa-password-form{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid var(--line)}
#pwa-dialog .pwa-password-form > p{margin:0;font-size:12.5px;color:var(--muted)}
#pwa-dialog .pwa-password-form .set-field{padding:0}
#pwa-dialog .pwa-install-help{display:grid;grid-template-columns:1fr;gap:3px;padding:12px;border-radius:12px;background:var(--surface2);font-size:12.5px;line-height:1.45}
#pwa-dialog .pwa-install-help b{margin-top:4px;color:var(--primary)}
#pwa-dialog .pwa-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:10px 0 0;border-top:1px solid var(--line);color:var(--text);font-size:14px;font-weight:600}
#pwa-dialog .pwa-switch-row small{display:block;margin-top:2px;color:var(--muted);font-size:11.5px;font-weight:500;letter-spacing:0;text-transform:none}
#pwa-dialog .pwa-alert-card input.switch{width:44px;margin:0}
#pwa-dialog .pwa-alert-devices{display:flex;flex-direction:column;gap:6px}
#pwa-dialog .pwa-alert-device{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
#pwa-dialog .pwa-alert-device span{font-size:12px}
#pwa-dialog .pwa-alert-device b{font-size:13.5px}
#pwa-dialog .pwa-alert-empty{font-size:12.5px;color:var(--muted)}

/* ── Tournament Night ─────────────────────────────────────────────────── */
#screen-night .night-shell{display:flex;flex-direction:column;gap:12px;width:auto;max-width:560px;margin:8px auto 28px;transform:none}
#screen-night .night-page-head{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:4px 2px 0}
#screen-night .night-page-head h1{margin:0;font-size:30px;line-height:1.1;font-weight:800;letter-spacing:-.035em}
#screen-night .night-page-head p{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}
#screen-night .night-guest-pill{display:inline-flex;align-items:center;gap:6px;height:26px;margin-top:2px;padding:0 10px;border:0;border-radius:999px;background:var(--tealSoft);color:var(--primary);font-size:12px;font-weight:700;letter-spacing:0;text-transform:none}
#screen-night .night-panel{display:flex;flex-direction:column;gap:12px;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
#screen-night .night-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:6px 2px 0}
#screen-night .night-section-head h2{margin:2px 0 0;font-size:20px;font-weight:800;letter-spacing:-.02em}
#screen-night .night-truth,#screen-night .night-live{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;height:26px;padding:0 10px;border:0;border-radius:999px;background:var(--surface2);color:var(--muted);font-size:12px;font-weight:700;letter-spacing:0;text-transform:none}
#screen-night .night-live{background:var(--liveSoft);color:var(--live)}
#screen-night .night-live.final{background:var(--goldSoft);color:var(--gold)}
#screen-night .night-fields{gap:12px;padding:14px}
#screen-night .night-fields .set-field,#screen-night .set-card .set-field{padding:0}
#screen-night .set-card{gap:12px;padding:14px}
#screen-night .night-fieldset{min-width:0;margin:0;padding:0;border:0}
#screen-night .night-fieldset legend{display:flex;width:100%;margin:0 0 8px;padding:0 4px;color:inherit;font-size:inherit;letter-spacing:0;text-transform:none}
#screen-night .night-format-grid{display:flex;flex-direction:column;gap:8px;margin:0}
#screen-night .night-names-field{gap:8px;padding:14px}
#screen-night .night-label-note{float:none;margin-left:4px;color:var(--faint);font-size:11.5px;font-weight:500}
#screen-night .night-names{min-height:132px;padding:12px 14px;border:1px solid var(--line2);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;font-size:15px;line-height:1.5}
#screen-night .night-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
#screen-night .night-summary > .stat{padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
#screen-night .night-summary .stat-v{margin-top:2px;font-size:16px;white-space:normal;overflow-wrap:anywhere}
#screen-night .night-error{margin:0;color:var(--loss);font-size:12.5px;text-align:center}
#screen-night .night-subpanel{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0;background:none}
#screen-night .night-teams{display:flex;flex-direction:column;gap:0;margin:0}
#screen-night .night-teams > .t-team{flex-direction:row;gap:10px;padding:10px 14px;border-radius:0;background:none}
#screen-night .night-teams b{font-size:12px;text-transform:none;color:var(--faint)}
#screen-night .night-teams span{font-size:14px;font-weight:600}
#screen-night .night-actions{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin:0}
#screen-night .night-link-boundary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
#screen-night .night-link-boundary > div{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
#screen-night .night-link-boundary b{font-size:14px}
#screen-night .night-link-boundary p{margin:0;font-size:12px;line-height:1.45;color:var(--muted)}
#screen-night .night-share{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin:0;padding:12px 14px}
#screen-night .night-share .link-field b{flex:1;min-width:0;overflow:hidden;font-size:12.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
#screen-night .night-watch-banner{display:flex;align-items:center;gap:8px;margin:0;padding:10px 14px;border:0;border-radius:14px;background:var(--tealSoft);color:var(--primary);font-size:13px;font-weight:600}
#screen-night .night-bracket{display:flex;gap:10px;margin:0;padding:2px 2px 8px;overflow-x:auto}
#screen-night .night-round{display:flex;flex:none;flex-direction:column;justify-content:space-around;gap:8px;width:176px}
#screen-night .night-round h4{margin:0;color:var(--faint);font-size:10.5px;font-weight:700;letter-spacing:.06em;text-align:center;text-transform:uppercase}
#screen-night .night-match{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
#screen-night .night-slot{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;padding:10px 12px;border:0;background:none;color:var(--text);font:inherit;font-size:13.5px;font-weight:600;text-align:left}
#screen-night .night-slot + .night-slot{border-top:1px solid var(--line)}
#screen-night .night-slot.open{cursor:pointer}
#screen-night .night-slot.open:hover{background:var(--tealSoft)}
#screen-night .night-slot.winner{background:var(--winSoft);color:var(--win)}
#screen-night .night-slot:disabled{opacity:1;cursor:default}
#screen-night .night-slot small{color:var(--primary);font-size:10.5px;font-weight:600}
#screen-night .night-table,#screen-night .night-fixtures{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0}
#screen-night .night-table > .gcard{display:block;padding:0;overflow:hidden}
#screen-night .night-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line);font-size:13.5px}
#screen-night .night-row:first-child{border-top:0}
#screen-night .night-row small{color:var(--muted);font-size:11.5px}
#screen-night .night-row strong{font-size:13px}
#screen-night .night-fixture{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
#screen-night .night-fixture > .night-vs{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:6px;font-size:14px;font-weight:600}
#screen-night .night-vs span:last-child{text-align:right}
#screen-night .night-vs b{color:var(--faint);font-size:11px;text-align:center}
#screen-night .night-done{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:8px;color:var(--win);font-size:12.5px}
#screen-night .night-result-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px}
#screen-night .night-result-actions button{height:34px;padding:0 12px;border:1px solid var(--line2);border-radius:999px;background:none;color:var(--text);font:inherit;font-size:13px;font-weight:600;cursor:pointer}
#screen-night .night-result-actions button:hover{border-color:var(--primary);background:var(--tealSoft)}
#screen-night .night-champion{display:flex;flex-direction:column;align-items:center;gap:4px;padding:20px 16px 16px;border:1px solid color-mix(in srgb,var(--gold) 28%,var(--line));border-radius:18px;
  background:linear-gradient(160deg,var(--goldSoft),transparent 70%),var(--surface);text-align:center}
#screen-night .night-champion .ico{width:44px;height:44px;margin-bottom:6px}
#screen-night .night-champion h2{margin:2px 0;font-size:28px;font-weight:800;letter-spacing:-.03em}
#screen-night .night-champion p{margin:0;color:var(--muted);font-size:12.5px}
#screen-night .night-podium{width:100%;margin-top:14px}
#screen-night .night-conversion-grid{display:flex;flex-direction:column;gap:8px;margin:0}
#screen-night .night-conversion-grid .fmt{flex-direction:row;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:var(--surface)}
#screen-night .night-conversion-grid .fmt > .ic{color:var(--faint)}
#screen-night .night-share .btn{flex:none;width:auto}
#screen-night .night-bracket .night-round{width:168px}

/* ── Share sheet ──────────────────────────────────────────────────────── */
.share-card-overlay{place-items:end center;padding:0;background:rgba(3,13,15,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.share-card-dialog{display:flex;flex-direction:column;gap:12px;width:min(100%,540px);max-height:100vh;max-height:100dvh;
  padding:14px 16px calc(16px + env(safe-area-inset-bottom,0px));border:1px solid var(--line);border-bottom:0;border-radius:24px 24px 0 0;
  background:var(--surface);box-shadow:var(--sheet-shadow)}
.share-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0}
.share-card-head span{display:block;color:var(--faint);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.share-card-head h3{margin:2px 0 0;font-size:18px;font-weight:700;letter-spacing:-.01em}
.share-card-close{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:0;border-radius:12px;background:var(--surface2);color:var(--text);cursor:pointer}
.share-card-stage{display:flex;justify-content:center;padding:12px;border:0;border-radius:18px;background:var(--surface2)}
.share-card-frame{--ar:.8;width:min(100%,calc(min(46vh,430px) * var(--ar)));aspect-ratio:4/5;transition:width .2s ease}
.share-card-frame.square{--ar:1;aspect-ratio:1}
.share-card-frame.story{--ar:.5625;aspect-ratio:9/16}
.share-card-frame canvas{display:block;width:100%;height:100%;border-radius:12px;box-shadow:0 18px 40px -18px rgba(0,0,0,.55)}
.share-card-controls{display:flex;flex-wrap:wrap;gap:8px}
.share-card-controls .seg2{flex:1 1 200px}
.share-card-controls .seg2 button{flex:1}
.share-card-controls .seg2 button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.share-card-actions{display:flex;gap:8px;margin:0}
.share-card-actions .bigbtn{flex:1;height:48px;padding:0 14px;font-size:15px}
.share-card-actions .bigbtn .ic{width:18px;height:18px}
.share-card-actions .bigbtn[hidden]{display:none}
.share-card-copy{align-self:center;gap:6px}
.share-card-summary{display:-webkit-box;margin:0;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.45;text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.share-card-status{min-height:16px;margin:0;color:var(--primary);font-size:12px;font-weight:600;text-align:center}
.share-card-status:empty{display:none}
@media (min-width:640px){
  .share-card-overlay{place-items:center;padding:24px}
  .share-card-dialog{border-bottom:1px solid var(--line);border-radius:24px}
}

/* ── Fan Zone (no betting): Your player, fan pages, Moments ────────────── */
.fans-shell,#fans-root{display:flex;flex-direction:column;gap:14px}
.fz-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:2px 2px 0}
.fz-head h3{margin:0;font-size:24px;font-weight:750;letter-spacing:-.025em;line-height:1.1}
.fz-head .mut{text-align:right}
.fz-sec{display:flex;flex-direction:column;gap:10px}
.fz-sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.fz-sec-h h4{margin:0;font-size:16px;font-weight:700;letter-spacing:-.01em}
.fz-sec-h .mut{white-space:nowrap}
.fz-sec-h .linkbtn .ic{width:13px;height:13px}
.fz-card{padding:13px 14px;display:flex;flex-direction:column;gap:10px}
.fz-nav{margin:-4px -6px 0}
.fz-av{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
  font-size:10px;font-weight:700;letter-spacing:.02em;color:var(--text);background:var(--av1)}
.fz-av.h2{background:var(--av2)} .fz-av.h3{background:var(--goldSoft)} .fz-av.h4{background:var(--winSoft)}
.fz-av.lg{width:36px;height:36px;font-size:12px}
.fz-ring{position:relative;width:56px;height:56px;padding:3px;border-radius:50%;flex-shrink:0;
  background:conic-gradient(from 210deg,var(--primary),var(--secondary),var(--primary))}
.fz-ring > span{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--surface2);color:var(--primary);font-size:17px;font-weight:800;box-shadow:0 0 0 2px var(--surface)}
.fz-ring.dim{background:var(--line2)}
.fz-ring.lg{width:84px;height:84px;padding:4px}
.fz-ring.lg > span{font-size:25px}
.fz-ring > i{position:absolute;right:-8px;bottom:2px;min-width:32px;height:22px;padding:0 7px;border-radius:999px;
  display:flex;align-items:center;justify-content:center;font-style:normal;font-size:11.5px;font-weight:700;
  background:var(--text);color:var(--bg);box-shadow:0 0 0 3px var(--bg)}

.fz-yp{padding:14px;display:flex;flex-direction:column;gap:13px;
  background:linear-gradient(160deg,var(--tealSoft),transparent 62%),var(--surface)}
.fz-yp-top{display:flex;align-items:center;justify-content:space-between}
.fz-yp-id{display:flex;align-items:center;gap:12px}
.fz-yp-name{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.fz-yp-name h4{margin:0;font-size:22px;font-weight:750;letter-spacing:-.02em;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fz-yp-name span{font-size:13px;color:var(--muted)}
.fz-yp-fans{display:flex;flex-direction:column;align-items:flex-end;font-size:11.5px;color:var(--muted);line-height:1.2}
.fz-yp-fans b{font-size:21px;font-weight:700;color:var(--text)}
.fz-empty h4{margin:0;font-size:18px;font-weight:700;letter-spacing:-.015em}
.fz-empty .mut{margin:-6px 0 0}
.fz-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.fz-stat{min-width:0;display:flex;flex-direction:column;gap:2px;padding:9px 10px;border-radius:12px;background:var(--surface2)}
.fz-stat b{font-size:18px;font-weight:700;line-height:1.2}
.fz-stat > span:last-child{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fz-chase{display:flex;flex-direction:column;gap:8px}
.fz-chase-line{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:12.5px;color:var(--muted)}
.fz-chase-line b{color:var(--text)}
.fz-track{position:relative;height:6px;margin:2px 7px 0;border-radius:3px;background:var(--surface2)}
.fz-fill{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:linear-gradient(90deg,var(--aSoft),var(--primary))}
.fz-me{position:absolute;top:50%;width:15px;height:15px;border-radius:50%;background:var(--primary);border:3px solid var(--surface);transform:translate(-50%,-50%)}
.fz-track-ends{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--muted)}
.fz-track-ends b{color:var(--text);font-weight:650}
.fz-actions,.fz-acts{display:flex;gap:8px;width:100%}
.fz-actions .bigbtn,.fz-acts .bigbtn{flex:1;height:44px;font-size:14px;min-width:0}
.bigbtn.soft{flex:1;border:1px solid var(--aLine);background:var(--tealSoft);color:var(--primary)}
.fz-picker{display:flex;flex-direction:column;gap:10px;border-top:1px dashed var(--line2);padding-top:12px}
.fz-picker-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}
.linkbtn.fz-danger{color:var(--loss);white-space:nowrap}
.fz-chips{display:flex;flex-wrap:wrap;gap:6px}
.fz-chip{height:36px;padding:0 12px 0 5px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);
  color:var(--text);display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;cursor:pointer}
.fz-chip .fz-av{width:26px;height:26px;font-size:9.5px}
.fz-chip-r{font-size:11.5px;font-weight:500;color:var(--faint)}
.fz-chip[aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:var(--onPrimary)}
.fz-chip[aria-pressed="true"] .fz-chip-r{color:var(--onPrimary);opacity:.8}
.fz-chip:disabled{opacity:.45;cursor:default}

.fz-clubs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:2px 16px 4px;scroll-snap-type:x proximity;scroll-padding-inline:16px}
.fz-clubs::-webkit-scrollbar{display:none}
.fz-club{flex:none;width:86px;padding:10px 6px 9px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--text);
  display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;scroll-snap-align:start}
.fz-club.mine{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}
.fz-club-n{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:650}
.fz-club-f{font-size:11.5px;color:var(--muted)}
.fz-club-r{font-size:10.5px;color:var(--faint)}

.fz-moment{padding:12px 13px 10px;display:flex;flex-direction:column;gap:6px}
.fz-m-top{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.fz-m-top .ico{width:28px;height:28px;border-radius:9px}
.fz-m-top .ico .ic{width:15px;height:15px}
.ico.w{background:var(--winSoft);color:var(--win)}
.fz-m-kind{font-size:12.5px;font-weight:700;color:var(--text)}
.fz-m-time{margin-left:auto}
.fz-moment h5{margin:0;font-size:15px;font-weight:700;letter-spacing:-.01em;line-height:1.3}
.fz-moment p{margin:0;font-size:13px;line-height:1.4;color:var(--muted)}
.fz-m-foot{display:flex;align-items:center;gap:8px;margin-top:3px}
.fz-m-foot .icon-btn{width:34px;height:34px}
.fz-rx{display:flex;flex-wrap:wrap;gap:6px;flex:1;min-width:0}
.fz-rx-btn{height:30px;min-width:38px;padding:0 9px;border-radius:999px;border:1px solid var(--line2);background:none;color:var(--muted);
  display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:12.5px;font-weight:600;cursor:pointer}
.fz-rx-btn .ic{width:15px;height:15px}
.fz-rx-btn[aria-pressed="true"]{background:var(--tealSoft);border-color:var(--primary);color:var(--primary)}
.fz-rx-btn[aria-busy="true"]{opacity:.7}
.fz-rx-btn:disabled{opacity:.5;cursor:default}
.fz-rx-btn .num:empty{display:none}
.fz-filters{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px}
.fz-filters::-webkit-scrollbar{display:none}
.fz-filters .fchip{flex:none}
.fz-night-h button{display:flex;align-items:center;gap:6px;width:100%;padding:2px 0;border:0;background:none;cursor:pointer;
  font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--muted)}
.fz-night-h button::after{content:"";flex:1;height:1px;background:var(--line);order:3}
.fz-night-h .ic{order:2;color:var(--faint)}
.fz-soon ul{list-style:none;margin:0;padding:0}
.fz-soon li{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:13.5px}
.fz-soon li + li{border-top:1px solid var(--line)}
.fz-soon li > span:nth-child(2){flex:1;min-width:0}
.fz-soon li > .ic{color:var(--faint)}
.fz-more{width:100%;flex:none}
.fz-end{text-align:center;margin:2px 0 0}

.fz-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:4px 0 0}
.fz-hero h3{margin:4px 0 0;font-size:27px;font-weight:800;letter-spacing:-.035em;line-height:1.1}
.fz-hero-meta{font-size:13px;color:var(--muted)}
.fz-hero-fans{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.fz-hero-fans b{color:var(--text)}
.fz-stack{display:flex}
.fz-stack .fz-av{margin-left:-6px;box-shadow:0 0 0 2px var(--bg)}
.fz-stack .fz-av:first-child{margin-left:0}
.fz-hero .fz-acts{margin-top:4px}
.fz-note{margin:0;font-size:12px;color:var(--muted)}
.fz-form{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}
.fz-form i{height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-style:normal;
  font-family:var(--app-mono);font-size:11px;font-weight:700;background:var(--surface2);color:var(--muted)}
.fz-form i.W{background:var(--winSoft);color:var(--win)}
.fz-form i.L{background:var(--lossSoft);color:var(--loss)}
.fz-night{display:flex;align-items:center;gap:12px}
.fz-night > b{font-size:24px;font-weight:700;letter-spacing:-.02em}
.fz-night > div{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.fz-night > div > .num{font-weight:700}
.fz-tags{display:flex;flex-wrap:wrap;gap:5px}
.fz-tags span{padding:3px 8px;border-radius:999px;background:var(--goldSoft);color:var(--gold);font-size:11.5px;font-weight:700}
.fz-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.fz-kv > div{display:flex;flex-direction:column;gap:2px;min-width:0}
.fz-kv b{font-size:16px;font-weight:700;overflow-wrap:anywhere}
.fz-kv span:not(.num){font-size:12px;color:var(--muted)}
.fz-kv b .num{font-size:14px;font-weight:600}
.fz-fan{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:13.5px}
.fz-fan + .fz-fan{border-top:1px solid var(--line)}
.fz-fan .fz-av{width:34px;height:34px;font-size:11.5px}
.fz-fan-n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-fan-link{align-self:flex-start;margin:-4px 2px 0;gap:6px}
/* Fan Zone live nights, Fans' pick, shout-outs (0035) */
.fz-ring.sm{width:40px;height:40px;padding:2px}
.fz-ring.sm > span{font-size:13px}
.fz-live{padding:13px 14px;display:flex;flex-direction:column;gap:10px}
.fz-live-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fz-live-top b{font-size:17px;font-weight:700;letter-spacing:-.015em}
.fz-live-top .mut{margin-left:auto}
.fz-stands{display:flex;align-items:center;gap:10px;border-top:1px dashed var(--line2);padding-top:10px}
.fz-stands-n{flex:1;min-width:0;font-size:13px;color:var(--muted)}
.fz-stands-n b{color:var(--text)}
.fz-mini{height:30px;padding:0 11px;border-radius:999px;border:1px solid var(--line2);background:none;color:var(--text);
  display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap}
.fz-mini[aria-pressed="true"]{background:var(--tealSoft);border-color:var(--aLine);color:var(--primary)}
.fz-setcard{padding:13px 14px;display:flex;flex-direction:column;gap:11px}
.fz-set-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.fz-tag{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:999px;background:var(--goldSoft);color:var(--gold);font-size:11.5px;font-weight:700}
.fz-vs{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:stretch}
.fz-side{min-width:0;display:flex;flex-direction:column;gap:3px;padding:9px 10px;border-radius:12px;background:var(--surface2)}
.fz-side.w{background:var(--winSoft)}
.fz-side span{font-size:13.5px;font-weight:650;line-height:1.25;overflow-wrap:anywhere}
.fz-side b{font-size:15px;font-weight:700}
.fz-vs-mid{align-self:center;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.fz-cheer{padding:13px 14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fz-cheer.live{flex-direction:column;align-items:stretch;gap:11px}
.fz-cheer-head{display:flex;align-items:center;gap:10px}
.fz-cheer-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.fz-cheer-copy b{font-size:15px}
.fz-cheer-copy span{font-size:12.5px;color:var(--muted)}
.fz-cheer-when{font-size:12px;color:var(--faint);text-align:right;line-height:1.3}
.fz-cheer .fz-cheer-btn{width:100%;flex:none;height:46px}
.fz-tonight{padding:12px 0 4px;display:flex;flex-direction:column}
.fz-tonight .fz-sec-h{padding:0 14px 6px}
.fz-trow{display:grid;grid-template-columns:auto minmax(0,1fr) 46px 58px;align-items:center;gap:8px;padding:7px 14px;font-size:13.5px}
.fz-trow + .fz-trow{border-top:1px solid var(--line)}
.fz-trow.me{background:var(--youRow)}
.fz-trow-n{min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fz-trow .num{text-align:right}
.fz-pickcta{display:flex;align-items:center;gap:12px;padding:12px;width:100%;text-align:left;cursor:pointer;color:var(--text);
  background:linear-gradient(120deg,var(--goldSoft),transparent 72%),var(--surface)}
.fz-award{width:40px;height:40px;border-radius:12px;background:var(--goldSoft);color:var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fz-award.lg{width:52px;height:52px;border-radius:16px}
.fz-award.lg .ic{width:26px;height:26px}
.fz-pick-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.fz-pick-copy b{font-size:14.5px}
.fz-pick-copy span{font-size:12.5px;color:var(--muted)}
.fz-go{height:32px;padding:0 13px;border-radius:10px;background:var(--gold);color:var(--surface);font-size:13px;font-weight:700;display:inline-flex;align-items:center}
.fz-pick-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}
.fz-pick-head h3{margin:0;font-size:24px;font-weight:750;letter-spacing:-.025em}
.fz-pick-head p{margin:0;font-size:14px;color:var(--muted)}
.fz-pick-meta{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--faint)}
.fz-official{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--surface2);font-size:13px;color:var(--muted)}
.fz-official .ic{color:var(--gold)}
.fz-official b{color:var(--text)}
.fz-opts{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;min-width:0}
.fz-opt{position:relative;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;
  border-radius:14px;border:1px solid var(--line);background:var(--surface);cursor:pointer;overflow:hidden}
.fz-opt input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.fz-opt-bar{position:absolute;left:0;top:0;bottom:0;background:var(--goldSoft);transition:width .45s ease}
.fz-radio,.fz-opt .fz-av,.fz-opt-copy,.fz-opt-res{position:relative}
.fz-radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--line2);display:flex;align-items:center;justify-content:center}
.fz-opt input:checked ~ .fz-radio{border-color:var(--gold)}
.fz-opt input:checked ~ .fz-radio::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--gold)}
.fz-opt input:focus-visible ~ .fz-radio{outline:2px solid var(--primary);outline-offset:2px}
.fz-opt.sel{border-color:var(--gold)}
.fz-opt.self{opacity:.6;cursor:default}
.fz-opt-copy{min-width:0;display:flex;flex-direction:column;gap:1px}
.fz-opt-copy b{font-size:14.5px}
.fz-opt-copy > span{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fz-opt-res{text-align:right;min-width:34px}
.fz-opt-res b{font-size:13px}
.fz-opt-res small{display:block;font-size:11px;color:var(--muted)}
.fz-voted{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;background:var(--goldSoft);font-size:13px}
.fz-voted .ic{color:var(--gold)}
.fz-opts ~ .fz-vote{width:100%;flex:none}
.fz-vote:disabled{opacity:.45;cursor:default}
.fz-center{text-align:center}
.fz-invite{padding:12px 13px;display:flex;align-items:center;gap:12px}
.fz-invite-ico{width:36px;height:36px;border-radius:11px;background:var(--tealSoft);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fz-invite-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.fz-invite-copy b{font-size:14px}
.fz-invite-copy span{font-size:12px;color:var(--muted);line-height:1.35}
.fz-invite .fz-invite-btn{flex:none;height:38px;padding:0 12px;font-size:13px}
.fz-shout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:10px 0}
.fz-shout + .fz-shout{border-top:1px solid var(--line)}
.fz-shout-body{min-width:0;display:flex;flex-direction:column;gap:3px}
.fz-shout-who{font-size:12.5px;font-weight:650}
.fz-shout-who time{font-weight:400;color:var(--faint);margin-left:6px}
.fz-shout-body p{margin:0;font-size:13.5px;line-height:1.4;overflow-wrap:anywhere}
.fz-shout-acts{display:flex;gap:12px}
.fz-shout-acts .linkbtn{font-size:12px}
.linkbtn.fz-quiet{color:var(--muted)}
.fz-reports{margin-left:8px;padding:1px 7px;border-radius:999px;background:var(--lossSoft);color:var(--loss);font-size:11px;font-weight:700}
.fz-hide-form{display:flex;align-items:center;gap:8px;margin-top:6px}
.fz-hide-form input,.fz-compose input{flex:1;min-width:0;height:40px;border-radius:12px;border:1px solid var(--line2);background:var(--surface2);color:var(--text);padding:0 12px;font-size:14px}
.fz-hide-form .bigbtn{flex:none;height:40px;padding:0 12px;font-size:13px}
.fz-compose-wrap{border-top:1px solid var(--line);padding-top:10px;display:flex;flex-direction:column;gap:6px}
.fz-compose{display:flex;gap:8px}
.fz-compose .bigbtn{flex:none;width:44px;height:40px;padding:0}
.fz-compose-meta{display:flex;justify-content:space-between;font-size:11.5px;color:var(--faint)}
.fz-manage{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:10px;font-size:13px;color:var(--muted)}
.tn-fans{display:flex;align-items:center;gap:8px;width:100%;padding:9px 11px;border-radius:12px;border:1px solid var(--aLine);background:var(--tealSoft);
  color:var(--text);font-size:12.5px;cursor:pointer;text-align:left}
.tn-fans .ic{color:var(--primary)}
.tn-fans b{font-size:13px}
.tn-sep{width:1px;height:16px;background:var(--line2)}
.set-rx{display:flex;align-items:center;gap:10px;margin-top:2px;padding-top:7px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.set-rx span{display:inline-flex;align-items:center;gap:3px}
.set-rx .ic{width:14px;height:14px}
.set-rx-who{margin-left:auto;color:var(--faint)}
.profile-fan-count{color:var(--muted);font-weight:500}
@media (max-width:380px){
  .fz-stats{gap:6px}
  .fz-stat{padding:8px 9px}
  .fz-stat b{font-size:16px}
  .fz-picker-foot{flex-direction:column;align-items:flex-start}
}

/* ── narrow phones ────────────────────────────────────────────────────── */
@media (max-width:380px){
  .wrap{padding:12px 12px}
  .trow{grid-template-columns:18px minmax(0,1fr) 46px 56px 58px;padding:0 10px}
  .rc-title{font-size:26px}
  .big{font-size:38px}
  .score .num{font-size:38px}
  .stats3{gap:6px}
  .stat{padding:9px 10px}
  .stat-v{font-size:18px}
  .player-choices .chip{padding:0 11px;font-size:13.5px}
  .more-drawer .tab{min-height:68px}
}
@media (max-width:359px){
  .hline{grid-template-columns:20px minmax(0,1fr) 112px 46px}
  .hline .hexp{display:none}
  .rec-pair{grid-template-columns:1fr}
  .rivals-table .drow{grid-template-columns:minmax(0,1fr) 56px 16px}
  .rival-split{display:none}
  .prow{grid-template-columns:26px minmax(0,1fr) 62px}
  .prow .spark{display:none}
  .tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
  .modes{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:330px){
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
