Substack vs Bose
63 token-level differences between these two design systems.
Background
#ffffff → #000000 Text
#363737 → #ffffff Brand
#ff6719 → #000000 Border
rgba(0, 0, 0, 0.10) → #262626 Display font
Cahuenga → Inter Body size
19px → 16px colors 55 changed
~
bg #ffffff → #000000 ~
bg-elev #fafaf7 → #0d0d0d ~
bg-soft #f6f6f3 → #1a1a1a ~
surface #ffffff → #0d0d0d ~
text #363737 → #ffffff ~
text-strong #1a1a1a → #ffffff ~
text-soft #666c70 → #a3a3a3 ~
text-muted #878787 → #d6d6d6 ~
brand #ff6719 → #000000 ~
brand-hover #e85412 → #262626 ~
border rgba(0, 0, 0, 0.10) → #262626 ~
border-strong rgba(0, 0, 0, 0.20) → #404040 ~
border-soft rgba(0, 0, 0, 0.06) → #1a1a1a ~
success #0d8050 → #10b981 ~
warning #d97706 → #f59e0b ~
info #2563eb → #ffffff +
bg-light #ffffff +
bg-warm-light #f5f5f5 +
surface-hover #1f1f1f +
surface-light #fafafa +
text-inverse #000000 +
text-inverse-muted #5c5c5c +
text-inverse-soft #737373 +
brand-on-dark #ffffff +
brand-cta-dark #ffffff +
brand-cta-light #000000 +
border-on-light #e5e5e5 +
border-on-light-strong #cccccc +
ring #ffffff +
ring-on-light #000000 +
link #ffffff +
link-hover #d6d6d6 +
link-on-light #000000 +
badge-bg #ffffff +
badge-text #000000 +
rating-star #ffd700 +
product-shadow rgba(0,0,0,0.5) +
product-shadow-light rgba(0,0,0,0.1) +
modal-overlay rgba(0,0,0,0.7) +
audio-cyan #3dd5e8 +
qc-line #999999 +
cta-strikethrough #a3a3a3 +
sale-price #e60023 −
bg-cream #fbf9f4 −
surface-warm #fafaf7 −
text-faint #a8a8a8 −
text-link #363737 −
brand-deep #cc4a0e −
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":"Inter","size":72} ~
h1 {"family":"Cahuenga","size":40} → {"family":"Inter","size":40} ~
h2 {"family":"Cahuenga","size":32} → {"family":"Inter","size":32} ~
body {"family":"Spectral","size":19} → {"family":"Inter","size":16} ~
label {"family":"Monaco","size":13} → {"family":"JetBrains Mono","size":11} radius 1 changed
~
card 12px → 8px spacing 2 changed
~
lg 32px → 40px ~
xl 48px → 64px