.news-page { padding-bottom:3rem; }
.news-page [hidden] { display:none !important; }
.page-hero.news-hero { padding-block:2rem; }
.news-back { padding-top:1.6rem; font-size:.85rem; }
.news-filters { display:flex; flex-wrap:wrap; gap:.55rem; padding:1.25rem 0 1.8rem; }
.news-filters a { display:inline-flex; align-items:center; gap:.45rem; padding:.6rem .95rem; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:.8rem; font-weight:750; }
.news-filters a:hover,.news-filters .active { border-color:var(--coral); color:var(--cream); background:var(--surface-raised); }
.news-layout { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:2.25rem; }
.news-layout.has-archive { grid-template-columns:190px minmax(0,1fr); }
.news-feed { min-width:0; }
.news-result-count { margin:.35rem 0 1rem; color:var(--muted); font-size:.73rem; }
.news-day { margin-bottom:2rem; }
.news-day-editions { border-left:2px solid var(--line); padding-left:1.2rem; }
.news-day-heading { margin:0 0 .9rem; font-size:1.12rem; line-height:1.5; }
.news-day-heading > span { display:block; color:var(--muted); font-family:var(--font-body,inherit); font-size:.65rem; text-transform:uppercase; letter-spacing:.1em; font-weight:650; }
.news-editions-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr)); gap:.85rem; align-items:start; }
.news-preview { min-width:0; display:flex; flex-direction:column; padding:1.15rem; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--ink); overflow-wrap:anywhere; transition:border-color .15s,background .15s; }
.news-preview:hover { border-color:var(--coral); background:var(--surface-raised); }
.news-preview > header { display:flex; align-items:center; gap:.5rem; margin-bottom:.7rem; }
.news-category-icon { display:flex; color:var(--coral); }
.news-preview header h3 { margin:0; font-size:.85rem; }
.news-preview header > span:last-child:not(:first-child),.news-preview header time { margin-left:auto; color:var(--muted); font-size:.66rem; white-space:nowrap; }
.news-preview ul { list-style:none; padding:0; margin:0; }
.news-preview li { position:relative; padding:.55rem 0 .55rem .85rem; border-top:1px solid var(--line); font-size:.8rem; line-height:1.5; }
.news-preview li::before { position:absolute; content:'·'; left:0; color:var(--coral); }
.news-preview p { color:var(--muted); font-size:.8rem; line-height:1.6; }
.news-preview .news-preview-more { margin:.25rem 0; font-size:.7rem; }
.news-preview-action { display:flex; align-items:center; justify-content:space-between; gap:1rem; color:var(--coral); font-size:.7rem; font-weight:700; margin-top:.85rem; }
.news-site-announcement { margin-bottom:1.3rem; border:1px solid var(--warm-border); border-left:4px solid var(--coral); padding:1.25rem 1.5rem; background:linear-gradient(110deg,rgba(242,146,123,.08),var(--surface)); }
.news-site-announcement h2 { font-size:clamp(1.2rem,2vw,1.6rem); line-height:1.3; margin:.2rem 0 .4rem; }
.news-site-announcement p { margin:.3rem 0; }
.news-agenda { margin-top:1.5rem; padding-bottom:.5rem; border-bottom:1px solid var(--line); }
.news-agenda > header { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.news-agenda .eyebrow { margin-bottom:.3rem; font-size:.65rem; }
.news-agenda h2 { margin:0; font-size:1.3rem; }
.news-agenda-controls { display:flex; gap:.4rem; }
.news-agenda-controls button { border:1px solid var(--line); background:var(--surface); color:var(--ink); border-radius:50%; width:36px; height:36px; cursor:pointer; }
.news-agenda-controls button:hover:not(:disabled) { border-color:var(--coral); }
.news-agenda-controls button:disabled { opacity:.3; cursor:default; }
.news-agenda-strip { display:flex; gap:.85rem; overflow-x:auto; padding:.2rem .1rem .9rem; scroll-snap-type:x proximity; scrollbar-width:thin; scrollbar-color:var(--line) transparent; }
.news-agenda-card { flex:0 0 295px; min-width:0; display:flex; flex-direction:column; padding:1rem; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--ink); scroll-snap-align:start; overflow-wrap:anywhere; }
.news-agenda-card:hover { border-color:var(--coral); }
.news-agenda-date { display:flex; flex-wrap:wrap; align-items:center; gap:.4rem; color:var(--coral); font-size:.68rem; margin:0 0 .7rem; }
.news-agenda-card h3 { font-size:.95rem; line-height:1.4; margin:0 0 .45rem; }
.news-agenda-preview { color:var(--muted); font-size:.75rem; line-height:1.6; margin:0; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.news-agenda-card .news-preview-action { margin-top:auto; padding-top:.9rem; }
.news-agenda-ongoing { align-self:flex-start; padding:.15rem .4rem; margin-bottom:.5rem; background:var(--surface-raised); border-radius:4px; color:var(--coral); font-size:.65rem; }
.brief-event-date { color:var(--coral); font-size:.8rem; }
.news-archive { position:sticky; top:calc(var(--header-height,70px) + 1rem); max-height:calc(100dvh - var(--header-height,70px) - 2rem); overflow-y:auto; padding-right:1rem; border-right:1px solid var(--line); font-size:.82rem; scrollbar-width:thin; }
.news-archive summary { cursor:pointer; }
.news-archive-dates > summary { font-weight:800; padding:.4rem 0 .8rem; }
.news-archive-dates > summary span { float:right; color:var(--muted); font-size:.7rem; }
.news-archive a { display:block; border-radius:6px; padding:.4rem .6rem; color:var(--muted); }
.news-archive a:hover,.news-archive a[aria-current] { color:var(--cream); background:var(--surface-raised); }
.news-archive a[aria-current] { box-shadow:inset 2px 0 var(--coral); }
.news-archive-all { margin-bottom:.65rem; }
.news-archive-month { border-top:1px solid var(--line); padding:.45rem 0; }
.news-archive-month > summary { padding:.3rem 0; text-transform:capitalize; font-weight:700; }
.news-edition { min-width:0; margin-bottom:2rem; padding:clamp(1rem,2.4vw,2rem); border:1px solid var(--line); border-radius:14px; background:var(--surface); overflow-wrap:anywhere; }
.news-edition-header { border-bottom:1px solid var(--line); padding-bottom:1.2rem; margin-bottom:1.1rem; }
.news-edition-header .eyebrow { font-size:.65rem; line-height:1.7; }
.news-edition-header .eyebrow span { margin:0 .3rem; }
.news-edition h1,.news-edition h2 { margin:.45rem 0 .8rem; font-size:clamp(1.45rem,2.6vw,2.1rem); line-height:1.22; }
.news-edition h2 a { color:var(--ink); }
.news-edition h2 a:hover { color:var(--coral); }
.news-intro { color:var(--muted); font-size:.9rem; line-height:1.65; margin:0; }
.briefing-contents { padding:.7rem .85rem; border:1px solid var(--line); border-radius:8px; font-size:.78rem; color:var(--muted); }
.briefing-contents summary { color:var(--ink); cursor:pointer; font-weight:700; }
.briefing-contents summary span { margin-left:.6rem; font-size:.7rem; color:var(--muted); font-weight:500; }
.briefing-contents ol { margin:.8rem 0 .2rem; padding-left:1.4rem; }
.briefing-contents li { margin:.3rem 0; }
.daily-brief { display:grid; gap:1.3rem; padding:1.6rem 0; border-bottom:1px solid var(--line); scroll-margin-top:calc(var(--header-height,70px) + 1rem); }
.daily-brief.has-images { grid-template-columns:minmax(0,1fr) minmax(150px,26%); }
.brief-copy { min-width:0; }
.daily-brief h3 { font-size:1.15rem; line-height:1.4; margin:0 0 .45rem; }
.brief-number { color:var(--coral); font-size:.7rem; font-weight:650; vertical-align:middle; margin-right:.3rem; font-variant-numeric:tabular-nums; }
.brief-meta { color:var(--muted); font-size:.73rem; line-height:1.55; margin-bottom:1rem; }
.brief-prose { font-size:.87rem; line-height:1.8; }
.brief-prose p { margin:.7rem 0; white-space:pre-line; }
.brief-sources { margin-top:1.2rem; font-size:.71rem; line-height:1.6; }
.brief-sources h4 { font-size:.65rem; text-transform:uppercase; letter-spacing:.09em; color:var(--muted); }
.brief-sources ul { margin:0; padding:0; list-style:none; }
.brief-sources li { margin:.35rem 0; }.brief-sources span { color:var(--muted); }
.brief-sources a,.briefing-contents a,.brief-images a,.news-pagination a,.news-back a { color:var(--coral); }
.brief-images { display:grid; align-content:start; gap:1.15rem; }
.brief-images figure { margin:0; min-width:0; }
.brief-images img { display:block; width:100%; height:auto; min-height:80px; max-height:300px; object-fit:contain; border:1px solid var(--line); border-radius:7px; background:var(--night); font-size:.7rem; }
.brief-images figcaption { margin-top:.45rem; font-size:.68rem; line-height:1.55; }
.brief-images figcaption p { margin:.25rem 0; }.brief-credit { color:var(--muted); }
.news-cover { display:block; max-width:100%; max-height:360px; object-fit:contain; margin-bottom:1.2rem; border-radius:8px; }
.news-announcement-body { font-size:.95rem; line-height:1.8; }
.news-announcement-body h3 { margin:1.5rem 0 .6rem; font-size:1.2rem; line-height:1.4; }
.news-announcement-video { aspect-ratio:16/9; margin:1.25rem 0; }
.news-announcement-video iframe { display:block; width:100%; height:100%; border:0; border-radius:8px; }
.news-preview-image { width:100%; max-height:200px; object-fit:cover; border-radius:6px; margin:.4rem 0 .8rem; }
.news-pagination { display:flex; align-items:center; justify-content:space-between; gap:1rem; font-size:.8rem; }
.news-pagination span { margin-inline:auto; color:var(--muted); }
.news-empty { padding:2rem; border:1px dashed var(--line); border-radius:12px; color:var(--muted); }
.briefing-admin > header { max-width:800px; margin-bottom:1.5rem; }
.briefing-admin > header > p:last-child { color:var(--muted); font-size:.9rem; }
.briefing-admin .admin-form { max-width:none; }
.briefing-import-dropzone { padding:2rem; border:2px dashed var(--control-line); border-radius:var(--radius); background:var(--surface-raised); text-align:center; transition:border-color .15s,background-color .15s; }
.briefing-import-dropzone.is-dragging, .briefing-import-dropzone:focus-within { border-color:var(--coral); background:var(--surface-hover); }
.briefing-import-icon { display:block; color:var(--coral); font-size:2.5rem; line-height:1; margin-bottom:1rem; }
.briefing-import-dropzone h2 { margin-bottom:.7rem; font-size:1.15rem; }
.briefing-import-dropzone p { margin:0 auto 1.2rem; max-width:44rem; color:var(--muted); font-size:.85rem; }
.briefing-import-dropzone input { max-width:42rem; }
.briefing-import .briefing-import-dropzone label { display:block; text-transform:none; font-size:.8rem; font-weight:600; }
.briefing-import-error { margin:.8rem 0 0; color:#FFAAA0; overflow-wrap:anywhere; }
.briefing-import-status { margin:.8rem 0 0; color:var(--cream); }
.briefing-import-error:empty, .briefing-import-status:empty { display:none; }
.briefing-import-files { margin:1rem 0 0; padding-left:1.4rem; font-size:.85rem; overflow-wrap:anywhere; }
.briefing-import-alternative { margin:1.2rem 0 0; color:var(--muted); font-size:.85rem; }
.briefing-import-alternative a { color:var(--coral); text-decoration:underline; text-underline-offset:.2em; }
.briefing-import.is-importing .briefing-import-dropzone { opacity:.65; }
.briefing-import button:disabled { opacity:.65; cursor:wait; transform:none; }
@media (max-width:600px) { .briefing-import-dropzone { padding:1.2rem .8rem; } }
.briefing-admin .admin-form > a { display:inline-block; font-size:.8rem; margin:.75rem 1rem .75rem 0; color:var(--coral); }
.briefing-json-editor { margin-block:1rem; }.briefing-json-editor summary { cursor:pointer; font-weight:700; font-size:.85rem; }
.briefing-json-editor textarea { font-family:ui-monospace,Consolas,monospace; font-size:.8rem; }
.briefing-preview { margin-top:2rem; }
@media (max-width:900px) {
    .news-layout.has-archive { grid-template-columns:160px minmax(0,1fr); gap:1.2rem; }
    .daily-brief.has-images { grid-template-columns:minmax(0,1fr); }
    .brief-images { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:650px) {
    .page-hero.news-hero { padding-block:1.5rem; }
    .news-layout.has-archive { grid-template-columns:minmax(0,1fr); gap:1rem; }
    .news-archive { position:static; max-height:220px; padding:.5rem .75rem; border:1px solid var(--line); border-radius:8px; }
    .news-archive-month > a { display:inline-block; margin:.15rem; }
    .news-filters { gap:.4rem; padding-block:1rem; }.news-filters a { font-size:.7rem; padding:.55rem .7rem; }
    .news-edition { padding:1rem; margin-bottom:1rem; }.news-edition h1,.news-edition h2 { font-size:1.4rem; }
    .daily-brief h3 { font-size:1.05rem; }.brief-prose { font-size:.86rem; }
    .news-pagination { flex-wrap:wrap; }
    .news-day-editions { padding-left:.75rem; }
    .news-agenda-card { flex-basis:min(295px,85%); }
    .news-agenda h2 { font-size:1.1rem; }
    .news-site-announcement { padding:1rem; }
}
