.release-history {
    --rh-bg: var(--card, #fff);
    --rh-ink: var(--heading, #172b40);
    --rh-muted: var(--muted, #526377);
    --rh-border: var(--border, #d5dce4);
    max-width: 1120px;
    margin: 0 auto;
    padding: 40px 20px;
    color: var(--rh-ink);
}
.release-history header {
    background: var(--rh-bg);
    border: 1px solid var(--rh-border);
    border-radius: 12px;
    padding: 28px;
    margin-bottom: 24px;
}
.release-history h1 {
    font-size: clamp(26px, 4vw, 40px);
    font-weight: 700;
    line-height: 1.2;
    margin: 8px 0 16px;
}
.release-history p {
    line-height: 1.6;
}
.release-history a {
    color: var(--primary, #176179);
    text-decoration: underline;
    text-underline-offset: 3px;
}
.rh-eyebrow {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--rh-muted);
}
.rh-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 12px;
    background: var(--rh-bg);
    padding: 20px;
    border: 1px solid var(--rh-border);
    border-radius: 12px;
    margin: 20px 0;
}
.rh-filters label {
    display: grid;
    gap: 6px;
    flex: 1 1 160px;
    min-width: 0;
    font-size: 13px;
    font-weight: 600;
}
.rh-filters label:first-child {
    flex-grow: 2;
}
.rh-filters input,
.rh-filters select {
    width: 100%;
    min-width: 0;
    border: 1px solid var(--rh-border);
    border-radius: 8px;
    padding: 10px 12px;
    min-height: 44px;
    background: var(--field-bg, #fff);
    color: var(--rh-ink);
    font: inherit;
}
.rh-filters button {
    background: var(--primary, #176179);
    color: white;
    border-radius: 8px;
    padding: 10px 18px;
    min-height: 44px;
    font-weight: 600;
}
.rh-filters > a {
    padding: 12px;
}
.rh-card {
    border: 1px solid var(--rh-border);
    border-radius: 12px;
    background: var(--rh-bg);
    padding: 24px;
    margin: 16px 0;
    overflow-wrap: anywhere;
}
.rh-meta {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    align-items: center;
    font-size: 13px;
    color: var(--rh-muted);
}
.rh-meta a {
    font-weight: 700;
}
.rh-card h2 {
    font-size: 22px;
    font-weight: 650;
    line-height: 1.35;
    margin: 16px 0;
}
.rh-card h3 {
    font-size: 14px;
    font-weight: 700;
    margin: 20px 0 8px;
}
.rh-card ul {
    padding-left: 20px;
    list-style: disc;
}
.rh-card li {
    white-space: pre-line;
    margin: 8px 0;
    line-height: 1.7;
    font-size: 15px;
}
.rh-pagination {
    display: flex;
    justify-content: center;
    gap: 24px;
    align-items: center;
    padding: 20px;
}
.release-history :focus-visible {
    outline: 3px solid #3983c4;
    outline-offset: 3px;
}
@media (max-width: 480px) {
    .release-history {
        padding: 24px 0;
    }
    .rh-card,
    .release-history header {
        padding: 20px;
    }
    .rh-filters {
        padding: 16px;
    }
    .rh-filters label {
        flex-basis: 100%;
    }
    .rh-pagination {
        gap: 12px;
        font-size: 13px;
    }
}
.release-history:is(
    [data-module="almanac"],
    [data-module="virtualexhibition"],
    [data-module="republicexhibition"]
) {
    --rh-bg: #181b25;
    --rh-ink: #f0f2f8;
    --rh-muted: #abb3c5;
    --rh-border: #343b4b;
    --field-bg: #12151f;
    --primary: #f2cb65;
}
.release-history:is(
        [data-module="almanac"],
        [data-module="virtualexhibition"],
        [data-module="republicexhibition"]
    )
    .rh-filters
    button {
    color: #161923;
}
@media (max-width: 480px) {
    .release-history:not([data-module="eys"]) {
        padding-left: 12px;
        padding-right: 12px;
    }
}
