/*
 * N2.7 — Print stylesheet global
 *
 * Aplicado quando user usa Cmd+P / Ctrl+P em qualquer página do painel
 * ou portal. Não substitui os PDFs gerados via Browsershot — é fallback
 * para impressão direta do navegador.
 *
 * Carregado via render hook HEAD_END no AdminPanelProvider.
 */

@media print {
    /* Esconde navegação, sidebars e elementos interativos */
    .fi-sidebar,
    .fi-topbar,
    .fi-page-header-actions,
    .fi-ta-actions,
    .fi-ta-header-toolbar,
    .fi-ta-filters,
    .fi-ta-bulk-actions,
    .fi-ta-pagination,
    .fi-ta-empty-state-actions,
    .fi-modal,
    .fi-notifications,
    button,
    [role="button"],
    [type="button"],
    [type="submit"],
    nav,
    .no-print {
        display: none !important;
    }

    /* Reset cores para tinta econômica */
    body, html {
        background: white !important;
        color: black !important;
        font-size: 10pt !important;
        line-height: 1.4 !important;
    }

    /* Páginas A4 com margens razoáveis */
    @page {
        size: A4;
        margin: 1.5cm 1.2cm;
    }

    /* Tabelas: bordas visíveis na impressão */
    table {
        border-collapse: collapse !important;
        width: 100% !important;
        page-break-inside: auto !important;
    }
    tr {
        page-break-inside: avoid !important;
        page-break-after: auto !important;
    }
    th, td {
        border: 1px solid #888 !important;
        padding: 4px 8px !important;
        background: white !important;
        color: black !important;
    }
    thead {
        display: table-header-group !important;
    }
    tfoot {
        display: table-footer-group !important;
    }

    /* Cards / sections */
    .fi-section,
    .fi-card,
    .fi-fo-section {
        border: 1px solid #ccc !important;
        background: white !important;
        page-break-inside: avoid !important;
        box-shadow: none !important;
        padding: 8px !important;
        margin-bottom: 8px !important;
    }

    /* Headings */
    h1, h2, h3, h4 {
        color: black !important;
        page-break-after: avoid !important;
    }
    h1 { font-size: 18pt !important; }
    h2 { font-size: 14pt !important; }
    h3 { font-size: 12pt !important; }

    /* Links: mostrar URL ao lado do texto */
    a[href]:after {
        content: " (" attr(href) ")";
        font-size: 8pt;
        color: #555;
    }
    /* Não imprimir URL para links internos curtos */
    a[href^="#"]:after,
    a[href^="javascript:"]:after,
    a.fi-btn:after {
        content: "";
    }

    /* Quote portal: max readability */
    .quote-portal {
        max-width: 100% !important;
    }

    /* Imagens: limitar tamanho */
    img {
        max-width: 100% !important;
        page-break-inside: avoid !important;
    }

    /* Charts SVG (Pulse cards, dashboards) */
    svg {
        max-width: 100% !important;
        height: auto !important;
    }

    /* Forçar print-friendly em badges Filament */
    .fi-badge {
        border: 1px solid #888 !important;
        background: white !important;
        color: black !important;
        padding: 2px 6px !important;
    }
}
