/* PRINT — exportación a PDF (window.print / impresión headless)
   Filosofía: el PDF debe verse como el sitio, no como una versión
   despojada. Solo se oculta lo interactivo (nav, sidebar, toggles) y se
   ajusta paginación; el resto del sistema de diseño (colores, acentos,
   degradados, sombras) se conserva tal cual vive en components.css. */
@media print {
  @page { size: A4; margin: 18mm 16mm; }

  html, body {
    background: var(--color-paper) !important;
    color: var(--color-ink) !important;
  }

  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    color-adjust: exact !important;
  }

  .site-header, .chapter-sidebar, .chapter-toc, .theme-toggle, .menu-toggle,
  .site-footer, .search-box, .hero__actions, .btn, .progress-bar-track,
  .no-print { display: none !important; }

  .chapter-shell { display: block !important; padding: 0 !important; max-width: 100% !important; }
  .chapter-main { width: 100% !important; }

  a { text-decoration: none !important; }
  a[href]::after { content: ""; }

  h1, h2, h3, h4 { break-after: avoid; }
  p, li { orphans: 3; widows: 3; }

  .chapter-hero, .callout, .drug-card, .algorithm, .caso-clinico, .protocol, .flow,
  .table-wrap, .timeline-step, .summary-card, .evidence, blockquote {
    break-inside: avoid;
  }

  tr, thead { break-inside: avoid; }

  .caso-clinico details { display: block !important; }
  .caso-clinico details summary::before { content: "▾"; }

  table { font-size: 9.5pt; }
  thead th { position: static !important; }

  .chapter-nav-footer { display: none !important; }

  #toc .checklist { list-style: none; padding: 0; }
  #toc .checklist li::before { display: none; }
  #toc .checklist li {
    display: flex; align-items: baseline; gap: var(--space-3);
    padding: 3px 0; font-size: var(--fs-sm);
  }
}
