/* Custom Dark Mode Styles */

:root {
    --bs-body-bg: #1a1a1a;
    --bs-body-color: #e0e0e0;
    --bs-border-color: #333;
    --bs-card-bg: #242424;
    --bs-card-border-color: #333;
}

body {
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* Navbar */
.navbar-dark {
    background-color: #0d1117 !important;
}

.navbar-brand {
    font-weight: 600;
}

.nav-link.active {
    font-weight: 500;
}

/* Cards */
.card {
    background-color: var(--bs-card-bg);
    border-color: var(--bs-card-border-color);
    color: var(--bs-body-color);
}

.card-header {
    background-color: #2d2d2d;
    border-bottom-color: var(--bs-border-color);
}

/* Tables */
.table {
    color: var(--bs-body-color);
}

.table-dark {
    --bs-table-bg: #2d2d2d;
    --bs-table-striped-bg: #333;
    --bs-table-hover-bg: #3a3a3a;
}

/* Forms */
.form-control, .form-select {
    background-color: #2d2d2d;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

.form-control:focus, .form-select:focus {
    background-color: #2d2d2d;
    border-color: #0d6efd;
    color: var(--bs-body-color);
}

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

/* Buttons */
.btn {
    border-radius: 6px;
}

.btn-primary {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn-primary:hover {
    background-color: #0b5ed7;
    border-color: #0a58ca;
}

.btn-outline-primary {
    color: #0d6efd;
    border-color: #0d6efd;
}

.btn-outline-primary:hover {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn-danger {
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn-danger:hover {
    background-color: #bb2d3b;
    border-color: #b02a37;
}

/* Alerts */
.alert {
    border-radius: 6px;
}

/* Badges */
.badge {
    font-weight: 500;
}

/* Stats Cards */
.stat-card {
    background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
    border-radius: 8px;
    padding: 20px;
    color: white;
    text-align: center;
}

.stat-card h3 {
    font-size: 2.5rem;
    font-weight: bold;
    margin: 0;
}

.stat-card p {
    margin: 5px 0 0 0;
    opacity: 0.9;
}

/* Tabs */
.nav-tabs {
    border-bottom-color: var(--bs-border-color);
}

.nav-tabs .nav-link {
    color: var(--bs-body-color);
    border-color: transparent;
}

.nav-tabs .nav-link:hover {
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

.nav-tabs .nav-link.active {
    background-color: var(--bs-card-bg);
    border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-card-bg);
    color: var(--bs-body-color);
}

/* Modals */
.modal-content {
    background-color: var(--bs-card-bg);
    border-color: var(--bs-border-color);
}

.modal-header {
    border-bottom-color: var(--bs-border-color);
}

.modal-footer {
    border-top-color: var(--bs-border-color);
}

/* Utilities */
.text-muted {
    color: #888 !important;
}

.border {
    border-color: var(--bs-border-color) !important;
}

/* Responsive */
@media (max-width: 768px) {
    .stat-card h3 {
        font-size: 2rem;
    }
    
    .container-fluid {
        padding-left: 15px;
        padding-right: 15px;
    }
}

