Skip to content

Spacing

Naluma uses a generous spacing scale. The Visual Identity Direction calls for layouts that breathe — anxious users need visual breathing room, and cramped layouts amplify the feeling that there is too much to deal with.

Token source: tokens/primitive/spacing.json


spacing.22pxPixel nudges
spacing.44pxTight inline gaps
spacing.66pxBadge padding Y
spacing.88pxButton padding Y (web sm)
spacing.1010pxInput padding Y
spacing.1212pxButton padding Y (app lg)
spacing.1616pxButton X (app md)
spacing.2020pxCompact section gaps
spacing.2424pxCard padding
spacing.3232pxButton X (web lg)
spacing.4040pxSection gaps
spacing.4848pxLarge sections
spacing.6464pxPage section rhythm
spacing.8080pxMajor breaks
spacing.9696pxPage-level spacing
spacing.120120pxLargest gap

The scale runs from 0 to 120px in deliberate steps. A few conventions:

ContextTypical tokensRationale
Inline icon gaps, badge paddingspacing.2spacing.6Tight but not cramped
Button inner paddingspacing.8spacing.16Comfortable touch target padding
Card inner paddingspacing.24Breathing room for card content
Section gapsspacing.40spacing.64Generous separation between content blocks
Page-level vertical rhythmspacing.80spacing.120Large-scale breathing room between major sections

The minimum touch target for the Naluma app is 44px (see Accessibility). When composing button sizes, ensure that padding + content height meets or exceeds this minimum. The button component tokens already enforce this via min-height: 44px on all app size variants.