/* =====================================================================
   imprimir.css · Salida en papel de las fichas (sección 15 del pliego)
   ---------------------------------------------------------------------
   A4 vertical, márgenes de 15 mm y letra mínima de 16 pt. Solo se carga
   al imprimir (media="print"). Las medidas de papel van aquí en mm y pt:
   no dependen de los tokens de pantalla porque el papel no cambia.
   ===================================================================== */

@page {
  size: A4 portrait;
  margin: 15mm;
}

/* En papel se usa siempre el aspecto normal: blanco y tinta negra.
   El cuerpo deja de ser flexible y de medir una pantalla: si no, añade una
   página en blanco al final. */
html, body {
  display: block;
  min-height: 0;
  height: auto;
  margin: 0;
  padding: 0;
  background: var(--hoja-fondo) !important;
  color: var(--hoja-texto) !important;
  font-size: 14pt;
}

/* Fuera todo lo que no sea la ficha o el texto de la guía. */
.cabecera, .pie, .migas, .saltar, .no-imprimir, .aviso-honesto, dialog,
.plantilla-lectura__lateral, .indice-plegado, .navegacion-capitulos, .guia-imprimir-movil, .capitulos-final,
.tarjeta-guia__boton, #titulo-relacionados, .seccion:has(> .rejilla-enlaces),
.cabecera-pagina__dibujo, .cabecera-pagina .portada__botones {
  display: none !important;
}

/* Cualquier relleno aquí empujaría la primera hoja a la segunda página. */
main, .contenedor, .pagina-info { display: block; max-width: none; margin: 0; padding: 0; }

.hojas { display: block; margin: 0; container-type: normal; }

.seccion { margin: 0; }

/* Cada hoja ocupa una página exacta del papel. */
.hoja {
  width: auto;
  height: 262mm;   /* un poco menos de los 267 mm útiles: evita el salto de más */
  aspect-ratio: auto;
  margin: 0;
  padding: 0;
  border: 0;
  box-shadow: none;
  font-size: 16pt;
  overflow: hidden;
  break-after: page;
  break-inside: avoid;
}

.hoja:last-child { break-after: auto; }

.hoja, .hoja * { color: var(--hoja-texto) !important; background: transparent !important; }

/* Las figuras conservan su forma aunque se impriman en blanco y negro. */
.hoja .figura { fill: var(--hoja-texto); }

.hoja img { print-color-adjust: exact; -webkit-print-color-adjust: exact; }

/* Dibujos en línea de las fichas nuevas: conservan sus colores si la impresora
   los tiene, y las luminosidades distintas aguantan el blanco y negro. */
.hoja svg { print-color-adjust: exact; -webkit-print-color-adjust: exact; }

.papel-sopa > span, .papel-letras__revuelta { font-size: 16pt; }

/* Con la lista encima, una sopa a todo el ancho no cabría en la hoja. */
.papel-sopa { width: 80%; margin-inline: auto; }

.hoja .reloj text { font-size: 22px; }

.hoja__pie { font-size: 16pt; }

.papel-serie__celda small { font-size: 16pt; }

/* --- Guía de la memoria (sección 6.3 del pliego de la fase 2) --- */

.cabecera-pagina { padding: 0 0 8mm; background: none !important; border-bottom: 0.5mm solid var(--hoja-texto); }

.plantilla-lectura, .guia-imprimible, .plantilla-lectura__texto { display: block; max-width: none; padding: 0; }

/* Cada capítulo empieza en una página nueva. */
.capitulo-impreso { break-before: page; }

.capitulo-impreso:first-child { break-before: auto; }

/* Colores suaves fuera: en papel basta con el borde. */
.lo-esencial, .caja, .tarjeta-guia, .mito, .cifra, .cifra-banda, .recurso, .comparativa-marco {
  background: none !important;
  color: var(--hoja-texto) !important;
  border-color: var(--hoja-texto) !important;
  break-inside: avoid;
}

.lista-factores li, .comparativa th, .comparativa td, .tabla-oms th, .tabla-oms td, .mito__dice { background: none !important; color: var(--hoja-texto) !important; }

.comparativa tr, .tabla-oms tr { break-inside: avoid; }

.prosa h2, .prosa h3 { break-after: avoid; }

a { color: var(--hoja-texto) !important; text-decoration: none; }

/* Los enlaces se escriben como dirección al final de cada fuente. */
.fuente__enlace { display: none; }

.fuente__direccion { display: block; overflow-wrap: anywhere; font-size: 11pt; }

.ref a { color: var(--hoja-texto) !important; }
