Everything below is rendered with the app's own tokens and its own Klim faces, at the two widths that matter. The 375 frame is the design; the 320 frame is the worst-case check. Grey rails to the right of each pair name what is being demonstrated — they are board chrome, not app UI.
One staff conversation in the Coaches channel (the name, never the slug). Viewer is Morgan; the others are Josh W and Sasha.
YESTERDAY 3:02pm. Centred, in flow, replaces every per-bubble clock.9:14am.memberInitials working, not a bug.sr-only: "Seen by Josh W, Sasha, Kaden B". It sits under the newest confirmed message, so pending bubbles trail below it.Preview text derives from the message window the snapshot already fetches (body added to BADGE_COLS) — no new query.
Tue, no badge.› has nothing left to say.19/08 + 99+. Both lines truncate; the trailing column never gets eaten.Three states in the order a member meets them. The composer is the transcript's sibling, never its child.
#E9E2D2 + muted glyph. Empty draft and over-cap both land here.public/fonts/, base64-inlined so this stays one self-contained file — Founders Grotesk Condensed 400 / 600 / 700 and Tiempos Text 400 + italic. Type on this board is therefore pixel-true, not approximated.Arial Narrow / Helvetica Neue for disp, Georgia / Times New Roman for body), so a machine without the embedded faces degrades exactly as the app does.AvatarFallback default is text-sm (14px), which is oversized in a 28px disc and unreadable-tight in a 16px one. Board uses 11px at 28px, 8px at 16px, 15px at 44px — the build should pass these via fallbackClassName rather than accept the default.am/pm is not uppercased into AM.--background. Right-aligned, 5px under the bubble.min-h-[60px] to 68px to hold two lines beside a 44px avatar. Radius, border and card fill are unchanged.gap-2 (8px); the 2px intra-run gap is set on the bubble stack, so the two never fight.PendingBubble renders {item.error} Tap to retry, and the default error copy is already "Could not send. Tap to try again." — so a network failure reads "Could not send. Tap to try again. Tap to retry" today. The board shows the deduped line. Worth folding into the build as a one-word copy fix.Message deleted
Enabled · near the byte cap
3940 / 4096
Disabled · nothing typed
Disabled · over the cap
4210 / 4096