/* Consent+ — „Neuigkeiten von …“ (06.10.2026): Editor, Beitragsliste, öffentliche Beitragsseite */
.nws-page { max-width: 820px; margin: 24px auto; padding: 0 16px; }
.nws-head h1 { margin: 4px 0 6px; }
.nws-head .eyebrow a { color: inherit; text-decoration: none; }
.nws-new { margin: 16px 0; }
.nws-list { list-style: none; padding: 0; margin: 0; }
.nws-list li { padding: 10px 0; border-top: 1px solid var(--line); }
.nws-list li:first-child { border-top: 0; }

.nws-form { padding: 18px 20px; margin: 16px 0; }
.nws-meta { display: grid; grid-template-columns: 1fr minmax(180px, 260px); gap: 12px; margin-bottom: 12px; }
.nws-meta label { display: flex; flex-direction: column; gap: 4px; font-size: 14px; color: var(--muted); }
.nws-meta input, .nws-meta select { font-size: 16px; }
.nws-subj input { font-weight: 600; }
.nws-tb { position: sticky; top: 0; z-index: 2; display: flex; flex-wrap: wrap; gap: 2px; align-items: center; padding: 6px; border: 1px solid var(--line); border-bottom: 0; border-radius: 10px 10px 0 0; background: #FAFAF7; }
.nws-tb-btn { min-width: 38px; height: 38px; padding: 0 8px; border: 1px solid transparent; border-radius: 8px; background: transparent; color: var(--ink); font: 600 15px/1 var(--sans); cursor: pointer; }
.nws-tb-btn:hover { background: #EFEDE6; }
.nws-tb-btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 1px; }
.nws-tb-btn[aria-pressed="true"] { background: #F3E3DA; border-color: #E6C3B1; color: #8A3F22; }
.nws-tb-italic span { font-style: italic; font-family: var(--brand); }
.nws-tb-sep { width: 1px; height: 22px; background: var(--line); margin: 0 4px; }
.nws-body { min-height: 320px; max-height: 70vh; overflow: auto; padding: 16px 18px; border: 1px solid var(--line); border-radius: 0 0 10px 10px; background: #fff; outline: none; }
.nws-body:focus { border-color: #CDBFA9; box-shadow: 0 0 0 3px rgba(201,111,74,.15); }
.nws-body.is-drop { background: #FBF4EF; border-style: dashed; border-color: var(--accent); }
.nws-body:empty::before, .nws-body > p:only-child:empty::before { content: attr(data-placeholder); color: var(--muted); }
.nws-body img { cursor: pointer; }
.nws-body img.is-noalt { outline: 3px solid var(--bad); outline-offset: 2px; }
.nws-status { min-height: 1.4em; margin: 8px 0 0; color: var(--muted); }
.nws-status.is-warn { color: var(--bad); font-weight: 600; }
.nws-actions { padding: 16px 20px; }
.nws-act-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.nws-act-row form { margin: 0; }
.nws-del { margin-left: auto !important; }
.nws-dlg { width: min(520px, 94vw); }
.nws-dlg label { display: flex; flex-direction: column; gap: 4px; }
.nws-img-prev { display: block; max-width: 100%; max-height: 240px; margin: 0 auto 8px; border-radius: 8px; object-fit: contain; background: #F4F1EA; }
.nws-dlg-err { color: var(--bad); margin: 0; }

/* Inhalt (Editor, öffentliche Seite) – dieselben Elemente wie in der Mail */
.nws-content { font-size: 17px; line-height: 1.65; color: var(--ink); overflow-wrap: anywhere; }
.nws-content h2 { font-size: 1.35em; margin: 1.4em 0 .5em; line-height: 1.3; }
.nws-content h3 { font-size: 1.12em; margin: 1.2em 0 .4em; line-height: 1.35; }
.nws-content p { margin: 0 0 1em; }
.nws-content ul, .nws-content ol { margin: 0 0 1em; padding-left: 1.5em; }
.nws-content li { margin: 0 0 .35em; }
.nws-content blockquote { margin: 0 0 1em; padding: .2em 0 .2em 1em; border-left: 3px solid var(--accent); color: var(--muted); }
.nws-content img { display: block; max-width: 100%; height: auto; margin: .5em 0 1em; border-radius: 8px; }
.nws-content hr { border: 0; border-top: 1px solid var(--line); margin: 1.5em 0; }
.nws-content a { color: #B4532F; }
.nws-content > :first-child { margin-top: 0; }

.nws-post { max-width: 720px; margin: 24px auto; padding: 28px 32px; }
.nws-post h1 { margin: 6px 0 4px; line-height: 1.25; }
.nws-post .eyebrow a { color: inherit; text-decoration: none; }
.nws-post-foot { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--line); }
.nws-archive { max-width: 640px; margin: 16px auto 24px; }
.nws-arch-list { list-style: none; padding: 0; margin: 0; }
.nws-arch-list li { padding: 12px 0; border-top: 1px solid var(--line); }
.nws-arch-list li:first-child { border-top: 0; }
.nws-arch-list p { margin: 4px 0 0; color: var(--muted); }

@media (max-width: 640px) {
  .nws-page { margin: 12px auto; padding: 0 8px; }
  .nws-form { padding: 12px; }
  .nws-meta { grid-template-columns: 1fr; }
  .nws-body { min-height: 240px; padding: 12px; }
  .nws-post { padding: 18px 16px; }
  .nws-del { margin-left: 0 !important; }
}
@media (prefers-reduced-motion: reduce) { .nws-body { transition: none; } }
