/**
 * =====================================================
 * ANGOSCHOOL - SIGE DESIGN SYSTEM v3.0
 * Sistema de Cores e Estilos Unificado
 * Nomenclatura Semantica Moderna
 * =====================================================
 */

:root {
    /* =====================================================
       PALETA BASE - CORES PRIMARIAS DO SISTEMA
       ===================================================== */

    /* Cor Principal do Sistema (Azul) */
    --sige-primary: #29707D;
    --sige-primary-hover: #1b6e7a;
    --sige-primary-active: #0e4d56;
    --sige-primary-light: #4a9da6;
    --sige-primary-bg: rgba(41, 112, 125, 0.1);

    /* Cor Secundaria (Verde Suave) */
    --sige-secondary: #3d9e78;
    --sige-secondary-hover: #2d8a65;
    --sige-secondary-active: #257555;
    --sige-secondary-light: #5eb896;
    --sige-secondary-bg: rgba(61, 158, 120, 0.1);

    /* =====================================================
       BOTOES - NOMENCLATURA SEMANTICA
       ===================================================== */

    /* BTN SUCCESS - Confirmar, Salvar, Aprovar */
    --btn-success: linear-gradient(135deg, #3d9e78 0%, #2d8a65 100%);
    --btn-success-solid: #3d9e78;
    --btn-success-hover: #257555;
    --btn-success-text: #ffffff;
    --btn-success-shadow: rgba(61, 158, 120, 0.3);
    --btn-success-bg-light: #dff0e8;
    --btn-success-text-light: #2d8a65;

    /* BTN DANGER - Excluir, Remover, Cancelar */
    --btn-danger: linear-gradient(135deg, #d46a6a 0%, #c25454 100%);
    --btn-danger-solid: #d46a6a;
    --btn-danger-hover: #a84545;
    --btn-danger-text: #ffffff;
    --btn-danger-shadow: rgba(212, 106, 106, 0.3);
    --btn-danger-bg-light: #f5e0e0;
    --btn-danger-text-light: #b54e4e;

    /* BTN EDIT - Editar, Modificar, Atualizar */
    --btn-edit: linear-gradient(135deg, #c99a50 0%, #b38040 100%);
    --btn-edit-solid: #c99a50;
    --btn-edit-hover: #966b35;
    --btn-edit-text: #ffffff;
    --btn-edit-shadow: rgba(201, 154, 80, 0.3);
    --btn-edit-bg-light: #f5ecd6;
    --btn-edit-text-light: #8f6930;

    /* BTN REPORT - Relatorios, Imprimir, Exportar */
    --btn-report: linear-gradient(135deg, #8878b8 0%, #7666a8 100%);
    --btn-report-solid: #8878b8;
    --btn-report-hover: #655494;
    --btn-report-text: #ffffff;
    --btn-report-shadow: rgba(136, 120, 184, 0.3);
    --btn-report-bg-light: #eceaf4;
    --btn-report-text-light: #6e5f9a;

    /* =====================================================
       LAYOUT - AREAS DO SISTEMA
       ===================================================== */

    /* Header (Cabecalho Superior) */
    --layout-header-bg: linear-gradient(135deg, #29707D 0%, #1b6e7a 50%, #0e4d56 100%);
    --layout-header-bg-solid: #29707D;
    --layout-header-text: #ffffff;
    --layout-header-icon: #ffffff;

    /* Sidebar (Menu Lateral) */
    --layout-sidebar-bg: linear-gradient(180deg, #0e4d56 0%, #082e35 50%, #061f24 100%);
    --layout-sidebar-bg-solid: #0e4d56;
    --layout-sidebar-text: #d0e8eb;
    --layout-sidebar-icon: #5abbc4;
    --layout-sidebar-hover: rgba(90, 187, 196, 0.12);
    --layout-sidebar-active: rgba(90, 187, 196, 0.22);

    /* Content (Area de Conteudo) */
    --layout-content-bg: #ffffff;
    --layout-content-text: #1e293b;
    --layout-content-icon: #29707D;

    /* Page Background */
    --layout-page-bg: linear-gradient(135deg, #f0f7f8 0%, #e6f3f4 50%, #f0faf9 100%);
    --layout-page-bg-solid: #f5fafa;

    /* =====================================================
       COMPONENTES UI
       ===================================================== */

    /* Cards */
    --ui-card-bg: #ffffff;
    --ui-card-border: #e2e8f0;
    --ui-card-shadow: rgba(41, 112, 125, 0.08);

    /* Inputs & Forms */
    --ui-input-bg: #f8fafc;
    --ui-input-border: #e2e8f0;
    --ui-input-focus: #29707D;
    --ui-input-text: #0f172a;
    --ui-input-placeholder: #94a3b8;

    /* Input System — Unified tokens for inputs & searchable selects */
    --input-border: var(--glass-border-teal);
    --input-border-focus: var(--sige-primary);
    --input-border-selected: rgba(41, 112, 125, 0.13);
    --input-bg: var(--glass-bg-strong);
    --input-bg-focus: rgba(255, 255, 255, 0.95);
    --input-bg-selected: var(--glass-bg-strong);
    --input-text: #111827;
    --input-placeholder: #94a3b8;
    --input-ring: rgba(41, 112, 125, 0.15);
    --input-ring-size: 3px;
    --input-icon: #64748b;
    --input-icon-focus: var(--sige-primary);
    --input-radius: var(--radius-md);
    --input-transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);

    /* Tabelas */
    --ui-table-header-bg: #f8fafc;
    --ui-table-row-odd: #f8fafc;
    --ui-table-row-even: #ffffff;
    --ui-table-border: #e2e8f0;
    --ui-table-text: #0f172a;

    /* =====================================================
       TEXTO - HIERARQUIA TIPOGRAFICA
       ===================================================== */

    --text-primary: #0f172a;
    --text-secondary: #475569;
    --text-muted: #94a3b8;
    --text-inverse: #ffffff;

    /* =====================================================
       BORDAS E SOMBRAS
       ===================================================== */

    --border-light: #e2e8f0;
    --border-medium: #cbd5e1;
    --border-dark: #94a3b8;

    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.07);
    --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
    --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.15);

    /* =====================================================
       COMPATIBILIDADE LEGADO (manter funcionando)
       ===================================================== */

    /* Aside */
    --corFundoAside: var(--layout-sidebar-bg);
    --corFundoAsideFlat: var(--layout-sidebar-bg-solid);
    --corFundoAsideReverse: var(--layout-sidebar-bg-solid);
    --corLetrasAside: var(--layout-sidebar-text);
    --corLetrasAsideReverse: var(--layout-sidebar-text);
    --corIconesAside: var(--layout-sidebar-icon);
    --corIconesAsideReverse: var(--layout-sidebar-icon);
    --corIconesAside50: var(--sige-primary);

    /* Top */
    --corFundoTop: var(--layout-header-bg);
    --corFundoTopFlat: var(--layout-header-bg-solid);
    --corFundoTopReverse: var(--layout-header-bg-solid);
    --corLetrasTop: var(--layout-header-text);
    --corLetrasTopReverse: var(--layout-header-text);
    --corIconesTop: var(--layout-header-icon);
    --corIconesTopReverse: var(--layout-header-icon);

    /* Body */
    --corFundoBody: var(--layout-content-bg);
    --corFundoBodyReverse: var(--layout-content-bg);
    --corLetrasBody: var(--layout-content-text);
    --corLetrasBodyReverse: var(--layout-content-text);
    --corIconesBody: var(--layout-content-icon);
    --corIconesBodyReverse: var(--layout-content-icon);

    /* Buttons Legacy -> New */
    --corFundoButton1: var(--btn-success);
    --corFundoButton1Flat: var(--btn-success-solid);
    --corFundoButton1Reverse: var(--btn-success-solid);
    --corFundoButton1Hover: var(--btn-success-hover);
    --corLetrasButton1: var(--btn-success-text);
    --corLetrasButton1Reverse: var(--btn-success-text);

    --corFundoButton2: var(--btn-success);
    --corFundoButton2Flat: var(--btn-success-solid);
    --corFundoButton2Reverse: var(--btn-success-solid);
    --corFundoButton2Hover: var(--btn-success-hover);
    --corLetrasButton2: var(--btn-success-text);
    --corLetrasButton2Reverse: var(--btn-success-text);

    --corFundoButton3: var(--btn-report);
    --corFundoButton3Flat: var(--btn-report-solid);
    --corFundoButton3Reverse: var(--btn-report-solid);
    --corFundoButton3Hover: var(--btn-report-hover);
    --corLetrasButton3: var(--btn-report-text);
    --corLetrasButton3Reverse: var(--btn-report-text);

    --corFundoButton4: var(--btn-danger);
    --corFundoButton4Flat: var(--btn-danger-solid);
    --corFundoButton4Reverse: var(--btn-danger-solid);
    --corFundoButton4Hover: var(--btn-danger-hover);
    --corLetrasButton4: var(--btn-danger-text);
    --corLetrasButton4Reverse: var(--btn-danger-text);

    /* Outros legados */
    --corFundoPagina: var(--layout-page-bg);
    --corFundoPaginaFlat: var(--layout-page-bg-solid);
    --corFundoCard: var(--ui-card-bg);
    --corBorda: var(--border-light);
    --corBordaHover: var(--border-medium);
    --corSombra: var(--ui-card-shadow);
    --corTexto: var(--text-primary);
    --corTextoSecundario: var(--text-secondary);
    --corTextoTerciario: var(--text-muted);
    --corFundoInput: var(--ui-input-bg);
    --corBordaInput: var(--ui-input-border);
    --corBordaInputFocus: var(--ui-input-focus);

    /* Zebra */
    --classZebra1BackColor: var(--ui-table-row-odd);
    --classZebra1LetrasColor: var(--ui-table-text);
    --classZebra2BackColor: var(--ui-table-row-even);
    --classZebra2LetrasColor: var(--ui-table-text);

    /* =====================================================
       LIQUID GLASS DESIGN TOKENS
       ===================================================== */

    /* Glass backgrounds */
    --glass-bg: rgba(255, 255, 255, 0.68);
    --glass-bg-strong: rgba(255, 255, 255, 0.78);
    --glass-bg-subtle: rgba(255, 255, 255, 0.50);
    --glass-bg-teal: rgba(41, 112, 125, 0.05);
    --glass-bg-teal-medium: rgba(41, 112, 125, 0.09);
    --glass-bg-teal-strong: rgba(41, 112, 125, 0.14);

    /* Glass borders */
    --glass-border: rgba(41, 112, 125, 0.08);
    --glass-border-teal: rgba(41, 112, 125, 0.13);
    --glass-border-strong: rgba(41, 112, 125, 0.18);

    /* Glass shadows */
    --glass-shadow: 0 8px 32px rgba(41, 112, 125, 0.10), 0 2px 8px rgba(41, 112, 125, 0.06);
    --glass-shadow-sm: 0 4px 16px rgba(41, 112, 125, 0.07), 0 1px 4px rgba(41, 112, 125, 0.04);
    --glass-shadow-lg: 0 16px 48px rgba(41, 112, 125, 0.14), 0 4px 16px rgba(41, 112, 125, 0.08);
    --glass-shadow-hover: 0 16px 40px rgba(41, 112, 125, 0.16), 0 4px 12px rgba(41, 112, 125, 0.08);
    --glass-inset: inset 0 1px 0 rgba(255, 255, 255, 0.55), inset 0 -1px 0 rgba(41, 112, 125, 0.04);
    --glass-inset-subtle: inset 0 1px 0 rgba(255, 255, 255, 0.35);

    /* True glass (backdrop-filter) */
    --glass-true-bg-sidebar: rgba(14, 77, 86, 0.88);
    --glass-true-bg-header: rgba(41, 112, 125, 0.90);
    --glass-true-blur: blur(16px) saturate(180%);
    --glass-true-blur-overlay: blur(8px);

    /* Glass stat gradients (semi-transparentes) */
    --glass-stat-green: linear-gradient(135deg, rgba(16,185,129,0.90), rgba(5,150,105,0.94));
    --glass-stat-blue: linear-gradient(135deg, rgba(41,112,125,0.90), rgba(27,110,122,0.94));
    --glass-stat-purple: linear-gradient(135deg, rgba(139,92,246,0.90), rgba(124,58,237,0.94));
    --glass-stat-orange: linear-gradient(135deg, rgba(245,158,11,0.90), rgba(217,119,6,0.94));
    --glass-stat-red: linear-gradient(135deg, rgba(239,68,68,0.90), rgba(220,38,38,0.94));
    --glass-stat-pink: linear-gradient(135deg, rgba(236,72,153,0.90), rgba(219,39,119,0.94));
    --glass-stat-cyan: linear-gradient(135deg, rgba(6,182,212,0.90), rgba(8,145,178,0.94));
    --glass-stat-teal: linear-gradient(135deg, rgba(20,184,166,0.90), rgba(13,148,136,0.94));
    --glass-stat-indigo: linear-gradient(135deg, rgba(99,102,241,0.90), rgba(79,70,229,0.94));
    --glass-stat-gray: linear-gradient(135deg, rgba(107,114,128,0.90), rgba(75,85,99,0.94));
    --glass-stat-amber: linear-gradient(135deg, rgba(245,158,11,0.90), rgba(217,119,6,0.94));

    /* Body Variations */
    --corFundoBody0: #ffffff;
    --corFundoBody10: #f8fafc;
    --corFundoBody20: #f1f5f9;
    --corFundoBody30: #e2e8f0;
    --corFundoBody40: #cbd5e1;
    --corFundoBody50: #94a3b8;
    --corFundoBody60: #64748b;
    --corFundoBody70: #475569;
    --corFundoBody80: #334155;
    --corFundoBody90: #1e293b;
    --corFundoBody100: #0f172a;
}

/* =====================================================
   MODO ESCURO
   ===================================================== */

[data-theme="dark"] {
    /* Paleta Base Dark */
    --sige-primary: #4a9da6;
    --sige-primary-hover: #29707D;
    --sige-primary-active: #1b6e7a;
    --sige-primary-light: #7abcc2;
    --sige-primary-bg: rgba(90, 187, 196, 0.15);

    --sige-secondary: #5eb896;
    --sige-secondary-hover: #3d9e78;
    --sige-secondary-active: #2d8a65;

    /* Buttons Dark */
    --btn-success: linear-gradient(135deg, #2d8a65 0%, #257555 100%);
    --btn-success-solid: #2d8a65;
    --btn-success-hover: #3d9e78;

    --btn-danger: linear-gradient(135deg, #c25454 0%, #a84545 100%);
    --btn-danger-solid: #c25454;
    --btn-danger-hover: #d46a6a;

    --btn-edit: linear-gradient(135deg, #b38040 0%, #966b35 100%);
    --btn-edit-solid: #b38040;
    --btn-edit-hover: #c99a50;

    --btn-report: linear-gradient(135deg, #7666a8 0%, #655494 100%);
    --btn-report-solid: #7666a8;
    --btn-report-hover: #8878b8;

    /* Layout Dark */
    --layout-header-bg: linear-gradient(135deg, #0a3d45 0%, #082e35 50%, #061f24 100%);
    --layout-header-bg-solid: #0a3d45;

    --layout-sidebar-bg: linear-gradient(180deg, #072228 0%, #041316 100%);
    --layout-sidebar-bg-solid: #072228;
    --layout-sidebar-icon: #5abbc4;

    --layout-content-bg: #0f172a;
    --layout-content-text: #e2e8f0;
    --layout-content-icon: #4a9da6;

    --layout-page-bg: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    --layout-page-bg-solid: #0f172a;

    /* UI Components Dark */
    --ui-card-bg: #1e293b;
    --ui-card-border: #334155;
    --ui-card-shadow: rgba(0, 0, 0, 0.4);

    --ui-input-bg: #1e293b;
    --ui-input-border: #334155;
    --ui-input-focus: #4a9da6;
    --ui-input-text: #f1f5f9;
    --ui-input-placeholder: #64748b;

    /* Input System — Dark */
    --input-border: var(--glass-border-teal);
    --input-border-focus: #4a9da6;
    --input-border-selected: rgba(90, 187, 196, 0.14);
    --input-bg: var(--glass-bg-strong);
    --input-bg-focus: rgba(30, 41, 59, 0.95);
    --input-bg-selected: var(--glass-bg-strong);
    --input-text: #f1f5f9;
    --input-placeholder: #64748b;
    --input-ring: rgba(90, 187, 196, 0.2);
    --input-icon: #94a3b8;
    --input-icon-focus: #4a9da6;

    --ui-table-header-bg: #1e293b;
    --ui-table-row-odd: #1e293b;
    --ui-table-row-even: #0f172a;
    --ui-table-border: #334155;
    --ui-table-text: #e2e8f0;

    /* Text Dark */
    --text-primary: #f1f5f9;
    --text-secondary: #94a3b8;
    --text-muted: #64748b;

    /* Borders Dark */
    --border-light: #334155;
    --border-medium: #475569;
    --border-dark: #64748b;

    /* =====================================================
       LIQUID GLASS DESIGN TOKENS - DARK
       ===================================================== */

    --glass-bg: rgba(30, 41, 59, 0.72);
    --glass-bg-strong: rgba(30, 41, 59, 0.82);
    --glass-bg-subtle: rgba(30, 41, 59, 0.52);
    --glass-bg-teal: rgba(90, 187, 196, 0.05);
    --glass-bg-teal-medium: rgba(90, 187, 196, 0.09);
    --glass-bg-teal-strong: rgba(90, 187, 196, 0.14);
    --glass-border: rgba(90, 187, 196, 0.08);
    --glass-border-teal: rgba(90, 187, 196, 0.14);
    --glass-border-strong: rgba(90, 187, 196, 0.20);
    --glass-shadow: 0 8px 32px rgba(0, 0, 0, 0.30), 0 2px 8px rgba(0, 0, 0, 0.15);
    --glass-shadow-sm: 0 4px 16px rgba(0, 0, 0, 0.20), 0 1px 4px rgba(0, 0, 0, 0.10);
    --glass-shadow-lg: 0 16px 48px rgba(0, 0, 0, 0.40), 0 4px 16px rgba(0, 0, 0, 0.20);
    --glass-shadow-hover: 0 16px 40px rgba(0, 0, 0, 0.35), 0 4px 12px rgba(0, 0, 0, 0.18);
    --glass-inset: inset 0 1px 0 rgba(255, 255, 255, 0.06), inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    --glass-inset-subtle: inset 0 1px 0 rgba(255, 255, 255, 0.04);
    --glass-true-bg-sidebar: rgba(7, 34, 40, 0.92);
    --glass-true-bg-header: rgba(10, 61, 69, 0.92);

    --glass-stat-green: linear-gradient(135deg, rgba(61,158,120,0.85), rgba(45,138,101,0.9));
    --glass-stat-blue: linear-gradient(135deg, rgba(10,61,69,0.85), rgba(8,46,53,0.9));
    --glass-stat-purple: linear-gradient(135deg, rgba(118,102,168,0.85), rgba(101,84,148,0.9));
    --glass-stat-orange: linear-gradient(135deg, rgba(179,128,64,0.85), rgba(150,107,53,0.9));
    --glass-stat-red: linear-gradient(135deg, rgba(194,84,84,0.85), rgba(168,69,69,0.9));
    --glass-stat-pink: linear-gradient(135deg, rgba(165,85,128,0.85), rgba(143,77,112,0.9));
    --glass-stat-cyan: linear-gradient(135deg, rgba(58,165,184,0.85), rgba(45,143,160,0.9));
    --glass-stat-teal: linear-gradient(135deg, rgba(45,168,154,0.85), rgba(37,138,126,0.9));
    --glass-stat-indigo: linear-gradient(135deg, rgba(109,112,181,0.85), rgba(92,86,158,0.9));
    --glass-stat-gray: linear-gradient(135deg, rgba(75,85,99,0.85), rgba(55,65,81,0.9));
    --glass-stat-amber: linear-gradient(135deg, rgba(179,128,64,0.85), rgba(150,107,53,0.9));

    /* Body Variations Dark */
    --corFundoBody0: #0f172a;
    --corFundoBody10: #1e293b;
    --corFundoBody20: #334155;
    --corFundoBody30: #475569;
    --corFundoBody40: #64748b;
    --corFundoBody50: #94a3b8;
    --corFundoBody60: #cbd5e1;
    --corFundoBody70: #e2e8f0;
    --corFundoBody80: #f1f5f9;
    --corFundoBody90: #f8fafc;
    --corFundoBody100: #ffffff;
}

/* =====================================================
   CLASSES SEMANTICAS DE BOTOES
   ===================================================== */

/* Botao Sucesso (Verde) - Salvar, Confirmar */
.btn-success,
.sige-btn-success {
    background: var(--btn-success) !important;
    color: var(--btn-success-text) !important;
    border: none;
}

.btn-success:hover,
.sige-btn-success:hover {
    background: var(--btn-success-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--btn-success-shadow);
}

/* Botao Perigo (Vermelho) - Excluir, Remover */
.btn-danger,
.sige-btn-danger {
    background: var(--btn-danger) !important;
    color: var(--btn-danger-text) !important;
    border: none;
}

.btn-danger:hover,
.sige-btn-danger:hover {
    background: var(--btn-danger-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--btn-danger-shadow);
}

/* Botao Editar (Laranja/Amber) - Editar, Modificar */
.btn-edit,
.sige-btn-edit {
    background: var(--btn-edit) !important;
    color: var(--btn-edit-text) !important;
    border: none;
}

.btn-edit:hover,
.sige-btn-edit:hover {
    background: var(--btn-edit-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--btn-edit-shadow);
}

/* Botao Relatorio (Roxo) - Imprimir, Exportar */
.btn-report,
.sige-btn-report {
    background: var(--btn-report) !important;
    color: var(--btn-report-text) !important;
    border: none;
}

.btn-report:hover,
.sige-btn-report:hover {
    background: var(--btn-report-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--btn-report-shadow);
}

/* Versoes Light (para icones de acao) */
.btn-success-light,
.sige-btn-success-light {
    background: var(--btn-success-bg-light) !important;
    color: var(--btn-success-text-light) !important;
}

.btn-success-light:hover,
.sige-btn-success-light:hover {
    background: var(--btn-success-solid) !important;
    color: var(--btn-success-text) !important;
}

.btn-danger-light,
.sige-btn-danger-light {
    background: var(--btn-danger-bg-light) !important;
    color: var(--btn-danger-text-light) !important;
}

.btn-danger-light:hover,
.sige-btn-danger-light:hover {
    background: var(--btn-danger-solid) !important;
    color: var(--btn-danger-text) !important;
}

.btn-edit-light,
.sige-btn-edit-light {
    background: var(--btn-edit-bg-light) !important;
    color: var(--btn-edit-text-light) !important;
}

.btn-edit-light:hover,
.sige-btn-edit-light:hover {
    background: var(--btn-edit-solid) !important;
    color: var(--btn-edit-text) !important;
}

.btn-report-light,
.sige-btn-report-light {
    background: var(--btn-report-bg-light) !important;
    color: var(--btn-report-text-light) !important;
}

.btn-report-light:hover,
.sige-btn-report-light:hover {
    background: var(--btn-report-solid) !important;
    color: var(--btn-report-text) !important;
}

/* =====================================================
   CLASSES LEGADO (compatibilidade)
   ===================================================== */

.corFundoAside { background: var(--layout-sidebar-bg); }
.corFundoAsideFlat { background-color: var(--layout-sidebar-bg-solid); }
.corFundoAsideReverse { color: var(--layout-sidebar-bg-solid); }

.corFundoTop { background: var(--layout-header-bg); }
.corFundoTopFlat { background-color: var(--layout-header-bg-solid); }
.corFundoTopReverse { color: var(--layout-header-bg-solid); }

.corFundoBody { background-color: var(--layout-content-bg); }
.corFundoBodyReverse { color: var(--layout-content-bg); }
.corFundoBody10 { background-color: var(--corFundoBody10) !important; }

.corLetrasAside { color: var(--layout-sidebar-text); }
.corLetrasAsideReverse { background-color: var(--layout-sidebar-text); }
.corLetrasTop { color: var(--layout-header-text); }
.corLetrasTopReverse { background-color: var(--layout-header-text); }
.corLetrasBody { color: var(--layout-content-text); }
.corLetrasBodyReverse { background-color: var(--layout-content-text); }

.corIconesAside { color: var(--layout-sidebar-icon); }
.corIconesAsideReverse { background-color: var(--layout-sidebar-icon); }
.corIconesAside50 { color: var(--sige-primary); }
.corIconesTop { color: var(--layout-header-icon); }
.corIconesTopReverse { background-color: var(--layout-header-icon); }
.corIconesBody { color: var(--layout-content-icon); }
.corIconesBodyReverse { background-color: var(--layout-content-icon); }

/* Button Classes Legacy — .corFundoButton1 e .corFundoButton2 consolidados (eram idênticos) */
.corFundoButton1,
.corFundoButton2 { background: var(--btn-success); }
.corFundoButton1Flat,
.corFundoButton2Flat { background-color: var(--btn-success-solid); }
.corLetrasButton1,
.corLetrasButton2 { color: var(--btn-success-text); }

.corFundoButton3 { background: var(--btn-report); }
.corFundoButton3Flat { background-color: var(--btn-report-solid); }
.corLetrasButton3 { color: var(--btn-report-text); }

.corFundoButton4 { background: var(--btn-danger); }
.corFundoButton4Flat { background-color: var(--btn-danger-solid); }
.corLetrasButton4 { color: var(--btn-danger-text); }

/* Hover Effects Legacy */
button.corFundoButton1:hover, a.corFundoButton1:hover,
button.corFundoButton2:hover, a.corFundoButton2:hover {
    background: var(--btn-success-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--btn-success-shadow);
}

button.corFundoButton3:hover, a.corFundoButton3:hover {
    background: var(--btn-report-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--btn-report-shadow);
}

button.corFundoButton4:hover, a.corFundoButton4:hover {
    background: var(--btn-danger-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--btn-danger-shadow);
}

/* =====================================================
   NAVEGACAO - EFEITOS HOVER DINAMICOS
   ===================================================== */

/* Aside Hover - Efeito Principal */
.corFundoAsideHover:hover {
    background: linear-gradient(90deg, var(--layout-sidebar-hover) 0%, transparent 100%) !important;
    border-left: 3px solid var(--layout-sidebar-icon);
    padding-left: calc(0.75rem + 3px) !important;
}

.corLetrasAsideHover:hover {
    color: var(--layout-sidebar-icon) !important;
}

/* Menu Items - Estilo Base */
.mainMenu nav ul li a,
.main_menu ul li a,
.openArea {
    position: relative;
    transition: all 0.2s ease !important;
    border-radius: 6px;
    margin: 1px 8px;
}

/* Menu Items - Hover */
.mainMenu nav ul li a:hover,
.main_menu ul li a:hover,
.openArea:hover {
    background: var(--layout-sidebar-hover) !important;
}

/* Menu Items - Active */
.mainMenu nav ul li a.active,
.main_menu ul li a.active,
.openArea.active {
    background: var(--layout-sidebar-active) !important;
    color: #fff !important;
}

/* Icones do Menu */
.mainMenu nav ul li a i,
.main_menu ul li a i,
.openArea i,
#menuList li a i,
#menuList li a.openMenu i,
#menuList li button.expand i,
#menuList li a i.corIconesAside,
#menuList li button i.corIconesAside {
    transition: color 0.2s ease, transform 0.2s ease !important;
    display: inline-block !important;
}

.mainMenu nav ul li a:hover i,
.main_menu ul li a:hover i,
.openArea:hover i,
#menuList li a:hover i,
#menuList li a.openMenu:hover i,
#menuList li button.expand:hover i,
#menuList li a:hover i.corIconesAside,
#menuList li button:hover i.corIconesAside {
    color: #8ed4db !important;
    transform: scale(1.08) !important;
}

/* Icones Ativos */
.mainMenu nav ul li a.active i,
#menuList li a.active i,
#menuList li a.openMenu.active i {
    color: #fff !important;
}

/* =====================================================
   MENU LATERAL - NOVO LAYOUT COMPACTO
   ===================================================== */

/* Parent menu items (com ou sem submenu) */
.menu-parent-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

/* Reset button defaults para igualar ao <a> */
.menu-parent-btn {
    border: none;
    background: none;
    font: inherit;
    color: inherit;
    text-align: left;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    line-height: inherit;
}

.menu-parent-btn,
.menu-parent-link {
    padding: 10px 16px;
    gap: 10px;
    border-radius: 8px;
    margin: 1px 8px;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    width: calc(100% - 16px);
    box-sizing: border-box;
}

.menu-parent-btn:hover,
.menu-parent-link:hover {
    background: var(--layout-sidebar-hover) !important;
}

.menu-parent-link.active,
.menu-parent-btn.active,
.menu-parent-btn[aria-expanded="true"] {
    background: var(--layout-sidebar-active) !important;
}

/* Icone do menu pai */
.menu-icon {
    font-size: 17px !important;
    width: 20px !important;
    text-align: center;
    flex-shrink: 0;
    transition: color 0.2s ease;
}

.menu-parent-btn:hover .menu-icon,
.menu-parent-link:hover .menu-icon {
    color: #8ed4db !important;
}

.menu-parent-link.active .menu-icon,
.menu-parent-btn.active .menu-icon,
.menu-parent-btn[aria-expanded="true"] .menu-icon {
    color: #fff !important;
}

/* Label do menu pai */
.menu-label {
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Chevron do submenu */
.menu-chevron {
    opacity: 0.4;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.menu-parent-btn:hover .menu-chevron {
    opacity: 0.7;
}

.menu-parent-btn[aria-expanded="true"] .menu-chevron,
.expand.active .menu-chevron {
    transform: rotate(90deg);
    opacity: 0.8;
}

/* Container de submenus */
.menu-submenu-wrap {
    padding: 4px 0 6px 0;
}

.menu-submenu-list {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

/* Item do submenu */
.menu-sub-item {
    /* sem border-bottom, mais limpo */
}

.menu-sub-link {
    padding: 7px 16px 7px 46px;
    gap: 8px;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    color: var(--layout-sidebar-text);
    opacity: 0.75;
    border-radius: 6px;
    margin: 1px 8px 1px 12px;
    transition: all 0.15s ease;
}

.menu-sub-link:hover {
    opacity: 1;
    background: var(--layout-sidebar-hover) !important;
    color: #fff !important;
}

.menu-sub-link.active {
    opacity: 1;
    background: var(--layout-sidebar-active) !important;
    color: #fff !important;
}

/* Dot indicator no submenu */
.menu-sub-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--layout-sidebar-icon);
    opacity: 0.5;
    flex-shrink: 0;
    transition: all 0.15s ease;
}

.menu-sub-link:hover .menu-sub-dot {
    opacity: 1;
    background: #8ed4db;
}

.menu-sub-link.active .menu-sub-dot {
    opacity: 1;
    background: #fff;
}

/* Efeito hover no link/botao do menu (legado) */
#menuList li a:hover,
#menuList li button:hover,
.openMenu:hover,
.expand:hover {
    color: var(--layout-sidebar-text) !important;
}

/* Engrenagem - rotacao suave no hover */
#menuList li a:hover i.fa-cog,
#menuList li a:hover i.fa-cogs,
#menuList li button:hover i.fa-cog,
#menuList li button:hover i.fa-cogs {
    transform: scale(1.08) rotate(90deg) !important;
    transition: transform 0.4s ease !important;
}

/* Header Menu Principal - Botao Perfil */
.buttonMainMenu {
    transition: all 0.3s ease !important;
    border-radius: 10px;
    padding: 4px 8px;
}

.buttonMainMenu:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

.buttonMainMenu:hover .img_profile {
    transform: scale(1.05);
}

.buttonMainMenu .img_profile {
    transition: all 0.3s ease;
}

/* Menu Toggle Button */
.hide_show_menu {
    transition: all 0.3s ease !important;
    border-radius: 8px;
    padding: 8px;
}

.hide_show_menu:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

.hide_show_menu svg {
    transition: transform 0.3s ease;
}

/* Notification Button */
#button_notification {
    transition: all 0.3s ease !important;
    padding: 5px;
    border-radius: 8px;
}

#button_notification:hover {
    background: rgba(255, 255, 255, 0.15) !important;
    transform: scale(1.1);
}

#button_notification:hover svg {
    animation: bell-ring 0.5s ease;
}

@keyframes bell-ring {
    0%, 100% { transform: rotate(0deg); }
    20% { transform: rotate(15deg); }
    40% { transform: rotate(-15deg); }
    60% { transform: rotate(10deg); }
    80% { transform: rotate(-10deg); }
}

/* Logo AngoSchool - Efeito Hover */
.mainMenu header .flex:first-child:hover img {
    transform: scale(1.05);
}

.mainMenu header .flex:first-child img {
    transition: all 0.4s ease;
}

/* Dropdown Menus */
.main_menu,
.notification_card {
    transform-origin: top right;
    animation: dropdownSlide 0.3s ease;
}

@keyframes dropdownSlide {
    from {
        opacity: 0;
        transform: translateY(-10px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Close Navbar Button */
.closeNavbar {
    transition: all 0.3s ease !important;
}

.closeNavbar:hover {
    background: var(--btn-danger-solid) !important;
    color: white !important;
    transform: rotate(90deg) scale(1.1);
    border-color: var(--btn-danger-solid) !important;
}

/* Year Select Dropdown */
#anoLectivoUsar {
    transition: all 0.3s ease !important;
}

#anoLectivoUsar:hover {
    transform: scale(1.02);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

#anoLectivoUsar:focus {
    transform: scale(1.02);
    box-shadow: 0 0 0 3px rgba(41, 112, 125, 0.3);
}

/* Dark Mode - Ajustes de Hover */
[data-theme="dark"] .mainMenu nav ul li a:hover,
[data-theme="dark"] .main_menu ul li a:hover,
[data-theme="dark"] .openArea:hover {
    background: rgba(90, 187, 196, 0.1) !important;
}

[data-theme="dark"] .buttonMainMenu:hover,
[data-theme="dark"] .hide_show_menu:hover,
[data-theme="dark"] #button_notification:hover {
    background: rgba(255, 255, 255, 0.08) !important;
}

/* Zebra Tables */
.classZebra1 {
    background-color: var(--ui-table-row-odd);
    color: var(--ui-table-text);
}
.classZebra2 {
    background-color: var(--ui-table-row-even);
    color: var(--ui-table-text);
}

/* Body Variations Classes */
.corFundoBody0 { background-color: var(--corFundoBody0) !important; }
.corFundoBody10 { background-color: var(--corFundoBody10) !important; }
.corFundoBody20 { background-color: var(--corFundoBody20) !important; }
.corFundoBody30 { background-color: var(--corFundoBody30) !important; }
.corFundoBody40 { background-color: var(--corFundoBody40) !important; }
.corFundoBody50 { background-color: var(--corFundoBody50) !important; }
.corFundoBody60 { background-color: var(--corFundoBody60) !important; }
.corFundoBody70 { background-color: var(--corFundoBody70) !important; }
.corFundoBody80 { background-color: var(--corFundoBody80) !important; }
.corFundoBody90 { background-color: var(--corFundoBody90) !important; }
.corFundoBody100 { background-color: var(--corFundoBody100) !important; }

/* =====================================================
   FOCUS STATES
   ===================================================== */

input:focus,
textarea:focus,
select:focus {
    border-color: var(--ui-input-focus) !important;
    box-shadow: 0 0 0 3px rgba(41, 112, 125, 0.15) !important;
    outline: none !important;
}

/* =====================================================
   UTILITY CLASSES
   ===================================================== */

/* Text Colors */
.text-primary { color: var(--text-primary) !important; }
.text-secondary { color: var(--text-secondary) !important; }
.text-muted { color: var(--text-muted) !important; }
.text-inverse { color: var(--text-inverse) !important; }

/* Background Colors */
.bg-primary { background-color: var(--sige-primary) !important; }
.bg-primary-light { background-color: var(--sige-primary-bg) !important; }
.bg-success { background-color: var(--btn-success-solid) !important; }
.bg-success-light { background-color: var(--btn-success-bg-light) !important; }
.bg-danger { background-color: var(--btn-danger-solid) !important; }
.bg-danger-light { background-color: var(--btn-danger-bg-light) !important; }
.bg-edit { background-color: var(--btn-edit-solid) !important; }
.bg-edit-light { background-color: var(--btn-edit-bg-light) !important; }
.bg-report { background-color: var(--btn-report-solid) !important; }
.bg-report-light { background-color: var(--btn-report-bg-light) !important; }

/* Border Colors */
.border-primary { border-color: var(--sige-primary) !important; }
.border-success { border-color: var(--btn-success-solid) !important; }
.border-danger { border-color: var(--btn-danger-solid) !important; }
.border-edit { border-color: var(--btn-edit-solid) !important; }
.border-report { border-color: var(--btn-report-solid) !important; }

/* =====================================================
   DARK MODE OVERRIDES
   ===================================================== */

[data-theme="dark"] .bg-white,
[data-theme="dark"] .bg-gray-50,
[data-theme="dark"] .bg-slate-50 {
    background-color: var(--ui-card-bg) !important;
}

[data-theme="dark"] .text-gray-900,
[data-theme="dark"] .text-slate-900,
[data-theme="dark"] .text-black {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .text-gray-600,
[data-theme="dark"] .text-gray-500,
[data-theme="dark"] .text-slate-600 {
    color: var(--text-secondary) !important;
}

[data-theme="dark"] .border,
[data-theme="dark"] .border-gray-200 {
    border-color: var(--border-light) !important;
}

[data-theme="dark"] input,
[data-theme="dark"] textarea,
[data-theme="dark"] select {
    background-color: var(--ui-input-bg) !important;
    border-color: var(--ui-input-border) !important;
    color: var(--ui-input-text) !important;
}

[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder {
    color: var(--ui-input-placeholder) !important;
}

[data-theme="dark"] table { background-color: var(--ui-card-bg); }
[data-theme="dark"] th { background-color: var(--ui-table-header-bg) !important; color: var(--text-primary) !important; }
[data-theme="dark"] td { color: var(--text-primary) !important; border-color: var(--border-light) !important; }
[data-theme="dark"] tr:hover { background-color: var(--sige-primary-bg) !important; }

[data-theme="dark"] .sige-card { background: var(--glass-bg) !important; border-color: var(--glass-border-teal) !important; }
[data-theme="dark"] .sige-card-name { color: var(--text-primary) !important; }
[data-theme="dark"] .sige-toolbar { background: var(--glass-bg) !important; border-color: var(--glass-border-teal) !important; }
[data-theme="dark"] .sige-toolbar-search { background: var(--glass-bg-strong) !important; border-color: var(--glass-border-teal) !important; }
[data-theme="dark"] .sige-mini-stat { background: var(--glass-bg-strong) !important; border-color: var(--glass-border-teal) !important; }
[data-theme="dark"] .sige-modal { background: var(--glass-bg-strong) !important; }
[data-theme="dark"] .sige-modal-body { background: var(--glass-bg-strong) !important; }
[data-theme="dark"] .sige-modal-footer { background: var(--glass-bg-subtle) !important; }
[data-theme="dark"] .sige-form-input { background: var(--glass-bg-strong) !important; border-color: var(--glass-border-teal) !important; color: var(--text-primary) !important; }

/* =====================================================
   SCROLLBAR MODERNO
   ===================================================== */

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: rgba(41, 112, 125, 0.05); border-radius: 5px; }
::-webkit-scrollbar-thumb { background: linear-gradient(135deg, rgba(41, 112, 125, 0.4) 0%, rgba(27, 110, 122, 0.5) 100%); border-radius: 5px; border: 2px solid transparent; background-clip: padding-box; }
::-webkit-scrollbar-thumb:hover { background: linear-gradient(135deg, rgba(41, 112, 125, 0.6) 0%, rgba(27, 110, 122, 0.7) 100%); border: 2px solid transparent; background-clip: padding-box; }

[data-theme="dark"] ::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.15); }
[data-theme="dark"] ::-webkit-scrollbar-thumb { background: linear-gradient(135deg, rgba(90, 187, 196, 0.25) 0%, rgba(74, 157, 166, 0.35) 100%); border-radius: 5px; border: 2px solid transparent; background-clip: padding-box; }
[data-theme="dark"] ::-webkit-scrollbar-thumb:hover { background: linear-gradient(135deg, rgba(90, 187, 196, 0.4) 0%, rgba(74, 157, 166, 0.5) 100%); border: 2px solid transparent; background-clip: padding-box; }

/* =====================================================
   THEME TOGGLE BUTTON
   ===================================================== */

.theme-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    backdrop-filter: blur(8px) saturate(180%);
    -webkit-backdrop-filter: blur(8px) saturate(180%);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

.theme-toggle:hover {
    background: rgba(255, 255, 255, 0.25);
    transform: scale(1.08) rotate(10deg);
}

.theme-toggle i { font-size: 16px; transition: transform 0.3s ease; }
.theme-toggle .fa-moon-o { display: block; }
.theme-toggle .fa-sun-o { display: none; }
[data-theme="dark"] .theme-toggle .fa-moon-o { display: none; }
[data-theme="dark"] .theme-toggle .fa-sun-o { display: block; }

/* =====================================================
   TRANSICOES SUAVES
   ===================================================== */

body,
.corFundoAside, .corFundoTop, .corFundoBody,
.corFundoButton1, .corFundoButton2, .corFundoButton3, .corFundoButton4,
.btn-success, .btn-danger, .btn-edit, .btn-report,
input, textarea, select, table, th, td,
.sige-card, .sige-toolbar, .sige-modal {
    transition: background 0.4s ease, background-color 0.4s ease, color 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

/* =====================================================
   ESTILOS GLOBAIS
   ===================================================== */

button, .btn, [type="button"], [type="submit"] {
    border-radius: 10px;
    font-weight: 600;
    transition: all 0.3s ease;
}

select,
select option {
    background-color: var(--layout-content-bg, #ffffff);
    color: var(--layout-content-text, #111827);
}

a { transition: color 0.2s ease; }

::selection { background-color: rgba(41, 112, 125, 0.3); color: inherit; }
[data-theme="dark"] ::selection { background-color: rgba(90, 187, 196, 0.4); }

/* =====================================================
   RESPONSIVO
   ===================================================== */

@media (max-width: 768px) {
    .sige-toolbar-actions button,
    .sige-toolbar-actions .btn,
    .sige-toolbar-actions > * {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        padding: 12px 20px !important;
        font-size: 0.9rem !important;
    }
    .sige-toolbar-actions button i,
    .sige-toolbar-actions .btn i {
        margin-right: 8px;
    }
}

@media (max-width: 480px) {
    .sige-toolbar-actions button,
    .sige-toolbar-actions .btn,
    .sige-toolbar-actions > * {
        padding: 10px 16px !important;
        font-size: 0.85rem !important;
    }
}

/* =====================================================
   LIQUID GLASS — TIER 1: TRUE GLASS (backdrop-filter)
   Sidebar + Header + Dropdowns + Notifications
   ===================================================== */

/* --- Sidebar True Glass --- */
.mainMenu,
aside.mainMenu {
    background: var(--glass-true-bg-sidebar) !important;
    backdrop-filter: var(--glass-true-blur);
    -webkit-backdrop-filter: var(--glass-true-blur);
    border-right: 1px solid rgba(90, 187, 196, 0.10);
    box-shadow: 4px 0 30px rgba(0, 0, 0, 0.12), inset -1px 0 0 rgba(255, 255, 255, 0.04);
}

/* --- Menu Skeleton Loading --- */
.menu-skeleton {
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.menu-skeleton-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 16px;
    border-radius: 8px;
    margin: 0 0;
    animation: skeletonPulse 1.8s ease-in-out infinite;
}

.menu-skeleton-item:nth-child(2) { animation-delay: 0.15s; }
.menu-skeleton-item:nth-child(3) { animation-delay: 0.3s; }
.menu-skeleton-item:nth-child(4) { animation-delay: 0.45s; }
.menu-skeleton-item:nth-child(5) { animation-delay: 0.6s; }
.menu-skeleton-item:nth-child(6) { animation-delay: 0.75s; }
.menu-skeleton-item:nth-child(7) { animation-delay: 0.9s; }

.menu-skeleton-icon {
    width: 18px;
    height: 18px;
    border-radius: 4px;
    background: rgba(90, 187, 196, 0.12);
    flex-shrink: 0;
}

.menu-skeleton-text {
    height: 10px;
    border-radius: 6px;
    background: rgba(90, 187, 196, 0.10);
}

.menu-skeleton-chevron {
    width: 10px;
    height: 10px;
    border-radius: 3px;
    background: rgba(90, 187, 196, 0.08);
    margin-left: auto;
    flex-shrink: 0;
}

@keyframes skeletonPulse {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

[data-theme="dark"] .menu-skeleton-icon {
    background: rgba(90, 187, 196, 0.10);
}

[data-theme="dark"] .menu-skeleton-text {
    background: rgba(90, 187, 196, 0.08);
}

[data-theme="dark"] .menu-skeleton-chevron {
    background: rgba(90, 187, 196, 0.06);
}

/* --- Sidebar Brand Header (logo AngoSchool) --- */
.sidebar-brand-header {
    background: rgba(255, 255, 255, 0.04);
    border-bottom: 1px solid rgba(90, 187, 196, 0.10);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
}

.sidebar-brand-title {
    color: #8ed4db;
    letter-spacing: 0.02em;
    min-width: 120px;
}

.sidebar-brand-accent {
    color: rgba(255, 255, 255, 0.55);
}

.sidebar-type-cursor {
    font-weight: 300;
    color: #8ed4db;
    animation: sidebarCursorBlink 0.55s step-end infinite;
}

@keyframes sidebarCursorBlink {
    0%, 100% { opacity: 1; }
    50%      { opacity: 0; }
}

/* Logo sidebar animation */
.sidebar-brand-header img {
    animation: sidebarLogoFloat 3s ease-in-out infinite;
}

@keyframes sidebarLogoFloat {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    25%      { transform: translateY(-2px) rotate(-2deg); }
    75%      { transform: translateY(1px) rotate(1.5deg); }
}

[data-theme="dark"] .sidebar-brand-header {
    background: rgba(0, 0, 0, 0.12);
    border-bottom-color: rgba(90, 187, 196, 0.06);
}

[data-theme="dark"] .sidebar-brand-title {
    color: #5abbc4;
}

[data-theme="dark"] .sidebar-type-cursor {
    color: #5abbc4;
}

[data-theme="dark"] .sidebar-brand-accent {
    color: rgba(255, 255, 255, 0.40);
}

/* --- Header True Glass --- */
.top_header,
header.top_header,
.headerMain {
    background: var(--glass-true-bg-header) !important;
    backdrop-filter: var(--glass-true-blur);
    -webkit-backdrop-filter: var(--glass-true-blur);
    border-bottom: 1px solid rgba(90, 187, 196, 0.12);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08), inset 0 -1px 0 rgba(255, 255, 255, 0.05);
}

/* --- Menu Items Glass Hover --- */
.mainMenu nav ul li a:hover,
.main_menu ul li a:hover,
.openArea:hover,
.menu-parent-btn:hover,
.menu-parent-link:hover {
    background: rgba(90, 187, 196, 0.10) !important;
    box-shadow: inset 0 0 0 1px rgba(90, 187, 196, 0.08);
}

.mainMenu nav ul li a.active,
.main_menu ul li a.active,
.openArea.active,
.menu-parent-link.active,
.menu-parent-btn.active,
.menu-parent-btn[aria-expanded="true"] {
    background: rgba(90, 187, 196, 0.18) !important;
    box-shadow: inset 0 0 0 1px rgba(90, 187, 196, 0.12), 0 2px 8px rgba(0, 0, 0, 0.1);
}

.menu-sub-link:hover {
    background: rgba(90, 187, 196, 0.08) !important;
    box-shadow: inset 0 0 0 1px rgba(90, 187, 196, 0.06);
}

.menu-sub-link.active {
    background: rgba(90, 187, 196, 0.15) !important;
    box-shadow: inset 0 0 0 1px rgba(90, 187, 196, 0.10);
}

/* --- Dropdown Menus Glass --- */
.main_menu,
.notification_card {
    background: var(--glass-bg-strong) !important;
    border: 1px solid var(--glass-border-teal) !important;
    box-shadow: var(--glass-shadow-lg), var(--glass-inset) !important;
    border-radius: 14px !important;
    overflow: hidden;
    backdrop-filter: blur(12px) saturate(160%);
    -webkit-backdrop-filter: blur(12px) saturate(160%);
    color: var(--layout-content-text) !important;
}

/* Items dentro do dropdown */
.main_menu ul li {
    border-bottom: 1px solid var(--glass-border-teal) !important;
    margin: 0 !important;
}

.main_menu ul li:last-child {
    border-bottom: none !important;
}

.main_menu ul li a {
    padding: 5px 10px !important;
    border-radius: 6px !important;
    margin: 1px 4px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    color: var(--layout-content-text) !important;
    transition: all 0.2s ease !important;
    background: transparent !important;
}

.main_menu ul li a:hover {
    background: var(--glass-bg-teal-medium) !important;
    color: var(--sige-primary) !important;
}

.main_menu ul li a:hover i {
    color: var(--sige-primary) !important;
    transform: scale(1.1) !important;
}

.main_menu ul li a i {
    font-size: 0.7rem !important;
    width: 16px !important;
    text-align: center !important;
    color: var(--sige-primary) !important;
    transition: all 0.2s ease !important;
}

.main_menu ul li a strong {
    font-weight: 600 !important;
    font-size: 0.78rem !important;
}

/* Notification card header */
.notification_card header {
    border-color: var(--glass-border-teal) !important;
}

[data-theme="dark"] .main_menu,
[data-theme="dark"] .notification_card {
    background: var(--glass-bg-strong) !important;
    border-color: var(--glass-border-strong) !important;
    box-shadow: var(--glass-shadow-lg), var(--glass-inset) !important;
}

[data-theme="dark"] .main_menu ul li {
    border-color: var(--glass-border-teal) !important;
}

[data-theme="dark"] .main_menu ul li a {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .main_menu ul li a:hover {
    background: var(--glass-bg-teal-medium) !important;
    color: #5abbc4 !important;
}

[data-theme="dark"] .main_menu ul li a i,
[data-theme="dark"] .main_menu ul li a:hover i {
    color: #5abbc4 !important;
}

[data-theme="dark"] .notification_card header {
    border-color: var(--glass-border-teal) !important;
}

/* --- Dark Mode True Glass --- */
[data-theme="dark"] .mainMenu,
[data-theme="dark"] aside.mainMenu {
    background: var(--glass-true-bg-sidebar) !important;
    backdrop-filter: var(--glass-true-blur);
    -webkit-backdrop-filter: var(--glass-true-blur);
    border-right: 1px solid rgba(90, 187, 196, 0.06);
    box-shadow: 4px 0 30px rgba(0, 0, 0, 0.25), inset -1px 0 0 rgba(255, 255, 255, 0.02);
}

[data-theme="dark"] .top_header,
[data-theme="dark"] header.top_header,
[data-theme="dark"] .headerMain {
    background: var(--glass-true-bg-header) !important;
    backdrop-filter: var(--glass-true-blur);
    -webkit-backdrop-filter: var(--glass-true-blur);
    border-bottom: 1px solid rgba(90, 187, 196, 0.08);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2), inset 0 -1px 0 rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] .mainMenu nav ul li a:hover,
[data-theme="dark"] .main_menu ul li a:hover,
[data-theme="dark"] .openArea:hover,
[data-theme="dark"] .menu-parent-btn:hover,
[data-theme="dark"] .menu-parent-link:hover {
    background: rgba(90, 187, 196, 0.08) !important;
    box-shadow: inset 0 0 0 1px rgba(90, 187, 196, 0.06);
}

[data-theme="dark"] .mainMenu nav ul li a.active,
[data-theme="dark"] .main_menu ul li a.active,
[data-theme="dark"] .openArea.active,
[data-theme="dark"] .menu-parent-link.active,
[data-theme="dark"] .menu-parent-btn.active,
[data-theme="dark"] .menu-parent-btn[aria-expanded="true"] {
    background: rgba(90, 187, 196, 0.14) !important;
    box-shadow: inset 0 0 0 1px rgba(90, 187, 196, 0.10), 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* --- @supports Fallback (browsers sem backdrop-filter) --- */
@supports not (backdrop-filter: blur(1px)) {
    .mainMenu,
    aside.mainMenu {
        background: linear-gradient(180deg, #0e4d56 0%, #082e35 50%, #061f24 100%) !important;
    }

    .top_header,
    header.top_header,
    .headerMain {
        background: linear-gradient(135deg, #29707D 0%, #1b6e7a 50%, #0e4d56 100%) !important;
    }

    .theme-toggle {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
}

/* --- Mobile: Reduced blur for performance --- */
@media (max-width: 768px) {
    .mainMenu,
    aside.mainMenu {
        backdrop-filter: blur(8px) saturate(160%);
        -webkit-backdrop-filter: blur(8px) saturate(160%);
    }

    .top_header,
    header.top_header,
    .headerMain {
        backdrop-filter: blur(8px) saturate(160%);
        -webkit-backdrop-filter: blur(8px) saturate(160%);
    }
}
