/* Regras exclusivas do papel: o restante da aplicação não ocupa páginas. */
@media print {
    @page { size: auto; margin: 10mm; }

    body:has(:is(.request-print-overlay, .vehicle-print-overlay, .report-modal-backdrop, #consulta-documentos-nota)) {
        margin: 0 !important;
        padding: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }
    body:has(:is(.request-print-overlay, .vehicle-print-overlay, .report-modal-backdrop, #consulta-documentos-nota)) *:not(:is(.request-print-overlay, .vehicle-print-overlay, .report-modal-backdrop, #consulta-documentos-nota)):not(:is(.request-print-overlay, .vehicle-print-overlay, .report-modal-backdrop, #consulta-documentos-nota) *):not(:has(:is(.request-print-overlay, .vehicle-print-overlay, .report-modal-backdrop, #consulta-documentos-nota))) {
        display: none !important;
    }
    body *:has(:is(.request-print-overlay, .vehicle-print-overlay, .report-modal-backdrop, #consulta-documentos-nota)),
    body :is(.request-print-overlay, .vehicle-print-overlay, .report-modal-backdrop) {
        display: block !important;
        position: static !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        transform: none !important;
    }
    body :is(.request-print-sheet, .vehicle-print-sheet) {
        display: block !important;
        max-height: none !important;
        overflow: visible !important;
        font: 10pt/1.4 Arial, sans-serif;
    }
    body :is(.request-print-header, .vehicle-print-header) {
        flex-direction: row;
        break-after: avoid;
    }
    body :is(.request-print-data, .vehicle-print-data) {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: visible;
        break-inside: auto;
    }
    body :is(.request-print-data, .vehicle-print-data) > div { break-inside: avoid; }
    body :is(.request-print-description, .vehicle-print-observations) {
        display: block;
        break-inside: auto;
    }
    body .request-print-description h2 { break-after: avoid; }
    body .request-print-description p { orphans: 3; widows: 3; }
    body .sinistro-foto-impressao { display: block; break-before: page; break-inside: avoid; }
    body .sinistro-foto-impressao img { max-height: 140mm; width: 100%; object-fit: contain; }
}

@media screen {
    #operlync-print-copy { display: none; }
}

@media print {
    body:has(> #operlync-print-copy) > :not(#operlync-print-copy) {
        display: none !important;
    }

    #operlync-print-copy.financial-control {
        display: block;
        font: 11px Arial, sans-serif;
    }

    #operlync-print-copy.financial-control * { visibility: visible !important; }
    #operlync-print-copy .fc-scroll { overflow: visible !important; }
    #operlync-print-copy.financial-control table {
        min-width: 0 !important;
        width: 100% !important;
        table-layout: fixed;
    }
    #operlync-print-copy .fc-panel { overflow: visible; break-inside: auto; }
    #operlync-print-copy .fc-panel header { break-after: avoid; }
    #operlync-print-copy thead { display: table-header-group; }
    #operlync-print-copy tr { break-inside: avoid; }
    #operlync-print-copy .fc-panel :is(td, th) {
        min-width: 0 !important;
        white-space: normal !important;
        overflow-wrap: anywhere;
        padding: 6px;
        font-size: 9px;
    }
    #operlync-print-copy .fc-indicators { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    #operlync-print-copy .fc-indicator { padding: 8px; }
    #operlync-print-copy .fc-indicator strong { font-size: 14px; }
    #operlync-print-copy .fc-indicator span { font-size: 10px; }
}
