/* ============================================================
   扶摇鲲 Design Tokens 4.0 —— 样式唯一权威源
   来源：01_前端体验设计细节方案_4.0 §2.1（逐字落地，零修改）
   ============================================================ */
:root{
  /* ===== 品牌色（VI v1.2 唯一权威） ===== */
  --c-cyan:#06D6C8; --c-blue:#3BA4FA; --c-violet:#6E52F5;
  --c-deep:#0B1B33; --c-coral:#FF6B4A;            /* 点睛 ≤5% */
  /* ===== 配图 SVG 扩展色（media-svg-gen.js 既成事实值） ===== */
  --c-ink-strong:#1d2b3a; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  --c-ink-muted:#5d6f82; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  --c-teal:#2f8f83; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  --c-bg-soft:#f6f4ef; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  /* ===== 墨色与中性色 ===== */
  --ink-900:#1A1A1E; --ink-700:#3A3A42; --ink-muted-strong:#6E6E78;
  --n-500:#9A9AA5; --n-300:#C9C9D1; --n-100:#EFEFF2; --n-0:#FFFFFF;
  /* N626（2026-09-19）：补齐 --n-200——页内联样式多处引用 var(--n-200) 而本表未定义，
     致 border 声明整体失效＝输入框无边框（京研社手机实测问题②根因）。
     取值 #E3E3E8＝各页既有 fallback 的既成事实值（my-accounts/onboarding/ops-config
     的 var(--n-200,#e3e3e8)），定义后这些页渲染逐字节不变，仅修复无 fallback 的引用处。 */
  --n-200:#E3E3E8;
  --n-600:#6B6B76; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  --n-900:#1b1b1f; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  /* ===== 语义色 ===== */
  --ok:#00C48F; --info:#3BA4FA; --warn:#FFB020; --warn-deep:#B07500; --err:#F04452;
  --warn-ink:#8a6100; /* P4-1二批：警示态深字色·值=diag 既成事实字面量·暗场不重定义 */
  --teal-ink:#00735F; /* P4-1三批：teal 态深字色·值=components.css/onboarding/customer-flow 既成事实字面量·暗场不重定义 */
  --err-12:rgba(240,68,82,.12); /* P4-1三批：err 态 12% tint 底·值=components.css/customer-flow 既成事实字面量·暗场不重定义 */
  --violet-12:rgba(110,82,245,.12); --teal-12:rgba(6,214,200,.12);
  --violet-500:#7c5cff; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  --violet-deep:#5A3FCF; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  /* ===== 数据可视化扩展色板（序列 6 色） ===== */
  --chart-1:#06D6C8; --chart-2:#3BA4FA; --chart-3:#6E52F5;
  --chart-4:#9A9AA5; --chart-5:#FFB020; --chart-6:#F04452;
  /* ===== 字体阶梯（1.333 比例，8 级） ===== */
  --font-sans:"Inter","Source Han Sans SC","Noto Sans SC",sans-serif;
  --font-mono:"JetBrains Mono",monospace;
  --text-xs:12px; --text-sm:13px; --text-base:14px; --text-lg:16px;
  --text-xl:18px;   /* 162 批1 P0-1（2026-10-15）悬空令牌补册：workbench.html .fkwo-title 引用而全仓未定义 ⇒ 标题塌成继承 14px；取值＝lg(16)与 h4(20)之间的 18px（来源：F1 §三 P0-1 建议值，字号阶原 8 级零改动） */
  --text-h4:20px; --text-h3:24px; --text-h2:32px; --text-h1:40px;
  --lh-body:1.7;
  /* ===== 间距栅格（4px 基网，仅允许以下刻度） ===== */
  --sp-1:4px; --sp-2:8px; --sp-3:16px; --sp-4:24px; --sp-5:32px; --sp-6:48px;
  /* ===== 圆角与 elevation ===== */
  --r-sm:6px; --r-md:12px; --r-lg:16px; --r-pill:999px;
  /* DR-1006 设计改版试点批·思路⑤：阴影 y 偏移为主（光从上方来）——两层结构：近层小 y 小模糊贴地，远层大 y；
     改值清单见 design_revamp_20261006/00_设计规范_v0.1.md（亮暗双值同批改）。 */
  --shadow-card:0 1px 2px rgba(11,27,51,.06),0 6px 12px -4px rgba(11,27,51,.08);
  --shadow-pop:0 2px 6px rgba(11,27,51,.08),0 14px 28px -6px rgba(11,27,51,.14);
  --shadow-elev:0 4px 10px rgba(11,27,51,.10),0 26px 50px -10px rgba(11,27,51,.18);
  --shadow-cta:0 4px 12px rgba(11,27,51,.18); /* DR-1006 思路⑤：主按钮下偏投影（暗值见暗色块） */
  /* ===== 渐变（唯一主渐变，方向恒 22°） ===== */
  --grad-brand:linear-gradient(22deg,#06D6C8,#3BA4FA 52%,#6E52F5);
  --grad-soft:linear-gradient(22deg,rgba(6,214,200,.08),rgba(110,82,245,.08));
  /* ===== 动效 ===== */
  --dur-1:.12s; --dur-2:.2s; --ease:cubic-bezier(.22,1,.36,1);
  --skel:linear-gradient(90deg,#EEF1F6 25%,#E3EAF3 50%,#EEF1F6 75%);
  /* ===== focus / z-index ===== */
  --focus:0 0 0 3px rgba(59,164,250,.35);
  --z-nav:50; --z-toast:99; --z-drawer:100; --z-modal:200;
  --z-pop:60; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  /* ===== 卡片底色（浅色组；暗色组在下方整组替换） ===== */
  --card-bg:#FFFFFF; --card-line:var(--n-100);
  --card-bg-flat:#F2F4F7; /* DR-1006 思路②：无框卡/嵌套层的底色分隔（暗值见暗色块） */
  --page-bg:#F7F8FA;
  --surface:#fff; /* P4-1 悬空令牌补册·值=既成事实 fallback·渲染零变化 */
  /* ===== DR-1006 设计改版试点批新增（2026-10-06·全部亮暗双值，暗值见 [data-theme="dark"] 块） ===== */
  --on-accent:#FFFFFF;              /* 思路④：彩色/深色底上的主文字＝纯白，不用灰字 */
  --on-accent-dim:rgba(255,255,255,.75);  /* 思路④：彩底次级文字＝调低透明度白 */
  --on-accent-faint:rgba(255,255,255,.55);/* 思路④：彩底三级文字（仅 ≥16px 装饰性场景） */
  --accent-line:#06D6C8;            /* 思路⑦：彩色强调边线（提示框侧边/选中项），暗值提亮见暗块 */
  --icon-plate:var(--n-100);        /* 思路⑥：小图标背景形状容器底色，暗值见暗块 */
}
/* ===== 暗色主题（整组变量替换，不写双份样式） ===== */
[data-theme="dark"]{
  --ink-900:#FFFFFF; --ink-700:#C9C9D1; --ink-muted-strong:#9A9AA5;
  --n-100:rgba(255,255,255,.06); --n-0:#0B1B33;
  --n-200:rgba(255,255,255,.16); /* N626：暗场同档补齐（比 card-line 略强，保证输入框可感知） */
  --card-bg:rgba(255,255,255,.06); --card-line:rgba(255,255,255,.08);
  --card-bg-flat:rgba(255,255,255,.03); /* DR-1006 思路②暗值：无边框卡靠底色分层 */
  --page-bg:#081426;
  /* DR-1006 思路⑤暗值：同构 y 偏移为主，暗场加深不透明度补对比 */
  --shadow-card:0 1px 2px rgba(0,0,0,.35),0 6px 12px -4px rgba(0,0,0,.40);
  --shadow-pop:0 2px 6px rgba(0,0,0,.40),0 14px 28px -6px rgba(0,0,0,.45);
  --shadow-elev:0 4px 10px rgba(0,0,0,.45),0 26px 50px -10px rgba(0,0,0,.50);
  --shadow-cta:0 4px 12px rgba(0,0,0,.45); /* DR-1006 思路⑤暗值 */
  /* DR-1006 新增令牌暗值（思路④⑥⑦）：白字系在彩底上主题无关，仍显式给值防旁路 */
  --on-accent:#FFFFFF; --on-accent-dim:rgba(255,255,255,.75); --on-accent-faint:rgba(255,255,255,.55);
  --accent-line:#1ADBA8;             /* 暗场提亮（沿 --ok 暗值提亮先例） */
  --icon-plate:rgba(255,255,255,.10);
  --ok:#1ADBA8; --info:#5FB6FB; --warn:#FFC14D; --err:#FF6B7E;
  --skel:linear-gradient(90deg,rgba(255,255,255,.05) 25%,rgba(255,255,255,.1) 50%,rgba(255,255,255,.05) 75%);
}
/* ============================================================
   H5-MOBILE 批移动断点（2026-09-25）—— ≤1023px 字号阶梯与间距栅格收一档
   口径：只换 token 值，不在页面写双份样式（唯一真源）
   判据：≥1024px 渲染逐字节不变——本块在该区间不生效
   变更：标题 h1 40→32／h2 32→24（h3 24／h4 20 维持不动，防小屏层级倒挂）
         大间距 --sp-5 32→24／--sp-6 48→32（屏幕侧呼吸位收紧，触控位不受影响）
   ============================================================ */
@media(max-width:1023px){
  :root{
    --text-h1:32px; --text-h2:24px;
    --sp-5:24px; --sp-6:32px;
  }
}

/* ============================================================
   DR-1006 v0.2 批β·Token 追加组（2026-10-06 京研社批复 om_x100b637f8f3c20a0c4a2fa8960b8dca）
   依据：design_revamp_20261006/00_设计规范_v0.2.md §3 ＋ 12 号件 §4.2。
   纪律：只追加不改既有行；色值仅本处定义（定义即真源），组件层零裸 hex 消费本组。
   ============================================================ */
:root{
  /* B. tint 三级底（分隔靠底色阶不靠 1px 线；导航选中/hover=tint-2，选中顶档=tint-3） */
  --tint-1:rgba(11,27,51,.03);
  --tint-2:rgba(11,27,51,.05);
  --tint-3:rgba(11,27,51,.08);
  /* D. 玻璃拟态（仅浮层与 AI 侧栏；-l/-d 成对命名即双值机制，消费侧按主题择一） */
  --glass-bg-l:rgba(255,255,255,.74);
  --glass-bg-d:rgba(20,24,32,.72);
  --glass-blur:saturate(180%) blur(14px);
  /* E. 辉光（--glow-cta-l 唯一 primary 专用；--glow-brand 仅暗主题启用，亮色=none） */
  --glow-cta-l:0 0 0 1px rgba(6,214,200,.28),0 6px 28px -8px rgba(6,214,200,.55);
  --glow-brand:none;
  /* A. 渐变激活（进度叙事条；暗主题同型提亮 8% 见下方暗块） */
  --grad-stage:linear-gradient(90deg,#06D6C8,#3BA4FA,#6E52F5);
  /* F. 图表面（图表网格线与面积填充底；描边配 --grad-brand） */
  --chart-grid:rgba(11,27,51,.06);
  --chart-surface:rgba(6,214,200,.10);
  /* G. 圆角升档（主卡=--r-card；hero/空态插画容器=--r-xl） */
  --r-card:16px;
  --r-xl:20px;
  /* C. 微动效（--ease-spring 仅 ≤4px 位移/缩放小反馈，禁布局级动画；--stagger-1..4 入场级联） */
  --dur-3:.32s;
  --ease-spring:cubic-bezier(.34,1.56,.64,1);
  --stagger-1:.04s; --stagger-2:.08s; --stagger-3:.12s; --stagger-4:.16s;
}
/* 暗色对应值（tint 三档／glow 两支／grad-stage／chart 两面在本块变化值）：
   --glow-cta-l 暗值沿 --accent-line 暗场提亮先例（#1ADBA8 同色相）；
   --chart-surface 暗值同例提亮防暗场沉没。
   主题无关量（显式继承声明：亮暗同值，本块不重复定义即继承 :root）——
   --glass-bg-l/--glass-bg-d（-l/-d 成对即双值）／--glass-blur／--r-card／--r-xl／
   --dur-3／--ease-spring／--stagger-1..4。 */
[data-theme="dark"]{
  --tint-1:rgba(255,255,255,.04);
  --tint-2:rgba(255,255,255,.07);
  --tint-3:rgba(255,255,255,.10);
  --glow-cta-l:0 0 0 1px rgba(26,219,168,.32),0 6px 28px -8px rgba(26,219,168,.60);
  --glow-brand:0 0 24px rgba(6,214,200,.22);
  --grad-stage:linear-gradient(90deg,#1AD9CC,#4BABFA,#7A60F6);
  --chart-grid:rgba(255,255,255,.08);
  --chart-surface:rgba(26,219,168,.12);
}
