/* Dark/Light Theme Support */

:root {
  /* Light theme (default) */
  --bg-primary: #ffffff;
  --bg-secondary: #f8f9fa;
  --bg-tertiary: #e9ecef;
  --text-primary: #1a2236;
  --text-secondary: #6c757d;
  --border-color: #dee2e6;
  --sidebar-bg: #1a2236;
  --sidebar-text: rgba(255, 255, 255, 0.8);
  --card-bg: #ffffff;
  --card-shadow: rgba(0, 0, 0, 0.1);
  --logo-url: url('/web/assets/images/logo-dark.jpg');
}

[data-theme="dark"] {
  /* Dark theme - improved contrast */
  --bg-primary: #0f1419;
  --bg-secondary: #1a2332;
  --bg-tertiary: #2d3748;
  --text-primary: #f7fafc;
  --text-secondary: #cbd5e0;
  --border-color: #4a5568;
  --sidebar-bg: #0a0e14;
  --sidebar-text: rgba(255, 255, 255, 0.95);
  --card-bg: #1e2936;
  --card-shadow: rgba(0, 0, 0, 0.5);
  --logo-url: url('/web/assets/images/logo-white.png');
}

/* Apply theme variables */
body {
  background-color: var(--bg-secondary);
  color: var(--text-primary);
  transition: background-color 0.3s ease, color 0.3s ease;
}

.card {
  background-color: var(--card-bg);
  border-color: var(--border-color);
  box-shadow: 0 2px 8px var(--card-shadow);
}

.sidebar {
  background-color: var(--sidebar-bg) !important;
}

.sidebar .nav-link {
  color: var(--sidebar-text) !important;
}

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

.table-light {
  background-color: var(--bg-tertiary);
  color: var(--text-primary);
}

/* Logo — always use the new transparent-background logo (works on both themes) */
.logo-img {
  /* logo-b.png has transparent background — looks great on the dark sidebar */
}

/* Theme Toggle Button */
.theme-toggle {
  position: fixed;
  bottom: 100px;
  right: 30px;
  z-index: 1050;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--card-bg);
  border: 2px solid var(--border-color);
  box-shadow: 0 4px 12px var(--card-shadow);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  transition: all 0.3s ease;
}

.theme-toggle:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 20px var(--card-shadow);
}

.theme-toggle:active {
  transform: scale(0.95);
}

/* RTL adjustments for theme toggle */
html[dir="rtl"] .theme-toggle {
  right: auto;
  left: 30px;
}

/* Dark mode specific adjustments */
[data-theme="dark"] .text-muted {
  color: var(--text-secondary) !important;
}

[data-theme="dark"] .bg-light {
  background-color: var(--bg-tertiary) !important;
}

[data-theme="dark"] .border {
  border-color: var(--border-color) !important;
}

[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea {
  background-color: var(--bg-tertiary);
  color: var(--text-primary);
  border-color: var(--border-color);
}

[data-theme="dark"] .form-control:focus {
  background-color: var(--bg-tertiary);
  color: var(--text-primary);
  border-color: #0d6efd;
}

[data-theme="dark"] .modal-content {
  background-color: var(--card-bg);
  color: var(--text-primary);
}

[data-theme="dark"] .dropdown-menu {
  background-color: var(--card-bg);
  border-color: var(--border-color);
}

[data-theme="dark"] .dropdown-item {
  color: var(--text-primary);
}

[data-theme="dark"] .dropdown-item:hover {
  background-color: var(--bg-tertiary);
}
