Concrete
surface
Primitive

Card

Hairline surface primitive with raised, sunken, and interactive variants.

Cards are bounded content surfaces. Prefer bare sections for page structure and cards only for repeated items, modals, or framed tools.

Default

Border only. The canonical surface.

Raised

One step of elevation over canvas.

Sunken

Recessed. Code, quotes, wells.

Playground

Props in the URL.

Controls update query params directly, so every primitive state can be linked, rendered, and screenshotted deterministically.

Loading playground.
States

Rendered matrix.

Every state maps to the same render route through the `state` query param.

Default

Border only. The canonical surface.

Raised

One step of elevation over canvas.

Sunken

Recessed. Code, quotes, wells.

Default

Default hairline surface.

/render state
Default

Border only. The canonical surface.

Raised

One step of elevation over canvas.

Sunken

Recessed. Code, quotes, wells.

Raised

One step of elevation above canvas.

/render state
Default

Border only. The canonical surface.

Raised

One step of elevation over canvas.

Sunken

Recessed. Code, quotes, wells.

Sunken

Recessed surface for code, quotes, and wells.

/render state
Props

Public contract.

NameTypeDefaultDescription
variant'default' | 'raised' | 'sunken'defaultSurface depth treatment.
interactivebooleanfalseAdds hover affordance for clickable card compositions.
titleReactNode-Optional compact title.
descriptionReactNode-Optional supporting copy.
childrenReactNode-Card content slot.