Phantom vs WHOOP
56 token-level differences between these two design systems.
Background
#0c0c0e → #000000 Text
#ffffff → #ffffff Brand
#ab9ff2 → #a0d10b Border
rgba(255, 255, 255, 0.08) → #1f1f1f Display font
Phantom Sans → Inter Body size
15px → 16px colors 46 changed
~
bg #0c0c0e → #000000 ~
bg-elev #1f1f25 → #0a0a0a ~
surface #15151a → #0a0a0a ~
surface-strong #22222a → #1f1f1f ~
brand #ab9ff2 → #a0d10b ~
brand-hover #bdb3f6 → #88b609 ~
brand-deep #534bb1 → #476005 ~
text-muted #a8a8b8 → #b5b5b5 ~
text-soft #7a7a8c → #8a8a8a ~
text-faint #5a5a6c → #5e5e5e ~
text-on-brand #0c0c0e → #000000 ~
link #ab9ff2 → #ffffff ~
link-hover #ffffff → #a0d10b ~
border rgba(255, 255, 255, 0.08) → #1f1f1f ~
border-strong rgba(255, 255, 255, 0.16) → #2e2e2e ~
success #5dd4a8 → #16ec06 ~
warning #f5c842 → #ffde00 ~
danger #ff6b6b → #ff0026 ~
info #ab9ff2 → #0093e7 +
bg-elev-strong #141414 +
bg-light #ffffff +
surface-soft #141414 +
brand-active #739707 +
brand-pale #e8f3c6 +
brand-soft #0c1102 +
border-soft #141414 +
border-input #3d3d3d +
recovery-green #16ec06 +
recovery-yellow #ffde00 +
recovery-red #ff0026 +
strain-blue #0093e7 +
sleep-blue #7eb8d9 +
hrv-purple #9c7ed9 +
scrim rgba(0,0,0,0.85) +
shadow-card rgba(0,0,0,0.6) +
shadow-elev rgba(0,0,0,0.8) −
bg-deep #06060a −
bg-section #15151a −
surface-translucent rgba(12, 12, 14, 0.85) −
brand-pressed #9b8ee8 −
brand-deeper #3d3686 −
brand-tint rgba(171, 159, 242, 0.15) −
on-brand #0c0c0e −
selected-bg rgba(171, 159, 242, 0.15) −
border-brand #ab9ff2 −
ghost-glow #ab9ff2 typography 5 changed
~
display {"family":"Phantom Sans","size":88} → {"family":"Inter","size":72} ~
h1 {"family":"Phantom Sans","size":40} → {"family":"Inter","size":40} ~
h2 {"family":"Phantom Sans","size":32} → {"family":"Inter","size":32} ~
body {"family":"Phantom Sans","size":15} → {"family":"Inter","size":16} ~
label {"family":"JetBrains Mono","size":12} → {"family":"Inter","size":11} radius identical
No differences.
spacing 5 changed
~
xs 0px → 4px ~
sm 4px → 8px ~
md 12px → 16px ~
lg 24px → 32px ~
xl 40px → 48px