/* ============================================================
   图像生成 · Design Tokens
   视觉关键词：噪声扩散（渐变）/ 潜空间紫 / 采样青 / 引导品红
   ============================================================ */

:root {
  /* 亮色（默认）——独立取色，非反色 */
  --c-bg: #f6f5fb;
  --c-bg-soft: #ffffff;
  --c-bg-sunken: #efedf8;
  --c-bg-code: #f0eef8;
  --c-fg: #1d1c2b;
  --c-fg-soft: #454458;
  --c-fg-mute: #6c6b83;
  --c-border: #e2e0f0;
  --c-border-strong: #c9c6e0;

  /* 主色：潜空间紫；辅色：采样青；强调：引导品红 */
  --c-primary: #5747d6;
  --c-primary-strong: #4636c2;
  --c-primary-soft: #eceafd;
  --c-accent: #0e93a8;
  --c-accent-soft: #e0f5f8;
  --c-warm: #d14d7d;
  --c-warm-soft: #fbe9f0;

  /* 难度等级色 */
  --lvl-entry: #7a7794;
  --lvl-core: #5747d6;
  --lvl-adv: #0e93a8;
  --lvl-frontier: #d14d7d;

  /* 字体栈 */
  --font-sans: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", -apple-system, "Segoe UI", Roboto, "Noto Sans SC", sans-serif;
  --font-mono: "SF Mono", Menlo, Consolas, "JetBrains Mono", "Courier New", monospace;

  /* 圆角 */
  --radius-s: 6px;
  --radius-m: 12px;
  --radius-l: 20px;

  /* 阴影 */
  --shadow-s: 0 1px 3px rgba(29, 28, 60, 0.08);
  --shadow-m: 0 8px 28px rgba(70, 60, 160, 0.13);

  /* 动效 */
  --t-fast: 130ms;
  --t-med: 260ms;
  --ease: cubic-bezier(0.4, 0, 0.2, 1);

  /* 布局 */
  --w-max: 1080px;
  --header-h: 56px;

  /* 扩散渐变（噪声→清晰的隐喻） */
  --grad-hero: linear-gradient(120deg,
    var(--c-primary) 0%,
    #7f6cf0 30%,
    var(--c-accent) 65%,
    var(--c-warm) 100%);
}

/* 暗色：独立配色，非简单反色（保持 4.5:1+ 对比） */
[data-theme="dark"] {
  --c-bg: #131320;
  --c-bg-soft: #1c1c2e;
  --c-bg-sunken: #17172a;
  --c-bg-code: #222238;
  --c-fg: #e9e8f4;
  --c-fg-soft: #c3c1d6;
  --c-fg-mute: #8f8daa;
  --c-border: #2e2e48;
  --c-border-strong: #43426a;

  --c-primary: #a08fff;
  --c-primary-strong: #b7a9ff;
  --c-primary-soft: #2a2650;
  --c-accent: #4ccede;
  --c-accent-soft: #123239;
  --c-warm: #f27fa8;
  --c-warm-soft: #3c1f2e;

  --lvl-entry: #9a98b4;
  --lvl-core: #a08fff;
  --lvl-adv: #4ccede;
  --lvl-frontier: #f27fa8;

  --shadow-s: 0 1px 3px rgba(0, 0, 0, 0.4);
  --shadow-m: 0 8px 28px rgba(0, 0, 0, 0.45);
}
