failproofai 1.0.6 → 1.0.7-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +3 -3
  3. package/.next/standalone/.next/prerender-manifest.json +4 -4
  4. package/.next/standalone/.next/required-server-files.json +1 -1
  5. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  6. package/.next/standalone/.next/server/app/_global-error/page.js +4 -4
  7. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  8. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
  11. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +6 -6
  12. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  13. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  15. package/.next/standalone/.next/server/app/_not-found/page.js +4 -4
  16. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  19. package/.next/standalone/.next/server/app/_not-found.rsc +15 -15
  20. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +15 -15
  21. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +14 -14
  22. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  23. package/.next/standalone/.next/server/app/api/audit/invite/route.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/api/audit/run/route.js +8 -7
  25. package/.next/standalone/.next/server/app/api/audit/run/route.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/api/audit/status/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/auth/login-request/route.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/api/auth/login-verify/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/auth/status/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/audit/page/server-reference-manifest.json +2 -2
  33. package/.next/standalone/.next/server/app/audit/page.js +7 -5
  34. package/.next/standalone/.next/server/app/audit/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/audit/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/index.html +1 -1
  37. package/.next/standalone/.next/server/app/index.rsc +15 -15
  38. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +14 -14
  39. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +15 -15
  40. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  41. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  42. package/.next/standalone/.next/server/app/page.js +6 -6
  43. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +14 -14
  46. package/.next/standalone/.next/server/app/policies/page.js +13 -11
  47. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  50. package/.next/standalone/.next/server/app/project/[name]/page.js +8 -7
  51. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  54. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
  55. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js +7 -7
  56. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
  59. package/.next/standalone/.next/server/app/projects/page.js +7 -6
  60. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +41 -8
  63. package/.next/standalone/.next/server/app/settings/page.js +12 -9
  64. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  65. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/chunks/{[externals]__1msfs-h._.js → [externals]__19_pzeq._.js} +1 -1
  67. package/.next/standalone/.next/server/chunks/{[externals]__1_bftcl._.js → [externals]__1j-zsg5._.js} +1 -1
  68. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o07qi9._.js +1 -1
  69. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__1_r2rbg._.js → [root-of-the-server]__1bf34x4._.js} +5 -7
  70. package/.next/standalone/.next/server/chunks/_09dz7xv._.js +21 -21
  71. package/.next/standalone/.next/server/chunks/_0tovk6q._.js +1 -1
  72. package/.next/standalone/.next/server/chunks/_0trp3yc._.js +1 -1
  73. package/.next/standalone/.next/server/chunks/_1ek68ln._.js +16 -16
  74. package/.next/standalone/.next/server/chunks/{_1c3k-8x._.js → _1q5i8mb._.js} +2 -2
  75. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_01r25oi._.js +2 -2
  76. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_09z9-p7._.js +2 -2
  77. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_1nxcc4v._.js +1 -1
  78. package/.next/standalone/.next/server/chunks/src_hooks_01frwmb._.js +5 -0
  79. package/.next/standalone/.next/server/chunks/src_hooks_18qtd42._.js +3 -0
  80. package/.next/standalone/.next/server/chunks/src_hooks_custom-hooks-loader_ts_0lnb3n3._.js +4 -2
  81. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__01bmjsj._.js +3 -0
  82. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__04usis8._.js +4 -0
  83. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__056wjo4._.js +4 -0
  84. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__059yza8._.js +3 -0
  85. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0eip4_k._.js +22 -0
  86. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0n0xg95._.js +4 -0
  87. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qcb0mg._.js +3 -0
  88. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qxnccm._.js +5 -0
  89. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0rwtwpm._.js +4 -0
  90. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s_yomn._.js +4 -0
  91. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0soxz2z._.js +3 -0
  92. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0yrsbd_._.js +3 -0
  93. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11mayhe._.js +4 -0
  94. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__13d-wb6._.js +3 -0
  95. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1b2dbet._.js +1 -1
  96. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1dinjii._.js +3 -0
  97. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0cxe_2_._.js → [root-of-the-server]__1mf3zp6._.js} +3 -3
  98. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1svlq8e._.js → [root-of-the-server]__1p28m0u._.js} +2 -2
  99. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1pprgri._.js +4 -0
  100. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1q4p5b8._.js +4 -0
  101. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1qiz0e4._.js +3 -0
  102. package/.next/standalone/.next/server/chunks/ssr/_042cgl1._.js +3 -0
  103. package/.next/standalone/.next/server/chunks/ssr/_08x1r5t._.js +1 -1
  104. package/.next/standalone/.next/server/chunks/ssr/_0bqoto4._.js +3 -0
  105. package/.next/standalone/.next/server/chunks/ssr/{_17o744m._.js → _0cf1olg._.js} +2 -2
  106. package/.next/standalone/.next/server/chunks/ssr/_0uyu3jf._.js +3 -0
  107. package/.next/standalone/.next/server/chunks/ssr/{_0do6d26._.js → _135-c3y._.js} +1 -1
  108. package/.next/standalone/.next/server/chunks/ssr/_1feuvhb._.js +5 -0
  109. package/.next/standalone/.next/server/chunks/ssr/{_1es2j7i._.js → _1gb0ifp._.js} +5 -5
  110. package/.next/standalone/.next/server/chunks/ssr/{_1_qswah._.js → _1q46vxx._.js} +2 -2
  111. package/.next/standalone/.next/server/chunks/ssr/{_0h_douw._.js → _1w_5l7t._.js} +1 -1
  112. package/.next/standalone/.next/server/chunks/ssr/_1zopuov._.js +1 -1
  113. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_policies_page_actions_1sp2-yo.js +2 -2
  114. package/.next/standalone/.next/server/chunks/ssr/app_actions_get-scheduled-audit_ts_0ei9sni._.js +3 -0
  115. package/.next/standalone/.next/server/chunks/ssr/app_audit__components_audit-dashboard_tsx_0p9ud47._.js +1 -1
  116. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_1kp6l3x._.js +1 -1
  117. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_19dqvpc._.js +2 -2
  118. package/.next/standalone/.next/server/chunks/ssr/app_settings_02tf1h4._.js +3 -0
  119. package/.next/standalone/.next/server/chunks/ssr/lib_utils_ts_0az0sfq._.js +1 -1
  120. package/.next/standalone/.next/server/chunks/ssr/{node_modules_next_dist_0drixxt._.js → node_modules_next_dist_0w6mzq5._.js} +4 -4
  121. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_18_d8l1._.js +151 -0
  122. package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_11bnuzn._.js +2 -2
  123. package/.next/standalone/.next/server/chunks/ssr/src_hooks_095a_79._.js +5 -0
  124. package/.next/standalone/.next/server/chunks/ssr/src_hooks_15t8kqj._.js +3 -0
  125. package/.next/standalone/.next/server/chunks/ssr/src_hooks_18k8rl0._.js +12 -0
  126. package/.next/standalone/.next/server/chunks/ssr/src_hooks_1fm2w5z._.js +3 -0
  127. package/.next/standalone/.next/server/chunks/ssr/src_hooks_1j0zy3v._.js +3 -0
  128. package/.next/standalone/.next/server/chunks/ssr/src_hooks_builtin-policies_ts_09j2ndl._.js +1 -1
  129. package/.next/standalone/.next/server/chunks/ssr/src_hooks_fp-home_ts_0je3xkv._.js +1 -1
  130. package/.next/standalone/.next/server/chunks/ssr/src_hooks_pack-cli_ts_0t7me65._.js +1 -1
  131. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  132. package/.next/standalone/.next/server/pages/404.html +1 -1
  133. package/.next/standalone/.next/server/pages/500.html +1 -1
  134. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/server-reference-manifest.json +56 -23
  136. package/.next/standalone/.next/static/chunks/{25m8mg7bosgip.js → 00i9thnpht4l1.js} +1 -1
  137. package/.next/standalone/.next/static/chunks/0289oapk24zql.js +1 -0
  138. package/.next/standalone/.next/static/chunks/{35pw7zxhh76n7.js → 0pyy9m5cm8zku.js} +1 -1
  139. package/.next/standalone/.next/static/chunks/15heikmy3yjzc.js +1 -0
  140. package/.next/standalone/.next/static/chunks/285spx855h_3r.css +2 -0
  141. package/.next/standalone/.next/static/chunks/{40-wncjnguy4e.js → 2plg9qae1yejv.js} +1 -1
  142. package/.next/standalone/.next/static/chunks/2qv4hshejedtx.css +1 -0
  143. package/.next/standalone/.next/static/chunks/2tqszh84mp_2l.js +1 -0
  144. package/.next/standalone/.next/static/chunks/34jpdb2xjm-x7.js +1 -0
  145. package/.next/standalone/.next/static/chunks/3cdkxrukvlvul.js +1 -0
  146. package/.next/standalone/.next/static/chunks/3dnd-_29uiaj3.js +6 -0
  147. package/.next/standalone/.next/static/chunks/3vp7c3knkh8mr.js +1 -0
  148. package/.next/standalone/.next/static/chunks/{2y4ycwcwfjv4k.js → 3vwnzfx9q80yl.js} +1 -1
  149. package/.next/standalone/app/actions/get-jev-config.ts +409 -0
  150. package/.next/standalone/app/actions/pack-actions.ts +12 -0
  151. package/.next/standalone/app/actions/update-jev-config.ts +420 -0
  152. package/.next/standalone/app/components/jev-notices.tsx +96 -0
  153. package/.next/standalone/app/policies/hooks-client.tsx +9 -0
  154. package/.next/standalone/app/settings/jev-panel.tsx +469 -0
  155. package/.next/standalone/app/settings/page.tsx +20 -1
  156. package/.next/standalone/app/settings/settings-client.tsx +27 -1
  157. package/.next/standalone/app/settings/settings.css +79 -0
  158. package/.next/standalone/fp-cloud-cli/CHANGELOG.md +51 -3
  159. package/.next/standalone/fp-cloud-cli/README.md +1 -1
  160. package/.next/standalone/fp-cloud-cli/fp_cli/_version.py +1 -1
  161. package/.next/standalone/fp-cloud-cli/fp_cli/client.py +44 -0
  162. package/.next/standalone/fp-cloud-cli/fp_cli/commands/incidents_cmds.py +226 -5
  163. package/.next/standalone/fp-cloud-cli/fp_cli/models.py +11 -0
  164. package/.next/standalone/fp-cloud-cli/fp_cli/output.py +68 -1
  165. package/.next/standalone/fp-cloud-cli/pyproject.toml +1 -1
  166. package/.next/standalone/fp-cloud-cli/skill/SKILL.md +17 -2
  167. package/.next/standalone/fp-cloud-cli/skill/references/commands.md +7 -4
  168. package/.next/standalone/fp-cloud-cli/tests/test_alerting.py +184 -0
  169. package/.next/standalone/fp-cloud-cli/uv.lock +3 -3
  170. package/.next/standalone/package.json +11 -11
  171. package/.next/standalone/sdk/python/CHANGELOG.md +7 -0
  172. package/.next/standalone/sdk/python/failproofai_sdk/_version.py +1 -1
  173. package/.next/standalone/sdk/python/failproofai_sdk/evaluator/__init__.py +2 -0
  174. package/.next/standalone/sdk/python/failproofai_sdk/evaluator/authoring.py +24 -1
  175. package/.next/standalone/sdk/python/failproofai_sdk/evaluator/runtime.py +41 -6
  176. package/.next/standalone/sdk/python/tests/test_evaluator_runtime.py +88 -0
  177. package/.next/standalone/sdk/python/uv.lock +15 -15
  178. package/.next/standalone/server.js +1 -1
  179. package/bin/failproofai.mjs +115 -2
  180. package/dist/cli.mjs +9283 -2149
  181. package/dist/index.js +19 -1
  182. package/dist/worker.mjs +13761 -7834
  183. package/package.json +11 -11
  184. package/pi-extension/index.ts +11 -0
  185. package/scripts/build-policy-pack.mjs +39 -2
  186. package/src/hooks/builtin-policies.ts +21 -3
  187. package/src/hooks/cloud-enrollment-cli.ts +1 -1
  188. package/src/hooks/cloud-managed-policies.ts +22 -0
  189. package/src/hooks/custom-hooks-loader.ts +45 -7
  190. package/src/hooks/custom-hooks-registry.ts +45 -1
  191. package/src/hooks/effective-reviewers.ts +79 -0
  192. package/src/hooks/first-run-gate.ts +5 -0
  193. package/src/hooks/fp-home.ts +23 -0
  194. package/src/hooks/handler.ts +265 -6
  195. package/src/hooks/hook-activity-store.ts +105 -1
  196. package/src/hooks/hook-telemetry.ts +41 -0
  197. package/src/hooks/jev-activity.ts +385 -0
  198. package/src/hooks/jev-cli.ts +1193 -0
  199. package/src/hooks/loader-utils.ts +6 -0
  200. package/src/hooks/pack-cli.ts +237 -11
  201. package/src/hooks/pack-manifest.ts +479 -7
  202. package/src/hooks/pack-store.ts +156 -10
  203. package/src/hooks/policy-authority.ts +333 -0
  204. package/src/hooks/policy-catalog.ts +65 -0
  205. package/src/hooks/policy-evaluator.ts +940 -796
  206. package/src/hooks/policy-registry.ts +25 -0
  207. package/src/hooks/policy-reviewability.ts +229 -0
  208. package/src/hooks/policy-types.ts +126 -0
  209. package/src/hooks/semantic/combine.ts +541 -0
  210. package/src/hooks/semantic/compile.ts +176 -0
  211. package/src/hooks/semantic/decide.ts +392 -0
  212. package/src/hooks/semantic/envelope.ts +1296 -0
  213. package/src/hooks/semantic/evaluator.ts +547 -0
  214. package/src/hooks/semantic/facts.ts +292 -0
  215. package/src/hooks/semantic/intent.ts +1190 -0
  216. package/src/hooks/semantic/jev-client.ts +643 -0
  217. package/src/hooks/semantic/jev-config.ts +594 -0
  218. package/src/hooks/semantic/jev-review.ts +374 -0
  219. package/src/hooks/semantic/jev-stats.ts +289 -0
  220. package/src/hooks/semantic/jev-throttle.ts +421 -0
  221. package/src/hooks/semantic/pack-policies.ts +251 -0
  222. package/src/hooks/semantic/policies.ts +596 -0
  223. package/src/hooks/semantic/precondition-names.ts +60 -0
  224. package/src/hooks/semantic/preconditions.ts +58 -0
  225. package/src/hooks/semantic/redact.ts +2910 -0
  226. package/src/hooks/semantic/types.ts +145 -0
  227. package/src/hooks/semver-precedence.ts +128 -0
  228. package/src/hooks/worker-server.ts +119 -26
  229. package/src/index.ts +6 -0
  230. package/.next/standalone/.next/server/chunks/src_hooks_0iu54mz._.js +0 -3
  231. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-_ki57._.js +0 -4
  232. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__013jr2b._.js +0 -4
  233. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__01wy8d-._.js +0 -4
  234. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__02npjtd._.js +0 -4
  235. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0cg-bgc._.js +0 -5
  236. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0cpu_mj._.js +0 -3
  237. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0da85px._.js +0 -4
  238. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ftmoxc._.js +0 -4
  239. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0p-5p8u._.js +0 -4
  240. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0u3w0ll._.js +0 -22
  241. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__17d_ffl._.js +0 -3
  242. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__19d9tgz._.js +0 -5
  243. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1ctpynv._.js +0 -3
  244. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1jiwfsj._.js +0 -3
  245. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1p2otjt._.js +0 -4
  246. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1phc187._.js +0 -3
  247. package/.next/standalone/.next/server/chunks/ssr/_06imw3p._.js +0 -5
  248. package/.next/standalone/.next/server/chunks/ssr/_1u8-lu2._.js +0 -3
  249. package/.next/standalone/.next/server/chunks/ssr/app_settings_settings-client_tsx_20lq-mq._.js +0 -3
  250. package/.next/standalone/.next/server/chunks/ssr/src_hooks_1cv9_c4._.js +0 -10
  251. package/.next/standalone/.next/static/chunks/0bepqeawy72n6.js +0 -1
  252. package/.next/standalone/.next/static/chunks/0h-gz8e00478q.js +0 -1
  253. package/.next/standalone/.next/static/chunks/0qmsunv04x4na.css +0 -2
  254. package/.next/standalone/.next/static/chunks/2k9f4tyv04809.css +0 -1
  255. package/.next/standalone/.next/static/chunks/2lvr2pt70qn14.js +0 -1
  256. package/.next/standalone/.next/static/chunks/3-6zhytp6adkk.js +0 -1
  257. package/.next/standalone/.next/static/chunks/319c_91le7-h_.js +0 -1
  258. package/.next/standalone/.next/static/chunks/35m53kix7uaii.js +0 -6
  259. package/.next/standalone/.next/static/chunks/3xacd7qmuqlvs.js +0 -1
  260. /package/.next/standalone/.next/static/{LzR_etPlaZV9JZH09lEp3 → qbVI48kgBOf9CTOKcFIk2}/_buildManifest.js +0 -0
  261. /package/.next/standalone/.next/static/{LzR_etPlaZV9JZH09lEp3 → qbVI48kgBOf9CTOKcFIk2}/_clientMiddlewareManifest.js +0 -0
  262. /package/.next/standalone/.next/static/{LzR_etPlaZV9JZH09lEp3 → qbVI48kgBOf9CTOKcFIk2}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,6870,e=>{"use strict";var t=e.i(95187);let a=(0,t.createServerReference)("607d04cf3dfa7aa40bb77f7c023c14a6ef615e1ad5",t.callServer,void 0,t.findSourceMapURL,"searchHookActivityAction");e.s(["searchHookActivityAction",0,a])},73520,e=>{"use strict";var t=e.i(43476),a=e.i(24071),r=e.i(67927);e.s(["default",0,function({currentPage:e,totalPages:l,onPageChange:o}){if(l<=1)return null;let s=e=>`px-3 py-2 text-sm rounded-md transition-colors flex items-center gap-1 bg-muted text-muted-foreground ${e?"opacity-50 cursor-not-allowed":"hover:bg-muted/80"}`;return(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4",children:[(0,t.jsxs)("button",{onClick:()=>o(e-1),disabled:1===e,className:s(1===e),"aria-label":"Previous page",children:[(0,t.jsx)(a.ChevronLeft,{className:"w-4 h-4"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"Previous"})]}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:(()=>{if(l<=7)return Array.from({length:l},(e,t)=>t+1);let t=[1],a=Math.max(2,e-1),r=Math.min(l-1,e+1);e<=3&&(r=Math.min(5,l-1)),e>=l-2&&(a=Math.max(2,l-4)),a>2&&t.push("ellipsis-start");for(let e=a;e<=r;e++)t.push(e);return r<l-1&&t.push("ellipsis-end"),t.push(l),t})().map(a=>"string"==typeof a?(0,t.jsx)("span",{className:"px-2 text-muted-foreground",children:"..."},a):(0,t.jsx)("button",{onClick:()=>o(a),className:`min-w-[2.5rem] px-3 py-2 text-sm rounded-md transition-colors ${e===a?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,"aria-label":`Page ${a}`,"aria-current":e===a?"page":void 0,children:a},a))}),(0,t.jsxs)("button",{onClick:()=>o(e+1),disabled:e===l,className:s(e===l),"aria-label":"Next page",children:[(0,t.jsx)("span",{className:"hidden sm:inline",children:"Next"}),(0,t.jsx)(r.ChevronRight,{className:"w-4 h-4"})]})]})}])},24578,e=>{"use strict";let t={claude:{id:"claude",label:"Claude Code",badgeClasses:"bg-orange-500/10 text-orange-400 border-orange-500/20"},codex:{id:"codex",label:"OpenAI Codex",badgeClasses:"bg-purple-500/10 text-purple-400 border-purple-500/20"},copilot:{id:"copilot",label:"GitHub Copilot",badgeClasses:"bg-blue-500/10 text-blue-400 border-blue-500/20"},cursor:{id:"cursor",label:"Cursor Agent",badgeClasses:"bg-emerald-500/10 text-emerald-400 border-emerald-500/20"},opencode:{id:"opencode",label:"OpenCode",badgeClasses:"bg-amber-500/10 text-amber-400 border-amber-500/20"},pi:{id:"pi",label:"Pi",badgeClasses:"bg-pink-500/10 text-pink-400 border-pink-500/20"},hermes:{id:"hermes",label:"Hermes",badgeClasses:"bg-indigo-500/10 text-indigo-400 border-indigo-500/20"},openclaw:{id:"openclaw",label:"OpenClaw",badgeClasses:"bg-teal-500/10 text-teal-400 border-teal-500/20"},factory:{id:"factory",label:"Factory Droid",badgeClasses:"bg-rose-500/10 text-rose-400 border-rose-500/20"},devin:{id:"devin",label:"Devin CLI",badgeClasses:"bg-violet-500/10 text-violet-400 border-violet-500/20"},antigravity:{id:"antigravity",label:"Antigravity CLI",badgeClasses:"bg-cyan-500/10 text-cyan-400 border-cyan-500/20"},goose:{id:"goose",label:"Goose",badgeClasses:"bg-lime-500/10 text-lime-400 border-lime-500/20"}};e.s(["KNOWN_CLI_IDS",0,["claude","codex","copilot","cursor","opencode","pi","hermes","openclaw","factory","devin","antigravity","goose"],"getCliBadgeClasses",0,function(e){return t[e]?.badgeClasses??t.claude.badgeClasses},"getCliLabel",0,function(e){return t[e]?.label??e},"isKnownCli",0,function(e){return"string"==typeof e&&Object.prototype.hasOwnProperty.call(t,e)}])},34713,e=>{"use strict";e.s(["formatDuration",0,function(e){if(e<1e3)return`${e}ms`;let t=Math.round(e/100);if(t<600)return`${(t/10).toFixed(1)}s`;let a=Math.round(e/1e3);if(a<3600){let e=Math.floor(a/60);return`${e}m ${a%60}s`}let r=Math.round(e/6e4),l=Math.floor(r/60);return`${l}h ${r%60}m`},"formatRelativeTime",0,function(e){let t=Date.now()-e;return t<6e4?`${Math.max(1,Math.floor(t/1e3))}s ago`:t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}])},80060,2711,e=>{"use strict";var t=e.i(18566),a=e.i(71645);function r(e){let t=e.getFullYear(),a=String(e.getMonth()+1).padStart(2,"0"),r=String(e.getDate()).padStart(2,"0");return`${t}-${a}-${r}`}function l(e){var t;if(!e||(t=e,!/^\d{4}-\d{2}-\d{2}$/.test(t)||isNaN(Date.parse(t))))return null;let[a,r,l]=e.split("-").map(Number);return new Date(a,r-1,l,12,0,0)}e.s(["useUrlParams",0,function(){let e=(0,t.useSearchParams)(),r=(0,t.useRouter)(),l=(0,t.usePathname)(),o=(0,a.useRef)(null),s=(0,a.useCallback)(t=>e.get(t),[e]),i=(0,a.useCallback)(()=>new URLSearchParams(e.toString()),[e]),n=(0,a.useCallback)(t=>{o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{let a=new URLSearchParams(e.toString());for(let[e,r]of Object.entries(t))void 0===r||""===r?a.delete(e):a.set(e,r);let o=a.toString(),s=o?`${l}?${o}`:l;r.replace(s,{scroll:!1})},150)},[e,l,r]);return(0,a.useEffect)(()=>()=>{o.current&&clearTimeout(o.current)},[]),{get:s,getAll:i,setAll:n}}],80060),e.s(["dateRangeToParams",0,function(e){let t={};return e.from&&(t.from=r(e.from)),e.to&&(t.to=r(e.to)),t},"keywordsToParam",0,function(e){if(0!==e.length)return e.map(e=>encodeURIComponent(e)).join(",")},"pageToParam",0,function(e){return e<=1?void 0:String(e)},"paramToKeywords",0,function(e){return e?e.split(",").map(e=>decodeURIComponent(e.trim())).filter(e=>e.length>0):[]},"paramToPage",0,function(e){if(!e)return 1;let t=parseInt(e,10);return Number.isFinite(t)&&t>=1?t:1},"paramToPreset",0,function(e){return e&&["all","last-hour","today","last-7-days","last-30-days","custom"].includes(e)?e:"all"},"paramsToDateRange",0,function(e,t){return{from:l(e),to:l(t)}},"presetToParam",0,function(e){return"all"===e?void 0:e}],2711)},89664,e=>{"use strict";var t=e.i(56420);let a={name:"check",size:24,node:[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]};a.node;let r=(0,t.default)(a);e.s(["Check",0,r],89664)},24071,e=>{"use strict";var t=e.i(56420);let a={name:"chevron-left",size:24,node:[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]};a.node;let r=(0,t.default)(a);e.s(["ChevronLeft",0,r],24071)},67927,e=>{"use strict";var t=e.i(56420);let a={name:"chevron-right",size:24,node:[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]};a.node;let r=(0,t.default)(a);e.s(["ChevronRight",0,r],67927)},8734,e=>{"use strict";var t=e.i(56420);let a={name:"copy",size:24,node:[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]};a.node;let r=(0,t.default)(a);e.s(["Copy",0,r],8734)},16306,e=>{"use strict";var t=e.i(56420);let a={name:"shield-alert",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]};a.node;let r=(0,t.default)(a);e.s(["ShieldAlert",0,r],16306)},84026,29407,e=>{"use strict";var t=e.i(56420);let a={name:"shield-check",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]};a.node;let r=(0,t.default)(a);e.s(["ShieldCheck",0,r],84026);let l={name:"shield-x",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m14.5 9.5-5 5",key:"17q4r4"}],["path",{d:"m9.5 9.5 5 5",key:"18nt4w"}]],aliases:["shield-close"]};l.node;let o=(0,t.default)(l);e.s(["ShieldX",0,o],29407)},82954,e=>{"use strict";var t=e.i(56420);let a={name:"shield",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]};a.node;let r=(0,t.default)(a);e.s(["Shield",0,r],82954)},63676,e=>{"use strict";var t=e.i(56420);let a={name:"x",size:24,node:[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]};a.node;let r=(0,t.default)(a);e.s(["X",0,r],63676)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,36406,e=>{"use strict";let t;var s=e.i(43476),n=e.i(71645),r=e.i(74080);function i(e,t,s){let n,r=s.initialDeps??[],i=!0;function l(){let l=e();return(l.length!==r.length||l.some((e,t)=>r[t]!==e))&&(r=l,n=t(...l),(null==s?void 0:s.onChange)&&!(i&&s.skipInitialOnChange)&&s.onChange(n),i=!1),n}return l.updateDeps=e=>{r=e},l}function l(e,t){if(void 0!==e)return e;throw Error(`Unexpected undefined${t?`: ${t}`:""}`)}let o=()=>{if(void 0!==t)return t;if("u"<typeof navigator)return t=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return t=!0;let e=navigator.maxTouchPoints;return t="MacIntel"===navigator.platform&&void 0!==e&&e>0},a=e=>e,d=e=>{let t=Math.max(e.startIndex-e.overscan,0),s=Math.min(e.endIndex+e.overscan,e.count-1)-t+1,n=Array(s);for(let e=0;e<s;e++)n[e]=t+e;return n},c={passive:!0},u=(e,t)=>{let s=e.scrollElement;if(!s)return;let n=()=>{t({width:s.innerWidth,height:s.innerHeight})};return n(),s.addEventListener("resize",n,c),()=>{s.removeEventListener("resize",n)}},h="u"<typeof window||"onscrollend"in window,m=(e,t)=>((e,t,s)=>{var n,r;let i,l=e.scrollElement;if(!l)return;let o=e.targetWindow;if(!o)return;let a=e.options.useScrollendEvent&&h,d=0,u=a?null:(n=()=>t(d,!1),r=e.options.isScrollingResetDelay,Object.assign(function(...e){o.clearTimeout(i),i=o.setTimeout(()=>n.apply(this,e),r)},{cancel:()=>{o.clearTimeout(i)}})),m=e=>()=>{d=s(l),null==u||u(),t(d,e)},f=m(!0),p=m(!1);return l.addEventListener("scroll",f,c),a&&l.addEventListener("scrollend",p,c),()=>{l.removeEventListener("scroll",f),a&&l.removeEventListener("scrollend",p),null==u||u.cancel()}})(e,t,t=>e.options.horizontal?t.scrollX:t.scrollY),f=(e,t,s)=>{if(s.options.useCachedMeasurements){let t=s.indexFromElement(e),n=s.options.getItemKey(t);return s.itemSizeCache.get(n)??s.options.estimateSize(t)}if(null==t?void 0:t.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[s.options.horizontal?"inlineSize":"blockSize"])}if(!t){let t=s.indexFromElement(e),n=s.options.getItemKey(t),r=s.itemSizeCache.get(n);if(void 0!==r)return r}return e[s.options.horizontal?"offsetWidth":"offsetHeight"]},p=(e,{adjustments:t=0,behavior:s},n)=>{var r,i;null==(i=null==(r=n.scrollElement)?void 0:r.scrollTo)||i.call(r,{[n.options.horizontal?"left":"top"]:e+t,behavior:s})};class g{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._singleLaneMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this._clampedAdjustment=null,this.elementsCache=new Map,this.now=()=>{var e,t,s;return(null==(s=null==(t=null==(e=this.targetWindow)?void 0:e.performance)?void 0:t.now)?void 0:s.call(t))??Date.now()},this.observer=(()=>{let e=null,t=()=>e||(this.targetWindow&&this.targetWindow.ResizeObserver?e=new this.targetWindow.ResizeObserver(e=>{e.forEach(e=>{let t=()=>{let t=e.target,s=this.indexFromElement(t);if(!t.isConnected){for(let[e,s]of(this.observer.unobserve(t),this.elementsCache))if(s===t){this.elementsCache.delete(e);break}return}this.isIndexInRange(s)&&this.shouldMeasureDuringScroll(s)&&this.resizeItem(s,this.options.measureElement(t,e,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(t):t()})}):null);return{disconnect:()=>{var s;null==(s=t())||s.disconnect(),e=null},observe:e=>{var s;return null==(s=t())?void 0:s.observe(e,{box:"border-box"})},unobserve:e=>{var s;return null==(s=t())?void 0:s.unobserve(e)}}})(),this.range=null,this.setOptions=e=>{var t;let s={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:a,rangeExtractor:d,onChange:()=>{},measureElement:f,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate",useCachedMeasurements:!1};for(let t in e){let n=e[t];void 0!==n&&(s[t]=n)}let n=this.options,r=null,i=null,l=!1;if(void 0!==n&&n.enabled&&s.enabled&&"end"===s.anchorTo&&null!==this.scrollElement){let e=n.count,o=s.count,a=this.getMeasurements(),d=(null==(t=this._singleLaneMeasurements)?void 0:t.items)??a,c=e=>{var t;return"object"==typeof(t=d[e])?t.key:t},u=e>0?c(0):null,h=e>0?c(e-1):null;if(o!==e||e>0&&o>0&&(s.getItemKey(0)!==u||s.getItemKey(o-1)!==h)){l=!0;let t=e>0?this.getVirtualItemForOffset(this.getScrollOffset())??a[0]:null;t&&(r=[t.key,this.getScrollOffset()-t.start]);let d=!0===s.followOnAppend?"auto":s.followOnAppend||null;d&&o>0&&this.isAtEnd(n.scrollEndThreshold)&&(0===e||s.getItemKey(o-1)!==h)&&(o>e||function(e,t,s,n){if(0===t)return!1;let r=n(0),i=new Set,l=0;for(;l<e;){let e=s(l);if(e===r)break;i.add(e),l++}let o=e-l;if(0===o||o>=t)return!1;for(let e=0;e<o;e++)if(n(e)!==s(l+e))return!1;for(let e=o;e<t;e++)if(i.has(n(e)))return!1;return!0}(e,o,c,s.getItemKey))&&(i=d)}}this.options=s,l&&(this.pendingMin=0,this.itemSizeCacheVersion++);let o=!1,c=0;if(r&&null!==this.scrollOffset){let[e,t]=r,s=this.getMeasurements(),{count:n,getItemKey:l}=this.options,a=0;for(;a<n&&l(a)!==e;)a++;if(a<n){let e=s[a];if(e){let s=Math.max(0,e.start+t);i||s===this.scrollOffset||(c=s-this.scrollOffset,this.scrollOffset=s,o=!0)}}}(o||i)&&(this.pendingScrollAnchor=[o?r[0]:null,o?r[1]:0,i,c])},this.notify=e=>{var t,s;null==(s=(t=this.options).onChange)||s.call(t,this,e)},this.maybeNotify=i(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),null!=this.rafId&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this.isScrolling=!1,this.scrollDirection=null,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._clampedAdjustment=null,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var e;let t=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==t){if(this.cleanup(),!t)return void this.maybeNotify();if(this.scrollElement=t,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=(null==(e=this.scrollElement)?void 0:e.window)??null,this.elementsCache.forEach(e=>{this.observer.observe(e)}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{if(t&&null===this._intendedScrollOffset&&e===this.scrollOffset)return;null!==this._intendedScrollOffset&&1.5>Math.abs(e-this._intendedScrollOffset)&&(e=this._intendedScrollOffset),this._intendedScrollOffset=null,null!==this._clampedAdjustment&&Math.abs(e-this._clampedAdjustment.maxAtWrite)>=1.5&&(this._clampedAdjustment=null),this.scrollAdjustments=0;let s=this.getScrollOffset();this.scrollDirection=t?s===e?this.scrollDirection:s<e?"forward":"backward":null,this.scrollOffset=e,this.isScrolling=t,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),"addEventListener"in this.scrollElement){let e=this.scrollElement,t=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,null!==this._iosTouchEndTimerId&&null!=this.targetWindow&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},s=()=>{this._iosTouching=!1,o()&&null!=this.targetWindow&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};e.addEventListener("touchstart",t,c),e.addEventListener("touchend",s,c),this.unsubs.push(()=>{e.removeEventListener("touchstart",t),e.removeEventListener("touchend",s),null!==this._iosTouchEndTimerId&&null!=this.targetWindow&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}let s=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,s&&this.scrollElement&&this.options.enabled){let[e,t,n,r]=s;null===e||n||(o()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?0!==r&&(this._iosDeferredAdjustment+=r):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),n&&this.scrollToEnd({behavior:n})}this._retryClampedAdjustment()},this._retryClampedAdjustment=()=>{if(null===this._clampedAdjustment||!this.scrollElement||!this.options.enabled)return;let{target:e,maxAtWrite:t}=this._clampedAdjustment,s=this.getMaxScrollOffset();s>t+.5&&(this._clampedAdjustment=e>s+.5?{target:e,maxAtWrite:s}:null,this._scrollToOffset(e,{adjustments:void 0,behavior:void 0}))},this._flushIosDeferredIfReady=()=>{if(0===this._iosDeferredAdjustment||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;let e=this.getScrollOffset(),t=this.getMaxScrollOffset();if(e<0||e>t)return;if(this._iosDeferredAdjustment<0&&e>=t-1){this._iosDeferredAdjustment=0;return}let s=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(e,{adjustments:this.scrollAdjustments+=s,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??("function"==typeof this.options.initialOffset?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getMeasurementOptions=i(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode,this.options.gap],(e,t,s,n,r,i,l,o)=>(void 0!==this.prevLanes&&this.prevLanes!==i&&(this.lanesChangedFlag=!0),this.prevLanes=i,this.pendingMin=null,{count:e,paddingStart:t,scrollMargin:s,getItemKey:n,enabled:r,lanes:i,laneAssignmentMode:l,gap:o}),{key:!1}),this.isIndexInRange=e=>e>=0&&e<this.options.count,this.getMeasurements=i(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:e,paddingStart:t,scrollMargin:s,getItemKey:n,enabled:r,lanes:i,laneAssignmentMode:l,gap:o},a)=>{var d,c;let u=this.itemSizeCache;if(!r)return this.measurementsCache=[],this._singleLaneMeasurements=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(let t of this.laneAssignments.keys())t>=e&&this.laneAssignments.delete(t);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this._singleLaneMeasurements=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),0!==this.measurementsCache.length||this.lanesSettling||(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let h=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1),1===i){let r,i,l=2*e,a=null==(d=this._singleLaneMeasurements)?void 0:d.flat;if(!a||a.length<l){let e=new Float64Array(l);a&&h>0&&e.set(a.subarray(0,2*h)),a=e}let m=0===h?Array(e):this._singleLaneMeasurements.items.slice();if(0===h)r=t+s;else{let e=h-1;r=a[2*e]+a[2*e+1]+o}for(let t=h;t<e;t++){let e=n(t);m[t]=e;let s=u.get(e),i="number"==typeof s?s:this.options.estimateSize(t);a[2*t]=r,a[2*t+1]=i,r+=i+o}this._singleLaneMeasurements={flat:a,items:m};let f=(c=a,i=m.length,new Proxy(m,{get(e,t,s){if("string"==typeof t){let s=t.charCodeAt(0);if(s>=48&&s<=57){let s=+t;if(Number.isInteger(s)&&s>=0&&s<i){let t=e[s];if("object"!=typeof t){let n=c[2*s];t=e[s]={index:s,key:t,start:n,size:c[2*s+1],end:n+c[2*s+1],lane:0}}return t}}if("length"===t)return i}return Reflect.get(e,t,s)}}));return this.measurementsCache=f,f}let m=this.measurementsCache.slice(0,h),f=Array(i).fill(void 0),p=new Float64Array(i),g=0;for(let e=0;e<h;e++){let t=m[e];t&&(void 0===f[t.lane]&&g++,f[t.lane]=e,p[t.lane]=t.end)}for(let r=h;r<e;r++){let e,a,d=n(r),c=this.laneAssignments.get(r),h="estimate"===l||u.has(d);if(void 0!==c&&this.options.lanes>1){let n=f[e=c],r=void 0!==n?m[n]:void 0;a=r?r.end+o:t+s}else if(g===i){let t=0,s=p[0],n=f[0];for(let e=1;e<i;e++){let r=p[e];(r<s||r===s&&f[e]<n)&&(t=e,s=r,n=f[e])}e=t,a=s+o,h&&this.laneAssignments.set(r,e)}else e=r%this.options.lanes,a=t+s,h&&this.laneAssignments.set(r,e);let x=u.get(d),y="number"==typeof x?x:this.options.estimateSize(r),b=a+y;m[r]={index:r,start:a,size:y,end:b,key:d,lane:e},void 0===f[e]&&g++,f[e]=r,p[e]=b}return this.measurementsCache=m,m},{key:!1,debug:()=>this.options.debug}),this.calculateRange=i(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,s,n)=>0===e.length||0===t?(this.range=null,null):(this.range=function(e,t,s,n,r){let i=e.length-1;if(e.length<=n)return{startIndex:0,endIndex:i};if(1===n&&null!==r){let e=function(e,t,s){let n=0;for(;n<=t;){let r=(n+t)/2|0,i=e[2*r];if(i<s)n=r+1;else{if(!(i>s))return r;t=r-1}}return n>0?n-1:0}(r,i,s),n=e,l=s+t;for(;n<i&&r[2*n]+r[2*n+1]<l;)n++;return{startIndex:e,endIndex:n}}let l=x(0,i,t=>e[t].start,s),o=l;if(1===n)for(;o<i&&e[o].end<s+t;)o++;else if(n>1){let r=Array(n).fill(0);for(;o<i&&r.some(e=>e<s+t);){let t=e[o];r[t.lane]=t.end,o++}let a=Array(n).fill(s+t);for(;l>=0&&a.some(e=>e>=s);){let t=e[l];a[t.lane]=t.start,l--}l=Math.max(0,l-l%n),o=Math.min(i,o+(n-1-o%n))}return{startIndex:l,endIndex:o}}(e,t,s,n,1===n&&null!==this._singleLaneMeasurements?this._singleLaneMeasurements.flat:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=i(()=>{let e=null,t=null,s=this.calculateRange();return s&&(e=s.startIndex,t=s.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]},(e,t,s,n,r)=>null===n||null===r?[]:e({startIndex:n,endIndex:r,overscan:t,count:s}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,s=e.getAttribute(t);return s?parseInt(s,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=e=>{var t;if(!this.scrollState||"smooth"!==this.scrollState.behavior)return!0;let s=this.scrollState.index??(null==(t=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))?void 0:t.index);if(void 0!==s&&this.range){let t=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),n=Math.max(0,s-t),r=Math.min(this.options.count-1,s+t);return e>=n&&e<=r}return!0},this.measureElement=e=>{if(!e)return void this.elementsCache.forEach((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))});let t=this.indexFromElement(e);if(!this.isIndexInRange(t))return;let s=this.options.getItemKey(t),n=this.elementsCache.get(s);n!==e&&(n&&this.observer.unobserve(n),this.observer.observe(e),this.elementsCache.set(s,e)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(t)&&this.resizeItem(t,this.options.measureElement(e,void 0,this))},this.resizeItem=(e,t)=>{var s,n,r;let i,l,o;if(!this.isIndexInRange(e))return;let a=null==(s=this._singleLaneMeasurements)?void 0:s.flat;if(1===this.options.lanes&&null!=a)o=this.options.getItemKey(e),l=a[2*e],i=a[2*e+1];else{let t=this.measurementsCache[e];if(!t)return;o=t.key,l=t.start,i=t.size}let d=this.itemSizeCache.get(o)??i,c=t-d;if(0!==c){let s="end"===this.options.anchorTo&&(null==(n=this.scrollState)?void 0:n.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,a=s?this.getTotalSize():0,u=this.getScrollOffset()+this.scrollAdjustments,h=this.itemSizeCache.has(o)?l+d<=u&&"backward"!==this.scrollDirection:l<u,m=(null==(r=this.scrollState)?void 0:r.behavior)!=="smooth"&&(void 0!==this.shouldAdjustScrollPositionOnItemSizeChange?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[e]??{index:e,key:o,start:l,size:i,end:l+i,lane:0},c,this):h);(null===this.pendingMin||e<this.pendingMin)&&(this.pendingMin=e),this.itemSizeCache.set(o,t),this.itemSizeCacheVersion++;let f=!1;s?f=this.applyScrollAdjustment(this.getTotalSize()-a):m&&(f=this.applyScrollAdjustment(c)),this.notify(f),this._retryClampedAdjustment()}},this.getVirtualItems=i(()=>[this.getVirtualIndexes(),this.getMeasurements()],(e,t)=>{let s=[];for(let n=0,r=e.length;n<r;n++){let r=t[e[n]];s.push(r)}return s},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=e=>{var t;let s=this.getMeasurements();if(0===s.length)return;let n=null==(t=this._singleLaneMeasurements)?void 0:t.flat,r=1===this.options.lanes&&null!=n,i=x(0,s.length-1,r?e=>n[2*e]:e=>l(s[e]).start,e);return l(s[i])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{let e=this.scrollElement.document.documentElement;return this.options.horizontal?e.scrollWidth-this.scrollElement.innerWidth:e.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(e=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=e,this.getOffsetForAlignment=(e,t,s=0)=>{if(!this.scrollElement)return 0;let n=this.getSize(),r=this.getScrollOffset();return"auto"===t&&(t=e>=r+n?"end":"start"),"center"===t?e+=(s-n)/2:"end"===t&&(e-=n),Math.max(Math.min(this.getMaxScrollOffset(),e),0)},this.getOffsetForIndex=(e,t="auto")=>{e=Math.max(0,Math.min(e,this.options.count-1));let s=this.getSize(),n=this.getScrollOffset(),r=this.measurementsCache[e];if(!r)return;if("auto"===t)if(r.end>=n+s-this.options.scrollPaddingEnd)t="end";else{if(!(r.start<=n+this.options.scrollPaddingStart))return[n,t];t="start"}if("end"===t&&e===this.options.count-1)return[this.getMaxScrollOffset(),t];let i="end"===t?r.end+this.options.scrollPaddingEnd:r.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(i,t,r.size),t]},this.scrollToOffset=(e,{align:t="start",behavior:s="auto"}={})=>{this._iosDeferredAdjustment=0;let n=this.getOffsetForAlignment(e,t),r=this.now();this.scrollState={index:null,align:t,behavior:s,startedAt:r,lastTargetOffset:n,stableFrames:0},this._scrollToOffset(n,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollToIndex=(e,{align:t="auto",behavior:s="auto"}={})=>{this._iosDeferredAdjustment=0,e=Math.max(0,Math.min(e,this.options.count-1));let n=this.getOffsetForIndex(e,t);if(!n)return;let[r,i]=n,l=this.now();this.scrollState={index:e,align:i,behavior:s,startedAt:l,lastTargetOffset:r,stableFrames:0},this._scrollToOffset(r,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollBy=(e,{behavior:t="auto"}={})=>{let s=this.getScrollOffset()+e,n=this.now();this.scrollState={index:null,align:"start",behavior:t,startedAt:n,lastTargetOffset:s,stableFrames:0},this._scrollToOffset(s,{adjustments:void 0,behavior:t}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:e="auto"}={})=>{this.options.count>0?this.scrollToIndex(this.options.count-1,{align:"end",behavior:e}):this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:e})},this.getTotalSize=()=>{var e,t;let s,n=this.getMeasurements();if(0===n.length)s=this.options.paddingStart;else if(1===this.options.lanes){let r=n.length-1,i=null==(e=this._singleLaneMeasurements)?void 0:e.flat;s=null!=i?i[2*r]+i[2*r+1]:(null==(t=n[r])?void 0:t.end)??0}else{let e=Array(this.options.lanes).fill(null),t=n.length-1;for(;t>=0&&e.some(e=>null===e);){let s=n[t];null===e[s.lane]&&(e[s.lane]=s.end),t--}s=Math.max(...e.filter(e=>null!==e))}return Math.max(s-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{let e=[];if(0===this.itemSizeCache.size)return e;for(let t of this.getMeasurements())t&&this.itemSizeCache.has(t.key)&&e.push({index:t.index,key:t.key,start:t.start,size:t.size,end:t.end,lane:t.lane});return e},this._scrollToOffset=(e,{adjustments:t,behavior:s})=>{this._intendedScrollOffset=e+(t??0),this.options.scrollToFn(e,{behavior:s,adjustments:t},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(e)}applyScrollAdjustment(e,t){if(0===e)return!1;if(o()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded))return this._iosDeferredAdjustment+=e,!1;{let s=this.getScrollOffset()+this.scrollAdjustments+e,n=this.scrollElement,r=null!==n&&("scrollHeight"in n||"document"in n)?this.getMaxScrollOffset():null;return this._clampedAdjustment=null!==r&&s>r+.5?{target:s,maxAtWrite:r}:null,this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=e,behavior:t}),null!==this.scrollOffset&&(this.scrollOffset+=this.scrollAdjustments,this.scrollOffset<0&&(this.scrollOffset=0),this.scrollAdjustments=0),!0}}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}null==this.rafId&&(this.rafId=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()}))}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}let e=null!=this.scrollState.index?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,t=e?e[0]:this.scrollState.lastTargetOffset,s=t!==this.scrollState.lastTargetOffset;if(!s&&1.01>Math.abs(t-this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=1){this.getScrollOffset()!==t&&this._scrollToOffset(t,{adjustments:void 0,behavior:"auto"}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,s){let e=this.getSize()||600,s=Math.abs(t-this.getScrollOffset()),n="smooth"===this.scrollState.behavior&&s>e;this.scrollState.lastTargetOffset=t,n||(this.scrollState.behavior="auto"),this._scrollToOffset(t,{adjustments:void 0,behavior:n?"smooth":"auto"})}this.scheduleScrollReconcile()}}let x=(e,t,s,n)=>{for(;e<=t;){let r=(e+t)/2|0,i=s(r);if(i<n)e=r+1;else{if(!(i>n))return r;t=r-1}}return e>0?e-1:0},y="u">typeof document?n.useLayoutEffect:n.useEffect;var b=e.i(16327),v=e.i(56420);let j={name:"wrench",size:24,node:[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]]};j.node;let S=(0,v.default)(j);function w(e){let t=new Map,s=new Map;for(let n of e){let e=n.uuid||`${n._source}:${n.timestamp}`,r=s.get(e)??0;s.set(e,r+1),t.set(n,0===r?e:`${e}#${r}`)}return t}let N={name:"user",size:24,node:[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]};N.node;let M=(0,v.default)(N),k={name:"bot",size:24,node:[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]};k.node;let E=(0,v.default)(k),T={name:"cpu",size:24,node:[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]};T.node;let I=(0,v.default)(T),A={name:"clock",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]};A.node;let C=(0,v.default)(A),O={name:"message-square",size:24,node:[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]};O.node;let z=(0,v.default)(O),_={name:"workflow",size:24,node:[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]]};_.node;let D=(0,v.default)(_);var F=e.i(34713);let R=n.default.memo(function({entries:e,compact:t=!1}){let r=(0,n.useMemo)(()=>(function(e){let t=0,s=0,n=0,r=0,i=0,l=new Set;for(let o of e)if("user"===o.type&&t++,"queue-operation"===o.type&&i++,"assistant"===o.type){for(let e of(s++,o.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?r++:n++);o.message.model&&l.add(o.message.model)}let o="";if(e.length>=2){let t=e[e.length-1].timestampMs-e[0].timestampMs;o=(0,F.formatDuration)(t)}return{turnCount:i,userCount:t,assistantCount:s,toolCallCount:n,subagentCount:r,duration:o,models:Array.from(l)}})(e),[e]),i=t?"w-3.5 h-3.5":"w-4 h-4",l=t?"text-xs font-medium":"text-sm font-medium",o=t?"text-[10px] text-muted-foreground":"text-xs text-muted-foreground",a=[...t?[]:[{Icon:z,color:"text-primary",v:r.turnCount,l:"Turns"}],{Icon:M,color:"text-[color:var(--chart-1)]",v:r.userCount,l:"User"},{Icon:E,color:"text-[color:var(--chart-2)]",v:r.assistantCount,l:"Assistant"},{Icon:S,color:"text-[color:var(--chart-3)]",v:r.toolCallCount,l:t?"Tools":"Tool Calls"},{Icon:D,color:"text-[color:var(--chart-5)]",v:r.subagentCount,l:"Subagents"},{Icon:C,color:"text-[color:var(--chart-4)]",v:r.duration||"—",l:"Duration"},{Icon:I,color:"text-[color:var(--chart-5)]",v:r.models.length>0?r.models.join(", "):"—",l:t?"Model":"Model(s)"}];return(0,s.jsx)("div",{className:t?"bg-muted/30 border border-border/50 rounded-lg p-3 mb-3":"bg-card border border-border rounded-lg p-4",children:(0,s.jsx)("div",{className:`grid grid-cols-2 ${t?"sm:grid-cols-6 gap-3":"sm:grid-cols-4 lg:grid-cols-7 gap-4"}`,children:a.map(({Icon:e,color:t,v:n,l:r})=>(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(e,{className:`${i} ${t}`}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:`${l} truncate max-w-[120px]`,children:n}),(0,s.jsx)("div",{className:o,children:r})]})]},r))})})}),$={name:"play",size:24,node:[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]};$.node;let L=(0,v.default)($);var W=e.i(67927);function P(e){return JSON.stringify(e.raw,null,2)}let U=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",second:"2-digit",hour12:!0});function q(e){let t=new Date(e),s=U.format(t),n=t.getMilliseconds().toString().padStart(3,"0");return`${s}.${n}`}let H=n.default.memo(function({entry:e,isCollapsed:t,entryCount:n,onToggle:r}){let i="function"==typeof r,l=(0,s.jsxs)("div",{className:`flex items-center gap-2 px-3 py-1 rounded-full bg-primary/10 border border-primary/20 text-primary text-xs font-medium${i?" group-hover:bg-primary/20 transition-colors":""}`,children:[i?(0,s.jsx)(W.ChevronRight,{className:`w-3 h-3 transition-transform ${t?"":"rotate-90"}`}):(0,s.jsx)(L,{className:"w-3 h-3"}),(0,s.jsx)("span",{children:e.label}),(0,s.jsx)("span",{className:"text-muted-foreground",children:q(e.timestampMs)}),i&&t&&"number"==typeof n&&(0,s.jsxs)("span",{className:"ml-1 px-1.5 py-0.5 rounded bg-primary/20 text-[10px] leading-none",children:[n," ",1===n?"entry":"entries"]})]});return i?(0,s.jsxs)("button",{type:"button",onClick:r,className:"group flex items-center gap-3 py-3 px-4 w-full cursor-pointer",children:[(0,s.jsx)("div",{className:"flex-1 h-px bg-primary/30"}),l,(0,s.jsx)("div",{className:"flex-1 h-px bg-primary/30"})]}):(0,s.jsxs)("div",{className:"flex items-center gap-3 py-3 px-4",children:[(0,s.jsx)("div",{className:"flex-1 h-px bg-primary/30"}),l,(0,s.jsx)("div",{className:"flex-1 h-px bg-primary/30"})]})});var B=e.i(47163);let V={user:"User",assistant:"Assistant","file-history-snapshot":"Snapshot",progress:"Progress",system:"System","queue-operation":"Queue"},K={user:"bg-[color:var(--chart-1)]/20 text-[color:var(--chart-1)] border-[color:var(--chart-1)]/30",assistant:"bg-[color:var(--chart-2)]/20 text-[color:var(--chart-2)] border-[color:var(--chart-2)]/30","file-history-snapshot":"bg-[color:var(--chart-3)]/20 text-[color:var(--chart-3)] border-[color:var(--chart-3)]/30",progress:"bg-[color:var(--chart-5)]/20 text-[color:var(--chart-5)] border-[color:var(--chart-5)]/30",system:"bg-[color:var(--chart-4)]/20 text-[color:var(--chart-4)] border-[color:var(--chart-4)]/30","queue-operation":"bg-primary/20 text-primary border-primary/30"},J={user:"border-l-[color:var(--chart-1)]",assistant:"border-l-[color:var(--chart-2)]","file-history-snapshot":"border-l-[color:var(--chart-3)]",progress:"border-l-[color:var(--chart-5)]",system:"border-l-[color:var(--chart-4)]","queue-operation":"border-l-primary"},Y={name:"file-text",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]};Y.node;let X=(0,v.default)(Y),Q={name:"activity",size:24,node:[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]};Q.node;let G=(0,v.default)(Q);var Z=e.i(66794);function ee({type:e}){let t="w-4 h-4";switch(e){case"user":return(0,s.jsx)(M,{className:t});case"assistant":return(0,s.jsx)(E,{className:t});case"file-history-snapshot":return(0,s.jsx)(X,{className:t});case"progress":return(0,s.jsx)(G,{className:t});case"system":return(0,s.jsx)(Z.Settings,{className:t});case"queue-operation":return(0,s.jsx)(L,{className:t})}}function et({type:e}){return(0,s.jsxs)("span",{className:`inline-flex items-center gap-1.5 px-2 py-0.5 text-xs font-mono rounded border ${K[e]}`,children:[(0,s.jsx)(ee,{type:e}),V[e]]})}var es=e.i(24380);function en({block:e}){let t=(0,n.useMemo)(()=>JSON.stringify(e.input,null,2),[e]);return(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)("details",{open:!0,children:[(0,s.jsx)("summary",{className:"text-xs text-muted-foreground cursor-pointer hover:text-foreground transition-colors",children:(0,s.jsxs)("span",{className:"inline-flex items-center gap-1",children:["Input",(0,s.jsx)(es.CopyButton,{text:t})]})}),(0,s.jsx)("pre",{className:"mt-1 p-2 bg-muted/50 rounded text-xs whitespace-pre-wrap break-words max-h-64 overflow-y-auto",children:t})]}),e.result?(0,s.jsxs)("div",{className:"border-l-2 border-primary/50 pl-3 space-y-1",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"inline-block px-2 py-0.5 text-xs font-mono rounded border bg-primary/20 text-primary border-primary/30",children:"Result"}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:q(new Date(e.result.timestamp).getTime())})]}),e.result.content&&(0,s.jsxs)("details",{open:!0,children:[(0,s.jsx)("summary",{className:"text-xs text-muted-foreground cursor-pointer hover:text-foreground transition-colors",children:(0,s.jsxs)("span",{className:"inline-flex items-center gap-1",children:["Output",(0,s.jsx)(es.CopyButton,{text:e.result.content})]})}),(0,s.jsx)("pre",{className:"mt-1 p-2 bg-muted/50 rounded text-xs whitespace-pre-wrap break-words max-h-48 overflow-y-auto",children:e.result.content})]}),e.result.images?.map((e,t)=>(0,s.jsx)("img",{src:`data:${e.mediaType};base64,${e.base64}`,alt:`Tool result image ${t+1}`,className:"mt-2 max-w-full rounded border border-border"},t))]}):(0,s.jsx)("div",{className:"text-xs text-muted-foreground",children:"Tool did not return a result"})]})}let er={name:"brain",size:24,node:[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]};er.node;let ei=(0,v.default)(er),el=n.default.memo(function({block:e,entriesBySource:t,projectName:n,sessionId:r,highlightedUuid:i,autoExpandForUuid:l}){switch(e.type){case"text":return(0,s.jsx)("p",{className:"whitespace-pre-wrap text-sm",children:e.text});case"tool_use":if("Task"===e.name&&(e.subagentType||e.subagentId)){let o=e.subagentId&&t?t.get(`agent-${e.subagentId}`):void 0;return(0,s.jsx)(ef,{block:e,subagentEntries:o,projectName:n,sessionId:r,highlightedUuid:i,autoExpandForUuid:l})}return(0,s.jsxs)("div",{className:"border border-border/50 rounded-lg p-3 bg-muted/10",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,s.jsx)(S,{className:"w-4 h-4 text-primary flex-shrink-0"}),(0,s.jsx)("span",{className:"font-mono text-sm text-primary truncate min-w-0",children:e.name}),e.result&&(0,s.jsx)("span",{className:"text-xs text-muted-foreground ml-auto flex-shrink-0",children:e.result.durationFormatted})]}),(0,s.jsx)(en,{block:e})]});case"thinking":return(0,s.jsx)("div",{className:"border border-[color:var(--chart-5)]/30 rounded-lg p-3 bg-[color:var(--chart-5)]/5",children:(0,s.jsxs)("details",{children:[(0,s.jsxs)("summary",{className:"flex items-center gap-2 text-xs cursor-pointer hover:text-foreground transition-colors text-[color:var(--chart-5)]",children:[(0,s.jsx)(ei,{className:"w-4 h-4"}),(0,s.jsx)("span",{children:"Thinking"}),(0,s.jsxs)("span",{className:"text-muted-foreground ml-1",children:["(",e.thinking.length.toLocaleString()," chars)"]})]}),(0,s.jsx)("p",{className:"mt-2 whitespace-pre-wrap text-xs text-muted-foreground p-2 bg-muted/30 rounded max-h-64 overflow-y-auto",children:e.thinking})]})})}});function eo({entry:e}){return(0,s.jsx)("div",{children:e.message.content&&(0,s.jsx)("p",{className:"whitespace-pre-wrap text-sm",children:e.message.content})})}let ea=n.default.memo(function({entry:e,entriesBySource:t,projectName:n,sessionId:r,highlightedUuid:i,autoExpandForUuid:l}){let{content:o}=e.message;return(0,s.jsx)("div",{className:"space-y-3",children:o.map((e,o)=>(0,s.jsx)(el,{block:e,entriesBySource:t,projectName:n,sessionId:r,highlightedUuid:i,autoExpandForUuid:l},o))})}),ed=n.default.memo(function({entry:e}){let t=(0,n.useMemo)(()=>{if("progress"===e.type){let t=e.raw.data,s=t?.agentId;return[t?.type,s&&`agent:${s}`].filter(Boolean).join(" | ")}return"file-history-snapshot"===e.type?"File history snapshot":e.type},[e.type,e.raw]);return(0,s.jsxs)("div",{className:"text-sm",children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:t}),(0,s.jsxs)("details",{className:"mt-1",children:[(0,s.jsx)("summary",{className:"text-xs text-muted-foreground cursor-pointer hover:text-foreground transition-colors",children:"Show raw JSON"}),(0,s.jsx)("pre",{className:"mt-1 p-2 bg-muted/50 rounded text-xs whitespace-pre-wrap break-words max-h-64 overflow-y-auto",children:P(e)})]})]})}),ec={name:"link-2",size:24,node:[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]};ec.node;let eu=(0,v.default)(ec);var eh=e.i(55574);function em({uuid:e}){let t=(0,n.useCallback)(async()=>{window.history.replaceState(null,"",`#entry-${e}`);try{await navigator.clipboard.writeText(window.location.href)}catch{let e=document.createElement("textarea");e.value=window.location.href,e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e)}(0,eh.toast)("Link copied")},[e]);return(0,s.jsx)("button",{onClick:t,title:"Copy link to entry",className:"inline-flex items-center justify-center rounded p-1 text-muted-foreground hover:text-foreground hover:bg-muted/80 transition-colors opacity-0 group-hover:opacity-100 transition-opacity",children:(0,s.jsx)(eu,{className:"w-3.5 h-3.5"})})}function ef({block:e,subagentEntries:t,projectName:r,sessionId:i,highlightedUuid:l,autoExpandForUuid:o}){let a=!!(o&&t?.some(e=>e.uuid===o)),[d,c]=(0,n.useState)(a);(0,n.useEffect)(()=>{if(!a)return;let e=requestAnimationFrame(()=>c(!0));return()=>cancelAnimationFrame(e)},[a]);let u=(0,n.useCallback)(()=>{c(e=>!e)},[]),h=t&&t.length>0,m=(0,n.useMemo)(()=>w(t??[]),[t]);return(0,s.jsxs)("div",{className:"border border-border/50 rounded-lg p-3 bg-muted/10",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,s.jsx)(D,{className:"w-4 h-4 text-[color:var(--chart-5)]"}),(0,s.jsx)("span",{className:"font-mono text-sm text-[color:var(--chart-5)]",children:"Subagent"}),e.subagentType&&(0,s.jsx)("span",{className:"inline-flex items-center px-2 py-0.5 text-xs font-mono rounded border bg-[color:var(--chart-5)]/20 text-[color:var(--chart-5)] border-[color:var(--chart-5)]/30",children:e.subagentType}),e.result&&(0,s.jsx)("span",{className:"text-xs text-muted-foreground ml-auto",children:e.result.durationFormatted})]}),e.subagentDescription&&(0,s.jsx)("p",{className:"text-sm text-muted-foreground mb-2",children:e.subagentDescription}),e.subagentId&&t&&(0,s.jsxs)("button",{onClick:u,className:"inline-flex items-center gap-1.5 px-2.5 py-1 text-xs font-medium rounded border border-primary/30 bg-primary/10 text-primary hover:bg-primary/20 transition-colors mb-2",children:[(0,s.jsx)(W.ChevronRight,{className:(0,B.cn)("w-3 h-3 transition-transform",d&&"rotate-90")}),(0,s.jsxs)("span",{children:["agent-",e.subagentId]}),(0,s.jsx)("span",{className:"text-muted-foreground",children:d?"Collapse":"View subagent log"})]}),d&&(0,s.jsxs)("div",{className:"ml-4 pl-3 border-l-2 border-primary/30 mt-2 space-y-2",children:[t&&0===t.length&&(0,s.jsx)("div",{className:"text-xs text-muted-foreground py-2",children:"No entries found in subagent log."}),h&&(0,s.jsx)(s.Fragment,{children:(0,s.jsx)(R,{entries:t,compact:!0})}),t&&t.map(e=>"queue-operation"===e.type?(0,s.jsx)(H,{entry:e},m.get(e)):(0,s.jsx)(eg,{entry:e,projectName:r,sessionId:i,isHighlighted:!!l&&e.uuid===l},m.get(e)))]}),(0,s.jsx)(en,{block:e})]})}function ep({entry:e,entriesBySource:t,projectName:n,sessionId:r,highlightedUuid:i,autoExpandForUuid:l}){switch(e.type){case"user":return(0,s.jsx)(eo,{entry:e});case"assistant":return(0,s.jsx)(ea,{entry:e,entriesBySource:t,projectName:n,sessionId:r,highlightedUuid:i,autoExpandForUuid:l});case"file-history-snapshot":case"progress":case"system":return(0,s.jsx)(ed,{entry:e})}}let eg=n.default.memo(function({entry:e,entriesBySource:t,projectName:n,sessionId:r,isHighlighted:i,highlightedUuid:l,autoExpandForUuid:o}){return(0,s.jsxs)("div",{id:e.uuid?`entry-${e.uuid}`:void 0,className:(0,B.cn)(`group border-l-4 ${J[e.type]} bg-card/50 rounded-r-lg mb-2 hover:bg-muted/30 transition-colors`,i&&"entry-highlighted"),children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-4 py-2 border-b border-border/30",children:[(0,s.jsx)(et,{type:e.type}),(0,s.jsxs)("div",{className:"flex items-center gap-1 ml-auto",children:[e.uuid&&(0,s.jsx)(em,{uuid:e.uuid}),(0,s.jsx)(es.CopyButton,{text:function(e){switch(e.type){case"user":return e.message.content;case"assistant":return e.message.content.filter(e=>"text"===e.type).map(e=>e.text).join("\n");case"file-history-snapshot":case"progress":case"system":return P(e);case"queue-operation":return e.label}}(e)}),(0,s.jsx)("span",{className:"text-xs font-mono text-muted-foreground whitespace-nowrap",children:q(e.timestampMs)})]})]}),(0,s.jsx)("div",{className:"px-4 py-3",children:(0,s.jsx)(ep,{entry:e,entriesBySource:t,projectName:n,sessionId:r,highlightedUuid:l,autoExpandForUuid:o})})]})},(e,t)=>e.entry===t.entry&&e.entriesBySource===t.entriesBySource&&e.projectName===t.projectName&&e.sessionId===t.sessionId&&e.isHighlighted===t.isHighlighted&&e.highlightedUuid===t.highlightedUuid&&e.autoExpandForUuid===t.autoExpandForUuid);var ex=e.i(6870),ey=e.i(84026),eb=e.i(29407),ev=e.i(16306),ej=e.i(82954),eS=e.i(73520),ew=e.i(85881);function eN({decision:e}){return"deny"===e?(0,s.jsxs)("span",{className:"inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[0.65rem] font-semibold tracking-wide uppercase bg-red-500/10 text-red-400 border border-red-500/20",children:[(0,s.jsx)(eb.ShieldX,{className:"h-3 w-3"}),"Deny"]}):"instruct"===e?(0,s.jsxs)("span",{className:"inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[0.65rem] font-semibold tracking-wide uppercase bg-amber-500/10 text-amber-400 border border-amber-500/20",children:[(0,s.jsx)(ev.ShieldAlert,{className:"h-3 w-3"}),"Instruct"]}):(0,s.jsxs)("span",{className:"inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[0.65rem] font-semibold tracking-wide uppercase bg-emerald-500/10 text-emerald-400 border border-emerald-500/20",children:[(0,s.jsx)(ey.ShieldCheck,{className:"h-3 w-3"}),"Allow"]})}function eM({eventType:e}){return(0,s.jsx)("span",{className:"inline-flex items-center rounded px-1.5 py-0.5 text-[0.6rem] font-medium bg-muted text-muted-foreground border border-border/50",children:e})}function ek({mode:e}){let t="default"===e;return(0,s.jsx)("span",{className:`inline-flex items-center rounded px-1.5 py-0.5 text-[0.6rem] font-medium border ${t?"bg-sky-500/10 text-sky-400 border-sky-500/20":"bg-amber-500/10 text-amber-400 border-amber-500/20"}`,children:e})}function eE({ms:e}){return(0,s.jsx)("span",{className:`font-mono text-[0.7rem] ${e>500?"text-red-400":e>100?"text-amber-400":"text-muted-foreground"}`,children:e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`})}function eT({value:e,onChange:t}){return(0,s.jsx)("div",{className:"inline-flex items-center rounded-md border border-border bg-muted/30 p-0.5",children:[{label:"All",value:""},{label:"Allow",value:"allow"},{label:"Instruct",value:"instruct"},{label:"Deny",value:"deny"}].map(n=>(0,s.jsx)("button",{onClick:()=>t(n.value),className:`px-2.5 py-1 text-[0.65rem] font-medium rounded transition-all ${e===n.value?"deny"===n.value?"bg-red-500/15 text-red-400 shadow-sm":"allow"===n.value?"bg-emerald-500/15 text-emerald-400 shadow-sm":"instruct"===n.value?"bg-amber-500/15 text-amber-400 shadow-sm":"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:n.label},n.value))})}function eI({item:e}){return(0,s.jsx)("tr",{children:(0,s.jsx)("td",{colSpan:9,className:"px-0 py-0",children:(0,s.jsxs)("div",{className:"px-6 py-3 bg-muted/20 border-t border-border/30 space-y-2 text-xs animate-expand",children:[(0,s.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-x-8 gap-y-1.5",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"Session ID: "}),(0,s.jsx)("span",{className:"font-mono text-foreground",children:e.sessionId??"—"}),e.sessionId&&(0,s.jsx)(es.CopyButton,{text:e.sessionId})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"CWD: "}),(0,s.jsx)("span",{className:"font-mono text-foreground",children:e.cwd??"—"}),e.cwd&&(0,s.jsx)(es.CopyButton,{text:e.cwd})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"Transcript: "}),(0,s.jsx)("span",{className:"font-mono text-foreground break-all",children:e.transcriptPath??"—"}),e.transcriptPath?.startsWith("opencode-db://")&&(0,s.jsx)("span",{className:"text-muted-foreground ml-1",children:"(stored in opencode DB)"})]})]}),e.policyNames&&e.policyNames.length>1&&(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"Policies: "}),(0,s.jsx)("span",{className:"font-mono text-foreground",children:e.policyNames.join(", ")})]}),e.reason&&(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"Full reason: "}),(0,s.jsx)("span",{className:"text-foreground",children:e.reason})]})]})})})}function eA({sessionId:e,initialData:t}){let{intervalSec:r}=(0,ew.useAutoRefresh)(),[i,l]=(0,n.useState)(!1),[o,a]=(0,n.useState)(1),[d,c]=(0,n.useState)(t),[u,h]=(0,n.useState)(null),[m,f]=(0,n.useState)(""),[p,g]=(0,n.useState)(""),[x,y]=(0,n.useState)(""),v=(0,n.useRef)(null),j=(0,n.useRef)({filterDecision:m,filterEventType:p,filterPolicy:x});j.current={filterDecision:m,filterEventType:p,filterPolicy:x};let S=""!==m||""!==p||""!==x,w=(0,n.useCallback)(async t=>{try{let{filterDecision:s,filterEventType:n,filterPolicy:r}=j.current,i=await (0,ex.searchHookActivityAction)({sessionId:e,decision:s||void 0,eventType:n||void 0,policyName:r||void 0},t);c(i)}catch{}},[e]);(0,n.useEffect)(()=>{w(o);let e=setInterval(()=>w(o),r>0?1e3*r:5e3);return()=>clearInterval(e)},[o,w,r]),(0,n.useEffect)(()=>(v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{a(1),h(null),w(1)},300),()=>{v.current&&clearTimeout(v.current)}),[m,p,x]);let N=d.entries,M=d.totalPages;return(0,s.jsxs)("div",{children:[(0,s.jsxs)("button",{onClick:()=>l(e=>!e),className:"flex items-center gap-2 hover:opacity-80 transition-opacity",children:[(0,s.jsx)(b.ChevronDown,{className:`w-4 h-4 text-muted-foreground transition-transform ${i?"-rotate-90":""}`}),(0,s.jsx)("span",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wide",children:"Hook Logs"})]}),!i&&(0,s.jsxs)("div",{className:"mt-2 bg-card border border-border rounded-lg overflow-hidden shadow-sm",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-3 px-4 py-2.5 border-b border-border bg-muted/20",children:[(0,s.jsx)(eT,{value:m,onChange:f}),(0,s.jsxs)("select",{value:p,onChange:e=>g(e.target.value),className:"h-7 rounded-md border border-border bg-background px-2 text-xs text-foreground focus:outline-none focus:ring-2 focus:ring-primary/40 focus:border-primary/40 transition-shadow",children:[(0,s.jsx)("option",{value:"",children:"All Events"}),(0,s.jsx)("option",{value:"PreToolUse",children:"PreToolUse"}),(0,s.jsx)("option",{value:"PostToolUse",children:"PostToolUse"}),(0,s.jsx)("option",{value:"SessionStart",children:"SessionStart"}),(0,s.jsx)("option",{value:"SessionEnd",children:"SessionEnd"}),(0,s.jsx)("option",{value:"UserPromptSubmit",children:"UserPromptSubmit"}),(0,s.jsx)("option",{value:"PermissionRequest",children:"PermissionRequest"})]}),(0,s.jsx)("div",{className:"relative",children:(0,s.jsx)("input",{type:"text",value:x,onChange:e=>y(e.target.value),placeholder:"Filter by policy…",className:"h-7 rounded-md border border-border bg-background px-2.5 text-xs text-foreground placeholder:text-muted-foreground w-44 focus:outline-none focus:ring-2 focus:ring-primary/40 focus:border-primary/40 transition-shadow"})})]}),0===N.length?(0,s.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 px-4",children:[(0,s.jsx)(ej.Shield,{className:"h-10 w-10 text-muted-foreground/30"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground mt-3",children:S?"No matching hook events.":"No hook events found."})]}):(0,s.jsx)("div",{className:"overflow-x-auto",children:(0,s.jsxs)("table",{className:"w-full text-xs",children:[(0,s.jsx)("thead",{children:(0,s.jsxs)("tr",{className:"text-left text-muted-foreground border-b border-border bg-muted/30",children:[(0,s.jsx)("th",{className:"px-4 py-2.5 font-medium w-6"}),(0,s.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Decision"}),(0,s.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Event"}),(0,s.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Tool"}),(0,s.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Policy"}),(0,s.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Reason"}),(0,s.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Duration"}),(0,s.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Mode"}),(0,s.jsx)("th",{className:"px-3 py-2.5 font-medium text-right",children:"Time"})]})}),(0,s.jsx)("tbody",{className:"divide-y divide-border/30",children:N.map((e,t)=>{let r="deny"===e.decision,i=u===t,l="instruct"===e.decision;return(0,s.jsxs)(n.default.Fragment,{children:[(0,s.jsxs)("tr",{onClick:()=>{h(e=>e===t?null:t)},className:`cursor-pointer transition-colors ${r?"bg-red-500/[0.03] hover:bg-red-500/[0.07] border-l-2 border-l-red-500/40":l?"bg-amber-500/[0.03] hover:bg-amber-500/[0.07] border-l-2 border-l-amber-500/40":t%2==0?"hover:bg-muted/30":"bg-muted/[0.04] hover:bg-muted/30"} ${i?"bg-muted/20":""}`,children:[(0,s.jsx)("td",{className:"px-4 py-2",children:(0,s.jsx)(b.ChevronDown,{className:`h-3.5 w-3.5 text-muted-foreground transition-transform duration-150 ${i?"rotate-0":"-rotate-90"}`})}),(0,s.jsx)("td",{className:"px-3 py-2",children:(0,s.jsx)(eN,{decision:e.decision})}),(0,s.jsx)("td",{className:"px-3 py-2",children:(0,s.jsx)(eM,{eventType:e.eventType})}),(0,s.jsx)("td",{className:"px-3 py-2 font-mono text-foreground",children:e.toolName??"—"}),(0,s.jsx)("td",{className:"px-3 py-2 font-mono text-foreground",children:e.policyNames&&e.policyNames.length>1?(0,s.jsxs)("span",{title:e.policyNames.join(", "),children:[e.policyNames[0],(0,s.jsxs)("span",{className:"text-muted-foreground text-[0.6rem]",children:[" +",e.policyNames.length-1]})]}):e.policyName??"—"}),(0,s.jsx)("td",{className:"px-3 py-2 text-muted-foreground truncate max-w-[240px]",title:e.reason??"",children:e.reason??"—"}),(0,s.jsx)("td",{className:"px-3 py-2",children:(0,s.jsx)(eE,{ms:e.durationMs})}),(0,s.jsx)("td",{className:"px-3 py-2",children:e.permissionMode?(0,s.jsx)(ek,{mode:e.permissionMode}):"—"}),(0,s.jsx)("td",{className:"px-3 py-2 text-right text-muted-foreground whitespace-nowrap",title:new Date(e.timestamp).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"}),children:(0,F.formatRelativeTime)(e.timestamp)})]}),i&&(0,s.jsx)(eI,{item:e})]},`${e.timestamp}-${t}`)})})]})}),(0,s.jsx)(eS.default,{currentPage:o,totalPages:M,onPageChange:e=>{a(e),h(null)}})]})]})}function eC(e){let t=new Map;for(let s of e)if("assistant"===s.type)for(let e of s.message.content){if("tool_use"!==e.type||"Task"===e.name&&(e.subagentType||e.subagentId))continue;let s=t.get(e.name)||{count:0,totalDurationMs:0};s.count++,e.result?.durationMs&&(s.totalDurationMs+=e.result.durationMs),t.set(e.name,s)}return Array.from(t.entries()).map(([e,t])=>({name:e,...t})).sort((e,t)=>t.count-e.count)}function eO({tools:e,compact:t}){return(0,s.jsx)("div",{className:`bg-card border border-border rounded-lg ${t?"p-3":"p-4"}`,children:(0,s.jsx)("div",{className:`grid grid-cols-[repeat(auto-fit,minmax(200px,1fr))] ${t?"gap-2":"gap-3"}`,children:e.map(e=>(0,s.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,s.jsx)(S,{className:"w-3.5 h-3.5 text-muted-foreground flex-shrink-0"}),(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsx)("div",{className:`${t?"text-xs":"text-sm"} font-mono font-medium truncate`,children:e.name}),(0,s.jsxs)("div",{className:"text-xs text-muted-foreground truncate",children:[e.count," call",1!==e.count?"s":"",e.totalDurationMs>0&&` \xb7 ${(e.totalDurationMs/1e3).toFixed(1)}s`]})]})]},e.name))})})}function ez(e,t){return t.get(e)??`${e.uuid}-${e.timestampMs}`}function e_(){let e=window.location.hash;return e.startsWith("#entry-")?e.slice(7):null}function eD({entries:e,entriesBySource:t,projectName:i,sessionId:l}){let o=(0,n.useMemo)(()=>Array.from(t.values()).flat(),[t]),[a,d]=(0,n.useState)(new Set),[c,h]=(0,n.useState)(0),[f,x]=(0,n.useState)(()=>e_()),b=(0,n.useRef)(void 0),v=(0,n.useRef)(!1),j=(0,n.useRef)(null);(0,n.useLayoutEffect)(()=>{let e=j.current;if(!e)return;let t=()=>{let t=e.getBoundingClientRect().top+window.scrollY;h(e=>e===t?e:t)};t();let s=new ResizeObserver(t);return s.observe(document.body),window.addEventListener("resize",t),()=>{s.disconnect(),window.removeEventListener("resize",t)}},[]);let S=(0,n.useMemo)(()=>w(e),[e]),N=(0,n.useMemo)(()=>(function(e,t){let s=new Map,n=null,r=0;for(let i of e)"queue-operation"===i.type?(null!==n&&s.set(n,r),n=ez(i,t),r=0):null!==n&&r++;return null!==n&&s.set(n,r),s})(e,S),[e,S]),M=(0,n.useMemo)(()=>{let t;return t=!1,e.filter(e=>"queue-operation"===e.type?(t=a.has(ez(e,S)),!0):!t)},[e,a,S]),k=(0,n.useMemo)(()=>{let e=new Map;return M.forEach((t,s)=>{t.uuid&&e.set(t.uuid,s)}),e},[M]),E=(0,n.useMemo)(()=>(function(e){let t=new Map;for(let s of e)if("assistant"===s.type&&s.uuid)for(let e of s.message.content)"tool_use"===e.type&&"Task"===e.name&&e.subagentId&&t.set(e.subagentId,s.uuid);let s=new Map;for(let n of e){if(!n._source?.startsWith("agent-")||!n.uuid)continue;let e=n._source.slice(6),r=t.get(e);r&&s.set(n.uuid,r)}return s})(o),[o]),T=(0,n.useMemo)(()=>f&&E.has(f)?f:null,[f,E]),I=T?E.get(T)??null:null;(0,n.useEffect)(()=>{if(f)return b.current=setTimeout(()=>x(null),4e3),()=>{b.current&&clearTimeout(b.current)}},[]),(0,n.useEffect)(()=>{let e=()=>{let e=e_();x(e),v.current=!1,b.current&&clearTimeout(b.current),e&&(b.current=setTimeout(()=>x(null),4e3))};return window.addEventListener("hashchange",e),()=>window.removeEventListener("hashchange",e)},[]);let A=(0,n.useMemo)(()=>{if(!f)return null;let t=I??f,s=e.some(e=>e.uuid===t),n=k.has(t);if(s&&!n){let s=null;for(let n of e)if("queue-operation"===n.type)s=ez(n,S);else if(n.uuid===t&&s)return s}return null},[f,I,e,k,S]);(0,n.useEffect)(()=>{if(!A)return;let e=requestAnimationFrame(()=>{d(e=>{if(!e.has(A))return e;let t=new Set(e);return t.delete(A),t})});return()=>cancelAnimationFrame(e)},[A]);let C=(0,n.useCallback)(e=>{d(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},[]),O=(0,n.useCallback)(e=>S.get(M[e])??e,[S,M]),z=function({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:s="transform",...i}){let l=n.useReducer(e=>e+1,0)[1],o=n.useRef({enabled:t,mode:s,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});o.current.enabled=t,o.current.mode=s;let a=e=>{let t=o.current;if(!t.enabled||!t.container)return;let s=e.getTotalSize();if(s!==t.lastSize){t.lastSize=s;let n=e.options.horizontal?"width":"height";t.container.style[n]=`${s}px`}},d=e=>{let t=o.current;if(!t.enabled||!t.container)return;a(e);let s=!!e.options.horizontal,n="transform"===t.mode,r=s?"left":"top",i=e.options.scrollMargin;for(let l of e.getVirtualItems()){let o=l.start-i,a=e.elementsCache.get(l.key);a&&t.lastPositions.get(a)!==o&&(t.lastPositions.set(a,o),n?a.style.transform=s?`translate3d(${o}px, 0, 0)`:`translate3d(0, ${o}px, 0)`:a.style[r]=`${o}px`)}},c={...i,onChange:(t,s)=>{var n;let a=o.current,c=!0;if(a.enabled){d(t);let e=t.range,s=a.prevRange;(c=!s||s.isScrolling!==t.isScrolling||s.startIndex!==(null==e?void 0:e.startIndex)||s.endIndex!==(null==e?void 0:e.endIndex))&&(a.prevRange=e?{startIndex:e.startIndex,endIndex:e.endIndex,isScrolling:t.isScrolling}:null)}c&&(e&&s?(0,r.flushSync)(l):l()),null==(n=i.onChange)||n.call(i,t,s)}},[u]=n.useState(()=>{let e=new g(c);return Object.assign(e,{containerRef:t=>{let s=o.current;if(s.container=t,s.lastSize=null,t&&s.enabled){let n=e.getTotalSize();s.lastSize=n;let r=e.options.horizontal?"width":"height";t.style[r]=`${n}px`}}})});return u.setOptions(c),y(()=>u._didMount(),[]),y(()=>(a(u),u._willUpdate())),y(()=>{d(u)}),u}({getScrollElement:()=>"u">typeof document?window:null,observeElementRect:u,observeElementOffset:m,scrollToFn:p,initialOffset:()=>"u">typeof document?window.scrollY:0,...{count:M.length,estimateSize:e=>(function(e){switch(e.type){case"queue-operation":return 48;case"user":return 90;case"assistant":return 80+120*e.message.content.length;default:return 100}})(M[e]),getItemKey:O,overscan:5,scrollMargin:c}});return(0,n.useEffect)(()=>{if(!f||v.current)return;let e=I??f,t=k.get(e);null!=t&&(v.current=!0,requestAnimationFrame(()=>{z.scrollToIndex(t,{align:"center"})}))},[f,I,k,z]),(0,s.jsx)("div",{ref:j,children:(0,s.jsx)("div",{style:{height:`${z.getTotalSize()}px`,width:"100%",position:"relative"},children:z.getVirtualItems().map(e=>{let n=M[e.index],r=!!f&&n.uuid===(I??f);return(0,s.jsx)("div",{"data-index":e.index,ref:z.measureElement,style:{position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${e.start-z.options.scrollMargin}px)`},children:"queue-operation"===n.type?(0,s.jsx)(H,{entry:n,isCollapsed:a.has(ez(n,S)),entryCount:N.get(ez(n,S))??0,onToggle:()=>C(ez(n,S))}):(0,s.jsx)(eg,{entry:n,entriesBySource:t,projectName:i,sessionId:l,isHighlighted:!T&&r,highlightedUuid:T,autoExpandForUuid:T})},e.key)})})})}let eF=[];e.s([],76248),e.i(76248),e.s(["default",0,function({entries:e,projectName:t,sessionId:r}){let i=(0,n.useMemo)(()=>{let t=new Map;for(let s of e){let e=t.get(s._source);e?e.push(s):t.set(s._source,[s])}return t},[e]),l=i.get("session")??eF,o=(0,n.useMemo)(()=>(function(e){let t=new Map;for(let s of e)if("assistant"===s.type)for(let e of s.message.content)"tool_use"===e.type&&"Task"===e.name&&e.subagentId&&(t.has(e.subagentId)||t.set(e.subagentId,{id:e.subagentId,type:e.subagentType||"unknown",description:e.subagentDescription||""}));return Array.from(t.values())})(e),[e]),a=(0,n.useMemo)(()=>eC(l),[l]),[d,c]=(0,n.useState)(!1),[u,h]=(0,n.useState)(new Set),[m,f]=(0,n.useState)(!1),[p,g]=(0,n.useState)(null);(0,n.useEffect)(()=>{(0,ex.searchHookActivityAction)({sessionId:r},1).then(e=>{e.entries.length>0&&g(e)}).catch(()=>{})},[r]),(0,n.useEffect)(()=>{let e=()=>{window.location.hash.startsWith("#entry-")&&f(!1)};return window.addEventListener("hashchange",e),()=>window.removeEventListener("hashchange",e)},[]);let x=(0,n.useCallback)(e=>{h(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},[]);return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)(R,{entries:l}),p&&(0,s.jsx)(eA,{sessionId:r,initialData:p},r),o.length>0&&(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsxs)("button",{onClick:()=>c(e=>!e),className:"flex items-center gap-2 hover:opacity-80 transition-opacity",children:[(0,s.jsx)(b.ChevronDown,{className:`w-4 h-4 text-muted-foreground transition-transform ${d?"-rotate-90":""}`}),(0,s.jsx)("span",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wide",children:"Subagents"}),(0,s.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",o.length,")"]})]}),!d&&o.map(e=>{let t;return(0,s.jsxs)("div",{className:"pl-3 border-l-2 border-primary/30 space-y-2",children:[(0,s.jsxs)("button",{onClick:()=>x(e.id),className:"flex items-center gap-2 hover:opacity-80 transition-opacity",children:[(0,s.jsx)(b.ChevronDown,{className:`w-3.5 h-3.5 text-muted-foreground transition-transform ${u.has(e.id)?"-rotate-90":""}`}),(0,s.jsx)("span",{className:"text-sm font-bold",children:e.type}),e.description&&(0,s.jsx)("span",{className:"text-xs text-muted-foreground truncate max-w-[400px]",children:e.description})]}),!u.has(e.id)&&(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(R,{entries:i.get(`agent-${e.id}`)||[],compact:!0}),(t=eC(i.get(`agent-${e.id}`)||[])).length>0?(0,s.jsx)(eO,{tools:t,compact:!0}):null]})]},e.id)})]}),a.length>0&&(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wide",children:"Tools"}),(0,s.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",a.reduce((e,t)=>e+t.count,0),")"]})]}),(0,s.jsx)(eO,{tools:a})]}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("button",{onClick:()=>f(e=>!e),className:"flex items-center gap-2 hover:opacity-80 transition-opacity",children:[(0,s.jsx)(b.ChevronDown,{className:`w-4 h-4 text-muted-foreground transition-transform ${m?"-rotate-90":""}`}),(0,s.jsx)("span",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wide",children:"Logs"})]}),!m&&(0,s.jsx)("div",{className:"mt-2 bg-card border border-border rounded-lg p-4 shadow-sm",children:0===l.length?(0,s.jsx)("p",{className:"text-muted-foreground text-center py-8",children:"No entries found."}):(0,s.jsx)(eD,{entries:l,entriesBySource:i,projectName:t,sessionId:r})})]})]})}],36406)},5780,function(e){e.n(e.i(36406))}]);
@@ -1,2 +0,0 @@
1
- @import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&family=VT323&display=swap";
2
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-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}}}@layer theme{:root,:host{--font-mono:var(--font-mono);--color-red-100:#ffe2e2;--color-red-200:#ffcaca;--color-red-400:#ff6568;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-900:#82181a;--color-red-950:#460809;--color-orange-400:#ff8b1a;--color-orange-500:#fe6e00;--color-amber-400:#fcbb00;--color-amber-500:#f99c00;--color-amber-600:#dd7400;--color-lime-400:#9de500;--color-lime-500:#80cd00;--color-green-500:#00c758;--color-emerald-400:#00d294;--color-emerald-500:#00bb7f;--color-teal-400:#00d3bd;--color-teal-500:#00baa7;--color-cyan-400:#00d2ef;--color-cyan-500:#00b7d7;--color-sky-400:#00bcfe;--color-sky-500:#00a5ef;--color-blue-400:#54a2ff;--color-blue-500:#3080ff;--color-indigo-400:#7d87ff;--color-indigo-500:#625fff;--color-violet-400:#a685ff;--color-violet-500:#8d54ff;--color-purple-400:#c07eff;--color-purple-500:#ac4bff;--color-pink-400:#fb64b6;--color-pink-500:#f6339a;--color-rose-400:#ff667f;--color-rose-500:#ff2357;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear 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:var(--font-mono);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-100:lab(92.243% 10.2865 3.83865);--color-red-200:lab(86.017% 19.8815 7.75869);--color-red-400:lab(63.7053% 60.745 31.3109);--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-900:lab(28.5139% 44.5539 29.0463);--color-red-950:lab(13.003% 29.04 16.7519);--color-orange-400:lab(70.0429% 42.5156 75.8207);--color-orange-500:lab(64.272% 57.1788 90.3583);--color-amber-400:lab(80.1641% 16.6016 99.2089);--color-amber-500:lab(72.7183% 31.8672 97.9407);--color-amber-600:lab(60.3514% 40.5624 87.1228);--color-lime-400:lab(83.7876% -45.0447 88.4738);--color-lime-500:lab(75.3197% -46.6547 86.1778);--color-green-500:lab(70.5521% -66.5147 45.8073);--color-emerald-400:lab(75.0771% -60.7313 19.4147);--color-emerald-500:lab(66.9756% -58.27 19.5419);--color-teal-400:lab(76.0109% -53.3483 -2.27906);--color-teal-500:lab(67.3859% -49.0983 -2.63511);--color-cyan-400:lab(76.6045% -40.9406 -29.6231);--color-cyan-500:lab(67.805% -35.3952 -30.2018);--color-sky-400:lab(70.687% -23.6078 -45.9483);--color-sky-500:lab(63.3038% -18.433 -51.0407);--color-blue-400:lab(65.0361% -1.42065 -56.9802);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-indigo-400:lab(59.866% 22.4834 -64.4485);--color-indigo-500:lab(48.295% 38.3129 -81.9673);--color-violet-400:lab(62.8239% 34.9159 -60.0512);--color-violet-500:lab(49.9355% 55.1776 -81.8963);--color-purple-400:lab(63.6946% 47.6127 -59.2066);--color-purple-500:lab(52.0183% 66.11 -78.2316);--color-pink-400:lab(64.5597% 64.3615 -12.7988);--color-pink-500:lab(56.9303% 76.8162 -8.07021);--color-rose-400:lab(64.4125% 63.0291 19.2068);--color-rose-500:lab(56.101% 79.4328 31.4532)}}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}html{font-size:100%}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.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:0}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.top-5{top:calc(var(--spacing) * 5)}.right-0{right:0}.right-2\.5{right:calc(var(--spacing) * 2.5)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:0}.bottom-4{bottom:calc(var(--spacing) * 4)}.left-0{left:0}.isolate{isolation:isolate}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[9999\]{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-1{margin:var(--spacing)}.m-9{margin:calc(var(--spacing) * 9)}.m-42{margin:calc(var(--spacing) * 42)}.m-123{margin:calc(var(--spacing) * 123)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.-mt-0\.5{margin-top:calc(var(--spacing) * -.5)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.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)}.-mr-0\.5{margin-right:calc(var(--spacing) * -.5)}.mr-1{margin-right:var(--spacing)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-1{margin-left:var(--spacing)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.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}.inline-grid{display:inline-grid}.table{display:table}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:var(--spacing)}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-96{height:calc(var(--spacing) * 96)}.h-\[18px\]{height:18px}.h-full{height:100%}.h-px{height:1px}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-\[80vh\]{max-height:80vh}.min-h-screen{min-height:100vh}.w-1{width:var(--spacing)}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.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-\[3px\]{width:3px}.w-\[18px\]{width:18px}.w-\[200px\]{width:200px}.w-\[250px\]{width:250px}.w-full{width:100%}.w-px{width:1px}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[120px\]{max-width:120px}.max-w-\[240px\]{max-width:240px}.max-w-\[400px\]{max-width:400px}.max-w-\[420px\]{max-width:420px}.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)}.min-w-0{min-width:0}.min-w-\[2\.5rem\]{min-width:2.5rem}.min-w-\[16rem\]{min-width:16rem}.min-w-\[150px\]{min-width:150px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.translate-x-0\.5{--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-3\.5{--tw-translate-x:calc(var(--spacing) * 3.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-rotate-90{rotate:-90deg}.rotate-0{rotate:none}.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-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-y{resize:vertical}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(200px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.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)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-1{row-gap:var(--spacing)}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}: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\/30>:not(:last-child)){border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){:where(.divide-border\/30>:not(:last-child)){border-color:color-mix(in oklab, var(--border) 30%, transparent)}}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg,.rounded-md,.rounded-sm{border-radius:0}.rounded-r-lg{border-top-right-radius:0;border-bottom-right-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-\[color\:var\(--chart-1\)\]\/30{border-color:var(--chart-1)}@supports (color:color-mix(in lab, red, red)){.border-\[color\:var\(--chart-1\)\]\/30{border-color:color-mix(in oklab, var(--chart-1) 30%, transparent)}}.border-\[color\:var\(--chart-2\)\]\/30{border-color:var(--chart-2)}@supports (color:color-mix(in lab, red, red)){.border-\[color\:var\(--chart-2\)\]\/30{border-color:color-mix(in oklab, var(--chart-2) 30%, transparent)}}.border-\[color\:var\(--chart-3\)\]\/30{border-color:var(--chart-3)}@supports (color:color-mix(in lab, red, red)){.border-\[color\:var\(--chart-3\)\]\/30{border-color:color-mix(in oklab, var(--chart-3) 30%, transparent)}}.border-\[color\:var\(--chart-4\)\]\/30{border-color:var(--chart-4)}@supports (color:color-mix(in lab, red, red)){.border-\[color\:var\(--chart-4\)\]\/30{border-color:color-mix(in oklab, var(--chart-4) 30%, transparent)}}.border-\[color\:var\(--chart-5\)\]\/30{border-color:var(--chart-5)}@supports (color:color-mix(in lab, red, red)){.border-\[color\:var\(--chart-5\)\]\/30{border-color:color-mix(in oklab, var(--chart-5) 30%, transparent)}}.border-amber-500\/20{border-color:#f99c0033}@supports (color:color-mix(in lab, red, red)){.border-amber-500\/20{border-color:color-mix(in oklab, var(--color-amber-500) 20%, transparent)}}.border-amber-500\/30{border-color:#f99c004d}@supports (color:color-mix(in lab, red, red)){.border-amber-500\/30{border-color:color-mix(in oklab, var(--color-amber-500) 30%, transparent)}}.border-amber-500\/40{border-color:#f99c0066}@supports (color:color-mix(in lab, red, red)){.border-amber-500\/40{border-color:color-mix(in oklab, var(--color-amber-500) 40%, transparent)}}.border-blue-500\/20{border-color:#3080ff33}@supports (color:color-mix(in lab, red, red)){.border-blue-500\/20{border-color:color-mix(in oklab, var(--color-blue-500) 20%, transparent)}}.border-border,.border-border\/10{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/10{border-color:color-mix(in oklab, var(--border) 10%, transparent)}}.border-border\/20{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/20{border-color:color-mix(in oklab, var(--border) 20%, transparent)}}.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-cyan-500\/20{border-color:#00b7d733}@supports (color:color-mix(in lab, red, red)){.border-cyan-500\/20{border-color:color-mix(in oklab, var(--color-cyan-500) 20%, transparent)}}.border-destructive\/50{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/50{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.border-emerald-500\/20{border-color:#00bb7f33}@supports (color:color-mix(in lab, red, red)){.border-emerald-500\/20{border-color:color-mix(in oklab, var(--color-emerald-500) 20%, transparent)}}.border-indigo-500\/20{border-color:#625fff33}@supports (color:color-mix(in lab, red, red)){.border-indigo-500\/20{border-color:color-mix(in oklab, var(--color-indigo-500) 20%, transparent)}}.border-lime-500\/20{border-color:#80cd0033}@supports (color:color-mix(in lab, red, red)){.border-lime-500\/20{border-color:color-mix(in oklab, var(--color-lime-500) 20%, transparent)}}.border-orange-500\/20{border-color:#fe6e0033}@supports (color:color-mix(in lab, red, red)){.border-orange-500\/20{border-color:color-mix(in oklab, var(--color-orange-500) 20%, transparent)}}.border-pink-500\/20{border-color:#f6339a33}@supports (color:color-mix(in lab, red, red)){.border-pink-500\/20{border-color:color-mix(in oklab, var(--color-pink-500) 20%, transparent)}}.border-pink-500\/40{border-color:#f6339a66}@supports (color:color-mix(in lab, red, red)){.border-pink-500\/40{border-color:color-mix(in oklab, var(--color-pink-500) 40%, transparent)}}.border-primary,.border-primary\/20{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/20{border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.border-primary\/30{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/30{border-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.border-primary\/50{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/50{border-color:color-mix(in oklab, var(--primary) 50%, transparent)}}.border-purple-500\/20{border-color:#ac4bff33}@supports (color:color-mix(in lab, red, red)){.border-purple-500\/20{border-color:color-mix(in oklab, var(--color-purple-500) 20%, transparent)}}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.border-red-500\/20{border-color:color-mix(in oklab, var(--color-red-500) 20%, transparent)}}.border-red-500\/40{border-color:#fb2c3666}@supports (color:color-mix(in lab, red, red)){.border-red-500\/40{border-color:color-mix(in oklab, var(--color-red-500) 40%, transparent)}}.border-rose-500\/20{border-color:#ff235733}@supports (color:color-mix(in lab, red, red)){.border-rose-500\/20{border-color:color-mix(in oklab, var(--color-rose-500) 20%, transparent)}}.border-sky-500\/20{border-color:#00a5ef33}@supports (color:color-mix(in lab, red, red)){.border-sky-500\/20{border-color:color-mix(in oklab, var(--color-sky-500) 20%, transparent)}}.border-teal-500\/20{border-color:#00baa733}@supports (color:color-mix(in lab, red, red)){.border-teal-500\/20{border-color:color-mix(in oklab, var(--color-teal-500) 20%, transparent)}}.border-violet-500\/20{border-color:#8d54ff33}@supports (color:color-mix(in lab, red, red)){.border-violet-500\/20{border-color:color-mix(in oklab, var(--color-violet-500) 20%, transparent)}}.border-l-\[color\:var\(--chart-1\)\]{border-left-color:var(--chart-1)}.border-l-\[color\:var\(--chart-2\)\]{border-left-color:var(--chart-2)}.border-l-\[color\:var\(--chart-3\)\]{border-left-color:var(--chart-3)}.border-l-\[color\:var\(--chart-4\)\]{border-left-color:var(--chart-4)}.border-l-\[color\:var\(--chart-5\)\]{border-left-color:var(--chart-5)}.border-l-amber-500\/40{border-left-color:#f99c0066}@supports (color:color-mix(in lab, red, red)){.border-l-amber-500\/40{border-left-color:color-mix(in oklab, var(--color-amber-500) 40%, transparent)}}.border-l-primary{border-left-color:var(--primary)}.border-l-red-500\/40{border-left-color:#fb2c3666}@supports (color:color-mix(in lab, red, red)){.border-l-red-500\/40{border-left-color:color-mix(in oklab, var(--color-red-500) 40%, transparent)}}.bg-\[color\:var\(--chart-1\)\]\/20{background-color:var(--chart-1)}@supports (color:color-mix(in lab, red, red)){.bg-\[color\:var\(--chart-1\)\]\/20{background-color:color-mix(in oklab, var(--chart-1) 20%, transparent)}}.bg-\[color\:var\(--chart-2\)\]\/20{background-color:var(--chart-2)}@supports (color:color-mix(in lab, red, red)){.bg-\[color\:var\(--chart-2\)\]\/20{background-color:color-mix(in oklab, var(--chart-2) 20%, transparent)}}.bg-\[color\:var\(--chart-3\)\]\/20{background-color:var(--chart-3)}@supports (color:color-mix(in lab, red, red)){.bg-\[color\:var\(--chart-3\)\]\/20{background-color:color-mix(in oklab, var(--chart-3) 20%, transparent)}}.bg-\[color\:var\(--chart-4\)\]\/20{background-color:var(--chart-4)}@supports (color:color-mix(in lab, red, red)){.bg-\[color\:var\(--chart-4\)\]\/20{background-color:color-mix(in oklab, var(--chart-4) 20%, transparent)}}.bg-\[color\:var\(--chart-5\)\]\/5{background-color:var(--chart-5)}@supports (color:color-mix(in lab, red, red)){.bg-\[color\:var\(--chart-5\)\]\/5{background-color:color-mix(in oklab, var(--chart-5) 5%, transparent)}}.bg-\[color\:var\(--chart-5\)\]\/20{background-color:var(--chart-5)}@supports (color:color-mix(in lab, red, red)){.bg-\[color\:var\(--chart-5\)\]\/20{background-color:color-mix(in oklab, var(--chart-5) 20%, transparent)}}.bg-amber-500\/5{background-color:#f99c000d}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/5{background-color:color-mix(in oklab, var(--color-amber-500) 5%, transparent)}}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/10{background-color:color-mix(in oklab, var(--color-amber-500) 10%, transparent)}}.bg-amber-500\/15{background-color:#f99c0026}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/15{background-color:color-mix(in oklab, var(--color-amber-500) 15%, transparent)}}.bg-amber-500\/\[0\.03\]{background-color:#f99c0008}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/\[0\.03\]{background-color:color-mix(in oklab, var(--color-amber-500) 3%, transparent)}}.bg-amber-500\/\[0\.07\]{background-color:#f99c0012}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/\[0\.07\]{background-color:color-mix(in oklab, var(--color-amber-500) 7.0%, transparent)}}.bg-background,.bg-background\/50{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-background\/50{background-color:color-mix(in oklab, var(--background) 50%, 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-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.bg-blue-500\/10{background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.bg-border{background-color:var(--border)}.bg-card,.bg-card\/50{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){.bg-card\/50{background-color:color-mix(in oklab, var(--card) 50%, transparent)}}.bg-current{background-color:currentColor}.bg-cyan-500\/10{background-color:#00b7d71a}@supports (color:color-mix(in lab, red, red)){.bg-cyan-500\/10{background-color:color-mix(in oklab, var(--color-cyan-500) 10%, 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-emerald-500\/15{background-color:#00bb7f26}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/15{background-color:color-mix(in oklab, var(--color-emerald-500) 15%, transparent)}}.bg-indigo-500\/10{background-color:#625fff1a}@supports (color:color-mix(in lab, red, red)){.bg-indigo-500\/10{background-color:color-mix(in oklab, var(--color-indigo-500) 10%, transparent)}}.bg-input{background-color:var(--input)}.bg-lime-500\/10{background-color:#80cd001a}@supports (color:color-mix(in lab, red, red)){.bg-lime-500\/10{background-color:color-mix(in oklab, var(--color-lime-500) 10%, transparent)}}.bg-muted{background-color:var(--muted)}.bg-muted-foreground\/30{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/30{background-color:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.bg-muted-foreground\/40{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/40{background-color:color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}.bg-muted\/5{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/5{background-color:color-mix(in oklab, var(--muted) 5%, transparent)}}.bg-muted\/10{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/10{background-color:color-mix(in oklab, var(--muted) 10%, transparent)}}.bg-muted\/20{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/20{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/40{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-muted\/\[0\.04\]{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/\[0\.04\]{background-color:color-mix(in oklab, var(--muted) 4%, transparent)}}.bg-orange-500\/10{background-color:#fe6e001a}@supports (color:color-mix(in lab, red, red)){.bg-orange-500\/10{background-color:color-mix(in oklab, var(--color-orange-500) 10%, transparent)}}.bg-pink-400{background-color:var(--color-pink-400)}.bg-pink-500\/10{background-color:#f6339a1a}@supports (color:color-mix(in lab, red, red)){.bg-pink-500\/10{background-color:color-mix(in oklab, var(--color-pink-500) 10%, transparent)}}.bg-pink-500\/\[0\.04\]{background-color:#f6339a0a}@supports (color:color-mix(in lab, red, red)){.bg-pink-500\/\[0\.04\]{background-color:color-mix(in oklab, var(--color-pink-500) 4%, transparent)}}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-primary\/20{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.bg-primary\/30{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/30{background-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.bg-purple-500\/10{background-color:#ac4bff1a}@supports (color:color-mix(in lab, red, red)){.bg-purple-500\/10{background-color:color-mix(in oklab, var(--color-purple-500) 10%, transparent)}}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/10{background-color:color-mix(in oklab, var(--color-red-500) 10%, transparent)}}.bg-red-500\/15{background-color:#fb2c3626}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/15{background-color:color-mix(in oklab, var(--color-red-500) 15%, transparent)}}.bg-red-500\/\[0\.03\]{background-color:#fb2c3608}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/\[0\.03\]{background-color:color-mix(in oklab, var(--color-red-500) 3%, transparent)}}.bg-red-950\/95{background-color:#460809f2}@supports (color:color-mix(in lab, red, red)){.bg-red-950\/95{background-color:color-mix(in oklab, var(--color-red-950) 95%, transparent)}}.bg-rose-500\/10{background-color:#ff23571a}@supports (color:color-mix(in lab, red, red)){.bg-rose-500\/10{background-color:color-mix(in oklab, var(--color-rose-500) 10%, transparent)}}.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-teal-500\/10{background-color:#00baa71a}@supports (color:color-mix(in lab, red, red)){.bg-teal-500\/10{background-color:color-mix(in oklab, var(--color-teal-500) 10%, transparent)}}.bg-transparent{background-color:#0000}.bg-violet-500\/10{background-color:#8d54ff1a}@supports (color:color-mix(in lab, red, red)){.bg-violet-500\/10{background-color:color-mix(in oklab, var(--color-violet-500) 10%, transparent)}}.bg-white{background-color:var(--color-white)}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-red-600{--tw-gradient-from:var(--color-red-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-red-400{--tw-gradient-via:var(--color-red-400);--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-red-600{--tw-gradient-to:var(--color-red-600);--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))}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.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-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.pr-5{padding-right:calc(var(--spacing) * 5)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.6rem\]{font-size:.6rem}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.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)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.15em\]{--tw-tracking:.15em;letter-spacing:.15em}.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)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[color\:var\(--chart-1\)\]{color:var(--chart-1)}.text-\[color\:var\(--chart-2\)\]{color:var(--chart-2)}.text-\[color\:var\(--chart-3\)\]{color:var(--chart-3)}.text-\[color\:var\(--chart-4\)\]{color:var(--chart-4)}.text-\[color\:var\(--chart-5\)\]{color:var(--chart-5)}.text-amber-400{color:var(--color-amber-400)}.text-amber-500{color:var(--color-amber-500)}.text-amber-500\/80{color:#f99c00cc}@supports (color:color-mix(in lab, red, red)){.text-amber-500\/80{color:color-mix(in oklab, var(--color-amber-500) 80%, transparent)}}.text-amber-600{color:var(--color-amber-600)}.text-blue-400{color:var(--color-blue-400)}.text-card-foreground{color:var(--card-foreground)}.text-cyan-400{color:var(--color-cyan-400)}.text-destructive{color:var(--destructive)}.text-emerald-400{color:var(--color-emerald-400)}.text-emerald-500{color:var(--color-emerald-500)}.text-foreground,.text-foreground\/90{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/90{color:color-mix(in oklab, var(--foreground) 90%, transparent)}}.text-green-500{color:var(--color-green-500)}.text-indigo-400{color:var(--color-indigo-400)}.text-input{color:var(--input)}.text-lime-400{color:var(--color-lime-400)}.text-muted-foreground,.text-muted-foreground\/30{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/30{color:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.text-muted-foreground\/40{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/40{color:color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}.text-muted-foreground\/50{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/50{color:color-mix(in oklab, var(--muted-foreground) 50%, transparent)}}.text-muted-foreground\/55{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/55{color:color-mix(in oklab, var(--muted-foreground) 55%, transparent)}}.text-muted-foreground\/60{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/60{color:color-mix(in oklab, var(--muted-foreground) 60%, transparent)}}.text-muted-foreground\/70{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/70{color:color-mix(in oklab, var(--muted-foreground) 70%, transparent)}}.text-muted-foreground\/80{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/80{color:color-mix(in oklab, var(--muted-foreground) 80%, transparent)}}.text-orange-400{color:var(--color-orange-400)}.text-pink-400{color:var(--color-pink-400)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-primary\/70{color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.text-primary\/70{color:color-mix(in oklab, var(--primary) 70%, transparent)}}.text-purple-400{color:var(--color-purple-400)}.text-red-100{color:var(--color-red-100)}.text-red-400{color:var(--color-red-400)}.text-red-400\/60{color:#ff656899}@supports (color:color-mix(in lab, red, red)){.text-red-400\/60{color:color-mix(in oklab, var(--color-red-400) 60%, transparent)}}.text-rose-400{color:var(--color-rose-400)}.text-sky-400{color:var(--color-sky-400)}.text-teal-400{color:var(--color-teal-400)}.text-violet-400{color:var(--color-violet-400)}.text-white{color:var(--color-white)}.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,)}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_4px_currentColor\]{--tw-shadow:0 0 4px var(--tw-shadow-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-\[0_0_8px_rgba\(52\,211\,153\,0\.6\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#34d39999);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-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-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--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)}.shadow-red-900\/40{--tw-shadow-color:#82181a66}@supports (color:color-mix(in lab, red, red)){.shadow-red-900\/40{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-red-900) 40%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-red-500\/30{--tw-ring-color:#fb2c364d}@supports (color:color-mix(in lab, red, red)){.ring-red-500\/30{--tw-ring-color:color-mix(in oklab, var(--color-red-500) 30%, transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,color\,box-shadow\,border-color\]{transition-property:background-color,color,box-shadow,border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}.\[failproofai\:hook\]{failproofai:hook}.\[failproofai\:telemetry\]{failproofai:telemetry}.\[redacted\:aws-access-key-id\]{redacted:aws-access-key-id}.\[redacted\:bearer-token\]{redacted:bearer-token}.\[redacted\:github-token\]{redacted:github-token}.\[redacted\:jwt\]{redacted:jwt}.\[redacted\:openai-key\]{redacted:openai-key}.\[redacted\:secret-assignment\]{redacted:secret-assignment}@media (hover:hover){.group-hover\:border-foreground\/40:is(:where(.group):hover *){border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.group-hover\:border-foreground\/40:is(:where(.group):hover *){border-color:color-mix(in oklab, var(--foreground) 40%, transparent)}}.group-hover\:bg-primary\/20:is(:where(.group):hover *){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-primary\/20:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.group-hover\:text-muted-foreground\/80:is(:where(.group):hover *){color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.group-hover\:text-muted-foreground\/80:is(:where(.group):hover *){color:color-mix(in oklab, var(--muted-foreground) 80%, transparent)}}.group-hover\:text-primary\/80:is(:where(.group):hover *){color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-hover\:text-primary\/80:is(:where(.group):hover *){color:color-mix(in oklab, var(--primary) 80%, transparent)}}.group-hover\:opacity-60:is(:where(.group):hover *){opacity:.6}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.peer-focus-visible\:ring-2:is(:where(.peer):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)}.peer-focus-visible\:ring-primary\/40:is(:where(.peer):focus-visible~*){--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.peer-focus-visible\:ring-primary\/40:is(:where(.peer):focus-visible~*){--tw-ring-color:color-mix(in oklab, var(--primary) 40%, transparent)}}.placeholder\:text-muted-foreground::placeholder,.placeholder\:text-muted-foreground\/50::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.placeholder\:text-muted-foreground\/50::placeholder{color:color-mix(in oklab, var(--muted-foreground) 50%, transparent)}}@media (hover:hover){.hover\:border-primary\/50:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab, var(--primary) 50%, transparent)}}.hover\:border-primary\/60:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/60:hover{border-color:color-mix(in oklab, var(--primary) 60%, transparent)}}.hover\:bg-amber-500\/\[0\.07\]:hover{background-color:#f99c0012}@supports (color:color-mix(in lab, red, red)){.hover\:bg-amber-500\/\[0\.07\]:hover{background-color:color-mix(in oklab, var(--color-amber-500) 7.0%, transparent)}}.hover\:bg-card:hover{background-color:var(--card)}.hover\:bg-muted:hover,.hover\:bg-muted\/15:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/15:hover{background-color:color-mix(in oklab, var(--muted) 15%, transparent)}}.hover\:bg-muted\/20:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/20:hover{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.hover\:bg-muted\/30:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/30:hover{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\:bg-muted\/80:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/80:hover{background-color:color-mix(in oklab, var(--muted) 80%, transparent)}}.hover\:bg-primary\/10:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/10:hover{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.hover\:bg-primary\/20:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/20:hover{background-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\:bg-red-400:hover{background-color:var(--color-red-400)}.hover\:bg-red-500\/10:hover{background-color:#fb2c361a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-red-500\/10:hover{background-color:color-mix(in oklab, var(--color-red-500) 10%, transparent)}}.hover\:bg-red-500\/20:hover{background-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.hover\:bg-red-500\/20:hover{background-color:color-mix(in oklab, var(--color-red-500) 20%, transparent)}}.hover\:bg-red-500\/\[0\.07\]:hover{background-color:#fb2c3612}@supports (color:color-mix(in lab, red, red)){.hover\:bg-red-500\/\[0\.07\]:hover{background-color:color-mix(in oklab, var(--color-red-500) 7.0%, transparent)}}.hover\:text-destructive:hover{color:var(--destructive)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-primary:hover{color:var(--primary)}.hover\:text-red-200:hover{color:var(--color-red-200)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-\[0_0_0_1px_var\(--primary\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--primary));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:border-primary\/40:focus{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.focus\:border-primary\/40:focus{border-color:color-mix(in oklab, var(--primary) 40%, transparent)}}.focus\:border-transparent:focus{border-color:#0000}.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\/40:focus{--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.focus\:ring-primary\/40:focus{--tw-ring-color:color-mix(in oklab, var(--primary) 40%, transparent)}}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.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-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--background)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (min-width:48rem){.md\:table-cell{display:table-cell}}@media (min-width:64rem){.lg\:col-span-3{grid-column:span 3/span 3}.lg\:block{display:block}.lg\:inline{display:inline}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}}.dark\:text-amber-500:is(.dark *){color:var(--color-amber-500)}}@font-face{font-family:Bitcount Prop Single;src:url(/audit/fonts/bitcount-prop-single.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}:root{--bg:#131316;--bg-2:#0e0e11;--bg-3:#1a1a1f;--bg-row-hover:#17171c;--ink:#d8d6d2;--ink-2:#9a9892;--dim:#5e5c58;--line:#25252b;--line-2:#32323a;--accent-pink:#e4587c;--accent-pink-soft:#e4587cb3;--accent-pink-shadow:#a83a5a;--accent-pink-bg:#e4587c1f;--accent-green:#66d1b5;--accent-green-shadow:#3e9a82;--accent-green-bg:#66d1b51a;--amber:#e8c46a;--amber-bg:#e8c46a1a;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-display:"Bitcount Prop Single", "VT323", "JetBrains Mono", monospace;--radius:0;--background:var(--bg);--foreground:var(--ink);--card:var(--bg-2);--card-foreground:var(--ink);--popover:var(--bg-2);--popover-foreground:var(--ink);--primary:var(--accent-pink);--primary-foreground:var(--bg);--secondary:var(--bg-3);--secondary-foreground:var(--ink);--muted:var(--bg-3);--muted-foreground:var(--ink-2);--accent:var(--accent-pink);--accent-light:#f08aa6;--accent-lighter:#f7b3c5;--accent-lightest:#fbd5de;--accent-foreground:var(--bg);--destructive:var(--accent-pink);--border:var(--line);--input:var(--line-2);--ring:var(--accent-pink);--chart-1:var(--accent-pink);--chart-2:var(--accent-green);--chart-3:var(--amber);--chart-4:#f87171;--chart-5:#a78bfa;--sidebar:var(--bg-2);--sidebar-foreground:var(--ink);--sidebar-primary:var(--accent-pink);--sidebar-primary-foreground:var(--bg);--sidebar-accent:var(--bg-3);--sidebar-accent-foreground:var(--ink);--sidebar-border:var(--line);--sidebar-ring:var(--accent-pink)}*{box-sizing:border-box}html,body,#root{background:var(--bg);color:var(--ink);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;padding:0;font-size:16px;line-height:1.6}body{background-color:var(--bg);position:relative}button{cursor:pointer;font-family:inherit}a{color:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-2)}::-webkit-scrollbar-thumb{background:var(--line-2)}::-webkit-scrollbar-thumb:hover{background:var(--accent-pink)}*{scrollbar-width:thin;scrollbar-color:var(--line-2) var(--bg-2)}input[type=checkbox]{accent-color:var(--accent-pink)}select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}select option{background-color:var(--bg-2);color:var(--ink)}input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}::selection{background:var(--accent-pink-bg);color:var(--accent-light)}:where(a,button,[role=button],input,textarea,select,summary,[tabindex]):focus-visible{outline:1px solid var(--accent-pink);outline-offset:2px}.btn:focus-visible,.tab:focus-visible{outline:1px solid var(--accent-pink);outline-offset:3px}.btn-press:focus-visible{outline:1px solid var(--accent-pink);outline-offset:4px}.app-shell{z-index:3;flex-direction:column;min-height:100vh;display:flex;position:relative}.app-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;background:#0a0a0ad9;align-items:center;gap:16px;padding:14px 32px;display:flex;position:sticky;top:0}.h-brand{min-width:0;color:var(--ink);flex:1;align-items:baseline;gap:10px;text-decoration:none;display:inline-flex}.h-brand-mark{color:var(--accent-pink);font-family:var(--font-mono);letter-spacing:-3px;font-size:18px;font-weight:700;line-height:1}.h-brand-name{font-family:var(--font-display);letter-spacing:.11em;text-transform:lowercase;color:var(--ink);font-size:18px}.h-brand-sep{color:var(--dim);font-size:12px}.h-brand-section{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-green);font-size:11px}.h-actions{flex:none;align-items:center;gap:8px;display:flex}.h-icon-btn{width:26px;height:26px;color:var(--ink-2);border:1px solid #0000;justify-content:center;align-items:center;transition:color .14s cubic-bezier(.22,1,.36,1),border-color .14s cubic-bezier(.22,1,.36,1),background-color .14s cubic-bezier(.22,1,.36,1);display:inline-flex}.h-icon-btn:hover{color:var(--ink);border-color:var(--line-2);background:#ffffff08}.h-icon-btn.is-active{color:var(--accent-pink);border-color:var(--accent-pink)}.h-icon-btn:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}@media (prefers-reduced-motion:reduce){.h-icon-btn{transition:none}}.h-meta{white-space:nowrap;flex:none;align-items:center;gap:6px;display:flex}.h-version{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);white-space:nowrap;font-size:10px}@media (max-width:900px){.app-header{gap:12px;padding:12px 16px}.h-meta{display:none}.app-header .tab{padding:12px 10px}}@media (max-width:620px){.app-header{flex-wrap:wrap;row-gap:8px}.h-actions{margin-left:auto}}.btn{font-family:var(--font-mono);letter-spacing:.04em;border:1px solid var(--line-2);color:var(--ink);white-space:nowrap;background:0 0;align-items:center;gap:8px;padding:7px 12px;font-size:13px;transition:color .14s cubic-bezier(.22,1,.36,1),background-color .14s cubic-bezier(.22,1,.36,1),border-color .14s cubic-bezier(.22,1,.36,1),box-shadow .14s cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.22,1,.36,1);display:inline-flex}.btn:hover{border-color:var(--ink);background:#ffffff08}.btn:active{transform:translateY(1px)}.btn[aria-disabled=true],.btn:disabled{opacity:.5;cursor:not-allowed}.btn[aria-disabled=true]:hover,.btn:disabled:hover{border-color:var(--line-2);background:0 0}.btn-primary{border-color:var(--accent-pink);color:var(--accent-pink)}.btn-primary:hover{background:var(--accent-pink);color:var(--bg)}.btn-press{box-shadow:4px 4px 0 0 var(--accent-pink-shadow);transition:box-shadow .14s cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.22,1,.36,1),background-color .14s cubic-bezier(.22,1,.36,1),color .14s cubic-bezier(.22,1,.36,1)}.btn-press:hover{box-shadow:2px 2px 0 0 var(--accent-pink-shadow);transform:translate(2px,2px)}.btn-press:active{box-shadow:0 0 0 0 var(--accent-pink-shadow);transform:translate(4px,4px)}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:0;padding:0 24px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-2);white-space:nowrap;background:0 0;border-bottom:1px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:12px 16px;font-size:13px;transition:color .16s cubic-bezier(.22,1,.36,1),border-color .16s cubic-bezier(.22,1,.36,1);display:inline-flex;position:relative}.tab:hover{color:var(--ink)}.tab:after{content:"";background:var(--accent-pink);transform-origin:50%;opacity:.4;height:1px;transition:transform .22s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-1px;left:16px;right:16px;transform:scaleX(0)}.tab:hover:after{transform:scaleX(1)}.tab.is-active{color:var(--accent-pink);border-bottom-color:var(--accent-pink)}.tab.is-active:after{display:none}.report{width:100%;max-width:clamp(720px,96vw,1840px);margin:0 auto;padding:0 clamp(20px,3vw,56px)}.section{border-bottom:1px solid var(--line);padding:64px 0;position:relative}.section:last-child{border-bottom:none}.section-mast{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:24px;display:flex}.section-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-green);align-items:baseline;gap:10px;font-size:12px;display:inline-flex}.section-label .glyph{color:inherit;letter-spacing:-2px}.section-label .sep{color:inherit}.section-meta{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-size:12px}.section-meta .g{color:var(--accent-green)}.section-meta .p{color:var(--accent-pink)}.section-h{font-family:var(--font-display);letter-spacing:.11em;color:var(--ink);text-transform:lowercase;text-wrap:balance;margin:0 0 18px;font-size:clamp(28px,4vw,44px);font-weight:400;line-height:1.05}.section-h-dot{background:var(--accent-green);vertical-align:middle;border-radius:50%;width:.5em;height:.5em;margin-left:.45em;animation:1.6s ease-in-out infinite section-h-dot-pulse;display:inline-block}@keyframes section-h-dot-pulse{0%,to{opacity:.35;box-shadow:0 0 3px var(--accent-green)}50%{opacity:1;box-shadow:0 0 14px var(--accent-green)}}.activity-table-wrap{border:1px solid var(--line-2);background:var(--bg-2);scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;border-top:0;overflow:auto hidden}.activity-table-wrap::-webkit-scrollbar{height:10px}.activity-table-wrap::-webkit-scrollbar-track{background:var(--bg-3)}.activity-table-wrap::-webkit-scrollbar-thumb{background:var(--line-2);border:2px solid var(--bg-3)}.activity-table-wrap::-webkit-scrollbar-thumb:hover{background:var(--accent-green)}.activity-table{width:100%;min-width:1280px}.activity-thead{background:var(--bg-3)}.activity-thead tr{border-bottom:1px solid var(--line-2)}.activity-th{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-green);text-align:left;white-space:nowrap;font-size:11px;font-weight:500}.activity-th.text-right{text-align:right}.activity-data-row>td{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-table tbody tr.activity-row-stripe{background:#ffffff03}.activity-detail{border-left:3px solid var(--accent-pink);background:var(--bg);padding:16px 22px 18px}.activity-detail-eyebrow{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-pink);align-items:baseline;gap:6px;margin-bottom:10px;font-size:10px;display:inline-flex}.stat-bar{border:1px solid var(--line-2);background:var(--bg-2);grid-template-columns:repeat(3,1fr);display:grid;position:relative}.stat-bar:before,.stat-bar:after{content:"";width:10px;height:10px;position:absolute}.stat-bar:before{border-top:1px solid var(--accent-pink);border-left:1px solid var(--accent-pink);top:-1px;left:-1px}.stat-bar:after{border-bottom:1px solid var(--accent-pink);border-right:1px solid var(--accent-pink);bottom:-1px;right:-1px}.stat-cell{border-right:1px dashed var(--line);flex-direction:column;gap:6px;min-width:0;padding:18px 24px;display:flex}.stat-cell:last-child{border-right:none}.stat-cell .eyebrow{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-green);font-size:10px}.stat-cell .eyebrow .glyph{color:var(--accent-pink);letter-spacing:-2px;margin-right:6px}.stat-cell .value{font-family:var(--font-mono);color:var(--ink);font-variant-numeric:tabular-nums;font-size:26px;font-weight:600;line-height:1}.stat-cell .value.is-deny{color:var(--accent-pink)}.stat-cell .value.is-warn{color:var(--amber)}.stat-cell .meta{font-family:var(--font-mono);color:var(--dim);letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}@media (max-width:800px){.stat-bar{grid-template-columns:1fr}.stat-cell{border-right:none;border-bottom:1px dashed var(--line)}.stat-cell:last-child{border-bottom:none}}.filter-bar{background:var(--bg-2);border:1px solid var(--line-2);border-top:0;flex-wrap:wrap;align-items:flex-end;gap:12px 16px;padding:14px 16px;display:flex}.filter-group{flex-direction:column;gap:4px;min-width:0;display:flex}.filter-group--grow{flex:220px}.filter-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-green);font-size:10px}.filter-input{width:100%;height:30px;font-family:var(--font-mono);color:var(--ink);background:var(--bg);border:1px solid var(--line-2);outline:none;padding:0 10px;font-size:12px;transition:border-color .14s cubic-bezier(.22,1,.36,1)}.filter-input::placeholder{color:var(--dim)}.filter-input:focus{border-color:var(--accent-pink)}.filter-clear{font-family:var(--font-mono);color:var(--accent-pink);border:1px dashed var(--accent-pink-soft);background:0 0;align-self:flex-end;padding:6px 10px;font-size:12px}.filter-clear:hover{background:var(--accent-pink-bg);border-color:var(--accent-pink)}.panel{border:1px solid var(--line-2);background:var(--bg-2);padding:28px;transition:border-color .2s cubic-bezier(.22,1,.36,1),box-shadow .2s cubic-bezier(.22,1,.36,1);position:relative}.panel:before,.panel:after{transition:width .2s cubic-bezier(.22,1,.36,1),height .2s cubic-bezier(.22,1,.36,1),border-color .2s cubic-bezier(.22,1,.36,1)}.panel:before{content:"";border-top:1px solid var(--accent-pink);border-left:1px solid var(--accent-pink);width:10px;height:10px;position:absolute;top:-1px;left:-1px}.panel:after{content:"";border-bottom:1px solid var(--accent-pink);border-right:1px solid var(--accent-pink);width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.panel.is-interactive{cursor:pointer}.panel.is-interactive:hover{border-color:var(--line)}.panel.is-interactive:hover:before,.panel.is-interactive:hover:after{width:16px;height:16px}.panel.is-interactive:focus-within{border-color:var(--accent-pink-soft)}@keyframes entry-highlight{0%{background-color:color-mix(in oklch, var(--primary), transparent 82%)}to{background-color:#0000}}.entry-highlighted{outline:1px solid var(--primary);animation:3s ease-out forwards entry-highlight}@supports (color:color-mix(in lab, red, red)){.entry-highlighted{outline:1px solid color-mix(in oklch, var(--primary), transparent 55%)}}.entry-highlighted{outline-offset:-1px}@keyframes expand-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.animate-expand{animation:.15s ease-out expand-in}@keyframes audit-row-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.audit-row-enter{opacity:0;animation:.4s ease-out forwards audit-row-in;animation-delay:var(--row-delay,0s)}@keyframes audit-bar-fill{0%{width:0}to{width:var(--bar-width,100%)}}.audit-bar-fill{width:var(--bar-width,100%);animation:1s cubic-bezier(.22,1,.36,1) audit-bar-fill;animation-delay:var(--bar-delay,0s)}@media (prefers-reduced-motion:reduce){.audit-row-enter,.audit-bar-fill{opacity:1;animation:none}.section-h-dot{animation:none}.tab:after,.panel,.panel:before,.panel:after,.btn,.btn-press{transition:none}}.sessions-list{font-family:var(--font-mono);flex-direction:column;gap:16px;display:flex}.sessions-filter-bar{border:1px solid var(--line-2);background:var(--bg-2);flex-direction:column;gap:12px;padding:16px 18px;display:flex}.sessions-filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sessions-filter-label{letter-spacing:.22em;text-transform:uppercase;color:var(--dim);align-items:center;gap:6px;margin-right:4px;font-size:10px;display:inline-flex}.sessions-filter-icon{width:12px;height:12px}.sessions-chip{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-2);border:1px solid var(--line-2);cursor:pointer;background:0 0;padding:5px 10px;font-size:11px;transition:border-color .14s,color .14s,background-color .14s}.sessions-chip:hover{border-color:var(--accent-pink);color:var(--accent-pink)}.sessions-chip.on{border-color:var(--accent-pink);color:var(--accent-pink);background:var(--accent-pink-bg)}.sessions-chip:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.sessions-input{min-width:220px;font-family:var(--font-mono);letter-spacing:.01em;color:var(--ink);background:var(--bg);border:1px solid var(--line-2);outline:none;flex:280px;padding:7px 10px;font-size:12px;transition:border-color .14s}.sessions-input:focus{border-color:var(--accent-pink)}.sessions-input::placeholder{color:var(--dim)}.sessions-range-sep{color:var(--dim);letter-spacing:.04em;font-size:11px}.sessions-results-count{font-family:var(--font-mono);color:var(--dim);letter-spacing:.02em;margin-top:4px;font-size:11px}.sessions-table-wrap{border:1px solid var(--line-2);background:var(--bg-2);overflow-x:auto}.sessions-table{border-collapse:collapse;width:100%}.sessions-th{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);text-align:left;border-bottom:1px solid var(--line);background:var(--bg);padding:10px 16px;font-size:10px;font-weight:500}.sessions-th-icon{width:36px}.sessions-row{border-bottom:1px solid var(--line);transition:background-color .14s}.sessions-row:last-child{border-bottom:none}.sessions-row:hover{background:#e4587c08}.sessions-td{font-family:var(--font-mono);color:var(--ink-2);vertical-align:middle;padding:12px 16px;font-size:12px}.sessions-td-icon{width:36px}.sessions-file-icon{width:14px;height:14px;color:var(--dim)}.sessions-td-name{flex-wrap:wrap;align-items:center;gap:10px;max-width:520px;display:flex}.sessions-link{color:var(--ink);letter-spacing:.01em;word-break:break-all;font-size:13px;text-decoration:none}.sessions-link:hover{color:var(--accent-pink)}.sessions-link[aria-disabled=true]{color:var(--ink-2);cursor:default}.sessions-td-date{color:var(--dim);white-space:nowrap;font-size:11px}.sessions-empty{text-align:center;color:var(--dim);padding:32px 16px;font-size:12px}.project-page-back{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-2);border:1px solid var(--line-2);background:0 0;align-items:center;gap:6px;padding:6px 12px;font-size:11px;text-decoration:none;transition:border-color .14s,color .14s;display:inline-flex}.project-page-back:hover{border-color:var(--accent-pink);color:var(--accent-pink)}.project-page-back .arrow{color:var(--dim);font-size:12px}.project-page-title{font-family:var(--font-mono);letter-spacing:-.01em;color:var(--ink);word-break:break-word;margin:16px 0 8px;font-size:22px;font-weight:600;line-height:1.3}.project-page-meta{font-family:var(--font-mono);color:var(--dim);letter-spacing:.02em;margin:0 0 32px;font-size:11px}.project-page-meta .label{color:var(--ink-2);margin-right:6px}.project-page-meta .sep{color:var(--line-2);margin:0 12px}.project-page-meta .path{color:var(--ink-2);word-break:break-all}.project-page-sessions-head{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent-green);margin-bottom:16px;font-size:10px}.project-page-empty{border:1px solid var(--line-2);background:var(--bg-2);text-align:center;font-family:var(--font-mono);color:var(--ink-2);padding:48px 32px;font-size:13px}.project-page-empty .hint{color:var(--dim);letter-spacing:.02em;margin-top:8px;font-size:11px}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-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}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
@@ -1 +0,0 @@
1
- .set-sec{max-width:940px}.set-console{background:var(--line);border:1px solid var(--line);box-shadow:6px 6px 0 0 var(--accent-pink-shadow);flex-direction:column;gap:1px;display:flex}.set-cell{background:var(--bg-2);padding:20px 22px}.set-stats{background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.set-stat{background:var(--bg-2);flex-direction:column;gap:7px;min-width:0;padding:16px 18px 15px;display:flex}.set-stat-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-size:9.5px;font-weight:500}.set-stat-value{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);text-transform:lowercase;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:26px;line-height:1}.set-stat-value.ok{color:var(--accent-green)}.set-stat-value.warn{color:var(--accent-pink)}.set-stat-sub{font-family:var(--font-mono);color:var(--ink-2);min-height:1.5em;font-size:10.5px;line-height:1.5}.set-cols{background:var(--line);grid-template-columns:1.28fr 1fr;gap:1px;display:grid}.set-config{flex-direction:column;gap:16px;display:flex}.set-cell-title{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);margin:0;font-size:10px;font-weight:600}.set-actions{margin-top:auto;padding-top:4px}.set-how{flex-direction:column;gap:16px;display:flex}.set-how-list{flex-direction:column;gap:14px;margin:0;display:flex}.set-how-row{grid-template-columns:58px 1fr;align-items:baseline;gap:12px;display:grid}.set-how-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-pink);font-size:9.5px;font-weight:500}.set-how-body{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:11.5px;line-height:1.65}.set-mast{margin-bottom:28px}.set-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--ink);text-transform:lowercase;margin:0 0 10px;font-size:40px;line-height:1}.set-lede{font-family:var(--font-mono);color:var(--ink-2);max-width:64ch;margin:0;font-size:13px;line-height:1.6}.set-row{font-family:var(--font-mono);color:var(--ink);align-items:center;gap:12px;font-size:13px;display:flex}.set-row-main{align-items:flex-start}.set-row-copy{flex-direction:column;gap:3px;line-height:1.5;display:flex}.set-row-interval{flex-wrap:wrap;gap:10px}.set-row-identity{flex-wrap:wrap;gap:8px;font-size:12px}.set-strong{color:var(--ink)}.set-dim{color:var(--ink-2)}.set-hint{color:var(--dim);font-size:11px}.set-email{color:var(--accent-green)}.set-num{font-family:var(--font-mono);background:var(--bg);border:1px solid var(--line-2);width:62px;color:var(--ink);border-radius:0;padding:6px 10px;font-size:13px}.set-num:focus-visible{outline:2px solid var(--accent-pink);outline-offset:1px}.set-link{font-family:var(--font-mono);color:var(--dim);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.set-link:hover:not(:disabled){color:var(--ink)}.set-link:disabled{opacity:.5;cursor:not-allowed}.set-link:focus-visible{outline:2px solid var(--accent-pink);outline-offset:2px}.set-warn{font-family:var(--font-mono);color:var(--accent-pink);margin:0;font-size:12px;line-height:1.6}.set-warn-inline{color:var(--accent-pink)}.set-rule{background:var(--line);height:1px;margin:2px 0}.sw{background:var(--line-2);cursor:pointer;border:none;border-radius:10px;flex:none;width:38px;height:20px;padding:0;transition:background-color .14s cubic-bezier(.22,1,.36,1);position:relative}.sw[data-on=true]{background:var(--accent-pink)}.sw:disabled{opacity:.5;cursor:not-allowed}.sw:focus-visible{outline:2px solid var(--accent-pink);outline-offset:3px}.sw-knob{background:var(--bg);border-radius:50%;width:14px;height:14px;transition:transform .14s cubic-bezier(.22,1,.36,1);position:absolute;top:3px;left:3px}.sw[data-on=true] .sw-knob{transform:translate(18px)}.tape{flex-direction:column;gap:8px;margin-top:26px;display:flex}.tape-rail{background:var(--line-2);height:3px;position:relative}.tape-fill{background:var(--accent-green);opacity:.55;position:absolute;inset:0 auto 0 0}.tape-now{background:var(--accent-pink);width:2px;height:11px;position:absolute;top:-4px;transform:translate(-1px)}.tape-ends{font-family:var(--font-mono);letter-spacing:.04em;color:var(--dim);justify-content:space-between;gap:12px;font-size:10.5px;display:flex}.tape-next{color:var(--ink-2)}@media (max-width:860px){.set-stats{grid-template-columns:repeat(2,1fr)}.set-cols{grid-template-columns:1fr}}@media (max-width:640px){.set-title{font-size:32px}.set-console{box-shadow:4px 4px 0 0 var(--accent-pink-shadow)}.set-stat-value{font-size:22px}.set-cell{padding:18px}}@media (max-width:420px){.set-stats{grid-template-columns:1fr}.set-how-row{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion:reduce){.sw,.sw-knob{transition:none}}
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,47163,e=>{"use strict";var r;let o,t,l,s,a,n=(e=new Map,r=null,o)=>({nextPart:e,validators:r,classGroupId:o}),i=[],c=(e,r,o)=>{if(0==e.length-r)return o.classGroupId;let t=e[r],l=o.nextPart.get(t);if(l){let o=c(e,r+1,l);if(o)return o}let s=o.validators;if(null===s)return;let a=0===r?e.join("-"):e.slice(r).join("-"),n=s.length;for(let e=0;e<n;e++){let r=s[e];if(r.validator(a))return r.classGroupId}},d=(e,r)=>{let o=n();for(let t in e)m(e[t],o,t,r);return o},m=(e,r,o,t)=>{let l=e.length;for(let s=0;s<l;s++)p(e[s],r,o,t)},p=(e,r,o,t)=>{"string"==typeof e?b(e,r,o):"function"==typeof e?u(e,r,o,t):f(e,r,o,t)},b=(e,r,o)=>{(""===e?r:g(r,e)).classGroupId=o},u=(e,r,o,t)=>{h(e)?m(e(t),r,o,t):(null===r.validators&&(r.validators=[]),r.validators.push({classGroupId:o,validator:e}))},f=(e,r,o,t)=>{let l=Object.entries(e),s=l.length;for(let e=0;e<s;e++){let[s,a]=l[e];m(a,g(r,s),o,t)}},g=(e,r)=>{let o=e,t=r.split("-"),l=t.length;for(let e=0;e<l;e++){let r=t[e],l=o.nextPart.get(r);l||(l=n(),o.nextPart.set(r,l)),o=l}return o},h=e=>"isThemeGetter"in e&&!0===e.isThemeGetter,k=[],x=(e,r,o,t,l)=>({modifiers:e,hasImportantModifier:r,baseClassName:o,maybePostfixModifierPosition:t,isExternal:l}),w=/\s+/,v=e=>{let r;if("string"==typeof e)return e;let o="";for(let t=0;t<e.length;t++)e[t]&&(r=v(e[t]))&&(o&&(o+=" "),o+=r);return o},y=[],z=e=>{let r=r=>r[e]||y;return r.isThemeGetter=!0,r},j=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,G=/^\((?:(\w[\w-]*):)?(.+)\)$/i,C=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,O=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,W=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,I=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,N=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,T=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,$=e=>C.test(e),M=e=>!!e&&!Number.isNaN(Number(e)),A=e=>!!e&&Number.isInteger(Number(e)),P=e=>e.endsWith("%")&&M(e.slice(0,-1)),S=e=>O.test(e),L=()=>!0,q=e=>W.test(e)&&!I.test(e),B=()=>!1,K=e=>N.test(e),R=e=>T.test(e),U=e=>!D(e)&&!Z(e),_=e=>e.startsWith("@container")&&("/"===e[10]&&void 0!==e[11]||"s"===e[11]&&void 0!==e[16]&&e.startsWith("-size/",10)||"n"===e[11]&&void 0!==e[18]&&e.startsWith("-normal/",10)),E=e=>en(e,em,B),D=e=>j.test(e),F=e=>en(e,ep,q),H=e=>en(e,eb,M),J=e=>en(e,ef,L),Q=e=>en(e,eu,B),V=e=>en(e,ec,B),X=e=>en(e,ed,R),Y=e=>en(e,eg,K),Z=e=>G.test(e),ee=e=>ei(e,ep),er=e=>ei(e,eu),eo=e=>ei(e,ec),et=e=>ei(e,em),el=e=>ei(e,ed),es=e=>ei(e,eg,!0),ea=e=>ei(e,ef,!0),en=(e,r,o)=>{let t=j.exec(e);return!!t&&(t[1]?r(t[1]):o(t[2]))},ei=(e,r,o=!1)=>{let t=G.exec(e);return!!t&&(t[1]?r(t[1]):o)},ec=e=>"position"===e||"percentage"===e,ed=e=>"image"===e||"url"===e,em=e=>"length"===e||"size"===e||"bg-size"===e,ep=e=>"length"===e,eb=e=>"number"===e,eu=e=>"family-name"===e,ef=e=>"number"===e||"weight"===e,eg=e=>"shadow"===e,eh=(r=()=>{let e=z("color"),r=z("font"),o=z("text"),t=z("font-weight"),l=z("tracking"),s=z("leading"),a=z("breakpoint"),n=z("container"),i=z("spacing"),c=z("radius"),d=z("shadow"),m=z("inset-shadow"),p=z("text-shadow"),b=z("drop-shadow"),u=z("blur"),f=z("perspective"),g=z("aspect"),h=z("ease"),k=z("animate"),x=()=>["auto","avoid","all","avoid-page","page","left","right","column"],w=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],v=()=>[...w(),Z,D],y=()=>["auto","hidden","clip","visible","scroll"],j=()=>["auto","contain","none"],G=()=>[Z,D,i],C=()=>[$,"full","auto",...G()],O=()=>[A,"none","subgrid",Z,D],W=()=>["auto",{span:["full",A,Z,D]},A,Z,D],I=()=>[A,"auto",Z,D],N=()=>["auto","min","max","fr",Z,D],T=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],q=()=>["start","end","center","stretch","center-safe","end-safe"],B=()=>["auto",...G()],K=()=>[$,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...G()],R=()=>[$,"screen","full","dvw","lvw","svw","min","max","fit",...G()],en=()=>[$,"screen","full","lh","dvh","lvh","svh","min","max","fit",...G()],ei=()=>[e,Z,D],ec=()=>[...w(),eo,V,{position:[Z,D]}],ed=()=>["no-repeat",{repeat:["","x","y","space","round"]}],em=()=>["auto","cover","contain",et,E,{size:[Z,D]}],ep=()=>[P,ee,F],eb=()=>["","none","full",c,Z,D],eu=()=>["",M,ee,F],ef=()=>["solid","dashed","dotted","double"],eg=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],eh=()=>[M,P,eo,V],ek=()=>["","none",u,Z,D],ex=()=>["none",M,Z,D],ew=()=>["none",M,Z,D],ev=()=>[M,Z,D],ey=()=>[$,"full",...G()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[S],breakpoint:[S],color:[L],container:[S],"drop-shadow":[S],ease:["in","out","in-out"],font:[U],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[S],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[S],shadow:[S],spacing:["px",M],text:[S],"text-shadow":[S],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",$,D,Z,g]}],container:["container"],"container-type":[{"@container":["","normal","size",Z,D]}],"container-named":[_],columns:[{columns:[M,D,Z,n]}],"break-after":[{"break-after":x()}],"break-before":[{"break-before":x()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:v()}],overflow:[{overflow:y()}],"overflow-x":[{"overflow-x":y()}],"overflow-y":[{"overflow-y":y()}],overscroll:[{overscroll:j()}],"overscroll-x":[{"overscroll-x":j()}],"overscroll-y":[{"overscroll-y":j()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:C()}],"inset-x":[{"inset-x":C()}],"inset-y":[{"inset-y":C()}],start:[{"inset-s":C(),start:C()}],end:[{"inset-e":C(),end:C()}],"inset-bs":[{"inset-bs":C()}],"inset-be":[{"inset-be":C()}],top:[{top:C()}],right:[{right:C()}],bottom:[{bottom:C()}],left:[{left:C()}],visibility:["visible","invisible","collapse"],z:[{z:[A,"auto",Z,D]}],basis:[{basis:[$,"full","auto",n,...G()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[M,$,"auto","initial","none",D]}],grow:[{grow:["",M,Z,D]}],shrink:[{shrink:["",M,Z,D]}],order:[{order:[A,"first","last","none",Z,D]}],"grid-cols":[{"grid-cols":O()}],"col-start-end":[{col:W()}],"col-start":[{"col-start":I()}],"col-end":[{"col-end":I()}],"grid-rows":[{"grid-rows":O()}],"row-start-end":[{row:W()}],"row-start":[{"row-start":I()}],"row-end":[{"row-end":I()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":N()}],"auto-rows":[{"auto-rows":N()}],gap:[{gap:G()}],"gap-x":[{"gap-x":G()}],"gap-y":[{"gap-y":G()}],"justify-content":[{justify:[...T(),"normal"]}],"justify-items":[{"justify-items":[...q(),"normal"]}],"justify-self":[{"justify-self":["auto",...q()]}],"align-content":[{content:["normal",...T()]}],"align-items":[{items:[...q(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...q(),{baseline:["","last"]}]}],"place-content":[{"place-content":T()}],"place-items":[{"place-items":[...q(),"baseline"]}],"place-self":[{"place-self":["auto",...q()]}],p:[{p:G()}],px:[{px:G()}],py:[{py:G()}],ps:[{ps:G()}],pe:[{pe:G()}],pbs:[{pbs:G()}],pbe:[{pbe:G()}],pt:[{pt:G()}],pr:[{pr:G()}],pb:[{pb:G()}],pl:[{pl:G()}],m:[{m:B()}],mx:[{mx:B()}],my:[{my:B()}],ms:[{ms:B()}],me:[{me:B()}],mbs:[{mbs:B()}],mbe:[{mbe:B()}],mt:[{mt:B()}],mr:[{mr:B()}],mb:[{mb:B()}],ml:[{ml:B()}],"space-x":[{"space-x":G()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":G()}],"space-y-reverse":["space-y-reverse"],size:[{size:K()}],"inline-size":[{inline:["auto",...R()]}],"min-inline-size":[{"min-inline":["auto",...R()]}],"max-inline-size":[{"max-inline":["none",...R()]}],"block-size":[{block:["auto",...en()]}],"min-block-size":[{"min-block":["auto",...en()]}],"max-block-size":[{"max-block":["none",...en()]}],w:[{w:[n,"screen",...K()]}],"min-w":[{"min-w":[n,"screen","none",...K()]}],"max-w":[{"max-w":[n,"screen","none","prose",{screen:[a]},...K()]}],h:[{h:["screen","lh",...K()]}],"min-h":[{"min-h":["screen","lh","none",...K()]}],"max-h":[{"max-h":["screen","lh",...K()]}],"font-size":[{text:["base",o,ee,F]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[t,ea,J]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",P,D]}],"font-family":[{font:[er,Q,r]}],"font-features":[{"font-features":[D]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[l,Z,D]}],"line-clamp":[{"line-clamp":[M,"none",Z,H]}],leading:[{leading:[s,...G()]}],"list-image":[{"list-image":["none",Z,D]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",Z,D]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:ei()}],"text-color":[{text:ei()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...ef(),"wavy"]}],"text-decoration-thickness":[{decoration:[M,"from-font","auto",Z,F]}],"text-decoration-color":[{decoration:ei()}],"underline-offset":[{"underline-offset":[M,"auto",Z,D]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:G()}],"tab-size":[{tab:[A,Z,D]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Z,D]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",Z,D]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:ec()}],"bg-repeat":[{bg:ed()}],"bg-size":[{bg:em()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},A,Z,D],radial:["",Z,D],conic:[A,Z,D]},el,X]}],"bg-color":[{bg:ei()}],"gradient-from-pos":[{from:ep()}],"gradient-via-pos":[{via:ep()}],"gradient-to-pos":[{to:ep()}],"gradient-from":[{from:ei()}],"gradient-via":[{via:ei()}],"gradient-to":[{to:ei()}],rounded:[{rounded:eb()}],"rounded-s":[{"rounded-s":eb()}],"rounded-e":[{"rounded-e":eb()}],"rounded-t":[{"rounded-t":eb()}],"rounded-r":[{"rounded-r":eb()}],"rounded-b":[{"rounded-b":eb()}],"rounded-l":[{"rounded-l":eb()}],"rounded-ss":[{"rounded-ss":eb()}],"rounded-se":[{"rounded-se":eb()}],"rounded-ee":[{"rounded-ee":eb()}],"rounded-es":[{"rounded-es":eb()}],"rounded-tl":[{"rounded-tl":eb()}],"rounded-tr":[{"rounded-tr":eb()}],"rounded-br":[{"rounded-br":eb()}],"rounded-bl":[{"rounded-bl":eb()}],"border-w":[{border:eu()}],"border-w-x":[{"border-x":eu()}],"border-w-y":[{"border-y":eu()}],"border-w-s":[{"border-s":eu()}],"border-w-e":[{"border-e":eu()}],"border-w-bs":[{"border-bs":eu()}],"border-w-be":[{"border-be":eu()}],"border-w-t":[{"border-t":eu()}],"border-w-r":[{"border-r":eu()}],"border-w-b":[{"border-b":eu()}],"border-w-l":[{"border-l":eu()}],"divide-x":[{"divide-x":eu()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":eu()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...ef(),"hidden","none"]}],"divide-style":[{divide:[...ef(),"hidden","none"]}],"border-color":[{border:ei()}],"border-color-x":[{"border-x":ei()}],"border-color-y":[{"border-y":ei()}],"border-color-s":[{"border-s":ei()}],"border-color-e":[{"border-e":ei()}],"border-color-bs":[{"border-bs":ei()}],"border-color-be":[{"border-be":ei()}],"border-color-t":[{"border-t":ei()}],"border-color-r":[{"border-r":ei()}],"border-color-b":[{"border-b":ei()}],"border-color-l":[{"border-l":ei()}],"divide-color":[{divide:ei()}],"outline-style":[{outline:[...ef(),"none","hidden"]}],"outline-offset":[{"outline-offset":[M,Z,D]}],"outline-w":[{outline:["",M,ee,F]}],"outline-color":[{outline:ei()}],shadow:[{shadow:["","none",d,es,Y]}],"shadow-color":[{shadow:ei()}],"inset-shadow":[{"inset-shadow":["none",m,es,Y]}],"inset-shadow-color":[{"inset-shadow":ei()}],"ring-w":[{ring:eu()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:ei()}],"ring-offset-w":[{"ring-offset":[M,F]}],"ring-offset-color":[{"ring-offset":ei()}],"inset-ring-w":[{"inset-ring":eu()}],"inset-ring-color":[{"inset-ring":ei()}],"text-shadow":[{"text-shadow":["none",p,es,Y]}],"text-shadow-color":[{"text-shadow":ei()}],opacity:[{opacity:[M,Z,D]}],"mix-blend":[{"mix-blend":[...eg(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":eg()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[M]}],"mask-image-linear-from-pos":[{"mask-linear-from":eh()}],"mask-image-linear-to-pos":[{"mask-linear-to":eh()}],"mask-image-linear-from-color":[{"mask-linear-from":ei()}],"mask-image-linear-to-color":[{"mask-linear-to":ei()}],"mask-image-t-from-pos":[{"mask-t-from":eh()}],"mask-image-t-to-pos":[{"mask-t-to":eh()}],"mask-image-t-from-color":[{"mask-t-from":ei()}],"mask-image-t-to-color":[{"mask-t-to":ei()}],"mask-image-r-from-pos":[{"mask-r-from":eh()}],"mask-image-r-to-pos":[{"mask-r-to":eh()}],"mask-image-r-from-color":[{"mask-r-from":ei()}],"mask-image-r-to-color":[{"mask-r-to":ei()}],"mask-image-b-from-pos":[{"mask-b-from":eh()}],"mask-image-b-to-pos":[{"mask-b-to":eh()}],"mask-image-b-from-color":[{"mask-b-from":ei()}],"mask-image-b-to-color":[{"mask-b-to":ei()}],"mask-image-l-from-pos":[{"mask-l-from":eh()}],"mask-image-l-to-pos":[{"mask-l-to":eh()}],"mask-image-l-from-color":[{"mask-l-from":ei()}],"mask-image-l-to-color":[{"mask-l-to":ei()}],"mask-image-x-from-pos":[{"mask-x-from":eh()}],"mask-image-x-to-pos":[{"mask-x-to":eh()}],"mask-image-x-from-color":[{"mask-x-from":ei()}],"mask-image-x-to-color":[{"mask-x-to":ei()}],"mask-image-y-from-pos":[{"mask-y-from":eh()}],"mask-image-y-to-pos":[{"mask-y-to":eh()}],"mask-image-y-from-color":[{"mask-y-from":ei()}],"mask-image-y-to-color":[{"mask-y-to":ei()}],"mask-image-radial":[{"mask-radial":[Z,D]}],"mask-image-radial-from-pos":[{"mask-radial-from":eh()}],"mask-image-radial-to-pos":[{"mask-radial-to":eh()}],"mask-image-radial-from-color":[{"mask-radial-from":ei()}],"mask-image-radial-to-color":[{"mask-radial-to":ei()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":w()}],"mask-image-conic-pos":[{"mask-conic":[M]}],"mask-image-conic-from-pos":[{"mask-conic-from":eh()}],"mask-image-conic-to-pos":[{"mask-conic-to":eh()}],"mask-image-conic-from-color":[{"mask-conic-from":ei()}],"mask-image-conic-to-color":[{"mask-conic-to":ei()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:ec()}],"mask-repeat":[{mask:ed()}],"mask-size":[{mask:em()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",Z,D]}],filter:[{filter:["","none",Z,D]}],blur:[{blur:ek()}],brightness:[{brightness:[M,Z,D]}],contrast:[{contrast:[M,Z,D]}],"drop-shadow":[{"drop-shadow":["","none",b,es,Y]}],"drop-shadow-color":[{"drop-shadow":ei()}],grayscale:[{grayscale:["",M,Z,D]}],"hue-rotate":[{"hue-rotate":[M,Z,D]}],invert:[{invert:["",M,Z,D]}],saturate:[{saturate:[M,Z,D]}],sepia:[{sepia:["",M,Z,D]}],"backdrop-filter":[{"backdrop-filter":["","none",Z,D]}],"backdrop-blur":[{"backdrop-blur":ek()}],"backdrop-brightness":[{"backdrop-brightness":[M,Z,D]}],"backdrop-contrast":[{"backdrop-contrast":[M,Z,D]}],"backdrop-grayscale":[{"backdrop-grayscale":["",M,Z,D]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[M,Z,D]}],"backdrop-invert":[{"backdrop-invert":["",M,Z,D]}],"backdrop-opacity":[{"backdrop-opacity":[M,Z,D]}],"backdrop-saturate":[{"backdrop-saturate":[M,Z,D]}],"backdrop-sepia":[{"backdrop-sepia":["",M,Z,D]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":G()}],"border-spacing-x":[{"border-spacing-x":G()}],"border-spacing-y":[{"border-spacing-y":G()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",Z,D]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[M,"initial",Z,D]}],ease:[{ease:["linear","initial",h,Z,D]}],delay:[{delay:[M,Z,D]}],animate:[{animate:["none",k,Z,D]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[f,Z,D]}],"perspective-origin":[{"perspective-origin":v()}],rotate:[{rotate:ex()}],"rotate-x":[{"rotate-x":ex()}],"rotate-y":[{"rotate-y":ex()}],"rotate-z":[{"rotate-z":ex()}],scale:[{scale:ew()}],"scale-x":[{"scale-x":ew()}],"scale-y":[{"scale-y":ew()}],"scale-z":[{"scale-z":ew()}],"scale-3d":["scale-3d"],skew:[{skew:ev()}],"skew-x":[{"skew-x":ev()}],"skew-y":[{"skew-y":ev()}],transform:[{transform:[Z,D,"","none","gpu","cpu"]}],"transform-origin":[{origin:v()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ey()}],"translate-x":[{"translate-x":ey()}],"translate-y":[{"translate-y":ey()}],"translate-z":[{"translate-z":ey()}],"translate-none":["translate-none"],zoom:[{zoom:[A,Z,D]}],accent:[{accent:ei()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:ei()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",Z,D]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":ei()}],"scrollbar-track-color":[{"scrollbar-track":ei()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":G()}],"scroll-mx":[{"scroll-mx":G()}],"scroll-my":[{"scroll-my":G()}],"scroll-ms":[{"scroll-ms":G()}],"scroll-me":[{"scroll-me":G()}],"scroll-mbs":[{"scroll-mbs":G()}],"scroll-mbe":[{"scroll-mbe":G()}],"scroll-mt":[{"scroll-mt":G()}],"scroll-mr":[{"scroll-mr":G()}],"scroll-mb":[{"scroll-mb":G()}],"scroll-ml":[{"scroll-ml":G()}],"scroll-p":[{"scroll-p":G()}],"scroll-px":[{"scroll-px":G()}],"scroll-py":[{"scroll-py":G()}],"scroll-ps":[{"scroll-ps":G()}],"scroll-pe":[{"scroll-pe":G()}],"scroll-pbs":[{"scroll-pbs":G()}],"scroll-pbe":[{"scroll-pbe":G()}],"scroll-pt":[{"scroll-pt":G()}],"scroll-pr":[{"scroll-pr":G()}],"scroll-pb":[{"scroll-pb":G()}],"scroll-pl":[{"scroll-pl":G()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",Z,D]}],fill:[{fill:["none",...ei()]}],"stroke-w":[{stroke:[M,ee,F,H]}],stroke:[{stroke:["none",...ei()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},a=e=>{let r=t(e);if(r)return r;let s=((e,r)=>{let{parseClassName:o,getClassGroupId:t,getConflictingClassGroupIds:l,sortModifiers:s,postfixLookupClassGroupIds:a}=r,n=[],i=e.trim().split(w),c="";for(let e=i.length-1;e>=0;e-=1){let r,d=i[e],{isExternal:m,modifiers:p,hasImportantModifier:b,baseClassName:u,maybePostfixModifierPosition:f}=o(d);if(m){c=d+(c.length>0?" "+c:c);continue}let g=!!f;if(g){let e=(r=t(u.substring(0,f)))&&a[r]?t(u):void 0;e&&e!==r&&(r=e,g=!1)}else r=t(u);if(!r){if(!g||!(r=t(u))){c=d+(c.length>0?" "+c:c);continue}g=!1}let h=0===p.length?"":1===p.length?p[0]:s(p).join(":"),k=b?h+"!":h,x=k+r;if(n.indexOf(x)>-1)continue;n.push(x);let w=l(r,g);for(let e=0;e<w.length;++e){let r=w[e];n.push(k+r)}c=d+(c.length>0?" "+c:c)}return c})(e,o);return l(e,s),s},s=e=>{var n;let m;return t=(o={cache:(e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let r=0,o=Object.create(null),t=Object.create(null),l=(l,s)=>{o[l]=s,++r>e&&(r=0,t=o,o=Object.create(null))};return{get(e){let r=o[e];return void 0!==r?r:void 0!==(r=t[e])?(l(e,r),r):void 0},set(e,r){e in o?o[e]=r:l(e,r)}}})((n=[].reduce((e,r)=>r(e),r())).cacheSize),parseClassName:(e=>{let{prefix:r,experimentalParseClassName:o}=e,t=e=>{let r,o=[],t=0,l=0,s=0,a=e.length;for(let n=0;n<a;n++){let a=e[n];if(0===t&&0===l){if(":"===a){o.push(e.slice(s,n)),s=n+1;continue}if("/"===a){r=n;continue}}"["===a?t++:"]"===a?t--:"("===a?l++:")"===a&&l--}let n=0===o.length?e:e.slice(s),i=n,c=!1;return n.endsWith("!")?(i=n.slice(0,-1),c=!0):n.startsWith("!")&&(i=n.slice(1),c=!0),x(o,c,i,r&&r>s?r-s:void 0)};if(r){let e=r+":",o=t;t=r=>r.startsWith(e)?o(r.slice(e.length)):x(k,!1,r,void 0,!0)}if(o){let e=t;t=r=>o({className:r,parseClassName:e})}return t})(n),sortModifiers:(m=new Map,n.orderSensitiveModifiers.forEach((e,r)=>{m.set(e,1e6+r)}),e=>{let r=[],o=[];for(let t=0;t<e.length;t++){let l=e[t],s="["===l[0],a=m.has(l);s||a?(o.length>0&&(o.sort(),r.push(...o),o=[]),r.push(l)):o.push(l)}return o.length>0&&(o.sort(),r.push(...o)),r}),postfixLookupClassGroupIds:(e=>{let r=Object.create(null),o=e.postfixLookupClassGroups;if(o)for(let e=0;e<o.length;e++)r[o[e]]=!0;return r})(n),...(e=>{let r=(e=>{let{theme:r,classGroups:o}=e;return d(o,r)})(e),{conflictingClassGroups:o,conflictingClassGroupModifiers:t}=e;return{getClassGroupId:e=>{if(e.startsWith("[")&&e.endsWith("]")){var o;let r,t,l;return -1===(o=e).slice(1,-1).indexOf(":")?void 0:(t=(r=o.slice(1,-1)).indexOf(":"),(l=r.slice(0,t))?"arbitrary.."+l:void 0)}let t=e.split("-"),l=+(""===t[0]&&t.length>1);return c(t,l,r)},getConflictingClassGroupIds:(e,r)=>{if(r){let r=t[e],l=o[e];if(r){if(l){let e=Array(l.length+r.length);for(let r=0;r<l.length;r++)e[r]=l[r];for(let o=0;o<r.length;o++)e[l.length+o]=r[o];return e}return r}return l||i}return o[e]||i}}})(n)}).cache.get,l=o.cache.set,s=a,a(e)},(...e)=>s(((...e)=>{let r,o,t=0,l="";for(;t<e.length;)(r=e[t++])&&(o=v(r))&&(l&&(l+=" "),l+=o);return l})(...e)));e.s(["cn",0,function(...e){return eh(function(){for(var e,r,o=0,t="",l=arguments.length;o<l;o++)(e=arguments[o])&&(r=function e(r){var o,t,l="";if("string"==typeof r||"number"==typeof r)l+=r;else if("object"==typeof r)if(Array.isArray(r)){var s=r.length;for(o=0;o<s;o++)r[o]&&(t=e(r[o]))&&(l&&(l+=" "),l+=t)}else for(t in r)r[t]&&(l&&(l+=" "),l+=t);return l}(e))&&(t&&(t+=" "),t+=r);return t}(e))}],47163)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,6870,e=>{"use strict";var t=e.i(95187);let a=(0,t.createServerReference)("607d04cf3dfa7aa40bb77f7c023c14a6ef615e1ad5",t.callServer,void 0,t.findSourceMapURL,"searchHookActivityAction");e.s(["searchHookActivityAction",0,a])},73520,e=>{"use strict";var t=e.i(43476),a=e.i(24071),r=e.i(67927);e.s(["default",0,function({currentPage:e,totalPages:s,onPageChange:i}){if(s<=1)return null;let l=e=>`px-3 py-2 text-sm rounded-md transition-colors flex items-center gap-1 bg-muted text-muted-foreground ${e?"opacity-50 cursor-not-allowed":"hover:bg-muted/80"}`;return(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4",children:[(0,t.jsxs)("button",{onClick:()=>i(e-1),disabled:1===e,className:l(1===e),"aria-label":"Previous page",children:[(0,t.jsx)(a.ChevronLeft,{className:"w-4 h-4"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"Previous"})]}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:(()=>{if(s<=7)return Array.from({length:s},(e,t)=>t+1);let t=[1],a=Math.max(2,e-1),r=Math.min(s-1,e+1);e<=3&&(r=Math.min(5,s-1)),e>=s-2&&(a=Math.max(2,s-4)),a>2&&t.push("ellipsis-start");for(let e=a;e<=r;e++)t.push(e);return r<s-1&&t.push("ellipsis-end"),t.push(s),t})().map(a=>"string"==typeof a?(0,t.jsx)("span",{className:"px-2 text-muted-foreground",children:"..."},a):(0,t.jsx)("button",{onClick:()=>i(a),className:`min-w-[2.5rem] px-3 py-2 text-sm rounded-md transition-colors ${e===a?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,"aria-label":`Page ${a}`,"aria-current":e===a?"page":void 0,children:a},a))}),(0,t.jsxs)("button",{onClick:()=>i(e+1),disabled:e===s,className:l(e===s),"aria-label":"Next page",children:[(0,t.jsx)("span",{className:"hidden sm:inline",children:"Next"}),(0,t.jsx)(r.ChevronRight,{className:"w-4 h-4"})]})]})}])},34713,e=>{"use strict";e.s(["formatDuration",0,function(e){if(e<1e3)return`${e}ms`;let t=Math.round(e/100);if(t<600)return`${(t/10).toFixed(1)}s`;let a=Math.round(e/1e3);if(a<3600){let e=Math.floor(a/60);return`${e}m ${a%60}s`}let r=Math.round(e/6e4),s=Math.floor(r/60);return`${s}h ${r%60}m`},"formatRelativeTime",0,function(e){let t=Date.now()-e;return t<6e4?`${Math.max(1,Math.floor(t/1e3))}s ago`:t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}])},24071,e=>{"use strict";var t=e.i(56420);let a={name:"chevron-left",size:24,node:[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]};a.node;let r=(0,t.default)(a);e.s(["ChevronLeft",0,r],24071)},67927,e=>{"use strict";var t=e.i(56420);let a={name:"chevron-right",size:24,node:[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]};a.node;let r=(0,t.default)(a);e.s(["ChevronRight",0,r],67927)},16306,e=>{"use strict";var t=e.i(56420);let a={name:"shield-alert",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]};a.node;let r=(0,t.default)(a);e.s(["ShieldAlert",0,r],16306)},84026,29407,e=>{"use strict";var t=e.i(56420);let a={name:"shield-check",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]};a.node;let r=(0,t.default)(a);e.s(["ShieldCheck",0,r],84026);let s={name:"shield-x",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m14.5 9.5-5 5",key:"17q4r4"}],["path",{d:"m9.5 9.5 5 5",key:"18nt4w"}]],aliases:["shield-close"]};s.node;let i=(0,t.default)(s);e.s(["ShieldX",0,i],29407)},82954,e=>{"use strict";var t=e.i(56420);let a={name:"shield",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]};a.node;let r=(0,t.default)(a);e.s(["Shield",0,r],82954)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,64237,e=>{"use strict";var t=e.i(43476),a=e.i(71645),s=e.i(12344),n=e.i(29054);let i=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function r(e){if((0,n.isAbortError)(e))return"request timed out. check your network and try again.";let t=e instanceof Error?e.message:String(e);return`network error: ${t}`}e.s(["AuthDialog",0,function({open:e,headline:l="where to route the reminder?",subhead:o="we'll send a one-time code to confirm.",onClose:c,onAuthed:d,source:u="unknown"}){let{capture:h}=(0,s.usePostHog)(),[m,f]=(0,a.useState)({kind:"email",error:null}),[b,p]=(0,a.useState)(!1),v=(0,a.useRef)(!1),x=(0,a.useRef)(null),g=(0,a.useRef)(null);(0,a.useEffect)(()=>{e&&(f({kind:"email",error:null}),p(!1),v.current=!1,h("audit_auth_dialog_opened",{source:u}))},[h,e,u]);let y=(0,a.useRef)(!1);(0,a.useEffect)(()=>{if(e){y.current=!0;return}y.current&&!v.current&&h("audit_auth_dialog_dismissed",{source:u,step:m.kind}),y.current=!1},[h,e,u,m.kind]),(0,a.useEffect)(()=>{if(!e)return;let t=setTimeout(()=>{"email"===m.kind?x.current?.focus():"code"===m.kind&&g.current?.focus()},50);return()=>clearTimeout(t)},[e,m.kind]),(0,a.useEffect)(()=>{if(!e)return;let t=e=>{"Escape"!==e.key||b||c()};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e,b,c]);let w="code"===m.kind&&m.resendIn>0;(0,a.useEffect)(()=>{if(!w)return;let e=setInterval(()=>{f(e=>"code"===e.kind?{...e,resendIn:Math.max(0,e.resendIn-1)}:e)},1e3);return()=>clearInterval(e)},[w]);let j=(0,a.useCallback)(async(e,t={})=>{let{isResend:a=!1}=t,s=e=>{a?f(t=>"code"===t.kind?{...t,error:e}:t):f({kind:"email",error:e})};p(!0);try{let t=await (0,n.fetchWithTimeout)("/api/auth/login-request",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({email:e})}),a=await t.json().catch(()=>({}));if(!t.ok){let e=a.message??"could not send code.";"rate_limited"===a.code&&void 0!==a.retry_after_secs?e=`too many tries. wait ${a.retry_after_secs}s and try again.`:"upstream_unreachable"===a.code&&(e="api-server unreachable. check your network."),s(e);return}f({kind:"code",email:e,error:null,expiresIn:a.expires_in??600,resendIn:a.resend_available_in??30})}catch(e){s(r(e))}finally{p(!1)}},[]),k=(0,a.useCallback)(async(e,t)=>{p(!0);try{let a=await (0,n.fetchWithTimeout)("/api/auth/login-verify",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({email:e,code:t})}),s=await a.json().catch(()=>({}));if(!a.ok||!s.authenticated||!s.user){let e=s.message??"invalid code.";"invalid_code"===s.code&&(e="wrong code, or it expired. try again."),f(t=>"code"===t.kind?{...t,error:e}:t);return}v.current=!0,h("audit_auth_dialog_succeeded",{source:u}),f({kind:"done",user:s.user}),d(s.user)}catch(t){let e=r(t);f(t=>"code"===t.kind?{...t,error:e}:t)}finally{p(!1)}},[h,d,u]),N=(0,a.useCallback)(async e=>{if(e.preventDefault(),b||"email"!==m.kind)return;let t=String(new FormData(e.currentTarget).get("email")??"").trim().toLowerCase();i.test(t)?await j(t):f({kind:"email",error:"that doesn't look like an email."})},[b,m,j]),S=(0,a.useCallback)(async e=>{if(e.preventDefault(),b||"code"!==m.kind)return;let t=String(new FormData(e.currentTarget).get("code")??"").trim();t.length<4||t.length>12?f(e=>"code"===e.kind?{...e,error:"code is 4–12 characters."}:e):await k(m.email,t)},[b,m,k]),C=(0,a.useCallback)(async()=>{"code"!==m.kind||m.resendIn>0||b||await j(m.email,{isResend:!0})},[m,b,j]);return e?(0,t.jsx)("div",{className:"auth-dialog-backdrop",role:"dialog","aria-modal":"true","aria-labelledby":"auth-dialog-title",onClick:e=>{b||e.target!==e.currentTarget||c()},children:(0,t.jsxs)("div",{className:"auth-dialog",children:[(0,t.jsx)("button",{type:"button",className:"auth-close",onClick:c,disabled:b,"aria-label":"close",children:"×"}),(0,t.jsx)("h2",{id:"auth-dialog-title",className:"auth-headline",children:l}),"email"===m.kind&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("p",{className:"auth-sub",children:o}),(0,t.jsxs)("form",{onSubmit:N,className:"auth-form",children:[(0,t.jsx)("input",{ref:x,id:"auth-dialog-email",name:"email",type:"email",autoComplete:"email",inputMode:"email",spellCheck:!1,placeholder:"you@yourdomain.com",disabled:b,className:"auth-input",required:!0}),m.error&&(0,t.jsx)("div",{className:"auth-error",children:m.error}),(0,t.jsxs)("div",{className:"auth-actions",children:[(0,t.jsx)("button",{type:"submit",className:"auth-btn primary",disabled:b,children:b?"sending…":"send code"}),(0,t.jsx)("button",{type:"button",className:"auth-btn",onClick:c,disabled:b,children:"cancel"})]})]})]}),"code"===m.kind&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("p",{className:"auth-sub",children:["code sent to ",(0,t.jsx)("span",{className:"auth-email",children:m.email}),". expires in ",Math.ceil(m.expiresIn/60)," min."]}),(0,t.jsxs)("form",{onSubmit:S,className:"auth-form",children:[(0,t.jsx)("input",{ref:g,id:"auth-dialog-code",name:"code",type:"text",inputMode:"numeric",autoComplete:"one-time-code",spellCheck:!1,placeholder:"123456",disabled:b,className:"auth-input auth-input-code",maxLength:12,required:!0}),m.error&&(0,t.jsx)("div",{className:"auth-error",children:m.error}),(0,t.jsxs)("div",{className:"auth-actions",children:[(0,t.jsx)("button",{type:"submit",className:"auth-btn primary",disabled:b,children:b?"verifying…":"verify"}),(0,t.jsx)("button",{type:"button",className:"auth-btn",onClick:C,disabled:b||m.resendIn>0,children:m.resendIn>0?`resend in ${m.resendIn}s`:"resend code"})]}),(0,t.jsx)("button",{type:"button",className:"auth-back",onClick:()=>f({kind:"email",error:null}),disabled:b,children:"← use a different email"})]})]}),"done"===m.kind&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("p",{className:"auth-sub",children:[(0,t.jsx)("span",{className:"auth-ok",children:"✓"})," signed in as"," ",(0,t.jsx)("span",{className:"auth-email",children:m.user.email}),"."]}),(0,t.jsx)("div",{className:"auth-actions",children:(0,t.jsx)("button",{type:"button",className:"auth-btn primary",onClick:c,children:"continue"})})]})]})}):null}])},86616,e=>{"use strict";var t=e.i(29054);class a extends Error{kind;constructor(e,t){super(t),this.kind=e,this.name="RerunError"}}async function s(e){try{let s=await (0,t.fetchWithTimeout)("/api/audit/run",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({cli:e.cli.length>0?e.cli:void 0,since:"all"===e.since?void 0:e.since,noCache:!!e.noCache||void 0})});if(!s.ok&&409!==s.status){let e=await s.text().catch(()=>"");throw console.error("audit run failed:",s.status,e),new a("post_failed",`audit run failed (${s.status})`)}}catch(e){if(e instanceof a)throw e;throw console.error("audit run request failed:",e),new a((0,t.isAbortError)(e)?"timeout":"network","audit run request failed")}let s=0;for(;;){await new Promise(e=>setTimeout(e,1e3));let e=null;try{let a=await (0,t.fetchWithTimeout)("/api/audit/status",{cache:"no-store"});a.ok&&(e=await a.json())}catch{}if(null===e){if(++s>=10)throw new a("network","audit status poll lost the server");continue}if(s=0,!e.running){if(e.error)throw new a("post_failed",e.error);return}}}e.s(["RerunError",0,a,"triggerRun",0,s])},93237,e=>{"use strict";var t=e.i(43476),a=e.i(71645),s=e.i(95187);let n=(0,s.createServerReference)("00307e102c6f6e4cfdd9201975d1f4ef94ea86924c",s.callServer,void 0,s.findSourceMapURL,"getScheduledAuditAction"),i=(0,s.createServerReference)("40a46a4bfb367205e6de934f38e1e919c3b69ed937",s.callServer,void 0,s.findSourceMapURL,"setAutoAuditAction"),r=(0,s.createServerReference)("40168692117f80ed35533b6f510d0a483a609cbf47",s.callServer,void 0,s.findSourceMapURL,"setAuditIntervalAction");var l=e.i(86616),o=e.i(64237),c=e.i(55574),d=e.i(34713);function u(e){return new Date(e).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function h(e,t){let a=e-t;if(a<=0)return"now";let s=Math.floor(a/864e5),n=Math.floor(a%864e5/36e5);return s>0?n>0?`${s}d ${n}h`:`${s}d`:n>0?`${n}h`:`${Math.max(1,Math.floor(a/6e4))}m`}function m(e){return e.toLocaleString("en-US")}function f({label:e,value:a,sub:s,tone:n}){return(0,t.jsxs)("div",{className:"set-stat",children:[(0,t.jsx)("div",{className:"set-stat-label",children:e}),(0,t.jsx)("div",{className:`set-stat-value${n?` ${n}`:""}`,children:a}),(0,t.jsx)("div",{className:"set-stat-sub",children:s??" "})]})}function b({lastRunAtMs:e,nextDueAtMs:a,now:s}){if(null==e||null==a||a<=e)return null;let n=Math.min(100,Math.max(0,(s-e)/(a-e)*100));return(0,t.jsxs)("div",{className:"tape","aria-hidden":"true",children:[(0,t.jsxs)("div",{className:"tape-rail",children:[(0,t.jsx)("div",{className:"tape-fill",style:{width:`${n}%`}}),(0,t.jsx)("div",{className:"tape-now",style:{left:`${n}%`}})]}),(0,t.jsxs)("div",{className:"tape-ends",children:[(0,t.jsxs)("span",{children:["last scan · ",u(e)]}),(0,t.jsxs)("span",{className:"tape-next",children:["next · ",h(a,s)]})]})]})}function p({enabled:e,onChange:a,disabled:s,label:n}){return(0,t.jsx)("button",{type:"button",role:"switch","aria-checked":e,"aria-label":n,disabled:s,onClick:a,className:"sw","data-on":e?"true":"false",children:(0,t.jsx)("span",{className:"sw-knob"})})}let v=[{label:"reads",body:"every session transcript on disk — your prompts, the files your agents read and wrote, and command output."},{label:"runs",body:"entirely on this machine. the transcripts never leave it."},{label:"sends",body:"counts, redacted examples, and this machine's name — and only when a scan finds something harmful."}];e.s(["default",0,function({initial:e}){let[s,x]=(0,a.useState)(e),[g,y]=(0,a.useState)(e?.auto??!1),[w,j]=(0,a.useState)(e?.intervalDays??7),[k,N]=(0,a.useState)(!1),[S,C]=(0,a.useState)(!1),[M,$]=(0,a.useState)(!1),[A,E]=(0,a.useState)(null===e),[D,R]=(0,a.useState)(0),_=(0,a.useRef)(!0),T=(0,a.useRef)(null!==e),I=(0,a.useCallback)(async()=>{try{let e=await n();if(!_.current)return;x(e),T.current=!0,y(e.auto),j(e.intervalDays),R(Date.now()),E(!1)}catch{_.current&&!T.current&&E(!0)}},[]);(0,a.useEffect)(()=>(_.current=!0,I(),()=>{_.current=!1}),[I]),(0,a.useEffect)(()=>{let e=()=>void I();return window.addEventListener("focus",e),document.addEventListener("visibilitychange",e),()=>{window.removeEventListener("focus",e),document.removeEventListener("visibilitychange",e)}},[I]);let L=s?.signedInAs??null,F=s?.daemon==="running",O=s?.daemon==="unsupported-platform",P=s?.schedule??null,q=s?.lastScan??null,U=P?.lastExitCode!=null&&0!==P.lastExitCode&&75!==P.lastExitCode,W=(0,a.useCallback)(async()=>{N(!0);try{let e=await i(!0);if(!e.ok){if(y(!1),"unreachable"===e.reason)return void(0,c.toast)("could not reach the server. check your connection and try again.");await I(),$(!0),(0,c.toast)("that sign-in expired. one more code and it's on.");return}y(e.auto),(0,c.toast)("scheduled audits on."),await I()}catch{y(!1),(0,c.toast)("could not turn that on.")}finally{N(!1)}},[I]),B=(0,a.useCallback)(async()=>{if(g){N(!0);try{let e=await i(!1);e.ok&&y(e.auto),(0,c.toast)("scheduled audits off."),await I()}catch{(0,c.toast)("could not turn that off.")}finally{N(!1)}return}L?await W():$(!0)},[g,W,I,L]),J=(0,a.useCallback)(async e=>{N(!0);try{let t=await r(e);j(t.intervalDays),x(e=>e?{...e,intervalDays:t.intervalDays}:e),(0,c.toast)(`scanning every ${t.intervalDays} day${1===t.intervalDays?"":"s"}.`)}catch{j(s?.intervalDays??7),(0,c.toast)("could not save that.")}finally{N(!1)}},[s?.intervalDays]),K=(0,a.useCallback)(async()=>{N(!0);try{await fetch("/api/auth/logout",{method:"POST"}),(0,c.toast)("signed out. scans continue; digests pause."),await I()}catch{(0,c.toast)("could not sign out.")}finally{N(!1)}},[I]),H=(0,a.useCallback)(async()=>{if(!S){C(!0);try{await (0,l.triggerRun)({cli:[],since:"all",noCache:!1}),(0,c.toast)("scan complete."),await I()}catch(e){(0,c.toast)(e instanceof l.RerunError&&"timeout"===e.kind?"the scan is taking a while — it will finish in the background.":"the scan could not be completed.")}finally{C(!1)}}},[I,S]),z=(0,a.useCallback)(async e=>{$(!1),await I(),await W()},[W,I]),G=s?F?{value:"running",sub:null!=s.daemonStartedAtMs&&D>0?`up ${function(e){let t=Math.floor(e/864e5);if(t>0)return`${t}d`;let a=Math.floor(e/36e5);return a>0?`${a}h`:`${Math.max(1,Math.floor(e/6e4))}m`}(Math.max(0,D-s.daemonStartedAtMs))}`:"",tone:"ok"}:O?{value:"unavailable",sub:"not on this platform"}:"not-installed"===s.daemon?{value:"not installed",sub:"run failproofai config",tone:"warn"}:"unknown"===s.daemon?{value:"unknown",sub:"could not read it"}:{value:"stopped",sub:"run failproofai config",tone:"warn"}:{value:"…",sub:"reading"},Q=g?P?.nextDueAtMs==null?{value:"pending",sub:"after the next scan"}:{value:D>0?h(P.nextDueAtMs,D):"—",sub:u(P.nextDueAtMs)}:{value:"off",sub:"nothing scheduled"},V=q?{value:(0,d.formatRelativeTime)(Date.parse(q.finishedAt)),sub:null!=q.sessionsScanned?`${m(q.sessionsScanned)} sessions`:"scanned"}:{value:"none yet",sub:"run one below"},X=q?null==q.findings?{value:"—",sub:"unreadable"}:{value:m(q.findings),sub:"this scan",...q.findings>0?{tone:"warn"}:{}}:{value:"—",sub:"no scan yet"};return(0,t.jsxs)("main",{className:"report",children:[(0,t.jsxs)("section",{className:"section set-sec",children:[(0,t.jsxs)("div",{className:"set-mast",children:[(0,t.jsx)("h1",{className:"set-title",children:"settings"}),(0,t.jsx)("p",{className:"set-lede",children:"keeping watch, so you don't have to."})]}),A?(0,t.jsx)("div",{className:"set-console",children:(0,t.jsx)("div",{className:"set-cell",children:(0,t.jsxs)("p",{className:"set-warn",children:["could not read this machine's settings. check that the dashboard can reach ",(0,t.jsx)("code",{children:"~/.failproofai/config.json"}),"."]})})}):(0,t.jsxs)("div",{className:"set-console",children:[(0,t.jsxs)("div",{className:"set-stats",children:[(0,t.jsx)(f,{label:"daemon",...G}),(0,t.jsx)(f,{label:"next scan",...Q}),(0,t.jsx)(f,{label:"last scan",...V}),(0,t.jsx)(f,{label:"findings",...X})]}),(0,t.jsxs)("div",{className:"set-cols",children:[(0,t.jsxs)("div",{className:"set-cell set-config",children:[(0,t.jsx)("h2",{className:"set-cell-title",children:"scheduled audit"}),(0,t.jsxs)("div",{className:"set-row set-row-main",children:[(0,t.jsx)(p,{enabled:g,disabled:k||null===s,onChange:()=>void B(),label:g?"turn off scheduled audits":"turn on scheduled audits"}),(0,t.jsxs)("div",{className:"set-row-copy",children:[(0,t.jsx)("span",{className:"set-strong",children:g?"scanning on a schedule.":"scan on a schedule."}),(0,t.jsx)("span",{className:"set-dim",children:g?"you'll get an email only when a scan finds something.":"off. nothing runs and nothing is sent."})]})]}),(0,t.jsxs)("div",{className:"set-row set-row-interval",children:[(0,t.jsx)("span",{className:"set-dim",children:"scan every"}),(0,t.jsx)("input",{type:"number",className:"set-num",min:1,max:90,value:w,disabled:k||null===s,"aria-label":"days between scheduled scans",onChange:e=>j(Number(e.target.value)),onBlur:e=>{let t=Number(e.target.value);Number.isFinite(t)?t!==s?.intervalDays&&J(t):j(s?.intervalDays??7)}}),(0,t.jsx)("span",{className:"set-dim",children:"days"}),(0,t.jsxs)("span",{className:"set-hint",children:[1,"–",90]})]}),(0,t.jsx)("div",{className:"set-rule"}),(0,t.jsx)("div",{className:"set-row set-row-identity",children:L?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"set-dim",children:"reports go to"}),(0,t.jsx)("span",{className:"set-email",children:L.email}),(0,t.jsx)("button",{type:"button",className:"set-link",disabled:k,onClick:()=>void K(),children:"sign out"})]}):g?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"set-warn",children:"signed out — scans continue, digests are paused."}),(0,t.jsx)("button",{type:"button",className:"set-link",disabled:k,onClick:()=>$(!0),children:"sign in to resume"})]}):(0,t.jsx)("span",{className:"set-dim",children:"turning this on asks for an email, so there is somewhere to send the report."})}),g&&s&&!F&&(0,t.jsx)("p",{className:"set-warn",children:O?"the background service isn't available on this platform, so scheduled scans can't run here. you can still run one now.":"not-installed"===s.daemon?"the background service isn't installed, so nothing will run on the timer. install it with `failproofai config`.":"the background service is stopped, so nothing will run until it starts. repair it with `failproofai config`."}),U&&(0,t.jsxs)("p",{className:"set-warn",children:["the last scheduled scan exited ",P?.lastExitCode,". the next one will still run."]}),(0,t.jsx)("div",{className:"set-actions",children:(0,t.jsx)("button",{type:"button",className:"btn btn-press",disabled:S,onClick:()=>void H(),children:S?"[ scanning… ]":"[ run a scan now ]"})})]}),(0,t.jsxs)("div",{className:"set-cell set-how",children:[(0,t.jsx)("h2",{className:"set-cell-title",children:"how it works"}),(0,t.jsx)("dl",{className:"set-how-list",children:v.map(e=>(0,t.jsxs)("div",{className:"set-how-row",children:[(0,t.jsx)("dt",{className:"set-how-label",children:e.label}),(0,t.jsx)("dd",{className:"set-how-body",children:e.body})]},e.label))})]})]})]}),g&&D>0&&(0,t.jsx)(b,{lastRunAtMs:P?.lastRunAtMs??null,nextDueAtMs:P?.nextDueAtMs??null,now:D})]}),(0,t.jsx)(o.AuthDialog,{open:M,source:"settings_scheduled_audit",headline:"where should the report go?",subhead:"we'll send a one-time code to confirm.",onClose:()=>$(!1),onAuthed:e=>void z(e)})]})}],93237)},29054,e=>{"use strict";e.s(["fetchWithTimeout",0,function(e,t={},a=15e3){let s=AbortSignal.timeout(a),n=t.signal?AbortSignal.any([t.signal,s]):s;return fetch(e,{...t,signal:n})},"isAbortError",0,function(e){if(null===e||"object"!=typeof e)return!1;let t=e.name;return"AbortError"===t||"TimeoutError"===t}])},34713,e=>{"use strict";e.s(["formatDuration",0,function(e){if(e<1e3)return`${e}ms`;let t=Math.round(e/100);if(t<600)return`${(t/10).toFixed(1)}s`;let a=Math.round(e/1e3);if(a<3600){let e=Math.floor(a/60);return`${e}m ${a%60}s`}let s=Math.round(e/6e4),n=Math.floor(s/60);return`${n}h ${s%60}m`},"formatRelativeTime",0,function(e){let t=Date.now()-e;return t<6e4?`${Math.max(1,Math.floor(t/1e3))}s ago`:t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}])}]);