/* ============================================================================
   print.css — печать (Ctrl+P) и экспорт в PDF.
   Печатается только документ: панели, панели инструментов, вкладки и статусная
   строка скрыты. Формулы и таблицы не разрезаются по страницам.
   ========================================================================== */

@media print {
  /* --- Полностью убираем интерфейс --- */
  .topbar,
  .tabs,
  .statusbar,
  .resizer,
  .panel--files,
  .panel--right,
  .pane--editor,
  .pane__toolbar,
  .toasts,
  .busy,
  .banner,
  .popover,
  .menu,
  dialog,
  .modal {
    display: none !important;
  }

  html,
  body {
    height: auto;
    overflow: visible;
    background: #fff !important;
    color: #000 !important;
    font-size: 11pt;
  }

  .app,
  .workarea,
  .editor-area,
  .editor-stack,
  .pane--preview,
  .pane__body,
  .pane__body--scroll {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
  }

  /* Предпросмотр — единственное, что остаётся. */
  .pane--preview {
    width: 100% !important;
    flex: 1 1 100% !important;
  }

  .markdown-body {
    max-width: none;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 11pt;
    line-height: 1.5;
    color: #000;
  }

  /* --- Не разрезаем смысловые блоки между страницами --- */
  .markdown-body mjx-container,
  .markdown-body .md-math,
  .markdown-body .md-math-display,
  .markdown-body h1,
  .markdown-body h2,
  .markdown-body h3,
  .markdown-body h4,
  .markdown-body h5,
  .markdown-body h6,
  .markdown-body table,
  .markdown-body pre,
  .markdown-body blockquote,
  .markdown-body img,
  .markdown-body tr,
  .markdown-body .mermaid,
  .markdown-body li {
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .markdown-body h1,
  .markdown-body h2,
  .markdown-body h3,
  .markdown-body h4 {
    break-after: avoid;
    page-break-after: avoid;
  }
  .markdown-body p {
    orphans: 3;
    widows: 3;
  }

  /* --- Ссылки: без цветов, но с подчёркиванием --- */
  .markdown-body a {
    color: #000 !important;
    text-decoration: underline;
    border-bottom: 0;
  }

  /* --- Код и таблицы: рамки печатаются, фоны — нет (экономия тонера) --- */
  .markdown-body code,
  .markdown-body pre {
    background: transparent !important;
    border: 1px solid #999;
    color: #000 !important;
  }
  .markdown-body th,
  .markdown-body td {
    border: 1px solid #666 !important;
  }
  .markdown-body thead th {
    background: transparent !important;
    font-weight: 700;
  }
  .markdown-body tbody tr:nth-child(even) {
    background: transparent !important;
  }
  .markdown-body blockquote {
    border-left: 3px solid #666;
    background: transparent !important;
    color: #000;
  }
  .markdown-body hr {
    background: #666;
  }

  /* --- Номера формул и подсветка перехода в печати не нужны --- */
  .markdown-body .is-flashing {
    animation: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  /* --- Диаграммы: вписываем по ширине страницы --- */
  .markdown-body .md-mermaid svg {
    max-width: 100% !important;
    height: auto !important;
  }
  .markdown-body .md-mermaid-source {
    border: 1px solid #999;
    background: transparent !important;
    color: #000;
  }

  /* Неразобранная формула: в печати исходник должен быть читаем. */
  .markdown-body .md-math-error {
    border: 1px dashed #666;
    background: transparent !important;
    color: #000 !important;
  }
  .markdown-body .md-math-error .katex-error {
    color: #000 !important;
  }

  @page {
    margin: 18mm 16mm;
  }
}
