@aexol/spectral 0.7.0 → 0.7.1

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 (459) hide show
  1. package/dist/agent/index.js +76 -301
  2. package/dist/cli.js +11 -0
  3. package/dist/designer/data/systems/agentic/DESIGN.md +71 -0
  4. package/dist/designer/data/systems/agentic/components.html +154 -0
  5. package/dist/designer/data/systems/agentic/tokens.css +63 -0
  6. package/dist/designer/data/systems/airbnb/DESIGN.md +393 -0
  7. package/dist/designer/data/systems/airbnb/components.html +1373 -0
  8. package/dist/designer/data/systems/airbnb/tokens.css +261 -0
  9. package/dist/designer/data/systems/airtable/DESIGN.md +92 -0
  10. package/dist/designer/data/systems/airtable/components.html +489 -0
  11. package/dist/designer/data/systems/airtable/tokens.css +261 -0
  12. package/dist/designer/data/systems/ant/DESIGN.md +71 -0
  13. package/dist/designer/data/systems/ant/components.html +154 -0
  14. package/dist/designer/data/systems/ant/tokens.css +63 -0
  15. package/dist/designer/data/systems/apple/DESIGN.md +250 -0
  16. package/dist/designer/data/systems/apple/components.html +749 -0
  17. package/dist/designer/data/systems/apple/tokens.css +286 -0
  18. package/dist/designer/data/systems/application/DESIGN.md +71 -0
  19. package/dist/designer/data/systems/application/components.html +154 -0
  20. package/dist/designer/data/systems/application/tokens.css +63 -0
  21. package/dist/designer/data/systems/arc/DESIGN.md +152 -0
  22. package/dist/designer/data/systems/arc/components.html +432 -0
  23. package/dist/designer/data/systems/arc/tokens.css +137 -0
  24. package/dist/designer/data/systems/artistic/DESIGN.md +71 -0
  25. package/dist/designer/data/systems/artistic/components.html +136 -0
  26. package/dist/designer/data/systems/artistic/tokens.css +63 -0
  27. package/dist/designer/data/systems/atelier-zero/DESIGN.md +316 -0
  28. package/dist/designer/data/systems/atelier-zero/components.html +136 -0
  29. package/dist/designer/data/systems/atelier-zero/tokens.css +63 -0
  30. package/dist/designer/data/systems/bento/DESIGN.md +71 -0
  31. package/dist/designer/data/systems/bento/components.html +136 -0
  32. package/dist/designer/data/systems/bento/tokens.css +63 -0
  33. package/dist/designer/data/systems/binance/DESIGN.md +348 -0
  34. package/dist/designer/data/systems/binance/components.html +550 -0
  35. package/dist/designer/data/systems/binance/tokens.css +255 -0
  36. package/dist/designer/data/systems/bmw/DESIGN.md +183 -0
  37. package/dist/designer/data/systems/bmw/components.html +551 -0
  38. package/dist/designer/data/systems/bmw/tokens.css +179 -0
  39. package/dist/designer/data/systems/bmw-m/DESIGN.md +246 -0
  40. package/dist/designer/data/systems/bmw-m/components.html +342 -0
  41. package/dist/designer/data/systems/bmw-m/tokens.css +64 -0
  42. package/dist/designer/data/systems/bold/DESIGN.md +71 -0
  43. package/dist/designer/data/systems/bold/components.html +136 -0
  44. package/dist/designer/data/systems/bold/tokens.css +63 -0
  45. package/dist/designer/data/systems/brutalism/DESIGN.md +71 -0
  46. package/dist/designer/data/systems/brutalism/components.html +154 -0
  47. package/dist/designer/data/systems/brutalism/tokens.css +63 -0
  48. package/dist/designer/data/systems/bugatti/DESIGN.md +271 -0
  49. package/dist/designer/data/systems/bugatti/components.html +342 -0
  50. package/dist/designer/data/systems/bugatti/tokens.css +64 -0
  51. package/dist/designer/data/systems/cafe/DESIGN.md +71 -0
  52. package/dist/designer/data/systems/cafe/components.html +136 -0
  53. package/dist/designer/data/systems/cafe/tokens.css +63 -0
  54. package/dist/designer/data/systems/cal/DESIGN.md +262 -0
  55. package/dist/designer/data/systems/cal/components.html +376 -0
  56. package/dist/designer/data/systems/cal/tokens.css +265 -0
  57. package/dist/designer/data/systems/canva/DESIGN.md +157 -0
  58. package/dist/designer/data/systems/canva/components.html +461 -0
  59. package/dist/designer/data/systems/canva/tokens.css +147 -0
  60. package/dist/designer/data/systems/cisco/DESIGN.md +201 -0
  61. package/dist/designer/data/systems/cisco/components.html +342 -0
  62. package/dist/designer/data/systems/cisco/tokens.css +64 -0
  63. package/dist/designer/data/systems/claude/DESIGN.md +315 -0
  64. package/dist/designer/data/systems/claude/components.html +483 -0
  65. package/dist/designer/data/systems/claude/tokens.css +130 -0
  66. package/dist/designer/data/systems/clay/DESIGN.md +307 -0
  67. package/dist/designer/data/systems/clay/components.html +136 -0
  68. package/dist/designer/data/systems/clay/tokens.css +63 -0
  69. package/dist/designer/data/systems/claymorphism/DESIGN.md +71 -0
  70. package/dist/designer/data/systems/claymorphism/components.html +136 -0
  71. package/dist/designer/data/systems/claymorphism/tokens.css +63 -0
  72. package/dist/designer/data/systems/clean/DESIGN.md +71 -0
  73. package/dist/designer/data/systems/clean/components.html +136 -0
  74. package/dist/designer/data/systems/clean/tokens.css +63 -0
  75. package/dist/designer/data/systems/clickhouse/DESIGN.md +284 -0
  76. package/dist/designer/data/systems/clickhouse/components.html +506 -0
  77. package/dist/designer/data/systems/clickhouse/tokens.css +135 -0
  78. package/dist/designer/data/systems/cohere/DESIGN.md +269 -0
  79. package/dist/designer/data/systems/cohere/components.html +353 -0
  80. package/dist/designer/data/systems/cohere/tokens.css +126 -0
  81. package/dist/designer/data/systems/coinbase/DESIGN.md +132 -0
  82. package/dist/designer/data/systems/coinbase/components.html +501 -0
  83. package/dist/designer/data/systems/coinbase/tokens.css +257 -0
  84. package/dist/designer/data/systems/colorful/DESIGN.md +71 -0
  85. package/dist/designer/data/systems/colorful/components.html +136 -0
  86. package/dist/designer/data/systems/colorful/tokens.css +63 -0
  87. package/dist/designer/data/systems/composio/DESIGN.md +310 -0
  88. package/dist/designer/data/systems/composio/components.html +342 -0
  89. package/dist/designer/data/systems/composio/tokens.css +64 -0
  90. package/dist/designer/data/systems/contemporary/DESIGN.md +71 -0
  91. package/dist/designer/data/systems/contemporary/components.html +136 -0
  92. package/dist/designer/data/systems/contemporary/tokens.css +63 -0
  93. package/dist/designer/data/systems/corporate/DESIGN.md +71 -0
  94. package/dist/designer/data/systems/corporate/components.html +136 -0
  95. package/dist/designer/data/systems/corporate/tokens.css +63 -0
  96. package/dist/designer/data/systems/cosmic/DESIGN.md +71 -0
  97. package/dist/designer/data/systems/cosmic/components.html +136 -0
  98. package/dist/designer/data/systems/cosmic/tokens.css +63 -0
  99. package/dist/designer/data/systems/creative/DESIGN.md +71 -0
  100. package/dist/designer/data/systems/creative/components.html +136 -0
  101. package/dist/designer/data/systems/creative/tokens.css +63 -0
  102. package/dist/designer/data/systems/cursor/DESIGN.md +312 -0
  103. package/dist/designer/data/systems/cursor/components.html +654 -0
  104. package/dist/designer/data/systems/cursor/tokens.css +218 -0
  105. package/dist/designer/data/systems/dashboard/DESIGN.md +71 -0
  106. package/dist/designer/data/systems/dashboard/components.html +154 -0
  107. package/dist/designer/data/systems/dashboard/tokens.css +63 -0
  108. package/dist/designer/data/systems/default/DESIGN.md +62 -0
  109. package/dist/designer/data/systems/default/components.html +523 -0
  110. package/dist/designer/data/systems/default/tokens.css +200 -0
  111. package/dist/designer/data/systems/discord/DESIGN.md +162 -0
  112. package/dist/designer/data/systems/discord/components.html +359 -0
  113. package/dist/designer/data/systems/discord/tokens.css +125 -0
  114. package/dist/designer/data/systems/dithered/DESIGN.md +71 -0
  115. package/dist/designer/data/systems/dithered/components.html +136 -0
  116. package/dist/designer/data/systems/dithered/tokens.css +63 -0
  117. package/dist/designer/data/systems/doodle/DESIGN.md +71 -0
  118. package/dist/designer/data/systems/doodle/components.html +136 -0
  119. package/dist/designer/data/systems/doodle/tokens.css +63 -0
  120. package/dist/designer/data/systems/dramatic/DESIGN.md +71 -0
  121. package/dist/designer/data/systems/dramatic/components.html +136 -0
  122. package/dist/designer/data/systems/dramatic/tokens.css +63 -0
  123. package/dist/designer/data/systems/duolingo/DESIGN.md +154 -0
  124. package/dist/designer/data/systems/duolingo/components.html +532 -0
  125. package/dist/designer/data/systems/duolingo/tokens.css +130 -0
  126. package/dist/designer/data/systems/editorial/DESIGN.md +71 -0
  127. package/dist/designer/data/systems/editorial/components.html +154 -0
  128. package/dist/designer/data/systems/editorial/tokens.css +63 -0
  129. package/dist/designer/data/systems/elegant/DESIGN.md +71 -0
  130. package/dist/designer/data/systems/elegant/components.html +136 -0
  131. package/dist/designer/data/systems/elegant/tokens.css +63 -0
  132. package/dist/designer/data/systems/elevenlabs/DESIGN.md +268 -0
  133. package/dist/designer/data/systems/elevenlabs/components.html +342 -0
  134. package/dist/designer/data/systems/elevenlabs/tokens.css +127 -0
  135. package/dist/designer/data/systems/energetic/DESIGN.md +72 -0
  136. package/dist/designer/data/systems/energetic/components.html +136 -0
  137. package/dist/designer/data/systems/energetic/tokens.css +63 -0
  138. package/dist/designer/data/systems/enterprise/DESIGN.md +71 -0
  139. package/dist/designer/data/systems/enterprise/components.html +154 -0
  140. package/dist/designer/data/systems/enterprise/tokens.css +63 -0
  141. package/dist/designer/data/systems/expo/DESIGN.md +284 -0
  142. package/dist/designer/data/systems/expo/components.html +342 -0
  143. package/dist/designer/data/systems/expo/tokens.css +64 -0
  144. package/dist/designer/data/systems/expressive/DESIGN.md +71 -0
  145. package/dist/designer/data/systems/expressive/components.html +136 -0
  146. package/dist/designer/data/systems/expressive/tokens.css +63 -0
  147. package/dist/designer/data/systems/fantasy/DESIGN.md +71 -0
  148. package/dist/designer/data/systems/fantasy/components.html +136 -0
  149. package/dist/designer/data/systems/fantasy/tokens.css +63 -0
  150. package/dist/designer/data/systems/ferrari/DESIGN.md +317 -0
  151. package/dist/designer/data/systems/ferrari/components.html +342 -0
  152. package/dist/designer/data/systems/ferrari/tokens.css +64 -0
  153. package/dist/designer/data/systems/figma/DESIGN.md +223 -0
  154. package/dist/designer/data/systems/figma/components.html +344 -0
  155. package/dist/designer/data/systems/figma/tokens.css +126 -0
  156. package/dist/designer/data/systems/flat/DESIGN.md +71 -0
  157. package/dist/designer/data/systems/flat/components.html +136 -0
  158. package/dist/designer/data/systems/flat/tokens.css +63 -0
  159. package/dist/designer/data/systems/framer/DESIGN.md +249 -0
  160. package/dist/designer/data/systems/framer/components.html +438 -0
  161. package/dist/designer/data/systems/framer/tokens.css +238 -0
  162. package/dist/designer/data/systems/friendly/DESIGN.md +71 -0
  163. package/dist/designer/data/systems/friendly/components.html +136 -0
  164. package/dist/designer/data/systems/friendly/tokens.css +63 -0
  165. package/dist/designer/data/systems/futuristic/DESIGN.md +71 -0
  166. package/dist/designer/data/systems/futuristic/components.html +136 -0
  167. package/dist/designer/data/systems/futuristic/tokens.css +63 -0
  168. package/dist/designer/data/systems/github/DESIGN.md +155 -0
  169. package/dist/designer/data/systems/github/components.html +383 -0
  170. package/dist/designer/data/systems/github/tokens.css +125 -0
  171. package/dist/designer/data/systems/glassmorphism/DESIGN.md +71 -0
  172. package/dist/designer/data/systems/glassmorphism/components.html +154 -0
  173. package/dist/designer/data/systems/glassmorphism/tokens.css +63 -0
  174. package/dist/designer/data/systems/gradient/DESIGN.md +71 -0
  175. package/dist/designer/data/systems/gradient/components.html +154 -0
  176. package/dist/designer/data/systems/gradient/tokens.css +63 -0
  177. package/dist/designer/data/systems/hashicorp/DESIGN.md +281 -0
  178. package/dist/designer/data/systems/hashicorp/components.html +502 -0
  179. package/dist/designer/data/systems/hashicorp/tokens.css +272 -0
  180. package/dist/designer/data/systems/hud/DESIGN.md +173 -0
  181. package/dist/designer/data/systems/hud/components.html +136 -0
  182. package/dist/designer/data/systems/hud/tokens.css +63 -0
  183. package/dist/designer/data/systems/huggingface/DESIGN.md +149 -0
  184. package/dist/designer/data/systems/huggingface/components.html +346 -0
  185. package/dist/designer/data/systems/huggingface/tokens.css +125 -0
  186. package/dist/designer/data/systems/ibm/DESIGN.md +335 -0
  187. package/dist/designer/data/systems/ibm/components.html +342 -0
  188. package/dist/designer/data/systems/ibm/tokens.css +64 -0
  189. package/dist/designer/data/systems/intercom/DESIGN.md +149 -0
  190. package/dist/designer/data/systems/intercom/components.html +557 -0
  191. package/dist/designer/data/systems/intercom/tokens.css +150 -0
  192. package/dist/designer/data/systems/kami/DESIGN.md +410 -0
  193. package/dist/designer/data/systems/kami/components.html +601 -0
  194. package/dist/designer/data/systems/kami/tokens.css +272 -0
  195. package/dist/designer/data/systems/kraken/DESIGN.md +128 -0
  196. package/dist/designer/data/systems/kraken/components.html +342 -0
  197. package/dist/designer/data/systems/kraken/tokens.css +64 -0
  198. package/dist/designer/data/systems/lamborghini/DESIGN.md +291 -0
  199. package/dist/designer/data/systems/lamborghini/components.html +342 -0
  200. package/dist/designer/data/systems/lamborghini/tokens.css +64 -0
  201. package/dist/designer/data/systems/levels/DESIGN.md +71 -0
  202. package/dist/designer/data/systems/levels/components.html +154 -0
  203. package/dist/designer/data/systems/levels/tokens.css +63 -0
  204. package/dist/designer/data/systems/linear-app/DESIGN.md +370 -0
  205. package/dist/designer/data/systems/linear-app/components.html +370 -0
  206. package/dist/designer/data/systems/linear-app/tokens.css +130 -0
  207. package/dist/designer/data/systems/lingo/DESIGN.md +71 -0
  208. package/dist/designer/data/systems/lingo/components.html +154 -0
  209. package/dist/designer/data/systems/lingo/tokens.css +63 -0
  210. package/dist/designer/data/systems/loom/DESIGN.md +201 -0
  211. package/dist/designer/data/systems/loom/components.html +446 -0
  212. package/dist/designer/data/systems/loom/tokens.css +138 -0
  213. package/dist/designer/data/systems/lovable/DESIGN.md +301 -0
  214. package/dist/designer/data/systems/lovable/components.html +441 -0
  215. package/dist/designer/data/systems/lovable/tokens.css +258 -0
  216. package/dist/designer/data/systems/luxury/DESIGN.md +71 -0
  217. package/dist/designer/data/systems/luxury/components.html +154 -0
  218. package/dist/designer/data/systems/luxury/tokens.css +63 -0
  219. package/dist/designer/data/systems/mastercard/DESIGN.md +368 -0
  220. package/dist/designer/data/systems/mastercard/components.html +342 -0
  221. package/dist/designer/data/systems/mastercard/tokens.css +64 -0
  222. package/dist/designer/data/systems/material/DESIGN.md +71 -0
  223. package/dist/designer/data/systems/material/components.html +154 -0
  224. package/dist/designer/data/systems/material/tokens.css +63 -0
  225. package/dist/designer/data/systems/meta/DESIGN.md +369 -0
  226. package/dist/designer/data/systems/meta/components.html +398 -0
  227. package/dist/designer/data/systems/meta/tokens.css +263 -0
  228. package/dist/designer/data/systems/minimal/DESIGN.md +71 -0
  229. package/dist/designer/data/systems/minimal/components.html +154 -0
  230. package/dist/designer/data/systems/minimal/tokens.css +63 -0
  231. package/dist/designer/data/systems/minimax/DESIGN.md +260 -0
  232. package/dist/designer/data/systems/minimax/components.html +590 -0
  233. package/dist/designer/data/systems/minimax/tokens.css +148 -0
  234. package/dist/designer/data/systems/mintlify/DESIGN.md +329 -0
  235. package/dist/designer/data/systems/mintlify/components.html +737 -0
  236. package/dist/designer/data/systems/mintlify/tokens.css +256 -0
  237. package/dist/designer/data/systems/miro/DESIGN.md +111 -0
  238. package/dist/designer/data/systems/miro/components.html +342 -0
  239. package/dist/designer/data/systems/miro/tokens.css +64 -0
  240. package/dist/designer/data/systems/mission-control/DESIGN.md +474 -0
  241. package/dist/designer/data/systems/mission-control/components.html +136 -0
  242. package/dist/designer/data/systems/mission-control/tokens.css +63 -0
  243. package/dist/designer/data/systems/mistral-ai/DESIGN.md +264 -0
  244. package/dist/designer/data/systems/mistral-ai/components.html +338 -0
  245. package/dist/designer/data/systems/mistral-ai/tokens.css +125 -0
  246. package/dist/designer/data/systems/modern/DESIGN.md +71 -0
  247. package/dist/designer/data/systems/modern/components.html +154 -0
  248. package/dist/designer/data/systems/modern/tokens.css +63 -0
  249. package/dist/designer/data/systems/mongodb/DESIGN.md +269 -0
  250. package/dist/designer/data/systems/mongodb/components.html +462 -0
  251. package/dist/designer/data/systems/mongodb/tokens.css +176 -0
  252. package/dist/designer/data/systems/mono/DESIGN.md +71 -0
  253. package/dist/designer/data/systems/mono/components.html +136 -0
  254. package/dist/designer/data/systems/mono/tokens.css +63 -0
  255. package/dist/designer/data/systems/neobrutalism/DESIGN.md +71 -0
  256. package/dist/designer/data/systems/neobrutalism/components.html +136 -0
  257. package/dist/designer/data/systems/neobrutalism/tokens.css +63 -0
  258. package/dist/designer/data/systems/neon/DESIGN.md +71 -0
  259. package/dist/designer/data/systems/neon/components.html +136 -0
  260. package/dist/designer/data/systems/neon/tokens.css +63 -0
  261. package/dist/designer/data/systems/neumorphism/DESIGN.md +71 -0
  262. package/dist/designer/data/systems/neumorphism/components.html +136 -0
  263. package/dist/designer/data/systems/neumorphism/tokens.css +63 -0
  264. package/dist/designer/data/systems/nike/DESIGN.md +366 -0
  265. package/dist/designer/data/systems/nike/components.html +512 -0
  266. package/dist/designer/data/systems/nike/tokens.css +304 -0
  267. package/dist/designer/data/systems/notion/DESIGN.md +312 -0
  268. package/dist/designer/data/systems/notion/components.html +413 -0
  269. package/dist/designer/data/systems/notion/tokens.css +130 -0
  270. package/dist/designer/data/systems/nvidia/DESIGN.md +296 -0
  271. package/dist/designer/data/systems/nvidia/components.html +414 -0
  272. package/dist/designer/data/systems/nvidia/tokens.css +133 -0
  273. package/dist/designer/data/systems/ollama/DESIGN.md +270 -0
  274. package/dist/designer/data/systems/ollama/components.html +700 -0
  275. package/dist/designer/data/systems/ollama/tokens.css +242 -0
  276. package/dist/designer/data/systems/openai/DESIGN.md +140 -0
  277. package/dist/designer/data/systems/openai/components.html +382 -0
  278. package/dist/designer/data/systems/openai/tokens.css +133 -0
  279. package/dist/designer/data/systems/opencode-ai/DESIGN.md +284 -0
  280. package/dist/designer/data/systems/opencode-ai/components.html +389 -0
  281. package/dist/designer/data/systems/opencode-ai/tokens.css +126 -0
  282. package/dist/designer/data/systems/pacman/DESIGN.md +71 -0
  283. package/dist/designer/data/systems/pacman/components.html +342 -0
  284. package/dist/designer/data/systems/pacman/tokens.css +64 -0
  285. package/dist/designer/data/systems/paper/DESIGN.md +71 -0
  286. package/dist/designer/data/systems/paper/components.html +136 -0
  287. package/dist/designer/data/systems/paper/tokens.css +63 -0
  288. package/dist/designer/data/systems/perplexity/DESIGN.md +286 -0
  289. package/dist/designer/data/systems/perplexity/components.html +455 -0
  290. package/dist/designer/data/systems/perplexity/tokens.css +151 -0
  291. package/dist/designer/data/systems/perspective/DESIGN.md +71 -0
  292. package/dist/designer/data/systems/perspective/components.html +136 -0
  293. package/dist/designer/data/systems/perspective/tokens.css +63 -0
  294. package/dist/designer/data/systems/pinterest/DESIGN.md +233 -0
  295. package/dist/designer/data/systems/pinterest/components.html +865 -0
  296. package/dist/designer/data/systems/pinterest/tokens.css +262 -0
  297. package/dist/designer/data/systems/playstation/DESIGN.md +367 -0
  298. package/dist/designer/data/systems/playstation/components.html +414 -0
  299. package/dist/designer/data/systems/playstation/tokens.css +150 -0
  300. package/dist/designer/data/systems/posthog/DESIGN.md +259 -0
  301. package/dist/designer/data/systems/posthog/components.html +827 -0
  302. package/dist/designer/data/systems/posthog/tokens.css +272 -0
  303. package/dist/designer/data/systems/premium/DESIGN.md +71 -0
  304. package/dist/designer/data/systems/premium/components.html +154 -0
  305. package/dist/designer/data/systems/premium/tokens.css +63 -0
  306. package/dist/designer/data/systems/professional/DESIGN.md +71 -0
  307. package/dist/designer/data/systems/professional/components.html +136 -0
  308. package/dist/designer/data/systems/professional/tokens.css +63 -0
  309. package/dist/designer/data/systems/publication/DESIGN.md +71 -0
  310. package/dist/designer/data/systems/publication/components.html +154 -0
  311. package/dist/designer/data/systems/publication/tokens.css +63 -0
  312. package/dist/designer/data/systems/raycast/DESIGN.md +271 -0
  313. package/dist/designer/data/systems/raycast/components.html +507 -0
  314. package/dist/designer/data/systems/raycast/tokens.css +143 -0
  315. package/dist/designer/data/systems/refined/DESIGN.md +71 -0
  316. package/dist/designer/data/systems/refined/components.html +136 -0
  317. package/dist/designer/data/systems/refined/tokens.css +63 -0
  318. package/dist/designer/data/systems/renault/DESIGN.md +314 -0
  319. package/dist/designer/data/systems/renault/components.html +154 -0
  320. package/dist/designer/data/systems/renault/tokens.css +63 -0
  321. package/dist/designer/data/systems/replicate/DESIGN.md +264 -0
  322. package/dist/designer/data/systems/replicate/components.html +340 -0
  323. package/dist/designer/data/systems/replicate/tokens.css +125 -0
  324. package/dist/designer/data/systems/resend/DESIGN.md +306 -0
  325. package/dist/designer/data/systems/resend/components.html +839 -0
  326. package/dist/designer/data/systems/resend/tokens.css +353 -0
  327. package/dist/designer/data/systems/retro/DESIGN.md +71 -0
  328. package/dist/designer/data/systems/retro/components.html +136 -0
  329. package/dist/designer/data/systems/retro/tokens.css +63 -0
  330. package/dist/designer/data/systems/revolut/DESIGN.md +188 -0
  331. package/dist/designer/data/systems/revolut/components.html +342 -0
  332. package/dist/designer/data/systems/revolut/tokens.css +64 -0
  333. package/dist/designer/data/systems/runwayml/DESIGN.md +247 -0
  334. package/dist/designer/data/systems/runwayml/components.html +638 -0
  335. package/dist/designer/data/systems/runwayml/tokens.css +204 -0
  336. package/dist/designer/data/systems/sanity/DESIGN.md +360 -0
  337. package/dist/designer/data/systems/sanity/components.html +342 -0
  338. package/dist/designer/data/systems/sanity/tokens.css +64 -0
  339. package/dist/designer/data/systems/sentry/DESIGN.md +265 -0
  340. package/dist/designer/data/systems/sentry/components.html +387 -0
  341. package/dist/designer/data/systems/sentry/tokens.css +219 -0
  342. package/dist/designer/data/systems/shadcn/DESIGN.md +71 -0
  343. package/dist/designer/data/systems/shadcn/components.html +732 -0
  344. package/dist/designer/data/systems/shadcn/tokens.css +255 -0
  345. package/dist/designer/data/systems/shopify/DESIGN.md +353 -0
  346. package/dist/designer/data/systems/shopify/components.html +342 -0
  347. package/dist/designer/data/systems/shopify/tokens.css +141 -0
  348. package/dist/designer/data/systems/simple/DESIGN.md +71 -0
  349. package/dist/designer/data/systems/simple/components.html +136 -0
  350. package/dist/designer/data/systems/simple/tokens.css +63 -0
  351. package/dist/designer/data/systems/skeumorphism/DESIGN.md +71 -0
  352. package/dist/designer/data/systems/skeumorphism/components.html +136 -0
  353. package/dist/designer/data/systems/skeumorphism/tokens.css +63 -0
  354. package/dist/designer/data/systems/slack/DESIGN.md +363 -0
  355. package/dist/designer/data/systems/slack/components.html +387 -0
  356. package/dist/designer/data/systems/slack/tokens.css +127 -0
  357. package/dist/designer/data/systems/sleek/DESIGN.md +71 -0
  358. package/dist/designer/data/systems/sleek/components.html +136 -0
  359. package/dist/designer/data/systems/sleek/tokens.css +63 -0
  360. package/dist/designer/data/systems/spacex/DESIGN.md +197 -0
  361. package/dist/designer/data/systems/spacex/components.html +496 -0
  362. package/dist/designer/data/systems/spacex/tokens.css +154 -0
  363. package/dist/designer/data/systems/spacious/DESIGN.md +71 -0
  364. package/dist/designer/data/systems/spacious/components.html +136 -0
  365. package/dist/designer/data/systems/spacious/tokens.css +63 -0
  366. package/dist/designer/data/systems/spotify/DESIGN.md +249 -0
  367. package/dist/designer/data/systems/spotify/components.html +365 -0
  368. package/dist/designer/data/systems/spotify/tokens.css +127 -0
  369. package/dist/designer/data/systems/starbucks/DESIGN.md +583 -0
  370. package/dist/designer/data/systems/starbucks/components.html +493 -0
  371. package/dist/designer/data/systems/starbucks/tokens.css +182 -0
  372. package/dist/designer/data/systems/storytelling/DESIGN.md +71 -0
  373. package/dist/designer/data/systems/storytelling/components.html +136 -0
  374. package/dist/designer/data/systems/storytelling/tokens.css +63 -0
  375. package/dist/designer/data/systems/stripe/DESIGN.md +325 -0
  376. package/dist/designer/data/systems/stripe/components.html +1018 -0
  377. package/dist/designer/data/systems/stripe/tokens.css +295 -0
  378. package/dist/designer/data/systems/supabase/DESIGN.md +258 -0
  379. package/dist/designer/data/systems/supabase/components.html +741 -0
  380. package/dist/designer/data/systems/supabase/tokens.css +294 -0
  381. package/dist/designer/data/systems/superhuman/DESIGN.md +255 -0
  382. package/dist/designer/data/systems/superhuman/components.html +537 -0
  383. package/dist/designer/data/systems/superhuman/tokens.css +160 -0
  384. package/dist/designer/data/systems/tesla/DESIGN.md +289 -0
  385. package/dist/designer/data/systems/tesla/components.html +724 -0
  386. package/dist/designer/data/systems/tesla/tokens.css +285 -0
  387. package/dist/designer/data/systems/tetris/DESIGN.md +71 -0
  388. package/dist/designer/data/systems/tetris/components.html +342 -0
  389. package/dist/designer/data/systems/tetris/tokens.css +64 -0
  390. package/dist/designer/data/systems/theverge/DESIGN.md +342 -0
  391. package/dist/designer/data/systems/theverge/components.html +342 -0
  392. package/dist/designer/data/systems/theverge/tokens.css +64 -0
  393. package/dist/designer/data/systems/together-ai/DESIGN.md +266 -0
  394. package/dist/designer/data/systems/together-ai/components.html +422 -0
  395. package/dist/designer/data/systems/together-ai/tokens.css +127 -0
  396. package/dist/designer/data/systems/totality-festival/DESIGN.md +206 -0
  397. package/dist/designer/data/systems/totality-festival/components.html +136 -0
  398. package/dist/designer/data/systems/totality-festival/tokens.css +63 -0
  399. package/dist/designer/data/systems/trading-terminal/DESIGN.md +178 -0
  400. package/dist/designer/data/systems/trading-terminal/components.html +154 -0
  401. package/dist/designer/data/systems/trading-terminal/tokens.css +63 -0
  402. package/dist/designer/data/systems/uber/DESIGN.md +298 -0
  403. package/dist/designer/data/systems/uber/components.html +347 -0
  404. package/dist/designer/data/systems/uber/tokens.css +131 -0
  405. package/dist/designer/data/systems/urdu/DESIGN.md +1002 -0
  406. package/dist/designer/data/systems/urdu/components.html +136 -0
  407. package/dist/designer/data/systems/urdu/tokens.css +63 -0
  408. package/dist/designer/data/systems/vercel/DESIGN.md +313 -0
  409. package/dist/designer/data/systems/vercel/components.html +839 -0
  410. package/dist/designer/data/systems/vercel/tokens.css +270 -0
  411. package/dist/designer/data/systems/vibrant/DESIGN.md +71 -0
  412. package/dist/designer/data/systems/vibrant/components.html +136 -0
  413. package/dist/designer/data/systems/vibrant/tokens.css +63 -0
  414. package/dist/designer/data/systems/vintage/DESIGN.md +71 -0
  415. package/dist/designer/data/systems/vintage/components.html +136 -0
  416. package/dist/designer/data/systems/vintage/tokens.css +63 -0
  417. package/dist/designer/data/systems/vodafone/DESIGN.md +426 -0
  418. package/dist/designer/data/systems/vodafone/components.html +342 -0
  419. package/dist/designer/data/systems/vodafone/tokens.css +64 -0
  420. package/dist/designer/data/systems/voltagent/DESIGN.md +326 -0
  421. package/dist/designer/data/systems/voltagent/components.html +154 -0
  422. package/dist/designer/data/systems/voltagent/tokens.css +63 -0
  423. package/dist/designer/data/systems/warm-editorial/DESIGN.md +65 -0
  424. package/dist/designer/data/systems/warm-editorial/components.html +136 -0
  425. package/dist/designer/data/systems/warm-editorial/tokens.css +63 -0
  426. package/dist/designer/data/systems/warp/DESIGN.md +256 -0
  427. package/dist/designer/data/systems/warp/components.html +411 -0
  428. package/dist/designer/data/systems/warp/tokens.css +156 -0
  429. package/dist/designer/data/systems/webex/DESIGN.md +207 -0
  430. package/dist/designer/data/systems/webex/components.html +342 -0
  431. package/dist/designer/data/systems/webex/tokens.css +64 -0
  432. package/dist/designer/data/systems/webflow/DESIGN.md +95 -0
  433. package/dist/designer/data/systems/webflow/components.html +413 -0
  434. package/dist/designer/data/systems/webflow/tokens.css +191 -0
  435. package/dist/designer/data/systems/wechat/DESIGN.md +302 -0
  436. package/dist/designer/data/systems/wechat/components.html +507 -0
  437. package/dist/designer/data/systems/wechat/tokens.css +176 -0
  438. package/dist/designer/data/systems/wired/DESIGN.md +281 -0
  439. package/dist/designer/data/systems/wired/components.html +342 -0
  440. package/dist/designer/data/systems/wired/tokens.css +64 -0
  441. package/dist/designer/data/systems/wise/DESIGN.md +176 -0
  442. package/dist/designer/data/systems/wise/components.html +365 -0
  443. package/dist/designer/data/systems/wise/tokens.css +141 -0
  444. package/dist/designer/data/systems/x-ai/DESIGN.md +260 -0
  445. package/dist/designer/data/systems/x-ai/components.html +460 -0
  446. package/dist/designer/data/systems/x-ai/tokens.css +268 -0
  447. package/dist/designer/data/systems/xiaohongshu/DESIGN.md +402 -0
  448. package/dist/designer/data/systems/xiaohongshu/components.html +865 -0
  449. package/dist/designer/data/systems/xiaohongshu/tokens.css +193 -0
  450. package/dist/designer/data/systems/zapier/DESIGN.md +331 -0
  451. package/dist/designer/data/systems/zapier/components.html +342 -0
  452. package/dist/designer/data/systems/zapier/tokens.css +64 -0
  453. package/dist/designer/guidelines.js +176 -0
  454. package/dist/designer/index.js +236 -0
  455. package/dist/designer/skills.js +1675 -0
  456. package/dist/designer/systems.js +216 -0
  457. package/dist/server/pi-bridge.js +155 -5
  458. package/dist/server/session-stream.js +45 -1
  459. package/package.json +1 -1
@@ -0,0 +1,242 @@
1
+ /* ─────────────────────────────────────────────────────────────────────────
2
+ * design-systems/ollama/tokens.css
3
+ *
4
+ * Structured token bindings for "Ollama" — radical minimalism for the
5
+ * local-LLM runtime. The brand strips every form of decoration away
6
+ * until only the essential tool remains: pure-white canvas, zero
7
+ * chromatic color anywhere on screen, no shadows ever, and a binary
8
+ * radius system that separates "container" (12px) from "interactive"
9
+ * (pill / 9999px). DESIGN.md is emphatic on every front — the absence
10
+ * of design IS the design.
11
+ *
12
+ * Agents are expected to paste the `:root { ... }` block verbatim
13
+ * into the first `<style>` of every artifact they generate against
14
+ * this design system, then reference tokens via `var(--name)` from
15
+ * then on. The corresponding `components.html` mirrors this block
16
+ * with comments stripped; keep the two in sync byte-for-byte after
17
+ * normalization, or the `tokens-fixture-sync` guard will fail.
18
+ *
19
+ * Brand notes (the values below intentionally invert several
20
+ * assumptions baked into the default brand):
21
+ *
22
+ * #Decision 1 — `--bg` is pure white, `--surface` is the lift.
23
+ * Default does the opposite (cream bg, white surface) because
24
+ * it wants card-lift warmth; ollama wants paper-flat purity, so
25
+ * #ffffff is the canvas and #fafafa (Snow) is the subtle lift.
26
+ *
27
+ * #Decision 2 — `--accent` is pure black, not a chromatic CTA hue.
28
+ * Per DESIGN.md §2 the entire interface is grayscale; the only
29
+ * chromatic exception is the keyboard focus ring (#3b82f6 at
30
+ * 50% alpha). The "Download" / "Create account" pills that
31
+ * occupy the accent role are black-on-white, so the accent
32
+ * token binds to #000 and accent-on binds to #fff.
33
+ *
34
+ * #Decision 3 — every interactive radius collapses to pill.
35
+ * DESIGN.md §5 prescribes a strictly binary radius system with
36
+ * no intermediate steps. `--radius-sm`, `--radius-pill` (and
37
+ * `--radius-lg` for consistency) all resolve to 9999px so any
38
+ * component reaching for `--radius-sm` (button, input, tag,
39
+ * chip) inherits the brand stance instead of a stray 8px.
40
+ *
41
+ * #Decision 4 — every elevation tier is the hairline border ring,
42
+ * never a blur shadow. DESIGN.md §6 is explicit: "Ollama uses
43
+ * zero shadows. This is not an oversight — it's a deliberate
44
+ * design decision." `--elev-raised` therefore mirrors
45
+ * `--elev-ring` instead of binding to a blur drop-shadow.
46
+ *
47
+ * #Decision 5 — display font is SF Pro Rounded. The rounded
48
+ * terminals ARE the brand expression — they soften a developer
49
+ * CLI tool into something approachable without compromising the
50
+ * monochrome / minimal philosophy. Falls back to system-ui on
51
+ * non-Apple platforms (the duplicate `system-ui` in the stack is
52
+ * copied verbatim from DESIGN.md §3 to keep the prose ↔ token
53
+ * mapping audit-trivial).
54
+ *
55
+ * Schema slot collapse (see _schema/AGENTS.md for the layer model):
56
+ *
57
+ * --surface-warm aliases --surface — the canvas is grayscale by
58
+ * definition, so there is no warm tertiary surface tier.
59
+ * --border-soft aliases --border — DESIGN.md §6 prescribes a single
60
+ * 1px hairline weight; row separators and card edges share it.
61
+ * --fg-2 / --meta bind to real values — ollama is monochrome but
62
+ * differentiates 4 text levels (black / near-black / Stone /
63
+ * Silver) so the ramp earns independent slots.
64
+ *
65
+ * Keep this file additive: never invent token names not also
66
+ * documented in DESIGN.md or the craft contracts. Ollama is not in
67
+ * BRAND_EXTENSIONS, so any unknown token will fail the
68
+ * `unknown-token-allowlist` guard.
69
+ * ─────────────────────────────────────────────────────────────── */
70
+
71
+ :root {
72
+ /* ─── Surface (3 levels) ────────────────────────────────────────
73
+ * Pure white IS the brand canvas — DESIGN.md §2 is emphatic:
74
+ * "not off-white, not cream, pure white." `--surface` lifts to
75
+ * Snow (#fafafa), the subtlest possible distinction from #fff,
76
+ * for sections and barely-elevated containers. No third tier:
77
+ * `--surface-warm` aliases to surface because the brand is
78
+ * grayscale by definition. */
79
+ --bg: #ffffff;
80
+ --surface: #fafafa;
81
+ --surface-warm: var(--surface); /* alias — ollama is monochrome */
82
+
83
+ /* ─── Foreground ramp (4 levels) ────────────────────────────────
84
+ * The full grayscale text ramp from DESIGN.md §2:
85
+ * Pure Black (#000000) — primary headlines, demanding attention
86
+ * Near Black (#262626) — button text, secondary headline weight
87
+ * Stone (#737373) — body, footer links, de-emphasized copy
88
+ * Silver (#a3a3a3) — placeholders, tertiary metadata
89
+ * The contrast between black and Stone is wide enough that the
90
+ * brand can avoid font-weight ≥600 entirely. */
91
+ --fg: #000000;
92
+ --fg-2: #262626; /* Near Black */
93
+ --muted: #737373; /* Stone */
94
+ --meta: #a3a3a3; /* Silver */
95
+
96
+ /* ─── Border (2 levels) ─────────────────────────────────────────
97
+ * Light Gray (#e5e5e5) is the workhorse containment color and
98
+ * the only border weight ollama permits. DESIGN.md §7 forbids
99
+ * borders heavier than 1px; `--border-soft` aliases to keep that
100
+ * stance intact for components that reach for a softer divider. */
101
+ --border: #e5e5e5;
102
+ --border-soft: var(--border); /* alias — single border weight */
103
+
104
+ /* ─── Accent ────────────────────────────────────────────────────
105
+ * Pure Black IS the accent here — the black-pill CTA ("Download",
106
+ * "Create account") is ollama's maximum-emphasis element. DESIGN.md
107
+ * §2 forbids chromatic color in normal flow, so the accent role
108
+ * is fulfilled by the darkest tone rather than a brand hue.
109
+ *
110
+ * Hover and active states LIGHTEN rather than darken (pure black
111
+ * cannot darken further). The values come from DESIGN.md §2's
112
+ * documented Near-Black (#262626) and Button-Text-Dark (#404040)
113
+ * stops on the gray ramp, so the hover stack stays on-brand
114
+ * instead of formula-derived. */
115
+ --accent: #000000;
116
+ --accent-on: #ffffff;
117
+ --accent-hover: #262626; /* Near Black — subtle lift */
118
+ --accent-active: #404040; /* Button Text Dark — pressed */
119
+
120
+ /* ─── Semantic ──────────────────────────────────────────────────
121
+ * DESIGN.md §2 explicitly says "no semantic red, no accent green"
122
+ * in normal flow — but the schema requires these tokens for error
123
+ * toasts and status indicators that the runtime will eventually
124
+ * surface (model download failures, daemon health checks). Bound
125
+ * to the schema fallbacks so the names resolve; components must
126
+ * use them sparingly and never as decoration. */
127
+ --success: #16a34a;
128
+ --warn: #eab308;
129
+ --danger: #dc2626;
130
+
131
+ /* ─── Typography — fonts ────────────────────────────────────────
132
+ * SF Pro Rounded is Apple's rounded system font — its softened
133
+ * letterforms ARE the brand expression. Renders rounded terminals
134
+ * on macOS/iOS, falls back to the platform system sans elsewhere
135
+ * (the duplicate `system-ui` in the stack mirrors DESIGN.md §3
136
+ * verbatim — redundant but documented).
137
+ *
138
+ * Body text uses ui-sans-serif so reading copy stays platform-
139
+ * native; the emoji fonts in the stack come straight from DESIGN.md
140
+ * §3's body fallback list. Monospace gets a deliberately broad
141
+ * stack so `ollama run …` snippets render consistently across
142
+ * macOS / Linux / Windows. */
143
+ --font-display: "SF Pro Rounded", system-ui, -apple-system, system-ui;
144
+ --font-body: ui-sans-serif, system-ui, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
145
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
146
+
147
+ /* Type scale (px) — direct copy of DESIGN.md §3 hierarchy table.
148
+ * Ollama's display tier tops out at 48px (versus default's 64px)
149
+ * because the homepage is intentionally short and uncluttered;
150
+ * even the hero stays restrained. */
151
+ --text-xs: 12px; /* Small */
152
+ --text-sm: 14px; /* Caption */
153
+ --text-base: 16px; /* Body / Link */
154
+ --text-lg: 18px; /* Body Large */
155
+ --text-xl: 24px; /* Card Title */
156
+ --text-2xl: 30px; /* Sub-heading */
157
+ --text-3xl: 36px; /* Section Heading */
158
+ --text-4xl: 48px; /* Display / Hero */
159
+
160
+ /* Leading & tracking — DESIGN.md §3 prescribes tight (1.0) for
161
+ * display and comfortable (1.5) for body. Tracking is `normal`
162
+ * across every tier (no negative letter-spacing on display, no
163
+ * uppercase tightening). */
164
+ --leading-body: 1.5;
165
+ --leading-tight: 1;
166
+ --tracking-display: 0;
167
+
168
+ /* ─── Spacing ────────────────────────────────────────────────────
169
+ * 4px base unit. DESIGN.md §5 defines an extended scale up to
170
+ * 112px for section rhythm; the shared schema caps at --space-12
171
+ * so the wider tiers express themselves through the section-y
172
+ * tokens below. */
173
+ --space-1: 4px;
174
+ --space-2: 8px;
175
+ --space-3: 12px;
176
+ --space-4: 16px;
177
+ --space-5: 20px;
178
+ --space-6: 24px;
179
+ --space-8: 32px;
180
+ --space-12: 48px;
181
+
182
+ /* DESIGN.md §5 is direct — section vertical spacing is "very
183
+ * generous (88–112px)" because "the white space IS the brand."
184
+ * Desktop sits at the top of that range deliberately; tablet and
185
+ * phone collapse but stay roomy. */
186
+ --section-y-desktop: 112px;
187
+ --section-y-tablet: 88px;
188
+ --section-y-phone: 48px;
189
+
190
+ /* ─── Radius (binary system) ───────────────────────────────────
191
+ * DESIGN.md §5 prescribes a strictly binary radius system: 12px
192
+ * for containers, 9999px (pill) for everything interactive. No
193
+ * intermediate values exist on this brand. Every interactive
194
+ * radius — `--radius-sm`, `--radius-lg`, `--radius-pill` —
195
+ * resolves to the pill value so a component reaching for the
196
+ * small button radius inherits the brand stance. `--radius-md`
197
+ * holds the 12px container radius. */
198
+ --radius-sm: 9999px;
199
+ --radius-md: 12px;
200
+ --radius-lg: 9999px;
201
+ --radius-pill: 9999px;
202
+
203
+ /* ─── Elevation ────────────────────────────────────────────────
204
+ * "Ollama uses zero shadows. This is not an oversight — it's a
205
+ * deliberate design decision." (DESIGN.md §6) Every level of
206
+ * depth comes from a 1px hairline border ring instead of a blur
207
+ * shadow. `--elev-raised` mirrors `--elev-ring` so components
208
+ * targeting a raised tier still receive the only legitimate
209
+ * depth treatment ollama permits. */
210
+ --elev-flat: none;
211
+ --elev-ring: 0 0 0 1px var(--border);
212
+ --elev-raised: 0 0 0 1px var(--border);
213
+
214
+ /* ─── Focus ring ───────────────────────────────────────────────
215
+ * The single chromatic exception in the entire system — Tailwind's
216
+ * default ring (#3b82f6 at 50% transparency). DESIGN.md §2 explicitly
217
+ * carves this out for keyboard accessibility; never visible during
218
+ * normal interaction flow. The raw hex is documented inside the
219
+ * token expression so brand-aware components can stay grayscale
220
+ * elsewhere. */
221
+ --focus-ring: 0 0 0 3px color-mix(in oklab, #3b82f6, transparent 50%);
222
+
223
+ /* ─── Motion ───────────────────────────────────────────────────
224
+ * DESIGN.md §7 is direct: "interactions should feel instant and
225
+ * direct." Durations stay short enough that transitions register
226
+ * as responsiveness rather than animation. The easing curve stays
227
+ * on the standard ease-out so the snap still feels mechanical
228
+ * rather than abrupt. */
229
+ --motion-fast: 100ms;
230
+ --motion-base: 140ms;
231
+ --ease-standard: cubic-bezier(0.2, 0, 0, 1);
232
+
233
+ /* ─── Layout ───────────────────────────────────────────────────
234
+ * Max container width sits at the upper end of DESIGN.md §5's
235
+ * "~1024–1280px" range; gutters scale down through the breakpoints
236
+ * but stay generous to preserve the "white space IS the brand"
237
+ * stance. */
238
+ --container-max: 1280px;
239
+ --container-gutter-desktop: 24px;
240
+ --container-gutter-tablet: 16px;
241
+ --container-gutter-phone: 12px;
242
+ }
@@ -0,0 +1,140 @@
1
+ # Design System Inspired by OpenAI
2
+
3
+ > Category: AI & LLM
4
+ > Calm, near-monochrome system anchored in deep teal-black with generous white space and editorial typography.
5
+
6
+ ## 1. Visual Theme & Atmosphere
7
+
8
+ OpenAI's product surface reads like a research lab dressed for the public — clinical, restrained, deliberately quiet. The page background is a true white (`#ffffff`) layered against a near-black ink (`#0d0d0d`) with a subtle teal undertone, so even the text feels slightly cooled rather than aggressively dark. The result is a chromatic neutrality that puts model output, code, and prose front and center, not the chrome around them.
9
+
10
+ The signature move is the use of **Söhne** (or its system stand-in `inter`) at restrained weights — 400 for body, 500 for nav and labels, 600 for emphasis — paired with **Signifier**, a contemporary serif used for editorial display. Where most AI brands lean futuristic, OpenAI's serif headlines give the product a quietly literary tone, as if every announcement is an essay.
11
+
12
+ The shape system is uniformly soft: 8px–12px radii, 9999px pills for tags and chips, no harsh corners anywhere. Section transitions are denoted by whitespace rather than dividers; when borders appear they are `#e5e5e5` hairlines that read as the absence of color rather than its presence.
13
+
14
+ **Key Characteristics:**
15
+ - True white canvas (`#ffffff`) with deep teal-black ink (`#0d0d0d`)
16
+ - Söhne / Inter at modest weights (400, 500, 600) — restraint over assertion
17
+ - Signifier serif for editorial display headlines
18
+ - Soft 8–12px radii everywhere; 9999px pills for chips
19
+ - Hairline borders (`#e5e5e5`) used sparingly; whitespace as primary divider
20
+ - Single-color illustrations in deep teal — no gradients in marks
21
+ - Generous line-height (1.55–1.65) and tracking near zero
22
+
23
+ ## 2. Color Palette & Roles
24
+
25
+ ### Primary
26
+ - **Pure White** (`#ffffff`): Primary background, card surface, button background.
27
+ - **Ink Black** (`#0d0d0d`): Primary text, brand mark, primary CTA.
28
+ - **Soft Black** (`#1a1a1a`): Secondary heading, alternative ink for non-critical text.
29
+
30
+ ### Surface & Background
31
+ - **Mist** (`#fafafa`): Section break background, footer surface.
32
+ - **Pearl** (`#f5f5f5`): Card surface, elevated panel.
33
+ - **Cloud** (`#ececec`): Disabled background, divider tint.
34
+
35
+ ### Brand Accent
36
+ - **OpenAI Teal** (`#10a37f`): Brand primary, link, highlight badge — the lone color in an otherwise neutral system.
37
+ - **Teal Deep** (`#0a7a5e`): Hover and pressed state for the brand color.
38
+ - **Teal Soft** (`#e8f5f0`): Surface tint for success badges, highlight callouts.
39
+
40
+ ### Neutrals & Text
41
+ - **Graphite** (`#3c3c3c`): Body text, default reading color.
42
+ - **Slate** (`#6e6e6e`): Secondary text, captions, metadata.
43
+ - **Ash** (`#9b9b9b`): Tertiary text, placeholder, disabled label.
44
+ - **Stone** (`#c4c4c4`): Decorative dividers, faint icons.
45
+
46
+ ### Semantic & Border
47
+ - **Border Hairline** (`#e5e5e5`): Standard hairline separator.
48
+ - **Border Soft** (`#ededed`): Card outline on white surface.
49
+ - **Error** (`#ef4146`): Validation, destructive action.
50
+ - **Warning** (`#f5a623`): Soft amber for advisory states.
51
+ - **Info** (`#2563eb`): Informational link tone (used sparingly; teal still wins).
52
+
53
+ ## 3. Typography Rules
54
+
55
+ ### Font Family
56
+ - **Display / Editorial**: `Signifier`, with fallback: `'Source Serif Pro', Georgia, serif`
57
+ - **Body / UI**: `Söhne`, with fallback: `Inter, system-ui, -apple-system, 'Segoe UI', sans-serif`
58
+ - **Code / Mono**: `Söhne Mono`, with fallback: `ui-monospace, 'JetBrains Mono', Menlo, Consolas, monospace`
59
+
60
+ ### Hierarchy
61
+
62
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
63
+ |------|------|------|--------|-------------|----------------|-------|
64
+ | Display | Signifier | 56px (3.5rem) | 400 | 1.08 | -0.02em | Editorial hero, announcement titles |
65
+ | H1 | Söhne | 40px (2.5rem) | 600 | 1.15 | -0.01em | Page heading |
66
+ | H2 | Söhne | 28px (1.75rem) | 600 | 1.2 | -0.005em | Section heading |
67
+ | H3 | Söhne | 20px (1.25rem) | 600 | 1.3 | normal | Sub-section |
68
+ | Body Large | Söhne | 18px (1.125rem) | 400 | 1.6 | normal | Lede paragraphs |
69
+ | Body | Söhne | 16px (1rem) | 400 | 1.65 | normal | Standard reading text |
70
+ | Body Small | Söhne | 14px (0.875rem) | 400 | 1.55 | normal | Card body, dense UI |
71
+ | Caption | Söhne | 13px (0.8125rem) | 500 | 1.4 | 0.01em | Metadata, badges |
72
+ | Label | Söhne | 12px (0.75rem) | 500 | 1.3 | 0.04em | Eyebrow, uppercase nav links |
73
+ | Code | Söhne Mono | 14px (0.875rem) | 400 | 1.55 | normal | Code blocks, terminal output |
74
+
75
+ ### Principles
76
+ - **Restraint as identity**: weights cap at 600; 700+ feels off-brand. Hierarchy comes from size and color, not weight.
77
+ - **Serif for soul, sans for system**: Signifier appears only in editorial display moments. The product UI is sans-only.
78
+ - **Negative tracking on display**: -0.02em on display sizes; tracking returns to zero by 16px.
79
+
80
+ ## 4. Component Stylings
81
+
82
+ ### Buttons
83
+
84
+ **Primary**
85
+ - Background: `#0d0d0d`
86
+ - Text: `#ffffff`
87
+ - Padding: 10px 18px
88
+ - Radius: 9999px (full pill) on chips, 12px on rectangular CTAs
89
+ - Hover: `#1a1a1a` background
90
+ - Use: Primary CTA, "Try ChatGPT", "Sign in"
91
+
92
+ **Secondary**
93
+ - Background: `#ffffff`
94
+ - Text: `#0d0d0d`
95
+ - Border: 1px solid `#e5e5e5`
96
+ - Padding: 10px 18px
97
+ - Radius: 12px
98
+ - Hover: background `#fafafa`, border `#d4d4d4`
99
+
100
+ **Brand Accent**
101
+ - Background: `#10a37f`
102
+ - Text: `#ffffff`
103
+ - Padding: 10px 18px
104
+ - Radius: 12px
105
+ - Hover: `#0a7a5e`
106
+ - Use: Highlighted upgrade CTA, success path
107
+
108
+ ### Cards
109
+ - Background: `#ffffff`
110
+ - Border: 1px solid `#ededed`
111
+ - Radius: 16px
112
+ - Padding: 24px–32px
113
+ - Shadow: none by default; on hover `0 4px 16px rgba(13,13,13,0.06)`
114
+
115
+ ### Inputs
116
+ - Background: `#ffffff`
117
+ - Border: 1px solid `#e5e5e5`
118
+ - Radius: 12px
119
+ - Padding: 12px 14px
120
+ - Focus: border `#10a37f`, ring `0 0 0 3px rgba(16,163,127,0.12)`
121
+
122
+ ### Pills & Tags
123
+ - Background: `#f5f5f5`
124
+ - Text: `#3c3c3c`
125
+ - Padding: 4px 10px
126
+ - Radius: 9999px
127
+ - Font: 12px / 500
128
+
129
+ ## 5. Spacing & Layout
130
+
131
+ - **Base unit**: 4px. Scale: 4, 8, 12, 16, 24, 32, 48, 64, 96, 128.
132
+ - **Container**: max-width 1200px, 24px gutter on mobile, 48px on desktop.
133
+ - **Section rhythm**: 96–128px vertical between major sections; 64px on mobile.
134
+ - **Grid**: 12-column desktop, 4-column mobile, 24px gap.
135
+
136
+ ## 6. Motion
137
+
138
+ - **Duration**: 150–220ms for hover; 280–360ms for layout transitions.
139
+ - **Easing**: `cubic-bezier(0.16, 1, 0.3, 1)` (smooth out) for entrances.
140
+ - **Restraint**: no parallax, no scroll-jacking. Subtle fade and translate only.