NS Design System
v3.0.0 · 257 tokens

07Spacing

4px base, index-matched to Tailwind so p-4 and var(--space-4) are the same 16px in both products.

--space-00rem
--space-px1px
--space-0-50.125rem
--space-10.25rem
--space-1-50.375rem
--space-20.5rem
--space-2-50.625rem
--space-30.75rem
--space-3-50.875rem
--space-41rem
--space-51.25rem
--space-61.5rem
--space-71.75rem
--space-82rem
--space-92.25rem
--space-102.5rem
--space-123rem
--space-143.5rem
--space-164rem
--space-205rem
--space-246rem
--space-328rem
--space-4010rem

Semantic aliases — reach for these first

--pad-cardvar(--space-5)
--pad-card-lgvar(--space-6)
--pad-controlvar(--space-2-5)
--pad-control-xvar(--space-4)
--pad-rowvar(--space-3)
--gap-inlinevar(--space-2)
--gap-cardvar(--space-4)
--gap-gridvar(--space-6)
--gap-fieldvar(--space-1-5)
--stack-xsvar(--space-2)
--stack-smvar(--space-4)
--stack-mdvar(--space-8)
--stack-lgvar(--space-16)
--stack-xlvar(--space-24)

Applied — the same tokens doing real work

--pad-card

Card padding is one token — change it once, every card follows.

--gap-grid

The gap between these two cards is the grid gap token.

Stacked blocks separated by --stack-lg — the rhythm between sections, not a hand-picked margin.

Spacing & Layout

4px base scale, matched 1:1 to Tailwind — the reason Ghost and the Next.js app land on the same pixel

open ↗