/* Ranks / Leaderboard UX (v1) */
body.modern-v2 #leaderboard-screen {
    align-items: stretch;
    overflow-y: auto;
}

body.modern-v2 #leaderboard-screen .onboarding-container {
    width: min(900px, 94vw);
    margin: 16px auto 90px;
}

body.modern-v2 .your-rank-banner {
    display: grid;
    gap: 10px;
    padding: 16px;
    border-radius: 16px;
    border: 1px solid rgba(148, 199, 248, 0.42) !important;
    background: linear-gradient(145deg, rgba(20, 33, 52, 0.94), rgba(15, 25, 39, 0.96)) !important;
    box-shadow: 0 16px 30px rgba(0, 0, 0, 0.34);
}

body.modern-v2 .your-rank-banner h3 {
    margin: 0;
    text-align: left;
    color: #d9edff !important;
    opacity: 0.95;
    letter-spacing: 0.8px;
}

body.modern-v2 .rank-stat-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(120px, 1fr));
    gap: 8px;
}

body.modern-v2 .rank-stat {
    border: 1px solid rgba(143, 194, 243, 0.32);
    border-radius: 12px;
    padding: 9px 10px;
    background: rgba(255, 255, 255, 0.05);
}

body.modern-v2 .rank-stat small {
    font-size: 0.68rem;
    opacity: 0.72;
    letter-spacing: 0.5px;
    color: #b8cce7 !important;
}

body.modern-v2 .rank-stat b {
    font-size: 1.2rem;
    color: #f5fbff !important;
}

body.modern-v2 .leaderboard-list {
    margin-top: 14px;
    gap: 10px;
}

body.modern-v2 .leader-item {
    border: 1px solid rgba(145, 195, 246, 0.25);
    border-radius: 14px;
    background: linear-gradient(145deg, rgba(20, 33, 52, 0.9), rgba(14, 25, 40, 0.92));
    transition: transform 130ms ease, border-color 130ms ease;
}

body.modern-v2 .leader-item:hover {
    transform: translateY(-1px);
    border-color: rgba(149, 206, 255, 0.55);
}

body.modern-v2 .leader-item.user-me {
    border-color: rgba(80, 220, 255, 0.78);
    background: linear-gradient(145deg, rgba(31, 75, 108, 0.55), rgba(18, 44, 67, 0.7));
}

body.modern-v2 .leader-rank {
    min-width: 56px;
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(145deg, #19324f, #13273f);
    border: 1px solid rgba(146, 199, 249, 0.34);
    color: #d7eeff !important;
}

body.modern-v2 .leader-item:nth-child(1) .leader-rank {
    background: linear-gradient(145deg, #ffce61, #f0a94d);
    color: #1a1410 !important;
}

body.modern-v2 .leader-item:nth-child(2) .leader-rank {
    background: linear-gradient(145deg, #d9e1ea, #bac8d7);
    color: #121920 !important;
}

body.modern-v2 .leader-item:nth-child(3) .leader-rank {
    background: linear-gradient(145deg, #f2b587, #d98a51);
    color: #24130a !important;
}

body.modern-v2 .leader-name {
    color: #edf7ff !important;
}

body.modern-v2 .leader-score {
    color: #98ffca !important;
    font-size: 1.06rem;
}

