/* ==========================================================================
   document-content.css
   Единый визуальный контракт содержимого документа.

   ОДИН файл используется ОДНОВРЕМЕННО тремя renderer'ами:
     1. Jodit WYSIWYG   — класс добавляется на .jodit-wysiwyg в /admin/documents
     2. Admin Preview   — srcdoc iframe подключает этот же файл и тот же класс
     3. Public DocumentPage — <article class="document-content">

   HTML документа во всех трёх местах одинаков, поэтому при равной доступной
   ширине редактор, предпросмотр и публичная страница выглядят одинаково.

   Это НЕ стиль UI/оболочки — правила ограничены классом .document-content.
   ========================================================================== */

.document-content {
  color: #111827;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
}

/* Не переносить русские слова дефисами (одинаково в editor/preview/public). */
.document-content * {
  hyphens: none;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
}

/* Заголовки — тёмные, жирные, выглядят как структура документа, а не как ссылки. */
.document-content h1,
.document-content h2,
.document-content h3,
.document-content h4,
.document-content h5,
.document-content h6 {
  color: #111827;
  font-weight: 700;
  line-height: 1.3;
}
.document-content h1 { font-size: 1.6rem;  margin: 0 0 0.9em; }
.document-content h2 { font-size: 1.35rem; margin: 1.6em 0 0.6em; }
.document-content h3 { font-size: 1.2rem;  margin: 1.4em 0 0.6em; }
.document-content h4 { font-size: 1.1rem;  margin: 1.2em 0 0.5em; }
.document-content h5 { font-size: 1rem;    margin: 1.1em 0 0.5em; }
.document-content h6 { font-size: 0.95rem; margin: 1em 0 0.5em; }

/* Абзацы и div-блоки (legacy контент может использовать <div>). */
.document-content p,
.document-content div {
  margin: 0 0 1em;
  line-height: 1.6;
}
.document-content p:empty { display: none; }

/* Смысловое форматирование — сохраняется как в Jodit. */
.document-content strong,
.document-content b { font-weight: 700; color: #111827; }
.document-content em,
.document-content i { font-style: italic; }
.document-content u,
.document-content ins { text-decoration: underline; }
.document-content s,
.document-content del { text-decoration: line-through; }

/* Списки — Tailwind preflight сбрасывает list-style, возвращаем его. */
.document-content ul,
.document-content ol { margin: 0 0 1em; padding-left: 1.6em; }
.document-content ul { list-style: disc; }
.document-content ol { list-style: decimal; }
.document-content li { margin: 0.25em 0; }

/* Ссылки.
   Реальный <a href> — брендовый оранжевый + underline.
   Пустой <a> (legacy Jodit оборачивает заголовки/номера) — НЕ ссылка. */
.document-content a { color: inherit; text-decoration: none; }
.document-content a[href] {
  color: #f97316;
  text-decoration: underline;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.document-content a[href]:active,
.document-content a[href]:focus { color: #ea580c; }

.document-content blockquote {
  border-left: 3px solid #e5e7eb;
  margin: 0 0 1em;
  padding-left: 1em;
  color: #4b5563;
}

/* Таблицы — сохраняют структуру/границы; на мобильном адаптация контейнера. */
.document-content table {
  border-collapse: collapse;
  max-width: 100%;
  margin: 0 0 1em;
  font-size: 0.95em;
}
.document-content th,
.document-content td {
  border: 1px solid #e5e7eb;
  padding: 6px 10px;
  text-align: left;
}
.document-content th { background: #f9fafb; font-weight: 700; }

.document-content img { max-width: 100%; height: auto; }
.document-content hr { border: none; border-top: 1px solid #e5e7eb; margin: 1.5em 0; }

.document-content pre,
.document-content code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.9em;
  background: #f3f4f6;
  border-radius: 6px;
}
.document-content pre { padding: 0.8em; overflow-x: auto; }
