/* Dark Mode Styles */
:root {
  --dark-bg: #121212;
  --dark-bg-secondary: #1e1e1e;
  --dark-text: #e0e0e0;
  --dark-text-secondary: #aaaaaa;
  --dark-border: #333333;
  --dark-input-bg: #2d2d2d;
  --dark-hover: #2c2c2c;
  --dark-active: #3c3c3c;
}

body.dark-mode a {
  color: #87afdc;
}

/* Apply dark mode when .dark-mode class is present on body */
body.dark-mode {
  background-color: var(--dark-bg);
  color: var(--dark-text);
}

/* Navbar */
body.dark-mode .navbar-dark {
  background-color: var(--dark-bg-secondary) !important;
}
body.dark-mode .nav-link {
  color: var(--dark-text);
}

/* Cards */
body.dark-mode .card {
  background-color: var(--dark-bg-secondary);
  border-color: var(--dark-border);
}

body.dark-mode .card-body {
  background-color: var(--dark-bg-secondary);
  color: var(--dark-text-secondary);
}

body.dark-mode .card-header {
  background-color: rgba(0, 0, 0, 0.2);
  border-color: var(--dark-border);
  color: var(--dark-text);
}

body.dark-mode .card-footer {
  background-color: rgba(0, 0, 0, 0.2);
  border-color: var(--dark-border);
}

/* Tables */
body.dark-mode .table {
  color: var(--dark-text);
}

body.dark-mode .table-striped > tbody > tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.15);
}

body.dark-mode .table-hover > tbody > tr:hover {
  background-color: var(--dark-hover);
}

body.dark-mode .table td,
body.dark-mode .table th {
  border-color: var(--dark-border);
  background-color: var(--dark-active);
  color: var(--dark-text);
}

/* Forms */
body.dark-mode .form-control,
body.dark-mode .form-select {
  background-color: var(--dark-input-bg);
  border-color: var(--dark-border);
  color: var(--dark-text);
}

body.dark-mode .form-control:focus,
body.dark-mode .form-select:focus {
  background-color: var(--dark-input-bg);
  color: var(--dark-text);
  border-color: #0d6efd;
}

/* List groups */
body.dark-mode .list-group-item {
  background-color: var(--dark-bg-secondary);
  border-color: var(--dark-border);
  color: var(--dark-text);
}

/* Modals */
body.dark-mode .modal-content {
  background-color: var(--dark-bg-secondary);
  border-color: var(--dark-border);
}

body.dark-mode .modal-header,
body.dark-mode .modal-footer {
  border-color: var(--dark-border);
}

/* Buttons */
body.dark-mode .btn-light,
body.dark-mode .btn-outline-light {
  background-color: var(--dark-bg-secondary);
  color: var(--dark-text);
  border-color: var(--dark-border);
}

body.dark-mode .btn-light:hover,
body.dark-mode .btn-outline-light:hover {
  background-color: var(--dark-hover);
  color: var(--dark-text);
}

/* Scrollbar styles for dark mode */
body.dark-mode .scroll-box::-webkit-scrollbar {
  width: 12px;
}

body.dark-mode .scroll-box::-webkit-scrollbar-track {
  background: var(--dark-bg-secondary);
}

body.dark-mode .scroll-box::-webkit-scrollbar-thumb {
  background-color: var(--dark-border);
  border-radius: 6px;
  border: 3px solid var(--dark-bg-secondary);
}

body.dark-mode .scroll-box::-webkit-scrollbar-thumb:hover {
  background-color: #555;
}

/* Toast styles for dark mode */
body.dark-mode .toast {
  background-color: var(--dark-bg-secondary);
  border-color: var(--dark-border);
  color: var(--dark-text);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.5);
}

/* Toast headers - maintain their colors but make them slightly darker */
body.dark-mode .toast-header {
  border-bottom-color: var(--dark-border);
}

body.dark-mode .toast-header.bg-success {
  background-color: #1c7121 !important; /* Darker green */
}

body.dark-mode .toast-header.bg-danger {
  background-color: #c62828 !important; /* Darker red */
}

body.dark-mode .toast-header.bg-info {
  background-color: #0277bd !important; /* Darker blue */
}

body.dark-mode .toast-body {
  background-color: var(--dark-bg-secondary);
  color: var(--dark-text);
}

body.dark-mode .btn-close {
  filter: invert(1) grayscale(100%) brightness(200%);
}

/* Dark mode toggle button */
.dark-mode-toggle {
  cursor: pointer;
  display: flex;
  align-items: center;
}

.dark-mode-toggle i {
  font-size: 1.2rem;
}

/* Images */
body.dark-mode .img-thumbnail {
  background-color: #555;
  border-color: var(--dark-bg);
}

/* Colors */
body.dark-mode .c-blue {
  color: #668dc0 !important;
}

/* Breadcrumb */
body.dark-mode .breadcrumb-item.active {
  color: var(--dark-text);
}
