/* ─────────────────────────────────────────────
   设计令牌 · Circuit Night（默认深色）/ Daylight（浅色）
   组件只用令牌，不写死颜色。
   ───────────────────────────────────────────── */
:root {
  --font: "MiSans", "PingFang SC", "Microsoft YaHei", "HarmonyOS Sans SC", system-ui, sans-serif;
  --display: "Space Grotesk", "MiSans", "PingFang SC", "Microsoft YaHei", sans-serif;
  --mono: "JetBrains Mono", Consolas, "SF Mono", ui-monospace, monospace;

  --r-xs: 8px; --r-sm: 12px; --r: 16px; --r-lg: 20px; --r-xl: 28px;
  --sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px; --sp-5: 20px; --sp-6: 24px; --sp-8: 32px; --sp-10: 40px;
  --side-w: 248px;
  --ease: cubic-bezier(.2,.8,.2,1);

  /* 板卡专属色（两套主题共用） */
  --fam-esp32: #38BDF8;
  --fam-avr: #14B8A6;
  --fam-stm32: #6366F1;
  --fam-ros: #76B900;
  --fam-custom: #F472B6;

  /* ── Circuit Night（默认）── */
  --bg: #0B1020;
  --bg-2: #0E1428;
  --surface: #121A2E;
  --raised: #1A2440;
  --raised-2: #212D4D;
  --line: #26314F;
  --line-soft: rgba(230,234,242,.06);
  --txt: #E6EAF2;
  --txt-2: #B7C0D4;
  --mute: #8A94AD;
  --acc: #22D3EE;
  --acc-2: #8B5CF6;
  --acc-soft: rgba(34,211,238,.12);
  --acc-2-soft: rgba(139,92,246,.14);
  --on-acc: #04121A;
  --ok: #34D399; --ok-soft: rgba(52,211,153,.13);
  --warn: #FBBF24; --warn-soft: rgba(251,191,36,.13);
  --err: #F87171; --err-soft: rgba(248,113,113,.13);
  --coral: #FF7A59; --amber: #F59E0B; --mint: #10B981; --violet: #A78BFA; --cyan: #22D3EE;
  --grad: linear-gradient(135deg, #22D3EE 0%, #8B5CF6 100%);
  --grad-soft: linear-gradient(135deg, rgba(34,211,238,.18) 0%, rgba(139,92,246,.18) 100%);
  --glow: 0 0 0 1px rgba(34,211,238,.35), 0 10px 40px -10px rgba(34,211,238,.35);
  --shadow: 0 1px 0 rgba(255,255,255,.04) inset, 0 12px 32px -18px rgba(0,0,0,.7);
  --shadow-lg: 0 30px 80px -30px rgba(0,0,0,.8);
  --code-bg: #0A0F1D;
  --kw: #C4B5FD; --str: #86EFAC; --num: #FCD34D; --fn: #67E8F9; --cm: #64748B; --pp: #F9A8D4;
  --scrim: rgba(3,6,14,.62);
  --grid-line: rgba(138,148,173,.07);
  color-scheme: dark;
}

:root[data-theme="day"] {
  --bg: #F6F7FB;
  --bg-2: #EEF1F8;
  --surface: #FFFFFF;
  --raised: #F8FAFD;
  --raised-2: #EEF2FA;
  --line: #E6E8F0;
  --line-soft: rgba(17,24,39,.05);
  --txt: #111827;
  --txt-2: #374151;
  --mute: #6B7280;
  --acc: #4F46E5;
  --acc-2: #0EA5E9;
  --acc-soft: rgba(79,70,229,.09);
  --acc-2-soft: rgba(14,165,233,.1);
  --on-acc: #FFFFFF;
  --ok: #059669; --ok-soft: rgba(16,185,129,.12);
  --warn: #B45309; --warn-soft: rgba(245,158,11,.14);
  --err: #DC2626; --err-soft: rgba(239,68,68,.1);
  --coral: #F0643F; --amber: #D97706; --mint: #059669; --violet: #7C3AED; --cyan: #0891B2;
  --grad: linear-gradient(135deg, #4F46E5 0%, #0EA5E9 100%);
  --grad-soft: linear-gradient(135deg, #EEF2FF 0%, #FDF2F8 100%);
  --glow: 0 0 0 1px rgba(79,70,229,.3), 0 12px 30px -12px rgba(79,70,229,.35);
  --shadow: 0 1px 2px rgba(17,24,39,.04), 0 10px 28px -16px rgba(17,24,39,.18);
  --shadow-lg: 0 30px 70px -30px rgba(17,24,39,.35);
  --code-bg: #0F172A;
  --scrim: rgba(15,23,42,.38);
  --grid-line: rgba(17,24,39,.045);
  color-scheme: light;
}
