Design system generator
Magenta #AE6BB4
Magenta sits at step 500 of its scale. UIX builds a full design system around it: 11-step scales, light and dark tokens, 40 contrast-checked text pairs, type and radius. It is close to Tailwind’s fuchsia (#D946EF).
Color scales
| Magenta | 50#F9F3F9 | 100#F2E5F2 | 200#E7D0E9 | 300#D7B1DA | 400#C08AC5 | 500#AE6BB4 | 600#9952A0 | 700#85428B | 800#6E3773 | 900#5A325E | 950#341C36 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Fern | 50#F1F7F1 | 100#E1EEE1 | 200#C9E1C8 | 300#A5CDA4 | 400#78B177 | 500#529C53 | 600#348738 | 700#237328 | 800#1F5F22 | 900#224F23 | 950#122E13 |
| Neutral | 50#FBFAFB | 100#F5F3F5 | 200#EAE6EA | 300#D9D2D9 | 400#A79DA6 | 500#786E78 | 600#5A515A | 700#463D46 | 800#2D252D | 900#1C161C | 950#0C090C |
| Error | 50#FFF2F3 | 300#FFA2AD | 500#DE295B | 800#970036 | 950#4A081A | ||||||
| Warning | 50#FFF3EB | 300#FF9543 | 500#CD6900 | 800#7B3D00 | 950#3E1C00 | ||||||
| Success | 50#EFF8F5 | 300#8FD0BF | 500#00B79C | 800#005E4F | 950#002E26 |
What each step is for
50Page and card backgrounds100Page and card backgrounds200Hover and selected backgrounds300Borders and dividers400Strong borders, focus rings, icons on dark500Solid fills, charts600Buttons and links700Hover on buttons, brand text800Pressed states, text on light tints900Headings and text on light backgrounds950Headings and text on light backgrounds
Why these choices
- Your color sits at step 500. Its lightness (63% in OKLCH) matches step 500 of the scale, so the other ten steps are built around it instead of forcing it to 500.
- Buttons use step 600, not your exact color. White text on #AE6BB4 is only 3.8:1. Step 600 is the closest one that passes AA, so it looks like your brand and stays readable.
- Brand text starts at step 600. Links and brand-colored text need 4.5:1 on white. Step 600 is the lightest that gets there; anything lighter is for large headings and icons only.
- 1 token moved for contrast. bg/secondary (Light): secondary 600 → secondary 700, because text/on-secondary on bg/secondary was 4.50:1
- Every text pair passes AA. 40 foreground and background pairs checked in light and dark.
Contrast receipt
| Pair | Mode | Colors | WCAG 2 | Level | APCA |
|---|---|---|---|---|---|
| text/primary on bg/surface | Light | 17.78:1 | AAA | Lc 105 | |
| text/secondary on bg/surface | Light | 7.61:1 | AAA | Lc 86 | |
| text/tertiary on bg/surface | Light | 4.88:1 | AA | Lc 74 | |
| text/brand on bg/surface | Light | 5.16:1 | AA | Lc 75 | |
| text/danger on bg/surface | Light | 8.86:1 | AAA | Lc 88 | |
| text/warning on bg/surface | Light | 8.37:1 | AAA | Lc 88 | |
| text/success on bg/surface | Light | 7.74:1 | AAA | Lc 86 | |
| text/primary on bg/canvas | Light | 17.08:1 | AAA | Lc 102 | |
| text/secondary on bg/canvas | Light | 7.31:1 | AAA | Lc 84 | |
| text/tertiary on bg/canvas | Light | 4.69:1 | AA | Lc 71 | |
| text/secondary on bg/subtle | Light | 6.89:1 | AA | Lc 80 | |
| text/on-brand on bg/brand | Light | 5.16:1 | AA | Lc 81 | |
| text/on-brand on bg/brand-hover | Light | 6.67:1 | AA | Lc 88 | |
| text/on-danger on bg/danger | Light | 4.59:1 | AA | Lc 76 | |
| text/on-secondary on bg/secondary | Light | 5.91:1 | AA | Lc 84 | |
| text/inverse on bg/inverse | Light | 17.78:1 | AAA | Lc 107 | |
| text/brand on bg/brand-subtle | Light | 4.72:1 | AA | Lc 69 | |
| text/danger on bg/danger-subtle | Light | 8.12:1 | AAA | Lc 82 | |
| text/success on bg/success-subtle | Light | 7.15:1 | AAA | Lc 81 | |
| text/warning on bg/warning-subtle | Light | 7.68:1 | AAA | Lc 82 | |
| text/primary on bg/surface | Dark | 17.08:1 | AAA | Lc 104 | |
| text/secondary on bg/surface | Dark | 12.00:1 | AAA | Lc 79 | |
| text/tertiary on bg/surface | Dark | 6.79:1 | AA | Lc 50 | |
| text/brand on bg/surface | Dark | 6.51:1 | AA | Lc 48 | |
| text/danger on bg/surface | Dark | 9.33:1 | AAA | Lc 65 | |
| text/warning on bg/surface | Dark | 8.16:1 | AAA | Lc 59 | |
| text/success on bg/surface | Dark | 10.11:1 | AAA | Lc 69 | |
| text/primary on bg/canvas | Dark | 19.03:1 | AAA | Lc 105 | |
| text/secondary on bg/canvas | Dark | 13.37:1 | AAA | Lc 80 | |
| text/tertiary on bg/canvas | Dark | 7.56:1 | AAA | Lc 51 | |
| text/secondary on bg/subtle | Dark | 10.02:1 | AAA | Lc 77 | |
| text/on-brand on bg/brand | Dark | 5.16:1 | AA | Lc 81 | |
| text/on-brand on bg/brand-hover | Dark | 6.67:1 | AA | Lc 88 | |
| text/on-danger on bg/danger | Dark | 4.59:1 | AA | Lc 76 | |
| text/on-secondary on bg/secondary | Dark | 7.88:1 | AAA | Lc 55 | |
| text/inverse on bg/inverse | Dark | 17.08:1 | AAA | Lc 102 | |
| text/brand on bg/brand-subtle | Dark | 5.63:1 | AA | Lc 46 | |
| text/danger on bg/danger-subtle | Dark | 8.22:1 | AAA | Lc 63 | |
| text/success on bg/success-subtle | Dark | 8.42:1 | AAA | Lc 67 | |
| text/warning on bg/warning-subtle | Dark | 7.03:1 | AAA | Lc 57 |