/* Hall of Fame page */
.wh { font-family: 'Space Mono', monospace; background: var(--paper); color: var(--ink); border: 2px solid var(--ink); overflow: hidden; }
.wh * { box-sizing: border-box; margin: 0; padding: 0; }

/* Header */
.wh-header { padding: 16px 20px 12px; border-bottom: 2px solid var(--ink); display: flex; align-items: flex-end; justify-content: space-between; }
.wh-title { font-family: 'Unbounded', sans-serif; font-weight: 900; font-size: 22px; letter-spacing: -1px; text-transform: uppercase; }
.wh-sub { font-size: 8px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--muted); margin-top: 4px; }

/* Divider */
.wh-divider { background: var(--gold); border-top: 2px solid var(--ink); border-bottom: 2px solid var(--ink); padding: 10px 16px; display: flex; align-items: center; gap: 12px; }
.wh-divider-rule { flex: 1; height: 1.5px; background: var(--ink); opacity: .3; }
.wh-divider-label { font-family: 'Unbounded', sans-serif; font-size: 10px; font-weight: 900; letter-spacing: 3px; text-transform: uppercase; color: var(--ink); white-space: nowrap; }

/* Desktop podium */
.wh-podium { display: grid; grid-template-columns: 1fr 1fr 1fr; border-bottom: 2px solid var(--ink); }
.wh-podium-slot { padding: 18px; border-right: 2px solid var(--ink); }
.wh-podium-slot:last-child { border-right: none; }
.wh-podium-slot.gold-s { background: var(--gold-bg); }
.wh-podium-rank { font-family: 'Unbounded', sans-serif; font-size: 32px; font-weight: 900; line-height: 1; margin-bottom: 6px; }
.wh-podium-rank.g { color: var(--gold); }
.wh-podium-rank.s { color: #8C8C8C; }
.wh-podium-rank.b { color: #A0522D; }
.wh-podium-name { font-family: 'Unbounded', sans-serif; font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: -0.5px; margin-bottom: 10px; }
.wh-podium-stat { font-size: 9px; margin-top: 5px; }
.wh-podium-stat-k { font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--muted); }
.wh-podium-stat-v { font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: 13px; }

/* Mobile podium cards */
.wh-podium-mobile { display: none; border-bottom: 2px solid var(--ink); }
.wh-pc { padding: 13px 14px; border-bottom: 1.5px solid var(--ink); display: flex; align-items: center; gap: 12px; }
.wh-pc:last-child { border-bottom: none; }
.wh-pc.gold-s { background: var(--gold-bg); }
.wh-pc-num { font-family: 'Unbounded', sans-serif; font-size: 26px; font-weight: 900; line-height: 1; width: 40px; flex-shrink: 0; }
.wh-pc-num.g { color: var(--gold); }
.wh-pc-num.s { color: #8C8C8C; }
.wh-pc-num.b { color: #A0522D; }
.wh-pc-info { flex: 1; }
.wh-pc-name { font-family: 'Unbounded', sans-serif; font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: -0.5px; }
.wh-pc-stats { display: flex; gap: 14px; margin-top: 4px; }
.wh-pc-stat-k { font-size: 8px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--muted); }
.wh-pc-stat-v { font-family: 'Unbounded', sans-serif; font-size: 12px; font-weight: 700; }

/* Leaderboard rows */
.wh-lb-head { background: var(--ink); padding: 8px 16px; display: flex; align-items: center; justify-content: space-between; }
.wh-lb-title { font-family: 'Unbounded', sans-serif; font-size: 9px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--lime); }
.wh-lb-sub { font-size: 8px; color: #666; letter-spacing: 1px; }
.wh-lb-row { padding: 11px 16px; border-bottom: 1px solid var(--mid); display: flex; align-items: center; gap: 10px; }
.wh-lb-row:last-child { border-bottom: none; }
.wh-lb-row:hover { background: var(--hover); }
.wh-lb-rank { font-family: 'Unbounded', sans-serif; font-size: 12px; font-weight: 700; color: var(--muted); width: 20px; flex-shrink: 0; }
.wh-lb-rank.g { color: var(--gold); }
.wh-lb-name { font-weight: 700; font-size: 13px; flex: 1; }
.wh-lb-wins { font-family: 'Unbounded', sans-serif; font-size: 14px; font-weight: 700; min-width: 24px; text-align: center; }
.wh-lb-bar-wrap { flex: 1; display: flex; align-items: center; gap: 6px; }
.wh-lb-bar { height: 5px; background: var(--green); border: 1px solid var(--ink); }
.wh-lb-total { font-family: 'Unbounded', sans-serif; font-size: 13px; font-weight: 700; color: var(--gold); min-width: 44px; text-align: right; }

/* Season section */
.wh-season-head { background: var(--ink); padding: 8px 16px; }
.wh-season-title { font-family: 'Unbounded', sans-serif; font-size: 9px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--lime); }

@media (max-width: 640px) {
    .wh-header { padding: 14px; }
    .wh-title { font-size: 18px; }
    .wh-podium { display: none; }
    .wh-podium-mobile { display: block; }
    .wh-lb-bar-wrap { display: none; }
    .wh-lb-wins { font-size: 13px; }
}