﻿/* ============================================
   TEMA OSCURO
   ============================================ */
body.dark-theme {
    background-color: #1a1a2e;
    color: #e0e0e0;
}

    /* Navbar y footer */
    body.dark-theme .navbar,
    body.dark-theme .footer {
        background-color: #16213e !important;
        border-color: #0f3460;
    }

    body.dark-theme .navbar-light .navbar-brand,
    body.dark-theme .navbar-light .navbar-text {
        color: #e0e0e0 !important;
    }

    body.dark-theme .navbar-light .navbar-nav .nav-link {
        color: #e0e0e0 !important;
    }

        body.dark-theme .navbar-light .navbar-nav .nav-link:hover {
            color: #fff !important;
        }

    /* Sidebar */
    body.dark-theme #sidebar {
        background-color: #0f0f1f !important;
    }

        body.dark-theme #sidebar .nav-link {
            color: #ccc !important;
        }

            body.dark-theme #sidebar .nav-link:hover {
                color: #fff !important;
                background-color: rgba(255, 255, 255, 0.1);
            }

    /* Tarjetas */
    body.dark-theme .card {
        background-color: #16213e;
        border-color: #0f3460;
        color: #e0e0e0;
    }

    body.dark-theme .card-header {
        background-color: #0f3460;
        border-color: #0f3460;
    }

    /* Tablas */
    body.dark-theme .table {
        color: #e0e0e0;
    }

    body.dark-theme .table-striped > tbody > tr:nth-of-type(odd) {
        background-color: rgba(255, 255, 255, 0.05);
    }

    body.dark-theme .table td,
    body.dark-theme .table th {
        border-color: #444;
    }

    body.dark-theme .table thead th {
        border-bottom-color: #555;
    }

    /* Formularios */
    body.dark-theme .form-control,
    body.dark-theme .form-select {
        background-color: #2a2a4a;
        color: #e0e0e0;
        border-color: #444;
    }

        body.dark-theme .form-control:focus,
        body.dark-theme .form-select:focus {
            background-color: #2a2a4a;
            color: #e0e0e0;
            border-color: #0d6efd;
            box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
        }

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

    body.dark-theme .form-label {
        color: #ccc;
    }

    /* Jumbotron */
    body.dark-theme .jumbotron {
        background-color: #16213e !important;
        border-color: #0f3460;
        color: #e0e0e0;
    }

    /* Texto y colores */
    body.dark-theme .text-muted {
        color: #aaa !important;
    }

    body.dark-theme .bg-light {
        background-color: #1a1a2e !important;
    }

    body.dark-theme .bg-white {
        background-color: #1a1a2e !important;
    }

    /* Dropdowns */
    body.dark-theme .dropdown-menu {
        background-color: #16213e;
        border-color: #0f3460;
    }

    body.dark-theme .dropdown-item {
        color: #e0e0e0;
    }

        body.dark-theme .dropdown-item:hover {
            background-color: #0f3460;
            color: #fff;
        }

    body.dark-theme .dropdown-divider {
        border-top-color: #444;
    }

    /* Modales */
    body.dark-theme .modal-content {
        background-color: #16213e;
        color: #e0e0e0;
        border-color: #0f3460;
    }

    body.dark-theme .modal-header,
    body.dark-theme .modal-footer {
        border-color: #444;
    }

    /* Alertas */
    body.dark-theme .alert-secondary {
        background-color: #2a2a4a;
        border-color: #444;
        color: #ccc;
    }

    /* Paginación */
    body.dark-theme .page-item .page-link {
        background-color: #2a2a4a;
        border-color: #444;
        color: #e0e0e0;
    }

    body.dark-theme .page-item.active .page-link {
        background-color: #0d6efd;
        border-color: #0d6efd;
    }

    /* Botones outline */
    body.dark-theme .btn-outline-primary {
        color: #e0e0e0;
        border-color: #0d6efd;
    }

        body.dark-theme .btn-outline-primary:hover {
            background-color: #0d6efd;
            color: #fff;
        }

    /* Enlaces */
    body.dark-theme a:not(.btn):not(.nav-link) {
        color: #6ea8fe;
    }

        body.dark-theme a:not(.btn):not(.nav-link):hover {
            color: #9ec5fe;
        }

    /* Badges */
    body.dark-theme .badge.bg-light {
        background-color: #2a2a4a !important;
        color: #e0e0e0;
    }

    /* Separadores */
    body.dark-theme hr {
        border-color: #444;
    }
