/* ==================================================================
   Impresión: la hoja que el profesor se lleva al lado de las pruebas.
   Objetivo: la escala completa en UNA carilla A4, sin menús ni anuncios.
   ================================================================== */

@page {
  size: A4 portrait;
  margin: 12mm 10mm;
}

@media print {
  :root {
    /* Se imprime siempre en claro: el tema oscuro gasta tinta y no se lee */
    --fondo: #ffffff;
    --superficie: #ffffff;
    --superficie-2: #ffffff;
    --texto: #000000;
    --texto-2: #000000;
    --texto-3: #333333;
    --linea: #bbbbbb;
    --linea-fuerte: #777777;
    /* Azul y rojo más oscuros: se distinguen en color y se leen en blanco y negro */
    --azul: #123a8c;
    --rojo: #a3201d;
  }

  body {
    background: #fff !important;
    color: #000 !important;
    font-size: 9.5pt;
    line-height: 1.3;
  }

  /* Todo lo que no es la hoja se va */
  .cab,
  .menu,
  .barra-proyector,
  .intro,
  .panel,
  .pie,
  .bloque-anuncio,
  .faq,
  .enlaces,
  .no-imprimir,
  .seccion,
  form,
  button,
  input,
  select,
  textarea {
    display: none !important;
  }

  .solo-impresion { display: block !important; }

  .env { max-width: none; padding: 0; }
  .mesa { display: block !important; margin: 0 !important; }
  .hoja { display: block !important; }
  .hoja > .bloque:first-child { display: none !important; }

  .bloque {
    border: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }
  .bloque-titulo { margin-bottom: 2mm !important; }
  .bloque-titulo h2 { font-size: 10pt; }

  /* Encabezado de la hoja: el profesor anota curso y asignatura a mano */
  .hoja-encabezado {
    border-bottom: 1.5pt solid #000;
    padding-bottom: 3mm;
    margin-bottom: 4mm;
  }
  .hoja-encabezado .hoja-titulo {
    font-size: 13pt;
    font-weight: 700;
    margin: 0 0 2mm;
  }
  .hoja-encabezado .hoja-datos {
    display: flex;
    gap: 8mm;
    font-size: 9pt;
  }
  .hoja-encabezado .hoja-linea {
    flex: 1;
    border-bottom: 0.5pt solid #000;
    min-height: 5mm;
  }

  /* La escala en 4 columnas con guías de corte */
  .tabla-escala {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0 !important;
  }
  .tabla-escala > div {
    border-right: 0.5pt dashed #999;
    padding-inline: 2mm;
    break-inside: avoid;
  }
  .tabla-escala > div:last-child { border-right: 0; }

  table { font-size: 8.5pt; width: 100%; }
  .tabla-escala th, .tabla-escala td { padding: 0.6mm 1.5mm; border-bottom: 0.25pt solid #ccc; font-size: 8.5pt; }
  .tabla-escala thead th { border-bottom: 1pt solid #000; font-size: 7.5pt; }
  thead { display: table-header-group; }
  tr { break-inside: avoid; }
  .tabla-escala tr.fila-consultada td { background: #fff !important; box-shadow: none !important; }

  .n-ok, .n-mal {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tabla-escala tr.fila-corte td {
    border-top: 1.2pt solid #000 !important;
    font-weight: 700;
  }

  /* Pie de la hoja con la configuración usada: sin esto la hoja no se puede reproducir */
  .hoja-pie {
    margin-top: 4mm;
    padding-top: 2mm;
    border-top: 0.5pt solid #000;
    font-size: 7.5pt;
    color: #333;
  }

  a { color: #000 !important; text-decoration: none !important; }
  h1, h2, h3 { break-after: avoid; }
}

/* Rúbrica, lista de cotejo y escala de apreciación: se imprimen con lo marcado */
@media print {
  .hoja > .bloque.instr-hoja:first-child { display: block !important; }
  .instr-titulo { font-size: 13pt; margin: 0 0 3mm; }
  .instr-grid { border: 1pt solid #000; border-radius: 0; }
  .instr-cab, .instr-fila { break-inside: avoid; }
  .instr-cab { background: #fff !important; }
  .instr-cab > div, .instr-celda { border-color: #777 !important; }
  .instr-fila { border-top: 1pt solid #777; }
  .instr-celda { color: #000; font-size: 8.5pt; padding: 2mm; }
  .instr-radio:checked + .instr-celda { background: #fff !important; box-shadow: inset 0 0 0 1.6pt #000; font-weight: 700; }
  .instr-check { border-color: #000; }
  .instr-radio:checked + .instr-celda .instr-check { background: #000; }
  .instr-impreso { display: block !important; margin-top: 4mm; font-size: 11pt; font-weight: 700; white-space: pre; }
  .instr-estatica { display: block; }
}
