/* core/static/core/css/dark_theme.css */

/* Define as variáveis de cor para ambos os temas */
:root {
    --color-bg-light: #f8f9fa;
    --color-text-light: #212529;
    --color-card-bg-light: #ffffff;
    --color-border-light: #dee2e6;
    --color-link-light: #007bff;
    --color-table-header-light: #e9ecef;

    --color-bg-dark: #121212;
    --color-text-dark: #e0e0e0;
    --color-card-bg-dark: #1e1e1e;
    --color-border-dark: #444;
    --color-link-dark: #64b5f6;
    --color-table-header-dark: #343a40;
}

/* Estilos padrão (Modo Claro) */
body {
    background-color: var(--color-bg-light);
    color: var(--color-text-light);
    transition: background-color 0.3s ease, color 0.3s ease;
}

.card {
    background-color: var(--color-card-bg-light);
    border-color: var(--color-border-light);
}
.bg-light {
    background-color: var(--color-card-bg-light) !important;
}

/* Estilos quando a classe .dark-mode é aplicada no body */
body.dark-mode {
    background-color: var(--color-bg-dark);
    color: var(--color-text-dark);
}

body.dark-mode .navbar.bg-dark {
    background-color: var(--color-card-bg-dark) !important;
    border-bottom: 1px solid var(--color-border-dark);
}

body.dark-mode .card {
    background-color: var(--color-card-bg-dark);
    border-color: var(--color-border-dark);
    color: var(--color-text-dark);
}

body.dark-mode .bg-light {
    background-color: var(--color-card-bg-dark) !important;
    color: var(--color-text-dark);
}

body.dark-mode .table {
    color: var(--color-text-dark);
}

body.dark-mode .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.05);
}

body.dark-mode .thead-dark th {
    background-color: var(--color-table-header-dark);
    border-color: var(--color-border-dark);
}

body.dark-mode .form-control {
    background-color: #2a2a2a;
    color: var(--color-text-dark);
    border-color: var(--color-border-dark);
}

body.dark-mode .form-control:focus {
    background-color: #2a2a2a;
    color: var(--color-text-dark);
    border-color: var(--color-link-dark);
    box-shadow: 0 0 0 0.2rem rgba(100, 181, 246, 0.25);
}

body.dark-mode a {
    color: var(--color-link-dark);
}

body.dark-mode .dropdown-menu {
     background-color: var(--color-card-bg-dark);
     border-color: var(--color-border-dark);
}

 body.dark-mode .dropdown-item {
    color: var(--color-text-dark);
}

body.dark-mode .dropdown-item:hover {
    background-color: var(--color-border-dark);
    color: #fff;
}

body.dark-mode .dropdown-header {
    color: #999;
}

body.dark-mode .dropdown-divider {
    border-top-color: var(--color-border-dark);
}

body.dark-mode .table-hover tbody tr:hover {
    background-color: rgba(255, 255, 255, 0.075) !important; /* Define um fundo de destaque sutil */
    color: var(--color-text-dark) !important; /* FORÇA o texto a permanecer claro */
}

/* Adicione este bloco no final do arquivo */
body.dark-mode .table .table-info,
body.dark-mode .table-info > th,
body.dark-mode .table-info > td {
    background-color: #0d345a !important; /* Azul escuro */
    color: var(--color-text-dark) !important;
}

body.dark-mode .table .table-success,
body.dark-mode .table-success > th,
body.dark-mode .table-success > td {
    background-color: #0c4b33 !important; /* Verde escuro */
    color: var(--color-text-dark) !important;
}

body.dark-mode .table .table-warning,
body.dark-mode .table-warning > th,
body.dark-mode .table-warning > td {
    background-color: #663c00 !important; /* Laranja/Âmbar escuro */
    color: var(--color-text-dark) !important;
}

body.dark-mode .table .table-danger,
body.dark-mode .table-danger > th,
body.dark-mode .table-danger > td {
    background-color: #5c1a1a !important; /* Vermelho escuro */
    color: var(--color-text-dark) !important;
}

body.dark-mode .table .table-primary,
body.dark-mode .table-primary > th,
body.dark-mode .table-primary > td {
    background-color: #003c7e !important; /* Azul primário escuro */
    color: var(--color-text-dark) !important;
}

/* Caixa principal do Select2 */
body.dark-mode .select2-container--bootstrap-5 .select2-selection {
    background-color: #2a2a2a !important;
    border-color: var(--color-border-dark) !important;
    color: var(--color-text-dark) !important;
}

/* Texto da opção selecionada e placeholder */
body.dark-mode .select2-container--bootstrap-5 .select2-selection__rendered,
body.dark-mode .select2-container--bootstrap-5 .select2-selection__placeholder {
    color: var(--color-text-dark) !important;
}

/* Seta do dropdown */
body.dark-mode .select2-container--bootstrap-5 .select2-selection__arrow b {
    border-color: var(--color-text-dark) transparent transparent transparent !important;
}

/* Menu dropdown que abre */
body.dark-mode .select2-dropdown {
    background-color: var(--color-card-bg-dark) !important;
    border-color: var(--color-border-dark) !important;
}

/* Campo de busca dentro do dropdown */
body.dark-mode .select2-search--dropdown .select2-search__field {
    background-color: #333 !important;
    color: var(--color-text-dark) !important;
    border-color: var(--color-border-dark) !important;
}

/* Opções na lista do dropdown */
body.dark-mode .select2-results__option {
    color: var(--color-text-dark) !important;
}

/* Opção selecionada com o mouse (hover) ou teclado */
body.dark-mode .select2-results__option--highlighted {
    background-color: var(--color-link-dark) !important;
    color: #000 !important; /* Texto escuro para contraste com o fundo azul claro */
}

#theme-toggle,
#theme-toggle:hover,
#theme-toggle:focus {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}