Dark graphite glassmorphism — heavy 48px backdrop blur on near-opaque graphite panes, hairline pewter borders, and brushed-silver text accents. No color, no glow, no aurora. Just clean machined glass over a flat charcoal canvas with subtle metallic gradients on display type.
A complete design system, ready for your AI coding agent. Every primitive, token, and pattern below is generated straight from DESIGN.md — drop the file in your project and ship matching UI in minutes.
Prose-first token file — decisions live next to their reasoning.
Fine micro-scale (1–5px) for pills, editorial scale (12–21px) for the grid.
The system's own radius tokens — sm for chips and inputs, md for buttons, lg for cards, pill for fully-rounded CTAs.
1---2name: "Liquid Metal"3description: "Dark graphite glassmorphism — heavy 48px backdrop blur on near-opaque graphite panes, hairline pewter borders, and brushed-silver text accents. No color, no glow, no aurora. Just clean machined glass over a flat charcoal canvas with subtle metallic gradients on display type."4tags: [dark, glass, minimal, premium, modern]5colors:6 primary: "#E8EAEE"7 secondary: "#8C92A0"8 tertiary: "#C8CDD6"9 neutral: "#0E1013"10 surface: "#15181D"11typography:12 display: Inter13 body: Inter14 mono: "JetBrains Mono"15 scale:16 hero: "4.25rem / 1.04 / 600 / -0.035em"17 h1: "2.75rem / 1.08 / 600 / -0.03em"18 h2: "1.625rem / 1.2 / 500 / -0.02em"19 body: "1rem / 1.55 / 400 / -0.005em"20radius:21 sm: 8px22 md: 14px23 lg: 20px24 pill: 9999px25shadows:26 card: "0 1px 0 rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(232, 234, 238, 0.10)"27 button: "inset 0 1px 0 rgba(232, 234, 238, 0.14)"28borders:29 card: "1px solid rgba(220, 225, 235, 0.08)"30 divider: "rgba(220, 225, 235, 0.06)"31glass:32 surface: "rgba(30, 34, 40, 0.28)"33 blur: 64px34 saturate: 115%35 border: "1px solid rgba(220, 225, 235, 0.14)"36 shadow: "0 1px 0 rgba(0, 0, 0, 0.25)"37 inner_highlight: "inset 0 1px 0 rgba(232, 234, 238, 0.10)"38 backdrop: "radial-gradient(at 18% 22%, rgba(60, 66, 76, 0.55) 0%, transparent 55%), radial-gradient(at 82% 78%, rgba(36, 40, 48, 0.65) 0%, transparent 50%), radial-gradient(at 50% 50%, rgba(48, 52, 60, 0.35) 0%, transparent 65%), #0E1115"39buttons:40 primary:41 background: linear-gradient(180deg, rgba(232, 234, 238, 0.22) 0%, rgba(180, 188, 200, 0.10) 100%)42 color: #F4F6FA43 border: 1px solid rgba(232, 234, 238, 0.32)44 shape: pill45 padding: 12px 24px46 font: 600 / 0.9375rem / -0.01em47 shadow: inset 0 1px 0 rgba(255, 255, 255, 0.20)48 backdrop_blur: 40px49 backdrop_saturate: 130%50 secondary:51 background: rgba(40, 46, 54, 0.28)52 color: #E8EAEE53 border: 1px solid rgba(220, 225, 235, 0.14)54 shape: pill55 padding: 12px 24px56 font: 500 / 0.9375rem / -0.01em57 shadow: inset 0 1px 0 rgba(232, 234, 238, 0.08)58 backdrop_blur: 40px59 backdrop_saturate: 120%60 outline:61 background: rgba(20, 23, 28, 0.40)62 color: #E8EAEE63 border: 1px solid rgba(220, 225, 235, 0.14)64 shape: pill65 padding: 11px 22px66 font: 500 / 0.9375rem / -0.01em67 backdrop_blur: 24px68 backdrop_saturate: 110%69 ghost:70 background: transparent71 color: rgba(232, 234, 238, 0.70)72 border: none73 shape: pill74 padding: 11px 16px75 font: 500 / 0.9375rem76charts:77 variant: line78 stroke_width: 1.7579 gridlines: false80 highlight: last81 dot_marker: true82 axis_color: "#5A6070"83 palette: ["#C8CDD6", "#8C92A0", "#5A6070"]84fonts_url: "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap"85dependencies: ["lucide-react"]86---87 88# Liquid Metal89 90## AI Build Instructions91 92> **Read this section before writing any code.** The rules below93> are non-negotiable. Every value used in the UI must come from this94> file's frontmatter — never substitute, approximate, or invent new95> colors, fonts, radii, or shadows. If a value is missing, ask the96> user before adding one.97 98### 1 · Your role99 100You are building UI for a project that has adopted **Liquid Metal** as its101design system. Treat `DESIGN.md` as the single source of truth.102Your job is to translate the user's product requirements into103components and pages that look like they were designed by the same104person who authored this file.105 106### 2 · Token compliance107 108- Pull every color, font family, radius, shadow, and spacing value109 from the frontmatter at the top of this file.110- Use semantic roles (e.g. `primary`, `accent`, `muted`) — never111 hard-code hex values that bypass the system.112- When a token can be expressed as a CSS variable, declare it once113 in your global stylesheet and reference it everywhere downstream.114- The Google Fonts `<link>` is provided in the Typography section.115 Add it to `<head>` before any component renders.116 117### 3 · Component recipes118 119Use these recipes verbatim when building the corresponding component.120 121#### Buttons122 123Four variants are defined. Pick one — never blend variants or invent a fifth.124 125- **Primary** — pill shape, bg `linear-gradient(180deg, rgba(232, 234, 238, 0.22) 0%, rgba(180, 188, 200, 0.10) 100%)`, text `#F4F6FA`, border `1px solid rgba(232, 234, 238, 0.32)`, padding `12px 24px`, weight `600`, shadow `inset 0 1px 0 rgba(255, 255, 255, 0.20)`.126- **Secondary** — pill shape, bg `rgba(40, 46, 54, 0.28)`, text `#E8EAEE`, border `1px solid rgba(220, 225, 235, 0.14)`, padding `12px 24px`, weight `500`, shadow `inset 0 1px 0 rgba(232, 234, 238, 0.08)`.127- **Outline** — pill shape, bg `rgba(20, 23, 28, 0.40)`, text `#E8EAEE`, border `1px solid rgba(220, 225, 235, 0.14)`, padding `11px 22px`, weight `500`.128- **Ghost** — pill shape, text `rgba(232, 234, 238, 0.70)`, padding `11px 16px`, weight `500`.129 130Reach for **primary** as the single dominant CTA per screen.131**Secondary** for the supporting action. **Outline** for tertiary132actions in toolbars. **Ghost** for inline links and table actions.133 134#### Cards135 136- Background: `#15181D`137- Border: `1px solid rgba(220, 225, 235, 0.08)`138- Shadow: `0 1px 0 rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(232, 234, 238, 0.10)`139- Radius: `radius.lg` (`20px`)140- Internal padding: `20px` for compact cards, `24–28px` for content cards.141 142> This system ships a **glass treatment** — see the Glass token table.143> Apply `backdrop-filter: blur(64px)` to translucent panes.144> The page must have a backdrop (gradient mesh / blurred orbs) for glass to refract.145 146#### Charts147 148- Bar/line variant: `line`149- No gridlines — let the bars/lines carry the data.150- Highlight strategy: `last` — emphasize a single bar/point per chart.151- Use the declared palette in order: `#C8CDD6`, `#8C92A0`, `#5A6070`.152 153#### Typography pairings154 155- **Display (`Inter`)** — h1, h2, hero headlines, brand wordmarks.156- **Body (`Inter`)** — paragraphs, labels, button text, form inputs.157- **Mono (`JetBrains Mono`)** — code, eyebrows, metadata, numerals in tables.158 159### 4 · Hard constraints160 161Never do any of the following without explicit instruction from the user:162 163- Introduce a new color, font, radius, or shadow that isn't declared above.164- Mix this system with another (e.g. don't paste in Material or Bootstrap defaults).165- Use generic gradient defaults (purple→blue, peach→pink) — they break the system's voice.166- Reach for emoji icons. Use a consistent icon library and size icons in line with body type.167- Add motion that exceeds the system's restraint — keep transitions short (≤200ms) and subtle.168 169### 5 · Before you finish — verify170 171Run through this checklist for every screen you produce:172 173- [ ] Every color used appears in the Colors table above.174- [ ] Headlines use the display font; body copy uses the body font.175- [ ] Buttons match one of the declared variants exactly (shape, padding, weight).176- [ ] Border-radius values come from `radius.sm` / `radius.md` / `radius.lg` / `radius.pill`.177- [ ] Cards and dividers use the declared border + shadow tokens.178- [ ] No values were invented; if you needed something missing, you stopped and asked.179 180---181 182## Overview183Liquid Metal is dark glassmorphism stripped of every color cue. Where Aurora Glass detonates a vivid mesh behind translucent panes, Liquid Metal sits on a **flat charcoal canvas** — two neutral stops, no orbs, no glow. The glass itself does the talking: 48px backdrop blur, graphite tint at 55% opacity, cool pewter hairlines, and a metallic top-edge gloss that reads as machined aluminum under frost.184 185This is the industrial machined-metal language: industrial, cool, premium. Every surface feels milled.186 187## Atmosphere188- The page background is a **flat vertical graphite gradient** — `#14171C` to `#0B0D11`. No mesh, no aurora, no color. The neutrality is deliberate: it makes the glass read as glass, not as a tinted overlay.189- Cards are **graphite panes** at 55% opacity with a heavy 48px blur. They have weight — closer to brushed steel under glass than to floating bubbles.190- Buttons are **frosted pills**. The primary uses a vertical silver gradient (18% → 10%) to suggest a brushed metal cap with a cool hairline rim. No color, no glow shadow.191- Borders are **cool pewter hairlines** at 10–14% — they catch light without ever introducing hue.192- Shadows are **deep and heavy** (80px blur, -24px y, 75% opacity) paired with a 1px cool top highlight and a 1px dark bottom relief. That double-stroke is the metallic edge.193 194## Liquid Metal Text Accents195Display type uses **brushed silver** as the accent stop — `#C8CDD6` paired with the primary ivory `#E8EAEE` to create a subtle metallic gradient on hero titles, callout numerals, and accent words. Apply it with `background-clip: text` and a 180° linear gradient (silver top, ivory bottom) so the text reads like polished steel under cool light.196 197```css198.metal-text {199 background: linear-gradient(180deg, #E8EAEE 0%, #C8CDD6 60%, #8C92A0 100%);200 -webkit-background-clip: text;201 background-clip: text;202 color: transparent;203}204```205 206Use this on hero words, large numerals, and section accents only — never on body text.207 208## Typography209**Inter** at every level. Hero compresses to -3.5% tracking; body breathes at -0.5%. Display weight is **600**, never 700 — heavy weights look plastic on glass.210 211| Role | Size | Weight | Tracking |212|------|-----------|--------|-----------|213| Hero | 4.25rem | 600 | -0.035em |214| H1 | 2.75rem | 600 | -0.03em |215| H2 | 1.625rem | 500 | -0.02em |216| Body | 1rem | 400 | -0.005em |217 218## Color219- **Ivory #E8EAEE** — primary text on graphite glass. Cool, slightly cyan-leaning.220- **Brushed Silver #C8CDD6** — the metallic accent stop. Used in display gradients only, never as a solid fill.221- **Pewter #8C92A0** — captions, axis labels, secondary chrome.222- **Graphite #15181D** — opaque surface fallback when glass is not available.223- **Charcoal #0E1013** — the page canvas.224 225**No saturated colors exist in this system.** No mint, no violet, no rose. The accent is brightness, not hue.226 227## Buttons228All four are frosted glass pills. **There are no solid buttons.**229 230- **Primary** — brushed silver glass with a vertical 18%→10% white gradient, cool hairline border at 28%, double-stroke shadow (cool top, dark bottom). Reads as a polished metal cap.231- **Secondary** — graphite pane at 55%, hairline pewter border, 32px backdrop blur.232- **Outline** — whisper-glass at 40% with a 14% hairline ring.233- **Ghost** — bare label, no surface.234 235All four are **pills** (9999px). Sharp corners only on hairlines.236 237## Charts & Data238A single 1.75px brushed-silver line over the flat graphite canvas. **No gridlines, no fills, no second color.** A small dot marks the latest value. Axis labels in pewter `#5A6070`. The chart should read like an oscilloscope sweep on a darkroom monitor.239 240## Do's and Don'ts241- ✅ Always render the flat graphite canvas. The neutrality is what makes the glass read as metal.242- ✅ Use `background-clip: text` with the silver gradient on hero accents.243- ✅ Pair every glass surface with a cool top highlight (1px white at 14–22%) AND a dark bottom relief (1px black at 40%). The double-stroke is the metallic edge.244- ✅ Keep cards at ~55% opacity with 48px blur — heavier than aurora, never bubble-light.245- ❌ No colored gradients anywhere. No mint, no blue, no violet. Brightness only.246- ❌ No glow shadows. Shadows are deep and dark, not luminous.247- ❌ No saturation boost on the backdrop — keep `saturate: 100%`. Color in the canvas would defeat the metallic read.248- ❌ No solid CTAs. Even the primary is frosted glass with a silver gradient.249 250---251 252## Tokens253 254> Generated from the same source the live preview renders from.255> Treat the values below as the contract — never substitute approximations.256 257### Colors258 259| Role | Value |260|-----------|-------|261| primary | `#E8EAEE` |262| secondary | `#8C92A0` |263| tertiary | `#C8CDD6` |264| neutral | `#0E1013` |265| surface | `#15181D` |266 267### Typography268 269- **Display:** Inter270- **Body:** Inter271- **Mono:** JetBrains Mono272 273| Role | size / leading / weight / tracking |274|------|------------------------------------|275| Hero | 4.25rem / 1.04 / 600 / -0.035em |276| H1 | 2.75rem / 1.08 / 600 / -0.03em |277| H2 | 1.625rem / 1.2 / 500 / -0.02em |278| Body | 1rem / 1.55 / 400 / -0.005em |279 280### Radius281 282- sm: `8px`283- md: `14px`284- lg: `20px`285- pill: `9999px`286 287### Shadows288 289- **card:** `0 1px 0 rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(232, 234, 238, 0.10)`290- **button:** `inset 0 1px 0 rgba(232, 234, 238, 0.14)`291 292### Borders293 294- **card:** `1px solid rgba(220, 225, 235, 0.08)`295- **divider:** `rgba(220, 225, 235, 0.06)`296 297### Glass298 299Translucent panes with backdrop-filter — the preview renders cards from these exact values.300 301| Property | Value |302|----------|-------|303| surface | `rgba(30, 34, 40, 0.28)` |304| blur | `64px` |305| saturate | `115%` |306| border | `1px solid rgba(220, 225, 235, 0.14)` |307| shadow | `0 1px 0 rgba(0, 0, 0, 0.25)` |308| innerHighlight | `inset 0 1px 0 rgba(232, 234, 238, 0.10)` |309| backdrop | `radial-gradient(at 18% 22%, rgba(60, 66, 76, 0.55) 0%, transparent 55%), radial-gradient(at 82% 78%, rgba(36, 40, 48, 0.65) 0%, transparent 50%), radial-gradient(at 50% 50%, rgba(48, 52, 60, 0.35) 0%, transparent 65%), #0E1115` |310 311### Buttons312 313Four variants, each fully tokenized. The preview renders from these exact values.314 315#### Primary316 317| Property | Value |318|----------|-------|319| shape | `pill` |320| background | `linear-gradient(180deg, rgba(232, 234, 238, 0.22) 0%, rgba(180, 188, 200, 0.10) 100%)` |321| color | `#F4F6FA` |322| border | `1px solid rgba(232, 234, 238, 0.32)` |323| padding | `12px 24px` |324| fontWeight | `600` |325| fontSize | `0.9375rem` |326| tracking | `-0.01em` |327| shadow | `inset 0 1px 0 rgba(255, 255, 255, 0.20)` |328| backdropBlur | `40px` |329| backdropSaturate | `130%` |330 331#### Secondary332 333| Property | Value |334|----------|-------|335| shape | `pill` |336| background | `rgba(40, 46, 54, 0.28)` |337| color | `#E8EAEE` |338| border | `1px solid rgba(220, 225, 235, 0.14)` |339| padding | `12px 24px` |340| fontWeight | `500` |341| fontSize | `0.9375rem` |342| tracking | `-0.01em` |343| shadow | `inset 0 1px 0 rgba(232, 234, 238, 0.08)` |344| backdropBlur | `40px` |345| backdropSaturate | `120%` |346 347#### Outline348 349| Property | Value |350|----------|-------|351| shape | `pill` |352| background | `rgba(20, 23, 28, 0.40)` |353| color | `#E8EAEE` |354| border | `1px solid rgba(220, 225, 235, 0.14)` |355| padding | `11px 22px` |356| fontWeight | `500` |357| fontSize | `0.9375rem` |358| tracking | `-0.01em` |359| backdropBlur | `24px` |360| backdropSaturate | `110%` |361 362#### Ghost363 364| Property | Value |365|----------|-------|366| shape | `pill` |367| background | `transparent` |368| color | `rgba(232, 234, 238, 0.70)` |369| border | `none` |370| padding | `11px 16px` |371| fontWeight | `500` |372| fontSize | `0.9375rem` |373 374### Charts375 376| Property | Value |377|----------|-------|378| variant | `line` |379| strokeWidth | `1.75` |380| gridlines | `false` |381| highlight | `last` |382| dotMarker | `true` |383| axisColor | `#5A6070` |384| palette | `#C8CDD6`, `#8C92A0`, `#5A6070` |385 # CLAUDE.md Reference @DESIGN.md for all styling decisions. Apply tokens strictly — do not introduce colors, fonts, or radii outside the system. When in doubt, prefer the values declared in DESIGN.md frontmatter.<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" />npm install lucide-react// tailwind.config.jsexport default { theme: { extend: { fontFamily: { display: ['"Inter"', 'serif'], sans: ['"Inter"', 'sans-serif'], mono: ['"JetBrains Mono"', 'monospace'], }, colors: { primary: '#E8EAEE', secondary: '#8C92A0', accent: '#C8CDD6', neutral: '#0E1013', surface: '#15181D', }, borderRadius: { sm: '8px', md: '14px', lg: '20px', }, }, },};Esports broadcast in dark mode. Near-black surfaces, sharp display serif paired with a square mono, knife-edge corners, a single high-voltage lime accent. Built for tournaments and launch events.
A complete design system, ready for your AI coding agent. Every primitive, token, and pattern below is generated straight from DESIGN.md — drop the file in your project and ship matching UI in minutes.
Real glassmorphism without the cliché. A soft tonal backdrop in cool lavender, surfaces that actually blur the layers behind them, hairline edges in 8% ink, and a single periwinkle accent. The depth is restraint, not decoration.
A complete design system, ready for your AI coding agent. Every primitive, token, and pattern below is generated straight from DESIGN.md — drop the file in your project and ship matching UI in minutes.