zugzbot 1.0.21 → 1.0.23

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 (1272) hide show
  1. package/.opencode/agents/sdd-coder.md +1 -0
  2. package/.opencode/agents/sdd-orchestrator.md +1 -0
  3. package/.opencode/skills/sdd-methodology/SKILL.md +8 -0
  4. package/.opencode/skills/sdd-tester-quickstart/SKILL.md +6 -0
  5. package/.opencode/tools/sdd_testing.ts +93 -0
  6. package/bin/init.js +38 -1
  7. package/opencode.json +9 -0
  8. package/package.json +14 -4
  9. package/.opencode/active-brief.md +0 -38
  10. package/.opencode/docs/shadcn/agents/openai.yml +0 -5
  11. package/.opencode/docs/shadcn/assets/shadcn-small.png +0 -0
  12. package/.opencode/docs/shadcn/assets/shadcn.png +0 -0
  13. package/.opencode/docs/shadcn/cli.md +0 -290
  14. package/.opencode/docs/shadcn/customization.md +0 -209
  15. package/.opencode/docs/shadcn/evals/evals.json +0 -47
  16. package/.opencode/docs/shadcn/mcp.md +0 -105
  17. package/.opencode/docs/shadcn/registry.md +0 -277
  18. package/.opencode/docs/shadcn/rules/base-vs-radix.md +0 -306
  19. package/.opencode/docs/shadcn/rules/composition.md +0 -195
  20. package/.opencode/docs/shadcn/rules/forms.md +0 -192
  21. package/.opencode/docs/shadcn/rules/icons.md +0 -101
  22. package/.opencode/docs/shadcn/rules/styling.md +0 -162
  23. package/.opencode/oh-my-design/.agents/skills/google-analytics/EXAMPLES.md +0 -441
  24. package/.opencode/oh-my-design/.agents/skills/google-analytics/REFERENCE.md +0 -342
  25. package/.opencode/oh-my-design/.agents/skills/google-analytics/SKILL.md +0 -153
  26. package/.opencode/oh-my-design/.agents/skills/google-analytics/requirements.txt +0 -6
  27. package/.opencode/oh-my-design/.agents/skills/google-analytics/scripts/analyze.py +0 -459
  28. package/.opencode/oh-my-design/.agents/skills/google-analytics/scripts/ga_client.py +0 -345
  29. package/.opencode/oh-my-design/.claude/agents/omd-a11y-auditor.md +0 -98
  30. package/.opencode/oh-my-design/.claude/agents/omd-asset-curator.md +0 -99
  31. package/.opencode/oh-my-design/.claude/agents/omd-codex-image.md +0 -49
  32. package/.opencode/oh-my-design/.claude/agents/omd-critic.md +0 -142
  33. package/.opencode/oh-my-design/.claude/agents/omd-designer-review.md +0 -38
  34. package/.opencode/oh-my-design/.claude/agents/omd-final-qa.md +0 -40
  35. package/.opencode/oh-my-design/.claude/agents/omd-kr-writer.md +0 -35
  36. package/.opencode/oh-my-design/.claude/agents/omd-locale-adapter.md +0 -32
  37. package/.opencode/oh-my-design/.claude/agents/omd-master.md +0 -317
  38. package/.opencode/oh-my-design/.claude/agents/omd-microcopy.md +0 -64
  39. package/.opencode/oh-my-design/.claude/agents/omd-orchestrator.md +0 -34
  40. package/.opencode/oh-my-design/.claude/agents/omd-persona-tester.md +0 -119
  41. package/.opencode/oh-my-design/.claude/agents/omd-ui-junior.md +0 -130
  42. package/.opencode/oh-my-design/.claude/agents/omd-ux-researcher.md +0 -63
  43. package/.opencode/oh-my-design/.claude/data/opt-out-corpus.json +0 -141
  44. package/.opencode/oh-my-design/.claude/data/reference-fingerprints.json +0 -6142
  45. package/.opencode/oh-my-design/.claude/data/reference-tags.md +0 -104
  46. package/.opencode/oh-my-design/.claude/data/synonyms.json +0 -79
  47. package/.opencode/oh-my-design/.claude/data/vocabulary.json +0 -516
  48. package/.opencode/oh-my-design/.claude/hooks/lib/preferences-parser.cjs +0 -91
  49. package/.opencode/oh-my-design/.claude/hooks/lib/preferences-writer.cjs +0 -118
  50. package/.opencode/oh-my-design/.claude/hooks/post-edit-watch.cjs +0 -295
  51. package/.opencode/oh-my-design/.claude/hooks/session-end-foldin.cjs +0 -149
  52. package/.opencode/oh-my-design/.claude/hooks/session-state-loader.cjs +0 -113
  53. package/.opencode/oh-my-design/.claude/hooks/skill-activation.cjs +0 -108
  54. package/.opencode/oh-my-design/.claude/settings.json +0 -55
  55. package/.opencode/oh-my-design/.claude/skills/omd/SKILL.md +0 -133
  56. package/.opencode/oh-my-design/.claude/skills/omd-add-reference/SKILL.md +0 -381
  57. package/.opencode/oh-my-design/.claude/skills/omd-add-reference/batch-instructions.md +0 -111
  58. package/.opencode/oh-my-design/.claude/skills/omd-apply/SKILL.md +0 -87
  59. package/.opencode/oh-my-design/.claude/skills/omd-batch-launch/SKILL.md +0 -270
  60. package/.opencode/oh-my-design/.claude/skills/omd-codex-image/SKILL.md +0 -162
  61. package/.opencode/oh-my-design/.claude/skills/omd-component-harvest/SKILL.md +0 -59
  62. package/.opencode/oh-my-design/.claude/skills/omd-designer-review/SKILL.md +0 -146
  63. package/.opencode/oh-my-design/.claude/skills/omd-final-qa/SKILL.md +0 -153
  64. package/.opencode/oh-my-design/.claude/skills/omd-harness/SKILL.md +0 -234
  65. package/.opencode/oh-my-design/.claude/skills/omd-init/SKILL.md +0 -169
  66. package/.opencode/oh-my-design/.claude/skills/omd-kr-writer/SKILL.md +0 -229
  67. package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/SKILL.md +0 -53
  68. package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/compare.md +0 -30
  69. package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/v1.md +0 -42
  70. package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/v2.md +0 -34
  71. package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/v3.md +0 -33
  72. package/.opencode/oh-my-design/.claude/skills/omd-lab-01-designmd-impact/playbooks/v4.md +0 -37
  73. package/.opencode/oh-my-design/.claude/skills/omd-lab-02-design-harness/SKILL.md +0 -131
  74. package/.opencode/oh-my-design/.claude/skills/omd-learn/SKILL.md +0 -83
  75. package/.opencode/oh-my-design/.claude/skills/omd-locale-adapter/SKILL.md +0 -124
  76. package/.opencode/oh-my-design/.claude/skills/omd-migrate/SKILL.md +0 -307
  77. package/.opencode/oh-my-design/.claude/skills/omd-orchestrator/SKILL.md +0 -124
  78. package/.opencode/oh-my-design/.claude/skills/omd-release-hygiene/SKILL.md +0 -113
  79. package/.opencode/oh-my-design/.claude/skills/omd-remember/SKILL.md +0 -46
  80. package/.opencode/oh-my-design/.claude/skills/omd-sync/SKILL.md +0 -40
  81. package/.opencode/oh-my-design/.claude/skills/omd-token-backfill/SKILL.md +0 -57
  82. package/.opencode/oh-my-design/.claude/skills/skill-rules.json +0 -84
  83. package/.opencode/oh-my-design/.github/ISSUE_TEMPLATE/agent-fidelity.md +0 -59
  84. package/.opencode/oh-my-design/.github/ISSUE_TEMPLATE/bug-report.md +0 -36
  85. package/.opencode/oh-my-design/.github/ISSUE_TEMPLATE/config.yml +0 -8
  86. package/.opencode/oh-my-design/.github/ISSUE_TEMPLATE/feature-request.md +0 -26
  87. package/.opencode/oh-my-design/.github/PULL_REQUEST_TEMPLATE.md +0 -134
  88. package/.opencode/oh-my-design/.github/assets/logo-bg.png +0 -0
  89. package/.opencode/oh-my-design/.github/workflows/release.yml +0 -55
  90. package/.opencode/oh-my-design/.husky/pre-commit +0 -23
  91. package/.opencode/oh-my-design/.mcp.json +0 -12
  92. package/.opencode/oh-my-design/AGENTS.md +0 -112
  93. package/.opencode/oh-my-design/CHANGELOG.md +0 -385
  94. package/.opencode/oh-my-design/LICENSE +0 -21
  95. package/.opencode/oh-my-design/README.ja.md +0 -74
  96. package/.opencode/oh-my-design/README.ko.md +0 -112
  97. package/.opencode/oh-my-design/README.md +0 -112
  98. package/.opencode/oh-my-design/README.zh-TW.md +0 -74
  99. package/.opencode/oh-my-design/agents/AGENT.md +0 -53
  100. package/.opencode/oh-my-design/agents/omd-a11y-auditor.md +0 -97
  101. package/.opencode/oh-my-design/agents/omd-asset-curator.md +0 -255
  102. package/.opencode/oh-my-design/agents/omd-codex-image.md +0 -49
  103. package/.opencode/oh-my-design/agents/omd-critic.md +0 -181
  104. package/.opencode/oh-my-design/agents/omd-designer-review.md +0 -38
  105. package/.opencode/oh-my-design/agents/omd-final-qa.md +0 -40
  106. package/.opencode/oh-my-design/agents/omd-kr-writer.md +0 -35
  107. package/.opencode/oh-my-design/agents/omd-locale-adapter.md +0 -32
  108. package/.opencode/oh-my-design/agents/omd-master.md +0 -559
  109. package/.opencode/oh-my-design/agents/omd-microcopy.md +0 -63
  110. package/.opencode/oh-my-design/agents/omd-orchestrator.md +0 -34
  111. package/.opencode/oh-my-design/agents/omd-persona-tester.md +0 -118
  112. package/.opencode/oh-my-design/agents/omd-ui-junior.md +0 -129
  113. package/.opencode/oh-my-design/agents/omd-ux-engineer.md +0 -267
  114. package/.opencode/oh-my-design/agents/omd-ux-researcher.md +0 -62
  115. package/.opencode/oh-my-design/agents/omd-ux-writer.md +0 -181
  116. package/.opencode/oh-my-design/bin/oh-my-design.ts +0 -77
  117. package/.opencode/oh-my-design/data/architecture-proposals/1.7.2-recommend-install-feedback.md +0 -614
  118. package/.opencode/oh-my-design/data/architecture-proposals/2026-05-13-thin-install-fresh-fetch.md +0 -189
  119. package/.opencode/oh-my-design/data/issues/2026-05-13-multi-surface-schema-rfc.md +0 -67
  120. package/.opencode/oh-my-design/data/opt-out-corpus.json +0 -141
  121. package/.opencode/oh-my-design/data/reference-audits/2026-05-13-kr10.md +0 -132
  122. package/.opencode/oh-my-design/data/reference-audits/2026-05-14-kr10.md +0 -72
  123. package/.opencode/oh-my-design/data/reference-audits/2026-05-15-kr10.md +0 -124
  124. package/.opencode/oh-my-design/data/reference-fingerprints.json +0 -6142
  125. package/.opencode/oh-my-design/data/reference-tags.md +0 -118
  126. package/.opencode/oh-my-design/data/synonyms.json +0 -79
  127. package/.opencode/oh-my-design/data/vocabulary.json +0 -516
  128. package/.opencode/oh-my-design/packages/mcp/README.md +0 -172
  129. package/.opencode/oh-my-design/packages/mcp/__tests__/smoke.test.ts +0 -64
  130. package/.opencode/oh-my-design/packages/mcp/data/.gitkeep +0 -0
  131. package/.opencode/oh-my-design/packages/mcp/scripts/sync-data.mjs +0 -38
  132. package/.opencode/oh-my-design/packages/mcp/src/data.ts +0 -178
  133. package/.opencode/oh-my-design/packages/mcp/src/index.ts +0 -58
  134. package/.opencode/oh-my-design/packages/mcp/src/prompts/design-from-ref.ts +0 -87
  135. package/.opencode/oh-my-design/packages/mcp/src/server.ts +0 -223
  136. package/.opencode/oh-my-design/packages/mcp/src/tools/get-design-md.ts +0 -44
  137. package/.opencode/oh-my-design/packages/mcp/src/tools/list-references.ts +0 -58
  138. package/.opencode/oh-my-design/packages/mcp/src/tools/search-by-vibe.ts +0 -114
  139. package/.opencode/oh-my-design/packages/mcp/tsconfig.json +0 -21
  140. package/.opencode/oh-my-design/packages/mcp/tsup.config.ts +0 -17
  141. package/.opencode/oh-my-design/packages/mcp/vitest.config.ts +0 -8
  142. package/.opencode/oh-my-design/scripts/bench/README.md +0 -72
  143. package/.opencode/oh-my-design/scripts/bench/score-init.mjs +0 -97
  144. package/.opencode/oh-my-design/scripts/bench/score-taste.mjs +0 -189
  145. package/.opencode/oh-my-design/scripts/check-release-hygiene.sh +0 -83
  146. package/.opencode/oh-my-design/scripts/context.cjs +0 -91
  147. package/.opencode/oh-my-design/scripts/ctx-prime.cjs +0 -266
  148. package/.opencode/oh-my-design/scripts/gen-llms-full.cjs +0 -143
  149. package/.opencode/oh-my-design/scripts/growth-snapshot.mjs +0 -59
  150. package/.opencode/oh-my-design/scripts/postinstall.cjs +0 -54
  151. package/.opencode/oh-my-design/scripts/smoke-md-twins.mjs +0 -98
  152. package/.opencode/oh-my-design/skills/claude-design/SKILL.md +0 -390
  153. package/.opencode/oh-my-design/skills/claude-design/references/claude-design-flow.md +0 -425
  154. package/.opencode/oh-my-design/skills/claude-design/references/codebase-analysis.md +0 -373
  155. package/.opencode/oh-my-design/skills/claude-design/scripts/analyze_codebase.py +0 -1369
  156. package/.opencode/oh-my-design/skills/claude-design/scripts/clickable_link.sh +0 -48
  157. package/.opencode/oh-my-design/skills/claude-design/scripts/collect_source.py +0 -178
  158. package/.opencode/oh-my-design/skills/claude-design/scripts/drive_claude_design.cjs +0 -378
  159. package/.opencode/oh-my-design/skills/claude-design/scripts/gather_references.py +0 -437
  160. package/.opencode/oh-my-design/skills/omd-apply/SKILL.md +0 -107
  161. package/.opencode/oh-my-design/skills/omd-asset-fetch/SKILL.md +0 -213
  162. package/.opencode/oh-my-design/skills/omd-codex-image/SKILL.md +0 -162
  163. package/.opencode/oh-my-design/skills/omd-designer-review/SKILL.md +0 -180
  164. package/.opencode/oh-my-design/skills/omd-experiment-gallery/SKILL.md +0 -164
  165. package/.opencode/oh-my-design/skills/omd-final-qa/SKILL.md +0 -182
  166. package/.opencode/oh-my-design/skills/omd-harness/SKILL.md +0 -726
  167. package/.opencode/oh-my-design/skills/omd-init/SKILL.md +0 -314
  168. package/.opencode/oh-my-design/skills/omd-kr-writer/SKILL.md +0 -299
  169. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/SKILL.md +0 -129
  170. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/playbooks/v1.md +0 -105
  171. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/live-2026-04-27-water-app/feedback-log.md +0 -230
  172. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/README.md +0 -46
  173. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/founder/README.md +0 -7
  174. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/junior-designer/src/components/Hero.tsx +0 -1
  175. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/junior-designer/src/components/Project.tsx +0 -1
  176. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Accordion.tsx +0 -4
  177. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Alert.tsx +0 -4
  178. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Avatar.tsx +0 -4
  179. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Badge.tsx +0 -4
  180. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Breadcrumb.tsx +0 -4
  181. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Button.tsx +0 -4
  182. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Card.tsx +0 -4
  183. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Combobox.tsx +0 -4
  184. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/DataTable.tsx +0 -4
  185. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Dialog.tsx +0 -4
  186. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Drawer.tsx +0 -4
  187. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Field.tsx +0 -4
  188. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Form.tsx +0 -4
  189. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Input.tsx +0 -4
  190. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Menu.tsx +0 -4
  191. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Modal.tsx +0 -4
  192. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Pagination.tsx +0 -4
  193. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Popover.tsx +0 -4
  194. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Select.tsx +0 -4
  195. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Sheet.tsx +0 -4
  196. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Spinner.tsx +0 -4
  197. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Tabs.tsx +0 -4
  198. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Toast.tsx +0 -4
  199. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/Tooltip.tsx +0 -4
  200. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/senior-dev/src/components/VirtualList.tsx +0 -4
  201. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Alert.tsx +0 -3
  202. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Avatar.tsx +0 -3
  203. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Badge.tsx +0 -3
  204. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Button.tsx +0 -3
  205. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Card.tsx +0 -3
  206. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Input.tsx +0 -3
  207. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Modal.tsx +0 -3
  208. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Spinner.tsx +0 -3
  209. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Tabs.tsx +0 -3
  210. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/components/Toast.tsx +0 -3
  211. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/src/styles/globals.css +0 -25
  212. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/fixtures/vibe-coder/tailwind.config.ts +0 -28
  213. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i1-findings.md +0 -51
  214. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-audit-F.md +0 -133
  215. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-audit-J.md +0 -171
  216. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-audit-S.md +0 -232
  217. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-audit-V.md +0 -73
  218. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/iterations/i2-consolidated.md +0 -69
  219. package/.opencode/oh-my-design/skills/omd-lab-02-design-harness/runs/v4-self-test/postmortem.md +0 -128
  220. package/.opencode/oh-my-design/skills/omd-learn/SKILL.md +0 -121
  221. package/.opencode/oh-my-design/skills/omd-locale-adapter/SKILL.md +0 -124
  222. package/.opencode/oh-my-design/skills/omd-orchestrator/SKILL.md +0 -124
  223. package/.opencode/oh-my-design/skills/omd-reference-capture/SKILL.md +0 -722
  224. package/.opencode/oh-my-design/skills/omd-remember/SKILL.md +0 -122
  225. package/.opencode/oh-my-design/skills/omd-sync/SKILL.md +0 -162
  226. package/.opencode/oh-my-design/skills/omd-taste/SKILL.md +0 -79
  227. package/.opencode/oh-my-design/skills-lock.json +0 -10
  228. package/.opencode/oh-my-design/spec/components-schema.md +0 -179
  229. package/.opencode/oh-my-design/spec/migration-checklist.md +0 -148
  230. package/.opencode/oh-my-design/spec/migration-plan.md +0 -124
  231. package/.opencode/oh-my-design/spec/omd-v0.1.md +0 -382
  232. package/.opencode/oh-my-design/spec/regional-sources.yaml +0 -77
  233. package/.opencode/oh-my-design/spec/verification-pipeline.md +0 -154
  234. package/.opencode/oh-my-design/src/cli/install-skills.ts +0 -1116
  235. package/.opencode/oh-my-design/src/core/agent-detect.ts +0 -49
  236. package/.opencode/oh-my-design/test/README.md +0 -89
  237. package/.opencode/oh-my-design/test/scripts/check-backgrounds.ts +0 -10
  238. package/.opencode/oh-my-design/test/scripts/generate-preview.ts +0 -42
  239. package/.opencode/oh-my-design/test/unit/cli/install-skills.test.ts +0 -227
  240. package/.opencode/oh-my-design/test/unit/core/agent-detect.test.ts +0 -97
  241. package/.opencode/oh-my-design/test/unit/core/catalog-resolution-order.test.ts +0 -73
  242. package/.opencode/oh-my-design/test/unit/hooks/hooks.test.ts +0 -499
  243. package/.opencode/oh-my-design/tsconfig.json +0 -20
  244. package/.opencode/oh-my-design/tsup.config.ts +0 -12
  245. package/.opencode/oh-my-design/vitest.config.ts +0 -13
  246. package/.opencode/oh-my-design/web/.env.example +0 -21
  247. package/.opencode/oh-my-design/web/AGENTS.md +0 -5
  248. package/.opencode/oh-my-design/web/CLAUDE.md +0 -1
  249. package/.opencode/oh-my-design/web/README.md +0 -45
  250. package/.opencode/oh-my-design/web/__tests__/catalog-integrity.test.ts +0 -333
  251. package/.opencode/oh-my-design/web/components.json +0 -25
  252. package/.opencode/oh-my-design/web/docs/font-playground-analytics.md +0 -110
  253. package/.opencode/oh-my-design/web/eslint.config.mjs +0 -18
  254. package/.opencode/oh-my-design/web/next.config.ts +0 -31
  255. package/.opencode/oh-my-design/web/postcss.config.mjs +0 -7
  256. package/.opencode/oh-my-design/web/public/file.svg +0 -1
  257. package/.opencode/oh-my-design/web/public/globe.svg +0 -1
  258. package/.opencode/oh-my-design/web/public/llms-full.txt +0 -3149
  259. package/.opencode/oh-my-design/web/public/llms.ko.txt +0 -130
  260. package/.opencode/oh-my-design/web/public/llms.txt +0 -377
  261. package/.opencode/oh-my-design/web/public/logo-white.png +0 -0
  262. package/.opencode/oh-my-design/web/public/logo.png +0 -0
  263. package/.opencode/oh-my-design/web/public/next.svg +0 -1
  264. package/.opencode/oh-my-design/web/public/og-image.png +0 -0
  265. package/.opencode/oh-my-design/web/public/twitter-image.png +0 -0
  266. package/.opencode/oh-my-design/web/public/vercel.svg +0 -1
  267. package/.opencode/oh-my-design/web/public/window.svg +0 -1
  268. package/.opencode/oh-my-design/web/references/11st/.verification.md +0 -37
  269. package/.opencode/oh-my-design/web/references/11st/DESIGN.md +0 -400
  270. package/.opencode/oh-my-design/web/references/17live/DESIGN.md +0 -467
  271. package/.opencode/oh-my-design/web/references/29cm/DESIGN.md +0 -495
  272. package/.opencode/oh-my-design/web/references/29cm/_promo.json +0 -23
  273. package/.opencode/oh-my-design/web/references/29cm/_research.md +0 -103
  274. package/.opencode/oh-my-design/web/references/3o3/.verification.md +0 -73
  275. package/.opencode/oh-my-design/web/references/3o3/DESIGN.md +0 -454
  276. package/.opencode/oh-my-design/web/references/91app/.verification.md +0 -25
  277. package/.opencode/oh-my-design/web/references/91app/DESIGN.md +0 -182
  278. package/.opencode/oh-my-design/web/references/abema/.verification.md +0 -64
  279. package/.opencode/oh-my-design/web/references/abema/DESIGN.md +0 -535
  280. package/.opencode/oh-my-design/web/references/ably/DESIGN.md +0 -646
  281. package/.opencode/oh-my-design/web/references/ably/_promo.json +0 -18
  282. package/.opencode/oh-my-design/web/references/ably/_research.md +0 -120
  283. package/.opencode/oh-my-design/web/references/accupass/.verification.md +0 -66
  284. package/.opencode/oh-my-design/web/references/accupass/DESIGN.md +0 -494
  285. package/.opencode/oh-my-design/web/references/adobe/.verification.md +0 -63
  286. package/.opencode/oh-my-design/web/references/adobe/DESIGN.md +0 -458
  287. package/.opencode/oh-my-design/web/references/airbnb/.verification.md +0 -143
  288. package/.opencode/oh-my-design/web/references/airbnb/DESIGN.md +0 -639
  289. package/.opencode/oh-my-design/web/references/airbnb/README.md +0 -23
  290. package/.opencode/oh-my-design/web/references/airbnb/preview-dark.html +0 -234
  291. package/.opencode/oh-my-design/web/references/airbnb/preview.html +0 -233
  292. package/.opencode/oh-my-design/web/references/airtable/.verification.md +0 -136
  293. package/.opencode/oh-my-design/web/references/airtable/DESIGN.md +0 -314
  294. package/.opencode/oh-my-design/web/references/airtable/README.md +0 -23
  295. package/.opencode/oh-my-design/web/references/airtable/preview-dark.html +0 -165
  296. package/.opencode/oh-my-design/web/references/airtable/preview.html +0 -164
  297. package/.opencode/oh-my-design/web/references/alipay/DESIGN.md +0 -506
  298. package/.opencode/oh-my-design/web/references/amazingtalker/.verification.md +0 -38
  299. package/.opencode/oh-my-design/web/references/amazingtalker/DESIGN.md +0 -434
  300. package/.opencode/oh-my-design/web/references/appier/DESIGN.md +0 -465
  301. package/.opencode/oh-my-design/web/references/apple/.verification.md +0 -162
  302. package/.opencode/oh-my-design/web/references/apple/DESIGN.md +0 -613
  303. package/.opencode/oh-my-design/web/references/apple/README.md +0 -24
  304. package/.opencode/oh-my-design/web/references/apple/preview-dark.html +0 -420
  305. package/.opencode/oh-my-design/web/references/apple/preview.html +0 -414
  306. package/.opencode/oh-my-design/web/references/baemin/.verification.md +0 -132
  307. package/.opencode/oh-my-design/web/references/baemin/DESIGN.md +0 -578
  308. package/.opencode/oh-my-design/web/references/baemin/README.md +0 -19
  309. package/.opencode/oh-my-design/web/references/baemin/_research.md +0 -84
  310. package/.opencode/oh-my-design/web/references/banksalad/DESIGN.md +0 -688
  311. package/.opencode/oh-my-design/web/references/banksalad/_promo.json +0 -29
  312. package/.opencode/oh-my-design/web/references/banksalad/_research.md +0 -190
  313. package/.opencode/oh-my-design/web/references/bilibili/DESIGN.md +0 -471
  314. package/.opencode/oh-my-design/web/references/bithumb/.verification.md +0 -31
  315. package/.opencode/oh-my-design/web/references/bithumb/DESIGN.md +0 -208
  316. package/.opencode/oh-my-design/web/references/bmw/.verification.md +0 -114
  317. package/.opencode/oh-my-design/web/references/bmw/DESIGN.md +0 -360
  318. package/.opencode/oh-my-design/web/references/bmw/README.md +0 -23
  319. package/.opencode/oh-my-design/web/references/bmw/preview-dark.html +0 -211
  320. package/.opencode/oh-my-design/web/references/bmw/preview.html +0 -210
  321. package/.opencode/oh-my-design/web/references/brandi/.verification.md +0 -29
  322. package/.opencode/oh-my-design/web/references/brandi/DESIGN.md +0 -414
  323. package/.opencode/oh-my-design/web/references/bunjang/DESIGN.md +0 -374
  324. package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/.live-inspect-proof.json +0 -260
  325. package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/fonts.json +0 -33
  326. package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/logo-icon.svg +0 -10
  327. package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/structure.json +0 -131
  328. package/.opencode/oh-my-design/web/references/bunjang/assets/_reference/tokens.json +0 -147
  329. package/.opencode/oh-my-design/web/references/cakeresume/.verification.md +0 -25
  330. package/.opencode/oh-my-design/web/references/cakeresume/DESIGN.md +0 -191
  331. package/.opencode/oh-my-design/web/references/cal/.verification.md +0 -145
  332. package/.opencode/oh-my-design/web/references/cal/DESIGN.md +0 -481
  333. package/.opencode/oh-my-design/web/references/cal/README.md +0 -23
  334. package/.opencode/oh-my-design/web/references/cal/preview-dark.html +0 -449
  335. package/.opencode/oh-my-design/web/references/cal/preview.html +0 -575
  336. package/.opencode/oh-my-design/web/references/catchtable/DESIGN.md +0 -341
  337. package/.opencode/oh-my-design/web/references/catchtable/_research.md +0 -54
  338. package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/.live-inspect-proof.json +0 -204
  339. package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/.live-inspect-raw.json +0 -22
  340. package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/fonts.json +0 -21
  341. package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/structure.json +0 -42
  342. package/.opencode/oh-my-design/web/references/catchtable/assets/_reference/tokens.json +0 -95
  343. package/.opencode/oh-my-design/web/references/cathay/.verification.md +0 -44
  344. package/.opencode/oh-my-design/web/references/cathay/DESIGN.md +0 -432
  345. package/.opencode/oh-my-design/web/references/channeltalk/DESIGN.md +0 -422
  346. package/.opencode/oh-my-design/web/references/channeltalk/assets/_reference/.live-inspect-proof.json +0 -320
  347. package/.opencode/oh-my-design/web/references/channeltalk/assets/_reference/fonts.json +0 -53
  348. package/.opencode/oh-my-design/web/references/channeltalk/assets/_reference/structure.json +0 -47
  349. package/.opencode/oh-my-design/web/references/channeltalk/assets/_reference/tokens.json +0 -78
  350. package/.opencode/oh-my-design/web/references/class101/DESIGN.md +0 -484
  351. package/.opencode/oh-my-design/web/references/classting/.verification.md +0 -32
  352. package/.opencode/oh-my-design/web/references/classting/DESIGN.md +0 -292
  353. package/.opencode/oh-my-design/web/references/classum/DESIGN.md +0 -279
  354. package/.opencode/oh-my-design/web/references/classum/assets/_reference/.live-inspect-proof.json +0 -72
  355. package/.opencode/oh-my-design/web/references/classum/assets/_reference/fonts.json +0 -20
  356. package/.opencode/oh-my-design/web/references/classum/assets/_reference/structure.json +0 -21
  357. package/.opencode/oh-my-design/web/references/classum/assets/_reference/tokens.json +0 -56
  358. package/.opencode/oh-my-design/web/references/claude/.verification.md +0 -106
  359. package/.opencode/oh-my-design/web/references/claude/DESIGN.md +0 -561
  360. package/.opencode/oh-my-design/web/references/claude/README.md +0 -24
  361. package/.opencode/oh-my-design/web/references/claude/preview-dark.html +0 -803
  362. package/.opencode/oh-my-design/web/references/claude/preview.html +0 -826
  363. package/.opencode/oh-my-design/web/references/clay/.verification.md +0 -129
  364. package/.opencode/oh-my-design/web/references/clay/DESIGN.md +0 -454
  365. package/.opencode/oh-my-design/web/references/clay/README.md +0 -23
  366. package/.opencode/oh-my-design/web/references/clay/preview-dark.html +0 -316
  367. package/.opencode/oh-my-design/web/references/clay/preview.html +0 -315
  368. package/.opencode/oh-my-design/web/references/clickhouse/.verification.md +0 -132
  369. package/.opencode/oh-my-design/web/references/clickhouse/DESIGN.md +0 -424
  370. package/.opencode/oh-my-design/web/references/clickhouse/README.md +0 -24
  371. package/.opencode/oh-my-design/web/references/clickhouse/preview-dark.html +0 -834
  372. package/.opencode/oh-my-design/web/references/clickhouse/preview.html +0 -786
  373. package/.opencode/oh-my-design/web/references/cloudflare/.verification.md +0 -21
  374. package/.opencode/oh-my-design/web/references/cloudflare/DESIGN.md +0 -637
  375. package/.opencode/oh-my-design/web/references/cohere/.verification.md +0 -136
  376. package/.opencode/oh-my-design/web/references/cohere/DESIGN.md +0 -409
  377. package/.opencode/oh-my-design/web/references/cohere/README.md +0 -24
  378. package/.opencode/oh-my-design/web/references/cohere/preview-dark.html +0 -803
  379. package/.opencode/oh-my-design/web/references/cohere/preview.html +0 -807
  380. package/.opencode/oh-my-design/web/references/coinbase/.verification.md +0 -116
  381. package/.opencode/oh-my-design/web/references/coinbase/DESIGN.md +0 -353
  382. package/.opencode/oh-my-design/web/references/coinbase/README.md +0 -23
  383. package/.opencode/oh-my-design/web/references/coinbase/preview-dark.html +0 -164
  384. package/.opencode/oh-my-design/web/references/coinbase/preview.html +0 -163
  385. package/.opencode/oh-my-design/web/references/coinone/.verification.md +0 -38
  386. package/.opencode/oh-my-design/web/references/coinone/DESIGN.md +0 -257
  387. package/.opencode/oh-my-design/web/references/composio/.verification.md +0 -143
  388. package/.opencode/oh-my-design/web/references/composio/DESIGN.md +0 -441
  389. package/.opencode/oh-my-design/web/references/composio/README.md +0 -24
  390. package/.opencode/oh-my-design/web/references/composio/preview-dark.html +0 -958
  391. package/.opencode/oh-my-design/web/references/composio/preview.html +0 -933
  392. package/.opencode/oh-my-design/web/references/cookpad/DESIGN.md +0 -394
  393. package/.opencode/oh-my-design/web/references/coupang/.verification.md +0 -141
  394. package/.opencode/oh-my-design/web/references/coupang/DESIGN.md +0 -557
  395. package/.opencode/oh-my-design/web/references/cursor/.verification.md +0 -141
  396. package/.opencode/oh-my-design/web/references/cursor/DESIGN.md +0 -460
  397. package/.opencode/oh-my-design/web/references/cursor/README.md +0 -24
  398. package/.opencode/oh-my-design/web/references/cursor/preview-dark.html +0 -393
  399. package/.opencode/oh-my-design/web/references/cursor/preview.html +0 -383
  400. package/.opencode/oh-my-design/web/references/dabang/DESIGN.md +0 -267
  401. package/.opencode/oh-my-design/web/references/dabang/assets/_reference/.live-inspect-proof.json +0 -145
  402. package/.opencode/oh-my-design/web/references/dabang/assets/_reference/fonts.json +0 -22
  403. package/.opencode/oh-my-design/web/references/dabang/assets/_reference/raw-capture-map.json +0 -718
  404. package/.opencode/oh-my-design/web/references/dabang/assets/_reference/raw-capture.json +0 -1125
  405. package/.opencode/oh-my-design/web/references/dabang/assets/_reference/structure.json +0 -53
  406. package/.opencode/oh-my-design/web/references/dabang/assets/_reference/tokens.json +0 -130
  407. package/.opencode/oh-my-design/web/references/danawa/.verification.md +0 -60
  408. package/.opencode/oh-my-design/web/references/danawa/DESIGN.md +0 -477
  409. package/.opencode/oh-my-design/web/references/dcard/.verification.md +0 -118
  410. package/.opencode/oh-my-design/web/references/dcard/DESIGN.md +0 -633
  411. package/.opencode/oh-my-design/web/references/dcard/README.md +0 -12
  412. package/.opencode/oh-my-design/web/references/dcard/_research/forum-1440px.png +0 -0
  413. package/.opencode/oh-my-design/web/references/dcard/_research.md +0 -133
  414. package/.opencode/oh-my-design/web/references/dell/.verification.md +0 -21
  415. package/.opencode/oh-my-design/web/references/dell/DESIGN.md +0 -636
  416. package/.opencode/oh-my-design/web/references/devsisters/.verification.md +0 -32
  417. package/.opencode/oh-my-design/web/references/devsisters/DESIGN.md +0 -282
  418. package/.opencode/oh-my-design/web/references/discord/.verification.md +0 -21
  419. package/.opencode/oh-my-design/web/references/discord/DESIGN.md +0 -604
  420. package/.opencode/oh-my-design/web/references/dji/DESIGN.md +0 -454
  421. package/.opencode/oh-my-design/web/references/drnow/.verification.md +0 -41
  422. package/.opencode/oh-my-design/web/references/drnow/DESIGN.md +0 -383
  423. package/.opencode/oh-my-design/web/references/dropbox/.verification.md +0 -61
  424. package/.opencode/oh-my-design/web/references/dropbox/DESIGN.md +0 -445
  425. package/.opencode/oh-my-design/web/references/duolingo/.verification.md +0 -20
  426. package/.opencode/oh-my-design/web/references/duolingo/DESIGN.md +0 -563
  427. package/.opencode/oh-my-design/web/references/elevenlabs/.verification.md +0 -128
  428. package/.opencode/oh-my-design/web/references/elevenlabs/DESIGN.md +0 -415
  429. package/.opencode/oh-my-design/web/references/elevenlabs/README.md +0 -23
  430. package/.opencode/oh-my-design/web/references/elevenlabs/preview-dark.html +0 -252
  431. package/.opencode/oh-my-design/web/references/elevenlabs/preview.html +0 -251
  432. package/.opencode/oh-my-design/web/references/expo/.verification.md +0 -141
  433. package/.opencode/oh-my-design/web/references/expo/DESIGN.md +0 -412
  434. package/.opencode/oh-my-design/web/references/expo/README.md +0 -24
  435. package/.opencode/oh-my-design/web/references/expo/preview-dark.html +0 -533
  436. package/.opencode/oh-my-design/web/references/expo/preview.html +0 -533
  437. package/.opencode/oh-my-design/web/references/fastcampus/DESIGN.md +0 -529
  438. package/.opencode/oh-my-design/web/references/fastcampus/assets/_reference/.live-inspect-proof.json +0 -950
  439. package/.opencode/oh-my-design/web/references/fastcampus/assets/_reference/fonts.json +0 -14
  440. package/.opencode/oh-my-design/web/references/fastcampus/assets/_reference/structure.json +0 -30
  441. package/.opencode/oh-my-design/web/references/fastcampus/assets/_reference/tokens.json +0 -109
  442. package/.opencode/oh-my-design/web/references/ferrari/.verification.md +0 -119
  443. package/.opencode/oh-my-design/web/references/ferrari/DESIGN.md +0 -447
  444. package/.opencode/oh-my-design/web/references/ferrari/README.md +0 -23
  445. package/.opencode/oh-my-design/web/references/ferrari/preview-dark.html +0 -1162
  446. package/.opencode/oh-my-design/web/references/ferrari/preview.html +0 -1122
  447. package/.opencode/oh-my-design/web/references/figma/.verification.md +0 -206
  448. package/.opencode/oh-my-design/web/references/figma/DESIGN.md +0 -534
  449. package/.opencode/oh-my-design/web/references/figma/README.md +0 -24
  450. package/.opencode/oh-my-design/web/references/figma/preview-dark.html +0 -822
  451. package/.opencode/oh-my-design/web/references/figma/preview.html +0 -832
  452. package/.opencode/oh-my-design/web/references/finda/.verification.md +0 -33
  453. package/.opencode/oh-my-design/web/references/finda/DESIGN.md +0 -413
  454. package/.opencode/oh-my-design/web/references/firstory/.verification.md +0 -70
  455. package/.opencode/oh-my-design/web/references/firstory/DESIGN.md +0 -487
  456. package/.opencode/oh-my-design/web/references/flex/DESIGN.md +0 -356
  457. package/.opencode/oh-my-design/web/references/flex/_research.md +0 -49
  458. package/.opencode/oh-my-design/web/references/flex/assets/_reference/.live-inspect-proof.json +0 -192
  459. package/.opencode/oh-my-design/web/references/flex/assets/_reference/.raw-inspect.json +0 -873
  460. package/.opencode/oh-my-design/web/references/flex/assets/_reference/fonts.json +0 -17
  461. package/.opencode/oh-my-design/web/references/flex/assets/_reference/structure.json +0 -58
  462. package/.opencode/oh-my-design/web/references/flex/assets/_reference/tokens.json +0 -75
  463. package/.opencode/oh-my-design/web/references/flo/.verification.md +0 -33
  464. package/.opencode/oh-my-design/web/references/flo/DESIGN.md +0 -349
  465. package/.opencode/oh-my-design/web/references/framer/.verification.md +0 -147
  466. package/.opencode/oh-my-design/web/references/framer/DESIGN.md +0 -431
  467. package/.opencode/oh-my-design/web/references/framer/README.md +0 -23
  468. package/.opencode/oh-my-design/web/references/framer/preview-dark.html +0 -902
  469. package/.opencode/oh-my-design/web/references/framer/preview.html +0 -883
  470. package/.opencode/oh-my-design/web/references/freee/.verification.md +0 -145
  471. package/.opencode/oh-my-design/web/references/freee/DESIGN.md +0 -620
  472. package/.opencode/oh-my-design/web/references/freee/README.md +0 -12
  473. package/.opencode/oh-my-design/web/references/freee/_research/vibes-storybook-1440px.png +0 -0
  474. package/.opencode/oh-my-design/web/references/freee/_research.md +0 -116
  475. package/.opencode/oh-my-design/web/references/fugle/.verification.md +0 -40
  476. package/.opencode/oh-my-design/web/references/fugle/DESIGN.md +0 -290
  477. package/.opencode/oh-my-design/web/references/funnow/.verification.md +0 -62
  478. package/.opencode/oh-my-design/web/references/funnow/DESIGN.md +0 -431
  479. package/.opencode/oh-my-design/web/references/gangnamunni/DESIGN.md +0 -677
  480. package/.opencode/oh-my-design/web/references/gangnamunni/_promo.json +0 -26
  481. package/.opencode/oh-my-design/web/references/gangnamunni/_research.md +0 -113
  482. package/.opencode/oh-my-design/web/references/genie/.verification.md +0 -29
  483. package/.opencode/oh-my-design/web/references/genie/DESIGN.md +0 -415
  484. package/.opencode/oh-my-design/web/references/github/.verification.md +0 -21
  485. package/.opencode/oh-my-design/web/references/github/DESIGN.md +0 -727
  486. package/.opencode/oh-my-design/web/references/gmarket/DESIGN.md +0 -534
  487. package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/.live-inspect-proof.json +0 -217
  488. package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/fonts.json +0 -41
  489. package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/raw-capture-bestsellers.json +0 -1929
  490. package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/raw-capture-home.json +0 -3675
  491. package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/structure.json +0 -65
  492. package/.opencode/oh-my-design/web/references/gmarket/assets/_reference/tokens.json +0 -210
  493. package/.opencode/oh-my-design/web/references/gogolook/.verification.md +0 -31
  494. package/.opencode/oh-my-design/web/references/gogolook/DESIGN.md +0 -155
  495. package/.opencode/oh-my-design/web/references/gogoro/DESIGN.md +0 -441
  496. package/.opencode/oh-my-design/web/references/google/.verification.md +0 -61
  497. package/.opencode/oh-my-design/web/references/google/DESIGN.md +0 -499
  498. package/.opencode/oh-my-design/web/references/greenvines/.verification.md +0 -72
  499. package/.opencode/oh-my-design/web/references/greenvines/DESIGN.md +0 -454
  500. package/.opencode/oh-my-design/web/references/greeting/.verification.md +0 -64
  501. package/.opencode/oh-my-design/web/references/greeting/DESIGN.md +0 -462
  502. package/.opencode/oh-my-design/web/references/grip/.verification.md +0 -36
  503. package/.opencode/oh-my-design/web/references/grip/DESIGN.md +0 -289
  504. package/.opencode/oh-my-design/web/references/hahow/.verification.md +0 -31
  505. package/.opencode/oh-my-design/web/references/hahow/DESIGN.md +0 -184
  506. package/.opencode/oh-my-design/web/references/hashicorp/.verification.md +0 -142
  507. package/.opencode/oh-my-design/web/references/hashicorp/DESIGN.md +0 -411
  508. package/.opencode/oh-my-design/web/references/hashicorp/README.md +0 -24
  509. package/.opencode/oh-my-design/web/references/hashicorp/preview-dark.html +0 -1202
  510. package/.opencode/oh-my-design/web/references/hashicorp/preview.html +0 -1193
  511. package/.opencode/oh-my-design/web/references/hogangnono/.verification.md +0 -33
  512. package/.opencode/oh-my-design/web/references/hogangnono/DESIGN.md +0 -349
  513. package/.opencode/oh-my-design/web/references/hp/.verification.md +0 -21
  514. package/.opencode/oh-my-design/web/references/hp/DESIGN.md +0 -563
  515. package/.opencode/oh-my-design/web/references/hyperconnect/.verification.md +0 -40
  516. package/.opencode/oh-my-design/web/references/hyperconnect/DESIGN.md +0 -393
  517. package/.opencode/oh-my-design/web/references/hyundaicard/.verification.md +0 -25
  518. package/.opencode/oh-my-design/web/references/hyundaicard/DESIGN.md +0 -201
  519. package/.opencode/oh-my-design/web/references/ibm/.verification.md +0 -102
  520. package/.opencode/oh-my-design/web/references/ibm/DESIGN.md +0 -464
  521. package/.opencode/oh-my-design/web/references/ibm/README.md +0 -24
  522. package/.opencode/oh-my-design/web/references/ibm/preview-dark.html +0 -443
  523. package/.opencode/oh-my-design/web/references/ibm/preview.html +0 -428
  524. package/.opencode/oh-my-design/web/references/ichef/DESIGN.md +0 -455
  525. package/.opencode/oh-my-design/web/references/ikala/.verification.md +0 -35
  526. package/.opencode/oh-my-design/web/references/ikala/DESIGN.md +0 -400
  527. package/.opencode/oh-my-design/web/references/imweb/.verification.md +0 -61
  528. package/.opencode/oh-my-design/web/references/imweb/DESIGN.md +0 -460
  529. package/.opencode/oh-my-design/web/references/inflearn/DESIGN.md +0 -453
  530. package/.opencode/oh-my-design/web/references/inflearn/_promo.json +0 -29
  531. package/.opencode/oh-my-design/web/references/inflearn/_research.md +0 -85
  532. package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/.live-inspect-proof-courses.json +0 -679
  533. package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/.live-inspect-proof.json +0 -448
  534. package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/fonts.json +0 -41
  535. package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/structure.json +0 -110
  536. package/.opencode/oh-my-design/web/references/inflearn/assets/_reference/tokens.json +0 -54
  537. package/.opencode/oh-my-design/web/references/intercom/.verification.md +0 -144
  538. package/.opencode/oh-my-design/web/references/intercom/DESIGN.md +0 -271
  539. package/.opencode/oh-my-design/web/references/intercom/README.md +0 -23
  540. package/.opencode/oh-my-design/web/references/intercom/preview-dark.html +0 -185
  541. package/.opencode/oh-my-design/web/references/intercom/preview.html +0 -184
  542. package/.opencode/oh-my-design/web/references/jandi/.verification.md +0 -26
  543. package/.opencode/oh-my-design/web/references/jandi/DESIGN.md +0 -382
  544. package/.opencode/oh-my-design/web/references/jkopay/.verification.md +0 -32
  545. package/.opencode/oh-my-design/web/references/jkopay/DESIGN.md +0 -283
  546. package/.opencode/oh-my-design/web/references/jobkorea/.verification.md +0 -30
  547. package/.opencode/oh-my-design/web/references/jobkorea/DESIGN.md +0 -349
  548. package/.opencode/oh-my-design/web/references/jumpit/DESIGN.md +0 -403
  549. package/.opencode/oh-my-design/web/references/jumpit/_research.md +0 -119
  550. package/.opencode/oh-my-design/web/references/jumpit/assets/_reference/.live-inspect-proof.json +0 -182
  551. package/.opencode/oh-my-design/web/references/jumpit/assets/_reference/fonts.json +0 -20
  552. package/.opencode/oh-my-design/web/references/jumpit/assets/_reference/structure.json +0 -66
  553. package/.opencode/oh-my-design/web/references/jumpit/assets/_reference/tokens.json +0 -108
  554. package/.opencode/oh-my-design/web/references/kakao/.verification.md +0 -137
  555. package/.opencode/oh-my-design/web/references/kakao/DESIGN.md +0 -568
  556. package/.opencode/oh-my-design/web/references/kakao/README.md +0 -18
  557. package/.opencode/oh-my-design/web/references/kakao/_research.md +0 -98
  558. package/.opencode/oh-my-design/web/references/kakaobank/.verification.md +0 -133
  559. package/.opencode/oh-my-design/web/references/kakaobank/DESIGN.md +0 -602
  560. package/.opencode/oh-my-design/web/references/kakaopay/DESIGN.md +0 -603
  561. package/.opencode/oh-my-design/web/references/kakaopay/_promo.json +0 -22
  562. package/.opencode/oh-my-design/web/references/kakaopay/_research.md +0 -84
  563. package/.opencode/oh-my-design/web/references/kakaot/DESIGN.md +0 -507
  564. package/.opencode/oh-my-design/web/references/karrot/.verification.md +0 -143
  565. package/.opencode/oh-my-design/web/references/karrot/DESIGN.md +0 -494
  566. package/.opencode/oh-my-design/web/references/karrot/README.md +0 -18
  567. package/.opencode/oh-my-design/web/references/karrot/_research.md +0 -57
  568. package/.opencode/oh-my-design/web/references/kbank/DESIGN.md +0 -252
  569. package/.opencode/oh-my-design/web/references/kbank/assets/_reference/.live-inspect-proof.json +0 -215
  570. package/.opencode/oh-my-design/web/references/kbank/assets/_reference/.live-inspect-raw.json +0 -1
  571. package/.opencode/oh-my-design/web/references/kbank/assets/_reference/fonts.json +0 -20
  572. package/.opencode/oh-my-design/web/references/kbank/assets/_reference/structure.json +0 -151
  573. package/.opencode/oh-my-design/web/references/kbank/assets/_reference/tokens.json +0 -101
  574. package/.opencode/oh-my-design/web/references/kdan/.verification.md +0 -30
  575. package/.opencode/oh-my-design/web/references/kdan/DESIGN.md +0 -193
  576. package/.opencode/oh-my-design/web/references/kintone/.verification.md +0 -21
  577. package/.opencode/oh-my-design/web/references/kintone/DESIGN.md +0 -586
  578. package/.opencode/oh-my-design/web/references/kkbox/.verification.md +0 -27
  579. package/.opencode/oh-my-design/web/references/kkbox/DESIGN.md +0 -136
  580. package/.opencode/oh-my-design/web/references/kkday/DESIGN.md +0 -470
  581. package/.opencode/oh-my-design/web/references/kmong/.verification.md +0 -30
  582. package/.opencode/oh-my-design/web/references/kmong/DESIGN.md +0 -427
  583. package/.opencode/oh-my-design/web/references/krafton/.verification.md +0 -38
  584. package/.opencode/oh-my-design/web/references/krafton/DESIGN.md +0 -267
  585. package/.opencode/oh-my-design/web/references/kraken/.verification.md +0 -143
  586. package/.opencode/oh-my-design/web/references/kraken/DESIGN.md +0 -277
  587. package/.opencode/oh-my-design/web/references/kraken/README.md +0 -23
  588. package/.opencode/oh-my-design/web/references/kraken/preview-dark.html +0 -169
  589. package/.opencode/oh-my-design/web/references/kraken/preview.html +0 -168
  590. package/.opencode/oh-my-design/web/references/krds/.verification.md +0 -373
  591. package/.opencode/oh-my-design/web/references/krds/DESIGN.md +0 -1060
  592. package/.opencode/oh-my-design/web/references/kream/DESIGN.md +0 -432
  593. package/.opencode/oh-my-design/web/references/kream/assets/_reference/.live-inspect-proof.json +0 -289
  594. package/.opencode/oh-my-design/web/references/kream/assets/_reference/fonts.json +0 -26
  595. package/.opencode/oh-my-design/web/references/kream/assets/_reference/structure.json +0 -56
  596. package/.opencode/oh-my-design/web/references/kream/assets/_reference/tokens.json +0 -154
  597. package/.opencode/oh-my-design/web/references/kurly/.verification.md +0 -126
  598. package/.opencode/oh-my-design/web/references/kurly/DESIGN.md +0 -620
  599. package/.opencode/oh-my-design/web/references/laftel/.verification.md +0 -39
  600. package/.opencode/oh-my-design/web/references/laftel/DESIGN.md +0 -293
  601. package/.opencode/oh-my-design/web/references/lamborghini/.verification.md +0 -127
  602. package/.opencode/oh-my-design/web/references/lamborghini/DESIGN.md +0 -430
  603. package/.opencode/oh-my-design/web/references/lamborghini/README.md +0 -23
  604. package/.opencode/oh-my-design/web/references/lamborghini/preview-dark.html +0 -303
  605. package/.opencode/oh-my-design/web/references/lamborghini/preview.html +0 -381
  606. package/.opencode/oh-my-design/web/references/laundrygo/.verification.md +0 -60
  607. package/.opencode/oh-my-design/web/references/laundrygo/DESIGN.md +0 -434
  608. package/.opencode/oh-my-design/web/references/layerx/.verification.md +0 -21
  609. package/.opencode/oh-my-design/web/references/layerx/DESIGN.md +0 -615
  610. package/.opencode/oh-my-design/web/references/lezhin/.verification.md +0 -47
  611. package/.opencode/oh-my-design/web/references/lezhin/DESIGN.md +0 -348
  612. package/.opencode/oh-my-design/web/references/line/.verification.md +0 -137
  613. package/.opencode/oh-my-design/web/references/line/DESIGN.md +0 -467
  614. package/.opencode/oh-my-design/web/references/line/README.md +0 -12
  615. package/.opencode/oh-my-design/web/references/line/_research/home-1440px.png +0 -0
  616. package/.opencode/oh-my-design/web/references/line/_research.md +0 -65
  617. package/.opencode/oh-my-design/web/references/linear.app/.verification.md +0 -143
  618. package/.opencode/oh-my-design/web/references/linear.app/DESIGN.md +0 -642
  619. package/.opencode/oh-my-design/web/references/linear.app/README.md +0 -24
  620. package/.opencode/oh-my-design/web/references/linear.app/preview-dark.html +0 -383
  621. package/.opencode/oh-my-design/web/references/linear.app/preview.html +0 -373
  622. package/.opencode/oh-my-design/web/references/loom/.verification.md +0 -31
  623. package/.opencode/oh-my-design/web/references/loom/DESIGN.md +0 -396
  624. package/.opencode/oh-my-design/web/references/lovable/.verification.md +0 -154
  625. package/.opencode/oh-my-design/web/references/lovable/DESIGN.md +0 -423
  626. package/.opencode/oh-my-design/web/references/lovable/README.md +0 -24
  627. package/.opencode/oh-my-design/web/references/lovable/preview-dark.html +0 -349
  628. package/.opencode/oh-my-design/web/references/lovable/preview.html +0 -348
  629. package/.opencode/oh-my-design/web/references/lunit/DESIGN.md +0 -296
  630. package/.opencode/oh-my-design/web/references/lunit/assets/_reference/.live-inspect-proof.json +0 -249
  631. package/.opencode/oh-my-design/web/references/lunit/assets/_reference/fonts.json +0 -24
  632. package/.opencode/oh-my-design/web/references/lunit/assets/_reference/structure.json +0 -162
  633. package/.opencode/oh-my-design/web/references/lunit/assets/_reference/tokens.json +0 -115
  634. package/.opencode/oh-my-design/web/references/mastercard/.verification.md +0 -19
  635. package/.opencode/oh-my-design/web/references/mastercard/DESIGN.md +0 -587
  636. package/.opencode/oh-my-design/web/references/meituan/DESIGN.md +0 -466
  637. package/.opencode/oh-my-design/web/references/melon/.verification.md +0 -27
  638. package/.opencode/oh-my-design/web/references/melon/DESIGN.md +0 -179
  639. package/.opencode/oh-my-design/web/references/mercari/.verification.md +0 -155
  640. package/.opencode/oh-my-design/web/references/mercari/DESIGN.md +0 -514
  641. package/.opencode/oh-my-design/web/references/mercari/README.md +0 -12
  642. package/.opencode/oh-my-design/web/references/mercari/_research/home-1440px.png +0 -0
  643. package/.opencode/oh-my-design/web/references/mercari/_research.md +0 -137
  644. package/.opencode/oh-my-design/web/references/mercury/.verification.md +0 -21
  645. package/.opencode/oh-my-design/web/references/mercury/DESIGN.md +0 -589
  646. package/.opencode/oh-my-design/web/references/meta/.verification.md +0 -21
  647. package/.opencode/oh-my-design/web/references/meta/DESIGN.md +0 -615
  648. package/.opencode/oh-my-design/web/references/microsoft/.verification.md +0 -62
  649. package/.opencode/oh-my-design/web/references/microsoft/DESIGN.md +0 -508
  650. package/.opencode/oh-my-design/web/references/millie/DESIGN.md +0 -584
  651. package/.opencode/oh-my-design/web/references/minimax/.verification.md +0 -135
  652. package/.opencode/oh-my-design/web/references/minimax/DESIGN.md +0 -396
  653. package/.opencode/oh-my-design/web/references/minimax/README.md +0 -24
  654. package/.opencode/oh-my-design/web/references/minimax/preview-dark.html +0 -1262
  655. package/.opencode/oh-my-design/web/references/minimax/preview.html +0 -1248
  656. package/.opencode/oh-my-design/web/references/mintlify/.verification.md +0 -160
  657. package/.opencode/oh-my-design/web/references/mintlify/DESIGN.md +0 -472
  658. package/.opencode/oh-my-design/web/references/mintlify/README.md +0 -24
  659. package/.opencode/oh-my-design/web/references/mintlify/preview-dark.html +0 -409
  660. package/.opencode/oh-my-design/web/references/mintlify/preview.html +0 -398
  661. package/.opencode/oh-my-design/web/references/miricanvas/.verification.md +0 -61
  662. package/.opencode/oh-my-design/web/references/miricanvas/DESIGN.md +0 -464
  663. package/.opencode/oh-my-design/web/references/miro/.verification.md +0 -138
  664. package/.opencode/oh-my-design/web/references/miro/DESIGN.md +0 -319
  665. package/.opencode/oh-my-design/web/references/miro/README.md +0 -23
  666. package/.opencode/oh-my-design/web/references/miro/preview-dark.html +0 -174
  667. package/.opencode/oh-my-design/web/references/miro/preview.html +0 -173
  668. package/.opencode/oh-my-design/web/references/mistral.ai/.verification.md +0 -146
  669. package/.opencode/oh-my-design/web/references/mistral.ai/DESIGN.md +0 -390
  670. package/.opencode/oh-my-design/web/references/mistral.ai/README.md +0 -24
  671. package/.opencode/oh-my-design/web/references/mistral.ai/preview-dark.html +0 -806
  672. package/.opencode/oh-my-design/web/references/mistral.ai/preview.html +0 -805
  673. package/.opencode/oh-my-design/web/references/modusign/.verification.md +0 -58
  674. package/.opencode/oh-my-design/web/references/modusign/DESIGN.md +0 -524
  675. package/.opencode/oh-my-design/web/references/momoshop/.verification.md +0 -36
  676. package/.opencode/oh-my-design/web/references/momoshop/DESIGN.md +0 -322
  677. package/.opencode/oh-my-design/web/references/money-forward/DESIGN.md +0 -443
  678. package/.opencode/oh-my-design/web/references/mongodb/.verification.md +0 -145
  679. package/.opencode/oh-my-design/web/references/mongodb/DESIGN.md +0 -401
  680. package/.opencode/oh-my-design/web/references/mongodb/README.md +0 -23
  681. package/.opencode/oh-my-design/web/references/mongodb/preview-dark.html +0 -260
  682. package/.opencode/oh-my-design/web/references/mongodb/preview.html +0 -259
  683. package/.opencode/oh-my-design/web/references/muji/.verification.md +0 -20
  684. package/.opencode/oh-my-design/web/references/muji/DESIGN.md +0 -605
  685. package/.opencode/oh-my-design/web/references/musinsa/.verification.md +0 -59
  686. package/.opencode/oh-my-design/web/references/musinsa/DESIGN.md +0 -593
  687. package/.opencode/oh-my-design/web/references/mustit/.verification.md +0 -37
  688. package/.opencode/oh-my-design/web/references/mustit/DESIGN.md +0 -328
  689. package/.opencode/oh-my-design/web/references/myrealtrip/DESIGN.md +0 -494
  690. package/.opencode/oh-my-design/web/references/naver/.verification.md +0 -134
  691. package/.opencode/oh-my-design/web/references/naver/DESIGN.md +0 -582
  692. package/.opencode/oh-my-design/web/references/naverwebtoon/DESIGN.md +0 -477
  693. package/.opencode/oh-my-design/web/references/netflix/.verification.md +0 -21
  694. package/.opencode/oh-my-design/web/references/netflix/DESIGN.md +0 -572
  695. package/.opencode/oh-my-design/web/references/nexon/.verification.md +0 -27
  696. package/.opencode/oh-my-design/web/references/nexon/DESIGN.md +0 -389
  697. package/.opencode/oh-my-design/web/references/nhncloud/.verification.md +0 -23
  698. package/.opencode/oh-my-design/web/references/nhncloud/DESIGN.md +0 -207
  699. package/.opencode/oh-my-design/web/references/nike/.verification.md +0 -21
  700. package/.opencode/oh-my-design/web/references/nike/DESIGN.md +0 -588
  701. package/.opencode/oh-my-design/web/references/note/DESIGN.md +0 -346
  702. package/.opencode/oh-my-design/web/references/notion/.verification.md +0 -141
  703. package/.opencode/oh-my-design/web/references/notion/DESIGN.md +0 -557
  704. package/.opencode/oh-my-design/web/references/notion/README.md +0 -24
  705. package/.opencode/oh-my-design/web/references/notion/preview-dark.html +0 -372
  706. package/.opencode/oh-my-design/web/references/notion/preview.html +0 -364
  707. package/.opencode/oh-my-design/web/references/nvidia/.verification.md +0 -127
  708. package/.opencode/oh-my-design/web/references/nvidia/DESIGN.md +0 -550
  709. package/.opencode/oh-my-design/web/references/nvidia/README.md +0 -24
  710. package/.opencode/oh-my-design/web/references/nvidia/_research.md +0 -68
  711. package/.opencode/oh-my-design/web/references/nvidia/preview-dark.html +0 -374
  712. package/.opencode/oh-my-design/web/references/nvidia/preview.html +0 -366
  713. package/.opencode/oh-my-design/web/references/ohouse/.verification.md +0 -87
  714. package/.opencode/oh-my-design/web/references/ohouse/DESIGN.md +0 -635
  715. package/.opencode/oh-my-design/web/references/oliveyoung/DESIGN.md +0 -407
  716. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/.live-inspect-proof.json +0 -158
  717. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_best_capture.json +0 -644
  718. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_detail_capture.json +0 -447
  719. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_main.html +0 -419
  720. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_main_capture.json +0 -1126
  721. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/_search_capture.json +0 -912
  722. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/fonts.json +0 -20
  723. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/structure.json +0 -91
  724. package/.opencode/oh-my-design/web/references/oliveyoung/assets/_reference/tokens.json +0 -79
  725. package/.opencode/oh-my-design/web/references/ollama/.verification.md +0 -138
  726. package/.opencode/oh-my-design/web/references/ollama/DESIGN.md +0 -393
  727. package/.opencode/oh-my-design/web/references/ollama/README.md +0 -24
  728. package/.opencode/oh-my-design/web/references/ollama/preview-dark.html +0 -678
  729. package/.opencode/oh-my-design/web/references/ollama/preview.html +0 -678
  730. package/.opencode/oh-my-design/web/references/omnichat/.verification.md +0 -74
  731. package/.opencode/oh-my-design/web/references/omnichat/DESIGN.md +0 -499
  732. package/.opencode/oh-my-design/web/references/openai/.verification.md +0 -21
  733. package/.opencode/oh-my-design/web/references/openai/DESIGN.md +0 -641
  734. package/.opencode/oh-my-design/web/references/opencode.ai/.verification.md +0 -136
  735. package/.opencode/oh-my-design/web/references/opencode.ai/DESIGN.md +0 -425
  736. package/.opencode/oh-my-design/web/references/opencode.ai/README.md +0 -24
  737. package/.opencode/oh-my-design/web/references/opencode.ai/preview-dark.html +0 -366
  738. package/.opencode/oh-my-design/web/references/opencode.ai/preview.html +0 -357
  739. package/.opencode/oh-my-design/web/references/payco/.verification.md +0 -28
  740. package/.opencode/oh-my-design/web/references/payco/DESIGN.md +0 -267
  741. package/.opencode/oh-my-design/web/references/paypay/.verification.md +0 -21
  742. package/.opencode/oh-my-design/web/references/paypay/DESIGN.md +0 -656
  743. package/.opencode/oh-my-design/web/references/pchome/.verification.md +0 -38
  744. package/.opencode/oh-my-design/web/references/pchome/DESIGN.md +0 -439
  745. package/.opencode/oh-my-design/web/references/perplexity/.verification.md +0 -21
  746. package/.opencode/oh-my-design/web/references/perplexity/DESIGN.md +0 -546
  747. package/.opencode/oh-my-design/web/references/piccollage/.verification.md +0 -34
  748. package/.opencode/oh-my-design/web/references/piccollage/DESIGN.md +0 -320
  749. package/.opencode/oh-my-design/web/references/pinkoi/.verification.md +0 -147
  750. package/.opencode/oh-my-design/web/references/pinkoi/DESIGN.md +0 -639
  751. package/.opencode/oh-my-design/web/references/pinkoi/README.md +0 -12
  752. package/.opencode/oh-my-design/web/references/pinkoi/_research/browse-1440px.png +0 -0
  753. package/.opencode/oh-my-design/web/references/pinkoi/_research.md +0 -167
  754. package/.opencode/oh-my-design/web/references/pinterest/.verification.md +0 -141
  755. package/.opencode/oh-my-design/web/references/pinterest/DESIGN.md +0 -366
  756. package/.opencode/oh-my-design/web/references/pinterest/README.md +0 -23
  757. package/.opencode/oh-my-design/web/references/pinterest/preview-dark.html +0 -233
  758. package/.opencode/oh-my-design/web/references/pinterest/preview.html +0 -232
  759. package/.opencode/oh-my-design/web/references/pixiv/.verification.md +0 -20
  760. package/.opencode/oh-my-design/web/references/pixiv/DESIGN.md +0 -613
  761. package/.opencode/oh-my-design/web/references/pixnet/.verification.md +0 -31
  762. package/.opencode/oh-my-design/web/references/pixnet/DESIGN.md +0 -430
  763. package/.opencode/oh-my-design/web/references/posthog/.verification.md +0 -159
  764. package/.opencode/oh-my-design/web/references/posthog/DESIGN.md +0 -480
  765. package/.opencode/oh-my-design/web/references/posthog/README.md +0 -23
  766. package/.opencode/oh-my-design/web/references/posthog/preview-dark.html +0 -699
  767. package/.opencode/oh-my-design/web/references/posthog/preview.html +0 -749
  768. package/.opencode/oh-my-design/web/references/postype/.verification.md +0 -61
  769. package/.opencode/oh-my-design/web/references/postype/DESIGN.md +0 -431
  770. package/.opencode/oh-my-design/web/references/publy/DESIGN.md +0 -563
  771. package/.opencode/oh-my-design/web/references/qanda/.verification.md +0 -121
  772. package/.opencode/oh-my-design/web/references/qanda/DESIGN.md +0 -516
  773. package/.opencode/oh-my-design/web/references/ragic/.verification.md +0 -37
  774. package/.opencode/oh-my-design/web/references/ragic/DESIGN.md +0 -444
  775. package/.opencode/oh-my-design/web/references/rakuten/.verification.md +0 -60
  776. package/.opencode/oh-my-design/web/references/rakuten/DESIGN.md +0 -440
  777. package/.opencode/oh-my-design/web/references/ramp/.verification.md +0 -21
  778. package/.opencode/oh-my-design/web/references/ramp/DESIGN.md +0 -634
  779. package/.opencode/oh-my-design/web/references/rayark/.verification.md +0 -22
  780. package/.opencode/oh-my-design/web/references/rayark/DESIGN.md +0 -154
  781. package/.opencode/oh-my-design/web/references/raycast/.verification.md +0 -138
  782. package/.opencode/oh-my-design/web/references/raycast/DESIGN.md +0 -467
  783. package/.opencode/oh-my-design/web/references/raycast/README.md +0 -23
  784. package/.opencode/oh-my-design/web/references/raycast/preview-dark.html +0 -606
  785. package/.opencode/oh-my-design/web/references/raycast/preview.html +0 -688
  786. package/.opencode/oh-my-design/web/references/remember/.verification.md +0 -135
  787. package/.opencode/oh-my-design/web/references/remember/DESIGN.md +0 -504
  788. package/.opencode/oh-my-design/web/references/remember/_promo.json +0 -27
  789. package/.opencode/oh-my-design/web/references/remember/_research.md +0 -90
  790. package/.opencode/oh-my-design/web/references/renault/.verification.md +0 -139
  791. package/.opencode/oh-my-design/web/references/renault/DESIGN.md +0 -439
  792. package/.opencode/oh-my-design/web/references/renault/README.md +0 -23
  793. package/.opencode/oh-my-design/web/references/renault/preview-dark.html +0 -406
  794. package/.opencode/oh-my-design/web/references/renault/preview.html +0 -606
  795. package/.opencode/oh-my-design/web/references/replicate/.verification.md +0 -154
  796. package/.opencode/oh-my-design/web/references/replicate/DESIGN.md +0 -387
  797. package/.opencode/oh-my-design/web/references/replicate/README.md +0 -24
  798. package/.opencode/oh-my-design/web/references/replicate/preview-dark.html +0 -828
  799. package/.opencode/oh-my-design/web/references/replicate/preview.html +0 -831
  800. package/.opencode/oh-my-design/web/references/resend/.verification.md +0 -143
  801. package/.opencode/oh-my-design/web/references/resend/DESIGN.md +0 -440
  802. package/.opencode/oh-my-design/web/references/resend/README.md +0 -23
  803. package/.opencode/oh-my-design/web/references/resend/preview-dark.html +0 -355
  804. package/.opencode/oh-my-design/web/references/resend/preview.html +0 -354
  805. package/.opencode/oh-my-design/web/references/retool/.verification.md +0 -21
  806. package/.opencode/oh-my-design/web/references/retool/DESIGN.md +0 -645
  807. package/.opencode/oh-my-design/web/references/revolut/.verification.md +0 -140
  808. package/.opencode/oh-my-design/web/references/revolut/DESIGN.md +0 -319
  809. package/.opencode/oh-my-design/web/references/revolut/README.md +0 -23
  810. package/.opencode/oh-my-design/web/references/revolut/preview-dark.html +0 -234
  811. package/.opencode/oh-my-design/web/references/revolut/preview.html +0 -233
  812. package/.opencode/oh-my-design/web/references/richart/.verification.md +0 -41
  813. package/.opencode/oh-my-design/web/references/richart/DESIGN.md +0 -465
  814. package/.opencode/oh-my-design/web/references/ridi/.verification.md +0 -108
  815. package/.opencode/oh-my-design/web/references/ridi/DESIGN.md +0 -573
  816. package/.opencode/oh-my-design/web/references/riiid/.verification.md +0 -33
  817. package/.opencode/oh-my-design/web/references/riiid/DESIGN.md +0 -260
  818. package/.opencode/oh-my-design/web/references/ringle/.verification.md +0 -53
  819. package/.opencode/oh-my-design/web/references/ringle/DESIGN.md +0 -444
  820. package/.opencode/oh-my-design/web/references/robinhood/.verification.md +0 -21
  821. package/.opencode/oh-my-design/web/references/robinhood/DESIGN.md +0 -604
  822. package/.opencode/oh-my-design/web/references/runwayml/.verification.md +0 -141
  823. package/.opencode/oh-my-design/web/references/runwayml/DESIGN.md +0 -431
  824. package/.opencode/oh-my-design/web/references/runwayml/README.md +0 -24
  825. package/.opencode/oh-my-design/web/references/runwayml/preview-dark.html +0 -664
  826. package/.opencode/oh-my-design/web/references/runwayml/preview.html +0 -665
  827. package/.opencode/oh-my-design/web/references/salesforce/.verification.md +0 -66
  828. package/.opencode/oh-my-design/web/references/salesforce/DESIGN.md +0 -473
  829. package/.opencode/oh-my-design/web/references/sanity/.verification.md +0 -174
  830. package/.opencode/oh-my-design/web/references/sanity/DESIGN.md +0 -499
  831. package/.opencode/oh-my-design/web/references/sanity/README.md +0 -24
  832. package/.opencode/oh-my-design/web/references/sanity/preview-dark.html +0 -990
  833. package/.opencode/oh-my-design/web/references/sanity/preview.html +0 -1135
  834. package/.opencode/oh-my-design/web/references/sansan/.verification.md +0 -21
  835. package/.opencode/oh-my-design/web/references/sansan/DESIGN.md +0 -631
  836. package/.opencode/oh-my-design/web/references/sendbird/.verification.md +0 -67
  837. package/.opencode/oh-my-design/web/references/sendbird/DESIGN.md +0 -331
  838. package/.opencode/oh-my-design/web/references/sentry/.verification.md +0 -157
  839. package/.opencode/oh-my-design/web/references/sentry/DESIGN.md +0 -397
  840. package/.opencode/oh-my-design/web/references/sentry/README.md +0 -24
  841. package/.opencode/oh-my-design/web/references/sentry/preview-dark.html +0 -626
  842. package/.opencode/oh-my-design/web/references/sentry/preview.html +0 -951
  843. package/.opencode/oh-my-design/web/references/shinhancard/.verification.md +0 -31
  844. package/.opencode/oh-my-design/web/references/shinhancard/DESIGN.md +0 -421
  845. package/.opencode/oh-my-design/web/references/shopline/.verification.md +0 -34
  846. package/.opencode/oh-my-design/web/references/shopline/DESIGN.md +0 -431
  847. package/.opencode/oh-my-design/web/references/slack/.verification.md +0 -21
  848. package/.opencode/oh-my-design/web/references/slack/DESIGN.md +0 -635
  849. package/.opencode/oh-my-design/web/references/smarthr/DESIGN.md +0 -452
  850. package/.opencode/oh-my-design/web/references/smartnews/DESIGN.md +0 -360
  851. package/.opencode/oh-my-design/web/references/socar/DESIGN.md +0 -438
  852. package/.opencode/oh-my-design/web/references/socar/_promo.json +0 -28
  853. package/.opencode/oh-my-design/web/references/socar/_research.md +0 -55
  854. package/.opencode/oh-my-design/web/references/soomgo/.verification.md +0 -27
  855. package/.opencode/oh-my-design/web/references/soomgo/DESIGN.md +0 -326
  856. package/.opencode/oh-my-design/web/references/spacex/.verification.md +0 -132
  857. package/.opencode/oh-my-design/web/references/spacex/DESIGN.md +0 -415
  858. package/.opencode/oh-my-design/web/references/spacex/README.md +0 -23
  859. package/.opencode/oh-my-design/web/references/spacex/_research.md +0 -69
  860. package/.opencode/oh-my-design/web/references/spacex/preview-dark.html +0 -221
  861. package/.opencode/oh-my-design/web/references/spacex/preview.html +0 -220
  862. package/.opencode/oh-my-design/web/references/spoon/DESIGN.md +0 -492
  863. package/.opencode/oh-my-design/web/references/spotify/.verification.md +0 -128
  864. package/.opencode/oh-my-design/web/references/spotify/DESIGN.md +0 -489
  865. package/.opencode/oh-my-design/web/references/spotify/README.md +0 -23
  866. package/.opencode/oh-my-design/web/references/spotify/preview-dark.html +0 -231
  867. package/.opencode/oh-my-design/web/references/spotify/preview.html +0 -230
  868. package/.opencode/oh-my-design/web/references/starbucks/.verification.md +0 -21
  869. package/.opencode/oh-my-design/web/references/starbucks/DESIGN.md +0 -597
  870. package/.opencode/oh-my-design/web/references/stores/.verification.md +0 -61
  871. package/.opencode/oh-my-design/web/references/stores/DESIGN.md +0 -447
  872. package/.opencode/oh-my-design/web/references/stripe/.verification.md +0 -140
  873. package/.opencode/oh-my-design/web/references/stripe/DESIGN.md +0 -571
  874. package/.opencode/oh-my-design/web/references/stripe/README.md +0 -24
  875. package/.opencode/oh-my-design/web/references/stripe/preview-dark.html +0 -428
  876. package/.opencode/oh-my-design/web/references/stripe/preview.html +0 -419
  877. package/.opencode/oh-my-design/web/references/studio/.verification.md +0 -21
  878. package/.opencode/oh-my-design/web/references/studio/DESIGN.md +0 -602
  879. package/.opencode/oh-my-design/web/references/supabase/.verification.md +0 -145
  880. package/.opencode/oh-my-design/web/references/supabase/DESIGN.md +0 -389
  881. package/.opencode/oh-my-design/web/references/supabase/README.md +0 -24
  882. package/.opencode/oh-my-design/web/references/supabase/preview-dark.html +0 -977
  883. package/.opencode/oh-my-design/web/references/supabase/preview.html +0 -955
  884. package/.opencode/oh-my-design/web/references/superhuman/.verification.md +0 -184
  885. package/.opencode/oh-my-design/web/references/superhuman/DESIGN.md +0 -453
  886. package/.opencode/oh-my-design/web/references/superhuman/README.md +0 -23
  887. package/.opencode/oh-my-design/web/references/superhuman/preview-dark.html +0 -973
  888. package/.opencode/oh-my-design/web/references/superhuman/preview.html +0 -951
  889. package/.opencode/oh-my-design/web/references/surveycake/.verification.md +0 -31
  890. package/.opencode/oh-my-design/web/references/surveycake/DESIGN.md +0 -442
  891. package/.opencode/oh-my-design/web/references/tada/DESIGN.md +0 -579
  892. package/.opencode/oh-my-design/web/references/teamblind/.verification.md +0 -76
  893. package/.opencode/oh-my-design/web/references/teamblind/DESIGN.md +0 -497
  894. package/.opencode/oh-my-design/web/references/tesla/.verification.md +0 -149
  895. package/.opencode/oh-my-design/web/references/tesla/DESIGN.md +0 -501
  896. package/.opencode/oh-my-design/web/references/tesla/README.md +0 -23
  897. package/.opencode/oh-my-design/web/references/tesla/_research.md +0 -70
  898. package/.opencode/oh-my-design/web/references/tesla/preview-dark.html +0 -947
  899. package/.opencode/oh-my-design/web/references/tesla/preview.html +0 -925
  900. package/.opencode/oh-my-design/web/references/theverge/.verification.md +0 -21
  901. package/.opencode/oh-my-design/web/references/theverge/DESIGN.md +0 -500
  902. package/.opencode/oh-my-design/web/references/timee/.verification.md +0 -67
  903. package/.opencode/oh-my-design/web/references/timee/DESIGN.md +0 -444
  904. package/.opencode/oh-my-design/web/references/together.ai/.verification.md +0 -145
  905. package/.opencode/oh-my-design/web/references/together.ai/DESIGN.md +0 -389
  906. package/.opencode/oh-my-design/web/references/together.ai/README.md +0 -24
  907. package/.opencode/oh-my-design/web/references/together.ai/preview-dark.html +0 -892
  908. package/.opencode/oh-my-design/web/references/together.ai/preview.html +0 -897
  909. package/.opencode/oh-my-design/web/references/toss/.verification.md +0 -120
  910. package/.opencode/oh-my-design/web/references/toss/DESIGN.md +0 -698
  911. package/.opencode/oh-my-design/web/references/toss/README.md +0 -19
  912. package/.opencode/oh-my-design/web/references/toss-securities/DESIGN.md +0 -247
  913. package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/.live-inspect-proof.json +0 -126
  914. package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/.live-inspect-raw.json +0 -619
  915. package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/.live-inspect-stock.json +0 -525
  916. package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/fonts.json +0 -24
  917. package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/structure.json +0 -35
  918. package/.opencode/oh-my-design/web/references/toss-securities/assets/_reference/tokens.json +0 -87
  919. package/.opencode/oh-my-design/web/references/tossbank/DESIGN.md +0 -576
  920. package/.opencode/oh-my-design/web/references/trenbe/.verification.md +0 -32
  921. package/.opencode/oh-my-design/web/references/trenbe/DESIGN.md +0 -293
  922. package/.opencode/oh-my-design/web/references/triple/DESIGN.md +0 -481
  923. package/.opencode/oh-my-design/web/references/tumblbug/DESIGN.md +0 -578
  924. package/.opencode/oh-my-design/web/references/tving/DESIGN.md +0 -317
  925. package/.opencode/oh-my-design/web/references/tving/assets/_reference/.live-inspect-proof.json +0 -131
  926. package/.opencode/oh-my-design/web/references/tving/assets/_reference/LICENSE-NOTE.md +0 -37
  927. package/.opencode/oh-my-design/web/references/tving/assets/_reference/attribution.md +0 -52
  928. package/.opencode/oh-my-design/web/references/tving/assets/_reference/fonts.json +0 -31
  929. package/.opencode/oh-my-design/web/references/tving/assets/_reference/screenshots/hero-desktop.png +0 -0
  930. package/.opencode/oh-my-design/web/references/tving/assets/_reference/structure.json +0 -55
  931. package/.opencode/oh-my-design/web/references/tving/assets/_reference/tokens.json +0 -115
  932. package/.opencode/oh-my-design/web/references/uber/.verification.md +0 -128
  933. package/.opencode/oh-my-design/web/references/uber/DESIGN.md +0 -423
  934. package/.opencode/oh-my-design/web/references/uber/README.md +0 -24
  935. package/.opencode/oh-my-design/web/references/uber/preview-dark.html +0 -1120
  936. package/.opencode/oh-my-design/web/references/uber/preview.html +0 -1119
  937. package/.opencode/oh-my-design/web/references/ubie/.verification.md +0 -21
  938. package/.opencode/oh-my-design/web/references/ubie/DESIGN.md +0 -615
  939. package/.opencode/oh-my-design/web/references/uniqlo/.verification.md +0 -21
  940. package/.opencode/oh-my-design/web/references/uniqlo/DESIGN.md +0 -575
  941. package/.opencode/oh-my-design/web/references/upbit/DESIGN.md +0 -337
  942. package/.opencode/oh-my-design/web/references/upbit/_research.md +0 -83
  943. package/.opencode/oh-my-design/web/references/upbit/assets/_reference/.live-inspect-proof.json +0 -263
  944. package/.opencode/oh-my-design/web/references/upbit/assets/_reference/fonts.json +0 -18
  945. package/.opencode/oh-my-design/web/references/upbit/assets/_reference/raw-capture-exchange.json +0 -1901
  946. package/.opencode/oh-my-design/web/references/upbit/assets/_reference/raw-capture.json +0 -1121
  947. package/.opencode/oh-my-design/web/references/upbit/assets/_reference/structure.json +0 -52
  948. package/.opencode/oh-my-design/web/references/upbit/assets/_reference/tokens.json +0 -169
  949. package/.opencode/oh-my-design/web/references/upstage/DESIGN.md +0 -270
  950. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/.live-inspect-proof.json +0 -157
  951. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_brand-resource-center.json +0 -44
  952. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_curated-samples.json +0 -310
  953. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_raw-capture.json +0 -1560
  954. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_root-vars.json +0 -76
  955. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/_structure-raw.json +0 -298
  956. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/fonts.json +0 -35
  957. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/structure.json +0 -72
  958. package/.opencode/oh-my-design/web/references/upstage/assets/_reference/tokens.json +0 -183
  959. package/.opencode/oh-my-design/web/references/velog/.verification.md +0 -26
  960. package/.opencode/oh-my-design/web/references/velog/DESIGN.md +0 -196
  961. package/.opencode/oh-my-design/web/references/vercel/.verification.md +0 -134
  962. package/.opencode/oh-my-design/web/references/vercel/DESIGN.md +0 -523
  963. package/.opencode/oh-my-design/web/references/vercel/README.md +0 -24
  964. package/.opencode/oh-my-design/web/references/vercel/preview-dark.html +0 -368
  965. package/.opencode/oh-my-design/web/references/vercel/preview.html +0 -367
  966. package/.opencode/oh-my-design/web/references/voicetube/.verification.md +0 -34
  967. package/.opencode/oh-my-design/web/references/voicetube/DESIGN.md +0 -266
  968. package/.opencode/oh-my-design/web/references/voltagent/.verification.md +0 -159
  969. package/.opencode/oh-my-design/web/references/voltagent/DESIGN.md +0 -454
  970. package/.opencode/oh-my-design/web/references/voltagent/README.md +0 -24
  971. package/.opencode/oh-my-design/web/references/voltagent/preview-dark.html +0 -487
  972. package/.opencode/oh-my-design/web/references/voltagent/preview.html +0 -766
  973. package/.opencode/oh-my-design/web/references/wadiz/DESIGN.md +0 -415
  974. package/.opencode/oh-my-design/web/references/wadiz/assets/_reference/.live-inspect-proof.json +0 -137
  975. package/.opencode/oh-my-design/web/references/wadiz/assets/_reference/fonts.json +0 -17
  976. package/.opencode/oh-my-design/web/references/wadiz/assets/_reference/structure.json +0 -35
  977. package/.opencode/oh-my-design/web/references/wadiz/assets/_reference/tokens.json +0 -80
  978. package/.opencode/oh-my-design/web/references/wanted/DESIGN.md +0 -575
  979. package/.opencode/oh-my-design/web/references/wanted/_promo.json +0 -31
  980. package/.opencode/oh-my-design/web/references/wanted/_research.md +0 -119
  981. package/.opencode/oh-my-design/web/references/wantedly/.verification.md +0 -53
  982. package/.opencode/oh-my-design/web/references/wantedly/DESIGN.md +0 -437
  983. package/.opencode/oh-my-design/web/references/warp/.verification.md +0 -156
  984. package/.opencode/oh-my-design/web/references/warp/DESIGN.md +0 -431
  985. package/.opencode/oh-my-design/web/references/warp/README.md +0 -23
  986. package/.opencode/oh-my-design/web/references/warp/preview-dark.html +0 -500
  987. package/.opencode/oh-my-design/web/references/warp/preview.html +0 -533
  988. package/.opencode/oh-my-design/web/references/watcha/DESIGN.md +0 -465
  989. package/.opencode/oh-my-design/web/references/wavve/DESIGN.md +0 -480
  990. package/.opencode/oh-my-design/web/references/wconcept/DESIGN.md +0 -556
  991. package/.opencode/oh-my-design/web/references/webflow/.verification.md +0 -151
  992. package/.opencode/oh-my-design/web/references/webflow/DESIGN.md +0 -330
  993. package/.opencode/oh-my-design/web/references/webflow/README.md +0 -23
  994. package/.opencode/oh-my-design/web/references/webflow/preview-dark.html +0 -147
  995. package/.opencode/oh-my-design/web/references/webflow/preview.html +0 -146
  996. package/.opencode/oh-my-design/web/references/wired/.verification.md +0 -21
  997. package/.opencode/oh-my-design/web/references/wired/DESIGN.md +0 -572
  998. package/.opencode/oh-my-design/web/references/wise/.verification.md +0 -141
  999. package/.opencode/oh-my-design/web/references/wise/DESIGN.md +0 -317
  1000. package/.opencode/oh-my-design/web/references/wise/README.md +0 -23
  1001. package/.opencode/oh-my-design/web/references/wise/preview-dark.html +0 -230
  1002. package/.opencode/oh-my-design/web/references/wise/preview.html +0 -229
  1003. package/.opencode/oh-my-design/web/references/x.ai/.verification.md +0 -140
  1004. package/.opencode/oh-my-design/web/references/x.ai/DESIGN.md +0 -397
  1005. package/.opencode/oh-my-design/web/references/x.ai/README.md +0 -24
  1006. package/.opencode/oh-my-design/web/references/x.ai/preview-dark.html +0 -356
  1007. package/.opencode/oh-my-design/web/references/x.ai/preview.html +0 -407
  1008. package/.opencode/oh-my-design/web/references/xiaohongshu/DESIGN.md +0 -462
  1009. package/.opencode/oh-my-design/web/references/yanolja/.verification.md +0 -83
  1010. package/.opencode/oh-my-design/web/references/yanolja/DESIGN.md +0 -508
  1011. package/.opencode/oh-my-design/web/references/yeogiotte/.verification.md +0 -210
  1012. package/.opencode/oh-my-design/web/references/yeogiotte/DESIGN.md +0 -500
  1013. package/.opencode/oh-my-design/web/references/yogiyo/DESIGN.md +0 -515
  1014. package/.opencode/oh-my-design/web/references/yourator/.verification.md +0 -39
  1015. package/.opencode/oh-my-design/web/references/yourator/DESIGN.md +0 -453
  1016. package/.opencode/oh-my-design/web/references/zapier/.verification.md +0 -156
  1017. package/.opencode/oh-my-design/web/references/zapier/DESIGN.md +0 -474
  1018. package/.opencode/oh-my-design/web/references/zapier/README.md +0 -24
  1019. package/.opencode/oh-my-design/web/references/zapier/preview-dark.html +0 -380
  1020. package/.opencode/oh-my-design/web/references/zapier/preview.html +0 -372
  1021. package/.opencode/oh-my-design/web/references/zigbang/DESIGN.md +0 -500
  1022. package/.opencode/oh-my-design/web/references/zigbang/_promo.json +0 -16
  1023. package/.opencode/oh-my-design/web/references/zigbang/_research.md +0 -101
  1024. package/.opencode/oh-my-design/web/references/zigzag/DESIGN.md +0 -695
  1025. package/.opencode/oh-my-design/web/references/zigzag/_promo.json +0 -23
  1026. package/.opencode/oh-my-design/web/references/zigzag/_research.md +0 -64
  1027. package/.opencode/oh-my-design/web/references/zozotown/.verification.md +0 -20
  1028. package/.opencode/oh-my-design/web/references/zozotown/DESIGN.md +0 -578
  1029. package/.opencode/oh-my-design/web/scripts/build-registry.mjs +0 -257
  1030. package/.opencode/oh-my-design/web/scripts/extract-tokens.mjs +0 -117
  1031. package/.opencode/oh-my-design/web/scripts/fetch-og-images.mjs +0 -112
  1032. package/.opencode/oh-my-design/web/scripts/gen-favicon.mjs +0 -58
  1033. package/.opencode/oh-my-design/web/scripts/gen-og.mjs +0 -67
  1034. package/.opencode/oh-my-design/web/scripts/migrate-frontmatters.mjs +0 -637
  1035. package/.opencode/oh-my-design/web/scripts/sync-catalog.mjs +0 -140
  1036. package/.opencode/oh-my-design/web/scripts/token-sheet.mjs +0 -72
  1037. package/.opencode/oh-my-design/web/scripts/token-status.mjs +0 -94
  1038. package/.opencode/oh-my-design/web/scripts/verify-reference.mjs +0 -185
  1039. package/.opencode/oh-my-design/web/src/app/alternatives/[slug]/page.tsx +0 -399
  1040. package/.opencode/oh-my-design/web/src/app/api/font-playground/match/route.ts +0 -205
  1041. package/.opencode/oh-my-design/web/src/app/api/leaderboard/route.ts +0 -32
  1042. package/.opencode/oh-my-design/web/src/app/api/og/playground/route.tsx +0 -179
  1043. package/.opencode/oh-my-design/web/src/app/api/references/[id]/route.ts +0 -162
  1044. package/.opencode/oh-my-design/web/src/app/api/references/route.ts +0 -142
  1045. package/.opencode/oh-my-design/web/src/app/api/track/route.ts +0 -30
  1046. package/.opencode/oh-my-design/web/src/app/apple-icon.png +0 -0
  1047. package/.opencode/oh-my-design/web/src/app/builder/layout.tsx +0 -43
  1048. package/.opencode/oh-my-design/web/src/app/builder/page.tsx +0 -434
  1049. package/.opencode/oh-my-design/web/src/app/changelog/[version]/page.tsx +0 -160
  1050. package/.opencode/oh-my-design/web/src/app/changelog/page.tsx +0 -142
  1051. package/.opencode/oh-my-design/web/src/app/collections/[slug]/collection-grid.tsx +0 -27
  1052. package/.opencode/oh-my-design/web/src/app/collections/[slug]/page.tsx +0 -171
  1053. package/.opencode/oh-my-design/web/src/app/curation/layout.tsx +0 -43
  1054. package/.opencode/oh-my-design/web/src/app/curation/page.tsx +0 -78
  1055. package/.opencode/oh-my-design/web/src/app/design-systems/[id]/detail-view.tsx +0 -307
  1056. package/.opencode/oh-my-design/web/src/app/design-systems/[id]/page.tsx +0 -184
  1057. package/.opencode/oh-my-design/web/src/app/design-systems/layout.tsx +0 -24
  1058. package/.opencode/oh-my-design/web/src/app/design-systems/page.tsx +0 -95
  1059. package/.opencode/oh-my-design/web/src/app/docs/layout.tsx +0 -22
  1060. package/.opencode/oh-my-design/web/src/app/docs/page.tsx +0 -1453
  1061. package/.opencode/oh-my-design/web/src/app/faq/page.tsx +0 -324
  1062. package/.opencode/oh-my-design/web/src/app/font-playground/font-playground-view.tsx +0 -424
  1063. package/.opencode/oh-my-design/web/src/app/font-playground/page.tsx +0 -43
  1064. package/.opencode/oh-my-design/web/src/app/globals.css +0 -328
  1065. package/.opencode/oh-my-design/web/src/app/icon.png +0 -0
  1066. package/.opencode/oh-my-design/web/src/app/layout.tsx +0 -229
  1067. package/.opencode/oh-my-design/web/src/app/page.tsx +0 -50
  1068. package/.opencode/oh-my-design/web/src/app/playground/page.tsx +0 -81
  1069. package/.opencode/oh-my-design/web/src/app/playground/playground-view.tsx +0 -436
  1070. package/.opencode/oh-my-design/web/src/app/qa-references/page.tsx +0 -233
  1071. package/.opencode/oh-my-design/web/src/app/r/[id]/route.ts +0 -57
  1072. package/.opencode/oh-my-design/web/src/app/reference/[id]/page.tsx +0 -152
  1073. package/.opencode/oh-my-design/web/src/app/result/[typeCode]/layout.tsx +0 -70
  1074. package/.opencode/oh-my-design/web/src/app/result/[typeCode]/page.tsx +0 -280
  1075. package/.opencode/oh-my-design/web/src/app/robots.ts +0 -44
  1076. package/.opencode/oh-my-design/web/src/app/sitemap.ts +0 -156
  1077. package/.opencode/oh-my-design/web/src/app/what-is-design-md/page.tsx +0 -308
  1078. package/.opencode/oh-my-design/web/src/components/ab-picker.tsx +0 -74
  1079. package/.opencode/oh-my-design/web/src/components/analytics-init.tsx +0 -21
  1080. package/.opencode/oh-my-design/web/src/components/brand-logo.tsx +0 -101
  1081. package/.opencode/oh-my-design/web/src/components/browse-modal.tsx +0 -149
  1082. package/.opencode/oh-my-design/web/src/components/component-modal.tsx +0 -108
  1083. package/.opencode/oh-my-design/web/src/components/content-preview-modal.tsx +0 -213
  1084. package/.opencode/oh-my-design/web/src/components/customizer.tsx +0 -641
  1085. package/.opencode/oh-my-design/web/src/components/design-wizard.tsx +0 -691
  1086. package/.opencode/oh-my-design/web/src/components/ds-card.tsx +0 -162
  1087. package/.opencode/oh-my-design/web/src/components/export-panel.tsx +0 -162
  1088. package/.opencode/oh-my-design/web/src/components/font-card.tsx +0 -121
  1089. package/.opencode/oh-my-design/web/src/components/font-playground/color-palette.tsx +0 -86
  1090. package/.opencode/oh-my-design/web/src/components/font-playground/detail-modal.tsx +0 -789
  1091. package/.opencode/oh-my-design/web/src/components/font-playground/filter-bar.tsx +0 -192
  1092. package/.opencode/oh-my-design/web/src/components/font-playground/font-tile.tsx +0 -92
  1093. package/.opencode/oh-my-design/web/src/components/font-playground/gallery.tsx +0 -42
  1094. package/.opencode/oh-my-design/web/src/components/font-playground/hero-entry.tsx +0 -150
  1095. package/.opencode/oh-my-design/web/src/components/font-playground/labels.ts +0 -18
  1096. package/.opencode/oh-my-design/web/src/components/font-playground/match-results.tsx +0 -486
  1097. package/.opencode/oh-my-design/web/src/components/font-playground/my-fonts.tsx +0 -315
  1098. package/.opencode/oh-my-design/web/src/components/font-playground/preview-templates.tsx +0 -395
  1099. package/.opencode/oh-my-design/web/src/components/font-playground/sample-input.tsx +0 -30
  1100. package/.opencode/oh-my-design/web/src/components/font-playground/script-toggle.tsx +0 -73
  1101. package/.opencode/oh-my-design/web/src/components/font-playground/usage-guide.tsx +0 -172
  1102. package/.opencode/oh-my-design/web/src/components/install-cta.tsx +0 -133
  1103. package/.opencode/oh-my-design/web/src/components/landing-v2/hero.tsx +0 -459
  1104. package/.opencode/oh-my-design/web/src/components/landing-v2/live-proof.tsx +0 -464
  1105. package/.opencode/oh-my-design/web/src/components/landing-v2/nav.tsx +0 -126
  1106. package/.opencode/oh-my-design/web/src/components/landing-v2/sections.tsx +0 -1166
  1107. package/.opencode/oh-my-design/web/src/components/landing-v2/the-wall.tsx +0 -332
  1108. package/.opencode/oh-my-design/web/src/components/landing-v2/tokens.ts +0 -33
  1109. package/.opencode/oh-my-design/web/src/components/markdown.tsx +0 -168
  1110. package/.opencode/oh-my-design/web/src/components/playground/actions-header.tsx +0 -28
  1111. package/.opencode/oh-my-design/web/src/components/playground/contrast-badge.tsx +0 -112
  1112. package/.opencode/oh-my-design/web/src/components/playground/controls/category-section.tsx +0 -50
  1113. package/.opencode/oh-my-design/web/src/components/playground/controls/color-picker.tsx +0 -116
  1114. package/.opencode/oh-my-design/web/src/components/playground/controls/density-picker.tsx +0 -56
  1115. package/.opencode/oh-my-design/web/src/components/playground/controls/mood-picker.tsx +0 -53
  1116. package/.opencode/oh-my-design/web/src/components/playground/controls/motion-picker.tsx +0 -62
  1117. package/.opencode/oh-my-design/web/src/components/playground/controls/name-description.tsx +0 -55
  1118. package/.opencode/oh-my-design/web/src/components/playground/controls/palette-grid.tsx +0 -111
  1119. package/.opencode/oh-my-design/web/src/components/playground/controls/personas-picker.tsx +0 -85
  1120. package/.opencode/oh-my-design/web/src/components/playground/controls/radius-picker.tsx +0 -48
  1121. package/.opencode/oh-my-design/web/src/components/playground/controls/voice-picker.tsx +0 -120
  1122. package/.opencode/oh-my-design/web/src/components/playground/controls/weight-picker.tsx +0 -48
  1123. package/.opencode/oh-my-design/web/src/components/playground/export-box.tsx +0 -120
  1124. package/.opencode/oh-my-design/web/src/components/playground/header.tsx +0 -71
  1125. package/.opencode/oh-my-design/web/src/components/playground/layout.tsx +0 -50
  1126. package/.opencode/oh-my-design/web/src/components/playground/mobile-drawer.tsx +0 -78
  1127. package/.opencode/oh-my-design/web/src/components/playground/mood-override-badge.tsx +0 -40
  1128. package/.opencode/oh-my-design/web/src/components/playground/preview-pane.tsx +0 -82
  1129. package/.opencode/oh-my-design/web/src/components/playground/primitives-strip.tsx +0 -153
  1130. package/.opencode/oh-my-design/web/src/components/playground/reference-picker-modal.tsx +0 -146
  1131. package/.opencode/oh-my-design/web/src/components/playground/share-button.tsx +0 -42
  1132. package/.opencode/oh-my-design/web/src/components/playground/start-from.tsx +0 -90
  1133. package/.opencode/oh-my-design/web/src/components/preview-export-view.tsx +0 -205
  1134. package/.opencode/oh-my-design/web/src/components/preview.tsx +0 -869
  1135. package/.opencode/oh-my-design/web/src/components/reference-preview.tsx +0 -1187
  1136. package/.opencode/oh-my-design/web/src/components/reference-selector.tsx +0 -671
  1137. package/.opencode/oh-my-design/web/src/components/scroll-to-top.tsx +0 -41
  1138. package/.opencode/oh-my-design/web/src/components/status-badge.tsx +0 -64
  1139. package/.opencode/oh-my-design/web/src/components/survey/company-mini-ui.tsx +0 -669
  1140. package/.opencode/oh-my-design/web/src/components/survey/install-cta.tsx +0 -80
  1141. package/.opencode/oh-my-design/web/src/components/survey/mood-step.tsx +0 -260
  1142. package/.opencode/oh-my-design/web/src/components/survey/quiz-wizard.tsx +0 -528
  1143. package/.opencode/oh-my-design/web/src/components/survey/result-card.tsx +0 -242
  1144. package/.opencode/oh-my-design/web/src/components/survey/share-buttons.tsx +0 -320
  1145. package/.opencode/oh-my-design/web/src/components/survey/survey-wizard.tsx +0 -661
  1146. package/.opencode/oh-my-design/web/src/components/survey/typography-step.tsx +0 -192
  1147. package/.opencode/oh-my-design/web/src/components/theme-provider.tsx +0 -12
  1148. package/.opencode/oh-my-design/web/src/components/ui/badge.tsx +0 -52
  1149. package/.opencode/oh-my-design/web/src/components/ui/button.tsx +0 -58
  1150. package/.opencode/oh-my-design/web/src/components/ui/card.tsx +0 -103
  1151. package/.opencode/oh-my-design/web/src/components/ui/dialog.tsx +0 -160
  1152. package/.opencode/oh-my-design/web/src/components/ui/input.tsx +0 -20
  1153. package/.opencode/oh-my-design/web/src/components/ui/label.tsx +0 -20
  1154. package/.opencode/oh-my-design/web/src/components/ui/radio-group.tsx +0 -38
  1155. package/.opencode/oh-my-design/web/src/components/ui/scroll-area.tsx +0 -55
  1156. package/.opencode/oh-my-design/web/src/components/ui/select.tsx +0 -201
  1157. package/.opencode/oh-my-design/web/src/components/ui/separator.tsx +0 -25
  1158. package/.opencode/oh-my-design/web/src/components/ui/sheet.tsx +0 -138
  1159. package/.opencode/oh-my-design/web/src/components/ui/slider.tsx +0 -52
  1160. package/.opencode/oh-my-design/web/src/components/ui/switch.tsx +0 -32
  1161. package/.opencode/oh-my-design/web/src/components/ui/tabs.tsx +0 -82
  1162. package/.opencode/oh-my-design/web/src/components/ui/tooltip.tsx +0 -66
  1163. package/.opencode/oh-my-design/web/src/data/faq.ts +0 -81
  1164. package/.opencode/oh-my-design/web/src/data/registry.generated.ts +0 -304
  1165. package/.opencode/oh-my-design/web/src/data/version.generated.ts +0 -2
  1166. package/.opencode/oh-my-design/web/src/lib/changelog.ts +0 -96
  1167. package/.opencode/oh-my-design/web/src/lib/collections.ts +0 -252
  1168. package/.opencode/oh-my-design/web/src/lib/contrast.ts +0 -40
  1169. package/.opencode/oh-my-design/web/src/lib/core/builder-prompt.test.ts +0 -100
  1170. package/.opencode/oh-my-design/web/src/lib/core/builder-prompt.ts +0 -102
  1171. package/.opencode/oh-my-design/web/src/lib/core/color.ts +0 -122
  1172. package/.opencode/oh-my-design/web/src/lib/core/config-hash.test.ts +0 -157
  1173. package/.opencode/oh-my-design/web/src/lib/core/config-hash.ts +0 -133
  1174. package/.opencode/oh-my-design/web/src/lib/core/generate-css.test.ts +0 -813
  1175. package/.opencode/oh-my-design/web/src/lib/core/generate-css.ts +0 -586
  1176. package/.opencode/oh-my-design/web/src/lib/core/survey-hash.test.ts +0 -51
  1177. package/.opencode/oh-my-design/web/src/lib/core/survey-hash.ts +0 -56
  1178. package/.opencode/oh-my-design/web/src/lib/core/types.ts +0 -37
  1179. package/.opencode/oh-my-design/web/src/lib/design-systems.ts +0 -102
  1180. package/.opencode/oh-my-design/web/src/lib/extract-components.test.ts +0 -116
  1181. package/.opencode/oh-my-design/web/src/lib/extract-tokens.test.ts +0 -202
  1182. package/.opencode/oh-my-design/web/src/lib/extract-tokens.ts +0 -1335
  1183. package/.opencode/oh-my-design/web/src/lib/font-registry.ts +0 -376
  1184. package/.opencode/oh-my-design/web/src/lib/fonts/analytics.test.ts +0 -194
  1185. package/.opencode/oh-my-design/web/src/lib/fonts/analytics.ts +0 -234
  1186. package/.opencode/oh-my-design/web/src/lib/fonts/catalog.ts +0 -1509
  1187. package/.opencode/oh-my-design/web/src/lib/fonts/designmd-export.ts +0 -104
  1188. package/.opencode/oh-my-design/web/src/lib/fonts/loaders.test.ts +0 -169
  1189. package/.opencode/oh-my-design/web/src/lib/fonts/loaders.ts +0 -90
  1190. package/.opencode/oh-my-design/web/src/lib/fonts/match-intent.test.ts +0 -93
  1191. package/.opencode/oh-my-design/web/src/lib/fonts/match-intent.ts +0 -288
  1192. package/.opencode/oh-my-design/web/src/lib/fonts/preview-contexts.ts +0 -124
  1193. package/.opencode/oh-my-design/web/src/lib/fonts/rate-limit.ts +0 -43
  1194. package/.opencode/oh-my-design/web/src/lib/fonts/saved-store.ts +0 -113
  1195. package/.opencode/oh-my-design/web/src/lib/fonts/share-link.test.ts +0 -101
  1196. package/.opencode/oh-my-design/web/src/lib/fonts/share-link.ts +0 -52
  1197. package/.opencode/oh-my-design/web/src/lib/fonts/similarity.ts +0 -106
  1198. package/.opencode/oh-my-design/web/src/lib/fonts/tweaks.test.ts +0 -213
  1199. package/.opencode/oh-my-design/web/src/lib/fonts/tweaks.ts +0 -186
  1200. package/.opencode/oh-my-design/web/src/lib/fonts/types.ts +0 -96
  1201. package/.opencode/oh-my-design/web/src/lib/gtag.ts +0 -64
  1202. package/.opencode/oh-my-design/web/src/lib/hot-refs.ts +0 -41
  1203. package/.opencode/oh-my-design/web/src/lib/kv.ts +0 -30
  1204. package/.opencode/oh-my-design/web/src/lib/logos.ts +0 -39
  1205. package/.opencode/oh-my-design/web/src/lib/new-refs.ts +0 -30
  1206. package/.opencode/oh-my-design/web/src/lib/playground/codec.ts +0 -34
  1207. package/.opencode/oh-my-design/web/src/lib/playground/defaults.ts +0 -56
  1208. package/.opencode/oh-my-design/web/src/lib/playground/generate.ts +0 -384
  1209. package/.opencode/oh-my-design/web/src/lib/playground/palettes.ts +0 -259
  1210. package/.opencode/oh-my-design/web/src/lib/playground/rules/density.ts +0 -59
  1211. package/.opencode/oh-my-design/web/src/lib/playground/rules/mood.ts +0 -82
  1212. package/.opencode/oh-my-design/web/src/lib/playground/rules/motion.ts +0 -71
  1213. package/.opencode/oh-my-design/web/src/lib/playground/rules/personality.ts +0 -93
  1214. package/.opencode/oh-my-design/web/src/lib/playground/rules/philosophy.ts +0 -270
  1215. package/.opencode/oh-my-design/web/src/lib/playground/rules/radius.ts +0 -54
  1216. package/.opencode/oh-my-design/web/src/lib/playground/rules/weight.ts +0 -41
  1217. package/.opencode/oh-my-design/web/src/lib/playground/samples.ts +0 -280
  1218. package/.opencode/oh-my-design/web/src/lib/playground/state.ts +0 -194
  1219. package/.opencode/oh-my-design/web/src/lib/search-aliases.ts +0 -213
  1220. package/.opencode/oh-my-design/web/src/lib/survey/profiles.generated.ts +0 -1143
  1221. package/.opencode/oh-my-design/web/src/lib/survey/quiz-data.test.ts +0 -102
  1222. package/.opencode/oh-my-design/web/src/lib/survey/quiz-data.ts +0 -571
  1223. package/.opencode/oh-my-design/web/src/lib/survey/scoring.test.ts +0 -111
  1224. package/.opencode/oh-my-design/web/src/lib/survey/scoring.ts +0 -146
  1225. package/.opencode/oh-my-design/web/src/lib/survey/types.test.ts +0 -153
  1226. package/.opencode/oh-my-design/web/src/lib/survey/types.ts +0 -604
  1227. package/.opencode/oh-my-design/web/src/lib/utils.ts +0 -6
  1228. package/.opencode/oh-my-design/web/src/styles/shadcn.css +0 -95
  1229. package/.opencode/oh-my-design/web/src/styles/tw-animate.css +0 -1
  1230. package/.opencode/oh-my-design/web/src/types/gtag.d.ts +0 -3
  1231. package/.opencode/oh-my-design/web/tsconfig.json +0 -34
  1232. package/.opencode/oh-my-design/web/vitest.config.ts +0 -14
  1233. package/.utils/docs_opencode/acp.md +0 -165
  1234. package/.utils/docs_opencode/acp.pdf +0 -0
  1235. package/.utils/docs_opencode/agents.md +0 -803
  1236. package/.utils/docs_opencode/agents.pdf +0 -0
  1237. package/.utils/docs_opencode/commands.md +0 -354
  1238. package/.utils/docs_opencode/commands.pdf +0 -0
  1239. package/.utils/docs_opencode/custom-tools.md +0 -209
  1240. package/.utils/docs_opencode/custom-tools.pdf +0 -0
  1241. package/.utils/docs_opencode/ecosystem.md +0 -81
  1242. package/.utils/docs_opencode/ecosystem.pdf +0 -0
  1243. package/.utils/docs_opencode/formatters.md +0 -142
  1244. package/.utils/docs_opencode/formatters.pdf +0 -0
  1245. package/.utils/docs_opencode/keybinds.md +0 -205
  1246. package/.utils/docs_opencode/keybinds.pdf +0 -0
  1247. package/.utils/docs_opencode/lsp.md +0 -202
  1248. package/.utils/docs_opencode/lsp.pdf +0 -0
  1249. package/.utils/docs_opencode/mcp-servers.md +0 -565
  1250. package/.utils/docs_opencode/mcp-servers.pdf +0 -0
  1251. package/.utils/docs_opencode/models.md +0 -234
  1252. package/.utils/docs_opencode/models.pdf +0 -0
  1253. package/.utils/docs_opencode/permissions.md +0 -248
  1254. package/.utils/docs_opencode/permissions.pdf +0 -0
  1255. package/.utils/docs_opencode/plugins.md +0 -409
  1256. package/.utils/docs_opencode/plugins.pdf +0 -0
  1257. package/.utils/docs_opencode/rules.md +0 -189
  1258. package/.utils/docs_opencode/rules.pdf +0 -0
  1259. package/.utils/docs_opencode/sdk.md +0 -522
  1260. package/.utils/docs_opencode/sdk.pdf +0 -0
  1261. package/.utils/docs_opencode/server.md +0 -324
  1262. package/.utils/docs_opencode/server.pdf +0 -0
  1263. package/.utils/docs_opencode/skills.md +0 -235
  1264. package/.utils/docs_opencode/skills.pdf +0 -0
  1265. package/.utils/docs_opencode/themes.md +0 -378
  1266. package/.utils/docs_opencode/themes.pdf +0 -0
  1267. package/.utils/docs_opencode/tools.md +0 -364
  1268. package/.utils/docs_opencode/tools.pdf +0 -0
  1269. package/.utils/zugzweb/client/node_modules/.tmp/tsconfig.app.tsbuildinfo +0 -1
  1270. package/.utils/zugzweb/client/node_modules/.tmp/tsconfig.node.tsbuildinfo +0 -1
  1271. package/.utils/zugzweb/client/node_modules/nanoid/.claude/settings.local.json +0 -14
  1272. package/.utils/zugzweb/client/package-lock.json +0 -3707
@@ -1,688 +0,0 @@
1
- ---
2
- id: banksalad
3
- name: Banksalad
4
- country: KR
5
- category: fintech
6
- homepage: "https://www.banksalad.com"
7
- primary_color: "#04c584"
8
- logo:
9
- type: favicon
10
- slug: "https://www.google.com/s2/favicons?domain=banksalad.com&sz=256"
11
- verified: "2026-05-15"
12
- omd: "0.1"
13
- ds:
14
- name: Banksalad GitHub
15
- url: "https://github.com/banksalad"
16
- type: brand
17
- description: Banksalad's public GitHub org including styleguide repos and BPL (Banksalad Product Library) reference material.
18
- og_image: "https://avatars.githubusercontent.com/u/71009899?s=280&v=4"
19
- tokens:
20
- source: prose-derived
21
- extracted: "2026-06-08"
22
- colors:
23
- primary: "#04c584"
24
- primary-hover: "#10df99"
25
- brand: "#04c584"
26
- canvas: "#ffffff"
27
- foreground: "#2b2b2b"
28
- muted: "#7b7b7b"
29
- on-primary: "#ffffff"
30
- surface-alt: "#fbfbfb"
31
- surface-neutral: "#f5f5f5"
32
- body: "#434444"
33
- placeholder: "#999999"
34
- disabled: "#acacac"
35
- hairline: "#e1e1e1"
36
- mint-tint: "#f3fdfa"
37
- error: "#fe493d"
38
- error-soft: "#ff8a84"
39
- warning: "#fd8700"
40
- warning-deep: "#f56200"
41
- info: "#0099ff"
42
- success: "#04c584"
43
- chart-1: "#34464b"
44
- chart-2: "#5c818a"
45
- chart-3: "#1c6c73"
46
- chart-4: "#a7c7cf"
47
- typography:
48
- family: { sans: "Pretendard", display: "BM JUA" }
49
- hero-display: { size: 52, weight: 700, lineHeight: 1.23, tracking: -1, use: "Largest landing headline; sometimes Jua" }
50
- display-lg: { size: 48, weight: 700, lineHeight: 1.2, tracking: -1, use: "Secondary hero" }
51
- display: { size: 44, weight: 700, lineHeight: 1.25, tracking: -1, use: "Section-opening figures (balances, scores)" }
52
- section-heading: { size: 36, weight: 700, lineHeight: 1.3, tracking: -0.5, use: "Marketing section titles" }
53
- h1: { size: 28, weight: 700, lineHeight: 1.14, use: "In-app section titles" }
54
- h2: { size: 24, weight: 700, lineHeight: 1.17, use: "Card titles, panel headings" }
55
- h3: { size: 20, weight: 700, lineHeight: 1.2, use: "Sub-card headings" }
56
- subhead: { size: 18, weight: 700, lineHeight: 1.3, use: "Featured-button text, key callouts" }
57
- body-lg: { size: 16, weight: 500, lineHeight: 1.5, use: "Standard reading text on data screens" }
58
- body: { size: 14, weight: 500, lineHeight: 1.34, use: "Default body text; 500 not 400" }
59
- body-tight: { size: 13, weight: 500, lineHeight: 1.34, use: "Compact labels" }
60
- caption: { size: 12, weight: 500, lineHeight: 1.34, use: "Metadata, helper text" }
61
- caption-sm: { size: 10, weight: 500, lineHeight: 1, use: "Disclosures, smallest labels" }
62
- button: { size: 16, weight: 700, lineHeight: 1, tracking: -1, use: "All CTAs are 700" }
63
- financial-amount: { size: 24, weight: 700, lineHeight: 1, use: "Comma-grouped, won unit follows in 500" }
64
- spacing: { xs: 4, sm: 8, md: 16, base: 16, lg: 24, xl: 32, xxl: 48, section: 64 }
65
- rounded: { sm: 2, md: 4, lg: 8, full: 9999 }
66
- shadow:
67
- soft: "rgba(0,0,0,0.08) 0px 1px 1px 0px"
68
- standard: "rgba(0,0,0,0.12) 0px 2px 5px 0px"
69
- elevated: "rgba(0,0,0,0.15) 0px 4px 9px 0px"
70
- modal: "rgba(0,0,0,0.19) 0px 17px 50px 0px"
71
- components_harvested: true
72
- components:
73
- button-primary: { type: button, bg: "#04c584", fg: "#ffffff", radius: "2px", height: "42px", padding: "12px 24px", font: "16px / 700", hover: "bg #10df99 (lightens)", use: "Primary CTA on data/transactional flows" }
74
- button-primary-large: { type: button, bg: "#04c584", fg: "#ffffff", radius: "2px", height: "56px", padding: "16px 32px", font: "18px / 700", hover: "bg #10df99", use: "Hero CTA on landing surfaces" }
75
- button-ghost: { type: button, bg: "#ffffff", fg: "#04c584", border: "1px solid #04c584", radius: "2px", padding: "12px 24px", font: "16px / 700", hover: "bg #f3fdfa mint tint", use: "Secondary action paired with primary" }
76
- button-neutral: { type: button, bg: "#f5f5f5", fg: "#434444", radius: "2px", padding: "12px 24px", font: "16px / 700", hover: "bg #e1e1e1", use: "Cancel / dismiss" }
77
- button-disabled: { type: button, bg: "#e1e1e1", fg: "#acacac", radius: "2px", font: "16px / 700", use: "Disabled state" }
78
- input-text: { type: input, bg: "#ffffff", fg: "#434444", border: "1px solid #e1e1e1", radius: "2px", height: "48px", padding: "0 16px", font: "16px / 500", focus: "border #10df99 + bg #f3fdfa", use: "Default text input" }
79
- input-amount: { type: input, bg: "#ffffff", fg: "#2b2b2b", border: "2px solid #f5f5f5", radius: "2px", height: "56px", padding: "0 16px", font: "22px / 700", focus: "border #10df99 + bg #f3fdfa", use: "Won-amount input, right-aligned, money as heading" }
80
- card-data: { type: card, bg: "#ffffff", border: "1px solid #e1e1e1", radius: "2px", padding: "20px 24px", shadow: "rgba(0,0,0,0.12) 0px 2px 5px 0px", use: "Recommendation/transaction/summary cards" }
81
- card-highlight: { type: card, bg: "#f3fdfa", border: "1px solid #10df99", radius: "2px", padding: "20px 24px", use: "Selected/recommended-pick in comparison lists" }
82
- status-pill: { type: badge, bg: "#f3fdfa", fg: "#04c584", radius: "41px", padding: "4px 10px", font: "12px / 500", use: "Filter chips on recommendation pages" }
83
- badge-warning: { type: badge, bg: "#ffffff", fg: "#f56200", border: "1px solid #fd8700", radius: "2px", padding: "2px 8px", font: "12px / 700", use: "Rate-warning, expiry indicators" }
84
- badge-negative: { type: badge, bg: "#ffffff", fg: "#fe493d", border: "1px solid #fe493d", radius: "2px", padding: "2px 8px", font: "12px / 700", use: "Overdue, declined indicators" }
85
- table-row: { type: listItem, bg: "#ffffff", fg: "#434444", border: "1px solid #e1e1e1 bottom", padding: "12px 16px", font: "14px / 500", use: "Transaction rows; alternates #fbfbfb, amounts right-aligned 14px/700 #2b2b2b positive #fe493d negative" }
86
- ---
87
-
88
- # Design System Inspiration of Banksalad
89
-
90
- ## 1. Visual Theme & Atmosphere
91
-
92
- Banksalad (뱅크샐러드) is the design language of a **trustworthy financial advisor that runs on data, not optimism**. Where Toss flattens money into one cheerful gesture and KakaoPay wraps it in Kakao yellow, Banksalad insists that *more information, clearly presented*, is the actual brand promise. The home page opens on a white canvas (`#ffffff`/`#fbfbfb`) with warm near-black text (`#2b2b2b` for headings, `#434444` for body — never pure `#000`), anchored by a saturated mint-green `#04c584` that does all the interactive work. The green is specifically a **salad-leaf green** (the brand name is literally "Bank + Salad" — financial data freshly tossed for you), warmer than Spotify's `#1db954` and far brighter than the corporate teal that legacy Korean banks default to.
93
-
94
- The single most distinctive geometric choice is the radius scale. The CSS bundle contains **81 occurrences of `border-radius: 2px`** and only 5 of 8px and 3 of 4px. Banksalad is **almost-flat**: 2px is just enough to take the harshness off a corner without softening anything into "app-friendly" plumpness. This is a deliberate rejection of the Toss/Kakao consumer-app idiom (12–16px). It tells the user: this is data, not a toy. The tabular density follows from the same conviction — cards pack rows of numbers tightly, and the 700-weight Pretendard digits never apologize for taking up space.
95
-
96
- Typography pairs **Pretendard** (the de-facto Korean modern sans, designed by Kil Hyun-jin, weight-axis variable) with **BM JUA** ("배민 주아체", Battle Grounds Jua — a rounded, friendly Korean display face) as an accent. Pretendard does 99% of the work; Jua appears only for marketing/landing display moments where Banksalad wants to feel warm rather than clinical. The default weight is **700** (160 of 304 weight declarations) — Banksalad numbers and headings are confident and chunky, with 500 as the secondary "emphasis on body" weight. Light weights (300) appear ~26 times — only for the largest hero numerals where the size carries the authority.
97
-
98
- **Key Characteristics:**
99
- - Pretendard + Apple SD Gothic Neo + Noto Sans KR font stack — Korean-native typography first
100
- - "BM JUA" as accent display font for landing/promotional moments only
101
- - Signature green `#04c584` (mint, salad-leaf) for all interactive moments
102
- - Hover/focus green `#10df99` (one shade brighter) — interaction makes things *lighter*, not darker
103
- - 2px radius dominance — the brand reads as data-tool, not consumer-app
104
- - Warm near-black `#2b2b2b`/`#434444` for type instead of `#000000`
105
- - Mint focus tint `#f3fdfa` on input backgrounds — the only branded background tint in the system
106
- - 700 weight as default for headings and financial figures; 500 for body emphasis
107
- - Subtle single-layer shadows `0 2px 5px rgba(0,0,0,.12)` — never colored, never theatrical
108
- - Teal-gray data palette (`#34464b`/`#5c818a`/`#1c6c73`/`#a7c7cf`) for chart series — cool, advisor-grade
109
-
110
- ## 2. Color Palette & Roles
111
-
112
- ### Primary
113
- - **Salad Green** (`#04c584`): Primary brand color, CTA backgrounds, links, accent rules, financial-status accents. Mint with a touch of grass — readable on white, energetic but not playful.
114
- - **Hover Green** (`#10df99`): Brighter mint applied on hover, focus border, and the resting state of less-prominent CTAs. Banksalad lightens to indicate interaction (opposite of the conventional darken-on-hover pattern).
115
- - **Mint Tint** (`#f3fdfa`): Focus background on inputs, success surface fill. The only branded tint in the system.
116
-
117
- ### Heading & Body
118
- - **Heading** (`#2b2b2b`): Warm near-black for headlines, prominent labels, and financial amounts. Never `#000`.
119
- - **Body** (`#434444`): Standard reading text. Filled-input text color.
120
- - **Body Light** (`#7b7b7b`): Captions, secondary descriptions.
121
- - **Placeholder** (`#999999`): Input placeholders, muted metadata.
122
- - **Disabled** (`#acacac` / `#c0c0c0`): Disabled text and icons.
123
-
124
- ### Surface & Border
125
- - **Page** (`#ffffff`): Default canvas.
126
- - **Surface Light** (`#fbfbfb`): Soft surface alternation, panel fills.
127
- - **Surface Neutral** (`#f5f5f5`): Dividers, separator backgrounds, content shelf fills (most-used neutral after green).
128
- - **Border Input** (`#e1e1e1`): Default input border, divider line.
129
- - **Surface Mint** (`#f3fdfa`): Success-state surface fill.
130
-
131
- ### Data / Chart Palette (teal-slate family)
132
- - **Deep Slate** (`#0b0c0c`): Maximum-depth axis labels.
133
- - **Teal-Slate 900** (`#333a44`): Primary chart series.
134
- - **Teal-Slate 800** (`#34464b`): Secondary chart series, table headers.
135
- - **Teal-Slate 700** (`#436068`): Tertiary chart.
136
- - **Teal 600** (`#1c6c73`): Highlighted data point.
137
- - **Teal-Gray 500** (`#5c818a`): Subdued data, legend.
138
- - **Teal 400** (`#318b93`): Mid-range fills.
139
- - **Pale Teal** (`#a7c7cf`): Background fills for chart bands.
140
-
141
- The teal-slate family is intentionally **cooler than the brand green**, so that chart series read as neutral data rather than as branded surfaces. Banksalad's green is for interaction; teal-slate is for information.
142
-
143
- ### Semantic
144
- - **Error Red** (`#fe493d`): Strong error states, blocking validation.
145
- - **Error Soft** (`#ff8a84`): Light error tint, secondary error indicators.
146
- - **Warning Orange** (`#fd8700`): Warning emphasis (rate spikes, expiry).
147
- - **Warning Deep** (`#f56200`): Highest-severity warning.
148
- - **Warning Light** (`#ff9900`): Soft warning highlights.
149
- - **Info Blue** (`#0099ff`): External links, info notices (used sparingly — green is the default link color).
150
- - **Success Green** (`#04c584` / `#10df99` / `#13bd7e`): Success uses brand green; there is no separate success hue.
151
-
152
- ## 3. Typography Rules
153
-
154
- ### Font Family
155
- - **Primary**: `Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", Roboto, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif`
156
- - **Display Accent**: `"BM JUA", sans-serif` — reserved for marketing-landing headlines where a warm, rounded Korean voice is wanted (rare; default to Pretendard)
157
- - Variable-axis Pretendard supplies 300/400/500/700/800/900 weights as needed; subset woff2 files for ExtraBold (800), Bold (700), Medium (500), Regular (400) are preloaded on the home page
158
-
159
- ### Hierarchy
160
-
161
- | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
162
- |---|---|---|---|---|---|---|
163
- | Hero Display | Pretendard | 52px | 700 | 64px (1.23) | -1px | Largest landing headline; sometimes Jua for marketing warmth |
164
- | Display Large | Pretendard | 48px | 700 | 1.2 | -1px | Secondary hero |
165
- | Display | Pretendard | 38–44px | 700 | 1.25 | -1px | Section-opening figures (balances, scores) |
166
- | Section Heading | Pretendard | 32–36px | 700 | 1.3 | -0.5px | Marketing section titles |
167
- | Heading 1 | Pretendard | 28px | 700 | 32px | normal | In-app section titles |
168
- | Heading 2 | Pretendard | 22–24px | 700 | 28px | normal | Card titles, panel headings |
169
- | Heading 3 | Pretendard | 20px | 700 | 24px | normal | Sub-card headings |
170
- | Subhead | Pretendard | 18px | 700 | 1.3 | normal | Featured-button text, key callouts |
171
- | Body Large | Pretendard | 16px | 500 | 1.5 | normal | Standard reading text on data screens (700 for emphasis) |
172
- | Body | Pretendard | 14px | 500 | 1.34 | normal | Default body text; 500 weight, not 400 |
173
- | Body Tight | Pretendard | 13px | 500 | 1.34 | normal | Compact labels |
174
- | Caption | Pretendard | 12px | 500 | 1.34 | normal | Metadata, helper text |
175
- | Caption Small | Pretendard | 10px | 500 | 1 | normal | Disclosures, smallest labels |
176
- | Button | Pretendard | 16–18px | 700 | tight | -1px on display CTAs | All CTAs are 700 |
177
- | Financial Amount | Pretendard | 20–36px | 700 | 1 | normal | Always 700, comma-grouped, won unit follows in 500 |
178
-
179
- ### Principles
180
- - **700 is the default for everything that matters.** Headings, CTAs, and financial amounts. 500 is for body text. 400 is rare. There is no "400 headline" in Banksalad.
181
- - **Pretendard everywhere.** Banksalad does not mix sans families. Jua is a *single* exception, only for warm marketing display.
182
- - **Korean and Latin are co-equal.** Pretendard's optical metrics align Korean (한글) and Latin in the same line; never assume English is primary.
183
- - **Tight letter-spacing at display.** Hero headlines and 18px+ CTAs use `-1px` tracking to compress for density.
184
- - **Numerals as headings.** Financial amounts at 20–36px / 700 are treated as headings, not body — they get the same hierarchical weight as page titles.
185
- - **Lightweight body is forbidden.** 300 only appears on display sizes where the size itself carries hierarchy (52px hero numerals); never on body text.
186
-
187
- ## 4. Component Stylings
188
-
189
- ### Buttons
190
-
191
- **Primary CTA (Salad Green)**
192
- - Background: `#04c584`
193
- - Text: `#ffffff`
194
- - Border: none
195
- - Radius: 2px
196
- - Padding: 12px 24px
197
- - Height: 42px (line-height-driven)
198
- - Font: 16px / 700 / Pretendard
199
- - Hover: background `#10df99` (lightens — opposite of convention)
200
- - Use: Primary CTA on data tables, recommendation rows, transactional flows ("내 카드 추천 받기", "신청하기")
201
-
202
- **Primary CTA — Large Display**
203
- - Background: `#04c584`
204
- - Text: `#ffffff`
205
- - Border: none
206
- - Radius: 2px
207
- - Padding: 16px 32px
208
- - Height: 56px
209
- - Font: 18px / 700 / Pretendard
210
- - Letter-spacing: -1px
211
- - Hover: `#10df99`
212
- - Use: Hero CTA on landing surfaces ("앱 다운로드", "지금 시작하기")
213
-
214
- **Primary CTA — Hover-Inverted (Retry)**
215
- - Background: `#10df99` (default lighter)
216
- - Text: `#ffffff`
217
- - Border: none
218
- - Radius: 2px
219
- - Padding: 10px 20px
220
- - Font: 14px / 500 / Pretendard
221
- - Hover: background `#04c584` (darkens — the one place Banksalad uses the darken pattern)
222
- - Use: Secondary retry / "다시 시도" actions where the resting state is a softer mint
223
-
224
- **Ghost / Outlined**
225
- - Background: `#ffffff`
226
- - Text: `#04c584`
227
- - Border: 1px solid `#04c584`
228
- - Radius: 2px
229
- - Padding: 12px 24px
230
- - Font: 16px / 700 / Pretendard
231
- - Hover: background `#f3fdfa` (mint tint)
232
- - Use: Secondary actions paired with a Primary CTA
233
-
234
- **Neutral / Cancel**
235
- - Background: `#f5f5f5`
236
- - Text: `#434444`
237
- - Border: none
238
- - Radius: 2px
239
- - Padding: 12px 24px
240
- - Font: 16px / 700 / Pretendard
241
- - Hover: background `#e1e1e1`
242
- - Use: Cancel / "취소" / dismiss actions
243
-
244
- **Disabled**
245
- - Background: `#e1e1e1`
246
- - Text: `#acacac`
247
- - Border: none
248
- - Radius: 2px
249
- - Font: 16px / 700 / Pretendard
250
- - Use: Disabled state (form incomplete, retry cooling down)
251
-
252
- **Link Button (Inline Text Link)**
253
- - Background: transparent
254
- - Text: `#04c584`
255
- - Border: none
256
- - Padding: 0
257
- - Font: 14px / 500 / Pretendard
258
- - Hover: text-decoration: underline
259
- - Use: Inline links within content ("자세히 보기"), table-row jump links
260
-
261
- ### Cards & Containers
262
-
263
- **Data Card (Default)**
264
- - Background: `#ffffff`
265
- - Border: 1px solid `#e1e1e1` (some surfaces use no border + shadow only)
266
- - Radius: 2px
267
- - Padding: 20px 24px
268
- - Shadow: `0 2px 5px rgba(0, 0, 0, 0.12)`
269
- - Use: Recommendation rows, transaction cards, account summary blocks
270
-
271
- **Card — Soft Variant**
272
- - Background: `#fbfbfb`
273
- - Border: none
274
- - Radius: 8px
275
- - Padding: 24px
276
- - Shadow: `0 2px 8px rgba(0, 0, 0, 0.1)`
277
- - Use: Marketing/landing feature cards (the rare 8px-radius case)
278
-
279
- **Card — Highlight (Selected)**
280
- - Background: `#f3fdfa`
281
- - Border: 1px solid `#10df99`
282
- - Radius: 2px
283
- - Padding: 20px 24px
284
- - Use: Selected state in product comparison lists (cards/loans), recommended-pick highlight
285
-
286
- ### Inputs & Forms
287
-
288
- **Text Input (Default)**
289
- - Background: `#ffffff`
290
- - Text: `#999999` (placeholder) / `#434444` (filled)
291
- - Border: 1px solid `#e1e1e1`
292
- - Radius: 2px
293
- - Padding: 0 16px
294
- - Height: 48px
295
- - Font: 16px / 500 / Pretendard
296
-
297
- **Text Input — Focus**
298
- - Background: `#f3fdfa`
299
- - Text: `#434444`
300
- - Border: 1px solid `#10df99`
301
- - Radius: 2px
302
- - Use: Active typing state — the mint tint is the only branded background fill in the system
303
-
304
- **Text Input — Error**
305
- - Background: `#ffffff`
306
- - Text: `#434444`
307
- - Border: 1px solid `#fe493d`
308
- - Radius: 2px
309
- - Error message below: 12px / 500 / `#fe493d`
310
- - Use: Validation failure state
311
-
312
- **Amount Input (Financial)**
313
- - Background: `#ffffff`
314
- - Text: `#2b2b2b`
315
- - Border: 2px solid `#f5f5f5`
316
- - Radius: 2px
317
- - Padding: 0 16px
318
- - Height: 56px
319
- - Font: 22px / 700 / Pretendard (right-aligned)
320
- - Use: Specialized input for entering won amounts — heavier border (2px), bigger type, right-aligned, 700 weight; treats money input as a heading not a form field
321
-
322
- ### Badges & Tags
323
-
324
- **Status Pill (Brand)**
325
- - Background: `#f3fdfa`
326
- - Text: `#04c584`
327
- - Border: none
328
- - Radius: 41px (rare pill — used only on tag chips, not buttons)
329
- - Padding: 4px 10px
330
- - Font: 12px / 500 / Pretendard
331
- - Use: Filter chips ("연회비 없음", "주유 할인") on card-recommendation pages
332
-
333
- **Status Badge (Warning)**
334
- - Background: `#ffffff`
335
- - Text: `#f56200`
336
- - Border: 1px solid `#fd8700`
337
- - Radius: 2px
338
- - Padding: 2px 8px
339
- - Font: 12px / 700 / Pretendard
340
- - Use: Rate-warning, expiry, attention-needed indicators
341
-
342
- **Status Badge (Negative)**
343
- - Background: `#ffffff`
344
- - Text: `#fe493d`
345
- - Border: 1px solid `#fe493d`
346
- - Radius: 2px
347
- - Padding: 2px 8px
348
- - Font: 12px / 700 / Pretendard
349
- - Use: Overdue, declined, blocking-issue indicators
350
-
351
- ### Tables (Financial Data)
352
-
353
- **Table Header Row**
354
- - Background: `#f5f5f5`
355
- - Text: `#7b7b7b`
356
- - Border-bottom: 1px solid `#e1e1e1`
357
- - Padding: 12px 16px
358
- - Font: 13px / 700 / Pretendard / uppercase letter-spacing 0.05em
359
- - Use: Column headers on transaction lists, fee schedules
360
-
361
- **Table Body Row**
362
- - Background: `#ffffff` (alternates with `#fbfbfb` on dense tables)
363
- - Text: `#434444`
364
- - Border-bottom: 1px solid `#e1e1e1`
365
- - Padding: 12px 16px
366
- - Font: 14px / 500 / Pretendard
367
- - Amounts right-aligned: 14px / 700 / `#2b2b2b` (positive) or `#fe493d` (negative)
368
- - Use: Transaction rows, line-item displays
369
-
370
- ### Charts & Data Viz
371
-
372
- **Chart Series Tokens**
373
- - Series 1: `#34464b` (primary)
374
- - Series 2: `#5c818a` (secondary)
375
- - Series 3: `#1c6c73` (tertiary)
376
- - Series 4: `#a7c7cf` (quaternary / pale)
377
- - Highlight: `#04c584` (always reserved for "your value" / user's own data point)
378
- - Negative: `#fe493d`
379
- - Positive trend: `#04c584`
380
-
381
- **Axis & Gridlines**
382
- - Axis label: 10–12px / 500 / `#7b7b7b`
383
- - Gridline: 1px dashed `#e1e1e1`
384
- - Background: `#ffffff` or `#fbfbfb`
385
-
386
- ### Navigation
387
-
388
- - Header: sticky white (`#ffffff`), no shadow at rest, 1px bottom border `#f5f5f5`
389
- - Logo: left, ~24–28px tall, brand wordmark in `#04c584` (or `#2b2b2b` mono variant)
390
- - Nav links: 14px / 500 / Pretendard / `#434444`, hover `#04c584`
391
- - Sign-in CTA: white background, `#2b2b2b` text, 1px solid `#d8dfe6` border, 16px radius, 6px 14px padding, 14px / 400 (the home-page header uses a softer 16px radius for the auth pill — exception to the 2px default; this is the only 16px-radius live observation in the captured DOM)
392
-
393
- ### Shadows
394
-
395
- | Level | Treatment | Use |
396
- |---|---|---|
397
- | Flat | none | Page background, inline elements |
398
- | Soft (L1) | `0 1px 1px rgba(0,0,0,.08)` | Subtle row separators |
399
- | Standard (L2) | `0 2px 5px rgba(0,0,0,.12)` | Default cards — most common (~38 occurrences) |
400
- | Elevated (L3) | `0 4px 9px rgba(0,0,0,.15)` | Dropdowns, popovers |
401
- | Deep (L4) | `0px 2px 8px rgba(0,0,0,.1)` | Floating panels |
402
- | Modal (L5) | `0 17px 50px rgba(0,0,0,.19)` | Modal dialogs |
403
- | Inset | `inset 0 1px 1px rgba(0,0,0,.12)` | Pressed-button / depressed input feel |
404
-
405
- ---
406
-
407
- **Verified:** 2026-05-13 (omd:add-reference CREATE mode)
408
- **Tier 1 sources:** banksalad.com home (live HTML — Pretendard + Jua preload, 16px-radius sign-in pill via playwright DOM); webview-cdn.banksalad.com/.../v2.5c10981711a65fe446400c6ecec36a221b1c3e9e.bundle.css (865 KB CSS bundle — 81× `border-radius: 2px`, primary CTA `#04c584` rule, input focus `#10df99`/`#f3fdfa`, full color-frequency map); blog.banksalad.com/tech/banksalad-product-language-ios/ (BPL principle quote); github.com/banksalad (styleguide org confirmed).
409
- **Tier 2 sources:** getdesign.md/banksalad — **no record** ("No designs found for 'banksalad'"). styles.refero.design/?q=banksalad — **no record** (search returns no banksalad cards). Tier 2 unavailable; Tier 1 treated as authoritative.
410
- **Conflicts unresolved:** none. (Single playwright DOM observation of 16px-radius on the sign-in header pill is documented as an exception in §4 Navigation rather than treated as a token-system conflict — the bundle's overwhelming 81× 2px frequency is the system default.)
411
- **Earlier gap:** none — this is CREATE.
412
-
413
- ## 5. Layout Principles
414
-
415
- ### Spacing System
416
- - Base unit: 4px
417
- - Scale: 4px, 8px, 12px, 16px, 20px, 24px, 32px, 40px, 48px, 64px
418
- - Card internal padding: 20px / 24px (slightly tighter than Toss's 20px-horizontal default — Banksalad packs more data)
419
- - Table-row vertical padding: 12px (denser than consumer apps)
420
-
421
- ### Grid & Container
422
- - Marketing/landing: max content width ~1080–1200px, centered
423
- - App / data surfaces: full-width with 16–24px gutters; tables go edge-to-edge on mobile
424
- - Card-recommendation lists: single-column on mobile, 2–3 column grid on desktop
425
- - Charts: full-width within their card container, never bleed outside
426
-
427
- ### Whitespace Philosophy
428
- - **Density is the brand.** Where Toss says "breathing room for money", Banksalad says "more facts visible without scrolling". A balance, a comparison rate, an interest rate, and three filter chips can coexist in one card.
429
- - **Section rhythm by surface fill.** White (`#ffffff`) and off-white (`#fbfbfb`) sections alternate quietly — not for drama, but to chunk dense data into scannable bands.
430
- - **Tight gaps inside, generous gaps outside.** Inside a comparison card, rows sit on 12px vertical gaps. Between cards, 24–32px. The hierarchy of grouping is communicated through gap-size alone.
431
-
432
- ### Border Radius Scale
433
- - **2px (dominant — 81 occurrences in CSS)**: Buttons, inputs, cards, badges, banners. The signature.
434
- - 4px: Small badges, inline pills.
435
- - 8px: Soft marketing cards (rare).
436
- - 10–12px: Promotional banner corners (rare).
437
- - 30–41px: Filter pills, tag chips, avatar circles.
438
- - 50%: Avatars, icon backdrops.
439
-
440
- Banksalad's 2px is a typographic-engineering commitment: pixel rounding sharp enough to look engineered, soft enough to not draw blood. Any radius ≥ 12px feels Toss-ish and is reserved for explicitly marketing-warmth contexts.
441
-
442
- ## 6. Depth & Elevation
443
-
444
- | Level | Treatment | Use |
445
- |---|---|---|
446
- | Flat (L0) | No shadow | Page background, inline elements |
447
- | Soft (L1) | `0 1px 1px rgba(0,0,0,.08)` | Subtle row lift, list-item separators |
448
- | Standard (L2) | `0 2px 5px rgba(0,0,0,.12)` | Default cards — by far the most common (~38 occurrences) |
449
- | Elevated (L3) | `0 4px 9px rgba(0,0,0,.15)` | Dropdowns, hover-elevated cards |
450
- | Deep (L4) | `0px 2px 8px rgba(0,0,0,.1)` | Floating action panels |
451
- | Modal (L5) | `0 17px 50px rgba(0,0,0,.19)` | Dialog modals, account-switch overlays |
452
- | Inset (L-1) | `inset 0 1px 1px rgba(0,0,0,.12)` | Pressed button state, depressed input visual |
453
- | Halo | `0 0 2px rgba(0,0,0,.26)` | Thin outline on overlay menus and popovers |
454
-
455
- **Shadow Philosophy.** Shadows are **always neutral and single-layer.** No colored shadows, no parallax stacks. Where Stripe brands its shadows in navy and Toss uses near-zero shadows for clinical clarity, Banksalad sits between — visible enough that cards lift off the surface, restrained enough that the data inside is what the eye lands on. The signature `0 2px 5px rgba(0,0,0,.12)` is a small, low-cost lift used 38× in the bundle.
456
-
457
- ## 7. Do's and Don'ts
458
-
459
- ### Do
460
- - Use `#04c584` for every interactive moment — CTAs, links, focus accents, "your data point" on charts
461
- - Use `#10df99` for hover (it's *brighter* than `#04c584` — Banksalad lightens on interaction)
462
- - Use `#f3fdfa` mint tint on input focus background — the only branded surface tint in the system
463
- - Keep border-radius at 2px for buttons, inputs, cards, badges — the system's geometric signature
464
- - Use Pretendard with the full Korean fallback stack; 700 as default weight for headings and CTAs
465
- - Use `#2b2b2b`/`#434444` warm near-blacks for type instead of `#000000`
466
- - Use the teal-slate family (`#34464b`/`#5c818a`/`#1c6c73`/`#a7c7cf`) for chart series — cooler than brand green by design
467
- - Use `#04c584` only for "your value" on a chart — never as a generic data fill
468
- - Right-align financial amounts in tables; use 700 weight for amounts even at 14px
469
- - Use comma-separated won amounts with the currency unit in 500 weight (`12,400,000원`)
470
-
471
- ### Don't
472
- - Don't use Toss's 12px+ rounded corners — Banksalad is 2px; 8px is the soft-marketing exception
473
- - Don't use Kakao yellow, KakaoPay yellow, or any warm accent for primary interaction — green is the sole interactive hue
474
- - Don't use BM JUA inside the app — Jua is for marketing-landing display moments only
475
- - Don't use weight 400 for body — Banksalad's body weight is 500
476
- - Don't apply colored shadows (blue, green, branded) — shadows are always neutral black
477
- - Don't pad financial cards generously like Toss — Banksalad packs density; data is the aesthetic
478
- - Don't approximate currency amounts (`약 120만원`) on primary financial surfaces — bare numerals with commas only
479
- - Don't use `#0099ff` info-blue for default links — green is the default link color; blue is reserved for *external* references
480
- - Don't use Pretendard 300 on body — light weights only at hero display sizes (52px+)
481
- - Don't sprinkle the brand green on chart series — green is for interaction, teal-slate is for data
482
-
483
- ## 8. Responsive Behavior
484
-
485
- ### Breakpoints
486
- | Name | Width | Key Changes |
487
- |---|---|---|
488
- | Mobile | <600px | Single column, full-width tables (horizontal scroll if needed), 16px gutters |
489
- | Tablet | 600–1024px | 2-column card grids, 20px gutters |
490
- | Desktop | 1024–1280px | Full marketing layout, 3-column feature grids |
491
- | Large | >1280px | Centered content max-width ~1200px |
492
-
493
- ### Touch Targets
494
- - Buttons minimum 42px height (default), 56px for hero display CTAs
495
- - Table rows minimum 44px (slightly denser than 48px standard — Banksalad accepts a tighter tap)
496
- - Filter pill chips: 28–32px height
497
- - Input minimum 48px height; amount-input 56px
498
-
499
- ### Collapsing Strategy
500
- - Hero: 52px → 36px on mobile, weight 700 maintained
501
- - Marketing 3-col feature grids → 2-col → single column
502
- - Comparison tables: maintain table form on tablet, switch to stacked cards on mobile (each row becomes a card with key/value pairs)
503
- - Charts: full-width, maintain aspect ratio, axis-label font drops 12px → 10px on mobile
504
- - Filter chip rows: horizontal scroll (no wrap) on mobile to preserve the chip rhythm
505
-
506
- ### Image Behavior
507
- - Card/product logos: 24–40px, consistent square framing within rows
508
- - Chart screenshots in marketing: full-width on mobile, 2-col on desktop
509
- - Decorative illustrations: rare; when used, locked to a single accent illustration per landing surface (no illustration overload — data is the visual)
510
-
511
- ## 9. Agent Prompt Guide
512
-
513
- ### Quick Color Reference
514
- - Primary CTA: Salad Green (`#04c584`)
515
- - Hover: Hover Green (`#10df99`)
516
- - Page background: White (`#ffffff`)
517
- - Surface alt: Off-white (`#fbfbfb`)
518
- - Neutral surface: (`#f5f5f5`)
519
- - Heading text: Warm near-black (`#2b2b2b`)
520
- - Body text: (`#434444`)
521
- - Caption: (`#7b7b7b`)
522
- - Placeholder: (`#999999`)
523
- - Border: (`#e1e1e1`)
524
- - Focus background tint: Mint (`#f3fdfa`)
525
- - Chart series: `#34464b` / `#5c818a` / `#1c6c73` / `#a7c7cf`
526
- - Error: `#fe493d`
527
- - Warning: `#fd8700` / `#f56200`
528
-
529
- ### Example Component Prompts
530
- - "Create a Banksalad-style primary CTA: `#04c584` background, white text, 2px border-radius (not 12px), 700-weight Pretendard at 16px, 12px 24px padding, 42px height. Hover lightens to `#10df99`."
531
- - "Design a card-recommendation row: white background, 1px solid `#e1e1e1` border, 2px radius, 20px 24px padding, shadow `0 2px 5px rgba(0,0,0,.12)`. Card logo 32px left, title 16px/700 `#2b2b2b`, three filter chips below (`#f3fdfa` bg, `#04c584` text, 41px radius, 12px/500), annual-fee figure right-aligned 18px/700 with '원' suffix in 500."
532
- - "Build a focused amount input: 2px border `#f5f5f5`, on focus border `#10df99` and background `#f3fdfa`. Text 22px/700 right-aligned, `#2b2b2b`, won unit in 500 weight following the digits."
533
- - "Create a data chart: white background, axis labels 10px/500 `#7b7b7b`, gridlines 1px dashed `#e1e1e1`. Series 1 `#34464b`, series 2 `#5c818a`, series 3 `#1c6c73`. User's own data point in `#04c584` to make 'your value' pop against neutral teal-slate."
534
- - "Design a transaction table row: alternating `#ffffff` / `#fbfbfb` background, 12px 16px padding, 1px solid `#e1e1e1` bottom border. Date column 14px/500 `#7b7b7b`, merchant 14px/500 `#434444`, amount right-aligned 14px/700 — `#2b2b2b` for positive, `#fe493d` for negative."
535
-
536
- ### Iteration Guide
537
- 1. **Default radius is 2px.** If the AI produces 12px or 16px corners, reject — that's Toss, not Banksalad.
538
- 2. **Default weight is 700 for anything important.** Headings, CTAs, financial amounts. 500 for body. Never 400 for body.
539
- 3. **Green is for interaction only.** Never use `#04c584` as a generic background fill or decorative element. It always means: the user can tap this, or this is the user's own data.
540
- 4. **Hover lightens.** `#04c584` → `#10df99` on hover (the opposite of conventional darken-on-hover). This is a signature.
541
- 5. **Shadows are neutral and single-layer.** `0 2px 5px rgba(0,0,0,.12)` is the workhorse. No colored shadows.
542
- 6. **Chart series are teal-slate, not green.** `#34464b` / `#5c818a` / `#1c6c73` / `#a7c7cf`. Reserve green for the user's own data point.
543
- 7. **Pretendard is non-negotiable.** Always include the full Korean fallback stack. Jua only for marketing display.
544
-
545
- ---
546
-
547
- ## 10. Voice & Tone
548
-
549
- Banksalad speaks like a **trustworthy financial advisor who happens to read the regulations carefully** — calm, factual, slightly older-feeling than Toss, never the "friend with money" voice that consumer-app fintech defaults to. Where Toss says *"송금 완료"*, Banksalad says *"내 신용점수가 5점 올랐어요. 이번 달 카드 결제 이력이 안정적이었기 때문이에요."* The voice explains *why* the number changed, not just that it changed. Korean is the primary register; English UI strings are translations, not parity.
550
-
551
- | Context | Tone |
552
- |---|---|
553
- | CTAs | Imperative, concrete outcome. `내 카드 찾기`, `대출 한도 확인하기`, `신청하기`. Never `시작하기 →` with an arrow flourish. |
554
- | Section headlines | Statement of fact, not a hook. `이번 달 지출 분석` not `이번 달, 얼마나 썼는지 보러 갈까요?`. |
555
- | Recommendations | Justified. Every recommended card or loan has a one-sentence reason next to it (`연 30만원 이상 절약될 수 있어요`). Never a bare ranked list. |
556
- | Financial figures | Bare numerals with commas. `1,240,000원`. Approximations (`약 124만원`) are forbidden on primary surfaces. |
557
- | Success messages | One-line confirmation + the relevant figure. `신용점수가 855점으로 올랐어요.` No emoji, no exclamation. |
558
- | Error / validation | Specific cause + one-line action. `주민등록번호가 일치하지 않아요. 다시 확인해주세요.` Never `오류가 발생했습니다`. |
559
- | Empty states | Explain the *why*, then suggest one next step. `아직 연동된 카드가 없어요. 카드를 연동하면 자동으로 지출 분석이 시작돼요.` |
560
- | Legal / disclosure | Formal `~합니다` endings. Pinned at the bottom of recommendation cards. Treated as part of the product, not a footer afterthought. |
561
- | Health-asset (DNA, screening) | Same calm advisor voice as finance. No marketing exuberance about "discovering your DNA". Just `이번 검사로 18가지 항목을 확인할 수 있어요`. |
562
-
563
- **Forbidden phrases.** `오류가 발생했습니다`, `Oops`, `간단하게`, `최고의 ~`, `놓치지 마세요`, exclamation marks on routine CTAs, emoji on financial surfaces, approximations on money (`약 ~원`), `놀라운 절약` / "amazing savings" / superlative-driven recommendations. Banksalad's voice is the opposite of clickbait — the user came here to think about money, and the product should respect the seriousness of that intent.
564
-
565
- ## 11. Brand Narrative
566
-
567
- Banksalad is the consumer brand of **Rainist (레이니스트)**, founded in **2012 by Kim Tae-hoon (김태훈)** — a Sogang University graduate who started the company inside the Smilegate game-studio incubator and whose **founding team manually classified 16 hours a day of Korean financial-product data to build the first comparison database** ([Hankyung 2019-03-12](https://www.hankyung.com/article/2019031275551)). The founding rejection was specific: every legacy Korean financial portal in 2012 (Bankrate-style aggregators, bank-run comparison pages) presented credit cards and loans in alphabetical lists optimized for the issuer, not the user. Kim Tae-hoon's stated thesis was *"정보 비대칭성을 해소해 누구나 똑똑해지는 세상을 만들겠다"* — "resolve information asymmetry so anyone can become smart [about their own money]" (founder interviews, Korean press 2018–2019). The product's design language follows directly from that thesis: **more facts, clearly tiered, with the reason next to every recommendation.**
568
-
569
- Banksalad's monthly active users tripled to **1.5M in early 2019** ([Korea Herald 2019-02-22](http://www.koreaherald.com/view.php?ud=20190222000548)). The company raised a **₩45B ($37M USD) Series C at a ₩300B ($247M) valuation in 2019** ([Korea Herald 2019-08-28](https://www.koreaherald.com/article/2087712)) and has raised **$169.96M cumulatively** to date (PitchBook). Today the product spans credit-card recommendation, personal loans, mortgages, deposits/savings, and — uniquely — **a free DNA-based health-screening service** that extends the "manage your assets" framing from financial assets to health assets. The home-page tagline as of 2026-05-13 reads *"뱅크샐러드 \| 금융을 넘어 건강 자산까지"* ("Banksalad — from finance to health assets"), making that extension the brand's current positioning.
570
-
571
- The design system is internally called **BPL — Banksalad Product Language**, documented on the official tech blog ([blog.banksalad.com/tech/banksalad-product-language-ios](https://blog.banksalad.com/tech/banksalad-product-language-ios/)). BPL's most-quoted principle is *"Communication cost is most expensive. Code and Show first, argue after that."* BPL is implemented on iOS with LayoutDrivenUI + RxSwift, on Android in Kotlin, on Web through the CSS bundle this DESIGN.md was extracted from. The system explicitly avoids premature component abstraction — similar components stay independent, matching how designers structure their Figma libraries. The mint-green (`#04c584`), the 2px radius, the Pretendard 700 default, the teal-slate chart palette — all are BPL primitives.
572
-
573
- What Banksalad refuses: the cheerful consumer-app voice of Toss and KakaoPay (banksalad explains; it does not delight), the institutional-indigo of legacy Korean banks (which is why it picked green, not blue), the playful illustration of Kakao-family products (Banksalad does not use mascot characters), and the data-density of Bloomberg-terminal aesthetics (the tables are dense but the type is human-readable). Banksalad sits in a narrow middle: serious enough to be an advisor, modern enough to be the app a 26-year-old opens between subway stops.
574
-
575
- ## 12. Principles
576
-
577
- 1. **Show the number, then show the reason.** Every recommended card, loan, or asset comes with a one-sentence justification next to the figure. A ranked list without reasons is a violation of the brand. UI implication: every recommendation card must have a "justification line" slot in its component contract.
578
- 2. **Density is trust.** Where consumer-app fintech treats whitespace as luxury, Banksalad treats density as competence. A user who can see four comparison rows at once is being respected as a researcher. UI implication: card padding 20–24px, not 32px+. Tables ship as tables, not as stacked single-rows.
579
- 3. **Green is interaction, not decoration.** `#04c584` only appears where the user can act (CTA, link, focus, selection) or where the user's own data is shown ("your value" on a chart, "your score"). Never on a decorative gradient, never as a page-section background. UI implication: never use brand green as a fill that does not change on hover.
580
- 4. **2px is a philosophical commitment.** The sharp corner reads as data-tool; Toss/Kakao's 12–16px reads as consumer-toy. Banksalad chooses to look engineered. UI implication: do not import any consumer-app card with rounded corners as-is; re-corner to 2px.
581
- 5. **Numerals are headings.** Financial amounts at 20px+ are styled with the same hierarchical weight (700) as page titles. Money is information of the highest priority — it gets the typographic treatment of a heading, never of body. UI implication: amounts use heading-class typography tokens.
582
- 6. **The reason for the recommendation is part of the product.** Disclaimers, comparison criteria, and rate sources are not legal footers — they are pinned inside the recommendation card, in the same visual frame as the recommendation itself. UI implication: every recommendation component reserves a `disclosure` slot that is always rendered, not collapsed-by-default.
583
- 7. **Korean and Latin numerals must align.** Pretendard's optical alignment between 한글 and Latin numerals is non-negotiable — a column of `1,240,000원` and `$1,240` should read as one column, not two scripts arguing. UI implication: never substitute a Latin-only font for numeric display; Pretendard handles both.
584
- 8. **Charts use teal-slate, not brand green, for the field.** Reserving green for the user's own value makes the user's position immediately legible against neutral series. UI implication: chart `seriesColors` defaults to `[#34464b, #5c818a, #1c6c73, #a7c7cf]`; user's series defaults to `#04c584`.
585
- 9. **Approximations are a betrayal.** `약 ~원` on a primary money surface tells the user the product does not actually know the number. Banksalad's brand promise is information clarity; rounded figures are forbidden where the precise figure exists. UI implication: financial-amount components do not accept a `round: true` flag.
586
-
587
- ## 13. Personas
588
-
589
- *Personas below are fictional archetypes informed by publicly observable Banksalad user segments (Korean millennials managing credit-card portfolios, freelancers comparing loan products, mid-life users tracking health-and-finance side by side), not individual people.*
590
-
591
- **박지혜 (Park Ji-hye), 31, Seoul.** Senior designer at a Seoul-based scaleup. Opens Banksalad once a week to scan her credit-card spend-by-category report. Switches cards every 18 months based on whichever one Banksalad's recommendation engine surfaces with the best annual-savings figure for her actual usage pattern — *not* the one with the flashiest sign-up bonus. Reads the one-sentence justification under every recommendation before tapping; would close the app permanently if it ever shipped a "best card 🔥" list without reasons.
592
-
593
- **김상민 (Mr. Kim), 47, Daegu.** Self-employed, runs a small import business. Uses Banksalad primarily for comparing business-friendly credit cards and tracking interest-rate movements on his three commercial loans. Trusts the product because the rate comparison shows the source date and the underlying assumption (`연 환산 기준`). Pays attention to the disclosure text inside each recommendation card — would lose trust immediately if a recommendation appeared without its rate basis.
594
-
595
- **이수연 (Lee Su-yeon), 28, Seongnam.** UX researcher. Uses Banksalad for two unrelated reasons: monthly spend analysis, and the free DNA-based health screening. Finds the same voice across both surfaces (calm, factual, advisor-tone) reassuring — it makes the health-screening feel like an extension of "manage your assets" rather than a sudden pivot. Compares Banksalad's spend analysis to Toss's and prefers Banksalad's because *"Toss는 다 정리되어 있고 깔끔한데, 뱅크샐러드는 왜 그런지를 알려줘요"* (illustrative paraphrase) — Toss tidies, Banksalad explains.
596
-
597
- **조현우 (Cho Hyun-woo), 39, Busan.** Mid-career operations manager. Reviews Banksalad's monthly credit-report widget — has been watching his credit score climb from 820 to 868 over 14 months. Doesn't tap CTAs; uses Banksalad strictly as a dashboard. Trusts the green `#04c584` "your score" indicator on the score-trend chart because it always shows him *his* position against the teal-slate distribution of the population — the green-vs-teal distinction tells him at a glance which data is about him.
598
-
599
- ## 14. States
600
-
601
- | State | Treatment |
602
- |---|---|
603
- | **Empty (no linked accounts)** | White canvas. Single short paragraph in `#434444` body text explaining why the screen is empty (`아직 연동된 카드가 없어요. 카드를 연동하면 자동으로 지출 분석이 시작돼요.`). One primary CTA in Salad Green (`#04c584`, 2px radius). No illustration. |
604
- | **Empty (filter cleared)** | Single line of `#7b7b7b` caption (`조건에 맞는 결과가 없어요. 필터를 조정해주세요.`). No CTA — user adjusts filters themselves. |
605
- | **Empty (no transactions this period)** | Two-line message in `#434444` explaining the filter scope (`선택한 기간에 거래 내역이 없어요. 다른 기간을 선택하거나 카드 연동을 확인해보세요.`). |
606
- | **Loading (first paint)** | Skeleton blocks at `#f5f5f5` matching the final layout exactly. Financial amounts render as `--원` placeholders rather than skeleton bars — a skeleton bar that resolves to a number is disorienting; `--` is honest. 1s shimmer with 8% white highlight using a `linear-gradient` sweep. |
607
- | **Loading (refresh / in-place)** | Subtle `#04c584` 2px progress bar at top of the section. Previous values stay visible. Never block the table during refresh. |
608
- | **Error (inline field)** | `#fe493d` 1px border on the input, 12px error text below in `#fe493d` weight 500. One actionable sentence (`주민등록번호가 일치하지 않아요. 다시 확인해주세요.`). |
609
- | **Error (recommendation fetch failed)** | Inline banner inside the recommendation card area. `#fe493d` left border, white background, 14px `#434444` text explaining what failed + a `다시 시도하기` button in the retry-button style (`#10df99` resting → `#04c584` on hover). Never a generic toast. |
610
- | **Error (data freshness warning)** | Soft warning banner with `#fd8700` left accent bar, white background, 13px `#7b7b7b` text noting the data is N hours stale. Non-blocking — the user can still see the (possibly stale) figures. |
611
- | **Success (action confirmed)** | Inline confirmation row in `#f3fdfa` mint-tint background, `#04c584` 16px / 700 confirmation text, the relevant figure in 22px / 700 `#2b2b2b` below. No toast for important actions — they get their own confirmation surface. |
612
- | **Success (passive update)** | 3s auto-dismiss toast at top-right. `#2b2b2b` background (NOT brand green — green is reserved for interactive surfaces), white 14px / 500 text, 2px radius, shadow `0 2px 5px rgba(0,0,0,.12)`. No emoji. |
613
- | **Skeleton** | `#f5f5f5` blocks at exact final dimensions, 2px radius matching the component being loaded. 1s shimmer. Financial-amount slots show `--원`, not a bar. |
614
- | **Disabled** | Background `#e1e1e1`, text `#acacac`, 2px radius preserved. Cursor `not-allowed`. The geometry stays identical to the enabled state so re-enabling does not shift layout. |
615
- | **Pressed (button)** | Inset shadow `inset 0 1px 1px rgba(0,0,0,.12)` + background shifts by ~5% darker for the press duration. Returns instantly on release (no spring). |
616
-
617
- ## 15. Motion & Easing
618
-
619
- **Durations:**
620
-
621
- | Token | Value | Use |
622
- |---|---|---|
623
- | `motion-instant` | 0ms | State commits, checkbox flips, focus ring appearance |
624
- | `motion-fast` | 150ms | Hover, focus, button press overlays, inline value updates |
625
- | `motion-standard` | 250ms | Card expand, dropdown open, tab content switch, modal open |
626
- | `motion-slow` | 400ms | Page-level transitions, recommendation-card reveal animation |
627
- | `motion-data` | 600ms | Chart series draw-in, score-bar count-up — slower because the user needs time to read the number |
628
-
629
- **Easings:**
630
-
631
- | Token | Curve | Use |
632
- |---|---|---|
633
- | `ease-enter` | `cubic-bezier(0.0, 0.0, 0.2, 1)` | Arriving — modals, dropdowns, sheets |
634
- | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
635
- | `ease-standard` | `cubic-bezier(0.4, 0.0, 0.2, 1)` | Two-way transitions, chart draw-in |
636
- | `ease-data` | `cubic-bezier(0.25, 0.46, 0.45, 0.94)` | Score count-up, chart series — eases out gradually so the final value is the calm resting state |
637
-
638
- **Explicitly forbidden.** No spring overshoot anywhere. No bounce. No `cubic-bezier` with a middle control above `1.0`. Banksalad's voice is *advisor*, not *delighter* — spring-easing reads as a consumer app celebrating a transaction, which is the opposite of the brand promise. Where Toss licenses spring easing only for the money-moved checkmark, Banksalad does not license it at all.
639
-
640
- **Signature motions.**
641
-
642
- 1. **Score count-up.** When a credit-score or asset-total updates, the number animates from the previous value to the new value across `motion-data` (600ms) with `ease-data`. The duration is deliberately slow — the user is supposed to read the change, not see it flash. The Korean numeric separators (`,`) re-flow correctly during the count.
643
- 2. **Chart series draw-in.** Time-series charts draw left-to-right in `motion-data` with `ease-standard`. The user's own series (`#04c584`) is drawn *last*, so the eye lands on the user's own data after the surrounding distribution has been established.
644
- 3. **Recommendation card reveal.** When a fresh recommendation set loads, cards fade in with `motion-standard / ease-enter` from `opacity: 0; translateY(4px)`. Translate is intentionally small (4px, not 20px) — the cards arrive, they do not fly in.
645
- 4. **Reduce motion.** Under `prefers-reduced-motion: reduce`, all `motion-*` tokens collapse to `motion-instant`. Score count-ups become instant value swaps. Chart draw-ins render their final state immediately. Banksalad remains fully usable; nothing in the product is information-dependent on motion.
646
-
647
- <!--
648
- OmD v0.1 Sources — Philosophy Layer (sections 10–15)
649
-
650
- Direct verification via WebFetch + curl (2026-05-13):
651
- - https://www.banksalad.com/ — confirms current tagline "뱅크샐러드 | 금융을 넘어 건강 자산까지"
652
- and the Pretendard + BM JUA font stack via preload <link> tags.
653
- - https://webview-cdn.banksalad.com/banksalad-web/static/dist/v2.5c10981711a65fe446400c6ecec36a221b1c3e9e.bundle.css
654
- (865 KB) — all token-level claims (#04c584 primary green, 2px dominant radius,
655
- Pretendard with full Korean fallback, 700 default weight, 0 2px 5px rgba(0,0,0,.12)
656
- standard shadow, input focus border #10df99 / background #f3fdfa).
657
- - https://blog.banksalad.com/tech/banksalad-product-language-ios/ — confirms
658
- the design system is internally called "BPL" (Banksalad Product Language)
659
- and the quoted principle "Communication cost is most expensive. Code and Show
660
- first, argue after that."
661
- - https://github.com/banksalad — confirms the official org and the
662
- banksalad/styleguide public repo.
663
-
664
- Brand facts via WebSearch (2026-05-13):
665
- - Hankyung 2019-03-12 — manual 16-hour/day data classification origin
666
- - Korea Herald 2019-02-22 — 1.5M MAU early 2019
667
- - Korea Herald 2019-08-28 — ₩45B Series C at ₩300B valuation
668
- - PitchBook — $169.96M total raised
669
-
670
- Founder mission quote "정보 비대칭성을 해소해 누구나 똑똑해지는 세상을 만들겠다"
671
- is attributed to Kim Tae-hoon per multiple Korean press interviews summarized
672
- in the WebSearch result; the exact phrasing is widely cited in Korean fintech
673
- coverage of Banksalad.
674
-
675
- Personas (§13) are fictional archetypes informed by publicly described
676
- Banksalad user segments (Korean millennials managing credit-card spend,
677
- self-employed users comparing rates, UX researchers using the health-asset
678
- extension, mid-career users using Banksalad as a passive dashboard). Names
679
- are illustrative; they do not refer to real people. Yi Su-yeon's paraphrase
680
- of Toss-vs-Banksalad voice in §13 is explicitly marked illustrative.
681
-
682
- Interpretive claims (e.g., "2px is a philosophical commitment", "green is for
683
- interaction, not decoration", "approximations are a betrayal") are editorial
684
- readings of BPL's observable design choices, not directly sourced Banksalad
685
- statements. They are anchored in the principle quote from BPL_iOS
686
- ("Communication cost is most expensive...") and the founder's mission
687
- ("resolve information asymmetry").
688
- -->