/* ═══════════════════════════════════════════════════════════════════
   Allspectra Design Tokens — 設計 CSS 變數
   所有顏色、字體、間距均定義於此，其他 CSS 檔案引用這些變數
   不要直接在此寫任何元素樣式
═══════════════════════════════════════════════════════════════════ */
:root {
  /* ── 色彩 ── */
  --color-primary:       #0A0A0A;
  --color-bg:            #FFFFFF;
  --color-bg-secondary:  #F8F9FA;
  --color-bg-dark:       #0A0A0A;
  --color-accent:        #2563EB;
  --color-accent-hover:  #1D4ED8;
  --color-text-muted:    #4A5568;
  --color-border:        #E2E8F0;
  --color-error:         #DC2626;
  --color-success:       #16A34A;
  --color-warning:       #D97706;

  /* ── 字型 ── */
  --font-sans: 'Inter', 'Noto Sans TC', system-ui, -apple-system, sans-serif;

  /* ── 字體大小（clamp 流式縮放：最小值, 視窗比例, 最大值） ── */
  --text-xs:   clamp(0.7rem,  1.5vw, 0.75rem);
  --text-sm:   clamp(0.8rem,  1.8vw, 0.875rem);
  --text-base: clamp(1rem,    2.5vw, 1.0625rem);
  --text-lg:   clamp(1.1rem,  3vw,   1.25rem);
  --text-xl:   clamp(1.25rem, 3.5vw, 1.5rem);
  --text-2xl:  clamp(1.5rem,  4vw,   2rem);
  --text-3xl:  clamp(1.75rem, 5vw,   2.5rem);
  --text-4xl:  clamp(2rem,    6vw,   3.5rem);

  /* ── 間距（基於 4px 倍數系統） ── */
  --space-1:  0.25rem;   /* 4px */
  --space-2:  0.5rem;    /* 8px */
  --space-3:  0.75rem;   /* 12px */
  --space-4:  1rem;      /* 16px */
  --space-5:  1.25rem;   /* 20px */
  --space-6:  1.5rem;    /* 24px */
  --space-8:  2rem;      /* 32px */
  --space-10: 2.5rem;    /* 40px */
  --space-12: 3rem;      /* 48px */
  --space-16: 4rem;      /* 64px */
  --space-20: 5rem;      /* 80px */
  --space-24: 6rem;      /* 96px */

  /* ── 圓角 ── */
  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   12px;
  --radius-xl:   16px;
  --radius-2xl:  24px;
  --radius-full: 9999px;

  /* ── 陰影 ── */
  --shadow-sm: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.05);
  --shadow-md: 0 4px 16px rgba(0,0,0,.10), 0 2px 4px rgba(0,0,0,.06);
  --shadow-lg: 0 8px 32px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.08);

  /* ── 動畫 ── */
  --transition:       200ms cubic-bezier(.4,0,.2,1);
  --transition-slow:  350ms cubic-bezier(.4,0,.2,1);

  /* ── 版面 ── */
  --container-max: 1280px;
  --container-pad: clamp(1rem, 5vw, 2rem);

  /* ── 元件 ── */
  --header-h:     68px;
  --btn-min-h:    44px;    /* 無障礙最小觸控目標 */
  --input-min-h:  44px;
}
