Getting StartedInstallation and setup guides 5
LayoutWorkflow and structural layout components 7
OverlayModal and floating layer surfaces 3
FeedbackStatus, empty, progress, and loading placeholder patterns 5
FormInput and selection components 17
UtilityGeneral-purpose interface utilities 7
NavigationMenu surfaces and hierarchical actions 7

Styling contract

Accordion exposes predictable slot/state attributes so teams can style primitives and wrappers consistently in plain CSS or utility layers.

State hooks

HookWhereUse
data-slot="accordion"RootOverall container surface, border, spacing, and group-level layout.
data-type="single|multiple"RootSwitch layout accents based on single or multiple expansion mode.
data-slot="accordion-item"ItemPer-item separators and disabled presentation.
data-slot="accordion-trigger"TriggerButton typography, hover, focus, and open/closed state styles.
data-slot="accordion-indicator"Default chevron or projected custom indicatorIcon sizing, alignment, and open-state transforms.
data-state="open|closed"Item, trigger, panel, indicatorAnimate chevrons, open panels, and stateful backgrounds.
data-disabled="true|false"Root, item, triggerVisual lock for disabled sections and pointer affordances.
data-slot="accordion-panel"PanelPanel container spacing and typography treatment.

CSS starter

Accordion state contract

css
[data-slot="accordion"] {
  border: 1px solid var(--tng-semantic-border-subtle);
  border-radius: 0.75rem;
}

[data-slot="accordion-trigger"][data-state="open"] {
  color: var(--tng-semantic-accent-brand);
}

[data-slot="accordion-indicator"][data-state="open"] {
  transform: rotate(180deg);
}

[data-slot="accordion-item"][data-disabled="true"] {
  opacity: 0.6;
}

[data-slot="accordion-panel"][data-state="closed"] {
  display: none;
}