Loading...
Loading...
Buttons, inputs, pills, badges, calendars, and other interactive components form a visual family — they share the same border-radius, colour logic, shadow scale, border style, and spacing rhythm. Inconsistency between them breaks the sense of a coherent product. Use when building or reviewing a component library, design system, or any set of UI components.
npx skill4agent add dembrandt/dembrandt-skills component-family-consistency--radius-base: 8px; /* buttons, inputs, selects */
--radius-sm: 4px; /* checkboxes, small badges */
--radius-lg: 12px; /* cards, modals, large panels */
--radius-full: 9999px; /* pills, tags, avatar chips */--radius-full--radius-sm--radius-full1px4px1px8px1px, 2px, 3px, 4px...--border-width-thin: 1px; /* Default for inputs, cards, dividers */
--border-width-thick: 4px; /* Featured items, bold accents, active indicators */
--border-color: var(--color-border);
--border-color-focus: var(--color-primary);
--border-color-error: var(--color-error);--border-color-focus--border-color-error/* Default (md) size */
--component-height-md: 40px;
--component-padding-x-md: 12px;
--component-padding-y-md: 8px;
/* Small */
--component-height-sm: 32px;
--component-padding-x-sm: 8px;
--component-padding-y-sm: 6px;
/* Large */
--component-height-lg: 48px;
--component-padding-x-lg: 16px;
--component-padding-y-lg: 10px;--shadow-xsoutlinebox-shadowbox-shadow--shadow-md| State | Colour token |
|---|---|
| Rest border | |
| Focus border / ring | |
| Error border | |
| Disabled | |
| Selected / active fill | |
| Hover background | |
| Component | Shares radius | Shares height | Shares border | Shares colour logic |
|---|---|---|---|---|
| Button | ✓ | ✓ | — (filled) | ✓ |
| Input / textarea | ✓ | ✓ | ✓ | ✓ |
| Select | ✓ | ✓ | ✓ | ✓ |
| Checkbox | | — | ✓ | ✓ |
| Radio | | — | ✓ | ✓ |
| Toggle / switch | | ✓ | — | ✓ |
| Pill / tag | | ✓ | ✓ optional | ✓ |
| Badge | | — | — | ✓ |
| Date picker / calendar | | ✓ | ✓ | ✓ |
| Slider | | — | — | ✓ |
| Search input | ✓ | ✓ | ✓ | ✓ |
| Combobox | ✓ | ✓ | ✓ | ✓ |
--radius-full