Substack vs Vite
60 token-level differences between these two design systems.
Background
#ffffff → #1b1b1f Text
#363737 → #ffffffdd Brand
#ff6719 → #646cff Border
rgba(0, 0, 0, 0.10) → #3c3f44 Display font
Cahuenga → Manrope Body size
19px → 16px colors 53 changed
~
bg #ffffff → #1b1b1f ~
bg-soft #f6f6f3 → #161618 ~
surface #ffffff → #252529 ~
text #363737 → #ffffffdd ~
text-strong #1a1a1a → #ffffff ~
text-soft #666c70 → #ebebf580 ~
text-faint #a8a8a8 → #ebebf538 ~
text-muted #878787 → #ebebf599 ~
brand #ff6719 → #646cff ~
brand-hover #e85412 → #535bf2 ~
brand-deep #cc4a0e → #3c44d4 ~
border rgba(0, 0, 0, 0.10) → #3c3f44 ~
border-strong rgba(0, 0, 0, 0.20) → #5a5d62 ~
border-soft rgba(0, 0, 0, 0.06) → #2e2e32 ~
success #0d8050 → #22c55e ~
warning #d97706 → #f59e0b ~
danger #dc2626 → #ef4444 ~
info #2563eb → #41d1ff +
bg-elevated #202127 +
surface-hover #2c2c33 +
surface-active #32323a +
surface-deep #101013 +
text-on-brand #ffffff +
brand-active #4b53e1 +
brand-light #747bff +
brand-soft #1d1f3a +
accent-cyan #41d1ff +
accent-purple-deep #bd34fe +
link #646cff +
link-hover #747bff +
border-brand #646cff +
shadow-color rgba(0, 0, 0, 0.40) +
shadow-color-md rgba(0, 0, 0, 0.50) +
shadow-color-lg rgba(0, 0, 0, 0.60) +
shadow-glow-purple rgba(100, 108, 255, 0.25) +
gradient-bolt linear-gradient(120deg, #bd34fe 30%, #41d1ff) +
gradient-text linear-gradient(120deg, #bd34fe 30%, #41d1ff) +
code-bg #161618 +
code-keyword #c792ea +
code-string #c3e88d +
code-comment #697098 +
code-number #f78c6c −
bg-elev #fafaf7 −
bg-cream #fbf9f4 −
surface-warm #fafaf7 −
text-link #363737 −
brand-tint rgba(255, 103, 25, 0.10) −
brand-tint-strong rgba(255, 103, 25, 0.18) −
border-warm rgba(0, 0, 0, 0.08) −
selection-bg rgba(255, 103, 25, 0.20) −
shadow-soft rgba(0, 0, 0, 0.06) −
shadow-medium rgba(0, 0, 0, 0.10) −
reading-rule rgba(0, 0, 0, 0.08) typography 5 changed
~
display {"family":"Cahuenga","size":56} → {"family":"Manrope","size":64} ~
h1 {"family":"Cahuenga","size":40} → {"family":"Manrope","size":40} ~
h2 {"family":"Cahuenga","size":32} → {"family":"Manrope","size":32} ~
body {"family":"Spectral","size":19} → {"family":"Inter","size":16} ~
label {"family":"Monaco","size":13} → {"family":"Fira Code","size":11} radius 1 changed
~
button 6px → 8px spacing 1 changed
~
xl 48px → 64px