html[data-theme=dark] body:has(.news-page:not([hidden])) {
  --theme-bg:#070e16;
  --theme-surface:#0d1823;
  --theme-border:#293b49;
  --theme-accent:#8fc2c8;
  --theme-action:#8fc2c8;
  --theme-ink:#dbe6ed;
  --theme-muted:#a8bac6;
}

.news-page {
  width:min(100%,1040px);
  margin-inline:auto;
  padding-block:28px 64px;
}

.news-page .news-sections {
  display:flex;
  gap:32px;
  margin-bottom:40px;
  border-bottom:1px solid var(--theme-border);
}

.news-page .news-sections a {
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:48px;
  padding:10px 2px 16px;
  color:var(--theme-muted);
  font-size:14px;
  text-decoration:none;
}

.news-page .news-sections a[aria-current=page] {
  color:var(--theme-accent);
}

.news-page .news-sections a[aria-current=page]::after {
  content:"";
  position:absolute;
  inset:auto 0 -1px;
  height:2px;
  background:var(--theme-accent);
  box-shadow:0 0 8px #8fc2c826;
}

.news-page .news-heading { margin-bottom:28px; }
.news-page .news-heading h1 { margin:0; font-size:30px; letter-spacing:.04em; }
.news-page .news-list { margin:0; padding:0; list-style:none; border-top:1px solid var(--theme-border); }
.news-page .news-list li { border-bottom:1px solid var(--theme-border); }

.news-page .news-entry {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 20px;
  align-items:center;
  gap:28px;
  min-height:100px;
  padding:26px 20px;
  color:var(--theme-ink);
  text-decoration:none;
  transition:background-color 160ms ease;
}

.news-page .news-entry:hover,
.news-page .news-entry:focus-visible { background:#8fc2c80a; }
.news-page .news-entry-title { font-size:18px; font-weight:600; line-height:1.65; }
.news-page time { color:var(--theme-muted); font-size:13px; font-variant-numeric:tabular-nums; letter-spacing:.04em; white-space:nowrap; }
.news-page .news-entry-arrow { color:var(--theme-accent); font-size:28px; text-align:center; }
.news-page .news-article { max-width:780px; margin-inline:auto; }
.news-page .news-article-heading { padding-block:0 26px; margin-bottom:32px; border-bottom:1px solid var(--theme-border); }
.news-page .news-article-heading h1 { margin:12px 0 0; font-size:clamp(24px,2.4vw,32px); line-height:1.5; letter-spacing:.02em; }
.news-page .news-article-body { --theme-muted:#c2ced7; }
.news-page .news-article-body p { margin:0 0 30px; font-size:16px; line-height:2.1; overflow-wrap:anywhere; }
.news-page .news-back { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:10px 0; margin-top:12px; color:var(--theme-accent); font-size:14px; text-decoration:none; }
.news-page .news-back:hover { text-decoration:underline; text-underline-offset:5px; }
.news-page .news-back:focus-visible,
.news-page .news-sections a:focus-visible,
.news-page .news-entry:focus-visible { outline:2px solid var(--theme-accent); outline-offset:4px; }

@media(max-width:640px) {
  .news-page { padding-block:20px 40px; }
  .news-page .news-sections { margin-bottom:28px; }
  .news-page .news-entry { grid-template-columns:minmax(0,1fr) 20px; gap:8px 16px; padding:22px 10px; }
  .news-page .news-entry time { grid-column:1; grid-row:1; }
  .news-page .news-entry-title { grid-column:1; grid-row:2; font-size:16px; }
  .news-page .news-entry-arrow { grid-column:2; grid-row:1 / 3; }
  .news-page .news-article-body p { font-size:15px; }
}

@media(prefers-reduced-motion:reduce) {
  .news-page .news-entry { transition:none; }
}
