OpenAI vs Turbo
69 token-level differences between these two design systems.
Background
#ffffff → #000000 Text
#000000 → #ffffff Brand
#000000 → #ff1e56 Border
rgba(0,0,0,0.1) → rgba(255, 255, 255, 0.08) Display font
OpenAI Sans → Geist Body size
16px → 16px colors 59 changed
~
bg #ffffff → #000000 ~
bg-soft #f1f1f1 → #0a0a0a ~
surface #fafafa → #111111 ~
text #000000 → #ffffff ~
text-strong #000000 → #ffffff ~
text-muted #5d5d5d → #a1a1a1 ~
text-faint #b4b4b4 → #444444 ~
brand #000000 → #ff1e56 ~
accent #10a37f → #0096ff ~
accent-soft #d6f3e8 → rgba(0, 150, 255, 0.12) ~
border rgba(0,0,0,0.1) → rgba(255, 255, 255, 0.08) ~
border-strong rgba(0,0,0,0.16) → rgba(255, 255, 255, 0.15) ~
success #10a37f → #0cce6b ~
warning #d97706 → #f5a623 ~
danger #cc2525 → #ff4d4f ~
info #3a3a3a → #0096ff +
surface-strong #1a1a1a +
surface-elevated #202020 +
bg-overlay rgba(0, 0, 0, 0.72) +
text-soft #666666 +
brand-strong #e6164a +
brand-soft rgba(255, 30, 86, 0.12) +
accent-strong #0078cc +
gradient-from #ff1e56 +
gradient-via #9b56b3 +
gradient-to #0096ff +
glow-magenta rgba(255, 30, 86, 0.4) +
glow-blue rgba(0, 150, 255, 0.35) +
glow-soft rgba(255, 30, 86, 0.2) +
border-subtle rgba(255, 255, 255, 0.05) +
border-brand rgba(255, 30, 86, 0.4) +
border-focus #ff1e56 +
success-bg rgba(12, 206, 107, 0.1) +
warning-bg rgba(245, 166, 35, 0.1) +
danger-bg rgba(255, 77, 79, 0.1) +
info-bg rgba(0, 150, 255, 0.1) +
on-accent #ffffff +
on-surface #ffffff +
on-bg #ffffff −
bg-section #f7f7f7 −
surface-card #ffffff −
surface-hover rgba(0,0,0,0.04) −
surface-press rgba(0,0,0,0.08) −
text-subtle #8e8e8e −
text-on-dark #ededed −
brand-hover #1a1a1a −
brand-active #2c2c2c −
brand-on-dark #ffffff −
accent-hover #0d8a6b −
link #000000 −
link-hover #5d5d5d −
link-visited #000000 −
border-soft rgba(0,0,0,0.08) −
scrim rgba(0,0,0,0.5) −
shadow-card rgba(0,0,0,0.06) −
shadow-elev rgba(0,0,0,0.10) −
shadow-modal rgba(0,0,0,0.20) −
warning-soft #fdf3e7 −
danger-soft #fae5e5 typography 5 changed
~
display {"family":"OpenAI Sans","size":48} → {"family":"Geist","size":96} ~
h1 {"family":"OpenAI Sans","size":40} → {"family":"Geist","size":64} ~
h2 {"family":"OpenAI Sans","size":32} → {"family":"Geist","size":48} ~
body {"family":"OpenAI Sans","size":16} → {"family":"Geist","size":16} ~
label {"family":"OpenAI Sans Mono","size":12} → {"family":"Geist Mono","size":12} radius identical
No differences.
spacing 5 changed
~
xs 4px → 0px ~
sm 8px → 2px ~
md 16px → 8px ~
lg 32px → 20px ~
xl 48px → 32px