:root{
/* Teal — brand primary, boosted saturation for more energy than the legacy mark */
--teal-50:#eaf8fa;
--teal-100:#cdf0f4;
--teal-200:#9ee3ec;
--teal-300:#63cedd;
--teal-400:#2bb2c6;
--teal-500:#0e93a8;
--teal-600:#0a7689;
--teal-700:#0a5d6d;
--teal-800:#0c4a57;
--teal-900:#0d3d48;

/* Anthracite — sympathetic warm-neutral charcoal (slightly blue-teal undertone, not flat black) */
--anthracite-50:#f4f6f6;
--anthracite-100:#e4e8e9;
--anthracite-200:#c7d0d1;
--anthracite-300:#9fabad;
--anthracite-400:#727f82;
--anthracite-500:#4f5c5f;
--anthracite-600:#3a464a;
--anthracite-700:#2b3538;
--anthracite-800:#1f2729;
--anthracite-900:#161c1e;

/* Spark — accent drawn from the same hue family, pushed brighter for CTAs/highlights */
--spark-400:#3be0c2;
--spark-500:#14c9a8;
--spark-600:#0da688;

/* Semantic status — pass/fail/conformity states for a testing lab */
--status-success:#1f9d63;
--status-success-bg:#e6f6ee;
--status-warning:#c98a12;
--status-warning-bg:#fbf1de;
--status-danger:#c4432f;
--status-danger-bg:#fbeae6;

--white:#ffffff;

/* Semantic aliases */
--color-primary:var(--teal-600);
--color-primary-hover:var(--teal-700);
--color-primary-soft:var(--teal-50);
--color-accent:var(--spark-500);
--color-accent-hover:var(--spark-600);

--surface-page:#ffffff;
--surface-sunken:var(--anthracite-50);
--surface-card:#ffffff;
--surface-dark:var(--anthracite-800);
--surface-dark-2:var(--anthracite-900);

--text-primary:var(--anthracite-800);
--text-secondary:var(--anthracite-500);
--text-on-dark:#f4f6f6;
--text-on-dark-secondary:var(--anthracite-300);
--text-on-primary:#ffffff;

--border-default:var(--anthracite-200);
--border-strong:var(--anthracite-300);
--border-on-dark:rgba(244,246,246,0.16);
--focus-ring:var(--teal-400);
}
