:root{
/* Base palette — Leaf (brand green, from the LifeTech leaf mark) */
--leaf-50:#F1F8F2;--leaf-100:#DCEEE0;--leaf-200:#B9DCC1;--leaf-300:#8DC79A;--leaf-400:#5FAC73;--leaf-500:#3A8E4F;--leaf-600:#2F7A42;--leaf-700:#236034;--leaf-800:#1A4827;--leaf-900:#12301A;
/* Base palette — Stone (warm ivory neutrals) */
--stone-0:#FFFFFF;--stone-50:#FBF8F1;--stone-100:#F4EFE4;--stone-200:#E6DFD0;--stone-300:#CFC7B5;--stone-400:#A79E8C;--stone-500:#7C7466;--stone-600:#5B554A;--stone-700:#3E3A32;--stone-800:#262421;--stone-900:#14130F;
/* Base palette — semantic hues */
--alert-50:#FBEDE9;--alert-500:#C4462A;--alert-700:#8E2F1A;
--amber-50:#FDF3E0;--amber-500:#D98A0B;--amber-700:#96600A;
--sky-50:#EAF3F6;--sky-500:#1F6F8B;--sky-700:#14505F;

/* Semantic — text */
--text-strong:var(--stone-900);--text-body:var(--stone-800);--text-muted:var(--stone-600);--text-faint:var(--stone-500);--text-invert:var(--stone-0);--text-brand:var(--leaf-700);--text-link:var(--leaf-700);--text-link-hover:var(--leaf-800);
/* Semantic — surfaces */
--surface-page:var(--stone-50);--surface-card:var(--stone-0);--surface-sunken:var(--stone-100);--surface-brand:var(--leaf-600);--surface-brand-soft:var(--leaf-50);--surface-ink:var(--stone-900);--surface-alert-soft:var(--alert-50);--surface-warn-soft:var(--amber-50);--surface-info-soft:var(--sky-50);
/* Semantic — borders */
--border-subtle:var(--stone-200);--border-default:var(--stone-300);--border-strong:var(--stone-400);--border-brand:var(--leaf-500);
/* Semantic — actions */
--action-primary-bg:var(--leaf-600);--action-primary-bg-hover:var(--leaf-700);--action-primary-bg-active:var(--leaf-800);--action-primary-fg:var(--stone-0);
--action-secondary-bg:var(--stone-0);--action-secondary-bg-hover:var(--leaf-50);--action-secondary-fg:var(--leaf-700);--action-secondary-border:var(--leaf-500);
--action-ghost-fg:var(--stone-700);--action-ghost-bg-hover:var(--stone-100);
--action-danger-bg:var(--alert-500);--action-danger-bg-hover:var(--alert-700);
--action-disabled-bg:var(--stone-200);--action-disabled-fg:var(--stone-500);
/* Semantic — status */
--status-safe:var(--leaf-600);--status-attention:var(--amber-500);--status-urgent:var(--alert-500);--status-info:var(--sky-500);
--focus-ring:var(--leaf-500);
}
