← MaV / Chat Bubbles

Text bubbles

Short (time inline) and multi-line. Incoming carries an avatar + sender name; outgoing shows a timestamp and green ✓✓ delivery.

Base_Text — Short · Multi-line · Incoming / Outgoing--bubble/bg-incoming · --bubble/bg-outcoming · --bubble/name-incoming

Reacted & replied

A reaction pill overlaps the bubble corner (hover to pop). A reply quotes the message being answered inside the bubble, behind a primary accent bar.

Direct User — Reacted · Replied (short + multi-line)

Image

Photos crop to a rounded frame with a time badge overlaid. Square, landscape and vertical formats, plus placeholder and loading states.

Image — Square · Landscape · Vertical · Placeholder · Loading

Video

A play button floats over the frame (swells on hover). Portrait and landscape, plus placeholder and loading states.

Video — Portrait · Landscape · Placeholder · Loading

Link previews

Unfurled links: a hero-image card, an icon card, a text-only card, or a plain link — each with the tappable URL and timestamp beneath.

Link — Preview Image · Icon · Text · Plain

In dark

Incoming turns dark-grey, outgoing a solid blue, the sender name re-themes to lime and the reply accent follows. Media and link cards sit on the dark surface.

Dark — incoming grey · outgoing blue · name → lime

Token Reference

TokenValueUsage
--bubble/bg-incoming#efefef → #2c2c2eIncoming bubble fill
--bubble/bg-outcoming#352eff1a → #2f43d9Outgoing bubble fill (blue in dark)
--bubble/name-incoming#352eff → #a1ff5bSender name · reply accent (→ lime)
--bubble/text-incoming#171717 → #f2f2f2Message text
--main-text/description#7f7f7fTimestamps · host · quote text
--System/Success#629c28✓✓ delivery check
Motion.55s rise · popSequenced bubble reveal & reactions