/* Generated from tokens.json by scripts/build.mjs. Do not edit by hand. */

:root {
  /* primitive */
  --color-white: #ffffff;
  --color-stone-50: #fafaf9;
  --color-stone-100: #f5f5f4;
  --color-stone-200: #e7e5e4;
  --color-stone-300: #d6d3d1;
  --color-stone-400: #a8a29e;
  --color-stone-500: #78716c;
  --color-stone-575: #736c67;
  --color-stone-600: #57534e;
  --color-stone-700: #44403c;
  --color-stone-800: #292524;
  --color-stone-900: #1c1917;
  --color-stone-950: #0c0a09;
  --color-emerald-50: #ecfdf5;
  --color-emerald-100: #d1fae5;
  --color-emerald-200: #a7f3d0;
  --color-emerald-300: #6ee7b7;
  --color-emerald-400: #34d399;
  --color-emerald-500: #10b981;
  --color-emerald-600: #059669;
  --color-emerald-700: #047857;
  --color-emerald-800: #065f46;
  --color-emerald-900: #064e3b;
  --color-emerald-950: #022c22;
  --color-amber-50: #fffbeb;
  --color-amber-200: #fde68a;
  --color-amber-400: #fbbf24;
  --color-amber-600: #d97706;
  --color-amber-700: #b45309;
  --color-amber-950: #451a03;
  --color-red-700: #b91c1c;
  --space-4: 4px;
  --space-8: 8px;
  --space-12: 12px;
  --space-16: 16px;
  --space-20: 20px;
  --space-24: 24px;
  --space-28: 28px;
  --space-32: 32px;
  --space-40: 40px;
  --space-48: 48px;
  --space-56: 56px;
  --space-64: 64px;
  --space-72: 72px;
  --space-96: 96px;
  --space-112: 112px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 10px;
  --radius-xl: 16px;
  --radius-pill: 999px;
  --font-sans-ko: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;
  --font-sans-en: Inter, "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-serif: Fraunces, Georgia, "Times New Roman", serif;
  --font-mono: "JetBrains Mono", "Pretendard Variable", ui-monospace, "SF Mono", Menlo, monospace;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-display-en: 500;
  --font-weight-display-ko: 640;
  --duration-fast: 120ms;
  --duration-base: 200ms;
  --duration-slow: 320ms;
  --easing-standard: cubic-bezier(0.2, 0, 0, 1);

  /* semantic · light */
  --bg-canvas: var(--color-stone-100);
  --bg-raised: var(--color-stone-50);
  --bg-surface: var(--color-white);
  --bg-field: var(--color-white);
  --text-primary: var(--color-stone-900);
  --text-secondary: var(--color-stone-600);
  --text-tertiary: var(--color-stone-575);
  --text-on-accent: var(--color-white);
  --border: var(--color-stone-200);
  --border-strong: var(--color-stone-300);
  --border-input: var(--color-stone-500);
  --accent: var(--color-emerald-700);
  --accent-hover: var(--color-emerald-800);
  --accent-subtle: var(--color-emerald-50);
  --accent-halo: var(--color-emerald-100);
  --status-review: var(--color-amber-700);
  --status-review-subtle: var(--color-amber-50);
  --status-danger: var(--color-red-700);
  --focus-ring: var(--color-emerald-600);
}

.theme-inverse {
  /* semantic · inverse */
  --bg-canvas: var(--color-stone-950);
  --bg-raised: var(--color-stone-900);
  --bg-surface: var(--color-stone-900);
  --bg-field: var(--color-stone-950);
  --text-primary: var(--color-stone-100);
  --text-secondary: var(--color-stone-300);
  --text-tertiary: var(--color-stone-400);
  --text-on-accent: var(--color-stone-950);
  --border: var(--color-stone-800);
  --border-strong: var(--color-stone-700);
  --border-input: var(--color-stone-600);
  --accent: var(--color-emerald-400);
  --accent-hover: var(--color-emerald-300);
  --accent-subtle: var(--color-emerald-950);
  --accent-halo: var(--color-emerald-900);
  --status-review: var(--color-amber-400);
  --status-review-subtle: var(--color-amber-950);
  --status-danger: var(--color-amber-200);
  --focus-ring: var(--color-emerald-400);
}

/* component — declared on both scopes so aliases resolve against the active theme */
:root,
.theme-inverse {
  --button-primary-bg: var(--text-primary);
  --button-primary-fg: var(--bg-canvas);
  --button-primary-bg-hover: var(--text-secondary);
  --button-secondary-bg: var(--bg-raised);
  --button-secondary-fg: var(--text-primary);
  --button-secondary-border: var(--border-strong);
  --button-radius: var(--radius-pill);
  --card-bg: var(--bg-surface);
  --card-border: var(--border);
  --card-radius: var(--radius-xl);
  --card-padding: var(--space-28);
  --tag-bg: var(--accent-subtle);
  --tag-fg: var(--accent);
  --tag-radius: var(--radius-sm);
  --input-bg: var(--bg-field);
  --input-border: var(--border-input);
  --input-radius: var(--radius-md);
  --input-height: 48px;
  --section-padding: var(--space-96);
  --section-padding-compact: var(--space-56);
  --layout-content-max: 1240px;
  --layout-gutter: var(--space-24);
  --layout-gutter-compact: var(--space-16);
  --layout-margin: var(--space-40);
  --layout-margin-compact: var(--space-20);
}
