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,431 @@
1
+ ---
2
+ id: dable
3
+ name: Dable
4
+ display_name_kr: 데이블
5
+ country: KR
6
+ category: marketing
7
+ homepage: "https://dable.io/ko/"
8
+ primary_color: "#0071ce"
9
+ logo:
10
+ type: github
11
+ slug: teamdable
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 CTA blue (#0071ce); a distinctive mint/teal (#56cfc2) is the secondary CTA accent. Flat, shadowless, pill-heavy adtech marketing site. Poppins for display + buttons, Open Sans for body + product-page headings."
19
+ colors:
20
+ primary: "#0071ce"
21
+ primary-link: "#0b7ed1"
22
+ accent-mint: "#56cfc2"
23
+ ink: "#000000"
24
+ ink-soft: "#181818"
25
+ body: "#3d3d3d"
26
+ slate: "#464646"
27
+ muted: "#8a8a8a"
28
+ faint: "#cccccc"
29
+ neutral-btn: "#e8e8e8"
30
+ neutral-btn-text: "#6f6f6f"
31
+ surface: "#efefef"
32
+ dark: "#212121"
33
+ outline-text: "#2b2b2b"
34
+ canvas: "#ffffff"
35
+ on-primary: "#ffffff"
36
+ typography:
37
+ family: { display: "Poppins", body: "Open Sans" }
38
+ display: { size: 56, weight: 400, lineHeight: 1.0, use: "Full-screen hero feature words (Personalization, Machine learning), Poppins" }
39
+ heading-lg: { size: 35, weight: 400, lineHeight: 1.0, use: "Product-page hero heading, Open Sans" }
40
+ heading: { size: 26, weight: 400, lineHeight: 1.0, use: "Section titles (데이블 네이티브 애드란?), Open Sans" }
41
+ subheading: { size: 22, weight: 400, lineHeight: 1.0, use: "Feature sub-titles, Open Sans" }
42
+ feature-title: { size: 18, weight: 700, lineHeight: 1.0, use: "Targeting-option card titles, Open Sans Bold" }
43
+ body: { size: 14, weight: 400, lineHeight: 1.5, use: "Body and dense UI text, Open Sans" }
44
+ button: { size: 14, weight: 400, lineHeight: 1.0, use: "CTA pill label, Poppins" }
45
+ nav: { size: 13, weight: 600, lineHeight: 1.0, use: "Top-nav links, Poppins SemiBold" }
46
+ footer: { size: 15, weight: 400, lineHeight: 3.0, use: "Footer section headings, Open Sans" }
47
+ spacing: { xs: 4, sm: 8, md: 16, lg: 24, xl: 44, section: 64 }
48
+ rounded: { square: 0, pill: 50, full: 9999 }
49
+ shadow:
50
+ none: "none"
51
+ components:
52
+ button-primary: { type: button, bg: "#0071ce", fg: "#ffffff", radius: "50px", height: "48px", padding: "17px 44px", font: "14px / 400 Poppins", use: "Primary CTA pill (자세히 보기, 광고계정 생성하기, 시작하기)" }
53
+ button-mint: { type: button, bg: "#56cfc2", fg: "#ffffff", radius: "50px", height: "48px", padding: "17px 29px", font: "14px / 400 Poppins", use: "Secondary teal CTA (기본 견적 확인)" }
54
+ button-ghost-light: { type: button, bg: "#ffffff", fg: "#2b2b2b", radius: "50px", height: "48px", padding: "17px 44px", font: "14px / 400 Poppins", use: "White pill over dark hero (서비스 문의하기, 광고주 지원)" }
55
+ button-neutral: { type: button, bg: "#e8e8e8", fg: "#6f6f6f", radius: "50px", height: "48px", padding: "17px 29px", font: "14px / 400 Poppins", use: "Tertiary grey pill (콘텐츠 검토 가이드)" }
56
+ nav-link: { type: tab, fg: "#ffffff", font: "13px / 600 Poppins", active: "text #0071ce", use: "Top-nav item over dark hero" }
57
+ feature-card: { type: card, bg: "#ffffff", fg: "#000000", use: "Flat feature/content block on white band — no shadow, no border" }
58
+ surface-band: { type: card, bg: "#efefef", fg: "#3d3d3d", use: "Alternating grey content band / section surface" }
59
+ components_harvested: true
60
+ ---
61
+
62
+ # Design System Inspiration of Dable
63
+
64
+ ## 1. Visual Theme & Atmosphere
65
+
66
+ Dable (데이블) is Korea's leading content-discovery and native-advertising platform, and its site reads like a confident, technology-forward adtech product rather than a busy media page. The canvas is pure white (`#ffffff`) broken up by full-bleed dark cinematic hero bands (`#212121`) and light-grey content surfaces (`#efefef`), giving the page a clean, spacious, presentation-like rhythm. Body copy sits in a soft near-black (`#3d3d3d`) — never a harsh pure-black wall of text — while headings drop to true black (`#000000`) for maximum authority. The single saturated brand anchor is a clear, trustworthy blue (`#0071ce`), reserved almost exclusively for the pill call-to-action, so the eye learns to read that one color as "the action."
67
+
68
+ The typographic personality is a deliberate two-font split. Display moments — the full-screen hero feature words "Personalization", "Machine learning", "Auto-optimization" — run in **Poppins** at a large 56px, a geometric sans that gives the technology story a modern, engineered feel. Body and product-page content shift to **Open Sans** at a quiet 14px / weight 400, the workhorse reading font, with section titles at 26px and feature sub-heads at 18px weight 700. Poppins also carries the CTA labels (14px) and the top-nav links (13px weight 600), so the interactive chrome always speaks in the geometric display voice while the explanatory copy stays calm in Open Sans.
69
+
70
+ What distinguishes Dable from heavier adtech dashboards is its restraint with depth. Live inspection found `box-shadow: none` across the hero, nav, headings, and every button — this is a flat system where separation comes from full-width color bands (`#212121` dark / `#efefef` grey / `#ffffff` white) rather than elevation. Interactive chrome leans hard into the pill: every CTA is a fully rounded 50px capsule, whether it is the primary blue (`#0071ce`), the distinctive secondary mint (`#56cfc2`), a white ghost pill on a dark hero, or a muted grey pill (`#e8e8e8`). The result is a fast, mobile-native, slide-like aesthetic — engineered and approachable at once.
71
+
72
+ **Key Characteristics:**
73
+ - Poppins for display headlines (56px hero words) and interactive chrome (buttons, nav)
74
+ - Open Sans weight 400 at 14px for body and dense product copy
75
+ - Single saturated blue (`#0071ce`) reserved for the primary pill CTA
76
+ - Distinctive mint/teal (`#56cfc2`) as the one secondary-action accent
77
+ - Near-black body (`#3d3d3d`) with true-black (`#000000`) headings — warm, readable
78
+ - Flat depth: no shadows; full-width `#212121` dark / `#efefef` grey / `#ffffff` bands do the separating
79
+ - Pill-everything geometry — 50px capsules on every button
80
+ - Cool neutral ladder (`#464646` → `#8a8a8a` → `#cccccc`) for text hierarchy
81
+
82
+ ## 2. Color Palette & Roles
83
+
84
+ ### Primary
85
+ - **Dable Blue** (`#0071ce`): Primary brand color and CTA background — the saturated blue on the pill call-to-action, the system's single "action" color.
86
+ - **Link Blue** (`#0b7ed1`): A slightly brighter blue used for inline links and text-level emphasis.
87
+ - **Accent Mint** (`#56cfc2`): The secondary-action teal, used for the one alternate CTA ("기본 견적 확인"). The only saturated hue besides the blue.
88
+
89
+ ### Ink & Text Hierarchy
90
+ - **Ink Black** (`#000000`): Primary heading color — true black for section titles and hero copy.
91
+ - **Ink Soft** (`#181818`): Near-black for smaller feature-card titles (targeting options).
92
+ - **Body Grey** (`#3d3d3d`): The dominant body-copy color across the site.
93
+ - **Slate** (`#464646`): Secondary section sub-headings and stronger captions.
94
+ - **Muted** (`#8a8a8a`): Tertiary text, metadata, and de-emphasized labels.
95
+ - **Faint** (`#cccccc`): Lowest-emphasis text, disabled labels, and hairline-weight greys.
96
+
97
+ ### Neutral & Surface
98
+ - **Pure White** (`#ffffff`): Page background, white content bands, and text on blue/dark.
99
+ - **Surface Grey** (`#efefef`): The light-grey content band used to alternate against white.
100
+ - **Dark Band** (`#212121`): Near-black background for the cinematic full-width hero sections.
101
+ - **Neutral Button** (`#e8e8e8`): Light-grey background for tertiary/muted pill buttons.
102
+ - **Neutral Button Text** (`#6f6f6f`): Text color inside the light-grey neutral pill.
103
+ - **Outline Text** (`#2b2b2b`): Dark label color inside the white ghost pill on dark heroes.
104
+ - **On Primary** (`#ffffff`): White text sitting on the blue and mint CTAs.
105
+
106
+ ## 3. Typography Rules
107
+
108
+ ### Font Family
109
+ - **Display**: `Poppins` — used for hero feature words, CTA labels, and top-nav links. Geometric sans, weights 400 (display/buttons) and 600 (nav).
110
+ - **Body**: `Open Sans` (the document default) — used for body copy, product-page section titles, and footer headings at weight 400, with feature-card titles at weight 700.
111
+
112
+ ### Hierarchy
113
+
114
+ | Role | Font | Size | Weight | Line Height | Notes |
115
+ |------|------|------|--------|-------------|-------|
116
+ | Display Hero | Poppins | 56px (3.50rem) | 400 | ~1.0 | Full-screen hero feature words |
117
+ | Product Hero | Open Sans | 35px (2.19rem) | 400 | 1.0 (35px) | Product-page hero heading |
118
+ | Section Heading | Open Sans | 26px (1.63rem) | 400 | 1.0 (26px) | Section titles |
119
+ | Sub-section | Open Sans | 22px (1.38rem) | 400 | 1.0 (22px) | Feature sub-titles |
120
+ | Feature Title | Open Sans | 18px (1.13rem) | 700 | 1.0 (18px) | Targeting-option card titles |
121
+ | Nav Link | Poppins | 13px (0.81rem) | 600 | 1.0 | Top navigation items |
122
+ | Button | Poppins | 14px (0.88rem) | 400 | 1.0 | CTA pill labels |
123
+ | Body | Open Sans | 14px (0.88rem) | 400 | 1.5 | Standard reading text |
124
+ | Footer Heading | Open Sans | 15px (0.94rem) | 400 | 3.0 (45px) | Footer section headings |
125
+
126
+ ### Principles
127
+ - **Two fonts, two jobs**: Poppins is the geometric display + interactive voice; Open Sans is the functional reading voice. They never swap roles.
128
+ - **Weight over size for emphasis**: within Open Sans, hierarchy is signalled by weight (700 feature titles vs 400 body) more than by dramatic size jumps.
129
+ - **Quiet body**: body copy holds a dense, readable 14px / 400 with 1.5 line-height — information-forward, never shouting.
130
+ - **Poppins for the chrome**: every tappable label (CTA, nav) is Poppins, so the interactive layer is visually distinct from explanatory Open Sans copy.
131
+
132
+ ## 4. Component Stylings
133
+
134
+ ### Buttons
135
+
136
+ **Primary CTA (Blue)**
137
+ - Background: `#0071ce`
138
+ - Text: `#ffffff`
139
+ - Radius: 50px
140
+ - Padding: 17px 44px
141
+ - Font: 14px / 400 / Poppins
142
+ - Height: 48px
143
+ - Use: Primary call-to-action pill ("자세히 보기", "광고계정 생성하기", "시작하기")
144
+
145
+ **Secondary CTA (Mint)**
146
+ - Background: `#56cfc2`
147
+ - Text: `#ffffff`
148
+ - Radius: 50px
149
+ - Padding: 17px 29px
150
+ - Font: 14px / 400 / Poppins
151
+ - Height: 48px
152
+ - Use: Alternate secondary action ("기본 견적 확인")
153
+
154
+ **Ghost Pill (White on Dark)**
155
+ - Background: `#ffffff`
156
+ - Text: `#2b2b2b`
157
+ - Radius: 50px
158
+ - Padding: 17px 44px
159
+ - Font: 14px / 400 / Poppins
160
+ - Height: 48px
161
+ - Use: White pill sitting over a dark hero band ("서비스 문의하기", "광고주 지원")
162
+
163
+ **Neutral Pill (Grey)**
164
+ - Background: `#e8e8e8`
165
+ - Text: `#6f6f6f`
166
+ - Radius: 50px
167
+ - Padding: 17px 29px
168
+ - Font: 14px / 400 / Poppins
169
+ - Height: 48px
170
+ - Use: Tertiary / muted action ("콘텐츠 검토 가이드")
171
+
172
+ **Small Pill (on Blue band)**
173
+ - Background: `#0071ce`
174
+ - Text: `#ffffff`
175
+ - Radius: 50px
176
+ - Padding: 10px 40px
177
+ - Font: 13px / 400 / Poppins
178
+ - Height: 39px
179
+ - Use: Compact contact pill in dark footer band ("Contact Us")
180
+
181
+ ### Cards & Containers
182
+
183
+ **Flat Feature Block**
184
+ - Background: `#ffffff`
185
+ - Text: `#000000`
186
+ - Use: Feature/content block on a white band — flat, no shadow, no border
187
+
188
+ **Grey Surface Band**
189
+ - Background: `#efefef`
190
+ - Text: `#3d3d3d`
191
+ - Use: Alternating light-grey full-width content band
192
+
193
+ ### Navigation
194
+ - Background: transparent over `#212121` dark hero
195
+ - Text: `#ffffff`
196
+ - Font: 13px / 600 / Poppins
197
+ - Active: blue `#0071ce` text on the active item
198
+ - Use: Top horizontal nav ("Advertisers", "Publishers", "Support", "Resources", "About")
199
+
200
+ ### Footer
201
+ - Headings: `#ffffff`, 15px / 400 / Open Sans
202
+ - Background: `#212121`
203
+ - Use: Footer section headings ("Seoul Office", "Careers", "Privacy Policy")
204
+
205
+ ---
206
+
207
+ **Verified:** 2026-07-02 (omd:add-reference CREATE — Tier 1 live inspect, 2 surfaces)
208
+ **Tier 1 sources:** https://dable.io/ko/, https://dable.io/ko/advertising/, https://teamdable.github.io/techblog
209
+ **Tier 2 sources:** getdesign.md/dable (SPA shell — no dable coverage); styles.refero.design/?q=dable (query returned default gallery, no dable-specific match)
210
+ **Conflicts unresolved:** none
211
+
212
+ ## 5. Layout Principles
213
+
214
+ ### Spacing System
215
+ - Base unit: ~4px, scaling 4px → 8px → 16px → 24px → 44px → 64px
216
+ - Notable: CTA pills use a generous asymmetric 17px vertical / 29–44px horizontal padding, giving the capsules a comfortable, tappable hit area
217
+
218
+ ### Grid & Container
219
+ - Full-screen cinematic hero bands anchor the page, each a single dark (`#212121`) slide with a large Poppins feature word
220
+ - Product/feature sections alternate white (`#ffffff`) and light-grey (`#efefef`) full-width bands
221
+ - Content is centered and generously spaced — a slide-deck cadence rather than dense dashboard packing
222
+ - CTAs are grouped as horizontal rows of pills beneath section copy
223
+
224
+ ### Whitespace Philosophy
225
+ - **Presentation rhythm**: the layout reads like a scroll-driven deck — one idea per band, generous vertical breathing room between sections.
226
+ - **Flat segmentation**: sections separate by background color (`#212121` / `#efefef` / `#ffffff`), never by shadow or heavy borders.
227
+ - **Pill cadence**: the repeated 50px capsule creates a consistent horizontal rhythm across every call-to-action.
228
+
229
+ ### Border Radius Scale
230
+ - Square (0px): content blocks, image tiles, section bands
231
+ - Pill (50px): every button and CTA — the system's defining geometry
232
+ - Full (9999px): circular play buttons and icon frames
233
+
234
+ ## 6. Depth & Elevation
235
+
236
+ | Level | Treatment | Use |
237
+ |-------|-----------|-----|
238
+ | Flat (Level 0) | No shadow | Page background, text, buttons, most surfaces |
239
+ | Band (Level 1) | Background color shift (`#212121` / `#efefef` / `#ffffff`) | Section separation without elevation |
240
+
241
+ **Shadow Philosophy**: Dable is a near-shadowless system. Live inspection found `box-shadow: none` across the hero, nav, headings, and every pill button. Depth and grouping are communicated entirely through full-width color bands — cinematic dark (`#212121`), light grey (`#efefef`), and white (`#ffffff`) — rather than elevation. This is a deliberate flat, presentation-like choice that keeps the adtech story feeling fast and modern. When emphasis is needed, the system reaches for color (blue `#0071ce` or mint `#56cfc2`) or a dark band, never a drop shadow.
242
+
243
+ ## 7. Do's and Don'ts
244
+
245
+ ### Do
246
+ - Use Poppins for display feature words (56px) and all interactive chrome (buttons, nav)
247
+ - Use Open Sans weight 400 at 14px for body and product copy
248
+ - Reserve blue (`#0071ce`) for the primary pill CTA — keep it the single "action" color
249
+ - Use the mint (`#56cfc2`) only for the one secondary/alternate CTA
250
+ - Use near-black (`#3d3d3d`) for body text and true black (`#000000`) for headings
251
+ - Separate sections with full-width color bands (`#212121` / `#efefef` / `#ffffff`), not shadows
252
+ - Use pill geometry — every button is a 50px capsule
253
+ - Put white ghost pills (`#ffffff` bg, `#2b2b2b` text) on dark hero bands for contrast
254
+
255
+ ### Don't
256
+ - Use drop shadows for elevation — Dable is a flat, shadow-free system
257
+ - Spread the blue across many elements — it dilutes the single-action signal
258
+ - Introduce a third saturated accent — blue and mint are the only two hues
259
+ - Use sharp/square corners on buttons — every CTA is a full pill
260
+ - Set body copy in pure black — reserve `#000000` for headings, use `#3d3d3d` for text
261
+ - Mix the display and body fonts — Poppins owns chrome, Open Sans owns reading
262
+ - Use the mint (`#56cfc2`) for primary CTAs — the primary action is always blue
263
+
264
+ ## 8. Responsive Behavior
265
+
266
+ ### Breakpoints
267
+ | Name | Width | Key Changes |
268
+ |------|-------|-------------|
269
+ | Mobile | <640px | Single column, hero feature word compresses, pill rows wrap/stack |
270
+ | Tablet | 640-1024px | Moderate padding, 2-up feature blocks |
271
+ | Desktop | 1024-1440px | Full slide-band layout, centered heroes, multi-column feature bands |
272
+
273
+ ### Touch Targets
274
+ - CTA pills at 48px height with 17px vertical padding — comfortably tappable
275
+ - Compact contact pill at 39px height for dense footer bands
276
+ - Nav links spaced for touch across the top bar
277
+
278
+ ### Collapsing Strategy
279
+ - Hero: 56px Poppins feature word scales down on mobile, weight maintained
280
+ - Pill rows: wrap or stack on narrow viewports
281
+ - Feature bands: multi-column → stacked single column
282
+ - Dark/grey/white alternating bands maintain full-width treatment
283
+
284
+ ### Image Behavior
285
+ - Product screenshots and illustrations carry no shadow at any size, consistent with the flat system
286
+ - Content blocks stay square-cornered across breakpoints; only buttons and circular play frames round
287
+
288
+ ## 9. Agent Prompt Guide
289
+
290
+ ### Quick Color Reference
291
+ - Primary CTA: Dable Blue (`#0071ce`)
292
+ - Secondary CTA: Accent Mint (`#56cfc2`)
293
+ - Inline link: Link Blue (`#0b7ed1`)
294
+ - Heading: Ink Black (`#000000`), small feature titles Ink Soft (`#181818`)
295
+ - Body text: Body Grey (`#3d3d3d`)
296
+ - Muted text: Muted (`#8a8a8a`), faint (`#cccccc`)
297
+ - Dark band: `#212121`, grey surface: `#efefef`, white: `#ffffff`
298
+ - Neutral pill: `#e8e8e8` bg / `#6f6f6f` text; ghost pill text `#2b2b2b`
299
+
300
+ ### Example Component Prompts
301
+ - "Create a full-screen dark hero band: #212121 background, a large 56px Poppins weight 400 feature word in white. Below it a blue pill CTA — #0071ce background, white text, 50px radius, 17px 44px padding, 14px Poppins — and a white ghost pill (#ffffff bg, #2b2b2b text, 50px radius)."
302
+ - "Design a feature section on a white band: #ffffff background, no shadow. Section title 26px Open Sans weight 400, #000000. Feature-card titles 18px Open Sans weight 700, #181818. Body 14px Open Sans weight 400, #3d3d3d."
303
+ - "Build an alternating grey band: #efefef background, full-width. A mint secondary CTA — #56cfc2 background, white text, 50px radius, 17px 29px padding — and a neutral grey pill (#e8e8e8 bg, #6f6f6f text)."
304
+ - "Create a top nav over the dark hero: transparent bar, Poppins 13px weight 600 links in #ffffff, blue #0071ce on the active item."
305
+
306
+ ### Iteration Guide
307
+ 1. Poppins for feature words + chrome; Open Sans 400 for body
308
+ 2. Blue (`#0071ce`) is the single primary action; mint (`#56cfc2`) is the one secondary
309
+ 3. No shadows — separate with `#212121` / `#efefef` / `#ffffff` bands
310
+ 4. Pill geometry throughout — every button is a 50px capsule
311
+ 5. Body text is `#3d3d3d` near-black; headings are true `#000000`
312
+ 6. Keep to two hues — a third saturated color breaks the system
313
+ 7. White ghost pills (`#2b2b2b` text) belong on dark hero bands
314
+
315
+ ---
316
+
317
+ ## 10. Voice & Tone
318
+
319
+ Dable's voice is **clear, technical, and quietly confident** — an adtech company that leads with capability, not hype. The homepage opens on three single-word promises ("Personalization", "Machine learning", "Auto-optimization") and a mission line about connecting "사용자와 미디어, 콘텐츠" (users, media, and content). Copy treats the reader as a professional — an advertiser or publisher — who wants to know what the technology does and what results it produces, stated plainly with concrete numbers (500M+ monthly users, 3,000+ media partners).
320
+
321
+ | Context | Tone |
322
+ |---|---|
323
+ | Hero feature words | Single-word, declarative capability. "Personalization", "Machine learning", "Auto-optimization". |
324
+ | Product headings | Plain, benefit-first. "인공 지능 기반의 네이티브 광고를 통한 적합한 고객 발견". |
325
+ | CTAs | Direct, functional imperatives. "자세히 보기", "광고계정 생성하기", "기본 견적 확인". |
326
+ | Feature descriptions | Explains the technology in professional language; leads with the outcome for advertisers/publishers. |
327
+ | Metrics / proof | Concrete and specific — user counts, media-partner counts, market coverage. |
328
+
329
+ **Voice samples (verbatim from live surfaces):**
330
+ - "네이티브 광고와 콘텐츠 디스커버리" — homepage title (category positioning). *(verified live 2026-07-02)*
331
+ - "인공 지능 기반의 네이티브 광고를 통한 적합한 고객 발견" — advertising product title. *(verified live 2026-07-02)*
332
+ - "글로벌 프리미엄 미디어 네트워크에 광고하세요" — product hero heading (scope claim). *(verified live 2026-07-02)*
333
+
334
+ **Forbidden register**: buzzword-stacking without substance, fear-based marketing, undefined jargon left unexplained, exclamation-heavy hype. Dable's authority comes from stated capability and numbers, not adjectives.
335
+
336
+ ## 11. Brand Narrative
337
+
338
+ Dable (데이블) was founded in **2015** by **이채현 (Lee Chae-hyun, CEO)** and three co-founders who had built the RecoPick recommendation venture inside SK Planet. The name itself encodes the thesis — "Data" + "able", doing everything possible with data. Lee, a POSTECH computer-science graduate with a background in big-data processing and recommendation algorithms, framed the company around a single mission: to "connect users, media, and content" (사용자와 미디어, 콘텐츠를 연결하자).
339
+
340
+ The product grew into two linked engines: **Dable News**, a personalized content-discovery widget that recommends articles to readers on media sites, and **Dable Native Ad**, described as Asia's largest native ad exchange. Together they process the behavior of **500 million-plus monthly users** through machine learning, powering personalized recommendations and auto-optimized native campaigns. By 2021 Dable had passed **3,000 media partnerships** and expanded across 10+ Asia-Pacific markets — Korea, Japan, Taiwan, Indonesia, Vietnam, Malaysia, Thailand, Hong Kong, Singapore, and beyond — before being acquired by Yanolja.
341
+
342
+ What Dable's design refuses, visible in the site: the cluttered, banner-heavy chrome of legacy ad networks and the dark-pattern urgency of performance marketing. What it embraces: a flat, cinematic, presentation-like interface; two disciplined brand hues (blue for action, mint for the alternate); geometric Poppins display over calm Open Sans copy; and a technology story told through capability words and hard numbers rather than superlatives.
343
+
344
+ ## 12. Principles
345
+
346
+ 1. **Lead with capability.** The homepage is three technology words, not a slogan. *UI implication:* let the feature word and the metric carry the section; keep decoration minimal.
347
+ 2. **One action, one color.** Blue (`#0071ce`) means "do this." *UI implication:* reserve the saturated blue exclusively for the primary CTA so the next step is unambiguous; the mint (`#56cfc2`) is the single sanctioned alternate.
348
+ 3. **Flat and fast.** Cinematic clarity beats decorative depth. *UI implication:* no shadows; separate sections with full-width color bands and let color do the work.
349
+ 4. **Two voices, two fonts.** *UI implication:* Poppins for feature words and interactive chrome; Open Sans for the reading layer — never blend the two roles.
350
+ 5. **Prove it with numbers.** Trust in adtech comes from scale. *UI implication:* surface concrete counts (users, media partners, markets) rather than adjectives.
351
+
352
+ ## 13. Personas
353
+
354
+ *Personas below are fictional archetypes informed by publicly observable Dable user segments (performance advertisers, media/publisher partners, adtech buyers across APAC), not individual people.*
355
+
356
+ **정민수, 34, 서울.** A performance marketer at a mid-size ecommerce brand buying native campaigns. Cares that auto-optimization actually lowers his cost-per-acquisition and that the reporting is legible. Chose Dable because the pitch led with the machine-learning capability and concrete results, not with hype.
357
+
358
+ **Aria Tan, 29, Singapore.** A publisher-side partnerships lead evaluating content-discovery widgets for a regional media network. Values that Dable is present across APAC and integrates cleanly; wants a partner whose product looks engineered, not like a legacy banner network.
359
+
360
+ **김서연, 41, 판교.** A marketing director allocating budget across channels. Uses Dable's scale numbers (media partners, monthly users) to justify the buy internally. Trusts the calm, capability-first brand tone over urgency-driven ad tooling.
361
+
362
+ ## 14. States
363
+
364
+ | State | Treatment |
365
+ |---|---|
366
+ | **Empty (no campaign/report data)** | White canvas. A single Body Grey (`#3d3d3d`) line explaining there is nothing yet, with one blue (`#0071ce`) pill CTA to create the first campaign. No clutter. |
367
+ | **Empty (saved list, none yet)** | Muted (`#8a8a8a`) single line noting nothing saved, plus a path back. Calm and factual. |
368
+ | **Loading (dashboard/results)** | Flat skeleton blocks on the grey surface (`#efefef`) at final dimensions — no shadow shimmer, consistent with the shadowless system. |
369
+ | **Loading (in-place refresh)** | Subtle blue (`#0071ce`) progress indicator; previous values stay visible. |
370
+ | **Error (fetch/compute failed)** | Inline message in Body Grey (`#3d3d3d`) with a plain-language explanation and a retry. Never a bare "오류가 발생했습니다". |
371
+ | **Error (form validation)** | Field-level message below the input; describes what is valid, not just "필수". |
372
+ | **Success (campaign submitted)** | Brief inline confirmation in a calm tone; next-step detail linked below. No celebratory emoji. |
373
+ | **Skeleton** | `#efefef` blocks at final dimensions, square corners, flat pulse. |
374
+ | **Disabled** | Faint (`#cccccc`) text on a neutral (`#e8e8e8`) surface; blue actions fade rather than switch to grey to preserve the brand read. |
375
+
376
+ ## 15. Motion & Easing
377
+
378
+ **Durations**:
379
+
380
+ | Token | Value | Use |
381
+ |---|---|---|
382
+ | `motion-fast` | 120ms | Hover, pill press, focus |
383
+ | `motion-standard` | 240ms | Band/section reveal, dropdown, sheet |
384
+ | `motion-slow` | 360ms | Full-screen hero slide transitions |
385
+
386
+ **Easings**:
387
+
388
+ | Token | Curve | Use |
389
+ |---|---|---|
390
+ | `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Arriving — sections, sheets, pills |
391
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
392
+ | `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Two-way transitions |
393
+
394
+ **Motion rules**: Motion is presentation-driven and quiet — the site scrolls like a deck, with full-screen hero bands revealing one idea at a time at `motion-slow / ease-standard`. Pills respond to press with a subtle scale/opacity shift; section content fades in from below at `motion-standard / ease-enter`. No bounce or spring — an adtech platform signals steadiness and precision, not playfulness. Under `prefers-reduced-motion: reduce`, all transitions collapse to instant and the hero bands snap into place; the product stays fully functional.
395
+
396
+ <!--
397
+ OmD v0.1 Sources — Philosophy Layer (sections 10–15)
398
+
399
+ Tier 1 live inspect (2026-07-02) via playwright getComputedStyle on 2 surfaces:
400
+ - https://dable.io/ko/ (homepage) — hero feature words "Personalization"/"Machine learning"/"Auto-optimization"
401
+ Poppins 56px weight 400 color rgb(0,0,0); primary CTA "자세히 보기" bg rgb(0,113,206) #0071ce radius 50px
402
+ padding 17px 44px Poppins 14px white text; nav links Poppins 13px weight 600 white; body font "Open Sans" 14px
403
+ color rgb(0,0,0); box-shadow none across hero/nav/headings/buttons; document.title
404
+ "네이티브 광고와 콘텐츠 디스커버리".
405
+ - https://dable.io/ko/advertising/ (product page) — headings Open Sans 35px/26px/22px/18px(700); CTAs:
406
+ blue #0071ce "광고계정 생성하기"/"상품소개서 다운로드"/"시작하기"; mint rgb(86,207,194) #56cfc2 "기본 견적 확인";
407
+ white ghost pill rgb(255,255,255) bg text rgb(43,43,43) #2b2b2b "서비스 문의하기"; grey pill rgb(232,232,232)
408
+ #e8e8e8 bg text rgb(111,111,111) #6f6f6f "콘텐츠 검토 가이드"; document.title
409
+ "인공 지능 기반의 네이티브 광고를 통한 적합한 고객 발견 | Dable".
410
+
411
+ Token-level claims (§1-9) are sourced from this live inspection; see web/references/dable/.verification.md
412
+ for the full raw-sample list and the Tier-2 conflict matrix.
413
+
414
+ Voice samples (§10) are verbatim from the live homepage title, the advertising product title, and the product
415
+ hero heading.
416
+
417
+ Brand narrative (§11): Dable (데이블) founded 2015; CEO 이채현 (Lee Chae-hyun), POSTECH CS; four founders out of
418
+ SK Planet's RecoPick recommendation venture; name = "Data" + "able"; mission "사용자와 미디어, 콘텐츠를 연결하자";
419
+ Dable News (content discovery) + Dable Native Ad (Asia's largest native ad exchange); 500M+ monthly users;
420
+ 3,000+ media partners by 2021; APAC expansion (Japan/Taiwan/Indonesia/Vietnam/Malaysia/Thailand/Hong Kong/
421
+ Singapore); acquired by Yanolja. Sourced from Dable's own /dable-story/ page and public interviews
422
+ (startuptoday.kr, theteams.kr). Specific figures beyond the site are widely documented public facts, not
423
+ directly quoted from a single verified Dable statement in this turn.
424
+
425
+ Personas (§13) are fictional archetypes informed by publicly observable Dable user segments (advertisers,
426
+ publisher partners, adtech buyers). Names are illustrative; they do not refer to real people.
427
+
428
+ Interpretive claims (e.g., "one action, one color", "flat and fast as a rejection of legacy banner-network
429
+ chrome") are editorial readings connecting Dable's observed design to its positioning, not directly sourced
430
+ Dable statements.
431
+ -->