Branding

House looks, one rule set. Point an agent here and it builds in the brand instead of its own defaults.

Pick a look

Systems

Not looks — reusable machinery. How a brand is defined, and how it changes on screen.

Hand it to an agent

Paste this at the top of the session that's building the UI. Swap the slug for house-pour if that's the look.

Build this UI in the Lucian Labs "Console" look.
Read https://lucianlabs.ca/branding/AGENT.md and
https://lucianlabs.ca/branding/console.md before writing any CSS.
Link https://lucianlabs.ca/branding/console.css and use its tokens
and components. Every colour must be a var(--token) from that file.
Follow the ban list in AGENT.md — check your output against it before
you report the work done.

Files

FileWhat it is
AGENT.mdRead first. How to pick, the ban list, and how to fill gaps the specs don't cover.
brands.jsonBoth looks as machine-readable tokens.
console.mdConsole spec — type ramp, accent budget, voice, gap-filling.
console.cssConsole drop-in stylesheet. Link it or vendor it.
console.htmlConsole rendered in its own look — the visual reference.
house-pour.mdHouse Pour spec.
house-pour.cssHouse Pour drop-in stylesheet.
house-pour.htmlHouse Pour rendered in its own look.
punch-clock.mdPunch Clock spec — includes the Console-vs-Punch-Clock table and the motion system.
punch-clock.cssPunch Clock drop-in stylesheet.
punch-clock.htmlPunch Clock rendered in its own look.
field-notes.mdField Notes spec — type ramp, the amber/lavender split, voice, gap-filling.
field-notes.cssField Notes drop-in stylesheet.
field-notes.htmlField Notes rendered in its own look.
theme-engine.mdThe theme contract, the eleven presets, and the per-theme motion table.
theme-engine.htmlAll eleven presets and their exit animations, live.
skin-swap.mdTwo-skin architecture and the curved-wipe transition, step by step.
skin-swap.htmlThe wipe, running — press it a few times, no two are alike.

Why this exists

Generated UI has a house style nobody chose: Inter, indigo gradients, rounded-2xl shadow-lg cards, a centred hero over three equal feature boxes, and an emoji in every heading. It is competent and it is anonymous, and it shows up whenever a model has to fill a gap the brief didn't cover.

These pages close the gaps in advance. The tokens say what the colours are, the specs say what to do when a component isn't listed, and the ban list names the defaults to delete on sight. An agent that reads all three produces something that looks like it came from here.

Rules that hold across the looks