Magic vs Bolt
55 token-level differences between these two design systems.
Background
#ffffff → #1e1e21 Text
#1c2024 → #ffffff Brand
#0090ff → #1488fc Border
#e8e8ec → rgba(255, 255, 255, 0.10) Display font
Aeonik → Inter Display Body size
16px → 16px colors 50 changed
~
bg #ffffff → #1e1e21 ~
surface #ffffff → #26262a ~
surface-soft #fcfcfd → #2a2a2e ~
text #1c2024 → #ffffff ~
text-muted #60646c → #a3a3a8 ~
text-faint #80838d → #8a8a8f ~
text-disabled #8b8d98 → #5c5c61 ~
brand #0090ff → #1488fc ~
on-brand #ffffff → #f3f0f5 ~
link #0d74ce → #2ba6ff ~
link-hover #0090ff → #5cbbff ~
border #e8e8ec → rgba(255, 255, 255, 0.10) ~
border-strong #d9d9e0 → rgba(255, 255, 255, 0.16) +
bg-deep #161618 +
surface-strong #2e2e33 +
text-display #fffeff +
text-medium #b2b2b8 +
brand-bright #2ba6ff +
brand-deep #0f6fd6 +
brand-wash rgba(20, 136, 252, 0.12) +
on-brand-bright #ffffff +
utility-dark #101010 +
utility-dark-text rgba(255, 255, 255, 0.75) +
selected-bg #26262a +
border-subtle rgba(255, 255, 255, 0.06) +
border-focus #1488fc +
success-bg rgba(34, 134, 58, 0.18) +
success-text #3fce6a +
warning-bg rgba(166, 120, 20, 0.18) +
warning-text #e2b13c +
danger-bg rgba(196, 52, 60, 0.18) +
danger-text #ff6b73 +
info-bg rgba(20, 136, 252, 0.14) +
info-text #5cbbff −
surface-muted #f9f9fb −
text-strong #1c2024 −
text-body #2c2d2f −
brand-hover #0586f0 −
brand-strong #0d74ce −
brand-ink #113264 −
border-soft #f0f0f3 −
border-translucent rgba(0, 8, 48, 0.094) −
diff-insert-bg #ecfdee −
diff-delete-bg #feeced −
diff-delete-surface #fcf7f8 −
success #2c8849 −
warning #bb6a00 −
danger #c62a44 −
info #0090ff −
shadow-tint rgba(0, 5, 9, 0.06) typography 4 changed
~
display {"family":"Aeonik","size":64} → {"family":"Inter Display","size":80} ~
h1 {"family":"Aeonik","size":46} → {"family":"Inter Display","size":48} ~
h2 {"family":"Aeonik","size":34} → {"family":"Inter Display","size":32} ~
body {"family":"Suisse Intl","size":16} → {"family":"Inter","size":16} radius 1 changed
~
card 8px → 16px spacing identical
No differences.