oh-my-design-cli 1.8.2 → 1.8.7

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 (83) hide show
  1. package/README.ja.md +5 -5
  2. package/README.ko.md +7 -7
  3. package/README.md +7 -7
  4. package/README.zh-TW.md +5 -5
  5. package/agents/omd-master.md +1 -1
  6. package/data/reference-fingerprints.json +1696 -17
  7. package/package.json +3 -1
  8. package/skills/omd-feel/SKILL.md +152 -0
  9. package/skills/omd-feel/provenance.md +233 -0
  10. package/skills/omd-feel/reference.md +254 -0
  11. package/skills/omd-harness/SKILL.md +1 -1
  12. package/skills/omd-init/SKILL.md +1 -1
  13. package/skills/omd-reference-capture/SKILL.md +1 -1
  14. package/web/references/591/DESIGN.md +460 -0
  15. package/web/references/airbridge/DESIGN.md +451 -0
  16. package/web/references/asana/DESIGN.md +485 -0
  17. package/web/references/asos/DESIGN.md +475 -0
  18. package/web/references/bahamut/DESIGN.md +416 -0
  19. package/web/references/bbc/DESIGN.md +439 -0
  20. package/web/references/bigin/DESIGN.md +454 -0
  21. package/web/references/buzzvil/DESIGN.md +457 -0
  22. package/web/references/cafe24/DESIGN.md +472 -0
  23. package/web/references/chunghwa/DESIGN.md +419 -0
  24. package/web/references/codeit/DESIGN.md +470 -0
  25. package/web/references/databricks/DESIGN.md +467 -0
  26. package/web/references/datarize/DESIGN.md +451 -0
  27. package/web/references/deliveroo/DESIGN.md +458 -0
  28. package/web/references/doordash/DESIGN.md +429 -0
  29. package/web/references/easywallet/DESIGN.md +449 -0
  30. package/web/references/elice/DESIGN.md +445 -0
  31. package/web/references/esunbank/DESIGN.md +445 -0
  32. package/web/references/farfetch/DESIGN.md +436 -0
  33. package/web/references/fubon/DESIGN.md +438 -0
  34. package/web/references/furiosaai/DESIGN.md +450 -0
  35. package/web/references/goorm/DESIGN.md +470 -0
  36. package/web/references/govuk/DESIGN.md +450 -0
  37. package/web/references/greencar/DESIGN.md +420 -0
  38. package/web/references/hackle/DESIGN.md +472 -0
  39. package/web/references/hana/DESIGN.md +439 -0
  40. package/web/references/hubspot/DESIGN.md +485 -0
  41. package/web/references/hwahae/DESIGN.md +453 -0
  42. package/web/references/hyundai/DESIGN.md +468 -0
  43. package/web/references/icook/DESIGN.md +432 -0
  44. package/web/references/instacart/DESIGN.md +439 -0
  45. package/web/references/ipassmoney/DESIGN.md +407 -0
  46. package/web/references/kakaopage/DESIGN.md +439 -0
  47. package/web/references/kbpay/DESIGN.md +442 -0
  48. package/web/references/kcd/DESIGN.md +432 -0
  49. package/web/references/kia/DESIGN.md +411 -0
  50. package/web/references/kyobobook/DESIGN.md +445 -0
  51. package/web/references/lablup/DESIGN.md +474 -0
  52. package/web/references/lemonbase/DESIGN.md +452 -0
  53. package/web/references/liner/DESIGN.md +465 -0
  54. package/web/references/makinarocks/DESIGN.md +442 -0
  55. package/web/references/monzo/DESIGN.md +461 -0
  56. package/web/references/moreh/DESIGN.md +437 -0
  57. package/web/references/naverpay/DESIGN.md +478 -0
  58. package/web/references/neosapience/DESIGN.md +441 -0
  59. package/web/references/nota/DESIGN.md +451 -0
  60. package/web/references/octopusenergy/DESIGN.md +436 -0
  61. package/web/references/openpoint/DESIGN.md +431 -0
  62. package/web/references/paypal/DESIGN.md +459 -0
  63. package/web/references/portone/DESIGN.md +446 -0
  64. package/web/references/queenit/DESIGN.md +432 -0
  65. package/web/references/rebellions/DESIGN.md +449 -0
  66. package/web/references/reddit/DESIGN.md +537 -0
  67. package/web/references/returnzero/DESIGN.md +460 -0
  68. package/web/references/samsung/DESIGN.md +465 -0
  69. package/web/references/saramin/DESIGN.md +465 -0
  70. package/web/references/shiftee/DESIGN.md +468 -0
  71. package/web/references/shinhanbank/DESIGN.md +429 -0
  72. package/web/references/skyscanner/DESIGN.md +563 -0
  73. package/web/references/snapchat/DESIGN.md +460 -0
  74. package/web/references/solapi/DESIGN.md +483 -0
  75. package/web/references/squarespace/DESIGN.md +454 -0
  76. package/web/references/ssg/DESIGN.md +439 -0
  77. package/web/references/starling/DESIGN.md +404 -0
  78. package/web/references/supertone/DESIGN.md +413 -0
  79. package/web/references/taiwanmobile/DESIGN.md +445 -0
  80. package/web/references/trainline/DESIGN.md +454 -0
  81. package/web/references/vuno/DESIGN.md +413 -0
  82. package/web/references/weverse/DESIGN.md +437 -0
  83. package/web/references/zoom/DESIGN.md +457 -0
@@ -0,0 +1,432 @@
1
+ ---
2
+ id: queenit
3
+ name: Queenit
4
+ display_name_kr: 퀸잇
5
+ country: KR
6
+ category: ecommerce
7
+ homepage: "https://www.rapportlabs.kr"
8
+ primary_color: "#642fe9"
9
+ logo:
10
+ type: favicon
11
+ slug: "https://static.queenit.kr/damoa-mobile-web/public/android-icon-192x192.png"
12
+ verified: "2026-06-26"
13
+ added: "2026-06-26"
14
+ omd: "0.1"
15
+ tokens:
16
+ source: live-extract
17
+ extracted: "2026-06-26"
18
+ note: "primary = app-icon brand purple (#642fe9); live commerce UI uses a sale-purple (#714fd8) for discount-rate % and a deeper accent-purple (#603ec5) for emphasis; pink (#e54d76) is the secondary accent. Parent corporate site (rapportlabs.kr) runs a separate near-black ink (#393838) + yellow (#ffcb27) system."
19
+ colors:
20
+ primary: "#642fe9"
21
+ sale-purple: "#714fd8"
22
+ accent-purple: "#603ec5"
23
+ pink: "#e54d76"
24
+ ink: "#000000"
25
+ slate: "#292c31"
26
+ muted: "#aaafbb"
27
+ muted-alt: "#7d8597"
28
+ canvas: "#ffffff"
29
+ surface: "#edeef0"
30
+ surface-alt: "#f2f3f5"
31
+ hairline: "#e2e2e8"
32
+ on-primary: "#ffffff"
33
+ corp-ink: "#393838"
34
+ corp-yellow: "#ffcb27"
35
+ typography:
36
+ family: { product: "Pretendard", corp: "Noto Sans Korean" }
37
+ display: { size: 38, weight: 700, lineHeight: 1.50, use: "Corporate section headlines (rapportlabs.kr), Pretendard Bold" }
38
+ discount: { size: 16, weight: 600, use: "Discount-rate percentage on product cards, Pretendard SemiBold" }
39
+ body: { size: 16, weight: 400, use: "Product UI text and category-nav labels, Pretendard" }
40
+ promo: { size: 14, weight: 600, use: "Promo overlay labels on banner images, Pretendard" }
41
+ caption: { size: 14, weight: 400, lineHeight: 1.57, use: "Corporate body copy, Noto Sans Korean" }
42
+ input: { size: 14, weight: 500, use: "Search input text, Pretendard" }
43
+ spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 24, xl: 32, section: 64 }
44
+ rounded: { sm: 4, md: 6, base: 8, lg: 16, full: 9999 }
45
+ shadow:
46
+ chip: "rgba(27,32,42,0.16) 0px 2px 6px -2px"
47
+ float: "rgba(27,32,42,0.08) 0px 4px 8px -2px"
48
+ components:
49
+ category-chip: { type: button, bg: "#ffffff", fg: "#000000", radius: "8px", padding: "3.5px 11.5px", height: "45px", shadow: "rgba(27,32,42,0.16) 0px 2px 6px -2px", font: "16px / 400 Pretendard", use: "Home shortcut chip (잘 사는 비결, 2만원 쿠폰, 매거진Q)" }
50
+ floating-icon: { type: button, bg: "#ffffff", fg: "#000000", radius: "50%", padding: "8px", height: "42px", shadow: "rgba(27,32,42,0.08) 0px 4px 8px -2px", use: "Floating circular quick-action icon button" }
51
+ nav-tab: { type: tab, active: "text #000000", fg: "#aaafbb", font: "16px / 400 Pretendard", use: "Top category nav (추천·라이프·뷰티·컨템퍼러리·남성)" }
52
+ product-card: { type: card, bg: "#ffffff", fg: "#000000", radius: "16px", use: "Product tile in the recommendation grid" }
53
+ skeleton-block: { type: card, bg: "#edeef0", radius: "16px", use: "Loading skeleton / image placeholder" }
54
+ discount-badge: { type: badge, bg: "#ffffff", fg: "#714fd8", radius: "4px", font: "16px / 600 Pretendard", use: "Discount-rate percentage on product cards" }
55
+ promo-pill: { type: badge, bg: "#000000", fg: "#ffffff", radius: "8px", font: "14px / 600 Pretendard", use: "Promo overlay label on hero banner images" }
56
+ components_harvested: true
57
+ ---
58
+
59
+ # Design System Inspiration of Queenit
60
+
61
+ ## 1. Visual Theme & Atmosphere
62
+
63
+ Queenit (퀸잇) is Korea's leading lifestyle-commerce app for the 4050 generation — "멋진 어른들의 라이프스타일링샵" (a lifestyling shop for stylish grown-ups), operated by Rapportlabs (라포랩스). Its live storefront (web.queenit.kr) reads like a confident, scroll-fast mobile marketplace rather than a fussy department-store site. The canvas is pure white (`#ffffff`) carrying near-black ink (`#000000`) for product titles and prices, so merchandise photography does the talking while the chrome stays quiet. Soft cool-grey surfaces (`#edeef0`, `#f2f3f5`) fill image placeholders and skeletons, and a thin hairline (`#e2e2e8`) separates rows without heavy borders. The single brand anchor is a vivid electric purple (`#642fe9`) — the color of the white-"Q" app icon — which signals "Queenit" the instant the app opens.
64
+
65
+ In the commerce UI the purple shows up as a working color, not just a logo: the discount-rate percentages that drive this deal-heavy storefront are set in a saturated sale-purple (`#714fd8`) at 16px / weight 600, and a deeper accent-purple (`#603ec5`) handles links and emphasis. A warm pink (`#e54d76`) is the secondary accent for highlight tags, and a muted cool-grey ladder (`#aaafbb` → `#7d8597`) carries metadata and secondary labels alongside a darker slate (`#292c31`) used for input and label text. Geometry leans rounded and friendly — 16px product cards as the workhorse, 8px shortcut chips, 4px–6px micro-tags, and full-circle (50%) floating icon buttons — with light, low-spread shadows (`rgba(27,32,42,0.16) 0px 2px 6px -2px`) that lift chips just enough to feel tappable on a phone. The product font throughout is **Pretendard**, chosen for dense, legible hangul at the larger touch sizes a 40s–50s audience appreciates.
66
+
67
+ Queenit's parent company runs a deliberately different identity on its corporate/recruiting site (rapportlabs.kr): big 38px Pretendard Bold section headlines over calm body copy set in **Noto Sans Korean** at 14px, a softer near-black ink (`#393838`), and a single warm yellow accent (`#ffcb27`). The two surfaces share a flat, photography-forward sensibility but speak to different audiences — the storefront sells to shoppers with purple and deals; the corporate site recruits talent with restraint and a friendly yellow highlight.
68
+
69
+ **Key Characteristics:**
70
+ - Electric brand purple (`#642fe9`) from the app icon — the system's single identity color
71
+ - Sale-purple (`#714fd8`) reserved for discount-rate percentages — the storefront's most repeated brand cue
72
+ - Deeper accent-purple (`#603ec5`) for links and emphasis; pink (`#e54d76`) as the secondary accent
73
+ - Near-black ink (`#000000`) on white (`#ffffff`) — merchandise-first, quiet chrome
74
+ - Cool-grey surfaces (`#edeef0`, `#f2f3f5`) for skeletons and placeholders; hairlines (`#e2e2e8`) over heavy borders
75
+ - Rounded, mobile-friendly geometry — 16px cards, 8px chips, 50% circle icons
76
+ - Light low-spread shadows for chips/floating icons instead of deep elevation
77
+ - Pretendard for the product UI; corporate site uses Noto Sans Korean + a `#ffcb27` yellow accent over `#393838` ink
78
+
79
+ ## 2. Color Palette & Roles
80
+
81
+ ### Primary
82
+ - **Queenit Purple** (`#642fe9`): The brand color — the vivid electric purple of the app icon (white "Q" on purple). Used as the identity anchor and primary brand accent.
83
+ - **Sale Purple** (`#714fd8`): The live commerce accent. Set on discount-rate percentages at 16px / weight 600 — the most frequently repeated colored element on the storefront.
84
+ - **Accent Purple** (`#603ec5`): A deeper purple for links, active emphasis, and interactive text.
85
+
86
+ ### Accent
87
+ - **Highlight Pink** (`#e54d76`): Secondary accent for emphasis tags and highlight labels.
88
+
89
+ ### Text Hierarchy
90
+ - **Ink Black** (`#000000`): Primary text — product titles, prices, nav labels.
91
+ - **Slate** (`#292c31`): Input text and strong secondary labels.
92
+ - **Muted Grey** (`#aaafbb`): Tertiary text, inactive tabs, low-emphasis metadata.
93
+ - **Muted Alt** (`#7d8597`): Alternate muted grey for captions and fine print.
94
+
95
+ ### Neutral & Surface
96
+ - **Pure White** (`#ffffff`): Page background, card surfaces, chip backgrounds, text on purple/dark.
97
+ - **Surface Grey** (`#edeef0`): Cool-grey fill for image placeholders and loading skeletons.
98
+ - **Surface Alt** (`#f2f3f5`): A lighter secondary grey for alternating blocks.
99
+ - **Hairline** (`#e2e2e8`): Thin borders and dividers — the primary separation device.
100
+ - **On Primary** (`#ffffff`): Text/icon color used on purple and dark overlay surfaces.
101
+
102
+ ### Corporate (rapportlabs.kr)
103
+ - **Corp Ink** (`#393838`): Near-black body text on the parent company site.
104
+ - **Corp Yellow** (`#ffcb27`): The single warm accent on the corporate/recruiting surface — highlights and callouts.
105
+
106
+ ## 3. Typography Rules
107
+
108
+ ### Font Family
109
+ - **Product**: `Pretendard` (with the platform hangul stack — `Apple SD Gothic Neo`, `Malgun Gothic`, `Noto Sans KR`). The de-facto Korean product font; used for all storefront UI.
110
+ - **Corporate**: `Noto Sans Korean` for body copy on rapportlabs.kr, with `Pretendard` Bold reserved for the large corporate headlines.
111
+
112
+ ### Hierarchy
113
+
114
+ | Role | Font | Size | Weight | Line Height | Notes |
115
+ |------|------|------|--------|-------------|-------|
116
+ | Corporate Headline | Pretendard | 38px (2.38rem) | 700 | 1.50 | rapportlabs.kr section heads |
117
+ | Discount % | Pretendard | 16px (1.00rem) | 600 | normal | Sale-purple discount-rate on cards |
118
+ | Body / Nav | Pretendard | 16px (1.00rem) | 400 | normal | Product UI text, category-nav labels |
119
+ | Promo Label | Pretendard | 14px (0.88rem) | 600 | normal | White overlay text on banner images |
120
+ | Corporate Body | Noto Sans Korean | 14px (0.88rem) | 400 | 1.57 (22px) | rapportlabs.kr paragraph copy |
121
+ | Search Input | Pretendard | 14px (0.88rem) | 500 | normal | Search field text |
122
+
123
+ ### Principles
124
+ - **Pretendard owns the storefront**: every shopper-facing label, price, and nav item is Pretendard — dense, legible hangul at comfortable touch sizes.
125
+ - **Weight as emphasis, not size**: prices and discount rates jump to weight 600 rather than ballooning in size, keeping product rows scannable.
126
+ - **Generous reading size for the audience**: body/nav sits at 16px (larger than a typical 14px product app) — a deliberate legibility choice for a 40s–50s user base.
127
+ - **Two surfaces, two fonts**: the product app is Pretendard; the corporate site pairs Pretendard Bold headlines with Noto Sans Korean body — the systems never blend.
128
+
129
+ ## 4. Component Stylings
130
+
131
+ ### Buttons
132
+
133
+ **Category Shortcut Chip**
134
+ - Background: `#ffffff`
135
+ - Text: `#000000`
136
+ - Radius: 8px
137
+ - Padding: 3.5px 11.5px
138
+ - Height: 45px
139
+ - Shadow: `rgba(27,32,42,0.16) 0px 2px 6px -2px`
140
+ - Font: 16px Pretendard weight 400
141
+ - Use: Home shortcut chips ("잘 사는 비결", "2만원 쿠폰", "매거진Q", "명품 초특가")
142
+
143
+ **Floating Icon Button**
144
+ - Background: `#ffffff`
145
+ - Text: `#000000`
146
+ - Radius: 50%
147
+ - Padding: 8px
148
+ - Height: 42px
149
+ - Shadow: `rgba(27,32,42,0.08) 0px 4px 8px -2px`
150
+ - Use: Floating circular quick-action icon button
151
+
152
+ ### Inputs
153
+
154
+ **Search Field**
155
+ - Text: `#292c31`
156
+ - Font: 14px Pretendard weight 500
157
+ - Use: Top search input
158
+
159
+ ### Cards & Containers
160
+
161
+ **Product Card**
162
+ - Background: `#ffffff`
163
+ - Text: `#000000`
164
+ - Radius: 16px
165
+ - Use: Product tile in the recommendation grid
166
+
167
+ **Skeleton / Placeholder Block**
168
+ - Background: `#edeef0`
169
+ - Radius: 16px
170
+ - Use: Loading skeleton and image placeholder
171
+
172
+ ### Badges
173
+
174
+ **Discount Rate**
175
+ - Background: `#ffffff`
176
+ - Text: `#714fd8`
177
+ - Radius: 4px
178
+ - Font: 16px Pretendard weight 600
179
+ - Use: Discount-rate percentage on product cards (41%, 63%, 79%)
180
+
181
+ **Promo Overlay Pill**
182
+ - Background: `#000000`
183
+ - Text: `#ffffff`
184
+ - Radius: 8px
185
+ - Font: 14px Pretendard weight 600
186
+ - Use: Promo label over hero banner images ("주얼리 특가전 ~50%", "이번주만 10% 더 할인")
187
+
188
+ ### Navigation
189
+
190
+ **Top Category Nav**
191
+ - Active: `#000000` text
192
+ - Inactive: `#aaafbb` text
193
+ - Font: 16px Pretendard weight 400
194
+ - Use: Horizontal category tabs ("추천", "라이프", "뷰티", "컨템퍼러리", "남성")
195
+
196
+ ---
197
+
198
+ **Verified:** 2026-06-26 (omd:add-reference CREATE — Tier 1 live inspect, 2 surfaces)
199
+ **Tier 1 sources:** https://web.queenit.kr (live commerce UI, computed style); https://www.rapportlabs.kr (parent company site, live computed style); https://apps.apple.com/kr/app/id1526439940 (Queenit App Store listing — brand-owned product listing)
200
+ **Tier 2 sources:** getdesign.md/queenit — no Queenit-specific data (generic shell); styles.refero.design/?q=queenit — searched, no Queenit style page returned. (KR coverage gap — expected per spec/regional-sources.yaml; Tier 1 carries the proof.)
201
+ **Conflicts unresolved:** none
202
+
203
+ ## 5. Layout Principles
204
+
205
+ ### Spacing System
206
+ - Base unit: ~4px
207
+ - Scale: 4px, 8px, 12px, 16px, 24px, 32px, 64px
208
+ - Notable: shortcut chips use a tight asymmetric 3.5px / 11.5px padding with a leading icon, keeping the chip rail compact while staying tappable
209
+
210
+ ### Grid & Container
211
+ - Mobile-first single column centered in a phone-width frame (the web storefront renders the app layout)
212
+ - Home is a vertical scroll of merchandising bands: a category-nav header, a shortcut-chip rail, banner carousels, and product grids
213
+ - Product grids are 2-up tiles with 16px-radius cards; prices and discount rates sit directly beneath each image
214
+ - Corporate site (rapportlabs.kr) uses a wide multi-section scroll with 38px headlines and generous vertical rhythm
215
+
216
+ ### Whitespace Philosophy
217
+ - **Merchandise-first**: chrome stays minimal so product photography dominates; white space frames imagery rather than decorating it
218
+ - **Flat segmentation**: bands separate by tinted surface (`#edeef0` / `#f2f3f5`) and `#e2e2e8` hairlines, not by shadow stacks
219
+ - **Dense but legible**: information-rich deal layouts kept readable by the 16px base size and consistent card rhythm
220
+
221
+ ### Border Radius Scale
222
+ - Tiny (4px): discount/price micro-tags
223
+ - Small (6px): inner controls
224
+ - Base (8px): shortcut chips, promo pills
225
+ - Large (16px): product cards and content containers — the workhorse
226
+ - Circle (50% / full): floating icon buttons, avatars
227
+
228
+ ## 6. Depth & Elevation
229
+
230
+ | Level | Treatment | Use |
231
+ |-------|-----------|-----|
232
+ | Flat (Level 0) | No shadow | Page background, product rows, most surfaces |
233
+ | Tint (Level 1) | `#edeef0` background shift | Skeletons, image placeholders, section separation |
234
+ | Chip (Level 2) | `rgba(27,32,42,0.16) 0px 2px 6px -2px` | Shortcut chips, small floating controls |
235
+ | Float (Level 3) | `rgba(27,32,42,0.08) 0px 4px 8px -2px` | Floating circular icon buttons |
236
+
237
+ **Shadow Philosophy**: Queenit uses depth sparingly and softly. Most of the storefront is flat — separation comes from cool-grey tinted surfaces (`#edeef0`) and `#e2e2e8` hairlines. Where elevation appears it is a low-spread, short-offset shadow (`0px 2px 6px -2px`) tuned for the small interactive surfaces of a mobile UI: shortcut chips and floating circular icons that need to read as "lift up and tap." This keeps the merchandise-heavy page feeling fast and uncluttered rather than card-stacked.
238
+
239
+ ## 7. Do's and Don'ts
240
+
241
+ ### Do
242
+ - Use the brand purple (`#642fe9`) as the single identity anchor — it's the app-icon color
243
+ - Set discount-rate percentages in sale-purple (`#714fd8`) at weight 600 — it's the storefront's signature cue
244
+ - Keep product chrome quiet: near-black (`#000000`) text on white (`#ffffff`) so photography leads
245
+ - Use 16px-radius cards as the default product container
246
+ - Separate bands with tinted surfaces (`#edeef0`) and `#e2e2e8` hairlines, not heavy shadows
247
+ - Use Pretendard at a generous 16px base for legibility with a 40s–50s audience
248
+ - Use light low-spread shadows for chips and floating icons only
249
+ - Use pink (`#e54d76`) sparingly as a secondary highlight accent
250
+
251
+ ### Don't
252
+ - Spread the brand purple across large fills — keep it an accent and identity color, not a background wash
253
+ - Use deep, heavy drop shadows or stacked cards — Queenit's depth is light and selective
254
+ - Drop the body size below 16px on shopper-facing labels — the larger size is intentional for the audience
255
+ - Introduce a third saturated hue beyond purple and pink — it dilutes the deal signal
256
+ - Mix the corporate yellow (`#ffcb27`) into the storefront — it belongs to rapportlabs.kr only
257
+ - Use sharp/square corners on cards or chips — geometry is rounded throughout
258
+ - Let metadata compete with prices — keep secondary text in muted grey (`#aaafbb`)
259
+
260
+ ## 8. Responsive Behavior
261
+
262
+ ### Breakpoints
263
+ | Name | Width | Key Changes |
264
+ |------|-------|-------------|
265
+ | Mobile | <640px | Native single-column app layout; 2-up product grid |
266
+ | Tablet | 640–1024px | Same centered phone-width frame, more side margin |
267
+ | Desktop | >1024px | Storefront stays phone-width centered; corporate site expands to full multi-section layout |
268
+
269
+ ### Touch Targets
270
+ - Shortcut chips at 45px height with leading icon — comfortable thumb targets
271
+ - Floating icon buttons at 42px circles
272
+ - Category-nav items spaced for touch within the header
273
+ - 16px base text size aids both readability and tap accuracy
274
+
275
+ ### Collapsing Strategy
276
+ - Home bands stack vertically and scroll; banner carousels swipe horizontally
277
+ - Product grids stay 2-up on phones; chip rails scroll horizontally when overflowing
278
+ - Corporate headlines (38px) scale down on narrow viewports, weight 700 maintained
279
+
280
+ ### Image Behavior
281
+ - Product and banner imagery uses 16px-radius framing; placeholders fall back to `#edeef0`
282
+ - Promo overlay text (`#ffffff` weight 600) sits on darkened image regions for contrast
283
+
284
+ ## 9. Agent Prompt Guide
285
+
286
+ ### Quick Color Reference
287
+ - Brand / identity: Queenit Purple (`#642fe9`)
288
+ - Discount-rate %: Sale Purple (`#714fd8`)
289
+ - Links / emphasis: Accent Purple (`#603ec5`)
290
+ - Secondary accent: Highlight Pink (`#e54d76`)
291
+ - Primary text: Ink Black (`#000000`)
292
+ - Input / strong label: Slate (`#292c31`)
293
+ - Muted text / inactive: Muted Grey (`#aaafbb`)
294
+ - Background: Pure White (`#ffffff`)
295
+ - Skeleton / placeholder: Surface Grey (`#edeef0`)
296
+ - Hairline: `#e2e2e8`
297
+ - Corporate ink / accent: `#393838` / `#ffcb27`
298
+
299
+ ### Example Component Prompts
300
+ - "Create a 2-up product grid. Cards are white (#ffffff), 16px radius, no border. Below each image: product title 16px Pretendard #000000, original price struck-through in muted grey (#aaafbb), discount rate 16px Pretendard weight 600 in sale-purple (#714fd8), final price 16px weight 600 #000000."
301
+ - "Build a home shortcut chip rail: white (#ffffff) chips, 8px radius, 3.5px 11.5px padding, 45px tall, shadow rgba(27,32,42,0.16) 0px 2px 6px -2px, leading icon + 16px Pretendard #000000 label."
302
+ - "Design a promo banner: full-width image with a dark overlay, white (#ffffff) promo label 14px Pretendard weight 600 ('이번주만 10% 더 할인'), 8px radius pill."
303
+ - "Create a top category nav: horizontal tabs in 16px Pretendard, active item #000000, inactive items muted grey (#aaafbb)."
304
+ - "Build a loading state: skeleton blocks in surface grey (#edeef0) at 16px radius matching final card dimensions; no shadow."
305
+
306
+ ### Iteration Guide
307
+ 1. Purple (`#642fe9`) is identity; sale-purple (`#714fd8`) is the discount cue — don't conflate them
308
+ 2. Photography leads; keep chrome near-black on white
309
+ 3. 16px-radius cards and 16px base text are the defaults
310
+ 4. Separate with `#edeef0` tint and `#e2e2e8` hairlines, not heavy shadows
311
+ 5. Shadows are light and low-spread, for chips and floating icons only
312
+ 6. Keep the corporate yellow (`#ffcb27`) off the storefront
313
+ 7. Muted grey (`#aaafbb`) for metadata so prices stay dominant
314
+
315
+ ---
316
+
317
+ ## 10. Voice & Tone
318
+
319
+ Queenit's voice is **warm, confident, and deal-savvy** — it speaks to grown-up shoppers as people of taste, not as a niche "senior" segment. The positioning line "멋진 어른들의 라이프스타일링샵" ("a lifestyling shop for stylish grown-ups") sets the register: aspirational and respectful, never patronizing. Copy is benefit-first and value-led — discount rates, coupons, and "완판" (sold-out) social proof are front and center — but framed as savvy curation ("백화점 옷인데 더 저렴해", "department-store clothes, cheaper") rather than desperate urgency. The parent company (Rapportlabs) voice on the corporate site is mission-framed and plainspoken, addressing the scale of the 4050 market with quiet ambition.
320
+
321
+ | Context | Tone |
322
+ |---|---|
323
+ | Storefront positioning | Aspirational, respectful. "멋진 어른들의 라이프스타일링샵." |
324
+ | Promo / deal labels | Value-led, concrete. "주얼리 특가전 ~50%", "이번주만 10% 더 할인". |
325
+ | Category / nav | Plain and functional. "추천", "라이프", "뷰티", "컨템퍼러리", "남성". |
326
+ | Social proof | Reassuring. "홈쇼핑 완판템", "1000만이 사랑하는 멋과 스타일". |
327
+ | Corporate / recruiting | Mission-framed, ambitious-but-calm. "4050의 일상을 연결하는 라이프스타일 플랫폼." |
328
+
329
+ **Voice samples (verbatim, verified live 2026-06-26):**
330
+ - "멋진 어른들의 라이프스타일링샵, 퀸잇" — storefront meta title (positioning). *(web.queenit.kr og:title)*
331
+ - "1000만이 사랑하는 멋과 스타일을 한 곳에" — storefront meta description (social proof). *(web.queenit.kr og:description)*
332
+ - "한국에서 가장 크고 소비력이 강한 4050 시장" — corporate headline (market framing). *(rapportlabs.kr)*
333
+ - "4050의 일상을 연결하는 라이프스타일 플랫폼" — corporate tagline (mission). *(rapportlabs.kr)*
334
+
335
+ **Forbidden register**: ageist or condescending framing of the 4050 audience, fear-based urgency, undefined jargon, exclamation-stacked hype. The audience is treated as discerning, not as a problem to be solved.
336
+
337
+ ## 11. Brand Narrative
338
+
339
+ Queenit (퀸잇) is operated by **Rapportlabs (라포랩스)**, a startup founded in **May 2020** and based in Gangnam, Seoul, led by co-CEOs **최희민 (Choi Hee-min)** and **홍주영 (Hong Ju-young)**. After an initial product pivot, the team launched **Queenit in September 2020** to serve a market most fashion-commerce players had overlooked: Korean women in their **40s and 50s** — a demographic the company describes as the country's largest and most purchasing-powerful consumer segment.
340
+
341
+ The founding insight was that the 4050 generation shopped for fashion the way younger users shopped years earlier — increasingly on mobile, but underserved by apps designed for 20s tastes and 20s-sized type. Queenit's answer was a curated, deal-forward storefront of contemporary and premium brands ("백화점 옷인데 더 저렴해" — department-store clothes for less), with a generous, legible UI and value framing (discount rates, coupons, sold-out social proof) that respects the shopper's intelligence. Early growth was rapid, with weekly GMV compounding as word spread through the target demographic.
342
+
343
+ What Queenit refuses, visible in its design: the cramped 14px type and youth-coded aesthetics of typical fashion apps, and any framing that treats the 4050 audience as a "senior" afterthought. What it embraces: a confident brand purple, photography-first merchandising, a generous 16px reading size, and copy that calls its users "멋진 어른들" (stylish grown-ups). The parent brand's stated ambition — a 4050 lifestyle super-app reaching 8M MAU and 3조+ in GMV — frames the storefront as the first surface of a much larger platform.
344
+
345
+ ## 12. Principles
346
+
347
+ 1. **Respect the grown-up shopper.** The 4050 user is discerning, not a niche to be condescended to. *UI implication:* aspirational copy ("멋진 어른들"), generous 16px text, and clean merchandise-first layouts — never shrunken type or youth-coded clutter.
348
+ 2. **Photography leads, chrome follows.** Product imagery is the hero. *UI implication:* near-black text on white, 16px-radius image cards, quiet hairlines; the brand purple is an accent, not a background.
349
+ 3. **Value is the message.** Deals, coupons, and sold-out proof drive the storefront. *UI implication:* discount rates get the saturated sale-purple (`#714fd8`) at weight 600 so the savings read instantly.
350
+ 4. **One identity color.** Purple (`#642fe9`) means Queenit. *UI implication:* reserve the saturated purple for identity and the discount cue; don't dilute it across surfaces.
351
+ 5. **Flat and fast.** A deal-heavy scroll must stay light. *UI implication:* tint and hairlines for separation, light low-spread shadows only on chips and floating icons.
352
+
353
+ ## 13. Personas
354
+
355
+ *Personas below are fictional archetypes informed by publicly observable Queenit user segments (Korean women in their 40s–50s shopping fashion on mobile), not individual people.*
356
+
357
+ **정미경, 52, 서울.** Shops for contemporary brands she used to buy at department stores, now at better prices. Trusts the "완판" (sold-out) tags and the larger, readable type. Came to Queenit after a friend showed her "백화점 옷인데 더 저렴해."
358
+
359
+ **한영주, 47, 경기.** Busy professional who scans discount rates first — the sale-purple percentages let her judge a deal in a glance. Appreciates that the app feels made for her taste, not a teenager's.
360
+
361
+ **김선호, 55, 부산.** Browses the 남성 category for quality basics. Values the calm, photography-forward layout and the absence of aggressive pop-ups; buys when the coupon framing makes the value obvious.
362
+
363
+ ## 14. States
364
+
365
+ | State | Treatment |
366
+ |---|---|
367
+ | **Empty (no search results)** | White canvas, single Ink Black (`#000000`) line explaining no matching products, with a path back to categories. No clutter. |
368
+ | **Empty (wishlist / cart none yet)** | Muted Grey (`#aaafbb`) single line inviting the shopper to browse; calm, non-pushy. |
369
+ | **Loading (product grid)** | Skeleton blocks in Surface Grey (`#edeef0`) at 16px radius, matching final card dimensions. Flat pulse, no shadow. |
370
+ | **Loading (image)** | `#edeef0` placeholder fill until the product photo resolves. |
371
+ | **Error (fetch failed)** | Inline message in Ink Black with a plain-language explanation and a retry — never a bare error code. |
372
+ | **Error (form / coupon invalid)** | Field-level message below the input describing what's valid, not just "오류". |
373
+ | **Success (added to cart / coupon applied)** | Brief inline confirmation; next-step detail immediately below. No celebratory emoji. |
374
+ | **Skeleton** | `#edeef0` blocks at final dimensions, 16px radius, flat pulse. |
375
+ | **Disabled** | Muted Grey (`#aaafbb`) text on reduced-opacity surface; purple actions fade rather than turn grey to keep the brand read. |
376
+
377
+ ## 15. Motion & Easing
378
+
379
+ **Durations**:
380
+
381
+ | Token | Value | Use |
382
+ |---|---|---|
383
+ | `motion-fast` | 120ms | Chip press, icon-button tap, focus |
384
+ | `motion-standard` | 220ms | Card/section reveal, banner crossfade, sheet |
385
+ | `motion-slow` | 320ms | Page transitions, hero reveals |
386
+
387
+ **Easings**:
388
+
389
+ | Token | Curve | Use |
390
+ |---|---|---|
391
+ | `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Arriving — sheets, cards, chips |
392
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
393
+ | `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Two-way transitions |
394
+
395
+ **Motion rules**: Motion is functional and quick — consistent with a deal-heavy, scroll-fast storefront. Chips and floating icons respond to press with a subtle scale/opacity shift; product grids and banners fade in from below at `motion-standard / ease-enter`; banner carousels auto-advance with a gentle crossfade. No bounce or spring — a value-focused commerce app signals reliability over playfulness. Under `prefers-reduced-motion: reduce`, all transitions collapse to instant and carousels stop auto-advancing; the storefront stays fully functional.
396
+
397
+ <!--
398
+ OmD v0.1 Sources — Philosophy Layer (sections 10–15)
399
+
400
+ Tier 1 live inspect (2026-06-26) via playwright getComputedStyle:
401
+ - https://web.queenit.kr/home/RECOMMENDATION (queenit.kr redirects here) — product/commerce UI:
402
+ brand purple #642fe9 (app icon, sampled rgb(100,47,233)); discount % rgb(113,79,216)=#714fd8 at 16px/600;
403
+ accent purple rgb(96,62,197)=#603ec5; pink rgb(229,77,118)=#e54d76; ink rgb(0,0,0); slate rgb(41,44,49)=#292c31;
404
+ muted rgb(170,175,187)=#aaafbb, rgb(125,133,151)=#7d8597; surface rgb(237,238,240)=#edeef0, rgb(242,243,245)=#f2f3f5;
405
+ hairline rgb(226,226,232)=#e2e2e8; radius 16px (cards), 8px (chips), 4px/6px (tags), 50% (circle icons);
406
+ shadow rgba(27,32,42,0.16) 0px 2px 6px -2px (chips), rgba(27,32,42,0.08) 0px 4px 8px -2px (floating icons);
407
+ font Pretendard. og:title "멋진 어른들의 라이프스타일링샵, 퀸잇", og:description "1000만이 사랑하는 멋과 스타일을 한 곳에".
408
+ - https://www.rapportlabs.kr (parent company / recruiting site) — corp identity: H3 38px/700 Pretendard,
409
+ body 14px/400 Noto Sans Korean, ink rgb(57,56,56)=#393838, yellow rgb(255,203,39)=#ffcb27.
410
+ Verbatim copy: "한국에서 가장 크고 소비력이 강한 4050 시장", "4050의 일상을 연결하는 라이프스타일 플랫폼",
411
+ "4050의 라이프를 책임지는 슈퍼앱이 되어 800만 MAU, 3조 이상의 거래액을 만듭니다".
412
+
413
+ Token-level claims (§1–9) are sourced from this live inspection. Full raw samples in
414
+ web/references/queenit/.verification.md.
415
+
416
+ Voice samples (§10) are verbatim from the live surfaces (queenit.kr meta + rapportlabs.kr headlines).
417
+
418
+ Brand narrative (§11): Rapportlabs (라포랩스) founded May 2020, Seoul; co-CEOs 최희민 / 홍주영;
419
+ Queenit (퀸잇) launched Sept 2020 as a 4050 women's fashion-commerce app. These founding details are
420
+ general public knowledge corroborated by company-profile aggregators (THE VC, Wanted, Rocketpunch,
421
+ 한국경제인협회 startup story) via web search 2026-06-26 — not directly quoted from a verified
422
+ Rapportlabs statement in this turn. Market-ambition figures (8M MAU, 3조+ GMV) are verbatim from the
423
+ live corporate site.
424
+
425
+ Personas (§13) are fictional archetypes informed by publicly observable Queenit user segments
426
+ (Korean women in their 40s–50s shopping fashion on mobile). Names are illustrative; they do not refer
427
+ to real people.
428
+
429
+ Interpretive claims (e.g., "photography leads, chrome follows", "value is the message",
430
+ "respect the grown-up shopper") are editorial readings connecting Queenit's observed design to its
431
+ positioning, not directly sourced company statements.
432
+ -->