/* ============================================================
   NUEZ — Hoja de impresion
   ------------------------------------------------------------
   Se carga despues de np-tokens.css a proposito: aqui se gana por
   orden sobre el bloque oscuro, sin tocar el tema en pantalla.

   Dos reglas de oro:
     1. El papel siempre es claro. Si el usuario esta en modo
        oscuro, imprimir en oscuro es ilegible y gasta toner.
     2. La hoja no lleva shell: ni menu, ni navbar, ni botones.
   ============================================================ */

@media print {

  /* ---------- 1. Forzar superficies claras ----------
     Se redefinen SOLO los tokens de superficie y texto; el resto
     (radios, sombras, movimiento) no se usa al imprimir. */
  html[data-nz-theme="dark"] {
    color-scheme: light;

    --nz-fondo: #FFFFFF;
    --nz-card: #FFFFFF;
    --nz-card-soft: #F4F4F2;
    --nz-menu-bg: #FFFFFF;
    --nz-borde: #C9C4B8;
    --nz-borde-fuerte: #8C8577;

    --nz-tinta: #000000;
    --nz-text-muted: #333333;
    --nz-text-soft: #555555;
    --nz-muted-rgb: 51, 51, 51;

    --nz-primario: #3F6233;
    --nz-primario-suave: #EEF3EC;
    --nz-primario-texto: #3F6233;
    --nz-exito: #2F6B3C;
    --nz-exito-bg: #EFF6F0;
    --nz-peligro: #A93939;
    --nz-peligro-bg: #FBF0F0;
    --nz-aviso: #7A4F10;
    --nz-aviso-bg: #FBF4E8;
    --nz-info: #2C63A8;
    --nz-info-bg: #EFF6FE;
  }

  html,
  body {
    background: #FFFFFF;
    color: #000000;
  }

  /* ---------- 2. Fuera el shell ---------- */
  .layout-menu,
  .layout-navbar,
  .layout-overlay,
  .layout-menu-toggle,
  #nz-dark-mode-toggle,
  .nz-fab,
  .nz-toolbar,
  .nz-no-print,
  .ir-arriba,
  #btnScrollTop,
  .loading-overlay,
  .dataTables_filter,
  .dataTables_length,
  .dataTables_info,
  .dataTables_paginate,
  .dt-buttons,
  .select2-container,
  .swal2-container {
    display: none;
  }

  /* ---------- 3. La hoja ---------- */
  .content-wrapper,
  .container-fluid,
  .container-xxl {
    margin: 0;
    padding: 0;
    background: #FFFFFF;
  }

  .card {
    border: 1px solid #C9C4B8;
    border-radius: 0;
    box-shadow: none;
    break-inside: avoid;
  }

  .card-header,
  .card-footer {
    border-color: #C9C4B8;
  }

  /* ---------- 4. Tablas ---------- */
  .table {
    font-size: 9pt;
  }

  .table thead th {
    background-color: #F4F4F2;
    color: #000000;
  }

  .table td,
  .table th {
    border-color: #C9C4B8;
  }

  /* Una fila partida a la mitad entre dos hojas no se lee */
  .table tr {
    break-inside: avoid;
  }

  /* ---------- 5. Aislamiento opcional ----------
     Con .nz-print-area en un contenedor, se oculta todo lo demas y
     solo se imprime esa zona (lo usa impresion.php para la hoja). */
  body.nz-print-only > * {
    visibility: hidden;
  }

  body.nz-print-only .nz-print-area,
  body.nz-print-only .nz-print-area * {
    visibility: visible;
  }

  body.nz-print-only .nz-print-area {
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
  }

  /* ---------- 6. Detalles de papel ---------- */
  @page {
    margin: 12mm;
  }

  a[href]::after {
    content: "";
  }

  .badge,
  .nz-badge {
    border: 1px solid currentColor;
  }
}
