/**
 * Layer 2 — Semantic 语义令牌（ai14）
 *
 * 项目规则 §3.10：业务代码唯一引用入口
 * 引用 primitive.css 原始令牌组合为语义令牌
 * 支持 light/dark 双主题（当前仅 light）
 */

@import './primitive.css';

:root {
  /* === 语义色（light 主题）=== */
  --color-paper: hsl(var(--hue-paper), var(--sat-paper), var(--light-paper));
  --color-ink: hsl(var(--hue-ink), var(--sat-ink), var(--light-ink));
  --color-ink-muted: hsl(var(--hue-ink), var(--sat-ink), var(--light-ink-muted));
  --color-ink-subtle: hsl(var(--hue-ink), var(--sat-ink), var(--light-ink-subtle));

  --color-accent: hsl(var(--hue-accent), var(--sat-accent), var(--light-accent));
  --color-accent-hover: hsl(var(--hue-accent), var(--sat-accent), var(--light-accent-hover));
  --color-accent-muted: hsl(var(--hue-accent), var(--sat-accent), var(--light-accent-muted));

  --color-rule: hsl(var(--hue-rule), var(--sat-rule), var(--light-rule));

  --color-success: hsl(var(--hue-success), var(--sat-success), var(--light-success));
  --color-warning: hsl(var(--hue-warning), var(--sat-warning), var(--light-warning));
  --color-danger: hsl(var(--hue-danger), var(--sat-danger), var(--light-danger));
  --color-info: hsl(var(--hue-info), var(--sat-info), var(--light-info));

  /* === 语义字体族（暴露给 Tailwind）=== */
  --font-serif: var(--font-serif-literal);
  --font-sans: var(--font-sans-literal);
  --font-mono: var(--font-mono-literal);

  /* === 语义间距 === */
  --space-xs: var(--space-xs);
  --space-sm: var(--space-sm);
  --space-md: var(--space-md);
  --space-lg: var(--space-lg);
  --space-xl: var(--space-xl);
  --space-2xl: var(--space-2xl);
  --space-3xl: var(--space-3xl);
}

/* dark 主题预留（P6+ 启用）*/
@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) {
    --color-paper: hsl(var(--hue-paper), var(--sat-paper), 8%);
    --color-ink: hsl(var(--hue-ink), var(--sat-ink), 92%);
    --color-ink-muted: hsl(var(--hue-ink), var(--sat-ink), 65%);
    --color-ink-subtle: hsl(var(--hue-ink), var(--sat-ink), 45%);

    --color-accent: hsl(var(--hue-accent), var(--sat-accent), 55%);
    --color-accent-hover: hsl(var(--hue-accent), var(--sat-accent), 65%);
    --color-accent-muted: hsl(var(--hue-accent), var(--sat-accent), 15%);

    --color-rule: hsl(var(--hue-rule), var(--sat-rule), 20%);
  }
}
