/* Print Styles */

/* .print-only — invisible en pantalla, visible al imprimir */
html .print-only {
    display: none !important;
}

/* Ocultar elementos marcados como .no-print cuando AppState.IsPrinting = true */
body.printing .no-print {
    display: none !important;
}

/* Mostrar elementos marcados como .print-only cuando AppState.IsPrinting = true */
body.printing .print-only {
    display: revert !important;
}

@media print {

    /* Control de visibilidad */
    .print-only {
        display: revert !important;
    }

    .no-print {
        display: none !important;
    }

    /* MudBlazor: resetear layout de sidebar/navbar */
    .mud-main-content {
        margin-left: 0 !important;
        padding-top: 0 !important;
    }

    .mud-container {
        padding: 0px 2px 0px 0px !important;
    }

    /* Ocultar drawer y overlays de MudBlazor */
    .mud-drawer,
    .mud-overlay {
        display: none !important;
    }

    /* Controla el zoom y colores de los elementos */
    body {
        zoom: 0.7;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Configuración de página */
    @page {
        margin: 10mm;
        size: A4;
    }

    /* ---------------------------------- */
    /* Mejoras al renderizar la impresión */
    /* ---------------------------------- */

    /* Tablas: evitar que las filas se corten entre páginas */
    table {
        page-break-inside: auto;
    }

    tr {
        page-break-inside: avoid;
        page-break-after: auto;
    }

    /* Tipografía: evitar títulos huérfanos */
    h1, h2, h3, h4, h5, h6 {
        page-break-after: avoid;
        page-break-inside: avoid;
    }
}
