Radius scale
The current BEEQ radius scale is exposed as CSS custom properties. Use these variables as the stable documentation reference because they are available wherever BEEQ styles are loaded.| Token | CSS variable | Value |
|---|---|---|
none | --bq-radius--none | 0 |
xs2 | --bq-radius--xs2 | 2px |
xs | --bq-radius--xs | 4px |
s | --bq-radius--s | 8px |
m | --bq-radius--m | 12px |
l | --bq-radius--l | 24px |
full | --bq-radius--full | 9999px |
How radius works in code
BEEQ exposes one radius scale. Use it in this order:- Use a component prop such as
borderwhen the component provides one. - Use a component CSS variable when the component exposes one for scoped customization.
- Use global
--bq-radius--*variables when you build a custom surface.
bq-card and bq-button, the border prop sets the component radius CSS variable for you.
Choosing radius
Radius should support the role and size of the element. Larger surfaces can carry larger corners because they have more space around content. Smaller controls need smaller radii so the shape does not overwhelm the content inside.| Token | Use for |
|---|---|
none | Square edges, dense data, or edge-to-edge regions where rounding would create visual noise. |
xs2 | Very small shapes, icon backgrounds, and details that need slight softness. |
xs | Small custom elements and compact areas that should not look like cards. |
s | Inputs, dropdown panels, date cells, tabs, and small-to-medium component surfaces. |
m | Buttons, banners, snackbars, cards, and common custom panels. |
l | Large containers, hero panels, and prominent surfaces with enough padding. |
full | Circles, avatars, icon chips, status dots, and pill-shaped elements. |
Nested radius
Nested surfaces look more balanced when the inner radius is smaller than the outer radius. The spacing between surfaces matters: the more padding between the outer and inner edge, the more room the outer surface has to use a larger radius. Use this as a practical rule: choose the outer radius first, then step the inner radius down by one token when the nested surface sits close to the edge. For example, pairl outside with m inside, or m outside with s inside.
Custom surfaces
Use global radius variables when the surface is not a BEEQ component or when the layout is outside a component’s structure. This is the right path for custom dashboards, charts, visual containers, and product-specific compositions.Usage guidelines
Start with component APIs
Start with component APIs
Use a component’s
border prop when it exists. That keeps the radius decision inside the component contract and lets the component set its own radius CSS variable.Use the BEEQ radius scale
Use the BEEQ radius scale
Choose
--bq-radius--* values and component radius APIs instead of arbitrary pixels. If your project uses the BEEQ Tailwind preset, the matching radius utilities are available too.Match radius to size and role
Match radius to size and role
Use smaller values for compact controls and details. Use larger values for larger containers that have enough padding and visual weight.
Use full for circles and pills
Use full for circles and pills
Use
full for avatars, status dots, icon chips, and pill-shaped labels. Avoid full on rectangular cards unless the shape is intentionally pill-like.Step down nested radii
Step down nested radii
When a surface contains another surface, choose a smaller radius for the inner element. This keeps the inset relationship clear.
Avoid arbitrary values
Avoid arbitrary values
Avoid values such as
6px, 10px, or 16px unless a product-specific exception is intentional and documented.Do not use rounding as the only signal
Do not use rounding as the only signal
Radius can support hierarchy and grouping, but it should not be the only way to communicate state, priority, or interactivity.
Accessibility and constraints
Radius is visual, but it can still affect how usable a surface feels.- Keep focus rings visible. Large radii and clipped containers should not hide outlines or focus indicators.
- Avoid clipping important content with
overflow: hiddenonly to enforce rounded corners. - Do not rely on shape alone to communicate state or meaning. Pair visual treatment with text, icons, ARIA where needed, and color tokens.
- Keep touch targets large enough when using pill-shaped controls or circular buttons.
- Check nested surfaces at small widths so rounded containers do not crowd labels, icons, or controls.
Resources
Global CSS variables
Review the radius custom properties used by BEEQ themes.
Radius token source
See the source that defines the BEEQ radius values.