<!-- GENERATED by scripts/build-llms.mjs from llms/layout.md — do not edit this file. -->

# `lr-carousel-item`

- **Import** `import '@aceshooting/lyra-ui/components/lr-carousel-item.js';` (stable tag alias; registers the tag)
- **Class** `LyraCarouselItem`, also available unregistered from `@aceshooting/lyra-ui/components/layout/carousel/carousel-item.class.js`
- **Family** `components/layout/` — see `llms/index.md` for its siblings
- **Status** `stable` since `4.0.0` — see the maturity and deprecation policy in `llms/shared.md`
- **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
- **Deprecations** none
- **Optional peers** none
- **Themeable via** 1 part, 1 custom property — see this component's own `@csspart`/`@cssprop` list below
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`

---

## `lr-carousel-item`

Optional semantic wrapper for one slide in `<lr-carousel>`. Mirrors `wa-carousel-item` /
`sl-carousel-item`. The carousel also accepts arbitrary slotted elements, so this element is useful
when a migration needs the explicit item tag — and it is the one slide shape whose contract lets the
carousel generate group semantics and a localized "Slide N of M" name for it (see `<lr-carousel>`
above). An explicit `role`, `aria-roledescription` or `aria-label` you set yourself always wins,
including a value added, changed, or removed after connection. The carousel temporarily controls
`inert` and `aria-hidden` while an item is off page, then restores your retained values when it is
visible, removed, or disconnected.

**Slots:** default slide content.

**CSS parts:** `base`.

**Themeable custom properties:** `--aspect-ratio` — inherited from the owning carousel unless set
on the item itself.

```html
<lr-carousel>
  <lr-carousel-item>Dashboard overview</lr-carousel-item>
  <lr-carousel-item>Dashboard details</lr-carousel-item>
</lr-carousel>
```

---
