/* ── Season detail page ───────────────────────────────────── */
.sd-info-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
    align-items: center;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 1.2rem 1.6rem;
    margin-bottom: 2rem;
}
.sd-title { flex: 1 1 200px; }
.sd-title h1 { font-size: 1.6rem; margin-bottom: .25rem; }
.sd-title .sd-sub { color: var(--text-dim); font-size: .85rem; }

.sd-meta { display: flex; flex-wrap: wrap; gap: .8rem; }
.sd-stat {
    background: rgba(0,0,0,.3);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: .55rem 1rem;
    text-align: center;
    min-width: 90px;
}
.sd-stat-num { display: block; font-size: 1.1rem; font-weight: 700; color: var(--accent); }
.sd-stat-lbl { display: block; font-size: .68rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: .06em; }

/* Status badge */
.sd-badge {
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: .3rem .85rem;
    border-radius: 20px;
}
.sd-badge.active  { background: var(--accent-green); color: #000; }
.sd-badge.ended   { background: rgba(255,255,255,.12); color: var(--text-dim); }
.sd-badge.upcoming { background: var(--accent); color: #000; }

/* Live notice */
.live-notice {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    background: rgba(0,255,136,.08);
    border: 1px solid rgba(0,255,136,.25);
    border-radius: var(--radius);
    padding: .45rem 1rem;
    font-size: .82rem;
    color: var(--accent-green);
    margin-bottom: 1.2rem;
}
.live-dot {
    width: 8px; height: 8px;
    background: var(--accent-green);
    border-radius: 50%;
    animation: pulse-live 1.4s infinite;
}
@keyframes pulse-live {
    0%, 100% { opacity: 1; }
    50%       { opacity: .3; }
}

/* Ranking table extensions */
.tier-cell { text-align: center; font-size: 1rem; }
.snapshot-badge {
    display: inline-block;
    font-size: .65rem;
    padding: .15rem .5rem;
    border-radius: 10px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.snapshot-badge.champion { background: rgba(255,215,0,.2);  color: var(--accent-gold); }
.snapshot-badge.elite    { background: rgba(0,240,255,.12); color: var(--accent); }
.snapshot-badge.veteran  { background: rgba(192,192,192,.12); color: var(--accent-silver); }
.snapshot-badge.participant { display: none; }

.podium-row-1 td { background: rgba(255,215,0,.04); }
.podium-row-2 td { background: rgba(192,192,192,.03); }
.podium-row-3 td { background: rgba(205,127,50,.03); }

.back-link {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    color: var(--text-dim);
    font-size: .88rem;
    margin-bottom: 1.5rem;
    transition: color var(--transition);
}
.back-link:hover { color: var(--accent); }
