/**
 * Design tokens — Swiss（International Typographic Style）準拠
 * 白背景・グリッド整列・オブジェクティブなタイポグラフィ
 * ラテン: Helvetica 系（システム） / 日本語: Noto Sans JP
 * アクセント: #FF9421（フラット、装飾は最小限）
 */

 :root {
  /* Color — 白と黒のコントラスト基調 */
  --color-base: #ffffff;
  --color-accent: #ff9421;
  --color-accent-hover: #e07e10;
  --color-accent-muted: rgba(255, 148, 33, 0.1);
  --color-text: #0D0E10;
  --color-text-muted: #333333;
  --color-text-subtle: #666666;
  --color-border: #e0e0e0;
  --color-border-strong: #0D0E10;
  --color-surface: #ffffff;
  --color-surface-elevated: #f5f5f5;

  /* Typography */
  --font-latin: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-ja: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  --font-body: var(--font-ja);
  --font-en: var(--font-latin);
  --font-display: var(--font-latin);

  --text-xs: 0.6875rem;
  --text-sm: 0.8125rem;
  --text-base: 0.9375rem;
  --text-md: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 1.75rem;
  --text-4xl: 2.125rem;

  --leading-tight: 1.15;
  --leading-snug: 1.35;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  --tracking-tight: -0.01em;
  --tracking-swiss: 0.12em;
  --tracking-wide: 0.08em;

  /* Space — 8px ベースの整然としたスケール */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-7: 1.75rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;

  /* Swiss: 角丸・影は原則なし */
  --radius: 0;
  --radius-sm: 0;
  --radius-md: 0;
  --radius-lg: 0;
  --radius-full: 0;
  --shadow-none: none;

  /* Layout — カラム・ガター（整列の基準） */
  --container-max: 1080px;
  --grid-gutter: var(--space-8);
  --header-height: 56px;
  --page-padding-x: clamp(1.25rem, 4vw, 3rem);
}
