/* Shared study suite theme — light + dark (landing, AWS, 软考) */
:root,
[data-theme="light"] {
  --bg: #f2f5f8;
  --bg-elev: #ffffff;
  --bg-soft: #e6edf4;
  --text: #1a2330;
  --muted: #5a6b7d;
  --accent: #2563a8;
  --accent-dim: #1e4f85;
  --accent-soft: #e8f1fa;
  --ok: #2a7a52;
  --ok-soft: #e5f5ec;
  --warn: #9a6b00;
  --warn-soft: #fff6e0;
  --danger: #c44040;
  --danger-soft: #fdecec;
  --border: #cfd8e2;
  --header-bg: rgba(242, 245, 248, 0.88);
  --grad-a: #d4e4f4;
  --grad-b: #d8e8e0;
  --shadow: 0 1px 2px rgba(26, 35, 48, 0.04), 0 8px 24px rgba(26, 35, 48, 0.06);
  --btn-primary-fg: #ffffff;
  --radius: 6px;
  --font: "Segoe UI", "PingFang SC", "Microsoft YaHei", "IBM Plex Sans", "Helvetica Neue", sans-serif;
  --mono: "Cascadia Code", "Consolas", monospace;
  color-scheme: light;
}

[data-theme="dark"] {
  --bg: #0f1419;
  --bg-elev: #1a222c;
  --bg-soft: #243040;
  --text: #e8eef4;
  --muted: #9aabbc;
  --accent: #3d9cf0;
  --accent-dim: #2a6fad;
  --accent-soft: #1a2d42;
  --ok: #3cb371;
  --ok-soft: #153028;
  --warn: #e6a817;
  --warn-soft: #3a2e10;
  --danger: #e05454;
  --danger-soft: #2a1818;
  --border: #2e3c4d;
  --header-bg: rgba(15, 20, 25, 0.85);
  --grad-a: #1a3a5c;
  --grad-b: #1e2f28;
  --shadow: none;
  --btn-primary-fg: #061018;
  --radius: 6px;
  --font: "Segoe UI", "PingFang SC", "Microsoft YaHei", "IBM Plex Sans", "Helvetica Neue", sans-serif;
  --mono: "Cascadia Code", "Consolas", monospace;
  color-scheme: dark;
}

.theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  margin-left: 0.15rem;
  padding: 0.28rem 0.7rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--bg-elev);
  color: var(--text);
  font: inherit;
  font-weight: 600;
  font-size: 0.88rem;
  cursor: pointer;
  line-height: 1.2;
}

.theme-toggle:hover {
  border-color: var(--accent-dim);
  color: var(--accent);
}

.theme-toggle .theme-icon {
  font-size: 0.95rem;
  line-height: 1;
}
