/* Market news page (rendered by the API at /market/news). Colours come from site.css so dark mode follows the site. */
.newspage { padding-top: 28px; padding-bottom: 56px; max-width: 860px; }
.newspage .crumbs { font-size: 14px; color: var(--muted); margin-bottom: 14px; }
.newspage .crumbs i { font-style: normal; opacity: .6; margin: 0 2px; }
.newspage h1 { font-size: clamp(28px, 4vw, 38px); }
.newspage h1 .co { display: block; font-size: 17px; font-weight: 500; letter-spacing: 0; color: var(--muted); margin-top: 4px; }
.newspage .sub { color: var(--muted); margin: 8px 0 18px; max-width: 62ch; }
.newspage .tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 6px; position: sticky; top: 56px; z-index: 5; padding: 10px 0; background: color-mix(in srgb, var(--bg) 92%, transparent); backdrop-filter: blur(8px); }
.newspage .tabs a { padding: 7px 14px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--ink); font-size: 14.5px; font-weight: 600; }
.newspage .tabs a:hover { text-decoration: none; border-color: var(--muted); }
.newspage .tabs a[aria-current] { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); }
.newspage .day h2 { font-size: 15px; letter-spacing: .02em; text-transform: uppercase; color: var(--muted); margin: 26px 0 10px; padding-bottom: 8px; border-bottom: 1px solid var(--line); }
.newspage .story { padding: 14px 0; border-bottom: 1px solid var(--line); }
.newspage .story:last-child { border-bottom: 0; }
.newspage .story h3 { font-size: 18px; line-height: 1.35; letter-spacing: -.01em; font-weight: 650; }
.newspage .story h3 a { color: var(--ink); }
.newspage .story h3 a:hover { color: var(--accent); text-decoration: none; }
.newspage .teaser { margin: 6px 0 0; color: var(--muted); font-size: 15.5px; }
.newspage .meta { margin: 8px 0 0; font-size: 13.5px; color: var(--muted); }
.newspage .meta .src { font-weight: 650; color: var(--ink); }
.newspage .syms { margin: 8px 0 0; display: flex; flex-wrap: wrap; gap: 6px; }
.newspage .sym { font-size: 12.5px; font-weight: 700; padding: 2px 9px; border-radius: 999px; background: var(--accent-soft); color: var(--accent); }
.newspage .sym:hover { text-decoration: none; filter: brightness(.96); }
.newspage .empty { padding: 30px 0; color: var(--muted); }
.newspage .pager { display: flex; justify-content: space-between; gap: 12px; margin: 26px 0 8px; }
.newspage .pager a { padding: 9px 16px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); font-weight: 600; }
.newspage .pager a[rel="next"] { margin-left: auto; }
.newspage .fine { margin-top: 30px; font-size: 13.5px; color: var(--muted); line-height: 1.55; }
@media (max-width: 560px) { .newspage .story h3 { font-size: 17px; } .newspage .tabs { top: 52px; } }
