/* ============================================================
   印记账房 · 统一设计令牌（Design Tokens）—— 全站唯一来源
   ------------------------------------------------------------
   主题：ColorOS 17「冷青水凝」流体玻璃
   主色冷青 #0E7C9B，绿色降级为「成功/收入」语义色。
   所有页面（前端 + 后台）只引用这里变量，禁止硬编码色值。
   ============================================================ */
:root{
  /* —— 主色（冷青）—— */
  --green:#0E7C9B;            /* 兼容旧名：主色 */
  --green2:#0A5F78;
  --pale:rgba(34,211,238,.10);

  /* —— 流动光（冷青渐变点缀）—— */
  --flow-a:#22D3EE;
  --flow-b:#0EA5E9;

  /* —— 供货商 / 产品列表 主色（冷青，与主色一致）—— */
  --primary:#0E7C9B;
  --primary-dark:#0A5F78;
  --primary-light:rgba(14,124,155,.10);
  --primary-lighter:rgba(14,124,155,.06);

  /* —— 中性色 —— */
  --ink:#0C1B26;
  --muted:#5A6B78;
  --paper:#F2F6F9;
  --line:#E2E9EF;
  --gray-light:#F3F4F6;
  --star-empty:#D1D5DB;
  --border-light:#F0F0F0;
  --border-green:rgba(14,124,155,.35);

  /* —— 文本层级 —— */
  --text-title:#0C1B26;
  --text-body:#3A4A55;
  --text-sub:#5A6B78;
  --text-placeholder:#8A9AA6;

  /* —— 语义色 —— */
  --orange:#E49B42;
  --red:#D6635C;
  --danger:#DC2626;
  --danger-light:#FEE2E2;
  --success:#059669;          /* 成功/收入，保留绿 */
  --success-light:#DCFCE7;
  --warning:#D97706;
  --warning-light:#FEF3C7;
  --info:#0EA5E9;
  --info-light:#E0F2FE;
  /* 语义色深色变体：作浅底/白底小字文字色时保证对比度≥4.5（饱和色直接作文字色会不足） */
  --success-deep:#047857;
  --warning-deep:#B45309;
  --danger-deep:#B91C1C;
  --info-deep:#0369A1;

  /* —— 品牌 / 语义调色板（页面皮肤统一引用，禁止再硬编码这些色）——
     统一用 --brand-* 前缀，避免与页面本地同名变量（如 .order-builder-dialog 内
     的 --violet/--blue/--pink/--amber）冲突。取值与原硬编码一致（纯收敛，不改观感）。 */
  --brand-green:#0E7C9B;      --brand-green-rgb:14,124,155;
  --brand-green-deep:#0A5F78;
  --brand-cyan:#22D3EE;       --brand-cyan-deep:#0E7490;
  --brand-violet:#7C3AED;     --brand-violet-rgb:124,58,237;
  --brand-violet-deep:#6D28D9;
  --brand-indigo:#4F46E5;     --brand-indigo-rgb:99,102,241;
  --brand-indigo-soft:#6366F1;
  --brand-blue:#2563EB;
  --brand-sky:#0EA5E9;        --brand-sky-deep:#0369A1;   --brand-sky-rgb:14,165,233;
  --brand-sky-bright:#38BDF8;
  --brand-rose:#F43F5E;       --brand-rose-rgb:244,63,94;
  --brand-rose-deep:#E11D48;
  --brand-pink:#DB2777;       --brand-pink-deep:#BE185D;
  --brand-amber:#F59E0B;      --brand-amber-rgb:245,158,11;
  --brand-amber-deep:#B45309;
  --brand-emerald:#10B981;    --brand-emerald-rgb:16,185,129;
  --brand-emerald-deep:#047857;
  --brand-emerald-dark:#065F46;
  --brand-flame:#EA580C;      --brand-flame-rgb:234,88,12;
  --brand-flame-deep:#C2410C;
  --brand-danger-rgb:220,38,38;

  /* —— 表面（玻璃卡片）—— */
  --bg-page:#F2F6F9;
  --glass:rgba(255,255,255,.72);
  --border-glass:rgba(255,255,255,.6);
  --bg-card:rgba(255,255,255,.72);
  --bg-card-hover:rgba(255,255,255,.92);
  --border-card:rgba(255,255,255,.8);

  /* —— 间距（8px 节奏）—— */
  --sp-1:4px;
  --sp-2:8px;
  --sp-3:12px;
  --sp-4:16px;
  --sp-5:20px;
  --sp-6:24px;
  --sp-7:32px;

  /* —— 圆角 —— */
  --radius-lg:20px;
  --radius-md:16px;
  --radius-sm:10px;

  /* —— 阴影 —— */
  --shadow:0 2px 6px rgba(12,27,38,.04),0 14px 34px rgba(12,27,38,.08);
  --shadow-card:0 2px 6px rgba(12,27,38,.04),0 14px 34px rgba(12,27,38,.08);
  --shadow-card-hover:0 8px 18px rgba(12,27,38,.08),0 22px 44px rgba(12,27,38,.10);
  --shadow-btn:0 4px 16px rgba(14,124,155,.3);

  /* —— 字体 —— */
  --font-sans:'Noto Sans SC','PingFang SC','Microsoft YaHei',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-mono:'JetBrains Mono','SF Mono','Consolas',monospace;

  /* —— 缓动 —— */
  --ease:cubic-bezier(.4,0,.2,1);
  --spring:cubic-bezier(.22,1.2,.36,1);

  /* ============================================================
     组件规范令牌（base.css 唯一来源）
     ------------------------------------------------------------
     只定义「尺寸 / 圆角 / 字号」，颜色一律引用上面或 admin 语义令牌。
     页面若需变体，请用 .btn-lg / .btn-sm 等语义类，勿再改基础几何。
     ============================================================ */
  --cmp-btn-h:34px;          /* 按钮 · 默认档 */
  --cmp-btn-h-lg:40px;       /* 按钮 · 大档（弹窗底部主操作） */
  --cmp-btn-h-sm:30px;       /* 按钮 · 小档（分页 / 密集工具条） */
  --cmp-radius:8px;          /* 控件圆角 · 默认 */
  --cmp-radius-lg:10px;      /* 控件圆角 · 大档 */
  --cmp-control-h:36px;      /* 输入框 / 下拉 · 高度 */
  --cmp-dialog-radius:20px;  /* 弹窗面板圆角 */
  --cmp-font:var(--fs-md);   /* 控件字号 = 正文档 */

  /* ============================================================
     字体阶梯（8 档）+ 行高（3 档）—— 全站字号唯一来源
     ------------------------------------------------------------
     页面 CSS 必须写 font-size:var(--fs-*)，不要再写死 px。
     有意保留的例外（不纳入阶梯）：
     · font-size:0（隐藏文本）与 var() 引用；
     · ≥32px 的展示型大字号（KPI 数字 / 头像字形 / 时钟等，
       见 admin-cyber、dashboard-glass、attendance 等）；
     · font-size:1 或 px 行高（字形盒垂直居中用，如 .close、图标位）。
     ============================================================ */
  --fs-xs:10px;     /* 极小 · 角标 / 密集标签 */
  --fs-sm:11px;     /* 小   · 辅助信息 / 徽章 */
  --fs-base:12px;   /* 基准 · 次要文本 / 表格 */
  --fs-md:13px;     /* 正文 · 控件 / 单元格 */
  --fs-lg:14px;     /* 强调正文 / body */
  --fs-xl:16px;     /* 小标题 / 弹窗标题 */
  --fs-2xl:20px;    /* 卡片指标 / 区块标题 */
  --fs-3xl:26px;    /* 页面标题 / 大数字 */
  --lh-tight:1.2;   /* 标题 / 大数字 */
  --lh-normal:1.5;  /* 正文默认 */
  --lh-relaxed:1.7; /* 长段落 / 说明文本 */
}

/* ============================================================
   后台管理台语义令牌（admin 皮肤层唯一来源）
   ------------------------------------------------------------
   admin-cyber.css 只准引用这一组变量，不再硬编码色值。
   做主题切换时，只需覆盖这一组（见下方"主题覆盖区"），
   不必再写一套新 CSS。
   ============================================================ */
:root{
  /* 默认主题 = 暖白商务（warm） */
  /* 工作区表面 */
  --admin-bg:#FAF8F4;
  --admin-bg-glow-1:rgba(14,124,155,.05);
  --admin-bg-glow-2:rgba(228,155,66,.07);
  --admin-surface:#FFFFFF;
  --admin-surface-glass:rgba(255,255,255,.86);
  --admin-surface-hover:#FFFDFA;
  --admin-surface-blur:blur(0px);
  --admin-card-border:#ECE7DE;
  --admin-card-shadow:0 1px 2px rgba(64,54,38,.05);
  --admin-card-shadow-hover:0 12px 30px rgba(64,54,38,.10);
  /* 侧边栏（暖墨 · 保持后台与前台辨识度） */
  --admin-sidebar-start:#1C1915;
  --admin-sidebar-mid:#232019;
  --admin-sidebar-end:#2E2A22;
  --admin-sidebar-text:#F3EEE5;
  --admin-sidebar-text-muted:#A79D8C;
  --admin-sidebar-text-soft:rgba(243,238,229,.68);
  --admin-sidebar-text-dim:rgba(243,238,229,.42);
  --admin-sidebar-active-bg:rgba(34,211,238,.16);
  --admin-sidebar-glow:rgba(228,155,66,.12);
  --admin-sidebar-accent:#22D3EE;
  --admin-sidebar-border:rgba(255,255,255,.08);
  --admin-sidebar-hover-bg:rgba(255,255,255,.06);
  /* 边框 */
  --admin-border:#ECE7DE;
  --admin-border-strong:#DBD3C5;
  --admin-line-soft:#F4F1EB;
  /* 页面级软表面（皮肤层引用，随主题变化）：内嵌浅面 / 深层浅面 / 软边框 */
  --admin-surface-soft:#F7F5F0;
  --admin-surface-soft-2:#F0EDE6;
  --admin-border-soft:#ECE7DE;
  /* 文本层级 */
  --admin-text:#1F1B16;
  --admin-text-muted:#6E675C;
  --admin-text-sub:#9A9184;
  --admin-placeholder:#9A9184;
  --admin-head-text:#8A7F6B;
  /* 科技强调色（随主题，见下方主题覆盖区）—— :root 默认 = 暖白商务（暖琥珀金，深色以保证白字可读） */
  --admin-accent:#B45309;
  --admin-accent-2:#C2410C;
  --admin-accent-3:#92400E;
  --admin-accent-ink:#92400E;
  /* 强调色 RGB 通道（供 rgba 半透明叠加使用） */
  --admin-accent-rgb:180,83,9;
  --admin-accent-2-rgb:194,65,12;
  --admin-accent-3-rgb:146,64,14;
  --admin-accent-ink-rgb:146,64,14;
  --admin-accent-soft:rgba(var(--admin-accent-rgb),.08);
  --admin-accent-soft-2:rgba(var(--admin-accent-2-rgb),.05);
  /* 遮罩 / 提示 / 状态底色 */
  --admin-overlay:rgba(30,24,16,.42);
  --admin-toast-bg:#26211B;
  --admin-info:#2563EB;
  --admin-info-soft:#EBF2FF;
  --admin-success-soft:#E7F8F1;
  --admin-warning-soft:#FEF3E2;
  --admin-danger-soft:#FDEAEA;
  /* 尺寸 */
  --admin-radius-card:16px;
  --admin-radius-btn:8px;
  --admin-shadow-pop:0 24px 64px rgba(12,27,38,.2);
  /* 浮动侧栏：低透明度单层柔和投影 */
  --admin-sidebar-float-shadow:0 12px 32px rgba(16,26,40,.12);
}

/* ============================================================
   主题覆盖区 —— 三套预设
   ------------------------------------------------------------
   切换方式：<body data-theme="warm|glass|darktech">（不写＝warm）。
   只覆盖变量，不改任何结构 / 选择器。
   ============================================================ */

/* —— 暖白商务（默认，显式声明便于代码可读）—— */
body[data-theme="warm"]{
  --admin-bg:#FAF8F4;
  --admin-bg-glow-1:rgba(14,124,155,.05);
  --admin-bg-glow-2:rgba(228,155,66,.07);
  --admin-surface:#FFFFFF;
  --admin-surface-glass:rgba(255,255,255,.86);
  --admin-surface-hover:#FFFDFA;
  --admin-surface-blur:blur(0px);
  --admin-card-border:#ECE7DE;
  --admin-card-shadow:0 1px 2px rgba(64,54,38,.05);
  --admin-card-shadow-hover:0 12px 30px rgba(64,54,38,.10);
  --admin-sidebar-start:#1C1915;
  --admin-sidebar-mid:#232019;
  --admin-sidebar-end:#2E2A22;
  --admin-sidebar-text:#F3EEE5;
  --admin-sidebar-text-muted:#A79D8C;
  --admin-sidebar-text-soft:rgba(243,238,229,.68);
  --admin-sidebar-text-dim:rgba(243,238,229,.42);
  --admin-sidebar-active-bg:rgba(34,211,238,.16);
  --admin-sidebar-glow:rgba(228,155,66,.12);
  --admin-sidebar-accent:#22D3EE;
  --admin-sidebar-border:rgba(255,255,255,.08);
  --admin-sidebar-hover-bg:rgba(255,255,255,.06);
  --admin-border:#ECE7DE;
  --admin-border-strong:#DBD3C5;
  --admin-line-soft:#F4F1EB;
  --admin-surface-soft:#F7F5F0;
  --admin-surface-soft-2:#F0EDE6;
  --admin-border-soft:#ECE7DE;
  --admin-text:#1F1B16;
  --admin-text-muted:#6E675C;
  --admin-text-sub:#9A9184;
  --admin-placeholder:#9A9184;
  --admin-head-text:#8A7F6B;
  --admin-overlay:rgba(30,24,16,.42);
  --admin-toast-bg:#26211B;
  /* 强调色：暖琥珀金（呼应暖白商务；深色以保证白字对比） */
  --admin-accent:#B45309;
  --admin-accent-2:#C2410C;
  --admin-accent-3:#92400E;
  --admin-accent-ink:#92400E;
  --admin-accent-rgb:180,83,9;
  --admin-accent-2-rgb:194,65,12;
  --admin-accent-3-rgb:146,64,14;
  --admin-accent-ink-rgb:146,64,14;
  --admin-sidebar-accent:#C2870B;
}

/* —— 玻璃炫彩（原线上观感：冷青工作区 + 水凝玻璃卡片 + 深青侧栏）—— */
body[data-theme="glass"]{
  --admin-bg:#f5f8f6;
  --admin-bg-glow-1:rgba(14,124,155,.07);
  --admin-bg-glow-2:rgba(14,124,155,.05);
  --admin-surface:rgba(255,255,255,.86);
  --admin-surface-glass:rgba(255,255,255,.72);
  --admin-surface-hover:#FFFFFF;
  --admin-surface-blur:blur(8px);
  --admin-card-border:rgba(120,130,255,.16);
  --admin-card-shadow:0 6px 20px rgba(99,102,241,.08);
  --admin-card-shadow-hover:0 12px 30px rgba(99,102,241,.14);
  --admin-sidebar-start:#0B1E2A;
  --admin-sidebar-mid:#0E2A3A;
  --admin-sidebar-end:#123847;
  --admin-sidebar-text:#e6f2f6;
  --admin-sidebar-text-muted:#9db5a9;
  --admin-sidebar-text-soft:rgba(230,242,234,.66);
  --admin-sidebar-text-dim:rgba(230,242,234,.42);
  --admin-sidebar-active-bg:rgba(14,124,155,.22);
  --admin-sidebar-glow:rgba(14,124,155,.16);
  --admin-sidebar-accent:#22D3EE;
  --admin-sidebar-border:rgba(255,255,255,.08);
  --admin-sidebar-hover-bg:rgba(255,255,255,.06);
  --admin-border:#E5E7EB;
  --admin-border-strong:#D6D8DF;
  --admin-line-soft:#F0F1F4;
  --admin-surface-soft:rgba(255,255,255,.58);
  --admin-surface-soft-2:rgba(255,255,255,.74);
  --admin-border-soft:rgba(120,130,255,.18);
  --admin-text:#15171D;
  --admin-text-muted:#6A7180;
  --admin-text-sub:#9AA0AE;
  --admin-placeholder:#9AA0AE;
  --admin-head-text:#6d75a8;
  --admin-overlay:rgba(12,27,38,.4);
  --admin-toast-bg:#1A1A24;
  /* 强调色：青紫粉（原线上观感，保持不变） */
  --admin-accent:#06b6d4;
  --admin-accent-2:#8b5cf6;
  --admin-accent-3:#ec4899;
  --admin-accent-ink:#0E7490;
  --admin-accent-rgb:6,182,212;
  --admin-accent-2-rgb:139,92,246;
  --admin-accent-3-rgb:236,72,153;
  --admin-accent-ink-rgb:14,116,144;
}

/* —— 深蓝科技（驾驶舱：深蓝侧栏 + 冷灰蓝工作区 + 霓虹青紫）—— */
body[data-theme="darktech"]{
  --admin-bg:#EDF2F9;
  --admin-bg-glow-1:rgba(37,99,235,.08);
  --admin-bg-glow-2:rgba(139,92,246,.07);
  --admin-surface:#FFFFFF;
  --admin-surface-glass:rgba(255,255,255,.9);
  --admin-surface-hover:#F7FAFF;
  --admin-surface-blur:blur(0px);
  --admin-card-border:#D9E3F2;
  --admin-card-shadow:0 1px 2px rgba(15,40,80,.06);
  --admin-card-shadow-hover:0 12px 30px rgba(15,40,80,.14);
  --admin-sidebar-start:#0A1633;
  --admin-sidebar-mid:#0E1F45;
  --admin-sidebar-end:#132A5C;
  --admin-sidebar-text:#DCE6F7;
  --admin-sidebar-text-muted:#8FA2C4;
  --admin-sidebar-text-soft:rgba(220,230,247,.68);
  --admin-sidebar-text-dim:rgba(220,230,247,.45);
  --admin-sidebar-active-bg:rgba(59,130,246,.26);
  --admin-sidebar-glow:rgba(59,130,246,.20);
  --admin-sidebar-accent:#38BDF8;
  --admin-sidebar-border:rgba(255,255,255,.10);
  --admin-sidebar-hover-bg:rgba(255,255,255,.07);
  --admin-border:#D9E3F2;
  --admin-border-strong:#C2D2E8;
  --admin-line-soft:#EDF2F9;
  --admin-surface-soft:#F2F6FC;
  --admin-surface-soft-2:#E8F0FA;
  --admin-border-soft:#D9E3F2;
  --admin-text:#0F1B2D;
  --admin-text-muted:#5A6B85;
  --admin-text-sub:#8A99AF;
  --admin-placeholder:#8A99AF;
  --admin-head-text:#5B76A8;
  --admin-overlay:rgba(10,20,40,.45);
  --admin-toast-bg:#111C33;
  /* 强调色：霓虹蓝紫（呼应深蓝科技） */
  --admin-accent:#3B82F6;
  --admin-accent-2:#8B5CF6;
  --admin-accent-3:#22D3EE;
  --admin-accent-ink:#2563EB;
  --admin-accent-rgb:59,130,246;
  --admin-accent-2-rgb:139,92,246;
  --admin-accent-3-rgb:34,211,238;
  --admin-accent-ink-rgb:37,99,235;
}
