/* Страницы администратора новостей: редактор (/news/new, /news/{id}/edit) и управление (/news/manage).
   Каркас — как у страниц мероприятия и сообщества; страницы чтения новостей оформлены в news.css (.nr). */
.nw {
  --nw-bg: var(--bg-card);
  --nw-line: var(--border);
  --nw-text: var(--text-primary);
  color: var(--nw-text);
  font-size: 16px;
  line-height: 1.6;
}

.container.nw-wrap {
  padding-top: 28px;
  padding-bottom: 64px;
}

/* Заголовки самой страницы. Текст новости в редакторе и превью — не их дело: там заголовки оформляет Quill
   и стили чтения (.article-content), иначе превью показывало бы не то, что увидит читатель. */
.nw :is(h1, h2, h3):not(.rich-text-editor-wrapper *) {
  color: inherit;
  margin: 0 0 12px;
  line-height: 1.3;
}

.nw h1:not(.rich-text-editor-wrapper *) {
  font-family: Merriweather, Georgia, serif;
  font-size: 34px;
  letter-spacing: -.6px;
}

.nw h2:not(.rich-text-editor-wrapper *) { font-size: 19px; }
.nw h3:not(.rich-text-editor-wrapper *) { font-size: 16px; font-weight: 600; margin: 0; }

@media (max-width: 600px) {
  .nw h1:not(.rich-text-editor-wrapper *) { font-size: 28px; }
}

.nw fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}

.nw .mud-button {
  font-size: 14px;
  text-transform: none;
}

.nw-heading { margin: 0 0 24px; }
.nw-heading p { margin: 0; }

.nw-eyebrow {
  margin-bottom: 12px;
  color: var(--accent);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.8px;
}

.nw-muted {
  color: var(--text-secondary);
  font-size: 14px;
}

.nw-panel {
  padding: 24px;
  background: var(--nw-bg);
  border: 1px solid var(--nw-line);
  border-radius: 16px;
}

.nw-sidebar .nw-panel { padding: 20px; }

.nw-form > .mud-input-control { margin-top: 0; }

.nw-field-error {
  margin: -8px 0 0;
  color: var(--danger);
  font-size: 13px;
}

.nw-results-heading.mud-typography { margin: 0; font-size: 16px; font-weight: 600; }

/* Строка списка управления */
.nw-row.nw-panel { padding: 16px 20px; }

/* Заголовок занимает строку, пока рядом помещаются кнопки; на узком экране кнопки уходят под него. */
.nw-row-main { flex: 1 1 280px; min-width: 0; }
.nw-row-title.mud-typography { margin: 0; font-size: 17px; font-weight: 600; overflow-wrap: break-word; }

.nw-empty {
  margin-top: 12px;
  padding: 52px 24px;
  text-align: center;
}

/* Состояние публикации: черновик, запланирована, опубликована — те же тона, что у мероприятий и опросов. */
.mud-chip.nw-state {
  height: auto;
  margin: 0;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
}

.mud-chip.nw-state .mud-chip-content { padding: 0; }

.mud-chip.nw-state-published {
  background: color-mix(in srgb, var(--mud-palette-success) 14%, transparent);
  color: color-mix(in srgb, var(--mud-palette-success) 72%, var(--text-primary));
}

.mud-chip.nw-state-scheduled {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  color: var(--accent);
}

.mud-chip.nw-state-draft {
  background: color-mix(in srgb, var(--mud-palette-warning) 16%, transparent);
  color: color-mix(in srgb, var(--mud-palette-warning) 62%, var(--text-primary));
}

/* Выбор из вариантов с пояснением: место на главной, время публикации. */
.nw-choice .mud-radio { margin: 0 0 8px; }
.nw-choice-title.mud-typography { display: block; font-weight: 600; }
.nw-choice .nw-muted.mud-typography { display: block; }

.nw-dialog-title.mud-typography { margin: 0; font-size: 20px; font-weight: 600; }

/* В превью редактора текст новости идёт сразу под вступлением: отступ страницы чтения не нужен. */
.rich-text-editor-wrapper .preview-content .nr-article-body { margin-top: 0; }

/* Кнопки администратора в герое каталога новостей. */
.np-admin-actions { position: relative; }
