:root {
  --bg: #0f0f1a;
  --card-bg: rgba(255,255,255,0.04);
  --card-border: rgba(255,255,255,0.06);
  --card-divider: rgba(255,255,255,0.04);
  --text: #e0e0e0;
  --text-strong: #fff;
  --text-weak: rgba(255,255,255,0.25);
  --text-muted: rgba(255,255,255,0.5);
  --input-bg: rgba(255,255,255,0.08);
  --input-border: rgba(255,255,255,0.1);
  --input-border-focus: #4f8cff;
  --accent: #4f8cff;
  --toggle-track: rgba(255,255,255,0.1);
  --toggle-thumb: rgba(255,255,255,0.5);
  --option-bg: #1a1a2e;
  --footer-color: rgba(255,255,255,0.3);
}
.light {
  --bg: #f5f5f5;
  --card-bg: rgba(0,0,0,0.03);
  --card-border: rgba(0,0,0,0.08);
  --card-divider: rgba(0,0,0,0.05);
  --text: #333;
  --text-strong: #111;
  --text-weak: rgba(0,0,0,0.35);
  --text-muted: rgba(0,0,0,0.55);
  --input-bg: rgba(0,0,0,0.04);
  --input-border: rgba(0,0,0,0.12);
  --input-border-focus: #2b6cb0;
  --accent: #2b6cb0;
  --toggle-track: rgba(0,0,0,0.12);
  --toggle-thumb: rgba(0,0,0,0.45);
  --option-bg: #fff;
  --footer-color: rgba(0,0,0,0.35);
}
body {
  font-family: -apple-system, "Segoe UI", "Microsoft YaHei", sans-serif;
  background: var(--bg); color: var(--text);
  -webkit-font-smoothing: antialiased;
}
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.12); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.22); }
select option { background: var(--option-bg); color: var(--text); }
.light ::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.12); }
.light ::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,0.22); }
