/**
 * Curenoble Health Calculators — design tokens
 *
 * Palette: "clinical pine" — a deep pine-teal paired with a warm amber,
 * on a soft ivory ground. Chosen to read as calm/trustworthy (clinical)
 * without tipping into cold hospital-blue, and to avoid the generic
 * cream+terracotta AI-default pairing.
 *
 * Type: Fraunces (display, used sparingly for the hero + big numbers),
 * Inter (body/UI), IBM Plex Mono (tabular data — the calculator readouts
 * are styled like a lab report, so numbers get a mono face).
 */

.cnhc-root {
	/* Color */
	--cnhc-pine-900: #103824;
	--cnhc-pine-800: #15492f;
	--cnhc-pine-700: #1c6b3f;
	--cnhc-pine-600: #238049;
	--cnhc-pine-100: #dcf0e2;
	--cnhc-pine-50:  #eff8f2;

	--cnhc-amber-600: #c96a2e;
	--cnhc-amber-500: #e07a3e;
	--cnhc-amber-100: #fbe6d4;

	--cnhc-ivory:      #f7f8f6;
	--cnhc-surface:    #ffffff;
	--cnhc-border:     #e3e7e3;
	--cnhc-border-soft:#ecefec;

	--cnhc-text:        #1f2b23;
	--cnhc-text-muted:  #5c6b60;
	--cnhc-text-faint:  #8a9690;

	--cnhc-success: #238049;
	--cnhc-success-bg: #e6f4ea;
	--cnhc-warning: #c98a1f;
	--cnhc-warning-bg: #fbf1de;
	--cnhc-danger:  #b8452f;
	--cnhc-danger-bg: #fbe6e1;
	--cnhc-info: var(--cnhc-pine-700);
	--cnhc-info-bg: var(--cnhc-pine-50);

	/* Gauge scale colors (BMI / body-fat style range bars) */
	--cnhc-scale-1: #4fa3d1; /* under     */
	--cnhc-scale-2: #238049; /* healthy   */
	--cnhc-scale-3: #e0a83e; /* elevated  */
	--cnhc-scale-4: #d1482f; /* high      */
	--cnhc-scale-5: #b8302f; /* very high */

	/* Type */
	--cnhc-font-display: 'Fraunces', Georgia, 'Iowan Old Style', serif;
	--cnhc-font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	--cnhc-font-mono: 'IBM Plex Mono', 'SFMono-Regular', Consolas, monospace;

	--cnhc-fs-hero: clamp(2rem, 4.5vw, 3.25rem);
	--cnhc-fs-h2: clamp(1.5rem, 3vw, 2rem);
	--cnhc-fs-h3: 1.25rem;
	--cnhc-fs-body: 1rem;
	--cnhc-fs-small: 0.875rem;
	--cnhc-fs-caption: 0.75rem;
	--cnhc-fs-readout: clamp(2.5rem, 7vw, 4rem);

	/* Layout */
	--cnhc-radius-sm: 6px;
	--cnhc-radius-md: 12px;
	--cnhc-radius-lg: 20px;
	--cnhc-space-1: 0.25rem;
	--cnhc-space-2: 0.5rem;
	--cnhc-space-3: 0.75rem;
	--cnhc-space-4: 1rem;
	--cnhc-space-5: 1.5rem;
	--cnhc-space-6: 2rem;
	--cnhc-space-8: 3rem;
	--cnhc-space-10: 4rem;
	--cnhc-max-width: 1120px;
	--cnhc-shadow-sm: 0 1px 2px rgba(15, 46, 42, 0.06);
	--cnhc-shadow-md: 0 8px 24px rgba(15, 46, 42, 0.08);
	--cnhc-shadow-lg: 0 16px 40px rgba(15, 46, 42, 0.12);
	--cnhc-transition: 160ms ease;
}

/* Respect reduced-motion preferences plugin-wide. */
@media (prefers-reduced-motion: reduce) {
	.cnhc-root * {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		scroll-behavior: auto !important;
	}
}
