/* roboto-latin-wght-normal */
@font-face {
    font-family: "Roboto Variable";
    font-style: normal;
    font-display: swap;
    font-weight: 100 900;
    src: url(https://cdn.jsdelivr.net/fontsource/fonts/roboto:vf@latest/latin-wght-normal.woff2)
        format("woff2-variations");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
        U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191,
        U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

body {
    font-family: "Roboto Variable", sans-serif;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: #f8f9fa;
}

[data-bs-theme="dark"] body {
    background-color: #1a1d29;
    color: #e9ecef;
    --bs-body-bg: #1a1d29;
    --bs-body-color: #e9ecef;
}

/*.card {
    border-radius: 0.75rem;
    border: none;
}*/

.btn-primary {
    background: linear-gradient(90deg, #007bff, #0056b3);
    border: none;
    transition: background 0.3s ease;
}

.btn-primary:hover {
    background: linear-gradient(90deg, #0056b3, #003d80);
}

/*
[data-bs-theme="dark"] .btn-primary {
  background: linear-gradient(
    90deg,
    #6ea8fe,
    #3b82f6
  );
}*/

[data-bs-theme="dark"] .btn-primary:hover {
    background: linear-gradient(
        90deg,
        #3b82f6,
        #2563eb
    ); /* Slightly darker on hover */
}

/* Dark mode outline button palette */
[data-bs-theme="dark"] .btn-outline-primary {
    --bs-btn-color: #8bb8ff;
    --bs-btn-border-color: rgba(110, 168, 254, 0.75);
    --bs-btn-hover-color: #0f172a;
    --bs-btn-hover-bg: rgba(110, 168, 254, 0.2);
    --bs-btn-hover-border-color: rgba(110, 168, 254, 0.95);
    --bs-btn-focus-shadow-rgb: 110, 168, 254;
    --bs-btn-active-color: #0f172a;
    --bs-btn-active-bg: rgba(110, 168, 254, 0.3);
    --bs-btn-active-border-color: rgba(110, 168, 254, 1);
    --bs-btn-disabled-color: rgba(110, 168, 254, 0.6);
    --bs-btn-disabled-border-color: rgba(110, 168, 254, 0.35);
}

[data-bs-theme="dark"] .btn-outline-secondary {
    --bs-btn-color: #ced4da;
    --bs-btn-border-color: rgba(206, 212, 218, 0.6);
    --bs-btn-hover-color: #0f172a;
    --bs-btn-hover-bg: rgba(206, 212, 218, 0.22);
    --bs-btn-hover-border-color: rgba(206, 212, 218, 0.9);
    --bs-btn-focus-shadow-rgb: 206, 212, 218;
    --bs-btn-active-color: #0f172a;
    --bs-btn-active-bg: rgba(206, 212, 218, 0.3);
    --bs-btn-active-border-color: rgba(206, 212, 218, 1);
    --bs-btn-disabled-color: rgba(206, 212, 218, 0.6);
    --bs-btn-disabled-border-color: rgba(206, 212, 218, 0.35);
}

[data-bs-theme="dark"] .btn-outline-success {
    --bs-btn-color: #75b798;
    --bs-btn-border-color: rgba(117, 183, 152, 0.68);
    --bs-btn-hover-color: #062c1f;
    --bs-btn-hover-bg: rgba(117, 183, 152, 0.23);
    --bs-btn-hover-border-color: rgba(117, 183, 152, 0.95);
    --bs-btn-focus-shadow-rgb: 117, 183, 152;
    --bs-btn-active-color: #062c1f;
    --bs-btn-active-bg: rgba(117, 183, 152, 0.32);
    --bs-btn-active-border-color: rgba(117, 183, 152, 1);
    --bs-btn-disabled-color: rgba(117, 183, 152, 0.6);
    --bs-btn-disabled-border-color: rgba(117, 183, 152, 0.35);
}

[data-bs-theme="dark"] .btn-outline-info {
    --bs-btn-color: #6edff6;
    --bs-btn-border-color: rgba(110, 223, 246, 0.72);
    --bs-btn-hover-color: #041f25;
    --bs-btn-hover-bg: rgba(110, 223, 246, 0.24);
    --bs-btn-hover-border-color: rgba(110, 223, 246, 0.96);
    --bs-btn-focus-shadow-rgb: 110, 223, 246;
    --bs-btn-active-color: #041f25;
    --bs-btn-active-bg: rgba(110, 223, 246, 0.34);
    --bs-btn-active-border-color: rgba(110, 223, 246, 1);
    --bs-btn-disabled-color: rgba(110, 223, 246, 0.62);
    --bs-btn-disabled-border-color: rgba(110, 223, 246, 0.36);
}

[data-bs-theme="dark"] .btn-outline-warning {
    --bs-btn-color: #ffd166;
    --bs-btn-border-color: rgba(255, 209, 102, 0.68);
    --bs-btn-hover-color: #211902;
    --bs-btn-hover-bg: rgba(255, 209, 102, 0.24);
    --bs-btn-hover-border-color: rgba(255, 209, 102, 0.95);
    --bs-btn-focus-shadow-rgb: 255, 209, 102;
    --bs-btn-active-color: #211902;
    --bs-btn-active-bg: rgba(255, 209, 102, 0.34);
    --bs-btn-active-border-color: rgba(255, 209, 102, 1);
    --bs-btn-disabled-color: rgba(255, 209, 102, 0.6);
    --bs-btn-disabled-border-color: rgba(255, 209, 102, 0.35);
}

[data-bs-theme="dark"] .btn-outline-danger {
    --bs-btn-color: #ff8787;
    --bs-btn-border-color: rgba(255, 135, 135, 0.72);
    --bs-btn-hover-color: #2c0707;
    --bs-btn-hover-bg: rgba(255, 135, 135, 0.24);
    --bs-btn-hover-border-color: rgba(255, 135, 135, 0.96);
    --bs-btn-focus-shadow-rgb: 255, 135, 135;
    --bs-btn-active-color: #2c0707;
    --bs-btn-active-bg: rgba(255, 135, 135, 0.34);
    --bs-btn-active-border-color: rgba(255, 135, 135, 1);
    --bs-btn-disabled-color: rgba(255, 135, 135, 0.6);
    --bs-btn-disabled-border-color: rgba(255, 135, 135, 0.36);
}

[data-bs-theme="dark"] .btn-outline-light {
    --bs-btn-color: #f8f9fa;
    --bs-btn-border-color: rgba(248, 249, 250, 0.75);
    --bs-btn-hover-color: #0f172a;
    --bs-btn-hover-bg: rgba(248, 249, 250, 0.25);
    --bs-btn-hover-border-color: rgba(248, 249, 250, 0.96);
    --bs-btn-focus-shadow-rgb: 248, 249, 250;
    --bs-btn-active-color: #0f172a;
    --bs-btn-active-bg: rgba(248, 249, 250, 0.35);
    --bs-btn-active-border-color: rgba(248, 249, 250, 1);
    --bs-btn-disabled-color: rgba(248, 249, 250, 0.62);
    --bs-btn-disabled-border-color: rgba(248, 249, 250, 0.36);
}

[data-bs-theme="dark"] .btn-outline-dark {
    --bs-btn-color: #94a3b8;
    --bs-btn-border-color: rgba(148, 163, 184, 0.7);
    --bs-btn-hover-color: #0f172a;
    --bs-btn-hover-bg: rgba(148, 163, 184, 0.28);
    --bs-btn-hover-border-color: rgba(148, 163, 184, 1);
    --bs-btn-focus-shadow-rgb: 148, 163, 184;
    --bs-btn-active-color: #0f172a;
    --bs-btn-active-bg: rgba(148, 163, 184, 0.36);
    --bs-btn-active-border-color: rgba(148, 163, 184, 1);
    --bs-btn-disabled-color: rgba(148, 163, 184, 0.6);
    --bs-btn-disabled-border-color: rgba(148, 163, 184, 0.35);
}

.navbar-brand {
    font-weight: bold;
}

[data-bs-theme="dark"] .navbar-brand,
[data-bs-theme="dark"] .navbar-brand:focus,
[data-bs-theme="dark"] .navbar-brand:hover {
    color: #f8f9fa !important;
}

.form-control:focus {
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

[data-bs-theme="dark"] .form-control:focus {
    border-color: #6ea8fe;
    box-shadow: 0 0 0 0.2rem rgba(110, 168, 254, 0.25);
}

.alert {
    border-radius: 0.5rem;
}

.alert-success,
.alert-info {
    padding: 1.5rem;
    font-size: 1.1rem;
}

.alert-heading {
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

.invalid-feedback ul {
    margin: 0;
    padding-left: 20px;
    font-size: 0.9rem;
}

.progress {
    height: 0.5rem;
    border-radius: 0.25rem;
}

.progress-bar {
    transition: width 0.3s ease;
}

.form-check {
    margin-bottom: 1rem;
}

/* Theme-aware navbar */
.navbar {
    transition: background-color 0.3s ease;
}

[data-bs-theme="dark"] .navbar.bg-primary {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%) !important;
}

[data-bs-theme="dark"] .navbar .form-check-label.text-white {
    color: #adb5bd !important;
}

.notifications-dropdown .badge {
    font-size: 0.65rem;
    padding: 0.25em 0.4em;
    line-height: 1;
}

.notifications-dropdown-menu {
    width: min(22rem, calc(100vw - 2.5rem));
    max-height: 70vh;
    overflow-y: auto;
    border-radius: 0.75rem;
}

.notifications-dropdown-menu .list-group-item {
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.notifications-dropdown-menu .list-group-item:last-child {
    border-bottom: none;
}

@media (max-width: 576px) {
    .notifications-dropdown-menu {
        width: calc(100vw - 2rem);
    }
}

[data-bs-theme="dark"] .notifications-dropdown .nav-link {
    color: #e9ecef;
}

[data-bs-theme="dark"] .notifications-dropdown .nav-link:hover {
    color: #6ea8fe;
}

[data-bs-theme="dark"] .notifications-dropdown-menu {
    background-color: #1f2533;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

[data-bs-theme="dark"] .notifications-dropdown-menu .list-group-item {
    background-color: transparent;
    border-color: rgba(255, 255, 255, 0.1);
    color: #e9ecef;
}

[data-bs-theme="dark"] .notifications-dropdown-menu .list-group-item:hover,
[data-bs-theme="dark"] .notifications-dropdown-menu .dropdown-item:hover {
    background-color: rgba(255, 255, 255, 0.05);
}

[data-bs-theme="dark"] .notifications-dropdown-menu .small.text-muted {
    color: #adb5bd !important;
}

/* Theme-aware footer */
.bg-theme {
    background-color: #f8f9fa;
    transition: background-color 0.3s ease;
}

[data-bs-theme="dark"] .bg-theme {
    background-color: #2c323f;
}

[data-bs-theme="dark"] .bg-theme.text-muted {
    color: #adb5bd !important;
}

/* Theme-aware checkboxes */
.form-check-input:checked {
    background-color: #007bff; /* Blue in light mode */
    border-color: #007bff;
}

[data-bs-theme="dark"] .form-check-input:checked {
    background-color: #6ea8fe; /* Lighter blue in dark mode */
    border-color: #6ea8fe;
}

/* Theme-aware links */
a,
.nav-link,
.alert-link {
    transition: color 0.3s ease;
}

[data-bs-theme="dark"]
    a:not(.text-muted):not(.alert-link):not(.nav-link):not(.cart-link):not(
        .link-offset-2
    ):not(.link-offset-3-hover):not(.block-item),
[data-bs-theme="dark"] .nav-link,
[data-bs-theme="dark"] .alert-link {
    color: #6ea8fe;
}

[data-bs-theme="dark"]
    a:not(.text-muted):not(.alert-link):not(.nav-link):not(.cart-link):not(
        .link-offset-2
    ):not(.link-offset-3-hover):not(.block-item):hover,
[data-bs-theme="dark"] .nav-link:hover,
[data-bs-theme="dark"] .alert-link:hover {
    color: #3b82f6;
}

[data-bs-theme="dark"] .text-muted {
    color: #adb5bd !important; /* Muted gray for secondary links */
}

.form-check-input {
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

#user-sidebar-nav .nav-link {
    border-radius: 0.25rem;
    margin-bottom: 0.5rem;
    color: #333;
}

#user-sidebar-nav .nav-link:hover {
    background-color: rgba(0, 123, 255, 0.1); /* Light blue hover effect */
}

#user-sidebar-nav .nav-link.active {
    background: linear-gradient(
        90deg,
        #007bff,
        #0056b3
    ); /* Blue gradient for active item */
    color: white;
}

[data-bs-theme="dark"] #user-sidebar-nav .nav-link {
    color: #e9ecef; /* Light gray for better contrast */
}

[data-bs-theme="dark"] #user-sidebar-nav .nav-link:hover {
    background-color: rgba(
        0,
        123,
        255,
        0.2
    ); /* Slightly more opaque blue for visibility */
}

[data-bs-theme="dark"] #user-sidebar-nav .nav-link.active {
    background: linear-gradient(
        90deg,
        #1e90ff,
        #0056b3
    ); /* Lighter blue gradient for better contrast */
    color: white;
}

.card.shadow-sm {
    border: none; /* Clean look for sidebar card */
}

.offcanvas {
    max-width: 250px;
}

.offcanvas-header {
    background: linear-gradient(
        90deg,
        #007bff,
        #0056b3
    ); /* Blue gradient for off-canvas header */
    color: white;
}

.offcanvas .nav-link {
    color: #333;
}

.offcanvas .nav-link:hover {
    background-color: rgba(0, 123, 255, 0.1);
}

.offcanvas .nav-link.active {
    background: linear-gradient(90deg, #007bff, #0056b3);
    color: white;
}

@media (max-width: 991.98px) {
    .col-lg-9 {
        width: 100%; /* Full width on mobile */
    }
}

/* Global Modal Styles (Light Mode) */
.modal-content {
    border: none;
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    animation: fadeIn 0.3s ease-in-out;
}

.modal-header {
    background: linear-gradient(90deg, #007bff, #0056b3);
    color: white;
    border-bottom: none;
    padding: 1.5rem;
}

.modal-title {
    font-size: 1.5rem;
    font-weight: 600;
    color: white;
}

.btn-close {
    filter: invert(1);
    opacity: 0.7;
    transition: opacity 0.2s ease;
}

.btn-close:hover {
    opacity: 1;
}

.modal-footer {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    padding: 1rem 1.5rem;
}

.modal-footer .btn-secondary {
    background: #e9ecef;
    border: none;
    color: #333;
    transition: background 0.3s ease;
}

.modal-footer .btn-secondary:hover {
    background: #dee2e6;
}

.modal-footer .btn-primary {
    background: linear-gradient(90deg, #007bff, #0056b3);
    border: none;
    color: #fff;
    transition: background 0.3s ease;
}

.modal-footer .btn-primary:hover {
    background: linear-gradient(90deg, #0056b3, #007bff);
}

/* Global Modal Styles (Dark Mode) */
[data-bs-theme="dark"] .modal-content {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    color: #d1d5db;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

[data-bs-theme="dark"] .modal-header {
    background: rgba(255, 255, 255, 0.05);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

[data-bs-theme="dark"] .modal-title {
    color: #d1d5db;
}

[data-bs-theme="dark"] .modal-body .form-label,
[data-bs-theme="dark"] .modal-body .text-muted,
[data-bs-theme="dark"] .modal-body .text-primary {
    color: #d1d5db;
}

[data-bs-theme="dark"] .modal-body .text-primary:hover {
    color: #6ea8fe;
}

[data-bs-theme="dark"] .btn-close {
    filter: invert(1);
}
[data-bs-theme="dark"] .modal-footer {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

[data-bs-theme="dark"] .modal-footer .btn-secondary {
    background: #3a3f50;
    color: #d1d5db;
}

[data-bs-theme="dark"] .modal-footer .btn-secondary:hover {
    background: #4a4f60;
}

[data-bs-theme="dark"] .modal-footer .btn-primary {
    background: linear-gradient(90deg, #6ea8fe, #3b82f6);
}

[data-bs-theme="dark"] .modal-footer .btn-primary:hover {
    background: linear-gradient(90deg, #3b82f6, #6ea8fe);
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 576px) {
    .modal-dialog {
        margin: 0.5rem;
    }

    .modal-content {
        border-radius: 10px;
    }

    .modal-header,
    .modal-body,
    .modal-footer {
        padding: 1rem;
    }
}

/* Global Styles for Cards */
[data-bs-theme="dark"] .card-body {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    border-radius: inherit;
}
[data-bs-theme="dark"] .card-header {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
}
[data-bs-theme="dark"] .card-footer {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
}

.text-bg-primary {
    background: linear-gradient(90deg, #007bff, #0160c5);
    border: none;
    transition: background 0.3s ease;
}

.text-bg-primary:hover {
    background: linear-gradient(90deg, #0056b3, #003d80);
}

[data-bs-theme="dark"] .text-bg-primary:hover {
    background: linear-gradient(
        90deg,
        #3b82f6,
        #2563eb
    ); /* Slightly darker on hover */
}

/** FOOTER SECTION **/
footer a.text-light:hover,
footer a.text-light:focus {
    color: #0d6efd !important; /* Bootstrap primary */
    text-decoration: underline;
    outline: none;
}

/* Default look: white on dark footer */
.social-icons img {
    width: 28px;
    height: 28px;
    filter: brightness(0) invert(1);
    transition: filter 0.25s ease, transform 0.25s ease;
}

.social-icons a:hover img {
    transform: translateY(-3px);
}

/* --- Brand color filters --- */

/* X (Twitter) */
.x-button:hover img {
    filter: invert(39%) sepia(86%) saturate(1897%) hue-rotate(187deg)
        brightness(99%) contrast(99%);
}

/* Reddit */
.reddit-button:hover img {
    filter: invert(41%) sepia(87%) saturate(2738%) hue-rotate(7deg)
        brightness(104%) contrast(101%);
}

/* Discord */
.discord-button:hover img {
    filter: invert(40%) sepia(70%) saturate(3218%) hue-rotate(232deg)
        brightness(101%) contrast(101%);
}

/* Mastodon */
.mastodon-button:hover img {
    filter: invert(45%) sepia(58%) saturate(3487%) hue-rotate(234deg)
        brightness(99%) contrast(101%);
}

/* BlueSky */
.bluesky-button:hover img {
    filter: invert(33%) sepia(100%) saturate(2605%) hue-rotate(194deg)
        brightness(103%) contrast(103%);
}

/* YouTube */
.youtube-button:hover img {
    filter: invert(22%) sepia(97%) saturate(7494%) hue-rotate(357deg)
        brightness(102%) contrast(115%);
}

/* Twitch */
.twitch-button:hover img {
    filter: invert(44%) sepia(86%) saturate(5256%) hue-rotate(243deg)
        brightness(103%) contrast(101%);
}

/* Kick (green) */
.kick-button:hover img,
.kik-button:hover img {
    filter: invert(67%) sepia(93%) saturate(582%) hue-rotate(56deg)
        brightness(108%) contrast(101%);
}

/* Pinterest */
.pinterest-button:hover img {
    filter: invert(17%) sepia(89%) saturate(7250%) hue-rotate(347deg)
        brightness(99%) contrast(117%);
}

/* Minds (yellow-blue) */
.minds-button:hover img {
    filter: invert(71%) sepia(67%) saturate(621%) hue-rotate(10deg)
        brightness(106%) contrast(98%);
}

/* Instagram (magenta-pink) */
.instagram-button:hover img {
    filter: invert(34%) sepia(65%) saturate(3250%) hue-rotate(316deg)
        brightness(97%) contrast(102%);
}

/* Facebook */
.facebook-button:hover img {
    filter: invert(33%) sepia(84%) saturate(4684%) hue-rotate(202deg)
        brightness(98%) contrast(103%);
}

/* Telegram */
.telegram-button:hover img {
    filter: invert(57%) sepia(92%) saturate(1147%) hue-rotate(174deg)
        brightness(96%) contrast(101%);
}

/* LinkedIn */
.linkedin-button:hover img {
    filter: invert(36%) sepia(78%) saturate(2908%) hue-rotate(192deg)
        brightness(95%) contrast(101%);
}

[data-bs-theme="dark"] .list-group,
[data-bs-theme="dark"] .list-group-item {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
}

[data-bs-theme="dark"] .table:not(.dataTable) {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    color: #d1d5db;
}
[data-bs-theme="dark"] .table:not(.dataTable) > :not(caption) > * > * {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
}
[data-bs-theme="dark"] .nav-link.active {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
}

[data-bs-theme="dark"] .bg-white {
    background: linear-gradient(135deg, #1f2533 0%, #1a1f2d 100%) !important;
    color: #e9ecef;
}

[data-bs-theme="dark"] .bg-light {
    background: linear-gradient(135deg, #1e2432 0%, #161b27 100%) !important;
    color: #e3e7f1;
}

[data-bs-theme="dark"] .bg-white .text-muted,
[data-bs-theme="dark"] .bg-light .text-muted {
    color: #adb5bd !important;
}

[data-bs-theme="dark"] .bg-primary.text-dark,
[data-bs-theme="dark"] .bg-primary .text-dark {
    color: #f8f9fa !important;
}

[data-bs-theme="dark"] .bg-white .btn-outline-secondary,
[data-bs-theme="dark"] .bg-light .btn-outline-secondary {
    border-color: rgba(255, 255, 255, 0.25);
    color: #e9ecef;
}

[data-bs-theme="dark"] .bg-white .btn-outline-secondary:hover,
[data-bs-theme="dark"] .bg-white .btn-outline-secondary:focus,
[data-bs-theme="dark"] .bg-light .btn-outline-secondary:hover,
[data-bs-theme="dark"] .bg-light .btn-outline-secondary:focus {
    background-color: rgba(110, 168, 254, 0.18);
    border-color: rgba(110, 168, 254, 0.45);
    color: #ffffff;
}

/* DataTables dark theme overrides */
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_length label,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_filter label,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_info,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_processing,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_paginate {
    color: #d1d5db;
}

[data-bs-theme="dark"]
    .dataTables_wrapper
    .dataTables_paginate
    .paginate_button {
    color: #d1d5db !important;
    border-color: rgba(255, 255, 255, 0.12);
    background-color: rgba(22, 33, 62, 0.85);
}

[data-bs-theme="dark"]
    .dataTables_wrapper
    .dataTables_paginate
    .paginate_button.current,
[data-bs-theme="dark"]
    .dataTables_wrapper
    .dataTables_paginate
    .paginate_button.current:hover {
    color: #0d6efd !important;
    background: rgba(13, 110, 253, 0.12);
    border-color: rgba(13, 110, 253, 0.35);
}

[data-bs-theme="dark"]
    .dataTables_wrapper
    .dataTables_paginate
    .paginate_button:hover {
    color: #6ea8fe !important;
    background: rgba(13, 110, 253, 0.08);
    border-color: rgba(110, 168, 254, 0.4);
}

[data-bs-theme="dark"] .dataTables_wrapper .dataTables_filter input,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_length select {
    background-color: #1f2533;
    border-color: rgba(255, 255, 255, 0.15);
    color: #e9ecef;
}

[data-bs-theme="dark"] .dataTables_wrapper .dataTables_filter input:focus,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_length select:focus {
    border-color: #6ea8fe;
    box-shadow: 0 0 0 0.2rem rgba(110, 168, 254, 0.2);
}

[data-bs-theme="dark"] table.dataTable tbody tr {
    color: #d1d5db;
}

[data-bs-theme="dark"]
    table.dataTable.table-striped
    > tbody
    > tr:nth-of-type(odd)
    > * {
    color: #d1d5db;
    background-color: rgba(255, 255, 255, 0.03);
}

[data-bs-theme="dark"] table.dataTable.table-hover > tbody > tr:hover > * {
    color: #f8f9fa;
    background-color: rgba(110, 168, 254, 0.12);
}

[data-bs-theme="dark"] table.dataTable tbody td.dtr-control:before,
[data-bs-theme="dark"] table.dataTable tbody th.dtr-control:before {
    border-left-color: rgba(110, 168, 254, 0.6) !important;
    border-right-color: transparent !important;
}

[data-bs-theme="dark"]
    table.dataTable.dtr-inline.collapsed
    > tbody
    > tr.dtr-expanded
    > td.dtr-control:before,
[data-bs-theme="dark"]
    table.dataTable.dtr-inline.collapsed
    > tbody
    > tr.dtr-expanded
    > th.dtr-control:before {
    border-top-color: rgba(110, 168, 254, 0.6) !important;
}

[data-bs-theme="dark"] table.dataTable thead th,
[data-bs-theme="dark"] table.dataTable thead td {
    color: #f8f9fa;
    background: linear-gradient(135deg, #1f2533 0%, #1a1f2d 100%);
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

[data-bs-theme="dark"] table.dataTable.no-footer {
    border-bottom-color: rgba(255, 255, 255, 0.12);
}

[data-bs-theme="dark"] table.dataTable tbody td,
[data-bs-theme="dark"] table.dataTable tbody th {
    border-color: rgba(255, 255, 255, 0.08);
}

/* User dropdown - dark mode */
[data-bs-theme="dark"] .dropdown-menu {
    background-color: #1f2533;
    border-color: rgba(255, 255, 255, 0.1);
}

[data-bs-theme="dark"] .dropdown-menu .dropdown-item {
    color: #e9ecef;
}

[data-bs-theme="dark"] .dropdown-menu .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-menu .dropdown-item:focus {
    background-color: rgba(110, 168, 254, 0.12);
    color: #ffffff;
}

[data-bs-theme="dark"]
    .dropdown-menu.dropdown-menu-end.show
    .dropdown-item:hover,
[data-bs-theme="dark"]
    .dropdown-menu.dropdown-menu-end.show
    .dropdown-item:focus {
    color: #ffffff !important;
}

[data-bs-theme="dark"] .dropdown-menu .dropdown-divider {
    border-color: rgba(255, 255, 255, 0.12);
}

[data-bs-theme="dark"] .dropdown-menu .dropdown-header,
[data-bs-theme="dark"] .dropdown-menu .text-muted {
    color: #bfc5d2 !important;
}

/* Offset links and underline utility tweaks in dark mode */
[data-bs-theme="dark"] .link-offset-2,
[data-bs-theme="dark"] .link-offset-2.link-underline,
[data-bs-theme="dark"] .link-offset-3-hover,
[data-bs-theme="dark"] .link-offset-3-hover.link-underline {
    color: inherit;
}

[data-bs-theme="dark"] .link-offset-3-hover:hover,
[data-bs-theme="dark"] .link-offset-3-hover.link-underline:hover,
[data-bs-theme="dark"] .link-underline.link-underline-opacity-75-hover:hover {
    color: #6ea8fe;
}

[data-bs-theme="dark"] .link-underline.link-underline-opacity-0,
[data-bs-theme="dark"] .link-underline.link-underline-opacity-0:hover,
[data-bs-theme="dark"] .link-underline.link-underline-opacity-75-hover:hover {
    text-decoration-color: rgba(110, 168, 254, 0.75);
}

[data-bs-theme="dark"]
    .link-offset-2.link-offset-3-hover.link-underline.link-underline-opacity-0.link-underline-opacity-75-hover {
    color: #f8f9fa !important;
    text-decoration-color: rgba(248, 249, 250, 0.75) !important;
}

[data-bs-theme="dark"]
    .link-offset-2.link-offset-3-hover.link-underline.link-underline-opacity-0.link-underline-opacity-75-hover:hover {
    color: #f8f9fa !important;
    text-decoration-color: rgba(248, 249, 250, 0.9) !important;
}
