zugzbot 1.2.0 → 1.4.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 (786) hide show
  1. package/.opencode/agents/sdd-coder.md +5 -4
  2. package/.opencode/agents/sdd-orchestrator.md +11 -10
  3. package/.opencode/agents/sdd-spec-writer.md +3 -4
  4. package/.opencode/commands/loop.md +1 -1
  5. package/.opencode/plugins/loop-enforcer.ts +0 -1
  6. package/.opencode/plugins/sdd-bridge.ts +1 -1
  7. package/.opencode/rules/sdd-global.md +8 -0
  8. package/.opencode/scripts/lint-charts.js +1 -2
  9. package/.opencode/skills/sdd-foundation-overview/SKILL.md +3 -4
  10. package/.opencode/skills/sdd-methodology/SKILL.md +8 -10
  11. package/.opencode/skills/sdd-quickstart/SKILL.md +5 -9
  12. package/.opencode/skills/shadcn-templates/SKILL.md +93 -32
  13. package/.opencode/templates/nextjs-shadcn/components.json +4 -1
  14. package/.opencode/tools/sdd_bootstrap.ts +21 -0
  15. package/.opencode/tools/sdd_catalog.ts +1040 -0
  16. package/.opencode/tools/sdd_core.ts +8 -6
  17. package/.opencode/tools/sdd_lucide.ts +112 -0
  18. package/README.md +1 -7
  19. package/opencode.json +0 -10
  20. package/package.json +1 -3
  21. package/.opencode/oh-my-design/design-md/11st/.verification.md +0 -37
  22. package/.opencode/oh-my-design/design-md/11st/DESIGN.md +0 -400
  23. package/.opencode/oh-my-design/design-md/17live/DESIGN.md +0 -467
  24. package/.opencode/oh-my-design/design-md/29cm/DESIGN.md +0 -495
  25. package/.opencode/oh-my-design/design-md/29cm/_promo.json +0 -23
  26. package/.opencode/oh-my-design/design-md/29cm/_research.md +0 -103
  27. package/.opencode/oh-my-design/design-md/3o3/.verification.md +0 -73
  28. package/.opencode/oh-my-design/design-md/3o3/DESIGN.md +0 -454
  29. package/.opencode/oh-my-design/design-md/91app/.verification.md +0 -25
  30. package/.opencode/oh-my-design/design-md/91app/DESIGN.md +0 -182
  31. package/.opencode/oh-my-design/design-md/abema/.verification.md +0 -64
  32. package/.opencode/oh-my-design/design-md/abema/DESIGN.md +0 -535
  33. package/.opencode/oh-my-design/design-md/ably/DESIGN.md +0 -646
  34. package/.opencode/oh-my-design/design-md/ably/_promo.json +0 -18
  35. package/.opencode/oh-my-design/design-md/ably/_research.md +0 -120
  36. package/.opencode/oh-my-design/design-md/accupass/.verification.md +0 -66
  37. package/.opencode/oh-my-design/design-md/accupass/DESIGN.md +0 -494
  38. package/.opencode/oh-my-design/design-md/adobe/.verification.md +0 -63
  39. package/.opencode/oh-my-design/design-md/adobe/DESIGN.md +0 -458
  40. package/.opencode/oh-my-design/design-md/airbnb/.verification.md +0 -143
  41. package/.opencode/oh-my-design/design-md/airbnb/DESIGN.md +0 -639
  42. package/.opencode/oh-my-design/design-md/airbnb/README.md +0 -23
  43. package/.opencode/oh-my-design/design-md/airbnb/preview-dark.html +0 -234
  44. package/.opencode/oh-my-design/design-md/airbnb/preview.html +0 -233
  45. package/.opencode/oh-my-design/design-md/airtable/.verification.md +0 -136
  46. package/.opencode/oh-my-design/design-md/airtable/DESIGN.md +0 -314
  47. package/.opencode/oh-my-design/design-md/airtable/README.md +0 -23
  48. package/.opencode/oh-my-design/design-md/airtable/preview-dark.html +0 -165
  49. package/.opencode/oh-my-design/design-md/airtable/preview.html +0 -164
  50. package/.opencode/oh-my-design/design-md/alipay/DESIGN.md +0 -506
  51. package/.opencode/oh-my-design/design-md/amazingtalker/.verification.md +0 -38
  52. package/.opencode/oh-my-design/design-md/amazingtalker/DESIGN.md +0 -434
  53. package/.opencode/oh-my-design/design-md/appier/DESIGN.md +0 -465
  54. package/.opencode/oh-my-design/design-md/apple/.verification.md +0 -162
  55. package/.opencode/oh-my-design/design-md/apple/DESIGN.md +0 -613
  56. package/.opencode/oh-my-design/design-md/apple/README.md +0 -24
  57. package/.opencode/oh-my-design/design-md/apple/preview-dark.html +0 -420
  58. package/.opencode/oh-my-design/design-md/apple/preview.html +0 -414
  59. package/.opencode/oh-my-design/design-md/baemin/.verification.md +0 -132
  60. package/.opencode/oh-my-design/design-md/baemin/DESIGN.md +0 -578
  61. package/.opencode/oh-my-design/design-md/baemin/README.md +0 -19
  62. package/.opencode/oh-my-design/design-md/baemin/_research.md +0 -84
  63. package/.opencode/oh-my-design/design-md/banksalad/DESIGN.md +0 -688
  64. package/.opencode/oh-my-design/design-md/banksalad/_promo.json +0 -29
  65. package/.opencode/oh-my-design/design-md/banksalad/_research.md +0 -190
  66. package/.opencode/oh-my-design/design-md/bilibili/DESIGN.md +0 -471
  67. package/.opencode/oh-my-design/design-md/bithumb/.verification.md +0 -31
  68. package/.opencode/oh-my-design/design-md/bithumb/DESIGN.md +0 -208
  69. package/.opencode/oh-my-design/design-md/bmw/.verification.md +0 -114
  70. package/.opencode/oh-my-design/design-md/bmw/DESIGN.md +0 -360
  71. package/.opencode/oh-my-design/design-md/bmw/README.md +0 -23
  72. package/.opencode/oh-my-design/design-md/bmw/preview-dark.html +0 -211
  73. package/.opencode/oh-my-design/design-md/bmw/preview.html +0 -210
  74. package/.opencode/oh-my-design/design-md/brandi/.verification.md +0 -29
  75. package/.opencode/oh-my-design/design-md/brandi/DESIGN.md +0 -414
  76. package/.opencode/oh-my-design/design-md/bunjang/DESIGN.md +0 -374
  77. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/.live-inspect-proof.json +0 -260
  78. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/fonts.json +0 -33
  79. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/logo-icon.svg +0 -10
  80. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/structure.json +0 -131
  81. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/tokens.json +0 -147
  82. package/.opencode/oh-my-design/design-md/cakeresume/.verification.md +0 -25
  83. package/.opencode/oh-my-design/design-md/cakeresume/DESIGN.md +0 -191
  84. package/.opencode/oh-my-design/design-md/cal/.verification.md +0 -145
  85. package/.opencode/oh-my-design/design-md/cal/DESIGN.md +0 -481
  86. package/.opencode/oh-my-design/design-md/cal/README.md +0 -23
  87. package/.opencode/oh-my-design/design-md/cal/preview-dark.html +0 -449
  88. package/.opencode/oh-my-design/design-md/cal/preview.html +0 -575
  89. package/.opencode/oh-my-design/design-md/catchtable/DESIGN.md +0 -341
  90. package/.opencode/oh-my-design/design-md/catchtable/_research.md +0 -54
  91. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/.live-inspect-proof.json +0 -204
  92. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/.live-inspect-raw.json +0 -22
  93. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/fonts.json +0 -21
  94. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/structure.json +0 -42
  95. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/tokens.json +0 -95
  96. package/.opencode/oh-my-design/design-md/cathay/.verification.md +0 -44
  97. package/.opencode/oh-my-design/design-md/cathay/DESIGN.md +0 -432
  98. package/.opencode/oh-my-design/design-md/channeltalk/DESIGN.md +0 -422
  99. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/.live-inspect-proof.json +0 -320
  100. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/fonts.json +0 -53
  101. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/structure.json +0 -47
  102. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/tokens.json +0 -78
  103. package/.opencode/oh-my-design/design-md/class101/DESIGN.md +0 -484
  104. package/.opencode/oh-my-design/design-md/classting/.verification.md +0 -32
  105. package/.opencode/oh-my-design/design-md/classting/DESIGN.md +0 -292
  106. package/.opencode/oh-my-design/design-md/classum/DESIGN.md +0 -279
  107. package/.opencode/oh-my-design/design-md/classum/assets/_reference/.live-inspect-proof.json +0 -72
  108. package/.opencode/oh-my-design/design-md/classum/assets/_reference/fonts.json +0 -20
  109. package/.opencode/oh-my-design/design-md/classum/assets/_reference/structure.json +0 -21
  110. package/.opencode/oh-my-design/design-md/classum/assets/_reference/tokens.json +0 -56
  111. package/.opencode/oh-my-design/design-md/claude/.verification.md +0 -106
  112. package/.opencode/oh-my-design/design-md/claude/DESIGN.md +0 -561
  113. package/.opencode/oh-my-design/design-md/claude/README.md +0 -24
  114. package/.opencode/oh-my-design/design-md/claude/preview-dark.html +0 -803
  115. package/.opencode/oh-my-design/design-md/claude/preview.html +0 -826
  116. package/.opencode/oh-my-design/design-md/clay/.verification.md +0 -129
  117. package/.opencode/oh-my-design/design-md/clay/DESIGN.md +0 -454
  118. package/.opencode/oh-my-design/design-md/clay/README.md +0 -23
  119. package/.opencode/oh-my-design/design-md/clay/preview-dark.html +0 -316
  120. package/.opencode/oh-my-design/design-md/clay/preview.html +0 -315
  121. package/.opencode/oh-my-design/design-md/clickhouse/.verification.md +0 -132
  122. package/.opencode/oh-my-design/design-md/clickhouse/DESIGN.md +0 -424
  123. package/.opencode/oh-my-design/design-md/clickhouse/README.md +0 -24
  124. package/.opencode/oh-my-design/design-md/clickhouse/preview-dark.html +0 -834
  125. package/.opencode/oh-my-design/design-md/clickhouse/preview.html +0 -786
  126. package/.opencode/oh-my-design/design-md/cloudflare/.verification.md +0 -21
  127. package/.opencode/oh-my-design/design-md/cloudflare/DESIGN.md +0 -637
  128. package/.opencode/oh-my-design/design-md/cohere/.verification.md +0 -136
  129. package/.opencode/oh-my-design/design-md/cohere/DESIGN.md +0 -409
  130. package/.opencode/oh-my-design/design-md/cohere/README.md +0 -24
  131. package/.opencode/oh-my-design/design-md/cohere/preview-dark.html +0 -803
  132. package/.opencode/oh-my-design/design-md/cohere/preview.html +0 -807
  133. package/.opencode/oh-my-design/design-md/coinbase/.verification.md +0 -116
  134. package/.opencode/oh-my-design/design-md/coinbase/DESIGN.md +0 -353
  135. package/.opencode/oh-my-design/design-md/coinbase/README.md +0 -23
  136. package/.opencode/oh-my-design/design-md/coinbase/preview-dark.html +0 -164
  137. package/.opencode/oh-my-design/design-md/coinbase/preview.html +0 -163
  138. package/.opencode/oh-my-design/design-md/coinone/.verification.md +0 -38
  139. package/.opencode/oh-my-design/design-md/coinone/DESIGN.md +0 -257
  140. package/.opencode/oh-my-design/design-md/composio/.verification.md +0 -143
  141. package/.opencode/oh-my-design/design-md/composio/DESIGN.md +0 -441
  142. package/.opencode/oh-my-design/design-md/composio/README.md +0 -24
  143. package/.opencode/oh-my-design/design-md/composio/preview-dark.html +0 -958
  144. package/.opencode/oh-my-design/design-md/composio/preview.html +0 -933
  145. package/.opencode/oh-my-design/design-md/cookpad/DESIGN.md +0 -394
  146. package/.opencode/oh-my-design/design-md/coupang/.verification.md +0 -141
  147. package/.opencode/oh-my-design/design-md/coupang/DESIGN.md +0 -557
  148. package/.opencode/oh-my-design/design-md/cursor/.verification.md +0 -141
  149. package/.opencode/oh-my-design/design-md/cursor/DESIGN.md +0 -460
  150. package/.opencode/oh-my-design/design-md/cursor/README.md +0 -24
  151. package/.opencode/oh-my-design/design-md/cursor/preview-dark.html +0 -393
  152. package/.opencode/oh-my-design/design-md/cursor/preview.html +0 -383
  153. package/.opencode/oh-my-design/design-md/dabang/DESIGN.md +0 -267
  154. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/.live-inspect-proof.json +0 -145
  155. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/fonts.json +0 -22
  156. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/raw-capture-map.json +0 -718
  157. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/raw-capture.json +0 -1125
  158. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/structure.json +0 -53
  159. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/tokens.json +0 -130
  160. package/.opencode/oh-my-design/design-md/danawa/.verification.md +0 -60
  161. package/.opencode/oh-my-design/design-md/danawa/DESIGN.md +0 -477
  162. package/.opencode/oh-my-design/design-md/dcard/.verification.md +0 -118
  163. package/.opencode/oh-my-design/design-md/dcard/DESIGN.md +0 -633
  164. package/.opencode/oh-my-design/design-md/dcard/README.md +0 -12
  165. package/.opencode/oh-my-design/design-md/dcard/_research/forum-1440px.png +0 -0
  166. package/.opencode/oh-my-design/design-md/dcard/_research.md +0 -133
  167. package/.opencode/oh-my-design/design-md/dell/.verification.md +0 -21
  168. package/.opencode/oh-my-design/design-md/dell/DESIGN.md +0 -636
  169. package/.opencode/oh-my-design/design-md/devsisters/.verification.md +0 -32
  170. package/.opencode/oh-my-design/design-md/devsisters/DESIGN.md +0 -282
  171. package/.opencode/oh-my-design/design-md/discord/.verification.md +0 -21
  172. package/.opencode/oh-my-design/design-md/discord/DESIGN.md +0 -604
  173. package/.opencode/oh-my-design/design-md/dji/DESIGN.md +0 -454
  174. package/.opencode/oh-my-design/design-md/drnow/.verification.md +0 -41
  175. package/.opencode/oh-my-design/design-md/drnow/DESIGN.md +0 -383
  176. package/.opencode/oh-my-design/design-md/dropbox/.verification.md +0 -61
  177. package/.opencode/oh-my-design/design-md/dropbox/DESIGN.md +0 -445
  178. package/.opencode/oh-my-design/design-md/duolingo/.verification.md +0 -20
  179. package/.opencode/oh-my-design/design-md/duolingo/DESIGN.md +0 -563
  180. package/.opencode/oh-my-design/design-md/elevenlabs/.verification.md +0 -128
  181. package/.opencode/oh-my-design/design-md/elevenlabs/DESIGN.md +0 -415
  182. package/.opencode/oh-my-design/design-md/elevenlabs/README.md +0 -23
  183. package/.opencode/oh-my-design/design-md/elevenlabs/preview-dark.html +0 -252
  184. package/.opencode/oh-my-design/design-md/elevenlabs/preview.html +0 -251
  185. package/.opencode/oh-my-design/design-md/expo/.verification.md +0 -141
  186. package/.opencode/oh-my-design/design-md/expo/DESIGN.md +0 -412
  187. package/.opencode/oh-my-design/design-md/expo/README.md +0 -24
  188. package/.opencode/oh-my-design/design-md/expo/preview-dark.html +0 -533
  189. package/.opencode/oh-my-design/design-md/expo/preview.html +0 -533
  190. package/.opencode/oh-my-design/design-md/fastcampus/DESIGN.md +0 -529
  191. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/.live-inspect-proof.json +0 -950
  192. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/fonts.json +0 -14
  193. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/structure.json +0 -30
  194. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/tokens.json +0 -109
  195. package/.opencode/oh-my-design/design-md/ferrari/.verification.md +0 -119
  196. package/.opencode/oh-my-design/design-md/ferrari/DESIGN.md +0 -447
  197. package/.opencode/oh-my-design/design-md/ferrari/README.md +0 -23
  198. package/.opencode/oh-my-design/design-md/ferrari/preview-dark.html +0 -1162
  199. package/.opencode/oh-my-design/design-md/ferrari/preview.html +0 -1122
  200. package/.opencode/oh-my-design/design-md/figma/.verification.md +0 -206
  201. package/.opencode/oh-my-design/design-md/figma/DESIGN.md +0 -534
  202. package/.opencode/oh-my-design/design-md/figma/README.md +0 -24
  203. package/.opencode/oh-my-design/design-md/figma/preview-dark.html +0 -822
  204. package/.opencode/oh-my-design/design-md/figma/preview.html +0 -832
  205. package/.opencode/oh-my-design/design-md/finda/.verification.md +0 -33
  206. package/.opencode/oh-my-design/design-md/finda/DESIGN.md +0 -413
  207. package/.opencode/oh-my-design/design-md/firstory/.verification.md +0 -70
  208. package/.opencode/oh-my-design/design-md/firstory/DESIGN.md +0 -487
  209. package/.opencode/oh-my-design/design-md/flex/DESIGN.md +0 -356
  210. package/.opencode/oh-my-design/design-md/flex/_research.md +0 -49
  211. package/.opencode/oh-my-design/design-md/flex/assets/_reference/.live-inspect-proof.json +0 -192
  212. package/.opencode/oh-my-design/design-md/flex/assets/_reference/.raw-inspect.json +0 -873
  213. package/.opencode/oh-my-design/design-md/flex/assets/_reference/fonts.json +0 -17
  214. package/.opencode/oh-my-design/design-md/flex/assets/_reference/structure.json +0 -58
  215. package/.opencode/oh-my-design/design-md/flex/assets/_reference/tokens.json +0 -75
  216. package/.opencode/oh-my-design/design-md/flo/.verification.md +0 -33
  217. package/.opencode/oh-my-design/design-md/flo/DESIGN.md +0 -349
  218. package/.opencode/oh-my-design/design-md/framer/.verification.md +0 -147
  219. package/.opencode/oh-my-design/design-md/framer/DESIGN.md +0 -431
  220. package/.opencode/oh-my-design/design-md/framer/README.md +0 -23
  221. package/.opencode/oh-my-design/design-md/framer/preview-dark.html +0 -902
  222. package/.opencode/oh-my-design/design-md/framer/preview.html +0 -883
  223. package/.opencode/oh-my-design/design-md/freee/.verification.md +0 -145
  224. package/.opencode/oh-my-design/design-md/freee/DESIGN.md +0 -620
  225. package/.opencode/oh-my-design/design-md/freee/README.md +0 -12
  226. package/.opencode/oh-my-design/design-md/freee/_research/vibes-storybook-1440px.png +0 -0
  227. package/.opencode/oh-my-design/design-md/freee/_research.md +0 -116
  228. package/.opencode/oh-my-design/design-md/fugle/.verification.md +0 -40
  229. package/.opencode/oh-my-design/design-md/fugle/DESIGN.md +0 -290
  230. package/.opencode/oh-my-design/design-md/funnow/.verification.md +0 -62
  231. package/.opencode/oh-my-design/design-md/funnow/DESIGN.md +0 -431
  232. package/.opencode/oh-my-design/design-md/gangnamunni/DESIGN.md +0 -677
  233. package/.opencode/oh-my-design/design-md/gangnamunni/_promo.json +0 -26
  234. package/.opencode/oh-my-design/design-md/gangnamunni/_research.md +0 -113
  235. package/.opencode/oh-my-design/design-md/genie/.verification.md +0 -29
  236. package/.opencode/oh-my-design/design-md/genie/DESIGN.md +0 -415
  237. package/.opencode/oh-my-design/design-md/github/.verification.md +0 -21
  238. package/.opencode/oh-my-design/design-md/github/DESIGN.md +0 -727
  239. package/.opencode/oh-my-design/design-md/gmarket/DESIGN.md +0 -534
  240. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/.live-inspect-proof.json +0 -217
  241. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/fonts.json +0 -41
  242. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/raw-capture-bestsellers.json +0 -1929
  243. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/raw-capture-home.json +0 -3675
  244. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/structure.json +0 -65
  245. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/tokens.json +0 -210
  246. package/.opencode/oh-my-design/design-md/gogolook/.verification.md +0 -31
  247. package/.opencode/oh-my-design/design-md/gogolook/DESIGN.md +0 -155
  248. package/.opencode/oh-my-design/design-md/gogoro/DESIGN.md +0 -441
  249. package/.opencode/oh-my-design/design-md/google/.verification.md +0 -61
  250. package/.opencode/oh-my-design/design-md/google/DESIGN.md +0 -499
  251. package/.opencode/oh-my-design/design-md/greenvines/.verification.md +0 -72
  252. package/.opencode/oh-my-design/design-md/greenvines/DESIGN.md +0 -454
  253. package/.opencode/oh-my-design/design-md/greeting/.verification.md +0 -64
  254. package/.opencode/oh-my-design/design-md/greeting/DESIGN.md +0 -462
  255. package/.opencode/oh-my-design/design-md/grip/.verification.md +0 -36
  256. package/.opencode/oh-my-design/design-md/grip/DESIGN.md +0 -289
  257. package/.opencode/oh-my-design/design-md/hahow/.verification.md +0 -31
  258. package/.opencode/oh-my-design/design-md/hahow/DESIGN.md +0 -184
  259. package/.opencode/oh-my-design/design-md/hashicorp/.verification.md +0 -142
  260. package/.opencode/oh-my-design/design-md/hashicorp/DESIGN.md +0 -411
  261. package/.opencode/oh-my-design/design-md/hashicorp/README.md +0 -24
  262. package/.opencode/oh-my-design/design-md/hashicorp/preview-dark.html +0 -1202
  263. package/.opencode/oh-my-design/design-md/hashicorp/preview.html +0 -1193
  264. package/.opencode/oh-my-design/design-md/hogangnono/.verification.md +0 -33
  265. package/.opencode/oh-my-design/design-md/hogangnono/DESIGN.md +0 -349
  266. package/.opencode/oh-my-design/design-md/hp/.verification.md +0 -21
  267. package/.opencode/oh-my-design/design-md/hp/DESIGN.md +0 -563
  268. package/.opencode/oh-my-design/design-md/hyperconnect/.verification.md +0 -40
  269. package/.opencode/oh-my-design/design-md/hyperconnect/DESIGN.md +0 -393
  270. package/.opencode/oh-my-design/design-md/hyundaicard/.verification.md +0 -25
  271. package/.opencode/oh-my-design/design-md/hyundaicard/DESIGN.md +0 -201
  272. package/.opencode/oh-my-design/design-md/ibm/.verification.md +0 -102
  273. package/.opencode/oh-my-design/design-md/ibm/DESIGN.md +0 -464
  274. package/.opencode/oh-my-design/design-md/ibm/README.md +0 -24
  275. package/.opencode/oh-my-design/design-md/ibm/preview-dark.html +0 -443
  276. package/.opencode/oh-my-design/design-md/ibm/preview.html +0 -428
  277. package/.opencode/oh-my-design/design-md/ichef/DESIGN.md +0 -455
  278. package/.opencode/oh-my-design/design-md/ikala/.verification.md +0 -35
  279. package/.opencode/oh-my-design/design-md/ikala/DESIGN.md +0 -400
  280. package/.opencode/oh-my-design/design-md/imweb/.verification.md +0 -61
  281. package/.opencode/oh-my-design/design-md/imweb/DESIGN.md +0 -460
  282. package/.opencode/oh-my-design/design-md/inflearn/DESIGN.md +0 -453
  283. package/.opencode/oh-my-design/design-md/inflearn/_promo.json +0 -29
  284. package/.opencode/oh-my-design/design-md/inflearn/_research.md +0 -85
  285. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/.live-inspect-proof-courses.json +0 -679
  286. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/.live-inspect-proof.json +0 -448
  287. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/fonts.json +0 -41
  288. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/structure.json +0 -110
  289. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/tokens.json +0 -54
  290. package/.opencode/oh-my-design/design-md/intercom/.verification.md +0 -144
  291. package/.opencode/oh-my-design/design-md/intercom/DESIGN.md +0 -271
  292. package/.opencode/oh-my-design/design-md/intercom/README.md +0 -23
  293. package/.opencode/oh-my-design/design-md/intercom/preview-dark.html +0 -185
  294. package/.opencode/oh-my-design/design-md/intercom/preview.html +0 -184
  295. package/.opencode/oh-my-design/design-md/jandi/.verification.md +0 -26
  296. package/.opencode/oh-my-design/design-md/jandi/DESIGN.md +0 -382
  297. package/.opencode/oh-my-design/design-md/jkopay/.verification.md +0 -32
  298. package/.opencode/oh-my-design/design-md/jkopay/DESIGN.md +0 -283
  299. package/.opencode/oh-my-design/design-md/jobkorea/.verification.md +0 -30
  300. package/.opencode/oh-my-design/design-md/jobkorea/DESIGN.md +0 -349
  301. package/.opencode/oh-my-design/design-md/jumpit/DESIGN.md +0 -403
  302. package/.opencode/oh-my-design/design-md/jumpit/_research.md +0 -119
  303. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/.live-inspect-proof.json +0 -182
  304. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/fonts.json +0 -20
  305. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/structure.json +0 -66
  306. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/tokens.json +0 -108
  307. package/.opencode/oh-my-design/design-md/kakao/.verification.md +0 -137
  308. package/.opencode/oh-my-design/design-md/kakao/DESIGN.md +0 -568
  309. package/.opencode/oh-my-design/design-md/kakao/README.md +0 -18
  310. package/.opencode/oh-my-design/design-md/kakao/_research.md +0 -98
  311. package/.opencode/oh-my-design/design-md/kakaobank/.verification.md +0 -133
  312. package/.opencode/oh-my-design/design-md/kakaobank/DESIGN.md +0 -602
  313. package/.opencode/oh-my-design/design-md/kakaopay/DESIGN.md +0 -603
  314. package/.opencode/oh-my-design/design-md/kakaopay/_promo.json +0 -22
  315. package/.opencode/oh-my-design/design-md/kakaopay/_research.md +0 -84
  316. package/.opencode/oh-my-design/design-md/kakaot/DESIGN.md +0 -507
  317. package/.opencode/oh-my-design/design-md/karrot/.verification.md +0 -143
  318. package/.opencode/oh-my-design/design-md/karrot/DESIGN.md +0 -494
  319. package/.opencode/oh-my-design/design-md/karrot/README.md +0 -18
  320. package/.opencode/oh-my-design/design-md/karrot/_research.md +0 -57
  321. package/.opencode/oh-my-design/design-md/kbank/DESIGN.md +0 -252
  322. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/.live-inspect-proof.json +0 -215
  323. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/.live-inspect-raw.json +0 -1
  324. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/fonts.json +0 -20
  325. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/structure.json +0 -151
  326. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/tokens.json +0 -101
  327. package/.opencode/oh-my-design/design-md/kdan/.verification.md +0 -30
  328. package/.opencode/oh-my-design/design-md/kdan/DESIGN.md +0 -193
  329. package/.opencode/oh-my-design/design-md/kintone/.verification.md +0 -21
  330. package/.opencode/oh-my-design/design-md/kintone/DESIGN.md +0 -586
  331. package/.opencode/oh-my-design/design-md/kkbox/.verification.md +0 -27
  332. package/.opencode/oh-my-design/design-md/kkbox/DESIGN.md +0 -136
  333. package/.opencode/oh-my-design/design-md/kkday/DESIGN.md +0 -470
  334. package/.opencode/oh-my-design/design-md/kmong/.verification.md +0 -30
  335. package/.opencode/oh-my-design/design-md/kmong/DESIGN.md +0 -427
  336. package/.opencode/oh-my-design/design-md/krafton/.verification.md +0 -38
  337. package/.opencode/oh-my-design/design-md/krafton/DESIGN.md +0 -267
  338. package/.opencode/oh-my-design/design-md/kraken/.verification.md +0 -143
  339. package/.opencode/oh-my-design/design-md/kraken/DESIGN.md +0 -277
  340. package/.opencode/oh-my-design/design-md/kraken/README.md +0 -23
  341. package/.opencode/oh-my-design/design-md/kraken/preview-dark.html +0 -169
  342. package/.opencode/oh-my-design/design-md/kraken/preview.html +0 -168
  343. package/.opencode/oh-my-design/design-md/krds/.verification.md +0 -373
  344. package/.opencode/oh-my-design/design-md/krds/DESIGN.md +0 -1060
  345. package/.opencode/oh-my-design/design-md/kream/DESIGN.md +0 -432
  346. package/.opencode/oh-my-design/design-md/kream/assets/_reference/.live-inspect-proof.json +0 -289
  347. package/.opencode/oh-my-design/design-md/kream/assets/_reference/fonts.json +0 -26
  348. package/.opencode/oh-my-design/design-md/kream/assets/_reference/structure.json +0 -56
  349. package/.opencode/oh-my-design/design-md/kream/assets/_reference/tokens.json +0 -154
  350. package/.opencode/oh-my-design/design-md/kurly/.verification.md +0 -126
  351. package/.opencode/oh-my-design/design-md/kurly/DESIGN.md +0 -620
  352. package/.opencode/oh-my-design/design-md/laftel/.verification.md +0 -39
  353. package/.opencode/oh-my-design/design-md/laftel/DESIGN.md +0 -293
  354. package/.opencode/oh-my-design/design-md/lamborghini/.verification.md +0 -127
  355. package/.opencode/oh-my-design/design-md/lamborghini/DESIGN.md +0 -430
  356. package/.opencode/oh-my-design/design-md/lamborghini/README.md +0 -23
  357. package/.opencode/oh-my-design/design-md/lamborghini/preview-dark.html +0 -303
  358. package/.opencode/oh-my-design/design-md/lamborghini/preview.html +0 -381
  359. package/.opencode/oh-my-design/design-md/laundrygo/.verification.md +0 -60
  360. package/.opencode/oh-my-design/design-md/laundrygo/DESIGN.md +0 -434
  361. package/.opencode/oh-my-design/design-md/layerx/.verification.md +0 -21
  362. package/.opencode/oh-my-design/design-md/layerx/DESIGN.md +0 -615
  363. package/.opencode/oh-my-design/design-md/lezhin/.verification.md +0 -47
  364. package/.opencode/oh-my-design/design-md/lezhin/DESIGN.md +0 -348
  365. package/.opencode/oh-my-design/design-md/line/.verification.md +0 -137
  366. package/.opencode/oh-my-design/design-md/line/DESIGN.md +0 -467
  367. package/.opencode/oh-my-design/design-md/line/README.md +0 -12
  368. package/.opencode/oh-my-design/design-md/line/_research/home-1440px.png +0 -0
  369. package/.opencode/oh-my-design/design-md/line/_research.md +0 -65
  370. package/.opencode/oh-my-design/design-md/linear.app/.verification.md +0 -143
  371. package/.opencode/oh-my-design/design-md/linear.app/DESIGN.md +0 -642
  372. package/.opencode/oh-my-design/design-md/linear.app/README.md +0 -24
  373. package/.opencode/oh-my-design/design-md/linear.app/preview-dark.html +0 -383
  374. package/.opencode/oh-my-design/design-md/linear.app/preview.html +0 -373
  375. package/.opencode/oh-my-design/design-md/loom/.verification.md +0 -31
  376. package/.opencode/oh-my-design/design-md/loom/DESIGN.md +0 -396
  377. package/.opencode/oh-my-design/design-md/lovable/.verification.md +0 -154
  378. package/.opencode/oh-my-design/design-md/lovable/DESIGN.md +0 -423
  379. package/.opencode/oh-my-design/design-md/lovable/README.md +0 -24
  380. package/.opencode/oh-my-design/design-md/lovable/preview-dark.html +0 -349
  381. package/.opencode/oh-my-design/design-md/lovable/preview.html +0 -348
  382. package/.opencode/oh-my-design/design-md/lunit/DESIGN.md +0 -296
  383. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/.live-inspect-proof.json +0 -249
  384. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/fonts.json +0 -24
  385. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/structure.json +0 -162
  386. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/tokens.json +0 -115
  387. package/.opencode/oh-my-design/design-md/mastercard/.verification.md +0 -19
  388. package/.opencode/oh-my-design/design-md/mastercard/DESIGN.md +0 -587
  389. package/.opencode/oh-my-design/design-md/meituan/DESIGN.md +0 -466
  390. package/.opencode/oh-my-design/design-md/melon/.verification.md +0 -27
  391. package/.opencode/oh-my-design/design-md/melon/DESIGN.md +0 -179
  392. package/.opencode/oh-my-design/design-md/mercari/.verification.md +0 -155
  393. package/.opencode/oh-my-design/design-md/mercari/DESIGN.md +0 -514
  394. package/.opencode/oh-my-design/design-md/mercari/README.md +0 -12
  395. package/.opencode/oh-my-design/design-md/mercari/_research/home-1440px.png +0 -0
  396. package/.opencode/oh-my-design/design-md/mercari/_research.md +0 -137
  397. package/.opencode/oh-my-design/design-md/mercury/.verification.md +0 -21
  398. package/.opencode/oh-my-design/design-md/mercury/DESIGN.md +0 -589
  399. package/.opencode/oh-my-design/design-md/meta/.verification.md +0 -21
  400. package/.opencode/oh-my-design/design-md/meta/DESIGN.md +0 -615
  401. package/.opencode/oh-my-design/design-md/microsoft/.verification.md +0 -62
  402. package/.opencode/oh-my-design/design-md/microsoft/DESIGN.md +0 -508
  403. package/.opencode/oh-my-design/design-md/millie/DESIGN.md +0 -584
  404. package/.opencode/oh-my-design/design-md/minimax/.verification.md +0 -135
  405. package/.opencode/oh-my-design/design-md/minimax/DESIGN.md +0 -396
  406. package/.opencode/oh-my-design/design-md/minimax/README.md +0 -24
  407. package/.opencode/oh-my-design/design-md/minimax/preview-dark.html +0 -1262
  408. package/.opencode/oh-my-design/design-md/minimax/preview.html +0 -1248
  409. package/.opencode/oh-my-design/design-md/mintlify/.verification.md +0 -160
  410. package/.opencode/oh-my-design/design-md/mintlify/DESIGN.md +0 -472
  411. package/.opencode/oh-my-design/design-md/mintlify/README.md +0 -24
  412. package/.opencode/oh-my-design/design-md/mintlify/preview-dark.html +0 -409
  413. package/.opencode/oh-my-design/design-md/mintlify/preview.html +0 -398
  414. package/.opencode/oh-my-design/design-md/miricanvas/.verification.md +0 -61
  415. package/.opencode/oh-my-design/design-md/miricanvas/DESIGN.md +0 -464
  416. package/.opencode/oh-my-design/design-md/miro/.verification.md +0 -138
  417. package/.opencode/oh-my-design/design-md/miro/DESIGN.md +0 -319
  418. package/.opencode/oh-my-design/design-md/miro/README.md +0 -23
  419. package/.opencode/oh-my-design/design-md/miro/preview-dark.html +0 -174
  420. package/.opencode/oh-my-design/design-md/miro/preview.html +0 -173
  421. package/.opencode/oh-my-design/design-md/mistral.ai/.verification.md +0 -146
  422. package/.opencode/oh-my-design/design-md/mistral.ai/DESIGN.md +0 -390
  423. package/.opencode/oh-my-design/design-md/mistral.ai/README.md +0 -24
  424. package/.opencode/oh-my-design/design-md/mistral.ai/preview-dark.html +0 -806
  425. package/.opencode/oh-my-design/design-md/mistral.ai/preview.html +0 -805
  426. package/.opencode/oh-my-design/design-md/modusign/.verification.md +0 -58
  427. package/.opencode/oh-my-design/design-md/modusign/DESIGN.md +0 -524
  428. package/.opencode/oh-my-design/design-md/momoshop/.verification.md +0 -36
  429. package/.opencode/oh-my-design/design-md/momoshop/DESIGN.md +0 -322
  430. package/.opencode/oh-my-design/design-md/money-forward/DESIGN.md +0 -443
  431. package/.opencode/oh-my-design/design-md/mongodb/.verification.md +0 -145
  432. package/.opencode/oh-my-design/design-md/mongodb/DESIGN.md +0 -401
  433. package/.opencode/oh-my-design/design-md/mongodb/README.md +0 -23
  434. package/.opencode/oh-my-design/design-md/mongodb/preview-dark.html +0 -260
  435. package/.opencode/oh-my-design/design-md/mongodb/preview.html +0 -259
  436. package/.opencode/oh-my-design/design-md/muji/.verification.md +0 -20
  437. package/.opencode/oh-my-design/design-md/muji/DESIGN.md +0 -605
  438. package/.opencode/oh-my-design/design-md/musinsa/.verification.md +0 -59
  439. package/.opencode/oh-my-design/design-md/musinsa/DESIGN.md +0 -593
  440. package/.opencode/oh-my-design/design-md/mustit/.verification.md +0 -37
  441. package/.opencode/oh-my-design/design-md/mustit/DESIGN.md +0 -328
  442. package/.opencode/oh-my-design/design-md/myrealtrip/DESIGN.md +0 -494
  443. package/.opencode/oh-my-design/design-md/naver/.verification.md +0 -134
  444. package/.opencode/oh-my-design/design-md/naver/DESIGN.md +0 -582
  445. package/.opencode/oh-my-design/design-md/naverwebtoon/DESIGN.md +0 -477
  446. package/.opencode/oh-my-design/design-md/netflix/.verification.md +0 -21
  447. package/.opencode/oh-my-design/design-md/netflix/DESIGN.md +0 -572
  448. package/.opencode/oh-my-design/design-md/nexon/.verification.md +0 -27
  449. package/.opencode/oh-my-design/design-md/nexon/DESIGN.md +0 -389
  450. package/.opencode/oh-my-design/design-md/nhncloud/.verification.md +0 -23
  451. package/.opencode/oh-my-design/design-md/nhncloud/DESIGN.md +0 -207
  452. package/.opencode/oh-my-design/design-md/nike/.verification.md +0 -21
  453. package/.opencode/oh-my-design/design-md/nike/DESIGN.md +0 -588
  454. package/.opencode/oh-my-design/design-md/note/DESIGN.md +0 -346
  455. package/.opencode/oh-my-design/design-md/notion/.verification.md +0 -141
  456. package/.opencode/oh-my-design/design-md/notion/DESIGN.md +0 -557
  457. package/.opencode/oh-my-design/design-md/notion/README.md +0 -24
  458. package/.opencode/oh-my-design/design-md/notion/preview-dark.html +0 -372
  459. package/.opencode/oh-my-design/design-md/notion/preview.html +0 -364
  460. package/.opencode/oh-my-design/design-md/nvidia/.verification.md +0 -127
  461. package/.opencode/oh-my-design/design-md/nvidia/DESIGN.md +0 -550
  462. package/.opencode/oh-my-design/design-md/nvidia/README.md +0 -24
  463. package/.opencode/oh-my-design/design-md/nvidia/_research.md +0 -68
  464. package/.opencode/oh-my-design/design-md/nvidia/preview-dark.html +0 -374
  465. package/.opencode/oh-my-design/design-md/nvidia/preview.html +0 -366
  466. package/.opencode/oh-my-design/design-md/ohouse/.verification.md +0 -87
  467. package/.opencode/oh-my-design/design-md/ohouse/DESIGN.md +0 -635
  468. package/.opencode/oh-my-design/design-md/oliveyoung/DESIGN.md +0 -407
  469. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/.live-inspect-proof.json +0 -158
  470. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_best_capture.json +0 -644
  471. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_detail_capture.json +0 -447
  472. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_main.html +0 -419
  473. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_main_capture.json +0 -1126
  474. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_search_capture.json +0 -912
  475. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/fonts.json +0 -20
  476. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/structure.json +0 -91
  477. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/tokens.json +0 -79
  478. package/.opencode/oh-my-design/design-md/ollama/.verification.md +0 -138
  479. package/.opencode/oh-my-design/design-md/ollama/DESIGN.md +0 -393
  480. package/.opencode/oh-my-design/design-md/ollama/README.md +0 -24
  481. package/.opencode/oh-my-design/design-md/ollama/preview-dark.html +0 -678
  482. package/.opencode/oh-my-design/design-md/ollama/preview.html +0 -678
  483. package/.opencode/oh-my-design/design-md/omnichat/.verification.md +0 -74
  484. package/.opencode/oh-my-design/design-md/omnichat/DESIGN.md +0 -499
  485. package/.opencode/oh-my-design/design-md/openai/.verification.md +0 -21
  486. package/.opencode/oh-my-design/design-md/openai/DESIGN.md +0 -641
  487. package/.opencode/oh-my-design/design-md/opencode.ai/.verification.md +0 -136
  488. package/.opencode/oh-my-design/design-md/opencode.ai/DESIGN.md +0 -425
  489. package/.opencode/oh-my-design/design-md/opencode.ai/README.md +0 -24
  490. package/.opencode/oh-my-design/design-md/opencode.ai/preview-dark.html +0 -366
  491. package/.opencode/oh-my-design/design-md/opencode.ai/preview.html +0 -357
  492. package/.opencode/oh-my-design/design-md/payco/.verification.md +0 -28
  493. package/.opencode/oh-my-design/design-md/payco/DESIGN.md +0 -267
  494. package/.opencode/oh-my-design/design-md/paypay/.verification.md +0 -21
  495. package/.opencode/oh-my-design/design-md/paypay/DESIGN.md +0 -656
  496. package/.opencode/oh-my-design/design-md/pchome/.verification.md +0 -38
  497. package/.opencode/oh-my-design/design-md/pchome/DESIGN.md +0 -439
  498. package/.opencode/oh-my-design/design-md/perplexity/.verification.md +0 -21
  499. package/.opencode/oh-my-design/design-md/perplexity/DESIGN.md +0 -546
  500. package/.opencode/oh-my-design/design-md/piccollage/.verification.md +0 -34
  501. package/.opencode/oh-my-design/design-md/piccollage/DESIGN.md +0 -320
  502. package/.opencode/oh-my-design/design-md/pinkoi/.verification.md +0 -147
  503. package/.opencode/oh-my-design/design-md/pinkoi/DESIGN.md +0 -639
  504. package/.opencode/oh-my-design/design-md/pinkoi/README.md +0 -12
  505. package/.opencode/oh-my-design/design-md/pinkoi/_research/browse-1440px.png +0 -0
  506. package/.opencode/oh-my-design/design-md/pinkoi/_research.md +0 -167
  507. package/.opencode/oh-my-design/design-md/pinterest/.verification.md +0 -141
  508. package/.opencode/oh-my-design/design-md/pinterest/DESIGN.md +0 -366
  509. package/.opencode/oh-my-design/design-md/pinterest/README.md +0 -23
  510. package/.opencode/oh-my-design/design-md/pinterest/preview-dark.html +0 -233
  511. package/.opencode/oh-my-design/design-md/pinterest/preview.html +0 -232
  512. package/.opencode/oh-my-design/design-md/pixiv/.verification.md +0 -20
  513. package/.opencode/oh-my-design/design-md/pixiv/DESIGN.md +0 -613
  514. package/.opencode/oh-my-design/design-md/pixnet/.verification.md +0 -31
  515. package/.opencode/oh-my-design/design-md/pixnet/DESIGN.md +0 -430
  516. package/.opencode/oh-my-design/design-md/posthog/.verification.md +0 -159
  517. package/.opencode/oh-my-design/design-md/posthog/DESIGN.md +0 -480
  518. package/.opencode/oh-my-design/design-md/posthog/README.md +0 -23
  519. package/.opencode/oh-my-design/design-md/posthog/preview-dark.html +0 -699
  520. package/.opencode/oh-my-design/design-md/posthog/preview.html +0 -749
  521. package/.opencode/oh-my-design/design-md/postype/.verification.md +0 -61
  522. package/.opencode/oh-my-design/design-md/postype/DESIGN.md +0 -431
  523. package/.opencode/oh-my-design/design-md/publy/DESIGN.md +0 -563
  524. package/.opencode/oh-my-design/design-md/qanda/.verification.md +0 -121
  525. package/.opencode/oh-my-design/design-md/qanda/DESIGN.md +0 -516
  526. package/.opencode/oh-my-design/design-md/ragic/.verification.md +0 -37
  527. package/.opencode/oh-my-design/design-md/ragic/DESIGN.md +0 -444
  528. package/.opencode/oh-my-design/design-md/rakuten/.verification.md +0 -60
  529. package/.opencode/oh-my-design/design-md/rakuten/DESIGN.md +0 -440
  530. package/.opencode/oh-my-design/design-md/ramp/.verification.md +0 -21
  531. package/.opencode/oh-my-design/design-md/ramp/DESIGN.md +0 -634
  532. package/.opencode/oh-my-design/design-md/rayark/.verification.md +0 -22
  533. package/.opencode/oh-my-design/design-md/rayark/DESIGN.md +0 -154
  534. package/.opencode/oh-my-design/design-md/raycast/.verification.md +0 -138
  535. package/.opencode/oh-my-design/design-md/raycast/DESIGN.md +0 -467
  536. package/.opencode/oh-my-design/design-md/raycast/README.md +0 -23
  537. package/.opencode/oh-my-design/design-md/raycast/preview-dark.html +0 -606
  538. package/.opencode/oh-my-design/design-md/raycast/preview.html +0 -688
  539. package/.opencode/oh-my-design/design-md/remember/.verification.md +0 -135
  540. package/.opencode/oh-my-design/design-md/remember/DESIGN.md +0 -504
  541. package/.opencode/oh-my-design/design-md/remember/_promo.json +0 -27
  542. package/.opencode/oh-my-design/design-md/remember/_research.md +0 -90
  543. package/.opencode/oh-my-design/design-md/renault/.verification.md +0 -139
  544. package/.opencode/oh-my-design/design-md/renault/DESIGN.md +0 -439
  545. package/.opencode/oh-my-design/design-md/renault/README.md +0 -23
  546. package/.opencode/oh-my-design/design-md/renault/preview-dark.html +0 -406
  547. package/.opencode/oh-my-design/design-md/renault/preview.html +0 -606
  548. package/.opencode/oh-my-design/design-md/replicate/.verification.md +0 -154
  549. package/.opencode/oh-my-design/design-md/replicate/DESIGN.md +0 -387
  550. package/.opencode/oh-my-design/design-md/replicate/README.md +0 -24
  551. package/.opencode/oh-my-design/design-md/replicate/preview-dark.html +0 -828
  552. package/.opencode/oh-my-design/design-md/replicate/preview.html +0 -831
  553. package/.opencode/oh-my-design/design-md/resend/.verification.md +0 -143
  554. package/.opencode/oh-my-design/design-md/resend/DESIGN.md +0 -440
  555. package/.opencode/oh-my-design/design-md/resend/README.md +0 -23
  556. package/.opencode/oh-my-design/design-md/resend/preview-dark.html +0 -355
  557. package/.opencode/oh-my-design/design-md/resend/preview.html +0 -354
  558. package/.opencode/oh-my-design/design-md/retool/.verification.md +0 -21
  559. package/.opencode/oh-my-design/design-md/retool/DESIGN.md +0 -645
  560. package/.opencode/oh-my-design/design-md/revolut/.verification.md +0 -140
  561. package/.opencode/oh-my-design/design-md/revolut/DESIGN.md +0 -319
  562. package/.opencode/oh-my-design/design-md/revolut/README.md +0 -23
  563. package/.opencode/oh-my-design/design-md/revolut/preview-dark.html +0 -234
  564. package/.opencode/oh-my-design/design-md/revolut/preview.html +0 -233
  565. package/.opencode/oh-my-design/design-md/richart/.verification.md +0 -41
  566. package/.opencode/oh-my-design/design-md/richart/DESIGN.md +0 -465
  567. package/.opencode/oh-my-design/design-md/ridi/.verification.md +0 -108
  568. package/.opencode/oh-my-design/design-md/ridi/DESIGN.md +0 -573
  569. package/.opencode/oh-my-design/design-md/riiid/.verification.md +0 -33
  570. package/.opencode/oh-my-design/design-md/riiid/DESIGN.md +0 -260
  571. package/.opencode/oh-my-design/design-md/ringle/.verification.md +0 -53
  572. package/.opencode/oh-my-design/design-md/ringle/DESIGN.md +0 -444
  573. package/.opencode/oh-my-design/design-md/robinhood/.verification.md +0 -21
  574. package/.opencode/oh-my-design/design-md/robinhood/DESIGN.md +0 -604
  575. package/.opencode/oh-my-design/design-md/runwayml/.verification.md +0 -141
  576. package/.opencode/oh-my-design/design-md/runwayml/DESIGN.md +0 -431
  577. package/.opencode/oh-my-design/design-md/runwayml/README.md +0 -24
  578. package/.opencode/oh-my-design/design-md/runwayml/preview-dark.html +0 -664
  579. package/.opencode/oh-my-design/design-md/runwayml/preview.html +0 -665
  580. package/.opencode/oh-my-design/design-md/salesforce/.verification.md +0 -66
  581. package/.opencode/oh-my-design/design-md/salesforce/DESIGN.md +0 -473
  582. package/.opencode/oh-my-design/design-md/sanity/.verification.md +0 -174
  583. package/.opencode/oh-my-design/design-md/sanity/DESIGN.md +0 -499
  584. package/.opencode/oh-my-design/design-md/sanity/README.md +0 -24
  585. package/.opencode/oh-my-design/design-md/sanity/preview-dark.html +0 -990
  586. package/.opencode/oh-my-design/design-md/sanity/preview.html +0 -1135
  587. package/.opencode/oh-my-design/design-md/sansan/.verification.md +0 -21
  588. package/.opencode/oh-my-design/design-md/sansan/DESIGN.md +0 -631
  589. package/.opencode/oh-my-design/design-md/sendbird/.verification.md +0 -67
  590. package/.opencode/oh-my-design/design-md/sendbird/DESIGN.md +0 -331
  591. package/.opencode/oh-my-design/design-md/sentry/.verification.md +0 -157
  592. package/.opencode/oh-my-design/design-md/sentry/DESIGN.md +0 -397
  593. package/.opencode/oh-my-design/design-md/sentry/README.md +0 -24
  594. package/.opencode/oh-my-design/design-md/sentry/preview-dark.html +0 -626
  595. package/.opencode/oh-my-design/design-md/sentry/preview.html +0 -951
  596. package/.opencode/oh-my-design/design-md/shinhancard/.verification.md +0 -31
  597. package/.opencode/oh-my-design/design-md/shinhancard/DESIGN.md +0 -421
  598. package/.opencode/oh-my-design/design-md/shopline/.verification.md +0 -34
  599. package/.opencode/oh-my-design/design-md/shopline/DESIGN.md +0 -431
  600. package/.opencode/oh-my-design/design-md/slack/.verification.md +0 -21
  601. package/.opencode/oh-my-design/design-md/slack/DESIGN.md +0 -635
  602. package/.opencode/oh-my-design/design-md/smarthr/DESIGN.md +0 -452
  603. package/.opencode/oh-my-design/design-md/smartnews/DESIGN.md +0 -360
  604. package/.opencode/oh-my-design/design-md/socar/DESIGN.md +0 -438
  605. package/.opencode/oh-my-design/design-md/socar/_promo.json +0 -28
  606. package/.opencode/oh-my-design/design-md/socar/_research.md +0 -55
  607. package/.opencode/oh-my-design/design-md/soomgo/.verification.md +0 -27
  608. package/.opencode/oh-my-design/design-md/soomgo/DESIGN.md +0 -326
  609. package/.opencode/oh-my-design/design-md/spacex/.verification.md +0 -132
  610. package/.opencode/oh-my-design/design-md/spacex/DESIGN.md +0 -415
  611. package/.opencode/oh-my-design/design-md/spacex/README.md +0 -23
  612. package/.opencode/oh-my-design/design-md/spacex/_research.md +0 -69
  613. package/.opencode/oh-my-design/design-md/spacex/preview-dark.html +0 -221
  614. package/.opencode/oh-my-design/design-md/spacex/preview.html +0 -220
  615. package/.opencode/oh-my-design/design-md/spoon/DESIGN.md +0 -492
  616. package/.opencode/oh-my-design/design-md/spotify/.verification.md +0 -128
  617. package/.opencode/oh-my-design/design-md/spotify/DESIGN.md +0 -489
  618. package/.opencode/oh-my-design/design-md/spotify/README.md +0 -23
  619. package/.opencode/oh-my-design/design-md/spotify/preview-dark.html +0 -231
  620. package/.opencode/oh-my-design/design-md/spotify/preview.html +0 -230
  621. package/.opencode/oh-my-design/design-md/starbucks/.verification.md +0 -21
  622. package/.opencode/oh-my-design/design-md/starbucks/DESIGN.md +0 -597
  623. package/.opencode/oh-my-design/design-md/stores/.verification.md +0 -61
  624. package/.opencode/oh-my-design/design-md/stores/DESIGN.md +0 -447
  625. package/.opencode/oh-my-design/design-md/stripe/.verification.md +0 -140
  626. package/.opencode/oh-my-design/design-md/stripe/DESIGN.md +0 -571
  627. package/.opencode/oh-my-design/design-md/stripe/README.md +0 -24
  628. package/.opencode/oh-my-design/design-md/stripe/preview-dark.html +0 -428
  629. package/.opencode/oh-my-design/design-md/stripe/preview.html +0 -419
  630. package/.opencode/oh-my-design/design-md/studio/.verification.md +0 -21
  631. package/.opencode/oh-my-design/design-md/studio/DESIGN.md +0 -602
  632. package/.opencode/oh-my-design/design-md/supabase/.verification.md +0 -145
  633. package/.opencode/oh-my-design/design-md/supabase/DESIGN.md +0 -389
  634. package/.opencode/oh-my-design/design-md/supabase/README.md +0 -24
  635. package/.opencode/oh-my-design/design-md/supabase/preview-dark.html +0 -977
  636. package/.opencode/oh-my-design/design-md/supabase/preview.html +0 -955
  637. package/.opencode/oh-my-design/design-md/superhuman/.verification.md +0 -184
  638. package/.opencode/oh-my-design/design-md/superhuman/DESIGN.md +0 -453
  639. package/.opencode/oh-my-design/design-md/superhuman/README.md +0 -23
  640. package/.opencode/oh-my-design/design-md/superhuman/preview-dark.html +0 -973
  641. package/.opencode/oh-my-design/design-md/superhuman/preview.html +0 -951
  642. package/.opencode/oh-my-design/design-md/surveycake/.verification.md +0 -31
  643. package/.opencode/oh-my-design/design-md/surveycake/DESIGN.md +0 -442
  644. package/.opencode/oh-my-design/design-md/tada/DESIGN.md +0 -579
  645. package/.opencode/oh-my-design/design-md/teamblind/.verification.md +0 -76
  646. package/.opencode/oh-my-design/design-md/teamblind/DESIGN.md +0 -497
  647. package/.opencode/oh-my-design/design-md/tesla/.verification.md +0 -149
  648. package/.opencode/oh-my-design/design-md/tesla/DESIGN.md +0 -501
  649. package/.opencode/oh-my-design/design-md/tesla/README.md +0 -23
  650. package/.opencode/oh-my-design/design-md/tesla/_research.md +0 -70
  651. package/.opencode/oh-my-design/design-md/tesla/preview-dark.html +0 -947
  652. package/.opencode/oh-my-design/design-md/tesla/preview.html +0 -925
  653. package/.opencode/oh-my-design/design-md/theverge/.verification.md +0 -21
  654. package/.opencode/oh-my-design/design-md/theverge/DESIGN.md +0 -500
  655. package/.opencode/oh-my-design/design-md/timee/.verification.md +0 -67
  656. package/.opencode/oh-my-design/design-md/timee/DESIGN.md +0 -444
  657. package/.opencode/oh-my-design/design-md/together.ai/.verification.md +0 -145
  658. package/.opencode/oh-my-design/design-md/together.ai/DESIGN.md +0 -389
  659. package/.opencode/oh-my-design/design-md/together.ai/README.md +0 -24
  660. package/.opencode/oh-my-design/design-md/together.ai/preview-dark.html +0 -892
  661. package/.opencode/oh-my-design/design-md/together.ai/preview.html +0 -897
  662. package/.opencode/oh-my-design/design-md/toss/.verification.md +0 -120
  663. package/.opencode/oh-my-design/design-md/toss/DESIGN.md +0 -698
  664. package/.opencode/oh-my-design/design-md/toss/README.md +0 -19
  665. package/.opencode/oh-my-design/design-md/toss-securities/DESIGN.md +0 -247
  666. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-proof.json +0 -126
  667. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-raw.json +0 -619
  668. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-stock.json +0 -525
  669. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/fonts.json +0 -24
  670. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/structure.json +0 -35
  671. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/tokens.json +0 -87
  672. package/.opencode/oh-my-design/design-md/tossbank/DESIGN.md +0 -576
  673. package/.opencode/oh-my-design/design-md/trenbe/.verification.md +0 -32
  674. package/.opencode/oh-my-design/design-md/trenbe/DESIGN.md +0 -293
  675. package/.opencode/oh-my-design/design-md/triple/DESIGN.md +0 -481
  676. package/.opencode/oh-my-design/design-md/tumblbug/DESIGN.md +0 -578
  677. package/.opencode/oh-my-design/design-md/tving/DESIGN.md +0 -317
  678. package/.opencode/oh-my-design/design-md/tving/assets/_reference/.live-inspect-proof.json +0 -131
  679. package/.opencode/oh-my-design/design-md/tving/assets/_reference/LICENSE-NOTE.md +0 -37
  680. package/.opencode/oh-my-design/design-md/tving/assets/_reference/attribution.md +0 -52
  681. package/.opencode/oh-my-design/design-md/tving/assets/_reference/fonts.json +0 -31
  682. package/.opencode/oh-my-design/design-md/tving/assets/_reference/screenshots/hero-desktop.png +0 -0
  683. package/.opencode/oh-my-design/design-md/tving/assets/_reference/structure.json +0 -55
  684. package/.opencode/oh-my-design/design-md/tving/assets/_reference/tokens.json +0 -115
  685. package/.opencode/oh-my-design/design-md/uber/.verification.md +0 -128
  686. package/.opencode/oh-my-design/design-md/uber/DESIGN.md +0 -423
  687. package/.opencode/oh-my-design/design-md/uber/README.md +0 -24
  688. package/.opencode/oh-my-design/design-md/uber/preview-dark.html +0 -1120
  689. package/.opencode/oh-my-design/design-md/uber/preview.html +0 -1119
  690. package/.opencode/oh-my-design/design-md/ubie/.verification.md +0 -21
  691. package/.opencode/oh-my-design/design-md/ubie/DESIGN.md +0 -615
  692. package/.opencode/oh-my-design/design-md/uniqlo/.verification.md +0 -21
  693. package/.opencode/oh-my-design/design-md/uniqlo/DESIGN.md +0 -575
  694. package/.opencode/oh-my-design/design-md/upbit/DESIGN.md +0 -337
  695. package/.opencode/oh-my-design/design-md/upbit/_research.md +0 -83
  696. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/.live-inspect-proof.json +0 -263
  697. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/fonts.json +0 -18
  698. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/raw-capture-exchange.json +0 -1901
  699. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/raw-capture.json +0 -1121
  700. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/structure.json +0 -52
  701. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/tokens.json +0 -169
  702. package/.opencode/oh-my-design/design-md/upstage/DESIGN.md +0 -270
  703. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/.live-inspect-proof.json +0 -157
  704. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_brand-resource-center.json +0 -44
  705. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_curated-samples.json +0 -310
  706. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_raw-capture.json +0 -1560
  707. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_root-vars.json +0 -76
  708. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_structure-raw.json +0 -298
  709. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/fonts.json +0 -35
  710. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/structure.json +0 -72
  711. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/tokens.json +0 -183
  712. package/.opencode/oh-my-design/design-md/velog/.verification.md +0 -26
  713. package/.opencode/oh-my-design/design-md/velog/DESIGN.md +0 -196
  714. package/.opencode/oh-my-design/design-md/vercel/.verification.md +0 -134
  715. package/.opencode/oh-my-design/design-md/vercel/DESIGN.md +0 -523
  716. package/.opencode/oh-my-design/design-md/vercel/README.md +0 -24
  717. package/.opencode/oh-my-design/design-md/vercel/preview-dark.html +0 -368
  718. package/.opencode/oh-my-design/design-md/vercel/preview.html +0 -367
  719. package/.opencode/oh-my-design/design-md/voicetube/.verification.md +0 -34
  720. package/.opencode/oh-my-design/design-md/voicetube/DESIGN.md +0 -266
  721. package/.opencode/oh-my-design/design-md/voltagent/.verification.md +0 -159
  722. package/.opencode/oh-my-design/design-md/voltagent/DESIGN.md +0 -454
  723. package/.opencode/oh-my-design/design-md/voltagent/README.md +0 -24
  724. package/.opencode/oh-my-design/design-md/voltagent/preview-dark.html +0 -487
  725. package/.opencode/oh-my-design/design-md/voltagent/preview.html +0 -766
  726. package/.opencode/oh-my-design/design-md/wadiz/DESIGN.md +0 -415
  727. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/.live-inspect-proof.json +0 -137
  728. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/fonts.json +0 -17
  729. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/structure.json +0 -35
  730. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/tokens.json +0 -80
  731. package/.opencode/oh-my-design/design-md/wanted/DESIGN.md +0 -575
  732. package/.opencode/oh-my-design/design-md/wanted/_promo.json +0 -31
  733. package/.opencode/oh-my-design/design-md/wanted/_research.md +0 -119
  734. package/.opencode/oh-my-design/design-md/wantedly/.verification.md +0 -53
  735. package/.opencode/oh-my-design/design-md/wantedly/DESIGN.md +0 -437
  736. package/.opencode/oh-my-design/design-md/warp/.verification.md +0 -156
  737. package/.opencode/oh-my-design/design-md/warp/DESIGN.md +0 -431
  738. package/.opencode/oh-my-design/design-md/warp/README.md +0 -23
  739. package/.opencode/oh-my-design/design-md/warp/preview-dark.html +0 -500
  740. package/.opencode/oh-my-design/design-md/warp/preview.html +0 -533
  741. package/.opencode/oh-my-design/design-md/watcha/DESIGN.md +0 -465
  742. package/.opencode/oh-my-design/design-md/wavve/DESIGN.md +0 -480
  743. package/.opencode/oh-my-design/design-md/wconcept/DESIGN.md +0 -556
  744. package/.opencode/oh-my-design/design-md/webflow/.verification.md +0 -151
  745. package/.opencode/oh-my-design/design-md/webflow/DESIGN.md +0 -330
  746. package/.opencode/oh-my-design/design-md/webflow/README.md +0 -23
  747. package/.opencode/oh-my-design/design-md/webflow/preview-dark.html +0 -147
  748. package/.opencode/oh-my-design/design-md/webflow/preview.html +0 -146
  749. package/.opencode/oh-my-design/design-md/wired/.verification.md +0 -21
  750. package/.opencode/oh-my-design/design-md/wired/DESIGN.md +0 -572
  751. package/.opencode/oh-my-design/design-md/wise/.verification.md +0 -141
  752. package/.opencode/oh-my-design/design-md/wise/DESIGN.md +0 -317
  753. package/.opencode/oh-my-design/design-md/wise/README.md +0 -23
  754. package/.opencode/oh-my-design/design-md/wise/preview-dark.html +0 -230
  755. package/.opencode/oh-my-design/design-md/wise/preview.html +0 -229
  756. package/.opencode/oh-my-design/design-md/x.ai/.verification.md +0 -140
  757. package/.opencode/oh-my-design/design-md/x.ai/DESIGN.md +0 -397
  758. package/.opencode/oh-my-design/design-md/x.ai/README.md +0 -24
  759. package/.opencode/oh-my-design/design-md/x.ai/preview-dark.html +0 -356
  760. package/.opencode/oh-my-design/design-md/x.ai/preview.html +0 -407
  761. package/.opencode/oh-my-design/design-md/xiaohongshu/DESIGN.md +0 -462
  762. package/.opencode/oh-my-design/design-md/yanolja/.verification.md +0 -83
  763. package/.opencode/oh-my-design/design-md/yanolja/DESIGN.md +0 -508
  764. package/.opencode/oh-my-design/design-md/yeogiotte/.verification.md +0 -210
  765. package/.opencode/oh-my-design/design-md/yeogiotte/DESIGN.md +0 -500
  766. package/.opencode/oh-my-design/design-md/yogiyo/DESIGN.md +0 -515
  767. package/.opencode/oh-my-design/design-md/yourator/.verification.md +0 -39
  768. package/.opencode/oh-my-design/design-md/yourator/DESIGN.md +0 -453
  769. package/.opencode/oh-my-design/design-md/zapier/.verification.md +0 -156
  770. package/.opencode/oh-my-design/design-md/zapier/DESIGN.md +0 -474
  771. package/.opencode/oh-my-design/design-md/zapier/README.md +0 -24
  772. package/.opencode/oh-my-design/design-md/zapier/preview-dark.html +0 -380
  773. package/.opencode/oh-my-design/design-md/zapier/preview.html +0 -372
  774. package/.opencode/oh-my-design/design-md/zigbang/DESIGN.md +0 -500
  775. package/.opencode/oh-my-design/design-md/zigbang/_promo.json +0 -16
  776. package/.opencode/oh-my-design/design-md/zigbang/_research.md +0 -101
  777. package/.opencode/oh-my-design/design-md/zigzag/DESIGN.md +0 -695
  778. package/.opencode/oh-my-design/design-md/zigzag/_promo.json +0 -23
  779. package/.opencode/oh-my-design/design-md/zigzag/_research.md +0 -64
  780. package/.opencode/oh-my-design/design-md/zozotown/.verification.md +0 -20
  781. package/.opencode/oh-my-design/design-md/zozotown/DESIGN.md +0 -578
  782. package/.opencode/oh-my-design/packages/mcp/dist/index.mjs +0 -21685
  783. package/.opencode/oh-my-design/packages/mcp/dist/index.mjs.map +0 -1
  784. package/.opencode/tools/akash_catalog.ts +0 -596
  785. package/.opencode/tools/extract-design-pattern.py +0 -182
  786. package/.opencode/tools/sdd_design.ts +0 -303
@@ -1,516 +0,0 @@
1
- ---
2
- id: qanda
3
- name: QANDA
4
- country: KR
5
- category: consumer-tech
6
- homepage: "https://qanda.ai"
7
- primary_color: "#ff5500"
8
- logo:
9
- type: favicon
10
- slug: "https://qanda.ai/favicon.ico"
11
- verified: "2026-05-15"
12
- omd: "0.1"
13
- tokens:
14
- source: prose-derived
15
- extracted: "2026-06-09"
16
- colors:
17
- primary: "#ff5500"
18
- heading: "#222222"
19
- cta: "#3d3d3d"
20
- canvas: "#ffffff"
21
- surface: "#f9f9f9"
22
- border: "#f0f0f0"
23
- disabled: "#b5b5b5"
24
- placeholder: "#999999"
25
- body: "#5d5d5d"
26
- stone-bg: "#f6f4f2"
27
- stone-border: "#efefef"
28
- stone-soft: "#d4cecb"
29
- stone-body: "#9a9492"
30
- stone-meta: "#78716e"
31
- stone-text: "#665c57"
32
- stone-heading: "#111111"
33
- success: "#0d9974"
34
- success-tint: "#ecf7f4"
35
- on-primary: "#ffffff"
36
- typography:
37
- family: { sans: "Pretendard", mono: "Pretendard" }
38
- hero: { size: 30, weight: 700, lineHeight: 1.3, use: "Hero KR statement headline" }
39
- section: { size: 22, weight: 600, lineHeight: 1.4, use: "Feature card titles" }
40
- body: { size: 16, weight: 400, lineHeight: 1.5, use: "Buttons, nav, body copy — universal floor" }
41
- small: { size: 14, weight: 400, use: "Footer links, helper copy" }
42
- caption: { size: 13, weight: 400, use: "Footer legal text" }
43
- meta: { size: 12, weight: 400, use: "Timestamps, badges" }
44
- spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 24, xl: 32, xxl: 40, section: 80 }
45
- rounded: { sm: 8, md: 16, lg: 24, full: 9999 }
46
- shadow:
47
- subtle: "0 1px 4px rgba(0,0,0,0.04)"
48
- standard: "0 4px 16px rgba(0,0,0,0.08)"
49
- prominent: "0 8px 24px rgba(0,0,0,0.12)"
50
- components:
51
- button-primary: { type: button, bg: "#3d3d3d", fg: "#f9f9f9", radius: "8px", font: "16px / 400", use: "Primary CTA — 시작하기 / Get started; charcoal not orange" }
52
- button-pill: { type: button, bg: "#f9f9f9", fg: "#222222", radius: "35px", padding: "0 16px", font: "16px / 400", use: "New question / chip re-entry in left rail" }
53
- button-camera: { type: button, bg: "#f9f9f9", fg: "#222222", radius: "9999px", use: "Signature image-upload / camera CTA, 44px hit target" }
54
- badge-accent: { type: badge, bg: "#ff5500", fg: "#ffffff", radius: "9999px", use: "Promotional badges, NEW markers, premium flags" }
55
- button-text: { type: button, bg: "transparent", fg: "#222222", use: "Nav links, active by color contrast; inactive #999999" }
56
- card: { type: card, bg: "#ffffff", radius: "24px", use: "Feature cards, 1px #f0f0f0 border, minimal shadow" }
57
- chip: { type: badge, bg: "#f9f9f9", fg: "#222222", radius: "35px", padding: "0 16px", use: "Chips/tags; orange variant #ff5500 fg #ffffff" }
58
- input: { type: input, bg: "#ffffff", radius: "24px", padding: "12px 16px", use: "Conversation bar, 1px #f0f0f0 border, placeholder #999999" }
59
- badge-success: { type: badge, bg: "#ecf7f4", fg: "#0d9974", use: "Correct-answer 정답이에요 in 풀이 첨삭" }
60
- components_harvested: true
61
- ---
62
-
63
- # Design System Inspiration of QANDA (콴다)
64
-
65
- ## 1. Visual Theme & Atmosphere
66
-
67
- QANDA's interface is the digital equivalent of a clean study desk lit by a single warm lamp -- focused, friendly, and built for the moment a student stares at a problem they cannot solve. The page opens on a near-white canvas (`#FFFFFF` / `#F9F9F9`) with charcoal headings (`#222222`) and a single saturated **QANDA Orange** (`#FF5500`) that the brand treats as its core energy color. This is not the trustworthy orange of a marketplace; it is the high-energy, attention-pulling orange of a highlighter pen on a math worksheet -- the color a student reaches for when something *matters*.
68
-
69
- The aesthetic across both consumer (`qanda.ai`) and corporate (`mathpresso.com`) surfaces is **mobile-first edutech minimalism**: a light surface with generous whitespace, a single bold accent, and the iconic camera/upload affordance presented at the center of the conversation. Typography rides on the **Pretendard family** (Pretendard Std on KR, Pretendard JP on JP, Pretendard Variable on web) because the product is multilingual by design -- Korean, Japanese, Vietnamese, Indonesian, Thai, English, and Spanish all need to look native, not translated. Components are pill-shaped (`35px` chip radius, `8px` button radius, `24px` card radius) and lean youthful without becoming cartoonish.
70
-
71
- **Key Characteristics:**
72
- - QANDA Orange (`#FF5500`) as the dominant brand accent -- saturated, energetic, never muted
73
- - Pretendard family across all locales (Pretendard Std / Pretendard JP / Pretendard Variable) for multilingual parity
74
- - Light-first surfaces (`#FFFFFF` page, `#F9F9F9` chip fill, `#F0F0F0` divider)
75
- - Charcoal text hierarchy (`#222222` heading → `#5D5D5D` body → `#999999` caption)
76
- - Camera/image-upload CTA elevated to hero position -- the photo-to-solution loop is the product
77
- - Pill-and-rounded geometry: `8px` buttons, `24px` cards, `35px` chips, `9999px` avatars
78
- - 16px base type for all primary actions -- equal-weight friendliness, no aggressive type hierarchy
79
- - Two canonical surfaces: consumer (cool-gray, conversational) and corporate (warm taupe, narrative)
80
-
81
- ## 2. Color Palette & Roles
82
-
83
- ### Primary
84
- - **QANDA Orange** (`#FF5500`): Brand solid, hero highlights, badge fills, primary energy mark. Top-occurrence color across both surfaces (269 uses on qanda.ai/ko, 21 on mathpresso.com/ko). The single non-negotiable brand pigment.
85
- - **Charcoal 900** (`#222222`): Primary heading and body text on light surfaces. Avoids the harshness of pure black while staying authoritative.
86
- - **Charcoal 700** (`#3D3D3D`): Dark CTA fill ("시작하기" / Get started button) -- the brand uses charcoal, not orange, for its primary action button on consumer surfaces.
87
- - **Pure White** (`#FFFFFF`): Page background, primary surface.
88
-
89
- ### Neutral Scale (consumer / qanda.ai)
90
- - **Gray 050** (`#F9F9F9`): Chip fill, secondary card surface.
91
- - **Gray 100** (`#F0F0F0`): Subtle divider, muted background.
92
- - **Gray 400** (`#B5B5B5`): Disabled stroke, weakest neutral.
93
- - **Gray 500** (`#999999`): Inactive nav label, placeholder text.
94
- - **Gray 700** (`#5D5D5D`): Footer body text, secondary information.
95
-
96
- ### Warm Stone Scale (corporate / mathpresso.com)
97
- - **Stone Background** (`#F6F4F2`): Corporate page background, warmer than consumer #F9F9F9.
98
- - **Stone 100** (`#EFEFEF`): Section dividers on corporate surfaces.
99
- - **Stone 200** (`#D4CECB`): Soft borders in narrative sections.
100
- - **Stone 600** (`#9A9492`): Secondary corporate body (most-used corporate text color, 113 occurrences).
101
- - **Stone 700** (`#78716E`): Tertiary metadata.
102
- - **Stone 800** (`#665C57`): Body text on stone background.
103
- - **Stone 900** (`#111111`): Corporate near-black headings.
104
-
105
- ### Semantic
106
- - **Positive Green** (`#0D9974`): Success states, correct-answer indicators on solution review screens.
107
- - **Positive Tint** (`#ECF7F4`): Success background fill, light affirmation.
108
-
109
- ### Surface & Borders
110
- - Border default: `#F0F0F0` (consumer) / `#EFEFEF` (corporate)
111
- - Disabled fill: `#F9F9F9`
112
-
113
- ## 3. Typography Rules
114
-
115
- ### Font Family
116
- - **Consumer (qanda.ai)**: `"Pretendard Std", "Pretendard JP", Pretendard, system-ui, sans-serif`
117
- - **Corporate (mathpresso.com)**: `"Pretendard Std Variable", "Pretendard JP Variable", "Pretendard Variable", system-ui, sans-serif`
118
- - **Design Principle**: Pretendard's regional variants (KR Std, JP) are loaded explicitly so Korean and Japanese surfaces render with locale-correct metrics. The product ships in 7 languages -- typography must look native in each, not transliterated.
119
-
120
- ### Hierarchy
121
-
122
- | Role | Font | Size | Weight | Notes |
123
- |------|------|------|--------|-------|
124
- | Hero Heading | Pretendard | 28-32px | 700 | "전 과목 문제 풀이, 더 쉽고 정확하게" — single-line bold KR statement |
125
- | Section Heading | Pretendard | 20-24px | 600 | Feature card titles ("풀이 첨삭", "선생님 Q&A") |
126
- | Body / Primary Action | Pretendard | 16px | 400 | All buttons, nav items, body copy -- equal-weight friendliness |
127
- | Body Small | Pretendard | 14px | 400 | Footer links, helper copy |
128
- | Caption | Pretendard | 13px | 400 | Footer regulatory/legal text |
129
- | Metadata | Pretendard | 12px | 400 | Timestamps, badges |
130
-
131
- ### Principles
132
- - **16px is the universal floor for interactive text.** Buttons, nav, and primary copy all use 16px regular weight. The brand intentionally avoids tight micro-hierarchy on actions -- everything actionable looks equally tappable.
133
- - **Three weights only**: Regular (400), Semibold (600), Bold (700). No light or extra-bold.
134
- - **Korean-first line-height generosity**: Body text uses ~1.5 line-height to accommodate Hangul descenders without crowding.
135
- - **No display tracking experiments**: Letter-spacing stays at 0em across the system. Korean and CJK glyphs require generous default tracking that custom values would break.
136
-
137
- ## 4. Component Stylings
138
-
139
- ### Buttons
140
-
141
- **Primary Solid (Charcoal CTA)**
142
- - Background: `#3D3D3D` (charcoal-700)
143
- - Text: `#F9F9F9` (off-white)
144
- - Radius: `8px`
145
- - Min-height: `36px` (compact) / `40-48px` (standard)
146
- - Font: 16px weight 400
147
- - Use: Primary navigation actions ("시작하기", "Get started"). The brand uses charcoal -- not orange -- for its main CTA, reserving orange for highlight/energy moments.
148
-
149
- **Pill (New question / chip-style action)**
150
- - Background: `#F9F9F9` (gray-050)
151
- - Text: `#222222` (charcoal-900)
152
- - Radius: `35px` (pill)
153
- - Min-height: `42px`
154
- - Padding: 16px horizontal
155
- - Use: Conversation re-entry ("새 질문" / "New question") in the persistent left rail.
156
-
157
- **Image-Upload / Camera CTA (signature)**
158
- - Circular icon button anchored to the input row
159
- - Background: transparent or `#F9F9F9`
160
- - Icon: camera glyph in `#222222` charcoal
161
- - Size: 44px hit-target minimum
162
- - Use: The defining QANDA gesture -- tap to photograph a math problem. This affordance must be visible without scrolling on every surface where students ask questions.
163
-
164
- **Brand Accent Pill (orange highlight)**
165
- - Background: `#FF5500` or transparent with `#FF5500` text
166
- - Radius: `9999px` (pill)
167
- - Use: Promotional badges, "NEW" markers, premium upsell flags. Sparingly on conversation surfaces.
168
-
169
- **Tertiary / Text**
170
- - Background: transparent
171
- - Text: `#222222` (active) / `#999999` (inactive)
172
- - Use: Nav links ("홈", "대화 기록", "학습 콘텐츠"). Active state is implied by color contrast, not background fill.
173
-
174
- ### Cards & Containers
175
- - Background: `#FFFFFF` or `#F9F9F9`
176
- - Border: `1px solid #F0F0F0` or no border
177
- - Radius: `24px` for feature cards, `16px` for content blocks, `12px` for compact tiles
178
- - Shadow: minimal -- `0 1px 4px rgba(0,0,0,0.04)` for floating cards; flat for inline
179
-
180
- ### Chips & Tags
181
- - Background: `#F9F9F9` (default) or `#FF5500` (brand accent)
182
- - Text: `#222222` on neutral, `#FFFFFF` on orange
183
- - Radius: `35px` (full pill)
184
- - Height: 32-42px
185
- - Padding: 12-16px horizontal
186
-
187
- ### Inputs & Conversation Bar
188
- - Background: `#FFFFFF` with `#F0F0F0` border
189
- - Radius: `24px` (large pill input on the central conversation surface)
190
- - Padding: 12px 16px
191
- - Placeholder: `#999999`
192
- - Right-side affordances: camera (image upload) icon + send button stacked horizontally
193
-
194
- ### Navigation
195
- - Left rail (web): white background, vertical stack of icon+label rows at 16px regular
196
- - Active item: `#222222` text, no background fill
197
- - Inactive item: `#999999` text
198
- - Top utility row: "Get started" charcoal pill + "Download" pill + Settings icon
199
-
200
- ## 5. Layout Principles
201
-
202
- ### Spacing System
203
- - Base unit: 4px
204
- - Scale: 4px, 8px, 12px, 16px, 20px, 24px, 32px, 40px, 56px, 80px
205
- - Conversation panel gutter: 16-24px
206
- - Section vertical rhythm (corporate): 80-120px between hero blocks
207
-
208
- ### Grid & Container
209
- - Mobile: full-width with 16px gutter
210
- - Web conversation: centered column with ~720px max-width on the message stack
211
- - Corporate landing: 1280px content max-width, 24px outer gutter
212
-
213
- ### Whitespace Philosophy
214
- - **Calm, not cramped.** A student opening QANDA should feel a tutor's quiet attention, not a feature-stuffed dashboard. Every screen leads with one question, one input, one action.
215
- - **The camera affordance breathes.** The image-upload button is never visually crowded; it sits in its own gesture zone with at least 16px of clear space on all sides.
216
- - **Conversation density.** Past chat threads use tighter 12px row gaps; the active question surface uses 24px+ to feel inviting.
217
-
218
- ### Border Radius Scale
219
- - Compact (`8px`): Buttons, small inputs
220
- - Standard (`12px`): Inline tiles
221
- - Comfortable (`16px`): Content cards
222
- - Card (`24px`): Feature cards, conversation input bar
223
- - Pill (`35px` or `9999px`): Chips, "새 질문" button, brand badges
224
- - Circle (`9999px`): Avatars, camera/icon buttons
225
-
226
- ## 6. Depth & Elevation
227
-
228
- | Level | Treatment | Use |
229
- |-------|-----------|-----|
230
- | Flat (Level 0) | No shadow | Page background, inline content, nav items |
231
- | Subtle (s1) | `0 1px 4px rgba(0,0,0,0.04)` | Floating cards, hovered tiles |
232
- | Standard (s2) | `0 4px 16px rgba(0,0,0,0.08)` | Conversation input bar, dropdowns |
233
- | Prominent (s3) | `0 8px 24px rgba(0,0,0,0.12)` | Modals, app-download tooltip |
234
-
235
- **Shadow Philosophy**: QANDA uses shadows sparingly -- the system is light-first and mostly flat. Where Karrot uses shadows for layering, QANDA uses **soft fills** (`#F9F9F9`, `#F0F0F0`) to suggest depth without elevation. The conversation input bar is the rare exception: it floats with `s2` to signal it as the active gesture surface.
236
-
237
- ## 7. Do's and Don'ts
238
-
239
- ### Do
240
- - Use QANDA Orange (`#FF5500`) as the energy mark -- highlight badges, brand glyphs, accent strokes
241
- - Use charcoal `#3D3D3D` for primary CTAs on consumer surfaces -- orange is for energy, charcoal is for action
242
- - Load Pretendard with the locale-correct sub-family (Std for KR, JP for JP)
243
- - Default to 16px regular weight for all interactive text -- equal-weight friendliness is the voice
244
- - Center the camera/image-upload affordance on every question surface
245
- - Use pill geometry (`35px`, `9999px`) for chips, brand badges, and re-entry buttons
246
- - Switch to the warm-stone palette (`#F6F4F2`, `#9A9492`, `#78716E`) on corporate / About surfaces
247
-
248
- ### Don't
249
- - Don't put orange on every CTA -- the brand uses charcoal for its primary action and reserves orange for moments of energy
250
- - Don't drop below 16px for primary interactive text -- mobile students need tappable scale
251
- - Don't introduce a secondary brand hue -- one accent (`#FF5500`) is the entire brand color story
252
- - Don't use heavy shadows -- the system is intentionally light and mostly flat
253
- - Don't mix the consumer cool-gray and corporate warm-stone palettes on the same surface -- they are two distinct canonical tracks
254
- - Don't substitute Inter or Roboto for Pretendard -- multilingual rendering requires the Pretendard family
255
- - Don't bury the camera affordance behind a menu -- the photo-to-solution gesture is the product
256
-
257
- ## 8. Responsive Behavior
258
-
259
- ### Breakpoints
260
- | Name | Width | Key Changes |
261
- |------|-------|-------------|
262
- | Mobile | <480px | Single column, full-width input, bottom nav |
263
- | Tablet | 480-1024px | Conversation column with collapsed left rail |
264
- | Desktop | >1024px | Persistent left rail (220px) + centered conversation |
265
-
266
- ### Touch Targets
267
- - Primary CTA: 36-48px height
268
- - Camera/upload icon: 44px minimum hit area
269
- - Nav row: 48px height
270
- - Pill chip: 42px height
271
-
272
- ### Collapsing Strategy
273
- - Left rail collapses to bottom tab bar below 1024px
274
- - App-download QR card hides on mobile (mobile users are already on the app target)
275
- - Conversation input remains sticky at the bottom on mobile, anchored center on web
276
-
277
- ### Image Behavior
278
- - User-uploaded math problem photos: edge-to-edge in conversation thread, 16px radius
279
- - Step-by-step solution illustrations: full-width with 12px radius
280
- - Persona avatar (QANDA mascot): circular, 40-48px diameter
281
-
282
- ## 9. Agent Prompt Guide
283
-
284
- ### Quick Color Reference
285
- - Brand accent: QANDA Orange (`#FF5500`)
286
- - Primary CTA fill: Charcoal (`#3D3D3D`)
287
- - Heading text: Charcoal 900 (`#222222`)
288
- - Body text: Gray 700 (`#5D5D5D`)
289
- - Caption / inactive: Gray 500 (`#999999`)
290
- - Surface fill: Gray 050 (`#F9F9F9`)
291
- - Border: Gray 100 (`#F0F0F0`)
292
- - Success: Green (`#0D9974`)
293
- - Corporate background: Stone (`#F6F4F2`)
294
- - Corporate body: Stone 600 (`#9A9492`)
295
-
296
- ### Example Component Prompts
297
- - "Build a QANDA conversation input: white bg, 1px #F0F0F0 border, 24px radius, 56px height. Left: camera icon button (44px, charcoal #222222). Center: placeholder 'Ask anything to study' in #999999 16px. Right: send button (disabled #F9F9F9, active #3D3D3D fill)."
298
- - "Create a QANDA primary CTA: #3D3D3D background, #F9F9F9 text, 16px weight 400, 36-40px height, 8px radius. Use for 'Get started' / '시작하기'."
299
- - "Design a 'New question' pill: #F9F9F9 background, #222222 text, 16px weight 400, 42px height, 35px radius, 16px h-padding. Left icon 20px charcoal."
300
- - "Build a feature card: white bg, 24px radius, 1px #F0F0F0 border. Icon top-left in #FF5500 orange. Heading 20px weight 600 #222222. Body 14px weight 400 #5D5D5D. 24px inner padding."
301
- - "Create a step-by-step solution layout: vertical stack of numbered steps. Each step: small circular badge with #FF5500 number + step body text in #222222 16px. 16px gap between steps. Latex/math content rendered inline."
302
-
303
- ### Iteration Guide
304
- 1. The brand color is `#FF5500` -- exactly that value. Do not substitute purple, pink, or a softened tint.
305
- 2. Primary CTAs are charcoal (`#3D3D3D`), not orange. Orange is the highlight mark, not the action mark.
306
- 3. Pretendard family (Std for KR, JP for JP, Variable for web) -- never substitute another sans-serif.
307
- 4. 16px regular is the universal interactive type size. Resist hierarchy temptation on action labels.
308
- 5. The camera/image-upload affordance must be visible on every question surface.
309
- 6. Two canonical palettes exist: consumer cool-gray and corporate warm-stone. Keep them separate.
310
- 7. Pill geometry (`35px`, `9999px`) signals friendly re-entry; `8px` signals action. Don't flip them.
311
-
312
- ---
313
-
314
- ## 10. Voice & Tone
315
-
316
- QANDA speaks like a slightly older sibling who happens to be very good at math: warm, encouraging, low-pressure, and allergic to anything that sounds like a textbook. The voice assumes the student in front of the screen has been stuck on the same problem for ten minutes and is one frustrated tap away from closing the app -- so it leads with calm reassurance (`Hi there! What would you like to study together?`) rather than a feature pitch. Korean surfaces stay in everyday endings (`-어요`, `-해요`) and second-person familiar (`알려주면`), never the formal `-ㅂ니다`. English mirrors that with conversational openings (*"Ask anything to study"*) instead of marketing copy (*"Unlock your study potential"*).
317
-
318
- | Context | Tone |
319
- |---|---|
320
- | CTAs | Verb-first Korean (`시작하기`, `새 질문`, `App 다운로드`) / plain English (`Get started`, `Download`, `New question`) |
321
- | Hero / first impression | One welcoming question, not a value prop. (`What would you like to study together?` / `모르는 문제를 알려주면 맞춤형 풀이를 제공해요`) |
322
- | Empty states | Reassuring + actionable. Never `데이터가 없습니다` or `No results`. |
323
- | Error messages | Specific, blameless. Prefer `사진을 다시 찍어주세요` over `오류가 발생했습니다`. |
324
- | Success / solution shown | Quiet competence, not celebration. The answer arriving *is* the reward. |
325
- | Premium upsell | Soft, value-first. Surface what unlocks, not what's locked. |
326
- | Multilingual surfaces | Locale-native phrasing, not translation. Indonesian, Vietnamese, Thai, Spanish each get a copywriter, not a translator. |
327
- | Tutor / teacher Q&A | Respectful of both student and teacher. Never positions AI as superior to human tutors. |
328
-
329
- **Forbidden phrases.** `오류가 발생했습니다`, `데이터가 없습니다`, `잠시만 기다려주세요` (overused -- use specific waits), `혁신적인`, `세계 최초`. English boilerplate: `Oops, something went wrong`, `We're sorry for the inconvenience`, `Unlock premium features`. Marketing-speak bans: `revolutionary`, `world-class`, `next-generation AI`, `cutting-edge`. Never frame AI as replacing teachers -- the brand explicitly partners with `선생님 Q&A` (Teacher Q&A) and `콴다과외` (QANDA Tutoring).
330
-
331
- **Voice samples.**
332
-
333
- - `Hi there! What would you like to study together?` — homepage hero, English. <!-- verified: https://qanda.ai/en, 2026-05 -->
334
- - `Ask anything to study` — input placeholder, English. <!-- verified: https://qanda.ai/en, 2026-05 -->
335
- - `Study smarter, wherever you are` — app-download CTA. <!-- verified: https://qanda.ai/en, 2026-05 -->
336
- - `전 과목 문제 풀이, 더 쉽고 정확하게` — homepage hero, KR. <!-- verified: https://qanda.ai/ko, 2026-05 -->
337
- - `모르는 문제를 알려주면 맞춤형 풀이를 제공해요` — homepage sub-hero, KR. <!-- verified: https://qanda.ai/ko, 2026-05 -->
338
- - `학습용 AI로 쉬운 풀이, 정확한 답` — value-prop line, KR. <!-- verified: https://qanda.ai/ko, 2026-05 -->
339
- - `교육 기회의 평등을 기술로 이룩하는 것` — corporate mission, KR. <!-- verified: https://mathpresso.com/ko, 2026-05 -->
340
- - `가장 효과적인 교육을 전 세계 모두에게` — corporate vision, KR. <!-- verified: https://mathpresso.com/ko, 2026-05 -->
341
- - `We Rebuild Education` — corporate brand line, EN. <!-- verified: https://mathpresso.com, 2026-05 -->
342
-
343
- ## 11. Brand Narrative
344
-
345
- QANDA (콴다, short for *Q and A*) launched in **June 2015** as the first product of **Mathpresso, Inc.** (주식회사 매스프레소), founded in Seoul by **Lee Jong-heun (이종헌)** -- then a private math tutor -- and his high school friend **Lee Yong-jae (이용재, "Jake Lee")**, a Seoul National University computer engineering student who had been looking for a startup idea. Two more SNU classmates, **Jung Won-uk (정원욱)** and **Jeong Ho-jae (정호재)**, joined as co-founders. Their founding bet was that the bottleneck in education is not content -- there is more free math content online than any student could watch -- but **friction at the moment of confusion**. A student stuck on a problem at 11pm doesn't need a course; they need someone to look at *this specific problem* and explain it. QANDA's first product solved exactly that: photograph the problem, get a worked solution within seconds. The app was built around an OCR engine trained on math notation -- a much harder optical-recognition problem than reading printed text -- and the founding team treated that engine as the moat ([Wikipedia — QANDA](https://en.wikipedia.org/wiki/QANDA), [Inquirer Technology](https://technology.inquirer.net/100862/startup-mixes-koreas-strongest-areas-math-and-tech)).
346
-
347
- Ten years later the product has held its shape and scaled across Asia. **Mathpresso reports 97 million cumulative registered users, 8 million monthly active users, and 7.2 billion cumulative searches** across 50+ countries, with 90% of usage now coming from outside Korea -- Japan, Vietnam, Indonesia, and Thailand are major markets, with Spanish and English added to support Latin America and global English-speaking students ([mathpresso.com](https://mathpresso.com/ko)). The company has raised approximately **$130-150M / 153B KRW cumulative**, including a **July 2021 Series C of $50M** led by Yellowdog with **GGV Capital, Goodwater Capital, KDB, SKS Private Equity, SoftBank Ventures Asia, Legend Capital, Mirae Asset Venture Investment, and Smilegate Investment** ([PR Newswire — Series C](https://www.prnewswire.com/news-releases/mathpresso-developer-of-ai-based-learning-app-qanda-secures-50-million-in-series-c-funding-301324099.html), [Crunchbase — Mathpresso](https://www.crunchbase.com/organization/mathpresso)). **Google** and **Samsung Ventures** later joined the cap table; **KT Corporation** (Korean telecom giant) made a strategic investment in 2023 specifically to co-develop a math LLM ([PR Newswire — KT investment](https://www.prnewswire.com/news-releases/google-backed-edtech-company-mathpresso-secures-strategic-investment-from-telecom-giant-kt-301922854.html)).
348
-
349
- In **January 2024**, Mathpresso, **Upstage** (Korea's leading LLM startup), and **KT** announced **MathGPT**, a math-specialized small language model that **set a new world record on the MATH benchmark, surpassing Microsoft's ToRA-13B and outperforming GPT-4** on high-school math problems ([Korea Herald](https://www.koreaherald.com/article/3299066), [PR Newswire — MathGPT](https://www.prnewswire.com/news-releases/south-koreas-mathgpt-sets-a-new-world-record-in-mathematical-performance-302028223.html)). MathGPT is being integrated across QANDA's surfaces -- the consumer app, B2B/B2G SaaS, and the human-tutor product **콴다과외 (QANDA Tutor)** -- under the umbrella product **Cramify**, a hyper-personalized study tool. **QANDA was named to TIME's inaugural list of the World's Top EdTech Companies in 2024** ([Taiwan News](https://www.taiwannews.com.tw/news/5678819)). The brand refuses two adjacent positionings: it is not a replacement for teachers (the product surfaces `선생님 Q&A` / live human tutoring as a co-equal feature), and it is not a content library competing with Khan Academy or Coursera (the brand stays focused on the per-problem moment-of-stuck loop). The mission, stated on Mathpresso's corporate site, is *"교육 기회의 평등을 기술로 이룩하는 것"* — achieving educational opportunity equality through technology — paired with the vision *"가장 효과적인 교육을 전 세계 모두에게"* (the most effective education for everyone, globally) and the brand line *"We Rebuild Education"* ([mathpresso.com](https://mathpresso.com/ko)).
350
-
351
- ## 12. Principles
352
-
353
- 1. **The camera is the product.** The defining QANDA gesture is photographing a problem and getting a worked solution. Every question surface must surface the camera/image-upload affordance without scrolling, without a menu, and without a hidden state. *UI implication:* if a design hides the camera button behind a "+" menu or relegates it to a settings drawer, the design has drifted off-brand.
354
- 2. **Orange is energy; charcoal is action.** `#FF5500` is the brand's energy mark -- it lights up badges, highlights, and brand glyphs. The primary CTA fill is charcoal `#3D3D3D`. Designs that use orange on every action over-saturate the brand and lose the highlight semantics. *UI implication:* at most one orange-filled element per viewport in a primary flow; primary CTAs default to charcoal.
355
- 3. **16px is the universal floor for actionable text.** Buttons, nav, and primary copy all use 16px regular weight. The brand intentionally avoids tight type hierarchy on actions -- a student under cognitive load should not have to parse which thing is most tappable. *UI implication:* never drop a button label below 16px; never weight one button heavier than another to imply primacy -- use color (charcoal vs neutral pill) instead.
356
- 4. **Pretendard, locale-correct.** Pretendard Std for KR, Pretendard JP for JP, Pretendard Variable for web/EN. The product ships in seven languages; substituting Inter or system-ui breaks Hangul and CJK metrics. *UI implication:* the font stack must explicitly declare the locale variant first; never rely on Pretendard auto-detecting locale.
357
- 5. **Conversation, not catalog.** The home surface is a single greeting + a single input, not a feature grid. Other features (`풀이 첨삭`, `선생님 Q&A`, `퀴즈로 외우기`, `타이머`, `콴다과외`) live one tap away -- they do not crowd the entry moment. *UI implication:* the first-paint of any question surface should have one heading, one input, and the camera affordance -- nothing else competing for attention.
358
- 6. **AI augments, never replaces, teachers.** The product surfaces `선생님 Q&A` (Teacher Q&A) and `콴다과외` (QANDA Tutoring) as co-equal features alongside AI solutions. Brand voice never frames AI as superior to human tutors. *UI implication:* upsell to human tutoring must read as expansion, not escalation. Avoid copy like "Get a real human" that implies AI is lesser.
359
- 7. **Two canonical surfaces, two palettes.** Consumer (`qanda.ai`) uses cool-gray neutrals (`#F9F9F9`, `#F0F0F0`, `#999999`); corporate (`mathpresso.com`) uses warm-stone (`#F6F4F2`, `#9A9492`, `#78716E`). Both share `#FF5500` as the brand mark and Pretendard as the typeface. *UI implication:* never mix palettes within one surface. A pricing page on the consumer app stays cool-gray; a careers page on the corporate site stays warm-stone.
360
- 8. **Multilingual is first-class, not localized.** 90% of QANDA's MAU is outside Korea. Korean is the headquarters language, not the canonical language. *UI implication:* designs should be reviewed at minimum in KR, EN, and one CJK + one Latin SEA locale (e.g., JP and VI/ID) before sign-off. Right-aligned reading order, longer Vietnamese strings, and JP vertical-feeling line-heights are all in scope.
361
-
362
- ## 13. Personas
363
-
364
- *Personas are fictional archetypes informed by publicly described QANDA user segments, not individual people.*
365
-
366
- **민준 (Minjun), 16, Seoul.** Korean high school sophomore, 수능 prep track. Uses QANDA 4-5 times a week, almost always at his desk between 9pm and midnight. Photographs a math problem, scans the worked solution, sometimes uses `풀이 첨삭` (Solution Review) when his own attempt was wrong but he can't see why. Treats the AI as a fast tutor for routine problems and saves human-tutor (`콴다과외`) sessions for the hardest 모의고사 questions.
367
-
368
- **Sari, 17, Jakarta.** Indonesian high school student, science track. Found QANDA through a TikTok study-with-me creator. Uses it primarily on her phone in Bahasa Indonesia for matematika and fisika. Camera-first user: she rarely types a question, almost always photographs a textbook problem. The fact that the app feels native in Indonesian -- not awkwardly translated -- is why she picked QANDA over alternatives.
369
-
370
- **유키 (Yuki), 15, Osaka.** Japanese junior-high student preparing for 高校受験. Uses QANDA in Japanese, often during commute time on the train. Pretendard JP rendering matters -- she once tried a competitor app where Japanese rendered with Korean glyph metrics and uninstalled it within an hour.
371
-
372
- **이선생님 (Ms. Lee), 41, Daegu.** Middle school math teacher. Uses QANDA's B2B teacher dashboard to assign practice problems and review which problems her class is collectively struggling with (anonymized). Has a complicated relationship with the consumer app -- some students use it to skip thinking -- but appreciates that QANDA explicitly surfaces human tutoring rather than positioning AI as a teacher replacement.
373
-
374
- ## 14. States
375
-
376
- | State | Treatment |
377
- |---|---|
378
- | **Empty (no chat history)** | Single warm line (`아직 대화가 없어요. 모르는 문제를 사진으로 올려보세요`) + camera/upload icon as the primary affordance. No illustration. Never `데이터가 없습니다`. |
379
- | **Empty (search no result)** | One-line caption in `#5D5D5D` 14px (`이 문제와 일치하는 풀이를 찾지 못했어요. 사진을 다시 찍어볼까요?`) + retry CTA in charcoal `#3D3D3D`. |
380
- | **Loading (image-recognizing)** | OCR progress: subtle scanning animation overlaying the uploaded image, `#FF5500` accent line sweeping top-to-bottom over 1.5s. Caption: `문제를 인식하고 있어요`. |
381
- | **Loading (solution generating)** | Skeleton blocks at `#F0F0F0` matching the final step-by-step layout (3-5 numbered step rows). Shimmer at 1.2s. Camera affordance stays visible but disabled. |
382
- | **Loading (first paint)** | Ghost of the conversation surface: greeting line at `#F0F0F0`, input bar outline at `#F0F0F0`. No spinner. |
383
- | **Error (image too blurry)** | Inline below the upload: `#FF5500` 13px helper text (`사진이 흐려서 문제를 읽을 수 없어요. 더 선명하게 다시 찍어주세요`). Camera button highlighted in `#FF5500` to invite re-capture. |
384
- | **Error (network)** | Toast at bottom of conversation: `#222222` background, white 14px text, 3s auto-dismiss. One actionable sentence (`연결이 끊어졌어요. 다시 시도해주세요`). |
385
- | **Error (server / blocking)** | Full-screen centered: `#222222` 16px weight 600 heading, `#5D5D5D` 14px subline, retry CTA in charcoal `#3D3D3D`. No illustration. |
386
- | **Success (solution arrived)** | Step-by-step solution renders top-down with subtle stagger (each step fades + 8px upward translate over 200ms). `#0D9974` checkmark badge appears on the final step. Quiet, not celebratory. |
387
- | **Success (correct answer in 풀이 첨삭)** | `#0D9974` positive-green inline badge with `정답이에요` label. `#ECF7F4` tint flash behind the answer for 300ms. |
388
- | **Skeleton** | `#F0F0F0` blocks at exact final dimensions. Shimmer 1.2s with white highlight. Used for solution-generating, search-results, and chat-history loading. |
389
- | **Disabled (send button before input)** | Button drops to `#F9F9F9` fill with `#B5B5B5` icon. Geometry stays identical so the re-enable is frame-stable. |
390
- | **Premium-locked feature** | Inline soft block: `#F9F9F9` background card, lock icon in `#999999`, headline `프리미엄으로 더 자세한 풀이를 보세요`, soft `#FF5500` accent on the unlock CTA only. Never a hard paywall over the user's own captured problem. |
391
-
392
- ## 15. Motion & Easing
393
-
394
- **Durations** (named, not raw milliseconds):
395
-
396
- | Token | Value | Use |
397
- |---|---|---|
398
- | `motion-instant` | 0ms | Toggle flips, send-button enable/disable |
399
- | `motion-fast` | 150ms | Hover, focus, button press, inline color flashes |
400
- | `motion-standard` | 250ms | Default — card taps, tab switches, message arrival |
401
- | `motion-slow` | 400ms | OCR scan sweep, step-by-step staggered reveal |
402
- | `motion-page` | 300ms | Route transitions, full-screen modal in/out |
403
-
404
- **Easings:**
405
-
406
- | Token | Curve | Use |
407
- |---|---|---|
408
- | `ease-enter` | `cubic-bezier(0.0, 0.0, 0.2, 1)` | Solutions arriving, modals opening, toasts entering |
409
- | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Modals dismissing, toasts auto-closing |
410
- | `ease-standard` | `cubic-bezier(0.4, 0.0, 0.2, 1)` | Two-way transitions, step staggers |
411
- | `ease-scan` | `cubic-bezier(0.65, 0.0, 0.35, 1)` | OCR scanning sweep — slightly stronger curve to feel deliberate |
412
-
413
- **Spring stance.** Subtle springs are permitted on the **solution-arrival stagger** (each step settles with a tiny overshoot, ~3% scale rebound) because the moment a stuck student sees their answer is the brand's emotional core -- a touch of life there reinforces *"the answer landed"* without becoming celebratory. Outside of solution arrival and the camera shutter feedback, springs are forbidden. CTAs do not bounce; modals do not overshoot; toasts do not wobble. The brand is built around students under cognitive load -- excess motion reads as noise.
414
-
415
- **Signature motions.**
416
-
417
- 1. **Camera shutter feedback.** On image upload, a brief `#FFFFFF` flash overlays the camera button + a 96% scale press, releasing on capture (`motion-fast / ease-standard`). Mimics a real camera shutter so the gesture feels confirmed.
418
- 2. **OCR scan sweep.** During problem recognition, a thin `#FF5500` line sweeps top-to-bottom over the uploaded image (`motion-slow / ease-scan`). Loops once per recognition cycle. The orange accent here is one of the few moments orange takes a primary visual role.
419
- 3. **Step-by-step solution reveal.** When the AI solution arrives, each step (1, 2, 3, 4, 5...) fades in with an 8px upward translate, staggered at 80ms intervals (`motion-standard / ease-enter`). The final step gets a soft `#0D9974` checkmark badge with a tiny scale-spring (1.0 → 1.05 → 1.0) over 250ms. This is the brand's signature reveal.
420
- 4. **Conversation message arrival.** New chat messages slide in from the bottom with a 12px translate (`motion-standard / ease-enter`). Older messages stay fixed -- no shifting context.
421
- 5. **Reduce motion.** Under `prefers-reduced-motion: reduce`, all `motion-*` tokens collapse to `motion-instant`. The OCR scan-sweep simplifies to a static `#F9F9F9` overlay with a caption. The solution stagger becomes a single fade. The app stays fully functional; just less kinetic.
422
-
423
- <!--
424
- OmD v0.1 Sources — Philosophy Layer (sections 10–15)
425
-
426
- Tier 1 — Direct verification (Playwright + WebFetch, 2026-05):
427
- - https://qanda.ai/ko — live KR consumer surface. Verified primary brand color
428
- #FF5500 (269 occurrences, top color rank 1), Pretendard Std/JP/Variable font
429
- family, charcoal #3D3D3D primary CTA "시작하기" (8px radius, 36px height,
430
- 16px weight 400 white text), pill "새 질문" #F9F9F9 (35px radius, 42px height),
431
- inactive nav #999999, footer text #5D5D5D, success green #0D9974.
432
- Hero copy verbatim: "전 과목 문제 풀이, 더 쉽고 정확하게",
433
- "모르는 문제를 알려주면 맞춤형 풀이를 제공해요",
434
- "학습용 AI로 쉬운 풀이, 정확한 답". Features: "풀이 첨삭", "선생님 Q&A",
435
- "퀴즈로 외우기", "타이머", "콴다과외".
436
- - https://qanda.ai/en — live EN consumer surface. Hero copy verbatim:
437
- "Hi there! What would you like to study together?", "Ask anything to study",
438
- "Study smarter, wherever you are". Footer confirms CEOs Yong Jae Lee +
439
- Jong Heun Lee, Mathpresso, Inc., 218 Teheran-ro Gangnam-gu Seoul.
440
- - https://mathpresso.com/ko — corporate surface. Confirmed warm-stone palette
441
- (#F6F4F2 page bg, #9A9492 most-used body 113 occurrences, #78716E secondary,
442
- #665C57, #111111), shared #FF5500 brand accent (21 occurrences, distinctly
443
- smaller share than consumer), Pretendard Variable font family. Mission
444
- "교육 기회의 평등을 기술로 이룩하는 것", vision "가장 효과적인 교육을
445
- 전 세계 모두에게", brand line "We Rebuild Education". Metrics: 97M registered,
446
- 8M MAU, 7.2B cumulative searches, 153B KRW funding, 7 languages.
447
-
448
- Tier 2 — Design system records (WebFetch, 2026-05):
449
- - https://getdesign.md/qanda — no record ("No designs found for 'qanda'").
450
- - https://getdesign.md/mathpresso — no record.
451
- - https://styles.refero.design — not checked, but consistent absence expected
452
- given QANDA has not published a public design system.
453
-
454
- Tier 2 — Press / philosophy (WebSearch, 2026-05):
455
- - https://en.wikipedia.org/wiki/QANDA — confirms June 2015 Mathpresso founding,
456
- January 2016 QANDA app launch, OCR-based math problem recognition,
457
- 90M+ registered users across 50 countries.
458
- - https://technology.inquirer.net/100862/startup-mixes-koreas-strongest-areas-math-and-tech —
459
- confirms founding story: Lee Jong-heun (private math tutor) + Lee Yong-jae
460
- (Seoul National University CS student looking for a startup idea), with
461
- SNU classmates Wonguk Jung and Hojae Jeong joining as co-founders.
462
- - https://www.prnewswire.com/news-releases/mathpresso-developer-of-ai-based-learning-app-qanda-secures-50-million-in-series-c-funding-301324099.html —
463
- confirms July 2021 Series C, $50M (NOT the $75-80M cited in original spec),
464
- led by Yellowdog with GGV Capital, Goodwater Capital, KDB, SKS PE,
465
- SoftBank Ventures Asia, Legend Capital, Mirae Asset, Smilegate.
466
- - https://www.prnewswire.com/news-releases/google-backed-edtech-company-mathpresso-secures-strategic-investment-from-telecom-giant-kt-301922854.html —
467
- confirms KT strategic investment, Google as backer.
468
- - https://www.koreaherald.com/article/3299066 +
469
- https://www.prnewswire.com/news-releases/south-koreas-mathgpt-sets-a-new-world-record-in-mathematical-performance-302028223.html —
470
- confirm January 2024 MathGPT release, co-developed by Mathpresso + Upstage + KT,
471
- outperformed Microsoft ToRA-13B on MATH benchmark, surpassed GPT-4 on MATH.
472
- - https://www.taiwannews.com.tw/news/5678819 — confirms TIME World's Top
473
- EdTech Companies 2024 inclusion.
474
- - https://www.crunchbase.com/organization/mathpresso — confirms cumulative
475
- funding ~$130M+ (153B KRW reported on corporate site).
476
-
477
- Re-verification status:
478
- - The 97M registered / 8M MAU / 7.2B cumulative searches / 153B KRW figures
479
- in §11 are carried from mathpresso.com/ko as of 2026-05 retrieval. Numbers
480
- may drift; re-verify before quoting publicly.
481
- - The "$75M Series C 2021 + later" claim in the original spec is corrected
482
- here to $50M Series C July 2021. Total cumulative funding ~$130-150M is
483
- consistent with both Crunchbase and the corporate site.
484
- - The original spec suggested "Bright purple/pink primary — verify live
485
- (could be #7B61FF or #FF008C)". Live verification (Playwright + computed
486
- styles, 2026-05) shows the actual brand primary is #FF5500 ORANGE, not
487
- purple/pink. The spec's color hypothesis was incorrect; #FF5500 is
488
- documented here based on direct measurement (269 occurrences on qanda.ai/ko,
489
- ranked #1 by frequency among non-trivial colors).
490
-
491
- Personas (§13) are fictional archetypes informed by publicly described QANDA
492
- user segments (KR high schooler, ID secondary student, JP middle schooler,
493
- KR teacher in B2B). Any resemblance to specific individuals is unintended.
494
-
495
- Interpretive claims (editorial, not documented QANDA statements):
496
- - "Orange is energy; charcoal is action" framing (§7, §12) — editorial reading
497
- of the observed pattern (#FF5500 used heavily on highlights/badges but not
498
- on the primary CTA fill, which is #3D3D3D charcoal). Not a sourced QANDA
499
- brand statement.
500
- - "The camera is the product" (§12) — editorial framing of the observed UI
501
- emphasis on the image-upload affordance. The OCR-based photo-to-solution
502
- loop is documented as the core feature on Wikipedia and on QANDA's own
503
- product pages, but the principle phrasing is editorial.
504
- - The spring-permitted-only-for-solution-arrival stance (§15) — derived from
505
- the brand posture (students under cognitive load, calm tutor voice).
506
- Not a documented QANDA motion rule.
507
- -->
508
-
509
- ---
510
-
511
- **Verified:** 2026-05-08 (omd:add-reference, Apple-tier intent)
512
- **Tier 1 sources:** qanda.ai/ko (consumer KR — QANDA Orange `#FF5500` 269-occurrence top color, Pretendard Std/JP/Variable, charcoal `#3D3D3D` `8px` `36px·400` Primary + neutral pill `#F9F9F9` `35px` `42px·400` "새 질문" + footer `#5D5D5D` `400`); qanda.ai/en (consumer EN — verified hero microcopy "Hi there! What would you like to study together?" + "Ask anything to study"); mathpresso.com/ko (corporate — warm-stone palette `#F6F4F2`/`#9A9492`/`#78716E` 2nd canonical track, shared `#FF5500` accent at 21 occurrences, Pretendard Variable, mission/vision verbatim).
513
- **Tier 2 sources:** getdesign.md/qanda + getdesign.md/mathpresso — no record.
514
- **Tier 2 (Philosophy/founders):** Wikipedia (QANDA), Inquirer Technology (founding story Lee Jong-heun + Jake Lee + SNU co-founders), PR Newswire (Series C $50M July 2021 + KT strategic investment + MathGPT world record), Korea Herald (MathGPT outperforms GPT-4 on MATH benchmark), Taiwan News (TIME Top EdTech 2024), Crunchbase (Mathpresso cumulative funding).
515
- **Style ref:** `karrot` (KR §4 canonical schema, retained).
516
- **Conflicts unresolved:** Original spec hypothesized "purple/pink primary `#7B61FF` or `#FF008C`" — corrected to `#FF5500` ORANGE based on live measurement. Original spec cited "Series C ~$75M 2021" — corrected to $50M based on PR Newswire announcement. Both conflicts resolved in favor of measured/sourced values.
@@ -1,37 +0,0 @@
1
- # Ragic — Verification Notes (2026-06-08)
2
-
3
- ## Proof — Tier 1 live inspect
4
-
5
- **Inspected:** 2026-06-08
6
- **Method:** playwright getComputedStyle (live DOM)
7
- **Tool:** global playwright (chromium, headless, `--disable-http2`), `goto` with `domcontentloaded` (networkidle timed out twice on this asset-heavy homepage; switched to domcontentloaded + 2.5s settle — noted honestly), rgb()→hex conversion in-script.
8
- **Sources:**
9
- - https://www.ragic.com (homepage, live DOM)
10
-
11
- ### Raw samples
12
- - body: `background #ffffff` / color `rgb(34,34,34)` → `#222222`, `font-size: 15px`, `line-height: 24px`, font-family `"Open Sans", "Noto Sans TC", "Noto Sans CJK TC", "Noto Sans SC", ... arial, sans-serif`
13
- - h1 ("#1 No Code AI tool for your business…"): `font-size: 36px`, `font-weight: 700`, color `rgb(0,0,0)` → `#000000`, `line-height: 43.2px`, `letter-spacing: -1px`
14
- - h2 ("Ragic fuels growth, for every industry"): `font-size: 32px`, `font-weight: 800`, color `rgb(0,0,0)` → `#000000`, `line-height: 40px`
15
- - h3 stat ("$200,000"): `font-size: 32px`, `font-weight: 300`, color `rgb(250,62,62)` → `#fa3e3e`
16
- - Primary CTA "Create account": `background rgb(247,14,14)` → `#f70e0e`, color `#ffffff`, `border-radius: 6px`, `font-size: 17px`, `font-weight: 600`, `padding: 14px 30px`, height ~53px
17
- - Template filter tab (active "Featured templates"): `background #ffffff`, color `rgb(101,164,244)` → `#65a4f4`, `border: 1px solid rgb(101,164,244)`, `border-radius: 5px`, `padding: 8px 16px`, `font-size: 14px`
18
- - Template filter tab (inactive "Sales"/"HR"/"Accounting"): `background #ffffff`, color `rgb(170,170,170)` → `#aaaaaa`, `border: 1px solid rgb(221,221,221)` → `#dddddd`, `border-radius: 5px`
19
- - Text link "Try it now": color `rgb(0,102,204)` → `#0066cc`, `font-size: 15px`, transparent background, no border
20
- - Section red band sampled background: `rgb(213,14,14)` → `#d50e0e` (8 occurrences); accent-red `#fa3e3e` (22 occurrences across stats/emphasis)
21
- - Dark media/play panel: `rgba(43,51,63,0.7)` → `#2b333f`, play button `border-radius: 9px`, `1px solid #ffffff`
22
- - Section bands: `#ffffff` (30), `#fafafa` (20), `#efefef` (7), blue-tint `#e8f0fb` (2), slate `rgba(115,133,159,0.5)` → `#73859f`
23
- - document.title: "#1 No Code database builder - Ragic"; `document.documentElement.lang = "en"`
24
-
25
- ### Color reconciliation
26
- - `primary` set to `#f70e0e` = the live "Create account" CTA fill (the single primary action color).
27
- - `accent-red #fa3e3e` is the most frequently sampled brand red (stats, emphasis); `primary-deep #d50e0e` is the full-bleed red-band color. All three documented verbatim in §2 Color and the tokens block.
28
-
29
- ## Country sources
30
-
31
- Taiwan brand-owned / regional sources (Ragic is a Taiwan-headquartered company; these are first-party / regional, not directory aggregators):
32
-
33
- 1. **https://www.ragic.com/intl/zh-TW** — Ragic's official Traditional-Chinese (Taiwan) localized site. First-party, regional. Confirms the TW market focus and Traditional-Chinese-native product surface.
34
- 2. **https://www.ragic.com/intl/zh-TW/about** — Ragic's official "About" page (繁體中文), brand-owned company background for the Taiwan market.
35
- 3. **https://blog.ragic.com** — Ragic's official company blog (product + how-to content), brand-owned.
36
-
37
- (Excluded by policy: getdesign.md, refero.design, and the Google favicon proxy — non-regional; not counted toward the Taiwan source gate.)