/* CSS adicional para corrigir cores dos cards Tailwind */

/* Fundos de Cards com Cores Corretas */
.tw-bg-blue-50 { 
    background-color: rgb(239, 246, 255) !important; /* Azul muito claro */
}

.tw-bg-green-50 { 
    background-color: rgb(240, 253, 244) !important; /* Verde muito claro */
}

.tw-bg-purple-50 { 
    background-color: rgb(250, 245, 255) !important; /* Roxo muito claro */
}

.tw-bg-orange-50 { 
    background-color: rgb(255, 247, 237) !important; /* Laranja muito claro */
}

.tw-bg-cyan-50 { 
    background-color: rgb(236, 254, 255) !important; /* Ciano muito claro */
}

.tw-bg-pink-50 { 
    background-color: rgb(253, 242, 248) !important; /* Rosa muito claro */
}

.tw-bg-gray-50 { 
    background-color: rgb(249, 250, 251) !important; /* Cinza muito claro */
}

.tw-bg-indigo-50 { 
    background-color: rgb(238, 242, 255) !important; /* Índigo muito claro */
}

.tw-bg-red-50 { 
    background-color: rgb(254, 242, 242) !important; /* Vermelho muito claro */
}

.tw-bg-yellow-50 { 
    background-color: rgb(254, 252, 232) !important; /* Amarelo muito claro */
}

/* Fundos 100 (mais escuros para tags) */
.tw-bg-blue-100 { 
    background-color: rgb(219, 234, 254) !important; 
}

.tw-bg-purple-100 { 
    background-color: rgb(243, 232, 255) !important; 
}

.tw-bg-pink-100 { 
    background-color: rgb(252, 231, 243) !important; 
}

.tw-bg-gray-100 { 
    background-color: rgb(243, 244, 246) !important; 
}

/* Bordas correspondentes */
.tw-border-blue-200 { 
    border-color: rgb(191, 219, 254) !important; 
}

.tw-border-green-200 { 
    border-color: rgb(187, 247, 208) !important; 
}

.tw-border-purple-200 { 
    border-color: rgb(233, 213, 255) !important; 
}

.tw-border-orange-200 { 
    border-color: rgb(254, 215, 170) !important; 
}

.tw-border-cyan-200 { 
    border-color: rgb(165, 243, 252) !important; 
}

.tw-border-pink-200 { 
    border-color: rgb(251, 207, 232) !important; 
}

.tw-border-red-200 { 
    border-color: rgb(254, 202, 202) !important; 
}

.tw-border-yellow-200 { 
    border-color: rgb(254, 240, 138) !important; 
}

/* Textos correspondentes */
.tw-text-blue-800 { 
    color: rgb(30, 64, 175) !important; 
}

.tw-text-purple-800 { 
    color: rgb(91, 33, 182) !important; 
}

.tw-text-pink-800 { 
    color: rgb(157, 23, 77) !important; 
}

.tw-text-gray-800 { 
    color: rgb(31, 41, 55) !important; 
}

.tw-text-red-800 { 
    color: rgb(153, 27, 27) !important; 
}

.tw-text-red-700 { 
    color: rgb(185, 28, 28) !important; 
}

.tw-text-yellow-800 { 
    color: rgb(133, 77, 14) !important; 
}

.tw-text-yellow-700 { 
    color: rgb(161, 98, 7) !important; 
}

.tw-text-green-800 { 
    color: rgb(22, 101, 52) !important; 
}

.tw-text-green-700 { 
    color: rgb(21, 128, 61) !important; 
}

.tw-text-blue-600 { 
    color: rgb(37, 99, 235) !important; 
}

.tw-text-orange-600 { 
    color: rgb(234, 88, 12) !important; 
}

.tw-text-green-600 { 
    color: rgb(22, 163, 74) !important; 
}

.tw-text-gray-600 { 
    color: rgb(75, 85, 99) !important; 
}

.tw-text-gray-700 { 
    color: rgb(55, 65, 81) !important; 
}

.tw-text-gray-900 { 
    color: rgb(17, 24, 39) !important; 
}

.tw-text-white { 
    color: rgb(255, 255, 255) !important; 
}

/* Fundo especial para o card final */
.tw-bg-indigo-500 { 
    background-color: rgb(99, 102, 241) !important; 
}

/* Classes de layout essenciais */
.tw-bg-white { 
    background-color: rgb(255, 255, 255) !important; 
}

.tw-rounded-2xl { 
    border-radius: 1rem !important; 
}

.tw-rounded-xl { 
    border-radius: 0.75rem !important; 
}

.tw-rounded-lg { 
    border-radius: 0.5rem !important; 
}

.tw-rounded-full { 
    border-radius: 9999px !important; 
}

.tw-shadow-xl { 
    box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1) !important; 
}

.tw-border { 
    border-width: 1px !important; 
    border-style: solid !important; 
}

/* Garantir contraste em temas escuros */
/* Gradientes especiais para cards de destaque */
.tw-bg-gradient-to-r {
    background: linear-gradient(to right, var(--tw-gradient-from), var(--tw-gradient-to)) !important;
}

.tw-from-green-500 {
    --tw-gradient-from: rgb(34, 197, 94) !important;
}

.tw-to-green-600 {
    --tw-gradient-to: rgb(22, 163, 74) !important;
}

.tw-from-orange-500 {
    --tw-gradient-from: rgb(249, 115, 22) !important;
}

.tw-to-orange-600 {
    --tw-gradient-to: rgb(234, 88, 12) !important;
}

.tw-from-blue-500 {
    --tw-gradient-from: rgb(59, 130, 246) !important;
}

.tw-to-blue-600 {
    --tw-gradient-to: rgb(37, 99, 235) !important;
}

/* Suporte para prefers-color-scheme: dark */
@media (prefers-color-scheme: dark) {
    .tw-bg-blue-50 { 
        background-color: rgb(30, 58, 138) !important; /* Azul escuro */
        border-color: rgb(59, 130, 246) !important;
    }
    
    .tw-bg-green-50 { 
        background-color: rgb(22, 101, 52) !important; /* Verde escuro */
        border-color: rgb(34, 197, 94) !important;
    }
    
    .tw-bg-purple-50 { 
        background-color: rgb(88, 28, 135) !important; /* Roxo escuro */
        border-color: rgb(147, 51, 234) !important;
    }
    
    .tw-bg-orange-50 { 
        background-color: rgb(154, 52, 18) !important; /* Laranja escuro */
        border-color: rgb(249, 115, 22) !important;
    }
    
    .tw-bg-cyan-50 { 
        background-color: rgb(22, 78, 99) !important; /* Ciano escuro */
        border-color: rgb(34, 211, 238) !important;
    }
    
    .tw-bg-pink-50 { 
        background-color: rgb(131, 24, 67) !important; /* Rosa escuro */
        border-color: rgb(236, 72, 153) !important;
    }
    
    .tw-bg-red-50 { 
        background-color: rgb(127, 29, 29) !important; /* Vermelho escuro */
        border-color: rgb(239, 68, 68) !important;
    }
    
    .tw-bg-yellow-50 { 
        background-color: rgb(120, 53, 15) !important; /* Amarelo escuro */
        border-color: rgb(245, 158, 11) !important;
    }
    
    .tw-bg-white { 
        background-color: rgb(31, 41, 55) !important; /* Cinza escuro para fundo principal */
    }
    
    .tw-bg-gray-50 { 
        background-color: rgb(31, 41, 55) !important;
    }
    
    /* Textos adaptados para tema escuro */
    .tw-text-gray-900 { 
        color: rgb(243, 244, 246) !important; /* Branco para títulos */
    }
    
    .tw-text-gray-700 { 
        color: rgb(209, 213, 219) !important; /* Cinza claro para texto */
    }
    
    .tw-text-gray-600 { 
        color: rgb(156, 163, 175) !important; /* Cinza médio */
    }
    
    /* Bordas adaptadas */
    .tw-border-blue-200 { 
        border-color: rgb(59, 130, 246) !important;
    }
    
    .tw-border-green-200 { 
        border-color: rgb(34, 197, 94) !important;
    }
    
    .tw-border-purple-200 { 
        border-color: rgb(147, 51, 234) !important;
    }
    
    .tw-border-orange-200 { 
        border-color: rgb(249, 115, 22) !important;
    }
    
    .tw-border-cyan-200 { 
        border-color: rgb(34, 211, 238) !important;
    }
    
    .tw-border-pink-200 { 
        border-color: rgb(236, 72, 153) !important;
    }
    
    /* Gradientes adaptados para tema escuro */
    .tw-from-green-500 {
        --tw-gradient-from: rgb(22, 163, 74) !important; /* Verde mais escuro */
    }
    
    .tw-to-green-600 {
        --tw-gradient-to: rgb(21, 128, 61) !important; /* Verde ainda mais escuro */
    }
    
    .tw-from-orange-500 {
        --tw-gradient-from: rgb(234, 88, 12) !important; /* Laranja mais escuro */
    }
    
    .tw-to-orange-600 {
        --tw-gradient-to: rgb(194, 65, 12) !important; /* Laranja ainda mais escuro */
    }
    
    .tw-from-blue-500 {
        --tw-gradient-from: rgb(37, 99, 235) !important; /* Azul mais escuro */
    }
    
    .tw-to-blue-600 {
        --tw-gradient-to: rgb(29, 78, 216) !important; /* Azul ainda mais escuro */
    }
}

/* Suporte para temas escuros controlados por classe CSS do site */
[data-bs-theme="dark"] .tw-bg-blue-50,
[data-theme="dark"] .tw-bg-blue-50,
.dark .tw-bg-blue-50,
body.dark-theme .tw-bg-blue-50 { 
    background-color: rgb(30, 58, 138) !important;
    border-color: rgb(59, 130, 246) !important;
}

[data-bs-theme="dark"] .tw-bg-green-50,
[data-theme="dark"] .tw-bg-green-50,
.dark .tw-bg-green-50,
body.dark-theme .tw-bg-green-50 { 
    background-color: rgb(22, 101, 52) !important;
    border-color: rgb(34, 197, 94) !important;
}

[data-bs-theme="dark"] .tw-bg-purple-50,
[data-theme="dark"] .tw-bg-purple-50,
.dark .tw-bg-purple-50,
body.dark-theme .tw-bg-purple-50 { 
    background-color: rgb(88, 28, 135) !important;
    border-color: rgb(147, 51, 234) !important;
}

[data-bs-theme="dark"] .tw-bg-orange-50,
[data-theme="dark"] .tw-bg-orange-50,
.dark .tw-bg-orange-50,
body.dark-theme .tw-bg-orange-50 { 
    background-color: rgb(154, 52, 18) !important;
    border-color: rgb(249, 115, 22) !important;
}

[data-bs-theme="dark"] .tw-bg-cyan-50,
[data-theme="dark"] .tw-bg-cyan-50,
.dark .tw-bg-cyan-50,
body.dark-theme .tw-bg-cyan-50 { 
    background-color: rgb(22, 78, 99) !important;
    border-color: rgb(34, 211, 238) !important;
}

[data-bs-theme="dark"] .tw-bg-pink-50,
[data-theme="dark"] .tw-bg-pink-50,
.dark .tw-bg-pink-50,
body.dark-theme .tw-bg-pink-50 { 
    background-color: rgb(131, 24, 67) !important;
    border-color: rgb(236, 72, 153) !important;
}

[data-bs-theme="dark"] .tw-bg-red-50,
[data-theme="dark"] .tw-bg-red-50,
.dark .tw-bg-red-50,
body.dark-theme .tw-bg-red-50 { 
    background-color: rgb(127, 29, 29) !important;
    border-color: rgb(239, 68, 68) !important;
}

[data-bs-theme="dark"] .tw-bg-yellow-50,
[data-theme="dark"] .tw-bg-yellow-50,
.dark .tw-bg-yellow-50,
body.dark-theme .tw-bg-yellow-50 { 
    background-color: rgb(120, 53, 15) !important;
    border-color: rgb(245, 158, 11) !important;
}

[data-bs-theme="dark"] .tw-bg-white,
[data-theme="dark"] .tw-bg-white,
.dark .tw-bg-white,
body.dark-theme .tw-bg-white { 
    background-color: rgb(31, 41, 55) !important;
}

[data-bs-theme="dark"] .tw-bg-gray-50,
[data-theme="dark"] .tw-bg-gray-50,
.dark .tw-bg-gray-50,
body.dark-theme .tw-bg-gray-50 { 
    background-color: rgb(31, 41, 55) !important;
}

/* Textos em tema escuro controlado por classe */
[data-bs-theme="dark"] .tw-text-gray-900,
[data-theme="dark"] .tw-text-gray-900,
.dark .tw-text-gray-900,
body.dark-theme .tw-text-gray-900 { 
    color: rgb(243, 244, 246) !important;
}

[data-bs-theme="dark"] .tw-text-gray-700,
[data-theme="dark"] .tw-text-gray-700,
.dark .tw-text-gray-700,
body.dark-theme .tw-text-gray-700 { 
    color: rgb(209, 213, 219) !important;
}

[data-bs-theme="dark"] .tw-text-gray-600,
[data-theme="dark"] .tw-text-gray-600,
.dark .tw-text-gray-600,
body.dark-theme .tw-text-gray-600 { 
    color: rgb(156, 163, 175) !important;
}

[data-bs-theme="dark"] .tw-text-red-800,
[data-theme="dark"] .tw-text-red-800,
.dark .tw-text-red-800,
body.dark-theme .tw-text-red-800 { 
    color: rgb(252, 165, 165) !important;
}

[data-bs-theme="dark"] .tw-text-red-700,
[data-theme="dark"] .tw-text-red-700,
.dark .tw-text-red-700,
body.dark-theme .tw-text-red-700 { 
    color: rgb(248, 113, 113) !important;
}

[data-bs-theme="dark"] .tw-text-yellow-800,
[data-theme="dark"] .tw-text-yellow-800,
.dark .tw-text-yellow-800,
body.dark-theme .tw-text-yellow-800 { 
    color: rgb(251, 191, 36) !important;
}

[data-bs-theme="dark"] .tw-text-yellow-700,
[data-theme="dark"] .tw-text-yellow-700,
.dark .tw-text-yellow-700,
body.dark-theme .tw-text-yellow-700 { 
    color: rgb(245, 158, 11) !important;
}

[data-bs-theme="dark"] .tw-text-green-800,
[data-theme="dark"] .tw-text-green-800,
.dark .tw-text-green-800,
body.dark-theme .tw-text-green-800 { 
    color: rgb(134, 239, 172) !important;
}

[data-bs-theme="dark"] .tw-text-green-700,
[data-theme="dark"] .tw-text-green-700,
.dark .tw-text-green-700,
body.dark-theme .tw-text-green-700 { 
    color: rgb(74, 222, 128) !important;
}

/* Cores especiais para tags/badges em tema escuro */
[data-bs-theme="dark"] .tw-bg-blue-100,
[data-theme="dark"] .tw-bg-blue-100,
.dark .tw-bg-blue-100,
body.dark-theme .tw-bg-blue-100 { 
    background-color: rgb(30, 58, 138) !important;
}

[data-bs-theme="dark"] .tw-bg-purple-100,
[data-theme="dark"] .tw-bg-purple-100,
.dark .tw-bg-purple-100,
body.dark-theme .tw-bg-purple-100 { 
    background-color: rgb(88, 28, 135) !important;
}

[data-bs-theme="dark"] .tw-bg-pink-100,
[data-theme="dark"] .tw-bg-pink-100,
.dark .tw-bg-pink-100,
body.dark-theme .tw-bg-pink-100 { 
    background-color: rgb(131, 24, 67) !important;
}

[data-bs-theme="dark"] .tw-bg-gray-100,
[data-theme="dark"] .tw-bg-gray-100,
.dark .tw-bg-gray-100,
body.dark-theme .tw-bg-gray-100 { 
    background-color: rgb(55, 65, 81) !important;
}

/* Bordas em tema escuro controlado por classe */
[data-bs-theme="dark"] .tw-border-blue-200,
[data-theme="dark"] .tw-border-blue-200,
.dark .tw-border-blue-200,
body.dark-theme .tw-border-blue-200 { 
    border-color: rgb(59, 130, 246) !important;
}

[data-bs-theme="dark"] .tw-border-green-200,
[data-theme="dark"] .tw-border-green-200,
.dark .tw-border-green-200,
body.dark-theme .tw-border-green-200 { 
    border-color: rgb(34, 197, 94) !important;
}

[data-bs-theme="dark"] .tw-border-purple-200,
[data-theme="dark"] .tw-border-purple-200,
.dark .tw-border-purple-200,
body.dark-theme .tw-border-purple-200 { 
    border-color: rgb(147, 51, 234) !important;
}

[data-bs-theme="dark"] .tw-border-orange-200,
[data-theme="dark"] .tw-border-orange-200,
.dark .tw-border-orange-200,
body.dark-theme .tw-border-orange-200 { 
    border-color: rgb(249, 115, 22) !important;
}

[data-bs-theme="dark"] .tw-border-cyan-200,
[data-theme="dark"] .tw-border-cyan-200,
.dark .tw-border-cyan-200,
body.dark-theme .tw-border-cyan-200 { 
    border-color: rgb(34, 211, 238) !important;
}

[data-bs-theme="dark"] .tw-border-pink-200,
[data-theme="dark"] .tw-border-pink-200,
.dark .tw-border-pink-200,
body.dark-theme .tw-border-pink-200 { 
    border-color: rgb(236, 72, 153) !important;
}

[data-bs-theme="dark"] .tw-border-red-200,
[data-theme="dark"] .tw-border-red-200,
.dark .tw-border-red-200,
body.dark-theme .tw-border-red-200 { 
    border-color: rgb(239, 68, 68) !important;
}

[data-bs-theme="dark"] .tw-border-yellow-200,
[data-theme="dark"] .tw-border-yellow-200,
.dark .tw-border-yellow-200,
body.dark-theme .tw-border-yellow-200 { 
    border-color: rgb(245, 158, 11) !important;
}

/* Gradientes adaptados para tema escuro controlado por classe */
[data-bs-theme="dark"] .tw-from-green-500,
[data-theme="dark"] .tw-from-green-500,
.dark .tw-from-green-500,
body.dark-theme .tw-from-green-500 {
    --tw-gradient-from: rgb(22, 163, 74) !important; /* Verde mais escuro */
}

[data-bs-theme="dark"] .tw-to-green-600,
[data-theme="dark"] .tw-to-green-600,
.dark .tw-to-green-600,
body.dark-theme .tw-to-green-600 {
    --tw-gradient-to: rgb(21, 128, 61) !important; /* Verde ainda mais escuro */
}

[data-bs-theme="dark"] .tw-from-orange-500,
[data-theme="dark"] .tw-from-orange-500,
.dark .tw-from-orange-500,
body.dark-theme .tw-from-orange-500 {
    --tw-gradient-from: rgb(234, 88, 12) !important; /* Laranja mais escuro */
}

[data-bs-theme="dark"] .tw-to-orange-600,
[data-theme="dark"] .tw-to-orange-600,
.dark .tw-to-orange-600,
body.dark-theme .tw-to-orange-600 {
    --tw-gradient-to: rgb(194, 65, 12) !important; /* Laranja ainda mais escuro */
}

[data-bs-theme="dark"] .tw-from-blue-500,
[data-theme="dark"] .tw-from-blue-500,
.dark .tw-from-blue-500,
body.dark-theme .tw-from-blue-500 {
    --tw-gradient-from: rgb(37, 99, 235) !important; /* Azul mais escuro */
}

[data-bs-theme="dark"] .tw-to-blue-600,
[data-theme="dark"] .tw-to-blue-600,
.dark .tw-to-blue-600,
body.dark-theme .tw-to-blue-600 {
    --tw-gradient-to: rgb(29, 78, 216) !important; /* Azul ainda mais escuro */
}

/* Correções para fundos verdes - melhor contraste */
.tw-bg-green-100 {
    background-color: rgb(240, 253, 244) !important; /* Verde mais claro para melhor contraste */
}

.tw-text-green-800 {
    color: rgb(22, 101, 52) !important; /* Verde mais escuro para melhor legibilidade */
}

/* Adaptações para tema escuro - fundos verdes */
[data-bs-theme="dark"] .tw-bg-green-100,
[data-theme="dark"] .tw-bg-green-100,
.dark .tw-bg-green-100,
body.dark-theme .tw-bg-green-100 {
    background-color: rgb(20, 83, 45) !important; /* Verde escuro para tema dark */
}

[data-bs-theme="dark"] .tw-text-green-800,
[data-theme="dark"] .tw-text-green-800,
.dark .tw-text-green-800,
body.dark-theme .tw-text-green-800 {
    color: rgb(187, 247, 208) !important; /* Verde claro para texto em tema dark */
}

/* Correções para outros fundos coloridos com problemas de contraste */
.tw-bg-cyan-100 {
    background-color: rgb(236, 254, 255) !important; /* Ciano mais claro */
}

.tw-text-cyan-800 {
    color: rgb(21, 94, 117) !important; /* Ciano mais escuro para melhor legibilidade */
}

/* Adaptações para tema escuro - fundos ciano */
[data-bs-theme="dark"] .tw-bg-cyan-100,
[data-theme="dark"] .tw-bg-cyan-100,
.dark .tw-bg-cyan-100,
body.dark-theme .tw-bg-cyan-100 {
    background-color: rgb(22, 78, 99) !important; /* Ciano escuro para tema dark */
}

[data-bs-theme="dark"] .tw-text-cyan-800,
[data-theme="dark"] .tw-text-cyan-800,
.dark .tw-text-cyan-800,
body.dark-theme .tw-text-cyan-800 {
    color: rgb(165, 243, 252) !important; /* Ciano claro para texto em tema dark */
}

/* Correções para fundos azuis claros */
.tw-bg-blue-50 {
    background-color: rgb(239, 246, 255) !important; /* Azul muito claro */
}

.tw-text-blue-600 {
    color: rgb(37, 99, 235) !important; /* Azul escuro para melhor contraste */
}

/* Adaptações para tema escuro - fundos azuis */
[data-bs-theme="dark"] .tw-bg-blue-50,
[data-theme="dark"] .tw-bg-blue-50,
.dark .tw-bg-blue-50,
body.dark-theme .tw-bg-blue-50 {
    background-color: rgb(30, 58, 138) !important; /* Azul escuro para tema dark */
}

[data-bs-theme="dark"] .tw-text-blue-600,
[data-theme="dark"] .tw-text-blue-600,
.dark .tw-text-blue-600,
body.dark-theme .tw-text-blue-600 {
    color: rgb(147, 197, 253) !important; /* Azul claro para texto em tema dark */
}
