/* Estilos globais para impressão */
@media print {
    /* Reset geral para impressão */
    * {
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }
    
    /* Header da página - ocultar completamente */
    header, .header, .navbar {
        display: none !important;
    }
    
    /* Cabeçalho de impressão personalizado */
    .print-header-card {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        max-width: 800px !important;
        margin: 30px auto 40px auto !important;
        padding: 20px !important;
        background: #fff !important;
        text-align: center !important;
        page-break-after: avoid !important;
    }
    
    /* Container das logos */
    .print-logo-container {
        text-align: center !important;
        margin-bottom: 15px !important;
    }
    
    /* Logo no cabeçalho personalizado */
    .print-logo, .print-logo-default {
        max-width: 100px !important;
        height: auto !important;
        margin: 0 auto !important;
        display: block !important;
    }
    
    /* Ocultar texto alternativo das imagens */
    .print-logo[alt="Logo do Órgão"], .print-logo-default[alt="Logo Padrão"] {
        font-size: 0 !important;
        color: transparent !important;
    }
    
    /* Ocultar qualquer texto que apareça no lugar das imagens */
    .print-logo-container img::after {
        content: "" !important;
        display: none !important;
    }
    
    /* Nome do órgão no cabeçalho personalizado */
    .print-org-name {
        font-size: 22px !important;
        font-weight: bold !important;
        color: #000 !important;
        margin: 0 !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
    }
    
    /* Ocultar completamente o header original da aplicação */
    header, .header, .navbar, .navbar-expand, .navbar-expand-lg, .navbar-expand-md, .navbar-expand-sm,
    .navbar-expand-xl, .navbar-light, .navbar-dark, .bg-light, .bg-dark,
    .navbar-brand, .navbar-toggler, .navbar-toggler-icon, .navbar-text,
    .navbar-nav, .navbar-collapse, .navbar-nav .nav-link, .navbar-nav .dropdown-toggle,
    .navbar-nav .dropdown-menu, .navbar-nav .dropdown-item, .navbar-nav .nav-item,
    .navbar-nav .nav-link.active, .navbar-nav .nav-link.show, .navbar-nav .dropdown-item.active,
    .navbar-nav .dropdown-item.show, [class*="navbar-"], [class*="nav-"] {
        display: none !important;
    }
    
    /* Ocultar sidebar e menus de navegação */
    .sidebar, .licitacao-nav, .menu-navegacao, .nav, .navigation,
    .licitacao-nav-title, .licitacao-dashboard-btn, .licitacao-nav-item,
    .licitacao-dropdown-item, .licitacao-nav-icon, .menu-navegacao,
    .licitacao-nav, .licitacao-nav-title, .licitacao-dashboard-btn,
    .licitacao-nav-item, .licitacao-dropdown-item, .licitacao-nav-icon {
        display: none !important;
    }
    
    /* Ocultar breadcrumb */
    .breadcrumb {
        display: none !important;
    }
    
    /* Ocultar hero section original */
    .hero, .hero-pattern {
        display: none !important;
    }
    
    /* Botões e elementos de ação */
    .btn, .dropdown, .export-buttons, .filter-container, .alert, .page-message,
    .data-absence-alert, .btn-light, .dropdown-toggle, .dropdown-menu {
        display: none !important;
    }
    
    /* Paginação */
    .pagination, .card-footer, .pagination-container {
        display: none !important;
    }
    
    /* Ajustes da tabela */
    .table {
        width: 100% !important;
        border-collapse: collapse !important;
        font-size: 12px !important;
        margin: 0 !important;
    }
    
    .table th, .table td {
        border: 1px solid #000 !important;
        padding: 8px !important;
        text-align: left !important;
        vertical-align: top !important;
    }
    
    .table th {
        background-color: #f0f0f0 !important;
        font-weight: bold !important;
        color: #000 !important;
    }
    
    /* Container principal - manter largura normal */
    .container {
        width: 100% !important;
        max-width: 1200px !important;
        margin: 0 auto !important;
        padding: 0 15px !important;
    }
    
    .card, .card-body, .table-responsive {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        box-shadow: none !important;
    }
    
    /* Título da página */
    h1, h2, h3, h4, h5, h6 {
        margin-bottom: 15px !important;
        page-break-after: avoid !important;
        color: #000 !important;
    }
    
    /* Evitar quebras de página em linhas da tabela */
    tr {
        page-break-inside: avoid !important;
    }
    
    /* Margens da página */
    @page {
        margin: 1.5cm !important;
        size: A4 !important;
    }
    
    /* Cabeçalho de impressão automático - apenas quando não há header visível */
    body::before {
        content: "" !important;
        display: none !important;
    }
    
    /* Data e hora da impressão */
    body::after {
        content: "Impresso em: " attr(data-print-time);
        display: block !important;
        text-align: right !important;
        font-size: 10px !important;
        margin-top: 15px !important;
        color: #000 !important;
    }
    
    /* Títulos dos cards do rodapé em branco */
    .footer h5, .footer h6 {
        color: #fff !important;
    }
    
    /* Ajustes específicos para tabelas de dados */
    .data-table, .table-container {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Ocultar elementos específicos do sistema */
    .alert-info, .alert-warning, .alert-danger, .alert-success,
    .page-message, .data-absence-alert, .filter-container,
    .export-buttons, .btn-group, .dropdown {
        display: none !important;
    }
    
    /* Ajustes para formulários (se houver) */
    .form-control, .form-select, .form-check {
        border: 1px solid #ccc !important;
        background: transparent !important;
    }
    
    /* Ajustes para badges e labels */
    .badge, .label {
        background: transparent !important;
        border: 1px solid #000 !important;
        color: #000 !important;
    }
    
    /* Ajustes para ícones (se necessário) */
    .fas, .fa, .bi {
        display: none !important;
    }
    
    /* Ajustes para cores de texto */
    .text-primary, .text-success, .text-warning, .text-danger {
        color: #000 !important;
    }
    
    /* Ajustes para backgrounds */
    .bg-light, .bg-primary, .bg-success, .bg-warning, .bg-danger {
        background: transparent !important;
    }
    
    /* Ajustes para sombras */
    .shadow, .shadow-sm, .shadow-lg {
        box-shadow: none !important;
    }
    
    /* Ajustes para bordas arredondadas */
    .rounded, .rounded-top, .rounded-bottom, .rounded-left, .rounded-right {
        border-radius: 0 !important;
    }
    
    /* Ajustes para margens e paddings específicos */
    .py-5, .py-4, .py-3, .py-2, .py-1 {
        padding: 0 !important;
    }
    
    .my-5, .my-4, .my-3, .my-2, .my-1 {
        margin: 0 !important;
    }
    
    /* Ajustes para flexbox - manter alinhamento */
    .d-flex {
        display: flex !important;
    }
    
    .flex-row {
        flex-direction: row !important;
    }
    
    .flex-column {
        flex-direction: column !important;
    }
    
    .justify-content-between {
        justify-content: space-between !important;
    }
    
    .align-items-center {
        align-items: center !important;
    }
    
    .text-center {
        text-align: center !important;
    }
    
    .text-end {
        text-align: right !important;
    }
    
    /* Ajustes para grid - manter layout responsivo */
    .row {
        display: flex !important;
        flex-wrap: wrap !important;
        margin: 0 -15px !important;
    }
    
    .col, .col-12 {
        width: 100% !important;
        padding: 0 15px !important;
        margin: 0 !important;
    }
    
    .col-md-3 {
        width: 25% !important;
        padding: 0 15px !important;
        margin: 0 !important;
    }
    
    .col-md-6 {
        width: 50% !important;
        padding: 0 15px !important;
        margin: 0 !important;
    }
    
    .col-md-9 {
        width: 75% !important;
        padding: 0 15px !important;
        margin: 0 !important;
    }
}
