/* ======================================================= */
/* MÓDULO: EXPORTAR XML (FISCAL)                           */
/* ======================================================= */

.modal-exportar-xml {
    display: flex;
    flex-direction: column;
    max-width: 950px;
    height: 80vh;
    background-color: #ffffff;
}

/* Área de Rolagem */
.scroll-area-xml {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
    background: #f8fafc;
}

/* Inputs Minimalistas */
.input-minimalista {
    width: 100%;
    height: 32px !important;
    padding: 4px 8px !important;
    font-size: 0.85em !important;
    color: #495057;
    background-color: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s ease;
}

.input-minimalista:focus {
    border-color: var(--primary-color);
}

/* Painel de Filtros Exclusivo */
.filtros-exportacao-xml {
    background: #ffffff;
    padding: 15px;
    border-radius: 6px;
    border: 1px solid #eee;
    margin-bottom: 20px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
    align-items: flex-end;
}

.filtros-exportacao-xml label {
    font-weight: 600;
    color: #495057;
    font-size: 0.85em;
    margin-bottom: 4px;
    display: block;
}

/* Tabela e Destaques Visuais */
.container-tabela-xml {
    background: #ffffff;
    border-radius: 6px;
    border: 1px solid #eee;
    overflow-x: auto;
    /* Permite rolar horizontalmente se o ecrã for muito pequeno */
}

/* Força a tabela a não quebrar linhas */
.tabela-xml-compacta th,
.tabela-xml-compacta td {
    white-space: nowrap !important;
    padding: 8px 12px !important;
    font-size: 0.85em !important;
    vertical-align: middle;
    color: #495057;
}

.tabela-xml-compacta th {
    font-weight: 700 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

/* Destaques compactos */
.td-destaque-autorizada {
    color: #10b981 !important;
    font-weight: 700 !important;
    background-color: #f0fdf4 !important;
}

.td-destaque-cancelada {
    color: #ef4444 !important;
    font-weight: 700 !important;
    background-color: #fef2f2 !important;
}

.td-valor-bruto {
    color: #64748b !important;
    font-weight: 600 !important;
}

.td-valor-liquido {
    color: var(--primary-color) !important;
    font-weight: 700 !important;
}

/* Identificação da loja na mesma linha */
.loja-identificacao-xml {
    display: flex;
    flex-direction: row;
    /* Garante que fique lado a lado */
    align-items: center;
    gap: 8px;
}

.loja-razao-xml {
    font-weight: 600;
    color: #495057;
    font-size: 0.95em;
}

/* ======================================================= */
/* BLINDAGEM DE BOTÕES (CANCELA, PESQUISA E DOWNLOAD)      */
/* ======================================================= */

/* Botão Pesquisar (Centralizado) */
.btn-pesquisar-xml {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    height: 32px !important;
    padding: 0 16px !important;
    font-size: 0.85em !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    border: none !important;
    background: var(--primary-color) !important;
    color: #ffffff !important;
    cursor: pointer !important;
    margin: 0 !important;
    transition: all 0.2s ease !important;
}

.btn-pesquisar-xml:hover {
    filter: brightness(0.95) !important;
}

/* Proteção do Rodapé */
.footer-xml-fixo .btn-cancelar-outline,
.footer-xml-fixo .btn-avancar-primary {
    font-size: 0.85em !important;
    font-weight: 600 !important;
    padding: 0 16px !important;
    height: 32px !important;
    line-height: normal !important;
    border-radius: 6px !important;
    text-transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    width: auto !important;
    /* Impede que a classe fechar-popup expanda o botão */
    box-sizing: border-box !important;
    gap: 6px !important;
    margin: 0 !important;
}

.footer-xml-fixo .btn-cancelar-outline {
    border: 1px solid #ef4444 !important;
    color: #ef4444 !important;
    background: transparent !important;
}

.footer-xml-fixo .btn-cancelar-outline:hover {
    background: #fef2f2 !important;
}

.footer-xml-fixo .btn-avancar-primary {
    border: none !important;
    background: var(--primary-color) !important;
    color: #ffffff !important;
}

.footer-xml-fixo .btn-avancar-primary:hover {
    filter: brightness(0.95) !important;
}