/* ============================================================
   Chars Consulting — Design Tokens
   Faithful port of the spec's HSL palette (§2.1–2.4).
   All colors as HSL channels so hsl(var(--x) / a) works.
   ============================================================ */

:root {
  /* Core semantic palette (light theme) */
  --background: 150 20% 97%;
  --foreground: 160 30% 12%;
  --card: 0 0% 100%;
  --card-foreground: 160 30% 12%;
  --popover: 0 0% 100%;
  --popover-foreground: 160 30% 12%;

  --primary: 158 45% 28%;            /* deep forest green */
  --primary-foreground: 0 0% 100%;
  --secondary: 150 25% 94%;          /* light sage */
  --secondary-foreground: 160 30% 12%;
  --muted: 150 15% 88%;
  --muted-foreground: 160 15% 45%;
  --accent: 340 75% 55%;             /* vibrant rose pink */
  --accent-foreground: 0 0% 100%;
  --destructive: 0 84% 60%;
  --destructive-foreground: 0 0% 100%;

  --border: 150 20% 88%;
  --input: 150 20% 88%;
  --ring: 158 45% 28%;
  --radius: 0.5rem;

  /* Brand aliases */
  --navy: 158 45% 28%;
  --navy-light: 150 30% 96%;
  --navy-dark: 160 50% 15%;
  --gold: 340 75% 55%;
  --gold-light: 340 70% 95%;
  --teal: 158 50% 35%;
  --teal-light: 150 40% 95%;
  --warm-white: 150 20% 98%;
  --charcoal: 160 30% 12%;

  /* Gradients */
  --gradient-hero: linear-gradient(135deg, hsl(160 50% 18%) 0%, hsl(158 45% 28%) 50%, hsl(155 40% 35%) 100%);
  --gradient-dark: linear-gradient(180deg, hsl(160 50% 15%) 0%, hsl(160 55% 10%) 100%);
  --gradient-card: linear-gradient(180deg, hsl(0 0% 100%) 0%, hsl(150 20% 98%) 100%);
  --gradient-accent: linear-gradient(135deg, hsl(340 75% 55%) 0%, hsl(335 70% 62%) 100%);
  --gradient-glass: linear-gradient(135deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,.85) 100%);

  /* Shadows */
  --shadow-soft: 0 2px 15px -3px hsl(160 30% 12% / 0.08);
  --shadow-card: 0 10px 40px -10px hsl(160 30% 12% / 0.12);
  --shadow-elevated: 0 25px 50px -12px hsl(160 30% 12% / 0.2);
  --shadow-glow: 0 0 40px hsl(340 75% 55% / 0.3);

  /* Typography */
  --font-serif: "Playfair Display", Georgia, "Times New Roman", serif;
  --font-sans: "Source Sans 3", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  /* Layout */
  --container-max: 1400px;
  --header-h: 72px;
  --urgent-h: 40px;
}

.dark {
  --background: 160 30% 8%;
  --foreground: 150 20% 96%;
  --card: 160 30% 11%;
  --card-foreground: 150 20% 96%;
  --popover: 160 30% 11%;
  --popover-foreground: 150 20% 96%;

  --primary: 158 45% 50%;
  --primary-foreground: 160 40% 8%;
  --secondary: 160 25% 16%;
  --secondary-foreground: 150 20% 96%;
  --muted: 160 20% 18%;
  --muted-foreground: 150 12% 62%;
  --accent: 340 70% 58%;
  --accent-foreground: 0 0% 100%;
  --destructive: 0 70% 55%;
  --destructive-foreground: 0 0% 100%;

  --border: 160 20% 20%;
  --input: 160 20% 20%;
  --ring: 158 45% 50%;

  --navy: 158 45% 50%;
  --navy-light: 160 30% 14%;
  --navy-dark: 160 55% 6%;
  --gold: 340 70% 58%;
  --gold-light: 340 30% 20%;
  --teal: 158 45% 45%;
  --teal-light: 160 25% 16%;
  --warm-white: 160 30% 11%;
  --charcoal: 150 20% 96%;

  --gradient-hero: linear-gradient(135deg, hsl(160 55% 8%) 0%, hsl(158 45% 18%) 50%, hsl(155 40% 24%) 100%);
  --gradient-dark: linear-gradient(180deg, hsl(160 55% 6%) 0%, hsl(160 60% 4%) 100%);
  --gradient-card: linear-gradient(180deg, hsl(160 30% 12%) 0%, hsl(160 30% 9%) 100%);
  --gradient-glass: linear-gradient(135deg, rgba(20,32,28,.9) 0%, rgba(20,32,28,.75) 100%);

  --shadow-soft: 0 2px 15px -3px hsl(0 0% 0% / 0.4);
  --shadow-card: 0 10px 40px -10px hsl(0 0% 0% / 0.5);
  --shadow-elevated: 0 25px 50px -12px hsl(0 0% 0% / 0.6);
}
