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,462 @@
1
+ ---
2
+ id: wisetracker
3
+ name: Wisetracker
4
+ display_name_kr: 와이즈트래커
5
+ country: KR
6
+ category: marketing
7
+ homepage: "https://www.wisetracker.co.kr/"
8
+ primary_color: "#ff8d08"
9
+ logo:
10
+ type: favicon
11
+ slug: "https://www.google.com/s2/favicons?domain=wisetracker.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: "Two coexisting systems: a Framer-built marketing homepage (orange #ff8d08 CTA, full-pill geometry, Noto Sans CJK KR headings + Inter latin, playful category accents) and a GitBook-style developer docs portal (neutral #1d1d1d ink on Noto Sans, #d8d9d9 hairlines, 6-12px radius). Primary = the orange marketing CTA."
19
+ colors:
20
+ primary: "#ff8d08"
21
+ on-primary: "#ffffff"
22
+ ink: "#001122"
23
+ ink-pure: "#000000"
24
+ canvas: "#ffffff"
25
+ surface: "#f2f2f2"
26
+ muted: "#8a8a8a"
27
+ label-muted: "#b5b5b5"
28
+ disabled: "#b0b0b0"
29
+ accent-pink: "#ff3c96"
30
+ accent-salmon: "#ff8da1"
31
+ accent-magenta: "#ff53ae"
32
+ accent-cyan: "#22ccdd"
33
+ accent-lime: "#ccdd32"
34
+ accent-purple: "#bb66cc"
35
+ accent-amber: "#ffbb0e"
36
+ docs-ink: "#1d1d1d"
37
+ docs-muted: "#6e6e6f"
38
+ docs-slate: "#53595f"
39
+ docs-border: "#d8d9d9"
40
+ docs-surface: "#f7f7f7"
41
+ typography:
42
+ family: { display: "Noto Sans CJK KR", body: "Noto Sans CJK KR", latin: "Inter", docs: "Noto Sans" }
43
+ display-hero: { size: 52, weight: 700, lineHeight: 1.20, use: "Marketing hero headline, Noto Sans CJK KR Bold" }
44
+ lead: { size: 19, weight: 400, lineHeight: 1.20, use: "Hero sub-copy, Noto Sans CJK KR Regular" }
45
+ section: { size: 20, weight: 700, lineHeight: 1.50, use: "Section H2 titles, #001122, Noto Sans CJK KR Bold" }
46
+ feature: { size: 18, weight: 400, lineHeight: 1.40, use: "Feature descriptions, Noto Sans CJK KR Regular" }
47
+ nav-latin: { size: 16, weight: 800, use: "Latin nav labels, Inter ExtraBold" }
48
+ label-latin: { size: 14, weight: 600, use: "Small latin labels (Product/Category), Inter SemiBold" }
49
+ button: { size: 16, weight: 700, lineHeight: 1.20, use: "Primary CTA label, white, Noto Sans CJK KR Bold" }
50
+ nav: { size: 12, weight: 400, use: "Marketing top-nav item text" }
51
+ docs-body: { size: 16, weight: 400, lineHeight: 1.625, use: "Docs reading text, #1d1d1d, Noto Sans" }
52
+ docs-nav: { size: 14, weight: 400, use: "Docs sidebar / top-nav links" }
53
+ spacing: { xs: 4, sm: 6, md: 10, base: 12, lg: 20, xl: 28, xxl: 72, section: 64 }
54
+ rounded: { sm: 4, md: 6, lg: 12, pill: 100, full: 9999 }
55
+ shadow:
56
+ none: "none"
57
+ subtle: "rgba(0, 0, 0, 0.04) 0px 1px 2px"
58
+ components:
59
+ button-primary: { type: button, bg: "#ff8d08", fg: "#ffffff", radius: "100px", height: "56px", padding: "0 28px", font: "16px / 700 Noto Sans CJK KR Bold", shadow: "subtle Framer layered", use: "Marketing primary CTA (시작하기, 무료 데모 시작) — full pill orange" }
60
+ button-ghost: { type: button, fg: "#000000", radius: "118px", height: "36px", padding: "0 28px", font: "12px / 400", use: "Translucent-white ghost pill (데모체험)" }
61
+ button-disabled: { type: button, bg: "#b0b0b0", fg: "#ffffff", radius: "100px", height: "22px", padding: "0 28px", font: "12px / 400", use: "Inactive grey pill (사업자정보 확인)" }
62
+ nav-item: { type: tab, fg: "#000000", radius: "4px", padding: "6px 10px", font: "12px / 400", use: "Marketing top-nav item (서비스/요금제/문의하기)" }
63
+ badge-category: { type: badge, bg: "#22ccdd", fg: "#ffffff", radius: "9999px", font: "14px / 700 Inter", use: "Product-category color chip (cyan/pink #ff3c96/lime #ccdd32/amber #ffbb0e coded)" }
64
+ docs-nav-item: { type: tab, fg: "#6e6e6f", radius: "6px", padding: "6px 12px", font: "14px / 400 Noto Sans", active: "text #53595f, weight 600", use: "Docs sidebar nav item" }
65
+ card-docs: { type: card, bg: "#ffffff", border: "1px solid #d8d9d9", radius: "12px", padding: "6px 12px", use: "Docs guide / section toggle card" }
66
+ input-search: { type: input, bg: "#ffffff", fg: "#1d1d1d", border: "1px solid #d8d9d9", radius: "6px", padding: "8px", font: "14px / 400 Noto Sans", use: "Docs search field (placeholder Search…)" }
67
+ components_harvested: true
68
+ ---
69
+
70
+ # Design System Inspiration of Wisetracker
71
+
72
+ ## 1. Visual Theme & Atmosphere
73
+
74
+ Wisetracker (와이즈트래커) is a Korean marketing-analytics and attribution platform, and its two public surfaces speak in two deliberately different registers. The marketing homepage — built on Framer — is bright, confident and playful: a pure white canvas (`#ffffff`) carries near-black headlines and a single saturated orange (`#ff8d08`) that is reserved almost entirely for the call-to-action. That orange is the whole brand's "do this" signal — every "시작하기" and "무료 데모 시작" button is a full-pill orange lozenge (`border-radius: 100px`), so the eye is trained to read orange-pill as "the next step." Around that disciplined action color the page fans out a genuinely playful accent palette — magenta-pink (`#ff3c96`), salmon (`#ff8da1`), hot magenta (`#ff53ae`), cyan (`#22ccdd`), lime (`#ccdd32`), purple (`#bb66cc`) and amber (`#ffbb0e`) — used as color-coding for product categories and channel chips (카카오 / 메타 / 네이버). The result reads as a data product that wants to feel approachable rather than enterprise-cold.
75
+
76
+ The typographic personality is a two-font split. Korean display and body text run in **Noto Sans CJK KR** — the hero headline sits at a large 52px in the Bold-named face (`"Noto Sans CJK KR Bold"`) with a tight 1.2 line-height, while section titles drop to 20px Bold in a deep navy-black (`#001122`). Latin words inside that Korean layout — "Marketing Automation", "Product", "Category" — switch to **Inter**, using real numeric weights (ExtraBold 800 for nav emphasis, SemiBold 600 for small labels in a muted `#b5b5b5`). Body base text is a quiet black (`#000000`) at a compact 12px, with a soft grey (`#f2f2f2`) doing most of the section separation and muted greys (`#8a8a8a`, disabled `#b0b0b0`) marking secondary and inactive states.
77
+
78
+ The second surface — the official developer docs portal (`document.wisetracker.co.kr`) — is a GitBook-style neutral system that intentionally drops the playfulness. Here the ink is a soft near-black (`#1d1d1d`) on Noto Sans at 16px / 26px line-height, secondary nav is a calm grey (`#6e6e6f`), the active sidebar item is a slate `#53595f` at weight 600, and separation comes from thin `#d8d9d9` hairlines and a barely-there `#f7f7f7` surface rather than color. Radii tighten to a documentation-friendly 6px (rows) and 12px (guide cards). The contrast between the two surfaces is the system: expressive and orange where it sells, quiet and legible where it teaches.
79
+
80
+ **Key Characteristics:**
81
+ - Single saturated orange (`#ff8d08`) reserved for the primary CTA — the one "action" color
82
+ - Full-pill CTA geometry (`100px` radius) — every primary button is a rounded lozenge
83
+ - Playful category-coding accents: pink `#ff3c96`, salmon `#ff8da1`, magenta `#ff53ae`, cyan `#22ccdd`, lime `#ccdd32`, purple `#bb66cc`, amber `#ffbb0e`
84
+ - Two-font split: Noto Sans CJK KR (Bold/Regular named faces) for Korean, Inter for Latin
85
+ - Deep navy-black (`#001122`) headings; quiet black (`#000000`) body over a `#f2f2f2` grey
86
+ - A distinct, neutral docs subsystem: `#1d1d1d` ink, `#6e6e6f` muted, `#d8d9d9` hairlines, `#f7f7f7` surface
87
+ - Muted greys for hierarchy: label `#b5b5b5`, body-muted `#8a8a8a`, disabled `#b0b0b0`
88
+ - Docs slate active state `#53595f` at weight 600; near-flat depth (only a subtle Framer CTA shadow)
89
+
90
+ ## 2. Color Palette & Roles
91
+
92
+ ### Primary & Action
93
+ - **Wisetracker Orange** (`#ff8d08`): The primary brand and action color. Backs every primary CTA ("시작하기", "무료 데모 시작") as a full-pill lozenge — the system's single "do this" signal.
94
+ - **On-Primary White** (`#ffffff`): Label color on the orange CTA and the page canvas.
95
+
96
+ ### Neutrals & Surface
97
+ - **Ink Navy** (`#001122`): Section-heading color — a deep navy-black used for H2 titles instead of pure black.
98
+ - **Pure Black** (`#000000`): Base body/UI text and Latin nav labels.
99
+ - **Canvas White** (`#ffffff`): Page background and card surfaces.
100
+ - **Surface Grey** (`#f2f2f2`): Light grey block separator on the marketing homepage.
101
+ - **Body Muted** (`#8a8a8a`): Secondary/muted body text.
102
+ - **Label Muted** (`#b5b5b5`): Small Latin labels ("Product", "Category").
103
+ - **Disabled Grey** (`#b0b0b0`): Inactive pill background (e.g. "사업자정보 확인").
104
+
105
+ ### Playful Category Accents
106
+ - **Accent Pink** (`#ff3c96`): The most frequent accent — highlight/emphasis text and category chips.
107
+ - **Accent Salmon** (`#ff8da1`): Soft pink category-chip background.
108
+ - **Accent Magenta** (`#ff53ae`): Hot-pink category-chip background.
109
+ - **Accent Cyan** (`#22ccdd`): Cyan category chip.
110
+ - **Accent Lime** (`#ccdd32`): Lime category chip.
111
+ - **Accent Purple** (`#bb66cc`): Purple category chip.
112
+ - **Accent Amber** (`#ffbb0e`): Amber/yellow category chip.
113
+
114
+ ### Docs Subsystem (document.wisetracker.co.kr)
115
+ - **Docs Ink** (`#1d1d1d`): Documentation body text — a soft near-black on Noto Sans.
116
+ - **Docs Muted** (`#6e6e6f`): Secondary docs nav links.
117
+ - **Docs Slate** (`#53595f`): Active sidebar item (weight 600).
118
+ - **Docs Border** (`#d8d9d9`): Hairline borders on guide cards and dividers.
119
+ - **Docs Surface** (`#f7f7f7`): Faint grey surface for docs blocks.
120
+
121
+ ## 3. Typography Rules
122
+
123
+ ### Font Family
124
+ - **Korean display & body**: `Noto Sans CJK KR`, shipped as separate named faces — `"Noto Sans CJK KR Bold"` for headlines and `"Noto Sans CJK KR Regular"` for body. Because boldness is baked into the family name, the CSS `font-weight` computes to `400` even on visually-bold headlines; the token `weight` values below reflect the *visual* weight (700 for the Bold face).
125
+ - **Latin**: `Inter` — used for Latin words inside the Korean layout, with real numeric weights: ExtraBold (800) for nav emphasis, SemiBold (600) for small labels.
126
+ - **Docs**: `Noto Sans` — the developer docs portal uses the Latin/neutral Noto Sans family (not the CJK Bold-named faces) at 16px / 26px line-height.
127
+
128
+ ### Hierarchy
129
+
130
+ | Role | Font | Size | Weight | Line Height | Notes |
131
+ |------|------|------|--------|-------------|-------|
132
+ | Display Hero | Noto Sans CJK KR Bold | 52px | 700 (visual) | 62.4px (1.20) | Marketing hero headline |
133
+ | Lead | Noto Sans CJK KR Regular | 19px | 400 | 22.8px (1.20) | Hero sub-copy |
134
+ | Section | Noto Sans CJK KR Bold | 20px | 700 (visual) | ~1.50 | Section H2 titles, `#001122` |
135
+ | Feature | Noto Sans CJK KR Regular | 18px | 400 | 25.2px (1.40) | Feature descriptions |
136
+ | Nav (Latin) | Inter ExtraBold | 16px | 800 | — | Latin nav emphasis ("Marketing Automation") |
137
+ | Label (Latin) | Inter SemiBold | 14px | 600 | 16.8px | Small labels ("Product", "Category"), `#b5b5b5` |
138
+ | Button | Noto Sans CJK KR Bold | 16px | 700 (visual) | 19.2px (1.20) | White CTA label |
139
+ | Nav | sans-serif | 12px | 400 | — | Marketing top-nav item |
140
+ | Docs Body | Noto Sans | 16px | 400 | 26px (1.625) | Docs reading text, `#1d1d1d` |
141
+ | Docs Nav | Noto Sans | 14px | 400 | — | Docs sidebar / top-nav links |
142
+
143
+ ### Principles
144
+ - **Two fonts, two jobs.** Noto Sans CJK KR carries all Korean copy; Inter carries Latin words and labels. They never swap roles within a surface.
145
+ - **Bold-in-family.** Korean headlines get their weight from the `"…Bold"` named face rather than a numeric `font-weight`, so weight is a font-selection decision, not a CSS value.
146
+ - **Marketing vs docs split.** The docs portal deliberately uses plain Noto Sans at a comfortable 16px/26px for long-form reading, versus the compact 12px UI text on the marketing site.
147
+ - **Latin weights carry emphasis.** Where Inter is used, real weights do the work — ExtraBold (800) for nav, SemiBold (600) for small labels.
148
+
149
+ ## 4. Component Stylings
150
+
151
+ ### Buttons
152
+
153
+ **Primary CTA (Orange Pill)**
154
+ - Background: `#ff8d08`
155
+ - Text: `#ffffff`
156
+ - Radius: 100px
157
+ - Padding: 0px 28px
158
+ - Height: 56px
159
+ - Font: 16px / 700 / Noto Sans CJK KR Bold
160
+ - Shadow: subtle Framer layered shadow (`rgba(0, 0, 0, 0.04) 0px 1px 2px`)
161
+ - Use: Marketing primary action ("시작하기", "무료 데모 시작") — the single brand action color
162
+
163
+ **Primary CTA (Compact)**
164
+ - Background: `#ff8d08`
165
+ - Text: `#ffffff`
166
+ - Radius: 100px
167
+ - Padding: 0px 20px
168
+ - Height: 32px
169
+ - Use: Sticky-nav compact "시작하기" pill
170
+
171
+ **Ghost Pill**
172
+ - Background: translucent white (`rgba(255,255,255,0.05)`)
173
+ - Text: `#000000`
174
+ - Radius: 118px
175
+ - Padding: 0px 28px
176
+ - Height: 36px
177
+ - Use: Secondary "데모체험" pill on tinted hero panels
178
+
179
+ **Disabled Grey Pill**
180
+ - Background: `#b0b0b0`
181
+ - Text: `#ffffff`
182
+ - Radius: 100px
183
+ - Padding: 0px 28px
184
+ - Height: 22px
185
+ - Use: Inactive/utility pill ("사업자정보 확인")
186
+
187
+ ### Inputs & Forms
188
+
189
+ **Docs Search**
190
+ - Background: `#ffffff`
191
+ - Text: `#1d1d1d`
192
+ - Border: 1px solid `#d8d9d9`
193
+ - Radius: 6px
194
+ - Padding: 8px
195
+ - Font: 14px / 400 / Noto Sans
196
+ - Use: Developer-docs search field (placeholder "Search…")
197
+
198
+ ### Cards & Containers
199
+
200
+ **Docs Guide Card**
201
+ - Background: `#ffffff`
202
+ - Border: 1px solid `#d8d9d9`
203
+ - Radius: 12px
204
+ - Padding: 6px 12px
205
+ - Use: Docs guide selector / section toggle card
206
+
207
+ **Marketing Section Surface**
208
+ - Background: `#f2f2f2`
209
+ - Radius: 12px
210
+ - Use: Grey block separating homepage sections
211
+
212
+ ### Badges
213
+
214
+ **Category Color Chip**
215
+ - Background: `#22ccdd`
216
+ - Text: `#ffffff`
217
+ - Radius: 9999px (full)
218
+ - Font: 14px / 700 / Inter
219
+ - Use: Product-category color chip; the same chip recolors to pink (`#ff3c96`), lime (`#ccdd32`), amber (`#ffbb0e`), purple (`#bb66cc`) or salmon (`#ff8da1`) per category
220
+
221
+ ### Tabs & Navigation
222
+
223
+ **Marketing Nav Item**
224
+ - Background: transparent
225
+ - Text: `#000000`
226
+ - Radius: 4px
227
+ - Padding: 6px 10px
228
+ - Font: 12px / 400
229
+ - Use: Top-nav item ("서비스", "요금제", "문의하기", "제휴서비스")
230
+
231
+ **Docs Sidebar Item**
232
+ - Text: `#6e6e6f`
233
+ - Radius: 6px
234
+ - Padding: 6px 6px 6px 12px
235
+ - Font: 14px / 400 / Noto Sans
236
+ - Active: text `#53595f`, weight 600
237
+ - Use: Developer-docs sidebar navigation
238
+
239
+ ---
240
+
241
+ **Verified:** 2026-07-02 (omd:add-reference CREATE — Tier 1 live inspect, 2 surfaces)
242
+ **Tier 1 sources:** https://www.wisetracker.co.kr/ (marketing homepage, live computed style); https://document.wisetracker.co.kr/v2-developer (official developer docs portal, live computed style)
243
+ **Tier 2 sources:** getdesign.md/wisetracker — 0 DESIGN.md files (no data); styles.refero.design/?q=wisetracker — no Wisetracker-specific entry (generic catalog grid only)
244
+ **Conflicts unresolved:** none
245
+
246
+ ## 5. Layout Principles
247
+
248
+ ### Spacing System
249
+ - Base rhythm: ~4px, stepping through 6px, 10px, 12px, 20px, 28px, up to a generous 72px
250
+ - Notable: the primary CTA carries very wide horizontal padding (0px 72px on the hero, 0px 28px elsewhere), making the orange pill an oversized, unmistakable target
251
+ - Docs rows use a tight 6px/12px inset padding for dense navigation
252
+
253
+ ### Grid & Container
254
+ - Marketing homepage is a centered, single-column narrative: 52px hero headline, sub-copy, then an orange CTA
255
+ - Product capabilities are laid out as color-coded category chips and cards
256
+ - Feature sections alternate white (`#ffffff`) and grey (`#f2f2f2`) full-width bands
257
+ - The docs portal is a classic three-zone doc layout: left sidebar nav, center content column, top utility nav
258
+
259
+ ### Whitespace Philosophy
260
+ - **Airy marketing, dense docs.** The homepage breathes with generous vertical rhythm; the docs sidebar packs many links into tight 32px rows.
261
+ - **Color over lines.** On marketing, separation is done with grey tint (`#f2f2f2`) and color; on docs, with thin `#d8d9d9` hairlines and `#f7f7f7` surface.
262
+ - **Pill rhythm.** The repeated full-pill CTA establishes a consistent rounded silhouette across the marketing surface.
263
+
264
+ ### Border Radius Scale
265
+ - Small (4px): marketing nav items
266
+ - Medium (6px): docs rows, docs search
267
+ - Large (12px): docs guide cards
268
+ - Pill (100px / 118px): primary and ghost CTAs
269
+ - Full (9999px): category badges
270
+
271
+ ## 6. Depth & Elevation
272
+
273
+ | Level | Treatment | Use |
274
+ |-------|-----------|-----|
275
+ | Flat (Level 0) | No shadow | Most surfaces, docs content, headings |
276
+ | Subtle (Level 1) | `rgba(0, 0, 0, 0.04) 0px 1px 2px` (soft Framer layered) | Primary CTA lift |
277
+ | Tint (Level 1) | `#f2f2f2` (marketing) / `#f7f7f7` (docs) background shift | Section/block separation without elevation |
278
+ | Hairline (Level 2) | `1px solid #d8d9d9` | Docs card outlines, dividers |
279
+
280
+ **Shadow Philosophy**: Wisetracker is a near-flat system. The only meaningful elevation is a very soft, sub-pixel Framer layered shadow under the orange CTA — everything else relies on flat color tints and hairlines. On the docs portal there is essentially no shadow at all; grouping is done with `#d8d9d9` borders and the faint `#f7f7f7` surface. When the marketing site needs emphasis it reaches for the orange (`#ff8d08`) or a category accent, never for heavy elevation.
281
+
282
+ ## 7. Do's and Don'ts
283
+
284
+ ### Do
285
+ - Reserve orange (`#ff8d08`) for the primary CTA — keep it the single "action" color
286
+ - Make every primary button a full pill (`100px` radius) with white label text
287
+ - Use Noto Sans CJK KR (Bold face) for Korean headlines and Inter for Latin words/labels
288
+ - Use deep navy-black (`#001122`) for section headings, quiet black (`#000000`) for body
289
+ - Deploy the category accents (pink `#ff3c96`, cyan `#22ccdd`, lime `#ccdd32`, amber `#ffbb0e`, purple `#bb66cc`) as color-coding, not as random decoration
290
+ - Separate marketing sections with the `#f2f2f2` grey band
291
+ - On docs surfaces, use `#1d1d1d` ink on Noto Sans with `#d8d9d9` hairlines and 6–12px radii
292
+ - Keep depth flat — a subtle CTA shadow is the ceiling
293
+
294
+ ### Don't
295
+ - Spread orange across many elements — it dilutes the single-action signal
296
+ - Use sharp/square corners on primary CTAs — the brand's buttons are full pills
297
+ - Set Korean headlines in Inter or Latin labels in Noto Sans CJK KR — the two fonts don't swap jobs
298
+ - Use pure black (`#000000`) for section headings — that role belongs to navy `#001122`
299
+ - Carry the playful accent palette into the developer docs — docs stay neutral grey
300
+ - Add heavy drop shadows or card-stacks — the system is near-flat
301
+ - Introduce a competing saturated action color alongside the orange
302
+ - Use the marketing 12px compact type for long-form docs reading — docs use 16px/26px
303
+
304
+ ## 8. Responsive Behavior
305
+
306
+ ### Breakpoints
307
+ | Name | Width | Key Changes |
308
+ |------|-------|-------------|
309
+ | Mobile | <640px | Single column, hero headline compresses, category chips wrap |
310
+ | Tablet | 640–1024px | Moderate padding, 2-up feature cards |
311
+ | Desktop | 1024–1440px | Full centered layout, multi-column feature bands, docs 3-zone layout |
312
+
313
+ ### Touch Targets
314
+ - Primary CTA at 56px height, full pill, wide horizontal padding — an unmistakable, comfortably tappable target
315
+ - Marketing nav items at ~29px with 6px 10px padding
316
+ - Docs sidebar rows at 32px height for dense but tappable navigation
317
+
318
+ ### Collapsing Strategy
319
+ - Hero: 52px headline scales down on mobile; the orange CTA stays full-width-friendly
320
+ - Category chip rows wrap onto multiple lines on narrow viewports
321
+ - Feature bands: multi-column → stacked single column
322
+ - Docs: left sidebar collapses behind a toggle; content column takes full width
323
+
324
+ ### Image Behavior
325
+ - Product/screenshot imagery keeps the near-flat treatment (little to no shadow) at all sizes
326
+ - Cards keep their 12px radius across breakpoints
327
+
328
+ ## 9. Agent Prompt Guide
329
+
330
+ ### Quick Color Reference
331
+ - Primary CTA: Wisetracker Orange (`#ff8d08`), white text
332
+ - Heading: Ink Navy (`#001122`)
333
+ - Body: Pure Black (`#000000`)
334
+ - Marketing surface: Surface Grey (`#f2f2f2`)
335
+ - Muted text: `#8a8a8a`; small labels `#b5b5b5`; disabled `#b0b0b0`
336
+ - Category accents: `#ff3c96`, `#ff8da1`, `#ff53ae`, `#22ccdd`, `#ccdd32`, `#bb66cc`, `#ffbb0e`
337
+ - Docs ink: `#1d1d1d`; docs muted `#6e6e6f`; docs slate `#53595f`; docs border `#d8d9d9`; docs surface `#f7f7f7`
338
+
339
+ ### Example Component Prompts
340
+ - "Create a marketing hero on a white background. Headline at 52px Noto Sans CJK KR Bold, line-height 1.2, color #001122. Sub-copy at 19px Noto Sans CJK KR Regular, #000000. One full-pill CTA: #ff8d08 background, white text, 100px radius, 0 28px padding, 56px height, 16px Noto Sans CJK KR Bold — '무료 데모 시작'."
341
+ - "Design a row of product-category chips: full-round (9999px) badges, white text, cycling background colors #22ccdd, #ff3c96, #ccdd32, #ffbb0e, #bb66cc. 14px Inter weight 700."
342
+ - "Build a developer-docs page: #ffffff canvas, #1d1d1d Noto Sans body at 16px/26px. Left sidebar with 6px-radius rows, inactive links #6e6e6f, active #53595f weight 600. Search field: 1px solid #d8d9d9, 6px radius, 8px padding, placeholder 'Search…'. Guide card: white with 1px #d8d9d9 border, 12px radius."
343
+ - "Create a top nav: transparent items, #000000 text, 4px radius, 6px 10px padding, 12px. Latin emphasis label 'Marketing Automation' in Inter ExtraBold 16px. Orange compact CTA pill right-aligned (#ff8d08, 100px radius, 32px height)."
344
+
345
+ ### Iteration Guide
346
+ 1. Orange (`#ff8d08`) is the single action color — never spread it
347
+ 2. Every primary button is a full pill (100px) with white text
348
+ 3. Noto Sans CJK KR for Korean, Inter for Latin — no swapping
349
+ 4. Headings are navy `#001122`; body is black `#000000`
350
+ 5. Category accents are for color-coding, applied as full-round chips
351
+ 6. Keep depth flat — subtle CTA shadow only, otherwise tints and `#d8d9d9` hairlines
352
+ 7. Docs surfaces stay neutral: `#1d1d1d` ink, `#f7f7f7` surface, 6–12px radii, 16px/26px reading text
353
+
354
+ ---
355
+
356
+ ## 10. Voice & Tone
357
+
358
+ Wisetracker's voice is **practical, expert, and encouraging** — a data-analytics partner that turns a technical domain (attribution, tracking, CRM automation) into approachable Korean. Marketing copy leads with concrete capability and benefit ("똑똑한 데이터 활용을 향한 출발점" / "the starting point toward smart data use"), while the developer docs shift into a precise, instructional register ("SDK 설정 전 기초 진단", "이벤트 발생 현황"). The two surfaces share one goal — make marketing data usable — but the homepage persuades and the docs teach.
359
+
360
+ | Context | Tone |
361
+ |---|---|
362
+ | Hero headlines | Aspirational but concrete. "똑똑한 데이터 활용을 향한 출발점." Confident, not hype. |
363
+ | Feature copy | Benefit-first, decodes the analytics jargon into an outcome. |
364
+ | CTAs | Direct, low-friction. "시작하기", "무료 데모 시작", "데모체험". |
365
+ | Product-update banners | Plain, informative. "[NEW] 회사 도메인으로 만든 트래킹 링크…". |
366
+ | Developer docs | Instructional and precise. Step titles read as tasks: "SDK 연동", "SDK 데이터 검증". |
367
+
368
+ **Voice samples (verbatim from live surfaces):**
369
+ - "똑똑한 데이터 활용을 향한 출발점" — homepage hero headline (aspirational, concrete). *(verified live 2026-07-02)*
370
+ - "와이즈트래커는 마케팅 분석&활용에 필요한 서비스를 통합" — hero sub-copy (integration promise). *(verified live 2026-07-02)*
371
+ - "🧑‍💻 개발자 가이드" / "SDK 설정 전 기초 진단" — docs section labels (task-framed, instructional). *(verified live 2026-07-02)*
372
+
373
+ **Forbidden register**: hype-heavy superlatives, fear-based marketing, undefined analytics jargon left unexplained on marketing surfaces, and playful/emoji tone bleeding into the precise developer docs.
374
+
375
+ ## 11. Brand Narrative
376
+
377
+ Wisetracker (와이즈트래커) is a Korean marketing-analytics and mobile/web attribution platform built for a concrete problem: Korean marketers spend across a fragmented set of channels — 카카오, 메타, 네이버 and more — and struggle to see which spend actually drives conversion. Wisetracker's positioning, stated plainly on its homepage, is to be "the starting point toward smart data use" — a single place to integrate the analysis and activation a marketing team needs, from inflow performance analysis through user-activity analytics to marketing automation.
378
+
379
+ The product surface reflects that mission: channel and category color-coding makes a genuinely technical toolset feel navigable, and the "비교부터 활용까지" style promise — measure, then act — is expressed through the marketing-automation features (e.g. sending a purchase-nudge message to cart-abandoners a day later). The brand pairs an approachable, colorful marketing face with a rigorous developer-docs portal, signalling that it serves both the marketer who wants outcomes and the engineer who has to wire up the SDK.
380
+
381
+ What the design refuses: the cold, chart-heavy austerity of legacy enterprise analytics dashboards (hence the playful accent palette and friendly orange), and, conversely, letting that playfulness undermine the credibility of its technical documentation (hence the deliberately neutral docs subsystem). What it embraces: one clear action color, approachable category-coded color, and a clean separation between "selling the outcome" and "teaching the integration."
382
+
383
+ *(Company-history specifics beyond the live homepage and docs positioning are not asserted here; the narrative above is grounded in the two live-inspected Wisetracker surfaces.)*
384
+
385
+ ## 12. Principles
386
+
387
+ 1. **One action, one color.** Orange (`#ff8d08`) means "do this." *UI implication:* reserve the saturated orange exclusively for the primary CTA so the next step is never ambiguous.
388
+ 2. **Approachable, not enterprise-cold.** A technical analytics product should not feel intimidating. *UI implication:* use the category-accent palette to color-code and humanize a data-heavy toolset.
389
+ 3. **Measure, then act.** The product spans analysis through automation. *UI implication:* let insight surfaces flow directly into an action (a CTA, an automation), never dead-end at a chart.
390
+ 4. **Sell in color, teach in grey.** *UI implication:* keep the marketing surface expressive and orange; keep the developer docs neutral (`#1d1d1d` on `#f7f7f7`, `#d8d9d9` hairlines) for uninterrupted reading.
391
+ 5. **Flat and legible.** Clarity beats decorative depth. *UI implication:* avoid heavy shadows; separate with flat tints, color, and hairlines, keeping the page quick to scan.
392
+
393
+ ## 13. Personas
394
+
395
+ *Personas below are fictional archetypes informed by publicly observable Wisetracker user segments (Korean performance marketers, growth teams, and integration engineers), not individual people.*
396
+
397
+ **정민아, 32, 서울.** A performance marketer at a mid-size e-commerce brand running spend across 카카오, 메타 and 네이버. Chose Wisetracker to see channel attribution in one place and to trigger cart-abandon nudges without engineering help. Values that the dashboard color-codes channels so she can scan performance at a glance.
398
+
399
+ **이도현, 29, 판교.** A mobile engineer responsible for wiring up the tracking SDK. Lives in the developer docs portal; appreciates the task-framed step titles ("SDK 설정 후 체크리스트") and the calm, distraction-free grey documentation layout that lets him focus on code.
400
+
401
+ **한서영, 41, 부산.** A growth lead evaluating analytics platforms. Books the free demo from the orange CTA. Trusts the brand more because the marketing site is approachable while the developer docs are rigorous — a signal that the product is both usable and technically serious.
402
+
403
+ ## 14. States
404
+
405
+ | State | Treatment |
406
+ |---|---|
407
+ | **Empty (no report data)** | White canvas with a single Ink Navy (`#001122`) line explaining there's nothing to show yet, and one orange (`#ff8d08`) CTA to connect a channel or run a demo. No decorative clutter. |
408
+ | **Empty (saved list, none yet)** | Muted (`#8a8a8a`) single line noting nothing saved, with a path back. Calm and honest. |
409
+ | **Loading (dashboard fetch)** | Skeleton blocks on the `#f2f2f2` surface at final dimensions; flat pulse consistent with the near-flat system — no heavy shimmer. |
410
+ | **Loading (docs search)** | Inline progress within the search field; prior results stay visible. |
411
+ | **Error (data fetch failed)** | Inline message in Ink Navy with a plain-language explanation and a retry action — never a bare "오류가 발생했습니다". |
412
+ | **Error (form validation)** | Field-level message below the input in a warm error tone; states what's valid, not just "필수". |
413
+ | **Success (demo requested / action saved)** | Brief inline confirmation in a calm tone; next-step detail linked immediately below. No celebratory emoji. |
414
+ | **Skeleton** | `#f2f2f2` (marketing) / `#f7f7f7` (docs) blocks at final dimensions, matching radii (12px cards, 6px rows), flat pulse. |
415
+ | **Disabled** | Grey (`#b0b0b0`) pill / faint (`#b5b5b5`) label on reduced-opacity surface; the orange CTA fades rather than turning a different hue, preserving the brand read. |
416
+
417
+ ## 15. Motion & Easing
418
+
419
+ **Durations**:
420
+
421
+ | Token | Value | Use |
422
+ |---|---|---|
423
+ | `motion-fast` | 120ms | Hover, CTA press, focus |
424
+ | `motion-standard` | 200ms | Card/section reveal, sidebar expand, dropdown |
425
+ | `motion-slow` | 320ms | Page-level transitions, hero reveal |
426
+
427
+ **Easings**:
428
+
429
+ | Token | Curve | Use |
430
+ |---|---|---|
431
+ | `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Arriving — cards, chips, sheets |
432
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
433
+ | `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Two-way transitions |
434
+
435
+ **Motion rules**: Motion is functional and quiet, consistent with the near-flat aesthetic. The orange CTA responds to press with a subtle scale/opacity shift; category chips and cards fade-in from below at `motion-standard / ease-enter`. The developer docs keep motion minimal — sidebar expand/collapse only. No bounce or spring: an analytics product signals steadiness and precision, not playfulness in motion. Under `prefers-reduced-motion: reduce`, all transitions collapse to instant while the product stays fully functional.
436
+
437
+ <!--
438
+ OmD v0.1 Sources — Philosophy Layer (sections 10–15)
439
+
440
+ Tier 1 live inspect (2026-07-02) via playwright getComputedStyle on two surfaces:
441
+ - https://www.wisetracker.co.kr/ — marketing homepage (hero, nav, CTA, category chips)
442
+ - https://document.wisetracker.co.kr/v2-developer — official developer docs portal
443
+
444
+ Token-level claims (§1-9) are sourced from this live inspection (see .verification.md
445
+ Proof block for the raw computed-style samples).
446
+
447
+ Voice samples (§10) are verbatim from the live homepage (hero headline, sub-copy) and
448
+ the live docs portal (section labels).
449
+
450
+ Brand narrative (§11) is grounded in the positioning stated on the two live-inspected
451
+ Wisetracker surfaces (mission copy "똑똑한 데이터 활용을 향한 출발점", the integration
452
+ promise, and the analysis→automation feature set). Company-history specifics beyond the
453
+ live surfaces are not asserted.
454
+
455
+ Personas (§13) are fictional archetypes informed by publicly observable Wisetracker user
456
+ segments (Korean performance marketers, growth teams, integration engineers). Names are
457
+ illustrative; they do not refer to real people.
458
+
459
+ Interpretive claims (e.g., "one action, one color", "sell in color, teach in grey") are
460
+ editorial readings connecting Wisetracker's observed two-surface design to its
461
+ positioning, not directly sourced Wisetracker statements.
462
+ -->