html {
    background-color: #1a1a2e;
}

html body {
    background-color: #1a1a2e;
    color: #eeeeee;
}

:root {
    --bg-primary: #1a1a2e;
    --bg-secondary: #16213e;
    --text-primary: #eeeeee;
    --text-secondary: #a0a0a0;
    --border-color: #2c2c3e;
    --navbar-bg: #16213e;
    --footer-bg: #16213e;
}

body {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

.navbar,
.bg-light {
    background-color: var(--navbar-bg) !important;
}

.navbar-light .navbar-nav .nav-link,
.navbar-brand,
.nav-link {
    color: var(--text-primary) !important;
}

.dropdown-menu {
    background-color: var(--bg-secondary);
    border-color: var(--border-color);
}

.dropdown-item {
    color: var(--text-primary);
}

.dropdown-item:hover {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

.card {
    background-color: var(--bg-secondary);
    border-color: var(--border-color);
}

.card-header {
    background-color: var(--bg-primary);
    border-bottom-color: var(--border-color);
    color: var(--text-primary);
}

.card-body {
    background-color: var(--bg-secondary);
}

.footer {
    background-color: var(--footer-bg);
    border-top-color: var(--border-color);
}

.divider {
    background-color: var(--border-color);
}

.alert {
    color: var(--text-primary);
}

.alert-info {
    background-color: #0d6efd;
    border-color: #0d6efd;
    color: #ffffff;
}

.alert-success {
    background-color: #198754;
    border-color: #198754;
    color: #ffffff;
}

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

.alert-warning {
    background-color: #ffc107;
    border-color: #ffc107;
    color: #000000;
}

.form-control {
    background-color: var(--bg-primary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

.form-control:focus {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

.bg-primary {
    background-color: #0d6efd !important;
}

.bg-success {
    background-color: #198754 !important;
}

.bg-danger {
    background-color: #dc3545 !important;
}

.bg-warning {
    background-color: #ffc107 !important;
    color: #000 !important;
}

.bg-info {
    background-color: #0dcaf0 !important;
}

.text-muted {
    color: var(--text-secondary) !important;
}

.table {
    color: var(--text-primary);
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: var(--bg-primary);
}

.table-hover tbody tr:hover {
    background-color: var(--border-color);
}

.pagination .page-link {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

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

.btn-secondary {
    background-color: var(--bg-primary);
    border-color: var(--border-color);
    color: var(--text-primary);
}

.btn-secondary:hover {
    background-color: var(--border-color);
    border-color: var(--border-color);
    color: var(--text-primary);
}

.btn-outline-primary {
    color: var(--text-primary);
    border-color: #0d6efd;
}

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

.modal-content {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

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

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

.close {
    color: var(--text-primary);
}

.close:hover {
    color: var(--text-primary);
}

.custom-blockquote {
    background-color: var(--bg-primary) !important;
    border-color: var(--border-color) !important;
}

.game-card {
    background-color: var(--bg-secondary) !important;
    border-color: var(--border-color) !important;
}

.list-group-item {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

.list-group-item-action:hover {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

.list-group-item.active {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.text-primary {
    color: #0d6efd !important;
}

a {
    color: #0d6efd;
}

a:hover {
    color: #6ea8fe;
}

.nav-tabs .nav-link {
    color: var(--text-secondary);
}

.nav-tabs .nav-link.active {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
    border-bottom-color: var(--bg-secondary);
}

.nav-tabs {
    border-bottom-color: var(--border-color);
}

.tab-content {
    background-color: var(--bg-secondary);
}

input, textarea, select {
    background-color: var(--bg-primary) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-color) !important;
}

input:focus, textarea:focus, select:focus {
    background-color: var(--bg-primary) !important;
    color: var(--text-primary) !important;
    border-color: #0d6efd !important;
}

code {
    color: var(--text-primary);
    background-color: var(--bg-primary);
}