/* 言中设计系统 — V3 数据绿 (Dashboard Green) */

:root {
  /* Fonts */
  --font-sans: 'Inter', 'Source Sans 3', -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --font-serif: 'Source Serif 4', 'Noto Serif SC', Georgia, serif;
  --font-mono: 'JetBrains Mono', 'SFMono-Regular', Consolas, Menlo, monospace;
  --font-body: var(--font-sans);
  --font-ui: var(--font-sans);
  --font-display: var(--font-sans);

  /* Density + spacing */
  --density: 1;
  --sp-1: calc(4px * var(--density));
  --sp-2: calc(8px * var(--density));
  --sp-3: calc(12px * var(--density));
  --sp-4: calc(16px * var(--density));
  --sp-5: calc(24px * var(--density));
  --sp-6: calc(32px * var(--density));
  --sp-7: calc(48px * var(--density));
  --sp-8: calc(64px * var(--density));
  --sp-9: calc(96px * var(--density));
  --sp-10: calc(128px * var(--density));

  /* V3 Dashboard Green palette */
  --bg: #ffffff;
  --bg-elev: #ffffff;
  --bg-sunk: #f6f7f5;
  --ink: #0d1410;
  --ink-2: #2b332e;
  --ink-3: #555e58;
  --ink-4: #8a938d;
  --line: #e6e9e5;
  --line-2: #cfd4cd;
  --accent: oklch(0.52 0.16 150);
  --accent-2: #e6f4ea;
  --accent-ink: #fff;
  --warn: oklch(0.62 0.19 28);
  --ok: oklch(0.52 0.16 150);

  /* Radii */
  --r-sm: 4px;
  --r-md: 8px;
  --r-lg: 12px;
  --r-xl: 20px;

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(9, 14, 26, 0.04), 0 1px 1px rgba(9, 14, 26, 0.03);
  --shadow-md: 0 4px 12px rgba(9, 14, 26, 0.06), 0 2px 4px rgba(9, 14, 26, 0.04);
  --shadow-lg: 0 12px 36px rgba(9, 14, 26, 0.08), 0 4px 12px rgba(9, 14, 26, 0.05);

  /* Max width */
  --max-width: 1280px;

  /* ── Legacy aliases for main.css backward compatibility ── */
  --bg-soft: var(--bg-sunk);
  --panel: var(--bg-elev);
  --panel-white: var(--bg-elev);
  --surface: var(--bg-elev);
  --surface-strong: var(--bg-elev);
  --surface-soft: var(--bg-sunk);
  --bg-top: var(--bg);
  --bg-bottom: var(--bg);
  --bg-dark: var(--ink);
  --panel-border: var(--line);
  --border-warm: var(--line);
  --line-soft: var(--line);
  --line-strong: var(--ink);
  --line-dark: var(--ink);
  --text: var(--ink);
  --text-main: var(--ink);
  --text-primary: var(--ink);
  --text-secondary: var(--ink-2);
  --text-muted: var(--ink-4);
  --text-dark-inv: #ffffff;
  --color-fg-inverse: #ffffff;
  --text-dark-muted: rgba(255, 255, 255, 0.72);
  --accent-coral: var(--accent);
  --accent-strong: oklch(0.42 0.16 150);
  --accent-soft: var(--accent-2);
  --neutral-fill: var(--accent);
  --warm-sand: var(--bg-sunk);
  --charcoal-warm: var(--ink);
  --dark-surface: var(--ink);
  --deep-dark: var(--ink);
  --success: var(--ok);
  --warning: var(--warn);
  --error: var(--warn);
  --shadow-soft: var(--shadow-sm);
  --shadow-deep: var(--shadow-md);
  --shadow-float: var(--shadow-lg);
  --shadow-ring: none;
  --shadow-ring-warm: none;
  --shadow-whisper: none;
  --radius-sm: var(--r-sm);
  --radius-md: var(--r-md);
  --radius-lg: var(--r-lg);
  --radius-xl: var(--r-xl);
  --radius-2xl: var(--r-xl);
  --radius-pill: 999px;

  /* Typography scale aliases kept for legacy component compatibility */
  --fs-body: 15px;
  --fs-body-sm: 13px;
  --fs-h4: 16px;
  --fs-eyebrow: 10px;
  --fs-caption: 12px;
  --fs-micro: 11px;
  --fs-ui-nav: 15px;
  --fs-ui-build: 11px;
  --lh-normal: 1.55;
  --fw-510: 500;
  --fw-590: 600;
  --ls-h3: -0.01em;
  --font-features: normal;

  /* Misc */
  --ease: cubic-bezier(0.4, 0, 0.2, 1);
  --glass-blur: saturate(1.4) blur(16px);
  --color-border-soft: var(--line);
}
