Space defines the whitespace between elements, setting visual standards for proximity, rhythm, and alignment.
Three spatial concepts are woven into the fabric of all Spirit system components, creating a unified visual order: inset space within components, vertical stack space between elements and components, and horizontal inline spacing between elements in a row.
An inset applies padding on all sides of a block or inline element. By default, all four sides are equal. 
 Apply an inset token to any container, such as a card or a or table cell, to create consistent padding around the content.
Apply an inset token to any container, such as a card or a or table cell, to create consistent padding around the content.
 
   
  | Token | Value | Preview | 
|---|---|---|
| 
 | 64px | example | 
| 
 | 48px | example | 
| 
 | 40px | example | 
| 
 | 32px | example | 
| 
 | 24px | example | 
| 
 | 16px | example | 
| 
 | 8px | example | 
| 
 | 4px | example | 
The Spirit visual style applies a squished inset to many smaller containers, such as pills and buttons. This “Squish” inset provides twice as much padding left/right as it does top/bottom.

Apply inset-squish tokens to small containers, like buttons, to create wider padding around a text label.
 
   
  | Token | Value | Preview | 
|---|---|---|
| 
 | 24px 48px | example | 
| 
 | 16px 32px | example | 
| 
 | 12px 24px | example | 
| 
 | 8px 16px | example | 
| 
 | 4px 8px | example | 
| 
 | 2px 4px | example | 
Apply stack space below block-level elements to normalize vertical distance between components.

Use proximity to signal related elements. Use whitespace to form boundaries between components.

| Token | Value | Preview | 
|---|---|---|
| 
 | 0 0 192px 0 | example | 
| 
 | 0 0 96px 0 | example | 
| 
 | 0 0 64px 0 | example | 
| 
 | 0 0 48px 0 | example | 
| 
 | 0 0 40px 0 | example | 
| 
 | 0 0 32px 0 | example | 
| 
 | 0 0 24px 0 | example | 
| 
 | 0 0 16px 0 | example | 
| 
 | 0 0 8px 0 | example | 
| 
 | 0 0 4px 0 | example | 
Inline spacing separates inline elements by consistent applying space on one side of each element. By default, left-aligned elements have right-side spacing (as shown) using inline-right. Right-aligned elements are the opposite. 

Use inline spacing to separate text, such as the inline links in a footer, or block elements, such as pills, tabs, or buttons.

Left-aligned items use inline-right, which adds spacing to their right. This ensures the first item is flush left.
| Token | Value | Preview | 
|---|---|---|
| 
 | 0 192px 0 0 | example | 
| 
 | 0 96px 0 0 | example | 
| 
 | 0 64px 0 0 | example | 
| 
 | 0 48px 0 0 | example | 
| 
 | 0 40px 0 0 | example | 
| 
 | 0 32px 0 0 | example | 
| 
 | 0 24px 0 0 | example | 
| 
 | 0 16px 0 0 | example | 
| 
 | 0 8px 0 0 | example | 
| 
 | 0 4px 0 0 | example | 
Right-aligned items use inline-left, which adds spacing to their left. This ensures the last item is flush right. 
| Token | Value | Preview | 
|---|---|---|
| 
 | 0 0 0 192px | example | 
| 
 | 0 0 0 96px | example | 
| 
 | 0 0 0 64px | example | 
| 
 | 0 0 0 48px | example | 
| 
 | 0 0 0 40px | example | 
| 
 | 0 0 0 32px | example | 
| 
 | 0 0 0 24px | example | 
| 
 | 0 0 0 16px | example | 
| 
 | 0 0 0 8px | example | 
| 
 | 0 0 0 4px | example | 
Although inset, stack, and inline spacing works in most cases, Spirit provides generic space tokens too.
| Token | Value | 
|---|---|
| 
 | 192px | 
| 
 | 96px | 
| 
 | 64px | 
| 
 | 48px | 
| 
 | 40px | 
| 
 | 32px | 
| 
 | 24px | 
| 
 | 16px | 
| 
 | 8px | 
| 
 | 4px |