/* ============================================================
   一号车间 Workshop OS · 设计令牌 (Design Tokens)
   —— 唯一的视觉真相来源。所有颜色/间距/圆角/阴影/字阶均在此定义。
   主题：暖石墨 (warm graphite) + 琥珀橙 (amber) · 工业现代风
   ============================================================ */
:root{
  /* ===== 令牌:颜色 ===== */
  --accent:#0E9C82; /* 品牌主行动色·薄荷青绿 */
  --accent-2:#B97A14; /* 品牌高亮辅助色·暖金点缀 */
  --accent-soft:#E4F5F0; /* 品牌浅底提示色·薄荷浅底 */
  --accent-ink:#0A6B5A; /* 品牌深色文字·松绿 */
  --bg:#F4F8F6; /* 页面主背景·薄荷灰白 */
  --bg-2:#EDF3F0; /* 次级背景与悬停底·薄荷灰阶 */
  --card:#FFFFFF; /* 卡片与输入表面 */
  --rail:#0F3B34; /* 侧栏主背景·墨绿 */
  --rail-2:#164A41; /* 侧栏选中背景·深松绿 */
  --line:#E4ECE8; /* 基础分割线·薄荷 */
  --line-2:#D3E0DB; /* 强调分割线·薄荷 */
  --ink:#22302C; /* 主文字·墨绿灰 */
  --ink-2:#5F6F6A; /* 次级文字·青灰 */
  --ink-3:#95A6A0; /* 弱提示文字·浅青灰 */
  --ink-inv:#F4F1EB; /* 深色底反白文字 */
  --blue:#3E7DC4; /* 图表与状态蓝 */
  --violet:#7A5AC8; /* 图表与状态紫 */
  --teal:#0FA3A3; /* 图表与状态青 */
  --rose:#C74459; /* 错误与危险状态 */
  --green:#3F8F4A; /* 成功与上升状态 */
  --slate:#64748B; /* 中性状态色 */

  /* ===== 令牌:间距 ===== */
  --sp-0:0px; /* 零间距 */
  --sp-1:1px; /* 发丝线与细分隔 */
  --sp-2:2px; /* 微调位移 */
  --sp-3:3px; /* 紧邻文本间距 */
  --sp-4:4px; /* 超紧凑间距 */
  --sp-5:5px; /* 徽标内距 */
  --sp-6:6px; /* 小型控件间距 */
  --sp-7:7px; /* 表单标签间距 */
  --sp-8:8px; /* 紧凑间距·图标与文字 */
  --sp-9:9px; /* 按钮内容间距 */
  --sp-10:10px; /* 小面板内距 */
  --sp-11:11px; /* 导航行内距 */
  --sp-12:12px; /* 常规紧凑内距 */
  --sp-13:13px; /* 表格行内距 */
  --sp-14:14px; /* 面板局部内距 */
  --sp-15:15px; /* 头像与输入尺寸 */
  --sp-16:16px; /* 标准栅格间距 */
  --sp-18:18px; /* 卡片中等内距 */
  --sp-20:20px; /* 页面模块间距 */
  --sp-22:22px; /* 抽屉头部内距 */
  --sp-24:24px; /* 主区页面边距 */
  --sp-26:26px; /* 表单分节上距 */
  --sp-30:30px; /* 登录副标题下距 */
  --sp-32:32px; /* 浮层底部偏移 */
  --sp-34:34px; /* 小图标容器尺寸 */
  --sp-36:36px; /* 图标按钮尺寸 */
  --sp-38:38px; /* KPI 图标尺寸 */
  --sp-40:40px; /* 大图标容器尺寸 */
  --sp-44:44px; /* 登录品牌徽标尺寸 */
  --sp-56:56px; /* 登录大屏页边距 */
  --sp-60:60px; /* 外壳顶栏高度 */

  /* ===== 令牌:圆角与阴影 ===== */
  --shadow:0 1px 2px rgba(33,31,27,.05),0 8px 24px -12px rgba(33,31,27,.14); /* 基础卡片投影 */
  --shadow-lg:0 12px 40px -14px rgba(33,31,27,.28); /* 抽屉与弹层投影 */
  --shadow-sm:none; /* 轻量投影占位·保持基线无投影 */
  --shadow-brand-badge:0 8px 24px -6px rgba(14,156,130,.6); /* 品牌徽标投影 */
  --shadow-focus-ring:0 0 0 4px var(--accent-soft); /* 输入聚焦光晕 */
  --shadow-btn-solid:0 6px 16px -8px rgba(14,156,130,.7); /* 实心按钮投影 */
  --shadow-btn-primary:0 10px 24px -10px rgba(14,156,130,.7); /* 登录主按钮投影 */
  --shadow-btn-primary-hover:0 14px 30px -10px rgba(14,156,130,.8); /* 登录主按钮悬停投影 */
  --shadow-switch-knob:0 1px 3px rgba(0,0,0,.3); /* 开关圆点投影 */
  --shadow-timeline-dot:0 0 0 2px var(--line-2); /* 时间轴节点外环 */
  --r:14px; /* 标准卡片圆角 */
  --r-sm:10px; /* 小型控件圆角 */
  --r-pill:999px; /* 胶囊圆角 */
  --radius-2:2px; /* 细线圆角 */
  --radius-3:3px; /* 点状标识圆角 */
  --radius-6:6px; /* 图片与小票圆角 */
  --radius-8:8px; /* 分页与叶子项圆角 */
  --radius-9:9px; /* 侧栏按钮圆角 */
  --radius-11:11px; /* KPI 图标圆角 */
  --radius-12:12px; /* 品牌徽标圆角 */
  --radius-16:16px; /* 大弹层备用圆角 */

  /* ===== 令牌:字阶 ===== */
  --sans:"PingFang SC","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; /* 全局无衬线字体 */
  --fs-9:9px; /* 侧栏英文副标 */
  --fs-10:10px; /* 分组小标题 */
  --fs-10-5:10.5px; /* 导航分组标题 */
  --fs-11:11px; /* 用户角色小字 */
  --fs-11-5:11.5px; /* 规格标签小字 */
  --fs-12:12px; /* 徽标与图表小字 */
  --fs-12-5:12.5px; /* 表单标签与工具文字 */
  --fs-13:13px; /* 表格与按钮文字 */
  --fs-13-5:13.5px; /* 导航与输入辅助文字 */
  --fs-14:14px; /* 正文默认字号 */
  --fs-15:15px; /* 顶栏标题与输入文字 */
  --fs-16:16px; /* 卡片段落标题 */
  --fs-17:17px; /* 侧栏徽标图标 */
  --fs-18:18px; /* 金额强调文字 */
  --fs-19:19px; /* 登录品牌名称 */
  --fs-20:20px; /* 报价合计金额 */
  --fs-22:22px; /* 页面标题与流程数字 */
  --fs-26:26px; /* 登录卡片标题 */
  --fs-28:28px; /* KPI 主数值 */
  --fs-46:46px; /* 登录页主标题 */
}
:root[data-theme="dark"]{
  --accent:#17B399; /* 暗色品牌主色·提亮薄荷 */
  --bg:#0E1613; /* 暗色页面主背景·墨绿 */
  --bg-2:#16201C; /* 暗色次级背景·松绿 */
  --card:#1A241F; /* 暗色卡片表面·松绿 */
  --rail:#0A1310; /* 暗色侧栏主背景·深墨绿 */
  --rail-2:#122019; /* 暗色侧栏选中背景·深松绿 */
  --line:#28322D; /* 暗色基础分割线·墨绿 */
  --line-2:#33403A; /* 暗色强调分割线·松绿 */
  --ink:#EDEAE3; /* 暗色主文字 */
  --ink-2:#B4AEA2; /* 暗色次级文字 */
  --ink-3:#807A6E; /* 暗色弱提示文字 */
  --ink-inv:#EDEAE3; /* 暗色反白文字 */
  --accent-soft:#123B32; /* 暗色品牌浅底·松绿 */
  --shadow:0 1px 2px rgba(0,0,0,.4),0 10px 30px -14px rgba(0,0,0,.6); /* 暗色基础卡片投影 */
  --shadow-lg:0 16px 50px -16px rgba(0,0,0,.7); /* 暗色抽屉与弹层投影 */
  --shadow-sm:none; /* 暗色轻量投影占位·保持基线无投影 */
}

/* 复位 */
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:99px;border:3px solid transparent;background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}
.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
