Heading fonts

Choose a Google Fonts family. The selected font loads from Google Fonts; Inter and Geist Serif are bundled locally.

Search Reflow

Keyboard shortcuts

Use these keys while you are not typing in a field.

Search⌘K
Cycle themeT
Cycle accentA
Cycle heading fontF
Cycle radiusR
Cycle sizeS
Cycle iconsI
Cycle hoverH
Toggle navigation[
Toggle properties]
Previous / next demo slide←→
Show shortcuts?
Skip to content
Open navigationClose navigation

Make them yours

Theme
SystemT
Accent
BlueA
Heading font
InterF
Radius
RoundedR
Size
DefaultS
Icons
LucideI
Hover
FluidH

Surfaces

Eight levels let controls and overlays sit on distinguishable surfaces.

Installation

One prompt for your coding agent to set up Reflow and use this system in Remix.

The problem

In light mode, shadows distinguish white surfaces. In dark mode, raised surfaces are also lighter.

A fixed background can make a dropdown blend into its dialog. In this example, both the invite panel and the menu use surface 5.

Invite to your workspace
Select role
Member
  • Workspace ownerCan change workspace settings and invite new members
  • MemberCan work in the workspace and view shared content
  • Restricted memberCan only see and edit content they created
Cancel
surface-5 → surface-5

The role menu uses the same fill as the dialog, so its boundary nearly disappears.

The solution

Choose the background token for the substrate, then give nested panels a higher level.

Tokens

Eight background levels work in both themes. In light mode, levels 3–8 share a white fill and elevation comes from the shadow.

Dark
1surface-1
2surface-2
3surface-3
4surface-4
5surface-5
6surface-6
7surface-7
8surface-8
Light
1surface-1
2surface-2
3surface-3
4surface-4
5surface-5
6surface-6
7surface-7
8surface-8

Substrate

A floating control sits above the surface that contains it. Compare a two-level elevation over a page, panel, and dialog.

On the page
surface-1 → surface-3
Inside a popover
surface-3 → surface-5
Inside a dialog
surface-5 → surface-7

Elevated

Apply the chosen background and elevation shadow to the panel. Choose a stronger contrast between nested surfaces when the contents need a distinct boundary.

Workspace
Settings

Move through levels

Drag either thumb to choose which levels to nest. Each layer is one step above its parent.

surface-1
surface-2
surface-3
surface-4

The innermost surface follows the selected range.

Examples

Invite dialog

Give the role menu a separate surface so it is distinguishable from the surrounding panel.

Invite to your workspace
Select role

Color picker

A color picker pairs a raised editing panel with a format control. Open the control and switch between color formats.

Hex
Alpha

Reference

TokenLightDark
--rf-surface-1#fafafa#171717
--rf-surface-2#fcfcfc#1e1e1e
--rf-surface-3#ffffff#252525
--rf-surface-4#ffffff#2c2c2c
--rf-surface-5#ffffff#333333
--rf-surface-6#ffffff#3a3a3a
--rf-surface-7#ffffff#414141
--rf-surface-8#ffffff#484848