/* =============================================================================
   F28.5 · Print stylesheet
   Optimiza la versión impresa de cualquier página del sitio.
   - Oculta nav, drawer, footer scripts, escena 3D, progress dots
   - Tipografía legible serif fallback + tamaño ajustado A4
   - Links muestran su URL completa (extensión `a[href]::after`)
   - Page breaks en H2 + secciones grandes
   ============================================================================= */

@media print {
  /* Reset color + fondos para tinta */
  *, *::before, *::after {
    background: transparent !important;
    box-shadow: none !important;
    text-shadow: none !important;
    color: #000 !important;
    border-color: #999 !important;
  }

  html, body {
    background: #fff !important;
    color: #000 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 11pt !important;
    line-height: 1.45 !important;
  }

  /* Ocultar elementos no útiles para print */
  nav, nav.top,
  .nav-drawer, .nav-drawer-overlay, .nav-burger,
  .scene, .scene-glow, .scene-shadow, .octa, .scene-canvas, .brand-mark,
  .progress, .reading-progress, #readingProgress,
  .skip-link,
  footer .copy ~ *, /* footer redes (no aplica todavía pero por si acaso) */
  .btn-row, .btn,
  .ignite, /* h1 animation letters */
  video, audio, iframe,
  script, noscript {
    display: none !important;
  }

  /* Mostrar URL después de cada link */
  a[href]::after {
    content: " (" attr(href) ")";
    font-size: 9pt;
    color: #555 !important;
    word-wrap: break-word;
  }
  a[href^="#"]::after,
  a[href^="javascript:"]::after,
  a[href^="mailto:"]::after {
    content: "";
  }

  /* Headings escalados */
  h1 { font-size: 22pt !important; margin: 0 0 14pt; page-break-after: avoid; }
  h2 { font-size: 16pt !important; margin: 18pt 0 10pt; page-break-after: avoid; page-break-before: auto; }
  h3 { font-size: 13pt !important; margin: 14pt 0 8pt; page-break-after: avoid; }

  /* Page breaks */
  section, article, .panel, .blog-post {
    page-break-inside: avoid;
  }

  /* Section padding reset for print */
  section {
    min-height: 0 !important;
    padding: 0 !important;
    display: block !important;
    margin: 0 0 1cm;
  }

  /* Article body para blog */
  .article-body, .legal-content {
    max-width: 100%;
    column-count: 1;
  }

  /* Tablas */
  table, tr, td, th {
    page-break-inside: avoid;
    border-collapse: collapse;
  }

  /* Imágenes adaptan al ancho de página */
  img, picture {
    max-width: 100%;
    page-break-inside: avoid;
  }

  /* Footer print: marca + URL */
  footer {
    border-top: 1px solid #ccc;
    padding-top: 8pt;
    margin-top: 24pt;
    font-size: 9pt;
    color: #555 !important;
  }
  footer .grid > div:not(.footer-brand) {
    display: none !important; /* solo brand block en print */
  }

  /* Margenes página A4 */
  @page {
    size: A4;
    margin: 1.8cm 1.6cm;
  }
}
