/* Khalsa Financial Care — design tokens + base styles */
:root {
  --background: oklch(1 0 0);
  --foreground: oklch(0.2 0.04 155);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.2 0.04 155);
  --primary: oklch(0.42 0.13 155);
  --primary-foreground: oklch(0.99 0.005 150);
  --primary-glow: oklch(0.58 0.17 150);
  --secondary: oklch(0.96 0.02 150);
  --secondary-foreground: oklch(0.3 0.1 155);
  --muted: oklch(0.965 0.012 150);
  --muted-foreground: oklch(0.5 0.03 155);
  --accent: oklch(0.93 0.05 145);
  --accent-foreground: oklch(0.3 0.1 155);
  --border: oklch(0.92 0.02 150);
  --input: oklch(0.92 0.02 150);
  --ring: oklch(0.55 0.17 150);
  --gradient-hero: linear-gradient(135deg, oklch(0.3 0.11 155) 0%, oklch(0.48 0.16 148) 100%);
  --gradient-primary: linear-gradient(135deg, oklch(0.42 0.13 155), oklch(0.58 0.17 150));
  --gradient-subtle: linear-gradient(180deg, oklch(0.99 0.005 150), oklch(0.96 0.025 145));
  --shadow-elegant: 0 20px 60px -15px oklch(0.42 0.13 155 / 0.35);
  --shadow-card: 0 4px 20px -4px oklch(0.42 0.13 155 / 0.12);
}

* { box-sizing: border-box; border-color: var(--border); }
html, body { margin: 0; padding: 0; }
body {
  background: var(--background);
  color: var(--foreground);
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { font: inherit; cursor: pointer; }

/* Tailwind-friendly token classes used inline */
.bg-background { background-color: var(--background); }
.bg-card { background-color: var(--card); }
.bg-primary { background-color: var(--primary); }
.bg-secondary { background-color: var(--secondary); }
.text-foreground { color: var(--foreground); }
.text-primary { color: var(--primary); }
.text-primary-foreground { color: var(--primary-foreground); }
.text-muted-foreground { color: var(--muted-foreground); }
.border-border { border-color: var(--border); }

/* Gradient helpers */
.bg-gradient-primary { background-image: var(--gradient-primary); }
.bg-gradient-hero { background-image: var(--gradient-hero); }
.bg-gradient-subtle { background-image: var(--gradient-subtle); }
.shadow-elegant { box-shadow: var(--shadow-elegant); }
.shadow-card { box-shadow: var(--shadow-card); }

/* Mobile nav */
.nav-mobile { display: none; }
.nav-mobile.open { display: block; }

/* Active link */
.nav-link.active { background: var(--secondary); color: var(--primary); font-weight: 600; }

/* Lucide icon sizing */
[data-lucide] { width: 1em; height: 1em; stroke-width: 2; }
