/* ==========================================================================
   AVALI-EE - MODO ESCURO (DARK MODE)
   TEMA REFINADO COM ALTO CONTRASTE E PALETA SLATE / CYBER AZUL
   ========================================================================== */

[data-theme="dark"] {
    --primary-color: #38bdf8;
    --primary-light: #1e293b;
    --primary-hover: #0284c7;
    --primary-tint: #0f172a;

    --accent-green: #22c55e;
    --accent-green-hover: #16a34a;
    --accent-green-light: #14532d;

    --bg-color: #0b1329;
    --card-bg: #151f38;
    --sidebar-bg: #0f172a;
    --text-color: #f1f5f9;
    --text-secondary: #94a3b8;
    --text-muted: #64748b;
    --border-color: #27354f;
    --border-light: #1e293b;

    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 10px 25px -3px rgba(0, 0, 0, 0.5);

    /* Variáveis do Painel Admin */
    --primary: #38bdf8;
    --primary-light: #151f38;
}

/* Transição Suave Global ao Alternar o Tema */
body, .sidebar, .modal-content, .card, .admin-container, .card-painel, input, select, textarea {
    transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

/* Regras Globais no Modo Escuro */
[data-theme="dark"] body {
    background-color: var(--bg-color) !important;
    color: var(--text-color) !important;
}

/* Sidebar e Navegação */
[data-theme="dark"] .sidebar {
    background-color: var(--sidebar-bg) !important;
    border-right: 1px solid var(--border-color) !important;
    color: var(--text-color) !important;
}

[data-theme="dark"] .sidebar-header {
    background-color: var(--sidebar-bg) !important;
    border-bottom: 1px solid var(--border-color) !important;
}

[data-theme="dark"] .sidebar-logo-container {
    background: transparent !important;
    background-color: transparent !important;
}

[data-theme="dark"] .sidebar-logo {
    background: transparent !important;
    background-color: transparent !important;
    border-top: none !important;
    content: url('../img/logo-dark.png');
}

/* Marca Institucional e Contêineres de Logo */
[data-theme="dark"] .modal-brand {
    border-bottom-color: var(--border-color) !important;
}

[data-theme="dark"] .login-secretaria-title {
    color: #94a3b8 !important;
}

[data-theme="dark"] .modal-logo-container {
    background: transparent !important;
    background-color: transparent !important;
}

[data-theme="dark"] .login-logo,
[data-theme="dark"] .navbar-logo,
[data-theme="dark"] .form-header-logo {
    content: url('../img/logo-dark.png');
}

[data-theme="dark"] .navbar-logo-container {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

[data-theme="dark"] .form-header-brand {
    background: transparent !important;
    background-color: transparent !important;
}

[data-theme="dark"] .form-header-logo-container {
    background: transparent !important;
    background-color: transparent !important;
}

[data-theme="dark"] .form-header-logo {
    background: transparent !important;
    background-color: transparent !important;
}

[data-theme="dark"] .user-profile-card {
    background-color: var(--card-bg) !important;
    border: 1px solid var(--border-color) !important;
}

[data-theme="dark"] .user-name {
    color: #f8fafc !important;
}

[data-theme="dark"] .user-email {
    color: #94a3b8 !important;
}

[data-theme="dark"] .sidebar-nav .nav-item {
    color: #94a3b8 !important;
}

[data-theme="dark"] .sidebar-nav .nav-item:hover {
    background-color: rgba(56, 189, 248, 0.1) !important;
    color: #38bdf8 !important;
}

[data-theme="dark"] .sidebar-nav .nav-item.active {
    background-color: rgba(56, 189, 248, 0.15) !important;
    color: #38bdf8 !important;
    font-weight: 600;
}

[data-theme="dark"] .sidebar-footer {
    background-color: var(--sidebar-bg) !important;
    border-top: 1px solid var(--border-color) !important;
}

/* Cards, Containers e Painéis */
[data-theme="dark"] .admin-container,
[data-theme="dark"] .card,
[data-theme="dark"] .card-painel,
[data-theme="dark"] .stat-card,
[data-theme="dark"] .perguntas-card,
[data-theme="dark"] .custom-confirm-card,
[data-theme="dark"] .modal-content {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    color: var(--text-color) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3) !important;
}

[data-theme="dark"] .stat-card h3 {
    color: var(--text-secondary) !important;
}

[data-theme="dark"] .stat-card .number {
    color: #38bdf8 !important;
}

/* Títulos e Tipografia */
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] .admin-header h1,
[data-theme="dark"] .header-pagina h1,
[data-theme="dark"] .card-painel h2,
[data-theme="dark"] .perguntas-card-title,
[data-theme="dark"] .modal-header h3,
[data-theme="dark"] .custom-confirm-title,
[data-theme="dark"] .login-system-title {
    color: #f8fafc !important;
}

[data-theme="dark"] p,
[data-theme="dark"] .admin-header p,
[data-theme="dark"] .header-pagina p,
[data-theme="dark"] .text-muted,
[data-theme="dark"] .custom-confirm-msg {
    color: var(--text-secondary) !important;
}

/* Formulários e Controles */
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea,
[data-theme="dark"] .perguntas-input,
[data-theme="dark"] .perguntas-select {
    background-color: #0b1329 !important;
    color: #f8fafc !important;
    border: 1px solid var(--border-color) !important;
}

[data-theme="dark"] input:focus,
[data-theme="dark"] select:focus,
[data-theme="dark"] textarea:focus {
    border-color: #38bdf8 !important;
    box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.25) !important;
    outline: none !important;
}

[data-theme="dark"] label,
[data-theme="dark"] .campo-grupo label,
[data-theme="dark"] .perguntas-label {
    color: var(--text-secondary) !important;
}

[data-theme="dark"] .form-alinhado,
[data-theme="dark"] .filtro-barra,
[data-theme="dark"] .seletor-container,
[data-theme="dark"] .bloco-header {
    background-color: #0b1329 !important;
    border-color: var(--border-color) !important;
}

/* Tabelas */
[data-theme="dark"] table,
[data-theme="dark"] .tabela-professores,
[data-theme="dark"] .tabela-moderna {
    background-color: var(--card-bg) !important;
    color: var(--text-color) !important;
}

[data-theme="dark"] th {
    background-color: #0b1329 !important;
    color: #94a3b8 !important;
    border-bottom: 1px solid var(--border-color) !important;
}

[data-theme="dark"] td {
    border-bottom: 1px solid var(--border-color) !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] tbody tr:hover {
    background-color: rgba(56, 189, 248, 0.08) !important;
}

/* Modais e Telas de Autenticação */
[data-theme="dark"] .modal-overlay {
    background: radial-gradient(circle at center, #151f38 0%, #080d1c 100%) !important;
}

[data-theme="dark"] .tab-btn {
    color: var(--text-secondary) !important;
    border-bottom: 2px solid transparent !important;
}

[data-theme="dark"] .tab-btn.active {
    color: #38bdf8 !important;
    border-bottom: 2px solid #38bdf8 !important;
}

[data-theme="dark"] .system-tag {
    background-color: rgba(56, 189, 248, 0.12) !important;
    color: #38bdf8 !important;
    border: 1px solid rgba(56, 189, 248, 0.3) !important;
}

[data-theme="dark"] .btn-link-back,
[data-theme="dark"] .forgot-pass-link {
    color: #38bdf8 !important;
}

/* ==========================================================================
   BOTÕES DE CONTROLE DE TEMA (MODO ESCURO / CLARO)
   ========================================================================== */

/* Botão Integrado na Barra Lateral */
.btn-theme-sidebar {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    background-color: #f1f5f9;
    color: #1e293b;
    border: 1px solid #cbd5e1;
    transition: all 0.2s ease;
    margin-bottom: 8px;
}

.btn-theme-sidebar:hover {
    background-color: #e2e8f0;
    color: #0b396a;
}

[data-theme="dark"] .btn-theme-sidebar {
    background-color: #151f38;
    color: #f1f5f9;
    border-color: #27354f;
}

[data-theme="dark"] .btn-theme-sidebar:hover {
    background-color: #1e2d4e;
    color: #38bdf8;
    border-color: #38bdf8;
}

/* Botão Flutuante (Login e Redefinição) */
.btn-theme-floating {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background-color: #ffffff;
    color: #0b396a;
    border: 1px solid #cbd5e1;
    box-shadow: 0 4px 14px rgba(11, 57, 106, 0.1);
    z-index: 10001;
    transition: all 0.25s ease;
}

.btn-theme-floating:hover {
    transform: scale(1.08);
    box-shadow: 0 6px 18px rgba(11, 57, 106, 0.18);
}

[data-theme="dark"] .btn-theme-floating {
    background-color: #151f38;
    color: #38bdf8;
    border-color: #27354f;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45);
}

[data-theme="dark"] .btn-theme-floating:hover {
    background-color: #1e2d4e;
    border-color: #38bdf8;
    transform: scale(1.08);
}

/* Ajustes Adicionais para Seções do Painel */
[data-theme="dark"] .admin-container ul li {
    color: #cbd5e1 !important;
}

[data-theme="dark"] .admin-container ul li strong {
    color: #f8fafc !important;
}

[data-theme="dark"] #sec-como-funciona div[style*="background: #f8fafc"],
[data-theme="dark"] #sec-como-funciona div[style*="background:#f8fafc"] {
    background-color: #0b1329 !important;
    border-color: #334155 !important;
}

[data-theme="dark"] #sec-como-funciona div[style*="background: #fffaf5"],
[data-theme="dark"] #sec-como-funciona div[style*="background:#fffaf5"] {
    background-color: #1c150c !important;
    border-color: #7c2d12 !important;
}

[data-theme="dark"] #sec-como-funciona div[style*="background: #f0f7ff"],
[data-theme="dark"] #sec-como-funciona div[style*="background:#f0f7ff"] {
    background-color: #0c192e !important;
    border-color: #1e3a8a !important;
}

[data-theme="dark"] #sec-dashboard div[style*="background: #ffffff"],
[data-theme="dark"] #sec-dashboard div[style*="background:#ffffff"] {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

[data-theme="dark"] #sec-dashboard label {
    color: #f8fafc !important;
}

[data-theme="dark"] .btn-admin-secondary {
    background-color: #151f38 !important;
    color: #f8fafc !important;
    border-color: #27354f !important;
}

[data-theme="dark"] .btn-admin-secondary:hover {
    background-color: #1e2d4e !important;
    border-color: #38bdf8 !important;
    color: #38bdf8 !important;
}

[data-theme="dark"] .btn-back-site {
    border-color: #27354f !important;
}

/* ==========================================================================
   GESTÃO DE BLOCOS E PERGUNTAS - MODO ESCURO
   ========================================================================== */

/* Card principal do bloco */
[data-theme="dark"] .bloco-admin-card {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3) !important;
}

/* Cabeçalho do bloco: linha separadora e título */
[data-theme="dark"] .bloco-cabecalho {
    border-bottom-color: #38bdf8 !important;
}

[data-theme="dark"] .bloco-titulo {
    color: #f8fafc !important;
}

/* Separador entre perguntas */
[data-theme="dark"] .bloco-pergunta-item {
    border-bottom-color: var(--border-color) !important;
}

/* Badge do tipo (NOTA / TEXTO) */
[data-theme="dark"] .bloco-pergunta-badge {
    background: rgba(56, 189, 248, 0.15) !important;
    color: #38bdf8 !important;
}

/* Texto do enunciado da pergunta */
[data-theme="dark"] .bloco-pergunta-enunciado {
    color: #e2e8f0 !important;
}

/* Texto "nenhuma pergunta" */
[data-theme="dark"] .bloco-sem-perguntas {
    color: #64748b !important;
}

/* Estado vazio */
[data-theme="dark"] .bloco-vazio {
    color: var(--text-secondary) !important;
    background: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Estado de erro */
[data-theme="dark"] .bloco-erro {
    background: rgba(198, 40, 40, 0.12) !important;
    border-color: rgba(198, 40, 40, 0.4) !important;
    color: #f87171 !important;
}

/* Texto geral da seção de perguntas */
[data-theme="dark"] #sec-perguntas,
[data-theme="dark"] #container-gestao-blocos {
    color: var(--text-color) !important;
}

/* Título da lista e cabeçalho */
[data-theme="dark"] .perguntas-list-title {
    color: #f8fafc !important;
}

/* ==========================================================================
   TOPBAR MOBILE E ELEMENTOS MOBILE NO MODO ESCURO
   ========================================================================== */
[data-theme="dark"] .mobile-topbar {
    background-color: var(--sidebar-bg) !important;
    border-bottom: 1px solid var(--border-color) !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4) !important;
}

[data-theme="dark"] .mobile-topbar-title {
    color: var(--primary) !important;
}

[data-theme="dark"] .mobile-topbar-badge {
    background-color: var(--primary-light) !important;
    color: var(--primary) !important;
}

[data-theme="dark"] .btn-mobile-toggle,
[data-theme="dark"] .btn-mobile-theme {
    color: var(--text-color) !important;
}

[data-theme="dark"] .btn-mobile-toggle:hover,
[data-theme="dark"] .btn-mobile-theme:hover {
    background-color: var(--primary-light) !important;
}

[data-theme="dark"] .btn-close-sidebar {
    color: var(--text-secondary) !important;
}

[data-theme="dark"] .btn-close-sidebar:hover {
    background-color: var(--primary-light) !important;
    color: var(--primary) !important;
}

/* Badges e Controles de Múltiplas Escolas no Modo Escuro */
[data-theme="dark"] .badge-escola {
    background-color: rgba(14, 165, 233, 0.18) !important;
    color: #7dd3fc !important;
    border-color: rgba(56, 189, 248, 0.35) !important;
}

[data-theme="dark"] .badge-escola-remove {
    color: #7dd3fc !important;
}

[data-theme="dark"] .badge-escola-remove:hover {
    color: #f87171 !important;
    background: rgba(239, 68, 68, 0.25) !important;
}

[data-theme="dark"] .btn-add-escola {
    background-color: #0284c7 !important;
    color: #ffffff !important;
}

[data-theme="dark"] .btn-add-escola:hover {
    background-color: #0369a1 !important;
}

[data-theme="dark"] .form-hint {
    color: #94a3b8 !important;
}




