:root {
  /* 顏色 */
  --bg-cream: #F7F2EA;
  --bg-warm: #EFE6D8;
  --bg-deep: #2B2A28;
  --ink-deep: #2B2A28;
  --ink-soft: #6B655D;
  --ink-mute: #9C958A;
  --accent-rose: #E8B5A8;
  --accent-rose-deep: #D49A8B;
  --accent-sage: #A8B5A0;
  --accent-sage-deep: #8A9783;
  --accent-gold: #C9A87C;
  --overlay-strong: rgba(43, 42, 40, 0.55);
  --overlay-soft: rgba(43, 42, 40, 0.25);
  --card-bg: rgba(247, 242, 234, 0.92);

  /* 字體 */
  --font-sans: "Noto Sans TC", "PingFang TC", -apple-system, BlinkMacSystemFont,
    "Helvetica Neue", system-ui, sans-serif;
  --font-serif: "Noto Serif TC", "Songti TC", Georgia, serif;

  /* 字級 (clamp 讓桌面 / 手機一致) */
  --fz-xs: 0.75rem;
  --fz-sm: 0.875rem;
  --fz-base: 1rem;
  --fz-md: 1.125rem;
  --fz-lg: 1.25rem;
  --fz-xl: 1.75rem;
  --fz-2xl: clamp(1.75rem, 3vw + 1rem, 2.5rem);
  --fz-3xl: clamp(2.25rem, 4vw + 1rem, 3.75rem);
  --fz-hero: clamp(2.75rem, 6vw + 1rem, 6rem);

  /* 間距 */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-24: 6rem;

  /* Layout */
  --container: 1200px;
  --gutter: clamp(1rem, 4vw, 2.5rem);
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-pill: 999px;

  /* 陰影 */
  --shadow-soft: 0 8px 32px rgba(43, 42, 40, 0.08);
  --shadow-card: 0 12px 40px rgba(43, 42, 40, 0.12);

  /* 動畫 */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --dur-fast: 180ms;
  --dur-base: 280ms;
  --dur-slow: 600ms;
}

body {
  font-family: var(--font-sans);
  font-size: var(--fz-md);
  color: var(--ink-deep);
  background: var(--bg-cream);
  letter-spacing: 0.01em;
}
