Components · Notifications

Inline notification

An inline notification gives feedback right where the user is working: next to a form, a quantity field or a delivery estimate. It stays in the page until the user acts or the state changes. It never disappears by itself.

Tokens, sizes, measurements, states and requirements. Values come from the live token package and from Inline notification.

Design Tokens

Resolved from the live token package.

Status · emphasisPartTokenValue

Sizes

PropertyLargeSmall
Height48px32px
Padding12px4px
Icon24px20px
Left edge2px2px
Outline (Strong)1px, border-{status}-weaker, inside the heightSame
Gap icon to text8px8px
Titlelabel-sm 14px, 0.56px, bold, uppercaseSame
Textbody-sm 14/20, 0.36pxSame
ActionableIndent 32px; buttons 16px below the text, 32px high; link 8px below the buttonsNot defined
Shadowvar(--shadow-elevation-b-20)Same

An inline notification is the same at every breakpoint.


Measurements

Dimensions

The padding of a Large and a Small notification. The shaded area is the padding; the 2px status edge sits outside it. The numbers are read from the component.

A Large and a Small notification at true size.
AttributeLargeSmall
Padding12px4px (the header has 2px more on the left)
Icon24px20px, 2px down
Gap icon to text8px8px
Left edge2px2px
Space above buttons16pxNot defined
Space above links16px (8px under buttons)Not defined

Spacing

The same distances as spacing tokens.

PartValue
Padding, Largespace-12
Padding, Smallspace-4
Icon to textspace-8
Left edgespace-2
Actions indentspace-32
Above the actionsspace-16
Between buttonsspace-8
Between linksspace-8 row, space-16 column

Elevation

PartTokenValue
Inline notificationshadow-elevation-b-20Every size and emphasis.

States

Every status in both emphases. Combinations Figma does not define are marked. An inline notification has no hover or focus state of its own; its × and links do.

Size
Layout
StatusStrongWeak


Typography

ElementTokenValue
Title (optional)label-sm14/14, 0.56px, bold, uppercase
Textbody-sm14/20, 0.36px
Inline linkbody-sm (Small)14/20
Buttonslabel-md / label-sm14/14, 0.42px (mobile), 0.56px (desktop)

The type is the same at every breakpoint.


Structure

Elements

ElementClassNotes
Notificationinline-notification inline-notification--{status} inline-notification--{emphasis}Status: info, success, warning, error. Emphasis: strong, weak. Add --small for Small.
Frame__base, __left-border, __container, __innerEdge, outline and padding.
Header__header, __icon, __text, __titleThe icon is a material-symbols-outlined span.
Actions__actions with __btns or __linksLarge only. Buttons or inline links.
Closeicon-btn icon-btn--closeOptional.

Types

Large: Strong and Weak for all four statuses, Default or Actionable. Small: Strong for all four, Weak for Informational and Warning only, Default only.

Width

The width of the container.


Motion

PropertyTokenValue
Close: opacity, height, margin and padding--n-close-durationDefault duration-fast-3 (150ms)
Easing--n-close-easeDefault ease-accelerate-generic
Height collapsedata-n-close="fade" on an ancestor turns it offOn by default

Reduced motion: hidden at once. Compare values in the live Motion section on Examples & Guidelines.


Behavior

InputResult
Click ×Hides the notification.
PersistenceIt stays until the user acts, the state changes or it is closed. It never auto-hides.
TabThe ×, buttons and link take focus with a visible ring.
Inline linkUnderlined when enabled; on hover the underline goes and the color changes (eco-inline-link, Small).

Accessibility Requirements

TopicRequirement
AnnouncementPut the notification in a region with aria-live="polite" (role="alert" for errors that block progress) so it is announced when it appears (WCAG 4.1.3).
StatusThe icon and the text carry the status, not the color alone (WCAG 1.4.1).
FocusThe ×, buttons and links have a 2px ring, border-focus, on keyboard use (WCAG 2.4.7).
Reduced motionHidden without a transition under prefers-reduced-motion: reduce.