/* Scoped to rankings: preserve homepage masonry and card sizes. */
.rankings-page{padding-block:140px 80px;position:relative}
.rankings-intro{text-align:center;margin:0 auto 46px;max-width:700px}
.rankings-emblem{height:95px;display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:24px}
.rankings-emblem span{display:grid;place-items:center;width:57px;height:62px;border:1px solid #fff;border-radius:19px;background:linear-gradient(140deg,#ffffffd9,#eaeefa8c);box-shadow:0 2px 1px #fff inset,0 12px 28px #45598616;backdrop-filter:blur(16px);font-size:26px;color:#98a9d0;transform:rotate(-12deg)}
.rankings-emblem span:nth-child(2){width:78px;height:82px;color:#8d81b5;font-size:38px;transform:translateY(-8px);box-shadow:0 2px 1px #fff inset,0 17px 36px #66549b24}
.rankings-emblem span:last-child{transform:rotate(12deg);color:#baa577}
.rankings-intro h1{font-size:clamp(32px,4vw,46px);letter-spacing:-.045em;margin:0 0 14px;color:#2a3040}
.rankings-intro>p{font-size:15px;line-height:1.8;color:#747c8c;margin:0}
.rankings-schedule{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;font-size:11px;letter-spacing:.03em;color:#89909f}
.rankings-live-dot{width:5px;height:5px;background:#9aaec3;border-radius:50%}
.rankings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.leaderboard{--board-tint:157,135,209;min-width:0;display:flex;flex-direction:column;overflow:hidden;border-radius:25px;border:1px solid #ffffffef;background:linear-gradient(145deg,#ffffffb5,#ffffff69 65%,#eff2fa94);box-shadow:0 1px 0 #fff inset,0 -1px 0 #d8dfec80 inset,0 12px 35px #39476810,0 3px 9px #39476808;backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%);transition:box-shadow .25s,border-color .25s}
.leaderboard-stars{--board-tint:188,154,87}.leaderboard-popular{--board-tint:109,160,206}
.leaderboard:hover{border-color:#fff;box-shadow:0 1px 0 #fff inset,0 18px 40px #3947681b,0 4px 12px #3947680c}
.leaderboard-heading{position:relative;padding:27px 25px 21px;background:radial-gradient(ellipse at 85% 0%,rgba(var(--board-tint),.18),transparent 78%);border-bottom:1px solid #e2e6ee75}
.leaderboard-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.leaderboard-symbol{display:grid;place-items:center;width:44px;height:44px;font-size:27px;color:rgb(var(--board-tint));border-radius:14px;background:linear-gradient(135deg,#fff,rgba(var(--board-tint),.10));border:1px solid #fff;box-shadow:0 4px 10px rgba(var(--board-tint),.15)}
.leaderboard-edition{font-size:10px;font-weight:600;letter-spacing:.16em;color:rgba(var(--board-tint),1)}
.leaderboard-heading h2{font-size:22px;letter-spacing:-.035em;margin:0 0 10px;color:#32394a}
.leaderboard-heading p{font-size:11px;line-height:1.65;color:#858a99;margin:0;min-height:36px}
.leaderboard-metric{padding:17px 24px 8px;text-align:end;color:#9298a5;font-size:10px}
.leaderboard-list{list-style:none;margin:0;padding:0 12px 12px}
.leaderboard-list li{margin:0;padding:0}
.leaderboard-row{display:flex;align-items:center;gap:10px;min-height:67px;padding:10px 11px;border-radius:13px;text-decoration:none;color:#3e4658;transition:background .18s,box-shadow .18s}
.leaderboard-row:hover,.leaderboard-row:focus-visible{background:#fff9;box-shadow:0 3px 12px #38486909;outline:2px solid rgba(var(--board-tint),.25);outline-offset:-2px}
.leaderboard-rank{flex:0 0 19px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums;color:#9ea5b3}
.podium .leaderboard-rank{font-weight:700;color:rgb(var(--board-tint));font-size:17px}
.leaderboard-artwork{flex:0 0 32px;width:32px;height:32px;display:grid;place-items:center;overflow:hidden;border-radius:10px;border:1px solid #fff;background:linear-gradient(135deg,#fff,#f0f2f9);box-shadow:0 3px 8px #40517312}
.leaderboard-artwork .app-logo{max-width:24px;max-height:24px;width:24px;height:24px;object-fit:contain}
.leaderboard-artwork .app-initial{font-size:16px;color:rgb(var(--board-tint));font-weight:600}
.leaderboard-project{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.leaderboard-project strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.3}
.leaderboard-project small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#939aaa;direction:ltr;text-align:start}
.leaderboard-score{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap;color:#737e92;direction:ltr}
.leaderboard-footer{margin-top:auto;border-top:1px solid #e2e6ee80;padding:17px 24px;display:flex;flex-direction:column;gap:6px;min-height:64px;font-size:10px;line-height:1.5;color:#969ead}
.leaderboard-period{font-variant-numeric:tabular-nums;direction:ltr}
.leaderboard-empty{min-height:300px;display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;padding:30px;color:#969ead;text-align:center;font-size:12px;line-height:1.8}
.leaderboard-empty>span{font-size:32px;color:rgba(var(--board-tint),.6)}
.rankings-switch{display:none}
@media(min-width:761px) and (max-width:1100px){.rankings-grid{gap:14px}.leaderboard-heading{padding-inline:20px}.leaderboard-artwork{display:none}.leaderboard-row{gap:8px;padding-inline:7px}.leaderboard-list{padding-inline:8px}.leaderboard-score{font-size:11px}}
@media(max-width:760px){.rankings-page{padding-block:112px 45px}.rankings-intro{margin-bottom:28px}.rankings-emblem{transform:scale(.85);margin-bottom:8px}.rankings-grid{grid-template-columns:1fr;gap:22px;max-width:480px;margin:auto}.rankings-switch{display:flex;gap:4px;margin:0 auto 23px;padding:5px;max-width:480px;border:1px solid #fff;border-radius:19px;background:#ffffff70;backdrop-filter:blur(18px);box-shadow:0 5px 17px #384b7410}.rankings-switch a{flex:1;padding:12px 5px;text-align:center;text-decoration:none;font-size:12px;border-radius:14px;color:#858c9b}.rankings-switch a.active{color:#444b63;background:linear-gradient(150deg,#fff,#f3f5faa6);box-shadow:0 1px 0 #fff inset,0 3px 7px #36456713}.rankings-enhanced .leaderboard[hidden]{display:none}.leaderboard-heading p{min-height:0}.leaderboard-row{min-height:66px}.rankings-schedule{font-size:10px}.leaderboard-heading{padding-top:24px}}
@media(prefers-reduced-motion:reduce){.leaderboard,.leaderboard-row{transition:none}}
