/* ==========================================================================
   print.css — Estilos de Impresión Universal para edutools.tools
   Versión 2.0 — Motor PDF unificado
   ========================================================================== */

@media print {

  /* ------------------------------------------------------------------
     1. Página: A4, márgenes de seguridad
     ------------------------------------------------------------------ */
  @page {
    margin: 1.27cm;
    size: A4;
  }

  /* ------------------------------------------------------------------
     2. Ocultar elementos de interfaz (UI)
     ------------------------------------------------------------------ */
  .site-header,
  .site-footer,
  .tool-sidebar,
  .grade-panel--controls,
  .grade-panel--entries,
  .grade-actions,
  .cookie-banner,
  .ad-slot,
  .button-row,
  .catalog-toolbar,
  .step1-actions,
  .step2-toolbar,
  .step2-controls,
  .pdf-loading-overlay,
  .gs-loading-overlay,
  .gr-loading-overlay,
  .gm-loading-overlay,
  .gd-loading-overlay,
  .gcm-loading-overlay,
  .sl-loading-overlay,
  .cw-loading-overlay,
  [id$="LoadingOverlay"],
  [id$="pdfStudentBtn"],
  [id$="pdfTeacherBtn"],
  #pdfStudentBtn,
  #pdfTeacherBtn,
  #newSheetBtn,
  #regenerateBtn,
  #toggleAnswersBtn,
  #newSearchBtn,
  #newCrosswordBtn {
    display: none !important;
  }

  /* ------------------------------------------------------------------
     3. Base tipográfica de impresión
     ------------------------------------------------------------------ */
  body {
    color: #000000 !important;
    background: #ffffff !important;
    font-size: 10pt;
    font-family: Arial, Helvetica, sans-serif;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* ------------------------------------------------------------------
     4. Contenedores principales: ocupan todo el ancho, sin sombras
     ------------------------------------------------------------------ */
  main,
  .tool-stage,
  .printable-content,
  .notebook-sheet,
  .gs-notebook,
  .gr-notebook,
  .gm-notebook,
  .gd-notebook {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* ------------------------------------------------------------------
     5. Evitar cortes dentro de bloques de ejercicios matemáticos
     ------------------------------------------------------------------ */
  .gs-exercise-wrapper,
  .gr-exercise-wrapper,
  .gm-exercise-wrapper,
  .gd-exercise-wrapper,
  .gs-exercise-box,
  .gr-exercise-box,
  .gm-exercise-box,
  .gd-exercise-box {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  /* ------------------------------------------------------------------
     6. Evitar cortes dentro de pistas del crucigrama/sopa de letras
     ------------------------------------------------------------------ */
  .cw-clue-item,
  .sl-question-item,
  .rb-print-page {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  /* ------------------------------------------------------------------
     7. Forzar salto de página en el separador explícito
     ------------------------------------------------------------------ */
  .edu-page-break {
    page-break-before: always;
    break-before: always;
  }

  /* ------------------------------------------------------------------
     8. Eliminar decoraciones innecesarias en impresión
     ------------------------------------------------------------------ */
  a::after {
    content: none !important;
  }

  /* ------------------------------------------------------------------
     9. Cuadrículas de ejercicios matemáticos: sin fondos de color
     ------------------------------------------------------------------ */
  .gs-cell,
  .gr-cell,
  .gm-cell,
  .gd-cell {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    background: #ffffff !important;
  }

  /* ------------------------------------------------------------------
     10. Soluciones: siempre visibles en impresión del docente
         (el JS controla esto vía .visible, el CSS de impresión
          respeta lo que el JS haya establecido)
     ------------------------------------------------------------------ */
  .gs-solution,
  .gr-solution,
  .gm-solution,
  .gd-solution,
  .gcm-solution-box {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}
