Designing a shadow utility
The goal is reliable CSS output, not just slider movement.
Separate controls from preview so you can tweak values quickly while still reading the final result like production code.
Use CSS variables for exported shadows so you can apply the same elevation scale across different components without duplicating declarations.
The generator should expose a clean, copyable output. If exporting the result is awkward, the tool will not survive inside a real workflow.
- Minimum controls: x offset, y offset, blur, spread, color and opacity.
- One valuable advanced option: `inset`.
- Practical rule: keep base shadows soft and reserve deeper shadows for hover, focus or modal states.