oh-my-design-cli 1.0.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/README.ja.md +7 -7
  2. package/README.ko.md +7 -7
  3. package/README.md +15 -18
  4. package/README.zh-TW.md +7 -7
  5. package/agents/omd-ux-writer.md +1 -1
  6. package/data/architecture-proposals/2026-05-13-thin-install-fresh-fetch.md +189 -0
  7. package/data/reference-audits/2026-05-13-kr10.md +132 -0
  8. package/data/reference-fingerprints.json +626 -3
  9. package/data/reference-tags.md +15 -1
  10. package/package.json +2 -2
  11. package/skills/omd-apply/SKILL.md +1 -1
  12. package/skills/omd-harness/SKILL.md +3 -3
  13. package/skills/omd-init/SKILL.md +2 -2
  14. package/web/AGENTS.md +5 -0
  15. package/web/references/29cm/DESIGN.md +445 -0
  16. package/web/references/ably/DESIGN.md +582 -0
  17. package/{references → web/references}/airbnb/DESIGN.md +158 -19
  18. package/web/references/airtable/DESIGN.md +241 -0
  19. package/{references → web/references}/apple/DESIGN.md +131 -76
  20. package/web/references/baemin/DESIGN.md +470 -0
  21. package/web/references/banksalad/DESIGN.md +606 -0
  22. package/{references → web/references}/bmw/DESIGN.md +138 -9
  23. package/{references → web/references}/cal/DESIGN.md +173 -17
  24. package/{references → web/references}/claude/DESIGN.md +11 -1
  25. package/{references → web/references}/clay/DESIGN.md +75 -0
  26. package/{references → web/references}/clickhouse/DESIGN.md +74 -0
  27. package/{references → web/references}/cohere/DESIGN.md +75 -0
  28. package/web/references/coinbase/DESIGN.md +205 -0
  29. package/{references → web/references}/composio/DESIGN.md +74 -0
  30. package/web/references/coupang/DESIGN.md +487 -0
  31. package/{references → web/references}/cursor/DESIGN.md +74 -0
  32. package/web/references/dcard/DESIGN.md +567 -0
  33. package/{references → web/references}/elevenlabs/DESIGN.md +91 -0
  34. package/{references → web/references}/expo/DESIGN.md +72 -0
  35. package/{references → web/references}/ferrari/DESIGN.md +72 -0
  36. package/{references → web/references}/figma/DESIGN.md +124 -48
  37. package/{references → web/references}/framer/DESIGN.md +143 -16
  38. package/web/references/freee/DESIGN.md +558 -0
  39. package/web/references/gangnamunni/DESIGN.md +605 -0
  40. package/{references → web/references}/hashicorp/DESIGN.md +72 -0
  41. package/{references → web/references}/ibm/DESIGN.md +68 -0
  42. package/{references → web/references}/intercom/DESIGN.md +73 -0
  43. package/web/references/kakao/DESIGN.md +490 -0
  44. package/web/references/kakaobank/DESIGN.md +533 -0
  45. package/web/references/kakaopay/DESIGN.md +529 -0
  46. package/web/references/karrot/DESIGN.md +431 -0
  47. package/web/references/kraken/DESIGN.md +219 -0
  48. package/web/references/krds/DESIGN.md +982 -0
  49. package/web/references/kurly/DESIGN.md +574 -0
  50. package/{references → web/references}/lamborghini/DESIGN.md +74 -0
  51. package/{references → web/references}/line/DESIGN.md +84 -43
  52. package/{references → web/references}/linear.app/DESIGN.md +8 -1
  53. package/{references → web/references}/lovable/DESIGN.md +73 -0
  54. package/web/references/mercari/DESIGN.md +464 -0
  55. package/{references → web/references}/minimax/DESIGN.md +72 -0
  56. package/{references → web/references}/mintlify/DESIGN.md +72 -0
  57. package/web/references/miro/DESIGN.md +252 -0
  58. package/{references → web/references}/mistral.ai/DESIGN.md +72 -0
  59. package/{references → web/references}/mongodb/DESIGN.md +72 -0
  60. package/web/references/musinsa/DESIGN.md +536 -0
  61. package/web/references/naver/DESIGN.md +518 -0
  62. package/{references → web/references}/notion/DESIGN.md +9 -1
  63. package/web/references/nvidia/DESIGN.md +491 -0
  64. package/web/references/ohouse/DESIGN.md +570 -0
  65. package/{references → web/references}/ollama/DESIGN.md +72 -0
  66. package/{references → web/references}/opencode.ai/DESIGN.md +73 -0
  67. package/web/references/pinkoi/DESIGN.md +575 -0
  68. package/{references → web/references}/pinterest/DESIGN.md +73 -0
  69. package/{references → web/references}/posthog/DESIGN.md +172 -18
  70. package/web/references/qanda/DESIGN.md +459 -0
  71. package/{references → web/references}/raycast/DESIGN.md +169 -34
  72. package/web/references/remember/DESIGN.md +445 -0
  73. package/{references → web/references}/renault/DESIGN.md +72 -0
  74. package/{references → web/references}/replicate/DESIGN.md +73 -0
  75. package/{references → web/references}/resend/DESIGN.md +73 -0
  76. package/{references → web/references}/revolut/DESIGN.md +74 -0
  77. package/web/references/ridi/DESIGN.md +517 -0
  78. package/{references → web/references}/runwayml/DESIGN.md +152 -24
  79. package/{references → web/references}/sanity/DESIGN.md +72 -0
  80. package/{references → web/references}/sentry/DESIGN.md +73 -0
  81. package/web/references/socar/DESIGN.md +370 -0
  82. package/web/references/spacex/DESIGN.md +379 -0
  83. package/web/references/spotify/DESIGN.md +426 -0
  84. package/{references → web/references}/stripe/DESIGN.md +44 -1
  85. package/{references → web/references}/supabase/DESIGN.md +73 -0
  86. package/{references → web/references}/superhuman/DESIGN.md +159 -17
  87. package/{references → web/references}/tesla/DESIGN.md +170 -0
  88. package/{references → web/references}/together.ai/DESIGN.md +73 -0
  89. package/{references → web/references}/toss/DESIGN.md +304 -50
  90. package/{references → web/references}/uber/DESIGN.md +73 -0
  91. package/{references → web/references}/vercel/DESIGN.md +9 -1
  92. package/{references → web/references}/voltagent/DESIGN.md +73 -0
  93. package/web/references/wanted/DESIGN.md +515 -0
  94. package/{references → web/references}/warp/DESIGN.md +142 -15
  95. package/web/references/webflow/DESIGN.md +253 -0
  96. package/{references → web/references}/wise/DESIGN.md +84 -0
  97. package/{references → web/references}/x.ai/DESIGN.md +85 -0
  98. package/web/references/yanolja/DESIGN.md +448 -0
  99. package/web/references/yeogiotte/DESIGN.md +424 -0
  100. package/{references → web/references}/zapier/DESIGN.md +85 -0
  101. package/web/references/zigbang/DESIGN.md +457 -0
  102. package/web/references/zigzag/DESIGN.md +618 -0
  103. package/references/airtable/DESIGN.md +0 -107
  104. package/references/baemin/DESIGN.md +0 -260
  105. package/references/coinbase/DESIGN.md +0 -129
  106. package/references/dcard/DESIGN.md +0 -302
  107. package/references/freee/DESIGN.md +0 -308
  108. package/references/kakao/DESIGN.md +0 -261
  109. package/references/karrot/DESIGN.md +0 -252
  110. package/references/kraken/DESIGN.md +0 -146
  111. package/references/mercari/DESIGN.md +0 -294
  112. package/references/miro/DESIGN.md +0 -108
  113. package/references/nvidia/DESIGN.md +0 -308
  114. package/references/pinkoi/DESIGN.md +0 -309
  115. package/references/spacex/DESIGN.md +0 -205
  116. package/references/spotify/DESIGN.md +0 -246
  117. package/references/webflow/DESIGN.md +0 -109
@@ -1,261 +0,0 @@
1
- # Design System Inspiration of Kakao (카카오)
2
-
3
- ## 1. Visual Theme & Atmosphere
4
-
5
- Kakao is the connective tissue of Korean digital life -- KakaoTalk is on virtually every smartphone in the country, and the iconic yellow is as recognizable as any global tech brand's signature. The interface presents a clean, functional canvas where conversations take center stage, accented by that unmistakable Kakao Yellow (`#FEE500`) that radiates warmth and friendliness. This isn't the cautious, muted yellow of enterprise warnings; it's full-saturation sunshine that feels like a friend's smile.
6
-
7
- The design philosophy is "모든 연결의 시작" (The Beginning of All Connections). Every decision serves communication -- the interface should be invisible enough that conversations flow naturally, yet distinctive enough that users feel at home. KakaoTalk's chat bubbles are the defining UI element: warm yellow for your messages, clean white for others', creating an instantly legible visual language that has become the standard mental model for messaging in Korea.
8
-
9
- Typography is deliberately neutral -- system fonts (San Francisco on iOS, Roboto on Android) so messages feel personal, not branded. When personality is needed, the custom **Kakao Font** steps in: Big Sans for confident headlines, Small Sans for legible small-screen details. The overall aesthetic is flat, warm, and content-forward. Minimal shadows, minimal gradients, strong color coding through yellow and clean neutrals.
10
-
11
- **Key Characteristics:**
12
- - Kakao Yellow (`#FEE500`) as the singular brand accent -- pure sunshine
13
- - System font stack for conversations -- messages feel personal, not designed
14
- - Kakao Font (Big Sans + Small Sans) for brand display moments (OFL open-source)
15
- - Chat bubble-centric UI: yellow for self, white for others -- the defining pattern
16
- - Flat design with minimal shadow -- depth through background color layering, not elevation
17
- - Near-black (`#1E1E1E`) brand base instead of pure black -- subtle warmth
18
- - 12px border-radius as the universal standard for interactive elements
19
- - 9-patch chat bubble system for pixel-perfect messaging UI
20
-
21
- ## 2. Color Palette & Roles
22
-
23
- ### Primary
24
- - **Kakao Yellow** (`#FEE500`): Primary brand color, login button, send button, CTA accent. Compliance-mandated for Kakao Login. The iconic color.
25
- - **Near Black** (`#1E1E1E`): Brand base color (Pantone 433 C). Wordmark, symbol, primary text in corporate contexts.
26
- - **Pure White** (`#ffffff`): Chat background, card surfaces, other-person chat bubbles.
27
-
28
- ### Chat-Specific
29
- - **My Bubble** (`#FEE500`): Yellow -- your messages are sunshine.
30
- - **Other's Bubble** (`#ffffff`): Clean white with subtle `#E5E5E5` border.
31
- - **System Message** (`#F0F0F0`): Date dividers, join/leave notices.
32
- - **Unread Count** (`#FAEB00`): Yellow text on unread badge -- draws attention.
33
-
34
- ### Semantic
35
- - **Error Red** (`#E02000`): Error messages, destructive actions, critical alerts.
36
- - **Link Blue** (`#2196F3`): Hyperlinks within chat and content.
37
- - **Success Green** (`#47B881`): Completion states, verified status.
38
- - **Warning Orange** (`#FF9800`): Attention-needed states.
39
-
40
- ### Neutral Scale
41
- - **Text Primary** (`#222222`): Friend names, chat titles, strong labels.
42
- - **Text Standard** (`#333333`): Chat messages, body text, action bar titles. The workhorse.
43
- - **Text Secondary** (`#666666`): Secondary labels, descriptions.
44
- - **Text Muted** (`#808080`): Status messages, placeholder-level text.
45
- - **Text Light** (`#999999`): Captions, timestamps, system messages.
46
- - **Text Lightest** (`#BBBBBB`): Disabled text, hint text.
47
-
48
- ### Surface & Borders
49
- - **Surface Elevated** (`#F8F8F8`): Subtle elevation through background shift.
50
- - **Surface Fill** (`#F0F0F0`): Secondary surfaces, search bars, disabled fields.
51
- - **Border Default** (`#E5E5E5`): Standard borders, dividers, input outlines.
52
- - **Border Subtle** (`#F0F0F0`): Lightest borders, subtle separation.
53
- - **Overlay** (`rgba(0,0,0,0.4)`): Modal backdrops -- lighter than most systems, keeping context visible.
54
-
55
- ## 3. Typography Rules
56
-
57
- ### Font Family
58
- - **UI Primary**: `-apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", Roboto, "Noto Sans KR", "Malgun Gothic", sans-serif`
59
- - **Monospace**: `"SF Mono", SFMono-Regular, Menlo, Consolas, monospace`
60
- - **Brand Display**: `"Kakao Big Sans"` -- confident headlines, promotional banners
61
- - **Brand Body**: `"Kakao Small Sans"` -- legible small-screen brand text
62
-
63
- Kakao Font is open-source (OFL-1.1) on GitHub. Big Sans has Regular/Bold/ExtraBold weights, Small Sans has Light/Regular/Bold. Both support full Hangul (11,172 characters).
64
-
65
- ### Hierarchy
66
-
67
- | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
68
- |------|------|------|--------|-------------|----------------|-------|
69
- | Display Hero | Kakao Big Sans | 36px | 800 | 1.25 | normal | Splash screens, marketing |
70
- | Display Large | Kakao Big Sans | 28px | 700 | 1.30 | normal | Service section titles |
71
- | Heading Large | System | 22px | 700 | 1.36 | normal | Screen titles, major sections |
72
- | Heading | System | 20px | 600 | 1.40 | normal | Navigation titles, modal headers |
73
- | Title | System | 18px | 600 | 1.44 | normal | Friend names, chat room titles |
74
- | Body | System | 16px | 400 | 1.50 | normal | Chat messages, descriptions |
75
- | Body Small | System | 14px | 400 | 1.57 | normal | Secondary info, metadata |
76
- | Caption | System | 13px | 400 | 1.54 | normal | Timestamps, status text |
77
- | Caption Small | System | 12px | 400 | 1.50 | normal | Fine print, badges |
78
- | Micro | System | 11px | 400 | 1.45 | normal | Tab bar text, smallest labels |
79
-
80
- ### Principles
81
- - **System fonts for trust**: Custom fonts would make conversations feel "designed" rather than personal. Messages should feel like YOUR messages.
82
- - **Kakao Font for brand**: When the brand speaks (promotions, onboarding, empty states), Big Sans adds personality. When users speak, the system font stays neutral.
83
- - **Weight restraint**: Most UI uses 400-500 weight. Bold (700) only for names, titles, amounts. Chat-heavy apps need typographic calm, not emphasis competition.
84
-
85
- ## 4. Component Stylings
86
-
87
- ### Buttons
88
-
89
- **Kakao Login (Compliance-Mandated)**
90
- - Background: `#FEE500` (mandatory, do not modify)
91
- - Text: `#000000` at 85% opacity (mandatory)
92
- - Icon: Kakao chat bubble in `#000000` (mandatory)
93
- - Radius: 12px (mandatory)
94
- - Use: Kakao Login integration -- specs are non-negotiable
95
-
96
- **Primary Action**
97
- - Background: `#FEE500`
98
- - Text: `#333333` (not white -- insufficient contrast on yellow)
99
- - Padding: 12px 20px
100
- - Radius: 12px
101
- - Font: 16px system weight 600
102
- - Use: Primary CTAs ("확인", "완료", "보내기")
103
-
104
- **Secondary / Outline**
105
- - Background: transparent
106
- - Text: `#333333`
107
- - Border: 1px solid `#E5E5E5`
108
- - Radius: 12px
109
- - Use: Secondary actions ("취소", "더보기")
110
-
111
- **Danger**
112
- - Background: `#E02000`
113
- - Text: `#ffffff`
114
- - Radius: 12px
115
- - Use: Destructive actions ("삭제", "차단")
116
-
117
- ### Chat Bubbles (Defining Component)
118
- - **My Message**: `#FEE500` bg, `#333333` text, asymmetric radius via 9-patch, max-width ~70% of chat
119
- - **Other's Message**: `#ffffff` bg, `#333333` text, subtle `#E5E5E5` border, sender name 12px weight 600 `#666666` above
120
- - **System**: `#F0F0F0` bg, `#999999` text, pill (9999px), centered, 12px weight 400
121
-
122
- ### Cards & Containers
123
- - Background: `#ffffff`
124
- - Border: 1px solid `#E5E5E5` or no border
125
- - Radius: 12px
126
- - Shadow: none or `0px 1px 3px rgba(0,0,0,0.04)` -- Kakao is intentionally flat
127
-
128
- ### Friend List Item
129
- - Avatar: 48px rounded square (12px radius) -- KakaoTalk uses rounded squares, not circles
130
- - Name: 16px weight 500, `#222222`
131
- - Status: 14px weight 400, `#808080`, single line ellipsis
132
- - Row height: 64px, Horizontal padding: 16px
133
-
134
- ### Inputs & Forms
135
- - Border: 1px solid `#E5E5E5`, Radius: 12px
136
- - Focus: border changes to `#333333`
137
- - Text: `#222222`, Placeholder: `#BBBBBB`
138
- - Chat input: `#F0F0F0` bg, 20px radius
139
- - Search bar: `#F0F0F0` bg, 20px radius, `#999999` search icon
140
-
141
- ### Navigation
142
- - Tab bar: white bg, 44px height, 4 equal tabs
143
- - Active: `#333333` text + 2px bottom border, Inactive: `#999999` text
144
- - Font: 14px weight 600
145
-
146
- ## 5. Layout Principles
147
-
148
- ### Spacing System
149
- - Base unit: 8px
150
- - Scale: 4px, 8px, 12px, 16px, 20px, 24px, 32px, 40px, 48px
151
- - Horizontal screen padding: 16px
152
- - Chat message gap (same sender): 4px, (different sender): 16px
153
- - List item vertical padding: 12px
154
-
155
- ### Grid & Container
156
- - Mobile: full-width, 16px horizontal padding
157
- - Chat messages: left-aligned (others) or right-aligned (self) with 16px margins
158
- - Friend list: single-column, full-width items
159
- - Grid menu (More tab): 3-4 column icon grid
160
-
161
- ### Whitespace Philosophy
162
- - **Conversation-optimized**: Message bubbles are compact but well-separated between senders. Maximize visible messages while maintaining clear attribution.
163
- - **List efficiency**: Friend/chat lists prioritize density -- 64px rows show avatar + name + status in a scannable format.
164
- - **Flat layering**: Instead of shadows, Kakao uses background color shifts (`#ffffff` → `#F0F0F0` → `#E5E5E5`) for visual hierarchy. Lightweight, fast-rendering.
165
-
166
- ### Border Radius Scale
167
- - Standard (12px): Buttons, cards, avatars (rounded square), inputs, login button
168
- - Rounded (20px): Search bars, rounded containers
169
- - Pill (9999px): System message bubbles, notification badges
170
- - Chat bubble: asymmetric via 9-patch assets
171
-
172
- ## 6. Depth & Elevation
173
-
174
- | Level | Treatment | Use |
175
- |-------|-----------|-----|
176
- | Flat (Level 0) | No shadow | Primary — most elements. Chat bubbles, list items, cards |
177
- | Minimal (Level 1) | `0px 1px 3px rgba(0,0,0,0.04)` | Rare — floating action button, keyboard toolbar |
178
- | Subtle (Level 2) | `0px 2px 6px rgba(0,0,0,0.08)` | Popovers, dropdown menus |
179
- | Elevated (Level 3) | `0px 4px 12px rgba(0,0,0,0.12)` | Bottom sheets, modal dialogs |
180
-
181
- **Shadow Philosophy**: Kakao is intentionally one of the flattest major design systems in production. Depth is communicated almost entirely through background color differentiation and border lines, not shadow elevation. This serves two purposes: performance on the millions of low-to-mid-range devices KakaoTalk targets, and aesthetic -- a messaging app should feel like a clean sheet of paper, not floating cards.
182
-
183
- ## 7. Do's and Don'ts
184
-
185
- ### Do
186
- - Use Kakao Yellow (`#FEE500`) as the primary brand accent
187
- - Follow Kakao Login button specs exactly -- they are compliance-mandated
188
- - Use system fonts for all conversational/functional UI
189
- - Use 12px border-radius as the standard for most interactive elements
190
- - Keep the interface flat -- rely on background color, not shadows, for depth
191
- - Use yellow bubbles for self-messages, white for others -- the universal Kakao pattern
192
- - Use rounded squares (12px radius) for KakaoTalk-style avatars
193
-
194
- ### Don't
195
- - Don't modify Kakao Login button colors, radius, or proportions
196
- - Don't use heavy shadows -- Kakao is one of the flattest design systems in production
197
- - Don't use yellow for text on white backgrounds -- contrast ratio is insufficient
198
- - Don't use pure black (`#000000`) for text -- use `#222222` or `#333333` for warmth
199
- - Don't override system fonts in chat contexts -- messages should feel personal
200
- - Don't use rounded circles for KakaoTalk avatars -- they use 12px rounded squares
201
- - Don't add gradient or 3D effects to brand elements -- strictly prohibited
202
-
203
- ## 8. Responsive Behavior
204
-
205
- ### Breakpoints
206
- | Name | Width | Key Changes |
207
- |------|-------|-------------|
208
- | Mobile (Primary) | <480px | Full design fidelity, KakaoTalk native layout |
209
- | Tablet | 480-768px | Side panel for chat list + detail |
210
- | Desktop | >768px | Fixed sidebar + chat panel + optional right panel |
211
-
212
- ### Touch Targets
213
- - Chat bubble: entire bubble tappable for context menu
214
- - Friend list items: 64px row height, full-width tappable
215
- - Tab bar items: 56px height, evenly distributed
216
- - Send button: 36px minimum, right side of input bar
217
-
218
- ### Collapsing Strategy
219
- - Desktop: multi-column (chat list | conversation | info panel)
220
- - Tablet: 2-column (chat list | conversation)
221
- - Mobile: single screen with navigation between views
222
- - Chat input: always bottom-fixed with safe area handling
223
-
224
- ### Image Behavior
225
- - Chat photos: grid layout (1/2/3+ images), 8px rounded corners
226
- - Profile avatars: 48px in lists, 80-100px in profile view, rounded square (12px)
227
- - Stickers/Emoticons: centered in bubble area, 120-200px display
228
-
229
- ## 9. Agent Prompt Guide
230
-
231
- ### Quick Color Reference
232
- - Primary CTA: Kakao Yellow (`#FEE500`)
233
- - CTA Text: Near Black (`#333333`) -- NOT white on yellow
234
- - Background: Pure White (`#ffffff`)
235
- - Background Fill: Light Gray (`#F0F0F0`)
236
- - Heading text: Dark (`#222222`)
237
- - Body text: Charcoal (`#333333`)
238
- - Secondary text: Gray (`#666666`)
239
- - Caption text: Muted (`#999999`)
240
- - Placeholder: Light (`#BBBBBB`)
241
- - Border: Soft Gray (`#E5E5E5`)
242
- - My Bubble: Kakao Yellow (`#FEE500`)
243
- - Other Bubble: White (`#ffffff`)
244
- - Link: Blue (`#2196F3`)
245
- - Error: Red (`#E02000`)
246
-
247
- ### Example Component Prompts
248
- - "Create a KakaoTalk chat screen: white bg. My messages: right-aligned #FEE500 bubbles, #333333 text 16px, timestamp below #999999 12px. Others: left-aligned, 36px circle avatar, 12px sender name #666666 above white bubble with #E5E5E5 border."
249
- - "Build a Kakao Login button: #FEE500 bg, 12px radius. Left: black chat bubble icon. Center: '카카오 로그인' in #000000 at 85% opacity. Full-width, 16px margin."
250
- - "Design a friend list: white bg, 16px h-padding. Each row: 48px rounded-square avatar (12px radius) + 12px gap + name (16px weight 500, #222222) over status (14px weight 400, #808080, ellipsis). 64px row height. Divider: 1px #F0F0F0."
251
- - "Create a tab bar: white bg, 44px height, 4 tabs. Active: #333333 text (14px weight 600) + 2px bottom border. Inactive: #999999 text."
252
- - "Design a chat input bar: #F0F0F0 bg, 20px radius, 40px height. Left: plus button 36px #999999. Right: send button #FEE500 bg 36px circle. Text input #222222, placeholder #BBBBBB '메시지 보내기'. Bottom-fixed with safe area."
253
-
254
- ### Iteration Guide
255
- 1. System fonts for ALL functional UI -- Kakao Font for brand/marketing only
256
- 2. Primary yellow is `#FEE500` -- text ON yellow is `#333333` (never white)
257
- 3. Chat bubbles are the visual DNA: yellow = self, white = other, pill = system
258
- 4. 12px is THE border-radius -- buttons, cards, avatars, login, all 12px
259
- 5. Flat design: no shadows on chat bubbles, minimal elsewhere, depth via background color
260
- 6. Gray hierarchy: #222222 → #333333 → #666666 → #808080 → #999999 → #BBBBBB
261
- 7. Kakao Login specs are non-negotiable compliance requirements
@@ -1,252 +0,0 @@
1
- # Design System Inspiration of Karrot (당근)
2
-
3
- ## 1. Visual Theme & Atmosphere
4
-
5
- Karrot's interface is the digital equivalent of a friendly neighborhood bulletin board -- warm, approachable, and built for trust between strangers. The page opens on a clean white canvas (`#ffffff`) with warm near-black headings (`#1a1c20`) and the unmistakable Karrot Orange (`#ff6600`) that serves as the singular brand accent. This isn't the corporate orange of enterprise dashboards; it's the vivid, saturated orange of a fresh carrot -- energetic, trustworthy, and unmistakably local.
6
-
7
- The design system, called **Seed Design**, is one of the most mature open-source systems in Korean tech. It operates on a strict 4px grid with a three-tier token architecture (palette → semantic → component) that ensures every measurement is intentional. Typography relies entirely on the platform's native font stack rather than a custom typeface -- Pretendard on web, system fonts on native -- putting community content first. The overall aesthetic is warm neutral: soft grays, generous whitespace, and that singular orange accent. Where Stripe uses shadows as brand expression, Karrot uses shadows as pure function -- minimal, neutral, and warm.
8
-
9
- **Key Characteristics:**
10
- - Karrot Orange (`#ff6600`) as the singular brand accent -- warm, energetic, unmistakable
11
- - System font stack (Pretendard / Apple SD Gothic Neo) -- content takes center stage, no custom typeface
12
- - 4px base grid with precise spacing from 2px (x0.5) to 64px (x16)
13
- - Three-tier token system: palette → semantic → component for systematic theming
14
- - Full dark mode via semantic token remapping (not simple inversion)
15
- - 11-step gray scale (gray-00 through gray-1000) for nuanced depth
16
- - Three-level shadow system with separate light/dark mode intensities
17
- - Mobile-first at 375px baseline with `clamp()`-based accessibility font scaling
18
-
19
- ## 2. Color Palette & Roles
20
-
21
- ### Primary
22
- - **Karrot Orange** (`#ff6600`): `$color.palette.carrot-600`. Primary CTA, active states, brand solid backgrounds. The iconic orange that defines every Karrot touchpoint.
23
- - **Deep Orange** (`#e14d00`): `$color.palette.carrot-700`. Pressed/hover state for brand elements, dark mode brand solid.
24
- - **Near Black** (`#1a1c20`): `$color.palette.gray-1000`, `fg-neutral`. Primary heading and text color. Warm near-black that avoids harshness.
25
- - **Pure White** (`#ffffff`): `$color.palette.gray-00`, `bg-layer-default`. Page background, card surfaces.
26
-
27
- ### Brand Tints
28
- - **Orange Tint** (`#fff2ec`): `$color.palette.carrot-100`. Brand weak background, subtle orange-tinted surfaces.
29
- - **Orange Light** (`#ffb999`): `$color.palette.carrot-400`. Medium brand tint, progress indicators.
30
- - **Orange Deep** (`#b93901`): `$color.palette.carrot-800`. Deep orange for emphasis in dark contexts.
31
-
32
- ### Semantic
33
- - **Critical Red** (`#fa342c`): `fg-critical`. Error foreground, destructive action labels.
34
- - **Informative Blue** (`#217cf9`): `fg-informative`. Links, informational highlights.
35
- - **Positive Green** (`#079171`): `fg-positive`. Success states, confirmation indicators.
36
- - **Warning Yellow** (`#9b7821`): `fg-warning`. Caution labels, attention-needed states.
37
- - **Focus Blue** (`#5e98fe`): `stroke-focus-ring`. Keyboard focus ring on interactive elements.
38
-
39
- ### Neutral Scale
40
- - **Gray 100** (`#f7f8f9`): `bg-layer-fill`. Subtle background fill.
41
- - **Gray 200** (`#f3f4f5`): `bg-layer-basement`, `bg-disabled`. Secondary surfaces.
42
- - **Gray 400** (`#dcdee3`): `stroke-neutral-weak`. Standard borders, dividers.
43
- - **Gray 600** (`#b0b3ba`): `fg-placeholder`. Placeholder text, muted icons.
44
- - **Gray 700** (`#868b94`): `fg-neutral-subtle`. Captions, tertiary text.
45
- - **Gray 800** (`#555d6d`): `fg-neutral-muted`. Secondary body text.
46
-
47
- ### Surface & Borders
48
- - **Border Subtle** (`rgba(0,0,0,0.08)`): `stroke-neutral-subtle`. Soft card borders, barely-there separation.
49
- - **Border Muted** (`rgba(0,0,0,0.12)`): `stroke-neutral-muted`. Moderate borders for definition.
50
- - **Overlay** (`rgba(0,0,0,0.7)`): `bg-overlay`. Modal/sheet backdrop.
51
- - **Overlay Muted** (`rgba(0,0,0,0.5)`): `bg-overlay-muted`. Bottom sheet scrims.
52
-
53
- ## 3. Typography Rules
54
-
55
- ### Font Family
56
- - **Primary**: `"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", Roboto, "Noto Sans KR", sans-serif`
57
- - **Monospace**: `"SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace`
58
- - **Design Principle**: No custom brand typeface. Karrot intentionally uses the user's system font so community content feels native and personal, not branded.
59
-
60
- ### Hierarchy
61
-
62
- | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
63
- |------|------|------|--------|-------------|----------------|-------|
64
- | Display XL | System | 26px (t10) | 700 | 35px | 0em | Hero headlines, splash screens |
65
- | Display Large | System | 24px (t9) | 700 | 32px | 0em | Section headers |
66
- | Heading Large | System | 20px (t7) | 700 | 27px | 0em | Card headings, sub-sections |
67
- | Heading | System | 18px (t6) | 700 | 24px | 0em | List section headers |
68
- | Title | System | 16px (t5) | 500 | 22px | 0em | Navigation, standard titles |
69
- | Body | System | 14px (t4) | 400 | 19px | 0em | Standard reading text, listings |
70
- | Body Small | System | 13px (t3) | 400 | 18px | 0em | Secondary text, metadata |
71
- | Caption | System | 12px (t2) | 400 | 16px | 0em | Timestamps, small labels |
72
- | Caption Small | System | 11px (t1) | 400 | 15px | 0em | Fine print, badges |
73
-
74
- ### Principles
75
- - **Three weights only**: Regular (400), Medium (500), Bold (700). No light or extra-bold -- the system is intentionally constrained.
76
- - **Platform-aware tracking**: iOS uses 0em throughout; Android uses tighter tracking (-0.02em to -0.04em) for system font metrics.
77
- - **Compact type scale**: 11px to 26px in 10 steps with no display sizes above 26px -- mobile-first, content-density over typographic drama.
78
- - **Accessibility scaling**: All sizes use `clamp()` with `--seed-font-size-multiplier`, supporting 80% to 150% of base size.
79
-
80
- ## 4. Component Stylings
81
-
82
- ### Buttons
83
-
84
- **Brand Solid (Primary CTA)**
85
- - Background: `#ff6600` (carrot-600)
86
- - Text: `#ffffff`
87
- - Radius: 12px (large), 8px (medium/small), 9999px (xsmall pill)
88
- - Min-height: 52px (large), 40px (medium), 36px (small), 32px (xsmall)
89
- - Font: 16px weight 700 (large), 14px weight 700 (medium/small)
90
- - Pressed: `#e14d00` (carrot-700)
91
- - Disabled: `#f3f4f5` background, `#d1d3d8` text
92
- - Use: Primary actions ("판매하기", "채팅하기")
93
-
94
- **Neutral Weak**
95
- - Background: `#f3f4f5` (gray-200)
96
- - Text: `#1a1c20` (gray-1000)
97
- - Pressed: `#eeeff1` (gray-300)
98
- - Use: Tertiary actions, filters
99
-
100
- **Neutral Outline**
101
- - Background: transparent
102
- - Text: `#1a1c20` (gray-1000)
103
- - Border: 1px solid `#dcdee3` (gray-400)
104
- - Pressed: `#f7f8f9` background
105
- - Use: Cancel, dismiss, low-emphasis
106
-
107
- **Critical Solid**
108
- - Background: `#fa342c` (red-700)
109
- - Text: `#ffffff`
110
- - Use: Destructive actions ("삭제", "신고")
111
-
112
- ### Cards & Containers
113
- - Background: `#ffffff` (bg-layer-default)
114
- - Border: 1px solid `rgba(0,0,0,0.08)` (stroke-neutral-subtle) or no border with shadow
115
- - Radius: 8px (standard), 12px (featured), 16px (large cards)
116
- - Shadow: `0px 2px 10px rgba(0,0,0,0.1)` (s2) for standard cards
117
-
118
- ### Chips & Tags
119
- - Background: `#f3f4f5` (gray-200), Selected: `#1a1c20` (gray-1000) with white text
120
- - Radius: 9999px (pill)
121
- - Height: 32px, Padding: 0 12px, Font: 13px weight 500
122
-
123
- ### Inputs & Forms
124
- - Background: `#f7f8f9` (gray-100)
125
- - Border: 1px solid `#dcdee3` (gray-400)
126
- - Radius: 8px
127
- - Focus: 2px solid `#5e98fe` (blue-600) focus ring
128
- - Text: `#1a1c20`, Placeholder: `#b0b3ba` (gray-600)
129
- - Error border: `#fa342c` (red-700)
130
-
131
- ### Navigation
132
- - Bottom tab bar: white background, subtle top border
133
- - Active tab: Karrot Orange icon + label, Inactive: `#868b94` (gray-700)
134
- - App bar: white, centered title (16px weight 700), optional back arrow
135
-
136
- ## 5. Layout Principles
137
-
138
- ### Spacing System
139
- - Base unit: 4px
140
- - Scale: 2px (x0.5), 4px (x1), 6px (x1.5), 8px (x2), 12px (x3), 16px (x4), 20px (x5), 24px (x6), 32px (x8), 40px (x10), 56px (x14), 64px (x16)
141
- - Global gutter: 16px (x4) on each side
142
- - Component default vertical: 12px (x3)
143
-
144
- ### Grid & Container
145
- - Mobile: full-width with 16px horizontal gutter
146
- - Content max-width: 640px for web
147
- - Listing cards: full-width with 16px horizontal padding
148
- - Card grid: 2-column on tablet, single column on mobile
149
-
150
- ### Whitespace Philosophy
151
- - **Content-dense, chrome-light**: Users scan many listings quickly. Spacing breathes but keeps 3-4 items per viewport.
152
- - **Consistent gutter**: The 16px global gutter is sacred -- every screen edge, every card inset returns to this rhythm.
153
- - **Grouped by proximity**: Related items use 4-8px gaps; distinct sections use 16-24px gaps.
154
-
155
- ### Border Radius Scale
156
- - Micro (2px): Progress bars, inline indicators
157
- - Standard (8px): Buttons, inputs, standard cards
158
- - Comfortable (12px): Large buttons, featured cards
159
- - Large (16px): Image frames, prominent cards
160
- - Sheet (20px): Bottom sheet top corners
161
- - Dialog (24px): Modal dialogs
162
- - Pill (9999px): Chips, avatars, xsmall buttons
163
-
164
- ## 6. Depth & Elevation
165
-
166
- | Level | Treatment | Use |
167
- |-------|-----------|-----|
168
- | Flat (Level 0) | No shadow | Page background, inline elements |
169
- | Subtle (s1) | `0px 1px 4px rgba(0,0,0,0.08)` | Slight lift, list item hover |
170
- | Standard (s2) | `0px 2px 10px rgba(0,0,0,0.10)` | Cards, dropdowns, popovers |
171
- | Prominent (s3) | `0px 4px 16px rgba(0,0,0,0.12)` | Floating action button, bottom sheets, modals |
172
-
173
- **Shadow Philosophy**: Only three levels -- enough for clear layering without visual clutter. Shadows use pure black with varying opacity (no brand-tinted shadows), keeping the system neutral so the orange accent remains the sole source of warmth. In dark mode, opacities increase dramatically (s1: 0.50, s2: 0.68, s3: 0.80) to remain perceptible on dark surfaces.
174
-
175
- ## 7. Do's and Don'ts
176
-
177
- ### Do
178
- - Use Karrot Orange (`#ff6600`) as the singular brand accent -- it should feel special, not overwhelming
179
- - Stick to the 4px spacing grid -- every measurement should be a multiple of 4px
180
- - Use semantic tokens (`fg-neutral`, `bg-layer-default`) over raw palette values in component code
181
- - Keep border-radius between 8px-12px for standard elements, pills (9999px) only for chips/avatars
182
- - Use the system font stack -- Pretendard on web, system fonts on native
183
- - Apply dark mode via semantic token remapping, not opacity tricks
184
- - Maintain the 16px global gutter on all screen edges
185
-
186
- ### Don't
187
- - Don't overuse orange -- it's for primary CTAs and brand moments only, not backgrounds or borders
188
- - Don't use shadows heavier than s3 -- the system intentionally avoids dramatic elevation
189
- - Don't introduce additional brand colors -- Karrot is a one-accent-color system
190
- - Don't exceed 26px for text sizes -- this is a mobile-first system with a compact type scale
191
- - Don't use pure black (`#000000`) for text -- use gray-1000 (`#1a1c20`) for warmth
192
- - Don't mix palette tokens and semantic tokens in the same component
193
- - Don't skip the `clamp()` wrapper on font sizes -- accessibility scaling is non-negotiable
194
-
195
- ## 8. Responsive Behavior
196
-
197
- ### Breakpoints
198
- | Name | Width | Key Changes |
199
- |------|-------|-------------|
200
- | Mobile | <480px | Full-width cards, single column, 16px gutter |
201
- | Tablet | 480-768px | 2-column listing grid, expanded cards |
202
- | Desktop (Web) | >768px | Max-width 640px content, centered layout |
203
-
204
- ### Touch Targets
205
- - Buttons: 52px (large), 40px (medium), 36px (small), 32px (xsmall)
206
- - Tab bar items: 48px height with centered icon + label
207
- - List items: minimum 56px row height
208
- - Chips: 32px height minimum
209
-
210
- ### Collapsing Strategy
211
- - Listing grid: 2-column → single column below 480px
212
- - Bottom tab bar persists across all sizes
213
- - Bottom CTA: sticky full-width button + safe area padding
214
- - Image carousels: horizontal scroll with page indicators
215
-
216
- ### Image Behavior
217
- - Listing thumbnails: 1:1 aspect ratio, 8px radius
218
- - Profile avatars: circular (9999px), 36-48px diameter
219
- - Full-width hero images: edge-to-edge, no radius
220
-
221
- ## 9. Agent Prompt Guide
222
-
223
- ### Quick Color Reference
224
- - Primary CTA: Karrot Orange (`#ff6600`)
225
- - CTA Pressed: Deep Orange (`#e14d00`)
226
- - Background: Pure White (`#ffffff`)
227
- - Heading text: Near Black (`#1a1c20`)
228
- - Body text: Dark Gray (`#555d6d`)
229
- - Caption text: Medium Gray (`#868b94`)
230
- - Placeholder: Light Gray (`#b0b3ba`)
231
- - Border: Soft Gray (`#dcdee3`)
232
- - Disabled bg: Light Fill (`#f3f4f5`)
233
- - Error: Red (`#fa342c`)
234
- - Success: Green (`#079171`)
235
- - Info: Blue (`#217cf9`)
236
- - Focus ring: Blue (`#5e98fe`)
237
-
238
- ### Example Component Prompts
239
- - "Create a listing card: white background, 1px solid rgba(0,0,0,0.08) border, 8px radius. Horizontal layout with 1:1 thumbnail (8px radius) left. Title 16px weight 400, #1a1c20. Price 16px weight 700, #1a1c20. Location + time 13px weight 400, #868b94."
240
- - "Build a primary CTA button: #ff6600 background, white text, 16px weight 700, min-height 52px, 12px radius, full-width. Pressed: #e14d00. Disabled: #f3f4f5 bg, #d1d3d8 text."
241
- - "Design a filter chip bar: horizontal scroll, 8px gap. Each chip: #f3f4f5 bg, #1a1c20 text, 13px weight 500, 32px height, 9999px radius, 12px h-padding. Selected: #1a1c20 bg, #ffffff text."
242
- - "Create a bottom sheet: white bg, 20px top-left/right radius, shadow 0px 4px 16px rgba(0,0,0,0.12). Handle: 36px wide, 4px height, #dcdee3, centered. Content: 16px h-padding."
243
- - "Design a navigation bar: white bg, sticky top, 1px bottom border rgba(0,0,0,0.08). Centered title 16px weight 700, #1a1c20. Left: back arrow icon #1a1c20. Right: optional action icon. Height 56px."
244
-
245
- ### Iteration Guide
246
- 1. Primary color is `#ff6600` only -- no secondary brand hue exists
247
- 2. All spacing snaps to 4px grid: 4, 8, 12, 16, 20, 24, 32, 40, 48, 56, 64
248
- 3. Border-radius defaults: 8px buttons/inputs, 12px cards, 9999px chips/avatars
249
- 4. Gray-1000 (`#1a1c20`) for headings, gray-800 (`#555d6d`) for body, gray-700 (`#868b94`) for captions
250
- 5. Shadows are minimal: s1 for hover, s2 for cards, s3 for floating elements only
251
- 6. Mobile-first: design at 375px width, 16px gutter, then scale up
252
- 7. System font stack -- never embed a custom font for Karrot
@@ -1,146 +0,0 @@
1
- # Design System Inspiration of Kraken
2
-
3
- ## 1. Visual Theme & Atmosphere
4
-
5
- Kraken's website is a clean, trustworthy crypto exchange that uses purple as its commanding brand color. The design operates on white backgrounds with Kraken Purple (`#7132f5`, `#5741d8`, `#5b1ecf`) creating a distinctive, professional crypto identity. The proprietary Kraken-Brand font handles display headings with bold (700) weight and negative tracking, while Kraken-Product (with IBM Plex Sans fallback) serves as the UI workhorse.
6
-
7
- **Key Characteristics:**
8
- - Kraken Purple (`#7132f5`) as primary brand with darker variants (`#5741d8`, `#5b1ecf`)
9
- - Kraken-Brand (display) + Kraken-Product (UI) dual font system
10
- - Near-black (`#101114`) text with cool blue-gray neutral scale
11
- - 12px radius buttons (rounded but not pill)
12
- - Subtle shadows (`rgba(0,0,0,0.03) 0px 4px 24px`) — whisper-level
13
- - Green accent (`#149e61`) for positive/success states
14
-
15
- ## 2. Color Palette & Roles
16
-
17
- ### Primary
18
- - **Kraken Purple** (`#7132f5`): Primary CTA, brand accent, links
19
- - **Purple Dark** (`#5741d8`): Button borders, outlined variants
20
- - **Purple Deep** (`#5b1ecf`): Deepest purple
21
- - **Purple Subtle** (`rgba(133,91,251,0.16)`): Purple at 16% — subtle button backgrounds
22
- - **Near Black** (`#101114`): Primary text
23
-
24
- ### Neutral
25
- - **Cool Gray** (`#686b82`): Primary neutral, borders at 24% opacity
26
- - **Silver Blue** (`#9497a9`): Secondary text, muted elements
27
- - **White** (`#ffffff`): Primary surface
28
- - **Border Gray** (`#dedee5`): Divider borders
29
-
30
- ### Semantic
31
- - **Green** (`#149e61`): Success/positive at 16% opacity for badges
32
- - **Green Dark** (`#026b3f`): Badge text
33
-
34
- ## 3. Typography Rules
35
-
36
- ### Font Families
37
- - **Display**: `Kraken-Brand`, fallbacks: `IBM Plex Sans, Helvetica, Arial`
38
- - **UI / Body**: `Kraken-Product`, fallbacks: `Helvetica Neue, Helvetica, Arial`
39
-
40
- ### Hierarchy
41
-
42
- | Role | Font | Size | Weight | Line Height | Letter Spacing |
43
- |------|------|------|--------|-------------|----------------|
44
- | Display Hero | Kraken-Brand | 48px | 700 | 1.17 | -1px |
45
- | Section Heading | Kraken-Brand | 36px | 700 | 1.22 | -0.5px |
46
- | Sub-heading | Kraken-Brand | 28px | 700 | 1.29 | -0.5px |
47
- | Feature Title | Kraken-Product | 22px | 600 | 1.20 | normal |
48
- | Body | Kraken-Product | 16px | 400 | 1.38 | normal |
49
- | Body Medium | Kraken-Product | 16px | 500 | 1.38 | normal |
50
- | Button | Kraken-Product | 16px | 500–600 | 1.38 | normal |
51
- | Caption | Kraken-Product | 14px | 400–700 | 1.43–1.71 | normal |
52
- | Small | Kraken-Product | 12px | 400–500 | 1.33 | normal |
53
- | Micro | Kraken-Product | 7px | 500 | 1.00 | uppercase |
54
-
55
- ## 4. Component Stylings
56
-
57
- ### Buttons
58
-
59
- **Primary Purple**
60
- - Background: `#7132f5`
61
- - Text: `#ffffff`
62
- - Padding: 13px 16px
63
- - Radius: 12px
64
-
65
- **Purple Outlined**
66
- - Background: `#ffffff`
67
- - Text: `#5741d8`
68
- - Border: `1px solid #5741d8`
69
- - Radius: 12px
70
-
71
- **Purple Subtle**
72
- - Background: `rgba(133,91,251,0.16)`
73
- - Text: `#7132f5`
74
- - Padding: 8px
75
- - Radius: 12px
76
-
77
- **White Button**
78
- - Background: `#ffffff`
79
- - Text: `#101114`
80
- - Radius: 10px
81
- - Shadow: `rgba(0,0,0,0.03) 0px 4px 24px`
82
-
83
- **Secondary Gray**
84
- - Background: `rgba(148,151,169,0.08)`
85
- - Text: `#101114`
86
- - Radius: 12px
87
-
88
- ### Badges
89
- - Success: `rgba(20,158,97,0.16)` bg, `#026b3f` text, 6px radius
90
- - Neutral: `rgba(104,107,130,0.12)` bg, `#484b5e` text, 8px radius
91
-
92
- ### Cards
93
-
94
- **Default Card**
95
- - Background: `#ffffff`
96
- - Border: `1px solid rgba(148,151,169,0.16)`
97
- - Radius: `12px`
98
- - Padding: `24px`
99
- - Shadow: `rgba(0,0,0,0.03) 0px 4px 24px` (subtle lift)
100
-
101
- **Stat / Metric Card**
102
- - Background: `#ffffff`, radius `16px`, padding `20px 24px`
103
- - Title: 12px weight 500 `#686b82` (muted)
104
- - Value: 28px weight 700 `#101114`
105
- - Delta: 12px weight 500 — `#149e61` for positive, `#d54848` for negative
106
-
107
- **Featured / Promotional Card**
108
- - Background: `linear-gradient(135deg, #7132f5 0%, #5741d8 100%)` (purple gradient)
109
- - Text: `#ffffff`, radius `16px`, padding `32px`
110
- - Subtle inner glow via `box-shadow: inset 0 0 60px rgba(255,255,255,0.08)`
111
- - Use sparingly for premium/upgrade prompts
112
-
113
- ## 5. Layout Principles
114
-
115
- ### Spacing: 1px, 2px, 3px, 4px, 5px, 6px, 8px, 10px, 12px, 13px, 15px, 16px, 20px, 24px, 25px
116
- ### Border Radius: 3px, 6px, 8px, 10px, 12px, 16px, 9999px, 50%
117
-
118
- ## 6. Depth & Elevation
119
- - Subtle: `rgba(0,0,0,0.03) 0px 4px 24px`
120
- - Micro: `rgba(16,24,40,0.04) 0px 1px 4px`
121
-
122
- ## 7. Do's and Don'ts
123
-
124
- ### Do
125
- - Use Kraken Purple (#7132f5) for CTAs and links
126
- - Apply 12px radius on all buttons
127
- - Use Kraken-Brand for headings, Kraken-Product for body
128
-
129
- ### Don't
130
- - Don't use pill buttons — 12px is the max radius for buttons
131
- - Don't use other purples outside the defined scale
132
-
133
- ## 8. Responsive Behavior
134
- Breakpoints: 375px, 425px, 640px, 768px, 1024px, 1280px, 1536px
135
-
136
- ## 9. Agent Prompt Guide
137
-
138
- ### Quick Color Reference
139
- - Brand: Kraken Purple (`#7132f5`)
140
- - Dark variant: `#5741d8`
141
- - Text: Near Black (`#101114`)
142
- - Secondary text: `#9497a9`
143
- - Background: White (`#ffffff`)
144
-
145
- ### Example Component Prompts
146
- - "Create hero: white background. Kraken-Brand 48px weight 700, letter-spacing -1px. Purple CTA (#7132f5, 12px radius, 13px 16px padding)."