Style
ColorHex value, for example #00ddb3

Files & transfersupload-failed

Upload failed

An upload into the cloud fails and falls back. Light: an arrowhead grows on the alert's stem, the arrow sinks to load and launches up into the cloud, hits its ceiling and stops dead while the cloud takes the knock; then it drops back, the arrowhead fades, and the stem lands on its spot as an exclamation mark again, knocking the dot down, which settles. Strong: two tries: the first falls short and drops back, the second launches harder, hits the ceiling, and the cloud shakes its refusal side to side while the arrow drops and the exclamation lands in two beats.

Add the "Upload failed" animated icon (id: upload-failed) 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 upload-failed`. 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 (click, hover or confirmation). The icon is decorative, so the parent control needs an accessible label. Reduced motion is handled by the runtime.
6. If this is a native iOS or Android app instead, download https://generativeicons.com/assets/upload-failed.lottie and play it with the dotLottie player for that platform.

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

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. Download .svg and Copy SVG give an animated SVG (SMIL) with the motion, style and weight chosen here. It plays without a player wherever it's inlined: on hover, on click for two-state icons, and loaders loop. Its color follows CSS unless you picked one.