/*
DO NOT EDIT — generated by tools/generate-tokens.py
source: tokens/source (sha256:7b6eb8f4880c3d88)  generated-at: 2026-07-29 12:22
正本はtokens/source。変更はsourceを編集して再生成する（ADR-0001 §8）
*/
:root {
  --color-neutral-0: #FFFFFF;
  --color-neutral-50: #F7F7F4;
  --color-neutral-200: #E3E6E4;
  --color-neutral-600: #5F6B76;
  --color-neutral-900: #1A1A1A;
  --color-akane-50: #F7EEED;
  --color-akane-100: #EFDEDB;
  --color-akane-600: #B05A4A;
  --color-akane-700: #9B4F41;
  --color-akane-800: #864438;
  --color-seiji-50: #EEF2F0;
  --color-seiji-100: #DCE5E1;
  --color-seiji-600: #517E69;
  --color-seiji-700: #476F5C;
  --color-seiji-800: #3E6050;
  --color-mihanada-50: #EDF2F5;
  --color-mihanada-100: #DBE4EB;
  --color-mihanada-600: #4A7A9B;
  --color-mihanada-700: #416B88;
  --color-mihanada-800: #385D76;
  --color-beni-50: #F9EBEA;
  --color-beni-600: #C0392B;
  --color-beni-700: #A93226;
  --dimension-space-100: 4px;
  --dimension-space-200: 8px;
  --dimension-space-300: 12px;
  --dimension-space-400: 16px;
  --dimension-space-500: 24px;
  --dimension-space-600: 32px;
  --dimension-space-700: 48px;
  --dimension-space-800: 64px;
  --dimension-space-900: 96px;
  --radius-100: 4px;
  --radius-200: 8px;
  --radius-300: 12px;
  --radius-full: 9999px;
  --shadow-elevation-low: 0px 1px 3px 0px #1A1A1A0F;
  --shadow-elevation-medium: 0px 4px 12px 0px #1A1A1A14;
  --shadow-elevation-high: 0px 12px 32px 0px #1A1A1A1F;
  --motion-duration-instant: 0ms;
  --motion-duration-fast: 100ms;
  --motion-duration-base: 150ms;
  --motion-duration-slow: 300ms;
  --motion-duration-cinematic: 600ms;
  --motion-easing-standard: cubic-bezier(0.2, 0, 0, 1);
  --motion-easing-decelerate: cubic-bezier(0, 0, 0, 1);
  --motion-easing-accelerate: cubic-bezier(0.3, 0, 1, 1);
  --motion-easing-linear: cubic-bezier(0, 0, 1, 1);
  --font-size-100: 13px;
  --font-size-200: 14px;
  --font-size-300: 16px;
  --font-size-350: 17px;
  --font-size-400: 18px;
  --font-size-500: 20px;
  --font-size-600: 24px;
  --font-size-800: 32px;
  --font-size-900: 40px;
  --font-leading-tight: 1.4;
  --font-leading-normal: 1.6;
  --font-leading-relaxed: 1.9;
  --font-tracking-normal: 0em;
  --font-tracking-wide: 0.02em;
  --font-tracking-wider: 0.04em;
  --font-family-sans: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --font-family-serif: "Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", serif;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;
  --color-text-primary: var(--color-neutral-900);
  --color-text-secondary: var(--color-neutral-600);
  --color-text-on-action: var(--color-neutral-0);
  --color-surface-default: var(--color-neutral-0);
  --color-surface-paper: var(--color-neutral-50);
  --color-surface-accent-subtle: var(--color-seiji-50);
  --color-surface-danger-subtle: var(--color-beni-50);
  --color-border-subtle: var(--color-neutral-200);
  --color-border-input: var(--color-neutral-600);
  --color-action-primary-default: var(--color-seiji-600);
  --color-action-primary-hover: var(--color-seiji-700);
  --color-action-primary-active: var(--color-seiji-800);
  --color-link-default: var(--color-seiji-600);
  --color-link-hover: var(--color-seiji-700);
  --color-focus-ring: var(--color-seiji-600);
  --color-status-danger: var(--color-beni-600);
  --radius-interactive: var(--radius-200);
  --radius-surface: var(--radius-300);
  --elevation-raised: var(--shadow-elevation-low);
  --elevation-overlay: var(--shadow-elevation-high);
  --dimension-container-text: 44rem;
  --dimension-container-default: 64rem;
  --dimension-breakpoint-mobile-max: 767px;
  --dimension-focus-ring-width: 2px;
  --motion-state-duration: var(--motion-duration-base);
  --motion-state-easing: var(--motion-easing-standard);
  --motion-reveal-duration: var(--motion-duration-slow);
  --motion-reveal-easing: var(--motion-easing-decelerate);
  --motion-cinematic-duration: var(--motion-duration-cinematic);
  --motion-cinematic-easing: var(--motion-easing-linear);
  --font-family-heading: var(--font-family-serif);
  --font-family-body: var(--font-family-sans);
  --font-size-display: clamp(1.75rem, 1.03rem + 3.05vw, 2.5rem);
  --font-size-heading-xl: clamp(1.625rem, 1.27rem + 1.53vw, 2rem);
  --font-size-heading-l: var(--font-size-600);
  --font-size-heading-m: var(--font-size-500);
  --font-size-heading-s: var(--font-size-350);
  --font-size-body-l: var(--font-size-400);
  --font-size-body-m: var(--font-size-300);
  --font-size-body-s: var(--font-size-200);
  --font-size-caption: var(--font-size-100);
}

[data-theme="ai"] {
  --color-action-primary-default: var(--color-mihanada-600);
  --color-action-primary-hover: var(--color-mihanada-700);
  --color-action-primary-active: var(--color-mihanada-800);
  --color-link-default: var(--color-mihanada-600);
  --color-link-hover: var(--color-mihanada-700);
  --color-focus-ring: var(--color-mihanada-600);
  --color-surface-accent-subtle: var(--color-mihanada-50);
}

[data-theme="photo"] {
  --color-action-primary-default: var(--color-akane-600);
  --color-action-primary-hover: var(--color-akane-700);
  --color-action-primary-active: var(--color-akane-800);
  --color-link-default: var(--color-akane-600);
  --color-link-hover: var(--color-akane-700);
  --color-focus-ring: var(--color-akane-600);
  --color-surface-accent-subtle: var(--color-akane-50);
}
