/* Lo que el papel no necesita. El PDF sale del dialogo de impresion de
   Windows ("Microsoft Print to PDF"), asi que la unica diferencia entre
   la pantalla y el papel es esta hoja. */
@media print {
  .barra,
  .pestanas,
  .no-imprimir,
  .boton { display: none !important; }

  body { background: #fff; font-size: 11px; }
  main { padding: 0; }

  .panel {
    border: none;
    padding: 0;
    margin: 0 0 0.8rem;
    break-inside: avoid;
  }

  /* Que el encabezado de una tabla larga se repita en la hoja siguiente:
     una tabla de devoluciones puede pasar de pagina. */
  thead { display: table-header-group; }
  tr { break-inside: avoid; }

  /* ⚠️ El subtotal de un cuadro NO puede quedar solo en la hoja siguiente.
     Un total en una hoja y los renglones que lo explican en la otra es
     exactamente lo que no puede pasar en un respaldo contable: el reporte
     de ventas por dia se pone al lado del libro para cuadrarlo. Es el mismo
     criterio del cuadro de la boleta (`.cuadro-aparte` en app.css),
     aplicado al pie de la tabla: `table-row-group` para que salga una sola
     vez al final —y no repetido en cada hoja, como haria
     `table-footer-group`— y `break-before: avoid` para que no arranque
     pagina el solo. */
  tfoot {
    display: table-row-group;
    break-inside: avoid;
    break-before: avoid;
  }

  /* El color de un faltante tiene que sobrevivir a la impresion en gris:
     va tambien en negrita, no solo en rojo. */
  .es-faltante, .es-sobrante { font-weight: 700; }

  /* El desglose de una devolucion se despliega en pantalla, pero el papel
     no se puede desplegar: en el reporte impreso va todo abierto. El
     triangulito de `summary` sobra ahi. */
  details > *:not(summary) { display: block !important; }
  summary { list-style: none; }
  summary::-webkit-details-marker { display: none; }
}

/* El encabezado del reporte solo tiene sentido en el papel: en pantalla
   ya esta la barra de arriba diciendo donde esta uno. */
.membrete { display: none; }
@media print {
  .membrete {
    display: block;
    border-bottom: 2px solid #1c2530;
    margin-bottom: 0.8rem;
    padding-bottom: 0.4rem;
  }
}
