/* ===== base.css：reset + 主题 token + 深浅色 ===== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  font-size: 14px; line-height: 1.5;
  background: var(--bg); color: var(--text);
  min-height: 100vh;
}
a { color: var(--accent); text-decoration: none; }
button { font-family: inherit; }
input, select, textarea { font-family: inherit; font-size: 14px; color: var(--text); }
ul, ol { list-style: none; }

/* ---------- 主题变量 ---------- */
html[data-theme="light"] {
  --bg: #f4f6f9;
  --card: #ffffff;
  --card2: #f8fafc;
  --border: #e3e8ef;
  --text: #1c2330;
  --muted: #6b7686;
  --accent: #1c6ef2;
  --accent-soft: #e8f0fe;
  --warn: #b97a0e;  --warn-soft: #fdf3e0;
  --danger: #c93b34; --danger-soft: #fdeceb;
  --ok: #0a9d58;    --ok-soft: #e7f6ee;
  --up: #e0342f;                 /* A股红涨/红盈 */
  --down: #0a9d58;               /* A股绿跌/绿亏 */
  --reason: #1c6ef2;  --reason-bg: #eaf2fe;
  --lesson: #e8842c;  --lesson-bg: #fdf1e3;
  --track: #e6eaf0;              /* 进度条底 */
  --flash: #fff3bf;
  --overlay: rgba(20, 26, 38, .45);
  --shadow: 0 1px 3px rgba(16,24,40,.06), 0 4px 14px rgba(16,24,40,.06);
}
html[data-theme="dark"] {
  --bg: #12161d;
  --card: #1b212b;
  --card2: #20272f;
  --border: #2c3540;
  --text: #e6eaf0;
  --muted: #8b96a5;
  --accent: #5aa2ff;
  --accent-soft: #1d2c42;
  --warn: #f0b13e;  --warn-soft: #3a2f14;
  --danger: #ff6b62; --danger-soft: #3d1d1b;
  --ok: #2ec27e;    --ok-soft: #143324;
  --up: #ff5a52;
  --down: #2ec27e;
  --reason: #5aa2ff;  --reason-bg: #1a2b44;
  --lesson: #ffab5e;  --lesson-bg: #3a2a15;
  --track: #262e38;
  --flash: #4a431c;
  --overlay: rgba(0, 0, 0, .55);
  --shadow: 0 1px 3px rgba(0,0,0,.35), 0 6px 18px rgba(0,0,0,.3);
}

/* 语义色辅助类（涨跌色唯一出口在 TD.util.pnlClass，均落到 .up/.down/.flat） */
.up   { color: var(--up); }
.down { color: var(--down); }
.flat { color: var(--muted); }
.muted { color: var(--muted); }
.num  { font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; }
