Fog Cool
Cool grey layered on cool grey, with edges that barely announce themselves.
Construction · Tinted
Surfaces are a wash of the accent over the page — no border, no shadow, only a shift in tone saying where one group ends.
Every style renders this same screen, so the only thing changing between two of them is the style. The component above is the file below, running.
Prompt
Design this interface in the Fog Cool style. Layers are separated by very small steps in the same cool grey, so the interface reads as one soft surface. Only text and the accent are allowed real contrast. Build every
The numbers in this prompt are printed from the tokens below, so it cannot drift from what the specimen renders.
What carries the look
- small steps between layers
- cool grey on cool grey
- soft single surface
- contrast reserved for text
What this style refuses
- warm neutrals
- hard edges
- strong shadows
- loud accents
The refusals are the half that keeps generated interfaces from converging — a prompt that only says what to add gets the default look.
Tokens
Palette
#f1f3f5#0e1114#f8fafb#161a1e#dde2e6#272d33#191d21#eef1f4#565d64#98a1a9#3a6ea5#7aa8d8#ffffff#04142aShape and type
Measured contrast — body 15.24:1 light, 16.7:1 dark; secondary text 6:1 and 7.22:1. Every pair clears WCAG AA in both themes, checked on each build.
Specimen · Specimen.tsx
import type { CSSProperties } from "react";
/**
* Vibary · Fog Cool
*
* Cool grey layered on cool grey, with edges that barely announce themselves.
*
* One complete product screen, rendered from the token object below —