@hienlh/ppm 0.18.9 → 0.18.11

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 (596) hide show
  1. package/.spike/cdp-client.ts +116 -0
  2. package/.spike/cleanup-ppm-workspace.mjs +44 -0
  3. package/.spike/group-protected-probe.ts +21 -0
  4. package/.spike/pip-eval.ts +17 -0
  5. package/.spike/pip-page-helpers.js +119 -0
  6. package/.spike/pip-results-editor-glue.json +105 -0
  7. package/.spike/pip-results-editor.json +158 -0
  8. package/.spike/pip-results-input-isolation.json +28 -0
  9. package/.spike/pip-results-key-probe.json +58 -0
  10. package/.spike/pip-results-listener-survival.json +98 -0
  11. package/.spike/pip-results-listeners.json +36 -0
  12. package/.spike/pip-results-pagehide.json +92 -0
  13. package/.spike/pip-results-resize.json +104 -0
  14. package/.spike/pip-results-terminal-debug.json +99 -0
  15. package/.spike/pip-results-terminal-v2.json +191 -0
  16. package/.spike/pip-results-terminal.json +220 -0
  17. package/.spike/pip-results-xterm-trace.json +73 -0
  18. package/.spike/pip-spike-common.ts +83 -0
  19. package/.spike/pip-spike-editor-glue.ts +82 -0
  20. package/.spike/pip-spike-editor.ts +129 -0
  21. package/.spike/pip-spike-input-isolation.ts +38 -0
  22. package/.spike/pip-spike-key-probe.ts +34 -0
  23. package/.spike/pip-spike-listener-survival.ts +54 -0
  24. package/.spike/pip-spike-listeners.ts +19 -0
  25. package/.spike/pip-spike-pagehide.ts +59 -0
  26. package/.spike/pip-spike-resize.ts +42 -0
  27. package/.spike/pip-spike-setup.ts +63 -0
  28. package/.spike/pip-spike-terminal-debug.ts +81 -0
  29. package/.spike/pip-spike-terminal-v2.ts +139 -0
  30. package/.spike/pip-spike-terminal.ts +169 -0
  31. package/.spike/pip-spike-xterm-trace.ts +36 -0
  32. package/.spike/probe-drag-memo-error.mjs +67 -0
  33. package/.spike/read-dev-db.ts +15 -0
  34. package/.spike/scratch-editor-target.ts +7 -0
  35. package/.spike/smoke-unified-chrome-pip.mjs +353 -0
  36. package/.spike/tunnel.err +63 -42
  37. package/.spike/vite-restart.err +663 -0
  38. package/.spike/w.err +569 -94
  39. package/CHANGELOG.md +25 -0
  40. package/assets/skills/ppm/SKILL.md +1 -1
  41. package/assets/skills/ppm/references/http-api.md +1 -1
  42. package/dist/web/assets/adaptive-context-menu-DGCKKeTy.js +1 -0
  43. package/dist/web/assets/ai-resource-editor-BOHHTTe7.js +1 -0
  44. package/dist/web/assets/ai-settings-section-BigC_nZR.js +1 -0
  45. package/dist/web/assets/{angular-html-Ctz0zN01.js → angular-html-BYPaydvh.js} +1 -1
  46. package/dist/web/assets/{angular-ts-QXHpgB1C.js → angular-ts-Bb4AMKlk.js} +1 -1
  47. package/dist/web/assets/api-client-DTZEgjBQ.js +1 -0
  48. package/dist/web/assets/{api-settings-kQHV6pYZ.js → api-settings-Bd3M4YpI.js} +1 -1
  49. package/dist/web/assets/api-settings-kd1j4iR8.js +1 -0
  50. package/dist/web/assets/{api-themes-CrK0tkW_.js → api-themes-Cpx419SL.js} +1 -1
  51. package/dist/web/assets/{apl-b9KVk-O4.js → apl-DB2VjFCS.js} +1 -1
  52. package/dist/web/assets/architecture-PBZL5I3N-8dCMT9r7.js +1 -0
  53. package/dist/web/assets/{astro-BlFEeGYr.js → astro-BeoJdVpk.js} +1 -1
  54. package/dist/web/assets/{audio-preview-CZLmhf__.js → audio-preview-BgFuTn-0.js} +1 -1
  55. package/dist/web/assets/{blade-CGkj2MUI.js → blade-Cf2q1sPf.js} +1 -1
  56. package/dist/web/assets/{bsl-CVsbb6ap.js → bsl-W1kOaNpu.js} +1 -1
  57. package/dist/web/assets/{button-BA_fJOtX.js → button-5zTrkEoN.js} +1 -1
  58. package/dist/web/assets/{cairo-BbIHl2iE.js → cairo-BoAZFcje.js} +1 -1
  59. package/dist/web/assets/chat-tab-E3bf_V8X.js +15 -0
  60. package/dist/web/assets/chevron-down-Dp0rpHb8.js +1 -0
  61. package/dist/web/assets/clipboard-7fw0Shic.js +1 -0
  62. package/dist/web/assets/{cobol-BWSGjmWb.js → cobol-B0Nm7RXj.js} +1 -1
  63. package/dist/web/assets/code-editor-BUlM2gXk.js +10 -0
  64. package/dist/web/assets/{coffee-CWGNOxds.js → coffee-BakMn3on.js} +1 -1
  65. package/dist/web/assets/{conflict-editor-CdH_h0vD.js → conflict-editor-BUs5k9q_.js} +4 -4
  66. package/dist/web/assets/context-menu-Bq92km4s.js +1 -0
  67. package/dist/web/assets/{cpp-DHGV24J2.js → cpp-BRAJQHK2.js} +1 -1
  68. package/dist/web/assets/{crystal-Vlwf2UMP.js → crystal-kqqO3zkK.js} +1 -1
  69. package/dist/web/assets/{csv-preview-CY_454vd.js → csv-preview-ByoDgLAZ.js} +1 -1
  70. package/dist/web/assets/{data-grid-overlay-editor-D9il5DZS.js → data-grid-overlay-editor-Brkf9z41.js} +1 -1
  71. package/dist/web/assets/database-viewer-Btc3h8Yu.js +1 -0
  72. package/dist/web/assets/dialog-DwtGlowE.js +1 -0
  73. package/dist/web/assets/diff-viewer-CZaDnR4w.js +4 -0
  74. package/dist/web/assets/docx-preview-DAD_vg59.js +12 -0
  75. package/dist/web/assets/{edge-Bhqk64zS.js → edge-Cq1ZKZuE.js} +1 -1
  76. package/dist/web/assets/{edit-diff-preview-gq6ALf2B.js → edit-diff-preview-B_VE7ppQ.js} +1 -1
  77. package/dist/web/assets/{elixir-D466WCFm.js → elixir-BM_JoJRk.js} +1 -1
  78. package/dist/web/assets/{elm-Bfs2qNPR.js → elm-Dw7oO08Y.js} +1 -1
  79. package/dist/web/assets/{erb-WI7jUaB6.js → erb-CfKOGAfk.js} +1 -1
  80. package/dist/web/assets/{erlang-BCBe8nCc.js → erlang-DlDmGVeE.js} +1 -1
  81. package/dist/web/assets/{esm-CZs9WVDO.js → esm-DGAP0GFh.js} +1 -1
  82. package/dist/web/assets/explorer-body-9aBmyVpZ.js +2 -0
  83. package/dist/web/assets/explorer-window-content-DRtqoSPA.js +1 -0
  84. package/dist/web/assets/extension-store-Cpfh2vMm.js +1 -0
  85. package/dist/web/assets/{extension-webview-CuOQrHIS.js → extension-webview-B2OnjuCu.js} +2 -2
  86. package/dist/web/assets/external-link-B8BynhvY.js +1 -0
  87. package/dist/web/assets/file-store-aOERIEo-.js +1 -0
  88. package/dist/web/assets/folder-symlink-B8XrtvQK.js +1 -0
  89. package/dist/web/assets/format-bytes-WVcFxJuT.js +1 -0
  90. package/dist/web/assets/{fortran-fixed-form-CXLIv8Ox.js → fortran-fixed-form-XnAhQWxS.js} +1 -1
  91. package/dist/web/assets/{fsharp-CZsYmiw9.js → fsharp-CdNvy0PG.js} +1 -1
  92. package/dist/web/assets/{gdresource-BGRvoWfC.js → gdresource-DxuG5i8i.js} +1 -1
  93. package/dist/web/assets/{git-commit-DH6mY3Km.js → git-commit-3lMonsur.js} +1 -1
  94. package/dist/web/assets/git-log-panel-Co0PBPHC.js +1 -0
  95. package/dist/web/assets/{git-rebase-C5Gql6Ma.js → git-rebase-N8Z9kIMf.js} +1 -1
  96. package/dist/web/assets/gitGraph-HDMCJU4V-2e_8dfbs.js +1 -0
  97. package/dist/web/assets/{glide-data-grid-Cehfgrzc.js → glide-data-grid-C4_zIneN.js} +8 -8
  98. package/dist/web/assets/{glimmer-js-1-6JMJlj.js → glimmer-js-Dp9OXiib.js} +1 -1
  99. package/dist/web/assets/{glimmer-ts-C_Njj0nK.js → glimmer-ts-CDVKBcDj.js} +1 -1
  100. package/dist/web/assets/{glsl-DbkxE1TN.js → glsl-DPJxI4us.js} +1 -1
  101. package/dist/web/assets/{graphql-BK75fiXl.js → graphql-BrFhaQQl.js} +1 -1
  102. package/dist/web/assets/group-chat-tab-rOd8J8GC.js +1 -0
  103. package/dist/web/assets/{hack-DG151vit.js → hack-BzXbDMlA.js} +1 -1
  104. package/dist/web/assets/{haml-DKeIPQWM.js → haml-CPpkX0s5.js} +1 -1
  105. package/dist/web/assets/{handlebars-398uCI13.js → handlebars-BqrApy52.js} +1 -1
  106. package/dist/web/assets/{html-NLWdst5q.js → html-DmjUl-OA.js} +1 -1
  107. package/dist/web/assets/{html-derivative-CJf_Le2z.js → html-derivative-Cnd6XFR5.js} +1 -1
  108. package/dist/web/assets/{http-G1K2FozA.js → http-DMLWYun2.js} +1 -1
  109. package/dist/web/assets/{hurl-WDC6sSBz.js → hurl-CKkCVxbj.js} +1 -1
  110. package/dist/web/assets/{hxml-Dc3jBXuf.js → hxml-CAx19TtQ.js} +1 -1
  111. package/dist/web/assets/image-preview-DHUoylQ1.js +1 -0
  112. package/dist/web/assets/index-BImUaigO.js +52 -0
  113. package/dist/web/assets/index-CSfi6DSU.css +2 -0
  114. package/dist/web/assets/info-3K5VOQVL-BZi1Gha1.js +1 -0
  115. package/dist/web/assets/input-DcEk7mA3.js +1 -0
  116. package/dist/web/assets/{jinja-CWsQj2y0.js → jinja-BmB9YN9l.js} +1 -1
  117. package/dist/web/assets/{jison-CciJg2NW.js → jison-BaVsKKpw.js} +1 -1
  118. package/dist/web/assets/{julia-IOQNJAB7.js → julia-BgVBLveX.js} +1 -1
  119. package/dist/web/assets/{just-BGdHchwS.js → just-C2ENIbl9.js} +1 -1
  120. package/dist/web/assets/keybindings-store-BGIyqXHI.js +1 -0
  121. package/dist/web/assets/keybindings-store-CzV2sPls.js +1 -0
  122. package/dist/web/assets/{latex-D6TOl-L2.js → latex-BiDIWxKL.js} +1 -1
  123. package/dist/web/assets/{liquid-CVSvu_Wn.js → liquid-NxpapreE.js} +1 -1
  124. package/dist/web/assets/loader-circle-gSPVxfvH.js +1 -0
  125. package/dist/web/assets/lock-Did-87UV.js +1 -0
  126. package/dist/web/assets/{lua-CcKiU6HW.js → lua-DVepQvwH.js} +1 -1
  127. package/dist/web/assets/markdown-renderer-CcbR33VG.js +1 -0
  128. package/dist/web/assets/{markdown-renderer-pVzBdkpl.js → markdown-renderer-DlcDhgrF.js} +3 -3
  129. package/dist/web/assets/{marko--UOicMGo.js → marko-CJ2606Xl.js} +1 -1
  130. package/dist/web/assets/{mdc-D690aU2C.js → mdc-D2bjqclE.js} +1 -1
  131. package/dist/web/assets/{media-url-CylYQld1.js → media-url-H17XJF-I.js} +1 -1
  132. package/dist/web/assets/mobile-bottom-sheet-g-r2hCFa.js +1 -0
  133. package/dist/web/assets/mobile-explorer-sheet-SIwQXlwA.js +1 -0
  134. package/dist/web/assets/monitor-Dv8vn_6O.js +1 -0
  135. package/dist/web/assets/{nextflow-DR8PhpF8.js → nextflow-BtJwUbfF.js} +1 -1
  136. package/dist/web/assets/{nginx-Qb9pUk1g.js → nginx-j4gyIhHE.js} +1 -1
  137. package/dist/web/assets/{nim-DLa8R3NS.js → nim-ClH_gjP5.js} +1 -1
  138. package/dist/web/assets/notification-store-DV5QtUTg.js +1 -0
  139. package/dist/web/assets/{number-overlay-editor-D9SkFg1Y.js → number-overlay-editor-C1EqJnWq.js} +1 -1
  140. package/dist/web/assets/overview-panel-vTeeJYVZ.js +1 -0
  141. package/dist/web/assets/packet-RMMSAZCW-o5htEcin.js +1 -0
  142. package/dist/web/assets/panel-store-BSnkjgHt.js +1 -0
  143. package/dist/web/assets/pdf-preview-CqFGRY0Z.js +1 -0
  144. package/dist/web/assets/pencil-BlIIg6RH.js +1 -0
  145. package/dist/web/assets/{perl-AMNGIneF.js → perl-C9H7X7CT.js} +1 -1
  146. package/dist/web/assets/{php-CDsOOxXn.js → php-Bx2U-cQ_.js} +1 -1
  147. package/dist/web/assets/pie-UPGHQEXC-BXAIFSAD.js +1 -0
  148. package/dist/web/assets/play-4MZi1Axp.js +1 -0
  149. package/dist/web/assets/portal-container-context-Cm5HipFr.js +1 -0
  150. package/dist/web/assets/{postgres-viewer-CR6VpTrX.js → postgres-viewer-DHwcQucn.js} +3 -3
  151. package/dist/web/assets/process-table-BGRJNlpn.js +1 -0
  152. package/dist/web/assets/{project-store-B8BkHXy5.js → project-store--nvQiy75.js} +1 -1
  153. package/dist/web/assets/{pug-C2kdkhQ6.js → pug-Cw74sKsE.js} +1 -1
  154. package/dist/web/assets/{qml-DRDkUp75.js → qml-BXD94Eqz.js} +1 -1
  155. package/dist/web/assets/radar-KQ55EAFF-Dbt2Aebl.js +1 -0
  156. package/dist/web/assets/{razor-wY_6wUeC.js → razor-DZ0-Ge0S.js} +1 -1
  157. package/dist/web/assets/refresh-cw-B06yaBrW.js +1 -0
  158. package/dist/web/assets/resolve-theme-CRt_7wpd.js +1 -0
  159. package/dist/web/assets/rotate-ccw-COXu_9oj.js +1 -0
  160. package/dist/web/assets/{rst-BRpofyNs.js → rst-Dtdh0QUj.js} +1 -1
  161. package/dist/web/assets/{ruby-ieATBhWm.js → ruby-BC51BW2Q.js} +1 -1
  162. package/dist/web/assets/{run-in-terminal-CyS5Itj-.js → run-in-terminal-Sd3KyjN4.js} +1 -1
  163. package/dist/web/assets/{sas-CoOOEbOO.js → sas-BN8i4qOU.js} +1 -1
  164. package/dist/web/assets/scroll-area-0gljZ6lF.js +1 -0
  165. package/dist/web/assets/{scss-_nWV0bsb.js → scss-H-QtA7Rz.js} +1 -1
  166. package/dist/web/assets/send-BlyNJAzy.js +1 -0
  167. package/dist/web/assets/{send-to-chat-BcO39BDR.js → send-to-chat-u6m8l-rH.js} +1 -1
  168. package/dist/web/assets/{settings-store-C20lqh0G.js → settings-store-CHY6Kzin.js} +2 -2
  169. package/dist/web/assets/settings-tab-Dic6TKkU.js +1 -0
  170. package/dist/web/assets/settings-tab-IY6K1MiZ.js +3 -0
  171. package/dist/web/assets/{shaderlab-XkqfIfO8.js → shaderlab-CalNsj_x.js} +1 -1
  172. package/dist/web/assets/shallow-DYo6goJ4.js +1 -0
  173. package/dist/web/assets/{shellsession-BKBIqTlM.js → shellsession-BFrcoR8x.js} +1 -1
  174. package/dist/web/assets/{soy-oVDnPzzh.js → soy-CNbku7vP.js} +1 -1
  175. package/dist/web/assets/{sparql-N2VclEsF.js → sparql-BN_orcVp.js} +1 -1
  176. package/dist/web/assets/{sql-query-editor-BPYsJDsn.js → sql-query-editor-C6pC3I8l.js} +1 -1
  177. package/dist/web/assets/sqlite-viewer-DTr5PzUb.js +1 -0
  178. package/dist/web/assets/{stata-BuuClVDg.js → stata-C6a5Ijzq.js} +1 -1
  179. package/dist/web/assets/{surrealql-DE5_63MS.js → surrealql-ClplI_HY.js} +1 -1
  180. package/dist/web/assets/{svelte--YWjlOrK.js → svelte-DNm-UNXB.js} +1 -1
  181. package/dist/web/assets/switch-DKvKya9y.js +1 -0
  182. package/dist/web/assets/system-monitor-body-iwGiCns9.js +2 -0
  183. package/dist/web/assets/system-monitor-tab-DdXQhEel.js +1 -0
  184. package/dist/web/assets/system-monitor-window-content-BUqRsPK2.js +1 -0
  185. package/dist/web/assets/tab-host-window-content-BnqGPu8a.js +1 -0
  186. package/dist/web/assets/{tab-store-DAsvpx4t.js → tab-store-CJuJRapl.js} +1 -1
  187. package/dist/web/assets/team-member-sheet-LkAFSCvb.js +2 -0
  188. package/dist/web/assets/team-member-window-content-T4Q5JI-G.js +1 -0
  189. package/dist/web/assets/{templ-MlpvJx4a.js → templ-CSdqVobu.js} +1 -1
  190. package/dist/web/assets/terminal-tab-Bb2rZegQ.js +3 -0
  191. package/dist/web/assets/{tex-0loAoXJG.js → tex-DzSJ4kcZ.js} +1 -1
  192. package/dist/web/assets/text-wrap-CBT4Gxtg.js +1 -0
  193. package/dist/web/assets/tool-cards-lhqhrDTT.js +8 -0
  194. package/dist/web/assets/trash-2-Bk4yYlck.js +1 -0
  195. package/dist/web/assets/treemap-KZPCXAKY-DUbnl9dz.js +1 -0
  196. package/dist/web/assets/triangle-alert-B8EYecpe.js +1 -0
  197. package/dist/web/assets/{ts-tags-pt-Ug0hK.js → ts-tags-C28w3bTg.js} +1 -1
  198. package/dist/web/assets/{twig-DOePpLOL.js → twig-i5jY3QXB.js} +1 -1
  199. package/dist/web/assets/upload-BNlX8D07.js +1 -0
  200. package/dist/web/assets/{use-blob-url-BKyVxOZw.js → use-blob-url-Dsq9OjTh.js} +1 -1
  201. package/dist/web/assets/{use-monaco-theme-CGucu3fb.js → use-monaco-theme-BZvlsoBv.js} +1 -1
  202. package/dist/web/assets/use-open-team-member-DkiEjFYE.js +1 -0
  203. package/dist/web/assets/{use-websocket-C-Rxv8JN.js → use-websocket-B8R50f7f.js} +1 -1
  204. package/dist/web/assets/{vendor-mermaid-DrwG0NYt.js → vendor-mermaid-By4AVvJY.js} +1 -1
  205. package/dist/web/assets/video-preview-m0-3p7QZ.js +1 -0
  206. package/dist/web/assets/{vue-D6f-rprj.js → vue-Ceyet_lv.js} +1 -1
  207. package/dist/web/assets/{vue-html-DEYRkS1V.js → vue-html-GuU7g_hg.js} +1 -1
  208. package/dist/web/assets/{vue-vine-CxSG2ojf.js → vue-vine-CxXoaJr2.js} +1 -1
  209. package/dist/web/assets/window-store-CsEW6jiE.js +1 -0
  210. package/dist/web/assets/{xml-DhrxbATj.js → xml-CbqOVhkP.js} +1 -1
  211. package/dist/web/assets/{xsl-CU0ZndUO.js → xsl-KfAmCauy.js} +1 -1
  212. package/dist/web/index.html +56 -27
  213. package/dist/web/sw.js +1 -1
  214. package/docs/code-standards.md +8 -0
  215. package/docs/codebase-summary.md +19 -5
  216. package/docs/design-guidelines.md +13 -2
  217. package/docs/project-roadmap.md +9 -0
  218. package/docs/system-architecture.md +83 -6
  219. package/package.json +1 -1
  220. package/src/web/components/chat/file-picker.tsx +5 -2
  221. package/src/web/components/chat/mode-selector.tsx +5 -2
  222. package/src/web/components/chat/model-selector.tsx +5 -2
  223. package/src/web/components/chat/model-thinking-selector.tsx +5 -2
  224. package/src/web/components/chat/provider-selector.tsx +5 -2
  225. package/src/web/components/chat/slash-command-picker.tsx +5 -2
  226. package/src/web/components/editor/code-editor.tsx +13 -3
  227. package/src/web/components/editor/conflict-editor.tsx +9 -0
  228. package/src/web/components/editor/diff-viewer.tsx +9 -0
  229. package/src/web/components/floating-window/floating-window.tsx +23 -15
  230. package/src/web/components/floating-window/pip/pip-caption-button.tsx +108 -0
  231. package/src/web/components/floating-window/pip/pip-focus-target.ts +58 -0
  232. package/src/web/components/floating-window/pip/pip-geometry.ts +46 -0
  233. package/src/web/components/floating-window/pip/pip-host.ts +156 -0
  234. package/src/web/components/floating-window/pip/pip-key-forward.ts +59 -0
  235. package/src/web/components/floating-window/pip/pip-resize-signal.ts +33 -0
  236. package/src/web/components/floating-window/pip/pip-style-copy.ts +108 -0
  237. package/src/web/components/floating-window/pip/pip-support.ts +33 -0
  238. package/src/web/components/floating-window/tab-host-window-content.tsx +80 -0
  239. package/src/web/components/floating-window/use-window-body-element.ts +67 -0
  240. package/src/web/components/floating-window/use-window-drag.ts +5 -0
  241. package/src/web/components/floating-window/use-window-gesture-context.ts +14 -0
  242. package/src/web/components/floating-window/use-window-resize.ts +5 -0
  243. package/src/web/components/floating-window/window-content-registry.ts +4 -16
  244. package/src/web/components/floating-window/window-layer.tsx +1 -2
  245. package/src/web/components/floating-window/window-persistence.ts +9 -2
  246. package/src/web/components/floating-window/window-pip-placeholder.tsx +31 -0
  247. package/src/web/components/floating-window/window-pip-registry.ts +69 -0
  248. package/src/web/components/floating-window/window-skin-chrome.tsx +21 -0
  249. package/src/web/components/floating-window/window-store-types.ts +8 -2
  250. package/src/web/components/layout/reparenting-tab.tsx +136 -0
  251. package/src/web/components/layout/tab-bar.tsx +2 -0
  252. package/src/web/components/layout/tab-pool-collect.ts +38 -2
  253. package/src/web/components/layout/tab-pool-registry.ts +48 -0
  254. package/src/web/components/layout/tab-pool.tsx +54 -168
  255. package/src/web/components/layout/tab-pop-out-menu-item.tsx +42 -0
  256. package/src/web/components/layout/use-window-panel-reconcile.ts +48 -0
  257. package/src/web/components/os-explorer/skins/macos-window-chrome.tsx +16 -7
  258. package/src/web/components/os-explorer/skins/windows-window-chrome.tsx +14 -8
  259. package/src/web/components/system/build-kill-request.ts +28 -1
  260. package/src/web/components/system/chart-scale.ts +3 -3
  261. package/src/web/components/system/kill-confirm-dialog.tsx +44 -28
  262. package/src/web/components/system/metric-chart-canvas.tsx +1 -2
  263. package/src/web/components/system/process-columns-grid.ts +39 -29
  264. package/src/web/components/system/process-group-row.tsx +31 -8
  265. package/src/web/components/system/process-row.tsx +6 -7
  266. package/src/web/components/system/process-table-model.ts +4 -22
  267. package/src/web/components/system/process-table-toolbar.tsx +12 -43
  268. package/src/web/components/system/process-table.tsx +22 -63
  269. package/src/web/components/system/sortable-header.tsx +33 -8
  270. package/src/web/components/system/system-monitor-body.tsx +1 -1
  271. package/src/web/components/system/use-column-widths.ts +91 -0
  272. package/src/web/components/system/use-process-kill.ts +100 -0
  273. package/src/web/components/ui/context-menu.tsx +10 -3
  274. package/src/web/components/ui/dialog.tsx +10 -1
  275. package/src/web/components/ui/dropdown-menu.tsx +10 -3
  276. package/src/web/components/ui/mobile-bottom-sheet.tsx +7 -4
  277. package/src/web/components/ui/portal-container-context.tsx +40 -0
  278. package/src/web/components/ui/select.tsx +3 -1
  279. package/src/web/components/ui/tooltip.tsx +3 -1
  280. package/src/web/hooks/use-terminal.ts +24 -3
  281. package/src/web/stores/panel-store.ts +72 -7
  282. package/src/web/stores/panel-utils.ts +36 -0
  283. package/src/web/stores/window-panel-actions.ts +211 -0
  284. package/src/web/stores/window-panel-persistence.ts +115 -0
  285. package/src/web/stores/window-panel-reconcile.ts +97 -0
  286. package/src/web/styles/globals.css +5 -3
  287. package/src/web/theme/builtin/aurora.ts +8 -5
  288. package/dist/web/assets/ai-resource-editor-DFCuNe-P.js +0 -1
  289. package/dist/web/assets/api-client-CzABTreM.js +0 -1
  290. package/dist/web/assets/api-settings-nblja3Rk.js +0 -1
  291. package/dist/web/assets/architecture-PBZL5I3N-C7ra20CE.js +0 -1
  292. package/dist/web/assets/chat-tab-flMPLoKb.js +0 -15
  293. package/dist/web/assets/code-editor-C2VQbXzw.js +0 -10
  294. package/dist/web/assets/context-menu-Cq0u3SK9.js +0 -1
  295. package/dist/web/assets/database-viewer-BCZOTrPT.js +0 -1
  296. package/dist/web/assets/diff-viewer-BwfMN-nW.js +0 -4
  297. package/dist/web/assets/docx-preview-D3Sdh_aT.js +0 -12
  298. package/dist/web/assets/explorer-body-BKOMM566.js +0 -2
  299. package/dist/web/assets/explorer-window-content-Bbzijk8t.js +0 -1
  300. package/dist/web/assets/format-bytes-Dk7B73B7.js +0 -1
  301. package/dist/web/assets/git-log-panel-DcV7PhqW.js +0 -1
  302. package/dist/web/assets/gitGraph-HDMCJU4V-D4hYLNJU.js +0 -1
  303. package/dist/web/assets/group-chat-tab-BVPYxjz-.js +0 -1
  304. package/dist/web/assets/image-preview-D-Ok10eZ.js +0 -1
  305. package/dist/web/assets/index-CerSxGdf.js +0 -52
  306. package/dist/web/assets/index-DRA_OpWY.css +0 -2
  307. package/dist/web/assets/info-3K5VOQVL-lRlrTlkb.js +0 -1
  308. package/dist/web/assets/keybindings-store-aIY40k2o.js +0 -1
  309. package/dist/web/assets/markdown-renderer-I89kyQhe.js +0 -1
  310. package/dist/web/assets/mobile-bottom-sheet-BUOJgiaZ.js +0 -1
  311. package/dist/web/assets/mobile-explorer-sheet-5Uj9ZMM9.js +0 -1
  312. package/dist/web/assets/notification-store-DJ-OtAG3.js +0 -1
  313. package/dist/web/assets/overview-panel-Cgi3UPY1.js +0 -1
  314. package/dist/web/assets/packet-RMMSAZCW-BIhk1mvp.js +0 -1
  315. package/dist/web/assets/panel-store-DCD82zc1.js +0 -1
  316. package/dist/web/assets/pdf-preview-Di5xHFyT.js +0 -1
  317. package/dist/web/assets/pie-UPGHQEXC-SLS6i76l.js +0 -1
  318. package/dist/web/assets/process-table-DL6shbzt.js +0 -1
  319. package/dist/web/assets/radar-KQ55EAFF-JJ6O1Er_.js +0 -1
  320. package/dist/web/assets/resolve-theme-IdhSR-gx.js +0 -1
  321. package/dist/web/assets/settings-tab-jbiQwozX.js +0 -1
  322. package/dist/web/assets/sqlite-viewer-Bq9ZJA2y.js +0 -1
  323. package/dist/web/assets/system-monitor-body-CKEYWyN9.js +0 -2
  324. package/dist/web/assets/system-monitor-tab-WjhFFHyM.js +0 -1
  325. package/dist/web/assets/system-monitor-window-content-CMiISeoC.js +0 -1
  326. package/dist/web/assets/team-member-sheet-oY5EkH53.js +0 -2
  327. package/dist/web/assets/team-member-window-content-yCBeI_5X.js +0 -1
  328. package/dist/web/assets/terminal-tab-BxHtMR7h.js +0 -3
  329. package/dist/web/assets/tool-cards-BcGrk1zk.js +0 -8
  330. package/dist/web/assets/treemap-KZPCXAKY-Be3KNmns.js +0 -1
  331. package/dist/web/assets/use-open-team-member-DdrRXj-M.js +0 -1
  332. package/dist/web/assets/video-preview-DYAbbmd0.js +0 -1
  333. package/src/web/components/floating-window/default-window-chrome.tsx +0 -71
  334. package/src/web/components/os-explorer/skins/explorer-skin-chrome.tsx +0 -17
  335. package/src/web/components/system/sparkline-canvas.tsx +0 -63
  336. /package/dist/web/assets/{abap-MRbmsXOs.js → abap-C6nB04tn.js} +0 -0
  337. /package/dist/web/assets/{actionscript-3-BDDHKqa4.js → actionscript-3-Vx4rw2sC.js} +0 -0
  338. /package/dist/web/assets/{ada-DpuV9KwV.js → ada-Ccd8vM20.js} +0 -0
  339. /package/dist/web/assets/{andromeeda-D6qUCKJo.js → andromeeda-DnBX5xMg.js} +0 -0
  340. /package/dist/web/assets/{apache-CX1NU_Tl.js → apache-B-9_sx0g.js} +0 -0
  341. /package/dist/web/assets/{apex-B4-aoQ3K.js → apex-_wPVBYoL.js} +0 -0
  342. /package/dist/web/assets/{api-client-BSB14J4w.js → api-client-aQb5hHE5.js} +0 -0
  343. /package/dist/web/assets/{applescript-Dm9NI6KR.js → applescript-CcvD-qr0.js} +0 -0
  344. /package/dist/web/assets/{apply-theme-BH_d4amk.js → apply-theme-BeLRfsSu.js} +0 -0
  345. /package/dist/web/assets/{ara-BGN8GAYn.js → ara-C40Ztoms.js} +0 -0
  346. /package/dist/web/assets/{asciidoc-s_yVuR3t.js → asciidoc-CybYkJV4.js} +0 -0
  347. /package/dist/web/assets/{asm-BzQdSvTe.js → asm-9eOKwzR0.js} +0 -0
  348. /package/dist/web/assets/{aurora-x-BJTLETG_.js → aurora-x-B5ZH4t7t.js} +0 -0
  349. /package/dist/web/assets/{awk-BQEGWxvX.js → awk-Dqilob-2.js} +0 -0
  350. /package/dist/web/assets/{ayu-dark-CpTORmLc.js → ayu-dark-CPgRhf5r.js} +0 -0
  351. /package/dist/web/assets/{ayu-light-D8PVj-e6.js → ayu-light-Do06Q52f.js} +0 -0
  352. /package/dist/web/assets/{ayu-mirage-DyElQHtm.js → ayu-mirage-_BhxcrxY.js} +0 -0
  353. /package/dist/web/assets/{ballerina-C82NkRtj.js → ballerina-DDwK54QW.js} +0 -0
  354. /package/dist/web/assets/{bat-0X7DtGI-.js → bat-BGyGlzGk.js} +0 -0
  355. /package/dist/web/assets/{beancount-Xgvy6YRl.js → beancount-CRWBdapI.js} +0 -0
  356. /package/dist/web/assets/{berry-CCT2pZcQ.js → berry-DbSFn2gO.js} +0 -0
  357. /package/dist/web/assets/{bibtex-CpXgZ9M_.js → bibtex-QpsV9gm9.js} +0 -0
  358. /package/dist/web/assets/{bicep-fkeSA62l.js → bicep-CxS8CUve.js} +0 -0
  359. /package/dist/web/assets/{bird2-Co7SeAI8.js → bird2-CuZhQzYR.js} +0 -0
  360. /package/dist/web/assets/{bot-CunPuEdW.js → bot-D6sx11y0.js} +0 -0
  361. /package/dist/web/assets/{c-BpmrTvJh.js → c-9bnDqE3g.js} +0 -0
  362. /package/dist/web/assets/{c3-BZ_Z0RrR.js → c3-JMZTrOhA.js} +0 -0
  363. /package/dist/web/assets/{cadence-B0GBC8OF.js → cadence-DsDNayJS.js} +0 -0
  364. /package/dist/web/assets/{can-open-in-ppm-omBzUBBq.js → can-open-in-ppm-BJfpynya.js} +0 -0
  365. /package/dist/web/assets/{catppuccin-frappe-DIt_xR7m.js → catppuccin-frappe-DYIKXXBe.js} +0 -0
  366. /package/dist/web/assets/{catppuccin-latte-Dw40AcqA.js → catppuccin-latte-IYYOnUJ8.js} +0 -0
  367. /package/dist/web/assets/{catppuccin-macchiato-BJ7DfVEF.js → catppuccin-macchiato-BrJ_7mfS.js} +0 -0
  368. /package/dist/web/assets/{catppuccin-mocha-NI2lfXzU.js → catppuccin-mocha-gzSu7v7-.js} +0 -0
  369. /package/dist/web/assets/{chevron-right-BLOtX8Vy.js → chevron-right-De-Wz5Lz.js} +0 -0
  370. /package/dist/web/assets/{circle-hjUGru6R.js → circle-BCy0AUCo.js} +0 -0
  371. /package/dist/web/assets/{clarity-F39L0xMJ.js → clarity-DLzsC0Hb.js} +0 -0
  372. /package/dist/web/assets/{clock-CvhF4DJP.js → clock-C1CQUQPZ.js} +0 -0
  373. /package/dist/web/assets/{clojure-DloMkd8K.js → clojure-DS1BvoTt.js} +0 -0
  374. /package/dist/web/assets/{cmake-CwerJun_.js → cmake-CDvsJwYp.js} +0 -0
  375. /package/dist/web/assets/{code-DDPoqVri.js → code-DJgYrFzm.js} +0 -0
  376. /package/dist/web/assets/{codeowners-CQyVz4Qf.js → codeowners-BjsYiflJ.js} +0 -0
  377. /package/dist/web/assets/{codeql-Bb229zuY.js → codeql-CG-7ARat.js} +0 -0
  378. /package/dist/web/assets/{common-lisp-KMlIwq5I.js → common-lisp-DSO1Lbh9.js} +0 -0
  379. /package/dist/web/assets/{copy-DKn11Pye.js → copy-BewHj66E.js} +0 -0
  380. /package/dist/web/assets/{coq-DHX_3IIo.js → coq-DYdh3oP_.js} +0 -0
  381. /package/dist/web/assets/{csharp-CEmCZv9Q.js → csharp-DxEBz5s0.js} +0 -0
  382. /package/dist/web/assets/{css-CqZqBD05.js → css-dal3Q-8C.js} +0 -0
  383. /package/dist/web/assets/{csv-l1g_V5MV.js → csv-CpqjMGiA.js} +0 -0
  384. /package/dist/web/assets/{csv-parser-CnS0wqr6.js → csv-parser-3umBA4NY.js} +0 -0
  385. /package/dist/web/assets/{cue-BrxRmilg.js → cue-DinoJ_5k.js} +0 -0
  386. /package/dist/web/assets/{cypher-rZkKwqZc.js → cypher-DzxqmkUW.js} +0 -0
  387. /package/dist/web/assets/{d-BALR-QuP.js → d-BxNwJuEC.js} +0 -0
  388. /package/dist/web/assets/{dark-plus-Cj7rVwh-.js → dark-plus-Clmv3V-0.js} +0 -0
  389. /package/dist/web/assets/{dart-CWQcdkXk.js → dart-BWVtXD35.js} +0 -0
  390. /package/dist/web/assets/{data-grid-types-CYvF-xK5.js → data-grid-types-B4n51Fck.js} +0 -0
  391. /package/dist/web/assets/{database-BH0urvbs.js → database-Y3ESDK4-.js} +0 -0
  392. /package/dist/web/assets/{dax-BNHD-QBA.js → dax-DsImuWgJ.js} +0 -0
  393. /package/dist/web/assets/{desktop-CN0IXPrP.js → desktop-B0jJuG2r.js} +0 -0
  394. /package/dist/web/assets/{diff-BtOXapES.js → diff-CWqAAxoE.js} +0 -0
  395. /package/dist/web/assets/{dist-DB1Oaqcc.js → dist-B-EXdSYE.js} +0 -0
  396. /package/dist/web/assets/{dist-Di6G_5jU.js → dist-C0eNNfbt.js} +0 -0
  397. /package/dist/web/assets/{docker-DNsAo_qO.js → docker-CYFCJdIL.js} +0 -0
  398. /package/dist/web/assets/{dotenv-D6Pl6aOU.js → dotenv-CKDUjURg.js} +0 -0
  399. /package/dist/web/assets/{download-zCATy4x4.js → download-DG3_9xXy.js} +0 -0
  400. /package/dist/web/assets/{dracula-C3m-w12D.js → dracula-CSoPspHE.js} +0 -0
  401. /package/dist/web/assets/{dracula-soft-BYqvXm6Z.js → dracula-soft-BuFjw5L1.js} +0 -0
  402. /package/dist/web/assets/{dream-maker-DZAPbPTi.js → dream-maker-B6PdDRZu.js} +0 -0
  403. /package/dist/web/assets/{emacs-lisp-Ao5SW8ay.js → emacs-lisp-CMcXvD0G.js} +0 -0
  404. /package/dist/web/assets/{everforest-dark-uC8QYotQ.js → everforest-dark-cU8-wYzi.js} +0 -0
  405. /package/dist/web/assets/{everforest-light-CTgsVNMr.js → everforest-light-KhorllqK.js} +0 -0
  406. /package/dist/web/assets/{fennel-WuBw6IR1.js → fennel-BCELZK87.js} +0 -0
  407. /package/dist/web/assets/{file-exclamation-point-COAwgNGw.js → file-exclamation-point-CZ4DiR75.js} +0 -0
  408. /package/dist/web/assets/{fish-Byy9dusu.js → fish-BQc0y_jy.js} +0 -0
  409. /package/dist/web/assets/{fluent-CDxb_sgw.js → fluent-BTINnwF6.js} +0 -0
  410. /package/dist/web/assets/{fortran-free-form-DKWSTamT.js → fortran-free-form-BQim9wDz.js} +0 -0
  411. /package/dist/web/assets/{gdscript-prYHMgtD.js → gdscript-03w5u8un.js} +0 -0
  412. /package/dist/web/assets/{gdshader-D-RM-SQk.js → gdshader-Dp2daNzU.js} +0 -0
  413. /package/dist/web/assets/{genie-CowkJhej.js → genie-CoNcjPiD.js} +0 -0
  414. /package/dist/web/assets/{gherkin-CLFpoVYJ.js → gherkin-NrPOSPQL.js} +0 -0
  415. /package/dist/web/assets/{github-dark-default-BK_1Qgb8.js → github-dark-default-DOKw-1cI.js} +0 -0
  416. /package/dist/web/assets/{github-dark-dimmed-Cv9lj6f-.js → github-dark-dimmed-DJRNMkEA.js} +0 -0
  417. /package/dist/web/assets/{github-dark-high-contrast-CW5ZgIDh.js → github-dark-high-contrast-Bj7jJ_Gs.js} +0 -0
  418. /package/dist/web/assets/{github-dark-nW2F-RLd.js → github-dark-z4RE9ZqA.js} +0 -0
  419. /package/dist/web/assets/{github-light-D4PqBHGZ.js → github-light-B4k_yMFu.js} +0 -0
  420. /package/dist/web/assets/{github-light-default-B-cHtJJV.js → github-light-default-BHc-Uzhs.js} +0 -0
  421. /package/dist/web/assets/{github-light-high-contrast-Dt0HJq50.js → github-light-high-contrast-CHisIywL.js} +0 -0
  422. /package/dist/web/assets/{gleam-DwSyXJWP.js → gleam-CfbypZ4q.js} +0 -0
  423. /package/dist/web/assets/{gn-Cv5WEzHc.js → gn-YoAjyhJa.js} +0 -0
  424. /package/dist/web/assets/{gnuplot-D7bRdY_M.js → gnuplot-xVkc1f1c.js} +0 -0
  425. /package/dist/web/assets/{go-DiRVJ22U.js → go-GPCwP3Gu.js} +0 -0
  426. /package/dist/web/assets/{groovy-BHAgLTeO.js → groovy-Crh4Yww9.js} +0 -0
  427. /package/dist/web/assets/{gruvbox-dark-hard-C8QZ3gzY.js → gruvbox-dark-hard-BluUFuDS.js} +0 -0
  428. /package/dist/web/assets/{gruvbox-dark-medium-Dp1eeid2.js → gruvbox-dark-medium-Cxk1FWQp.js} +0 -0
  429. /package/dist/web/assets/{gruvbox-dark-soft-Cwq0dWVj.js → gruvbox-dark-soft-CHXMiFmj.js} +0 -0
  430. /package/dist/web/assets/{gruvbox-light-hard-CLQCq2-w.js → gruvbox-light-hard-B6eKPjAD.js} +0 -0
  431. /package/dist/web/assets/{gruvbox-light-medium-APHsh6Mo.js → gruvbox-light-medium-pDwMm1ut.js} +0 -0
  432. /package/dist/web/assets/{gruvbox-light-soft-CX-fYc64.js → gruvbox-light-soft-Cxu6kHqK.js} +0 -0
  433. /package/dist/web/assets/{haskell-C4Tw-TDa.js → haskell-C6JKHjbK.js} +0 -0
  434. /package/dist/web/assets/{haxe-B7fSduTQ.js → haxe-BuBNdF0a.js} +0 -0
  435. /package/dist/web/assets/{hcl-Bi3ho6yC.js → hcl-DZpDdGj2.js} +0 -0
  436. /package/dist/web/assets/{hjson-BXwae2M1.js → hjson-CBkhYRuo.js} +0 -0
  437. /package/dist/web/assets/{hlsl-CRuQLBSa.js → hlsl-C5nMxnp9.js} +0 -0
  438. /package/dist/web/assets/{horizon-DtdQ6qjv.js → horizon-VAFvA6R6.js} +0 -0
  439. /package/dist/web/assets/{horizon-bright-BXSF_uKq.js → horizon-bright-BC0xn7T3.js} +0 -0
  440. /package/dist/web/assets/{houston-C6ASpUjT.js → houston-BxrUivmz.js} +0 -0
  441. /package/dist/web/assets/{hy-BrWBHtHY.js → hy-DLtOXoaH.js} +0 -0
  442. /package/dist/web/assets/{image-gallery-CGvlv8zR.js → image-gallery-Gnf7TdCR.js} +0 -0
  443. /package/dist/web/assets/{imba-C_JJXckG.js → imba-BdpFXM2W.js} +0 -0
  444. /package/dist/web/assets/{ini-DEE_vSHQ.js → ini-BInJO_T0.js} +0 -0
  445. /package/dist/web/assets/{java-CnmpcjcT.js → java-Dxuddnkb.js} +0 -0
  446. /package/dist/web/assets/{javascript-C-M7sa2e.js → javascript-CVamJfLY.js} +0 -0
  447. /package/dist/web/assets/{json-BjZ3dAk6.js → json-BLZ0ozYk.js} +0 -0
  448. /package/dist/web/assets/{json5-BQ2vpqjp.js → json5-BnXzmMKs.js} +0 -0
  449. /package/dist/web/assets/{jsonc-C5MjoWGx.js → jsonc-CSgkSga7.js} +0 -0
  450. /package/dist/web/assets/{jsonl-JvhrmQJI.js → jsonl-CY5W2nF2.js} +0 -0
  451. /package/dist/web/assets/{jsonnet-C5pdZVuo.js → jsonnet-CEJYH3sF.js} +0 -0
  452. /package/dist/web/assets/{jssm-Db17uybX.js → jssm-CsJc7Uhk.js} +0 -0
  453. /package/dist/web/assets/{jsx-tJp2Cyqu.js → jsx-jCiRaHU7.js} +0 -0
  454. /package/dist/web/assets/{kanagawa-dragon-BculT_Y1.js → kanagawa-dragon-DfoA_GxX.js} +0 -0
  455. /package/dist/web/assets/{kanagawa-lotus-yQgHUGwU.js → kanagawa-lotus-BOLYJpWd.js} +0 -0
  456. /package/dist/web/assets/{kanagawa-wave-CyGoWN4d.js → kanagawa-wave-DfKlbT1G.js} +0 -0
  457. /package/dist/web/assets/{kdl-Bn8R1REF.js → kdl-CmssIFTi.js} +0 -0
  458. /package/dist/web/assets/{kotlin-DWughK73.js → kotlin-BRsNgp6x.js} +0 -0
  459. /package/dist/web/assets/{kusto--serPb0x.js → kusto-T8X9jUab.js} +0 -0
  460. /package/dist/web/assets/{laserwave-DfAPJ1tt.js → laserwave-DkJMVJ8Z.js} +0 -0
  461. /package/dist/web/assets/{lean-UAm1HOKl.js → lean-C65KGVPq.js} +0 -0
  462. /package/dist/web/assets/{less-Xj6Ka0fF.js → less-exIPdDlf.js} +0 -0
  463. /package/dist/web/assets/{lib-DgNcCtj3.js → lib-mC1NZfuw.js} +0 -0
  464. /package/dist/web/assets/{libesm-CPh1Av0r.js → libesm-DSutUtl1.js} +0 -0
  465. /package/dist/web/assets/{light-plus-BfS7gPcj.js → light-plus-DiHUXAZt.js} +0 -0
  466. /package/dist/web/assets/{llvm-DvWiVwvU.js → llvm-CJBnEzFM.js} +0 -0
  467. /package/dist/web/assets/{log-Bo5z9bNz.js → log-DxMyUMuP.js} +0 -0
  468. /package/dist/web/assets/{logo-CrIjcMZT.js → logo-CC9NKzca.js} +0 -0
  469. /package/dist/web/assets/{luau-C9TsYwNt.js → luau-Bw10I6zf.js} +0 -0
  470. /package/dist/web/assets/{make-GYq4qVbx.js → make-C_6M90m6.js} +0 -0
  471. /package/dist/web/assets/{markdown-p5mNledS.js → markdown-bR9_R-LF.js} +0 -0
  472. /package/dist/web/assets/{material-theme-CWYOVxsP.js → material-theme-BUx2Qujn.js} +0 -0
  473. /package/dist/web/assets/{material-theme-darker-BDGty7YH.js → material-theme-darker-CRJrPgKm.js} +0 -0
  474. /package/dist/web/assets/{material-theme-lighter-JbgOgV3n.js → material-theme-lighter-CUAYppPa.js} +0 -0
  475. /package/dist/web/assets/{material-theme-ocean-EMOpLpa2.js → material-theme-ocean-DuINF1fg.js} +0 -0
  476. /package/dist/web/assets/{material-theme-palenight-CY5hgm7h.js → material-theme-palenight-W6_icGCj.js} +0 -0
  477. /package/dist/web/assets/{matlab-C-He_NTH.js → matlab-rfqn_b3z.js} +0 -0
  478. /package/dist/web/assets/{mdx-Cr2TR5fj.js → mdx-Bh1B_YOJ.js} +0 -0
  479. /package/dist/web/assets/{mermaid-BYc0-B0U.js → mermaid-Dxf6Ya2k.js} +0 -0
  480. /package/dist/web/assets/{min-dark-CMJwqJqB.js → min-dark-CivZ2L0h.js} +0 -0
  481. /package/dist/web/assets/{min-light-Cx6vFiEX.js → min-light-B1Ykqtma.js} +0 -0
  482. /package/dist/web/assets/{mipsasm-Bjer5HwK.js → mipsasm-DynHaM0d.js} +0 -0
  483. /package/dist/web/assets/{mojo-t90PR-Y2.js → mojo-Clw5PbGH.js} +0 -0
  484. /package/dist/web/assets/{monokai-dci_PdCm.js → monokai-DFIooFZT.js} +0 -0
  485. /package/dist/web/assets/{moonbit-AAzI-Hd-.js → moonbit-DnBSZWGM.js} +0 -0
  486. /package/dist/web/assets/{move-kwBhnhrG.js → move-CCcL2PfL.js} +0 -0
  487. /package/dist/web/assets/{narrat-CXww2YQL.js → narrat-BDarg5Lk.js} +0 -0
  488. /package/dist/web/assets/{nextflow-groovy-CJXsuXGB.js → nextflow-groovy-DrZOeCNW.js} +0 -0
  489. /package/dist/web/assets/{night-owl-_GD204Wr.js → night-owl-BnZZCK7v.js} +0 -0
  490. /package/dist/web/assets/{night-owl-light-DNgkw3kl.js → night-owl-light-CEwBsVHS.js} +0 -0
  491. /package/dist/web/assets/{nix-BgiorKFd.js → nix-amCzOPMR.js} +0 -0
  492. /package/dist/web/assets/{nord-CaBmcxFC.js → nord-BIs2BC6q.js} +0 -0
  493. /package/dist/web/assets/{nushell-DUh4UGx1.js → nushell-Y02fo4yw.js} +0 -0
  494. /package/dist/web/assets/{objective-c-Cl9KU86S.js → objective-c-7xOZtWW1.js} +0 -0
  495. /package/dist/web/assets/{objective-cpp-DVkIA8A0.js → objective-cpp-eVtjUvVB.js} +0 -0
  496. /package/dist/web/assets/{ocaml-vvoHTak0.js → ocaml-Bi6ZwqG4.js} +0 -0
  497. /package/dist/web/assets/{odin-Cyjw8woZ.js → odin-8xf1Y0S9.js} +0 -0
  498. /package/dist/web/assets/{one-dark-pro-B1cviILi.js → one-dark-pro-hVv-_y_b.js} +0 -0
  499. /package/dist/web/assets/{one-light-BPGUJeYI.js → one-light-CJJ3MtHt.js} +0 -0
  500. /package/dist/web/assets/{openscad-BLMdTUU8.js → openscad-B2HcywLk.js} +0 -0
  501. /package/dist/web/assets/{pascal-i5niy3e7.js → pascal-C7fllV_7.js} +0 -0
  502. /package/dist/web/assets/{pkl-CuOV7SsU.js → pkl-qvLC1IWP.js} +0 -0
  503. /package/dist/web/assets/{plastic-Bf_zE5KL.js → plastic-BT1wHZv2.js} +0 -0
  504. /package/dist/web/assets/{plsql-cfqEtMD3.js → plsql-1MsmdmJD.js} +0 -0
  505. /package/dist/web/assets/{plus-BM-Ty0fp.js → plus-BhMZqFsN.js} +0 -0
  506. /package/dist/web/assets/{po-CFJcWgjr.js → po-BigskytD.js} +0 -0
  507. /package/dist/web/assets/{poimandres-G5YoaIFf.js → poimandres-DuklniF7.js} +0 -0
  508. /package/dist/web/assets/{polar-rcjs3i9R.js → polar-e2pjN_sp.js} +0 -0
  509. /package/dist/web/assets/{postcss-CBKY1FTZ.js → postcss-DtAeYjWw.js} +0 -0
  510. /package/dist/web/assets/{powerquery-Db7SXLbO.js → powerquery-Cr2PtehI.js} +0 -0
  511. /package/dist/web/assets/{powershell-LFy3MUTP.js → powershell-BxFTGLJ4.js} +0 -0
  512. /package/dist/web/assets/{prisma-BE8GR1lH.js → prisma-COWJiwdZ.js} +0 -0
  513. /package/dist/web/assets/{prolog-DOn5lR1e.js → prolog-DFvGKRx6.js} +0 -0
  514. /package/dist/web/assets/{proto-wr-TpAK_.js → proto-CcK80lFt.js} +0 -0
  515. /package/dist/web/assets/{puppet-D2Dkv62u.js → puppet-BF60bZ4F.js} +0 -0
  516. /package/dist/web/assets/{purescript-DvgJgPdy.js → purescript-zL_69MzU.js} +0 -0
  517. /package/dist/web/assets/{python-C7TlkHhK.js → python-CIwKhfb_.js} +0 -0
  518. /package/dist/web/assets/{qmldir-CtZMwhcW.js → qmldir-CXNe04Lo.js} +0 -0
  519. /package/dist/web/assets/{qss-dNZ2btnl.js → qss-C8lAWe6G.js} +0 -0
  520. /package/dist/web/assets/{r-BlqnNkHS.js → r-CL5ZVL3_.js} +0 -0
  521. /package/dist/web/assets/{racket-CzRQrGc4.js → racket-BBfh0uh0.js} +0 -0
  522. /package/dist/web/assets/{raku-BwutWhBF.js → raku-o6E8R5Q3.js} +0 -0
  523. /package/dist/web/assets/{react-I_EwPIZi.js → react-CBTnT4sY.js} +0 -0
  524. /package/dist/web/assets/{red-BMXMywmL.js → red-GomRF2Xp.js} +0 -0
  525. /package/dist/web/assets/{reg-BqOKrIOw.js → reg-_ffDIvx9.js} +0 -0
  526. /package/dist/web/assets/{regexp-Bero1BN2.js → regexp-Bl5sF65W.js} +0 -0
  527. /package/dist/web/assets/{rel-BXKWIElA.js → rel-DgMdqDuj.js} +0 -0
  528. /package/dist/web/assets/{riscv-BbbBYJBo.js → riscv-8b3-Ye4X.js} +0 -0
  529. /package/dist/web/assets/{ron-BtVTWW4b.js → ron-DrmU1KHP.js} +0 -0
  530. /package/dist/web/assets/{rose-pine-hvkvQzvU.js → rose-pine-C_-E2tF1.js} +0 -0
  531. /package/dist/web/assets/{rose-pine-dawn-D7lwhUei.js → rose-pine-dawn-DEfhNlFH.js} +0 -0
  532. /package/dist/web/assets/{rose-pine-moon-CoHDmsIw.js → rose-pine-moon-BdvX3gdn.js} +0 -0
  533. /package/dist/web/assets/{rosmsg-CdaZFgI8.js → rosmsg-B6GhGpd5.js} +0 -0
  534. /package/dist/web/assets/{rust-Dy2qsphD.js → rust-DmC97M1-.js} +0 -0
  535. /package/dist/web/assets/{sass-Bz7NVxDb.js → sass-B0tJOHLM.js} +0 -0
  536. /package/dist/web/assets/{save-C4z1p51e.js → save-CtIGOjmx.js} +0 -0
  537. /package/dist/web/assets/{scala-sXSwsNyq.js → scala-n8zaFOXv.js} +0 -0
  538. /package/dist/web/assets/{scheme-DS7TUbN7.js → scheme-BKD9ztBU.js} +0 -0
  539. /package/dist/web/assets/{sdbl-iISFvIep.js → sdbl-D8gB5-rS.js} +0 -0
  540. /package/dist/web/assets/{shellscript-BkIl4ApC.js → shellscript-BfXlf_Ao.js} +0 -0
  541. /package/dist/web/assets/{shield-check-C5laObJv.js → shield-check-B0iGUiOK.js} +0 -0
  542. /package/dist/web/assets/{shield-off-DULFtyLS.js → shield-off-BNLWBhcq.js} +0 -0
  543. /package/dist/web/assets/{slack-dark-B1eg0_m2.js → slack-dark-CylEddse.js} +0 -0
  544. /package/dist/web/assets/{slack-ochin-mdkc1ldu.js → slack-ochin-w8wg8vuC.js} +0 -0
  545. /package/dist/web/assets/{smalltalk-CORtd03t.js → smalltalk-hiAXA64u.js} +0 -0
  546. /package/dist/web/assets/{snazzy-light-Bc6Q2G89.js → snazzy-light-BwlV3Xty.js} +0 -0
  547. /package/dist/web/assets/{solarized-dark-CF83zRXM.js → solarized-dark-vmNGdykz.js} +0 -0
  548. /package/dist/web/assets/{solarized-light-BoKQZaYU.js → solarized-light-DGv_0JXq.js} +0 -0
  549. /package/dist/web/assets/{solidity-DOgi1N4w.js → solidity-Y7QSH0B1.js} +0 -0
  550. /package/dist/web/assets/{sparkles-Dqsf3hq6.js → sparkles-Dh-_J2Rd.js} +0 -0
  551. /package/dist/web/assets/{splunk-BXfw5ZLy.js → splunk-BtgpLjHi.js} +0 -0
  552. /package/dist/web/assets/{sql-BcVs-eX4.js → sql-CRHYhOia.js} +0 -0
  553. /package/dist/web/assets/{ssh-config-CLCtNkkd.js → ssh-config-DOqSs3au.js} +0 -0
  554. /package/dist/web/assets/{stylus-DdP992aO.js → stylus-crCAEaBT.js} +0 -0
  555. /package/dist/web/assets/{swift-BnGb6Lgc.js → swift-eE3rT7TC.js} +0 -0
  556. /package/dist/web/assets/{synthwave-84-cg9264l9.js → synthwave-84-BWy14LBX.js} +0 -0
  557. /package/dist/web/assets/{system-verilog-GbHpszs3.js → system-verilog-DC0-DZM4.js} +0 -0
  558. /package/dist/web/assets/{systemd-Dz-bNsDQ.js → systemd-to5p6N8I.js} +0 -0
  559. /package/dist/web/assets/{table-CHmxuh6M.js → table-Bbc783ko.js} +0 -0
  560. /package/dist/web/assets/{talonscript-CFIidoBA.js → talonscript-DoTcU8wm.js} +0 -0
  561. /package/dist/web/assets/{tasl-Cu-TRTKx.js → tasl-cNZvUs95.js} +0 -0
  562. /package/dist/web/assets/{tcl-DwCHCB1K.js → tcl-mZE8sZH8.js} +0 -0
  563. /package/dist/web/assets/{terraform-BzZw4T1z.js → terraform-CqHPpIfu.js} +0 -0
  564. /package/dist/web/assets/{tokyo-night-RKsj2-tv.js → tokyo-night-Tp2rTIZd.js} +0 -0
  565. /package/dist/web/assets/{toml-CirbOgDP.js → toml-CU_vscgn.js} +0 -0
  566. /package/dist/web/assets/{tsv-CraRcWdU.js → tsv-ik7iFB9D.js} +0 -0
  567. /package/dist/web/assets/{tsx-CjFg0lgw.js → tsx-BMvvMKiv.js} +0 -0
  568. /package/dist/web/assets/{turtle-B-WBIOa6.js → turtle-DBqKCq9o.js} +0 -0
  569. /package/dist/web/assets/{typescript-MpLarYn1.js → typescript-DXJDmMZZ.js} +0 -0
  570. /package/dist/web/assets/{typespec-B7QlHMZ_.js → typespec-CBseCMtZ.js} +0 -0
  571. /package/dist/web/assets/{typst-CcHSKFZj.js → typst-4oY25U9y.js} +0 -0
  572. /package/dist/web/assets/{use-is-mobile-BXGVvczu.js → use-is-mobile-D1weanbj.js} +0 -0
  573. /package/dist/web/assets/{utils-DoY4yTP-.js → utils-BNRH507E.js} +0 -0
  574. /package/dist/web/assets/{v-xTGhWZuD.js → v-BXaZ_1oy.js} +0 -0
  575. /package/dist/web/assets/{vala-DwebjH3H.js → vala-BImWJE7z.js} +0 -0
  576. /package/dist/web/assets/{vb-BxJT2RAy.js → vb-CLfj2_sy.js} +0 -0
  577. /package/dist/web/assets/{vendor-xterm-CU6zIYMB.js → vendor-xterm-_yyu5n32.js} +0 -0
  578. /package/dist/web/assets/{verilog-CvV6RHPD.js → verilog-BWa8Ed2b.js} +0 -0
  579. /package/dist/web/assets/{vesper-CY3qd7E_.js → vesper-BGj1cg6m.js} +0 -0
  580. /package/dist/web/assets/{vhdl-B9ZX-sUL.js → vhdl-mByK7mlx.js} +0 -0
  581. /package/dist/web/assets/{viml-Y42h_ExQ.js → viml-CugmlW5g.js} +0 -0
  582. /package/dist/web/assets/{vitesse-black-DkXP6Sv-.js → vitesse-black-vPdpy9TL.js} +0 -0
  583. /package/dist/web/assets/{vitesse-dark-B9CkIB6r.js → vitesse-dark-BuQK3dUh.js} +0 -0
  584. /package/dist/web/assets/{vitesse-light-C7DHrJCK.js → vitesse-light-B3nz1XL9.js} +0 -0
  585. /package/dist/web/assets/{vyper-Cnd9s5j-.js → vyper-DH_GTIHG.js} +0 -0
  586. /package/dist/web/assets/{wasm-DQE71XTB.js → wasm-C-LF9GjX.js} +0 -0
  587. /package/dist/web/assets/{wasm-iWe7Fzjc.js → wasm-DfVbVJlW.js} +0 -0
  588. /package/dist/web/assets/{wenyan-Bc5Pnm9l.js → wenyan-CzQkHyHx.js} +0 -0
  589. /package/dist/web/assets/{wgsl-D-YUAWkP.js → wgsl-Du_M1DW9.js} +0 -0
  590. /package/dist/web/assets/{wikitext-DYQDUYf2.js → wikitext-BWN_w5S7.js} +0 -0
  591. /package/dist/web/assets/{wit-P6u7mfwy.js → wit-BR13v5HD.js} +0 -0
  592. /package/dist/web/assets/{wolfram-6SXLUqao.js → wolfram-BoXxp_Xl.js} +0 -0
  593. /package/dist/web/assets/{x-BcqfTY_7.js → x-nhriOX9o.js} +0 -0
  594. /package/dist/web/assets/{yaml-CQiMLVcZ.js → yaml-DpR_EF-d.js} +0 -0
  595. /package/dist/web/assets/{zenscript-DFMywo_P.js → zenscript-C-EdUtUd.js} +0 -0
  596. /package/dist/web/assets/{zig-CtAjaIiF.js → zig-BD4eA5nU.js} +0 -0
@@ -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-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-\[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-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\.5{left:calc(var(--spacing) * 1.5)}.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-\[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-4{margin-inline:calc(var(--spacing) * 4)}.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%}.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-\[85vh\]{max-height:85vh}.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\/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-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-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-\[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-\[60px\]{max-width:60px}.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-\[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-\[280px\]{max-width:280px}.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-\[200px\]{min-width:200px}.min-w-\[240px\]{min-width:240px}.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-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)}.scale-\[0\.6\]{scale:.6}.scale-\[0\.65\]{scale:.65}.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-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-\[70px_1fr\]{grid-template-columns:70px 1fr}.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-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-\[8px\]{border-top-left-radius:8px;border-top-right-radius:8px}.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-\[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\/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-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-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\/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\/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-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\/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-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-\[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-amber-300{color:var(--color-amber-300)}.text-amber-400{color:var(--color-amber-400)}.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-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-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\/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-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_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-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\/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-warning\/80:hover{color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.hover\:text-warning\/80:hover{color:color-mix(in oklab, var(--warning) 80%, transparent)}}.hover\:no-underline:hover{text-decoration-line:none}.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-surface-elevated:active{background-color:var(--panel-2)}.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}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.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\: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\:w-auto{width:auto}.sm\:max-w-2xl{max-width:var(--container-2xl)}.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\:max-w-xs{max-width:var(--container-xs)}.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-\[9px\]{padding-inline:9px}.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-\[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>=32rem){.\@lg\:block{display:block}.\@lg\:flex{display:flex}.\@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-destructive:hover{background-color:var(--error)}.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)}.can-hover\:hover\:text-white:hover{color:var(--color-white)}}}.\[\&_\.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:#ffffff0a;--panel:#ffffff0a;--panel-2:#141c2ed9;--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-DrwG0NYt.js";export{e as createInfoServices};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import"./api-client-BSB14J4w.js";import{fn as e}from"./index-CerSxGdf.js";export{e as useKeybindingsStore};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import"./api-client-BSB14J4w.js";import"./vendor-mermaid-DrwG0NYt.js";import"./settings-store-C20lqh0G.js";import"./panel-store-DCD82zc1.js";import"./project-store-B8BkHXy5.js";import"./tab-store-DAsvpx4t.js";import{t as e}from"./markdown-renderer-pVzBdkpl.js";import"./run-in-terminal-CyS5Itj-.js";export{e as MarkdownRenderer};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t,x as n}from"./vendor-markdown-Ls5AcU91.js";import{ft as r}from"./vendor-ui-CaeeFO0B.js";import{n as i}from"./utils-DoY4yTP-.js";var a=e(t(),1),o=80;function s(e){let t=e;for(;t&&t!==document.body;){let e=getComputedStyle(t).overflowY;if((e===`auto`||e===`scroll`)&&t.scrollHeight>t.clientHeight)return t;t=t.parentElement}return null}function c(e){let[t,n]=(0,a.useState)(0),r=(0,a.useRef)(0),i=(0,a.useRef)(!1),c=(0,a.useRef)(0),l=(0,a.useRef)(null);return{dragY:t,swipeHandlers:{onTouchStart:(0,a.useCallback)(e=>{r.current=e.touches[0].clientY,i.current=!0,c.current=0,l.current=s(e.target),n(0)},[]),onTouchMove:(0,a.useCallback)(e=>{if(!i.current)return;let t=e.touches[0].clientY,a=l.current;if(a&&a.scrollTop>0){r.current=t,c.current!==0&&(c.current=0,n(0));return}let o=t-r.current,s=Math.max(0,o);c.current=s,n(s)},[]),onTouchEnd:(0,a.useCallback)(()=>{i.current&&(i.current=!1,c.current>=o&&e(),c.current=0,n(0))},[e])},dragStyle:t>0?{transform:`translateY(${t}px)`}:void 0,backdropOpacity:t>0?Math.max(0,1-t/300):1,isDragging:t>0}}var l=120;function u(e){let t=Math.max(0,window.innerHeight-e.height-e.offsetTop);return{height:e.height,keyboardInset:t,keyboardOpen:t>=l}}function d(e){let[t,n]=(0,a.useState)(null);return(0,a.useEffect)(()=>{let t=window.visualViewport;if(!e||!t){n(null);return}let r=null,i=()=>{r=null,n(e=>{let n=u(t);return e&&e.height===n.height&&e.keyboardInset===n.keyboardInset?e:n})},a=()=>{r===null&&(r=requestAnimationFrame(i))};return i(),t.addEventListener(`resize`,a),t.addEventListener(`scroll`,a),()=>{r!==null&&cancelAnimationFrame(r),t.removeEventListener(`resize`,a),t.removeEventListener(`scroll`,a)}},[e]),t}var f=e(r(),1),p=n();function m({open:e,onClose:t,children:n,className:r,zIndex:a=50}){let{dragY:o,swipeHandlers:s,dragStyle:l,backdropOpacity:u,isDragging:m}=c(t),g=d(e);return e?(0,f.createPortal)((0,p.jsxs)(`div`,{className:`fixed inset-0`,style:{zIndex:a,"--sheet-vh":g?`${g.height}px`:`100dvh`,"--sheet-kb":g?`${g.keyboardInset}px`:`0px`},onClick:t,children:[(0,p.jsx)(`div`,{className:`absolute inset-0 bg-black/40 animate-in fade-in-0 duration-200`,style:m?{opacity:u}:void 0}),(0,p.jsxs)(`div`,{className:i(`absolute bottom-0 left-0 right-0 rounded-t-2xl bg-popover text-popover-foreground border-t border-border`,g?.keyboardOpen?`pb-[var(--sheet-kb,0px)]`:`pb-[max(0.5rem,env(safe-area-inset-bottom))]`,!m&&`animate-in slide-in-from-bottom duration-200`,r),style:l,onClick:e=>e.stopPropagation(),...s,children:[(0,p.jsx)(`div`,{className:`flex justify-center pt-3 pb-1 shrink-0`,children:(0,p.jsx)(`div`,{className:`w-10 h-1 rounded-full bg-border`})}),n]})]}),h()):null}function h(){return document.getElementById(`root`)??document.body}var g=(0,a.createContext)({open:!1,setOpen:()=>{}});function _({children:e,onClick:t,variant:n,className:r,disabled:o}){let{setOpen:s}=(0,a.useContext)(g);return(0,p.jsx)(`button`,{disabled:o,className:i(`flex w-full items-center gap-2 rounded-lg px-3 py-3 text-sm text-left`,`active:bg-accent transition-colors select-none`,`disabled:pointer-events-none disabled:opacity-50`,n===`destructive`&&`text-destructive`,`[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,r),onClick:e=>{t?.(e),s(!1)},children:e})}function v({className:e}){return(0,p.jsx)(`div`,{className:i(`-mx-1 my-1 h-px bg-border`,e)})}function y({children:e,className:t}){return(0,p.jsx)(`div`,{className:i(`flex items-center gap-2 px-3 py-2 text-xs font-medium text-muted-foreground select-none`,`[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,t),children:e})}function b({children:e,className:t}){return(0,p.jsx)(`div`,{className:i(`pl-2`,t),children:e})}export{b as a,v as i,g as n,y as o,_ as r,d as s,m as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t,x as n}from"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import{t as r}from"./explorer-body-BKOMM566.js";import"./context-menu-Cq0u3SK9.js";import"./api-client-BSB14J4w.js";import"./vendor-mermaid-DrwG0NYt.js";import"./settings-store-C20lqh0G.js";import"./panel-store-DCD82zc1.js";import"./tab-store-DAsvpx4t.js";import"./button-BA_fJOtX.js";import"./use-is-mobile-BXGVvczu.js";import{t as i}from"./mobile-bottom-sheet-BUOJgiaZ.js";import{Ct as a,nt as o,rt as s}from"./index-CerSxGdf.js";var c=e(t(),1),l=n();function u(){let e=s(e=>e.isOpen),t=s(e=>e.close),n=s(e=>e.setSelectMode),u=a(e=>e.slices[o]?.path),d=a(e=>e.slices[o]?.inlineEdit?.kind===`rename`);(0,c.useEffect)(()=>{n(!1)},[u,n]);let f=e=>{d&&e.stopPropagation()};return e?(0,l.jsx)(i,{open:e,onClose:t,zIndex:45,className:`flex h-[var(--sheet-vh)] flex-col p-0`,children:(0,l.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,onTouchStart:f,onTouchMove:f,children:u?(0,l.jsx)(r,{windowId:o,initialPath:u,variant:`sheet`}):(0,l.jsx)(`div`,{className:`flex flex-1 items-center justify-center text-sm text-text-2`,children:`Loading…`})})}):null}export{u as MobileExplorerSheet};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import"./api-client-BSB14J4w.js";import{xn as e}from"./index-CerSxGdf.js";export{e as useNotificationStore};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t,x as n}from"./vendor-markdown-Ls5AcU91.js";import{n as r}from"./utils-DoY4yTP-.js";import{i,n as a,r as o,t as s}from"./format-bytes-Dk7B73B7.js";var c=e(t(),1);function l(e){let[t,n]=(0,c.useState)(0);return(0,c.useEffect)(()=>{let t=e.current;if(!t||(n(t.clientWidth),typeof ResizeObserver>`u`))return;let r=new ResizeObserver(e=>{let r=Math.floor(e[0]?.contentRect.width??t.clientWidth);n(e=>e===r?e:r)});return r.observe(t),()=>r.disconnect()},[e]),t}var u=n(),d=(0,c.memo)(function({series:e,height:t,maxValue:n}){let r=(0,c.useRef)(null),a=(0,c.useRef)(null),s=l(r);return(0,c.useEffect)(()=>{let r=a.current;if(!r||s===0)return;let c=r.getContext(`2d`);if(!c)return;let l=window.devicePixelRatio||1;r.width=s*l,r.height=t*l,c.scale(l,l),c.clearRect(0,0,s,t);let u=getComputedStyle(r),d=e=>o(e,u),f=t-4;if(Math.max(1,...e.map(e=>e.data.length))<2){c.beginPath(),c.strokeStyle=d(`var(--color-border)`),c.lineWidth=1,c.moveTo(0,t-2),c.lineTo(s,t-2),c.stroke();return}let p=i(e.flatMap(e=>e.data),n);for(let n of e){if(n.data.length<2)continue;let e=s/(n.data.length-1);c.beginPath(),c.moveTo(0,t-2);for(let t=0;t<n.data.length;t++){let r=t*e,i=2+f-n.data[t]/p*f;c.lineTo(r,i)}c.lineTo((n.data.length-1)*e,t-2),c.closePath(),c.fillStyle=d(n.color),c.globalAlpha=.12,c.fill(),c.globalAlpha=1,c.beginPath(),c.strokeStyle=d(n.color),c.lineWidth=1.5,c.lineJoin=`round`;for(let t=0;t<n.data.length;t++){let r=t*e,i=2+f-n.data[t]/p*f;t===0?c.moveTo(r,i):c.lineTo(r,i)}c.stroke()}},[e,s,t,n]),(0,u.jsx)(`div`,{ref:r,className:`w-full min-w-0 overflow-hidden`,style:{height:t},children:(0,u.jsx)(`canvas`,{ref:a,style:{width:s||`100%`,height:t},className:`block`})})});function f(e){return e>80?`bg-error`:e>50?`bg-warning`:`bg-success`}function p({cores:e}){return(0,u.jsx)(`div`,{className:`flex items-end gap-0.5 min-h-11 w-full`,"data-testid":`sysmon-core-bars`,"data-core-count":e.length,children:e.map((e,t)=>(0,u.jsx)(`div`,{className:`flex-1 h-11 flex items-end rounded-sm overflow-hidden bg-surface-hover`,title:`Core ${t}: ${e.toFixed(0)}%`,children:(0,u.jsx)(`div`,{className:r(`w-full transition-[height]`,f(e)),style:{height:`${Math.max(2,Math.min(100,e))}%`}})},t))})}function m(e){return e>80?`text-error`:e>50?`text-warning`:`text-success`}function h({total:e,cores:t,model:n,series:r}){return(0,u.jsxs)(`div`,{className:`rounded-lg border border-border p-4 space-y-2`,"data-testid":`sysmon-card-cpu`,"data-cpu-total":e,children:[(0,u.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,u.jsx)(`h3`,{className:`text-sm font-medium`,children:`CPU`}),(0,u.jsxs)(`span`,{className:`text-2xl font-semibold ${m(e)}`,children:[e.toFixed(1),`%`]})]}),(0,u.jsx)(d,{series:[{data:r,color:`var(--color-primary)`}],height:56,maxValue:100}),(0,u.jsx)(p,{cores:t}),(0,u.jsx)(`p`,{className:`text-[11px] text-text-subtle truncate`,title:n,children:n})]})}function g({usedMB:e,totalMB:t,percent:n,series:r}){return(0,u.jsxs)(`div`,{className:`rounded-lg border border-border p-4 space-y-2`,"data-testid":`sysmon-card-mem`,"data-mem-percent":n,children:[(0,u.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,u.jsx)(`h3`,{className:`text-sm font-medium`,children:`Memory`}),(0,u.jsxs)(`span`,{className:`text-2xl font-semibold`,children:[n.toFixed(1),`%`]})]}),(0,u.jsx)(d,{series:[{data:r,color:`var(--color-primary)`}],height:56,maxValue:100}),(0,u.jsxs)(`p`,{className:`text-[11px] text-text-subtle`,children:[a(e),` / `,a(t)]})]})}function _({available:e,inBps:t,outBps:n,readSeries:r,writeSeries:i,measuring:a}){return(0,u.jsxs)(`div`,{className:`rounded-lg border border-border p-4 space-y-2`,"data-testid":`sysmon-card-disk`,"data-available":e,children:[(0,u.jsx)(`h3`,{className:`text-sm font-medium`,children:`Disk`}),e?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(d,{series:[{data:r,color:`var(--color-primary)`},{data:i,color:`var(--color-warning)`}],height:56}),(0,u.jsxs)(`p`,{className:`text-[11px] text-text-subtle`,children:[`Read `,s(t),` · Write `,s(n)]})]}):(0,u.jsx)(`p`,{className:`text-[11px] text-text-subtle`,children:a?`measuring…`:`n/a`})]})}function v({available:e,inBps:t,outBps:n,downSeries:r,upSeries:i,measuring:a}){return(0,u.jsxs)(`div`,{className:`rounded-lg border border-border p-4 space-y-2`,"data-testid":`sysmon-card-net`,"data-available":e,children:[(0,u.jsx)(`h3`,{className:`text-sm font-medium`,children:`Network`}),e?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(d,{series:[{data:r,color:`var(--color-primary)`},{data:i,color:`var(--color-warning)`}],height:56}),(0,u.jsxs)(`p`,{className:`text-[11px] text-text-subtle`,children:[`Down `,s(t),` · Up `,s(n)]})]}):(0,u.jsx)(`p`,{className:`text-[11px] text-text-subtle`,children:a?`measuring…`:`n/a`})]})}function y({name:e,utilPercent:t,vramUsedMB:n,vramTotalMB:r,series:i}){return(0,u.jsxs)(`div`,{className:`rounded-lg border border-border p-4 space-y-2`,"data-testid":`sysmon-card-gpu`,children:[(0,u.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2`,children:[(0,u.jsx)(`h3`,{className:`text-sm font-medium truncate`,title:e,children:e}),(0,u.jsxs)(`span`,{className:`text-2xl font-semibold shrink-0`,children:[t.toFixed(0),`%`]})]}),(0,u.jsx)(d,{series:[{data:i,color:`var(--color-primary)`}],height:56,maxValue:100}),(0,u.jsxs)(`p`,{className:`text-[11px] text-text-subtle`,children:[`VRAM `,a(n),` / `,a(r)]})]})}var b=200;function x(e){return(0,c.useMemo)(()=>{let t=e.slice(-b),n=[],r=[],i=[],a=[],o=[],s=[],c=[];for(let e of t)n.push(e.system.cpu.total),r.push(e.system.mem.percent),i.push(e.system.disk.available?e.system.disk.inBps:0),a.push(e.system.disk.available?e.system.disk.outBps:0),o.push(e.system.net.available?e.system.net.inBps:0),s.push(e.system.net.available?e.system.net.outBps:0),e.system.gpus.forEach((e,t)=>{(c[t]??=[]).push(e.utilPercent)});return{cpu:n,mem:r,diskRead:i,diskWrite:a,netDown:o,netUp:s,gpuUtil:c}},[e])}function S({system:e,history:t}){let n=x(t),r=t.length<=1;return(0,u.jsxs)(`div`,{className:`p-4 grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4`,"data-testid":`sysmon-overview`,children:[(0,u.jsx)(h,{total:e.cpu.total,cores:e.cpu.cores,model:e.cpu.model,series:n.cpu}),(0,u.jsx)(g,{usedMB:e.mem.usedMB,totalMB:e.mem.totalMB,percent:e.mem.percent,series:n.mem}),(0,u.jsx)(_,{available:e.disk.available,inBps:e.disk.inBps,outBps:e.disk.outBps,readSeries:n.diskRead,writeSeries:n.diskWrite,measuring:r}),(0,u.jsx)(v,{available:e.net.available,inBps:e.net.inBps,outBps:e.net.outBps,downSeries:n.netDown,upSeries:n.netUp,measuring:r}),e.gpus.map((e,t)=>(0,u.jsx)(y,{name:e.name,utilPercent:e.utilPercent,vramUsedMB:e.vramUsedMB,vramTotalMB:e.vramTotalMB,series:n.gpuUtil[t]??[]},`${e.name}-${t}`))]})}export{S as OverviewPanel};
@@ -1 +0,0 @@
1
- import{B as e}from"./vendor-mermaid-DrwG0NYt.js";export{e as createPacketServices};
@@ -1 +0,0 @@
1
- import{t as e}from"./react-I_EwPIZi.js";import{r as t}from"./utils-DoY4yTP-.js";var n=`__dock__`,r=new Set([`terminal`,`system-monitor`]);function i(){return{id:n,tabs:[],activeTabId:null,tabHistory:[]}}function a(){return`panel-${t()}`}function o(e=[],t=null){return{id:a(),tabs:e,activeTabId:t,tabHistory:t?[t]:[]}}function s(e){return e?1:3}function c(e,t){return e.map(e=>e.filter(e=>e!==t)).filter(e=>e.length>0)}function l(e,t){return!t||t===`__global__`?e:e.filter(e=>!e.projectId||e.projectId===t)}function u(e,t){for(let n=0;n<e.length;n++){let r=e[n].indexOf(t);if(r!==-1)return{row:n,col:r}}return null}function d(e){let t=0;for(let n of Object.values(e))for(let e of n.tabs){let n=e.id.match(/^editor:untitled-(\d+)$/);n&&(t=Math.max(t,Number(n[1])))}return t+1}function f(e,n){switch(e){case`editor`:return n?.viewerKey?`editor:viewer:${n.viewerKey}`:n?.isUntitled?`editor:untitled-${n.untitledNumber??1}`:`editor:${n?.filePath??`untitled`}`;case`chat`:return`chat:${n?.providerId??`default`}/${n?.sessionId??t()}`;case`terminal`:return`terminal:${n?.terminalIndex??1}`;case`database`:return`database:${n?.connectionId??`default`}:${n?.tableName??``}`;case`sqlite`:return`sqlite:${n?.filePath??`default`}`;case`postgres`:return`postgres:${n?.connectionId??`default`}:${n?.tableName??``}`;case`extension`:return`extension:${String(n?.viewType??`unknown`).replace(/\.view$/,``)}`;case`git-diff`:return`git-diff:${n?.filePath??`unknown`}`;case`conflict-editor`:return`conflict-editor:${n?.filePath??`unknown`}`;case`settings`:return`settings`;case`group`:return`group:${n?.groupId??`unknown`}`;default:return`${e}:${t()}`}}var p=new Set([`ports`,`tunnels`]);function m(e){if(!e.tabs.some(e=>p.has(e.type)))return e;let t=new Set(e.tabs.filter(e=>p.has(e.type)).map(e=>e.id)),n=e.tabs.filter(e=>!t.has(e.id)),r=e.tabHistory.filter(e=>!t.has(e)),i=e.activeTabId&&!t.has(e.activeTabId)?e.activeTabId:r[r.length-1]??n[n.length-1]?.id??null;return{...e,tabs:n,tabHistory:r,activeTabId:i}}function h(e){let t={};for(let[n,r]of Object.entries(e.panels))t[n]=m(r);let n=e.dockPanel?m(e.dockPanel):e.dockPanel;return{...e,panels:t,dockPanel:n}}function g(e){let t={...e,panels:{...e.panels}};for(let[e,n]of Object.entries(t.panels)){let r=n.tabs.map(e=>{if(e.id.startsWith(`tab-`)){let t=f(e.type,e.metadata);return{...e,id:t}}return e}),i=new Map;n.tabs.forEach((e,t)=>{e.id!==r[t].id&&i.set(e.id,r[t].id)});let a=i.get(n.activeTabId??``)??n.activeTabId,o=n.tabHistory.map(e=>i.get(e)??e);t.panels[e]={...n,tabs:r,activeTabId:a,tabHistory:o}}return t}var _=`ppm-panels-`,v=`ppm-tabs-`;function y(e){return`${_}${e}`}function b(e,t){try{let n={...t,updatedAt:new Date().toISOString()};localStorage.setItem(y(e),JSON.stringify(n)),e!==`__global__`&&T(e,t)}catch{}}function x(e){try{let t=localStorage.getItem(y(e));if(t)return S(g(h(JSON.parse(t))))}catch{}let t=O(e);return t?S(h(t)):null}function S(e){let t=e.dock??{visible:!1,height:30},n;if(!e.dockPanel)n=i();else{let t=e.dockPanel.tabs.filter(e=>r.has(e.type)),i=new Set(t.map(e=>e.id)),a=e.dockPanel.tabHistory.filter(e=>i.has(e)),o=e.dockPanel.activeTabId&&i.has(e.dockPanel.activeTabId)?e.dockPanel.activeTabId:a[a.length-1]??t[t.length-1]?.id??null;n={...e.dockPanel,tabs:t,tabHistory:a,activeTabId:o}}return{...e,dock:t,dockPanel:n}}async function C(e){if(e===`__global__`)return null;try{let t={},n=localStorage.getItem(`ppm-auth-token`);n&&(t.Authorization=`Bearer ${n}`);let r=await fetch(`/api/project/${encodeURIComponent(e)}/workspace`,{headers:t});if(!r.ok)return null;let i=await r.json();return!i.ok||!i.data?null:{...i.data.layout,updatedAt:i.data.updatedAt}}catch{return null}}var w=new Map;function T(e,t){let n=w.get(e);n&&clearTimeout(n),w.set(e,setTimeout(async()=>{w.delete(e);try{let n={"Content-Type":`application/json`},r=localStorage.getItem(`ppm-auth-token`);r&&(n.Authorization=`Bearer ${r}`);let i=await fetch(`/api/project/${encodeURIComponent(e)}/workspace`,{method:`PUT`,headers:n,body:JSON.stringify({layout:t})});if(i.ok){let t=await i.json();if(t.data?.updatedAt){let n=`${_}${e}`,r=localStorage.getItem(n);if(r){let e=JSON.parse(r);e.updatedAt=t.data.updatedAt,localStorage.setItem(n,JSON.stringify(e))}}}}catch{}},1500))}function E(e,t){if(!e&&!t)return null;if(!e)return t;if(!t)return e;let n=new Date(e.updatedAt).getTime();return new Date(t.updatedAt).getTime()>=n?t:e}async function D(e){if(e===`__global__`)return!1;let t=await C(e);if(!t)return!1;let n=`${_}${e}`,r=null;try{let e=localStorage.getItem(n);r=e?JSON.parse(e):null}catch{}if(E(r,t)!==t)return!1;try{let e={...h(t),updatedAt:t.updatedAt};return localStorage.setItem(n,JSON.stringify(e)),!0}catch{return!1}}function O(e){try{let t=localStorage.getItem(`${v}${e}`);if(!t)return null;let n=JSON.parse(t);if(!n.tabs?.length)return null;let r=o(n.tabs,n.activeTabId),i={panels:{[r.id]:r},grid:[[r.id]],focusedPanelId:r.id};return b(e,i),localStorage.removeItem(`${v}${e}`),i}catch{return null}}var k=15,A=85;function j(e){return Math.min(A,Math.max(k,e))}function M(e,t){let n=e.filter(e=>e!==t);return n.push(t),n.length>50&&n.shift(),n}function N(e){let t=e().panels[n];if(!t)return 0;let r=e().currentProject;return t.tabs.filter(e=>!e.projectId||!r||e.projectId===r).length}function P(e){let t=e().currentProject;e().openInDock({type:`terminal`,title:`Terminal`,projectId:t??null,closable:!0,metadata:t?{projectName:t}:void 0})}function F(e,t){return function(){let{dock:n}=t(),r=!n.visible;e({dock:{...n,visible:r}}),B(t),r&&N(t)===0&&P(t)}}function I(e,t){return function(n){let{dock:r}=t();e({dock:{...r,visible:n}}),B(t)}}function L(e,t){return function(n){let{dock:r}=t();e({dock:{...r,height:j(n)}}),B(t)}}function R(e,t){return function(r){let{panels:a,dock:o}=t(),s=a.__dock__??i(),c=r;if(r.type===`terminal`&&!r.metadata?.terminalIndex){let e=Object.values(a).flatMap(e=>e.tabs).filter(e=>e.type===`terminal`).map(e=>{let t=e.id.match(/^terminal:(\d+)/);return t?parseInt(t[1],10):0}),t=e.length>0?Math.max(...e)+1:1;c={...r,metadata:{...r.metadata,terminalIndex:t}}}let l=f(c.type,c.metadata);if(s.tabs.find(e=>e.id===l))return e(e=>({dock:{...e.dock,visible:!0},panels:{...e.panels,[n]:{...s,activeTabId:l,tabHistory:M(s.tabHistory,l)}}})),B(t),l;let u={...c,id:l},d=[...s.tabs,u],p=M(s.tabHistory,l);return e(e=>({dock:{...e.dock,visible:!0},panels:{...e.panels,[n]:{...s,tabs:d,activeTabId:l,tabHistory:p}}})),B(t),l}}function z(e,t){return function(r,i){t().moveTab(r,i,n);let{dock:a}=t();e({dock:{...a,visible:!0}}),B(t)}}function B(e){let{currentProject:t,panels:n,grid:r,focusedPanelId:a,dock:o}=e();if(!t)return;let s=new Set(r.flat()),c={};for(let[e,t]of Object.entries(n))s.has(e)&&(c[e]=t);b(t,{panels:c,grid:r,focusedPanelId:a,dock:o,dockPanel:n.__dock__??i()})}function V(e,t,n){return{...n,[e]:t}}function H(e,t){return t[e]??{visible:!1,height:30}}function U(e,t){return t&&e.visible?{...e,visible:!1}:e}var W=new Set([`settings`,`git-log`]),G=new Set([`projects`,`git-status`,`git-graph`]);function K(e,t){if(!e)return null;let n=e.tabs.filter(e=>!e.projectId||e.projectId===t);if(n.length===0)return null;for(let t=e.tabHistory.length-1;t>=0;t--){let r=e.tabHistory[t];if(n.some(e=>e.id===r))return r}return n[n.length-1].id}function q(e,t){let n=e.filter(e=>e!==t);return n.push(t),n.length>50&&n.shift(),n}function J(e,t){let n=Date.now();return e.map(e=>e.id===t?{...e,metadata:{...e.metadata,lastActiveAt:n}}:e)}function Y(){let e=o(),t=i();return{panels:{[e.id]:e,[n]:t},grid:[[e.id]],focusedPanelId:e.id}}var X=e()((e,t)=>{function r(){let{currentProject:e,panels:r,grid:i,focusedPanelId:a,dock:o}=t();if(!e)return;let s=new Set(i.flat()),c={};for(let[e,t]of Object.entries(r))s.has(e)&&(c[e]=t);b(e,{panels:c,grid:i,focusedPanelId:a,dock:o,dockPanel:r[n]})}function a(e){return Object.values(t().panels).find(t=>t.tabs.some(t=>t.id===e))}function d(e){return e??t().focusedPanelId}return{...Y(),currentProject:null,projectGrids:{},projectFocused:{},dock:{visible:!1,height:30},projectDock:{},dockExpanded:!1,toggleDock:F(e,t),setDockVisible:I(e,t),setDockHeight:L(e,t),toggleDockExpanded:()=>e(e=>({dockExpanded:!e.dockExpanded})),openInDock:R(e,t),redockTab:z(e,t),switchProject:r=>{let{currentProject:a,panels:s,grid:u,focusedPanelId:d,projectGrids:f,projectFocused:p,dock:m,projectDock:h}=t();if(a===r)return;let g={...f},_={...p},v=a?V(a,m,h):{...h};if(a){g[a]=u,_[a]=d;let e=new Set(u.flat()),t={};for(let[n,r]of Object.entries(s))e.has(n)&&(t[n]=r);b(a,{panels:t,grid:u,focusedPanelId:d,dock:m,dockPanel:s[n]})}if(g[r]){let t=g[r],i=_[r]??t[0]?.[0]??``,a=H(r,v),o=s[n];e({currentProject:r,panels:o?{...s,[n]:{...o,activeTabId:K(o,r)}}:s,grid:t,focusedPanelId:i,projectGrids:g,projectFocused:_,dock:a,projectDock:v});return}let y=x(r);if(y&&Object.keys(y.panels).length>0){let a=!1,o={};for(let[e,t]of Object.entries(y.panels)){let n=l(t.tabs,r).filter(e=>!G.has(e.type));n.length!==t.tabs.length&&(a=!0);let i=t.tabHistory.filter(e=>n.some(t=>t.id===e)),s=t.activeTabId&&n.some(e=>e.id===t.activeTabId)?t.activeTabId:i[i.length-1]??n[0]?.id??null;o[e]={...t,tabs:n,tabHistory:i,activeTabId:s}}let u=y.grid;for(let e of u.flat())if(!((o[e]?.tabs.length??0)>0)){if(u.flat().length<=1)break;u=c(u,e),delete o[e],a=!0}let d=u.flat().includes(y.focusedPanelId)?y.focusedPanelId:u.flat()[0]??y.focusedPanelId,f=s.__dock__??i(),p=y.dockPanel??i(),m=[...f.tabs];for(let e of p.tabs)m.some(t=>t.id===e.id)||m.push(e);let h={...f,tabs:m,tabHistory:[...new Set([...f.tabHistory,...p.tabHistory])].filter(e=>m.some(t=>t.id===e)),activeTabId:null};h.activeTabId=K(h,r);let x={...s,...o,[n]:h};g[r]=u,_[r]=d;let S=U(y.dock??H(r,v),t().isMobile());e({currentProject:r,panels:x,grid:u,focusedPanelId:d,projectGrids:g,projectFocused:_,dock:S,projectDock:v}),a&&b(r,{panels:o,grid:u,focusedPanelId:d,dock:S,dockPanel:h})}else{let t=o(),i=[[t.id]],a={...s,[t.id]:t};g[r]=i,_[r]=t.id;let c=H(r,v);b(r,{panels:{[t.id]:t},grid:i,focusedPanelId:t.id,dock:c,dockPanel:s[n]}),e({currentProject:r,panels:a,grid:i,focusedPanelId:t.id,projectGrids:g,projectFocused:_,dock:c,projectDock:v})}},reloadProject:r=>{let{projectGrids:i,projectFocused:a,projectDock:o,panels:s}=t(),c={...i},l={...a},u={...o};delete c[r],delete l[r],delete u[r];let d=i[r],f=d?new Set(d.flat()):new Set,p={...s};for(let e of f)e!==`__dock__`&&delete p[e];let m=p[n];if(m){let e=m.tabs.filter(e=>e.projectId!==r),t=new Set(e.map(e=>e.id));p[n]={...m,tabs:e,tabHistory:m.tabHistory.filter(e=>t.has(e)),activeTabId:m.activeTabId&&t.has(m.activeTabId)?m.activeTabId:e[e.length-1]?.id??null}}e({projectGrids:c,projectFocused:l,projectDock:u,panels:p,currentProject:null}),t().switchProject(r)},setFocusedPanel:n=>{t().panels[n]&&e({focusedPanelId:n})},openTab:(n,i)=>{let a=t().isMobile(),o=a?t().grid[0]?.[0]??d(i):d(i);if(!t().panels[o])return``;if(n.type===`terminal`&&!n.metadata?.terminalIndex){let e=Object.values(t().panels).flatMap(e=>e.tabs).filter(e=>e.type===`terminal`).map(e=>{let t=e.id.match(/^terminal:(\d+)/);return t?parseInt(t[1],10):0}),r=e.length>0?Math.max(...e)+1:1;n={...n,metadata:{...n.metadata,terminalIndex:r}}}let s=f(n.type,n.metadata);if(n.type===`chat`&&n.metadata?.sessionId){let i=n.metadata.sessionId;for(let n of Object.values(t().panels)){let t=n.tabs.find(e=>e.type===`chat`&&e.metadata?.sessionId===i);if(t)return e(e=>({focusedPanelId:n.id,panels:{...e.panels,[n.id]:{...n,tabs:J(n.tabs,t.id),activeTabId:t.id,tabHistory:q(n.tabHistory,t.id)}}})),r(),t.id}}if(W.has(n.type))for(let n of Object.values(t().panels)){let t=n.tabs.find(e=>e.id===s);if(t)return e(e=>({focusedPanelId:n.id,panels:{...e.panels,[n.id]:{...n,tabs:J(n.tabs,t.id),activeTabId:t.id,tabHistory:q(n.tabHistory,t.id)}}})),r(),t.id}if(a)for(let n of t().grid.flat()){let i=t().panels[n];if(!i)continue;let a=i.tabs.find(e=>e.id===s||e.id.startsWith(`${s}@`));if(a)return e(e=>({focusedPanelId:i.id,panels:{...e.panels,[i.id]:{...i,tabs:J(i.tabs,a.id),activeTabId:a.id,tabHistory:q(i.tabHistory,a.id)}}})),r(),a.id}let c=t().panels[o],l=c.tabs.find(e=>e.id===s);if(l)return e(e=>({panels:{...e.panels,[o]:{...c,tabs:J(c.tabs,l.id),activeTabId:l.id,tabHistory:q(c.tabHistory,l.id)}}})),r(),l.id;let u=Object.values(t().panels).some(e=>e.id!==o&&e.tabs.some(e=>e.id===s))?`${s}@${o}`:s,p={...n,id:u,metadata:{...n.metadata,lastActiveAt:Date.now()}};return e(e=>{let t=e.panels[o];return{focusedPanelId:o,panels:{...e.panels,[o]:{...t,tabs:[...t.tabs,p],activeTabId:u,tabHistory:q(t.tabHistory,u)}}}}),r(),u},closeTab:(n,i)=>{let o=i?t().panels[i]:a(n);if(!o)return;let s=o.id;if(n.startsWith(`terminal:`))try{localStorage.removeItem(`ppm:terminal-session:${n}`)}catch{}e(e=>{let t=e.panels[s],r=t.tabs.filter(e=>e.id!==n),i=t.tabHistory.filter(e=>e!==n),a=t.activeTabId;if(t.activeTabId===n){let e=i.length>0?i[i.length-1]:null;a=e&&r.some(t=>t.id===e)?e:r[r.length-1]?.id??null}let o=e.grid.flat().length;if(r.length===0&&o>1&&s!==`__dock__`){let{[s]:t,...n}=e.panels,r=c(e.grid,s);return{panels:n,grid:r,focusedPanelId:e.focusedPanelId===s?r.flat()[0]??Object.keys(n)[0]:e.focusedPanelId}}return{panels:{...e.panels,[s]:{...t,tabs:r,activeTabId:a,tabHistory:i}}}}),r(),s===`__dock__`&&N(t)===0&&t().setDockVisible(!1)},setActiveTab:(n,i)=>{let o=i?t().panels[i]:a(n);if(!o)return;let s=o.id;e(e=>{let t=e.panels[s];return{focusedPanelId:s,panels:{...e.panels,[s]:{...t,tabs:J(t.tabs,n),activeTabId:n,tabHistory:q(t.tabHistory,n)}}}}),r()},updateTab:(t,n)=>{let i=a(t);i&&(e(e=>({panels:{...e.panels,[i.id]:{...i,tabs:i.tabs.map(e=>e.id===t?{...e,...n}:e)}}})),r())},reorderTab:(n,i,a)=>{let o=t().panels[i];if(!o)return;let s=o.tabs.findIndex(e=>e.id===n);if(s===-1||s===a)return;let c=[...o.tabs],[l]=c.splice(s,1);c.splice(a,0,l),e(e=>({panels:{...e.panels,[i]:{...o,tabs:c}}})),r()},moveTab:(n,i,a,o)=>{if(i===a)return;let s=t().panels[i],l=t().panels[a];if(!s||!l)return;let u=s.tabs.find(e=>e.id===n);if(!u)return;let d=s.tabs.filter(e=>e.id!==n),f=s.tabHistory.filter(e=>e!==n),p=s.activeTabId===n?f[f.length-1]??d[d.length-1]?.id??null:s.activeTabId,m=[...l.tabs];o===void 0?m.push(u):m.splice(o,0,u),e(e=>{let t=e.grid.flat().length;if(d.length===0&&t>1&&i!==`__dock__`){let{[i]:t,...r}=e.panels;return{panels:{...r,[a]:{...l,tabs:m,activeTabId:n,tabHistory:q(l.tabHistory,n)}},grid:c(e.grid,i),focusedPanelId:a}}return{focusedPanelId:a,panels:{...e.panels,[i]:{...s,tabs:d,activeTabId:p,tabHistory:f},[a]:{...l,tabs:m,activeTabId:n,tabHistory:q(l.tabHistory,n)}}}}),r()},splitPanel:(n,i,a,l)=>{let{grid:d,panels:f}=t(),p=t().isMobile(),m=f[a];if(!m)return!1;let h=m.tabs.find(e=>e.id===i);if(!h)return!1;let g=u(d,l??a);if(!g)return!1;let _=n===`left`||n===`right`,v=n===`up`||n===`down`;if(_&&(d[g.row]?.length??0)>=s(p)||v&&d.length>=3)return!1;let y=o([h],h.id);y.tabHistory=[h.id];let b=m.tabs.filter(e=>e.id!==i),x=m.tabHistory.filter(e=>e!==i),S=m.activeTabId===i?x[x.length-1]??b[b.length-1]?.id??null:m.activeTabId,C;if(_)C=d.map((e,t)=>{if(t!==g.row)return e;let r=[...e],i=n===`right`?g.col+1:g.col;return r.splice(i,0,y.id),r});else{C=[...d];let e=n===`down`?g.row+1:g.row;C.splice(e,0,[y.id])}return e(e=>{let t=e.grid.flat().length,n={...e.panels,[y.id]:y};if(b.length===0&&t>1){let{[a]:e,...t}=n;n=t,C=c(C,a)}else n[a]={...m,tabs:b,activeTabId:S,tabHistory:x};return{panels:n,grid:C,focusedPanelId:y.id}}),r(),!0},closePanel:n=>{let{panels:i,grid:a}=t();if(a.flat().length<=1)return;let o=i[n];if(!o)return;u(a,n);let s=a.flat(),l=s.indexOf(n),d=l>0?s[l-1]:s[1],f=i[d];f&&(e(e=>{let{[n]:t,...r}=e.panels,i=[...f.tabs,...o.tabs],a=f.activeTabId??o.activeTabId;return{panels:{...r,[d]:{...f,tabs:i,activeTabId:a,tabHistory:[...f.tabHistory,...o.tabHistory]}},grid:c(e.grid,n),focusedPanelId:d}}),r())},getPanelForTab:e=>a(e),isMobile:()=>typeof window<`u`&&window.innerWidth<768}});export{d as a,l as c,u as i,n,D as o,o as r,s,X as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t,x as n}from"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import{t as r}from"./file-exclamation-point-COAwgNGw.js";import{i,r as a}from"./api-client-BSB14J4w.js";import{$n as o,vr as s}from"./index-CerSxGdf.js";var c=e(t(),1),l=n();function u({filePath:e,projectName:t}){let n=(0,c.useRef)(null),[u,d]=(0,c.useState)(!1),[f,p]=(0,c.useState)(!1),m=(0,c.useMemo)(()=>{let n=/^(\/|[A-Za-z]:[/\\])/.test(e)?`/api/fs/raw?path=${encodeURIComponent(e)}`:`${i(t)}/files/raw?path=${encodeURIComponent(e)}`,r=a();return r?`${n}&token=${encodeURIComponent(r)}`:n},[e,t]);(0,c.useEffect)(()=>{let r=r=>{let i=r.detail;if(!(i.projectName!==t||i.path!==e))try{n.current?.contentWindow?.location.reload()}catch{}};return window.addEventListener(`file:changed`,r),()=>window.removeEventListener(`file:changed`,r)},[e,t]);let h=(0,c.useCallback)(()=>{window.open(m,`_blank`)},[m]);return f?(0,l.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-text-secondary`,children:[(0,l.jsx)(r,{className:`size-10 text-text-subtle`}),(0,l.jsx)(`p`,{className:`text-sm`,children:`Failed to load PDF.`})]}):(0,l.jsxs)(`div`,{className:`flex flex-col h-full`,children:[!u&&(0,l.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,l.jsx)(o,{className:`size-5 animate-spin text-text-subtle`})}),(0,l.jsxs)(`div`,{className:`flex flex-col h-full ${u?``:`hidden`}`,children:[(0,l.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-1.5 border-b border-border bg-background shrink-0`,children:[(0,l.jsx)(`span`,{className:`text-xs text-text-secondary truncate`,children:e}),(0,l.jsxs)(`button`,{onClick:h,className:`flex items-center gap-1 text-xs text-text-secondary hover:text-text-primary transition-colors`,children:[(0,l.jsx)(s,{className:`size-3`}),` Open in new tab`]})]}),(0,l.jsx)(`iframe`,{ref:n,src:m,title:e,className:`flex-1 w-full border-none`,onLoad:()=>d(!0),onError:()=>p(!0)})]})]})}export{u as PdfPreview};
@@ -1 +0,0 @@
1
- import{R as e}from"./vendor-mermaid-DrwG0NYt.js";export{e as createPieServices};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t,x as n}from"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import{t as r}from"./chevron-right-BLOtX8Vy.js";import{t as i}from"./x-BcqfTY_7.js";import{r as a,s as o}from"./api-client-BSB14J4w.js";import{n as s}from"./utils-DoY4yTP-.js";import{t as c}from"./button-BA_fJOtX.js";import{n as l}from"./use-is-mobile-BXGVvczu.js";import{t as u}from"./mobile-bottom-sheet-BUOJgiaZ.js";import{$t as d,Bn as f,Dr as p,Ft as m,G as h,Jt as g,Mr as _,Nr as v,Qt as y,Yt as b}from"./index-CerSxGdf.js";import{i as x,n as S,r as C,t as w}from"./format-bytes-Dk7B73B7.js";var T=e(t(),1);function E(e,t){return{cpu:e.cpu,ramMB:e.ramMB,name:t,diskReadBps:e.diskReadBps,diskWriteBps:e.diskWriteBps,gpuPct:e.gpuPct,gpuMemMB:e.gpuMemMB,netInBps:e.netInBps,netOutBps:e.netOutBps}}function D(e,t){if(!(e===void 0&&t===void 0))return(e??0)+(t??0)}function O(e,t){return e===`disk`?D(t.diskReadBps,t.diskWriteBps):e===`net`?D(t.netInBps,t.netOutBps):e===`gpu`?t.gpuPct:t.gpuMemMB}function k(e){return e===`disk`||e===`gpu`||e===`gpuMem`||e===`net`}function A(e,t,n,r){return t?[...e].sort((e,i)=>{let a=r(e),o=r(i);if(t===`name`){let e=a.name.localeCompare(o.name);return n===`asc`?e:-e}if(t===`cpu`)return n===`asc`?a.cpu-o.cpu:o.cpu-a.cpu;if(t===`ram`)return n===`asc`?a.ramMB-o.ramMB:o.ramMB-a.ramMB;if(k(t)){let e=O(t,a),r=O(t,o);return e===void 0&&r===void 0?0:e===void 0?1:r===void 0?-1:n===`asc`?e-r:r-e}return 0}):e}var j={cpu:0,ramMB:0,count:0};function M(e,t){return t===void 0?e:(e??0)+t}function N(e,t,n){return{cpu:e.cpu+t.cpu,ramMB:e.ramMB+t.ramMB,count:e.count+n,diskReadBps:M(e.diskReadBps,t.diskReadBps),diskWriteBps:M(e.diskWriteBps,t.diskWriteBps),gpuMemMB:M(e.gpuMemMB,t.gpuMemMB),netInBps:M(e.netInBps,t.netInBps),netOutBps:M(e.netOutBps,t.netOutBps)}}var ee=60;function P(e,t){return e.toLowerCase().includes(t)}function F(e,t){return P(e.name,t)||P(e.command,t)}function te(e,t){return e.slice(-ee).map(e=>e.groups[t]?.cpu??0)}function ne(e){let{processes:t,groups:n,history:r,mode:i,ppmOnly:a,query:o,sortKey:s,sortDir:c,expanded:l}=e,u=o.trim().toLowerCase(),d=new Map(t.map(e=>[e.pid,e]));if(i===`flat`){let e=a?t.filter(e=>e.ppm):t;u&&(e=e.filter(e=>F(e,u))),e=A(e,s,c,e=>E(e,e.name));let n=e.reduce((e,t)=>N(e,t,1),j);return{rows:e.map(e=>({kind:`process`,proc:e,indent:!1})),totals:n,autoExpanded:new Set}}let f=a?n.filter(e=>e.ppm):n,p=new Set;u&&(f=f.filter(e=>{let t=P(e.label,u),n=e.pids.some(e=>{let t=d.get(e);return t?F(t,u):!1}),r=t||n;return r&&n&&p.add(e.key),r})),f=A(f,s,c,e=>E(e,e.label));let m=[];for(let e of f){let t=u&&p.has(e.key)||l.has(e.key);if(m.push({kind:`group`,group:e,expanded:t,spark:te(r,e.key)}),!t)continue;let n=e.pids.map(e=>d.get(e)).filter(e=>e!==void 0);u&&(n=n.filter(e=>F(e,u))),n=A(n,s,c,e=>E(e,e.name));for(let e of n)m.push({kind:`process`,proc:e,indent:!0})}return{rows:m,totals:f.reduce((e,t)=>N(e,t,t.count),j),autoExpanded:p}}function I(e,t,n){return e===n?t===`desc`?[n,`asc`]:[null,`desc`]:[n,`desc`]}function L(e,t){return{pid:e.pid,startedAt:e.startedAt,tree:t}}var R=[`disk`,`gpu`,`net`],z={disk:`120px`,gpu:`90px`,net:`120px`},B=[`minmax(0,1fr)`,`64px`,`80px`],V=`130px`,H=`44px`;function U(e){return e===`disk`||e===`gpu`||e===`net`}function W(e,t){let n=R.filter(t=>e[t]),r=U(t)&&e[t]?t:null;return{wideTemplate:[...B,...n.map(e=>z[e]),V,H].join(` `),narrowTemplate:[...B,...r?[z[r]]:[],H].join(` `),columns:e,narrowExtra:r}}var G=`grid-cols-[var(--sysmon-grid-n)] @lg:grid-cols-[var(--sysmon-grid-w)]`;function re(e){return{"--sysmon-grid-n":e.narrowTemplate,"--sysmon-grid-w":e.wideTemplate}}function K(e,t){return e.narrowExtra===t?`block`:`hidden @lg:block`}function q(e){return e>80?`text-error`:e>50?`text-warning`:`text-success`}function ie(e){if(!e)return``;let t=Math.round((Date.now()-e)/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);if(n<60)return`${n}m`;let r=Math.floor(n/60);return r<24?`${r}h ${n%60}m`:`${Math.floor(r/24)}d ${r%24}h`}function J(e,t){return e===void 0&&t===void 0?`—`:`↓ ${w(e??0)} ↑ ${w(t??0)}`}function Y(e,t){return e===void 0&&t===void 0?`—`:`↓ ${w(e??0)} ↑ ${w(t??0)}`}function X(e,t){return e===void 0&&t===void 0?`—`:`${e===void 0?`—`:`${e.toFixed(0)}%`} · ${t===void 0?`—`:S(t)}`}function Z(e,t){if(!(e===void 0&&t===void 0))return(e??0)+(t??0)}var Q=n();function $({label:e,field:t,activeKey:n,activeDir:r,onClick:i,align:a=`right`,testId:o,className:c}){let l=n===t,u=l?r===`asc`?_:v:null,d=l?r===`asc`?`ascending`:`descending`:`none`;return(0,Q.jsx)(`div`,{role:`columnheader`,"aria-sort":d,className:s(`py-1.5 px-2 font-medium select-none`,a===`left`?`text-left`:`text-right`,c),children:(0,Q.jsxs)(`button`,{type:`button`,"data-testid":o,onClick:()=>i(t),className:s(`flex items-center gap-0.5 w-full min-h-11 md:min-h-0 cursor-pointer hover:text-text-primary transition-colors`,a===`left`?`justify-start`:`justify-end`,l&&`text-text-primary`),children:[(0,Q.jsx)(`span`,{children:e}),u&&(0,Q.jsx)(u,{className:`size-3`})]})})}var ae=150;function oe({mode:e,onModeChange:t,ppmOnly:n,onPpmOnlyChange:r,onQueryChange:i}){let[a,o]=(0,T.useState)(``),c=(0,T.useRef)(null);return(0,T.useEffect)(()=>(c.current&&clearTimeout(c.current),c.current=setTimeout(()=>i(a),ae),()=>{c.current&&clearTimeout(c.current)}),[a]),(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 p-2 border-b border-border shrink-0`,children:[(0,Q.jsxs)(`div`,{className:`relative flex-1 min-w-[140px]`,children:[(0,Q.jsx)(f,{className:`absolute left-2 top-1/2 -translate-y-1/2 size-3.5 text-text-subtle`}),(0,Q.jsx)(`input`,{type:`text`,value:a,onChange:e=>o(e.target.value),placeholder:`Search processes`,"aria-label":`Search processes`,"data-testid":`sysmon-process-search`,className:`w-full min-h-11 md:min-h-8 pl-7 pr-2 text-sm rounded-md border border-border bg-transparent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`})]}),(0,Q.jsx)(`button`,{type:`button`,onClick:()=>t(e===`grouped`?`flat`:`grouped`),"aria-pressed":e===`flat`,"data-testid":`sysmon-toggle-flat`,className:`min-h-11 md:min-h-8 px-3 text-xs rounded-md border border-border hover:bg-surface-hover transition-colors`,children:e===`flat`?`Flat`:`Grouped`}),(0,Q.jsx)(`button`,{type:`button`,onClick:()=>r(!n),"aria-pressed":n,"data-testid":`sysmon-filter-ppm`,className:s(`min-h-11 md:min-h-8 px-3 text-xs rounded-md border transition-colors`,n?`border-primary bg-primary/10 text-primary`:`border-border hover:bg-surface-hover`),children:`PPM only`})]})}function se({sortKey:e,sortDir:t,grid:n,onSort:r}){return(0,Q.jsxs)(`div`,{role:`row`,className:s(`grid gap-1 px-3 py-1.5 text-[11px] text-text-subtle border-b border-border sticky top-0 bg-background z-10`,G),children:[(0,Q.jsx)($,{label:`Process`,field:`name`,activeKey:e,activeDir:t,onClick:r,align:`left`,testId:`sysmon-sort-name`}),(0,Q.jsx)($,{label:`CPU`,field:`cpu`,activeKey:e,activeDir:t,onClick:r,testId:`sysmon-sort-cpu`}),(0,Q.jsx)($,{label:`RAM`,field:`ram`,activeKey:e,activeDir:t,onClick:r,testId:`sysmon-sort-ram`}),n.columns.disk&&(0,Q.jsx)($,{label:`Disk`,field:`disk`,activeKey:e,activeDir:t,onClick:r,testId:`sysmon-col-disk`,className:K(n,`disk`)}),n.columns.gpu&&(0,Q.jsx)($,{label:`GPU`,field:`gpu`,activeKey:e,activeDir:t,onClick:r,testId:`sysmon-col-gpu`,className:K(n,`gpu`)}),n.columns.net&&(0,Q.jsx)($,{label:`Net`,field:`net`,activeKey:e,activeDir:t,onClick:r,testId:`sysmon-col-net`,className:K(n,`net`)}),(0,Q.jsx)(`span`,{className:`text-right hidden @lg:block`,children:`Trend`}),(0,Q.jsx)(`span`,{})]})}function ce({totals:e,grid:t,gpuUtilPercent:n}){return(0,Q.jsxs)(`div`,{className:s(`grid gap-1 px-3 py-1.5 text-xs font-medium border-t border-border shrink-0`,G),"data-testid":`sysmon-total`,"data-process-count":e.count,children:[(0,Q.jsxs)(`span`,{className:`truncate`,children:[`Total (`,e.count,` processes)`]}),(0,Q.jsxs)(`span`,{className:s(`text-right`,q(e.cpu)),children:[e.cpu.toFixed(1),`%`]}),(0,Q.jsx)(`span`,{className:`text-right text-text-secondary`,children:S(e.ramMB)}),t.columns.disk&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(t,`disk`)),children:J(e.diskReadBps,e.diskWriteBps)}),t.columns.gpu&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(t,`gpu`)),children:X(n,e.gpuMemMB)}),t.columns.net&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(t,`net`)),children:Y(e.netInBps,e.netOutBps)}),(0,Q.jsx)(`span`,{className:`hidden @lg:block`}),(0,Q.jsx)(`span`,{})]})}var le=(0,T.memo)(function({data:e,width:t=120,height:n=24,color:r=`var(--color-primary)`,maxValue:i}){let a=(0,T.useRef)(null);return(0,T.useEffect)(()=>{let o=a.current;if(!o||e.length<2)return;let s=o.getContext(`2d`);if(!s)return;let c=window.devicePixelRatio||1;o.width=t*c,o.height=n*c,s.scale(c,c),s.clearRect(0,0,t,n);let l=x(e,i),u=t/(e.length-1),d=n-4;s.beginPath(),s.strokeStyle=C(r,getComputedStyle(o)),s.lineWidth=1.5,s.lineJoin=`round`;for(let t=0;t<e.length;t++){let n=t*u,r=2+d-e[t]/l*d;t===0?s.moveTo(n,r):s.lineTo(n,r)}s.stroke()},[e,t,n,r,i]),(0,Q.jsx)(`canvas`,{ref:a,style:{width:t,height:n},className:`inline-block`})});function ue({group:e,expanded:t,spark:n,grid:i,onToggle:a}){let o=t?p:r;return(0,Q.jsxs)(`div`,{className:`grid items-center gap-1 min-h-11 md:min-h-7 px-3 text-xs cursor-pointer hover:bg-surface-hover transition-colors grid-cols-[var(--sysmon-grid-n)] @lg:grid-cols-[var(--sysmon-grid-w)]`,onClick:()=>a(e.key),"data-testid":`sysmon-group-row`,"data-group-key":e.key,"data-count":e.count,"data-disk-bps":Z(e.diskReadBps,e.diskWriteBps),"data-gpu-pct":e.gpuPct,"data-net-bps":Z(e.netInBps,e.netOutBps),children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,Q.jsx)(`button`,{type:`button`,onClick:t=>{t.stopPropagation(),a(e.key)},"aria-expanded":t,"aria-label":`${t?`Collapse`:`Expand`} ${e.label}`,"data-testid":`sysmon-group-expand`,className:`flex items-center justify-center size-11 md:size-7 -ml-2 shrink-0`,children:(0,Q.jsx)(o,{className:`size-3.5 text-text-subtle`})}),(0,Q.jsx)(`span`,{className:`truncate font-medium`,children:e.label}),(0,Q.jsxs)(`span`,{className:`text-text-subtle shrink-0`,children:[`(`,e.count,`)`]})]}),(0,Q.jsxs)(`span`,{className:s(`text-right`,q(e.cpu)),children:[e.cpu.toFixed(1),`%`]}),(0,Q.jsx)(`span`,{className:`text-right text-text-secondary`,children:S(e.ramMB)}),i.columns.disk&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(i,`disk`)),children:J(e.diskReadBps,e.diskWriteBps)}),i.columns.gpu&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(i,`gpu`)),children:X(e.gpuPct,e.gpuMemMB)}),i.columns.net&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(i,`net`)),children:Y(e.netInBps,e.netOutBps)}),(0,Q.jsx)(`div`,{className:`hidden @lg:flex items-center justify-end`,children:n.length>1&&(0,Q.jsx)(le,{data:n,width:120,height:20,maxValue:100})}),(0,Q.jsx)(`div`,{className:`hidden @lg:block`})]})}var de=`Protected: PPM or OS-critical process — cannot be ended.`;function fe({proc:e,indent:t,grid:n,onKillClick:r}){return(0,Q.jsxs)(`div`,{className:`grid items-center gap-1 min-h-11 md:min-h-7 px-3 text-xs group/proc hover:bg-surface-hover transition-colors grid-cols-[var(--sysmon-grid-n)] @lg:grid-cols-[var(--sysmon-grid-w)]`,"data-testid":`sysmon-process-row`,"data-pid":e.pid,"data-ppm":e.ppm,"data-protected":e.protected,"data-disk-bps":Z(e.diskReadBps,e.diskWriteBps),"data-gpu-pct":e.gpuPct,"data-net-bps":Z(e.netInBps,e.netOutBps),children:[(0,Q.jsxs)(`div`,{className:s(`flex items-start gap-1.5 min-w-0`,t&&`pl-6`),children:[(0,Q.jsx)(`span`,{className:`text-text-subtle shrink-0`,children:e.pid}),(0,Q.jsx)(`span`,{className:`truncate text-text-secondary`,title:e.command,children:e.command})]}),(0,Q.jsxs)(`span`,{className:s(`text-right`,q(e.cpu)),children:[e.cpu.toFixed(1),`%`]}),(0,Q.jsx)(`span`,{className:`text-right text-text-secondary`,children:S(e.ramMB)}),n.columns.disk&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(n,`disk`)),children:J(e.diskReadBps,e.diskWriteBps)}),n.columns.gpu&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(n,`gpu`)),children:X(e.gpuPct,e.gpuMemMB)}),n.columns.net&&(0,Q.jsx)(`span`,{className:s(`text-right text-text-secondary tabular-nums truncate`,K(n,`net`)),children:Y(e.netInBps,e.netOutBps)}),(0,Q.jsx)(`span`,{className:`hidden @lg:block text-text-subtle text-right`,title:e.startedAt?new Date(e.startedAt).toLocaleString():``,children:ie(e.startedAt||void 0)}),(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsx)(`button`,{type:`button`,onClick:t=>{t.stopPropagation(),r(e)},disabled:e.protected,"aria-label":`End process ${e.name} (${e.pid})`,title:e.protected?de:`End process ${e.name}`,"data-testid":`sysmon-kill-btn`,className:s(`flex items-center justify-center size-11 md:size-7 rounded transition-all`,`can-hover:opacity-0 can-hover:group-hover/proc:opacity-100`,e.protected?`opacity-40 cursor-not-allowed`:`hover:bg-error/20 hover:text-error active:bg-error/30`),children:(0,Q.jsx)(i,{className:`size-3.5`})})})]})}function pe({process:e,onConfirm:t,onCancel:n}){let r=l(),[i,a]=(0,T.useState)(!1);if((0,T.useEffect)(()=>{e||a(!1)},[e]),!e)return null;let o=(0,Q.jsxs)(`div`,{className:`space-y-4`,"data-testid":`sysmon-kill-confirm`,children:[(0,Q.jsxs)(`p`,{className:`text-sm`,children:[`End `,(0,Q.jsx)(`span`,{className:`font-medium`,children:e.name}),` (pid `,e.pid,`)?`]}),(0,Q.jsxs)(`p`,{className:`text-xs text-text-subtle`,children:[`CPU `,e.cpu.toFixed(1),`% · RAM `,S(e.ramMB)]}),(0,Q.jsxs)(`label`,{className:`flex items-center justify-between gap-3 min-h-11 py-1`,children:[(0,Q.jsx)(`span`,{className:`text-sm`,children:`Also end child processes`}),(0,Q.jsx)(h,{checked:i,onCheckedChange:a,"data-testid":`sysmon-kill-tree`,"aria-label":`Also end child processes`})]}),(0,Q.jsxs)(`div`,{className:`flex flex-col-reverse md:flex-row gap-2 md:justify-end pt-2`,children:[(0,Q.jsx)(c,{variant:`outline`,onClick:n,"data-testid":`sysmon-kill-confirm-cancel`,className:`min-h-11`,children:`Cancel`}),(0,Q.jsx)(c,{variant:`destructive`,autoFocus:!1,onClick:()=>t(e,i),"data-testid":`sysmon-kill-confirm-ok`,className:`min-h-11`,children:`End process`})]})]});return r?(0,Q.jsx)(u,{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:`End process`}),o]})}):(0,Q.jsx)(g,{open:!0,onOpenChange:e=>!e&&n(),children:(0,Q.jsxs)(b,{children:[(0,Q.jsx)(y,{children:(0,Q.jsx)(d,{children:`End process`})}),o]})})}var me={disk:!1,gpu:!1,net:!1};async function he(e){let t=a(),n={"Content-Type":`application/json`,"X-PPM-Request":`1`};t&&(n.Authorization=`Bearer ${t}`);let r=await fetch(`/api/system/resources/kill`,{method:`POST`,headers:n,body:JSON.stringify(e)}),i;try{i=await r.json()}catch{throw Error(r.ok?`Empty response from server`:`Server error (HTTP ${r.status})`)}if(i.ok===!1)throw Error(i.error??`HTTP ${r.status}`);return i.data}function ge({snapshot:e,history:t}){let n=l(),r=(0,T.useRef)(null),[i,a]=(0,T.useState)(`grouped`),[s,c]=(0,T.useState)(!1),[u,d]=(0,T.useState)(``),[f,p]=(0,T.useState)(null),[h,g]=(0,T.useState)(`desc`),[_,v]=(0,T.useState)(()=>new Set),[y,b]=(0,T.useState)(null),{rows:x,totals:S}=(0,T.useMemo)(()=>ne({processes:e.processes,groups:e.groups,history:t,mode:i,ppmOnly:s,query:u,sortKey:f,sortDir:h,expanded:_}),[e.processes,e.groups,t,i,s,u,f,h,_]),C=e.processColumns??me,w=(0,T.useMemo)(()=>W(C,f),[C,f]),E=e.system.gpus[0]?.utilPercent,D=m({count:x.length,getScrollElement:()=>r.current,estimateSize:()=>n?44:28,overscan:12}),O=(0,T.useCallback)(e=>{let[t,n]=I(f,h,e);p(t),g(n)},[f,h]),k=(0,T.useCallback)(e=>{v(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),A=(0,T.useCallback)(async(e,t)=>{b(null);try{await he(L(e,t)),o.success(`Ended ${e.name} (${e.pid})`)}catch(t){o.error(t instanceof Error?t.message:`Failed to end ${e.name}`)}},[]);return(0,Q.jsxs)(`div`,{className:`h-full flex flex-col min-h-0 @container`,style:re(w),"data-testid":`sysmon-processes`,"data-row-count":x.length,children:[(0,Q.jsx)(oe,{mode:i,onModeChange:a,ppmOnly:s,onPpmOnlyChange:c,onQueryChange:d}),(0,Q.jsx)(se,{sortKey:f,sortDir:h,grid:w,onSort:O}),(0,Q.jsx)(`div`,{ref:r,className:`flex-1 min-h-0 overflow-y-auto`,children:(0,Q.jsx)(`div`,{style:{height:D.getTotalSize(),position:`relative`},children:D.getVirtualItems().map(e=>{let t=x[e.index];return t?(0,Q.jsx)(`div`,{style:{position:`absolute`,top:0,left:0,right:0,transform:`translateY(${e.start}px)`},children:t.kind===`group`?(0,Q.jsx)(ue,{group:t.group,expanded:t.expanded,spark:t.spark,grid:w,onToggle:k}):(0,Q.jsx)(fe,{proc:t.proc,indent:t.indent,grid:w,onKillClick:b})},t.kind===`group`?t.group.key:`p:${t.proc.pid}`):null})})}),(0,Q.jsx)(ce,{totals:S,grid:w,gpuUtilPercent:E}),(0,Q.jsx)(pe,{process:y,onConfirm:A,onCancel:()=>b(null)})]})}export{ge as ProcessTable};
@@ -1 +0,0 @@
1
- import{I as e}from"./vendor-mermaid-DrwG0NYt.js";export{e as createRadarServices};
@@ -1 +0,0 @@
1
- var e={id:`aurora-dark`,name:`Aurora Dark`,style:`aurora`,mode:`dark`,swatch:[`#0a0e17`,`#5b8cff`,`#a06bff`],syntax:{shikiTheme:`github-dark-dimmed`},mobileOverrides:{panel:`#141c2e`,panel2:`#141c2e`},tokens:{bg:`radial-gradient(120% 120% at 0% 0%, #0e1626 0%, #0a0e17 55%, #080b12 100%)`,bgSolid:`#0a0e17`,rail:`#141820`,panel:`#141820`,panel2:`#141c2e`,border:`rgba(255,255,255,0.12)`,borderSoft:`rgba(255,255,255,0.06)`,text:`#eaeefb`,text2:`#9aa6c2`,text3:`#64708c`,accent:`#5b8cff`,accentFg:`#ffffff`,accent2:`#a06bff`,accentWash:`rgba(91,140,255,0.14)`,accentWashBorder:`rgba(91,140,255,0.30)`,success:`#34d399`,warning:`#fbbf24`,error:`#f87171`,info:`#38bdf8`,shadowPanel:`0 30px 70px -24px rgba(0,0,0,0.65)`,shadowFloat:`0 8px 24px -10px rgba(0,0,0,0.5)`,rad:`18px`,radSm:`12px`,blur:`16px`}},t={id:`aurora-light`,name:`Aurora Light`,style:`aurora`,mode:`light`,swatch:[`#f3f7ff`,`#2f6bff`,`#7c4dff`],syntax:{shikiTheme:`github-light`},mobileOverrides:{panel:`rgba(255,255,255,0.82)`,panel2:`rgba(255,255,255,0.96)`},tokens:{bg:`radial-gradient(120% 120% at 0% 0%, #f3f7ff 0%, #eef2fb 55%, #e8edf7 100%)`,bgSolid:`#f3f7ff`,rail:`rgba(255,255,255,0.62)`,panel:`rgba(255,255,255,0.62)`,panel2:`rgba(255,255,255,0.94)`,border:`rgba(20,30,60,0.12)`,borderSoft:`rgba(20,30,60,0.07)`,text:`#0f1a33`,text2:`#4a5878`,text3:`#8391ad`,accent:`#2f6bff`,accentFg:`#ffffff`,accent2:`#7c4dff`,accentWash:`rgba(47,107,255,0.10)`,accentWashBorder:`rgba(47,107,255,0.24)`,success:`#059f6b`,warning:`#d98a00`,error:`#dc2626`,info:`#0891b2`,shadowPanel:`0 30px 70px -30px rgba(30,50,110,0.30)`,shadowFloat:`0 8px 24px -12px rgba(30,50,110,0.20)`,rad:`18px`,radSm:`12px`,blur:`16px`}},n={id:`slate-dark`,name:`Slate Dark`,style:`slate`,mode:`dark`,swatch:[`#15161c`,`#5b7cfa`,`#f2a53c`],syntax:{shikiTheme:`github-dark-dimmed`},tokens:{bg:`#15161c`,bgSolid:`#15161c`,rail:`#1b1d25`,panel:`#1e2028`,panel2:`#262932`,border:`#2b2e39`,borderSoft:`#23262f`,text:`#ecebe8`,text2:`#a6a49f`,text3:`#6f6d68`,accent:`#5b7cfa`,accentFg:`#ffffff`,accent2:`#f2a53c`,accentWash:`rgba(91,124,250,0.13)`,accentWashBorder:`rgba(91,124,250,0.26)`,success:`#3ecf8e`,warning:`#f2a53c`,error:`#f2555a`,info:`#5b9cf5`,shadowPanel:`0 24px 56px -26px rgba(0,0,0,0.6)`,shadowFloat:`0 10px 26px -14px rgba(0,0,0,0.5)`,rad:`16px`,radSm:`11px`,blur:`0px`}},r={id:`slate-light`,name:`Slate Light`,style:`slate`,mode:`light`,swatch:[`#f6f5f1`,`#3f63f0`,`#e08a1e`],syntax:{shikiTheme:`github-light`},tokens:{bg:`#f6f5f1`,bgSolid:`#f6f5f1`,rail:`#f0efe9`,panel:`#ffffff`,panel2:`#ffffff`,border:`#eae8e1`,borderSoft:`#f0eee8`,text:`#232426`,text2:`#6b6a66`,text3:`#9b9a94`,accent:`#3f63f0`,accentFg:`#ffffff`,accent2:`#e08a1e`,accentWash:`rgba(63,99,240,0.09)`,accentWashBorder:`rgba(63,99,240,0.20)`,success:`#16a06a`,warning:`#d98a1e`,error:`#dc2626`,info:`#0e7490`,shadowPanel:`0 24px 56px -28px rgba(60,50,30,0.22)`,shadowFloat:`0 10px 26px -16px rgba(60,50,30,0.16)`,rad:`16px`,radSm:`11px`,blur:`0px`}},i={id:`precision-dark`,name:`Precision Dark`,style:`precision`,mode:`dark`,swatch:[`#0c0d11`,`#6698ff`,`#52d1c9`],syntax:{shikiTheme:`one-dark-pro`},tokens:{bg:`#0c0d11`,bgSolid:`#0c0d11`,rail:`#101116`,panel:`#131519`,panel2:`#191b21`,border:`#23252d`,borderSoft:`#1a1c22`,text:`#f3f4f6`,text2:`#969aa4`,text3:`#5f636e`,accent:`#6698ff`,accentFg:`#ffffff`,accent2:`#52d1c9`,accentWash:`rgba(102,152,255,0.12)`,accentWashBorder:`rgba(102,152,255,0.30)`,success:`#3ddc84`,warning:`#f5b23a`,error:`#f87171`,info:`#52a8d1`,shadowPanel:`0 18px 44px -24px rgba(0,0,0,0.72)`,shadowFloat:`0 6px 18px -10px rgba(0,0,0,0.6)`,rad:`10px`,radSm:`7px`,blur:`0px`}},a={id:`precision-light`,name:`Precision Light`,style:`precision`,mode:`light`,swatch:[`#fbfbfc`,`#3a70f0`,`#17b3a8`],syntax:{shikiTheme:`github-light`},tokens:{bg:`#fbfbfc`,bgSolid:`#fbfbfc`,rail:`#f4f5f7`,panel:`#ffffff`,panel2:`#ffffff`,border:`#e8eaed`,borderSoft:`#f0f1f4`,text:`#16171b`,text2:`#6a6f78`,text3:`#9aa0aa`,accent:`#3a70f0`,accentFg:`#ffffff`,accent2:`#17b3a8`,accentWash:`rgba(58,112,240,0.09)`,accentWashBorder:`rgba(58,112,240,0.22)`,success:`#12a866`,warning:`#d9930f`,error:`#dc2626`,info:`#0e7490`,shadowPanel:`0 18px 44px -26px rgba(20,30,60,0.20)`,shadowFloat:`0 6px 18px -12px rgba(20,30,60,0.14)`,rad:`10px`,radSm:`7px`,blur:`0px`}},o={"aurora-dark":e,"aurora-light":t,"slate-dark":n,"slate-light":r,"precision-dark":i,"precision-light":a},s=[`aurora-dark`,`aurora-light`,`slate-dark`,`slate-light`,`precision-dark`,`precision-light`],c=e;function l(){return typeof window<`u`&&window.matchMedia(`(prefers-color-scheme: dark)`).matches}function u(e,t,n=[],r){return e===`custom`?n.find(e=>e.id===r)??c:o[`${e}-${t===`system`?l()?`dark`:`light`:t}`]??c}export{s as n,o as r,u as t};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import"./context-menu-Cq0u3SK9.js";import"./api-client-BSB14J4w.js";import"./vendor-mermaid-DrwG0NYt.js";import"./settings-store-C20lqh0G.js";import"./project-store-B8BkHXy5.js";import"./button-BA_fJOtX.js";import"./use-is-mobile-BXGVvczu.js";import"./mobile-bottom-sheet-BUOJgiaZ.js";import"./api-settings-kQHV6pYZ.js";import{I as e}from"./index-CerSxGdf.js";export{e as SettingsTab};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t,x as n}from"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import{t as r}from"./database-BH0urvbs.js";import{t as i}from"./glide-data-grid-Cehfgrzc.js";import{t as a}from"./table-CHmxuh6M.js";import{i as o,n as s,s as c}from"./api-client-BSB14J4w.js";import"./vendor-mermaid-DrwG0NYt.js";import"./settings-store-C20lqh0G.js";import"./panel-store-DCD82zc1.js";import"./tab-store-DAsvpx4t.js";import{$n as l,Cr as u,Un as d}from"./index-CerSxGdf.js";import"./data-grid-types-CYvF-xK5.js";import"./use-monaco-theme-CGucu3fb.js";import{t as f}from"./sql-query-editor-BPYsJDsn.js";var p=e(t(),1);function m(e,t,n){let[r,i]=(0,p.useState)([]),[a,l]=(0,p.useState)(null),[u,d]=(0,p.useState)(null),[f,m]=(0,p.useState)([]),[h,g]=(0,p.useState)(!1),[_,v]=(0,p.useState)(null),[y,b]=(0,p.useState)(1),[x,S]=(0,p.useState)(null),[C,w]=(0,p.useState)(null),[T,E]=(0,p.useState)(!1),D=n?`/api/db/connections/${n}`:null,O=!n&&!e&&/^(\/|[A-Za-z]:[/\\])/.test(t),k=D??(O?`/api/fs/sqlite`:`${o(e)}/sqlite`),A=D?``:`path=${encodeURIComponent(t)}`,j=(0,p.useCallback)(async()=>{g(!0),v(null);try{let e=D?`?cached=1`:A?`?${A}`:``,t=await s.get(`${k}/tables${e}`);i(t),!D&&t.length>0&&!a&&l(t[0].name)}catch(e){v(e.message)}finally{g(!1)}},[k,A,D]);(0,p.useEffect)(()=>{j()},[j]);let M=(0,p.useCallback)(async()=>{if(a){g(!0);try{let e=A?`${A}&`:``,[t,n]=await Promise.all([s.get(`${k}/data?${e}table=${encodeURIComponent(a)}&page=${y}&limit=100`),s.get(`${k}/schema?${e}table=${encodeURIComponent(a)}`)]);d(t),m(n)}catch(e){v(e.message)}finally{g(!1)}}},[k,A,a,y]);(0,p.useEffect)(()=>{M()},[M]);let N=(0,p.useCallback)(e=>{l(e),b(1),S(null)},[]),P=(0,p.useCallback)(async e=>{E(!0),w(null);try{let n=D?{sql:e}:{path:t,sql:e},r=await s.post(`${k}/query`,n);S(r),r.changeType===`modify`&&M()}catch(e){w(e.message)}finally{E(!1)}},[k,D,t,M]),F=(0,p.useCallback)((e,t)=>{let n=t.message;v(n),c.error(`${e} failed`,{description:n})},[]);return{tables:r,selectedTable:a,selectTable:N,tableData:u,schema:f,loading:h,error:_,page:y,setPage:b,queryResult:x,queryError:C,queryLoading:T,executeQuery:P,updateCell:(0,p.useCallback)(async(e,n,r)=>{if(a)try{D?await s.put(`${k}/cell`,{table:a,pkColumn:`rowid`,pkValue:e,column:n,value:r}):await s.put(`${k}/cell`,{path:t,table:a,rowid:e,column:n,value:r}),M()}catch(e){F(`Update cell`,e)}},[k,D,t,a,M,F]),deleteRow:(0,p.useCallback)(async e=>{if(a)try{D?await s.del(`${k}/row`,{table:a,pkColumn:`rowid`,pkValue:e}):await s.del(`${k}/row`,{path:t,table:a,rowid:e}),M(),j()}catch(e){F(`Delete row`,e)}},[k,D,t,a,M,j,F]),refreshTables:j,refreshData:M}}var h=n();function g({tables:e,selectedTable:t,onSelect:n,onRefresh:r}){return(0,h.jsxs)(`div`,{className:`w-48 shrink-0 flex flex-col bg-background overflow-hidden`,children:[(0,h.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[(0,h.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wider`,children:`Tables`}),(0,h.jsx)(`button`,{type:`button`,onClick:r,className:`text-muted-foreground hover:text-foreground transition-colors`,title:`Refresh tables`,children:(0,h.jsx)(d,{className:`size-3`})})]}),(0,h.jsxs)(`div`,{className:`flex-1 overflow-y-auto`,children:[e.map(e=>(0,h.jsxs)(`button`,{type:`button`,onClick:()=>n(e.name),className:`w-full flex items-center gap-2 px-3 py-1.5 text-left text-xs transition-colors ${t===e.name?`bg-muted text-foreground`:`text-muted-foreground hover:bg-muted/50 hover:text-foreground`}`,children:[(0,h.jsx)(a,{className:`size-3 shrink-0`}),(0,h.jsx)(`span`,{className:`truncate flex-1`,children:e.name}),(0,h.jsx)(`span`,{className:`text-[10px] opacity-60`,children:e.rowCount})]},e.name)),e.length===0&&(0,h.jsx)(`p`,{className:`px-3 py-4 text-xs text-muted-foreground text-center`,children:`No tables found`})]})]})}function _({onExecute:e,loading:t}){return(0,h.jsx)(f,{onExecute:e,loading:t})}function v({metadata:e}){let t=e?.filePath,n=e?.projectName,i=e?.connectionId,a=e?.tableName,[o,s]=(0,p.useState)(!1);if(i)return(0,h.jsx)(y,{projectName:``,dbPath:``,connectionId:i,connectionName:e?.connectionName,initialTable:a,queryPanelOpen:o,onToggleQueryPanel:()=>s(e=>!e),hideTableList:!0});let c=!!t&&!n&&/^(\/|[A-Za-z]:[/\\])/.test(t);return!t||!n&&!c?(0,h.jsxs)(`div`,{className:`flex items-center justify-center h-full text-text-secondary text-sm`,children:[(0,h.jsx)(r,{className:`size-5 mr-2`}),` No database file selected.`]}):(0,h.jsx)(y,{projectName:n??``,dbPath:t,queryPanelOpen:o,onToggleQueryPanel:()=>s(e=>!e)})}function y({projectName:e,dbPath:t,connectionId:n,connectionName:a,initialTable:o,queryPanelOpen:s,onToggleQueryPanel:c,hideTableList:d}){let f=m(e,t,n),v=(0,p.useRef)(!1);return(0,p.useEffect)(()=>{o&&!v.current&&f.tables.length>0&&(v.current=!0,f.selectTable(o))},[o,f.tables]),f.error&&f.tables.length===0?(0,h.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-text-secondary`,children:[(0,h.jsx)(u,{className:`size-10 text-destructive`}),(0,h.jsx)(`p`,{className:`text-sm`,children:f.error})]}):f.loading&&f.tables.length===0?(0,h.jsxs)(`div`,{className:`flex items-center justify-center h-full gap-2 text-text-secondary`,children:[(0,h.jsx)(l,{className:`size-5 animate-spin`}),(0,h.jsx)(`span`,{className:`text-sm`,children:`Loading database...`})]}):(0,h.jsxs)(`div`,{className:`flex h-full w-full overflow-hidden`,children:[!d&&(0,h.jsx)(g,{tables:f.tables,selectedTable:f.selectedTable,onSelect:f.selectTable,onRefresh:f.refreshTables}),(0,h.jsxs)(`div`,{className:`flex-1 flex flex-col overflow-hidden ${d?``:`border-l border-border`}`,children:[(0,h.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border bg-background shrink-0`,children:[(0,h.jsx)(r,{className:`size-3.5 text-muted-foreground`}),(0,h.jsx)(`span`,{className:`text-xs text-muted-foreground truncate`,children:a??t}),(0,h.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:f.selectedTable&&`/ ${f.selectedTable}`}),(0,h.jsx)(`div`,{className:`ml-auto`,children:(0,h.jsx)(`button`,{type:`button`,onClick:c,className:`px-2 py-1 rounded text-xs transition-colors ${s?`bg-muted text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:`SQL`})})]}),(0,h.jsx)(`div`,{className:`flex-1 overflow-hidden ${s?`max-h-[60%]`:``}`,children:f.tableData?(0,h.jsx)(i,{columns:f.tableData.columns,rows:f.tableData.rows,total:f.tableData.total,limit:f.tableData.limit,schema:f.schema.map(e=>({name:e.name,type:e.type,nullable:!e.notnull,pk:!!e.pk,defaultValue:e.dflt_value,fk:e.fk??null})),loading:f.loading,page:f.page,onPageChange:f.setPage,onCellUpdate:(e,t,n,r)=>f.updateCell(t,n,r),onRowDelete:(e,t)=>f.deleteRow(t)}):(0,h.jsx)(`div`,{className:`flex items-center justify-center h-full text-xs text-muted-foreground`,children:f.loading?(0,h.jsx)(l,{className:`size-4 animate-spin`}):`Select a table`})}),s&&(0,h.jsx)(`div`,{className:`border-t border-border h-[40%] shrink-0`,children:(0,h.jsx)(_,{onExecute:f.executeQuery,loading:f.queryLoading})})]})]})}export{v as SqliteViewer};