/* =====================================================================
   Allium — Color tokens
   Two brand colors: Allium Pink (primary) + Allium Green (secondary).
   Light is the default. Add class="dark" to <html>/<body> for dark mode.
   Values copied verbatim from the source design system.
   ===================================================================== */

:root {
	/* ── Surfaces ─────────────────────────────────────────── */
	--background: oklch(1 0 0);
	--body-background: var(--background);
	--background-transparent: oklch(1 0 0 / 0.75);
	--foreground: oklch(0.145 0 0);
	--card: oklch(1 0 0);
	--card-foreground: oklch(0.145 0 0);
	--popover: oklch(1 0 0);
	--popover-foreground: oklch(0.145 0 0);
	--muted: oklch(0.95 0 0);
	--muted-foreground: oklch(0.556 0 0);

	/* ── Lines & borders ──────────────────────────────────── */
	--border: oklch(0.8 0 0);
	--border-muted: oklch(0.925 0 0);
	--input: oklch(0.8 0 0);
	--ring: oklch(0.8 0 0);

	/* ── Brand — Pink (primary) ───────────────────────────── */
	--primary: oklch(0.63 0.1815 326.84);
	--primary-foreground: oklch(1 0 0);
	--primary-muted: oklch(0.91 0.0391 325.39);
	--primary-muted-foreground: oklch(0.44 0.1924 326.84);
	--primary-subtle: oklch(0.9706 0.0173 325.39);
	--primary-subtle-foreground: oklch(0.44 0.1924 326.84);

	/* ── Brand — Green (secondary) ────────────────────────── */
	--secondary: oklch(0.73 0.1405 138.32);
	--secondary-foreground: oklch(1 0 0);
	--secondary-muted: oklch(0.94 0.0316 137.82);
	--secondary-muted-foreground: oklch(0.46 0.1431 138.32);
	--secondary-subtle: oklch(0.97 0.015 137.82);
	--secondary-subtle-foreground: oklch(0.46 0.1431 138.32);

	/* ── Semantic status (pastel fill + saturated foreground) ── */
	--success: oklch(92.5% 0.084 155.995);
	--success-foreground: oklch(52.7% 0.154 150.069);
	--info: oklch(90.1% 0.058 230.902);
	--info-foreground: oklch(50% 0.134 242.749);
	--warning: oklch(92.4% 0.12 95.746);
	--warning-foreground: oklch(55.5% 0.163 48.998);
	--destructive: oklch(88.5% 0.062 18.334);
	--destructive-foreground: oklch(50.5% 0.213 27.518);

	/* ── Finance semantics ────────────────────────────────── */
	--profit: var(--success);
	--loss: var(--destructive);
	--feed-background: oklch(0.95 0 0);
	--scrollbar-thumb: #cccccc;

	/* ── Chart palette (12) — purple-led, distinct from brand ── */
	--chart-1: #639;
	--chart-2: #09c;
	--chart-3: #2cb;
	--chart-4: #c66;
	--chart-5: #9d5;
	--chart-6: #36b;
	--chart-7: #ed0;
	--chart-8: #e94;
	--chart-9: #a35;
	--chart-10: #0bc;
	--chart-11: #4d8;
	--chart-12: #817;

	/* ── Deprecated aliases — old name → new name ─────────── */
	--primary-light: var(--primary-muted);
	--primary-lighter: var(--primary-subtle);
	--primary-light-foreground: var(--primary-muted-foreground);
	--secondary-light: var(--secondary-muted);
	--secondary-light-foreground: var(--secondary-muted-foreground);
	--separator: var(--border-muted);
}

/* Force-light scope — slightly stronger borders for embedded light surfaces */
.force-light {
	--background: oklch(1 0 0);
	--body-background: var(--background);
	--foreground: oklch(0.145 0 0);
	--card: oklch(1 0 0);
	--card-foreground: oklch(0.145 0 0);
	--popover: oklch(1 0 0);
	--popover-foreground: oklch(0.145 0 0);
	--border: oklch(0.667 0 0);
	--input: oklch(0.667 0 0);
	--ring: oklch(0.667 0 0);
}

/* =====================================================================
   Dark mode — pink-tinted neutrals (never pure black)
   ===================================================================== */
.dark {
	--background: oklch(0.205 0.00469 326.84);
	--body-background: var(--background);
	--background-transparent: oklch(0.15 0.0049 326.73 / 0.5);
	--foreground: oklch(1 0 0);
	--card: oklch(0.145 0 0);
	--card-foreground: oklch(1 0 0);
	--popover: oklch(0.145 0 0);
	--popover-foreground: oklch(1 0 0);
	--muted: oklch(0.28 0.0173 326.73);
	--muted-foreground: oklch(0.666 0 0);

	--border: oklch(0.5147 0.0321 326.73);
	--border-muted: oklch(0.5147 0.0321 326.73);
	--input: oklch(0.5147 0.0321 326.73);
	--ring: oklch(0.5147 0.0321 326.73);

	--primary-muted: oklch(0.35 0.0469 326.84);
	--primary-muted-foreground: oklch(0.91 0.0391 325.39);
	--primary-subtle: oklch(0.2 0.02 326.84);
	--primary-subtle-foreground: oklch(0.91 0.0391 325.39);
	--secondary-muted: oklch(0.36 0.037 138.32);
	--secondary-muted-foreground: oklch(0.94 0.0316 137.82);
	--secondary-subtle: oklch(0.2 0.02 138.32);
	--secondary-subtle-foreground: oklch(0.94 0.0316 137.82);

	--success-foreground: oklch(1 0.1 166.069);
	--success: oklch(0.42 0.1 166.069);
	--info-foreground: oklch(90.1% 0.058 230.902);
	--info: oklch(0.3559 0.0839 242.749);
	--warning-foreground: oklch(92.4% 0.12 95.746);
	--warning: oklch(0.3941 0.1011 48.998);
	--destructive: oklch(0.2882 0.1159 27.518);
	--destructive-foreground: oklch(88.5% 0.062 18.334);

	--scrollbar-thumb: #333333;
}
