/* tokens.css — 设计 token 唯一真源
 * 约束：本节色值 / 圆角 / 间距 / 时长 / 缓动曲线照抄《通用网页-前端UI约束提示词》第 3 节。
 * 组件样式一律不得写在这里；组件里也不得出现硬编码色值、圆角、时长。
 */

:root {
  color-scheme: dark;

  /* 层级背景：底色 / 卡片 / 悬浮层与输入框 */
  --bg:          #0b0d10;
  --bg-elev-1:   #12151a;
  --bg-elev-2:   #181c22;

  /* 描边两级 */
  --line:        rgba(255, 255, 255, .08);
  --line-strong: rgba(255, 255, 255, .14);

  /* 文字三级 */
  --text:        #e8eaed;
  --text-dim:    #9aa3ad;
  --text-mute:   #6b7480;

  /* 语义色：强调 / 成功 / 警告 / 危险 / 信息 */
  --accent:      #5b8cff;
  --accent-press:#4574e6;
  --ok:          #a7d8b9;
  --warn:        #f0cf9a;
  --danger:      #f0a8a0;
  --info:        #a9c7f5;

  /* 圆角 / 间距 / 动效 */
  --radius-s: 10px;
  --radius-m: 14px;
  --radius-l: 20px;
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --dur-fast: 140ms;
  --dur-base: 220ms;
  --dur-slow: 300ms;
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --ease-in:  cubic-bezier(.4, 0, 1, 1);
  --ease-io:  cubic-bezier(.4, 0, .2, 1);

  /* 由既有 token 派生的复合值 */
  --shadow-1: 0 1px 2px rgba(0, 0, 0, .3);
  --shadow-2: 0 8px 24px rgba(0, 0, 0, .35);
  --font: -apple-system, "Segoe UI", "Noto Sans SC", sans-serif;
}

/* 浅色主题：只覆盖同一组 token 名，不维护第二套组件样式 */
[data-theme="light"] {
  color-scheme: light;

  --bg:          #f6f7f9;
  --bg-elev-1:   #ffffff;
  --bg-elev-2:   #f0f2f5;

  --line:        rgba(16, 24, 40, .10);
  --line-strong: rgba(16, 24, 40, .18);

  --text:        #101828;
  --text-dim:    #475467;
  --text-mute:   #667085;

  --accent:      #2f5fd0;
  --accent-press:#274fae;
  --ok:          #3d7a5f;
  --warn:        #9a6b2f;
  --danger:      #ad4f47;
  --info:        #43639c;

  --shadow-1: 0 1px 2px rgba(16, 24, 40, .08);
  --shadow-2: 0 8px 24px rgba(16, 24, 40, .12);
}
