Style
ColorHex value, for example #00ddb3

Automotivecar-lockTwo-state

Car lock

The car locks, and it answers like a key fob chirp. Light: the raised shackle swings 28 degrees shut and slams down into the padlock with a hit, the padlock jolts, and a beat later the car dips on its springs and rebounds. Strong: the shackle lifts and opens a little first, snaps shut and slams in, the padlock jolts harder, and the car answers with a double dip, chirp-chirp. The reverse pops the shackle up and swings it open with a small overshoot while the car stays still. The wheels stay planted; the shackle holds shut.

Add the "Car lock" animated icon (id: car-lock) from Generative Icons by LottieFiles to this project.

1. Look at the project first: framework, package manager, and where static assets are served. In a monorepo, target the app that needs the icon.
2. Install the runtime: `npm install @lottiefiles/generative-icons-runtime`. For React or Next.js, also install `@lottiefiles/generative-icons-react`. Use the project's package manager.
3. Run `npx generative-icons init`, then `npx generative-icons add car-lock`. Follow the agent skill that init writes to `.agents/skills/generative-icons/` (and `.claude/skills/generative-icons/`). Commit `generative-icons.json`, the copied files and `.generative-icons/lock.json`.
4. Render the icon with these settings: color #ffffff, style outline, weight 2, motion light, theme dark. In React, use `<AnimatedIcon icon={icon} src={src} size={24} color="#ffffff" variant="outline" weight={2} motion="light" theme="dark" />` inside a `'use client'` component. Otherwise use `createIcon(canvas, { icon, src, ... })` from `@lottiefiles/generative-icons-runtime` and call `destroy()` when the element is removed.
5. Play it on the interaction it belongs to (the state change). The icon is decorative, so the parent control needs an accessible label. Reduced motion is handled by the runtime.
6. This is a two-state icon (unlocked → locked). Keep it in sync with app state through the React `state` prop or `handle.setState()`, and use `play('reverse')` to go back.
7. If this is a native iOS or Android app instead, download https://generativeicons.lottiefiles.com/assets/car-lock.lottie and play it with the dotLottie player for that platform.

Guide: https://generativeicons.lottiefiles.com/docs-md/using-packages.md
Library overview for agents: https://generativeicons.lottiefiles.com/llms.txt

Install copies the native file and a typed descriptor into your project. Color, style, weight and motion are runtime options; the downloaded file keeps its authored defaults.