/* =============================================================================
 * tokens.css — 设计令牌
 * 直接对齐参考站 ad-asset-agent/apps/web：
 *   --ah-*  → design-tokens.css       （Console 外壳 / 顶栏 / 导航）
 *   --bf-*  → bannerflow-tokens.css   （工作区 / 表格 / 控件）
 *   --cf-*  → creative-workspace/token-aliases.css（语义别名，指向 --bf-*）
 * 值逐条复制，不做改写，保证两站观感一致。
 * ========================================================================== */

:root {
  /* ---- Console 外壳令牌（--ah-*） ---- */
  --color-primary-500: #6D49D8;

  --ah-bg-canvas: #FBFBFD;
  --ah-surface-1: #FFFFFF;
  --ah-surface-2: #F4F5F7;
  --ah-surface-3: #ECEDF0;

  --ah-text-1: #1D1D1F;
  --ah-text-2: #5C5C66;
  --ah-text-3: #8A8A93;
  --ah-text-4: #AEAEB6;

  --ah-separator: rgba(0, 0, 0, 0.06);
  --ah-hairline: rgba(0, 0, 0, 0.08);
  --ah-hairline-strong: rgba(0, 0, 0, 0.12);

  --ah-accent: #6D49D8;
  --ah-accent-hover: #5E3DC4;
  --ah-accent-soft: rgba(109, 73, 216, 0.10);
  --ah-accent-softer: rgba(109, 73, 216, 0.06);
  --ah-accent-ink: #5A3FB0;

  --ah-success: #047857;
  --ah-success-soft: rgba(16, 185, 129, 0.10);
  --ah-warning: #B45309;
  --ah-warning-soft: rgba(245, 158, 11, 0.10);
  --ah-danger: #B91C1C;
  --ah-danger-soft: rgba(239, 68, 68, 0.10);
  --ah-info: #0369A1;
  --ah-info-soft: rgba(59, 130, 246, 0.10);

  --ah-shadow-2: 0 2px 8px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);
  --ah-shadow-3: 0 8px 28px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.06);

  --ah-radius-xs: 8px;
  --ah-radius-sm: 12px;
  --ah-radius-md: 16px;
  --ah-radius-lg: 20px;

  /* 注意：参考站的字号令牌名与取值本就「错一位」，此处原样保留以便对照。 */
  --ah-fs-11: 12px;
  --ah-fs-12: 13px;
  --ah-fs-13: 14px;
  --ah-fs-14: 15px;
  --ah-fs-16: 17px;
  --ah-fs-18: 20px;

  /* ---- 工作区令牌（--bf-*） ---- */
  --bf-canvas: #f3f5f8;
  --bf-surface: #ffffff;
  --bf-surface-soft: #eef2f7;
  --bf-surface-strong: #f7f9fc;
  --bf-surface-card: rgba(255, 255, 255, 0.94);
  --bf-surface-pill: rgba(255, 255, 255, 0.9);
  --bf-surface-panel: rgba(255, 255, 255, 0.82);
  --bf-surface-empty: rgba(255, 255, 255, 0.76);
  --bf-surface-muted: #f6f8fb;
  --bf-surface-table: #f7f9fc;
  --bf-surface-tint: rgba(238, 242, 247, 0.94);
  --bf-surface-tint-soft: rgba(238, 242, 247, 0.92);

  --bf-overlay: rgba(255, 255, 255, 0.88);
  --bf-overlay-backdrop: rgba(15, 23, 42, 0.22);
  --bf-overlay-control: rgba(15, 23, 42, 0.48);

  --bf-border: #dbe3ec;
  --bf-border-strong: #c9d4e1;
  --bf-border-soft: rgba(17, 24, 39, 0.08);
  --bf-border-softer: rgba(17, 24, 39, 0.06);
  --bf-border-subtle: #e7edf4;

  --bf-text: #111827;
  --bf-text-muted: #5c6678;
  --bf-text-subtle: #8a94a7;
  --bf-text-disabled: #b1bccb;

  --bf-primary: #1664ff;
  --bf-primary-400: #4a8cff;
  --bf-primary-strong: #0f4dde;
  --bf-primary-700: #0d3db4;
  --bf-primary-faint: rgba(22, 100, 255, 0.03);
  --bf-primary-hover: rgba(22, 100, 255, 0.06);
  --bf-primary-softer: rgba(22, 100, 255, 0.08);
  --bf-primary-soft: #eaf2ff;
  --bf-primary-glow: rgba(22, 100, 255, 0.18);
  --bf-primary-border-soft: rgba(22, 100, 255, 0.18);
  --bf-focus-border: rgba(22, 100, 255, 0.42);
  --bf-focus-ring: 0 0 0 4px rgba(22, 100, 255, 0.12);

  --bf-success: #21825a;
  --bf-success-soft: #eaf7f0;
  --bf-success-bg: rgba(33, 130, 90, 0.1);
  --bf-warning: #d38b10;
  --bf-warning-soft: #fff5dc;
  --bf-warning-bg: rgba(211, 139, 16, 0.12);
  --bf-danger: #d74f3e;
  --bf-danger-soft: #fff1ed;
  --bf-danger-bg: rgba(215, 79, 62, 0.1);
  --bf-danger-border-soft: rgba(215, 79, 62, 0.2);
  --bf-danger-border-strong: rgba(215, 79, 62, 0.24);
  --bf-info: #1664ff;
  --bf-info-soft: rgba(22, 100, 255, 0.1);

  --bf-lang-en: #1664ff;
  --bf-lang-ja: #d946ef;
  --bf-lang-zh: #d38b10;
  --bf-lang-ko: #0f9f7f;

  --bf-font-sans: "Segoe UI Variable Text", "Segoe UI", "PingFang SC",
    "Hiragino Sans GB", "Microsoft YaHei UI", "Noto Sans SC",
    "Helvetica Neue", Arial, sans-serif;
  --bf-font-mono: "Cascadia Code", "JetBrains Mono", "SFMono-Regular",
    "Consolas", "Liberation Mono", monospace;

  --bf-shadow-subtle: 0 10px 20px rgba(15, 23, 42, 0.05);
  --bf-shadow-medium: 0 16px 32px rgba(15, 23, 42, 0.08);
  --bf-shadow-large: 0 24px 60px rgba(15, 23, 42, 0.14);
  --bf-shadow-glow: 0 0 0 4px rgba(22, 100, 255, 0.08);
  --bf-shadow-inline: 0 6px 12px rgba(15, 23, 42, 0.04);
  --bf-shadow-card: 0 14px 28px rgba(15, 23, 42, 0.06);
  --bf-shadow-panel: 0 14px 30px rgba(15, 23, 42, 0.06);
  --bf-shadow-hover: 0 12px 24px rgba(15, 23, 42, 0.08);
  --bf-shadow-float: 0 18px 40px rgba(15, 23, 42, 0.08);
  --bf-shadow-pop: 0 18px 30px rgba(15, 23, 42, 0.18);
  --bf-shadow-modal: 0 36px 90px rgba(15, 23, 42, 0.18);

  --bf-scroll-max-height: min(50vh, 26rem);

  /* ---- 语义别名（--cf-*），与参考站 token-aliases.css 同构 ---- */
  --cf-bg: var(--bf-canvas);
  --cf-surface: var(--bf-surface);
  --cf-surface-soft: var(--bf-surface-soft);
  --cf-surface-strong: var(--bf-surface-strong);
  --cf-surface-card: var(--bf-surface-card);
  --cf-surface-pill: var(--bf-surface-pill);
  --cf-surface-panel: var(--bf-surface-panel);
  --cf-surface-empty: var(--bf-surface-empty);
  --cf-surface-muted: var(--bf-surface-muted);
  --cf-surface-table: var(--bf-surface-table);
  --cf-surface-tint: var(--bf-surface-tint);
  --cf-surface-tint-soft: var(--bf-surface-tint-soft);
  --cf-overlay: var(--bf-overlay);
  --cf-overlay-backdrop: var(--bf-overlay-backdrop);
  --cf-overlay-control: var(--bf-overlay-control);
  --cf-border: var(--bf-border);
  --cf-border-strong: var(--bf-border-strong);
  --cf-border-soft: var(--bf-border-soft);
  --cf-border-softer: var(--bf-border-softer);
  --cf-border-subtle: var(--bf-border-subtle);
  --cf-text: var(--bf-text);
  --cf-text-muted: var(--bf-text-muted);
  --cf-text-subtle: var(--bf-text-subtle);
  --cf-primary: var(--bf-primary);
  --cf-primary-strong: var(--bf-primary-strong);
  --cf-primary-faint: var(--bf-primary-faint);
  --cf-primary-hover: var(--bf-primary-hover);
  --cf-primary-softer: var(--bf-primary-softer);
  --cf-primary-soft: var(--bf-primary-soft);
  --cf-primary-glow: var(--bf-primary-glow);
  --cf-primary-border-soft: var(--bf-primary-border-soft);
  --cf-focus-border: var(--bf-focus-border);
  --cf-focus-ring: var(--bf-focus-ring);
  --cf-success: var(--bf-success);
  --cf-success-soft: var(--bf-success-soft);
  --cf-success-bg: var(--bf-success-bg);
  --cf-warning: var(--bf-warning);
  --cf-warning-soft: var(--bf-warning-soft);
  --cf-warning-bg: var(--bf-warning-bg);
  --cf-danger: var(--bf-danger);
  --cf-danger-soft: var(--bf-danger-soft);
  --cf-danger-bg: var(--bf-danger-bg);
  --cf-danger-border-soft: var(--bf-danger-border-soft);
  --cf-danger-border-strong: var(--bf-danger-border-strong);
  --cf-shadow-inline: var(--bf-shadow-inline);
  --cf-shadow-card: var(--bf-shadow-card);
  --cf-shadow-panel: var(--bf-shadow-panel);
  --cf-shadow-hover: var(--bf-shadow-hover);
  --cf-shadow-float: var(--bf-shadow-float);
  --cf-shadow-pop: var(--bf-shadow-pop);
  --cf-shadow-modal: var(--bf-shadow-modal);
  --cf-shadow-glow: var(--bf-shadow-glow);
  --cw-scroll-max-height: var(--bf-scroll-max-height);

  /* ---- 本站业务态配色（与 §2.4 状态词表一一对应，不新增取值） ---- */
  /* 脚本态 */
  --st-script-PENDING: var(--bf-warning);
  --st-script-REVIEWING: var(--bf-primary);
  --st-script-APPROVED: var(--bf-success);
  --st-script-REJECTED: var(--bf-danger);
  /* 规格审核态 */
  --st-deliv-PENDING: var(--bf-warning);
  --st-deliv-REVIEWING: var(--bf-primary);
  --st-deliv-UNQUALIFIED: var(--bf-danger);
  --st-deliv-DOUBT: var(--bf-danger);
  --st-deliv-QUALIFIED: var(--bf-success);
  --st-deliv-OVERRIDDEN: var(--ah-accent);
  /* 结单态 */
  --st-comp-PENDING: var(--bf-text-subtle);
  --st-comp-PARTIAL: var(--bf-primary);
  --st-comp-COMPLETED: var(--bf-success);
  /* 判定结论 */
  --vd-pass: var(--bf-success);
  --vd-fail: var(--bf-danger);
  --vd-doubt: var(--bf-danger);
  --vd-manual: var(--bf-text-muted);
}
