/* ============================================================
   设计令牌（Design Tokens）—— 唯一事实源
   依据：docs/配色系统规范_v1.1.md（颜色变量地图）
   规则：组件样式只引用变量，不写死颜色；四套配色整体切换
   ============================================================ */
:root {
  /* ── Layer 1 · Primitives（默认：石墨方案）── */
  --paper: #fafaf8;
  --surface: #ffffff;
  --surface-2: #f2f2f0;
  --surface-3: #e8e8e5;
  --line: #e9e9e6;

  --ink-900: #141414;
  --ink-600: #5c5c5c;
  --ink-400: #8a8a8a;
  --ink-300: #b8b8b6;

  /* 语义色（状态点 / 提示） */
  --c-amber: #c2703d;
  --c-green: #4a7c59;
  --c-blue: #5b7a9d;
  --c-red: #a94438;

  /* 动作色 */
  --primary: var(--ink-900);
  --primary-hover: #2b2b2b;
  --on-primary: #ffffff;

  /* 图表分类色板 · 8 色 */
  --viz-1: #5b7a9d;
  --viz-2: #c07c4a;
  --viz-3: #6e8b74;
  --viz-4: #8a6e9e;
  --viz-5: #b8a03e;
  --viz-6: #a85a5a;
  --viz-7: #4e8a85;
  --viz-8: #7d7d7d;

  /* 形状（"圆润"家族：三档 + 胶囊） */
  --r-card: 20px;
  --r-el: 12px;
  --r-pill: 999px;

  /* 软阴影 */
  --sh-color: 20 20 20;
  --sh-card: 0 1px 2px rgb(var(--sh-color) / 0.04), 0 10px 28px -16px rgb(var(--sh-color) / 0.1);
  --sh-hover: 0 2px 4px rgb(var(--sh-color) / 0.05), 0 16px 36px -16px rgb(var(--sh-color) / 0.14);

  /* 间距 · 8px 基准 */
  --s1: 4px;
  --s2: 8px;
  --s3: 12px;
  --s4: 16px;
  --s5: 24px;
  --s6: 32px;
  --s7: 48px;

  /* 动效（ui-animation 规范） */
  --dur-fast: 150ms;
  --dur-norm: 250ms;
  --dur-slow: 400ms;
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);

  /* ── Layer 2 · Semantic ── */
  --font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
    "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  --bg: var(--paper);
  --text: var(--ink-900);
  --text-2: var(--ink-600);
  --text-3: var(--ink-400);
}

/* ============================================================
   配色方案 · 四套完整系统（背景 / 文字 / 线 / 语义 / 主色 / 图表整体切换）
   ============================================================ */

/* ② 青瓷 Celadon · 浅绿系 */
[data-theme="celadon"] {
  --paper: #f5f9f6;
  --surface: #ffffff;
  --surface-2: #eaf3ec;
  --surface-3: #e0ebe2;
  --line: #dfeae1;
  --ink-900: #17211a;
  --ink-600: #55635a;
  --ink-400: #8a988f;
  --ink-300: #b4c2b8;
  --c-amber: #b07a2e;
  --c-green: #3e7d55;
  --c-blue: #4e7a8a;
  --c-red: #a85548;
  --primary: #2f6b4f;
  --primary-hover: #3a7f5e;
  --viz-1: #3e6b52;
  --viz-2: #7fa06b;
  --viz-3: #c08a4a;
  --viz-4: #5b7a9d;
  --viz-5: #a67c8a;
  --viz-6: #8a7ba6;
  --viz-7: #4e8a85;
  --viz-8: #9a9a7a;
  --sh-color: 23 33 26;
}

/* ③ 暖阳 Amber · 暖黄系 */
[data-theme="amber"] {
  --paper: #fbf8f0;
  --surface: #fffefb;
  --surface-2: #f6efdf;
  --surface-3: #efe6d2;
  --line: #ede3ce;
  --ink-900: #221d12;
  --ink-600: #645a44;
  --ink-400: #998c72;
  --ink-300: #c4b99e;
  --c-amber: #a8701c;
  --c-green: #5a7d3e;
  --c-blue: #4a6e96;
  --c-red: #b0432e;
  --primary: #8a5e18;
  --primary-hover: #9e6e22;
  --viz-1: #9a6b1e;
  --viz-2: #c05a42;
  --viz-3: #6e8b4a;
  --viz-4: #5b7a9d;
  --viz-5: #a67c8a;
  --viz-6: #7d6a9e;
  --viz-7: #4e8a7a;
  --viz-8: #8a8474;
  --sh-color: 34 29 18;
}

/* ④ 天青 Azure · 浅蓝系 */
[data-theme="azure"] {
  --paper: #f4f7fb;
  --surface: #ffffff;
  --surface-2: #e9f0f8;
  --surface-3: #dfe9f3;
  --line: #dde7f1;
  --ink-900: #141c26;
  --ink-600: #4e5d6c;
  --ink-400: #8494a4;
  --ink-300: #b0bfcc;
  --c-amber: #b07a2e;
  --c-green: #3e7d55;
  --c-blue: #2e62a8;
  --c-red: #ae4438;
  --primary: #2e62a8;
  --primary-hover: #3a74c0;
  --viz-1: #3468b0;
  --viz-2: #4e9a93;
  --viz-3: #7fa06b;
  --viz-4: #c08a4a;
  --viz-5: #b85a6e;
  --viz-6: #8a7ba6;
  --viz-7: #6ea3ce;
  --viz-8: #8a98a8;
  --sh-color: 20 28 38;
}
