/* ==========================================================================
   css/print.css - Estilos Otimizados para Impressão A4 (Sistema LPA2v)
   ========================================================================== */

@media print {
    /* -------------------------------------------------------------------------
       1. LIMPEZA DE INTERFACE E ELEMENTOS NÃO IMPRIMÍVEIS
       ------------------------------------------------------------------------- */
    /* Oculta navegação, cabeçalhos, rodapés, botões e elementos flutuantes */
    header, 
    footer, 
    nav, 
    .nav-toggle, 
    .btn, 
    button, 
    .action-bar, 
    .no-print, 
    .popup-overlay, 
    .notification-container,
    #logoutLink,
    .form-group select, /* Oculta os selects, mantendo apenas os labels se necessário */
    .form-row, /* Oculta a linha de filtros inteira para focar no resultado */
    .filters-container {
        display: none !important;
    }

    /* -------------------------------------------------------------------------
       2. CONFIGURAÇÃO DA PÁGINA (A4)
       ------------------------------------------------------------------------- */
    @page {
        size: A4;
        margin: 1.5cm; /* Margem segura para impressoras padrão */
    }

    body {
        background-color: #ffffff !important;
        color: #000000 !important;
        font-family: "Segoe UI", Arial, Helvetica, sans-serif;
        font-size: 11pt;
        line-height: 1.4;
        margin: 0;
        padding: 0;
        -webkit-print-color-adjust: exact !important; /* Garante impressão de cores de fundo */
        print-color-adjust: exact !important;
    }

    /* -------------------------------------------------------------------------
       3. ESTRUTURA E LAYOUT
       ------------------------------------------------------------------------- */
    .container, 
    .page-container, 
    main {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
    }

    /* Remove sombras e bordas decorativas dos cards */
    .card, 
    .chart-box {
        border: none !important;
        box-shadow: none !important;
        margin-bottom: 20px !important;
        padding: 0 !important;
        background: transparent !important;
        page-break-inside: avoid; /* Evita quebra de card no meio */
    }

    /* Títulos para relatório */
    h1, h2, h3 {
        color: #000 !important;
        text-align: center;
        page-break-after: avoid;
    }

    h2 {
        font-size: 16pt;
        border-bottom: 2px solid #000;
        padding-bottom: 5px;
        margin-bottom: 15px;
    }

    h3 {
        font-size: 14pt;
        margin-top: 0;
        margin-bottom: 10px;
        text-align: left;
        border-left: 4px solid #333; /* Identificador visual simples */
        padding-left: 10px;
    }

    /* -------------------------------------------------------------------------
       4. GRÁFICOS E VISUALIZAÇÃO (Chart.js)
       ------------------------------------------------------------------------- */
    /* Transforma o Grid em Bloco para empilhar verticalmente na impressão */
    .grid-charts {
        display: block !important;
    }

    /* Força tamanho fixo para garantir renderização correta do Canvas */
    .chart-box {
        width: 100% !important;
        height: 450px !important; /* Altura fixa para garantir legibilidade */
        border: 1px solid #ccc !important; /* Borda fina para delimitar o gráfico */
        border-radius: 4px !important;
        padding: 10px !important;
        margin-bottom: 30px !important;
        page-break-inside: avoid; /* Não quebra o gráfico ao meio */
    }

    canvas {
        max-width: 100% !important;
        max-height: 100% !important;
    }

    /* -------------------------------------------------------------------------
       5. TABELAS DE DADOS (Coords Table)
       ------------------------------------------------------------------------- */
    .coords-table {
        width: 100% !important;
        border-collapse: collapse !important;
        font-size: 9pt !important;
        margin-top: 10px;
    }

    .coords-table th, 
    .coords-table td {
        border: 1px solid #000 !important;
        padding: 4px 8px !important;
        text-align: center;
        color: #000 !important;
    }

    .coords-table th {
        background-color: #f0f0f0 !important; /* Fundo cinza claro para cabeçalho */
        font-weight: bold;
    }

    /* Evita quebra de linhas da tabela */
    tr {
        page-break-inside: avoid;
        page-break-after: auto;
    }

    thead {
        display: table-header-group; /* Repete cabeçalho se a tabela quebrar página */
    }

    tfoot {
        display: table-footer-group;
    }

    /* -------------------------------------------------------------------------
       6. ELEMENTOS ESPECÍFICOS (Tags e Badges)
       ------------------------------------------------------------------------- */
    /* Garante que as cores das sub-regiões (A+, B-, etc) sejam impressas */
    .sub-regiao-tag {
        border: 1px solid #000 !important;
        background-color: #eee !important;
        color: #000 !important;
        padding: 2px 5px !important;
        border-radius: 3px !important;
        font-weight: bold !important;
    }

    /* Adiciona data de impressão no rodapé da página (pseudo-elemento opcional) */
    body::after {
        content: "Relatório gerado pelo Sistema SPEA - LPA2v";
        position: fixed;
        bottom: 0;
        right: 0;
        font-size: 8pt;
        color: #555;
        background: #fff;
        padding: 5px;
    }
}