---
## Accordion
Collapsible content sections with expand/collapse animation.
Supports single or multiple open items, keyboard navigation, and ARIA accordion pattern.
**Import:** `import { Accordion } from '@urbicon-ui/blocks';`
### Examples
```svelte
A Svelte 5 component library with built-in i18n and design tokens.
Semantic tokens automatically handle light/dark via the CSS light-dark() function.
```
```svelte
Content
Content
```
### Variants
- variant: default, ghost, separated (default: default)
- size: lg, md, sm (default: md)
### Api
| Prop | Type | Required | Default | Description |
| --- | --- | :---: | --- | --- |
| children | `Snippet` | yes | | Content to render inside the Accordion component |
| ...AccordionVariants | `VariantProps` | no | | Styling variants from AccordionVariants |
| ...HTMLAttributes | `HTMLAttributes` | no | | HTML attributes (excluding: 'children') |
| class | `string` | no | | Additional CSS classes to apply to the Accordion component |
| collapsible | `boolean` | no | true | Whether items can be fully collapsed |
| defaultValue | `string | string[]` | no | | Default open item(s) |
| disabled | `boolean` | no | false | Whether the Accordion is disabled and non-interactive |
| onValueChange | `(value: string | string[]) => void` | no | | Callback when open items change |
| preset | `string` | no | | Apply a named preset registered via ``. Prefer this over `class` overrides when the requested look falls outside the semantic intent palette — presets keep hover/active/dark-mode logic coherent and make the custom look reusable across the project. |
| size | `'sm' | 'md' | 'lg'` | no | 'md' | Size variant that controls dimensions and spacing of the Accordion |
| slotClasses | `Partial>` | no | | Per-slot class overrides. Slots: base | item | trigger | chevron | content | contentInner |
| type | `'single' | 'multiple'` | no | 'single' | Allow single or multiple items open at once |
| unstyled | `boolean` | no | | Remove default styles |
| value | `string | string[]` | no | | Controlled open item(s) – string for single, string[] for multiple |
| variant | `'default' | 'separated' | 'ghost'` | no | 'default' | Visual style variant for the Accordion component |
Inherited from:
- AccordionVariants (external)
- Omit, 'children'> (omit-pattern)