/* ============================================================
   中科尚易 · 客户登记 —— 设计令牌（H5 / 小程序 共用基准）
   来源：outputs/DESIGN.md v3 定稿
   品牌锚点（硬约束）：主色 深绿 #2D5A4A + 底色 暖米 #FAF8F4
   ============================================================ */
:root{
  /* ---- 主色阶 ---- */
  --green-50:#EEF4F0;--green-100:#DCE9E2;--green-200:#BBD3C6;--green-300:#93B7A6;
  --green-400:#6A9884;--green-500:#477B64;--green-600:#2D5A4A;--green-700:#244A3D;
  --green-800:#1C3A30;--green-900:#142A23;
  --color-primary:var(--green-600);--color-primary-hover:var(--green-700);
  --color-primary-active:var(--green-800);--color-primary-subtle-bg:var(--green-50);
  --color-primary-on:#FFFFFF;

  /* ---- 中性阶与画布 ---- */
  --color-bg-canvas:#FAF8F4;--color-surface:#FFFDFA;--color-surface-sunken:#F2EEE6;
  --neutral-50:#F7F5F1;--neutral-100:#EFEBE4;--neutral-200:#E2DCD2;--neutral-300:#CFC7B9;
  --neutral-400:#A8A093;--neutral-500:#837C70;--neutral-600:#625C52;--neutral-700:#47423B;
  --neutral-800:#2E2B26;--neutral-900:#1C1A17;

  /* ---- 文字 ---- */
  --color-text-primary:#24221E;--color-text-heading:#2D5A4A;--color-text-secondary:#625C52;
  --color-text-tertiary:#837C70;--color-text-placeholder:#837C70;--color-text-disabled:#A8A093;
  --color-text-on-primary:#FFFFFF;--color-text-link:#244A3D;

  /* ---- 语义色 ---- */
  --color-success:#2E7D5B;--color-success-bg:#E7F3EC;
  --color-warning:#B07B32;--color-warning-text:#7A5620;--color-warning-bg:#FBF1DF;
  --border-warn:#E8D6AE;
  --color-info:#3B6E8F;--color-info-bg:#E8F0F5;--color-info-bd:#C3D6E2;--color-info-text:#2C5570;
  /* 危险色：仅限破坏性操作与系统错误；不得用于客户状态/意向/归属 */
  --color-danger:#B5544A;--color-danger-bg:#F7E9E7;--color-danger-bd:#E5C9C5;--color-danger-text:#8E3B33;
  /* 反白前景：用于深色底/主色底上的文字 */
  --color-on-inverse:#FFFFFF;

  /* ---- 描边 ---- */
  --border-subtle:#EFEBE4;--border-default:#E2DCD2;--border-strong:#CFC7B9;
  --border-focus:#2D5A4A;--divider:#EFEBE4;
  --overlay-scrim:rgba(28,26,23,.45);--overlay-scrim-soft:rgba(28,26,23,.20);

  /* ---- 意向徽章（"低"严禁红色 → 中性灰） ---- */
  /* ------------------------------------------------------------------
     徽章配色契约（三档语义 → 同一组安全色）
     这是**刻意为之**的一致，不是命名冗余。请勿为了"减少令牌"而拆开它们。

       中性灰  intent-low   ≡ owner-other   —— 「无需特别关注」
       暖金色  intent-mid   ≡ owner-pool    —— 「需关注/待处理」（待接管）
       品牌绿  intent-high  ≈ owner-mine    —— 「值得投入/自己的」

     语义依据（合规红线）：
       · 意向「低」与「他人客户」都表示"不紧急"，必须是中性灰 —— 严禁红色
       · 意向「中」与「待接管」都需要引起注意，共用暖金（唯一的警示档）—— 严禁红色
       · 红色只保留给破坏性操作与系统错误，绝不用于客户状态、意向、归属

     两端（H5 / 钉钉小程序）已按同一组数值实现，改动其一必须同步另一端。
     ------------------------------------------------------------------ */
  --badge-intent-high-bg:#E3EFE9;--badge-intent-high-text:#1C3A30;--badge-intent-high-bd:#BBD3C6;
  --badge-intent-mid-bg:#FBF1DF;--badge-intent-mid-text:#7A5620;--badge-intent-mid-bd:#E8D6AE;
  --badge-intent-low-bg:#EFEBE4;--badge-intent-low-text:#625C52;--badge-intent-low-bd:#E2DCD2;

  /* ---- 归属徽章三档（我的=深绿 / 他人=中性灰 / 待接管=暖金；严禁红色） ---- */
  --badge-owner-mine-bg:#DCE9E2;--badge-owner-mine-text:#1C3A30;--badge-owner-mine-bd:#BBD3C6;
  --badge-owner-other-bg:#EFEBE4;--badge-owner-other-text:#625C52;--badge-owner-other-bd:#E2DCD2;
  --badge-owner-pool-bg:#FBF1DF;--badge-owner-pool-text:#7A5620;--badge-owner-pool-bd:#E8D6AE;

  /* ---- 变更历史 diff（旧值是中性历史事实，绝不用红色） ---- */
  --diff-old-color:var(--neutral-500);--diff-new-color:var(--green-700);
  --diff-restricted-color:var(--neutral-500);--diff-restricted-bg:var(--neutral-100);
  --audit-timeline-line:var(--neutral-200);--audit-dot-bg:var(--green-600);
  --audit-dot-bg-neutral:var(--neutral-400);--audit-action-chip-bg:var(--neutral-100);
  --audit-action-chip-text:var(--neutral-700);

  /* ---- 字体 ---- */
  --font-sans:"PingFang SC","Source Han Sans SC","Noto Sans SC","Microsoft YaHei","Hiragino Sans GB",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --font-display:"Source Han Serif SC","Noto Serif SC","Songti SC","STSong",Georgia,var(--font-sans);
  --font-numeric:"Inter","SF Pro Text","Roboto Mono",var(--font-sans);
  --fs-display:2rem;--fs-h1:1.5rem;--fs-h2:1.25rem;--fs-h3:1.125rem;--fs-title:1.0625rem;
  --fs-body:1rem;--fs-body-lg:1.0625rem;--fs-label:.9375rem;--fs-small:.875rem;--fs-micro:.75rem;
  --fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;
  --lh-display:1.25;--lh-heading:1.35;--lh-body:1.6;--lh-tight:1.4;

  /* ---- 间距 ---- */
  --space-0:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;
  --space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;

  /* ---- 圆角与阴影 ---- */
  --radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;
  --radius-pill:999px;--radius-full:50%;
  --shadow-xs:0 1px 2px rgba(45,35,20,.05);
  --shadow-sm:0 1px 3px rgba(45,35,20,.07),0 1px 2px rgba(45,35,20,.04);
  --shadow-md:0 4px 12px rgba(45,35,20,.08);
  --shadow-lg:0 8px 24px rgba(45,35,20,.10);
  --bw-hairline:1px;--bw-focus:2px;--bw-selected:2px;

  /* ---- 触控与移动端尺寸（WCAG / Apple HIG 44pt 下限） ---- */
  --touch-min:44px;--touch-comfortable:48px;--touch-primary:50px;--touch-primary-min:48px;
  --touch-segment-h:44px;--touch-list-row-h:56px;--touch-card-select-min-h:76px;
  --touch-gap-min:8px;--touch-gap-preferred:12px;--touch-icon-btn:44px;--touch-bar-h:56px;
  --input-h-mobile:48px;--btn-h-mobile:44px;--btn-h-primary-mobile:50px;--fs-touch-min:16px;

  /* ---- 钉钉容器适配 ---- */
  --dd-nav-h:44px;--dd-nav-h-android:48px;--dd-statusbar-h-fallback:24px;
  --dd-safe-top:env(safe-area-inset-top,0px);
  --dd-safe-bottom:env(safe-area-inset-bottom,0px);
  --dd-header-offset:calc(var(--dd-safe-top) + var(--dd-nav-h));
  --dd-footer-offset:calc(var(--touch-bar-h) + var(--dd-safe-bottom));
  --footer-bar-h:calc(var(--touch-bar-h) + env(safe-area-inset-bottom,0px));
  --container-mobile-max:480px;--page-pad-x:var(--space-4);--page-pad-x-narrow:var(--space-3);

  /* ---- 归属人 chip ---- */
  --owner-chip-bg:#FFFFFF;--owner-chip-bd:1px solid var(--neutral-200);
  --owner-chip-radius:var(--radius-pill);--owner-chip-h:28px;--owner-chip-pad-x:8px;
  --owner-chip-fs:var(--fs-micro);--owner-chip-text:var(--neutral-700);
  --owner-avatar-size:24px;--owner-avatar-size-lg:40px;--owner-avatar-radius:var(--radius-full);
  --owner-avatar-bg:var(--green-100);--owner-avatar-text:var(--green-800);--owner-avatar-fs:var(--fs-micro);
  --owner-self-bg:var(--green-600);--owner-self-text:#FFFFFF;--owner-self-bd:1px solid var(--green-700);
  --owner-transfer-entry-text:var(--green-700);

  /* ---- 撞单提示条（暖金警示，非红色） ---- */
  --conflict-bar-bg:var(--color-warning-bg);--conflict-bar-bd:1px solid #E8D6AE;
  --conflict-bar-text:var(--color-warning-text);--conflict-bar-radius:var(--radius-md);
  --conflict-bar-pad:var(--space-3) var(--space-4);--conflict-bar-icon:var(--color-warning);
  --conflict-bar-title-fs:var(--fs-label);--conflict-bar-body-fs:var(--fs-small);

  /* ---- 草稿提示条 ---- */
  --draft-bar-bg:#FBF1DF;--draft-bar-text:#7A5620;--draft-bar-bd:1px solid #E8D6AE;
  --draft-badge-bg:#EFEBE4;--draft-badge-text:#625C52;--draft-saved-text:var(--neutral-500);--draft-saved-fs:var(--fs-micro);

  /* ---- 按钮 ---- */
  --btn-radius:var(--radius-md);--btn-pad-x-mobile:20px;
  --btn-primary-bg:var(--green-600);--btn-primary-text:#FFFFFF;--btn-primary-hover:var(--green-700);
  --btn-primary-active:var(--green-800);--btn-primary-h:var(--btn-h-primary-mobile);
  --btn-secondary-bg:#FFFFFF;--btn-secondary-text:var(--green-700);--btn-secondary-bd:1px solid var(--neutral-200);
  --btn-secondary-hover-bg:var(--green-50);
  --btn-ghost-bg:transparent;--btn-ghost-text:var(--green-700);--btn-ghost-hover-bg:var(--green-50);
  --btn-h:var(--btn-h-mobile);--btn-disabled-bg:var(--neutral-100);--btn-disabled-text:var(--neutral-400);

  /* ---- 表单 ---- */
  --input-bg:#FFFFFF;--input-bd:1px solid var(--neutral-200);--input-h:var(--input-h-mobile);
  --input-radius:var(--radius-md);--input-pad-x:14px;--input-fs:var(--fs-body);
  --input-placeholder:var(--neutral-500);--input-focus-bd:2px solid var(--green-600);
  --input-readonly-bg:var(--color-surface-sunken);--input-readonly-text:var(--neutral-600);
  --input-error-bd:2px solid var(--color-danger);--label-above-gap:var(--space-2);
  --select-chevron:var(--neutral-500);--textarea-min-h:88px;--textarea-max-h:40vh;

  /* ---- 分段控件 ---- */
  --seg-bg:var(--neutral-100);--seg-pad:3px;--seg-radius:var(--radius-pill);--seg-item-radius:var(--radius-pill);
  --seg-item-h:var(--touch-segment-h);--seg-item-text:var(--neutral-600);--seg-item-active-bg:#FFFFFF;
  --seg-item-active-text:var(--green-700);--seg-item-active-shadow:var(--shadow-xs);

  /* ---- 卡片选择器 ---- */
  --card-select-grid-cols:2;--card-select-gap:var(--space-3);--card-select-bg:#FFFFFF;
  --card-select-bd:1px solid var(--neutral-200);--card-select-radius:var(--radius-lg);
  --card-select-pad:var(--space-3) var(--space-4);--card-select-min-h:var(--touch-card-select-min-h);
  --card-select-icon-size:22px;--card-select-label-fs:var(--fs-label);--card-select-hint-fs:var(--fs-micro);
  --card-select-hint-color:var(--neutral-500);--card-select-hover-bd:1px solid var(--green-300);
  --card-select-hover-bg:var(--green-50);--card-select-selected-bd:2px solid var(--green-600);
  --card-select-selected-bg:var(--green-50);--card-select-selected-icon:var(--green-600);
  --card-select-selected-check:var(--green-600);--card-select-check-size:18px;

  /* ---- chip（统一 44px，满足触控下限） ---- */
  --chip-h:44px;--chip-pad-x:14px;--chip-radius:var(--radius-pill);--chip-bg:#FFFFFF;
  --chip-bd:1px solid var(--neutral-200);--chip-text:var(--neutral-700);--chip-fs:var(--fs-small);
  --chip-hover-bg:var(--green-50);--chip-selected-bg:var(--green-100);--chip-selected-bd:1px solid var(--green-300);
  --chip-selected-text:var(--green-800);--chip-gap:var(--space-2);--chip-wrap-gap:var(--space-2) var(--space-2);

  /* ---- 徽章与列表 ---- */
  --badge-radius:var(--radius-pill);--badge-pad-x:8px;--badge-pad-y:3px;--badge-fs:var(--fs-micro);
  --badge-fw:500;--badge-h:20px;
  --badge-status-draft-bg:var(--neutral-100);--badge-status-draft-text:var(--neutral-600);
  --list-item-divider:1px solid var(--neutral-100);--list-meta-fs:var(--fs-small);--list-meta-color:var(--neutral-600);

  /* ---- 搜索 ---- */
  --search-bg:#FFFFFF;--search-bd:1px solid var(--neutral-200);--search-h:var(--input-h-mobile);
  --search-radius:var(--radius-md);--search-icon:var(--neutral-500);

  /* ---- 空态 ---- */
  --empty-icon-color:var(--neutral-300);--empty-title:var(--color-text-secondary);--empty-desc:var(--neutral-500);

  /* ---- 层级 ---- */
  --z-base:0;--z-dropdown:100;--z-sticky:200;--z-modal:300;--z-toast:400;
}