oh-my-design-cli 1.8.6 → 1.9.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 (275) hide show
  1. package/.claude/hooks/lib/preferences-parser.cjs +1 -0
  2. package/.claude/hooks/lib/preferences-writer.cjs +1 -0
  3. package/.claude/hooks/post-edit-watch.cjs +1 -0
  4. package/.claude/hooks/session-end-foldin.cjs +1 -0
  5. package/.claude/hooks/session-state-loader.cjs +1 -0
  6. package/.claude/hooks/skill-activation.cjs +1 -0
  7. package/.claude/settings.json +10 -1
  8. package/.github/assets/logo-bg.png +0 -0
  9. package/AGENTS.md +20 -1
  10. package/CHANGELOG.md +482 -0
  11. package/MIGRATION.md +103 -0
  12. package/README.ja.md +56 -19
  13. package/README.ko.md +47 -30
  14. package/README.md +48 -30
  15. package/README.zh-TW.md +59 -22
  16. package/agents/AGENT.md +8 -7
  17. package/agents/omd-codex-image.md +1 -1
  18. package/agents/omd-critic.md +6 -7
  19. package/agents/omd-designer-review.md +1 -1
  20. package/agents/omd-final-qa.md +1 -1
  21. package/agents/omd-humanizer.md +38 -0
  22. package/agents/omd-kr-writer.md +3 -4
  23. package/agents/omd-locale-adapter.md +12 -16
  24. package/agents/omd-master.md +24 -19
  25. package/agents/omd-microcopy.md +1 -1
  26. package/agents/omd-orchestrator.md +7 -8
  27. package/agents/omd-slop-auditor.md +31 -0
  28. package/agents/omd-ux-researcher.md +1 -1
  29. package/data/reference-fingerprints.json +2761 -85
  30. package/dist/bin/oh-my-design.js +16 -8
  31. package/dist/bin/oh-my-design.js.map +1 -1
  32. package/dist/chunk-UJIHCEYF.js +99 -0
  33. package/dist/chunk-UJIHCEYF.js.map +1 -0
  34. package/dist/doctor-LDWSFM3I.js +763 -0
  35. package/dist/doctor-LDWSFM3I.js.map +1 -0
  36. package/dist/install-skills-ZZFNJ2II.js +1120 -0
  37. package/dist/install-skills-ZZFNJ2II.js.map +1 -0
  38. package/docs/CLI_QUICKSTART.md +157 -0
  39. package/package.json +25 -4
  40. package/scripts/postinstall.cjs +5 -4
  41. package/skills/claude-design/SKILL.md +38 -14
  42. package/skills/claude-design/references/claude-design-flow.md +11 -11
  43. package/skills/claude-design/references/codebase-analysis.md +5 -4
  44. package/skills/omd-final-qa/SKILL.md +1 -1
  45. package/skills/omd-harness/SKILL.md +51 -50
  46. package/skills/omd-humanize/SKILL.md +116 -0
  47. package/skills/omd-humanize/agents/openai.yaml +4 -0
  48. package/skills/omd-humanize/references/locale-playbooks.md +102 -0
  49. package/skills/omd-humanize/references/sources.md +11 -0
  50. package/skills/omd-init/SKILL.md +18 -12
  51. package/skills/omd-locale-adapter/SKILL.md +58 -91
  52. package/skills/omd-orchestrator/SKILL.md +11 -5
  53. package/skills/omd-reference-capture/SKILL.md +80 -26
  54. package/skills/omd-reference-capture/scripts/PLAYWRIGHT-LICENSE.txt +202 -0
  55. package/skills/omd-reference-capture/scripts/PLAYWRIGHT-NOTICE.txt +5 -0
  56. package/skills/omd-reference-capture/scripts/THIRD_PARTY_NOTICES.md +3 -0
  57. package/skills/omd-reference-capture/scripts/capture-reference-evidence.mjs +159906 -0
  58. package/skills/omd-slop-audit/SKILL.md +110 -0
  59. package/skills/omd-slop-audit/agents/openai.yaml +4 -0
  60. package/skills/omd-slop-audit/references/pattern-catalog.md +96 -0
  61. package/skills/omd-slop-audit/references/sources.md +24 -0
  62. package/web/references/104/DESIGN.md +354 -0
  63. package/web/references/11st/DESIGN.md +197 -316
  64. package/web/references/29cm/DESIGN.md +297 -393
  65. package/web/references/42dot/DESIGN.md +390 -0
  66. package/web/references/8percent/DESIGN.md +438 -0
  67. package/web/references/ably/DESIGN.md +267 -572
  68. package/web/references/acer/DESIGN.md +329 -0
  69. package/web/references/airbnb/DESIGN.md +219 -557
  70. package/web/references/airbridge/DESIGN.md +451 -0
  71. package/web/references/alipay/DESIGN.md +179 -420
  72. package/web/references/apple/DESIGN.md +224 -498
  73. package/web/references/asleep/DESIGN.md +402 -0
  74. package/web/references/au/DESIGN.md +334 -0
  75. package/web/references/autopedia/DESIGN.md +382 -0
  76. package/web/references/aws-cloudscape/DESIGN.md +241 -0
  77. package/web/references/baemin/DESIGN.md +332 -491
  78. package/web/references/banksalad/DESIGN.md +269 -180
  79. package/web/references/barogo/DESIGN.md +416 -0
  80. package/web/references/beusable/DESIGN.md +464 -0
  81. package/web/references/bigin/DESIGN.md +454 -0
  82. package/web/references/bilibili/DESIGN.md +206 -374
  83. package/web/references/bmw/DESIGN.md +162 -276
  84. package/web/references/brandi/DESIGN.md +184 -325
  85. package/web/references/buzzvil/DESIGN.md +457 -0
  86. package/web/references/cafe24/DESIGN.md +472 -0
  87. package/web/references/catchtable/DESIGN.md +219 -264
  88. package/web/references/cgv/DESIGN.md +317 -0
  89. package/web/references/channeltalk/DESIGN.md +210 -336
  90. package/web/references/china-airlines/DESIGN.md +291 -0
  91. package/web/references/cjonstyle/DESIGN.md +453 -0
  92. package/web/references/class101/DESIGN.md +168 -387
  93. package/web/references/classum/DESIGN.md +228 -203
  94. package/web/references/claude/DESIGN.md +242 -479
  95. package/web/references/clay/DESIGN.md +179 -377
  96. package/web/references/clickhouse/DESIGN.md +254 -343
  97. package/web/references/codeit/DESIGN.md +470 -0
  98. package/web/references/cohere/DESIGN.md +214 -324
  99. package/web/references/coinone/DESIGN.md +199 -179
  100. package/web/references/corca/DESIGN.md +414 -0
  101. package/web/references/coupang/DESIGN.md +205 -475
  102. package/web/references/cursor/DESIGN.md +240 -381
  103. package/web/references/dabang/DESIGN.md +248 -213
  104. package/web/references/dable/DESIGN.md +431 -0
  105. package/web/references/datarize/DESIGN.md +338 -0
  106. package/web/references/dealicious/DESIGN.md +402 -0
  107. package/web/references/drdiary/DESIGN.md +404 -0
  108. package/web/references/elastic/DESIGN.md +238 -0
  109. package/web/references/elevenlabs/DESIGN.md +183 -321
  110. package/web/references/elice/DESIGN.md +445 -0
  111. package/web/references/eslite/DESIGN.md +257 -0
  112. package/web/references/evaair/DESIGN.md +338 -0
  113. package/web/references/expo/DESIGN.md +238 -331
  114. package/web/references/familymart-tw/DESIGN.md +254 -0
  115. package/web/references/ferrari/DESIGN.md +160 -377
  116. package/web/references/figma/DESIGN.md +197 -451
  117. package/web/references/fitpet/DESIGN.md +445 -0
  118. package/web/references/flex/DESIGN.md +170 -253
  119. package/web/references/framer/DESIGN.md +197 -340
  120. package/web/references/freee/DESIGN.md +211 -533
  121. package/web/references/friendliai/DESIGN.md +431 -0
  122. package/web/references/frip/DESIGN.md +440 -0
  123. package/web/references/furiosaai/DESIGN.md +450 -0
  124. package/web/references/gangnamunni/DESIGN.md +154 -591
  125. package/web/references/gaudiolab/DESIGN.md +414 -0
  126. package/web/references/google/DESIGN.md +290 -398
  127. package/web/references/goorm/DESIGN.md +470 -0
  128. package/web/references/greencar/DESIGN.md +420 -0
  129. package/web/references/hackle/DESIGN.md +472 -0
  130. package/web/references/hashicorp/DESIGN.md +273 -318
  131. package/web/references/heydealer/DESIGN.md +429 -0
  132. package/web/references/humanscape/DESIGN.md +433 -0
  133. package/web/references/hwahae/DESIGN.md +453 -0
  134. package/web/references/hyundai/DESIGN.md +158 -368
  135. package/web/references/hyundaicard/DESIGN.md +171 -121
  136. package/web/references/ibm/DESIGN.md +227 -378
  137. package/web/references/idus/DESIGN.md +450 -0
  138. package/web/references/igaworks/DESIGN.md +437 -0
  139. package/web/references/inflearn/DESIGN.md +221 -366
  140. package/web/references/intuit/DESIGN.md +244 -0
  141. package/web/references/jandi/DESIGN.md +191 -291
  142. package/web/references/jobplanet/DESIGN.md +415 -0
  143. package/web/references/kakao/DESIGN.md +287 -475
  144. package/web/references/kakaobank/DESIGN.md +220 -521
  145. package/web/references/kakaogames/DESIGN.md +220 -0
  146. package/web/references/kakaopay/DESIGN.md +207 -526
  147. package/web/references/karrot/DESIGN.md +227 -251
  148. package/web/references/kb-kookmin/DESIGN.md +308 -0
  149. package/web/references/kbank/DESIGN.md +220 -175
  150. package/web/references/kcd/DESIGN.md +432 -0
  151. package/web/references/kmong/DESIGN.md +281 -356
  152. package/web/references/krds/DESIGN.md +245 -19
  153. package/web/references/kream/DESIGN.md +224 -359
  154. package/web/references/kurly/DESIGN.md +211 -533
  155. package/web/references/kyobobook/DESIGN.md +445 -0
  156. package/web/references/lablup/DESIGN.md +474 -0
  157. package/web/references/lamborghini/DESIGN.md +198 -360
  158. package/web/references/lemonbase/DESIGN.md +452 -0
  159. package/web/references/lguplus/DESIGN.md +259 -0
  160. package/web/references/likelion/DESIGN.md +283 -0
  161. package/web/references/line/DESIGN.md +396 -355
  162. package/web/references/linear.app/DESIGN.md +209 -562
  163. package/web/references/lotteon/DESIGN.md +386 -0
  164. package/web/references/lovable/DESIGN.md +255 -349
  165. package/web/references/makinarocks/DESIGN.md +242 -0
  166. package/web/references/maum-ai/DESIGN.md +423 -0
  167. package/web/references/medibloc/DESIGN.md +425 -0
  168. package/web/references/megabox/DESIGN.md +232 -0
  169. package/web/references/mercari/DESIGN.md +217 -434
  170. package/web/references/microsoft/DESIGN.md +234 -388
  171. package/web/references/mildang/DESIGN.md +411 -0
  172. package/web/references/millie/DESIGN.md +183 -504
  173. package/web/references/minimax/DESIGN.md +264 -322
  174. package/web/references/miricanvas/DESIGN.md +182 -355
  175. package/web/references/miro/DESIGN.md +234 -232
  176. package/web/references/mistral.ai/DESIGN.md +231 -314
  177. package/web/references/mixi/DESIGN.md +234 -0
  178. package/web/references/moin/DESIGN.md +445 -0
  179. package/web/references/mongodb/DESIGN.md +219 -316
  180. package/web/references/moreh/DESIGN.md +437 -0
  181. package/web/references/musinsa/DESIGN.md +184 -510
  182. package/web/references/mynavi/DESIGN.md +242 -0
  183. package/web/references/myrealtrip/DESIGN.md +169 -406
  184. package/web/references/naver/DESIGN.md +328 -499
  185. package/web/references/naverwebtoon/DESIGN.md +172 -395
  186. package/web/references/neosapience/DESIGN.md +441 -0
  187. package/web/references/nhn/DESIGN.md +169 -346
  188. package/web/references/nhncloud/DESIGN.md +185 -123
  189. package/web/references/nota/DESIGN.md +451 -0
  190. package/web/references/notion/DESIGN.md +271 -475
  191. package/web/references/nrise/DESIGN.md +417 -0
  192. package/web/references/ohouse/DESIGN.md +210 -549
  193. package/web/references/oliveyoung/DESIGN.md +217 -326
  194. package/web/references/ollama/DESIGN.md +241 -308
  195. package/web/references/onestore/DESIGN.md +248 -0
  196. package/web/references/palantir/DESIGN.md +256 -0
  197. package/web/references/panasonic/DESIGN.md +276 -0
  198. package/web/references/patternfly/DESIGN.md +259 -0
  199. package/web/references/payhere/DESIGN.md +438 -0
  200. package/web/references/pega/DESIGN.md +262 -0
  201. package/web/references/peoplefund/DESIGN.md +431 -0
  202. package/web/references/petfriends/DESIGN.md +428 -0
  203. package/web/references/pinkfong/DESIGN.md +199 -367
  204. package/web/references/pinterest/DESIGN.md +258 -308
  205. package/web/references/portone/DESIGN.md +446 -0
  206. package/web/references/poya/DESIGN.md +286 -0
  207. package/web/references/pozalabs/DESIGN.md +438 -0
  208. package/web/references/protopie/DESIGN.md +419 -0
  209. package/web/references/qraft/DESIGN.md +448 -0
  210. package/web/references/queenit/DESIGN.md +432 -0
  211. package/web/references/quotabook/DESIGN.md +449 -0
  212. package/web/references/rebellions/DESIGN.md +449 -0
  213. package/web/references/recruit/DESIGN.md +247 -0
  214. package/web/references/remember/DESIGN.md +202 -396
  215. package/web/references/resend/DESIGN.md +274 -348
  216. package/web/references/returnzero/DESIGN.md +460 -0
  217. package/web/references/sakura-internet/DESIGN.md +269 -0
  218. package/web/references/samsung/DESIGN.md +157 -359
  219. package/web/references/sandoll/DESIGN.md +445 -0
  220. package/web/references/sanity/DESIGN.md +241 -375
  221. package/web/references/saramin/DESIGN.md +465 -0
  222. package/web/references/scatterlab/DESIGN.md +412 -0
  223. package/web/references/selectstar/DESIGN.md +439 -0
  224. package/web/references/servicenow/DESIGN.md +289 -0
  225. package/web/references/shiftee/DESIGN.md +468 -0
  226. package/web/references/shinhanbank/DESIGN.md +161 -341
  227. package/web/references/shinhancard/DESIGN.md +208 -319
  228. package/web/references/sionic/DESIGN.md +454 -0
  229. package/web/references/sktelecom/DESIGN.md +310 -0
  230. package/web/references/socar/DESIGN.md +125 -32
  231. package/web/references/softbank/DESIGN.md +231 -0
  232. package/web/references/solapi/DESIGN.md +483 -0
  233. package/web/references/sony/DESIGN.md +234 -0
  234. package/web/references/soop/DESIGN.md +261 -0
  235. package/web/references/spacex/DESIGN.md +184 -323
  236. package/web/references/spotify/DESIGN.md +253 -394
  237. package/web/references/squeezebits/DESIGN.md +441 -0
  238. package/web/references/stayfolio/DESIGN.md +422 -0
  239. package/web/references/stripe/DESIGN.md +212 -491
  240. package/web/references/supabase/DESIGN.md +244 -316
  241. package/web/references/supertone/DESIGN.md +413 -0
  242. package/web/references/tabling/DESIGN.md +415 -0
  243. package/web/references/taishinbank/DESIGN.md +243 -0
  244. package/web/references/teamlab/DESIGN.md +240 -0
  245. package/web/references/teamsparta/DESIGN.md +472 -0
  246. package/web/references/tellingme/DESIGN.md +392 -0
  247. package/web/references/tesla/DESIGN.md +244 -427
  248. package/web/references/thsr/DESIGN.md +284 -0
  249. package/web/references/thumbtack/DESIGN.md +302 -0
  250. package/web/references/together.ai/DESIGN.md +257 -304
  251. package/web/references/toss/DESIGN.md +251 -593
  252. package/web/references/toss-securities/DESIGN.md +255 -178
  253. package/web/references/tossbank/DESIGN.md +195 -491
  254. package/web/references/toyota/DESIGN.md +238 -0
  255. package/web/references/tving/DESIGN.md +197 -245
  256. package/web/references/typed/DESIGN.md +413 -0
  257. package/web/references/uber/DESIGN.md +256 -333
  258. package/web/references/udn/DESIGN.md +250 -0
  259. package/web/references/upbit/DESIGN.md +145 -256
  260. package/web/references/upstage/DESIGN.md +211 -204
  261. package/web/references/uswds/DESIGN.md +287 -0
  262. package/web/references/vercel/DESIGN.md +236 -440
  263. package/web/references/vuno/DESIGN.md +413 -0
  264. package/web/references/wanted/DESIGN.md +215 -487
  265. package/web/references/weverse/DESIGN.md +437 -0
  266. package/web/references/wise/DESIGN.md +223 -231
  267. package/web/references/wisetracker/DESIGN.md +462 -0
  268. package/web/references/wooribank/DESIGN.md +245 -0
  269. package/web/references/yanolja/DESIGN.md +250 -419
  270. package/web/references/yeogiotte/DESIGN.md +235 -418
  271. package/web/references/zapier/DESIGN.md +256 -377
  272. package/web/references/zendesk/DESIGN.md +288 -0
  273. package/web/references/zigzag/DESIGN.md +200 -621
  274. package/dist/install-skills-7UUDOLG2.js +0 -734
  275. package/dist/install-skills-7UUDOLG2.js.map +0 -1
@@ -0,0 +1,428 @@
1
+ ---
2
+ id: petfriends
3
+ name: Pet Friends
4
+ display_name_kr: 펫프렌즈
5
+ country: KR
6
+ category: ecommerce
7
+ homepage: "https://www.pet-friends.co.kr/"
8
+ primary_color: "#ff4081"
9
+ logo:
10
+ type: favicon
11
+ slug: "https://www.google.com/s2/favicons?domain=pet-friends.co.kr&sz=128"
12
+ verified: "2026-07-02"
13
+ added: "2026-07-02"
14
+ omd: "0.1"
15
+ tokens:
16
+ source: live-extract
17
+ extracted: "2026-07-02"
18
+ note: "primary = live vivid pink #ff4081 (Material Pink A400) used as emphasis type + solid action fills; deeper magenta #ea306f for sale copy; signal red #f33f46 for discount %. Charcoal ink #2d3035 for text. Near-flat/shadowless system — separation via tint + #e9ebec hairlines."
19
+ colors:
20
+ primary: "#ff4081"
21
+ primary-deep: "#ea306f"
22
+ discount: "#f33f46"
23
+ surface-pink: "#fff1f5"
24
+ pink-soft: "#ffaac7"
25
+ ink: "#2d3035"
26
+ ink-pure: "#000000"
27
+ muted: "#9ca1aa"
28
+ surface: "#f8f8f8"
29
+ surface-alt: "#fafafa"
30
+ hairline: "#e9ebec"
31
+ overlay: "#1c1e21"
32
+ accent-blue: "#6078e4"
33
+ canvas: "#ffffff"
34
+ on-primary: "#ffffff"
35
+ typography:
36
+ family: { brand: "Lific", fallback: "Noto Sans KR" }
37
+ section-title: { size: 18, weight: 700, lineHeight: 1.30, tracking: -0.2, use: "Section headings (H2), Lific Bold" }
38
+ emphasis: { size: 18, weight: 900, tracking: -0.2, use: "Emphasized phrase inside a heading, pink #ff4081" }
39
+ discount: { size: 16, weight: 700, lineHeight: 1.38, tracking: -0.32, use: "Discount percentage, signal red #f33f46" }
40
+ label: { size: 14, weight: 700, tracking: -0.2, use: "Bold UI labels (delivery address, tabs)" }
41
+ body: { size: 14, weight: 400, use: "Standard reading text, Noto Sans KR fallback" }
42
+ product-title: { size: 13, weight: 400, lineHeight: 1.38, tracking: -0.2, use: "Product names in cards" }
43
+ spacing: { xs: 4, sm: 8, md: 12, base: 15, lg: 16, gutter: 44 }
44
+ rounded: { sm: 6, md: 8, lg: 16, pill: 36, full: 9999 }
45
+ shadow:
46
+ none: "none"
47
+ components:
48
+ chip-category: { type: button, bg: "#fff1f5", fg: "#000000", radius: "36px", padding: "4px 8px 4px 12px", height: "32px", use: "Header category / delivery-address selector chip" }
49
+ pill-keyword: { type: badge, bg: "#ffaac7", fg: "#ffffff", radius: "19px", padding: "3px 15px", height: "30px", use: "Trending search-keyword pill (rendered at 0.5 alpha over hero)" }
50
+ input-search: { type: input, bg: "#ffffff", fg: "#2d3035", border: "1px solid #e9ebec", radius: "6px", padding: "15px 44px 15px 16px", height: "52px", font: "20px / 500 Lific", use: "Main product search field, placeholder 어떤 상품을 찾으시나요?" }
51
+ card-product: { type: card, bg: "#f8f8f8", radius: "16px", use: "Product image card surface in grids / carousels" }
52
+ button-primary: { type: button, bg: "#ff4081", fg: "#ffffff", font: "16px / 700 Lific", use: "Primary brand action — solid pink fill (add-to-cart / buy)" }
53
+ badge-overlay: { type: badge, bg: "#1c1e21", fg: "#ffffff", radius: "20px", padding: "5px 8px", use: "Carousel index / image counter (rendered at 0.6 alpha)" }
54
+ avatar-round: { type: avatar, radius: "9999px", use: "Circular avatar / icon frame (border-radius 50%)" }
55
+ components_harvested: true
56
+ ---
57
+
58
+ # Design System Inspiration of Pet Friends
59
+
60
+ ## 1. Visual Theme & Atmosphere
61
+
62
+ Pet Friends (펫프렌즈) is Korea's self-described "반려동물 1등 쇼핑몰" (No.1 pet shopping mall), and its interface reads like a friendly, high-energy commerce app built for anxious-but-loving pet parents (집사님). The canvas is pure white (`#ffffff`) broken up by soft grey product surfaces (`#f8f8f8`) and warm pink tints (`#fff1f5`), so the page feels bright and merchandising-forward rather than clinical. Text sits in a soft charcoal (`#2d3035`) — never a harsh pure black for reading copy — which keeps the dense product grids legible without feeling heavy. The signature move is color as emotion: a single vivid pink (`#ff4081`, Material's Pink A400) carries the brand's affection and doubles as the "do this" action color.
63
+
64
+ The typographic personality is warm and declarative. Section headlines run in the brand's custom **Lific** typeface at 18px / weight 700 with tight `-0.2px` tracking, and the persuasive word in each headline jumps to **weight 900 in pink** (`#ff4081`) — e.g. "재구매율 **89%**", "최저가 **도전 사료 모음!**", "집사님을 위한 **오늘 특가!**". Body and product-name text drop to Lific / **Noto Sans KR** at 13–14px weight 400, optimized for dense hangul product listings. This heavy-pink-emphasis-over-quiet-grey-body split is the core tension of the system: shout the deal, whisper the detail.
65
+
66
+ What distinguishes Pet Friends from generic marketplaces is its commitment to friendly geometry and near-flat depth. Interactive chrome leans hard into the pill and the rounded rectangle: category chips at 36px radius on a pink tint (`#fff1f5`), soft-pink search-keyword pills (`#ffaac7`) at ~19px radius, product cards at a comfortable 16px, and circular avatars. Live inspection returned `box-shadow: none` on chips, inputs, and headings — separation comes from tinted surfaces, thin `#e9ebec` hairlines, and a near-black image overlay (`#1c1e21`), not from elevation. Price urgency gets its own dedicated signal red (`#f33f46`) for discount percentages and a deeper magenta (`#ea306f`) for sale copy, keeping the primary pink from being diluted by commerce noise. A periwinkle accent-blue (`#6078e4`) and alternate light surface (`#fafafa`) show up on promotional landing bands.
67
+
68
+ **Key Characteristics:**
69
+ - Custom **Lific** typeface with **Noto Sans KR** fallback — one warm family across display and body
70
+ - Single vivid pink (`#ff4081`) as both emotional brand color and primary action fill
71
+ - Heading emphasis in weight 900 pink; quiet 13–14px weight-400 grey body (`#2d3035`)
72
+ - Friendly geometry — 36px chips, ~19px keyword pills, 16px cards, circular avatars
73
+ - Near-flat / shadowless: tint surfaces (`#f8f8f8`, `#fff1f5`) + `#e9ebec` hairlines do the separating
74
+ - Dedicated commerce signals: signal red (`#f33f46`) for discount %, deeper magenta (`#ea306f`) for sale copy
75
+ - Near-black overlay (`#1c1e21`) for image counters instead of drop shadows
76
+ - Muted grey ladder (`#9ca1aa`) for secondary/metadata text
77
+
78
+ ## 2. Color Palette & Roles
79
+
80
+ ### Primary
81
+ - **Pet Friends Pink** (`#ff4081`): The brand's signature vivid pink (Material Pink A400). Used for weight-900 emphasis words in headlines, solid primary-action button/badge fills, and brand accents. The system's single "do this" color.
82
+ - **Deep Magenta** (`#ea306f`): A deeper pink-magenta for sale copy and secondary emphasis text where the primary pink would be too light.
83
+
84
+ ### Text
85
+ - **Ink Charcoal** (`#2d3035`): Primary text, headings, product names, labels. A soft near-black used instead of pure black for reading comfort in dense grids.
86
+ - **Pure Black** (`#000000`): Maximum-contrast text used on some hero headings and chip labels.
87
+ - **Muted Grey** (`#9ca1aa`): Tertiary text, captions, metadata, disabled labels.
88
+
89
+ ### Commerce Signals
90
+ - **Signal Red** (`#f33f46`): The discount-percentage color — used almost exclusively on the bold "17%", "50%", "36%" markdown that drives conversion.
91
+
92
+ ### Surface & Neutral
93
+ - **Pure White** (`#ffffff`): Page background, card surfaces, and text on pink/dark fills.
94
+ - **Product Grey** (`#f8f8f8`): The light-grey image surface behind product photography in cards and carousels.
95
+ - **Alt Surface** (`#fafafa`): A slightly warmer alternate light surface for promotional landing bands.
96
+ - **Surface Pink** (`#fff1f5`): A pale pink tint used as the background of header category / delivery chips.
97
+ - **Soft Pink** (`#ffaac7`): The soft pink of the trending search-keyword pills (rendered at 0.5 alpha over the hero imagery).
98
+ - **Hairline** (`#e9ebec`): Thin borders, input outlines, and dividers — the primary separation device given the shadow-free system.
99
+ - **Overlay Ink** (`#1c1e21`): A near-black used (at ~0.6 alpha) for image overlays and carousel index counters.
100
+
101
+ ### Accent
102
+ - **Accent Blue** (`#6078e4`): A periwinkle blue used sparingly on promotional / event landing bands as a secondary accent to the pink.
103
+ - **On-Primary White** (`#ffffff`): Text and iconography on pink, magenta, and dark overlay fills.
104
+
105
+ ## 3. Typography Rules
106
+
107
+ ### Font Family
108
+ - **Brand**: `Lific` — Pet Friends' custom typeface, used across headings, UI, and body.
109
+ - **Fallback**: `Noto Sans KR` — the hangul fallback that carries dense product-listing and body copy.
110
+
111
+ ### Hierarchy
112
+
113
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
114
+ |------|------|------|--------|-------------|----------------|-------|
115
+ | Section Heading | Lific | 18px (1.13rem) | 700 | ~1.30 | -0.2px | H2 section titles ("맘마값 부담 DOWN…") |
116
+ | Emphasis | Lific | 18px (1.13rem) | 900 | normal | -0.2px | Emphasized phrase in a heading, pink `#ff4081` |
117
+ | Discount | Lific | 16px (1.00rem) | 700 | 1.38 (22px) | -0.32px | Discount percentage, signal red `#f33f46` |
118
+ | Label | Lific | 14px (0.88rem) | 700 | ~1.48 | -0.2px | Bold UI labels (배송지 입력, tabs) |
119
+ | Body | Noto Sans KR | 14px (0.88rem) | 400 | normal | normal | Standard reading text |
120
+ | Product Title | Lific | 13px (0.81rem) | 400 | 1.38 (18px) | -0.2px | Product names in cards |
121
+
122
+ ### Principles
123
+ - **Bold pink emphasis, quiet grey body**: Headlines carry a weight-900 pink phrase for the persuasive beat; product names and body drop to weight 400 charcoal. The weight-and-color jump is the primary hierarchy signal.
124
+ - **Tight negative tracking on headings**: -0.2px on titles, -0.32px on discount figures. Body stays at normal tracking.
125
+ - **Hangul-first sizing**: Product titles sit at a deliberate 13px, body at 14px — dense enough for merchandising grids, legible for hangul.
126
+ - **One warm family**: Lific covers display and UI; Noto Sans KR is the reading/fallback voice. There is no second display typeface competing for attention.
127
+
128
+ ## 4. Component Stylings
129
+
130
+ ### Buttons
131
+
132
+ **Primary Action (Pink)**
133
+ - Background: `#ff4081`
134
+ - Text: `#ffffff`
135
+ - Font: 16px Lific weight 700
136
+ - Use: Primary brand action — the solid vivid-pink fill used for add-to-cart / buy and headline CTAs
137
+
138
+ **Category / Delivery Chip**
139
+ - Background: `#fff1f5`
140
+ - Text: `#000000`
141
+ - Radius: 36px
142
+ - Padding: 4px 8px 4px 12px
143
+ - Height: 32px
144
+ - Use: Header chips for category ("강아지") and delivery-address ("배송지 입력") selection
145
+
146
+ ### Inputs
147
+
148
+ **Search Field**
149
+ - Background: `#ffffff`
150
+ - Text: `#2d3035`
151
+ - Border: 1px solid `#e9ebec`
152
+ - Radius: 6px
153
+ - Padding: 15px 44px 15px 16px
154
+ - Height: 52px
155
+ - Font: 20px Lific weight 500
156
+ - Use: Main product search — placeholder "어떤 상품을 찾으시나요?"
157
+
158
+ ### Cards
159
+
160
+ **Product Card**
161
+ - Background: `#f8f8f8`
162
+ - Radius: 16px
163
+ - Use: Light-grey image surface behind product photography in grids and carousels
164
+
165
+ ### Badges
166
+
167
+ **Search-Keyword Pill**
168
+ - Background: `#ffaac7`
169
+ - Text: `#ffffff`
170
+ - Radius: 19px
171
+ - Padding: 3px 15px
172
+ - Height: 30px
173
+ - Use: Trending search-keyword pills on the hero (rendered at 0.5 alpha)
174
+
175
+ **Image Counter Overlay**
176
+ - Background: `#1c1e21`
177
+ - Text: `#ffffff`
178
+ - Radius: 20px
179
+ - Padding: 5px 8px
180
+ - Use: Carousel index / image counter ("2/14"), rendered at ~0.6 alpha over media
181
+
182
+ ### Avatars
183
+
184
+ **Circular Frame**
185
+ - Radius: 9999px (border-radius 50%)
186
+ - Use: Circular avatar / icon frame in list and community surfaces
187
+
188
+ ---
189
+
190
+ **Verified:** 2026-07-02 (omd:add-reference CREATE — Tier 1 live inspect, 3 surfaces)
191
+ **Tier 1 sources:** https://www.pet-friends.co.kr/ , https://m.pet-friends.co.kr/main/product/list/16982
192
+ **Tier 2 sources:** getdesign.md/petfriends (0 files) ; styles.refero.design/?q=petfriends (no genuine Pet Friends entry — returns generic default styles)
193
+ **Conflicts unresolved:** none
194
+
195
+ ## 5. Layout Principles
196
+
197
+ ### Spacing System
198
+ - Base units (measured): 4px, 8px, 12px, 15px, 16px, 44px
199
+ - Notable: chip padding lands at an asymmetric `4px 8px 4px 12px` (room for a trailing chevron icon); the search field reserves a 44px right gutter for its search/clear icon
200
+
201
+ ### Grid & Container
202
+ - Mobile-first, single-column app shell (the desktop `www` host redirects to the `m.` mobile commerce surface)
203
+ - Sticky header: category + delivery chips over a full-width search field
204
+ - Trending-keyword pill row directly beneath search
205
+ - Product merchandising in horizontally scrolling carousels and 2-up grids, each product on a `#f8f8f8` card at 16px radius
206
+ - Section headlines ("최저가 도전 사료 모음!") anchor each merchandising band
207
+
208
+ ### Whitespace Philosophy
209
+ - **Merchandising density with breathing room**: product grids are information-rich, but each card gets a clean grey surface and generous rounding so the page never feels cramped.
210
+ - **Flat segmentation**: sections separate by background tint (`#f8f8f8` grey, `#fff1f5` pink, `#fafafa` alt) and `#e9ebec` hairlines, not shadow.
211
+ - **Pill rhythm**: repeated rounded chips and pills create a consistent, friendly horizontal cadence.
212
+
213
+ ### Border Radius Scale
214
+ - Small (6px): search input
215
+ - Medium (8px): icon buttons, small controls
216
+ - Large (16px): product cards, content containers — the workhorse
217
+ - Pill (36px): category / delivery chips
218
+ - Full (9999px / 50%): keyword pills, avatars, circular frames
219
+
220
+ ## 6. Depth & Elevation
221
+
222
+ | Level | Treatment | Use |
223
+ |-------|-----------|-----|
224
+ | Flat (Level 0) | No shadow | Page background, chips, inputs, headings |
225
+ | Tint (Level 1) | `#f8f8f8` / `#fff1f5` / `#fafafa` background shift | Card & section separation without elevation |
226
+ | Hairline (Level 2) | `1px solid #e9ebec` border | Input outlines, dividers |
227
+ | Overlay (Level 3) | `#1c1e21` at ~0.6 alpha | Image-on-media counters and scrims |
228
+
229
+ **Shadow Philosophy**: Pet Friends is a near-shadowless, flat system. Live inspection returned `box-shadow: none` across the header chips, search input, and headings. Depth and grouping come from flat tinted surfaces (`#f8f8f8`, `#fff1f5`), thin `#e9ebec` hairlines, and — where content sits on photography — a near-black `#1c1e21` overlay rather than a cast shadow. This keeps the commerce UI feeling fast, bright, and mobile-native. When emphasis is needed the system reaches for color (pink `#ff4081`, red `#f33f46`), never elevation.
230
+
231
+ ## 7. Do's and Don'ts
232
+
233
+ ### Do
234
+ - Use the custom Lific typeface (with Noto Sans KR fallback) across headings and body
235
+ - Reserve the vivid pink (`#ff4081`) for emphasis words and the primary action — keep it the single "do this" color
236
+ - Put the persuasive word of a headline in weight 900 pink; keep the rest quiet grey
237
+ - Use signal red (`#f33f46`) only for discount percentages, and deeper magenta (`#ea306f`) for sale copy
238
+ - Use soft charcoal (`#2d3035`) for reading text instead of pure black
239
+ - Separate sections with flat tints (`#f8f8f8`, `#fff1f5`) and `#e9ebec` hairlines, not shadows
240
+ - Use friendly geometry — 36px chips, 16px product cards, circular avatars
241
+ - Apply the `#1c1e21` overlay for counters/scrims on top of product imagery
242
+
243
+ ### Don't
244
+ - Spread the pink across many elements — it dilutes the single-action signal
245
+ - Use drop shadows for elevation — Pet Friends is a flat, shadow-free system
246
+ - Use signal red (`#f33f46`) for anything other than price/discount urgency
247
+ - Set headline emphasis in a light weight — the persuasive word is always weight 900
248
+ - Use pure black (`#000000`) for long-form body text — reserve charcoal `#2d3035`
249
+ - Introduce a competing display typeface — Lific owns the voice
250
+ - Use sharp square corners on chips, cards, or pills — everything is rounded
251
+ - Let the periwinkle accent-blue (`#6078e4`) compete with pink as a primary action
252
+
253
+ ## 8. Responsive Behavior
254
+
255
+ ### Breakpoints
256
+ | Name | Width | Key Changes |
257
+ |------|-------|-------------|
258
+ | Mobile | <640px | Primary target — single column app shell, chips + search header, carousels |
259
+ | Tablet | 640-1024px | Wider grids, 2–3-up product cards |
260
+ | Desktop | >1024px | `www` host redirects to the `m.` mobile commerce experience; layout stays app-width and centered |
261
+
262
+ ### Touch Targets
263
+ - Category / delivery chips at 32px height with asymmetric padding — comfortably tappable
264
+ - Search field at 52px height, full-width
265
+ - Keyword pills at 30px height, 3px 15px padding
266
+
267
+ ### Collapsing Strategy
268
+ - Header: category + delivery chips stay pinned above the search field
269
+ - Product carousels scroll horizontally on narrow viewports
270
+ - Merchandising bands stack vertically, each keeping its tinted background
271
+ - Product cards maintain 16px radius across breakpoints
272
+
273
+ ### Image Behavior
274
+ - Product photography sits on `#f8f8f8` card surfaces at all sizes, no shadow
275
+ - Media carousels carry the `#1c1e21` overlay counter regardless of viewport
276
+ - Cards maintain consistent 16px radius
277
+
278
+ ## 9. Agent Prompt Guide
279
+
280
+ ### Quick Color Reference
281
+ - Primary action / emphasis: Pet Friends Pink (`#ff4081`)
282
+ - Sale copy: Deep Magenta (`#ea306f`)
283
+ - Discount %: Signal Red (`#f33f46`)
284
+ - Background: Pure White (`#ffffff`)
285
+ - Product surface: Product Grey (`#f8f8f8`)
286
+ - Chip tint: Surface Pink (`#fff1f5`)
287
+ - Keyword pill: Soft Pink (`#ffaac7`)
288
+ - Text / headings: Ink Charcoal (`#2d3035`)
289
+ - Muted text: Muted Grey (`#9ca1aa`)
290
+ - Hairline: `#e9ebec`
291
+ - Overlay: `#1c1e21`
292
+ - Accent: Periwinkle (`#6078e4`)
293
+
294
+ ### Example Component Prompts
295
+ - "Create a mobile commerce header on white. A row of pill chips: `#fff1f5` background, `#000000` text, 36px radius, 4px 8px 4px 12px padding, 32px height (category + '배송지 입력'). Below it a 52px search field: white background, 1px solid `#e9ebec` border, 6px radius, 20px Lific text, placeholder '어떤 상품을 찾으시나요?'."
296
+ - "Design a section headline in Lific 18px weight 700, letter-spacing -0.2px, `#2d3035`, with the key phrase in weight 900 pink `#ff4081` — e.g. 최저가 **도전 사료 모음!**."
297
+ - "Build a product card: `#f8f8f8` background, 16px radius, no shadow. Product title 13px Lific weight 400, `#2d3035`. Discount percentage 16px weight 700 in signal red `#f33f46`."
298
+ - "Create a trending-keyword pill row: soft pink `#ffaac7` background, white text, 19px radius, 3px 15px padding, 30px height."
299
+
300
+ ### Iteration Guide
301
+ 1. Lific (Noto Sans KR fallback) everywhere; no second display face
302
+ 2. Pink (`#ff4081`) is the single action / emphasis color — don't spread it
303
+ 3. Headline emphasis word = weight 900 pink; body = weight 400 charcoal
304
+ 4. No shadows — separate with `#f8f8f8` / `#fff1f5` tint and `#e9ebec` hairlines
305
+ 5. Discount % is always signal red `#f33f46`; sale copy is deep magenta `#ea306f`
306
+ 6. Friendly geometry — 36px chips, 16px cards, circular avatars
307
+ 7. Overlay counters on media use `#1c1e21` at low alpha, never a cast shadow
308
+
309
+ ---
310
+
311
+ ## 10. Voice & Tone
312
+
313
+ Pet Friends' voice is **warm, playful, and reassuring** — it speaks to owners as fellow "집사" (butlers/servants of their pets) raising "내새꾸" (my babies), turning the transactional act of buying pet food into a caring, community-flavored ritual. The register is upbeat and benefit-first, unafraid of a pun: the search placeholder reads "어떤 상품을 찾고 있개?" — swapping 개 (dog) into "찾고 있어?" for a smile. Copy leads with the deal and the emotional payoff, then backs it with hard numbers (재구매율 89%, 최저가).
314
+
315
+ | Context | Tone |
316
+ |---|---|
317
+ | Section headlines | Upbeat, benefit-first, one emphasized phrase in pink. "집사님을 위한 오늘 특가!" |
318
+ | Product titles | Plain, descriptive, brand + spec. Quiet grey, no hype. |
319
+ | Discount / price | Numeric and confident. Big red "%", "최저가 도전". |
320
+ | Search / empty prompts | Playful, pet-punny. "어떤 상품을 찾고 있개?" |
321
+ | Trust / community copy | Warm, proof-backed. "써봐야 아니까! 심쿵 체험단", "재구매율 89%". |
322
+
323
+ **Voice samples (verbatim from live surfaces):**
324
+ - "반려동물 1등 쇼핑몰, 펫프렌즈" — page title / positioning. *(verified live 2026-07-02)*
325
+ - "내새꾸 친구들에게 재구매율 89%를 보이는 영양/기능" — merchandising headline (proof-backed care). *(verified live 2026-07-02)*
326
+ - "육아비는 펫프랑 나눠요\n집사님을 위한 오늘 특가!" — section headline (community + deal). *(verified live 2026-07-02)*
327
+ - "어떤 상품을 찾고 있개?" — search placeholder (pet pun). *(verified live 2026-07-02)*
328
+
329
+ **Forbidden register**: cold marketplace/logistics jargon, guilt-based pet-parent pressure, undefined promotional fine print, hype that isn't backed by a concrete number.
330
+
331
+ ## 11. Brand Narrative
332
+
333
+ Pet Friends (펫프렌즈) launched in **2015** and grew into Korea's leading pet-commerce platform, positioning itself plainly on every surface as the "반려동물 1등 쇼핑몰" (No.1 pet shopping mall). Its founding premise addressed a specific Korean pain point: pet owners buying food and supplies across fragmented offline shops and generic marketplaces, with little curation and slow delivery. Pet Friends reframed the category around fast (same-day / dawn) delivery of pet essentials, data-driven product curation, and a community of owners who trust each other's reviews.
334
+
335
+ The product's identity is built around the emotional relationship between owner and pet — the recurring "집사님" (butler) and "내새꾸" (my baby) language treats customers as devoted caregivers rather than shoppers. Merchandising leans on social proof ("재구매율 89%", "심쿵 체험단" trial squads) and price confidence ("최저가 도전"), reflecting a business that competes on trust, speed, and value at once.
336
+
337
+ What Pet Friends refuses, visible in its design: the cold, shadow-heavy chrome of a generic logistics marketplace, and the guilt-driven marketing sometimes used in the pet category. What it embraces: a bright, near-flat mobile-first interface; a single affectionate pink; playful, punny copy; and a relentless, number-backed focus on the deal — all in service of making caring for a pet feel joyful and effortless.
338
+
339
+ ## 12. Principles
340
+
341
+ 1. **Pink means love and action.** The vivid pink (`#ff4081`) is both the brand's warmth and its call-to-action. *UI implication:* reserve pink for emphasis words and the primary action so affection and "do this" read as the same gesture.
342
+ 2. **Owner as devoted caregiver.** Customers are 집사 raising 내새꾸, not buyers. *UI implication:* copy and empty states speak with warmth and play (the 개 pun), never cold transaction language.
343
+ 3. **Prove the promise.** Trust is earned with numbers — 재구매율 89%, 최저가, 체험단. *UI implication:* pair every persuasive headline with a concrete figure in red or bold.
344
+ 4. **Flat and fast.** A mobile-native commerce app should feel bright and quick. *UI implication:* no shadows; separate with tint and `#e9ebec` hairlines; keep cards clean and rounded.
345
+ 5. **Friendly geometry.** Rounded chips, pills, and cards make a data-dense store feel approachable. *UI implication:* use 36px chips, 16px cards, and circular frames; avoid sharp corners.
346
+
347
+ ## 13. Personas
348
+
349
+ *Personas below are fictional archetypes informed by publicly observable Pet Friends user segments (Korean dog and cat owners buying food and supplies online), not individual people.*
350
+
351
+ **김서연, 32, 서울.** A first-time puppy owner who orders food, treats, and pads weekly. Values same-day delivery and the "심쿵 체험단" trials that let her test products before committing. Chose Pet Friends because the app feels warm and the reviews feel honest, not like a faceless marketplace.
352
+
353
+ **이준호, 41, 경기.** A two-cat household manager who buys in bulk and chases "최저가 도전" deals. Scans the red discount percentages first, then the product title. Appreciates that the price signal is unmistakable without hunting through fine print.
354
+
355
+ **박민지, 27, 부산.** A dog owner active in the community and 체험단 program. Loves the playful copy ("찾고 있개?") and the sense that Pet Friends is run by fellow 집사. Trusts the "재구매율 89%" style proof more than star ratings.
356
+
357
+ ## 14. States
358
+
359
+ | State | Treatment |
360
+ |---|---|
361
+ | **Empty (search, no results)** | White canvas. Charcoal (`#2d3035`) line explaining no matching products, with a pink (`#ff4081`) suggestion to browse categories. Playful, never a dead end. |
362
+ | **Empty (cart)** | Charcoal single line plus a pink CTA back to shopping. Warm, low-pressure tone. |
363
+ | **Loading (product grid)** | Skeleton cards on `#f8f8f8` at final 16px-radius dimensions. Flat pulse, no shadow shimmer — consistent with the shadowless system. |
364
+ | **Loading (search)** | Inline spinner in the 52px field; previous results stay visible where possible. |
365
+ | **Error (fetch failed)** | Inline message in charcoal with a plain-language explanation and a retry. No bare "오류가 발생했습니다". |
366
+ | **Error (form validation)** | Field-level message below the input in a warm tone; describes what's valid, not just "필수". |
367
+ | **Success (added to cart)** | Brief confirmation in the pink brand tone; quick path to cart. No guilt, no clutter. |
368
+ | **Skeleton** | `#f8f8f8` blocks at final dimensions, 16px radius, flat pulse. |
369
+ | **Disabled** | Muted grey (`#9ca1aa`) text on reduced-opacity surface; pink actions fade rather than turn grey to preserve brand read. |
370
+
371
+ ## 15. Motion & Easing
372
+
373
+ **Durations**:
374
+
375
+ | Token | Value | Use |
376
+ |---|---|---|
377
+ | `motion-fast` | 120ms | Chip / pill press, hover, focus |
378
+ | `motion-standard` | 220ms | Card & sheet reveal, carousel slide, dropdown |
379
+ | `motion-slow` | 320ms | Page-level transitions, promotional reveals |
380
+
381
+ **Easings**:
382
+
383
+ | Token | Curve | Use |
384
+ |---|---|---|
385
+ | `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Arriving — sheets, cards, carousels |
386
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
387
+ | `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Two-way transitions |
388
+
389
+ **Motion rules**: Motion is friendly but quick — consistent with the bright, fast commerce feel. Pill chips respond to press with a subtle scale/opacity shift; product carousels slide at `motion-standard / ease-enter`; add-to-cart confirmations pop briefly in the pink tone. No heavy bounce that would slow browsing. Under `prefers-reduced-motion: reduce`, all transitions collapse to instant and the store remains fully functional.
390
+
391
+ <!--
392
+ OmD v0.1 Sources — Philosophy Layer (sections 10–15)
393
+
394
+ Tier 1 live inspect (2026-07-02) via playwright getComputedStyle on Pet Friends
395
+ mobile commerce surfaces (www.pet-friends.co.kr redirects to m.pet-friends.co.kr):
396
+ - Homepage (m.pet-friends.co.kr/main/tab/2): body font "Lific, Noto Sans KR";
397
+ section H2 18px/700/-0.2px color rgb(45,48,53) #2d3035 with <b> emphasis 18px/900
398
+ in rgb(255,64,129) #ff4081; product H3 13px/400/lh18px; discount <strong> 16px/700
399
+ color rgb(243,63,70) #f33f46; category chip bg rgb(255,241,245) #fff1f5 radius 36px;
400
+ keyword pill bg rgba(255,170,199,0.5) (#ffaac7) radius 18.5px; search input radius 6px
401
+ border-color rgb(233,235,236) #e9ebec text rgb(45,48,53); product card bg rgb(248,248,248)
402
+ #f8f8f8 radius 16px; overlay counter bg rgba(28,30,33,0.6) #1c1e21 radius 20px.
403
+ - Search surface (m.pet-friends.co.kr/search/result): same chip/pill/input system;
404
+ placeholders "어떤 상품을 찾으시나요?" and "어떤 상품을 찾고 있개?".
405
+ - Product-list surface (m.pet-friends.co.kr/main/product/list/16982): bg-frequency scan
406
+ showed rgb(255,64,129) #ff4081 ×20 (solid pink action fills), rgb(45,48,53) ×20,
407
+ rgb(96,120,228) #6078e4 ×20 (promo accent), rgb(250,250,250) #fafafa ×20; circular
408
+ avatar bg rgb(249,249,249) radius 50%.
409
+
410
+ Token-level claims (§1–9) are sourced from this live inspection; raw samples logged in
411
+ web/references/petfriends/.verification.md.
412
+
413
+ Voice samples (§10) are verbatim from live surfaces (page title, merchandising headlines,
414
+ search placeholder).
415
+
416
+ Brand narrative (§11): Pet Friends (펫프렌즈) is a Korean pet e-commerce platform that
417
+ launched in 2015 and positions itself as the "반려동물 1등 쇼핑몰" (verified live on the
418
+ homepage/title). Broader founding/company details beyond the on-site positioning are
419
+ general public knowledge and were not independently re-verified from a first-party Pet
420
+ Friends statement in this turn.
421
+
422
+ Personas (§13) are fictional archetypes informed by publicly observable Pet Friends user
423
+ segments (Korean dog/cat owners). Names are illustrative; they do not refer to real people.
424
+
425
+ Interpretive claims (e.g., "pink means love and action", "flat and fast as a rejection of
426
+ cold marketplace chrome") are editorial readings connecting the observed design to the
427
+ brand's positioning, not directly sourced Pet Friends statements.
428
+ -->