/* News - landing "Что нового" block and the /news archive. */

/* ========================================
   LANDING - what's new panel
   ======================================== */

.news-panel {
    background: var(--bg-alt);
    border-top: var(--border-width-accent) solid var(--accent);
    padding: var(--space-8) var(--space-6);
    display: flex;
    flex-direction: column;
    gap: var(--space-6);
}

.news-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
}

.news-item {
    display: flex;
    align-items: flex-start;
    gap: var(--space-2) var(--space-4);
}

.news-item-body {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    min-width: 0;
}

.news-date {
    font-family: var(--font-mono);
    font-size: var(--font-size-sm);
    color: var(--text-muted);
}

.news-item a {
    font-size: var(--font-size-base);
    line-height: var(--line-height-normal);
    color: var(--text-primary);
    text-decoration: none;
}

.news-item-body a {
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

.news-thumb img {
    display: block;
    width: 96px;
    height: 64px;
    object-fit: cover;
}

.news-item a:hover {
    color: var(--accent-dark);
}

.news-more a {
    font-size: var(--font-size-base);
    color: var(--text-secondary);
    text-decoration: underline;
}

.news-more a:hover {
    color: var(--accent-dark);
}

.news-empty {
    color: var(--text-secondary);
    max-width: var(--text-measure);
}

/* ========================================
   NEWS ARCHIVE - /news list and article
   ======================================== */

.news-archive {
    display: flex;
    flex-direction: column;
    gap: var(--space-8);
    margin-bottom: var(--space-6);
}

.news-entry {
    max-width: var(--text-measure);
}

.news-entry-date {
    display: block;
    font-family: var(--font-mono);
    font-size: var(--font-size-sm);
    color: var(--text-muted);
    margin-bottom: var(--space-1);
}

.news-entry-title {
    font-family: var(--font-sans);
    font-size: var(--font-size-lg);
    line-height: var(--line-height-snug);
    text-wrap: balance;
}

.news-entry-title a {
    color: var(--text-primary);
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

.news-entry-title a:hover {
    color: var(--accent-dark);
}

.news-entry-excerpt {
    margin-top: var(--space-2);
    color: var(--text-secondary);
    line-height: var(--line-height-normal);
    max-width: var(--text-measure);
}

.news-entry-thumb {
    display: block;
    margin-top: var(--space-3);
}

.news-entry-thumb img {
    display: block;
    width: 100%;
    max-width: 480px;
    aspect-ratio: 3 / 2;
    object-fit: cover;
}
