Dazzler / The composition field guide

Give every idea the right shape.

Eight starting structures. One principle: let the task and content decide. Preserve what already works, then refine with evidence.

Return to the field manual

Same content. Different emphasis.

These captured examples use the same required email field, deadline and submit action. The shared resolver changes type hierarchy, spacing and motion tokens. Both keep a 16px body and controls at least 44px tall.

Quieter workshop application with restrained heading and compact spacing
Quieter · density 7 · motion 1
Bolder workshop application with larger display hierarchy and roomier spacing
Bolder · density 3 · motion 8
01

editorial feature

Lead, standfirst, feature, supporting evidence

Comfortable reading measure with a generous headline and a quiet supporting column

Content contract headline + body

When to adapt it

Do not fragment a continuous argument into cards

At 48rem and below use one column in DOM reading order; keep tables in labelled scroll regions. Test actual content at 320px and 200% text.

.dazzler-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(12rem,1fr);gap:var(--space-6,1.5rem)}.dazzler-layout>*{min-width:0}@media(max-width:48rem){.dazzler-layout{grid-template-columns:minmax(0,1fr)}}
02

split narrative

Narrative first, related media second

Two complementary regions, generous space between milestones

Content contract narrative + media

When to adapt it

Do not split unrelated material or reverse reading order with CSS

At 48rem and below use one column in DOM reading order; keep tables in labelled scroll regions. Test actual content at 320px and 200% text.

.dazzler-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6,1.5rem)}.dazzler-layout>*{min-width:0}@media(max-width:48rem){.dazzler-layout{grid-template-columns:minmax(0,1fr)}}
03

list detail

Search and list, selected item, actions

Compact scanning column beside a flexible detail pane

Content contract items + detail

When to adapt it

Keep selection and return-to-list clear on small screens

At 48rem and below use one column in DOM reading order; keep tables in labelled scroll regions. Test actual content at 320px and 200% text.

.dazzler-layout{display:grid;grid-template-columns:minmax(14rem,1fr) minmax(0,2fr);gap:var(--space-6,1.5rem)}.dazzler-layout>*{min-width:0}@media(max-width:48rem){.dazzler-layout{grid-template-columns:minmax(0,1fr)}}
04

dense workspace

Task controls, active records, contextual detail

High information density with explicit groups and stable alignment

Content contract records + actions

When to adapt it

Density never justifies tiny text, hidden controls or excessive simultaneous panels

At 48rem and below use one column in DOM reading order; keep tables in labelled scroll regions. Test actual content at 320px and 200% text.

.dazzler-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(14rem,1fr);gap:var(--space-6,1.5rem)}.dazzler-layout>*{min-width:0}@media(max-width:48rem){.dazzler-layout{grid-template-columns:minmax(0,1fr)}}
05

analytic report

Question, key result, chart, source table, interpretation

Use a hierarchy of evidence rather than equally weighted metric cards

Content contract metrics + evidence

When to adapt it

Keep units, uncertainty, missing data and table alternatives

At 48rem and below use one column in DOM reading order; keep tables in labelled scroll regions. Test actual content at 320px and 200% text.

.dazzler-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6,1.5rem)}.dazzler-layout>*{min-width:0}@media(max-width:48rem){.dazzler-layout{grid-template-columns:minmax(0,1fr)}}
06

focused form

Purpose, grouped fields, validation, submit and recovery

One readable form column with optional supporting explanation

Content contract fields + submit

When to adapt it

Do not hide required fields to simplify the composition

At 48rem and below use one column in DOM reading order; keep tables in labelled scroll regions. Test actual content at 320px and 200% text.

.dazzler-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(12rem,1fr);gap:var(--space-6,1.5rem)}.dazzler-layout>*{min-width:0}@media(max-width:48rem){.dazzler-layout{grid-template-columns:minmax(0,1fr)}}
07

catalog menu

Categories, comparable items, details and ordering controls

Intentional repeatable rows or tiles support comparison

Content contract items + categories

When to adapt it

Do not vary geometry merely to appear original; retain prices and dietary details

At 48rem and below use one column in DOM reading order; keep tables in labelled scroll regions. Test actual content at 320px and 200% text.

.dazzler-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6,1.5rem)}.dazzler-layout>*{min-width:0}@media(max-width:48rem){.dazzler-layout{grid-template-columns:minmax(0,1fr)}}
08

poster event

Event identity, date/place, details, action

Strong display hierarchy and concise grouped practical information

Content contract title + date + action

When to adapt it

Do not let decoration compete with dates, location or action

At 48rem and below use one column in DOM reading order; keep tables in labelled scroll regions. Test actual content at 320px and 200% text.

.dazzler-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6,1.5rem)}.dazzler-layout>*{min-width:0}@media(max-width:48rem){.dazzler-layout{grid-template-columns:minmax(0,1fr)}}

Refine without starting over.

Bolder. Quieter. Typeset. Colorize. Polish. Harden. Critique. Distill. Ask directly; controls remain optional. Critique is read-only. Distill preserves required content and controls. Harden checks interface resilience within scope.

Preview changes, inspect their effect and continue the saved project decisions. More visual variance is not a guarantee of better design.