body.dark-mode {
  --ink: #f3f1e7;
  --muted: #aab6c0;
  --line: #435064;
  --cream: #1e2635;
  --blue: #67d5dc;
  --gold: #ffd36a;
  --orange: #ff9272;
  background: #101522;
  color: var(--ink);
}

body.dark-mode .scene-card,
body.dark-mode .side-panel,
body.dark-mode .catch-card,
body.dark-mode .quest-card {
  background: #1d2534;
  border-color: #3a4759;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .24);
}

body.dark-mode .day-pill,
body.dark-mode .wallet {
  background: rgba(21, 28, 43, .88);
  border-color: #59677b;
  color: #f3f1e7;
}

body.dark-mode .day-pill strong,
body.dark-mode .wallet strong { color: #fff; }

body.dark-mode .icon-button {
  background: #2a3547;
  color: #f3f1e7;
}

body.dark-mode .gear-card { border-color: #3a4759; }
body.dark-mode .quest-card { background: #20383d; }
body.dark-mode .quest-card p,
body.dark-mode .catch-card .muted { color: #afc1c5; }
body.dark-mode .catch-item { color: #f3f1e7; }
body.dark-mode .empty-catch { color: #9eafba; }
body.dark-mode .progress { background: #3d5360; }

body.dark-mode .mobile-menu-row .menu-circle,
body.dark-mode .mobile-menu-row .mini-resource,
body.dark-mode .mobile-menu-row .zone-chip {
  border-color: #111a2a;
  background: rgba(29, 38, 53, .95);
  color: #f3f1e7;
  box-shadow: 0 3px 0 #111a2a;
}

body.dark-mode .mini-resource strong,
body.dark-mode .zone-chip small,
body.dark-mode .zone-chip { color: #f3f1e7; }

body.dark-mode .menu-drawer {
  border-color: #101827;
  background: rgba(28, 35, 50, .98);
  box-shadow: 0 7px 0 #101827, 0 18px 35px rgba(0, 0, 0, .4);
}

body.dark-mode .drawer-title {
  border-color: #3d4b60;
  color: #f3f1e7;
}

body.dark-mode .drawer-grid button {
  border-color: #4a5a70;
  background: #283447;
  color: #f3f1e7;
}

body.dark-mode .drawer-grid button:hover {
  border-color: #ff9272;
  background: #35435a;
}

body.dark-mode .drawer-grid button small { color: #f3f1e7; }

body.dark-mode .event-card {
  background: #1b2332;
  border-color: #101827;
  box-shadow: 0 8px 0 #0d1320, 0 24px 50px rgba(0, 0, 0, .45);
}

body.dark-mode .event-card h2,
body.dark-mode .event-card > p {
  border-color: #667086;
  background: #30394b;
  color: #f5f1df;
}

body.dark-mode .event-card > p { color: #d5dce1; }
body.dark-mode .choice-button { border-color: #101827; box-shadow: 0 4px 0 #0d1320; }
body.dark-mode .choice-button small { color: #403c32; }

body.dark-mode .profile-card,
body.dark-mode .travel-card,
body.dark-mode .shop-card,
body.dark-mode .catch-reward-card {
  border-color: #101827;
  background: #1d2636;
  color: #f3f1e7;
  box-shadow: 0 8px 0 #0d1320, 0 24px 50px rgba(0, 0, 0, .45);
}

body.dark-mode .profile-header h2,
body.dark-mode .profile-identity strong,
body.dark-mode .profile-stats strong,
body.dark-mode .rank-panel-heading strong,
body.dark-mode .progress-label strong,
body.dark-mode .catch-reward-card h2 { color: #f3f1e7; }

body.dark-mode .profile-identity,
body.dark-mode .catch-reward-stats div {
  background: #30394b;
  border-color: #526078;
}

body.dark-mode .rank-panel,
body.dark-mode .shop-wallet {
  background: #253e43;
  border-color: #4e7275;
}

body.dark-mode .profile-stats div,
body.dark-mode .zone-option,
body.dark-mode .bait-pack {
  background: #283447;
  border-color: #4a5a70;
  color: #f3f1e7;
}

body.dark-mode .zone-option:hover,
body.dark-mode .zone-option.selected { background: #3b3f4d; }
body.dark-mode .travel-wallet { background: #253e43; border-color: #4e7275; color: #b5c3ca; }
body.dark-mode .travel-wallet strong { color: #f3f1e7; }
body.dark-mode .zone-option.unlockable { background: #3b3f4d; border-color: #d5a94f; }
body.dark-mode .zone-details small,
body.dark-mode .travel-help,
body.dark-mode .shop-help { color: #adbac2; }
body.dark-mode .bait-pack-details strong,
body.dark-mode .shop-wallet strong { color: #f3f1e7; }
body.dark-mode .profile-catch-list { border-color: #3f4d60; }

body.dark-mode .catch-reward-art-wrap {
  border-color: #4e7275;
  background: radial-gradient(circle, #385f66 0 38%, #2c515b 39% 70%, #24444f 71% 100%);
  box-shadow: inset 0 -8px 0 rgba(0, 0, 0, .16), 0 4px 0 #172d38;
}

body.dark-mode .catch-reward-stats div { background: #30394b; }
body.dark-mode .catch-reward-stats small,
body.dark-mode .catch-reward-context { color: #b5c3ca; }
body.dark-mode .catch-reward-bonus { color: #72d8d1; }
body.dark-mode .toast { background: #0e1726; color: #fff; border-color: #5a6b84; }

@media (min-width: 0px) {
  body.dark-mode { background: #101522; }
  body.dark-mode .scene-card { background: #101522; }
}
