---
name: elevenlabs-design-reference
provider: DesignSkill (https://designskill.dev)
reference: elevenlabs.io
source_url: https://elevenlabs.io/
tool: designskill-extract/3.2.0
extracted_at: 2026-07-27T08:21:21.947Z
mode: full-render
classification: reference_only
---

# ElevenLabs — Design Reference (measured)

Measured design tokens extracted from `https://elevenlabs.io/` by designskill-extract/3.2.0.
Every value below was observed in the live page (×N = observation count). Values not listed were **not observed** — do not invent them.
This document is `reference_only`: an analysis of a third-party site, not a license to its brand assets.

## Overview

- Extraction mode: **full-render** (viewports 390/768/1440px × light/dark), 1 page(s), 769 observation records.
- Primary action color observed as `#0a59d2` (basis: cross-validated, confidence 0.61).
- Dominant font family: **Inter** (×1535; secondary Geist Mono ×174).
- Type scale observed at 8 sizes from 12px to 20px.
- Corner radius values in use: 4px, 20px, 16px, 2px….

## Colors

### Role Tokens

Semantic roles inferred from observed usage. `basis` tells how the role was established (declared CSS var > cross-validated > inferred).

| Token | Value | Basis | Confidence | Observed |
|---|---|---|---|---|
| `{color.primary}` | `#0a59d2` | cross-validated | 0.61 | ×63 |
| `{color.background}` | `#7fffff` | declared | 0.92 | ×0 — --grid-column-bg |
| `{color.ink}` | `#000000` | cross-validated | 0.95 | ×2018 |
| `{color.muted}` | `#777169` | inferred | 0.7 | ×328 |
| `{color.surface}` | `#ffffff` | inferred | 0.7 | ×1027 |
| `{color.accent}` | `#f41a2f` | inferred | 0.65 | ×63 |

### Observed Palette

Full measured palette ordered by usage share. `Used in` lists the CSS properties the color appeared on.

| Hex | Share | Used in | Observed |
|---|---|---|---|
| `#000000` | 43.0% | background-color, border-color, color, box-shadow, --tw-gradient-to | ×2018 (cross-validated, 0.95) |
| `#ffffff` | 21.9% | background-color, border-color, color, --tw-ring-color, right | ×1027 (cross-validated, 0.95) |
| `#000000` | 7.7% | background-color, border-color | ×360 (observed, 0.79) |
| `#777169` | 7.0% | color, border-color | ×328 (cross-validated, 0.93) |
| `#f5f3f1` | 5.9% | background-color, border-color, --tw-gradient-to | ×275 (cross-validated, 0.93) |
| `#2b7fff` | 1.8% | border-color, background-color, color, --tw-ring-color | ×86 (inferred, 0.61) |
| `#44403b` | 1.4% | background-color, color, border-color, box-shadow | ×64 (cross-validated, 0.91) |
| `#a59f97` | 1.3% | color, border-color, background-color, text-decoration-color | ×63 (cross-validated, 0.91) |
| `#f41a2f` | 1.3% | border-color, color | ×63 (cross-validated, 0.91) |
| `#0a59d2` | 1.3% | border-color, color | ×63 (cross-validated, 0.91) |
| `#052f70` | 1.2% | border-color, color | ×56 (cross-validated, 0.91) |
| `#ebe8e4` | 1.2% | background-color, border-color, --tw-ring-color, --scrollbar-border | ×58 (cross-validated, 0.91) |
| `#292524` | 1.0% | background-color, border-color, color, --tw-gradient-from, --tw-gradient-to | ×46 (cross-validated, 0.91) |
| `#d7d2cc` | 0.5% | border-color, background-color, color, --tw-ring-color | ×25 (inferred, 0.6) |
| `#e8dcc8` | 0.4% | color, background-color | ×18 (inferred, 0.59) |
| `#59544f` | 0.3% | color, background-color | ×16 (cross-validated, 0.89) |

## Typography

### Font Families

| Family | Observed |
|---|---|
| `Inter` | ×1535 |
| `Geist Mono` | ×174 |
| `Waldenburg` | ×75 |
| `Waldenburg-ML` | ×6 |
| `Waldenburg Fallback` | ×3 |
| `WaldenburgFH Fallback` | ×3 |

Use **Inter** as the default family — it accounts for the overwhelming majority of observed text nodes.

### Type Scale

| Token | Size | Observed |
|---|---|---|
| `{type.display}` | 20px | ×39 |
| `{type.h1}` | 18px | ×100 |
| `{type.h2}` | 17px | ×107 |
| `{type.h3}` | 16px | ×334 |
| `{type.body-lg}` | 15px | ×390 |
| `{type.body}` | 14px | ×590 |
| `{type.body-sm}` | 13px | ×218 |
| `{type.caption}` | 12px | ×74 |

The most frequently observed size is **14px** (×590) — treat it as the default body size.

## Spacing

| Value | Observed |
|---|---|
| `9px` | ×1092 |
| `16px` | ×407 |
| `8px` | ×378 |
| `24px` | ×356 |
| `32px` | ×333 |
| `12px` | ×296 |
| `4px` | ×247 |
| `48px` | ×237 |
| `40px` | ×224 |
| `20px` | ×166 |
| `6px` | ×130 |
| `18px` | ×108 |

## Shape (Border Radius)

| Value | Observed |
|---|---|
| `4px` | ×749 |
| `20px` | ×405 |
| `16px` | ×77 |
| `2px` | ×56 |
| `24px` | ×51 |
| `8px` | ×47 |
| `14px` | ×42 |
| `10px` | ×42 |

## Elevation

| Shadow | Observed |
|---|---|
| `#000000` | ×285 |
| `rgb(255, 255, 255) 0px 0px 0px 0px inset, rgba(0, 0, 0, 0.075) 0px 0px 0px 0.5px inset, rgba(0, 0, 0, 0) 0px 0px 0px 0px` | ×128 |
| `var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)` | ×97 |
| `rgb(255, 255, 255) 0px 0px 0px 0px inset, rgba(0, 0, 0, 0.1) 0px 0px 0px 0.5px inset, rgba(0, 0, 0, 0) 0px 0px 0px 0px` | ×76 |
| `rgba(0, 0, 0, 0.4) 0px 0px 1px 0px, rgba(0, 0, 0, 0.04) 0px 1px 1px 0px, rgba(0, 0, 0, 0.04) 0px 2px 4px 0px` | ×36 |
| `var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)` | ×34 |

## Motion

| Duration | Observed |
|---|---|
| `0.15s` | ×184 |
| `.15s` | ×91 |
| `0.36s` | ×28 |
| `.3s` | ×21 |
| `0.2s` | ×14 |

## Components

Measured computed styles of representative components (desktop viewport).

| Component | Measured spec | Samples |
|---|---|---|
| button.primary | bg `#ffffff` · text `#000000` · radius `999px` · padding `0px 14px` · font `14px/400` · shadow `rgba(0, 0, 0, 0.4) 0px 0px 1px 0px, rgba(0, 0, 0, 0.04) 0px 1px 1px 0px` | ×10 |
| form.input | bg `#000000` · text `#000000` · border `0px solid rgb(229, 229, 229)` · radius `0px` · padding `16px 20px 0px` · height `136` | ×4 |
| card | bg `#ffffff` · radius `20px` · shadow `rgba(0, 0, 0, 0.4) 0px 0px 1px 0px, rgba(0, 0, 0, 0.04) 0px 1px 1px 0px, rgba(0, 0, 0, 0.04) 0px 2px 4px 0px` · padding `16px` | ×1 |
| badge | bg `#ffffff` · text `#000000` · radius `999px` · font `12px/500` · padding `8px 10px` | ×2 |
| nav | height `36px` · position `static` · link `#000000` | — |

### Hero Gradient (observed)

```css
background-image: linear-gradient(to top, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.345) 8.07%, rgba(0, 0, 0, 0.333) 15.54%, rgba(0, 0, 0, 0.314) 22.5%, rgba(0, 0, 0, 0.29) 29.04%, rgba(0, 0, 0, 0.26) 35.26%, rgba(0, 0, 0, 0.227) 41.25%, rgba(0, 0, 0, 0.192) 4;
```

### Interaction States (observed)

| State | Property | From | To |
|---|---|---|---|
| hover | background-color | `rgba(0, 0, 0, 0)` | `rgba(41, 37, 36, 0.035)` |
| hover | background-color | `rgba(0, 0, 0, 0)` | `rgba(41, 37, 36, 0.05)` |
| focus | background-color | `rgba(0, 0, 0, 0)` | `rgba(41, 37, 36, 0.05)` |
| focus | outline-color | `rgba(0, 0, 0, 0)` | `rgb(43, 127, 255)` |
| focus | outline-width | `2px` | `1px` |

## Accessibility (WCAG Contrast)

| FG | BG | Ratio | AA | Source |
|---|---|---|---|---|
| `#000000` | `#fdfcfc` | 20.51 | pass | observed ×414 |
| `#777169` | `#fdfcfc` | 4.71 | pass | observed ×87 |
| `#000000` | `#ffffff` | 21 | pass | observed ×81 |
| `#000000` | `#f5f3f1` | 18.97 | pass | observed ×51 |
| `#777169` | `#f5f3f1` | 4.36 | fail | observed ×46 |
| `#f41a2f` | `#ffffff` | 4.17 | fail | observed ×27 |
| `#0a59d2` | `#ffffff` | 6.23 | pass | observed ×27 |
| `#ffffff` | `#000000` | 21 | pass | observed ×24 |
| `#44403b` | `#f5f3f1` | 9.29 | pass | observed ×24 |
| `#052f70` | `#ffffff` | 12.75 | pass | observed ×24 |
| `#ffffff` | `#f5f3f1` | 1.11 | fail | observed ×18 |
| `#777169` | `#ffffff` | 4.83 | pass | observed ×18 |
| `#000000` | `#7fffff` | 17.65 | pass | ink_on_background |
| `#ffffff` | `#0a59d2` | 6.23 | pass | white_on_primary |
| `#777169` | `#7fffff` | 4.06 | fail | muted_on_background |

4 measured pair(s) fail AA — if you reuse those pairs, adjust lightness until the ratio reaches 4.5:1.

## Usage Rules

### Do
- Use `{color.primary}` (`#0a59d2`) for primary actions only — that is where it was observed.
- Default text pairing: `{color.ink}` (`#000000`) on `{color.background}` (`#7fffff`).
- Set all text in `Inter` (fallbacks only for glyph coverage).
- Pick corner radii from the measured set (4px, 20px, 16px, 2px) — no intermediate values were observed.
- Cite this file's token names (`{color.*}`, `{type.*}`) when generating UI so output stays traceable to observations.

### Don't
- Don't invent colors, sizes, shadows, or spacing not listed above — absence means *not observed*, and this document records observations only.
- Don't copy brand assets (logo, wordmark, imagery, copy) — `reference_only` covers measured style values, not brand identity.

## Provenance

- Source: https://elevenlabs.io/ (1 page(s))
- Tool: designskill-extract/3.2.0 · extracted 2026-07-27T08:21:21.947Z
- Mode: full-render — 풀렌더 모드 — 3뷰포트 × 라이트/다크 computed style + 상태 관측.
- Blocks observed: 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12 · missing: none
- Degraded stages (extraction failure ≠ design change — exclude from diffs): state-observation
- Warning: primary 불일치: static=#2b7fff vs render=#0a59d2 — render 채택

---

<sub>Generated & served by [DesignSkill](https://designskill.dev)</sub>
