Radius
How corner radius is chosen for standalone and nested elements.
Corner radius communicates approachability and helps group related content. We keep a small, deliberate scale rather than arbitrary values, and we derive nested radii mathematically so parent and child corners stay visually aligned.
Standalone elements
The default radius for elements that aren't nested inside another rounded container is 8px.
4px — small8px — default12–16px — large| Scale | Radius | Applies to |
|---|---|---|
| Small | 4px | Compact elements: chips, tags, small buttons. |
| Default | 8px | Buttons, inputs, cards, panels that are not nested. |
| Large | 12–16px | Large surfaces: hero panels, feature cards. |
Purpose: ensures visual consistency and approachability across the UI.
Nested elements
When a rounded container wraps another rounded element, the parent's radius should be derived from the child's radius and the padding between them, so the two curves stay concentric:
Parent Radius = Child Radius + PaddingApplies to: containers wrapping content with rounded corners — cards with inner elements, dialogs, panels.
Example: child radius 4px + padding 8px → parent radius 12px.
child: 4pxParent radius (12px) = child radius (4px) + padding (8px).
Purpose: aligns parent and child corners for a seamless, visually balanced design.
Implementation notes
-
Use design tokens or CSS variables wherever possible instead of hardcoding values:
--parent-radius: calc(var(--child-radius) + var(--padding));
Voice & Tone
Our tone of voice is the way in which we write and speak, what we say and how we say it. Like a person, what we say is dictated by our principles, experiences and aspirations, how we say it is informed by our personality.
Shadow & Status
Shadow tokens and related state treatments used to express depth, interaction, and status.