Textarea with motion: it glides taller with each new line and back down when cleared, and shakes when it turns invalid while its error grows in.
pnpm dlx shadcn@latest add "https://dashral.com/r/motion-textarea.json"