:root{
/* base palette */
--forest-900:#12261d;
--forest-700:#1B4332;
--forest-600:#245943;
--forest-500:#2f7058;
--lima-500:#A3E635;
--lima-600:#8bc926;
--lima-100:#eefad0;
--niebla-700:#4b5563;
--niebla-500:#6B7280;
--niebla-300:#9CA3AF;
--niebla-100:#E5E7EB;
--crema-100:#FAFAF7;
--crema-0:#FFFFFF;
--ink-900:#14201b;

/* semantic */
--surface-page:var(--crema-100);
--surface-card:var(--crema-0);
--surface-hero:var(--forest-700);
--surface-hero-alt:var(--forest-900);
--surface-sunken:#F1F1EB;
--surface-inverse:var(--forest-700);

--text-primary:var(--ink-900);
--text-secondary:var(--niebla-500);
--text-muted:var(--niebla-300);
--text-on-forest:var(--crema-100);
--text-on-lima:var(--forest-900);
--text-link:var(--forest-600);
--text-link-hover:var(--forest-700);

--accent-lima:var(--lima-500);
--accent-lima-hover:var(--lima-600);
--accent-forest:var(--forest-700);
--accent-forest-hover:var(--forest-600);

--border-subtle:var(--niebla-100);
--border-default:#D9D9D1;
--border-strong:var(--niebla-500);
--border-focus:var(--lima-500);

--state-success:#2f7058;
--state-warning:#c8871a;
--state-danger:#c0392b;
}
