/* ==========================================================================
   LYSVAL 儿童乐园 · 设计令牌 tokens.css（R11 新增）
   --------------------------------------------------------------------------
   定位：全站「单一事实来源」。所有色值 / 圆角 / 间距 / 阴影 / 字号 / 断点
   收敛到本文件的 CSS 自定义属性，组件只引用变量、不再写死。

   与现有 style_20261112_1035.css 的 :root 变量保持同名兼容：
   本文件被引入时排在 style 之前，不覆盖其已有定义；后续迁移时逐项
   把硬编码值替换成这里的语义令牌。

   断点系统（全站唯一，替代旧的 640/700/720/760/899/900/1024 混杂断点）：
     --bp-sm  640px   手机
     --bp-md  1024px  平板（含 orientation:portrait 特判）
     桌面 =  > 1024px
   LYSVAL注释：断点收敛后，旧样式里零散的 @media 值在迁移时逐个替换成
   var(--bp-*) / 语义类，勿再新增 700/720/760/899/900 这类中间值。
   ========================================================================== */

:root {
  /* ---- 色板（与现有 :root 同名兼容，浅色） ---- */
  --bg: #f2f7fd;
  --bg2: #e6f1ff;
  --panel: #ffffff;
  --panel2: #f6faff;
  --text: #14243b;
  --dim: #5d7390;
  --line: #d9e6f5;
  --brand: #0ea5e9;
  --brand2: #6366f1;
  --accent: #f7c948;
  --good: #16a34a;
  --bad: #e11d48;
  --grad: linear-gradient(120deg, #0ea5e9, #6366f1);

  /* ---- 新增语义色（把散落硬编码收敛到这里） ---- */
  --warn: #f59e0b;          /* 提醒橙（原 #f59e0b / #f97316 一类） */
  --warn-strong: #ea580c;
  --info: #38bdf8;          /* 信息蓝（原 #38bdf8 / #22d3ee） */
  --sun: #fde047;           /* 高亮黄（原 #fde047 / #facc15 / #ffd166） */
  --rose: #fb7185;          /* 玫红（原 #fb7185 / #f4a7b9） */
  --violet: #a78bfa;        /* 浅紫（原 #a78bfa） */
  --brown: #5c3b16;         /* 木质棕（原 #5c3b16 / #3b2a08 / #8d6230） */
  --foot-bg: #070b12;       /* 页脚底（原 #070b12 / #04121e） */
  --foot-text: #8fa3bd;     /* 页脚文字（原 #8fa3bd / #9fb4cc） */

  /* ---- 圆角阶梯 ---- */
  --radius-xs: 8px;
  --radius-sm: 12px;
  --radius: 18px;
  --radius-lg: 24px;
  --radius-pill: 999px;

  /* ---- 间距阶梯 ---- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;

  /* ---- 阴影阶梯 ---- */
  --shadow: 0 10px 30px rgba(20, 60, 110, .10);
  --shadow2: 0 4px 14px rgba(20, 60, 110, .08);
  --shadow-pop: 0 20px 50px rgba(0, 0, 0, .2);

  /* ---- 字号阶梯 ---- */
  --fs-xs: 11px;
  --fs-sm: 13px;
  --fs-base: 15px;
  --fs-md: 18px;
  --fs-lg: 22px;
  --fs-xl: 28px;
  --fs-2xl: 40px;

  /* ---- 断点（只读语义，媒体查询里不能用 var()，作为文档/JS 读取用） ---- */
  --bp-sm: 640px;
  --bp-md: 1024px;

  /* ---- 电路实验台极性色（受保护约定，勿改语义） ---- */
  --pol-plus: #e11d48;
  --pol-minus: #2563eb;
  --pol-com: #d97706;
  --pol-a: #16a34a;
  --pol-b: #7c3aed;
  --pol-c: #0891b2;
  --grid-line: rgba(40, 100, 170, .075);
}

html[data-theme="dark"] {
  --bg: #07111e;
  --bg2: #0c1c30;
  --panel: #102237;
  --panel2: #142c45;
  --text: #eaf4ff;
  --dim: #9db4ce;
  --line: #24405d;
  --brand: #38bdf8;
  --brand2: #a78bfa;
  --accent: #fbbf24;
  --good: #4ade80;
  --bad: #fb7185;
  --grad: linear-gradient(120deg, #0284c7, #7c3aed);

  --warn: #fbbf24;
  --warn-strong: #fb923c;
  --info: #22d3ee;
  --sun: #fde047;
  --rose: #fb7185;
  --violet: #c084fc;
  --brown: #d9a86b;
  --foot-bg: #050a12;
  --foot-text: #9db4ce;

  --shadow: 0 10px 30px rgba(0, 0, 0, .35);
  --shadow2: 0 4px 14px rgba(0, 0, 0, .28);
  --shadow-pop: 0 20px 50px rgba(0, 0, 0, .55);

  --pol-plus: #fb7185;
  --pol-minus: #60a5fa;
  --pol-com: #fbbf24;
  --pol-a: #4ade80;
  --pol-b: #c084fc;
  --pol-c: #22d3ee;
  --grid-line: rgba(80, 140, 220, .055);
  color-scheme: dark;
}
