body.dark-theme {
  background: linear-gradient(180deg, #0b1220 0%, #111827 100%);
  color: #e5e7eb;
}

body.dark-theme .topbar-label,
body.dark-theme .status strong,
body.dark-theme .stat-card strong {
  color: #94a3b8;
}

body.dark-theme .difficulty-btn {
  color: #cbd5e1;
}

body.dark-theme .difficulty-btn.active-level {
  background: #1d4ed8;
  color: #eff6ff;
  border-color: #3b82f6;
}

body.dark-theme .theme-toggle {
  background: #0f766e;
}

body.dark-theme #board {
  background: #0f172a;
  border-color: #334155;
  box-shadow: 0 18px 44px rgba(2, 6, 23, 0.5);
}

body.dark-theme .cell {
  background: #111827;
  color: #dbeafe;
  border-color: #334155;
}

body.dark-theme .cell.fixed {
  background: #172554;
  color: #dbeafe;
}

body.dark-theme .cell.selected {
  background: #1d4ed8;
}

body.dark-theme .cell.related {
  background: #172033;
}

body.dark-theme .cell.same-value {
  background: #1e3a8a;
}

body.dark-theme .cell.flash-correct {
  background: #065f46;
  color: #ecfdf5;
}

body.dark-theme .cell.flash-error {
  background: #7f1d1d;
  color: #fee2e2;
}

body.dark-theme .cell:nth-child(3n) {
  border-right-color: #475569;
}

body.dark-theme .cell:nth-child(n + 19):nth-child(-n + 27),
body.dark-theme .cell:nth-child(n + 46):nth-child(-n + 54) {
  border-bottom-color: #475569;
}

body.dark-theme .panel,
body.dark-theme .stat-card,
body.dark-theme #feedback {
  background: rgba(15, 23, 42, 0.92);
  border-color: #334155;
  color: #e5e7eb;
  box-shadow: 0 14px 32px rgba(2, 6, 23, 0.35);
}

body.dark-theme .stat-card span,
body.dark-theme #difficulty-label,
body.dark-theme #lives,
body.dark-theme #mode-label {
  color: #bfdbfe;
}

body.dark-theme .notes {
  color: #cbd5e1;
}

body.dark-theme .key {
  background: #1e293b;
  border-color: #334155;
  color: #bfdbfe;
}

body.dark-theme .key:hover {
  background: #334155;
}

body.dark-theme button {
  background: #2563eb;
  color: #eff6ff;
}

body.dark-theme button.active {
  background: #0f766e;
}

body.dark-theme #feedback.correct {
  color: #6ee7b7;
}

body.dark-theme #feedback.error {
  color: #fda4af;
}
