/* Custom Styles */

/* Citation Links */
a.citation {
    text-decoration: none;
    color: #0d6efd;
}

a.citation:hover {
    text-decoration: underline;
}

/* Dark Mode Overrides for Bootstrap 5 */
@media (prefers-color-scheme: dark) {
    body {
        background-color: #212529;
        /* bs-dark */
        color: #e9ecef;
        /* bs-light */
    }

    /* Backgrounds */
    .bg-light {
        background-color: #2b3035 !important;
        /* Darker than card */
    }

    .bg-white {
        background-color: #212529 !important;
        color: #e9ecef !important;
    }

    /* Text */
    .text-dark {
        color: #e9ecef !important;
    }

    .text-muted {
        color: #adb5bd !important;
    }

    /* Links */
    a {
        color: #6ea8fe;
    }

    a:hover {
        color: #9ec5fe;
    }

    /* Cards & List Groups */
    .card {
        background-color: #343a40;
        border-color: #495057;
        color: #e9ecef;
    }

    .list-group-item {
        background-color: #343a40;
        border-color: #495057;
        color: #e9ecef;
    }

    .list-group-item-action:hover,
    .list-group-item-action:focus {
        background-color: #495057;
        color: #fff;
    }

    /* Navbar & Sidebar */
    .navbar-light .navbar-nav .nav-link {
        color: rgba(255, 255, 255, .75);
    }

    .navbar-light .navbar-nav .nav-link:hover {
        color: #fff;
    }

    .navbar-light .navbar-brand {
        color: #fff;
    }

    /* Borders */
    .border-right,
    .border-bottom,
    .border-top {
        border-color: #495057 !important;
    }

    /* Forms */
    .form-control {
        background-color: #2b3035;
        border-color: #495057;
        color: #f8f9fa !important;
    }

    .form-control::placeholder {
        color: #adb5bd !important;
        opacity: 1;
    }

    .form-control:focus {
        background-color: #343a40;
        border-color: #86b7fe;
        color: #fff !important;
    }

    /* Modals */
    .modal-content {
        background-color: #343a40;
        border-color: #495057;
        color: #e9ecef;
    }

    .btn-close {
        filter: invert(1) grayscale(100%) brightness(200%);
    }
}