/**
 * Estilos para impresión (window.print) - Versión Final Corregida
 */

@media print {
  /* 1. Obligar al navegador a usar toda la hoja sin márgenes extra */
  @page {
    size: A4 landscape;
    margin: 0;
  }

  body {
    background: #fff !important;
    margin: 0 !important;
    padding: 0 !important;
    /* Evita que el body genere scroll que se traduzca en hojas extra */
    overflow: visible !important;
  }

  .topbar,
  .container,
  .modal {
    display: none !important;
  }

  .print-area {
    position: static !important;
    display: block !important;
    width: 297mm !important;
  }

  /* Forzar escalas a 1 */
  :root {
    --carnet-scale: 1 !important;
    --carnet-chana-scale: 1 !important;
  }

  /* Página A4 */
  .print-page {
    /* CRÍTICO: El padding NO debe sumar al ancho/alto */
    box-sizing: border-box !important; 
    
    width: 297mm;
    height: 209mm; 
    padding: 10mm;
    
    /* Usamos ambas propiedades para máxima compatibilidad */
    page-break-after: always !important;
    break-after: page !important;
    
    background: #fff;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: min-content;
    gap: 7mm;
    align-content: start;
    
    /* Evitar que micro-elementos desborden */
    overflow: hidden !important;
  }

  .print-page:last-child {
    page-break-after: auto !important;
    break-after: auto !important;
  }

  /* TODOS los carnets: tamaño exacto 85.5mm × 54mm */
  .carnet,
  .carnet--chana,
  .carnet--mona,
  .carnet--custom {
    width: 85.5mm !important;
    height: 54mm !important;
    
    box-shadow: none !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
    
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    color-adjust: exact !important;
  }

  .carnet img,
  .carnet svg {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}