/* ================================================================
   rankings.php — pro leaderboard

   Loaded alongside css/athletes.css, which supplies .results-table,
   .row-link, .ranking-note, .col-num, .delta-up/.delta-down and the
   page wrappers. Only the leaderboard-specific pieces live here.
   ================================================================ */

/* ── Sort / season controls ── */
.rank-controls {
    display: flex; flex-wrap: wrap; gap: 14px 32px;
    align-items: center; margin-bottom: 20px;
}
.rank-control-group { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.rank-control-label {
    font-size: 0.68rem; text-transform: uppercase; letter-spacing: 1px;
    color: var(--ink-soft); font-weight: 600;
}
.rank-tab {
    font-size: 0.8rem; font-weight: 600; color: var(--ink-mid);
    text-decoration: none; padding: 6px 13px; border-radius: var(--radius);
    border: 1px solid var(--rule-mid); transition: background 0.12s, color 0.12s;
}
.rank-tab:hover { background: var(--card-bg2); color: var(--ink); }
.rank-tab.active {
    background: var(--gold-lt); border-color: var(--gold);
    color: var(--gold-bright);
}
/* The division row can run to seven or more entries once every division has a
   rated board, so it gets the full width rather than sharing a line with the
   tier and class groups. */
.rank-control-group-wide { flex-basis: 100%; }

/* ── Table ── */
.rank-table { min-width: 780px; }
.rank-table .col-rank {
    width: 52px; text-align: right; padding-right: 14px;
    font-variant-numeric: tabular-nums; color: var(--ink-soft);
}
.rank-table .rank-rating {
    font-family: var(--font-display); font-weight: 700;
    font-size: 1.1rem; color: var(--gold-bright);
}

/* Top three get a tint rather than a medal colour per row — the medal
   columns already carry that meaning, and three coloured rows plus three
   coloured columns is too much. */
.rank-table tr.rank-top td { background: rgba(201,168,76,0.05); }
.rank-table tr.rank-top-1 td { background: rgba(201,168,76,0.12); }
.rank-table tr.rank-top .col-rank { color: var(--gold); font-weight: 700; }

/* Provisional marker — a rating that hasn't settled yet. Quiet on purpose:
   these athletes are ranked normally, the badge is a caveat not a demotion. */
.rank-prov {
    font-size: 0.6rem; font-weight: 600; text-transform: uppercase;
    letter-spacing: 0.6px; color: var(--ink-soft);
    border: 1px solid var(--rule-mid); border-radius: 3px;
    padding: 1px 5px; margin-left: 6px; vertical-align: middle;
    white-space: nowrap;
}

@media (max-width: 860px) {
    .rank-controls { gap: 10px 18px; }
}
