/* ===============================================
   PORTAL DE FERRAMENTAS FINANCEIRAS - SISTEMA DE TEMAS COMPLETO
=============================================== */

/* ===== TEMA CLARO (PADRÃO) ===== */
:root {
    /* ===== IDENTIFICAÇÃO DO TEMA ===== */
    --current-theme: 'light';
    
    /* ===== CORES PRINCIPAIS DA MARCA ===== */
    --primary-color: #007E4F;
    --primary-dark: #005a37;
    --primary-light: #28a745;
    --secondary-dark: #033333;
    --secondary-light: #91D250;
    --primary-gradient: linear-gradient(135deg, #007E4F, #28a745);
    --secondary-gradient: linear-gradient(to right, #085e48, #062725);
    --secondary-color: #6c757d;
    --statusbar-color: #062725;
    
    /* ===== CORES DE STATUS GLOBAIS ===== */
    --success-color: #10b981;
    --success-bg: #d1fae5;
    --success-dark: #065f46;
    --warning-color: #ffc107;
    --warning-bg: #fff3cd;
    --warning-dark: #856404;
    --danger-color: #da5552;
    --danger-bg: #f8d7da;
    --danger-dark: #bb4a48;
    --info-color: #17a2b8;
    --info-bg: #d1ecf1;
    --info-dark: #0c5460;
    
    /* ===== CORES DE FUNDO E SUPERFÍCIE ===== */
    --bg-primary: #eaebec;
    --bg-header: #062725;
    --bg-secondary: #f8f9fa;
    --bg-secondary-gradient: linear-gradient(180deg, rgba(248, 248, 248, 1) 0%, rgb(231, 231, 231) 100%);
    --bg-tertiary: #e9ecef;
    --bg-overlay: rgba(0, 0, 0, 0.5);
    --bg-backdrop: rgba(0, 0, 0, 0.1);
    
    /* ===== CORES DE TEXTO ===== */
    --text-branco: #f9f9f9;
    --text-primary: #212529;
    --text-secondary: #6c757d;
    --text-muted: #adb5bd;
    --text-inverse: #ffffff;
    --text-link: var(--primary-color);
    --text-link-hover: var(--primary-dark);
    
    /* ===== CORES DE BORDA ===== */
    --border-primary: #dee2e6;
    --border-secondary: #e9ecef;
    --border-light: #f1f3f4;
    --border-focus: var(--primary-color);
    --border-hover: #ced4da;
    
    /* ===== CORES DA SIDEBAR ===== */
    --sidebar-bg: #ffffff;
    --sidebar-border: #e9ecef60;
    --sidebar-text: #16B364;
    --sidebar-text-muted: #c6c9cc;
    --sidebar-text-nav: #495057;
    --sidebar-hover: #1a4d3a20;
    --sidebar-active: #1a4d3a40;
    --sidebar-logo-bg: var(--primary-gradient);
    --sidebar-header-bg: var(--secondary-gradient);

    /* ===== CORES DOS CARDS ===== */
    --card-bg: #ffffff;
    --card-border: #e1e1e1;
    --card-shadow: rgba(0, 0, 0, 0.1);
    --card-hover-shadow: rgba(0, 0, 0, 0.15);

    /* ===== CORES DOS BOTÕES ===== */
    --btn-primary-bg: var(--primary-color);
    --btn-primary-color: #ffffff;
    --btn-primary-hover: var(--primary-dark);
    --btn-secondary-bg: #f8f9fa;
    --btn-secondary-color: #495057;
    --btn-secondary-hover: #e9ecef;
    --btn-secondary-border: #dee2e6;
    --btn-danger-bg: var(--danger-color);
    --btn-danger-color: #ffffff;
    --btn-danger-hover: var(--danger-dark);
    --btn-danger-border: var(--danger-color);
    --btn-info-bg: var(--info-color);
    --btn-info-color: #ffffff;
    --btn-info-hover: #138496;
    --btn-info-border: var(--info-color);
    
    /* ===== CORES DOS FORMULÁRIOS ===== */
    --bg-input: #ffffff;
    --input-bg: #ffffff;
    --input-border: #ced4da;
    --input-border-focus: var(--primary-color);
    --input-placeholder: #6c757d;
    --input-disabled-bg: #e9ecef;

    /* ===== CORES DAS TABELAS ===== */
    --table-bg: #ffffff;
    --table-border: #dee2e6;
    --table-hover: #f5f5f5;
    --table-striped: #f9f9f9;
    
    /* ===== CORES DOS MODAIS ===== */
    --modal-bg: #ffffff;
    --modal-border: #dee2e6;
    --modal-backdrop: rgba(0, 0, 0, 0.5);
    
    /* ===== ESTADOS DE STATUS - SISTEMA DE TAREFAS ===== */
    --status-pendente-bg: #fff3cd;
    --status-pendente-color: #856404;
    --status-pendente-border: #fbbf24;
    
    --status-progresso-bg: #cce5ff;
    --status-progresso-color: #0066cc;
    --status-progresso-border: #60a5fa;
    
    --status-pausada-bg: #f8f9fa;
    --status-pausada-color: #6c757d;
    --status-pausada-border: #9ca3af;
    
    --status-concluida-bg: #d4edda;
    --status-concluida-color: #155724;
    --status-concluida-border: #34d399;
    
    --status-cancelada-bg: #f8d7da;
    --status-cancelada-color: #721c24;
    --status-cancelada-border: #f87171;
    
    /* ===== ESTADOS DE PRIORIDADE - SISTEMA DE TAREFAS ===== */
    --priority-baixa-bg: #d1ecf1;
    --priority-baixa-color: #0c5460;
    --priority-baixa-border: #7dd3fc;
    
    --priority-media-bg: #fff3cd;
    --priority-media-color: #856404;
    --priority-media-border: #fbbf24;
    
    --priority-alta-bg: #ffe9d0;
    --priority-alta-color: #ea580c;
    --priority-alta-border: #fb923c;
    
    --priority-urgente-bg: #ffe6e6;
    --priority-urgente-color: #dc2626;
    --priority-urgente-border: #f87171;
    
    /* ===== CORES ESPECÍFICAS DE TAREFAS ===== */
    --task-overdue-bg: var(--danger-color);
    --task-overdue-color: var(--text-inverse);
    --task-valor-bg: var(--success-color);
    --task-valor-color: var(--secondary-dark);
    --task-category-bg: var(--primary-color);
    --task-category-color: var(--text-inverse);
    
    /* Hover states para cards de tarefa */
    --task-card-hover-shadow: var(--shadow-md);
    --task-card-hover-border: var(--primary-color);
    --task-card-hover-transform: translateY(-2px);
    
    /* Cores de attachment/anexos */
    --attachment-bg: var(--card-bg);
    --attachment-border: var(--card-border);
    --attachment-hover-border: var(--primary-color);
    --attachment-icon-opacity: 0.8;
    
    /* Cores de comentários */
    --comment-bg: var(--card-bg);
    --comment-border: var(--card-border);
    --comment-author-color: var(--text-primary);
    --comment-date-color: var(--text-muted);
    --comment-content-color: var(--text-primary);
    
    /* ===== TIPOGRAFIA ===== */
    --font-family-base: 'Rubik', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-family-headings: 'Rubik', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-family-mono: 'Rubik', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    
    /* ===== TAMANHOS DE FONTE ===== */
    --font-size-xss: 0.6rem;         /* 12px */
    --font-size-xs: 0.75rem;         /* 12px */
    --font-size-sm: 0.875rem;        /* 14px */
    --font-size-base: 1rem;          /* 16px */
    --font-size-lg: 1.125rem;        /* 18px */
    --font-size-xl: 1.25rem;         /* 20px */
    --font-size-2xl: 1.5rem;         /* 24px */
    --font-size-3xl: 1.875rem;       /* 30px */
    --font-size-4xl: 2.25rem;        /* 36px */
    
    /* ===== PESOS DE FONTE ===== */
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    
    /* ===== ESPAÇAMENTO ===== */
    --spacing-1: 0.15rem;    /* 4px */
    --spacing-2: 0.5rem;     /* 8px */
    --spacing-3: 0.75rem;    /* 12px */
    --spacing-4: 1rem;       /* 16px */
    --spacing-5: 1.25rem;    /* 20px */
    --spacing-6: 1.5rem;     /* 24px */
    --spacing-8: 2rem;       /* 32px */
    --spacing-10: 2.5rem;    /* 40px */
    --spacing-12: 3rem;      /* 48px */
    --spacing-16: 4rem;      /* 64px */

    /* ===== ALTURA DE ELEMENTOS DE FORMULÁRIO ===== */
    --input-height: 48px;    /* Altura padrão para inputs */
    --btn-height: 48px;      /* Altura padrão para botões */
    --toggle-height: 48px;   /* Altura padrão para toggles */

    /* ===== BORDER RADIUS ===== */
    --radius-sm: 0.375rem;   /* 6px */
    --radius-md: 0.5rem;     /* 8px */
    --radius-lg: 0.75rem;    /* 12px */
    --radius-xl: 1rem;       /* 16px */
    --radius-2xl: 1.5rem;    /* 24px */
    --radius-full: 9999px;   /* Totalmente arredondado */
    
    /* ===== SOMBRAS ===== */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    
    /* ===== TRANSIÇÕES ===== */
    --transition-fast: 150ms ease-in-out;
    --transition-base: 200ms ease-in-out;
    --transition-slow: 300ms ease-in-out;
    --transition-theme: 250ms ease-in-out;
    
    /* ===== Z-INDEX ===== */
    --z-dropdown: 1000;
    --z-sticky: 1020;
    --z-fixed: 1030;
    --z-modal-backdrop: 1040;
    --z-modal: 1050;
    --z-popover: 1060;
    --z-tooltip: 1070;
    
    /* ===== LARGURAS DA SIDEBAR ===== */
    --sidebar-width: 280px;
    --sidebar-collapsed-width: 80px;
}

/* ===== TEMA ESCURO ===== */
[data-theme="dark"] {
    /* ===== IDENTIFICAÇÃO DO TEMA ===== */
    --current-theme: 'dark';
    
    /* ===== CORES PRINCIPAIS (mantém a identidade da marca) ===== */
    --primary-color: #00B370;
    --primary-dark: #007E4F;
    --primary-light: #33C285;
    --primary-gradient: linear-gradient(135deg, #00B370, #33C285);
    --secondary-gradient: linear-gradient(to right, #085e48, #062725);
    
    /* ===== CORES DE STATUS GLOBAIS (ajustadas para tema escuro) ===== */
    --success-color: #10b981;
    --success-bg: #064e3b;
    --success-dark: #d1fae5;
    --warning-color: #f59e0b;
    --warning-bg: #78350f;
    --warning-dark: #fef3c7;
    --danger-color: #da5552;
    --danger-bg: #7f1d1d;
    --danger-dark: #fecaca;
    --info-color: #06b6d4;
    --info-bg: #164e63;
    --info-dark: #cffafe;
    
    /* ===== CORES DE FUNDO E SUPERFÍCIE ===== */
    --bg-primary: #1a1a1a;
    --bg-header: #062725;
    --bg-secondary: #1e1e1e;
    --bg-secondary-gradient: linear-gradient(360deg,rgba(26, 26, 26, 1) 0%, rgba(30, 30, 30, 1) 100%);
    --bg-tertiary: #1b1b1b;
    --bg-overlay: rgba(0, 0, 0, 0.7);
    --bg-backdrop: rgba(0, 0, 0, 0.3);
    
    /* ===== CORES DE TEXTO ===== */
    --text-primary: #ffffff;
    --text-secondary: #b3b3b3;
    --text-muted: #666666;
    --text-inverse: #1a1a1a;
    --text-link: var(--primary-color);
    --text-link-hover: var(--primary-light);
    
    /* ===== CORES DE BORDA ===== */
    --border-primary: #404040;
    --border-secondary: #333333;
    --border-light: #2d2d2d;
    --border-focus: var(--primary-color);
    --border-hover: #555555;

    /* ===== CORES DA SIDEBAR ===== */
    --sidebar-bg: #252525;
    --sidebar-border: #404040;
    --sidebar-text: #e0e0e0;
    --sidebar-text-muted: #b3b3b3;
    --sidebar-text-nav: #cccccc;
    --sidebar-hover: #1a4d3a60;
    --sidebar-active: #1a4d3a;
    --sidebar-logo-bg: var(--primary-gradient);
    --sidebar-header-bg: var(--secondary-gradient);
    
    /* ===== CORES DOS CARDS ===== */
    --card-bg: #2d2d2d;
    --card-border: #404040;
    --card-shadow: rgba(0, 0, 0, 0.3);
    --card-hover-shadow: rgba(0, 0, 0, 0.4);
    
    /* ===== CORES DOS BOTÕES ===== */
    --btn-primary-bg: var(--primary-color);
    --btn-primary-color: #1a1a1a;
    --btn-primary-hover: var(--primary-light);
    --btn-secondary-bg: #404040;
    --btn-secondary-color: #e0e0e0;
    --btn-secondary-hover: #555555;
    --btn-secondary-border: #555555;
    --btn-danger-bg: var(--danger-color);
    --btn-danger-color: #ffffff;
    --btn-danger-hover: #ef5350;
    --btn-danger-border: var(--danger-color);
    --btn-info-bg: var(--info-color);
    --btn-info-color: #1a1a1a;
    --btn-info-hover: #22d3ee;
    --btn-info-border: var(--info-color);

    /* ===== CORES DOS FORMULÁRIOS ===== */
    --bg-input: #333333;
    --input-bg: #333333;
    --input-border: #555555;
    --input-border-focus: var(--primary-color);
    --input-placeholder: #888888;
    --input-disabled-bg: #2d2d2d;
    
    /* ===== CORES DAS TABELAS ===== */
    --table-bg: #2d2d2d;
    --table-border: #404040;
    --table-hover: #3a3a3a;
    --table-striped: #333333;
    
    /* ===== CORES DOS MODAIS ===== */
    --modal-bg: #2d2d2d;
    --modal-border: #404040;
    --modal-backdrop: rgba(0, 0, 0, 0.7);
    
    /* ===== ESTADOS DE STATUS - AJUSTADOS PARA TEMA ESCURO ===== */
    --status-pendente-bg: #3d2f0f;
    --status-pendente-color: #fbbf24;
    --status-pendente-border: #fbbf24;
    
    --status-progresso-bg: #1e3a5f;
    --status-progresso-color: #60a5fa;
    --status-progresso-border: #60a5fa;
    
    --status-pausada-bg: #404040;
    --status-pausada-color: #b3b3b3;
    --status-pausada-border: #9ca3af;
    
    --status-concluida-bg: #1a3a26;
    --status-concluida-color: #4ade80;
    --status-concluida-border: #4ade80;
    
    --status-cancelada-bg: #4a1a1a;
    --status-cancelada-color: #f87171;
    --status-cancelada-border: #f87171;
    
    /* ===== ESTADOS DE PRIORIDADE - AJUSTADOS PARA TEMA ESCURO ===== */
    --priority-baixa-bg: #1a3f42;
    --priority-baixa-color: #7dd3fc;
    --priority-baixa-border: #7dd3fc;
    
    --priority-media-bg: #3d2f0f;
    --priority-media-color: #fbbf24;
    --priority-media-border: #fbbf24;
    
    --priority-alta-bg: #4a2c17;
    --priority-alta-color: #fb923c;
    --priority-alta-border: #fb923c;
    
    --priority-urgente-bg: #4a1a1a;
    --priority-urgente-color: #f87171;
    --priority-urgente-border: #f87171;
    
    /* ===== CORES ESPECÍFICAS DE TAREFAS - TEMA ESCURO ===== */
    --task-overdue-bg: var(--danger-color);
    --task-overdue-color: var(--text-primary);
    --task-valor-bg: var(--success-color);
    --task-valor-color: var(--secondary-dark);
    --task-category-bg: var(--primary-color);
    --task-category-color: var(--secondary-dark);
    
    /* Hover states para cards de tarefa - tema escuro */
    --task-card-hover-shadow: var(--shadow-lg);
    --task-card-hover-border: var(--primary-color);
    --task-card-hover-transform: translateY(-2px);
    
    /* Cores de attachment/anexos - tema escuro */
    --attachment-bg: var(--card-bg);
    --attachment-border: var(--card-border);
    --attachment-hover-border: var(--primary-color);
    --attachment-icon-opacity: 0.9;
    
    /* Cores de comentários - tema escuro */
    --comment-bg: var(--card-bg);
    --comment-border: var(--card-border);
    --comment-author-color: var(--text-primary);
    --comment-date-color: var(--text-muted);
    --comment-content-color: var(--text-primary);
    
    /* ===== SOMBRAS AJUSTADAS PARA TEMA ESCURO ===== */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.4), 0 4px 6px -2px rgba(0, 0, 0, 0.3);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.5), 0 10px 10px -5px rgba(0, 0, 0, 0.3);
}

/* ===== TRANSIÇÕES AUTOMÁTICAS PARA MUDANÇA DE TEMA ===== */
*,
*::before,
*::after {
    transition: 
        background-color var(--transition-theme),
        border-color var(--transition-theme),
        color var(--transition-theme),
        box-shadow var(--transition-theme),
        opacity var(--transition-fast);
}

/* ===== PREFERÊNCIA DO SISTEMA ===== */
/* Se o sistema preferir tema escuro e não houver preferência manual, aplica o tema escuro automaticamente */
@media (prefers-color-scheme: dark) {
    :root:not([data-theme]) {
        color-scheme: dark;
    }
}

/* ===== CLASSES UTILITÁRIAS DE CORES ===== */

/* Backgrounds */
.bg-primary { background-color: var(--bg-primary) !important; }
.bg-secondary { background-color: var(--bg-secondary) !important; }
.bg-tertiary { background-color: var(--bg-tertiary) !important; }

/* 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; }

/* Border colors */
.border-primary { border-color: var(--border-primary) !important; }
.border-secondary { border-color: var(--border-secondary) !important; }

/* ===== INDICADORES DE TEMA ATIVO ===== */
body::before {
    content: var(--current-theme);
    display: none;
}

/* ===== COMPATIBILIDADE COM IMAGENS E ÍCONES ===== */

/* Filtro padrão para imagens no tema escuro */
[data-theme="dark"] img:not(.no-filter) {
    filter: brightness(0.9) contrast(1.1);
    opacity: 0.7;
}

/* Filtro invertido para ícones e elementos específicos */
[data-theme="dark"] .task-card img:not(.no-filter),
[data-theme="dark"] .profile-card-title img:not(.no-filter),
[data-theme="dark"] .filter-btn img:not(.no-filter),
[data-theme="dark"] .task-details-section img:not(.no-filter),
[data-theme="dark"] .attachments-carousel-container img:not(.no-filter),
[data-theme="dark"] .task-comments-section img:not(.no-filter),
[data-theme="dark"] .kanban-filters img:not(.no-filter),
[data-theme="dark"] .search-group img:not(.no-filter),
[data-theme="dark"] .modal-content img:not(.no-filter),
[data-theme="dark"] .icon-light {
    filter: brightness(0) saturate(100%) invert(100%);
    opacity: 0.7;
}

/* Filtro especial para ícone primário */
[data-theme="dark"] .icon-primary {
    filter: brightness(0) saturate(100%) invert(59%) sepia(79%) saturate(2476%) hue-rotate(133deg) brightness(119%) contrast(119%);
}

/* ===== APLICAÇÃO AUTOMÁTICA DAS VARIÁVEIS ===== */

/* Aplicar as variáveis CSS globalmente no body */
body {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
}

/* Cards e containers principais */
.card,
.stat-card,
.welcome-card,
.info-card,
.data-card,
.content-card,
.filter-card,
.analysis-card,
.task-card,
.detail-card {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--card-border);
}

/* ===== CORREÇÕES ESPECÍFICAS PARA ELEMENTOS QUE FICAVAM BRANCOS ===== */

/* Seções específicas que estavam brancas */
[data-theme="dark"] .company-info,
[data-theme="dark"] .empresa-info,
[data-theme="dark"] .company-section {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--card-border);
}

[data-theme="dark"] .filters-section,
[data-theme="dark"] .filtros-analise,
[data-theme="dark"] .filter-container,
[data-theme="dark"] .analysis-filters,
[data-theme="dark"] .tasks-filters {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--card-border);
}

/* Cards de estatísticas */
[data-theme="dark"] .stat-item,
[data-theme="dark"] .metric-card,
[data-theme="dark"] .stats-card {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--card-border);
}

/* Kanban que estava branco */
[data-theme="dark"] .kanban-column,
[data-theme="dark"] .task-column {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--card-border);
}

[data-theme="dark"] .kanban-header,
[data-theme="dark"] .column-header {
    background-color: var(--bg-tertiary);
    color: var(--text-primary);
    border-color: var(--card-border);
}

[data-theme="dark"] .kanban-task-card,
[data-theme="dark"] .task-card {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--card-border);
}

/* Gráficos e visualizações */
[data-theme="dark"] .chart-container,
[data-theme="dark"] .graph-container,
[data-theme="dark"] .evolution-chart {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--card-border);
}

/* Main content e containers */
[data-theme="dark"] .main-content,
[data-theme="dark"] .content-container,
[data-theme="dark"] .content-wrapper,
[data-theme="dark"] .page-wrapper,
[data-theme="dark"] .section-wrapper {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
}

/* Campos específicos */
[data-theme="dark"] .empresa-field,
[data-theme="dark"] .cnpj-field,
[data-theme="dark"] .company-field {
    background-color: var(--input-bg);
    color: var(--text-primary);
    border-color: var(--input-border);
}

/* Estados vazios */
[data-theme="dark"] .empty-state {
    background-color: var(--card-bg);
    color: var(--text-secondary);
    border-color: var(--card-border);
}

/* Lista de tarefas */
[data-theme="dark"] .task-list {
    background-color: var(--card-bg);
    border-color: var(--card-border);
}

[data-theme="dark"] .task-item {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--border-secondary);
}

/* Navegação interna */
[data-theme="dark"] .nav-tabs .nav-link {
    background-color: var(--card-bg);
    color: var(--text-secondary);
    border-color: var(--card-border);
}

[data-theme="dark"] .nav-tabs .nav-link.active {
    color: var(--primary-color);
    border-bottom-color: var(--primary-color);
}

/* ===== APLICAÇÃO ESPECÍFICA PARA SISTEMA DE TAREFAS ===== */

/* Status das Tarefas - aplicação forçada das variáveis */
.task-status.status-pendente {
    background-color: var(--status-pendente-bg) !important;
    color: var(--status-pendente-color) !important;
    border-color: var(--status-pendente-border) !important;
}

.task-status.status-em_progresso {
    background-color: var(--status-progresso-bg) !important;
    color: var(--status-progresso-color) !important;
    border-color: var(--status-progresso-border) !important;
}

.task-status.status-pausada {
    background-color: var(--status-pausada-bg) !important;
    color: var(--status-pausada-color) !important;
    border-color: var(--status-pausada-border) !important;
}

.task-status.status-concluida {
    background-color: var(--status-concluida-bg) !important;
    color: var(--status-concluida-color) !important;
    border-color: var(--status-concluida-border) !important;
}

.task-status.status-cancelada {
    background-color: var(--status-cancelada-bg) !important;
    color: var(--status-cancelada-color) !important;
    border-color: var(--status-cancelada-border) !important;
}

/* Prioridades das Tarefas - aplicação forçada das variáveis */
.task-priority.priority-baixa {
    background-color: var(--priority-baixa-bg) !important;
    color: var(--priority-baixa-color) !important;
    border-color: var(--priority-baixa-border) !important;
}

.task-priority.priority-media {
    background-color: var(--priority-media-bg) !important;
    color: var(--priority-media-color) !important;
    border-color: var(--priority-media-border) !important;
}

.task-priority.priority-alta {
    background-color: var(--priority-alta-bg) !important;
    color: var(--priority-alta-color) !important;
    border-color: var(--priority-alta-border) !important;
}

.task-priority.priority-urgente {
    background-color: var(--priority-urgente-bg) !important;
    color: var(--priority-urgente-color) !important;
    border-color: var(--priority-urgente-border) !important;
}

/* Elementos específicos de tarefas */
.task-overdue {
    background-color: var(--task-overdue-bg) !important;
    color: var(--task-overdue-color) !important;
}

.task-valor {
    background-color: var(--task-valor-bg) !important;
    color: var(--task-valor-color) !important;
}

.task-category {
    background-color: var(--task-category-bg) !important;
    color: var(--task-category-color) !important;
}

/* Anexos com hover consistente */
.attachment-item:hover {
    border-color: var(--attachment-hover-border) !important;
}

.attachment-icon {
    opacity: var(--attachment-icon-opacity) !important;
}

/* Comentários com cores consistentes */
.comment-item {
    background-color: var(--comment-bg) !important;
    border-color: var(--comment-border) !important;
}

.comment-author {
    color: var(--comment-author-color) !important;
}

.comment-date {
    color: var(--comment-date-color) !important;
}

.comment-content {
    color: var(--comment-content-color) !important;
}

/* ===== GARANTIAS DE COMPATIBILIDADE ===== */

/* Garantir que badges e status funcionem corretamente */
[data-theme="dark"] .badge,
[data-theme="dark"] .task-status,
[data-theme="dark"] .task-priority {
    border-width: 1px;
    border-style: solid;
}

/* Garantir que modais funcionem corretamente no tema escuro */
[data-theme="dark"] .modal-content {
    background-color: var(--modal-bg) !important;
    border-color: var(--modal-border) !important;
}

[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer {
    border-color: var(--modal-border) !important;
}

/* Garantir que formulários funcionem no tema escuro */
[data-theme="dark"] .form-control {
    background-color: var(--bg-primary) !important;
    border-color: var(--input-border) !important;
    color: var(--text-primary) !important;
}

[data-theme="dark"] .form-control:focus {
    border-color: var(--input-border-focus) !important;
}

[data-theme="dark"] .form-control::placeholder {
    color: var(--input-placeholder) !important;
}

/* Garantir que seções de detalhes funcionem no tema escuro */
[data-theme="dark"] .task-header-section,
[data-theme="dark"] .detail-card {
    background-color: var(--card-bg) !important;
    border-color: var(--card-border) !important;
}

[data-theme="dark"] .info-item {
    background-color: var(--bg-secondary) !important;
    border-color: var(--border-secondary) !important;
}

/* ===== VALIDAÇÃO DE CONTRASTE PARA ACESSIBILIDADE ===== */

/* Garantir contraste adequado para acessibilidade */
@media (prefers-contrast: high) {
    :root {
        --status-pendente-bg: #fff2a6;
        --status-pendente-color: #6b4e00;
        
        --status-progresso-bg: #a6d5ff;
        --status-progresso-color: #003d66;
        
        --status-concluida-bg: #a6e8b8;
        --status-concluida-color: #003d12;
        
        --status-cancelada-bg: #ffb3ba;
        --status-cancelada-color: #4d0007;
    }
    
    [data-theme="dark"] {
        --status-pendente-bg: #4d3a00;
        --status-pendente-color: #fff2a6;
        
        --status-progresso-bg: #003d66;
        --status-progresso-color: #a6d5ff;
        
        --status-concluida-bg: #003d12;
        --status-concluida-color: #a6e8b8;
        
        --status-cancelada-bg: #4d0007;
        --status-cancelada-color: #ffb3ba;
    }
}

/* ===== SUPORTE A MOVIMENTO REDUZIDO ===== */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    
    /* Manter apenas transições de cores para temas */
    * {
        transition: 
            background-color var(--transition-theme),
            border-color var(--transition-theme),
            color var(--transition-theme) !important;
    }
}