Cal.com vs WHOOP
64 token-level differences between these two design systems.
Background
#f4f4f4 → #000000 Text
#111111 → #ffffff Brand
#111111 → #a0d10b Border
rgba(0, 0, 0, 0.08) → #1f1f1f Display font
Cal Sans → Inter Body size
16px → 16px colors 57 changed
~
bg #f4f4f4 → #000000 ~
surface #ffffff → #0a0a0a ~
surface-soft #f8f9fa → #141414 ~
surface-strong #e5e7eb → #1f1f1f ~
text #111111 → #ffffff ~
text-strong #000000 → #ffffff ~
text-soft #6b7280 → #8a8a8a ~
text-muted #898989 → #b5b5b5 ~
text-faint #9ca3af → #5e5e5e ~
brand #111111 → #a0d10b ~
brand-active #242424 → #739707 ~
link #0000ee → #ffffff ~
link-hover #0000aa → #a0d10b ~
border rgba(0, 0, 0, 0.08) → #1f1f1f ~
border-soft #f3f4f6 → #141414 ~
border-strong #e5e7eb → #2e2e2e +
bg-elev #0a0a0a +
bg-elev-strong #141414 +
bg-light #ffffff +
brand-hover #88b609 +
brand-pale #e8f3c6 +
brand-deep #476005 +
brand-soft #0c1102 +
text-on-brand #000000 +
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) +
success #16ec06 +
warning #ffde00 +
danger #ff0026 +
info #0093e7 −
bg-soft #fafafa −
surface-card #f5f5f5 −
surface-dark #101010 −
surface-dark-elev #1a1a1a −
text-body #374151 −
brand-disabled #e5e7eb −
on-brand #ffffff −
on-dark #ffffff −
on-dark-soft #a1a1aa −
link-visited #551a8b −
brand-accent #3b82f6 −
badge-orange #fb923c −
badge-pink #ec4899 −
badge-violet #8b5cf6 −
badge-emerald #34d399 −
semantic-success #10b981 −
semantic-warning #f59e0b −
semantic-danger #ef4444 −
semantic-info #3b82f6 typography 4 changed
~
display {"family":"Cal Sans","size":64} → {"family":"Inter","size":72} ~
h1 {"family":"Cal Sans","size":36} → {"family":"Inter","size":40} ~
h2 {"family":"Cal Sans","size":28} → {"family":"Inter","size":32} ~
label {"family":"JetBrains Mono","size":11} → {"family":"Inter","size":11} radius 1 changed
~
card 20px → 12px spacing 2 changed
~
lg 48px → 32px ~
xl 96px → 48px