LLIFE

Brand guidelines

Every value on this page is rendered from the live tokens in app/globals.css. If the system changes, this page changes with it — it cannot drift.

Logo

The mark is a stadium with two knocked-out circles. Never redraw, recolour or stretch it. It fills with currentColor, so it inverts for free.

LLIFE

Palette

Monochrome by intent. Colour is reserved for meaning — status, per-vertical accents — never decoration.

--canvas

#EEEEEE

Page ground

--surface

#FFFFFF

Cards, prompt, menus

--ink

#000000

Headlines, mark, send

--ink-soft

#1E1E1E

Pill buttons

--muted

#6B6B6B

Secondary copy, links

--placeholder

#A2A2A2

Prompt placeholder only

--line

#E5E5E5

Hairlines

The source mockup specifies #A2A2A2 for secondary copy. That is 2.3:1 on the canvas and fails WCAG AA, so --muted ships at #6B6B6B (4.7:1). The original value survives as --placeholder, used only for the prompt placeholder.

Type

Outfit for display, Plus Jakarta Sans for everything else. Display is always uppercase with -0.02em tracking.

Transcending Llife

.type-display — Outfit 700 / clamp(2.25rem, 6.4vw, 3.75rem) / -0.02em

Get started

.type-label — Jakarta 700 / 11px / +0.09em / uppercase

Ask anything, or task as an agent

Prompt — Jakarta 400 / 20px

Geometry

Measured from the source mockup at a 1512px frame. The prompt card is 1078×199 at a 28px radius.

--radius-sm

12px

--radius-md

20px

--radius-lg

28px

rounded-full

9999px

Buttons

One dark pill, one outline, one circular action. Hover is a 150ms colour change — nothing moves.

Verticals

One prompt, five agents. lib/verticals.ts is the single source — the prompt dropdown and both footer columns read from it.

Personal

Everyday reasoning, memory and planning for your own life.

Education

Learn, revise and be tested by an agent that tracks what you know.

Employment

Find work, prepare, and let an agent handle the paperwork.

Trading

Research markets and model positions with an auditable trail.

Business

Run operations, draft documents and delegate recurring work.

Motion

Restrained on purpose. 150ms for hover and press, 250ms on the brand ease for menus. No parallax, no scroll-jacking. prefers-reduced-motion is honoured globally.

--ease-brand: cubic-bezier(0.16, 1, 0.3, 1)

Hover the squares.