PostHog vs Substack
57 token-level differences between these two design systems.
Background
#eeefe9 → #ffffff Text
#23251d → #363737 Brand
#cd8407 → #ff6719 Border
rgba(35,37,29,0.12) → rgba(0, 0, 0, 0.10) Display font
IBM Plex Sans Variable → Cahuenga Body size
16px → 19px colors 51 changed
~
bg #eeefe9 → #ffffff ~
surface-warm #faf9f3 → #fafaf7 ~
text #23251d → #363737 ~
text-muted #4d4f46 → #878787 ~
text-soft #6e7065 → #666c70 ~
text-faint #a8aaa1 → #a8a8a8 ~
brand #cd8407 → #ff6719 ~
brand-hover #eb9d2a → #e85412 ~
brand-deep #7d5104 → #cc4a0e ~
border rgba(35,37,29,0.12) → rgba(0, 0, 0, 0.10) ~
border-soft rgba(35,37,29,0.06) → rgba(0, 0, 0, 0.06) ~
border-strong rgba(35,37,29,0.24) → rgba(0, 0, 0, 0.20) ~
on-brand #23251d → #ffffff +
bg-elev #fafaf7 +
bg-cream #fbf9f4 +
bg-soft #f6f6f3 +
text-strong #1a1a1a +
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) +
success #0d8050 +
warning #d97706 +
danger #dc2626 +
info #2563eb +
shadow-soft rgba(0, 0, 0, 0.06) +
shadow-medium rgba(0, 0, 0, 0.10) +
reading-rule rgba(0, 0, 0, 0.08) −
bg-deep #e6e7df −
bg-cooler #f5f6ef −
surface-alt #d2d3cc −
surface-dark #1d1f17 −
text-on-dark #eeefe9 −
text-on-brand #23251d −
brand-active #a36a05 −
brand-warm #f35454 −
brand-warm-hover #ff7575 −
brand-warm-deep #c43838 −
brand-blue #1d4aff −
brand-blue-hover #2754ff −
brand-blue-deep #0d2ec4 −
accent-mint #76eaa3 −
accent-purple #9d4cf2 −
border-dark rgba(255,255,255,0.10) −
shadow-card rgba(35,37,29,0.06) −
shadow-elev rgba(35,37,29,0.10) −
semantic-success #76eaa3 −
semantic-warning #cd8407 −
semantic-danger #f35454 −
semantic-info #1d4aff typography 5 changed
~
display {"family":"IBM Plex Sans Variable","size":88} → {"family":"Cahuenga","size":56} ~
h1 {"family":"IBM Plex Sans Variable","size":60} → {"family":"Cahuenga","size":40} ~
h2 {"family":"IBM Plex Sans Variable","size":44} → {"family":"Cahuenga","size":32} ~
body {"family":"IBM Plex Sans Variable","size":16} → {"family":"Spectral","size":19} ~
label {"family":"Source Code Pro","size":11} → {"family":"Monaco","size":13} radius 1 changed
~
button 8px → 6px spacing identical
No differences.