/* Regole CSS specifiche per la stampa */
@media print {
    /* Reset assoluto di posizioni e scroll */
    * {
        overflow: visible !important;
    }
    
    html, body {
        height: auto !important;
        overflow: visible !important;
        margin: 0 !important;
        padding: 0 !important;
        position: static !important;
    }
    
    /* Nascondi sidebar, navbar e altri elementi UI */
    .sidebar,
    .top-row,
    nav,
    .navbar,
    .d-print-none,
    button,
    .btn {
        display: none !important;
    }
    
    /* Reset completo layout Blazor */
    .page {
        display: block !important;
        position: static !important;
        flex-direction: column !important;
        height: auto !important;
    }
    
    main {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: none !important;
    }
    
    article,
    article.content,
    .content {
        position: static !important;
        padding: 10mm !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Mostra elementi visibili solo in stampa */
    .d-print-block {
        display: block !important;
    }
    
    .d-print-table {
        display: table !important;
    }
    
    /* Gestione tabelle per stampa multi-pagina */
    table {
        page-break-inside: auto !important;
        width: 100% !important;
        border-collapse: collapse !important;
        margin: 0 !important;
        position: static !important;
    }
    
    thead {
        display: table-header-group !important;
    }
    
    tbody {
        display: table-row-group !important;
    }
    
    tfoot {
        display: table-footer-group !important;
    }
    
    tr {
        page-break-inside: avoid !important;
        page-break-after: auto !important;
    }
    
    td, th {
        page-break-inside: avoid !important;
    }
    
    /* Evita interruzioni indesiderate */
    h1, h2, h3, h4, h5, h6 {
        page-break-after: avoid !important;
        page-break-inside: avoid !important;
    }
    
    /* Margini pagina per stampa */
    @page {
        margin: 10mm;
        size: A4 portrait;
    }
}
