.v3-leaderboard-toggle,.v3-leaderboard__close { box-sizing:border-box; display:grid; place-items:center; width:48px; height:48px; flex-shrink:0; padding:0; border:0; border-radius:50%; -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px); cursor:pointer; transition:transform 220ms cubic-bezier(.22,1,.36,1),background-color 200ms ease,box-shadow 220ms ease,opacity 200ms ease; -webkit-tap-highlight-color:transparent; }
.v3-leaderboard-toggle { position:fixed; z-index:6; background:var(--v3-control-surface); color:var(--v3-ink); box-shadow:0 3px 16px #00000008,inset 0 1px 0 var(--v3-control-rim); }
.v3-leaderboard__close { background:var(--v3-control-surface); color:var(--v3-ink); box-shadow:0 3px 16px #00000008,inset 0 1px 0 #ffffff2e; }
.v3-leaderboard-toggle svg { width:24px; height:24px; }
.v3-leaderboard-toggle { display:inline-flex; justify-content:center; align-items:center; gap:9px; width:auto; height:48px; padding:0 24px 0 14px; border-radius:999px; font:500 15px/1 'DM Sans',sans-serif; font-optical-sizing:none; font-variation-settings:'opsz' 14; }
.v3-avatar-dialog[open] .v3-leaderboard-toggle { animation:v3-hide-in 460ms cubic-bezier(.22,1,.36,1) both; }
.v3-avatar-dialog[data-leaderboard-open] :is(.v3-leaderboard-toggle,.v3-avatar-hide) { visibility:hidden; }
.v3-leaderboard-toggle:focus-visible { outline:2px solid var(--v3-focus); outline-offset:5px; }
@media(hover:hover) and (pointer:fine){.v3-leaderboard-toggle:hover,.v3-leaderboard__close:hover { transform:scale(1.14); box-shadow:0 8px 26px #0000002e,inset 0 1px 0 #fff; } .v3-leaderboard-toggle:hover { background:var(--v3-control-hover); } .v3-leaderboard__close:hover { background:var(--v3-control-hover); } .v3-leaderboard__close:hover svg { transform:rotate(90deg) scale(1.08); }}
.v3-leaderboard-toggle:active,.v3-leaderboard__close:active { transform:scale(.92); }
.v3-leaderboard { --league-header-height:35px; --league-line:color-mix(in srgb,var(--v3-game-score-warm) 12%,transparent); color:var(--v3-ink); background:radial-gradient(ellipse at 10% 0%,color-mix(in srgb,var(--v3-game-score-warm) 14%,transparent),transparent 68%),rgb(var(--v3-game-shade) / .9); box-sizing:border-box; width:min(520px,calc(100% - 32px)); height:min(760px,calc(100dvh - 32px)); max-height:calc(100dvh - 32px); padding:0; border:1px solid #ffffff24; border-radius:32px; box-shadow:0 24px 80px #0006,inset 0 1px 0 #ffffff2e,inset 0 -1px 0 #0004; -webkit-backdrop-filter:blur(24px); backdrop-filter:blur(24px); overflow:hidden; font:400 14px/1.4 'DM Sans',sans-serif; }
.v3-leaderboard * { box-sizing:border-box; }
.v3-leaderboard[open] { display:flex; flex-direction:column; }
.v3-leaderboard::backdrop { background:rgb(var(--v3-game-shade) / .46); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); }
.v3-leaderboard__header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:24px 24px 0; flex-shrink:0; }
.v3-leaderboard__heading { display:flex; align-items:center; gap:13px; min-width:0; }
.v3-leaderboard__emblem { display:grid; place-items:center; flex-shrink:0; width:46px; height:46px; border:1px solid #ffffff1a; border-radius:16px; background:var(--v3-control-surface); color:var(--v3-game-score-warm); }
.v3-leaderboard__emblem svg { width:25px; height:25px; }
.v3-leaderboard__eyebrow { margin:0 0 2px; color:var(--v3-muted); font-size:9px; font-weight:700; letter-spacing:.17em; }
.v3-leaderboard h2 { margin:0; font:700 28px/1.15 'DM Sans',sans-serif; letter-spacing:-.04em; white-space:nowrap; }
.v3-leaderboard__close svg { width:24px; height:24px; transition:transform 320ms cubic-bezier(.22,1,.36,1); }
.v3-leaderboard__intro { padding:18px 24px 20px; flex-shrink:0; }
.v3-leaderboard__intro p { margin:0; font-size:12px; color:var(--v3-muted); }
.v3-leaderboard__scroll { min-height:0; flex:1; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:var(--v3-control-hover) transparent; }
.v3-leaderboard table { width:100%; table-layout:fixed; border-spacing:0; border-collapse:separate; }
.v3-leaderboard thead { position:sticky; top:0; z-index:2; background:color-mix(in srgb,rgb(var(--v3-game-shade)),var(--v3-game-score-warm) 12%); }
.v3-leaderboard th { height:var(--league-header-height); padding:0 6px; border-block:1px solid var(--league-line); color:var(--v3-muted); font-size:9px; font-weight:600; letter-spacing:.1em; text-align:left; }
.v3-leaderboard th:first-child { width:38px; padding-left:20px; text-align:center; }
.v3-leaderboard th:last-child { width:136px; padding-right:24px; text-align:right; }
.v3-leaderboard td { height:65px; padding:0 6px; border-bottom:1px solid var(--league-line); }
.v3-leaderboard__rank { padding-left:20px!important; color:var(--v3-muted); font-size:12px; text-align:center; font-variant-numeric:tabular-nums; }
.v3-leaderboard tr:not([data-you]) .v3-leaderboard__rank:is([aria-label="Rank 1"],[aria-label="Rank 2"],[aria-label="Rank 3"]) { font-size:18px; }
.v3-leaderboard__profile { display:flex; align-items:center; gap:11px; min-width:0; }
.v3-leaderboard__avatar { display:grid; place-items:center; flex:0 0 35px; width:35px; height:35px; border:1px solid #ffffff12; border-radius:50%; background:var(--avatar-surface,#49405a); color:var(--avatar-ink,#e2d1ef); font-size:10px; font-weight:600; letter-spacing:-.02em; }
.v3-leaderboard tr:nth-child(6n+2) { --avatar-surface:#51404c; --avatar-ink:#ebcbd8; }
.v3-leaderboard tr:nth-child(6n+3) { --avatar-surface:#35494b; --avatar-ink:#c5ded9; }
.v3-leaderboard tr:nth-child(6n+4) { --avatar-surface:#4c443b; --avatar-ink:#e7d7bd; }
.v3-leaderboard tr:nth-child(6n+5) { --avatar-surface:#3a435a; --avatar-ink:#ccd8f0; }
.v3-leaderboard tr:nth-child(6n+6) { --avatar-surface:#424a3c; --avatar-ink:#d5dfc4; }
.v3-leaderboard__profile strong { min-width:0; overflow-wrap:anywhere; font-size:12px; line-height:1.2; font-weight:600; }
.v3-leaderboard__level { display:block; margin-top:2px; color:var(--v3-muted); font-size:10px; font-weight:400; }
.v3-leaderboard__score { display:grid; grid-template-columns:minmax(0,1fr) 28px; align-items:center; gap:7px; padding-right:18px; font-size:12px; font-weight:600; font-variant-numeric:tabular-nums; text-align:right; }
.v3-leaderboard__score-value { overflow-wrap:anywhere; }
.v3-leaderboard__score img { object-fit:contain; }
.v3-leaderboard tr[data-you] { position:sticky; top:var(--league-header-height); z-index:1; background:color-mix(in srgb,rgb(var(--v3-game-shade)),var(--v3-game-score-warm) 16%); }
.v3-leaderboard tr[data-you] td:first-child { box-shadow:inset 3px 0 var(--v3-game-score-warm); }
.v3-leaderboard tr[data-you] .v3-leaderboard__rank { color:var(--v3-game-score-warm); font-weight:700; }
.v3-leaderboard tr[data-you] .v3-leaderboard__avatar { background:color-mix(in srgb,var(--v3-game-score-warm) 15%,transparent); color:var(--v3-game-score-warm); border-color:var(--league-line); }
.v3-leaderboard,.v3-leaderboard button,.v3-leaderboard h2 { font-optical-sizing:none; font-variation-settings:'opsz' 14; }
.v3-leaderboard h2:focus { outline:none; }
.v3-leaderboard :is(button,[tabindex="0"]):focus-visible { outline:2px solid var(--v3-focus); outline-offset:-3px; }
@media(max-width:359px){.v3-leaderboard__header{gap:8px;padding:20px 16px 0}.v3-leaderboard__heading{gap:10px}.v3-leaderboard__emblem{width:36px;height:36px;border-radius:14px}.v3-leaderboard__emblem svg{width:22px;height:22px}.v3-leaderboard__intro{padding-inline:18px}.v3-leaderboard th:first-child{width:28px;padding-left:12px}.v3-leaderboard__rank{padding-left:12px!important}.v3-leaderboard th:last-child{width:122px;padding-right:16px}.v3-leaderboard__score{padding-right:10px;font-size:11px;gap:4px}.v3-leaderboard__profile{gap:7px}.v3-leaderboard__avatar{flex-basis:29px;width:29px;height:29px}.v3-leaderboard__profile strong{font-size:11px}}
@media(prefers-reduced-motion:reduce){.v3-leaderboard-toggle,.v3-leaderboard__close,.v3-leaderboard__close svg{transition:none}.v3-avatar-dialog[open] .v3-leaderboard-toggle{animation:none}.v3-leaderboard__close:hover svg{transform:none}}

.v3-leaderboard__status:not(:empty) { margin-top:6px; }
.v3-leaderboard__country { display:block; margin-top:2px; color:var(--v3-muted); font-size:10px; line-height:1.25; overflow-wrap:anywhere; }
.v3-leaderboard__share { flex:none; min-height:30px; margin-left:auto; padding:0 10px; border:0; border-radius:999px; background:var(--v3-control-surface); color:var(--v3-ink); font:600 11px/1 'DM Sans',sans-serif; white-space:nowrap; cursor:pointer; }
.v3-leaderboard__share:hover { background:var(--v3-control-hover); }
@media(max-width:359px) {
  .v3-leaderboard th:last-child { width:112px; }
  .v3-leaderboard__share { padding-inline:7px; font-size:10px; }
}
.v3-league-challenge { position:fixed; left:50%; translate:-50% 0; top:max(105px,calc(env(safe-area-inset-top) + 98px)); z-index:6; width:min(300px,calc(100% - 14px)); }
