/* General dark mode styles */
body.dark-mode {
    background-color: #1a1a1a; /* Darker background */
    color: #ffffff; /* White text */
}

.dark-mode .text-muted {
    color: #a0a0a0 !important; /* Lighter muted text */
}

/* Navbar */
.dark-mode .main-header {
    background-color: #1e1e1e !important;
    border-bottom: 1px solid #333;
}

.dark-mode .navbar-brand,
.dark-mode .nav-link,
.dark-mode .navbar-toggler-icon {
    color: #e0e0e0 !important;
}

.dark-mode .navbar-toggler {
    border-color: #555;
}

/* Dropdowns */
.dark-mode .dropdown-menu {
    background-color: #2c2c2c;
    border-color: #444;
}

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

.dark-mode .dropdown-item:hover,
.dark-mode .dropdown-item:focus {
    background-color: #383838;
    color: #ffffff;
}

.dark-mode .dropdown-divider {
    border-top: 1px solid #444;
}

/* Cards */
.dark-mode .card {
    background-color: #2a2a2a; /* Slightly lighter card background */
    border-color: #444;
}

.dark-mode .card-title,
.dark-mode .card-subtitle,
.dark-mode .card-text,
.dark-mode h1,
.dark-mode h2,
.dark-mode h3,
.dark-mode h4,
.dark-mode h5,
.dark-mode h6,
.dark-mode p {
    color: #ffffff;
}

.dark-mode a {
    color: #8ab4f8; /* A more vibrant blue for links */
}

.dark-mode a:hover {
    color: #a3c5f9;
}


/* Forms */
.dark-mode .form-control,
.dark-mode .form-select {
    background-color: #3a3a3a;
    color: #ffffff;
    border-color: #666;
}

.dark-mode .form-control:focus,
.dark-mode .form-select:focus {
    background-color: #4a4a4a;
    color: #ffffff;
    border-color: #999;
    box-shadow: 0 0 0 0.25rem rgba(138, 180, 248, 0.25);
}

.dark-mode .form-label {
    color: #e0e0e0;
}

/* Buttons */
.dark-mode .btn-primary {
    background-color: #8ab4f8;
    border-color: #8ab4f8;
    color: #1a1a1a;
}

.dark-mode .btn-primary:hover {
    background-color: #a3c5f9;
    border-color: #a3c5f9;
}

.dark-mode .btn-outline-primary {
    color: #8ab4f8;
    border-color: #8ab4f8;
}

.dark-mode .btn-outline-primary:hover {
    background-color: #8ab4f8;
    color: #1a1a1a;
}

.dark-mode .btn-outline-secondary {
    color: #ccc;
    border-color: #ccc;
}

.dark-mode .btn-outline-secondary:hover {
    background-color: #ccc;
    color: #1a1a1a;
}


.dark-mode .btn-outline-success {
    color: #198754;
    border-color: #198754;
}

.dark-mode .btn-outline-success:hover {
    background-color: #198754;
    color: #fff;
}

.dark-mode .btn-outline-danger {
    color: #dc3545;
    border-color: #dc3545;
}

.dark-mode .btn-outline-danger:hover {
    background-color: #dc3545;
    color: #fff;
}

/* Modals */
.dark-mode .modal-content {
    background-color: #1e1e1e;
    border-color: #333;
}

.dark-mode .modal-header {
    border-bottom-color: #333;
}

.dark-mode .modal-footer {
    border-top-color: #333;
}

/* Tables */
.dark-mode .table {
    color: #e0e0e0;
}

.dark-mode .table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-accent-bg: rgba(255, 255, 255, 0.05);
}

.dark-mode .table-hover > tbody > tr:hover > * {
    --bs-table-accent-bg: rgba(255, 255, 255, 0.075);
}

.dark-mode .table-bordered {
    border-color: #444;
}

/* Footer */
.dark-mode .footer {
    background-color: #1e1e1e !important;
    border-top: 1px solid #333;
}

/* Other components */
.dark-mode .blockquote-footer {
    color: #a0a0a0;
}

.dark-mode .list-group-item {
    background-color: #1e1e1e;
    border-color: #333;
}

.dark-mode .nav-tabs .nav-link {
    color: #ccc;
    border-color: #333;
}

.dark-mode .nav-tabs .nav-link.active {
    background-color: #2c2c2c;
    border-color: #444;
    color: #fff;
}

.dark-mode hr {
    border-top: 1px solid #444;
}

.dark-mode .station-status {
    background-color: #2a2a2a;
}