/* Variáveis de tema - Modo claro (padrão) */
:root {
    /* Cores principais */
    --bg-color: #ffffff;
    --text-color: #333333;
    --link-color: #007BFF;
    --link-hover: #0056b3;
    
    /* Cores de componentes */
    --navbar-bg: #007BFF;
    --navbar-text: #ffffff;
    --dropdown-bg: #007BFF;
    --dropdown-hover: #0056b3;
    
    /* Cores de botões */
    --btn-primary-bg: #007BFF;
    --btn-primary-text: #ffffff;
    --btn-primary-hover: #0056b3;
    --btn-secondary-bg: #6c757d;
    --btn-secondary-text: #ffffff;
    --btn-secondary-hover: #5a6268;
    --btn-success-bg: #28a745;
    --btn-success-text: #ffffff;
    --btn-success-hover: #218838;
    --btn-danger-bg: #dc3545;
    --btn-danger-text: #ffffff;
    --btn-danger-hover: #c82333;
    
    /* Cores de formulários */
    --input-bg: #ffffff;
    --input-border: #cccccc;
    --input-text: #333333;
    --label-text: #555555;
    
    /* Cores de tabelas */
    --table-header-bg: #007BFF;
    --table-header-text: #ffffff;
    --table-row-even: #f2f2f2;
    --table-row-odd: #ffffff;
    --table-border: #dddddd;
    
    /* Cores de alertas */
    --alert-success-bg: #dff0d8;
    --alert-success-text: #3c763d;
    --alert-success-border: #d6e9c6;
    --alert-danger-bg: #f2dede;
    --alert-danger-text: #a94442;
    --alert-danger-border: #ebccd1;
    
    /* Cores de cards */
    --card-bg: #f8f9fa;
    --card-border: #dddddd;
    
    /* Ícones de tema */
    --theme-icon-display: block;
    --theme-icon-display-alt: none;
}

/* Variáveis de tema - Modo escuro */
[data-theme="dark"] {
    /* Cores principais */
    --bg-color: #121212;
    --text-color: #e0e0e0;
    --link-color: #4da3ff;
    --link-hover: #77b6ff;
    
    /* Cores de componentes */
    --navbar-bg: #1e1e1e;
    --navbar-text: #ffffff;
    --dropdown-bg: #2d2d2d;
    --dropdown-hover: #3d3d3d;
    
    /* Cores de botões */
    --btn-primary-bg: #0d6efd;
    --btn-primary-text: #ffffff;
    --btn-primary-hover: #0b5ed7;
    --btn-secondary-bg: #5c636a;
    --btn-secondary-text: #ffffff;
    --btn-secondary-hover: #4d545a;
    --btn-success-bg: #198754;
    --btn-success-text: #ffffff;
    --btn-success-hover: #157347;
    --btn-danger-bg: #dc3545;
    --btn-danger-text: #ffffff;
    --btn-danger-hover: #bb2d3b;
    
    /* Cores de formulários */
    --input-bg: #2d2d2d;
    --input-border: #444444;
    --input-text: #e0e0e0;
    --label-text: #cccccc;
    
    /* Cores de tabelas */
    --table-header-bg: #1e1e1e;
    --table-header-text: #ffffff;
    --table-row-even: #2d2d2d;
    --table-row-odd: #252525;
    --table-border: #444444;
    
    /* Cores de alertas */
    --alert-success-bg: #051b11;
    --alert-success-text: #75b798;
    --alert-success-border: #0f5132;
    --alert-danger-bg: #2c0b0e;
    --alert-danger-text: #ea868f;
    --alert-danger-border: #842029;
    
    /* Cores de cards */
    --card-bg: #2d2d2d;
    --card-border: #444444;
    
    /* Ícones de tema */
    --theme-icon-display: none;
    --theme-icon-display-alt: block;
}

/* Aplicação das variáveis de tema */
body {
    background-color: var(--bg-color);
    color: var(--text-color);
    transition: background-color 0.3s ease, color 0.3s ease;
}

a {
    color: var(--link-color);
}

a:hover {
    color: var(--link-hover);
}

/* Navbar */
.navbar {
    background-color: var(--navbar-bg);
    color: var(--navbar-text);
}

.menu-items a {
    color: var(--navbar-text);
}

.menu-items a:hover {
    background-color: var(--dropdown-hover);
}

.dropdown-menu {
    background-color: var(--dropdown-bg);
}

.dropdown-menu a:hover {
    background-color: var(--dropdown-hover);
}

/* Botões */
button, .btn {
    background-color: var(--btn-primary-bg);
    color: var(--btn-primary-text);
}

button:hover, .btn:hover {
    background-color: var(--btn-primary-hover);
}

.clear-btn, .back-btn, .print-btn {
    background-color: var(--btn-secondary-bg);
    color: var(--btn-secondary-text);
}

.clear-btn:hover, .back-btn:hover, .print-btn:hover {
    background-color: var(--btn-secondary-hover);
}

.export-btn, .action-links a.edit {
    background-color: var(--btn-success-bg);
    color: var(--btn-success-text);
}

.export-btn:hover, .action-links a.edit:hover {
    background-color: var(--btn-success-hover);
}

.exit-btn, .action-links a.delete, .delete-btn {
    background-color: var(--btn-danger-bg);
    color: var(--btn-danger-text);
}

.exit-btn:hover, .action-links a.delete:hover, .delete-btn:hover {
    background-color: var(--btn-danger-hover);
}

/* Formulários */
input, select {
    background-color: var(--input-bg);
    border-color: var(--input-border);
    color: var(--input-text);
}

label {
    color: var(--label-text);
}

/* Tabelas */
th {
    background-color: var(--table-header-bg);
    color: var(--table-header-text);
}

tr:nth-child(even) {
    background-color: var(--table-row-even);
}

tr:nth-child(odd) {
    background-color: var(--table-row-odd);
}

th, td {
    border-color: var(--table-border);
}

/* Alertas */
.alert-success {
    background-color: var(--alert-success-bg);
    color: var(--alert-success-text);
    border-color: var(--alert-success-border);
}

.alert-danger {
    background-color: var(--alert-danger-bg);
    color: var(--alert-danger-text);
    border-color: var(--alert-danger-border);
}

/* Cards */
.kpi-card {
    background-color: var(--card-bg);
    border-color: var(--card-border);
}

/* Sugestões */
.sugestoes {
    background-color: var(--input-bg);
    border-color: var(--input-border);
}

.sugestoes div:hover {
    background-color: var(--table-row-even);
}

/* Botão de alternância de tema */
.theme-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border: 1px solid var(--navbar-text);
    color: var(--navbar-text);
    padding: 5px 10px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.9rem;
    margin-left: 10px;
}

.theme-toggle:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

.theme-toggle .dark-icon {
    display: var(--theme-icon-display);
}

.theme-toggle .light-icon {
    display: var(--theme-icon-display-alt);
}

/* Ajustes para login */
.container {
    background-color: var(--bg-color);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.container h1 {
    color: var(--text-color);
}

.container .footer {
    color: var(--label-text);
}

/* Ajustes para mensagens de erro e sucesso */
.error {
    color: var(--alert-danger-text);
}

.success {
    color: var(--alert-success-text);
}
