Neon
Dark · Generated 19/04/2026 · 31 colors · 68 type tokens · 40 spacing steps · 6 breakpoints · 3 motion tokens
v1.0.0
Color Palette
Background Colors
White
#FFFFFF · ×9089
Dark Green
#2C6D4C · ×1800
Black
#000000 · ×905
Mid Gray
#94979E · ×204
Cyan
#34D59A · ×46
Dark Gray 3
#303236 · ×41
Mid Gray 3
#AFB1B6 · ×36
Cyan 2 (Brand)
#00E599 · ×17
Dark Gray 4
#18191B · ×9
Light Gray 3
#E4F1EB · ×4
Light Cyan
#CAE6D9
Dark Gray 8
#111215
Dark Gray 9
#151617
Black 3
#0A0A0B
Text Colors
Mid Gray 2
#797D86 · ×118
Light Gray
#C9CBCF · ×80
Dark Gray
#242628 · ×76
Dark Gray 2
#61646B · ×43
Light Gray 2
#E4E5E7 · ×22
Red
#FF3621 · ×15
Dark Cyan
#285D49 · ×12
Light Orange
#F7B983 · ×6
Light Blue
#94B5F7 · ×6
Dark Gray 6
#131415 · ×4
Dark Gray 7
#494B50 · ×2
White 2
#F9FAFA · ×2
Border & Fill Colors
White 3 (Border)
#F5FFFF
Cyan 3
#37C38F · ×2
Black 2
#0C0D0D · ×2
Cyan 4
rgba(57,165,125,.6)
Typography
Primary · Inter
Inter
Serverless Postgres that scales to zero. The fastest way to ship with Postgres.
Regular · 400 Medium · 500 Semibold · 600
Mono · GeistMono
GeistMono
psql postgres://user:pass@ep-cool.us-east-2.aws.neon.tech/neondb
Variable weight
Ship faster
72px · Semibold · line-height: 72px · tracking: −2.88px (tightest in series)
Serverless Postgres
52px · Semibold · line-height: 58.5px · tracking: −2.08px
Scale to zero instantly
36px · Semibold · line-height: 40.5px · tracking: −0.96px
Neon separates compute from storage, giving you instant database provisioning, autoscaling, and point-in-time recovery.
20px · Regular · line-height: 30px · tracking: −0.4px
Last backup: 2 minutes ago · compute: active · 47 connections
16px · Regular · line-height: 24px · tracking: −0.32px
14px · Medium · tracking: −0.1px
14px · Medium · line-height: 16px · tracking: −0.1px
POSTGRES · SERVERLESS · AUTOSCALE
11px · Semibold · line-height: 11px · smallest size in the system
Line Heights — 25 tokens (9px → 72px)
Tight
9px
Snug
10px
Normal
11px
Loose
13px
lh-8
16px
lh-13
22px
lh-15
24px
lh-17
27px
lh-20
33px
lh-21
40.5px
lh-23
58.5px
lh-25
72px
Letter Spacing — 22 tokens (all negative, −2.88px → −0.1px)
Neon
Tight (−2.88px)
Display hero — tightest in the 67-brand series
Serverless
ls-6 (−0.96px)
Section headings
Ship faster
ls-22 (−0.1px)
Body text, minimal tightening
Spacing
Spacing Scale
40 tokens — 1px → 271.055px
1
2
4
6
7
8
10
12
14
15
16
25
26
28
30
32
36
40
44
48
54.5
56
64
80
98
104
108
120
128
135
136
137
143
160
174
176
184
216
246.5
271.1
Borders
Border Radii
sm
4px
md (Circle)
100%
lg (~∞ Pill)
1.67772e+07px
Neon uses only 3 radius tokens — one of the most minimal radius systems. The --radius-lg value is 1.67772e+07px (≈16.7 million px), the same extreme value seen in Prisma — suggesting shared CSS framework origin. The --radius-md: 100% creates perfect circles for avatar and icon elements.
Border Width
Hairline
1px · ×60
Single 1px hairline. Neon's border system is highly minimal — no thick borders, no border-width variety. All visual definition comes from background color stepping through the dark surface hierarchy.
Shadows / Elevation
Shadow Tokens
1 token
sm
×1
rgba(0,0,0,.4) 8px 20px — deep drop shadow for elevated panels and modals. Strong opacity (0.4) consistent with Neon's very dark backgrounds.
Only 1 shadow token detected. Like most dark-theme systems in this series, Neon relies on background color stepping — #0A0A0B#111215#18191B — for elevation rather than drop shadows.
Z-Index
LayerValueUsage
z-1-10Background canvas decorations
z-21Base content layer
z-310Navigation, sticky headers
z-420Dropdowns, popovers
z-530Overlays, drawers
z-640Dialogs, toasts
z-750Top-level system panels
z-82,147,483,647Absolute maximum — INT_MAX (signed 32-bit)
The z-8 value of 2,147,483,647 is the signed 32-bit integer maximum (2³¹ − 1) — the mathematical upper bound that browsers accept for z-index. This is the browser-maximum approach, contrasting with Prisma's 999,999,999 which is just under the limit. The gap from z-7 (50) to z-8 (2.1 billion) is the largest jump in the entire series.
Breakpoints
📱
XS
413px
📲
SM (Tablet)
767px
💻
MD (Laptop)
1023px
🖥️
LG (Desktop)
1279px
📺
XL (Wide)
1599px
🎬
2XL (Ultra)
1919px
6 breakpoints spanning 413px–1919px — the widest coverage range in the series. Starts at 413px (narrower than standard 480px mobile), reaches 1919px for near-4K layouts. Unlike Prisma's mobile-only cluster, Neon's breakpoints cover the full responsive spectrum, reflecting a marketing site designed for all screen sizes.
Opacity
Opacity Tokens
4 tokens — 10%, 30%, 60%, 80%
opacity-10
10% · ×1
opacity-30
30% · ×1
opacity-60
60% · ×4
opacity-80
80% · ×1
Lean, semantic opacity scale — only 4 tokens at coarse steps (10/30/60/80%). This contrasts sharply with Prisma's 80-token 1%-increment system. Opacity-60 (×4) is the workhorse, used for overlay backgrounds and dimmed states.
Accessibility — Contrast Ratios
WCAG 2.1: AA ≥ 4.5:1 · AA Large ≥ 3:1 · AAA ≥ 7:1
⚠️ Mid-gray text (#797D86) fails on both white and cyan — confirming Neon's gray scale is calibrated for dark backgrounds only.
Text ColorBackground ColorRatioWCAG Rating
Dark Gray (#242628)White (#FFF)15.19:1AAA
Dark Gray (#242628)Cyan (#34D59A)8.05:1AAA
Dark Gray (#242628)Mid Gray (#94979E)5.19:1AA
Dark Gray (#242628)Black (#000)1.38:1Fail
Dark Gray 2 (#61646B)White (#FFF)5.93:1AA
Dark Gray 2 (#61646B)Cyan (#34D59A)3.14:1AA Large
Dark Gray 2 (#61646B)Black (#000)3.54:1AA Large
Light Gray (#C9CBCF)Black (#000)12.93:1AAA
Light Gray (#C9CBCF)Dark Green (#2C6D4C)3.8:1AA Large
Light Gray (#C9CBCF)White (#FFF)1.62:1Fail
Light Gray 2 (#E4E5E7)Black (#000)16.66:1AAA
Light Gray 2 (#E4E5E7)Dark Green (#2C6D4C)4.9:1AA
Mid Gray 2 (#797D86)Black (#000)5.09:1AA
Mid Gray 2 (#797D86)White (#FFF)4.13:1AA Large
Mid Gray 2 (#797D86)Cyan (#34D59A)2.19:1Fail
CSS Variables Reference
Background Colors
White--color-white#FFFFFF
Dark Green--color-dark-green#2C6D4C
Black--color-black#000000
Mid Gray--color-mid-gray#94979E
Cyan--color-cyan#34D59A
Cyan 2 (Brand)--color-cyan-2#00E599
Dark Gray 3--color-dark-gray-3#303236
Dark Gray 4--color-dark-gray-4#18191B
Dark Gray 8--color-dark-gray-8#111215
Black 3--color-black-3#0A0A0B
Light Gray 3--color-light-gray-3#E4F1EB
Light Cyan--color-light-cyan#CAE6D9
Text, Accent & Fill
Mid Gray 2--color-mid-gray-2#797D86
Light Gray--color-light-gray#C9CBCF
Dark Gray--color-dark-gray#242628
Dark Gray 2--color-dark-gray-2#61646B
Light Gray 2--color-light-gray-2#E4E5E7
Red--color-red#FF3621
Dark Cyan--color-dark-cyan#285D49
Light Orange--color-light-orange#F7B983
Light Blue--color-light-blue#94B5F7
Cyan 3--color-cyan-3#37C38F
Cyan 4 (Fill)--color-cyan-4rgba(57,165,125,.6)
Typography
Inter--font-family-baseInter
GeistMono--font-family-2GeistMono
Regular--font-weight-regular400
Medium--font-weight-medium500
Semibold--font-weight-semibold600
2xs (min: 9px)--font-size-2xs9px
3xl (UI base)--font-size-3xl16px
6xl--font-size-6xl24px
36px--font-size-36px36px
52px--font-size-52px52px
64px--font-size-64px64px
72px (Display)--font-size-72px72px
Tight--letter-spacing-tight−2.88px
ls-22 (min)--letter-spacing-ls-22−0.1px
Borders, Motion & Layers
Hairline--border-width-hairline1px
sm--radius-sm4px
md (100% Circle)--radius-md100%
lg (~∞ Pill)--radius-lg1.67772e+07px
Instant--duration-instant150ms
Fast (×830)--duration-fast200ms
Normal--duration-normal300ms
No easing tokens defined
opacity-10--opacity-1010%
opacity-30--opacity-3030%
opacity-60--opacity-6060%
opacity-80--opacity-8080%
Background--z-1-10
Base--z-21
Navigation--z-310
Popovers--z-530
Dialogs--z-750
INT_MAX--z-82,147,483,647
Design System Preview · Neon (Dark) · Generated 19/04/2026 · 31 color tokens · 16 font-size · 2 font-family · 3 font-weight · 25 line-height · 22 letter-spacing · 40 spacing · 3 radius · 1 border-width · 1 shadow · 3 duration · 0 easing · 8 z-index · 6 breakpoints · 4 opacity