Skip to main content
Gremorie

Radius

Eight border-radius stops from nearly straight to blob-style. Radius is a brand decision as much as a UI decision.

Border-radius is one of the most underrated decisions in UI. The straighter, the more institutional; the rounder, the friendlier. A bank picks rounded-md. A meditation app picks rounded-2xl. The tone of the brand lives in that choice.

How it works

Tailwind v4 declares eight stops, from xs (0.125rem / 2px) to 4xl (2rem / 32px). These primitives automatically generate the rounded-xs, rounded-sm, ..., rounded-4xl utilities.

Important note: the stopless --radius token that Gremorie components consume does not live here. It is defined per theme in packages/tokens/styles - the Default theme uses 0.625rem, perplexity.css uses 0.375rem, and so on. Each theme picks the radius that matches its personality.

Tokens

AmostraTokenClasseRemPixelsUso
--radius-xsrounded-xs0.125rem2pxToque de suavização — quase reto
--radius-smrounded-sm0.25rem4pxInputs em tema austero, separadores
--radius-mdrounded-md0.375rem6pxDefault de inputs e botões pequenos
--radius-lgrounded-lg0.5rem8pxCards, modais, painéis
--radius-xlrounded-xl0.75rem12pxCards generosos, surfaces friendly
--radius-2xlrounded-2xl1rem16pxCards arredondados, pegada moderna
--radius-3xlrounded-3xl1.5rem24pxCards muito arredondados, pílulas grandes
--radius-4xlrounded-4xl2rem32pxSurfaces blob-style, ilustrações

Best practices

  • Decide early. Changing the system radius halfway through a project is expensive; almost everything needs to be revisited.
  • Keep the hierarchy. Outer cards get a larger radius, pills and badges a smaller one. Inputs and buttons usually land on the same stop (form consistency).
  • rounded-full exists and is useful, but watch out for pills that are too thin (a radius proportional to the height can look odd).
  • Do not mix more than 3 stops on the same screen. Beyond that, radius becomes visual noise instead of hierarchy.
  • Theme matters. If the product theme uses --radius: 0.5rem, think twice before hardcoding rounded-2xl in a component - you are overriding the theme's personality.

On this page