Jeremy, this is the language brief. Research as of the thirtieth of August, twenty twenty-six. It is how to talk about great web design so a frontier model takes you seriously, instead of emitting twenty twenty-three SaaS slop. Quotes are attributed. When something is synthesized usage, I will say it is reconstructed. [pause] Here is what changed in twenty twenty-five and twenty twenty-six. AI made a competent, interchangeable interface free. That did not make a considered one free. Dylan Field, in the Config twenty twenty-six recap on the twenty-fourth of June, said this. At past Configs, we have talked about AI lowering the floor and raising the ceiling. But while AI has lowered the floor, it has not raised the ceiling. Designers, creatives, builders: you will raise the ceiling. Unconstrained generation draws the middle of the training set. Field, in a Config twenty twenty-six interview recap from Sourcery, which is journalism, not a primary transcript, said you are gonna get the average, and it is not going to stand out. Slop is that average, shipped. Kosta, in Spot the Slop on the twenty-third of July twenty twenty-six, put it this way. Slop is not bad design in the old sense: misaligned buttons, clashing colours, broken layouts. Slop is design with no author. It is the statistical average of ten thousand interfaces, rendered cleanly and shipped without anyone stopping to ask whether it should look and feel like this. Karri Saarinen named the antonym on the nineteenth of December twenty twenty-five: not more tools, consideration. My worry is not the code or the tools themselves. It is a decline in consideration, and with that, a decline in unique, well-designed products. Taste is not a vibe you ask a model to have. Emil Kowalski, in Developing Taste, said simply shipping a product that works is no longer enough, everyone can do that, especially now with AI. Taste is what matters. And it is commonly mistaken as personal preference, but it is more than that. It is a trained instinct. In Agents with Taste, twenty twenty-six, the move is to package taste as rules. Almost every taste decision has a logical reason if you look close enough. So do not request a look. Specify the problem, the hierarchy, the tokens, the states, and the bans. [pause] How to talk. Four words: considered, optical, subdued, authored. Considered. Every visible decision serves the problem, not decoration. Saarinen again, nineteenth of December twenty twenty-five: the feature you design and build today should be a considered step toward that vision. Gavin Nelson, twenty twenty-five and twenty twenty-six: natural, expected, and intentional. Optical. Align to what the eye reads, not the bounding box. Reconstructed usage: the play icon is geometrically centered and optically left. Nudge it toward the point. Subdued. Recessive on purpose. In systems this is a token, text-subdued, not an adjective. Quiet is the crit cousin: not empty, not timid. Apple Human Interface Guidelines, ninth of September twenty twenty-five: Liquid Glass's primary goal is to remain visually clear, deferring to the content underneath. Authored. Someone made a choice a default would not have made. Kosta: does this feel like it came from somewhere? Does it have a voice? Would I notice if it disappeared? Type is the fastest signal. You do not need a custom font. You need a decision. Three registers, spoken as a comparison, not a table. Resolved means authored. Hierarchy does work. Empty, error, and loading exist. Motion has a job. Type was chosen. The tells are tight, considered, optical, quiet, systematic. Pretty means expensive in a screenshot, and it falls apart in use, because decoration is applied evenly. The tells are loud, precious, overwrought, chrome, Dribbble, wow. Slop means competent, interchangeable, no author. The average of twenty nineteen to twenty twenty-four SaaS. The tells are Inter-only, indigo gradient, uniform radius, missing states. Hierarchy is who speaks first, second, and not at all. Kosta: when everything gets the same radius and padding, the page goes flat. Hon Tran, an Awwwards juror in twenty twenty-six: motion with no hierarchy: everything floats, parallaxes, and reveals, so nothing matters. A PM says, can we make this feel more premium and add some delight? A senior designer, reconstructed, answers: the populated state is unresolved. Recede secondary metrics to text-subdued, give the at-risk number optical size and tabular-nums, drop the indigo bars. Empty, loading, and error are where this will feel cheap. Motion: one hundred twenty milliseconds ease-out on the row update, nothing on a control they hit all day. Reference: Linear's density, not a Dribbble analytics kit. Attach the tokens. Ban Inter-only and bg-indigo-five-hundred. False friends. They say make it pop. A designer says raise the primary two steps on the type ramp, recede everything else, one accent, once. They say modern, or clean. Name a year and a quality instead. Quiet chrome, one type decision, no competing radii. They say premium. That is optical alignment, a restrained palette, a body face and a display face. They say AI-powered look. Show the job: what the model is doing, what is uncertain, what is reversible. They say wow factor. One signature moment, directed motion, the rest is quiet so it can land. They say more like Linear, Stripe, Apple. Say the density of Linear, the editorial scale of Stripe Press, Liquid Glass on the navigation layer only. They say delightful micro-interactions. Frequency first. Keyboard-heavy: no entrance flourish. Under one hundred fifty milliseconds. They say minimal, or simple. Recessive chrome. Distill complexity; do not delete needed features. They say use our design system, and there is no file. Here is Guidelines.md. Tokens only. No hardcoded hex. They say just ship the v0. v0 is a draft. Empty, error, loading, and the type decision happen before it is done. Do not say modern and clean. That is Inter, indigo, three cards. [pause] Twelve terms that distinguish twenty twenty-six from twenty twenty-three. Cut six and twelve if you need ten. One. Text-box-trim. People still say leading-trim. CSS trims extra half-leading so padding is optical space, not the em-box. Use it on buttons and stacked headlines. Keep tap targets at WCAG 2.2 size. Two. OKLCH plus relative color plus light-dark. Palettes in a perceptual space. Tints from one origin. Light and dark as first-class values. Tokens in oklch. Not an invert. Three. Container queries and subgrid. A component restyles to its slot, not the viewport. Nested grids inherit parent tracks. At-container, not at-media. Internals on subgrid. Four. View Transitions, including multi-page. The browser snapshots old and new UI and interpolates, so a document site can morph without becoming an SPA. MPA plus View Transitions. Five. Scroll-driven CSS versus scroll-jacking. Animation is a function of scroll. The document remains a document. Hijacking means you stole the wheel. Animation-timeline view. Reduced motion still yields a real page. Six. Display grid-lanes plus reading-flow. Native masonry with an accessibility debt: default lanes often scramble focus order, WCAG 2.4.3. Not Baseline. Design reading order with the layout. Grid fallback. Seven. Code Connect, code as material. Dylan Field, Config twenty twenty-six: design is a process. Code is material, just like images, vectors and design layers. The repo is implementation truth. Import the production Button. Eight. Canvas plus chat, controlled generative UI. Chat is the intent channel. A canvas or component registry is the work. Runtime UI from allowed parts, not raw HTML. Chat left, work object right. Low confidence stays in prose. Nine. Anti-slop, the quiet luxury of software. Generation made clean SaaS free, so taste is the differentiator: restraint, a type decision, no purple glow, no three identical cards. Authored, not average. Ban the fingerprint list. Ten. WCAG 2.2 as craft. Target size, focus not obscured, reduced motion as a design constraint. 2.2 AA is the live bar. WCAG 3 is a Working Draft, not a contract. 2.2 AA. Twenty-four pixel targets. Reduced motion leaves a document. Eleven. INP as a taste constraint. Interaction to Next Paint replaced FID on the twelfth of March twenty twenty-four. Good is p seventy-five INP at or under two hundred milliseconds. Pressed states inside the INP window. Animate transform and opacity only. Twelve. Liquid Glass versus glassmorphism. Materials are back at OS scale, Apple, WWDC twenty twenty-five: a control layer that defers to content. Glassmorphism is the twenty twenty-one tutorial look. No glass on content cards. No glass-on-glass. [pause] Working lexicon, by layer. Not all one hundred nineteen terms. Meaning first, then the confusion to avoid. Layout. CSS Grid is two-dimensional tracks. It is not Flexbox. Subgrid means the child reuses the parent's tracks, not a nested grid with its own. Container queries restyle to the slot, not at-media on the window. Intrinsic layout is clamp and minmax, not three-seventy-five, seven-sixty-eight, fourteen-forty artboards. Bento is authored unequal spans, not masonry. Fluid type and space, Utopia: min and max at min and max viewports, not raw vw. Optical alignment is the eye, not the box, and it is not text-box-trim. Text-box-trim is the text box, not glyph overhang. Type. Variable fonts: one file interpolates weight, optical size, width. Not separate static cuts. Optical sizing, opsz: letterforms change with size. Not just bumping weight. OpenType features: UI tables want tnum. Running text wants ligatures and oldstyle figures. Grotesque plus serif: a low-contrast sans for UI with a real serif for display or body. Not Inter-everywhere, and not blindly copying Anthropic. Text-wrap balance and pretty are not each other. Balance for headlines, pretty for rag. Text-box-trim is optical vertical rhythm in CSS. Watch tap-target shrinkage. Color and materials. OKLCH is perceptual lightness. Not HSL. Hex is a serialization, not a space. Relative color and color-mix: derive from one origin, or mix two colors. Not Sass lighten. Light-dark: both appearances in one value. Not invert-plus-glow. Display P3 is colors outside sRGB. Not HDR. Materials versus glassmorphism: a control layer versus blur-on-every-card. Liquid Glass is a native system material, not a CSS meme. Contrast as a decision: Linear, Stripe, Vercel taste is high contrast plus one accent. Motion. Scroll-driven CSS: progress tied to scroll, compositor-side. Not once-on-intersection, and not scroll-jacking. Firefox is not a safe all-engines story as of mid twenty twenty-six. Prefer MDN. View Transitions: browser-interpolated navigation. Not Framer Motion, which still wins for interruptible in-app physics. Spring physics is mass, stiffness, damping. Not a cubic-bezier bounce. Reduced motion is often off, not shorter. Choreography versus decoration: sequence that explains state change. Staggered whileInView fade-up is the twenty twenty-four AI-site tell. Film versus document: film-quality moments on a document skeleton. Interaction. A command palette is a keyboard-first index of actions. It is not a search box. Progressive disclosure: show the minimum, reveal on intent. That is not progressive enhancement, which is architecture. Optimistic UI: assume the write succeeded, roll back on failure. Not a skeleton. Modality-agnostic: keyboard, pointer, and touch as equals. Selection is the set of objects being operated on, not a text caret. Presence: named cursors on a canvas, including agents. AI-era UI. Generative UI is runtime composition from allowed components. Not AI designed my Figma file. Vercel's production path is streaming data parts. StreamUI and RSC was paused as experimental. Canvas plus chat: chat is intent, the canvas is the work. Agentic UI: plan, interrupt, diffs, permissions. Not a chatbot with plugins. Inline citations: markers on claims, mapped to sources as they stream. Streaming as language: a spinner says unknown, a stream says work is happening here. Human-in-the-loop: approve, edit, reject as a designed step. Not a disclaimer footer. Ambient versus explicit AI: ambient still needs an indicator and an off switch. Craft. Restraint is quality via what you refuse. Saarinen: reduce scope. The spec is the baseline, not the goal. Not minimalism-as-style. Opinionated: design for someone in particular. Handmade signals: evidence of a person. Not an AI watercolor overlay. Editorial web: spreads and lockups, not cards-in-a-grid. Strategic friction, van Schneider: opt-in depth. Not dark patterns. Directed motion, Hon Tran: a two-second branded reveal can be craft. A six-second loader is a penalty. Performance. Perceived performance is how fast it felt. INP, LCP, CLS. Field bar is LCP at or under two point five seconds, INP at or under two hundred milliseconds, CLS at or under zero point one, p seventy-five, mobile. Lab is not field. FID is dead. A skeleton versus nothing: it must match the final layout and must end. Progressive enhancement, twenty twenty-six: a real document, then gifts behind at-supports. MPA plus Speculation Rules plus View Transitions: you may not need an SPA for a site. AVIF is the production default. JPEG XL is not yet default-on everywhere as of the thirtieth of August twenty twenty-six. Accessibility. WCAG 2.2 AA is the live bar. Not WCAG 3, Working Draft, third of March twenty twenty-six. Focus: 2.4.7 visible, AA. 2.4.11 not buried by sticky chrome, AA. Never global outline none. Target size: twenty-four by twenty-four CSS pixels is AA. Forty-four by forty-four is AAA and platform comfort. Name, role, value: HTML first, not ARIA-first. Reading-flow: reconcile visual order with focus order when grid or lanes permute items. Design systems. Tokens, DTCG: named decisions. Primitives versus semantic versus component. Not a Figma swatch. Semantic color is named by role, text.muted, not blue-five-hundred. Modes: light and dark, brand, compact and comfortable. Density is its own axis, not a breakpoint. Slot and compound components: Trigger plus Content via context. AsChild so you do not wrap a button in a button. Headless versus owned: Radix and Base UI give behavior and accessibility. Owned source, shadcn-class, lives in your repo. Code Connect and MCP: map the Figma component to the production import. Not Zeplin. [pause] Taste references. Cite a quality, not a screenshot. The quality of named work, not the failure mode of the anti-reference. Quality is density, editorial scale, quiet chrome, directed motion, type pairing. Almost never look. Reconstructed: the density of Linear, the editorial scale of Stripe Press, not the chrome of Dribbble dashboards. Geist is fine as a decision. Geist-as-default is already a tell. Liquid Glass on the navigation layer only. Do not glass the content. Kosta, twenty-third of July twenty twenty-six: Stripe's animations feel precise and mathematical. Duolingo's feel bouncy. The motion matches the thing. People. Karri Saarinen: Linear craft doctrine. Dylan Field: floor and ceiling, code as material. Emil Kowalski: taste as trained instinct, motion budgets. Rauno Freiberg: invisible details, frequency versus novelty. Alan Dye: Liquid Glass, literacy, not imitation. Andy Clarke, Adam Argyle, Miriam Suzanne: CSS craft, OKLCH, container queries. Heydon Pickering: Inclusive Components. Manuel Matuzovic: grid-lanes versus 2.4.3. Jake Archibald: linear springs, JPEG XL on the twenty-fourth of August twenty twenty-six. Hon Tran: directed motion, floor before ceiling. Kosta: slop diagnosis. Maggie Appleton: squish versus structure. Frank Chimero: light touch. Tobias van Schneider: strategic friction. Trys Mudford and James Gilyead: Utopia. Gavin Nelson: citing behaviors, not aesthetics. Skip unverified twenty twenty-five and twenty twenty-six mouths: Cassidy Williams, Maxime Heckel, Steve Schoger from video, Inga Hampton, recaps only, official Awwwards jury comments, not published. Studios. OFF plus BRAND, Awwwards twenty twenty-five Site of the Year, landonorris.com. Immersive Garden, twenty twenty-five Agency of the Year. Studio Freight, the twenty twenty-six studio that published a mouth, brutal elegance. Lenis must yield to reduced motion. Active Theory: when the product is an experience. Hello Monday: type as the site. Pentagram: identity and editorial, not shaders. Do not cite Locomotive as if twenty eighteen were now. Ueno is gone unless you mean a person. Playground and Sequoia are ambiguous. Picnic CSS is not a twenty twenty-six taste-maker. Products. Open them. Do not moodboard them. Linear: keyboard-first, optimistic, density, product-UI north star. Stripe Dashboard plus Docs: documentation as product. Vercel: judge the dashboard and AI SDK. Raycast: OS-level command palette. Do not quote the fifty-millisecond lore unless you measure it. Figma: presence, twenty twenty-six code layers, Motion, MCP. Apple iOS and macOS twenty-six: Liquid Glass as literacy, not a web costume. Material 3 Expressive: the other OS pole. Expressive without an axis becomes loud. Claude Design: canvas plus chat. Perplexity: inline citations as product UI. Arc: verify the product still exists in the form you are citing. ChatGPT Canvas packaging has moved. Do not freeze a twenty twenty-four screenshot as twenty twenty-six UI. Anti-references: Dribbble dashboards. Shadcn-default. Awwwards without a concept. Build the future of work landings. Glass-on-glass. Tailwind indigo-five-hundred, Adam Wathan, seventh of August twenty twenty-five. [pause] Dated tells to ban in prompts. Using these as a default reads as unconsidered. The sin is defaulting. Still fine if earned: bento when spans mean something, grain when quiet, dark mode when designed, 3D when it is the medium, even glass as one toolbar with contrast solved. The default list: glassmorphism everywhere. Blob, mesh, aurora heroes. Purple-glow, indigo-pink gradient. Three equal rounded-two-xl feature cards. Lottie-everywhere. Scroll-jacking as the site. 3D for 3D's sake on a CRUD app. AOS and whileInView fade-up on every section. Inter for everything. Dark mode as invert plus glow. Custom fun cursors. Parallax as personality. Hamburger on desktop as hidden IA. Cookie-wall first paint. Stock 3D clay people, generic AI hero illustration. AI as a gradient badge. [pause] Canonical briefing outline. Paste and fill. Merged from Figma Make, v0, Esteban Suarez, fifteenth of December twenty twenty-five, and Saarinen. v0: v0's defaults are good. Specific constraints make them great. Kosta: AI nails the happy path every time. What it skips is everything around it. Zero, problem and intent. The job of this page in one sentence. What happens if we do not ship it. The decision the user is here to make. Success: what resolved looks like, not what pretty looks like. One, user and moment, context of use. Who, on what device, under what time pressure, in what environment. Frequency: once a month versus two hundred times a day. That decides motion. Novelty: first-run versus muscle-memory. That decides flourish. Two, hierarchy, what speaks. Primary: the one thing the eye must hit. Secondary: supporting evidence. Tertiary, recessive: metadata, chrome, legal. Explicit: what is not on this page, progressive disclosure. Three, product surface, inventory. Sections in order. Data each section shows. Actions the user can take. Not a dashboard: the actual widgets. Four, references, register, not remix. The density of X, the editorial scale of Y, the motion restraint of Z. One sentence each on what you are borrowing. Five, anti-references, what this is not. Not the chrome of Dribbble dashboards. Not Inter plus indigo plus three feature cards. Not a WebGL hero on a settings page. Six, visual system, tokens, not vibes. Type: one display face plus one body face, with a ramp, say twelve, fourteen, sixteen, twenty, twenty-eight, forty. Color: semantic roles, text, text-subdued, bg, bg-surface, border, danger, success, warning. Space: a scale, four, eight, twelve, sixteen, twenty-four, thirty-two, forty-eight. No arbitrary values. Radius: one default, one exception, and why. Elevation: one shadow language, or none. Dark and light: both, via tokens, not hardcoded. Seven, motion. Purpose of each animation: state change, attention, character, or none. Duration budget from Emil: UI under three hundred milliseconds, micro one hundred to one hundred fifty, standard one hundred fifty to two hundred fifty, modal two hundred to three hundred. Frequency rule from Rauno: high-frequency keyboard UI gets no entrance flourish. Reduced-motion path. Awwwards jurors read its absence as carelessness. Eight, states, the thing models skip. Default, populated. Empty: write the copy. It must make someone want to fill it. Loading: skeleton or inline, not a centered spinner unless the whole page is blocked. Error: human language, recoverable. Partial, stale, offline, permission-denied. First-run versus nth-run. Nine, interaction notes. What is clickable, what expands, what navigates. Keyboard: command palette? Enter-to-submit? Escape-to-dismiss? Touch: forty-four pixel hit areas, optical alignment on asymmetric icons. Interruptible transitions versus cutscenes. Ten, constraints and anti-patterns. Device and breakpoint behavior. Accessibility: contrast, focus, reduced motion, no custom cursor that hides the system one. Forbidden: hardcoded hex, detached components, Inter-only, indigo-five-hundred, glass-on-glass, decorative parallax. Eleven, first step for models. Do not code until the ambiguities are resolved. Or: first step, build X with placeholder states. Then iterate in small scopes. [pause] Model preamble. Paste this at the top of a ChatGPT, Claude, v0, or Figma Make conversation. It also lives as twenty twenty-six model preamble.txt. You are designing to a twenty twenty-six craft baseline, not twenty twenty-three SaaS defaults. Taste is rules, not vibes. If the problem, surface, or tokens are ambiguous, ask first. Restate the problem, the hierarchy, and the bans before you draw or code. Resolved: an author made choices. Hierarchy does work. Type was chosen. Empty, loading, and error exist. Motion has a job. Optical alignment beats bounding-box math. Cite by register: the density of Linear, the editorial scale of Stripe Press. Not make it like Linear. Never say modern, clean, premium, or wow. Type: one display face plus one UI face, with a ramp. Tabular lining figures on numbers. Text-wrap balance on headlines, pretty on body. Text-box-trim for optical padding. Do not use Inter as the only face. Geist alone is already a tell. Color: semantic tokens, text, text-subdued, bg, bg-surface, border, danger, success, warning. Oklch plus relative color plus light-dark. Light and dark are first-class modes, not an invert. No purple or indigo glow, mesh blobs, aurora heroes, or glassmorphism on content cards. Liquid Glass is OS navigation chrome. Do not copy it in CSS. No glass-on-glass. Layout: container queries, slot, not viewport. Subgrid for card internals. Bento spans are authored hierarchy, not three equal cards. Fluid type and space via clamp, not three-seventy-five, seven-sixty-eight, fourteen-forty artboards. Motion: under three hundred milliseconds, interruptible, none on high-frequency keyboard UI. Prefers-reduced-motion means the page remains a document. Choreograph state change. Do not stagger fade-up on every section. Prefer View Transitions and scroll-driven CSS. Do not scroll-jack, Lottie-everywhere, or decorative parallax. Interaction: keyboard, pointer, and touch as equals. A command palette executes actions. It is not a search box. Optimistic writes. Progressive disclosure. Twenty-four pixel minimum targets, forty-four when you can. AI-era: chat is intent. The canvas or document is the work. Controlled generative UI from a component registry, not raw HTML. Streaming is the in-progress interface, not a spinner. Inline citations on claims. Human-in-the-loop for high-stakes actions. Low confidence: stay in prose. No AI gradient badge. Performance and accessibility are taste. INP jank is as embarrassing as a slow LCP. Non-Baseline features need an at-supports gift path. WCAG 2.2 AA is the floor. WCAG 3 is not an audit target. System: tokens only, no hardcoded hex. One default radius and one named exception. Density is a mode, compact or comfortable, not tighter padding. Bans: Inter-only. Bg-indigo-five-hundred. Three equal rounded-two-xl cards. WhileInView stagger. Custom cursor trails. Dark-mode glow orbs. Stock 3D clay people. Hamburger-on-desktop as IA. Cookie-wall first paint. Generic headlines, transform how you work. Emoji feature icons. Happy path only. First step: do not code until ambiguities are resolved, or build one surface with placeholder states. Smaller scope, more detail. [pause] Uncertainties. Do not bluff. Open as of the thirtieth of August twenty twenty-six. Firefox scroll-driven animations. MDN still lists them experimental. Trust MDN on ship day. Display grid-lanes. Safari-first, reported twenty-six point four, March twenty twenty-six. Chromium and Firefox timeline unclear. Not Baseline. JPEG XL. Mozilla Intent to Ship, twenty-fourth of August twenty twenty-six, Jake Archibald. Chrome stable still widely reported as flag-gated. AVIF remains the responsible primary. WCAG 3.0 date. Draft of the third of March twenty twenty-six. Recommendation year is not a W3C commitment. OpenAI Canvas chrome. Packaging moved. Do not freeze a twenty twenty-four screenshot as twenty twenty-six UI. Arc Browser. Confirm the product before citing as a living reference. Linear Agent, reported April twenty twenty-six, and Notion 3.2 agent views. Secondary roundups only. Confirm on first-party changelogs. Any conversion percent or sixty-seven percent of SaaS. Discard. Keep out of a system default: style queries, incomplete in some engines, and contrast-color, still settling, not a WCAG oracle. [pause] Sources, if you want to go back to them. WCAG 2.2. The Config twenty twenty-six recap. Saarinen, Design is more than code. Kowalski, Developing Taste, and Agents with Taste. Kosta, Spot the Slop. How to prompt v0. Apple Liquid Glass. MDN on text-box-trim, View Transitions, and OKLCH. Container queries on web.dev. INP on web.dev. Freiberg, Invisible Details. Matuzovic on grid-lanes. Hon Tran. Claude Design. Utopia. And the JPEG XL intent on Mozilla Hacks. That is the note. Use the four words. Specify the problem, the hierarchy, the tokens, the states, and the bans. Do not ask a model for a look.