-
Notifications
You must be signed in to change notification settings - Fork 0
CSS Customization
ABCrimson edited this page Mar 7, 2026
·
1 revision
All command palette animations, dimensions, and visual properties are customizable via CSS custom properties.
Override these on [data-command-root] or :root:
[data-command-root] { /* Spring easing (linear() approximation) */ --command-spring-easing: linear(0, 0.006, 0.025, 0.058, ...); --command-spring-easing-bouncy: linear(0, 0.009, 0.035, ...); --command-easing-exit: cubic-bezier(0.4, 0, 1, 1); /* Durations */ --command-duration-enter: 200ms; --command-duration-enter-scale: 250ms; --command-duration-exit: 150ms; --command-duration-item: 120ms; --command-duration-list: 200ms; --command-duration-page: 200ms; --command-duration-loading: 1.5s; /* Transforms */ --command-scale-from: 0.96; --command-translate-from: 8px; /* Appearance */ --command-overlay-blur: 4px; --command-dialog-radius: 12px; --command-dialog-max-width: 640px; --command-dialog-max-height: 480px; --command-item-height: 44px; --command-fade-edge-size: 16px; --command-highlight-color: oklch(0.85 0.15 90 / 0.3); }
All library styles are wrapped in @layer command, making it easy to override:
/* Your overrides automatically win over library defaults */ [data-command-item][data-active] { background: var(--my-highlight); }
All properties use logical equivalents for full RTL/LTR support:
| Physical | Logical |
|---|---|
left / right
|
inset-inline-start / inset-inline-end
|
top / bottom
|
inset-block-start / inset-block-end
|
width |
inline-size |
height |
block-size |
margin-left |
margin-inline-start |
padding-top |
padding-block-start |
[data-command-root] { --command-duration-enter: 0ms; --command-duration-exit: 0ms; --command-duration-item: 0ms; --command-duration-list: 0ms; }
Or rely on prefers-reduced-motion — all animations are automatically disabled.