@hex-core/themes 0.1.1 → 0.2.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 (578) hide show
  1. package/README.md +5 -1
  2. package/dist/chunk-2LU3ENLP.js +68 -0
  3. package/dist/chunk-2LU3ENLP.js.map +1 -0
  4. package/dist/chunk-2OH25A4J.js +68 -0
  5. package/dist/chunk-2OH25A4J.js.map +1 -0
  6. package/dist/chunk-2SI7O4FQ.js +68 -0
  7. package/dist/chunk-2SI7O4FQ.js.map +1 -0
  8. package/dist/chunk-4LQ3BH7F.js +68 -0
  9. package/dist/chunk-4LQ3BH7F.js.map +1 -0
  10. package/dist/chunk-4QXKFLEQ.js +68 -0
  11. package/dist/chunk-4QXKFLEQ.js.map +1 -0
  12. package/dist/chunk-5BH5ZMDH.js +68 -0
  13. package/dist/chunk-5BH5ZMDH.js.map +1 -0
  14. package/dist/chunk-5O65TVZP.js +68 -0
  15. package/dist/chunk-5O65TVZP.js.map +1 -0
  16. package/dist/chunk-5TDK4XMA.js +68 -0
  17. package/dist/chunk-5TDK4XMA.js.map +1 -0
  18. package/dist/chunk-72IPJZ6V.js +68 -0
  19. package/dist/chunk-72IPJZ6V.js.map +1 -0
  20. package/dist/chunk-73N7YFTY.js +68 -0
  21. package/dist/chunk-73N7YFTY.js.map +1 -0
  22. package/dist/chunk-7MPAMAFC.js +68 -0
  23. package/dist/chunk-7MPAMAFC.js.map +1 -0
  24. package/dist/chunk-7OAKNGRU.js +68 -0
  25. package/dist/chunk-7OAKNGRU.js.map +1 -0
  26. package/dist/chunk-7YP2HHHV.js +68 -0
  27. package/dist/chunk-7YP2HHHV.js.map +1 -0
  28. package/dist/chunk-7YPET3HT.js +68 -0
  29. package/dist/chunk-7YPET3HT.js.map +1 -0
  30. package/dist/chunk-7ZAFN5WE.js +68 -0
  31. package/dist/chunk-7ZAFN5WE.js.map +1 -0
  32. package/dist/chunk-ATBX7KXM.js +68 -0
  33. package/dist/chunk-ATBX7KXM.js.map +1 -0
  34. package/dist/chunk-BCLCH6JZ.js +68 -0
  35. package/dist/chunk-BCLCH6JZ.js.map +1 -0
  36. package/dist/chunk-BH7IPZBT.js +68 -0
  37. package/dist/chunk-BH7IPZBT.js.map +1 -0
  38. package/dist/chunk-BK432RWC.js +68 -0
  39. package/dist/chunk-BK432RWC.js.map +1 -0
  40. package/dist/chunk-BMLLM5GC.js +68 -0
  41. package/dist/chunk-BMLLM5GC.js.map +1 -0
  42. package/dist/chunk-CEQN6EQY.js +68 -0
  43. package/dist/chunk-CEQN6EQY.js.map +1 -0
  44. package/dist/chunk-CFLNGBY5.js +68 -0
  45. package/dist/chunk-CFLNGBY5.js.map +1 -0
  46. package/dist/chunk-CTI3W357.js +68 -0
  47. package/dist/chunk-CTI3W357.js.map +1 -0
  48. package/dist/chunk-CUO2HNBR.js +68 -0
  49. package/dist/chunk-CUO2HNBR.js.map +1 -0
  50. package/dist/chunk-D5JFUYFN.js +68 -0
  51. package/dist/chunk-D5JFUYFN.js.map +1 -0
  52. package/dist/chunk-DE2NWOEB.js +68 -0
  53. package/dist/chunk-DE2NWOEB.js.map +1 -0
  54. package/dist/chunk-DLLP5KXF.js +68 -0
  55. package/dist/chunk-DLLP5KXF.js.map +1 -0
  56. package/dist/chunk-E26YKJRK.js +68 -0
  57. package/dist/chunk-E26YKJRK.js.map +1 -0
  58. package/dist/chunk-EV4APPVD.js +528 -0
  59. package/dist/chunk-EV4APPVD.js.map +1 -0
  60. package/dist/chunk-EZFP45CP.js +68 -0
  61. package/dist/chunk-EZFP45CP.js.map +1 -0
  62. package/dist/chunk-FE2IENES.js +68 -0
  63. package/dist/chunk-FE2IENES.js.map +1 -0
  64. package/dist/chunk-FK5WSFAA.js +68 -0
  65. package/dist/chunk-FK5WSFAA.js.map +1 -0
  66. package/dist/chunk-G2V6XAJ7.js +68 -0
  67. package/dist/chunk-G2V6XAJ7.js.map +1 -0
  68. package/dist/chunk-GAOOBTSH.js +68 -0
  69. package/dist/chunk-GAOOBTSH.js.map +1 -0
  70. package/dist/chunk-GAQ6LS55.js +68 -0
  71. package/dist/chunk-GAQ6LS55.js.map +1 -0
  72. package/dist/chunk-GSTGBWQZ.js +68 -0
  73. package/dist/chunk-GSTGBWQZ.js.map +1 -0
  74. package/dist/chunk-I267MA2D.js +68 -0
  75. package/dist/chunk-I267MA2D.js.map +1 -0
  76. package/dist/chunk-I4Z7DY3Z.js +68 -0
  77. package/dist/chunk-I4Z7DY3Z.js.map +1 -0
  78. package/dist/chunk-I6H6W42Y.js +68 -0
  79. package/dist/chunk-I6H6W42Y.js.map +1 -0
  80. package/dist/chunk-IJBNLZQH.js +68 -0
  81. package/dist/chunk-IJBNLZQH.js.map +1 -0
  82. package/dist/chunk-IRDDULX7.js +68 -0
  83. package/dist/chunk-IRDDULX7.js.map +1 -0
  84. package/dist/chunk-IXKXYUXQ.js +68 -0
  85. package/dist/chunk-IXKXYUXQ.js.map +1 -0
  86. package/dist/chunk-JZEZHM5N.js +68 -0
  87. package/dist/chunk-JZEZHM5N.js.map +1 -0
  88. package/dist/chunk-KCI73LIZ.js +68 -0
  89. package/dist/chunk-KCI73LIZ.js.map +1 -0
  90. package/dist/chunk-KDS62BXD.js +68 -0
  91. package/dist/chunk-KDS62BXD.js.map +1 -0
  92. package/dist/chunk-KLNZW4GO.js +68 -0
  93. package/dist/chunk-KLNZW4GO.js.map +1 -0
  94. package/dist/chunk-KXBE5FQ7.js +68 -0
  95. package/dist/chunk-KXBE5FQ7.js.map +1 -0
  96. package/dist/chunk-KZDIZ2FL.js +68 -0
  97. package/dist/chunk-KZDIZ2FL.js.map +1 -0
  98. package/dist/chunk-LDZC2QYF.js +68 -0
  99. package/dist/chunk-LDZC2QYF.js.map +1 -0
  100. package/dist/chunk-LNKOIFH4.js +68 -0
  101. package/dist/chunk-LNKOIFH4.js.map +1 -0
  102. package/dist/chunk-MVMZS3PQ.js +68 -0
  103. package/dist/chunk-MVMZS3PQ.js.map +1 -0
  104. package/dist/chunk-NIED6GXO.js +68 -0
  105. package/dist/chunk-NIED6GXO.js.map +1 -0
  106. package/dist/chunk-NKTZOR54.js +68 -0
  107. package/dist/chunk-NKTZOR54.js.map +1 -0
  108. package/dist/chunk-OCQYO6PW.js +68 -0
  109. package/dist/chunk-OCQYO6PW.js.map +1 -0
  110. package/dist/chunk-PJAJD5VJ.js +68 -0
  111. package/dist/chunk-PJAJD5VJ.js.map +1 -0
  112. package/dist/chunk-PN567MCL.js +68 -0
  113. package/dist/chunk-PN567MCL.js.map +1 -0
  114. package/dist/chunk-QEBXRSTH.js +68 -0
  115. package/dist/chunk-QEBXRSTH.js.map +1 -0
  116. package/dist/chunk-QTKMLEEM.js +68 -0
  117. package/dist/chunk-QTKMLEEM.js.map +1 -0
  118. package/dist/chunk-RN4ZII2I.js +68 -0
  119. package/dist/chunk-RN4ZII2I.js.map +1 -0
  120. package/dist/chunk-RTCJ5B7S.js +68 -0
  121. package/dist/chunk-RTCJ5B7S.js.map +1 -0
  122. package/dist/chunk-SG2ACM7O.js +68 -0
  123. package/dist/chunk-SG2ACM7O.js.map +1 -0
  124. package/dist/chunk-SORTCBSJ.js +68 -0
  125. package/dist/chunk-SORTCBSJ.js.map +1 -0
  126. package/dist/chunk-TXY7LBYM.js +68 -0
  127. package/dist/chunk-TXY7LBYM.js.map +1 -0
  128. package/dist/chunk-UIS6TMM5.js +68 -0
  129. package/dist/chunk-UIS6TMM5.js.map +1 -0
  130. package/dist/chunk-VOXUB4AT.js +68 -0
  131. package/dist/chunk-VOXUB4AT.js.map +1 -0
  132. package/dist/chunk-VUSSQAEI.js +68 -0
  133. package/dist/chunk-VUSSQAEI.js.map +1 -0
  134. package/dist/chunk-WAU2FYDY.js +68 -0
  135. package/dist/chunk-WAU2FYDY.js.map +1 -0
  136. package/dist/chunk-YRGKMQP4.js +68 -0
  137. package/dist/chunk-YRGKMQP4.js.map +1 -0
  138. package/dist/chunk-Z3XCYZN4.js +68 -0
  139. package/dist/chunk-Z3XCYZN4.js.map +1 -0
  140. package/dist/chunk-Z6XLNVF3.js +68 -0
  141. package/dist/chunk-Z6XLNVF3.js.map +1 -0
  142. package/dist/chunk-ZQJDUTSK.js +68 -0
  143. package/dist/chunk-ZQJDUTSK.js.map +1 -0
  144. package/dist/chunk-ZTYINGDT.js +68 -0
  145. package/dist/chunk-ZTYINGDT.js.map +1 -0
  146. package/dist/index.d.ts +185 -23
  147. package/dist/index.js +359 -3
  148. package/dist/index.js.map +1 -1
  149. package/dist/presets/_briefs/airbnb.d.ts +3 -0
  150. package/dist/presets/_briefs/airbnb.js +551 -0
  151. package/dist/presets/_briefs/airbnb.js.map +1 -0
  152. package/dist/presets/_briefs/airtable.d.ts +3 -0
  153. package/dist/presets/_briefs/airtable.js +560 -0
  154. package/dist/presets/_briefs/airtable.js.map +1 -0
  155. package/dist/presets/_briefs/apple.d.ts +3 -0
  156. package/dist/presets/_briefs/apple.js +568 -0
  157. package/dist/presets/_briefs/apple.js.map +1 -0
  158. package/dist/presets/_briefs/binance.d.ts +3 -0
  159. package/dist/presets/_briefs/binance.js +640 -0
  160. package/dist/presets/_briefs/binance.js.map +1 -0
  161. package/dist/presets/_briefs/bmw-m.d.ts +3 -0
  162. package/dist/presets/_briefs/bmw-m.js +509 -0
  163. package/dist/presets/_briefs/bmw-m.js.map +1 -0
  164. package/dist/presets/_briefs/bmw.d.ts +3 -0
  165. package/dist/presets/_briefs/bmw.js +550 -0
  166. package/dist/presets/_briefs/bmw.js.map +1 -0
  167. package/dist/presets/_briefs/bugatti.d.ts +3 -0
  168. package/dist/presets/_briefs/bugatti.js +460 -0
  169. package/dist/presets/_briefs/bugatti.js.map +1 -0
  170. package/dist/presets/_briefs/cal.d.ts +3 -0
  171. package/dist/presets/_briefs/cal.js +548 -0
  172. package/dist/presets/_briefs/cal.js.map +1 -0
  173. package/dist/presets/_briefs/claude.d.ts +3 -0
  174. package/dist/presets/_briefs/claude.js +595 -0
  175. package/dist/presets/_briefs/claude.js.map +1 -0
  176. package/dist/presets/_briefs/clay.d.ts +3 -0
  177. package/dist/presets/_briefs/clay.js +547 -0
  178. package/dist/presets/_briefs/clay.js.map +1 -0
  179. package/dist/presets/_briefs/clickhouse.d.ts +3 -0
  180. package/dist/presets/_briefs/clickhouse.js +550 -0
  181. package/dist/presets/_briefs/clickhouse.js.map +1 -0
  182. package/dist/presets/_briefs/cohere.d.ts +3 -0
  183. package/dist/presets/_briefs/cohere.js +457 -0
  184. package/dist/presets/_briefs/cohere.js.map +1 -0
  185. package/dist/presets/_briefs/coinbase.d.ts +3 -0
  186. package/dist/presets/_briefs/coinbase.js +576 -0
  187. package/dist/presets/_briefs/coinbase.js.map +1 -0
  188. package/dist/presets/_briefs/composio.d.ts +3 -0
  189. package/dist/presets/_briefs/composio.js +512 -0
  190. package/dist/presets/_briefs/composio.js.map +1 -0
  191. package/dist/presets/_briefs/cursor.d.ts +3 -0
  192. package/dist/presets/_briefs/cursor.js +543 -0
  193. package/dist/presets/_briefs/cursor.js.map +1 -0
  194. package/dist/presets/_briefs/elevenlabs.d.ts +3 -0
  195. package/dist/presets/_briefs/elevenlabs.js +510 -0
  196. package/dist/presets/_briefs/elevenlabs.js.map +1 -0
  197. package/dist/presets/_briefs/expo.d.ts +3 -0
  198. package/dist/presets/_briefs/expo.js +532 -0
  199. package/dist/presets/_briefs/expo.js.map +1 -0
  200. package/dist/presets/_briefs/ferrari.d.ts +3 -0
  201. package/dist/presets/_briefs/ferrari.js +537 -0
  202. package/dist/presets/_briefs/ferrari.js.map +1 -0
  203. package/dist/presets/_briefs/figma.d.ts +3 -0
  204. package/dist/presets/_briefs/figma.js +226 -0
  205. package/dist/presets/_briefs/figma.js.map +1 -0
  206. package/dist/presets/_briefs/framer.d.ts +3 -0
  207. package/dist/presets/_briefs/framer.js +252 -0
  208. package/dist/presets/_briefs/framer.js.map +1 -0
  209. package/dist/presets/_briefs/hashicorp.d.ts +3 -0
  210. package/dist/presets/_briefs/hashicorp.js +284 -0
  211. package/dist/presets/_briefs/hashicorp.js.map +1 -0
  212. package/dist/presets/_briefs/ibm.d.ts +3 -0
  213. package/dist/presets/_briefs/ibm.js +338 -0
  214. package/dist/presets/_briefs/ibm.js.map +1 -0
  215. package/dist/presets/_briefs/intercom.d.ts +3 -0
  216. package/dist/presets/_briefs/intercom.js +152 -0
  217. package/dist/presets/_briefs/intercom.js.map +1 -0
  218. package/dist/presets/_briefs/kraken.d.ts +3 -0
  219. package/dist/presets/_briefs/kraken.js +131 -0
  220. package/dist/presets/_briefs/kraken.js.map +1 -0
  221. package/dist/presets/_briefs/lamborghini.d.ts +3 -0
  222. package/dist/presets/_briefs/lamborghini.js +294 -0
  223. package/dist/presets/_briefs/lamborghini.js.map +1 -0
  224. package/dist/presets/_briefs/linear.d.ts +3 -0
  225. package/dist/presets/_briefs/linear.js +373 -0
  226. package/dist/presets/_briefs/linear.js.map +1 -0
  227. package/dist/presets/_briefs/lovable.d.ts +3 -0
  228. package/dist/presets/_briefs/lovable.js +304 -0
  229. package/dist/presets/_briefs/lovable.js.map +1 -0
  230. package/dist/presets/_briefs/mastercard.d.ts +3 -0
  231. package/dist/presets/_briefs/mastercard.js +371 -0
  232. package/dist/presets/_briefs/mastercard.js.map +1 -0
  233. package/dist/presets/_briefs/meta.d.ts +3 -0
  234. package/dist/presets/_briefs/meta.js +372 -0
  235. package/dist/presets/_briefs/meta.js.map +1 -0
  236. package/dist/presets/_briefs/minimax.d.ts +3 -0
  237. package/dist/presets/_briefs/minimax.js +263 -0
  238. package/dist/presets/_briefs/minimax.js.map +1 -0
  239. package/dist/presets/_briefs/mintlify.d.ts +3 -0
  240. package/dist/presets/_briefs/mintlify.js +332 -0
  241. package/dist/presets/_briefs/mintlify.js.map +1 -0
  242. package/dist/presets/_briefs/miro.d.ts +3 -0
  243. package/dist/presets/_briefs/miro.js +114 -0
  244. package/dist/presets/_briefs/miro.js.map +1 -0
  245. package/dist/presets/_briefs/mistral.d.ts +3 -0
  246. package/dist/presets/_briefs/mistral.js +267 -0
  247. package/dist/presets/_briefs/mistral.js.map +1 -0
  248. package/dist/presets/_briefs/mongodb.d.ts +3 -0
  249. package/dist/presets/_briefs/mongodb.js +272 -0
  250. package/dist/presets/_briefs/mongodb.js.map +1 -0
  251. package/dist/presets/_briefs/nike.d.ts +3 -0
  252. package/dist/presets/_briefs/nike.js +369 -0
  253. package/dist/presets/_briefs/nike.js.map +1 -0
  254. package/dist/presets/_briefs/notion.d.ts +3 -0
  255. package/dist/presets/_briefs/notion.js +315 -0
  256. package/dist/presets/_briefs/notion.js.map +1 -0
  257. package/dist/presets/_briefs/nvidia.d.ts +3 -0
  258. package/dist/presets/_briefs/nvidia.js +299 -0
  259. package/dist/presets/_briefs/nvidia.js.map +1 -0
  260. package/dist/presets/_briefs/ollama.d.ts +3 -0
  261. package/dist/presets/_briefs/ollama.js +273 -0
  262. package/dist/presets/_briefs/ollama.js.map +1 -0
  263. package/dist/presets/_briefs/opencode.d.ts +3 -0
  264. package/dist/presets/_briefs/opencode.js +287 -0
  265. package/dist/presets/_briefs/opencode.js.map +1 -0
  266. package/dist/presets/_briefs/pinterest.d.ts +3 -0
  267. package/dist/presets/_briefs/pinterest.js +236 -0
  268. package/dist/presets/_briefs/pinterest.js.map +1 -0
  269. package/dist/presets/_briefs/playstation.d.ts +3 -0
  270. package/dist/presets/_briefs/playstation.js +370 -0
  271. package/dist/presets/_briefs/playstation.js.map +1 -0
  272. package/dist/presets/_briefs/posthog.d.ts +3 -0
  273. package/dist/presets/_briefs/posthog.js +262 -0
  274. package/dist/presets/_briefs/posthog.js.map +1 -0
  275. package/dist/presets/_briefs/raycast.d.ts +3 -0
  276. package/dist/presets/_briefs/raycast.js +274 -0
  277. package/dist/presets/_briefs/raycast.js.map +1 -0
  278. package/dist/presets/_briefs/renault.d.ts +3 -0
  279. package/dist/presets/_briefs/renault.js +317 -0
  280. package/dist/presets/_briefs/renault.js.map +1 -0
  281. package/dist/presets/_briefs/replicate.d.ts +3 -0
  282. package/dist/presets/_briefs/replicate.js +267 -0
  283. package/dist/presets/_briefs/replicate.js.map +1 -0
  284. package/dist/presets/_briefs/resend.d.ts +3 -0
  285. package/dist/presets/_briefs/resend.js +309 -0
  286. package/dist/presets/_briefs/resend.js.map +1 -0
  287. package/dist/presets/_briefs/revolut.d.ts +3 -0
  288. package/dist/presets/_briefs/revolut.js +191 -0
  289. package/dist/presets/_briefs/revolut.js.map +1 -0
  290. package/dist/presets/_briefs/runwayml.d.ts +3 -0
  291. package/dist/presets/_briefs/runwayml.js +250 -0
  292. package/dist/presets/_briefs/runwayml.js.map +1 -0
  293. package/dist/presets/_briefs/sanity.d.ts +3 -0
  294. package/dist/presets/_briefs/sanity.js +363 -0
  295. package/dist/presets/_briefs/sanity.js.map +1 -0
  296. package/dist/presets/_briefs/sentry.d.ts +3 -0
  297. package/dist/presets/_briefs/sentry.js +268 -0
  298. package/dist/presets/_briefs/sentry.js.map +1 -0
  299. package/dist/presets/_briefs/shopify.d.ts +3 -0
  300. package/dist/presets/_briefs/shopify.js +356 -0
  301. package/dist/presets/_briefs/shopify.js.map +1 -0
  302. package/dist/presets/_briefs/slack.d.ts +3 -0
  303. package/dist/presets/_briefs/slack.js +221 -0
  304. package/dist/presets/_briefs/slack.js.map +1 -0
  305. package/dist/presets/_briefs/spacex.d.ts +3 -0
  306. package/dist/presets/_briefs/spacex.js +200 -0
  307. package/dist/presets/_briefs/spacex.js.map +1 -0
  308. package/dist/presets/_briefs/spotify.d.ts +3 -0
  309. package/dist/presets/_briefs/spotify.js +252 -0
  310. package/dist/presets/_briefs/spotify.js.map +1 -0
  311. package/dist/presets/_briefs/starbucks.d.ts +3 -0
  312. package/dist/presets/_briefs/starbucks.js +586 -0
  313. package/dist/presets/_briefs/starbucks.js.map +1 -0
  314. package/dist/presets/_briefs/stripe.d.ts +3 -0
  315. package/dist/presets/_briefs/stripe.js +328 -0
  316. package/dist/presets/_briefs/stripe.js.map +1 -0
  317. package/dist/presets/_briefs/supabase.d.ts +3 -0
  318. package/dist/presets/_briefs/supabase.js +261 -0
  319. package/dist/presets/_briefs/supabase.js.map +1 -0
  320. package/dist/presets/_briefs/superhuman.d.ts +3 -0
  321. package/dist/presets/_briefs/superhuman.js +258 -0
  322. package/dist/presets/_briefs/superhuman.js.map +1 -0
  323. package/dist/presets/_briefs/tesla.d.ts +3 -0
  324. package/dist/presets/_briefs/tesla.js +292 -0
  325. package/dist/presets/_briefs/tesla.js.map +1 -0
  326. package/dist/presets/_briefs/theverge.d.ts +3 -0
  327. package/dist/presets/_briefs/theverge.js +345 -0
  328. package/dist/presets/_briefs/theverge.js.map +1 -0
  329. package/dist/presets/_briefs/together.d.ts +3 -0
  330. package/dist/presets/_briefs/together.js +269 -0
  331. package/dist/presets/_briefs/together.js.map +1 -0
  332. package/dist/presets/_briefs/uber.d.ts +3 -0
  333. package/dist/presets/_briefs/uber.js +301 -0
  334. package/dist/presets/_briefs/uber.js.map +1 -0
  335. package/dist/presets/_briefs/vercel.d.ts +3 -0
  336. package/dist/presets/_briefs/vercel.js +316 -0
  337. package/dist/presets/_briefs/vercel.js.map +1 -0
  338. package/dist/presets/_briefs/vodafone.d.ts +3 -0
  339. package/dist/presets/_briefs/vodafone.js +429 -0
  340. package/dist/presets/_briefs/vodafone.js.map +1 -0
  341. package/dist/presets/_briefs/voltagent.d.ts +3 -0
  342. package/dist/presets/_briefs/voltagent.js +329 -0
  343. package/dist/presets/_briefs/voltagent.js.map +1 -0
  344. package/dist/presets/_briefs/warp.d.ts +3 -0
  345. package/dist/presets/_briefs/warp.js +259 -0
  346. package/dist/presets/_briefs/warp.js.map +1 -0
  347. package/dist/presets/_briefs/webflow.d.ts +3 -0
  348. package/dist/presets/_briefs/webflow.js +98 -0
  349. package/dist/presets/_briefs/webflow.js.map +1 -0
  350. package/dist/presets/_briefs/wired.d.ts +3 -0
  351. package/dist/presets/_briefs/wired.js +284 -0
  352. package/dist/presets/_briefs/wired.js.map +1 -0
  353. package/dist/presets/_briefs/wise.d.ts +3 -0
  354. package/dist/presets/_briefs/wise.js +179 -0
  355. package/dist/presets/_briefs/wise.js.map +1 -0
  356. package/dist/presets/_briefs/x.d.ts +3 -0
  357. package/dist/presets/_briefs/x.js +263 -0
  358. package/dist/presets/_briefs/x.js.map +1 -0
  359. package/dist/presets/_briefs/zapier.d.ts +3 -0
  360. package/dist/presets/_briefs/zapier.js +334 -0
  361. package/dist/presets/_briefs/zapier.js.map +1 -0
  362. package/dist/presets/airbnb.d.ts +5 -0
  363. package/dist/presets/airbnb.js +7 -0
  364. package/dist/presets/airbnb.js.map +1 -0
  365. package/dist/presets/airtable.d.ts +5 -0
  366. package/dist/presets/airtable.js +7 -0
  367. package/dist/presets/airtable.js.map +1 -0
  368. package/dist/presets/apple.d.ts +5 -0
  369. package/dist/presets/apple.js +7 -0
  370. package/dist/presets/apple.js.map +1 -0
  371. package/dist/presets/binance.d.ts +5 -0
  372. package/dist/presets/binance.js +7 -0
  373. package/dist/presets/binance.js.map +1 -0
  374. package/dist/presets/bmw-m.d.ts +5 -0
  375. package/dist/presets/bmw-m.js +7 -0
  376. package/dist/presets/bmw-m.js.map +1 -0
  377. package/dist/presets/bmw.d.ts +5 -0
  378. package/dist/presets/bmw.js +7 -0
  379. package/dist/presets/bmw.js.map +1 -0
  380. package/dist/presets/bugatti.d.ts +5 -0
  381. package/dist/presets/bugatti.js +7 -0
  382. package/dist/presets/bugatti.js.map +1 -0
  383. package/dist/presets/cal.d.ts +5 -0
  384. package/dist/presets/cal.js +7 -0
  385. package/dist/presets/cal.js.map +1 -0
  386. package/dist/presets/claude.d.ts +5 -0
  387. package/dist/presets/claude.js +7 -0
  388. package/dist/presets/claude.js.map +1 -0
  389. package/dist/presets/clay.d.ts +5 -0
  390. package/dist/presets/clay.js +7 -0
  391. package/dist/presets/clay.js.map +1 -0
  392. package/dist/presets/clickhouse.d.ts +5 -0
  393. package/dist/presets/clickhouse.js +7 -0
  394. package/dist/presets/clickhouse.js.map +1 -0
  395. package/dist/presets/cohere.d.ts +5 -0
  396. package/dist/presets/cohere.js +7 -0
  397. package/dist/presets/cohere.js.map +1 -0
  398. package/dist/presets/coinbase.d.ts +5 -0
  399. package/dist/presets/coinbase.js +7 -0
  400. package/dist/presets/coinbase.js.map +1 -0
  401. package/dist/presets/composio.d.ts +5 -0
  402. package/dist/presets/composio.js +7 -0
  403. package/dist/presets/composio.js.map +1 -0
  404. package/dist/presets/cursor.d.ts +5 -0
  405. package/dist/presets/cursor.js +7 -0
  406. package/dist/presets/cursor.js.map +1 -0
  407. package/dist/presets/elevenlabs.d.ts +5 -0
  408. package/dist/presets/elevenlabs.js +7 -0
  409. package/dist/presets/elevenlabs.js.map +1 -0
  410. package/dist/presets/expo.d.ts +5 -0
  411. package/dist/presets/expo.js +7 -0
  412. package/dist/presets/expo.js.map +1 -0
  413. package/dist/presets/ferrari.d.ts +5 -0
  414. package/dist/presets/ferrari.js +7 -0
  415. package/dist/presets/ferrari.js.map +1 -0
  416. package/dist/presets/figma.d.ts +5 -0
  417. package/dist/presets/figma.js +7 -0
  418. package/dist/presets/figma.js.map +1 -0
  419. package/dist/presets/framer.d.ts +5 -0
  420. package/dist/presets/framer.js +7 -0
  421. package/dist/presets/framer.js.map +1 -0
  422. package/dist/presets/hashicorp.d.ts +5 -0
  423. package/dist/presets/hashicorp.js +7 -0
  424. package/dist/presets/hashicorp.js.map +1 -0
  425. package/dist/presets/ibm.d.ts +5 -0
  426. package/dist/presets/ibm.js +7 -0
  427. package/dist/presets/ibm.js.map +1 -0
  428. package/dist/presets/index.d.ts +94 -0
  429. package/dist/presets/index.js +297 -0
  430. package/dist/presets/index.js.map +1 -0
  431. package/dist/presets/intercom.d.ts +5 -0
  432. package/dist/presets/intercom.js +7 -0
  433. package/dist/presets/intercom.js.map +1 -0
  434. package/dist/presets/kraken.d.ts +5 -0
  435. package/dist/presets/kraken.js +7 -0
  436. package/dist/presets/kraken.js.map +1 -0
  437. package/dist/presets/lamborghini.d.ts +5 -0
  438. package/dist/presets/lamborghini.js +7 -0
  439. package/dist/presets/lamborghini.js.map +1 -0
  440. package/dist/presets/linear.d.ts +5 -0
  441. package/dist/presets/linear.js +7 -0
  442. package/dist/presets/linear.js.map +1 -0
  443. package/dist/presets/lovable.d.ts +5 -0
  444. package/dist/presets/lovable.js +7 -0
  445. package/dist/presets/lovable.js.map +1 -0
  446. package/dist/presets/mastercard.d.ts +5 -0
  447. package/dist/presets/mastercard.js +7 -0
  448. package/dist/presets/mastercard.js.map +1 -0
  449. package/dist/presets/meta.d.ts +5 -0
  450. package/dist/presets/meta.js +7 -0
  451. package/dist/presets/meta.js.map +1 -0
  452. package/dist/presets/minimax.d.ts +5 -0
  453. package/dist/presets/minimax.js +7 -0
  454. package/dist/presets/minimax.js.map +1 -0
  455. package/dist/presets/mintlify.d.ts +5 -0
  456. package/dist/presets/mintlify.js +7 -0
  457. package/dist/presets/mintlify.js.map +1 -0
  458. package/dist/presets/miro.d.ts +5 -0
  459. package/dist/presets/miro.js +7 -0
  460. package/dist/presets/miro.js.map +1 -0
  461. package/dist/presets/mistral.d.ts +5 -0
  462. package/dist/presets/mistral.js +7 -0
  463. package/dist/presets/mistral.js.map +1 -0
  464. package/dist/presets/mongodb.d.ts +5 -0
  465. package/dist/presets/mongodb.js +7 -0
  466. package/dist/presets/mongodb.js.map +1 -0
  467. package/dist/presets/nike.d.ts +5 -0
  468. package/dist/presets/nike.js +7 -0
  469. package/dist/presets/nike.js.map +1 -0
  470. package/dist/presets/notion.d.ts +5 -0
  471. package/dist/presets/notion.js +7 -0
  472. package/dist/presets/notion.js.map +1 -0
  473. package/dist/presets/nvidia.d.ts +5 -0
  474. package/dist/presets/nvidia.js +7 -0
  475. package/dist/presets/nvidia.js.map +1 -0
  476. package/dist/presets/ollama.d.ts +5 -0
  477. package/dist/presets/ollama.js +7 -0
  478. package/dist/presets/ollama.js.map +1 -0
  479. package/dist/presets/opencode.d.ts +5 -0
  480. package/dist/presets/opencode.js +7 -0
  481. package/dist/presets/opencode.js.map +1 -0
  482. package/dist/presets/pinterest.d.ts +5 -0
  483. package/dist/presets/pinterest.js +7 -0
  484. package/dist/presets/pinterest.js.map +1 -0
  485. package/dist/presets/playstation.d.ts +5 -0
  486. package/dist/presets/playstation.js +7 -0
  487. package/dist/presets/playstation.js.map +1 -0
  488. package/dist/presets/posthog.d.ts +5 -0
  489. package/dist/presets/posthog.js +7 -0
  490. package/dist/presets/posthog.js.map +1 -0
  491. package/dist/presets/raycast.d.ts +5 -0
  492. package/dist/presets/raycast.js +7 -0
  493. package/dist/presets/raycast.js.map +1 -0
  494. package/dist/presets/renault.d.ts +5 -0
  495. package/dist/presets/renault.js +7 -0
  496. package/dist/presets/renault.js.map +1 -0
  497. package/dist/presets/replicate.d.ts +5 -0
  498. package/dist/presets/replicate.js +7 -0
  499. package/dist/presets/replicate.js.map +1 -0
  500. package/dist/presets/resend.d.ts +5 -0
  501. package/dist/presets/resend.js +7 -0
  502. package/dist/presets/resend.js.map +1 -0
  503. package/dist/presets/revolut.d.ts +5 -0
  504. package/dist/presets/revolut.js +7 -0
  505. package/dist/presets/revolut.js.map +1 -0
  506. package/dist/presets/runwayml.d.ts +5 -0
  507. package/dist/presets/runwayml.js +7 -0
  508. package/dist/presets/runwayml.js.map +1 -0
  509. package/dist/presets/sanity.d.ts +5 -0
  510. package/dist/presets/sanity.js +7 -0
  511. package/dist/presets/sanity.js.map +1 -0
  512. package/dist/presets/sentry.d.ts +5 -0
  513. package/dist/presets/sentry.js +7 -0
  514. package/dist/presets/sentry.js.map +1 -0
  515. package/dist/presets/shopify.d.ts +5 -0
  516. package/dist/presets/shopify.js +7 -0
  517. package/dist/presets/shopify.js.map +1 -0
  518. package/dist/presets/slack.d.ts +5 -0
  519. package/dist/presets/slack.js +7 -0
  520. package/dist/presets/slack.js.map +1 -0
  521. package/dist/presets/spacex.d.ts +5 -0
  522. package/dist/presets/spacex.js +7 -0
  523. package/dist/presets/spacex.js.map +1 -0
  524. package/dist/presets/spotify.d.ts +5 -0
  525. package/dist/presets/spotify.js +7 -0
  526. package/dist/presets/spotify.js.map +1 -0
  527. package/dist/presets/starbucks.d.ts +5 -0
  528. package/dist/presets/starbucks.js +7 -0
  529. package/dist/presets/starbucks.js.map +1 -0
  530. package/dist/presets/stripe.d.ts +5 -0
  531. package/dist/presets/stripe.js +7 -0
  532. package/dist/presets/stripe.js.map +1 -0
  533. package/dist/presets/supabase.d.ts +5 -0
  534. package/dist/presets/supabase.js +7 -0
  535. package/dist/presets/supabase.js.map +1 -0
  536. package/dist/presets/superhuman.d.ts +5 -0
  537. package/dist/presets/superhuman.js +7 -0
  538. package/dist/presets/superhuman.js.map +1 -0
  539. package/dist/presets/tesla.d.ts +5 -0
  540. package/dist/presets/tesla.js +7 -0
  541. package/dist/presets/tesla.js.map +1 -0
  542. package/dist/presets/theverge.d.ts +5 -0
  543. package/dist/presets/theverge.js +7 -0
  544. package/dist/presets/theverge.js.map +1 -0
  545. package/dist/presets/together.d.ts +5 -0
  546. package/dist/presets/together.js +7 -0
  547. package/dist/presets/together.js.map +1 -0
  548. package/dist/presets/uber.d.ts +5 -0
  549. package/dist/presets/uber.js +7 -0
  550. package/dist/presets/uber.js.map +1 -0
  551. package/dist/presets/vercel.d.ts +5 -0
  552. package/dist/presets/vercel.js +7 -0
  553. package/dist/presets/vercel.js.map +1 -0
  554. package/dist/presets/vodafone.d.ts +5 -0
  555. package/dist/presets/vodafone.js +7 -0
  556. package/dist/presets/vodafone.js.map +1 -0
  557. package/dist/presets/voltagent.d.ts +5 -0
  558. package/dist/presets/voltagent.js +7 -0
  559. package/dist/presets/voltagent.js.map +1 -0
  560. package/dist/presets/warp.d.ts +5 -0
  561. package/dist/presets/warp.js +7 -0
  562. package/dist/presets/warp.js.map +1 -0
  563. package/dist/presets/webflow.d.ts +5 -0
  564. package/dist/presets/webflow.js +7 -0
  565. package/dist/presets/webflow.js.map +1 -0
  566. package/dist/presets/wired.d.ts +5 -0
  567. package/dist/presets/wired.js +7 -0
  568. package/dist/presets/wired.js.map +1 -0
  569. package/dist/presets/wise.d.ts +5 -0
  570. package/dist/presets/wise.js +7 -0
  571. package/dist/presets/wise.js.map +1 -0
  572. package/dist/presets/x.d.ts +5 -0
  573. package/dist/presets/x.js +7 -0
  574. package/dist/presets/x.js.map +1 -0
  575. package/dist/presets/zapier.d.ts +5 -0
  576. package/dist/presets/zapier.js +7 -0
  577. package/dist/presets/zapier.js.map +1 -0
  578. package/package.json +17 -5
@@ -0,0 +1,309 @@
1
+ // src/presets/_briefs/resend.ts
2
+ var resendBrief = `# Design System Inspired by Resend
3
+
4
+ ## 1. Visual Theme & Atmosphere
5
+
6
+ Resend's website is a dark, cinematic canvas that treats email infrastructure like a luxury product. The entire page is draped in pure black (\`#000000\`) with text that glows in near-white (\`#f0f0f0\`), creating a theater-like experience where content performs on a void stage. This isn't the typical developer-tool darkness \u2014 it's the controlled darkness of a photography gallery, where every element is lit with intention and nothing competes for attention.
7
+
8
+ The typography system is the star of the show. Three carefully chosen typefaces create a hierarchy that feels both editorial and technical: Domaine Display (a Klim Type Foundry serif) appears at massive 96px for hero headlines with barely-there line-height (1.00) and negative tracking (-0.96px), creating display text that feels like a magazine cover. ABC Favorit (by Dinamo) handles section headings with an even more aggressive letter-spacing (-2.8px at 56px), giving a compressed, engineered quality to mid-tier text. Inter takes over for body and UI, providing the clean readability that lets the display fonts shine. Commit Mono rounds out the family for code blocks.
9
+
10
+ What makes Resend distinctive is its icy, blue-tinted border system. Instead of neutral gray borders, Resend uses \`rgba(214, 235, 253, 0.19)\` \u2014 a frosty, slightly blue-tinted line at 19% opacity that gives every container and divider a cold, crystalline quality against the black background. Combined with pill-shaped buttons (9999px radius), multi-color accent system (orange, green, blue, yellow, red \u2014 each with its own CSS variable scale), and OpenType stylistic sets (\`"ss01"\`, \`"ss03"\`, \`"ss04"\`, \`"ss11"\`), the result is a design system that feels premium, precise, and quietly confident.
11
+
12
+ **Key Characteristics:**
13
+ - Pure black background with near-white (\`#f0f0f0\`) text \u2014 theatrical, gallery-like darkness
14
+ - Three-font hierarchy: Domaine Display (serif hero), ABC Favorit (geometric sections), Inter (body/UI)
15
+ - Icy blue-tinted borders: \`rgba(214, 235, 253, 0.19)\` \u2014 every border has a cold, crystalline shimmer
16
+ - Multi-color accent system: orange, green, blue, yellow, red \u2014 each with numbered CSS variable scales
17
+ - Pill-shaped buttons and tags (9999px radius) with transparent backgrounds
18
+ - OpenType stylistic sets (\`"ss01"\`, \`"ss03"\`, \`"ss04"\`, \`"ss11"\`) on display fonts
19
+ - Commit Mono for code \u2014 monospace as a design element, not an afterthought
20
+ - Whisper-level shadows using blue-tinted ring: \`rgba(176, 199, 217, 0.145) 0px 0px 0px 1px\`
21
+
22
+ ## 2. Color Palette & Roles
23
+
24
+ ### Primary
25
+ - **Void Black** (\`#000000\`): Page background, the defining canvas color (95% opacity via \`--color-black-12\`)
26
+ - **Near White** (\`#f0f0f0\`): Primary text, button text, high-contrast elements
27
+ - **Pure White** (\`#ffffff\`): \`--color-white\`, maximum emphasis text, link highlights
28
+
29
+ ### Accent Scale \u2014 Orange
30
+ - **Orange 4** (\`#ff5900\`): \`--color-orange-4\`, at 22% opacity \u2014 subtle warm glow
31
+ - **Orange 10** (\`#ff801f\`): \`--color-orange-10\`, primary orange accent \u2014 warm, energetic
32
+ - **Orange 11** (\`#ffa057\`): \`--color-orange-11\`, lighter orange for secondary use
33
+
34
+ ### Accent Scale \u2014 Green
35
+ - **Green 3** (\`#22ff99\`): \`--color-green-3\`, at 12% opacity \u2014 faint emerald wash
36
+ - **Green 4** (\`#11ff99\`): \`--color-green-4\`, at 18% opacity \u2014 success indicator glow
37
+
38
+ ### Accent Scale \u2014 Blue
39
+ - **Blue 4** (\`#0075ff\`): \`--color-blue-4\`, at 34% opacity \u2014 medium blue accent
40
+ - **Blue 5** (\`#0081fd\`): \`--color-blue-5\`, at 42% opacity \u2014 stronger blue
41
+ - **Blue 10** (\`#3b9eff\`): \`--color-blue-10\`, bright blue \u2014 links, interactive elements
42
+
43
+ ### Accent Scale \u2014 Other
44
+ - **Yellow 9** (\`#ffc53d\`): \`--color-yellow-9\`, warm gold for warnings or highlights
45
+ - **Red 5** (\`#ff2047\`): \`--color-red-5\`, at 34% opacity \u2014 error states, destructive actions
46
+
47
+ ### Neutral Scale
48
+ - **Silver** (\`#a1a4a5\`): Secondary text, muted links, descriptions
49
+ - **Dark Gray** (\`#464a4d\`): Tertiary text, de-emphasized content
50
+ - **Mid Gray** (\`#5c5c5c\`): Hover states, subtle emphasis
51
+ - **Medium Gray** (\`#494949\`): Quaternary text
52
+ - **Light Gray** (\`#f8f8f8\`): Light mode surface (if applicable)
53
+ - **Border Gray** (\`#eaeaea\`): Light context borders
54
+ - **Edge Gray** (\`#ececec\`): Subtle borders on light surfaces
55
+ - **Mist Gray** (\`#dedfdf\`): Light dividers
56
+ - **Soft Gray** (\`#e5e6e6\`): Alternate light border
57
+
58
+ ### Surface & Overlay
59
+ - **Frost Primary** (\`#fcfdff\`): Primary color token (slight blue tint, 94% opacity)
60
+ - **White Hover** (\`rgba(255, 255, 255, 0.28)\`): Button hover state on dark
61
+ - **White 60%** (\`oklab(0.999994 ... / 0.577)\`): Semi-transparent white for muted text
62
+ - **White 64%** (\`oklab(0.999994 ... / 0.642)\`): Slightly brighter semi-transparent white
63
+
64
+ ### Borders & Shadows
65
+ - **Frost Border** (\`rgba(214, 235, 253, 0.19)\`): The signature \u2014 icy blue-tinted borders at 19% opacity
66
+ - **Frost Border Alt** (\`rgba(217, 237, 254, 0.145)\`): Slightly lighter variant for list items
67
+ - **Ring Shadow** (\`rgba(176, 199, 217, 0.145) 0px 0px 0px 1px\`): Blue-tinted shadow-as-border
68
+ - **Focus Ring** (\`rgb(0, 0, 0) 0px 0px 0px 8px\`): Heavy black focus ring
69
+ - **Subtle Shadow** (\`rgba(0, 0, 0, 0.1) 0px 1px 3px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px\`): Minimal card elevation
70
+
71
+ ## 3. Typography Rules
72
+
73
+ ### Font Families
74
+ - **Display Serif**: \`domaine\` (Domaine Display by Klim Type Foundry) \u2014 hero headlines
75
+ - **Display Sans**: \`aBCFavorit\` (ABC Favorit by Dinamo), fallbacks: \`ui-sans-serif, system-ui\` \u2014 section headings
76
+ - **Body / UI**: \`inter\`, fallbacks: \`ui-sans-serif, system-ui\` \u2014 body text, buttons, navigation
77
+ - **Monospace**: \`commitMono\`, fallbacks: \`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas\`
78
+ - **Secondary**: \`Helvetica\` \u2014 fallback for specific UI contexts
79
+ - **System**: \`-apple-system, system-ui, Segoe UI, Roboto\` \u2014 embedded content
80
+
81
+ ### Hierarchy
82
+
83
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
84
+ |------|------|------|--------|-------------|----------------|-------|
85
+ | Display Hero | domaine | 96px (6.00rem) | 400 | 1.00 (tight) | -0.96px | \`"ss01", "ss04", "ss11"\` |
86
+ | Display Hero Mobile | domaine | 76.8px (4.80rem) | 400 | 1.00 (tight) | -0.768px | Scaled for mobile |
87
+ | Section Heading | aBCFavorit | 56px (3.50rem) | 400 | 1.20 (tight) | -2.8px | \`"ss01", "ss04", "ss11"\` |
88
+ | Sub-heading | aBCFavorit | 20px (1.25rem) | 400 | 1.30 (tight) | normal | \`"ss01", "ss04", "ss11"\` |
89
+ | Sub-heading Compact | aBCFavorit | 16px (1.00rem) | 400 | 1.50 | -0.8px | \`"ss01", "ss04", "ss11"\` |
90
+ | Feature Title | inter | 24px (1.50rem) | 500 | 1.50 | normal | Section sub-headings |
91
+ | Body Large | inter | 18px (1.13rem) | 400 | 1.50 | normal | Introductions |
92
+ | Body | inter | 16px (1.00rem) | 400 | 1.50 | normal | Standard body text |
93
+ | Body Semibold | inter | 16px (1.00rem) | 600 | 1.50 | normal | Emphasis, active states |
94
+ | Nav Link | aBCFavorit | 14px (0.88rem) | 500 | 1.43 | 0.35px | \`"ss01", "ss03", "ss04"\` \u2014 positive tracking |
95
+ | Button / Link | inter | 14px (0.88rem) | 500\u2013600 | 1.43 | normal | Buttons, nav, CTAs |
96
+ | Caption | inter | 14px (0.88rem) | 400 | 1.60 (relaxed) | normal | Descriptions |
97
+ | Helvetica Caption | Helvetica | 14px (0.88rem) | 400\u2013600 | 1.00\u20131.71 | normal | UI elements |
98
+ | Small | inter | 12px (0.75rem) | 400\u2013500 | 1.33 | normal | Tags, meta, fine print |
99
+ | Small Uppercase | inter | 12px (0.75rem) | 500 | 1.33 | normal | \`text-transform: uppercase\` |
100
+ | Small Capitalize | inter | 12px (0.75rem) | 500 | 1.33 | normal | \`text-transform: capitalize\` |
101
+ | Code Body | commitMono | 16px (1.00rem) | 400 | 1.50 | normal | Code blocks |
102
+ | Code Small | commitMono | 14px (0.88rem) | 400 | 1.43 | normal | Inline code |
103
+ | Code Tiny | commitMono | 12px (0.75rem) | 400 | 1.33 | normal | Small code labels |
104
+ | Heading (Helvetica) | Helvetica | 24px (1.50rem) | 400 | 1.40 | normal | Alternate heading context |
105
+
106
+ ### Principles
107
+ - **Three-font editorial hierarchy**: Domaine Display (serif, hero), ABC Favorit (geometric sans, sections), Inter (readable body). Each font has a strict role \u2014 they never cross lanes.
108
+ - **Aggressive negative tracking on display**: Domaine at -0.96px, ABC Favorit at -2.8px. The display type feels compressed, urgent, and designed \u2014 like a magazine masthead.
109
+ - **Positive tracking on nav**: ABC Favorit nav links use +0.35px letter-spacing \u2014 the only positive tracking in the system. This creates airy, spaced-out navigation text that contrasts with the compressed headings.
110
+ - **OpenType as identity**: The \`"ss01"\`, \`"ss03"\`, \`"ss04"\`, \`"ss11"\` stylistic sets are enabled on all ABC Favorit and Domaine text, activating alternate glyphs that give Resend's typography its unique character.
111
+ - **Commit Mono as design element**: The monospace font isn't hidden in code blocks \u2014 it's used prominently for code examples and technical content, treated as a first-class visual element.
112
+
113
+ ## 4. Component Stylings
114
+
115
+ ### Buttons
116
+
117
+ **Primary Transparent Pill**
118
+ - Background: transparent
119
+ - Text: \`#f0f0f0\`
120
+ - Padding: 5px 12px
121
+ - Radius: 9999px (full pill)
122
+ - Border: \`1px solid rgba(214, 235, 253, 0.19)\` (frost border)
123
+ - Hover: background \`rgba(255, 255, 255, 0.28)\` (white glass)
124
+ - Use: Primary CTA on dark backgrounds
125
+
126
+ **White Solid Pill**
127
+ - Background: \`#ffffff\`
128
+ - Text: \`#000000\`
129
+ - Padding: 5px 12px
130
+ - Radius: 9999px
131
+ - Use: High-contrast CTA ("Get started")
132
+
133
+ **Ghost Button**
134
+ - Background: transparent
135
+ - Text: \`#f0f0f0\`
136
+ - Radius: 4px
137
+ - No border
138
+ - Hover: subtle background tint
139
+ - Use: Secondary actions, tab items
140
+
141
+ ### Cards & Containers
142
+ - Background: transparent or very subtle dark tint
143
+ - Border: \`1px solid rgba(214, 235, 253, 0.19)\` (frost border)
144
+ - Radius: 16px (standard cards), 24px (large sections/panels)
145
+ - Shadow: \`rgba(176, 199, 217, 0.145) 0px 0px 0px 1px\` (ring shadow)
146
+ - Dark product screenshots and code demos as card content
147
+ - No traditional box-shadow elevation
148
+
149
+ ### Inputs & Forms
150
+ - Text: \`#f0f0f0\` on dark, \`#000000\` on light
151
+ - Radius: 4px
152
+ - Focus: shadow-based ring
153
+ - Minimal styling \u2014 inherits dark theme
154
+
155
+ ### Navigation
156
+ - Sticky dark header with frost border bottom: \`1px solid rgba(214, 235, 253, 0.19)\`
157
+ - "Resend" wordmark left-aligned
158
+ - ABC Favorit 14px weight 500 with +0.35px tracking for nav links
159
+ - Pill CTAs right-aligned
160
+ - Mobile: hamburger collapse
161
+
162
+ ### Image Treatment
163
+ - Product screenshots and code demos dominate content sections
164
+ - Dark-themed screenshots on dark background \u2014 seamless integration
165
+ - Rounded corners: 12px\u201316px on images
166
+ - Full-width sections with subtle gradient overlays
167
+
168
+ ### Distinctive Components
169
+
170
+ **Tab Navigation**
171
+ - Horizontal tabs with subtle selection indicator
172
+ - Tab items: 8px radius
173
+ - Active state with subtle background differentiation
174
+
175
+ **Code Preview Panels**
176
+ - Dark code blocks using Commit Mono
177
+ - Frost borders (\`rgba(214, 235, 253, 0.19)\`)
178
+ - Syntax-highlighted with multi-color accent tokens (orange, blue, green, yellow)
179
+
180
+ **Multi-color Accent Badges**
181
+ - Each product feature has its own accent color from the CSS variable scale
182
+ - Badges use the accent color at low opacity (12\u201342%) for background, full opacity for text
183
+
184
+ ## 5. Layout Principles
185
+
186
+ ### Spacing System
187
+ - Base unit: 8px
188
+ - Scale: 1px, 2px, 4px, 5px, 6px, 7px, 8px, 10px, 12px, 16px, 20px, 24px, 30px, 32px, 40px
189
+
190
+ ### Grid & Container
191
+ - Centered content with generous max-width
192
+ - Full-width black sections with contained inner content
193
+ - Single-column hero, expanding to feature grids below
194
+ - Code preview panels as full-width or contained showcases
195
+
196
+ ### Whitespace Philosophy
197
+ - **Cinematic black space**: The black background IS the whitespace. Generous vertical spacing (80px\u2013120px+) between sections creates a scroll-through-darkness experience where each section emerges like a scene.
198
+ - **Tight content, vast surrounds**: Text blocks and cards are compact internally, but float in vast dark space \u2014 creating isolated "islands" of content.
199
+ - **Typography-led rhythm**: The massive display fonts (96px) create their own vertical rhythm \u2014 each headline is a visual event that anchors the surrounding space.
200
+
201
+ ### Border Radius Scale
202
+ - Sharp (4px): Buttons (ghost), inputs, small interactive elements
203
+ - Subtle (6px): Menu panels, navigation items
204
+ - Standard (8px): Tabs, content blocks
205
+ - Comfortable (10px): Accent elements
206
+ - Card (12px): Clipboard buttons, medium containers
207
+ - Large (16px): Feature cards, images, main buttons
208
+ - Section (24px): Large panels, section containers
209
+ - Pill (9999px): Primary CTAs, tags, badges
210
+
211
+ ## 6. Depth & Elevation
212
+
213
+ | Level | Treatment | Use |
214
+ |-------|-----------|-----|
215
+ | Flat (Level 0) | No shadow, transparent background | Default \u2014 most elements on dark void |
216
+ | Ring (Level 1) | \`rgba(176, 199, 217, 0.145) 0px 0px 0px 1px\` | Shadow-as-border for cards, containers |
217
+ | Frost Border (Level 1b) | \`1px solid rgba(214, 235, 253, 0.19)\` | Explicit borders \u2014 buttons, dividers, tabs |
218
+ | Subtle (Level 2) | \`rgba(0, 0, 0, 0.1) 0px 1px 3px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px\` | Light card elevation |
219
+ | Focus (Level 3) | \`rgb(0, 0, 0) 0px 0px 0px 8px\` | Heavy black focus ring \u2014 accessibility |
220
+
221
+ **Shadow Philosophy**: Resend barely uses shadows at all. On a pure black background, traditional shadows are invisible \u2014 you can't cast a shadow into the void. Instead, Resend creates depth through its signature frost borders (\`rgba(214, 235, 253, 0.19)\`) \u2014 thin, icy blue-tinted lines that catch light against the darkness. This creates a "glass panel floating in space" aesthetic where borders are the primary depth mechanism.
222
+
223
+ ### Decorative Depth
224
+ - Subtle warm gradient glows behind hero content (orange/amber tints)
225
+ - Product screenshots create visual depth through their own internal UI
226
+ - No gradient backgrounds \u2014 depth comes from border luminance and content contrast
227
+
228
+ ## 7. Do's and Don'ts
229
+
230
+ ### Do
231
+ - Use pure black (\`#000000\`) as the page background \u2014 the void is the canvas
232
+ - Apply frost borders (\`rgba(214, 235, 253, 0.19)\`) for all structural lines \u2014 they're the blue-tinted signature
233
+ - Use Domaine Display ONLY for hero headings (96px), ABC Favorit for section headings, Inter for everything else
234
+ - Enable OpenType \`"ss01"\`, \`"ss04"\`, \`"ss11"\` on Domaine and ABC Favorit text
235
+ - Apply pill radius (9999px) to primary CTAs and tags
236
+ - Use the multi-color accent scale (orange/green/blue/yellow/red) with opacity variants for context-specific highlighting
237
+ - Keep shadows at ring level (\`0px 0px 0px 1px\`) \u2014 on black, traditional shadows don't work
238
+ - Use +0.35px letter-spacing on ABC Favorit nav links \u2014 the only positive tracking
239
+
240
+ ### Don't
241
+ - Don't lighten the background above \`#000000\` \u2014 the pure black void is non-negotiable
242
+ - Don't use neutral gray borders \u2014 all borders must have the frost blue tint
243
+ - Don't apply Domaine Display to body text \u2014 it's a display-only serif
244
+ - Don't mix accent colors in the same component \u2014 each feature gets one accent color
245
+ - Don't use box-shadow for elevation on the dark background \u2014 use frost borders instead
246
+ - Don't skip the OpenType stylistic sets \u2014 they define the typographic character
247
+ - Don't use negative letter-spacing on nav links \u2014 ABC Favorit nav uses positive +0.35px
248
+ - Don't make buttons opaque on dark \u2014 transparency with frost border is the pattern
249
+
250
+ ## 8. Responsive Behavior
251
+
252
+ ### Breakpoints
253
+ | Name | Width | Key Changes |
254
+ |------|-------|-------------|
255
+ | Mobile Small | <480px | Single column, tight padding, 76.8px hero |
256
+ | Mobile | 480\u2013600px | Standard mobile, stacked layout |
257
+ | Desktop | >600px | Full layout, 96px hero, expanded sections |
258
+
259
+ *Note: Resend uses a minimal breakpoint system \u2014 only 480px and 600px detected. The design is desktop-first with a clean mobile collapse.*
260
+
261
+ ### Touch Targets
262
+ - Pill buttons: adequate padding (5px 12px minimum)
263
+ - Tab items: 8px radius with comfortable hit areas
264
+ - Navigation links spaced with 0.35px tracking for visual separation
265
+
266
+ ### Collapsing Strategy
267
+ - Hero: Domaine 96px \u2192 76.8px on mobile
268
+ - Navigation: horizontal \u2192 hamburger
269
+ - Feature sections: side-by-side \u2192 stacked
270
+ - Code panels: maintain width, horizontal scroll if needed
271
+ - Spacing compresses proportionally
272
+
273
+ ### Image Behavior
274
+ - Product screenshots maintain aspect ratio
275
+ - Dark screenshots blend seamlessly with dark background at all sizes
276
+ - Rounded corners (12px\u201316px) maintained across breakpoints
277
+
278
+ ## 9. Agent Prompt Guide
279
+
280
+ ### Quick Color Reference
281
+ - Background: Void Black (\`#000000\`)
282
+ - Primary text: Near White (\`#f0f0f0\`)
283
+ - Secondary text: Silver (\`#a1a4a5\`)
284
+ - Border: Frost Border (\`rgba(214, 235, 253, 0.19)\`)
285
+ - Orange accent: \`#ff801f\`
286
+ - Green accent: \`#11ff99\` (at 18% opacity)
287
+ - Blue accent: \`#3b9eff\`
288
+ - Focus ring: \`rgb(0, 0, 0) 0px 0px 0px 8px\`
289
+
290
+ ### Example Component Prompts
291
+ - "Create a hero section on pure black (#000000) background. Headline at 96px Domaine Display weight 400, line-height 1.00, letter-spacing -0.96px, near-white (#f0f0f0) text, OpenType 'ss01 ss04 ss11'. Subtitle at 20px ABC Favorit weight 400, line-height 1.30. Two pill buttons: white solid (#ffffff, 9999px radius) and transparent with frost border (rgba(214,235,253,0.19))."
292
+ - "Design a navigation bar: dark background with frost border bottom (1px solid rgba(214,235,253,0.19)). Nav links at 14px ABC Favorit weight 500, letter-spacing +0.35px, OpenType 'ss01 ss03 ss04'. White pill CTA right-aligned."
293
+ - "Build a feature card: transparent background, frost border (rgba(214,235,253,0.19)), 16px radius. Title at 56px ABC Favorit weight 400, letter-spacing -2.8px. Body at 16px Inter weight 400, #a1a4a5 text."
294
+ - "Create a code block using Commit Mono 16px on dark background. Frost border container (24px radius). Syntax colors: orange (#ff801f), blue (#3b9eff), green (#11ff99), yellow (#ffc53d)."
295
+ - "Design an accent badge: background #ff5900 at 22% opacity, text #ffa057, 9999px radius, 12px Inter weight 500."
296
+
297
+ ### Iteration Guide
298
+ 1. Start with pure black \u2014 everything floats in the void
299
+ 2. Frost borders (\`rgba(214, 235, 253, 0.19)\`) are the universal structural element \u2014 not gray, not neutral
300
+ 3. Three fonts, three roles: Domaine (hero), ABC Favorit (sections), Inter (body) \u2014 never cross
301
+ 4. OpenType stylistic sets are mandatory on display fonts \u2014 they define the character
302
+ 5. Multi-color accents at low opacity (12\u201342%) for backgrounds, full opacity for text
303
+ 6. Pill shape (9999px) for CTAs and badges, standard radius (4px\u201316px) for containers
304
+ 7. No shadows \u2014 use frost borders for depth against the void
305
+ `;
306
+ export {
307
+ resendBrief
308
+ };
309
+ //# sourceMappingURL=resend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/presets/_briefs/resend.ts"],"sourcesContent":["// AUTO-GENERATED — do not hand-edit. Source: https://github.com/voltagent/awesome-design-md\nexport const resendBrief = `# Design System Inspired by Resend\n\n## 1. Visual Theme & Atmosphere\n\nResend's website is a dark, cinematic canvas that treats email infrastructure like a luxury product. The entire page is draped in pure black (\\`#000000\\`) with text that glows in near-white (\\`#f0f0f0\\`), creating a theater-like experience where content performs on a void stage. This isn't the typical developer-tool darkness — it's the controlled darkness of a photography gallery, where every element is lit with intention and nothing competes for attention.\n\nThe typography system is the star of the show. Three carefully chosen typefaces create a hierarchy that feels both editorial and technical: Domaine Display (a Klim Type Foundry serif) appears at massive 96px for hero headlines with barely-there line-height (1.00) and negative tracking (-0.96px), creating display text that feels like a magazine cover. ABC Favorit (by Dinamo) handles section headings with an even more aggressive letter-spacing (-2.8px at 56px), giving a compressed, engineered quality to mid-tier text. Inter takes over for body and UI, providing the clean readability that lets the display fonts shine. Commit Mono rounds out the family for code blocks.\n\nWhat makes Resend distinctive is its icy, blue-tinted border system. Instead of neutral gray borders, Resend uses \\`rgba(214, 235, 253, 0.19)\\` — a frosty, slightly blue-tinted line at 19% opacity that gives every container and divider a cold, crystalline quality against the black background. Combined with pill-shaped buttons (9999px radius), multi-color accent system (orange, green, blue, yellow, red — each with its own CSS variable scale), and OpenType stylistic sets (\\`\"ss01\"\\`, \\`\"ss03\"\\`, \\`\"ss04\"\\`, \\`\"ss11\"\\`), the result is a design system that feels premium, precise, and quietly confident.\n\n**Key Characteristics:**\n- Pure black background with near-white (\\`#f0f0f0\\`) text — theatrical, gallery-like darkness\n- Three-font hierarchy: Domaine Display (serif hero), ABC Favorit (geometric sections), Inter (body/UI)\n- Icy blue-tinted borders: \\`rgba(214, 235, 253, 0.19)\\` — every border has a cold, crystalline shimmer\n- Multi-color accent system: orange, green, blue, yellow, red — each with numbered CSS variable scales\n- Pill-shaped buttons and tags (9999px radius) with transparent backgrounds\n- OpenType stylistic sets (\\`\"ss01\"\\`, \\`\"ss03\"\\`, \\`\"ss04\"\\`, \\`\"ss11\"\\`) on display fonts\n- Commit Mono for code — monospace as a design element, not an afterthought\n- Whisper-level shadows using blue-tinted ring: \\`rgba(176, 199, 217, 0.145) 0px 0px 0px 1px\\`\n\n## 2. Color Palette & Roles\n\n### Primary\n- **Void Black** (\\`#000000\\`): Page background, the defining canvas color (95% opacity via \\`--color-black-12\\`)\n- **Near White** (\\`#f0f0f0\\`): Primary text, button text, high-contrast elements\n- **Pure White** (\\`#ffffff\\`): \\`--color-white\\`, maximum emphasis text, link highlights\n\n### Accent Scale — Orange\n- **Orange 4** (\\`#ff5900\\`): \\`--color-orange-4\\`, at 22% opacity — subtle warm glow\n- **Orange 10** (\\`#ff801f\\`): \\`--color-orange-10\\`, primary orange accent — warm, energetic\n- **Orange 11** (\\`#ffa057\\`): \\`--color-orange-11\\`, lighter orange for secondary use\n\n### Accent Scale — Green\n- **Green 3** (\\`#22ff99\\`): \\`--color-green-3\\`, at 12% opacity — faint emerald wash\n- **Green 4** (\\`#11ff99\\`): \\`--color-green-4\\`, at 18% opacity — success indicator glow\n\n### Accent Scale — Blue\n- **Blue 4** (\\`#0075ff\\`): \\`--color-blue-4\\`, at 34% opacity — medium blue accent\n- **Blue 5** (\\`#0081fd\\`): \\`--color-blue-5\\`, at 42% opacity — stronger blue\n- **Blue 10** (\\`#3b9eff\\`): \\`--color-blue-10\\`, bright blue — links, interactive elements\n\n### Accent Scale — Other\n- **Yellow 9** (\\`#ffc53d\\`): \\`--color-yellow-9\\`, warm gold for warnings or highlights\n- **Red 5** (\\`#ff2047\\`): \\`--color-red-5\\`, at 34% opacity — error states, destructive actions\n\n### Neutral Scale\n- **Silver** (\\`#a1a4a5\\`): Secondary text, muted links, descriptions\n- **Dark Gray** (\\`#464a4d\\`): Tertiary text, de-emphasized content\n- **Mid Gray** (\\`#5c5c5c\\`): Hover states, subtle emphasis\n- **Medium Gray** (\\`#494949\\`): Quaternary text\n- **Light Gray** (\\`#f8f8f8\\`): Light mode surface (if applicable)\n- **Border Gray** (\\`#eaeaea\\`): Light context borders\n- **Edge Gray** (\\`#ececec\\`): Subtle borders on light surfaces\n- **Mist Gray** (\\`#dedfdf\\`): Light dividers\n- **Soft Gray** (\\`#e5e6e6\\`): Alternate light border\n\n### Surface & Overlay\n- **Frost Primary** (\\`#fcfdff\\`): Primary color token (slight blue tint, 94% opacity)\n- **White Hover** (\\`rgba(255, 255, 255, 0.28)\\`): Button hover state on dark\n- **White 60%** (\\`oklab(0.999994 ... / 0.577)\\`): Semi-transparent white for muted text\n- **White 64%** (\\`oklab(0.999994 ... / 0.642)\\`): Slightly brighter semi-transparent white\n\n### Borders & Shadows\n- **Frost Border** (\\`rgba(214, 235, 253, 0.19)\\`): The signature — icy blue-tinted borders at 19% opacity\n- **Frost Border Alt** (\\`rgba(217, 237, 254, 0.145)\\`): Slightly lighter variant for list items\n- **Ring Shadow** (\\`rgba(176, 199, 217, 0.145) 0px 0px 0px 1px\\`): Blue-tinted shadow-as-border\n- **Focus Ring** (\\`rgb(0, 0, 0) 0px 0px 0px 8px\\`): Heavy black focus ring\n- **Subtle Shadow** (\\`rgba(0, 0, 0, 0.1) 0px 1px 3px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px\\`): Minimal card elevation\n\n## 3. Typography Rules\n\n### Font Families\n- **Display Serif**: \\`domaine\\` (Domaine Display by Klim Type Foundry) — hero headlines\n- **Display Sans**: \\`aBCFavorit\\` (ABC Favorit by Dinamo), fallbacks: \\`ui-sans-serif, system-ui\\` — section headings\n- **Body / UI**: \\`inter\\`, fallbacks: \\`ui-sans-serif, system-ui\\` — body text, buttons, navigation\n- **Monospace**: \\`commitMono\\`, fallbacks: \\`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas\\`\n- **Secondary**: \\`Helvetica\\` — fallback for specific UI contexts\n- **System**: \\`-apple-system, system-ui, Segoe UI, Roboto\\` — embedded content\n\n### Hierarchy\n\n| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |\n|------|------|------|--------|-------------|----------------|-------|\n| Display Hero | domaine | 96px (6.00rem) | 400 | 1.00 (tight) | -0.96px | \\`\"ss01\", \"ss04\", \"ss11\"\\` |\n| Display Hero Mobile | domaine | 76.8px (4.80rem) | 400 | 1.00 (tight) | -0.768px | Scaled for mobile |\n| Section Heading | aBCFavorit | 56px (3.50rem) | 400 | 1.20 (tight) | -2.8px | \\`\"ss01\", \"ss04\", \"ss11\"\\` |\n| Sub-heading | aBCFavorit | 20px (1.25rem) | 400 | 1.30 (tight) | normal | \\`\"ss01\", \"ss04\", \"ss11\"\\` |\n| Sub-heading Compact | aBCFavorit | 16px (1.00rem) | 400 | 1.50 | -0.8px | \\`\"ss01\", \"ss04\", \"ss11\"\\` |\n| Feature Title | inter | 24px (1.50rem) | 500 | 1.50 | normal | Section sub-headings |\n| Body Large | inter | 18px (1.13rem) | 400 | 1.50 | normal | Introductions |\n| Body | inter | 16px (1.00rem) | 400 | 1.50 | normal | Standard body text |\n| Body Semibold | inter | 16px (1.00rem) | 600 | 1.50 | normal | Emphasis, active states |\n| Nav Link | aBCFavorit | 14px (0.88rem) | 500 | 1.43 | 0.35px | \\`\"ss01\", \"ss03\", \"ss04\"\\` — positive tracking |\n| Button / Link | inter | 14px (0.88rem) | 500–600 | 1.43 | normal | Buttons, nav, CTAs |\n| Caption | inter | 14px (0.88rem) | 400 | 1.60 (relaxed) | normal | Descriptions |\n| Helvetica Caption | Helvetica | 14px (0.88rem) | 400–600 | 1.00–1.71 | normal | UI elements |\n| Small | inter | 12px (0.75rem) | 400–500 | 1.33 | normal | Tags, meta, fine print |\n| Small Uppercase | inter | 12px (0.75rem) | 500 | 1.33 | normal | \\`text-transform: uppercase\\` |\n| Small Capitalize | inter | 12px (0.75rem) | 500 | 1.33 | normal | \\`text-transform: capitalize\\` |\n| Code Body | commitMono | 16px (1.00rem) | 400 | 1.50 | normal | Code blocks |\n| Code Small | commitMono | 14px (0.88rem) | 400 | 1.43 | normal | Inline code |\n| Code Tiny | commitMono | 12px (0.75rem) | 400 | 1.33 | normal | Small code labels |\n| Heading (Helvetica) | Helvetica | 24px (1.50rem) | 400 | 1.40 | normal | Alternate heading context |\n\n### Principles\n- **Three-font editorial hierarchy**: Domaine Display (serif, hero), ABC Favorit (geometric sans, sections), Inter (readable body). Each font has a strict role — they never cross lanes.\n- **Aggressive negative tracking on display**: Domaine at -0.96px, ABC Favorit at -2.8px. The display type feels compressed, urgent, and designed — like a magazine masthead.\n- **Positive tracking on nav**: ABC Favorit nav links use +0.35px letter-spacing — the only positive tracking in the system. This creates airy, spaced-out navigation text that contrasts with the compressed headings.\n- **OpenType as identity**: The \\`\"ss01\"\\`, \\`\"ss03\"\\`, \\`\"ss04\"\\`, \\`\"ss11\"\\` stylistic sets are enabled on all ABC Favorit and Domaine text, activating alternate glyphs that give Resend's typography its unique character.\n- **Commit Mono as design element**: The monospace font isn't hidden in code blocks — it's used prominently for code examples and technical content, treated as a first-class visual element.\n\n## 4. Component Stylings\n\n### Buttons\n\n**Primary Transparent Pill**\n- Background: transparent\n- Text: \\`#f0f0f0\\`\n- Padding: 5px 12px\n- Radius: 9999px (full pill)\n- Border: \\`1px solid rgba(214, 235, 253, 0.19)\\` (frost border)\n- Hover: background \\`rgba(255, 255, 255, 0.28)\\` (white glass)\n- Use: Primary CTA on dark backgrounds\n\n**White Solid Pill**\n- Background: \\`#ffffff\\`\n- Text: \\`#000000\\`\n- Padding: 5px 12px\n- Radius: 9999px\n- Use: High-contrast CTA (\"Get started\")\n\n**Ghost Button**\n- Background: transparent\n- Text: \\`#f0f0f0\\`\n- Radius: 4px\n- No border\n- Hover: subtle background tint\n- Use: Secondary actions, tab items\n\n### Cards & Containers\n- Background: transparent or very subtle dark tint\n- Border: \\`1px solid rgba(214, 235, 253, 0.19)\\` (frost border)\n- Radius: 16px (standard cards), 24px (large sections/panels)\n- Shadow: \\`rgba(176, 199, 217, 0.145) 0px 0px 0px 1px\\` (ring shadow)\n- Dark product screenshots and code demos as card content\n- No traditional box-shadow elevation\n\n### Inputs & Forms\n- Text: \\`#f0f0f0\\` on dark, \\`#000000\\` on light\n- Radius: 4px\n- Focus: shadow-based ring\n- Minimal styling — inherits dark theme\n\n### Navigation\n- Sticky dark header with frost border bottom: \\`1px solid rgba(214, 235, 253, 0.19)\\`\n- \"Resend\" wordmark left-aligned\n- ABC Favorit 14px weight 500 with +0.35px tracking for nav links\n- Pill CTAs right-aligned\n- Mobile: hamburger collapse\n\n### Image Treatment\n- Product screenshots and code demos dominate content sections\n- Dark-themed screenshots on dark background — seamless integration\n- Rounded corners: 12px–16px on images\n- Full-width sections with subtle gradient overlays\n\n### Distinctive Components\n\n**Tab Navigation**\n- Horizontal tabs with subtle selection indicator\n- Tab items: 8px radius\n- Active state with subtle background differentiation\n\n**Code Preview Panels**\n- Dark code blocks using Commit Mono\n- Frost borders (\\`rgba(214, 235, 253, 0.19)\\`)\n- Syntax-highlighted with multi-color accent tokens (orange, blue, green, yellow)\n\n**Multi-color Accent Badges**\n- Each product feature has its own accent color from the CSS variable scale\n- Badges use the accent color at low opacity (12–42%) for background, full opacity for text\n\n## 5. Layout Principles\n\n### Spacing System\n- Base unit: 8px\n- Scale: 1px, 2px, 4px, 5px, 6px, 7px, 8px, 10px, 12px, 16px, 20px, 24px, 30px, 32px, 40px\n\n### Grid & Container\n- Centered content with generous max-width\n- Full-width black sections with contained inner content\n- Single-column hero, expanding to feature grids below\n- Code preview panels as full-width or contained showcases\n\n### Whitespace Philosophy\n- **Cinematic black space**: The black background IS the whitespace. Generous vertical spacing (80px–120px+) between sections creates a scroll-through-darkness experience where each section emerges like a scene.\n- **Tight content, vast surrounds**: Text blocks and cards are compact internally, but float in vast dark space — creating isolated \"islands\" of content.\n- **Typography-led rhythm**: The massive display fonts (96px) create their own vertical rhythm — each headline is a visual event that anchors the surrounding space.\n\n### Border Radius Scale\n- Sharp (4px): Buttons (ghost), inputs, small interactive elements\n- Subtle (6px): Menu panels, navigation items\n- Standard (8px): Tabs, content blocks\n- Comfortable (10px): Accent elements\n- Card (12px): Clipboard buttons, medium containers\n- Large (16px): Feature cards, images, main buttons\n- Section (24px): Large panels, section containers\n- Pill (9999px): Primary CTAs, tags, badges\n\n## 6. Depth & Elevation\n\n| Level | Treatment | Use |\n|-------|-----------|-----|\n| Flat (Level 0) | No shadow, transparent background | Default — most elements on dark void |\n| Ring (Level 1) | \\`rgba(176, 199, 217, 0.145) 0px 0px 0px 1px\\` | Shadow-as-border for cards, containers |\n| Frost Border (Level 1b) | \\`1px solid rgba(214, 235, 253, 0.19)\\` | Explicit borders — buttons, dividers, tabs |\n| Subtle (Level 2) | \\`rgba(0, 0, 0, 0.1) 0px 1px 3px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px\\` | Light card elevation |\n| Focus (Level 3) | \\`rgb(0, 0, 0) 0px 0px 0px 8px\\` | Heavy black focus ring — accessibility |\n\n**Shadow Philosophy**: Resend barely uses shadows at all. On a pure black background, traditional shadows are invisible — you can't cast a shadow into the void. Instead, Resend creates depth through its signature frost borders (\\`rgba(214, 235, 253, 0.19)\\`) — thin, icy blue-tinted lines that catch light against the darkness. This creates a \"glass panel floating in space\" aesthetic where borders are the primary depth mechanism.\n\n### Decorative Depth\n- Subtle warm gradient glows behind hero content (orange/amber tints)\n- Product screenshots create visual depth through their own internal UI\n- No gradient backgrounds — depth comes from border luminance and content contrast\n\n## 7. Do's and Don'ts\n\n### Do\n- Use pure black (\\`#000000\\`) as the page background — the void is the canvas\n- Apply frost borders (\\`rgba(214, 235, 253, 0.19)\\`) for all structural lines — they're the blue-tinted signature\n- Use Domaine Display ONLY for hero headings (96px), ABC Favorit for section headings, Inter for everything else\n- Enable OpenType \\`\"ss01\"\\`, \\`\"ss04\"\\`, \\`\"ss11\"\\` on Domaine and ABC Favorit text\n- Apply pill radius (9999px) to primary CTAs and tags\n- Use the multi-color accent scale (orange/green/blue/yellow/red) with opacity variants for context-specific highlighting\n- Keep shadows at ring level (\\`0px 0px 0px 1px\\`) — on black, traditional shadows don't work\n- Use +0.35px letter-spacing on ABC Favorit nav links — the only positive tracking\n\n### Don't\n- Don't lighten the background above \\`#000000\\` — the pure black void is non-negotiable\n- Don't use neutral gray borders — all borders must have the frost blue tint\n- Don't apply Domaine Display to body text — it's a display-only serif\n- Don't mix accent colors in the same component — each feature gets one accent color\n- Don't use box-shadow for elevation on the dark background — use frost borders instead\n- Don't skip the OpenType stylistic sets — they define the typographic character\n- Don't use negative letter-spacing on nav links — ABC Favorit nav uses positive +0.35px\n- Don't make buttons opaque on dark — transparency with frost border is the pattern\n\n## 8. Responsive Behavior\n\n### Breakpoints\n| Name | Width | Key Changes |\n|------|-------|-------------|\n| Mobile Small | <480px | Single column, tight padding, 76.8px hero |\n| Mobile | 480–600px | Standard mobile, stacked layout |\n| Desktop | >600px | Full layout, 96px hero, expanded sections |\n\n*Note: Resend uses a minimal breakpoint system — only 480px and 600px detected. The design is desktop-first with a clean mobile collapse.*\n\n### Touch Targets\n- Pill buttons: adequate padding (5px 12px minimum)\n- Tab items: 8px radius with comfortable hit areas\n- Navigation links spaced with 0.35px tracking for visual separation\n\n### Collapsing Strategy\n- Hero: Domaine 96px → 76.8px on mobile\n- Navigation: horizontal → hamburger\n- Feature sections: side-by-side → stacked\n- Code panels: maintain width, horizontal scroll if needed\n- Spacing compresses proportionally\n\n### Image Behavior\n- Product screenshots maintain aspect ratio\n- Dark screenshots blend seamlessly with dark background at all sizes\n- Rounded corners (12px–16px) maintained across breakpoints\n\n## 9. Agent Prompt Guide\n\n### Quick Color Reference\n- Background: Void Black (\\`#000000\\`)\n- Primary text: Near White (\\`#f0f0f0\\`)\n- Secondary text: Silver (\\`#a1a4a5\\`)\n- Border: Frost Border (\\`rgba(214, 235, 253, 0.19)\\`)\n- Orange accent: \\`#ff801f\\`\n- Green accent: \\`#11ff99\\` (at 18% opacity)\n- Blue accent: \\`#3b9eff\\`\n- Focus ring: \\`rgb(0, 0, 0) 0px 0px 0px 8px\\`\n\n### Example Component Prompts\n- \"Create a hero section on pure black (#000000) background. Headline at 96px Domaine Display weight 400, line-height 1.00, letter-spacing -0.96px, near-white (#f0f0f0) text, OpenType 'ss01 ss04 ss11'. Subtitle at 20px ABC Favorit weight 400, line-height 1.30. Two pill buttons: white solid (#ffffff, 9999px radius) and transparent with frost border (rgba(214,235,253,0.19)).\"\n- \"Design a navigation bar: dark background with frost border bottom (1px solid rgba(214,235,253,0.19)). Nav links at 14px ABC Favorit weight 500, letter-spacing +0.35px, OpenType 'ss01 ss03 ss04'. White pill CTA right-aligned.\"\n- \"Build a feature card: transparent background, frost border (rgba(214,235,253,0.19)), 16px radius. Title at 56px ABC Favorit weight 400, letter-spacing -2.8px. Body at 16px Inter weight 400, #a1a4a5 text.\"\n- \"Create a code block using Commit Mono 16px on dark background. Frost border container (24px radius). Syntax colors: orange (#ff801f), blue (#3b9eff), green (#11ff99), yellow (#ffc53d).\"\n- \"Design an accent badge: background #ff5900 at 22% opacity, text #ffa057, 9999px radius, 12px Inter weight 500.\"\n\n### Iteration Guide\n1. Start with pure black — everything floats in the void\n2. Frost borders (\\`rgba(214, 235, 253, 0.19)\\`) are the universal structural element — not gray, not neutral\n3. Three fonts, three roles: Domaine (hero), ABC Favorit (sections), Inter (body) — never cross\n4. OpenType stylistic sets are mandatory on display fonts — they define the character\n5. Multi-color accents at low opacity (12–42%) for backgrounds, full opacity for text\n6. Pill shape (9999px) for CTAs and badges, standard radius (4px–16px) for containers\n7. No shadows — use frost borders for depth against the void\n`;\n"],"mappings":";AACO,IAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
@@ -0,0 +1,3 @@
1
+ declare const revolutBrief = "# Design System Inspired by Revolut\n\n## 1. Visual Theme & Atmosphere\n\nRevolut's website is fintech confidence distilled into pixels \u2014 a design system that communicates \"your money is in capable hands\" through massive typography, generous whitespace, and a disciplined neutral palette. The visual language is built on Aeonik Pro, a geometric grotesque that creates billboard-scale headlines at 136px with weight 500 and aggressive negative tracking (-2.72px). This isn't subtle branding; it's fintech at stadium scale.\n\nThe color system is built on a comprehensive `--rui-*` (Revolut UI) token architecture with semantic naming for every state: danger (`#e23b4a`), warning (`#ec7e00`), teal (`#00a87e`), blue (`#494fdf`), deep-pink (`#e61e49`), and more. But the marketing surface itself is remarkably restrained \u2014 near-black (`#191c1f`) and pure white (`#ffffff`) dominate, with the colorful semantic tokens reserved for the product interface, not the marketing page.\n\nWhat distinguishes Revolut is its pill-everything button system. Every button uses 9999px radius \u2014 primary dark (`#191c1f`), secondary light (`#f4f4f4`), outlined (`transparent + 2px solid`), and ghost on dark (`rgba(244,244,244,0.1) + 2px solid`). The padding is generous (14px 32px\u201334px), creating large, confident touch targets. Combined with Inter for body text at various weights and positive letter-spacing (0.16px\u20130.24px), the result is a design that feels both premium and accessible \u2014 banking for the modern era.\n\n**Key Characteristics:**\n- Aeonik Pro display at 136px weight 500 \u2014 billboard-scale fintech headlines\n- Near-black (`#191c1f`) + white binary with comprehensive `--rui-*` semantic tokens\n- Universal pill buttons (9999px radius) with generous padding (14px 32px)\n- Inter for body text with positive letter-spacing (0.16px\u20130.24px)\n- Rich semantic color system: blue, teal, pink, yellow, green, brown, danger, warning\n- Zero shadows detected \u2014 depth through color contrast only\n- Tight display line-heights (1.00) with relaxed body (1.50\u20131.56)\n\n## 2. Color Palette & Roles\n\n### Primary\n- **Revolut Dark** (`#191c1f`): Primary dark surface, button background, near-black text\n- **Pure White** (`#ffffff`): `--rui-color-action-label`, primary light surface\n- **Light Surface** (`#f4f4f4`): Secondary button background, subtle surface\n\n### Brand / Interactive\n- **Revolut Blue** (`#494fdf`): `--rui-color-blue`, primary brand blue\n- **Action Blue** (`#4f55f1`): `--rui-color-action-photo-header-text`, header accent\n- **Blue Text** (`#376cd5`): `--website-color-blue-text`, link blue\n\n### Semantic\n- **Danger Red** (`#e23b4a`): `--rui-color-danger`, error/destructive\n- **Deep Pink** (`#e61e49`): `--rui-color-deep-pink`, critical accent\n- **Warning Orange** (`#ec7e00`): `--rui-color-warning`, warning states\n- **Yellow** (`#b09000`): `--rui-color-yellow`, attention\n- **Teal** (`#00a87e`): `--rui-color-teal`, success/positive\n- **Light Green** (`#428619`): `--rui-color-light-green`, secondary success\n- **Green Text** (`#006400`): `--website-color-green-text`, green text\n- **Light Blue** (`#007bc2`): `--rui-color-light-blue`, informational\n- **Brown** (`#936d62`): `--rui-color-brown`, warm neutral accent\n- **Red Text** (`#8b0000`): `--website-color-red-text`, dark red text\n\n### Neutral Scale\n- **Mid Slate** (`#505a63`): Secondary text\n- **Cool Gray** (`#8d969e`): Muted text, tertiary\n- **Gray Tone** (`#c9c9cd`): `--rui-color-grey-tone-20`, borders/dividers\n\n## 3. Typography Rules\n\n### Font Families\n- **Display**: `Aeonik Pro` \u2014 geometric grotesque, no detected fallbacks\n- **Body / UI**: `Inter` \u2014 standard system sans\n- **Fallback**: `Arial` for specific button contexts\n\n### Hierarchy\n\n| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |\n|------|------|------|--------|-------------|----------------|-------|\n| Display Mega | Aeonik Pro | 136px (8.50rem) | 500 | 1.00 (tight) | -2.72px | Stadium-scale hero |\n| Display Hero | Aeonik Pro | 80px (5.00rem) | 500 | 1.00 (tight) | -0.8px | Primary hero |\n| Section Heading | Aeonik Pro | 48px (3.00rem) | 500 | 1.21 (tight) | -0.48px | Feature sections |\n| Sub-heading | Aeonik Pro | 40px (2.50rem) | 500 | 1.20 (tight) | -0.4px | Sub-sections |\n| Card Title | Aeonik Pro | 32px (2.00rem) | 500 | 1.19 (tight) | -0.32px | Card headings |\n| Feature Title | Aeonik Pro | 24px (1.50rem) | 400 | 1.33 | normal | Light headings |\n| Nav / UI | Aeonik Pro | 20px (1.25rem) | 500 | 1.40 | normal | Navigation, buttons |\n| Body Large | Inter | 18px (1.13rem) | 400 | 1.56 | -0.09px | Introductions |\n| Body | Inter | 16px (1.00rem) | 400 | 1.50 | 0.24px | Standard reading |\n| Body Semibold | Inter | 16px (1.00rem) | 600 | 1.50 | 0.16px | Emphasized body |\n| Body Bold Link | Inter | 16px (1.00rem) | 700 | 1.50 | 0.24px | Bold links |\n\n### Principles\n- **Weight 500 as display default**: Aeonik Pro uses medium (500) for ALL headings \u2014 no bold. This creates authority through size and tracking, not weight.\n- **Billboard tracking**: -2.72px at 136px is extremely compressed \u2014 text designed to be read at a glance, like airport signage.\n- **Positive tracking on body**: Inter uses +0.16px to +0.24px, creating airy, well-spaced reading text that contrasts with the compressed headings.\n\n## 4. Component Stylings\n\n### Buttons\n\n**Primary Dark Pill**\n- Background: `#191c1f`\n- Text: `#ffffff`\n- Padding: 14px 32px\n- Radius: 9999px (full pill)\n- Hover: opacity 0.85\n- Focus: `0 0 0 0.125rem` ring\n\n**Secondary Light Pill**\n- Background: `#f4f4f4`\n- Text: `#000000`\n- Padding: 14px 34px\n- Radius: 9999px\n- Hover: opacity 0.85\n\n**Outlined Pill**\n- Background: transparent\n- Text: `#191c1f`\n- Border: `2px solid #191c1f`\n- Padding: 14px 32px\n- Radius: 9999px\n\n**Ghost on Dark**\n- Background: `rgba(244, 244, 244, 0.1)`\n- Text: `#f4f4f4`\n- Border: `2px solid #f4f4f4`\n- Padding: 14px 32px\n- Radius: 9999px\n\n### Cards & Containers\n- Radius: 12px (small), 20px (cards)\n- No shadows \u2014 flat surfaces with color contrast\n- Dark and light section alternation\n\n### Navigation\n- Aeonik Pro 20px weight 500\n- Clean header, hamburger toggle at 12px radius\n- Pill CTAs right-aligned\n\n## 5. Layout Principles\n\n### Spacing System\n- Base unit: 8px\n- Scale: 4px, 6px, 8px, 14px, 16px, 20px, 24px, 32px, 40px, 48px, 80px, 88px, 120px\n- Large section spacing: 80px\u2013120px\n\n### Border Radius Scale\n- Standard (12px): Navigation, small buttons\n- Card (20px): Feature cards\n- Pill (9999px): All buttons\n\n## 6. Depth & Elevation\n\n| Level | Treatment | Use |\n|-------|-----------|-----|\n| Flat (Level 0) | No shadow | Everything \u2014 Revolut uses zero shadows |\n| Focus | `0 0 0 0.125rem` ring | Accessibility focus |\n\n**Shadow Philosophy**: Revolut uses ZERO shadows. Depth comes entirely from the dark/light section contrast and the generous whitespace between elements.\n\n## 7. Do's and Don'ts\n\n### Do\n- Use Aeonik Pro weight 500 for all display headings\n- Apply 9999px radius to all buttons \u2014 pill shape is universal\n- Use generous button padding (14px 32px)\n- Keep the palette to near-black + white for marketing surfaces\n- Apply positive letter-spacing on Inter body text\n\n### Don't\n- Don't use shadows \u2014 Revolut is flat by design\n- Don't use bold (700) for Aeonik Pro headings \u2014 500 is the weight\n- Don't use small buttons \u2014 the generous padding is intentional\n- Don't apply semantic colors to marketing surfaces \u2014 they're for the product\n\n## 8. Responsive Behavior\n\n### Breakpoints\n| Name | Width | Key Changes |\n|------|-------|-------------|\n| Mobile Small | <400px | Compact, single column |\n| Mobile | 400\u2013720px | Standard mobile |\n| Tablet | 720\u20131024px | 2-column layouts |\n| Desktop | 1024\u20131280px | Standard desktop |\n| Large | 1280\u20131920px | Full layout |\n\n## 9. Agent Prompt Guide\n\n### Quick Color Reference\n- Dark: Revolut Dark (`#191c1f`)\n- Light: White (`#ffffff`)\n- Surface: Light (`#f4f4f4`)\n- Blue: Revolut Blue (`#494fdf`)\n- Danger: Red (`#e23b4a`)\n- Success: Teal (`#00a87e`)\n\n### Example Component Prompts\n- \"Create a hero: white background. Headline at 136px Aeonik Pro weight 500, line-height 1.00, letter-spacing -2.72px, #191c1f text. Dark pill CTA (#191c1f, 9999px, 14px 32px). Outlined pill secondary (transparent, 2px solid #191c1f).\"\n- \"Build a pill button: #191c1f background, white text, 9999px radius, 14px 32px padding, 20px Aeonik Pro weight 500. Hover: opacity 0.85.\"\n\n### Iteration Guide\n1. Aeonik Pro 500 for headings \u2014 never bold\n2. All buttons are pills (9999px) with generous padding\n3. Zero shadows \u2014 flat is the Revolut identity\n4. Near-black + white for marketing, semantic colors for product\n";
2
+
3
+ export { revolutBrief };
@@ -0,0 +1,191 @@
1
+ // src/presets/_briefs/revolut.ts
2
+ var revolutBrief = `# Design System Inspired by Revolut
3
+
4
+ ## 1. Visual Theme & Atmosphere
5
+
6
+ Revolut's website is fintech confidence distilled into pixels \u2014 a design system that communicates "your money is in capable hands" through massive typography, generous whitespace, and a disciplined neutral palette. The visual language is built on Aeonik Pro, a geometric grotesque that creates billboard-scale headlines at 136px with weight 500 and aggressive negative tracking (-2.72px). This isn't subtle branding; it's fintech at stadium scale.
7
+
8
+ The color system is built on a comprehensive \`--rui-*\` (Revolut UI) token architecture with semantic naming for every state: danger (\`#e23b4a\`), warning (\`#ec7e00\`), teal (\`#00a87e\`), blue (\`#494fdf\`), deep-pink (\`#e61e49\`), and more. But the marketing surface itself is remarkably restrained \u2014 near-black (\`#191c1f\`) and pure white (\`#ffffff\`) dominate, with the colorful semantic tokens reserved for the product interface, not the marketing page.
9
+
10
+ What distinguishes Revolut is its pill-everything button system. Every button uses 9999px radius \u2014 primary dark (\`#191c1f\`), secondary light (\`#f4f4f4\`), outlined (\`transparent + 2px solid\`), and ghost on dark (\`rgba(244,244,244,0.1) + 2px solid\`). The padding is generous (14px 32px\u201334px), creating large, confident touch targets. Combined with Inter for body text at various weights and positive letter-spacing (0.16px\u20130.24px), the result is a design that feels both premium and accessible \u2014 banking for the modern era.
11
+
12
+ **Key Characteristics:**
13
+ - Aeonik Pro display at 136px weight 500 \u2014 billboard-scale fintech headlines
14
+ - Near-black (\`#191c1f\`) + white binary with comprehensive \`--rui-*\` semantic tokens
15
+ - Universal pill buttons (9999px radius) with generous padding (14px 32px)
16
+ - Inter for body text with positive letter-spacing (0.16px\u20130.24px)
17
+ - Rich semantic color system: blue, teal, pink, yellow, green, brown, danger, warning
18
+ - Zero shadows detected \u2014 depth through color contrast only
19
+ - Tight display line-heights (1.00) with relaxed body (1.50\u20131.56)
20
+
21
+ ## 2. Color Palette & Roles
22
+
23
+ ### Primary
24
+ - **Revolut Dark** (\`#191c1f\`): Primary dark surface, button background, near-black text
25
+ - **Pure White** (\`#ffffff\`): \`--rui-color-action-label\`, primary light surface
26
+ - **Light Surface** (\`#f4f4f4\`): Secondary button background, subtle surface
27
+
28
+ ### Brand / Interactive
29
+ - **Revolut Blue** (\`#494fdf\`): \`--rui-color-blue\`, primary brand blue
30
+ - **Action Blue** (\`#4f55f1\`): \`--rui-color-action-photo-header-text\`, header accent
31
+ - **Blue Text** (\`#376cd5\`): \`--website-color-blue-text\`, link blue
32
+
33
+ ### Semantic
34
+ - **Danger Red** (\`#e23b4a\`): \`--rui-color-danger\`, error/destructive
35
+ - **Deep Pink** (\`#e61e49\`): \`--rui-color-deep-pink\`, critical accent
36
+ - **Warning Orange** (\`#ec7e00\`): \`--rui-color-warning\`, warning states
37
+ - **Yellow** (\`#b09000\`): \`--rui-color-yellow\`, attention
38
+ - **Teal** (\`#00a87e\`): \`--rui-color-teal\`, success/positive
39
+ - **Light Green** (\`#428619\`): \`--rui-color-light-green\`, secondary success
40
+ - **Green Text** (\`#006400\`): \`--website-color-green-text\`, green text
41
+ - **Light Blue** (\`#007bc2\`): \`--rui-color-light-blue\`, informational
42
+ - **Brown** (\`#936d62\`): \`--rui-color-brown\`, warm neutral accent
43
+ - **Red Text** (\`#8b0000\`): \`--website-color-red-text\`, dark red text
44
+
45
+ ### Neutral Scale
46
+ - **Mid Slate** (\`#505a63\`): Secondary text
47
+ - **Cool Gray** (\`#8d969e\`): Muted text, tertiary
48
+ - **Gray Tone** (\`#c9c9cd\`): \`--rui-color-grey-tone-20\`, borders/dividers
49
+
50
+ ## 3. Typography Rules
51
+
52
+ ### Font Families
53
+ - **Display**: \`Aeonik Pro\` \u2014 geometric grotesque, no detected fallbacks
54
+ - **Body / UI**: \`Inter\` \u2014 standard system sans
55
+ - **Fallback**: \`Arial\` for specific button contexts
56
+
57
+ ### Hierarchy
58
+
59
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
60
+ |------|------|------|--------|-------------|----------------|-------|
61
+ | Display Mega | Aeonik Pro | 136px (8.50rem) | 500 | 1.00 (tight) | -2.72px | Stadium-scale hero |
62
+ | Display Hero | Aeonik Pro | 80px (5.00rem) | 500 | 1.00 (tight) | -0.8px | Primary hero |
63
+ | Section Heading | Aeonik Pro | 48px (3.00rem) | 500 | 1.21 (tight) | -0.48px | Feature sections |
64
+ | Sub-heading | Aeonik Pro | 40px (2.50rem) | 500 | 1.20 (tight) | -0.4px | Sub-sections |
65
+ | Card Title | Aeonik Pro | 32px (2.00rem) | 500 | 1.19 (tight) | -0.32px | Card headings |
66
+ | Feature Title | Aeonik Pro | 24px (1.50rem) | 400 | 1.33 | normal | Light headings |
67
+ | Nav / UI | Aeonik Pro | 20px (1.25rem) | 500 | 1.40 | normal | Navigation, buttons |
68
+ | Body Large | Inter | 18px (1.13rem) | 400 | 1.56 | -0.09px | Introductions |
69
+ | Body | Inter | 16px (1.00rem) | 400 | 1.50 | 0.24px | Standard reading |
70
+ | Body Semibold | Inter | 16px (1.00rem) | 600 | 1.50 | 0.16px | Emphasized body |
71
+ | Body Bold Link | Inter | 16px (1.00rem) | 700 | 1.50 | 0.24px | Bold links |
72
+
73
+ ### Principles
74
+ - **Weight 500 as display default**: Aeonik Pro uses medium (500) for ALL headings \u2014 no bold. This creates authority through size and tracking, not weight.
75
+ - **Billboard tracking**: -2.72px at 136px is extremely compressed \u2014 text designed to be read at a glance, like airport signage.
76
+ - **Positive tracking on body**: Inter uses +0.16px to +0.24px, creating airy, well-spaced reading text that contrasts with the compressed headings.
77
+
78
+ ## 4. Component Stylings
79
+
80
+ ### Buttons
81
+
82
+ **Primary Dark Pill**
83
+ - Background: \`#191c1f\`
84
+ - Text: \`#ffffff\`
85
+ - Padding: 14px 32px
86
+ - Radius: 9999px (full pill)
87
+ - Hover: opacity 0.85
88
+ - Focus: \`0 0 0 0.125rem\` ring
89
+
90
+ **Secondary Light Pill**
91
+ - Background: \`#f4f4f4\`
92
+ - Text: \`#000000\`
93
+ - Padding: 14px 34px
94
+ - Radius: 9999px
95
+ - Hover: opacity 0.85
96
+
97
+ **Outlined Pill**
98
+ - Background: transparent
99
+ - Text: \`#191c1f\`
100
+ - Border: \`2px solid #191c1f\`
101
+ - Padding: 14px 32px
102
+ - Radius: 9999px
103
+
104
+ **Ghost on Dark**
105
+ - Background: \`rgba(244, 244, 244, 0.1)\`
106
+ - Text: \`#f4f4f4\`
107
+ - Border: \`2px solid #f4f4f4\`
108
+ - Padding: 14px 32px
109
+ - Radius: 9999px
110
+
111
+ ### Cards & Containers
112
+ - Radius: 12px (small), 20px (cards)
113
+ - No shadows \u2014 flat surfaces with color contrast
114
+ - Dark and light section alternation
115
+
116
+ ### Navigation
117
+ - Aeonik Pro 20px weight 500
118
+ - Clean header, hamburger toggle at 12px radius
119
+ - Pill CTAs right-aligned
120
+
121
+ ## 5. Layout Principles
122
+
123
+ ### Spacing System
124
+ - Base unit: 8px
125
+ - Scale: 4px, 6px, 8px, 14px, 16px, 20px, 24px, 32px, 40px, 48px, 80px, 88px, 120px
126
+ - Large section spacing: 80px\u2013120px
127
+
128
+ ### Border Radius Scale
129
+ - Standard (12px): Navigation, small buttons
130
+ - Card (20px): Feature cards
131
+ - Pill (9999px): All buttons
132
+
133
+ ## 6. Depth & Elevation
134
+
135
+ | Level | Treatment | Use |
136
+ |-------|-----------|-----|
137
+ | Flat (Level 0) | No shadow | Everything \u2014 Revolut uses zero shadows |
138
+ | Focus | \`0 0 0 0.125rem\` ring | Accessibility focus |
139
+
140
+ **Shadow Philosophy**: Revolut uses ZERO shadows. Depth comes entirely from the dark/light section contrast and the generous whitespace between elements.
141
+
142
+ ## 7. Do's and Don'ts
143
+
144
+ ### Do
145
+ - Use Aeonik Pro weight 500 for all display headings
146
+ - Apply 9999px radius to all buttons \u2014 pill shape is universal
147
+ - Use generous button padding (14px 32px)
148
+ - Keep the palette to near-black + white for marketing surfaces
149
+ - Apply positive letter-spacing on Inter body text
150
+
151
+ ### Don't
152
+ - Don't use shadows \u2014 Revolut is flat by design
153
+ - Don't use bold (700) for Aeonik Pro headings \u2014 500 is the weight
154
+ - Don't use small buttons \u2014 the generous padding is intentional
155
+ - Don't apply semantic colors to marketing surfaces \u2014 they're for the product
156
+
157
+ ## 8. Responsive Behavior
158
+
159
+ ### Breakpoints
160
+ | Name | Width | Key Changes |
161
+ |------|-------|-------------|
162
+ | Mobile Small | <400px | Compact, single column |
163
+ | Mobile | 400\u2013720px | Standard mobile |
164
+ | Tablet | 720\u20131024px | 2-column layouts |
165
+ | Desktop | 1024\u20131280px | Standard desktop |
166
+ | Large | 1280\u20131920px | Full layout |
167
+
168
+ ## 9. Agent Prompt Guide
169
+
170
+ ### Quick Color Reference
171
+ - Dark: Revolut Dark (\`#191c1f\`)
172
+ - Light: White (\`#ffffff\`)
173
+ - Surface: Light (\`#f4f4f4\`)
174
+ - Blue: Revolut Blue (\`#494fdf\`)
175
+ - Danger: Red (\`#e23b4a\`)
176
+ - Success: Teal (\`#00a87e\`)
177
+
178
+ ### Example Component Prompts
179
+ - "Create a hero: white background. Headline at 136px Aeonik Pro weight 500, line-height 1.00, letter-spacing -2.72px, #191c1f text. Dark pill CTA (#191c1f, 9999px, 14px 32px). Outlined pill secondary (transparent, 2px solid #191c1f)."
180
+ - "Build a pill button: #191c1f background, white text, 9999px radius, 14px 32px padding, 20px Aeonik Pro weight 500. Hover: opacity 0.85."
181
+
182
+ ### Iteration Guide
183
+ 1. Aeonik Pro 500 for headings \u2014 never bold
184
+ 2. All buttons are pills (9999px) with generous padding
185
+ 3. Zero shadows \u2014 flat is the Revolut identity
186
+ 4. Near-black + white for marketing, semantic colors for product
187
+ `;
188
+ export {
189
+ revolutBrief
190
+ };
191
+ //# sourceMappingURL=revolut.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/presets/_briefs/revolut.ts"],"sourcesContent":["// AUTO-GENERATED — do not hand-edit. Source: https://github.com/voltagent/awesome-design-md\nexport const revolutBrief = `# Design System Inspired by Revolut\n\n## 1. Visual Theme & Atmosphere\n\nRevolut's website is fintech confidence distilled into pixels — a design system that communicates \"your money is in capable hands\" through massive typography, generous whitespace, and a disciplined neutral palette. The visual language is built on Aeonik Pro, a geometric grotesque that creates billboard-scale headlines at 136px with weight 500 and aggressive negative tracking (-2.72px). This isn't subtle branding; it's fintech at stadium scale.\n\nThe color system is built on a comprehensive \\`--rui-*\\` (Revolut UI) token architecture with semantic naming for every state: danger (\\`#e23b4a\\`), warning (\\`#ec7e00\\`), teal (\\`#00a87e\\`), blue (\\`#494fdf\\`), deep-pink (\\`#e61e49\\`), and more. But the marketing surface itself is remarkably restrained — near-black (\\`#191c1f\\`) and pure white (\\`#ffffff\\`) dominate, with the colorful semantic tokens reserved for the product interface, not the marketing page.\n\nWhat distinguishes Revolut is its pill-everything button system. Every button uses 9999px radius — primary dark (\\`#191c1f\\`), secondary light (\\`#f4f4f4\\`), outlined (\\`transparent + 2px solid\\`), and ghost on dark (\\`rgba(244,244,244,0.1) + 2px solid\\`). The padding is generous (14px 32px–34px), creating large, confident touch targets. Combined with Inter for body text at various weights and positive letter-spacing (0.16px–0.24px), the result is a design that feels both premium and accessible — banking for the modern era.\n\n**Key Characteristics:**\n- Aeonik Pro display at 136px weight 500 — billboard-scale fintech headlines\n- Near-black (\\`#191c1f\\`) + white binary with comprehensive \\`--rui-*\\` semantic tokens\n- Universal pill buttons (9999px radius) with generous padding (14px 32px)\n- Inter for body text with positive letter-spacing (0.16px–0.24px)\n- Rich semantic color system: blue, teal, pink, yellow, green, brown, danger, warning\n- Zero shadows detected — depth through color contrast only\n- Tight display line-heights (1.00) with relaxed body (1.50–1.56)\n\n## 2. Color Palette & Roles\n\n### Primary\n- **Revolut Dark** (\\`#191c1f\\`): Primary dark surface, button background, near-black text\n- **Pure White** (\\`#ffffff\\`): \\`--rui-color-action-label\\`, primary light surface\n- **Light Surface** (\\`#f4f4f4\\`): Secondary button background, subtle surface\n\n### Brand / Interactive\n- **Revolut Blue** (\\`#494fdf\\`): \\`--rui-color-blue\\`, primary brand blue\n- **Action Blue** (\\`#4f55f1\\`): \\`--rui-color-action-photo-header-text\\`, header accent\n- **Blue Text** (\\`#376cd5\\`): \\`--website-color-blue-text\\`, link blue\n\n### Semantic\n- **Danger Red** (\\`#e23b4a\\`): \\`--rui-color-danger\\`, error/destructive\n- **Deep Pink** (\\`#e61e49\\`): \\`--rui-color-deep-pink\\`, critical accent\n- **Warning Orange** (\\`#ec7e00\\`): \\`--rui-color-warning\\`, warning states\n- **Yellow** (\\`#b09000\\`): \\`--rui-color-yellow\\`, attention\n- **Teal** (\\`#00a87e\\`): \\`--rui-color-teal\\`, success/positive\n- **Light Green** (\\`#428619\\`): \\`--rui-color-light-green\\`, secondary success\n- **Green Text** (\\`#006400\\`): \\`--website-color-green-text\\`, green text\n- **Light Blue** (\\`#007bc2\\`): \\`--rui-color-light-blue\\`, informational\n- **Brown** (\\`#936d62\\`): \\`--rui-color-brown\\`, warm neutral accent\n- **Red Text** (\\`#8b0000\\`): \\`--website-color-red-text\\`, dark red text\n\n### Neutral Scale\n- **Mid Slate** (\\`#505a63\\`): Secondary text\n- **Cool Gray** (\\`#8d969e\\`): Muted text, tertiary\n- **Gray Tone** (\\`#c9c9cd\\`): \\`--rui-color-grey-tone-20\\`, borders/dividers\n\n## 3. Typography Rules\n\n### Font Families\n- **Display**: \\`Aeonik Pro\\` — geometric grotesque, no detected fallbacks\n- **Body / UI**: \\`Inter\\` — standard system sans\n- **Fallback**: \\`Arial\\` for specific button contexts\n\n### Hierarchy\n\n| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |\n|------|------|------|--------|-------------|----------------|-------|\n| Display Mega | Aeonik Pro | 136px (8.50rem) | 500 | 1.00 (tight) | -2.72px | Stadium-scale hero |\n| Display Hero | Aeonik Pro | 80px (5.00rem) | 500 | 1.00 (tight) | -0.8px | Primary hero |\n| Section Heading | Aeonik Pro | 48px (3.00rem) | 500 | 1.21 (tight) | -0.48px | Feature sections |\n| Sub-heading | Aeonik Pro | 40px (2.50rem) | 500 | 1.20 (tight) | -0.4px | Sub-sections |\n| Card Title | Aeonik Pro | 32px (2.00rem) | 500 | 1.19 (tight) | -0.32px | Card headings |\n| Feature Title | Aeonik Pro | 24px (1.50rem) | 400 | 1.33 | normal | Light headings |\n| Nav / UI | Aeonik Pro | 20px (1.25rem) | 500 | 1.40 | normal | Navigation, buttons |\n| Body Large | Inter | 18px (1.13rem) | 400 | 1.56 | -0.09px | Introductions |\n| Body | Inter | 16px (1.00rem) | 400 | 1.50 | 0.24px | Standard reading |\n| Body Semibold | Inter | 16px (1.00rem) | 600 | 1.50 | 0.16px | Emphasized body |\n| Body Bold Link | Inter | 16px (1.00rem) | 700 | 1.50 | 0.24px | Bold links |\n\n### Principles\n- **Weight 500 as display default**: Aeonik Pro uses medium (500) for ALL headings — no bold. This creates authority through size and tracking, not weight.\n- **Billboard tracking**: -2.72px at 136px is extremely compressed — text designed to be read at a glance, like airport signage.\n- **Positive tracking on body**: Inter uses +0.16px to +0.24px, creating airy, well-spaced reading text that contrasts with the compressed headings.\n\n## 4. Component Stylings\n\n### Buttons\n\n**Primary Dark Pill**\n- Background: \\`#191c1f\\`\n- Text: \\`#ffffff\\`\n- Padding: 14px 32px\n- Radius: 9999px (full pill)\n- Hover: opacity 0.85\n- Focus: \\`0 0 0 0.125rem\\` ring\n\n**Secondary Light Pill**\n- Background: \\`#f4f4f4\\`\n- Text: \\`#000000\\`\n- Padding: 14px 34px\n- Radius: 9999px\n- Hover: opacity 0.85\n\n**Outlined Pill**\n- Background: transparent\n- Text: \\`#191c1f\\`\n- Border: \\`2px solid #191c1f\\`\n- Padding: 14px 32px\n- Radius: 9999px\n\n**Ghost on Dark**\n- Background: \\`rgba(244, 244, 244, 0.1)\\`\n- Text: \\`#f4f4f4\\`\n- Border: \\`2px solid #f4f4f4\\`\n- Padding: 14px 32px\n- Radius: 9999px\n\n### Cards & Containers\n- Radius: 12px (small), 20px (cards)\n- No shadows — flat surfaces with color contrast\n- Dark and light section alternation\n\n### Navigation\n- Aeonik Pro 20px weight 500\n- Clean header, hamburger toggle at 12px radius\n- Pill CTAs right-aligned\n\n## 5. Layout Principles\n\n### Spacing System\n- Base unit: 8px\n- Scale: 4px, 6px, 8px, 14px, 16px, 20px, 24px, 32px, 40px, 48px, 80px, 88px, 120px\n- Large section spacing: 80px–120px\n\n### Border Radius Scale\n- Standard (12px): Navigation, small buttons\n- Card (20px): Feature cards\n- Pill (9999px): All buttons\n\n## 6. Depth & Elevation\n\n| Level | Treatment | Use |\n|-------|-----------|-----|\n| Flat (Level 0) | No shadow | Everything — Revolut uses zero shadows |\n| Focus | \\`0 0 0 0.125rem\\` ring | Accessibility focus |\n\n**Shadow Philosophy**: Revolut uses ZERO shadows. Depth comes entirely from the dark/light section contrast and the generous whitespace between elements.\n\n## 7. Do's and Don'ts\n\n### Do\n- Use Aeonik Pro weight 500 for all display headings\n- Apply 9999px radius to all buttons — pill shape is universal\n- Use generous button padding (14px 32px)\n- Keep the palette to near-black + white for marketing surfaces\n- Apply positive letter-spacing on Inter body text\n\n### Don't\n- Don't use shadows — Revolut is flat by design\n- Don't use bold (700) for Aeonik Pro headings — 500 is the weight\n- Don't use small buttons — the generous padding is intentional\n- Don't apply semantic colors to marketing surfaces — they're for the product\n\n## 8. Responsive Behavior\n\n### Breakpoints\n| Name | Width | Key Changes |\n|------|-------|-------------|\n| Mobile Small | <400px | Compact, single column |\n| Mobile | 400–720px | Standard mobile |\n| Tablet | 720–1024px | 2-column layouts |\n| Desktop | 1024–1280px | Standard desktop |\n| Large | 1280–1920px | Full layout |\n\n## 9. Agent Prompt Guide\n\n### Quick Color Reference\n- Dark: Revolut Dark (\\`#191c1f\\`)\n- Light: White (\\`#ffffff\\`)\n- Surface: Light (\\`#f4f4f4\\`)\n- Blue: Revolut Blue (\\`#494fdf\\`)\n- Danger: Red (\\`#e23b4a\\`)\n- Success: Teal (\\`#00a87e\\`)\n\n### Example Component Prompts\n- \"Create a hero: white background. Headline at 136px Aeonik Pro weight 500, line-height 1.00, letter-spacing -2.72px, #191c1f text. Dark pill CTA (#191c1f, 9999px, 14px 32px). Outlined pill secondary (transparent, 2px solid #191c1f).\"\n- \"Build a pill button: #191c1f background, white text, 9999px radius, 14px 32px padding, 20px Aeonik Pro weight 500. Hover: opacity 0.85.\"\n\n### Iteration Guide\n1. Aeonik Pro 500 for headings — never bold\n2. All buttons are pills (9999px) with generous padding\n3. Zero shadows — flat is the Revolut identity\n4. Near-black + white for marketing, semantic colors for product\n`;\n"],"mappings":";AACO,IAAM,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
@@ -0,0 +1,3 @@
1
+ declare const runwaymlBrief = "# Design System Inspired by Runway\n\n## 1. Visual Theme & Atmosphere\n\nRunway's interface is a cinematic reel brought to life as a website \u2014 a dark, editorial, film-production-grade design where full-bleed photography and video ARE the primary UI elements. This is not a typical tech product page; it's a visual manifesto for AI-powered creativity. Every section feels like a frame from a film: dramatic lighting, sweeping landscapes, and intimate human moments captured in high-quality imagery that dominates the viewport.\n\nThe design language is built on a single typeface \u2014 abcNormal \u2014 a clean, geometric sans-serif that handles everything from 48px display headlines to 11px uppercase labels. This single-font commitment creates an extreme typographic uniformity that lets the visual content speak louder than the text. Headlines use tight line-heights (1.0) with negative letter-spacing (-0.9px to -1.2px), creating compressed text blocks that feel like film titles rather than marketing copy.\n\nWhat makes Runway distinctive is its complete commitment to visual content as design. Rather than illustrating features with icons or diagrams, Runway shows actual AI-generated and AI-enhanced imagery \u2014 cars driving through cinematic landscapes, artistic portraits, architectural renders. The interface itself retreats into near-invisibility: minimal borders, zero shadows, subtle cool-gray text, and a dark palette that puts maximum focus on the photography.\n\n**Key Characteristics:**\n- Cinematic full-bleed photography and video as primary UI elements\n- Single typeface system: abcNormal for everything from display to micro labels\n- Dark-dominant palette with cool-toned neutrals (#767d88, #7d848e)\n- Zero shadows, minimal borders \u2014 the interface is intentionally invisible\n- Tight display typography (line-height 1.0) with negative tracking (-0.9px to -1.2px)\n- Uppercase labels with positive letter-spacing for navigational structure\n- Weight 450 (unusual intermediate) for small uppercase text \u2014 precision craft\n- Editorial magazine layout with mixed-size image grids\n\n## 2. Color Palette & Roles\n\n### Primary\n- **Runway Black** (`#000000`): The primary page background and maximum-emphasis text.\n- **Deep Black** (`#030303`): A near-imperceptible variant for layered dark surfaces.\n- **Dark Surface** (`#1a1a1a`): Card backgrounds and elevated dark containers.\n- **Pure White** (`#ffffff`): Primary text on dark surfaces and light-section backgrounds.\n\n### Surface & Background\n- **Near White** (`#fefefe`): The lightest surface \u2014 barely distinguishable from pure white.\n- **Cool Cloud** (`#e9ecf2`): Light section backgrounds with a cool blue-gray tint.\n- **Border Dark** (`#27272a`): The single dark-mode border color \u2014 barely visible containment.\n\n### Neutrals & Text\n- **Charcoal** (`#404040`): Primary body text on light surfaces and secondary text.\n- **Near Charcoal** (`#3f3f3f`): Slightly lighter variant for dark-section secondary text.\n- **Cool Slate** (`#767d88`): Secondary body text \u2014 a distinctly blue-gray cool neutral.\n- **Mid Slate** (`#7d848e`): Tertiary text, metadata descriptions.\n- **Muted Gray** (`#a7a7a7`): De-emphasized content, timestamps.\n- **Cool Silver** (`#c9ccd1`): Light borders and dividers.\n- **Light Silver** (`#d0d4d4`): The lightest border/divider variant.\n- **Tailwind Gray** (`#6b7280`): Standard Tailwind neutral for supplementary text.\n- **Dark Link** (`#0c0c0c`): Darkest link text \u2014 nearly black.\n- **Footer Gray** (`#999999`): Footer links and deeply muted content.\n\n### Gradient System\n- **None in the interface.** Visual richness comes entirely from photographic content \u2014 AI-generated and enhanced imagery provides all the color and gradient the design needs. The interface itself is intentionally colorless.\n\n## 3. Typography Rules\n\n### Font Family\n- **Universal**: `abcNormal`, with fallback: `abcNormal Fallback`\n\n*Note: abcNormal is a custom geometric sans-serif. For external implementations, Inter or DM Sans serve as close substitutes.*\n\n### Hierarchy\n\n| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |\n|------|------|------|--------|-------------|----------------|-------|\n| Display / Hero | abcNormal | 48px (3rem) | 400 | 1.00 (tight) | -1.2px | Maximum size, film-title presence |\n| Section Heading | abcNormal | 40px (2.5rem) | 400 | 1.00\u20131.10 | -1px to 0px | Feature section titles |\n| Sub-heading | abcNormal | 36px (2.25rem) | 400 | 1.00 (tight) | -0.9px | Secondary section markers |\n| Card Title | abcNormal | 24px (1.5rem) | 400 | 1.00 (tight) | normal | Article and card headings |\n| Feature Title | abcNormal | 20px (1.25rem) | 400 | 1.00 (tight) | normal | Small headings |\n| Body / Button | abcNormal | 16px (1rem) | 400\u2013600 | 1.30\u20131.50 | -0.16px to normal | Standard body, nav links |\n| Caption / Label | abcNormal | 14px (0.88rem) | 500\u2013600 | 1.25\u20131.43 | 0.35px (uppercase) | Metadata, section labels |\n| Small | abcNormal | 13px (0.81rem) | 400 | 1.30 (tight) | -0.16px to -0.26px | Compact descriptions |\n| Micro / Tag | abcNormal | 11px (0.69rem) | 450 | 1.30 (tight) | normal | Uppercase tags, tiny labels |\n\n### Principles\n- **One typeface, complete expression**: abcNormal handles every text role. The design achieves variety through size, weight, case, and letter-spacing rather than font-family switching.\n- **Tight everywhere**: Nearly every size uses line-height 1.0\u20131.30 \u2014 even body text is relatively compressed. This creates a dense, editorial feel.\n- **Weight 450 \u2014 the precision detail**: Some small uppercase labels use weight 450, an uncommon intermediate between regular (400) and medium (500). This micro-craft signals typographic sophistication.\n- **Negative tracking as default**: Even body text uses -0.16px to -0.26px letter-spacing, keeping everything slightly tighter than default.\n- **Uppercase as structure**: Labels at 14px and 11px use `text-transform: uppercase` with positive letter-spacing (0.35px) to create navigational signposts that contrast with the tight lowercase text.\n\n## 4. Component Stylings\n\n### Buttons\n- Text: weight 600 at 14px abcNormal\n- Background: likely transparent or dark, with minimal border\n- Radius: small (4px) for button-like links\n- The button design is extremely restrained \u2014 no heavy fills or borders detected\n- Interactive elements blend into the editorial flow\n\n### Cards & Containers\n- Background: transparent or Dark Surface (`#1a1a1a`)\n- Border: `1px solid #27272a` (dark mode) \u2014 barely visible containment\n- Radius: small (4\u20138px) for functional elements; 16px for alert-style containers\n- Shadow: zero \u2014 no shadows on any element\n- Cards are primarily photographic \u2014 the image IS the card\n\n### Navigation\n- Minimal horizontal nav \u2014 transparent over hero content\n- Logo: Runway wordmark in white/black\n- Links: abcNormal at 16px, weight 400\u2013600\n- Hover: text shifts to white or higher opacity\n- Extremely subtle \u2014 designed to not compete with visual content\n\n### Image Treatment\n- Full-bleed cinematic photography and video dominate\n- AI-generated content shown at large scale as primary visual elements\n- Mixed-size image grids creating editorial magazine layouts\n- Dark overlays on hero images for text readability\n- Product screenshots with subtle rounded corners (8px)\n\n### Distinctive Components\n\n**Cinematic Hero**\n- Full-viewport image or video with text overlay\n- Headline in 48px abcNormal, white on dark imagery\n- The image is always cinematic quality \u2014 film-grade composition\n\n**Research Article Cards**\n- Photographic thumbnails with article titles\n- Mixed-size grid layout (large feature + smaller supporting)\n- Clean text overlay or below-image caption style\n\n**Trust Bar**\n- Company logos (leading organizations across industries)\n- Clean, monochrome treatment\n- Horizontal layout with generous spacing\n\n**Mission Statement**\n- \"We are building AI to simulate the world through imagination, art and aesthetics\"\n- On a dark background with white text\n- The emotional close \u2014 artistic and philosophical\n\n## 5. Layout Principles\n\n### Spacing System\n- Base unit: 8px\n- Scale: 4px, 6px, 8px, 12px, 16px, 20px, 24px, 28px, 32px, 48px, 64px, 78px\n- Section vertical spacing: generous (48\u201378px)\n- Component gaps: 16\u201324px\n\n### Grid & Container\n- Max container width: up to 1600px (cinema-wide)\n- Hero: full-viewport, edge-to-edge\n- Content sections: centered with generous margins\n- Image grids: asymmetric, magazine-style mixed sizes\n- Footer: full-width dark section\n\n### Whitespace Philosophy\n- **Cinema-grade breathing**: Large vertical gaps between sections create a scrolling experience that feels like watching scenes change.\n- **Images replace whitespace**: Where other sites use empty space, Runway fills it with photography. The visual content IS the breathing room.\n- **Editorial grid asymmetry**: The image grid uses intentionally varied sizes \u2014 large hero images paired with smaller supporting images, creating visual rhythm.\n\n### Border Radius Scale\n- Sharp (4px): Buttons, small interactive elements\n- Subtle (6px): Links, small containers\n- Comfortable (8px): Standard containers, image cards\n- Generous (16px): Alert-style containers, featured elements\n\n## 6. Depth & Elevation\n\n| Level | Treatment | Use |\n|-------|-----------|-----|\n| Flat (Level 0) | No shadow, no border | Everything \u2014 the dominant state |\n| Bordered (Level 1) | `1px solid #27272a` | Alert containers only |\n| Dark Section (Level 2) | Dark bg (#000000 / #1a1a1a) with light text | Hero, features, footer |\n| Light Section (Level 3) | White/Cool Cloud bg with dark text | Content sections, research |\n\n**Shadow Philosophy**: Runway uses **zero shadows**. This is a film-production design decision \u2014 in cinema, depth comes from lighting, focus, and composition, not drop shadows. The interface mirrors this philosophy: depth is communicated through dark/light section alternation, photographic depth-of-field, and overlay transparency \u2014 never through CSS box-shadow.\n\n## 7. Do's and Don'ts\n\n### Do\n- Use full-bleed cinematic photography as the primary visual element\n- Use abcNormal for all text \u2014 maintain the single-typeface commitment\n- Keep display line-heights at 1.0 with negative letter-spacing for film-title density\n- Use the cool-gray neutral palette (#767d88, #7d848e) for secondary text\n- Maintain zero shadows \u2014 depth comes from photography and section backgrounds\n- Use uppercase with letter-spacing for navigational labels (14px, 0.35px spacing)\n- Apply small border-radius (4\u20138px) \u2014 the design is NOT pill-shaped\n- Let visual content (photos, videos) dominate \u2014 the UI should be invisible\n- Use weight 450 for micro labels \u2014 the precision matters\n\n### Don't\n- Don't add decorative colors to the interface \u2014 the only color comes from photography\n- Don't use heavy borders or shadows \u2014 the interface must be nearly invisible\n- Don't use pill-shaped radius \u2014 Runway's geometry is subtly rounded, not circular\n- Don't use bold (700+) weight \u2014 400\u2013600 is the full range, with 450 as a precision tool\n- Don't compete with the visual content \u2014 text overlays should be minimal and restrained\n- Don't use gradient backgrounds in the interface \u2014 gradients exist only in photography\n- Don't use more than one typeface \u2014 abcNormal handles everything\n- Don't use body line-height above 1.50 \u2014 the tight, editorial feel is core\n- Don't reduce image quality \u2014 cinematic photography IS the design\n\n## 8. Responsive Behavior\n\n### Breakpoints\n| Name | Width | Key Changes |\n|------|-------|-------------|\n| Mobile | <640px | Single column, stacked images, reduced hero text |\n| Tablet | 640\u2013768px | 2-column image grids begin |\n| Small Desktop | 768\u20131024px | Standard layout |\n| Desktop | 1024\u20131280px | Full layout, expanded hero |\n| Large Desktop | 1280\u20131600px | Maximum cinema-width container |\n\n### Touch Targets\n- Navigation links at comfortable 16px\n- Article cards serve as large touch targets\n- Buttons at 14px weight 600 with adequate padding\n\n### Collapsing Strategy\n- **Navigation**: Collapses to hamburger on mobile\n- **Hero**: Full-bleed maintained, text scales down\n- **Image grids**: Multi-column \u2192 2-column \u2192 single column\n- **Research articles**: Feature-size cards \u2192 stacked full-width\n- **Trust logos**: Horizontal scroll or reduced grid\n\n### Image Behavior\n- Cinematic images scale proportionally\n- Full-bleed hero maintained across all sizes\n- Image grids reflow to fewer columns\n- Video content maintains aspect ratio\n\n## 9. Agent Prompt Guide\n\n### Quick Color Reference\n- Background Dark: \"Runway Black (#000000)\"\n- Background Light: \"Pure White (#ffffff)\"\n- Primary Text Dark: \"Charcoal (#404040)\"\n- Secondary Text: \"Cool Slate (#767d88)\"\n- Muted Text: \"Muted Gray (#a7a7a7)\"\n- Light Border: \"Cool Silver (#c9ccd1)\"\n- Dark Border: \"Border Dark (#27272a)\"\n- Card Surface: \"Dark Surface (#1a1a1a)\"\n\n### Example Component Prompts\n- \"Create a cinematic hero section: full-bleed dark background with a cinematic image overlay. Headline at 48px abcNormal weight 400, line-height 1.0, letter-spacing -1.2px in white. Minimal text below in Cool Slate (#767d88) at 16px.\"\n- \"Design a research article grid: one large card (50% width) with a cinematic image and 24px title, next to two smaller cards stacked. All images with 8px border-radius. Titles in white (dark bg) or Charcoal (#404040, light bg).\"\n- \"Build a section label: 14px abcNormal weight 500, uppercase, letter-spacing 0.35px in Cool Slate (#767d88). No border, no background.\"\n- \"Create a trust bar: company logos in monochrome, horizontal layout with generous spacing. On dark background with white/gray logo treatments.\"\n- \"Design a mission statement section: Runway Black background, white text at 36px abcNormal, line-height 1.0, letter-spacing -0.9px. Centered, with generous vertical padding.\"\n\n### Iteration Guide\n1. Visual content first \u2014 always include cinematic photography\n2. Use abcNormal for everything \u2014 specify size and weight, never change the font\n3. Keep the interface invisible \u2014 no heavy borders, no shadows, no bright colors\n4. Use the cool slate grays (#767d88, #7d848e) for secondary text \u2014 not warm grays\n5. Uppercase labels need letter-spacing (0.35px) \u2014 never tight uppercase\n6. Dark sections should be truly dark (#000000 or #1a1a1a) \u2014 no medium grays as surfaces\n";
2
+
3
+ export { runwaymlBrief };