agent-relay 1.2.0 → 1.3.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 (668) hide show
  1. package/.gitattributes +3 -0
  2. package/.nvmrc +1 -0
  3. package/.trajectories/agent-relay-322-324.md +17 -0
  4. package/.trajectories/completed/2026-01/traj_03zupyv1s7b9.json +49 -0
  5. package/.trajectories/completed/2026-01/traj_03zupyv1s7b9.md +31 -0
  6. package/.trajectories/completed/2026-01/traj_0zacdjl1g4ht.json +125 -0
  7. package/.trajectories/completed/2026-01/traj_0zacdjl1g4ht.md +62 -0
  8. package/.trajectories/completed/2026-01/traj_1dviorhnkcb5.json +65 -0
  9. package/.trajectories/completed/2026-01/traj_1dviorhnkcb5.md +37 -0
  10. package/.trajectories/completed/2026-01/traj_1k5if5snst2e.json +65 -0
  11. package/.trajectories/completed/2026-01/traj_1k5if5snst2e.md +37 -0
  12. package/.trajectories/completed/2026-01/traj_1rp3rges5811.json +49 -0
  13. package/.trajectories/completed/2026-01/traj_1rp3rges5811.md +31 -0
  14. package/.trajectories/completed/2026-01/traj_22bhyulruouw.json +113 -0
  15. package/.trajectories/completed/2026-01/traj_22bhyulruouw.md +57 -0
  16. package/.trajectories/completed/2026-01/traj_2dao7ddgnta0.json +53 -0
  17. package/.trajectories/completed/2026-01/traj_2dao7ddgnta0.md +32 -0
  18. package/.trajectories/completed/2026-01/traj_33iuy72sezbk.json +49 -0
  19. package/.trajectories/completed/2026-01/traj_33iuy72sezbk.md +31 -0
  20. package/.trajectories/completed/2026-01/traj_3t0440mjeunc.json +26 -0
  21. package/.trajectories/completed/2026-01/traj_3t0440mjeunc.md +6 -0
  22. package/.trajectories/completed/2026-01/traj_45x9494d9xnr.json +47 -0
  23. package/.trajectories/completed/2026-01/traj_45x9494d9xnr.md +32 -0
  24. package/.trajectories/completed/2026-01/traj_4aa0bb77s4nh.json +53 -0
  25. package/.trajectories/completed/2026-01/traj_4aa0bb77s4nh.md +32 -0
  26. package/.trajectories/completed/2026-01/traj_5ammh5qtvklq.json +77 -0
  27. package/.trajectories/completed/2026-01/traj_5ammh5qtvklq.md +42 -0
  28. package/.trajectories/completed/2026-01/traj_5lhmzq8rxpqv.json +59 -0
  29. package/.trajectories/completed/2026-01/traj_5lhmzq8rxpqv.md +33 -0
  30. package/.trajectories/completed/2026-01/traj_5vr4e9erb1fs.json +53 -0
  31. package/.trajectories/completed/2026-01/traj_5vr4e9erb1fs.md +32 -0
  32. package/.trajectories/completed/2026-01/traj_6fgiwdoklvym.json +48 -0
  33. package/.trajectories/completed/2026-01/traj_6fgiwdoklvym.md +24 -0
  34. package/.trajectories/completed/2026-01/traj_6mieijqyvaag.json +77 -0
  35. package/.trajectories/completed/2026-01/traj_6mieijqyvaag.md +42 -0
  36. package/.trajectories/completed/2026-01/traj_78ffm31jn3uk.json +77 -0
  37. package/.trajectories/completed/2026-01/traj_78ffm31jn3uk.md +42 -0
  38. package/.trajectories/completed/2026-01/traj_7ludwvz45veh.json +209 -0
  39. package/.trajectories/completed/2026-01/traj_7ludwvz45veh.md +97 -0
  40. package/.trajectories/completed/2026-01/traj_94gnp3k30goq.json +66 -0
  41. package/.trajectories/completed/2026-01/traj_94gnp3k30goq.md +36 -0
  42. package/.trajectories/completed/2026-01/traj_9921cuhel0pj.json +48 -0
  43. package/.trajectories/completed/2026-01/traj_9921cuhel0pj.md +24 -0
  44. package/.trajectories/completed/2026-01/traj_ajs7zqfux4wc.json +49 -0
  45. package/.trajectories/completed/2026-01/traj_ajs7zqfux4wc.md +23 -0
  46. package/.trajectories/completed/2026-01/traj_avqeghu6pz5a.json +40 -0
  47. package/.trajectories/completed/2026-01/traj_avqeghu6pz5a.md +22 -0
  48. package/.trajectories/completed/2026-01/traj_cvtqhlwcq9s0.json +53 -0
  49. package/.trajectories/completed/2026-01/traj_cvtqhlwcq9s0.md +32 -0
  50. package/.trajectories/completed/2026-01/traj_cxofprm2m2en.json +49 -0
  51. package/.trajectories/completed/2026-01/traj_cxofprm2m2en.md +31 -0
  52. package/.trajectories/completed/2026-01/traj_d2hhz3k0vrhn.json +26 -0
  53. package/.trajectories/completed/2026-01/traj_d2hhz3k0vrhn.md +6 -0
  54. package/.trajectories/completed/2026-01/traj_dcsp9s8y01ra.json +121 -0
  55. package/.trajectories/completed/2026-01/traj_dcsp9s8y01ra.md +29 -0
  56. package/.trajectories/completed/2026-01/traj_dfuvww9pege5.json +59 -0
  57. package/.trajectories/completed/2026-01/traj_dfuvww9pege5.md +37 -0
  58. package/.trajectories/completed/2026-01/traj_fhx9irlckht6.json +53 -0
  59. package/.trajectories/completed/2026-01/traj_fhx9irlckht6.md +32 -0
  60. package/.trajectories/completed/2026-01/traj_fqduidx3xbtp.json +101 -0
  61. package/.trajectories/completed/2026-01/traj_fqduidx3xbtp.md +52 -0
  62. package/.trajectories/completed/2026-01/traj_g0fisy9h51mf.json +77 -0
  63. package/.trajectories/completed/2026-01/traj_g0fisy9h51mf.md +42 -0
  64. package/.trajectories/completed/2026-01/traj_gjdre5voouod.json +53 -0
  65. package/.trajectories/completed/2026-01/traj_gjdre5voouod.md +32 -0
  66. package/.trajectories/completed/2026-01/traj_gtlyqtta3x8l.json +25 -0
  67. package/.trajectories/completed/2026-01/traj_gtlyqtta3x8l.md +15 -0
  68. package/.trajectories/completed/2026-01/traj_h4xijiuip3w4.json +101 -0
  69. package/.trajectories/completed/2026-01/traj_h4xijiuip3w4.md +44 -0
  70. package/.trajectories/completed/2026-01/traj_hf81ey93uz6t.json +49 -0
  71. package/.trajectories/completed/2026-01/traj_hf81ey93uz6t.md +31 -0
  72. package/.trajectories/completed/2026-01/traj_hfmki2jr9d4r.json +65 -0
  73. package/.trajectories/completed/2026-01/traj_hfmki2jr9d4r.md +37 -0
  74. package/.trajectories/completed/2026-01/traj_hhxte7w4gjjx.json +22 -0
  75. package/.trajectories/completed/2026-01/traj_hhxte7w4gjjx.md +5 -0
  76. package/.trajectories/completed/2026-01/traj_hpungyhoj6v5.json +53 -0
  77. package/.trajectories/completed/2026-01/traj_hpungyhoj6v5.md +32 -0
  78. package/.trajectories/completed/2026-01/traj_lq450ly148uw.json +49 -0
  79. package/.trajectories/completed/2026-01/traj_lq450ly148uw.md +31 -0
  80. package/.trajectories/completed/2026-01/traj_m2xkjv0w2sq7.json +25 -0
  81. package/.trajectories/completed/2026-01/traj_m2xkjv0w2sq7.md +15 -0
  82. package/.trajectories/completed/2026-01/traj_multi_server_arch.md +101 -0
  83. package/.trajectories/completed/2026-01/traj_noq5zbvnrdvz.json +53 -0
  84. package/.trajectories/completed/2026-01/traj_noq5zbvnrdvz.md +32 -0
  85. package/.trajectories/completed/2026-01/traj_ntbs6ppopf46.json +53 -0
  86. package/.trajectories/completed/2026-01/traj_ntbs6ppopf46.md +32 -0
  87. package/.trajectories/completed/2026-01/traj_ozd98si6a7ns.json +48 -0
  88. package/.trajectories/completed/2026-01/traj_ozd98si6a7ns.md +24 -0
  89. package/.trajectories/completed/2026-01/traj_prdza7a5cxp5.json +53 -0
  90. package/.trajectories/completed/2026-01/traj_prdza7a5cxp5.md +32 -0
  91. package/.trajectories/completed/2026-01/traj_psd9ob0j2ru3.json +27 -0
  92. package/.trajectories/completed/2026-01/traj_psd9ob0j2ru3.md +14 -0
  93. package/.trajectories/completed/2026-01/traj_qb3twvvywfwi.json +77 -0
  94. package/.trajectories/completed/2026-01/traj_qb3twvvywfwi.md +42 -0
  95. package/.trajectories/completed/2026-01/traj_qft54mi7nfor.json +53 -0
  96. package/.trajectories/completed/2026-01/traj_qft54mi7nfor.md +32 -0
  97. package/.trajectories/completed/2026-01/traj_qx9uhf8whhxo.json +83 -0
  98. package/.trajectories/completed/2026-01/traj_qx9uhf8whhxo.md +47 -0
  99. package/.trajectories/completed/2026-01/traj_rd9toccj18a0.json +59 -0
  100. package/.trajectories/completed/2026-01/traj_rd9toccj18a0.md +37 -0
  101. package/.trajectories/completed/2026-01/traj_rt4fiw3ecp50.json +48 -0
  102. package/.trajectories/completed/2026-01/traj_rt4fiw3ecp50.md +16 -0
  103. package/.trajectories/completed/2026-01/traj_st8j35b0hrlc.json +59 -0
  104. package/.trajectories/completed/2026-01/traj_st8j35b0hrlc.md +37 -0
  105. package/.trajectories/completed/2026-01/traj_t1yy8m7hbuxp.json +53 -0
  106. package/.trajectories/completed/2026-01/traj_t1yy8m7hbuxp.md +32 -0
  107. package/.trajectories/completed/2026-01/traj_tmux_orchestrator_analysis.json +84 -0
  108. package/.trajectories/completed/2026-01/traj_tmux_orchestrator_analysis.md +109 -0
  109. package/.trajectories/completed/2026-01/traj_u9n9eqasw16k.json +53 -0
  110. package/.trajectories/completed/2026-01/traj_u9n9eqasw16k.md +32 -0
  111. package/.trajectories/completed/2026-01/traj_ub8csuv3lcv4.json +53 -0
  112. package/.trajectories/completed/2026-01/traj_ub8csuv3lcv4.md +32 -0
  113. package/.trajectories/completed/2026-01/traj_uc29tlso8i9s.json +186 -0
  114. package/.trajectories/completed/2026-01/traj_uc29tlso8i9s.md +86 -0
  115. package/.trajectories/completed/2026-01/traj_ui9b4tqxoa7j.json +77 -0
  116. package/.trajectories/completed/2026-01/traj_ui9b4tqxoa7j.md +42 -0
  117. package/.trajectories/completed/2026-01/traj_v87hypnongqx.json +71 -0
  118. package/.trajectories/completed/2026-01/traj_v87hypnongqx.md +42 -0
  119. package/.trajectories/completed/2026-01/traj_v9dkdoxylyid.json +89 -0
  120. package/.trajectories/completed/2026-01/traj_v9dkdoxylyid.md +47 -0
  121. package/.trajectories/completed/2026-01/traj_wkp2fgzdyinb.json +53 -0
  122. package/.trajectories/completed/2026-01/traj_wkp2fgzdyinb.md +32 -0
  123. package/.trajectories/completed/2026-01/traj_x14t8w8rn7xg.json +20 -0
  124. package/.trajectories/completed/2026-01/traj_x14t8w8rn7xg.md +6 -0
  125. package/.trajectories/completed/2026-01/traj_xnwbznkvv8ua.json +175 -0
  126. package/.trajectories/completed/2026-01/traj_xnwbznkvv8ua.md +82 -0
  127. package/.trajectories/completed/2026-01/traj_xy9vifpqet80.json +65 -0
  128. package/.trajectories/completed/2026-01/traj_xy9vifpqet80.md +37 -0
  129. package/.trajectories/completed/2026-01/traj_y7aiwijyfmmv.json +49 -0
  130. package/.trajectories/completed/2026-01/traj_y7aiwijyfmmv.md +31 -0
  131. package/.trajectories/completed/2026-01/traj_ysjc8zaeqtd3.json +47 -0
  132. package/.trajectories/completed/2026-01/traj_ysjc8zaeqtd3.md +32 -0
  133. package/.trajectories/completed/2026-01/traj_yvdadtvdgnz3.json +59 -0
  134. package/.trajectories/completed/2026-01/traj_yvdadtvdgnz3.md +37 -0
  135. package/.trajectories/completed/2026-01/traj_z0vcw1wrzide.json +53 -0
  136. package/.trajectories/completed/2026-01/traj_z0vcw1wrzide.md +32 -0
  137. package/.trajectories/consolidate-settings-panel.md +24 -0
  138. package/.trajectories/gh-cli-user-token.md +26 -0
  139. package/.trajectories/index.json +468 -0
  140. package/ARCHITECTURE.md +1245 -0
  141. package/TESTING.md +278 -0
  142. package/deploy/init-db.sql +5 -0
  143. package/deploy/scripts/setup-fly-workspaces.sh +69 -0
  144. package/deploy/scripts/setup-railway.sh +75 -0
  145. package/deploy/workspace/codex.config.toml +15 -0
  146. package/deploy/workspace/entrypoint-browser.sh +118 -0
  147. package/deploy/workspace/entrypoint.sh +508 -0
  148. package/deploy/workspace/git-credential-relay +126 -0
  149. package/dist/bridge/spawner.d.ts +7 -0
  150. package/dist/bridge/spawner.js +40 -9
  151. package/dist/bridge/types.d.ts +2 -0
  152. package/dist/cli/index.js +260 -1
  153. package/dist/cloud/api/admin.d.ts +8 -0
  154. package/dist/cloud/api/admin.js +212 -0
  155. package/dist/cloud/api/auth.js +8 -0
  156. package/dist/cloud/api/billing.d.ts +0 -10
  157. package/dist/cloud/api/billing.js +278 -67
  158. package/dist/cloud/api/codex-auth-helper.d.ts +21 -0
  159. package/dist/cloud/api/codex-auth-helper.js +307 -0
  160. package/dist/cloud/api/coordinators.js +402 -0
  161. package/dist/cloud/api/daemons.js +15 -11
  162. package/dist/cloud/api/git.js +127 -19
  163. package/dist/cloud/api/github-app.js +42 -8
  164. package/dist/cloud/api/nango-auth.js +297 -16
  165. package/dist/cloud/api/onboarding.js +112 -35
  166. package/dist/cloud/api/providers.js +12 -16
  167. package/dist/cloud/api/repos.d.ts +1 -0
  168. package/dist/cloud/api/repos.js +311 -49
  169. package/dist/cloud/api/test-helpers.js +40 -0
  170. package/dist/cloud/api/usage.js +13 -0
  171. package/dist/cloud/api/webhooks.d.ts +1 -0
  172. package/dist/cloud/api/webhooks.js +149 -0
  173. package/dist/cloud/api/workspaces.d.ts +18 -0
  174. package/dist/cloud/api/workspaces.js +1042 -21
  175. package/dist/cloud/billing/plans.js +19 -19
  176. package/dist/cloud/config.d.ts +8 -0
  177. package/dist/cloud/config.js +15 -0
  178. package/dist/cloud/db/drizzle.d.ts +5 -2
  179. package/dist/cloud/db/drizzle.js +27 -20
  180. package/dist/cloud/db/schema.d.ts +19 -51
  181. package/dist/cloud/db/schema.js +5 -4
  182. package/dist/cloud/index.d.ts +0 -1
  183. package/dist/cloud/index.js +0 -1
  184. package/dist/cloud/provisioner/index.d.ts +125 -1
  185. package/dist/cloud/provisioner/index.js +939 -53
  186. package/dist/cloud/server.js +161 -16
  187. package/dist/cloud/services/compute-enforcement.d.ts +57 -0
  188. package/dist/cloud/services/compute-enforcement.js +175 -0
  189. package/dist/cloud/services/index.d.ts +2 -0
  190. package/dist/cloud/services/index.js +4 -0
  191. package/dist/cloud/services/intro-expiration.d.ts +55 -0
  192. package/dist/cloud/services/intro-expiration.js +211 -0
  193. package/dist/cloud/services/nango.d.ts +74 -0
  194. package/dist/cloud/services/nango.js +218 -5
  195. package/dist/cloud/services/planLimits.d.ts +22 -0
  196. package/dist/cloud/services/planLimits.js +58 -5
  197. package/dist/cloud/services/ssh-security.d.ts +31 -0
  198. package/dist/cloud/services/ssh-security.js +63 -0
  199. package/dist/continuity/manager.d.ts +5 -0
  200. package/dist/continuity/manager.js +56 -2
  201. package/dist/daemon/api.d.ts +2 -0
  202. package/dist/daemon/api.js +214 -5
  203. package/dist/daemon/cli-auth.d.ts +13 -1
  204. package/dist/daemon/cli-auth.js +166 -47
  205. package/dist/daemon/connection.d.ts +7 -1
  206. package/dist/daemon/connection.js +15 -0
  207. package/dist/daemon/orchestrator.d.ts +2 -0
  208. package/dist/daemon/orchestrator.js +26 -0
  209. package/dist/daemon/repo-manager.d.ts +116 -0
  210. package/dist/daemon/repo-manager.js +384 -0
  211. package/dist/daemon/router.d.ts +60 -1
  212. package/dist/daemon/router.js +281 -20
  213. package/dist/daemon/user-directory.d.ts +111 -0
  214. package/dist/daemon/user-directory.js +233 -0
  215. package/dist/dashboard/out/404.html +1 -1
  216. package/dist/dashboard/out/_next/static/T1tgCqVWHFIkV7ClEtzD7/_ssgManifest.js +1 -0
  217. package/dist/dashboard/out/_next/static/chunks/532-bace199897eeab37.js +9 -0
  218. package/dist/dashboard/out/_next/static/chunks/766-b54f0853794b78c3.js +1 -0
  219. package/dist/dashboard/out/_next/static/chunks/83-b51836037078006c.js +1 -0
  220. package/dist/dashboard/out/_next/static/chunks/891-6cd50de1224f70bb.js +1 -0
  221. package/dist/dashboard/out/_next/static/chunks/899-bb19a9b3d9b39ea6.js +1 -0
  222. package/dist/dashboard/out/_next/static/chunks/app/app/onboarding/page-8939b0fc700f7eca.js +1 -0
  223. package/dist/dashboard/out/_next/static/chunks/app/app/page-5af1b6b439858aa6.js +1 -0
  224. package/dist/dashboard/out/_next/static/chunks/app/metrics/page-ac39dc0cc3c26fa7.js +1 -0
  225. package/dist/dashboard/out/_next/static/chunks/app/{page-daf87e86f783f980.js → page-4a5938c18a11a654.js} +1 -1
  226. package/dist/dashboard/out/_next/static/chunks/app/providers/page-ac3a6ac433fd6001.js +1 -0
  227. package/dist/dashboard/out/_next/static/chunks/app/providers/setup/[provider]/page-09f9caae98a18c09.js +1 -0
  228. package/dist/dashboard/out/_next/static/chunks/{main-97850e03d723ea8c.js → main-2ee6beb2ae96d210.js} +1 -1
  229. package/dist/dashboard/out/_next/static/css/85d2af9c7ac74d62.css +1 -0
  230. package/dist/dashboard/out/_next/static/css/fe4b28883eeff359.css +1 -0
  231. package/dist/dashboard/out/app/onboarding.html +1 -0
  232. package/dist/dashboard/out/app/onboarding.txt +7 -0
  233. package/dist/dashboard/out/app.html +1 -1
  234. package/dist/dashboard/out/app.txt +3 -3
  235. package/dist/dashboard/out/apple-icon.png +0 -0
  236. package/dist/dashboard/out/connect-repos.html +1 -1
  237. package/dist/dashboard/out/connect-repos.txt +3 -3
  238. package/dist/dashboard/out/history.html +1 -1
  239. package/dist/dashboard/out/history.txt +3 -3
  240. package/dist/dashboard/out/index.html +1 -1
  241. package/dist/dashboard/out/index.txt +3 -3
  242. package/dist/dashboard/out/login.html +2 -2
  243. package/dist/dashboard/out/login.txt +3 -3
  244. package/dist/dashboard/out/metrics.html +1 -1
  245. package/dist/dashboard/out/metrics.txt +3 -3
  246. package/dist/dashboard/out/pricing.html +3 -3
  247. package/dist/dashboard/out/pricing.txt +3 -3
  248. package/dist/dashboard/out/providers/setup/claude.html +1 -0
  249. package/dist/dashboard/out/providers/setup/claude.txt +8 -0
  250. package/dist/dashboard/out/providers/setup/codex.html +1 -0
  251. package/dist/dashboard/out/providers/setup/codex.txt +8 -0
  252. package/dist/dashboard/out/providers.html +1 -1
  253. package/dist/dashboard/out/providers.txt +3 -3
  254. package/dist/dashboard/out/signup.html +2 -2
  255. package/dist/dashboard/out/signup.txt +3 -3
  256. package/dist/dashboard-server/server.js +316 -12
  257. package/dist/dashboard-server/user-bridge.d.ts +103 -0
  258. package/dist/dashboard-server/user-bridge.js +189 -0
  259. package/dist/protocol/channels.d.ts +205 -0
  260. package/dist/protocol/channels.js +154 -0
  261. package/dist/protocol/types.d.ts +13 -1
  262. package/dist/resiliency/provider-context.js +2 -0
  263. package/dist/shared/cli-auth-config.d.ts +19 -0
  264. package/dist/shared/cli-auth-config.js +58 -2
  265. package/dist/utils/agent-config.js +1 -1
  266. package/dist/wrapper/auth-detection.d.ts +49 -0
  267. package/dist/wrapper/auth-detection.js +192 -0
  268. package/dist/wrapper/base-wrapper.d.ts +153 -0
  269. package/dist/wrapper/base-wrapper.js +393 -0
  270. package/dist/wrapper/client.d.ts +7 -1
  271. package/dist/wrapper/client.js +3 -0
  272. package/dist/wrapper/index.d.ts +1 -0
  273. package/dist/wrapper/index.js +4 -3
  274. package/dist/wrapper/pty-wrapper.d.ts +62 -84
  275. package/dist/wrapper/pty-wrapper.js +154 -180
  276. package/dist/wrapper/tmux-wrapper.d.ts +41 -66
  277. package/dist/wrapper/tmux-wrapper.js +90 -134
  278. package/package.json +5 -12
  279. package/scripts/postinstall.js +11 -155
  280. package/scripts/test-interactive-terminal.sh +248 -0
  281. package/test-push.txt +1 -0
  282. package/bin/tmux +0 -0
  283. package/dist/bridge/config.d.ts.map +0 -1
  284. package/dist/bridge/config.js.map +0 -1
  285. package/dist/bridge/index.d.ts.map +0 -1
  286. package/dist/bridge/index.js.map +0 -1
  287. package/dist/bridge/multi-project-client.d.ts.map +0 -1
  288. package/dist/bridge/multi-project-client.js.map +0 -1
  289. package/dist/bridge/shadow-cli.d.ts.map +0 -1
  290. package/dist/bridge/shadow-cli.js.map +0 -1
  291. package/dist/bridge/shadow-config.d.ts.map +0 -1
  292. package/dist/bridge/shadow-config.js.map +0 -1
  293. package/dist/bridge/spawner.d.ts.map +0 -1
  294. package/dist/bridge/spawner.js.map +0 -1
  295. package/dist/bridge/teams-config.d.ts.map +0 -1
  296. package/dist/bridge/teams-config.js.map +0 -1
  297. package/dist/bridge/types.d.ts.map +0 -1
  298. package/dist/bridge/types.js.map +0 -1
  299. package/dist/bridge/utils.d.ts.map +0 -1
  300. package/dist/bridge/utils.js.map +0 -1
  301. package/dist/cli/index.d.ts.map +0 -1
  302. package/dist/cli/index.js.map +0 -1
  303. package/dist/cloud/api/auth.d.ts.map +0 -1
  304. package/dist/cloud/api/auth.js.map +0 -1
  305. package/dist/cloud/api/billing.d.ts.map +0 -1
  306. package/dist/cloud/api/billing.js.map +0 -1
  307. package/dist/cloud/api/cli-pty-runner.d.ts.map +0 -1
  308. package/dist/cloud/api/cli-pty-runner.js.map +0 -1
  309. package/dist/cloud/api/coordinators.d.ts.map +0 -1
  310. package/dist/cloud/api/coordinators.js.map +0 -1
  311. package/dist/cloud/api/daemons.d.ts.map +0 -1
  312. package/dist/cloud/api/daemons.js.map +0 -1
  313. package/dist/cloud/api/generic-webhooks.d.ts.map +0 -1
  314. package/dist/cloud/api/generic-webhooks.js.map +0 -1
  315. package/dist/cloud/api/git.d.ts.map +0 -1
  316. package/dist/cloud/api/git.js.map +0 -1
  317. package/dist/cloud/api/github-app.d.ts.map +0 -1
  318. package/dist/cloud/api/github-app.js.map +0 -1
  319. package/dist/cloud/api/middleware/planLimits.d.ts.map +0 -1
  320. package/dist/cloud/api/middleware/planLimits.js.map +0 -1
  321. package/dist/cloud/api/monitoring.d.ts.map +0 -1
  322. package/dist/cloud/api/monitoring.js.map +0 -1
  323. package/dist/cloud/api/nango-auth.d.ts.map +0 -1
  324. package/dist/cloud/api/nango-auth.js.map +0 -1
  325. package/dist/cloud/api/onboarding.d.ts.map +0 -1
  326. package/dist/cloud/api/onboarding.js.map +0 -1
  327. package/dist/cloud/api/policy.d.ts.map +0 -1
  328. package/dist/cloud/api/policy.js.map +0 -1
  329. package/dist/cloud/api/providers.d.ts.map +0 -1
  330. package/dist/cloud/api/providers.js.map +0 -1
  331. package/dist/cloud/api/repos.d.ts.map +0 -1
  332. package/dist/cloud/api/repos.js.map +0 -1
  333. package/dist/cloud/api/teams.d.ts.map +0 -1
  334. package/dist/cloud/api/teams.js.map +0 -1
  335. package/dist/cloud/api/test-helpers.d.ts.map +0 -1
  336. package/dist/cloud/api/test-helpers.js.map +0 -1
  337. package/dist/cloud/api/usage.d.ts.map +0 -1
  338. package/dist/cloud/api/usage.js.map +0 -1
  339. package/dist/cloud/api/webhooks.d.ts.map +0 -1
  340. package/dist/cloud/api/webhooks.js.map +0 -1
  341. package/dist/cloud/api/workspaces.d.ts.map +0 -1
  342. package/dist/cloud/api/workspaces.js.map +0 -1
  343. package/dist/cloud/billing/index.d.ts.map +0 -1
  344. package/dist/cloud/billing/index.js.map +0 -1
  345. package/dist/cloud/billing/plans.d.ts.map +0 -1
  346. package/dist/cloud/billing/plans.js.map +0 -1
  347. package/dist/cloud/billing/service.d.ts.map +0 -1
  348. package/dist/cloud/billing/service.js.map +0 -1
  349. package/dist/cloud/billing/types.d.ts.map +0 -1
  350. package/dist/cloud/billing/types.js.map +0 -1
  351. package/dist/cloud/config.d.ts.map +0 -1
  352. package/dist/cloud/config.js.map +0 -1
  353. package/dist/cloud/db/drizzle.d.ts.map +0 -1
  354. package/dist/cloud/db/drizzle.js.map +0 -1
  355. package/dist/cloud/db/index.d.ts.map +0 -1
  356. package/dist/cloud/db/index.js.map +0 -1
  357. package/dist/cloud/db/schema.d.ts.map +0 -1
  358. package/dist/cloud/db/schema.js.map +0 -1
  359. package/dist/cloud/index.d.ts.map +0 -1
  360. package/dist/cloud/index.js.map +0 -1
  361. package/dist/cloud/provisioner/index.d.ts.map +0 -1
  362. package/dist/cloud/provisioner/index.js.map +0 -1
  363. package/dist/cloud/server.d.ts.map +0 -1
  364. package/dist/cloud/server.js.map +0 -1
  365. package/dist/cloud/services/auto-scaler.d.ts.map +0 -1
  366. package/dist/cloud/services/auto-scaler.js.map +0 -1
  367. package/dist/cloud/services/capacity-manager.d.ts.map +0 -1
  368. package/dist/cloud/services/capacity-manager.js.map +0 -1
  369. package/dist/cloud/services/ci-agent-spawner.d.ts.map +0 -1
  370. package/dist/cloud/services/ci-agent-spawner.js.map +0 -1
  371. package/dist/cloud/services/coordinator.d.ts.map +0 -1
  372. package/dist/cloud/services/coordinator.js.map +0 -1
  373. package/dist/cloud/services/index.d.ts.map +0 -1
  374. package/dist/cloud/services/index.js.map +0 -1
  375. package/dist/cloud/services/mention-handler.d.ts.map +0 -1
  376. package/dist/cloud/services/mention-handler.js.map +0 -1
  377. package/dist/cloud/services/nango.d.ts.map +0 -1
  378. package/dist/cloud/services/nango.js.map +0 -1
  379. package/dist/cloud/services/persistence.d.ts.map +0 -1
  380. package/dist/cloud/services/persistence.js.map +0 -1
  381. package/dist/cloud/services/planLimits.d.ts.map +0 -1
  382. package/dist/cloud/services/planLimits.js.map +0 -1
  383. package/dist/cloud/services/scaling-orchestrator.d.ts.map +0 -1
  384. package/dist/cloud/services/scaling-orchestrator.js.map +0 -1
  385. package/dist/cloud/services/scaling-policy.d.ts.map +0 -1
  386. package/dist/cloud/services/scaling-policy.js.map +0 -1
  387. package/dist/cloud/vault/index.d.ts +0 -76
  388. package/dist/cloud/vault/index.d.ts.map +0 -1
  389. package/dist/cloud/vault/index.js +0 -219
  390. package/dist/cloud/vault/index.js.map +0 -1
  391. package/dist/cloud/webhooks/index.d.ts.map +0 -1
  392. package/dist/cloud/webhooks/index.js.map +0 -1
  393. package/dist/cloud/webhooks/parsers/github.d.ts.map +0 -1
  394. package/dist/cloud/webhooks/parsers/github.js.map +0 -1
  395. package/dist/cloud/webhooks/parsers/index.d.ts.map +0 -1
  396. package/dist/cloud/webhooks/parsers/index.js.map +0 -1
  397. package/dist/cloud/webhooks/parsers/linear.d.ts.map +0 -1
  398. package/dist/cloud/webhooks/parsers/linear.js.map +0 -1
  399. package/dist/cloud/webhooks/parsers/slack.d.ts.map +0 -1
  400. package/dist/cloud/webhooks/parsers/slack.js.map +0 -1
  401. package/dist/cloud/webhooks/responders/github.d.ts.map +0 -1
  402. package/dist/cloud/webhooks/responders/github.js.map +0 -1
  403. package/dist/cloud/webhooks/responders/index.d.ts.map +0 -1
  404. package/dist/cloud/webhooks/responders/index.js.map +0 -1
  405. package/dist/cloud/webhooks/responders/linear.d.ts.map +0 -1
  406. package/dist/cloud/webhooks/responders/linear.js.map +0 -1
  407. package/dist/cloud/webhooks/responders/slack.d.ts.map +0 -1
  408. package/dist/cloud/webhooks/responders/slack.js.map +0 -1
  409. package/dist/cloud/webhooks/router.d.ts.map +0 -1
  410. package/dist/cloud/webhooks/router.js.map +0 -1
  411. package/dist/cloud/webhooks/rules-engine.d.ts.map +0 -1
  412. package/dist/cloud/webhooks/rules-engine.js.map +0 -1
  413. package/dist/cloud/webhooks/types.d.ts.map +0 -1
  414. package/dist/cloud/webhooks/types.js.map +0 -1
  415. package/dist/continuity/formatter.d.ts.map +0 -1
  416. package/dist/continuity/formatter.js.map +0 -1
  417. package/dist/continuity/handoff-store.d.ts.map +0 -1
  418. package/dist/continuity/handoff-store.js.map +0 -1
  419. package/dist/continuity/index.d.ts.map +0 -1
  420. package/dist/continuity/index.js.map +0 -1
  421. package/dist/continuity/ledger-store.d.ts.map +0 -1
  422. package/dist/continuity/ledger-store.js.map +0 -1
  423. package/dist/continuity/manager.d.ts.map +0 -1
  424. package/dist/continuity/manager.js.map +0 -1
  425. package/dist/continuity/parser.d.ts.map +0 -1
  426. package/dist/continuity/parser.js.map +0 -1
  427. package/dist/continuity/types.d.ts.map +0 -1
  428. package/dist/continuity/types.js.map +0 -1
  429. package/dist/daemon/agent-manager.d.ts.map +0 -1
  430. package/dist/daemon/agent-manager.js.map +0 -1
  431. package/dist/daemon/agent-registry.d.ts.map +0 -1
  432. package/dist/daemon/agent-registry.js.map +0 -1
  433. package/dist/daemon/api.d.ts.map +0 -1
  434. package/dist/daemon/api.js.map +0 -1
  435. package/dist/daemon/auth.d.ts.map +0 -1
  436. package/dist/daemon/auth.js.map +0 -1
  437. package/dist/daemon/cli-auth.d.ts.map +0 -1
  438. package/dist/daemon/cli-auth.js.map +0 -1
  439. package/dist/daemon/cloud-sync.d.ts.map +0 -1
  440. package/dist/daemon/cloud-sync.js.map +0 -1
  441. package/dist/daemon/connection.d.ts.map +0 -1
  442. package/dist/daemon/connection.js.map +0 -1
  443. package/dist/daemon/index.d.ts.map +0 -1
  444. package/dist/daemon/index.js.map +0 -1
  445. package/dist/daemon/orchestrator.d.ts.map +0 -1
  446. package/dist/daemon/orchestrator.js.map +0 -1
  447. package/dist/daemon/registry.d.ts.map +0 -1
  448. package/dist/daemon/registry.js.map +0 -1
  449. package/dist/daemon/router.d.ts.map +0 -1
  450. package/dist/daemon/router.js.map +0 -1
  451. package/dist/daemon/server.d.ts.map +0 -1
  452. package/dist/daemon/server.js.map +0 -1
  453. package/dist/daemon/services/browser-testing.d.ts.map +0 -1
  454. package/dist/daemon/services/browser-testing.js.map +0 -1
  455. package/dist/daemon/services/container-spawner.d.ts.map +0 -1
  456. package/dist/daemon/services/container-spawner.js.map +0 -1
  457. package/dist/daemon/types.d.ts.map +0 -1
  458. package/dist/daemon/types.js.map +0 -1
  459. package/dist/daemon/workspace-manager.d.ts.map +0 -1
  460. package/dist/daemon/workspace-manager.js.map +0 -1
  461. package/dist/dashboard/out/_next/static/H5aWG0udPB4iOUIl_gytz/_ssgManifest.js +0 -1
  462. package/dist/dashboard/out/_next/static/chunks/480-2d4111711d4e473c.js +0 -1
  463. package/dist/dashboard/out/_next/static/chunks/724-73c1ee5f60abe860.js +0 -9
  464. package/dist/dashboard/out/_next/static/chunks/766-c3a14283c88d815b.js +0 -1
  465. package/dist/dashboard/out/_next/static/chunks/app/app/page-7120be68bea622f3.js +0 -1
  466. package/dist/dashboard/out/_next/static/chunks/app/metrics/page-1081dd190a331a91.js +0 -1
  467. package/dist/dashboard/out/_next/static/chunks/app/providers/page-b68a681526eb145e.js +0 -1
  468. package/dist/dashboard/out/_next/static/css/29852f26181969a0.css +0 -1
  469. package/dist/dashboard/out/_next/static/css/411ce23ffeae9f76.css +0 -1
  470. package/dist/dashboard-server/metrics.d.ts.map +0 -1
  471. package/dist/dashboard-server/metrics.js.map +0 -1
  472. package/dist/dashboard-server/needs-attention.d.ts.map +0 -1
  473. package/dist/dashboard-server/needs-attention.js.map +0 -1
  474. package/dist/dashboard-server/server.d.ts.map +0 -1
  475. package/dist/dashboard-server/server.js.map +0 -1
  476. package/dist/dashboard-server/start.d.ts.map +0 -1
  477. package/dist/dashboard-server/start.js.map +0 -1
  478. package/dist/hooks/emitter.d.ts.map +0 -1
  479. package/dist/hooks/emitter.js.map +0 -1
  480. package/dist/hooks/inbox-check/hook.d.ts.map +0 -1
  481. package/dist/hooks/inbox-check/hook.js.map +0 -1
  482. package/dist/hooks/inbox-check/index.d.ts.map +0 -1
  483. package/dist/hooks/inbox-check/index.js.map +0 -1
  484. package/dist/hooks/inbox-check/types.d.ts.map +0 -1
  485. package/dist/hooks/inbox-check/types.js.map +0 -1
  486. package/dist/hooks/inbox-check/utils.d.ts.map +0 -1
  487. package/dist/hooks/inbox-check/utils.js.map +0 -1
  488. package/dist/hooks/index.d.ts.map +0 -1
  489. package/dist/hooks/index.js.map +0 -1
  490. package/dist/hooks/registry.d.ts.map +0 -1
  491. package/dist/hooks/registry.js.map +0 -1
  492. package/dist/hooks/trajectory-hooks.d.ts.map +0 -1
  493. package/dist/hooks/trajectory-hooks.js.map +0 -1
  494. package/dist/hooks/types.d.ts.map +0 -1
  495. package/dist/hooks/types.js.map +0 -1
  496. package/dist/index.d.ts.map +0 -1
  497. package/dist/index.js.map +0 -1
  498. package/dist/memory/adapters/index.d.ts.map +0 -1
  499. package/dist/memory/adapters/index.js.map +0 -1
  500. package/dist/memory/adapters/inmemory.d.ts.map +0 -1
  501. package/dist/memory/adapters/inmemory.js.map +0 -1
  502. package/dist/memory/adapters/supermemory.d.ts.map +0 -1
  503. package/dist/memory/adapters/supermemory.js.map +0 -1
  504. package/dist/memory/factory.d.ts.map +0 -1
  505. package/dist/memory/factory.js.map +0 -1
  506. package/dist/memory/index.d.ts.map +0 -1
  507. package/dist/memory/index.js.map +0 -1
  508. package/dist/memory/memory-hooks.d.ts.map +0 -1
  509. package/dist/memory/memory-hooks.js.map +0 -1
  510. package/dist/memory/service.d.ts.map +0 -1
  511. package/dist/memory/service.js.map +0 -1
  512. package/dist/memory/types.d.ts.map +0 -1
  513. package/dist/memory/types.js.map +0 -1
  514. package/dist/policy/agent-policy.d.ts.map +0 -1
  515. package/dist/policy/agent-policy.js.map +0 -1
  516. package/dist/policy/cloud-policy-fetcher.d.ts.map +0 -1
  517. package/dist/policy/cloud-policy-fetcher.js.map +0 -1
  518. package/dist/protocol/framing.d.ts.map +0 -1
  519. package/dist/protocol/framing.js.map +0 -1
  520. package/dist/protocol/index.d.ts.map +0 -1
  521. package/dist/protocol/index.js.map +0 -1
  522. package/dist/protocol/types.d.ts.map +0 -1
  523. package/dist/protocol/types.js.map +0 -1
  524. package/dist/resiliency/context-persistence.d.ts.map +0 -1
  525. package/dist/resiliency/context-persistence.js.map +0 -1
  526. package/dist/resiliency/crash-insights.d.ts.map +0 -1
  527. package/dist/resiliency/crash-insights.js.map +0 -1
  528. package/dist/resiliency/gossip-health.d.ts.map +0 -1
  529. package/dist/resiliency/gossip-health.js.map +0 -1
  530. package/dist/resiliency/health-monitor.d.ts.map +0 -1
  531. package/dist/resiliency/health-monitor.js.map +0 -1
  532. package/dist/resiliency/index.d.ts.map +0 -1
  533. package/dist/resiliency/index.js.map +0 -1
  534. package/dist/resiliency/leader-watchdog.d.ts.map +0 -1
  535. package/dist/resiliency/leader-watchdog.js.map +0 -1
  536. package/dist/resiliency/logger.d.ts.map +0 -1
  537. package/dist/resiliency/logger.js.map +0 -1
  538. package/dist/resiliency/memory-monitor.d.ts.map +0 -1
  539. package/dist/resiliency/memory-monitor.js.map +0 -1
  540. package/dist/resiliency/metrics.d.ts.map +0 -1
  541. package/dist/resiliency/metrics.js.map +0 -1
  542. package/dist/resiliency/provider-context.d.ts.map +0 -1
  543. package/dist/resiliency/provider-context.js.map +0 -1
  544. package/dist/resiliency/stateless-lead.d.ts.map +0 -1
  545. package/dist/resiliency/stateless-lead.js.map +0 -1
  546. package/dist/resiliency/supervisor.d.ts.map +0 -1
  547. package/dist/resiliency/supervisor.js.map +0 -1
  548. package/dist/shared/cli-auth-config.d.ts.map +0 -1
  549. package/dist/shared/cli-auth-config.js.map +0 -1
  550. package/dist/state/agent-state.d.ts.map +0 -1
  551. package/dist/state/agent-state.js.map +0 -1
  552. package/dist/storage/adapter.d.ts.map +0 -1
  553. package/dist/storage/adapter.js.map +0 -1
  554. package/dist/storage/sqlite-adapter.d.ts.map +0 -1
  555. package/dist/storage/sqlite-adapter.js.map +0 -1
  556. package/dist/trajectory/config.d.ts.map +0 -1
  557. package/dist/trajectory/config.js.map +0 -1
  558. package/dist/trajectory/index.d.ts.map +0 -1
  559. package/dist/trajectory/index.js.map +0 -1
  560. package/dist/trajectory/integration.d.ts.map +0 -1
  561. package/dist/trajectory/integration.js.map +0 -1
  562. package/dist/utils/agent-config.d.ts.map +0 -1
  563. package/dist/utils/agent-config.js.map +0 -1
  564. package/dist/utils/command-resolver.d.ts.map +0 -1
  565. package/dist/utils/command-resolver.js.map +0 -1
  566. package/dist/utils/index.d.ts.map +0 -1
  567. package/dist/utils/index.js.map +0 -1
  568. package/dist/utils/logger.d.ts.map +0 -1
  569. package/dist/utils/logger.js.map +0 -1
  570. package/dist/utils/name-generator.d.ts.map +0 -1
  571. package/dist/utils/name-generator.js.map +0 -1
  572. package/dist/utils/project-namespace.d.ts.map +0 -1
  573. package/dist/utils/project-namespace.js.map +0 -1
  574. package/dist/utils/tmux-resolver.d.ts.map +0 -1
  575. package/dist/utils/tmux-resolver.js.map +0 -1
  576. package/dist/utils/update-checker.d.ts.map +0 -1
  577. package/dist/utils/update-checker.js.map +0 -1
  578. package/dist/wrapper/client.d.ts.map +0 -1
  579. package/dist/wrapper/client.js.map +0 -1
  580. package/dist/wrapper/inbox.d.ts.map +0 -1
  581. package/dist/wrapper/inbox.js.map +0 -1
  582. package/dist/wrapper/index.d.ts.map +0 -1
  583. package/dist/wrapper/index.js.map +0 -1
  584. package/dist/wrapper/parser.d.ts.map +0 -1
  585. package/dist/wrapper/parser.js.map +0 -1
  586. package/dist/wrapper/pty-wrapper.d.ts.map +0 -1
  587. package/dist/wrapper/pty-wrapper.js.map +0 -1
  588. package/dist/wrapper/shared.d.ts.map +0 -1
  589. package/dist/wrapper/shared.js.map +0 -1
  590. package/dist/wrapper/tmux-wrapper.d.ts.map +0 -1
  591. package/dist/wrapper/tmux-wrapper.js.map +0 -1
  592. package/docs/AGENTS.md +0 -513
  593. package/docs/ARCHITECTURE_DECISIONS.md +0 -175
  594. package/docs/CLOUD-ARCHITECTURE.md +0 -804
  595. package/docs/CLOUD-ONBOARDING-DESIGN.md +0 -1983
  596. package/docs/CONTRIBUTING.md +0 -151
  597. package/docs/HOOKS_API.md +0 -394
  598. package/docs/INTEGRATION-GUIDE.md +0 -926
  599. package/docs/PROTOCOL.md +0 -325
  600. package/docs/WRAPPER_EVENTS.md +0 -358
  601. package/docs/agent-policy-snippet.md +0 -40
  602. package/docs/agent-relay-protocol.md +0 -238
  603. package/docs/agent-relay-snippet.md +0 -174
  604. package/docs/archive/CHANGELOG.md +0 -11
  605. package/docs/archive/CLI-SIMPLIFICATION-COMPLETE.md +0 -48
  606. package/docs/archive/DESIGN_BRIDGE_STAFFING.md +0 -878
  607. package/docs/archive/DESIGN_V2.md +0 -1079
  608. package/docs/archive/EXECUTIVE_SUMMARY.md +0 -358
  609. package/docs/archive/MONETIZATION.md +0 -1679
  610. package/docs/archive/PROPOSAL-trajectories.md +0 -1582
  611. package/docs/archive/ROADMAP.md +0 -329
  612. package/docs/archive/SCALING_ANALYSIS.md +0 -280
  613. package/docs/archive/TESTING_PRESENCE_FEATURES.md +0 -327
  614. package/docs/archive/TMUX_IMPLEMENTATION_NOTES.md +0 -364
  615. package/docs/archive/TMUX_IMPROVEMENTS.md +0 -968
  616. package/docs/archive/dashboard-v2-plan.md +0 -179
  617. package/docs/archive/removable-code-analysis.md +0 -24
  618. package/docs/competitive/GASTOWN.md +0 -451
  619. package/docs/competitive/MCP_AGENT_MAIL.md +0 -389
  620. package/docs/competitive/OVERVIEW.md +0 -898
  621. package/docs/competitive/README.md +0 -34
  622. package/docs/competitive/TMUX_ORCHESTRATOR.md +0 -605
  623. package/docs/dashboard.png +0 -0
  624. package/docs/design/ci-failure-webhooks.md +0 -812
  625. package/docs/design/comprehensive-integrations.md +0 -238
  626. package/docs/design/e2b-sandbox-integration.md +0 -504
  627. package/docs/design/github-app-permissions.md +0 -264
  628. package/docs/guides/CLOUD.md +0 -236
  629. package/docs/guides/LOCAL.md +0 -535
  630. package/docs/guides/SELF-HOSTED.md +0 -494
  631. package/docs/local-testing.md +0 -428
  632. package/docs/proposals/continuous-claude-integration.md +0 -622
  633. package/docs/proposals/custom-commands.md +0 -368
  634. package/docs/proposals/shadow-as-subagent.md +0 -765
  635. package/docs/proposals/slack-bot-integration.md +0 -1457
  636. package/docs/tasks/global-skills-system.tasks.md +0 -230
  637. package/docs/tasks/webhook-integrations.tasks.md +0 -184
  638. package/docs/tasks/workspace-capabilities.tasks.md +0 -121
  639. package/docs/testing/RESILIENCY-TEST-PLAN-2026-01-01.md +0 -366
  640. package/scripts/cloud-setup.sh +0 -96
  641. package/scripts/dev/PUBLIC_RELEASE_PLAN.md +0 -88
  642. package/scripts/dev/dev-team-setup.sh +0 -431
  643. package/scripts/e2e-test.sh +0 -119
  644. package/scripts/games/game-protocol.md +0 -79
  645. package/scripts/games/hearts-setup.sh +0 -264
  646. package/scripts/manual-qa.sh +0 -293
  647. package/scripts/run-cloud-qa.sh +0 -220
  648. package/scripts/test-cli-auth/Dockerfile +0 -44
  649. package/scripts/test-cli-auth/Dockerfile.real +0 -79
  650. package/scripts/test-cli-auth/README.md +0 -286
  651. package/scripts/test-cli-auth/ci-test-real-clis.ts +0 -251
  652. package/scripts/test-cli-auth/ci-test-runner.ts +0 -263
  653. package/scripts/test-cli-auth/mock-cli.sh +0 -147
  654. package/scripts/test-cli-auth/package.json +0 -14
  655. package/scripts/test-cli-auth/test-oauth-flow.ts +0 -220
  656. package/scripts/test-pty-input-auto.js +0 -222
  657. package/scripts/test-pty-input.js +0 -150
  658. package/scripts/tictactoe-setup.sh +0 -181
  659. /package/dist/dashboard/out/_next/static/{H5aWG0udPB4iOUIl_gytz → T1tgCqVWHFIkV7ClEtzD7}/_buildManifest.js +0 -0
  660. /package/dist/dashboard/out/_next/static/chunks/{117-b100311aff8d5c61.js → 117-f7b8ab0809342e77.js} +0 -0
  661. /package/dist/dashboard/out/_next/static/chunks/{648-a13d3c2b1be45466.js → 648-5cc6e1921389a58a.js} +0 -0
  662. /package/dist/dashboard/out/_next/static/chunks/app/_not-found/{page-a4973f3e3c82fb67.js → page-53b8a69f76db17d0.js} +0 -0
  663. /package/dist/dashboard/out/_next/static/chunks/app/connect-repos/{page-dc2e3a1a22478efc.js → page-f45ecbc3e06134fc.js} +0 -0
  664. /package/dist/dashboard/out/_next/static/chunks/app/history/{page-56a8b4616a90dc43.js → page-8c8bed33beb2bf1c.js} +0 -0
  665. /package/dist/dashboard/out/_next/static/chunks/app/login/{page-3eac37ea6f5dd153.js → page-16f3b49e55b1e0ed.js} +0 -0
  666. /package/dist/dashboard/out/_next/static/chunks/app/pricing/{page-4d72d5a5d8a9b618.js → page-982a7000fee44014.js} +0 -0
  667. /package/dist/dashboard/out/_next/static/chunks/app/signup/{page-fee4ed1709070bcd.js → page-547dd0ca55ecd0ba.js} +0 -0
  668. /package/dist/dashboard/out/_next/static/chunks/{fd9d1056-bf46c09eb57e019c.js → fd9d1056-609918ca7b6280bb.js} +0 -0
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[766],{8766:function(e,s,a){"use strict";a.d(s,{fy:function(){return t},Wv:function(){return C}});var n=a(7437),i=a(2265);a(3655);var r=a(6272);let l={claude:{name:"Claude",color:"#D97757",icon:"◈"},codex:{name:"Codex",color:"#10A37F",icon:"⬡"},gemini:{name:"Gemini",color:"#4285F4",icon:"◇"},opencode:{name:"OpenCode",color:"#00D4AA",icon:"◆"},droid:{name:"Droid",color:"#6366F1",icon:"⬢"}},c=[{from:"Architect",to:"all",content:"Starting auth module implementation. @Backend handle API, @Frontend build login UI.",provider:"claude"},{from:"Backend",to:"Architect",content:"Acknowledged. Setting up JWT middleware and user routes.",provider:"codex"},{from:"Frontend",to:"Architect",content:"On it. Creating login form with OAuth integration.",provider:"claude"},{from:"Backend",to:"Frontend",content:"API ready at /api/auth. Endpoints: POST /login, POST /register, GET /me",provider:"codex"},{from:"Frontend",to:"Backend",content:"Perfect. Integrating now. Need CORS headers for localhost:3000",provider:"claude"},{from:"Backend",to:"Frontend",content:"Done. CORS configured for development.",provider:"codex"},{from:"Reviewer",to:"all",content:"Running security audit on auth implementation...",provider:"gemini"},{from:"Reviewer",to:"Backend",content:"Found issue: password not being hashed. Use bcrypt.",provider:"gemini"},{from:"Backend",to:"Reviewer",content:"Good catch. Fixed and pushed. Using bcrypt with 12 rounds.",provider:"codex"},{from:"Architect",to:"all",content:"Auth module complete. Moving to dashboard implementation.",provider:"claude"}];function t(){return(0,n.jsxs)("div",{className:"landing-page",children:[(0,n.jsxs)("div",{className:"landing-bg",children:[(0,n.jsx)(f,{}),(0,n.jsx)(N,{})]}),(0,n.jsx)(o,{}),(0,n.jsxs)("main",{children:[(0,n.jsx)(d,{}),(0,n.jsx)(u,{}),(0,n.jsx)(p,{}),(0,n.jsx)(x,{}),(0,n.jsx)(j,{}),(0,n.jsx)(g,{})]}),(0,n.jsx)(v,{})]})}function o(){let[e,s]=(0,i.useState)(!1),[a,l]=(0,i.useState)(!1);(0,i.useEffect)(()=>{let e=()=>s(window.scrollY>50);return window.addEventListener("scroll",e),()=>window.removeEventListener("scroll",e)},[]),(0,i.useEffect)(()=>{let e=()=>{window.innerWidth>768&&l(!1)};return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),(0,i.useEffect)(()=>(a?document.body.style.overflow="hidden":document.body.style.overflow="",()=>{document.body.style.overflow=""}),[a]);let c=()=>{l(!1)};return(0,n.jsxs)("nav",{className:"nav ".concat(e?"scrolled":""," ").concat(a?"menu-open":""),children:[(0,n.jsxs)("div",{className:"nav-inner",children:[(0,n.jsxs)("a",{href:"/",className:"nav-logo",children:[(0,n.jsx)(r.K7,{size:28,withGlow:!0}),(0,n.jsx)("span",{className:"logo-text",children:"Agent Relay"})]}),(0,n.jsxs)("div",{className:"nav-links",children:[(0,n.jsx)("a",{href:"#demo",children:"Demo"}),(0,n.jsx)("a",{href:"#features",children:"Features"}),(0,n.jsx)("a",{href:"#pricing",children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",className:"nav-docs",children:"Docs"})]}),(0,n.jsxs)("div",{className:"nav-actions",children:[(0,n.jsx)("a",{href:"/login",className:"btn-ghost",children:"Sign In"}),(0,n.jsx)("a",{href:"/signup",className:"btn-primary",children:"Get Started"})]}),(0,n.jsx)("button",{className:"mobile-menu-toggle",onClick:()=>l(!a),"aria-label":a?"Close menu":"Open menu",children:(0,n.jsxs)("span",{className:"hamburger ".concat(a?"open":""),children:[(0,n.jsx)("span",{className:"hamburger-line"}),(0,n.jsx)("span",{className:"hamburger-line"}),(0,n.jsx)("span",{className:"hamburger-line"})]})})]}),(0,n.jsx)("div",{className:"mobile-menu-overlay ".concat(a?"open":""),onClick:c}),(0,n.jsx)("div",{className:"mobile-menu ".concat(a?"open":""),children:(0,n.jsxs)("div",{className:"mobile-menu-content",children:[(0,n.jsxs)("div",{className:"mobile-nav-links",children:[(0,n.jsx)("a",{href:"#demo",onClick:c,children:"Demo"}),(0,n.jsx)("a",{href:"#features",onClick:c,children:"Features"}),(0,n.jsx)("a",{href:"#pricing",onClick:c,children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",onClick:c,children:"Documentation"})]}),(0,n.jsxs)("div",{className:"mobile-nav-actions",children:[(0,n.jsx)("a",{href:"/login",className:"btn-ghost btn-full",onClick:c,children:"Sign In"}),(0,n.jsx)("a",{href:"/signup",className:"btn-primary btn-full",onClick:c,children:"Get Started"})]})]})})]})}function d(){return(0,n.jsxs)("section",{className:"hero",children:[(0,n.jsxs)("div",{className:"hero-content",children:[(0,n.jsxs)("div",{className:"hero-badge",children:[(0,n.jsx)("span",{className:"badge-dot"}),(0,n.jsx)("span",{children:"Now in Public Beta"})]}),(0,n.jsxs)("h1",{className:"hero-title",children:[(0,n.jsx)("span",{className:"title-line",children:"Orchestrate AI Agents"}),(0,n.jsx)("span",{className:"title-line gradient",children:"Like a Symphony"})]}),(0,n.jsx)("p",{className:"hero-subtitle",children:"Deploy Claude, Codex, and Gemini agents that communicate in real-time. One dashboard to rule them all. Zero infrastructure headaches."}),(0,n.jsxs)("div",{className:"hero-cta",children:[(0,n.jsxs)("a",{href:"/signup",className:"btn-primary btn-large",children:[(0,n.jsx)("span",{children:"Start Building"}),(0,n.jsx)("span",{className:"btn-arrow",children:"→"})]}),(0,n.jsxs)("a",{href:"#demo",className:"btn-ghost btn-large",children:[(0,n.jsx)("span",{className:"play-icon",children:"▶"}),(0,n.jsx)("span",{children:"Watch Demo"})]})]}),(0,n.jsxs)("div",{className:"hero-stats",children:[(0,n.jsxs)("div",{className:"stat",children:[(0,n.jsx)("span",{className:"stat-value",children:"10K+"}),(0,n.jsx)("span",{className:"stat-label",children:"Agents Spawned"})]}),(0,n.jsx)("div",{className:"stat-divider"}),(0,n.jsxs)("div",{className:"stat",children:[(0,n.jsx)("span",{className:"stat-value",children:"500+"}),(0,n.jsx)("span",{className:"stat-label",children:"Teams"})]}),(0,n.jsx)("div",{className:"stat-divider"}),(0,n.jsxs)("div",{className:"stat",children:[(0,n.jsx)("span",{className:"stat-value",children:"99.9%"}),(0,n.jsx)("span",{className:"stat-label",children:"Uptime"})]})]})]}),(0,n.jsx)("div",{className:"hero-visual",children:(0,n.jsx)(h,{})})]})}function h(){let e=[{id:"lead",name:"Lead",x:50,y:30,provider:"claude",pulse:!0},{id:"backend",name:"Backend",x:25,y:55,provider:"codex",pulse:!1},{id:"frontend",name:"Frontend",x:75,y:55,provider:"claude",pulse:!1},{id:"reviewer",name:"Reviewer",x:50,y:80,provider:"gemini",pulse:!1}];return(0,n.jsxs)("div",{className:"agent-network",children:[(0,n.jsx)("svg",{className:"network-lines",viewBox:"0 0 100 100",preserveAspectRatio:"none",children:[{from:"lead",to:"backend"},{from:"lead",to:"frontend"},{from:"backend",to:"frontend"},{from:"backend",to:"reviewer"},{from:"frontend",to:"reviewer"}].map((s,a)=>{let i=e.find(e=>e.id===s.from),r=e.find(e=>e.id===s.to);return(0,n.jsxs)("g",{children:[(0,n.jsx)("line",{x1:i.x,y1:i.y,x2:r.x,y2:r.y,className:"network-line"}),(0,n.jsx)("line",{x1:i.x,y1:i.y,x2:r.x,y2:r.y,className:"network-line-glow",style:{animationDelay:"".concat(.3*a,"s")}})]},a)})}),e.map(e=>{let s=l[e.provider];return(0,n.jsxs)("div",{className:"network-agent ".concat(e.pulse?"pulse":""),style:{left:"".concat(e.x,"%"),top:"".concat(e.y,"%"),"--agent-color":s.color},children:[(0,n.jsx)("div",{className:"agent-glow"}),(0,n.jsx)("div",{className:"agent-icon",children:s.icon}),(0,n.jsx)("div",{className:"agent-label",children:e.name})]},e.id)}),(0,n.jsx)(m,{fromX:50,fromY:30,toX:25,toY:55,delay:0}),(0,n.jsx)(m,{fromX:25,fromY:55,toX:75,toY:55,delay:1}),(0,n.jsx)(m,{fromX:75,fromY:55,toX:50,toY:80,delay:2})]})}function m(e){let{fromX:s,fromY:a,toX:i,toY:r,delay:l}=e;return(0,n.jsx)("div",{className:"data-packet",style:{"--from-x":"".concat(s,"%"),"--from-y":"".concat(a,"%"),"--to-x":"".concat(i,"%"),"--to-y":"".concat(r,"%"),animationDelay:"".concat(l,"s")}})}function u(){let[e,s]=(0,i.useState)([]),[a,r]=(0,i.useState)(0),t=(0,i.useRef)(null);return(0,i.useEffect)(()=>{if(a>=c.length){let e=setTimeout(()=>{s([]),r(0)},3e3);return()=>clearTimeout(e)}let e=setTimeout(()=>{s(e=>[...e,c[a]]),r(e=>e+1)},1500);return()=>clearTimeout(e)},[a]),(0,i.useEffect)(()=>{let e=t.current;e&&(e.scrollTop=e.scrollHeight)},[e]),(0,n.jsxs)("section",{id:"demo",className:"demo-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Live Demo"}),(0,n.jsx)("h2",{children:"Watch Agents Collaborate"}),(0,n.jsx)("p",{children:"See how multiple AI agents work together on a real task in real-time."})]}),(0,n.jsxs)("div",{className:"demo-container",children:[(0,n.jsxs)("div",{className:"demo-window",children:[(0,n.jsxs)("div",{className:"window-header",children:[(0,n.jsxs)("div",{className:"window-dots",children:[(0,n.jsx)("span",{className:"dot red"}),(0,n.jsx)("span",{className:"dot yellow"}),(0,n.jsx)("span",{className:"dot green"})]}),(0,n.jsx)("div",{className:"window-title",children:"Agent Relay — auth-module"}),(0,n.jsxs)("div",{className:"window-status",children:[(0,n.jsx)("span",{className:"status-dot"}),(0,n.jsx)("span",{children:"4 agents online"})]})]}),(0,n.jsxs)("div",{className:"demo-content",children:[(0,n.jsx)("div",{className:"demo-sidebar",children:(0,n.jsxs)("div",{className:"sidebar-section",children:[(0,n.jsx)("div",{className:"sidebar-label",children:"AGENTS"}),["Architect","Backend","Frontend","Reviewer"].map((e,s)=>{let a=l[["claude","codex","claude","gemini"][s]];return(0,n.jsxs)("div",{className:"sidebar-agent",children:[(0,n.jsx)("span",{className:"agent-dot",style:{background:a.color}}),(0,n.jsx)("span",{className:"agent-name",children:e}),(0,n.jsx)("span",{className:"agent-status",children:"●"})]},e)})]})}),(0,n.jsxs)("div",{className:"demo-messages",ref:t,children:[e.map((e,s)=>{let a=l[e.provider];return(0,n.jsxs)("div",{className:"message",style:{"--msg-color":a.color},children:[(0,n.jsxs)("div",{className:"message-header",children:[(0,n.jsx)("span",{className:"message-icon",style:{background:a.color},children:a.icon}),(0,n.jsx)("span",{className:"message-from",children:e.from}),(0,n.jsx)("span",{className:"message-arrow",children:"→"}),(0,n.jsx)("span",{className:"message-to",children:"all"===e.to?"everyone":e.to}),(0,n.jsx)("span",{className:"message-time",children:"just now"})]}),(0,n.jsx)("div",{className:"message-content",children:e.content})]},s)}),e.length<c.length&&(0,n.jsxs)("div",{className:"typing-indicator",children:[(0,n.jsx)("span",{className:"typing-dot"}),(0,n.jsx)("span",{className:"typing-dot"}),(0,n.jsx)("span",{className:"typing-dot"})]})]})]})]}),(0,n.jsx)("div",{className:"demo-caption",children:(0,n.jsx)("p",{children:"This is a simulation of agents completing a task. In production, agents run your actual code."})})]})]})}function p(){return(0,n.jsxs)("section",{id:"features",className:"features-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Features"}),(0,n.jsx)("h2",{children:"Everything You Need"}),(0,n.jsx)("p",{children:"Built for developers who want AI agents that actually work together."})]}),(0,n.jsx)("div",{className:"features-grid",children:[{icon:"⚡",title:"One-Click Workspaces",description:"Spin up isolated environments for each project. Connect your repo and agents are ready in seconds."},{icon:"\uD83D\uDD04",title:"Real-Time Messaging",description:"Agents communicate through a blazing-fast relay. @mentions, broadcasts, and direct messages."},{icon:"\uD83D\uDD10",title:"Secure Credential Vault",description:"Store API keys and secrets encrypted at rest. Agents access only what they need."},{icon:"\uD83C\uDFAF",title:"Smart Orchestration",description:"Lead agents delegate tasks. Workers report progress. The system handles the complexity."},{icon:"\uD83D\uDCCA",title:"Full Observability",description:"Trace every message, tool call, and decision. Replay and debug any session."},{icon:"\uD83D\uDE80",title:"Auto-Scaling",description:"From 1 agent to 100. Pay only for what you use. Scale down to zero when idle."}].map((e,s)=>(0,n.jsxs)("div",{className:"feature-card",style:{animationDelay:"".concat(.1*s,"s")},children:[(0,n.jsx)("div",{className:"feature-icon",children:e.icon}),(0,n.jsx)("h3",{children:e.title}),(0,n.jsx)("p",{children:e.description})]},s))})]})}function x(){return(0,n.jsxs)("section",{className:"providers-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Providers"}),(0,n.jsx)("h2",{children:"Bring Your Own Agents"}),(0,n.jsx)("p",{children:"Use any AI provider. Mix and match for the perfect team."})]}),(0,n.jsx)("div",{className:"providers-grid",children:Object.entries(l).map(e=>{let[s,a]=e;return(0,n.jsxs)("div",{className:"provider-card",style:{"--provider-color":a.color},children:[(0,n.jsx)("div",{className:"provider-icon",children:a.icon}),(0,n.jsx)("div",{className:"provider-name",children:a.name}),(0,n.jsx)("div",{className:"provider-status",children:"Supported"})]},s)})})]})}function j(){return(0,n.jsxs)("section",{id:"pricing",className:"pricing-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Pricing"}),(0,n.jsx)("h2",{children:"Simple, Transparent Pricing"}),(0,n.jsx)("p",{children:"Start free. Scale as you grow. No hidden fees."})]}),(0,n.jsx)("div",{className:"pricing-grid",children:[{name:"Free",price:"$0",period:"forever",description:"Try it out on a side project",features:["1 workspace","3 repositories","2 concurrent agents","10 compute hours/month","Community support"],cta:"Get Started",highlighted:!1},{name:"Pro",price:"$29",period:"/month",description:"For professional developers",features:["5 workspaces","20 repositories","10 concurrent agents","100 compute hours/month","Coordinator agents","Email support"],cta:"Start Free Trial",highlighted:!0},{name:"Team",price:"$99",period:"/month",description:"For growing teams",features:["20 workspaces","100 repositories","50 concurrent agents","500 compute hours/month","Coordinator agents","Priority support","Audit logs"],cta:"Start Free Trial",highlighted:!1},{name:"Enterprise",price:"Custom",period:"",description:"For organizations at scale",features:["Unlimited workspaces","Unlimited repositories","Unlimited agents","Unlimited compute","SSO/SAML","SLA guarantee","Dedicated support"],cta:"Contact Sales",highlighted:!1}].map((e,s)=>(0,n.jsxs)("div",{className:"pricing-card ".concat(e.highlighted?"highlighted":""),children:[e.highlighted&&(0,n.jsx)("div",{className:"popular-badge",children:"Most Popular"}),(0,n.jsxs)("div",{className:"pricing-header",children:[(0,n.jsx)("h3",{children:e.name}),(0,n.jsxs)("div",{className:"pricing-price",children:[(0,n.jsx)("span",{className:"price",children:e.price}),(0,n.jsx)("span",{className:"period",children:e.period})]}),(0,n.jsx)("p",{className:"pricing-description",children:e.description})]}),(0,n.jsx)("ul",{className:"pricing-features",children:e.features.map((e,s)=>(0,n.jsxs)("li",{children:[(0,n.jsx)("span",{className:"check",children:"✓"}),(0,n.jsx)("span",{children:e})]},s))}),(0,n.jsx)("a",{href:"/signup",className:"btn-".concat(e.highlighted?"primary":"ghost"," btn-full"),children:e.cta})]},s))})]})}function g(){return(0,n.jsxs)("section",{className:"cta-section",children:[(0,n.jsxs)("div",{className:"cta-content",children:[(0,n.jsx)("h2",{children:"Ready to Orchestrate?"}),(0,n.jsx)("p",{children:"Join thousands of developers building with AI agent teams."}),(0,n.jsxs)("div",{className:"cta-buttons",children:[(0,n.jsxs)("a",{href:"/signup",className:"btn-primary btn-large",children:[(0,n.jsx)("span",{children:"Start Building Free"}),(0,n.jsx)("span",{className:"btn-arrow",children:"→"})]}),(0,n.jsx)("a",{href:"/docs",className:"btn-ghost btn-large",children:"Read the Docs"})]})]}),(0,n.jsxs)("div",{className:"cta-terminal",children:[(0,n.jsxs)("div",{className:"terminal-header",children:[(0,n.jsx)("span",{className:"terminal-prompt",children:"$"}),(0,n.jsx)("span",{className:"terminal-text",children:"npx agent-relay init"})]}),(0,n.jsxs)("div",{className:"terminal-output",children:[(0,n.jsx)("span",{className:"output-line",children:"✓ Connected to Agent Relay Cloud"}),(0,n.jsx)("span",{className:"output-line",children:"✓ Workspace created: my-project"}),(0,n.jsx)("span",{className:"output-line",children:"✓ Ready to spawn agents"}),(0,n.jsx)("span",{className:"output-line cursor",children:"→ agent-relay spawn Lead --provider claude"})]})]})]})}function v(){return(0,n.jsxs)("footer",{className:"footer",children:[(0,n.jsxs)("div",{className:"footer-inner",children:[(0,n.jsxs)("div",{className:"footer-brand",children:[(0,n.jsxs)("a",{href:"/",className:"footer-logo",children:[(0,n.jsx)(r.K7,{size:24,withGlow:!0}),(0,n.jsx)("span",{className:"logo-text",children:"Agent Relay"})]}),(0,n.jsx)("p",{children:"Orchestrate AI agents like a symphony."})]}),(0,n.jsxs)("div",{className:"footer-links",children:[(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Product"}),(0,n.jsx)("a",{href:"#features",children:"Features"}),(0,n.jsx)("a",{href:"#pricing",children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",children:"Documentation"}),(0,n.jsx)("a",{href:"/changelog",children:"Changelog"})]}),(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Company"}),(0,n.jsx)("a",{href:"/about",children:"About"}),(0,n.jsx)("a",{href:"/blog",children:"Blog"}),(0,n.jsx)("a",{href:"/careers",children:"Careers"}),(0,n.jsx)("a",{href:"/contact",children:"Contact"})]}),(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Legal"}),(0,n.jsx)("a",{href:"/privacy",children:"Privacy"}),(0,n.jsx)("a",{href:"/terms",children:"Terms"}),(0,n.jsx)("a",{href:"/security",children:"Security"})]})]})]}),(0,n.jsxs)("div",{className:"footer-bottom",children:[(0,n.jsx)("p",{children:"\xa9 2026 Agent Relay. All rights reserved."}),(0,n.jsxs)("div",{className:"social-links",children:[(0,n.jsx)("a",{href:"https://github.com/AgentWorkforce/relay","aria-label":"GitHub",children:(0,n.jsx)(y,{})}),(0,n.jsx)("a",{href:"https://twitter.com/agent_relay","aria-label":"Twitter",children:(0,n.jsx)(b,{})}),(0,n.jsx)("a",{href:"https://discord.gg/agentrelay","aria-label":"Discord",children:(0,n.jsx)(w,{})})]})]})]})}function f(){return(0,n.jsxs)("div",{className:"grid-bg",children:[(0,n.jsx)("div",{className:"grid-lines"}),(0,n.jsx)("div",{className:"grid-glow"})]})}function N(){return(0,n.jsxs)("div",{className:"glow-orbs",children:[(0,n.jsx)("div",{className:"orb orb-1"}),(0,n.jsx)("div",{className:"orb orb-2"}),(0,n.jsx)("div",{className:"orb orb-3"})]})}function y(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"})})}function b(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})})}function w(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M20.317 4.37a19.791 19.791 0 00-4.885-1.515.074.074 0 00-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 00-5.487 0 12.64 12.64 0 00-.617-1.25.077.077 0 00-.079-.037A19.736 19.736 0 003.677 4.37a.07.07 0 00-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 00.031.057 19.9 19.9 0 005.993 3.03.078.078 0 00.084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 00-.041-.106 13.107 13.107 0 01-1.872-.892.077.077 0 01-.008-.128 10.2 10.2 0 00.372-.292.074.074 0 01.077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 01.078.01c.12.098.246.198.373.292a.077.077 0 01-.006.127 12.299 12.299 0 01-1.873.892.077.077 0 00-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 00.084.028 19.839 19.839 0 006.002-3.03.077.077 0 00.032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 00-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z"})})}let k=[{id:"free",name:"Free",price:0,period:"forever",tagline:"Try it out on a side project",description:"Perfect for exploring AI agent orchestration on personal projects.",limits:{workspaces:1,repos:3,concurrentAgents:2,computeHours:10},features:[{name:"Workspaces",value:"1",included:!0},{name:"Repositories",value:"3",included:!0},{name:"Concurrent agents",value:"2",included:!0},{name:"Compute hours/month",value:"10",included:!0},{name:"Coordinator agents",value:null,included:!1},{name:"Team collaboration",value:null,included:!1},{name:"Priority support",value:null,included:!1},{name:"Audit logs",value:null,included:!1},{name:"SSO/SAML",value:null,included:!1},{name:"SLA guarantee",value:null,included:!1}],cta:"Get Started Free",ctaLink:"/signup",highlighted:!1},{id:"pro",name:"Pro",price:29,period:"/month",tagline:"For professional developers",description:"Unlock coordinator agents and scale your AI workforce.",limits:{workspaces:5,repos:20,concurrentAgents:10,computeHours:100},features:[{name:"Workspaces",value:"5",included:!0},{name:"Repositories",value:"20",included:!0},{name:"Concurrent agents",value:"10",included:!0},{name:"Compute hours/month",value:"100",included:!0},{name:"Coordinator agents",value:"Yes",included:!0},{name:"Team collaboration",value:null,included:!1},{name:"Priority support",value:null,included:!1},{name:"Audit logs",value:null,included:!1},{name:"SSO/SAML",value:null,included:!1},{name:"SLA guarantee",value:null,included:!1}],cta:"Start Free Trial",ctaLink:"/signup?plan=pro",highlighted:!0,badge:"Most Popular"},{id:"team",name:"Team",price:99,period:"/month",tagline:"For growing teams",description:"Collaborate with your team and ship faster together.",limits:{workspaces:20,repos:100,concurrentAgents:50,computeHours:500},features:[{name:"Workspaces",value:"20",included:!0},{name:"Repositories",value:"100",included:!0},{name:"Concurrent agents",value:"50",included:!0},{name:"Compute hours/month",value:"500",included:!0},{name:"Coordinator agents",value:"Yes",included:!0},{name:"Team collaboration",value:"Yes",included:!0},{name:"Priority support",value:"Yes",included:!0},{name:"Audit logs",value:"Yes",included:!0},{name:"SSO/SAML",value:null,included:!1},{name:"SLA guarantee",value:null,included:!1}],cta:"Start Free Trial",ctaLink:"/signup?plan=team",highlighted:!1},{id:"enterprise",name:"Enterprise",price:null,period:"",tagline:"For organizations at scale",description:"Custom solutions with dedicated support and SLA guarantees.",limits:{workspaces:1/0,repos:1/0,concurrentAgents:1/0,computeHours:1/0},features:[{name:"Workspaces",value:"Unlimited",included:!0},{name:"Repositories",value:"Unlimited",included:!0},{name:"Concurrent agents",value:"Unlimited",included:!0},{name:"Compute hours/month",value:"Unlimited",included:!0},{name:"Coordinator agents",value:"Yes",included:!0},{name:"Team collaboration",value:"Yes",included:!0},{name:"Priority support",value:"Dedicated",included:!0},{name:"Audit logs",value:"Yes",included:!0},{name:"SSO/SAML",value:"Yes",included:!0},{name:"SLA guarantee",value:"99.9%",included:!0}],cta:"Contact Sales",ctaLink:"/contact?subject=enterprise",highlighted:!1}],A=[{q:'What counts as a "compute hour"?',a:"A compute hour is measured when your agents are actively running in our cloud infrastructure. Time spent waiting for your input or idle time doesn't count. We track usage to the second and round up to the nearest minute for billing."},{q:"Can I use my own AI API keys?",a:"Yes! Agent Relay orchestrates your agents—you connect your own Claude, Codex, or Gemini instances. We don't charge for AI API usage; that's between you and your AI provider. Our pricing covers the orchestration infrastructure."},{q:"What are coordinator agents?",a:"Coordinators are special agents that oversee project groups. They delegate tasks to other agents, track progress, and ensure work is completed efficiently across multiple repositories. Available on Pro plans and above."},{q:"What happens if I exceed my limits?",a:"We'll notify you when you're approaching your limits. If you exceed them, new agent spawns will be blocked until you upgrade or wait for the next billing cycle. Your existing agents will continue running."},{q:"Can I change plans anytime?",a:"Absolutely. Upgrade instantly and get prorated billing. Downgrade takes effect at the end of your billing cycle. No long-term contracts required."},{q:"Do you offer discounts for startups or open source?",a:"Yes! We offer 50% off for verified startups (less than $1M raised) and free Pro accounts for maintainers of popular open source projects. Contact us to apply."}];function C(){let[e,s]=(0,i.useState)("monthly"),[a,r]=(0,i.useState)(null);return(0,n.jsxs)("div",{className:"pricing-page",children:[(0,n.jsxs)("div",{className:"pricing-bg",children:[(0,n.jsx)(I,{}),(0,n.jsx)(O,{})]}),(0,n.jsx)(S,{}),(0,n.jsxs)("main",{children:[(0,n.jsx)(F,{billingCycle:e,setBillingCycle:s}),(0,n.jsx)(D,{billingCycle:e}),(0,n.jsx)(P,{}),(0,n.jsx)(L,{openFaq:a,setOpenFaq:r}),(0,n.jsx)(T,{})]}),(0,n.jsx)(R,{})]})}function S(){let[e,s]=(0,i.useState)(!1);return(0,i.useEffect)(()=>{let e=()=>s(window.scrollY>50);return window.addEventListener("scroll",e),()=>window.removeEventListener("scroll",e)},[]),(0,n.jsx)("nav",{className:"nav ".concat(e?"scrolled":""),children:(0,n.jsxs)("div",{className:"nav-inner",children:[(0,n.jsxs)("a",{href:"/",className:"nav-logo",children:[(0,n.jsx)(r.K7,{size:28,withGlow:!0}),(0,n.jsx)("span",{className:"logo-text",children:"Agent Relay"})]}),(0,n.jsxs)("div",{className:"nav-links",children:[(0,n.jsx)("a",{href:"/#demo",children:"Demo"}),(0,n.jsx)("a",{href:"/#features",children:"Features"}),(0,n.jsx)("a",{href:"/pricing",className:"active",children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",className:"nav-docs",children:"Docs"})]}),(0,n.jsxs)("div",{className:"nav-actions",children:[(0,n.jsx)("a",{href:"/login",className:"btn-ghost",children:"Sign In"}),(0,n.jsx)("a",{href:"/signup",className:"btn-primary",children:"Get Started"})]})]})})}function F(e){let{billingCycle:s,setBillingCycle:a}=e;return(0,n.jsx)("section",{className:"pricing-hero",children:(0,n.jsxs)("div",{className:"pricing-hero-content",children:[(0,n.jsxs)("div",{className:"hero-badge",children:[(0,n.jsx)("span",{className:"badge-icon",children:"◈"}),(0,n.jsx)("span",{children:"Simple, transparent pricing"})]}),(0,n.jsxs)("h1",{children:[(0,n.jsx)("span",{className:"title-line",children:"Choose Your"}),(0,n.jsx)("span",{className:"title-line gradient",children:"Mission Control"})]}),(0,n.jsxs)("p",{className:"hero-subtitle",children:["Start free. Scale as you grow. Pay only for what you use.",(0,n.jsx)("br",{}),"All plans include a 14-day free trial."]}),(0,n.jsxs)("div",{className:"billing-toggle",children:[(0,n.jsx)("button",{className:"monthly"===s?"active":"",onClick:()=>a("monthly"),children:"Monthly"}),(0,n.jsxs)("button",{className:"annual"===s?"active":"",onClick:()=>a("annual"),children:["Annual",(0,n.jsx)("span",{className:"save-badge",children:"Save 20%"})]})]})]})})}function D(e){let{billingCycle:s}=e,a=e=>{if(null===e.price)return"Custom";if(0===e.price)return"$0";let a="annual"===s?Math.floor(.8*e.price):e.price;return"$".concat(a)};return(0,n.jsx)("section",{className:"plans-section",children:(0,n.jsx)("div",{className:"plans-grid",children:k.map(e=>(0,n.jsxs)("div",{className:"plan-card ".concat(e.highlighted?"highlighted":""),children:[e.badge&&(0,n.jsx)("div",{className:"plan-badge",children:e.badge}),(0,n.jsxs)("div",{className:"plan-header",children:[(0,n.jsx)("h3",{children:e.name}),(0,n.jsx)("p",{className:"plan-tagline",children:e.tagline})]}),(0,n.jsxs)("div",{className:"plan-price",children:[(0,n.jsx)("span",{className:"price",children:a(e)}),null!==e.price&&e.price>0&&(0,n.jsx)("span",{className:"period",children:"annual"===s?"/mo, billed annually":"/month"}),0===e.price&&(0,n.jsx)("span",{className:"period",children:"forever"})]}),(0,n.jsx)("p",{className:"plan-description",children:e.description}),(0,n.jsxs)("div",{className:"plan-limits",children:[(0,n.jsxs)("div",{className:"limit-item",children:[(0,n.jsx)("span",{className:"limit-icon",children:"◇"}),(0,n.jsx)("span",{className:"limit-value",children:e.limits.workspaces===1/0?"∞":e.limits.workspaces}),(0,n.jsx)("span",{className:"limit-label",children:"workspaces"})]}),(0,n.jsxs)("div",{className:"limit-item",children:[(0,n.jsx)("span",{className:"limit-icon",children:"◈"}),(0,n.jsx)("span",{className:"limit-value",children:e.limits.repos===1/0?"∞":e.limits.repos}),(0,n.jsx)("span",{className:"limit-label",children:"repos"})]}),(0,n.jsxs)("div",{className:"limit-item",children:[(0,n.jsx)("span",{className:"limit-icon",children:"⬡"}),(0,n.jsx)("span",{className:"limit-value",children:e.limits.concurrentAgents===1/0?"∞":e.limits.concurrentAgents}),(0,n.jsx)("span",{className:"limit-label",children:"agents"})]}),(0,n.jsxs)("div",{className:"limit-item",children:[(0,n.jsx)("span",{className:"limit-icon",children:"⏱"}),(0,n.jsx)("span",{className:"limit-value",children:e.limits.computeHours===1/0?"∞":e.limits.computeHours}),(0,n.jsx)("span",{className:"limit-label",children:"hours/mo"})]})]}),(0,n.jsx)("a",{href:e.ctaLink,className:"btn-".concat(e.highlighted?"primary":"ghost"," btn-full"),children:e.cta})]},e.id))})})}function P(){let e=k[0].features.map(e=>e.name);return(0,n.jsxs)("section",{className:"comparison-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"Compare Plans"}),(0,n.jsx)("h2",{children:"Feature Comparison"}),(0,n.jsx)("p",{children:"See exactly what's included in each plan."})]}),(0,n.jsx)("div",{className:"comparison-table-wrapper",children:(0,n.jsxs)("table",{className:"comparison-table",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{className:"feature-col",children:"Feature"}),k.map(e=>(0,n.jsx)("th",{className:e.highlighted?"highlighted":"",children:e.name},e.id))]})}),(0,n.jsx)("tbody",{children:e.map((e,s)=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"feature-col",children:e}),k.map(e=>{let a=e.features[s];return(0,n.jsx)("td",{className:e.highlighted?"highlighted":"",children:a.included?a.value?(0,n.jsx)("span",{className:"feature-value",children:a.value}):(0,n.jsx)("span",{className:"check",children:"✓"}):(0,n.jsx)("span",{className:"dash",children:"—"})},e.id)})]},e))})]})})]})}function L(e){let{openFaq:s,setOpenFaq:a}=e;return(0,n.jsxs)("section",{className:"faq-section",children:[(0,n.jsxs)("div",{className:"section-header",children:[(0,n.jsx)("span",{className:"section-tag",children:"FAQ"}),(0,n.jsx)("h2",{children:"Questions? Answers."}),(0,n.jsx)("p",{children:"Everything you need to know about Agent Relay pricing."})]}),(0,n.jsx)("div",{className:"faq-grid",children:A.map((e,i)=>(0,n.jsxs)("div",{className:"faq-item ".concat(s===i?"open":""),onClick:()=>a(s===i?null:i),children:[(0,n.jsxs)("div",{className:"faq-question",children:[(0,n.jsx)("span",{children:e.q}),(0,n.jsx)("span",{className:"faq-toggle",children:s===i?"−":"+"})]}),(0,n.jsx)("div",{className:"faq-answer",children:(0,n.jsx)("p",{children:e.a})})]},i))})]})}function T(){return(0,n.jsx)("section",{className:"cta-section",children:(0,n.jsxs)("div",{className:"cta-card",children:[(0,n.jsxs)("div",{className:"cta-content",children:[(0,n.jsx)("h2",{children:"Ready to orchestrate?"}),(0,n.jsx)("p",{children:"Start free and upgrade when you need more power."}),(0,n.jsxs)("div",{className:"cta-buttons",children:[(0,n.jsxs)("a",{href:"/signup",className:"btn-primary btn-large",children:[(0,n.jsx)("span",{children:"Get Started Free"}),(0,n.jsx)("span",{className:"btn-arrow",children:"→"})]}),(0,n.jsx)("a",{href:"/contact",className:"btn-ghost btn-large",children:"Talk to Sales"})]})]}),(0,n.jsx)("div",{className:"cta-visual",children:(0,n.jsxs)("div",{className:"orbit",children:[(0,n.jsx)("div",{className:"orbit-ring ring-1"}),(0,n.jsx)("div",{className:"orbit-ring ring-2"}),(0,n.jsx)("div",{className:"orbit-ring ring-3"}),(0,n.jsx)("div",{className:"orbit-center",children:(0,n.jsx)(r.K7,{size:40,withGlow:!0})}),(0,n.jsx)("div",{className:"orbit-dot dot-1",children:"◈"}),(0,n.jsx)("div",{className:"orbit-dot dot-2",children:"⬡"}),(0,n.jsx)("div",{className:"orbit-dot dot-3",children:"◇"})]})})]})})}function R(){return(0,n.jsxs)("footer",{className:"footer",children:[(0,n.jsxs)("div",{className:"footer-inner",children:[(0,n.jsxs)("div",{className:"footer-brand",children:[(0,n.jsxs)("a",{href:"/",className:"footer-logo",children:[(0,n.jsx)(r.K7,{size:24,withGlow:!0}),(0,n.jsx)("span",{className:"logo-text",children:"Agent Relay"})]}),(0,n.jsx)("p",{children:"Orchestrate AI agents like a symphony."})]}),(0,n.jsxs)("div",{className:"footer-links",children:[(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Product"}),(0,n.jsx)("a",{href:"/#features",children:"Features"}),(0,n.jsx)("a",{href:"/pricing",children:"Pricing"}),(0,n.jsx)("a",{href:"/docs",children:"Documentation"}),(0,n.jsx)("a",{href:"/changelog",children:"Changelog"})]}),(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Company"}),(0,n.jsx)("a",{href:"/about",children:"About"}),(0,n.jsx)("a",{href:"/blog",children:"Blog"}),(0,n.jsx)("a",{href:"/careers",children:"Careers"}),(0,n.jsx)("a",{href:"/contact",children:"Contact"})]}),(0,n.jsxs)("div",{className:"footer-column",children:[(0,n.jsx)("h4",{children:"Legal"}),(0,n.jsx)("a",{href:"/privacy",children:"Privacy"}),(0,n.jsx)("a",{href:"/terms",children:"Terms"}),(0,n.jsx)("a",{href:"/security",children:"Security"})]})]})]}),(0,n.jsxs)("div",{className:"footer-bottom",children:[(0,n.jsx)("p",{children:"\xa9 2025 Agent Relay. All rights reserved."}),(0,n.jsxs)("div",{className:"social-links",children:[(0,n.jsx)("a",{href:"https://github.com/AgentWorkforce/relay","aria-label":"GitHub",children:(0,n.jsx)(B,{})}),(0,n.jsx)("a",{href:"https://twitter.com/agent_relay","aria-label":"Twitter",children:(0,n.jsx)(z,{})}),(0,n.jsx)("a",{href:"https://discord.gg/agentrelay","aria-label":"Discord",children:(0,n.jsx)(E,{})})]})]})]})}function I(){return(0,n.jsxs)("div",{className:"grid-bg",children:[(0,n.jsx)("div",{className:"grid-lines"}),(0,n.jsx)("div",{className:"grid-glow"})]})}function O(){return(0,n.jsxs)("div",{className:"glow-orbs",children:[(0,n.jsx)("div",{className:"orb orb-1"}),(0,n.jsx)("div",{className:"orb orb-2"})]})}function B(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"})})}function z(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})})}function E(){return(0,n.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M20.317 4.37a19.791 19.791 0 00-4.885-1.515.074.074 0 00-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 00-5.487 0 12.64 12.64 0 00-.617-1.25.077.077 0 00-.079-.037A19.736 19.736 0 003.677 4.37a.07.07 0 00-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 00.031.057 19.9 19.9 0 005.993 3.03.078.078 0 00.084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 00-.041-.106 13.107 13.107 0 01-1.872-.892.077.077 0 01-.008-.128 10.2 10.2 0 00.372-.292.074.074 0 01.077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 01.078.01c.12.098.246.198.373.292a.077.077 0 01-.006.127 12.299 12.299 0 01-1.873.892.077.077 0 00-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 00.084.028 19.839 19.839 0 006.002-3.03.077.077 0 00.032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 00-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z"})})}},3655:function(){}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[191],{3561:function(e,t,r){Promise.resolve().then(r.bind(r,7047))},7047:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return u}});var s=r(7437),a=r(2265),o=r(6480),n=r(5372),l=r(6272),i=r(9116),c=r(3083),d=r(257);let x=[{id:"anthropic",name:"Anthropic",displayName:"Claude",color:"#D97757",cliCommand:"claude"},{id:"codex",name:"OpenAI",displayName:"Codex",color:"#10A37F",cliCommand:"codex login",supportsDeviceFlow:!0,requiresUrlCopy:!0},{id:"opencode",name:"OpenCode",displayName:"OpenCode",color:"#00D4AA",cliCommand:"opencode"},{id:"droid",name:"Factory",displayName:"Droid",color:"#6366F1",cliCommand:"droid"}],m="true"===d.env.NEXT_PUBLIC_FORCE_CLOUD_MODE;function u(){let[e,t]=(0,a.useState)("loading"),[r,d]=(0,a.useState)([]),[u,h]=(0,a.useState)([]),[p,b]=(0,a.useState)(null),[f,g]=(0,a.useState)(void 0),[w,j]=(0,a.useState)(null),[v,N]=(0,a.useState)(m),[k,y]=(0,a.useState)(null),[C,S]=(0,a.useState)(null);(0,a.useEffect)(()=>{(async()=>{try{let e=await fetch("/api/auth/session",{credentials:"include"});if(404===e.status){if(m)throw Error("Cloud mode enforced but session endpoint returned 404. Is the cloud server running?");N(!1),t("local");return}let r=e.headers.get("X-CSRF-Token");if(r&&y(r),!(await e.json()).authenticated){window.location.href="/login";return}N(!0);let[s,a]=await Promise.all([fetch("/api/workspaces",{credentials:"include"}),fetch("/api/github-app/repos",{credentials:"include"})]);if(!s.ok){if(401===s.status){window.location.href="/login";return}throw Error("Failed to fetch workspaces")}let o=await s.json(),n=a.ok?await a.json():{repositories:[]};d(o.workspaces||[]),h(n.repositories||[]);let l=(o.workspaces||[]).filter(e=>"running"===e.status&&e.publicUrl);1===l.length?F(l[0]):l.length>1?t("select-workspace"):(o.workspaces||[]).length>0?t("select-workspace"):(n.repositories||[]).length>0?t("no-workspaces"):window.location.href="/connect-repos"}catch(e){if(e instanceof TypeError&&e.message.includes("Failed to fetch")){if(m){console.error("Cloud mode enforced but network request failed:",e),j("Cloud mode enforced but failed to connect to server. Is the cloud server running?"),t("error");return}N(!1),t("local");return}console.error("Init error:",e),j(e instanceof Error?e.message:"Failed to initialize"),t("error")}})()},[]);let F=(0,a.useCallback)(e=>{if(!e.publicUrl){j("Workspace has no public URL"),t("error");return}b(e),t("connecting"),(0,i.hc)(e.id);let r=new URL(e.publicUrl),s="https:"===r.protocol?"wss:":"ws:";g("".concat(s,"//").concat(r.host,"/ws")),t("connected")},[]),L=(0,a.useCallback)(async e=>{t("loading"),j(null);try{let r={"Content-Type":"application/json"};k&&(r["X-CSRF-Token"]=k);let s=await fetch("/api/workspaces/quick",{method:"POST",credentials:"include",headers:r,body:JSON.stringify({repositoryFullName:e})}),a=await s.json();if(!s.ok)throw Error(a.error||"Failed to create workspace");let o=async e=>{let r=0;for(;r<150;){let s=await fetch("/api/workspaces/".concat(e,"/status"),{credentials:"include"}),a=await s.json();if("running"===a.status){let r=await fetch("/api/workspaces/".concat(e),{credentials:"include"}),s=await r.json();if(s.publicUrl){b(s),t("connect-provider");return}}else if("error"===a.status){let e=a.errorMessage||"Workspace provisioning failed";throw Error(e)}await new Promise(e=>setTimeout(e,2e3)),++r%15==0&&console.log("[workspace] Still provisioning... (".concat(Math.floor(2e3*r/1e3),"s elapsed)"))}throw Error("Workspace provisioning timed out after 5 minutes. Please try again or contact support.")};await o(a.workspaceId)}catch(e){console.error("Create workspace error:",e),j(e instanceof Error?e.message:"Failed to create workspace"),t("no-workspaces")}},[F,k]),E=(0,a.useCallback)(e=>{p&&S(e.id)},[p]),M=(0,a.useCallback)(()=>{p&&(S(null),F(p))},[p,F]),U=(0,a.useCallback)(()=>{S(null)},[]),A=(0,a.useCallback)(async e=>{t("loading"),j(null);try{let t={};k&&(t["X-CSRF-Token"]=k);let r=await fetch("/api/workspaces/".concat(e.id,"/restart"),{method:"POST",credentials:"include",headers:t});if(!r.ok){let e=await r.json();throw Error(e.error||"Failed to start workspace")}let s=0;for(;s<60;){let t=await fetch("/api/workspaces/".concat(e.id,"/status"),{credentials:"include"}),r=await t.json();if("running"===r.status){let t=await fetch("/api/workspaces/".concat(e.id),{credentials:"include"}),r=await t.json();if(r.publicUrl){F({...e,...r});return}}await new Promise(e=>setTimeout(e,2e3)),s++}throw Error("Workspace start timed out")}catch(e){console.error("Start workspace error:",e),j(e instanceof Error?e.message:"Failed to start workspace"),t("select-workspace")}},[F,k]);return"loading"===e?(0,s.jsx)("div",{className:"min-h-screen bg-gradient-to-br from-[#0a0a0f] via-[#0d1117] to-[#0a0a0f] flex items-center justify-center",children:(0,s.jsxs)("div",{className:"text-center",children:[(0,s.jsxs)("svg",{className:"w-8 h-8 text-accent-cyan animate-spin mx-auto",fill:"none",viewBox:"0 0 24 24",children:[(0,s.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,s.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}),(0,s.jsx)("p",{className:"mt-4 text-text-muted",children:"Loading..."})]})}):"local"===e?(0,s.jsx)(o.g,{}):"connected"===e&&f?(0,s.jsx)(n.TI,{cloudMode:!0,children:(0,s.jsx)(o.g,{wsUrl:f})}):"connecting"===e?(0,s.jsx)("div",{className:"min-h-screen bg-gradient-to-br from-[#0a0a0f] via-[#0d1117] to-[#0a0a0f] flex items-center justify-center",children:(0,s.jsxs)("div",{className:"text-center",children:[(0,s.jsxs)("svg",{className:"w-8 h-8 text-accent-cyan animate-spin mx-auto",fill:"none",viewBox:"0 0 24 24",children:[(0,s.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,s.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}),(0,s.jsxs)("p",{className:"mt-4 text-white font-medium",children:["Connecting to ",null==p?void 0:p.name,"..."]}),(0,s.jsx)("p",{className:"mt-2 text-text-muted text-sm",children:null==p?void 0:p.publicUrl})]})}):"error"===e?(0,s.jsx)("div",{className:"min-h-screen bg-gradient-to-br from-[#0a0a0f] via-[#0d1117] to-[#0a0a0f] flex items-center justify-center p-4",children:(0,s.jsxs)("div",{className:"bg-bg-primary/80 backdrop-blur-sm border border-border-subtle rounded-2xl p-8 max-w-md w-full text-center",children:[(0,s.jsx)("div",{className:"w-16 h-16 mx-auto mb-4 bg-error/20 rounded-full flex items-center justify-center",children:(0,s.jsx)("svg",{className:"w-8 h-8 text-error",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})}),(0,s.jsx)("h2",{className:"text-xl font-semibold text-white mb-2",children:"Something went wrong"}),(0,s.jsx)("p",{className:"text-text-muted mb-6",children:w}),(0,s.jsx)("button",{onClick:()=>window.location.reload(),className:"w-full py-3 px-4 bg-bg-tertiary border border-border-subtle rounded-xl text-white font-medium hover:bg-bg-hover transition-colors",children:"Try Again"})]})}):"connect-provider"===e&&p?(0,s.jsxs)("div",{className:"min-h-screen bg-gradient-to-br from-[#0a0a0f] via-[#0d1117] to-[#0a0a0f] flex flex-col items-center justify-center p-4",children:[(0,s.jsx)("div",{className:"fixed inset-0 opacity-10 pointer-events-none",children:(0,s.jsx)("div",{className:"absolute inset-0",style:{backgroundImage:"linear-gradient(rgba(0, 217, 255, 0.1) 1px, transparent 1px),\n linear-gradient(90deg, rgba(0, 217, 255, 0.1) 1px, transparent 1px)",backgroundSize:"50px 50px"}})}),(0,s.jsxs)("div",{className:"relative z-10 w-full max-w-xl",children:[(0,s.jsxs)("div",{className:"flex flex-col items-center mb-8",children:[(0,s.jsx)(l.K7,{size:48,withGlow:!0}),(0,s.jsx)("h1",{className:"mt-4 text-2xl font-bold text-white",children:"Connect AI Provider"}),(0,s.jsxs)("p",{className:"mt-2 text-text-muted text-center",children:["Your workspace ",(0,s.jsx)("span",{className:"text-white",children:p.name})," is ready!",(0,s.jsx)("br",{}),"Connect an AI provider to start using agents."]})]}),C&&(()=>{let e="codex-device"===C,t=e?"codex":C,r=x.find(e=>e.id===t);return r?(0,s.jsxs)("div",{className:"mb-6 bg-bg-primary/80 backdrop-blur-sm border border-border-subtle rounded-2xl p-6",children:[(0,s.jsx)(c.j,{provider:{id:r.id,name:r.name,displayName:r.displayName,color:r.color,requiresUrlCopy:!e&&r.requiresUrlCopy,supportsDeviceFlow:r.supportsDeviceFlow},workspaceId:p.id,csrfToken:k||void 0,useDeviceFlow:e,onSuccess:()=>{S(null)},onCancel:()=>{S(null)},onError:()=>{S(null)}}),(0,s.jsxs)("div",{className:"mt-4 pt-4 border-t border-border-subtle space-y-3",children:[(0,s.jsx)("button",{onClick:U,className:"w-full py-3 px-4 bg-bg-tertiary border border-border-subtle text-white rounded-xl text-center hover:border-accent-cyan/50 transition-colors",children:"Connect Another Provider"}),(0,s.jsx)("button",{onClick:M,className:"w-full py-3 px-4 bg-gradient-to-r from-accent-cyan to-[#00b8d9] text-bg-deep font-semibold rounded-xl text-center hover:shadow-glow-cyan transition-all",children:"Continue to Dashboard"})]})]}):null})(),!C&&(0,s.jsxs)("div",{className:"bg-bg-primary/80 backdrop-blur-sm border border-border-subtle rounded-2xl p-6",children:[(0,s.jsx)("h2",{className:"text-lg font-semibold text-white mb-4",children:"Choose an AI Provider"}),(0,s.jsx)("div",{className:"space-y-3",children:x.map(e=>(0,s.jsx)("div",{children:"codex"===e.id?(0,s.jsxs)("div",{className:"p-4 bg-bg-tertiary rounded-xl border border-border-subtle space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center text-white font-bold flex-shrink-0",style:{backgroundColor:e.color},children:e.displayName[0]}),(0,s.jsxs)("div",{className:"flex-1",children:[(0,s.jsx)("p",{className:"text-white font-medium",children:e.displayName}),(0,s.jsx)("p",{className:"text-text-muted text-sm",children:e.name})]})]}),(0,s.jsxs)("div",{className:"p-3 bg-amber-500/10 border border-amber-500/30 rounded-lg",children:[(0,s.jsx)("p",{className:"text-sm text-amber-400 font-medium mb-1",children:"⚠️ Heads up about the login flow"}),(0,s.jsxs)("p",{className:"text-xs text-amber-400/80",children:["OpenAI's OAuth redirects to ",(0,s.jsx)("code",{className:"bg-bg-deep px-1 rounded",children:"localhost"}),' after login, which will show a "Page not found" or "This site can\'t be reached" error.',(0,s.jsx)("strong",{className:"text-amber-400",children:" This is expected!"})," You'll need to copy the URL from your browser and paste it back here."]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)("button",{onClick:()=>{S("codex-device")},className:"w-full flex items-center gap-3 p-3 bg-bg-card rounded-lg border border-accent-cyan/30 hover:border-accent-cyan/50 transition-colors text-left",children:[(0,s.jsx)("div",{className:"w-8 h-8 rounded-lg bg-accent-cyan/20 flex items-center justify-center text-accent-cyan flex-shrink-0",children:(0,s.jsx)("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 18h.01M8 21h8a2 2 0 002-2V5a2 2 0 00-2-2H8a2 2 0 00-2 2v14a2 2 0 002 2z"})})}),(0,s.jsxs)("div",{className:"flex-1",children:[(0,s.jsxs)("p",{className:"text-white font-medium text-sm",children:["Device Code Flow ",(0,s.jsx)("span",{className:"text-accent-cyan text-xs ml-1",children:"(Recommended)"})]}),(0,s.jsx)("p",{className:"text-text-muted text-xs",children:"Enter a code on OpenAI's website - no URL copying needed"})]}),(0,s.jsx)("svg",{className:"w-4 h-4 text-text-muted",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})]}),(0,s.jsxs)("button",{onClick:()=>E(e),className:"w-full flex items-center gap-3 p-3 bg-bg-card rounded-lg border border-border-subtle hover:border-accent-cyan/30 transition-colors text-left",children:[(0,s.jsx)("div",{className:"w-8 h-8 rounded-lg bg-bg-tertiary flex items-center justify-center text-text-muted flex-shrink-0",children:(0,s.jsx)("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9"})})}),(0,s.jsxs)("div",{className:"flex-1",children:[(0,s.jsx)("p",{className:"text-white font-medium text-sm",children:"Standard Browser Flow"}),(0,s.jsx)("p",{className:"text-text-muted text-xs",children:"Login in browser, then copy the localhost URL back here"})]}),(0,s.jsx)("svg",{className:"w-4 h-4 text-text-muted",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})]})]})]}):(0,s.jsxs)("button",{onClick:()=>E(e),className:"w-full flex items-center gap-3 p-4 bg-bg-tertiary rounded-xl border border-border-subtle hover:border-accent-cyan/50 transition-colors text-left",children:[(0,s.jsx)("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center text-white font-bold flex-shrink-0",style:{backgroundColor:e.color},children:e.displayName[0]}),(0,s.jsxs)("div",{className:"flex-1",children:[(0,s.jsx)("p",{className:"text-white font-medium",children:e.displayName}),(0,s.jsx)("p",{className:"text-text-muted text-sm",children:e.name})]}),(0,s.jsx)("svg",{className:"w-5 h-5 text-text-muted",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})]})},e.id))})]}),(0,s.jsx)("div",{className:"mt-6 text-center",children:(0,s.jsx)("button",{onClick:M,className:"text-text-muted hover:text-white transition-colors text-sm",children:"Skip for now - I'll connect later"})})]})]}):(0,s.jsxs)("div",{className:"min-h-screen bg-gradient-to-br from-[#0a0a0f] via-[#0d1117] to-[#0a0a0f] flex flex-col items-center justify-center p-4",children:[(0,s.jsx)("div",{className:"fixed inset-0 opacity-10 pointer-events-none",children:(0,s.jsx)("div",{className:"absolute inset-0",style:{backgroundImage:"linear-gradient(rgba(0, 217, 255, 0.1) 1px, transparent 1px),\n linear-gradient(90deg, rgba(0, 217, 255, 0.1) 1px, transparent 1px)",backgroundSize:"50px 50px"}})}),(0,s.jsxs)("div",{className:"relative z-10 w-full max-w-2xl",children:[(0,s.jsxs)("div",{className:"flex flex-col items-center mb-8",children:[(0,s.jsx)(l.K7,{size:48,withGlow:!0}),(0,s.jsx)("h1",{className:"mt-4 text-2xl font-bold text-white",children:"Agent Relay"}),(0,s.jsx)("p",{className:"mt-2 text-text-muted",children:"no-workspaces"===e?"Create a workspace to get started":"Select a workspace"})]}),w&&(0,s.jsx)("div",{className:"mb-4 p-4 bg-error/10 border border-error/20 rounded-xl",children:(0,s.jsx)("p",{className:"text-error",children:w})}),"select-workspace"===e&&r.length>0&&(0,s.jsxs)("div",{className:"bg-bg-primary/80 backdrop-blur-sm border border-border-subtle rounded-2xl p-6",children:[(0,s.jsx)("h2",{className:"text-lg font-semibold text-white mb-4",children:"Your Workspaces"}),(0,s.jsx)("div",{className:"space-y-3",children:r.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between p-4 bg-bg-tertiary rounded-xl border border-border-subtle hover:border-accent-cyan/50 transition-colors",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)("div",{className:"w-3 h-3 rounded-full ".concat("running"===e.status?"bg-success":"provisioning"===e.status?"bg-warning animate-pulse":"error"===e.status?"bg-error":"bg-gray-500")}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"font-medium text-white",children:e.name}),(0,s.jsx)("p",{className:"text-sm text-text-muted",children:"running"===e.status?"Running":"provisioning"===e.status?"Starting...":"stopped"===e.status?"Stopped":"Error"})]})]}),(0,s.jsx)("div",{children:"running"===e.status&&e.publicUrl?(0,s.jsx)("button",{onClick:()=>F(e),className:"py-2 px-4 bg-gradient-to-r from-accent-cyan to-[#00b8d9] text-bg-deep font-semibold rounded-lg hover:shadow-glow-cyan transition-all",children:"Connect"}):"stopped"===e.status?(0,s.jsx)("button",{onClick:()=>A(e),className:"py-2 px-4 bg-bg-card border border-border-subtle rounded-lg text-white hover:border-accent-cyan/50 transition-colors",children:"Start"}):"provisioning"===e.status?(0,s.jsx)("span",{className:"text-text-muted text-sm",children:"Starting..."}):(0,s.jsx)("span",{className:"text-error text-sm",children:"Failed"})})]},e.id))}),u.length>0&&(0,s.jsxs)("div",{className:"mt-6 pt-6 border-t border-border-subtle",children:[(0,s.jsx)("p",{className:"text-text-muted text-sm mb-3",children:"Or create a new workspace:"}),(0,s.jsx)("div",{className:"flex gap-2 flex-wrap",children:u.slice(0,3).map(e=>(0,s.jsxs)("button",{onClick:()=>L(e.fullName),className:"py-2 px-3 bg-bg-card border border-border-subtle rounded-lg text-sm text-text-muted hover:text-white hover:border-accent-cyan/50 transition-colors",children:["+ ",e.fullName.split("/")[1]]},e.id))})]})]}),"no-workspaces"===e&&(0,s.jsxs)("div",{className:"bg-bg-primary/80 backdrop-blur-sm border border-border-subtle rounded-2xl p-6",children:[(0,s.jsx)("h2",{className:"text-lg font-semibold text-white mb-4",children:"Create Your First Workspace"}),(0,s.jsx)("p",{className:"text-text-muted mb-6",children:"Select a repository to create a workspace where agents can work on your code."}),u.length>0?(0,s.jsx)("div",{className:"space-y-3",children:u.map(e=>(0,s.jsxs)("button",{onClick:()=>L(e.fullName),className:"w-full flex items-center gap-3 p-4 bg-bg-tertiary rounded-xl border border-border-subtle hover:border-accent-cyan/50 transition-colors text-left",children:[(0,s.jsx)("svg",{className:"w-5 h-5 text-text-muted flex-shrink-0",fill:"currentColor",viewBox:"0 0 16 16",children:(0,s.jsx)("path",{d:"M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8z"})}),(0,s.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,s.jsx)("p",{className:"text-white font-medium truncate",children:e.fullName}),(0,s.jsx)("p",{className:"text-text-muted text-sm",children:e.isPrivate?"Private":"Public"})]}),(0,s.jsx)("svg",{className:"w-5 h-5 text-text-muted",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})]},e.id))}):(0,s.jsxs)("div",{className:"text-center py-8",children:[(0,s.jsx)("p",{className:"text-text-muted mb-4",children:"No repositories connected yet."}),(0,s.jsxs)("a",{href:"/connect-repos",className:"inline-flex items-center gap-2 py-3 px-6 bg-gradient-to-r from-accent-cyan to-[#00b8d9] text-bg-deep font-semibold rounded-xl hover:shadow-glow-cyan transition-all",children:[(0,s.jsx)("svg",{className:"w-5 h-5",fill:"currentColor",viewBox:"0 0 24 24",children:(0,s.jsx)("path",{d:"M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"})}),"Connect GitHub"]})]})]}),(0,s.jsxs)("div",{className:"mt-6 flex justify-center gap-4 text-sm",children:[(0,s.jsx)("a",{href:"/connect-repos",className:"text-text-muted hover:text-white transition-colors",children:"Manage Repositories"}),(0,s.jsx)("span",{className:"text-text-muted",children:"\xb7"}),(0,s.jsx)("button",{onClick:async()=>{let e={};k&&(e["X-CSRF-Token"]=k),await fetch("/api/auth/logout",{method:"POST",credentials:"include",headers:e}),window.location.href="/login"},className:"text-text-muted hover:text-white transition-colors",children:"Sign Out"})]})]})]})}}},function(e){e.O(0,[30,724,116,480,971,117,744],function(){return e(e.s=3561)}),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[860],{3047:function(e,t,s){Promise.resolve().then(s.bind(s,5804))},5804:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return m}});var r=s(7437),n=s(2265),a=s(7648),l=s(9116);let c=["#4a9eff","#b388ff","#ff9e40","#00e676","#ff5c5c","#00ffc8"];function i(e){let t=0;for(let s=0;s<e.length;s++)t=e.charCodeAt(s)+((t<<5)-t);return c[Math.abs(t)%c.length]}function o(e){return e.slice(0,2).toUpperCase()}function d(e){return e<60?"".concat(e,"s"):e<3600?"".concat(Math.floor(e/60),"m"):e<86400?"".concat(Math.floor(e/3600),"h ").concat(Math.floor(e%3600/60),"m"):"".concat(Math.floor(e/86400),"d ").concat(Math.floor(e%86400/3600),"h")}function x(e){return new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})}function m(){var e,t,s,c;let[i,o]=(0,n.useState)(null),[m,N]=(0,n.useState)(null),[M,S]=(0,n.useState)(null),[L,A]=(0,n.useState)(!0),[B,C]=(0,n.useState)(!1);if((0,n.useEffect)(()=>{let e=(0,l.$3)(),t=async()=>{try{let t=await fetch("/api/auth/session",{credentials:"include"});if(404!==t.status&&(C(!0),!e))return window.location.href="/app",!1;return!0}catch(e){return!0}},s=async()=>{try{if(!await t())return;let[e,s]=await Promise.all([fetch((0,l.kG)("/api/metrics"),{credentials:"include"}),fetch((0,l.kG)("/api/metrics/agents"),{credentials:"include"})]);if(!e.ok)throw Error("Failed to fetch metrics");let r=await e.json();if(o(r),s.ok){let e=await s.json();N(e)}S(null)}catch(e){S(e instanceof Error?e.message:"Failed to load metrics")}finally{A(!1)}};s();let r=setInterval(s,5e3);return()=>clearInterval(r)},[]),L)return(0,r.jsx)("div",{className:"min-h-screen bg-bg-primary text-text-primary font-sans",children:(0,r.jsxs)("div",{className:"flex flex-col items-center justify-center h-screen gap-4",children:[(0,r.jsx)("div",{className:"w-8 h-8 border-2 border-border border-t-accent rounded-full animate-spin"}),(0,r.jsx)("p",{className:"text-text-muted text-sm",children:"Loading metrics..."})]})});if(M||!i)return(0,r.jsx)("div",{className:"min-h-screen bg-bg-primary text-text-primary font-sans",children:(0,r.jsxs)("div",{className:"flex flex-col items-center justify-center h-screen gap-4",children:[(0,r.jsx)("div",{className:"w-12 h-12 rounded-full bg-error/10 flex items-center justify-center",children:(0,r.jsx)("svg",{className:"w-6 h-6 text-error",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,r.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})}),(0,r.jsx)("p",{className:"text-text-secondary",children:M||"No metrics available"}),(0,r.jsx)("button",{onClick:()=>window.location.reload(),className:"px-5 py-2.5 bg-accent text-white rounded-lg text-sm font-medium transition-colors hover:bg-accent-hover",children:"Retry"})]})});let _=(null!==(s=null===(e=i.sessions)||void 0===e?void 0:e.errorRate)&&void 0!==s?s:0)<=1?"healthy":(null!==(c=null===(t=i.sessions)||void 0===t?void 0:t.errorRate)&&void 0!==c?c:0)<=5?"warning":"critical";return(0,r.jsxs)("div",{className:"min-h-screen bg-bg-primary text-text-primary font-sans",children:[(0,r.jsx)("header",{className:"sticky top-0 z-50 bg-sidebar-bg border-b border-sidebar-border px-4 md:px-8 py-4",children:(0,r.jsxs)("div",{className:"max-w-[1400px] mx-auto flex items-center justify-between",children:[(0,r.jsxs)("div",{className:"flex items-center gap-4",children:[(0,r.jsxs)(a.default,{href:"/",className:"flex items-center gap-2 text-text-muted text-sm font-medium px-3 py-2 rounded-md transition-all hover:text-accent hover:bg-accent/10",children:[(0,r.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:(0,r.jsx)("path",{d:"M19 12H5M12 19l-7-7 7-7"})}),(0,r.jsx)("span",{className:"hidden sm:inline",children:"Dashboard"})]}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"w-8 h-8 bg-gradient-to-br from-accent/80 to-accent rounded-lg flex items-center justify-center border border-accent/30",children:(0,r.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"2",children:[(0,r.jsx)("path",{d:"M3 3v18h18"}),(0,r.jsx)("path",{d:"M18 17V9"}),(0,r.jsx)("path",{d:"M13 17V5"}),(0,r.jsx)("path",{d:"M8 17v-3"})]})}),(0,r.jsxs)("div",{className:"text-lg font-semibold tracking-tight",children:["Agent ",(0,r.jsx)("span",{className:"text-accent",children:"Metrics"})]})]})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 bg-success/10 border border-success/30 rounded-full",children:[(0,r.jsx)("span",{className:"w-2 h-2 bg-success rounded-full animate-pulse shadow-[0_0_8px_rgba(43,172,118,0.5)]"}),(0,r.jsx)("span",{className:"text-success text-xs font-semibold font-mono tracking-wide",children:"LIVE"})]})]})}),(0,r.jsxs)("main",{className:"max-w-[1400px] mx-auto px-4 md:px-8 py-6",children:[(0,r.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-6",children:[(0,r.jsx)(u,{label:"Total Agents",value:i.totalAgents,subtext:"".concat(i.onlineAgents," online / ").concat(i.offlineAgents," offline"),accent:"cyan"}),(0,r.jsx)(u,{label:"Online Now",value:i.onlineAgents,subtext:"".concat(i.totalAgents>0?Math.round(i.onlineAgents/i.totalAgents*100):0,"% availability"),accent:"green"}),(0,r.jsx)(u,{label:"Total Messages",value:i.totalMessages.toLocaleString(),subtext:"all time",accent:"purple"}),(0,r.jsx)(u,{label:"Avg. Throughput",value:i.throughput.avgMessagesPerMinute,subtext:"messages / minute",accent:"orange"})]}),(0,r.jsxs)("section",{className:"mb-6",children:[(0,r.jsx)(h,{title:"Message Throughput"}),(0,r.jsx)("div",{className:"bg-bg-secondary border border-border rounded-lg p-6",children:(0,r.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6",children:[(0,r.jsx)(g,{value:i.throughput.messagesLastMinute,label:"Last Minute",max:10}),(0,r.jsx)(g,{value:i.throughput.messagesLastHour,label:"Last Hour",max:100}),(0,r.jsx)(g,{value:i.throughput.messagesLast24Hours,label:"Last 24 Hours",max:1e3}),(0,r.jsx)(g,{value:i.throughput.avgMessagesPerMinute,label:"Avg / Min",max:5})]})})]}),i.sessions&&(0,r.jsxs)("section",{className:"mb-6",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,r.jsx)(h,{title:"Session Lifecycle"}),(0,r.jsx)(p,{rate:i.sessions.errorRate||0,status:_})]}),(0,r.jsxs)("div",{className:"bg-bg-secondary border border-border rounded-lg p-6",children:[(0,r.jsxs)("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-5 gap-5 mb-6",children:[(0,r.jsx)(b,{value:i.sessions.totalSessions,label:"Total Sessions",accent:"purple"}),(0,r.jsx)(b,{value:i.sessions.activeSessions,label:"Active",accent:"blue"}),(0,r.jsx)(b,{value:i.sessions.closedByAgent,label:"Clean Close",accent:"green"}),(0,r.jsx)(b,{value:i.sessions.closedByDisconnect,label:"Disconnect",accent:"orange"}),(0,r.jsx)(b,{value:i.sessions.closedByError,label:"Error",accent:"red"})]}),i.sessions.recentSessions&&i.sessions.recentSessions.length>0&&(0,r.jsx)("div",{className:"overflow-x-auto -mx-6 px-6",children:(0,r.jsxs)("table",{className:"w-full min-w-[500px]",children:[(0,r.jsx)("thead",{children:(0,r.jsxs)("tr",{className:"border-b border-border",children:[(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Agent"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Status"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Messages"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Started"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Duration"})]})}),(0,r.jsx)("tbody",{children:i.sessions.recentSessions.slice(0,5).map((e,t)=>{let s=new Date(e.startedAt),n=Math.floor(((e.endedAt?new Date(e.endedAt):new Date).getTime()-s.getTime())/1e3);return(0,r.jsxs)("tr",{className:"border-b border-border/50 last:border-0",children:[(0,r.jsx)("td",{className:"py-3 px-4",children:(0,r.jsx)(f,{name:e.agentName})}),(0,r.jsx)("td",{className:"py-3 px-4",children:(0,r.jsx)(v,{closedBy:e.closedBy})}),(0,r.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-accent",children:e.messageCount}),(0,r.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-text-muted",children:x(e.startedAt)}),(0,r.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-text-muted",children:d(n)})]},t)})})]})})]})]}),(0,r.jsxs)("section",{className:"mb-6",children:[(0,r.jsx)(h,{title:"Agent Health"}),(0,r.jsx)("div",{className:"bg-bg-secondary border border-border rounded-lg overflow-hidden",children:0===i.agents.length?(0,r.jsxs)("div",{className:"py-12 text-center",children:[(0,r.jsxs)("svg",{className:"w-12 h-12 mx-auto mb-4 text-text-muted opacity-50",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:[(0,r.jsx)("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),(0,r.jsx)("circle",{cx:"12",cy:"7",r:"4"})]}),(0,r.jsx)("p",{className:"text-text-muted text-sm",children:"No agents registered yet"})]}):(0,r.jsx)("div",{className:"overflow-x-auto",children:(0,r.jsxs)("table",{className:"w-full min-w-[700px]",children:[(0,r.jsx)("thead",{children:(0,r.jsxs)("tr",{className:"bg-bg-tertiary border-b border-border",children:[(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Agent"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Status"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Sent"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Received"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Uptime"}),(0,r.jsx)("th",{className:"text-left py-3 px-4 text-xs font-semibold uppercase tracking-wider text-text-muted",children:"Last Seen"})]})}),(0,r.jsx)("tbody",{children:i.agents.map(e=>(0,r.jsxs)("tr",{className:"border-b border-border/50 last:border-0 transition-colors hover:bg-bg-hover",children:[(0,r.jsx)("td",{className:"py-3 px-4",children:(0,r.jsx)(f,{name:e.name})}),(0,r.jsx)("td",{className:"py-3 px-4",children:(0,r.jsx)(j,{isOnline:e.isOnline})}),(0,r.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-accent",children:e.messagesSent.toLocaleString()}),(0,r.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-[#a78bfa]",children:e.messagesReceived.toLocaleString()}),(0,r.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-text-muted",children:d(e.uptimeSeconds)}),(0,r.jsx)("td",{className:"py-3 px-4 font-mono text-sm text-text-muted",children:x(e.lastSeen)})]},e.name))})]})})})]}),m&&m.agents.length>0&&(0,r.jsxs)("section",{className:"mb-6",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,r.jsx)(h,{title:"Agent Memory & Resources"}),(0,r.jsx)(y,{system:m.system})]}),(0,r.jsxs)("div",{className:"bg-bg-secondary border border-border rounded-lg p-6",children:[(0,r.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-6",children:[(0,r.jsx)(w,{label:"Total Agents",value:m.agents.length,subtext:"being monitored",accent:"cyan"}),(0,r.jsx)(w,{label:"Healthy",value:m.agents.filter(e=>"normal"===e.alertLevel).length,subtext:"normal memory",accent:"green"}),(0,r.jsx)(w,{label:"Warning",value:m.agents.filter(e=>"warning"===e.alertLevel).length,subtext:"elevated usage",accent:"orange"}),(0,r.jsx)(w,{label:"Critical",value:m.agents.filter(e=>"critical"===e.alertLevel||"oom_imminent"===e.alertLevel).length,subtext:"needs attention",accent:"red"})]}),(0,r.jsx)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:m.agents.map(e=>(0,r.jsx)(k,{agent:e},e.name))})]})]}),(0,r.jsxs)("div",{className:"text-center py-4 text-text-muted text-xs font-mono",children:["Last updated: ",x(i.timestamp)]})]})]})}function u(e){let{label:t,value:s,subtext:n,accent:a}=e;return(0,r.jsxs)("div",{className:"bg-bg-secondary border border-border rounded-lg p-5 transition-all hover:border-border-dark hover:bg-bg-tertiary group",children:[(0,r.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wide text-text-muted mb-2",children:t}),(0,r.jsx)("div",{className:"font-mono text-3xl font-bold ".concat({cyan:"text-accent",green:"text-success",purple:"text-[#a78bfa]",orange:"text-warning"}[a]," transition-transform group-hover:scale-105 origin-left"),children:s}),(0,r.jsx)("div",{className:"text-xs text-text-muted font-mono mt-2",children:n})]})}function h(e){let{title:t}=e;return(0,r.jsxs)("h2",{className:"flex items-center gap-2.5 text-xs font-semibold uppercase tracking-wider text-text-muted mb-3",children:[(0,r.jsx)("span",{className:"w-[3px] h-3.5 bg-accent rounded-sm"}),t]})}function g(e){let{value:t,label:s,max:n}=e,a=Math.min(t/n*100,100);return(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"font-mono text-4xl font-bold text-accent leading-none",children:t}),(0,r.jsx)("div",{className:"text-xs text-text-muted uppercase tracking-wide mt-2",children:s}),(0,r.jsx)("div",{className:"h-1 bg-border rounded-full mt-3 overflow-hidden",children:(0,r.jsx)("div",{className:"h-full bg-gradient-to-r from-accent to-[#6366f1] rounded-full transition-all duration-500",style:{width:"".concat(a,"%")}})})]})}function b(e){let{value:t,label:s,accent:n}=e;return(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"font-mono text-3xl font-bold ".concat({purple:"text-[#a78bfa]",blue:"text-accent",green:"text-success",orange:"text-warning",red:"text-error"}[n]," leading-none"),children:t}),(0,r.jsx)("div",{className:"text-[11px] text-text-muted uppercase tracking-wide mt-2",children:s})]})}function p(e){let{rate:t,status:s}=e;return(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-semibold font-mono border ".concat({healthy:"bg-success/15 text-success border-success/30",warning:"bg-warning/15 text-warning border-warning/30",critical:"bg-error/15 text-error border-error/30"}[s]),children:[t.toFixed(1),"% error rate"]})}function f(e){let{name:t}=e;return(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"w-8 h-8 rounded-md flex items-center justify-center text-white text-xs font-semibold",style:{backgroundColor:i(t)},children:o(t)}),(0,r.jsx)("span",{className:"font-semibold font-mono text-sm",children:t})]})}function j(e){let{isOnline:t}=e;return(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium ".concat(t?"bg-success/15 text-success":"bg-bg-hover text-text-muted"),children:[(0,r.jsx)("span",{className:"w-1.5 h-1.5 rounded-full ".concat(t?"bg-success":"bg-text-muted")}),t?"Online":"Offline"]})}function v(e){let{closedBy:t}=e,s={agent:{label:"Clean",className:"bg-success/15 text-success"},disconnect:{label:"Disconnect",className:"bg-warning/15 text-warning"},error:{label:"Error",className:"bg-error/15 text-error"},active:{label:"Active",className:"bg-accent/15 text-accent"}}[t||"active"];return(0,r.jsx)("span",{className:"inline-flex items-center px-2 py-0.5 rounded-lg text-[11px] font-medium ".concat(s.className),children:s.label})}function N(e){if(0===e)return"0 B";let t=Math.floor(Math.log(Math.abs(e))/Math.log(1024));return"".concat((e/Math.pow(1024,t)).toFixed(1)," ").concat(["B","KB","MB","GB","TB"][t])}function y(e){let{system:t}=e,s=Math.round((t.totalMemory-t.freeMemory)/t.totalMemory*100);return(0,r.jsxs)("div",{className:"flex items-center gap-3 px-3 py-1.5 bg-bg-tertiary border border-border rounded-lg",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsxs)("svg",{className:"w-4 h-4 text-accent",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[(0,r.jsx)("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"}),(0,r.jsx)("rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",fill:"currentColor",opacity:"0.3"})]}),(0,r.jsx)("span",{className:"text-xs text-text-muted",children:"System:"})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("div",{className:"w-24 h-2 bg-border rounded-full overflow-hidden",children:(0,r.jsx)("div",{className:"h-full rounded-full transition-all ".concat(s>90?"bg-error":s>70?"bg-warning":"bg-accent"),style:{width:"".concat(s,"%")}})}),(0,r.jsxs)("span",{className:"text-xs font-mono text-text-muted",children:[s,"%"]})]}),(0,r.jsxs)("span",{className:"text-xs font-mono text-text-muted",children:[N(t.freeMemory)," free"]})]})}function w(e){let{label:t,value:s,subtext:n,accent:a}=e;return(0,r.jsxs)("div",{className:"bg-bg-tertiary border border-border/50 rounded-lg p-4 text-center",children:[(0,r.jsx)("div",{className:"font-mono text-3xl font-bold ".concat({cyan:"text-accent",green:"text-success",orange:"text-warning",red:"text-error"}[a]," leading-none"),children:s}),(0,r.jsx)("div",{className:"text-[11px] text-text-muted uppercase tracking-wide mt-2",children:t}),(0,r.jsx)("div",{className:"text-xs text-text-muted mt-1",children:n})]})}function k(e){var t;let{agent:s}=e,n=s.rssBytes?s.rssBytes/1048576:0,a={normal:{bg:"bg-success/10",border:"border-success/30",text:"text-success",label:"Healthy"},warning:{bg:"bg-warning/10",border:"border-warning/30",text:"text-warning",label:"Warning"},critical:{bg:"bg-error/10",border:"border-error/30",text:"text-error",label:"Critical"},oom_imminent:{bg:"bg-error/20",border:"border-error/50",text:"text-error",label:"OOM Risk"}}[s.alertLevel||"normal"],l={growing:{icon:"↑",color:"text-warning",label:"Growing"},stable:{icon:"→",color:"text-success",label:"Stable"},shrinking:{icon:"↓",color:"text-accent",label:"Shrinking"},unknown:{icon:"?",color:"text-text-muted",label:"Unknown"}}[s.trend||"unknown"];return(0,r.jsxs)("div",{className:"".concat(a.bg," border ").concat(a.border," rounded-lg p-4 transition-all hover:scale-[1.01]"),children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center text-white text-sm font-semibold",style:{backgroundColor:i(s.name)},children:o(s.name)}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"font-semibold font-mono text-sm text-text-primary",children:s.name}),(0,r.jsxs)("div",{className:"text-xs text-text-muted",children:["PID: ",s.pid||"N/A"," • ",s.status]})]})]}),(0,r.jsx)("div",{className:"flex items-center gap-2",children:(0,r.jsx)("span",{className:"inline-flex items-center gap-1 px-2 py-1 rounded-full text-xs font-medium ".concat(a.bg," ").concat(a.text),children:a.label})})]}),(0,r.jsxs)("div",{className:"mb-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-1.5",children:[(0,r.jsx)("span",{className:"text-xs text-text-muted",children:"Memory Usage"}),(0,r.jsx)("span",{className:"text-sm font-mono font-semibold text-text-primary",children:N(s.rssBytes||0)})]}),(0,r.jsx)("div",{className:"h-3 bg-bg-primary rounded-full overflow-hidden",children:(0,r.jsx)("div",{className:"h-full rounded-full transition-all duration-500 ".concat("critical"===s.alertLevel||"oom_imminent"===s.alertLevel?"bg-gradient-to-r from-error to-error/70":"warning"===s.alertLevel?"bg-gradient-to-r from-warning to-warning/70":"bg-gradient-to-r from-accent to-[#6366f1]"),style:{width:"".concat(Math.min(n/2048*100,100),"%")}})}),(0,r.jsxs)("div",{className:"flex items-center justify-between mt-1",children:[(0,r.jsx)("span",{className:"text-[10px] text-text-muted",children:"0"}),(0,r.jsx)("span",{className:"text-[10px] text-text-muted",children:"2 GB"})]})]}),(0,r.jsxs)("div",{className:"grid grid-cols-3 gap-3",children:[(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsxs)("div",{className:"text-lg font-mono font-bold text-accent",children:[(null===(t=s.cpuPercent)||void 0===t?void 0:t.toFixed(1))||"0","%"]}),(0,r.jsx)("div",{className:"text-[10px] text-text-muted uppercase",children:"CPU"})]}),(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsxs)("div",{className:"text-lg font-mono font-bold ".concat(l.color," flex items-center justify-center gap-1"),children:[(0,r.jsx)("span",{children:l.icon}),(0,r.jsx)("span",{className:"text-xs",children:l.label})]}),(0,r.jsx)("div",{className:"text-[10px] text-text-muted uppercase",children:"Trend"})]}),(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"text-lg font-mono font-bold text-[#a78bfa]",children:N(s.highWatermark||0)}),(0,r.jsx)("div",{className:"text-[10px] text-text-muted uppercase",children:"Peak"})]})]}),s.uptimeMs&&(0,r.jsxs)("div",{className:"mt-3 pt-3 border-t border-border/30 flex items-center justify-between",children:[(0,r.jsx)("span",{className:"text-xs text-text-muted",children:"Uptime"}),(0,r.jsx)("span",{className:"text-xs font-mono text-text-muted",children:d(Math.floor(s.uptimeMs/1e3))})]})]})}}},function(e){e.O(0,[648,116,971,117,744],function(){return e(e.s=3047)}),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[150],{8148:function(e,t,s){Promise.resolve().then(s.bind(s,9197))},9197:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return i}});var r=s(7437),n=s(2265),a=s(6272);function i(){let[e,t]=(0,n.useState)([]),[s,i]=(0,n.useState)(!0),[o,l]=(0,n.useState)(null),[d,c]=(0,n.useState)(null),[x,u]=(0,n.useState)(""),[p,m]=(0,n.useState)(null);(0,n.useEffect)(()=>{(async()=>{try{let e=await fetch("/api/providers",{credentials:"include"}),s=e.headers.get("X-CSRF-Token");if(s&&m(s),!e.ok){if(401===e.status){window.location.href="/login";return}throw Error("Failed to fetch providers")}let r=await e.json();t(r.providers||[])}catch(e){l(e instanceof Error?e.message:"Failed to load providers")}finally{i(!1)}})()},[]);let h=async e=>{if(!x.trim()){l("Please enter an API key");return}l(null),c(e);try{let s={"Content-Type":"application/json"};p&&(s["X-CSRF-Token"]=p);let r=await fetch("/api/providers/".concat(e,"/api-key"),{method:"POST",credentials:"include",headers:s,body:JSON.stringify({apiKey:x.trim()})}),n=await r.json();if(!r.ok)throw Error(n.error||"Failed to connect provider");t(t=>t.map(t=>t.id===e?{...t,isConnected:!0}:t)),u(""),c(null)}catch(e){l(e instanceof Error?e.message:"Failed to connect"),c(null)}},f=e.some(e=>e.isConnected&&"github"!==e.id);return s?(0,r.jsx)("div",{className:"min-h-screen bg-gradient-to-br from-[#0a0a0f] via-[#0d1117] to-[#0a0a0f] flex items-center justify-center",children:(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsxs)("svg",{className:"w-8 h-8 text-accent-cyan animate-spin mx-auto",fill:"none",viewBox:"0 0 24 24",children:[(0,r.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,r.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}),(0,r.jsx)("p",{className:"mt-4 text-text-muted",children:"Loading providers..."})]})}):(0,r.jsxs)("div",{className:"min-h-screen bg-gradient-to-br from-[#0a0a0f] via-[#0d1117] to-[#0a0a0f] flex flex-col items-center justify-center p-4",children:[(0,r.jsx)("div",{className:"fixed inset-0 opacity-10 pointer-events-none",children:(0,r.jsx)("div",{className:"absolute inset-0",style:{backgroundImage:"linear-gradient(rgba(0, 217, 255, 0.1) 1px, transparent 1px),\n linear-gradient(90deg, rgba(0, 217, 255, 0.1) 1px, transparent 1px)",backgroundSize:"50px 50px"}})}),(0,r.jsxs)("div",{className:"relative z-10 w-full max-w-xl",children:[(0,r.jsxs)("div",{className:"flex flex-col items-center mb-8",children:[(0,r.jsx)(a.K7,{size:48,withGlow:!0}),(0,r.jsx)("h1",{className:"mt-4 text-2xl font-bold text-white",children:"Connect AI Providers"}),(0,r.jsx)("p",{className:"mt-2 text-text-muted text-center",children:"Add your API keys to enable AI-powered coding assistants in your workspace."})]}),o&&(0,r.jsx)("div",{className:"mb-4 p-4 bg-error/10 border border-error/20 rounded-xl",children:(0,r.jsx)("p",{className:"text-error",children:o})}),(0,r.jsx)("div",{className:"bg-bg-primary/80 backdrop-blur-sm border border-border-subtle rounded-2xl p-6 space-y-4",children:e.filter(e=>"github"!==e.id).map(e=>(0,r.jsxs)("div",{className:"p-4 bg-bg-tertiary rounded-xl border border-border-subtle",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center text-white font-bold",style:{backgroundColor:e.color},children:e.displayName[0]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium text-white",children:e.displayName}),(0,r.jsx)("p",{className:"text-sm text-text-muted",children:e.description})]})]}),e.isConnected&&(0,r.jsx)("span",{className:"px-3 py-1 bg-success/20 text-success text-sm rounded-full",children:"Connected"})]}),!e.isConnected&&(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)("input",{type:"password",placeholder:"Enter ".concat(e.displayName," API key"),value:d===e.id?x:"",onChange:t=>{c(e.id),u(t.target.value)},onFocus:()=>c(e.id),className:"flex-1 px-4 py-2 bg-bg-deep border border-border-subtle rounded-lg text-white placeholder-text-muted focus:outline-none focus:border-accent-cyan/50"}),(0,r.jsx)("button",{onClick:()=>h(e.id),disabled:d===e.id&&!x.trim(),className:"px-4 py-2 bg-gradient-to-r from-accent-cyan to-[#00b8d9] text-bg-deep font-semibold rounded-lg hover:shadow-glow-cyan transition-all disabled:opacity-50 disabled:cursor-not-allowed",children:d===e.id?"Connecting...":"Connect"})]})]},e.id))}),(0,r.jsxs)("div",{className:"mt-6 flex flex-col items-center gap-4",children:[f?(0,r.jsx)("a",{href:"/app",className:"w-full py-3 px-6 bg-gradient-to-r from-accent-cyan to-[#00b8d9] text-bg-deep font-semibold rounded-xl text-center hover:shadow-glow-cyan transition-all",children:"Continue to Dashboard"}):(0,r.jsx)("p",{className:"text-text-muted text-sm",children:"Connect at least one AI provider to continue"}),(0,r.jsx)("a",{href:"/app",className:"text-text-muted hover:text-white transition-colors text-sm",children:"Skip for now"})]})]})]})}},6272:function(e,t,s){"use strict";s.d(t,{K7:function(){return n}});var r=s(7437);function n(e){let{size:t=24,className:s="",withGlow:n=!1}=e;return(0,r.jsxs)("svg",{width:t,height:t,viewBox:"0 0 100 100",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"\n transition-all duration-300\n ".concat(n?"drop-shadow-[0_0_8px_rgba(0,217,255,0.3)]":"","\n ").concat(s,"\n "),"aria-label":"Agent Relay Logo",role:"img",children:[(0,r.jsx)("path",{d:"M30 80 L 50 20 L 70 80",stroke:"#00d9ff",strokeWidth:"5",strokeLinejoin:"round",strokeLinecap:"round",fill:"none"}),(0,r.jsx)("line",{x1:"40",y1:"50",x2:"60",y2:"50",stroke:"#00d9ff",strokeWidth:"5",strokeLinecap:"round"}),(0,r.jsx)("path",{d:"M50 20 L 50 80",stroke:"#00ffc8",strokeWidth:"2.5",strokeLinecap:"round",opacity:"0.7"}),(0,r.jsx)("path",{d:"M50 20 C 80 20 80 50 50 50 L 80 80",stroke:"#00ffc8",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",fill:"none",opacity:"0.7"})]})}s(2265)}},function(e){e.O(0,[971,117,744],function(){return e(e.s=8148)}),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- @import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&family=Inter:wght@400;500;600&display=swap");:root{--bg-deep:#0a0a0f;--bg-primary:#0d0d14;--bg-secondary:#12121c;--bg-tertiary:#181824;--bg-card:#1a1a28;--bg-elevated:#202030;--text-primary:#f0f0f5;--text-secondary:#a0a0b0;--text-muted:#606070;--text-dim:#404050;--accent-cyan:#00d9ff;--accent-orange:#ff6b35;--accent-teal:#00ffc8;--accent-blue:#0891b2;--accent-green:#00ffc8;--border-subtle:hsla(0,0%,100%,.06);--border-light:hsla(0,0%,100%,.1);--border-medium:hsla(0,0%,100%,.15);--glow-cyan:0 0 30px rgba(0,217,255,.3);--glow-orange:0 0 30px rgba(255,107,53,.3);--glow-teal:0 0 30px rgba(0,255,200,.3);--glow-blue:0 0 30px rgba(8,145,178,.3);--font-display:"Outfit",sans-serif;--font-mono:"IBM Plex Mono",monospace;--font-body:"Inter",sans-serif;--section-padding:120px;--container-max:1280px;--transition-fast:0.15s ease;--transition-medium:0.3s ease;--transition-slow:0.5s ease}.landing-page *,.landing-page :after,.landing-page :before,.pricing-page *,.pricing-page :after,.pricing-page :before{margin:0;padding:0;box-sizing:border-box}.landing-page,.pricing-page{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--text-primary);background:var(--bg-deep);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.landing-page a,.pricing-page a{color:inherit;text-decoration:none}.landing-page button,.pricing-page button{font-family:inherit;cursor:pointer;border:none;background:none}.landing-page{position:relative;min-height:100vh;overflow-x:hidden}.landing-bg{position:fixed;inset:0;pointer-events:none;z-index:0}.grid-bg{overflow:hidden}.grid-bg,.grid-lines{position:absolute;inset:0}.grid-lines{background-image:linear-gradient(hsla(0,0%,100%,.02) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.02) 1px,transparent 0);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 30%,transparent 70%);mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 30%,transparent 70%)}.grid-glow{position:absolute;top:0;left:50%;transform:translateX(-50%);width:100%;height:600px;background:radial-gradient(ellipse 60% 40% at 50% 0,rgba(0,217,255,.08) 0,transparent 70%)}.glow-orbs{inset:0}.glow-orbs,.orb{position:absolute}.orb{border-radius:50%;filter:blur(100px);opacity:.4;animation:float 20s ease-in-out infinite}.orb-1{width:600px;height:600px;background:var(--accent-cyan);top:-200px;left:-200px;animation-delay:0s}.orb-2{width:500px;height:500px;background:var(--accent-teal);top:40%;right:-150px;animation-delay:-7s}.orb-3{width:400px;height:400px;background:var(--accent-orange);bottom:10%;left:20%;animation-delay:-14s}@keyframes float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-30px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(20px,10px) scale(1.02)}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 40px;transition:var(--transition-medium)}.nav.scrolled{background:rgba(10,10,15,.9);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-subtle);padding:16px 40px}.nav-inner{max-width:var(--container-max);margin:0 auto;justify-content:space-between}.nav-inner,.nav-logo{display:flex;align-items:center}.nav-logo{gap:10px;font-family:var(--font-display);font-weight:700;font-size:20px}.logo-icon{font-size:24px;color:var(--accent-cyan);filter:drop-shadow(var(--glow-cyan))}.nav-links{display:flex;align-items:center;gap:40px}.nav-links a{font-size:14px;font-weight:500;color:var(--text-secondary);transition:var(--transition-fast)}.nav-links a:hover{color:var(--text-primary)}.nav-docs{padding:6px 14px;background:var(--bg-elevated);border-radius:6px;border:1px solid var(--border-light)}.nav-actions{display:flex;align-items:center;gap:12px}.mobile-menu,.mobile-menu-overlay,.mobile-menu-toggle{display:none}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,var(--accent-cyan) 0,#00b8d9 100%);color:var(--bg-deep);font-weight:600;font-size:14px;border-radius:8px;transition:var(--transition-fast);box-shadow:0 4px 20px rgba(0,217,255,.3)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 30px rgba(0,217,255,.4)}.btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;color:var(--text-primary);font-weight:500;font-size:14px;border-radius:8px;border:1px solid var(--border-light);transition:var(--transition-fast)}.btn-ghost:hover{background:hsla(0,0%,100%,.05);border-color:var(--border-medium)}.btn-large{padding:16px 32px;font-size:16px}.btn-full{width:100%;justify-content:center}.btn-arrow{transition:transform var(--transition-fast)}.btn-primary:hover .btn-arrow{transform:translateX(4px)}.play-icon{font-size:10px}.hero{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:var(--container-max);margin:0 auto;padding:140px 40px 100px}.hero,.hero-badge{align-items:center}.hero-badge{display:inline-flex;gap:8px;padding:8px 16px;background:rgba(0,217,255,.1);border:1px solid rgba(0,217,255,.2);border-radius:100px;font-size:13px;font-weight:500;color:var(--accent-cyan);margin-bottom:24px;animation:fadeInUp .6s ease forwards}.badge-dot{width:6px;height:6px;background:var(--accent-cyan);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.hero-title{font-family:var(--font-display);font-size:clamp(48px,6vw,72px);font-weight:800;line-height:1.1;letter-spacing:-.02em;margin-bottom:24px}.title-line{display:block;animation:fadeInUp .6s ease forwards;animation-delay:.1s;opacity:0}.title-line:nth-child(2){animation-delay:.2s}.title-line.gradient{background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-teal) 50%,var(--accent-blue) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-subtitle{font-size:18px;line-height:1.7;color:var(--text-secondary);max-width:500px;margin-bottom:40px;animation:fadeInUp .6s ease forwards;animation-delay:.3s;opacity:0}.hero-cta{gap:16px;margin-bottom:60px;animation:fadeInUp .6s ease forwards;animation-delay:.4s}.hero-cta,.hero-stats{display:flex;opacity:0}.hero-stats{align-items:center;gap:32px;animation:fadeInUp .6s ease forwards;animation-delay:.5s}.stat{display:flex;flex-direction:column;gap:4px}.stat-value{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--text-primary)}.stat-label{font-size:13px;color:var(--text-muted)}.stat-divider{width:1px;height:40px;background:var(--border-light)}.hero-visual{position:relative;animation:fadeIn 1s ease forwards;animation-delay:.6s;opacity:0;overflow:hidden}@keyframes fadeIn{to{opacity:1}}.agent-network{position:relative;width:100%;aspect-ratio:1;max-width:500px;margin:0 auto;overflow:hidden}.network-lines{position:absolute;inset:0;width:100%;height:100%}.network-line{stroke:hsla(0,0%,100%,.1);stroke-width:.5}.network-line-glow{stroke:var(--accent-cyan);stroke-width:1;stroke-dasharray:100;stroke-dashoffset:100;animation:lineFlow 3s ease-in-out infinite;filter:drop-shadow(0 0 4px var(--accent-cyan))}@keyframes lineFlow{0%{stroke-dashoffset:100;opacity:0}50%{opacity:1}to{stroke-dashoffset:-100;opacity:0}}.network-agent{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:8px}.agent-glow{position:absolute;width:80px;height:80px;background:var(--agent-color);border-radius:50%;filter:blur(30px);opacity:.3;z-index:-1}.agent-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:2px solid var(--agent-color);border-radius:16px;font-size:24px;color:var(--agent-color);box-shadow:0 0 20px rgba(0,0,0,.5),inset 0 0 20px hsla(0,0%,100%,.02);transition:var(--transition-medium)}.network-agent.pulse .agent-icon{animation:agentPulse 2s ease-in-out infinite}@keyframes agentPulse{0%,to{box-shadow:0 0 20px rgba(0,0,0,.5),0 0 0 0 var(--agent-color)}50%{box-shadow:0 0 20px rgba(0,0,0,.5),0 0 30px 10px transparent}}.agent-label{font-family:var(--font-mono);font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;text-overflow:ellipsis;max-width:80px;overflow:hidden}.data-packet{position:absolute;width:8px;height:8px;background:var(--accent-cyan);border-radius:50%;filter:blur(2px);box-shadow:0 0 10px var(--accent-cyan);animation:packetMove 3s ease-in-out infinite}@keyframes packetMove{0%{left:var(--from-x);top:var(--from-y);opacity:0}10%{opacity:1}90%{opacity:1}to{left:var(--to-x);top:var(--to-y);opacity:0}}section{position:relative;z-index:1}.section-header{text-align:center;max-width:700px;margin:0 auto 60px}.section-tag{display:inline-block;font-family:var(--font-mono);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:var(--accent-cyan);margin-bottom:16px}.section-header h2{font-family:var(--font-display);font-size:clamp(32px,4vw,48px);font-weight:700;margin-bottom:16px}.section-header p{font-size:18px;color:var(--text-secondary)}.demo-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.demo-container{perspective:1000px}.demo-window{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px hsla(0,0%,100%,.05),0 20px 80px rgba(0,0,0,.5);transform:rotateX(2deg);transition:var(--transition-medium)}.demo-window:hover{transform:rotateX(0deg);box-shadow:0 0 0 1px hsla(0,0%,100%,.1),0 30px 100px rgba(0,0,0,.6)}.window-header{display:flex;align-items:center;padding:16px 20px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle)}.window-dots{display:flex;gap:8px}.dot{width:12px;height:12px;border-radius:50%}.dot.red{background:#ff5f57}.dot.yellow{background:#febc2e}.dot.green{background:#28c840}.window-title{flex:1;text-align:center;font-family:var(--font-mono);font-size:13px;color:var(--text-muted)}.window-status{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.status-dot{width:8px;height:8px;background:var(--accent-green);border-radius:50%;animation:pulse 2s ease-in-out infinite}.demo-content{display:grid;grid-template-columns:200px 1fr;height:400px}.demo-sidebar{padding:20px;background:var(--bg-tertiary);border-right:1px solid var(--border-subtle)}.sidebar-section{margin-bottom:24px}.sidebar-label{font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);margin-bottom:12px}.sidebar-agent{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;margin-bottom:4px;transition:var(--transition-fast)}.sidebar-agent:hover{background:hsla(0,0%,100%,.03)}.agent-dot{width:8px;height:8px;border-radius:50%}.sidebar-agent .agent-name{flex:1;font-size:13px;color:var(--text-secondary)}.sidebar-agent .agent-status{font-size:8px;color:var(--accent-green)}.demo-messages{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.message{animation:messageSlide .3s ease forwards}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-header{gap:8px;margin-bottom:6px}.message-header,.message-icon{display:flex;align-items:center}.message-icon{width:24px;height:24px;justify-content:center;border-radius:6px;font-size:12px;color:var(--bg-deep)}.message-from{font-weight:600;font-size:13px;color:var(--msg-color)}.message-arrow{font-size:10px;color:var(--text-dim)}.message-to{font-size:13px;color:var(--text-muted)}.message-time{margin-left:auto;font-size:11px;color:var(--text-dim)}.message-content{font-size:14px;color:var(--text-secondary);line-height:1.6;padding-left:32px}.typing-indicator{display:flex;align-items:center;gap:4px;padding:8px 0 8px 32px}.typing-dot{width:6px;height:6px;background:var(--text-dim);border-radius:50%;animation:typingBounce 1.4s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.demo-caption{text-align:center;margin-top:20px}.demo-caption p{font-size:13px;color:var(--text-dim)}.features-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card{padding:32px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;transition:var(--transition-medium);animation:fadeInUp .6s ease forwards;opacity:0}.feature-card:hover{background:var(--bg-elevated);border-color:var(--border-light);transform:translateY(-4px)}.feature-icon{font-size:32px;margin-bottom:20px}.feature-card h3{font-family:var(--font-display);font-size:18px;font-weight:600;margin-bottom:12px}.feature-card p{font-size:14px;color:var(--text-secondary);line-height:1.6}.providers-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.providers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.provider-card{padding:40px 32px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;text-align:center;transition:var(--transition-medium)}.provider-card:hover{border-color:var(--provider-color);box-shadow:0 0 40px rgba(0,0,0,.3)}.provider-icon{font-size:48px;color:var(--provider-color);margin-bottom:16px;filter:drop-shadow(0 0 20px var(--provider-color))}.provider-name{font-family:var(--font-display);font-size:20px;font-weight:600;margin-bottom:8px}.provider-status{font-size:12px;color:var(--accent-green);text-transform:uppercase;letter-spacing:1px}.provider-card.coming-soon{--provider-color:var(--text-dim)}.provider-card.coming-soon .provider-status{color:var(--text-muted)}.pricing-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:stretch}.pricing-card{position:relative;padding:32px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;transition:var(--transition-medium);display:flex;flex-direction:column}.pricing-card:hover{border-color:var(--border-light)}.pricing-card.highlighted{background:linear-gradient(135deg,rgba(0,217,255,.05),rgba(99,102,241,.05));border-color:var(--accent-cyan);transform:scale(1.02)}.pricing-card .popular-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:6px 16px;background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-blue) 100%);color:var(--bg-deep);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;border-radius:100px}.pricing-header{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border-subtle)}.pricing-header h3{font-family:var(--font-display);font-size:20px;font-weight:600;margin-bottom:12px}.pricing-price{margin-bottom:12px}.pricing-price .price{font-family:var(--font-display);font-size:40px;font-weight:700}.pricing-price .period{font-size:16px;color:var(--text-muted)}.pricing-description{font-size:13px;color:var(--text-muted)}.pricing-features{list-style:none;margin-bottom:32px;flex:1}.pricing-features li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--text-secondary);padding:8px 0}.pricing-features .check{color:var(--accent-green);font-weight:700}.cta-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.cta-content h2{font-family:var(--font-display);font-size:clamp(32px,4vw,48px);font-weight:700;margin-bottom:16px}.cta-content p{font-size:18px;color:var(--text-secondary);margin-bottom:32px}.cta-buttons{display:flex;gap:16px}.cta-terminal{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:12px;padding:24px;font-family:var(--font-mono);font-size:14px}.terminal-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-subtle)}.terminal-prompt{color:var(--accent-cyan)}.terminal-text{color:var(--text-primary)}.terminal-output{display:flex;flex-direction:column;gap:8px}.output-line{color:var(--text-secondary)}.output-line.cursor:after{content:"▋";animation:cursorBlink 1s step-end infinite;color:var(--accent-cyan)}@keyframes cursorBlink{50%{opacity:0}}.footer{position:relative;z-index:1;border-top:1px solid var(--border-subtle);padding:60px 40px 40px;background:var(--bg-primary)}.footer-inner{max-width:var(--container-max);display:grid;grid-template-columns:1fr 2fr;gap:80px;margin:0 auto 60px}.footer-logo{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:18px;margin-bottom:12px}.footer-brand p{font-size:14px;color:var(--text-muted)}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.footer-column h4{font-family:var(--font-display);font-size:14px;font-weight:600;margin-bottom:20px}.footer-column a{display:block;font-size:14px;color:var(--text-muted);padding:6px 0;transition:var(--transition-fast)}.footer-column a:hover{color:var(--text-primary)}.footer-bottom{max-width:var(--container-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding-top:24px;border-top:1px solid var(--border-subtle)}.footer-bottom p{font-size:13px;color:var(--text-dim)}.social-links{display:flex;gap:16px}.social-links a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-muted);transition:var(--transition-fast)}.social-links a:hover{background:var(--bg-elevated);border-color:var(--border-light);color:var(--text-primary)}.mobile-menu-toggle{padding:8px;background:transparent;border:none;cursor:pointer;z-index:102}.hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:24px;height:20px}.hamburger-line{width:100%;height:2px;background:var(--text-primary);border-radius:2px;transition:var(--transition-fast);transform-origin:center}.hamburger.open .hamburger-line:first-child{transform:translateY(7px) rotate(45deg)}.hamburger.open .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.open .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);opacity:0;visibility:hidden;transition:var(--transition-medium);z-index:99}.mobile-menu-overlay.open{opacity:1;visibility:visible}.mobile-menu{position:fixed;top:0;right:0;width:300px;max-width:85vw;height:100vh;background:var(--bg-secondary);border-left:1px solid var(--border-subtle);transform:translateX(100%);transition:transform var(--transition-medium);z-index:100;overflow-y:auto}.mobile-menu.open{transform:translateX(0)}.mobile-menu-content{padding:100px 24px 40px;display:flex;flex-direction:column;min-height:100%}.mobile-nav-links{display:flex;flex-direction:column;gap:8px;margin-bottom:32px}.mobile-nav-links a{display:block;padding:16px 20px;font-size:16px;font-weight:500;color:var(--text-secondary);border-radius:12px;transition:var(--transition-fast)}.mobile-nav-links a:hover{background:hsla(0,0%,100%,.05);color:var(--text-primary)}.mobile-nav-actions{display:flex;flex-direction:column;gap:12px;margin-top:auto}@media (max-width:1024px){.hero{grid-template-columns:1fr;text-align:center;padding:140px 32px 80px;gap:60px}.hero-subtitle{margin-left:auto;margin-right:auto}.hero-cta,.hero-stats{justify-content:center}.hero-visual{order:-1;margin:0 auto}.agent-network,.hero-visual{max-width:350px}.features-grid,.pricing-grid,.providers-grid{grid-template-columns:repeat(2,1fr)}.cta-section{grid-template-columns:1fr;text-align:center;gap:48px}.cta-buttons{justify-content:center}.cta-terminal{max-width:500px;margin:0 auto}.demo-content{grid-template-columns:160px 1fr}.demo-sidebar{padding:16px}.sidebar-agent{padding:6px 8px}.sidebar-agent .agent-name{font-size:12px}.footer-inner{grid-template-columns:1fr;gap:40px;text-align:center}.footer-brand{display:flex;flex-direction:column;align-items:center}.footer-links{justify-content:center}}@media (max-width:900px){.demo-content{grid-template-columns:1fr;height:auto;min-height:350px}.demo-sidebar{display:none}.demo-messages{max-height:400px}.window-status{display:none}}@media (max-width:850px){.agent-network,.hero-visual{max-width:320px}.agent-icon{width:50px;height:50px;font-size:20px}.agent-label{font-size:11px}}@media (max-width:768px){:root{--section-padding:80px}.mobile-menu,.mobile-menu-overlay,.mobile-menu-toggle{display:block}.nav{padding:16px 20px}.nav.scrolled{padding:12px 20px}.nav-actions,.nav-links{display:none}.hero{padding:120px 20px 60px;gap:40px}.hero-title{font-size:clamp(32px,8vw,42px)}.hero-badge{padding:6px 12px;font-size:12px;margin-bottom:20px}.hero-subtitle{font-size:16px;margin-bottom:32px}.hero-cta{flex-direction:column;align-items:center;gap:12px;margin-bottom:40px}.hero-cta .btn-large{width:100%;max-width:280px;justify-content:center}.hero-stats{flex-wrap:wrap;gap:20px}.stat{min-width:80px}.stat-value{font-size:24px}.stat-label{font-size:11px}.stat-divider{display:none}.agent-network,.hero-visual{width:100%;max-width:320px}.agent-network{min-width:280px;aspect-ratio:1.2}.agent-icon{width:48px;height:48px;font-size:18px;border-radius:12px}.agent-label{font-size:10px}.agent-glow{width:50px;height:50px;filter:blur(20px)}.section-header{margin-bottom:40px;padding:0 8px}.section-header h2{font-size:clamp(26px,6vw,36px)}.section-header p{font-size:15px}.demo-section{padding:var(--section-padding) 20px}.demo-window{border-radius:12px}.window-header{padding:12px 16px}.window-dots{gap:6px}.dot{width:10px;height:10px}.window-title{font-size:11px}.demo-messages{padding:16px;gap:12px;max-height:320px}.message-header{flex-wrap:wrap;gap:6px}.message-icon{width:20px;height:20px;font-size:10px}.message-from,.message-to{font-size:12px}.message-time{width:100%;margin-left:26px;margin-top:4px}.message-content{font-size:13px;padding-left:26px}.demo-caption p{font-size:12px}.features-section{padding:var(--section-padding) 20px}.features-grid{grid-template-columns:1fr;gap:16px}.feature-card{padding:24px;border-radius:12px}.feature-icon{font-size:28px;margin-bottom:16px}.feature-card h3{font-size:16px;margin-bottom:8px}.feature-card p{font-size:13px}.providers-section{padding:var(--section-padding) 20px}.providers-grid{grid-template-columns:repeat(2,1fr);gap:16px}.provider-card{padding:24px 16px;border-radius:12px}.provider-icon{font-size:36px;margin-bottom:12px}.provider-name{font-size:16px;margin-bottom:4px}.provider-status{font-size:10px}.pricing-section{padding:var(--section-padding) 20px}.pricing-grid{grid-template-columns:1fr;gap:20px}.pricing-card{padding:24px;border-radius:14px}.pricing-card.highlighted{transform:none}.pricing-header h3{font-size:18px}.pricing-price .price{font-size:32px}.pricing-features li{font-size:13px;padding:6px 0}.cta-section{padding:var(--section-padding) 20px;gap:32px}.cta-content h2{font-size:clamp(26px,6vw,36px)}.cta-content p{font-size:15px;margin-bottom:24px}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn-large{width:100%;max-width:280px;justify-content:center}.cta-terminal{padding:20px;border-radius:10px}.terminal-header{margin-bottom:16px;padding-bottom:12px}.cta-terminal,.terminal-output{font-size:12px}.terminal-output{gap:6px}.footer{padding:40px 20px 32px}.footer-inner{gap:32px;margin-bottom:32px}.footer-logo{font-size:16px;justify-content:center}.footer-brand p{font-size:13px}.footer-links{grid-template-columns:repeat(3,1fr);gap:24px;text-align:left}.footer-column h4{font-size:13px;margin-bottom:16px}.footer-column a{font-size:13px;padding:4px 0}.footer-bottom{flex-direction:column;gap:16px;text-align:center;padding-top:20px}.footer-bottom p{font-size:12px}.social-links a{width:32px;height:32px}}@media (max-width:480px){:root{--section-padding:60px}.hero{padding:100px 16px 48px;gap:32px}.hero-title{font-size:28px}.hero-subtitle{font-size:14px;line-height:1.6}.hero-visual{width:100%;max-width:100%;overflow-x:auto;display:flex;justify-content:center}.agent-network{width:280px;min-width:280px;flex-shrink:0}.agent-icon{width:42px;height:42px;font-size:16px;border-radius:10px}.agent-label{font-size:9px}.agent-glow{width:40px;height:40px;filter:blur(15px);opacity:.4}.data-packet{width:6px;height:6px}.hero-stats{gap:16px}.stat-value{font-size:20px}.stat-label{font-size:10px}.section-header h2{font-size:24px}.section-header p{font-size:14px}.demo-section{padding:var(--section-padding) 16px}.demo-messages{padding:12px;max-height:280px}.message-content{font-size:12px;line-height:1.5}.features-section{padding:var(--section-padding) 16px}.feature-card{padding:20px}.providers-section{padding:var(--section-padding) 16px}.providers-grid{gap:12px}.provider-card{padding:20px 12px}.provider-icon{font-size:28px}.provider-name{font-size:14px}.pricing-section{padding:var(--section-padding) 16px}.pricing-card{padding:20px}.pricing-price .price{font-size:28px}.cta-section{padding:var(--section-padding) 16px}.cta-content h2{font-size:24px}.cta-terminal{padding:16px}.footer{padding:32px 16px 24px}.footer-links{grid-template-columns:repeat(2,1fr);gap:24px 16px}.footer-links .footer-column:last-child{grid-column:span 2;text-align:center}.footer-links .footer-column:last-child a{display:inline-block;padding:4px 8px}.mobile-menu{width:100%;max-width:none}}.pricing-page{position:relative;min-height:100vh;overflow-x:hidden}.pricing-bg{position:fixed;inset:0;pointer-events:none;z-index:0}.nav-links a.active{color:var(--accent-cyan)}.pricing-hero{position:relative;z-index:1;padding:180px 40px 80px;text-align:center}.pricing-hero-content{max-width:700px;margin:0 auto}.pricing-hero .hero-badge{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;background:rgba(0,217,255,.08);border:1px solid rgba(0,217,255,.2);border-radius:100px;font-size:14px;font-weight:500;color:var(--accent-cyan);margin-bottom:32px;animation:fadeInUp .6s ease forwards}.badge-icon{font-size:16px;filter:drop-shadow(0 0 8px var(--accent-cyan))}.pricing-hero h1{font-family:var(--font-display);font-size:clamp(40px,5vw,64px);font-weight:800;line-height:1.1;letter-spacing:-.02em;margin-bottom:24px}.pricing-hero .title-line{display:block;animation:fadeInUp .6s ease forwards;opacity:0}.pricing-hero .title-line:first-child{animation-delay:.1s}.pricing-hero .title-line:nth-child(2){animation-delay:.2s}.pricing-hero .title-line.gradient{background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-teal) 50%,var(--accent-blue) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pricing-hero .hero-subtitle{font-size:18px;line-height:1.8;color:var(--text-secondary);margin-bottom:40px;animation:fadeInUp .6s ease forwards;animation-delay:.3s;opacity:0}.billing-toggle{display:inline-flex;padding:4px;background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;animation:fadeInUp .6s ease forwards;animation-delay:.4s;opacity:0}.billing-toggle button{position:relative;padding:12px 24px;font-size:14px;font-weight:500;color:var(--text-muted);border-radius:8px;transition:var(--transition-fast)}.billing-toggle button.active{background:var(--bg-elevated);color:var(--text-primary)}.billing-toggle button:hover:not(.active){color:var(--text-secondary)}.save-badge{position:absolute;top:-8px;right:-8px;padding:4px 8px;background:var(--accent-green);color:var(--bg-deep);font-size:10px;font-weight:700;border-radius:100px;text-transform:uppercase;letter-spacing:.5px}.plans-section{position:relative;z-index:1;padding:0 40px 100px;max-width:var(--container-max);margin:0 auto}.plans-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:start}.plan-card{position:relative;padding:32px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:20px;transition:var(--transition-medium)}.plan-card:hover{border-color:var(--border-light);transform:translateY(-4px)}.plan-card.highlighted{background:linear-gradient(135deg,rgba(0,217,255,.08),rgba(99,102,241,.05));border-color:var(--accent-cyan);box-shadow:0 0 60px rgba(0,217,255,.15)}.plan-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:6px 16px;background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-blue) 100%);color:var(--bg-deep);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;border-radius:100px;white-space:nowrap}.plan-header{margin-bottom:24px}.plan-header h3{font-family:var(--font-display);font-size:24px;font-weight:700;margin-bottom:4px}.plan-tagline{font-size:13px;color:var(--text-muted)}.plan-price{margin-bottom:16px}.plan-price .price{font-family:var(--font-display);font-size:48px;font-weight:800;letter-spacing:-.02em}.plan-price .period{font-size:14px;color:var(--text-muted);margin-left:4px}.plan-description{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:24px;min-height:44px}.plan-limits{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:20px;background:rgba(0,0,0,.2);border-radius:12px;margin-bottom:24px}.limit-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px}.limit-icon{font-size:16px;color:var(--accent-cyan);opacity:.6}.limit-value{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--text-primary)}.limit-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.comparison-section{position:relative;z-index:1;padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.comparison-table-wrapper{overflow-x:auto;border-radius:16px;border:1px solid var(--border-subtle);background:var(--bg-card)}.comparison-table{width:100%;border-collapse:collapse;font-size:14px}.comparison-table td,.comparison-table th{padding:16px 24px;text-align:center;border-bottom:1px solid var(--border-subtle)}.comparison-table th{font-family:var(--font-display);font-weight:600;font-size:16px;background:var(--bg-tertiary)}.comparison-table th.highlighted{background:rgba(0,217,255,.1);color:var(--accent-cyan)}.comparison-table td.highlighted{background:rgba(0,217,255,.03)}.comparison-table .feature-col{text-align:left;font-weight:500;color:var(--text-secondary)}.comparison-table .check{color:var(--accent-green);font-size:18px;font-weight:700}.comparison-table .dash{color:var(--text-dim)}.comparison-table .feature-value{color:var(--text-primary);font-weight:500}.comparison-table tbody tr:last-child td{border-bottom:none}.comparison-table tbody tr:hover td{background:hsla(0,0%,100%,.02)}.comparison-table tbody tr:hover td.highlighted{background:rgba(0,217,255,.05)}.faq-section{position:relative;z-index:1;padding:var(--section-padding) 40px;max-width:900px;margin:0 auto}.faq-grid{display:flex;flex-direction:column;gap:12px}.faq-item{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden;cursor:pointer;transition:var(--transition-fast)}.faq-item:hover{border-color:var(--border-light)}.faq-item.open{border-color:var(--accent-cyan);background:rgba(0,217,255,.03)}.faq-question{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;font-weight:500;font-size:15px}.faq-toggle{font-size:24px;color:var(--text-muted);line-height:1;transition:var(--transition-fast)}.faq-item.open .faq-toggle{color:var(--accent-cyan)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease}.faq-item.open .faq-answer{max-height:300px}.faq-answer p{padding:0 24px 20px;font-size:14px;color:var(--text-secondary);line-height:1.7}.pricing-page .cta-section{padding:var(--section-padding) 40px;max-width:var(--container-max);margin:0 auto}.cta-card{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:60px;background:linear-gradient(135deg,var(--bg-card) 0,var(--bg-secondary) 100%);border:1px solid var(--border-light);border-radius:24px;overflow:hidden}.cta-card .cta-content h2{font-family:var(--font-display);font-size:36px;font-weight:700;margin-bottom:12px}.cta-card .cta-content p{font-size:16px;color:var(--text-secondary);margin-bottom:32px}.orbit{position:relative;width:300px;height:300px;margin:0 auto}.orbit-ring{position:absolute;border:1px solid var(--border-subtle);border-radius:50%;animation:spin 20s linear infinite}.ring-1{width:100%;height:100%;top:0;left:0}.ring-2{width:70%;height:70%;top:15%;left:15%;animation-duration:15s;animation-direction:reverse}.ring-3{width:40%;height:40%;top:30%;left:30%;animation-duration:10s}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.orbit-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:40px;color:var(--accent-cyan);filter:drop-shadow(var(--glow-cyan))}.orbit-dot{position:absolute;font-size:20px;animation:orbitMove 6s ease-in-out infinite}.dot-1{top:0;left:50%;transform:translateX(-50%);color:var(--accent-cyan);animation-delay:0s}.dot-2{top:50%;right:0;transform:translateY(-50%);color:var(--accent-orange);animation-delay:-2s}.dot-3{bottom:15%;left:15%;color:var(--accent-teal);animation-delay:-4s}@keyframes orbitMove{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.8)}}@media (max-width:1024px){.plans-grid{grid-template-columns:repeat(2,1fr)}.cta-card{grid-template-columns:1fr;text-align:center}.cta-card .cta-content{order:1}.cta-visual{order:0}.orbit{width:200px;height:200px}}@media (max-width:768px){.pricing-hero{padding:120px 20px 48px}.pricing-hero h1{font-size:clamp(32px,8vw,48px)}.pricing-hero .hero-subtitle{font-size:15px;line-height:1.7}.billing-toggle{width:100%;max-width:280px}.billing-toggle button{flex:1;padding:10px 16px;font-size:13px}.plans-section{padding:0 20px 60px}.plans-grid{grid-template-columns:1fr;gap:20px}.plan-card{padding:24px;border-radius:16px}.plan-card.highlighted{transform:none}.plan-header h3{font-size:20px}.plan-price .price{font-size:40px}.plan-limits{padding:16px;gap:8px}.limit-value{font-size:20px}.limit-label{font-size:10px}.comparison-section{padding:60px 20px}.comparison-table-wrapper{border-radius:12px}.comparison-table td,.comparison-table th{padding:10px 12px;font-size:12px}.comparison-table th{font-size:13px}.faq-section{padding:60px 20px}.faq-question{padding:16px 20px;font-size:14px}.faq-answer p{padding:0 20px 16px;font-size:13px}.pricing-page .cta-section{padding:60px 20px}.cta-card{padding:32px 20px;border-radius:16px;gap:40px}.cta-card .cta-content h2{font-size:28px}.cta-card .cta-content p{font-size:14px;margin-bottom:24px}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn-large{width:100%;max-width:260px}.orbit{width:160px;height:160px}.orbit-center{font-size:28px}.orbit-dot{font-size:14px}}@media (max-width:480px){.pricing-hero{padding:100px 16px 40px}.pricing-hero h1{font-size:28px}.pricing-hero .hero-subtitle{font-size:14px}.pricing-hero .hero-badge{padding:8px 14px;font-size:12px;margin-bottom:24px}.plans-section{padding:0 16px 48px}.plan-card{padding:20px}.plan-price .price{font-size:36px}.comparison-section{padding:48px 16px}.comparison-table td,.comparison-table th{padding:8px;font-size:11px}.faq-section,.pricing-page .cta-section{padding:48px 16px}.cta-card{padding:24px 16px}.cta-card .cta-content h2{font-size:24px}.orbit{width:140px;height:140px}}
@@ -1 +0,0 @@
1
- /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&family=Inter:wght@400;500;600&display=swap";@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:host,:root{--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-blue-500:oklch(62.3% .214 259.815);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-500:oklch(58.5% .233 277.117);--color-purple-500:oklch(62.7% .265 303.9);--color-pink-500:oklch(65.6% .241 354.308);--color-gray-500:oklch(55.1% .027 264.364);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs--line-height:calc(1/.75);--text-sm--line-height:calc(1.25/.875);--text-base--line-height:calc(1.5/1);--text-lg--line-height:calc(1.75/1.125);--text-xl--line-height:calc(1.75/1.25);--text-2xl--line-height:calc(2/1.5);--text-3xl--line-height:calc(2.25/1.875);--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--drop-shadow-lg:0 4px 4px #00000026;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-bounce:bounce 1s infinite;--blur-sm:8px;--blur-xl:24px;--blur-2xl:40px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-variation-settings:normal;font-family:IBM Plex Mono,SF Mono,Consolas,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-\[-20\%\]{inset:-20%}.-top-1{top:calc(var(--spacing)*-1)}.-top-1\.5{top:calc(var(--spacing)*-1.5)}.-top-2{top:calc(var(--spacing)*-2)}.-top-3{top:calc(var(--spacing)*-3)}.-top-40{top:calc(var(--spacing)*-40)}.top-0{top:calc(var(--spacing)*0)}.top-0\.5{top:calc(var(--spacing)*.5)}.top-1{top:calc(var(--spacing)*1)}.top-1\.5{top:calc(var(--spacing)*1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.top-\[calc\(100\%\+4px\)\]{top:calc(100% + 4px)}.top-full{top:100%}.-right-0\.5{right:calc(var(--spacing)*-.5)}.-right-1{right:calc(var(--spacing)*-1)}.-right-1\.5{right:calc(var(--spacing)*-1.5)}.-right-2{right:calc(var(--spacing)*-2)}.-right-3{right:calc(var(--spacing)*-3)}.-right-40{right:calc(var(--spacing)*-40)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-1\.5{right:calc(var(--spacing)*1.5)}.right-2{right:calc(var(--spacing)*2)}.-bottom-0\.5{bottom:calc(var(--spacing)*-.5)}.-bottom-40{bottom:calc(var(--spacing)*-40)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-1{bottom:calc(var(--spacing)*1)}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-full{bottom:100%}.-left-40{left:calc(var(--spacing)*-40)}.left-0{left:calc(var(--spacing)*0)}.left-0\.5{left:calc(var(--spacing)*.5)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing)*3)}.left-4{left:calc(var(--spacing)*4)}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[999\]{z-index:999}.z-\[1000\]{z-index:1000}.z-\[1099\]{z-index:1099}.z-\[9998\]{z-index:9998}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.m-3{margin:calc(var(--spacing)*3)}.-mx-6{margin-inline:calc(var(--spacing)*-6)}.mx-0\.5{margin-inline:calc(var(--spacing)*.5)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-3{margin-inline:calc(var(--spacing)*3)}.mx-5{margin-inline:calc(var(--spacing)*5)}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing)*2)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-auto{margin-top:auto}.-mr-2{margin-right:calc(var(--spacing)*-2)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-3{margin-right:calc(var(--spacing)*3)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-12{margin-left:calc(var(--spacing)*12)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-2,.line-clamp-4{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-4{-webkit-line-clamp:4}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-11{height:calc(var(--spacing)*11)}.h-12{height:calc(var(--spacing)*12)}.h-14{height:calc(var(--spacing)*14)}.h-16{height:calc(var(--spacing)*16)}.h-24{height:calc(var(--spacing)*24)}.h-64{height:calc(var(--spacing)*64)}.h-80{height:calc(var(--spacing)*80)}.h-\[2px\]{height:2px}.h-\[16px\]{height:16px}.h-\[18px\]{height:18px}.h-\[52px\]{height:52px}.h-\[60vh\]{height:60vh}.h-\[80vh\]{height:80vh}.h-full{height:100%}.h-screen{height:100vh}.max-h-32{max-height:calc(var(--spacing)*32)}.max-h-48{max-height:calc(var(--spacing)*48)}.max-h-60{max-height:calc(var(--spacing)*60)}.max-h-64{max-height:calc(var(--spacing)*64)}.max-h-\[60vh\]{max-height:60vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[100px\]{max-height:100px}.max-h-\[120px\]{max-height:120px}.max-h-\[200px\]{max-height:200px}.max-h-\[240px\]{max-height:240px}.max-h-\[300px\]{max-height:300px}.max-h-\[400px\]{max-height:400px}.max-h-\[500px\]{max-height:500px}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[40px\]{min-height:40px}.min-h-\[44px\]{min-height:44px}.min-h-\[120px\]{min-height:120px}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing)*1)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-11{width:calc(var(--spacing)*11)}.w-12{width:calc(var(--spacing)*12)}.w-14{width:calc(var(--spacing)*14)}.w-16{width:calc(var(--spacing)*16)}.w-24{width:calc(var(--spacing)*24)}.w-64{width:calc(var(--spacing)*64)}.w-80{width:calc(var(--spacing)*80)}.w-96{width:calc(var(--spacing)*96)}.w-\[3px\]{width:3px}.w-\[90vw\]{width:90vw}.w-\[280px\]{width:280px}.w-\[400px\]{width:400px}.w-\[480px\]{width:480px}.w-\[500px\]{width:500px}.w-\[520px\]{width:520px}.w-\[560px\]{width:560px}.w-\[600px\]{width:600px}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[90vw\]{max-width:90vw}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[200px\]{max-width:200px}.max-w-\[300px\]{max-width:300px}.max-w-\[1400px\]{max-width:1400px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\[16px\]{min-width:16px}.min-w-\[18px\]{min-width:18px}.min-w-\[80px\]{min-width:80px}.min-w-\[280px\]{min-width:280px}.min-w-\[450px\]{min-width:450px}.min-w-\[500px\]{min-width:500px}.min-w-\[700px\]{min-width:700px}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.origin-left{transform-origin:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1/2*100%)*-1)}.-translate-x-1\/2,.-translate-x-full{translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-full{--tw-translate-x:-100%}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0)}.translate-x-0,.translate-x-1{translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-1{--tw-translate-x:calc(var(--spacing)*1)}.translate-x-5{--tw-translate-x:calc(var(--spacing)*5)}.translate-x-5,.translate-x-7{translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-7{--tw-translate-x:calc(var(--spacing)*7)}.translate-x-8{--tw-translate-x:calc(var(--spacing)*8)}.-translate-y-1\/2,.translate-x-8{translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1)}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-\[float_6s_ease-in-out_infinite\]{animation:float 6s ease-in-out infinite}.animate-bounce{animation:var(--animate-bounce)}.animate-fade-in{animation:fadeIn .15s}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-pulse-glow{animation:pulseGlow 2s ease-in-out infinite}.animate-slide-down{animation:slideDown .2s}.animate-slide-up{animation:slideUp .2s}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(280px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(60px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(60px,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}:where(.-space-x-1\.5>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*-1.5)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*-1.5)*calc(1 - var(--tw-space-x-reverse)))}:where(.-space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*-2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*-2)*calc(1 - var(--tw-space-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:#ffffff1a}:where(.divide-border-subtle>:not(:last-child)){border-color:#ffffff0f}.truncate{text-overflow:ellipsis;white-space:nowrap}.overflow-hidden,.truncate{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:16px}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:8px}.rounded-md{border-radius:6px}.rounded-none{border-radius:0}.rounded-sm{border-radius:4px}.rounded-xl{border-radius:12px}.rounded-b-lg{border-bottom-right-radius:8px;border-bottom-left-radius:8px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-\[3px\]{border-left-style:var(--tw-border-style);border-left-width:3px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-\[\#00d9ff\]\/30{border-color:oklab(81.5968% -.116812 -.0864434/.3)}.border-\[\#1a1d21\]{border-color:#1a1d21}.border-\[\#1aab29\]{border-color:#1aab29}.border-\[\#2a2d35\]{border-color:#2a2d35}.border-\[\#3a3a4e\]{border-color:#3a3a4e}.border-\[\#4a2020\]{border-color:#4a2020}.border-\[\#444d56\]{border-color:#444d56}.border-\[\#21262d\]{border-color:#21262d}.border-\[\#30363d\]{border-color:#30363d}.border-\[\#30363d\]\/50{border-color:oklab(32.9984% -.00452305 -.0141812/.5)}.border-\[\#204060\]{border-color:#204060}.border-\[\#402060\]{border-color:#402060}.border-\[\#a855f7\]\/30{border-color:oklab(62.6846% .129701 -.193012/.3)}.border-\[\#dea123\]{border-color:#dea123}.border-\[\#e0443e\]{border-color:#e0443e}.border-\[\#f85149\]\/30{border-color:oklab(66.5118% .18236 .0927555/.3)}.border-\[\#ff6b6b\]\/30{border-color:oklab(71.1607% .167013 .0703394/.3)}.border-accent,.border-accent-cyan{border-color:#00d9ff}.border-accent-cyan\/20{border-color:oklab(81.5968% -.116812 -.0864434/.2)}.border-accent-cyan\/30{border-color:oklab(81.5968% -.116812 -.0864434/.3)}.border-accent-purple\/20{border-color:oklab(62.6846% .129701 -.193012/.2)}.border-accent-purple\/30{border-color:oklab(62.6846% .129701 -.193012/.3)}.border-accent\/20{border-color:oklab(81.5968% -.116812 -.0864434/.2)}.border-accent\/30{border-color:oklab(81.5968% -.116812 -.0864434/.3)}.border-amber-400\/20{border-color:#fcbb0033}@supports (color:color-mix(in lab,red,red)){.border-amber-400\/20{border-color:color-mix(in oklab,var(--color-amber-400)20%,transparent)}}.border-amber-400\/30{border-color:#fcbb004d}@supports (color:color-mix(in lab,red,red)){.border-amber-400\/30{border-color:color-mix(in oklab,var(--color-amber-400)30%,transparent)}}.border-amber-500\/30{border-color:#f99c004d}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/30{border-color:color-mix(in oklab,var(--color-amber-500)30%,transparent)}}.border-bg-card{border-color:#1a1a28}.border-bg-primary{border-color:#0d0d14}.border-bg-secondary{border-color:#12121c}.border-blue-500\/30{border-color:#3080ff4d}@supports (color:color-mix(in lab,red,red)){.border-blue-500\/30{border-color:color-mix(in oklab,var(--color-blue-500)30%,transparent)}}.border-blue-500\/40{border-color:#3080ff66}@supports (color:color-mix(in lab,red,red)){.border-blue-500\/40{border-color:color-mix(in oklab,var(--color-blue-500)40%,transparent)}}.border-border{border-color:#ffffff1a}.border-border-medium{border-color:#ffffff26}.border-border-subtle{border-color:#ffffff0f}.border-border-subtle\/50{border-color:oklab(100% 0 5.96046e-8/.0294118)}.border-border\/20{border-color:oklab(100% 0 5.96046e-8/.0203922)}.border-border\/30{border-color:oklab(100% 0 5.96046e-8/.0305882)}.border-border\/50{border-color:oklab(100% 0 5.96046e-8/.0509804)}.border-border\/60{border-color:oklab(100% 0 5.96046e-8/.0611765)}.border-error{border-color:#ff4757}.border-error\/20{border-color:oklab(66.8917% .204495 .0781476/.2)}.border-error\/30{border-color:oklab(66.8917% .204495 .0781476/.3)}.border-error\/50{border-color:oklab(66.8917% .204495 .0781476/.5)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab,red,red)){.border-red-500\/30{border-color:color-mix(in oklab,var(--color-red-500)30%,transparent)}}.border-sidebar-border{border-color:#ffffff14}.border-sidebar-hover{border-color:#ffffff0f}.border-success\/30{border-color:oklab(88.9283% -.173708 .0314021/.3)}.border-transparent{border-color:#0000}.border-warning\/30{border-color:oklab(70.4517% .149185 .121806/.3)}.border-white{border-color:var(--color-white)}.border-white\/5{border-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.border-white\/5{border-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.border-t-accent,.border-t-accent-cyan{border-top-color:#00d9ff}.border-l-warning{border-left-color:#ff6b35}.bg-\[\#00c896\]{background-color:#00c896}.bg-\[\#00d9ff\]\/20{background-color:oklab(81.5968% -.116812 -.0864434/.2)}.bg-\[\#00ffc8\]\/10{background-color:oklab(88.9283% -.173708 .0314021/.1)}.bg-\[\#00ffc8\]\/15{background-color:oklab(88.9283% -.173708 .0314021/.15)}.bg-\[\#1a1a2e\]{background-color:#1a1a2e}.bg-\[\#1a1d21\]{background-color:#1a1d21}.bg-\[\#2a2a3e\]{background-color:#2a2a3e}.bg-\[\#2a2d31\]{background-color:#2a2d31}.bg-\[\#3d1d20\]{background-color:#3d1d20}.bg-\[\#3d4043\]{background-color:#3d4043}.bg-\[\#3fb950\]{background-color:#3fb950}.bg-\[\#3fb950\]\/15{background-color:oklab(69.5081% -.149324 .102163/.15)}.bg-\[\#3fb950\]\/20{background-color:oklab(69.5081% -.149324 .102163/.2)}.bg-\[\#8d8d8e\]{background-color:#8d8d8e}.bg-\[\#10b981\]\/20{background-color:oklab(69.5873% -.142158 .0448781/.2)}.bg-\[\#27c93f\]{background-color:#27c93f}.bg-\[\#161b22\]{background-color:#161b22}.bg-\[\#484f58\]{background-color:#484f58}.bg-\[\#484f58\]\/15{background-color:oklab(42.4669% -.00460503 -.016859/.15)}.bg-\[\#484f58\]\/20{background-color:oklab(42.4669% -.00460503 -.016859/.2)}.bg-\[\#0891b2\]\/10{background-color:oklab(60.8911% -.0828014 -.0738333/.1)}.bg-\[\#21262d\]{background-color:#21262d}.bg-\[\#21262d\]\/80{background-color:oklab(26.6643% -.00341691 -.0145655/.8)}.bg-\[\#24292e\]{background-color:#24292e}.bg-\[\#30363d\]{background-color:#30363d}.bg-\[\#238636\]\/20{background-color:oklab(54.6037% -.122595 .0818901/.2)}.bg-\[\#a855f7\]{background-color:#a855f7}.bg-\[\#a855f7\]\/20{background-color:oklab(62.6846% .129701 -.193012/.2)}.bg-\[\#d29922\]{background-color:#d29922}.bg-\[\#d29922\]\/15{background-color:oklab(71.9551% .0245407 .13798/.15)}.bg-\[\#d29922\]\/20{background-color:oklab(71.9551% .0245407 .13798/.2)}.bg-\[\#f85149\]\/20{background-color:oklab(66.5118% .18236 .0927555/.2)}.bg-\[\#f97316\]{background-color:#f97316}.bg-\[\#f97316\]\/20{background-color:oklab(70.4871% .125896 .137895/.2)}.bg-\[\#ff5f56\]{background-color:#ff5f56}.bg-\[\#ffbd2e\]{background-color:#ffbd2e}.bg-\[rgba\(0\,200\,150\,0\.1\)\]{background-color:#00c8961a}.bg-\[rgba\(0\,255\,200\,0\.08\)\]{background-color:#00ffc814}.bg-accent,.bg-accent-cyan{background-color:#00d9ff}.bg-accent-cyan\/5{background-color:oklab(81.5968% -.116812 -.0864434/.05)}.bg-accent-cyan\/10{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.bg-accent-cyan\/15{background-color:oklab(81.5968% -.116812 -.0864434/.15)}.bg-accent-cyan\/20{background-color:oklab(81.5968% -.116812 -.0864434/.2)}.bg-accent-cyan\/40{background-color:oklab(81.5968% -.116812 -.0864434/.4)}.bg-accent-light{background-color:#00d9ff26}.bg-accent-orange\/20{background-color:oklab(70.4517% .149185 .121806/.2)}.bg-accent-purple{background-color:#a855f7}.bg-accent-purple\/10{background-color:oklab(62.6846% .129701 -.193012/.1)}.bg-accent-purple\/20{background-color:oklab(62.6846% .129701 -.193012/.2)}.bg-accent\/10{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.bg-accent\/15{background-color:oklab(81.5968% -.116812 -.0864434/.15)}.bg-accent\/20{background-color:oklab(81.5968% -.116812 -.0864434/.2)}.bg-amber-400{background-color:var(--color-amber-400)}.bg-amber-400\/10{background-color:#fcbb001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-400\/10{background-color:color-mix(in oklab,var(--color-amber-400)10%,transparent)}}.bg-amber-400\/15{background-color:#fcbb0026}@supports (color:color-mix(in lab,red,red)){.bg-amber-400\/15{background-color:color-mix(in oklab,var(--color-amber-400)15%,transparent)}}.bg-amber-400\/20{background-color:#fcbb0033}@supports (color:color-mix(in lab,red,red)){.bg-amber-400\/20{background-color:color-mix(in oklab,var(--color-amber-400)20%,transparent)}}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/10{background-color:color-mix(in oklab,var(--color-amber-500)10%,transparent)}}.bg-amber-500\/15{background-color:#f99c0026}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/15{background-color:color-mix(in oklab,var(--color-amber-500)15%,transparent)}}.bg-bg-active{background-color:#ffffff14}.bg-bg-card{background-color:#1a1a28}.bg-bg-deep{background-color:#0a0a0f}.bg-bg-elevated{background-color:#202030}.bg-bg-elevated\/50{background-color:oklab(25.124% .007295 -.0292075/.5)}.bg-bg-elevated\/80{background-color:oklab(25.124% .007295 -.0292075/.8)}.bg-bg-hover{background-color:#ffffff0a}.bg-bg-hover\/50{background-color:oklab(100% 0 5.96046e-8/.0196078)}.bg-bg-primary{background-color:#0d0d14}.bg-bg-primary\/80{background-color:oklab(16.2648% .00371297 -.0142023/.8)}.bg-bg-secondary{background-color:#12121c}.bg-bg-secondary\/50{background-color:oklab(18.729% .00499356 -.0196259/.5)}.bg-bg-secondary\/80{background-color:oklab(18.729% .00499356 -.0196259/.8)}.bg-bg-tertiary{background-color:#181824}.bg-bg-tertiary\/50{background-color:oklab(21.4943% .00578009 -.0227564/.5)}.bg-bg-tertiary\/80{background-color:oklab(21.4943% .00578009 -.0227564/.8)}.bg-black\/0{background-color:#0000}@supports (color:color-mix(in lab,red,red)){.bg-black\/0{background-color:color-mix(in oklab,var(--color-black)0,transparent)}}.bg-black\/20{background-color:#0003}@supports (color:color-mix(in lab,red,red)){.bg-black\/20{background-color:color-mix(in oklab,var(--color-black)20%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black)60%,transparent)}}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black)70%,transparent)}}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab,red,red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black)80%,transparent)}}.bg-blue-500\/15{background-color:#3080ff26}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/15{background-color:color-mix(in oklab,var(--color-blue-500)15%,transparent)}}.bg-blue-500\/20{background-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/20{background-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.bg-border{background-color:#ffffff1a}.bg-border-medium{background-color:#ffffff26}.bg-border-subtle{background-color:#ffffff0f}.bg-error{background-color:#ff4757}.bg-error\/5{background-color:oklab(66.8917% .204495 .0781476/.05)}.bg-error\/10{background-color:oklab(66.8917% .204495 .0781476/.1)}.bg-error\/15{background-color:oklab(66.8917% .204495 .0781476/.15)}.bg-error\/20{background-color:oklab(66.8917% .204495 .0781476/.2)}.bg-error\/90{background-color:oklab(66.8917% .204495 .0781476/.9)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-500\/15{background-color:#00c75826}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/15{background-color:color-mix(in oklab,var(--color-green-500)15%,transparent)}}.bg-green-500\/20{background-color:#00c75833}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/20{background-color:color-mix(in oklab,var(--color-green-500)20%,transparent)}}.bg-indigo-50{background-color:var(--color-indigo-50)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.bg-sidebar-bg{background-color:#0d0d14}.bg-sidebar-border{background-color:#ffffff14}.bg-success{background-color:#00ffc8}.bg-success\/10{background-color:oklab(88.9283% -.173708 .0314021/.1)}.bg-success\/15{background-color:oklab(88.9283% -.173708 .0314021/.15)}.bg-success\/20{background-color:oklab(88.9283% -.173708 .0314021/.2)}.bg-text-dim{background-color:#404050}.bg-text-muted{background-color:#606070}.bg-text-muted\/10{background-color:oklab(49.4863% .0067419 -.0244138/.1)}.bg-text-muted\/20{background-color:oklab(49.4863% .0067419 -.0244138/.2)}.bg-transparent{background-color:#0000}.bg-warning{background-color:#ff6b35}.bg-warning-light\/20{background-color:oklab(70.4517% .149185 .121806/.0298039)}.bg-warning\/10{background-color:oklab(70.4517% .149185 .121806/.1)}.bg-warning\/15{background-color:oklab(70.4517% .149185 .121806/.15)}.bg-warning\/20{background-color:oklab(70.4517% .149185 .121806/.2)}.bg-white{background-color:var(--color-white)}.bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.bg-white\/5{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.bg-white\/\[0\.08\]{background-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.bg-white\/\[0\.08\]{background-color:color-mix(in oklab,var(--color-white)8%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab}.bg-gradient-to-b,.bg-gradient-to-br{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab}.bg-gradient-to-r{--tw-gradient-position:to right in oklab}.bg-gradient-to-r,.bg-gradient-to-t{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab}.bg-\[radial-gradient\(ellipse_at_bottom_left\,_rgba\(168\,85\,247\,0\.06\)_0\%\,_transparent_50\%\)\]{background-image:radial-gradient(at 0 100%,#a855f70f 0,#0000 50%)}.bg-\[radial-gradient\(ellipse_at_top_right\,_rgba\(0\,217\,255\,0\.08\)_0\%\,_transparent_50\%\)\]{background-image:radial-gradient(at 100% 0,#00d9ff14 0,#0000 50%)}.bg-none{background-image:none}.from-\[\#0a0a0f\]{--tw-gradient-from:#0a0a0f;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-\[\#1a2a3a\]{--tw-gradient-from:#1a2a3a;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-\[\#2a1a3a\]{--tw-gradient-from:#2a1a3a;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-\[\#3a1a1a\]{--tw-gradient-from:#3a1a1a;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-\[rgba\(255\,255\,255\,0\.06\)\]{--tw-gradient-from:#ffffff0f;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent,.from-accent-cyan{--tw-gradient-from:#00d9ff;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent-purple{--tw-gradient-from:#a855f7;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent-purple\/10{--tw-gradient-from:oklab(62.6846% .129701 -.193012/.1);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent\/10{--tw-gradient-from:oklab(81.5968% -.116812 -.0864434/.1);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent\/80{--tw-gradient-from:oklab(81.5968% -.116812 -.0864434/.8);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-amber-400\/10{--tw-gradient-from:#fcbb001a}@supports (color:color-mix(in lab,red,red)){.from-amber-400\/10{--tw-gradient-from:color-mix(in oklab,var(--color-amber-400)10%,transparent)}}.from-amber-400\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-bg-card{--tw-gradient-from:#1a1a28;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-bg-tertiary{--tw-gradient-from:#181824;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-black\/60{--tw-gradient-from:#0009}@supports (color:color-mix(in lab,red,red)){.from-black\/60{--tw-gradient-from:color-mix(in oklab,var(--color-black)60%,transparent)}}.from-black\/60{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-blue-500\/20{--tw-gradient-from:#3080ff33}@supports (color:color-mix(in lab,red,red)){.from-blue-500\/20{--tw-gradient-from:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.from-blue-500\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-error{--tw-gradient-from:#ff4757;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-purple-500{--tw-gradient-from:var(--color-purple-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-warning{--tw-gradient-from:#ff6b35;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-\[\#0d1117\]{--tw-gradient-via:#0d1117;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-accent-cyan{--tw-gradient-via:#00d9ff;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-\[\#0a0a0f\]{--tw-gradient-to:#0a0a0f;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#0f1a2a\]{--tw-gradient-to:#0f1a2a;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#00b8d9\]{--tw-gradient-to:#00b8d9;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#1a0f2a\]{--tw-gradient-to:#1a0f2a;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#2a0f0f\]{--tw-gradient-to:#2a0f0f;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#6366f1\]{--tw-gradient-to:#6366f1;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent,.to-accent-cyan{--tw-gradient-to:#00d9ff;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent-cyan\/10{--tw-gradient-to:oklab(81.5968% -.116812 -.0864434/.1);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent-cyan\/20{--tw-gradient-to:oklab(81.5968% -.116812 -.0864434/.2);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent-purple{--tw-gradient-to:#a855f7;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent-purple\/10{--tw-gradient-to:oklab(62.6846% .129701 -.193012/.1);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-accent\/5{--tw-gradient-to:oklab(81.5968% -.116812 -.0864434/.05);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-bg-primary{--tw-gradient-to:#0d0d14;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-bg-tertiary{--tw-gradient-to:#181824;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-500{--tw-gradient-to:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-error\/70{--tw-gradient-to:oklab(66.8917% .204495 .0781476/.7);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-pink-500{--tw-gradient-to:var(--color-pink-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-warning\/70{--tw-gradient-to:oklab(70.4517% .149185 .121806/.7);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-2\.5{padding:calc(var(--spacing)*2.5)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-12{padding:calc(var(--spacing)*12)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-3\.5{padding-inline:calc(var(--spacing)*3.5)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-5{padding-top:calc(var(--spacing)*5)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-\[15vh\]{padding-top:15vh}.pr-3\.5{padding-right:calc(var(--spacing)*3.5)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-5{padding-left:calc(var(--spacing)*5)}.pl-10{padding-left:calc(var(--spacing)*10)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-\[inherit\]{font-family:inherit}.font-display{font-family:Outfit,sans-serif}.font-mono{font-family:IBM Plex Mono,SF Mono,Consolas,monospace}.font-sans{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.text-2xl{font-size:18px;line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:24px;line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:32px;line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:14px;line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:15px;line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:13px;line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:16px;line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:11px;line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.85em\]{font-size:.85em}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.5px\]{--tw-tracking:.5px;letter-spacing:.5px}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#00d9ff\]{color:#00d9ff}.text-\[\#00ffc8\]{color:#00ffc8}.text-\[\#1a1a2e\]{color:#1a1a2e}.text-\[\#3fb950\]{color:#3fb950}.text-\[\#6b6b6c\]{color:#6b6b6c}.text-\[\#6e7681\]{color:#6e7681}.text-\[\#8b949e\]{color:#8b949e}.text-\[\#8d8d8e\]{color:#8d8d8e}.text-\[\#10b981\]{color:#10b981}.text-\[\#58a6ff\]{color:#58a6ff}.text-\[\#484f58\]{color:#484f58}.text-\[\#666\]{color:#666}.text-\[\#888\]{color:#888}.text-\[\#0891b2\]{color:#0891b2}.text-\[\#a78bfa\]{color:#a78bfa}.text-\[\#a855f7\]{color:#a855f7}.text-\[\#b8b8b8\]{color:#b8b8b8}.text-\[\#c9d1d9\]{color:#c9d1d9}.text-\[\#d1d2d3\]{color:#d1d2d3}.text-\[\#d29922\]{color:#d29922}.text-\[\#e8e8e8\]{color:#e8e8e8}.text-\[\#f85149\]{color:#f85149}.text-\[\#f97316\]{color:#f97316}.text-\[\#ff6b6b\]{color:#ff6b6b}.text-\[\#ffd700\]{color:gold}.text-accent,.text-accent-cyan{color:#00d9ff}.text-accent-cyan\/60{color:oklab(81.5968% -.116812 -.0864434/.6)}.text-accent-cyan\/80{color:oklab(81.5968% -.116812 -.0864434/.8)}.text-accent-orange{color:#ff6b35}.text-accent-purple{color:#a855f7}.text-accent-purple\/70{color:oklab(62.6846% .129701 -.193012/.7)}.text-amber-400{color:var(--color-amber-400)}.text-amber-400\/80{color:#fcbb00cc}@supports (color:color-mix(in lab,red,red)){.text-amber-400\/80{color:color-mix(in oklab,var(--color-amber-400)80%,transparent)}}.text-amber-500{color:var(--color-amber-500)}.text-bg-deep{color:#0a0a0f}.text-blue-500{color:var(--color-blue-500)}.text-error{color:#ff4757}.text-error\/60{color:oklab(66.8917% .204495 .0781476/.6)}.text-error\/70{color:oklab(66.8917% .204495 .0781476/.7)}.text-green-400{color:var(--color-green-400)}.text-green-500{color:var(--color-green-500)}.text-indigo-500{color:var(--color-indigo-500)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-success{color:#00ffc8}.text-text-dim{color:#404050}.text-text-muted{color:#606070}.text-text-muted\/60{color:oklab(49.4863% .0067419 -.0244138/.6)}.text-text-primary{color:#f0f0f5}.text-text-secondary{color:#a0a0b0}.text-warning{color:#ff6b35}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.no-underline{text-decoration-line:none}.placeholder-text-muted::-moz-placeholder{color:#606070}.placeholder-text-muted::placeholder{color:#606070}.accent-accent-cyan{accent-color:#00d9ff}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-2xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040)}.shadow-\[0_-4px_20px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow:0 -4px 20px var(--tw-shadow-color,#0006)}.shadow-\[0_-4px_20px_rgba\(0\,0\,0\,0\.4\)\],.shadow-\[0_0_0_2px_rgba\(74\,158\,255\,0\.15\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_2px_rgba\(74\,158\,255\,0\.15\)\]{--tw-shadow:0 0 0 2px var(--tw-shadow-color,#4a9eff26)}.shadow-\[0_0_4px_rgba\(63\,185\,80\,0\.5\)\]{--tw-shadow:0 0 4px var(--tw-shadow-color,#3fb95080)}.shadow-\[0_0_4px_rgba\(63\,185\,80\,0\.5\)\],.shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.6\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.6\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#00d9ff99)}.shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.15\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#00d9ff26)}.shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.15\)\],.shadow-\[0_0_8px_rgba\(43\,172\,118\,0\.5\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_8px_rgba\(43\,172\,118\,0\.5\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#2bac7680)}.shadow-\[0_0_8px_rgba\(239\,68\,68\,0\.6\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#ef444499)}.shadow-\[0_0_8px_rgba\(239\,68\,68\,0\.6\)\],.shadow-\[0_0_8px_rgba\(255\,107\,53\,0\.5\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_8px_rgba\(255\,107\,53\,0\.5\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#ff6b3580)}.shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.4\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#00d9ff66)}.shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.15\)\],.shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.4\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.15\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#00d9ff26)}.shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.25\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#00d9ff40)}.shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.25\)\],.shadow-\[0_0_12px_rgba\(59\,130\,246\,0\.15\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_12px_rgba\(59\,130\,246\,0\.15\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#3b82f626)}.shadow-\[0_0_12px_rgba\(63\,185\,80\,0\.25\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#3fb95040)}.shadow-\[0_0_12px_rgba\(63\,185\,80\,0\.25\)\],.shadow-\[0_0_20px_rgba\(0\,217\,255\,0\.1\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_20px_rgba\(0\,217\,255\,0\.1\)\]{--tw-shadow:0 0 20px var(--tw-shadow-color,#00d9ff1a)}.shadow-\[0_0_20px_rgba\(255\,107\,53\,0\.4\)\]{--tw-shadow:0 0 20px var(--tw-shadow-color,#ff6b3566)}.shadow-\[0_0_20px_rgba\(255\,107\,53\,0\.4\)\],.shadow-\[0_1px_3px_rgba\(0\,0\,0\,0\.2\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_1px_3px_rgba\(0\,0\,0\,0\.2\)\]{--tw-shadow:0 1px 3px var(--tw-shadow-color,#0003)}.shadow-\[0_10px_40px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow:0 10px 40px var(--tw-shadow-color,#0006)}.shadow-\[0_10px_40px_rgba\(0\,0\,0\,0\.4\)\],.shadow-\[0_20px_60px_rgba\(0\,0\,0\,0\.5\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_20px_60px_rgba\(0\,0\,0\,0\.5\)\]{--tw-shadow:0 20px 60px var(--tw-shadow-color,#00000080)}.shadow-\[inset_0_1px_0_rgba\(0\,217\,255\,0\.1\)\,0_2px_4px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#00d9ff1a),0 2px 4px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0_1px_0_rgba\(168\,85\,247\,0\.1\)\,0_2px_4px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#a855f71a),0 2px 4px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0_1px_0_rgba\(255\,107\,107\,0\.1\)\,0_2px_4px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#ff6b6b1a),0 2px 4px var(--tw-shadow-color,#0000004d)}.shadow-\[inset_0_1px_0_rgba\(255\,107\,107\,0\.1\)\,0_2px_4px_rgba\(0\,0\,0\,0\.3\)\],.shadow-glow-cyan{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-glow-cyan{--tw-shadow:0 0 20px var(--tw-shadow-color,#00d9ff4d)}.shadow-lg{--tw-shadow:0 4px 6px var(--tw-shadow-color,#0000001a)}.shadow-lg,.shadow-modal{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-modal{--tw-shadow:0 16px 70px var(--tw-shadow-color,#000000b3)}.shadow-sm{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000d)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 10px 15px var(--tw-shadow-color,#0000001a)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.ring,.ring-1,.ring-2{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.ring-3{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-accent-cyan\/20{--tw-shadow-color:#00d9ff33}@supports (color:color-mix(in lab,red,red)){.shadow-accent-cyan\/20{--tw-shadow-color:color-mix(in oklab,oklab(81.5968% -.116812 -.0864434/.2) var(--tw-shadow-alpha),transparent)}}.ring-\[\#1a1d21\]{--tw-ring-color:#1a1d21}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.blur-2xl{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-2xl{--tw-blur:blur(var(--blur-2xl))}.blur-\[100px\]{--tw-blur:blur(100px)}.blur-\[100px\],.blur-xl{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-xl{--tw-blur:blur(var(--blur-xl))}.drop-shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.3\)\]{--tw-drop-shadow-size:drop-shadow(0 0 8px var(--tw-drop-shadow-color,#00d9ff4d));--tw-drop-shadow:var(--tw-drop-shadow-size)}.drop-shadow-\[0_0_20px_rgba\(0\,217\,255\,0\.4\)\],.drop-shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.3\)\]{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-\[0_0_20px_rgba\(0\,217\,255\,0\.4\)\]{--tw-drop-shadow-size:drop-shadow(0 0 20px var(--tw-drop-shadow-color,#00d9ff66));--tw-drop-shadow:var(--tw-drop-shadow-size)}.drop-shadow-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg))}.drop-shadow-lg,.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.group-open\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}@media (hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:border-accent-cyan\/50:is(:where(.group):hover *),.group-hover\:border-accent\/50:is(:where(.group):hover *){border-color:oklab(81.5968% -.116812 -.0864434/.5)}.group-hover\:bg-black\/10:is(:where(.group):hover *){background-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-black\/10:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--color-black)10%,transparent)}}.group-hover\:\[stroke-width\:5\]:is(:where(.group):hover *){stroke-width:5px}.group-hover\:text-accent-cyan:is(:where(.group):hover *){color:#00d9ff}.group-hover\:text-text-primary:is(:where(.group):hover *){color:#f0f0f5}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.2\)\]:is(:where(.group):hover *){--tw-shadow:0 0 8px var(--tw-shadow-color,#00d9ff33);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-hover\:shadow-md:is(:where(.group):hover *){--tw-shadow:0 1px 3px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-hover\:drop-shadow-\[0_0_16px_rgba\(0\,217\,255\,0\.5\)\]:is(:where(.group):hover *){--tw-drop-shadow-size:drop-shadow(0 0 16px var(--tw-drop-shadow-color,#00d9ff80));--tw-drop-shadow:var(--tw-drop-shadow-size);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}}.placeholder\:text-\[\#484f58\]::-moz-placeholder{color:#484f58}.placeholder\:text-\[\#484f58\]::placeholder{color:#484f58}.placeholder\:text-\[\#666\]::-moz-placeholder{color:#666}.placeholder\:text-\[\#666\]::placeholder{color:#666}.placeholder\:text-text-dim::-moz-placeholder{color:#404050}.placeholder\:text-text-dim::placeholder{color:#404050}.placeholder\:text-text-muted::-moz-placeholder{color:#606070}.placeholder\:text-text-muted::placeholder{color:#606070}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.focus-within\:border-accent-cyan\/50:focus-within{border-color:oklab(81.5968% -.116812 -.0864434/.5)}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing)*-.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:scale-\[1\.01\]:hover{scale:1.01}.hover\:border-\[\#4a4a5e\]:hover{border-color:#4a4a5e}.hover\:border-\[\#a855f7\]:hover{border-color:#a855f7}.hover\:border-\[\#a855f7\]\/30:hover{border-color:oklab(62.6846% .129701 -.193012/.3)}.hover\:border-\[\#ff4444\]:hover{border-color:#f44}.hover\:border-accent-cyan:hover{border-color:#00d9ff}.hover\:border-accent-cyan\/30:hover{border-color:oklab(81.5968% -.116812 -.0864434/.3)}.hover\:border-accent-cyan\/50:hover,.hover\:border-accent\/50:hover{border-color:oklab(81.5968% -.116812 -.0864434/.5)}.hover\:border-blue-500\/50:hover{border-color:#3080ff80}@supports (color:color-mix(in lab,red,red)){.hover\:border-blue-500\/50:hover{border-color:color-mix(in oklab,var(--color-blue-500)50%,transparent)}}.hover\:border-border-medium:hover{border-color:#ffffff26}.hover\:border-border-subtle:hover{border-color:#ffffff0f}.hover\:border-border\/40:hover{border-color:oklab(100% 0 5.96046e-8/.0407843)}.hover\:border-error:hover{border-color:#ff4757}.hover\:border-error\/30:hover{border-color:oklab(66.8917% .204495 .0781476/.3)}.hover\:border-error\/50:hover{border-color:oklab(66.8917% .204495 .0781476/.5)}.hover\:border-sidebar-hover:hover{border-color:#ffffff0f}.hover\:bg-\[\#00a87d\]:hover{background-color:#00a87d}.hover\:bg-\[\#00d9ff\]\/10:hover{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.hover\:bg-\[\#2f363d\]:hover{background-color:#2f363d}.hover\:bg-\[\#3a3a4e\]:hover{background-color:#3a3a4e}.hover\:bg-\[\#9333ea\]:hover{background-color:#9333ea}.hover\:bg-\[\#21262d\]:hover{background-color:#21262d}.hover\:bg-\[\#30363d\]:hover{background-color:#30363d}.hover\:bg-\[\#a855f7\]\/10:hover{background-color:oklab(62.6846% .129701 -.193012/.1)}.hover\:bg-\[\#f85149\]\/10:hover{background-color:oklab(66.5118% .18236 .0927555/.1)}.hover\:bg-\[\#f85149\]\/30:hover{background-color:oklab(66.5118% .18236 .0927555/.3)}.hover\:bg-\[\#ff6b6b\]\/10:hover{background-color:oklab(71.1607% .167013 .0703394/.1)}.hover\:bg-\[rgba\(168\,85\,247\,0\.1\)\]:hover{background-color:#a855f71a}.hover\:bg-\[var\(--group-light\)\]:hover{background-color:var(--group-light)}.hover\:bg-\[var\(--project-light\)\]:hover{background-color:var(--project-light)}.hover\:bg-accent-cyan\/10:hover{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.hover\:bg-accent-cyan\/20:hover{background-color:oklab(81.5968% -.116812 -.0864434/.2)}.hover\:bg-accent-cyan\/30:hover{background-color:oklab(81.5968% -.116812 -.0864434/.3)}.hover\:bg-accent-cyan\/90:hover{background-color:oklab(81.5968% -.116812 -.0864434/.9)}.hover\:bg-accent-hover:hover{background-color:#00b8d9}.hover\:bg-accent\/10:hover{background-color:oklab(81.5968% -.116812 -.0864434/.1)}.hover\:bg-accent\/90:hover{background-color:oklab(81.5968% -.116812 -.0864434/.9)}.hover\:bg-amber-300:hover{background-color:var(--color-amber-300)}.hover\:bg-amber-400\/20:hover{background-color:#fcbb0033}@supports (color:color-mix(in lab,red,red)){.hover\:bg-amber-400\/20:hover{background-color:color-mix(in oklab,var(--color-amber-400)20%,transparent)}}.hover\:bg-bg-active:hover{background-color:#ffffff14}.hover\:bg-bg-card:hover{background-color:#1a1a28}.hover\:bg-bg-card\/50:hover{background-color:oklab(22.4727% .00655653 -.0262805/.5)}.hover\:bg-bg-elevated:hover{background-color:#202030}.hover\:bg-bg-elevated\/60:hover{background-color:oklab(25.124% .007295 -.0292075/.6)}.hover\:bg-bg-hover:hover{background-color:#ffffff0a}.hover\:bg-bg-hover\/50:hover{background-color:oklab(100% 0 5.96046e-8/.0196078)}.hover\:bg-bg-primary:hover{background-color:#0d0d14}.hover\:bg-bg-secondary:hover{background-color:#12121c}.hover\:bg-bg-tertiary:hover{background-color:#181824}.hover\:bg-error\/10:hover{background-color:oklab(66.8917% .204495 .0781476/.1)}.hover\:bg-error\/20:hover{background-color:oklab(66.8917% .204495 .0781476/.2)}.hover\:bg-error\/30:hover{background-color:oklab(66.8917% .204495 .0781476/.3)}.hover\:bg-error\/90:hover{background-color:oklab(66.8917% .204495 .0781476/.9)}.hover\:bg-sidebar-border:hover{background-color:#ffffff14}.hover\:bg-success\/30:hover{background-color:oklab(88.9283% -.173708 .0314021/.3)}.hover\:bg-white\/5:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/5:hover{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.hover\:bg-white\/\[0\.05\]:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/\[0\.05\]:hover{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.hover\:bg-white\/\[0\.08\]:hover{background-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/\[0\.08\]:hover{background-color:color-mix(in oklab,var(--color-white)8%,transparent)}}.hover\:bg-gradient-to-b:hover{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.hover\:bg-gradient-to-r:hover{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.hover\:from-\[\#4a2020\]:hover{--tw-gradient-from:#4a2020;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:from-\[\#204060\]:hover{--tw-gradient-from:#204060;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:from-\[\#402060\]:hover{--tw-gradient-from:#402060;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:from-\[rgba\(255\,255\,255\,0\.03\)\]:hover{--tw-gradient-from:#ffffff08;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-\[\#1a3a50\]:hover{--tw-gradient-to:#1a3a50;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-\[\#3a1515\]:hover{--tw-gradient-to:#3a1515;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-\[\#301a50\]:hover{--tw-gradient-to:#301a50;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-transparent:hover{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:text-\[\#a855f7\]:hover{color:#a855f7}.hover\:text-\[\#c9d1d9\]:hover{color:#c9d1d9}.hover\:text-\[\#c084fc\]:hover{color:#c084fc}.hover\:text-\[\#e8e8e8\]:hover{color:#e8e8e8}.hover\:text-\[\#f85149\]:hover{color:#f85149}.hover\:text-\[\#ff4444\]:hover{color:#f44}.hover\:text-accent-cyan:hover,.hover\:text-accent:hover{color:#00d9ff}.hover\:text-accent-orange:hover{color:#ff6b35}.hover\:text-accent-purple:hover{color:#a855f7}.hover\:text-error:hover{color:#ff4757}.hover\:text-text-primary:hover{color:#f0f0f5}.hover\:text-text-secondary:hover{color:#a0a0b0}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.15\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#00d9ff26)}.hover\:shadow-\[0_0_8px_rgba\(0\,217\,255\,0\.15\)\]:hover,.hover\:shadow-\[0_0_8px_rgba\(39\,201\,63\,0\.5\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_8px_rgba\(39\,201\,63\,0\.5\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#27c93f80)}.hover\:shadow-\[0_0_8px_rgba\(248\,81\,73\,0\.2\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#f8514933)}.hover\:shadow-\[0_0_8px_rgba\(248\,81\,73\,0\.2\)\]:hover,.hover\:shadow-\[0_0_8px_rgba\(255\,95\,86\,0\.5\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_8px_rgba\(255\,95\,86\,0\.5\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#ff5f5680)}.hover\:shadow-\[0_0_8px_rgba\(255\,189\,46\,0\.5\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#ffbd2e80)}.hover\:shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.25\)\]:hover,.hover\:shadow-\[0_0_8px_rgba\(255\,189\,46\,0\.5\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_12px_rgba\(0\,217\,255\,0\.25\)\]:hover{--tw-shadow:0 0 12px var(--tw-shadow-color,#00d9ff40)}.hover\:shadow-\[0_0_12px_rgba\(168\,85\,247\,0\.25\)\]:hover{--tw-shadow:0 0 12px var(--tw-shadow-color,#a855f740)}.hover\:shadow-\[0_0_12px_rgba\(168\,85\,247\,0\.25\)\]:hover,.hover\:shadow-\[0_0_12px_rgba\(255\,68\,68\,0\.25\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_12px_rgba\(255\,68\,68\,0\.25\)\]:hover{--tw-shadow:0 0 12px var(--tw-shadow-color,#ff444440)}.hover\:shadow-\[inset_0_1px_0_rgba\(0\,217\,255\,0\.2\)\,0_0_12px_rgba\(0\,217\,255\,0\.4\)\,0_2px_8px_rgba\(0\,0\,0\,0\.4\)\]:hover{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#00d9ff33),0 0 12px var(--tw-shadow-color,#00d9ff66),0 2px 8px var(--tw-shadow-color,#0006);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[inset_0_1px_0_rgba\(168\,85\,247\,0\.2\)\,0_0_12px_rgba\(168\,85\,247\,0\.4\)\,0_2px_8px_rgba\(0\,0\,0\,0\.4\)\]:hover{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#a855f733),0 0 12px var(--tw-shadow-color,#a855f766),0 2px 8px var(--tw-shadow-color,#0006);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[inset_0_1px_0_rgba\(255\,68\,68\,0\.2\)\,0_0_12px_rgba\(255\,68\,68\,0\.4\)\,0_2px_8px_rgba\(0\,0\,0\,0\.4\)\]:hover{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#f443),0 0 12px var(--tw-shadow-color,#f446),0 2px 8px var(--tw-shadow-color,#0006);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-glow-cyan:hover{--tw-shadow:0 0 20px var(--tw-shadow-color,#00d9ff4d)}.hover\:shadow-glow-cyan:hover,.hover\:shadow-lg:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 4px 6px var(--tw-shadow-color,#0000001a)}.hover\:shadow-md:hover{--tw-shadow:0 1px 3px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-\[\#00c896\]:focus{border-color:#00c896}.focus\:border-accent-cyan:focus,.focus\:border-accent:focus{border-color:#00d9ff}.focus\:border-accent-cyan\/50:focus{border-color:oklab(81.5968% -.116812 -.0864434/.5)}.focus\:border-accent-purple\/50:focus{border-color:oklab(62.6846% .129701 -.193012/.5)}.focus\:shadow-\[0_0_0_3px_rgba\(0\,217\,255\,0\.1\)\]:focus{--tw-shadow:0 0 0 3px var(--tw-shadow-color,#00d9ff1a)}.focus\:ring-1:focus,.focus\:shadow-\[0_0_0_3px_rgba\(0\,217\,255\,0\.1\)\]:focus{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-accent:focus{--tw-ring-color:#00d9ff}.focus\:ring-accent-cyan\/30:focus{--tw-ring-color:oklab(81.5968% -.116812 -.0864434/.3)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:ring-offset-bg-primary:focus{--tw-ring-offset-color:#0d0d14}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:scale-\[0\.98\]:active{scale:.98}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-bg-hover:disabled{background-color:#ffffff0a}.disabled\:text-text-muted:disabled{color:#606070}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media (hover:hover){.disabled\:hover\:translate-y-0:disabled:hover{--tw-translate-y:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.disabled\:hover\:shadow-none:disabled:hover{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media not all and (min-width:48rem){.max-md\:flex{display:flex}.max-md\:hidden{display:none}.max-md\:w-\[85vw\]{width:85vw}.max-md\:max-w-\[150px\]{max-width:150px}.max-md\:max-w-\[280px\]{max-width:280px}.max-md\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}@media (min-width:40rem){.sm\:ml-0{margin-left:calc(var(--spacing)*0)}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-3{gap:calc(var(--spacing)*3)}}@media (min-width:48rem){.md\:relative{position:relative}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-10{height:calc(var(--spacing)*10)}.md\:h-16{height:calc(var(--spacing)*16)}.md\:h-\[18px\]{height:18px}.md\:w-10{width:calc(var(--spacing)*10)}.md\:w-\[18px\]{width:18px}.md\:w-\[400px\]{width:400px}.md\:max-w-\[500px\]{max-width:500px}.md\:min-w-\[320px\]{min-width:320px}.md\:flex-\[2\]{flex:2}.md\:flex-shrink-0{flex-shrink:0}.md\:translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:gap-4{gap:calc(var(--spacing)*4)}.md\:p-4{padding:calc(var(--spacing)*4)}.md\:p-6{padding:calc(var(--spacing)*6)}.md\:p-8{padding:calc(var(--spacing)*8)}.md\:px-3{padding-inline:calc(var(--spacing)*3)}.md\:px-4{padding-inline:calc(var(--spacing)*4)}.md\:px-6{padding-inline:calc(var(--spacing)*6)}.md\:px-8{padding-inline:calc(var(--spacing)*8)}.md\:py-1\.5{padding-block:calc(var(--spacing)*1.5)}.md\:py-2\.5{padding-block:calc(var(--spacing)*2.5)}.md\:text-lg{font-size:15px;line-height:var(--tw-leading,var(--text-lg--line-height))}.md\:text-sm{font-size:13px;line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-xl{font-size:16px;line-height:var(--tw-leading,var(--text-xl--line-height))}.md\:text-xs{font-size:11px;line-height:var(--tw-leading,var(--text-xs--line-height))}}@media (min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}}.xterm{cursor:text;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm .xterm-cursor-pointer,.xterm.xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::-moz-selection{color:#0000}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:-moz-fit-content;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000)0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000)6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000)6px 0 6px -6px inset}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%}:focus-visible{outline-offset:2px;outline:2px solid #00d9ff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}::-moz-selection{color:#00d9ff;background:#00d9ff26}::selection{color:#00d9ff;background:#00d9ff26}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{opacity:1;box-shadow:0 0 #00d9ff66}50%{opacity:.8;box-shadow:0 0 20px 4px #0000}}
@@ -1 +0,0 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/dashboard-server/metrics.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,KAAK,CAAC;QACpB,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,OAAO,CAAC;QAC5C,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,WAAW,CAAC;IACxC,MAAM,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClE;AAMD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,GACD,YAAY,EAAE,CAmBhB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,iBAAiB,CA0BlG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,KAAK,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,OAAO,CAAC;IAC5C,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC,GACD,cAAc,CAmDhB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,EACF,QAAQ,EAAE,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,EACtC,QAAQ,GAAE,KAAK,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,OAAO,CAAC;IAC5C,YAAY,EAAE,MAAM,CAAC;CACtB,CAAM,GACN,aAAa,CAkBf;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CA0EtE"}