/* Temas */
.theme-default {
    --primary-color: #6C63FF;
    --secondary-color: #4CAF50;
    --accent-color: #FF6B6B;
    --background-color: #f0f4f7;
    --text-color: #2D3436;
    --card-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    --hover-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
    --card-bg: #FFFFFF;
    --card-text: #2D3436;
    --input-bg: #FFFFFF;
    --input-text: #2D3436;
    --border-color: #E0E0E0;
}

.theme-dark {
    --primary-color: #BB86FC;
    --secondary-color: #03DAC6;
    --accent-color: #CF6679;
    --background-color: #1A1A1A;
    --text-color: #FFFFFF;
    --card-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
    --hover-shadow: 0 6px 12px rgba(0, 0, 0, 0.4);
    --card-bg: #2D2D2D;
    --card-text: #FFFFFF;
    --input-bg: #2D2D2D;
    --input-text: #FFFFFF;
    --border-color: #404040;
}

.theme-neon {
    --primary-color: #00FF00;
    --secondary-color: #FF00FF;
    --accent-color: #00FFFF;
    --background-color: #000000;
    --text-color: #FFFFFF;
    --card-shadow: 0 4px 6px rgba(0, 255, 0, 0.2);
    --hover-shadow: 0 6px 12px rgba(0, 255, 0, 0.3);
    --card-bg: #1A1A1A;
    --card-text: #FFFFFF;
    --input-bg: #1A1A1A;
    --input-text: #FFFFFF;
    --border-color: #333333;
}

.theme-pastel {
    --primary-color: #FFB3BA;
    --secondary-color: #BAFFC9;
    --accent-color: #BAE1FF;
    --background-color: #FFFFD8;
    --text-color: #4A4A4A;
    --card-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    --hover-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
    --card-bg: #FFFFFF;
    --card-text: #4A4A4A;
    --input-bg: #FFFFFF;
    --input-text: #4A4A4A;
    --border-color: #E0E0E0;
}

/* Novos Temas */
.theme-sunset {
    --primary-color: #FF7E5F;
    --secondary-color: #FEB47B;
    --accent-color: #FFD700;
    --background-color: #FFF5E6;
    --text-color: #2D3436;
    --card-shadow: 0 4px 6px rgba(255, 126, 95, 0.1);
    --hover-shadow: 0 6px 12px rgba(255, 126, 95, 0.2);
    --card-bg: #FFFFFF;
    --card-text: #2D3436;
    --input-bg: #FFFFFF;
    --input-text: #2D3436;
    --border-color: #FFE4D6;
}

.theme-ocean {
    --primary-color: #0077B6;
    --secondary-color: #00B4D8;
    --accent-color: #90E0EF;
    --background-color: #F0F8FF;
    --text-color: #2D3436;
    --card-shadow: 0 4px 6px rgba(0, 119, 182, 0.1);
    --hover-shadow: 0 6px 12px rgba(0, 119, 182, 0.2);
    --card-bg: #FFFFFF;
    --card-text: #2D3436;
    --input-bg: #FFFFFF;
    --input-text: #2D3436;
    --border-color: #E0F7FF;
}

.theme-forest {
    --primary-color: #2E7D32;
    --secondary-color: #4CAF50;
    --accent-color: #81C784;
    --background-color: #F1F8E9;
    --text-color: #2D3436;
    --card-shadow: 0 4px 6px rgba(46, 125, 50, 0.1);
    --hover-shadow: 0 6px 12px rgba(46, 125, 50, 0.2);
    --card-bg: #FFFFFF;
    --card-text: #2D3436;
    --input-bg: #FFFFFF;
    --input-text: #2D3436;
    --border-color: #E8F5E9;
}

.theme-royal {
    --primary-color: #6A0DAD;
    --secondary-color: #9B4DCA;
    --accent-color: #C77DFF;
    --background-color: #F8F0FF;
    --text-color: #2D3436;
    --card-shadow: 0 4px 6px rgba(106, 13, 173, 0.1);
    --hover-shadow: 0 6px 12px rgba(106, 13, 173, 0.2);
    --card-bg: #FFFFFF;
    --card-text: #2D3436;
    --input-bg: #FFFFFF;
    --input-text: #2D3436;
    --border-color: #F3E5F5;
}

.theme-midnight {
    --primary-color: #1A237E;
    --secondary-color: #3949AB;
    --accent-color: #5C6BC0;
    --background-color: #0A1929;
    --text-color: #FFFFFF;
    --card-shadow: 0 4px 6px rgba(26, 35, 126, 0.3);
    --hover-shadow: 0 6px 12px rgba(26, 35, 126, 0.4);
    --card-bg: #1A237E;
    --card-text: #FFFFFF;
    --input-bg: #1A237E;
    --input-text: #FFFFFF;
    --border-color: #3949AB;
}

/* Estilos de Fundo */
.bg-solid {
    background-color: var(--background-color);
}

.bg-gradient {
    background: linear-gradient(135deg, var(--background-color), var(--primary-color));
}

.bg-pattern {
    background-color: var(--background-color);
    background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%239C92AC' fill-opacity='0.1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* Animações */
.animate-fade {
    animation: fadeIn 0.5s ease-out;
}

.animate-bounce {
    animation: bounceIn 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.animate-slide {
    animation: slideIn 0.5s ease-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes bounceIn {
    0% { transform: scale(0.3); opacity: 0; }
    50% { transform: scale(1.05); opacity: 0.8; }
    70% { transform: scale(0.9); opacity: 0.9; }
    100% { transform: scale(1); opacity: 1; }
}

@keyframes slideIn {
    from { transform: translateX(-20px); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}

/* Fontes */
.font-poppins {
    font-family: 'Poppins', sans-serif;
}

.font-montserrat {
    font-family: 'Montserrat', sans-serif;
}

.font-roboto {
    font-family: 'Roboto', sans-serif;
}

.font-quicksand {
    font-family: 'Quicksand', sans-serif;
}

/* Aplicação dos estilos */
body {
    color: var(--text-color);
    background-color: var(--background-color);
}

.card {
    background-color: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.form-control, .form-select {
    background-color: var(--input-bg);
    color: var(--input-text);
    border-color: var(--border-color);
}

.form-control:focus, .form-select:focus {
    background-color: var(--input-bg);
    color: var(--input-text);
}

.form-label {
    color: var(--text-color);
}

.form-check-label {
    color: var(--text-color);
}

/* Ajustes específicos para o tema escuro */
.theme-dark .card-header {
    background: linear-gradient(135deg, #2D2D2D, #404040) !important;
    color: #FFFFFF;
}

.theme-dark .form-control::placeholder {
    color: #AAAAAA;
}

/* Ajustes adicionais para o tema escuro */
.theme-dark .card,
.theme-dark .card-body,
.theme-dark .form-control,
.theme-dark .form-select,
.theme-dark .form-label,
.theme-dark .form-check-label,
.theme-dark p,
.theme-dark span,
.theme-dark div,
.theme-dark h1,
.theme-dark h2,
.theme-dark h3,
.theme-dark h4,
.theme-dark h5,
.theme-dark h6,
.theme-dark .text-muted,
.theme-dark .alert,
.theme-dark .btn:not(.btn-primary):not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-info) {
    color: #FFFFFF !important;
}

/* Correções específicas para notificações */
.theme-dark .notification-item,
.theme-dark .notification-content,
.theme-dark .notification-content h6,
.theme-dark .notification-content p,
.theme-dark .notification-content small {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
}

.theme-dark .notifications-dropdown {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

.theme-dark .dropdown-menu {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

.theme-dark .dropdown-item {
    color: #FFFFFF !important;
}

.theme-dark .dropdown-item:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #FFFFFF !important;
}

.theme-dark .bg-gradient {
    background: linear-gradient(135deg, #1A1A1A, #2D2D2D) !important;
}

.theme-dark .card {
    background-color: #2D2D2D !important;
    border-color: #404040 !important;
}

.theme-dark .form-control,
.theme-dark .form-select {
    background-color: #2D2D2D !important;
    border-color: #404040 !important;
    color: #FFFFFF !important;
}

.theme-dark .form-control:focus,
.theme-dark .form-select:focus {
    background-color: #2D2D2D !important;
    color: #FFFFFF !important;
}

.theme-dark .form-check-input {
    background-color: #2D2D2D !important;
    border-color: #404040 !important;
}

.theme-dark .form-check-input:checked {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.theme-dark .alert-info {
    background-color: #2D2D2D !important;
    border-color: #404040 !important;
    color: #FFFFFF !important;
}

.theme-dark .alert-info .alert-heading {
    color: #FFFFFF !important;
}

.theme-dark .alert-info hr {
    border-color: #404040 !important;
}

/* Ajustes específicos para o tema neon */
.theme-neon .card-header {
    background: linear-gradient(135deg, #1A1A1A, #333333) !important;
    color: #FFFFFF;
}

.theme-neon .form-control::placeholder {
    color: #AAAAAA;
}

/* Ajustes adicionais para o tema neon */
.theme-neon .card,
.theme-neon .card-body,
.theme-neon .form-control,
.theme-neon .form-select,
.theme-neon .form-label,
.theme-neon .form-check-label,
.theme-neon p,
.theme-neon span,
.theme-neon div,
.theme-neon h1,
.theme-neon h2,
.theme-neon h3,
.theme-neon h4,
.theme-neon h5,
.theme-neon h6,
.theme-neon .text-muted,
.theme-neon .alert,
.theme-neon .btn:not(.btn-primary):not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-info) {
    color: #FFFFFF !important;
}

.theme-neon .bg-gradient {
    background: linear-gradient(135deg, #000000, #1A1A1A) !important;
}

.theme-neon .card {
    background-color: #1A1A1A !important;
    border-color: #333333 !important;
}

.theme-neon .form-control,
.theme-neon .form-select {
    background-color: #1A1A1A !important;
    border-color: #333333 !important;
    color: #FFFFFF !important;
}

.theme-neon .form-control:focus,
.theme-neon .form-select:focus {
    background-color: #1A1A1A !important;
    color: #FFFFFF !important;
}

.theme-neon .form-check-input {
    background-color: #1A1A1A !important;
    border-color: #333333 !important;
}

.theme-neon .form-check-input:checked {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.theme-neon .alert-info {
    background-color: #1A1A1A !important;
    border-color: #333333 !important;
    color: #FFFFFF !important;
}

.theme-neon .alert-info .alert-heading {
    color: #FFFFFF !important;
}

.theme-neon .alert-info hr {
    border-color: #333333 !important;
}

/* Ajustes específicos para o tema pastel */
.theme-pastel .card-header {
    background: linear-gradient(135deg, #F8F9FA, #E9ECEF) !important;
    color: #4A4A4A;
}

/* Ajustes para inputs de cor */
input[type="color"] {
    background-color: var(--input-bg);
    border-color: var(--border-color);
}

/* Ajustes para textarea */
textarea.form-control {
    background-color: var(--input-bg);
    color: var(--input-text);
    border-color: var(--border-color);
}

/* Ajustes para checkboxes e radio buttons */
.form-check-input {
    background-color: var(--input-bg);
    border-color: var(--border-color);
}

.form-check-input:checked {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

/* Ajustes para mensagens e perfil público */
.message-box,
.profile-card,
.message-content,
.message-date,
.message-status,
.message-actions,
.profile-info,
.profile-stats,
.profile-bio,
.profile-meta,
.modal-content,
.alert,
.card {
    color: var(--text-color);
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

/* Tema Escuro - Ajustes específicos */
.theme-dark .message-box,
.theme-dark .profile-card,
.theme-dark .message-content,
.theme-dark .message-date,
.theme-dark .message-status,
.theme-dark .message-actions,
.theme-dark .profile-info,
.theme-dark .profile-stats,
.theme-dark .profile-bio,
.theme-dark .profile-meta,
.theme-dark .modal-content,
.theme-dark .alert,
.theme-dark .card {
    color: var(--text-color);
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

/* Tema Neon - Ajustes específicos */
.theme-neon .message-box,
.theme-neon .profile-card,
.theme-neon .message-content,
.theme-neon .message-date,
.theme-neon .message-status,
.theme-neon .message-actions,
.theme-neon .profile-info,
.theme-neon .profile-stats,
.theme-neon .profile-bio,
.theme-neon .profile-meta,
.theme-neon .modal-content,
.theme-neon .alert,
.theme-neon .card {
    color: var(--text-color);
    background-color: var(--card-bg);
    border-color: var(--border-color);
    text-shadow: 0 0 4px var(--primary-color);
}

/* Tema Pastel - Ajustes específicos */
.theme-pastel .message-box,
.theme-pastel .profile-card,
.theme-pastel .message-content,
.theme-pastel .message-date,
.theme-pastel .message-status,
.theme-pastel .message-actions,
.theme-pastel .profile-info,
.theme-pastel .profile-stats,
.theme-pastel .profile-bio,
.theme-pastel .profile-meta,
.theme-pastel .modal-content,
.theme-pastel .alert,
.theme-pastel .card {
    color: var(--text-color);
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

/* Ajustes para o rodapé */
footer {
    color: var(--text-color);
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

/* Correções globais para temas - SweetAlert e outros modais */
.theme-dark .swal2-popup {
    background-color: var(--card-bg) !important;
    color: var(--card-text) !important;
}

.theme-dark .swal2-title,
.theme-dark .swal2-content {
    color: var(--card-text) !important;
}

.theme-neon .swal2-popup {
    background-color: var(--card-bg) !important;
    color: var(--card-text) !important;
    border: 1px solid var(--primary-color) !important;
}

.theme-neon .swal2-title,
.theme-neon .swal2-content {
    color: var(--card-text) !important;
    text-shadow: 0 0 2px var(--primary-color);
}

/* Correções para botões em temas escuros */
.theme-dark .btn-outline-primary {
    color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.theme-dark .btn-outline-primary:hover {
    background-color: var(--primary-color) !important;
    color: #FFFFFF !important;
}

.theme-dark .btn-outline-secondary {
    color: #FFFFFF !important;
    border-color: var(--border-color) !important;
}

.theme-dark .btn-outline-secondary:hover {
    background-color: var(--border-color) !important;
    color: #FFFFFF !important;
}

/* Tema Escuro - Ajustes específicos para o rodapé */
.theme-dark footer {
    color: var(--text-color);
    background: linear-gradient(135deg, #2D2D2D, #404040) !important;
    border-color: var(--border-color);
}

/* Tema Escuro - Ajustes específicos para o rodapé */
.theme-default footer {
    color: var(--text-color);
    background: linear-gradient(135deg, #6E65FF, #8A7EFF) !important;
    border-color: var(--border-color);
}

/* Tema Neon - Ajustes específicos para o rodapé */
.theme-neon footer {
    color: var(--text-color);
    background: linear-gradient(135deg, #1A1A1A, #333333) !important;
    border-color: var(--border-color);
    text-shadow: 0 0 4px var(--primary-color);
}

/* Correções para elementos genéricos que podem não ter tema aplicado */
.theme-dark *:not(.btn-primary):not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-info):not(.bg-primary):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info):not(.text-primary):not(.text-success):not(.text-danger):not(.text-warning):not(.text-info) {
    color: var(--text-color) !important;
}

.theme-dark .alert {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    color: var(--text-color) !important;
}

.theme-dark .modal-content,
.theme-dark .modal-header,
.theme-dark .modal-body,
.theme-dark .modal-footer {
    background-color: var(--card-bg) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
}

.theme-dark .toast {
    background-color: var(--card-bg) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
}

.theme-dark .spinner-border {
    color: var(--primary-color) !important;
}

/* Correções para elementos com background fixo */
.theme-dark .bg-light {
    background-color: var(--card-bg) !important;
}

.theme-dark .bg-white {
    background-color: var(--card-bg) !important;
}

.theme-dark .text-muted {
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Correções para outros temas também */
.theme-neon .notification-item,
.theme-neon .notification-content {
    background-color: var(--card-bg) !important;
    color: var(--text-color) !important;
}

.theme-pastel .notification-item,
.theme-pastel .notification-content {
    background-color: var(--card-bg) !important;
    color: var(--text-color) !important;
}

/* Tema Pastel - Ajustes específicos para o rodapé */
.theme-pastel footer {
    color: var(--text-color);
    background: linear-gradient(135deg, #FFFFFF, #F8F6FF) !important;
    border-color: var(--border-color);
}

/* Ajustes para o botão de enviar mensagem */
.btn-send-message {
    color: #FFFFFF !important;
    background-color: var(--primary-color) !important;
    border-color: var(--border-color) !important;
}

/* Tema Escuro - Ajustes específicos para o botão */
.theme-dark .btn-send-message {
    color: #FFFFFF !important;
    background-color: var(--primary-color) !important;
    border-color: var(--border-color) !important;
}

/* Tema Neon - Ajustes específicos para o botão */
.theme-neon .btn-send-message {
    color: #FFFFFF !important;
    background-color: var(--primary-color) !important;
    border-color: var(--border-color) !important;
    text-shadow: 0 0 4px var(--primary-color);
    box-shadow: 0 0 8px var(--primary-color);
}

/* Tema Pastel - Ajustes específicos para o botão */
.theme-pastel .btn-send-message {
    color: #FFFFFF !important;
    background-color: var(--primary-color) !important;
    border-color: var(--border-color) !important;
}

/* Ajustes para o título de conquistas */
.achievements-title {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    padding: 1rem;
    border-radius: 15px;
    margin-bottom: 1rem;
}

/* Tema Escuro - Ajustes específicos para conquistas */
.theme-dark .achievements-title {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Tema Neon - Ajustes específicos para conquistas */
.theme-neon .achievements-title {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    text-shadow: 0 0 4px var(--primary-color);
}

/* Tema Pastel - Ajustes específicos para conquistas */
.theme-pastel .achievements-title {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Ajustes para popups de notificação */
.toast,
.alert,
.modal-content {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Tema Escuro - Ajustes específicos para popups */
.theme-dark .toast,
.theme-dark .alert,
.theme-dark .modal-content {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Tema Neon - Ajustes específicos para popups */
.theme-neon .toast,
.theme-neon .alert,
.theme-neon .modal-content {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    text-shadow: 0 0 4px var(--primary-color);
}

/* Tema Pastel - Ajustes específicos para popups */
.theme-pastel .toast,
.theme-pastel .alert,
.theme-pastel .modal-content {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Ajustes para o botão de responder */
.btn-reply {
    color: #FFFFFF !important;
    background-color: var(--primary-color) !important;
    border-color: var(--border-color) !important;
}

/* Tema Escuro - Ajustes específicos para o botão de responder */
.theme-dark .btn-reply {
    color: #FFFFFF !important;
    background-color: var(--primary-color) !important;
    border-color: var(--border-color) !important;
}

/* Tema Neon - Ajustes específicos para o botão de responder */
.theme-neon .btn-reply {
    color: #FFFFFF !important;
    background-color: var(--primary-color) !important;
    border-color: var(--border-color) !important;
    text-shadow: 0 0 4px var(--primary-color);
    box-shadow: 0 0 8px var(--primary-color);
}

/* Tema Pastel - Ajustes específicos para o botão de responder */
.theme-pastel .btn-reply {
    color: #FFFFFF !important;
    background-color: var(--primary-color) !important;
    border-color: var(--border-color) !important;
}

/* Ajustes para o box de resposta */
.response-form {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    padding: 1rem;
    border-radius: 15px;
    margin-top: 1rem;
}

.response-form .form-label {
    color: var(--text-color) !important;
}

.response-form .form-control {
    color: var(--text-color) !important;
    background-color: var(--input-bg) !important;
    border-color: var(--border-color) !important;
}

/* Tema Escuro - Ajustes específicos para o box de resposta */
.theme-dark .response-form {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

.theme-dark .response-form .form-label {
    color: #FFFFFF !important;
}

.theme-dark .response-form .form-control {
    color: #FFFFFF !important;
    background-color: var(--input-bg) !important;
    border-color: var(--border-color) !important;
}

/* Tema Neon - Ajustes específicos para o box de resposta */
.theme-neon .response-form {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    text-shadow: 0 0 4px var(--primary-color);
}

.theme-neon .response-form .form-label {
    color: #FFFFFF !important;
    text-shadow: 0 0 4px var(--primary-color);
}

.theme-neon .response-form .form-control {
    color: #FFFFFF !important;
    background-color: var(--input-bg) !important;
    border-color: var(--border-color) !important;
}

/* Tema Pastel - Ajustes específicos para o box de resposta */
.theme-pastel .response-form {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

.theme-pastel .response-form .form-label {
    color: var(--text-color) !important;
}

.theme-pastel .response-form .form-control {
    color: var(--text-color) !important;
    background-color: var(--input-bg) !important;
    border-color: var(--border-color) !important;
}

/* Ajustes para o botão cancelar */
.btn-cancel {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Tema Escuro - Ajustes específicos para o botão cancelar */
.theme-dark .btn-cancel {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Tema Neon - Ajustes específicos para o botão cancelar */
.theme-neon .btn-cancel {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    text-shadow: 0 0 4px var(--primary-color);
}

/* Tema Pastel - Ajustes específicos para o botão cancelar */
.theme-pastel .btn-cancel {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* Ajustes para o box de resposta enviada */
.response-box {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    padding: 1rem;
    border-radius: 15px;
    margin-top: 1rem;
}

.response-box .response-header {
    color: var(--text-color) !important;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.response-box .response-content {
    color: var(--text-color) !important;
}

/* Tema Escuro - Ajustes específicos para o box de resposta enviada */
.theme-dark .response-box {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

.theme-dark .response-box .response-header {
    color: #FFFFFF !important;
}

.theme-dark .response-box .response-content {
    color: #FFFFFF !important;
}

/* Tema Neon - Ajustes específicos para o box de resposta enviada */
.theme-neon .response-box {
    color: #FFFFFF !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    text-shadow: 0 0 4px var(--primary-color);
}

.theme-neon .response-box .response-header {
    color: #FFFFFF !important;
    text-shadow: 0 0 4px var(--primary-color);
}

.theme-neon .response-box .response-content {
    color: #FFFFFF !important;
    text-shadow: 0 0 4px var(--primary-color);
}

/* Tema Pastel - Ajustes específicos para o box de resposta enviada */
.theme-pastel .response-box {
    color: var(--text-color) !important;
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

.theme-pastel .response-box .response-header {
    color: var(--text-color) !important;
}

.theme-pastel .response-box .response-content {
    color: var(--text-color) !important;
}

/* Cards Flutuantes */
.floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border: 1px solid var(--border-color);
    box-shadow: var(--card-shadow);
}

.floating-card.card-1 {
    background: var(--primary-color);
    color: #FFFFFF;
}

.floating-card.card-2 {
    background: var(--secondary-color);
    color: #FFFFFF;
}

.floating-card.card-3 {
    background: var(--accent-color);
    color: #FFFFFF;
}

/* Ajustes específicos por tema */
.theme-dark .floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.theme-dark .floating-card.card-1 {
    background: var(--primary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(187, 134, 252, 0.3);
}

.theme-dark .floating-card.card-2 {
    background: var(--secondary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(3, 218, 198, 0.3);
}

.theme-dark .floating-card.card-3 {
    background: var(--accent-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(207, 102, 121, 0.3);
}

.theme-neon .floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.theme-neon .floating-card.card-1 {
    background: var(--primary-color);
    color: #000000;
    box-shadow: 0 4px 6px rgba(0, 255, 0, 0.3);
}

.theme-neon .floating-card.card-2 {
    background: var(--secondary-color);
    color: #000000;
    box-shadow: 0 4px 6px rgba(255, 0, 255, 0.3);
}

.theme-neon .floating-card.card-3 {
    background: var(--accent-color);
    color: #000000;
    box-shadow: 0 4px 6px rgba(0, 255, 255, 0.3);
}

.theme-pastel .floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.theme-pastel .floating-card.card-1 {
    background: var(--primary-color);
    color: #4A4A4A;
    box-shadow: 0 4px 6px rgba(255, 179, 186, 0.3);
}

.theme-pastel .floating-card.card-2 {
    background: var(--secondary-color);
    color: #4A4A4A;
    box-shadow: 0 4px 6px rgba(186, 255, 201, 0.3);
}

.theme-pastel .floating-card.card-3 {
    background: var(--accent-color);
    color: #4A4A4A;
    box-shadow: 0 4px 6px rgba(186, 225, 255, 0.3);
}

.theme-sunset .floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.theme-sunset .floating-card.card-1 {
    background: var(--primary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(255, 126, 95, 0.3);
}

.theme-sunset .floating-card.card-2 {
    background: var(--secondary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(254, 180, 123, 0.3);
}

.theme-sunset .floating-card.card-3 {
    background: var(--accent-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(255, 215, 0, 0.3);
}

.theme-ocean .floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.theme-ocean .floating-card.card-1 {
    background: var(--primary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(0, 119, 182, 0.3);
}

.theme-ocean .floating-card.card-2 {
    background: var(--secondary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(0, 180, 216, 0.3);
}

.theme-ocean .floating-card.card-3 {
    background: var(--accent-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(144, 224, 239, 0.3);
}

.theme-forest .floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.theme-forest .floating-card.card-1 {
    background: var(--primary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(46, 125, 50, 0.3);
}

.theme-forest .floating-card.card-2 {
    background: var(--secondary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(76, 175, 80, 0.3);
}

.theme-forest .floating-card.card-3 {
    background: var(--accent-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(129, 199, 132, 0.3);
}

.theme-royal .floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.theme-royal .floating-card.card-1 {
    background: var(--primary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(106, 13, 173, 0.3);
}

.theme-royal .floating-card.card-2 {
    background: var(--secondary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(155, 77, 202, 0.3);
}

.theme-royal .floating-card.card-3 {
    background: var(--accent-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(199, 125, 255, 0.3);
}

.theme-midnight .floating-card {
    background: var(--card-bg);
    color: var(--card-text);
    border-color: var(--border-color);
}

.theme-midnight .floating-card.card-1 {
    background: var(--primary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(26, 35, 126, 0.3);
}

.theme-midnight .floating-card.card-2 {
    background: var(--secondary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(57, 73, 171, 0.3);
}

.theme-midnight .floating-card.card-3 {
    background: var(--accent-color);
    color: #FFFFFF;
    box-shadow: 0 4px 6px rgba(92, 107, 192, 0.3);
} 