/*
 * ILV Coaching — CSS Custom Properties
 * Source of truth: Layout.astro (Astro wireframe)
 * Variable names match global.css + components.css exactly.
 * Archive of previous token-generator version: css-variables.deprecated.css
 */

:root {
	--font-heading: 'Outfit', sans-serif;
	--font-body: 'Nunito Sans', sans-serif;

	/* Colors — Primary (Teal) */
	--primary-700: #0d4f4b;
	--primary-650: #15716a;
	--primary-600: #1f9189;
	--primary-550: #2bafa5;
	--primary-500: #4ecdc4;
	--primary-450: #61cdc5;
	--primary-400: #85d4ce;
	--primary-350: #a6dcd8;
	--primary-300: #c6e6e4;

	/* Colors — Accent (Coral) */
	--accent-700: #732a26;
	--accent-650: #962f2c;
	--accent-600: #c6342f;
	--accent-550: #e14947;
	--accent-500: #ff6b6b;
	--accent-450: #ff8585;
	--accent-400: #ff9b99;
	--accent-350: #fdb7b4;
	--accent-300: #fcccca;

	/* Colors — Neutral */
	--neutral-900: #1a1a1a;
	--neutral-800: #333333;
	--neutral-700: #4d4d4d;
	--neutral-600: #666666;
	--neutral-500: #808080;
	--neutral-400: #999999;
	--neutral-300: #b3b3b3;
	--neutral-200: #e5e5e5;
	--neutral-100: #f5f5f5;

	--white: #ffffff;
	--black: #000000;

	/* Fluid typography */
	--text-xs:  clamp(0.6875rem, 0.65rem + 0.1vw, 0.75rem);
	--text-s:   clamp(0.875rem,  0.8rem  + 0.2vw, 0.9375rem);
	--text-m:   clamp(1rem,      0.9rem  + 0.4vw, 1.25rem);
	--text-xl:  clamp(1.5rem,    1.3rem  + 0.6vw, 1.875rem);
	--text-2xl: clamp(1.875rem,  1.6rem  + 0.7vw, 2.25rem);
	--text-3xl: clamp(2.25rem,   2rem    + 1vw,   3rem);

	/* Spacing */
	--space-s: clamp(0.5rem, 0.3rem + 0.6vw, 1rem);
	--space-m: clamp(1rem,   0.6rem + 0.8vw, 1.5rem);
	--space-l: clamp(1.5rem, 1rem   + 1vw,   2.5rem);

	/* Radius */
	--radius-sm:   4px;
	--radius-md:   8px;
	--radius-lg:   12px;
	--radius-xl:   16px;
	--radius-full: 9999px;

	/* Shadows */
	--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
	--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1);
	--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1);
}
