@vellumai/web 0.8.6 → 0.8.7

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 (591) hide show
  1. package/dist/assets/{QueryClientProvider-B6PnMGWJ.js → QueryClientProvider-DP1e6db6.js} +1 -1
  2. package/dist/assets/{about-page-CnlFBAlo.js → about-page-ChuG04vE.js} +1 -1
  3. package/dist/assets/account-page-CrDIY8Z8.js +1 -0
  4. package/dist/assets/{account-shell-CKkPHgS9.js → account-shell-D89t6_Jb.js} +1 -1
  5. package/dist/assets/{add-credits-modal-DBN3IiqI.js → add-credits-modal-B6Gzv2vl.js} +1 -1
  6. package/dist/assets/{advanced-page-D4WM0z2t.js → advanced-page-DA4ak2EO.js} +1 -1
  7. package/dist/assets/ai-page-Ct5PY8Hr.js +1 -0
  8. package/dist/assets/{angular-html-BNkT9eyS.js → angular-html-e7Q9Y5Gf.js} +1 -1
  9. package/dist/assets/{angular-ts-BDnVtklc.js → angular-ts-BP7VFCBR.js} +1 -1
  10. package/dist/assets/api-B_OFJX14.js +39 -0
  11. package/dist/assets/{api-errors-Cb5XX5_j.js → api-errors-BjIRwVX0.js} +1 -1
  12. package/dist/assets/api-key-screen-BOpLfokX.js +1 -0
  13. package/dist/assets/{apl-Cvfre3ur.js → apl-DwI9Wj1u.js} +1 -1
  14. package/dist/assets/{app-html-cache-CJYf8NER.js → app-html-cache-B6cw162I.js} +1 -1
  15. package/dist/assets/archive-page-rrkQVTUx.js +1 -0
  16. package/dist/assets/arrow-up-C7lv4fdd.js +1 -0
  17. package/dist/assets/assistant-feature-flag-store-eFzXnt31.js +1 -0
  18. package/dist/assets/{assistant-identity-store-BV4ukE7H.js → assistant-identity-store-BKqRKOLL.js} +1 -1
  19. package/dist/assets/assistant-status-panel-BhVNBjrt.js +1 -0
  20. package/dist/assets/{astro-jLJZU875.js → astro-BCmlqefZ.js} +1 -1
  21. package/dist/assets/auth-store-Cr7BV6KS.js +1 -0
  22. package/dist/assets/avatar-api-DUkiMcWB.js +1 -0
  23. package/dist/assets/billing-page-DlfvE46V.js +34 -0
  24. package/dist/assets/{blade-wilAfCxp.js → blade-C_oa1rmO.js} +1 -1
  25. package/dist/assets/{book-open-hfriGSXm.js → book-open-Yb24-Bn6.js} +1 -1
  26. package/dist/assets/{bsl-BWfsS9fN.js → bsl-MxsMKDUZ.js} +1 -1
  27. package/dist/assets/button-ClCfFgUi.js +1 -0
  28. package/dist/assets/{cairo-uikTSnm5.js → cairo-4CIrzX_p.js} +1 -1
  29. package/dist/assets/{calendar-DuFqXuuD.js → calendar-ClcXPhg5.js} +1 -1
  30. package/dist/assets/capture-error-DJfWcKOd.js +1 -0
  31. package/dist/assets/card-BPyEFYCf.js +1 -0
  32. package/dist/assets/check-eRDPqo7D.js +1 -0
  33. package/dist/assets/checkbox-8ce6mjOk.js +1 -0
  34. package/dist/assets/{chevron-up-Bo3-OB-v.js → chevron-up-DQhwayvc.js} +1 -1
  35. package/dist/assets/cn-T5lqoG0E.js +1 -0
  36. package/dist/assets/{cobol-CIiUbggr.js → cobol-ClCfxb2U.js} +1 -1
  37. package/dist/assets/{coffee-CEYJB2K9.js → coffee-waI6gGUD.js} +1 -1
  38. package/dist/assets/command-palette-DFEQaGPU.js +1 -0
  39. package/dist/assets/community-page-bfjkRAbY.js +1 -0
  40. package/dist/assets/confirm-dialog-BGK9Zfu-.js +1 -0
  41. package/dist/assets/connect-page-BxfTgDKB.js +1 -0
  42. package/dist/assets/contacts-gateway-BT27BDPK.js +1 -0
  43. package/dist/assets/contacts-page-route-BM53qHul.js +1 -0
  44. package/dist/assets/{cpp-mde4ZU9c.js → cpp-CCQmmJ0h.js} +1 -1
  45. package/dist/assets/createLucideIcon-BAqBudC8.js +1 -0
  46. package/dist/assets/{crystal-DvUAeN8f.js → crystal-DB9hO8um.js} +1 -1
  47. package/dist/assets/danger-zone-redirect-page-QYFHTivZ.js +1 -0
  48. package/dist/assets/debug-page-C21JjoV7.js +3 -0
  49. package/dist/assets/deploy-dialogs-DL4SFMh3.js +1 -0
  50. package/dist/assets/{detail-card-XLnEy7rv.js → detail-card-akwfTEr9.js} +1 -1
  51. package/dist/assets/developer-page-C7FApaMa.js +1 -0
  52. package/dist/assets/{devices-page-N4kBGW8N.js → devices-page-C_sa7TuZ.js} +1 -1
  53. package/dist/assets/dist-CMQ63vRL.js +45 -0
  54. package/dist/assets/{dist-Cu3p6ULF.js → dist-DBf_097z.js} +3 -3
  55. package/dist/assets/dist-DrxUCrOq.js +1 -0
  56. package/dist/assets/document-viewer-page-B8z3ETHr.js +1 -0
  57. package/dist/assets/{dollar-sign-CrzJnMOM.js → dollar-sign-C0LV31Sq.js} +1 -1
  58. package/dist/assets/{domain-field-KsEz6xZI.js → domain-field-4zEEJoAw.js} +1 -1
  59. package/dist/assets/dropdown-B1HIMQEV.js +1 -0
  60. package/dist/assets/{edge-BOBmGDxF.js → edge-CETRZUcp.js} +1 -1
  61. package/dist/assets/{elixir-DUPuwEVX.js → elixir-CN6m0Ao0.js} +1 -1
  62. package/dist/assets/{ellipsis-vertical-BEukgUyo.js → ellipsis-vertical-m9z0V1U7.js} +1 -1
  63. package/dist/assets/{elm-5TzY042r.js → elm-BDWy6048.js} +1 -1
  64. package/dist/assets/{emails-page-C22gGUAv.js → emails-page-CVjBHCVU.js} +1 -1
  65. package/dist/assets/{erb-Dme7vl56.js → erb-BUWfCQdK.js} +1 -1
  66. package/dist/assets/{erlang-qP3U3mvq.js → erlang-DeG0-QwJ.js} +1 -1
  67. package/dist/assets/{esm-DxV3a7UZ.js → esm-BXX1q_EH.js} +2 -2
  68. package/dist/assets/esm-BxOT_Vkd.js +2 -0
  69. package/dist/assets/esm-CUmIxxMD.js +2 -0
  70. package/dist/assets/esm-CkwULMW-.js +2 -0
  71. package/dist/assets/esm-Dn1onJZ6.js +2 -0
  72. package/dist/assets/event-bus-B7MjXE2j.js +1 -0
  73. package/dist/assets/{external-link-BzN68Baf.js → external-link-dAVFCT-x.js} +1 -1
  74. package/dist/assets/feature-flag-catalog-CQJyyF9F.js +1 -0
  75. package/dist/assets/{file-markdown-BeBUXXva.js → file-markdown-C_CDJ8On.js} +1 -1
  76. package/dist/assets/{fortran-fixed-form-D0yi1x_F.js → fortran-fixed-form-CK5VRJNd.js} +1 -1
  77. package/dist/assets/{fsharp-DC4DLJa3.js → fsharp-TVVgzHWp.js} +1 -1
  78. package/dist/assets/{gdresource-CK0esNja.js → gdresource-DiUcyewI.js} +1 -1
  79. package/dist/assets/general-page-C-XDI8b1.js +1 -0
  80. package/dist/assets/{git-commit-CtQrm65C.js → git-commit-CfOruFrg.js} +1 -1
  81. package/dist/assets/{git-rebase-BEYA8QIR.js → git-rebase-DVfXzZgT.js} +1 -1
  82. package/dist/assets/{glimmer-js-DK_nUSGb.js → glimmer-js-D_KYXH1l.js} +1 -1
  83. package/dist/assets/{glimmer-ts-CfPJjfB9.js → glimmer-ts-rX-yI_50.js} +1 -1
  84. package/dist/assets/{globe-wFgNRLYC.js → globe-BylK8Ede.js} +1 -1
  85. package/dist/assets/{glsl-BLTb4pw5.js → glsl-Bk5GBs9i.js} +1 -1
  86. package/dist/assets/{graphql-Dmm8h7KV.js → graphql-CYihpPzI.js} +1 -1
  87. package/dist/assets/{hack-CE-G0PM6.js → hack-D7vPOOKP.js} +1 -1
  88. package/dist/assets/{haml-X4fw6GmH.js → haml-Cq6p2VV6.js} +1 -1
  89. package/dist/assets/{handlebars-rJYAy9gV.js → handlebars-BMWyPVCo.js} +1 -1
  90. package/dist/assets/hatching-screen-CQMiP_YZ.js +1 -0
  91. package/dist/assets/home-page-route-BV48SfuZ.js +1 -0
  92. package/dist/assets/hosting-screen-B7vnlrdx.js +1 -0
  93. package/dist/assets/{html-BJ9sAXe_.js → html-0Gesqw-D.js} +1 -1
  94. package/dist/assets/{html-derivative-Bysi4tv4.js → html-derivative-SbSqYEHY.js} +1 -1
  95. package/dist/assets/{http-BS7Jqdgv.js → http-C0YA5Ah8.js} +1 -1
  96. package/dist/assets/{hurl-_C9yb954.js → hurl-DUL8X9Rx.js} +1 -1
  97. package/dist/assets/{hxml-DqH_d5Aw.js → hxml-40zZ1t4x.js} +1 -1
  98. package/dist/assets/identity-page-route-DaFpXmRM.js +1 -0
  99. package/dist/assets/index-2iJiOJAP.css +2 -0
  100. package/dist/assets/index-DfyO29JM.js +124 -0
  101. package/dist/assets/input-D3ItuUML.js +1 -0
  102. package/dist/assets/{inspect-page-CkllaIUi.js → inspect-page-BRHBywRp.js} +2 -2
  103. package/dist/assets/install-Boxb6bXU.js +1 -0
  104. package/dist/assets/integrations-page-DKaUYB6U.js +1 -0
  105. package/dist/assets/intelligence-layout-Yx83VhoZ.js +1 -0
  106. package/dist/assets/{jinja-kFAIX1rC.js → jinja-BVqbVU68.js} +1 -1
  107. package/dist/assets/{jison-efOvWr8V.js → jison-xwFSCLKt.js} +1 -1
  108. package/dist/assets/{julia-DpX7Fjmm.js → julia-DdLFwKHG.js} +1 -1
  109. package/dist/assets/{just-IdY1z9FD.js → just-C2nSWwTJ.js} +1 -1
  110. package/dist/assets/{latex-9FXC3ncb.js → latex-DQ-PIViI.js} +1 -1
  111. package/dist/assets/{lib-KV3M-JnZ.js → lib-DHNpmqO3.js} +1 -1
  112. package/dist/assets/library-detail-page-DUU9C5Qc.js +1 -0
  113. package/dist/assets/library-page-BUn0-GJS.js +1 -0
  114. package/dist/assets/{link-2-8I3QXA-n.js → link-2-Diy8IM6e.js} +1 -1
  115. package/dist/assets/{liquid-Dmd--mKG.js → liquid-DMN0MxFW.js} +1 -1
  116. package/dist/assets/loader-circle-DnYn_L1c.js +1 -0
  117. package/dist/assets/local-mode-BF1E-bwb.js +1 -0
  118. package/dist/assets/{login-flow-C1czXxt_.js → login-flow-Dc8bcgq7.js} +1 -1
  119. package/dist/assets/login-page-9B3yYAYY.js +1 -0
  120. package/dist/assets/logout-page-BenaprLt.js +1 -0
  121. package/dist/assets/logs-layout-CtOMkt-f.js +1 -0
  122. package/dist/assets/loopback-auth-jEbLJO6M.js +1 -0
  123. package/dist/assets/{lua-B9l8P4B3.js → lua-OvVIPbKk.js} +1 -1
  124. package/dist/assets/{marko-BLKIGWCO.js → marko-tY59QFbN.js} +1 -1
  125. package/dist/assets/{mdc-DqnMcfsN.js → mdc-BDW020Pz.js} +1 -1
  126. package/dist/assets/memory-router-playground-page-B7rYBJ8e.js +3 -0
  127. package/dist/assets/menu-CSSUEe4d.js +1 -0
  128. package/dist/assets/{misc-CBjwzlgT.js → misc-C66f1jHd.js} +1 -1
  129. package/dist/assets/{mobile-sidebar-drawer-C6Gyr33c.js → mobile-sidebar-drawer-DDDsJtIP.js} +1 -1
  130. package/dist/assets/modal-DnazB3IX.js +1 -0
  131. package/dist/assets/{native-biometric-D17G0wwQ.js → native-biometric-COiHDjMB.js} +1 -1
  132. package/dist/assets/{native-file-DH3T-Yy4.js → native-file-CiPiCLx5.js} +2 -2
  133. package/dist/assets/{nextflow-D6uJA-4H.js → nextflow-B1xq2O8L.js} +1 -1
  134. package/dist/assets/{nginx-DpJLfokZ.js → nginx-DtkpnFEQ.js} +1 -1
  135. package/dist/assets/{nim-BhJPviH3.js → nim-CzTHLol-.js} +1 -1
  136. package/dist/assets/notice-BD9CxrUF.js +1 -0
  137. package/dist/assets/notifications-page-DYD5Qw5v.js +1 -0
  138. package/dist/assets/{oauth-complete-page-Yae_ACRB.js → oauth-complete-page-DMXoApPv.js} +1 -1
  139. package/dist/assets/{oauth-popup-complete-page-DIxZ73Tq.js → oauth-popup-complete-page-BQ1l7eNw.js} +1 -1
  140. package/dist/assets/{octagon-x-DgCpvPRH.js → octagon-x-BDjrCKCI.js} +1 -1
  141. package/dist/assets/onboarding-layout-I064mpdZ.js +1 -0
  142. package/dist/assets/{page-shell-2Pocdjh8.js → page-shell-h1ccSMCk.js} +1 -1
  143. package/dist/assets/panel-item-D-eNLUtf.js +1 -0
  144. package/dist/assets/password-reset-page-D4OsnJgN.js +1 -0
  145. package/dist/assets/{pdf-BUHzSUqO.js → pdf-CVDqR2tF.js} +1 -1
  146. package/dist/assets/{pencil-rsHfEBVu.js → pencil-CwqXcyAU.js} +1 -1
  147. package/dist/assets/{perl-C94Kq8Vf.js → perl-B4xHwQjG.js} +1 -1
  148. package/dist/assets/{php-BjvEifTN.js → php-DT-qH75v.js} +1 -1
  149. package/dist/assets/platform-loopback-page-Bcw-uCmy.js +1 -0
  150. package/dist/assets/plugins-page-CVwuk_Fh.js +1 -0
  151. package/dist/assets/portal-container-BfngoKcF.js +1 -0
  152. package/dist/assets/pre-chat-flow-DYzXzK6N.js +1 -0
  153. package/dist/assets/prefs-DV0vPCU6.js +1 -0
  154. package/dist/assets/privacy-page-DgEucH63.js +1 -0
  155. package/dist/assets/privacy-screen-fvwKbeYH.js +1 -0
  156. package/dist/assets/progress-bar-DAf2e6k7.js +1 -0
  157. package/dist/assets/provider-callback-page-CmOAHlCe.js +1 -0
  158. package/dist/assets/provider-key-D3C96Ui0.js +1 -0
  159. package/dist/assets/{provider-signup-page-DR57-8of.js → provider-signup-page-Dc2rsF00.js} +1 -1
  160. package/dist/assets/{pug-Bes6CgOS.js → pug-9GW60ez3.js} +1 -1
  161. package/dist/assets/{qml-Br-eozzh.js → qml-bVARLFyV.js} +1 -1
  162. package/dist/assets/query-tags-Dvidg_LC.js +1 -0
  163. package/dist/assets/{razor-CI0vZK4x.js → razor-X0suMNF3.js} +1 -1
  164. package/dist/assets/react-query.gen-C_ukJxaR.js +1 -0
  165. package/dist/assets/{react-query.gen-CaeZaVZK.js → react-query.gen-DHIrHqEw.js} +1 -1
  166. package/dist/assets/{resize-errors-CVxnnl9j.js → resize-errors-C3PO9ann.js} +1 -1
  167. package/dist/assets/routes-CkBoiJow.js +1 -0
  168. package/dist/assets/{rst-gAYJ4hB7.js → rst-D-lNIQCa.js} +1 -1
  169. package/dist/assets/{ruby-wkizT7Hc.js → ruby-26UZxWDm.js} +1 -1
  170. package/dist/assets/{sas-BOBTpuDj.js → sas-CBE_UuH6.js} +1 -1
  171. package/dist/assets/{save-dqBojVBU.js → save-D3FGsinv.js} +1 -1
  172. package/dist/assets/schedules-page-Dt3CLJAa.js +1 -0
  173. package/dist/assets/{scss-D4rXmeJf.js → scss-ClgdEoXG.js} +1 -1
  174. package/dist/assets/{sdk.gen-ONnYjEkg.js → sdk.gen-1S-e52M3.js} +1 -1
  175. package/dist/assets/sdk.gen-COjGLNMd.js +6 -0
  176. package/dist/assets/selection-store-DOnhFieO.js +1 -0
  177. package/dist/assets/settings-layout-C3paQQd5.js +1 -0
  178. package/dist/assets/{shaderlab-1WaRBvWr.js → shaderlab-mLnpMpN3.js} +1 -1
  179. package/dist/assets/share-feedback-modal-BWQiSujT.js +1 -0
  180. package/dist/assets/{shellsession-CHvhGC18.js → shellsession-BKKk1SwW.js} +1 -1
  181. package/dist/assets/{sidebar-tree-B_R8bNLb.js → sidebar-tree-DfHTF15s.js} +1 -1
  182. package/dist/assets/{signup-page-Bw5wdYLf.js → signup-page-B2t4c1d5.js} +1 -1
  183. package/dist/assets/skills-page-ttnkr0rG.js +1 -0
  184. package/dist/assets/sounds-page-CHFdpMOV.js +1 -0
  185. package/dist/assets/{soy-CC4jhDb2.js → soy-CXP3FecH.js} +1 -1
  186. package/dist/assets/{sparql-D35QugD4.js → sparql-tQHB50VD.js} +1 -1
  187. package/dist/assets/{src-kyqznrcv.js → src-DDKMtkUH.js} +39 -38
  188. package/dist/assets/stat-square-2U4ZsWYG.js +1 -0
  189. package/dist/assets/{stata-CGSSTS3B.js → stata-gI3uZdJO.js} +1 -1
  190. package/dist/assets/{step-indicator-dots-HcCBE3eb.js → step-indicator-dots-D3uPz_Wt.js} +1 -1
  191. package/dist/assets/{subagent-detail-panel-DLYXaUCC.js → subagent-detail-panel-Dn212XIu.js} +2 -2
  192. package/dist/assets/{surrealql-BdswqyEk.js → surrealql-BAt-qB2q.js} +1 -1
  193. package/dist/assets/{svelte-MSsWfmYM.js → svelte-_sN3XHz9.js} +1 -1
  194. package/dist/assets/{system-events-page-DdDTzp8J.js → system-events-page-BzrGm2BJ.js} +1 -1
  195. package/dist/assets/system-events-redirect-page-CSzUi8Rq.js +1 -0
  196. package/dist/assets/tag-DI4G1_a6.js +1 -0
  197. package/dist/assets/{target-BxPTyI8x.js → target-Bu6hUmcU.js} +1 -1
  198. package/dist/assets/{templ-BarTQ1Ke.js → templ-DarSKCU_.js} +1 -1
  199. package/dist/assets/{tex-CFh-xGZ2.js → tex-C_1xF61R.js} +1 -1
  200. package/dist/assets/{tiptap-document-editor-Bj7lmYZq.js → tiptap-document-editor-8uu7m7VU.js} +3 -3
  201. package/dist/assets/toast-VQEhJ0eG.js +1 -0
  202. package/dist/assets/toggle-DnsgdQ9b.js +1 -0
  203. package/dist/assets/{tool-detail-panel-CRHrxhJk.js → tool-detail-panel-Bm-I_Sg7.js} +1 -1
  204. package/dist/assets/trace-page-Dy7jGi6u.js +1 -0
  205. package/dist/assets/{ts-tags-BbyYMTDf.js → ts-tags-BW1K_uvA.js} +1 -1
  206. package/dist/assets/{twig-DVqAieqO.js → twig-D6-NX1lk.js} +1 -1
  207. package/dist/assets/typography-C2ZUvvBk.js +1 -0
  208. package/dist/assets/upgrade-cancel-page-DzKb2rHo.js +1 -0
  209. package/dist/assets/upgrade-success-page-BWo7L3dH.js +1 -0
  210. package/dist/assets/usage-page-CoskbMKy.js +1 -0
  211. package/dist/assets/use-active-assistant-id-CAZ9yruQ.js +1 -0
  212. package/dist/assets/use-current-platform-assistant-IoT7tVk6.js +1 -0
  213. package/dist/assets/use-debounced-value-6KVCjO4p.js +1 -0
  214. package/dist/assets/{use-oauth-complete-deep-link-listener-ChUbzwXg.js → use-oauth-complete-deep-link-listener-BdgRkEuE.js} +1 -1
  215. package/dist/assets/{use-reduced-motion-C44fEWVQ.js → use-reduced-motion-BgUzX4N9.js} +1 -1
  216. package/dist/assets/{useMutation-Cq8DErPD.js → useMutation-DiUMH3gL.js} +1 -1
  217. package/dist/assets/{useQuery-DQMwUXEx.js → useQuery-CrONYg8_.js} +1 -1
  218. package/dist/assets/utils-SlAPWJfm.js +1 -0
  219. package/dist/assets/{voice-page-gNQLbCww.js → voice-page-lILDcrkB.js} +1 -1
  220. package/dist/assets/{vue-ZcyTzC7t.js → vue-CH8917up.js} +1 -1
  221. package/dist/assets/{vue-html-BwbWezq9.js → vue-html-DAE_vUrO.js} +1 -1
  222. package/dist/assets/{vue-vine-ie3wWKPT.js → vue-vine-CwkqX4-H.js} +1 -1
  223. package/dist/assets/{wand-sparkles-C7VKsA2r.js → wand-sparkles-Bm4VWjaY.js} +1 -1
  224. package/dist/assets/{weather-forecast-display-AStDyQ3C.js → weather-forecast-display-DxJH81B2.js} +1 -1
  225. package/dist/assets/{web-D8J6gL8c.js → web-BJvfEnmz.js} +1 -1
  226. package/dist/assets/{web-MvGEGUgv.js → web-BlDUhn8s.js} +1 -1
  227. package/dist/assets/{web-DEF_PvZf.js → web-BmuiGnlM.js} +1 -1
  228. package/dist/assets/{web-DlXZWSqt.js → web-CNnkyiJU.js} +1 -1
  229. package/dist/assets/{web-gAwEO0jl.js → web-D3bAy1EX.js} +1 -1
  230. package/dist/assets/{web-C0UeTCAq.js → web-DYZNxiAf.js} +1 -1
  231. package/dist/assets/{web-BJFOKMLV.js → web-DvrlWSfM.js} +1 -1
  232. package/dist/assets/welcome-screen-fMQ3U9V8.js +1 -0
  233. package/dist/assets/workspace-page-C0PJjA84.js +1 -0
  234. package/dist/assets/x-BgvySeHo.js +1 -0
  235. package/dist/assets/x-JZSbA73X.js +1 -0
  236. package/dist/assets/{xml-D9pOU8XJ.js → xml-ClVI3Y-V.js} +1 -1
  237. package/dist/assets/{xsl-BcbVml5f.js → xsl-fuT90Jp2.js} +1 -1
  238. package/dist/index.html +73 -68
  239. package/package.json +3 -109
  240. package/dist/assets/account-page-DZ08DwDd.js +0 -1
  241. package/dist/assets/ai-page-BfQitl93.js +0 -1
  242. package/dist/assets/api-DbR15MBi.js +0 -1
  243. package/dist/assets/archive-page-BLEve1DA.js +0 -1
  244. package/dist/assets/arrow-up-yLYY3n8J.js +0 -1
  245. package/dist/assets/assistant-status-panel-DdVjK_zY.js +0 -1
  246. package/dist/assets/auth-store-B6yNvrw4.js +0 -1
  247. package/dist/assets/avatar-api-CIOvIRtJ.js +0 -1
  248. package/dist/assets/billing-page-CHX3U91U.js +0 -34
  249. package/dist/assets/button-aAWi2gw6.js +0 -1
  250. package/dist/assets/card-CaVHvRGL.js +0 -1
  251. package/dist/assets/check-BFZgpbzl.js +0 -1
  252. package/dist/assets/checkbox-BT0BEiJ_.js +0 -1
  253. package/dist/assets/client-CxU24LyV.js +0 -1
  254. package/dist/assets/cn-B70VuHjM.js +0 -1
  255. package/dist/assets/command-palette-PBnYsqsq.js +0 -1
  256. package/dist/assets/community-page-F488D9ad.js +0 -1
  257. package/dist/assets/connect-page-BuLQWuNT.js +0 -1
  258. package/dist/assets/contacts-page-route-B_b4lEcp.js +0 -1
  259. package/dist/assets/createLucideIcon-CeYGTD1f.js +0 -1
  260. package/dist/assets/danger-zone-redirect-page-C2oVQP1D.js +0 -1
  261. package/dist/assets/debug-page-D6h6VUQe.js +0 -3
  262. package/dist/assets/deploy-dialogs-Bv1QJrTq.js +0 -1
  263. package/dist/assets/developer-page-0nBXlNRW.js +0 -1
  264. package/dist/assets/dist-CTD_Ut2j.js +0 -45
  265. package/dist/assets/dist-DwtfUqIl.js +0 -1
  266. package/dist/assets/document-viewer-page-BGPZ66Xt.js +0 -1
  267. package/dist/assets/dropdown-C8OVNOei.js +0 -1
  268. package/dist/assets/error-report-sc-aicjG.js +0 -1
  269. package/dist/assets/esm-BVjuoASL.js +0 -2
  270. package/dist/assets/esm-BbhMzrwe.js +0 -2
  271. package/dist/assets/esm-CsGTlVMU.js +0 -2
  272. package/dist/assets/esm-DBgkZZR_.js +0 -2
  273. package/dist/assets/event-bus-store-BE6deqo9.js +0 -1
  274. package/dist/assets/feature-flag-catalog-JWwXDw7v.js +0 -1
  275. package/dist/assets/general-page-D9RIl6J5.js +0 -1
  276. package/dist/assets/hatching-screen-gO2HHyic.js +0 -1
  277. package/dist/assets/home-page-route-fnsklykY.js +0 -1
  278. package/dist/assets/hosting-screen-B5nQ8yuX.js +0 -1
  279. package/dist/assets/identity-page-route-BA650DxB.js +0 -1
  280. package/dist/assets/index-D6-nsIUa.js +0 -160
  281. package/dist/assets/index-jvwn-vUC.css +0 -2
  282. package/dist/assets/input-DMJDsLW2.js +0 -1
  283. package/dist/assets/integrations-page-Jw4FUhet.js +0 -1
  284. package/dist/assets/intelligence-layout-zCvScYek.js +0 -1
  285. package/dist/assets/library-detail-page-Bf5UPSVB.js +0 -1
  286. package/dist/assets/library-page-WKkVYmYF.js +0 -1
  287. package/dist/assets/loader-circle-DfyYkLlZ.js +0 -1
  288. package/dist/assets/local-mode-DTyhlxIJ.js +0 -1
  289. package/dist/assets/login-page-Bs98MBVV.js +0 -1
  290. package/dist/assets/logout-page-B-cqUfTT.js +0 -1
  291. package/dist/assets/logs-layout-CJqMV8_W.js +0 -1
  292. package/dist/assets/memory-router-playground-page-CHa4g1Wq.js +0 -3
  293. package/dist/assets/middleware-DJdXCbpc.js +0 -1
  294. package/dist/assets/modal-BhjmOSWp.js +0 -1
  295. package/dist/assets/notice-C9Zmf-rY.js +0 -1
  296. package/dist/assets/notifications-page-DbC865Ee.js +0 -1
  297. package/dist/assets/onboarding-layout-CWG_GDpU.js +0 -1
  298. package/dist/assets/panel-item-CH4BnWiy.js +0 -1
  299. package/dist/assets/password-reset-page-B421l998.js +0 -1
  300. package/dist/assets/plugins-page-KBZxx4RX.js +0 -1
  301. package/dist/assets/portal-container-T4u-kJy6.js +0 -1
  302. package/dist/assets/pre-chat-flow--eyTMO3O.js +0 -1
  303. package/dist/assets/prefs-DBzVLQNO.js +0 -1
  304. package/dist/assets/privacy-page-nfKw-hpQ.js +0 -1
  305. package/dist/assets/privacy-screen-dPprxJBH.js +0 -1
  306. package/dist/assets/progress-bar-BpNHPD3g.js +0 -1
  307. package/dist/assets/provider-callback-page-BgDcw9wR.js +0 -1
  308. package/dist/assets/query-tags-CuHlkyMo.js +0 -1
  309. package/dist/assets/react-dom-CuYvR46t.js +0 -1
  310. package/dist/assets/react-query.gen-C9LHPeRr.js +0 -1
  311. package/dist/assets/routes-Bc63mRsk.js +0 -1
  312. package/dist/assets/schedules-page-CwAYzq9f.js +0 -1
  313. package/dist/assets/sdk.gen-CpEhy2hU.js +0 -6
  314. package/dist/assets/settings-layout-B-gZsVPl.js +0 -1
  315. package/dist/assets/share-feedback-modal-DTruEHXl.js +0 -1
  316. package/dist/assets/skill-detail-DJAAupq5.js +0 -1
  317. package/dist/assets/skills-page-CFXPf98E.js +0 -1
  318. package/dist/assets/sounds-page-DTaMvwZR.js +0 -1
  319. package/dist/assets/stat-square-C4k7AFbD.js +0 -1
  320. package/dist/assets/system-events-redirect-page-CVMCk5Ug.js +0 -1
  321. package/dist/assets/tag-Bq7LZ7NN.js +0 -1
  322. package/dist/assets/toast-BRhiclkk.js +0 -1
  323. package/dist/assets/toggle-Ba6zbjWC.js +0 -1
  324. package/dist/assets/trace-page-CRobJzr1.js +0 -1
  325. package/dist/assets/typography-X3i-p9De.js +0 -1
  326. package/dist/assets/upgrade-cancel-page-DX66i0gg.js +0 -1
  327. package/dist/assets/upgrade-success-page-192bn-iX.js +0 -1
  328. package/dist/assets/usage-page-DB_MUKAx.js +0 -1
  329. package/dist/assets/use-active-assistant-id-BNTrFfbP.js +0 -1
  330. package/dist/assets/use-current-platform-assistant-BSNVkqHJ.js +0 -1
  331. package/dist/assets/welcome-screen-CIlYxrxN.js +0 -1
  332. package/dist/assets/workspace-page-7df9edRz.js +0 -1
  333. package/dist/assets/x-D9hhnMwf.js +0 -1
  334. package/dist/assets/x-x84-Y-pw.js +0 -1
  335. /package/dist/assets/{abap-DNUpiG8A.js → abap-Cjj2olMr.js} +0 -0
  336. /package/dist/assets/{actionscript-3-Bo2fXZ6X.js → actionscript-3-DCkW7kWC.js} +0 -0
  337. /package/dist/assets/{ada-CX4zIdvl.js → ada-AEWvZXuX.js} +0 -0
  338. /package/dist/assets/{andromeeda-DRyK6uS2.js → andromeeda-D7cSpME6.js} +0 -0
  339. /package/dist/assets/{apache-Df13Lvky.js → apache-DjvX0RSe.js} +0 -0
  340. /package/dist/assets/{apex-Chnf7MTn.js → apex-70xIZ0pH.js} +0 -0
  341. /package/dist/assets/{applescript-Ctc_PVwP.js → applescript-C3qKqxmA.js} +0 -0
  342. /package/dist/assets/{ara-8aWxaf_S.js → ara-iGt2zixk.js} +0 -0
  343. /package/dist/assets/{asciidoc-DT2KgubG.js → asciidoc-Bs2t-06W.js} +0 -0
  344. /package/dist/assets/{asm-vqnSgROr.js → asm-B-T0eqhE.js} +0 -0
  345. /package/dist/assets/{aurora-x-CTu0bZlN.js → aurora-x-D3h_9M3E.js} +0 -0
  346. /package/dist/assets/{avatar-bundled-components-B4Qvdjm-.js → avatar-bundled-components-CGiGgg87.js} +0 -0
  347. /package/dist/assets/{avatar-svg-compositor-B7_Irzdj.js → avatar-svg-compositor-DTokNF3h.js} +0 -0
  348. /package/dist/assets/{awk-BLYIprkI.js → awk-CZwfwpPi.js} +0 -0
  349. /package/dist/assets/{ayu-dark-C1nqQ7ZO.js → ayu-dark-DulkglEA.js} +0 -0
  350. /package/dist/assets/{ayu-light-CcUJeQaT.js → ayu-light-DyNQiRpn.js} +0 -0
  351. /package/dist/assets/{ayu-mirage-IZ3AFYVd.js → ayu-mirage-CcEt4xkI.js} +0 -0
  352. /package/dist/assets/{ballerina-DIr0Mnnk.js → ballerina-OhQPjyHS.js} +0 -0
  353. /package/dist/assets/{bat-CpUMzNgl.js → bat-DqKcJTUn.js} +0 -0
  354. /package/dist/assets/{beancount-BobOo5zN.js → beancount-BdXlMi8T.js} +0 -0
  355. /package/dist/assets/{berry-Ccgj4CiA.js → berry-DvgY6BkY.js} +0 -0
  356. /package/dist/assets/{bibtex-CVITMyxL.js → bibtex-BSRJq0yM.js} +0 -0
  357. /package/dist/assets/{bicep-C4egU_bX.js → bicep-DpAdumKt.js} +0 -0
  358. /package/dist/assets/{bird2-CYfTnGm_.js → bird2-rlbtp8di.js} +0 -0
  359. /package/dist/assets/{c-DZ6nPbF_.js → c-BbxWH2Eo.js} +0 -0
  360. /package/dist/assets/{c3-Bm97WyY3.js → c3-DqIXz4Ia.js} +0 -0
  361. /package/dist/assets/{cadence-Bl3iDFGB.js → cadence-DAJtUpOE.js} +0 -0
  362. /package/dist/assets/{catppuccin-frappe-BicMddtJ.js → catppuccin-frappe-DUPoeZfb.js} +0 -0
  363. /package/dist/assets/{catppuccin-latte-B-eVCkn1.js → catppuccin-latte-CK3U68Ql.js} +0 -0
  364. /package/dist/assets/{catppuccin-macchiato-CJEhjVZk.js → catppuccin-macchiato-BzteLnIX.js} +0 -0
  365. /package/dist/assets/{catppuccin-mocha-VLn722eu.js → catppuccin-mocha-ozLd0aBR.js} +0 -0
  366. /package/dist/assets/{clarity-BzEOBBx4.js → clarity-6KqEoBfz.js} +0 -0
  367. /package/dist/assets/{client.gen-ywbejrz1.js → client.gen-D2FNzKQM.js} +0 -0
  368. /package/dist/assets/{clojure-nX7NgSDb.js → clojure-B_uBL5C7.js} +0 -0
  369. /package/dist/assets/{clsx-DhcQR1oF.js → clsx-grcm2PBd.js} +0 -0
  370. /package/dist/assets/{cmake-CEeIa3iP.js → cmake-B3nxBNmj.js} +0 -0
  371. /package/dist/assets/{codeowners-BP42p7Bn.js → codeowners-DkS-51at.js} +0 -0
  372. /package/dist/assets/{codeql-DE7I523g.js → codeql-rpr1z_mR.js} +0 -0
  373. /package/dist/assets/{common-lisp-Dvijln0X.js → common-lisp-BfNbv_W6.js} +0 -0
  374. /package/dist/assets/{coq-p4_rGKEV.js → coq-EAW-1nw0.js} +0 -0
  375. /package/dist/assets/{create-selectors-Bi35YIGD.js → create-selectors-CNBhdpCN.js} +0 -0
  376. /package/dist/assets/{createLucideIcon-C9oV_FLv.js → createLucideIcon-B1Lebfcn.js} +0 -0
  377. /package/dist/assets/{csharp-D1-Vrrzm.js → csharp-BE3Gn5bq.js} +0 -0
  378. /package/dist/assets/{css-C0lcjSm8.js → css-BdYQVA4T.js} +0 -0
  379. /package/dist/assets/{csv-GH5M7Aoj.js → csv-B5VtaPtH.js} +0 -0
  380. /package/dist/assets/{cue-D7vDT7xE.js → cue-jm6lYNrx.js} +0 -0
  381. /package/dist/assets/{cypher-BF-7MPbx.js → cypher-DXkvK-pn.js} +0 -0
  382. /package/dist/assets/{d-DcsICAjO.js → d-CgG1_yzd.js} +0 -0
  383. /package/dist/assets/{dark-plus-Cal9Cy_n.js → dark-plus-CALzcIVB.js} +0 -0
  384. /package/dist/assets/{dart-DPfMdfDn.js → dart-BEVoLlWg.js} +0 -0
  385. /package/dist/assets/{dax-BDcxvPW6.js → dax-H0BW3Q_P.js} +0 -0
  386. /package/dist/assets/{definitions-gMlRm8A_.js → definitions-BW9hy2QG.js} +0 -0
  387. /package/dist/assets/{desktop-DmetOriX.js → desktop-BtYq1l_0.js} +0 -0
  388. /package/dist/assets/{diff-BTv5s55n.js → diff-CnBYdfTg.js} +0 -0
  389. /package/dist/assets/{dist-Cz1Xi5ZX.js → dist-KWOsn0v8.js} +0 -0
  390. /package/dist/assets/{docker-B84PvePO.js → docker-COBitpld.js} +0 -0
  391. /package/dist/assets/{dotenv-CM30jnus.js → dotenv-CG0x1m7c.js} +0 -0
  392. /package/dist/assets/{dracula-tOsQSJSR.js → dracula-CLCi47X-.js} +0 -0
  393. /package/dist/assets/{dracula-soft-ortSsJzr.js → dracula-soft-BMv5cCAV.js} +0 -0
  394. /package/dist/assets/{dream-maker-BMXKWh7r.js → dream-maker-1Bd4OSww.js} +0 -0
  395. /package/dist/assets/{emacs-lisp-I4D2eRgr.js → emacs-lisp-B-2zKLn-.js} +0 -0
  396. /package/dist/assets/{emoji-catalog-data-y-nZS0_U.js → emoji-catalog-data-CmIAmDSt.js} +0 -0
  397. /package/dist/assets/{everforest-dark-BbuuIlHG.js → everforest-dark-BGVynCbV.js} +0 -0
  398. /package/dist/assets/{everforest-light-BNk8Csve.js → everforest-light--rn3R7Cm.js} +0 -0
  399. /package/dist/assets/{exports-DfyYqtWD.js → exports-CJ0Uoq7P.js} +0 -0
  400. /package/dist/assets/{fennel-DFsKO9y1.js → fennel-SWg9Us_u.js} +0 -0
  401. /package/dist/assets/{fish-DvqK9JLk.js → fish-B04oqgKk.js} +0 -0
  402. /package/dist/assets/{fluent-gfd9SBYr.js → fluent-BefzAGMN.js} +0 -0
  403. /package/dist/assets/{format-DvVeYaVl.js → format-DQmCypqv.js} +0 -0
  404. /package/dist/assets/{format-date-CB3SQEqd.js → format-date-DVD0o0QA.js} +0 -0
  405. /package/dist/assets/{fortran-free-form-DvnCB3mS.js → fortran-free-form-alw7jMxb.js} +0 -0
  406. /package/dist/assets/{gdscript-Cum68Rfn.js → gdscript-BAyhvjCx.js} +0 -0
  407. /package/dist/assets/{gdshader-Bdw_vrfE.js → gdshader-Crl09X-B.js} +0 -0
  408. /package/dist/assets/{genie-DGL6epfr.js → genie-BSIGRHu7.js} +0 -0
  409. /package/dist/assets/{gherkin-DKP8C3S5.js → gherkin-DJhSnSWH.js} +0 -0
  410. /package/dist/assets/{github-dark-default-CSOAoAA7.js → github-dark-default-FVtXjcm8.js} +0 -0
  411. /package/dist/assets/{github-dark-dimmed-CLVzfuGo.js → github-dark-dimmed-CzrUPgSb.js} +0 -0
  412. /package/dist/assets/{github-dark-high-contrast-FMEczBGH.js → github-dark-high-contrast-1s9rF5EB.js} +0 -0
  413. /package/dist/assets/{github-dark-DenWerWF.js → github-dark-r8C6qwug.js} +0 -0
  414. /package/dist/assets/{github-light-CAxis8VP.js → github-light-BvIWCkl7.js} +0 -0
  415. /package/dist/assets/{github-light-default-AwK-IReR.js → github-light-default-CVdhzrxV.js} +0 -0
  416. /package/dist/assets/{github-light-high-contrast-V1Zvs65Q.js → github-light-high-contrast-CBAf6hjF.js} +0 -0
  417. /package/dist/assets/{gleam-BL786rUo.js → gleam-DvL1q7aa.js} +0 -0
  418. /package/dist/assets/{gn-SXKhqpGI.js → gn-BG5NvwAf.js} +0 -0
  419. /package/dist/assets/{gnuplot-o4b-hOMZ.js → gnuplot-BARnM-zG.js} +0 -0
  420. /package/dist/assets/{go-Fy8CAqoa.js → go-DXvjjq4q.js} +0 -0
  421. /package/dist/assets/{groovy-CkybMBjt.js → groovy-CRylSKhr.js} +0 -0
  422. /package/dist/assets/{gruvbox-dark-hard-cr7F5Ei8.js → gruvbox-dark-hard-BVPjnqm7.js} +0 -0
  423. /package/dist/assets/{gruvbox-dark-medium-CdfKHaW0.js → gruvbox-dark-medium-U_PDgq0a.js} +0 -0
  424. /package/dist/assets/{gruvbox-dark-soft-BhjMakzc.js → gruvbox-dark-soft-CkzNtpbr.js} +0 -0
  425. /package/dist/assets/{gruvbox-light-hard-Br7DaceI.js → gruvbox-light-hard-DfMmR2G8.js} +0 -0
  426. /package/dist/assets/{gruvbox-light-medium-Dgq_qIGX.js → gruvbox-light-medium-BGCak-dd.js} +0 -0
  427. /package/dist/assets/{gruvbox-light-soft-D_ggJWiO.js → gruvbox-light-soft-DnpM3fkN.js} +0 -0
  428. /package/dist/assets/{haskell-XYheirt-.js → haskell-DXgGIDD_.js} +0 -0
  429. /package/dist/assets/{haxe-DnGntDfe.js → haxe-B7qlTpRz.js} +0 -0
  430. /package/dist/assets/{hcl-CCY9Se-u.js → hcl-ADWfVe_Q.js} +0 -0
  431. /package/dist/assets/{hjson-C9WnX9lx.js → hjson-BaM9gLbq.js} +0 -0
  432. /package/dist/assets/{hlsl-C3AzQq04.js → hlsl-iqaRA4MG.js} +0 -0
  433. /package/dist/assets/{horizon-DwCI16hp.js → horizon-BPpTnhB9.js} +0 -0
  434. /package/dist/assets/{horizon-bright-Cpa65OQf.js → horizon-bright-yBLg3QbE.js} +0 -0
  435. /package/dist/assets/{houston-DBa6DcY7.js → houston-eFOp0ySL.js} +0 -0
  436. /package/dist/assets/{hy-ClfbeOZN.js → hy-BALeMn3i.js} +0 -0
  437. /package/dist/assets/{imba-DcxUW-wx.js → imba-CdGUm_GD.js} +0 -0
  438. /package/dist/assets/{ini-DhtXMm-i.js → ini-DG7imsqe.js} +0 -0
  439. /package/dist/assets/{java-CKvSfw0c.js → java-j5sjtKwV.js} +0 -0
  440. /package/dist/assets/{javascript-BwEwwHgf.js → javascript-CDM3Byzy.js} +0 -0
  441. /package/dist/assets/{json-G-m-vE3h.js → json-BM6IlJL7.js} +0 -0
  442. /package/dist/assets/{json5-IgZ1Is9k.js → json5--Abk7MUy.js} +0 -0
  443. /package/dist/assets/{jsonc-_pBTLcGT.js → jsonc-C8jb-Z6x.js} +0 -0
  444. /package/dist/assets/{jsonl-Sa5wNLrm.js → jsonl-CaJNxfkm.js} +0 -0
  445. /package/dist/assets/{jsonnet-BtUJ4OTu.js → jsonnet-CPrKMSCU.js} +0 -0
  446. /package/dist/assets/{jssm-CLhTkxxx.js → jssm-DEu-9_uo.js} +0 -0
  447. /package/dist/assets/{jsx-BBG89ojQ.js → jsx-CU_TrSpk.js} +0 -0
  448. /package/dist/assets/{jsx-runtime-2-RJdKf7.js → jsx-runtime-D1qe-iBh.js} +0 -0
  449. /package/dist/assets/{kanagawa-dragon--Qu5IFRs.js → kanagawa-dragon-DnbcAduF.js} +0 -0
  450. /package/dist/assets/{kanagawa-lotus-R-ZX3jlF.js → kanagawa-lotus-yxsY3ew8.js} +0 -0
  451. /package/dist/assets/{kanagawa-wave-Dr1nqAI2.js → kanagawa-wave-C2RyvZaM.js} +0 -0
  452. /package/dist/assets/{kdl-D0nszg2B.js → kdl-CvssmvcU.js} +0 -0
  453. /package/dist/assets/{kotlin-B0DCiK42.js → kotlin-jufO49mU.js} +0 -0
  454. /package/dist/assets/{kusto-nT_Fmo0Y.js → kusto-BAFnylR7.js} +0 -0
  455. /package/dist/assets/{laserwave-DlB4MU6V.js → laserwave-BgxFC4Ge.js} +0 -0
  456. /package/dist/assets/{lean-DhOVDhCh.js → lean-Bgt24V1D.js} +0 -0
  457. /package/dist/assets/{less-Dh-4e8MC.js → less-Bk_UaqsM.js} +0 -0
  458. /package/dist/assets/{lib-BZXpTQaD.js → lib-Bqwb-EmC.js} +0 -0
  459. /package/dist/assets/{light-plus-C6nWIJDZ.js → light-plus-nMxFfInN.js} +0 -0
  460. /package/dist/assets/{llm-dimension-Com-uEL8.js → llm-dimension-DCCiYYGK.js} +0 -0
  461. /package/dist/assets/{llvm-DH9YS7kW.js → llvm-3_PASDOO.js} +0 -0
  462. /package/dist/assets/{log-DGyRW4Yu.js → log-CKm0CxB1.js} +0 -0
  463. /package/dist/assets/{logo-CpTJpw-N.js → logo-DFP1_5U6.js} +0 -0
  464. /package/dist/assets/{luau-BdrPFhCA.js → luau-BcZnoyh3.js} +0 -0
  465. /package/dist/assets/{make-BWqrzVrZ.js → make-CpNSwgwT.js} +0 -0
  466. /package/dist/assets/{markdown-B7ABVAOk.js → markdown-DhU3Djpv.js} +0 -0
  467. /package/dist/assets/{material-theme-DsfbG_93.js → material-theme-DD5L3OqF.js} +0 -0
  468. /package/dist/assets/{material-theme-darker-BOYhcZVv.js → material-theme-darker-CG2_tD3R.js} +0 -0
  469. /package/dist/assets/{material-theme-lighter-BsUaNSYL.js → material-theme-lighter-CzNkUc9Y.js} +0 -0
  470. /package/dist/assets/{material-theme-ocean-gCQDxtdX.js → material-theme-ocean-BtLiAaF_.js} +0 -0
  471. /package/dist/assets/{material-theme-palenight-DyQiZfLe.js → material-theme-palenight-Brvjz035.js} +0 -0
  472. /package/dist/assets/{matlab-CQRZ4zL0.js → matlab-CCY0KtMD.js} +0 -0
  473. /package/dist/assets/{mdx-DatRQiQI.js → mdx-CH6YY0aS.js} +0 -0
  474. /package/dist/assets/{mermaid-gyMkSpkM.js → mermaid-Bqh3gFI0.js} +0 -0
  475. /package/dist/assets/{min-dark-BDsS6QdN.js → min-dark-BUwfTzI6.js} +0 -0
  476. /package/dist/assets/{min-light-C4auzl9H.js → min-light-oLanXCOk.js} +0 -0
  477. /package/dist/assets/{mipsasm-52d4hrT5.js → mipsasm-CTh3hPWK.js} +0 -0
  478. /package/dist/assets/{mojo-ReGWoUrl.js → mojo-DXdszZKa.js} +0 -0
  479. /package/dist/assets/{monokai-7Vjupg4U.js → monokai-TNE_tRxc.js} +0 -0
  480. /package/dist/assets/{moonbit-u2c36Msk.js → moonbit-jrk-Gx1X.js} +0 -0
  481. /package/dist/assets/{move-BsGpRiYx.js → move-DItn61bH.js} +0 -0
  482. /package/dist/assets/{narrat-C8eS3QuF.js → narrat-3kB4dkh0.js} +0 -0
  483. /package/dist/assets/{native-deep-link-C4IUgLby.js → native-deep-link-L1RSUDsr.js} +0 -0
  484. /package/dist/assets/{nextflow-groovy-B4EOlBh1.js → nextflow-groovy-CSKtwETr.js} +0 -0
  485. /package/dist/assets/{night-owl-jqGB_AJC.js → night-owl-Dm91nSIq.js} +0 -0
  486. /package/dist/assets/{night-owl-light-DJpSUPM6.js → night-owl-light-riwrcPRg.js} +0 -0
  487. /package/dist/assets/{nix-CIk4aIJt.js → nix-sLgl9zGF.js} +0 -0
  488. /package/dist/assets/{nord-DhYX4sDa.js → nord-TWkJPI6M.js} +0 -0
  489. /package/dist/assets/{nushell-Bw9o-_U9.js → nushell-CDZi4-Gf.js} +0 -0
  490. /package/dist/assets/{oauth-popup-DOiKxIt3.js → oauth-popup-CotK0_Xq.js} +0 -0
  491. /package/dist/assets/{objective-c-BkOBe0B7.js → objective-c-DW9PboNp.js} +0 -0
  492. /package/dist/assets/{objective-cpp-PDR4so4c.js → objective-cpp-2XCCX6q1.js} +0 -0
  493. /package/dist/assets/{ocaml-CFXWY8j_.js → ocaml-CxPdnjrh.js} +0 -0
  494. /package/dist/assets/{odin-kspmECgu.js → odin-BJjlKpkM.js} +0 -0
  495. /package/dist/assets/{one-dark-pro-BFWg7LIX.js → one-dark-pro-K1KOmBZ7.js} +0 -0
  496. /package/dist/assets/{one-light-DlM8WZz3.js → one-light-DQB-vUyZ.js} +0 -0
  497. /package/dist/assets/{openscad-Badon6BV.js → openscad-DCoLwn4j.js} +0 -0
  498. /package/dist/assets/{pascal-CmfHLDzg.js → pascal-z2ktbbWp.js} +0 -0
  499. /package/dist/assets/{pkl-DdCYUxoM.js → pkl-Dyq4-v6z.js} +0 -0
  500. /package/dist/assets/{plastic-CR7bohBy.js → plastic-C4Rq5PnD.js} +0 -0
  501. /package/dist/assets/{plsql-BaM1LDLA.js → plsql-BCIjO63y.js} +0 -0
  502. /package/dist/assets/{po-BkO2Svmr.js → po-_kXpd_0n.js} +0 -0
  503. /package/dist/assets/{poimandres-D0O61fdS.js → poimandres-C9XggjB3.js} +0 -0
  504. /package/dist/assets/{polar-BJiJ13gV.js → polar-DV_1L04z.js} +0 -0
  505. /package/dist/assets/{postcss-CjX6Je85.js → postcss-BuqS91mQ.js} +0 -0
  506. /package/dist/assets/{powerquery-CrTtEEHJ.js → powerquery-DK13B2Dc.js} +0 -0
  507. /package/dist/assets/{powershell-CeyBY4Ux.js → powershell-tkuhhtuP.js} +0 -0
  508. /package/dist/assets/{preload-helper-CS_K7l1U.js → preload-helper-CC9DnTon.js} +0 -0
  509. /package/dist/assets/{prisma-DUVeuIW2.js → prisma-WNXfBtpr.js} +0 -0
  510. /package/dist/assets/{prolog-DOIhdAwp.js → prolog-BzEdNKfO.js} +0 -0
  511. /package/dist/assets/{proto-BUbUT3Wx.js → proto-B5meVsrA.js} +0 -0
  512. /package/dist/assets/{public-asset-BNpOWIkb.js → public-asset-wtS9_-QU.js} +0 -0
  513. /package/dist/assets/{puppet-DjDgZm1H.js → puppet-C7h_p4r2.js} +0 -0
  514. /package/dist/assets/{purescript-6oUK_FNT.js → purescript-qH1KxAs6.js} +0 -0
  515. /package/dist/assets/{python-CNZqNZKJ.js → python-DeTIYd5V.js} +0 -0
  516. /package/dist/assets/{qmldir-CzQgdBMq.js → qmldir-4Rm5AvD3.js} +0 -0
  517. /package/dist/assets/{qss-BA9J31sG.js → qss-YRbeNtr0.js} +0 -0
  518. /package/dist/assets/{queryOptions-C9SyzZF9.js → queryOptions-BlcwdoQQ.js} +0 -0
  519. /package/dist/assets/{r-Cgso_yG8.js → r-CMso0frX.js} +0 -0
  520. /package/dist/assets/{racket-BbjYWtUw.js → racket-gKn4SFLQ.js} +0 -0
  521. /package/dist/assets/{raku-CHANBUFX.js → raku-DWTmAj3A.js} +0 -0
  522. /package/dist/assets/{red-Ds_qC_g5.js → red-BFuHRZFS.js} +0 -0
  523. /package/dist/assets/{reg-C0Wud1Dh.js → reg-DYoOF5tH.js} +0 -0
  524. /package/dist/assets/{regexp-CAdeCauu.js → regexp-B6wC3Alg.js} +0 -0
  525. /package/dist/assets/{rel-B9eJnUl_.js → rel-Z_tTruCU.js} +0 -0
  526. /package/dist/assets/{riscv-BPVhY_ca.js → riscv-DfTfKuvU.js} +0 -0
  527. /package/dist/assets/{ron-LOoqfhER.js → ron-CsUtW8gQ.js} +0 -0
  528. /package/dist/assets/{rose-pine-OL_nLgyo.js → rose-pine-Dng_vCo6.js} +0 -0
  529. /package/dist/assets/{rose-pine-dawn-CQ29Ujg-.js → rose-pine-dawn-Ds88Nezf.js} +0 -0
  530. /package/dist/assets/{rose-pine-moon-Ci03ycU_.js → rose-pine-moon-DWpzrqNz.js} +0 -0
  531. /package/dist/assets/{rosmsg-DDoaH2Y-.js → rosmsg-h2sO84oD.js} +0 -0
  532. /package/dist/assets/{rust-DCessToL.js → rust-Dx86yfCi.js} +0 -0
  533. /package/dist/assets/{sass-CnIiNj11.js → sass-BwwVhdT9.js} +0 -0
  534. /package/dist/assets/{scala-DlQuinCN.js → scala-WJqNEN-w.js} +0 -0
  535. /package/dist/assets/{scheme-Br1c3eSM.js → scheme-uwj-t1Rp.js} +0 -0
  536. /package/dist/assets/{sdbl-L4TWJGSX.js → sdbl-BYy5hgEz.js} +0 -0
  537. /package/dist/assets/{semver-DsaRCj6a.js → semver-BMhLFfhj.js} +0 -0
  538. /package/dist/assets/{shellscript-CR_zcVmb.js → shellscript-B9T4z4ZS.js} +0 -0
  539. /package/dist/assets/{signals-p6C5D4Qf.js → signals-Bbq4C5b5.js} +0 -0
  540. /package/dist/assets/{slack-dark-DIgRzo04.js → slack-dark-BvhGq5vQ.js} +0 -0
  541. /package/dist/assets/{slack-ochin-DL7QpWFU.js → slack-ochin-C9g0ZRFr.js} +0 -0
  542. /package/dist/assets/{smalltalk-L7jQXua0.js → smalltalk-ZEiZ6i7U.js} +0 -0
  543. /package/dist/assets/{snazzy-light-DWympol9.js → snazzy-light-29OA24q5.js} +0 -0
  544. /package/dist/assets/{solarized-dark-DFuC6LpI.js → solarized-dark-Bnq9IOn_.js} +0 -0
  545. /package/dist/assets/{solarized-light-Cv9L4wdZ.js → solarized-light-CYdI7T5g.js} +0 -0
  546. /package/dist/assets/{solidity-DeCdbXvR.js → solidity-DcuIDB-_.js} +0 -0
  547. /package/dist/assets/{splunk-58oMfK82.js → splunk-D5ONE91g.js} +0 -0
  548. /package/dist/assets/{sql-B0ZI3DYA.js → sql-CFgcYxpU.js} +0 -0
  549. /package/dist/assets/{ssh-config-BCRqvx5K.js → ssh-config-D8717tLI.js} +0 -0
  550. /package/dist/assets/{stylus-BJjwPJql.js → stylus-Cm1lO4Y6.js} +0 -0
  551. /package/dist/assets/{swift-EeyUyWzq.js → swift-X8oWpSeU.js} +0 -0
  552. /package/dist/assets/{synthwave-84-C1xi6dxV.js → synthwave-84-DF-t1UKY.js} +0 -0
  553. /package/dist/assets/{system-verilog-B12ndnhe.js → system-verilog-JYyHFpPf.js} +0 -0
  554. /package/dist/assets/{systemd--it6RcB0.js → systemd-Da-5Ma_c.js} +0 -0
  555. /package/dist/assets/{talonscript-D8lIdKMp.js → talonscript-CXraVPho.js} +0 -0
  556. /package/dist/assets/{tasl-BmcKtOps.js → tasl-BCmWezH9.js} +0 -0
  557. /package/dist/assets/{tcl-CEkgEEsq.js → tcl-BTufzfbf.js} +0 -0
  558. /package/dist/assets/{terraform-DJT5zXqt.js → terraform-CtUA9c8W.js} +0 -0
  559. /package/dist/assets/{tokyo-night-BGZyTCtK.js → tokyo-night-BCThYXmz.js} +0 -0
  560. /package/dist/assets/{toml-B7t8PDen.js → toml-D5YlDr6Y.js} +0 -0
  561. /package/dist/assets/{tsv-DMCtrWtN.js → tsv-CBB-P_Sl.js} +0 -0
  562. /package/dist/assets/{tsx-CrroWwfF.js → tsx-BEBsk4Yi.js} +0 -0
  563. /package/dist/assets/{turtle-CTRvaxbL.js → turtle-D8PCeJ-v.js} +0 -0
  564. /package/dist/assets/{typescript-BIp7QN-G.js → typescript-lcLHehw2.js} +0 -0
  565. /package/dist/assets/{typespec-CX9Z5_ZB.js → typespec-CHxldxIW.js} +0 -0
  566. /package/dist/assets/{typst-C-SBr8a2.js → typst-Q8CqX5OR.js} +0 -0
  567. /package/dist/assets/{use-is-mobile-L-si1_f-.js → use-is-mobile-BJcMpFY1.js} +0 -0
  568. /package/dist/assets/{v-D0ScLbsZ.js → v-Bf2hKAMu.js} +0 -0
  569. /package/dist/assets/{vala-CGqeULn4.js → vala-Cbete-UE.js} +0 -0
  570. /package/dist/assets/{vb-Cxo8x-Op.js → vb-CA-xWAcX.js} +0 -0
  571. /package/dist/assets/{verilog-CSfc9NxX.js → verilog-B3wb8CfT.js} +0 -0
  572. /package/dist/assets/{vesper-CoPmLhNq.js → vesper-D6r3VJq_.js} +0 -0
  573. /package/dist/assets/{vhdl-CunL_Ln5.js → vhdl-C42S_797.js} +0 -0
  574. /package/dist/assets/{viml-BJkh9-D0.js → viml-BePrIAs8.js} +0 -0
  575. /package/dist/assets/{vitesse-black-BwYIG_yQ.js → vitesse-black-DRqn61Ck.js} +0 -0
  576. /package/dist/assets/{vitesse-dark-CTjSPNe4.js → vitesse-dark-39_8UE-w.js} +0 -0
  577. /package/dist/assets/{vitesse-light-BGxhfK2G.js → vitesse-light-B1jwrxDm.js} +0 -0
  578. /package/dist/assets/{vyper-DXKiLUHC.js → vyper-tDJv3imF.js} +0 -0
  579. /package/dist/assets/{wasm-ChtccNfv.js → wasm-BYoJCXXt.js} +0 -0
  580. /package/dist/assets/{wasm-k1w8QFn2.js → wasm-DR7eskZH.js} +0 -0
  581. /package/dist/assets/{wenyan-DRgZ3SJe.js → wenyan-CezVfqN3.js} +0 -0
  582. /package/dist/assets/{wgsl-S5iKzSms.js → wgsl-CwOcIiIG.js} +0 -0
  583. /package/dist/assets/{wikitext-CD4_smiT.js → wikitext-C5coomYc.js} +0 -0
  584. /package/dist/assets/{wit-CeLfBbkX.js → wit-C9yyX6-U.js} +0 -0
  585. /package/dist/assets/{with-selector-DE2FUwCr.js → with-selector-D3piXwNZ.js} +0 -0
  586. /package/dist/assets/{wolfram-4LwsT0lL.js → wolfram-BWi0rMAa.js} +0 -0
  587. /package/dist/assets/{xterm-_0qzMgvB.js → xterm-Dsv8Be_e.js} +0 -0
  588. /package/dist/assets/{xterm-addon-fit-DBA_HPLR.js → xterm-addon-fit-C__pvf5w.js} +0 -0
  589. /package/dist/assets/{yaml-B95PTw_r.js → yaml-FxJ2oirE.js} +0 -0
  590. /package/dist/assets/{zenscript-DFY9FRJP.js → zenscript-Do7WLoJh.js} +0 -0
  591. /package/dist/assets/{zig-BwVjLGiI.js → zig-Cr80Qrru.js} +0 -0
@@ -1,2 +0,0 @@
1
- /*! tailwindcss v4.1.8 | MIT License | https://tailwindcss.com */
2
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--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-divide-y-reverse:0;--tw-border-style:solid;--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{:root,:host{--font-sans:"Inter",system-ui,sans-serif;--font-serif:"Instrument Serif",serif;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-orange-500:oklch(70.5% .213 47.604);--color-teal-500:oklch(70.4% .14 182.503);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-950:oklch(29.3% .066 243.157);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-indigo-500:oklch(58.5% .233 277.117);--color-violet-500:oklch(60.6% .25 292.717);--color-fuchsia-500:oklch(66.7% .295 322.15);--color-rose-500:oklch(64.5% .246 16.439);--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-4xl:56rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-2xl:1rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:"Inter",system-ui,sans-serif;--default-mono-font-family:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--app-spacing-xxs:2px;--app-spacing-xs:4px;--app-spacing-sm:8px;--app-spacing-md:12px;--app-spacing-lg:16px;--app-spacing-xl:24px;--app-spacing-xxl:32px;--radius-pill:999px;--chat-max-width:800px}}@layer base{*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-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}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.-top-0\.5{top:calc(var(--spacing)*-.5)}.-top-16{top:calc(var(--spacing)*-16)}.top-0{top:calc(var(--spacing)*0)}.top-0\.5{top:calc(var(--spacing)*.5)}.top-1{top:calc(var(--spacing)*1)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.top-3{top:calc(var(--spacing)*3)}.top-4{top:calc(var(--spacing)*4)}.top-6{top:calc(var(--spacing)*6)}.top-\[120px\]{top:120px}.top-full{top:100%}.-right-16{right:calc(var(--spacing)*-16)}.right-0{right:calc(var(--spacing)*0)}.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-4{right:calc(var(--spacing)*4)}.right-6{right:calc(var(--spacing)*6)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-2{bottom:calc(var(--spacing)*2)}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-full{bottom:100%}.-left-0\.5{left:calc(var(--spacing)*-.5)}.left-0{left:calc(var(--spacing)*0)}.left-0\.5{left:calc(var(--spacing)*.5)}.left-1\.5{left:calc(var(--spacing)*1.5)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing)*3)}.left-4{left:calc(var(--spacing)*4)}.isolate{isolation:isolate}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[9999\]{z-index:9999}.order-2{order:2}.order-3{order:3}.order-4{order:4}.col-span-2{grid-column:span 2/span 2}.col-start-1{grid-column-start:1}.row-start-1{grid-row-start:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.\!m-0{margin:calc(var(--spacing)*0)!important}.-m-2{margin:calc(var(--spacing)*-2)}.m-0{margin:calc(var(--spacing)*0)}.m-1{margin:calc(var(--spacing)*1)}.m-auto{margin:auto}.-mx-2{margin-inline:calc(var(--spacing)*-2)}.-mx-4{margin-inline:calc(var(--spacing)*-4)}.mx-0{margin-inline:calc(var(--spacing)*0)}.mx-0\.5{margin-inline:calc(var(--spacing)*.5)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.my-2{margin-block:calc(var(--spacing)*2)}.my-3{margin-block:calc(var(--spacing)*3)}.my-4{margin-block:calc(var(--spacing)*4)}.my-16{margin-block:calc(var(--spacing)*16)}.-mt-2{margin-top:calc(var(--spacing)*-2)}.mt-0{margin-top:calc(var(--spacing)*0)}.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-2\.5{margin-top:calc(var(--spacing)*2.5)}.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-10{margin-top:calc(var(--spacing)*10)}.mt-auto{margin-top:auto}.-mr-0\.5{margin-right:calc(var(--spacing)*-.5)}.-mr-1{margin-right:calc(var(--spacing)*-1)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mr-3{margin-right:calc(var(--spacing)*3)}.mr-auto{margin-right:auto}.-mb-px{margin-bottom:-1px}.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-7{margin-bottom:calc(var(--spacing)*7)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.-ml-\[10px\]{margin-left:-10px}.ml-0\.5{margin-left:calc(var(--spacing)*.5)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-1\.5{margin-left:calc(var(--spacing)*1.5)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-6{margin-left:calc(var(--spacing)*6)}.ml-8{margin-left:calc(var(--spacing)*8)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.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}.aspect-\[16\/10\]{aspect-ratio:16/10}.size-3\.5{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-5{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-7{width:calc(var(--spacing)*7);height:calc(var(--spacing)*7)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.size-16{width:calc(var(--spacing)*16);height:calc(var(--spacing)*16)}.size-\[14px\]{width:14px;height:14px}.size-\[18px\]{width:18px;height:18px}.h-0\.5{height:calc(var(--spacing)*.5)}.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-36{height:calc(var(--spacing)*36)}.h-48{height:calc(var(--spacing)*48)}.h-64{height:calc(var(--spacing)*64)}.h-\[3px\]{height:3px}.h-\[7px\]{height:7px}.h-\[14px\]{height:14px}.h-\[18px\]{height:18px}.h-\[21px\]{height:21px}.h-\[28px\]{height:28px}.h-\[88px\]{height:88px}.h-\[100dvh\]{height:100dvh}.h-\[345px\]{height:345px}.h-\[350px\]{height:350px}.h-\[600px\]{height:600px}.h-\[calc\(100vh-14rem\)\]{height:calc(100vh - 14rem)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-40{max-height:calc(var(--spacing)*40)}.max-h-60{max-height:calc(var(--spacing)*60)}.max-h-64{max-height:calc(var(--spacing)*64)}.max-h-80{max-height:calc(var(--spacing)*80)}.max-h-\[50dvh\]{max-height:50dvh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80dvh\]{max-height:80dvh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[220px\]{max-height:220px}.max-h-\[240px\]{max-height:240px}.max-h-\[300px\]{max-height:300px}.max-h-\[320px\]{max-height:320px}.max-h-\[360px\]{max-height:360px}.max-h-\[500px\]{max-height:500px}.max-h-\[calc\(100vh-2rem\)\]{max-height:calc(100vh - 2rem)}.max-h-full{max-height:100%}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-6{min-height:calc(var(--spacing)*6)}.min-h-9{min-height:calc(var(--spacing)*9)}.min-h-\[26px\]{min-height:26px}.min-h-\[72px\]{min-height:72px}.min-h-\[120px\]{min-height:120px}.min-h-\[200px\]{min-height:200px}.min-h-\[260px\]{min-height:260px}.min-h-\[280px\]{min-height:280px}.min-h-\[320px\]{min-height:320px}.min-h-\[400px\]{min-height:400px}.min-h-\[480px\]{min-height:480px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-0{width:calc(var(--spacing)*0)}.w-0\.5{width:calc(var(--spacing)*.5)}.w-1{width:calc(var(--spacing)*1)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-1\/2{width:50%}.w-1\/3{width:33.3333%}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-2\/3{width:66.6667%}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-5\/6{width:83.3333%}.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-28{width:calc(var(--spacing)*28)}.w-32{width:calc(var(--spacing)*32)}.w-36{width:calc(var(--spacing)*36)}.w-40{width:calc(var(--spacing)*40)}.w-44{width:calc(var(--spacing)*44)}.w-48{width:calc(var(--spacing)*48)}.w-56{width:calc(var(--spacing)*56)}.w-60{width:calc(var(--spacing)*60)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-80{width:calc(var(--spacing)*80)}.w-96{width:calc(var(--spacing)*96)}.w-\[2px\]{width:2px}.w-\[6px\]{width:6px}.w-\[7px\]{width:7px}.w-\[14px\]{width:14px}.w-\[18px\]{width:18px}.w-\[48px\]{width:48px}.w-\[80vw\]{width:80vw}.w-\[90vw\]{width:90vw}.w-\[92px\]{width:92px}.w-\[230px\]{width:230px}.w-\[260px\]{width:260px}.w-\[320px\]{width:320px}.w-\[440px\]{width:440px}.w-\[calc\(100\%\+10px\)\]{width:calc(100% + 10px)}.w-\[var\(--radix-popover-trigger-width\)\]{width:var(--radix-popover-trigger-width)}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-72{max-width:calc(var(--spacing)*72)}.max-w-\[42px\]{max-width:42px}.max-w-\[45\%\]{max-width:45%}.max-w-\[50\%\]{max-width:50%}.max-w-\[64px\]{max-width:64px}.max-w-\[80\%\]{max-width:80%}.max-w-\[85\%\]{max-width:85%}.max-w-\[90\%\]{max-width:90%}.max-w-\[90vw\]{max-width:90vw}.max-w-\[156px\]{max-width:156px}.max-w-\[160px\]{max-width:160px}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[280px\]{max-width:280px}.max-w-\[300px\]{max-width:300px}.max-w-\[320px\]{max-width:320px}.max-w-\[360px\]{max-width:360px}.max-w-\[400px\]{max-width:400px}.max-w-\[448px\]{max-width:448px}.max-w-\[480px\]{max-width:480px}.max-w-\[520px\]{max-width:520px}.max-w-\[560px\]{max-width:560px}.max-w-\[800px\]{max-width:800px}.max-w-\[900px\]{max-width:900px}.max-w-\[940px\]{max-width:940px}.max-w-\[960px\]{max-width:960px}.max-w-\[1100px\]{max-width:1100px}.max-w-\[1280px\]{max-width:1280px}.max-w-\[var\(--chat-max-width\)\]{max-width:var(--chat-max-width)}.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-6{min-width:calc(var(--spacing)*6)}.min-w-\[2ch\]{min-width:2ch}.min-w-\[3rem\]{min-width:3rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[30px\]{min-width:30px}.min-w-\[72px\]{min-width:72px}.min-w-\[80px\]{min-width:80px}.min-w-\[160px\]{min-width:160px}.min-w-\[180px\]{min-width:180px}.min-w-\[200px\]{min-width:200px}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-3{--tw-translate-x:calc(var(--spacing)*3);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-45{rotate:45deg}.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-\[card-entrance_400ms_ease-out\]{animation:.4s ease-out card-entrance}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.\!list-none{list-style-type:none!important}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.auto-rows-fr{grid-auto-rows:minmax(0,1fr)}.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-\[140px_minmax\(0\,1fr\)\]{grid-template-columns:140px minmax(0,1fr)}.grid-cols-\[auto_1fr_auto\]{grid-template-columns:auto 1fr auto}.grid-cols-\[auto_auto\]{grid-template-columns:auto auto}.grid-cols-\[repeat\(auto-fill\,minmax\(max\(220px\,calc\(\(100\%-6rem\)\/5\)\)\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(max(220px,20% - 1.2rem),1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.\[justify-content\:safe_center\]{justify-content:safe center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0{gap:calc(var(--spacing)*0)}.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-3\.5{gap:calc(var(--spacing)*3.5)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}.gap-10{gap:calc(var(--spacing)*10)}.gap-\[2px\]{gap:2px}.gap-\[3px\]{gap:3px}.gap-\[4px\]{gap:4px}.gap-\[5px\]{gap:5px}.gap-\[8px\]{gap:8px}.gap-\[var\(--app-spacing-lg\)\]{gap:var(--app-spacing-lg)}.gap-\[var\(--app-spacing-md\)\]{gap:var(--app-spacing-md)}.gap-\[var\(--app-spacing-sm\)\]{gap:var(--app-spacing-sm)}.gap-\[var\(--app-spacing-xl\)\]{gap:var(--app-spacing-xl)}.gap-\[var\(--app-spacing-xs\)\]{gap:var(--app-spacing-xs)}.gap-\[var\(--app-spacing-xxs\)\]{gap:var(--app-spacing-xxs)}:where(.space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*0)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*0)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}: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-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*5)*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)))}.gap-x-2{column-gap:calc(var(--spacing)*2)}.gap-x-3{column-gap:calc(var(--spacing)*3)}.gap-x-4{column-gap:calc(var(--spacing)*4)}.gap-x-5{column-gap:calc(var(--spacing)*5)}.gap-y-1{row-gap:calc(var(--spacing)*1)}.gap-y-1\.5{row-gap:calc(var(--spacing)*1.5)}.gap-y-2{row-gap:calc(var(--spacing)*2)}.gap-y-3{row-gap:calc(var(--spacing)*3)}: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-\[var\(--border-base\)\]>:not(:last-child)){border-color:var(--border-base)}.self-center{align-self:center}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.overscroll-none{overscroll-behavior:none}.\!rounded-full{border-radius:3.40282e38px!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[2px\]{border-radius:2px}.rounded-\[3px\]{border-radius:3px}.rounded-\[4px\]{border-radius:4px}.rounded-\[5px\]{border-radius:5px}.rounded-\[6px\]{border-radius:6px}.rounded-\[10px\]{border-radius:10px}.rounded-\[12px\]{border-radius:12px}.rounded-\[100px\]{border-radius:100px}.rounded-\[var\(--radius-lg\)\]{border-radius:var(--radius-lg)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-\[var\(--radius-pill\)\]{border-radius:var(--radius-pill)}.rounded-\[var\(--radius-sm\)\]{border-radius:var(--radius-sm)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:12px}.rounded-md{border-radius:8px}.rounded-none{border-radius:0}.rounded-sm{border-radius:4px}.rounded-xl{border-radius:16px}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-\[24px\]{border-top-left-radius:24px;border-top-right-radius:24px}.rounded-t-\[var\(--radius-lg\)\]{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-t-xl{border-top-left-radius:16px;border-top-right-radius:16px}.rounded-l-\[var\(--radius-lg\)\]{border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.rounded-l-md{border-top-left-radius:8px;border-bottom-left-radius:8px}.rounded-tl-\[var\(--radius-lg\)\]{border-top-left-radius:var(--radius-lg)}.rounded-r-md{border-top-right-radius:8px;border-bottom-right-radius:8px}.rounded-b-\[10px\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-lg{border-bottom-right-radius:12px;border-bottom-left-radius:12px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.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-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-t{border-top-style:var(--tw-border-style);border-top-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-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-\[color-mix\(in_srgb\,var\(--system-mid-strong\)_30\%\,transparent\)\]{border-color:var(--system-mid-strong)}@supports (color:color-mix(in lab, red, red)){.border-\[color-mix\(in_srgb\,var\(--system-mid-strong\)_30\%\,transparent\)\]{border-color:color-mix(in srgb,var(--system-mid-strong)30%,transparent)}}.border-\[color-mix\(in_srgb\,var\(--system-negative-strong\)_25\%\,transparent\)\]{border-color:var(--system-negative-strong)}@supports (color:color-mix(in lab, red, red)){.border-\[color-mix\(in_srgb\,var\(--system-negative-strong\)_25\%\,transparent\)\]{border-color:color-mix(in srgb,var(--system-negative-strong)25%,transparent)}}.border-\[color-mix\(in_srgb\,var\(--system-positive-strong\)_25\%\,transparent\)\]{border-color:var(--system-positive-strong)}@supports (color:color-mix(in lab, red, red)){.border-\[color-mix\(in_srgb\,var\(--system-positive-strong\)_25\%\,transparent\)\]{border-color:color-mix(in srgb,var(--system-positive-strong)25%,transparent)}}.border-\[color\:var\(--radio-border\)\]{border-color:var(--radio-border)}.border-\[var\(--aux-white\)\]{border-color:var(--aux-white)}.border-\[var\(--border-base\)\]{border-color:var(--border-base)}.border-\[var\(--border-default\)\]{border-color:var(--border-default)}.border-\[var\(--border-disabled\)\]{border-color:var(--border-disabled)}.border-\[var\(--border-element\)\]{border-color:var(--border-element)}.border-\[var\(--border-focus\)\]{border-color:var(--border-focus)}.border-\[var\(--border-primary\)\]{border-color:var(--border-primary)}.border-\[var\(--border-subtle\)\]{border-color:var(--border-subtle)}.border-\[var\(--content-default\)\]{border-color:var(--content-default)}.border-\[var\(--content-disabled\)\]{border-color:var(--content-disabled)}.border-\[var\(--content-inset\)\]\/30{border-color:var(--content-inset)}@supports (color:color-mix(in lab, red, red)){.border-\[var\(--content-inset\)\]\/30{border-color:color-mix(in oklab,var(--content-inset)30%,transparent)}}.border-\[var\(--content-tertiary\)\]{border-color:var(--content-tertiary)}.border-\[var\(--field-border\)\]{border-color:var(--field-border)}.border-\[var\(--primary-base\)\]{border-color:var(--primary-base)}.border-\[var\(--ring\)\]{border-color:var(--ring)}.border-\[var\(--surface-base\)\]{border-color:var(--surface-base)}.border-\[var\(--system-mid-strong\)\]{border-color:var(--system-mid-strong)}.border-\[var\(--system-negative-strong\)\],.border-\[var\(--system-negative-strong\)\]\/40{border-color:var(--system-negative-strong)}@supports (color:color-mix(in lab, red, red)){.border-\[var\(--system-negative-strong\)\]\/40{border-color:color-mix(in oklab,var(--system-negative-strong)40%,transparent)}}.border-\[var\(--system-negative-weak\)\]{border-color:var(--system-negative-weak)}.border-\[var\(--system-positive-strong\)\]{border-color:var(--system-positive-strong)}.border-\[var\(--system-warning-strong\)\]{border-color:var(--system-warning-strong)}.border-amber-500\/30{border-color:oklab(85.267% .00271791 .145657/.3)}.border-current{border-color:currentColor}.border-forest-600{border-color:#2e9a4e}.border-forest-700{border-color:#277e41}.border-stone-200{border-color:#e9e6e2}.border-stone-300{border-color:#cfccc9}.border-transparent{border-color:#0000}.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\/15{border-color:#ffffff26}@supports (color:color-mix(in lab, red, red)){.border-white\/15{border-color:color-mix(in oklab,var(--color-white)15%,transparent)}}.border-t-\[var\(--content-secondary\)\]{border-top-color:var(--content-secondary)}.border-t-\[var\(--content-tertiary\)\]{border-top-color:var(--content-tertiary)}.border-t-\[var\(--primary-base\)\]{border-top-color:var(--primary-base)}.border-t-transparent{border-top-color:#0000}.bg-\[\#0d0d0d\]{background-color:#0d0d0d}.bg-\[\#F5F5F5\]{background-color:#f5f5f5}.bg-\[\#FCFCFC\]{background-color:#fcfcfc}.bg-\[color-mix\(in_oklab\,var\(--primary-base\)_16\%\,transparent\)\]{background-color:var(--primary-base)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--primary-base\)_16\%\,transparent\)\]{background-color:color-mix(in oklab,var(--primary-base)16%,transparent)}}.bg-\[color-mix\(in_oklab\,var\(--system-mid-strong\)_16\%\,transparent\)\]{background-color:var(--system-mid-strong)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--system-mid-strong\)_16\%\,transparent\)\]{background-color:color-mix(in oklab,var(--system-mid-strong)16%,transparent)}}.bg-\[color-mix\(in_oklab\,var\(--system-negative-strong\)_14\%\,transparent\)\]{background-color:var(--system-negative-strong)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--system-negative-strong\)_14\%\,transparent\)\]{background-color:color-mix(in oklab,var(--system-negative-strong)14%,transparent)}}.bg-\[color-mix\(in_oklab\,var\(--system-positive-strong\)_14\%\,transparent\)\]{background-color:var(--system-positive-strong)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_oklab\,var\(--system-positive-strong\)_14\%\,transparent\)\]{background-color:color-mix(in oklab,var(--system-positive-strong)14%,transparent)}}.bg-\[color-mix\(in_srgb\,var\(--content-tertiary\)_20\%\,transparent\)\]{background-color:var(--content-tertiary)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--content-tertiary\)_20\%\,transparent\)\]{background-color:color-mix(in srgb,var(--content-tertiary)20%,transparent)}}.bg-\[color-mix\(in_srgb\,var\(--primary-base\)_8\%\,transparent\)\]{background-color:var(--primary-base)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--primary-base\)_8\%\,transparent\)\]{background-color:color-mix(in srgb,var(--primary-base)8%,transparent)}}.bg-\[color-mix\(in_srgb\,var\(--primary-base\)_10\%\,transparent\)\]{background-color:var(--primary-base)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--primary-base\)_10\%\,transparent\)\]{background-color:color-mix(in srgb,var(--primary-base)10%,transparent)}}.bg-\[var\(--aux-white\)\]{background-color:var(--aux-white)}.bg-\[var\(--border-active\)\]{background-color:var(--border-active)}.bg-\[var\(--border-base\)\]{background-color:var(--border-base)}.bg-\[var\(--border-disabled\)\]{background-color:var(--border-disabled)}.bg-\[var\(--border-element\)\]{background-color:var(--border-element)}.bg-\[var\(--border-overlay\)\]{background-color:var(--border-overlay)}.bg-\[var\(--border-subtle\)\]{background-color:var(--border-subtle)}.bg-\[var\(--color-accent\)\]{background-color:var(--color-accent)}.bg-\[var\(--content-default\)\]{background-color:var(--content-default)}.bg-\[var\(--content-disabled\)\]{background-color:var(--content-disabled)}.bg-\[var\(--content-secondary\)\]{background-color:var(--content-secondary)}.bg-\[var\(--content-tertiary\)\]{background-color:var(--content-tertiary)}.bg-\[var\(--field-bg\)\]{background-color:var(--field-bg)}.bg-\[var\(--primary-base\)\],.bg-\[var\(--primary-base\)\]\/5{background-color:var(--primary-base)}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--primary-base\)\]\/5{background-color:color-mix(in oklab,var(--primary-base)5%,transparent)}}.bg-\[var\(--primary-base\)\]\/10{background-color:var(--primary-base)}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--primary-base\)\]\/10{background-color:color-mix(in oklab,var(--primary-base)10%,transparent)}}.bg-\[var\(--primary-base\)\]\/80{background-color:var(--primary-base)}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--primary-base\)\]\/80{background-color:color-mix(in oklab,var(--primary-base)80%,transparent)}}.bg-\[var\(--primary-disabled\)\]{background-color:var(--primary-disabled)}.bg-\[var\(--surface-active\)\]{background-color:var(--surface-active)}.bg-\[var\(--surface-base\)\],.bg-\[var\(--surface-base\)\]\/60{background-color:var(--surface-base)}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--surface-base\)\]\/60{background-color:color-mix(in oklab,var(--surface-base)60%,transparent)}}.bg-\[var\(--surface-default\)\]{background-color:var(--surface-default)}.bg-\[var\(--surface-info-subtle\)\]{background-color:var(--surface-info-subtle)}.bg-\[var\(--surface-lift\)\],.bg-\[var\(--surface-lift\)\]\/80{background-color:var(--surface-lift)}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--surface-lift\)\]\/80{background-color:color-mix(in oklab,var(--surface-lift)80%,transparent)}}.bg-\[var\(--surface-muted\)\]{background-color:var(--surface-muted)}.bg-\[var\(--surface-overlay\)\]{background-color:var(--surface-overlay)}.bg-\[var\(--surface-primary\)\]{background-color:var(--surface-primary)}.bg-\[var\(--surface-raised\)\]{background-color:var(--surface-raised)}.bg-\[var\(--surface-secondary\)\]{background-color:var(--surface-secondary)}.bg-\[var\(--surface-sunken\)\]{background-color:var(--surface-sunken)}.bg-\[var\(--surface-tertiary\)\]{background-color:var(--surface-tertiary)}.bg-\[var\(--surface-warning-subtle\)\]{background-color:var(--surface-warning-subtle)}.bg-\[var\(--system-error-lighter\)\]{background-color:var(--system-error-lighter)}.bg-\[var\(--system-mid-strong\)\]{background-color:var(--system-mid-strong)}.bg-\[var\(--system-mid-weak\)\]{background-color:var(--system-mid-weak)}.bg-\[var\(--system-negative-strong\)\],.bg-\[var\(--system-negative-strong\)\]\/10{background-color:var(--system-negative-strong)}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--system-negative-strong\)\]\/10{background-color:color-mix(in oklab,var(--system-negative-strong)10%,transparent)}}.bg-\[var\(--system-negative-weak\)\],.bg-\[var\(--system-negative-weak\)\]\/50{background-color:var(--system-negative-weak)}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--system-negative-weak\)\]\/50{background-color:color-mix(in oklab,var(--system-negative-weak)50%,transparent)}}.bg-\[var\(--system-positive-strong\)\]{background-color:var(--system-positive-strong)}.bg-\[var\(--system-positive-weak\)\]{background-color:var(--system-positive-weak)}.bg-\[var\(--system-warning-weak\)\]{background-color:var(--system-warning-weak)}.bg-\[var\(--tag-bg-neutral\)\]{background-color:var(--tag-bg-neutral)}.bg-amber-500{background-color:#f5c94e}.bg-amber-500\/15{background-color:oklab(85.267% .00271791 .145657/.15)}.bg-background{background-color:var(--background)}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black)40%,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\/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-current{background-color:currentColor}.bg-forest-500{background-color:#3db85e}.bg-forest-600{background-color:#2e9a4e}.bg-forest-700{background-color:#277e41}.bg-fuchsia-500{background-color:var(--color-fuchsia-500)}.bg-indigo-500{background-color:var(--color-indigo-500)}.bg-orange-500{background-color:var(--color-orange-500)}.bg-rose-500{background-color:var(--color-rose-500)}.bg-sky-500{background-color:var(--color-sky-500)}.bg-stone-100{background-color:#f2f0ee}.bg-stone-200\/80{background-color:oklab(92.6152% .00158554 .00608873/.8)}.bg-teal-500{background-color:var(--color-teal-500)}.bg-transparent{background-color:#0000}.bg-violet-500{background-color:var(--color-violet-500)}.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-cover{background-size:cover}.bg-center{background-position:50%}.fill-current{fill:currentColor}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-bottom{object-position:bottom}.\!p-0{padding:calc(var(--spacing)*0)!important}.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-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-\[6px\]{padding:6px}.p-\[8px\]{padding:8px}.p-\[var\(--app-spacing-lg\)\]{padding:var(--app-spacing-lg)}.px-0{padding-inline:calc(var(--spacing)*0)}.px-0\.5{padding-inline:calc(var(--spacing)*.5)}.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-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.px-\[4px\]{padding-inline:4px}.px-\[5px\]{padding-inline:5px}.px-\[6px\]{padding-inline:6px}.px-\[8px\]{padding-inline:8px}.px-\[10px\]{padding-inline:10px}.px-\[var\(--app-spacing-lg\)\]{padding-inline:var(--app-spacing-lg)}.px-\[var\(--app-spacing-md\)\]{padding-inline:var(--app-spacing-md)}.px-\[var\(--app-spacing-xl\)\]{padding-inline:var(--app-spacing-xl)}.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-16{padding-block:calc(var(--spacing)*16)}.py-24{padding-block:calc(var(--spacing)*24)}.py-\[2px\]{padding-block:2px}.py-\[4px\]{padding-block:4px}.py-\[6px\]{padding-block:6px}.py-\[7px\]{padding-block:7px}.py-\[var\(--app-spacing-lg\)\]{padding-block:var(--app-spacing-lg)}.py-\[var\(--app-spacing-md\)\]{padding-block:var(--app-spacing-md)}.py-\[var\(--app-spacing-sm\)\]{padding-block:var(--app-spacing-sm)}.py-\[var\(--app-spacing-xl\)\]{padding-block:var(--app-spacing-xl)}.py-\[var\(--app-spacing-xxl\)\]{padding-block:var(--app-spacing-xxl)}.ps-1{padding-inline-start:calc(var(--spacing)*1)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-0\.5{padding-top:calc(var(--spacing)*.5)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-2\.5{padding-top:calc(var(--spacing)*2.5)}.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-8{padding-top:calc(var(--spacing)*8)}.pt-10{padding-top:calc(var(--spacing)*10)}.pt-12{padding-top:calc(var(--spacing)*12)}.pt-14{padding-top:calc(var(--spacing)*14)}.pt-16{padding-top:calc(var(--spacing)*16)}.pt-\[2px\]{padding-top:2px}.pt-\[15vh\]{padding-top:15vh}.pt-\[18px\]{padding-top:18px}.pt-\[var\(--app-spacing-sm\)\]{padding-top:var(--app-spacing-sm)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-1\.5{padding-right:calc(var(--spacing)*1.5)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-3{padding-right:calc(var(--spacing)*3)}.pr-8{padding-right:calc(var(--spacing)*8)}.pr-9{padding-right:calc(var(--spacing)*9)}.pr-10{padding-right:calc(var(--spacing)*10)}.pr-\[6px\]{padding-right:6px}.pb-0{padding-bottom:calc(var(--spacing)*0)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-1\.5{padding-bottom:calc(var(--spacing)*1.5)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-2\.5{padding-bottom:calc(var(--spacing)*2.5)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.pb-40{padding-bottom:calc(var(--spacing)*40)}.pb-\[3px\]{padding-bottom:3px}.pb-\[calc\(16px\+var\(--safe-area-inset-bottom\,env\(safe-area-inset-bottom\,0px\)\)\)\]{padding-bottom:calc(16px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))}.pl-1{padding-left:calc(var(--spacing)*1)}.pl-1\.5{padding-left:calc(var(--spacing)*1.5)}.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-6{padding-left:calc(var(--spacing)*6)}.pl-7{padding-left:calc(var(--spacing)*7)}.pl-9{padding-left:calc(var(--spacing)*9)}.pl-\[24px\]{padding-left:24px}.pl-\[var\(--app-spacing-lg\)\]{padding-left:var(--app-spacing-lg)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-top{vertical-align:top}.text-body-large-default{font-family:var(--font-sans);font-size:var(--text-body-large-default-size);font-weight:var(--text-body-large-default-weight);line-height:var(--text-body-large-default-line-height)}.text-body-large-lighter{font-family:var(--font-sans);font-size:var(--text-body-large-lighter-size);font-weight:var(--text-body-large-lighter-weight);line-height:var(--text-body-large-lighter-line-height)}.text-body-medium-default{font-family:var(--font-sans);font-size:var(--text-body-medium-default-size);font-weight:var(--text-body-medium-default-weight);line-height:var(--text-body-medium-default-line-height)}.text-body-medium-lighter{font-family:var(--font-sans);font-size:var(--text-body-medium-lighter-size);font-weight:var(--text-body-medium-lighter-weight);line-height:var(--text-body-medium-lighter-line-height)}.text-body-small-default{font-family:var(--font-sans);font-size:var(--text-body-small-default-size);font-weight:var(--text-body-small-default-weight);line-height:var(--text-body-small-default-line-height)}.text-body-small-emphasised{font-family:var(--font-sans);font-size:var(--text-body-small-emphasised-size);font-weight:var(--text-body-small-emphasised-weight);line-height:var(--text-body-small-emphasised-line-height)}.text-chat{font-family:var(--font-sans);font-size:var(--text-chat-size);font-weight:var(--text-chat-weight);line-height:var(--text-chat-line-height)}.text-label-medium-default{font-family:var(--font-sans);font-size:var(--text-label-medium-default-size);font-weight:var(--text-label-medium-default-weight);line-height:var(--text-label-medium-default-line-height)}.text-label-small-default{font-family:var(--font-sans);font-size:var(--text-label-small-default-size);font-weight:var(--text-label-small-default-weight);line-height:var(--text-label-small-default-line-height)}.text-title-large{font-family:var(--font-sans);font-size:var(--text-title-large-size);font-weight:var(--text-title-large-weight);line-height:var(--text-title-large-line-height)}.text-title-medium{font-family:var(--font-sans);font-size:var(--text-title-medium-size);font-weight:var(--text-title-medium-weight);line-height:var(--text-title-medium-line-height)}.text-title-small{font-family:var(--font-sans);font-size:var(--text-title-small-size);font-weight:var(--text-title-small-weight);line-height:var(--text-title-small-line-height)}.font-mono{font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.font-serif{font-family:Instrument Serif,serif}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.9em\]{font-size:.9em}.text-\[0\.85em\]{font-size:.85em}.text-\[2rem\]{font-size:2rem}.text-\[9\.5px\]{font-size:9.5px}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[20px\]{font-size:20px}.text-\[28px\]{font-size:28px}.leading-4{--tw-leading:calc(var(--spacing)*4);line-height:calc(var(--spacing)*4)}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-6{--tw-leading:calc(var(--spacing)*6);line-height:calc(var(--spacing)*6)}.leading-\[16px\]{--tw-leading:16px;line-height:16px}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.\!font-bold{--tw-font-weight:var(--font-weight-bold)!important;font-weight:var(--font-weight-bold)!important}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.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\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.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-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\(--content-default\){color:var(--content-default)}.text-\(--content-secondary\){color:var(--content-secondary)}.text-\(--content-tertiary\){color:var(--content-tertiary)}.text-\(--primary-base\){color:var(--primary-base)}.text-\(--system-mid-strong\){color:var(--system-mid-strong)}.text-\(--system-negative-strong\){color:var(--system-negative-strong)}.text-\[\#277E41\]{color:#277e41}.text-\[color\:var\(--aux-white\)\]{color:var(--aux-white)}.text-\[color\:var\(--content-default\)\]{color:var(--content-default)}.text-\[color\:var\(--content-disabled\)\]{color:var(--content-disabled)}.text-\[color\:var\(--content-emphasised\)\]{color:var(--content-emphasised)}.text-\[color\:var\(--content-inset\)\]{color:var(--content-inset)}.text-\[color\:var\(--content-secondary\)\]{color:var(--content-secondary)}.text-\[color\:var\(--content-tertiary\)\]{color:var(--content-tertiary)}.text-\[color\:var\(--system-mid-strong\)\]{color:var(--system-mid-strong)}.text-\[color\:var\(--system-negative-strong\)\]{color:var(--system-negative-strong)}.text-\[color\:var\(--system-positive-strong\)\]{color:var(--system-positive-strong)}.text-\[color\:var\(--token\)\]{color:var(--token)}.text-\[color\:var\(--vbtn-fg\)\]{color:var(--vbtn-fg)}.text-\[color\:var\(--x\)\]{color:var(--x)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-\[var\(--content-accent\)\]{color:var(--content-accent)}.text-\[var\(--content-default\)\]{color:var(--content-default)}.text-\[var\(--content-disabled\)\]{color:var(--content-disabled)}.text-\[var\(--content-emphasised\)\]{color:var(--content-emphasised)}.text-\[var\(--content-emphasized\)\]{color:var(--content-emphasized)}.text-\[var\(--content-faint\)\]{color:var(--content-faint)}.text-\[var\(--content-inset\)\]{color:var(--content-inset)}.text-\[var\(--content-link\)\]{color:var(--content-link)}.text-\[var\(--content-primary\)\]{color:var(--content-primary)}.text-\[var\(--content-quiet\)\]{color:var(--content-quiet)}.text-\[var\(--content-secondary\)\]{color:var(--content-secondary)}.text-\[var\(--content-strong\)\]{color:var(--content-strong)}.text-\[var\(--content-tertiary\)\]{color:var(--content-tertiary)}.text-\[var\(--content-warning\)\]{color:var(--content-warning)}.text-\[var\(--primary-base\)\]{color:var(--primary-base)}.text-\[var\(--surface-base\)\]{color:var(--surface-base)}.text-\[var\(--system-error-default\)\]{color:var(--system-error-default)}.text-\[var\(--system-mid-strong\)\]{color:var(--system-mid-strong)}.text-\[var\(--system-negative-default\)\]{color:var(--system-negative-default)}.text-\[var\(--system-negative-strong\)\]{color:var(--system-negative-strong)}.text-\[var\(--system-positive-default\)\]{color:var(--system-positive-default)}.text-\[var\(--system-positive-strong\)\]{color:var(--system-positive-strong)}.text-\[var\(--system-warning-default\)\]{color:var(--system-warning-default)}.text-\[var\(--system-warning-strong\)\]{color:var(--system-warning-strong)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-amber-400{color:#f9d978}.text-black{color:var(--color-black)}.text-blue-300{color:var(--color-blue-300)}.text-blue-400{color:var(--color-blue-400)}.text-danger-500{color:#f39b74}.text-foreground{color:var(--foreground)}.text-forest-600{color:#2e9a4e}.text-forest-700{color:#277e41}.text-inherit{color:inherit}.text-orange-500{color:var(--color-orange-500)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-stone-400{color:#a9b2bb}.text-stone-500{color:#8d99a5}.text-stone-600{color:#71808e}.text-stone-700{color:#5a6672}.text-white{color:var(--color-white)}.text-white\/50{color:#ffffff80}@supports (color:color-mix(in lab, red, red)){.text-white\/50{color:color-mix(in oklab,var(--color-white)50%,transparent)}}.text-white\/60{color:#fff9}@supports (color:color-mix(in lab, red, red)){.text-white\/60{color:color-mix(in oklab,var(--color-white)60%,transparent)}}.text-white\/70{color:#ffffffb3}@supports (color:color-mix(in lab, red, red)){.text-white\/70{color:color-mix(in oklab,var(--color-white)70%,transparent)}}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab, red, red)){.text-white\/80{color:color-mix(in oklab,var(--color-white)80%,transparent)}}.text-white\/90{color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.text-white\/90{color:color-mix(in oklab,var(--color-white)90%,transparent)}}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.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,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.decoration-\[var\(--border-element\)\]{-webkit-text-decoration-color:var(--border-element);-webkit-text-decoration-color:var(--border-element);-webkit-text-decoration-color:var(--border-element);text-decoration-color:var(--border-element)}.decoration-\[var\(--system-positive-strong\)\]\/30{-webkit-text-decoration-color:var(--system-positive-strong);-webkit-text-decoration-color:var(--system-positive-strong);-webkit-text-decoration-color:var(--system-positive-strong);text-decoration-color:var(--system-positive-strong)}@supports (color:color-mix(in lab, red, red)){.decoration-\[var\(--system-positive-strong\)\]\/30{-webkit-text-decoration-color:color-mix(in oklab,var(--system-positive-strong)30%,transparent);-webkit-text-decoration-color:color-mix(in oklab,var(--system-positive-strong)30%,transparent);-webkit-text-decoration-color:color-mix(in oklab,var(--system-positive-strong)30%,transparent);text-decoration-color:color-mix(in oklab,var(--system-positive-strong)30%,transparent)}}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-35{opacity:.35}.opacity-50{opacity:.5}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.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);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_-4px_12px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:0 -4px 12px 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-\[0px_2px_2px_rgba\(0\,0\,0\,0\.05\)\]{--tw-shadow:0px 2px 2px var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-popover\)\]{--tw-shadow:var(--shadow-popover);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 8px 16px var(--tw-shadow-color,#00000029);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 8px var(--tw-shadow-color,#0000001f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--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)}.shadow-sm{--tw-shadow:0 2px 4px var(--tw-shadow-color,#00000014);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 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px 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)}.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);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-\[color-mix\(in_oklab\,var\(--primary-base\)_24\%\,transparent\)\]{--tw-ring-color:var(--primary-base)}@supports (color:color-mix(in lab, red, red)){.ring-\[color-mix\(in_oklab\,var\(--primary-base\)_24\%\,transparent\)\]{--tw-ring-color:color-mix(in oklab,var(--primary-base)24%,transparent)}}.ring-\[color-mix\(in_oklab\,var\(--system-mid-strong\)_24\%\,transparent\)\]{--tw-ring-color:var(--system-mid-strong)}@supports (color:color-mix(in lab, red, red)){.ring-\[color-mix\(in_oklab\,var\(--system-mid-strong\)_24\%\,transparent\)\]{--tw-ring-color:color-mix(in oklab,var(--system-mid-strong)24%,transparent)}}.ring-\[var\(--border-base\)\]{--tw-ring-color:var(--border-base)}.ring-transparent{--tw-ring-color:transparent}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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-3xl{--tw-blur:blur(var(--blur-3xl));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,)}.invert{--tw-invert:invert(100%);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,)}.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));-webkit-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,);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,-webkit-backdrop-filter,backdrop-filter,display,visibility,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-\[background-color\,color\,border-color\,transform\,box-shadow\]{transition-property:background-color,color,border-color,transform,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,opacity\]{transition-property:background-color,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\,background-color\]{transition-property:border-color,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\]{transition-property:border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[grid-template-rows\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[min-width\]{transition-property:min-width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,transform\]{transition-property:opacity,transform;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-\[width\,padding\]{transition-property:width,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;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-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-250{--tw-duration:.25s;transition-duration:.25s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-\[150ms\]{--tw-duration:.15s;transition-duration:.15s}.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)}.contain-content{contain:content}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.\[--radio-border\:var\(--border-element\)\]{--radio-border:var(--border-element)}.\[--vbtn-fg\:var\(--aux-white\)\]{--vbtn-fg:var(--aux-white)}.\[--vbtn-fg\:var\(--content-default\)\]{--vbtn-fg:var(--content-default)}.\[--vbtn-fg\:var\(--content-inset\)\]{--vbtn-fg:var(--content-inset)}.\[--vbtn-fg\:var\(--content-secondary\)\]{--vbtn-fg:var(--content-secondary)}.\[--vbtn-fg\:var\(--content-tertiary\)\]{--vbtn-fg:var(--content-tertiary)}.\[--vbtn-fg\:var\(--primary-active\)\]{--vbtn-fg:var(--primary-active)}.\[--vbtn-fg\:var\(--primary-base\)\]{--vbtn-fg:var(--primary-base)}.\[--vbtn-fg\:var\(--system-negative-strong\)\]{--vbtn-fg:var(--system-negative-strong)}.\[overflow-anchor\:none\]{overflow-anchor:none}.\[scrollbar-width\:none\]{scrollbar-width:none}.ring-inset{--tw-ring-inset:inset}.group-focus-within\:opacity-0:is(:where(.group):focus-within *){opacity:0}.group-focus-within\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media (hover:hover){.group-hover\:rounded-none:is(:where(.group):hover *){border-radius:0}.group-hover\:bg-transparent:is(:where(.group):hover *){background-color:#0000}.group-hover\:px-0:is(:where(.group):hover *){padding-inline:calc(var(--spacing)*0)}.group-hover\:py-0:is(:where(.group):hover *){padding-block:calc(var(--spacing)*0)}.group-hover\:text-\[var\(--content-secondary\)\]:is(:where(.group):hover *){color:var(--content-secondary)}.group-hover\:opacity-0:is(:where(.group):hover *){opacity:0}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/msg\:pointer-events-auto:is(:where(.group\/msg):hover *){pointer-events:auto}.group-hover\/msg\:opacity-100:is(:where(.group\/msg):hover *),.group-hover\/resize\:opacity-100:is(:where(.group\/resize):hover *){opacity:1}}.group-focus-visible\:opacity-0:is(:where(.group):focus-visible *){opacity:0}.group-focus-visible\:opacity-100:is(:where(.group):focus-visible *){opacity:1}.group-aria-\[current\=page\]\:rounded-none:is(:where(.group)[aria-current=page] *){border-radius:0}.group-aria-\[current\=page\]\:bg-transparent:is(:where(.group)[aria-current=page] *){background-color:#0000}.group-aria-\[current\=page\]\:px-0:is(:where(.group)[aria-current=page] *){padding-inline:calc(var(--spacing)*0)}.group-aria-\[current\=page\]\:py-0:is(:where(.group)[aria-current=page] *){padding-block:calc(var(--spacing)*0)}.group-aria-\[current\=page\]\:text-\[var\(--content-default\)\]:is(:where(.group)[aria-current=page] *){color:var(--content-default)}.group-aria-\[current\=page\]\:text-\[var\(--primary-base\)\]:is(:where(.group)[aria-current=page] *){color:var(--primary-base)}.group-aria-\[current\=page\]\:opacity-100:is(:where(.group)[aria-current=page] *),.group-data-\[revealed\=true\]\/msg\:opacity-100:is(:where(.group\/msg)[data-revealed=true] *){opacity:1}.group-data-\[state\=open\]\:rotate-90:is(:where(.group)[data-state=open] *){rotate:90deg}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.placeholder\:text-\[color\:var\(--content-tertiary\)\]::placeholder{color:var(--content-tertiary)}.placeholder\:text-\[var\(--content-disabled\)\]::placeholder{color:var(--content-disabled)}.placeholder\:text-\[var\(--content-tertiary\)\]::placeholder{color:var(--content-tertiary)}.placeholder\:text-stone-500::placeholder{color:#8d99a5}.first\:mt-0:first-child{margin-top:calc(var(--spacing)*0)}.first\:pt-0:first-child{padding-top:calc(var(--spacing)*0)}.last\:mb-0:last-child{margin-bottom:calc(var(--spacing)*0)}.last\:pb-0:last-child{padding-bottom:calc(var(--spacing)*0)}.focus-within\:border-\[var\(--border-active\)\]:focus-within{border-color:var(--border-active)}.focus-within\:ring-\[var\(--ring\)\]:focus-within{--tw-ring-color:var(--ring)}@media (hover:hover){.hover\:border-\[var\(--content-faint\)\]:hover{border-color:var(--content-faint)}.hover\:border-\[var\(--system-negative-hover\)\]:hover{border-color:var(--system-negative-hover)}.hover\:bg-\[color-mix\(\.\.\.\)\]:hover{background-color:color-mix(...)}.hover\:bg-\[color-mix\(in_srgb\,currentColor_15\%\,transparent\)\]:hover{background-color:currentColor}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_srgb\,currentColor_15\%\,transparent\)\]:hover{background-color:color-mix(in srgb,currentColor 15%,transparent)}}.hover\:bg-\[color-mix\(in_srgb\,var\(--primary-second-hover\)_15\%\,transparent\)\]:hover{background-color:var(--primary-second-hover)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_srgb\,var\(--primary-second-hover\)_15\%\,transparent\)\]:hover{background-color:color-mix(in srgb,var(--primary-second-hover)15%,transparent)}}.hover\:bg-\[color-mix\(in_srgb\,var\(--system-negative-strong\)_85\%\,black\)\]:hover{background-color:var(--system-negative-strong)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_srgb\,var\(--system-negative-strong\)_85\%\,black\)\]:hover{background-color:color-mix(in srgb,var(--system-negative-strong)85%,black)}}.hover\:bg-\[var\(--ghost-hover\)\]:hover{background-color:var(--ghost-hover)}.hover\:bg-\[var\(--primary-hover\)\]:hover{background-color:var(--primary-hover)}.hover\:bg-\[var\(--surface-active\)\]:hover{background-color:var(--surface-active)}.hover\:bg-\[var\(--surface-base\)\]:hover{background-color:var(--surface-base)}.hover\:bg-\[var\(--surface-hover\)\]:hover{background-color:var(--surface-hover)}.hover\:bg-\[var\(--surface-lift\)\]:hover{background-color:var(--surface-lift)}.hover\:bg-\[var\(--surface-overlay\)\]:hover{background-color:var(--surface-overlay)}.hover\:bg-\[var\(--surface-secondary\)\]:hover{background-color:var(--surface-secondary)}.hover\:bg-\[var\(--system-mid-weak\)\]:hover{background-color:var(--system-mid-weak)}.hover\:bg-\[var\(--system-negative-hover\)\]:hover{background-color:var(--system-negative-hover)}.hover\:bg-\[var\(--system-negative-weak\)\]:hover{background-color:var(--system-negative-weak)}.hover\:bg-\[var\(--system-positive-strong\)\]:hover{background-color:var(--system-positive-strong)}.hover\:bg-\[var\(--system-positive-weak\)\]:hover{background-color:var(--system-positive-weak)}.hover\:bg-amber-500\/25:hover{background-color:oklab(85.267% .00271791 .145657/.25)}.hover\:bg-black\/5:hover{background-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.hover\:bg-black\/5:hover{background-color:color-mix(in oklab,var(--color-black)5%,transparent)}}.hover\:bg-black\/70:hover{background-color:#000000b3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-black\/70:hover{background-color:color-mix(in oklab,var(--color-black)70%,transparent)}}.hover\:bg-forest-700:hover{background-color:#277e41}.hover\:bg-stone-300:hover{background-color:#cfccc9}.hover\:bg-transparent:hover{background-color:#0000}.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\:text-\[var\(--content-default\)\]:hover{color:var(--content-default)}.hover\:text-\[var\(--content-emphasised\)\]:hover{color:var(--content-emphasised)}.hover\:text-\[var\(--content-link-hover\)\]:hover{color:var(--content-link-hover)}.hover\:text-\[var\(--content-secondary\)\]:hover{color:var(--content-secondary)}.hover\:text-\[var\(--content-tertiary\)\]:hover{color:var(--content-tertiary)}.hover\:text-forest-700:hover{color:#277e41}.hover\:text-stone-300:hover{color:#cfccc9}.hover\:text-white:hover{color:var(--color-white)}.hover\:no-underline:hover{text-decoration-line:none}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-75:hover{opacity:.75}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-md:hover{--tw-shadow:0 4px 8px var(--tw-shadow-color,#0000001f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:\[--vbtn-fg\:var\(--primary-active\)\]:hover{--vbtn-fg:var(--primary-active)}.hover\:\[--vbtn-fg\:var\(--system-negative-hover\)\]:hover{--vbtn-fg:var(--system-negative-hover)}}.focus\:border-\[var\(--border-focus\)\]:focus{border-color:var(--border-focus)}.focus\:border-forest-600:focus{border-color:#2e9a4e}.focus\:border-forest-600\/50:focus{border-color:oklab(60.7547% -.127528 .0758282/.5)}.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);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-forest-600:focus{--tw-ring-color:#2e9a4e}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-\[var\(--border-active\)\]:focus-visible{border-color:var(--border-active)}.focus-visible\:border-\[var\(--system-negative-strong\)\]:focus-visible{border-color:var(--system-negative-strong)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + 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-visible\:ring-2:focus-visible{--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-visible\:ring-\[color-mix\(in_srgb\,var\(--system-positive-strong\)_30\%\,transparent\)\]:focus-visible{--tw-ring-color:var(--system-positive-strong)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-\[color-mix\(in_srgb\,var\(--system-positive-strong\)_30\%\,transparent\)\]:focus-visible{--tw-ring-color:color-mix(in srgb,var(--system-positive-strong)30%,transparent)}}.focus-visible\:ring-\[var\(--primary-base\)\]:focus-visible{--tw-ring-color:var(--primary-base)}.focus-visible\:ring-\[var\(--ring\)\]:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--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-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-\[var\(--border-focus\)\]:focus-visible{outline-color:var(--border-focus)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-inset:focus-visible{--tw-ring-inset:inset}.active\:scale-100:active{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.active\:scale-\[0\.97\]:active{scale:.97}.active\:cursor-grabbing:active{cursor:grabbing}.active\:border-\[var\(--system-negative-hover\)\]:active{border-color:var(--system-negative-hover)}.active\:bg-\[color-mix\(in_srgb\,var\(--primary-second-hover\)_20\%\,transparent\)\]:active{background-color:var(--primary-second-hover)}@supports (color:color-mix(in lab, red, red)){.active\:bg-\[color-mix\(in_srgb\,var\(--primary-second-hover\)_20\%\,transparent\)\]:active{background-color:color-mix(in srgb,var(--primary-second-hover)20%,transparent)}}.active\:bg-\[var\(--primary-active\)\]:active{background-color:var(--primary-active)}.active\:bg-\[var\(--surface-active\)\]:active{background-color:var(--surface-active)}.active\:bg-\[var\(--system-negative-hover\)\]:active{background-color:var(--system-negative-hover)}.active\:bg-\[var\(--system-negative-weak\)\]:active{background-color:var(--system-negative-weak)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:cursor-wait:disabled{cursor:wait}.disabled\:border-\[var\(--border-base\)\]:disabled{border-color:var(--border-base)}.disabled\:border-\[var\(--primary-disabled\)\]:disabled{border-color:var(--primary-disabled)}.disabled\:bg-\[var\(--border-disabled\)\]:disabled{background-color:var(--border-disabled)}.disabled\:bg-\[var\(--primary-disabled\)\]:disabled{background-color:var(--primary-disabled)}.disabled\:bg-\[var\(--surface-overlay\)\]:disabled{background-color:var(--surface-overlay)}.disabled\:bg-transparent:disabled{background-color:#0000}.disabled\:text-\[var\(--content-disabled\)\]:disabled{color:var(--content-disabled)}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.disabled\:\[--radio-border\:var\(--content-disabled\)\]:disabled{--radio-border:var(--content-disabled)}.disabled\:\[--vbtn-fg\:var\(--content-disabled\)\]:disabled{--vbtn-fg:var(--content-disabled)}.disabled\:\[--vbtn-fg\:…\]:disabled{--vbtn-fg:…}@media (hover:hover){.disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}.disabled\:hover\:text-\[var\(--content-disabled\)\]:disabled:hover{color:var(--content-disabled)}}.disabled\:active\:scale-100:disabled:active{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.has-\[\:focus-visible\]\:opacity-100:has(:focus-visible){opacity:1}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:cursor-not-allowed[aria-disabled=true]{cursor:not-allowed}.aria-disabled\:opacity-60[aria-disabled=true]{opacity:.6}.aria-disabled\:active\:scale-100[aria-disabled=true]:active{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.aria-\[current\=page\]\:bg-\[color-mix\(in_oklab\,var\(--primary-base\)_10\%\,transparent\)\][aria-current=page]{background-color:var(--primary-base)}@supports (color:color-mix(in lab, red, red)){.aria-\[current\=page\]\:bg-\[color-mix\(in_oklab\,var\(--primary-base\)_10\%\,transparent\)\][aria-current=page]{background-color:color-mix(in oklab,var(--primary-base)10%,transparent)}}.aria-\[current\=page\]\:bg-\[var\(--surface-active\)\][aria-current=page]{background-color:var(--surface-active)}.aria-\[current\=page\]\:font-medium[aria-current=page]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.aria-\[current\=page\]\:text-\[var\(--content-emphasised\)\][aria-current=page]{color:var(--content-emphasised)}.aria-\[current\=page\]\:text-\[var\(--primary-base\)\][aria-current=page]{color:var(--primary-base)}.aria-\[expanded\=true\]\:bg-\[var\(--surface-active\)\][aria-expanded=true]{background-color:var(--surface-active)}.aria-\[expanded\=true\]\:text-\[var\(--content-emphasised\)\][aria-expanded=true]{color:var(--content-emphasised)}.data-\[disabled\]\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-\[disabled\]\:text-\[var\(--content-disabled\)\][data-disabled]{color:var(--content-disabled)}.data-\[highlighted\]\:bg-\[var\(--surface-hover\)\][data-highlighted]{background-color:var(--surface-hover)}.data-\[highlighted\]\:text-\[var\(--content-emphasised\)\][data-highlighted]{color:var(--content-emphasised)}.data-\[highlighted\]\:text-red-700[data-highlighted]{color:var(--color-red-700)}.data-\[disabled\]\:data-\[highlighted\]\:bg-transparent[data-disabled][data-highlighted]{background-color:#0000}.data-\[state\=active\]\:border-\[var\(--primary-base\)\][data-state=active]{border-color:var(--primary-base)}.data-\[state\=active\]\:text-\[var\(--content-default\)\][data-state=active]{color:var(--content-default)}@media (hover:hover){.data-\[state\=active\]\:hover\:bg-transparent[data-state=active]:hover{background-color:#0000}}.data-\[state\=checked\]\:border-transparent[data-state=checked]{border-color:#0000}.data-\[state\=checked\]\:bg-\[var\(--system-positive-strong\)\][data-state=checked]{background-color:var(--system-positive-strong)}.disabled\:data-\[state\=checked\]\:bg-\[var\(--surface-overlay\)\]:disabled[data-state=checked]{background-color:var(--surface-overlay)}.data-\[state\=delayed-open\]\:animate-\[popoverIn_120ms_ease-out\][data-state=delayed-open]{animation:.12s ease-out popoverIn}.data-\[state\=indeterminate\]\:border-transparent[data-state=indeterminate]{border-color:#0000}.data-\[state\=indeterminate\]\:bg-\[var\(--system-positive-strong\)\][data-state=indeterminate]{background-color:var(--system-positive-strong)}.disabled\:data-\[state\=indeterminate\]\:bg-\[var\(--surface-overlay\)\]:disabled[data-state=indeterminate]{background-color:var(--surface-overlay)}.data-\[state\=instant-open\]\:animate-\[popoverIn_60ms_ease-out\][data-state=instant-open]{animation:60ms ease-out popoverIn}.data-\[state\=open\]\:animate-\[bottomSheetIn_180ms_ease-out\][data-state=open]{animation:.18s ease-out bottomSheetIn}.data-\[state\=open\]\:animate-\[popoverIn_120ms_ease-out\][data-state=open]{animation:.12s ease-out popoverIn}.data-\[state\=open\]\:border-\[var\(--border-active\)\][data-state=open]{border-color:var(--border-active)}.data-\[state\=open\]\:bg-\[var\(--surface-hover\)\][data-state=open]{background-color:var(--surface-hover)}.data-\[state\=open\]\:text-\[var\(--content-emphasised\)\][data-state=open]{color:var(--content-emphasised)}.data-\[state\=open\]\:\[--vbtn-fg\:var\(--content-default\)\][data-state=open]{--vbtn-fg:var(--content-default)}.data-\[state\=unchecked\]\:opacity-0[data-state=unchecked]{opacity:0}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-\[backdrop-filter\]\:bg-black\/25{background-color:#00000040}@supports (color:color-mix(in lab, red, red)){.supports-\[backdrop-filter\]\:bg-black\/25{background-color:color-mix(in oklab,var(--color-black)25%,transparent)}}}@media (prefers-reduced-motion:no-preference){@media (hover:hover){.motion-safe\:group-hover\:invisible:is(:where(.group):hover *){visibility:hidden}.motion-safe\:group-hover\:visible:is(:where(.group):hover *){visibility:visible}.motion-safe\:group-hover\:animate-panelitem-marquee:is(:where(.group):hover *){animation:panelitem-marquee var(--panelitem-marquee-duration,4s)linear infinite}}}@media not all and (width>=48rem){.max-md\:size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.max-md\:h-4{height:calc(var(--spacing)*4)}.max-md\:h-6{height:calc(var(--spacing)*6)}.max-md\:h-9{height:calc(var(--spacing)*9)}.max-md\:h-10{height:calc(var(--spacing)*10)}.max-md\:h-12{height:calc(var(--spacing)*12)}.max-md\:h-auto{height:auto}.max-md\:w-4{width:calc(var(--spacing)*4)}.max-md\:w-6{width:calc(var(--spacing)*6)}.max-md\:w-10{width:calc(var(--spacing)*10)}.max-md\:w-12{width:calc(var(--spacing)*12)}.max-md\:min-w-9{min-width:calc(var(--spacing)*9)}.max-md\:gap-\[8px\]{gap:8px}.max-md\:rounded-full{border-radius:3.40282e38px}.max-md\:rounded-md{border-radius:8px}.max-md\:bg-\[var\(--surface-lift\)\]{background-color:var(--surface-lift)}.max-md\:bg-transparent{background-color:#0000}.max-md\:px-2{padding-inline:calc(var(--spacing)*2)}.max-md\:py-3{padding-block:calc(var(--spacing)*3)}.max-md\:pt-4{padding-top:calc(var(--spacing)*4)}.max-md\:pr-2{padding-right:calc(var(--spacing)*2)}.max-md\:text-body-large-default{font-family:var(--font-sans);font-size:var(--text-body-large-default-size);font-weight:var(--text-body-large-default-weight);line-height:var(--text-body-large-default-line-height)}.max-md\:opacity-100{opacity:1}.max-md\:\[--vbtn-fg\:var\(--content-default\)\]{--vbtn-fg:var(--content-default)}@media (hover:hover){.max-md\:hover\:bg-\[var\(--surface-active\)\]:hover{background-color:var(--surface-active)}.max-md\:hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.max-md\:hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}}.max-md\:active\:bg-\[var\(--surface-active\)\]:active{background-color:var(--surface-active)}.max-md\:active\:bg-white\/10:active{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.max-md\:active\:bg-white\/10:active{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}}@media (width>=40rem){.sm\:block{display:block}.sm\:flex{display:flex}.sm\:grid{display:grid}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:max-h-none{max-height:none}.sm\:max-w-\[420px\]{max-width:420px}.sm\:max-w-\[640px\]{max-width:640px}.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\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}.sm\:grid-cols-\[320px_1fr\]{grid-template-columns:320px 1fr}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:justify-center{justify-content:center}.sm\:gap-3{gap:calc(var(--spacing)*3)}.sm\:gap-6{gap:calc(var(--spacing)*6)}.sm\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.sm\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.sm\:p-6{padding:calc(var(--spacing)*6)}.sm\:px-4{padding-inline:calc(var(--spacing)*4)}.sm\:px-6{padding-inline:calc(var(--spacing)*6)}.sm\:py-3{padding-block:calc(var(--spacing)*3)}.sm\:pb-0{padding-bottom:calc(var(--spacing)*0)}.sm\:text-body-medium-lighter{font-family:var(--font-sans);font-size:var(--text-body-medium-lighter-size);font-weight:var(--text-body-medium-lighter-weight);line-height:var(--text-body-medium-lighter-line-height)}}@media (width>=48rem){.md\:order-2{order:2}.md\:order-3{order:3}.md\:mx-0{margin-inline:calc(var(--spacing)*0)}.md\:mb-1{margin-bottom:calc(var(--spacing)*1)}.md\:mb-2{margin-bottom:calc(var(--spacing)*2)}.md\:ml-0{margin-left:calc(var(--spacing)*0)}.md\:block{display:block}.md\:contents{display:contents}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-5{height:calc(var(--spacing)*5)}.md\:w-auto{width:auto}.md\:max-w-\[280px\]{max-width:280px}.md\:flex-1{flex:1}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[auto_minmax\(0\,1fr\)\]{grid-template-columns:auto minmax(0,1fr)}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-start{align-items:flex-start}.md\:justify-between{justify-content:space-between}.md\:gap-0{gap:calc(var(--spacing)*0)}.md\:gap-2{gap:calc(var(--spacing)*2)}.md\:gap-3{gap:calc(var(--spacing)*3)}.md\:gap-4{gap:calc(var(--spacing)*4)}.md\:gap-x-8{column-gap:calc(var(--spacing)*8)}.md\:gap-y-4{row-gap:calc(var(--spacing)*4)}.md\:rounded-\[12px\]{border-radius:12px}.md\:border{border-style:var(--tw-border-style);border-width:1px}.md\:border-\[var\(--border-base\)\]{border-color:var(--border-base)}.md\:bg-\[var\(--surface-overlay\)\]{background-color:var(--surface-overlay)}.md\:px-2{padding-inline:calc(var(--spacing)*2)}.md\:px-3{padding-inline:calc(var(--spacing)*3)}.md\:px-6{padding-inline:calc(var(--spacing)*6)}.md\:py-1\.5{padding-block:calc(var(--spacing)*1.5)}.md\:py-2{padding-block:calc(var(--spacing)*2)}.md\:pt-0{padding-top:calc(var(--spacing)*0)}.md\:pb-4{padding-bottom:calc(var(--spacing)*4)}.md\:text-center{text-align:center}.md\:text-label-small-default{font-family:var(--font-sans);font-size:var(--text-label-small-default-size);font-weight:var(--text-label-small-default-weight);line-height:var(--text-label-small-default-line-height)}.md\:text-title-medium{font-family:var(--font-sans);font-size:var(--text-title-medium-size);font-weight:var(--text-title-medium-weight);line-height:var(--text-title-medium-line-height)}.md\:opacity-0{opacity:0}.md\:group-focus-within\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media (hover:hover){.md\:group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}}@media (width>=64rem){.lg\:mx-0{margin-inline:calc(var(--spacing)*0)}.lg\:h-full{height:100%}.lg\:min-h-0{min-height:calc(var(--spacing)*0)}.lg\:shrink-0{flex-shrink:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-stretch{align-items:stretch}.lg\:overflow-y-auto{overflow-y:auto}}.dark\:block:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){display:block}.dark\:flex:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){display:flex}.dark\:hidden:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){display:none}:where(.dark\:divide-\[var\(--border-base\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *)>:not(:last-child)),.dark\:border-\[var\(--border-base\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){border-color:var(--border-base)}.dark\:border-forest-500:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){border-color:#3db85e}.dark\:border-moss-600:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){border-color:#2d3339}.dark\:border-stone-600:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){border-color:#71808e}.dark\:bg-\[var\(--surface-base\)\]\/40:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){background-color:var(--surface-base)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-\[var\(--surface-base\)\]\/40:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){background-color:color-mix(in oklab,var(--surface-base)40%,transparent)}}.dark\:bg-\[var\(--surface-lift\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){background-color:var(--surface-lift)}.dark\:bg-moss-600\/80:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){background-color:oklab(31.7755% -.00502545 -.0125988/.8)}.dark\:bg-moss-700:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){background-color:#24292e}.dark\:bg-moss-800:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){background-color:#1c2024}.dark\:bg-sky-950:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){background-color:var(--color-sky-950)}.dark\:text-\[var\(--content-default\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:var(--content-default)}.dark\:text-\[var\(--content-disabled\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:var(--content-disabled)}.dark\:text-\[var\(--content-secondary\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:var(--content-secondary)}.dark\:text-\[var\(--content-tertiary\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:var(--content-tertiary)}.dark\:text-amber-600:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:#f1b21e}.dark\:text-forest-400:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:#6ecf87}.dark\:text-red-400:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:var(--color-red-400)}.dark\:text-stone-200:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:#e9e6e2}.dark\:text-stone-400:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *){color:#a9b2bb}@media (hover:hover){.dark\:hover\:bg-\[var\(--ghost-hover\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):hover{background-color:var(--ghost-hover)}.dark\:hover\:bg-moss-500:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):hover{background-color:#444d56}.dark\:hover\:bg-moss-600:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):hover{background-color:#2d3339}.dark\:hover\:bg-white\/10:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-white\/10:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.dark\:hover\:text-\[var\(--content-default\)\]:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):hover{color:var(--content-default)}.dark\:hover\:text-forest-300:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):hover{color:#a4e2b5}.dark\:hover\:text-stone-200:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):hover{color:#e9e6e2}}.dark\:focus\:text-stone-200:where([data-theme=dark],[data-theme=dark] *,[data-theme=velvet],[data-theme=velvet] *):focus{color:#e9e6e2}.\[\&_\[role\=combobox\]\]\:h-8 [role=combobox]{height:calc(var(--spacing)*8)}.\[\&_\[role\=radio\]\]\:h-7 [role=radio]{height:calc(var(--spacing)*7)}.\[\&_svg\]\:size-full svg{width:100%;height:100%}.\[\&\+\&\]\:border-t+.\[\&\+\&\]\:border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.\[\&\+\&\]\:border-\[var\(--border-base\)\]+.\[\&\+\&\]\:border-\[var\(--border-base\)\]{border-color:var(--border-base)}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}.\[\&\>span\]\:\!overflow-visible>span{overflow:visible!important}@media (hover:none){.\[\@media\(hover\:none\)\]\:pointer-events-auto{pointer-events:auto}.\[\@media\(hover\:none\)\]\:opacity-100{opacity:1}}}:root,[data-theme=light]{--surface-base:#f6f5f4;--surface-overlay:#fdfdfc;--surface-active:#f2f0ee;--surface-lift:#fff;--surface-hover:#b9b4ac14;--primary-base:#17191c;--primary-hover:#24292e;--primary-active:#2d3339;--primary-disabled:#f6f5f4;--primary-second-hover:#b9b4ac;--border-base:#f2f0ee;--border-disabled:#e9e6e2;--border-element:#cfccc9;--border-hover:#f6f5f4;--border-active:#2d3339;--content-default:#24292e;--content-emphasised:#161616;--content-secondary:#5a6672;--content-tertiary:#71808e;--content-quiet:#8d99a5;--content-strong:#24292e;--content-faint:#a9b2bb;--content-disabled:#cfccc9;--content-inset:#fdfdfc;--surface-sunken:#f6f5f4;--border-subtle:#e9e6e2;--system-positive-strong:#277e41;--system-positive-weak:#e9f2ec;--system-negative-strong:#da491a;--system-negative-hover:#e86b40;--system-negative-weak:#f7dac9;--system-mid-strong:#f1b21e;--system-mid-weak:#fcf3dd;--system-info-strong:#467cc8;--system-info-weak:#cedaec;--feed-nudge-strong:#db4b77;--feed-nudge-weak:#f0d9e0;--feed-digest-strong:#0e9b8b;--feed-digest-weak:#c8e5e2;--feed-thread-strong:#e9c91a;--feed-thread-weak:#efe8c4;--aux-white:#fff;--shadow-popover:0 1px 3px 0 #0000001a,0 4px 12px 0 #0000001a;--ring:var(--system-positive-strong)}@supports (color:color-mix(in lab, red, red)){:root,[data-theme=light]{--ring:color-mix(in srgb,var(--system-positive-strong)30%,transparent)}}:root,[data-theme=light]{--border-overlay:var(--border-disabled);--ghost-hover:var(--surface-active);--ghost-pressed:var(--border-disabled);--field-bg:var(--surface-lift);--field-border:var(--border-element);--tag-bg-neutral:var(--surface-base);--background:#f6f5f4;--foreground:#24292e}[data-theme=dark]{--surface-base:#17191c;--surface-overlay:#1c2024;--surface-active:#444d56;--surface-lift:#24292e;--surface-hover:#e9e6e20f;--primary-base:#fdfdfc;--primary-hover:#f2f0ee;--primary-active:#e9e6e2;--primary-disabled:#2d3339;--primary-second-hover:#e9e6e2;--border-base:#24292e;--border-disabled:#1c2024;--border-element:#5a6672;--border-hover:#2d3339;--border-active:#f6f5f4;--content-default:#f6f5f4;--content-emphasised:#fdfdfc;--content-secondary:#a9b2bb;--content-tertiary:#8d99a5;--content-quiet:#a9b2bb;--content-strong:#e9e6e2;--content-faint:#8d99a5;--content-disabled:#5a6672;--content-inset:#17191c;--surface-sunken:#1c2024;--border-subtle:#2d3339;--system-positive-strong:#309c50;--system-positive-weak:#2c3a31;--system-negative-strong:#da491a;--system-negative-hover:#ab3f1c;--system-negative-weak:#4f2d24;--system-mid-strong:#f1b21e;--system-mid-weak:#4b3d1e;--system-info-strong:#467cc8;--system-info-weak:#2a3a50;--feed-nudge-strong:#db4b77;--feed-nudge-weak:#432b33;--feed-digest-strong:#0e9b8b;--feed-digest-weak:#293d3b;--feed-thread-strong:#e9c91a;--feed-thread-weak:#464125;--aux-white:#fff;--shadow-popover:0 1px 3px 0 #00000040,0 4px 12px 0 #00000040;--ring:var(--system-positive-strong)}@supports (color:color-mix(in lab, red, red)){[data-theme=dark]{--ring:color-mix(in srgb,var(--system-positive-strong)30%,transparent)}}[data-theme=dark]{--border-overlay:var(--border-hover);--ghost-hover:var(--border-base);--ghost-pressed:var(--primary-active);--field-bg:#2d3339;--field-border:transparent;--tag-bg-neutral:var(--primary-disabled);--background:#17191c;--foreground:#f6f5f4}[data-theme=velvet]{--surface-base:#121214;--surface-overlay:#1a171b;--surface-active:#30252b;--surface-lift:#211d22;--surface-hover:#f43f5e14;--primary-base:#e83f5b;--primary-hover:#f45a73;--primary-active:#c92e48;--primary-disabled:#30252b;--primary-second-hover:#f43f5e;--border-base:#24292e;--border-disabled:#1c2024;--border-element:#735261;--border-hover:#30252b;--border-active:#ffb3c7;--content-default:#f6f5f4;--content-emphasised:#fff7fa;--content-secondary:#c8b6be;--content-tertiary:#a98695;--content-quiet:#a9b2bb;--content-strong:#e9e6e2;--content-faint:#8d99a5;--content-disabled:#6b5962;--content-inset:#fff7fa;--surface-sunken:#1c2024;--border-subtle:#2d3339;--system-positive-strong:#e83f5b;--system-positive-weak:#382027;--system-negative-strong:#ef4444;--system-negative-hover:#f87171;--system-negative-weak:#3a2024;--system-mid-strong:#f1b21e;--system-mid-weak:#42321c;--system-info-strong:#467cc8;--system-info-weak:#2a3a50;--feed-nudge-strong:#db4b77;--feed-nudge-weak:#432b33;--feed-digest-strong:#0e9b8b;--feed-digest-weak:#293d3b;--feed-thread-strong:#e9c91a;--feed-thread-weak:#464125;--aux-white:#fff;--shadow-popover:0 1px 3px 0 #00000040,0 4px 12px 0 #00000040;--ring:var(--system-positive-strong)}@supports (color:color-mix(in lab, red, red)){[data-theme=velvet]{--ring:color-mix(in srgb,var(--system-positive-strong)30%,transparent)}}[data-theme=velvet]{--border-overlay:var(--border-hover);--ghost-hover:var(--border-base);--ghost-pressed:var(--primary-active);--field-bg:#242026;--field-border:transparent;--tag-bg-neutral:var(--primary-disabled);--background:#121214;--foreground:#f6f5f4}:root{--text-title-large-size:24px;--text-title-large-weight:500;--text-title-large-line-height:1;--text-title-medium-size:20px;--text-title-medium-weight:500;--text-title-medium-line-height:1;--text-title-small-size:16px;--text-title-small-weight:500;--text-title-small-line-height:1;--text-body-large-lighter-size:16px;--text-body-large-lighter-weight:400;--text-body-large-lighter-line-height:20px;--text-body-large-default-size:16px;--text-body-large-default-weight:500;--text-body-large-default-line-height:20px;--text-body-medium-lighter-size:14px;--text-body-medium-lighter-weight:400;--text-body-medium-lighter-line-height:18px;--text-body-medium-default-size:14px;--text-body-medium-default-weight:500;--text-body-medium-default-line-height:18px;--text-body-small-default-size:12px;--text-body-small-default-weight:500;--text-body-small-default-line-height:1;--text-body-small-emphasised-size:12px;--text-body-small-emphasised-weight:600;--text-body-small-emphasised-line-height:1;--text-label-medium-default-size:11px;--text-label-medium-default-weight:500;--text-label-medium-default-line-height:1;--text-label-small-default-size:10px;--text-label-small-default-weight:500;--text-label-small-default-line-height:1;--text-chat-size:16px;--text-chat-weight:400;--text-chat-line-height:24px}@keyframes popoverIn{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes bottomSheetIn{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes panelitem-marquee{0%{transform:translate(0)}10%{transform:translate(0)}50%{transform:translateX(calc(-1*var(--panelitem-marquee-distance,0px)))}60%{transform:translateX(calc(-1*var(--panelitem-marquee-distance,0px)))}to{transform:translate(0)}}@keyframes collapsible-slide-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes collapsible-slide-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.collapsible-content[data-state=open]{animation:.2s cubic-bezier(.16,1,.3,1) collapsible-slide-down}.collapsible-content[data-state=closed]{animation:.2s cubic-bezier(.16,1,.3,1) collapsible-slide-up}body{color:var(--content-default)}@keyframes indeterminate{0%{width:0%;margin-left:0%}50%{width:60%;margin-left:20%}to{width:0%;margin-left:100%}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes typing-dot-pulse{0%,to{opacity:.45;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}@keyframes avatar-breathe-kf{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes avatar-morph-scale{0%,to{transform:scale(1)}25%{transform:scale(1.02,.99)}50%{transform:scale(.99,1.02)}75%{transform:scale(1.01,.99)}}@keyframes avatar-morph-rotate{0%,to{transform:rotate(0)}25%{transform:rotate(.86deg)}50%{transform:rotate(0)}75%{transform:rotate(-.86deg)}}@keyframes busy-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.85)}}.busy-indicator{animation:1s ease-in-out infinite busy-pulse}@keyframes morphPulse{0%{transform:scale(.9)}to{transform:scale(1)}}.onboarding-avatar-pulse{opacity:.6;will-change:transform,opacity;animation:1.2s ease-in-out infinite alternate morphPulse}.onboarding-avatar-awake{opacity:1;transition:transform .6s cubic-bezier(.34,1.56,.64,1),opacity .4s ease-out;transform:scale(1.1)}.onboarding-avatar-failed{filter:grayscale()brightness(.55);opacity:1;transform:rotate(45deg)}@keyframes onboarding-glow{0%,to{opacity:.12;transform:scale(1)}50%{opacity:.24;transform:scale(1.15)}}@keyframes welcome-reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes welcome-crown-glow{0%,to{opacity:.18;transform:scale(1)}50%{opacity:.32;transform:scale(1.08)}}@keyframes onboarding-step-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.app-shell{width:100%;min-width:0}.app-shell-main>*{flex:auto;width:100%;min-width:0;min-height:0}:root,:root *,:root :before,:root :after{scrollbar-width:thin;scrollbar-color:#71808e59 transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#71808e59 padding-box padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#71808e99 padding-box padding-box}::-webkit-scrollbar-corner{background:0 0}[data-theme=dark],[data-theme=dark] *,[data-theme=dark] :before,[data-theme=dark] :after{scrollbar-color:#a9b2bb40 transparent}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#a9b2bb40 padding-box padding-box}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#a9b2bb80 padding-box padding-box}[data-theme=velvet],[data-theme=velvet] *,[data-theme=velvet] :before,[data-theme=velvet] :after{scrollbar-color:#e83f5b47 transparent}[data-theme=velvet] ::-webkit-scrollbar-thumb{background:#e83f5b47 padding-box padding-box}[data-theme=velvet] ::-webkit-scrollbar-thumb:hover{background:#e83f5b80 padding-box padding-box}@media (prefers-reduced-motion:reduce){.busy-indicator{opacity:.6;animation:none}.typing-dot{opacity:.7!important;animation:none!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-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@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(360deg)}}@keyframes pulse{50%{opacity:.5}}
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BlnqVGWw.js";import{t as n}from"./jsx-runtime-2-RJdKf7.js";import{t as r}from"./cn-B70VuHjM.js";import{C as i}from"./portal-container-T4u-kJy6.js";import{t as a}from"./typography-X3i-p9De.js";var o=e(t(),1),s=n(),c=i([`block w-full rounded-md border bg-[var(--field-bg)]`,`text-body-medium-lighter text-[var(--content-default)]`,`placeholder:text-[var(--content-tertiary)]`,`transition-[border-color,background-color] duration-150 ease-out`,`outline-none`,`disabled:cursor-not-allowed disabled:opacity-60`].join(` `),{variants:{invalid:{true:[`border-[var(--system-negative-strong)]`,`focus-visible:border-[var(--system-negative-strong)]`].join(` `),false:[`border-[var(--field-border)]`,`focus-visible:border-[var(--border-active)]`].join(` `)},density:{input:`h-9 px-3 py-1.5`,textarea:`min-h-[72px] px-3 py-2 resize-y`},hasLeftIcon:{true:``,false:``},hasRightIcon:{true:``,false:``}},compoundVariants:[{density:`input`,hasLeftIcon:!0,class:`pl-9`},{density:`input`,hasRightIcon:!0,class:`pr-9`}],defaultVariants:{invalid:!1,density:`input`,hasLeftIcon:!1,hasRightIcon:!1}});function l({id:e,label:t,helperText:n,errorText:i,fullWidth:o,disabled:c,className:l,children:u}){let d=i?`${e}-error`:n?`${e}-helper`:void 0;return(0,s.jsxs)(`div`,{"data-slot":`field-wrapper`,className:r(`flex flex-col gap-1.5`,o?`w-full`:`w-fit`,l),children:[t?(0,s.jsx)(a,{as:`label`,variant:`body-small-default`,htmlFor:e,className:r(`text-[var(--content-secondary)]`,c&&`opacity-60`),children:t}):null,u,i?(0,s.jsx)(`span`,{id:d,role:`alert`,"data-testid":`input-error`,className:`text-body-small-default text-[var(--system-negative-strong)]`,children:i}):n?(0,s.jsx)(`span`,{id:d,className:`text-body-small-default text-[var(--content-tertiary)]`,children:n}):null]})}function u({label:e,helperText:t,errorText:n,leftIcon:i,rightIcon:a,fullWidth:u=!1,wrapperClassName:d,className:f,id:p,disabled:m,ref:h,"aria-invalid":g,"aria-describedby":_,...v}){let y=(0,o.useId)(),b=p??`input-${y}`,x=n!=null||g===!0,S=n?`${b}-error`:t?`${b}-helper`:void 0;return(0,s.jsx)(l,{id:b,label:e,helperText:t,errorText:n,fullWidth:u,disabled:m===!0,className:d,children:(0,s.jsxs)(`div`,{className:`relative flex items-center`,children:[i?(0,s.jsx)(`span`,{"aria-hidden":!0,"data-testid":`input-left-icon`,className:`pointer-events-none absolute left-3 flex items-center text-[var(--content-tertiary)]`,children:i}):null,(0,s.jsx)(`input`,{...v,ref:h,id:b,disabled:m,"aria-invalid":x||void 0,"aria-describedby":_??S,"data-slot":`input`,className:r(c({invalid:x,density:`input`,hasLeftIcon:i!=null,hasRightIcon:a!=null}),f)}),a?(0,s.jsx)(`span`,{"aria-hidden":!0,"data-testid":`input-right-icon`,className:`pointer-events-none absolute right-3 flex items-center text-[var(--content-tertiary)]`,children:a}):null]})})}function d({label:e,helperText:t,errorText:n,fullWidth:i=!1,wrapperClassName:a,className:u,id:d,disabled:f,ref:p,"aria-invalid":m,"aria-describedby":h,...g}){let _=(0,o.useId)(),v=d??`textarea-${_}`,y=n!=null||m===!0,b=n?`${v}-error`:t?`${v}-helper`:void 0;return(0,s.jsx)(l,{id:v,label:e,helperText:t,errorText:n,fullWidth:i,disabled:f===!0,className:a,children:(0,s.jsx)(`textarea`,{...g,ref:p,id:v,disabled:f,"aria-invalid":y||void 0,"aria-describedby":h??b,"data-slot":`textarea`,className:r(c({invalid:y,density:`textarea`,hasLeftIcon:!1,hasRightIcon:!1}),u)})})}export{d as n,u as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{r as t,s as n}from"./local-settings-lVNyIOJ_.js";import{p as r}from"./native-biometric-D17G0wwQ.js";import{t as i}from"./react-BlnqVGWw.js";import{r as a}from"./routes-Bc63mRsk.js";import{n as o}from"./QueryClientProvider-B6PnMGWJ.js";import{t as s}from"./useQuery-DQMwUXEx.js";import{t as c}from"./useMutation-Cq8DErPD.js";import{t as l}from"./jsx-runtime-2-RJdKf7.js";import{C as u,S as d,b as f,x as p}from"./react-query.gen-CaeZaVZK.js";import{t as m}from"./button-aAWi2gw6.js";import{t as h}from"./card-CaVHvRGL.js";import{O as g,S as _,t as v}from"./panel-item-CH4BnWiy.js";import{n as y}from"./stat-square-C4k7AFbD.js";import{t as b}from"./notice-C9Zmf-rY.js";import{t as x}from"./input-DMJDsLW2.js";import{t as S}from"./toast-BRhiclkk.js";import{n as C}from"./use-is-mobile-L-si1_f-.js";import{t as w}from"./external-link-BzN68Baf.js";import{t as T}from"./loader-circle-DfyYkLlZ.js";import{t as E}from"./pencil-rsHfEBVu.js";import{t as D}from"./x-D9hhnMwf.js";import{$n as O,Gr as k,Kn as A,Nt as j,O as M,_t as N,ci as P,h as F,k as I,m as L,ui as R,wt as z,zt as B}from"./index-D6-nsIUa.js";import{i as V,n as H,t as U}from"./oauth-popup-DOiKxIt3.js";import{t as W}from"./use-oauth-complete-deep-link-listener-ChUbzwXg.js";import{t as G}from"./error-report-sc-aicjG.js";var K=e(i(),1);async function q(e,t){try{let t=await e.json();if(t?.error?.message)return t.error.message;if(t?.detail)return t.detail;if(t?.message)return t.message}catch{}return`${t} (HTTP ${e.status})`}async function J(e,t){let n=`/v1/assistants/${e}/oauth/apps/?provider_key=${encodeURIComponent(t)}`,r=await fetch(n,{headers:L()});if(!r.ok)throw Error(await q(r,`Failed to load OAuth apps`));return(await r.json()).apps??[]}async function ee(e,t){let n=`/v1/assistants/${e}/oauth/apps/`,r=await fetch(n,{method:`POST`,headers:await F({"Content-Type":`application/json`}),body:JSON.stringify(t)});if(!r.ok)throw Error(await q(r,`Failed to create OAuth app`));return await r.json()}async function te(e,t){let n=`/v1/assistants/${e}/oauth/apps/${t}/`,r=await fetch(n,{method:`DELETE`,headers:await F()});if(!r.ok)throw Error(await q(r,`Failed to delete OAuth app`))}async function ne(e,t){let n=`/v1/assistants/${e}/oauth/apps/${t}/connections/`,r=await fetch(n,{headers:L()});if(!r.ok)throw Error(await q(r,`Failed to load OAuth app connections`));return(await r.json()).connections??[]}async function re(e,t){let n=`/v1/assistants/${e}/oauth/connections/${t}/`,r=await fetch(n,{method:`DELETE`,headers:await F()});if(!r.ok)throw Error(await q(r,`Failed to disconnect OAuth account`))}async function ie(e,t,n){let r=`/v1/assistants/${e}/oauth/apps/${t}/connect/`,i=await fetch(r,{method:`POST`,headers:await F({"Content-Type":`application/json`}),body:JSON.stringify({callback_transport:`gateway`,scopes:n??[]})});if(!i.ok)throw Error(await q(i,`Failed to start OAuth flow`));let a=await i.json();if(!a.auth_url)throw Error(`OAuth flow did not return an authorization URL`);return{authUrl:a.auth_url,state:a.state}}function Y(e){return e.length>16?`${e.slice(0,12)}…${e.slice(-4)}`:e.length>8?`${e.slice(0,8)}…`:e}function ae(e){try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}var X=l(),Z=[`bg-sky-500`,`bg-violet-500`,`bg-fuchsia-500`,`bg-teal-500`,`bg-orange-500`,`bg-amber-500`,`bg-rose-500`,`bg-indigo-500`];function oe(e){let t=0;for(let n=0;n<e.length;n+=1)t=(t+e.charCodeAt(n))%(2**53-1);return Z[t%Z.length]??Z[0]}function Q({providerKey:e,displayName:t,logoUrl:n,size:r=32}){let[i,a]=(0,K.useState)(!1),o=(t??e).slice(0,2).toUpperCase(),s=oe(e);return n&&!i?(0,X.jsx)(`img`,{src:n,alt:``,width:r,height:r,style:{width:r,height:r},className:`shrink-0 rounded-md object-contain`,onError:()=>a(!0)}):(0,X.jsx)(`div`,{style:{width:r,height:r,fontSize:r*.4},className:`flex shrink-0 items-center justify-center rounded-full font-semibold text-white ${s}`,"aria-hidden":`true`,children:o})}function se(e,t){if(typeof e==`object`&&e&&`detail`in e){let t=e.detail;if(typeof t==`string`)return t}return e instanceof Error?e.message:t}function ce(e){return new Promise(t=>setTimeout(t,e))}function le(e){return JSON.stringify({status:e.status,connected:e.connected,account_label:e.account_label,scopes_granted:[...e.scopes_granted].sort(),expires_at:e.expires_at})}function ue(e,t){return new Map((e??[]).filter(e=>e.provider===t).map(e=>[e.id,le(e)]))}function de(e,t,n){return e.some(e=>e.provider===t&&e.connected&&n.get(e.id)!==le(e))}function fe({assistantId:e,providerKey:t,displayName:n,description:i,logoUrl:l,onClose:h}){let g=o(),_=r(),[v,b]=(0,K.useState)(`managed`),[x,C]=(0,K.useState)(null),[w,T]=(0,K.useState)(null),E=(0,K.useRef)(null),O=(0,K.useRef)(null),k=(0,K.useRef)(null),A=(0,K.useRef)(null),[j,N]=(0,K.useState)(!1),P=(0,K.useCallback)(()=>{O.current=null,N(!1)},[]),F=(0,K.useCallback)(()=>{E.current&&!E.current.closed&&E.current.close(),E.current=null,k.current&&=(clearInterval(k.current),null),A.current&&=(clearTimeout(A.current),null)},[]),L=p({path:{assistant_id:e}}),R=(0,K.useCallback)(e=>{if(e.type!==`vellum:oauth-complete`||!O.current||e.requestId!==O.current.requestId)return;let{oauthStatus:t,oauthCode:r}=e;if(F(),P(),t===`connected`)S.success(`${n} account connected.`),g.invalidateQueries({queryKey:L});else{let e=r?`Error: ${r}`:`Authorization failed`;S.error(`${n} ${e}`)}},[P,F,L,n,g]),z=(0,K.useCallback)(async n=>{for(let r=0;r<8;r+=1){r>0&&await ce(750);try{if(g.invalidateQueries({queryKey:L}),de(await g.fetchQuery({...f({path:{assistant_id:e}}),staleTime:0}),t,n))return!0}catch{}}return!1},[e,L,t,g]);(0,K.useEffect)(()=>{let e=e=>{e.key===`Escape`&&h()};document.addEventListener(`keydown`,e);let t=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.removeEventListener(`keydown`,e),document.body.style.overflow=t}},[h]),(0,K.useEffect)(()=>{let e=e=>{let t=O.current;if(!t)return;let n=U(e,window.location.origin,t.requestId);n&&R(n)},t=e=>{let t=O.current;if(!t)return;let n=H(e,t.requestId);n&&(R(n),window.localStorage.removeItem(V(t.requestId)))};return window.addEventListener(`message`,e),window.addEventListener(`storage`,t),()=>{window.removeEventListener(`message`,e),window.removeEventListener(`storage`,t)}},[R]),W((0,K.useCallback)(e=>{let t=O.current;t&&e.requestId===t.requestId&&R({type:`vellum:oauth-complete`,requestId:e.requestId,oauthStatus:e.oauthStatus,oauthProvider:e.oauthProvider,oauthCode:e.oauthCode})},[R])),(0,K.useEffect)(()=>I(()=>{let e=O.current;e&&(async()=>{let t=await z(e.baselineConnectionSignatures);O.current&&(P(),t&&S.success(`${n} account connected.`))})()}),[P,z,n]),(0,K.useEffect)(()=>()=>{k.current&&clearInterval(k.current),A.current&&clearTimeout(A.current),E.current&&!E.current.closed&&E.current.close()},[]);let{data:B,isLoading:G}=s(f({path:{assistant_id:e}})),q=(B??[]).filter(e=>e.provider===t&&e.connected),J=c({...u()}),ee=c({...d(),onSuccess(e,t){S.success(`${n} account disconnected.`);let r=t.path.connection_id;g.setQueryData(L,e=>e?.filter(e=>e.id!==r)),g.invalidateQueries({queryKey:L}),C(null)},onError(e){let t=se(e,`Failed to disconnect ${n} account.`);S.error(t),C(null)}}),te=(0,K.useCallback)(()=>{let r=crypto.randomUUID();if(_){N(!0),O.current={requestId:r,provider:t,baselineConnectionSignatures:ue(g.getQueryData(L)??B,t)},J.mutate({path:{assistant_id:e,provider:t},body:{requested_scopes:[],redirect_after_connect:`${a.account.oauth.popupComplete}?requestId=${r}&native=1`}},{onSuccess(e){M(e.connect_url)},onError(e){P();let t=se(e,`Failed to start ${n} authorization.`);S.error(t)}});return}let i=window.open(``,`_blank`,`width=500,height=600`);if(i===null){S.error(`Popup blocked. Please enable popups and try again.`);return}E.current=i,N(!0),O.current={requestId:r,provider:t,baselineConnectionSignatures:ue(g.getQueryData(L)??B,t)},k.current=setInterval(()=>{E.current&&E.current.closed&&O.current&&!A.current&&(A.current=setTimeout(async()=>{A.current=null;let e=O.current;if(!e)return;let t=window.localStorage.getItem(V(e.requestId));if(t)try{R(JSON.parse(t)),window.localStorage.removeItem(V(e.requestId));return}catch{}let r=await z(e.baselineConnectionSignatures);if(O.current){if(r){F(),P(),S.success(`${n} account connected.`);return}F(),P(),S.error(`${n} connection failed: authorization popup closed.`)}},1e3))},100),J.mutate({path:{assistant_id:e,provider:t},body:{requested_scopes:[],redirect_after_connect:`${a.account.oauth.popupComplete}?requestId=${r}`}},{onSuccess(e){E.current&&!E.current.closed?E.current.location.href=e.connect_url:O.current&&(F(),P(),S.error(`${n} connection failed: popup closed.`))},onError(e){F(),P();let t=se(e,`Failed to start ${n} authorization.`);S.error(t)}})},[e,t,n,B,L,g,P,F,R,z,J,_]),ne=e=>{T(e)},re=()=>{let t=w;T(null),t&&(C(t.id),ee.mutate({path:{assistant_id:e,connection_id:t.id}}))},ie=i?`Configure ${n} OAuth for ${i}`:`Configure ${n} OAuth`;return(0,X.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4`,children:[(0,X.jsxs)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-labelledby":`integration-modal-title`,className:`flex w-full max-w-[520px] flex-col overflow-hidden rounded-xl bg-white shadow-xl dark:bg-[var(--surface-lift)]`,children:[(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-[var(--border-base)] px-5 py-4 dark:border-[var(--border-base)]`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,X.jsx)(Q,{providerKey:t,displayName:n,logoUrl:l,size:32}),(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`h2`,{id:`integration-modal-title`,className:`text-title-small text-[var(--content-default)]`,children:[n,` OAuth`]}),(0,X.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:ie})]})]}),(0,X.jsx)(m,{variant:`ghost`,size:`compact`,iconOnly:(0,X.jsx)(D,{}),"aria-label":`Close`,onClick:h})]}),(0,X.jsxs)(`div`,{className:`space-y-4 px-5 py-4`,children:[(0,X.jsxs)(`div`,{role:`tablist`,"aria-label":`OAuth mode`,className:`flex w-full rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-0.5 dark:border-[var(--border-base)] dark:bg-[var(--surface-base)]/40`,children:[(0,X.jsx)(pe,{active:v===`managed`,onClick:()=>b(`managed`),children:`Managed`}),(0,X.jsx)(pe,{active:v===`your-own`,onClick:()=>b(`your-own`),children:`Your Own`})]}),v===`managed`?(0,X.jsx)(me,{displayName:n,providerKey:t,logoUrl:l,connections:q,connectionsLoading:G,startPending:J.isPending,oauthInProgress:j,disconnectingId:ee.isPending?x:null,onConnect:te,onDisconnect:ne}):(0,X.jsx)(he,{assistantId:e,providerKey:t,displayName:n,logoUrl:l})]}),(0,X.jsx)(`div`,{className:`flex justify-end border-t border-[var(--border-base)] px-5 py-3 dark:border-[var(--border-base)]`,children:(0,X.jsx)(m,{variant:`outlined`,size:`compact`,onClick:h,children:`Confirm`})})]}),(0,X.jsx)(y,{open:w!==null,title:`Disconnect ${n}?`,message:w?`Disconnect ${w.account_label??`${n} Account`}? You can reconnect later.`:``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:re,onCancel:()=>T(null)})]})}function pe({active:e,onClick:t,children:n}){return(0,X.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e,onClick:t,className:`flex-1 cursor-pointer rounded-[5px] px-3 py-1.5 text-body-medium-default transition-colors ${e?`bg-white text-[var(--content-default)] shadow-sm dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`:`text-[var(--content-secondary)] hover:text-[var(--content-default)] dark:text-[var(--content-disabled)] dark:hover:text-[var(--content-default)]`}`,children:n})}function me({displayName:e,providerKey:t,logoUrl:n,connections:r,connectionsLoading:i,startPending:a,oauthInProgress:o,disconnectingId:s,onConnect:c,onDisconnect:l}){return i?(0,X.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,X.jsx)(T,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):r.length===0?a||o?(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,X.jsx)(Q,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(T,{className:`h-3.5 w-3.5 animate-spin`}),`Waiting for authorization...`]})]}):(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,X.jsx)(Q,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,X.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:`Connect Account to continue`}),(0,X.jsx)(m,{variant:`primary`,size:`compact`,leftIcon:(0,X.jsx)(B,{}),onClick:c,disabled:a||o,children:`Connect Account`})]}):(0,X.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)]`,children:[(0,X.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:r.map(r=>{let i=s===r.id;return(0,X.jsxs)(`li`,{className:`flex items-center gap-3 px-4 py-3`,children:[(0,X.jsx)(Q,{providerKey:t,displayName:e,logoUrl:n,size:20}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:r.account_label??`${e} Account`}),(0,X.jsx)(m,{variant:`dangerOutline`,size:`compact`,iconOnly:i?(0,X.jsx)(T,{className:`animate-spin`}):(0,X.jsx)(N,{}),onClick:()=>l(r),disabled:i,"aria-label":`Disconnect ${r.account_label??`${e} account`}`})]},r.id)})}),(0,X.jsx)(`div`,{className:`border-t border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:a||o?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(T,{className:`h-3.5 w-3.5 animate-spin`}),`Waiting for authorization...`]}):(0,X.jsx)(m,{variant:`primary`,size:`compact`,leftIcon:(0,X.jsx)(w,{}),onClick:c,disabled:a||o,children:`Connect account`})})]})}function he({assistantId:e,providerKey:t,displayName:n,logoUrl:r}){let[i,a]=(0,K.useState)([]),[o,s]=(0,K.useState)({}),[c,l]=(0,K.useState)(!0),[u,d]=(0,K.useState)(!1),[f,p]=(0,K.useState)(``),[g,_]=(0,K.useState)(``),[v,b]=(0,K.useState)(!1),[C,E]=(0,K.useState)(null),[D,O]=(0,K.useState)(null),[k,A]=(0,K.useState)(null),[j,M]=(0,K.useState)(null),[P,F]=(0,K.useState)(null),I=(0,K.useCallback)(async t=>{try{let n=await ne(e,t);s(e=>({...e,[t]:n}))}catch(e){let t=e instanceof Error?e.message:`Failed to load connections`;S.error(t)}},[e]),L=(0,K.useCallback)(async()=>{l(!0);try{let n=await J(e,t);a(n),await Promise.all(n.map(e=>I(e.id)))}catch(e){let t=e instanceof Error?e.message:`Failed to load OAuth apps`;S.error(t)}finally{l(!1)}},[e,t,I]);(0,K.useEffect)(()=>{L()},[L]);let R=i.length===0||u,z=async()=>{if(!(!f.trim()||!g.trim())){b(!0);try{let r=await ee(e,{provider_key:t,client_id:f.trim(),client_secret:g.trim()});a(e=>[...e,r]),s(e=>({...e,[r.id]:[]})),p(``),_(``),d(!1),S.success(`${n} OAuth app added.`)}catch(e){let t=e instanceof Error?e.message:`Failed to create OAuth app`;S.error(t)}finally{b(!1)}}},V=e=>{M(e)},H=async()=>{let t=j;if(M(null),t){E(t.id);try{await te(e,t.id),a(e=>e.filter(e=>e.id!==t.id)),s(e=>{let n={...e};return delete n[t.id],n}),S.success(`OAuth app deleted.`)}catch(e){let t=e instanceof Error?e.message:`Failed to delete OAuth app`;S.error(t)}finally{E(null)}}},U=async t=>{O(t.id);try{let{authUrl:n}=await ie(e,t.id);window.location.href=n}catch(e){let t=e instanceof Error?e.message:`Failed to start OAuth flow`;S.error(t),O(null)}},W=(e,t)=>{F({appId:e,connection:t})},G=async()=>{let t=P;if(F(null),!t)return;let{appId:r,connection:i}=t;A(i.id);try{await re(e,i.id),s(e=>({...e,[r]:(e[r]??[]).filter(e=>e.id!==i.id)})),S.success(`${n} account disconnected.`)}catch(e){let t=e instanceof Error?e.message:`Failed to disconnect account`;S.error(t)}finally{A(null)}};return c?(0,X.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,X.jsx)(T,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):(0,X.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[R?(0,X.jsx)(h.Root,{children:(0,X.jsxs)(h.Body,{className:`flex flex-col gap-3`,children:[(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:i.length===0?`Add your own ${n} OAuth app`:`Add another ${n} OAuth app`}),(0,X.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-tertiary)]`,children:`Credentials are stored encrypted on the assistant and are never sent to Vellum.`})]}),(0,X.jsx)(x,{label:`Client ID`,type:`text`,value:f,onChange:e=>p(e.target.value),placeholder:`Enter your client ID`,fullWidth:!0}),(0,X.jsx)(x,{label:`Client Secret`,type:`password`,value:g,onChange:e=>_(e.target.value),placeholder:`Enter your client secret`,fullWidth:!0}),(0,X.jsxs)(`div`,{className:`flex items-center justify-end gap-2 pt-1`,children:[i.length>0?(0,X.jsx)(m,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{d(!1),p(``),_(``)},disabled:v,children:`Cancel`}):null,(0,X.jsx)(m,{type:`button`,size:`compact`,onClick:z,disabled:v||!f.trim()||!g.trim(),leftIcon:v?(0,X.jsx)(T,{className:`animate-spin`,"aria-hidden":!0}):(0,X.jsx)(B,{"aria-hidden":!0}),children:`Add App`})]})]})}):null,i.map(e=>{let i=o[e.id]??[],a=C===e.id,s=D===e.id;return(0,X.jsx)(h.Root,{children:(0,X.jsxs)(h.Body,{className:`flex flex-col gap-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,X.jsx)(`p`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:Y(e.client_id)}),(0,X.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Added `,ae(e.created_at)]})]}),(0,X.jsx)(m,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>V(e),disabled:a,"aria-label":`Delete OAuth app ${Y(e.client_id)}`,iconOnly:a?(0,X.jsx)(T,{className:`animate-spin`,"aria-hidden":!0}):(0,X.jsx)(N,{"aria-hidden":!0})})]}),i.length>0?(0,X.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)] overflow-hidden rounded-md border border-[var(--border-base)] dark:divide-[var(--border-base)] dark:border-[var(--border-base)]`,children:i.map(i=>{let a=k===i.id;return(0,X.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-2`,children:[(0,X.jsx)(Q,{providerKey:t,displayName:n,logoUrl:r,size:18}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-lighter text-[var(--content-default)]`,children:i.account_info??`${n} Account`}),(0,X.jsx)(m,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>W(e.id,i),disabled:a,"aria-label":`Disconnect ${i.account_info??`${n} account`}`,iconOnly:a?(0,X.jsx)(T,{className:`animate-spin`,"aria-hidden":!0}):(0,X.jsx)(N,{"aria-hidden":!0})})]},i.id)})}):null,(0,X.jsx)(m,{type:`button`,size:`compact`,onClick:()=>U(e),disabled:s,className:`w-full`,leftIcon:s?(0,X.jsx)(T,{className:`animate-spin`,"aria-hidden":!0}):(0,X.jsx)(w,{"aria-hidden":!0}),children:s?`Waiting for authorization...`:`Connect account`})]})},e.id)}),i.length>0&&!u?(0,X.jsx)(m,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>d(!0),className:`w-full border-dashed`,leftIcon:(0,X.jsx)(B,{"aria-hidden":!0}),children:`Add Another App`}):null,(0,X.jsx)(y,{open:j!==null,title:`Delete OAuth app`,message:j?`Delete OAuth app '${Y(j.client_id)}'? This will disconnect all linked accounts.`:``,confirmLabel:`Delete`,destructive:!0,onConfirm:()=>{H()},onCancel:()=>M(null)}),(0,X.jsx)(y,{open:P!==null,title:`Disconnect ${n}?`,message:P?`Disconnect ${P.connection.account_info??`${n} Account`}? You can reconnect later.`:``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{G()},onCancel:()=>F(null)})]})}function ge(e,t){if(typeof e==`object`&&e&&`detail`in e){let t=e.detail;if(typeof t==`string`)return t}return e instanceof Error?e.message:t}function _e({assistantId:e,providerKey:t,displayName:n,description:r,logoUrl:i,connection:a,onConfigure:s}){let l=o(),u=!!a?.connected,[f,g]=(0,K.useState)(!1),[_,v]=(0,K.useState)(!1),b=C(),x=p({path:{assistant_id:e}}),w=c({...d(),onSuccess(e,t){S.success(`${n} account disconnected.`);let r=t.path.connection_id;l.setQueryData(x,e=>e?.filter(e=>e.id!==r)),l.invalidateQueries({queryKey:x})},onError(e){let t=ge(e,`Failed to disconnect ${n} account.`);S.error(t)}}),T=()=>{a?.id&&v(!0)};return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(h.Root,{children:(0,X.jsxs)(h.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,X.jsx)(Q,{providerKey:t,displayName:n,logoUrl:i,size:32}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:n}),r&&(0,X.jsx)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:r})]}),u?(0,X.jsx)(`div`,{className:`shrink-0`,children:(0,X.jsx)(ve,{displayName:n,open:f,onOpenChange:g,onEditConnections:()=>{g(!1),s()},onDisable:()=>{g(!1),T()},disablePending:w.isPending,isMobile:b})}):(0,X.jsx)(m,{variant:`primary`,onClick:s,className:`shrink-0`,children:`Enable`})]})}),(0,X.jsx)(y,{open:_,title:`Disconnect ${n}?`,message:`Disconnect your ${n} account? You can reconnect it later.`,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{v(!1),a?.id&&w.mutate({path:{assistant_id:e,connection_id:a.id}})},onCancel:()=>v(!1)})]})}function ve({displayName:e,open:t,onOpenChange:n,onEditConnections:r,onDisable:i,disablePending:a,isMobile:o}){return o?(0,X.jsxs)(_.Root,{open:t,onOpenChange:n,children:[(0,X.jsx)(_.Trigger,{asChild:!0,children:(0,X.jsx)(m,{variant:`outlined`,rightIcon:(0,X.jsx)(O,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:`Configure`})}),(0,X.jsxs)(_.Content,{children:[(0,X.jsx)(_.Header,{children:(0,X.jsx)(_.Title,{children:e})}),(0,X.jsxs)(_.Body,{children:[(0,X.jsx)(v,{icon:E,label:`Edit connections`,onSelect:r}),(0,X.jsx)(v,{icon:a?T:A,label:`Disable`,onSelect:()=>{a||i()}})]})]})]}):(0,X.jsxs)(g.Root,{open:t,onOpenChange:n,children:[(0,X.jsx)(g.Trigger,{asChild:!0,children:(0,X.jsx)(m,{variant:`outlined`,rightIcon:(0,X.jsx)(O,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:`Configure`})}),(0,X.jsxs)(g.Content,{align:`end`,sideOffset:4,role:`menu`,className:`w-56 overflow-hidden p-0`,children:[(0,X.jsx)(m,{type:`button`,role:`menuitem`,variant:`ghost`,onClick:r,className:`w-full justify-start rounded-none`,leftIcon:(0,X.jsx)(E,{"aria-hidden":!0}),children:`Edit connections`}),(0,X.jsx)(m,{type:`button`,role:`menuitem`,variant:`dangerGhost`,onClick:i,disabled:a,className:`w-full justify-start rounded-none`,leftIcon:a?(0,X.jsx)(T,{className:`animate-spin`,"aria-hidden":!0}):(0,X.jsx)(A,{"aria-hidden":!0}),children:`Disable`})]})]})}async function ye(e){let t=await fetch(`/v1/assistants/${e}/oauth/providers/`,{headers:L()});if(!t.ok)throw Error(`Failed to fetch OAuth providers (HTTP ${t.status})`);return(await t.json()).providers??[]}var be=`vellum:integrations:bannerDismissed`,xe=[{value:`all`,label:`All`},{value:`enabled`,label:`Enabled`},{value:`not-enabled`,label:`Not Enabled`}];function $(e,t){return e?.find(e=>e.provider===t)??null}function Se(){let[e]=R(),r=P(),[i,o]=(0,K.useState)(null),[c,l]=(0,K.useState)(!0),[u,d]=(0,K.useState)(``),[p,m]=(0,K.useState)(`all`),[h,_]=(0,K.useState)(!1),[v,y]=(0,K.useState)(!0),[C,w]=(0,K.useState)(null);(0,K.useEffect)(()=>{y(t(be,`false`)===`true`)},[]);let E=()=>{y(!0),n(be,`true`)};(0,K.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await k();e&&t.ok&&o(t.data)}catch(e){G(e,{context:`integrations.getAssistant`})}finally{e&&l(!1)}})(),()=>{e=!1}},[]);let{data:D,isLoading:A,isError:M}=s({queryKey:[`oauth-providers`,i?.id],queryFn:()=>ye(i.id),enabled:!!i}),{data:N,isLoading:F}=s({...f({path:{assistant_id:i?.id??``}}),enabled:!!i});(0,K.useEffect)(()=>{let t=e.get(`oauth_status`);if(!t)return;let n=e.get(`oauth_provider`),i=n?n.charAt(0).toUpperCase()+n.slice(1):null;if(t===`connected`)S.success(i?`${i} account connected successfully.`:`Account connected successfully.`);else if(t===`error`){let t=e.get(`oauth_code`)??`unknown`;S.error({denied:`Authorization was denied. Please try again.`,state_invalid:`Authorization state was invalid. Please try again.`,state_expired:`Authorization expired. Please try again.`,exchange_failed:`Failed to complete authorization. Please try again.`,identity_failed:`Failed to verify account identity. Please try again.`}[t]??(i?`Failed to connect ${i}.`:`Failed to connect. Please try again.`))}r(a.settings.integrations,{replace:!0})},[e,r]);let I=(0,K.useMemo)(()=>D?.filter(e=>e.supports_managed_mode)??[],[D]),L=(0,K.useMemo)(()=>{let e=u.trim().toLowerCase(),t=I.filter(t=>{if(!e)return!0;let n=(t.display_name??t.provider_key).toLowerCase(),r=(t.description??``).toLowerCase();return n.includes(e)||r.includes(e)});return p!==`all`&&(t=t.filter(e=>{let t=!!$(N,e.provider_key)?.connected;return p===`enabled`?t:!t})),[...t].sort((e,t)=>{let n=!!$(N,e.provider_key)?.connected;if(n!==!!$(N,t.provider_key)?.connected)return n?-1:1;let r=(e.display_name??e.provider_key).toLowerCase(),i=(t.display_name??t.provider_key).toLowerCase();return r.localeCompare(i)})},[I,N,u,p]),B=c||A||F,V=xe.find(e=>e.value===p)?.label??`All`,H=(()=>{if(u.trim())return`No integrations matched`;switch(p){case`enabled`:return`No Enabled Integrations`;case`not-enabled`:return`All Integrations Are Enabled`;default:return`No Integrations Available`}})(),U=(()=>{if(u.trim())return`No integrations matched "${u.trim()}"`;switch(p){case`enabled`:return`Connect an integration to get started.`;case`not-enabled`:return`All available integrations have been connected.`;default:return`Check your connection and try again.`}})(),W=(0,K.useMemo)(()=>C?I.find(e=>e.provider_key===C)??null:null,[I,C]);return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[!v&&(0,X.jsxs)(b,{tone:`info`,icon:(0,X.jsx)(z,{className:`h-3.5 w-3.5`}),onDismiss:E,children:[(0,X.jsx)(`span`,{className:`text-body-medium-default`,children:`Tip:`}),` You can enable integrations by mentioning them in chat.`]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(x,{type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:`Search Integrations`,"aria-label":`Search integrations`,leftIcon:(0,X.jsx)(j,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,wrapperClassName:`flex-1`}),(0,X.jsxs)(g.Root,{open:h,onOpenChange:_,children:[(0,X.jsx)(g.Trigger,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,"aria-haspopup":`listbox`,"aria-expanded":h,className:`flex w-36 cursor-pointer items-center justify-between gap-2 rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-lighter text-[var(--content-default)] transition-colors hover:bg-[var(--ghost-hover)]`,children:[(0,X.jsx)(`span`,{children:V}),(0,X.jsx)(O,{className:`h-3.5 w-3.5`})]})}),(0,X.jsx)(g.Content,{align:`end`,sideOffset:4,className:`w-36 overflow-hidden p-0`,children:(0,X.jsx)(`div`,{role:`listbox`,children:xe.map(e=>{let t=e.value===p;return(0,X.jsx)(`button`,{type:`button`,role:`option`,"aria-selected":t,onClick:()=>{m(e.value),_(!1)},className:`flex w-full cursor-pointer items-center px-3 py-1.5 text-left hover:bg-[var(--ghost-hover)] ${t?`text-body-medium-default text-[var(--content-default)]`:`text-body-medium-lighter text-[var(--content-default)]`}`,children:e.label},e.value)})})})]})]}),(0,X.jsx)(`div`,{children:B?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(T,{className:`h-4 w-4 animate-spin`}),(0,X.jsx)(`span`,{children:`Loading...`})]}):M?(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load integrations. Please try again.`}):i?L.length===0?(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center`,children:[(0,X.jsx)(j,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,X.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:H}),(0,X.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:U})]}):(0,X.jsx)(`div`,{className:`space-y-2`,children:L.map(e=>(0,X.jsx)(_e,{assistantId:i.id,providerKey:e.provider_key,displayName:e.display_name??e.provider_key,description:e.description,logoUrl:e.logo_url,connection:$(N,e.provider_key),onConfigure:()=>w(e.provider_key)},e.provider_key))}):(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No assistant found. Hatch an assistant to connect integrations.`})}),W&&i&&(0,X.jsx)(fe,{assistantId:i.id,providerKey:W.provider_key,displayName:W.display_name??W.provider_key,description:W.description,logoUrl:W.logo_url,onClose:()=>w(null)})]})}function Ce(){return(0,X.jsx)(`div`,{className:`max-w-[940px] space-y-6`,children:(0,X.jsx)(K.Suspense,{children:(0,X.jsx)(Se,{})})})}export{Ce as IntegrationsPage};
@@ -1 +0,0 @@
1
- import{r as e}from"./routes-Bc63mRsk.js";import{t}from"./jsx-runtime-2-RJdKf7.js";import{t as n}from"./cn-B70VuHjM.js";import"./src-kyqznrcv.js";import{t as r}from"./assistant-identity-store-BV4ukE7H.js";import{ii as i,oi as a,si as o,wr as s}from"./index-D6-nsIUa.js";import{t as c}from"./page-shell-2Pocdjh8.js";var l=t(),u=[{label:`Identity`,to:e.identity},{label:`Skills`,to:e.skills},{label:`Workspace`,to:e.workspace},{label:`Contacts`,to:e.contacts.root}],d={label:`Plugins`,to:e.plugins};function f(){let e=r.use.name(),t=s.use.hasHydrated(),f=s.use.externalPlugins(),{pathname:p}=o(),m=t&&f?[u[0],d,...u.slice(1)]:u;return(0,l.jsxs)(c,{children:[(0,l.jsxs)(`h1`,{className:`mb-4 shrink-0 text-title-large text-[var(--content-default)]`,children:[`About `,e||`Assistant`]}),(0,l.jsx)(`nav`,{className:`mb-4 flex shrink-0 items-center overflow-x-auto border-b border-[var(--border-base)]`,style:{scrollbarWidth:`none`,WebkitOverflowScrolling:`touch`},"aria-label":`About assistant sections`,children:m.map(({label:e,to:t})=>{let r=p===t||p.startsWith(t+`/`);return(0,l.jsx)(i,{to:t,className:n(`relative -mb-px inline-flex cursor-pointer items-center gap-1.5 border-b-2 border-transparent bg-transparent px-2.5 py-[7px]`,`text-body-medium-default whitespace-nowrap`,`text-[var(--content-tertiary)] transition-colors`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-0`,`hover:bg-[var(--surface-hover)] hover:text-[var(--content-default)]`,r&&`border-[var(--primary-base)] text-[var(--content-default)]`,r&&`hover:bg-transparent`),children:e},t)})}),(0,l.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto`,children:(0,l.jsx)(a,{})})]})}export{f as IntelligenceLayout};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BlnqVGWw.js";import{r as n}from"./routes-Bc63mRsk.js";import{t as r}from"./jsx-runtime-2-RJdKf7.js";import"./src-kyqznrcv.js";import{t as i}from"./toast-BRhiclkk.js";import{n as a}from"./sdk.gen-CpEhy2hU.js";import{r as o}from"./app-html-cache-CJYf8NER.js";import{t as s}from"./loader-circle-DfyYkLlZ.js";import{ci as c,li as l,tt as u,x as d}from"./index-D6-nsIUa.js";import{t as f}from"./use-active-assistant-id-BNTrFfbP.js";var p=e(t(),1),m=r();function h(){let{appId:e}=l(),t=f(),r=c(),[h,g]=(0,p.useState)(null),[_,v]=(0,p.useState)(null),[y,b]=(0,p.useState)(!1),x=(0,p.useRef)(null);(0,p.useEffect)(()=>{if(e)return x.current=e,g(null),v(null),a({path:{assistant_id:t,id:e},throwOnError:!0}).then(({data:n})=>{x.current===e&&(o(t,n.appId,n.html),g({appId:n.appId,dirName:n.dirName,name:n.name,html:n.html}))}).catch(t=>{x.current===e&&v(t instanceof Error?t.message:`Failed to open app`)}),()=>{x.current=null}},[t,e]);let S=(0,p.useCallback)(()=>{r(n.library.root)},[r]),C=(0,p.useCallback)(async()=>{if(!(!h||y)){b(!0);try{await u(t,h.appId,h.name),i.success(`App exported`,{description:`${h.name}.vellum`})}catch(e){i.error(`Failed to share app`,{description:e instanceof Error?e.message:void 0})}finally{b(!1)}}},[t,h,y]);return e?_?(0,m.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-4`,children:[(0,m.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:_}),(0,m.jsx)(`button`,{type:`button`,onClick:S,className:`text-body-medium-default text-[var(--primary-base)] underline`,children:`Back to Library`})]}):h?(0,m.jsx)(d,{appId:h.appId,appName:h.name,html:h.html,assistantId:t,onClose:S,onShare:C,isSharing:y}):(0,m.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,m.jsx)(s,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):null}export{h as LibraryDetailPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BlnqVGWw.js";import{r as n}from"./routes-Bc63mRsk.js";import{n as r}from"./QueryClientProvider-B6PnMGWJ.js";import{t as i}from"./useQuery-DQMwUXEx.js";import{t as a}from"./jsx-runtime-2-RJdKf7.js";import{t as o}from"./button-aAWi2gw6.js";import{S as s,n as c,t as l}from"./panel-item-CH4BnWiy.js";import"./src-kyqznrcv.js";import{n as u}from"./stat-square-C4k7AFbD.js";import{t as d}from"./input-DMJDsLW2.js";import{t as f}from"./toast-BRhiclkk.js";import{n as p}from"./use-is-mobile-L-si1_f-.js";import{N as m,t as h}from"./sdk.gen-CpEhy2hU.js";import{n as g,t as _}from"./app-html-cache-CJYf8NER.js";import{n as v,r as y,t as b}from"./react-query.gen-C9LHPeRr.js";import{t as x}from"./arrow-up-yLYY3n8J.js";import{t as S}from"./globe-wFgNRLYC.js";import{t as C}from"./misc-CBjwzlgT.js";import{Cn as w,Ht as T,Nt as E,On as D,Ut as O,_t as k,ci as A,et as j,it as M,ln as N,mt as P,tt as F,v as I,wr as L}from"./index-D6-nsIUa.js";import{t as R}from"./deploy-dialogs-Bv1QJrTq.js";import{t as z}from"./use-active-assistant-id-BNTrFfbP.js";import{t as B}from"./page-shell-2Pocdjh8.js";import{t as V}from"./format-date-CB3SQEqd.js";var H=e(t(),1);async function U(e,t){let n=await t.arrayBuffer(),{data:r,error:i,response:a}=await m.post({url:`/v1/assistants/{assistant_id}/apps/import-bundle`,path:{assistant_id:e},headers:{"Content-Type":`application/octet-stream`},body:n,bodySerializer:e=>e,throwOnError:!1});if(!a||!a.ok){let e=(i&&typeof i==`object`&&`message`in i?i.message:null)??`Failed to import app.`;throw Error(e)}return r}var W=a();function G(e){return e===1?`1 word`:`${e} words`}function K({document:e,onOpen:t}){return(0,W.jsxs)(`div`,{className:`group relative flex flex-col gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:C(`relative flex w-full cursor-pointer flex-col items-center justify-center gap-2 overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)]`,`aspect-[16/10]`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:[(0,W.jsx)(w,{size:34,className:`text-[var(--content-tertiary)]`}),(0,W.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:G(e.wordCount)})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,W.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.title}),(0,W.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:V(new Date(e.updatedAt))})]})]})}function q({fileInputRef:e,isImporting:t,onImportBundle:n,onNewConversation:r}){return(0,W.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4 py-24`,children:[(0,W.jsx)(`input`,{ref:e,type:`file`,accept:`.vellum`,className:`hidden`,onChange:n}),(0,W.jsx)(`div`,{className:`flex h-16 w-16 items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,W.jsx)(N,{size:32,className:`text-[var(--content-tertiary)]`})}),(0,W.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Your library is empty`}),(0,W.jsx)(`p`,{className:`max-w-md text-center text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:`Ask your assistant to build something, or import a shared app`}),(0,W.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[r?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(o,{variant:`primary`,size:`regular`,onClick:r,children:`New Conversation`}),(0,W.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:`or`})]}):null,(0,W.jsxs)(o,{variant:`outlined`,size:`regular`,onClick:()=>e.current?.click(),disabled:t,children:[t?(0,W.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}):(0,W.jsx)(P,{size:14}),(0,W.jsx)(`span`,{className:`ml-1.5`,children:`Import .vellum File`})]})]})]})}function J({app:e,assistantId:t,isPinned:n,onOpen:r,onPin:i,onDelete:a,onDeploy:o,justImported:s,onAnimationEnd:c}){let[l,u]=(0,H.useState)(!1),d=(0,H.useCallback)(()=>g(t,e.id),[t,e.id]),m=(0,H.useCallback)(async()=>{if(!l){u(!0);try{await F(t,e.id,e.name),f.success(`App exported`,{description:`${e.name}.vellum`})}catch(e){f.error(`Failed to share app`,{description:e instanceof Error?e.message:void 0})}finally{u(!1)}}},[t,e.id,e.name,l]),[h,_]=(0,H.useState)(!1),v=p();return(0,W.jsxs)(`div`,{className:C(`group relative flex flex-col gap-2`,s&&`animate-[card-entrance_400ms_ease-out]`),onAnimationEnd:s?c:void 0,children:[(0,W.jsx)(`button`,{type:`button`,onClick:()=>r(e.id),className:C(`relative w-full cursor-pointer overflow-hidden rounded-xl`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:(0,W.jsx)(I,{name:e.name,icon:e.icon,loadHtml:d})}),(0,W.jsx)(`div`,{className:C(`absolute right-2 top-2 z-20 transition-opacity`,`max-md:opacity-100`,`md:group-hover:opacity-100 md:group-focus-within:opacity-100`,h?`opacity-100`:`md:opacity-0`),children:(0,W.jsx)(Y,{appName:e.name,isPinned:n,open:h,onOpenChange:_,onPin:()=>i(e),onDelete:a?()=>a(e):void 0,onShare:m,onDeploy:o,isMobile:v})}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>r(e.id),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,W.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.name}),(0,W.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:V(new Date(e.createdAt))})]})]})}function Y({appName:e,isPinned:t,open:n,onOpenChange:r,onPin:i,onDelete:a,onShare:u,onDeploy:d,isMobile:f}){return f?(0,W.jsxs)(s.Root,{open:n,onOpenChange:r,children:[(0,W.jsx)(s.Trigger,{asChild:!0,children:(0,W.jsx)(o,{variant:`primary`,size:`compact`,iconOnly:(0,W.jsx)(D,{}),"aria-label":`App actions`,onClick:e=>e.stopPropagation()})}),(0,W.jsxs)(s.Content,{children:[(0,W.jsx)(s.Header,{className:`sr-only`,children:(0,W.jsx)(s.Title,{children:e})}),(0,W.jsxs)(s.Body,{className:`pt-0`,children:[(0,W.jsx)(l,{icon:t?O:T,label:t?`Unpin`:`Pin`,onSelect:()=>{r(!1),i()}}),u?(0,W.jsx)(l,{icon:x,label:(0,W.jsxs)(`span`,{className:`flex flex-col gap-0.5 overflow-visible whitespace-normal`,children:[(0,W.jsx)(`span`,{children:`Share`}),(0,W.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Export as .vellum file`})]}),onSelect:()=>{r(!1),u()}}):null,d?(0,W.jsx)(l,{icon:S,label:(0,W.jsxs)(`span`,{className:`flex flex-col gap-0.5 overflow-visible whitespace-normal`,children:[(0,W.jsx)(`span`,{children:`Deploy to Vercel`}),(0,W.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Publish as a static page`})]}),onSelect:()=>{r(!1),d()}}):null,a?(0,W.jsx)(l,{icon:k,label:`Delete`,onSelect:()=>{r(!1),a()}}):null]})]})]}):(0,W.jsxs)(c.Root,{open:n,onOpenChange:r,children:[(0,W.jsx)(c.Trigger,{asChild:!0,children:(0,W.jsx)(o,{variant:`primary`,size:`compact`,iconOnly:(0,W.jsx)(D,{}),"aria-label":`App actions`,onClick:e=>e.stopPropagation()})}),(0,W.jsxs)(c.Content,{align:`end`,sideOffset:4,children:[(0,W.jsx)(c.Item,{leftIcon:t?(0,W.jsx)(O,{size:14}):(0,W.jsx)(T,{size:14}),onSelect:()=>i(),className:`whitespace-nowrap`,children:t?`Unpin`:`Pin`}),u?(0,W.jsx)(c.Item,{leftIcon:(0,W.jsx)(x,{size:14}),onSelect:()=>u(),className:`whitespace-nowrap`,children:`Share`}):null,d?(0,W.jsx)(c.Item,{leftIcon:(0,W.jsx)(S,{size:14}),onSelect:()=>d(),className:`whitespace-nowrap`,children:`Deploy to Vercel`}):null,a?(0,W.jsx)(c.Item,{leftIcon:(0,W.jsx)(k,{size:14,className:`text-red-600`}),onSelect:()=>a(),className:`whitespace-nowrap text-red-600 data-[highlighted]:text-red-700`,children:`Delete`}):null]})]})}function X({title:e,apps:t,assistantId:n,pinnedAppIds:r,lastImportedAppId:i,onOpen:a,onPin:o,onDelete:s,onDeploy:c,onAnimationEnd:l}){return t.length===0?null:(0,W.jsxs)(`section`,{children:[(0,W.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:e}),(0,W.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:t.map(e=>(0,W.jsx)(J,{app:e,assistantId:n,isPinned:r.has(e.id),onOpen:a,onPin:o,onDelete:s,justImported:e.id===i,onAnimationEnd:l,onDeploy:c?()=>c(e.id):void 0},e.id))})]})}function Z({app:e,isDeleting:t,onConfirm:n,onCancel:r}){return(0,W.jsx)(u,{open:e!==null,title:`Delete app`,message:e?`"${e.name}" will be permanently removed.`:``,confirmLabel:t?`Deleting…`:`Delete`,destructive:!0,onConfirm:n,onCancel:r})}function ee(e){let t=M.use.pinnedAppIds(),{data:n=[],isLoading:r,error:a}=i({...b({path:{assistant_id:e}}),select:e=>e.apps}),{data:o=[],isLoading:s,error:c}=i({...y({path:{assistant_id:e}}),select:e=>e.documents}),l=r||s,u=a&&c?a instanceof Error?a.message:`Failed to load library`:null,[d,f]=(0,H.useState)(``),p=(0,H.useMemo)(()=>{if(!d.trim())return n;let e=d.toLowerCase();return n.filter(t=>t.name.toLowerCase().includes(e)||t.description?.toLowerCase().includes(e))},[n,d]);return{apps:n,documents:o,filteredApps:p,pinnedApps:(0,H.useMemo)(()=>p.filter(e=>t.has(e.id)).sort((e,t)=>t.createdAt-e.createdAt),[p,t]),recentApps:(0,H.useMemo)(()=>p.filter(e=>!t.has(e.id)).sort((e,t)=>t.createdAt-e.createdAt),[p,t]),filteredDocuments:(0,H.useMemo)(()=>{if(!d.trim())return o;let e=d.toLowerCase();return o.filter(t=>t.title.toLowerCase().includes(e))},[o,d]),searchText:d,setSearchText:f,loading:l,error:u}}function Q({assistantId:e,assistantName:t,title:n,onNewConversation:i,onOpenDocument:a,onOpenApp:s}){let c=r(),l=L.use.deployToVercel(),u=M.use.togglePin(),p=M.use.pinnedAppIds(),m=j.use.isDeploying(),{apps:y,documents:b,filteredApps:x,pinnedApps:S,recentApps:C,filteredDocuments:w,searchText:T,setSearchText:D,loading:O,error:k}=ee(e),[A,N]=(0,H.useState)(null),[F,I]=(0,H.useState)(!1),z=(0,H.useCallback)(async()=>{let t=A;if(!(!t||F)){I(!0);try{await h({path:{assistant_id:e,id:t.id},throwOnError:!0}),_(e,t.id),c.invalidateQueries({queryKey:v({path:{assistant_id:e}})}),p.has(t.id)&&u(t),N(null)}catch(e){f.error(e instanceof Error?e.message:`Failed to delete app`)}finally{I(!1)}}},[A,F,e,p,u,c]),B=(0,H.useCallback)(()=>{F||N(null)},[F]),V=(0,H.useRef)(null),[G,J]=(0,H.useState)(!1),Y=(0,H.useCallback)(async t=>{let n=t.target.files?.[0];if(!(!n||G)){J(!0);try{let t=await U(e,n);await c.invalidateQueries({queryKey:v({path:{assistant_id:e}})}),f.success(t.name+` imported`),s(t.appId)}catch(e){f.error(e instanceof Error?e.message:`Failed to import app`)}finally{J(!1),V.current&&(V.current.value=``)}}},[e,G,c,s]),Q=(0,H.useCallback)(async t=>{if(m)return;let n=y.find(e=>e.id===t)?.name??`this app`;try{let r=await g(e,t);j.getState().deployApp(e,t,n,r)}catch{j.getState().deployApp(e,t,n,``)}},[e,m,y]),$=(0,H.useCallback)(e=>u(e),[u]);return O?(0,W.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,W.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--primary-base)]`,role:`status`,"aria-label":`Loading apps`})}):k?(0,W.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,W.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:k}),(0,W.jsx)(`button`,{type:`button`,className:`rounded-lg bg-[var(--primary-base)] px-4 py-2 text-body-medium-default text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)]`,onClick:()=>window.location.reload(),children:`Retry`})]}):y.length===0&&b.length===0?(0,W.jsx)(q,{fileInputRef:V,isImporting:G,onImportBundle:Y,onNewConversation:i?()=>i():void 0}):(0,W.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[(0,W.jsxs)(`div`,{className:`mb-4 flex shrink-0 items-center justify-between gap-4`,children:[n?(0,W.jsx)(`h1`,{className:`text-title-large text-[var(--content-default)]`,children:n}):(0,W.jsx)(`span`,{}),(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`input`,{ref:V,type:`file`,accept:`.vellum`,className:`hidden`,onChange:Y}),(0,W.jsxs)(o,{variant:`outlined`,size:`regular`,onClick:()=>V.current?.click(),disabled:G,children:[G?(0,W.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}):(0,W.jsx)(P,{size:14}),(0,W.jsx)(`span`,{className:`ml-1.5`,children:`Import`})]})]})]}),(0,W.jsx)(`div`,{className:`mb-6 shrink-0`,children:(0,W.jsx)(d,{fullWidth:!0,type:`text`,placeholder:`Search your library`,value:T,onChange:e=>D(e.target.value),leftIcon:(0,W.jsx)(E,{size:16})})}),(0,W.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:x.length===0&&w.length===0?(0,W.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,W.jsx)(E,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,W.jsxs)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:[`No apps or documents matched “`,T,`”`]})]}):(0,W.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,W.jsx)(X,{title:`Pinned`,apps:S,assistantId:e,pinnedAppIds:p,onOpen:s,onPin:$,onDelete:N,onDeploy:l?Q:void 0}),(0,W.jsx)(X,{title:`Recents`,apps:C,assistantId:e,pinnedAppIds:p,onOpen:s,onPin:$,onDelete:N,onDeploy:l?Q:void 0}),w.length>0?(0,W.jsxs)(`section`,{children:[(0,W.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:`Documents`}),(0,W.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:w.map(e=>(0,W.jsx)(K,{document:e,onOpen:e=>{a&&a(e)}},e.surfaceId))})]}):null]})}),(0,W.jsx)(R,{assistantId:e,assistantName:t,onStartConversation:i}),(0,W.jsx)(Z,{app:A,isDeleting:F,onConfirm:z,onCancel:B})]})}function $(){let e=z(),t=A();return(0,W.jsx)(B,{children:(0,W.jsx)(Q,{assistantId:e,title:`Library`,onNewConversation:(0,H.useCallback)(e=>{t(n.assistant)},[t]),onOpenDocument:(0,H.useCallback)(e=>{t(n.document(e))},[t]),onOpenApp:(0,H.useCallback)(e=>{t(n.library.app(e))},[t])})})}export{$ as LibraryPage};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-C9oV_FLv.js";var t=e(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]);export{t};
@@ -1 +0,0 @@
1
- import{i as e,r as t,s as n}from"./local-settings-lVNyIOJ_.js";var r=`vellum:gw:token`,i=`vellum:gw:expiresAt`,a=`vellum:gw:tokenSource`,o=`gw:token`,s=`gw:expiresAt`,c=`gw:tokenSource`,l=null,u=0,d=null;function f(){return k()&&W()!=null}function p(){return f()&&h()!==null}function m(e){return Date.now()/1e3>=e-60}function h(){if(l&&!m(u))return l;l=null;try{let e=localStorage.getItem(r)??localStorage.getItem(o),t=localStorage.getItem(i)??localStorage.getItem(s);if(e&&t){let n=Number(t);if(!m(n))return l=e,u=n,l}}catch{}return null}async function g(e,t){let n=e??`/auth/token`,o={};t&&(o.Authorization=`Bearer ${t}`);let s=await fetch(n,{method:`POST`,headers:o});if(!s.ok)throw Error(`Gateway token request failed: ${s.status}`);let{token:c,expiresAt:f}=await s.json();try{localStorage.setItem(r,c),localStorage.setItem(i,String(f)),localStorage.setItem(a,n)}catch{}return l=c,u=f,d=n,c}async function _(e,t){let n=e??`/auth/token`,r=d??localStorage.getItem(a)??localStorage.getItem(c);return r&&r!==n&&y(),h()||g(e,t)}function v(){let e=W();if(e)return`${e}/auth/token`}function y(){l=null,u=0,d=null;try{localStorage.removeItem(r),localStorage.removeItem(i),localStorage.removeItem(a),localStorage.removeItem(o),localStorage.removeItem(s),localStorage.removeItem(c)}catch{}}var b={url:null,token:null};function x(e){b=e===null?{url:null,token:null}:{url:e.url,token:e.token}}function S(){return b.url}function C(){return b.token}var w=null,T={assistants:[],activeAssistant:null},E=`vellum:local:lockfile`,D=`vellum:local:selectedAssistantId`,O=new Set([`1`,`true`,`yes`]);function k(){return!O.has(`false`)}async function A(){try{let e=await fetch(`/assistant/__local/lockfile`);if(!e.ok)throw Error(`lockfile fetch failed: ${e.status}`);let t=await e.json();return w=t,n(E,JSON.stringify(t)),t}catch{return w={...T},w}}function j(){if(w)return w;let e=t(E,``);if(e)try{return w=JSON.parse(e),w}catch{}return w={...T},w}async function M(e=`vellum`){return(await fetch(`/assistant/__local/hatch`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({species:e})})).json()}async function N(e){let t=await fetch(`/assistant/__local/lockfile`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assistant:e,activeAssistant:e.assistantId})});if(t.ok){let{lockfile:e}=await t.json();w=e,n(E,JSON.stringify(e))}}async function P(e){let t=await(await fetch(`/assistant/__local/retire`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assistantId:e})})).json();return t.ok&&(H(),y(),x(null),await A()),t}function F(){return j().assistants.length>0}function I(e){return e.cloud!==`vellum`&&e.resources?.gatewayPort!=null}function L(){return j().assistants.filter(I)}function R(){return j().assistants.filter(e=>e.cloud===`vellum`)}function z(){let e=j(),t=e.assistants.find(t=>t.assistantId===e.activeAssistant);if(t)return t;if(e.assistants.length===1)return e.assistants[0]}function B(){let e=t(D,``);if(e){let t=j().assistants.find(t=>t.assistantId===e);if(t)return t}return z()}function V(e){n(D,e)}function H(){e(D)}function U(e){return`/assistant/__gateway/${e}`}function W(){if(!k())return;let e=B();if(!(!e||!I(e)))return U(e.resources.gatewayPort)}async function G(e){let t=await fetch(`/assistant/__local/guardian-token/${encodeURIComponent(e)}`);if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.error??`Guardian token request failed: ${t.status}`)}let{accessToken:n}=await t.json();return n}async function K(){let e=v();if(!e)return;let t=B();await _(e,t?await G(t.assistantId):void 0);let n=W();n&&x({url:`${window.location.origin}${n}`,token:h()})}export{v as C,h as S,p as T,C as _,W as a,y as b,F as c,k as d,A as f,V as g,N as h,L as i,M as l,P as m,G as n,R as o,K as p,U as r,B as s,H as t,I as u,S as v,f as w,_ as x,x as y};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{d as t,f as n,p as r}from"./native-biometric-D17G0wwQ.js";import{t as i}from"./react-BlnqVGWw.js";import{d as a,f as o,g as s,i as c,n as l,o as u,r as d,x as f}from"./local-mode-DTyhlxIJ.js";import{r as p}from"./routes-Bc63mRsk.js";import{n as m}from"./auth-store-B6yNvrw4.js";import{t as h}from"./jsx-runtime-2-RJdKf7.js";import{t as g}from"./button-aAWi2gw6.js";import"./src-kyqznrcv.js";import{ci as _,o as v,ri as y,rn as b,ui as x}from"./index-D6-nsIUa.js";import{n as S,r as C}from"./login-flow-C1czXxt_.js";import{t as w}from"./public-asset-BNpOWIkb.js";var T=e(i(),1),E=h();function D({size:e=24,className:t,style:n}){return(0,E.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 48 48`,width:e,height:e,className:t,style:n,"aria-hidden":!0,children:[(0,E.jsx)(`path`,{fill:`#EA4335`,d:`M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z`}),(0,E.jsx)(`path`,{fill:`#4285F4`,d:`M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z`}),(0,E.jsx)(`path`,{fill:`#FBBC05`,d:`M10.53 28.59a14.5 14.5 0 0 1 0-9.18l-7.97-6.19A23.99 23.99 0 0 0 0 24c0 3.77.9 7.35 2.56 10.78l7.97-6.19z`}),(0,E.jsx)(`path`,{fill:`#34A853`,d:`M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z`})]})}function O({children:e}){return(0,E.jsxs)(`div`,{className:`fixed inset-0 z-50 flex flex-col items-center justify-center bg-[var(--surface-base)] text-[var(--content-default)]`,children:[(0,E.jsx)(`img`,{src:w(`/vellum-logo.svg`),alt:`Vellum`,width:220,height:66,className:`block dark:hidden`}),(0,E.jsx)(`img`,{src:w(`/vellum-logo-white.svg`),alt:`Vellum`,width:220,height:66,className:`hidden dark:block`}),e,(0,E.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute left-1/2 w-full max-w-[900px] -translate-x-1/2`,style:{bottom:0},children:(0,E.jsx)(`img`,{src:w(`/login-background-characters.svg`),alt:``,width:880,height:182,className:`h-auto w-full`})})]})}function k(){return(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`div`,{className:`pointer-events-none absolute top-[120px] left-1/2 z-0 -translate-x-1/2`,children:(0,E.jsx)(`img`,{src:w(`/vellum-logo-white.svg`),alt:`Vellum`,width:92,height:28})}),(0,E.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute right-0 bottom-0 left-1/2 z-0 w-full max-w-[1100px] -translate-x-1/2`,children:(0,E.jsx)(`img`,{src:w(`/login-background-characters.svg`),alt:``,width:880,height:182,className:`h-auto w-full`})})]})}var A=`flex w-full max-w-[448px] flex-col gap-6 rounded-lg border border-[var(--border-disabled)] bg-[var(--surface-lift)] p-6`;function j({signUpHref:e}){return(0,E.jsxs)(`p`,{className:`text-body-small-default flex justify-center gap-1`,children:[(0,E.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Don't have an account?`}),(0,E.jsx)(y,{to:e,className:`font-medium text-[var(--content-emphasised)] hover:underline`,children:`Sign up`})]})}function M({children:e}){return(0,E.jsx)(`div`,{className:A,children:e})}function N({children:e}){return(0,E.jsx)(`div`,{className:`dark`,children:(0,E.jsxs)(`div`,{className:`relative min-h-screen overflow-x-hidden bg-[var(--surface-base)] text-[var(--content-default)]`,children:[(0,E.jsx)(k,{}),(0,E.jsx)(`div`,{className:`relative z-10 flex min-h-screen flex-col items-center justify-center px-4`,children:e})]})})}var P={signup_closed:`Sign-ups are currently closed. Visit vellum.ai/community to request access.`};function F({returnTo:e}){let[t,r]=(0,T.useState)(null),[i,a]=(0,T.useState)(!1),o=async()=>{r(null),a(!0);try{await n({returnTo:e??null})}catch(e){let t=e?.code;if(t===`USER_CANCELLED`){a(!1);return}if(t===`AUTH_ERROR`){let t=e.data?.authError;r((t&&P[t])??`Something went wrong. Please try again.`)}else console.error(`[native-auth] auth flow failed:`,e),r(`Something went wrong. Please try again.`);a(!1)}};return(0,E.jsx)(O,{children:(0,E.jsxs)(`div`,{className:`z-10 mt-8 flex w-full max-w-[320px] flex-col items-center gap-3`,children:[t&&(0,E.jsx)(`p`,{className:`text-body-small-default max-w-[280px] text-center text-[var(--system-negative-strong)]`,children:t}),(0,E.jsx)(g,{type:`button`,variant:`primary`,fullWidth:!0,onClick:()=>{o()},disabled:i,className:`max-w-[300px]`,children:`Sign in`})]})})}function I({returnTo:e,loading:t,errorMessage:n,onProviderClick:r}){let i=e?`${p.account.signup}?returnTo=${encodeURIComponent(e)}`:p.account.signup;return(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`h1`,{className:`text-title-large text-center text-[var(--content-emphasised)]`,children:`Sign in to Vellum`}),n&&(0,E.jsx)(`p`,{className:`text-body-small-default text-center text-[var(--system-negative-strong)]`,children:n}),(0,E.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,E.jsx)(g,{type:`button`,variant:`outlined`,fullWidth:!0,onClick:()=>r(`AppleOAuth`),disabled:t,leftIcon:(0,E.jsx)(v,{}),className:`max-w-[300px] gap-3`,children:`Continue with Apple`}),(0,E.jsx)(g,{type:`button`,variant:`outlined`,fullWidth:!0,onClick:()=>r(`GoogleOAuth`),disabled:t,leftIcon:(0,E.jsx)(D,{}),className:`max-w-[300px] gap-3`,children:`Continue with Google`}),(0,E.jsx)(g,{type:`button`,variant:`outlined`,fullWidth:!0,onClick:()=>r(),disabled:t,leftIcon:(0,E.jsx)(b,{}),className:`max-w-[300px] gap-3`,children:`Continue with Email`})]}),(0,E.jsx)(j,{signUpHref:i})]})}function L({returnTo:e}){let[n,r]=(0,T.useState)(null),[i,a]=(0,T.useState)(!1),o=C(e),s=async n=>{r(null),a(!0);try{await t(S,o,{...n?{providerHint:n}:{},returnTo:e})}catch(e){console.error(`[web-login] auth flow failed:`,e),r(`Something went wrong. Please try again.`),a(!1)}};return(0,E.jsx)(N,{children:(0,E.jsx)(M,{children:(0,E.jsx)(I,{returnTo:e,loading:i,errorMessage:n,onProviderClick:e=>{s(e)}})})})}function R({returnTo:e}){let n=_(),[r,i]=(0,T.useState)(0),[a,p]=(0,T.useState)(null),[h,v]=(0,T.useState)(null),[y,b]=(0,T.useState)(null),[x,w]=(0,T.useState)(!1),D=c(),O=u(),k=D.length>0,A=O.length>0,j=(0,T.useCallback)(()=>{o().then(()=>i(e=>e+1))},[]),P=(0,T.useCallback)(async t=>{v(null),p(t.assistantId);try{let r=await l(t.assistantId),i=`${d(t.resources.gatewayPort)}/auth/token`;s(t.assistantId),await f(i,r),await m.getState().initSession(),n(e||`/assistant`)}catch{v(`Couldn't connect to your assistant. Make sure it's running.`),p(null)}},[n,e]),F=(0,T.useCallback)(async n=>{b(null),w(!0);try{await t(S,C(e),{...n?{providerHint:n}:{},returnTo:e})}catch(e){console.error(`[local-login] platform auth flow failed:`,e),b(`Something went wrong. Please try again.`),w(!1)}},[e]);return(0,T.useEffect)(()=>{k&&!A&&!a&&!h&&P(D[0])},[k,A,a,h,P]),!k&&!A?(0,E.jsx)(N,{children:(0,E.jsxs)(M,{children:[(0,E.jsx)(`h1`,{className:`text-title-large text-center text-[var(--content-emphasised)]`,children:`Vellum`}),(0,E.jsxs)(`p`,{className:`text-body-small-default text-center text-[var(--content-secondary)]`,children:[`No assistants found. Hatch one via CLI (`,(0,E.jsx)(`code`,{className:`rounded bg-[var(--surface-sunken)] px-1 py-0.5 text-[var(--content-default)]`,children:`vellum hatch`}),`) or the Mac app to get started.`]}),(0,E.jsx)(`div`,{className:`flex justify-center`,children:(0,E.jsx)(g,{type:`button`,variant:`outlined`,onClick:j,children:`Refresh`})})]})}):A&&!k?(0,E.jsx)(L,{returnTo:e}):k&&!A?(0,E.jsx)(N,{children:(0,E.jsxs)(M,{children:[(0,E.jsx)(`h1`,{className:`text-title-large text-center text-[var(--content-emphasised)]`,children:`Vellum`}),h?(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`p`,{className:`text-body-small-default text-center text-[var(--system-negative-strong)]`,children:h}),(0,E.jsx)(`div`,{className:`flex justify-center`,children:(0,E.jsx)(g,{type:`button`,variant:`outlined`,onClick:()=>{P(D[0])},children:`Retry`})})]}):(0,E.jsx)(`p`,{className:`text-body-small-default text-center text-[var(--content-secondary)]`,children:a?`Connecting to your assistant...`:`Preparing connection...`})]})}):(0,E.jsx)(N,{children:(0,E.jsxs)(`div`,{className:`flex w-full max-w-[960px] flex-col items-start justify-center gap-6 md:flex-row`,children:[(0,E.jsx)(M,{children:(0,E.jsx)(I,{returnTo:e,loading:x,errorMessage:y,onProviderClick:e=>{F(e)}})}),(0,E.jsxs)(M,{children:[(0,E.jsx)(`h1`,{className:`text-title-large text-center text-[var(--content-emphasised)]`,children:`Local Assistant`}),h&&(0,E.jsx)(`p`,{className:`text-body-small-default text-center text-[var(--system-negative-strong)]`,children:h}),(0,E.jsx)(`div`,{className:`flex flex-col gap-2`,children:D.map(e=>(0,E.jsxs)(`button`,{type:`button`,className:`flex w-full items-center justify-between rounded-lg border border-[var(--border-disabled)] bg-[var(--surface-sunken)] px-4 py-3 text-left transition-colors hover:bg-[var(--surface-lift)] disabled:opacity-50`,disabled:a===e.assistantId,onClick:()=>{P(e)},children:[(0,E.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,E.jsx)(`span`,{className:`text-body-small-default text-[var(--content-emphasised)]`,children:e.name||e.assistantId}),e.species&&(0,E.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:e.species})]}),a===e.assistantId&&(0,E.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Connecting...`})]},e.assistantId))})]})]})})}function z(){let[e]=x(),t=r(),n=e.get(`returnTo`);return a()?(0,E.jsx)(R,{returnTo:n}):t?(0,E.jsx)(F,{returnTo:n}):(0,E.jsx)(L,{returnTo:n})}export{z as LoginPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{h as t}from"./native-biometric-D17G0wwQ.js";import{t as n}from"./react-BlnqVGWw.js";import{r}from"./routes-Bc63mRsk.js";import{n as i}from"./auth-store-B6yNvrw4.js";import{t as a}from"./jsx-runtime-2-RJdKf7.js";import{rt as o,ui as s}from"./index-D6-nsIUa.js";import{r as c,t as l}from"./account-shell-CKkPHgS9.js";var u=e(n(),1),d=a();function f(){let[e]=s(),n=i.use.logout(),a=(0,u.useRef)(!1);return(0,u.useEffect)(()=>{if(a.current)return;a.current=!0;let i=t(e.get(`returnTo`),r.account.login),s=i.startsWith(`http`)||i===r.account.login?i:`${r.account.login}?returnTo=${encodeURIComponent(i)}`,c=!1;return n().then(()=>{c||o(s)},()=>{c||o(s)}),()=>{c=!0}},[n,e]),(0,d.jsx)(l,{children:(0,d.jsx)(c,{title:`Signing out...`})})}export{f as LogoutPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BlnqVGWw.js";import{r as n}from"./routes-Bc63mRsk.js";import{t as r}from"./jsx-runtime-2-RJdKf7.js";import{t as i}from"./createLucideIcon-C9oV_FLv.js";import{Pt as a,oi as o,rn as s,si as c,tr as l}from"./index-D6-nsIUa.js";import{n as u,t as d}from"./sidebar-tree-B_R8bNLb.js";var f=i(`monitor-cog`,[[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m14.305 7.53.923-.382`,key:`1mlnsw`}],[`path`,{d:`m15.228 4.852-.923-.383`,key:`82mpwg`}],[`path`,{d:`m16.852 3.228-.383-.924`,key:`ln4sir`}],[`path`,{d:`m16.852 8.772-.383.923`,key:`1dejw0`}],[`path`,{d:`m19.148 3.228.383-.924`,key:`192kgf`}],[`path`,{d:`m19.53 9.696-.382-.924`,key:`fiavlr`}],[`path`,{d:`m20.772 4.852.924-.383`,key:`1j8mgp`}],[`path`,{d:`m20.772 7.148.924.383`,key:`zix9be`}],[`path`,{d:`M22 13v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7`,key:`1tnzv8`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}]]),p=e(t(),1),m=[{id:`usage`,label:`Usage`,href:n.logs.usage,icon:l},{id:`logs`,label:`Logs`,href:n.logs.trace,icon:a},{id:`emails`,label:`Emails`,href:n.logs.emails,icon:s},{id:`system-events`,label:`System Events`,href:n.logs.systemEvents,icon:f}],h=r();function g(){let{pathname:e}=c(),t=(0,p.useMemo)(()=>{let t=m.find(t=>e===t.href||e.startsWith(t.href+`/`));return t?t.label:e===n.logs.root?m[0]?.label??`Logs & Usage`:`Logs & Usage`},[e]);return(0,h.jsx)(u,{backHref:n.assistant,sidebar:(0,h.jsx)(d,{items:m}),title:t,menuRoute:n.logs.root,children:(0,h.jsx)(o,{})})}export{g as LogsLayout};
@@ -1,3 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BlnqVGWw.js";import{n}from"./auth-store-B6yNvrw4.js";import{t as r}from"./client.gen-ywbejrz1.js";import{t as i}from"./useQuery-DQMwUXEx.js";import{t as a}from"./useMutation-Cq8DErPD.js";import{t as o}from"./jsx-runtime-2-RJdKf7.js";import{t as s}from"./card-CaVHvRGL.js";import"./src-kyqznrcv.js";import{dr as c,ti as l}from"./index-D6-nsIUa.js";import{t as u}from"./use-active-assistant-id-BNTrFfbP.js";var d=e(t(),1),f=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function p(e,t,n){let{data:i,response:a}=await r.post({url:`/v1/assistants/{assistant_id}/memory/v2/simulate-router/`,path:{assistant_id:e},body:t,signal:n,throwOnError:!1}),o=a?await a.clone().text().catch(()=>``):``;if(!a||!a.ok)throw new f(a?.status??0,o||a?.statusText||`Failed to simulate memory router`);if(!i)throw new f(a.status,`Empty response from memory router simulator endpoint`);return{response:i,rawRequest:JSON.stringify(t,null,2),rawResponse:m(o)}}function m(e){if(e.length===0)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function h(e){return a({mutationFn:async t=>{if(!e)throw new f(0,`Missing assistantId`);return p(e,t)}})}async function g(e,t){let{data:n,response:i}=await r.get({url:`/v1/assistants/{assistant_id}/config/llm/profiles/`,path:{assistant_id:e},signal:t,throwOnError:!1});if(!i||!i.ok)throw new f(i?.status??0,i?.statusText??`Failed to load LLM profiles`);if(!n)throw new f(i.status,`Empty response from profile list endpoint`);return n}function _(e){return i({queryKey:[`llm-profiles`,e],queryFn:async({signal:t})=>{if(!e)throw new f(0,`Missing assistantId`);return g(e,t)},enabled:!!e,staleTime:6e4})}async function v(e,t){let{data:n,response:i}=await r.get({url:`/v1/assistants/{assistant_id}/memory/v2/router-prompt-template/`,path:{assistant_id:e},signal:t,throwOnError:!1});if(!i||!i.ok)throw new f(i?.status??0,i?.statusText??`Failed to load router prompt template`);if(!n)throw new f(i.status,`Empty response from router prompt template endpoint`);return n}function y(e){return i({queryKey:[`router-prompt-template`,e],queryFn:async({signal:t})=>{if(!e)throw new f(0,`Missing assistantId`);return v(e,t)},enabled:!!e,staleTime:1440*60*1e3})}async function b(e,t){let{data:n,response:i}=await r.get({url:`/v1/assistants/{assistant_id}/memory/v2/now-text/`,path:{assistant_id:e},signal:t,throwOnError:!1});if(!i||!i.ok)throw new f(i?.status??0,i?.statusText??`Failed to load NOW.md`);if(!n)throw new f(i.status,`Empty response from now-text endpoint`);return n}function ee(e){return i({queryKey:[`memory-router-now-text`,e],queryFn:async({signal:t})=>{if(!e)throw new f(0,`Missing assistantId`);return b(e,t)},enabled:!!e,staleTime:1/0})}var x=o();function S(){let e=n.use.user(),t=n.use.isLoading(),r=l.use.memoryRouterPlayground();return t?(0,x.jsx)($,{children:`Loading…`}):!c(e)||!r?(0,x.jsx)($,{children:`Memory router playground is not available.`}):(0,x.jsx)(w,{})}var C={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function w(){let e=u(),t=h(e),n=h(e),r=_(e),i=y(e),a=ee(e),[o,s]=(0,d.useState)(``),[c,l]=(0,d.useState)([{assistantMessage:``,userMessage:``}]),[f,p]=(0,d.useState)(!1);(0,d.useEffect)(()=>{if(f)return;let e=a.data?.nowText;typeof e==`string`&&o===``&&s(e)},[a.data?.nowText,o,f]);let[m,g]=(0,d.useState)(C),[v,b]=(0,d.useState)(C),[S,w]=(0,d.useState)(null),[E,O]=(0,d.useState)(null),A=c[c.length-1].userMessage,j=e=>{let r=e===`A`?m:v,i=e===`A`?w:O,a=e===`A`?t:n;i(null);let s;try{s=T(r)}catch(e){i(e instanceof Error?e.message:`Invalid override input`);return}let l=r.profile.trim().length>0?r.profile:void 0,u=r.customPrompt.trim().length>0?r.customPrompt:void 0,d=c.map((e,t)=>t===c.length-1?{...e,userMessage:e.userMessage.trim()}:e);a.mutate({recentTurnPairs:d,nowText:o,...s?{configOverrides:s}:{},...l===void 0?{}:{profileOverride:l},...u===void 0?{}:{routerPromptOverride:u}})},M=()=>{j(`A`),j(`B`)},P=A.trim().length>0,I=P&&!t.isPending,L=P&&!n.isPending;return(0,x.jsx)(`div`,{className:`flex h-full min-h-0 flex-col overflow-y-auto`,children:(0,x.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1280px] flex-col gap-6 p-6`,children:[(0,x.jsx)(D,{}),(0,x.jsx)(te,{nowText:o,onNowTextChange:e=>{p(!0),s(e)},onReloadNowText:()=>{let e=a.data?.nowText;typeof e==`string`&&(s(e),p(!1))},nowTextLoading:a.isLoading,pairs:c,onPairsChange:l}),(0,x.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,x.jsx)(k,{paneId:`A`,overrides:m,onChange:g,onRun:()=>j(`A`),canRun:I,isRunning:t.isPending,profiles:r.data?.profiles??[],activeProfile:r.data?.activeProfile??null,defaultPromptTemplate:i.data?.template??``}),(0,x.jsx)(k,{paneId:`B`,overrides:v,onChange:b,onRun:()=>j(`B`),canRun:L,isRunning:n.isPending,profiles:r.data?.profiles??[],activeProfile:r.data?.activeProfile??null,defaultPromptTemplate:i.data?.template??``})]}),(0,x.jsx)(`div`,{className:`flex justify-end`,children:(0,x.jsx)(N,{onClick:M,disabled:!P||t.isPending||n.isPending,isRunning:t.isPending||n.isPending})}),(0,x.jsx)(ne,{visible:t.data!==void 0&&n.data!==void 0}),(0,x.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,x.jsx)(F,{paneId:`A`,userMessage:A,mutation:t,otherResult:n.data?.response,validation:S}),(0,x.jsx)(F,{paneId:`B`,userMessage:A,mutation:n,otherResult:t.data?.response,validation:E})]})]})})}function T(e){let t={...E(`tier1_size`,e.tier1),...E(`tier2_size`,e.tier2),...E(`batch_size`,e.batch)};return Object.keys(t).length===0?void 0:t}function E(e,t){let n=t.trim();if(n===``)return{};if(n===`null`)return{[e]:null};let r=Number(n);if(!Number.isInteger(r)||r<1)throw Error(`${e} must be a positive integer or 'null' (got "${n}")`);return{[e]:r}}function D(){return(0,x.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,x.jsx)(`h1`,{className:`text-body-large-default`,style:{color:`var(--content-default)`},children:`Memory Router Playground`}),(0,x.jsxs)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:[`Dry-run the v4 router with custom tier/batch overrides. Read-only — no rows are written to `,(0,x.jsx)(`code`,{children:`memory_v2_injection_events`}),` or`,` `,(0,x.jsx)(`code`,{children:`memory_v2_activation_logs`}),`, and no activation state is mutated. Leave an override blank to inherit the live config value; enter`,` `,(0,x.jsx)(`code`,{children:`null`}),` to explicitly disable a tier.`]})]})}function te({nowText:e,onNowTextChange:t,onReloadNowText:n,nowTextLoading:r,pairs:i,onPairsChange:a}){let o=(e,t)=>{a(i.map((n,r)=>r===e?{...n,...t}:n))},c=()=>{a([{assistantMessage:``,userMessage:``},...i])},l=e=>{e!==i.length-1&&a(i.filter((t,n)=>n!==e))};return(0,x.jsx)(s,{children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,x.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Conversational context (shared by both panes)`}),(0,x.jsx)(O,{id:`memory-router-playground-now`,label:`<now> block`,value:e,onChange:t,rows:6,monospace:!0,placeholder:r?`Loading current NOW.md…`:`Pre-filled with the live NOW.md. Edit to test alternate states.`,trailing:(0,x.jsx)(`button`,{type:`button`,onClick:n,disabled:r,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r?`not-allowed`:`pointer`},children:`Reload live NOW.md`})}),(0,x.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,x.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`Recent (assistant, user) pairs · oldest first`}),(0,x.jsx)(`button`,{type:`button`,onClick:c,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:`+ Add older pair`})]}),i.map((e,t)=>{let n=t===i.length-1;return(0,x.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border p-3`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`},children:[(0,x.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,x.jsxs)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:[`Pair `,t+1,` of `,i.length,n?` · most recent`:``]}),!n&&(0,x.jsx)(`button`,{type:`button`,onClick:()=>l(t),className:`rounded px-2 py-1 text-label-default`,style:{background:`transparent`,color:`var(--system-negative-strong)`,border:`none`,cursor:`pointer`},children:`Remove`})]}),(0,x.jsx)(O,{id:`memory-router-playground-pair-${t}-assistant`,label:`[assistant]: reply`,value:e.assistantMessage,onChange:e=>o(t,{assistantMessage:e}),rows:3,placeholder:t===0&&i.length===1?`Leave blank for a first-turn scenario.`:`Assistant's reply that came before the user message below.`}),(0,x.jsx)(O,{id:`memory-router-playground-pair-${t}-user`,label:n?`Just-arrived [user]: message`:`[user]: message`,value:e.userMessage,onChange:e=>o(t,{userMessage:e}),rows:3,placeholder:n?`e.g. what should we ship next`:`User's message.`,required:n})]},t)})]})})}function O({id:e,label:t,value:n,onChange:r,rows:i,placeholder:a,monospace:o,trailing:s,required:c}){return(0,x.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,x.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,x.jsxs)(`label`,{htmlFor:e,className:`text-label-default`,style:{color:`var(--content-secondary)`},children:[t,c?` *`:``]}),s]}),(0,x.jsx)(`textarea`,{id:e,value:n,onChange:e=>r(e.target.value),rows:i,placeholder:a,className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,resize:`vertical`,...o?{fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`}:{}}})]})}function k({paneId:e,overrides:t,onChange:n,onRun:r,canRun:i,isRunning:a,profiles:o,activeProfile:c,defaultPromptTemplate:l}){return(0,x.jsx)(s,{children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,x.jsxs)(`div`,{className:`text-body-medium-default`,style:{color:q(e)},children:[`Config `,e]}),(0,x.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,x.jsx)(M,{paneId:e,label:`tier1_size`,value:t.tier1,onChange:e=>n({...t,tier1:e})}),(0,x.jsx)(M,{paneId:e,label:`tier2_size`,value:t.tier2,onChange:e=>n({...t,tier2:e})}),(0,x.jsx)(M,{paneId:e,label:`batch_size`,value:t.batch,onChange:e=>n({...t,batch:e})})]}),(0,x.jsx)(j,{paneId:e,value:t.profile,onChange:e=>n({...t,profile:e}),profiles:o,activeProfile:c}),(0,x.jsx)(A,{paneId:e,value:t.customPrompt,onChange:e=>n({...t,customPrompt:e}),defaultTemplate:l}),(0,x.jsx)(`div`,{className:`flex justify-end`,children:(0,x.jsx)(`button`,{type:`button`,onClick:r,disabled:!i,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:i?`var(--system-positive-strong)`:`var(--surface-overlay)`,color:i?`var(--content-on-positive)`:`var(--content-disabled)`,border:`none`,cursor:i?`pointer`:`not-allowed`},children:a?`Running…`:`Run ${e}`})})]})})}function A({paneId:e,value:t,onChange:n,defaultTemplate:r}){let[i,a]=(0,d.useState)(!1),o=`memory-router-playground-${e}-prompt`,s=t.trim().length>0;return(0,x.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,x.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,x.jsxs)(`button`,{type:`button`,onClick:()=>a(e=>!e),className:`text-label-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[i?`▾`:`▸`,` System prompt`,` `,(0,x.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[`(`,s?`custom`:`bundled`,`)`]})]}),i&&(0,x.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,x.jsx)(`button`,{type:`button`,onClick:()=>n(r),disabled:r.length===0,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r.length===0?`not-allowed`:`pointer`},children:`Load default`}),(0,x.jsx)(`button`,{type:`button`,onClick:()=>n(``),disabled:!s,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:s?`pointer`:`not-allowed`},children:`Reset`})]})]}),i&&(0,x.jsx)(`textarea`,{id:o,value:t,onChange:e=>n(e.target.value),rows:12,placeholder:`Custom router system prompt. Available placeholders:
2
- {{ASSISTANT_NAME}}, {{USER_NAME}}, {{PAGE_INDEX}}
3
- Leave blank to use the bundled template. "Load default" seeds the textarea with the bundled body for editing.`,className:`rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,resize:`vertical`,minHeight:`120px`}})]})}function j({paneId:e,value:t,onChange:n,profiles:r,activeProfile:i}){let a=`memory-router-playground-${e}-profile`,o=i!==null&&i.length>0?`inherit active (${i})`:`inherit active`;return(0,x.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,x.jsx)(`label`,{htmlFor:a,className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`llm.profiles override`}),(0,x.jsxs)(`select`,{id:a,value:t,onChange:e=>n(e.target.value),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`},children:[(0,x.jsx)(`option`,{value:``,children:o}),r.map(e=>(0,x.jsx)(`option`,{value:e,children:e},e))]})]})}function M({paneId:e,label:t,value:n,onChange:r}){let i=`memory-router-playground-${e}-${t}`;return(0,x.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,x.jsx)(`label`,{htmlFor:i,className:`text-label-default`,style:{color:`var(--content-secondary)`},children:t}),(0,x.jsx)(`input`,{id:i,value:n,onChange:e=>r(e.target.value),placeholder:`inherit`,className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`}})]})}function N({onClick:e,disabled:t,isRunning:n}){return(0,x.jsx)(`button`,{type:`button`,onClick:e,disabled:t,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:t?`var(--surface-overlay)`:`var(--primary-base)`,color:t?`var(--content-disabled)`:`var(--content-on-primary)`,border:`none`,cursor:t?`not-allowed`:`pointer`},children:n?`Running…`:`Run both`})}function ne({visible:e}){return e?(0,x.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 rounded-md px-4 py-2 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:[(0,x.jsx)(P,{marker:`●`,markerColor:`var(--content-default)`,label:`in both`}),(0,x.jsx)(P,{marker:`◆`,markerColor:q(`A`),label:`A only`}),(0,x.jsx)(P,{marker:`◇`,markerColor:q(`B`),label:`B only`})]}):null}function P({marker:e,markerColor:t,label:n}){return(0,x.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,x.jsx)(`span`,{style:{color:t},children:e}),(0,x.jsx)(`span`,{children:n})]})}function F({paneId:e,userMessage:t,mutation:n,otherResult:r,validation:i}){let a=n.data;return(0,x.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,x.jsx)(R,{paneId:e}),i!==null&&(0,x.jsx)(Q,{message:i}),n.isError&&(0,x.jsx)(Q,{message:n.error instanceof Error?n.error.message:`Failed to run simulation`}),a!==void 0&&(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(z,{paneId:e,userMessage:t,result:a.response,otherResult:r}),(0,x.jsx)(I,{paneId:e,rawRequest:a.rawRequest,rawResponse:a.rawResponse})]})]})}function I({paneId:e,rawRequest:t,rawResponse:n}){let[r,i]=(0,d.useState)(!1);return(0,x.jsx)(s,{children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,x.jsxs)(`button`,{type:`button`,onClick:()=>i(e=>!e),className:`text-label-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[r?`▾`:`▸`,` Raw API exchange`]}),r&&(0,x.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,x.jsx)(L,{label:`Request (Pane ${e})`,body:t}),(0,x.jsx)(L,{label:`Response (Pane ${e})`,body:n})]})]})})}function L({label:e,body:t}){return(0,x.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,x.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:e}),(0,x.jsx)(`pre`,{className:`overflow-auto rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,maxHeight:`320px`,whiteSpace:`pre`},children:t.length===0?`(empty)`:t})]})}function R({paneId:e}){return(0,x.jsxs)(`div`,{className:`text-body-medium-default`,style:{color:q(e)},children:[`Pane `,e]})}function z({paneId:e,userMessage:t,result:n,otherResult:r}){let i=(0,d.useMemo)(()=>B(n,r),[n,r]),a=(0,d.useMemo)(()=>W(n),[n]);return(0,x.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,x.jsx)(H,{result:n,userMessage:t,otherResult:r,counts:(0,d.useMemo)(()=>V(i),[i])}),(0,x.jsx)(U,{result:n}),n.failureReason!==null&&(0,x.jsx)(Q,{message:`Router failure: ${n.failureReason}`}),a.length===0?(0,x.jsx)(X,{}):a.map(t=>(0,x.jsx)(Y,{paneId:e,source:t.source,slugs:t.slugs,scores:n.scores,diff:i},t.source))]})}function B(e,t){let n=new Map;if(t===void 0){for(let t of e.selectedSlugs)n.set(t,`both`);return n}let r=new Set(t.selectedSlugs);for(let t of e.selectedSlugs)n.set(t,r.has(t)?`both`:`only-here`);return n}function V(e){let t=0,n=0;for(let r of e.values())r===`both`?t++:n++;return{total:e.size,shared:t,unique:n}}function H({result:e,userMessage:t,otherResult:n,counts:r}){let i=[{label:`User message`,value:t},{label:`Total candidate pages`,value:e.totalCandidatePages.toLocaleString()},{label:`Selected`,value:`${e.selectedSlugs.length} (live max_page_ids: ${e.effectiveConfig.max_page_ids})`}];return n!==void 0&&i.push({label:`Diff`,value:`${r.shared} shared · ${r.unique} unique to this pane`}),(0,x.jsx)(s,{children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,x.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Summary`}),(0,x.jsx)(Z,{rows:i})]})})}function U({result:e}){let t=[`tier1_size`,`tier2_size`,`batch_size`,`max_page_ids`].map(t=>{let n=e.effectiveConfig[t],r=e.overrides[t];return{label:t,value:`${n===null?`null`:String(n)}${r===void 0?``:` (override)`}`}});return t.push({label:`llm.profiles override`,value:e.profileOverride===null?`inherit active`:`${e.profileOverride} (override)`}),t.push({label:`system prompt`,value:e.routerPromptOverridden?`custom`:`bundled`}),(0,x.jsx)(s,{children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,x.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Effective config`}),(0,x.jsx)(Z,{rows:t})]})})}function W(e){let t=new Map;for(let n of e.selectedSlugs){let r=e.sourceBySlug[n];if(r===void 0)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return[...t.keys()].sort((e,t)=>G(e)-G(t)).map(e=>({source:e,slugs:t.get(e)}))}function G(e){return e===`tier1`?0:e===`tier2`?1:e.startsWith(`tier3:`)?2+Number(e.slice(6)):2**53-1}function K(e){return e===`tier1`?`tier 1`:e===`tier2`?`tier 2`:e.startsWith(`tier3:`)?`tier 3 · b${e.slice(6)}`:e}function q(e){return e===`A`?`var(--system-mid-strong)`:`var(--primary-base)`}function J(e,t){return t===`both`?{color:`var(--content-default)`,marker:`●`}:{color:q(e),marker:e===`A`?`◆`:`◇`}}function Y({paneId:e,source:t,slugs:n,scores:r,diff:i}){return(0,x.jsx)(s,{children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,x.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,x.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:K(t)}),(0,x.jsxs)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:[n.length,` `,n.length===1?`page`:`pages`]})]}),(0,x.jsx)(`ul`,{className:`flex flex-col gap-1`,children:n.map(n=>{let{color:a,marker:o}=J(e,i.get(n)??`only-here`);return(0,x.jsxs)(`li`,{className:`flex items-baseline justify-between gap-3`,children:[(0,x.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,x.jsx)(`span`,{style:{color:a},children:o}),(0,x.jsx)(`code`,{className:`text-body-medium-default`,style:{color:a},children:n})]}),t===`tier2`&&(0,x.jsxs)(`span`,{className:`tabular-nums text-label-default`,style:{color:`var(--content-secondary)`},children:[`EMA `,(r[n]??0).toFixed(3)]})]},n)})})]})})}function X(){return(0,x.jsx)(s,{children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,x.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`No pages selected`}),(0,x.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`The router returned an empty selection. Try a more specific query, or relax the override values.`})]})})}function Z({rows:e}){return(0,x.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(({label:e,value:t})=>(0,x.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,x.jsx)(`span`,{className:`shrink-0 text-label-default`,style:{color:`var(--content-secondary)`},children:e}),(0,x.jsx)(`span`,{className:`text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:t})]},e))})}function Q({message:e}){return(0,x.jsx)(`div`,{className:`rounded-md px-4 py-3 text-body-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--system-negative-strong)`},children:e})}function $({children:e}){return(0,x.jsx)(`div`,{className:`flex h-full w-full items-center justify-center p-8 text-label-default`,style:{color:`var(--content-tertiary)`},children:e})}export{S as MemoryRouterPlaygroundPage};
@@ -1 +0,0 @@
1
- function e(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}var t=e=>n=>{try{let r=e(n);return r instanceof Promise?r:{then(e){return t(e)(r)},catch(e){return this}}}catch(e){return{then(e){return this},catch(n){return t(n)(e)}}}},n=(n,r)=>(i,a,o)=>{let s={storage:e(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...r},c=!1,l=0,u=new Set,d=new Set,f=s.storage;if(!f)return n((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${s.name}', the given storage is currently unavailable.`),i(...e)},a,o);let p=()=>{let e=s.partialize({...a()});return f.setItem(s.name,{state:e,version:s.version})},m=o.setState;o.setState=(e,t)=>(m(e,t),p());let h=n((...e)=>(i(...e),p()),a,o);o.getInitialState=()=>h;let g,_=()=>{if(!f)return;let e=++l;c=!1,u.forEach(e=>e(a()??h));let n=s.onRehydrateStorage?.call(s,a()??h)||void 0;return t(f.getItem.bind(f))(s.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==s.version){if(s.migrate){let t=s.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==l)return;let[n,r]=t;if(g=s.merge(r,a()??h),i(g,!0),n)return p()}).then(()=>{e===l&&(n?.(a(),void 0),g=a(),c=!0,d.forEach(e=>e(g)))}).catch(t=>{e===l&&n?.(void 0,t)})};return o.persist={setOptions:e=>{s={...s,...e},e.storage&&(f=e.storage)},clearStorage:()=>{f?.removeItem(s.name)},getOptions:()=>s,rehydrate:()=>_(),hasHydrated:()=>c,onHydrate:e=>(u.add(e),()=>{u.delete(e)}),onFinishHydration:e=>(d.add(e),()=>{d.delete(e)})},s.skipHydration||_(),g||h};export{n,e as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BlnqVGWw.js";import{t as n}from"./jsx-runtime-2-RJdKf7.js";import{t as r}from"./cn-B70VuHjM.js";import{t as i}from"./portal-container-T4u-kJy6.js";import{t as a}from"./x-x84-Y-pw.js";import{a as o,c as s,i as c,n as l,o as u,r as d,s as f,t as p}from"./dist-CTD_Ut2j.js";var m=e(t(),1),h=n(),g=(0,m.createContext)({}),_={sm:`max-w-[400px]`,md:`max-w-[560px]`,lg:`max-w-[800px]`,xl:`max-w-[1100px]`};function v({onOpenChange:e,...t}){return(0,h.jsx)(g,{value:{onOpenChange:e},children:(0,h.jsx)(u,{onOpenChange:e,...t})})}function y(e){return(0,h.jsx)(s,{"data-slot":`modal-trigger`,...e})}function b({size:e=`md`,hideCloseButton:t=!1,overlayClassName:n,className:s,children:u,ref:d,...f}){let v=i(),{onOpenChange:y}=(0,m.useContext)(g);return(0,h.jsx)(o,{container:v??void 0,children:(0,h.jsx)(c,{"data-slot":`modal-overlay`,className:r(`fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4`,n),onClick:e=>{e.target===e.currentTarget&&y?.(!1)},children:(0,h.jsxs)(l,{ref:d,"data-slot":`modal-content`,className:r(`relative flex max-h-[calc(100vh-2rem)] w-full flex-col rounded-xl border shadow-xl`,_[e],`bg-[var(--surface-lift)] border-[var(--border-base)]`,`focus:outline-none`,s),...f,children:[u,t?null:(0,h.jsx)(p,{asChild:!0,children:(0,h.jsx)(`button`,{type:`button`,"aria-label":`Close`,className:`absolute top-3 right-3 flex h-6 w-6 cursor-pointer items-center justify-center rounded bg-transparent text-[var(--content-secondary)] transition-colors hover:text-[var(--content-default)]`,children:(0,h.jsx)(a,{className:`h-4 w-4`})})})]})})})}function x({icon:e,className:t,children:n,ref:i,...a}){return(0,h.jsxs)(f,{ref:i,"data-slot":`modal-title`,className:r(`flex items-center gap-3 text-title-medium text-[var(--content-default)]`,t),...a,children:[e?(0,h.jsx)(`span`,{"aria-hidden":`true`,className:`flex h-10 w-10 shrink-0 items-center justify-center rounded-full`,style:{backgroundColor:`color-mix(in oklab, var(--primary-base) 16%, transparent)`},children:(0,h.jsx)(e,{className:`h-5 w-5 text-[var(--primary-base)]`})}):null,(0,h.jsx)(`span`,{className:`min-w-0 truncate`,children:n})]})}function S({className:e,children:t,ref:n,...i}){return(0,h.jsx)(d,{ref:n,"data-slot":`modal-description`,className:r(`mt-1 whitespace-pre-line text-body-medium-lighter text-[var(--content-secondary)]`,e),...i,children:t})}function C(e){return(0,h.jsx)(p,{"data-slot":`modal-close`,...e})}function w({className:e,children:t,...n}){return(0,h.jsx)(`div`,{"data-slot":`modal-header`,className:r(`flex flex-col gap-1 p-4 pr-10`,e),...n,children:t})}function T({className:e,children:t,...n}){return(0,h.jsx)(`div`,{"data-slot":`modal-body`,className:r(`flex-1 overflow-y-auto px-4 pb-4 text-[var(--content-default)]`,e),...n,children:t})}function E({className:e,children:t,...n}){return(0,h.jsx)(`div`,{"data-slot":`modal-footer`,className:r(`flex justify-end gap-2 px-4 py-4`,e),...n,children:t})}var D={Root:v,Trigger:y,Content:b,Title:x,Description:S,Close:C,Header:w,Body:T,Footer:E};export{D as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-2-RJdKf7.js";import{t}from"./cn-B70VuHjM.js";import{t as n}from"./typography-X3i-p9De.js";import{i as r,n as i,r as a,t as o}from"./octagon-x-DgCpvPRH.js";import{t as s}from"./x-x84-Y-pw.js";var c=e(),l={info:{container:`bg-[var(--surface-overlay)] border-[var(--border-element)]`,icon:`text-[color:var(--content-secondary)]`,DefaultIcon:i},success:{container:`bg-[var(--system-positive-weak)] border-[color-mix(in_srgb,var(--system-positive-strong)_25%,transparent)]`,icon:`text-[color:var(--system-positive-strong)]`,DefaultIcon:a},warning:{container:`bg-[var(--system-mid-weak)] border-[color-mix(in_srgb,var(--system-mid-strong)_30%,transparent)]`,icon:`text-[color:var(--system-mid-strong)]`,DefaultIcon:r},error:{container:`bg-[var(--system-negative-weak)] border-[color-mix(in_srgb,var(--system-negative-strong)_25%,transparent)]`,icon:`text-[color:var(--system-negative-strong)]`,DefaultIcon:o},neutral:{container:`bg-[var(--surface-overlay)] border-[var(--border-base)]`,icon:`text-[color:var(--content-secondary)]`,DefaultIcon:null}};function u({tone:e=`info`,title:r,children:i,icon:a,onDismiss:o,actions:u,className:d,ref:f,...p}){let m=l[e],h=e===`error`?`alert`:`status`,g=a===void 0?m.DefaultIcon?(0,c.jsx)(m.DefaultIcon,{className:`h-4 w-4`,"aria-hidden":`true`}):null:a;return(0,c.jsxs)(`div`,{...p,ref:f,role:h,"data-slot":`notice`,className:t(`relative flex w-full items-start gap-3 rounded-lg border p-3`,`text-[color:var(--content-default)]`,m.container,d),children:[g?(0,c.jsx)(`span`,{className:t(`mt-0.5 flex shrink-0 items-center justify-center`,m.icon),children:g}):null,(0,c.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[r?(0,c.jsx)(n,{variant:`body-medium-default`,as:`p`,className:`text-[color:var(--content-emphasised)]`,children:r}):null,i?(0,c.jsx)(n,{variant:`body-medium-lighter`,as:`div`,className:`text-[color:var(--content-secondary)]`,children:i}):null]}),u?(0,c.jsx)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2`,children:u}):null,o?(0,c.jsx)(`button`,{type:`button`,onClick:o,"aria-label":`Dismiss`,className:t(`shrink-0 cursor-pointer rounded bg-transparent p-0.5`,`text-[color:var(--content-secondary)] opacity-70 transition-opacity`,`hover:opacity-100 focus-visible:outline-none focus-visible:ring-2`,`focus-visible:ring-[var(--ring)]`),children:(0,c.jsx)(s,{className:`h-3.5 w-3.5`,strokeWidth:2,"aria-hidden":`true`})}):null]})}export{u as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BlnqVGWw.js";import{n}from"./QueryClientProvider-B6PnMGWJ.js";import{t as r}from"./useQuery-DQMwUXEx.js";import{t as i}from"./useMutation-Cq8DErPD.js";import{t as a}from"./jsx-runtime-2-RJdKf7.js";import{ct as o,dt as s,ft as c,lt as l,mt as u,pt as d,ut as f}from"./react-query.gen-CaeZaVZK.js";import{O as p,S as m,n as h,t as g}from"./panel-item-CH4BnWiy.js";import{t as _}from"./notice-C9Zmf-rY.js";import{t as v}from"./input-DMJDsLW2.js";import{n as y}from"./use-is-mobile-L-si1_f-.js";import{t as b}from"./createLucideIcon-C9oV_FLv.js";import{t as x}from"./loader-circle-DfyYkLlZ.js";import{Yt as S,ar as C,er as w,ht as T}from"./index-D6-nsIUa.js";import{r as E}from"./format-date-CB3SQEqd.js";var D=b(`bell-off`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742`,key:`178tsu`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05`,key:`1hqiys`}]]),O=b(`check-check`,[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]),k=e(t(),1);function A(e){return e.snoozed_until?new Date(e.snoozed_until)>new Date:!1}var j=[{label:`1 hour`,hours:1},{label:`4 hours`,hours:4},{label:`24 hours`,hours:24},{label:`1 week`,hours:168}],M=a();function N({notificationId:e,currentlySnoozed:t,children:r}){let a=n(),o=i(d()),s=y(),[c,l]=(0,k.useState)(!1),p=()=>{a.invalidateQueries({queryKey:f()}),a.invalidateQueries({queryKey:u()})},_=async t=>{let n=new Date(new Date().getTime()+t*60*60*1e3).toISOString();await o.mutateAsync({path:{id:e},body:{snoozed_until:n}}),p()},v=async()=>{await o.mutateAsync({path:{id:e},body:{snoozed_until:null}}),p()};return s?(0,M.jsxs)(m.Root,{open:c,onOpenChange:l,children:[(0,M.jsx)(m.Trigger,{asChild:!0,children:r}),(0,M.jsxs)(m.Content,{children:[(0,M.jsx)(m.Header,{children:(0,M.jsx)(m.Title,{children:`Snooze until…`})}),(0,M.jsxs)(m.Body,{children:[j.map(({label:e,hours:t})=>(0,M.jsx)(g,{label:e,onSelect:()=>{o.isPending||(l(!1),_(t))}},e)),t&&(0,M.jsx)(g,{label:`Clear snooze`,onSelect:()=>{o.isPending||(l(!1),v())}})]})]})]}):(0,M.jsxs)(h.Root,{open:c,onOpenChange:l,children:[(0,M.jsx)(h.Trigger,{children:r}),(0,M.jsxs)(h.Content,{align:`start`,className:`min-w-[12rem]`,children:[(0,M.jsx)(h.Label,{children:`Snooze until…`}),j.map(({label:e,hours:t})=>(0,M.jsx)(h.Item,{disabled:o.isPending,onSelect:()=>void _(t),children:e},e)),t&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(h.Separator,{}),(0,M.jsx)(h.Item,{disabled:o.isPending,onSelect:()=>void v(),children:`Clear snooze`})]})]})]})}function P({existingRules:e,onClose:t,onPauseCreated:r,onPauseDeleted:a,hideTitle:o=!1}){let l=n(),d=i(s()),p=i(c()),[m,h]=(0,k.useState)(``),g=()=>{l.invalidateQueries({queryKey:f()}),l.invalidateQueries({queryKey:u()})},_=async()=>{let e=new Date(new Date().getTime()+365*24*60*60*1e3).toISOString();r(await d.mutateAsync({body:{notification_type:`alert`,dedupe_key_prefix:``,reason:m.trim()||`User requested pause`,expires_at:e}})),g(),t()},y=async e=>{await p.mutateAsync({path:{rule_id:e}}),a(e),g(),t()},b=d.isPending||p.isPending;return(0,M.jsxs)(`div`,{children:[!o&&(0,M.jsx)(`p`,{className:`mb-2 text-body-medium-default text-[var(--content-default)]`,children:`Pause alerts`}),e.length>0?(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Active pause rules:`}),e.map(e=>(0,M.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-2 py-2`,children:[(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsx)(`p`,{className:`truncate text-body-small-default text-[var(--content-default)]`,children:e.reason||`All alerts paused`}),e.expires_at&&(0,M.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Expires `,E(e.expires_at)]})]}),(0,M.jsx)(`button`,{type:`button`,onClick:()=>void y(e.id),disabled:b,className:`ml-2 shrink-0 cursor-pointer rounded px-2 py-1 text-body-small-default text-[var(--system-negative-strong)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:`Resume`})]},e.id))]}):(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Temporarily mute all alert notifications.`}),(0,M.jsx)(v,{type:`text`,value:m,onChange:e=>h(e.target.value),placeholder:`Reason (optional)`}),(0,M.jsx)(`button`,{type:`button`,onClick:()=>void _(),disabled:b,className:`w-full cursor-pointer rounded-md bg-[var(--primary-base)] px-3 py-1.5 text-body-medium-default text-[var(--content-inset)] transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50`,children:d.isPending?(0,M.jsxs)(`span`,{className:`flex items-center justify-center gap-2`,children:[(0,M.jsx)(x,{className:`h-3 w-3 animate-spin`}),`Pausing…`]}):`Pause all alerts`})]})]})}function F({notification:e,onAck:t,isAcking:n}){let r=e.notification_type===`alert`,i=A(e),a=!e.is_read;return(0,M.jsxs)(`div`,{className:`relative rounded-lg border border-[var(--border-base)] p-4`,style:{background:e.is_resolved?`var(--surface-base)`:`var(--surface-lift)`,opacity:e.is_resolved?.75:1},children:[(0,M.jsx)(`div`,{className:`flex items-start gap-3`,children:(0,M.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col items-start gap-1`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[a&&!e.is_resolved&&(0,M.jsx)(`span`,{"aria-hidden":!0,className:`h-2 w-2 shrink-0 rounded-full bg-[var(--primary-base)]`}),r&&(0,M.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-negative-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,M.jsx)(T,{className:`h-3 w-3`}),`Alert`]}),i&&(0,M.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--surface-base)] px-2 py-0.5 text-body-small-default text-[var(--content-secondary)]`,children:[(0,M.jsx)(S,{className:`h-3 w-3`}),`Snoozed`]}),e.is_resolved&&(0,M.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-positive-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,children:[(0,M.jsx)(w,{className:`h-3 w-3`}),`Resolved`]})]}),(0,M.jsx)(`h3`,{className:`text-body-medium-default leading-tight`,style:{color:e.is_resolved?`var(--content-secondary)`:`var(--content-default)`},children:e.title}),e.body&&(0,M.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-secondary)]`,children:e.body})]})}),(0,M.jsxs)(`div`,{className:`mt-3 flex items-center gap-3 text-body-small-default text-[var(--content-secondary)]`,children:[(0,M.jsxs)(`span`,{children:[`Last seen `,E(e.last_seen_at)]}),e.occurrence_count>1&&(0,M.jsxs)(`span`,{children:[`· `,e.occurrence_count,`× occurrences`]})]}),!e.is_resolved&&(0,M.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 border-t border-[var(--border-base)] pt-3`,children:[(0,M.jsxs)(`button`,{type:`button`,onClick:()=>t(e.id,a),disabled:n,className:`flex cursor-pointer items-center gap-1.5 rounded-md px-3 py-1.5 text-body-small-default transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,style:{background:a?`var(--primary-base)`:`var(--surface-base)`,color:a?`var(--content-inset)`:`var(--content-secondary)`},children:[n?(0,M.jsx)(x,{className:`h-3 w-3 animate-spin`}):(0,M.jsx)(w,{className:`h-3 w-3`}),a?`Mark as read`:`Mark as unread`]}),(0,M.jsx)(N,{notificationId:e.id,currentlySnoozed:i,children:(0,M.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,children:[(0,M.jsx)(S,{className:`h-3 w-3`}),i?`Change snooze`:`Snooze`]})})]})]})}function I(){let e=n(),t=y(),[a,s]=(0,k.useState)(`open`),[c,d]=(0,k.useState)(!1),[h,g]=(0,k.useState)([]),{data:v,isLoading:b,isError:S,refetch:w}=r(l({query:{status:a}})),T=v?.results??[],E=T.filter(e=>!e.is_read&&!e.is_resolved),A=i(o()),[j,N]=(0,k.useState)(new Set),[I,L]=(0,k.useState)(!1),R=(0,k.useCallback)(()=>{e.invalidateQueries({queryKey:f()}),e.invalidateQueries({queryKey:u()})},[e]),z=async(e,t)=>{N(t=>new Set(t).add(e));try{await A.mutateAsync({path:{id:e},body:{acknowledged:t}}),R()}finally{N(t=>{let n=new Set(t);return n.delete(e),n})}},B=async()=>{if(!(E.length===0||I)){L(!0);try{await Promise.allSettled(E.map(e=>A.mutateAsync({path:{id:e.id},body:{acknowledged:!0}})))}finally{R(),L(!1)}}},V=(0,M.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,title:`Pause alerts`,children:[(0,M.jsx)(D,{className:`h-3.5 w-3.5`}),`Pause alerts`]}),H=(0,M.jsx)(P,{existingRules:h,onClose:()=>d(!1),onPauseCreated:e=>g(t=>[...t,e]),onPauseDeleted:e=>g(t=>t.filter(t=>t.id!==e))});return(0,M.jsxs)(`div`,{className:`max-w-[940px] space-y-4`,children:[(0,M.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,M.jsx)(C,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,M.jsxs)(`div`,{className:`flex-1`,children:[(0,M.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,M.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]}),t?(0,M.jsxs)(m.Root,{open:c,onOpenChange:d,children:[(0,M.jsx)(m.Trigger,{asChild:!0,children:V}),(0,M.jsxs)(m.Content,{children:[(0,M.jsx)(m.Header,{children:(0,M.jsx)(m.Title,{children:`Pause alerts`})}),(0,M.jsx)(m.Body,{children:(0,M.jsx)(P,{existingRules:h,onClose:()=>d(!1),onPauseCreated:e=>g(t=>[...t,e]),onPauseDeleted:e=>g(t=>t.filter(t=>t.id!==e)),hideTitle:!0})})]})]}):(0,M.jsxs)(p.Root,{open:c,onOpenChange:d,children:[(0,M.jsx)(p.Trigger,{asChild:!0,children:V}),(0,M.jsx)(p.Content,{align:`end`,className:`w-72`,children:H})]})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,M.jsx)(`div`,{className:`flex gap-1 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-1`,children:[`open`,`resolved`].map(e=>{let t=a===e;return(0,M.jsx)(`button`,{type:`button`,onClick:()=>s(e),className:`cursor-pointer rounded px-3 py-1 text-body-small-default capitalize transition-colors`,style:{background:t?`var(--surface-lift)`:`transparent`,color:t?`var(--content-default)`:`var(--content-secondary)`,boxShadow:t?`0 1px 2px rgba(0,0,0,0.08)`:void 0},children:e},e)})}),a===`open`&&E.length>1&&(0,M.jsxs)(`button`,{type:`button`,onClick:()=>void B(),disabled:I,className:`ml-auto flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-transparent px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:[I?(0,M.jsx)(x,{className:`h-3 w-3 animate-spin`}):(0,M.jsx)(O,{className:`h-3 w-3`}),`Mark all as read (`,E.length,`)`]})]}),b?(0,M.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,M.jsx)(x,{className:`h-4 w-4 animate-spin`}),`Loading notifications…`]}):S?(0,M.jsxs)(_,{tone:`error`,children:[`Failed to load notifications.`,` `,(0,M.jsx)(`button`,{type:`button`,onClick:()=>void w(),className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}):T.length===0?(0,M.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,children:[(0,M.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,M.jsx)(C,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,M.jsxs)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`No `,a,` notifications`]}),(0,M.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:a===`open`?`You're all caught up!`:`Nothing to show here.`})]}):(0,M.jsx)(`div`,{className:`space-y-3`,children:T.map(e=>(0,M.jsx)(F,{notification:e,onAck:(e,t)=>void z(e,t),isAcking:j.has(e.id)},e.id))})]})}export{I as NotificationsPage};
@@ -1 +0,0 @@
1
- import{t as e}from"./jsx-runtime-2-RJdKf7.js";import{t}from"./public-asset-BNpOWIkb.js";var n=e();function r({className:e=``}){return(0,n.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute bottom-0 left-0 right-0 flex justify-center overflow-hidden ${e}`,children:(0,n.jsx)(`img`,{src:t(`/login-background-characters.svg`),alt:``,width:1200,height:180,className:`w-full max-w-[900px] object-cover object-bottom`})})}function i({children:e}){return(0,n.jsxs)(`div`,{className:`relative flex h-full flex-col bg-[var(--surface-base)]`,children:[(0,n.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:e}),(0,n.jsx)(r,{})]})}export{i as t};