oh-my-design-cli 1.8.7 → 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 (247) 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 +1995 -38
  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/alipay/DESIGN.md +179 -420
  71. package/web/references/apple/DESIGN.md +224 -498
  72. package/web/references/asleep/DESIGN.md +402 -0
  73. package/web/references/au/DESIGN.md +334 -0
  74. package/web/references/autopedia/DESIGN.md +382 -0
  75. package/web/references/aws-cloudscape/DESIGN.md +241 -0
  76. package/web/references/baemin/DESIGN.md +332 -491
  77. package/web/references/banksalad/DESIGN.md +269 -180
  78. package/web/references/barogo/DESIGN.md +416 -0
  79. package/web/references/beusable/DESIGN.md +464 -0
  80. package/web/references/bilibili/DESIGN.md +206 -374
  81. package/web/references/bmw/DESIGN.md +162 -276
  82. package/web/references/brandi/DESIGN.md +184 -325
  83. package/web/references/catchtable/DESIGN.md +219 -264
  84. package/web/references/cgv/DESIGN.md +317 -0
  85. package/web/references/channeltalk/DESIGN.md +210 -336
  86. package/web/references/china-airlines/DESIGN.md +291 -0
  87. package/web/references/cjonstyle/DESIGN.md +453 -0
  88. package/web/references/class101/DESIGN.md +168 -387
  89. package/web/references/classum/DESIGN.md +228 -203
  90. package/web/references/claude/DESIGN.md +242 -479
  91. package/web/references/clay/DESIGN.md +179 -377
  92. package/web/references/clickhouse/DESIGN.md +254 -343
  93. package/web/references/cohere/DESIGN.md +214 -324
  94. package/web/references/coinone/DESIGN.md +199 -179
  95. package/web/references/corca/DESIGN.md +414 -0
  96. package/web/references/coupang/DESIGN.md +205 -475
  97. package/web/references/cursor/DESIGN.md +240 -381
  98. package/web/references/dabang/DESIGN.md +248 -213
  99. package/web/references/dable/DESIGN.md +431 -0
  100. package/web/references/datarize/DESIGN.md +217 -330
  101. package/web/references/dealicious/DESIGN.md +402 -0
  102. package/web/references/drdiary/DESIGN.md +404 -0
  103. package/web/references/elastic/DESIGN.md +238 -0
  104. package/web/references/elevenlabs/DESIGN.md +183 -321
  105. package/web/references/eslite/DESIGN.md +257 -0
  106. package/web/references/evaair/DESIGN.md +338 -0
  107. package/web/references/expo/DESIGN.md +238 -331
  108. package/web/references/familymart-tw/DESIGN.md +254 -0
  109. package/web/references/ferrari/DESIGN.md +160 -377
  110. package/web/references/figma/DESIGN.md +197 -451
  111. package/web/references/fitpet/DESIGN.md +445 -0
  112. package/web/references/flex/DESIGN.md +170 -253
  113. package/web/references/framer/DESIGN.md +197 -340
  114. package/web/references/freee/DESIGN.md +211 -533
  115. package/web/references/friendliai/DESIGN.md +431 -0
  116. package/web/references/frip/DESIGN.md +440 -0
  117. package/web/references/gangnamunni/DESIGN.md +154 -591
  118. package/web/references/gaudiolab/DESIGN.md +414 -0
  119. package/web/references/google/DESIGN.md +290 -398
  120. package/web/references/hashicorp/DESIGN.md +273 -318
  121. package/web/references/heydealer/DESIGN.md +429 -0
  122. package/web/references/humanscape/DESIGN.md +433 -0
  123. package/web/references/hyundai/DESIGN.md +158 -368
  124. package/web/references/hyundaicard/DESIGN.md +171 -121
  125. package/web/references/ibm/DESIGN.md +227 -378
  126. package/web/references/idus/DESIGN.md +450 -0
  127. package/web/references/igaworks/DESIGN.md +437 -0
  128. package/web/references/inflearn/DESIGN.md +221 -366
  129. package/web/references/intuit/DESIGN.md +244 -0
  130. package/web/references/jandi/DESIGN.md +191 -291
  131. package/web/references/jobplanet/DESIGN.md +415 -0
  132. package/web/references/kakao/DESIGN.md +287 -475
  133. package/web/references/kakaobank/DESIGN.md +220 -521
  134. package/web/references/kakaogames/DESIGN.md +220 -0
  135. package/web/references/kakaopay/DESIGN.md +207 -526
  136. package/web/references/karrot/DESIGN.md +227 -251
  137. package/web/references/kb-kookmin/DESIGN.md +308 -0
  138. package/web/references/kbank/DESIGN.md +220 -175
  139. package/web/references/kmong/DESIGN.md +281 -356
  140. package/web/references/krds/DESIGN.md +245 -19
  141. package/web/references/kream/DESIGN.md +224 -359
  142. package/web/references/kurly/DESIGN.md +211 -533
  143. package/web/references/lamborghini/DESIGN.md +198 -360
  144. package/web/references/lguplus/DESIGN.md +259 -0
  145. package/web/references/likelion/DESIGN.md +283 -0
  146. package/web/references/line/DESIGN.md +396 -355
  147. package/web/references/linear.app/DESIGN.md +209 -562
  148. package/web/references/lotteon/DESIGN.md +386 -0
  149. package/web/references/lovable/DESIGN.md +255 -349
  150. package/web/references/makinarocks/DESIGN.md +149 -349
  151. package/web/references/maum-ai/DESIGN.md +423 -0
  152. package/web/references/medibloc/DESIGN.md +425 -0
  153. package/web/references/megabox/DESIGN.md +232 -0
  154. package/web/references/mercari/DESIGN.md +217 -434
  155. package/web/references/microsoft/DESIGN.md +234 -388
  156. package/web/references/mildang/DESIGN.md +411 -0
  157. package/web/references/millie/DESIGN.md +183 -504
  158. package/web/references/minimax/DESIGN.md +264 -322
  159. package/web/references/miricanvas/DESIGN.md +182 -355
  160. package/web/references/miro/DESIGN.md +234 -232
  161. package/web/references/mistral.ai/DESIGN.md +231 -314
  162. package/web/references/mixi/DESIGN.md +234 -0
  163. package/web/references/moin/DESIGN.md +445 -0
  164. package/web/references/mongodb/DESIGN.md +219 -316
  165. package/web/references/musinsa/DESIGN.md +184 -510
  166. package/web/references/mynavi/DESIGN.md +242 -0
  167. package/web/references/myrealtrip/DESIGN.md +169 -406
  168. package/web/references/naver/DESIGN.md +328 -499
  169. package/web/references/naverwebtoon/DESIGN.md +172 -395
  170. package/web/references/nhn/DESIGN.md +169 -346
  171. package/web/references/nhncloud/DESIGN.md +185 -123
  172. package/web/references/notion/DESIGN.md +271 -475
  173. package/web/references/nrise/DESIGN.md +417 -0
  174. package/web/references/ohouse/DESIGN.md +210 -549
  175. package/web/references/oliveyoung/DESIGN.md +217 -326
  176. package/web/references/ollama/DESIGN.md +241 -308
  177. package/web/references/onestore/DESIGN.md +248 -0
  178. package/web/references/palantir/DESIGN.md +256 -0
  179. package/web/references/panasonic/DESIGN.md +276 -0
  180. package/web/references/patternfly/DESIGN.md +259 -0
  181. package/web/references/payhere/DESIGN.md +438 -0
  182. package/web/references/pega/DESIGN.md +262 -0
  183. package/web/references/peoplefund/DESIGN.md +431 -0
  184. package/web/references/petfriends/DESIGN.md +428 -0
  185. package/web/references/pinkfong/DESIGN.md +199 -367
  186. package/web/references/pinterest/DESIGN.md +258 -308
  187. package/web/references/poya/DESIGN.md +286 -0
  188. package/web/references/pozalabs/DESIGN.md +438 -0
  189. package/web/references/protopie/DESIGN.md +419 -0
  190. package/web/references/qraft/DESIGN.md +448 -0
  191. package/web/references/quotabook/DESIGN.md +449 -0
  192. package/web/references/recruit/DESIGN.md +247 -0
  193. package/web/references/remember/DESIGN.md +202 -396
  194. package/web/references/resend/DESIGN.md +274 -348
  195. package/web/references/sakura-internet/DESIGN.md +269 -0
  196. package/web/references/samsung/DESIGN.md +157 -359
  197. package/web/references/sandoll/DESIGN.md +445 -0
  198. package/web/references/sanity/DESIGN.md +241 -375
  199. package/web/references/scatterlab/DESIGN.md +412 -0
  200. package/web/references/selectstar/DESIGN.md +439 -0
  201. package/web/references/servicenow/DESIGN.md +289 -0
  202. package/web/references/shinhanbank/DESIGN.md +161 -341
  203. package/web/references/shinhancard/DESIGN.md +208 -319
  204. package/web/references/sionic/DESIGN.md +454 -0
  205. package/web/references/sktelecom/DESIGN.md +310 -0
  206. package/web/references/socar/DESIGN.md +125 -32
  207. package/web/references/softbank/DESIGN.md +231 -0
  208. package/web/references/sony/DESIGN.md +234 -0
  209. package/web/references/soop/DESIGN.md +261 -0
  210. package/web/references/spacex/DESIGN.md +184 -323
  211. package/web/references/spotify/DESIGN.md +253 -394
  212. package/web/references/squeezebits/DESIGN.md +441 -0
  213. package/web/references/stayfolio/DESIGN.md +422 -0
  214. package/web/references/stripe/DESIGN.md +212 -491
  215. package/web/references/supabase/DESIGN.md +244 -316
  216. package/web/references/tabling/DESIGN.md +415 -0
  217. package/web/references/taishinbank/DESIGN.md +243 -0
  218. package/web/references/teamlab/DESIGN.md +240 -0
  219. package/web/references/teamsparta/DESIGN.md +472 -0
  220. package/web/references/tellingme/DESIGN.md +392 -0
  221. package/web/references/tesla/DESIGN.md +244 -427
  222. package/web/references/thsr/DESIGN.md +284 -0
  223. package/web/references/thumbtack/DESIGN.md +302 -0
  224. package/web/references/together.ai/DESIGN.md +257 -304
  225. package/web/references/toss/DESIGN.md +251 -593
  226. package/web/references/toss-securities/DESIGN.md +255 -178
  227. package/web/references/tossbank/DESIGN.md +195 -491
  228. package/web/references/toyota/DESIGN.md +238 -0
  229. package/web/references/tving/DESIGN.md +197 -245
  230. package/web/references/typed/DESIGN.md +413 -0
  231. package/web/references/uber/DESIGN.md +256 -333
  232. package/web/references/udn/DESIGN.md +250 -0
  233. package/web/references/upbit/DESIGN.md +145 -256
  234. package/web/references/upstage/DESIGN.md +211 -204
  235. package/web/references/uswds/DESIGN.md +287 -0
  236. package/web/references/vercel/DESIGN.md +236 -440
  237. package/web/references/wanted/DESIGN.md +215 -487
  238. package/web/references/wise/DESIGN.md +223 -231
  239. package/web/references/wisetracker/DESIGN.md +462 -0
  240. package/web/references/wooribank/DESIGN.md +245 -0
  241. package/web/references/yanolja/DESIGN.md +250 -419
  242. package/web/references/yeogiotte/DESIGN.md +235 -418
  243. package/web/references/zapier/DESIGN.md +256 -377
  244. package/web/references/zendesk/DESIGN.md +288 -0
  245. package/web/references/zigzag/DESIGN.md +200 -621
  246. package/dist/install-skills-7UUDOLG2.js +0 -734
  247. package/dist/install-skills-7UUDOLG2.js.map +0 -1
@@ -0,0 +1,438 @@
1
+ ---
2
+ id: 8percent
3
+ name: 8percent
4
+ display_name_kr: 에잇퍼센트
5
+ country: KR
6
+ category: fintech
7
+ homepage: "https://www.8percent.kr/"
8
+ primary_color: "#3282f0"
9
+ logo:
10
+ type: favicon
11
+ slug: "https://www.google.com/s2/favicons?domain=8percent.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 action/emphasis blue (#3282f0); #6741d9 purple is the secondary accent (tinted 'more' pills). Data-dense, near-shadowless product surface on a cool-grey canvas (#f1f3f5) with white (#ffffff) cards. Official DS = EDS (Eight Design System): EdsButton/EdsTextfield/EdsToggle/EdsCheckbox."
19
+ colors:
20
+ primary: "#3282f0"
21
+ accent-purple: "#6741d9"
22
+ ink: "#1d2024"
23
+ slate: "#3c3c3c"
24
+ body: "#606060"
25
+ label: "#4b525a"
26
+ muted: "#858d94"
27
+ faint: "#9ca5ad"
28
+ canvas: "#f1f3f5"
29
+ surface: "#ffffff"
30
+ surface-blue: "#f1f6fe"
31
+ divider: "#dee3e8"
32
+ hairline: "#d2d2d2"
33
+ grade-accent: "#3770b2"
34
+ typography:
35
+ family: { body: "Pretendard", blog: "NanumSquare" }
36
+ stat: { size: 40, weight: 400, lineHeight: 1.10, tracking: -0.9, use: "Hero stat numerals (누적 대출액), Pretendard" }
37
+ section: { size: 24, weight: 700, lineHeight: 1.50, tracking: -0.6, use: "Section titles (모집중 상품), Pretendard Bold" }
38
+ subhead: { size: 16, weight: 700, lineHeight: 1.50, use: "Active nav / disclosure tab, Pretendard Bold" }
39
+ body: { size: 14, weight: 400, lineHeight: 1.15, use: "Standard product text, Pretendard" }
40
+ spacing: { xs: 4, sm: 6, md: 8, base: 12, lg: 16, xl: 32 }
41
+ rounded: { xs: 3, sm: 4, md: 8, lg: 10, xl: 16, full: 9999 }
42
+ shadow:
43
+ none: "none"
44
+ components:
45
+ button-primary: { type: button, bg: "#3282f0", fg: "#ffffff", radius: "8px", font: "16px / 700 Pretendard", states: "EdsButton variants primary/secondary/tertiary, sizes xs/s/m/l", use: "Primary action, brand blue" }
46
+ button-soft: { type: button, bg: "#f1f6fe", fg: "#3282f0", radius: "8px", padding: "6px 16px 6px 12px", font: "14px / 400 Pretendard", use: "Soft blue-tint action pill ('전체 상품, 한 번에 투자')" }
47
+ button-news-pill: { type: button, bg: "rgba(103, 65, 217, 0.1)", fg: "#6741d9", radius: "6px", padding: "8px 16px", font: "14px / 700 Pretendard", use: "Tinted 'more' pill (언론기사 더 보기), purple accent" }
48
+ button-confirm: { type: button, bg: "#ffffff", fg: "#4b525a", border: "1px solid #d2d2d2", radius: "3px", font: "16px / 700 Pretendard", use: "Neutral confirm button (date-picker 확인)" }
49
+ input-text: { type: input, bg: "#ffffff", fg: "#1d2024", border: "1px solid #d2d2d2", radius: "4px", font: "14px Pretendard", focus: "#3282f0", use: "EdsTextfield, brand-blue focus" }
50
+ product-card: { type: card, bg: "#ffffff", border: "1px solid #dee3e8", radius: "10px", use: "Investment product card, flat with #dee3e8 divider" }
51
+ grade-badge: { type: badge, bg: "#3770b2", fg: "#ffffff", radius: "4px", font: "14px / 400 Pretendard", use: "Credit-grade tag on product cards (B tier blue; grades color-coded)" }
52
+ nav-tab: { type: tab, fg: "#9ca5ad", active: "text #1d2024 weight 700", use: "Disclosure section tabs — active bold ink, inactive faint" }
53
+ components_harvested: true
54
+ ---
55
+
56
+ # Design System Inspiration of 8percent
57
+
58
+ ## 1. Visual Theme & Atmosphere
59
+
60
+ 8percent (에잇퍼센트) is Korea's first licensed online investment-linked finance (온투업) platform, and its product surface reads exactly like what it is: a data-dense, trust-first financial marketplace that stays calm instead of loud. The page sits on a soft cool-grey canvas (`#f1f3f5`) with white (`#ffffff`) cards floating on it, separated not by shadows but by a light divider grey (`#dee3e8`) and thin `#d2d2d2` hairlines. Text runs in a restrained cool-neutral ladder — near-black ink (`#1d2024`) for headings, a softer slate (`#3c3c3c`) for the big statistic numerals, and a quiet mid-grey (`#606060`) for body copy. The single saturated action color is a confident blue (`#3282f0`), reserved for emphasis words, links, and the primary call-to-action, so the eye is trained to read that blue as "do this / go here."
61
+
62
+ The typographic personality is Korean-product-standard: everything is set in **Pretendard**, the de-facto hangul UI font, tuned for dense legibility. Headlines are Bold (700) and tightly tracked — section titles at 24px with `-0.6px` tracking (`#1d2024`), and the marquee accumulated-loan statistic at 40px weight 400 with `-0.9px` tracking in slate (`#3c3c3c`). Body and UI text drop to a quiet 14px / weight 400 in `#606060`. The result is a hierarchy driven by weight and size rather than color — appropriate for a page that must present interest rates, credit grades, and loan balances without ever feeling like a hard sell.
63
+
64
+ What distinguishes 8percent from flashier fintech peers is its restraint with depth and its disciplined use of a second accent. There are essentially no drop shadows; grouping comes from flat tinted surfaces and hairlines. Beyond the primary blue, a measured purple (`#6741d9`) appears only on tinted "more" pills (a `rgba(103, 65, 217, 0.1)` wash behind `#6741d9` text). Investment products carry color-coded credit-grade markers — a blue tier (`#3770b2`) plus gold, green, and lilac variants — that turn risk grading into a scannable visual system. Interactive chrome is softly rounded (10px cards dominate, with a 3–16px radius family), and a light-blue tint surface (`#f1f6fe`) hosts the softer secondary actions. It is engineered, orderly, and deliberately un-intimidating — a bank-grade tool that looks like a modern product.
65
+
66
+ **Key Characteristics:**
67
+ - Pretendard throughout — Bold (700) for headings, weight 400 for body/UI, hierarchy by weight not color
68
+ - Single saturated action blue (`#3282f0`) reserved for emphasis, links, and the primary CTA
69
+ - Measured purple accent (`#6741d9`) only on tinted `rgba(103, 65, 217, 0.1)` "more" pills
70
+ - Cool-neutral text ladder: ink (`#1d2024`) → slate (`#3c3c3c`) → body (`#606060`) → muted (`#858d94`) → faint (`#9ca5ad`)
71
+ - Near-shadowless: cool-grey canvas (`#f1f3f5`), white (`#ffffff`) cards, `#dee3e8` dividers and `#d2d2d2` hairlines
72
+ - Color-coded credit grades — blue (`#3770b2`) and a gold/green/lilac spectrum — for scannable risk
73
+ - Softly rounded geometry: 10px card radius dominant, 3–16px family
74
+ - Light-blue tint surface (`#f1f6fe`) for soft secondary actions
75
+ - Official design system EDS (Eight Design System): EdsButton, EdsTextfield, EdsToggle, EdsCheckbox
76
+
77
+ ## 2. Color Palette & Roles
78
+
79
+ ### Primary
80
+ - **8percent Blue** (`#3282f0`): Primary brand and action color. Emphasis words, links ("사업공시 보러가기"), active markers, and the primary CTA. The system's single "action" hue.
81
+ - **Accent Purple** (`#6741d9`): Secondary accent for tinted "more" pills and press/press-more affordances, shown as `#6741d9` text on a `rgba(103, 65, 217, 0.1)` wash.
82
+
83
+ ### Text Ladder
84
+ - **Ink** (`#1d2024`): Primary heading and strong-label color; also the active disclosure-tab label. A near-black with a faint cool cast.
85
+ - **Slate** (`#3c3c3c`): Large statistic numerals and secondary headings (the accumulated-loan figure).
86
+ - **Body** (`#606060`): Standard body/product text — the document default.
87
+ - **Label** (`#4b525a`): Strong secondary labels, neutral confirm-button text, notice-pill text.
88
+ - **Muted** (`#858d94`): Tertiary text, captions, metadata.
89
+ - **Faint** (`#9ca5ad`): Inactive nav labels, disabled/low-emphasis text.
90
+
91
+ ### Surface & Border
92
+ - **Canvas Grey** (`#f1f3f5`): Page background; also the neutral notice-pill fill.
93
+ - **Pure White** (`#ffffff`): Card and content surfaces, confirm-button fill, text on the blue CTA.
94
+ - **Surface Blue** (`#f1f6fe`): Light-blue tint surface behind soft secondary actions.
95
+ - **Divider** (`#dee3e8`): The most frequent surface separator — card dividers and section rules in the shadow-free system.
96
+ - **Hairline** (`#d2d2d2`): Thin borders on buttons, inputs, and containers.
97
+
98
+ ### Status / Grade
99
+ - **Grade Accent Blue** (`#3770b2`): Credit-grade marker (B tier). Investment products color-code credit grades across a spectrum — the `#3770b2` blue alongside gold (`#d2b82f`), green (`#4a7656`), and lilac (`#8884c9`) — turning risk grade into a scannable cue.
100
+
101
+ ## 3. Typography Rules
102
+
103
+ ### Font Family
104
+ - **Product**: `Pretendard` (with `Malgun Gothic`, `Apple SD Gothic Neo` fallbacks) — used for all product/marketing UI at weights 400 and 700.
105
+ - **Blog**: `NanumSquare` (with `Source Sans Pro`) — used only on the official product/engineering blog (`8percent.github.io`), not on the product surface.
106
+
107
+ ### Hierarchy
108
+
109
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
110
+ |------|------|------|--------|-------------|----------------|-------|
111
+ | Hero Stat | Pretendard | 40px (2.50rem) | 400 | 1.10 (44px) | -0.9px | Accumulated-loan numerals (`#3c3c3c`) |
112
+ | Section Heading | Pretendard | 24px (1.50rem) | 700 | 1.50 (36px) | -0.6px | Section titles (`#1d2024`) |
113
+ | Subhead / Active Tab | Pretendard | 16px (1.00rem) | 700 | 1.50 | normal | Active nav / disclosure tab (`#1d2024`) |
114
+ | Body | Pretendard | 14px (0.88rem) | 400 | 1.15 (16.1px) | normal | Standard product text (`#606060`) |
115
+
116
+ ### Principles
117
+ - **Weight over color for hierarchy**: 700 headings vs 400 body carry the structure; the palette stays neutral so financial data reads cleanly.
118
+ - **Tight tracking on display**: -0.9px at 40px and -0.6px at 24px compress headlines; body stays at normal tracking.
119
+ - **One typeface, two weights**: Pretendard 700 and 400 do all product work — no decorative display face. NanumSquare is walled off to the blog.
120
+ - **Hangul-first density**: body at a deliberate 14px with a tight 16.1px line-height suits information-rich financial layouts.
121
+
122
+ ## 4. Component Stylings
123
+
124
+ ### Buttons
125
+
126
+ **Primary (EdsButton)**
127
+ - Background: `#3282f0`
128
+ - Text: `#ffffff`
129
+ - Radius: 8px
130
+ - Font: 16px Pretendard weight 700
131
+ - Use: Primary action, brand blue (EDS EdsButton — variants primary/secondary/tertiary, sizes xs/s/m/l)
132
+
133
+ **Soft Blue-Tint**
134
+ - Background: `#f1f6fe`
135
+ - Text: `#3282f0`
136
+ - Radius: 8px
137
+ - Padding: 6px 16px 6px 12px
138
+ - Font: 14px Pretendard weight 400
139
+ - Height: 40px
140
+ - Use: Soft secondary action pill ("전체 상품, 한 번에 투자해볼까요?") with blue emphasis
141
+
142
+ **News-More Pill**
143
+ - Background: `rgba(103, 65, 217, 0.1)`
144
+ - Text: `#6741d9`
145
+ - Radius: 6px
146
+ - Padding: 8px 16px
147
+ - Font: 14px Pretendard weight 700
148
+ - Height: 40px
149
+ - Use: Tinted "more" pill ("언론기사 더 보기") — the purple accent's home
150
+
151
+ **Neutral Confirm**
152
+ - Background: `#ffffff`
153
+ - Text: `#4b525a`
154
+ - Border: 1px solid `#d2d2d2`
155
+ - Radius: 3px
156
+ - Font: 16px Pretendard weight 700
157
+ - Height: 60px
158
+ - Use: Neutral confirm button (date-picker "확인")
159
+
160
+ ### Inputs
161
+
162
+ **EdsTextfield**
163
+ - Background: `#ffffff`
164
+ - Text: `#1d2024`
165
+ - Border: 1px solid `#d2d2d2`
166
+ - Radius: 4px
167
+ - Font: 14px Pretendard
168
+ - Focus: `#3282f0`
169
+ - Use: Standard text field (EDS EdsTextfield), brand-blue focus
170
+
171
+ ### Cards & Containers
172
+
173
+ **Product Card**
174
+ - Background: `#ffffff`
175
+ - Border: 1px solid `#dee3e8`
176
+ - Radius: 10px
177
+ - Use: Investment product card — flat, separated by the `#dee3e8` divider (no shadow)
178
+
179
+ ### Badges
180
+
181
+ **Credit-Grade Tag**
182
+ - Background: `#3770b2`
183
+ - Text: `#ffffff`
184
+ - Radius: 4px
185
+ - Font: 14px Pretendard weight 400
186
+ - Use: Credit-grade marker on product cards (B tier blue; grades color-coded across a gold/green/lilac spectrum)
187
+
188
+ ### Navigation
189
+ - Text (active): `#1d2024`
190
+ - Text (inactive): `#9ca5ad`
191
+ - Font: 16px Pretendard weight 700 (active), weight 400 (inactive)
192
+ - Use: Disclosure section tabs ("경영현황", "이용정보", "취급현황") — active bold ink, inactive faint
193
+
194
+ ### Notice Pill
195
+ - Background: `#f1f3f5`
196
+ - Text: `#4b525a`
197
+ - Radius: 16px
198
+ - Padding: 0px 16px
199
+ - Height: 56px
200
+ - Use: Notice/announcement link pill ("[공지] 개인정보 처리방침 개정 안내")
201
+
202
+ ---
203
+
204
+ **Verified:** 2026-07-02 (omd:add-reference CREATE — Tier 1 live inspect, 3 surfaces)
205
+ **Tier 1 sources:** https://www.8percent.kr/, https://www.8percent.kr/disclosures/, https://8percent.github.io/, https://8percent.github.io/2024-07-15/frontend-eds-improvement/
206
+ **Tier 2 sources:** getdesign.md/8percent — 404 (no entry); styles.refero.design/?q=8percent — not listed (generic catalog only)
207
+ **Conflicts unresolved:** none
208
+
209
+ ## 5. Layout Principles
210
+
211
+ ### Spacing System
212
+ - Base unit: ~4px
213
+ - Scale: 4px, 6px, 8px, 12px, 16px, 32px
214
+ - Notable: soft pills use compact 6px vertical / 12–16px horizontal padding; cards and product blocks use generous internal padding, with a dense 16.1px body line-height to pack financial data
215
+
216
+ ### Grid & Container
217
+ - Cool-grey (`#f1f3f5`) full-width canvas hosting white (`#ffffff`) cards
218
+ - Investment products laid out as a scannable card grid with color-coded grade markers
219
+ - Hero statistic band ("누적 대출액") anchors the top with a large 40px numeral
220
+ - Disclosure surfaces use tabbed sections ("경영현황"/"이용정보"/"취급현황") over tabular data
221
+
222
+ ### Whitespace Philosophy
223
+ - **Flat segmentation**: sections separate by the `#dee3e8` divider and `#d2d2d2` hairlines, not by elevation
224
+ - **Dense data, calm chrome**: rates, grades, and balances are packed tightly while the surrounding chrome stays airy and neutral
225
+ - **Restraint with color**: the neutral field keeps the single blue action color and purple accent legible
226
+
227
+ ### Border Radius Scale
228
+ - Extra-small (3px): confirm buttons, tight controls
229
+ - Small (4px): inputs, grade tags, small containers
230
+ - Medium (8px): soft action pills
231
+ - Large (10px): product cards — the workhorse radius (dominant on the page)
232
+ - Extra-large (16px): notice pills, large containers
233
+ - Full (9999px): pills / circular markers
234
+
235
+ ## 6. Depth & Elevation
236
+
237
+ | Level | Treatment | Use |
238
+ |-------|-----------|-----|
239
+ | Flat (Level 0) | No shadow | Page background, inline text, most surfaces |
240
+ | Tint (Level 1) | `#f1f3f5` canvas vs `#ffffff` card shift | Card/section separation without elevation |
241
+ | Divider (Level 2) | `#dee3e8` rule / `1px solid #d2d2d2` hairline | Card outlines, list separators, dividers |
242
+
243
+ **Shadow Philosophy**: 8percent is a near-shadowless system. Live inspection found `box-shadow: none` across the hero, section headings, product cards, and buttons; the dominant repeated surface color is the `#dee3e8` divider rather than any elevation token. Separation and grouping are communicated through flat tint (cool-grey `#f1f3f5` canvas vs white `#ffffff` cards) and thin `#d2d2d2` hairlines. This is a deliberate modern-flat choice that keeps a data-heavy financial UI feeling clean, fast, and trustworthy — when emphasis is needed the system reaches for color (blue `#3282f0`) or a tinted surface (`#f1f6fe`), never a drop shadow.
244
+
245
+ ## 7. Do's and Don'ts
246
+
247
+ ### Do
248
+ - Use Pretendard throughout — 700 for headings, 400 for body/UI
249
+ - Drive hierarchy with weight and size, keeping the palette neutral for dense financial data
250
+ - Reserve blue (`#3282f0`) for the primary action, emphasis, and links — the single action color
251
+ - Use the purple accent (`#6741d9`) only on tinted `rgba(103, 65, 217, 0.1)` "more" pills
252
+ - Separate surfaces with the `#dee3e8` divider and `#d2d2d2` hairlines, not shadows
253
+ - Set the canvas to cool-grey (`#f1f3f5`) with white (`#ffffff`) cards
254
+ - Color-code credit grades (blue `#3770b2` plus the gold/green/lilac spectrum) for scannable risk
255
+ - Use the 10px card radius as the default; keep the 3–16px radius family
256
+
257
+ ### Don't
258
+ - Use drop shadows for elevation — 8percent is a flat, hairline-and-divider system
259
+ - Spread the blue across many elements — it dilutes the single-action signal
260
+ - Introduce a third saturated accent — blue is primary, purple is the one measured accent
261
+ - Set body text in the ink navy — reserve `#1d2024` for headings; body is `#606060`
262
+ - Use heavy display faces — Pretendard 700/400 carries everything on the product surface
263
+ - Use NanumSquare on the product UI — it belongs to the blog only
264
+ - Use positive letter-spacing on headlines — display tracks tight (-0.9px / -0.6px)
265
+ - Rely on color alone to grade risk — pair the grade color with the letter grade
266
+
267
+ ## 8. Responsive Behavior
268
+
269
+ ### Breakpoints
270
+ | Name | Width | Key Changes |
271
+ |------|-------|-------------|
272
+ | Mobile | <640px | Single-column product cards, hero stat compresses, tabs scroll |
273
+ | Tablet | 640-1024px | 2-up product cards, moderate padding |
274
+ | Desktop | 1024-1440px | Full multi-column product grid, centered content |
275
+
276
+ ### Touch Targets
277
+ - Neutral confirm buttons at 60px height — an unmistakable tap target
278
+ - Notice pills at 56px height; soft action pills at 40px
279
+ - Nav/disclosure tabs spaced for touch within the header
280
+
281
+ ### Collapsing Strategy
282
+ - Hero statistic: 40px numeral scales down on mobile, weight 400 maintained
283
+ - Product grid: multi-column → 2-up → single column stacked
284
+ - Disclosure tables: horizontal scroll on narrow viewports
285
+ - Tinted/white surfaces maintain full-width treatment
286
+
287
+ ### Image Behavior
288
+ - Product/grade thumbnails keep their color-coded backgrounds at all sizes
289
+ - Cards maintain the 10px radius across breakpoints, no shadow at any size
290
+
291
+ ## 9. Agent Prompt Guide
292
+
293
+ ### Quick Color Reference
294
+ - Primary action / link: 8percent Blue (`#3282f0`)
295
+ - Secondary accent (tinted pill): Accent Purple (`#6741d9`)
296
+ - Heading / active label: Ink (`#1d2024`)
297
+ - Statistic numerals: Slate (`#3c3c3c`)
298
+ - Body text: Body Grey (`#606060`)
299
+ - Strong label / confirm text: Label (`#4b525a`)
300
+ - Muted text: `#858d94`
301
+ - Faint / inactive: `#9ca5ad`
302
+ - Canvas: Cool Grey (`#f1f3f5`)
303
+ - Card surface: White (`#ffffff`)
304
+ - Soft tint surface: `#f1f6fe`
305
+ - Divider: `#dee3e8`
306
+ - Hairline: `#d2d2d2`
307
+ - Credit-grade blue: `#3770b2`
308
+
309
+ ### Example Component Prompts
310
+ - "Create a fintech product listing on a cool-grey canvas (#f1f3f5) with white (#ffffff) cards, 10px radius, separated by a #dee3e8 divider and no shadow. Section title 24px Pretendard weight 700, letter-spacing -0.6px, color #1d2024. Primary CTA: #3282f0 background, white text, 8px radius, 16px Pretendard 700."
311
+ - "Design a hero statistic band: 40px Pretendard weight 400, letter-spacing -0.9px, color #3c3c3c ('누적 대출액'). Body labels 14px weight 400, #606060."
312
+ - "Build a soft secondary action pill: #f1f6fe background, 8px radius, 6px 16px 6px 12px padding, near-ink label with a #3282f0 emphasis word. And a 'more' pill: rgba(103,65,217,0.1) background, #6741d9 text, 6px radius."
313
+ - "Create disclosure tabs: active label #1d2024 16px Pretendard 700, inactive label #9ca5ad weight 400. Below, a text field: white background, 1px solid #d2d2d2, 4px radius, #3282f0 focus."
314
+ - "Add a credit-grade badge: #3770b2 background, white text, 4px radius, 14px Pretendard — one of a color-coded grade spectrum (also gold, green, lilac)."
315
+
316
+ ### Iteration Guide
317
+ 1. Pretendard for everything on the product surface — 700 headings, 400 body
318
+ 2. Blue (`#3282f0`) is the single action color; purple (`#6741d9`) is the one measured accent (tinted pills only)
319
+ 3. No shadows — separate with `#dee3e8` dividers and `#d2d2d2` hairlines
320
+ 4. Canvas is cool-grey `#f1f3f5`; cards are white `#ffffff` at 10px radius
321
+ 5. Text color is `#606060` body / `#1d2024` headings — never ink for body copy
322
+ 6. Tight negative tracking on headlines, normal on body
323
+ 7. Color-code credit grades but always pair the color with the letter grade
324
+
325
+ ---
326
+
327
+ ## 10. Voice & Tone
328
+
329
+ 8percent's voice is **plain, reassuring, and evidence-led** — a financial platform that earns trust by showing numbers, not by hyping returns. Its name states the thesis directly (targeting a mid-single-digit yield that sits between low deposit rates and high consumer-loan rates), and the homepage leads with a verifiable statistic ("누적 대출액 1조 3,955억 2,815만 원" / accumulated loan volume) rather than a slogan. Copy treats the reader as a rational investor who deserves disclosure and comparison, and it foregrounds regulatory standing ("온투업 1호" — the first licensed online investment-linked finance company).
330
+
331
+ | Context | Tone |
332
+ |---|---|
333
+ | Hero / statistics | Concrete and quantified. Leads with accumulated-loan figures, not adjectives. |
334
+ | Product labels | Functional and precise. Credit grade, rate, term stated plainly. |
335
+ | CTAs | Direct, low-pressure. "한 번에 투자", "사업공시 보러가기", "더 보기". |
336
+ | Disclosure / compliance | Formal, transparent. Business-disclosure tabs read like a regulatory filing. |
337
+ | Press / trust copy | Factual, third-party-anchored. Cites coverage and milestones, not superlatives. |
338
+
339
+ **Voice samples (verbatim from live surfaces):**
340
+ - "모집중 상품" — section heading; plainly names the state ("products now funding"). *(verified live 2026-07-02)*
341
+ - "누적 대출액 1조 3,955억 2,815만 원" — hero statistic (quantified trust). *(verified live 2026-07-02)*
342
+ - "사업공시 보러가기" — disclosure link (transparency-first CTA). *(verified live 2026-07-02)*
343
+
344
+ **Forbidden register**: guaranteed-return language, fear- or urgency-based investment pressure, undefined financial jargon left unexplained, exclamation-heavy hype.
345
+
346
+ ## 11. Brand Narrative
347
+
348
+ 8percent (에잇퍼센트) was founded around **2014 by 이효진 (Lee Hyo-jin, CEO)**, a former bank employee, to attack a uniquely Korean gap: the chasm between the low single-digit rates savers earned on deposits and the high double-digit rates borrowers paid on consumer and card loans. The brand name encodes the mission — connect lenders and borrowers directly so both meet near a fairer middle (an ~8% register) — reframing lending as a transparent, data-driven marketplace rather than an opaque bank product. The company became **Korea's first licensed online investment-linked finance provider (온투업 1호)**, a positioning it still leads with on the homepage.
349
+
350
+ Over a decade the platform matured into an established P2P/online-investment brand — the live homepage marks its 10th-anniversary milestones and an accumulated loan volume above 1.39 trillion won, and press coverage on the site documents institutional-investor inflows and the CEO's public profile (including a noted meeting with then-U.S. Treasury Secretary Janet Yellen). The brand positions itself as the disciplined, disclosure-forward operator in a category that has seen less-careful players fail.
351
+
352
+ What 8percent refuses, visible in its design: the hard-sell urgency and guaranteed-return theatrics of predatory lending marketing, and the heavy institutional chrome of legacy banking. What it embraces: a flat, data-dense, near-shadowless interface; a single trustworthy blue; verifiable statistics leading the page; and color-coded credit grading that makes risk legible rather than hidden.
353
+
354
+ ## 12. Principles
355
+
356
+ 1. **Show the numbers.** Trust is earned with verifiable data, not adjectives. *UI implication:* lead with real statistics (accumulated loan volume, rates, grades); keep the palette neutral so figures read cleanly.
357
+ 2. **Make risk legible.** Credit grade is a first-class citizen, not fine print. *UI implication:* color-code grades (blue `#3770b2` and a gold/green/lilac spectrum) and always pair the color with the letter grade.
358
+ 3. **One action, one color.** Blue (`#3282f0`) means "do this." *UI implication:* reserve the saturated blue for the primary CTA, emphasis, and links so the next step is never ambiguous.
359
+ 4. **Flat and calm.** Data density beats decorative depth. *UI implication:* no shadows; separate with `#dee3e8` dividers and `#d2d2d2` hairlines on a cool-grey canvas.
360
+ 5. **Disclosure over persuasion.** Regulatory transparency is a design surface. *UI implication:* give business disclosures tidy tabbed layouts that read like a filing, not a sales page.
361
+
362
+ ## 13. Personas
363
+
364
+ *Personas below are fictional archetypes informed by publicly observable 8percent user segments (Korean retail investors seeking mid-yield alternatives, borrowers refinancing high-rate loans), not individual people.*
365
+
366
+ **정민수, 34, 서울.** A salaried retail investor parking part of his savings for a better-than-deposit yield. Distrusts "guaranteed return" pitches; values that 8percent leads with accumulated-loan figures and a visible license status. Chose it because the credit grades and disclosures let him judge risk himself.
367
+
368
+ **한지영, 41, 경기.** A small-business owner who used 8percent to refinance a high-rate loan into a lower-rate one. Appreciates that terms and grades are shown plainly and that the interface feels like a calm tool, not a pressure funnel.
369
+
370
+ **오세라, 29, 부산.** A cautious first-time P2P investor who reads the business-disclosure tabs before committing. Trusts the brand's factual, third-party-anchored tone and its decade-long track record over flashier newcomers.
371
+
372
+ ## 14. States
373
+
374
+ | State | Treatment |
375
+ |---|---|
376
+ | **Empty (no products funding)** | White (`#ffffff`) card on the `#f1f3f5` canvas. Single Ink (`#1d2024`) line stating no products are currently funding, with a calm path to upcoming products. No illustration clutter. |
377
+ | **Empty (no investments yet)** | Muted (`#858d94`) single line explaining nothing invested yet, plus a `#3282f0` link into the product list. Honest and quiet. |
378
+ | **Loading (product list fetch)** | Skeleton cards at final dimensions, 10px radius, on the `#dee3e8`/`#f1f3f5` neutral field. Flat pulse — no shadow shimmer, consistent with the shadowless system. |
379
+ | **Loading (figures compute)** | Inline placeholder within the statistic band; previously loaded numbers stay visible until refreshed. |
380
+ | **Error (fetch failed)** | Inline message in Ink (`#1d2024`) with a plain-language explanation and a retry. Never a bare "오류가 발생했습니다" — states what to do next. |
381
+ | **Error (form validation)** | Field-level message below the EdsTextfield describing what is valid, not just "필수". |
382
+ | **Success (investment placed)** | Brief inline confirmation in a calm tone; the transaction/grade detail is linked immediately below. No celebratory emoji. |
383
+ | **Skeleton** | `#dee3e8` blocks at final dimensions, 10px radius, flat pulse. |
384
+ | **Disabled** | Faint (`#9ca5ad`) text on a reduced-opacity surface; the blue action fades rather than turning grey, preserving the brand read. |
385
+
386
+ ## 15. Motion & Easing
387
+
388
+ **Durations**:
389
+
390
+ | Token | Value | Use |
391
+ |---|---|---|
392
+ | `motion-fast` | 120ms | Hover, pill press, focus |
393
+ | `motion-standard` | 200ms | Card/section reveal, tab switch, dropdown |
394
+ | `motion-slow` | 320ms | Page-level transitions, modal |
395
+
396
+ **Easings**:
397
+
398
+ | Token | Curve | Use |
399
+ |---|---|---|
400
+ | `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Arriving — cards, sheets, dropdowns |
401
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
402
+ | `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Two-way transitions |
403
+
404
+ **Motion rules**: Motion is functional and restrained — consistent with the flat, data-first aesthetic. Pills and buttons respond to press with a subtle opacity/scale shift; product cards fade-in from below at `motion-standard / ease-enter`. No bounce or spring — a regulated finance product signals steadiness, not playfulness. Under `prefers-reduced-motion: reduce`, all transitions collapse to instant; the product remains fully functional.
405
+
406
+ <!--
407
+ OmD v0.1 Sources — Philosophy Layer (sections 10–15)
408
+
409
+ Tier 1 live inspect (2026-07-02) via playwright getComputedStyle on https://www.8percent.kr/,
410
+ https://www.8percent.kr/disclosures/, and https://8percent.github.io/:
411
+ - Action/emphasis blue rgb(50,130,240) #3282f0; secondary accent purple rgb(103,65,217) #6741d9
412
+ on a rgba(103,65,217,0.1) tint pill ("언론기사 더 보기")
413
+ - Headings rgb(29,32,36) #1d2024 (H3 24px/700/-0.6px); hero stat rgb(60,60,60) #3c3c3c (40px/400/-0.9px)
414
+ - Body Pretendard rgb(96,96,96) #606060 14px/line-height 16.1px; canvas rgb(241,243,245) #f1f3f5
415
+ - box-shadow: none across hero/cards/buttons; dominant divider rgb(222,227,232) #dee3e8
416
+ - Credit-grade card backgrounds color-coded: #3770b2 blue / #d2b82f gold / #4a7656 green / #8884c9 lilac
417
+ - Official DS = EDS (Eight Design System): EdsButton (primary/secondary/tertiary, xs/s/m/l),
418
+ EdsTextfield, EdsToggle, EdsCheckbox — https://8percent.github.io/2024-07-15/frontend-eds-improvement/
419
+
420
+ Token-level claims (§1-9) are sourced from this live inspection + the EDS blog post.
421
+
422
+ Voice samples (§10) are verbatim from the live homepage ("모집중 상품", "누적 대출액 …",
423
+ "사업공시 보러가기").
424
+
425
+ Brand narrative (§11): 8percent (에잇퍼센트) founded ~2014, CEO 이효진 (Lee Hyo-jin); Korea's first
426
+ licensed online investment-linked finance company (온투업 1호). The 10th-anniversary milestone,
427
+ accumulated-loan figure (>1.39 trillion won), institutional-inflow coverage, and the CEO/Janet
428
+ Yellen meeting are all surfaced on the live homepage's press links. Broader founding details are
429
+ widely documented public facts, not directly quoted from a verified 8percent statement in this turn.
430
+
431
+ Personas (§13) are fictional archetypes informed by publicly observable 8percent user segments
432
+ (Korean retail investors, refinancing borrowers). Names are illustrative; they do not refer to
433
+ real people.
434
+
435
+ Interpretive claims (e.g., "one action, one color", "flat and calm as a rejection of predatory-
436
+ lending theatrics and legacy-bank chrome") are editorial readings connecting 8percent's observed
437
+ design to its positioning, not directly sourced 8percent statements.
438
+ -->