/* News-first homepage: restrained, finite and readable in both themes. */
.news-home { width: 100%; min-width: 0; max-width: 1040px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr); gap: 36px; padding-bottom: 32px; box-sizing: border-box; }
.news-home > section { min-width: 0; }
.news-home h2 { font-size: clamp(22px, 2.2vw, 29px); letter-spacing: -.025em; margin: 0 0 12px; }
.news-home h3 { font-size: 17px; line-height: 1.45; margin: 5px 0 8px; }
.news-home .news-home__row h3 a { color: var(--text-primary, #172033); text-decoration: none; }
.news-home .news-home__row h3 a:hover { text-decoration: underline; }
.news-home p { line-height: 1.65; margin: 0 0 10px; }
.news-home .news-home__meta { color: var(--text-muted, #64748b); font-size: 12px; }
.news-home__brief { border: 1px solid var(--border-base, #dbe2ea); border-radius: 20px; background: var(--surface-card, #fff); padding: clamp(18px, 3vw, 30px); }
.news-home__row { border-top: 1px solid var(--border-base, #dbe2ea); padding: 18px 0; }
.news-home__row:last-child { padding-bottom: 0; }
.news-home__market { font-weight: 600; }
.news-home__head { display: flex; gap: 16px; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.news-home button, #newsHomeBack { cursor: pointer; border: 1px solid var(--border, #dbe2ea); border-radius: 10px; padding: 10px 14px; color: inherit; background: var(--surface, transparent); }
.news-home .news-home__source { color: var(--primary, #7c3aed); font-size: 12px; }
.news-home__rail { display: flex !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: 16px; }
.news-home__rail > .news-strip__card { flex: 0 0 min(380px, 88vw); min-height: 260px; }
.news-home__arrows { display: flex; gap: 8px; }
.news-home__archive { margin-top: 24px; }
.news-home .news-home__cta { margin-top: 4px; font-weight: 600; border-color: var(--primary, #7c3aed); color: var(--primary, #7c3aed); }
html.theme-dark .news-home .news-home__cta { color: #bda2ff; border-color: #bda2ff; }
html.theme-dark .news-home .news-home__brief { background: var(--surface-card, #1b2335); }
html.theme-dark .news-home .news-home__meta { color: #a2aabe; }
html.theme-dark .news-home .news-home__source { color: #bda2ff; }
.news-home a:focus-visible, .news-home button:focus-visible, .news-home__rail:focus-visible { outline: 3px solid var(--primary, #9b7aff); outline-offset: 4px; }
/* The shell's intrinsic search width must not widen a narrow news homepage. */
html[data-cmm-news-first="1"] .cmm-topbar { min-width: 0; }
html[data-cmm-news-first="1"] .cmm-topbar__search { min-width: 0; }
html[data-cmm-news-first="1"] .cmm-topbar__search-placeholder { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
