@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Inter+Tight:wght@400;500;700&family=Merriweather:ital,wght@0,300;0,400;0,700;1,400&display=swap');


:root {
  /* ── typography ────────────────────────────────────────────── */
  --font-display: 'DM Sans', sans-serif;
  --font-sans: 'Inter Tight', sans-serif;
  --font-serif: 'Merriweather', Georgia, serif;
  --font-mono: ui-monospace, SFMono-Regular, monospace;
  --font-weight-display: 700;
  --line-height-display: 1.1;
  --tracking-display: -0.025em;
  --font-weight-body: 400;
  --line-height-body: 1.6;
  --tracking-body: 0em;
  --font-weight-mono: 400;

  /* ── shadcn base tokens ────────────────────────────────────── */
  --background: #FBF9F6;
  --foreground: #1A1A1A;
  --card: #FFFFFF;
  --card-foreground: #1A1A1A;
  --popover: #FFFFFF;
  --popover-foreground: #1A1A1A;
  --primary: #C2410C;
  --primary-foreground: #FFFFFF;
  --secondary: color-mix(in srgb, var(--foreground) 4%, var(--background));
  --secondary-foreground: #1A1A1A;
  --muted: color-mix(in srgb, var(--foreground) 4%, var(--background));
  --muted-foreground: #7A7268;
  --accent: color-mix(in srgb, var(--foreground) 4%, var(--background));
  --accent-foreground: var(--foreground);
  --destructive: oklch(0.577 0.245 27.325);
  --destructive-foreground: oklch(0.985 0 0);
  --border: color-mix(in srgb, var(--foreground) 11%, var(--background));
  --input: color-mix(in srgb, var(--foreground) 11%, var(--background));
  --ring: color-mix(in srgb, var(--primary) 50%, var(--background));
  --success: oklch(0.596 0.145 145.59);
  --warning: oklch(0.769 0.154 71.29);

  /* ── sidebar ───────────────────────────────────────────────── */
  --sidebar: #F4F1EC;
  --sidebar-foreground: #1A1A1A;
  --sidebar-primary: #C2410C;
  --sidebar-primary-foreground: #FFFFFF;
  --sidebar-accent: color-mix(in srgb, var(--foreground) 6%, var(--background));
  --sidebar-accent-foreground: var(--foreground);
  --sidebar-border: color-mix(in srgb, var(--foreground) 10%, var(--background));
  --sidebar-ring: color-mix(in srgb, var(--primary) 50%, var(--background));

  /* ── surface hierarchy ─────────────────────────────────────── */
  --background-secondary: color-mix(in srgb, var(--foreground) 3%, var(--background));
  --surface-hover: color-mix(in srgb, var(--foreground) 5%, var(--background));
  --surface-active: color-mix(in srgb, var(--foreground) 8%, var(--background));
  --surface-elevated: var(--card);

  /* ── border hierarchy ──────────────────────────────────────── */
  --border-subtle: color-mix(in srgb, var(--foreground) 6%, var(--background));
  --border-muted: color-mix(in srgb, var(--foreground) 9%, var(--background));
  --border-strong: color-mix(in srgb, var(--foreground) 22%, var(--background));

  /* ── text hierarchy ────────────────────────────────────────── */
  --foreground-secondary: color-mix(in srgb, var(--foreground) 60%, var(--background));

  /* ── primary depth ─────────────────────────────────────────── */
  --primary-hover: color-mix(in srgb, var(--primary) 85%, var(--foreground));
  --primary-muted: color-mix(in srgb, var(--primary) 20%, var(--background));
  --primary-soft: color-mix(in srgb, var(--primary) 10%, var(--background));
  --primary-tint: color-mix(in srgb, var(--primary) 6%, var(--background));

  /* ── focus & error ─────────────────────────────────────────── */
  --focus-ring: color-mix(in srgb, var(--primary) 40%, transparent);
  --error: oklch(0.577 0.245 27.325);
  --error-foreground: oklch(0.985 0 0);

  /* ── radius ────────────────────────────────────────────────── */
  --radius: 0.25rem;
  --radius-none: 0rem;
  --radius-sm: 0.125rem;
  --radius-lg: 0.375rem;
  --radius-xl: 0.5rem;
  --radius-full: 9999px;

  /* ── shadows ───────────────────────────────────────────────── */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.08);

  /* ── motion ────────────────────────────────────────────────── */
  --duration-fast: 100ms;
  --duration-normal: 180ms;
  --duration-slow: 300ms;
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-accelerate: cubic-bezier(0.4, 0, 1, 1);
  --ease-decelerate: cubic-bezier(0, 0, 0.2, 1);

  /* ── spacing ───────────────────────────────────────────────── */
  --spacing-base: 0.25rem;

  /* ── amber spotlight (turn indicator signature) ───────────────── */
  --amber: oklch(0.72 0.14 68);
  --amber-tint: color-mix(in srgb, var(--amber) 14%, var(--background));
  --amber-border: color-mix(in srgb, var(--amber) 40%, var(--background));
}
