/* Copyright (c) 2026 zenitudeserenity
   All rights reserved.
   设计令牌（dev_docs/upgrade/multi_user/06 §二）。两端共用；管理端 / 用户端只在字号上不同。
   「安静的工具」：纸白、墨蓝、克制、状态一眼可读。对比度数字是实算的（selfcheck 里复算一遍）。 */
:root {
  color-scheme: light;
  --bg: #F6F5F1;  --surface: #FFFFFF;  --surface-2: #EFEDE7;
  --text: #1C1B19;  --text-2: #5B5852;  --text-3: #6F6B63;      /* 15.8 / 6.5 / 4.9 : 1 on bg —— text-3 不许再浅 */
  --line: #E2DFD7;  --line-strong: #8C877D;                       /* 输入框 / 复选框边框 ≥ 3:1（WCAG 1.4.11） */
  --primary: #2B54D9;  --on-primary: #FFFFFF;
  --ok: #1E7F46;  --warn: #9A5B00;  --err: #C2362B;  --focus: #2B54D9;
  --primary-soft: rgb(43 84 217 / .12);  --ok-soft: rgb(30 127 70 / .12);
  --warn-soft: rgb(154 91 0 / .12);  --err-soft: rgb(194 54 43 / .12);
  --scrim: rgb(20 20 18 / .45);
  /* 图表（db_upgrade_plan 05 §五）：系列色按固定顺序分配、不循环；顺序本身是色弱安全的一部分（dataviz 校验器实跑：
     相邻 CVD ΔE ≥ 8.2、正常视觉 ≥ 19、对 surface 全部 ≥ 3:1，selfcheck 复算对比度）。热力图用单色蓝 seq-0 → seq-1 */
  --c1: #2a78d6; --c2: #d4561f; --c3: #12895f; --c4: #5a4ab8; --c5: #a86f00; --c6: #c4407a;
  --c-band: rgb(42 120 214 / .16); --c-grid: #ECEAE4; --seq-0: #DCE9FA; --seq-1: #184f95;

  --font-sans: "PingFang SC", "HarmonyOS Sans SC", "MiSans", "Noto Sans CJK SC", "Microsoft YaHei", system-ui, sans-serif;
  --font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Consolas, monospace;
  /* 用户端字号（手机）。🔴 输入框 ≥ 16px，否则 iOS 聚焦时会自动放大页面 */
  --fs-xs: 13px; --fs-sm: 14px; --fs-md: 16px; --fs-lg: 18px; --fs-xl: 22px; --fs-num: 28px;
  --tap: 48px;                                                      /* 触控目标 */

  --sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px; --sp-5: 24px; --sp-6: 32px; --sp-7: 48px;
  --r-sm: 6px; --r-md: 10px; --r-lg: 16px; --r-full: 999px;
  --shadow-1: 0 1px 2px rgb(0 0 0 / .06);
  --shadow-2: 0 8px 24px rgb(0 0 0 / .12);
  --z-sticky: 10; --z-drawer: 40; --z-dialog: 100; --z-toast: 1000;
  --dur-fast: 150ms; --dur: 200ms; --ease-out: cubic-bezier(.2, .8, .2, 1);
}
/* 管理端：桌面、鼠标、信息密度高 */
:root[data-ui="admin"] { --fs-xs: 12px; --fs-sm: 13px; --fs-md: 14px; --fs-lg: 16px; --fs-xl: 20px; --fs-num: 24px; --tap: 32px; }

/* 深色：跟随系统；「我的 → 外观」可手动选（localStorage，只是个人偏好） */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --bg: #121316; --surface: #1A1C20; --surface-2: #23262B;
    --text: #ECEAE4; --text-2: #A9A59E; --text-3: #8A867F;
    --line: #2E3137; --line-strong: #767B84;
    --primary: #86A6FF; --on-primary: #10162B;
    --ok: #55C78E; --warn: #E5A84A; --err: #F27D72; --focus: #86A6FF;
    --primary-soft: rgb(134 166 255 / .16); --ok-soft: rgb(85 199 142 / .16);
    --warn-soft: rgb(229 168 74 / .16); --err-soft: rgb(242 125 114 / .16);
    --scrim: rgb(0 0 0 / .6);
    --c1: #3987e5; --c2: #d95926; --c3: #199e70; --c4: #9085e9; --c5: #c98500; --c6: #d55181;
    --c-band: rgb(57 135 229 / .22); --c-grid: #2A2D33; --seq-0: #22304A; --seq-1: #86b6ef;
    --shadow-1: 0 1px 2px rgb(0 0 0 / .4); --shadow-2: 0 8px 24px rgb(0 0 0 / .5);
  }
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #121316; --surface: #1A1C20; --surface-2: #23262B;
  --text: #ECEAE4; --text-2: #A9A59E; --text-3: #8A867F;
  --line: #2E3137; --line-strong: #767B84;
  --primary: #86A6FF; --on-primary: #10162B;
  --ok: #55C78E; --warn: #E5A84A; --err: #F27D72; --focus: #86A6FF;
  --primary-soft: rgb(134 166 255 / .16); --ok-soft: rgb(85 199 142 / .16);
  --warn-soft: rgb(229 168 74 / .16); --err-soft: rgb(242 125 114 / .16);
  --scrim: rgb(0 0 0 / .6);
  --shadow-1: 0 1px 2px rgb(0 0 0 / .4); --shadow-2: 0 8px 24px rgb(0 0 0 / .5);
  --c1: #3987e5; --c2: #d95926; --c3: #199e70; --c4: #9085e9; --c5: #c98500; --c6: #d55181;
  --c-band: rgb(57 135 229 / .22); --c-grid: #2A2D33; --seq-0: #22304A; --seq-1: #86b6ef;
}
