.news-heading label { display: flex; align-items: center; gap: 12px; white-space: nowrap; }
.news-page select, .news-page button { font: inherit; color: var(--ui-text); background: var(--ui-panel); border: 1px solid var(--ui-border); border-radius: 8px; padding: 10px 16px; }
.news-page button { cursor: pointer; }
.news-page button:disabled { opacity: .4; cursor: default; }
.news-list { border-top: 1px solid var(--ui-line); }
.news-columns, .news-row--notice { display: grid; grid-template-columns: 56px minmax(0, 1fr) 132px; align-items: center; gap: 24px; }
.news-columns { padding: 16px 8px; color: var(--ui-muted); font-size: 13px; border-top: 1px solid var(--ui-line); }
.news-columns > :first-child, .news-number { text-align: center; font-variant-numeric: tabular-nums; }
.news-columns > :last-child, .news-row--notice .news-row-meta { text-align: right; white-space: nowrap; }
.news-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 8px; border-bottom: 1px solid var(--ui-line); color: var(--ui-text); text-decoration: none; }
.news-row--notice { display: grid; }
.news-row:hover { background: var(--ui-panel); }
.news-row--update { display: grid; justify-content: start; gap: 8px; }
.news-row strong { min-width: 0; overflow-wrap: anywhere; font-weight: 500; }
.news-row span, [data-news-meta] { color: var(--ui-muted); font-size: 14px; }
.news-status { color: var(--ui-muted); font-size: 14px; }
.news-status:empty { display: none; }
.news-status.is-empty { margin: 0; padding: 36px 24px; border: 1px solid var(--ui-line); border-radius: var(--ui-radius); background: var(--ui-panel); text-align: center; }
.news-pagination { display: flex; justify-content: center; align-items: center; gap: 24px; margin-top: 32px; }
.news-detail { padding: 32px 0; border-block: 1px solid var(--ui-line); }
.news-detail h2 { font-size: 28px; margin: 8px 0 32px; }
.news-detail h3 { margin: 0 0 12px; color: var(--ui-muted); font-size: 14px; }
.news-body { white-space: pre-wrap; overflow-wrap: anywhere; max-width: 78ch; line-height: 1.9; margin-bottom: 48px; }
.news-body a { color: var(--ui-text); text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.news-body a:hover { text-decoration-thickness: 2px; }
.news-body a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.news-detail > a { color: var(--ui-text); text-underline-offset: 4px; }
.news-page [hidden] { display: none !important; }
@media (max-width: 640px) {
  .news-row, .news-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
  .news-columns, .news-row--notice { grid-template-columns: 32px minmax(0, 1fr); column-gap: 12px; }
  .news-columns > :last-child { display: none; }
  .news-row--notice .news-number { grid-row: 1 / 3; }
  .news-row--notice .news-row-meta { grid-column: 2; text-align: left; }
}

