/**
 * Lincoln Design Tokens
 * docs/assets/design_tokens.json をCSS変数化したもの。
 * このファイルでは値の定義のみを行い、適用は lincoln-custom.css 以降で行う。
 */

:root {
  /* ===== カラー:リーフグリーン(V1 Leaf Green palette ・ 2026-05 改定) =====
   * 旧パステルミントから、葉そのものの若々しい緑へ。
   * 「保護的・かわいい・パステル」の典型像を脱し、明るく元気な緑で
   * 「居場所×学び」の独自軸を表現する。
   * 変更前: #8FC8B5系 ─→ 変更後: #6BB73C系 */
  --color-mint-light: #EAF5DD;
  --color-mint-soft:  #C8E3B3;
  --color-mint-main:  #6BB73C;
  --color-mint-deep:  #4B8F2C;
  --color-mint-text:  #1F3F18;

  /* ===== カラー:イエロー(アクセント・据え置き) ===== */
  --color-yellow-light: #FFF8DB;
  --color-yellow-soft:  #FBE38E;
  --color-yellow-main:  #F5C84A;
  --color-yellow-deep:  #D9A82E;

  /* ===== カラー:背景・テキスト ===== */
  --color-bg-white:    #FAFCF5;
  --color-bg-mint:     #F2F8EB;
  --color-text-main:   #1F3F18;
  --color-text-sub:    #5C6A52;
  --color-text-white:  #FFFFFF;
  --color-text-yellow: #5C4A0A;
  --color-border:      #D5E0C5;
  --color-border-emphasis: #6BB73C;
  --color-white:       #FFFFFF;

  /* ===== フォント ===== */
  --font-heading-jp: 'Zen Maru Gothic', 'Noto Sans JP', sans-serif;
  --font-heading-en: 'Cormorant Garamond', serif;
  --font-body:       'Noto Sans JP', sans-serif;
  --font-catch:      'Zen Maru Gothic', sans-serif;
  --font-number:     'Outfit', sans-serif;

  /* ===== フォントサイズ(デスクトップ既定) ===== */
  --fs-display: 52px;
  --fs-h1:      36px;
  --fs-h2:      28px;
  --fs-h3:      22px;
  --fs-h4:      18px;
  --fs-body:    16px;
  --fs-small:   14px;
  --fs-caption: 13px;

  /* ===== フォントウェイト ===== */
  --fw-regular: 400;
  --fw-medium:  500;
  --fw-bold:    700;

  /* ===== 行間 ===== */
  --lh-body:    1.8;
  --lh-heading: 1.4;
  --lh-catch:   1.3;
  --lh-button:  1.5;

  /* ===== スペーシング(8px ベース) ===== */
  --space-xs:  4px;
  --space-sm:  8px;
  --space-md:  16px;
  --space-lg:  24px;
  --space-xl:  32px;
  --space-2xl: 48px;
  --space-3xl: 64px;
  --space-4xl: 80px;
  --space-5xl: 120px;

  /* ===== レイアウト ===== */
  --container-max:           1080px;
  --container-padding-mobile:  16px;
  --container-padding-tablet:  24px;
  --container-padding-desktop: 32px;
  --section-gap-mobile:        48px;
  --section-gap-desktop:       80px;

  /* ===== 角丸 ===== */
  --radius-sm:     8px;
  --radius-md:    12px;
  --radius-lg:    16px;
  --radius-pill:  28px;
  --radius-circle: 50%;

  /* ===== モーション ===== */
  --transition-base: 0.2s ease;
  --transition-slow: 0.4s ease;

  /* ===== 罫線 ===== */
  --border-width:          0.5px;
  --border-width-emphasis: 1.5px;
}

/* モバイル(599px以下)でフォントサイズを縮小 */
@media (max-width: 599px) {
  :root {
    --fs-display: 32px;
    --fs-h1:      28px;
    --fs-h2:      22px;
    --fs-h3:      18px;
    --fs-h4:      16px;
    --fs-body:    15px;
    --fs-small:   13px;
    --fs-caption: 12px;
  }
}
