---
name: socar-design-reference
provider: DesignSkill (https://designskill.dev)
reference: socar.kr
source_url: https://www.socar.kr/
tool: designskill-extract/3.2.0
extracted_at: 2026-07-27T08:09:11.439Z
mode: full-render
classification: reference_only
---

# Socar — Design Reference (measured)

Measured design tokens extracted from `https://www.socar.kr/` 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), 445 observation records.
- Primary action color observed as `#354153` (basis: cross-validated, confidence 0.97).
- Dominant font family: **Pretendard** (×1682; secondary ui-sans-serif ×1).
- Type scale observed at 8 sizes from 10px to 22px.
- Corner radius values in use: 14px, 16px, 6px, 12px….
- Not observed in this extraction: 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}` | `#354153` | cross-validated | 0.97 | ×468 |
| `{color.background}` | `#ffffff` | cross-validated | 0.94 | ×504 |
| `{color.ink}` | `#697383` | cross-validated | 0.94 | ×375 |
| `{color.muted}` | `#99a1b1` | inferred | 0.7 | ×26 |
| `{color.surface}` | `#e5e8ef` | inferred | 0.7 | ×280 |
| `{color.accent}` | `#04ca81` | inferred | 0.58 | ×9 |

### Observed Palette

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

| Hex | Share | Used in | Observed |
|---|---|---|---|
| `#354153` | 21.6% | color, border-color, background-color, fill, --tw-shadow | ×468 (cross-validated, 0.94) |
| `#ffffff` | 23.2% | background-color, color, border-color, fill | ×504 (cross-validated, 0.94) |
| `#697383` | 17.3% | color, background-color, border-color, fill | ×375 (cross-validated, 0.94) |
| `#e5e8ef` | 12.9% | border-color, background-color, --tw-ring-color, custom-property, --tw-prose-hr | ×280 (cross-validated, 0.93) |
| `#f2f3f8` | 7.8% | background-color, border-color, color, --skeleton-base, custom-property | ×170 (cross-validated, 0.92) |
| `#000000` | 2.3% | background-color, border-color, color, box-shadow | ×50 (inferred, 0.61) |
| `#4b68ff` | 2.8% | color, background-color, border-color, fill | ×60 (cross-validated, 0.91) |
| `#0078ff` | 1.9% | color, border-color, background-color, fill | ×41 (cross-validated, 0.9) |
| `#b4bbcb` | 1.2% | color, border-color, background-color, fill, custom-property | ×26 (cross-validated, 0.9) |
| `#99a1b1` | 1.2% | color, background-color, border-color, fill, custom-property | ×26 (cross-validated, 0.9) |
| `#141a24` | 1.1% | background-color, color, --tw-prose-headings | ×23 (cross-validated, 0.9) |
| `#262f3c` | 0.7% | background-color, border-color, color, row-gap | ×15 (inferred, 0.59) |
| `#cbd1dc` | 0.7% | background-color, border-color, color, --skeleton-base, custom-property | ×15 (inferred, 0.59) |
| `#ff3a5b` | 0.5% | color, background-color, fill | ×11 (inferred, 0.59) |
| `#6bb5ff` | 0.4% | background-color, color, border-color, fill | ×9 (inferred, 0.58) |
| `#04ca81` | 0.4% | background-color, color, fill | ×9 (inferred, 0.58) |

## Typography

### Font Families

| Family | Observed |
|---|---|
| `Pretendard` | ×1682 |
| `ui-sans-serif` | ×1 |
| `ui-monospace` | ×1 |

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

### Type Scale

| Token | Size | Observed |
|---|---|---|
| `{type.display}` | 22px | ×42 |
| `{type.h1}` | 20px | ×6 |
| `{type.h2}` | 18px | ×85 |
| `{type.h3}` | 16px | ×363 |
| `{type.body-lg}` | 14px | ×184 |
| `{type.body}` | 13px | ×192 |
| `{type.body-sm}` | 12px | ×10 |
| `{type.caption}` | 10px | ×47 |

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

## Spacing

| Value | Observed |
|---|---|
| `20px` | ×489 |
| `8px` | ×342 |
| `4px` | ×316 |
| `24px` | ×193 |
| `14px` | ×193 |
| `16px` | ×176 |
| `6px` | ×81 |
| `12px` | ×78 |
| `2px` | ×59 |
| `32px` | ×54 |
| `40px` | ×30 |
| `10px` | ×12 |

## Shape (Border Radius)

| Value | Observed |
|---|---|
| `14px` | ×285 |
| `16px` | ×54 |
| `6px` | ×48 |
| `12px` | ×36 |
| `8px` | ×8 |
| `10px` | ×8 |
| `4px` | ×8 |
| `50px` | ×6 |

## Elevation

| Shadow | Observed |
|---|---|
| `rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 8px 0px` | ×48 |
| `#000000` | ×40 |
| `var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)` | ×17 |
| `var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)` | ×6 |
| `rgba(38, 47, 60, 0.04) 0px 0px 6px 0px, rgba(38, 47, 60, 0.04) 0px 3px 2px 0px, rgba(38, 47, 60, 0.08) 0px 2px 8px 0px` | ×6 |
| `0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows)` | ×1 |

## Motion

| Duration | Observed |
|---|---|
| `0.2s` | ×222 |
| `.15s` | ×16 |
| `0.15s` | ×12 |
| `0.1s` | ×6 |
| `.1s` | ×3 |

## Components

Measured computed styles of representative components (desktop viewport).

| Component | Measured spec | Samples |
|---|---|---|
| button.primary | bg `#ffffff` · text `#354153` · radius `14px` · padding `0px 12px` · font `16px/400` | ×1 |
| form.input | bg `#000000` · text `#354153` · border `0px solid rgb(53, 65, 83)` · radius `0px` · padding `0px` · height `24` | ×1 |
| card | bg `#ffffff` · radius `14px` · border `1px solid rgb(229, 232, 239)` · padding `20px` | ×14 |
| nav | bg `#ffffff` · height `60px` · position `sticky` · link `#000000` | — |

### Interaction States (observed)

| State | Property | From | To |
|---|---|---|---|
| hover | color | `rgb(53, 65, 83)` | `rgb(0, 120, 255)` |
| hover | border-color | `rgb(53, 65, 83)` | `rgb(0, 120, 255)` |
| hover | outline-color | `rgb(53, 65, 83)` | `rgb(0, 120, 255)` |
| focus | color | `rgb(53, 65, 83)` | `rgb(0, 120, 255)` |
| focus | border-color | `rgb(53, 65, 83)` | `rgb(0, 120, 255)` |
| focus | outline-color | `rgb(53, 65, 83)` | `rgb(0, 95, 204)` |

## Accessibility (WCAG Contrast)

| FG | BG | Ratio | AA | Source |
|---|---|---|---|---|
| `#354153` | `#ffffff` | 10.33 | pass | observed ×208 |
| `#697383` | `#ffffff` | 4.79 | pass | observed ×147 |
| `#697383` | `#f9f9fb` | 4.56 | pass | observed ×33 |
| `#4b68ff` | `#f2f3f8` | 4.01 | fail | observed ×21 |
| `#354153` | `#f9f9fb` | 9.83 | pass | observed ×12 |
| `#141a24` | `#ffffff` | 17.46 | pass | observed ×3 |
| `#b4bbcb` | `#f2f3f8` | 1.74 | fail | observed ×1 |
| `#697383` | `#ffffff` | 4.79 | pass | ink_on_background |
| `#ffffff` | `#354153` | 10.33 | pass | white_on_primary |
| `#99a1b1` | `#ffffff` | 2.6 | fail | muted_on_background |

3 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}` (`#354153`) for primary actions only — that is where it was observed.
- Default text pairing: `{color.ink}` (`#697383`) on `{color.background}` (`#ffffff`).
- Set all text in `Pretendard` (fallbacks only for glyph coverage).
- Pick corner radii from the measured set (14px, 16px, 6px, 12px) — 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 (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.
- Treat `{color.accent}` with caution — confidence below 0.6.

## Provenance

- Source: https://www.socar.kr/ (1 page(s))
- Tool: designskill-extract/3.2.0 · extracted 2026-07-27T08:09:11.439Z
- Mode: full-render — 풀렌더 모드 — 3뷰포트 × 라이트/다크 computed style + 상태 관측.
- Blocks observed: 00, 01, 02, 03, 04, 05, 06, 07, 09, 10, 11, 12 · missing: badges
- Warning: primary 불일치: static=#0078ff vs render=#354153 — render 채택

---

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