Components / Interactive Cards

Shared selectable and clickable card shells for app surfaces.

`InteractiveCard` is the shared pattern for cards that act as the primary interaction target. Use it for timeline phases, template tiles, theme selectors, and other contained surfaces where the whole card is the action.

Navigational card

Selectable card

Compact metadata composition

Usage guidance

Use when the whole surface is the action

Prefer `InteractiveCard` when the entire card should open, select, or activate something. If only part of the surface is interactive, keep using static `Card` or `SectionCard` plus nested controls.

Keep content composable

The shared primitive should provide state and surface styling only. Tags, progress bars, swatches, and domain-specific metadata should remain local content inside the card.

Do not force mixed-action cards into it

Project list cards that include nested archive or delete actions should stay on the existing static card surface for now, because a whole-card interaction would conflict with those secondary controls.