Get StartedFoundationsComponentsPatternsRulesDevelopAI & ToolsUpdates

Color

색상 시스템은 접근성을 고려하며 제품의 계층, 상태, 브랜드를 표현할 수 있도록 도와요.

아이폰 15 미개봉예약중

성수동 · 3분 전

950,000원

관심채팅하기
결제가 완료됐어요.
배송지를 다시 확인해 주세요.
결제에 실패했어요.
새로운 기능이 추가됐어요.
stroke.neutral-muted 테두리

Overview

Clay의 색상 시스템은 역할 기반 색상과 팔레트 색상으로 구성돼 있으며, 모두를 위한 접근성 충족을 목표로 설계됐어요. 이를 통해 인터페이스 안에서 충분한 명도 대비를 보장하고, 명확성과 가시성을 확보할 수 있어요.

Role Based Color

역할 기반 색상 시스템은 디자이너와 개발자 모두를 위한 구조화된 색상 구현 방식을 제공해요. 색상 역할은 인터페이스의 시각적 요소와 기능 사이의 관계를 명확히 해서, 사용자에게 더 직관적이고 예측 가능한 UI를 제공해요. 임의의 색상값 대신 각 색상이 인터페이스 안에서 특정한 목적과 의미를 가져요.

  • 접근성 — 모든 역할 기반 색상은 의도된 전경/배경 조합에서 충분한 대비를 갖도록 설계돼요. 자세한 기준은 Inclusive Design 을 참고해요.
  • 빈틈없는 업데이트 — 색상을 바꿀 때 값이 아닌 의미를 기준으로 업데이트할 수 있어요. 같은 값을 가져도 의미가 다르면 따로 바꿀 수 있어요.
  • 테마 적응성 — 특정 색상 대신 역할을 정의하기 때문에, 라이트·다크 모드와 여러 브랜드에 자동으로 적응해요.

이름 체계

역할 기반 색상은 Property(속성) · Role(역할) · Variant(변형) · State(상태) 순서로 이름을 지어요.

구성예시설명
Propertyfg, bg, stroke전경(텍스트·아이콘), 배경, 경계선
Rolebrand, neutral, positive, warning, critical, informative색상의 기능적·의미적 역할
Variantsolid, weak, muted, subtle, contrast같은 역할 안에서의 강조 정도
Statepressed, selected상호작용에 따른 변화

예를 들어 $color.bg.positive-solid-pressed 는 배경 · 긍정 · 강한 강조 · 눌림 을 뜻해요.

Property

  • Background — 전체 화면 또는 UI의 배경에 사용하는 색상이에요.
  • Foreground — 텍스트, 아이콘 등 UI의 전경 요소에 사용하는 색상이에요.
  • Stroke — 경계를 구분하는 선 또는 UI 요소의 윤곽선에 사용하는 색상이에요.

Role

  • Brand — 브랜드와 관련된 요소가 즉각적으로 인식될 수 있도록 도와요. 화면에서 가장 중요한 액션을 강조하는 데 사용할 수 있어요.
  • Neutral — 일반적인 콘텐츠에 사용하는 기본 색상이에요. 주목도가 가장 높지는 않지만 여전히 가시성이 필요한 요소에 사용해요.
  • Positive — 성공적인 작업, 확인, 긍정적인 상태를 나타내요.
  • Warning — 사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달해요.
  • Critical — 오류나 중요한 문제를 나타내요. 부정적인 상태를 명확히 전달해 즉각적인 주의를 끌어요.
  • Informative — 유용한 정보를 제공하거나 상태를 설명할 때 사용해요.

Layer

레이어 색상은 인터페이스의 깊이와 계층 구조를 나타내요. layer-basement → layer-default → layer-floating 순서로 쌓이며, 다크 모드에서는 높이 올라갈수록 더 밝아져요. 자세한 내용은 Elevation 을 참고해요.

Variant

같은 역할이라도 의도에 따라 여러 변형이 필요해요. Positive 배경은 낮은 강조의 $color.bg.positive-weak 와 높은 강조의 $color.bg.positive-solid 를 가져요. solid 배경 위의 전경은 fg.on-*-solid 를, weak 배경 위의 전경은 fg.*-contrast 를 짝으로 사용해요.

State

UI 요소의 상태에 따라 색상이 바뀔 수 있어요. 버튼을 누르면 -pressed 토큰으로 배경이 바뀌어 상호작용이 일어났음을 표현해요.

Semantic Tokens

모든 값은 현재 브랜드 기준이에요. 이름이나 값을 누르면 복사돼요.

Foreground

토큰LightDark참조설명
Brand
light $color.palette.orange-600dark $color.palette.orange-700
브랜드와 관련된 요소들이 즉각적으로 인식될 수 있도록 돕습니다.
$color.palette.orange-700브랜드와 관련된 요소들이 즉각적으로 인식될 수 있도록 돕습니다. (contrast)
Neutral
$color.palette.gray-1000일반적인 콘텐츠에 사용되는 기본 색상입니다.
light $color.palette.gray-00dark $color.palette.gray-100
@deprecated `$color.fg.on-neutral-solid`을 사용하세요. 이 토큰은 @seed-design/css@4.0.0과 이에 대응하는 @seed-design/lynx-css 버전에서 제거될 예정입니다. 일반적인 콘텐츠에 사용되는 반전 전경색입니다.
$color.palette.gray-800일반적인 콘텐츠에 사용되는 기본 색상입니다. (muted)
$color.palette.gray-700일반적인 콘텐츠에 사용되는 기본 색상입니다. (subtle)
Positive
$color.palette.green-700성공적인 작업, 확인, 또는 긍정적인 상태를 나타내는 데 사용됩니다.
$color.palette.green-900성공적인 작업, 확인, 또는 긍정적인 상태를 나타내는 데 사용됩니다. (contrast)
Warning
$color.palette.yellow-700사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달하는 데 사용됩니다.
$color.palette.yellow-900사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달하는 데 사용됩니다. (contrast)
Critical
$color.palette.red-700오류, 경고 또는 중요한 문제를 나타내는 데 사용됩니다.
$color.palette.red-900오류, 경고 또는 중요한 문제를 나타내는 데 사용됩니다. (contrast)
Informative
$color.palette.blue-700사용자에게 유용한 정보를 제공하거나 상태를 설명할 때 사용됩니다.
$color.palette.blue-900사용자에게 유용한 정보를 제공하거나 상태를 설명할 때 사용됩니다. (contrast)
On (solid 배경 위 전경)
$color.palette.static-white브랜드 Solid 배경 위의 전경 요소에 사용됩니다.
$color.palette.static-whiteCritical Solid 배경 위의 전경 요소에 사용됩니다.
$color.palette.static-whiteInformative Solid 배경 위의 전경 요소에 사용됩니다.
light $color.palette.gray-00dark $color.palette.gray-100
Neutral Solid 배경 위의 전경 요소에 사용됩니다.
$color.palette.static-whitePositive Solid 배경 위의 전경 요소에 사용됩니다.
$color.palette.static-black-alpha-900Warning Solid 배경 위의 전경 요소에 사용됩니다.
기타
$color.palette.gray-500—
$color.palette.gray-600—

Background

토큰LightDark참조설명
Brand
light $color.palette.orange-600dark $color.palette.orange-700
브랜드와 관련된 요소들이 즉각적으로 인식될 수 있도록 돕습니다. 화면에서 가장 중요한 액션을 강조하는데 사용할 수 있습니다. (solid)
light $color.palette.orange-700dark $color.palette.orange-800
브랜드와 관련된 요소들이 즉각적으로 인식될 수 있도록 돕습니다. 화면에서 가장 중요한 액션을 강조하는데 사용할 수 있습니다. (solid-pressed)
$color.palette.orange-100브랜드와 관련된 요소들이 즉각적으로 인식될 수 있도록 돕습니다. 화면에서 가장 중요한 액션을 강조하는데 사용할 수 있습니다. (weak)
$color.palette.orange-200브랜드와 관련된 요소들이 즉각적으로 인식될 수 있도록 돕습니다. 화면에서 가장 중요한 액션을 강조하는데 사용할 수 있습니다. (weak-pressed)
Neutral
light $color.palette.gray-900dark $color.palette.gray-1000
@deprecated `$color.bg.neutral-solid`을 사용하세요. 이 토큰은 @seed-design/css@4.0.0과 이에 대응하는 @seed-design/lynx-css 버전에서 제거될 예정입니다. 일반적인 콘텐츠에 사용되는 반전 배경색입니다.
$color.palette.gray-800@deprecated `$color.bg.neutral-solid-pressed`을 사용하세요. 이 토큰은 @seed-design/css@4.0.0과 이에 대응하는 @seed-design/lynx-css 버전에서 제거될 예정입니다. 일반적인 콘텐츠에 사용되는 기본 색상입니다. (inverted-pressed)
light $color.palette.gray-100dark $color.palette.gray-200
`$color.bg.layer-default` 위에서 영역이나 섹션을 구분하는 표면 색상입니다. (muted)
light $color.palette.gray-900dark $color.palette.gray-1000
일반적인 콘텐츠에 사용되는 기본 색상입니다. (solid)
$color.palette.gray-800일반적인 콘텐츠에 사용되는 기본 색상입니다. (solid-pressed)
light $color.palette.gray-800dark $color.palette.gray-400
@deprecated 이 토큰은 @seed-design/css@4.0.0과 이에 대응하는 @seed-design/lynx-css 버전에서 제거될 예정입니다. 일반적인 콘텐츠에 사용되는 기본 색상입니다. (solid-muted)
light $color.palette.gray-900dark $color.palette.gray-500
@deprecated 이 토큰은 @seed-design/css@4.0.0과 이에 대응하는 @seed-design/lynx-css 버전에서 제거될 예정입니다. 일반적인 콘텐츠에 사용되는 기본 색상입니다. (solid-muted-pressed)
light $color.palette.gray-00dark $color.palette.gray-100
표면과 같은 색상입니다. 회색 표면 위에서 주변과 구분되는 영역에 사용됩니다. (subtle)
light $color.palette.gray-200dark $color.palette.gray-300
일반적인 콘텐츠에 사용되는 기본 색상입니다. (weak)
light $color.palette.static-black-alpha-200dark $color.palette.static-white-alpha-200
일반적인 콘텐츠에 사용되는 기본 색상입니다. (weak-alpha) `$color.layer.basement` 위에서 컴포넌트의 가시성을 보장하기 위해 사용됩니다.
light $color.palette.static-black-alpha-300dark $color.palette.static-white-alpha-300
일반적인 콘텐츠에 사용되는 기본 색상입니다. (weak-alpha-pressed) `$color.layer.basement` 위에서 컴포넌트의 가시성을 보장하기 위해 사용됩니다.
light $color.palette.gray-300dark $color.palette.gray-400
일반적인 콘텐츠에 사용되는 기본 색상입니다. (weak-pressed)
Positive
light $color.palette.green-700dark $color.palette.green-500
성공적인 작업, 확인, 또는 긍정적인 상태를 나타내는 데 사용됩니다. (solid)
light $color.palette.green-800dark $color.palette.green-600
성공적인 작업, 확인, 또는 긍정적인 상태를 나타내는 데 사용됩니다. (solid-pressed)
$color.palette.green-100성공적인 작업, 확인, 또는 긍정적인 상태를 나타내는 데 사용됩니다. (weak)
$color.palette.green-200성공적인 작업, 확인, 또는 긍정적인 상태를 나타내는 데 사용됩니다. (weak-pressed)
Warning
light $color.palette.yellow-300dark $color.palette.yellow-800
사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달하는 데 사용됩니다. (solid)
light $color.palette.yellow-400dark $color.palette.yellow-900
사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달하는 데 사용됩니다. (solid-pressed)
$color.palette.yellow-100사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달하는 데 사용됩니다. (weak)
$color.palette.yellow-200사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달하는 데 사용됩니다. (weak-pressed)
Critical
light $color.palette.red-700dark $color.palette.red-600
오류, 경고 또는 중요한 문제를 나타내는 데 사용됩니다. (solid)
light $color.palette.red-800dark $color.palette.red-700
오류, 경고 또는 중요한 문제를 나타내는 데 사용됩니다. (solid-pressed)
$color.palette.red-100오류, 경고 또는 중요한 문제를 나타내는 데 사용됩니다. (weak)
$color.palette.red-200오류, 경고 또는 중요한 문제를 나타내는 데 사용됩니다. (weak-pressed)
Informative
light $color.palette.blue-700dark $color.palette.blue-600
사용자에게 유용한 정보를 제공하거나 상태를 설명할 때 사용됩니다. (solid)
light $color.palette.blue-800dark $color.palette.blue-700
사용자에게 유용한 정보를 제공하거나 상태를 설명할 때 사용됩니다. (solid-pressed)
$color.palette.blue-100사용자에게 유용한 정보를 제공하거나 상태를 설명할 때 사용됩니다. (weak)
$color.palette.blue-200사용자에게 유용한 정보를 제공하거나 상태를 설명할 때 사용됩니다. (weak-pressed)
Layer
light $color.palette.gray-200dark $color.palette.gray-00
가장 낮은 0단계의 '대지'입니다. 화면 가장 깊은 곳에 위치하는 전체 배경색입니다.
light $color.palette.gray-00dark $color.palette.gray-100
basement 바로 위에 놓이는 기본 표면입니다. 대부분의 스크린 콘텐츠(List, TextField 등)가 이 레이어 위에서 표현됩니다.
light $color.palette.gray-100dark $color.palette.gray-300
basement 바로 위에 놓이는 기본 표면입니다. 대부분의 스크린 콘텐츠(List, TextField 등)가 이 레이어 위에서 표현됩니다. (pressed)
light $color.palette.gray-00dark $color.palette.gray-200
화면의 모든 콘텐츠 위를 덮으며(floating) 나타나는 임시 레이어입니다. 사용자의 상호작용을 필요로 하는 모달(Modal)성 요소들이 여기에 속합니다.
light $color.palette.gray-100dark $color.palette.gray-300
화면의 모든 콘텐츠 위를 덮으며(floating) 나타나는 임시 레이어입니다. 사용자의 상호작용을 필요로 하는 모달(Modal)성 요소들이 여기에 속합니다. (pressed)
기타
light $color.palette.gray-200dark $color.palette.gray-300
—
light #f9f2eedark #201f1f
—
$color.palette.static-black-alpha-700—
$color.palette.static-black-alpha-500—
light #00000000dark #ffffff00
—
light $color.palette.static-black-alpha-100dark $color.palette.static-white-alpha-50
—
light $color.palette.static-black-alpha-200dark $color.palette.static-white-alpha-100
—
light $color.palette.static-black-alpha-300dark $color.palette.static-white-alpha-200
—

Stroke

토큰LightDark참조설명
Brand
$color.palette.orange-700브랜드와 관련된 요소들이 즉각적으로 인식될 수 있도록 돕습니다. 화면에서 가장 중요한 액션을 강조하는데 사용할 수 있습니다. (solid)
$color.palette.orange-300브랜드와 관련된 요소들이 즉각적으로 인식될 수 있도록 돕습니다. 화면에서 가장 중요한 액션을 강조하는데 사용할 수 있습니다. (weak)
Neutral
$color.palette.gray-1000일반적인 콘텐츠에 사용되는 기본 색상입니다. (contrast)
light $color.palette.static-black-alpha-300dark $color.palette.static-white-alpha-100
의미 단위가 바뀌는 경계를 나누는 선입니다. 섹션과 섹션 사이, 콘텐츠와 액션 영역 사이, 헤더와 본문 경계처럼 한 화면에 한두 번만 등장하는 구분에 사용됩니다. (muted)
$color.palette.gray-800일반적인 콘텐츠에 사용되는 기본 색상입니다. (solid)
light $color.palette.static-black-alpha-200dark $color.palette.static-white-alpha-50
반복되는 동일한 성격의 항목 사이를 나누는 선입니다. 리스트 아이템, 테이블 row, 설정 메뉴 항목처럼 한 화면에 여러 번 등장하는 구분에 사용됩니다. (subtle)
$color.palette.gray-400요소의 외곽을 그려 형태를 만드는 선입니다. 카드, 인풋 필드, 아웃라인 버튼처럼 선 자체가 요소의 경계를 정의할 때 사용됩니다. (weak)
Positive
$color.palette.green-700성공적인 작업, 확인, 또는 긍정적인 상태를 나타내는 데 사용됩니다. (solid)
$color.palette.green-300성공적인 작업, 확인, 또는 긍정적인 상태를 나타내는 데 사용됩니다. (weak)
Warning
$color.palette.yellow-700사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달하는 데 사용됩니다. (solid)
$color.palette.yellow-300사용자의 주의가 필요한 경고 메시지나 안내 사항을 전달하는 데 사용됩니다. (weak)
Critical
$color.palette.red-700오류, 경고 또는 중요한 문제를 나타내는 데 사용됩니다. (solid)
$color.palette.red-300오류, 경고 또는 중요한 문제를 나타내는 데 사용됩니다. (weak)
Informative
$color.palette.blue-700사용자에게 유용한 정보를 제공하거나 상태를 설명할 때 사용됩니다. (solid)
$color.palette.blue-300사용자에게 유용한 정보를 제공하거나 상태를 설명할 때 사용됩니다. (weak)
기타
$color.palette.blue-600—

Palette Color

팔레트 색상은 역할 기반 색상으로 표현하기 어려운 예외적인 경우에 사용해요. 팔레트는 적응형이라서 화면 모드(라이트/다크)에 따라 알맞은 명도의 색상이 배정돼요. 특정 화면 모드를 기준으로 디자인해도 다른 모드에서 충분히 알아보기 쉬운 색상을 보장해요.

스와치를 누르면 Light/Dark 값, CSS 변수, Tailwind 유틸을 확인하고 복사할 수 있어요.

Gray

00
100
200
300
400
500
600
700
800
900
1000
Gray

Chromatic

100
200
300
400
500
600
700
800
900
1000
Orange
Blue
Green
Yellow
Red
Purple

Static

static-* 색상은 화면 모드와 관계없이 항상 같은 값을 가져요. 이미지 위 오버레이처럼 배경이 고정된 경우에 사용해요.

Black
White

배너·일러스트 배경처럼 장식적인 영역에 쓰는 색상이에요.

토큰LightDark참조설명
light #e1f7ffdark #0d2a3a
—
light #ebf1f5dark #242c33
—
light #f0fbe5dark #1e361c
—
light #fff2e1dark #42230a
—
light #ffebf1dark #3b172c
—
light #f5ecffdark #2e1e45
—
light #ffeceedark #3a0f15
—
light #e6faf6dark #143633
—
light #f2f0eedark #2f2b27
—
light #fffae1dark #3e2b00
—

Contrast

주요 전경/배경 조합의 WCAG 명도 대비예요. 토큰을 빌드할 때 자동으로 계산돼요. 본문 텍스트는 AA(4.5:1) 이상, 큰 텍스트와 굵은 라벨은 AA-large(3:1) 이상을 목표로 해요.

미리보기전경 / 배경모드대비등급
가나다 Aa
Light2.94 : 1fail
가나다 Aa
Dark2.94 : 1fail
가나다 Aa
Light3.76 : 1AA-large
가나다 Aa
Dark3.82 : 1AA-large
가나다 Aa
Light3.95 : 1AA-large
가나다 Aa
Dark3.85 : 1AA-large
가나다 Aa
Light13.31 : 1AAA
가나다 Aa
Dark16.26 : 1AAA
가나다 Aa
Light3.96 : 1AA-large
가나다 Aa
Dark5.39 : 1AA
가나다 Aa
Light10.80 : 1AAA
가나다 Aa
Dark7.93 : 1AAA
가나다 Aa
Light17.06 : 1AAA
가나다 Aa
Dark16.26 : 1AAA
가나다 Aa
Light6.62 : 1AA
가나다 Aa
Dark13.31 : 1AAA
가나다 Aa
Light3.42 : 1AA-large
가나다 Aa
Dark8.53 : 1AAA
가나다 Aa
Light2.10 : 1fail
가나다 Aa
Dark5.23 : 1AA
가나다 Aa
Light2.94 : 1fail
가나다 Aa
Dark6.10 : 1AA
가나다 Aa
Light3.76 : 1AA-large
가나다 Aa
Dark6.53 : 1AA
가나다 Aa
Light3.96 : 1AA-large
가나다 Aa
Dark6.60 : 1AA
가나다 Aa
Light4.12 : 1AA-large
가나다 Aa
Dark6.41 : 1AA
가나다 Aa
Light3.95 : 1AA-large
가나다 Aa
Dark6.62 : 1AA
가나다 Aa
Light3.64 : 1AA-large
가나다 Aa
Dark5.10 : 1AA
가나다 Aa
Light8.05 : 1AAA
가나다 Aa
Dark9.83 : 1AAA
가나다 Aa
Light8.30 : 1AAA
가나다 Aa
Dark10.10 : 1AAA
가나다 Aa
Light9.61 : 1AAA
가나다 Aa
Dark9.85 : 1AAA
가나다 Aa
Light8.37 : 1AAA
가나다 Aa
Dark9.91 : 1AAA

대비가 부족한 조합

등급이 fail 인 조합은 작은 텍스트에 쓰지 않아요. 브랜드 색상이 밝아 대비가 부족하면 텍스트를 굵고 크게(text-t5 이상, font-bold) 쓰거나, 브랜드 토큰 값을 조정해요.

사용 예

<div className="rounded-r3 bg-bg-critical-weak p-x3 text-t4 text-fg-critical-contrast">
  결제에 실패했어요.
</div>

<button className="rounded-r2 bg-bg-brand-solid px-x4 py-x2_5 text-t4 font-bold text-fg-on-brand-solid active:bg-bg-brand-solid-pressed">
  채팅하기
</button>
삭제
Do· 역할로 고르기

의미에 맞는 역할 색상(bg-critical-solid)을 사용해요.

삭제
Don't· 팔레트 직접 사용

역할 색상이 있는데 팔레트(palette-red-600)를 직접 쓰면 테마·브랜드 변경을 따라가지 못해요.

On this page