/* news-brief.css — top-of-page audio brief player widget.
 * Inherits the site's editorial palette and typography (no new tokens). */

.news-brief {
    display: block;
    margin: 0.75rem 0 1.25rem 0;
}

.news-brief[hidden] { display: none; }

.news-brief-card {
    border: 1px solid var(--surface-border, rgba(0,0,0,0.12));
    border-radius: 12px;
    padding: 0.75rem 1rem;
    background: var(--surface-raised, rgba(255,255,255,0.03));
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.news-brief-head {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.75rem;
    justify-content: space-between;
}

.news-brief-label {
    font-weight: 600;
    font-size: 1.05rem;
    letter-spacing: 0.02em;
    color: var(--text-strong, inherit);
}

.news-brief-label::before {
    content: "▶  ";
    opacity: 0.7;
    font-size: 0.9em;
}

.news-brief-meta {
    font-size: 0.85rem;
    color: var(--text-muted, inherit);
    opacity: 0.85;
}

.news-brief-audio {
    width: 100%;
    /* Browser default <audio> heights vary; cap so it doesn't dominate. */
    max-height: 40px;
}

.news-brief-strip {
    font-size: 0.85rem;
    line-height: 1.45;
    color: var(--text-muted, inherit);
    opacity: 0.85;
    /* Wrap rather than truncate — let it breathe on narrow screens. */
}

/* Muted state when the brief is older than the staleness threshold. */
.news-brief-stale-card {
    opacity: 0.7;
}

.news-brief-stale {
    font-size: 0.8rem;
    color: var(--text-muted, inherit);
    font-style: italic;
}
