/* Ranking reuses the approved account shell/buttons; no new visual system. */
.ranking-page { min-width:0; }
.ranking-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.ranking-tabs .br-btn { min-width:0; min-height:48px; white-space:normal; }
.ranking-tabs [aria-pressed="true"] { border-color:var(--br-gold); color:var(--br-gold); box-shadow:inset 0 -3px 0 var(--br-gold); text-decoration:underline; text-underline-offset:4px; }
.ranking-note { margin:16px 0; color:var(--br-text-muted); font-size:.85rem; }
.ranking-empty { padding:24px 8px; text-align:center; color:var(--br-gold); }
.ranking-table { width:100%; table-layout:fixed; border-collapse:collapse; font-variant-numeric:tabular-nums; }
.ranking-table th,.ranking-table td { padding:12px 8px; border-bottom:1px solid #526153; text-align:left; overflow-wrap:anywhere; }
.ranking-table th { color:var(--br-gold); font-size:.85rem; }
.ranking-table th:first-child { width:14%; }
.ranking-table th:nth-child(2) { width:28%; }
.ranking-table th:nth-child(3) { width:36%; }
.ranking-table th:nth-child(4) { width:22%; }
.ranking-table [data-is-me="true"] { background:#26392b; outline:2px solid var(--br-gold); outline-offset:-2px; }
.ranking-personal { margin-top:20px; overflow-wrap:anywhere; }
.ranking-personal h2 { font-size:1rem; color:var(--br-gold); }
.ranking-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px; margin-top:20px; }
.ranking-actions .br-btn { min-height:44px; white-space:nowrap; }
@media(max-width:767.98px) {
 .ranking-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .ranking-table th,.ranking-table td { padding:10px 4px; font-size:.78rem; }
 .ranking-actions { gap:8px; }
}
