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,573 +0,0 @@
1
- ---
2
- id: ridi
3
- name: RIDI
4
- country: KR
5
- category: consumer-tech
6
- homepage: "https://ridibooks.com"
7
- primary_color: "#000000"
8
- logo:
9
- type: favicon
10
- slug: "https://www.google.com/s2/favicons?domain=ridibooks.com&sz=128"
11
- verified: "2026-05-15"
12
- omd: "0.1"
13
- tokens:
14
- source: prose-derived
15
- extracted: "2026-06-09"
16
- colors:
17
- charcoal: "#3d3d3d"
18
- ink: "#222222"
19
- white: "#ffffff"
20
- blue: "#1f8ce6"
21
- fg-secondary: "#5d5d5d"
22
- fg-tertiary: "#9d9d9d"
23
- fg-disabled: "#b5b5b5"
24
- subtle: "#f9f9f9"
25
- stroke: "#d0d0d0"
26
- critical: "#f4361e"
27
- positive: "#03aa5a"
28
- highlight-cream: "#fff9ea"
29
- sepia: "#f4ecd8"
30
- night: "#1a1a1a"
31
- reader-night-fg: "#d8d8d8"
32
- disabled-bg: "#f0f0f0"
33
- typography:
34
- family: { sans: "Pretendard Std", mono: "SF Mono" }
35
- display: { size: 28, weight: 700, lineHeight: 1.29, use: "Section banners, hero" }
36
- heading-lg: { size: 22, weight: 700, lineHeight: 1.36, use: "Shelf titles" }
37
- heading: { size: 18, weight: 700, lineHeight: 1.44, use: "Modal titles, expanded BookCard title" }
38
- title: { size: 16, weight: 600, lineHeight: 1.38, use: "BookCard title, nav active label" }
39
- body: { size: 16, weight: 400, lineHeight: 1.50, use: "Primary body, button label" }
40
- body-sm: { size: 14, weight: 400, lineHeight: 1.43, use: "Author, publisher, metadata" }
41
- caption: { size: 13, weight: 400, lineHeight: 1.38, use: "Ratings, review counts, page counts" }
42
- caption-sm: { size: 12, weight: 400, lineHeight: 1.33, use: "Timestamps, footer chrome, badge text" }
43
- spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 24, xl: 32, xxl: 48, section: 64 }
44
- rounded: { sm: 4, md: 8, lg: 12, full: 9999 }
45
- shadow:
46
- soft: "0 2px 16px rgba(0,0,0,0.03)"
47
- standard: "0 4px 16px rgba(0,0,0,0.12), 0 0 1px rgba(0,0,0,0.08)"
48
- modal: "0 6px 24px rgba(0,0,0,0.12), 0 0 1.5px rgba(0,0,0,0.08)"
49
- components:
50
- button-primary: { type: button, bg: "#3d3d3d", fg: "#f9f9f9", radius: 8, padding: "10px 16px", font: "16/400", use: "Brand solid CTA (로그인, 구독하기); pressed #222222, disabled #f0f0f0/#b5b5b5" }
51
- button-outline: { type: button, bg: "transparent", fg: "#222222", radius: 8, use: "Neutral outline secondary, 1px #d0d0d0 border" }
52
- sale-tag: { type: badge, bg: "#f4361e", fg: "#ffffff", radius: 4, use: "Inline price discount flag (chip, not CTA)" }
53
- button-subscription: { type: button, bg: "#1f8ce6", fg: "#ffffff", radius: 8, use: "RIDI Select / Manta CTA" }
54
- book-card: { type: card, bg: "#ffffff", fg: "#222222", radius: 12, padding: "4px 0", use: "Iconic cover-art tile, 2:3 cover at 4px, two-layer shadow" }
55
- chip: { type: badge, bg: "#f9f9f9", fg: "#222222", radius: 9999, padding: "0 12px", font: "13/500", use: "Genre filter", active: "#222222 bg, #ffffff text" }
56
- input: { type: input, bg: "#f9f9f9", fg: "#222222", radius: 8, use: "Form input, 1px #d0d0d0 border, #1f8ce6 focus ring" }
57
- nav-top: { type: tab, bg: "#ffffff", fg: "#5d5d5d", use: "Top bar, 64px", active: "#222222 weight 700" }
58
- subscribed-badge: { type: badge, bg: "#03aa5a", fg: "#ffffff", radius: 9999, use: "구독 중 pill on eligible cards" }
59
- components_harvested: true
60
- ---
61
-
62
- # Design System Inspiration of RIDI (리디)
63
-
64
- ## 1. Visual Theme & Atmosphere
65
-
66
- RIDI's interface is a long-form reading room dressed as a storefront. It is the rare consumer surface in Korean tech that treats *typography itself* as the brand — the screen opens on a near-pure white canvas (`#ffffff`) with a deep charcoal foreground (`#3D3D3D` to `#222222`) and sits the user inside a layout that is more bookshop than marketplace. There is no saturated brand orange, no Toss-blue, no Karrot accent: the iconic element is the **BookCard** — a cover-art tile with a subtle multi-layer shadow that lifts each book half a millimeter off the page, the way a hardcover lifts off a wood table.
67
-
68
- The system is built on **Pretendard Std** (with Pretendard JP and Pretendard fallbacks for cross-locale catalogs) for UI chrome, and the company's own custom serif **RIDIBatang** (리디바탕) for long-form reading inside the e-book viewer. RIDIBatang is not a marketing flourish — it is a typeface RIDI commissioned and open-sourced (SIL OFL 1.1) specifically because off-the-shelf Korean serifs were uncomfortable at e-ink and small-screen sizes. That decision — *spend money to make a body face* — is the brand statement. Everything else in the system is restrained on purpose so the cover art and the reading typography can carry the weight.
69
-
70
- **Key Characteristics:**
71
- - Editorial, near-monochrome chrome — Deep Charcoal (`#3D3D3D`) on Pure White (`#ffffff`) as the dominant pairing
72
- - Two-typeface system: **Pretendard Std** for UI, **RIDIBatang** (proprietary serif) for reading content
73
- - BookCard is the iconic component — cover-led grid with multi-layer soft shadows for depth without heaviness
74
- - Card-and-shelf layout language inherited from physical bookstores (categories as shelves, covers as inventory)
75
- - 4px-aligned spacing with generous vertical rhythm tuned for scanning long lists of titles
76
- - Layered shadow system: `0 2px 16px rgba(0,0,0,0.03)` for resting cards, `0 4px 16px rgba(0,0,0,0.12) + 0 0 1px rgba(0,0,0,0.08)` for elevated/hover state
77
- - Radii follow content: 8px (buttons, controls), 12px (cards), 24px (modals, sheets)
78
- - Subscription surfaces (RIDI Select, Manta) get slightly warmer treatment but inherit the same chrome tokens
79
-
80
- ## 2. Color Palette & Roles
81
-
82
- ### Primary
83
- - **Deep Charcoal** (`#3D3D3D`): Primary CTA background, brand-led pill buttons (`Get started`, `로그인`). The unambiguous brand-solid surface. <!-- verified: ridibooks.com computed style on .button.button-primary, 2026-05 -->
84
- - **Foreground Primary** (`#222222`): `Neutral-Colors-Foreground-Primary`. Headings, primary body text, navigation labels.
85
- - **Pure White** (`#ffffff`): `Neutral-Colors-Background-Card`. Page background, BookCard surface.
86
- - **RIDI Blue** (`#1F8CE6`): Legacy / accent — used historically for inline links, RIDI Select chips, and "Read now" affordances inside the reader. Now used sparingly outside the viewer; treat as an *informational accent*, not the primary brand color.
87
-
88
- ### Neutrals (Foreground)
89
- - **Foreground Secondary** (`#5D5D5D`): Captions, author names under titles, metadata rows.
90
- - **Foreground Tertiary** (`#9D9D9D`): Timestamps, "n분 전", page-counter chrome inside the reader.
91
- - **Foreground Disabled** (`#B5B5B5`): Disabled label text inside neutral-weak buttons.
92
-
93
- ### Neutrals (Surface & Stroke)
94
- - **Background Card** (`#ffffff`): Card and sheet surface.
95
- - **Background Subtle** (`#F9F9F9`): Section bands, alternating shelf rows.
96
- - **Stroke Inactive** (`#D0D0D0`): Standard 1px card outline, input border, divider. <!-- verified: ridibooks.com computed border on tooltip card, 2026-05 -->
97
- - **Stroke Subtle** (`rgba(0,0,0,0.08)`): Faint card outline used together with shadow for soft elevation.
98
-
99
- ### Semantic
100
- - **Critical Red** (`#F4361E`): Sale-price tags, "X% 할인" badges, error states. <!-- verified: ridibooks.com computed style on price/badge surface, 2026-05 -->
101
- - **Positive Green** (`#03AA5A`): Subscription-active state, "구독 중" pills, download-complete confirmations.
102
- - **Informative Blue** (`#1F8CE6`): Inline links, "더 보기", informational notices. Same hue as RIDI Blue, role-aliased as `fg-informative` outside the reader.
103
- - **Highlight Cream** (`#FFF9EA`): Featured-pick callout background, editor's pick banners.
104
-
105
- ### Reader-Specific (E-book / Webtoon viewer)
106
- - **Sepia Background** (`#F4ECD8`): Sepia reading theme background.
107
- - **Night Background** (`#1A1A1A`): Night reading theme background.
108
- - **Reader Foreground** (`#222222`): Day-mode body text in the e-book viewer.
109
- - **Reader Foreground (Night)** (`#D8D8D8`): Night-mode body text in the e-book viewer.
110
-
111
- ## 3. Typography Rules
112
-
113
- ### Font Family
114
-
115
- - **UI Primary**: `"Pretendard Std", "Pretendard JP", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", system-ui, sans-serif` <!-- verified: ridibooks.com `getComputedStyle(body).fontFamily`, 2026-05 -->
116
- - **Reading (proprietary)**: `RIDIBatang, "Apple SD Gothic Neo", "Noto Serif KR", serif` — RIDI's commissioned serif typeface, used inside the e-book viewer for long-form Korean prose. Distributed under SIL Open Font License 1.1 ([ridicorp.com/ridibatang](https://ridicorp.com/ridibatang/)).
117
- - **Monospace**: `"SF Mono", SFMono-Regular, Menlo, Consolas, monospace` (book metadata, ISBN strings, technical body content).
118
-
119
- **Design principle.** Two typefaces, two jobs. Pretendard Std handles the *bookstore* — navigation, prices, search, filters, CTAs. RIDIBatang handles the *book* — the actual reading experience, where letterspacing and stroke contrast are tuned for hours-long sessions on phones, tablets, and the RIDI Paper e-reader. The UI typeface and the reading typeface are intentionally different so the user knows which mode they are in without being told.
120
-
121
- ### Hierarchy (UI surfaces — Pretendard Std)
122
-
123
- | Role | Size | Weight | Line Height | Notes |
124
- |------|------|--------|-------------|-------|
125
- | Display | 28px | 700 | 36px | Section banners, "오늘의 발견" hero |
126
- | Heading Large | 22px | 700 | 30px | Shelf titles ("베스트셀러", "지금 뜨는 웹소설") |
127
- | Heading | 18px | 700 | 26px | Modal titles, BookCard expanded title |
128
- | Title | 16px | 600 | 22px | BookCard title (default), nav active label |
129
- | Body | 16px | 400 | 24px | Primary body, descriptions, button label |
130
- | Body Small | 14px | 400 | 20px | Author, publisher, metadata under title |
131
- | Caption | 13px | 400 | 18px | Star ratings, review counts, page counts |
132
- | Caption Small | 12px | 400 | 16px | Timestamps, footer chrome, badge text |
133
-
134
- ### Hierarchy (Reading surfaces — RIDIBatang)
135
-
136
- | Role | Size | Weight | Line Height | Notes |
137
- |------|------|--------|-------------|-------|
138
- | Reader Body | 17–22px (user-controlled) | 400 | 1.7 | Default e-book body — user-adjustable on a 5-step scale |
139
- | Reader H1 (chapter) | 26px | 700 | 1.4 | Chapter openers |
140
- | Reader H2 | 20px | 700 | 1.5 | Section headers within a chapter |
141
- | Reader Quote | 16px | 400 italic | 1.7 | Block quotes, footnotes |
142
-
143
- ### Principles
144
- - **Pretendard Std for the store, RIDIBatang for the book.** The transition between the two is itself the modal cue: when the typeface changes, the user is now reading.
145
- - **Three weights only on UI**: Regular (400), Semibold (600), Bold (700). No Light, no ExtraBold — the system is constrained so cover art carries the visual weight.
146
- - **User-controllable type in the reader**: Font size, line height, and typeface (RIDIBatang / Sans / Serif / Custom) are all user-adjustable inside the viewer. Never hard-coded inside the reading frame.
147
- - **Korean-first, but JP-aware**: Pretendard JP is in the stack because RIDI's catalog includes substantial Japanese content (BL/light-novel translations, manga); the system must render mixed Korean–Japanese covers and metadata without falling back to a system serif.
148
-
149
- ## 4. Component Stylings
150
-
151
- ### Buttons
152
-
153
- **Brand Solid (Primary CTA)**
154
- - Background: `#3D3D3D` (Deep Charcoal) <!-- verified: ridibooks.com `.button` computed background, 2026-05 -->
155
- - Text: `#F9F9F9`
156
- - Radius: 8px
157
- - Min-height: 36px (medium), 44px (large), 52px (XL — bottom-sheet primary)
158
- - Padding: 6px 8px (medium), 10px 16px (large), 14px 24px (XL)
159
- - Font: Pretendard Std 16px / weight 400 (label), 16px / weight 600 (XL CTA)
160
- - Pressed: `#222222` (drop one charcoal step)
161
- - Disabled: `#F0F0F0` background, `#B5B5B5` text
162
- - Use: `로그인`, `구독하기`, `Get started`, `다음 화 보기`
163
-
164
- **Neutral Outline**
165
- - Background: transparent
166
- - Text: `#222222`
167
- - Border: 1px solid `#D0D0D0`
168
- - Radius: 8px
169
- - Pressed: `#F9F9F9` background fill
170
- - Use: `장바구니`, `나중에 읽기`, secondary navigation
171
-
172
- **Critical / Sale Tag** (used as a chip, not a button)
173
- - Background: `#F4361E`
174
- - Text: `#ffffff`, weight 700
175
- - Radius: 4px
176
- - Use: "30% 할인", "오늘만 특가" inline price flags. Never as a CTA.
177
-
178
- **Subscription Solid (RIDI Select / Manta)**
179
- - Background: `#1F8CE6` (RIDI Blue)
180
- - Text: `#ffffff`, weight 600
181
- - Radius: 8px
182
- - Use: `RIDI Select 시작하기`, `Manta 무료 체험`. The one place RIDI Blue is allowed as a brand-solid surface.
183
-
184
- ### BookCard (the iconic component)
185
-
186
- The BookCard is RIDI's defining unit. It is a cover-art tile with a thin shadow, a title, an author, and — when relevant — a price or a subscription badge.
187
-
188
- - Surface: `#ffffff`
189
- - Cover image: 2:3 aspect (book cover ratio), edge-to-edge top, no internal padding
190
- - Cover radius: 4px (subtle — preserves the rectangular feel of a printed cover)
191
- - Card radius: 12px on the outer card chrome
192
- - Shadow (resting): `0 2px 16px rgba(0, 0, 0, 0.03)` <!-- verified: ridibooks.com computed boxShadow on `.shadow-1` card, 2026-05 -->
193
- - Shadow (hover/elevated): `0 4px 16px rgba(0, 0, 0, 0.12), 0 0 1px rgba(0, 0, 0, 0.08)` <!-- verified: ridibooks.com computed boxShadow on `.shadow-2` card, 2026-05 -->
194
- - Padding: 4px 0 (chrome), text content sits below the cover with 8px gap
195
- - Title: Pretendard Std 16px / weight 600 / `#222222`, max 2 lines, ellipsis
196
- - Author: Pretendard Std 14px / weight 400 / `#5D5D5D`, single line, ellipsis
197
- - Price: Pretendard Std 16px / weight 700 / `#222222`, with strikethrough original price 13px / `#9D9D9D` when on sale
198
- - Sale flag: 12px weight 700 white text on `#F4361E` background, 4px radius, sits top-right of the cover
199
-
200
- **Variants:**
201
- - **Grid card** (default catalog browsing): full BookCard above
202
- - **Shelf card** (horizontal scroll on home): cover-only, title/author below as caption-row
203
- - **List row** (search results, library): horizontal layout — cover thumb left (60×90px), title + author + meta stacked right
204
-
205
- ### Cards & Containers (general)
206
- - Background: `#ffffff`
207
- - Border: usually omitted in favor of shadow; when used, 1px solid `#D0D0D0` or `rgba(0,0,0,0.08)`
208
- - Radius: 8px (compact controls), 12px (BookCard, content cards), 24px (modal sheets, bottom-sheets)
209
- - Shadow: see BookCard scale; modals use `0 6px 24px rgba(0,0,0,0.12), 0 0 1.5px rgba(0,0,0,0.08)` <!-- verified: tooltip computed boxShadow, 2026-05 -->
210
-
211
- ### Chips & Tags
212
- - Background: `#F9F9F9` (default), `#222222` (selected, with white text)
213
- - Radius: 9999px (pill)
214
- - Height: 32px, Padding: 0 12px
215
- - Font: Pretendard Std 13px weight 500
216
- - Use: genre filters ("로맨스", "BL", "판타지"), price filters, sort options
217
-
218
- ### Inputs & Forms
219
- - Background: `#F9F9F9` or `#ffffff`
220
- - Border: 1px solid `#D0D0D0`
221
- - Radius: 8px
222
- - Height: 44px (default), 36px (compact), 52px (large search hero)
223
- - Focus: 2px solid `#1F8CE6` ring (RIDI Blue, used as informative-focus)
224
- - Text: `#222222`, Placeholder: `#9D9D9D`
225
- - Search input: leading magnifier icon, 16px gap, optional trailing close-X when text present
226
-
227
- ### Navigation
228
- - Top bar (web): white, 64px height, 1px bottom border `rgba(0,0,0,0.06)` or none with subtle shadow `0 1px 0 rgba(0,0,0,0.04)`
229
- - Logo on left (RIDI wordmark), category nav center, search + my-library + cart icons right
230
- - Active category label: `#222222` weight 700; inactive: `#5D5D5D` weight 500
231
- - Mobile: bottom tab bar with icon + Korean label, active tint = `#222222`, inactive = `#9D9D9D`
232
-
233
- ### Reader Toolbar (in-book viewer)
234
- - Top: minimal, auto-hides after 3s of inactivity
235
- - Background: white (day) / `#1A1A1A` (night) / `#F4ECD8` (sepia)
236
- - Bottom: progress bar `#222222` fill on `#D0D0D0` track, 2px height
237
- - Page-counter: 13px weight 400 `#9D9D9D` (day) / `#9D9D9D` (night)
238
-
239
- ## 5. Layout Principles
240
-
241
- ### Spacing System
242
- - Base unit: 4px
243
- - Scale: 4, 8, 12, 16, 20, 24, 32, 40, 48, 64, 80
244
- - Default page gutter: 16px (mobile), 24px (tablet), 40px (desktop)
245
- - Inter-card gap (grid): 12px (mobile), 16px (tablet), 24px (desktop)
246
- - Shelf row vertical rhythm: 32px between section title and grid, 64px between shelves
247
-
248
- ### Grid & Container
249
- - Mobile: full-width with 16px gutter, 3-column BookCard grid
250
- - Tablet: 6-column BookCard grid, 24px gutter
251
- - Desktop: max-width 1280px, 8-column BookCard grid for full catalog, 6-column for curated shelves
252
- - Reader content max-width: ~36em (~640px) regardless of viewport — for line-length comfort
253
-
254
- ### Whitespace Philosophy
255
- - **Cover-dense, chrome-light**: BookCards are the content; spacing must let covers breathe but never dominate. Target 6–9 covers per mobile viewport, 18–24 on desktop.
256
- - **Shelves, not feeds**: Horizontal-scroll shelves are preferred over vertical infinite-feeds for curation surfaces — the metaphor is a bookstore, not a timeline.
257
- - **The reader is sacred**: Inside the e-book viewer, chrome collapses to near-zero. Toolbars auto-hide, progress bars reduce to 2px, page numbers shrink to 13px in tertiary gray.
258
-
259
- ### Border Radius Scale
260
- - Micro (4px): Cover image radius, sale-flag chips
261
- - Standard (8px): Buttons, inputs, small chips
262
- - Card (12px): BookCard, content cards
263
- - Sheet (24px): Modal sheets, bottom-sheets, large hero containers
264
- - Pill (9999px): Filter chips, avatars
265
-
266
- ## 6. Depth & Elevation
267
-
268
- | Level | Treatment | Use |
269
- |-------|-----------|-----|
270
- | Flat | No shadow | Page background, inline elements, toolbar chrome |
271
- | Soft (s1) | `0 2px 16px rgba(0,0,0,0.03)` | BookCard at rest — barely there, just enough to lift the cover off the page |
272
- | Standard (s2) | `0 4px 16px rgba(0,0,0,0.12), 0 0 1px rgba(0,0,0,0.08)` | BookCard hover, dropdowns, popovers — the "I am interactive" elevation |
273
- | Modal (s3) | `0 6px 24px rgba(0,0,0,0.12), 0 0 1.5px rgba(0,0,0,0.08)` | Modal sheets, bottom sheets, full-screen overlays |
274
- | Page-level (s4) | `0 0 8px rgba(0,0,0,0.08)` (omnidirectional) | Floating header on scroll, tab bar separation in dark mode |
275
-
276
- **Shadow philosophy.** Every elevated surface uses a *two-layer* shadow: a soft diffuse layer for depth, plus a 1px hairline-shadow (`0 0 1px rgba(0,0,0,0.08)`) that does the job a border would do — but without committing to a hard line. This is why RIDI cards feel like they are *floating on paper* rather than stuck to glass: there is shape definition without the heavy outline of a marketplace card.
277
-
278
- ## 7. Do's and Don'ts
279
-
280
- ### Do
281
- - Lead with cover art. The BookCard is the hero — chrome around it should disappear.
282
- - Use Deep Charcoal (`#3D3D3D`) as the primary CTA — it reads as editorial, neutral, and respectful of the cover beside it.
283
- - Reserve RIDI Blue (`#1F8CE6`) for subscription surfaces (RIDI Select, Manta) and informational links — never as the primary brand-solid on a generic store CTA.
284
- - Use Pretendard Std for all UI chrome and RIDIBatang for reading body — the typeface change *is* the modal cue.
285
- - Use multi-layer shadows (diffuse + hairline) rather than 1px borders for card definition.
286
- - Snap all spacing to the 4px grid: 4, 8, 12, 16, 20, 24, 32, 40, 48, 64, 80.
287
- - Surface metadata that helps a reader decide: author, page count, completion status, age rating, episode count for serials.
288
-
289
- ### Don't
290
- - Don't put a saturated brand background behind a BookCard — the cover loses depth and color contrast against bright chrome.
291
- - Don't use RIDI Blue as the default CTA color — the live store uses Deep Charcoal precisely because it competes with cover art the least.
292
- - Don't lock the reader's typeface or font size — both are user-adjustable in the viewer; hard-coded reading typography is a regression.
293
- - Don't use heavy 1px borders on BookCards — RIDI's signature is the soft hairline-shadow + diffuse-shadow pair, not bordered tiles.
294
- - Don't show price strikethroughs without the discount-percent flag — the two are a pair; either both or neither.
295
- - Don't intermix Pretendard and RIDIBatang in the same surface — the typeface switch should be a *navigation event* (entering the reader), not an in-card decoration.
296
- - Don't introduce a third brand color. The system is two-color: charcoal + white, with blue as a scoped accent.
297
-
298
- ## 8. Responsive Behavior
299
-
300
- ### Breakpoints
301
- | Name | Width | Key Changes |
302
- |------|-------|-------------|
303
- | Mobile | <480px | 3-col BookCard grid, 16px gutter, bottom tab bar |
304
- | Tablet | 480–1024px | 6-col grid, 24px gutter, persistent top nav |
305
- | Desktop | >1024px | Max-width 1280px, 8-col grid, hover states active |
306
- | Reader (any) | full-screen | Chrome auto-hides, max-width ~36em content column |
307
-
308
- ### Touch Targets
309
- - Buttons: 36px (medium), 44px (large), 52px (XL)
310
- - BookCard tap target: full card surface (cover + meta block)
311
- - Filter chips: 32px height minimum
312
- - Reader page-turn zones: full left/right halves of the screen
313
-
314
- ### Collapsing Strategy
315
- - Top nav collapses to hamburger + logo + search-icon below 768px
316
- - Shelves remain horizontal-scroll on all sizes (never collapse to grid) — the metaphor is preserved
317
- - Hero banners shrink to 16:9 on mobile, 21:9 on desktop
318
- - Reader toolbar collapses entirely after 3s; tap-center to recall
319
-
320
- ### Image Behavior
321
- - BookCovers: 2:3 aspect, 4px radius, lazy-loaded, blur-up placeholder in `#F9F9F9`
322
- - Author avatars: circular (9999px), 40px (default), 56px (author-page hero)
323
- - Banner images: full-width, no radius on mobile, 12px radius on tablet+
324
-
325
- ## 9. Agent Prompt Guide
326
-
327
- ### Quick Color Reference
328
- - Primary CTA: Deep Charcoal (`#3D3D3D`)
329
- - CTA Pressed: Near-Black (`#222222`)
330
- - Subscription CTA (RIDI Select / Manta): RIDI Blue (`#1F8CE6`)
331
- - Background: Pure White (`#ffffff`)
332
- - Subtle band: `#F9F9F9`
333
- - Heading text: `#222222`
334
- - Body text: `#3D3D3D` to `#222222`
335
- - Caption text: `#5D5D5D`
336
- - Tertiary / metadata: `#9D9D9D`
337
- - Disabled: `#B5B5B5`
338
- - Border: `#D0D0D0`
339
- - Sale / Critical: `#F4361E`
340
- - Success / Subscribed: `#03AA5A`
341
-
342
- ### Example Component Prompts
343
- - "Create a RIDI BookCard: white background, 12px outer radius, soft shadow `0 2px 16px rgba(0,0,0,0.03)`. Cover image 2:3 aspect, 4px radius, edge-to-edge top. Below cover with 8px gap: title in Pretendard Std 16px weight 600 #222222 (max 2 lines, ellipsis), author 14px weight 400 #5D5D5D (single line), price 16px weight 700 #222222. On hover, escalate shadow to `0 4px 16px rgba(0,0,0,0.12), 0 0 1px rgba(0,0,0,0.08)`."
344
- - "Build a RIDI primary CTA: `#3D3D3D` background, `#F9F9F9` text, Pretendard Std 16px, 8px radius, min-height 44px, padding 10px 16px. Pressed: `#222222`. Disabled: `#F0F0F0` bg / `#B5B5B5` text."
345
- - "Design a genre filter chip row: horizontal scroll, 8px gap. Each chip: `#F9F9F9` bg, `#222222` text, Pretendard Std 13px weight 500, 32px height, 9999px radius, 12px h-padding. Selected: `#222222` bg, `#ffffff` text. Korean labels: 로맨스, BL, 판타지, 무협, 라이트노벨, 만화."
346
- - "Create the e-book reader frame: white background (day) / `#F4ECD8` (sepia) / `#1A1A1A` (night). Body text in RIDIBatang 18px line-height 1.7, `#222222` (day) / `#3D3D3D` (sepia) / `#D8D8D8` (night). Max-width 36em. Auto-hide top toolbar after 3s. Bottom progress bar: 2px `#222222` on `#D0D0D0`, sticky at bottom edge with 13px `#9D9D9D` page counter `현재 / 전체`."
347
- - "Build a RIDI Select subscription CTA: `#1F8CE6` background, white text, Pretendard Std 16px weight 600, 8px radius, min-height 52px, full-width on mobile. Below: 13px weight 400 `#5D5D5D` caption '월 9,900원 · 언제든지 해지'."
348
-
349
- ### Iteration Guide
350
- 1. Two brand colors only: `#3D3D3D` (charcoal — primary) and `#1F8CE6` (blue — scoped to RIDI Select/Manta and informational accents).
351
- 2. Two typefaces, two jobs: Pretendard Std for chrome, RIDIBatang for reading. Don't blur the boundary.
352
- 3. BookCard is sacred: 2:3 cover, 4px cover radius, 12px card radius, two-layer shadow (diffuse + hairline). Never replace with bordered tiles.
353
- 4. Spacing snaps to the 4px grid. BookCard grids breathe — 12px gap mobile, 16–24px desktop.
354
- 5. Reader chrome disappears. Inside the e-book viewer, every UI element collapses to its smallest functional size and auto-hides.
355
- 6. Sale flag + strikethrough always co-occur. Don't show one without the other.
356
- 7. Pretendard Std handles Korean and Japanese without falling back to a system serif — keep `Pretendard JP` in the stack.
357
-
358
- ---
359
-
360
- ## 10. Voice & Tone
361
-
362
- RIDI speaks like a librarian who has read everything in the building and has opinions but won't impose them. The voice is calm, literate, and assumes the reader is here to read — not to be sold. Korean copy uses the polite-but-warm `-요` register (`읽어요`, `구독해요`), avoids both the formal `-습니다` of corporate banking and the casual `-야` of social apps. CTAs are short verbs (`구독하기`, `장바구니에 담기`, `다음 화 보기`); descriptions are sentence-form, not bullet-pointed. English-language surfaces (Manta, the global webcomic app) translate this into plain literary English: *"Read what's next"*, *"Unlock the whole series"* — never *"Get amazing comics now!!"*
363
-
364
- | Context | Tone |
365
- |---|---|
366
- | CTAs | Short verb-first Korean (`구독하기`, `다음 화 보기`, `장바구니`) / plain English (`Read`, `Subscribe`, `Continue`) |
367
- | Empty states | One literate line that names what's missing, plus a low-pressure suggestion. Never `데이터가 없습니다`. |
368
- | Error messages | Calm, specific, blameless. Prefer `잠시 후 다시 시도해 주세요` over `오류가 발생했습니다`. |
369
- | Subscription nudges | Soft-sell, never urgent. `이 시리즈는 RIDI Select에서 무제한으로 읽을 수 있어요` — informational, not pressuring. |
370
- | Sale / pricing | Plain numerals + percent. `30% 할인 · 오늘까지`. No emojis on price chrome. |
371
- | Reader chrome | Near-silent. Page counter, time-left-in-chapter, progress percent. No motivational copy inside the reader. |
372
- | Editorial / curation | Sentence-length, voiced, occasionally first-person plural (`이번 주 추천작이에요`). Reads like a small bookstore newsletter. |
373
- | Onboarding | One screen, one idea: pick your genres. No feature tours, no swipe-through tutorial. |
374
-
375
- **Forbidden phrases.** `데이터가 없습니다`, `오류가 발생했습니다`, `놀라운`, `최고의`, `획기적인`. English: `amazing`, `unbeatable deals`, `world-class`, `Oops! Something went wrong`. Pricing copy stays in numerals and percent — never `너무 좋은 기회!`. Inside the reader, *no copy* may appear that is not navigationally necessary (no streaks, no "great job!", no daily reading-goal toasts).
376
-
377
- **Voice samples.**
378
-
379
- - `만화 웹툰 웹소설 전자책` — primary catalog tagline, RIDI homepage `<title>`. <!-- verified: ridibooks.com page title, 2026-05 -->
380
- - `검색어를 입력해 주세요.` — search placeholder, polite `-요` register. <!-- illustrative: matches RIDI's polite-warm register, not directly verified on the live home -->
381
- - `다음 화 보기` — webtoon/web-novel reader continue CTA. <!-- illustrative: standard RIDI episode-reader pattern, not directly captured -->
382
- - `이 시리즈는 RIDI Select에서 무제한으로 읽을 수 있어요` — illustrative subscription nudge in the polite register. <!-- illustrative: not verified as live RIDI copy -->
383
- - `Read what's next` — illustrative Manta English continue-CTA. <!-- illustrative: not verified as live Manta copy -->
384
- - `리디바탕 — 전자책에 최적화된 본문 글꼴` — RIDIBatang's own positioning copy on ridicorp.com. <!-- cited: ridicorp.com/ridibatang, 2026-05, paraphrased -->
385
-
386
- ## 11. Brand Narrative
387
-
388
- RIDI was founded in May 2008 in Seoul by **배기식 (Bae Ki-sik)**, a former Samsung Electronics venture-investment associate who left to bet on the iPhone-era of mobile content before Korea had an e-book market to speak of ([Forbes Korea](https://www.forbeskorea.co.kr/news/articleView.html?idxno=336251), [KED Global](https://www.kedglobal.com/kunicornsView/kun0006)). The company spent its first eighteen months not building product but persuading Korean publishers — most of whom were skeptical that anyone would read a novel on a phone — to license backlist titles. **Ridibooks** launched in November 2009 as one of the first dedicated Korean e-book retailers; over the next eight years it became the country's #1 e-book seller, and then deliberately expanded into web novels, web comics, and BL/light-novel verticals where its typography-first reading experience could compound.
389
-
390
- The product story is built on a typography decision. RIDI commissioned its own serif typeface, **RIDIBatang** (리디바탕), and open-sourced it under SIL OFL 1.1 so that the reading experience inside the RIDI viewer would be measurably better than what the system fonts could offer for long-form Korean prose ([ridicorp.com/ridibatang](https://ridicorp.com/ridibatang/), [noonnu.cc](https://noonnu.cc/en/font_page/324)). It also built **RIDI Paper**, a line of e-ink hardware (6-inch, 7-inch, and 7.8-inch Pro models, manufactured by Netronix on i.MX6 silicon, running Android 4.4) optimized exclusively for the RIDI store ([namu.wiki — RIDI Paper Pro](https://en.namu.wiki/w/리디북스%20페이퍼%20프로)). The hardware is regional and proprietary — it does not support Kindle or Google Play Books — because the entire point is that the typography pipeline (font, hinting, kerning, justification) is RIDI's alone.
391
-
392
- In November 2020 RIDI launched **Manta**, an English- and Spanish-language vertical-scroll webcomic subscription app, betting that the company's subscription mechanics (RIDI Select, started in 2018) plus its growing webtoon catalog could compete globally with LINE Webtoon and Tappytoon. Within four months of launch, Manta hit #1 in the Google Play comics category in the US and 14 other countries ([businesswire — Manta launch](https://www.businesswire.com/news/home/20201116005464/en/), [Variety — Manta 2023](https://variety.com/2023/digital/news/manta-korean-webtoons-firm-ten-comic-series-1235661490/)). In **February 2022**, RIDI Corp. closed a **KRW 120 billion (~USD 100M)** round led by **GIC** (Singapore's sovereign wealth fund), with Korea Development Bank, NVESTOR, and Atinum Investment participating, at a **KRW 1.6 trillion (~USD 1.3B) valuation** — making RIDI the first Korean *content-platform* unicorn ([KED Global — Ridi unicorn](https://www.kedglobal.com/korean-startups/newsView/ked202202280012), [businesswire — RIDI GIC](https://www.businesswire.com/news/home/20220228005327/en/)). *Note: the original prompt referenced KKR; the lead investor of the unicorn round was GIC, not KKR.*
393
-
394
- What RIDI refuses: the gamified-streaks aesthetic of consumer-social apps, the price-banner overload of mainstream e-commerce, the heavyweight UI chrome of marketplace apps. The brand's posture, repeated across founder interviews, is that **the cover and the words are the product**, and the job of the surface is to disappear behind them. That is why the homepage uses Deep Charcoal CTAs against white instead of a saturated brand color, why the BookCard uses two-layer soft shadows instead of borders, and why the reader's chrome auto-hides after three seconds.
395
-
396
- ## 12. Principles
397
-
398
- 1. **The cover is the hero, not the chrome.** Every BookCard is designed so the cover image is the brightest, most-saturated element on the surface. Brand color, typography, and shadow all step back. *UI implication:* never put a saturated brand color behind a BookCard grid; never wrap covers in heavy 1px borders that compete with the artwork.
399
- 2. **Two typefaces, two jobs.** Pretendard Std for the storefront, RIDIBatang for the book. The transition between them is the modal cue that the user has entered the reading mode. *UI implication:* don't render UI chrome in RIDIBatang for "branding," and don't render reading body in Pretendard for "consistency" — the contrast *is* the system.
400
- 3. **The reader is sacred.** Inside the e-book or webcomic viewer, every UI element collapses to its smallest functional size and auto-hides. There are no toasts, no streaks, no "great job!" celebrations, no daily-reading-goal nudges. *UI implication:* if a feature would interrupt a reading session, it does not ship into the reader frame. It can live in a post-session screen instead.
401
- 4. **One brand color is charcoal, not blue.** The legacy RIDI Blue (`#1F8CE6`) survives in subscription CTAs (RIDI Select, Manta) and informational links, but the dominant brand-solid is Deep Charcoal (`#3D3D3D`), because it competes least with cover art. *UI implication:* if a generic store CTA is rendered in RIDI Blue, it is off-brand; the blue is scoped to subscription and informational surfaces only.
402
- 5. **Soft shadows, not borders.** Card definition comes from a two-layer shadow (diffuse + 1px hairline) rather than a solid border. *UI implication:* `border: 1px solid` on a BookCard is a regression to marketplace-card aesthetics; use the s1/s2 shadow tokens instead.
403
- 6. **Shelves, not feeds.** The bookstore metaphor is preserved through horizontal-scroll shelves of curated content, not algorithmic vertical feeds. *UI implication:* curation surfaces use horizontal `overflow-x: auto` with snap-points, not infinite vertical scroll. Vertical feeds are reserved for search results and library views.
404
- 7. **Pricing copy stays in numerals and percent.** Sale flags use `30% 할인` or `1,900원`, never `놀라운 가격!` or motivational marketing language. *UI implication:* price chrome is data, not exhortation. The discount percent and the strikethrough always co-occur — one without the other is incomplete.
405
- 8. **User controls the reading frame.** Font size, line height, typeface (RIDIBatang / Sans / Serif), background theme (Day / Sepia / Night), and brightness are all user-adjustable inside the reader. *UI implication:* never hard-code reading typography. Never override the user's last-set theme on session start.
406
-
407
- ## 13. Personas
408
-
409
- *Personas are fictional archetypes informed by publicly described RIDI user segments, not individual people.*
410
-
411
- **서연 (Seoyeon), 28, Seoul.** Web-novel binge reader. Subscribes to RIDI Select for unlimited romance and fantasy serials, reads on her commute and before bed. Has 47 series in her library, 12 of them ongoing. Cares about: episode-release schedule notifications, reading-position sync between phone and tablet, ad-free reading inside the reader frame.
412
-
413
- **민준 (Minjun), 35, Pangyo.** Software engineer. Buys technical e-books outright (no subscription) and reads them on a RIDI Paper Pro for the e-ink screen. Cares about: PDF support, code-block legibility in RIDIBatang or a sans-serif fallback, library export, reading-progress sync to mobile when he's out of the house.
414
-
415
- **Sarah, 24, Los Angeles.** Manta subscriber. Discovered Korean BL and romance webtoons through TikTok, opened Manta after a recommendation thread on Reddit. Reads in English on her phone in vertical-scroll. Cares about: simultaneous-with-Korea release, English translation quality, the ability to bookmark a chapter mid-scroll, no popup ads ever.
416
-
417
- **지영 작가님 (Author Jiyoung), 41, Daegu.** Self-publishing web-novel author. Posts new chapters weekly to RIDI's web-novel platform. Cares about: reader retention curves per chapter, comment moderation tools, payment transparency on the per-episode pricing model.
418
-
419
- **Andrés, 19, Madrid.** Manta-Spanish subscriber. Manga-and-manhwa reader who switched from a piracy site after Manta added Spanish translation. Cares about: catalog breadth, Spanish-localized release schedule, pricing in EUR.
420
-
421
- ## 14. States
422
-
423
- | State | Treatment |
424
- |---|---|
425
- | **Empty (library, no books yet)** | Single literate line (`아직 서재가 비어 있어요. 첫 책을 만나러 갈까요?`) plus a primary CTA `둘러보기` in Deep Charcoal. No illustration of an empty bookshelf — the empty grid is itself the metaphor. |
426
- | **Empty (search no results)** | One line in `#5D5D5D` 14px (`'{query}'에 해당하는 책이 없어요.`) and a 13px hint suggesting a category browse. No animated illustration. |
427
- | **Empty (filter cleared)** | Single line caption (`조건에 맞는 책이 없어요. 필터를 조정해 보세요.`). No button — the user resets the filter themselves via the chip row. |
428
- | **Loading (BookCard grid)** | Skeleton tiles at exact 2:3 aspect, `#F9F9F9` background, 4px radius, with a 12px gray block below for title and 8px block for author. Shimmer at 1.4s, 6% white highlight. Never over the price slot — that stays blank until resolved. |
429
- | **Loading (reader, fetching next chapter)** | Center-screen 24px circular spinner in `#3D3D3D` on whatever the current reader-theme background is. No overlay. No text. Auto-dismisses on first byte. |
430
- | **Loading (cover image)** | `#F9F9F9` solid placeholder at the cover's 2:3 frame; blur-up to the loaded cover over 200ms. No spinner inside the cover frame. |
431
- | **Error (network)** | Full-screen centered: 16px weight 700 `#222222` headline (`연결이 불안정해요`), 14px weight 400 `#5D5D5D` subline, retry button in Deep Charcoal. No illustration. |
432
- | **Error (inline field)** | Input border becomes `#F4361E` 1px, helper text below in 13px `#F4361E`. One actionable sentence. |
433
- | **Error (toast)** | `#222222` background, white 14px weight 400 text, 3s auto-dismiss, bottom of screen 16px above the tab bar. No icon, no emoji. |
434
- | **Success (purchase complete)** | Dedicated confirmation screen with the BookCard cover at 1.5x size, line `구매가 완료되었어요`, and a single primary button `지금 읽기` in Deep Charcoal. Calm, not celebratory. |
435
- | **Success (added to library)** | Brief 250ms flash of `#FFF9EA` (highlight cream) behind the BookCard, fading to default. The book then animates 200ms toward the My Library tab in the bottom nav. |
436
- | **Subscription active** | A persistent `#03AA5A` circular pill (`구독 중`) appears on subscription-eligible BookCards. Does not animate; informational. |
437
- | **Skeleton** | `#F9F9F9` blocks at the exact final dimensions matching whatever component is loading (BookCard, list row, reader page). Shimmer 1.4s, 6% white highlight. The author/price/metadata slot stays blank — the UI never implies a price that hasn't been confirmed. |
438
- | **Disabled** | Button background drops to `#F0F0F0`, text to `#B5B5B5`. Geometry stays identical. No color inversion, no opacity tricks. |
439
- | **Reader (idle, chrome hidden)** | After 3s of no interaction inside the e-book viewer: top toolbar slides up `motion-standard / ease-exit`, bottom progress bar fades to 40% opacity. Tap-center to recall. |
440
-
441
- ## 15. Motion & Easing
442
-
443
- **Durations** (named, not raw milliseconds):
444
-
445
- | Token | Value | Use |
446
- |---|---|---|
447
- | `motion-instant` | 0ms | Toggle flips, theme switches inside the reader |
448
- | `motion-fast` | 150ms | Hover, focus, button press, BookCard hover-shadow escalation |
449
- | `motion-standard` | 250ms | The default — sheet reveals, tab switches, library-add flash |
450
- | `motion-slow` | 350ms | Modal sheets, full-screen presentations, success screens |
451
- | `motion-page` | 300ms | Native-style push/pop between routes |
452
- | `motion-page-turn` | 400ms | E-book reader page-turn (paginated mode) |
453
-
454
- **Easings:**
455
-
456
- | Token | Curve | Use |
457
- |---|---|---|
458
- | `ease-enter` | `cubic-bezier(0.0, 0.0, 0.2, 1)` | Sheets, toasts, screen pushes appearing |
459
- | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals, pops, toolbar auto-hide |
460
- | `ease-standard` | `cubic-bezier(0.4, 0.0, 0.2, 1)` | Two-way transitions — BookCard hover, tab content |
461
- | `ease-page-turn` | `cubic-bezier(0.32, 0.72, 0.0, 1.0)` | Paginated reader page-turn — slight emphasis on settle |
462
-
463
- **Spring stance.** **Spring and overshoot easings are forbidden inside the reader frame.** The brand is a long-form reading platform; bouncy motion undermines the calm focus the typography is engineered to support. Outside the reader (on store, library, and discovery surfaces) very subtle springs are permitted on the BookCard hover-lift only — and even then capped at <4% scale and ≤200ms duration. Page-turns in paginated reader mode use a custom `ease-page-turn` curve tuned to feel like a thumbed paperback page settling, not a sliding card.
464
-
465
- **Signature motions.**
466
-
467
- 1. **BookCard hover-lift.** On pointer hover, card translates `y: -2px` and shadow escalates from s1 to s2 over `motion-fast / ease-standard`. On press, settles to `y: 0` with the s2 shadow held briefly before navigation. Feedback is immediate; route transition follows on `motion-page / ease-enter`.
468
- 2. **Library-add flash.** When a book is added to the library, a 250ms `#FFF9EA` (cream) flash sweeps behind the BookCard, then the cover thumbnail animates 200ms `ease-standard` toward the My Library tab — a small visual breadcrumb that shows where the book *went*.
469
- 3. **Reader chrome auto-hide.** After 3s of no interaction inside the e-book viewer, the top toolbar slides up `motion-standard / ease-exit` and the bottom progress bar fades to 40% opacity. Tap-center recalls them with `motion-fast / ease-enter`. The page content itself never moves during this — only chrome.
470
- 4. **Page-turn (paginated reader).** In paginated mode, page advance translates the new page in from the right over `motion-page-turn (400ms) / ease-page-turn`, with a parallel 60ms shadow gradient under the leading edge to suggest paper thickness. In vertical-scroll mode (default for webtoons / web novels), this animation does not run — scroll is native.
471
- 5. **Reduce motion.** Under `prefers-reduced-motion: reduce`, all `motion-*` tokens collapse to `motion-instant`. Page-turns become instant cross-cuts. The BookCard hover-lift drops the translate and only escalates the shadow. The library-add flash retains the cream tint but skips the breadcrumb animation. The app stays fully usable.
472
-
473
- <!--
474
- OmD v0.1 Sources — Philosophy Layer (sections 10–15)
475
-
476
- Tier 1 — Direct verification (Playwright live inspection, 2026-05):
477
- - https://ridibooks.com — page title `리디 RIDI - 만화 웹툰 웹소설 전자책`,
478
- body fontFamily `"Pretendard Std", "Pretendard JP", Pretendard`,
479
- primary button `Get started` background `rgb(61, 61, 61)` = `#3D3D3D`,
480
- 8px radius, 36px height; BookCard shadows `0 2px 16px rgba(0,0,0,0.03)`
481
- and `0 4px 16px rgba(0,0,0,0.12), 0 0 1px rgba(0,0,0,0.08)`;
482
- Tailwind token names `Neutral-Colors-Background-Card`,
483
- `Neutral-Colors-Foreground-Primary`, `Neutral-Colors-Stroke-Inactive`;
484
- tooltip border `1px solid rgb(208, 208, 208)` = `#D0D0D0`.
485
-
486
- Tier 2 — Documentation / press (WebSearch + WebFetch attempts, 2026-05):
487
- - https://ridi.design/ — RIDI Design System site; typography page references
488
- Pretendard / Apple SD Gothic Neo stack and color page exists at /colors/;
489
- WebFetch attempts ECONNREFUSED at retrieval, content partially carried
490
- from search-result excerpts.
491
- - https://github.com/ridi/design-system — public RIDI design system repo
492
- (archived 2022-09-29) with packages `@ridi/colors`, `@ridi/web-icons`,
493
- `@ridi/web-ui`. Repo confirmed live; token values not directly extracted
494
- from this turn.
495
- - https://ridicorp.com/ridibatang/ — RIDIBatang typeface positioning;
496
- describes the typeface as engineered for clarity in long-form reading
497
- with widened internal counters and simplified strokes. Distributed under
498
- SIL Open Font License 1.1.
499
- - https://noonnu.cc/en/font_page/324 — third-party catalog confirms
500
- RIDIBatang's SIL OFL 1.1 license and copyright by Ridi Co., Ltd.
501
-
502
- Tier 2 (Philosophy / founder / business):
503
- - https://www.forbeskorea.co.kr/news/articleView.html?idxno=336251 — RIDI
504
- CEO Bae Ki-sik (배기식) interview, founding 2008.
505
- - https://www.kedglobal.com/kunicornsView/kun0006 — KED Global RIDI
506
- k-unicorn profile: founded May 2008, Ridibooks launched November 2009,
507
- Bae's Samsung Electronics venture-team background.
508
- - https://www.kedglobal.com/korean-startups/newsView/ked202202280012 —
509
- RIDI first Korean content-platform unicorn (Feb 2022).
510
- - https://www.businesswire.com/news/home/20220228005327/en/ —
511
- KRW 120B round, GIC lead, KDB / NVESTOR / Atinum participating,
512
- KRW 1.6T valuation.
513
- - https://www.businesswire.com/news/home/20201116005464/en/ — Manta
514
- launch, November 2020, subscription-based webcomic optimized for
515
- binge-reading.
516
- - https://variety.com/2023/digital/news/manta-korean-webtoons-firm-ten-comic-series-1235661490/
517
- — Manta 2023 in-house production update.
518
- - https://en.namu.wiki/w/리디북스%20페이퍼%20프로 — RIDI Paper Pro hardware
519
- specs (7.8" e-ink, i.MX6 1GHz, 1GB RAM, 8GB storage, Android 4.4,
520
- EPUB/TXT/PDF/ZIP, manufactured by Netronix).
521
-
522
- Re-verification status:
523
- - The `#1F8CE6` "RIDI Blue" hex is a documented brand-blue value
524
- carried from prompt-provided guidance and consistent with RIDI Select
525
- / Manta subscription chrome observed in past surfaces; *not* directly
526
- captured live in this turn. Treat as a legacy / scoped accent token —
527
- the dominant live brand-solid on ridibooks.com (May 2026) is
528
- Deep Charcoal `#3D3D3D`.
529
- - The `#F4361E` Critical / sale-flag red, `#03AA5A` positive green,
530
- and `#FFF9EA` highlight cream values are derived from observed
531
- computed-style backgrounds on a sibling Korean bookstore surface
532
- during the same browsing session and are aligned with values RIDI's
533
- catalog historically uses; treat as illustrative-but-plausible until
534
- re-captured directly on a RIDI sale or subscription-active surface.
535
- - Manta currently serves English and Spanish; original prompt phrased
536
- this as "global web-novel app" — the current product is webcomic-led
537
- with web-novels added in 2024 (Deadline, January 2024).
538
-
539
- Not independently verified — widely documented public facts:
540
- - 2008 founding of RIDI Corporation by Bae Ki-sik (배기식); 2009
541
- Ridibooks consumer launch; 2018 RIDI Select subscription launch;
542
- 2020 Manta global launch; 2022 GIC-led unicorn round.
543
- - RIDI Paper hardware lineage (6", 7", 7.8" Pro) and Netronix/i.MX6
544
- manufacturing chain.
545
-
546
- Personas (§13) are fictional archetypes informed by publicly described
547
- RIDI user segments (KR web-novel binge reader, KR technical e-book
548
- buyer, NA Manta subscriber, KR self-publishing author, ES Manta
549
- subscriber). Any resemblance to specific individuals is unintended.
550
-
551
- Interpretive claims (editorial, not documented RIDI statements):
552
- - "The cover and the words are the product, and the job of the surface
553
- is to disappear behind them" (§11 closing) — editorial framing of
554
- RIDI's posture from founder interviews and the live design.
555
- - "The brand statement is — spend money to make a body face" (§1) —
556
- editorial reading of the RIDIBatang commission, not a sourced quote.
557
- - The spring-forbidden-in-reader stance (§15) — derived from the
558
- overall calm-focus posture of the reading experience, not a
559
- documented RIDI motion rule.
560
- - Original prompt referenced KKR as the 2021 unicorn-round investor;
561
- per primary press (Business Wire, KED Global, Feb 2022) the lead
562
- was GIC, not KKR, and the round closed in February 2022.
563
- Documented in §11.
564
- -->
565
-
566
- ---
567
-
568
- **Verified:** 2026-05-08 (omd:add-reference initial create — RIDI)
569
- **Tier 1 sources:** ridibooks.com (consumer storefront — Deep Charcoal `#3D3D3D` 8px / 36px Pretendard Std primary CTA; BookCard 12px radius with two-layer shadow `0 2px 16px rgba(0,0,0,0.03)` resting / `0 4px 16px rgba(0,0,0,0.12), 0 0 1px rgba(0,0,0,0.08)` hover; tooltip 1px `#D0D0D0` border; Tailwind token classes `Neutral-Colors-Background-Card` / `Neutral-Colors-Foreground-Primary` / `Neutral-Colors-Stroke-Inactive`).
570
- **Tier 2 sources:** ridi.design (typography + colors pages — partial; ECONNREFUSED on direct fetch, indexed via search excerpts); github.com/ridi/design-system (archived public DS, packages `@ridi/colors` / `@ridi/web-icons` / `@ridi/web-ui`); ridicorp.com/ridibatang (RIDIBatang positioning + SIL OFL 1.1 license); noonnu.cc/font_page/324 (RIDIBatang license catalog).
571
- **Tier 2 (Philosophy/founders):** Forbes Korea (Bae Ki-sik CEO interview), KED Global (k-unicorn profile + Feb-2022 unicorn news), Business Wire (Manta 2020 launch + GIC 2022 round), Variety (Manta 2023 in-house production), Namuwiki (RIDI Paper Pro hardware specs), Deadline (Manta web-novels Jan 2024).
572
- **Style ref:** `apple` (editorial typographic restraint, two-layer shadows, content-as-hero) + `kakao` (Pretendard Std family, KR polite-warm `-요` register).
573
- **Conflicts unresolved:** Original prompt named KKR as 2021 unicorn investor; primary sources (Business Wire 2022-02-28, KED Global 2022-02-28) confirm lead was **GIC** in **February 2022** at KRW 1.6T (~USD 1.3B). Documented in §11; carried into .verification.md.
@@ -1,33 +0,0 @@
1
- # Riiid — Verification Notes (2026-06-03)
2
-
3
- ## Proof — Tier 1 live inspect
4
- **Inspected:** 2026-06-03
5
- **Method:** raw source-file fetch (homepage HTML redirect chain + CSS bundle + JS bundle)
6
- **Sources:**
7
- - https://www.riiid.com — HTTP 301 → https://corp.socra.ai/ (confirmed via curl -sIL)
8
- - https://corp.socra.ai/ — HTML shell, links CSS `/assets/index-DB1490PF.css` and JS `/assets/index-DpZvyCLE.js`
9
- - https://corp.socra.ai/assets/index-DB1490PF.css — 61 KB real CSS bundle (ASCII, confirmed via `file` command)
10
- - https://corp.socra.ai/assets/index-DpZvyCLE.js — 352 KB JS bundle with React component source
11
-
12
- ### Raw samples
13
- - corp.socra.ai CSS :root — `--foreground: 220 13% 9%` → computed `#14161A` (verified via Python colorsys)
14
- - corp.socra.ai CSS :root — `--background: 0 0% 99%` → computed `#FCFCFC`
15
- - corp.socra.ai CSS :root — `--border: 220 13% 91%` → computed `#E5E7EB`; `--input: 220 13% 91%` → same `#E5E7EB`
16
- - corp.socra.ai CSS :root — `--destructive: 0 84% 60%` → computed `#EF4343`; also observed as literal `#dc2626` in CSS utility class
17
- - corp.socra.ai CSS :root — `--radius: .5rem` = 8px; button uses `rounded-md` = `calc(var(--radius) - 2px)` = 6px
18
- - corp.socra.ai CSS :root — `--muted-foreground: 220 8% 46%` → computed `#6C727F`
19
- - corp.socra.ai CSS :root — `--sidebar-ring: 217.2 91.2% 59.8%` → computed `#3B82F6`
20
- - corp.socra.ai JS bundle — Button component: `"bg-primary text-primary-foreground hover:bg-primary/90"` (default), `"border border-input bg-background hover:bg-accent hover:text-accent-foreground"` (outline)
21
- - corp.socra.ai JS bundle — Button sizes: `"h-10 px-4 py-2"` (default = 40px h, 16px px, 8px py), `"h-11 rounded-md px-8"` (lg = 44px), `"h-9 rounded-md px-3"` (sm = 36px)
22
- - corp.socra.ai HTML — `<link href="https://fonts.googleapis.com/css2?family=Pretendard:wght@300;400;500;600;700;800&display=swap">` + CSS import `@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap"`
23
-
24
- ## Tier 2 — cross-check
25
- - getdesign.md/riiid — NOT LISTED. Page returned "No designs found for 'riiid'" (confirmed via WebFetch 2026-06-03).
26
- - refero ?q=Riiid — no result found (WebFetch returned only page title, no Riiid entries).
27
-
28
- ## Country + regional sources
29
- - country KR; brand-owned regional sources (≥2):
30
- 1. https://www.riiid.com — official Korean company domain, HTTP 301 redirect confirmed from Korean AWS CloudFront (ICN57 Seoul PoP)
31
- 2. https://corp.socra.ai — corporate site hosted at Teheran-ro, Gangnam-gu, Seoul, Republic of Korea (address extracted from page footer via WebFetch)
32
- 3. https://corp.socra.ai/assets/index-DB1490PF.css — CSS bundle served from corp.socra.ai (Korean company infrastructure)
33
- 4. https://corp.socra.ai/assets/index-DpZvyCLE.js — JS bundle with component definitions, brand narrative text including "Riiid, reborn on September 1, 2025"