/* =========================================
   BuddyPlanner v2 — Design Tokens
   Minical Style (Light, Clean, Minimal)
   ========================================= */

:root {
  /* ── Core Palette (Monochrome & Grayscale) ── */
  --gray-900: #1c1c1e;
  --gray-800: #2c2c2e;
  --gray-700: #3a3a3c;
  --gray-600: #8e8e93;
  --gray-500: #aeaeb2;
  --gray-400: #c7c7cc;
  --gray-300: #d1d1d6;
  --gray-200: #e5e5ea;
  --gray-100: #f2f2f7;

  --ios-blue: #007aff;
  --ios-red: #ff3b30;
  --ios-orange: #FF5B29; /* SmartScore Orange */
  --ios-green: #34c759;
  
  /* ── BuddyPlanner Premium Palette ── */
  --navy-900: #04122d;
  --navy-800: #071c45;
  --navy-700: #0c285d;
  --navy-600: #1e3a8a;
  --blue-sub: #93c5fd;
  --blue-light: #eff6ff;
  --gold-warm: #d97706;
  --gold-light: #fffbf0;
  --emerald-main: #10b981;
  --emerald-light: #ecfdf5;

  /* ── Semantic Colors (Light Mode) ── */
  --bg-app: #f8fafc; /* Premium subtle off-white background */
  --bg-surface: #ffffff;
  --bg-elevated: #ffffff;
  --bg-card: #ffffff;
  --bg-card-hover: #f1f5f9;
  --bg-input: #f1f5f9;
  --bg-input-hover: #e2e8f0;
  --bg-input-focus: #ffffff;

  --text-100: #0f172a; /* Rich sharp slate */
  --text-200: #334155; /* Dark gray */
  --text-300: #64748b; /* Medium gray */
  /* 보조 글씨: 40~60대 사용자도 읽기 쉽도록 흰 배경 대비를 높임 (예전 #94a3b8 / #cbd5e1) */
  --text-400: #64748b; /* Secondary text */
  --text-500: #7b8798; /* Muted text */

  --accent: #007aff; /* Primary iOS blue accent */
  --accent-dim: rgba(0, 122, 255, 0.08);
  --accent-glow: rgba(0, 122, 255, 0.15);
  --accent-dark: #0056b3;
  --gold: #d97706;
  --gold-dim: rgba(217, 119, 6, 0.1);
  --danger: #ef4444;

  --border-subtle: #f1f5f9;
  --border-default: #e2e8f0; /* The primary light border */
  --border-strong: #cbd5e1;
  --border-accent: rgba(0, 122, 255, 0.3);

  /* ── Shadows & Glows ── */
  --shadow-xs: 0 1px 2px rgba(0,0,0,0.04);
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.04);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.06);
  --shadow-lg: 0 10px 30px rgba(0,0,0,0.08);
  --shadow-xl: 0 20px 40px rgba(0,0,0,0.12);
  
  --glow-accent: 0 0 15px rgba(0, 122, 255, 0.2);
  --glow-gold: 0 0 15px rgba(217, 119, 6, 0.2);
  --glow-accent-strong: 0 0 25px rgba(0, 122, 255, 0.35);

  /* ── Gradients ── */
  --grad-hero: linear-gradient(180deg, #04122d 0%, #071c45 60%, #0c285d 100%);
  --grad-accent: linear-gradient(135deg, #007aff 0%, #0056b3 100%);
  --grad-emerald: linear-gradient(135deg, #10b981 0%, #059669 100%);
  --grad-gold: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  --grad-card: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  --grad-bg-radial: none;
  --grad-glass-border: linear-gradient(180deg, rgba(255,255,255,0.8), rgba(255,255,255,0.2));

  /* ── Typography ── */
  --font-sans: -apple-system, BlinkMacSystemFont, 'Pretendard Variable', 'Pretendard', 'Inter', system-ui, sans-serif;
  --font-mono: 'SF Mono', 'JetBrains Mono', 'Fira Code', monospace;

  --fs-2xs: 0.6875rem;  /* 11px */
  --fs-xs: 0.75rem;     /* 12px */
  --fs-sm: 0.875rem;    /* 14px */
  --fs-base: 1rem;      /* 16px */
  --fs-md: 1.125rem;    /* 18px */
  --fs-lg: 1.25rem;     /* 20px */
  --fs-xl: 1.5rem;      /* 24px */
  --fs-2xl: 1.75rem;    /* 28px */
  --fs-3xl: 2.125rem;   /* 34px */
  --fs-4xl: 2.5rem;     /* 40px */

  --fw-normal: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;

  --lh-tight: 1.15;
  --lh-snug: 1.3;
  --lh-normal: 1.5;
  --lh-relaxed: 1.7;

  --ls-tight: -0.01em;
  --ls-normal: 0em;
  --ls-wide: 0.02em;

  /* ── Spacing ── */
  --sp-0: 0;
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 20px;
  --sp-6: 24px;
  --sp-7: 28px;
  --sp-8: 32px;
  --sp-10: 40px;
  --sp-12: 48px;
  --sp-14: 56px;
  --sp-16: 64px;
  --sp-20: 80px;

  /* ── Radius ── */
  --r-xs: 6px;
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 16px;
  --r-xl: 20px;
  --r-2xl: 24px;
  --r-3xl: 28px;
  --r-full: 9999px;

  /* ── Motion ── */
  --ease-out: cubic-bezier(0.25, 1, 0.5, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-smooth: cubic-bezier(0.2, 0, 0, 1);
  --dur-fast: 150ms;
  --dur-normal: 250ms;
  --dur-slow: 400ms;
  --dur-slower: 500ms;

  /* ── Z-index ── */
  --z-base: 1;
  --z-sticky: 50;
  --z-dropdown: 100;
  --z-modal: 1000;
  --z-toast: 900;

  /* ── Layout ── */
  --app-w: 430px;
  --header-h: 56px;
  --nav-h: 50px;
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}

.cal-wd {
  padding-bottom: 4px;
}
