.release-page {
    background-color: var(--body-bg);
}

.release-header {
    padding: 132px 0 72px;
}

.release-header-content {
    max-width: 840px;
    margin: 0 auto;
}

.release-back-link {
    display: inline-flex;
    align-items: center;
    gap: var(--space-sm);
    margin-bottom: var(--space-xl);
    color: var(--body-fg);
    font-size: 0.875rem;
    font-weight: var(--font-weight-semibold);
}

.release-back-link:hover {
    color: var(--c-hashtag);
}

.release-kicker {
    margin: 0 0 var(--space-sm);
    color: var(--c-hashtag);
    font-size: 0.75rem;
    font-weight: var(--font-weight-bold);
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.release-title {
    margin-bottom: var(--space-sm);
    font-size: clamp(2.4rem, 5vw, 3.5rem);
}

.release-name {
    margin: 0 0 var(--space-md);
    color: var(--body-fg);
    font-size: clamp(1.2rem, 2.5vw, 1.6rem);
    font-weight: var(--font-weight-bold);
}

.release-summary {
    max-width: 760px;
    margin-bottom: var(--space-xl);
    font-size: 1.05rem;
    line-height: 1.65;
}

.release-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--space-sm);
}

.release-badges .version-type-badge,
.release-badges .version-metadata-badge {
    margin: 0;
}

.release-header-links {
    display: flex;
    justify-content: center;
    margin-top: var(--space-lg);
}

.release-header-links a {
    display: inline-flex;
    align-items: center;
    gap: var(--space-sm);
    padding: 0.7rem 1rem;
    border: 1px solid var(--divider-color);
    border-radius: var(--radius-full);
    background-color: var(--card-bg);
    color: var(--body-fg);
    font-size: 0.9rem;
    font-weight: var(--font-weight-semibold);
}

.release-header-links a:hover {
    border-color: var(--c-primary);
    color: var(--c-hashtag);
}

.release-badge-lts {
    gap: var(--space-xs);
    background-color: #198754;
}

.release-neutral-badge {
    color: var(--c-dark-text);
    background-color: rgba(174, 174, 174, 0.16);
}

.release-planned-badge {
    color: var(--c-blue-tick);
    background-color: rgba(29, 155, 240, 0.12);
}

.release-overview {
    padding: var(--space-xl) 0;
    border-bottom: 1px solid var(--divider-color);
    background-color: var(--section-alt-bg);
}

.release-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-md);
    max-width: 900px;
    margin: 0 auto;
}

.release-stats .stat-item {
    padding: var(--space-lg);
    background-color: var(--card-bg);
    border-color: var(--divider-color);
    backdrop-filter: none;
}

.release-stats .stat-number {
    margin-bottom: var(--space-xs);
    font-size: 1.75rem;
}

.release-stats .stat-number i {
    font-size: 1.5rem;
}

.release-stats .stat-label {
    color: var(--c-dark-text);
    font-size: 0.72rem;
}

.release-highlights-section {
    padding: var(--space-3xl) 0 0;
}

.release-section-heading {
    margin-bottom: var(--space-xl);
    text-align: center;
}

.release-section-heading p {
    margin: 0 0 var(--space-xs);
    color: var(--c-hashtag);
    font-size: 0.75rem;
    font-weight: var(--font-weight-bold);
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.release-section-heading h2 {
    margin: 0;
    color: var(--body-fg);
    font-size: 2rem;
    font-weight: var(--font-weight-extrabold);
}

.release-highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-lg);
}

.release-extra-section {
    padding: var(--space-3xl) 0 0;
}

.release-impact-grid {
    margin-bottom: var(--space-xl);
}

.release-extra-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-lg);
}

.release-extra-card {
    padding: var(--space-lg);
    border: 1px solid var(--divider-color);
    border-radius: var(--radius-lg);
    background-color: var(--card-bg);
    box-shadow: var(--card-shadow);
}

.release-extra-card h3 {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    margin: 0 0 var(--space-md);
    color: var(--body-fg);
    font-size: 1rem;
}

.release-extra-card h3 i {
    color: var(--c-primary);
}

.release-extra-card ul {
    display: grid;
    gap: var(--space-sm);
    margin: 0;
    padding-left: 1.1rem;
    color: var(--c-dark-text);
    font-size: 0.92rem;
    line-height: 1.55;
}

.release-extra-card dl {
    display: grid;
    gap: var(--space-sm);
    margin: 0;
}

.release-extra-card dl > div {
    display: grid;
    grid-template-columns: minmax(0, 0.7fr) minmax(0, 1fr);
    gap: var(--space-md);
    padding-bottom: var(--space-sm);
    border-bottom: 1px solid var(--divider-color);
}

.release-extra-card dl > div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.release-extra-card dt {
    color: var(--c-light-text);
    font-size: 0.84rem;
}

.release-extra-card dd {
    margin: 0;
    color: var(--body-fg);
    font-size: 0.88rem;
    font-weight: var(--font-weight-semibold);
}

.release-highlight {
    padding: var(--space-lg);
}

.release-highlight .feature-icon {
    width: 48px;
    height: 48px;
    margin-bottom: var(--space-md);
}

.release-highlight .feature-title {
    margin-bottom: var(--space-sm);
    font-size: 1.1rem;
}

.release-highlight .feature-description {
    margin-bottom: 0;
    font-size: 0.92rem;
    line-height: 1.55;
}

.release-content {
    padding-top: var(--space-3xl);
}

.release-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: var(--space-xl);
    align-items: start;
}

.release-main {
    min-width: 0;
}

.release-toc {
    margin-bottom: var(--space-xl);
    padding: var(--space-lg);
}

.release-toc strong {
    display: block;
    margin-bottom: var(--space-md);
    color: var(--body-fg);
}

.release-toc > div {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-sm);
}

.release-toc a {
    display: inline-flex;
    align-items: center;
    gap: var(--space-xs);
    padding: 0.45rem 0.7rem;
    border: 1px solid var(--divider-color);
    border-radius: var(--radius-full);
    background-color: var(--section-alt-bg);
    color: var(--body-fg);
    font-size: 0.82rem;
    font-weight: var(--font-weight-semibold);
}

.release-toc a:hover {
    border-color: var(--c-primary);
    color: var(--c-hashtag);
}

.release-toc a span {
    display: inline-grid;
    min-width: 20px;
    height: 20px;
    place-items: center;
    border-radius: var(--radius-full);
    background-color: var(--c-primary);
    color: var(--c-black);
    font-size: 0.7rem;
}

.release-version {
    display: block;
    margin-bottom: var(--space-xl);
}

.release-version .version-content {
    padding: var(--space-xl);
}

.release-version-header {
    margin-bottom: var(--space-lg);
    padding-bottom: var(--space-md);
}

.release-version-meta {
    justify-content: flex-start;
}

.release-changes {
    gap: var(--space-md);
}

.release-changes .change-category {
    scroll-margin-top: 95px;
    padding: var(--space-lg);
}

.release-changes .category-title {
    margin-bottom: var(--space-sm);
}

.release-changes .category-count {
    margin-left: auto;
}

.release-changes .change-item {
    align-items: flex-start;
    margin-bottom: var(--space-xs);
    padding: 0.38rem 0;
    font-size: 0.94rem;
}

.release-sidebar {
    display: grid;
    gap: var(--space-md);
    position: sticky;
    top: 92px;
}

.release-side-card {
    padding: var(--space-lg);
    border: 1px solid var(--divider-color);
    border-radius: var(--radius-lg);
    background-color: var(--card-bg);
    box-shadow: var(--card-shadow);
}

.release-side-card h2 {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    margin: 0 0 var(--space-md);
    color: var(--body-fg);
    font-size: 1rem;
}

.release-side-card h2 i {
    color: var(--c-primary);
}

.release-side-card dl {
    margin: 0;
}

.release-side-card dl > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--space-md);
    padding: 0.55rem 0;
    border-bottom: 1px solid var(--divider-color);
}

.release-side-card dl > div:last-child {
    border-bottom: 0;
}

.release-side-card dt {
    color: var(--c-light-text);
    font-size: 0.83rem;
}

.release-side-card dd {
    margin: 0;
    color: var(--body-fg);
    font-size: 0.83rem;
    font-weight: var(--font-weight-semibold);
    text-align: right;
}

.release-requirements {
    display: grid;
    gap: var(--space-md);
    margin: 0;
    padding: 0;
    list-style: none;
}

.release-requirements li {
    display: grid;
    gap: var(--space-xs);
}

.release-requirements strong {
    color: var(--body-fg);
    font-size: 0.88rem;
}

.release-requirements span,
.release-actions small {
    color: var(--c-light-text);
    font-size: 0.78rem;
    line-height: 1.45;
}

.release-actions {
    display: grid;
    gap: var(--space-sm);
}

.release-actions .btn {
    width: 100%;
    justify-content: space-between;
    border-radius: var(--radius-md);
}

.release-actions small {
    display: block;
    margin: -0.15rem 0 var(--space-xs);
}

.release-links {
    display: grid;
}

.release-links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-sm);
    padding: 0.65rem 0;
    border-bottom: 1px solid var(--divider-color);
    color: var(--body-fg);
    font-size: 0.85rem;
    font-weight: var(--font-weight-semibold);
}

.release-links a:last-child {
    border-bottom: 0;
}

.release-known-issues {
    margin-bottom: var(--space-xl);
    padding: var(--space-lg);
}

.release-known-issues h2 {
    margin: 0 0 var(--space-md);
    color: #d97706;
    font-size: 1.1rem;
}

.release-known-issues ul {
    margin: 0;
    padding-left: 1.2rem;
    color: var(--c-dark-text);
}

.release-note {
    margin: 0;
}

@media (max-width: 1024px) {
    .release-header {
        padding: 124px 0 64px;
    }

    .release-layout {
        grid-template-columns: 1fr;
    }

    .release-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        position: static;
    }
}

@media (max-width: 768px) {
    .release-title {
        font-size: 2.65rem;
    }

    .release-summary {
        font-size: 1rem;
    }

    .release-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .release-highlights {
        grid-template-columns: 1fr;
    }

    .release-extra-grid {
        grid-template-columns: 1fr;
    }

    .release-highlight {
        display: grid;
        grid-template-columns: auto 1fr;
        column-gap: var(--space-md);
    }

    .release-highlight .feature-icon {
        grid-row: 1 / span 2;
    }

    .release-sidebar {
        grid-template-columns: 1fr 1fr;
    }

    .release-version .version-content {
        padding: var(--space-lg);
    }
}

@media (max-width: 576px) {
    .release-header {
        padding: 112px 0 52px;
    }

    .release-back-link {
        margin-bottom: var(--space-lg);
    }

    .release-title {
        font-size: 2.15rem;
    }

    .release-name {
        font-size: 1.1rem;
    }

    .release-badges {
        align-items: center;
        flex-direction: column;
    }

    .release-header-links a {
        width: 100%;
        justify-content: center;
        border-radius: var(--radius-md);
    }

    .release-stats {
        gap: var(--space-sm);
    }

    .release-stats .stat-item {
        padding: var(--space-md);
    }

    .release-stats .stat-number {
        font-size: 1.45rem;
    }

    .release-highlights-section,
    .release-extra-section,
    .release-content {
        padding-top: var(--space-2xl);
    }

    .release-section-heading h2 {
        font-size: 1.55rem;
    }

    .release-highlight {
        display: block;
    }

    .release-toc,
    .release-version .version-content,
    .release-extra-card,
    .release-side-card {
        padding: var(--space-md);
    }

    .release-extra-card dl > div {
        grid-template-columns: 1fr;
        gap: var(--space-xs);
    }

    .release-toc > div {
        display: grid;
    }

    .release-toc a {
        justify-content: space-between;
    }

    .release-version-header {
        padding-bottom: var(--space-sm);
    }

    .release-changes .change-category {
        padding: var(--space-md);
    }

    .release-changes .category-title {
        align-items: flex-start;
        font-size: 1rem;
    }

    .release-changes .change-item {
        font-size: 0.875rem;
        line-height: 1.55;
    }

    .release-sidebar {
        grid-template-columns: 1fr;
    }
}

@media (prefers-color-scheme: dark) {
    .release-neutral-badge,
    .release-toc a {
        background-color: var(--c-black-sheet-bg);
    }

    .release-side-card {
        border-color: rgba(255, 255, 255, 0.1);
    }
}

@media print {
    .release-back-link,
    .release-toc,
    .release-actions,
    .release-links {
        display: none;
    }

    .release-header {
        padding: 30px 0;
    }

    .release-layout {
        display: block;
    }

    .release-sidebar {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        position: static;
        margin-top: 20px;
    }
}
