---
name: kurly-design-reference
provider: DesignSkill (https://designskill.dev)
reference: kurly.com
source_url: https://www.kurly.com/main
tool: designskill-extract/3.2.0
extracted_at: 2026-07-27T07:31:00.429Z
mode: full-render
classification: reference_only
---

# Kurly — Design Reference (measured)

Measured design tokens extracted from `https://www.kurly.com/main` 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), 619 observation records.
- Primary action color observed as `#5f0080` (basis: cross-validated, confidence 0.96).
- Dominant font family: **Pretendard** (×3338; secondary monospace ×1).
- Type scale observed at 8 sizes from 10px to 32px.
- Corner radius values in use: 4px, 6px, 10px, 3px….
- Not observed in this extraction: nav, cards, badges.

## 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}` | `#5f0080` | cross-validated | 0.96 | ×49 |
| `{color.background}` | `#ffffff` | declared | 0.92 | ×862 — --swal2-background |
| `{color.ink}` | `#222222` | cross-validated | 0.95 | ×1528 |
| `{color.muted}` | `#999999` | inferred | 0.7 | ×74 |
| `{color.surface}` | `#dddddd` | inferred | 0.7 | ×404 |
| `{color.accent}` | `#fa622f` | inferred | 0.65 | ×416 |

### Observed Palette

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

| Hex | Share | Used in | Observed |
|---|---|---|---|
| `#222222` | 31.2% | background-color, color, border-color, b | ×1528 (cross-validated, 0.95) |
| `#ffffff` | 17.6% | color, background-color, border-color, a, custom-property | ×862 (cross-validated, 0.95) |
| `#fa622f` | 8.5% | z, color | ×416 (cross-validated, 0.94) |
| `#dddddd` | 8.3% | border-color, background-color | ×404 (observed, 0.79) |
| `#b5b5b5` | 7.5% | color, border-color | ×370 (cross-validated, 0.94) |
| `#bd76ff` | 6.5% | background-color, color, b | ×318 (cross-validated, 0.93) |
| `#a7b2bc` | 5.8% | g, color | ×283 (cross-validated, 0.93) |
| `#333333` | 4.4% | color, border-color, k, j | ×215 (cross-validated, 0.93) |
| `#dfe4eb` | 2.5% | border-color, j | ×122 (cross-validated, 0.92) |
| `#999999` | 1.5% | color | ×74 (cross-validated, 0.91) |
| `#000000` | 1.3% | background-color, color, border-color, y | ×61 (cross-validated, 0.91) |
| `#5f0080` | 1.0% | background-color, color, border-color, n | ×49 (cross-validated, 0.91) |
| `#464c52` | 0.8% | color, h, e, i | ×39 (cross-validated, 0.9) |
| `#4dbed7` | 0.7% | background-color | ×36 (observed, 0.75) |
| `#f4f4f4` | 0.8% | background-color, border-color, l, k, custom-property | ×41 (cross-validated, 0.9) |
| `#000000` | 0.2% | background-color | ×12 (observed, 0.74) |

## Typography

### Font Families

| Family | Observed |
|---|---|
| `Pretendard` | ×3338 |
| `monospace` | ×1 |
| `swiper-icons` | ×1 |

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

### Type Scale

| Token | Size | Observed |
|---|---|---|
| `{type.display}` | 32px | ×84 |
| `{type.h1}` | 28px | ×36 |
| `{type.h2}` | 20px | ×21 |
| `{type.h3}` | 16px | ×1519 |
| `{type.body-lg}` | 14px | ×1170 |
| `{type.body}` | 13px | ×408 |
| `{type.body-sm}` | 12px | ×56 |
| `{type.caption}` | 10px | ×24 |

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

## Spacing

| Value | Observed |
|---|---|
| `8px` | ×1209 |
| `6px` | ×1111 |
| `2px` | ×707 |
| `12px` | ×381 |
| `40px` | ×68 |
| `16px` | ×47 |
| `4px` | ×45 |
| `18px` | ×30 |
| `10px` | ×29 |
| `20px` | ×18 |
| `27px` | ×18 |
| `17px` | ×18 |

## Shape (Border Radius)

| Value | Observed |
|---|---|
| `4px` | ×852 |
| `6px` | ×356 |
| `10px` | ×128 |
| `3px` | ×24 |
| `18px` | ×6 |
| `20px` | ×6 |
| `32px` | ×6 |
| `5px` | ×5 |

## Elevation

| Shadow | Observed |
|---|---|
| `rgb(247, 247, 247) 0px 0px 0px 1px inset` | ×6 |
| `rgba(0, 0, 0, 0.07) 0px 3px 4px 0px` | ×6 |
| `rgba(0, 0, 0, 0.2) 0px 1px 8px 0px` | ×6 |
| `0 4px 8px #0000000d` | ×1 |

## Motion

| Duration | Observed |
|---|---|
| `0.5s` | ×30 |
| `0.4s` | ×6 |
| `.25s` | ×4 |
| `.1s` | ×3 |
| `.12s` | ×2 |

## Components

Measured computed styles of representative components (desktop viewport).

| Component | Measured spec | Samples |
|---|---|---|
| button.primary | bg `#ffffff` · text `#222222` · radius `4px` · padding `0px` · font `13px/400` | ×11 |
| button.outline | text `#222222` · border `1px solid rgb(221, 221, 221)` · radius `4px` · padding `0px 0px 1px` · font `16px` | ×41 |
| form.input | bg `#ffffff` · text `#333333` · border `0px solid rgb(51, 51, 51)` · radius `0px` · padding `0px` · height `19` | ×1 |

### Interaction States (observed)

| State | Property | From | To |
|---|---|---|---|
| hover | outline-width | `3px` | `0px` |
| focus | outline-width | `3px` | `0px` |
| focus | outline-color | `rgb(51, 51, 51)` | `rgb(0, 95, 204)` |
| focus | outline-width | `3px` | `1px` |

## Accessibility (WCAG Contrast)

| FG | BG | Ratio | AA | Source |
|---|---|---|---|---|
| `#222222` | `#ffffff` | 15.91 | pass | observed ×609 |
| `#b5b5b5` | `#ffffff` | 2.05 | fail | observed ×180 |
| `#fa622f` | `#ffffff` | 3.06 | pass | observed ×162 |
| `#ffffff` | `#bd76ff` | 2.92 | fail | observed ×153 |
| `#222222` | `#f7f7f7` | 14.85 | pass | observed ×153 |
| `#a7b2bc` | `#ffffff` | 2.16 | fail | observed ×141 |
| `#333333` | `#ffffff` | 12.63 | pass | observed ×102 |
| `#fa622f` | `#f7f7f7` | 2.86 | fail | observed ×45 |
| `#999999` | `#ffffff` | 2.85 | fail | observed ×30 |
| `#464c52` | `#ffffff` | 8.69 | pass | observed ×18 |
| `#ffffff` | `#4dbed7` | 2.17 | fail | observed ×18 |
| `#5f0080` | `#ffffff` | 11.68 | pass | observed ×15 |
| `#222222` | `#ffffff` | 15.91 | pass | ink_on_background |
| `#ffffff` | `#5f0080` | 11.68 | pass | white_on_primary |
| `#999999` | `#ffffff` | 2.85 | fail | muted_on_background |

7 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}` (`#5f0080`) for primary actions only — that is where it was observed.
- Default text pairing: `{color.ink}` (`#222222`) on `{color.background}` (`#ffffff`).
- Set all text in `Pretendard` (fallbacks only for glyph coverage).
- Pick corner radii from the measured set (4px, 6px, 10px, 3px) — 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 assume the missing blocks (nav, cards, badges) don't exist on the site — they were simply not captured in this run.
- Don't copy brand assets (logo, wordmark, imagery, copy) — `reference_only` covers measured style values, not brand identity.

## Provenance

- Source: https://www.kurly.com/main (1 page(s))
- Tool: designskill-extract/3.2.0 · extracted 2026-07-27T07:31:00.429Z
- Mode: full-render — 풀렌더 모드 — 3뷰포트 × 라이트/다크 computed style + 상태 관측.
- Blocks observed: 01, 02, 03, 04, 05, 06, 09, 10, 11, 12 · missing: nav, cards, badges
- Warning: primary 불일치: static=#bd76ff vs render=#5f0080 — render 채택

---

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