.postseason-content {
    color: var(--ranking-text);
    margin: 3rem auto 4rem;
    max-width: 1360px;
}

.postseason-page .postseason-filter-row {
    justify-content: flex-end;
}

.postseason-page h2[id^='postseason-years-'] {
    scroll-margin-top: 9rem;
}

.postseason-section + .postseason-section {
    margin-top: 3rem;
}

.postseason-section h2 {
    color: var(--ranking-text);
    font-size: 1.2rem;
    font-weight: 850;
    margin: 0 0 1rem;
}

.postseason-note {
    color: var(--ranking-muted);
    font-size: 0.8rem;
    margin: -0.3rem 0 1rem;
}

.postseason-tabs {
    border-bottom: 1px solid var(--ranking-border-strong);
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1.75rem;
}

.postseason-tabs button {
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    color: var(--ranking-muted);
    font-size: 0.9rem;
    font-weight: 800;
    min-height: 44px;
    padding: 0.7rem 1.1rem;
}

.postseason-tabs button[aria-selected='true'] {
    border-bottom-color: var(--ranking-brand);
    color: var(--ranking-brand);
}

.postseason-page [role='tabpanel'][hidden],
.postseason-page tbody[hidden],
.postseason-page tr[hidden] {
    display: none;
}

.postseason-table-wrap {
    background: var(--ranking-surface);
    border: 1px solid var(--ranking-border);
    border-radius: 6px;
    overflow-x: auto;
}

.postseason-page table.postseason-table {
    background: var(--ranking-surface);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 0;
    box-shadow: none;
    font-size: 0.82rem;
    font-variant-numeric: tabular-nums;
    margin: 0;
    min-width: 680px;
    overflow: visible;
    width: 100%;
}

.postseason-table th,
.postseason-table td {
    border-bottom: 1px solid var(--ranking-border);
    color: var(--ranking-text);
    padding: 0.7rem 0.85rem;
    text-align: right;
    vertical-align: middle;
    white-space: nowrap;
}

.postseason-table thead th {
    background: var(--ranking-head);
    color: var(--white);
    font-size: 0.75rem;
    font-weight: 800;
    padding: 0;
    text-align: center;
}

.postseason-table thead th:not(:has(button)) {
    padding: 0.9rem 0.85rem;
}

.postseason-table tbody th {
    background: var(--ranking-surface);
}

.postseason-table tbody tr:nth-child(even) > * {
    background: var(--ranking-row-alt);
}

.postseason-page .postseason-cs-years tbody tr > * {
    background: var(--ranking-surface);
}

.postseason-page .postseason-cs-years tbody.is-alt tr > * {
    background: var(--ranking-row-alt);
}

.postseason-table tbody:last-child tr:last-child > * {
    border-bottom: 0;
}

.postseason-table thead th:first-child,
.postseason-table tbody th:first-child {
    left: 0;
    position: sticky;
    z-index: 1;
}

.postseason-table thead th:first-child {
    z-index: 2;
}

.postseason-table .postseason-team {
    text-align: left;
}

#postseason-league-totals td {
    text-align: center;
}

.postseason-table .postseason-year,
.postseason-table .postseason-stage,
.postseason-table .postseason-score,
.postseason-table .postseason-draw {
    text-align: center;
}

.postseason-year {
    min-width: 78px;
}

.postseason-table a {
    color: inherit;
    text-decoration: none;
}

.postseason-table a:hover {
    color: var(--ranking-brand);
}

.postseason-winner {
    font-weight: 800;
}

.postseason-name-short {
    display: none;
}

.postseason-table [data-postseason-sort] {
    background: transparent;
    border: 0;
    color: inherit;
    font: inherit;
    min-height: 44px;
    padding: 0.85rem;
    width: 100%;
}

.postseason-table [data-postseason-sort]::after {
    content: ' ↕';
}

.postseason-table [aria-sort='ascending'] button::after {
    content: ' ↑';
}

.postseason-table [aria-sort='descending'] button::after {
    content: ' ↓';
}

.postseason-section-heading {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.postseason-section-heading h2 {
    margin: 0;
}

.postseason-decade {
    align-items: center;
    display: flex;
    font-size: 0.85rem;
    gap: 0.6rem;
}

.postseason-decade select {
    background: var(--ranking-surface);
    border: 1px solid var(--ranking-border-strong);
    border-radius: 4px;
    color: var(--ranking-text);
    min-height: 44px;
    padding: 0.4rem 1.8rem 0.4rem 0.7rem;
}

.postseason-defunct {
    margin-top: 1.2rem;
}

.postseason-defunct summary {
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 800;
    min-height: 44px;
    padding: 0.7rem 0;
}

.postseason-empty {
    text-align: left;
}

@media (max-width: 767px) {
    .postseason-page h2[id^='postseason-years-'] {
        scroll-margin-top: 6rem;
    }

    .postseason-content {
        margin-top: 2rem;
    }

    .postseason-section + .postseason-section {
        margin-top: 2.25rem;
    }

    .postseason-name-full {
        display: none;
    }

    .postseason-name-short {
        display: inline;
    }

    .postseason-table .postseason-team {
        min-width: 112px;
    }

    .postseason-table th,
    .postseason-table td {
        padding: 0.65rem 0.7rem;
    }
}
