/* Ranking global (PC): linhas mais ricas, com andar, fase do treinador e barra de progresso até o topo. */
html:not(.battlemon-mobile) .leaderboard-card { background: radial-gradient(80% 40% at 0% 0%, #fbbf2418, transparent 70%), linear-gradient(180deg, #11203a, #0a1424); border-color: #3a4a6a; }
html:not(.battlemon-mobile) .leaderboard-table-header,
html:not(.battlemon-mobile) .leaderboard-row { grid-template-columns: 3.6rem minmax(0, 1fr) 11.5rem 6.25rem; column-gap: .6rem; }
html:not(.battlemon-mobile) .leaderboard-table-header { padding: 0 .8rem; color: #7d93b2; letter-spacing: .1em; }
html:not(.battlemon-mobile) .leaderboard-list { gap: .45rem; max-height: min(24rem, 52dvh); padding-right: .3rem; scrollbar-width: thin; scrollbar-color: #4a6a9a #0b1527; }
html:not(.battlemon-mobile) .leaderboard-row { --lb: #475569; position: relative; min-height: 3.5rem; padding: .3rem .8rem .3rem .4rem; overflow: hidden; border: 1px solid color-mix(in srgb, var(--lb) 40%, #1b2a44); border-radius: .75rem; background: linear-gradient(90deg, color-mix(in srgb, var(--lb) 12%, #0e1a30), #0b1527 65%); box-shadow: inset 3px 0 0 var(--lb); transition: transform .18s, border-color .2s, box-shadow .2s; }
html:not(.battlemon-mobile) .leaderboard-row:hover { transform: translateX(2px); border-color: color-mix(in srgb, var(--lb) 80%, #fff); background: linear-gradient(90deg, color-mix(in srgb, var(--lb) 18%, #12203a), #0e1a30 65%); }
html:not(.battlemon-mobile) .leaderboard-row.gold { --lb: #fbbf24; box-shadow: inset 3px 0 0 var(--lb), 0 0 1rem #fbbf2422; }
html:not(.battlemon-mobile) .leaderboard-row.silver { --lb: #cbd5e1; }
html:not(.battlemon-mobile) .leaderboard-row.bronze { --lb: #f59e0b; }
html:not(.battlemon-mobile) .leaderboard-row.self { --lb: #38bdf8; box-shadow: inset 3px 0 0 var(--lb), 0 0 1rem #38bdf822; }
html:not(.battlemon-mobile) .leaderboard-row.gold::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(105deg, transparent 40%, #ffffff18 50%, transparent 60%); transform: translateX(-120%); animation: lbShine 5s ease-in-out infinite; }
@keyframes lbShine { 0%, 55% { transform: translateX(-120%); } 90%, 100% { transform: translateX(120%); } }
html:not(.battlemon-mobile) .lb-rank-badge { justify-content: center; border-right: 0; color: var(--lb); font-size: 1rem; text-shadow: 0 0 .7rem color-mix(in srgb, var(--lb) 60%, transparent); }
html:not(.battlemon-mobile) .leaderboard-row:is(.gold, .silver, .bronze) .lb-rank-badge { font-size: 1.1rem; }
html:not(.battlemon-mobile) .lb-trainer-cell img { transform: none; width: 2.5rem; height: 2.5rem; padding: .1rem; border-radius: .7rem; background: radial-gradient(circle at 50% 30%, #23406b, #0c1626); border: 1px solid color-mix(in srgb, var(--lb) 50%, #1b2a44); image-rendering: pixelated; }
html:not(.battlemon-mobile) .lb-trainer-cell strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #fff; font: 800 .82rem var(--font-pixel-ui); }
html:not(.battlemon-mobile) .lb-progress { display: grid; gap: .3rem; text-align: left; color: inherit; }
html:not(.battlemon-mobile) .lb-progress-top { display: flex; align-items: baseline; justify-content: space-between; gap: .4rem; }
html:not(.battlemon-mobile) .lb-progress b { color: #fde68a; font: 800 .74rem var(--font-pixel-ui); letter-spacing: .04em; }
html:not(.battlemon-mobile) .lb-progress em { color: #7dd3fc; font: 800 .56rem var(--font-pixel-ui); font-style: normal; letter-spacing: .05em; }
html:not(.battlemon-mobile) .lb-progress-bar { display: block; height: .35rem; overflow: hidden; border-radius: 1rem; background: #0b1527; border: 1px solid #22324d; }
html:not(.battlemon-mobile) .lb-progress-bar u { display: block; height: 100%; text-decoration: none; border-radius: inherit; background: linear-gradient(90deg, #34d399, #fde047); box-shadow: 0 0 .5rem #fde04766; }
html:not(.battlemon-mobile) .lb-team-tooltip-trigger { border-radius: .55rem; background: #38bdf816; transition: background .2s, box-shadow .2s; }
html:not(.battlemon-mobile) .lb-team-tooltip-trigger:hover { box-shadow: 0 0 .8rem #38bdf855; }
@media (prefers-reduced-motion: reduce) { .leaderboard-row.gold::after { animation: none; } }