/* Pilot 控制台令牌。与官网 landing/style.css 同一套“夜航”配色：近黑底、骨白文字、唯一的信号红（Tinder 红）。 */
:root {
  color-scheme: dark;

  /* ── 背景分层：近黑夜航底色，层级靠明度而非色相 ── */
  --c-bg-sunken:      #070708;
  --c-bg-base:        #0c0c0d;
  --c-bg-surface:     #141416;
  --c-bg-raised:      #1b1b1f;
  --c-bg-overlay:     #17171a;
  --c-bg-hover:       rgba(242,240,234,.05);
  --c-bg-active:      rgba(242,240,234,.09);
  --c-bg-selected:    #1e1e22;
  --c-scrim:          rgba(6,6,7,.72);

  /* ── 边框 ───────────────────────────────────── */
  --c-border:         rgba(242,240,234,.10);
  --c-border-strong:  rgba(242,240,234,.18);
  --c-border-control: rgba(242,240,234,.34);
  --c-border-focus:   var(--red);

  /* ── 文字三级：骨白 ─────────────────────────── */
  --c-text:           #f2f0ea;
  --c-text-muted:     #c4c2bc;
  --c-text-faint:     #8f8d88;
  --c-text-on-accent: #0c0c0d;   /* 压在 warning / danger 实心块上 */
  --c-text-on-primary:var(--on-red);

  /* ── 品牌信号红（Tinder 红）：代表“自动驾驶开启”。
       --red 是深色底上的灯：文字、图标、圆点、描边、焦点环（墨底 5.65，ink-4 上不放小字）。
       --red-cta 是承载文字的实心填充：按钮、实心徽章、::selection、跳转链接，只配白字（4.86）。
       白字绝不压在 --red 上（3.44），墨字绝不压在 --red-cta 上。 ── */
  --red:              #fe3c72;
  --red-cta:          #da1f5a;
  --red-cta-hover:    #c41c52;   /* 悬停 / 按下更深，白字 ≥ 5.7 */
  --on-red:           #ffffff;
  --red-deep:         #b8104a;   /* 浅色表面上的红（纸色 5.44、白 6.54） */
  --red-soft:         rgba(254,60,114,.14);
  --red-ring:         rgba(254,60,114,.34);

  /* 语义别名：--c-primary 是主操作的实心块（配 --c-text-on-primary），
     --c-signal 是深色底上的红色文字、图标与线。 */
  --c-primary:        var(--red-cta);
  --c-primary-hover:  var(--red-cta-hover);
  --c-primary-active: var(--red-cta-hover);
  --c-primary-soft:   var(--red-soft);
  --c-primary-ring:   var(--red-ring);
  --c-signal:         var(--red);
  /* 实心红块（--red-cta）里的焦点环改用白色：红环压在红底上只有 1.41，白色是 4.86。 */
  --c-focus-on-primary:      var(--on-red);
  --c-focus-on-primary-ring: rgba(255,255,255,.35);

  /* 账户入口与官网同一套夜航配色。 */
  --auth-paper:       #0c0c0d;
  --auth-ink:         #f2f0ea;
  --auth-muted:       #9a9893;
  --auth-line:        rgba(242,240,234,.12);
  --auth-sage:        #17171a;
  --auth-error:       #ff7a6b;   /* 错误仍是珊瑚橙红（色相约 5°），与品牌粉红（约 340°）区分，且总配文字 */

  /* ── 语义色：在近黑底上保持 AA 对比 ─────────── */
  /* 成功不再用绿色，也不用红色（红色代表 AI 在工作，珊瑚色代表错误）：
     骨白色，靠文字、对勾和“+”号表达，不只依赖颜色。 */
  --c-success:        #f2f0ea;  --c-success-soft: rgba(242,240,234,.08);
  --c-warning:        #f5c451;  --c-warning-soft: rgba(245,196,81,.12);
  --c-danger:         #ff7a6b;  --c-danger-soft:  rgba(255,122,107,.12);
  --c-danger-strong:  #ff7a6b;
  --c-info:           #7cc4ff;  --c-info-soft:    rgba(124,196,255,.12);

  /* ── 行为来源 / 翻译引擎 ─────────────────────── */
  --c-ai:             var(--red);  --c-ai-soft:  var(--red-soft);
  --c-mt:             #7cc4ff;  --c-mt-soft:     rgba(124,196,255,.12);
  --c-manual:         #c4c2bc;  --c-manual-soft: rgba(242,240,234,.08);

  /* ── 收件箱六态 ─────────────────────────────── */
  --c-state-new:       #7cc4ff;  --c-state-new-soft:       rgba(124,196,255,.12);
  --c-state-review:    #c4c2bc;  --c-state-review-soft:    rgba(242,240,234,.08);
  --c-state-approved:  #f2f0ea;  --c-state-approved-soft:  rgba(242,240,234,.08);
  --c-state-paused:    #f5c451;  --c-state-paused-soft:    rgba(245,196,81,.12);
  --c-state-rejected:  #ff7a6b;  --c-state-rejected-soft:  rgba(255,122,107,.12);
  --c-state-unmatched: #8f8d88;  --c-state-unmatched-soft: rgba(242,240,234,.06);

  /* ── 阶段流水线 ─────────────────────────────── */
  --c-stage-opening:    #7cc4ff;
  --c-stage-rapport:    #c4c2bc;
  --c-stage-attraction: #f5c451;
  --c-stage-escalate:   var(--red);
  --c-stage-custom:     #c9b8ff;
  --c-stage-done:       #8f8d88;
  --c-stage-future:     #3a3a40;

  /* ── 间距（4px 基准） ───────────────────────── */
  --sp-0:  0;     --sp-05: 2px;  --sp-1:  4px;  --sp-2:  8px;
  --sp-3:  12px;  --sp-4:  16px; --sp-5:  20px; --sp-6:  24px;
  --sp-8:  32px;  --sp-10: 40px; --sp-12: 48px; --sp-16: 64px;

  /* ── 圆角 ───────────────────────────────────── */
  --r-xs:  4px;   --r-sm:  8px;   --r-md: 10px;  --r-lg: 14px;
  --r-xl:  18px;  --r-pill: 999px; --r-circle: 50%;

  /* ── 字体 ───────────────────────────────────── */
  /* Archivo 承担拉丁字形，汉字等其他文字回落系统字体；不再使用衬线。 */
  --font-sans: "Archivo", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
               "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans CJK SC",
               "Noto Sans SC", system-ui, sans-serif;
  --font-display: var(--font-sans);
  --font-serif: var(--font-sans);
  --font-mono: "Geist Mono", ui-monospace, SFMono-Regular, "Cascadia Mono", Consolas,
               "Liberation Mono", "Noto Sans Mono CJK SC", monospace;

  --fs-11: 11px;  --fs-12: 12px;  --fs-13: 13px;  --fs-14: 14px;
  --fs-16: 16px;  --fs-18: 18px;  --fs-22: 22px;  --fs-28: 28px;

  --lh-tight: 1.25;  --lh-snug: 1.4;  --lh-normal: 1.55;  --lh-loose: 1.7;
  --fw-regular: 400; --fw-medium: 500; --fw-semibold: 600; --fw-bold: 700;
  --ls-tight: -0.01em; --ls-normal: 0; --ls-wide: 0.04em;

  /* ── 阴影（只给浮层） ───────────────────────── */
  --shadow-sm:   0 1px 2px rgba(0,0,0,.4);
  --shadow-md:   0 12px 32px -8px rgba(0,0,0,.6);
  --shadow-lg:   0 30px 80px -20px rgba(0,0,0,.75);
  --shadow-ring: 0 0 0 3px var(--c-primary-ring);

  /* ── 动效 ───────────────────────────────────── */
  --dur-fast: 120ms;  --dur-base: 180ms;  --dur-slow: 280ms;
  --ease-out: cubic-bezier(.16,1,.3,1);
  --ease-in-out: cubic-bezier(.4,0,.2,1);

  /* ── 层级 ───────────────────────────────────── */
  --z-base: 0;    --z-sticky: 10;   --z-dropdown: 100;  --z-scrim: 200;
  --z-modal: 210; --z-toast: 300;   --z-tooltip: 400;

  /* ── 组件尺寸 ───────────────────────────────── */
  --h-control-sm: 32px;
  --h-control:    36px;
  --h-control-lg: 42px;
  --h-touch:      44px;   /* 移动端最小命中区（§10.3） */
  --h-topbar:     56px;
  --h-tabbar:     56px;   /* 移动端底部导航 */

  --w-sidebar:      248px;
  --w-sidebar-mini: 64px;  /* 平板折叠态，只留图标 */
  --w-convlist:     320px; /* 会话中心左栏 */
  --w-modal-sm:     400px;
  --w-modal:        560px;
  --w-modal-lg:     760px;
  --w-content-max:  1440px;

  --card-min:         272px;  /* 收件箱卡片最小宽，配合 auto-fill */
  --card-photo-ratio: 4 / 5;  /* 匹配卡片照片区宽高比 */

  --avatar-sm: 24px;  --avatar: 36px;  --avatar-lg: 48px;  --avatar-xl: 72px;

  --bubble-max:   min(560px, 74%);
  --bubble-pad-y: var(--sp-2);
  --bubble-pad-x: var(--sp-3);

  --focus-ring-width: 2px;
  --scrollbar-w:      10px;

  /* ── 断点（JS 用 matchMedia 读同一组数值） ────── */
  --bp-sm: 600px;  --bp-md: 900px;  --bp-lg: 1200px;  --bp-xl: 1600px;
}
