The one brand ramp. Anchor #8D58FE at step 500. Used for primary actions, links, focus rings, and brand surfaces. Every component that carries brand identity references this ramp — not directly, but through the --color-primary-* aliases.
Brand hue. 5 tints (50–400) for surfaces and hover states; 5 shades (600–950) for hover / pressed / ink. The anchor sits at 500 so retuning brightness is symmetric in either direction.
50 is the lightest tint, 950 is deepest ink. The anchor (●) marks the brand stop at 500.
What components consume.
--color-primary: var(--color-iris-500); /* default action */ --color-primary-hover: var(--color-iris-600); /* hover */ --color-primary-pressed: var(--color-iris-700); /* active / pressed */ --color-primary-surface: var(--color-iris-50); /* tinted surface */ --color-primary-border: var(--color-iris-200); /* soft outline */ --color-on-primary: #ffffff; /* text on primary */
Primary is the strongest voice in the system — use it for one action per view.
iris-50 surface, iris-500 action, iris-700 outline text.
Links use iris-700 for AA contrast on white; hover drops to iris-800.
Read the release notes for what shipped this week.
iris-950 as the branded dark canvas. iris-100 as inverted ink.