@hienlh/ppm 0.20.8 → 0.20.9

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 (489) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/assets/skills/ppm/SKILL.md +1 -1
  3. package/assets/skills/ppm/references/http-api.md +1 -1
  4. package/dist/web/assets/accounts-settings-section-ByM99C7p.js +1 -0
  5. package/dist/web/assets/{ai-resource-editor-CMQfhxXp.js → ai-resource-editor-BsB9wa0z.js} +1 -1
  6. package/dist/web/assets/{ai-settings-section-M07DCjAI.js → ai-settings-section-BT-QVUBa.js} +1 -1
  7. package/dist/web/assets/ai-settings-section-BUPOINaw.js +1 -0
  8. package/dist/web/assets/{angular-html-BtJLNcMw.js → angular-html-CTx8qAkv.js} +1 -1
  9. package/dist/web/assets/{angular-ts-CQiu5F_W.js → angular-ts-BhBGUAnu.js} +1 -1
  10. package/dist/web/assets/api-client-C6VTn7cG.js +1 -0
  11. package/dist/web/assets/{api-settings-BQIwZoLm.js → api-settings-CqiVKFUX.js} +1 -1
  12. package/dist/web/assets/{api-themes-CmJZLEY1.js → api-themes-DtLXqXpC.js} +1 -1
  13. package/dist/web/assets/{apl-CKZvgs-w.js → apl-Dec3pSzF.js} +1 -1
  14. package/dist/web/assets/{appearance-settings-section-BBlJtEm5.js → appearance-settings-section-DJEoECoJ.js} +1 -1
  15. package/dist/web/assets/architecture-PBZL5I3N-D55g5j-p.js +1 -0
  16. package/dist/web/assets/arrow-right-BqNSIscF.js +1 -0
  17. package/dist/web/assets/{astro-D0b8ssLD.js → astro-Cb_3-S86.js} +1 -1
  18. package/dist/web/assets/{audio-preview-DPMXOZ55.js → audio-preview-CF4tTFv_.js} +1 -1
  19. package/dist/web/assets/{blade-DOIpINLw.js → blade-1QMj5JxI.js} +1 -1
  20. package/dist/web/assets/{bsl-CJ7_JlQ8.js → bsl-D0bT3Wjp.js} +1 -1
  21. package/dist/web/assets/{button-zgoXa9r7.js → button-DhnNoqpV.js} +1 -1
  22. package/dist/web/assets/{cairo-5CpV2T1P.js → cairo-DTuGb2w7.js} +1 -1
  23. package/dist/web/assets/{chat-tab-Dn45anqr.js → chat-tab-fD2vWwj2.js} +8 -8
  24. package/dist/web/assets/circle-question-mark-DUaySkoB.js +1 -0
  25. package/dist/web/assets/{cobol-BreMVrtc.js → cobol-DSx_Nb7T.js} +1 -1
  26. package/dist/web/assets/{code-editor-CKASeDbu.js → code-editor-CyFLXCsD.js} +2 -2
  27. package/dist/web/assets/codex-daily-guard-Cg19EWxk.js +1 -0
  28. package/dist/web/assets/{coffee-D7DoKh5b.js → coffee-DBcQ7DKB.js} +1 -1
  29. package/dist/web/assets/{conflict-editor-C-Nv8YYj.js → conflict-editor-DSjo2FRy.js} +1 -1
  30. package/dist/web/assets/{context-menu-DM9CgxGh.js → context-menu-DchAkdnL.js} +1 -1
  31. package/dist/web/assets/{cpp-BnWeWAoE.js → cpp-Bj1azGr-.js} +1 -1
  32. package/dist/web/assets/{crystal-D2pJbFUn.js → crystal-CCgkDI0i.js} +1 -1
  33. package/dist/web/assets/{csv-preview-ou3KFzIH.js → csv-preview-BIE3Wpww.js} +1 -1
  34. package/dist/web/assets/{data-grid-overlay-editor-dnWnblYo.js → data-grid-overlay-editor-C2NAQ-88.js} +1 -1
  35. package/dist/web/assets/{database-viewer-Ckqg_-SS.js → database-viewer-CMvIORcM.js} +1 -1
  36. package/dist/web/assets/{diff-viewer-CMzFnBCD.js → diff-viewer-BQQ6fUr6.js} +1 -1
  37. package/dist/web/assets/{docx-preview-B7Aospmh.js → docx-preview-DcCh59Oe.js} +1 -1
  38. package/dist/web/assets/{edge-aqGMtbY3.js → edge-ClBfeO7z.js} +1 -1
  39. package/dist/web/assets/{edit-diff-preview-BvgPvuhH.js → edit-diff-preview-CRjufuw_.js} +1 -1
  40. package/dist/web/assets/{elixir-CsYMBLc5.js → elixir-ir__-3kt.js} +1 -1
  41. package/dist/web/assets/{elm-BU8C2gFp.js → elm-CUv-xMuU.js} +1 -1
  42. package/dist/web/assets/{erb-Z_E49ab8.js → erb-DcRwHyUq.js} +1 -1
  43. package/dist/web/assets/{erlang-BRqOjXH9.js → erlang-DW-GAdmv.js} +1 -1
  44. package/dist/web/assets/{esm-BHyWbWKE.js → esm-DBm5LSCw.js} +1 -1
  45. package/dist/web/assets/{explorer-body-CVx4qaIF.js → explorer-body-DRo2JHP9.js} +2 -2
  46. package/dist/web/assets/explorer-window-content-7mnRpSqn.js +1 -0
  47. package/dist/web/assets/{extension-manager-section-CtcpVMWs.js → extension-manager-section-CEfr7-Kv.js} +1 -1
  48. package/dist/web/assets/{extension-webview-DZ_QRZSM.js → extension-webview-D7HqqdTv.js} +1 -1
  49. package/dist/web/assets/{files-settings-section-D7v-6nTa.js → files-settings-section-h6a-WpSO.js} +1 -1
  50. package/dist/web/assets/{fortran-fixed-form-CWbxmDGR.js → fortran-fixed-form-DrQbMSkt.js} +1 -1
  51. package/dist/web/assets/{fsharp-DKMYbq6I.js → fsharp-DvDj84Ys.js} +1 -1
  52. package/dist/web/assets/{gdresource-B3yFau4V.js → gdresource-CPgY7R2s.js} +1 -1
  53. package/dist/web/assets/{general-settings-section-BW_h8pdA.js → general-settings-section-Bt3KNcyM.js} +1 -1
  54. package/dist/web/assets/{git-commit-BW0p3Ekk.js → git-commit-NJ9iGbTd.js} +1 -1
  55. package/dist/web/assets/{git-log-panel-BQZkJDu0.js → git-log-panel-H-Bg9p7m.js} +1 -1
  56. package/dist/web/assets/{git-rebase-DrvmQCS7.js → git-rebase-DBSy9OKE.js} +1 -1
  57. package/dist/web/assets/gitGraph-HDMCJU4V-At-P8hlA.js +1 -0
  58. package/dist/web/assets/{glide-data-grid-JKEslqGe.js → glide-data-grid-D3Xc_WGh.js} +4 -4
  59. package/dist/web/assets/{glimmer-js-BY1XApJJ.js → glimmer-js-EGWSSdwJ.js} +1 -1
  60. package/dist/web/assets/{glimmer-ts-DPZtxF8N.js → glimmer-ts-BpfXRYRV.js} +1 -1
  61. package/dist/web/assets/{glsl-DZ8G_Hvf.js → glsl-BtWQ4j8X.js} +1 -1
  62. package/dist/web/assets/{graphql-Ck06uCZy.js → graphql-DHR5AO2c.js} +1 -1
  63. package/dist/web/assets/{group-chat-tab-CTAhtVCr.js → group-chat-tab-BkLt7J_s.js} +1 -1
  64. package/dist/web/assets/{hack-pLogDwAs.js → hack-A3iOItmC.js} +1 -1
  65. package/dist/web/assets/{haml-CBqeCQ2A.js → haml-DXA8NXfZ.js} +1 -1
  66. package/dist/web/assets/{handlebars-B66JmVtp.js → handlebars-BdIFK4pP.js} +1 -1
  67. package/dist/web/assets/{html-Dk4wmfwC.js → html-BTA4eRkb.js} +1 -1
  68. package/dist/web/assets/{html-derivative-CJWqfN51.js → html-derivative-Cd_vDV4L.js} +1 -1
  69. package/dist/web/assets/{http-CexhotTh.js → http-CMY5fp9k.js} +1 -1
  70. package/dist/web/assets/{hurl-BScKFk3Z.js → hurl-DJZLRi6K.js} +1 -1
  71. package/dist/web/assets/{hxml-DAle7vtu.js → hxml-C2EdtM37.js} +1 -1
  72. package/dist/web/assets/{image-preview-V5SglTWk.js → image-preview-D_6-FhZP.js} +1 -1
  73. package/dist/web/assets/{index-DVNJ2W5R.js → index-BV_sFdHY.js} +6 -6
  74. package/dist/web/assets/index-Di9nVG3y.css +2 -0
  75. package/dist/web/assets/info-3K5VOQVL-btSsuixb.js +1 -0
  76. package/dist/web/assets/{jinja-yHpyD80t.js → jinja-DWU92jHm.js} +1 -1
  77. package/dist/web/assets/{jira-watcher-section-VyzVbAnw.js → jira-watcher-section-BhQzWJ3r.js} +1 -1
  78. package/dist/web/assets/{jison-BY6WLJVu.js → jison-Bt3f5-S6.js} +1 -1
  79. package/dist/web/assets/{julia-Dd_iYQDT.js → julia-BS-e0jQg.js} +1 -1
  80. package/dist/web/assets/{just-BTuUKpxF.js → just-OU89Ot3I.js} +1 -1
  81. package/dist/web/assets/keybindings-store-alreySno.js +1 -0
  82. package/dist/web/assets/{keyboard-shortcuts-section-DOJi75mV.js → keyboard-shortcuts-section-B_D0FamP.js} +1 -1
  83. package/dist/web/assets/{latex-Dt3OUlMZ.js → latex-Bt5mTs31.js} +1 -1
  84. package/dist/web/assets/{liquid-BxPJU2ix.js → liquid-C03IGCJ6.js} +1 -1
  85. package/dist/web/assets/{lua-DEGIvn7d.js → lua-Dl4zPu0P.js} +1 -1
  86. package/dist/web/assets/{markdown-renderer-DtQIHtLs.js → markdown-renderer-CG_nGh7k.js} +3 -3
  87. package/dist/web/assets/markdown-renderer-CgbqvSuc.js +1 -0
  88. package/dist/web/assets/{marko-BDxwBJur.js → marko-BEnkIoHY.js} +1 -1
  89. package/dist/web/assets/{mdc-B8aXPTg7.js → mdc-DGglct19.js} +1 -1
  90. package/dist/web/assets/{media-url-TYMlO0M5.js → media-url-LiPp2UsV.js} +1 -1
  91. package/dist/web/assets/{mobile-bottom-sheet-Ch1e_JBq.js → mobile-bottom-sheet-BizNfPAu.js} +1 -1
  92. package/dist/web/assets/mobile-explorer-sheet-DAZTzi1k.js +1 -0
  93. package/dist/web/assets/{nextflow-DBVZnnT_.js → nextflow-DKFYidyC.js} +1 -1
  94. package/dist/web/assets/{nginx-Crpyd-Do.js → nginx-Bhq0tzlh.js} +1 -1
  95. package/dist/web/assets/{nim-BSqTBYDj.js → nim-CSuBzart.js} +1 -1
  96. package/dist/web/assets/notification-store-HCg5Shw9.js +1 -0
  97. package/dist/web/assets/{notifications-settings-section-CeRvkXOM.js → notifications-settings-section-BAs_p_ai.js} +1 -1
  98. package/dist/web/assets/{number-overlay-editor-DldrUNs4.js → number-overlay-editor-CYHlP43e.js} +1 -1
  99. package/dist/web/assets/{overview-panel-DA0QB1-5.js → overview-panel-xn2BYvn6.js} +1 -1
  100. package/dist/web/assets/packet-RMMSAZCW-B20_sIFd.js +1 -0
  101. package/dist/web/assets/{panel-store-D42k25jy.js → panel-store-XhAruR6D.js} +1 -1
  102. package/dist/web/assets/{pdf-preview-Cq33D5ej.js → pdf-preview-BJjqU3AX.js} +1 -1
  103. package/dist/web/assets/{perl-BU0kbB-K.js → perl-uDVR7Ceh.js} +1 -1
  104. package/dist/web/assets/{php-D9n1ikHN.js → php-Bby8J3zk.js} +1 -1
  105. package/dist/web/assets/pie-UPGHQEXC-nzfJdXCC.js +1 -0
  106. package/dist/web/assets/{postgres-viewer-C__Z0C0s.js → postgres-viewer-CJbHLcGE.js} +3 -3
  107. package/dist/web/assets/{ppmbot-settings-section-Cma4VU7p.js → ppmbot-settings-section-5U0a58oj.js} +1 -1
  108. package/dist/web/assets/{process-table-DH_HXtGc.js → process-table-CqGL0Bcj.js} +1 -1
  109. package/dist/web/assets/{project-store-C83MMnlt.js → project-store-Dy3A3LJT.js} +1 -1
  110. package/dist/web/assets/{proxy-settings-section-xrTsFlTF.js → proxy-settings-section-B1LDpGSc.js} +1 -1
  111. package/dist/web/assets/{pug-BOpaczDr.js → pug-EapfojTW.js} +1 -1
  112. package/dist/web/assets/{qml-B-cQXhrg.js → qml-DiR6J5_C.js} +1 -1
  113. package/dist/web/assets/{query-audit-section-Drk97gb8.js → query-audit-section-DfCvY94_.js} +1 -1
  114. package/dist/web/assets/radar-KQ55EAFF-CS4sHKD5.js +1 -0
  115. package/dist/web/assets/{razor-DFB0pNCh.js → razor-B2QvlGNY.js} +1 -1
  116. package/dist/web/assets/remote-desktop-mobile-sheet-_LH4uCcA.js +2 -0
  117. package/dist/web/assets/{remote-desktop-mobile-view-Gk8UCVIx.js → remote-desktop-mobile-view-C5TUPDh_.js} +1 -1
  118. package/dist/web/assets/{remote-desktop-readiness-gate-6reSZvad.js → remote-desktop-readiness-gate-DuT4A893.js} +1 -1
  119. package/dist/web/assets/{remote-desktop-window-content-BW2KqONI.js → remote-desktop-window-content-B4V-1aJn.js} +1 -1
  120. package/dist/web/assets/{rst-DAXedsgm.js → rst-D2eJ0kH4.js} +1 -1
  121. package/dist/web/assets/{ruby-BCO4polC.js → ruby-DzpnBpz-.js} +1 -1
  122. package/dist/web/assets/{run-in-terminal-DoTOtgQS.js → run-in-terminal-DisO5HC-.js} +1 -1
  123. package/dist/web/assets/{sas-DfB5dcFC.js → sas-WDAKsX0U.js} +1 -1
  124. package/dist/web/assets/{schedules-settings-section-DcKEz-S7.js → schedules-settings-section-C2SjwWFB.js} +1 -1
  125. package/dist/web/assets/{scss-BknIVgn7.js → scss-Ci6PdscL.js} +1 -1
  126. package/dist/web/assets/{send-to-chat-Kl-0dNwN.js → send-to-chat-DDFdKWNf.js} +1 -1
  127. package/dist/web/assets/{separator-DvCsdlws.js → separator-CyisF27O.js} +1 -1
  128. package/dist/web/assets/settings-body-CdFauCAU.js +2 -0
  129. package/dist/web/assets/{settings-store-_s4xFcFq.js → settings-store-BkNrLdjk.js} +2 -2
  130. package/dist/web/assets/settings-tab-DGUlmMbc.js +1 -0
  131. package/dist/web/assets/settings-window-content-CIH5sihe.js +1 -0
  132. package/dist/web/assets/{shaderlab-CPu31TpY.js → shaderlab-Cv3mWofL.js} +1 -1
  133. package/dist/web/assets/{shellsession-CFX4c_TM.js → shellsession-D1KVtQa1.js} +1 -1
  134. package/dist/web/assets/{soy-rz9hilgm.js → soy-BGLBwFZT.js} +1 -1
  135. package/dist/web/assets/{sparql-Bo8ZDeqE.js → sparql-TvnQmFDh.js} +1 -1
  136. package/dist/web/assets/{sql-query-editor-BoYxc5vd.js → sql-query-editor-DaQqRBNA.js} +1 -1
  137. package/dist/web/assets/{sqlite-viewer-O5lF3MMj.js → sqlite-viewer-Bpz7QnBk.js} +1 -1
  138. package/dist/web/assets/{stata-B5J-QMyE.js → stata-Gi-BKyEv.js} +1 -1
  139. package/dist/web/assets/{streaming-store-QQvg1cS-.js → streaming-store-DAbnOfLu.js} +1 -1
  140. package/dist/web/assets/{surrealql-Caw1ADnG.js → surrealql-BVXs6tkz.js} +1 -1
  141. package/dist/web/assets/{svelte-D3oMVcxz.js → svelte-BlnFpLWV.js} +1 -1
  142. package/dist/web/assets/{system-monitor-body-C2mVJ7PV.js → system-monitor-body-BBJOWFCa.js} +2 -2
  143. package/dist/web/assets/system-monitor-tab-D7RIwhmg.js +1 -0
  144. package/dist/web/assets/{system-monitor-window-content-BaKoFDEz.js → system-monitor-window-content-CH0UmMP9.js} +1 -1
  145. package/dist/web/assets/{tab-host-window-content-C7F6D8hJ.js → tab-host-window-content-C_yU5MH_.js} +1 -1
  146. package/dist/web/assets/{tab-store-B2ip0-Mv.js → tab-store-B7BksLr-.js} +1 -1
  147. package/dist/web/assets/team-member-sheet-CopMME1E.js +2 -0
  148. package/dist/web/assets/{team-member-window-content-BwOTsc9r.js → team-member-window-content-CUDQ6oX7.js} +1 -1
  149. package/dist/web/assets/{templ-BAdNyIOL.js → templ-YJYH5r1A.js} +1 -1
  150. package/dist/web/assets/{terminal-tab-DlZW3MCn.js → terminal-tab-BjI95uG5.js} +1 -1
  151. package/dist/web/assets/{tex-IQ8mELOR.js → tex-IVZLDIeh.js} +1 -1
  152. package/dist/web/assets/{tool-cards-yiwO861p.js → tool-cards-I71v1w5Z.js} +6 -6
  153. package/dist/web/assets/treemap-KZPCXAKY-BBrhTPZk.js +1 -0
  154. package/dist/web/assets/{ts-tags-D1DDO2jl.js → ts-tags-DBd321I-.js} +1 -1
  155. package/dist/web/assets/{twig-C8Fd5RvV.js → twig-DQENQjEn.js} +1 -1
  156. package/dist/web/assets/{use-blob-url-D358Rpyp.js → use-blob-url-CGChX4vi.js} +1 -1
  157. package/dist/web/assets/{use-inline-blame-D2pZjDoA.js → use-inline-blame-CRUwd6FF.js} +1 -1
  158. package/dist/web/assets/{use-monaco-theme-DTPfPPvF.js → use-monaco-theme-qzMbRfCW.js} +1 -1
  159. package/dist/web/assets/{use-open-team-member-DGEx9xB0.js → use-open-team-member-kmNnlzDD.js} +1 -1
  160. package/dist/web/assets/{use-remote-desktop-display-choice-BnVT4dhX.js → use-remote-desktop-display-choice-0zDkCmsK.js} +1 -1
  161. package/dist/web/assets/{use-websocket-DQg9BQcq.js → use-websocket-D8OGBwH8.js} +1 -1
  162. package/dist/web/assets/{vendor-mermaid-CfY1-PkA.js → vendor-mermaid-BoRFiriK.js} +1 -1
  163. package/dist/web/assets/{video-preview-Dc4YbBqm.js → video-preview-Mlgl7hGr.js} +1 -1
  164. package/dist/web/assets/{vue-EvccXlkP.js → vue-Do2JXEwi.js} +1 -1
  165. package/dist/web/assets/{vue-html-Dg0xUJCh.js → vue-html-Bse0CwSC.js} +1 -1
  166. package/dist/web/assets/{vue-vine-BdrMg72k.js → vue-vine-C8JSXu5Z.js} +1 -1
  167. package/dist/web/assets/{window-pip-registry-BWxaVLj5.js → window-pip-registry-C2dcY0pE.js} +1 -1
  168. package/dist/web/assets/{window-store-CfxP5yor.js → window-store-2z4t5YAt.js} +1 -1
  169. package/dist/web/assets/ws-auth-DI1E6Fe7.js +1 -0
  170. package/dist/web/assets/{xml-MmDclzxK.js → xml-OX6YmzGK.js} +1 -1
  171. package/dist/web/assets/{xsl-DQEFs6Dd.js → xsl-RQUQgcgy.js} +1 -1
  172. package/dist/web/index.html +34 -34
  173. package/dist/web/sw.js +1 -1
  174. package/package.json +1 -1
  175. package/src/providers/codex-app-server/codex-event-mapper.ts +28 -1
  176. package/src/providers/codex-app-server/codex-provider.ts +38 -5
  177. package/src/providers/codex-app-server/codex-usage-parser.ts +3 -1
  178. package/src/server/routes/codex-accounts.ts +9 -5
  179. package/src/services/codex-account-login.ts +33 -5
  180. package/src/services/codex-account-portability.ts +3 -2
  181. package/src/services/codex-account.service.ts +48 -7
  182. package/src/services/codex-login-callback.ts +18 -0
  183. package/src/services/db.service.ts +14 -0
  184. package/src/shared/codex-daily-guard.ts +27 -0
  185. package/src/shared/codex-plan-label.ts +17 -0
  186. package/src/web/components/chat/codex-usage-panel.tsx +22 -2
  187. package/src/web/components/settings/accounts/account-card.tsx +43 -2
  188. package/src/web/components/settings/accounts/codex-accounts-section.tsx +43 -2
  189. package/src/web/components/settings/accounts/use-codex-accounts.ts +14 -2
  190. package/dist/web/assets/accounts-settings-section-CRXY4Bsc.js +0 -1
  191. package/dist/web/assets/ai-settings-section-446NZWhI.js +0 -1
  192. package/dist/web/assets/api-client-CYZ79uUS.js +0 -1
  193. package/dist/web/assets/architecture-PBZL5I3N-DfR8k8Bc.js +0 -1
  194. package/dist/web/assets/circle-question-mark-qcWYO1P_.js +0 -1
  195. package/dist/web/assets/explorer-window-content-CqKVMkgW.js +0 -1
  196. package/dist/web/assets/gitGraph-HDMCJU4V-CPd78aaT.js +0 -1
  197. package/dist/web/assets/index-B9Wbjl0o.css +0 -2
  198. package/dist/web/assets/info-3K5VOQVL-BciNds6R.js +0 -1
  199. package/dist/web/assets/keybindings-store-B5dEz0n1.js +0 -1
  200. package/dist/web/assets/markdown-renderer-BGPo364Y.js +0 -1
  201. package/dist/web/assets/mobile-explorer-sheet-C1q_DhrI.js +0 -1
  202. package/dist/web/assets/notification-store-DvUtkAXs.js +0 -1
  203. package/dist/web/assets/packet-RMMSAZCW-ClD3l2Bs.js +0 -1
  204. package/dist/web/assets/pie-UPGHQEXC-PU6kD0rW.js +0 -1
  205. package/dist/web/assets/radar-KQ55EAFF-4LzjL0Zt.js +0 -1
  206. package/dist/web/assets/remote-desktop-mobile-sheet-6JdUr0Bj.js +0 -2
  207. package/dist/web/assets/settings-body-CcKls51a.js +0 -2
  208. package/dist/web/assets/settings-tab-ChAk8nh2.js +0 -1
  209. package/dist/web/assets/settings-window-content-sA1K0cPW.js +0 -1
  210. package/dist/web/assets/system-monitor-tab-tXkg3jpV.js +0 -1
  211. package/dist/web/assets/team-member-sheet-BA70_jmM.js +0 -2
  212. package/dist/web/assets/treemap-KZPCXAKY-DiumLNMg.js +0 -1
  213. package/dist/web/assets/use-accounts-data-B9t4BQaI.js +0 -1
  214. package/dist/web/assets/ws-auth-FRzMmfQx.js +0 -1
  215. /package/dist/web/assets/{abap-D-o-bvtI.js → abap-BIHt2d9F.js} +0 -0
  216. /package/dist/web/assets/{actionscript-3-D2tIzAm8.js → actionscript-3-rbCNRHFj.js} +0 -0
  217. /package/dist/web/assets/{ada-DxatBcxS.js → ada-CN94LQTJ.js} +0 -0
  218. /package/dist/web/assets/{andromeeda-D0LK9YJ3.js → andromeeda-BsmcoXuQ.js} +0 -0
  219. /package/dist/web/assets/{apache-B7uMPNiW.js → apache-pRQmqcVZ.js} +0 -0
  220. /package/dist/web/assets/{apex-B7GiXrAr.js → apex-CNEumC1X.js} +0 -0
  221. /package/dist/web/assets/{api-client-DwXlVfXP.js → api-client-DKvkxuDr.js} +0 -0
  222. /package/dist/web/assets/{applescript-D_SIFkKe.js → applescript-DjEVsS-3.js} +0 -0
  223. /package/dist/web/assets/{apply-theme-BVXAUYoN.js → apply-theme-Abd1TNqE.js} +0 -0
  224. /package/dist/web/assets/{ara-C3iECgdg.js → ara-DbhZRlTL.js} +0 -0
  225. /package/dist/web/assets/{asciidoc-gc8z_MMY.js → asciidoc-BsfbAXIK.js} +0 -0
  226. /package/dist/web/assets/{asm-27qeoPOI.js → asm-Vw5NMXjI.js} +0 -0
  227. /package/dist/web/assets/{aurora-x-C5J9fWe1.js → aurora-x-CoahU6sR.js} +0 -0
  228. /package/dist/web/assets/{awk-B7GBzF92.js → awk-ChKjCxHz.js} +0 -0
  229. /package/dist/web/assets/{ayu-dark-XlnQhuLL.js → ayu-dark-By9RKxTf.js} +0 -0
  230. /package/dist/web/assets/{ayu-light-DKLLilkU.js → ayu-light-CEsgeLON.js} +0 -0
  231. /package/dist/web/assets/{ayu-mirage-Dv-XOprJ.js → ayu-mirage-CYrtwSLW.js} +0 -0
  232. /package/dist/web/assets/{ballerina-DACRT-sT.js → ballerina-CCSVz22W.js} +0 -0
  233. /package/dist/web/assets/{bat-BlQCq2XE.js → bat-DU4--CMj.js} +0 -0
  234. /package/dist/web/assets/{beancount-DYDztRI0.js → beancount-DF_tlRlF.js} +0 -0
  235. /package/dist/web/assets/{berry-BE5YKqvx.js → berry-CZTnatvO.js} +0 -0
  236. /package/dist/web/assets/{bibtex-CAm7mgEm.js → bibtex-BSpXy8jk.js} +0 -0
  237. /package/dist/web/assets/{bicep-BKgAbfVa.js → bicep-yv1Ydq5Z.js} +0 -0
  238. /package/dist/web/assets/{bird2-yrBNbW1G.js → bird2-Db7Z7SMN.js} +0 -0
  239. /package/dist/web/assets/{c-txZFr4RM.js → c-C3ivhwA4.js} +0 -0
  240. /package/dist/web/assets/{c3-D_DrzBUd.js → c3-N4mKyst9.js} +0 -0
  241. /package/dist/web/assets/{cadence-CUFCEgG9.js → cadence-BYK8tFFk.js} +0 -0
  242. /package/dist/web/assets/{can-open-in-ppm-_yqa69dV.js → can-open-in-ppm-DU5MH6XF.js} +0 -0
  243. /package/dist/web/assets/{catppuccin-frappe-Dn32MuhA.js → catppuccin-frappe-BK9Tv2XG.js} +0 -0
  244. /package/dist/web/assets/{catppuccin-latte-Dewo7yDf.js → catppuccin-latte-De4mVCp3.js} +0 -0
  245. /package/dist/web/assets/{catppuccin-macchiato-D8WOWZeo.js → catppuccin-macchiato-Bxt_D7cs.js} +0 -0
  246. /package/dist/web/assets/{catppuccin-mocha-b0md48XM.js → catppuccin-mocha-Dz2o8gN7.js} +0 -0
  247. /package/dist/web/assets/{circle-OKk7s0DX.js → circle-BpGTLAas.js} +0 -0
  248. /package/dist/web/assets/{clarity-Ct3UqLBj.js → clarity-BJdh0Pw-.js} +0 -0
  249. /package/dist/web/assets/{clock-BmPiGrSF.js → clock-Dqq0H9yH.js} +0 -0
  250. /package/dist/web/assets/{clojure-CwP5aPEo.js → clojure-DG-FYGzn.js} +0 -0
  251. /package/dist/web/assets/{cmake-D5RF49e5.js → cmake-D1imEXan.js} +0 -0
  252. /package/dist/web/assets/{code-CRiIHSiv.js → code-CX6640Tv.js} +0 -0
  253. /package/dist/web/assets/{codeowners-Cl5897L_.js → codeowners-YpylTFB5.js} +0 -0
  254. /package/dist/web/assets/{codeql-BKh1RCg0.js → codeql-ajDEPgqi.js} +0 -0
  255. /package/dist/web/assets/{common-lisp-BhHuD6t0.js → common-lisp-C2sCrd-m.js} +0 -0
  256. /package/dist/web/assets/{copy-CXuIH4VC.js → copy-Bt_1tjoJ.js} +0 -0
  257. /package/dist/web/assets/{coq-Dco3qwD8.js → coq-BqybyDc9.js} +0 -0
  258. /package/dist/web/assets/{csharp-Dpjw9ZA9.js → csharp-nKCEiujy.js} +0 -0
  259. /package/dist/web/assets/{css-CPe4cabH.js → css-CJSp2CsD.js} +0 -0
  260. /package/dist/web/assets/{csv-BAcTN8Kt.js → csv-Nh9vQwQm.js} +0 -0
  261. /package/dist/web/assets/{csv-parser-DbxGKdMG.js → csv-parser-iow1WWML.js} +0 -0
  262. /package/dist/web/assets/{cue-Cr6y60TA.js → cue-Ch79RPsU.js} +0 -0
  263. /package/dist/web/assets/{cypher-DWtqXXFP.js → cypher-CgiOQ6hs.js} +0 -0
  264. /package/dist/web/assets/{d-BASiTZk4.js → d-CmBcySpH.js} +0 -0
  265. /package/dist/web/assets/{dark-plus-56kmnrcl.js → dark-plus-COLEX2ui.js} +0 -0
  266. /package/dist/web/assets/{dart-C5mZnjoE.js → dart-BTAArMcJ.js} +0 -0
  267. /package/dist/web/assets/{data-grid-types-BfGeMDy0.js → data-grid-types-tNj9zuRV.js} +0 -0
  268. /package/dist/web/assets/{database-Dz0W7OH7.js → database-9_p74TtY.js} +0 -0
  269. /package/dist/web/assets/{dax-B4I2e7d8.js → dax-BbZzRY9i.js} +0 -0
  270. /package/dist/web/assets/{desktop-DekGg0BT.js → desktop-OmQvU3-J.js} +0 -0
  271. /package/dist/web/assets/{diff-CWnJBd73.js → diff-BEPnb9Fb.js} +0 -0
  272. /package/dist/web/assets/{dist-BKOM_AoT.js → dist-BDpuZ376.js} +0 -0
  273. /package/dist/web/assets/{dist-CWMPvPem.js → dist-BiqPfYiP.js} +0 -0
  274. /package/dist/web/assets/{docker-DevchDxK.js → docker-Cg17HgTD.js} +0 -0
  275. /package/dist/web/assets/{dotenv-DCvtdaGJ.js → dotenv-DEMIaY7V.js} +0 -0
  276. /package/dist/web/assets/{download-D70Q4Ba6.js → download-CEPFebri.js} +0 -0
  277. /package/dist/web/assets/{dracula-8U6Vkk3l.js → dracula-BkCFq8SO.js} +0 -0
  278. /package/dist/web/assets/{dracula-soft-Bfeew5Wg.js → dracula-soft-Cjp6-ltF.js} +0 -0
  279. /package/dist/web/assets/{dream-maker-DDTJVuoy.js → dream-maker-Ce7Y_UKj.js} +0 -0
  280. /package/dist/web/assets/{emacs-lisp-CEHJqI4m.js → emacs-lisp-BjpyfTbN.js} +0 -0
  281. /package/dist/web/assets/{everforest-dark-CHHLt7cq.js → everforest-dark-9r4okw1s.js} +0 -0
  282. /package/dist/web/assets/{everforest-light-TcTbK1sM.js → everforest-light-GCQTZ3Ju.js} +0 -0
  283. /package/dist/web/assets/{eye-dfZn7evX.js → eye-BQaWPI4P.js} +0 -0
  284. /package/dist/web/assets/{eye-off-CmtfyRUD.js → eye-off-BlB3QV90.js} +0 -0
  285. /package/dist/web/assets/{fennel-Bh4vsA1A.js → fennel-ITjY5Z6u.js} +0 -0
  286. /package/dist/web/assets/{file-exclamation-point-D5K2aaLi.js → file-exclamation-point-BDmSZbxs.js} +0 -0
  287. /package/dist/web/assets/{fish-D0T0fILG.js → fish-DP2uEzyg.js} +0 -0
  288. /package/dist/web/assets/{flask-conical-Dix4qNDj.js → flask-conical-Cj-J6cxs.js} +0 -0
  289. /package/dist/web/assets/{fluent-CgXDXdyy.js → fluent-irzaP1f6.js} +0 -0
  290. /package/dist/web/assets/{folder-symlink-BavsIzoj.js → folder-symlink-BSYalAHC.js} +0 -0
  291. /package/dist/web/assets/{format-bytes-Bc6SqF7M.js → format-bytes-B9Dbme9a.js} +0 -0
  292. /package/dist/web/assets/{fortran-free-form-CUg3Xhz4.js → fortran-free-form-BAPoainr.js} +0 -0
  293. /package/dist/web/assets/{gdscript-Cx056p_k.js → gdscript-DJ098V1z.js} +0 -0
  294. /package/dist/web/assets/{gdshader-Dj1qP4I5.js → gdshader-DS2Jfy-K.js} +0 -0
  295. /package/dist/web/assets/{genie-SBt15wn7.js → genie-CqfOaFFx.js} +0 -0
  296. /package/dist/web/assets/{gherkin-bTJiHIrB.js → gherkin-CoZ2ucDH.js} +0 -0
  297. /package/dist/web/assets/{github-dark-BOPhyugs.js → github-dark-BNLgnSO9.js} +0 -0
  298. /package/dist/web/assets/{github-dark-default-Cktqe6NF.js → github-dark-default-CYlSggwi.js} +0 -0
  299. /package/dist/web/assets/{github-dark-dimmed-CeWfII_B.js → github-dark-dimmed-DumUysDk.js} +0 -0
  300. /package/dist/web/assets/{github-dark-high-contrast-CTx8LpdV.js → github-dark-high-contrast-TKrcDJ2I.js} +0 -0
  301. /package/dist/web/assets/{github-light-DVsO5Un1.js → github-light-DVENFHLJ.js} +0 -0
  302. /package/dist/web/assets/{github-light-default-BiyPxicr.js → github-light-default-DtN8AGcE.js} +0 -0
  303. /package/dist/web/assets/{github-light-high-contrast-BPlnke0a.js → github-light-high-contrast-NSyF37x4.js} +0 -0
  304. /package/dist/web/assets/{gleam-CWSxvD0C.js → gleam-hp4NMSb5.js} +0 -0
  305. /package/dist/web/assets/{gn-D7NUVJuv.js → gn-Dptw2PEu.js} +0 -0
  306. /package/dist/web/assets/{gnuplot-c5uXmJKc.js → gnuplot-9juRzjwv.js} +0 -0
  307. /package/dist/web/assets/{go-CRsHi4Cw.js → go-D-QLCda0.js} +0 -0
  308. /package/dist/web/assets/{groovy-DpV0RA5r.js → groovy-DHKNy6Eh.js} +0 -0
  309. /package/dist/web/assets/{gruvbox-dark-hard-DD9fguUN.js → gruvbox-dark-hard-BFD6aQdB.js} +0 -0
  310. /package/dist/web/assets/{gruvbox-dark-medium-BvcwpYJ-.js → gruvbox-dark-medium-D5llYBNp.js} +0 -0
  311. /package/dist/web/assets/{gruvbox-dark-soft-48dCxX9M.js → gruvbox-dark-soft-DOztQmNR.js} +0 -0
  312. /package/dist/web/assets/{gruvbox-light-hard-CjJ994Ip.js → gruvbox-light-hard-BFGD-8Pd.js} +0 -0
  313. /package/dist/web/assets/{gruvbox-light-medium-DQJQZ_rV.js → gruvbox-light-medium-DzoyXgT7.js} +0 -0
  314. /package/dist/web/assets/{gruvbox-light-soft-AqsC9mKw.js → gruvbox-light-soft-B1Ix2zLN.js} +0 -0
  315. /package/dist/web/assets/{hand-CIPALZsE.js → hand-BkDyLfcc.js} +0 -0
  316. /package/dist/web/assets/{haskell-B5V7yvmh.js → haskell-BnrJ0k7G.js} +0 -0
  317. /package/dist/web/assets/{haxe-LWTKfPKr.js → haxe-DwShHT_-.js} +0 -0
  318. /package/dist/web/assets/{hcl-QmNZdAtI.js → hcl-VOjEibVB.js} +0 -0
  319. /package/dist/web/assets/{hjson-CboJsAzK.js → hjson-BHEn7pNn.js} +0 -0
  320. /package/dist/web/assets/{hlsl-Bd-DO_WL.js → hlsl-CrvxlGii.js} +0 -0
  321. /package/dist/web/assets/{horizon-CU8Bi_ss.js → horizon-D3T-P0u6.js} +0 -0
  322. /package/dist/web/assets/{horizon-bright-iSQ3_3jP.js → horizon-bright-vifGsEdk.js} +0 -0
  323. /package/dist/web/assets/{houston-CTXv3Puz.js → houston-IrOgT7r4.js} +0 -0
  324. /package/dist/web/assets/{hy-Cd4hTidD.js → hy-5eSgTJ8G.js} +0 -0
  325. /package/dist/web/assets/{image-gallery-J8h8IY0c.js → image-gallery-COea0nSk.js} +0 -0
  326. /package/dist/web/assets/{imba-BipCHEY2.js → imba-Dp0I4DVl.js} +0 -0
  327. /package/dist/web/assets/{ini-Dd1KkMrB.js → ini-CHDKad9O.js} +0 -0
  328. /package/dist/web/assets/{java-rGr0OQD8.js → java-YLv7IDJ1.js} +0 -0
  329. /package/dist/web/assets/{javascript-DHhCH2TN.js → javascript-jr4kIdgl.js} +0 -0
  330. /package/dist/web/assets/{json-CMMLBCUf.js → json-EJWSOZfp.js} +0 -0
  331. /package/dist/web/assets/{json5-mPOwTOsB.js → json5-D6f_uNwJ.js} +0 -0
  332. /package/dist/web/assets/{jsonc-Bie0E6D3.js → jsonc-DrHCdmos.js} +0 -0
  333. /package/dist/web/assets/{jsonl-CpqHmtC1.js → jsonl-Cwc3cXEL.js} +0 -0
  334. /package/dist/web/assets/{jsonnet-D21Ms51e.js → jsonnet-BwZfaIFT.js} +0 -0
  335. /package/dist/web/assets/{jssm-BXnl1nur.js → jssm-BpEmg_MT.js} +0 -0
  336. /package/dist/web/assets/{jsx-Chnii_vB.js → jsx-DBGPwcr4.js} +0 -0
  337. /package/dist/web/assets/{kanagawa-dragon-DhxR0UjL.js → kanagawa-dragon-DRfVaGIX.js} +0 -0
  338. /package/dist/web/assets/{kanagawa-lotus-fupRg5wp.js → kanagawa-lotus-CjOlny0Q.js} +0 -0
  339. /package/dist/web/assets/{kanagawa-wave-DSWbRS9M.js → kanagawa-wave-DvdM88a4.js} +0 -0
  340. /package/dist/web/assets/{kdl-DirGHqUy.js → kdl-DSo3PvM0.js} +0 -0
  341. /package/dist/web/assets/{key-round-oIll4vo-.js → key-round-Cv4z7_KG.js} +0 -0
  342. /package/dist/web/assets/{keyboard-BLwfiRkT.js → keyboard-HG0BUtuN.js} +0 -0
  343. /package/dist/web/assets/{kotlin-DkhUVMDC.js → kotlin-BV8TwCGu.js} +0 -0
  344. /package/dist/web/assets/{kusto-DU7OpovF.js → kusto-DCo1Fdmm.js} +0 -0
  345. /package/dist/web/assets/{laserwave-iLKb1ZCT.js → laserwave-DPX9FvD9.js} +0 -0
  346. /package/dist/web/assets/{lean-Cuvh_QAP.js → lean-Cya8dqZu.js} +0 -0
  347. /package/dist/web/assets/{less-B5tQZOdI.js → less-CJUPgkIs.js} +0 -0
  348. /package/dist/web/assets/{lib-BAsciSLw.js → lib-DUBAP_Gd.js} +0 -0
  349. /package/dist/web/assets/{libesm-CdttTIAd.js → libesm-CcPYXCKp.js} +0 -0
  350. /package/dist/web/assets/{light-plus-DiHU2KL5.js → light-plus-BXXrlFJH.js} +0 -0
  351. /package/dist/web/assets/{llvm-sCBTKCKN.js → llvm-CUbQanZr.js} +0 -0
  352. /package/dist/web/assets/{loader-circle-DxI3O9_f.js → loader-circle-H81ywCuQ.js} +0 -0
  353. /package/dist/web/assets/{log-DtyR34Ie.js → log-B3fFlSMd.js} +0 -0
  354. /package/dist/web/assets/{logo-CP91aQyG.js → logo-ucAyw6zf.js} +0 -0
  355. /package/dist/web/assets/{luau-nfGo2ulP.js → luau-C4l6TSTB.js} +0 -0
  356. /package/dist/web/assets/{make-XbDn9GHe.js → make-CDtGIVc7.js} +0 -0
  357. /package/dist/web/assets/{markdown-BB1_3xLr.js → markdown-CH1zKu2p.js} +0 -0
  358. /package/dist/web/assets/{material-theme-CIx_sxAy.js → material-theme-CEuGVTmh.js} +0 -0
  359. /package/dist/web/assets/{material-theme-darker-DsQeueDD.js → material-theme-darker-CUZ3MoIr.js} +0 -0
  360. /package/dist/web/assets/{material-theme-lighter-x_lMi74j.js → material-theme-lighter-DxAqJSid.js} +0 -0
  361. /package/dist/web/assets/{material-theme-ocean-Bkgh25P8.js → material-theme-ocean-BSvvHJp6.js} +0 -0
  362. /package/dist/web/assets/{material-theme-palenight-CoOjdbti.js → material-theme-palenight-QVOl50_m.js} +0 -0
  363. /package/dist/web/assets/{matlab-D6xZas_8.js → matlab-CZLQLwUp.js} +0 -0
  364. /package/dist/web/assets/{mdx-Cl5_YNoz.js → mdx-DO4NJsOo.js} +0 -0
  365. /package/dist/web/assets/{mermaid-8Eow4jz_.js → mermaid-CIwzg1uO.js} +0 -0
  366. /package/dist/web/assets/{min-dark-D4DhjgRE.js → min-dark-BdIgslXy.js} +0 -0
  367. /package/dist/web/assets/{min-light-DzAckd0t.js → min-light-DyU-T1r2.js} +0 -0
  368. /package/dist/web/assets/{mipsasm-zI_zu0tj.js → mipsasm-DRad-Klm.js} +0 -0
  369. /package/dist/web/assets/{mojo-DQnGGPHf.js → mojo-DXp5LDOc.js} +0 -0
  370. /package/dist/web/assets/{monitor-CG69bSMW.js → monitor-CKcYUoAV.js} +0 -0
  371. /package/dist/web/assets/{monokai-CrFoD2VD.js → monokai-BiKX3qby.js} +0 -0
  372. /package/dist/web/assets/{moonbit-DdphIGs6.js → moonbit-BOUoLF5r.js} +0 -0
  373. /package/dist/web/assets/{move-BUlkn0xW.js → move-Dlk64FWK.js} +0 -0
  374. /package/dist/web/assets/{narrat-CbOBdtCn.js → narrat-B-qd2Lh0.js} +0 -0
  375. /package/dist/web/assets/{nextflow-groovy-CeVLUTuQ.js → nextflow-groovy-iAMYas0F.js} +0 -0
  376. /package/dist/web/assets/{night-owl-Bm4LhUR1.js → night-owl-3YNqjftR.js} +0 -0
  377. /package/dist/web/assets/{night-owl-light-DtcBiMEf.js → night-owl-light-GIncHb5w.js} +0 -0
  378. /package/dist/web/assets/{nix-DrdwQ70g.js → nix-xjlEb3uw.js} +0 -0
  379. /package/dist/web/assets/{nord-B0Head1v.js → nord-C8tvWx7P.js} +0 -0
  380. /package/dist/web/assets/{nushell-CmUdltKn.js → nushell-BqBb4pU6.js} +0 -0
  381. /package/dist/web/assets/{objective-c-BGDR33XN.js → objective-c-Bk6s0Cn5.js} +0 -0
  382. /package/dist/web/assets/{objective-cpp-Buc1Zhd0.js → objective-cpp-DGTVWQ3V.js} +0 -0
  383. /package/dist/web/assets/{ocaml-xdzl9rRD.js → ocaml-D6wPQ4kw.js} +0 -0
  384. /package/dist/web/assets/{odin-DiUFngnd.js → odin-C9mw2xRN.js} +0 -0
  385. /package/dist/web/assets/{one-dark-pro-BURxmIp3.js → one-dark-pro-SMBlneFb.js} +0 -0
  386. /package/dist/web/assets/{one-light-BMRMInAj.js → one-light-C9JMU1Cx.js} +0 -0
  387. /package/dist/web/assets/{openscad-DAgLA5J3.js → openscad-C0I9CtuA.js} +0 -0
  388. /package/dist/web/assets/{pascal-CoDZxcRB.js → pascal-D0z4DJnY.js} +0 -0
  389. /package/dist/web/assets/{pkl-DzKM6BuM.js → pkl-CITYNGVz.js} +0 -0
  390. /package/dist/web/assets/{plastic-vF15LmNS.js → plastic-Bf0T6rmg.js} +0 -0
  391. /package/dist/web/assets/{plsql-C1v07teA.js → plsql-Chr907pu.js} +0 -0
  392. /package/dist/web/assets/{po-CLLC8BuA.js → po-07U75CYV.js} +0 -0
  393. /package/dist/web/assets/{poimandres-Uq0xysxM.js → poimandres-B0T4qwXY.js} +0 -0
  394. /package/dist/web/assets/{polar-2-luY1Pc.js → polar-BvNJMMV5.js} +0 -0
  395. /package/dist/web/assets/{portal-container-context-DeLx1cOI.js → portal-container-context-Bqn516X4.js} +0 -0
  396. /package/dist/web/assets/{postcss-lbFhe0rz.js → postcss-BSdf-zzo.js} +0 -0
  397. /package/dist/web/assets/{power-CvtnQHU4.js → power-D_wlLkC0.js} +0 -0
  398. /package/dist/web/assets/{powerquery-RL8O9Wie.js → powerquery-B2Ad_HK8.js} +0 -0
  399. /package/dist/web/assets/{powershell-upFWhb-b.js → powershell-DO5WY2v2.js} +0 -0
  400. /package/dist/web/assets/{prisma-DBtYaWFk.js → prisma-BfaRPYzs.js} +0 -0
  401. /package/dist/web/assets/{prolog-D8jSMykJ.js → prolog-Cz0Nue9e.js} +0 -0
  402. /package/dist/web/assets/{proto-BM4eadF7.js → proto-FVleUZJO.js} +0 -0
  403. /package/dist/web/assets/{puppet-BQDQ3Snu.js → puppet-BEX5o7hE.js} +0 -0
  404. /package/dist/web/assets/{purescript-Cj2aTX4s.js → purescript-BZX6Kw4j.js} +0 -0
  405. /package/dist/web/assets/{python-BYpqq6u4.js → python-CO89UIxE.js} +0 -0
  406. /package/dist/web/assets/{qmldir-4uiTcwAu.js → qmldir-DH526DWB.js} +0 -0
  407. /package/dist/web/assets/{qss-D5xB-Mqo.js → qss-wp8im4Iz.js} +0 -0
  408. /package/dist/web/assets/{r-P6Ujy8rf.js → r-F9n--bvq.js} +0 -0
  409. /package/dist/web/assets/{racket-COKgCFuM.js → racket-BQvbOE5D.js} +0 -0
  410. /package/dist/web/assets/{raku-z14Q9i7K.js → raku-B0iWSynj.js} +0 -0
  411. /package/dist/web/assets/{react-DqIU0LFM.js → react-Bcm1Oab0.js} +0 -0
  412. /package/dist/web/assets/{red-ObAvgvQ5.js → red-Cm00r9eI.js} +0 -0
  413. /package/dist/web/assets/{reg-Qv4f0JFA.js → reg-CBuhna22.js} +0 -0
  414. /package/dist/web/assets/{regexp-CEOVGIzy.js → regexp-C9j1_6oU.js} +0 -0
  415. /package/dist/web/assets/{rel-cWOyTUwd.js → rel-BYzlBhbq.js} +0 -0
  416. /package/dist/web/assets/{resolve-theme-CMp5xxCW.js → resolve-theme-Dm8ehbOv.js} +0 -0
  417. /package/dist/web/assets/{riscv-BZDwx-lv.js → riscv-CQQP0Ro9.js} +0 -0
  418. /package/dist/web/assets/{ron-BpjosPS0.js → ron-j1ON9YzM.js} +0 -0
  419. /package/dist/web/assets/{rose-pine-DhxfJWcm.js → rose-pine-Cbri3jon.js} +0 -0
  420. /package/dist/web/assets/{rose-pine-dawn-BbGt9Wy_.js → rose-pine-dawn-BMuvKrGo.js} +0 -0
  421. /package/dist/web/assets/{rose-pine-moon-dj4Zxgik.js → rose-pine-moon-4biZzaYD.js} +0 -0
  422. /package/dist/web/assets/{rosmsg-EciOaHo2.js → rosmsg-CXx22rtz.js} +0 -0
  423. /package/dist/web/assets/{rust-C_eH59O_.js → rust-D28cFIhL.js} +0 -0
  424. /package/dist/web/assets/{sass-Dos3R5lL.js → sass-DtNw4V28.js} +0 -0
  425. /package/dist/web/assets/{save-B1y4KIK9.js → save-BehCuMf4.js} +0 -0
  426. /package/dist/web/assets/{scala-8lVKsTvf.js → scala-hv69_YQC.js} +0 -0
  427. /package/dist/web/assets/{scheme-Bd3VdaZj.js → scheme-Dtp9B_ng.js} +0 -0
  428. /package/dist/web/assets/{sdbl-C4Yrjlgh.js → sdbl-DEwEngAE.js} +0 -0
  429. /package/dist/web/assets/{send-B9VUQlEK.js → send-CtXcGcsk.js} +0 -0
  430. /package/dist/web/assets/{shellscript-OFZbPKZH.js → shellscript-CCOF9tox.js} +0 -0
  431. /package/dist/web/assets/{shield-check-BJSX7cAS.js → shield-check-z9PX8HVZ.js} +0 -0
  432. /package/dist/web/assets/{shield-off-E1cQwXdc.js → shield-off-Du0U5dVI.js} +0 -0
  433. /package/dist/web/assets/{slack-dark-aL6vlxZs.js → slack-dark-DT0E0ABt.js} +0 -0
  434. /package/dist/web/assets/{slack-ochin-BKt1E7sL.js → slack-ochin-DHHiQnxo.js} +0 -0
  435. /package/dist/web/assets/{smalltalk-D6qVBL1U.js → smalltalk-BF_I35xJ.js} +0 -0
  436. /package/dist/web/assets/{snazzy-light-BrWerT0t.js → snazzy-light-Cv7tIZo9.js} +0 -0
  437. /package/dist/web/assets/{solarized-dark-CzxTJgVQ.js → solarized-dark-wZ5YPCys.js} +0 -0
  438. /package/dist/web/assets/{solarized-light-BecaDAnG.js → solarized-light-DGDOr1AS.js} +0 -0
  439. /package/dist/web/assets/{solidity-C9t7pZ84.js → solidity-BJknuPqJ.js} +0 -0
  440. /package/dist/web/assets/{sparkles-blTKn0vi.js → sparkles-CO9zx1f-.js} +0 -0
  441. /package/dist/web/assets/{splunk-CtxfFKtF.js → splunk-B1ClO_KU.js} +0 -0
  442. /package/dist/web/assets/{sql-7FE_Duz0.js → sql-CXZ66NtF.js} +0 -0
  443. /package/dist/web/assets/{ssh-config-3Fr37ACC.js → ssh-config-kgM67Sf6.js} +0 -0
  444. /package/dist/web/assets/{stylus-BP4mE1sO.js → stylus-RcVaInR-.js} +0 -0
  445. /package/dist/web/assets/{swift-0uqTFouD.js → swift-Cm0fh2lX.js} +0 -0
  446. /package/dist/web/assets/{synthwave-84-DQaNM3DI.js → synthwave-84-CwLiazxr.js} +0 -0
  447. /package/dist/web/assets/{system-verilog-DUIVrZHZ.js → system-verilog-CzYaDVLH.js} +0 -0
  448. /package/dist/web/assets/{systemd-CtNo_WIh.js → systemd-DbSagfLw.js} +0 -0
  449. /package/dist/web/assets/{table-8HT8BG30.js → table-BK4h8E7u.js} +0 -0
  450. /package/dist/web/assets/{talonscript-B0HXaCVT.js → talonscript-BCFnWejL.js} +0 -0
  451. /package/dist/web/assets/{tasl-Cb7RAl11.js → tasl-BUdqtEe1.js} +0 -0
  452. /package/dist/web/assets/{tcl-B79aC6l5.js → tcl-CR_lTV9N.js} +0 -0
  453. /package/dist/web/assets/{terraform-75jJDjpW.js → terraform-Bqsha-xe.js} +0 -0
  454. /package/dist/web/assets/{text-wrap-DafY0-Pa.js → text-wrap-DLtVgSnU.js} +0 -0
  455. /package/dist/web/assets/{tokyo-night-Cz9Uh9qb.js → tokyo-night-Cnuo6JB6.js} +0 -0
  456. /package/dist/web/assets/{toml-CD6y9A-z.js → toml-CLFdhT22.js} +0 -0
  457. /package/dist/web/assets/{tsv-CXJMbBrb.js → tsv-Dw3tLrZN.js} +0 -0
  458. /package/dist/web/assets/{tsx-BuYN0I2t.js → tsx-B8k1sFqw.js} +0 -0
  459. /package/dist/web/assets/{turtle-DWH-Rjse.js → turtle-BMKMfTrj.js} +0 -0
  460. /package/dist/web/assets/{typescript-BPd-hsrR.js → typescript-D38LfGSl.js} +0 -0
  461. /package/dist/web/assets/{typespec-B0wvVykx.js → typespec-EbgGJHV_.js} +0 -0
  462. /package/dist/web/assets/{typst-DWG2c48-.js → typst-CQXV2SzX.js} +0 -0
  463. /package/dist/web/assets/{use-coarse-long-press-BsBpxWup.js → use-coarse-long-press-XrJ4Upuv.js} +0 -0
  464. /package/dist/web/assets/{use-is-mobile-Bi42QhIi.js → use-is-mobile-Dypg-2ZO.js} +0 -0
  465. /package/dist/web/assets/{use-visual-viewport-CNdG4QHH.js → use-visual-viewport-Bj3QHRkF.js} +0 -0
  466. /package/dist/web/assets/{utils-IrnQujwR.js → utils-CwNUra6_.js} +0 -0
  467. /package/dist/web/assets/{v-Ch6E4Egd.js → v-Ci1jObJJ.js} +0 -0
  468. /package/dist/web/assets/{vala-CGVKwbPx.js → vala-C_NdfqrY.js} +0 -0
  469. /package/dist/web/assets/{vb-BIEbSxyT.js → vb-K_r_h_s8.js} +0 -0
  470. /package/dist/web/assets/{vendor-xterm-YQlzIWv2.js → vendor-xterm-BtjgHRUe.js} +0 -0
  471. /package/dist/web/assets/{verilog-A-3pYPad.js → verilog-DQPYLsZI.js} +0 -0
  472. /package/dist/web/assets/{vesper-CK1naZAV.js → vesper-BrmzEV8s.js} +0 -0
  473. /package/dist/web/assets/{vhdl-CVawmgMg.js → vhdl-CjxQGaH2.js} +0 -0
  474. /package/dist/web/assets/{viml-CiWjaqBY.js → viml-CTKJNQH1.js} +0 -0
  475. /package/dist/web/assets/{vitesse-black-PYXW4-BO.js → vitesse-black-i-H_3p1i.js} +0 -0
  476. /package/dist/web/assets/{vitesse-dark-BU5s4AuG.js → vitesse-dark-DZC_Yy3_.js} +0 -0
  477. /package/dist/web/assets/{vitesse-light-DgkIT-N7.js → vitesse-light-rf4kpmk8.js} +0 -0
  478. /package/dist/web/assets/{vyper-D8cRDPp3.js → vyper-BLnOw4Nf.js} +0 -0
  479. /package/dist/web/assets/{wasm-ClFJgzmT.js → wasm-CWeHvGNG.js} +0 -0
  480. /package/dist/web/assets/{wasm-C02wlRbP.js → wasm-DbLMmiW0.js} +0 -0
  481. /package/dist/web/assets/{wenyan-B8plxIr8.js → wenyan-CLwdRuzd.js} +0 -0
  482. /package/dist/web/assets/{wgsl-CVujtm3V.js → wgsl-CBTDMVJR.js} +0 -0
  483. /package/dist/web/assets/{wikitext-CmcG9B69.js → wikitext-CQHrF84e.js} +0 -0
  484. /package/dist/web/assets/{wit--gl2Jium.js → wit-8xdbdipU.js} +0 -0
  485. /package/dist/web/assets/{wolfram-6T_1D-NS.js → wolfram-tFwx32a_.js} +0 -0
  486. /package/dist/web/assets/{x-Bdaog6Az.js → x-DlnNFF2t.js} +0 -0
  487. /package/dist/web/assets/{yaml-CIVV9uA1.js → yaml-BP8N91fU.js} +0 -0
  488. /package/dist/web/assets/{zenscript-CoT4yNdA.js → zenscript-B10Pj7JT.js} +0 -0
  489. /package/dist/web/assets/{zig-BWs2Qo3G.js → zig-BZKcTtrK.js} +0 -0
@@ -6,7 +6,7 @@ import type { LimitBucket } from "../../../../types/chat";
6
6
  import type { CodexStrategy } from "./codex-rotation-dialog";
7
7
 
8
8
  export type Strategy = CodexStrategy;
9
- export interface CodexAccount { id: string; label: string; type: string; planType?: string | null; status?: "active" | "disabled" }
9
+ export interface CodexAccount { id: string; label: string; type: string; planType?: string | null; status?: "active" | "disabled"; dailyGuardEnabled?: boolean }
10
10
  /**
11
11
  * One account's quota. The two percentages are what the bars read; the buckets carry the
12
12
  * reset clock the server already sends, so the Codex card can show "resets in" the way the
@@ -183,6 +183,18 @@ export function useCodexAccounts(onDone: () => void) {
183
183
  setToggling((prev) => { const n = new Set(prev); n.delete(id); return n; });
184
184
  }
185
185
  };
186
+ const toggleDailyGuard = async (id: string, enabled: boolean) => {
187
+ setToggling((prev) => new Set(prev).add(id));
188
+ setErr(null);
189
+ try {
190
+ await api.patch(`/api/codex-accounts/${id}`, { dailyGuardEnabled: !enabled });
191
+ await load();
192
+ } catch (e) {
193
+ setErr((e as Error).message || "Could not change Daily guard");
194
+ } finally {
195
+ setToggling((prev) => { const n = new Set(prev); n.delete(id); return n; });
196
+ }
197
+ };
186
198
  const changeStrategy = async (s: Strategy) => { setStrategy(s); try { await api.put("/api/codex-accounts/strategy", { strategy: s }); } catch { /* revert on reload */ } };
187
199
 
188
200
  const doExport = async () => {
@@ -225,6 +237,6 @@ export function useCodexAccounts(onDone: () => void) {
225
237
  exporting, importing, msg, setMsg,
226
238
  toggling,
227
239
  load, addApiKey, startDevice: () => startLogin("device"), startBrowser: () => startLogin("browser"),
228
- browser, loginStarting, callbackUrl, setCallbackUrl, submittingCallback, submitCallback, cancelLogin, remove, toggle, changeStrategy, doExport, doImport,
240
+ browser, loginStarting, callbackUrl, setCallbackUrl, submittingCallback, submitCallback, cancelLogin, remove, toggle, toggleDailyGuard, changeStrategy, doExport, doImport,
229
241
  };
230
242
  }
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-BBdkypKW.js";import{t as r}from"./copy-CXuIH4VC.js";import{t as i}from"./download-D70Q4Ba6.js";import{t as a}from"./flask-conical-Dix4qNDj.js";import{t as o}from"./key-round-oIll4vo-.js";import{t as s}from"./loader-circle-DxI3O9_f.js";import{t as c}from"./x-Bdaog6Az.js";import{n as l,r as u}from"./api-client-DwXlVfXP.js";import{n as d}from"./utils-IrnQujwR.js";import"./portal-container-context-DeLx1cOI.js";import{n as f}from"./use-is-mobile-Bi42QhIi.js";import{n as p,t as m}from"./button-zgoXa9r7.js";import{t as h}from"./mobile-bottom-sheet-Ch1e_JBq.js";import"./use-visual-viewport-CNdG4QHH.js";import{$t as g,B as _,Dn as v,Dr as y,G as b,Gn as x,H as S,Ln as C,M as w,On as T,Pn as E,Qn as D,Qt as O,U as k,V as A,W as j,X as M,Xt as N,Y as P,Yt as F,Zt as I,en as L,ir as R,kn as ee,lr as z,nn as B}from"./index-DVNJ2W5R.js";import{addAccount as V,deleteAccount as H,exchangeOAuthCode as U,getAISettings as W,getAccountSettings as G,getOAuthUrl as K,getUsageHistory as q,importAccounts as te,patchAccount as J,testAccountToken as Y,testExport as ne,testRawToken as X,updateAccountSettings as re}from"./api-settings-BQIwZoLm.js";import{a as ie,c as ae,i as oe,l as se,n as ce,o as le,r as ue,t as de,u as fe}from"./use-accounts-data-B9t4BQaI.js";var Z=e(t(),1),Q=n(),pe=[`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`,`Sun`],$=Array.from({length:24},(e,t)=>t);function me(e,t){let n=Array.from({length:7},()=>Array.from({length:24},()=>({sum:0,count:0,avg:0})));for(let r of e){let e=t===`5h`?r.five_hour_util:r.weekly_util;if(e==null)continue;let i=new Date(r.recorded_at+(r.recorded_at.endsWith(`Z`)?``:`Z`)),a=(i.getDay()+6)%7,o=i.getHours();n[a][o].sum+=e,n[a][o].count+=1}for(let e of n)for(let t of e)t.avg=t.count>0?t.sum/t.count:0;return n}function he(e){return e.map(e=>{let t=e.reduce((e,t)=>e+t.sum,0),n=e.reduce((e,t)=>e+t.count,0);return n>0?t/n:0})}function ge(e){return $.map(t=>{let n=0,r=0;for(let i of e)n+=i[t].sum,r+=i[t].count;return r>0?n/r:0})}function _e(e){return e===0?`bg-surface-elevated`:e<.3?`bg-success/30`:e<.5?`bg-success/60`:e<.7?`bg-warning/50`:e<.9?`bg-warning/80`:`bg-error/80`}function ve(e){return e<.3?`bg-success`:e<.7?`bg-warning`:`bg-error`}function ye({accountId:e}){let[t,n]=(0,Z.useState)(null),[r,i]=(0,Z.useState)(!0),[a,o]=(0,Z.useState)(`5h`);(0,Z.useEffect)(()=>{i(!0),q(e).then(n).catch(()=>n([])).finally(()=>i(!1))},[e]);let c=(0,Z.useMemo)(()=>t?me(t,a):null,[t,a]),l=(0,Z.useMemo)(()=>c?he(c):[],[c]),u=(0,Z.useMemo)(()=>c?ge(c):[],[c]),d=Math.max(...l,.01);if(Math.max(...u,.01),r)return(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-3`,children:(0,Q.jsx)(s,{className:`size-3 animate-spin text-text-subtle`})});if(!t||t.length===0)return(0,Q.jsx)(`div`,{className:`text-[10px] text-text-subtle py-2 text-center`,children:`No usage history yet`});let f=t.length,p=new Set(t.map(e=>new Date(e.recorded_at+(e.recorded_at.endsWith(`Z`)?``:`Z`)).toDateString())).size;return(0,Q.jsxs)(`div`,{className:`mt-2 space-y-2`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsx)(`span`,{className:`text-[10px] font-medium text-text-subtle`,children:`Usage Pattern (7d)`}),(0,Q.jsxs)(`div`,{className:`flex gap-0.5 text-[9px]`,children:[(0,Q.jsx)(`button`,{onClick:()=>o(`5h`),className:`px-1.5 py-0.5 rounded cursor-pointer transition-colors ${a===`5h`?`bg-primary/15 text-primary`:`text-text-subtle hover:text-text-secondary`}`,title:`5-hour rolling window limit — resets every 5 hours`,children:`5h`}),(0,Q.jsx)(`button`,{onClick:()=>o(`weekly`),className:`px-1.5 py-0.5 rounded cursor-pointer transition-colors ${a===`weekly`?`bg-primary/15 text-primary`:`text-text-subtle hover:text-text-secondary`}`,title:`Weekly limit — resets every 7 days`,children:`Wk`})]})]}),(0,Q.jsxs)(`p`,{className:`text-[9px] text-text-subtle leading-tight`,children:[`Avg `,a===`5h`?`5-hour`:`weekly`,` limit usage over `,p,`d (`,f,` samples). Higher % = closer to rate limit. Hover cells for details.`]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`span`,{className:`text-[9px] text-text-subtle`,children:`Avg usage by day of week`}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-[2px] mt-0.5`,children:pe.map((e,t)=>{let n=l[t]??0;return(0,Q.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-[8px] text-text-subtle w-5 shrink-0 text-right tabular-nums`,children:e}),(0,Q.jsx)(`div`,{className:`flex-1 h-2.5 bg-surface-elevated rounded-sm overflow-hidden`,children:(0,Q.jsx)(`div`,{className:`h-full rounded-sm transition-all ${ve(n)}`,style:{width:`${Math.round(n/d*100)}%`}})}),(0,Q.jsxs)(`span`,{className:`text-[8px] text-text-subtle w-6 shrink-0 text-right tabular-nums`,children:[Math.round(n*100),`%`]})]},e)})})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`span`,{className:`text-[9px] text-text-subtle`,children:`Avg usage by hour (0h-23h)`}),(0,Q.jsx)(`div`,{className:`flex gap-[1px] mt-0.5`,children:$.map(e=>{let t=u[e]??0;return(0,Q.jsxs)(`div`,{className:`flex-1 flex flex-col items-center gap-[1px]`,children:[(0,Q.jsx)(`div`,{className:`w-full aspect-square rounded-[2px] ${_e(t)}`,title:`${e}:00 — avg ${Math.round(t*100)}% usage`}),e%6==0&&(0,Q.jsx)(`span`,{className:`text-[7px] text-text-subtle tabular-nums`,children:e})]},e)})})]}),c&&(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`span`,{className:`text-[9px] text-text-subtle`,children:`Day x Hour heatmap`}),(0,Q.jsxs)(`div`,{className:`flex flex-col gap-[1px] mt-0.5`,children:[pe.map((e,t)=>(0,Q.jsxs)(`div`,{className:`flex items-center gap-[1px]`,children:[(0,Q.jsx)(`span`,{className:`text-[7px] text-text-subtle w-4 shrink-0 text-right`,children:e.charAt(0)}),$.map(n=>{let r=c[t][n];return(0,Q.jsx)(`div`,{className:`flex-1 aspect-square rounded-[1px] ${_e(r.avg)}`,title:`${e} ${n}:00 — ${r.count>0?`avg ${Math.round(r.avg*100)}% (${r.count} samples)`:`no data`}`},n)})]},e)),(0,Q.jsxs)(`div`,{className:`flex items-center gap-[1px]`,children:[(0,Q.jsx)(`span`,{className:`w-4 shrink-0`}),$.map(e=>(0,Q.jsx)(`div`,{className:`flex-1 text-center`,children:e%6==0&&(0,Q.jsx)(`span`,{className:`text-[7px] text-text-subtle tabular-nums`,children:e})},e))]})]})]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[8px] text-text-subtle`,children:[(0,Q.jsx)(`span`,{children:`Low`}),(0,Q.jsxs)(`div`,{className:`flex gap-[2px]`,children:[(0,Q.jsx)(`div`,{className:`size-2 rounded-[1px] bg-success/30`}),(0,Q.jsx)(`div`,{className:`size-2 rounded-[1px] bg-success/60`}),(0,Q.jsx)(`div`,{className:`size-2 rounded-[1px] bg-warning/50`}),(0,Q.jsx)(`div`,{className:`size-2 rounded-[1px] bg-warning/80`}),(0,Q.jsx)(`div`,{className:`size-2 rounded-[1px] bg-error/80`})]}),(0,Q.jsx)(`span`,{children:`High`}),(0,Q.jsx)(`span`,{className:`ml-1`,children:`|`}),(0,Q.jsx)(`div`,{className:`size-2 rounded-[1px] bg-surface-elevated border border-border/30`}),(0,Q.jsx)(`span`,{children:`No data`})]})]})}function be({profile:e,accountId:t,onClose:n}){let r=[[`Name`,e.account?.display_name],[`Email`,e.account?.email],[`Org`,e.organization?.name],[`Type`,e.organization?.organization_type],[`Tier`,e.organization?.rate_limit_tier],[`Status`,e.organization?.subscription_status]];return(0,Q.jsxs)(`section`,{className:`space-y-2 border-t border-border pt-3`,"data-testid":`account-profile-panel`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsx)(`h3`,{className:`text-sm font-medium`,children:`Profile`}),(0,Q.jsx)(`button`,{className:`p-2 text-muted-foreground hover:text-foreground cursor-pointer`,onClick:n,"aria-label":`Close profile`,children:(0,Q.jsx)(c,{className:`size-4`})})]}),(0,Q.jsx)(`div`,{className:`grid grid-cols-[80px_1fr] gap-x-3 gap-y-1 text-xs`,children:r.map(([e,t])=>t?(0,Q.jsxs)(`span`,{className:`contents`,children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground`,children:e}),(0,Q.jsx)(`span`,{className:`break-all`,children:t})]},e):null)}),(0,Q.jsx)(ye,{accountId:t})]})}function xe({display:e,onConfirm:t,onCancel:n}){let r=f(),i=(0,Q.jsxs)(`div`,{className:`space-y-4`,"data-testid":`account-delete-confirm`,children:[(0,Q.jsxs)(`p`,{className:`text-sm`,children:[`Remove `,(0,Q.jsx)(`span`,{className:`font-medium`,children:e}),`?`]}),(0,Q.jsx)(`p`,{className:`text-xs text-text-subtle`,children:`The stored token is deleted from this machine. Any export you already made keeps working.`}),(0,Q.jsxs)(`div`,{className:`flex flex-col-reverse md:flex-row gap-2 md:justify-end pt-2`,children:[(0,Q.jsx)(m,{variant:`outline`,onClick:n,className:`min-h-11`,children:`Cancel`}),(0,Q.jsx)(m,{variant:`destructive`,autoFocus:!1,onClick:t,className:`min-h-11`,children:`Remove account`})]})]});return r?(0,Q.jsx)(h,{open:!0,onClose:n,children:(0,Q.jsxs)(`div`,{className:`px-4 pb-4`,children:[(0,Q.jsx)(`h2`,{className:`text-base font-semibold mb-3`,children:`Remove account`}),i]})}):(0,Q.jsx)(F,{open:!0,onOpenChange:e=>{e||n()},children:(0,Q.jsxs)(N,{className:`sm:max-w-sm`,children:[(0,Q.jsx)(g,{children:(0,Q.jsx)(L,{className:`text-sm`,children:`Remove account`})}),i]})})}function Se({open:e,onOpenChange:t,onSuccess:n}){let[r,i]=(0,Z.useState)(``),[a,o]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(null),[h,_]=(0,Z.useState)(``),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(`idle`);function S(){p(null),_(``),x(`idle`),d(null)}function C(){t(!1),S(),i(``),o(``),d(null)}async function w(){y(!0),d(null);try{let{url:e,state:t}=await K();p(t),x(`waiting`),window.open(e,`_blank`)}catch(e){d(e.message)}y(!1)}async function T(){if(!(!h.trim()||!f)){y(!0),d(null);try{let e=h.trim();e.includes(`#`)&&(e=e.split(`#`)[0]??e);let t=await U(e,f);C(),n(t?.status===`disabled`?`Signed in. This account is still disabled — enable it to use it.`:`Account connected via OAuth!`)}catch(e){d(e.message)}y(!1)}}async function E(){if(r.trim()){l(!0),d(null);try{let e=await V({apiKey:r.trim(),label:a.trim()||void 0});C(),n(e?.status===`disabled`?`Token updated. This account is still disabled — enable it to use it.`:`Account added!`)}catch(e){d(e.message)}l(!1)}}let D=r.trim()?r.trim().startsWith(`sk-ant-oat`)?`OAuth token (Claude Max/Pro)`:r.trim().startsWith(`sk-ant-api`)?`API key`:`Unknown format`:``;return(0,Q.jsx)(F,{open:e,onOpenChange:e=>{e||C()},children:(0,Q.jsxs)(N,{className:`sm:max-w-md`,children:[(0,Q.jsxs)(g,{children:[(0,Q.jsx)(L,{className:`text-sm`,children:`Add Claude Account`}),(0,Q.jsx)(I,{className:`text-xs leading-relaxed`,children:`Connect via OAuth (recommended) or paste a token manually.`})]}),(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsxs)(`div`,{className:`rounded-md border p-3 space-y-2`,children:[(0,Q.jsx)(`p`,{className:`text-[11px] font-medium`,children:`Recommended: Login with Claude`}),b===`idle`?(0,Q.jsx)(m,{size:`sm`,className:`w-full h-8 text-xs`,onClick:w,disabled:v,children:v?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(s,{className:`size-3 animate-spin mr-1`}),` Opening...`]}):`Login with Claude`}):(0,Q.jsxs)(`div`,{className:`space-y-2`,children:[(0,Q.jsx)(`p`,{className:`text-[10px] text-muted-foreground`,children:`Authorize in the opened tab, then paste the code:`}),(0,Q.jsx)(M,{placeholder:`Paste code here...`,value:h,onChange:e=>_(e.target.value),className:`text-xs h-8 font-mono`,autoFocus:!0}),(0,Q.jsxs)(`div`,{className:`flex gap-1.5`,children:[(0,Q.jsx)(m,{size:`sm`,className:`flex-1 h-7 text-xs`,onClick:T,disabled:!h.trim()||v,children:v?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(s,{className:`size-3 animate-spin mr-1`}),` Connecting...`]}):`Connect`}),(0,Q.jsx)(m,{size:`sm`,variant:`ghost`,className:`h-7 text-xs`,onClick:S,children:`Cancel`})]})]})]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`div`,{className:`flex-1 border-t`}),(0,Q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:`or paste token`}),(0,Q.jsx)(`div`,{className:`flex-1 border-t`})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(P,{htmlFor:`add-token`,className:`text-xs`,children:`Token`}),(0,Q.jsx)(M,{id:`add-token`,type:`password`,placeholder:`sk-ant-...`,value:r,onChange:e=>i(e.target.value),className:`text-xs h-8 font-mono`}),D&&(0,Q.jsxs)(`p`,{className:`text-[10px] text-muted-foreground`,children:[`Detected: `,D]})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(P,{htmlFor:`add-label`,className:`text-xs`,children:`Label (optional)`}),(0,Q.jsx)(M,{id:`add-label`,placeholder:`e.g. Personal, Work`,value:a,onChange:e=>o(e.target.value),className:`text-xs h-8`})]})]}),u&&(0,Q.jsx)(`div`,{className:`text-[11px] p-2 rounded bg-error/10 text-error`,children:u}),(0,Q.jsxs)(O,{children:[(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`text-xs h-7`,onClick:C,children:`Cancel`}),(0,Q.jsx)(m,{size:`sm`,className:`text-xs h-7`,onClick:E,disabled:!r.trim()||c,children:c?`Adding...`:`Add Token`})]})]})})}function Ce(e){let t=new Blob([e],{type:`application/json`}),n=document.createElement(`a`);n.href=URL.createObjectURL(t),n.download=`ppm-accounts-backup.json`,n.click(),URL.revokeObjectURL(n.href)}function we({open:e,onOpenChange:t,accounts:n,preselectId:a,onMessage:o}){let c=n.filter(e=>e.hasRefreshToken),[l,d]=(0,Z.useState)(new Set),[f,p]=(0,Z.useState)(``),[h,_]=(0,Z.useState)(!1),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(!1);e&&!S&&(d(a?new Set([a]):new Set(c.map(e=>e.id))),C(!0)),!e&&S&&C(!1);function w(){t(!1),p(``),_(!1),y(!1)}async function T(e){if(l.size===0)return;x(!0);let t=f.trim()||`ppm-hienlh`;try{let n={"Content-Type":`application/json`},r=u();r&&(n.Authorization=`Bearer ${r}`);let i=await fetch(`/api/accounts/export`,{method:`POST`,headers:n,body:JSON.stringify({password:t,accountIds:[...l],includeRefreshToken:h,refreshBeforeExport:v})});if(!i.ok){let e=await i.json();throw Error(e.error??`Export failed: ${i.status}`)}let a=await i.text();e&&await B(a)?o?.(`Backup copied to clipboard!`):(Ce(a),o?.(`Backup downloaded.`)),w()}catch{}x(!1)}let E=l.size>0&&!b;return(0,Q.jsx)(F,{open:e,onOpenChange:e=>{e||w()},children:(0,Q.jsxs)(N,{className:`sm:max-w-md`,children:[(0,Q.jsxs)(g,{children:[(0,Q.jsxs)(L,{className:`text-sm flex items-center gap-1.5`,children:[(0,Q.jsx)(z,{className:`size-3.5`}),` Export Accounts`]}),(0,Q.jsx)(I,{className:`text-xs`,children:`Select accounts and set a password to protect the backup.`})]}),(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between mb-1`,children:[(0,Q.jsx)(`p`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Accounts to export`}),(0,Q.jsx)(`button`,{className:`text-[10px] text-primary hover:underline cursor-pointer`,onClick:()=>d(l.size===c.length?new Set:new Set(c.map(e=>e.id))),children:l.size===c.length?`Deselect all`:`Select all`})]}),c.length===0?(0,Q.jsx)(`p`,{className:`text-[10px] text-muted-foreground p-2 border rounded`,children:`No exportable accounts.`}):(0,Q.jsx)(`div`,{className:`max-h-36 overflow-y-auto space-y-1 border rounded p-2`,children:c.map(e=>(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`input`,{type:`checkbox`,id:`exp-${e.id}`,checked:l.has(e.id),onChange:t=>{let n=new Set(l);t.target.checked?n.add(e.id):n.delete(e.id),d(n)},className:`size-3.5 accent-primary cursor-pointer`}),(0,Q.jsx)(`label`,{htmlFor:`exp-${e.id}`,className:`text-xs cursor-pointer truncate`,children:e.label??e.email??e.id.slice(0,8)})]},e.id))})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsxs)(P,{className:`text-xs`,children:[`Password `,(0,Q.jsx)(`span`,{className:`text-muted-foreground font-normal`,children:`(optional)`})]}),(0,Q.jsx)(M,{type:`password`,placeholder:`Leave empty for default`,value:f,onChange:e=>p(e.target.value),className:`text-xs h-8`,autoComplete:`new-password`})]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`input`,{type:`checkbox`,id:`exp-full`,checked:h,onChange:e=>_(e.target.checked),className:`size-3.5 accent-primary cursor-pointer`}),(0,Q.jsx)(`label`,{htmlFor:`exp-full`,className:`text-[11px] cursor-pointer`,children:`Include refresh tokens (full transfer)`})]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`input`,{type:`checkbox`,id:`exp-refresh`,checked:v,onChange:e=>y(e.target.checked),className:`size-3.5 accent-primary cursor-pointer`}),(0,Q.jsx)(`label`,{htmlFor:`exp-refresh`,className:`text-[11px] cursor-pointer`,children:`Refresh tokens before export`})]}),h?(0,Q.jsxs)(`div`,{className:`rounded-md border border-error/30 bg-error/5 p-2.5`,children:[(0,Q.jsx)(`p`,{className:`text-[10px] font-medium text-error`,children:`Full transfer — source accounts will expire`}),(0,Q.jsx)(`p`,{className:`text-[10px] text-muted-foreground`,children:`Refresh tokens included. Source machine expires in ~1h after target refreshes.`})]}):v?(0,Q.jsx)(`div`,{className:`rounded-md border border-warning/30 bg-warning/5 p-2.5`,children:(0,Q.jsx)(`p`,{className:`text-[10px] font-medium text-warning`,children:`Refresh before export — invalidates previous shares`})}):(0,Q.jsx)(`div`,{className:`rounded-md border border-success/30 bg-success/5 p-2.5`,children:(0,Q.jsx)(`p`,{className:`text-[10px] font-medium text-success`,children:`Share current token (safe)`})}),(0,Q.jsx)(`p`,{className:`text-[10px] text-muted-foreground`,children:`Encrypted with AES-256-GCM + scrypt.`})]}),(0,Q.jsxs)(O,{className:`gap-1.5 flex-col sm:flex-row`,children:[(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`text-xs h-7 cursor-pointer`,onClick:w,children:`Cancel`}),(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`text-xs h-7 cursor-pointer`,disabled:!E,onClick:()=>T(!0),children:[(0,Q.jsx)(r,{className:`size-3 mr-1`}),` Copy`]}),(0,Q.jsx)(m,{size:`sm`,className:`text-xs h-7 cursor-pointer`,disabled:!E,onClick:()=>T(!1),children:b?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(s,{className:`size-3 animate-spin mr-1`}),` Exporting...`]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(i,{className:`size-3 mr-1`}),` Download`]})})]})]})})}function Te({open:e,onOpenChange:t,onSuccess:n}){let[r,i]=(0,Z.useState)(``),[a,o]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(null);function f(){t(!1),i(``),o(``),d(null)}async function p(){if(r.trim()){l(!0),d(null);try{let e=await te({data:r.trim(),password:a.trim()||`ppm-hienlh`});f(),n(`Imported ${e.imported} account(s)`)}catch(e){d(e.message||`Import failed`)}l(!1)}}return(0,Q.jsx)(F,{open:e,onOpenChange:e=>{e||f()},children:(0,Q.jsxs)(N,{className:`sm:max-w-md`,children:[(0,Q.jsxs)(g,{children:[(0,Q.jsxs)(L,{className:`text-sm flex items-center gap-1.5`,children:[(0,Q.jsx)(z,{className:`size-3.5`}),` Import Accounts`]}),(0,Q.jsx)(I,{className:`text-xs`,children:`Paste backup data and enter the export password. Imported accounts are temporary (~1h).`})]}),(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(P,{className:`text-xs`,children:`Backup data`}),(0,Q.jsx)(`textarea`,{value:r,onChange:e=>i(e.target.value),placeholder:`Paste backup JSON here...`,rows:4,className:`w-full text-xs p-2 rounded border border-border bg-background font-mono resize-none focus:outline-none focus:ring-1 focus:ring-primary`})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsxs)(P,{className:`text-xs`,children:[`Password `,(0,Q.jsx)(`span`,{className:`text-muted-foreground font-normal`,children:`(optional)`})]}),(0,Q.jsx)(M,{type:`password`,placeholder:`Leave empty for default`,value:a,onChange:e=>o(e.target.value),className:`text-xs h-8`,autoComplete:`current-password`})]})]}),u&&(0,Q.jsx)(`div`,{className:`text-[11px] p-2 rounded bg-error/10 text-error`,children:u}),(0,Q.jsxs)(O,{children:[(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`text-xs h-7 cursor-pointer`,onClick:f,children:`Cancel`}),(0,Q.jsx)(m,{size:`sm`,className:`text-xs h-7 cursor-pointer`,disabled:!r.trim()||c,onClick:p,children:c?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(s,{className:`size-3 animate-spin mr-1`}),` Importing...`]}):`Import`})]})]})})}var Ee=typeof window<`u`?window.matchMedia(`(min-width: 768px)`):null;function De(e){return Ee?.addEventListener(`change`,e),()=>Ee?.removeEventListener(`change`,e)}function Oe(){return Ee?.matches??!0}function ke(){let[e,t]=(0,Z.useState)(null),[n,r]=(0,Z.useState)(!0);return(0,Z.useEffect)(()=>{r(!0),G().then(t).finally(()=>r(!1))},[]),n?(0,Q.jsx)(`p`,{className:`text-xs text-text-subtle py-4 text-center`,children:`Loading...`}):e?(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-xs font-medium text-text-primary`,children:`Rotation Strategy`}),(0,Q.jsxs)(_,{value:e.strategy,onValueChange:async e=>{t(await re({strategy:e}))},children:[(0,Q.jsx)(k,{className:`w-full h-9 text-xs`,children:(0,Q.jsx)(j,{})}),(0,Q.jsxs)(A,{children:[(0,Q.jsx)(S,{value:`round-robin`,children:`Round-robin`}),(0,Q.jsx)(S,{value:`fill-first`,children:`Fill-first`}),(0,Q.jsx)(S,{value:`lowest-usage`,children:`Lowest usage`})]})]}),(0,Q.jsxs)(`p`,{className:`text-[10px] text-text-subtle`,children:[e.strategy===`round-robin`&&`Cycles through accounts evenly`,e.strategy===`fill-first`&&`Uses one account until its limit, then moves on`,e.strategy===`lowest-usage`&&`Picks the account with the lowest current usage`]})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-xs font-medium text-text-primary`,children:`Max Retry`}),(0,Q.jsx)(`input`,{type:`number`,min:0,value:e.maxRetry,className:`w-full h-9 text-xs border rounded-md px-3 bg-background`,onChange:async e=>{let n=parseInt(e.target.value,10);!isNaN(n)&&n>=0&&t(await re({maxRetry:n}))}}),(0,Q.jsx)(`p`,{className:`text-[10px] text-text-subtle`,children:`How many accounts to try on failure. 0 = try all available accounts.`})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5 border-t border-border pt-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsx)(`label`,{className:`text-xs font-medium text-text-primary`,children:`Cooldown parking`}),(0,Q.jsx)(b,{checked:e.cooldownEnabled,onCheckedChange:async e=>{t(await re({cooldownEnabled:e}))}})]}),(0,Q.jsx)(`p`,{className:`text-[10px] text-text-subtle`,children:`Park a failing account (rate limit / usage limit / auth error) until it recovers. Off: accounts stay selectable — rotation still skips accounts already ≥95% on the 5-hour limit.`})]}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-between text-xs border-t border-border pt-3`,children:[(0,Q.jsx)(`span`,{className:`text-text-subtle`,children:`Active accounts`}),(0,Q.jsx)(`span`,{className:`font-medium text-text-primary`,children:e.activeCount})]})]}):(0,Q.jsx)(`p`,{className:`text-xs text-text-subtle py-4 text-center`,children:`Failed to load settings`})}function Ae({open:e,onOpenChange:t}){let n=(0,Z.useSyncExternalStore)(De,Oe);return e?n?(0,Q.jsx)(F,{open:e,onOpenChange:t,children:(0,Q.jsxs)(N,{className:`sm:max-w-sm`,children:[(0,Q.jsx)(g,{children:(0,Q.jsxs)(L,{className:`text-sm flex items-center gap-2`,children:[(0,Q.jsx)(x,{className:`size-4`}),` Rotation & Retry`]})}),(0,Q.jsx)(ke,{})]})}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`fixed inset-0 z-50 transition-opacity duration-200 opacity-100`,onClick:()=>t(!1),style:{backgroundColor:`rgba(0,0,0,0.5)`}}),(0,Q.jsxs)(`div`,{className:d(`fixed bottom-0 left-0 right-0 z-50 bg-background rounded-t-2xl border-t border-border shadow-2xl`,`transition-transform duration-300 ease-out max-h-[85vh] overflow-y-auto`,`translate-y-0`),children:[(0,Q.jsx)(`div`,{className:`flex justify-center pt-3 pb-1`,children:(0,Q.jsx)(`div`,{className:`w-10 h-1 rounded-full bg-border`})}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 border-b border-border`,children:[(0,Q.jsxs)(`span`,{className:`text-sm font-semibold flex items-center gap-2`,children:[(0,Q.jsx)(x,{className:`size-4`}),` Rotation & Retry`]}),(0,Q.jsx)(`button`,{onClick:()=>t(!1),className:`flex items-center justify-center size-7 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,Q.jsx)(c,{className:`size-4`})})]}),(0,Q.jsx)(`div`,{className:`px-4 py-4 pb-8`,children:(0,Q.jsx)(ke,{})})]})]}):null}var je=p(`inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground shadow`,secondary:`border-transparent bg-secondary text-secondary-foreground`,destructive:`border-transparent bg-destructive text-destructive-foreground shadow`,outline:`text-foreground`}},defaultVariants:{variant:`default`}});function Me({className:e,variant:t,...n}){return(0,Q.jsx)(`div`,{className:d(je({variant:t}),e),...n})}function Ne(e){let t=Math.floor(Date.now()/1e3);return e>t?`${Math.floor((e-t)/60)}m`:`exp`}function Pe({accounts:e}){let[t,n]=(0,Z.useState)([]),[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(new Map),u=e.filter(e=>e.hasRefreshToken);async function d(){if(u.length!==0){i(!0);try{let e=await ne(u.map(e=>e.id),a);n(t=>[...t,{round:t.length+1,time:new Date().toLocaleTimeString(),includeRefresh:a,items:e}])}catch{}i(!1)}}async function f(e,t){l(t=>new Map(t).set(e,{loading:!0}));try{let n=await X(t);l(t=>new Map(t).set(e,{loading:!1,...n}))}catch(t){l(n=>new Map(n).set(e,{loading:!1,status:`error`,error:t.message}))}}function p(e,t){return[{key:`r${e.round}-pre-${t.id}`,label:`Pre-export`,token:t.preExportTokenFull,preview:t.preExportToken,expires:t.preExportExpires},{key:`r${e.round}-exp-${t.id}`,label:`Exported`,token:t.exportedTokenFull,preview:t.exportedToken,expires:t.exportedExpires},{key:`r${e.round}-post-${t.id}`,label:`Post-export`,token:t.postExportTokenFull,preview:t.postExportToken,expires:t.postExportExpires}]}function h(){for(let e of t)for(let t of e.items)for(let n of p(e,t))n.token&&f(n.key,n.token)}return(0,Q.jsxs)(`section`,{className:`border-t pt-4 space-y-2`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Q.jsx)(`p`,{className:`text-xs font-medium`,children:`Simulate export`}),t.length>0&&(0,Q.jsxs)(`span`,{className:`text-[10px] text-muted-foreground`,children:[t.length,` round(s)`]})]}),(0,Q.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`Every run appends a round. Earlier rounds are kept so tokens can be compared across runs.`}),u.length===0?(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No OAuth account with a refresh token to export.`}):(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Q.jsx)(b,{id:`sim-include-refresh`,checked:a,onCheckedChange:o,className:`cursor-pointer`}),(0,Q.jsx)(P,{htmlFor:`sim-include-refresh`,className:`text-[11px] cursor-pointer`,children:`Include refresh tokens`})]}),(0,Q.jsx)(m,{size:`sm`,className:`h-7 text-xs cursor-pointer`,disabled:r,onClick:()=>void d(),children:r?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(s,{className:`size-3 animate-spin mr-1`}),` Exporting...`]}):`Run export #${t.length+1}`})]}),t.length>0&&(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`w-full h-7 text-[11px] cursor-pointer`,onClick:h,children:[`Test all tokens (`,t.reduce((e,t)=>e+t.items.length*3,0),`)`]}),t.map(e=>(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsxs)(`p`,{className:`text-xs font-medium text-primary`,children:[`Round #`,e.round]}),(0,Q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:e.time}),(0,Q.jsx)(Me,{variant:e.includeRefresh?`destructive`:`secondary`,className:`text-[9px] px-1 py-0`,children:e.includeRefresh?`with refresh`:`access only`})]}),e.items.map(t=>(0,Q.jsxs)(`div`,{className:`p-2 rounded-lg border bg-card space-y-1.5`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`text-[11px] font-medium`,children:t.label??t.email??t.id.slice(0,8)}),t.tokenChanged&&(0,Q.jsx)(Me,{variant:`secondary`,className:`text-[9px] px-1 py-0`,children:`DB token changed`})]}),p(e,t).map(e=>{let t=c.get(e.key);return(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px]`,children:[(0,Q.jsx)(`span`,{className:`w-20 shrink-0 text-muted-foreground text-[10px]`,children:e.label}),(0,Q.jsx)(`code`,{className:`flex-1 truncate font-mono text-[10px] bg-muted px-1 rounded`,children:e.preview??`N/A`}),e.expires&&(0,Q.jsx)(`span`,{className:`text-[10px] text-muted-foreground shrink-0`,children:Ne(e.expires)}),e.token?(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`h-6 text-[10px] px-1.5 cursor-pointer shrink-0`,disabled:t?.loading,onClick:()=>void f(e.key,e.token),children:t?.loading?(0,Q.jsx)(s,{className:`size-3 animate-spin`}):`Test`}):(0,Q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:`-`}),t&&!t.loading&&(0,Q.jsx)(`span`,{className:`text-[10px] font-medium shrink-0 ${t.status?.startsWith(`valid`)?`text-success`:`text-error`}`,children:t.status})]},e.key)})]},`r${e.round}-${t.id}`))]},e.round))]})]})}function Fe(e){let t=Math.floor(Date.now()/1e3),n=Math.floor(Math.abs(e-t)/60);return e>t?`${n}m left`:`expired ${n}m ago`}function Ie({open:e,onOpenChange:t,accounts:n}){let[r,i]=(0,Z.useState)(new Map),[o,c]=(0,Z.useState)(!1);async function l(e){i(t=>new Map(t).set(e,{loading:!0}));try{let t=await Y(e,o);i(n=>new Map(n).set(e,{loading:!1,result:t}))}catch(t){i(n=>new Map(n).set(e,{loading:!1,error:t.message}))}}function u(){for(let e of n.filter(e=>e.expiresAt!==null))l(e.id)}return(0,Q.jsx)(F,{open:e,onOpenChange:t,children:(0,Q.jsxs)(N,{className:`sm:max-w-xl max-h-[85vh] flex flex-col`,children:[(0,Q.jsxs)(g,{children:[(0,Q.jsxs)(L,{className:`text-sm flex items-center gap-1.5`,children:[(0,Q.jsx)(a,{className:`size-4`}),` Token Test`]}),(0,Q.jsx)(I,{className:`text-xs`,children:`Probe stored tokens for validity. Nothing is modified.`})]}),(0,Q.jsxs)(`div`,{className:`space-y-4 overflow-y-auto flex-1 pr-1`,children:[(0,Q.jsxs)(`section`,{className:`space-y-2`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Q.jsx)(`p`,{className:`text-xs font-medium`,children:`Current tokens`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Q.jsx)(b,{id:`token-test-refresh`,checked:o,onCheckedChange:c,className:`cursor-pointer`}),(0,Q.jsx)(P,{htmlFor:`token-test-refresh`,className:`text-[11px] cursor-pointer`,children:`Also test refresh`})]}),(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`h-7 text-xs cursor-pointer`,onClick:u,children:`Test all`})]})]}),n.length===0&&(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No accounts to test.`}),(0,Q.jsx)(`div`,{className:`space-y-1.5`,children:n.map(e=>{let t=r.get(e.id),n=t?.result?.accessToken.status;return(0,Q.jsxs)(`div`,{className:`p-2 rounded border bg-card space-y-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium truncate block`,children:e.label??e.email??e.id.slice(0,8)}),e.expiresAt&&(0,Q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:Fe(e.expiresAt)})]}),(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`h-7 text-xs cursor-pointer shrink-0`,disabled:t?.loading,onClick:()=>void l(e.id),children:t?.loading?(0,Q.jsx)(s,{className:`size-3 animate-spin`}):`Test`})]}),t&&!t.loading&&(0,Q.jsxs)(`div`,{className:`text-[11px] pl-2 border-l-2 border-muted`,children:[t.error&&(0,Q.jsx)(`p`,{className:`text-error`,children:t.error}),n&&(0,Q.jsxs)(`span`,{className:n.startsWith(`valid`)?`text-success`:`text-error`,children:[n,t.result?.accessToken.code?` (${t.result.accessToken.code})`:``]})]})]},e.id)})})]}),(0,Q.jsx)(Pe,{accounts:n})]}),(0,Q.jsx)(O,{children:(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`text-xs cursor-pointer`,onClick:()=>t(!1),children:`Close`})})]})})}function Le(){let{usages:e,accounts:t,activeAccountId:n,initialLoading:r,refreshing:c,flashIds:l,reload:u}=de(),[d,f]=(0,Z.useState)(null),[p,h]=(0,Z.useState)(null),[g,_]=(0,Z.useState)(null),[v,y]=(0,Z.useState)(null),[b,S]=(0,Z.useState)(null),[C,w]=(0,Z.useState)(null);function T(e){u(),e&&f(e)}async function O(e,t){h(e);try{await J(e,{status:t===`disabled`?`active`:`disabled`})}catch(e){f(e.message)}h(null),u()}async function k(){if(g){try{await H(g.id),f(`Account "${g.display}" removed.`),u()}catch(e){f(`Failed to remove: ${e.message}`)}_(null)}}let A=new Map(t.map(e=>[e.id,e])),j=e[0]?.usage.lastFetchedAt;return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsx)(ie,{description:`Connect multiple Claude accounts. PPM rotates between them automatically to avoid rate limits.`,onRefresh:()=>void u(),refreshing:c,disabled:r,actions:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(m,{size:`sm`,className:`cursor-pointer gap-1.5`,onClick:()=>w(`add`),children:[(0,Q.jsx)(D,{className:`size-4`}),` Add account`]}),(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`cursor-pointer gap-1.5`,onClick:()=>{S(null),w(`export`)},children:[(0,Q.jsx)(i,{className:`size-4`}),` Export`]}),(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`cursor-pointer gap-1.5`,onClick:()=>w(`import`),children:[(0,Q.jsx)(E,{className:`size-4`}),` Import`]}),(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`cursor-pointer gap-1.5`,onClick:()=>w(`rotation`),children:[(0,Q.jsx)(x,{className:`size-4`}),` Rotation`]}),(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`cursor-pointer gap-1.5`,onClick:()=>w(`token-test`),children:[(0,Q.jsx)(a,{className:`size-4`}),` Token test`]})]})}),(0,Q.jsx)(le,{message:d,onDismiss:()=>f(null)}),(0,Q.jsxs)(`section`,{className:`space-y-2`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsx)(`h3`,{className:`text-sm font-medium`,children:`Accounts`}),j&&(0,Q.jsxs)(`span`,{className:`text-[10px] text-muted-foreground`,children:[`usage `,se(new Date(j).getTime())]})]}),r?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-xs text-muted-foreground`,children:[(0,Q.jsx)(s,{className:`size-4 animate-spin`}),` Loading accounts...`]}):e.length===0?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-8 text-center`,children:[(0,Q.jsx)(o,{className:`size-5 text-muted-foreground`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No accounts connected yet.`}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Add one to start using PPM.`})]}):(0,Q.jsx)(ue,{children:e.map(e=>(0,Q.jsx)(ce,{layout:`strip`,entry:e,isActive:e.accountId===n,accountInfo:A.get(e.accountId),onToggle:O,toggling:p===e.accountId,onDelete:(e,t)=>_({id:e,display:t}),onExport:e=>{S(e),w(`export`)},onViewProfile:(e,t)=>y({profile:e,accountId:t}),flash:l.has(e.accountId)},e.accountId))})]}),v&&(0,Q.jsx)(be,{profile:v.profile,accountId:v.accountId,onClose:()=>y(null)}),g&&(0,Q.jsx)(xe,{display:g.display,onConfirm:()=>void k(),onCancel:()=>_(null)}),(0,Q.jsx)(Se,{open:C===`add`,onOpenChange:e=>w(e?`add`:null),onSuccess:T}),(0,Q.jsx)(we,{open:C===`export`,onOpenChange:e=>{w(e?`export`:null),e||S(null)},accounts:t,preselectId:b,onMessage:f}),(0,Q.jsx)(Te,{open:C===`import`,onOpenChange:e=>w(e?`import`:null),onSuccess:T}),(0,Q.jsx)(Ae,{open:C===`rotation`,onOpenChange:e=>w(e?`rotation`:null)}),(0,Q.jsx)(Ie,{open:C===`token-test`,onOpenChange:e=>w(e?`token-test`:null),accounts:t})]})}function Re({open:e,onOpenChange:t,label:n,onLabelChange:r,apiKey:i,onApiKeyChange:a,adding:c,onAddApiKey:l,deviceWaiting:u,onStartDevice:d,device:f,error:p,browser:h,onStartBrowser:_,loginStarting:v,callbackUrl:b,onCallbackUrlChange:x,submittingCallback:S,onSubmitCallback:C}){let w=v||u||!!h||c;return(0,Q.jsx)(F,{open:e,onOpenChange:t,children:(0,Q.jsxs)(N,{className:`sm:max-w-md max-h-[90dvh] overflow-y-auto`,children:[(0,Q.jsxs)(g,{children:[(0,Q.jsx)(L,{className:`text-sm`,children:`Add Codex Account`}),(0,Q.jsx)(I,{className:`text-xs leading-relaxed`,children:`Choose browser login, a device code, or an OpenAI API key.`})]}),(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(P,{htmlFor:`codex-label`,className:`text-xs`,children:`Label (optional)`}),(0,Q.jsx)(M,{id:`codex-label`,placeholder:`e.g. Personal, Work`,value:n,onChange:e=>r(e.target.value),disabled:w,className:`text-xs`})]}),(0,Q.jsxs)(`div`,{className:`rounded-md border p-3 space-y-2`,children:[(0,Q.jsx)(`p`,{className:`text-[11px] font-medium`,children:`Browser login`}),(0,Q.jsxs)(m,{size:`sm`,className:`w-full cursor-pointer gap-1.5`,onClick:_,disabled:w,children:[(0,Q.jsx)(y,{className:`size-4`}),` Sign in with browser`]}),h&&(0,Q.jsxs)(`div`,{className:`space-y-2 text-xs`,children:[(0,Q.jsxs)(`a`,{href:h.authUrl,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-primary hover:underline`,children:[(0,Q.jsx)(y,{className:`size-3`}),` Open ChatGPT sign-in`]}),(0,Q.jsx)(`p`,{children:`Sign in, then copy the full localhost callback URL from the address bar and paste it below. On a phone, copy it even if the page fails to load.`}),(0,Q.jsx)(P,{htmlFor:`codex-callback-url`,children:`Callback URL`}),(0,Q.jsx)(M,{id:`codex-callback-url`,type:`password`,autoComplete:`off`,spellCheck:!1,placeholder:`http://localhost:.../auth/callback?...`,value:b,onChange:e=>x(e.target.value),disabled:S}),(0,Q.jsxs)(m,{size:`sm`,onClick:C,disabled:!b.trim()||S,children:[S&&(0,Q.jsx)(s,{className:`size-3 animate-spin`}),` Submit callback URL`]}),(0,Q.jsxs)(`p`,{role:`status`,className:`flex items-center gap-1.5 text-muted-foreground`,children:[(0,Q.jsx)(s,{className:`size-3 animate-spin`}),` Waiting for authorization. This may complete automatically on this computer.`]})]})]}),(0,Q.jsxs)(`div`,{className:`rounded-md border p-3 space-y-2`,children:[(0,Q.jsx)(`p`,{className:`text-[11px] font-medium`,children:`Device code`}),(0,Q.jsx)(m,{size:`sm`,className:`w-full cursor-pointer gap-1.5`,onClick:d,disabled:w,children:u?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(s,{className:`size-4 animate-spin`}),` Waiting for authorization...`]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(R,{className:`size-4`}),` Sign in with device code`]})}),f&&(0,Q.jsxs)(`div`,{className:`rounded-md border border-primary/40 bg-primary/10 p-2.5 space-y-1.5`,children:[(0,Q.jsx)(`p`,{className:`text-[11px]`,children:`Enter this code to authorize:`}),(0,Q.jsx)(`div`,{className:`font-mono text-lg tracking-widest`,children:f.userCode}),(0,Q.jsxs)(`a`,{href:f.verificationUrl,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-primary hover:underline text-[11px]`,children:[(0,Q.jsx)(y,{className:`size-3`}),` `,f.verificationUrl]})]})]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`div`,{className:`flex-1 border-t`}),(0,Q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:`or paste an API key`}),(0,Q.jsx)(`div`,{className:`flex-1 border-t`})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(P,{htmlFor:`codex-api-key`,className:`text-xs`,children:`OpenAI API key`}),(0,Q.jsx)(M,{id:`codex-api-key`,type:`password`,placeholder:`sk-...`,value:i,onChange:e=>a(e.target.value),className:`text-xs font-mono`})]})]}),v&&(0,Q.jsx)(`p`,{role:`status`,className:`text-xs`,children:`Starting login...`}),p&&(0,Q.jsx)(`div`,{role:`alert`,className:`text-[11px] p-2 rounded bg-error/10 text-error`,children:p}),(0,Q.jsxs)(O,{children:[(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`text-xs cursor-pointer`,onClick:()=>t(!1),children:`Cancel`}),(0,Q.jsxs)(m,{size:`sm`,className:`text-xs cursor-pointer gap-1.5`,onClick:l,disabled:!i.trim()||w,children:[c?(0,Q.jsx)(s,{className:`size-3.5 animate-spin`}):(0,Q.jsx)(o,{className:`size-3.5`}),`Add key`]})]})]})})}function ze({mode:e,onOpenChange:t,password:n,onPasswordChange:r,busy:a,onExport:o,onImport:c,error:l}){let u=(0,Z.useRef)(null),d=e===`export`;return(0,Q.jsx)(F,{open:e!==null,onOpenChange:t,children:(0,Q.jsxs)(N,{className:`sm:max-w-md`,children:[(0,Q.jsxs)(g,{children:[(0,Q.jsxs)(L,{className:`text-sm flex items-center gap-1.5`,children:[(0,Q.jsx)(z,{className:`size-4`}),` `,d?`Export Codex Accounts`:`Import Codex Accounts`]}),(0,Q.jsx)(I,{className:`text-xs leading-relaxed`,children:d?`Writes a password-encrypted file containing each account's login.`:`Reads a backup file. The password must be the one it was exported with.`})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(P,{htmlFor:`codex-backup-password`,className:`text-xs`,children:`Password`}),(0,Q.jsx)(M,{id:`codex-backup-password`,type:`password`,placeholder:d?`Choose a password`:`Password used for the export`,value:n,onChange:e=>r(e.target.value),className:`text-xs`,autoComplete:d?`new-password`:`current-password`}),(0,Q.jsx)(`p`,{className:`text-[10px] text-muted-foreground`,children:`A backup holds full logins — keep the file and its password together.`})]}),l&&(0,Q.jsx)(`div`,{className:`text-[11px] p-2 rounded bg-error/10 text-error`,children:l}),(0,Q.jsx)(`input`,{ref:u,type:`file`,accept:`application/json,.json`,className:`hidden`,onChange:e=>{let t=e.target.files?.[0];e.target.value=``,t&&c(t)}}),(0,Q.jsxs)(O,{children:[(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`text-xs cursor-pointer`,onClick:()=>t(!1),children:`Cancel`}),(0,Q.jsxs)(m,{size:`sm`,className:`text-xs cursor-pointer gap-1.5`,disabled:!n.trim()||a,onClick:()=>d?o():u.current?.click(),children:[a?(0,Q.jsx)(s,{className:`size-3.5 animate-spin`}):d?(0,Q.jsx)(i,{className:`size-3.5`}):(0,Q.jsx)(E,{className:`size-3.5`}),d?`Download backup`:`Choose file`]})]})]})})}var Be=[{value:`round-robin`,label:`Round-robin`,hint:`Take the next account each time.`},{value:`fill-first`,label:`Fill-first`,hint:`Stay on one account until it runs out.`},{value:`lowest-usage`,label:`Lowest usage`,hint:`Pick whichever has the most left.`}];function Ve({open:e,onOpenChange:t,strategy:n,onChange:r}){return(0,Q.jsx)(F,{open:e,onOpenChange:t,children:(0,Q.jsxs)(N,{className:`sm:max-w-md`,children:[(0,Q.jsxs)(g,{children:[(0,Q.jsx)(L,{className:`text-sm`,children:`Codex Rotation`}),(0,Q.jsx)(I,{className:`text-xs leading-relaxed`,children:`How a new chat chooses among your Codex accounts.`})]}),(0,Q.jsx)(`div`,{className:`space-y-2`,children:Be.map(e=>(0,Q.jsxs)(`button`,{type:`button`,onClick:()=>r(e.value),"aria-current":n===e.value?`true`:void 0,className:d(`w-full text-left rounded-md border px-3 py-2.5 min-h-11 cursor-pointer transition-colors`,n===e.value?`border-primary bg-primary/10`:`border-border hover:bg-accent/50 active:bg-accent`),children:[(0,Q.jsx)(`p`,{className:`text-sm font-medium`,children:e.label}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.hint})]},e.value))}),(0,Q.jsx)(O,{children:(0,Q.jsx)(m,{size:`sm`,variant:`outline`,className:`text-xs cursor-pointer`,onClick:()=>t(!1),children:`Done`})})]})})}function He(e){return e==null?null:Math.round(e*100)}function Ue({usage:e}){let t=e.session==null&&e.weekly==null;return(0,Q.jsxs)(`div`,{className:`space-y-2`,children:[(t||e.session!=null)&&(0,Q.jsx)(ae,{label:`5-Hour Session`,pct:He(e.fiveHour),reset:fe(e.session),resetsAt:e.session?.resetsAt}),(t||e.weekly!=null)&&(0,Q.jsx)(ae,{label:`Weekly`,pct:He(e.sevenDay),reset:fe(e.weekly),resetsAt:e.weekly?.resetsAt})]})}var We=2e3,Ge=21e4;function Ke(e){let[t,n]=(0,Z.useState)([]),[r,i]=(0,Z.useState)(`round-robin`),[a,o]=(0,Z.useState)({}),[s,c]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(new Set),[p,m]=(0,Z.useState)(``),[h,g]=(0,Z.useState)(``),[_,v]=(0,Z.useState)(!1),[y,b]=(0,Z.useState)(null),[x,S]=(0,Z.useState)(null),[C,w]=(0,Z.useState)(!1),[T,E]=(0,Z.useState)(null),[D,O]=(0,Z.useState)(!1),[k,A]=(0,Z.useState)(``),[j,M]=(0,Z.useState)(!1),[N,P]=(0,Z.useState)(``),[F,I]=(0,Z.useState)(!1),[L,R]=(0,Z.useState)(!1),[ee,z]=(0,Z.useState)(null),B=(0,Z.useRef)(null),V=(0,Z.useRef)(null),H=(0,Z.useRef)(0),U=(0,Z.useRef)(!1),W=(0,Z.useRef)(!1),G=(0,Z.useRef)(!1),K=(0,Z.useRef)(e);K.current=e;let q=(0,Z.useCallback)(async()=>{c(!0);try{let e=await l.get(`/api/codex-accounts`);n(e.accounts),i(e.strategy),l.get(`/api/codex-accounts/usage`).then(o).catch(()=>{})}finally{c(!1)}},[]);(0,Z.useEffect)(()=>{q()},[q]);let te=async()=>{if(!(!p.trim()||W.current||U.current||V.current)){W.current=!0,v(!0),b(null);try{await l.post(`/api/codex-accounts/api-key`,{apiKey:p.trim(),label:h.trim()||void 0}),m(``),g(``),e(),await q()}catch(e){b(e.message)}finally{W.current=!1,v(!1)}}},J=(0,Z.useCallback)(()=>{H.current+=1,U.current=!1,G.current=!1,B.current?.(),B.current=null;let e=V.current;V.current=null,e&&l.del(`/api/codex-accounts/${e.method}-login/${e.id}`).catch(()=>{})},[]),Y=(0,Z.useCallback)(()=>{J(),S(null),w(!1),E(null),O(!1),A(``),M(!1)},[J]),ne=(0,Z.useCallback)((e,t)=>{let n=Date.now()+(t===`browser`?61e4:Ge),r=!1,i;B.current=()=>{r=!0,clearTimeout(i)};let a=async()=>{if(r)return;let o=null;try{o=await l.get(`/api/codex-accounts/${t}-login/${e}/status`)}catch{}if(!r){if(o?.state===`done`){Y(),g(``),K.current(),await q();return}if(o?.state===`error`||Date.now()>n){Y(),b(o?.state===`error`?o.error:`${t===`browser`?`Browser`:`Device`} login timed out.`);return}i=setTimeout(a,We)}};a()},[Y,q]);(0,Z.useEffect)(()=>J,[J]);let X=async e=>{if(U.current||V.current||W.current)return;U.current=!0;let t=++H.current;O(!0),b(null);try{let n=await l.post(`/api/codex-accounts/${e}-login`,{label:h.trim()||void 0});if(t!==H.current){l.del(`/api/codex-accounts/${e}-login/${n.id}`).catch(()=>{});return}V.current={id:n.id,method:e},e===`device`?(S(n),w(!0)):E(n),ne(n.id,e)}catch(e){t===H.current&&b(e.message)}finally{t===H.current&&(U.current=!1,O(!1))}};return{accounts:t,strategy:r,usages:a,loading:s,apiKey:p,setApiKey:m,label:h,setLabel:g,adding:_,err:y,setErr:b,device:x,deviceWaiting:C,backupPassword:N,setBackupPassword:P,exporting:F,importing:L,msg:ee,setMsg:z,toggling:d,load:q,addApiKey:te,startDevice:()=>X(`device`),startBrowser:()=>X(`browser`),browser:T,loginStarting:D,callbackUrl:k,setCallbackUrl:A,submittingCallback:j,submitCallback:async()=>{let e=V.current;if(e?.method!==`browser`||!k.trim()||G.current)return;let t=H.current;G.current=!0,M(!0),b(null);let n=k.trim();A(``);try{await l.post(`/api/codex-accounts/browser-login/${e.id}/callback`,{callbackUrl:n})}catch(e){t===H.current&&b(e.message)}finally{t===H.current&&(G.current=!1,M(!1))}},cancelLogin:Y,remove:async e=>{await l.del(`/api/codex-accounts/${e}`),await q()},toggle:async(e,t)=>{let n=t===`disabled`?`active`:`disabled`;f(t=>new Set(t).add(e)),b(null);try{await l.patch(`/api/codex-accounts/${e}`,{status:n}),await q()}catch(e){b(e.message||`Could not change the account`)}finally{f(t=>{let n=new Set(t);return n.delete(e),n})}},changeStrategy:async e=>{i(e);try{await l.put(`/api/codex-accounts/strategy`,{strategy:e})}catch{}},doExport:async()=>{if(!N.trim()){b(`Set a backup password first.`);return}I(!0),b(null),z(null);try{let t={"Content-Type":`application/json`},n=u();n&&(t.Authorization=`Bearer ${n}`);let r=await fetch(`/api/codex-accounts/export`,{method:`POST`,headers:t,body:JSON.stringify({password:N})});if(!r.ok){let e=await r.json().catch(()=>({}));throw Error(e.error??`Export failed: ${r.status}`)}let i=await r.text(),a=new Blob([i],{type:`application/json`}),o=document.createElement(`a`);o.href=URL.createObjectURL(a),o.download=`ppm-codex-accounts-backup.json`,o.click(),URL.revokeObjectURL(o.href),z(`Backup downloaded.`),e()}catch(e){b(e.message)}finally{I(!1)}},doImport:async t=>{if(!N.trim()){b(`Enter the backup password first.`);return}R(!0),b(null),z(null);try{let n=await t.text(),r=await l.post(`/api/codex-accounts/import`,{data:n,password:N});z(`Imported ${r.imported}${r.skipped?`, skipped ${r.skipped}`:``}.`),e(),await q()}catch(e){b(e.message)}finally{R(!1)}}}}function qe(){let[e,t]=(0,Z.useState)(null),n=Ke(()=>t(null));return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsx)(ie,{description:(0,Q.jsxs)(Q.Fragment,{children:[`Each Codex account keeps its own login (`,(0,Q.jsx)(`code`,{children:`CODEX_HOME`}),`). One is picked per chat by the rotation setting.`]}),onRefresh:()=>void n.load(),refreshing:n.loading,actions:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(m,{size:`sm`,className:`cursor-pointer gap-1.5`,onClick:()=>t(`add`),children:[(0,Q.jsx)(D,{className:`size-4`}),` Add account`]}),(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`cursor-pointer gap-1.5`,onClick:()=>t(`export`),children:[(0,Q.jsx)(i,{className:`size-4`}),` Export`]}),(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`cursor-pointer gap-1.5`,onClick:()=>t(`import`),children:[(0,Q.jsx)(E,{className:`size-4`}),` Import`]}),(0,Q.jsxs)(m,{size:`sm`,variant:`outline`,className:`cursor-pointer gap-1.5`,onClick:()=>t(`rotation`),children:[(0,Q.jsx)(x,{className:`size-4`}),` Rotation`]})]})}),(0,Q.jsx)(le,{message:n.msg??n.err,onDismiss:()=>{n.setMsg(null),n.setErr(null)}}),(0,Q.jsxs)(`section`,{className:`space-y-2`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsx)(`h3`,{className:`text-sm font-medium`,children:`Codex Accounts`}),(0,Q.jsx)(`span`,{className:`text-[10px] text-muted-foreground capitalize`,children:n.strategy.replace(`-`,` `)})]}),n.loading&&n.accounts.length===0?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-xs text-muted-foreground`,children:[(0,Q.jsx)(s,{className:`size-4 animate-spin`}),` Loading accounts...`]}):n.accounts.length===0?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-8 text-center`,children:[(0,Q.jsx)(o,{className:`size-5 text-muted-foreground`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No Codex accounts yet.`}),(0,Q.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Chats use your default `,(0,Q.jsx)(`code`,{children:`~/.codex`}),` login until you add one.`]})]}):(0,Q.jsx)(ue,{children:n.accounts.map(e=>{let t=n.usages[e.id]??{};return(0,Q.jsxs)(oe,{dense:!0,className:`min-w-[300px] shrink-0 snap-start`,"data-testid":`account-card`,"data-account-id":e.id,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`text-sm font-medium truncate flex-1 min-w-0`,children:e.label}),(0,Q.jsx)(`span`,{className:`text-[10px] uppercase tracking-wide text-text-subtle border border-border rounded px-1 shrink-0`,children:e.type}),e.planType&&(0,Q.jsx)(`span`,{className:`text-[10px] text-text-subtle shrink-0`,children:e.planType}),(0,Q.jsx)(b,{checked:e.status!==`disabled`,onCheckedChange:()=>void n.toggle(e.id,e.status??`active`),disabled:n.toggling.has(e.id),"aria-label":e.status===`disabled`?`Enable account`:`Disable account`,className:`cursor-pointer shrink-0`}),(0,Q.jsxs)(v,{children:[(0,Q.jsx)(ee,{asChild:!0,children:(0,Q.jsx)(`button`,{type:`button`,onClick:()=>void n.remove(e.id),"aria-label":`Remove account`,className:`p-2 rounded cursor-pointer text-text-subtle hover:text-error hover:bg-surface-elevated transition-colors shrink-0`,children:(0,Q.jsx)(C,{className:`size-4`})})}),(0,Q.jsx)(T,{side:`top`,children:`Remove account`})]})]}),(0,Q.jsx)(Ue,{usage:t})]},e.id)})})]}),(0,Q.jsx)(Re,{open:e===`add`,onOpenChange:e=>{e||n.cancelLogin(),t(e?`add`:null)},label:n.label,onLabelChange:n.setLabel,apiKey:n.apiKey,onApiKeyChange:n.setApiKey,adding:n.adding,onAddApiKey:()=>void n.addApiKey(),deviceWaiting:n.deviceWaiting,onStartDevice:()=>void n.startDevice(),device:n.device,browser:n.browser,onStartBrowser:()=>void n.startBrowser(),loginStarting:n.loginStarting,callbackUrl:n.callbackUrl,onCallbackUrlChange:n.setCallbackUrl,submittingCallback:n.submittingCallback,onSubmitCallback:()=>void n.submitCallback(),error:n.err}),(0,Q.jsx)(ze,{mode:e===`export`?`export`:e===`import`?`import`:null,onOpenChange:e=>{e||t(null)},password:n.backupPassword,onPasswordChange:n.setBackupPassword,busy:n.exporting||n.importing,onExport:()=>void n.doExport(),onImport:e=>void n.doImport(e),error:n.err}),(0,Q.jsx)(Ve,{open:e===`rotation`,onOpenChange:e=>t(e?`rotation`:null),strategy:n.strategy,onChange:e=>void n.changeStrategy(e)})]})}var Je=[{id:`claude`,label:`Claude`},{id:`codex`,label:`Codex`}];function Ye(){let[e,t]=(0,Z.useState)(null),[n,r]=(0,Z.useState)(`claude`);(0,Z.useEffect)(()=>{let e=!1;return W().then(n=>{e||t(new Set(Object.keys(n.providers??{})))}).catch(()=>{e||t(new Set([`claude`]))}),()=>{e=!0}},[]);let i=Je.filter(t=>t.id===`claude`||e?.has(t.id)),a=i.length>1;return(0,Q.jsxs)(`div`,{className:`space-y-4`,"data-testid":`accounts-pane`,"data-provider":n,children:[a&&(0,Q.jsx)(`div`,{className:`flex gap-1 border-b border-border/50`,children:i.map(e=>(0,Q.jsxs)(`button`,{onClick:()=>r(e.id),"data-testid":`accounts-tab-${e.id}`,"aria-current":n===e.id?`page`:void 0,className:`flex items-center gap-1.5 px-3 py-2 text-xs rounded-t transition-colors cursor-pointer ${n===e.id?`text-primary border-b-2 border-primary font-medium`:`text-text-subtle hover:text-text-secondary`}`,children:[(0,Q.jsx)(w,{providerId:e.id}),e.label]},e.id))}),e===null&&!a&&(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Q.jsx)(s,{className:`size-3 animate-spin`}),` Checking configured providers...`]}),n===`claude`?(0,Q.jsx)(Le,{}):(0,Q.jsx)(qe,{})]})}export{Ye as AccountsSettingsSection};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-BBdkypKW.js";import"./api-client-DwXlVfXP.js";import"./portal-container-context-DeLx1cOI.js";import"./panel-store-D42k25jy.js";import"./window-store-CfxP5yor.js";import"./tab-store-B2ip0-Mv.js";import"./use-is-mobile-Bi42QhIi.js";import{t as e}from"./ai-settings-section-M07DCjAI.js";export{e as AISettingsSection};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-BBdkypKW.js";import{i as e,n as t}from"./api-client-DwXlVfXP.js";export{t as api,e as projectUrl};
@@ -1 +0,0 @@
1
- import{K as e}from"./vendor-mermaid-CfY1-PkA.js";export{e as createArchitectureServices};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-D6fVXe3s.js";var t=e(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),n=e(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]);export{t as n,n as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-BBdkypKW.js";import{t as r}from"./explorer-body-CVx4qaIF.js";import"./use-coarse-long-press-BsBpxWup.js";import"./api-client-DwXlVfXP.js";import"./vendor-mermaid-CfY1-PkA.js";import"./settings-store-_s4xFcFq.js";import"./portal-container-context-DeLx1cOI.js";import"./panel-store-D42k25jy.js";import"./window-store-CfxP5yor.js";import"./tab-store-B2ip0-Mv.js";import"./context-menu-DM9CgxGh.js";import"./use-is-mobile-Bi42QhIi.js";import"./window-pip-registry-BWxaVLj5.js";import"./button-zgoXa9r7.js";import"./mobile-bottom-sheet-Ch1e_JBq.js";import"./use-visual-viewport-CNdG4QHH.js";import{Ct as i,ct as a,st as o}from"./index-DVNJ2W5R.js";var s=e(t(),1),c=n();function l({id:e,payload:t}){let{host:n,error:l}=a(),u=i(e=>e.discard);(0,s.useEffect)(()=>()=>u(e),[e,u]);let d=(typeof t?.path==`string`?t.path:``)||o()||n?.homedir||``;return d?(0,c.jsx)(r,{windowId:e,initialPath:d}):(0,c.jsx)(`div`,{className:`flex h-full items-center justify-center p-4 text-xs text-text-2`,children:l?`Could not reach the host: ${l}`:`Loading…`})}export{l as default};
@@ -1 +0,0 @@
1
- import{W as e}from"./vendor-mermaid-CfY1-PkA.js";export{e as createGitGraphServices};
@@ -1,2 +0,0 @@
1
- /*! tailwindcss v4.2.1 | 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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-scroll-snap-strictness:proximity;--tw-space-y-reverse:0;--tw-divide-x-reverse:0;--tw-border-style:solid;--tw-divide-y-reverse:0;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif;--font-mono:"Geist Mono", "Monaco", "Courier New", monospace;--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-400:oklch(75% .183 55.934);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-cyan-400:oklch(78.9% .154 211.53);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-purple-400:oklch(71.4% .203 305.504);--color-pink-400:oklch(71.8% .202 349.761);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--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);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif;--default-mono-font-family:"Geist Mono", "Monaco", "Courier New", monospace;--color-border:var(--border);--color-success:var(--success);--color-warning:var(--warning);--color-background:var(--bg-solid);--color-foreground:var(--text);--color-popover:var(--panel-2);--color-popover-foreground:var(--text);--color-primary:var(--accent);--color-primary-foreground:var(--accent-fg);--color-muted:var(--panel);--color-muted-foreground:var(--text-2);--color-accent:var(--panel-2);--color-text-secondary:var(--text-2);--color-text-subtle:var(--text-3)}}@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}::-webkit-calendar-picker-indicator{line-height:1}:-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{.\@container{container-type:inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);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}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-4{inset:calc(var(--spacing) * 4)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-0\.5{top:calc(var(--spacing) * -.5)}.-top-1{top:calc(var(--spacing) * -1)}.top-0{top:calc(var(--spacing) * 0)}.top-0\.5{top:calc(var(--spacing) * .5)}.top-1{top:calc(var(--spacing) * 1)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-4{top:calc(var(--spacing) * 4)}.top-\[50\%\]{top:50%}.top-\[calc\(env\(safe-area-inset-top\,0px\)\+2\.75rem\)\]{top:calc(env(safe-area-inset-top,0px) + 2.75rem)}.top-\[max\(1rem\,env\(safe-area-inset-top\)\)\]{top:max(1rem, env(safe-area-inset-top))}.top-full{top:100%}.-right-0\.5{right:calc(var(--spacing) * -.5)}.-right-1{right:calc(var(--spacing) * -1)}.right-0{right:calc(var(--spacing) * 0)}.right-1{right:calc(var(--spacing) * 1)}.right-1\.5{right:calc(var(--spacing) * 1.5)}.right-2{right:calc(var(--spacing) * 2)}.right-2\.5{right:calc(var(--spacing) * 2.5)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-8{right:calc(var(--spacing) * 8)}.right-10{right:calc(var(--spacing) * 10)}.right-\[max\(1rem\,env\(safe-area-inset-right\)\)\]{right:max(1rem, env(safe-area-inset-right))}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-1{bottom:calc(var(--spacing) * 1)}.bottom-2{bottom:calc(var(--spacing) * 2)}.bottom-3{bottom:calc(var(--spacing) * 3)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-20{bottom:calc(var(--spacing) * 20)}.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{left:calc(var(--spacing) * 1)}.left-1\.5{left:calc(var(--spacing) * 1.5)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-2\.5{left:calc(var(--spacing) * 2.5)}.left-3{left:calc(var(--spacing) * 3)}.left-\[50\%\]{left:50%}.left-\[calc\(100\%\+8px\)\]{left:calc(100% + 8px)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-38{z-index:38}.z-40{z-index:40}.z-50{z-index:50}.z-\[45\]{z-index:45}.z-\[100\]{z-index:100}.z-\[200\]{z-index:200}.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-1{margin:calc(var(--spacing) * 1)}.m-4{margin:calc(var(--spacing) * 4)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-3{margin-inline:calc(var(--spacing) * -3)}.mx-0\.5{margin-inline:calc(var(--spacing) * .5)}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-1\.5{margin-inline:calc(var(--spacing) * 1.5)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-auto{margin-inline:auto}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.my-1{margin-block:calc(var(--spacing) * 1)}.my-2{margin-block:calc(var(--spacing) * 2)}.-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}.-mt-2{margin-top:calc(var(--spacing) * -2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-px{margin-top:1px}.-mr-1{margin-right:calc(var(--spacing) * -1)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.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)}.-ml-2{margin-left:calc(var(--spacing) * -2)}.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-5{margin-left:calc(var(--spacing) * 5)}.ml-\[11px\]{margin-left:11px}.ml-\[18px\]{margin-left:18px}.ml-auto{margin-left:auto}.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}.\[field-sizing\:content\]{field-sizing:content}.aspect-square{aspect-ratio:1}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-1\/2{width:50%;height:50%}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.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-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}.size-40{width:calc(var(--spacing) * 40);height:calc(var(--spacing) * 40)}.size-\[2px\]{width:2px;height:2px}.size-\[5px\]{width:5px;height:5px}.size-\[7px\]{width:7px;height:7px}.size-\[11px\]{width:11px;height:11px}.size-\[13px\]{width:13px;height:13px}.size-\[15px\]{width:15px;height:15px}.size-\[17px\]{width:17px;height:17px}.size-\[18px\]{width:18px;height:18px}.size-\[26px\]{width:26px;height:26px}.size-\[30px\]{width:30px;height:30px}.size-\[34px\]{width:34px;height:34px}.size-\[38px\]{width:38px;height:38px}.size-\[52px\]{width:52px;height:52px}.size-full{width:100%;height:100%}.size-px{width:1px;height:1px}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-1\/3{height:33.3333%}.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-4\.5{height:calc(var(--spacing) * 4.5)}.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-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-\[11px\]{height:11px}.h-\[13px\]{height:13px}.h-\[18px\]{height:18px}.h-\[26px\]{height:26px}.h-\[30px\]{height:30px}.h-\[40\%\]{height:40%}.h-\[41px\]{height:41px}.h-\[50px\]{height:50px}.h-\[70vh\]{height:70vh}.h-\[85vh\]{height:85vh}.h-\[356px\]{height:356px}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[calc\(var\(--sheet-vh\,100dvh\)\*0\.6\)\]{height:calc(var(--sheet-vh,100dvh) * .6)}.h-\[calc\(var\(--sheet-vh\,100dvh\)\*0\.92\)\]{height:calc(var(--sheet-vh,100dvh) * .92)}.h-\[calc\(var\(--sheet-vh\,100dvh\)\+var\(--sheet-kb\,0px\)\)\]{height:calc(var(--sheet-vh,100dvh) + var(--sheet-kb,0px))}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-\[var\(--sheet-vh\)\]{height:var(--sheet-vh)}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-16{max-height:calc(var(--spacing) * 16)}.max-h-20{max-height:calc(var(--spacing) * 20)}.max-h-24{max-height:calc(var(--spacing) * 24)}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-36{max-height:calc(var(--spacing) * 36)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-52{max-height:calc(var(--spacing) * 52)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[30vh\]{max-height:30vh}.max-h-\[35vh\]{max-height:35vh}.max-h-\[40vh\]{max-height:40vh}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60\%\]{max-height:60%}.max-h-\[60vh\]{max-height:60vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[72vh\]{max-height:72vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85\%\]{max-height:85%}.max-h-\[85dvh\]{max-height:85dvh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90dvh\]{max-height:90dvh}.max-h-\[90px\]{max-height:90px}.max-h-\[90vh\]{max-height:90vh}.max-h-\[120px\]{max-height:120px}.max-h-\[180px\]{max-height:180px}.max-h-\[200px\]{max-height:200px}.max-h-\[280px\]{max-height:280px}.max-h-\[300px\]{max-height:300px}.max-h-\[350px\]{max-height:350px}.max-h-\[400px\]{max-height:400px}.max-h-\[680px\]{max-height:680px}.max-h-\[calc\(12rem-30px\)\]{max-height:calc(12rem - 30px)}.max-h-full{max-height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-\[28px\]{min-height:28px}.min-h-\[32px\]{min-height:32px}.min-h-\[36px\]{min-height:36px}.min-h-\[38px\]{min-height:38px}.min-h-\[40px\]{min-height:40px}.min-h-\[41px\]{min-height:41px}.min-h-\[44px\]{min-height:44px}.min-h-\[52px\]{min-height:52px}.min-h-\[60px\]{min-height:60px}.min-h-dvh{min-height:100dvh}.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\/3{width:33.3333%}.w-2{width:calc(var(--spacing) * 2)}.w-2\/5{width:40%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-4\.5{width:calc(var(--spacing) * 4.5)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.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-\[3px\]{width:3px}.w-\[34px\]{width:34px}.w-\[46px\]{width:46px}.w-\[52px\]{width:52px}.w-\[60px\]{width:60px}.w-\[90vw\]{width:90vw}.w-\[180px\]{width:180px}.w-\[200px\]{width:200px}.w-\[210px\]{width:210px}.w-\[220px\]{width:220px}.w-\[340px\]{width:340px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-24{max-width:calc(var(--spacing) * 24)}.max-w-32{max-width:calc(var(--spacing) * 32)}.max-w-40{max-width:calc(var(--spacing) * 40)}.max-w-48{max-width:calc(var(--spacing) * 48)}.max-w-60{max-width:calc(var(--spacing) * 60)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-\[9rem\]{max-width:9rem}.max-w-\[12rem\]{max-width:12rem}.max-w-\[45\%\]{max-width:45%}.max-w-\[80\%\]{max-width:80%}.max-w-\[80px\]{max-width:80px}.max-w-\[90px\]{max-width:90px}.max-w-\[95vw\]{max-width:95vw}.max-w-\[96px\]{max-width:96px}.max-w-\[100px\]{max-width:100px}.max-w-\[110px\]{max-width:110px}.max-w-\[120px\]{max-width:120px}.max-w-\[140px\]{max-width:140px}.max-w-\[150px\]{max-width:150px}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[260px\]{max-width:260px}.max-w-\[300px\]{max-width:300px}.max-w-\[392px\]{max-width:392px}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.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-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-11{min-width:calc(var(--spacing) * 11)}.min-w-40{min-width:calc(var(--spacing) * 40)}.min-w-\[4\.5rem\]{min-width:4.5rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[16px\]{min-width:16px}.min-w-\[18px\]{min-width:18px}.min-w-\[36px\]{min-width:36px}.min-w-\[44px\]{min-width:44px}.min-w-\[52px\]{min-width:52px}.min-w-\[120px\]{min-width:120px}.min-w-\[140px\]{min-width:140px}.min-w-\[160px\]{min-width:160px}.min-w-\[190px\]{min-width:190px}.min-w-\[220px\]{min-width:220px}.min-w-\[240px\]{min-width:240px}.min-w-\[300px\]{min-width:300px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-full{--tw-translate-x:-100%;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-0\.5{--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;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)}.translate-y-0{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0\.5{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-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-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-e-resize{cursor:e-resize}.cursor-grab{cursor:grab}.cursor-help{cursor:help}.cursor-n-resize{cursor:n-resize}.cursor-ne-resize{cursor:ne-resize}.cursor-not-allowed{cursor:not-allowed}.cursor-nw-resize{cursor:nw-resize}.cursor-pointer{cursor:pointer}.cursor-row-resize{cursor:row-resize}.cursor-s-resize{cursor:s-resize}.cursor-se-resize{cursor:se-resize}.cursor-sw-resize{cursor:sw-resize}.cursor-text{cursor:text}.cursor-w-resize{cursor:w-resize}.cursor-zoom-in{cursor:zoom-in}.touch-pan-x{--tw-pan-x:pan-x;touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-mandatory{--tw-scroll-snap-strictness:mandatory}.snap-start{scroll-snap-align:start}.scroll-my-1{scroll-margin-block:calc(var(--spacing) * 1)}.\[appearance\:textfield\]{appearance:textfield}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[7rem_1fr\]{grid-template-columns:7rem 1fr}.grid-cols-\[16px_1fr_auto_10px\]{grid-template-columns:16px 1fr auto 10px}.grid-cols-\[80px_1fr\]{grid-template-columns:80px 1fr}.grid-cols-\[132px_1fr\]{grid-template-columns:132px 1fr}.grid-cols-\[294px_1fr\]{grid-template-columns:294px 1fr}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-cols-\[auto_auto_1fr\]{grid-template-columns:auto auto 1fr}.grid-cols-\[var\(--sysmon-grid-n\)\]{grid-template-columns:var(--sysmon-grid-n)}.grid-rows-\[minmax\(0\,1fr\)\]{grid-template-rows:minmax(0,1fr)}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.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-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-evenly{justify-content:space-evenly}.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-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-\[1\.5px\]{gap:1.5px}.gap-\[1px\]{gap:1px}.gap-\[2px\]{gap:2px}.gap-\[3px\]{gap:3px}.gap-\[5px\]{gap:5px}.gap-\[6px\]{gap:6px}.gap-\[7px\]{gap:7px}.gap-\[9px\]{gap:9px}.gap-\[10px\]{gap:10px}.gap-\[11px\]{gap:11px}.gap-\[14px\]{gap:14px}.gap-\[22px\]{gap:22px}.gap-px{gap:1px}: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-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * 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-\[14px\]{column-gap:14px}.gap-x-\[18px\]{column-gap:18px}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.gap-y-\[4px\]{row-gap:4px}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--border)}.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}.overflow-y-hidden{overflow-y:hidden}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[1px\]{border-radius:1px}.rounded-\[2px\]{border-radius:2px}.rounded-\[7px\]{border-radius:7px}.rounded-\[8px\]{border-radius:8px}.rounded-\[9px\]{border-radius:9px}.rounded-\[10px\]{border-radius:10px}.rounded-\[11px\]{border-radius:11px}.rounded-\[inherit\]{border-radius:inherit}.rounded-\[var\(--rad\)\]{border-radius:var(--rad)}.rounded-\[var\(--rad-sm\)\]{border-radius:var(--rad-sm)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:12px}.rounded-md{border-radius:8px}.rounded-sm{border-radius:6px}.rounded-xl{border-radius:var(--radius-xl)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.rounded-t-\[14px\]{border-top-left-radius:14px;border-top-right-radius:14px}.rounded-t-\[var\(--x-radius\)\]{border-top-left-radius:var(--x-radius);border-top-right-radius:var(--x-radius)}.rounded-t-md{border-top-left-radius:8px;border-top-right-radius:8px}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.rounded-l-md{border-top-left-radius:8px;border-bottom-left-radius:8px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-full{border-top-right-radius:3.40282e38px;border-bottom-right-radius:3.40282e38px}.rounded-r-md{border-top-right-radius:8px;border-bottom-right-radius:8px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-r-sm{border-top-right-radius:6px;border-bottom-right-radius:6px}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-\[8px\],.rounded-b-md{border-bottom-right-radius:8px;border-bottom-left-radius:8px}.rounded-br{border-bottom-right-radius:.25rem}.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-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-none{--tw-border-style:none;border-style:none}.border-\[var\(--img-ghost-border\)\]{border-color:var(--img-ghost-border)}.border-\[var\(--img-plate-border\)\]{border-color:var(--img-plate-border)}.border-accent-wash-border{border-color:var(--accent-wash-border)}.border-accent\/20{border-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.border-accent\/20{border-color:color-mix(in oklab, var(--panel-2) 20%, transparent)}}.border-background{border-color:var(--bg-solid)}.border-border{border-color:var(--border)}.border-border-soft{border-color:var(--border-soft)}.border-border\/30{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/30{border-color:color-mix(in oklab, var(--border) 30%, transparent)}}.border-border\/40{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/40{border-color:color-mix(in oklab, var(--border) 40%, transparent)}}.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--border) 50%, transparent)}}.border-border\/60{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/60{border-color:color-mix(in oklab, var(--border) 60%, transparent)}}.border-current{border-color:currentColor}.border-destructive{border-color:var(--error)}.border-emerald-500\/30{border-color:#00bb7f4d}@supports (color:color-mix(in lab, red, red)){.border-emerald-500\/30{border-color:color-mix(in oklab, var(--color-emerald-500) 30%, transparent)}}.border-error,.border-error\/20{border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.border-error\/20{border-color:color-mix(in oklab, var(--error) 20%, transparent)}}.border-error\/25{border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.border-error\/25{border-color:color-mix(in oklab, var(--error) 25%, transparent)}}.border-error\/30{border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.border-error\/30{border-color:color-mix(in oklab, var(--error) 30%, transparent)}}.border-error\/40{border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.border-error\/40{border-color:color-mix(in oklab, var(--error) 40%, transparent)}}.border-input{border-color:var(--border)}.border-muted{border-color:var(--panel)}.border-primary,.border-primary\/20{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.border-primary\/20{border-color:color-mix(in oklab, var(--accent) 20%, transparent)}}.border-primary\/30{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.border-primary\/30{border-color:color-mix(in oklab, var(--accent) 30%, transparent)}}.border-primary\/40{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.border-primary\/40{border-color:color-mix(in oklab, var(--accent) 40%, transparent)}}.border-primary\/50{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.border-primary\/50{border-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.border-sky-500\/25{border-color:#00a5ef40}@supports (color:color-mix(in lab, red, red)){.border-sky-500\/25{border-color:color-mix(in oklab, var(--color-sky-500) 25%, transparent)}}.border-sky-500\/30{border-color:#00a5ef4d}@supports (color:color-mix(in lab, red, red)){.border-sky-500\/30{border-color:color-mix(in oklab, var(--color-sky-500) 30%, transparent)}}.border-success\/30{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.border-success\/30{border-color:color-mix(in oklab, var(--success) 30%, transparent)}}.border-text-subtle{border-color:var(--text-3)}.border-transparent{border-color:#0000}.border-warning\/20{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.border-warning\/20{border-color:color-mix(in oklab, var(--warning) 20%, transparent)}}.border-warning\/30{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.border-warning\/30{border-color:color-mix(in oklab, var(--warning) 30%, transparent)}}.border-warning\/40{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.border-warning\/40{border-color:color-mix(in oklab, var(--warning) 40%, transparent)}}.border-warning\/50{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.border-warning\/50{border-color:color-mix(in oklab, var(--warning) 50%, transparent)}}.border-white{border-color:var(--color-white)}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.border-white\/10{border-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab, red, red)){.border-white\/20{border-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.border-t-primary{border-top-color:var(--accent)}.border-t-transparent{border-top-color:#0000}.border-r-border\/30{border-right-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-r-border\/30{border-right-color:color-mix(in oklab, var(--border) 30%, transparent)}}.border-l-primary{border-left-color:var(--accent)}.border-l-transparent{border-left-color:#0000}.bg-\[var\(--img-ghost\)\]{background-color:var(--img-ghost)}.bg-\[var\(--img-plate\)\]{background-color:var(--img-plate)}.bg-\[var\(--x-sidebar-bg\,var\(--panel-2\)\)\]{background-color:var(--x-sidebar-bg,var(--panel-2))}.bg-\[var\(--x-titlebar-bg\)\]{background-color:var(--x-titlebar-bg)}.bg-\[var\(--x-toolbar-bg\,var\(--panel-2\)\)\]{background-color:var(--x-toolbar-bg,var(--panel-2))}.bg-accent{background-color:var(--panel-2)}.bg-accent-2\/15{background-color:var(--accent-2)}@supports (color:color-mix(in lab, red, red)){.bg-accent-2\/15{background-color:color-mix(in oklab, var(--accent-2) 15%, transparent)}}.bg-accent-2\/20{background-color:var(--accent-2)}@supports (color:color-mix(in lab, red, red)){.bg-accent-2\/20{background-color:color-mix(in oklab, var(--accent-2) 20%, transparent)}}.bg-accent-wash{background-color:var(--accent-wash)}.bg-accent\/10{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/10{background-color:color-mix(in oklab, var(--panel-2) 10%, transparent)}}.bg-accent\/15{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/15{background-color:color-mix(in oklab, var(--panel-2) 15%, transparent)}}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/10{background-color:color-mix(in oklab, var(--color-amber-500) 10%, transparent)}}.bg-amber-500\/15{background-color:#f99c0026}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/15{background-color:color-mix(in oklab, var(--color-amber-500) 15%, transparent)}}.bg-amber-500\/20{background-color:#f99c0033}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/20{background-color:color-mix(in oklab, var(--color-amber-500) 20%, transparent)}}.bg-background,.bg-background\/40{background-color:var(--bg-solid)}@supports (color:color-mix(in lab, red, red)){.bg-background\/40{background-color:color-mix(in oklab, var(--bg-solid) 40%, transparent)}}.bg-background\/50{background-color:var(--bg-solid)}@supports (color:color-mix(in lab, red, red)){.bg-background\/50{background-color:color-mix(in oklab, var(--bg-solid) 50%, transparent)}}.bg-background\/60{background-color:var(--bg-solid)}@supports (color:color-mix(in lab, red, red)){.bg-background\/60{background-color:color-mix(in oklab, var(--bg-solid) 60%, transparent)}}.bg-background\/70{background-color:var(--bg-solid)}@supports (color:color-mix(in lab, red, red)){.bg-background\/70{background-color:color-mix(in oklab, var(--bg-solid) 70%, transparent)}}.bg-background\/80{background-color:var(--bg-solid)}@supports (color:color-mix(in lab, red, red)){.bg-background\/80{background-color:color-mix(in oklab, var(--bg-solid) 80%, transparent)}}.bg-background\/95{background-color:var(--bg-solid)}@supports (color:color-mix(in lab, red, red)){.bg-background\/95{background-color:color-mix(in oklab, var(--bg-solid) 95%, transparent)}}.bg-bg{background-color:var(--bg-solid)}.bg-black{background-color:var(--color-black)}.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\/70{background-color:#000000b3}@supports (color:color-mix(in lab, red, red)){.bg-black\/70{background-color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.bg-black\/85{background-color:#000000d9}@supports (color:color-mix(in lab, red, red)){.bg-black\/85{background-color:color-mix(in oklab, var(--color-black) 85%, transparent)}}.bg-black\/90{background-color:#000000e6}@supports (color:color-mix(in lab, red, red)){.bg-black\/90{background-color:color-mix(in oklab, var(--color-black) 90%, transparent)}}.bg-border{background-color:var(--border)}.bg-border-soft{background-color:var(--border-soft)}.bg-border\/30{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.bg-border\/30{background-color:color-mix(in oklab, var(--border) 30%, transparent)}}.bg-border\/50{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.bg-border\/50{background-color:color-mix(in oklab, var(--border) 50%, transparent)}}.bg-card{background-color:var(--panel)}.bg-current{background-color:currentColor}.bg-destructive,.bg-destructive\/5{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/5{background-color:color-mix(in oklab, var(--error) 5%, transparent)}}.bg-destructive\/10{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--error) 10%, transparent)}}.bg-destructive\/15{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/15{background-color:color-mix(in oklab, var(--error) 15%, transparent)}}.bg-diff-added{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-diff-added{background-color:color-mix(in srgb, var(--success) 16%, transparent)}}.bg-diff-added-word{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-diff-added-word{background-color:color-mix(in srgb, var(--success) 40%, transparent)}}.bg-diff-removed{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-diff-removed{background-color:color-mix(in srgb, var(--error) 16%, transparent)}}.bg-diff-removed-word{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-diff-removed-word{background-color:color-mix(in srgb, var(--error) 40%, transparent)}}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/10{background-color:color-mix(in oklab, var(--color-emerald-500) 10%, transparent)}}.bg-error,.bg-error\/5{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-error\/5{background-color:color-mix(in oklab, var(--error) 5%, transparent)}}.bg-error\/10{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-error\/10{background-color:color-mix(in oklab, var(--error) 10%, transparent)}}.bg-error\/15{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-error\/15{background-color:color-mix(in oklab, var(--error) 15%, transparent)}}.bg-error\/20{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-error\/20{background-color:color-mix(in oklab, var(--error) 20%, transparent)}}.bg-error\/80{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.bg-error\/80{background-color:color-mix(in oklab, var(--error) 80%, transparent)}}.bg-foreground{background-color:var(--text)}.bg-info\/15{background-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.bg-info\/15{background-color:color-mix(in oklab, var(--info) 15%, transparent)}}.bg-input{background-color:var(--border)}.bg-muted,.bg-muted\/30{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--panel) 30%, transparent)}}.bg-muted\/40{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/40{background-color:color-mix(in oklab, var(--panel) 40%, transparent)}}.bg-muted\/50{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--panel) 50%, transparent)}}.bg-panel{background-color:var(--panel)}.bg-panel-2,.bg-panel-2\/30{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-panel-2\/30{background-color:color-mix(in oklab, var(--panel-2) 30%, transparent)}}.bg-panel-2\/40{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-panel-2\/40{background-color:color-mix(in oklab, var(--panel-2) 40%, transparent)}}.bg-popover{background-color:var(--panel-2)}.bg-primary,.bg-primary\/5{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/5{background-color:color-mix(in oklab, var(--accent) 5%, transparent)}}.bg-primary\/10{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--accent) 10%, transparent)}}.bg-primary\/15{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/15{background-color:color-mix(in oklab, var(--accent) 15%, transparent)}}.bg-primary\/20{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--accent) 20%, transparent)}}.bg-primary\/70{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/70{background-color:color-mix(in oklab, var(--accent) 70%, transparent)}}.bg-primary\/80{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/80{background-color:color-mix(in oklab, var(--accent) 80%, transparent)}}.bg-primary\/\[0\.12\]{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/\[0\.12\]{background-color:color-mix(in oklab, var(--accent) 12%, transparent)}}.bg-rail{background-color:var(--rail)}.bg-secondary{background-color:var(--panel-2)}.bg-sky-500\/10{background-color:#00a5ef1a}@supports (color:color-mix(in lab, red, red)){.bg-sky-500\/10{background-color:color-mix(in oklab, var(--color-sky-500) 10%, transparent)}}.bg-sky-500\/15{background-color:#00a5ef26}@supports (color:color-mix(in lab, red, red)){.bg-sky-500\/15{background-color:color-mix(in oklab, var(--color-sky-500) 15%, transparent)}}.bg-success,.bg-success\/5{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-success\/5{background-color:color-mix(in oklab, var(--success) 5%, transparent)}}.bg-success\/10{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-success\/10{background-color:color-mix(in oklab, var(--success) 10%, transparent)}}.bg-success\/15{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-success\/15{background-color:color-mix(in oklab, var(--success) 15%, transparent)}}.bg-success\/20{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-success\/20{background-color:color-mix(in oklab, var(--success) 20%, transparent)}}.bg-success\/30{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-success\/30{background-color:color-mix(in oklab, var(--success) 30%, transparent)}}.bg-success\/60{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-success\/60{background-color:color-mix(in oklab, var(--success) 60%, transparent)}}.bg-success\/70{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.bg-success\/70{background-color:color-mix(in oklab, var(--success) 70%, transparent)}}.bg-surface{background-color:var(--panel)}.bg-surface-elevated,.bg-surface-elevated\/40{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-surface-elevated\/40{background-color:color-mix(in oklab, var(--panel-2) 40%, transparent)}}.bg-surface-elevated\/50{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-surface-elevated\/50{background-color:color-mix(in oklab, var(--panel-2) 50%, transparent)}}.bg-surface-elevated\/55{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-surface-elevated\/55{background-color:color-mix(in oklab, var(--panel-2) 55%, transparent)}}.bg-surface-elevated\/60{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-surface-elevated\/60{background-color:color-mix(in oklab, var(--panel-2) 60%, transparent)}}.bg-surface-elevated\/80{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-surface-elevated\/80{background-color:color-mix(in oklab, var(--panel-2) 80%, transparent)}}.bg-surface-elevated\/95{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.bg-surface-elevated\/95{background-color:color-mix(in oklab, var(--panel-2) 95%, transparent)}}.bg-surface\/30{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.bg-surface\/30{background-color:color-mix(in oklab, var(--panel) 30%, transparent)}}.bg-surface\/40{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.bg-surface\/40{background-color:color-mix(in oklab, var(--panel) 40%, transparent)}}.bg-surface\/50{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.bg-surface\/50{background-color:color-mix(in oklab, var(--panel) 50%, transparent)}}.bg-surface\/60{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.bg-surface\/60{background-color:color-mix(in oklab, var(--panel) 60%, transparent)}}.bg-text-3,.bg-text-3\/20{background-color:var(--text-3)}@supports (color:color-mix(in lab, red, red)){.bg-text-3\/20{background-color:color-mix(in oklab, var(--text-3) 20%, transparent)}}.bg-text-subtle{background-color:var(--text-3)}.bg-transparent{background-color:#0000}.bg-warning,.bg-warning\/5{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/5{background-color:color-mix(in oklab, var(--warning) 5%, transparent)}}.bg-warning\/10{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/10{background-color:color-mix(in oklab, var(--warning) 10%, transparent)}}.bg-warning\/15{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/15{background-color:color-mix(in oklab, var(--warning) 15%, transparent)}}.bg-warning\/20{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/20{background-color:color-mix(in oklab, var(--warning) 20%, transparent)}}.bg-warning\/30{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/30{background-color:color-mix(in oklab, var(--warning) 30%, transparent)}}.bg-warning\/40{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/40{background-color:color-mix(in oklab, var(--warning) 40%, transparent)}}.bg-warning\/50{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/50{background-color:color-mix(in oklab, var(--warning) 50%, transparent)}}.bg-warning\/80{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/80{background-color:color-mix(in oklab, var(--warning) 80%, transparent)}}.bg-warning\/85{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.bg-warning\/85{background-color:color-mix(in oklab, var(--warning) 85%, transparent)}}.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\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.bg-white\/10{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.bg-white\/15{background-color:#ffffff26}@supports (color:color-mix(in lab, red, red)){.bg-white\/15{background-color:color-mix(in oklab, var(--color-white) 15%, transparent)}}.bg-white\/20{background-color:#fff3}@supports (color:color-mix(in lab, red, red)){.bg-white\/20{background-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.bg-gradient-to-l{--tw-gradient-position:to left in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-background{--tw-gradient-from:var(--bg-solid);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-surface{--tw-gradient-from:var(--panel);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-70\%{--tw-gradient-from-position:70%}.via-background{--tw-gradient-via:var(--bg-solid);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.fill-foreground{fill:var(--text)}.fill-primary{fill:var(--accent)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.p-\[14px\]{padding:14px}.p-px{padding:1px}.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-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[3px\]{padding-inline:3px}.px-\[9px\]{padding-inline:9px}.py-0{padding-block:calc(var(--spacing) * 0)}.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-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.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-\[2\.5px\]{padding-block:2.5px}.py-\[5px\]{padding-block:5px}.py-\[7px\]{padding-block:7px}.py-px{padding-block:1px}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-1\.5{padding-top:calc(var(--spacing) * 1.5)}.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-px{padding-top:1px}.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-6{padding-right:calc(var(--spacing) * 6)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-12{padding-right:calc(var(--spacing) * 12)}.pb-0\.5{padding-bottom:calc(var(--spacing) * .5)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.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-8{padding-bottom:calc(var(--spacing) * 8)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.pb-\[max\(0\.5rem\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(.5rem, env(safe-area-inset-bottom))}.pb-\[max\(0\.75rem\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(.75rem, env(safe-area-inset-bottom))}.pb-\[max\(0\.375rem\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(.375rem, env(safe-area-inset-bottom))}.pb-\[var\(--sheet-kb\,0px\)\]{padding-bottom:var(--sheet-kb,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-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-3\.5{padding-left:calc(var(--spacing) * 3.5)}.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-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:Geist Mono,Monaco,Courier New,monospace}.font-sans{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--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-\[6px\]{font-size:6px}.text-\[7px\]{font-size:7px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-\[1\.4\]{--tw-leading:1.4;line-height:1.4}.leading-none{--tw-leading:1;line-height:1}.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);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.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\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-\[0\.05em\]{--tw-tracking:.05em;letter-spacing:.05em}.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)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#04130c\]{color:#04130c}.text-\[var\(--img-meta-label\)\]{color:var(--img-meta-label)}.text-accent{color:var(--panel-2)}.text-accent-2{color:var(--accent-2)}.text-accent-foreground{color:var(--text)}.text-amber-300{color:var(--color-amber-300)}.text-amber-400{color:var(--color-amber-400)}.text-amber-500{color:var(--color-amber-500)}.text-background{color:var(--bg-solid)}.text-black\/60{color:#0009}@supports (color:color-mix(in lab, red, red)){.text-black\/60{color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.text-blue-300{color:var(--color-blue-300)}.text-blue-400{color:var(--color-blue-400)}.text-cyan-400{color:var(--color-cyan-400)}.text-destructive{color:var(--error)}.text-destructive-foreground{color:var(--accent-fg)}.text-destructive\/70{color:var(--error)}@supports (color:color-mix(in lab, red, red)){.text-destructive\/70{color:color-mix(in oklab, var(--error) 70%, transparent)}}.text-emerald-400{color:var(--color-emerald-400)}.text-emerald-500{color:var(--color-emerald-500)}.text-error,.text-error\/70{color:var(--error)}@supports (color:color-mix(in lab, red, red)){.text-error\/70{color:color-mix(in oklab, var(--error) 70%, transparent)}}.text-foreground,.text-foreground\/50{color:var(--text)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/50{color:color-mix(in oklab, var(--text) 50%, transparent)}}.text-foreground\/60{color:var(--text)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/60{color:color-mix(in oklab, var(--text) 60%, transparent)}}.text-foreground\/90{color:var(--text)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/90{color:color-mix(in oklab, var(--text) 90%, transparent)}}.text-green-300{color:var(--color-green-300)}.text-green-400{color:var(--color-green-400)}.text-info{color:var(--info)}.text-muted-foreground,.text-muted-foreground\/40{color:var(--text-2)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/40{color:color-mix(in oklab, var(--text-2) 40%, transparent)}}.text-muted-foreground\/50{color:var(--text-2)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/50{color:color-mix(in oklab, var(--text-2) 50%, transparent)}}.text-muted-foreground\/60{color:var(--text-2)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/60{color:color-mix(in oklab, var(--text-2) 60%, transparent)}}.text-muted-foreground\/70{color:var(--text-2)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/70{color:color-mix(in oklab, var(--text-2) 70%, transparent)}}.text-orange-300{color:var(--color-orange-300)}.text-orange-400{color:var(--color-orange-400)}.text-pink-400{color:var(--color-pink-400)}.text-popover-foreground{color:var(--text)}.text-primary{color:var(--accent)}.text-primary-foreground{color:var(--accent-fg)}.text-primary\/70{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.text-primary\/70{color:color-mix(in oklab, var(--accent) 70%, transparent)}}.text-purple-400{color:var(--color-purple-400)}.text-red-300{color:var(--color-red-300)}.text-red-400{color:var(--color-red-400)}.text-secondary-foreground{color:var(--text)}.text-sky-500{color:var(--color-sky-500)}.text-sky-600{color:var(--color-sky-600)}.text-success{color:var(--success)}.text-text{color:var(--text)}.text-text-2{color:var(--text-2)}.text-text-3{color:var(--text-3)}.text-text-primary{color:var(--text)}.text-text-secondary{color:var(--text-2)}.text-text-subtle,.text-text-subtle\/50{color:var(--text-3)}@supports (color:color-mix(in lab, red, red)){.text-text-subtle\/50{color:color-mix(in oklab, var(--text-3) 50%, transparent)}}.text-text-subtle\/60{color:var(--text-3)}@supports (color:color-mix(in lab, red, red)){.text-text-subtle\/60{color:color-mix(in oklab, var(--text-3) 60%, transparent)}}.text-text-subtle\/80{color:var(--text-3)}@supports (color:color-mix(in lab, red, red)){.text-text-subtle\/80{color:color-mix(in oklab, var(--text-3) 80%, transparent)}}.text-warning,.text-warning\/80{color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.text-warning\/80{color:color-mix(in oklab, var(--warning) 80%, transparent)}}.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\/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-yellow-300{color:var(--color-yellow-300)}.text-yellow-400{color:var(--color-yellow-400)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.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}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-\[var\(--color-primary\)\]{accent-color:var(--color-primary)}.accent-primary{accent-color:var(--accent)}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-45{opacity:.45}.opacity-50{opacity:.5}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.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-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.6\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#0009);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\,\.4\)\]{--tw-shadow:0 4px 12px var(--tw-shadow-color,#0006);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[inset_0_2px_0_var\(--accent\)\]{--tw-shadow:inset 0 2px 0 var(--tw-shadow-color,var(--accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[inset_2px_0_0_var\(--accent\)\]{--tw-shadow:inset 2px 0 0 var(--tw-shadow-color,var(--accent));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\(--img-plate-shadow\)\]{--tw-shadow:var(--img-plate-shadow);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-float\)\]{--tw-shadow:var(--shadow-float);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-panel\)\]{--tw-shadow:var(--shadow-panel);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 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px 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-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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-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 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-xs{--tw-shadow:0 1px 2px 0 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)}.ring{--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-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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-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-2{--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)}.ring-\[1\.5px\]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1.5px + 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-\[3px\]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-black\/20{--tw-shadow-color:#0003}@supports (color:color-mix(in lab, red, red)){.shadow-black\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-black) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-black\/40{--tw-shadow-color:#0006}@supports (color:color-mix(in lab, red, red)){.shadow-black\/40{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-black) 40%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-accent-2\/35{--tw-ring-color:var(--accent-2)}@supports (color:color-mix(in lab, red, red)){.ring-accent-2\/35{--tw-ring-color:color-mix(in oklab, var(--accent-2) 35%, transparent)}}.ring-accent-wash{--tw-ring-color:var(--accent-wash)}.ring-background{--tw-ring-color:var(--bg-solid)}.ring-primary,.ring-primary\/30{--tw-ring-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ring-primary\/30{--tw-ring-color:color-mix(in oklab, var(--accent) 30%, transparent)}}.ring-primary\/40{--tw-ring-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ring-primary\/40{--tw-ring-color:color-mix(in oklab, var(--accent) 40%, transparent)}}.ring-primary\/60{--tw-ring-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ring-primary\/60{--tw-ring-color:color-mix(in oklab, var(--accent) 60%, transparent)}}.ring-offset-1{--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)}.ring-offset-background{--tw-ring-offset-color:var(--bg-solid)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.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,)}.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{--tw-backdrop-blur:blur(8px);-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,)}.backdrop-blur-\[6px\]{--tw-backdrop-blur:blur(6px);-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,)}.backdrop-blur-\[8px\]{--tw-backdrop-blur:blur(8px);-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,)}.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,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-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[filter\]{transition-property:filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[height\]{transition-property:height;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,width\,height\]{transition-property:transform,width,height;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-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))}.transition-none{transition-property:none}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.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}.\[background\:repeating-linear-gradient\(to_bottom\,transparent_0\,transparent_40px\,var\(--border-soft\)_40px\,var\(--border-soft\)_41px\)\]{background:repeating-linear-gradient(to bottom,transparent 0,transparent 40px,var(--border-soft) 40px,var(--border-soft) 41px)}.\[border-right\:1px_solid_var\(--border-soft\)\]{border-right:1px solid var(--border-soft)}.\[direction\:rtl\]{direction:rtl}.\[overflow-anchor\:none\]{overflow-anchor:none}.\[scrollbar-width\:none\]{scrollbar-width:none}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\:bg-accent:is(:where(.group):hover *),.group-hover\:bg-surface-elevated:is(:where(.group):hover *){background-color:var(--panel-2)}.group-hover\:text-foreground:is(:where(.group):hover *){color:var(--text)}.group-hover\:text-primary:is(:where(.group):hover *){color:var(--accent)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\[orientation\=horizontal\]\/tabs\:h-9:is(:where(.group\/tabs)[data-orientation=horizontal] *){height:calc(var(--spacing) * 9)}.group-data-\[orientation\=vertical\]\/tabs\:h-fit:is(:where(.group\/tabs)[data-orientation=vertical] *){height:fit-content}.group-data-\[orientation\=vertical\]\/tabs\:w-full:is(:where(.group\/tabs)[data-orientation=vertical] *){width:100%}.group-data-\[orientation\=vertical\]\/tabs\:flex-col:is(:where(.group\/tabs)[data-orientation=vertical] *){flex-direction:column}.group-data-\[orientation\=vertical\]\/tabs\:justify-start:is(:where(.group\/tabs)[data-orientation=vertical] *){justify-content:flex-start}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.selection\:bg-primary ::selection{background-color:var(--accent)}.selection\:bg-primary::selection{background-color:var(--accent)}.selection\:text-primary-foreground ::selection{color:var(--accent-fg)}.selection\:text-primary-foreground::selection{color:var(--accent-fg)}.file\:mr-3::file-selector-button{margin-right:calc(var(--spacing) * 3)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:rounded::file-selector-button{border-radius:.25rem}.file\:border::file-selector-button{border-style:var(--tw-border-style);border-width:1px}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:border-border::file-selector-button{border-color:var(--border)}.file\:bg-panel-2::file-selector-button{background-color:var(--panel-2)}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:px-2::file-selector-button{padding-inline:calc(var(--spacing) * 2)}.file\:py-1::file-selector-button{padding-block:calc(var(--spacing) * 1)}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--text)}.file\:text-text::file-selector-button{color:var(--text)}.placeholder\:text-muted-foreground::placeholder{color:var(--text-2)}.placeholder\:text-text-subtle::placeholder{color:var(--text-3)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:-inset-2:before{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.before\:-inset-x-2:before{content:var(--tw-content);inset-inline:calc(var(--spacing) * -2)}.before\:-inset-y-3:before{content:var(--tw-content);inset-block:calc(var(--spacing) * -3)}.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--text)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);inset-inline:calc(var(--spacing) * 0)}.group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.group-data-\[orientation\=vertical\]\/tabs\:after\:-right-1:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-r-0:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.focus-within\:border-primary\/50:focus-within{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.focus-within\:border-primary\/50:focus-within{border-color:color-mix(in oklab, var(--accent) 50%, transparent)}}@media (hover:hover){.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-border:hover,.hover\:border-border\/80:hover{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.hover\:border-border\/80:hover{border-color:color-mix(in oklab, var(--border) 80%, transparent)}}.hover\:border-primary:hover,.hover\:border-primary\/40:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab, var(--accent) 40%, transparent)}}.hover\:border-primary\/50:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.hover\:border-text-subtle:hover{border-color:var(--text-3)}.hover\:bg-accent:hover,.hover\:bg-accent\/15:hover{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/15:hover{background-color:color-mix(in oklab, var(--panel-2) 15%, transparent)}}.hover\:bg-accent\/30:hover{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/30:hover{background-color:color-mix(in oklab, var(--panel-2) 30%, transparent)}}.hover\:bg-accent\/40:hover{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/40:hover{background-color:color-mix(in oklab, var(--panel-2) 40%, transparent)}}.hover\:bg-accent\/50:hover{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab, var(--panel-2) 50%, transparent)}}.hover\:bg-background:hover{background-color:var(--bg-solid)}.hover\:bg-black\/60:hover{background-color:#0009}@supports (color:color-mix(in lab, red, red)){.hover\:bg-black\/60:hover{background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.hover\:bg-border\/50:hover{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-border\/50:hover{background-color:color-mix(in oklab, var(--border) 50%, transparent)}}.hover\:bg-destructive\/10:hover{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/10:hover{background-color:color-mix(in oklab, var(--error) 10%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--error) 90%, transparent)}}.hover\:bg-error\/10:hover{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-error\/10:hover{background-color:color-mix(in oklab, var(--error) 10%, transparent)}}.hover\:bg-error\/15:hover{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-error\/15:hover{background-color:color-mix(in oklab, var(--error) 15%, transparent)}}.hover\:bg-error\/20:hover{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-error\/20:hover{background-color:color-mix(in oklab, var(--error) 20%, transparent)}}.hover\:bg-error\/25:hover{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-error\/25:hover{background-color:color-mix(in oklab, var(--error) 25%, transparent)}}.hover\:bg-error\/80:hover{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-error\/80:hover{background-color:color-mix(in oklab, var(--error) 80%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/30:hover{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/30:hover{background-color:color-mix(in oklab, var(--panel) 30%, transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--panel) 50%, transparent)}}.hover\:bg-muted\/80:hover{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/80:hover{background-color:color-mix(in oklab, var(--panel) 80%, transparent)}}.hover\:bg-panel-2\/40:hover{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-panel-2\/40:hover{background-color:color-mix(in oklab, var(--panel-2) 40%, transparent)}}.hover\:bg-panel\/60:hover{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-panel\/60:hover{background-color:color-mix(in oklab, var(--panel) 60%, transparent)}}.hover\:bg-primary:hover,.hover\:bg-primary\/5:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/5:hover{background-color:color-mix(in oklab, var(--accent) 5%, transparent)}}.hover\:bg-primary\/10:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/10:hover{background-color:color-mix(in oklab, var(--accent) 10%, transparent)}}.hover\:bg-primary\/30:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/30:hover{background-color:color-mix(in oklab, var(--accent) 30%, transparent)}}.hover\:bg-primary\/40:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/40:hover{background-color:color-mix(in oklab, var(--accent) 40%, transparent)}}.hover\:bg-primary\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/50:hover{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.hover\:bg-primary\/80:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--accent) 80%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--accent) 90%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--panel-2) 80%, transparent)}}.hover\:bg-sky-500\/20:hover{background-color:#00a5ef33}@supports (color:color-mix(in lab, red, red)){.hover\:bg-sky-500\/20:hover{background-color:color-mix(in oklab, var(--color-sky-500) 20%, transparent)}}.hover\:bg-success\/80:hover{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-success\/80:hover{background-color:color-mix(in oklab, var(--success) 80%, transparent)}}.hover\:bg-surface:hover{background-color:var(--panel)}.hover\:bg-surface-elevated:hover,.hover\:bg-surface-elevated\/50:hover{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface-elevated\/50:hover{background-color:color-mix(in oklab, var(--panel-2) 50%, transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.hover\:bg-white\/15:hover{background-color:#ffffff26}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/15:hover{background-color:color-mix(in oklab, var(--color-white) 15%, transparent)}}.hover\:bg-white\/20:hover{background-color:#fff3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/20:hover{background-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--text)}.hover\:text-destructive:hover,.hover\:text-error:hover{color:var(--error)}.hover\:text-foreground:hover{color:var(--text)}.hover\:text-primary:hover{color:var(--accent)}.hover\:text-primary-foreground:hover{color:var(--accent-fg)}.hover\:text-primary\/70:hover{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:text-primary\/70:hover{color:color-mix(in oklab, var(--accent) 70%, transparent)}}.hover\:text-primary\/80:hover{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab, var(--accent) 80%, transparent)}}.hover\:text-success\/80:hover{color:var(--success)}@supports (color:color-mix(in lab, red, red)){.hover\:text-success\/80:hover{color:color-mix(in oklab, var(--success) 80%, transparent)}}.hover\:text-text:hover{color:var(--text)}.hover\:text-text-2:hover{color:var(--text-2)}.hover\:text-text-primary:hover{color:var(--text)}.hover\:text-text-secondary:hover{color:var(--text-2)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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)}.hover\:brightness-105:hover{--tw-brightness:brightness(105%);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,)}.hover\:brightness-110:hover{--tw-brightness:brightness(110%);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,)}}.focus\:border-primary:focus,.focus\:border-primary\/50:focus{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.focus\:border-primary\/50:focus{border-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.focus\:border-ring:focus{border-color:var(--accent)}.focus\:bg-accent:focus,.focus\:bg-surface-elevated:focus{background-color:var(--panel-2)}.focus\:text-accent-foreground:focus{color:var(--text)}.focus\:text-destructive:focus,.focus\:text-error:focus{color:var(--error)}.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-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-primary:focus,.focus\:ring-primary\/50:focus{--tw-ring-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.focus\:ring-primary\/50:focus{--tw-ring-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.focus\:ring-ring:focus{--tw-ring-color:var(--accent)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-ring:focus-visible{border-color:var(--accent)}.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-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--error) 20%, transparent)}}.focus-visible\:ring-primary:focus-visible,.focus-visible\:ring-primary\/60:focus-visible{--tw-ring-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-primary\/60:focus-visible{--tw-ring-color:color-mix(in oklab, var(--accent) 60%, transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.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\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--bg-solid)}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--accent)}.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-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:cursor-grabbing:active{cursor:grabbing}.active\:bg-accent:active{background-color:var(--panel-2)}.active\:bg-error\/30:active{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.active\:bg-error\/30:active{background-color:color-mix(in oklab, var(--error) 30%, transparent)}}.active\:bg-muted:active{background-color:var(--panel)}.active\:bg-primary:active,.active\:bg-primary\/50:active{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.active\:bg-primary\/50:active{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.active\:bg-primary\/60:active{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.active\:bg-primary\/60:active{background-color:color-mix(in oklab, var(--accent) 60%, transparent)}}.active\:bg-surface-elevated:active{background-color:var(--panel-2)}.active\:bg-white\/10:active{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.active\:bg-white\/10:active{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.active\:bg-white\/15:active{background-color:#ffffff26}@supports (color:color-mix(in lab, red, red)){.active\:bg-white\/15:active{background-color:color-mix(in oklab, var(--color-white) 15%, transparent)}}.active\:bg-white\/20:active{background-color:#fff3}@supports (color:color-mix(in lab, red, red)){.active\:bg-white\/20:active{background-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.active\:bg-white\/25:active{background-color:#ffffff40}@supports (color:color-mix(in lab, red, red)){.active\:bg-white\/25:active{background-color:color-mix(in oklab, var(--color-white) 25%, transparent)}}.active\:bg-white\/30:active{background-color:#ffffff4d}@supports (color:color-mix(in lab, red, red)){.active\:bg-white\/30:active{background-color:color-mix(in oklab, var(--color-white) 30%, transparent)}}.active\:text-foreground:active{color:var(--text)}.active\:text-primary-foreground:active{color:var(--accent-fg)}.active\:opacity-80:active{opacity:.8}.active\:opacity-90:active{opacity:.9}.active\:brightness-125:active{--tw-brightness:brightness(125%);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,)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:cursor-wait:disabled{cursor:wait}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-70:disabled{opacity:.7}.disabled\:shadow-none:disabled{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}.disabled\:hover\:text-text-secondary:disabled:hover{color:var(--text-2)}}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--error)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--error) 20%, transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=horizontal\]\:flex-col[data-orientation=horizontal]{flex-direction:column}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--text-2)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--bg-solid)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--text)}.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{--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)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{--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)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:bg-accent[data-state=checked]{background-color:var(--panel-2)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--accent)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--panel-2)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--text)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--text-2)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--border)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--error)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--error) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--error)}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}@media (prefers-reduced-motion:no-preference){.motion-safe\: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))}.motion-safe\:duration-150{--tw-duration:.15s;transition-duration:.15s}}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}.motion-reduce\:transition-none{transition-property:none}}@media not all and (width>=48rem){.max-md\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.max-md\:top-0{top:calc(var(--spacing) * 0)}.max-md\:top-\[4px\]{top:4px}.max-md\:right-0{right:calc(var(--spacing) * 0)}.max-md\:right-\[-18px\]{right:-18px}.max-md\:rotate-45{rotate:45deg}.max-md\:py-3{padding-block:calc(var(--spacing) * 3)}.max-md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}@media (width>=40rem){.sm\:block{display:block}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:min-h-0{min-height:calc(var(--spacing) * 0)}.sm\:max-w-2xl{max-width:var(--container-2xl)}.sm\:max-w-3xl{max-width:var(--container-3xl)}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:max-w-xl{max-width:var(--container-xl)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}}@media (width>=48rem){.md\:inset-auto{inset:auto}.md\:top-0{top:calc(var(--spacing) * 0)}.md\:top-\[4px\]{top:4px}.md\:top-\[15\%\]{top:15%}.md\:left-0{left:calc(var(--spacing) * 0)}.md\:left-1\/2{left:50%}.md\:left-\[-18px\]{left:-18px}.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:inline{display:inline}.md\:size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.md\:size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.md\:size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.md\:h-9{height:calc(var(--spacing) * 9)}.md\:max-h-80{max-height:calc(var(--spacing) * 80)}.md\:max-h-96{max-height:calc(var(--spacing) * 96)}.md\:max-h-\[70vh\]{max-height:70vh}.md\:max-h-\[75vh\]{max-height:75vh}.md\:max-h-none{max-height:none}.md\:min-h-0{min-height:calc(var(--spacing) * 0)}.md\:min-h-7{min-height:calc(var(--spacing) * 7)}.md\:min-h-8{min-height:calc(var(--spacing) * 8)}.md\:min-h-9{min-height:calc(var(--spacing) * 9)}.md\:min-h-\[26px\]{min-height:26px}.md\:w-80{width:calc(var(--spacing) * 80)}.md\:w-\[90vw\]{width:90vw}.md\:w-auto{width:auto}.md\:w-full{width:100%}.md\:max-w-3xl{max-width:var(--container-3xl)}.md\:max-w-lg{max-width:var(--container-lg)}.md\:flex-none{flex:none}.md\:-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.md\:-rotate-45{rotate:-45deg}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-start{align-items:flex-start}.md\:justify-end{justify-content:flex-end}.md\:gap-6{gap:calc(var(--spacing) * 6)}.md\:rounded-xl{border-radius:var(--radius-xl)}.md\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.md\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.md\:p-3{padding:calc(var(--spacing) * 3)}.md\:px-4{padding-inline:calc(var(--spacing) * 4)}.md\:px-5{padding-inline:calc(var(--spacing) * 5)}.md\:px-\[9px\]{padding-inline:9px}.md\:py-1{padding-block:calc(var(--spacing) * 1)}.md\:py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.md\:py-2{padding-block:calc(var(--spacing) * 2)}.md\:py-\[5px\]{padding-block:5px}.md\:pt-0{padding-top:calc(var(--spacing) * 0)}.md\:pt-5{padding-top:calc(var(--spacing) * 5)}.md\:pt-\[20vh\]{padding-top:20vh}.md\:pb-0{padding-bottom:calc(var(--spacing) * 0)}.md\:pl-6{padding-left:calc(var(--spacing) * 6)}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.md\:opacity-0{opacity:0}@media (hover:hover){.md\:group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}}@media (width>=64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=80rem){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@container not (width>=470px){.\@max-\[470px\]\:hidden{display:none}.\@max-\[470px\]\:inline{display:inline}.\@max-\[470px\]\:h-\[36px\]{height:36px}.\@max-\[470px\]\:grid-cols-\[1fr\]{grid-template-columns:1fr}.\@max-\[470px\]\:grid-cols-\[64px_1fr\]{grid-template-columns:64px 1fr}.\@max-\[470px\]\:gap-\[11px\]{gap:11px}.\@max-\[470px\]\:p-\[11px\]{padding:11px}.\@max-\[470px\]\:text-text-2{color:var(--text-2)}}@container (width>=640px){.\@\[640px\]\:flex{display:flex}.\@\[640px\]\:hidden{display:none}.\@\[640px\]\:flex-col{flex-direction:column}.\@\[640px\]\:px-4{padding-inline:calc(var(--spacing) * 4)}}@container (width>=32rem){.\@lg\:block{display:block}.\@lg\:grid-cols-\[var\(--sysmon-grid-w\)\]{grid-template-columns:var(--sysmon-grid-w)}}@media (prefers-color-scheme:dark){.dark\:border-input{border-color:var(--border)}.dark\:bg-bg{background-color:var(--bg-solid)}.dark\:bg-destructive\/60{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60{background-color:color-mix(in oklab, var(--error) 60%, transparent)}}.dark\:bg-input\/30{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30{background-color:color-mix(in oklab, var(--border) 30%, transparent)}}.dark\:bg-panel-2{background-color:var(--panel-2)}.dark\:text-muted-foreground{color:var(--text-2)}.dark\:text-sky-400{color:var(--color-sky-400)}@media (hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab, var(--panel-2) 50%, transparent)}}.dark\:hover\:bg-input\/50:hover{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab, var(--border) 50%, transparent)}}.dark\:hover\:text-foreground:hover{color:var(--text)}}.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--error) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--error) 40%, transparent)}}.dark\:data-\[state\=active\]\:border-input[data-state=active]{border-color:var(--border)}.dark\:data-\[state\=active\]\:bg-input\/30[data-state=active]{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[state\=active\]\:bg-input\/30[data-state=active]{background-color:color-mix(in oklab, var(--border) 30%, transparent)}}.dark\:data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--text)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:border-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20[data-variant=destructive]:focus{background-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--error) 20%, transparent)}}}@media (hover:hover) and (pointer:fine){.can-hover\:hidden{display:none}.can-hover\:pr-6{padding-right:calc(var(--spacing) * 6)}.can-hover\:opacity-0{opacity:0}@media (hover:hover){.can-hover\:group-hover\:block:is(:where(.group):hover *){display:block}.can-hover\:group-hover\:flex:is(:where(.group):hover *){display:flex}.can-hover\:group-hover\:inline-flex:is(:where(.group):hover *){display:inline-flex}.can-hover\:group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.can-hover\:group-hover\/handle\:opacity-70:is(:where(.group\/handle):hover *){opacity:.7}.can-hover\:group-hover\/node\:flex:is(:where(.group\/node):hover *){display:flex}.can-hover\:group-hover\/place\:opacity-100:is(:where(.group\/place):hover *),.can-hover\:group-hover\/proc\:opacity-100:is(:where(.group\/proc):hover *),.can-hover\:group-hover\/titlebar\:opacity-100:is(:where(.group\/titlebar):hover *){opacity:1}.can-hover\:hover\:border-\[var\(--img-ghost-hover-border\)\]:hover{border-color:var(--img-ghost-hover-border)}.can-hover\:hover\:\!bg-\[\#c42b1c\]:hover{background-color:#c42b1c!important}.can-hover\:hover\:bg-\[var\(--img-ghost-hover\)\]:hover{background-color:var(--img-ghost-hover)}.can-hover\:hover\:bg-panel-2:hover,.can-hover\:hover\:bg-surface-elevated:hover{background-color:var(--panel-2)}.can-hover\:hover\:\!text-white:hover{color:var(--color-white)!important}.can-hover\:hover\:text-foreground:hover,.can-hover\:hover\:text-text:hover{color:var(--text)}}}.\[\&_\.cm-editor\]\:\!outline-none .cm-editor{--tw-outline-style:none!important;outline-style:none!important}.\[\&_\.cm-scroller\]\:\!overflow-auto .cm-scroller{overflow:auto!important}.\[\&_dt\]\:hidden dt{display:none}.\[\&_h1\]\:mt-6 h1{margin-top:calc(var(--spacing) * 6)}.\[\&_h1\]\:mb-3 h1{margin-bottom:calc(var(--spacing) * 3)}.\[\&_h1\]\:text-2xl h1{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.\[\&_h1\]\:font-bold h1{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.\[\&_h2\]\:mt-5 h2{margin-top:calc(var(--spacing) * 5)}.\[\&_h2\]\:mb-2 h2{margin-bottom:calc(var(--spacing) * 2)}.\[\&_h2\]\:text-xl h2{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.\[\&_h2\]\:font-semibold h2{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h3\]\:mt-4 h3{margin-top:calc(var(--spacing) * 4)}.\[\&_h3\]\:mb-2 h3{margin-bottom:calc(var(--spacing) * 2)}.\[\&_h3\]\:text-lg h3{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.\[\&_h3\]\:font-medium h3{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_img\]\:h-auto img{height:auto}.\[\&_img\]\:max-w-full img{max-width:100%}.\[\&_img\]\:rounded img{border-radius:.25rem}.\[\&_li\]\:my-0\.5 li{margin-block:calc(var(--spacing) * .5)}.\[\&_ol\]\:my-2 ol{margin-block:calc(var(--spacing) * 2)}.\[\&_ol\]\:list-decimal ol{list-style-type:decimal}.\[\&_ol\]\:pl-6 ol{padding-left:calc(var(--spacing) * 6)}.\[\&_p\]\:my-2 p{margin-block:calc(var(--spacing) * 2)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:h-auto svg{height:auto}.\[\&_svg\]\:max-w-full svg{max-width:100%}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--text-2)}.\[\&_table\]\:my-3 table{margin-block:calc(var(--spacing) * 3)}.\[\&_table\]\:w-full table{width:100%}.\[\&_table\]\:border-collapse table{border-collapse:collapse}.\[\&_td\]\:border td{border-style:var(--tw-border-style);border-width:1px}.\[\&_td\]\:border-border td{border-color:var(--border)}.\[\&_td\]\:px-2 td{padding-inline:calc(var(--spacing) * 2)}.\[\&_td\]\:py-1 td{padding-block:calc(var(--spacing) * 1)}.\[\&_th\]\:border th{border-style:var(--tw-border-style);border-width:1px}.\[\&_th\]\:border-border th{border-color:var(--border)}.\[\&_th\]\:bg-muted\/50 th{background-color:var(--panel)}@supports (color:color-mix(in lab, red, red)){.\[\&_th\]\:bg-muted\/50 th{background-color:color-mix(in oklab, var(--panel) 50%, transparent)}}.\[\&_th\]\:px-2 th{padding-inline:calc(var(--spacing) * 2)}.\[\&_th\]\:py-1 th{padding-block:calc(var(--spacing) * 1)}.\[\&_th\]\:font-semibold th{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_ul\]\:my-2 ul{margin-block:calc(var(--spacing) * 2)}.\[\&_ul\]\:list-disc ul{list-style-type:disc}.\[\&_ul\]\:pl-6 ul{padding-left:calc(var(--spacing) * 6)}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button{appearance:none}.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{appearance:none}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive\![data-variant=destructive]>*):is(svg){color:var(--error)!important}.\[\&\>div\]\:\!block>div{display:block!important}.\[\&\>span\:first-child\]\:hidden>span:first-child{display:none}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}}[data-skin=windows]{--x-radius:8px;--x-font:"Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, sans-serif;--x-titlebar-bg:var(--panel-2);--x-toolbar-bg:var(--panel-2);--x-sidebar-bg:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){[data-skin=windows]{--x-sidebar-bg:color-mix(in srgb, var(--panel-2) 90%, white 10%)}}[data-skin=macos]{--x-radius:10px;--x-font:-apple-system, "SF Pro Text", "SF Pro", system-ui, sans-serif;--x-titlebar-bg:var(--panel-2);--x-toolbar-bg:var(--panel-2);--x-sidebar-bg:var(--panel-2)}@supports (color:color-mix(in lab, red, red)){[data-skin=macos]{--x-sidebar-bg:color-mix(in srgb, var(--panel-2) 85%, var(--accent-2) 6%)}}:root{--bg:radial-gradient(120% 120% at 0% 0%, #0e1626 0%, #0a0e17 55%, #080b12 100%);--bg-solid:#0a0e17;--rail:#141820;--panel:#141820;--panel-2:#141c2e;--border:#ffffff1f;--border-soft:#ffffff0f;--text:#eaeefb;--text-2:#9aa6c2;--text-3:#64708c;--accent:#5b8cff;--accent-fg:#fff;--accent-2:#a06bff;--accent-wash:#5b8cff24;--accent-wash-border:#5b8cff4d;--success:#34d399;--warning:#fbbf24;--error:#f87171;--info:#38bdf8;--shadow-panel:0 30px 70px -24px #000000a6;--shadow-float:0 8px 24px -10px #00000080;--rad:18px;--rad-sm:12px;--blur:16px;--img-veil:linear-gradient(100deg, #0a102099, #0a1020d6);--img-backdrop:blur(40px) saturate(1.6);--img-plate:#ffffff0f;--img-plate-border:#94b2ff38;--img-plate-shadow:0 2px 4px #0000004d, 0 16px 34px -20px #000000b3;--img-ghost:#ffffff14;--img-ghost-border:#ffffff24;--img-ghost-hover:#ffffff24;--img-ghost-hover-border:#94b2ff59;--img-meta-label:#8b97b4;--img-checker:#ffffff0a;--img-skeleton:#ffffff17;--img-skeleton-sweep:#ffffff24}html.light{--img-veil:linear-gradient(100deg, #ffffff9e, #ffffffd6);--img-backdrop:blur(40px) saturate(1.6) brightness(.95);--img-plate:#ffffff80;--img-plate-border:#ffffffb3;--img-plate-shadow:0 2px 4px #0f172a24, 0 16px 34px -20px #0f172a8c;--img-ghost:#ffffffb3;--img-ghost-border:#ffffffd9;--img-ghost-hover:#fffffff2;--img-ghost-hover-border:#cbd5e1;--img-meta-label:#7c8899;--img-checker:#0f172a08;--img-skeleton:#0f172a12;--img-skeleton-sweep:#ffffffbf}.img-checkerboard{background-image:linear-gradient(45deg, var(--img-checker) 25%, transparent 25%, transparent 75%, var(--img-checker) 75%), linear-gradient(45deg, var(--img-checker) 25%, transparent 25%, transparent 75%, var(--img-checker) 75%);background-position:0 0,7px 7px;background-size:14px 14px;padding:6px}.img-skeleton{background:var(--img-skeleton);position:relative;overflow:hidden}.img-skeleton:after{content:"";background:linear-gradient(100deg, transparent 20%, var(--img-skeleton-sweep) 50%, transparent 80%);animation:1.25s linear infinite img-skeleton-sweep;position:absolute;inset:0}@keyframes img-skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.img-skeleton:after{animation:none}}html{transition:background-color .25s ease-out,color .25s ease-out}[data-slot=dropdown-menu-content],[data-slot=dropdown-menu-sub-content],[data-slot=context-menu-content],[data-slot=context-menu-sub-content],[data-slot=select-content],.popover-solid{background-color:var(--bg-solid);background-image:linear-gradient(var(--panel-2), var(--panel-2))}.app-backdrop{background:var(--bg);transition:background .25s ease-out}pre,code,kbd,samp,.font-mono{font-variant-ligatures:none;font-feature-settings:"liga" 0, "calt" 0}[data-flash=card]{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){[data-flash=card]{border-color:color-mix(in srgb, var(--accent) 55%, transparent)}}[data-flash=card]{box-shadow:0 0 0 1px var(--accent), 0 0 22px -6px var(--accent)}@supports (color:color-mix(in lab, red, red)){[data-flash=card]{box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent), 0 0 22px -6px color-mix(in srgb, var(--accent) 50%, transparent)}}[data-flash=card]{transition:border-color .2s ease-out,box-shadow .2s ease-out}[data-flash=edit]{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){[data-flash=edit]{background:color-mix(in srgb, var(--accent) 13%, transparent)}}[data-flash=edit]{transition:background .2s ease-out}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#525c6a}*{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.scrollbar-none::-webkit-scrollbar{display:none}.scrollbar-none{scrollbar-width:none}:focus-visible{outline:none}@media screen and (width<=767px){input,textarea,select{font-size:16px!important}}html,body{overscroll-behavior:none;height:100dvh}[class*=cm-changedText]{background-image:none!important;border-bottom:none!important;outline:none!important;text-decoration:none!important}.markdown-content p{white-space:pre-wrap;word-break:break-word;margin:.25rem 0}.markdown-content p:first-child{margin-top:0}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1{margin:.75rem 0 .25rem;font-size:1rem;font-weight:700}.markdown-content h2{margin:.5rem 0 .25rem;font-size:.875rem;font-weight:700}.markdown-content h3{margin:.5rem 0 .125rem;font-size:.875rem;font-weight:600}.markdown-content pre{background:var(--color-background);font-size:.75rem;font-family:var(--font-mono);border:1px solid var(--color-border);scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:var(--color-border) transparent;border-radius:6px;margin:.5rem 0;padding:.5rem .5rem .75rem;overflow:auto hidden}.markdown-content pre::-webkit-scrollbar{height:4px}.markdown-content pre::-webkit-scrollbar-track{background:0 0}.markdown-content pre::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:9999px}.markdown-content code{font-family:var(--font-mono);font-size:.75rem}.shiki-block pre.shiki{font-size:.75rem;font-family:var(--font-mono);border:1px solid var(--color-border);scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;border-radius:6px;margin:.5rem 0;padding:.5rem .5rem .75rem;overflow:auto hidden}.shiki-block pre.shiki code{font-family:var(--font-mono);background:0 0;font-size:.75rem}.markdown-content pre code.hljs{background:0 0;padding:0}.markdown-content :not(pre)>code{background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;padding:.125rem .25rem}.markdown-content a{color:var(--color-primary);text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content ul{margin:.25rem 0;padding-left:1rem;list-style-type:disc}.markdown-content ol{margin:.25rem 0;padding-left:1rem;list-style-type:decimal}.markdown-content li{margin:.125rem 0}.markdown-content blockquote{border-left:2px solid var(--color-border);color:var(--color-text-secondary);margin:.25rem 0;padding-left:.75rem;font-style:italic}.markdown-content table{border-collapse:collapse;width:100%;margin:.5rem 0;font-size:.75rem}.markdown-content th,.markdown-content td{border:1px solid var(--color-border);text-align:left;padding:.25rem .5rem}.markdown-content th{background:var(--color-background);font-weight:500}.markdown-content hr{border:none;border-top:1px solid var(--color-border);margin:.5rem 0}.markdown-content strong{font-weight:600}.markdown-content em{font-style:italic}.markdown-content pre .code-actions{opacity:0;transition:opacity .15s}.markdown-content pre:hover .code-actions,.markdown-content pre:focus-within .code-actions{opacity:1}@media (hover:none){.markdown-content pre .code-actions{opacity:1}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.animate-blink{animation:.8s ease-in-out infinite blink}@keyframes streamFadeIn{0%{opacity:.6;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.markdown-content.is-streaming>:last-child{animation:.25s ease-out streamFadeIn}@media (prefers-reduced-motion:reduce){.markdown-content.is-streaming>:last-child{animation:none}}@keyframes tabTypingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-1.5px)}}.tab-typing-dot{animation:1s ease-in-out infinite tabTypingBounce}@media (prefers-reduced-motion:reduce){.tab-typing-dot{animation:none}}@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-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}@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-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-scroll-snap-strictness{syntax:"*";inherits:false;initial-value:proximity}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2)format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff)format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff)format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff)format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2)format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff)format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2)format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff)format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2)format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff)format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2)format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff)format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2)format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff)format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2)format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff)format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff)format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff)format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff)format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2)format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff)format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2)format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff)format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2)format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff)format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC)format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff)format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2)format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff)format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2)format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff)format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.16.45"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}
@@ -1 +0,0 @@
1
- import{H as e}from"./vendor-mermaid-CfY1-PkA.js";export{e as createInfoServices};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-BBdkypKW.js";import"./api-client-DwXlVfXP.js";import{hn as e}from"./index-DVNJ2W5R.js";export{e as useKeybindingsStore};