/* ============================================
   Design Tokens — configurable via CSS variables
   ============================================ */

:root {
  /* Colors — base */
  --color-bg: #ffffff;
  --color-surface: #fafafb;
  --color-surface-2: #f4f5f7;
  --color-border: #e7e8ec;
  --color-border-strong: #d2d4da;

  /* Colors — text */
  --color-text: #0e1116;
  --color-text-muted: #545a66;
  --color-text-subtle: #8b909c;

  /* Colors — accents */
  --color-accent: #1e40af;
  --color-accent-hover: #1a3796;
  --color-accent-soft: #eef2fb;
  --color-accent-ink: #ffffff;

  --color-accent-2: #c89035;          /* warm gold for ratings */
  --color-accent-2-soft: #faf3e3;

  /* Colors — area-specific (individually overridable via Customizer) */
  --color-header-bg: #ffffff;
  --color-header-text: var(--color-text);
  --color-nav-hover-bg:   var(--color-surface-2);
  --color-nav-hover-text: var(--color-text);
  --color-hero-bg: var(--color-surface);
  --color-hero-text: var(--color-text);
  --color-review-hero-bg: var(--color-surface);
  --color-review-hero-text: var(--color-text);
  --color-footer-bg: var(--color-surface);
  --color-footer-text: var(--color-text-muted);
  --color-footer-warn-bg: var(--color-surface-2);
  --color-footer-warn-text: var(--color-text);

  /* Semantic */
  --color-success: #1a7f4f;
  --color-success-soft: #e8f4ee;
  --color-danger: #b3261e;
  --color-danger-soft: #fbeae9;

  /* Typography */
  --font-sans: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-display: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  --fs-xs: 12px;
  --fs-sm: 13px;
  --fs-base: 16px;
  --fs-md: 17px;
  --fs-lg: 19px;
  --fs-xl: 22px;
  --fs-2xl: 28px;
  --fs-3xl: 36px;
  --fs-4xl: 48px;
  --fs-5xl: 64px;

  --lh-tight: 1.1;
  --lh-snug: 1.3;
  --lh-base: 1.55;
  --lh-loose: 1.7;

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

  /* Layout */
  --container: 1200px;
  --container-narrow: 760px;
  --container-wide: 1320px;
  --header-h: 72px;

  /* Spacing scale */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 48px;
  --sp-8: 64px;
  --sp-9: 96px;

  /* Radius */
  --r-xs: 4px;
  --r-sm: 6px;
  --r-md: 10px;
  --r-lg: 14px;
  --r-xl: 20px;
  --r-pill: 999px;

  /* Shadows */
  --shadow-xs: 0 1px 2px rgba(14, 17, 22, 0.04);
  --shadow-sm: 0 1px 3px rgba(14, 17, 22, 0.06), 0 1px 2px rgba(14, 17, 22, 0.04);
  --shadow-md: 0 4px 16px rgba(14, 17, 22, 0.06), 0 2px 4px rgba(14, 17, 22, 0.04);
  --shadow-lg: 0 12px 32px rgba(14, 17, 22, 0.08), 0 4px 8px rgba(14, 17, 22, 0.04);
  --shadow-sticky: 0 -8px 24px rgba(14, 17, 22, 0.08);

  /* Motion */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
}
