nfx-ui 0.16.2 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (935) hide show
  1. package/README.md +67 -271
  2. package/dist/animations.cjs +1 -2
  3. package/dist/animations.mjs +9 -9
  4. package/dist/apis.cjs +0 -1
  5. package/dist/apis.cjs.map +1 -1
  6. package/dist/apis.mjs +0 -1
  7. package/dist/apis.mjs.map +1 -1
  8. package/dist/chunk-LucideIcon-Chc7x8mN.mjs +15 -0
  9. package/dist/chunk-LucideIcon-Chc7x8mN.mjs.map +1 -0
  10. package/dist/chunk-LucideIcon-CuoAB_OX.cjs +3 -0
  11. package/dist/chunk-LucideIcon-CuoAB_OX.cjs.map +1 -0
  12. package/dist/chunk-ModalProvider-BgLSJXhS.cjs +3 -0
  13. package/dist/chunk-ModalProvider-BgLSJXhS.cjs.map +1 -0
  14. package/dist/chunk-ModalProvider-CpzFzfWG.mjs +220 -0
  15. package/dist/chunk-ModalProvider-CpzFzfWG.mjs.map +1 -0
  16. package/dist/chunk-PixelBlast-BbJ2VmCL.cjs +190 -0
  17. package/dist/chunk-PixelBlast-BbJ2VmCL.cjs.map +1 -0
  18. package/dist/chunk-PixelBlast-BiBrG_NH.mjs +504 -0
  19. package/dist/chunk-PixelBlast-BiBrG_NH.mjs.map +1 -0
  20. package/dist/chunk-ThemeProvider-C4kxX2D0.cjs +3 -0
  21. package/dist/chunk-ThemeProvider-C4kxX2D0.cjs.map +1 -0
  22. package/dist/chunk-ThemeProvider-D0U8V6ky.mjs +28 -0
  23. package/dist/chunk-ThemeProvider-D0U8V6ky.mjs.map +1 -0
  24. package/dist/chunk-animations-CkOpTtX1.cjs +11 -0
  25. package/dist/chunk-animations-CkOpTtX1.cjs.map +1 -0
  26. package/dist/chunk-animations-DKyNVF-O.mjs +973 -0
  27. package/dist/chunk-animations-DKyNVF-O.mjs.map +1 -0
  28. package/dist/chunk-dashboard-BsGK96hu.mjs +104 -0
  29. package/dist/chunk-dashboard-BsGK96hu.mjs.map +1 -0
  30. package/dist/chunk-dashboard-CFT0HjSM.cjs +3 -0
  31. package/dist/chunk-dashboard-CFT0HjSM.cjs.map +1 -0
  32. package/dist/chunk-hooks-Cy_8mdDG.mjs +90 -0
  33. package/dist/chunk-hooks-Cy_8mdDG.mjs.map +1 -0
  34. package/dist/chunk-hooks-yVn82nBZ.cjs +3 -0
  35. package/dist/chunk-hooks-yVn82nBZ.cjs.map +1 -0
  36. package/dist/chunk-i18n-B8pZ_hpC.mjs +435 -0
  37. package/dist/chunk-i18n-B8pZ_hpC.mjs.map +1 -0
  38. package/dist/chunk-i18n-C06d89Eq.cjs +3 -0
  39. package/dist/chunk-i18n-C06d89Eq.cjs.map +1 -0
  40. package/dist/chunk-layout-BDpxG0Ca.mjs +27 -0
  41. package/dist/chunk-layout-BDpxG0Ca.mjs.map +1 -0
  42. package/dist/chunk-layout-DKCQHheg.cjs +3 -0
  43. package/dist/chunk-layout-DKCQHheg.cjs.map +1 -0
  44. package/dist/chunk-lucide-CrMbx2vC.cjs +3 -0
  45. package/dist/chunk-lucide-CrMbx2vC.cjs.map +1 -0
  46. package/dist/chunk-lucide-yNs0iz1-.mjs +158 -0
  47. package/dist/chunk-lucide-yNs0iz1-.mjs.map +1 -0
  48. package/dist/chunk-modal-C3LgRLur.cjs +3 -0
  49. package/dist/chunk-modal-C3LgRLur.cjs.map +1 -0
  50. package/dist/chunk-modal-D9vk2ENf.mjs +92 -0
  51. package/dist/chunk-modal-D9vk2ENf.mjs.map +1 -0
  52. package/dist/chunk-preference-BP-GO9Uk.cjs +3 -0
  53. package/dist/chunk-preference-BP-GO9Uk.cjs.map +1 -0
  54. package/dist/chunk-preference-BXXryZLY.cjs +3 -0
  55. package/dist/chunk-preference-BXXryZLY.cjs.map +1 -0
  56. package/dist/chunk-preference-Y15HwKd0.mjs +42 -0
  57. package/dist/chunk-preference-Y15HwKd0.mjs.map +1 -0
  58. package/dist/chunk-preference-x4EdmqU6.mjs +295 -0
  59. package/dist/chunk-preference-x4EdmqU6.mjs.map +1 -0
  60. package/dist/chunk-rolldown-runtime-Bvb_CV3F.cjs +1 -0
  61. package/dist/chunk-useLanguageLabel-38sEu2rP.cjs +3 -0
  62. package/dist/chunk-useLanguageLabel-38sEu2rP.cjs.map +1 -0
  63. package/dist/chunk-useLanguageLabel-BLdxHuep.mjs +38 -0
  64. package/dist/chunk-useLanguageLabel-BLdxHuep.mjs.map +1 -0
  65. package/dist/chunk-useLayout-CbUZVWpS.cjs +3 -0
  66. package/dist/chunk-useLayout-CbUZVWpS.cjs.map +1 -0
  67. package/dist/chunk-useLayout-CjXHRPLD.mjs +302 -0
  68. package/dist/chunk-useLayout-CjXHRPLD.mjs.map +1 -0
  69. package/dist/chunk-useTheme-C2Ip6OAs.mjs +34 -0
  70. package/dist/chunk-useTheme-C2Ip6OAs.mjs.map +1 -0
  71. package/dist/chunk-useTheme-DSps5NbC.cjs +3 -0
  72. package/dist/chunk-useTheme-DSps5NbC.cjs.map +1 -0
  73. package/dist/components.cjs +3 -3
  74. package/dist/components.cjs.map +1 -1
  75. package/dist/components.mjs +1122 -1472
  76. package/dist/components.mjs.map +1 -1
  77. package/dist/constants.cjs +0 -1
  78. package/dist/constants.cjs.map +1 -1
  79. package/dist/constants.mjs +0 -1
  80. package/dist/constants.mjs.map +1 -1
  81. package/dist/enums.cjs +1 -0
  82. package/dist/enums.mjs +43 -0
  83. package/dist/events.cjs +0 -1
  84. package/dist/events.cjs.map +1 -1
  85. package/dist/events.mjs +0 -1
  86. package/dist/events.mjs.map +1 -1
  87. package/dist/hooks.cjs +1 -4
  88. package/dist/hooks.mjs +12 -104
  89. package/dist/icons.cjs +3 -2
  90. package/dist/icons.cjs.map +1 -0
  91. package/dist/icons.mjs +19350 -73
  92. package/dist/icons.mjs.map +1 -0
  93. package/dist/languages.cjs +1 -2
  94. package/dist/languages.cjs.map +1 -1
  95. package/dist/languages.mjs +63 -76
  96. package/dist/languages.mjs.map +1 -1
  97. package/dist/layouts.cjs +2 -2
  98. package/dist/layouts.cjs.map +1 -1
  99. package/dist/layouts.mjs +787 -395
  100. package/dist/layouts.mjs.map +1 -1
  101. package/dist/navigations.cjs +0 -1
  102. package/dist/navigations.cjs.map +1 -1
  103. package/dist/navigations.mjs +0 -1
  104. package/dist/navigations.mjs.map +1 -1
  105. package/dist/pixel-blast.cjs +1 -191
  106. package/dist/pixel-blast.mjs +2 -503
  107. package/dist/providers.cjs +4 -0
  108. package/dist/providers.cjs.map +1 -0
  109. package/dist/providers.mjs +37 -0
  110. package/dist/providers.mjs.map +1 -0
  111. package/dist/services.cjs +0 -1
  112. package/dist/services.cjs.map +1 -1
  113. package/dist/services.mjs +0 -1
  114. package/dist/services.mjs.map +1 -1
  115. package/dist/src/designs/animations/index.d.ts +1 -0
  116. package/dist/src/designs/animations/index.d.ts.map +1 -1
  117. package/dist/src/designs/components/CardHeader.d.ts +9 -0
  118. package/dist/src/designs/components/CardHeader.d.ts.map +1 -0
  119. package/dist/src/designs/components/EmptyState/index.d.ts +10 -0
  120. package/dist/src/designs/components/EmptyState/index.d.ts.map +1 -0
  121. package/dist/src/designs/components/LayoutSwitcher/index.d.ts +1 -1
  122. package/dist/src/designs/components/LayoutSwitcher/index.d.ts.map +1 -1
  123. package/dist/src/designs/components/Logo/index.d.ts +15 -0
  124. package/dist/src/designs/components/Logo/index.d.ts.map +1 -0
  125. package/dist/src/designs/components/LucideIcon.d.ts +11 -0
  126. package/dist/src/designs/components/LucideIcon.d.ts.map +1 -0
  127. package/dist/src/designs/components/PageHeader/index.d.ts +11 -0
  128. package/dist/src/designs/components/PageHeader/index.d.ts.map +1 -0
  129. package/dist/src/designs/components/PreferencesPopover/index.d.ts +6 -0
  130. package/dist/src/designs/components/PreferencesPopover/index.d.ts.map +1 -0
  131. package/dist/src/designs/components/Suspense/index.d.ts +6 -60
  132. package/dist/src/designs/components/Suspense/index.d.ts.map +1 -1
  133. package/dist/src/designs/components/ThemeSettings/index.d.ts +2 -0
  134. package/dist/src/designs/components/ThemeSettings/index.d.ts.map +1 -0
  135. package/dist/src/designs/components/ThemeSwitcher/index.d.ts +1 -3
  136. package/dist/src/designs/components/ThemeSwitcher/index.d.ts.map +1 -1
  137. package/dist/src/designs/components/VirtuosoList.d.ts +37 -0
  138. package/dist/src/designs/components/VirtuosoList.d.ts.map +1 -0
  139. package/dist/src/designs/components/index.d.ts +19 -25
  140. package/dist/src/designs/components/index.d.ts.map +1 -1
  141. package/dist/src/designs/layouts/components/Background/index.d.ts +1 -1
  142. package/dist/src/designs/layouts/components/Background/index.d.ts.map +1 -1
  143. package/dist/src/designs/layouts/components/Header/index.d.ts +31 -3
  144. package/dist/src/designs/layouts/components/Header/index.d.ts.map +1 -1
  145. package/dist/src/designs/layouts/components/LayoutFrame/index.d.ts +1 -1
  146. package/dist/src/designs/layouts/components/LayoutFrame/index.d.ts.map +1 -1
  147. package/dist/src/designs/layouts/components/Main/index.d.ts +8 -0
  148. package/dist/src/designs/layouts/components/Main/index.d.ts.map +1 -0
  149. package/dist/src/designs/layouts/components/MainWrapper/index.d.ts +1 -1
  150. package/dist/src/designs/layouts/components/MainWrapper/index.d.ts.map +1 -1
  151. package/dist/src/designs/layouts/components/PageFrame/index.d.ts +10 -0
  152. package/dist/src/designs/layouts/components/PageFrame/index.d.ts.map +1 -0
  153. package/dist/src/designs/layouts/components/SideHideLayout/index.d.ts +1 -1
  154. package/dist/src/designs/layouts/components/SideHideLayout/index.d.ts.map +1 -1
  155. package/dist/src/designs/layouts/components/SideShowLayout/index.d.ts +1 -1
  156. package/dist/src/designs/layouts/components/SideShowLayout/index.d.ts.map +1 -1
  157. package/dist/src/designs/layouts/components/Sidebar/index.d.ts +74 -2
  158. package/dist/src/designs/layouts/components/Sidebar/index.d.ts.map +1 -1
  159. package/dist/src/designs/layouts/components/Sidebar/menu.d.ts +9 -0
  160. package/dist/src/designs/layouts/components/Sidebar/menu.d.ts.map +1 -0
  161. package/dist/src/designs/layouts/components/UserTopBar/index.d.ts +18 -0
  162. package/dist/src/designs/layouts/components/UserTopBar/index.d.ts.map +1 -0
  163. package/dist/src/designs/layouts/components/index.d.ts +9 -1
  164. package/dist/src/designs/layouts/components/index.d.ts.map +1 -1
  165. package/dist/src/designs/layouts/index.d.ts +2 -0
  166. package/dist/src/designs/layouts/index.d.ts.map +1 -1
  167. package/dist/src/designs/providers/ModalProvider/components/Base.d.ts +6 -0
  168. package/dist/src/designs/providers/ModalProvider/components/Base.d.ts.map +1 -0
  169. package/dist/src/designs/providers/ModalProvider/components/Confirm.d.ts +6 -0
  170. package/dist/src/designs/providers/ModalProvider/components/Confirm.d.ts.map +1 -0
  171. package/dist/src/designs/providers/ModalProvider/components/Loading.d.ts +6 -0
  172. package/dist/src/designs/providers/ModalProvider/components/Loading.d.ts.map +1 -0
  173. package/dist/src/designs/providers/ModalProvider/index.d.ts +10 -0
  174. package/dist/src/designs/providers/ModalProvider/index.d.ts.map +1 -0
  175. package/dist/src/{preference/constants.d.ts → enums/dashboard.d.ts} +4 -8
  176. package/dist/src/enums/dashboard.d.ts.map +1 -0
  177. package/dist/src/enums/index.d.ts +4 -0
  178. package/dist/src/enums/index.d.ts.map +1 -0
  179. package/dist/src/enums/language.d.ts +13 -0
  180. package/dist/src/enums/language.d.ts.map +1 -0
  181. package/dist/src/enums/theme.d.ts +107 -0
  182. package/dist/src/enums/theme.d.ts.map +1 -0
  183. package/dist/src/hooks/index.d.ts +2 -4
  184. package/dist/src/hooks/index.d.ts.map +1 -1
  185. package/dist/src/hooks/preference.d.ts +21 -0
  186. package/dist/src/hooks/preference.d.ts.map +1 -0
  187. package/dist/src/icons/animated/accessibility-icon.d.ts +13 -0
  188. package/dist/src/icons/animated/accessibility-icon.d.ts.map +1 -0
  189. package/dist/src/icons/animated/airplane-icon.d.ts +9 -0
  190. package/dist/src/icons/animated/airplane-icon.d.ts.map +1 -0
  191. package/dist/src/icons/animated/alarm-clock-plus-icon.d.ts +11 -0
  192. package/dist/src/icons/animated/alarm-clock-plus-icon.d.ts.map +1 -0
  193. package/dist/src/icons/animated/align-center-icon.d.ts +4 -0
  194. package/dist/src/icons/animated/align-center-icon.d.ts.map +1 -0
  195. package/dist/src/icons/animated/align-vertical-space-around-icon.d.ts +4 -0
  196. package/dist/src/icons/animated/align-vertical-space-around-icon.d.ts.map +1 -0
  197. package/dist/src/icons/animated/ambulance-icon.d.ts +4 -0
  198. package/dist/src/icons/animated/ambulance-icon.d.ts.map +1 -0
  199. package/dist/src/icons/animated/ampersand-icon.d.ts +4 -0
  200. package/dist/src/icons/animated/ampersand-icon.d.ts.map +1 -0
  201. package/dist/src/icons/animated/angry-icon.d.ts +4 -0
  202. package/dist/src/icons/animated/angry-icon.d.ts.map +1 -0
  203. package/dist/src/icons/animated/annoyed-icon.d.ts +4 -0
  204. package/dist/src/icons/animated/annoyed-icon.d.ts.map +1 -0
  205. package/dist/src/icons/animated/apple-brand-logo.d.ts +4 -0
  206. package/dist/src/icons/animated/apple-brand-logo.d.ts.map +1 -0
  207. package/dist/src/icons/animated/arrow-back-icon.d.ts +4 -0
  208. package/dist/src/icons/animated/arrow-back-icon.d.ts.map +1 -0
  209. package/dist/src/icons/animated/arrow-back-up-icon.d.ts +4 -0
  210. package/dist/src/icons/animated/arrow-back-up-icon.d.ts.map +1 -0
  211. package/dist/src/icons/animated/arrow-big-down-dash-icon.d.ts +4 -0
  212. package/dist/src/icons/animated/arrow-big-down-dash-icon.d.ts.map +1 -0
  213. package/dist/src/icons/animated/arrow-big-down-icon.d.ts +4 -0
  214. package/dist/src/icons/animated/arrow-big-down-icon.d.ts.map +1 -0
  215. package/dist/src/icons/animated/arrow-big-left-dash-icon.d.ts +4 -0
  216. package/dist/src/icons/animated/arrow-big-left-dash-icon.d.ts.map +1 -0
  217. package/dist/src/icons/animated/arrow-big-left-icon.d.ts +4 -0
  218. package/dist/src/icons/animated/arrow-big-left-icon.d.ts.map +1 -0
  219. package/dist/src/icons/animated/arrow-big-right-dash-icon.d.ts +4 -0
  220. package/dist/src/icons/animated/arrow-big-right-dash-icon.d.ts.map +1 -0
  221. package/dist/src/icons/animated/arrow-big-right-icon.d.ts +4 -0
  222. package/dist/src/icons/animated/arrow-big-right-icon.d.ts.map +1 -0
  223. package/dist/src/icons/animated/arrow-big-up-dash-icon.d.ts +4 -0
  224. package/dist/src/icons/animated/arrow-big-up-dash-icon.d.ts.map +1 -0
  225. package/dist/src/icons/animated/arrow-big-up-icon.d.ts +4 -0
  226. package/dist/src/icons/animated/arrow-big-up-icon.d.ts.map +1 -0
  227. package/dist/src/icons/animated/arrow-down-0-1-icon.d.ts +4 -0
  228. package/dist/src/icons/animated/arrow-down-0-1-icon.d.ts.map +1 -0
  229. package/dist/src/icons/animated/arrow-down-1-0-icon.d.ts +4 -0
  230. package/dist/src/icons/animated/arrow-down-1-0-icon.d.ts.map +1 -0
  231. package/dist/src/icons/animated/arrow-down-a-z-icon.d.ts +4 -0
  232. package/dist/src/icons/animated/arrow-down-a-z-icon.d.ts.map +1 -0
  233. package/dist/src/icons/animated/arrow-narrow-down-dashed-icon.d.ts +4 -0
  234. package/dist/src/icons/animated/arrow-narrow-down-dashed-icon.d.ts.map +1 -0
  235. package/dist/src/icons/animated/arrow-narrow-down-icon.d.ts +4 -0
  236. package/dist/src/icons/animated/arrow-narrow-down-icon.d.ts.map +1 -0
  237. package/dist/src/icons/animated/arrow-narrow-left-dashed-icon.d.ts +4 -0
  238. package/dist/src/icons/animated/arrow-narrow-left-dashed-icon.d.ts.map +1 -0
  239. package/dist/src/icons/animated/arrow-narrow-left-icon.d.ts +4 -0
  240. package/dist/src/icons/animated/arrow-narrow-left-icon.d.ts.map +1 -0
  241. package/dist/src/icons/animated/arrow-narrow-right-dashed-icon.d.ts +4 -0
  242. package/dist/src/icons/animated/arrow-narrow-right-dashed-icon.d.ts.map +1 -0
  243. package/dist/src/icons/animated/arrow-narrow-right-icon.d.ts +4 -0
  244. package/dist/src/icons/animated/arrow-narrow-right-icon.d.ts.map +1 -0
  245. package/dist/src/icons/animated/arrow-narrow-up-dashed-icon.d.ts +4 -0
  246. package/dist/src/icons/animated/arrow-narrow-up-dashed-icon.d.ts.map +1 -0
  247. package/dist/src/icons/animated/arrow-narrow-up-icon.d.ts +4 -0
  248. package/dist/src/icons/animated/arrow-narrow-up-icon.d.ts.map +1 -0
  249. package/dist/src/icons/animated/at-sign-icon.d.ts +4 -0
  250. package/dist/src/icons/animated/at-sign-icon.d.ts.map +1 -0
  251. package/dist/src/icons/animated/banana-icon.d.ts +4 -0
  252. package/dist/src/icons/animated/banana-icon.d.ts.map +1 -0
  253. package/dist/src/icons/animated/battery-charging-icon.d.ts +4 -0
  254. package/dist/src/icons/animated/battery-charging-icon.d.ts.map +1 -0
  255. package/dist/src/icons/animated/battery-icon.d.ts +4 -0
  256. package/dist/src/icons/animated/battery-icon.d.ts.map +1 -0
  257. package/dist/src/icons/animated/battery-pause-icon.d.ts +4 -0
  258. package/dist/src/icons/animated/battery-pause-icon.d.ts.map +1 -0
  259. package/dist/src/icons/animated/bell-off-icon.d.ts +4 -0
  260. package/dist/src/icons/animated/bell-off-icon.d.ts.map +1 -0
  261. package/dist/src/icons/animated/bluetooth-connected-icon.d.ts +4 -0
  262. package/dist/src/icons/animated/bluetooth-connected-icon.d.ts.map +1 -0
  263. package/dist/src/icons/animated/book-icon.d.ts +4 -0
  264. package/dist/src/icons/animated/book-icon.d.ts.map +1 -0
  265. package/dist/src/icons/animated/bookmark-icon.d.ts +4 -0
  266. package/dist/src/icons/animated/bookmark-icon.d.ts.map +1 -0
  267. package/dist/src/icons/animated/brain-circuit-icon.d.ts +4 -0
  268. package/dist/src/icons/animated/brain-circuit-icon.d.ts.map +1 -0
  269. package/dist/src/icons/animated/brand-aistudio-icon.d.ts +4 -0
  270. package/dist/src/icons/animated/brand-aistudio-icon.d.ts.map +1 -0
  271. package/dist/src/icons/animated/brand-anthropic-icon.d.ts +4 -0
  272. package/dist/src/icons/animated/brand-anthropic-icon.d.ts.map +1 -0
  273. package/dist/src/icons/animated/brand-aws-icon.d.ts +4 -0
  274. package/dist/src/icons/animated/brand-aws-icon.d.ts.map +1 -0
  275. package/dist/src/icons/animated/brand-bags-fm-icon.d.ts +4 -0
  276. package/dist/src/icons/animated/brand-bags-fm-icon.d.ts.map +1 -0
  277. package/dist/src/icons/animated/brand-chrome-icon.d.ts +4 -0
  278. package/dist/src/icons/animated/brand-chrome-icon.d.ts.map +1 -0
  279. package/dist/src/icons/animated/brand-cursor-icon.d.ts +4 -0
  280. package/dist/src/icons/animated/brand-cursor-icon.d.ts.map +1 -0
  281. package/dist/src/icons/animated/brand-gemini-icon.d.ts +4 -0
  282. package/dist/src/icons/animated/brand-gemini-icon.d.ts.map +1 -0
  283. package/dist/src/icons/animated/brand-google-icon.d.ts +4 -0
  284. package/dist/src/icons/animated/brand-google-icon.d.ts.map +1 -0
  285. package/dist/src/icons/animated/brand-grok-icon.d.ts +4 -0
  286. package/dist/src/icons/animated/brand-grok-icon.d.ts.map +1 -0
  287. package/dist/src/icons/animated/brand-lmstudio-icon.d.ts +4 -0
  288. package/dist/src/icons/animated/brand-lmstudio-icon.d.ts.map +1 -0
  289. package/dist/src/icons/animated/brand-midjourney-icon.d.ts +4 -0
  290. package/dist/src/icons/animated/brand-midjourney-icon.d.ts.map +1 -0
  291. package/dist/src/icons/animated/brand-nextjs-icon.d.ts +4 -0
  292. package/dist/src/icons/animated/brand-nextjs-icon.d.ts.map +1 -0
  293. package/dist/src/icons/animated/brand-notion-icon.d.ts +4 -0
  294. package/dist/src/icons/animated/brand-notion-icon.d.ts.map +1 -0
  295. package/dist/src/icons/animated/brand-ollama-icon.d.ts +4 -0
  296. package/dist/src/icons/animated/brand-ollama-icon.d.ts.map +1 -0
  297. package/dist/src/icons/animated/brand-openai-icon.d.ts +4 -0
  298. package/dist/src/icons/animated/brand-openai-icon.d.ts.map +1 -0
  299. package/dist/src/icons/animated/brand-paypal-icon.d.ts +4 -0
  300. package/dist/src/icons/animated/brand-paypal-icon.d.ts.map +1 -0
  301. package/dist/src/icons/animated/brand-qwen-icon.d.ts +4 -0
  302. package/dist/src/icons/animated/brand-qwen-icon.d.ts.map +1 -0
  303. package/dist/src/icons/animated/brand-railway-icon.d.ts +4 -0
  304. package/dist/src/icons/animated/brand-railway-icon.d.ts.map +1 -0
  305. package/dist/src/icons/animated/brand-react-icon.d.ts +4 -0
  306. package/dist/src/icons/animated/brand-react-icon.d.ts.map +1 -0
  307. package/dist/src/icons/animated/brand-react-native-icon.d.ts +4 -0
  308. package/dist/src/icons/animated/brand-react-native-icon.d.ts.map +1 -0
  309. package/dist/src/icons/animated/brand-stripe-icon.d.ts +4 -0
  310. package/dist/src/icons/animated/brand-stripe-icon.d.ts.map +1 -0
  311. package/dist/src/icons/animated/brand-telegram-icon.d.ts +4 -0
  312. package/dist/src/icons/animated/brand-telegram-icon.d.ts.map +1 -0
  313. package/dist/src/icons/animated/brand-threads-icon.d.ts +4 -0
  314. package/dist/src/icons/animated/brand-threads-icon.d.ts.map +1 -0
  315. package/dist/src/icons/animated/brand-twitch-icon.d.ts +4 -0
  316. package/dist/src/icons/animated/brand-twitch-icon.d.ts.map +1 -0
  317. package/dist/src/icons/animated/brand-vercel-icon.d.ts +4 -0
  318. package/dist/src/icons/animated/brand-vercel-icon.d.ts.map +1 -0
  319. package/dist/src/icons/animated/brand-windows-icon.d.ts +4 -0
  320. package/dist/src/icons/animated/brand-windows-icon.d.ts.map +1 -0
  321. package/dist/src/icons/animated/brand-wordpress-icon.d.ts +4 -0
  322. package/dist/src/icons/animated/brand-wordpress-icon.d.ts.map +1 -0
  323. package/dist/src/icons/animated/brand-xai-icon.d.ts +4 -0
  324. package/dist/src/icons/animated/brand-xai-icon.d.ts.map +1 -0
  325. package/dist/src/icons/animated/brand-zoom-icon.d.ts +4 -0
  326. package/dist/src/icons/animated/brand-zoom-icon.d.ts.map +1 -0
  327. package/dist/src/icons/animated/brightness-down-icon.d.ts +4 -0
  328. package/dist/src/icons/animated/brightness-down-icon.d.ts.map +1 -0
  329. package/dist/src/icons/animated/bug-icon.d.ts +4 -0
  330. package/dist/src/icons/animated/bug-icon.d.ts.map +1 -0
  331. package/dist/src/icons/animated/bulb-svg.d.ts +4 -0
  332. package/dist/src/icons/animated/bulb-svg.d.ts.map +1 -0
  333. package/dist/src/icons/animated/camera-icon.d.ts +4 -0
  334. package/dist/src/icons/animated/camera-icon.d.ts.map +1 -0
  335. package/dist/src/icons/animated/camera-off-icon.d.ts +4 -0
  336. package/dist/src/icons/animated/camera-off-icon.d.ts.map +1 -0
  337. package/dist/src/icons/animated/candy-cane-icon.d.ts +4 -0
  338. package/dist/src/icons/animated/candy-cane-icon.d.ts.map +1 -0
  339. package/dist/src/icons/animated/cart-icon.d.ts +4 -0
  340. package/dist/src/icons/animated/cart-icon.d.ts.map +1 -0
  341. package/dist/src/icons/animated/chart-bar-icon.d.ts +4 -0
  342. package/dist/src/icons/animated/chart-bar-icon.d.ts.map +1 -0
  343. package/dist/src/icons/animated/chart-covariate-icon.d.ts +4 -0
  344. package/dist/src/icons/animated/chart-covariate-icon.d.ts.map +1 -0
  345. package/dist/src/icons/animated/chart-histogram-icon.d.ts +4 -0
  346. package/dist/src/icons/animated/chart-histogram-icon.d.ts.map +1 -0
  347. package/dist/src/icons/animated/chart-line-icon.d.ts +4 -0
  348. package/dist/src/icons/animated/chart-line-icon.d.ts.map +1 -0
  349. package/dist/src/icons/animated/chart-pie-icon.d.ts +4 -0
  350. package/dist/src/icons/animated/chart-pie-icon.d.ts.map +1 -0
  351. package/dist/src/icons/animated/checked-icon.d.ts +4 -0
  352. package/dist/src/icons/animated/checked-icon.d.ts.map +1 -0
  353. package/dist/src/icons/animated/clock-icon.d.ts +4 -0
  354. package/dist/src/icons/animated/clock-icon.d.ts.map +1 -0
  355. package/dist/src/icons/animated/cloud-1-icon.d.ts +4 -0
  356. package/dist/src/icons/animated/cloud-1-icon.d.ts.map +1 -0
  357. package/dist/src/icons/animated/cloud-2-icon.d.ts +4 -0
  358. package/dist/src/icons/animated/cloud-2-icon.d.ts.map +1 -0
  359. package/dist/src/icons/animated/cloud-3-icon.d.ts +4 -0
  360. package/dist/src/icons/animated/cloud-3-icon.d.ts.map +1 -0
  361. package/dist/src/icons/animated/code-icon.d.ts +4 -0
  362. package/dist/src/icons/animated/code-icon.d.ts.map +1 -0
  363. package/dist/src/icons/animated/code-xml-icon.d.ts +4 -0
  364. package/dist/src/icons/animated/code-xml-icon.d.ts.map +1 -0
  365. package/dist/src/icons/animated/coffee-icon.d.ts +4 -0
  366. package/dist/src/icons/animated/coffee-icon.d.ts.map +1 -0
  367. package/dist/src/icons/animated/coin-bitcoin-icon.d.ts +4 -0
  368. package/dist/src/icons/animated/coin-bitcoin-icon.d.ts.map +1 -0
  369. package/dist/src/icons/animated/copy-icon.d.ts +4 -0
  370. package/dist/src/icons/animated/copy-icon.d.ts.map +1 -0
  371. package/dist/src/icons/animated/copy-off-icon.d.ts +4 -0
  372. package/dist/src/icons/animated/copy-off-icon.d.ts.map +1 -0
  373. package/dist/src/icons/animated/copyright-icon.d.ts +4 -0
  374. package/dist/src/icons/animated/copyright-icon.d.ts.map +1 -0
  375. package/dist/src/icons/animated/cpu-icon.d.ts +4 -0
  376. package/dist/src/icons/animated/cpu-icon.d.ts.map +1 -0
  377. package/dist/src/icons/animated/credit-card.d.ts +4 -0
  378. package/dist/src/icons/animated/credit-card.d.ts.map +1 -0
  379. package/dist/src/icons/animated/currency-bitcoin-icon.d.ts +4 -0
  380. package/dist/src/icons/animated/currency-bitcoin-icon.d.ts.map +1 -0
  381. package/dist/src/icons/animated/currency-dollar-icon.d.ts +4 -0
  382. package/dist/src/icons/animated/currency-dollar-icon.d.ts.map +1 -0
  383. package/dist/src/icons/animated/currency-ethereum-icon.d.ts +4 -0
  384. package/dist/src/icons/animated/currency-ethereum-icon.d.ts.map +1 -0
  385. package/dist/src/icons/animated/currency-euro-icon.d.ts +4 -0
  386. package/dist/src/icons/animated/currency-euro-icon.d.ts.map +1 -0
  387. package/dist/src/icons/animated/currency-rupee-icon.d.ts +4 -0
  388. package/dist/src/icons/animated/currency-rupee-icon.d.ts.map +1 -0
  389. package/dist/src/icons/animated/device-airpods-icon.d.ts +4 -0
  390. package/dist/src/icons/animated/device-airpods-icon.d.ts.map +1 -0
  391. package/dist/src/icons/animated/dialpad-icon.d.ts +4 -0
  392. package/dist/src/icons/animated/dialpad-icon.d.ts.map +1 -0
  393. package/dist/src/icons/animated/dino-icon.d.ts +4 -0
  394. package/dist/src/icons/animated/dino-icon.d.ts.map +1 -0
  395. package/dist/src/icons/animated/discord-icon.d.ts +4 -0
  396. package/dist/src/icons/animated/discord-icon.d.ts.map +1 -0
  397. package/dist/src/icons/animated/docker-icon.d.ts +4 -0
  398. package/dist/src/icons/animated/docker-icon.d.ts.map +1 -0
  399. package/dist/src/icons/animated/dots-horizontal-icon.d.ts +4 -0
  400. package/dist/src/icons/animated/dots-horizontal-icon.d.ts.map +1 -0
  401. package/dist/src/icons/animated/dots-vertical-icon.d.ts +4 -0
  402. package/dist/src/icons/animated/dots-vertical-icon.d.ts.map +1 -0
  403. package/dist/src/icons/animated/double-check-icon.d.ts +4 -0
  404. package/dist/src/icons/animated/double-check-icon.d.ts.map +1 -0
  405. package/dist/src/icons/animated/down-chevron.d.ts +4 -0
  406. package/dist/src/icons/animated/down-chevron.d.ts.map +1 -0
  407. package/dist/src/icons/animated/download-icon.d.ts +4 -0
  408. package/dist/src/icons/animated/download-icon.d.ts.map +1 -0
  409. package/dist/src/icons/animated/drum-icon.d.ts +4 -0
  410. package/dist/src/icons/animated/drum-icon.d.ts.map +1 -0
  411. package/dist/src/icons/animated/expand-icon.d.ts +4 -0
  412. package/dist/src/icons/animated/expand-icon.d.ts.map +1 -0
  413. package/dist/src/icons/animated/external-link-icon.d.ts +4 -0
  414. package/dist/src/icons/animated/external-link-icon.d.ts.map +1 -0
  415. package/dist/src/icons/animated/eye-icon.d.ts +4 -0
  416. package/dist/src/icons/animated/eye-icon.d.ts.map +1 -0
  417. package/dist/src/icons/animated/eye-off-icon.d.ts +4 -0
  418. package/dist/src/icons/animated/eye-off-icon.d.ts.map +1 -0
  419. package/dist/src/icons/animated/facebook-icon.d.ts +4 -0
  420. package/dist/src/icons/animated/facebook-icon.d.ts.map +1 -0
  421. package/dist/src/icons/animated/figma-icon.d.ts +4 -0
  422. package/dist/src/icons/animated/figma-icon.d.ts.map +1 -0
  423. package/dist/src/icons/animated/file-description-icon.d.ts +4 -0
  424. package/dist/src/icons/animated/file-description-icon.d.ts.map +1 -0
  425. package/dist/src/icons/animated/filled-bell-icon.d.ts +4 -0
  426. package/dist/src/icons/animated/filled-bell-icon.d.ts.map +1 -0
  427. package/dist/src/icons/animated/filled-checked-icon.d.ts +4 -0
  428. package/dist/src/icons/animated/filled-checked-icon.d.ts.map +1 -0
  429. package/dist/src/icons/animated/filter-icon.d.ts +4 -0
  430. package/dist/src/icons/animated/filter-icon.d.ts.map +1 -0
  431. package/dist/src/icons/animated/flame-icon.d.ts +4 -0
  432. package/dist/src/icons/animated/flame-icon.d.ts.map +1 -0
  433. package/dist/src/icons/animated/focus-icon.d.ts +4 -0
  434. package/dist/src/icons/animated/focus-icon.d.ts.map +1 -0
  435. package/dist/src/icons/animated/gamepad-icon.d.ts +4 -0
  436. package/dist/src/icons/animated/gamepad-icon.d.ts.map +1 -0
  437. package/dist/src/icons/animated/gauge-icon.d.ts +4 -0
  438. package/dist/src/icons/animated/gauge-icon.d.ts.map +1 -0
  439. package/dist/src/icons/animated/gear-icon.d.ts +4 -0
  440. package/dist/src/icons/animated/gear-icon.d.ts.map +1 -0
  441. package/dist/src/icons/animated/ghost-icon.d.ts +4 -0
  442. package/dist/src/icons/animated/ghost-icon.d.ts.map +1 -0
  443. package/dist/src/icons/animated/github-copilot-icon.d.ts +4 -0
  444. package/dist/src/icons/animated/github-copilot-icon.d.ts.map +1 -0
  445. package/dist/src/icons/animated/github-icon.d.ts +4 -0
  446. package/dist/src/icons/animated/github-icon.d.ts.map +1 -0
  447. package/dist/src/icons/animated/gitlab-icon.d.ts +4 -0
  448. package/dist/src/icons/animated/gitlab-icon.d.ts.map +1 -0
  449. package/dist/src/icons/animated/globe-icon.d.ts +4 -0
  450. package/dist/src/icons/animated/globe-icon.d.ts.map +1 -0
  451. package/dist/src/icons/animated/gmail-icon.d.ts +4 -0
  452. package/dist/src/icons/animated/gmail-icon.d.ts.map +1 -0
  453. package/dist/src/icons/animated/golang-icon.d.ts +4 -0
  454. package/dist/src/icons/animated/golang-icon.d.ts.map +1 -0
  455. package/dist/src/icons/animated/hand-heart-icon.d.ts +4 -0
  456. package/dist/src/icons/animated/hand-heart-icon.d.ts.map +1 -0
  457. package/dist/src/icons/animated/hashtag-icon.d.ts +4 -0
  458. package/dist/src/icons/animated/hashtag-icon.d.ts.map +1 -0
  459. package/dist/src/icons/animated/heart-icon.d.ts +4 -0
  460. package/dist/src/icons/animated/heart-icon.d.ts.map +1 -0
  461. package/dist/src/icons/animated/history-circle-icon.d.ts +4 -0
  462. package/dist/src/icons/animated/history-circle-icon.d.ts.map +1 -0
  463. package/dist/src/icons/animated/home-icon.d.ts +4 -0
  464. package/dist/src/icons/animated/home-icon.d.ts.map +1 -0
  465. package/dist/src/icons/animated/hotel-icon.d.ts +4 -0
  466. package/dist/src/icons/animated/hotel-icon.d.ts.map +1 -0
  467. package/dist/src/icons/animated/index.d.ts +267 -0
  468. package/dist/src/icons/animated/index.d.ts.map +1 -0
  469. package/dist/src/icons/animated/info-circle-icon.d.ts +4 -0
  470. package/dist/src/icons/animated/info-circle-icon.d.ts.map +1 -0
  471. package/dist/src/icons/animated/instagram-icon.d.ts +4 -0
  472. package/dist/src/icons/animated/instagram-icon.d.ts.map +1 -0
  473. package/dist/src/icons/animated/javascript-icon.d.ts +4 -0
  474. package/dist/src/icons/animated/javascript-icon.d.ts.map +1 -0
  475. package/dist/src/icons/animated/keyframes-icon.d.ts +4 -0
  476. package/dist/src/icons/animated/keyframes-icon.d.ts.map +1 -0
  477. package/dist/src/icons/animated/layers-icon.d.ts +4 -0
  478. package/dist/src/icons/animated/layers-icon.d.ts.map +1 -0
  479. package/dist/src/icons/animated/layout-bottombar-collapse-icon.d.ts +4 -0
  480. package/dist/src/icons/animated/layout-bottombar-collapse-icon.d.ts.map +1 -0
  481. package/dist/src/icons/animated/layout-dashboard-icon.d.ts +4 -0
  482. package/dist/src/icons/animated/layout-dashboard-icon.d.ts.map +1 -0
  483. package/dist/src/icons/animated/layout-sidebar-right-collapse-icon.d.ts +4 -0
  484. package/dist/src/icons/animated/layout-sidebar-right-collapse-icon.d.ts.map +1 -0
  485. package/dist/src/icons/animated/layout-sidebar-right-icon.d.ts +4 -0
  486. package/dist/src/icons/animated/layout-sidebar-right-icon.d.ts.map +1 -0
  487. package/dist/src/icons/animated/letter-a-icon.d.ts +4 -0
  488. package/dist/src/icons/animated/letter-a-icon.d.ts.map +1 -0
  489. package/dist/src/icons/animated/letter-b-icon.d.ts +4 -0
  490. package/dist/src/icons/animated/letter-b-icon.d.ts.map +1 -0
  491. package/dist/src/icons/animated/letter-c-icon.d.ts +4 -0
  492. package/dist/src/icons/animated/letter-c-icon.d.ts.map +1 -0
  493. package/dist/src/icons/animated/letter-d-icon.d.ts +4 -0
  494. package/dist/src/icons/animated/letter-d-icon.d.ts.map +1 -0
  495. package/dist/src/icons/animated/letter-e-icon.d.ts +4 -0
  496. package/dist/src/icons/animated/letter-e-icon.d.ts.map +1 -0
  497. package/dist/src/icons/animated/letter-f-icon.d.ts +4 -0
  498. package/dist/src/icons/animated/letter-f-icon.d.ts.map +1 -0
  499. package/dist/src/icons/animated/letter-g-icon.d.ts +4 -0
  500. package/dist/src/icons/animated/letter-g-icon.d.ts.map +1 -0
  501. package/dist/src/icons/animated/letter-h-icon.d.ts +4 -0
  502. package/dist/src/icons/animated/letter-h-icon.d.ts.map +1 -0
  503. package/dist/src/icons/animated/letter-i-icon.d.ts +4 -0
  504. package/dist/src/icons/animated/letter-i-icon.d.ts.map +1 -0
  505. package/dist/src/icons/animated/letter-j-icon.d.ts +4 -0
  506. package/dist/src/icons/animated/letter-j-icon.d.ts.map +1 -0
  507. package/dist/src/icons/animated/letter-k-icon.d.ts +4 -0
  508. package/dist/src/icons/animated/letter-k-icon.d.ts.map +1 -0
  509. package/dist/src/icons/animated/letter-l-icon.d.ts +4 -0
  510. package/dist/src/icons/animated/letter-l-icon.d.ts.map +1 -0
  511. package/dist/src/icons/animated/letter-m-icon.d.ts +4 -0
  512. package/dist/src/icons/animated/letter-m-icon.d.ts.map +1 -0
  513. package/dist/src/icons/animated/letter-n-icon.d.ts +4 -0
  514. package/dist/src/icons/animated/letter-n-icon.d.ts.map +1 -0
  515. package/dist/src/icons/animated/letter-o-icon.d.ts +4 -0
  516. package/dist/src/icons/animated/letter-o-icon.d.ts.map +1 -0
  517. package/dist/src/icons/animated/letter-p-icon.d.ts +4 -0
  518. package/dist/src/icons/animated/letter-p-icon.d.ts.map +1 -0
  519. package/dist/src/icons/animated/letter-q-icon.d.ts +4 -0
  520. package/dist/src/icons/animated/letter-q-icon.d.ts.map +1 -0
  521. package/dist/src/icons/animated/letter-r-icon.d.ts +4 -0
  522. package/dist/src/icons/animated/letter-r-icon.d.ts.map +1 -0
  523. package/dist/src/icons/animated/letter-s-icon.d.ts +4 -0
  524. package/dist/src/icons/animated/letter-s-icon.d.ts.map +1 -0
  525. package/dist/src/icons/animated/letter-t-icon.d.ts +4 -0
  526. package/dist/src/icons/animated/letter-t-icon.d.ts.map +1 -0
  527. package/dist/src/icons/animated/letter-u-icon.d.ts +4 -0
  528. package/dist/src/icons/animated/letter-u-icon.d.ts.map +1 -0
  529. package/dist/src/icons/animated/letter-v-icon.d.ts +4 -0
  530. package/dist/src/icons/animated/letter-v-icon.d.ts.map +1 -0
  531. package/dist/src/icons/animated/letter-w-icon.d.ts +4 -0
  532. package/dist/src/icons/animated/letter-w-icon.d.ts.map +1 -0
  533. package/dist/src/icons/animated/letter-x-icon.d.ts +4 -0
  534. package/dist/src/icons/animated/letter-x-icon.d.ts.map +1 -0
  535. package/dist/src/icons/animated/letter-y-icon.d.ts +4 -0
  536. package/dist/src/icons/animated/letter-y-icon.d.ts.map +1 -0
  537. package/dist/src/icons/animated/letter-z-icon.d.ts +4 -0
  538. package/dist/src/icons/animated/letter-z-icon.d.ts.map +1 -0
  539. package/dist/src/icons/animated/library-icon.d.ts +4 -0
  540. package/dist/src/icons/animated/library-icon.d.ts.map +1 -0
  541. package/dist/src/icons/animated/like-icon.d.ts +4 -0
  542. package/dist/src/icons/animated/like-icon.d.ts.map +1 -0
  543. package/dist/src/icons/animated/link-icon.d.ts +4 -0
  544. package/dist/src/icons/animated/link-icon.d.ts.map +1 -0
  545. package/dist/src/icons/animated/linkedin-icon.d.ts +4 -0
  546. package/dist/src/icons/animated/linkedin-icon.d.ts.map +1 -0
  547. package/dist/src/icons/animated/locate-icon.d.ts +4 -0
  548. package/dist/src/icons/animated/locate-icon.d.ts.map +1 -0
  549. package/dist/src/icons/animated/lock-icon.d.ts +4 -0
  550. package/dist/src/icons/animated/lock-icon.d.ts.map +1 -0
  551. package/dist/src/icons/animated/logout-icon.d.ts +4 -0
  552. package/dist/src/icons/animated/logout-icon.d.ts.map +1 -0
  553. package/dist/src/icons/animated/magnifier-icon.d.ts +4 -0
  554. package/dist/src/icons/animated/magnifier-icon.d.ts.map +1 -0
  555. package/dist/src/icons/animated/mail-filled-icon.d.ts +4 -0
  556. package/dist/src/icons/animated/mail-filled-icon.d.ts.map +1 -0
  557. package/dist/src/icons/animated/map-pin-icon.d.ts +4 -0
  558. package/dist/src/icons/animated/map-pin-icon.d.ts.map +1 -0
  559. package/dist/src/icons/animated/meh-icon.d.ts +4 -0
  560. package/dist/src/icons/animated/meh-icon.d.ts.map +1 -0
  561. package/dist/src/icons/animated/message-circle-icon.d.ts +4 -0
  562. package/dist/src/icons/animated/message-circle-icon.d.ts.map +1 -0
  563. package/dist/src/icons/animated/moon-icon.d.ts +4 -0
  564. package/dist/src/icons/animated/moon-icon.d.ts.map +1 -0
  565. package/dist/src/icons/animated/mouse-pointer-2-icon.d.ts +4 -0
  566. package/dist/src/icons/animated/mouse-pointer-2-icon.d.ts.map +1 -0
  567. package/dist/src/icons/animated/mysql-icon.d.ts +4 -0
  568. package/dist/src/icons/animated/mysql-icon.d.ts.map +1 -0
  569. package/dist/src/icons/animated/nodejs-icon.d.ts +4 -0
  570. package/dist/src/icons/animated/nodejs-icon.d.ts.map +1 -0
  571. package/dist/src/icons/animated/paint-icon.d.ts +4 -0
  572. package/dist/src/icons/animated/paint-icon.d.ts.map +1 -0
  573. package/dist/src/icons/animated/party-popper-icon.d.ts +4 -0
  574. package/dist/src/icons/animated/party-popper-icon.d.ts.map +1 -0
  575. package/dist/src/icons/animated/passport-icon.d.ts +4 -0
  576. package/dist/src/icons/animated/passport-icon.d.ts.map +1 -0
  577. package/dist/src/icons/animated/paw-print-icon.d.ts +4 -0
  578. package/dist/src/icons/animated/paw-print-icon.d.ts.map +1 -0
  579. package/dist/src/icons/animated/pen-icon.d.ts +4 -0
  580. package/dist/src/icons/animated/pen-icon.d.ts.map +1 -0
  581. package/dist/src/icons/animated/phone-volume.d.ts +4 -0
  582. package/dist/src/icons/animated/phone-volume.d.ts.map +1 -0
  583. package/dist/src/icons/animated/pinterest-icon.d.ts +4 -0
  584. package/dist/src/icons/animated/pinterest-icon.d.ts.map +1 -0
  585. package/dist/src/icons/animated/player-icon.d.ts +4 -0
  586. package/dist/src/icons/animated/player-icon.d.ts.map +1 -0
  587. package/dist/src/icons/animated/plug-connected-icon.d.ts +4 -0
  588. package/dist/src/icons/animated/plug-connected-icon.d.ts.map +1 -0
  589. package/dist/src/icons/animated/plug-connected-x-icon.d.ts +4 -0
  590. package/dist/src/icons/animated/plug-connected-x-icon.d.ts.map +1 -0
  591. package/dist/src/icons/animated/python-icon.d.ts +4 -0
  592. package/dist/src/icons/animated/python-icon.d.ts.map +1 -0
  593. package/dist/src/icons/animated/qrcode-icon.d.ts +4 -0
  594. package/dist/src/icons/animated/qrcode-icon.d.ts.map +1 -0
  595. package/dist/src/icons/animated/question-mark.d.ts +4 -0
  596. package/dist/src/icons/animated/question-mark.d.ts.map +1 -0
  597. package/dist/src/icons/animated/radio-icon.d.ts +4 -0
  598. package/dist/src/icons/animated/radio-icon.d.ts.map +1 -0
  599. package/dist/src/icons/animated/rainbow-icon.d.ts +4 -0
  600. package/dist/src/icons/animated/rainbow-icon.d.ts.map +1 -0
  601. package/dist/src/icons/animated/refresh-icon.d.ts +4 -0
  602. package/dist/src/icons/animated/refresh-icon.d.ts.map +1 -0
  603. package/dist/src/icons/animated/right-chevron.d.ts +4 -0
  604. package/dist/src/icons/animated/right-chevron.d.ts.map +1 -0
  605. package/dist/src/icons/animated/rocket-icon.d.ts +4 -0
  606. package/dist/src/icons/animated/rocket-icon.d.ts.map +1 -0
  607. package/dist/src/icons/animated/rosette-discount-check-icon.d.ts +4 -0
  608. package/dist/src/icons/animated/rosette-discount-check-icon.d.ts.map +1 -0
  609. package/dist/src/icons/animated/rosette-discount-icon.d.ts +4 -0
  610. package/dist/src/icons/animated/rosette-discount-icon.d.ts.map +1 -0
  611. package/dist/src/icons/animated/router-icon.d.ts +4 -0
  612. package/dist/src/icons/animated/router-icon.d.ts.map +1 -0
  613. package/dist/src/icons/animated/satellite-dish-icon.d.ts +4 -0
  614. package/dist/src/icons/animated/satellite-dish-icon.d.ts.map +1 -0
  615. package/dist/src/icons/animated/save-icon.d.ts +4 -0
  616. package/dist/src/icons/animated/save-icon.d.ts.map +1 -0
  617. package/dist/src/icons/animated/scan-barcode-icon.d.ts +4 -0
  618. package/dist/src/icons/animated/scan-barcode-icon.d.ts.map +1 -0
  619. package/dist/src/icons/animated/scan-heart-icon.d.ts +4 -0
  620. package/dist/src/icons/animated/scan-heart-icon.d.ts.map +1 -0
  621. package/dist/src/icons/animated/send-horizontal-icon.d.ts +4 -0
  622. package/dist/src/icons/animated/send-horizontal-icon.d.ts.map +1 -0
  623. package/dist/src/icons/animated/send-icon.d.ts +4 -0
  624. package/dist/src/icons/animated/send-icon.d.ts.map +1 -0
  625. package/dist/src/icons/animated/shield-check.d.ts +4 -0
  626. package/dist/src/icons/animated/shield-check.d.ts.map +1 -0
  627. package/dist/src/icons/animated/shopping-cart-icon.d.ts +4 -0
  628. package/dist/src/icons/animated/shopping-cart-icon.d.ts.map +1 -0
  629. package/dist/src/icons/animated/simple-checked-icon.d.ts +4 -0
  630. package/dist/src/icons/animated/simple-checked-icon.d.ts.map +1 -0
  631. package/dist/src/icons/animated/skull-emoji.d.ts +4 -0
  632. package/dist/src/icons/animated/skull-emoji.d.ts.map +1 -0
  633. package/dist/src/icons/animated/slack-icon.d.ts +4 -0
  634. package/dist/src/icons/animated/slack-icon.d.ts.map +1 -0
  635. package/dist/src/icons/animated/sliders-horizontal-icon.d.ts +4 -0
  636. package/dist/src/icons/animated/sliders-horizontal-icon.d.ts.map +1 -0
  637. package/dist/src/icons/animated/snapchat-icon.d.ts +4 -0
  638. package/dist/src/icons/animated/snapchat-icon.d.ts.map +1 -0
  639. package/dist/src/icons/animated/soup-icon.d.ts +4 -0
  640. package/dist/src/icons/animated/soup-icon.d.ts.map +1 -0
  641. package/dist/src/icons/animated/sparkles-icon.d.ts +4 -0
  642. package/dist/src/icons/animated/sparkles-icon.d.ts.map +1 -0
  643. package/dist/src/icons/animated/spotify-icon.d.ts +4 -0
  644. package/dist/src/icons/animated/spotify-icon.d.ts.map +1 -0
  645. package/dist/src/icons/animated/stack-3-icon.d.ts +4 -0
  646. package/dist/src/icons/animated/stack-3-icon.d.ts.map +1 -0
  647. package/dist/src/icons/animated/stack-icon.d.ts +4 -0
  648. package/dist/src/icons/animated/stack-icon.d.ts.map +1 -0
  649. package/dist/src/icons/animated/star-icon.d.ts +4 -0
  650. package/dist/src/icons/animated/star-icon.d.ts.map +1 -0
  651. package/dist/src/icons/animated/subscript-icon.d.ts +4 -0
  652. package/dist/src/icons/animated/subscript-icon.d.ts.map +1 -0
  653. package/dist/src/icons/animated/target-icon.d.ts +4 -0
  654. package/dist/src/icons/animated/target-icon.d.ts.map +1 -0
  655. package/dist/src/icons/animated/telephone-icon.d.ts +4 -0
  656. package/dist/src/icons/animated/telephone-icon.d.ts.map +1 -0
  657. package/dist/src/icons/animated/terminal-icon.d.ts +4 -0
  658. package/dist/src/icons/animated/terminal-icon.d.ts.map +1 -0
  659. package/dist/src/icons/animated/toggle-icon.d.ts +4 -0
  660. package/dist/src/icons/animated/toggle-icon.d.ts.map +1 -0
  661. package/dist/src/icons/animated/trash-icon.d.ts +9 -0
  662. package/dist/src/icons/animated/trash-icon.d.ts.map +1 -0
  663. package/dist/src/icons/animated/travel-bag.d.ts +4 -0
  664. package/dist/src/icons/animated/travel-bag.d.ts.map +1 -0
  665. package/dist/src/icons/animated/triangle-alert-icon.d.ts +4 -0
  666. package/dist/src/icons/animated/triangle-alert-icon.d.ts.map +1 -0
  667. package/dist/src/icons/animated/trophy-icon.d.ts +4 -0
  668. package/dist/src/icons/animated/trophy-icon.d.ts.map +1 -0
  669. package/dist/src/icons/animated/truck-electric-icon.d.ts +4 -0
  670. package/dist/src/icons/animated/truck-electric-icon.d.ts.map +1 -0
  671. package/dist/src/icons/animated/twitter-icon.d.ts +4 -0
  672. package/dist/src/icons/animated/twitter-icon.d.ts.map +1 -0
  673. package/dist/src/icons/animated/twitter-x-icon.d.ts +4 -0
  674. package/dist/src/icons/animated/twitter-x-icon.d.ts.map +1 -0
  675. package/dist/src/icons/animated/types.d.ts +33 -0
  676. package/dist/src/icons/animated/types.d.ts.map +1 -0
  677. package/dist/src/icons/animated/typescript-icon.d.ts +4 -0
  678. package/dist/src/icons/animated/typescript-icon.d.ts.map +1 -0
  679. package/dist/src/icons/animated/unlink-icon.d.ts +4 -0
  680. package/dist/src/icons/animated/unlink-icon.d.ts.map +1 -0
  681. package/dist/src/icons/animated/unordered-list-icon.d.ts +4 -0
  682. package/dist/src/icons/animated/unordered-list-icon.d.ts.map +1 -0
  683. package/dist/src/icons/animated/upload-icon.d.ts +4 -0
  684. package/dist/src/icons/animated/upload-icon.d.ts.map +1 -0
  685. package/dist/src/icons/animated/useAnimatedIconTrigger.d.ts +8 -0
  686. package/dist/src/icons/animated/useAnimatedIconTrigger.d.ts.map +1 -0
  687. package/dist/src/icons/animated/user-check-icon.d.ts +4 -0
  688. package/dist/src/icons/animated/user-check-icon.d.ts.map +1 -0
  689. package/dist/src/icons/animated/user-icon.d.ts +4 -0
  690. package/dist/src/icons/animated/user-icon.d.ts.map +1 -0
  691. package/dist/src/icons/animated/user-plus-icon.d.ts +4 -0
  692. package/dist/src/icons/animated/user-plus-icon.d.ts.map +1 -0
  693. package/dist/src/icons/animated/users-group-icon.d.ts +4 -0
  694. package/dist/src/icons/animated/users-group-icon.d.ts.map +1 -0
  695. package/dist/src/icons/animated/users-icon.d.ts +4 -0
  696. package/dist/src/icons/animated/users-icon.d.ts.map +1 -0
  697. package/dist/src/icons/animated/vinyl-icon.d.ts +4 -0
  698. package/dist/src/icons/animated/vinyl-icon.d.ts.map +1 -0
  699. package/dist/src/icons/animated/volume-2-icon.d.ts +4 -0
  700. package/dist/src/icons/animated/volume-2-icon.d.ts.map +1 -0
  701. package/dist/src/icons/animated/volume-x-icon.d.ts +4 -0
  702. package/dist/src/icons/animated/volume-x-icon.d.ts.map +1 -0
  703. package/dist/src/icons/animated/wallet-icon.d.ts +4 -0
  704. package/dist/src/icons/animated/wallet-icon.d.ts.map +1 -0
  705. package/dist/src/icons/animated/washing-machine-icon.d.ts +4 -0
  706. package/dist/src/icons/animated/washing-machine-icon.d.ts.map +1 -0
  707. package/dist/src/icons/animated/whatsapp-icon.d.ts +4 -0
  708. package/dist/src/icons/animated/whatsapp-icon.d.ts.map +1 -0
  709. package/dist/src/icons/animated/wifi-icon.d.ts +4 -0
  710. package/dist/src/icons/animated/wifi-icon.d.ts.map +1 -0
  711. package/dist/src/icons/animated/wifi-off-icon.d.ts +4 -0
  712. package/dist/src/icons/animated/wifi-off-icon.d.ts.map +1 -0
  713. package/dist/src/icons/animated/world-icon.d.ts +4 -0
  714. package/dist/src/icons/animated/world-icon.d.ts.map +1 -0
  715. package/dist/src/icons/animated/x-icon.d.ts +4 -0
  716. package/dist/src/icons/animated/x-icon.d.ts.map +1 -0
  717. package/dist/src/icons/animated/youtube-icon.d.ts +4 -0
  718. package/dist/src/icons/animated/youtube-icon.d.ts.map +1 -0
  719. package/dist/src/icons/index.d.ts +1 -0
  720. package/dist/src/icons/index.d.ts.map +1 -1
  721. package/dist/src/icons/lucide.d.ts +1 -1
  722. package/dist/src/icons/lucide.d.ts.map +1 -1
  723. package/dist/src/languages/hooks/index.d.ts +1 -1
  724. package/dist/src/languages/hooks/index.d.ts.map +1 -1
  725. package/dist/src/languages/hooks/useLanguageLabel.d.ts +8 -7
  726. package/dist/src/languages/hooks/useLanguageLabel.d.ts.map +1 -1
  727. package/dist/src/languages/hooks/usePreferenceLabel.d.ts +1 -1
  728. package/dist/src/languages/hooks/usePreferenceLabel.d.ts.map +1 -1
  729. package/dist/src/languages/hooks/useThemeLabel.d.ts +4 -5
  730. package/dist/src/languages/hooks/useThemeLabel.d.ts.map +1 -1
  731. package/dist/src/languages/index.d.ts +0 -2
  732. package/dist/src/languages/index.d.ts.map +1 -1
  733. package/dist/src/languages/languages/i18n.d.ts +4 -7
  734. package/dist/src/languages/languages/i18n.d.ts.map +1 -1
  735. package/dist/src/languages/languages/i18nResources.d.ts +1 -1
  736. package/dist/src/languages/languages/i18nResources.d.ts.map +1 -1
  737. package/dist/src/languages/resources/index.d.ts +2 -2
  738. package/dist/src/languages/types/components.d.ts +1 -24
  739. package/dist/src/languages/types/components.d.ts.map +1 -1
  740. package/dist/src/languages/types/i18n.d.ts +1 -4
  741. package/dist/src/languages/types/i18n.d.ts.map +1 -1
  742. package/dist/src/languages/types/language.d.ts +2 -11
  743. package/dist/src/languages/types/language.d.ts.map +1 -1
  744. package/dist/src/languages/utils/getLocalLanguage.d.ts +1 -1
  745. package/dist/src/languages/utils/getLocalLanguage.d.ts.map +1 -1
  746. package/dist/src/languages/utils/languageStorage.d.ts +2 -3
  747. package/dist/src/languages/utils/languageStorage.d.ts.map +1 -1
  748. package/dist/src/providers/LanguageProvider/index.d.ts +19 -0
  749. package/dist/src/providers/LanguageProvider/index.d.ts.map +1 -0
  750. package/dist/src/providers/ThemeProvider/index.d.ts +17 -0
  751. package/dist/src/providers/ThemeProvider/index.d.ts.map +1 -0
  752. package/dist/src/providers/index.d.ts +7 -0
  753. package/dist/src/providers/index.d.ts.map +1 -0
  754. package/dist/src/stores/index.d.ts +4 -0
  755. package/dist/src/stores/index.d.ts.map +1 -1
  756. package/dist/src/stores/layout.d.ts +41 -0
  757. package/dist/src/stores/layout.d.ts.map +1 -0
  758. package/dist/src/stores/makeStore.d.ts +1 -1
  759. package/dist/src/stores/modal.d.ts +67 -0
  760. package/dist/src/stores/modal.d.ts.map +1 -0
  761. package/dist/src/stores/preference.d.ts +52 -0
  762. package/dist/src/stores/preference.d.ts.map +1 -0
  763. package/dist/src/themes/fonts.d.ts +21 -0
  764. package/dist/src/themes/fonts.d.ts.map +1 -0
  765. package/dist/src/themes/hooks/index.d.ts +1 -3
  766. package/dist/src/themes/hooks/index.d.ts.map +1 -1
  767. package/dist/src/themes/hooks/useTheme.d.ts +25 -9
  768. package/dist/src/themes/hooks/useTheme.d.ts.map +1 -1
  769. package/dist/src/themes/index.d.ts +3 -4
  770. package/dist/src/themes/index.d.ts.map +1 -1
  771. package/dist/src/themes/radix/index.d.ts +2 -0
  772. package/dist/src/themes/radix/index.d.ts.map +1 -0
  773. package/dist/src/themes/radix/mappings.d.ts +39 -0
  774. package/dist/src/themes/radix/mappings.d.ts.map +1 -0
  775. package/dist/src/themes/types/components.d.ts +1 -24
  776. package/dist/src/themes/types/components.d.ts.map +1 -1
  777. package/dist/src/themes/types/context.d.ts +6 -12
  778. package/dist/src/themes/types/context.d.ts.map +1 -1
  779. package/dist/src/themes/types/index.d.ts +1 -6
  780. package/dist/src/themes/types/index.d.ts.map +1 -1
  781. package/dist/src/themes/types/theme.d.ts +15 -26
  782. package/dist/src/themes/types/theme.d.ts.map +1 -1
  783. package/dist/src/utils/factory/hooks.d.ts +44 -0
  784. package/dist/src/utils/factory/hooks.d.ts.map +1 -0
  785. package/dist/src/utils/factory/index.d.ts +2 -0
  786. package/dist/src/utils/factory/index.d.ts.map +1 -0
  787. package/dist/src/utils/index.d.ts +1 -0
  788. package/dist/src/utils/index.d.ts.map +1 -1
  789. package/dist/src/utils/safe.d.ts +4 -0
  790. package/dist/src/utils/safe.d.ts.map +1 -1
  791. package/dist/stores.cjs +1 -4
  792. package/dist/stores.mjs +32 -164
  793. package/dist/themes.cjs +2 -4
  794. package/dist/themes.mjs +27 -1473
  795. package/dist/types.cjs +0 -1
  796. package/dist/types.mjs +0 -1
  797. package/dist/utils.cjs +1 -2
  798. package/dist/utils.cjs.map +1 -1
  799. package/dist/utils.mjs +163 -181
  800. package/dist/utils.mjs.map +1 -1
  801. package/package.json +101 -43
  802. package/dist/chunk-BounceLoading-C-gq-XVr.mjs +0 -241
  803. package/dist/chunk-BounceLoading-C-gq-XVr.mjs.map +0 -1
  804. package/dist/chunk-BounceLoading-CkxvzNz8.cjs +0 -11
  805. package/dist/chunk-BounceLoading-CkxvzNz8.cjs.map +0 -1
  806. package/dist/chunk-animations-CiJbVYGC.mjs +0 -741
  807. package/dist/chunk-animations-CiJbVYGC.mjs.map +0 -1
  808. package/dist/chunk-animations-i85rn79V.cjs +0 -3
  809. package/dist/chunk-animations-i85rn79V.cjs.map +0 -1
  810. package/dist/chunk-chunk-D-Fg7nx1.cjs +0 -1
  811. package/dist/chunk-i18n-2-xL4pEi.cjs +0 -3
  812. package/dist/chunk-i18n-2-xL4pEi.cjs.map +0 -1
  813. package/dist/chunk-i18n-DgaoEbGL.mjs +0 -214
  814. package/dist/chunk-i18n-DgaoEbGL.mjs.map +0 -1
  815. package/dist/chunk-language-2r4uKROB.cjs +0 -3
  816. package/dist/chunk-language-2r4uKROB.cjs.map +0 -1
  817. package/dist/chunk-language-JRs5UIa2.mjs +0 -11
  818. package/dist/chunk-language-JRs5UIa2.mjs.map +0 -1
  819. package/dist/chunk-layout-BEAgFhif.mjs +0 -11
  820. package/dist/chunk-layout-BEAgFhif.mjs.map +0 -1
  821. package/dist/chunk-layout-mMQXuBLE.cjs +0 -3
  822. package/dist/chunk-layout-mMQXuBLE.cjs.map +0 -1
  823. package/dist/chunk-lucide-B99NZWfa.mjs +0 -158
  824. package/dist/chunk-lucide-B99NZWfa.mjs.map +0 -1
  825. package/dist/chunk-lucide-XL6d5__j.cjs +0 -3
  826. package/dist/chunk-lucide-XL6d5__j.cjs.map +0 -1
  827. package/dist/chunk-preference-DMhhY1Pl.mjs +0 -60
  828. package/dist/chunk-preference-DMhhY1Pl.mjs.map +0 -1
  829. package/dist/chunk-preference-DbNgeGhx.cjs +0 -3
  830. package/dist/chunk-preference-DbNgeGhx.cjs.map +0 -1
  831. package/dist/chunk-theme-CINVDd47.mjs +0 -17
  832. package/dist/chunk-theme-CINVDd47.mjs.map +0 -1
  833. package/dist/chunk-theme-D49XQfXe.cjs +0 -3
  834. package/dist/chunk-theme-D49XQfXe.cjs.map +0 -1
  835. package/dist/chunk-useLayout-BAIFfydj.cjs +0 -3
  836. package/dist/chunk-useLayout-BAIFfydj.cjs.map +0 -1
  837. package/dist/chunk-useLayout-BXsJlpcb.mjs +0 -12
  838. package/dist/chunk-useLayout-BXsJlpcb.mjs.map +0 -1
  839. package/dist/chunk-useTheme-BY1_pW9y.mjs +0 -13
  840. package/dist/chunk-useTheme-BY1_pW9y.mjs.map +0 -1
  841. package/dist/chunk-useTheme-Tw_7_cQf.cjs +0 -3
  842. package/dist/chunk-useTheme-Tw_7_cQf.cjs.map +0 -1
  843. package/dist/hooks.cjs.map +0 -1
  844. package/dist/hooks.mjs.map +0 -1
  845. package/dist/pixel-blast.cjs.map +0 -1
  846. package/dist/pixel-blast.mjs.map +0 -1
  847. package/dist/preference.cjs +0 -2
  848. package/dist/preference.mjs +0 -10
  849. package/dist/src/designs/components/Button/index.d.ts +0 -32
  850. package/dist/src/designs/components/Button/index.d.ts.map +0 -1
  851. package/dist/src/designs/components/Dropdown/index.d.ts +0 -25
  852. package/dist/src/designs/components/Dropdown/index.d.ts.map +0 -1
  853. package/dist/src/designs/components/Input/index.d.ts +0 -35
  854. package/dist/src/designs/components/Input/index.d.ts.map +0 -1
  855. package/dist/src/designs/components/KeyValueEditor/index.d.ts +0 -44
  856. package/dist/src/designs/components/KeyValueEditor/index.d.ts.map +0 -1
  857. package/dist/src/designs/components/SearchInput/index.d.ts +0 -15
  858. package/dist/src/designs/components/SearchInput/index.d.ts.map +0 -1
  859. package/dist/src/designs/components/ShowFilter/index.d.ts +0 -40
  860. package/dist/src/designs/components/ShowFilter/index.d.ts.map +0 -1
  861. package/dist/src/designs/components/SlideDownSwitcher/index.d.ts +0 -17
  862. package/dist/src/designs/components/SlideDownSwitcher/index.d.ts.map +0 -1
  863. package/dist/src/designs/components/Slider/index.d.ts +0 -39
  864. package/dist/src/designs/components/Slider/index.d.ts.map +0 -1
  865. package/dist/src/designs/components/Textarea/index.d.ts +0 -33
  866. package/dist/src/designs/components/Textarea/index.d.ts.map +0 -1
  867. package/dist/src/hooks/makeCursorFetchFunction.d.ts +0 -85
  868. package/dist/src/hooks/makeCursorFetchFunction.d.ts.map +0 -1
  869. package/dist/src/hooks/makeUnifiedInfiniteQuery.d.ts +0 -125
  870. package/dist/src/hooks/makeUnifiedInfiniteQuery.d.ts.map +0 -1
  871. package/dist/src/hooks/makeUnifiedQuery.d.ts +0 -20
  872. package/dist/src/hooks/makeUnifiedQuery.d.ts.map +0 -1
  873. package/dist/src/hooks/type.d.ts +0 -41
  874. package/dist/src/hooks/type.d.ts.map +0 -1
  875. package/dist/src/languages/providers/index.d.ts +0 -8
  876. package/dist/src/languages/providers/index.d.ts.map +0 -1
  877. package/dist/src/preference/constants.d.ts.map +0 -1
  878. package/dist/src/preference/core.d.ts +0 -12
  879. package/dist/src/preference/core.d.ts.map +0 -1
  880. package/dist/src/preference/index.d.ts +0 -27
  881. package/dist/src/preference/index.d.ts.map +0 -1
  882. package/dist/src/preference/nfx_slice.d.ts +0 -24
  883. package/dist/src/preference/nfx_slice.d.ts.map +0 -1
  884. package/dist/src/preference/types.d.ts +0 -28
  885. package/dist/src/preference/types.d.ts.map +0 -1
  886. package/dist/src/themes/hooks/useBaseVariables.d.ts +0 -8
  887. package/dist/src/themes/hooks/useBaseVariables.d.ts.map +0 -1
  888. package/dist/src/themes/hooks/useThemeVariables.d.ts +0 -11
  889. package/dist/src/themes/hooks/useThemeVariables.d.ts.map +0 -1
  890. package/dist/src/themes/hooks/useVariables.d.ts +0 -8
  891. package/dist/src/themes/hooks/useVariables.d.ts.map +0 -1
  892. package/dist/src/themes/providers/index.d.ts +0 -8
  893. package/dist/src/themes/providers/index.d.ts.map +0 -1
  894. package/dist/src/themes/themes/bases/android.d.ts +0 -5
  895. package/dist/src/themes/themes/bases/android.d.ts.map +0 -1
  896. package/dist/src/themes/themes/bases/default.d.ts +0 -6
  897. package/dist/src/themes/themes/bases/default.d.ts.map +0 -1
  898. package/dist/src/themes/themes/bases/index.d.ts +0 -9
  899. package/dist/src/themes/themes/bases/index.d.ts.map +0 -1
  900. package/dist/src/themes/themes/bases/ios.d.ts +0 -5
  901. package/dist/src/themes/themes/bases/ios.d.ts.map +0 -1
  902. package/dist/src/themes/themes/bases/linux.d.ts +0 -5
  903. package/dist/src/themes/themes/bases/linux.d.ts.map +0 -1
  904. package/dist/src/themes/themes/bases/windows.d.ts +0 -5
  905. package/dist/src/themes/themes/bases/windows.d.ts.map +0 -1
  906. package/dist/src/themes/themes/colors/coffee.d.ts +0 -8
  907. package/dist/src/themes/themes/colors/coffee.d.ts.map +0 -1
  908. package/dist/src/themes/themes/colors/corporate.d.ts +0 -8
  909. package/dist/src/themes/themes/colors/corporate.d.ts.map +0 -1
  910. package/dist/src/themes/themes/colors/cosmic.d.ts +0 -8
  911. package/dist/src/themes/themes/colors/cosmic.d.ts.map +0 -1
  912. package/dist/src/themes/themes/colors/dark.d.ts +0 -8
  913. package/dist/src/themes/themes/colors/dark.d.ts.map +0 -1
  914. package/dist/src/themes/themes/colors/default.d.ts +0 -8
  915. package/dist/src/themes/themes/colors/default.d.ts.map +0 -1
  916. package/dist/src/themes/themes/colors/forest.d.ts +0 -8
  917. package/dist/src/themes/themes/colors/forest.d.ts.map +0 -1
  918. package/dist/src/themes/themes/colors/index.d.ts +0 -14
  919. package/dist/src/themes/themes/colors/index.d.ts.map +0 -1
  920. package/dist/src/themes/themes/colors/light.d.ts +0 -8
  921. package/dist/src/themes/themes/colors/light.d.ts.map +0 -1
  922. package/dist/src/themes/themes/colors/wheat.d.ts +0 -8
  923. package/dist/src/themes/themes/colors/wheat.d.ts.map +0 -1
  924. package/dist/src/themes/themes/colors/wine.d.ts +0 -8
  925. package/dist/src/themes/themes/colors/wine.d.ts.map +0 -1
  926. package/dist/src/themes/themes/index.d.ts +0 -3
  927. package/dist/src/themes/themes/index.d.ts.map +0 -1
  928. package/dist/src/themes/utils/index.d.ts +0 -5
  929. package/dist/src/themes/utils/index.d.ts.map +0 -1
  930. package/dist/src/themes/utils/themeStorage.d.ts +0 -12
  931. package/dist/src/themes/utils/themeStorage.d.ts.map +0 -1
  932. package/dist/stores.cjs.map +0 -1
  933. package/dist/stores.mjs.map +0 -1
  934. package/dist/themes.cjs.map +0 -1
  935. package/dist/themes.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.mjs","names":[],"sources":["../src/icons/animated/types.ts","../src/icons/animated/useAnimatedIconTrigger.ts","../src/icons/animated/accessibility-icon.tsx","../src/icons/animated/airplane-icon.tsx","../src/icons/animated/alarm-clock-plus-icon.tsx","../src/icons/animated/align-center-icon.tsx","../src/icons/animated/align-vertical-space-around-icon.tsx","../src/icons/animated/ambulance-icon.tsx","../src/icons/animated/ampersand-icon.tsx","../src/icons/animated/angry-icon.tsx","../src/icons/animated/annoyed-icon.tsx","../src/icons/animated/apple-brand-logo.tsx","../src/icons/animated/arrow-back-icon.tsx","../src/icons/animated/arrow-back-up-icon.tsx","../src/icons/animated/arrow-big-down-dash-icon.tsx","../src/icons/animated/arrow-big-down-icon.tsx","../src/icons/animated/arrow-big-left-dash-icon.tsx","../src/icons/animated/arrow-big-left-icon.tsx","../src/icons/animated/arrow-big-right-dash-icon.tsx","../src/icons/animated/arrow-big-right-icon.tsx","../src/icons/animated/arrow-big-up-dash-icon.tsx","../src/icons/animated/arrow-big-up-icon.tsx","../src/icons/animated/arrow-down-0-1-icon.tsx","../src/icons/animated/arrow-down-1-0-icon.tsx","../src/icons/animated/arrow-down-a-z-icon.tsx","../src/icons/animated/arrow-narrow-down-dashed-icon.tsx","../src/icons/animated/arrow-narrow-down-icon.tsx","../src/icons/animated/arrow-narrow-left-dashed-icon.tsx","../src/icons/animated/arrow-narrow-left-icon.tsx","../src/icons/animated/arrow-narrow-right-dashed-icon.tsx","../src/icons/animated/arrow-narrow-right-icon.tsx","../src/icons/animated/arrow-narrow-up-dashed-icon.tsx","../src/icons/animated/arrow-narrow-up-icon.tsx","../src/icons/animated/at-sign-icon.tsx","../src/icons/animated/banana-icon.tsx","../src/icons/animated/battery-charging-icon.tsx","../src/icons/animated/battery-icon.tsx","../src/icons/animated/battery-pause-icon.tsx","../src/icons/animated/bell-off-icon.tsx","../src/icons/animated/bluetooth-connected-icon.tsx","../src/icons/animated/book-icon.tsx","../src/icons/animated/bookmark-icon.tsx","../src/icons/animated/brain-circuit-icon.tsx","../src/icons/animated/brand-aistudio-icon.tsx","../src/icons/animated/brand-anthropic-icon.tsx","../src/icons/animated/brand-aws-icon.tsx","../src/icons/animated/brand-bags-fm-icon.tsx","../src/icons/animated/brand-chrome-icon.tsx","../src/icons/animated/brand-cursor-icon.tsx","../src/icons/animated/brand-gemini-icon.tsx","../src/icons/animated/brand-google-icon.tsx","../src/icons/animated/brand-grok-icon.tsx","../src/icons/animated/brand-lmstudio-icon.tsx","../src/icons/animated/brand-midjourney-icon.tsx","../src/icons/animated/brand-nextjs-icon.tsx","../src/icons/animated/brand-notion-icon.tsx","../src/icons/animated/brand-ollama-icon.tsx","../src/icons/animated/brand-openai-icon.tsx","../src/icons/animated/brand-paypal-icon.tsx","../src/icons/animated/brand-qwen-icon.tsx","../src/icons/animated/brand-railway-icon.tsx","../src/icons/animated/brand-react-icon.tsx","../src/icons/animated/brand-react-native-icon.tsx","../src/icons/animated/brand-stripe-icon.tsx","../src/icons/animated/brand-telegram-icon.tsx","../src/icons/animated/brand-threads-icon.tsx","../src/icons/animated/brand-twitch-icon.tsx","../src/icons/animated/brand-vercel-icon.tsx","../src/icons/animated/brand-windows-icon.tsx","../src/icons/animated/brand-wordpress-icon.tsx","../src/icons/animated/brand-xai-icon.tsx","../src/icons/animated/brand-zoom-icon.tsx","../src/icons/animated/brightness-down-icon.tsx","../src/icons/animated/bug-icon.tsx","../src/icons/animated/bulb-svg.tsx","../src/icons/animated/camera-icon.tsx","../src/icons/animated/camera-off-icon.tsx","../src/icons/animated/candy-cane-icon.tsx","../src/icons/animated/cart-icon.tsx","../src/icons/animated/chart-bar-icon.tsx","../src/icons/animated/chart-covariate-icon.tsx","../src/icons/animated/chart-histogram-icon.tsx","../src/icons/animated/chart-line-icon.tsx","../src/icons/animated/chart-pie-icon.tsx","../src/icons/animated/checked-icon.tsx","../src/icons/animated/clock-icon.tsx","../src/icons/animated/cloud-1-icon.tsx","../src/icons/animated/cloud-2-icon.tsx","../src/icons/animated/cloud-3-icon.tsx","../src/icons/animated/code-icon.tsx","../src/icons/animated/code-xml-icon.tsx","../src/icons/animated/coffee-icon.tsx","../src/icons/animated/coin-bitcoin-icon.tsx","../src/icons/animated/copy-icon.tsx","../src/icons/animated/copy-off-icon.tsx","../src/icons/animated/copyright-icon.tsx","../src/icons/animated/cpu-icon.tsx","../src/icons/animated/credit-card.tsx","../src/icons/animated/currency-bitcoin-icon.tsx","../src/icons/animated/currency-dollar-icon.tsx","../src/icons/animated/currency-ethereum-icon.tsx","../src/icons/animated/currency-euro-icon.tsx","../src/icons/animated/currency-rupee-icon.tsx","../src/icons/animated/device-airpods-icon.tsx","../src/icons/animated/dialpad-icon.tsx","../src/icons/animated/dino-icon.tsx","../src/icons/animated/discord-icon.tsx","../src/icons/animated/docker-icon.tsx","../src/icons/animated/dots-horizontal-icon.tsx","../src/icons/animated/dots-vertical-icon.tsx","../src/icons/animated/double-check-icon.tsx","../src/icons/animated/down-chevron.tsx","../src/icons/animated/download-icon.tsx","../src/icons/animated/drum-icon.tsx","../src/icons/animated/expand-icon.tsx","../src/icons/animated/external-link-icon.tsx","../src/icons/animated/eye-icon.tsx","../src/icons/animated/eye-off-icon.tsx","../src/icons/animated/facebook-icon.tsx","../src/icons/animated/figma-icon.tsx","../src/icons/animated/file-description-icon.tsx","../src/icons/animated/filled-bell-icon.tsx","../src/icons/animated/filled-checked-icon.tsx","../src/icons/animated/filter-icon.tsx","../src/icons/animated/flame-icon.tsx","../src/icons/animated/focus-icon.tsx","../src/icons/animated/gamepad-icon.tsx","../src/icons/animated/gauge-icon.tsx","../src/icons/animated/gear-icon.tsx","../src/icons/animated/ghost-icon.tsx","../src/icons/animated/github-copilot-icon.tsx","../src/icons/animated/github-icon.tsx","../src/icons/animated/gitlab-icon.tsx","../src/icons/animated/globe-icon.tsx","../src/icons/animated/gmail-icon.tsx","../src/icons/animated/golang-icon.tsx","../src/icons/animated/hand-heart-icon.tsx","../src/icons/animated/hashtag-icon.tsx","../src/icons/animated/heart-icon.tsx","../src/icons/animated/history-circle-icon.tsx","../src/icons/animated/home-icon.tsx","../src/icons/animated/hotel-icon.tsx","../src/icons/animated/info-circle-icon.tsx","../src/icons/animated/instagram-icon.tsx","../src/icons/animated/javascript-icon.tsx","../src/icons/animated/keyframes-icon.tsx","../src/icons/animated/layers-icon.tsx","../src/icons/animated/layout-bottombar-collapse-icon.tsx","../src/icons/animated/layout-dashboard-icon.tsx","../src/icons/animated/layout-sidebar-right-collapse-icon.tsx","../src/icons/animated/layout-sidebar-right-icon.tsx","../src/icons/animated/letter-a-icon.tsx","../src/icons/animated/letter-b-icon.tsx","../src/icons/animated/letter-c-icon.tsx","../src/icons/animated/letter-d-icon.tsx","../src/icons/animated/letter-e-icon.tsx","../src/icons/animated/letter-f-icon.tsx","../src/icons/animated/letter-g-icon.tsx","../src/icons/animated/letter-h-icon.tsx","../src/icons/animated/letter-i-icon.tsx","../src/icons/animated/letter-j-icon.tsx","../src/icons/animated/letter-k-icon.tsx","../src/icons/animated/letter-l-icon.tsx","../src/icons/animated/letter-m-icon.tsx","../src/icons/animated/letter-n-icon.tsx","../src/icons/animated/letter-o-icon.tsx","../src/icons/animated/letter-p-icon.tsx","../src/icons/animated/letter-q-icon.tsx","../src/icons/animated/letter-r-icon.tsx","../src/icons/animated/letter-s-icon.tsx","../src/icons/animated/letter-t-icon.tsx","../src/icons/animated/letter-u-icon.tsx","../src/icons/animated/letter-v-icon.tsx","../src/icons/animated/letter-w-icon.tsx","../src/icons/animated/letter-x-icon.tsx","../src/icons/animated/letter-y-icon.tsx","../src/icons/animated/letter-z-icon.tsx","../src/icons/animated/library-icon.tsx","../src/icons/animated/like-icon.tsx","../src/icons/animated/link-icon.tsx","../src/icons/animated/linkedin-icon.tsx","../src/icons/animated/locate-icon.tsx","../src/icons/animated/lock-icon.tsx","../src/icons/animated/logout-icon.tsx","../src/icons/animated/magnifier-icon.tsx","../src/icons/animated/mail-filled-icon.tsx","../src/icons/animated/map-pin-icon.tsx","../src/icons/animated/meh-icon.tsx","../src/icons/animated/message-circle-icon.tsx","../src/icons/animated/moon-icon.tsx","../src/icons/animated/mouse-pointer-2-icon.tsx","../src/icons/animated/mysql-icon.tsx","../src/icons/animated/nodejs-icon.tsx","../src/icons/animated/paint-icon.tsx","../src/icons/animated/party-popper-icon.tsx","../src/icons/animated/passport-icon.tsx","../src/icons/animated/paw-print-icon.tsx","../src/icons/animated/pen-icon.tsx","../src/icons/animated/phone-volume.tsx","../src/icons/animated/pinterest-icon.tsx","../src/icons/animated/player-icon.tsx","../src/icons/animated/plug-connected-icon.tsx","../src/icons/animated/plug-connected-x-icon.tsx","../src/icons/animated/python-icon.tsx","../src/icons/animated/qrcode-icon.tsx","../src/icons/animated/question-mark.tsx","../src/icons/animated/radio-icon.tsx","../src/icons/animated/rainbow-icon.tsx","../src/icons/animated/refresh-icon.tsx","../src/icons/animated/right-chevron.tsx","../src/icons/animated/rocket-icon.tsx","../src/icons/animated/rosette-discount-check-icon.tsx","../src/icons/animated/rosette-discount-icon.tsx","../src/icons/animated/router-icon.tsx","../src/icons/animated/satellite-dish-icon.tsx","../src/icons/animated/save-icon.tsx","../src/icons/animated/scan-barcode-icon.tsx","../src/icons/animated/scan-heart-icon.tsx","../src/icons/animated/send-horizontal-icon.tsx","../src/icons/animated/send-icon.tsx","../src/icons/animated/shield-check.tsx","../src/icons/animated/shopping-cart-icon.tsx","../src/icons/animated/simple-checked-icon.tsx","../src/icons/animated/skull-emoji.tsx","../src/icons/animated/slack-icon.tsx","../src/icons/animated/sliders-horizontal-icon.tsx","../src/icons/animated/snapchat-icon.tsx","../src/icons/animated/soup-icon.tsx","../src/icons/animated/sparkles-icon.tsx","../src/icons/animated/spotify-icon.tsx","../src/icons/animated/stack-3-icon.tsx","../src/icons/animated/stack-icon.tsx","../src/icons/animated/star-icon.tsx","../src/icons/animated/subscript-icon.tsx","../src/icons/animated/target-icon.tsx","../src/icons/animated/telephone-icon.tsx","../src/icons/animated/terminal-icon.tsx","../src/icons/animated/toggle-icon.tsx","../src/icons/animated/trash-icon.tsx","../src/icons/animated/travel-bag.tsx","../src/icons/animated/triangle-alert-icon.tsx","../src/icons/animated/trophy-icon.tsx","../src/icons/animated/truck-electric-icon.tsx","../src/icons/animated/twitter-icon.tsx","../src/icons/animated/twitter-x-icon.tsx","../src/icons/animated/typescript-icon.tsx","../src/icons/animated/unlink-icon.tsx","../src/icons/animated/unordered-list-icon.tsx","../src/icons/animated/upload-icon.tsx","../src/icons/animated/user-check-icon.tsx","../src/icons/animated/user-icon.tsx","../src/icons/animated/user-plus-icon.tsx","../src/icons/animated/users-group-icon.tsx","../src/icons/animated/users-icon.tsx","../src/icons/animated/vinyl-icon.tsx","../src/icons/animated/volume-2-icon.tsx","../src/icons/animated/volume-x-icon.tsx","../src/icons/animated/wallet-icon.tsx","../src/icons/animated/washing-machine-icon.tsx","../src/icons/animated/whatsapp-icon.tsx","../src/icons/animated/wifi-icon.tsx","../src/icons/animated/wifi-off-icon.tsx","../src/icons/animated/world-icon.tsx","../src/icons/animated/x-icon.tsx","../src/icons/animated/youtube-icon.tsx"],"sourcesContent":["import type { SVGProps } from \"react\";\n\n/** Standard stroke width for 24×24 outline icons */\nexport const DEFAULT_STROKE_WIDTH = 2;\n\n/** Scale stroke to match DEFAULT_STROKE_WIDTH on non-24 viewBoxes */\nexport function scaledStrokeWidth(\n strokeWidth: number,\n viewBoxSize: number,\n): number {\n return strokeWidth * (viewBoxSize / 24);\n}\n\nexport enum IconEasingEnum {\n LINEAR = \"linear\",\n EASE_IN = \"easeIn\",\n EASE_OUT = \"easeOut\",\n EASE_IN_OUT = \"easeInOut\",\n CIRC_IN = \"circIn\",\n CIRC_OUT = \"circOut\",\n CIRC_IN_OUT = \"circInOut\",\n BACK_IN = \"backIn\",\n BACK_OUT = \"backOut\",\n BACK_IN_OUT = \"backInOut\",\n ANTICIPATE = \"anticipate\",\n}\n\nexport interface AnimatedIconProps extends Omit<\n SVGProps<SVGSVGElement>,\n | \"ref\"\n | \"onAnimationStart\"\n | \"onAnimationEnd\"\n | \"onAnimationIteration\"\n | \"onDrag\"\n | \"onDragEnd\"\n | \"onDragEnter\"\n | \"onDragExit\"\n | \"onDragLeave\"\n | \"onDragOver\"\n | \"onDragStart\"\n | \"onDrop\"\n | \"values\"\n> {\n /** Icon size in pixels or CSS string */\n size?: number | string;\n /** Icon color (defaults to currentColor) */\n color?: string;\n /** SVG stroke width */\n strokeWidth?: number;\n /** Additional CSS classes */\n className?: string;\n}\n\nexport interface AnimatedIconHandle {\n startAnimation: () => void;\n stopAnimation: () => void;\n}\n","import type { AnimatedIconHandle } from \"./types\";\n\nimport { useCallback, useRef } from \"react\";\n\nfunction prefersReducedMotion() {\n return typeof window !== \"undefined\" && window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n}\n\nexport function useAnimatedIconTrigger() {\n const iconRef = useRef<AnimatedIconHandle>(null);\n\n const start = useCallback(() => {\n if (!prefersReducedMotion()) iconRef.current?.startAnimation();\n }, []);\n\n const stop = useCallback(() => {\n iconRef.current?.stopAnimation();\n }, []);\n\n const replay = useCallback(() => {\n if (prefersReducedMotion()) return;\n iconRef.current?.stopAnimation();\n iconRef.current?.startAnimation();\n }, []);\n\n return { iconRef, replay, start, stop };\n}\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport {\n type AnimatedIconHandle,\n type AnimatedIconProps,\n IconEasingEnum,\n} from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\ntype CustomAnimation = {\n rotateFrom: number;\n rotateTo: number;\n duration: number;\n ease: IconEasingEnum;\n personDuration: number;\n personEase: IconEasingEnum;\n exitDuration: number;\n};\n\nconst AccessibilityIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps & CustomAnimation\n>(\n (\n {\n size = 24,\n color = \"currentColor\",\n strokeWidth = 2,\n className = \"\",\n rotateFrom = 0,\n rotateTo = 360,\n duration = 1,\n ease = IconEasingEnum.EASE_IN_OUT,\n personDuration = 0.6,\n personEase = IconEasingEnum.EASE_IN_OUT,\n exitDuration = 0.3,\n },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animationControls.current.push(\n animate(\n \".wheel\",\n { rotate: [rotateFrom, rotateTo] },\n { duration: duration, ease: ease, repeat: Infinity },\n ),\n );\n animate(\n \".person\",\n { y: [0, -2, 0] },\n { duration: personDuration, ease: personEase },\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\".wheel\", { rotate: 0 }, { duration: exitDuration });\n animate(\".person\", { y: 0 }, { duration: exitDuration });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className} `}\n >\n <motion.circle className=\"person\" cx=\"16\" cy=\"4\" r=\"1\" />\n <motion.path className=\"person\" d=\"m18 19 1-7-6 1\" />\n <motion.path className=\"person\" d=\"m5 8 3-3 5.5 3-2.36 3.5\" />\n <motion.g className=\"wheel\" style={{ transformOrigin: \"8.5px 17.5px\" }}>\n <path d=\"M4.24 14.5a5 5 0 0 0 6.88 6\" />\n <path d=\"M13.76 17.5a5 5 0 0 0-6.88-6\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nAccessibilityIcon.displayName = \"AccessibilityIcon\";\n\nexport default AccessibilityIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\ntype CustomAnimation = {\n airPlaneDuration: number;\n windDuration: number;\n exitDuration: number;\n};\n\nconst AirplaneIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps & CustomAnimation\n>(\n (\n {\n size = 24,\n color = \"currentColor\",\n strokeWidth = 2,\n className = \"\",\n airPlaneDuration = 0.3,\n windDuration = 0.8,\n exitDuration = 0.3,\n },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Subtle vibration for the plane\n animate(\n \".airplane\",\n { x: [0, 0.5, 0], y: [0, -0.5, 0] },\n { duration: airPlaneDuration },\n );\n\n // Streak 1: Upper Wing (Top-right streak)\n animate(\n \".wind1\",\n {\n x: -12,\n y: 24,\n opacity: 1,\n },\n { duration: windDuration, ease: \"easeOut\" },\n );\n\n // Streak 2: Lower Wing (Middle-left streak)\n animate(\n \".wind2\",\n {\n x: 0,\n y: 26,\n opacity: 1,\n },\n { duration: windDuration, ease: \"easeOut\", delay: 0.2 },\n );\n }, [animate, airPlaneDuration, windDuration]);\n\n const stop = useCallback(async () => {\n animate(\".airplane\", { x: 0, y: 0 }, { duration: exitDuration });\n animate(\n \".wind1\",\n { opacity: 0, x: 12, y: -4 },\n { duration: exitDuration },\n );\n animate(\n \".wind2\",\n { opacity: 0, x: 26, y: 8 },\n { duration: exitDuration },\n );\n }, [animate, exitDuration]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path\n className=\"airplane\"\n d=\"M13.617 1.53c.926-.747 1.964-.793 3.097-.777.587.009.88.013 1.115.104.373.145.67.442.815.815.09.235.095.528.104 1.115.016 1.133-.03 2.17-.778 3.097-.63.78-1.714 1.188-2.235 2.05-.398.656-.213 1.337-.042 2.038l1.28 5.245c.255 1.046.06 1.715-.67 2.446-.39.39-.713.37-1.028-.133l-3.862-6.154-1.845 1.466c-.67.532-1.003.798-1.18 1.172-.41.876-.15 2.192-.136 3.142.008.525-.446 1.56-1.088 1.594-.396.022-.531-.452-.66-.743l-1.232-2.802c-.294-.67-.306-.682-.976-.976l-2.802-1.233c-.29-.128-.765-.263-.743-.66.035-.641 1.07-1.095 1.594-1.087.95.013 2.266.274 3.142-.137.374-.176.64-.51 1.172-1.18l1.466-1.844L1.97 4.226c-.503-.316-.522-.64-.133-1.028.73-.73 1.4-.925 2.446-.67l5.245 1.28c.7.17 1.382.356 2.039-.042.86-.52 1.269-1.604 2.049-2.235\"\n />\n\n <motion.path\n className=\"wind1\"\n initial={{ opacity: 0, x: 10, y: -6 }}\n d=\"m.5 3.5 3-3\"\n ></motion.path>\n <motion.path\n className=\"wind2\"\n initial={{ opacity: 0, x: 26, y: 8 }}\n d=\"m.5 3.5 3-3\"\n ></motion.path>\n </motion.svg>\n );\n },\n);\n\nAirplaneIcon.displayName = \"AirplaneIcon\";\nexport default AirplaneIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport {\n type AnimatedIconHandle,\n type AnimatedIconProps,\n IconEasingEnum,\n} from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\ntype CustomStyleProps = {\n stiffness?: number;\n damping?: number;\n durationY?: number;\n durationX?: number;\n ease?: IconEasingEnum;\n};\n\nconst AlarmClockPlusIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps & CustomStyleProps\n>(\n (\n {\n size = 24,\n color = \"currentColor\",\n strokeWidth = 2,\n className = \"\",\n stiffness = 200,\n damping = 25,\n durationY = 0.2,\n durationX = 0.3,\n ease = IconEasingEnum.LINEAR,\n ...props\n },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animationControls.current.push(\n animate(\n \".clock\",\n {\n y: -1.5,\n x: [-1, 1, -1, 1, -1, 0],\n },\n {\n y: {\n duration: durationY,\n type: \"spring\",\n stiffness: stiffness,\n damping: damping,\n },\n x: { duration: durationX, repeat: Infinity, ease: ease },\n },\n ),\n );\n\n animationControls.current.push(\n animate(\n \".bells\",\n {\n y: -2.5,\n x: [-2, 2, -2, 2, -2, 0],\n },\n {\n y: {\n duration: durationY,\n type: \"spring\",\n stiffness: stiffness,\n damping: damping,\n },\n x: { duration: durationX, repeat: Infinity, ease: ease },\n },\n ),\n );\n\n await animate(\n \".plus\",\n { scale: [1, 1.2, 1] },\n { duration: durationY, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\".clock\", { y: 0, x: 0 }, { duration: durationY * 2 });\n animate(\".bells\", { y: 0, x: 0 }, { duration: durationY * 2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n // 🖱 hover logic (only when NOT controlled)\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n aria-hidden=\"true\"\n {...props}\n >\n <motion.circle className=\"clock\" cx=\"12\" cy=\"13\" r=\"8\" />\n <motion.path\n className=\"bells\"\n style={{ transformOrigin: \"3.5px 4.5px\" }}\n d=\"M5 3 2 6\"\n />\n <motion.path\n className=\"bells\"\n style={{ transformOrigin: \"20.5px 4.5px\" }}\n d=\"m22 6-3-3\"\n />\n <motion.path className=\"clock\" d=\"M6.38 18.7 4 21\" />\n <motion.path className=\"clock\" d=\"M17.64 18.67 20 21\" />\n <motion.g className=\"plus\" style={{ transformOrigin: \"12px 13px\" }}>\n <path d=\"M12 10v6\" />\n <path d=\"M9 13h6\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nAlarmClockPlusIcon.displayName = \"AlarmClockPlusIcon\";\n\nexport default AlarmClockPlusIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst AlignCenterIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".line-1\", { scaleX: [1, 0.8, 1] }, { duration: 0.3 });\n animate(\n \".line-2\",\n { scaleX: [1, 1.2, 1] },\n { duration: 0.3, delay: 0.1 },\n );\n animate(\n \".line-3\",\n { scaleX: [1, 0.9, 1] },\n { duration: 0.3, delay: 0.2 },\n );\n };\n\n const stop = () => {\n animate(\".line-1\", { scaleX: 1 }, { duration: 0.2 });\n animate(\".line-2\", { scaleX: 1 }, { duration: 0.2 });\n animate(\".line-3\", { scaleX: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"line-1\"\n d=\"M4 6l16 0\"\n style={{ transformOrigin: \"center\" }}\n />\n <motion.path\n className=\"line-2\"\n d=\"M8 12l8 0\"\n style={{ transformOrigin: \"center\" }}\n />\n <motion.path\n className=\"line-3\"\n d=\"M6 18l12 0\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nAlignCenterIcon.displayName = \"AlignCenterIcon\";\n\nexport default AlignCenterIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst AlignVerticalSpaceAroundIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".top-line\", { y: 3 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\".bottom-line\", { y: -3 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\n \".rectangle\",\n { scale: 0.85 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".top-line\", { y: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\".bottom-line\", { y: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\".rectangle\", { scale: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.rect\n className=\"rectangle\"\n style={{ transformOrigin: \"12px 12px\" }}\n width=\"10\"\n height=\"6\"\n x=\"7\"\n y=\"9\"\n rx=\"2\"\n />\n <motion.path className=\"bottom-line\" d=\"M22 20H2\" />\n <motion.path className=\"top-line\" d=\"M22 4H2\" />\n </motion.svg>\n );\n },\n);\n\nAlignVerticalSpaceAroundIcon.displayName = \"AlignVerticalSpaceAroundIcon\";\n\nexport default AlignVerticalSpaceAroundIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst AmbulanceIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animationControls.current.push(\n animate(\n \".ambulance\",\n { x: [0, 1, 0, -1] },\n { duration: 0.6, ease: \"easeInOut\", repeat: Infinity },\n ),\n );\n animate(\n \".plus\",\n { scale: [1, 1.3, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\".ambulance\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\".plus\", { scale: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.g className=\"ambulance\">\n <path d=\"M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2\" />\n <path d=\"M19 18h2a1 1 0 0 0 1-1v-3.28a1 1 0 0 0-.684-.948l-1.923-.641a1 1 0 0 1-.578-.502l-1.539-3.076A1 1 0 0 0 16.382 8H14\" />\n <path d=\"M9 18h6\" />\n <circle cx=\"17\" cy=\"18\" r=\"2\" />\n <circle cx=\"7\" cy=\"18\" r=\"2\" />\n </motion.g>\n <motion.g className=\"plus\" style={{ transformOrigin: \"8px 8px\" }}>\n <path d=\"M10 10H6\" />\n <path d=\"M8 8v4\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nAmbulanceIcon.displayName = \"AmbulanceIcon\";\n\nexport default AmbulanceIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst AmpersandIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", color = \"currentColor\", strokeWidth = 2 },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\"path\", { pathLength: [0, 1] }, { duration: 0.6 });\n };\n\n const stop = async () => {\n animate(\"path\", { pathLength: 1 }, { duration: 0.3 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n color={color}\n className={`cursor-pointer ${className}`}\n >\n <path d=\"M16 12h3\" />\n <path d=\"M17.5 12a8 8 0 0 1-8 8A4.5 4.5 0 0 1 5 15.5c0-6 8-4 8-8.5a3 3 0 1 0-6 0c0 3 2.5 8.5 12 13\" />\n </motion.svg>\n );\n },\n);\n\nAmpersandIcon.displayName = \"AmpersandIcon\";\n\nexport default AmpersandIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst AngryIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".eyebrows\",\n { y: 1, scaleY: 1.2 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n animate(\".mouth\", { scaleY: 1.2 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\".eyes\", { scale: 0.8 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\n \".eyebrows\",\n { y: 0, scaleY: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n animate(\".mouth\", { scaleY: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\".eyes\", { scale: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <circle cx=\"12\" cy=\"12\" r=\"10\" />\n <motion.path\n className=\"mouth\"\n style={{ transformOrigin: \"12px 16px\" }}\n d=\"M16 16s-1.5-2-4-2-4 2-4 2\"\n />\n <motion.g className=\"eyebrows\">\n <path d=\"M7.5 8 10 9\" />\n <path d=\"m14 9 2.5-1\" />\n </motion.g>\n <motion.g className=\"eyes\">\n <path d=\"M9 10h.01\" />\n <path d=\"M15 10h.01\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nAngryIcon.displayName = \"AngryIcon\";\n\nexport default AngryIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst AnnoyedIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".eyes\", { scaleX: 0.7 }, { duration: 0.2, ease: \"easeOut\" });\n animate(\".mouth\", { y: 1 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\".eyes\", { scaleX: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\".mouth\", { y: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <circle cx=\"12\" cy=\"12\" r=\"10\" />\n <motion.path className=\"mouth\" d=\"M8 15h8\" />\n <motion.g className=\"eyes\">\n <path d=\"M8 9h2\" />\n <path d=\"M14 9h2\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nAnnoyedIcon.displayName = \"AnnoyedIcon\";\n\nexport default AnnoyedIcon;\n","\"use client\";\n\nimport { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst AppleBrandLogo = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".apple-leaf\",\n {\n rotate: [0, -15, 10, -5, 0],\n scale: [1, 1.1, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \".apple-body\",\n {\n scale: [1, 1.05, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n };\n\n const stop = async () => {\n animate(\n \".apple-leaf\",\n {\n rotate: 0,\n scale: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".apple-body\",\n {\n scale: 1,\n },\n {\n duration: 0.2,\n ease: \"easeOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M8.286 7.008c-3.216 0 -4.286 3.23 -4.286 5.92c0 3.229 2.143 8.072 4.286 8.072c1.165 -.05 1.799 -.538 3.214 -.538c1.406 0 1.607 .538 3.214 .538s4.286 -3.229 4.286 -5.381c-.03 -.011 -2.649 -.434 -2.679 -3.23c-.02 -2.335 2.589 -3.179 2.679 -3.228c-1.096 -1.606 -3.162 -2.113 -3.75 -2.153c-1.535 -.12 -3.032 1.077 -3.75 1.077c-.729 0 -2.036 -1.077 -3.214 -1.077z\"\n className=\"apple-body\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n <motion.path\n d=\"M12 4a2 2 0 0 0 2 -2a2 2 0 0 0 -2 2\"\n className=\"apple-leaf\"\n style={{ transformOrigin: \"50% 100%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nAppleBrandLogo.displayName = \"AppleBrandLogo\";\n\nexport default AppleBrandLogo;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBackIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { x: [0, -3, 0] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { x: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M9 11l-4 4l4 4m-4 -4h11a4 4 0 0 0 0 -8h-1\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowBackIcon.displayName = \"ArrowBackIcon\";\n\nexport default ArrowBackIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBackUpIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { x: [0, -3, 0] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { x: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M9 14l-4 -4l4 -4\" />\n <path d=\"M5 10h11a4 4 0 1 1 0 8h-1\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowBackUpIcon.displayName = \"ArrowBackUpIcon\";\n\nexport default ArrowBackUpIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBigDownDashIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", color = \"currentColor\", strokeWidth = 2 },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".arrow\", { y: 4 }, { duration: 0.5 });\n animate(\".dash\", { opacity: 0.5 }, { duration: 0.5 });\n };\n\n const stop = async () => {\n animate(\".arrow\", { y: 0 }, { duration: 0.3 });\n animate(\".dash\", { opacity: 1 }, { duration: 0.3 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n color={color}\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"arrow\"\n d=\"M15 11a1 1 0 0 0 1 1h2.939a1 1 0 0 1 .75 1.811l-6.835 6.836a1.207 1.207 0 0 1-1.707 0L4.31 13.81a1 1 0 0 1 .75-1.811H8a1 1 0 0 0 1-1V9a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1z\"\n />\n <motion.path className=\"dash\" d=\"M9 4h6\" />\n </motion.svg>\n );\n },\n);\n\nArrowBigDownDashIcon.displayName = \"ArrowBigDownDashIcon\";\n\nexport default ArrowBigDownDashIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBigDownIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", color = \"currentColor\", strokeWidth = 2 },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(scope.current, { y: [0, 4] }, { duration: 0.5 });\n };\n\n const stop = async () => {\n animate(scope.current, { y: 0 }, { duration: 0.3 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n color={color}\n className={`cursor-pointer ${className}`}\n >\n <path d=\"M15 11a1 1 0 0 0 1 1h2.939a1 1 0 0 1 .75 1.811l-6.835 6.836a1.207 1.207 0 0 1-1.707 0L4.31 13.81a1 1 0 0 1 .75-1.811H8a1 1 0 0 0 1-1V5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1z\" />\n </motion.svg>\n );\n },\n);\n\nArrowBigDownIcon.displayName = \"ArrowBigDownIcon\";\n\nexport default ArrowBigDownIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBigLeftDashIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", color = \"currentColor\", strokeWidth = 2 },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".arrow\", { x: [0, -4] }, { duration: 0.5 });\n animate(\".dash\", { opacity: [1, 0.5] }, { duration: 0.5 });\n };\n\n const stop = async () => {\n animate(\".arrow\", { x: 0 }, { duration: 0.3 });\n animate(\".dash\", { opacity: 1 }, { duration: 0.3 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n color={color}\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"arrow\"\n d=\"M13 9a1 1 0 0 1-1-1V5.061a1 1 0 0 0-1.811-.75l-6.835 6.836a1.207 1.207 0 0 0 0 1.707l6.835 6.835a1 1 0 0 0 1.811-.75V16a1 1 0 0 1 1-1h2a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1z\"\n />\n <motion.path className=\"dash\" d=\"M20 9v6\" />\n </motion.svg>\n );\n },\n);\n\nArrowBigLeftDashIcon.displayName = \"ArrowBigLeftDashIcon\";\n\nexport default ArrowBigLeftDashIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBigLeftIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".arrow\", { x: -4 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\".arrow\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"arrow\"\n d=\"M13 9a1 1 0 0 1-1-1V5.061a1 1 0 0 0-1.811-.75l-6.835 6.836a1.207 1.207 0 0 0 0 1.707l6.835 6.835a1 1 0 0 0 1.811-.75V16a1 1 0 0 1 1-1h6a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1z\"\n />\n </motion.svg>\n );\n },\n);\n\nArrowBigLeftIcon.displayName = \"ArrowBigLeftIcon\";\n\nexport default ArrowBigLeftIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBigRightDashIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".arrow\", { x: 4 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\n \".dash\",\n { scale: 1.2, opacity: 0.7 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\n \".dash\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"arrow\"\n d=\"M11 9a1 1 0 0 0 1-1V5.061a1 1 0 0 1 1.811-.75l6.836 6.836a1.207 1.207 0 0 1 0 1.707l-6.836 6.835a1 1 0 0 1-1.811-.75V16a1 1 0 0 0-1-1H9a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1z\"\n />\n <motion.path\n className=\"dash\"\n style={{ transformOrigin: \"4px 12px\" }}\n d=\"M4 9v6\"\n />\n </motion.svg>\n );\n },\n);\n\nArrowBigRightDashIcon.displayName = \"ArrowBigRightDashIcon\";\n\nexport default ArrowBigRightDashIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBigRightIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".arrow\", { x: 4 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\".arrow\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"arrow\"\n d=\"M11 9a1 1 0 0 0 1-1V5.061a1 1 0 0 1 1.811-.75l6.836 6.836a1.207 1.207 0 0 1 0 1.707l-6.836 6.835a1 1 0 0 1-1.811-.75V16a1 1 0 0 0-1-1H5a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1z\"\n />\n </motion.svg>\n );\n },\n);\n\nArrowBigRightIcon.displayName = \"ArrowBigRightIcon\";\n\nexport default ArrowBigRightIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBigUpDashIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".arrow\", { y: -4 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\n \".dash\",\n { scale: 1.2, opacity: 0.7 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow\", { y: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\n \".dash\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"arrow\"\n d=\"M9 13a1 1 0 0 0-1-1H5.061a1 1 0 0 1-.75-1.811l6.836-6.835a1.207 1.207 0 0 1 1.707 0l6.835 6.835a1 1 0 0 1-.75 1.811H16a1 1 0 0 0-1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1z\"\n />\n <motion.path\n className=\"dash\"\n style={{ transformOrigin: \"12px 20px\" }}\n d=\"M9 20h6\"\n />\n </motion.svg>\n );\n },\n);\n\nArrowBigUpDashIcon.displayName = \"ArrowBigUpDashIcon\";\n\nexport default ArrowBigUpDashIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowBigUpIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".arrow\", { y: -4 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\".arrow\", { y: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"arrow\"\n d=\"M9 13a1 1 0 0 0-1-1H5.061a1 1 0 0 1-.75-1.811l6.836-6.835a1.207 1.207 0 0 1 1.707 0l6.835 6.835a1 1 0 0 1-.75 1.811H16a1 1 0 0 0-1 1v6a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1z\"\n />\n </motion.svg>\n );\n },\n);\n\nArrowBigUpIcon.displayName = \"ArrowBigUpIcon\";\n\nexport default ArrowBigUpIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowDown01Icon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", color = \"currentColor\", strokeWidth = 2 },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const swapDistance = 10;\n\n const start = async () => {\n animate(\n \".zero\",\n { y: swapDistance },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\n \".one\",\n { y: -swapDistance },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n };\n\n const stop = async () => {\n animate(\".zero, .one\", { y: 0 }, { duration: 0.3, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n color={color}\n className={`cursor-pointer ${className}`}\n >\n <path d=\"m3 16 4 4 4-4\" />\n <path d=\"M7 20V4\" />\n <motion.rect\n className=\"zero\"\n x=\"15\"\n y=\"4\"\n width=\"4\"\n height=\"6\"\n ry=\"2\"\n />\n <motion.g className=\"one\">\n <path d=\"M17 20v-6h-2\" />\n <path d=\"M15 20h4\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nArrowDown01Icon.displayName = \"ArrowDown01Icon\";\n\nexport default ArrowDown01Icon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowDown10Icon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const swapDistance = 10;\n\n const start = async () => {\n animate(\n \".one\",\n { y: swapDistance },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\n \".zero\",\n { y: -swapDistance },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n };\n\n const stop = async () => {\n animate(\".one, .zero\", { y: 0 }, { duration: 0.3, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path d=\"m3 16 4 4 4-4\" />\n <path d=\"M7 20V4\" />\n <motion.g className=\"one\">\n <path d=\"M17 10V4h-2\" />\n <path d=\"M15 10h4\" />\n </motion.g>\n <motion.rect\n className=\"zero\"\n x=\"15\"\n y=\"14\"\n width=\"4\"\n height=\"6\"\n ry=\"2\"\n />\n </motion.svg>\n );\n },\n);\n\nArrowDown10Icon.displayName = \"ArrowDown10Icon\";\n\nexport default ArrowDown10Icon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowDownAZIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", color = \"currentColor\", strokeWidth = \"1\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const swapDistance = 24;\n\n const start = async () => {\n animate(\n \".text-z\",\n {\n y: -swapDistance,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".text-a\",\n {\n y: swapDistance,\n scale: 1.05,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n };\n\n const stop = async () => {\n await animate(\n \".text-z, .text-a\",\n {\n y: 0,\n scale: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n color={color}\n className={`cursor-pointer ${className}`}\n >\n <motion.path className=\"text-line\" d=\"M35.5 3.5V43H32.5V3.5H35.5Z\" />\n\n <motion.path\n className=\"text-z\"\n d=\"M6.5 26H21.5V29.1627L10.4518 41H21.5V44H6.5V40.8373L17.5482 29H6.5V26Z\"\n />\n\n <motion.path\n className=\"text-a\"\n d=\"M11.7802 4H16.0532L22.5532 22H18.7V20.1625L13.9469 7H13.8865L9.13335 20.1625V22H5.28021L11.7802 4Z\"\n />\n\n <motion.path className=\"text-a\" d=\"M19.5 18H8.5V15H19.5V18Z\" />\n\n <motion.path\n className=\"text-arrow\"\n style={{ transformOrigin: \"34px 38px\" }}\n d=\"M25 31.8787L34 40.8787L43 31.8787L45.1213 34L34 45.1213L22.8787 34L25 31.8787Z\"\n />\n </motion.svg>\n );\n },\n);\n\nArrowDownAZIcon.displayName = \"ArrowDownAZIcon\";\n\nexport default ArrowDownAZIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowNarrowDownDashedIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n {\n y: [0, 4, 0],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { y: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path d=\"M12 5v.5\" />\n <path d=\"M12 8.5v1.5\" />\n <path d=\"M12 13v6\" />\n\n <path d=\"M16 15l-4 4\" />\n <path d=\"M8 15l4 4\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowNarrowDownDashedIcon.displayName = \"ArrowNarrowDownDashedIcon\";\n\nexport default ArrowNarrowDownDashedIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowNarrowDownIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { y: [0, 4, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { y: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M12 5l0 14\" />\n <path d=\"M16 15l-4 4\" />\n <path d=\"M8 15l4 4\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowNarrowDownIcon.displayName = \"ArrowNarrowDownIcon\";\n\nexport default ArrowNarrowDownIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowNarrowLeftDashedIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { x: [0, -4, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { x: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M5 12h6m3 0h1.5m3 0h.5\" />\n <path d=\"M5 12l4 4\" />\n <path d=\"M5 12l4 -4\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowNarrowLeftDashedIcon.displayName = \"ArrowNarrowLeftDashedIcon\";\n\nexport default ArrowNarrowLeftDashedIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowNarrowLeftIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { x: [0, -4, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { x: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M5 12l14 0\" />\n <path d=\"M5 12l4 4\" />\n <path d=\"M5 12l4 -4\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowNarrowLeftIcon.displayName = \"ArrowNarrowLeftIcon\";\n\nexport default ArrowNarrowLeftIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowNarrowRightDashedIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { x: [0, 4, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { x: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M5 12h.5m3 0h1.5m3 0h6\" />\n <path d=\"M15 16l4 -4\" />\n <path d=\"M15 8l4 4\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowNarrowRightDashedIcon.displayName = \"ArrowNarrowRightDashedIcon\";\n\nexport default ArrowNarrowRightDashedIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowNarrowRightIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { x: [0, 4, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { x: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M5 12l14 0\" />\n <path d=\"M15 16l4 -4\" />\n <path d=\"M15 8l4 4\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowNarrowRightIcon.displayName = \"ArrowNarrowRightIcon\";\n\nexport default ArrowNarrowRightIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowNarrowUpDashedIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { y: [0, -4, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { y: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M12 5v6m0 3v1.5m0 3v.5\" />\n <path d=\"M16 9l-4 -4\" />\n <path d=\"M8 9l4 -4\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowNarrowUpDashedIcon.displayName = \"ArrowNarrowUpDashedIcon\";\n\nexport default ArrowNarrowUpDashedIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ArrowNarrowUpIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".arrow-group\",\n { y: [0, -4, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".arrow-group\", { y: 0 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g className=\"arrow-group\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M12 5l0 14\" />\n <path d=\"M16 9l-4 -4\" />\n <path d=\"M8 9l4 -4\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nArrowNarrowUpIcon.displayName = \"ArrowNarrowUpIcon\";\n\nexport default ArrowNarrowUpIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst AtSignIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".draw\", { pathLength: 0, opacity: 0 }, { duration: 0 });\n\n await animate(\n \".outer\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.45, ease: \"easeOut\" },\n );\n\n await animate(\n \".path\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.6, ease: \"easeOut\" },\n );\n\n animate(\n \".inner\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".draw\", { pathLength: 1, opacity: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.circle\n className=\"draw inner\"\n cx=\"12\"\n cy=\"12\"\n r=\"4\"\n initial={{ pathLength: 1, opacity: 1 }}\n />\n <motion.path\n className=\"draw path\"\n d=\"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8\"\n initial={{ pathLength: 1, opacity: 1 }}\n />\n <motion.circle\n className=\"draw outer\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n initial={{ pathLength: 1, opacity: 1 }}\n />\n </motion.svg>\n );\n },\n);\n\nAtSignIcon.displayName = \"AtSignIcon\";\n\nexport default AtSignIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BananaIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".peel\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.5, ease: \"easeOut\" },\n );\n await animate(\n \".banana\",\n { rotate: [0, -5, 5, -5, 0], y: [0, -2, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".peel\", { pathLength: 1, opacity: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"peel\"\n d=\"M4 13c3.5-2 8-2 10 2a5.5 5.5 0 0 1 8 5\"\n initial={{ pathLength: 1, opacity: 1 }}\n />\n <motion.path\n className=\"banana\"\n style={{ transformOrigin: \"center\" }}\n d=\"M5.15 17.89c5.52-1.52 8.65-6.89 7-12C11.55 4 11.5 2 13 2c3.22 0 5 5.5 5 8 0 6.5-4.2 12-10.49 12C5.11 22 2 22 2 20c0-1.5 1.14-1.55 3.15-2.11Z\"\n />\n </motion.svg>\n );\n },\n);\n\nBananaIcon.displayName = \"BananaIcon\";\n\nexport default BananaIcon;\n","\"use client\";\nimport { forwardRef, useImperativeHandle, useEffect } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BatteryChargingIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2.5, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n useEffect(() => {\n animate(\".battery-bar-1\", { opacity: 0 }, { duration: 0 });\n animate(\".battery-bar-2\", { opacity: 0 }, { duration: 0 });\n animate(\".battery-bar-3\", { opacity: 0 }, { duration: 0 });\n animate(\".battery-bar-4\", { opacity: 0 }, { duration: 0 });\n }, [animate]);\n\n const start = async () => {\n await animate(\n \".battery-bar-1\",\n { opacity: 1 },\n { duration: 0.15, ease: \"easeOut\" },\n );\n\n await animate(\n \".battery-bar-2\",\n { opacity: 1 },\n { duration: 0.15, ease: \"easeOut\" },\n );\n\n await animate(\n \".battery-bar-3\",\n { opacity: 1 },\n { duration: 0.15, ease: \"easeOut\" },\n );\n\n await animate(\n \".battery-bar-4\",\n { opacity: 1 },\n { duration: 0.15, ease: \"easeOut\" },\n );\n };\n\n const stop = async () => {\n await animate(\n \".battery-bar-1, .battery-bar-2, .battery-bar-3, .battery-bar-4\",\n { opacity: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"square\"\n >\n <motion.path\n initial={{\n opacity: 0,\n }}\n className=\"battery-bar-1\"\n d=\"M10 31V17\"\n />\n <motion.path\n initial={{\n opacity: 0,\n }}\n className=\"battery-bar-2\"\n d=\"M17 31V17\"\n />\n <motion.path\n initial={{\n opacity: 0,\n }}\n className=\"battery-bar-3\"\n d=\"M24 31V17\"\n />\n <motion.path\n initial={{\n opacity: 0,\n }}\n className=\"battery-bar-4\"\n d=\"M31 31V17\"\n />\n\n <motion.path d=\"M46 20V28\" />\n\n <motion.path d=\"M37 10H8C5.2386 10 3 12.2386 3 15V33C3 35.7614 5.2386 38 8 38H37C39.7614 38 42 35.7614 42 33V15C42 12.2386 39.7614 10 37 10Z\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nBatteryChargingIcon.displayName = \"BatteryChargingIcon\";\n\nexport default BatteryChargingIcon;\n","\"use client\";\nimport { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BatteryIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2.5, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".battery-bolt\",\n { pathLength: 0, opacity: 0 },\n { duration: 0 },\n );\n animate(\n \".battery-bolt\",\n {\n pathLength: [0, 1],\n opacity: [0, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".battery-body\",\n {\n scale: [1, 1.04, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n await animate(\n \".battery-bolt\",\n {\n opacity: [1, 0.4, 1],\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n };\n\n const stop = () => {\n animate(\n \".battery-bolt\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeMiterlimit=\"10\"\n strokeLinecap=\"square\"\n >\n <motion.path className=\"battery-terminal\" d=\"M46 20V28\" />\n\n <motion.path\n className=\"battery-body\"\n style={{ transformOrigin: \"50% 50%\" }}\n d=\"M37 10H8C5.23858 10 3 12.2386 3 15V33C3 35.7614 5.23858 38 8 38H37C39.7614 38 42 35.7614 42 33V15C42 12.2386 39.7614 10 37 10Z\"\n />\n\n <motion.path\n className=\"battery-bolt\"\n style={{ transformOrigin: \"22.5px 24px\" }}\n d=\"M33.5 25.6667L22.5 19V29L11.5 22.3333\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nBatteryIcon.displayName = \"BatteryIcon\";\n\nexport default BatteryIcon;\n","\"use client\";\nimport { forwardRef, useImperativeHandle, useEffect } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BatteryPauseIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2.5, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n useEffect(() => {\n animate(\".battery-pause-1\", { opacity: 1 }, { duration: 0 });\n animate(\".battery-pause-2\", { opacity: 1 }, { duration: 0 });\n animate(\".battery-pause-3\", { opacity: 0 }, { duration: 0 });\n animate(\".battery-pause-4\", { opacity: 0 }, { duration: 0 });\n }, [animate]);\n\n const start = async () => {\n await animate(\n \".battery-pause-3\",\n { opacity: 1 },\n { duration: 0.15, ease: \"easeOut\" },\n );\n\n await animate(\n \".battery-pause-4\",\n { opacity: 1 },\n { duration: 0.15, ease: \"easeOut\" },\n );\n };\n\n const stop = async () => {\n await animate(\n \".battery-pause-3, .battery-pause-4\",\n { opacity: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"square\"\n >\n <motion.path\n className=\"battery-pause-bar battery-pause-1\"\n d=\"M10 31V17\"\n />\n <motion.path\n className=\"battery-pause-bar battery-pause-2\"\n d=\"M17 31V17\"\n />\n <motion.path\n initial={{\n opacity: 0,\n }}\n className=\"battery-pause-bar battery-pause-3\"\n d=\"M24 31V17\"\n />\n <motion.path\n initial={{\n opacity: 0,\n }}\n className=\"battery-pause-bar battery-pause-4\"\n d=\"M31 31V17\"\n />\n\n <motion.path d=\"M46 20V28\" />\n\n <motion.path d=\"M37 10H8C5.2386 10 3 12.2386 3 15V33C3 35.7614 5.2386 38 8 38H37C39.7614 38 42 35.7614 42 33V15C42 12.2386 39.7614 10 37 10Z\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nBatteryPauseIcon.displayName = \"BatteryPauseIcon\";\n\nexport default BatteryPauseIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BellOffIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".bell\",\n { x: [-1, 1, -1, 1, 0] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n await animate(\n \".slash\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.5, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".slash\", { pathLength: 1, opacity: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path className=\"bell\" d=\"M10.268 21a2 2 0 0 0 3.464 0\" />\n <motion.path\n className=\"bell\"\n d=\"M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742\"\n />\n <motion.path\n className=\"slash\"\n d=\"m2 2 20 20\"\n initial={{ pathLength: 1, opacity: 1 }}\n />\n <motion.path\n className=\"bell\"\n d=\"M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05\"\n />\n </motion.svg>\n );\n },\n);\n\nBellOffIcon.displayName = \"BellOffIcon\";\n\nexport default BellOffIcon;\n","\"use client\";\nimport { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BluetoothConnectedIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Pulse the bluetooth symbol\n animate(\n \".bluetooth-symbol\",\n {\n scale: [1, 1.1, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n // Animate connection dots\n animate(\n \".connection-dot\",\n {\n scale: [1, 1.5, 1],\n opacity: [1, 0.5, 1],\n },\n {\n duration: 0.8,\n delay: (i) => i * 0.2,\n ease: \"easeInOut\",\n },\n );\n };\n\n const stop = async () => {\n animate(\n \".bluetooth-symbol\",\n {\n scale: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".connection-dot\",\n {\n scale: 1,\n opacity: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Bluetooth symbol */}\n <motion.path\n className=\"bluetooth-symbol\"\n d=\"M7 8l10 8l-5 4l0 -16l5 4l-10 8\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n {/* Connection dots */}\n <motion.path className=\"connection-dot\" d=\"M4 12l1 0\" />\n <motion.path className=\"connection-dot\" d=\"M18 12l1 0\" />\n </motion.svg>\n );\n },\n);\n\nBluetoothConnectedIcon.displayName = \"BluetoothConnectedIcon\";\n\nexport default BluetoothConnectedIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BookIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".book-line\",\n { pathLength: 0, opacity: 0 },\n { duration: 0 },\n );\n\n await animate(\n \".book-line-1\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.3, ease: \"easeInOut\", delay: 0.1 },\n );\n\n await animate(\n \".book-line-2\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.3, ease: \"easeInOut\", delay: 0.05 },\n );\n\n await animate(\n \".book-line-3\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.3, ease: \"easeInOut\", delay: 0.05 },\n );\n };\n\n const stop = () => {\n animate(\".book-line\", { pathLength: 1, opacity: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 48)}\n strokeMiterlimit=\"10\"\n strokeLinecap=\"square\"\n >\n <motion.path className=\"book-spine\" d=\"M24 40.5V41L24 10V10.5\" />\n\n <motion.path\n className=\"book-cover\"\n style={{ transformOrigin: \"24px 25px\" }}\n d=\"M24 41C31.0005 36.9995 37.9995 36.9995 45 41V10.0003C37.9995 5.99989 31.0005 5.99989 24 10.0003C16.9995 5.99989 10.0005 5.99989 3 10.0003V41C10.0005 36.9995 16.9995 36.9995 24 41Z\"\n />\n\n <motion.path\n className=\"book-line book-line-1\"\n d=\"M30 16.5C32.8362 15.1345 36.5662 15.06 39.5 16.2763\"\n />\n\n <motion.path\n className=\"book-line book-line-2\"\n d=\"M30 23.5832C32.8362 22.2178 36.5662 22.1432 39.5 23.3596\"\n />\n\n <motion.path\n className=\"book-line book-line-3\"\n d=\"M30 30.6665C32.8362 29.301 36.5662 29.2265 39.5 30.4428\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nBookIcon.displayName = \"BookIcon\";\n\nexport default BookIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BookmarkIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".bookmark-body\",\n {\n scaleY: 0.9,\n y: 2,\n },\n {\n duration: 0.18,\n ease: \"easeOut\",\n },\n );\n };\n\n const stop = async () => {\n await animate(\n \".bookmark-body\",\n {\n scaleY: 1,\n y: 0,\n },\n {\n duration: 0.18,\n ease: \"easeInOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 48)}\n strokeMiterlimit=\"10\"\n strokeLinecap=\"square\"\n >\n <motion.path\n className=\"bookmark-body\"\n style={{ transformOrigin: \"50% 20%\" }}\n d=\"M24 34L41 44V8C41 5.23858 38.7614 3 36 3H12C9.23858 3 7 5.23858 7 8V44L24 34Z\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nBookmarkIcon.displayName = \"BookmarkIcon\";\n\nexport default BookmarkIcon;\n","\"use strict\";\n\nimport { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrainCircuitIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const startAnimation = useCallback(() => {\n // Brain outline subtle pulse\n animate(\n \".brain-outline\",\n { opacity: [1, 0.7, 1] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\" },\n );\n\n // Circuit lines drawing\n animate(\n \".circuit-line\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.6, ease: \"easeOut\" },\n );\n\n // Synaptic terminals pulsing in sequence\n const terminals = [\n \".terminal-1\",\n \".terminal-2\",\n \".terminal-3\",\n \".terminal-4\",\n ];\n terminals.forEach((selector, index) => {\n animate(\n selector,\n { scale: [1, 1.5, 1], opacity: [0.5, 1, 0.5] },\n {\n duration: 0.8,\n delay: 0.2 + index * 0.15,\n repeat: Infinity,\n repeatDelay: 1,\n ease: \"easeInOut\",\n },\n );\n });\n }, [animate]);\n\n const stopAnimation = useCallback(() => {\n animate(\".brain-outline\", { opacity: 1 }, { duration: 0.3 });\n animate(\n \".circuit-line\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.3 },\n );\n animate(\".terminal\", { scale: 1, opacity: 1 }, { duration: 0.3 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation,\n stopAnimation,\n }));\n\n return (\n <div\n className={`relative flex items-center justify-center ${className}`}\n onMouseEnter={startAnimation}\n onMouseLeave={stopAnimation}\n >\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.path\n className=\"brain-outline\"\n d=\"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z\"\n />\n <motion.path className=\"circuit-line\" d=\"M9 13a4.5 4.5 0 0 0 3-4\" />\n <motion.path\n className=\"brain-outline\"\n d=\"M6.003 5.125A3 3 0 0 0 6.401 6.5\"\n />\n <motion.path\n className=\"brain-outline\"\n d=\"M3.477 10.896a4 4 0 0 1 .585-.396\"\n />\n <motion.path\n className=\"brain-outline\"\n d=\"M6 18a4 4 0 0 1-1.967-.516\"\n />\n <motion.path className=\"circuit-line\" d=\"M12 13h4\" />\n <motion.path className=\"circuit-line\" d=\"M12 18h6a2 2 0 0 1 2 2v1\" />\n <motion.path className=\"circuit-line\" d=\"M12 8h8\" />\n <motion.path className=\"circuit-line\" d=\"M16 8V5a2 2 0 0 1 2-2\" />\n <motion.circle\n className=\"terminal terminal-1\"\n cx=\"16\"\n cy=\"13\"\n r=\".5\"\n />\n <motion.circle\n className=\"terminal terminal-2\"\n cx=\"18\"\n cy=\"3\"\n r=\".5\"\n />\n <motion.circle\n className=\"terminal terminal-3\"\n cx=\"20\"\n cy=\"21\"\n r=\".5\"\n />\n <motion.circle\n className=\"terminal terminal-4\"\n cx=\"20\"\n cy=\"8\"\n r=\".5\"\n />\n </motion.svg>\n </div>\n );\n },\n);\n\nBrainCircuitIcon.displayName = \"BrainCircuitIcon\";\n\nexport default BrainCircuitIcon;\n","import { forwardRef, useImperativeHandle, useCallback, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandAiStudioIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const frameRef = useRef<SVGGElement | null>(null);\n const sparkRef = useRef<SVGGElement | null>(null);\n\n const getSparkCenterOffset = () => {\n if (!frameRef.current || !sparkRef.current) return { x: 0, y: 0 };\n\n const frame = frameRef.current.getBBox();\n const spark = sparkRef.current.getBBox();\n\n const frameCenterX = frame.x + frame.width / 2;\n const frameCenterY = frame.y + frame.height / 2;\n\n const sparkCenterX = spark.x + spark.width / 2;\n const sparkCenterY = spark.y + spark.height / 2;\n\n return {\n x: frameCenterX - sparkCenterX,\n y: frameCenterY - sparkCenterY,\n };\n };\n\n const start = useCallback(() => {\n const { x, y } = getSparkCenterOffset();\n\n // Move Gemini into the IDE\n animate(\n \".google-spark\",\n { x, y, scale: 0.9 },\n { duration: 0.35, ease: \"easeInOut\" },\n );\n\n // Pull the frame inward slightly so it \"closes\"\n animate(\n \".google-frame\",\n { scale: 0.94 },\n { duration: 0.35, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".google-spark\",\n { x: 0, y: 0, scale: 1 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n\n animate(\n \".google-frame\",\n { scale: 1 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n className={className}\n xmlns=\"http://www.w3.org/2000/svg\"\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <title>Google AI Studio</title>\n\n {/* Frame */}\n <motion.g\n ref={frameRef}\n className=\"google-frame\"\n style={{\n transformBox: \"fill-box\",\n transformOrigin: \"center\",\n }}\n >\n <path\n fillRule=\"evenodd\"\n d=\"M9.921 4.196H6.328A2.705 2.705 0 003.623 6.9v11.362a2.705 2.705 0 002.705 2.705h11.363a2.705 2.705 0 002.705-2.705v-4.756l1.623-1.113v5.87a4.329 4.329 0 01-4.328 4.328H6.328A4.329 4.329 0 012 18.263V6.901a4.328 4.328 0 014.328-4.329h4.545l-.952 1.624z\"\n />\n </motion.g>\n\n {/* Gemini sparkle */}\n <motion.g\n ref={sparkRef}\n className=\"google-spark\"\n style={{\n transformBox: \"fill-box\",\n transformOrigin: \"center\",\n }}\n >\n <path\n fillRule=\"evenodd\"\n d=\"M17.82 0c.145 0 .268.104.299.246a7 7 0 001.9 3.484 7 7 0 003.485 1.901c.142.031.246.154.246.3a.308.308 0 01-.246.298A7 7 0 0020.02 8.13a7 7 0 00-1.912 3.535.297.297 0 01-.288.238.297.297 0 01-.288-.238A7 7 0 0015.62 8.13a7 7 0 00-3.535-1.912.297.297 0 01-.238-.288c0-.14.1-.26.238-.288A7 7 0 0015.62 3.73 7.001 7.001 0 0017.521.246.308.308 0 0117.82 0z\"\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nBrandAiStudioIcon.displayName = \"BrandAiStudioIcon\";\nexport default BrandAiStudioIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandAnthropicIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Simple scale pulse on the slash\n animate(\n \".anthropic-i\",\n { rotateX: 22, skewX: -22, scaleY: 1.09 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".anthropic-i\",\n { rotateX: 0, skewX: 0, scaleY: 1 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n className={className}\n xmlns=\"http://www.w3.org/2000/svg\"\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <title>Anthropic</title>\n\n {/* A */}\n <motion.g\n className=\"anthropic-a\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n >\n <path d=\"M6.57 3.52h3.767L16.906 20h-3.674l-1.343-3.461H5.017L3.673 20H0L6.57 3.522zm4.132 9.959L8.453 7.687 6.205 13.48H10.7z\" />\n </motion.g>\n\n {/* Backslash */}\n <motion.g\n className=\"anthropic-i\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n >\n <path d=\"M13.827 3.52h3.603L24 20h-3.603l-6.57-16.48z\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nBrandAnthropicIcon.displayName = \"BrandAnthropicIcon\";\nexport default BrandAnthropicIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandAwsIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".smile\",\n {\n pathOffset: 1,\n opacity: [0, 1],\n pathLength: 1,\n },\n {\n duration: 0.1,\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \".smile\",\n { pathOffset: 0 },\n { duration: 0.45, ease: \"easeInOut\" },\n );\n\n await animate(\n \".arrowhead\",\n { scale: [0.8, 1.15, 1], opacity: [0, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {};\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer select-none ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Smile + Arrow */}\n <motion.g className=\"smile-group\">\n <motion.path\n className=\"smile\"\n d=\"M17 18.5a15.198 15.198 0 0 1 -7.37 1.44a14.62 14.62 0 0 1 -6.63 -2.94\"\n />\n <motion.path\n className=\"arrowhead\"\n d=\"M19.5 21c.907 -1.411 1.451 -3.323 1.5 -5c-1.197 -.773 -2.577 -.935 -4 -1\"\n />\n </motion.g>\n\n <motion.g className=\"text\">\n <path d=\"M3 11v-4.5a1.5 1.5 0 0 1 3 0v4.5\" />\n <path d=\"M3 9h3\" />\n <path d=\"M9 5l1.2 6l1.8 -4l1.8 4l1.2 -6\" />\n <path d=\"M18 10.25c0 .414 .336 .75 .75 .75h1.25a1 1 0 0 0 1 -1v-1a1 1 0 0 0 -1 -1h-1a1 1 0 0 1 -1 -1v-1a1 1 0 0 1 1 -1h1.25a.75 .75 0 0 1 .75 .75\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nBrandAwsIcon.displayName = \"BrandAwsIcon\";\nexport default BrandAwsIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandBagsFmIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".bag\",\n {\n rotate: [0, -8, 8, -6, 6, -3, 3, 0],\n y: [0, -5, 0, -3, 0, -2, 0],\n },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".bag\", { rotate: 0, y: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 1024 1024\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.g className=\"bag\" style={{ originX: \"50%\", originY: \"100%\" }}>\n <motion.path\n d=\"M 561.64 1018.00 C541.03,1019.15 482.25,1019.09 461.00,1017.88 C428.17,1016.02 384.57,1010.43 359.50,1004.88 C276.24,986.43 221.60,959.81 176.15,915.53 C130.14,870.72 104.87,814.62 98.92,744.08 C97.58,728.12 98.21,685.69 99.98,673.00 C100.56,668.88 101.74,660.33 102.61,654.00 C112.42,582.33 148.13,492.03 190.38,432.09 C218.55,392.11 255.44,354.21 296.61,322.93 C307.25,314.85 311.79,313.00 321.00,313.00 C329.04,313.00 333.32,314.38 342.31,319.88 C359.36,330.32 385.72,341.87 407.76,348.57 C432.77,356.17 453.66,360.10 482.00,362.55 C553.43,368.72 624.89,353.61 682.14,320.22 C693.80,313.42 696.44,312.53 705.00,312.57 C714.85,312.61 718.38,314.30 734.00,326.45 C797.73,376.03 845.64,435.94 877.67,506.14 C903.33,562.37 919.23,617.23 925.67,671.74 C928.13,692.55 928.10,740.24 925.61,758.50 C921.88,785.96 914.99,811.78 905.35,834.43 C891.92,866.01 874.02,892.03 848.86,916.54 C835.25,929.80 824.91,938.14 809.00,948.70 C748.01,989.18 666.12,1012.12 561.64,1018.00 ZM 536.19 826.97 C540.81,825.68 545.00,820.86 545.00,816.82 C545.00,812.50 547.56,807.69 550.92,805.71 C553.43,804.22 557.01,804.00 578.26,804.00 C615.47,804.00 633.30,802.14 651.41,796.38 C673.82,789.25 686.65,776.74 691.55,757.22 C692.87,752.00 693.07,745.89 692.76,721.22 C692.35,689.59 691.82,685.50 686.70,675.01 C681.23,663.80 665.70,653.24 646.15,647.43 C641.39,646.02 631.88,643.14 625.00,641.03 C606.42,635.34 582.75,628.19 572.00,625.02 C547.05,617.65 508.45,605.77 504.70,604.29 C498.82,601.98 493.27,598.38 492.04,596.08 C491.47,595.01 491.00,592.36 491.00,590.20 C491.00,582.30 497.66,577.84 509.50,577.82 C522.74,577.81 528.73,582.58 530.47,594.50 C530.87,597.25 531.71,599.83 532.35,600.23 C532.98,600.64 563.97,600.98 601.21,600.98 C666.27,601.00 669.13,600.92 674.21,599.02 C681.74,596.20 686.42,591.92 690.06,584.53 C693.16,578.23 693.20,577.94 692.85,565.76 C692.51,553.79 692.38,553.15 688.72,545.75 C683.93,536.06 676.81,529.50 664.50,523.44 C645.31,513.99 626.50,511.02 585.20,510.94 C565.67,510.91 555.41,510.51 553.09,509.69 C548.74,508.17 546.24,504.73 545.14,498.78 C544.01,492.65 541.66,489.17 537.45,487.42 C532.52,485.36 487.43,485.38 482.49,487.44 C478.47,489.12 475.01,494.22 475.00,498.50 C474.99,502.15 471.94,507.40 468.80,509.17 C467.11,510.13 457.40,510.64 432.00,511.12 C406.48,511.60 395.22,512.20 388.74,513.42 C358.34,519.14 340.06,529.78 331.91,546.50 L 328.50 553.50 L 328.19 578.78 C327.93,599.97 328.14,604.97 329.53,609.74 C335.16,629.13 346.66,638.38 379.50,649.96 C384.45,651.71 390.75,653.74 393.50,654.47 C396.25,655.20 408.85,658.81 421.50,662.49 C449.39,670.59 469.49,676.41 494.00,683.46 C524.12,692.13 528.85,695.08 531.01,706.53 C531.93,711.45 531.93,714.46 531.00,719.97 C529.70,727.74 527.09,731.84 521.63,734.73 C517.07,737.14 505.64,737.00 500.56,734.46 C494.61,731.49 493.04,728.63 492.03,718.81 C490.65,705.44 486.14,698.82 476.50,696.04 C473.62,695.21 455.29,694.97 411.00,695.19 L 349.50 695.50 L 344.64 697.89 C338.22,701.06 333.29,706.13 330.30,712.66 C327.92,717.87 327.87,718.49 328.18,739.30 L 328.50 760.61 L 332.27 768.24 C342.28,788.48 366.04,799.76 405.50,802.99 C412.10,803.53 428.38,803.98 441.68,803.98 C454.99,803.99 467.02,804.44 468.43,804.98 C471.68,806.21 474.99,811.57 475.00,815.60 C475.00,819.92 478.87,825.26 483.03,826.69 C487.42,828.20 530.93,828.43 536.19,826.97 ZM 538.50 289.97 C496.13,293.54 448.71,287.35 418.42,274.29 C400.92,266.74 395.55,263.15 374.23,244.71 C335.15,210.90 308.78,179.14 298.10,153.00 C294.86,145.06 294.63,143.75 294.57,133.00 C294.51,122.90 294.78,120.98 296.76,117.28 C300.36,110.53 304.53,106.44 318.44,96.01 C343.30,77.37 350.32,70.84 389.50,29.94 C408.14,10.48 415.56,6.96 439.53,6.23 C452.01,5.85 456.43,6.13 465.56,7.87 C476.52,9.97 479.33,10.84 509.50,21.49 C533.06,29.80 540.92,31.28 562.00,31.37 C573.44,31.41 582.10,30.94 587.00,29.99 C597.54,27.96 620.67,28.11 628.72,30.27 C635.91,32.20 646.41,37.33 653.28,42.26 C655.91,44.15 665.14,52.63 673.79,61.10 C693.45,80.36 701.04,86.89 714.89,96.47 C726.70,104.63 730.32,108.22 733.07,114.50 C744.54,140.60 718.47,183.79 657.88,239.05 C629.95,264.53 617.87,271.89 589.75,280.53 C576.65,284.56 554.66,288.61 538.50,289.97 Z\"\n fill={color}\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nBrandBagsFmIcon.displayName = \"BrandBagsFmIcon\";\n\nexport default BrandBagsFmIcon;\n","\"use client\";\nimport { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandChromeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = () => {\n animate(\".chrome-center\", { scale: [1, 1.15, 1] }, { duration: 0.3 });\n animate(\n \".chrome-rotator\",\n { rotate: 90 },\n { duration: 0.5, ease: [0.34, 1.56, 0.64, 1] },\n );\n };\n\n const stop = () => {\n animate(\".chrome-rotator\", { rotate: 0 }, { duration: 0.3 });\n animate(\".chrome-center\", { scale: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g\n className=\"chrome-rotator\"\n style={{ transformOrigin: \"center\" }}\n >\n <path d=\"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\" />\n <path d=\"M12 9h8.4\" />\n <path d=\"M14.598 13.5l-4.2 7.275\" />\n <path d=\"M9.402 13.5l-4.2 -7.275\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\"\n stroke=\"none\"\n className=\"fill-background\"\n />\n <motion.path\n className=\"chrome-center\"\n d=\"M9 12a3 3 0 1 0 6 0a3 3 0 1 0 -6 0\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nBrandChromeIcon.displayName = \"BrandChromeIcon\";\n\nexport default BrandChromeIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandCursorIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n scope.current,\n {\n x: [0, -1, 1, -1, 0],\n y: [0, 1, -1, 1, 0],\n },\n { duration: 0.25, repeat: 1 },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(scope.current, { x: 0, y: 0 }, { duration: 0.15 });\n }, [animate, scope]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n fill={color}\n fillRule=\"evenodd\"\n height={size}\n width={size}\n style={{ flex: \"none\", lineHeight: 1 }}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={`cursor-ide-icon cursor-pointer ${className}`}\n stroke={color}\n >\n <title>Cursor</title>\n <motion.path d=\"M22.106 5.68L12.5.135a.998.998 0 00-.998 0L1.893 5.68a.84.84 0 00-.419.726v11.186c0 .3.16.577.42.727l9.607 5.547a.999.999 0 00.998 0l9.608-5.547a.84.84 0 00.42-.727V6.407a.84.84 0 00-.42-.726zm-.603 1.176L12.228 22.92c-.063.108-.228.064-.228-.061V12.34a.59.59 0 00-.295-.51l-9.11-5.26c-.107-.062-.063-.228.062-.228h18.55c.264 0 .428.286.296.514z\" />\n </motion.svg>\n );\n },\n);\n\nBrandCursorIcon.displayName = \"BrandCursorIcon\";\nexport default BrandCursorIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandGeminiIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n scope.current,\n { scale: 0.9, rotate: [0, 180] },\n {\n duration: 0.8,\n ease: \"easeInOut\",\n },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(\n scope.current,\n { scale: 1, rotate: 0 },\n {\n duration: 0.8,\n ease: \"easeInOut\",\n },\n );\n }, [animate, scope]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n fill={color}\n viewBox=\"0 0 24 24\"\n height={size}\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n className={`gemini-icon cursor-pointer ${className}`}\n role=\"img\"\n aria-label=\"Gemini\"\n style={{\n flex: \"none\",\n lineHeight: 1,\n transformBox: \"fill-box\",\n transformOrigin: \"center\",\n }}\n >\n <title>Gemini</title>\n\n {/* Gemini star glyph */}\n <motion.path\n className=\"gemini-shape\"\n d=\"M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandGeminiIcon.displayName = \"BrandGeminiIcon\";\nexport default BrandGeminiIcon;\n","\"use client\";\nimport { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandGoogleIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".google-g\",\n {\n rotate: [0, -10, 10, -5, 0],\n scale: [1, 1.05, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n };\n\n const stop = async () => {\n animate(\n \".google-g\",\n {\n rotate: 0,\n scale: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n className={`cursor-pointer ${className}`}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M12 2a9.96 9.96 0 0 1 6.29 2.226a1 1 0 0 1 .04 1.52l-1.51 1.362a1 1 0 0 1 -1.265 .06a6 6 0 1 0 2.103 6.836l.001 -.004h-3.66a1 1 0 0 1 -.992 -.883l-.007 -.117v-2a1 1 0 0 1 1 -1h6.945a1 1 0 0 1 .994 .89c.04 .367 .061 .737 .061 1.11c0 5.523 -4.477 10 -10 10s-10 -4.477 -10 -10s4.477 -10 10 -10z\"\n className=\"google-g\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nBrandGoogleIcon.displayName = \"BrandGoogleIcon\";\n\nexport default BrandGoogleIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandGrokIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Subtle container pulse\n animate(\n scope.current,\n { scale: 1.05 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n // Upper flows up-right\n animate(\n \".grok-upper\",\n { x: 3, y: -3, opacity: 0.85 },\n { duration: 0.35, ease: \"easeOut\" },\n );\n\n // Lower flows down-left\n animate(\n \".grok-lower\",\n { x: -3, y: 3, opacity: 0.85 },\n { duration: 0.35, ease: \"easeOut\" },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(scope.current, { scale: 1 }, { duration: 0.2 });\n\n animate(\n \".grok-upper\",\n { x: 0, y: 0, opacity: 1 },\n { duration: 0.25, ease: \"easeInOut\" },\n );\n\n animate(\n \".grok-lower\",\n { x: 0, y: 0, opacity: 1 },\n { duration: 0.25, ease: \"easeInOut\" },\n );\n }, [animate, scope]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n fill={color}\n viewBox=\"0 0 24 24\"\n width={size}\n height={size}\n className={`grok-icon cursor-pointer ${className}`}\n style={{ flex: \"none\", lineHeight: 1 }}\n >\n <title>Grok</title>\n\n {/* Upper shard */}\n <motion.path\n className=\"grok-upper\"\n d=\"M9.27 15.29l7.978-5.897c.391-.29.95-.177 1.137.272.98 2.369.542 5.215-1.41 7.169-1.951 1.954-4.667 2.382-7.149 1.406l-2.711 1.257c3.889 2.661 8.611 2.003 11.562-.953 2.341-2.344 3.066-5.539 2.388-8.42l.006.007c-.983-4.232.242-5.924 2.75-9.383.06-.082.12-.164.179-.248l-3.301 3.305v-.01L9.267 15.292\"\n />\n\n {/* Lower shard */}\n <motion.path\n className=\"grok-lower\"\n d=\"M7.623 16.723c-2.792-2.67-2.31-6.801.071-9.184 1.761-1.763 4.647-2.483 7.166-1.425l2.705-1.25a7.808 7.808 0 00-1.829-1A8.975 8.975 0 005.984 5.83c-2.533 2.536-3.33 6.436-1.962 9.764 1.022 2.487-.653 4.246-2.34 6.022-.599.63-1.199 1.259-1.682 1.925l7.62-6.815\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandGrokIcon.displayName = \"BrandGrokIcon\";\nexport default BrandGrokIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst lines = [\n \".lm-line-1\",\n \".lm-line-2\",\n \".lm-line-3\",\n \".lm-line-4\",\n \".lm-line-5\",\n \".lm-line-6\",\n];\n\nconst BrandLmStudioIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 1, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n lines.forEach((line, i) => {\n const strength = 1 + i * 0.06;\n animate(\n line,\n {\n scaleX: [1, strength, 0.9, strength * 0.95, 1],\n },\n {\n duration: 1.4,\n delay: i * 0.08,\n ease: \"easeInOut\",\n repeat: Infinity,\n },\n );\n });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n lines.join(\", \"),\n { scaleX: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n strokeWidth={strokeWidth}\n className={className}\n xmlns=\"http://www.w3.org/2000/svg\"\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <title>LM Studio</title>\n\n <motion.path\n className=\"lm-line-1\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M2.84 2a1.273 1.273 0 100 2.547h10.287a1.274 1.274 0 000-2.547H2.84z\"\n />\n\n <motion.path\n className=\"lm-line-2\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M7.935 5.33a1.273 1.273 0 000 2.548H18.22a1.274 1.274 0 000-2.547H7.935z\"\n />\n\n <motion.path\n className=\"lm-line-3\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M3.624 9.935c0-.704.57-1.274 1.274-1.274h10.286a1.273 1.273 0 010 2.547H4.898c-.703 0-1.274-.57-1.274-1.273z\"\n />\n\n <motion.path\n className=\"lm-line-4\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M1.273 12.188a1.273 1.273 0 100 2.547H11.56a1.274 1.274 0 000-2.547H1.273z\"\n />\n\n <motion.path\n className=\"lm-line-5\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M3.624 16.792c0-.704.57-1.274 1.274-1.274h10.286a1.273 1.273 0 110 2.547H4.898c-.703 0-1.274-.57-1.274-1.273z\"\n />\n\n <motion.path\n className=\"lm-line-6\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M13.029 18.849a1.273 1.273 0 100 2.547h5.78a1.273 1.273 0 100-2.547h-5.78z\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandLmStudioIcon.displayName = \"BrandLmStudioIcon\";\nexport default BrandLmStudioIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandMidJourneyIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 0.75, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Boat rocking on the waves\n animate(\n \".midjourney-sails\",\n {\n rotate: [0, 2, -2, 0],\n y: [0, -0.5, 0.5, 0],\n },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\" },\n );\n\n // Waves undulating\n animate(\n \".midjourney-waves\",\n {\n y: [0, 0.5, -0.5, 0],\n scaleY: [1, 0.98, 1.02, 1],\n },\n { duration: 1.5, repeat: Infinity, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".midjourney-sails\", { rotate: 0, y: 0 }, { duration: 0.3 });\n animate(\".midjourney-waves\", { y: 0, scaleY: 1 }, { duration: 0.3 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n className={className}\n xmlns=\"http://www.w3.org/2000/svg\"\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <title>Midjourney</title>\n\n {/* Boat with sails */}\n <motion.g\n className=\"midjourney-sails\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center bottom\" }}\n >\n <path\n fill={color}\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinejoin=\"round\"\n d=\"M3.653 2.026C6.073 3.06 8.69 4.941 10.8 7.258c2.46 2.7 4.109 5.828 4.637 9.149a.31.31 0 01-.421.335c-2.348-.945-4.54-1.258-6.59-1.02-1.739.2-3.337.792-4.816 1.703-.294.182-.62-.182-.405-.454 1.856-2.355 2.581-4.99 2.343-7.794-.195-2.292-1.031-4.61-2.284-6.709a.31.31 0 01.388-.442zM10.04 4.45c1.778.543 3.892 2.102 5.782 4.243 1.984 2.248 3.552 4.934 4.347 7.582a.31.31 0 01-.401.38l-.022-.01-.386-.154a10.594 10.594 0 00-.291-.112l-.016-.006c-.68-.247-1.199-.291-1.944-.101a.31.31 0 01-.375-.218C15.378 11.123 13.073 7.276 9.775 5c-.291-.201-.072-.653.266-.55zM4.273 2.996l.008.015c1.028 1.94 1.708 4.031 1.885 6.113.213 2.513-.31 4.906-1.673 7.092l-.02.031.003-.001c1.198-.581 2.47-.969 3.825-1.132l.055-.006c1.981-.23 4.083.029 6.309.837l.066.025-.007-.039c-.593-2.95-2.108-5.737-4.31-8.179l-.07-.078c-1.785-1.96-3.944-3.6-6.014-4.65l-.057-.028zm7.92 3.238l.048.048c2.237 2.295 3.885 5.431 4.974 9.191l.038.132.022-.004c.71-.133 1.284-.063 1.963.18l.027.01.066.024.046.018-.025-.073c-.811-2.307-2.208-4.62-3.936-6.594l-.058-.065c-1.02-1.155-2.103-2.132-3.15-2.856l-.015-.011z\"\n />\n </motion.g>\n\n {/* Animated waves */}\n <motion.path\n className=\"midjourney-waves\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n fill={color}\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinejoin=\"round\"\n d=\"M22.369 17.676c-1.387 1.259-3.17 2.378-5.332 3.417.044.03.086.057.13.083l.018.01.019.012c.216.123.42.184.641.184.222 0 .426-.061.642-.184l.018-.011.019-.011c.14-.084.266-.178.492-.366l.178-.148c.279-.232.426-.342.625-.456.304-.174.612-.266.949-.266.337 0 .645.092.949.266l.023.014c.188.109.334.219.602.442l.178.148c.221.184.346.278.483.36l.028.017.018.01c.21.12.407.181.62.185h.022a.31.31 0 110 .618c-.337 0-.645-.092-.95-.266a3.137 3.137 0 01-.09-.054l-.022-.014-.022-.013-.02-.014a5.356 5.356 0 01-.49-.377l-.159-.132a3.836 3.836 0 00-.483-.36l-.027-.017-.019-.01a1.256 1.256 0 00-.641-.185c-.222 0-.426.061-.641.184l-.02.011-.018.011c-.14.084-.266.178-.492.366l-.158.132a5.125 5.125 0 01-.51.39l-.022.014-.022.014-.09.054a1.868 1.868 0 01-.95.266c-.337 0-.644-.092-.949-.266a3.137 3.137 0 01-.09-.054l-.022-.014-.022-.013-.026-.017a4.881 4.881 0 01-.425-.325.308.308 0 01-.12-.1l-.098-.081a3.836 3.836 0 00-.483-.36l-.027-.017-.019-.01a1.256 1.256 0 00-.641-.185c-.222 0-.426.061-.642.184l-.018.011-.019.011c-.14.084-.266.178-.492.366l-.158.132a5.125 5.125 0 01-.51.39l-.023.014-.022.014-.09.054A1.868 1.868 0 0112 22c-.337 0-.645-.092-.949-.266a3.137 3.137 0 01-.09-.054l-.022-.014-.022-.013-.021-.014a5.356 5.356 0 01-.49-.377l-.158-.132a3.836 3.836 0 00-.483-.36l-.028-.017-.018-.01a1.256 1.256 0 00-.642-.185c-.221 0-.425.061-.641.184l-.019.011-.018.011c-.141.084-.266.178-.492.366l-.158.132a5.125 5.125 0 01-.511.39l-.022.014-.022.014-.09.054a1.868 1.868 0 01-.986.264c-.746-.09-1.319-.38-1.89-.866l-.035-.03c-.047-.041-.118-.106-.192-.174l-.196-.181-.107-.1-.011-.01a1.531 1.531 0 00-.336-.253.313.313 0 00-.095-.03h-.005c-.119.022-.238.059-.361.11a.308.308 0 01-.077.061l-.008.005a.309.309 0 01-.126.034 5.66 5.66 0 00-.774.518l-.416.324-.055.043a6.542 6.542 0 01-.324.236c-.305.207-.552.315-.8.315a.31.31 0 01-.01-.618h.01c.09 0 .235-.062.438-.198l.04-.027c.077-.054.163-.117.27-.199l.385-.301.06-.047c.268-.206.506-.373.73-.505l-.633-1.21a.309.309 0 01.254-.451l20.287-1.305a.309.309 0 01.228.537zm-1.118.14L2.369 19.03l.423.809c.128-.045.256-.078.388-.1a.31.31 0 01.052-.005c.132 0 .26.032.386.093.153.073.294.179.483.35l.016.015.092.086.144.134.097.089c.065.06.125.114.16.144.485.418.948.658 1.554.736h.011a1.25 1.25 0 00.6-.172l.021-.011.019-.011.018-.011c.141-.084.266-.178.492-.366l.178-.148c.279-.232.426-.342.625-.456.305-.174.612-.266.95-.266.336 0 .644.092.948.266l.023.014c.188.109.335.219.603.442l.177.148c.222.184.346.278.484.36l.027.017.019.01c.215.124.42.185.641.185.222 0 .426-.061.641-.184l.019-.011.018-.011c.141-.084.267-.178.493-.366l.177-.148c.28-.232.427-.342.626-.456.304-.174.612-.266.949-.266.337 0 .644.092.949.266l.025.015c.187.109.334.22.603.443 1.867-.878 3.448-1.811 4.73-2.832l.02-.016z\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandMidJourneyIcon.displayName = \"BrandMidJourneyIcon\";\nexport default BrandMidJourneyIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandNextjsIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\".circle\", { pathLength: 0, opacity: 0 }, { duration: 0 });\n await animate(\".line\", { pathLength: 0, opacity: 0 }, { duration: 0 });\n\n await animate(\n \".circle\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 1.5 },\n );\n\n await animate(\n \".line\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.4 },\n );\n };\n\n const stop = () => {\n animate(\".circle\", { pathLength: 1, opacity: 1 }, { duration: 0.2 });\n animate(\".line\", { pathLength: 1, opacity: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <svg\n ref={scope}\n onMouseEnter={handleHoverStart}\n onMouseLeave={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`icon icon-tabler icons-tabler-outline icon-tabler-brand-nextjs cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"circle\"\n d=\"M9 15v-6l7.745 10.65a9 9 0 1 1 2.255 -1.993\"\n initial={{ pathLength: 1, opacity: 1 }}\n />\n <motion.path\n className=\"line\"\n d=\"M15 12v-3\"\n initial={{ pathLength: 1, opacity: 1 }}\n />\n </svg>\n );\n },\n);\n\nBrandNextjsIcon.displayName = \"BrandNextjsIcon\";\n\nexport default BrandNextjsIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandNotionIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Page flip: shell tilts like turning a page\n animate(\n \".notion-shell\",\n { rotateY: [0, -15, 0], skewY: [0, 2, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n // Letter slightly pops forward\n animate(\n \".notion-letter\",\n { scale: [1, 1.03, 1], x: [0, 1, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".notion-shell\", { rotateY: 0, skewY: 0 }, { duration: 0.2 });\n animate(\".notion-letter\", { scale: 1, x: 0 }, { duration: 0.2 });\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n fill={color}\n fillRule=\"evenodd\"\n height={size}\n width={size}\n style={{ flex: \"none\", lineHeight: 1 }}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={`notion-icon cursor-pointer ${className}`}\n >\n <title>Notion</title>\n\n {/* Outer paper shell */}\n <motion.path\n className=\"notion-shell\"\n d=\"M15.257.055l-13.31.98C.874 1.128.5 1.83.5 2.667v14.559c0 .654.233 1.213.794 1.96l3.129 4.06c.513.653.98.794 1.962.745l15.457-.932c1.307-.093 1.681-.7 1.681-1.727V4.954c0-.53-.21-.684-.829-1.135l-.106-.078L18.34.755c-1.027-.746-1.45-.84-3.083-.7zM6.736 4.685c-1.263.086-1.549.105-2.266-.477L2.647 2.76c-.186-.187-.092-.42.375-.466l12.796-.933c1.074-.094 1.634.28 2.054.606l2.195 1.587c.093.047.326.326.047.326l-13.216.794-.162.01zM5.263 21.193V7.287c0-.606.187-.886.748-.933l15.176-.886c.515-.047.748.28.748.886v13.81c0 .609-.093 1.122-.934 1.168l-14.523.84c-.842.047-1.215-.232-1.215-.98z\"\n />\n\n {/* Inner “N” */}\n <motion.path\n className=\"notion-letter\"\n d=\"M19.601 8.033c.093.422 0 .842-.422.89l-.699.139v10.264c-.608.327-1.168.513-1.635.513-.747 0-.934-.232-1.495-.932l-4.576-7.185v6.952l1.448.327s0 .84-1.169.84l-3.221.186c-.094-.187 0-.654.327-.747l.84-.232V9.853L7.832 9.76c-.093-.42.14-1.026.794-1.073l3.456-.232 4.763 7.279v-6.44l-1.214-.14c-.094-.513.28-.887.747-.933l3.223-.187z\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandNotionIcon.displayName = \"BrandNotionIcon\";\nexport default BrandNotionIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandOllamaIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Body breathing effect - subtle scale\n animate(\n \".ollama-body\",\n { scale: [1, 1.03, 1] },\n { duration: 0.8, repeat: Infinity, ease: \"easeInOut\" },\n );\n\n // Eyes blink - immediate and noticeable\n animate(\n \".ollama-eye\",\n { scaleY: [1, 0.1, 1] },\n { duration: 0.2, delay: 0.3, repeat: Infinity, repeatDelay: 2 },\n );\n\n // Nose wiggle - playful\n animate(\n \".ollama-nose\",\n { y: [0, -1, 1, 0] },\n { duration: 0.3, repeat: Infinity, repeatDelay: 1 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".ollama-body\", { scale: 1 }, { duration: 0.2 });\n animate(\".ollama-eye\", { scaleY: 1 }, { duration: 0.2 });\n animate(\".ollama-nose\", { y: 0 }, { duration: 0.2 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n fillRule=\"evenodd\"\n className={className}\n xmlns=\"http://www.w3.org/2000/svg\"\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <title>Ollama</title>\n\n {/* Outer body/shell (without ears) */}\n <motion.path\n className=\"ollama-body\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center bottom\" }}\n d=\"M7.905 1.09c.216.085.411.225.588.41.295.306.544.744.734 1.263.191.522.315 1.1.362 1.68a5.054 5.054 0 012.049-.636l.051-.004c.87-.07 1.73.087 2.48.474.101.053.2.11.297.17.05-.569.172-1.134.36-1.644.19-.52.439-.957.733-1.264a1.67 1.67 0 01.589-.41c.257-.1.53-.118.796-.042.401.114.745.368 1.016.737.248.337.434.769.561 1.287.23.934.27 2.163.115 3.645l.053.04.026.019c.757.576 1.284 1.397 1.563 2.35.435 1.487.216 3.155-.534 4.088l-.018.021.002.003c.417.762.67 1.567.724 2.4l.002.03c.064 1.065-.2 2.137-.814 3.19l-.007.01.01.024c.472 1.157.62 2.322.438 3.486l-.006.039a.651.651 0 01-.747.536.648.648 0 01-.54-.742c.167-1.033.01-2.069-.48-3.123a.643.643 0 01.04-.617l.004-.006c.604-.924.854-1.83.8-2.72-.046-.779-.325-1.544-.8-2.273a.644.644 0 01.18-.886l.009-.006c.243-.159.467-.565.58-1.12a4.229 4.229 0 00-.095-1.974c-.205-.7-.58-1.284-1.105-1.683-.595-.454-1.383-.673-2.38-.61a.653.653 0 01-.632-.371c-.314-.665-.772-1.141-1.343-1.436a3.288 3.288 0 00-1.772-.332c-1.245.099-2.343.801-2.67 1.686a.652.652 0 01-.61.425c-1.067.002-1.893.252-2.497.703-.522.39-.878.935-1.066 1.588a4.07 4.07 0 00-.068 1.886c.112.558.331 1.02.582 1.269l.008.007c.212.207.257.53.109.785-.36.622-.629 1.549-.673 2.44-.05 1.018.186 1.902.719 2.536l.016.019a.643.643 0 01.095.69c-.576 1.236-.753 2.252-.562 3.052a.652.652 0 01-1.269.298c-.243-1.018-.078-2.184.473-3.498l.014-.035-.008-.012a4.339 4.339 0 01-.598-1.309l-.005-.019a5.764 5.764 0 01-.177-1.785c.044-.91.278-1.842.622-2.59l.012-.026-.002-.002c-.293-.418-.51-.953-.63-1.545l-.005-.024a5.352 5.352 0 01.093-2.49c.262-.915.777-1.701 1.536-2.269.06-.045.123-.09.186-.132-.159-1.493-.119-2.73.112-3.67.127-.518.314-.95.562-1.287.27-.368.614-.622 1.015-.737.266-.076.54-.059.797.042z\"\n />\n\n {/* Face outline */}\n <motion.path\n className=\"ollama-face\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M12.021 10.18c.936 0 1.8.313 2.446.855.63.527 1.005 1.235 1.005 1.94 0 .888-.406 1.58-1.133 2.022-.62.375-1.451.557-2.403.557-1.009 0-1.871-.259-2.493-.734-.617-.47-.963-1.13-.963-1.845 0-.707.398-1.417 1.056-1.946.668-.537 1.55-.849 2.485-.849zm0 .896a3.07 3.07 0 00-1.916.65c-.461.37-.722.835-.722 1.25 0 .428.21.829.61 1.134.455.347 1.124.548 1.943.548.799 0 1.473-.147 1.932-.426.463-.28.7-.686.7-1.257 0-.423-.246-.89-.683-1.256-.484-.405-1.14-.643-1.864-.643z\"\n />\n\n {/* Nose */}\n <motion.path\n className=\"ollama-nose\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M12.683 12.286l.004.004c.12.151.095.37-.056.49l-.292.23v.446a.375.375 0 01-.376.373.375.375 0 01-.376-.373v-.46l-.271-.218a.347.347 0 01-.052-.49.353.353 0 01.494-.051l.215.172.22-.174a.353.353 0 01.49.051z\"\n />\n\n {/* Left eye */}\n <motion.circle\n className=\"ollama-eye\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n cx=\"7.643\"\n cy=\"11.238\"\n r=\"0.868\"\n />\n\n {/* Right eye */}\n <motion.circle\n className=\"ollama-eye\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n cx=\"16.349\"\n cy=\"11.238\"\n r=\"0.868\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandOllamaIcon.displayName = \"BrandOllamaIcon\";\nexport default BrandOllamaIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandOpenaiIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".internal\",\n { pathOffset: [1, 0] },\n {\n duration: 0.8,\n ease: \"easeInOut\",\n delay: (i) => i * 0.05,\n },\n );\n };\n\n const stop = () => {\n animate(\n \".internal\",\n { pathOffset: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer select-none ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {[\n \"M11.217 19.384a3.501 3.501 0 0 0 6.783 -1.217v-5.167l-6 -3.35\",\n \"M5.214 15.014a3.501 3.501 0 0 0 4.446 5.266l4.34 -2.534v-6.946\",\n \"M6 7.63c-1.391 -.236 -2.787 .395 -3.534 1.689a3.474 3.474 0 0 0 1.271 4.745l4.263 2.514l6 -3.348\",\n \"M12.783 4.616a3.501 3.501 0 0 0 -6.783 1.217v5.067l6 3.45\",\n \"M18.786 8.986a3.501 3.501 0 0 0 -4.446 -5.266l-4.34 2.534v6.946\",\n \"M18 16.302c1.391 .236 2.787 -.395 3.534 -1.689a3.474 3.474 0 0 0 -1.271 -4.745l-4.308 -2.514l-5.955 3.42\",\n ].map((d, i) => (\n <motion.path\n key={i}\n d={d}\n className=\"internal\"\n initial={{\n pathLength: 1,\n opacity: 1,\n }}\n />\n ))}\n </motion.svg>\n );\n },\n);\n\nBrandOpenaiIcon.displayName = \"BrandOpenaiIcon\";\nexport default BrandOpenaiIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandPaypalIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".p-back\", { x: 2, y: -2 }, { duration: 0.3, ease: \"easeOut\" });\n await animate(\n \".p-front\",\n { x: -2, y: 2 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n animate(\".p-back\", { x: 0, y: 0 }, { duration: 0.3, ease: \"easeIn\" });\n animate(\".p-front\", { x: 0, y: 0 }, { duration: 0.3, ease: \"easeIn\" });\n };\n\n const stop = () => {\n animate(\".p-back\", { x: 0, y: 0 }, { duration: 0.2 });\n animate(\".p-front\", { x: 0, y: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"p-front\"\n d=\"M10 13l2.5 0c2.5 0 5 -2.5 5 -5c0 -3 -1.9 -5 -5 -5h-5.5c-.5 0 -1 .5 -1 1l-2 14c0 .5 .5 1 1 1h2.8l1.2 -5c.1 -.6 .4 -1 1 -1\"\n />\n <motion.path\n className=\"p-back\"\n d=\"M17.5 7.2c1.7 1 2.5 2.8 2.5 4.8c0 2.5 -2.5 4.5 -5 4.5h-2.6l-.6 3.6a1 1 0 0 1 -1 .8l-2.7 0a.5 .5 0 0 1 -.5 -.6l.2 -1.4\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandPaypalIcon.displayName = \"BrandPaypalIcon\";\n\nexport default BrandPaypalIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandQwenIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Wobble animation: slight rotation back and forth with scale pulse\n animate(\n scope.current,\n { rotate: [0, -8, 8, -4, 4, 0], scale: [1, 1.05, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(\n scope.current,\n { rotate: 0, scale: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate, scope]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n fill={color}\n fillRule=\"evenodd\"\n viewBox=\"0 0 24 24\"\n height={size}\n width={size}\n style={{ flex: \"none\", lineHeight: 1 }}\n xmlns=\"http://www.w3.org/2000/svg\"\n className={`qwen-icon cursor-pointer ${className}`}\n >\n <title>Qwen</title>\n\n {/* Complete Qwen logo with evenodd fill rule for hollow center */}\n <motion.path\n className=\"qwen-shape\"\n d=\"M12.604 1.34c.393.69.784 1.382 1.174 2.075a.18.18 0 00.157.091h5.552c.174 0 .322.11.446.327l1.454 2.57c.19.337.24.478.024.837-.26.43-.513.864-.76 1.3l-.367.658c-.106.196-.223.28-.04.512l2.652 4.637c.172.301.111.494-.043.77-.437.785-.882 1.564-1.335 2.34-.159.272-.352.375-.68.37-.777-.016-1.552-.01-2.327.016a.099.099 0 00-.081.05 575.097 575.097 0 01-2.705 4.74c-.169.293-.38.363-.725.364-.997.003-2.002.004-3.017.002a.537.537 0 01-.465-.271l-1.335-2.323a.09.09 0 00-.083-.049H4.982c-.285.03-.553-.001-.805-.092l-1.603-2.77a.543.543 0 01-.002-.54l1.207-2.12a.198.198 0 000-.197 550.951 550.951 0 01-1.875-3.272l-.79-1.395c-.16-.31-.173-.496.095-.965.465-.813.927-1.625 1.387-2.436.132-.234.304-.334.584-.335a338.3 338.3 0 012.589-.001.124.124 0 00.107-.063l2.806-4.895a.488.488 0 01.422-.246c.524-.001 1.053 0 1.583-.006L11.704 1c.341-.003.724.032.9.34zm-3.432.403a.06.06 0 00-.052.03L6.254 6.788a.157.157 0 01-.135.078H3.253c-.056 0-.07.025-.041.074l5.81 10.156c.025.042.013.062-.034.063l-2.795.015a.218.218 0 00-.2.116l-1.32 2.31c-.044.078-.021.118.068.118l5.716.008c.046 0 .08.02.104.061l1.403 2.454c.046.081.092.082.139 0l5.006-8.76.783-1.382a.055.055 0 01.096 0l1.424 2.53a.122.122 0 00.107.062l2.763-.02a.04.04 0 00.035-.02.041.041 0 000-.04l-2.9-5.086a.108.108 0 010-.113l.293-.507 1.12-1.977c.024-.041.012-.062-.035-.062H9.2c-.059 0-.073-.026-.043-.077l1.434-2.505a.107.107 0 000-.114L9.225 1.774a.06.06 0 00-.053-.031zm6.29 8.02c.046 0 .058.02.034.06l-.832 1.465-2.613 4.585a.056.056 0 01-.05.029.058.058 0 01-.05-.029L8.498 9.841c-.02-.034-.01-.052.028-.054l.216-.012 6.722-.012z\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandQwenIcon.displayName = \"BrandQwenIcon\";\nexport default BrandQwenIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandRailwayIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".railway-inner\",\n { opacity: 0 },\n { duration: 0.6, ease: \"linear\" },\n );\n await animate(\n \".railway-lower\",\n { x: [0, -3, 3, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n const stop = async () => {\n await animate(\n \".railway-inner\",\n { opacity: 1 },\n { duration: 0.2, ease: \"linear\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n fill={color}\n fillRule=\"evenodd\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={`cursor-pointer ${className}`}\n style={{ flex: \"none\", lineHeight: 1 }}\n >\n <title>Railway</title>\n\n {/* Outer shell – static */}\n <motion.path\n className=\"railway-lower\"\n d=\"M.111 10.27c-.057.4-.094.804-.111 1.208h18.23a2.182 2.182 0 00-.236-.346c-3.116-4.026-4.793-3.677-7.19-3.78-.8-.032-1.343-.046-4.525-.046-1.704 0-3.555.005-5.359.01-.233.63-.458 1.24-.568 1.737h9.342v1.217H.11zm18.262 2.426H.01c.02.325.05.645.094.961h16.954c.756 0 1.179-.429 1.316-.96zm-17.318 4.28S3.865 23.878 11.987 24c4.854 0 9.025-2.883 10.92-7.024H1.055z\"\n />\n\n {/* Inner track – animated */}\n <motion.path\n className=\"railway-inner\"\n d=\"M11.987 0C7.5 0 3.593 2.465 1.531 6.108c1.611-.003 4.75-.005 4.75-.005h.001v-.001c3.71 0 3.848.016 4.573.046l.45.017c1.562.052 3.484.22 4.996 1.364.82.62 2.005 1.99 2.712 2.965.653.902.84 1.94.396 2.934-.408.913-1.287 1.458-2.352 1.458H.39s.1.42.248.885h22.75a11.96 11.96 0 00.61-3.766C24 5.375 18.623 0 11.988 0z\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandRailwayIcon.displayName = \"BrandRailwayIcon\";\nexport default BrandRailwayIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport { motion, useAnimate } from \"motion/react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\n\nconst BrandReactIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".center-dot\",\n { scale: [1, 1.4, 1.2] },\n { duration: 0.4, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n animate(\".orbit-1\", { rotate: 360 }, { duration: 1, ease: \"linear\" });\n animate(\".orbit-2\", { rotate: -360 }, { duration: 2, ease: \"linear\" });\n animate(\".orbit-3\", { rotate: 360 }, { duration: 4, ease: \"linear\" });\n\n // Pulsing center dot\n animate(\n \".center-dot\",\n {\n scale: [1.2, 1.35, 1.2],\n opacity: [1, 0.8, 1],\n },\n { duration: 2, ease: \"easeInOut\" },\n );\n\n // Subtle breathing effect on all orbits\n animate(\n \".orbit-1\",\n { scale: [1, 1.02, 1] },\n { duration: 3, ease: \"easeInOut\" },\n );\n animate(\n \".orbit-2\",\n { scale: [1, 1.03, 1] },\n { duration: 3.5, ease: \"easeInOut\", delay: 0.5 },\n );\n animate(\n \".orbit-3\",\n { scale: [1, 1.02, 1] },\n { duration: 4, ease: \"easeInOut\", delay: 1 },\n );\n };\n\n const stop = async () => {\n // Smooth deceleration\n await animate(\n \".orbit-1\",\n { rotate: 0, scale: 1 },\n { duration: 0.8, ease: [0.22, 1, 0.36, 1] },\n );\n await animate(\n \".orbit-2\",\n { rotate: 0, scale: 1 },\n { duration: 0.8, ease: [0.22, 1, 0.36, 1] },\n );\n await animate(\n \".orbit-3\",\n { rotate: 0, scale: 1 },\n { duration: 0.8, ease: [0.22, 1, 0.36, 1] },\n );\n\n // Center dot settles back\n await animate(\n \".center-dot\",\n { scale: 1, opacity: 1 },\n { duration: 0.5, ease: \"easeOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer select-none ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g\n className=\"orbit-1\"\n style={{ originX: \"50%\", originY: \"50%\" }}\n >\n <path d=\"M6.306 8.711c-2.602 .723 -4.306 1.926 -4.306 3.289c0 2.21 4.477 4 10 4c.773 0 1.526 -.035 2.248 -.102\" />\n <path d=\"M17.692 15.289c2.603 -.722 4.308 -1.926 4.308 -3.289c0 -2.21 -4.477 -4 -10 -4c-.773 0 -1.526 .035 -2.25 .102\" />\n </motion.g>\n <motion.g\n className=\"orbit-2\"\n style={{ originX: \"50%\", originY: \"50%\" }}\n >\n <path d=\"M6.305 15.287c-.676 2.615 -.485 4.693 .695 5.373c1.913 1.105 5.703 -1.877 8.464 -6.66c.387 -.67 .733 -1.339 1.036 -2\" />\n <path d=\"M17.694 8.716c.677 -2.616 .487 -4.696 -.694 -5.376c-1.913 -1.105 -5.703 1.877 -8.464 6.66c-.387 .67 -.733 1.34 -1.037 2\" />\n </motion.g>\n <motion.g\n className=\"orbit-3\"\n style={{ originX: \"50%\", originY: \"50%\" }}\n >\n <path d=\"M12 5.424c-1.925 -1.892 -3.82 -2.766 -5 -2.084c-1.913 1.104 -1.226 5.877 1.536 10.66c.386 .67 .793 1.304 1.212 1.896\" />\n <path d=\"M12 18.574c1.926 1.893 3.821 2.768 5 2.086c1.913 -1.104 1.226 -5.877 -1.536 -10.66c-.375 -.65 -.78 -1.283 -1.212 -1.897\" />\n </motion.g>\n <motion.path\n className=\"center-dot\"\n d=\"M11.5 12.866a1 1 0 1 0 1 -1.732a1 1 0 0 0 -1 1.732\"\n style={{ originX: \"50%\", originY: \"50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nBrandReactIcon.displayName = \"BrandReactIcon\";\n\nexport default BrandReactIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport { motion, useAnimate } from \"motion/react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\n\nconst BrandReactNativeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n // Clear any existing animations\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n // Smooth pop entrance\n await animate(\n \".orbit-system\",\n { scale: [0.95, 1.02, 1] },\n { duration: 0.4, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n // Center dot gentle pulse\n animationControls.current.push(\n animate(\n \".center-dot\",\n {\n scale: [1, 1.3, 1],\n opacity: [1, 0.8, 1],\n },\n {\n duration: 2.5,\n ease: \"easeInOut\",\n repeat: Infinity,\n },\n ),\n );\n\n // Smooth continuous rotation\n animationControls.current.push(\n animate(\n \".orbit-system\",\n { rotate: 360 },\n {\n duration: 20,\n ease: \"linear\",\n repeat: Infinity,\n },\n ),\n );\n\n // Subtle wave through rings\n const rings = [\".ring-1\", \".ring-2\", \".ring-3\"];\n rings.forEach((ring, i) => {\n animationControls.current.push(\n animate(\n ring,\n {\n opacity: [1, 0.7, 1],\n },\n {\n duration: 3,\n ease: \"easeInOut\",\n repeat: Infinity,\n delay: i * 1,\n },\n ),\n );\n });\n };\n\n const stop = () => {\n // Cancel all infinite animations\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\n \".orbit-system\",\n { rotate: 0, scale: 1 },\n { duration: 0.6, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n animate(\".ring-1, .ring-2, .ring-3\", { opacity: 1 }, { duration: 0.3 });\n\n animate(\".center-dot\", { scale: 1, opacity: 1 }, { duration: 0.3 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer select-none ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g\n className=\"orbit-system\"\n style={{ originX: \"50%\", originY: \"50%\" }}\n >\n <motion.path\n className=\"ring-1\"\n d=\"M6.357 9c-2.637 .68 -4.357 1.845 -4.357 3.175c0 2.107 4.405 3.825 9.85 3.825c.74 0 1.26 -.039 1.95 -.097\"\n />\n <motion.path\n className=\"ring-1\"\n d=\"M9.837 15.9c-.413 -.596 -.806 -1.133 -1.18 -1.8c-2.751 -4.9 -3.488 -9.77 -1.63 -10.873c1.15 -.697 3.047 .253 4.974 2.254\"\n />\n <motion.path\n className=\"ring-2\"\n d=\"M6.429 15.387c-.702 2.688 -.56 4.716 .56 5.395c1.783 1.08 5.387 -1.958 8.043 -6.804c.36 -.67 .683 -1.329 .968 -1.978\"\n />\n <motion.path\n className=\"ring-2\"\n d=\"M12 18.52c1.928 2 3.817 2.95 4.978 2.253c1.85 -1.102 1.121 -5.972 -1.633 -10.873c-.384 -.677 -.777 -1.204 -1.18 -1.8\"\n />\n <motion.path\n className=\"ring-3\"\n d=\"M17.66 15c2.612 -.687 4.34 -1.85 4.34 -3.176c0 -2.11 -4.408 -3.824 -9.845 -3.824c-.747 0 -1.266 .029 -1.955 .087\"\n />\n <motion.path\n className=\"ring-3\"\n d=\"M8 12c.285 -.66 .607 -1.308 .968 -1.978c2.647 -4.844 6.253 -7.89 8.046 -6.801c1.11 .679 1.262 2.706 .56 5.393\"\n />\n </motion.g>\n <motion.path\n className=\"center-dot\"\n d=\"M12.26 12.015h-.01c-.01 .13 -.12 .24 -.26 .24a.263 .263 0 0 1 -.25 -.26c0 -.14 .11 -.25 .24 -.25h-.01c.13 -.01 .25 .11 .25 .24\"\n style={{ originX: \"50%\", originY: \"50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nBrandReactNativeIcon.displayName = \"BrandReactNativeIcon\";\n\nexport default BrandReactNativeIcon;\n","import { forwardRef, useImperativeHandle, useId } from \"react\";\nimport { motion, useAnimate } from \"motion/react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\n\nconst BrandStripeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const id = useId();\n const clipId = `fillClip-${id.replace(/:/g, \"\")}`;\n\n const start = async () => {\n await animate(\n \".fill-rect\",\n {\n y: [-2, 26],\n },\n { duration: 1.4, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".fill-rect\", { y: -2 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer select-none ${className}`}\n >\n <defs>\n <clipPath id={clipId}>\n <motion.rect\n className=\"fill-rect\"\n x=\"0\"\n y=\"-2\"\n width=\"24\"\n height=\"2\"\n />\n </clipPath>\n </defs>\n\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <path\n d=\"M11.453 8.056c0 -.623 .518 -.979 1.442 -.979c1.69 0 3.41 .343 4.605 .923l.5 -4c-.948 -.449 -2.82 -1 -5.5 -1c-1.895 0 -3.373 .087 -4.5 1c-1.172 .956 -2 2.33 -2 4c0 3.03 1.958 4.906 5 6c1.961 .69 3 .743 3 1.5c0 .735 -.851 1.5 -2 1.5c-1.423 0 -3.963 -.609 -5.5 -1.5l-.5 4c1.321 .734 3.474 1.5 6 1.5c2 0 3.957 -.468 5.084 -1.36c1.263 -.979 1.916 -2.268 1.916 -4.14c0 -3.096 -1.915 -4.547 -5 -5.637c-1.646 -.605 -2.544 -1.07 -2.544 -1.807l-.003 0\"\n stroke={color}\n fill=\"none\"\n />\n\n <motion.path\n className=\"stripe-filled\"\n d=\"M11.453 8.056c0 -.623 .518 -.979 1.442 -.979c1.69 0 3.41 .343 4.605 .923l.5 -4c-.948 -.449 -2.82 -1 -5.5 -1c-1.895 0 -3.373 .087 -4.5 1c-1.172 .956 -2 2.33 -2 4c0 3.03 1.958 4.906 5 6c1.961 .69 3 .743 3 1.5c0 .735 -.851 1.5 -2 1.5c-1.423 0 -3.963 -.609 -5.5 -1.5l-.5 4c1.321 .734 3.474 1.5 6 1.5c2 0 3.957 -.468 5.084 -1.36c1.263 -.979 1.916 -2.268 1.916 -4.14c0 -3.096 -1.915 -4.547 -5 -5.637c-1.646 -.605 -2.544 -1.07 -2.544 -1.807l-.003 0\"\n fill={color}\n stroke=\"none\"\n clipPath={`url(#${clipId})`}\n opacity=\"0.5\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandStripeIcon.displayName = \"BrandStripeIcon\";\n\nexport default BrandStripeIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandTelegramIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".plane\",\n { x: [0, 10, -10, 0], y: [0, -10, 10, 0], opacity: [1, 0, 0, 1] },\n { duration: 1, times: [0, 0.4, 0.5, 1], ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".plane\", { x: 0, y: 0, opacity: 1 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"plane\"\n d=\"M15 10l-4 4l6 6l4 -16l-18 7l4 2l2 6l3 -4\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandTelegramIcon.displayName = \"BrandTelegramIcon\";\n\nexport default BrandTelegramIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandThreadsIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Reset\n animate(scope.current, { scale: 1, rotate: 0 });\n animate(\".animated-path\", { pathLength: 1, opacity: 1 });\n\n // Animation\n animate(\n \".animated-path\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 1, ease: \"easeInOut\" },\n );\n\n await animate(\n scope.current,\n {\n scale: [0.5, 1.1, 1],\n rotate: [180, -10, 0],\n },\n {\n duration: 1,\n ease: [0.34, 1.56, 0.64, 1],\n },\n );\n };\n\n const stop = () => {\n animate(scope.current, { scale: 1, rotate: 0 });\n animate(\".animated-path\", { pathLength: 1, opacity: 1 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"animated-path\"\n d=\"M19 7.5c-1.333 -3 -3.667 -4.5 -7 -4.5c-5 0 -8 2.5 -8 9s3.5 9 8 9s7 -3 7 -5s-1 -5 -7 -5c-2.5 0 -3 1.25 -3 2.5c0 1.5 1 2.5 2.5 2.5c2.5 0 3.5 -1.5 3.5 -5s-2 -4 -3 -4s-1.833 .333 -2.5 1\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandThreadsIcon.displayName = \"BrandThreadsIcon\";\n\nexport default BrandThreadsIcon;\n","import { forwardRef, useImperativeHandle, useCallback, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandTwitchIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const isAnimatingRef = useRef(false);\n\n const start = useCallback(async () => {\n if (isAnimatingRef.current) return;\n isAnimatingRef.current = true;\n\n // 1. Color Shift to Twitch Purple\n animate(\n scope.current,\n { color: \"#9146FF\", stroke: \"#9146FF\" },\n { duration: 0.3 },\n );\n\n while (isAnimatingRef.current) {\n // 2. The Blink (Random intervals)\n await animate(\n \".twitch-eyes\",\n { scaleY: [1, 0, 1] },\n { duration: 0.1, ease: \"easeInOut\" },\n );\n\n if (!isAnimatingRef.current) break;\n\n // 3. The Glitch (Rare sharp shift)\n if (Math.random() > 0.6) {\n await animate(\n \".twitch-path\",\n { x: [0, -1, 1, 0], y: [0, 0.5, -0.5, 0] },\n { duration: 0.15, ease: \"linear\" },\n );\n }\n\n await new Promise((resolve) =>\n setTimeout(resolve, 800 + Math.random() * 2000),\n );\n }\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n isAnimatingRef.current = false;\n animate(scope.current, { color, stroke: color }, { duration: 0.3 });\n animate(\".twitch-eyes\", { scaleY: 1 }, { duration: 0.3 });\n animate(\".twitch-path\", { x: 0, y: 0 }, { duration: 0.3 });\n }, [animate, color, scope]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"twitch-path\"\n d=\"M21 2H3v16h5v4l4-4h5l4-4V2z\"\n style={{ transformOrigin: \"center\" }}\n />\n <motion.g\n className=\"twitch-eyes\"\n style={{ transformOrigin: \"center 9px\" }}\n >\n <path d=\"M11 11V7\" />\n <path d=\"M16 11V7\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nBrandTwitchIcon.displayName = \"BrandTwitchIcon\";\nexport default BrandTwitchIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandVercelIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".triangle\",\n { rotateY: 180 },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n const stop = async () => {\n await animate(\n \".triangle\",\n { rotateY: -180 },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path className=\"triangle\" d=\"M3 19h18l-9 -15z\" />\n </motion.svg>\n );\n },\n);\n\nBrandVercelIcon.displayName = \"BrandVercelIcon\";\nexport default BrandVercelIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandWindowsIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 1, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Stage 1: All windows explode outward (Windows key press!)\n await animate(\n \"path:nth-of-type(2)\", // Top-right\n {\n x: [0, 8, 6],\n y: [0, -8, -6],\n rotate: [0, 15, 10],\n scale: [1, 1.1, 1.05],\n },\n { duration: 0.4, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n animate(\n \"path:nth-of-type(3)\", // Bottom-left\n {\n x: [0, -8, -6],\n y: [0, 8, 6],\n rotate: [0, -15, -10],\n scale: [1, 1.1, 1.05],\n },\n { duration: 0.4, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n animate(\n \"path:nth-of-type(4)\", // Top-left\n {\n x: [0, -8, -6],\n y: [0, -8, -6],\n rotate: [0, -15, -10],\n scale: [1, 1.1, 1.05],\n },\n { duration: 0.4, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n await animate(\n \"path:nth-of-type(5)\", // Bottom-right\n {\n x: [0, 8, 6],\n y: [0, 8, 6],\n rotate: [0, 15, 10],\n scale: [1, 1.1, 1.05],\n },\n { duration: 0.4, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n // Stage 2: 3D flip the entire icon\n await animate(\n scope.current,\n {\n rotateY: [0, 180, 360],\n scale: [1, 1.15, 1],\n },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n\n // Stage 3: Windows snap back together with bounce\n animate(\n \"path:nth-of-type(2)\",\n { x: 0, y: 0, rotate: 0, scale: 1 },\n { duration: 0.5, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n animate(\n \"path:nth-of-type(3)\",\n { x: 0, y: 0, rotate: 0, scale: 1 },\n { duration: 0.5, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n animate(\n \"path:nth-of-type(4)\",\n { x: 0, y: 0, rotate: 0, scale: 1 },\n { duration: 0.5, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n await animate(\n \"path:nth-of-type(5)\",\n { x: 0, y: 0, rotate: 0, scale: 1 },\n { duration: 0.5, ease: [0.34, 1.56, 0.64, 1] },\n );\n\n // Stage 4: Final pulse\n await animate(\n scope.current,\n {\n scale: [1, 1.08, 1],\n },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\n scope.current,\n { rotateY: 0, scale: 1 },\n { duration: 0.4, ease: \"easeOut\" },\n );\n animate(\n \"path:nth-of-type(2)\",\n { x: 0, y: 0, rotate: 0, scale: 1 },\n { duration: 0.4 },\n );\n animate(\n \"path:nth-of-type(3)\",\n { x: 0, y: 0, rotate: 0, scale: 1 },\n { duration: 0.4 },\n );\n animate(\n \"path:nth-of-type(4)\",\n { x: 0, y: 0, rotate: 0, scale: 1 },\n { duration: 0.4 },\n );\n animate(\n \"path:nth-of-type(5)\",\n { x: 0, y: 0, rotate: 0, scale: 1 },\n { duration: 0.4 },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{\n perspective: \"1000px\",\n transformStyle: \"preserve-3d\",\n }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path d=\"M21 13v5c0 1.57 -1.248 2.832 -2.715 2.923l-.113 .003l-.042 .018a1 1 0 0 1 -.336 .056l-.118 -.008l-4.676 -.585v-7.407z\" />\n <motion.path d=\"M11 13v7.157l-5.3 -.662c-1.514 -.151 -2.7 -1.383 -2.7 -2.895v-3.6z\" />\n <motion.path d=\"M11 3.842v7.158h-8v-3.6c0 -1.454 1.096 -2.648 2.505 -2.87z\" />\n <motion.path d=\"M21 5.9v5.1h-8v-7.409l4.717 -.589c1.759 -.145 3.283 1.189 3.283 2.898\" />\n </motion.svg>\n );\n },\n);\n\nBrandWindowsIcon.displayName = \"BrandWindowsIcon\";\n\nexport default BrandWindowsIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandWordPressIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // 1. Orbit Group Rotation: Rotate all internal elements together\n animate(\n \".wp-orbit-group\",\n { rotate: 360 },\n { duration: 1, ease: \"easeInOut\" },\n );\n\n // 2. Subtle pulse for the whole icon to feel alive\n animate(\n scope.current,\n { scale: 1.02 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(\n \".wp-orbit-group\",\n { rotate: 0 },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n animate(scope.current, { scale: 1 }, { duration: 0.3, ease: \"easeOut\" });\n }, [animate, scope]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Orbit Group: Everything except the circle */}\n <motion.g\n className=\"wp-orbit-group\"\n style={{ originX: \"7px\", originY: \"7px\" }}\n >\n {/* Horizontal Bars */}\n <path d=\"M9.5 9h3\" />\n <path d=\"M4 9h2.5\" />\n\n {/* W Segments */}\n <path d=\"M11 9l3 11l4 -9\" />\n <path d=\"M5.5 9l3.5 11l3 -7\" />\n\n {/* Ink Flourish */}\n <path d=\"M18 11c.177 -.528 1 -1.364 1 -2.5c0 -1.78 -.776 -2.5 -1.875 -2.5c-.898 0 -1.125 .812 -1.125 1.429c0 1.83 2 2.058 2 3.571\" />\n </motion.g>\n\n {/* Outer Circle (Static Orbit Path) */}\n <path d=\"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\" />\n </motion.svg>\n );\n },\n);\n\nBrandWordPressIcon.displayName = \"BrandWordPressIcon\";\nexport default BrandWordPressIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandXaiIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Explode: all 4 parts move outward in different directions\n animate(\n \".xai-part-1\",\n { x: -4, y: -2 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".xai-part-2\",\n { x: -3, y: 3 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".xai-part-3\",\n { x: 4, y: -3 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".xai-part-4\",\n { x: 3, y: 2 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n // Then merge back\n setTimeout(() => {\n animate(\n \".xai-part-1\",\n { x: 0, y: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\n \".xai-part-2\",\n { x: 0, y: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\n \".xai-part-3\",\n { x: 0, y: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\n \".xai-part-4\",\n { x: 0, y: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, 250);\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".xai-part-1\", { x: 0, y: 0 }, { duration: 0.2 });\n animate(\".xai-part-2\", { x: 0, y: 0 }, { duration: 0.2 });\n animate(\".xai-part-3\", { x: 0, y: 0 }, { duration: 0.2 });\n animate(\".xai-part-4\", { x: 0, y: 0 }, { duration: 0.2 });\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n xmlns=\"http://www.w3.org/2000/svg\"\n className={className}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <title>xAI</title>\n\n {/* Part 1: Top-left diagonal */}\n <motion.path\n className=\"xai-part-1\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M6.469 8.776L16.512 23h-4.464L2.005 8.776H6.47z\"\n />\n\n {/* Part 2: Bottom-left shape */}\n <motion.path\n className=\"xai-part-2\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M6.465 16.676l2.233 3.164L6.467 23H2l4.465-6.324z\"\n />\n\n {/* Part 3: Top-right diagonal */}\n <motion.path\n className=\"xai-part-3\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M22 1l-9.952 14.095-2.233-3.163L17.533 1H22z\"\n />\n\n {/* Part 4: Vertical bar (I) */}\n <motion.path\n className=\"xai-part-4\"\n style={{ transformBox: \"fill-box\", transformOrigin: \"center\" }}\n d=\"M22 2.582V23h-3.659V7.764L22 2.582z\"\n />\n </motion.svg>\n );\n },\n);\n\nBrandXaiIcon.displayName = \"BrandXaiIcon\";\nexport default BrandXaiIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrandZoomIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n scope.current,\n {\n scale: [1, 0.7],\n opacity: [1, 0.6],\n },\n {\n duration: 0.2,\n ease: \"easeIn\",\n },\n );\n await animate(\n scope.current,\n {\n scale: [0.7, 1.3, 1.15],\n opacity: [0.6, 1],\n rotateY: [0, 360],\n rotateX: [0, 15, 0],\n },\n {\n duration: 0.6,\n ease: [0.34, 1.56, 0.64, 1],\n },\n );\n\n animate(\n \"motion\\\\:nth-of-type(1)\",\n {\n x: [0, 3, 0],\n opacity: [1, 0.7, 1],\n },\n {\n duration: 0.3,\n repeat: 2,\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \"motion\\\\:nth-of-type(2)\",\n {\n scale: [1, 1.08, 1.05, 1],\n fill: [\"none\", \"rgba(59, 130, 246, 0.1)\", \"none\"],\n },\n {\n duration: 0.5,\n ease: \"easeOut\",\n },\n );\n\n animate(\n scope.current,\n {\n y: [0, -2, 0],\n scale: [1.15, 1.05, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n };\n\n const stop = () => {\n animate(\n scope.current,\n {\n scale: 1,\n rotateY: 0,\n rotateX: 0,\n y: 0,\n opacity: 1,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{\n perspective: \"1000px\",\n transformStyle: \"preserve-3d\",\n }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n d=\"M17.011 9.385v5.128l3.989 3.487v-12l-3.989 3.385\"\n initial={{ x: 0, opacity: 1 }}\n />\n <motion.path\n d=\"M3.887 6h10.08c1.468 0 3.033 1.203 3.033 2.803v8.196a.991 .991 0 0 1 -.975 1h-10.373c-1.667 0 -2.652 -1.5 -2.652 -3l.01 -8a.882 .882 0 0 1 .208 -.71a.841 .841 0 0 1 .67 -.287l-.001 -.002\"\n initial={{ scale: 1, fill: \"none\" }}\n />\n </motion.svg>\n );\n },\n);\n\nBrandZoomIcon.displayName = \"BrandZoomIcon\";\n\nexport default BrandZoomIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BrightnessDownIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".sun-center\",\n { scale: [1, 0.8, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n animate(\n \".sun-rays\",\n { opacity: [1, 0.4, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".sun-center\", { scale: 1 }, { duration: 0.2, ease: \"easeOut\" });\n animate(\".sun-rays\", { opacity: 1 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"sun-center\"\n d=\"M12 12m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0\"\n style={{ transformOrigin: \"center\" }}\n />\n <motion.g className=\"sun-rays\">\n <path d=\"M12 5l0 .01\" />\n <path d=\"M17 7l0 .01\" />\n <path d=\"M19 12l0 .01\" />\n <path d=\"M17 17l0 .01\" />\n <path d=\"M12 19l0 .01\" />\n <path d=\"M7 17l0 .01\" />\n <path d=\"M5 12l0 .01\" />\n <path d=\"M7 7l0 .01\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nBrightnessDownIcon.displayName = \"BrightnessDownIcon\";\n\nexport default BrightnessDownIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport { motion, useAnimate } from \"motion/react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\n\nconst BugIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", strokeWidth = 2, color = \"currentColor\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Wiggle the legs\n animate(\n \".leg-left\",\n { x: [-1, 1, -1], rotate: [-5, 5, -5] },\n { duration: 0.2, repeat: 2, ease: \"easeInOut\" },\n );\n animate(\n \".leg-right\",\n { x: [1, -1, 1], rotate: [5, -5, 5] },\n { duration: 0.2, repeat: 2, ease: \"easeInOut\" },\n );\n // Subtle body shake\n animate(\n \".body\",\n { x: [-0.5, 0.5, -0.5] },\n { duration: 0.1, repeat: 2, ease: \"easeInOut\" },\n );\n };\n\n const stop = async () => {\n animate(\n \".leg-left, .leg-right, .body\",\n { x: 0, rotate: 0 },\n { duration: 0.2 },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n color={color}\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M9 9v-1a3 3 0 0 1 6 0v1\" />\n <path\n className=\"body\"\n d=\"M8 9h8a6 6 0 0 1 1 3v3a5 5 0 0 1 -10 0v-3a6 6 0 0 1 1 -3\"\n />\n {/* Left legs */}\n <motion.path className=\"leg-left\" d=\"M3 13l4 0\" />\n <motion.path className=\"leg-left\" d=\"M4 19l3.35 -2\" />\n <motion.path className=\"leg-left\" d=\"M4 7l3.75 2.4\" />\n {/* Right legs */}\n <motion.path className=\"leg-right\" d=\"M17 13l4 0\" />\n <motion.path className=\"leg-right\" d=\"M20 19l-3.35 -2\" />\n <motion.path className=\"leg-right\" d=\"M20 7l-3.75 2.4\" />\n {/* Center line */}\n <path d=\"M12 20l0 -6\" />\n </motion.svg>\n );\n },\n);\n\nBugIcon.displayName = \"BugIcon\";\n\nexport default BugIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst BulbSvg = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await Promise.all([\n animate(\".ray-left\", { opacity: 0 }, { duration: 0.1 }),\n animate(\".ray-top\", { opacity: 0 }, { duration: 0.1 }),\n animate(\".ray-right\", { opacity: 0 }, { duration: 0.1 }),\n animate(\".ray-top-left\", { opacity: 0 }, { duration: 0.1 }),\n animate(\".ray-top-right\", { opacity: 0 }, { duration: 0.1 }),\n ]);\n await Promise.all([\n animate(\n \".ray-left\",\n { opacity: 1 },\n { duration: 0.4, ease: \"easeOut\" },\n ),\n animate(\".ray-top\", { opacity: 1 }, { duration: 0.4, ease: \"easeOut\" }),\n animate(\n \".ray-right\",\n { opacity: 1 },\n { duration: 0.4, ease: \"easeOut\" },\n ),\n animate(\n \".ray-top-left\",\n { opacity: 1 },\n { duration: 0.4, ease: \"easeOut\" },\n ),\n animate(\n \".ray-top-right\",\n { opacity: 1 },\n { duration: 0.4, ease: \"easeOut\" },\n ),\n ]);\n };\n\n const stop = () => {\n animate(\".ray-left\", { opacity: 1 }, { duration: 0.2 });\n animate(\".ray-top\", { opacity: 1 }, { duration: 0.2 });\n animate(\".ray-right\", { opacity: 1 }, { duration: 0.2 });\n animate(\".ray-top-left\", { opacity: 1 }, { duration: 0.2 });\n animate(\".ray-top-right\", { opacity: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n strokeWidth={strokeWidth}\n fill={color}\n className={`bulb-icon cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"ray-left\"\n d=\"M4 11a1 1 0 0 1 .117 1.993l-.117 .007h-1a1 1 0 0 1 -.117 -1.993l.117 -.007h1z\"\n />\n <motion.path\n className=\"ray-top\"\n d=\"M12 2a1 1 0 0 1 .993 .883l.007 .117v1a1 1 0 0 1 -1.993 .117l-.007 -.117v-1a1 1 0 0 1 1 -1z\"\n />\n\n <motion.path\n className=\"ray-right\"\n d=\"M21 11a1 1 0 0 1 .117 1.993l-.117 .007h-1a1 1 0 0 1 -.117 -1.993l.117 -.007h1z\"\n />\n\n <motion.path\n className=\"ray-top-left\"\n d=\"M4.893 4.893a1 1 0 0 1 1.32 -.083l.094 .083l.7 .7a1 1 0 0 1 -1.32 1.497l-.094 -.083l-.7 -.7a1 1 0 0 1 0 -1.414z\"\n />\n\n <motion.path\n className=\"ray-top-right\"\n d=\"M17.693 4.893a1 1 0 0 1 1.497 1.32l-.083 .094l-.7 .7a1 1 0 0 1 -1.497 -1.32l.083 -.094l.7 -.7z\"\n />\n\n <motion.path\n className=\"bulb-base\"\n d=\"M14 18a1 1 0 0 1 1 1a3 3 0 0 1 -6 0a1 1 0 0 1 .883 -.993l.117 -.007h4z\"\n />\n\n <motion.path\n className=\"bulb-body\"\n d=\"M12 6a6 6 0 0 1 3.6 10.8a1 1 0 0 1 -.471 .192l-.129 .008h-6a1 1 0 0 1 -.6 -.2a6 6 0 0 1 3.6 -10.8z\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nBulbSvg.displayName = \"BulbSvg\";\n\nexport default BulbSvg;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CameraIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".lens\", { scale: 1.2 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\".body\", { scale: 0.95 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\".lens\", { scale: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\".body\", { scale: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"body\"\n d=\"M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z\"\n />\n <motion.circle\n className=\"lens\"\n style={{ transformOrigin: \"12px 13px\" }}\n cx=\"12\"\n cy=\"13\"\n r=\"3\"\n />\n </motion.svg>\n );\n },\n);\n\nCameraIcon.displayName = \"CameraIcon\";\n\nexport default CameraIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CameraOffIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".slash\",\n { scale: 1.1, rotate: 5 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n animate(\".camera\", { opacity: 0.4 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\n \".slash\",\n { scale: 1, rotate: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n animate(\".camera\", { opacity: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.g className=\"camera\">\n <path d=\"M14.564 14.558a3 3 0 1 1-4.122-4.121\" />\n <path d=\"M20 20H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 .819-.175\" />\n <path d=\"M9.695 4.024A2 2 0 0 1 10.004 4h3.993a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v7.344\" />\n </motion.g>\n <motion.path\n className=\"slash\"\n style={{ transformOrigin: \"12px 12px\" }}\n d=\"m2 2 20 20\"\n />\n </motion.svg>\n );\n },\n);\n\nCameraOffIcon.displayName = \"CameraOffIcon\";\n\nexport default CameraOffIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CandyCaneIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".cane\",\n { rotate: [0, -10, 10, -5, 5, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".cane\", { rotate: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.g className=\"cane\" style={{ transformOrigin: \"12px 12px\" }}>\n <path d=\"M5.7 21a2 2 0 0 1-3.5-2l8.6-14a6 6 0 0 1 10.4 6 2 2 0 1 1-3.464-2 2 2 0 1 0-3.464-2Z\" />\n <path d=\"M17.75 7 15 2.1\" />\n <path d=\"M10.9 4.8 13 9\" />\n <path d=\"m7.9 9.7 2 4.4\" />\n <path d=\"M4.9 14.7 7 18.9\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nCandyCaneIcon.displayName = \"CandyCaneIcon\";\n\nexport default CandyCaneIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CartIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".cart-icon\",\n { x: [0, 6, 0] },\n { duration: 0.35, ease: \"easeInOut\" },\n );\n animate(\n \".cart-wheel-left\",\n { rotate: [0, 360] },\n { duration: 0.35, ease: \"easeInOut\" },\n );\n\n animate(\n \".cart-wheel-right\",\n { rotate: [0, 360] },\n { duration: 0.35, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".cart-icon\", { x: 0 }, { duration: 0.2 });\n animate(\".cart-wheel-left\", { rotate: 0 }, { duration: 0.2 });\n animate(\".cart-wheel-right\", { rotate: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"cart-icon\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n className=\"cart-wheel-left\"\n style={{ transformOrigin: \"6px 19px\" }}\n d=\"M6 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0\"\n />\n\n <motion.path\n className=\"cart-wheel-right\"\n style={{ transformOrigin: \"17px 19px\" }}\n d=\"M17 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0\"\n />\n\n <path d=\"M17 17h-11v-14h-2\" />\n\n <path d=\"M6 5l14 1l-1 7h-13\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nCartIcon.displayName = \"CartIcon\";\n\nexport default CartIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ChartBarIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\".bar-1\", { scaleY: [0, 1] }, { duration: 0.3, ease: \"easeOut\" });\n animate(\n \".bar-2\",\n { scaleY: [0, 1] },\n { duration: 0.3, ease: \"easeOut\", delay: 0.1 },\n );\n animate(\n \".bar-3\",\n { scaleY: [0, 1] },\n { duration: 0.3, ease: \"easeOut\", delay: 0.2 },\n );\n animate(\n \".base-line\",\n { scaleX: [1, 1.05, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".bar-1 , .bar-2 , .bar-3\",\n { scaleY: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n animate(\n \".base-line\",\n { scaleX: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M3 13a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z\"\n className=\"bar-1\"\n style={{ transformOrigin: \"6px 20px\" }}\n />\n\n <motion.path\n d=\"M9 5a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z\"\n className=\"bar-2\"\n style={{ transformOrigin: \"12px 20px\" }}\n />\n\n <motion.path\n d=\"M15 9a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v10a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z\"\n className=\"bar-3\"\n style={{ transformOrigin: \"18px 20px\" }}\n />\n\n <motion.path\n d=\"M4 20h14\"\n className=\"base-line\"\n style={{ transformOrigin: \"11px 20px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nChartBarIcon.displayName = \"ChartBarIcon\";\nexport default ChartBarIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ChartCovariateIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \".dot-1\",\n { scale: [0, 1.2, 1], opacity: [0, 1] },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".dot-2\",\n { scale: [0, 1.2, 1], opacity: [0, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.08 },\n );\n animate(\n \".dot-3\",\n { scale: [0, 1.2, 1], opacity: [0, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.16 },\n );\n animate(\n \".dot-4\",\n { scale: [0, 1.2, 1], opacity: [0, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.24 },\n );\n animate(\n \".trend-line\",\n { pathLength: [0, 1] },\n { duration: 0.5, ease: \"easeInOut\", delay: 0.3 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".dot-1 , .dot-2 , .dot-3 , .dot-4\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n animate(\n \".trend-line\",\n { pathLength: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M18 11h.009\"\n className=\"dot-4\"\n style={{ transformOrigin: \"18px 11px\" }}\n />\n <motion.path\n d=\"M14 15h.009\"\n className=\"dot-3\"\n style={{ transformOrigin: \"14px 15px\" }}\n />\n <motion.path\n d=\"M12 6h.009\"\n className=\"dot-2\"\n style={{ transformOrigin: \"12px 6px\" }}\n />\n <motion.path\n d=\"M8 10h.009\"\n className=\"dot-1\"\n style={{ transformOrigin: \"8px 10px\" }}\n />\n\n <motion.path\n d=\"M3 21l17 -17\"\n className=\"trend-line\"\n initial={{ pathLength: 1 }}\n />\n\n <path d=\"M3 3v18h18\" />\n </motion.svg>\n );\n },\n);\n\nChartCovariateIcon.displayName = \"ChartCovariateIcon\";\nexport default ChartCovariateIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ChartHistogramIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \".histogram-bar-1\",\n { scaleY: [0, 1] },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".histogram-bar-2\",\n { scaleY: [0, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.08 },\n );\n animate(\n \".histogram-bar-3\",\n { scaleY: [0, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.16 },\n );\n animate(\n \".histogram-bar-4\",\n { scaleY: [0, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.24 },\n );\n animate(\n \".histogram-curve\",\n { pathLength: [0, 1] },\n { duration: 0.5, ease: \"easeInOut\", delay: 0.3 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".histogram-bar-1, .histogram-bar-2, .histogram-bar-3, .histogram-bar-4\",\n { scaleY: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n animate(\n \".histogram-curve\",\n { pathLength: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <path d=\"M3 3v18h18\" />\n\n <motion.path\n d=\"M20 18v3\"\n className=\"histogram-bar-4\"\n style={{ transformOrigin: \"20px 21px\" }}\n />\n <motion.path\n d=\"M16 16v5\"\n className=\"histogram-bar-3\"\n style={{ transformOrigin: \"16px 21px\" }}\n />\n <motion.path\n d=\"M12 13v8\"\n className=\"histogram-bar-2\"\n style={{ transformOrigin: \"12px 21px\" }}\n />\n <motion.path\n d=\"M8 16v5\"\n className=\"histogram-bar-1\"\n style={{ transformOrigin: \"8px 21px\" }}\n />\n\n <motion.path\n d=\"M3 11c6 0 5 -5 9 -5s3 5 9 5\"\n className=\"histogram-curve\"\n initial={{ pathLength: 1 }}\n />\n </motion.svg>\n );\n },\n);\n\nChartHistogramIcon.displayName = \"ChartHistogramIcon\";\nexport default ChartHistogramIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ChartLineIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".chart-line\",\n {\n pathLength: [0, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".base-line\",\n {\n scaleX: [0, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n };\n\n const stop = async () => {\n animate(\n \".chart-line\",\n {\n pathLength: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".base-line\",\n {\n scaleX: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Base line */}\n <motion.path\n d=\"M4 19l16 0\"\n className=\"base-line\"\n style={{ transformOrigin: \"4px 19px\" }}\n />\n\n {/* Chart line */}\n <motion.path\n d=\"M4 15l4 -6l4 2l4 -5l4 4\"\n className=\"chart-line\"\n initial={{ pathLength: 1 }}\n />\n </motion.svg>\n );\n },\n);\n\nChartLineIcon.displayName = \"ChartLineIcon\";\n\nexport default ChartLineIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ChartPieIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".pie-main\",\n {\n pathLength: [0, 1],\n },\n {\n duration: 0.5,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".pie-slice\",\n {\n pathLength: [0, 1],\n rotate: [0, 5],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n delay: 0.2,\n },\n );\n };\n\n const stop = async () => {\n animate(\n \".pie-main\",\n {\n pathLength: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".pie-slice\",\n {\n pathLength: 1,\n rotate: 0,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Main pie */}\n <motion.path\n d=\"M10 3.2a9 9 0 1 0 10.8 10.8a1 1 0 0 0 -1 -1h-6.8a2 2 0 0 1 -2 -2v-7a.9 .9 0 0 0 -1 -.8\"\n className=\"pie-main\"\n initial={{ pathLength: 1 }}\n />\n\n {/* Pie slice */}\n <motion.path\n d=\"M15 3.5a9 9 0 0 1 5.5 5.5h-4.5a1 1 0 0 1 -1 -1v-4.5\"\n className=\"pie-slice\"\n style={{ transformOrigin: \"17.5px 6px\" }}\n initial={{ pathLength: 1 }}\n />\n </motion.svg>\n );\n },\n);\n\nChartPieIcon.displayName = \"ChartPieIcon\";\n\nexport default ChartPieIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CheckedIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \"svg\",\n {\n scale: 1.1,\n },\n {\n duration: 0.1,\n ease: \"easeInOut\",\n },\n );\n await animate(\n \".check-icon\",\n {\n pathLength: 0,\n },\n {\n duration: 0.1,\n ease: \"easeInOut\",\n },\n );\n await animate(\n \".check-icon\",\n {\n pathLength: 1,\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \"svg\",\n {\n scale: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n };\n\n const stop = () => {\n animate(\"svg\", { scale: 1 }, { duration: 0.2 });\n animate(\".check-icon\", { pathLength: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n >\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path d=\"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\" />\n <motion.path d=\"M9 12l2 2l4 -4\" className=\"check-icon\" />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nCheckedIcon.displayName = \"CheckedIcon\";\n\nexport default CheckedIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\n\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ClockIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".clock-hands\",\n {\n rotate: 360,\n },\n {\n duration: 1,\n ease: \"easeInOut\",\n },\n );\n };\n\n const stop = async () => {\n await animate(\n \".clock-hands\",\n {\n rotate: 0,\n },\n {\n duration: 1,\n ease: \"easeInOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`${className} cursor-pointer`}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n >\n <motion.path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n d=\"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0\"\n className=\"clock-body\"\n />\n <motion.path d=\"M12 7v5l3 3\" className=\"clock-hands\" />\n </motion.svg>\n );\n },\n);\n\nClockIcon.displayName = \"ClockIcon\";\n\nexport default ClockIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst Cloud1Icon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Simple, clean scale pulse\n animate(\n scope.current,\n { scale: [1, 1.05, 1] },\n {\n duration: 2,\n repeat: Infinity,\n ease: \"easeInOut\",\n },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(scope.current, { y: 0 }, { duration: 0.3 });\n }, [animate, scope]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <path d=\"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z\" />\n </motion.svg>\n );\n },\n);\n\nCloud1Icon.displayName = \"Cloud1Icon\";\nexport default Cloud1Icon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst Cloud2Icon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \"path.cloud-path\",\n { y: [0, -1, 0, 1, 0], x: [0, 0.5, 0, -0.5, 0] },\n { duration: 3, repeat: Infinity, ease: \"easeInOut\" },\n );\n\n animate(\n \".rain-drop\",\n {\n y: [0, 5],\n x: [0, -2],\n opacity: [0, 1, 0],\n },\n {\n duration: 0.6,\n repeat: Infinity,\n ease: \"linear\",\n delay: (i: number) => i * 0.15,\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\"path.cloud-path\", { y: 0, x: 0 }, { duration: 0.3 });\n animate(\".rain-drop\", { opacity: 0, y: 0, x: 0 }, { duration: 0.3 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"cloud-path\"\n d=\"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z\"\n />\n <motion.line\n className=\"rain-drop\"\n x1=\"10\"\n y1=\"20\"\n x2=\"11\"\n y2=\"22\"\n custom={0}\n />\n <motion.line\n className=\"rain-drop\"\n x1=\"13\"\n y1=\"21\"\n x2=\"14\"\n y2=\"23\"\n custom={1}\n />\n <motion.line\n className=\"rain-drop\"\n x1=\"16\"\n y1=\"20\"\n x2=\"17\"\n y2=\"22\"\n custom={2}\n />\n </motion.svg>\n );\n },\n);\n\nCloud2Icon.displayName = \"Cloud2Icon\";\nexport default Cloud2Icon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst Cloud3Icon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \".status-dot\",\n { opacity: [1, 0.4, 1] },\n {\n duration: 1,\n repeat: Infinity,\n ease: \"easeInOut\",\n delay: (i: number) => i * 0.3,\n },\n );\n animate(\n \"path.cloud-path\",\n { scale: [1, 1.01, 1] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".status-dot\", { opacity: 1 }, { duration: 0.3 });\n animate(\"path.cloud-path\", { scale: 1 }, { duration: 0.3 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"cloud-path\"\n d=\"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z\"\n style={{ transformOrigin: \"center\" }}\n />\n <motion.circle\n className=\"status-dot\"\n cx=\"9\"\n cy=\"15\"\n r=\"0.5\"\n fill={color}\n custom={0}\n />\n <motion.circle\n className=\"status-dot\"\n cx=\"12\"\n cy=\"15\"\n r=\"0.5\"\n fill={color}\n custom={1}\n />\n <motion.circle\n className=\"status-dot\"\n cx=\"15\"\n cy=\"15\"\n r=\"0.5\"\n fill={color}\n custom={2}\n />\n </motion.svg>\n );\n },\n);\n\nCloud3Icon.displayName = \"Cloud3Icon\";\nexport default Cloud3Icon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CodeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".left-bracket\", { x: -3 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\".right-bracket\", { x: 3 }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\".left-bracket\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\".right-bracket\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path className=\"right-bracket\" d=\"m16 18 6-6-6-6\" />\n <motion.path className=\"left-bracket\" d=\"m8 6-6 6 6 6\" />\n </motion.svg>\n );\n },\n);\n\nCodeIcon.displayName = \"CodeIcon\";\n\nexport default CodeIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CodeXmlIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".left-bracket\", { x: -3 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\".right-bracket\", { x: 3 }, { duration: 0.3, ease: \"easeOut\" });\n animate(\n \".slash\",\n { scale: 1.1, opacity: 0.7 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".left-bracket\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\".right-bracket\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n animate(\n \".slash\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path className=\"right-bracket\" d=\"m18 16 4-4-4-4\" />\n <motion.path className=\"left-bracket\" d=\"m6 8-4 4 4 4\" />\n <motion.path\n className=\"slash\"\n style={{ transformOrigin: \"12px 12px\" }}\n d=\"m14.5 4-5 16\"\n />\n </motion.svg>\n );\n },\n);\n\nCodeXmlIcon.displayName = \"CodeXmlIcon\";\n\nexport default CodeXmlIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CoffeeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".steam\",\n {\n y: -2,\n opacity: [1, 0.5, 0],\n },\n {\n duration: 0.5,\n ease: \"easeOut\",\n },\n );\n };\n\n const stop = () => {\n animate(\n \".steam\",\n {\n y: 0,\n opacity: [1, 0.5, 1],\n },\n {\n duration: 0.5,\n ease: \"easeOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path className=\"steam\" d=\"M6 2v3\" />\n <motion.path className=\"steam\" d=\"M10 2v3\" />\n <motion.path className=\"steam\" d=\"M14 2v3\" />\n\n <path d=\"M16 8a1 1 0 0 1 1 1v8a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1h14a4 4 0 1 1 0 8h-1\" />\n </motion.svg>\n );\n },\n);\n\nCoffeeIcon.displayName = \"CoffeeIcon\";\n\nexport default CoffeeIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CoinBitcoinIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(scope.current, { rotateY: 180 }, { duration: 0.6 });\n };\n\n const stop = () => {\n animate(scope.current, { rotateY: 0 }, { duration: 0.6 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n className={`icon icon-tabler icons-tabler-filled icon-tabler-coin-bitcoin cursor-pointer ${className}`}\n style={{ transformStyle: \"preserve-3d\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path d=\"M17 3.34a10 10 0 1 1 -15 8.66l.005 -.324a10 10 0 0 1 14.995 -8.336zm-4 2.66a1 1 0 0 0 -1 1h-1a1 1 0 0 0 -2 0a1 1 0 1 0 0 2v6a1 1 0 0 0 0 2c0 1.333 2 1.333 2 0h1a1 1 0 0 0 2 0v-.15c1.167 -.394 2 -1.527 2 -2.85l-.005 -.175a3.063 3.063 0 0 0 -.734 -1.827c.46 -.532 .739 -1.233 .739 -1.998c0 -1.323 -.833 -2.456 -2 -2.85v-.15a1 1 0 0 0 -1 -1zm.09 7c.492 0 .91 .437 .91 1s-.418 1 -.91 1h-2.09v-2h2.09zm0 -4c.492 0 .91 .437 .91 1c0 .522 -.36 .937 -.806 .993l-.104 .007h-2.09v-2h2.09z\" />\n </motion.svg>\n );\n },\n);\n\nCoinBitcoinIcon.displayName = \"CoinBitcoinIcon\";\n\nexport default CoinBitcoinIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CopyIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".front-copy\",\n { x: [0, 2, 0], y: [0, 2, 0] },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".front-copy\",\n { x: 0, y: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1\" />\n <motion.path\n className=\"front-copy\"\n d=\"M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nCopyIcon.displayName = \"CopyIcon\";\n\nexport default CopyIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CopyOffIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".slash-line\",\n { pathLength: [0, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n animate(\n \".copy-elements\",\n { opacity: [1, 0.5, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".slash-line\",\n { pathLength: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n animate(\n \".copy-elements\",\n { opacity: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g className=\"copy-elements\">\n <path d=\"M19.414 19.415a2 2 0 0 1 -1.414 .585h-8a2 2 0 0 1 -2 -2v-8c0 -.554 .225 -1.055 .589 -1.417m3.411 -.583h6a2 2 0 0 1 2 2v6\" />\n <path d=\"M16 8v-2a2 2 0 0 0 -2 -2h-6m-3.418 .59c-.36 .36 -.582 .86 -.582 1.41v8a2 2 0 0 0 2 2h2\" />\n </motion.g>\n <motion.path\n className=\"slash-line\"\n d=\"M3 3l18 18\"\n style={{ transformOrigin: \"center\" }}\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nCopyOffIcon.displayName = \"CopyOffIcon\";\n\nexport default CopyOffIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CopyrightIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Outer Circle Sweep\n animate(\n \"circle\",\n { pathLength: [1, 0.9, 1], rotate: [0, 360] },\n {\n duration: 2,\n repeat: Infinity,\n ease: \"easeInOut\",\n },\n );\n\n // Central 'C' Pulse\n animate(\n \"path\",\n { scale: [1, 1.1, 1] },\n {\n duration: 1,\n repeat: Infinity,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\"circle\", { pathLength: 1, rotate: 0 }, { duration: 0.3 });\n animate(\"path\", { scale: 1 }, { duration: 0.3 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n style={{ transformOrigin: \"center\" }}\n />\n <motion.path\n d=\"M14.83 14.83a4 4 0 1 1 0-5.66\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nCopyrightIcon.displayName = \"CopyrightIcon\";\nexport default CopyrightIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CpuIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".pins\",\n { scale: [1, 1.15, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n animate(\n \".inner\",\n { scale: [1, 0.9, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n animate(\n \".outer\",\n { scale: [1, 1.05, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".pins, .inner, .outer\",\n { scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.g className=\"pins\">\n <path d=\"M12 20v2\" />\n <path d=\"M12 2v2\" />\n <path d=\"M17 20v2\" />\n <path d=\"M17 2v2\" />\n <path d=\"M2 12h2\" />\n <path d=\"M2 17h2\" />\n <path d=\"M2 7h2\" />\n <path d=\"M20 12h2\" />\n <path d=\"M20 17h2\" />\n <path d=\"M20 7h2\" />\n <path d=\"M7 20v2\" />\n <path d=\"M7 2v2\" />\n </motion.g>\n <motion.rect\n className=\"outer\"\n style={{ transformOrigin: \"12px 12px\" }}\n x=\"4\"\n y=\"4\"\n width=\"16\"\n height=\"16\"\n rx=\"2\"\n />\n <motion.rect\n className=\"inner\"\n style={{ transformOrigin: \"12px 12px\" }}\n x=\"8\"\n y=\"8\"\n width=\"8\"\n height=\"8\"\n rx=\"1\"\n />\n </motion.svg>\n );\n },\n);\n\nCpuIcon.displayName = \"CpuIcon\";\n\nexport default CpuIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CreditCard = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".card-body\",\n {\n rotate: [0, -3, 3, 0],\n scale: [1, 1.02, 1],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n await animate(\n \".card-stripe\",\n {\n opacity: [0, 1, 0],\n x: [-18, 18],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".card-chip\",\n {\n scale: [1, 1.6, 1],\n opacity: [0.6, 1, 0.6],\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n };\n\n const stop = () => {\n animate(\".card-body\", { rotate: 0, scale: 1 }, { duration: 0.2 });\n animate(\".card-stripe\", { opacity: 0, x: 0 }, { duration: 0.2 });\n animate(\".card-chip\", { scale: 1, opacity: 0.6 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.path\n className=\"card-body\"\n style={{ transformOrigin: \"50% 50%\" }}\n d=\"M3 5m0 3a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3z\"\n />\n\n <motion.path className=\"card-stripe\" d=\"M3 10l18 0\" opacity=\"0\" />\n\n <motion.path\n className=\"card-chip\"\n style={{ transformOrigin: \"7px 15px\" }}\n d=\"M7 15l.01 0\"\n />\n\n <motion.path className=\"card-number\" d=\"M11 15l2 0\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nCreditCard.displayName = \"CreditCard\";\n\nexport default CreditCard;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CurrencyBitcoinIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".btc-main, .btc-lines, .btc-center\",\n { pathLength: 0, opacity: 0 },\n { duration: 0 },\n );\n\n await animate(\n \".btc-lines\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n await animate(\n \".btc-main\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.35, ease: \"easeOut\" },\n );\n\n await animate(\n \".btc-center\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n\n animate(\n \".btc-symbol\",\n { scale: [0.95, 1] },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".btc-main, .btc-lines, .btc-center\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n animate(\".btc-symbol\", { scale: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.g\n className=\"btc-symbol\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <motion.g className=\"btc-main\">\n <motion.path\n d=\"M6 6h8a3 3 0 0 1 0 6a3 3 0 0 1 0 6h-8\"\n pathLength={1}\n />\n <motion.path d=\"M8 6l0 12\" pathLength={1} />\n </motion.g>\n\n <motion.path className=\"btc-center\" d=\"M8 12l6 0\" pathLength={1} />\n\n <motion.g className=\"btc-lines\">\n <motion.path d=\"M9 3l0 3\" pathLength={1} />\n <motion.path d=\"M13 3l0 3\" pathLength={1} />\n <motion.path d=\"M9 18l0 3\" pathLength={1} />\n <motion.path d=\"M13 18l0 3\" pathLength={1} />\n </motion.g>\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nCurrencyBitcoinIcon.displayName = \"CurrencyBitcoinIcon\";\n\nexport default CurrencyBitcoinIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CurrencyDollarIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".usd-main, .usd-line\",\n { pathLength: 0, opacity: 0 },\n { duration: 0 },\n );\n\n await animate(\n \".usd-line\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n await animate(\n \".usd-main\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.4, ease: \"easeOut\" },\n );\n\n animate(\n \".usd-symbol\",\n { scale: [0.96, 1] },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".usd-main, .usd-line\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n animate(\".usd-symbol\", { scale: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g\n className=\"usd-symbol\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <motion.path\n className=\"usd-main\"\n d=\"M16.7 8a3 3 0 0 0 -2.7 -2h-4a3 3 0 0 0 0 6h4a3 3 0 0 1 0 6h-4a3 3 0 0 1 -2.7 -2\"\n pathLength={1}\n />\n <motion.path\n className=\"usd-line\"\n d=\"M12 3v3m0 12v3\"\n pathLength={1}\n />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nCurrencyDollarIcon.displayName = \"CurrencyDollarIcon\";\n\nexport default CurrencyDollarIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CurrencyEthereumIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".eth-outer, .eth-inner\",\n { pathLength: 0, opacity: 0 },\n { duration: 0 },\n );\n\n await animate(\n \".eth-outer\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n\n await animate(\n \".eth-inner\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n animate(\n \".eth-symbol\",\n { scale: [0.96, 1] },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".eth-outer, .eth-inner\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n animate(\".eth-symbol\", { scale: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g\n className=\"eth-symbol\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <motion.path\n className=\"eth-outer\"\n d=\"M6 12l6 -9l6 9l-6 9z\"\n pathLength={1}\n />\n <motion.path\n className=\"eth-inner\"\n d=\"M6 12l6 -3l6 3l-6 2z\"\n pathLength={1}\n />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nCurrencyEthereumIcon.displayName = \"CurrencyEthereumIcon\";\n\nexport default CurrencyEthereumIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CurrencyEuroIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".eur-curve, .eur-line\",\n { pathLength: 0, opacity: 0 },\n { duration: 0 },\n );\n\n await animate(\n \".eur-line\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n await animate(\n \".eur-curve\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.4, ease: \"easeOut\" },\n );\n\n animate(\n \".eur-symbol\",\n { scale: [0.96, 1] },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".eur-curve, .eur-line\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n animate(\".eur-symbol\", { scale: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.g\n className=\"eur-symbol\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <motion.path\n className=\"eur-curve\"\n d=\"M17.2 7a6 7 0 1 0 0 10\"\n pathLength={1}\n />\n <motion.path className=\"eur-line\" d=\"M13 10h-8\" pathLength={1} />\n <motion.path className=\"eur-line\" d=\"M5 14h8\" pathLength={1} />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nCurrencyEuroIcon.displayName = \"CurrencyEuroIcon\";\n\nexport default CurrencyEuroIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst CurrencyRupeeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".rupee-main, .rupee-line\",\n {\n pathLength: 0,\n opacity: 0,\n },\n { duration: 0 },\n );\n\n await animate(\n \".rupee-line\",\n {\n pathLength: 1,\n opacity: 1,\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n\n await animate(\n \".rupee-main\",\n {\n pathLength: 1,\n opacity: 1,\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".rupee-symbol\",\n {\n scale: [0.96, 1],\n },\n {\n duration: 0.2,\n ease: \"easeOut\",\n },\n );\n };\n\n const stop = () => {\n animate(\n \".rupee-main, .rupee-line\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n animate(\".rupee-symbol\", { scale: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.g\n className=\"rupee-symbol\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <motion.path\n className=\"rupee-main\"\n d=\"M18 5h-11h3a4 4 0 0 1 0 8h-3l6 6\"\n pathLength={1}\n />\n\n <motion.path className=\"rupee-line\" d=\"M7 9l11 0\" pathLength={1} />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nCurrencyRupeeIcon.displayName = \"CurrencyRupeeIcon\";\n\nexport default CurrencyRupeeIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DeviceAirpodsIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \".airpod-left\",\n { y: [0, -2, 0], x: [0, -1, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n animate(\n \".airpod-right\",\n { y: [0, -2, 0], x: [0, 1, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".airpod-left,.airpod-right\",\n { y: 0, x: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n className=\"airpod-left\"\n d=\"M6 4a4 4 0 0 1 4 3.8l0 .2v10.5a1.5 1.5 0 0 1 -3 0v-6.5h-1a4 4 0 0 1 -4 -3.8l0 -.2a4 4 0 0 1 4 -4z\"\n />\n\n <motion.path\n className=\"airpod-right\"\n d=\"M18 4a4 4 0 0 0 -4 3.8l0 .2v10.5a1.5 1.5 0 0 0 3 0v-6.5h1a4 4 0 0 0 4 -3.8l0 -.2a4 4 0 0 0 -4 -4z\"\n />\n </motion.svg>\n );\n },\n);\n\nDeviceAirpodsIcon.displayName = \"DeviceAirpodsIcon\";\nexport default DeviceAirpodsIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DialpadIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \".button\",\n { scale: [1, 0.9, 1] },\n {\n duration: 0.4,\n delay: (i) => i * 0.05,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".button\", { scale: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n className=\"button\"\n d=\"M6 2h-2a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2z\"\n />\n <motion.path\n className=\"button\"\n d=\"M13 2h-2a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2z\"\n />\n <motion.path\n className=\"button\"\n d=\"M20 2h-2a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2z\"\n />\n\n <motion.path\n className=\"button\"\n d=\"M6 9h-2a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2z\"\n />\n <motion.path\n className=\"button\"\n d=\"M13 9h-2a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2z\"\n />\n <motion.path\n className=\"button\"\n d=\"M20 9h-2a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2z\"\n />\n\n <motion.path\n className=\"button\"\n d=\"M13 16h-2a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2z\"\n />\n </motion.svg>\n );\n },\n);\n\nDialpadIcon.displayName = \"DialpadIcon\";\nexport default DialpadIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DinoIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // 1. Tilt head to the sky\n animate(\n scope.current,\n { rotate: -10 },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(scope.current, { rotate: 0 }, { duration: 0.2, ease: \"easeIn\" });\n }, [animate, scope]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const cutoutColor = \"var(--background)\";\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 121 125\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\", transformOrigin: \"bottom center\" }}\n >\n <motion.g className=\"dino-body\">\n {/* 1. Full Body Silhouette (Solid currentColor) */}\n <path\n d=\"M0 0 C10.23 0 20.46 0 31 0 C32.25 2.5 32.11 4.2 32.1 7 C32.09 8 32.09 9 32.09 10 C32.08 11.5 32.08 11.5 32.06 13.1 C32.06 14.1 32.05 15.2 32.05 16.3 C32.04 18.8 32.02 21.4 32 24 C30.68 24 29.36 24 28 24 C28 25.65 28 27.3 28 29 C26.35 29 24.7 29 23 29 C23 33 23 37 23 41 C21.02 41 19.04 41 17 41 C17 43.3 17 45.6 17 48 C16.01 48 15.02 48 14 48 C14 49.3 14 50.6 14 52 C13.01 52 12.02 52 11 52 C11 55 11 58 11 61 C6.38 61 1.76 61 -3 61 C-3 63.3 -3 65.6 -3 68 C-7.62 68 -12.24 68 -17 68 C-17 64.7 -17 61.4 -17 58 C-17.99 58 -18.98 58 -20 58 C-20 57.01 -20 56.02 -20 55 C-20.99 55 -21.98 55 -23 55 C-23 54.01 -23 53.02 -23 52 C-23.99 52 -24.98 52 -26 52 C-26 51.01 -26 50.02 -26 49 C-26.99 49 -27.98 49 -29 49 C-29 48.34 -29 47.68 -29 47 C-29.66 47 -30.32 47 -31 47 C-31 38.1 -31 29.2 -31 20 C-27.04 20 -23.08 20 -19 20 C-19 22 -19 24 -19 26 C-16.03 26 -13.06 26 -10 26 C-10 25 10 24 10 23 C-8.68 23 -7.36 23 -6 23 C-6 22.3 -6 21.7 -6 21 C-5 21 -4 21 -3 21 C-3 15 -3 9.1 -3 3 C-2 3 -1 3 0 3 C0 2 0 1 0 0 Z\"\n fill=\"currentColor\"\n transform=\"translate(57,35)\"\n />\n\n {/* 2. Interior Cutouts (Fill with background) */}\n <path\n d=\"M5 5 C5 5.66 5 6.32 5 7 C4 7 3 7 2 7 C2 12.9 2 18.9 2 25 C1 25 0 25 -1 25 C-1 26 -1 27 -1 28 C-2.3 28 -3.6 28 -5 28 C-5 29 -5 30 -5 31 C-6.6 31 -8.3 31 -10 31 C-10 32 -10 33 -10 34 C-10.7 34 -11.3 34 -12 34 C-12 34.7 -12 35.3 -12 36 C-14 36 -16 36 -18 36 C-18 35 -18 34 -18 33 C-19 33 -20 33 -21 33 C-21 32.3 -21 31.7 -21 31 C-22 31 -23 31 -24 31 C-24 29 -24 27 -24 25 C-25 25 -26 25 -27 25 C-27 30.6 -27 36.2 -27 42 C-26 42 -25 42 -24 42 C-24 42.7 -24 43.3 -24 44 C-23 44 -22 44 -21 44 C-21 45 -21 46 -21 47 C-20 47 -19 47 -18 47 C-18 48 -18 49 -18 50 C-17 50 -16 50 -15 50 C-15 51 -15 52 -15 53 C-14.3 53 -13.7 53 -13 53 C-13 56.6 -13 60.3 -13 64 C-11 64 -9 64 -7 64 C-7 63 -7 62 -7 61 C-7.7 61 -8.3 61 -9 61 C-9 60.3 -9 59.7 -9 59 C-8.3 59 -7.7 59 -7 59 C-7 58 -7 57 -7 56 C-6 56 -5 56 -4 56 C-4 55 -4 54 -4 53 C-3 53 -2 53 -1 53 C-1 54 -1 55 -1 56 C1.7 57.4 4 57.1 7 57 C7 56 -7 55 -7 54 C6 54 5 54 4 54 C4 52.7 4 51.4 4 50 C5 50 6 50 7 50 C7 49 7 48 7 47 C7.7 47 8.3 47 9 47 C9 43.1 9 44.4 9 43 C10 43 11 43 12 43 C12 40 12 37.1 12 34 C13 34 14 34 15 34 C15 34.7 15 35.3 15 36 C16 36 17 36 18 36 C18 34.4 18 32.7 18 31 C16 31 14 31 12 31 C12 29 12 27 12 25 C16 25 19.9 25 24 25 C24 24 24 23 24 22 C21 22 18.1 22 15 22 C15 21 15 20 15 19 C19.6 19 24.2 19 29 19 C29 15 29 11.1 29 7 C28 7 27 7 26 7 C26 6.3 26 5.7 26 5 C19.1 5 12.1 5 5 5 Z\"\n fill={cutoutColor}\n transform=\"translate(57,35)\"\n />\n\n {/* 3. Head/Face segments: Solid currentColor */}\n <path\n d=\"M0 0 C1.65 0 3.3 0 5 0 C6.25 2.5 6.11 4.2 6.1 7 C6.09 8 6.09 9 6.09 10 C6.08 11 6.07 12.1 6.06 13.1 C6.06 14.2 6.05 15.2 6.05 16.3 C6.04 18.9 6.02 21.4 6 24 C5.24 23.8 4.47 23.7 3.69 23.5 C0.96 22.9 0.96 22.9 -2 23 C-3.56 22.8 -5.13 22.7 -6.69 22.5 C-7.9 22.4 -7.9 22.4 -9.14 22.2 C-9.75 22.1 -10.37 22.1 -11 22 C-11 21 -11 20 -11 19 C-6.38 19 -1.76 19 3 19 C3 15 3 11.1 3 7 C2 7 1 7 0 7 C0 6.3 0 5.7 0 5 C-6.93 5 -13.9 5 -21 5 C-21.3 5.7 -21.7 6.3 -22 7 C-22 6 -22 5 -22 4 C-15.4 4 -8.8 4 -2 4 C-1.34 2.7 -0.68 1.4 0 0 Z\"\n fill=\"currentColor\"\n transform=\"translate(83,35)\"\n />\n <path\n d=\"M0 0 C0.33 3.6 0.66 7.3 1 11 C-0.65 10.7 -2.3 10.3 -4 10 C-4 8 -4 6 -4 4 C-4.99 3.7 -5.98 3.3 -7 3 C-4.5 0 -4.26 0 0 0 Z\"\n fill=\"currentColor\"\n transform=\"translate(38,55)\"\n />\n\n {/* 4. Eye Detail: User requested currentColor (Solid) */}\n <path\n d=\"M0 0 C1.98 0 3.96 0 6 0 C6 1.98 6 3.96 6 6 C4.02 6 2.04 6 0 6 C0 4.02 0 2.04 0 0 Z\"\n fill=\"currentColor\"\n transform=\"translate(64,44)\"\n />\n </motion.g>\n\n {/* Legs: Solid currentColor */}\n <motion.g className=\"dino-leg-left\">\n <path\n d=\"M0 0 C0.99 0 1.98 0 3 0 C3 0.66 3 1.32 3 2 C4 2.3 5 2.7 6 3 C5.01 4.5 5.01 4.5 4 6 C3.34 6 2.68 6 2 6 C1.67 7.3 1.34 8.6 1 10 C1 9 1 8 1 7 C0 7 -1 7 -2 7 C-1.34 4.7 -0.68 2.4 0 0 Z\"\n fill=\"currentColor\"\n transform=\"translate(30,77)\"\n />\n </motion.g>\n\n <motion.g className=\"dino-leg-right\">\n <path\n d=\"M0 0 C0.33 0 0.66 0 1 0 C1 3.3 1 6.6 1 10 C1.66 10 2.32 10 3 10 C3.33 8.7 3.66 7.4 4 6 C4 6.7 4 7.3 4 8 C4.66 8 5.32 8 6 8 C6 8.99 6 9.98 6 11 C4.02 11 2.04 11 0 11 C0 7.37 0 3.74 0 0 Z\"\n fill=\"currentColor\"\n transform=\"translate(44,88)\"\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nDinoIcon.displayName = \"DinoIcon\";\nexport default DinoIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DiscordIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".eyes\",\n { scale: [1, 1.3, 1] },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n await animate(\n \".mouth\",\n { scaleX: [1, 1.1, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n animate(\".body\", { y: [0, -1, 0] }, { duration: 0.5, ease: \"easeInOut\" });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".eyes, .mouth, .body\",\n { x: 0, y: 0, scale: 1, scaleX: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"eyes\"\n style={{ transformOrigin: \"9 12\" }}\n d=\"M8 12a1 1 0 1 0 2 0a1 1 0 0 0 -2 0\"\n />\n <motion.path\n className=\"eyes\"\n style={{ transformOrigin: \"15 12\" }}\n d=\"M14 12a1 1 0 1 0 2 0a1 1 0 0 0 -2 0\"\n />\n <motion.path\n className=\"mouth\"\n style={{ transformOrigin: \"center\" }}\n d=\"M7 16.5c3.5 1 6.5 1 10 0\"\n />\n <motion.path\n className=\"body\"\n d=\"M15.5 17c0 1 1.5 3 2 3c1.5 0 2.833 -1.667 3.5 -3c.667 -1.667 .5 -5.833 -1.5 -11.5c-1.457 -1.015 -3 -1.34 -4.5 -1.5l-.972 1.923a11.913 11.913 0 0 0 -4.053 0l-.975 -1.923c-1.5 .16 -3.043 .485 -4.5 1.5c-2 5.667 -2.167 9.833 -1.5 11.5c.667 1.333 2 3 3.5 3c.5 0 2 -2 2 -3\"\n />\n </motion.svg>\n );\n },\n);\n\nDiscordIcon.displayName = \"DiscordIcon\";\nexport default DiscordIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DockerIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animationControls.current.push(\n animate(\n \".whale\",\n { x: [0, 2, 0] },\n { duration: 1.2, ease: \"easeInOut\", repeat: Infinity },\n ),\n );\n animationControls.current.push(\n animate(\n \".containers\",\n { y: [0, -1, 0] },\n { duration: 0.8, ease: \"easeInOut\", repeat: Infinity },\n ),\n );\n animate(\n \".dot\",\n { scale: [1, 1.3, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\".whale\", { x: 0 }, { duration: 0.3 });\n animate(\".containers\", { y: 0 }, { duration: 0.3 });\n animate(\".dot\", { scale: 1 }, { duration: 0.3 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"whale\"\n d=\"M22 12.54c-1.804 -.345 -2.701 -1.08 -3.523 -2.94c-.487 .696 -1.102 1.568 -.92 2.4c.028 .238 -.32 1 -.557 1h-14c0 5.208 3.164 7 6.196 7c4.124 .022 7.828 -1.376 9.854 -5c1.146 -.101 2.296 -1.505 2.95 -2.46z\"\n />\n <motion.path className=\"containers\" d=\"M5 10h3v3h-3z\" />\n <motion.path className=\"containers\" d=\"M8 10h3v3h-3z\" />\n <motion.path className=\"containers\" d=\"M11 10h3v3h-3z\" />\n <motion.path className=\"containers\" d=\"M8 7h3v3h-3z\" />\n <motion.path className=\"containers\" d=\"M11 7h3v3h-3z\" />\n <motion.path className=\"containers\" d=\"M11 4h3v3h-3z\" />\n <motion.path\n className=\"whale\"\n d=\"M4.571 18c1.5 0 2.047 -.074 2.958 -.78\"\n />\n <motion.path\n className=\"dot\"\n style={{ transformOrigin: \"10 16\" }}\n d=\"M10 16l0 .01\"\n />\n </motion.svg>\n );\n },\n);\n\nDockerIcon.displayName = \"DockerIcon\";\nexport default DockerIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DotsHorizontalIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".dot-left\",\n {\n x: [-2, 0],\n scale: [1, 1.2, 1],\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".dot-center\",\n {\n scale: [1, 1.3, 1],\n },\n {\n duration: 0.3,\n delay: 0.1,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".dot-right\",\n {\n x: [2, 0],\n scale: [1, 1.2, 1],\n },\n {\n duration: 0.3,\n delay: 0.2,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".dot-left, .dot-center, .dot-right\",\n { x: 0, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M5 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"\n className=\"dot-left\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n <motion.path\n d=\"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"\n className=\"dot-center\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n <motion.path\n d=\"M19 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"\n className=\"dot-right\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nDotsHorizontalIcon.displayName = \"DotsHorizontalIcon\";\nexport default DotsHorizontalIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DotsVerticalIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".dot-top\",\n {\n y: [-2, 0],\n scale: [1, 1.2, 1],\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".dot-middle\",\n {\n scale: [1, 1.3, 1],\n },\n {\n duration: 0.3,\n delay: 0.1,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".dot-bottom\",\n {\n y: [2, 0],\n scale: [1, 1.2, 1],\n },\n {\n duration: 0.3,\n delay: 0.2,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".dot-top, .dot-middle, .dot-bottom\",\n { y: 0, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"\n className=\"dot-middle\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n <motion.path\n d=\"M12 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"\n className=\"dot-bottom\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n <motion.path\n d=\"M12 5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"\n className=\"dot-top\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nDotsVerticalIcon.displayName = \"DotsVerticalIcon\";\nexport default DotsVerticalIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DoubleCheckIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".check-first\",\n {\n pathLength: [0, 1],\n opacity: [0, 1],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \".check-second\",\n {\n pathLength: [0, 1],\n opacity: [0, 1],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".check-first, .check-second\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 48)}\n strokeMiterlimit=\"10\"\n strokeLinecap=\"square\"\n >\n <motion.path\n className=\"check-first\"\n style={{ transformOrigin: \"19px 25px\" }}\n d=\"M3 26.4L11.8846 39L35 11\"\n />\n\n <motion.path\n className=\"check-second\"\n style={{ transformOrigin: \"33px 25px\" }}\n d=\"M45 11L21.8847 39L20.2098 36.6248\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nDoubleCheckIcon.displayName = \"DoubleCheckIcon\";\nexport default DoubleCheckIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DownChevron = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".chevron-down\",\n {\n y: [0, 6, 0],\n },\n {\n duration: 0.8,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".chevron-down\", { y: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"chevron-down\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M6 9l6 6l6 -6\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nDownChevron.displayName = \"DownChevron\";\nexport default DownChevron;\n","import { forwardRef, useImperativeHandle, useCallback, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DownloadIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const isAnimatingRef = useRef(false);\n\n const start = useCallback(async () => {\n if (isAnimatingRef.current) return;\n isAnimatingRef.current = true;\n\n while (isAnimatingRef.current) {\n // 1. Initial Arrow Drop through Tray\n animate(\n \".arrow-head\",\n { y: [0, 8, 8, -8, 0], opacity: [1, 0, 0, 0, 1] },\n {\n duration: 1,\n times: [0, 0.4, 0.5, 0.6, 1],\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \".arrow-stem\",\n { y: [0, 8, 8, -8, 0], opacity: [1, 0, 0, 0, 1] },\n {\n duration: 1,\n times: [0, 0.3, 0.4, 0.5, 1],\n ease: \"easeInOut\",\n },\n );\n\n if (!isAnimatingRef.current) break;\n\n // 2. Tray \"Weight\" Pulse\n await animate(\n \".tray\",\n { y: [0, 2, 0], scale: [1, 1.05, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n\n if (!isAnimatingRef.current) break;\n\n // Slight pause between cycles\n await new Promise((resolve) => setTimeout(resolve, 200));\n }\n }, [animate]);\n\n const stop = useCallback(() => {\n isAnimatingRef.current = false;\n animate(\n \".arrow-head, .arrow-stem, .tray\",\n { y: 0, opacity: 1, scale: 1 },\n { duration: 0.3 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Tray */}\n <motion.path\n className=\"tray\"\n d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"\n style={{ transformOrigin: \"center bottom\" }}\n />\n\n {/* Arrow Stem */}\n <motion.path\n className=\"arrow-stem\"\n d=\"M12 15V3\"\n style={{ transformOrigin: \"center\" }}\n />\n\n {/* Arrow Head */}\n <motion.path\n className=\"arrow-head\"\n d=\"m7 10 5 5 5-5\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nDownloadIcon.displayName = \"DownloadIcon\";\nexport default DownloadIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst DrumIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".sticks\",\n { y: [0, 3, 0, 3, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n animate(\n \".drum-body\",\n { scaleY: [1, 0.98, 1, 0.98, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n await animate(\n \".drum-top\",\n { scaleX: [1, 1.05, 1, 1.05, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".sticks, .drum-body, .drum-top\",\n { x: 0, y: 0, scaleX: 1, scaleY: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path className=\"sticks\" d=\"m2 2 8 8\" />\n <motion.path className=\"sticks\" d=\"m22 2-8 8\" />\n <motion.ellipse\n className=\"drum-top\"\n cx=\"12\"\n cy=\"9\"\n rx=\"10\"\n ry=\"5\"\n style={{ transformOrigin: \"12px 9px\" }}\n />\n <motion.path className=\"drum-body\" d=\"M7 13.4v7.9\" />\n <motion.path className=\"drum-body\" d=\"M12 14v8\" />\n <motion.path className=\"drum-body\" d=\"M17 13.4v7.9\" />\n <motion.path\n className=\"drum-body\"\n style={{ transformOrigin: \"12px 13px\" }}\n d=\"M2 9v8a10 5 0 0 0 20 0V9\"\n />\n </motion.svg>\n );\n },\n);\n\nDrumIcon.displayName = \"DrumIcon\";\nexport default DrumIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ExpandIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".arrows-tr\",\n { x: 2, y: -2 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".arrows-tl\",\n { x: -2, y: -2 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".arrows-br\",\n { x: 2, y: 2 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".arrows-bl\",\n { x: -2, y: 2 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n animate(\".corners\", { scale: 1.08 }, { duration: 0.25, ease: \"easeOut\" });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".arrows-tr, .arrows-tl, .arrows-br, .arrows-bl\",\n { x: 0, y: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n animate(\".corners\", { scale: 1 }, { duration: 0.2, ease: \"easeInOut\" });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path className=\"arrows-br\" d=\"m15 15 6 6\" />\n <motion.path className=\"arrows-tr\" d=\"m15 9 6-6\" />\n <motion.path className=\"corners arrows-br\" d=\"M21 16v5h-5\" />\n <motion.path className=\"corners arrows-tr\" d=\"M21 8V3h-5\" />\n <motion.path className=\"corners arrows-bl\" d=\"M3 16v5h5\" />\n <motion.path className=\"arrows-bl\" d=\"m3 21 6-6\" />\n <motion.path className=\"corners arrows-tl\" d=\"M3 8V3h5\" />\n <motion.path className=\"arrows-tl\" d=\"M9 9 3 3\" />\n </motion.svg>\n );\n },\n);\n\nExpandIcon.displayName = \"ExpandIcon\";\nexport default ExpandIcon;\n","\"use client\";\nimport { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ExternalLinkIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Arrow moves up and right (going external)\n animate(\n \".external-arrow\",\n {\n x: 2,\n y: -2,\n scale: 1.1,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n // Box slightly shrinks\n animate(\n \".external-box\",\n {\n scale: 0.95,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".external-arrow, .external-box\",\n {\n x: 0,\n y: 0,\n scale: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Box/window */}\n <motion.path\n d=\"M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6\"\n className=\"external-box\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n {/* Arrow pointing out */}\n <motion.g\n className=\"external-arrow\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <path d=\"M11 13l9 -9\" />\n <path d=\"M15 4h5v5\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nExternalLinkIcon.displayName = \"ExternalLinkIcon\";\nexport default ExternalLinkIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst EyeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Pupil contracts (blink effect)\n animate(\n \".eye-pupil\",\n {\n scale: 0.7,\n },\n {\n duration: 0.15,\n ease: \"easeOut\",\n },\n );\n\n // Eye shape slightly narrows\n animate(\n \".eye-shape\",\n {\n scaleY: 0.9,\n },\n {\n duration: 0.15,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".eye-pupil, .eye-shape\",\n {\n scale: 1,\n scaleY: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Pupil */}\n <motion.path\n d=\"M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0\"\n className=\"eye-pupil\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n {/* Eye shape */}\n <motion.path\n d=\"M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6\"\n className=\"eye-shape\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nEyeIcon.displayName = \"EyeIcon\";\nexport default EyeIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst EyeOffIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Strike-through line extends\n animate(\n \".eye-strike\",\n {\n pathLength: [0, 1],\n opacity: [0.5, 1],\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n // Eye parts fade slightly\n animate(\n \".eye-parts\",\n {\n opacity: 0.6,\n scale: 0.98,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".eye-strike, .eye-parts\",\n {\n pathLength: 1,\n opacity: 1,\n scale: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Eye parts */}\n <motion.g className=\"eye-parts\" style={{ transformOrigin: \"50% 50%\" }}>\n <path d=\"M10.585 10.587a2 2 0 0 0 2.829 2.828\" />\n <path d=\"M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87\" />\n </motion.g>\n\n {/* Strike-through line */}\n <motion.path\n d=\"M3 3l18 18\"\n className=\"eye-strike\"\n initial={{ pathLength: 1 }}\n />\n </motion.svg>\n );\n },\n);\n\nEyeOffIcon.displayName = \"EyeOffIcon\";\nexport default EyeOffIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst FacebookIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".fb-path\",\n { scale: [1, 0.9, 1.05, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n animate(\n \".fb-like\",\n { y: [-10, 0], opacity: [0, 1, 0] },\n { duration: 0.6, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".fb-path\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n animate(\n \".fb-like\",\n { scale: 1, y: 0, opacity: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"fb-path\"\n d=\"M7 10v4h3v7h4v-7h3l1 -4h-4v-2a1 1 0 0 1 1 -1h3v-4h-3a5 5 0 0 0 -5 5v2h-3\"\n style={{ transformOrigin: \"center\" }}\n />\n <motion.text\n className=\"fb-like\"\n x=\"12\"\n y=\"2\"\n textAnchor=\"middle\"\n fontSize=\"10\"\n fill={color}\n opacity={0}\n >\n 👍\n </motion.text>\n </motion.svg>\n );\n },\n);\n\nFacebookIcon.displayName = \"FacebookIcon\";\nexport default FacebookIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst FigmaIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".circle\",\n { rotate: [0, 360, 0] },\n { duration: 0.8, ease: \"easeInOut\" },\n );\n animate(\n \".layer1\",\n { x: [-1, 1, -1, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n animate(\n \".layer2\",\n { x: [1, -1, 1, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".circle, .layer1, .layer2\",\n { rotate: 0, x: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"circle\"\n style={{ transformOrigin: \"center\" }}\n d=\"M15 12m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0\"\n />\n <motion.path\n className=\"layer1\"\n d=\"M6 3m0 3a3 3 0 0 1 3 -3h6a3 3 0 0 1 3 3v0a3 3 0 0 1 -3 3h-6a3 3 0 0 1 -3 -3z\"\n />\n <motion.path\n className=\"layer2\"\n d=\"M9 9a3 3 0 0 0 0 6h3m-3 0a3 3 0 1 0 3 3v-15\"\n />\n </motion.svg>\n );\n },\n);\n\nFigmaIcon.displayName = \"FigmaIcon\";\nexport default FigmaIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst FileDescriptionIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".file-fold\",\n {\n pathLength: [0, 1],\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".file-lines\",\n {\n pathLength: [0, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".file-fold, .file-lines\",\n {\n pathLength: 1,\n },\n {\n duration: 0.2,\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path d=\"M14 3v4a1 1 0 0 0 1 1h4\" className=\"file-fold\" />\n\n <path d=\"M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z\" />\n\n <motion.path d=\"M9 17h6\" className=\"file-lines\" />\n <motion.path d=\"M9 13h6\" className=\"file-lines\" />\n </motion.svg>\n );\n },\n);\n\nFileDescriptionIcon.displayName = \"FileDescriptionIcon\";\nexport default FileDescriptionIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst FilledBellIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n ({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".bell\",\n {\n rotate: [0, -8, 6, -4, 2, 0],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".below-circle\",\n {\n rotate: [0, 20, -18, 12, -6, 0],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n delay: 0.05,\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".bell, .below-circle\",\n { rotate: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n className={`cursor-pointer ${className}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n className=\"below-circle\"\n style={{ transformOrigin: \"50% 0%\" }}\n d=\"M14.235 19c.865 0 1.322 1.024 .745 1.668a3.992 3.992 0 0 1 -2.98 1.332a3.992 3.992 0 0 1 -2.98 -1.332c-.552 -.616 -.158 -1.579 .634 -1.661l.11 -.006h4.471z\"\n />\n\n <motion.path\n className=\"bell\"\n style={{ transformOrigin: \"50% 10%\" }}\n d=\"M12 2c1.358 0 2.506 .903 2.875 2.141l.046 .171l.008 .043a8.013 8.013 0 0 1 4.024 6.069l.028 .287l.019 .289v2.931l.021 .136a3 3 0 0 0 1.143 1.847l.167 .117l.162 .099c.86 .487 .56 1.766 -.377 1.864l-.116 .006h-16c-1.028 0 -1.387 -1.364 -.493 -1.87a3 3 0 0 0 1.472 -2.063l.021 -.143l.001 -2.97a8 8 0 0 1 3.821 -6.454l.248 -.146l.01 -.043a3.003 3.003 0 0 1 2.562 -2.29l.182 -.017l.176 -.004z\"\n />\n </motion.svg>\n );\n },\n);\n\nFilledBellIcon.displayName = \"FilledBellIcon\";\nexport default FilledBellIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst FilledCheckedIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, className = \"\", color = \"currentColor\", strokeWidth = \"1\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \"svg\",\n {\n scale: 1.1,\n },\n {\n duration: 0.1,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".filled-circle\",\n {\n scale: 1.15,\n opacity: 0.8,\n },\n {\n duration: 0.15,\n ease: \"easeOut\",\n },\n );\n await animate(\n \".check-icon\",\n {\n pathLength: 0,\n },\n {\n duration: 0.1,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".filled-circle\",\n {\n scale: 1,\n opacity: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n await animate(\n \".check-icon\",\n {\n pathLength: 1,\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n await animate(\n \"svg\",\n {\n scale: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \"svg, .filled-circle, .check-icon\",\n { scale: 1, opacity: 1, pathLength: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div ref={scope} onHoverStart={start} onHoverEnd={stop}>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n stroke={color || \"currentColor\"}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={className}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n d=\"M17 3.34a10 10 0 1 1 -14.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 14.995 -8.336z\"\n className={`filled-circle ${className}`}\n style={{ transformOrigin: \"center\" }}\n />\n <motion.path\n d=\"M15.707 9.293a1 1 0 0 0 -1.32 -.083l-.094 .083l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.403 1.403l.083 .094l2 2l.094 .083a1 1 0 0 0 1.226 0l.094 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z\"\n className=\"check-icon text-background\"\n fill=\"currentColor\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nFilledCheckedIcon.displayName = \"FilledCheckedIcon\";\nexport default FilledCheckedIcon;\n","import { forwardRef, useImperativeHandle, useCallback, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst FilterIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const isAnimatingRef = useRef(false);\n\n const start = useCallback(async () => {\n if (isAnimatingRef.current) return;\n isAnimatingRef.current = true;\n\n // Filtering Loop\n while (isAnimatingRef.current) {\n // 1. Swarm of Input Particles (8-10 entering)\n const inParticles = Array.from({ length: 8 }).map(\n (_, i) => `.p-in-${i}`,\n );\n inParticles.forEach((selector, i) => {\n animate(\n selector,\n { y: [-4, 8], opacity: [0, 1, 0], scale: [0.3, 0.8, 0.3] },\n { duration: 0.8, delay: i * 0.1, ease: \"easeIn\" },\n );\n });\n\n // 2. Wait for \"processing\"\n await new Promise((resolve) => setTimeout(resolve, 600));\n if (!isAnimatingRef.current) break;\n\n // 3. Output Particles (2 emerge from bottom)\n const outParticles = [\".p-out-1\", \".p-out-2\"];\n\n // Sync Neck Pump with output\n animate(\n \".funnel\",\n {\n scale: [1, 1.1, 1],\n strokeWidth: [strokeWidth, strokeWidth + 0.8, strokeWidth],\n },\n { duration: 0.4, ease: \"backOut\" },\n );\n\n outParticles.forEach((selector, i) => {\n animate(\n selector,\n { y: [14, 22], opacity: [0, 1, 0], scale: [0.5, 1, 0.5] },\n { duration: 0.6, delay: i * 0.2, ease: \"easeOut\" },\n );\n });\n\n await new Promise((resolve) => setTimeout(resolve, 1000));\n if (!isAnimatingRef.current) break;\n }\n }, [animate, strokeWidth]);\n\n const stop = useCallback(() => {\n isAnimatingRef.current = false;\n animate(\n \".funnel\",\n { rotate: 0, scale: 1, strokeWidth },\n { duration: 0.3 },\n );\n animate(\n \"[class^='p-in'], [class^='p-out']\",\n { opacity: 0 },\n { duration: 0.3 },\n );\n }, [animate, strokeWidth]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"funnel\"\n d=\"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z\"\n style={{ transformOrigin: \"12px 14px\" }}\n />\n\n {/* Input Swarm (8 Particles) */}\n <motion.circle\n className=\"p-in-0\"\n cx=\"12\"\n cy=\"0\"\n r=\"0.5\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n <motion.circle\n className=\"p-in-1\"\n cx=\"8\"\n cy=\"-1\"\n r=\"0.4\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n <motion.circle\n className=\"p-in-2\"\n cx=\"16\"\n cy=\"-2\"\n r=\"0.6\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n <motion.circle\n className=\"p-in-3\"\n cx=\"10\"\n cy=\"1\"\n r=\"0.4\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n <motion.circle\n className=\"p-in-4\"\n cx=\"14\"\n cy=\"0\"\n r=\"0.5\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n <motion.circle\n className=\"p-in-5\"\n cx=\"7\"\n cy=\"2\"\n r=\"0.3\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n <motion.circle\n className=\"p-in-6\"\n cx=\"17\"\n cy=\"1\"\n r=\"0.4\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n <motion.circle\n className=\"p-in-7\"\n cx=\"12\"\n cy=\"-3\"\n r=\"0.5\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n\n {/* Output Stream (2 Filtered Particles) */}\n <motion.circle\n className=\"p-out-1\"\n cx=\"12\"\n cy=\"0\"\n r=\"1.2\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n <motion.circle\n className=\"p-out-2\"\n cx=\"12\"\n cy=\"0\"\n r=\"1\"\n fill={color}\n stroke=\"none\"\n opacity={0}\n />\n </motion.svg>\n );\n },\n);\n\nFilterIcon.displayName = \"FilterIcon\";\nexport default FilterIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst FlameIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".flame-group\",\n {\n y: [0, -2, -1, -2, 0],\n rotate: [0, 4, -3, 2, 0],\n x: [0, 1, -1, 0.5, 0],\n },\n {\n duration: 0.6,\n ease: \"easeOut\",\n },\n );\n };\n\n const stop = () => {\n animate(\n \".flame-group\",\n { x: 0, y: 0, rotate: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.g\n className=\"flame-group\"\n style={{\n transformOrigin: \"50% 100%\",\n transformBox: \"fill-box\",\n }}\n >\n <motion.path d=\"M12 10.941c2.333 -3.308 .167 -7.823 -1 -8.941c0 3.395 -2.235 5.299 -3.667 6.706c-1.43 1.408 -2.333 3.621 -2.333 5.588c0 3.704 3.134 6.706 7 6.706s7 -3.002 7 -6.706c0 -1.712 -1.232 -4.403 -2.333 -5.588c-2.084 3.353 -3.257 3.353 -4.667 2.235\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nFlameIcon.displayName = \"FlameIcon\";\nexport default FlameIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst FocusIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\".center\", { scale: 1.4 }, { duration: 0.25, ease: \"easeOut\" });\n\n animate(\".corners\", { scale: 0.85 }, { duration: 0.25, ease: \"easeOut\" });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".center, .corners\",\n { scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.circle\n className=\"center\"\n cx=\"12\"\n cy=\"12\"\n r=\"3\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n <motion.path className=\"corners\" d=\"M3 7V5a2 2 0 0 1 2-2h2\" />\n <motion.path className=\"corners\" d=\"M17 3h2a2 2 0 0 1 2 2v2\" />\n <motion.path className=\"corners\" d=\"M21 17v2a2 2 0 0 1-2 2h-2\" />\n <motion.path className=\"corners\" d=\"M7 21H5a2 2 0 0 1-2-2v-2\" />\n </motion.svg>\n );\n },\n);\n\nFocusIcon.displayName = \"FocusIcon\";\nexport default FocusIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GamepadIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Body scale pulse\n animate(\n scope.current,\n { scale: 1.05 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n\n // D-pad shake\n animate(\n \".gamepad-dpad\",\n {\n x: [0, -0.5, 0.5, -0.5, 0],\n y: [0, 0.5, -0.5, 0.5, 0],\n },\n { duration: 0.4, repeat: Infinity, ease: \"linear\" },\n );\n\n // Buttons alternate pulse\n animate(\n \".gamepad-dot-1\",\n { opacity: [1, 0.4, 1], scale: [1, 1.2, 1] },\n { duration: 0.6, repeat: Infinity, ease: \"easeInOut\" },\n );\n animate(\n \".gamepad-dot-2\",\n { opacity: [1, 0.4, 1], scale: [1, 1.2, 1] },\n { duration: 0.6, repeat: Infinity, ease: \"easeInOut\", delay: 0.3 },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(scope.current, { scale: 1 }, { duration: 0.2 });\n animate(\".gamepad-dpad\", { x: 0, y: 0 }, { duration: 0.2 });\n animate(\".gamepad-dot-1\", { opacity: 1, scale: 1 }, { duration: 0.2 });\n animate(\".gamepad-dot-2\", { opacity: 1, scale: 1 }, { duration: 0.2 });\n }, [animate, scope]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Body */}\n <path d=\"M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z\" />\n\n {/* D-pad Group */}\n <motion.g className=\"gamepad-dpad\">\n <line x1=\"6\" x2=\"10\" y1=\"11\" y2=\"11\" />\n <line x1=\"8\" x2=\"8\" y1=\"9\" y2=\"13\" />\n </motion.g>\n\n {/* Buttons */}\n <motion.line\n className=\"gamepad-dot-1\"\n x1=\"15\"\n x2=\"15.01\"\n y1=\"12\"\n y2=\"12\"\n style={{ transformOrigin: \"15px 12px\" }}\n />\n <motion.line\n className=\"gamepad-dot-2\"\n x1=\"18\"\n x2=\"18.01\"\n y1=\"10\"\n y2=\"10\"\n style={{ transformOrigin: \"18px 10px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nGamepadIcon.displayName = \"GamepadIcon\";\nexport default GamepadIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GaugeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".needle\",\n { rotate: [0, 45, -20, 30, 0] },\n { duration: 0.8, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".needle\", { rotate: 0 }, { duration: 0.3, ease: \"easeInOut\" });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path d=\"M3.34 19a10 10 0 1 1 17.32 0\" />\n <motion.path\n className=\"needle\"\n style={{ transformOrigin: \"12px 14px\" }}\n d=\"m12 14 4-4\"\n />\n </motion.svg>\n );\n },\n);\n\nGaugeIcon.displayName = \"GaugeIcon\";\nexport default GaugeIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GearIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = () => {\n animate(\".gear-body\", { scale: [1, 1.02, 1] }, { duration: 0.6 });\n\n animate(\n \".gear-center\",\n { scale: [1, 1.1, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n\n animate(\n \".gear-rotator\",\n { rotate: 360 },\n { duration: 0.9, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".gear-rotator\", { rotate: 0 }, { duration: 0.2 });\n animate(\".gear-center\", { scale: 1 }, { duration: 0.2 });\n animate(\".gear-body\", { scale: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n strokeMiterlimit=\"10\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Rotating group */}\n <motion.g\n className=\"gear-rotator\"\n style={{\n transformOrigin: \"50% 50%\",\n transformBox: \"fill-box\",\n }}\n >\n <motion.circle className=\"gear-center\" cx=\"16\" cy=\"16\" r=\"5\" />\n\n <motion.path\n className=\"gear-body\"\n d=\"m30,17.5v-3l-3.388-1.355c-.25-.933-.617-1.815-1.089-2.633l1.436-3.351-2.121-2.121-3.351,1.436c-.817-.472-1.7-.838-2.633-1.089l-1.355-3.388h-3l-1.355,3.388c-.933.25-1.815.617-2.633,1.089l-3.351-1.436-2.121,2.121 1.436,3.351c-.472.817-.838,1.7-1.089,2.633l-3.388,1.355v3l3.388,1.355c.25.933.617,1.815,1.089,2.633l-1.436,3.351 2.121,2.121 3.351-1.436c.817.472 1.7.838 2.633,1.089l1.355,3.388h3l1.355-3.388c.933-.25 1.815-.617 2.633-1.089l3.351,1.436 2.121-2.121-1.436-3.351c.472-.817.838-1.7 1.089-2.633l3.388-1.355Z\"\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nGearIcon.displayName = \"GearIcon\";\nexport default GearIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GhostIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // floating + wiggle\n animate(\n \".ghost-body\",\n {\n y: [0, -8, -4, -8, 0],\n rotate: [0, -3, 3, -2, 0],\n },\n { duration: 1.2, ease: \"easeInOut\" },\n );\n\n // eyes blink\n animate(\n \".ghost-eye\",\n {\n scaleY: [1, 0.1, 1, 0.1, 1],\n scaleX: [1, 1.2, 1, 1.2, 1],\n },\n { duration: 0.8, ease: \"easeInOut\" },\n );\n\n // wavy bottom\n await animate(\n \".ghost-body\",\n { scaleX: [1, 1.05, 0.98, 1.02, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".ghost-body\", { y: 0, rotate: 0, scaleX: 1 }, { duration: 0.2 });\n animate(\".ghost-eye\", { scaleX: 1, scaleY: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"ghost-body\"\n style={{ transformOrigin: \"12px 14px\" }}\n d=\"M5 11a7 7 0 0 1 14 0v7a1.78 1.78 0 0 1 -3.1 1.4a1.65 1.65 0 0 0 -2.6 0a1.65 1.65 0 0 1 -2.6 0a1.65 1.65 0 0 0 -2.6 0a1.78 1.78 0 0 1 -3.1 -1.4v-7\"\n />\n <motion.path\n className=\"ghost-eye\"\n style={{ transformOrigin: \"10px 10px\" }}\n d=\"M10 10h.01\"\n />\n <motion.path\n className=\"ghost-eye\"\n style={{ transformOrigin: \"14px 10px\" }}\n d=\"M14 10h.01\"\n />\n </motion.svg>\n );\n },\n);\n\nGhostIcon.displayName = \"GhostIcon\";\n\nexport default GhostIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GithubCopilotIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".eye-left\",\n { scaleY: [1, 0.1, 1] },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\n \".eye-right\",\n { scaleY: [1, 0.1, 1] },\n { duration: 0.3, ease: \"easeInOut\", delay: 0.1 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".eye-left, .eye-right\",\n { scaleY: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M4 18v-5.5c0 -.667 .167 -1.333 .5 -2\" />\n <path d=\"M12 7.5c0 -1 -.01 -4.07 -4 -3.5c-3.5 .5 -4 2.5 -4 3.5c0 1.5 0 4 3 4c4 0 5 -2.5 5 -4z\" />\n <path d=\"M4 12c-1.333 .667 -2 1.333 -2 2c0 1 0 3 1.5 4c3 2 6.5 3 8.5 3s5.499 -1 8.5 -3c1.5 -1 1.5 -3 1.5 -4c0 -.667 -.667 -1.333 -2 -2\" />\n <path d=\"M20 18v-5.5c0 -.667 -.167 -1.333 -.5 -2\" />\n <path d=\"M12 7.5l0 -.297l.01 -.269l.027 -.298l.013 -.105l.033 -.215c.014 -.073 .029 -.146 .046 -.22l.06 -.223c.336 -1.118 1.262 -2.237 3.808 -1.873c2.838 .405 3.703 1.797 3.93 2.842l.036 .204c0 .033 .01 .066 .013 .098l.016 .185l0 .171l0 .49l-.015 .394l-.02 .271c-.122 1.366 -.655 2.845 -2.962 2.845c-3.256 0 -4.524 -1.656 -4.883 -3.081l-.053 -.242a3.865 3.865 0 0 1 -.036 -.235l-.021 -.227a3.518 3.518 0 0 1 -.007 -.215z\" />\n <motion.path\n className=\"eye-left\"\n d=\"M10 15v2\"\n style={{ transformOrigin: \"10px 16px\" }}\n />\n <motion.path\n className=\"eye-right\"\n d=\"M14 15v2\"\n style={{ transformOrigin: \"14px 16px\" }}\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nGithubCopilotIcon.displayName = \"GithubCopilotIcon\";\nexport default GithubCopilotIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GithubIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".github-icon\",\n { scale: [1, 1.1, 1], rotate: [0, -5, 5, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".github-icon\",\n { scale: 1, rotate: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"github-icon\" style={{ transformOrigin: \"center\" }}>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nGithubIcon.displayName = \"GithubIcon\";\n\nexport default GithubIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GitlabIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".gitlab-icon\",\n { scale: [1, 1.1, 1], rotate: [0, -5, 5, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".gitlab-icon\",\n { scale: 1, rotate: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.g\n className=\"gitlab-icon\"\n style={{ transformOrigin: \"center\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M21 14l-9 7l-9 -7l3 -11l3 7h6l3 -7z\" />\n </motion.g>\n </svg>\n </motion.div>\n );\n },\n);\n\nGitlabIcon.displayName = \"GitlabIcon\";\nexport default GitlabIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GlobeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animationControls.current.push(\n animate(\n \".globe-circle\",\n { rotate: 360 },\n { duration: 2, ease: \"linear\", repeat: Infinity },\n ),\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\".globe-circle\", { rotate: 0 }, { duration: 0.5 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 48)}\n strokeMiterlimit=\"10\"\n strokeLinecap=\"square\"\n >\n <motion.g\n className=\"globe-circle\"\n style={{ transformOrigin: \"23px 19px\" }}\n >\n <motion.path\n className=\"globe-continent-1\"\n d=\"M36.6225 22.1264C34.6145 19.2959 32.3651 15.7913 28.4377 17.3428C24.4307 18.9257 30.0493 23.15 25.2064 26.9189C22.1135 29.3259 22.8515 31.6477 23.9478 33\"\n />\n\n <motion.path\n className=\"globe-continent-2\"\n d=\"M14 30L15.336 28.0984C16.3999 26.5841 16.557 24.5077 15.7357 22.8151L15.5751 22.4842C14.5131 20.2955 15.1651 17.5604 17.0607 16.253L17.3292 16.0677C18.2109 15.4596 18.808 14.4478 18.9613 13.3023C19.1316 12.0291 18.7338 10.7433 17.8962 9.85981L15.3599 7.24048\"\n />\n\n <motion.path\n className=\"globe-continent-3\"\n d=\"M23.0628 5C22.3771 9.64991 27.3946 14.948 33.7332 10.0381\"\n />\n\n <motion.path\n className=\"globe-outline\"\n d=\"M23 33C30.732 33 37 26.732 37 19C37 11.268 30.732 5 23 5C15.268 5 9 11.268 9 19C9 26.732 15.268 33 23 33Z\"\n />\n </motion.g>\n\n <motion.path className=\"globe-stand-stem\" d=\"M23 43V38\" />\n\n <motion.path className=\"globe-stand-base\" d=\"M16 43H30\" />\n\n <motion.path\n className=\"globe-axis\"\n d=\"M38 3.99994L36.435 5.56491C43.855 12.9849 43.855 25.015 36.435 32.435C29.0151 39.8549 16.9849 39.8549 9.56497 32.435L7.99997 34\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nGlobeIcon.displayName = \"GlobeIcon\";\nexport default GlobeIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst GmailIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".envelope-top\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n await animate(\n \".envelope-flap\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.5, ease: \"easeOut\" },\n );\n animate(\n \".sides\",\n { scaleY: [0.95, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".envelope-top, .envelope-flap, .sides\",\n { pathLength: 1, opacity: 1, scaleY: 1 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"sides\"\n style={{ transformOrigin: \"center\" }}\n d=\"M16 20h3a1 1 0 0 0 1 -1v-14a1 1 0 0 0 -1 -1h-3v16z\"\n />\n <motion.path\n className=\"sides\"\n style={{ transformOrigin: \"center\" }}\n d=\"M5 20h3v-16h-3a1 1 0 0 0 -1 1v14a1 1 0 0 0 1 1z\"\n />\n <motion.path\n className=\"envelope-top\"\n initial={{ pathLength: 1, opacity: 1 }}\n d=\"M16 4l-4 4l-4 -4\"\n />\n <motion.path\n className=\"envelope-flap\"\n initial={{ pathLength: 1, opacity: 1 }}\n d=\"M4 6.5l8 7.5l8 -7.5\"\n />\n </motion.svg>\n );\n },\n);\n\nGmailIcon.displayName = \"GmailIcon\";\nexport default GmailIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate, stagger } from \"motion/react\";\n\nconst GolangIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \".speed-line\",\n { x: [0, -2, 0] },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n delay: stagger(0.1),\n repeat: 1,\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".speed-line\", { x: 0 }, { duration: 0.2 });\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* G */}\n <path d=\"M15.695 14.305c1.061 1.06 2.953 .888 4.226 -.384c1.272 -1.273 1.444 -3.165 .384 -4.226c-1.061 -1.06 -2.953 -.888 -4.226 .384c-1.272 1.273 -1.444 3.165 -.384 4.226z\" />\n {/* O */}\n <path d=\"M12.68 9.233c-1.084 -.497 -2.545 -.191 -3.591 .846c-1.284 1.273 -1.457 3.165 -.388 4.226c1.07 1.06 2.978 .888 4.261 -.384a3.669 3.669 0 0 0 1.038 -1.921h-2.427\" />\n\n {/* Speed lines - these animate */}\n <motion.path className=\"speed-line\" d=\"M5.5 15h-1.5\" />\n <motion.path className=\"speed-line\" d=\"M6 9h-2\" />\n <motion.path className=\"speed-line\" d=\"M5 12h-3\" />\n </motion.svg>\n );\n },\n);\n\nGolangIcon.displayName = \"GolangIcon\";\nexport default GolangIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst HandHeartIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".heart\",\n { scale: [1, 1.3, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n animate(\".hand\", { y: [0, 2, 0] }, { duration: 0.5, ease: \"easeInOut\" });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".heart, .hand\",\n { scale: 1, y: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.g className=\"hand\">\n <path d=\"M11 14h2a2 2 0 0 0 0-4h-3c-.6 0-1.1.2-1.4.6L3 16\" />\n <path d=\"m2 15 6 6\" />\n <path d=\"m7 20 1.6-1.4c.3-.4.8-.6 1.4-.6h4c1.1 0 2.1-.4 2.8-1.2l4.6-4.4a1 1 0 0 0-2.75-2.91\" />\n </motion.g>\n <motion.path\n className=\"heart\"\n style={{ transformOrigin: \"16px 8px\" }}\n d=\"m14.45 13.39 5.05-4.694C20.196 8 21 6.85 21 5.75a2.75 2.75 0 0 0-4.797-1.837.276.276 0 0 1-.406 0A2.75 2.75 0 0 0 11 5.75c0 1.2.802 2.248 1.5 2.946L16 11.95\"\n />\n </motion.svg>\n );\n },\n);\n\nHandHeartIcon.displayName = \"HandHeartIcon\";\nexport default HandHeartIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst HashtagIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Animate horizontal lines\n animate(\n \".line-horizontal\",\n {\n scaleX: 1.1,\n opacity: 0.7,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n // Animate vertical lines\n animate(\n \".line-vertical\",\n {\n scaleY: 1.1,\n opacity: 0.7,\n },\n {\n duration: 0.3,\n delay: 0.1,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".line-horizontal, .line-vertical\",\n {\n scaleX: 1,\n scaleY: 1,\n opacity: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Horizontal lines */}\n <motion.path className=\"line-horizontal\" d=\"M5 9l14 0\" />\n <motion.path className=\"line-horizontal\" d=\"M5 15l14 0\" />\n\n {/* Vertical lines */}\n <motion.path className=\"line-vertical\" d=\"M11 4l-4 16\" />\n <motion.path className=\"line-vertical\" d=\"M17 4l-4 16\" />\n </motion.svg>\n );\n },\n);\n\nHashtagIcon.displayName = \"HashtagIcon\";\nexport default HashtagIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst HeartIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".heart\",\n { scale: [1, 1.15, 1, 1.25, 1] },\n { duration: 0.6, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".heart\", { scale: 1 }, { duration: 0.2, ease: \"easeOut\" });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`${className} cursor-pointer`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"heart\"\n style={{ transformOrigin: \"50% 50%\" }}\n d=\"M19.5 12.572l-7.5 7.428l-7.5 -7.428a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572\"\n />\n </motion.svg>\n );\n },\n);\n\nHeartIcon.displayName = \"HeartIcon\";\n\nexport default HeartIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst HistoryCircleIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // rewind circle slightly\n animate(\n \".history-circle\",\n {\n rotate: -45,\n pathLength: [1, 0.75],\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n\n // clock hand ticks back\n animate(\n \".clock-hand\",\n {\n rotate: -30,\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".history-circle, .clock-hand\",\n {\n rotate: 0,\n pathLength: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* clock hand */}\n <motion.path\n d=\"M12 8l0 4l2 2\"\n className=\"clock-hand\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n {/* history circle */}\n <motion.path\n d=\"M3.05 11a9 9 0 1 1 .5 4m-.5 5v-5h5\"\n className=\"history-circle\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nHistoryCircleIcon.displayName = \"HistoryCircleIcon\";\nexport default HistoryCircleIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst HomeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".roof\",\n { y: [-2, 0], opacity: [0.6, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n await animate(\n \".house\",\n { scale: [0.95, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n animate(\".door\", { scaleY: [0, 1] }, { duration: 0.3, ease: \"easeOut\" });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".roof, .house, .door\",\n { y: 0, opacity: 1, scale: 1, scaleY: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path className=\"roof\" d=\"M5 12l-2 0l9 -9l9 9l-2 0\" />\n <motion.path\n className=\"house\"\n style={{ transformOrigin: \"center\" }}\n d=\"M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7\"\n />\n <motion.path\n className=\"door\"\n style={{ transformOrigin: \"center bottom\" }}\n d=\"M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6\"\n />\n </motion.svg>\n );\n },\n);\n\nHomeIcon.displayName = \"HomeIcon\";\nexport default HomeIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst HotelIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \".building\",\n { scaleY: [1, 1.2, 1], y: [0, -2, 0] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".building\",\n { scaleY: 1, y: 0 },\n { duration: 0.3, ease: \"easeIn\" },\n );\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"building\"\n d=\"M4.75 6.75h1m-1 4h1m-1 4h1m10-8h1m-1 4h1m-1 4h1M12.75 20.75v-4a2 2 0 0 0-4 0v4M.75 2.75h6c.64-1.173 2.19-2 4-2s3.36.827 4 2h6\"\n ></motion.path>\n <motion.path\n className=\"building\"\n d=\"M8.75 5.75v2m0 2v-2m0 0h4v-2 4\"\n ></motion.path>\n <motion.path\n className=\"building\"\n d=\"M1.75 3.75v16c0 .943 0 1.414.293 1.707s.764.293 1.707.293h14c.943 0 1.414 0 1.707-.293s.293-.764.293-1.707v-16\"\n ></motion.path>\n </motion.svg>\n );\n },\n);\n\nHotelIcon.displayName = \"HotelIcon\";\nexport default HotelIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst InfoCircleIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".info-circle-i\",\n {\n pathLength: [0, 1],\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".info-line-i\",\n {\n pathLength: [0, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".info-circle-i, .info-line-i\",\n { pathLength: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n d=\"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0\"\n className=\"info-circle\"\n />\n <motion.path d=\"M12 9h.01\" className=\"info-circle-i\" />\n <motion.path d=\"M11 12h1v4h1\" className=\"info-line-i\" />\n </motion.svg>\n );\n },\n);\n\nInfoCircleIcon.displayName = \"InfoCircleIcon\";\nexport default InfoCircleIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst InstagramIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".ig-body\",\n { scale: [1, 1.05, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n await animate(\n \".ig-lens\",\n { scale: [1, 1.2, 1] },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".ig-dot\",\n { opacity: [1, 0, 1] },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".ig-body, .ig-lens, .ig-dot\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.path\n className=\"ig-body\"\n style={{ transformOrigin: \"50% 50%\" }}\n d=\"M4 8a4 4 0 0 1 4 -4h8a4 4 0 0 1 4 4v8a4 4 0 0 1 -4 4h-8a4 4 0 0 1 -4 -4z\"\n />\n\n <motion.path\n className=\"ig-lens\"\n style={{ transformOrigin: \"50% 50%\" }}\n d=\"M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0\"\n />\n\n <motion.path className=\"ig-dot\" d=\"M16.5 7.5v.01\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nInstagramIcon.displayName = \"InstagramIcon\";\nexport default InstagramIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst JavascriptIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".js-text\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.6, ease: \"easeOut\" },\n );\n await animate(\n \".border\",\n { rotate: [0, 5, -5, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".js-text, .border\",\n { pathLength: 1, opacity: 1, rotate: 0 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"border\"\n style={{ transformOrigin: \"center\" }}\n d=\"M20 4l-2 14.5l-6 2l-6 -2l-2 -14.5z\"\n />\n <motion.path\n className=\"js-text\"\n initial={{ pathLength: 1, opacity: 1 }}\n d=\"M7.5 8h3v8l-2 -1\"\n />\n <motion.path\n className=\"js-text\"\n initial={{ pathLength: 1, opacity: 1 }}\n d=\"M16.5 8h-2.5a.5 .5 0 0 0 -.5 .5v3a.5 .5 0 0 0 .5 .5h1.423a.5 .5 0 0 1 .495 .57l-.418 2.93l-2 .5\"\n />\n </motion.svg>\n );\n },\n);\n\nJavascriptIcon.displayName = \"JavascriptIcon\";\nexport default JavascriptIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst KeyframesIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".frame-1\",\n { x: [0, -2, 0] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n animate(\n \".frame-2\",\n { x: [0, 2, 0] },\n { duration: 0.4, ease: \"easeInOut\", delay: 0.1 },\n );\n animate(\n \".frame-3\",\n { x: [0, 4, 0] },\n { duration: 0.4, ease: \"easeInOut\", delay: 0.2 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".frame-1, .frame-2, .frame-3\",\n { x: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"frame-1\"\n d=\"M9.225 18.412a1.595 1.595 0 0 1 -1.225 .588c-.468 0 -.914 -.214 -1.225 -.588l-4.361 -5.248a1.844 1.844 0 0 1 0 -2.328l4.361 -5.248a1.595 1.595 0 0 1 1.225 -.588c.468 0 .914 .214 1.225 .588l4.361 5.248a1.844 1.844 0 0 1 0 2.328l-4.361 5.248z\"\n />\n <motion.path\n className=\"frame-2\"\n d=\"M17 5l4.586 5.836a1.844 1.844 0 0 1 0 2.328l-4.586 5.836\"\n />\n <motion.path\n className=\"frame-3\"\n d=\"M13 5l4.586 5.836a1.844 1.844 0 0 1 0 2.328l-4.586 5.836\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nKeyframesIcon.displayName = \"KeyframesIcon\";\nexport default KeyframesIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LayersIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".top-block\",\n { x: -20 },\n { duration: 0.4, ease: [0.4, 0, 0.2, 1] },\n );\n };\n\n const stop = async () => {\n await animate(\n \".top-block\",\n { x: 0 },\n { duration: 0.4, ease: [0.4, 0, 0.2, 1] },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n width={size}\n height={size}\n viewBox=\"0 0 120 120\"\n fill=\"none\"\n strokeWidth={strokeWidth}\n xmlns=\"http://www.w3.org/2000/svg\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Top block */}\n <motion.rect\n className=\"top-block\"\n x=\"44\"\n y=\"22\"\n width=\"56\"\n height=\"36\"\n rx=\"10\"\n fill={color}\n />\n\n {/* Bottom block */}\n <rect x=\"20\" y=\"62\" width=\"64\" height=\"40\" rx=\"12\" fill={color} />\n </motion.svg>\n );\n },\n);\n\nLayersIcon.displayName = \"LayersIcon\";\n\nexport default LayersIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LayoutBottombarCollapseIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(({ size = 24, color = \"currentColor\", className = \"\" }, ref) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".chevron\",\n {\n y: 2,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".bottombar\",\n {\n opacity: 0.6,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".chevron, .bottombar\",\n {\n y: 0,\n opacity: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={color}\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <path d=\"M18 3a3 3 0 0 1 2.995 2.824l.005 .176v12a3 3 0 0 1 -2.824 2.995l-.176 .005h-12a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-12a3 3 0 0 1 2.824 -2.995l.176 -.005h12zm0 2h-12a1 1 0 0 0 -.993 .883l-.007 .117v9h14v-9a1 1 0 0 0 -.883 -.993l-.117 -.007z\" />\n\n <motion.g className=\"chevron\">\n <path d=\"M10.613 8.21l.094 .083l1.293 1.292l1.293 -1.292a1 1 0 0 1 1.32 -.083l.094 .083a1 1 0 0 1 .083 1.32l-.083 .094l-2 2a1 1 0 0 1 -1.32 .083l-.094 -.083l-2 -2a1 1 0 0 1 1.32 -1.497z\" />\n </motion.g>\n </motion.svg>\n );\n});\n\nLayoutBottombarCollapseIcon.displayName = \"LayoutBottombarCollapseIcon\";\nexport default LayoutBottombarCollapseIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LayoutDashboardIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", strokeWidth = 2, color = \"currentColor\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\".rect-1\", { x: 10 }, { duration: 0.3, ease: \"easeInOut\" });\n\n animate(\n \".rect-2\",\n { y: 12, x: -1 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\".rect-3\", { x: -10 }, { duration: 0.3, ease: \"easeInOut\" });\n animate(\n \".rect-4\",\n { y: -12, x: 1 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n };\n\n const stop = async () => {\n animate(\n \".rect-1, .rect-2, .rect-3, .rect-4\",\n { scale: 1, x: 0, y: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n color={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n initial={{ x: 0, y: 0 }}\n >\n <motion.rect\n initial={{ x: 0, y: 0 }}\n className=\"rect-1\"\n width=\"7\"\n height=\"9\"\n x=\"3\"\n y=\"3\"\n rx=\"1\"\n />\n <motion.rect\n initial={{ x: 0, y: 0 }}\n className=\"rect-2\"\n width=\"7\"\n height=\"5\"\n x=\"14\"\n y=\"3\"\n rx=\"1\"\n />\n <motion.rect\n initial={{ x: 0, y: 0 }}\n className=\"rect-3\"\n width=\"7\"\n height=\"9\"\n x=\"14\"\n y=\"12\"\n rx=\"1\"\n />\n <motion.rect\n initial={{ x: 0, y: 0 }}\n className=\"rect-4\"\n width=\"7\"\n height=\"5\"\n x=\"3\"\n y=\"16\"\n rx=\"1\"\n />\n </motion.svg>\n );\n },\n);\n\nLayoutDashboardIcon.displayName = \"LayoutDashboardIcon\";\n\nexport default LayoutDashboardIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport { motion, useAnimate } from \"motion/react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\n\nconst LayoutSidebarRightCollapseIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n animate(\n \".chevron\",\n { x: [0, 2, 0], opacity: [1, 0.7, 1] },\n { duration: 1.5 },\n );\n animate(\".sidebar\", { x: [0, 2, 0] }, { duration: 2 });\n };\n\n const stop = () => {\n animate(\".chevron\", { x: 0, opacity: 1 }, { duration: 0.2 });\n animate(\".sidebar\", { x: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => {\n return {\n startAnimation: start,\n stopAnimation: stop,\n };\n });\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z\" />\n <motion.path className=\"sidebar\" d=\"M15 4v16\" />\n <motion.path className=\"chevron\" d=\"M9 10l2 2l-2 2\" />\n </motion.svg>\n );\n },\n);\n\nLayoutSidebarRightCollapseIcon.displayName = \"LayoutSidebarRightCollapseIcon\";\n\nexport default LayoutSidebarRightCollapseIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LayoutSidebarRightIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Animate the sidebar divider\n animate(\n \".sidebar\",\n {\n x: 2,\n scaleX: 1.1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n\n // Pulse the container\n animate(\n \".container\",\n {\n scale: 1.02,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".sidebar, .container\",\n {\n x: 0,\n scaleX: 1,\n scale: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Container */}\n <motion.path\n className=\"container\"\n d=\"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z\"\n />\n\n {/* Sidebar divider */}\n <motion.path className=\"sidebar\" d=\"M15 4l0 16\" />\n </motion.svg>\n );\n },\n);\n\nLayoutSidebarRightIcon.displayName = \"LayoutSidebarRightIcon\";\nexport default LayoutSidebarRightIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterAIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Left leg rises from ground\n animate(\n \".leg-left\",\n { y: [10, 0], opacity: [0, 1] },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n // Right leg rises from ground\n animate(\n \".leg-right\",\n { y: [10, 0], opacity: [0, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.1 },\n );\n\n // Crossbar appears with flash\n animate(\n \".crossbar\",\n { scaleX: [0, 1.2, 1], opacity: [0, 1] },\n { duration: 0.3, ease: \"easeOut\", delay: 0.2 },\n );\n };\n\n const stop = () => {\n animate(\".leg-left, .leg-right\", { y: 0, opacity: 1 }, { duration: 0.2 });\n animate(\".crossbar\", { scaleX: 1, opacity: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Left leg of A */}\n <motion.path\n className=\"leg-left\"\n d=\"M12 4L6 20\"\n style={{ transformOrigin: \"6px 20px\" }}\n />\n {/* Right leg of A */}\n <motion.path\n className=\"leg-right\"\n d=\"M12 4L18 20\"\n style={{ transformOrigin: \"18px 20px\" }}\n />\n {/* Crossbar */}\n <motion.path\n className=\"crossbar\"\n d=\"M8 14H16\"\n style={{ transformOrigin: \"12px 14px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterAIcon.displayName = \"LetterAIcon\";\nexport default LetterAIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterBIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Bounce animation\n animate(\n \".b-group\",\n { x: [0, 2, -1, 1, 0] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".b-group\", { x: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"b-group\">\n <motion.path d=\"M7 20v-16h6a4 4 0 0 1 0 8a4 4 0 0 1 0 8h-6\" />\n <motion.path d=\"M7 12l6 0\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nLetterBIcon.displayName = \"LetterBIcon\";\nexport default LetterBIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterCIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Pac-man chomp animation - rotate the C to simulate chomping\n await animate(\n \".c-shape\",\n { rotate: [0, 15, -15, 10, -10, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".c-shape\", { rotate: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"c-shape\"\n d=\"M19 6C17.5 4.5 15 3.5 12 3.5C7.02944 3.5 3 7.52944 3 12.5C3 17.4706 7.02944 21.5 12 21.5C15 21.5 17.5 20.5 19 19\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterCIcon.displayName = \"LetterCIcon\";\nexport default LetterCIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterDIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Door swing animation - slight 3D rotation\n animate(\n \".d-shape\",\n { rotateY: [0, -20, 0], scaleX: [1, 0.9, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".d-shape\", { rotateY: 0, scaleX: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\", perspective: \"100px\" }}\n >\n <motion.path\n className=\"d-shape\"\n d=\"M7 4h6a5 5 0 0 1 5 5v6a5 5 0 0 1 -5 5h-6v-16\"\n style={{ transformOrigin: \"7px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterDIcon.displayName = \"LetterDIcon\";\nexport default LetterDIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterEIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Top arm extends\n animate(\n \".arm-top\",\n { scaleX: [0.3, 1.1, 1] },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n // Middle arm extends\n animate(\n \".arm-middle\",\n { scaleX: [0.3, 1.1, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.1 },\n );\n\n // Bottom arm extends\n animate(\n \".arm-bottom\",\n { scaleX: [0.3, 1.1, 1] },\n { duration: 0.25, ease: \"easeOut\", delay: 0.2 },\n );\n };\n\n const stop = () => {\n animate(\n \".arm-top, .arm-middle, .arm-bottom\",\n { scaleX: 1 },\n { duration: 0.2 },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Vertical stem */}\n <motion.path d=\"M6 4V20\" />\n\n {/* Top arm */}\n <motion.path\n className=\"arm-top\"\n d=\"M6 4H18\"\n style={{ transformOrigin: \"6px 4px\" }}\n />\n\n {/* Middle arm */}\n <motion.path\n className=\"arm-middle\"\n d=\"M6 12H16\"\n style={{ transformOrigin: \"6px 12px\" }}\n />\n\n {/* Bottom arm */}\n <motion.path\n className=\"arm-bottom\"\n d=\"M6 20H18\"\n style={{ transformOrigin: \"6px 20px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterEIcon.displayName = \"LetterEIcon\";\nexport default LetterEIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterFIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Flag wave animation - both arms wave like a flag\n animate(\n \".arm-top\",\n { rotate: [0, 5, -3, 4, -2, 0], y: [0, -1, 1, -0.5, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n\n animate(\n \".arm-middle\",\n { rotate: [0, 4, -2, 3, -1, 0], y: [0, -0.5, 0.5, -0.3, 0] },\n { duration: 0.6, ease: \"easeInOut\", delay: 0.05 },\n );\n };\n\n const stop = () => {\n animate(\".arm-top, .arm-middle\", { rotate: 0, y: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Vertical stem */}\n <motion.path d=\"M6 4V20\" />\n\n {/* Top arm (flag) */}\n <motion.path\n className=\"arm-top\"\n d=\"M6 4H18\"\n style={{ transformOrigin: \"6px 4px\" }}\n />\n\n {/* Middle arm */}\n <motion.path\n className=\"arm-middle\"\n d=\"M6 12H14\"\n style={{ transformOrigin: \"6px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterFIcon.displayName = \"LetterFIcon\";\nexport default LetterFIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterGIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // G swings with the arm sliding in\n animate(\n \".g-shape\",\n { rotate: [0, 5, -3, 2, 0] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".g-shape\", { rotate: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"g-shape\"\n d=\"M18 9a5 5 0 0 0 -5 -5h-2a5 5 0 0 0 -5 5v6a5 5 0 0 0 5 5h2a5 5 0 0 0 5 -5v-2h-4\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterGIcon.displayName = \"LetterGIcon\";\nexport default LetterGIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterHIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Handshake shake animation\n animate(\n \".h-group\",\n { x: [0, 2, -2, 1.5, -1, 0] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".h-group\", { x: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"h-group\">\n <motion.path d=\"M17 4l0 16\" />\n <motion.path d=\"M7 12l10 0\" />\n <motion.path d=\"M7 4l0 16\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nLetterHIcon.displayName = \"LetterHIcon\";\nexport default LetterHIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterIIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Pillar drop - I drops down and bounces\n animate(\n \".i-shape\",\n { y: [0, 3, -1, 1, 0], scaleY: [1, 0.95, 1.02, 0.99, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".i-shape\", { y: 0, scaleY: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"i-shape\"\n d=\"M8 4H16M12 4V20M8 20H16\"\n style={{ transformOrigin: \"12px 20px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterIIcon.displayName = \"LetterIIcon\";\nexport default LetterIIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterJIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Fishing hook swings side to side\n animate(\n \".j-hook\",\n { rotate: [0, 15, -15, 10, -10, 5, 0] },\n { duration: 0.7, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".j-hook\", { rotate: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"j-hook\" style={{ transformOrigin: \"14px 4px\" }}>\n {/* Top serif */}\n <motion.path d=\"M10 4H18\" />\n\n {/* Stem */}\n <motion.path d=\"M14 4V16\" />\n\n {/* Hook curve */}\n <motion.path d=\"M14 16C14 18.2091 12.2091 20 10 20H8\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nLetterJIcon.displayName = \"LetterJIcon\";\nexport default LetterJIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterKIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Upper arm kicks up\n animate(\n \".arm-upper\",\n { rotate: [0, -20, 0], x: [0, 3, 0] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n\n // Lower arm (leg) kicks down\n animate(\n \".arm-lower\",\n { rotate: [0, 20, 0], x: [0, 3, 0] },\n { duration: 0.3, ease: \"easeOut\", delay: 0.1 },\n );\n };\n\n const stop = () => {\n animate(\".arm-upper, .arm-lower\", { rotate: 0, x: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Vertical stem */}\n <motion.path d=\"M6 4V20\" />\n\n {/* Upper arm - kicks up */}\n <motion.path\n className=\"arm-upper\"\n d=\"M6 12L18 4\"\n style={{ transformOrigin: \"6px 12px\" }}\n />\n\n {/* Lower arm (leg) - kicks down */}\n <motion.path\n className=\"arm-lower\"\n d=\"M6 12L18 20\"\n style={{ transformOrigin: \"6px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterKIcon.displayName = \"LetterKIcon\";\nexport default LetterKIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterLIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Boot stomp - horizontal part drops down with impact\n await animate(\n \".l-base\",\n { y: [0, -3, 5, -2, 0], scaleY: [1, 1.1, 0.9, 1.05, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n\n // Stem reacts to stomp\n animate(\n \".l-stem\",\n { scaleY: [1, 0.98, 1.01, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".l-base, .l-stem\", { y: 0, scaleY: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Vertical stem */}\n <motion.path\n className=\"l-stem\"\n d=\"M6 4V20\"\n style={{ transformOrigin: \"6px 20px\" }}\n />\n\n {/* Base (boot) */}\n <motion.path\n className=\"l-base\"\n d=\"M6 20H18\"\n style={{ transformOrigin: \"6px 20px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterLIcon.displayName = \"LetterLIcon\";\nexport default LetterLIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterMIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Mountain pulse - peaks push up\n animate(\n \".m-shape\",\n { y: [0, -2, 0], scaleY: [1, 1.05, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".m-shape\", { y: 0, scaleY: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"m-shape\"\n d=\"M4 20V4L12 14L20 4V20\"\n style={{ transformOrigin: \"12px 20px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterMIcon.displayName = \"LetterMIcon\";\nexport default LetterMIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterNIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Diagonal slash animation\n animate(\n \".n-shape\",\n { rotate: [0, 3, -2, 1, 0] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".n-shape\", { rotate: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"n-shape\"\n d=\"M4 20V4L20 20V4\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterNIcon.displayName = \"LetterNIcon\";\nexport default LetterNIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterOIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Portal spin - 3D rotation like a spinning portal\n animate(\n \".o-circle\",\n { rotateY: [0, 360] },\n { duration: 0.8, ease: [0.25, 0.1, 0.25, 1] },\n );\n };\n\n const stop = () => {\n animate(\".o-circle\", { rotateY: 0 }, { duration: 0.3 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\", perspective: \"100px\" }}\n >\n <motion.circle\n className=\"o-circle\"\n cx=\"12\"\n cy=\"12\"\n r=\"8\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterOIcon.displayName = \"LetterOIcon\";\nexport default LetterOIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterPIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Head bob animation\n animate(\n \".p-shape\",\n { x: [0, 2, -1, 1, 0] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".p-shape\", { x: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path className=\"p-shape\" d=\"M7 20v-16h5.5a4 4 0 0 1 0 9h-5.5\" />\n </motion.svg>\n );\n },\n);\n\nLetterPIcon.displayName = \"LetterPIcon\";\nexport default LetterPIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterQIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Tail wag animation\n animate(\n \".q-body\",\n { rotate: [0, 2, -2, 1, 0] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n animate(\n \".q-tail\",\n { rotate: [0, 20, -15, 10, 0] },\n { duration: 0.5, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".q-body, .q-tail\", { rotate: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"q-body\"\n d=\"M18 9a5 5 0 0 0 -5 -5h-2a5 5 0 0 0 -5 5v6a5 5 0 0 0 5 5h2a5 5 0 0 0 5 -5v-6\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n <motion.path\n className=\"q-tail\"\n d=\"M13 15l5 5\"\n style={{ transformOrigin: \"13px 15px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterQIcon.displayName = \"LetterQIcon\";\nexport default LetterQIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterRIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Leg kick animation\n animate(\".r-body\", { x: [0, 1, 0] }, { duration: 0.3, ease: \"easeOut\" });\n animate(\n \".r-leg\",\n { rotate: [0, 15, 0], x: [0, 2, 0] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".r-body, .r-leg\", { rotate: 0, x: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path className=\"r-body\" d=\"M7 20v-16h5.5a4 4 0 0 1 0 9h-5.5\" />\n <motion.path\n className=\"r-leg\"\n d=\"M12 13l5 7\"\n style={{ transformOrigin: \"12px 13px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterRIcon.displayName = \"LetterRIcon\";\nexport default LetterRIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterSIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Snake slither - wiggles in serpentine motion\n animate(\n \".s-shape\",\n {\n x: [0, 2, -2, 2, -1, 0],\n rotate: [0, 3, -3, 2, -1, 0],\n },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\".s-shape\", { x: 0, rotate: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"s-shape\"\n d=\"M18 6C18 6 16 4 12 4C8 4 6 6 6 8C6 10 8 11 12 12C16 13 18 14 18 16C18 18 16 20 12 20C8 20 6 18 6 18\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterSIcon.displayName = \"LetterSIcon\";\nexport default LetterSIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterTIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Hammer strike - T falls down and strikes\n await animate(\n \".t-shape\",\n { rotate: [0, -15, 5, -2, 0], y: [0, -2, 3, 0] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".t-shape\", { rotate: 0, y: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"t-shape\" style={{ transformOrigin: \"12px 4px\" }}>\n {/* Top bar (hammer head) */}\n <motion.path d=\"M4 4H20\" />\n\n {/* Stem (handle) */}\n <motion.path d=\"M12 4V20\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nLetterTIcon.displayName = \"LetterTIcon\";\nexport default LetterTIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterUIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Cup fill - liquid fills up from bottom\n animate(\n \".u-fill\",\n {\n pathLength: [0, 1],\n opacity: [0.5, 1],\n },\n { duration: 0.6, ease: \"easeOut\" },\n );\n\n // Slight scale on the U shape\n animate(\n \".u-shape\",\n { scaleY: [1, 1.02, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".u-fill\", { pathLength: 1, opacity: 1 }, { duration: 0.2 });\n animate(\".u-shape\", { scaleY: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"u-shape u-fill\"\n d=\"M6 4V14C6 17.3137 8.68629 20 12 20C15.3137 20 18 17.3137 18 14V4\"\n style={{ transformOrigin: \"12px 20px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterUIcon.displayName = \"LetterUIcon\";\nexport default LetterUIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterVIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Victory thrust - shoots upward like a victory gesture\n animate(\n \".v-shape\",\n {\n y: [0, -5, 0],\n scale: [1, 1.1, 1],\n rotate: [0, 5, -5, 0],\n },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".v-shape\", { y: 0, scale: 1, rotate: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"v-shape\" style={{ transformOrigin: \"12px 20px\" }}>\n {/* Left arm */}\n <motion.path d=\"M4 4L12 20\" />\n\n {/* Right arm */}\n <motion.path d=\"M12 20L20 4\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nLetterVIcon.displayName = \"LetterVIcon\";\nexport default LetterVIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterWIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Water wave - peaks ripple like water waves\n animate(\n \".peak-1\",\n { y: [0, -3, 0] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n\n animate(\n \".peak-2\",\n { y: [0, -3, 0] },\n { duration: 0.4, ease: \"easeInOut\", delay: 0.1 },\n );\n\n animate(\n \".peak-3\",\n { y: [0, -3, 0] },\n { duration: 0.4, ease: \"easeInOut\", delay: 0.2 },\n );\n };\n\n const stop = () => {\n animate(\".peak-1, .peak-2, .peak-3\", { y: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* First down stroke */}\n <motion.path\n className=\"peak-1\"\n d=\"M4 4L8 20\"\n style={{ transformOrigin: \"4px 4px\" }}\n />\n\n {/* First valley to peak */}\n <motion.path\n className=\"peak-2\"\n d=\"M8 20L12 8\"\n style={{ transformOrigin: \"12px 8px\" }}\n />\n\n {/* Second peak to valley */}\n <motion.path\n className=\"peak-3\"\n d=\"M12 8L16 20\"\n style={{ transformOrigin: \"12px 8px\" }}\n />\n\n {/* Last up stroke */}\n <motion.path d=\"M16 20L20 4\" />\n </motion.svg>\n );\n },\n);\n\nLetterWIcon.displayName = \"LetterWIcon\";\nexport default LetterWIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterXIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // X-ray flash animation\n animate(\n \".x-stroke-1\",\n { opacity: [1, 0.3, 1], scale: [1, 1.05, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n animate(\n \".x-stroke-2\",\n { opacity: [1, 0.3, 1], scale: [1, 1.05, 1] },\n { duration: 0.3, ease: \"easeOut\", delay: 0.05 },\n );\n };\n\n const stop = () => {\n animate(\n \".x-stroke-1, .x-stroke-2\",\n { opacity: 1, scale: 1 },\n { duration: 0.2 },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"x-stroke-1\"\n d=\"M7 4l10 16\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n <motion.path\n className=\"x-stroke-2\"\n d=\"M17 4l-10 16\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterXIcon.displayName = \"LetterXIcon\";\nexport default LetterXIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterYIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Yoyo drop animation\n animate(\n \".y-stem\",\n { scaleY: [1, 1.2, 0.9, 1.1, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n animate(\".y-arms\", { y: [0, -2, 0] }, { duration: 0.3, ease: \"easeOut\" });\n };\n\n const stop = () => {\n animate(\".y-stem, .y-arms\", { scaleY: 1, y: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path className=\"y-arms\" d=\"M7 4l5 9l5 -9\" />\n <motion.path\n className=\"y-stem\"\n d=\"M12 13l0 7\"\n style={{ transformOrigin: \"12px 13px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLetterYIcon.displayName = \"LetterYIcon\";\nexport default LetterYIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LetterZIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Zigzag zap animation\n animate(\n \".z-shape\",\n { x: [0, 2, -2, 1, 0] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\".z-shape\", { x: 0 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path className=\"z-shape\" d=\"M7 4h10l-10 16h10\" />\n </motion.svg>\n );\n },\n);\n\nLetterZIcon.displayName = \"LetterZIcon\";\nexport default LetterZIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LibraryIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // The Book Pick Cycle\n // Book 2 (Selected): Lifts and tilts\n animate(\n \".book-2\",\n { y: -3, rotate: -8 },\n { duration: 0.4, ease: [0.175, 0.885, 0.32, 1.275] }, // BackOut feel\n );\n\n // Book 3 (Neighbor): Leans Left\n animate(\".book-3\", { rotate: -12 }, { duration: 0.4, ease: \"easeOut\" });\n\n // Book 4 (Outer): Subtle Lean Left\n animate(\".book-4\", { rotate: -5 }, { duration: 0.4, ease: \"easeOut\" });\n\n // Book 1 (Tilted Book): Leans further Right\n animate(\".book-1\", { rotate: 12 }, { duration: 0.4, ease: \"easeOut\" });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".book-1, .book-2, .book-3, .book-4\",\n { rotate: 0, y: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Book 1 (The tilted book) */}\n <motion.path\n className=\"book-1\"\n d=\"m16 6 4 14\"\n style={{ transformOrigin: \"18px 20px\" }}\n />\n {/* Book 2 (The picked book) */}\n <motion.path\n className=\"book-2\"\n d=\"M12 6v14\"\n style={{ transformOrigin: \"12px 20px\" }}\n />\n {/* Book 3 */}\n <motion.path\n className=\"book-3\"\n d=\"M8 8v12\"\n style={{ transformOrigin: \"8px 20px\" }}\n />\n {/* Book 4 */}\n <motion.path\n className=\"book-4\"\n d=\"M4 4v16\"\n style={{ transformOrigin: \"4px 20px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLibraryIcon.displayName = \"LibraryIcon\";\nexport default LibraryIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LikeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".like-icon\",\n {\n scale: [1, 0.8, 1.2, 1],\n rotate: [0, 8, -5, 0],\n y: [0, 2, -2, 0],\n },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".like-icon\",\n { scale: 1, rotate: 0, y: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"like-icon\" style={{ transformOrigin: \"center\" }}>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M7 11v8a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1v-7a1 1 0 0 1 1 -1h3a4 4 0 0 0 4 -4v-1a2 2 0 0 1 4 0v5h3a2 2 0 0 1 2 2l-1 5a2 3 0 0 1 -2 2h-7a3 3 0 0 1 -3 -3\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nLikeIcon.displayName = \"LikeIcon\";\n\nexport default LikeIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LinkIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".link-top\",\n { x: 1.5, y: -1.5 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n animate(\n \".link-bottom\",\n { x: -1.5, y: 1.5 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n animate(\n \".link-middle\",\n { opacity: [0.6, 1], scale: [0.95, 1] },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".link-top, .link-bottom, .link-middle\",\n { x: 0, y: 0, opacity: 1, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M9 15l6 -6\"\n className=\"link-middle\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n <motion.path\n d=\"M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464\"\n className=\"link-top\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n <motion.path\n d=\"M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463\"\n className=\"link-bottom\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLinkIcon.displayName = \"LinkIcon\";\nexport default LinkIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LinkedinIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".border\",\n { scale: [1, 1.05, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n await animate(\n \".lines\",\n { pathLength: [0, 1] },\n { duration: 0.5, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".lines, .border\",\n { pathLength: 1, scale: 1 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"lines\"\n d=\"M8 11v5\"\n initial={{ pathLength: 1 }}\n />\n <motion.path\n className=\"lines\"\n d=\"M8 8v.01\"\n initial={{ pathLength: 1 }}\n />\n <motion.path\n className=\"lines\"\n d=\"M12 16v-5\"\n initial={{ pathLength: 1 }}\n />\n <motion.path\n className=\"lines\"\n d=\"M16 16v-3a2 2 0 1 0 -4 0\"\n initial={{ pathLength: 1 }}\n />\n <motion.path\n className=\"border\"\n d=\"M3 7a4 4 0 0 1 4 -4h10a4 4 0 0 1 4 4v10a4 4 0 0 1 -4 4h-10a4 4 0 0 1 -4 -4z\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLinkedinIcon.displayName = \"LinkedinIcon\";\nexport default LinkedinIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LocateIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // 1. Snappy Appearance of center target\n animate(\n \".locate-target\",\n { opacity: 1, scale: 1 },\n { duration: 0.3, ease: \"backOut\" },\n );\n // 2. Subtle rotation for mechanical feel\n animate(\n \".locate-crosshairs\",\n { rotate: 90 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".locate-target\",\n { opacity: 0, scale: 0 },\n { duration: 0.2, ease: \"easeIn\" },\n );\n animate(\n \".locate-crosshairs\",\n { rotate: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g\n className=\"locate-crosshairs\"\n style={{ transformOrigin: \"center\" }}\n >\n <line x1=\"2\" x2=\"5\" y1=\"12\" y2=\"12\" />\n <line x1=\"19\" x2=\"22\" y1=\"12\" y2=\"12\" />\n <line x1=\"12\" x2=\"12\" y1=\"2\" y2=\"5\" />\n <line x1=\"12\" x2=\"12\" y1=\"19\" y2=\"22\" />\n </motion.g>\n\n {/* Ring */}\n <circle cx=\"12\" cy=\"12\" r=\"7\" />\n\n {/* The \"Fix\" Target - Appears on Hover */}\n <motion.circle\n className=\"locate-target\"\n cx=\"12\"\n cy=\"12\"\n r=\"3\"\n initial={{ opacity: 0, scale: 0 }}\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLocateIcon.displayName = \"LocateIcon\";\nexport default LocateIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LockIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 48, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".lock-upper-body\",\n { rotate: 40, y: -1.7, x: 3 },\n { duration: 0.28, ease: \"easeOut\" },\n );\n };\n\n const stop = async () => {\n await animate(\n \".lock-upper-body\",\n { rotate: 0, x: 0, y: 0 },\n { duration: 0.22, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Lock body */}\n <path d=\"M5 13a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v6a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6z\" />\n\n {/* Keyhole */}\n <path d=\"M11 16a1 1 0 1 0 2 0a1 1 0 0 0 -2 0\" />\n\n {/* Lock shackle */}\n <motion.path\n className=\"lock-upper-body\"\n d=\"M8 11v-4a4 4 0 1 1 8 0v4\"\n style={{ transformOrigin: \"50% 100%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nLockIcon.displayName = \"LockIcon\";\n\nexport default LockIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst LogoutIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".logout-arrow, .logout-arrow-bottom\",\n {\n x: [0, 6, 0],\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".logout-door\",\n {\n x: [0, -2, 0],\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".logout-arrow, .logout-arrow-bottom, .logout-door\",\n { x: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <motion.path\n className=\"logout-door\"\n style={{ transformOrigin: \"50% 50%\" }}\n d=\"M14 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2\"\n />\n\n <motion.path className=\"logout-arrow\" d=\"M9 12h12\" />\n\n <motion.path className=\"logout-arrow-bottom\" d=\"M18 15l3 -3l-3 -3\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nLogoutIcon.displayName = \"LogoutIcon\";\nexport default LogoutIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst MagnifierIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".magnifier-group\",\n {\n x: [0, 1, 0, -1, 0],\n y: [0, -1, -2, -1, 0],\n rotate: [0, -5, 5, -5, 0],\n },\n { duration: 1, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".magnifier-group\",\n { x: 0, y: 0, rotate: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeMiterlimit=\"10\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* 🔁 Animate THIS group */}\n <motion.g\n className=\"magnifier-group\"\n style={{\n transformOrigin: \"13px 13px\",\n transformBox: \"fill-box\",\n }}\n >\n <motion.path d=\"m21.393,18.565l7.021,7.021c.781.781.781,2.047,0,2.828h0c-.781.781-2.047.781-2.828,0l-7.021-7.021\" />\n <motion.circle cx=\"13\" cy=\"13\" r=\"10\" strokeLinecap=\"square\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nMagnifierIcon.displayName = \"MagnifierIcon\";\nexport default MagnifierIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst MailFilledIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".mail-open\",\n {\n rotateX: -60,\n transformOrigin: \"50% 0%\",\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".mail-open\",\n {\n rotateX: 0,\n transformOrigin: \"50% 0%\",\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`${className} cursor-pointer perspective-distant`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path d=\"M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z\" />\n <motion.path d=\"M3 7l9 6l9 -6\" className=\"mail-open\" />\n </motion.svg>\n );\n },\n);\n\nMailFilledIcon.displayName = \"MailFilledIcon\";\nexport default MailFilledIcon;\n","import { forwardRef, useImperativeHandle, useCallback, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst MapPinIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const isAnimatingRef = useRef(false);\n\n const start = useCallback(async () => {\n if (isAnimatingRef.current) return;\n isAnimatingRef.current = true;\n\n while (isAnimatingRef.current) {\n // High-Intensity Beacon Pulse (Opacity ONLY, NO Scale, NO Motion)\n await animate(\n \".pin-dot\",\n { opacity: [1, 0.4, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n if (!isAnimatingRef.current) break;\n }\n }, [animate]);\n\n const stop = useCallback(() => {\n isAnimatingRef.current = false;\n animate(\".pin-dot\", { opacity: 1 }, { duration: 0.3 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Pin Body - Perfectly Static */}\n <path d=\"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0\" />\n\n {/* Inner Dot - The Beacon */}\n <motion.circle className=\"pin-dot\" cx=\"12\" cy=\"10\" r=\"3\" />\n </motion.svg>\n );\n },\n);\n\nMapPinIcon.displayName = \"MapPinIcon\";\nexport default MapPinIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst MehIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".eyes\",\n { scaleY: [1, 0.3, 1, 0.3, 1] },\n { duration: 0.8, ease: \"easeInOut\" },\n );\n await animate(\n \".mouth\",\n { scaleX: [1, 0.9, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".eyes, .mouth\",\n { scaleY: 1, scaleX: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <circle cx=\"12\" cy=\"12\" r=\"10\" />\n <motion.line\n className=\"mouth\"\n x1=\"8\"\n x2=\"16\"\n y1=\"15\"\n y2=\"15\"\n style={{ transformOrigin: \"12px 15px\" }}\n />\n <motion.line\n className=\"eyes\"\n x1=\"9\"\n x2=\"9.01\"\n y1=\"9\"\n y2=\"9\"\n style={{ transformOrigin: \"9px 9px\" }}\n />\n <motion.line\n className=\"eyes\"\n x1=\"15\"\n x2=\"15.01\"\n y1=\"9\"\n y2=\"9\"\n style={{ transformOrigin: \"15px 9px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nMehIcon.displayName = \"MehIcon\";\nexport default MehIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst MessageCircleIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // reset first\n animate(\".message-path\", { pathLength: 0, opacity: 0 }, { duration: 0 });\n\n await animate(\n \".message-path\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n\n animate(\n \".message-path\",\n { scale: [1, 1.05, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".message-path\",\n { pathLength: 1, opacity: 1, scale: 1 },\n { duration: 0.2 },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"message-path\"\n d=\"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719\"\n initial={{ pathLength: 1, opacity: 1 }}\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nMessageCircleIcon.displayName = \"MessageCircleIcon\";\n\nexport default MessageCircleIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst MoonIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n \".moon\",\n { rotate: [0, -15, 0], scale: [1, 1.1, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".moon\",\n { rotate: 0, scale: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"moon\"\n d=\"M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nMoonIcon.displayName = \"MoonIcon\";\n\nexport default MoonIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst MousePointer2Icon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animationControls.current.push(\n animate(\n \".pointer\",\n {\n x: [0, 3, 0, -3, 0],\n y: [0, -3, 0, 3, 0],\n },\n {\n duration: 1.2,\n ease: \"easeInOut\",\n repeat: Infinity,\n },\n ),\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\".pointer\", { x: 0, y: 0 }, { duration: 0.3 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path\n className=\"pointer\"\n style={{ transformOrigin: \"center\" }}\n d=\"M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z\"\n />\n </motion.svg>\n );\n },\n);\n\nMousePointer2Icon.displayName = \"MousePointer2Icon\";\nexport default MousePointer2Icon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst MysqlIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".dolphin\",\n { y: [0, -2, 0] },\n { duration: 0.8, ease: \"easeInOut\" },\n );\n await animate(\n \".eye\",\n { scale: [1, 1.5, 1] },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".dolphin, .eye\",\n { y: 0, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"dolphin\"\n d=\"M13 21c-1.427 -1.026 -3.59 -3.854 -4 -6c-.486 .77 -1.501 2 -2 2c-1.499 -.888 -.574 -3.973 0 -6c-1.596 -1.433 -2.468 -2.458 -2.5 -4c-3.35 -3.44 -.444 -5.27 2.5 -3h1c8.482 .5 6.421 8.07 9 11.5c2.295 .522 3.665 2.254 5 3.5c-2.086 -.2 -2.784 -.344 -3.5 0c.478 1.64 2.123 2.2 3.5 3\"\n />\n <motion.path\n className=\"eye\"\n style={{ transformOrigin: \"9 7\" }}\n d=\"M9 7h.01\"\n />\n </motion.svg>\n );\n },\n);\n\nMysqlIcon.displayName = \"MysqlIcon\";\nexport default MysqlIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst NodejsIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".hexagon\",\n { rotate: [0, 360] },\n { duration: 1, ease: \"easeInOut\" },\n );\n animate(\n \".dollar\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.6, ease: \"easeOut\", delay: 0.2 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".dollar, .hexagon\",\n { pathLength: 1, opacity: 1, rotate: 0 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"hexagon\"\n style={{ transformOrigin: \"center\" }}\n d=\"M9 9v8.044a2 2 0 0 1 -2.996 1.734l-1.568 -.9a3 3 0 0 1 -1.436 -2.561v-6.635a3 3 0 0 1 1.436 -2.56l6 -3.667a3 3 0 0 1 3.128 0l6 3.667a3 3 0 0 1 1.436 2.561v6.634a3 3 0 0 1 -1.436 2.56l-6 3.667a3 3 0 0 1 -3.128 0\"\n />\n <motion.path\n className=\"dollar\"\n initial={{ pathLength: 1, opacity: 1 }}\n d=\"M17 9h-3.5a1.5 1.5 0 0 0 0 3h2a1.5 1.5 0 0 1 0 3h-3.5\"\n />\n </motion.svg>\n );\n },\n);\n\nNodejsIcon.displayName = \"NodejsIcon\";\nexport default NodejsIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PaintIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".roller-symbol\",\n {\n y: [0, 4],\n rotate: [0, 12],\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".paint-stroke\",\n {\n scaleX: [0, 1],\n opacity: [0, 1],\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".roller-symbol, .paint-stroke\",\n {\n y: 0,\n rotate: 0,\n scaleX: 1,\n opacity: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.rect\n className=\"paint-stroke\"\n x=\"4\"\n y=\"9\"\n width=\"16\"\n height=\"3\"\n rx=\"1.5\"\n fill={color}\n style={{\n transformOrigin: \"left center\",\n opacity: 0,\n }}\n />\n\n <motion.g\n className=\"roller-symbol\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <path d=\"M5 3m0 2a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2z\" />\n <path d=\"M19 6h1a2 2 0 0 1 2 2a5 5 0 0 1 -5 5l-5 0v2\" />\n <path d=\"M10 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nPaintIcon.displayName = \"PaintIcon\";\nexport default PaintIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PartyPopperIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\".popper\", { y: 3, x: -3 }, { duration: 0.25, ease: \"easeOut\" });\n\n animate(\n \".confetti\",\n {\n y: [0, -6, -10],\n x: [0, 6, 10],\n opacity: [1, 1, 0],\n scale: [1, 1.2, 0.8],\n },\n { duration: 0.6, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".popper, .confetti\",\n { y: 0, x: 0, opacity: 1, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path className=\"popper\" d=\"M5.8 11.3 2 22l10.7-3.79\" />\n <motion.path className=\"confetti\" d=\"M4 3h.01\" />\n <motion.path className=\"confetti\" d=\"M22 8h.01\" />\n <motion.path className=\"confetti\" d=\"M15 2h.01\" />\n <motion.path className=\"confetti\" d=\"M22 20h.01\" />\n <motion.path\n className=\"confetti\"\n d=\"m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10\"\n />\n <motion.path\n className=\"confetti\"\n d=\"m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17\"\n />\n <motion.path\n className=\"confetti\"\n d=\"m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7\"\n />\n <motion.path\n className=\"popper\"\n d=\"M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z\"\n />\n </motion.svg>\n );\n },\n);\n\nPartyPopperIcon.displayName = \"PartyPopperIcon\";\nexport default PartyPopperIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PassportIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".flap\",\n {\n x: 1,\n opacity: 1,\n },\n {\n duration: 0.25,\n delay: 0.3,\n ease: \"easeOut\",\n },\n );\n\n await animate(\n \".globe\",\n { pathLength: [0, 1] },\n { duration: 0.8, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".flap\",\n { x: 0, opacity: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n\n animate(\".globe\", { pathLength: 1 }, { duration: 0.8 });\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path d=\"M2 9c0-3.3 0-4.95 1.025-5.975S5.7 2 9 2h3c3.3 0 4.95 0 5.975 1.025S19 5.7 19 9v6c0 3.3 0 4.95-1.025 5.975S15.3 22 12 22H9c-3.3 0-4.95 0-5.975-1.025S2 18.3 2 15z\"></path>\n <path d=\"M7 17h8\"></path>\n {/* flap */}\n <motion.path\n className=\"flap\"\n d=\"M12.95 22c2.645 0 3.967 0 4.917-.756.95-.757 1.252-2.051 1.858-4.64l1.917-8.197c.335-1.433.503-2.15.2-2.67C21.287 4.796 19.878 5 18.958 5\"\n ></motion.path>\n {/* globe */}\n <motion.path\n className=\"globe\"\n d=\"M11 14a4 4 0 0 1 0-8M11 14a4 4 0 0 0 0-8\"\n ></motion.path>\n <motion.path\n className=\"globe\"\n d=\"M11 14s1.5-1.79 1.5-4S11 6 11 6M11 14s-1.5-1.79-1.5-4S11 6 11 6\"\n ></motion.path>\n </motion.svg>\n );\n },\n);\n\nPassportIcon.displayName = \"PassportIcon\";\nexport default PassportIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PawPrintIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // 1. Reset for the stamp\n animate(\n \".paw-inner\",\n { opacity: 0, scale: 1.5, y: -20 },\n { duration: 0 },\n );\n\n // 2. Fast Drop & Impact\n await animate(\n \".paw-inner\",\n { y: 0, opacity: 1, scale: 1 },\n { duration: 0.15, ease: [0.33, 1, 0.68, 1] }, // Crisp entry\n );\n\n // 3. Rubber Squash & Micro-Bounce\n await animate(\n \".paw-inner\",\n {\n scale: [1, 0.75, 1.1, 1],\n y: [0, -1, 0],\n },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n\n // 4. Ink Absorption (Subtle bleed and fade)\n animate(\n \".paw-inner\",\n {\n opacity: 0.6,\n scale: 1.03,\n },\n { duration: 0.5, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".paw-inner\", { opacity: 1, scale: 1, y: 0 }, { duration: 0.3 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"paw-inner\" style={{ transformOrigin: \"center\" }}>\n <circle\n cx=\"11\"\n cy=\"4\"\n r=\"2\"\n stroke={color}\n strokeWidth={strokeWidth}\n />\n <circle\n cx=\"18\"\n cy=\"8\"\n r=\"2\"\n stroke={color}\n strokeWidth={strokeWidth}\n />\n <circle\n cx=\"20\"\n cy=\"16\"\n r=\"2\"\n stroke={color}\n strokeWidth={strokeWidth}\n />\n <path\n d=\"M9 10a5 5 0 0 1 5 5v3.5a3.5 3.5 0 0 1-6.84 1.045Q6.52 17.48 4.46 16.84A3.5 3.5 0 0 1 5.5 10Z\"\n stroke={color}\n strokeWidth={strokeWidth}\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nPawPrintIcon.displayName = \"PawPrintIcon\";\nexport default PawPrintIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PenIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".pen-group\",\n {\n x: [0, 1, -1, 1, -1, 0],\n y: [0, -2, -4, -6, -8, -10],\n rotate: [0, -6, -4, -6, -4, 0],\n },\n { duration: 0.8, ease: \"easeInOut\" },\n );\n\n await animate(\n \".pen-slash\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n\n await animate(\n \".pen-slash\",\n { pathLength: 0, opacity: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n\n animate(\n \".pen-group\",\n { x: 0, y: 0, rotate: 0 },\n { duration: 0.25, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".pen-group\",\n { x: 0, y: 0, rotate: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n width={size}\n height={size}\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n strokeMiterlimit=\"10\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.g\n className=\"pen-group\"\n style={{\n transformOrigin: \"50% 50%\",\n transformBox: \"fill-box\",\n }}\n >\n {/* Slash animation (pathLength works now) */}\n <motion.path\n className=\"pen-slash\"\n d=\"M20 6 L26 12\"\n initial={{ pathLength: 0, opacity: 0 }}\n />\n\n {/* Pen body */}\n <motion.path\n className=\"pen-body\"\n d=\"m10.5,27.5l-8,2 2-8L22.257,3.743c1.657-1.657,4.343-1.657,6,0s1.657,4.343,0,6L10.5,27.5Z\"\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nPenIcon.displayName = \"PenIcon\";\nexport default PenIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PhoneVolume = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".phone-wave-inner\",\n {\n scale: [1, 1.15, 1],\n opacity: [0.4, 1, 0.4],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n await animate(\n \".phone-wave-outer\",\n {\n scale: [1, 1.25, 1],\n opacity: [0.2, 0.8, 0.2],\n },\n {\n duration: 0.45,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n );\n\n animate(\n \".phone-wave\",\n {\n opacity: 1,\n scale: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".phone-wave-inner, .phone-wave-outer, .phone-wave\",\n { opacity: 1, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n strokeMiterlimit=\"10\"\n >\n <motion.path\n className=\"phone-body\"\n d=\"m21.3832,18.2745l-3.1744,3.9688c-3.4906-2.0516-6.3996-4.9606-8.4513-8.4513l3.9702-3.1756L9.9013,1.9994l-6.4617,1.6761c-.9444.2466-1.555,1.1606-1.4212,2.1274,1.7626,12.5517,11.6278,22.4169,24.1795,24.1795.9665.1332,1.8799-.4773,2.1264-1.4212l1.6758-6.4603-8.6168-3.8264Z\"\n />\n\n <motion.path\n className=\"phone-wave-inner phone-wave\"\n style={{ transformOrigin: \"21.5px 10.5px\" }}\n d=\"m19,8c2.7614,0,5,2.2386,5,5\"\n initial={{ opacity: 1 }}\n />\n\n <motion.path\n className=\"phone-wave-outer phone-wave\"\n style={{ transformOrigin: \"24px 8px\" }}\n d=\"m19,3c5.5228,0,10,4.4772,10,10\"\n initial={{ opacity: 1 }}\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nPhoneVolume.displayName = \"PhoneVolume\";\nexport default PhoneVolume;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PinterestIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".pin\",\n { y: [0, -3, 0], rotate: [0, -10, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n await animate(\n \".circle\",\n { scale: [1, 1.05, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".pin, .circle\",\n { y: 0, rotate: 0, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"pin\"\n style={{ transformOrigin: \"center\" }}\n d=\"M8 20l4 -9\"\n />\n <motion.path\n className=\"pin\"\n style={{ transformOrigin: \"center\" }}\n d=\"M10.7 14c.437 1.263 1.43 2 2.55 2c2.071 0 3.75 -1.554 3.75 -4a5 5 0 1 0 -9.7 1.7\"\n />\n <motion.path\n className=\"circle\"\n style={{ transformOrigin: \"center\" }}\n d=\"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\"\n />\n </motion.svg>\n );\n },\n);\n\nPinterestIcon.displayName = \"PinterestIcon\";\nexport default PinterestIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PlayerIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, className = \"\", color = \"currentColor\", strokeWidth = 2 },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".play-icon\",\n {\n scale: [1, 0.8],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n await animate(\n \".play-icon\",\n {\n scale: [0.8, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n onTap={start}\n onHoverStart={start}\n onHoverEnd={stop}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n color={color}\n className=\"play-icon\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M6 4v16a1 1 0 0 0 1.524 .852l13 -8a1 1 0 0 0 0 -1.704l-13 -8a1 1 0 0 0 -1.524 .852z\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nPlayerIcon.displayName = \"PlayerIcon\";\nexport default PlayerIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PlugConnectedIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".plug-upper-part\",\n {\n y: 2,\n x: -2,\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".plug-lower-leg\",\n {\n opacity: 0,\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".plug-lower-part\",\n {\n y: -2,\n x: 2,\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".plug-upper-part, .plug-lower-leg, .plug-lower-part\",\n {\n y: 0,\n x: 0,\n opacity: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n {/* <motion.path d=\"M20 16l-4 4\" /> */}\n <motion.path\n d=\"M7 12l5 5l-1.5 1.5a3.536 3.536 0 1 1 -5 -5l1.5 -1.5z\"\n className=\"plug-lower-part\"\n />\n <motion.path\n d=\"M17 12l-5 -5l1.5 -1.5a3.536 3.536 0 1 1 5 5l-1.5 1.5z\"\n className=\"plug-upper-part\"\n />\n <motion.path d=\"M3 21l2.5 -2.5\" className=\"plug-lower-part\" />\n <motion.path d=\"M18.5 5.5l2.5 -2.5\" className=\"plug-upper-part\" />\n <motion.path\n d=\"M10 11l-2 2\"\n className=\"plug-lower-part plug-lower-leg\"\n />\n <motion.path\n d=\"M13 14l-2 2\"\n className=\"plug-lower-part plug-lower-leg\"\n />\n {/* <motion.path d=\"M16 16l4 4\" /> */}\n </motion.svg>\n );\n },\n);\n\nPlugConnectedIcon.displayName = \"PlugConnectedIcon\";\nexport default PlugConnectedIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PlugConnectedXIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".plug-upper-part\",\n {\n x: 2,\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".plug-lower-part\",\n {\n y: -2,\n x: 2,\n },\n {\n duration: 0.35,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".plug-upper-part, .plug-lower-leg, .plug-lower-part\",\n {\n x: 0,\n y: 0,\n opacity: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n ref={scope}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path d=\"M20 16l-4 4\" />\n <motion.path\n d=\"M7 12l5 5l-1.5 1.5a3.536 3.536 0 1 1 -5 -5l1.5 -1.5z\"\n className=\"plug-lower-part\"\n />\n <motion.path\n d=\"M17 12l-5 -5l1.5 -1.5a3.536 3.536 0 1 1 5 5l-1.5 1.5z\"\n className=\"plug-upper-part\"\n />\n <motion.path d=\"M3 21l2.5 -2.5\" className=\"plug-lower-part\" />\n <motion.path d=\"M18.5 5.5l2.5 -2.5\" className=\"plug-upper-part\" />\n <motion.path\n d=\"M10 11l-2 2\"\n className=\"plug-lower-part plug-lower-leg\"\n />\n <motion.path\n d=\"M13 14l-2 2\"\n className=\"plug-lower-part plug-lower-leg\"\n />\n <motion.path d=\"M16 16l4 4\" />\n </motion.svg>\n );\n },\n);\n\nPlugConnectedXIcon.displayName = \"PlugConnectedXIcon\";\nexport default PlugConnectedXIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst PythonIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".snake-top\",\n { x: [0, -1, 1, 0], y: [0, -1, 1, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n animate(\n \".snake-bottom\",\n { x: [0, 1, -1, 0], y: [0, 1, -1, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n await animate(\n \".eyes\",\n { scale: [1, 1.5, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".snake-top, .snake-bottom, .eyes\",\n { x: 0, y: 0, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"snake-top\"\n d=\"M12 9h-7a2 2 0 0 0 -2 2v4a2 2 0 0 0 2 2h3\"\n />\n <motion.path\n className=\"snake-top\"\n d=\"M12 15h7a2 2 0 0 0 2 -2v-4a2 2 0 0 0 -2 -2h-3\"\n />\n <motion.path\n className=\"snake-top\"\n d=\"M8 9v-4a2 2 0 0 1 2 -2h4a2 2 0 0 1 2 2v5a2 2 0 0 1 -2 2h-4a2 2 0 0 0 -2 2v5a2 2 0 0 0 2 2h4a2 2 0 0 0 2 -2v-4\"\n />\n <motion.path\n className=\"eyes\"\n style={{ transformOrigin: \"11 6\" }}\n d=\"M11 6l0 .01\"\n />\n <motion.path\n className=\"eyes\"\n style={{ transformOrigin: \"13 18\" }}\n d=\"M13 18l0 .01\"\n />\n </motion.svg>\n );\n },\n);\n\nPythonIcon.displayName = \"PythonIcon\";\nexport default PythonIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst QrcodeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\".qr-scan\", { opacity: 0, y: 0 }, { duration: 0 });\n animate(\".corner-rect\", { pathLength: 0, opacity: 0 }, { duration: 0 });\n animate(\".inner-element\", { opacity: 0, scale: 0.8 }, { duration: 0 });\n animate(\".center-dot\", { scale: 0, opacity: 0 }, { duration: 0 });\n\n await animate(\n \".corner-rect\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.4, ease: \"easeOut\", delay: (i) => i * 0.1 },\n );\n\n animationControls.current.push(\n animate(\n \".qr-scan\",\n { opacity: [0, 1, 1, 0], y: [0, 30, 0, 0] },\n {\n duration: 1.5,\n ease: \"easeInOut\",\n repeat: Infinity,\n repeatDelay: 0.3,\n },\n ),\n );\n\n await animate(\n \".inner-element\",\n { opacity: [0, 1], scale: [0.8, 1] },\n { duration: 0.3, ease: \"easeOut\", delay: (i) => i * 0.05 },\n );\n\n animate(\n \".center-dot\",\n { scale: [0, 1.2, 1], opacity: [0, 1] },\n { duration: 0.3, ease: \"easeOut\", delay: (i) => i * 0.08 },\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\n \".qr-scan, .corner-rect, .inner-element, .center-dot\",\n { opacity: 1, pathLength: 1, scale: 1, y: 0 },\n { duration: 0.2 },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n x=\"0px\"\n y=\"0px\"\n width={size}\n height={size}\n viewBox=\"0 0 32 32\"\n className={`qr-code ${className} cursor-pointer`}\n style={{ overflow: \"visible\" }}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.rect\n className=\"qr-scan\"\n x=\"2\"\n y=\"0\"\n width=\"28\"\n height=\"2\"\n fill=\"currentColor\"\n opacity=\"0\"\n style={{ filter: \"drop-shadow(0 0 4px currentColor)\" }}\n />\n\n <motion.rect\n className=\"corner-rect\"\n x=\"3\"\n y=\"3\"\n width=\"9\"\n height=\"9\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n fill=\"none\"\n initial={{ pathLength: 1 }}\n />\n\n <motion.rect\n className=\"corner-rect\"\n x=\"3\"\n y=\"20\"\n width=\"9\"\n height=\"9\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n fill=\"none\"\n initial={{ pathLength: 1 }}\n />\n\n <motion.rect\n className=\"corner-rect\"\n x=\"20\"\n y=\"3\"\n width=\"9\"\n height=\"9\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n fill=\"none\"\n initial={{ pathLength: 1 }}\n />\n\n <motion.rect\n className=\"inner-element\"\n x=\"27\"\n y=\"20\"\n width=\"2\"\n height=\"2\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n fill=\"none\"\n style={{ transformOrigin: \"center\" }}\n />\n\n <motion.rect\n className=\"inner-element\"\n x=\"16\"\n y=\"27\"\n width=\"2\"\n height=\"2\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n fill=\"none\"\n style={{ transformOrigin: \"center\" }}\n />\n\n <motion.path\n className=\"inner-element\"\n d=\"M3 16H7\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n fill=\"none\"\n style={{ transformOrigin: \"center\" }}\n />\n\n <motion.path\n className=\"inner-element\"\n d=\"M13 16H18M22 16V23H29M22 16H26M22 16H18M18 16V20H16\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n fill=\"none\"\n style={{ transformOrigin: \"center\" }}\n />\n\n <motion.path\n className=\"inner-element\"\n d=\"M16 7V10\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n fill=\"none\"\n style={{ transformOrigin: \"center\" }}\n />\n\n <motion.path\n className=\"inner-element\"\n d=\"M16 25V29H23V27\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n fill=\"none\"\n style={{ transformOrigin: \"center\" }}\n />\n\n <motion.path\n className=\"inner-element\"\n d=\"M29.01 29H29\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n fill=\"none\"\n style={{ transformOrigin: \"center\" }}\n />\n\n <motion.rect\n className=\"center-dot\"\n x=\"24\"\n y=\"7\"\n width=\"1\"\n height=\"1\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n fill=\"none\"\n style={{ transformOrigin: \"24.5px 7.5px\" }}\n />\n\n <motion.rect\n className=\"center-dot\"\n x=\"7\"\n y=\"7\"\n width=\"1\"\n height=\"1\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n fill=\"none\"\n style={{ transformOrigin: \"7.5px 7.5px\" }}\n />\n\n <motion.rect\n className=\"center-dot\"\n x=\"7\"\n y=\"24\"\n width=\"1\"\n height=\"1\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n fill=\"none\"\n style={{ transformOrigin: \"7.5px 24.5px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nQrcodeIcon.displayName = \"QrcodeIcon\";\nexport default QrcodeIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst QuestionMark = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".question-mark\",\n { pathLength: [0, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n\n await animate(\n \".question-mark-dot\",\n {\n pathLength: [0, 1],\n y: [0, -3, 0],\n },\n { duration: 0.3, ease: \"easeOut\" },\n );\n\n animate(\n \".question-group\",\n { scale: [1, 1.05, 1] },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".question-mark, .question-mark-dot, .question-group\",\n { pathLength: 1, y: 0, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div ref={scope} onHoverStart={start} onHoverEnd={stop}>\n <motion.svg\n className={`question-group cursor-pointer ${className}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n className=\"question-mark\"\n d=\"M8 8a3.5 3 0 0 1 3.5 -3h1a3.5 3 0 0 1 3.5 3a3 3 0 0 1 -2 3a3 4 0 0 0 -2 4\"\n />\n <path className=\"question-mark-dot\" d=\"M12 19l0 .01\" />\n </motion.svg>\n </motion.div>\n );\n },\n);\n\nQuestionMark.displayName = \"QuestionMark\";\nexport default QuestionMark;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst RadioIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".center\",\n {\n scale: [1, 1.3, 1],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".wave-inner\",\n {\n scale: [1, 1.15, 1],\n opacity: [1, 0.6, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n );\n\n await animate(\n \".wave-outer\",\n {\n scale: [1, 1.2, 1],\n opacity: [1, 0.4, 1],\n },\n {\n duration: 0.7,\n ease: \"easeInOut\",\n delay: 0.2,\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".center, .wave-inner, .wave-outer\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.g className=\"wave-inner\">\n <path\n d=\"M16.247 7.761a6 6 0 0 1 0 8.478\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n <path\n d=\"M7.753 16.239a6 6 0 0 1 0-8.478\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.g>\n\n <motion.g className=\"wave-outer\">\n <path\n d=\"M19.075 4.933a10 10 0 0 1 0 14.134\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n <path\n d=\"M4.925 19.067a10 10 0 0 1 0-14.134\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.g>\n\n <motion.circle\n className=\"center\"\n cx=\"12\"\n cy=\"12\"\n r=\"2\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nRadioIcon.displayName = \"RadioIcon\";\nexport default RadioIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst RainbowIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".arc1\",\n { pathLength: [0, 1] },\n { duration: 0.6, ease: \"easeOut\" },\n );\n animate(\n \".arc2\",\n { pathLength: [0, 1] },\n { duration: 0.6, ease: \"easeOut\", delay: 0.1 },\n );\n await animate(\n \".arc3\",\n { pathLength: [0, 1] },\n { duration: 0.6, ease: \"easeOut\", delay: 0.2 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".arc1, .arc2, .arc3\", { pathLength: 1 }, { duration: 0.2 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path\n className=\"arc1\"\n d=\"M22 17a10 10 0 0 0-20 0\"\n initial={{ pathLength: 1 }}\n />\n <motion.path\n className=\"arc2\"\n d=\"M6 17a6 6 0 0 1 12 0\"\n initial={{ pathLength: 1 }}\n />\n <motion.path\n className=\"arc3\"\n d=\"M10 17a2 2 0 0 1 4 0\"\n initial={{ pathLength: 1 }}\n />\n </motion.svg>\n );\n },\n);\n\nRainbowIcon.displayName = \"RainbowIcon\";\nexport default RainbowIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst RefreshIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await animate(\n scope.current,\n { rotate: 180 },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n };\n\n const stop = async () => {\n await animate(\n scope.current,\n { rotate: 0 },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4\" />\n <path d=\"M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4\" />\n </motion.svg>\n );\n },\n);\n\nRefreshIcon.displayName = \"RefreshIcon\";\n\nexport default RefreshIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst RightChevron = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".chevron\",\n { x: [0, 6, 0] },\n {\n duration: 0.8,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".chevron\", { x: 0 }, { duration: 0.2, ease: \"easeInOut\" });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`flex w-8 items-center justify-center ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"chevron cursor-pointer\"\n >\n <path d=\"M9 6l6 6l-6 6\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nRightChevron.displayName = \"RightChevron\";\nexport default RightChevron;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst RocketIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n await Promise.all([\n animate(\n \".rocket-upper\",\n {\n x: [0, 40],\n y: [0, -40],\n opacity: [1, 0],\n },\n { duration: 0.35, ease: \"easeIn\" },\n ),\n animate(\n \".rocket-flame\",\n {\n x: [0, -20],\n y: [0, 20],\n scale: [0.8, 1.2],\n opacity: [0.6, 0],\n },\n { duration: 0.25, ease: \"easeOut\", delay: 0.05 },\n ),\n ]);\n\n // reset position instantly\n await animate(\n \".rocket-upper\",\n { x: -40, y: 40, opacity: 0 },\n { duration: 0 },\n );\n\n // come back\n animate(\n \".rocket-upper\",\n { x: 0, y: 0, opacity: 1 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n animate(\n \".rocket-flame\",\n { x: 0, y: 0, opacity: 1, scale: 1 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n };\n\n const stop = () => {\n animate(\n \".rocket-upper, .rocket-flame\",\n { x: 0, y: 0, opacity: 1, scale: 1 },\n { duration: 0.2 },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n const handleHoverStart = () => {\n start();\n };\n\n const handleHoverEnd = () => {\n stop();\n };\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={handleHoverStart}\n onHoverEnd={handleHoverEnd}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeMiterlimit=\"10\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"rocket-fin-left rocket-upper\"\n d=\"m13.299,9h-3.891c-.892,0-1.738.397-2.308,1.083l-5.1,6.139,6.31,1.51\"\n />\n\n <motion.path\n className=\"rocket-fin-bottom rocket-upper\"\n d=\"m23,18.701v3.891c0,.892-.397,1.738-1.083,2.308l-6.139,5.1-1.51-6.31\"\n />\n\n <motion.path\n className=\"rocket-body rocket-upper\"\n d=\"m14.268,23.69c7.986-2.194,14.642-9.015,15.732-21.69-12.675,1.09-19.496,7.746-21.69,15.732l5.958,5.958Z\"\n />\n\n <motion.path\n className=\"rocket-trajectory rocket-upper\"\n d=\"m19,5c4.111,1.389,6.778,4.056,8,8\"\n strokeLinecap=\"round\"\n />\n\n <motion.circle\n className=\"rocket-window rocket-upper\"\n cx=\"19\"\n cy=\"13\"\n r=\"2\"\n fill=\"currentColor\"\n />\n\n <motion.path\n className=\"rocket-flame\"\n d=\"m2,30s.707-4.95,2.121-6.364c1.172-1.172,3.071-1.172,4.243,0s1.172,3.071,0,4.243c-1.414,1.414-6.364,2.121-6.364,2.121Z\"\n />\n </motion.svg>\n );\n },\n);\n\nRocketIcon.displayName = \"RocketIcon\";\n\nexport default RocketIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst RosetteDiscountCheckIcon = forwardRef<\n AnimatedIconHandle,\n AnimatedIconProps\n>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // 1. Rotate and scale the rosette badge\n animate(\n \".rosette-badge\",\n {\n rotate: [0, -5, 5, 0],\n scale: [1, 1.05, 1],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n\n // 2. Animate checkmark with path drawing\n await animate(\n \".discount-check\",\n {\n pathLength: [0, 1],\n opacity: [0, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n\n // 3. Bounce back effect\n animate(\n \".rosette-badge\",\n {\n scale: [1.05, 0.98, 1],\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n // Reset properties.\n // REMOVED pathLength reset for badge to ensure solid stroke\n animate(\".rosette-badge\", { rotate: 0, scale: 1 }, { duration: 0.2 });\n animate(\n \".discount-check\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n style={{ overflow: \"visible\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"rosette-badge\"\n style={{ transformOrigin: \"center\" }}\n d=\"M5 7.2a2.2 2.2 0 0 1 2.2 -2.2h1a2.2 2.2 0 0 0 1.55 -.64l.7 -.7a2.2 2.2 0 0 1 3.12 0l.7 .7c.412 .41 .97 .64 1.55 .64h1a2.2 2.2 0 0 1 2.2 2.2v1c0 .58 .23 1.138 .64 1.55l.7 .7a2.2 2.2 0 0 1 0 3.12l-.7 .7a2.2 2.2 0 0 0 -.64 1.55v1a2.2 2.2 0 0 1 -2.2 2.2h-1a2.2 2.2 0 0 0 -1.55 .64l-.7 .7a2.2 2.2 0 0 1 -3.12 0l-.7 -.7a2.2 2.2 0 0 0 -1.55 -.64h-1a2.2 2.2 0 0 1 -2.2 -2.2v-1a2.2 2.2 0 0 0 -.64 -1.55l-.7 -.7a2.2 2.2 0 0 1 0 -3.12l.7 -.7a2.2 2.2 0 0 0 .64 -1.55v-1z\"\n />\n <motion.path\n className=\"discount-check\"\n d=\"M9 12l2 2l4 -4\"\n pathLength={1}\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nRosetteDiscountCheckIcon.displayName = \"RosetteDiscountCheckIcon\";\nexport default RosetteDiscountCheckIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst RosetteDiscountIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // 1. Rotate and scale the rosette badge\n animate(\n \".rosette-badge\",\n {\n rotate: [0, -8, 8, 0],\n scale: [1, 1.08, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n // 2. Pulse the discount dots\n animate(\n \".discount-dot\",\n {\n scale: [1, 1.5, 1],\n opacity: [1, 0.6, 1],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n\n // 3. Draw the diagonal discount line\n await animate(\n \".discount-line\",\n {\n pathLength: [0, 1],\n opacity: [0, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n\n // 4. Subtle settle\n animate(\n \".rosette-badge\",\n {\n scale: [1, 0.97, 1],\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n // Reset only relevant properties for each element\n // REMOVED pathLength reset for badge to ensure solid stroke\n animate(\".rosette-badge\", { rotate: 0, scale: 1 }, { duration: 0.2 });\n animate(\".discount-dot\", { scale: 1, opacity: 1 }, { duration: 0.2 });\n animate(\n \".discount-line\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n className={`inline-flex cursor-pointer items-center justify-center ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n style={{ overflow: \"visible\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"rosette-badge\"\n style={{ transformOrigin: \"center\" }}\n d=\"M5 7.2a2.2 2.2 0 0 1 2.2 -2.2h1a2.2 2.2 0 0 0 1.55 -.64l.7 -.7a2.2 2.2 0 0 1 3.12 0l.7 .7a2.2 2.2 0 0 0 1.55 .64h1a2.2 2.2 0 0 1 2.2 2.2v1a2.2 2.2 0 0 0 .64 1.55l.7 .7a2.2 2.2 0 0 1 0 3.12l-.7 .7a2.2 2.2 0 0 0 -.64 1.55v1a2.2 2.2 0 0 1 -2.2 2.2h-1a2.2 2.2 0 0 0 -1.55 .64l-.7 .7a2.2 2.2 0 0 1 -3.12 0l-.7 -.7a2.2 2.2 0 0 0 -1.55 -.64h-1a2.2 2.2 0 0 1 -2.2 -2.2v-1a2.2 2.2 0 0 0 -.64 -1.55l-.7 -.7a2.2 2.2 0 0 1 0 -3.12l.7 -.7a2.2 2.2 0 0 0 .64 -1.55v-1z\"\n />\n <motion.path\n className=\"discount-line\"\n d=\"M9 15l6 -6\"\n pathLength={1}\n />\n <motion.circle\n className=\"discount-dot\"\n style={{ transformOrigin: \"9.5px 9.5px\" }}\n cx=\"9.5\"\n cy=\"9.5\"\n r=\".5\"\n fill=\"currentColor\"\n />\n <motion.circle\n className=\"discount-dot\"\n style={{ transformOrigin: \"14.5px 14.5px\" }}\n cx=\"14.5\"\n cy=\"14.5\"\n r=\".5\"\n fill=\"currentColor\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nRosetteDiscountIcon.displayName = \"RosetteDiscountIcon\";\nexport default RosetteDiscountIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst RouterIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".signal-inner\",\n {\n scale: [1, 1.2, 1],\n opacity: [1, 0.6, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \".signal-outer\",\n {\n scale: [1, 1.3, 1],\n opacity: [1, 0.4, 1],\n },\n {\n duration: 0.7,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n );\n\n // Blink the indicator lights\n animate(\n \".indicator\",\n {\n opacity: [1, 0.3, 1],\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".signal-inner, .signal-outer, .indicator\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <rect width=\"20\" height=\"8\" x=\"2\" y=\"14\" rx=\"2\" />\n\n <motion.g className=\"indicator\">\n <path d=\"M6.01 18H6\" />\n <path d=\"M10.01 18H10\" />\n </motion.g>\n\n <path d=\"M15 10v4\" />\n\n <motion.path\n className=\"signal-inner\"\n d=\"M17.84 7.17a4 4 0 0 0-5.66 0\"\n style={{ transformOrigin: \"15px 7px\" }}\n />\n\n <motion.path\n className=\"signal-outer\"\n d=\"M20.66 4.34a8 8 0 0 0-11.31 0\"\n style={{ transformOrigin: \"15px 4px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nRouterIcon.displayName = \"RouterIcon\";\nexport default RouterIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SatelliteDishIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".signal-inner\",\n {\n scale: [1, 1.15, 1],\n opacity: [1, 0.6, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \".signal-outer\",\n {\n scale: [1, 1.25, 1],\n opacity: [1, 0.4, 1],\n },\n {\n duration: 0.7,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n );\n\n animate(\n \".dish\",\n {\n rotate: [0, -2, 2, 0],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".signal-inner, .signal-outer, .dish\",\n { scale: 1, opacity: 1, rotate: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path\n className=\"dish\"\n d=\"M4 10a7.31 7.31 0 0 0 10 10Z\"\n style={{ transformOrigin: \"9px 15px\" }}\n />\n\n <path d=\"m9 15 3-3\" />\n\n <motion.path\n className=\"signal-inner\"\n d=\"M17 13a6 6 0 0 0-6-6\"\n style={{ transformOrigin: \"14px 10px\" }}\n />\n\n <motion.path\n className=\"signal-outer\"\n d=\"M21 13A10 10 0 0 0 11 3\"\n style={{ transformOrigin: \"16px 8px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nSatelliteDishIcon.displayName = \"SatelliteDishIcon\";\nexport default SatelliteDishIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SaveIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // 1. Single Clean Vertical Pulse (The \"Store\" action)\n animate(\n scope.current,\n { y: [0, -1, 0] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n\n // 2. Coordinated Label Pulse (The \"Write success\" flash)\n animate(\n \".save-label\",\n { opacity: [1, 0.4, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate, scope]);\n\n const stop = useCallback(() => {\n animate(scope.current, { y: 0 }, { duration: 0.3 });\n animate(\".save-label\", { opacity: 1 }, { duration: 0.3 });\n }, [animate, scope]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <path d=\"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z\" />\n <path\n className=\"save-shutter\"\n d=\"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7\"\n />\n <motion.path\n className=\"save-label\"\n d=\"M7 3v4a1 1 0 0 0 1 1h7\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nSaveIcon.displayName = \"SaveIcon\";\nexport default SaveIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ScanBarcodeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".scan-line\",\n {\n y: [0, 10, -10, 0],\n opacity: [0.3, 1, 0.3, 1],\n },\n {\n duration: 1.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".corners\",\n {\n scale: [1, 1.05, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".scan-line, .corners\",\n { y: 0, opacity: 1, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.g className=\"corners\">\n <path d=\"M3 7V5a2 2 0 0 1 2-2h2\" />\n <path d=\"M17 3h2a2 2 0 0 1 2 2v2\" />\n <path d=\"M21 17v2a2 2 0 0 1-2 2h-2\" />\n <path d=\"M7 21H5a2 2 0 0 1-2-2v-2\" />\n </motion.g>\n\n <motion.g className=\"barcode\">\n <path d=\"M8 7v10\" />\n <path d=\"M12 7v10\" />\n <path d=\"M17 7v10\" />\n </motion.g>\n\n <motion.line\n className=\"scan-line\"\n x1=\"8\"\n x2=\"17\"\n y1=\"12\"\n y2=\"12\"\n strokeWidth={strokeWidth}\n initial={{ opacity: 0.3 }}\n />\n </motion.svg>\n );\n },\n);\n\nScanBarcodeIcon.displayName = \"ScanBarcodeIcon\";\nexport default ScanBarcodeIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ScanHeartIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\".heart\", { scale: 1.3 }, { duration: 0.25, ease: \"easeOut\" });\n animate(\".corners\", { scale: 0.85 }, { duration: 0.25, ease: \"easeOut\" });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".heart, .corners\",\n { scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.path className=\"corners\" d=\"M17 3h2a2 2 0 0 1 2 2v2\" />\n <motion.path className=\"corners\" d=\"M21 17v2a2 2 0 0 1-2 2h-2\" />\n <motion.path className=\"corners\" d=\"M3 7V5a2 2 0 0 1 2-2h2\" />\n <motion.path className=\"corners\" d=\"M7 21H5a2 2 0 0 1-2-2v-2\" />\n <motion.path\n className=\"heart\"\n style={{ transformOrigin: \"12px 13px\" }}\n d=\"M7.828 13.07A3 3 0 0 1 12 8.764a3 3 0 0 1 4.172 4.306l-3.447 3.62a1 1 0 0 1-1.449 0z\"\n />\n </motion.svg>\n );\n },\n);\n\nScanHeartIcon.displayName = \"ScanHeartIcon\";\nexport default ScanHeartIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SendHorizontalIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".paper-plane\",\n {\n x: [0, 2],\n opacity: [1, 0.7],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".paper-plane\",\n {\n x: 0,\n opacity: 1,\n },\n {\n duration: 0.3,\n ease: \"easeIn\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".paper-plane\",\n { x: 0, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <motion.g className=\"paper-plane\">\n <path d=\"M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z\" />\n <path d=\"M6 12h16\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nSendHorizontalIcon.displayName = \"SendHorizontalIcon\";\nexport default SendHorizontalIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SendIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".send-icon\",\n {\n x: [0, 24],\n y: [0, -24],\n opacity: [1, 0],\n },\n { duration: 0.25, ease: \"easeIn\" },\n );\n\n // instant reset\n await animate(\".send-icon\", { x: -24, y: 24 }, { duration: 0 });\n\n // come back\n await animate(\n \".send-icon\",\n {\n x: [-24, 0],\n y: [24, 0],\n opacity: [0, 1],\n },\n { duration: 0.25, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".send-icon\", { x: 0, y: 0, opacity: 1 }, { duration: 0.2 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"send-icon\" style={{ transformOrigin: \"center\" }}>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M10 14l11 -11\" />\n <path d=\"M21 3l-6.5 18a.55 .55 0 0 1 -1 0l-3.5 -7l-7 -3.5a.55 .55 0 0 1 0 -1l18 -6.5\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nSendIcon.displayName = \"SendIcon\";\nexport default SendIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ShieldCheck = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".shield-body\",\n { scale: [1, 1.05, 1] },\n { duration: 0.35, ease: \"easeOut\" },\n );\n\n await animate(\n \".shield-check\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".shield-body\", { scale: 1 }, { duration: 0.2 });\n animate(\n \".shield-check\",\n { pathLength: 1, opacity: 1 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.path\n className=\"shield-body\"\n style={{ transformOrigin: \"50% 50%\" }}\n d=\"M11.46 20.846a12 12 0 0 1 -7.96 -14.846a12 12 0 0 0 8.5 -3a12 12 0 0 0 8.5 3a12 12 0 0 1 -.09 7.06\"\n />\n\n <motion.path\n className=\"shield-check\"\n d=\"M15 19l2 2l4 -4\"\n initial={{ pathLength: 1, opacity: 1 }}\n />\n </motion.svg>\n );\n },\n);\n\nShieldCheck.displayName = \"ShieldCheck\";\nexport default ShieldCheck;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ShoppingCartIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".cart-upper\",\n {\n x: [0, 10, 0],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".cart-wheel-left\",\n {\n rotate: [0, 180, 0],\n x: [0, 10, 0],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".cart-wheel-right\",\n {\n rotate: [0, 180, 0],\n x: [0, 10, 0],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".cart-item\",\n {\n y: [0, -2, 0],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".cart-upper, .cart-wheel-left, .cart-wheel-right, .cart-item\",\n { x: 0, rotate: 0, y: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 48)}\n strokeMiterlimit=\"10\"\n strokeLinecap=\"square\"\n >\n <motion.path\n className=\"cart-upper\"\n d=\"M8.49994 10H41L37.569 21.4367C36.9345 23.5517 34.9879 25 32.7798 25H10.4999\"\n />\n\n <motion.path\n className=\"cart-wheel-left\"\n style={{ transformOrigin: \"11px 41px\" }}\n d=\"M11 45C13.2091 45 15 43.2091 15 41C15 38.7909 13.2091 37 11 37C8.79086 37 7 38.7909 7 41C7 43.2091 8.79086 45 11 45Z\"\n />\n\n <motion.path\n className=\"cart-wheel-right\"\n style={{ transformOrigin: \"37px 41px\" }}\n d=\"M37 45C39.2091 45 41 43.2091 41 41C41 38.7909 39.2091 37 37 37C34.7909 37 33 38.7909 33 41C33 43.2091 34.7909 45 37 45Z\"\n />\n\n <motion.path\n className=\"cart-upper\"\n d=\"M41 32H9.46174C7.17727 32 6.08953 29.1885 7.77914 27.651L10.6923 25L7.81067 5.14103C7.63231 3.91188 6.57863 3.00005 5.33661 3.00003L3 3\"\n />\n\n <motion.path className=\"cart-item cart-upper\" d=\"M30 16L30 19\" />\n <motion.path className=\"cart-item cart-upper\" d=\"M24 16L24 19\" />\n <motion.path className=\"cart-item cart-upper\" d=\"M18 16L18 19\" />\n </svg>\n </motion.div>\n );\n },\n);\n\nShoppingCartIcon.displayName = \"ShoppingCartIcon\";\nexport default ShoppingCartIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SimpleCheckedIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".check-path\",\n { pathLength: 0 },\n { duration: 0.1, ease: \"easeInOut\" },\n );\n await animate(\n \".check-path\",\n { pathLength: 1 },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".check-path\", { pathLength: 1 }, { duration: 0.2 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div ref={scope} onHoverStart={start} onHoverEnd={stop}>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n d=\"M5 12l5 5l10 -10\"\n className={`check-path ${className}`}\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nSimpleCheckedIcon.displayName = \"SimpleCheckedIcon\";\nexport default SimpleCheckedIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SkullEmoji = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".skull-head\",\n {\n rotate: [0, -8, 8, -8, 8, -4, 4, 0],\n y: [0, -2, 0, -2, 0, -1, 0],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".skull-eye-left, .skull-eye-right\",\n {\n scale: [1, 1.3, 0.8, 1.2, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n await animate(\n \".skull-tooth\",\n {\n y: [0, -3, 0, -2, 0, -3, 0],\n },\n {\n duration: 0.5,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n );\n await animate(\n \".skull-head\",\n {\n y: [0, -4, 0],\n scale: [1, 1.05, 1],\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".skull-head, .skull-eye-left, .skull-eye-right, .skull-tooth\",\n { rotate: 0, y: 0, scale: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n x=\"0px\"\n y=\"0px\"\n width={size}\n height={size}\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeMiterlimit=\"10\"\n strokeLinecap=\"square\"\n >\n <motion.path className=\"skull-tooth-left skull-tooth\" d=\"M14 27V30\" />\n <motion.path\n className=\"skull-tooth-right skull-tooth\"\n d=\"M18 27V30\"\n />\n <motion.path\n className=\"skull-head\"\n style={{ transformOrigin: \"16px 16px\" }}\n d=\"M16 2C9.09644 2 3.5 7.59644 3.5 14.5C3.5 18.8099 5.68123 22.6104 9 24.8577L9.32436 28.1936C9.424 29.2183 10.2854 30 11.315 30H20.685C21.7146 30 22.576 29.2183 22.6756 28.1936L23 24.8577C26.3188 22.6104 28.5 18.8099 28.5 14.5C28.5 7.59644 22.9036 2 16 2Z\"\n />\n <motion.path\n className=\"skull-eye-right\"\n style={{ transformOrigin: \"21px 16px\" }}\n d=\"M24 16C24 17.6569 22.6569 19 21 19C19.3431 19 18 17.6569 18 16C18 15.25 20.2198 13 21 13C22.6569 13 24 14.3431 24 16Z\"\n />\n <motion.path\n className=\"skull-eye-left\"\n style={{ transformOrigin: \"11px 16px\" }}\n d=\"M8 16C8 17.6569 9.34315 19 11 19C12.6569 19 14 17.6569 14 16C14 15.25 11.7802 13 11 13C9.34315 13 8 14.3431 8 16Z\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nSkullEmoji.displayName = \"SkullEmoji\";\nexport default SkullEmoji;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SlackIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".piece1\",\n { rotate: [0, -90, 0] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n animate(\n \".piece2\",\n { rotate: [0, 90, 0] },\n { duration: 0.6, ease: \"easeInOut\", delay: 0.1 },\n );\n animate(\n \".piece3\",\n { rotate: [0, -90, 0] },\n { duration: 0.6, ease: \"easeInOut\", delay: 0.2 },\n );\n animate(\n \".piece4\",\n { rotate: [0, 90, 0] },\n { duration: 0.6, ease: \"easeInOut\", delay: 0.3 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".piece1, .piece2, .piece3, .piece4\",\n { rotate: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g className=\"piece1\" style={{ transformOrigin: \"center\" }}>\n <path d=\"M12 12v-6a2 2 0 0 1 4 0v6m0 -2a2 2 0 1 1 2 2h-6\" />\n </motion.g>\n <motion.g className=\"piece2\" style={{ transformOrigin: \"center\" }}>\n <path d=\"M12 12h6a2 2 0 0 1 0 4h-6m2 0a2 2 0 1 1 -2 2v-6\" />\n </motion.g>\n <motion.g className=\"piece3\" style={{ transformOrigin: \"center\" }}>\n <path d=\"M12 12v6a2 2 0 0 1 -4 0v-6m0 2a2 2 0 1 1 -2 -2h6\" />\n </motion.g>\n <motion.g className=\"piece4\" style={{ transformOrigin: \"center\" }}>\n <path d=\"M12 12h-6a2 2 0 0 1 0 -4h6m-2 0a2 2 0 1 1 2 -2v6\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nSlackIcon.displayName = \"SlackIcon\";\nexport default SlackIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SlidersHorizontalIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n // Row 1: Slider at x=14\n animate(\n \".slider-1\",\n { x: [0, -4, 0] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\" },\n );\n animate(\n \".path-1-left\",\n { x2: [10, 6, 10] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\" },\n );\n animate(\n \".path-1-right\",\n { x1: [14, 10, 14] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\" },\n );\n\n // Row 2: Slider at x=8\n animate(\n \".slider-2\",\n { x: [0, 4, 0] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\", delay: 0.2 },\n );\n animate(\n \".path-2-left\",\n { x2: [8, 12, 8] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\", delay: 0.2 },\n );\n animate(\n \".path-2-right\",\n { x1: [12, 16, 12] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\", delay: 0.2 },\n );\n\n // Row 3: Slider at x=16\n animate(\n \".slider-3\",\n { x: [0, -4, 0] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\", delay: 0.4 },\n );\n animate(\n \".path-3-left\",\n { x2: [12, 8, 12] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\", delay: 0.4 },\n );\n animate(\n \".path-3-right\",\n { x1: [16, 12, 16] },\n { duration: 2, repeat: Infinity, ease: \"easeInOut\", delay: 0.4 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".slider-1, .slider-2, .slider-3\", { x: 0 }, { duration: 0.3 });\n // Reset paths manually to their original coordinates\n animate(\".path-1-left\", { x2: 10 }, { duration: 0.3 });\n animate(\".path-1-right\", { x1: 14 }, { duration: 0.3 });\n animate(\".path-2-left\", { x2: 8 }, { duration: 0.3 });\n animate(\".path-2-right\", { x1: 12 }, { duration: 0.3 });\n animate(\".path-3-left\", { x2: 12 }, { duration: 0.3 });\n animate(\".path-3-right\", { x1: 16 }, { duration: 0.3 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n {/* Row 1: y=5 */}\n <motion.line className=\"path-1-left\" x1=\"3\" y1=\"5\" x2=\"10\" y2=\"5\" />\n <motion.line className=\"slider-1\" x1=\"14\" y1=\"3\" x2=\"14\" y2=\"7\" />\n <motion.line className=\"path-1-right\" x1=\"14\" y1=\"5\" x2=\"21\" y2=\"5\" />\n\n {/* Row 2: y=12 */}\n <motion.line className=\"path-2-left\" x1=\"3\" y1=\"12\" x2=\"8\" y2=\"12\" />\n <motion.line className=\"slider-2\" x1=\"8\" y1=\"10\" x2=\"8\" y2=\"14\" />\n <motion.line className=\"path-2-right\" x1=\"12\" y1=\"12\" x2=\"21\" y2=\"12\" />\n\n {/* Row 3: y=19 */}\n <motion.line className=\"path-3-left\" x1=\"3\" y1=\"19\" x2=\"12\" y2=\"19\" />\n <motion.line className=\"slider-3\" x1=\"16\" y1=\"17\" x2=\"16\" y2=\"21\" />\n <motion.line className=\"path-3-right\" x1=\"16\" y1=\"19\" x2=\"21\" y2=\"19\" />\n </motion.svg>\n );\n },\n);\n\nSlidersHorizontalIcon.displayName = \"SlidersHorizontalIcon\";\nexport default SlidersHorizontalIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SnapchatIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".ghost\",\n { y: [0, -2, 0], scale: [1, 1.05, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n animate(\n \".arms\",\n { scaleX: [1, 1.1, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".ghost, .arms\",\n { y: 0, scale: 1, scaleX: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"ghost\"\n style={{ transformOrigin: \"center\" }}\n d=\"M16.882 7.842a4.882 4.882 0 0 0 -9.764 0c0 4.273 -.213 6.409 -4.118 8.118c2 .882 2 .882 3 3c3 0 4 2 6 2s3 -2 6 -2c1 -2.118 1 -2.118 3 -3c-3.906 -1.709 -4.118 -3.845 -4.118 -8.118z\"\n />\n <motion.path\n className=\"arms\"\n style={{ transformOrigin: \"center\" }}\n d=\"M3 16.01c4 -2.118 4 -4.118 1 -7.118\"\n />\n <motion.path\n className=\"arms\"\n style={{ transformOrigin: \"center\" }}\n d=\"M21 16.01c-4 -2.118 -4 -4.118 -1 -7.118\"\n />\n </motion.svg>\n );\n },\n);\n\nSnapchatIcon.displayName = \"SnapchatIcon\";\nexport default SnapchatIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SoupIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".steam\",\n {\n y: [-2, -4],\n opacity: [1, 0],\n },\n {\n duration: 0.8,\n ease: \"easeOut\",\n repeat: 2,\n },\n );\n\n await animate(\n \".bowl\",\n {\n rotate: [0, 1, -1, 0],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".steam\",\n {\n y: 0,\n opacity: 1,\n },\n {\n duration: 0.3,\n },\n );\n animate(\n \".bowl\",\n {\n rotate: 0,\n },\n {\n duration: 0.3,\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"bowl\" style={{ transformOrigin: \"12px 16px\" }}>\n <path d=\"M12 21a9 9 0 0 0 9-9H3a9 9 0 0 0 9 9Z\" />\n <path d=\"M7 21h10\" />\n <path d=\"M19.5 12 22 6\" />\n </motion.g>\n\n <motion.g className=\"steam\">\n <path d=\"M16.25 3c.27.1.8.53.75 1.36-.06.83-.93 1.2-1 2.02-.05.78.34 1.24.73 1.62\" />\n <path d=\"M11.25 3c.27.1.8.53.74 1.36-.05.83-.93 1.2-.98 2.02-.06.78.33 1.24.72 1.62\" />\n <path d=\"M6.25 3c.27.1.8.53.75 1.36-.06.83-.93 1.2-1 2.02-.05.78.34 1.24.74 1.62\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nSoupIcon.displayName = \"SoupIcon\";\nexport default SoupIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SparklesIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // main sparkle\n animate(\n \".sparkle-main\",\n { rotate: 180, scale: [1, 1.2, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n\n // top sparkle\n animate(\n \".sparkle-top\",\n {\n rotate: -90,\n scale: [1, 0.8, 1.1],\n opacity: [1, 0.6, 1],\n },\n { duration: 0.5, ease: \"easeInOut\", delay: 0.1 },\n );\n\n // bottom sparkle\n animate(\n \".sparkle-bottom\",\n {\n rotate: 90,\n scale: [1, 1.15, 0.9],\n opacity: [1, 0.7, 1],\n },\n { duration: 0.5, ease: \"easeInOut\", delay: 0.05 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".sparkle-main\", { rotate: 0, scale: 1 }, { duration: 0.25 });\n animate(\n \".sparkle-top\",\n { rotate: 0, scale: 1, opacity: 1 },\n { duration: 0.25 },\n );\n animate(\n \".sparkle-bottom\",\n { rotate: 0, scale: 1, opacity: 1 },\n { duration: 0.25 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* bottom sparkle */}\n <motion.path\n className=\"sparkle-bottom\"\n d=\"M16 18a2 2 0 0 1 2 2a2 2 0 0 1 2 -2a2 2 0 0 1 -2 -2a2 2 0 0 1 -2 2z\"\n style={{ transformOrigin: \"18px 18px\" }}\n />\n\n {/* top sparkle */}\n <motion.path\n className=\"sparkle-top\"\n d=\"M16 6a2 2 0 0 1 2 2a2 2 0 0 1 2 -2a2 2 0 0 1 -2 -2a2 2 0 0 1 -2 2z\"\n style={{ transformOrigin: \"18px 6px\" }}\n />\n\n {/* main sparkle */}\n <motion.path\n className=\"sparkle-main\"\n d=\"M9 18a6 6 0 0 1 6 -6a6 6 0 0 1 -6 -6a6 6 0 0 1 -6 6a6 6 0 0 1 6 6z\"\n style={{ transformOrigin: \"9px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nSparklesIcon.displayName = \"SparklesIcon\";\nexport default SparklesIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SpotifyIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\n \".circle\",\n { scale: [1, 1.05, 1] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n animationControls.current.push(\n animate(\n \".wave1\",\n { x: [-2, 2, -2], pathLength: [1, 0.8, 1] },\n { duration: 0.8, ease: \"easeInOut\", repeat: Infinity },\n ),\n );\n animationControls.current.push(\n animate(\n \".wave2\",\n { x: [-1, 1, -1], pathLength: [1, 0.9, 1] },\n { duration: 0.7, ease: \"easeInOut\", repeat: Infinity },\n ),\n );\n animationControls.current.push(\n animate(\n \".wave3\",\n { x: [-2, 2, -2], pathLength: [1, 0.85, 1] },\n { duration: 0.9, ease: \"easeInOut\", repeat: Infinity },\n ),\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\".circle\", { scale: 1 }, { duration: 0.2 });\n animate(\".wave1\", { x: 0, pathLength: 1 }, { duration: 0.2 });\n animate(\".wave2\", { x: 0, pathLength: 1 }, { duration: 0.2 });\n animate(\".wave3\", { x: 0, pathLength: 1 }, { duration: 0.2 });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"circle\"\n style={{ transformOrigin: \"center\" }}\n d=\"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\"\n />\n <motion.path\n className=\"wave2\"\n d=\"M8 11.973c2.5 -1.473 5.5 -.973 7.5 .527\"\n />\n <motion.path className=\"wave3\" d=\"M9 15c1.5 -1 4 -1 5 .5\" />\n <motion.path className=\"wave1\" d=\"M7 9c2 -1 6 -2 10 .5\" />\n </motion.svg>\n );\n },\n);\n\nSpotifyIcon.displayName = \"SpotifyIcon\";\nexport default SpotifyIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst Stack3Icon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // top layer\n animate(\n \".layer-1\",\n { y: -3, scale: 1.05 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n\n // middle layers\n animate(\n \".layer-2\",\n { y: -1, opacity: 0.8 },\n { duration: 0.3, delay: 0.05, ease: \"easeOut\" },\n );\n\n // bottom layer\n animate(\n \".layer-3\",\n { y: 1, opacity: 0.6 },\n { duration: 0.3, delay: 0.1, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".layer-1\", { y: 0, scale: 1 }, { duration: 0.25 });\n animate(\".layer-2\", { y: 0, opacity: 1 }, { duration: 0.25 });\n animate(\".layer-3\", { y: 0, opacity: 1 }, { duration: 0.25 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* top */}\n <motion.path className=\"layer-1\" d=\"M12 2l-8 4l8 4l8 -4l-8 -4\" />\n\n {/* middle */}\n <motion.path className=\"layer-2\" d=\"M4 10l8 4l8 -4\" />\n <motion.path className=\"layer-2\" d=\"M4 14l8 4l8 -4\" />\n\n {/* bottom */}\n <motion.path className=\"layer-3\" d=\"M4 18l8 4l8 -4\" />\n </motion.svg>\n );\n },\n);\n\nStack3Icon.displayName = \"Stack3Icon\";\nexport default Stack3Icon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst StackIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(() => {\n animate(\n \".layer-top\",\n { y: -2, scale: 1.05 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n\n animate(\n \".layer-bottom\",\n { y: 1, opacity: 0.7 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".layer-top\",\n { y: 0, scale: 1 },\n { duration: 0.25, ease: \"easeInOut\" },\n );\n\n animate(\n \".layer-bottom\",\n { y: 0, opacity: 1 },\n { duration: 0.25, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Top layer */}\n <motion.path className=\"layer-top\" d=\"M12 6l-8 4l8 4l8 -4l-8 -4\" />\n\n {/* Bottom layer */}\n <motion.path className=\"layer-bottom\" d=\"M4 14l8 4l8 -4\" />\n </motion.svg>\n );\n },\n);\n\nStackIcon.displayName = \"StackIcon\";\nexport default StackIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst StarIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".star-fill\",\n { opacity: [0, 1], scale: [0.8, 1] },\n { duration: 0.4, ease: \"easeOut\" },\n );\n animate(\n \".star-outline\",\n { scale: [1, 1.1, 1], rotate: [0, -5, 5, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".star-fill\",\n { opacity: [1, 0] },\n { duration: 0.3, ease: \"easeOut\" },\n );\n animate(\n \".star-outline\",\n { scale: 1, rotate: 0 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"star-fill\"\n d=\"M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z\"\n fill={color}\n opacity={0}\n style={{ transformOrigin: \"center\" }}\n />\n <motion.path\n className=\"star-outline\"\n d=\"M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nStarIcon.displayName = \"StarIcon\";\nexport default StarIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst SubscriptIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".x-mark\",\n { scale: [1, 1.06, 1] },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n animate(\n \".subscript\",\n {\n y: [0, 4, 3],\n scale: [1, 0.9, 0.92],\n opacity: [1, 0.9, 1],\n },\n {\n duration: 0.45,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".x-mark, .subscript\",\n { scale: 1, y: 0, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.g className=\"x-mark\">\n <path d=\"m4 5 8 8\" />\n <path d=\"m12 5-8 8\" />\n </motion.g>\n\n <motion.path\n className=\"subscript\"\n d=\"M20 19h-4c0-1.5.44-2 1.5-2.5S20 15.33 20 14c0-.47-.17-.93-.48-1.29a2.11 2.11 0 0 0-2.62-.44c-.42.24-.74.62-.9 1.07\"\n />\n </motion.svg>\n );\n },\n);\n\nSubscriptIcon.displayName = \"SubscriptIcon\";\nexport default SubscriptIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TargetIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Pulse all circles outward from center\n animate(\n \".circle-outer\",\n {\n scale: [1, 1.1, 1],\n opacity: [1, 0.7, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".circle-middle\",\n {\n scale: [1, 1.15, 1],\n opacity: [1, 0.6, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n );\n\n await animate(\n \".circle-inner\",\n {\n scale: [1, 1.3, 1],\n opacity: [1, 0.5, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n delay: 0.2,\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".circle-outer, .circle-middle, .circle-inner\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.circle\n className=\"circle-outer\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n\n <motion.circle\n className=\"circle-middle\"\n cx=\"12\"\n cy=\"12\"\n r=\"6\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n\n <motion.circle\n className=\"circle-inner\"\n cx=\"12\"\n cy=\"12\"\n r=\"2\"\n style={{ transformOrigin: \"12px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nTargetIcon.displayName = \"TargetIcon\";\nexport default TargetIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TelephoneIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\".stadium-roof\", { y: -3 }, { duration: 0.25, ease: \"easeOut\" });\n\n animate(\n \".stadium-pillar-left\",\n { y: -2 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n\n animate(\n \".stadium-pillar-right\",\n { y: -2 },\n { duration: 0.25, ease: \"easeOut\" },\n );\n animate(\n \".stadium-center\",\n { scale: [1, 1.15, 1] },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\n \".stadium-bowl\",\n { scaleY: [1, 0.97, 1] },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n const resetProps = { x: 0, y: 0, scale: 1, scaleY: 1 };\n const resetOptions = { duration: 0.25, ease: \"easeInOut\" as const };\n\n animate(\n \".stadium-roof, .stadium-pillar-left, .stadium-pillar-right, .stadium-center, .stadium-bowl\",\n resetProps,\n resetOptions,\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.div\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n className={`inline-flex cursor-pointer ${className}`}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 48)}\n strokeMiterlimit=\"10\"\n strokeLinecap=\"square\"\n >\n <motion.path\n className=\"stadium-bowl\"\n style={{ transformOrigin: \"24px 35px\" }}\n d=\"M38 43H10C7.23858 43 5 40.7614 5 38V34.8496C5 33.6561 5.42696 32.5019 6.20372 31.5957L17 19H31L41.7963 31.5957C42.573 32.5019 43 33.6561 43 34.8496V38C43 40.7614 40.7614 43 38 43Z\"\n />\n\n <motion.path\n className=\"stadium-center\"\n style={{ transformOrigin: \"24px 32px\" }}\n d=\"M24 37C26.7614 37 29 34.7614 29 32C29 29.2386 26.7614 27 24 27C21.2386 27 19 29.2386 19 32C19 34.7614 21.2386 37 24 37Z\"\n />\n\n <motion.path\n className=\"stadium-roof\"\n d=\"M11 18H7.5C6.11929 18 5 16.8807 5 15.5V12.263C5 10.4575 6.13996 8.83551 7.84843 8.19566C19.2334 3.93478 28.7666 3.93478 40.1516 8.19566C41.86 8.83551 43 10.4575 43 12.263V15.5C43 16.8807 41.8807 18 40.5 18H37\"\n />\n\n <motion.path\n className=\"stadium-pillar stadium-pillar-left\"\n d=\"M17 19V14\"\n />\n\n <motion.path\n className=\"stadium-pillar stadium-pillar-right\"\n d=\"M31 19V14\"\n />\n </svg>\n </motion.div>\n );\n },\n);\n\nTelephoneIcon.displayName = \"TelephoneIcon\";\nexport default TelephoneIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TerminalIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".cursor-line\",\n { opacity: [1, 0, 1, 0, 1] },\n { duration: 0.8, ease: \"easeInOut\" },\n );\n animate(\n \".terminal-chevron\",\n { x: [0, 2, 0] },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".cursor-line\",\n { opacity: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n animate(\n \".terminal-chevron\",\n { x: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path className=\"terminal-chevron\" d=\"M5 7l5 5l-5 5\" />\n <motion.path className=\"cursor-line\" d=\"M12 19l7 0\" />\n </motion.svg>\n );\n },\n);\n\nTerminalIcon.displayName = \"TerminalIcon\";\nexport default TerminalIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { scaledStrokeWidth } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst ToggleIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".toggle-knob\",\n {\n x: [0, 12],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n animate(\n \".toggle-track\",\n {\n opacity: [1, 0.8, 1],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".toggle-knob\", { x: 0 }, { duration: 0.2, ease: \"easeOut\" });\n animate(\n \".toggle-track\",\n { opacity: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 32 32\"\n fill=\"none\"\n stroke={color}\n strokeWidth={scaledStrokeWidth(strokeWidth, 32)}\n strokeLinecap=\"square\"\n strokeMiterlimit=\"10\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"toggle-track\"\n d=\"m10,7h12c4.971,0,9,4.029,9,9h0c0,4.971-4.029,9-9,9h-12c-4.971,0-9-4.029-9-9h0c0-4.971,4.029-9,9-9Z\"\n />\n\n <motion.circle\n className=\"toggle-knob\"\n cx=\"10\"\n cy=\"16\"\n r=\"5\"\n style={{ transformOrigin: \"10px 16px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nToggleIcon.displayName = \"ToggleIcon\";\nexport default ToggleIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nexport interface TrashIconProps extends AnimatedIconProps {\n shakeOnClick?: boolean;\n dangerHover?: boolean;\n keepOpenOnDelete?: boolean;\n}\n\nconst TrashIcon = forwardRef<AnimatedIconHandle, TrashIconProps>(\n (\n {\n shakeOnClick = false,\n dangerHover = false,\n keepOpenOnDelete = false,\n size = 24,\n color = \"currentColor\",\n strokeWidth = 2,\n className = \"\",\n },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const openLid = useCallback(async () => {\n await Promise.all([\n animate(\n \".trash-lid-lower\",\n { rotate: -25, y: -4 },\n { duration: 0.25, ease: \"easeOut\" },\n ),\n animate(\n \".trash-lid-upper\",\n { rotate: -35, y: -6, x: -2 },\n { duration: 0.25, ease: \"easeOut\" },\n ),\n ]);\n }, [animate]);\n\n const closeLid = useCallback(async () => {\n await Promise.all([\n animate(\n \".trash-lid-lower\",\n { rotate: 0, y: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n ),\n animate(\n \".trash-lid-upper\",\n { rotate: 0, y: 0, x: 0 },\n { duration: 0.2, ease: \"easeInOut\" },\n ),\n ]);\n }, [animate]);\n\n const dangerHoverAnimation = useCallback(async () => {\n if (!dangerHover) return;\n\n await animate(\n \".trash-icon\",\n { stroke: \"#ef4444\" },\n { duration: 0.2, delay: 0.1, ease: \"easeInOut\" },\n );\n }, [animate, dangerHover]);\n\n const resetColor = useCallback(async () => {\n if (!dangerHover) return;\n\n await animate(\n \".trash-icon\",\n { stroke: \"currentColor\" },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate, dangerHover]);\n\n const hoverAnimation = useCallback(async () => {\n await openLid();\n await dangerHoverAnimation();\n }, [openLid, dangerHoverAnimation]);\n\n const hoverEndAnimation = useCallback(async () => {\n resetColor();\n closeLid();\n }, [resetColor, closeLid]);\n\n const clickAnimation = useCallback(async () => {\n if (shakeOnClick) {\n await animate(\n \".trash-icon\",\n { x: [0, -2, 2, -1, 0] },\n { duration: 0.25, ease: \"easeInOut\" },\n );\n }\n\n if (keepOpenOnDelete) {\n await openLid();\n }\n }, [shakeOnClick, keepOpenOnDelete, animate, openLid]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: openLid,\n stopAnimation: closeLid,\n }));\n\n return (\n <motion.svg\n ref={scope}\n className={`cursor-pointer ${className} trash-icon`}\n onHoverStart={hoverAnimation}\n onHoverEnd={hoverEndAnimation}\n onTap={clickAnimation}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M4 7l16 0\"\n className=\"trash-lid-lower\"\n style={{ transformOrigin: \"50% 100%\" }}\n />\n\n <path d=\"M10 11l0 6\" />\n <path d=\"M14 11l0 6\" />\n <path d=\"M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12\" />\n\n <motion.path\n d=\"M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3\"\n className=\"trash-lid-upper\"\n style={{ transformOrigin: \"50% 100%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nTrashIcon.displayName = \"TrashIcon\";\nexport default TrashIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TravelBag = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".front-flap\",\n { skewX: 20 },\n { duration: 0.4, ease: [0.4, 0, 0.2, 1] },\n );\n animate(\n \".elements\",\n { x: -1, scale: 0.9, skewX: 20 },\n { duration: 0.3, ease: \"easeInOut\" },\n );\n animate(\".back-flap\", { x: 4 }, { duration: 0.3, ease: \"easeInOut\" });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".front-flap\", { skewX: 0 }, { duration: 0.3, ease: \"easeIn\" });\n animate(\n \".elements\",\n { x: 0, scale: 1, skewX: 0 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n animate(\".back-flap\", { x: 0 }, { duration: 0.3, ease: \"easeOut\" });\n }, [animate]);\n\n useImperativeHandle(\n ref,\n () => ({\n startAnimation: start,\n stopAnimation: stop,\n }),\n [start, stop],\n );\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"front-flap\"\n d=\"M12.75 4.25h-6m6 0c2.828 0 4.243 0 5.121.879.879.878.879 2.293.879 5.121v2.5c0 2.828 0 4.243-.879 5.121-.878.879-2.293.879-5.121.879h-6c-2.828 0-4.243 0-5.121-.879C.75 16.993.75 15.578.75 12.75v-2.5c0-2.828 0-4.243.879-5.121.878-.879 2.293-.879 5.121-.879\"\n ></motion.path>\n <motion.path\n className=\"elements\"\n d=\"M18.75 8.25a4 4 0 0 1-4-4\"\n ></motion.path>\n <motion.path\n className=\"elements\"\n d=\"m7 9.75-.75.75.75.75.75-.75z\"\n ></motion.path>\n <motion.path\n className=\"elements\"\n d=\"M.75 14.75a4 4 0 0 1 4 4m-4-10.5a4 4 0 0 0 4-4m14 10.5a4 4 0 0 0-4 4\"\n ></motion.path>\n <motion.path\n className=\"elements\"\n d=\"m11.75 14.55-1.5-.3 1.2-1.2z\"\n ></motion.path>\n <motion.path className=\"elements\" d=\"M12.25 8.75v.01\"></motion.path>\n <motion.path\n className=\"back-flap\"\n d=\"M12.75 4.25h-6v-.5c0-1.414 0-2.121.44-2.56C7.628.75 8.335.75 9.75.75s2.121 0 2.56.44c.44.438.44 1.145.44 2.56zm0 0c2.828 0 4.243 0 5.121.879.879.878.879 2.293.879 5.121v2.5c0 2.828 0 4.243-.879 5.121-.878.879-2.293.879-5.121.879\"\n ></motion.path>\n </motion.svg>\n );\n },\n);\n\nTravelBag.displayName = \"TravelBag\";\nexport default TravelBag;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TriangleAlertIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".triangle\",\n {\n y: [0, -1.5, 0],\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".exclamation-line\",\n {\n scaleY: [1, 1.35, 1],\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".exclamation-dot\",\n {\n scale: [1, 1.4, 1],\n opacity: [1, 0.6, 1],\n },\n {\n duration: 0.25,\n delay: 0.05,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".triangle\", { y: 0 }, { duration: 0.2, ease: \"easeOut\" });\n animate(\n \".exclamation-line\",\n { scaleY: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n animate(\n \".exclamation-dot\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"triangle\"\n d=\"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3\"\n />\n\n <g>\n <motion.path\n className=\"exclamation-line\"\n d=\"M12 9v4\"\n style={{ transformOrigin: \"12px 11px\" }}\n />\n <motion.path\n className=\"exclamation-dot\"\n d=\"M12 17h.01\"\n style={{ transformOrigin: \"12px 17px\" }}\n />\n </g>\n </motion.svg>\n );\n },\n);\n\nTriangleAlertIcon.displayName = \"TriangleAlertIcon\";\nexport default TriangleAlertIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TrophyIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Victory Lift and Tilt\n animate(\n \".trophy-group\",\n {\n y: [0, -4, -4, 0],\n rotate: [0, -10, 10, 0],\n },\n {\n duration: 0.8,\n ease: \"easeOut\",\n times: [0, 0.4, 0.7, 1],\n },\n );\n\n // Confetti Burst\n const confettiSequences = [\n { selector: \".confetti-1\", x: [0, -12], y: [0, -15], rotate: [0, 140] },\n { selector: \".confetti-2\", x: [0, -5], y: [0, -18], rotate: [0, -100] },\n { selector: \".confetti-3\", x: [0, 5], y: [0, -18], rotate: [0, 120] },\n { selector: \".confetti-4\", x: [0, 12], y: [0, -15], rotate: [0, -140] },\n ];\n\n confettiSequences.forEach((conf) => {\n animate(\n conf.selector,\n {\n x: conf.x,\n y: conf.y,\n rotate: conf.rotate,\n opacity: [0, 1, 0],\n scale: [0, 1, 0.5],\n },\n {\n duration: 0.8,\n ease: \"easeOut\",\n delay: 0.1,\n },\n );\n });\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".trophy-group\", { y: 0, rotate: 0 }, { duration: 0.3 });\n animate(\n \".confetti-1, .confetti-2, .confetti-3, .confetti-4\",\n { opacity: 0, scale: 0 },\n { duration: 0.2 },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g\n className=\"trophy-group\"\n style={{ transformOrigin: \"center 20px\" }}\n >\n {/* Handles */}\n <path d=\"M6 9H4.5a1 1 0 0 1 0-5H6\" />\n <path d=\"M18 9h1.5a1 1 0 0 0 0-5H18\" />\n\n {/* Base */}\n <path d=\"M4 22h16\" />\n <path d=\"M10 14.66v1.626a2 2 0 0 1-.976 1.696A5 5 0 0 0 7 21.978\" />\n <path d=\"M14 14.66v1.626a2 2 0 0 0 .976 1.696A5 5 0 0 1 17 21.978\" />\n\n {/* Cup Body */}\n <path d=\"M6 9a6 6 0 0 0 12 0V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1z\" />\n\n {/* Confetti Pieces */}\n <motion.rect\n className=\"confetti-1\"\n x=\"11\"\n y=\"6\"\n width=\"2\"\n height=\"2\"\n rx=\"0.5\"\n fill=\"#FFD700\"\n stroke=\"none\"\n opacity={0}\n style={{ transformOrigin: \"center\" }}\n />\n <motion.rect\n className=\"confetti-2\"\n x=\"12\"\n y=\"5\"\n width=\"2\"\n height=\"2\"\n rx=\"0.5\"\n fill=\"#FF4500\"\n stroke=\"none\"\n opacity={0}\n style={{ transformOrigin: \"center\" }}\n />\n <motion.rect\n className=\"confetti-3\"\n x=\"13\"\n y=\"6\"\n width=\"2\"\n height=\"2\"\n rx=\"0.5\"\n fill=\"#00BFFF\"\n stroke=\"none\"\n opacity={0}\n style={{ transformOrigin: \"center\" }}\n />\n <motion.rect\n className=\"confetti-4\"\n x=\"12\"\n y=\"7\"\n width=\"2\"\n height=\"2\"\n rx=\"0.5\"\n fill=\"#32CD32\"\n stroke=\"none\"\n opacity={0}\n style={{ transformOrigin: \"center\" }}\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nTrophyIcon.displayName = \"TrophyIcon\";\nexport default TrophyIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TruckElectricIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".truck\",\n {\n x: [0, 30],\n opacity: [1, 0],\n },\n {\n duration: 0.5,\n ease: \"easeIn\",\n },\n );\n\n animate(\n \".truck\",\n {\n x: -30,\n },\n {\n duration: 0,\n },\n );\n\n await animate(\n \".truck\",\n {\n x: [-30, 0],\n opacity: [0, 1],\n },\n {\n duration: 0.5,\n ease: \"easeOut\",\n delay: 0.1,\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".truck\",\n { x: 0, opacity: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n <motion.g className=\"truck\">\n <path d=\"M14 19V7a2 2 0 0 0-2-2H9\" />\n <path d=\"M15 19H9\" />\n <path d=\"M19 19h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.62L18.3 9.38a1 1 0 0 0-.78-.38H14\" />\n <path d=\"M2 13v5a1 1 0 0 0 1 1h2\" />\n <path d=\"M4 3 2.15 5.15a.495.495 0 0 0 .35.86h2.15a.47.47 0 0 1 .35.86L3 9.02\" />\n <circle cx=\"17\" cy=\"19\" r=\"2\" />\n <circle cx=\"7\" cy=\"19\" r=\"2\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nTruckElectricIcon.displayName = \"TruckElectricIcon\";\nexport default TruckElectricIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TwitterIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".bird\",\n {\n y: [0, -6, -13],\n x: [0, 4, 8],\n rotate: [0, -8, -16],\n scale: [1, 1.05, 1.1],\n opacity: [1, 1, 0],\n },\n {\n duration: 0.8,\n ease: \"easeIn\",\n },\n );\n\n animate(\n \".bird\",\n {\n y: 0,\n x: 0,\n rotate: 0,\n scale: 1,\n opacity: 1,\n },\n {\n duration: 0.6,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".bird\",\n {\n y: 0,\n x: 0,\n rotate: 0,\n scale: 1,\n opacity: 1,\n },\n {\n duration: 0.2,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"bird\"\n style={{ transformOrigin: \"12px 12px\" }}\n d=\"M22 4s-.7 2.1-2 3.4c1.6 10-9.4 17.3-18 11.6 2.2.1 4.4-.6 6-2C3 15.5.5 9.6 3 5c2.2 2.6 5.6 4.1 9 4-.9-4.2 4-6.6 7-3.8 1.1 0 3-1.2 3-1.2z\"\n />\n </motion.svg>\n );\n },\n);\n\nTwitterIcon.displayName = \"TwitterIcon\";\nexport default TwitterIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TwitterXIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".x-icon\",\n { scale: [1, 1.1, 1], rotate: [0, -10, 10, 0] },\n { duration: 0.5, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".x-icon\",\n { scale: 1, rotate: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.g className=\"x-icon\" style={{ transformOrigin: \"center\" }}>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M4 4l11.733 16h4.267l-11.733 -16z\" />\n <path d=\"M4 20l6.768 -6.768m2.46 -2.46l6.772 -6.772\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nTwitterXIcon.displayName = \"TwitterXIcon\";\nexport default TwitterXIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst TypescriptIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".ts-text\",\n { pathLength: [0, 1], opacity: [0, 1] },\n { duration: 0.6, ease: \"easeOut\" },\n );\n await animate(\n \".border\",\n { scale: [1, 1.03, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".ts-text\", { pathLength: 1, opacity: 1 }, { duration: 0.2 });\n animate(\".border\", { scale: 1 }, { duration: 0.2 });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.path\n className=\"ts-text\"\n initial={{ pathLength: 1, opacity: 1 }}\n d=\"M15 17.5c.32 .32 .754 .5 1.207 .5h.543c.69 0 1.25 -.56 1.25 -1.25v-.25a1.5 1.5 0 0 0 -1.5 -1.5a1.5 1.5 0 0 1 -1.5 -1.5v-.25c0 -.69 .56 -1.25 1.25 -1.25h.543c.453 0 .887 .18 1.207 .5\"\n />\n <motion.path\n className=\"ts-text\"\n initial={{ pathLength: 1, opacity: 1 }}\n d=\"M9 12h4\"\n />\n <motion.path\n className=\"ts-text\"\n initial={{ pathLength: 1, opacity: 1 }}\n d=\"M11 12v6\"\n />\n <motion.path\n className=\"border\"\n style={{ transformOrigin: \"center\" }}\n d=\"M21 19v-14a2 2 0 0 0 -2 -2h-14a2 2 0 0 0 -2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2 -2z\"\n />\n </motion.svg>\n );\n },\n);\n\nTypescriptIcon.displayName = \"TypescriptIcon\";\nexport default TypescriptIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst UnlinkIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".chain-left\",\n {\n x: -3,\n y: 3,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n await animate(\n \".chain-right\",\n {\n x: 3,\n y: -3,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".break-indicator\",\n {\n scale: [1, 1.2, 1],\n opacity: [1, 0.6, 1],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".chain-left\",\n {\n x: 0,\n y: 0,\n },\n {\n duration: 0.3,\n ease: \"easeIn\",\n },\n );\n\n animate(\n \".chain-right\",\n {\n x: 0,\n y: 0,\n },\n {\n duration: 0.3,\n ease: \"easeIn\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".chain-left\",\n { x: 0, y: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n animate(\n \".chain-right\",\n { x: 0, y: 0 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n animate(\n \".break-indicator\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"chain-right\"\n d=\"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71\"\n />\n\n <motion.path\n className=\"chain-left\"\n d=\"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71\"\n />\n\n <motion.g className=\"break-indicator\">\n <line x1=\"8\" x2=\"8\" y1=\"2\" y2=\"5\" />\n <line x1=\"2\" x2=\"5\" y1=\"8\" y2=\"8\" />\n <line x1=\"16\" x2=\"16\" y1=\"19\" y2=\"22\" />\n <line x1=\"19\" x2=\"22\" y1=\"16\" y2=\"16\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nUnlinkIcon.displayName = \"UnlinkIcon\";\nexport default UnlinkIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst UnorderedListIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Lines extend from left to right\n animate(\n \".list-line-1\",\n {\n scaleX: [0, 1],\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".list-line-2\",\n {\n scaleX: [0, 1],\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n delay: 0.1,\n },\n );\n\n animate(\n \".list-line-3\",\n {\n scaleX: [0, 1],\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n delay: 0.2,\n },\n );\n\n // Bullets pulse\n animate(\n \".list-bullets\",\n {\n scale: [1, 1.3, 1],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".list-line-1\",\n {\n scaleX: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".list-line-2\",\n {\n scaleX: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".list-line-3\",\n {\n scaleX: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".list-bullets\",\n {\n scale: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* List lines */}\n <motion.path\n d=\"M9 6l11 0\"\n className=\"list-line-1\"\n style={{ transformOrigin: \"9px 6px\" }}\n />\n <motion.path\n d=\"M9 12l11 0\"\n className=\"list-line-2\"\n style={{ transformOrigin: \"9px 12px\" }}\n />\n <motion.path\n d=\"M9 18l11 0\"\n className=\"list-line-3\"\n style={{ transformOrigin: \"9px 18px\" }}\n />\n\n {/* Bullets */}\n <motion.g className=\"list-bullets\">\n <path d=\"M5 6l0 .01\" />\n <path d=\"M5 12l0 .01\" />\n <path d=\"M5 18l0 .01\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nUnorderedListIcon.displayName = \"UnorderedListIcon\";\nexport default UnorderedListIcon;\n","import { forwardRef, useImperativeHandle, useCallback, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst UploadIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const isAnimatingRef = useRef(false);\n\n const start = useCallback(async () => {\n if (isAnimatingRef.current) return;\n isAnimatingRef.current = true;\n\n while (isAnimatingRef.current) {\n // 1. Fly Up and Fade Out\n await animate(\n \".arrow-group\",\n { y: -12, opacity: 0 },\n { duration: 0.4, ease: \"easeIn\" },\n );\n\n if (!isAnimatingRef.current) break;\n\n // 2. Instant Reset to Bottom\n await animate(\".arrow-group\", { y: 12, opacity: 0 }, { duration: 0 });\n\n // 3. Fly In from Bottom to Center\n await animate(\n \".arrow-group\",\n { y: 0, opacity: 1 },\n { duration: 0.4, ease: \"easeOut\" },\n );\n\n if (!isAnimatingRef.current) break;\n\n // Small pause at center for \"intention\"\n await new Promise((resolve) => setTimeout(resolve, 200));\n }\n }, [animate]);\n\n const stop = useCallback(() => {\n isAnimatingRef.current = false;\n animate(\n \".arrow-group\",\n { y: 0, opacity: 1 },\n { duration: 0.3, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ overflow: \"visible\" }}\n >\n {/* Base bracket */}\n <path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\" />\n\n {/* Arrow (Main & Only) */}\n <motion.g className=\"arrow-group\">\n <path d=\"M12 3v12\" />\n <path d=\"m17 8-5-5-5 5\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nUploadIcon.displayName = \"UploadIcon\";\nexport default UploadIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst UserCheckIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // User bounces slightly\n animate(\n \".user-avatar\",\n {\n scale: 1.05,\n y: -1,\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n\n // Checkmark draws in and scales\n animate(\n \".check-mark\",\n {\n pathLength: [0, 1],\n scale: 1.1,\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".user-avatar\",\n {\n scale: 1,\n y: 0,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".check-mark\",\n {\n pathLength: 1,\n scale: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* User avatar */}\n <motion.g\n className=\"user-avatar\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <path d=\"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0\" />\n <path d=\"M6 21v-2a4 4 0 0 1 4 -4h4\" />\n </motion.g>\n\n {/* Checkmark */}\n <motion.path\n d=\"M15 19l2 2l4 -4\"\n className=\"check-mark\"\n style={{ transformOrigin: \"18px 19px\" }}\n initial={{ pathLength: 1 }}\n />\n </motion.svg>\n );\n },\n);\n\nUserCheckIcon.displayName = \"UserCheckIcon\";\nexport default UserCheckIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst UserIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".user-avatar\",\n {\n scale: 1.05,\n y: -1,\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".user-avatar\",\n {\n scale: 1,\n y: 0,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g\n className=\"user-avatar\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <path d=\"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0\" />\n <path d=\"M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nUserIcon.displayName = \"UserIcon\";\nexport default UserIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst UserPlusIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // User bounces slightly\n animate(\n \".user-avatar\",\n {\n scale: 1.05,\n y: -1,\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n\n // Plus sign expands and rotates\n animate(\n \".plus-sign\",\n {\n scale: 1.15,\n rotate: 90,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".user-avatar\",\n {\n scale: 1,\n y: 0,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".plus-sign\",\n {\n scale: 1,\n rotate: 0,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* User avatar */}\n <motion.g\n className=\"user-avatar\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <path d=\"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0\" />\n <path d=\"M6 21v-2a4 4 0 0 1 4 -4h4\" />\n </motion.g>\n\n {/* Plus sign */}\n <motion.g\n className=\"plus-sign\"\n style={{ transformOrigin: \"19px 19px\" }}\n >\n <path d=\"M16 19h6\" />\n <path d=\"M19 16v6\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nUserPlusIcon.displayName = \"UserPlusIcon\";\nexport default UserPlusIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst UsersGroupIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Center user bounces\n animate(\n \".user-center\",\n {\n y: -2,\n scale: 1.05,\n },\n {\n duration: 0.25,\n ease: \"easeOut\",\n },\n );\n\n // Left user moves slightly left\n animate(\n \".user-left\",\n {\n x: -1,\n scale: 1.02,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n delay: 0.05,\n },\n );\n\n // Right user moves slightly right\n animate(\n \".user-right\",\n {\n x: 1,\n scale: 1.02,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n delay: 0.05,\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".user-center\",\n {\n x: 0,\n y: 0,\n scale: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".user-left\",\n {\n x: 0,\n y: 0,\n scale: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".user-right\",\n {\n x: 0,\n y: 0,\n scale: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Center user */}\n <motion.g className=\"user-center\">\n <path d=\"M10 13a2 2 0 1 0 4 0a2 2 0 0 0 -4 0\" />\n <path d=\"M8 21v-1a2 2 0 0 1 2 -2h4a2 2 0 0 1 2 2v1\" />\n </motion.g>\n\n {/* Right user */}\n <motion.g className=\"user-right\">\n <path d=\"M15 5a2 2 0 1 0 4 0a2 2 0 0 0 -4 0\" />\n <path d=\"M17 10h2a2 2 0 0 1 2 2v1\" />\n </motion.g>\n\n {/* Left user */}\n <motion.g className=\"user-left\">\n <path d=\"M5 5a2 2 0 1 0 4 0a2 2 0 0 0 -4 0\" />\n <path d=\"M3 13v-1a2 2 0 0 1 2 -2h2\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nUsersGroupIcon.displayName = \"UsersGroupIcon\";\nexport default UsersGroupIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst UsersIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Primary user bounces up slightly\n animate(\n \".user-primary\",\n {\n y: -2,\n scale: 1.05,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n\n // Secondary user (right side) moves slightly\n animate(\n \".user-secondary\",\n {\n x: 1,\n opacity: 0.8,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".user-primary\",\n {\n y: 0,\n scale: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".user-secondary\",\n {\n x: 0,\n opacity: 1,\n },\n {\n duration: 0.25,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Primary user (left) */}\n <motion.g className=\"user-primary\">\n <path d=\"M9 7m-4 0a4 4 0 1 0 8 0a4 4 0 1 0 -8 0\" />\n <path d=\"M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2\" />\n </motion.g>\n\n {/* Secondary user (right) */}\n <motion.g className=\"user-secondary\">\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\" />\n <path d=\"M21 21v-2a4 4 0 0 0 -3 -3.85\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nUsersIcon.displayName = \"UsersIcon\";\nexport default UsersIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst VinylIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n // Rotate the vinyl record\n animationControls.current.push(\n animate(\n \".vinyl-disc\",\n {\n rotate: [0, 360],\n },\n {\n duration: 3,\n repeat: Infinity,\n ease: \"linear\",\n },\n ),\n );\n\n // Pulse the center dot\n animationControls.current.push(\n animate(\n \".center-dot\",\n {\n scale: [1, 1.2, 1],\n },\n {\n duration: 1,\n repeat: Infinity,\n ease: \"easeInOut\",\n },\n ),\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n animate(\n \".vinyl-disc\",\n {\n rotate: 0,\n },\n {\n duration: 0.5,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".center-dot\",\n {\n scale: 1,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Vinyl disc */}\n <motion.path\n className=\"vinyl-disc\"\n d=\"M16 3.937a9 9 0 1 0 5 8.063\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n {/* Center dot */}\n <motion.path\n className=\"center-dot\"\n d=\"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\"\n />\n\n {/* Tonearm */}\n <path d=\"M20 4m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M20 4l-3.5 10l-2.5 2\" />\n </motion.svg>\n );\n },\n);\n\nVinylIcon.displayName = \"VinylIcon\";\nexport default VinylIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst Volume2Icon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".wave-inner\",\n {\n scale: [1, 1.2, 1],\n opacity: [1, 0.6, 1],\n },\n {\n duration: 0.6,\n ease: \"easeInOut\",\n },\n );\n\n await animate(\n \".wave-outer\",\n {\n scale: [1, 1.3, 1],\n opacity: [1, 0.4, 1],\n },\n {\n duration: 0.7,\n ease: \"easeInOut\",\n delay: 0.1,\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".wave-inner\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n animate(\n \".wave-outer\",\n { scale: 1, opacity: 1 },\n { duration: 0.2, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path d=\"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z\" />\n\n <motion.path\n className=\"wave-inner\"\n d=\"M16 9a5 5 0 0 1 0 6\"\n style={{ transformOrigin: \"16px 12px\" }}\n />\n\n <motion.path\n className=\"wave-outer\"\n d=\"M19.364 18.364a9 9 0 0 0 0-12.728\"\n style={{ transformOrigin: \"19.364px 12px\" }}\n />\n </motion.svg>\n );\n },\n);\n\nVolume2Icon.displayName = \"Volume2Icon\";\nexport default Volume2Icon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst VolumeXIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".speaker\",\n {\n x: [-1, 1, -1, 0],\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".x-mark\",\n {\n scale: [1, 1.15, 1],\n },\n {\n duration: 0.4,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".speaker\", { x: 0 }, { duration: 0.2, ease: \"easeOut\" });\n animate(\".x-mark\", { scale: 1 }, { duration: 0.2, ease: \"easeOut\" });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <motion.path\n className=\"speaker\"\n d=\"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z\"\n />\n\n <motion.g className=\"x-mark\" style={{ transformOrigin: \"19px 12px\" }}>\n <line x1=\"22\" x2=\"16\" y1=\"9\" y2=\"15\" />\n <line x1=\"16\" x2=\"22\" y1=\"9\" y2=\"15\" />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nVolumeXIcon.displayName = \"VolumeXIcon\";\nexport default VolumeXIcon;\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport { motion, useAnimate } from \"motion/react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\n\nconst WalletIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 40, className = \"\", strokeWidth = 2, color = \"currentColor\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = async () => {\n // Flap opens outward\n animate(\n \".flap\",\n { rotateY: 25, x: 2 },\n { duration: 0.4, ease: \"easeOut\" },\n );\n\n // Wallet expands slightly\n animate(\n \".wallet-body\",\n { scale: 1.05 },\n { duration: 0.4, ease: \"easeOut\" },\n );\n };\n\n const stop = async () => {\n animate(\".flap\", { rotateY: 0, x: 0 }, { duration: 0.4, ease: \"easeIn\" });\n\n animate(\".wallet-body\", { scale: 1 }, { duration: 0.4, ease: \"easeIn\" });\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n color={color}\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n style={{ perspective: \"400px\" }}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n className=\"wallet-body\"\n d=\"M17 8v-3a1 1 0 0 0 -1 -1h-10a2 2 0 0 0 0 4h12a1 1 0 0 1 1 1v3m0 4v3a1 1 0 0 1 -1 1h-12a2 2 0 0 1 -2 -2v-12\"\n />\n\n <motion.path\n className=\"flap\"\n d=\"M20 12v4h-4a2 2 0 0 1 0 -4h4\"\n style={{\n originX: \"50%\",\n originY: \"50%\",\n transformStyle: \"preserve-3d\",\n }}\n />\n </motion.svg>\n );\n },\n);\n\nWalletIcon.displayName = \"WalletIcon\";\n\nexport default WalletIcon;\n","import { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst WashingMachineIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n const animationControls = useRef<Array<ReturnType<typeof animate>>>([]);\n\n const start = async () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n // Continuously rotate the inner drum while hovering\n animationControls.current.push(\n animate(\n \".drum-inner\",\n {\n rotate: [0, 360],\n },\n {\n duration: 2,\n repeat: Infinity,\n ease: \"linear\",\n },\n ),\n );\n };\n\n const stop = () => {\n animationControls.current.forEach((control) => control.stop());\n animationControls.current = [];\n\n // Stop the rotation\n animate(\n \".drum-inner\",\n {\n rotate: 0,\n },\n {\n duration: 0.3,\n ease: \"easeOut\",\n },\n );\n };\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Machine body */}\n <path d=\"M5 3m0 2a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2z\" />\n\n {/* Drum outer */}\n <path d=\"M12 14m-4 0a4 4 0 1 0 8 0a4 4 0 1 0 -8 0\" />\n\n {/* Control buttons */}\n <path d=\"M8 6h.01\" />\n <path d=\"M11 6h.01\" />\n <path d=\"M14 6h2\" />\n\n {/* Inner drum - rotating part */}\n <motion.path\n className=\"drum-inner\"\n d=\"M8 14c1.333 -.667 2.667 -.667 4 0c1.333 .667 2.667 .667 4 0\"\n style={{ transformOrigin: \"50% 58.33%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nWashingMachineIcon.displayName = \"WashingMachineIcon\";\nexport default WashingMachineIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst WhatsappIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".phone-icon\",\n {\n rotate: [0, -15, 15, -10, 10, 0],\n },\n {\n duration: 0.4,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\n \".phone-icon\",\n {\n rotate: 0,\n },\n {\n duration: 0.2,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M3 21l1.65 -3.8a9 9 0 1 1 3.4 2.9l-5.05 .9\" />\n <motion.path\n className=\"phone-icon\"\n style={{ transformOrigin: \"50% 50%\" }}\n d=\"M9 10a.5 .5 0 0 0 1 0v-1a.5 .5 0 0 0 -1 0v1a5 5 0 0 0 5 5h1a.5 .5 0 0 0 0 -1h-1a.5 .5 0 0 0 0 1\"\n />\n </motion.svg>\n );\n },\n);\n\nWhatsappIcon.displayName = \"WhatsappIcon\";\nexport default WhatsappIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst WifiIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".wave-1\",\n { opacity: [1, 0.3, 1] },\n { duration: 0.6, ease: \"easeInOut\" },\n );\n animate(\n \".wave-2\",\n { opacity: [1, 0.3, 1] },\n { duration: 0.6, ease: \"easeInOut\", delay: 0.15 },\n );\n animate(\n \".wave-3\",\n { opacity: [1, 0.3, 1] },\n { duration: 0.6, ease: \"easeInOut\", delay: 0.3 },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".wave-1\", { opacity: 1 }, { duration: 0.2, ease: \"easeOut\" });\n animate(\".wave-2\", { opacity: 1 }, { duration: 0.2, ease: \"easeOut\" });\n animate(\".wave-3\", { opacity: 1 }, { duration: 0.2, ease: \"easeOut\" });\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M12 18l.01 0\" />\n <motion.path className=\"wave-1\" d=\"M9.172 15.172a4 4 0 0 1 5.656 0\" />\n <motion.path className=\"wave-2\" d=\"M6.343 12.343a8 8 0 0 1 11.314 0\" />\n <motion.path\n className=\"wave-3\"\n d=\"M3.515 9.515c4.686 -4.687 12.284 -4.687 17 0\"\n />\n </motion.svg>\n );\n },\n);\n\nWifiIcon.displayName = \"WifiIcon\";\nexport default WifiIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst WifiOffIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n animate(\n \".slash-line\",\n { pathLength: [0, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n animate(\n \".wifi-waves\",\n { opacity: [1, 0.5, 1] },\n { duration: 0.4, ease: \"easeInOut\" },\n );\n }, [animate]);\n\n const stop = useCallback(() => {\n animate(\".slash-line\", { rotate: 0 }, { duration: 0.2, ease: \"easeOut\" });\n animate(\n \".wifi-waves\",\n { opacity: 1 },\n { duration: 0.2, ease: \"easeOut\" },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n onHoverStart={start}\n onHoverEnd={stop}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <motion.g className=\"wifi-waves\">\n <path d=\"M12 18l.01 0\" />\n <path d=\"M9.172 15.172a4 4 0 0 1 5.656 0\" />\n <path d=\"M6.343 12.343a7.963 7.963 0 0 1 3.864 -2.14m4.163 .155a7.965 7.965 0 0 1 3.287 2\" />\n <path d=\"M3.515 9.515a12 12 0 0 1 3.544 -2.455m3.101 -.92a12 12 0 0 1 10.325 3.374\" />\n </motion.g>\n <motion.path\n className=\"slash-line\"\n d=\"M3 3l18 18\"\n style={{ transformOrigin: \"center\" }}\n />\n </motion.svg>\n );\n },\n);\n\nWifiOffIcon.displayName = \"WifiOffIcon\";\nexport default WifiOffIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst WorldIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Rotate the globe\n animate(\n \".world-meridians\",\n {\n pathLength: [0, 1],\n },\n {\n duration: 1,\n ease: \"linear\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".world-meridians\",\n {\n pathLength: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* Globe circle */}\n <motion.path\n d=\"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0\"\n className=\"world-globe\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n {/* Horizontal lines and meridians */}\n <motion.g\n className=\"world-meridians\"\n style={{ transformOrigin: \"50% 50%\" }}\n >\n <motion.path d=\"M3.6 9h16.8\" className=\"world-meridians\" />\n <motion.path d=\"M3.6 15h16.8\" className=\"world-meridians\" />\n <motion.path\n d=\"M11.5 3a17 17 0 0 0 0 18\"\n className=\"world-meridians\"\n />\n <motion.path\n d=\"M12.5 3a17 17 0 0 1 0 18\"\n className=\"world-meridians\"\n />\n </motion.g>\n </motion.svg>\n );\n },\n);\n\nWorldIcon.displayName = \"WorldIcon\";\nexport default WorldIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst XIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n // Rotate the X icon slightly and add a scale effect\n animate(\n \".x-line-1\",\n {\n rotate: 15,\n scale: 1.1,\n },\n {\n duration: 0.2,\n ease: \"easeOut\",\n },\n );\n\n animate(\n \".x-line-2\",\n {\n rotate: -15,\n scale: 1.1,\n },\n {\n duration: 0.2,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".x-line-1\",\n {\n rotate: 0,\n scale: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".x-line-2\",\n {\n rotate: 0,\n scale: 1,\n },\n {\n duration: 0.2,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n {/* First line (top-left to bottom-right) */}\n <motion.path\n d=\"M18 6l-12 12\"\n className=\"x-line-1\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n {/* Second line (bottom-left to top-right) */}\n <motion.path\n d=\"M6 6l12 12\"\n className=\"x-line-2\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nXIcon.displayName = \"XIcon\";\nexport default XIcon;\n","import { forwardRef, useImperativeHandle, useCallback } from \"react\";\nimport type { AnimatedIconHandle, AnimatedIconProps } from \"./types\";\nimport { motion, useAnimate } from \"motion/react\";\n\nconst YoutubeIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(\n (\n { size = 24, color = \"currentColor\", strokeWidth = 2, className = \"\" },\n ref,\n ) => {\n const [scope, animate] = useAnimate();\n\n const start = useCallback(async () => {\n await animate(\n \".youtube-play\",\n {\n pathLength: [0, 1],\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".youtube-play\",\n {\n scale: [1, 0.8, 1],\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n }, [animate]);\n\n const stop = useCallback(async () => {\n animate(\n \".youtube-play\",\n {\n scale: 1,\n x: 0,\n },\n {\n duration: 0.3,\n ease: \"easeInOut\",\n },\n );\n\n animate(\n \".youtube-frame\",\n {\n scale: 1,\n },\n {\n duration: 0.2,\n ease: \"easeOut\",\n },\n );\n }, [animate]);\n\n useImperativeHandle(ref, () => ({\n startAnimation: start,\n stopAnimation: stop,\n }));\n\n return (\n <motion.svg\n ref={scope}\n xmlns=\"http://www.w3.org/2000/svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={`cursor-pointer ${className}`}\n onHoverStart={start}\n onHoverEnd={stop}\n >\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n\n <motion.path\n d=\"M2 8a4 4 0 0 1 4 -4h12a4 4 0 0 1 4 4v8a4 4 0 0 1 -4 4h-12a4 4 0 0 1 -4 -4v-8z\"\n className=\"youtube-frame\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n\n <motion.path\n d=\"M10 9l5 3l-5 3z\"\n className=\"youtube-play\"\n style={{ transformOrigin: \"50% 50%\" }}\n />\n </motion.svg>\n );\n },\n);\n\nYoutubeIcon.displayName = \"YoutubeIcon\";\nexport default YoutubeIcon;\n"],"mappings":"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"}