/*
    Sistema de Temas Completo para Prana
    Soporte para tema oscuro con Bootstrap 5 y AdminLTE
*/

/* ===== VARIABLES CSS PARA TEMA OSCURO ===== */
[data-bs-theme="dark"] {
    --bs-body-bg: #1a1a1a;
    --bs-body-color: #e9ecef;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #38732F;
    --bs-info: #C2D4D8;
    --bs-warning: #D9D273;
    --bs-danger: #D95D30;
    --bs-light: #343a40;
    --bs-dark: #f8f9fa;
    
    /* Variables personalizadas Prana */
    --prana-bg-primary: #1a1a1a;
    --prana-bg-secondary: #2d3748;
    --prana-bg-tertiary: #1a202c;
    --prana-border: #4a5568;
    --prana-text-primary: #e9ecef;
    --prana-text-secondary: #cbd5e0;
    --prana-text-muted: #a0aec0;
}

/* ===== BODY Y CONTENEDOR PRINCIPAL ===== */
[data-bs-theme="dark"] body {
    background-color: var(--prana-bg-primary) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .wrapper {
    background-color: var(--prana-bg-primary) !important;
}

/* ===== CONTENT WRAPPER ===== */
[data-bs-theme="dark"] .content-wrapper {
    background-color: var(--prana-bg-primary) !important;
    color: var(--prana-text-primary) !important;
}

/* ===== NAVBAR HEADER ===== */
[data-bs-theme="dark"] .main-header.navbar {
    background-color: var(--prana-bg-secondary) !important;
    border-bottom: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .navbar-white,
[data-bs-theme="dark"] .navbar-light {
    background-color: var(--prana-bg-secondary) !important;
}

[data-bs-theme="dark"] .navbar-light .navbar-nav .nav-link {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .navbar-light .navbar-nav .nav-link:hover {
    color: #ffffff !important;
}

/* ===== SIDEBAR ===== */
[data-bs-theme="dark"] .main-sidebar {
    background-color: var(--prana-bg-secondary) !important;
}

[data-bs-theme="dark"] .sidebar-dark-teal {
    background-color: var(--prana-bg-secondary) !important;
}

[data-bs-theme="dark"] .brand-link {
    background-color: var(--prana-bg-tertiary) !important;
    color: var(--prana-text-primary) !important;
    border-bottom: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .brand-text {
    color: var(--prana-text-primary) !important;
}

/* ===== USER PANEL ===== */
[data-bs-theme="dark"] .user-panel {
    border-bottom: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .user-panel .info a {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .user-panel .info a:hover {
    color: #ffffff !important;
}

/* ===== NAVIGATION SIDEBAR ===== */
[data-bs-theme="dark"] .nav-sidebar .nav-link {
    color: var(--prana-text-secondary) !important;
}

[data-bs-theme="dark"] .nav-sidebar .nav-link:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .nav-sidebar .nav-link.active {
    background-color: var(--bs-success) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .nav-sidebar .nav-icon {
    color: var(--prana-text-secondary) !important;
}

[data-bs-theme="dark"] .nav-sidebar .nav-link:hover .nav-icon {
    color: #ffffff !important;
}

/* ===== CARDS ===== */
[data-bs-theme="dark"] .card {
    background-color: var(--prana-bg-secondary) !important;
    border: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .card-header {
    background-color: var(--prana-bg-tertiary) !important;
    border-bottom: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .card-title {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .card-body {
    background-color: var(--prana-bg-secondary) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .card-footer {
    background-color: var(--prana-bg-tertiary) !important;
    border-top: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

/* ===== SMALL BOXES ===== */
[data-bs-theme="dark"] .small-box {
    background-color: var(--bs-success) !important;
    color: #ffffff !important;
    border: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .small-box .inner h3,
[data-bs-theme="dark"] .small-box .inner p {
    color: #ffffff !important;
}

[data-bs-theme="dark"] .small-box .icon {
    color: rgba(255, 255, 255, 0.7) !important;
}

[data-bs-theme="dark"] .small-box-footer {
    background-color: rgba(0, 0, 0, 0.2) !important;
    color: #ffffff !important;
}

/* ===== BUTTONS ===== */
[data-bs-theme="dark"] .btn-outline-secondary {
    border-color: #6c757d !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .btn-outline-secondary:hover {
    background-color: #6c757d !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-success {
    border-color: var(--bs-success) !important;
    color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .btn-outline-success:hover {
    background-color: var(--bs-success) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-primary {
    border-color: var(--bs-primary) !important;
    color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .btn-outline-primary:hover {
    background-color: var(--bs-primary) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-danger {
    border-color: var(--bs-danger) !important;
    color: var(--bs-danger) !important;
}

[data-bs-theme="dark"] .btn-outline-danger:hover {
    background-color: var(--bs-danger) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-warning {
    border-color: var(--bs-warning) !important;
    color: var(--bs-warning) !important;
}

[data-bs-theme="dark"] .btn-outline-warning:hover {
    background-color: var(--bs-warning) !important;
    color: var(--prana-bg-primary) !important;
}

/* ===== TABLES ===== */
[data-bs-theme="dark"] .table {
    color: var(--prana-text-primary) !important;
    --bs-table-bg: var(--prana-bg-secondary);
}

[data-bs-theme="dark"] .table th {
    border-color: var(--prana-border) !important;
    background-color: var(--prana-bg-tertiary) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .table td {
    border-color: var(--prana-border) !important;
    background-color: var(--prana-bg-secondary) !important;
}

[data-bs-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) > td {
    background-color: rgba(255, 255, 255, 0.05) !important;
}

/* ===== FORMS ===== */
[data-bs-theme="dark"] .form-control {
    background-color: var(--prana-bg-secondary) !important;
    border-color: var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .form-control:focus {
    background-color: var(--prana-bg-secondary) !important;
    border-color: var(--bs-success) !important;
    color: var(--prana-text-primary) !important;
    box-shadow: 0 0 0 0.2rem rgba(56, 115, 47, 0.25) !important;
}

[data-bs-theme="dark"] .form-select {
    background-color: var(--prana-bg-secondary) !important;
    border-color: var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .input-group-text {
    background-color: var(--prana-bg-tertiary) !important;
    border-color: var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .custom-select {
    background-color: var(--prana-bg-secondary) !important;
    border-color: var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

/* ===== MODALS ===== */
[data-bs-theme="dark"] .modal-content {
    background-color: var(--prana-bg-secondary) !important;
    border: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .modal-header {
    background-color: var(--prana-bg-tertiary) !important;
    border-bottom: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .modal-title {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .modal-body {
    background-color: var(--prana-bg-secondary) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .modal-footer {
    background-color: var(--prana-bg-tertiary) !important;
    border-top: 1px solid var(--prana-border) !important;
}

/* ===== BREADCRUMBS ===== */
[data-bs-theme="dark"] .breadcrumb {
    background-color: transparent !important;
}

[data-bs-theme="dark"] .breadcrumb-item a {
    color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .breadcrumb-item.active {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .breadcrumb-item + .breadcrumb-item::before {
    color: var(--prana-text-muted) !important;
}

/* ===== CONTENT HEADER ===== */
[data-bs-theme="dark"] .content-header h1 {
    color: var(--prana-text-primary) !important;
}

/* ===== BADGES ===== */
[data-bs-theme="dark"] .badge.bg-success {
    background-color: var(--bs-success) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .badge.bg-danger {
    background-color: var(--bs-danger) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .badge.bg-warning {
    background-color: var(--bs-warning) !important;
    color: var(--prana-bg-primary) !important;
}

[data-bs-theme="dark"] .badge.bg-info {
    background-color: var(--bs-info) !important;
    color: var(--prana-bg-primary) !important;
}

[data-bs-theme="dark"] .badge.bg-primary {
    background-color: var(--bs-primary) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .badge.bg-secondary {
    background-color: var(--bs-secondary) !important;
    color: #ffffff !important;
}

/* ===== GRADIENTES PERSONALIZADOS ===== */
[data-bs-theme="dark"] .bg-gradient-success {
    background: linear-gradient(135deg, var(--bs-success) 0%, #2d5a25 100%) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .bg-gradient-danger {
    background: linear-gradient(135deg, var(--bs-danger) 0%, #b74c27 100%) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .bg-gradient-primary {
    background: linear-gradient(135deg, var(--bs-primary) 0%, #0b5ed7 100%) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .bg-gradient-info {
    background: linear-gradient(135deg, var(--bs-info) 0%, #a3b7bb 100%) !important;
    color: var(--prana-bg-primary) !important;
}

[data-bs-theme="dark"] .bg-gradient-warning {
    background: linear-gradient(135deg, var(--bs-warning) 0%, #c2bd66 100%) !important;
    color: var(--prana-bg-primary) !important;
}

[data-bs-theme="dark"] .bg-gradient-maroon {
    background: linear-gradient(135deg, #d81b60 0%, #ad1457 100%) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .bg-gradient-purple {
    background: linear-gradient(135deg, #6f42c1 0%, #5a2d91 100%) !important;
    color: #ffffff !important;
}

/* ===== LIST GROUPS ===== */
[data-bs-theme="dark"] .list-group-item {
    background-color: var(--prana-bg-secondary) !important;
    border-color: var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .list-group-item:hover {
    background-color: rgba(255, 255, 255, 0.05) !important;
}

/* ===== ALERTS ===== */
[data-bs-theme="dark"] .alert {
    border-color: var(--prana-border) !important;
}

[data-bs-theme="dark"] .alert-success {
    background-color: rgba(56, 115, 47, 0.2) !important;
    border-color: var(--bs-success) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .alert-danger {
    background-color: rgba(217, 93, 48, 0.2) !important;
    border-color: var(--bs-danger) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .alert-warning {
    background-color: rgba(217, 210, 115, 0.2) !important;
    border-color: var(--bs-warning) !important;
    color: var(--prana-bg-primary) !important;
}

[data-bs-theme="dark"] .alert-info {
    background-color: rgba(194, 212, 216, 0.2) !important;
    border-color: var(--bs-info) !important;
    color: var(--prana-bg-primary) !important;
}

[data-bs-theme="dark"] .alert-light {
    background-color: var(--prana-bg-tertiary) !important;
    border-color: var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

/* ===== JUMBOTRON ===== */
[data-bs-theme="dark"] .jumbotron {
    background-color: var(--prana-bg-secondary) !important;
    color: var(--prana-text-primary) !important;
}

/* ===== FOOTER ===== */
[data-bs-theme="dark"] .main-footer {
    background-color: var(--prana-bg-tertiary) !important;
    border-top: 1px solid var(--prana-border) !important;
    color: var(--prana-text-secondary) !important;
}

[data-bs-theme="dark"] .main-footer a {
    color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .main-footer a:hover {
    color: #2d5a25 !important;
}

/* ===== DATATABLES ===== */
[data-bs-theme="dark"] .dataTables_wrapper {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .dataTables_info,
[data-bs-theme="dark"] .dataTables_length label,
[data-bs-theme="dark"] .dataTables_filter label {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .dataTables_length select,
[data-bs-theme="dark"] .dataTables_filter input {
    background-color: var(--prana-bg-secondary) !important;
    border: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .page-link {
    background-color: var(--prana-bg-secondary) !important;
    border-color: var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .page-link:hover {
    background-color: var(--bs-success) !important;
    border-color: var(--bs-success) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .page-item.active .page-link {
    background-color: var(--bs-success) !important;
    border-color: var(--bs-success) !important;
}

/* ===== TEXTO GENERAL ===== */
[data-bs-theme="dark"] .text-muted {
    color: var(--prana-text-muted) !important;
}

[data-bs-theme="dark"] h1, [data-bs-theme="dark"] h2, [data-bs-theme="dark"] h3, 
[data-bs-theme="dark"] h4, [data-bs-theme="dark"] h5, [data-bs-theme="dark"] h6 {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] p {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .lead {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .display-6 {
    color: var(--prana-text-primary) !important;
}

/* ===== LINKS ===== */
[data-bs-theme="dark"] a {
    color: var(--bs-success) !important;
}

[data-bs-theme="dark"] a:hover {
    color: #2d5a25 !important;
}

/* ===== LOGIN PAGE ===== */
[data-bs-theme="dark"] .login-page {
    background-color: var(--prana-bg-primary) !important;
}

[data-bs-theme="dark"] .login-modal {
    background-color: var(--prana-bg-secondary) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5) !important;
    border: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .login-modal h2 {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .login-modal .lead {
    color: var(--prana-text-secondary) !important;
}

[data-bs-theme="dark"] .btn-outline-dark {
    border-color: var(--prana-text-primary) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .btn-outline-dark:hover {
    background-color: var(--prana-text-primary) !important;
    color: var(--prana-bg-primary) !important;
}

/* ===== SCROLLBARS ===== */
[data-bs-theme="dark"] ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-track {
    background: var(--prana-bg-tertiary);
}

[data-bs-theme="dark"] ::-webkit-scrollbar-thumb {
    background: var(--prana-border);
    border-radius: 4px;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #6c757d;
}

/* ===== TRANSICIONES SUAVES ===== */
body, .wrapper, .content-wrapper, .main-header, .main-sidebar, .card, .btn, .form-control {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
}

/* ===== ELEMENTOS ESPECÍFICOS DE PRANA ===== */
[data-bs-theme="dark"] .card-lightblue {
    background-color: var(--prana-bg-secondary) !important;
    border: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .bg-light {
    background-color: var(--prana-bg-secondary) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .text-dark {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .text-dark-emphasis {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .bg-dark {
    background-color: var(--prana-bg-tertiary) !important;
}

[data-bs-theme="dark"] .bg-opacity-10 {
    background-color: var(--prana-bg-secondary) !important;
}

/* ===== PRELOADER ===== */
[data-bs-theme="dark"] .preloader {
    background-color: var(--prana-bg-primary) !important;
}

/* ===== SELECTION ===== */
[data-bs-theme="dark"] ::selection {
    background-color: rgba(56, 115, 47, 0.5) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] ::-moz-selection {
    background-color: rgba(56, 115, 47, 0.5) !important;
    color: #ffffff !important;
}

/* ===== PLACEHOLDER TEXT ===== */
[data-bs-theme="dark"] ::placeholder {
    color: var(--prana-text-muted) !important;
    opacity: 1;
}

/* ===== CLOSE BUTTON ===== */
[data-bs-theme="dark"] .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

/* ===== TOOLTIPS ===== */
[data-bs-theme="dark"] .tooltip .tooltip-inner {
    background-color: var(--prana-bg-tertiary) !important;
    color: var(--prana-text-primary) !important;
}

/* ===== DROPDOWN MENUS ===== */
[data-bs-theme="dark"] .dropdown-menu {
    background-color: var(--prana-bg-secondary) !important;
    border: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .dropdown-item {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-item:focus {
    background-color: var(--bs-success) !important;
    color: #ffffff !important;
}

/* ===== CUSTOM FILE INPUT ===== */
[data-bs-theme="dark"] .custom-file-label {
    background-color: var(--prana-bg-secondary) !important;
    border-color: var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

/* ===== PROGRESS BARS ===== */
[data-bs-theme="dark"] .progress {
    background-color: var(--prana-bg-tertiary) !important;
}

[data-bs-theme="dark"] .progress-bar {
    background-color: var(--bs-success) !important;
}

/* ===== SPINNER ===== */
[data-bs-theme="dark"] .spinner-border,
[data-bs-theme="dark"] .spinner-grow {
    color: var(--bs-success) !important;
}

/* ===== FOCUS STYLES ===== */
[data-bs-theme="dark"] *:focus {
    outline-color: var(--bs-success) !important;
}

/* ===== SWEETALERT2 DARK THEME ===== */
[data-bs-theme="dark"] .swal2-popup {
    background-color: var(--prana-bg-secondary) !important;
    color: var(--prana-text-primary) !important;
    border: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .swal2-title {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-content {
    color: var(--prana-text-secondary) !important;
}

[data-bs-theme="dark"] .swal2-input {
    background-color: var(--prana-bg-primary) !important;
    border: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-input:focus {
    border-color: var(--bs-success) !important;
    box-shadow: 0 0 0 0.2rem rgba(56, 115, 47, 0.25) !important;
}

[data-bs-theme="dark"] .swal2-textarea {
    background-color: var(--prana-bg-primary) !important;
    border: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-textarea:focus {
    border-color: var(--bs-success) !important;
    box-shadow: 0 0 0 0.2rem rgba(56, 115, 47, 0.25) !important;
}

[data-bs-theme="dark"] .swal2-select {
    background-color: var(--prana-bg-primary) !important;
    border: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-radio input:checked + .swal2-label::before {
    background-color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .swal2-checkbox input:checked + .swal2-label::before {
    background-color: var(--bs-success) !important;
    border-color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .swal2-range input {
    background-color: var(--prana-bg-primary) !important;
}

[data-bs-theme="dark"] .swal2-range output {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-validation-message {
    background-color: var(--bs-danger) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .swal2-progress-steps .swal2-progress-step {
    background-color: var(--prana-bg-tertiary) !important;
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step {
    background-color: var(--bs-success) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .swal2-progress-steps .swal2-progress-step-line {
    background-color: var(--prana-border) !important;
}

[data-bs-theme="dark"] .swal2-header .swal2-icon {
    border-color: var(--prana-border) !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-success {
    border-color: var(--bs-success) !important;
    background-color: transparent !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-ring {
    border-color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-fix {
    background-color: var(--prana-bg-secondary) !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-success [class^="swal2-success-line"] {
    background-color: var(--bs-success) !important;
}

/* Eliminar fondo blanco del círculo del icono de éxito */
[data-bs-theme="dark"] .swal2-icon.swal2-success::before {
    background-color: transparent !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-success::after {
    background-color: transparent !important;
}

/* Asegurar que el contenedor del icono no tenga fondo blanco */
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-circular-line-left,
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-circular-line-right {
    background-color: var(--prana-bg-secondary) !important;
}

/* Fondo del círculo principal del icono */
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-fix {
    background-color: var(--prana-bg-secondary) !important;
    z-index: 1;
}

/* Líneas del check mark */
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-line-tip,
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-line-long {
    background-color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-error {
    border-color: var(--bs-danger) !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-error .swal2-x-mark {
    color: var(--bs-danger) !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-warning {
    border-color: var(--bs-warning) !important;
    color: var(--bs-warning) !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-info {
    border-color: var(--bs-info) !important;
    color: var(--bs-info) !important;
}

[data-bs-theme="dark"] .swal2-icon.swal2-question {
    border-color: var(--bs-primary) !important;
    color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .swal2-styled.swal2-confirm {
    background-color: var(--bs-success) !important;
    border: 1px solid var(--bs-success) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .swal2-styled.swal2-confirm:hover {
    background-color: #2d5a25 !important;
    border-color: #2d5a25 !important;
}

[data-bs-theme="dark"] .swal2-styled.swal2-cancel {
    background-color: var(--bs-secondary) !important;
    border: 1px solid var(--bs-secondary) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .swal2-styled.swal2-cancel:hover {
    background-color: #5a6268 !important;
    border-color: #5a6268 !important;
}

[data-bs-theme="dark"] .swal2-styled.swal2-deny {
    background-color: var(--bs-danger) !important;
    border: 1px solid var(--bs-danger) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .swal2-styled.swal2-deny:hover {
    background-color: #b74c27 !important;
    border-color: #b74c27 !important;
}

[data-bs-theme="dark"] .swal2-close {
    color: var(--prana-text-muted) !important;
}

[data-bs-theme="dark"] .swal2-close:hover {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-html-container {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-html-container strong {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-html-container a {
    color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .swal2-html-container a:hover {
    color: #2d5a25 !important;
}

[data-bs-theme="dark"] .swal2-footer {
    border-top: 1px solid var(--prana-border) !important;
    color: var(--prana-text-secondary) !important;
}

[data-bs-theme="dark"] .swal2-timer-progress-bar {
    background-color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .swal2-backdrop-show {
    background-color: rgba(0, 0, 0, 0.7) !important;
}

[data-bs-theme="dark"] .swal2-backdrop-hide {
    background-color: rgba(0, 0, 0, 0) !important;
}

/* Estilos específicos para inputs con placeholder */
[data-bs-theme="dark"] .swal2-input::placeholder,
[data-bs-theme="dark"] .swal2-textarea::placeholder {
    color: var(--prana-text-muted) !important;
    opacity: 1;
}

/* Estilos para el loader/spinner */
[data-bs-theme="dark"] .swal2-loader {
    border-color: var(--bs-success) transparent var(--bs-success) transparent !important;
}

/* Estilos para toast notifications */
[data-bs-theme="dark"] .swal2-toast {
    background-color: var(--prana-bg-secondary) !important;
    color: var(--prana-text-primary) !important;
    border: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .swal2-toast .swal2-title {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-toast .swal2-content {
    color: var(--prana-text-secondary) !important;
}

/* Estilos para el overlay cuando se muestra el modal */
[data-bs-theme="dark"] .swal2-container {
    background-color: rgba(0, 0, 0, 0.7) !important;
}

/* Estilos para elementos de radio y checkbox */
[data-bs-theme="dark"] .swal2-radio .swal2-label,
[data-bs-theme="dark"] .swal2-checkbox .swal2-label {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .swal2-radio input[type="radio"],
[data-bs-theme="dark"] .swal2-checkbox input[type="checkbox"] {
    background-color: var(--prana-bg-primary) !important;
    border: 1px solid var(--prana-border) !important;
}

/* Estilos para el file input */
[data-bs-theme="dark"] .swal2-file {
    background-color: var(--prana-bg-primary) !important;
    border: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
}

/* Estilos para elementos deshabilitados */
[data-bs-theme="dark"] .swal2-input:disabled,
[data-bs-theme="dark"] .swal2-textarea:disabled,
[data-bs-theme="dark"] .swal2-select:disabled {
    background-color: var(--prana-bg-tertiary) !important;
    color: var(--prana-text-muted) !important;
    opacity: 0.6;
}

/* ===== FIX PARA FONDO BLANCO DEL ICONO DE ÉXITO ===== */
/* Eliminar completamente el fondo blanco del icono de éxito en tema oscuro */
[data-bs-theme="dark"] .swal2-icon.swal2-success {
    background: transparent !important;
    background-color: transparent !important;
}

/* Forzar transparencia en todos los pseudo-elementos del icono */
[data-bs-theme="dark"] .swal2-icon.swal2-success::before,
[data-bs-theme="dark"] .swal2-icon.swal2-success::after {
    background: transparent !important;
    background-color: transparent !important;
}

/* Asegurar que las líneas circulares usen el fondo del tema */
[data-bs-theme="dark"] .swal2-success-circular-line-left,
[data-bs-theme="dark"] .swal2-success-circular-line-right {
    background-color: var(--prana-bg-secondary) !important;
}

/* Mantener solo las líneas del check en verde */
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-line-tip,
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-line-long {
    background-color: var(--bs-success) !important;
}

/* Asegurar que el anillo mantenga solo el borde verde */
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-ring {
    background: transparent !important;
    background-color: transparent !important;
    border-color: var(--bs-success) !important;
}

/* Fix específico para el elemento que causa el fondo blanco */
[data-bs-theme="dark"] .swal2-icon.swal2-success .swal2-success-fix {
    background: var(--prana-bg-secondary) !important;
    background-color: var(--prana-bg-secondary) !important;
}

/* ===== RESPONSIVE ADJUSTMENTS ===== */
@media (max-width: 768px) {
    [data-bs-theme="dark"] .card {
        margin-bottom: 1rem;
    }
    
    [data-bs-theme="dark"] .small-box {
        margin-bottom: 1rem;
    }
    
    /* SweetAlert responsive adjustments */
    [data-bs-theme="dark"] .swal2-popup {
        width: 90% !important;
        margin: 0 auto !important;
    }
}

/* ===== PRODUCTS LIST ===== */
[data-bs-theme="dark"] .products-list {
    background-color: transparent !important;
}

[data-bs-theme="dark"] .products-list .item {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border-bottom: 1px solid var(--prana-border) !important;
    color: var(--prana-text-primary) !important;
    transition: background-color 0.3s ease !important;
}

[data-bs-theme="dark"] .products-list .item:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
}

[data-bs-theme="dark"] .products-list .item:last-child {
    border-bottom: none !important;
}

[data-bs-theme="dark"] .products-list .product-info {
    color: var(--prana-text-primary) !important;
}

[data-bs-theme="dark"] .products-list .product-info .badge {
    background-color: var(--bs-success) !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .products-list .product-img img {
    border: 1px solid var(--prana-border) !important;
}

/* ===== ANIMATION KEYFRAMES ===== */
@keyframes fadeInDark {
    from {
        opacity: 0;
        background-color: var(--prana-bg-primary);
    }
    to {
        opacity: 1;
        background-color: var(--prana-bg-secondary);
    }
}

[data-bs-theme="dark"] .fade-in {
    animation: fadeInDark 0.3s ease-in-out;
}

/* ===== CREAR PRESUPUESTO ESPECÍFICO ===== */
[data-bs-theme="dark"] .card.bg-light {
    background-color: var(--prana-bg-secondary) !important;
    color: var(--prana-text-primary) !important;
    border: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .card-header.bg-primary {
    background-color: var(--bs-primary) !important;
    color: #ffffff !important;
    border-bottom: 1px solid var(--prana-border) !important;
}

[data-bs-theme="dark"] .btn-group .btn-outline-primary {
    border-color: var(--bs-primary) !important;
    color: var(--bs-primary) !important;
    background-color: transparent !important;
}

[data-bs-theme="dark"] .btn-group .btn-outline-primary:hover,
[data-bs-theme="dark"] .btn-group .btn-outline-primary:focus,
[data-bs-theme="dark"] .btn-group .btn-outline-primary.active {
    background-color: var(--bs-primary) !important;
    color: #ffffff !important;
    border-color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .btn-group .btn-check:checked + .btn-outline-primary {
    background-color: var(--bs-primary) !important;
    color: #ffffff !important;
    border-color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .text-decoration-none {
    color: inherit !important;
}

[data-bs-theme="dark"] .text-decoration-none:hover {
    color: inherit !important;
}