@wular/coder 0.5.0 → 0.5.2

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 (267) hide show
  1. package/dist/{actions-CkMAM1Km.js → actions-C35tq9KH.js} +2 -2
  2. package/dist/{agent-Bi5nbUhA.js → agent-BZR4Eqdc.js} +1 -1
  3. package/dist/{app-server-BTpa5GBV.js → app-server-dnlLhhZb.js} +1 -1
  4. package/dist/{approvals-CRwkc9vB.js → approvals-C8XV7CK2.js} +1 -1
  5. package/dist/apps-CCqOsEZH.js +18 -0
  6. package/dist/async-BP5q3Une.js +3 -0
  7. package/dist/{auth-oCvlHitk.js → auth-CJOm9_Vh.js} +1 -1
  8. package/dist/builtin/coder/system.md +6 -3
  9. package/dist/{chat-4AiZEqKh.js → chat-BD2Fu3jU.js} +1 -1
  10. package/dist/cli.js +3 -3
  11. package/dist/{cmd-Cu3OquA_.js → cmd-BH1bmZGs.js} +34 -34
  12. package/dist/{config-D_RuO6gX.js → config-_32PHl9g.js} +1 -1
  13. package/dist/{connection-BXjn7gCC.js → connection-DNzNYpha.js} +1 -1
  14. package/dist/{connections-Cswv7r8Z.js → connections-B90TemYf.js} +1 -1
  15. package/dist/{context-CFrDYenS.js → context-DVGPu7f_.js} +1 -1
  16. package/dist/dash/standalone/server/build-index.json +1 -1
  17. package/dist/dash/standalone/server/manifest.json +1406 -1406
  18. package/dist/dash/standalone/server/modules-server-server-react-server/src/client/{index.54c45900f2153d34.js → index.a036e2c6ae93ec75.js} +3 -5
  19. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/api/{load.252f972b42c690e2.js → load.3e1c235ecb89201a.js} +2 -2
  20. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/create/[id]/{page.11efd0e175db9053.js → page.ff03c26886d248d2.js} +3 -3
  21. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/account/{notify.59ae138dc182d7c3.js → notify.5b9c5a4ab975b01e.js} +1 -1
  22. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/account/{page.e9386951cedea737.js → page.6e80433ca86c927d.js} +3 -3
  23. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/account/{sign-out.713d3ec10951fde5.js → sign-out.e419e0eae59a1394.js} +1 -1
  24. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/(list)/{agents-grid.f989d6f2d9ece6e4.js → agents-grid.53dc6597be8d6049.js} +1 -1
  25. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/(list)/{page.0f88720e52db99a2.js → page.82a238c790c19a6c.js} +6 -6
  26. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/{layout.8d2f0997462fc958.js → layout.4a5c6f90ebaccf6f.js} +7 -7
  27. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/{page.bc93891522c8120d.js → page.ed696703c6fb5796.js} +7 -7
  28. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/platforms/{page.cf5cf9afe38ab0e4.js → page.12dbb62edaa16b4f.js} +11 -11
  29. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/platforms/{platform-actions.c44c7df7841719f2.js → platform-actions.1e7bb5f00112eeac.js} +3 -3
  30. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/platforms/{platform-step.6e90cbfe308f28a0.js → platform-step.45adc3fb28e7d33b.js} +1 -1
  31. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/settings/{agent-settings-form.61de585104c2be10.js → agent-settings-form.1693e7dc34f5b94a.js} +16 -17
  32. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/settings/{page.4d06f759984a63b3.js → page.fbbcdf8fde222f1e.js} +8 -9
  33. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/tasks/{loading.ea2925eab1d2e594.js → loading.099f0e549e964a5c.js} +1 -1
  34. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/tasks/{page.fb069bf82b727d27.js → page.577e64210260faf2.js} +1 -1
  35. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/usage/{page.0a472a0e269b8c01.js → page.2d10853615403293.js} +3 -3
  36. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/{versions-list.7ef7dfd5d8f5de43.js → versions-list.e6088baf4de7f41e.js} +1 -1
  37. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/edit/{loading.007326a04f05d46c.js → loading.f0dfaf4552b8cde1.js} +1 -1
  38. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/edit/{page.a26aa7bc6ab655f0.js → page.9f09979ad3435fe3.js} +6 -6
  39. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/platforms/[app]/{app-cards.361918fe58349aa1.js → app-cards.adaebe98ec9d32e8.js} +2 -2
  40. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/platforms/[app]/{page.3f60cf67517d0d31.js → page.e2dc60bbcac65b1f.js} +3 -3
  41. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/agent/{agent-toggle.ffbf9a8b8b2fbde7.js → agent-toggle.d795b7112534872c.js} +2 -2
  42. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/agent/{hero.0ae015a4fbe6321e.js → hero.b74c6eb40c45b498.js} +1 -1
  43. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/editor/{connect-repositories.9abe365f0098d358.js → connect-repositories.e27bcba279f82d7b.js} +1 -1
  44. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/editor/{editor.6548f8f757578f90.js → editor.288736c2a52c7df4.js} +8 -8
  45. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/editor/{import-picker.577b1d84c7ab84e1.js → import-picker.58bad50dd8e60d63.js} +3 -3
  46. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/new/{page.2b326d00ccef5544.js → page.83a490948f585e69.js} +4 -4
  47. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/{layout.45a09107b19f0a7e.js → layout.61ad05aceb425910.js} +3 -3
  48. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/operator/{operator-apps.f8d679f2d06b0ebc.js → operator-apps.6f71999915848a2c.js} +6 -6
  49. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/operator/{page.5aa3ddc669366703.js → page.4758811b7fc86d84.js} +5 -5
  50. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/{page.5a5188f0fc75dcd2.js → page.7de674df6cd0e824.js} +1 -1
  51. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{advanced-list.73cdadb2968a39d2.js → advanced-list.851275e04f8e7305.js} +1 -1
  52. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{connection-add.353ec01fbb814f78.js → connection-add.45a224c5e612b15f.js} +4 -4
  53. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{connections-list.cf4061ae909272c3.js → connections-list.6cacd41c18de261d.js} +5 -5
  54. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{credentials-list.fc4cff0289267551.js → credentials-list.79a1355d894b8642.js} +4 -4
  55. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{credentials.db01de2581ac65f3.js → credentials.30db114aef2c6ff6.js} +8 -8
  56. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{list.e7d6a422f6a869ea.js → list.fa3b9eff6657bc57.js} +3 -3
  57. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{models-list.acb92b39cab1d11c.js → models-list.2a8f6a5679fc5c4d.js} +6 -6
  58. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{page.95fe939e36e5be55.js → page.7681780b48e2aa3e.js} +13 -13
  59. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{runners-list.5764eac3307d67cc.js → runners-list.e9834546550a3c2c.js} +6 -6
  60. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{secrets-list.d316bb157f747f6c.js → secrets-list.ff9f3b3d88f2b8df.js} +4 -4
  61. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{layout.4eb70f2de8674f93.js → layout.3f8a61434ceaa186.js} +1 -1
  62. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{model-options.dc630cb6e2cbf83a.js → model-options.0d6077fe68db3af9.js} +2 -5
  63. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{model-pick.a143e77f5ed5f9d3.js → model-pick.695538b2edf9dd15.js} +1 -1
  64. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{page.70cad0e981c33fa5.js → page.e439da4bae9d6d6c.js} +1 -1
  65. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/setup/{create-link.18bd2b92cd23b73f.js → create-link.371225925a83e900.js} +3 -3
  66. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/setup/{outcome-toast.95f7be49430248eb.js → outcome-toast.c7d02e38464dec0b.js} +1 -1
  67. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/setup/{page.e39ee9236664d043.js → page.885e5ae7913d8f5b.js} +4 -4
  68. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{activity.441e82ab00344fb2.js → activity.f8d48c80747830ee.js} +1 -1
  69. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{page.24e121ea6eb578ba.js → page.70ce5ef3bcf56310.js} +6 -6
  70. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{task-actions.4a4052a38db4bad3.js → task-actions.783070d7dbd198e4.js} +4 -4
  71. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{task-view.0cd3ec2655f44cc7.js → task-view.db256c7f111b8f23.js} +22 -57
  72. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/{composer-data.73225456d60d63e3.js → composer-data.c16854be11a561e4.js} +1 -1
  73. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/{composer.ee326fbf5e526fb1.js → composer.6a331de70f3baff4.js} +24 -82
  74. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/list/{pending-approvals.7607998094780fdd.js → pending-approvals.7ff2eadf13a3ee90.js} +1 -1
  75. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/list/{tasks-list.e486cbd16ea3e963.js → tasks-list.57c90c66384141a0.js} +8 -8
  76. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/list/{tasks-section.01510523d1556d59.js → tasks-section.22e4f86847e1a3e2.js} +4 -4
  77. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/{page.ede64f82388f9480.js → page.c6b9db3ca88aaa1f.js} +3 -3
  78. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/usage/{page.0499098badd3f5f8.js → page.743fe359f09f5648.js} +2 -2
  79. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{stream.e3800e736f832124.js → stream.c7ffa724145ce870.js} +1 -1
  80. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{task-toasts.3b7eeee29fc327de.js → task-toasts.b0ba5a1b4976ae27.js} +47 -20
  81. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/utils/{action.f22057e7dfac40fe.js → action.44115286faf6c0f8.js} +1 -1
  82. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/utils/{client.c8d7efefb6194d7d.js → client.b9225923da59febe.js} +1 -1
  83. package/dist/dash/standalone/static/assets/chunks/{advanced-list-850a950afe4f6996.js → advanced-list-4a393f37c461986f.js} +1 -1
  84. package/dist/dash/standalone/static/assets/chunks/{agent-pills-9f6fa120182db948.js → agent-pills-f07bea43753a9342.js} +1 -1
  85. package/dist/dash/standalone/static/assets/chunks/agent-settings-form-6c1b6776328cd046.js +1 -0
  86. package/dist/dash/standalone/static/assets/chunks/{agent-toggle-521136f20a71400d.js → agent-toggle-dabbca2fe4006852.js} +1 -1
  87. package/dist/dash/standalone/static/assets/chunks/{agents-grid-bcd13cd7a46224a6.js → agents-grid-a9440caa1768bfd8.js} +1 -1
  88. package/dist/dash/standalone/static/assets/chunks/{back-2d67134b122334f4.js → back-8ca96656264a0d1c.js} +1 -1
  89. package/dist/dash/standalone/static/assets/chunks/{chain-hint-53675e299a865420.js → chain-hint-c7994aad798ef430.js} +1 -1
  90. package/dist/dash/standalone/static/assets/chunks/{combo-cb2c62fe580a8903.js → combo-7b125f3927083749.js} +1 -1
  91. package/dist/dash/standalone/static/assets/chunks/composer-3efd63e2e0192937.js +1 -0
  92. package/dist/dash/standalone/static/assets/chunks/composer-a6cf207b9c69b43f.js +1 -0
  93. package/dist/dash/standalone/static/assets/chunks/{composer-data-890f71bade4f0616.js → composer-data-b05f3d93fdc472d7.js} +1 -1
  94. package/dist/dash/standalone/static/assets/chunks/{confirm-d6b2c5b1deccd1e8.js → confirm-6e26ab941d655b9f.js} +1 -1
  95. package/dist/dash/standalone/static/assets/chunks/{connect-repositories-226bf70aa81c29d8.js → connect-repositories-90f1aedea6de7a99.js} +1 -1
  96. package/dist/dash/standalone/static/assets/chunks/{connections-list-a33d6637e2d52fcf.js → connections-list-90935e956e8f4626.js} +1 -1
  97. package/dist/dash/standalone/static/assets/chunks/{copy-294c6052b3b69424.js → copy-38fa78628f39ec10.js} +1 -1
  98. package/dist/dash/standalone/static/assets/chunks/create-link-a3c963721aa06a72.js +1 -0
  99. package/dist/dash/standalone/static/assets/chunks/{credentials-list-90fc1c6d202e1461.js → credentials-list-ae950b9891d30c29.js} +1 -1
  100. package/dist/dash/standalone/static/assets/chunks/{custom-range-efa1b6a71ba84597.js → custom-range-e9185a23187b3fe6.js} +1 -1
  101. package/dist/dash/standalone/static/assets/chunks/{editor-53a3e1a893644fff.js → editor-e0cc472111713852.js} +3 -3
  102. package/dist/dash/standalone/static/assets/chunks/{field-4d374d5ed3f43d7e.js → field-444bab2e16b91c26.js} +1 -1
  103. package/dist/dash/standalone/static/assets/chunks/instructions-7d9131eb37c4619e.js +1 -0
  104. package/dist/dash/standalone/static/assets/chunks/{instructions-d3dc01b2f90820db.js → instructions-9f173d4229d9b77e.js} +1 -1
  105. package/dist/dash/standalone/static/assets/chunks/{list-16247e39898cd20e.js → list-84356c9286747b10.js} +1 -1
  106. package/dist/dash/standalone/static/assets/chunks/model-options-5e07b3318d69d218.js +1 -0
  107. package/dist/dash/standalone/static/assets/chunks/{models-list-6d93523660503dfb.js → models-list-eca9705ab89a2ce5.js} +1 -1
  108. package/dist/dash/standalone/static/assets/chunks/outcome-dialog-3006ae63624b3940.js +1 -0
  109. package/dist/dash/standalone/static/assets/chunks/{outcome-dialog-755fc581cbc2836e.js → outcome-dialog-c4d61a288688f53a.js} +1 -1
  110. package/dist/dash/standalone/static/assets/chunks/outcome-toast-ba59a3c06c25f0fd.js +1 -0
  111. package/dist/dash/standalone/static/assets/chunks/platform-actions-0c61a03082f9d169.js +1 -0
  112. package/dist/dash/standalone/static/assets/chunks/{platform-actions-08e9b3816dcd62b1.js → platform-actions-267a43c805e3c3a6.js} +1 -1
  113. package/dist/dash/standalone/static/assets/chunks/{platform-step-5881a8be1e761e00.js → platform-step-adfc87c1fa86e7e1.js} +1 -1
  114. package/dist/dash/standalone/static/assets/chunks/platform-step-fd1616528b2f6f12.js +1 -0
  115. package/dist/dash/standalone/static/assets/chunks/{runners-list-dd759d408c643a29.js → runners-list-c858c5546c6fd513.js} +1 -1
  116. package/dist/dash/standalone/static/assets/chunks/{runtime-9b28886f3cbe0ed3-1.js → runtime-3fcac605fffcc273-1.js} +1 -1
  117. package/dist/dash/standalone/static/assets/chunks/{secrets-list-be1f634a1b077baa.js → secrets-list-06cd41b5a2627452.js} +1 -1
  118. package/dist/dash/standalone/static/assets/chunks/{segmented-f646bfa8aa0aa449.js → segmented-15503e745dd97f56.js} +1 -1
  119. package/dist/dash/standalone/static/assets/chunks/{shared-init-b42d2c06c25d1e2b.js → shared-init-02666a6f76606589.js} +1 -1
  120. package/dist/dash/standalone/static/assets/chunks/shared-init-3fcac605fffcc273-2.js +1 -0
  121. package/dist/dash/standalone/static/assets/chunks/shared-init-7a7f1e623f0f5861.js +9 -0
  122. package/dist/dash/standalone/static/assets/chunks/{shared-init-953965859f7bf6b9.js → shared-init-a69029db2d72fb52.js} +1 -1
  123. package/dist/dash/standalone/static/assets/chunks/side-toggle-800f7bacd6de5aa8.js +1 -0
  124. package/dist/dash/standalone/static/assets/chunks/{tail-d13c4cc0cf11ffd1.js → tail-3024b828bce41f94.js} +1 -1
  125. package/dist/dash/standalone/static/assets/chunks/{task-423e6a3f2527f534.js → task-1e6f9ba22fb5e29f.js} +1 -1
  126. package/dist/dash/standalone/static/assets/chunks/{task-actions-5917357eac6504ca.js → task-actions-c8fe1201a56901d9.js} +1 -1
  127. package/dist/dash/standalone/static/assets/chunks/task-view-531e243f8222f802.js +3 -0
  128. package/dist/dash/standalone/static/assets/chunks/{tasks-list-2c5ce592e00fda45.js → tasks-list-5373f9a2772a386a.js} +1 -1
  129. package/dist/dash/standalone/static/assets/chunks/{versions-list-177ae397ad64dcea.js → versions-list-6642a24e9cef352b.js} +1 -1
  130. package/dist/dash/standalone/static/assets/chunks/{wular-pnext-9b28886f3cbe0ed3-0.js → wular-pnext-3fcac605fffcc273-0.js} +1 -1
  131. package/dist/dash/standalone/static/assets/{dash-param-org-agents-param-slug-00243b34eb094b95.css → dash-param-org-agents-param-slug-dd4ac319a0d62432.css} +1 -1
  132. package/dist/dash/standalone/static/assets/{dash-param-org-agents-param-slug-settings-9f8faa8f7d714699.css → dash-param-org-agents-param-slug-platforms-9d2e1439f3f7e81b.css} +1 -1
  133. package/dist/dash/standalone/static/assets/{dash-param-org-agents-param-slug-usage-0e037c66e3977f33.css → dash-param-org-agents-param-slug-settings-f21d4fcd3948139b.css} +1 -1
  134. package/dist/dash/standalone/static/assets/{dash-param-org-agents-param-slug-tasks-129adcdc293ceac8.css → dash-param-org-agents-param-slug-tasks-c8d6aa06f6e75f4c.css} +1 -1
  135. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-usage-9cc128ba8af6ef62.css +1 -0
  136. package/dist/dash/standalone/static/assets/{dash-param-org-tasks-8a44e171984d32a1.css → dash-param-org-tasks-be3cb3d64573f3d9.css} +1 -1
  137. package/dist/dash/standalone/static/assets/{dash-param-org-tasks-param-id-b9d3a7a1bd1dd666.css → dash-param-org-tasks-param-id-c20a0537bc82620d.css} +1 -1
  138. package/dist/dash/standalone/static/assets/pnext-client-02b9bb5ae78a37d6.js +1 -0
  139. package/dist/dash/standalone/static/assets/pnext-client-063d14b5b5c893a3.js +1 -0
  140. package/dist/dash/standalone/static/assets/pnext-client-1710a65c5b8280af.js +1 -0
  141. package/dist/dash/standalone/static/assets/pnext-client-2936b44e963219bc.js +1 -0
  142. package/dist/dash/standalone/static/assets/pnext-client-2f14cc4bf71bf456.js +1 -0
  143. package/dist/dash/standalone/static/assets/pnext-client-2f81535a69d0c8a3.js +1 -0
  144. package/dist/dash/standalone/static/assets/pnext-client-368d90341055d7ff.js +1 -0
  145. package/dist/dash/standalone/static/assets/pnext-client-58e0efbceb6c595f.js +1 -0
  146. package/dist/dash/standalone/static/assets/{pnext-client-7ecbd7a0cbe4e231.js → pnext-client-5fc693a6184e48a4.js} +1 -1
  147. package/dist/dash/standalone/static/assets/pnext-client-6ee756a74310a9fe.js +1 -0
  148. package/dist/dash/standalone/static/assets/pnext-client-713f7a6bc55d23fb.js +1 -0
  149. package/dist/dash/standalone/static/assets/pnext-client-7c91f8543cd360fa.js +1 -0
  150. package/dist/dash/standalone/static/assets/pnext-client-827b030f2c8e738e.js +1 -0
  151. package/dist/dash/standalone/static/assets/pnext-client-8b165b7e5c14a1f3.js +1 -0
  152. package/dist/dash/standalone/static/assets/pnext-client-95a81597ac1bdea0.js +1 -0
  153. package/dist/dash/standalone/static/assets/pnext-client-a4c2fb8a94ccce04.js +1 -0
  154. package/dist/dash/standalone/static/assets/pnext-client-a7faaaf8c4cc8145.js +1 -0
  155. package/dist/dash/standalone/static/assets/pnext-client-bab8ffb68e7dd229.js +1 -0
  156. package/dist/dash/standalone/static/assets/pnext-client-d9fab2611c2e7246.js +1 -0
  157. package/dist/dash/standalone/static/assets/pnext-client-f3804c9ffb299fe0.js +1 -0
  158. package/dist/{definition-4on4SG5J.js → definition-D0OpQfGX.js} +1 -1
  159. package/dist/{discover-DvzAbQvU.js → discover-BfYHHJN_.js} +1 -1
  160. package/dist/{dispatch-BaW2X6Sc.js → dispatch-BkoIU4GU.js} +2 -2
  161. package/dist/{docs-CbgaMPvq.js → docs-CxklYa3P.js} +1 -1
  162. package/dist/{drive-Tk6JvQK5.js → drive-MggMiKA0.js} +1 -1
  163. package/dist/env-BwFCHakK.js +1 -0
  164. package/dist/{exec-CAaYFJD1.js → exec-CNygM6yF.js} +2 -2
  165. package/dist/{executor-Chc0zawh.js → executor-Ds4wDCzV.js} +6 -6
  166. package/dist/flow/builtin/review/index.d.ts +2 -2
  167. package/dist/flow/builtin/review/index.js +10 -15
  168. package/dist/flow/index.d.ts +2 -2
  169. package/dist/flow/index.js +1 -1
  170. package/dist/{hook-COWDSO4a.js → hook-CVJU-ZD0.js} +1 -1
  171. package/dist/{index-ezhbF5wC.d.ts → index-CTAQrCRU.d.ts} +71 -66
  172. package/dist/integrations-DSZSa8Rc.js +9 -0
  173. package/dist/lib/broker.js +1 -1
  174. package/dist/{load-PqaDHiHX.js → load-BtIDghgd.js} +2 -2
  175. package/dist/{local-BzZuOwgI.js → local-CqOUpEtl.js} +1 -1
  176. package/dist/{local-BMGcCk8N.js → local-DFrTuJFN.js} +1 -1
  177. package/dist/{login-BDKTNynK.js → login-93jO9qjx.js} +1 -1
  178. package/dist/maintenance-BuDKnfc7.js +1 -0
  179. package/dist/{mcp-BNz_l5TV2.js → mcp-CTVOR7r6.js} +1 -1
  180. package/dist/{mcp-BGam3G_B.js → mcp-EwT2mCaa.js} +1 -1
  181. package/dist/{mcp-BGx48pyR.js → mcp-cEIva8Pd.js} +6 -4
  182. package/dist/{models-D1NXi6ni.js → models-mKyePWrV.js} +1 -1
  183. package/dist/{permission-BkYxjiFR.js → permission-F6F25GJU.js} +1 -1
  184. package/dist/post-DLenID75.js +11 -0
  185. package/dist/{refresh-yfEi5SQs.js → refresh-CWEpTAkD.js} +1 -1
  186. package/dist/{remote-rArUa01V.js → remote-BDMuKaON.js} +1 -1
  187. package/dist/remote-Cl-j8r3W.js +1 -0
  188. package/dist/{runner-DG9jrX5H.js → runner-DK0jnzPr.js} +1 -1
  189. package/dist/runner.json +1 -1
  190. package/dist/runner.tgz +0 -0
  191. package/dist/schema.js +1 -1
  192. package/dist/sdk.d.ts +49 -45
  193. package/dist/sdk.js +1 -1
  194. package/dist/serve-Cqlkgdfd.js +8 -0
  195. package/dist/{serve-B-5rDiZm.js → serve-DHe6dZM6.js} +1 -1
  196. package/dist/{session-Dtje9y-r.js → session-BMbMzzPu.js} +1 -1
  197. package/dist/{sessions-DIz9fyRN.js → sessions-BGUfSe8L.js} +1 -1
  198. package/dist/{shared--aE4olIO.js → shared-D-KqAi7b.js} +1 -1
  199. package/dist/{sign-in-wWkyaq5X.js → sign-in-Dv-rdYD4.js} +2 -2
  200. package/dist/{state-Br-Fuaxg.js → state-CxAUec80.js} +1 -1
  201. package/dist/store-BpDipcKB.js +349 -0
  202. package/dist/{task-CFt85vTy.js → task-BRHXn5y1.js} +1 -1
  203. package/dist/task-CzXNLREX.js +7 -0
  204. package/dist/{tool-search-BkdgVolu.js → tool-search-C9Ty3hhL.js} +1 -1
  205. package/dist/{tools-oQvFAnh5.js → tools-BCm26CeV.js} +1 -1
  206. package/dist/{tools-DNgEptor.js → tools-C69W1B6S.js} +1 -1
  207. package/dist/{tools-search-D1zArRyJ.js → tools-search-BDaeCoWe.js} +1 -1
  208. package/dist/{turn-Cc-v-eSy.js → turn-eI4iRPsq.js} +1 -1
  209. package/dist/{update-check-UyRob3yy.js → update-check-Bap3dwaj.js} +1 -1
  210. package/dist/{views-3TxH367C.js → views-Bxm_5J6T.js} +1 -1
  211. package/dist/worker-DGhRPDDt.js +7 -0
  212. package/dist/{worker-BMuKKiIa.js → worker-DHNBRRl-.js} +1 -1
  213. package/docs/agents/coder.md +1 -1
  214. package/docs/cli/index.md +5 -3
  215. package/docs/connections.md +1 -1
  216. package/docs/flows.md +1 -1
  217. package/docs/review.md +36 -8
  218. package/docs/self-host.md +2 -1
  219. package/package.json +1 -1
  220. package/plugins/claude/.claude-plugin/plugin.json +1 -1
  221. package/plugins/cursor/.cursor-plugin/plugin.json +1 -1
  222. package/dist/apps-B6mUToTa.js +0 -18
  223. package/dist/async-CNhQ4wyZ.js +0 -3
  224. package/dist/dash/standalone/static/assets/chunks/agent-settings-form-a8ee12513a02b1c5.js +0 -1
  225. package/dist/dash/standalone/static/assets/chunks/composer-4a46a458495ce3ba.js +0 -1
  226. package/dist/dash/standalone/static/assets/chunks/composer-92553de43276510b.js +0 -1
  227. package/dist/dash/standalone/static/assets/chunks/create-link-b2480a7601967e94.js +0 -1
  228. package/dist/dash/standalone/static/assets/chunks/instructions-734d21dfb8f6393e.js +0 -1
  229. package/dist/dash/standalone/static/assets/chunks/model-options-d29e934a3de20ab4.js +0 -1
  230. package/dist/dash/standalone/static/assets/chunks/outcome-dialog-77e13c848000a3dc.js +0 -1
  231. package/dist/dash/standalone/static/assets/chunks/outcome-toast-9d5e9713c23882f5.js +0 -1
  232. package/dist/dash/standalone/static/assets/chunks/platform-actions-832904f5694ef902.js +0 -1
  233. package/dist/dash/standalone/static/assets/chunks/platform-step-29469fd4eaddc42a.js +0 -1
  234. package/dist/dash/standalone/static/assets/chunks/shared-init-926144b364908b3c.js +0 -9
  235. package/dist/dash/standalone/static/assets/chunks/shared-init-9b28886f3cbe0ed3-2.js +0 -1
  236. package/dist/dash/standalone/static/assets/chunks/side-toggle-8c21d39a1e284887.js +0 -1
  237. package/dist/dash/standalone/static/assets/chunks/task-view-c6ee43d2ddb6db90.js +0 -3
  238. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-platforms-25ae07e0b3f5b252.css +0 -1
  239. package/dist/dash/standalone/static/assets/pnext-client-095026242a079175.js +0 -1
  240. package/dist/dash/standalone/static/assets/pnext-client-1dfeb8c3ef155f87.js +0 -1
  241. package/dist/dash/standalone/static/assets/pnext-client-2358423351524403.js +0 -1
  242. package/dist/dash/standalone/static/assets/pnext-client-28a6557216627768.js +0 -1
  243. package/dist/dash/standalone/static/assets/pnext-client-31a4ee73945fee19.js +0 -1
  244. package/dist/dash/standalone/static/assets/pnext-client-3dfdc76bb8712b82.js +0 -1
  245. package/dist/dash/standalone/static/assets/pnext-client-4355ac87961d78c1.js +0 -1
  246. package/dist/dash/standalone/static/assets/pnext-client-43c7a0046572e0c9.js +0 -1
  247. package/dist/dash/standalone/static/assets/pnext-client-53dc7db68d67e0b1.js +0 -1
  248. package/dist/dash/standalone/static/assets/pnext-client-5835cb35488bdf7f.js +0 -1
  249. package/dist/dash/standalone/static/assets/pnext-client-638b390bc23ab1ae.js +0 -1
  250. package/dist/dash/standalone/static/assets/pnext-client-67f832c6c51a66cd.js +0 -1
  251. package/dist/dash/standalone/static/assets/pnext-client-6fc99f0abe77c2ea.js +0 -1
  252. package/dist/dash/standalone/static/assets/pnext-client-7d99965f28ac7604.js +0 -1
  253. package/dist/dash/standalone/static/assets/pnext-client-8250bd3b86d038a3.js +0 -1
  254. package/dist/dash/standalone/static/assets/pnext-client-bfd06805a43c6dee.js +0 -1
  255. package/dist/dash/standalone/static/assets/pnext-client-ce2943f17e9d9ac3.js +0 -1
  256. package/dist/dash/standalone/static/assets/pnext-client-ed31510d4615a5a5.js +0 -1
  257. package/dist/dash/standalone/static/assets/pnext-client-f0496bf51e161ddd.js +0 -1
  258. package/dist/env-_AxrvBXP.js +0 -1
  259. package/dist/integrations-BVmsk64f.js +0 -9
  260. package/dist/maintenance-d43Ml540.js +0 -1
  261. package/dist/remote-BbXx6S9P.js +0 -1
  262. package/dist/serve-CvnrGAj7.js +0 -12
  263. package/dist/store-CzQLgCzt.js +0 -352
  264. package/dist/task-N0qhnKpK.js +0 -7
  265. package/dist/worker-CIHY9L42.js +0 -7
  266. /package/dist/dash/standalone/server/modules-server-server-react-server/src/core/{types.5bf5a41cedb54154.js → types.9d22123d6296f5af.js} +0 -0
  267. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{task-view.aae9fa481b9015d1.css.pnext-asset.js → task-view.440367ae07204ee7.css.pnext-asset.js} +0 -0
@@ -0,0 +1,3 @@
1
+ "use client";import{a as xe,c as Oe,d as Ce,e as Ie,f as ze}from"./task-actions-c8fe1201a56901d9.js";import{a as _e,b as At}from"./instructions-9f173d4229d9b77e.js";import{a as we,e as Tt,f as q,j as Te,k as lt,l as Ae,m as Me}from"./task-1e6f9ba22fb5e29f.js";import"./types-3eca2c7f47c46054.js";import"./confirm-6e26ab941d655b9f.js";import"./segmented-15503e745dd97f56.js";import"./field-444bab2e16b91c26.js";import{$1b as wt}from"./shared-init-a69029db2d72fb52.js";import{$0a as Et,$0b as ye,$0d as $,$0e as ke,$0h as Ee}from"./shared-init-a69029db2d72fb52.js";import{$1b as Zt,$1c as Qt,$1d as te,$1e as ee,$1h as se,$1j as me,$1k as pe,$1n as kt,$1o as be,$1p as Se}from"./shared-init-7a7f1e623f0f5861.js";import{$2B as ge,$2C as ve,$2D as yt,$2c as Gt,$2m as St}from"./shared-init-7a7f1e623f0f5861.js";import{$0a as Yt,$0c as P,$0e as Ut,$0f as he,$0k as fe,$0o as rt,$0r as Y}from"./shared-init-7a7f1e623f0f5861.js";import"./wular-pnext-3fcac605fffcc273-0.js";import"./shared-init-7a7f1e623f0f5861.js";import{$4F as re,$4G as le,$4J as ae,$4K as ot,$4L as ce,$4M as ue,$4N as de,$4Q as l,$4R as _,$4S as bt,$4b as Xt,$4c as ne,$4d as gt,$4e as ie,$4h as nt,$4i as H,$4n as vt,$4s as oe,$4v as J,$4w as it}from"./shared-init-7a7f1e623f0f5861.js";import{$4b as Jt}from"./shared-init-3fcac605fffcc273-2.js";import"./shared-init-3fcac605fffcc273-2.js";import"./shared-init-3fcac605fffcc273-2.js";import{$2c as F,$2h as A,$2i as pt,$2j as W,$2k as st,$2l as z,$2m as K}from"./shared-init-3fcac605fffcc273-2.js";var rs=()=>innerHeight+scrollY>=document.documentElement.scrollHeight-48,Mt=()=>scrollTo({top:document.documentElement.scrollHeight});function at(n=!1){let[a,t]=A(n),s=z(n);return s.current=a,W(()=>{let i=location.pathname,r=()=>t(s.current=rs()),o=new ResizeObserver(()=>s.current&&location.pathname===i&&Mt());return o.observe(document.body),addEventListener("scroll",r,{passive:!0}),s.current&&Mt(),r(),()=>{o.disconnect(),removeEventListener("scroll",r)}},[]),{following:a,follow:()=>{s.current=!0,t(!0),Mt()}}}function Re(n,a,t){let s=new Array(n);return new Proxy(s,{get(e,i,r){if(typeof i=="string"){let o=i.charCodeAt(0);if(o>=48&&o<=57){let u=+i;if(Number.isInteger(u)&&u>=0&&u<n){let f=e[u];if(!f){let d=a[u*2];f=e[u]={index:u,key:t(u),start:d,size:a[u*2+1],end:d+a[u*2+1],lane:0}}return f}}if(i==="length")return n}return Reflect.get(e,i,r)}})}function j(n,a,t){let s=t.initialDeps??[],e,i=!0;function r(){var o;let f=0,d=n();if(!(d.length!==s.length||d.some((y,m)=>s[m]!==y)))return e;s=d;let h=0;return e=a(...d),t?.onChange&&!(i&&t.skipInitialOnChange)&&t.onChange(e),i=!1,e}return r.updateDeps=o=>{s=o},r}function xt(n,a){if(n===void 0)throw new Error(`Unexpected undefined${a?`: ${a}`:""}`);return n}var De=(n,a)=>Math.abs(n-a)<1.01,Le=(n,a,t)=>{let s;return function(...e){n.clearTimeout(s),s=n.setTimeout(()=>a.apply(this,e),t)}};var G,Ot=()=>{if(G!==void 0)return G;if(typeof navigator>"u")return G=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return G=!0;let n=navigator.maxTouchPoints;return G=navigator.platform==="MacIntel"&&n!==void 0&&n>0};var ls=n=>n,as=n=>{let a=Math.max(n.startIndex-n.overscan,0),s=Math.min(n.endIndex+n.overscan,n.count-1)-a+1,e=new Array(s);for(let i=0;i<s;i++)e[i]=a+i;return e};var X={passive:!0},Fe=(n,a)=>{let t=n.scrollElement;if(!t)return;let s=()=>{a({width:t.innerWidth,height:t.innerHeight})};return s(),t.addEventListener("resize",s,X),()=>{t.removeEventListener("resize",s)}},cs=typeof window>"u"?!0:"onscrollend"in window,us=(n,a,t)=>{let s=n.scrollElement;if(!s)return;let e=n.targetWindow;if(!e)return;let i=n.options.useScrollendEvent&&cs,r=0,o=i?null:Le(e,()=>a(r,!1),n.options.isScrollingResetDelay),u=g=>()=>{r=t(s),o?.(),a(r,g)},f=u(!0),d=u(!1);return s.addEventListener("scroll",f,X),i&&s.addEventListener("scrollend",d,X),()=>{s.removeEventListener("scroll",f),i&&s.removeEventListener("scrollend",d)}};var We=(n,a)=>us(n,a,t=>n.options.horizontal?t.scrollX:t.scrollY),ds=(n,a,t)=>{if(t.options.useCachedMeasurements){let s=t.indexFromElement(n),e=t.options.getItemKey(s);return t.itemSizeCache.get(e)??t.options.estimateSize(s)}if(a?.borderBoxSize){let s=a.borderBoxSize[0];if(s)return Math.round(s[t.options.horizontal?"inlineSize":"blockSize"])}if(!a){let s=t.indexFromElement(n),e=t.options.getItemKey(s),i=t.itemSizeCache.get(e);if(i!==void 0)return i}return n[t.options.horizontal?"offsetWidth":"offsetHeight"]},hs=(n,{adjustments:a=0,behavior:t},s)=>{var e,i;(i=(e=s.scrollElement)==null?void 0:e.scrollTo)==null||i.call(e,{[s.options.horizontal?"left":"top"]:n+a,behavior:t})},Ne=hs;var ct=class{constructor(a){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=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.elementsCache=new Map,this.now=()=>{var t,s,e;return((e=(s=(t=this.targetWindow)==null?void 0:t.performance)==null?void 0:s.now)==null?void 0:e.call(s))??Date.now()},this.observer=(()=>{let t=null,s=()=>t||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:t=new this.targetWindow.ResizeObserver(e=>{e.forEach(i=>{let r=()=>{let o=i.target,u=this.indexFromElement(o);if(!o.isConnected){this.observer.unobserve(o);for(let[f,d]of this.elementsCache)if(d===o){this.elementsCache.delete(f);break}return}this.shouldMeasureDuringScroll(u)&&this.resizeItem(u,this.options.measureElement(o,i,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()})}));return{disconnect:()=>{var e;(e=s())==null||e.disconnect(),t=null},observe:e=>{var i;return(i=s())==null?void 0:i.observe(e,{box:"border-box"})},unobserve:e=>{var i;return(i=s())==null?void 0:i.unobserve(e)}}})(),this.range=null,this.setOptions=t=>{var s,e;let i={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:ls,rangeExtractor:as,onChange:()=>{},measureElement:ds,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 h in t){let y=t[h];y!==void 0&&(i[h]=y)}let r=this.options,o=null,u=null,f=!1;if(r!==void 0&&r.enabled&&i.enabled&&i.anchorTo==="end"&&this.scrollElement!==null){let h=r.count,y=i.count,m=this.getMeasurements(),w=h>0?((s=m[0])==null?void 0:s.key)??r.getItemKey(0):null,S=h>0?((e=m[h-1])==null?void 0:e.key)??r.getItemKey(h-1):null;if(y!==h||h>0&&y>0&&(i.getItemKey(0)!==w||i.getItemKey(y-1)!==S)){f=!0;let v=h>0?this.getVirtualItemForOffset(this.getScrollOffset())??m[0]:null;v&&(o=[v.key,this.getScrollOffset()-v.start]);let R=i.followOnAppend===!0?"auto":i.followOnAppend||null;R&&y>h&&this.isAtEnd(r.scrollEndThreshold)&&(h===0||i.getItemKey(y-1)!==S)&&(u=R)}}this.options=i,f&&(this.pendingMin=0,this.itemSizeCacheVersion++);let d=!1,g=0;if(o&&this.scrollOffset!==null){let[h,y]=o,m=this.getMeasurements(),{count:w,getItemKey:S}=this.options,k=0;for(;k<w&&S(k)!==h;)k++;if(k<w){let E=m[k];if(E){let v=E.start+y;v!==this.scrollOffset&&(g=v-this.scrollOffset,this.scrollOffset=v,d=!0)}}}(d||u)&&(this.pendingScrollAnchor=[d?o[0]:null,d?o[1]:0,u,g])},this.notify=t=>{var s,e;(e=(s=this.options).onChange)==null||e.call(s,this,t)},this.maybeNotify=j(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),t=>{this.notify(t)},{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(t=>t()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var t;let s=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==s){if(this.cleanup(),!s){this.maybeNotify();return}if(this.scrollElement=s,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((t=this.scrollElement)==null?void 0:t.window)??null,this.elementsCache.forEach(i=>{this.observer.observe(i)}),this.unsubs.push(this.options.observeElementRect(this,i=>{this.scrollRect=i,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(i,r)=>{this._intendedScrollOffset!==null&&Math.abs(i-this._intendedScrollOffset)<1.5&&(i=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0,this.scrollDirection=r?this.getScrollOffset()<i?"forward":"backward":null,this.scrollOffset=i,this.isScrolling=r,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),"addEventListener"in this.scrollElement){let i=this.scrollElement,r=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},o=()=>{this._iosTouching=!1,!(!Ot()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};i.addEventListener("touchstart",r,X),i.addEventListener("touchend",o,X),this.unsubs.push(()=>{i.removeEventListener("touchstart",r),i.removeEventListener("touchend",o),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}let e=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,e&&this.scrollElement&&this.options.enabled){let[i,r,o,u]=e;i!==null&&!o&&(Ot()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?u!==0&&(this._iosDeferredAdjustment+=u):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),o&&this.scrollToEnd({behavior:o})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;let t=this.getScrollOffset(),s=this.getMaxScrollOffset();if(t<0||t>s)return;let e=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(t,{adjustments:this.scrollAdjustments+=e,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??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(t,s)=>{let e=new Map,i=new Map;for(let r=s-1;r>=0;r--){let o=t[r];if(e.has(o.lane))continue;let u=i.get(o.lane);if(u==null||o.end>u.end?i.set(o.lane,o):o.end<u.end&&e.set(o.lane,!0),e.size===this.options.lanes)break}return i.size===this.options.lanes?Array.from(i.values()).sort((r,o)=>r.end===o.end?r.index-o.index:r.end-o.end)[0]:void 0},this.getMeasurementOptions=j(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode],(t,s,e,i,r,o,u)=>(this.prevLanes!==void 0&&this.prevLanes!==o&&(this.lanesChangedFlag=!0),this.prevLanes=o,this.pendingMin=null,{count:t,paddingStart:s,scrollMargin:e,getItemKey:i,enabled:r,lanes:o,laneAssignmentMode:u}),{key:!1}),this.getMeasurements=j(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:t,paddingStart:s,scrollMargin:e,getItemKey:i,enabled:r,lanes:o,laneAssignmentMode:u},f)=>{let d=this.itemSizeCache;if(!r)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>t)for(let m of this.laneAssignments.keys())m>=t&&this.laneAssignments.delete(m);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(m=>{this.itemSizeCache.set(m.key,m.size)}));let g=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===t&&(this.lanesSettling=!1),o===1){let m=this.options.gap,w=t*2,S=this._flatMeasurements;if(!S||S.length<w){let v=new Float64Array(w);S&&g>0&&v.set(S.subarray(0,g*2)),S=v,this._flatMeasurements=S}let k;if(g===0)k=s+e;else{let v=g-1;k=S[v*2]+S[v*2+1]+m}for(let v=g;v<t;v++){let R=i(v),C=d.get(R),x=typeof C=="number"?C:this.options.estimateSize(v);S[v*2]=k,S[v*2+1]=x,k+=x+m}let E=Re(t,S,i);return this.measurementsCache=E,E}let h=this.measurementsCache.slice(0,g),y=new Array(o).fill(void 0);for(let m=0;m<g;m++){let w=h[m];w&&(y[w.lane]=m)}for(let m=g;m<t;m++){let w=i(m),S=this.laneAssignments.get(m),k,E,v=u==="estimate"||d.has(w);if(S!==void 0&&this.options.lanes>1){k=S;let D=y[k],Z=D!==void 0?h[D]:void 0;E=Z?Z.end+this.options.gap:s+e}else{let D=this.options.lanes===1?h[m-1]:this.getFurthestMeasurement(h,m);E=D?D.end+this.options.gap:s+e,k=D?D.lane:m%this.options.lanes,this.options.lanes>1&&v&&this.laneAssignments.set(m,k)}let R=d.get(w),C=typeof R=="number"?R:this.options.estimateSize(m),x=E+C;h[m]={index:m,start:E,size:C,end:x,key:w,lane:k},y[k]=m}return this.measurementsCache=h,h},{key:!1,debug:()=>this.options.debug}),this.calculateRange=j(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(t,s,e,i)=>this.range=t.length>0&&s>0?fs({measurements:t,outerSize:s,scrollOffset:e,lanes:i,flat:i===1&&this._flatMeasurements!=null?this._flatMeasurements:null}):null,{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=j(()=>{let t=null,s=null,e=this.calculateRange();return e&&(t=e.startIndex,s=e.endIndex),this.maybeNotify.updateDeps([this.isScrolling,t,s]),[this.options.rangeExtractor,this.options.overscan,this.options.count,t,s]},(t,s,e,i,r)=>i===null||r===null?[]:t({startIndex:i,endIndex:r,overscan:s,count:e}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=t=>{let s=this.options.indexAttribute,e=t.getAttribute(s);return e?parseInt(e,10):(console.warn(`Missing attribute name '${s}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=t=>{var s;if(!this.scrollState||this.scrollState.behavior!=="smooth")return!0;let e=this.scrollState.index??((s=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))==null?void 0:s.index);if(e!==void 0&&this.range){let i=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),r=Math.max(0,e-i),o=Math.min(this.options.count-1,e+i);return t>=r&&t<=o}return!0},this.measureElement=t=>{if(!t){this.elementsCache.forEach((r,o)=>{r.isConnected||(this.observer.unobserve(r),this.elementsCache.delete(o))});return}let s=this.indexFromElement(t),e=this.options.getItemKey(s),i=this.elementsCache.get(e);i!==t&&(i&&this.observer.unobserve(i),this.observer.observe(t),this.elementsCache.set(e,t)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(s)&&this.resizeItem(s,this.options.measureElement(t,void 0,this))},this.resizeItem=(t,s)=>{var e,i;if(t<0||t>=this.options.count)return;let r,o,u,f=this._flatMeasurements;if(this.options.lanes===1&&f!==null)u=this.options.getItemKey(t),o=f[t*2],r=f[t*2+1];else{let h=this.measurementsCache[t];if(!h)return;u=h.key,o=h.start,r=h.size}let d=this.itemSizeCache.get(u)??r,g=s-d;if(g!==0){let h=this.options.anchorTo==="end"&&((e=this.scrollState)==null?void 0:e.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,y=h?this.getTotalSize():0,m=((i=this.scrollState)==null?void 0:i.behavior)!=="smooth"&&(this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[t]??{index:t,key:u,start:o,size:r,end:o+r,lane:0},g,this):o<this.getScrollOffset()+this.scrollAdjustments&&(!this.itemSizeCache.has(u)||this.scrollDirection!=="backward"));(this.pendingMin===null||t<this.pendingMin)&&(this.pendingMin=t),this.itemSizeCache.set(u,s),this.itemSizeCacheVersion++,h?this.applyScrollAdjustment(this.getTotalSize()-y):m&&this.applyScrollAdjustment(g),this.notify(!1)}},this.getVirtualItems=j(()=>[this.getVirtualIndexes(),this.getMeasurements()],(t,s)=>{let e=[];for(let i=0,r=t.length;i<r;i++){let o=t[i],u=s[o];e.push(u)}return e},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=t=>{let s=this.getMeasurements();if(s.length===0)return;let e=this._flatMeasurements,i=this.options.lanes===1&&e!=null,r=$e(0,s.length-1,i?o=>e[o*2]:o=>xt(s[o]).start,t);return xt(s[r])},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 t=this.scrollElement.document.documentElement;return this.options.horizontal?t.scrollWidth-this.scrollElement.innerWidth:t.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=(t=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=t,this.getOffsetForAlignment=(t,s,e=0)=>{if(!this.scrollElement)return 0;let i=this.getSize(),r=this.getScrollOffset();s==="auto"&&(s=t>=r+i?"end":"start"),s==="center"?t+=(e-i)/2:s==="end"&&(t-=i);let o=this.getMaxScrollOffset();return Math.max(Math.min(o,t),0)},this.getOffsetForIndex=(t,s="auto")=>{t=Math.max(0,Math.min(t,this.options.count-1));let e=this.getSize(),i=this.getScrollOffset(),r=this.measurementsCache[t];if(!r)return;if(s==="auto")if(r.end>=i+e-this.options.scrollPaddingEnd)s="end";else if(r.start<=i+this.options.scrollPaddingStart)s="start";else return[i,s];if(s==="end"&&t===this.options.count-1)return[this.getMaxScrollOffset(),s];let o=s==="end"?r.end+this.options.scrollPaddingEnd:r.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(o,s,r.size),s]},this.scrollToOffset=(t,{align:s="start",behavior:e="auto"}={})=>{let i=this.getOffsetForAlignment(t,s),r=this.now();this.scrollState={index:null,align:s,behavior:e,startedAt:r,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:e}),this.scheduleScrollReconcile()},this.scrollToIndex=(t,{align:s="auto",behavior:e="auto"}={})=>{t=Math.max(0,Math.min(t,this.options.count-1));let i=this.getOffsetForIndex(t,s);if(!i)return;let[r,o]=i,u=this.now();this.scrollState={index:t,align:o,behavior:e,startedAt:u,lastTargetOffset:r,stableFrames:0},this._scrollToOffset(r,{adjustments:void 0,behavior:e}),this.scheduleScrollReconcile()},this.scrollBy=(t,{behavior:s="auto"}={})=>{let e=this.getScrollOffset()+t,i=this.now();this.scrollState={index:null,align:"start",behavior:s,startedAt:i,lastTargetOffset:e,stableFrames:0},this._scrollToOffset(e,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:t="auto"}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:"end",behavior:t});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:t})},this.getTotalSize=()=>{var t;let s=this.getMeasurements(),e;if(s.length===0)e=this.options.paddingStart;else if(this.options.lanes===1){let i=s.length-1,r=this._flatMeasurements;r!=null?e=r[i*2]+r[i*2+1]:e=((t=s[i])==null?void 0:t.end)??0}else{let i=Array(this.options.lanes).fill(null),r=s.length-1;for(;r>=0&&i.some(o=>o===null);){let o=s[r];i[o.lane]===null&&(i[o.lane]=o.end),r--}e=Math.max(...i.filter(o=>o!==null))}return Math.max(e-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{let t=[];if(this.itemSizeCache.size===0)return t;let s=this.getMeasurements();for(let e of s)e&&this.itemSizeCache.has(e.key)&&t.push({index:e.index,key:e.key,start:e.start,size:e.size,end:e.end,lane:e.lane});return t},this._scrollToOffset=(t,{adjustments:s,behavior:e})=>{this._intendedScrollOffset=t+(s??0),this.options.scrollToFn(t,{behavior:e,adjustments:s},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(a)}applyScrollAdjustment(a,t){a!==0&&(Ot()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=a:this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=a,behavior:t}))}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId==null&&(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 s=this.scrollState.index!=null?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,e=s?s[0]:this.scrollState.lastTargetOffset,i=1,r=e!==this.scrollState.lastTargetOffset;if(!r&&De(e,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=i){this.getScrollOffset()!==e&&this._scrollToOffset(e,{adjustments:void 0,behavior:"auto"}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,r){let o=this.getSize()||600,u=Math.abs(e-this.getScrollOffset()),f=this.scrollState.behavior==="smooth"&&u>o;this.scrollState.lastTargetOffset=e,f||(this.scrollState.behavior="auto"),this._scrollToOffset(e,{adjustments:void 0,behavior:f?"smooth":"auto"})}this.scheduleScrollReconcile()}},$e=(n,a,t,s)=>{for(;n<=a;){let e=(n+a)/2|0,i=t(e);if(i<s)n=e+1;else if(i>s)a=e-1;else return e}return n>0?n-1:0};function fs({measurements:n,outerSize:a,scrollOffset:t,lanes:s,flat:e}){let i=n.length-1,r=e?d=>e[d*2]:d=>n[d].start,o=e?d=>e[d*2]+e[d*2+1]:d=>n[d].end;if(n.length<=s)return{startIndex:0,endIndex:i};let u=$e(0,i,r,t),f=u;if(s===1)for(;f<i&&o(f)<t+a;)f++;else if(s>1){let d=Array(s).fill(0);for(;f<i&&d.some(h=>h<t+a);){let h=n[f];d[h.lane]=h.end,f++}let g=Array(s).fill(t+a);for(;u>=0&&g.some(h=>h>=t);){let h=n[u];g[h.lane]=h.start,u--}u=Math.max(0,u-u%s),f=Math.min(i,f+(s-1-f%s))}return{startIndex:u,endIndex:f}}var Ve={assistant:re,tool:ot,"tool-result":it,approval:vt,status:gt,error:ae,line:gt,reasoning:oe,steer:le,usage:ie},ms=n=>!!(n.detail||n.result?.detail)||n.title.length>120||n.title.includes(`
2
+ `);function ps(n,a){let[,t]=pt(i=>i+1,0),s={count:n,estimateSize:()=>30,overscan:16,getScrollElement:()=>window,observeElementRect:Fe,observeElementOffset:We,scrollToFn:Ne,scrollMargin:a.current?a.current.getBoundingClientRect().top+scrollY:0,onChange:()=>t(0)},[e]=A(()=>new ct(s));return e.setOptions(s),st(()=>e._didMount(),[]),st(()=>e._willUpdate()),e}function je(n){let[,a]=pt(t=>t+1,0);Ut(n?async()=>a(0):void 0,1e3)}function Pe(n,a){let t=n.findLastIndex(s=>s.kind==="assistant"||s.kind==="reasoning");return(s,e)=>a&&!s.result&&(s.state!==void 0||s.kind==="tool"&&e>t)}function gs({row:n,running:a}){je(a);let t=n.result,s=a?Math.max(0,Date.now()-n.at):t?.durationMs,e=[n.state,t&&!t.ok&&t.exitCode!==void 0?`exit ${t.exitCode}`:"",s?$(s):""].filter(Boolean).join(" \xB7 ");return l("span",{class:`act-state${t&&!t.ok?" bad":""}`,children:[a?l("i",{class:"spin"}):t?l(_,{d:t.ok?it:J}):null,e]})}function vs({row:n,tz:a,open:t,running:s,onToggle:e}){let i=z(null),[r,o]=A(!1);st(()=>{i.current&&o(i.current.scrollWidth>i.current.clientWidth)},[n.title]);let u=t||r||ms(n),f=n.tone==="error",d=n.kind==="tool"||n.state!==void 0,g=n.kind==="tool-result"?[n.tool,n.exitCode!==void 0?`exit ${n.exitCode}`:void 0,n.durationMs?$(n.durationMs):void 0].filter(Boolean).join(" \xB7 "):n.kind==="reasoning"&&n.durationMs?$(n.durationMs):"";return l("div",{class:`act ${n.kind}${n.tone?` ${n.tone}`:""}${d?" timed":""}${t?" open":""}${u?" fold":""}`,...u?{role:"button",tabIndex:0,"aria-expanded":t,onClick:()=>getSelection()?.isCollapsed!==!1&&e(),onKeyDown:h=>{h.key!=="Enter"&&h.key!==" "||(h.preventDefault(),e())}}:{},children:[l("time",{children:ye(n.at,a)}),l(_,{d:n.kind==="tool-result"&&f?J:Ve[n.kind]}),l("span",{class:"act-text",children:[l("span",{class:"act-title",ref:i,children:n.title}),g?l("span",{class:"act-detail",children:g}):null,n.detail&&(t||!n.state)?l("span",{class:"act-detail",children:n.detail}):null,t&&n.result?.detail?l("span",{class:"act-detail",children:n.result.detail}):null]}),d?l(gs,{row:n,running:s}):null,u?l(_,{d:nt,class:"act-chev"}):null]})}function Be({rows:n,live:a,tz:t,at:s}){let e=z(null),[i,r]=A(()=>new Set(typeof s=="number"?[s]:[])),{following:o,follow:u}=at(s===void 0?a:s==="end"),f=ps(n.length,e),d=Pe(n,a);return W(()=>{let g=n.findIndex(E=>E.seq===s);if(g<0||!e.current)return;let h=e.current.getBoundingClientRect().top+scrollY;f.setOptions({...f.options,scrollMargin:h}),scrollTo({top:f.getOffsetForIndex(g,"center")?.[0]??0});let y=60,m=0,w=0,S=()=>{cancelAnimationFrame(w);for(let E of["wheel","touchstart","keydown"])removeEventListener(E,S)},k=()=>{let E=e.current?.querySelector(".act-slot.at");if(E){let v=parseFloat(getComputedStyle(E).scrollMarginTop),R=document.querySelector("form.reply")?.getBoundingClientRect().top??innerHeight,C=E.getBoundingClientRect(),x=C.top-(C.height>R-v?v:(v+R-C.height)/2);Math.abs(x)<1?m++:scrollBy(0,x)}m<3&&--y?w=requestAnimationFrame(k):S()};for(let E of["wheel","touchstart","keydown"])addEventListener(E,S,{passive:!0});return w=requestAnimationFrame(k),S},[]),n.length?l(F,{children:[l("div",{class:"act-list",ref:e,style:`height:${f.getTotalSize()}px`,role:"log","aria-live":"off",children:f.getVirtualItems().map(g=>{let h=n[g.index];return l("div",{class:h.seq===s?"act-slot at":"act-slot","data-index":g.index,ref:f.measureElement,style:`transform:translateY(${g.start-f.options.scrollMargin}px)`,children:l(vs,{row:h,tz:t,open:i.has(h.seq),running:d(h,g.index),onToggle:()=>r(y=>{let m=new Set(y);return m.delete(h.seq)||m.add(h.seq),m})})},h.seq)})}),o?null:l("button",{type:"button",class:"jump",onClick:u,children:"Jump to latest"})]}):l("p",{class:"act-empty muted",children:a?"Nothing yet. Events appear here as the task runs.":"No activity recorded."})}var qe=new Set(["tool","tool-result","approval"]);function Ct(n,a){let t=n.filter(o=>o.kind==="tool").length,s=n.filter(o=>o.kind==="approval"&&o.result?.ok).length,e=n.filter(o=>o.kind==="approval"&&o.result?.ok===!1).length,i=n.filter(o=>o.kind==="tool"?o.result?.ok===!1:o.kind==="tool-result"&&o.tone==="error").length,r=n.reduce((o,u)=>o+(u.kind==="reasoning"?u.durationMs??0:0),0);return[t?`${t} tool ${t===1?"call":"calls"}`:"",s?`${s} approved`:"",e?`${e} denied`:"",i?`${i} failed`:"",r?`reasoning ${$(r)}`:"",a===void 0?"":$(a)].filter(Boolean).join(" \xB7 ")}function bs({row:n,running:a,onOpen:t}){let s=a&&n.state==="waiting",e=n.result?!n.result.ok:n.tone==="error",i=s?vt:n.result?n.result.ok?it:J:e?J:Ve[n.kind];return l("button",{type:"button",class:`act step ${n.kind}${s||n.tone==="warning"?" warning":e?" error":""}`,onClick:t,children:[a&&!s?l("i",{class:"spin"}):l(_,{d:i}),l("span",{class:"act-text",children:[l("span",{class:"act-title",children:s?"Waiting for your approval":n.title}),s?l("span",{class:"act-detail",children:n.title}):null]},n.seq),l("span",{class:"act-state",children:a&&!s?n.state??"running":ke(n.at+(n.result?.durationMs??0))}),l(_,{d:H,class:"act-chev"})]})}function Ke({rows:n,startedAt:a,onOpen:t}){je(!0);let s=Pe(n,!0),e=n.findIndex(d=>qe.has(d.kind)),r=[...(e<0?n:n.slice(0,e)).filter(d=>d.kind==="status"||d.kind==="error").map(d=>({row:d,running:!1})),...n.flatMap((d,g)=>qe.has(d.kind)?[{row:d,running:s(d,g)}]:[])],o=r.filter(d=>d.running&&d.row.state==="waiting"),u=r.filter(d=>!o.includes(d)),f=[...o,...u.slice(Math.max(0,u.length-2+o.length))].slice(0,2);return l("div",{class:"body run",children:[l("button",{type:"button",class:"act run-sum",onClick:()=>t("end"),children:[Ct(n,a===void 0?void 0:Date.now()-a),l(_,{d:H,class:"act-chev"})]}),l("div",{class:r.length>f.length?"run-steps earlier":"run-steps",children:f.map((d,g)=>l(bs,{...d,onOpen:()=>t(d.row.seq)},g))}),l(Y,{inline:!0,dots:!0,label:"The result appears here when the task finishes."})]})}var He=n=>n.split("/")[1]??n;function ut(n,a){if(typeof n=="string")return n;if(!n||typeof n!="object")return a;let t=n;for(let s of["output","answer","message"])if(typeof t[s]=="string")return t[s];return a}function Ss(n,a,t){let{event:s}=n.task;return se(a)??(t&&s?.actor&&a===s.text?[{author:s.actor.login!==s.actor.id?s.actor.login??"":"",text:a}]:[{author:"Prompt",text:a}])}var Je=(n,a)=>n.logSeq!==void 0?a.seq<n.logSeq:n.finishedAt===void 0||a.at<=n.finishedAt;function ys(n,a){let t=n.map(()=>[]);for(let s of a){let e=s.entry?.kind==="reply"?s.entry.message:void 0;if(!e)continue;let i=n.findIndex(r=>Je(r,s));t.at(i).push(e)}return t}function Ye(n){return n.trim().replace(/^`+|`+$/g,"").trim()===Zt}function ks({value:n,required:a}){let t=ut(n,"Result received.");if(Ye(t))return l("p",{class:"body muted",children:a?te:Qt});let s;if(/^\s*[[{]/.test(t))try{s=JSON.parse(t)}catch{}return s&&typeof s=="object"?l("pre",{class:"body json",children:JSON.stringify(s,null,2)}):l("div",{class:"body md",children:At(t)})}function Es(){let n=Gt(),a=yt();return l(ge,{href:"/dash/[org]/tasks",params:{org:a},label:"Tasks",back:n.get("back")})}function ws({task:n,tz:a}){let t=yt(),s=q(n),e=Ae(n),i=n.task.event?.integration??n.task.source,r=n.task.event?.type??(n.task.flow!=="default"?n.task.flow:void 0),o=K(()=>lt(n).split(`
3
+ `)[0],[n.task,n.turns]);return l(ve,{back:l(Es,{}),title:o,meta:l(F,{children:[l(me,{status:n.status,approvals:n.approvals}),n.archivedAt?l(fe,{children:"archived"}):null,n.task.access==="read-only"?l(pe,{}):null]}),lead:l(F,{children:[l("span",{class:"fact",title:`Created ${Et(n.createdAt,a)}`,children:[l(_,{d:ue}),Et(n.createdAt,a,!0),n.startedAt&&n.finishedAt?`, ran ${$(n.finishedAt-n.startedAt)}`:null]}),l("span",{class:"fact",title:"Source",children:[l(_,{d:n.task.event?de:ot}),r?`${Tt(i)} ${r}`:Tt(i)]}),n.task.cwd?l("span",{class:"fact",title:n.task.cwd,children:[l(_,{d:ce}),Me(n.task.cwd)]}):null,l("span",{class:"fact",children:[l(Xt,{class:"agent-link",href:"/dash/[org]/agents/[slug]",params:{org:t,slug:n.task.agent},search:{back:`/dash/${t}/tasks/${n.task.id}`},children:[l(_,{d:ne}),n.task.agent]}),e?l("span",{class:"fact-dim",title:"Engine, model and effort",children:e}):null]})]}),actions:l(xe,{task:n,live:s})})}function Ts(n){let a=z();return K(()=>{let t=a.current??={log:new ee,rows:[],seen:0};for(let s of n.slice(t.seen))for(let e of t.log.reduce(s))e.seq>(t.rows.at(-1)?.seq??-1)?t.rows.push(e):t.rows[t.rows.findLastIndex(({seq:i})=>i===e.seq)]=e;return t.seen=n.length,[...t.rows]},[n])}function wn({initial:n,tz:a,me:t}){let s=Jt(a),[e,i]=A(n),[r,o]=A(n.logs??[]),[u,f]=A((n.logs?.length??0)<As),[d,g]=A("conversation"),[h,y]=A(),[m,w]=A([]),[S,k]=A(0),E=z(e.answer?.length??0),[v,R]=A(!1),C=z(n.logs?.at(-1)?.seq??-1),x=z(null),D=z(null);W(()=>{let c=D.current,p=c?.closest(".page");if(!c||!p)return;let b=new ResizeObserver(()=>p.style.setProperty("--reply",`${c.offsetHeight}px`));return b.observe(c),()=>b.disconnect()},[e.task.flow]);let{follow:Z}=at(),It=wt({toast:"Not sent"}),Ue=wt({toast:"Not sent"}),dt=!!It.pending,I=q(e),zt=e.task.flow==="default",_t=Ts(r);W(()=>be(e.task.id,e.status,lt(e)),[e.status]);let Rt=z([]),Ge=c=>{let p=c.filter(b=>b.seq>C.current);p.length&&(C.current=p.at(-1).seq,Rt.current.push(...p)===p.length&&setTimeout(()=>{let b=Rt.current.splice(0);o(M=>[...M,...b])}))};W(()=>{I&&zt&&x.current?.focus()},[]);let[Dt,Xe]=A(!0),[Lt,Ze]=A(!0);W(()=>{let c=()=>{Xe(document.visibilityState==="visible"),Ze(document.hasFocus())};return c(),addEventListener("visibilitychange",c),addEventListener("focus",c),addEventListener("blur",c),()=>{removeEventListener("visibilitychange",c),removeEventListener("focus",c),removeEventListener("blur",c)}},[]);let[ht,Q]=A(I||!u),[Qe,ts]=A(0),Ft=()=>{f(!1),Q(!0),ts(c=>c+1)},[Wt,es]=A(0),B=z(0);B.current=Wt;let ft=()=>{let c=B.current;P.tasks.get(e.task.id).then(({logs:p,...b})=>{B.current===c&&(i(b),q(b)&&Q(!0))}).catch(p=>kt("Task not refreshed",Ee(p)))},ss=()=>{ft(),ht||Ft()},Nt=()=>{let c=++B.current;es(c),Q(!0),P.tasks.get(e.task.id).then(({turns:p})=>{B.current===c&&i(b=>q(b)?{...b,turns:p}:b)}).catch(p=>console.error("coder dashboard: task turns",p))};Se(c=>{if(c.id!==e.task.id||c.deleted)return;I&&!q(c)&&ft();let p=I&&e.startedAt!==void 0&&c.startedAt!==e.startedAt;q(c)&&(!I||p)&&Nt(),!I&&!q(c)&&c.finishedAt!==e.finishedAt&&(ft(),Ft()),i(b=>({...b,status:c.status,approval:c.approval??void 0,approvals:c.approvals??void 0,archivedAt:c.archivedAt,startedAt:c.startedAt,finishedAt:c.finishedAt,...c.result===void 0?{}:{result:c.result??void 0,error:c.error??void 0,answer:c.answer??void 0}}))},ss),W(()=>{if(!ht||!Dt)return;let c=new AbortController;return(async()=>{for(;!c.signal.aborted;){try{let b=await P.tasks.stream(e.task.id,C.current,c.signal);if(!b.ok||!b.body){kt("Live updates stopped","Reload the page to see new activity.");return}for await(let M of Yt(b.body)){if(c.signal.aborted)return;if(M.event==="log")Ge([JSON.parse(M.data)]);else if(M.event==="caught-up")f(!0);else if(M.event==="end")return f(!0),Q(!1)}}catch(b){if(c.signal.aborted)return;console.error("coder dashboard: task stream",b)}await new Promise(b=>setTimeout(b,Lt?1e3:5e3))}})(),()=>c.abort()},[ht,Dt,Lt,Wt,Qe]);let O=e.turns??[{prompt:e.task.prompt??e.task.event?.text??lt(e),result:e.result,error:e.error,finishedAt:e.finishedAt}],$t=K(()=>O.map((c,p)=>({messages:Ss(e,c.prompt,p===0),required:Te(e,c.prompt)})),[O,e.task]),ns=K(()=>ys(O,r),[O,r]),qt=O.findIndex(c=>!u&&(!r.length||Je(c,r.at(-1)))),Vt=qt<0?O:O.slice(0,qt),is=(e.approvals??[]).filter(c=>c.response),jt=async()=>{let c=x.current?.value.trim();if(!c||dt)return;let p=I?v?"ask":"steer":"continue";if(Z(),p==="ask"){x.current.value="",w(M=>[...M,{kind:p,text:c,turn:O.length-1}]),k(M=>M+1),g("conversation"),Ue.run(p,()=>P.tasks.ask(e.task.id,c)).then(M=>{k(L=>L-1),M||w(L=>L.filter(N=>N.text!==c||N.kind!==p))});return}await It.run(p,()=>P.tasks.steer(e.task.id,c))&&(x.current.value="",p==="continue"?(Nt(),i(M=>({...M,status:"queued",result:void 0,error:void 0,startedAt:void 0,finishedAt:void 0,turns:[...O.map((L,N)=>N===O.length-1?{...L,finishedAt:L.finishedAt??Date.now()}:L),{prompt:c}]}))):(w(M=>[...M,{kind:p,text:c,turn:O.length-1}]),tt()))},tt=c=>{y(c),g("activity")},Pt=l(bt,{variant:"ghost",size:"sm",rightIcon:H,onClick:()=>tt("end"),children:"Activity"}),Bt=_t.filter(c=>c.at>=(e.startedAt??0)),mt=!I&&e.startedAt&&e.finishedAt?l("p",{class:"run-foot",children:[Ct(Bt,e.finishedAt-e.startedAt),Pt]}):null,Kt=c=>{R(c),setTimeout(()=>x.current?.focus())};return l(F,{children:[l(ws,{task:e,tz:s}),e.fallbacks?.map((c,p)=>l("p",{class:"flash",role:"status",children:[He(c.model)," was unavailable. ",c.detail," This task is using"," ",He(c.next),c.next===c.model?" on another credential":"","."]},p)),l("nav",{class:"tabs",role:"tablist","aria-label":"Task",children:we.map(c=>{let p=c.toLowerCase();return l("button",{type:"button",role:"tab","aria-selected":d===p,"aria-current":d===p?"page":void 0,onClick:()=>p==="activity"?tt():g(p),children:c},p)})}),d==="activity"?l(Be,{rows:_t,live:I,tz:s,at:h}):l(F,{children:[l(ze,{task:e,me:t}),l("div",{class:"convo",children:[Vt.map((c,p)=>{let b=p===O.length-1,M=ns[p],L=M.length>0&&Ye(ut(c.result,""))?null:l(ks,{value:c.result,required:$t[p].required}),N=c.approval?e.approvals?.find(T=>T.id===c.approval):void 0;return l(F,{children:[N?l(Ie,{approval:N}):null,(N?[]:$t[p].messages).map((T,V)=>l("div",{class:"turn prompt",children:[T.author?l("p",{class:"who",children:T.author}):null,l(_e,{class:"prose",children:T.text})]},`p${V}`)),b?(e.answer??[]).slice(0,E.current).map((T,V)=>l("div",{class:"turn answer",children:[l("p",{class:"who",children:"Answer"}),l("div",{class:"prose",children:ut(T,"Answer received.")})]},`a${V}`)):null,M.map((T,V)=>l("div",{class:"turn reply",children:[l("p",{class:"who",children:e.task.agent}),l("div",{class:"prose md",children:At(T)})]},`r${V}`)),m.filter(T=>T.turn===p).map((T,V)=>{let et=T.kind==="ask"?m.filter(os=>os.kind==="ask").indexOf(T):-1,Ht=et<0?void 0:e.answer?.[E.current+et];return l("div",{class:et<0?"turn you":"turn you qa",children:[l("p",{class:"who",children:T.kind==="ask"?"You asked":"You steered"}),l("div",{class:"prose",children:T.text}),et<0?null:l("div",{class:"answer",children:[l("p",{class:"who",children:"Answer"}),Ht===void 0?l(Y,{inline:!0,dots:!0,label:"Answering without interrupting the run."}):l("div",{class:"prose",children:ut(Ht,"Answer received.")})]})]},V)}),is.filter(T=>Oe(O,T)===p).map(T=>l(Ce,{approval:T},T.id)),c.result&&(L||b&&mt)?l(rt,{title:"Result",children:[L,b?mt:null]}):b&&I?l(rt,{title:"Result",actions:Pt,children:l(Ke,{rows:Bt,startedAt:e.startedAt,onOpen:tt})}):null,c.error?l(rt,{tone:"danger",title:"Error",children:[l("div",{class:"body prose",children:c.error}),b&&!c.result?mt:null]}):null]},p)}),Vt.length<O.length?l(Y,{label:"Loading the conversation."}):null]})]}),zt?l("form",{ref:D,class:"reply",onSubmit:c=>{c.preventDefault(),jt()},children:l("div",{class:"reply-box",children:[I?l(he,{summary:l(F,{children:[v?"Ask":"Steer",l(_,{d:nt})]}),summaryClass:"mode",label:"Send as",align:"up",wide:!0,children:[l(St,{on:!v,onPick:()=>Kt(!1),sub:"Change course while it works.",children:"Steer"}),l(St,{on:v,onPick:()=>Kt(!0),sub:"A question that does not interrupt it.",children:"Ask"})]}):null,l("textarea",{ref:x,rows:1,"aria-label":"Message",autofocus:I,placeholder:I?v?"Ask about the run without interrupting it.":"Steer the agent while it works.":"Continue the conversation.",onKeyDown:c=>{c.key!=="Enter"||c.shiftKey||c.isComposing||(c.preventDefault(),jt())}}),l(bt,{type:"submit",size:"sm",disabled:dt,"aria-busy":dt||S>0,children:"Send"})]})}):l("p",{class:"muted no-reply",children:"This flow takes no follow-ups."})]})}var As=500;export{wn as TaskView};
@@ -1 +1 @@
1
- "use client";import{b as N,f as te}from"./task-actions-5917357eac6504ca.js";import{a as ct}from"./agent-pills-9f6fa120182db948.js";import{a as Xt}from"./tail-d13c4cc0cf11ffd1.js";import{b as Qt}from"./composer-92553de43276510b.js";import"./composer-data-890f71bade4f0616.js";import{b as Ht,c as jt,d as Gt,e as at,f as dt,g as Kt,h as Vt,i as Wt,k as Yt,l as Jt,m as Zt}from"./task-423e6a3f2527f534.js";import"./connect-repositories-226bf70aa81c29d8.js";import"./shared-init-b42d2c06c25d1e2b.js";import"./shared-init-b42d2c06c25d1e2b.js";import"./model-options-d29e934a3de20ab4.js";import"./types-3eca2c7f47c46054.js";import"./segmented-f646bfa8aa0aa449.js";import{a as zt}from"./confirm-d6b2c5b1deccd1e8.js";import"./field-4d374d5ed3f43d7e.js";import{$1b as Ut}from"./shared-init-953965859f7bf6b9.js";import{$0a as Bt,$0c as $t,$0d as Ft,$0f as W}from"./shared-init-953965859f7bf6b9.js";import"./back-2d67134b122334f4.js";import{$4j as _t,$4p as qt}from"./shared-init-926144b364908b3c.js";import{$0D as it,$0a as wt,$0k as x,$0t as It,$0u as Lt,$0v as xt,$0w as Nt,$0x as Ot}from"./shared-init-926144b364908b3c.js";import{$3c as S,$3f as Rt,$3k as rt,$3o as V,$3q as st,$3s as Et,$3v as Mt}from"./shared-init-926144b364908b3c.js";import"./wular-pnext-9b28886f3cbe0ed3-0.js";import"./shared-init-926144b364908b3c.js";import{$2A as Tt,$2B as Ct,$2K as At,$2L as Dt,$2M as St,$2N as Pt,$2Q as t,$2R as H,$2S as K,$2b as bt,$2c as ot,$2l as vt}from"./shared-init-926144b364908b3c.js";import{$1b as kt}from"./shared-init-9b28886f3cbe0ed3-2.js";import"./shared-init-9b28886f3cbe0ed3-2.js";import"./shared-init-9b28886f3cbe0ed3-2.js";import{$3b as b,$3c as M,$3d as yt,$3h as T,$3j as z,$3k as nt,$3l as w}from"./shared-init-9b28886f3cbe0ed3-2.js";var ue=Symbol.for("pnext.dynamic");function ne(n,r={},d){let a=null,p=null,s=!1,c=typeof n=="string"?()=>{throw new Error(`dynamic(${JSON.stringify(n)}) was not compiled by PNext.`)}:n,h=()=>(p??=Promise.resolve(c()).then(i=>(a=typeof i=="function"?i:i.default,a)),p);function v(i){let m=w(null),[A,k]=T(0);if(nt(()=>{m.current?.hasAttribute("data-pnext-loading")&&k(1)},[]),a)return b("pnext-dynamic",{key:A,ref:m,style:ee},b(a,i));let C=r.loading;if(s)return b("pnext-dynamic",{ref:m,style:ee,"data-pnext-loading":""},C?b(C,i):null);throw typeof window>"u"?h().then(()=>{},()=>{s=!0}):h()}function l(i){let[m,A]=T(null),[k,C]=T(()=>r.load!=="visible"),g=w(null);if(nt(()=>{a&&A(()=>a)},[]),z(()=>{if(m||k)return;let P=g.current;if(!P||typeof IntersectionObserver>"u"){C(!0);return}let R=new IntersectionObserver(J=>{J.some(_=>_.isIntersecting)&&(R.disconnect(),C(!0))},{rootMargin:r.rootMargin,threshold:r.threshold});return R.observe(P),()=>R.disconnect()},[m,k]),z(()=>{if(m||!k)return;let P=!1;return h().then(R=>{P||A(()=>R)}),()=>{P=!0}},[m,k]),m)return b(m,i);let I=r.loading;return r.load==="visible"?b("div",{ref:g},I?b(I,i):null):I?b(I,i):null}let D=r.ssr===!1||r.load==="visible"?l:i=>typeof window>"u"?b(v,i):b(lt,{fallback:r.loading?b(r.loading,i):null},b(v,i));return D[ue]={load:h,target:d},D}var ee={display:"contents"},pe=32,lt=class extends yt{__c(r,d){this.setState({waiting:!0,held:(d.__u&pe)!==0}),r.then(()=>this.setState({waiting:!1}))}componentDidCatch(r){if(!(r instanceof Promise))throw r;this.__c(r,this.__v.__k[0])}shouldComponentUpdate(r,d){return!(d.waiting&&d.held)}render(){return this.state.waiting&&!this.state.held?this.props.fallback:this.props.children}};var oe=3;function re({rows:n,me:r}){let[d,a]=T([]),[p,s]=T(!1),c=n.filter(l=>!d.includes(l.task.id)&&N(l));if(!c.length)return null;let h=p?c:c.slice(0,oe),v=l=>D=>{a(i=>[...i,l]),D.then(i=>i||a(m=>m.filter(A=>A!==l)))};return t(V,{tone:"accent",title:"Pending approvals",count:c.length,actions:c.length>oe?t(K,{variant:"secondary",size:"sm",onClick:()=>s(!p),children:p?"Show fewer":`Show all ${c.length}`}):void 0,children:t("ul",{class:p?"approval-queue scroll-box":"approval-queue",children:h.map(l=>t(te,{task:l,me:r,queue:{onSent:v(l.task.id)}},l.task.id))})})}var me=ne(()=>import("./composer-4a46a458495ce3ba.js").then(n=>n.NewTaskButton),{loading:()=>t(K,{class:"new-task",leftIcon:Ct,disabled:!0,children:"New task"})}),fe={dashboard:vt,cli:At,schedule:St},ie=n=>fe[n]??Pt,se=200;function he(n,r,d){if(n===void 0)return"Not available";let a=Math.round((r-n)/6e4);return a<1?"just now":a<60?`${a} min ago`:a<1440?`${Math.round(a/60)} h ago`:$t(n,d)}function ge({task:n,brand:r,back:d,scoped:a,tz:p,now:s,onDone:c}){let h=it(),v=dt(n)&&n.startedAt!==void 0?s-n.startedAt:n.lastTurnMs,l=n.task.event?.integration??n.task.source??"dashboard",D=n.task.event?.type??(n.task.flow==="default"?void 0:n.task.flow);return t("tr",{children:[t("td",{children:[t(bt,{class:"cover",href:"/dash/[org]/tasks/[id]",params:{org:h,id:n.task.id},search:d?{back:d}:void 0,children:Yt(n)}),t("span",{class:"sub",children:[a?null:t(M,{children:[t(H,{d:ot}),n.task.agent]}),D,n.task.cwd?t("span",{title:n.task.cwd,children:[t(H,{d:Dt}),Zt(n.task.cwd)]}):null].filter(Boolean).map((i,m)=>t(M,{children:[m?" \xB7 ":null,i]},m))})]}),t("td",{children:t(_t,{status:n.status,approvals:n.approvals})}),t("td",{class:"model",title:Jt(n),children:n.model??n.task.usage?.model??n.task.definition?.model}),t("td",{class:"when",title:Bt(n.lastActivityAt,p),children:he(n.lastActivityAt,s,p)}),t("td",{class:"num",children:n.startedAt===void 0?null:Ft(v)}),t("td",{children:[t("span",{class:"source",title:at(l),children:[r?t(ct,{brand:r}):t(H,{d:ie(l)}),at(l)]}),t("span",{class:"row-acts",children:t(ye,{task:n,onDone:c})})]})]})}function ye({task:n,onDone:r}){let d=Ut(),[a,p]=T(!1),s=N(n),c=(h,v)=>void d.run(h,()=>h==="approve"?S.tasks.approve(n.task.id,s?.id??"",v??"decline"):h==="delete"?S.tasks.delete(n.task.id):S.tasks[h](n.task.id)).then(l=>{l&&r(h),p(!1)});return t(M,{children:[t(Rt,{summary:t(H,{d:Tt}),button:"icon",label:"Task actions",align:"right",children:[s?t(x,{title:"Approve",onClick:()=>c("approve","accept")}):null,s?t(x,{title:"Deny",onClick:()=>c("approve","decline")}):null,dt(n)?t(x,{title:"Stop",onClick:()=>c("cancel")}):null,n.archivedAt?null:t(x,{title:"Archive",onClick:()=>c("archive")}),t(x,{title:"Delete",danger:!0,onClick:()=>p(!0)})]}),t(zt,{open:a,title:"Delete this task?",body:"Its conversation, activity and diff go with it.",confirmLabel:"Delete",busy:d.pending==="delete",onConfirm:()=>c("delete"),onClose:()=>p(!1)})]})}function fn({first:n,platforms:r,brands:d={},agents:a=[],filters:p,agent:s,head:c,missing:h,pendingApprovals:v,me:l,tz:D,now:i}){let m=kt(D),A=it(),{values:k,set:C,query:g}=Lt(p),I=It(p),P=s?`&agent=${encodeURIComponent(s)}`:"",R=s?`/dash/${A}/agents/${encodeURIComponent(s)}/tasks`:`/dash/${A}/tasks`,J=g||s?`${R}${g?`?${g}`:""}`:void 0,_={limit:Mt,summary:!0,counts:!0,...jt(k),agent:s??k.agent},ut=[{key:"status",label:"Status",options:Ht,inline:!0},{key:"source",label:"Source",options:[...Gt,...r],icon:e=>d[e]?t(ct,{brand:d[e]}):ie(e)}];s||ut.push({key:"agent",label:"Agent",options:a,icon:()=>ot,search:(e,u)=>S.agents.list({cursor:"",limit:u,q:e}).then(o=>o.items.map(y=>[y.id,y.name]))});let O=Et({name:`tasks${P}`,fetchPage:e=>S.tasks.list({..._,cursor:e}),query:g,first:n,initial:I}),[L,j]=T({rows:{},added:[]}),[pt,ae]=T({query:g,ids:[]}),de=pt.query===g?pt.ids:[],q=e=>ae(u=>({query:g,ids:e(u.query===g?u.ids:[])})),Z=Vt(O.rows,L.query===g?L.added:[],L.rows).filter(e=>!de.includes(e.task.id)),E=(L.query===g?L.counts:void 0)??O.meta.counts,B=w(),$=w(!1),Q=w(!1),mt=w(),ft=w(!1),X=w(0),F=w(0),G=w({}),U=()=>{if(document.visibilityState==="hidden")return void(Q.current=!0);if(B.current)return void($.current=!0);let e=B.current=Date.now(),u=F.current;S.tasks.list({..._,cursor:""}).then(o=>{F.current===u&&(j(y=>({rows:{...y.rows,...Object.fromEntries(o.items.filter(f=>(G.current[f.task.id]??0)<=e).map(f=>[f.task.id,{...y.rows[f.task.id],...f}]))},added:Kt(y.query===g?y.added:[],o.items),counts:o.counts,query:g})),X.current=0)}).catch(()=>{X.current++,$.current=!0}).finally(()=>{if(!ft.current){if(!$.current)return void(B.current=void 0);$.current=!1,mt.current=setTimeout(()=>{B.current=void 0,tt.current()},Math.min(3e4,1e3*2**X.current))}})},tt=w(U);tt.current=U,z(()=>{let e=()=>{document.visibilityState!=="visible"||!Q.current||(Q.current=!1,tt.current())};return addEventListener("visibilitychange",e),()=>{removeEventListener("visibilitychange",e),clearTimeout(mt.current),ft.current=!0}},[]);let ce=wt(),le=()=>{F.current++,G.current={},j({rows:{},added:[]}),q(()=>[]),ce.refresh()},ht=e=>{let u=Z.find(o=>o.task.id===e.id);if(!u){e.deleted||e.archivedAt&&k.status!=="archived"?q(o=>[...o,e.id]):q(o=>o.includes(e.id)?o.filter(y=>y!==e.id):o),j(o=>{let{[e.id]:y,...f}=o.rows;return y?{...o,rows:f}:o}),(e.deleted||(s||k.agent||e.agent)===e.agent)&&U();return}if(G.current[e.id]=Date.now(),B.current&&($.current=!0),(e.deleted||e.status!==u.status||!!e.archivedAt!=!!u.archivedAt||!!N(u)!=!!N({approval:e.approval,approvals:e.approvals}))&&U(),e.deleted||e.archivedAt&&k.status!=="archived")return q(o=>[...o,e.id]);j(o=>{let y=o.rows[e.id]??u;return{...o,rows:{...o.rows,[e.id]:{...y,status:e.status,approval:e.approval??void 0,approvals:e.approvals??void 0,archivedAt:e.archivedAt,startedAt:e.startedAt,finishedAt:e.finishedAt}}}})},et=w({since:n.items.reduce((e,u)=>Math.max(e,u.updatedAt),0)||i}),gt=()=>{if(document.visibilityState==="hidden")return;let e=Date.now(),u=F.current;S.tasks.list({...et.current,limit:se,agent:_.agent,source:_.source,archived:_.archived}).then(o=>{if(F.current!==u)return;let y=Wt(o,et.current,G.current,e);et.current=y.cursor;for(let f of y.rows)ht({id:f.task.id,agent:f.task.agent,status:f.status,approval:f.approval,approvals:f.approvals,archivedAt:f.archivedAt,createdAt:f.createdAt,startedAt:f.startedAt,finishedAt:f.finishedAt});o.length===se&&gt()}).catch(o=>console.error("coder dashboard: task resync",o))};return qt(ht,le,gt),t(M,{children:[t(Nt,{head:c,action:c?t(me,{}):void 0,children:[t(xt,{value:k.q,label:"Search tasks",onInput:e=>C("q",e,250)}),t(Ot,{name:"tasks",facets:ut,values:k,onChange:C})]}),h?t(Qt,{}):null,v?.length?t(re,{rows:v.map(e=>L.rows[e.task.id]??e),me:l}):null,t(V,{title:"Tasks",count:E?W(E.all):void 0,actions:E?t(M,{children:[E.active?t(rt,{tone:"acc",onClick:()=>C("status","active"),children:[W(E.active)," active"]}):null,E.waiting?t(rt,{tone:"warn",onClick:()=>C("status","waiting"),children:[W(E.waiting)," awaiting approval"]}):null]}):void 0,children:[Z.length?t("div",{class:"table-scroll",children:t("table",{class:"rows tasks stacked","aria-busy":O.stale,children:[t("thead",{children:t("tr",{children:[t("th",{children:"Task"}),t("th",{children:"Status"}),t("th",{class:"model",children:"Model"}),t("th",{children:"Last activity"}),t("th",{class:"num",children:"Duration"}),t("th",{children:"Source"})]})}),t("tbody",{children:Z.map(e=>t(ge,{task:e,brand:d[e.task.event?.integration??e.task.source],back:J,scoped:!!s,tz:m,now:Date.now(),onDone:u=>{(u==="delete"||u==="archive"&&k.status!=="archived")&&q(o=>[...o,e.task.id]),U()}},e.task.id))})]})}):O.stale?null:g?t(st,{title:"No tasks match",children:"Try another search or filter."}):t(st,{title:"No tasks yet",children:s?"Tasks appear here as this agent runs.":"Start one with New task. Tasks from the dashboard, the CLI and platforms like GitHub show up here, newest first."}),t(Xt,{noun:"tasks",...O})]})]})}export{fn as TasksList};
1
+ "use client";import{b as N,f as te}from"./task-actions-c8fe1201a56901d9.js";import{a as ct}from"./agent-pills-f07bea43753a9342.js";import{a as Xt}from"./tail-3024b828bce41f94.js";import{b as Qt}from"./composer-3efd63e2e0192937.js";import"./composer-data-b05f3d93fdc472d7.js";import{b as Ht,c as jt,d as Gt,e as at,f as dt,g as Kt,h as Vt,i as Wt,k as Yt,l as Jt,m as Zt}from"./task-1e6f9ba22fb5e29f.js";import"./connect-repositories-90f1aedea6de7a99.js";import"./shared-init-02666a6f76606589.js";import"./shared-init-02666a6f76606589.js";import"./model-options-5e07b3318d69d218.js";import"./types-3eca2c7f47c46054.js";import{a as zt}from"./confirm-6e26ab941d655b9f.js";import"./segmented-15503e745dd97f56.js";import"./field-444bab2e16b91c26.js";import{$1b as Ut}from"./shared-init-a69029db2d72fb52.js";import{$0a as Bt,$0c as $t,$0d as Ft,$0f as W}from"./shared-init-a69029db2d72fb52.js";import"./back-8ca96656264a0d1c.js";import{$1j as _t,$1p as qt}from"./shared-init-7a7f1e623f0f5861.js";import{$2D as it,$2a as wt,$2k as x,$2t as It,$2u as Lt,$2v as xt,$2w as Nt,$2x as Ot}from"./shared-init-7a7f1e623f0f5861.js";import{$0c as S,$0f as Rt,$0k as rt,$0o as V,$0q as st,$0s as Et,$0v as Mt}from"./shared-init-7a7f1e623f0f5861.js";import"./wular-pnext-3fcac605fffcc273-0.js";import"./shared-init-7a7f1e623f0f5861.js";import{$4A as Tt,$4B as Ct,$4K as At,$4L as Dt,$4M as St,$4N as Pt,$4Q as t,$4R as H,$4S as K,$4b as bt,$4c as ot,$4l as vt}from"./shared-init-7a7f1e623f0f5861.js";import{$4b as kt}from"./shared-init-3fcac605fffcc273-2.js";import"./shared-init-3fcac605fffcc273-2.js";import"./shared-init-3fcac605fffcc273-2.js";import{$2b as b,$2c as M,$2d as yt,$2h as T,$2j as z,$2k as nt,$2l as w}from"./shared-init-3fcac605fffcc273-2.js";var ue=Symbol.for("pnext.dynamic");function ne(n,r={},d){let a=null,p=null,s=!1,c=typeof n=="string"?()=>{throw new Error(`dynamic(${JSON.stringify(n)}) was not compiled by PNext.`)}:n,h=()=>(p??=Promise.resolve(c()).then(i=>(a=typeof i=="function"?i:i.default,a)),p);function v(i){let m=w(null),[A,k]=T(0);if(nt(()=>{m.current?.hasAttribute("data-pnext-loading")&&k(1)},[]),a)return b("pnext-dynamic",{key:A,ref:m,style:ee},b(a,i));let C=r.loading;if(s)return b("pnext-dynamic",{ref:m,style:ee,"data-pnext-loading":""},C?b(C,i):null);throw typeof window>"u"?h().then(()=>{},()=>{s=!0}):h()}function l(i){let[m,A]=T(null),[k,C]=T(()=>r.load!=="visible"),g=w(null);if(nt(()=>{a&&A(()=>a)},[]),z(()=>{if(m||k)return;let P=g.current;if(!P||typeof IntersectionObserver>"u"){C(!0);return}let R=new IntersectionObserver(J=>{J.some(_=>_.isIntersecting)&&(R.disconnect(),C(!0))},{rootMargin:r.rootMargin,threshold:r.threshold});return R.observe(P),()=>R.disconnect()},[m,k]),z(()=>{if(m||!k)return;let P=!1;return h().then(R=>{P||A(()=>R)}),()=>{P=!0}},[m,k]),m)return b(m,i);let I=r.loading;return r.load==="visible"?b("div",{ref:g},I?b(I,i):null):I?b(I,i):null}let D=r.ssr===!1||r.load==="visible"?l:i=>typeof window>"u"?b(v,i):b(lt,{fallback:r.loading?b(r.loading,i):null},b(v,i));return D[ue]={load:h,target:d},D}var ee={display:"contents"},pe=32,lt=class extends yt{__c(r,d){this.setState({waiting:!0,held:(d.__u&pe)!==0}),r.then(()=>this.setState({waiting:!1}))}componentDidCatch(r){if(!(r instanceof Promise))throw r;this.__c(r,this.__v.__k[0])}shouldComponentUpdate(r,d){return!(d.waiting&&d.held)}render(){return this.state.waiting&&!this.state.held?this.props.fallback:this.props.children}};var oe=3;function re({rows:n,me:r}){let[d,a]=T([]),[p,s]=T(!1),c=n.filter(l=>!d.includes(l.task.id)&&N(l));if(!c.length)return null;let h=p?c:c.slice(0,oe),v=l=>D=>{a(i=>[...i,l]),D.then(i=>i||a(m=>m.filter(A=>A!==l)))};return t(V,{tone:"accent",title:"Pending approvals",count:c.length,actions:c.length>oe?t(K,{variant:"secondary",size:"sm",onClick:()=>s(!p),children:p?"Show fewer":`Show all ${c.length}`}):void 0,children:t("ul",{class:p?"approval-queue scroll-box":"approval-queue",children:h.map(l=>t(te,{task:l,me:r,queue:{onSent:v(l.task.id)}},l.task.id))})})}var me=ne(()=>import("./composer-a6cf207b9c69b43f.js").then(n=>n.NewTaskButton),{loading:()=>t(K,{class:"new-task",leftIcon:Ct,disabled:!0,children:"New task"})}),fe={dashboard:vt,cli:At,schedule:St},ie=n=>fe[n]??Pt,se=200;function he(n,r,d){if(n===void 0)return"Not available";let a=Math.round((r-n)/6e4);return a<1?"just now":a<60?`${a} min ago`:a<1440?`${Math.round(a/60)} h ago`:$t(n,d)}function ge({task:n,brand:r,back:d,scoped:a,tz:p,now:s,onDone:c}){let h=it(),v=dt(n)&&n.startedAt!==void 0?s-n.startedAt:n.lastTurnMs,l=n.task.event?.integration??n.task.source??"dashboard",D=n.task.event?.type??(n.task.flow==="default"?void 0:n.task.flow);return t("tr",{children:[t("td",{children:[t(bt,{class:"cover",href:"/dash/[org]/tasks/[id]",params:{org:h,id:n.task.id},search:d?{back:d}:void 0,children:Yt(n)}),t("span",{class:"sub",children:[a?null:t(M,{children:[t(H,{d:ot}),n.task.agent]}),D,n.task.cwd?t("span",{title:n.task.cwd,children:[t(H,{d:Dt}),Zt(n.task.cwd)]}):null].filter(Boolean).map((i,m)=>t(M,{children:[m?" \xB7 ":null,i]},m))})]}),t("td",{children:t(_t,{status:n.status,approvals:n.approvals})}),t("td",{class:"model",title:Jt(n),children:n.model??n.task.usage?.model??n.task.definition?.model}),t("td",{class:"when",title:Bt(n.lastActivityAt,p),children:he(n.lastActivityAt,s,p)}),t("td",{class:"num",children:n.startedAt===void 0?null:Ft(v)}),t("td",{children:[t("span",{class:"source",title:at(l),children:[r?t(ct,{brand:r}):t(H,{d:ie(l)}),at(l)]}),t("span",{class:"row-acts",children:t(ye,{task:n,onDone:c})})]})]})}function ye({task:n,onDone:r}){let d=Ut(),[a,p]=T(!1),s=N(n),c=(h,v)=>void d.run(h,()=>h==="approve"?S.tasks.approve(n.task.id,s?.id??"",v??"decline"):h==="delete"?S.tasks.delete(n.task.id):S.tasks[h](n.task.id)).then(l=>{l&&r(h),p(!1)});return t(M,{children:[t(Rt,{summary:t(H,{d:Tt}),button:"icon",label:"Task actions",align:"right",children:[s?t(x,{title:"Approve",onClick:()=>c("approve","accept")}):null,s?t(x,{title:"Deny",onClick:()=>c("approve","decline")}):null,dt(n)?t(x,{title:"Stop",onClick:()=>c("cancel")}):null,n.archivedAt?null:t(x,{title:"Archive",onClick:()=>c("archive")}),t(x,{title:"Delete",danger:!0,onClick:()=>p(!0)})]}),t(zt,{open:a,title:"Delete this task?",body:"Its conversation, activity and diff go with it.",confirmLabel:"Delete",busy:d.pending==="delete",onConfirm:()=>c("delete"),onClose:()=>p(!1)})]})}function fn({first:n,platforms:r,brands:d={},agents:a=[],filters:p,agent:s,head:c,missing:h,pendingApprovals:v,me:l,tz:D,now:i}){let m=kt(D),A=it(),{values:k,set:C,query:g}=Lt(p),I=It(p),P=s?`&agent=${encodeURIComponent(s)}`:"",R=s?`/dash/${A}/agents/${encodeURIComponent(s)}/tasks`:`/dash/${A}/tasks`,J=g||s?`${R}${g?`?${g}`:""}`:void 0,_={limit:Mt,summary:!0,counts:!0,...jt(k),agent:s??k.agent},ut=[{key:"status",label:"Status",options:Ht,inline:!0},{key:"source",label:"Source",options:[...Gt,...r],icon:e=>d[e]?t(ct,{brand:d[e]}):ie(e)}];s||ut.push({key:"agent",label:"Agent",options:a,icon:()=>ot,search:(e,u)=>S.agents.list({cursor:"",limit:u,q:e}).then(o=>o.items.map(y=>[y.id,y.name]))});let O=Et({name:`tasks${P}`,fetchPage:e=>S.tasks.list({..._,cursor:e}),query:g,first:n,initial:I}),[L,j]=T({rows:{},added:[]}),[pt,ae]=T({query:g,ids:[]}),de=pt.query===g?pt.ids:[],q=e=>ae(u=>({query:g,ids:e(u.query===g?u.ids:[])})),Z=Vt(O.rows,L.query===g?L.added:[],L.rows).filter(e=>!de.includes(e.task.id)),E=(L.query===g?L.counts:void 0)??O.meta.counts,B=w(),$=w(!1),Q=w(!1),mt=w(),ft=w(!1),X=w(0),F=w(0),G=w({}),U=()=>{if(document.visibilityState==="hidden")return void(Q.current=!0);if(B.current)return void($.current=!0);let e=B.current=Date.now(),u=F.current;S.tasks.list({..._,cursor:""}).then(o=>{F.current===u&&(j(y=>({rows:{...y.rows,...Object.fromEntries(o.items.filter(f=>(G.current[f.task.id]??0)<=e).map(f=>[f.task.id,{...y.rows[f.task.id],...f}]))},added:Kt(y.query===g?y.added:[],o.items),counts:o.counts,query:g})),X.current=0)}).catch(()=>{X.current++,$.current=!0}).finally(()=>{if(!ft.current){if(!$.current)return void(B.current=void 0);$.current=!1,mt.current=setTimeout(()=>{B.current=void 0,tt.current()},Math.min(3e4,1e3*2**X.current))}})},tt=w(U);tt.current=U,z(()=>{let e=()=>{document.visibilityState!=="visible"||!Q.current||(Q.current=!1,tt.current())};return addEventListener("visibilitychange",e),()=>{removeEventListener("visibilitychange",e),clearTimeout(mt.current),ft.current=!0}},[]);let ce=wt(),le=()=>{F.current++,G.current={},j({rows:{},added:[]}),q(()=>[]),ce.refresh()},ht=e=>{let u=Z.find(o=>o.task.id===e.id);if(!u){e.deleted||e.archivedAt&&k.status!=="archived"?q(o=>[...o,e.id]):q(o=>o.includes(e.id)?o.filter(y=>y!==e.id):o),j(o=>{let{[e.id]:y,...f}=o.rows;return y?{...o,rows:f}:o}),(e.deleted||(s||k.agent||e.agent)===e.agent)&&U();return}if(G.current[e.id]=Date.now(),B.current&&($.current=!0),(e.deleted||e.status!==u.status||!!e.archivedAt!=!!u.archivedAt||!!N(u)!=!!N({approval:e.approval,approvals:e.approvals}))&&U(),e.deleted||e.archivedAt&&k.status!=="archived")return q(o=>[...o,e.id]);j(o=>{let y=o.rows[e.id]??u;return{...o,rows:{...o.rows,[e.id]:{...y,status:e.status,approval:e.approval??void 0,approvals:e.approvals??void 0,archivedAt:e.archivedAt,startedAt:e.startedAt,finishedAt:e.finishedAt}}}})},et=w({since:n.items.reduce((e,u)=>Math.max(e,u.updatedAt),0)||i}),gt=()=>{if(document.visibilityState==="hidden")return;let e=Date.now(),u=F.current;S.tasks.list({...et.current,limit:se,agent:_.agent,source:_.source,archived:_.archived}).then(o=>{if(F.current!==u)return;let y=Wt(o,et.current,G.current,e);et.current=y.cursor;for(let f of y.rows)ht({id:f.task.id,agent:f.task.agent,status:f.status,approval:f.approval,approvals:f.approvals,archivedAt:f.archivedAt,createdAt:f.createdAt,startedAt:f.startedAt,finishedAt:f.finishedAt});o.length===se&&gt()}).catch(o=>console.error("coder dashboard: task resync",o))};return qt(ht,le,gt),t(M,{children:[t(Nt,{head:c,action:c?t(me,{}):void 0,children:[t(xt,{value:k.q,label:"Search tasks",onInput:e=>C("q",e,250)}),t(Ot,{name:"tasks",facets:ut,values:k,onChange:C})]}),h?t(Qt,{}):null,v?.length?t(re,{rows:v.map(e=>L.rows[e.task.id]??e),me:l}):null,t(V,{title:"Tasks",count:E?W(E.all):void 0,actions:E?t(M,{children:[E.active?t(rt,{tone:"acc",onClick:()=>C("status","active"),children:[W(E.active)," active"]}):null,E.waiting?t(rt,{tone:"warn",onClick:()=>C("status","waiting"),children:[W(E.waiting)," awaiting approval"]}):null]}):void 0,children:[Z.length?t("div",{class:"table-scroll",children:t("table",{class:"rows tasks stacked","aria-busy":O.stale,children:[t("thead",{children:t("tr",{children:[t("th",{children:"Task"}),t("th",{children:"Status"}),t("th",{class:"model",children:"Model"}),t("th",{children:"Last activity"}),t("th",{class:"num",children:"Duration"}),t("th",{children:"Source"})]})}),t("tbody",{children:Z.map(e=>t(ge,{task:e,brand:d[e.task.event?.integration??e.task.source],back:J,scoped:!!s,tz:m,now:Date.now(),onDone:u=>{(u==="delete"||u==="archive"&&k.status!=="archived")&&q(o=>[...o,e.task.id]),U()}},e.task.id))})]})}):O.stale?null:g?t(st,{title:"No tasks match",children:"Try another search or filter."}):t(st,{title:"No tasks yet",children:s?"Tasks appear here as this agent runs.":"Start one with New task. Tasks from the dashboard, the CLI and platforms like GitHub show up here, newest first."}),t(Xt,{noun:"tasks",...O})]})]})}export{fn as TasksList};
@@ -1 +1 @@
1
- "use client";import{a as c}from"./tail-d13c4cc0cf11ffd1.js";import{$0a as p}from"./shared-init-953965859f7bf6b9.js";import{$3c as s,$3k as n,$3s as a,$3v as l}from"./shared-init-926144b364908b3c.js";import{$2Q as e}from"./shared-init-926144b364908b3c.js";import{$3c as m}from"./shared-init-9b28886f3cbe0ed3-2.js";function B({agent:t,current:r,first:d,tz:f}){let i=a({name:`versions|${t}`,fetchPage:o=>s.agents.versions(t,{cursor:o,limit:l}),query:"",first:d,initial:""});return e(m,{children:[e("ul",{class:"versions",children:i.rows.map(o=>e("li",{children:[e(n,{tone:o.version===r?"acc":void 0,children:["v",o.version]}),e("span",{class:"muted grow",children:[o.version===r&&"current",o.importedFrom!=="upload"&&o.importedFrom&&`${o.importedFrom}${o.commit?` at ${o.commit.slice(0,7)}`:""}`].filter(Boolean).join(", ")}),e("span",{class:"when",children:p(o.createdAt,f)})]},o.version))}),e(c,{noun:"versions",...i})]})}export{B as VersionsList};
1
+ "use client";import{a as c}from"./tail-3024b828bce41f94.js";import{$0a as p}from"./shared-init-a69029db2d72fb52.js";import{$0c as s,$0k as n,$0s as a,$0v as l}from"./shared-init-7a7f1e623f0f5861.js";import{$4Q as e}from"./shared-init-7a7f1e623f0f5861.js";import{$2c as m}from"./shared-init-3fcac605fffcc273-2.js";function B({agent:t,current:r,first:d,tz:f}){let i=a({name:`versions|${t}`,fetchPage:o=>s.agents.versions(t,{cursor:o,limit:l}),query:"",first:d,initial:""});return e(m,{children:[e("ul",{class:"versions",children:i.rows.map(o=>e("li",{children:[e(n,{tone:o.version===r?"acc":void 0,children:["v",o.version]}),e("span",{class:"muted grow",children:[o.version===r&&"current",o.importedFrom!=="upload"&&o.importedFrom&&`${o.importedFrom}${o.commit?` at ${o.commit.slice(0,7)}`:""}`].filter(Boolean).join(", ")}),e("span",{class:"when",children:p(o.createdAt,f)})]},o.version))}),e(c,{noun:"versions",...i})]})}export{B as VersionsList};
@@ -1 +1 @@
1
- import{$0a as o,$0b as i}from"./shared-init-9b28886f3cbe0ed3-2.js";var a="__pnextBfcacheId";function s(){let t=history.state;return t&&typeof t=="object"?t:{}}function c(t=s()){let n=t[a];return typeof n=="string"?n:void 0}function d(t){return`${t}${Date.now().toString(36)}_${Math.random().toString(36).slice(2,8)}`}function p(){return d("b_")}function l(){return d("e")}function v(){let t=s(),n=t.__pnextEntry,r=typeof n=="string";if(o.renderedEntryId=r?n:l(),!(c(t)&&r))try{history.replaceState({...t,__pnextEntry:o.renderedEntryId,[a]:c(t)??p()},"",location.href)}catch{}}var f;function h(t){f=t}function m(t,n={}){f?.(t,n)}function S(){return window.__PNEXT_LOCATION_LISTENERS__??=new Set,window.__PNEXT_LOCATION_LISTENERS__}function E(){if(o.observedLocationKey=i(),!(e>0))for(let t of[...S()])t()}var e=0;function I(t){e++;try{t()}finally{e--}}var g=new Set;function L(){for(let t of[...g])t()}var y=new Set;function C(){for(let t of[...y])t()}export{a,s as b,c,p as d,l as e,v as f,f as g,h,m as i,S as j,E as k,I as l,L as m,C as n};
1
+ import{$0a as o,$0b as i}from"./shared-init-3fcac605fffcc273-2.js";var a="__pnextBfcacheId";function s(){let t=history.state;return t&&typeof t=="object"?t:{}}function c(t=s()){let n=t[a];return typeof n=="string"?n:void 0}function d(t){return`${t}${Date.now().toString(36)}_${Math.random().toString(36).slice(2,8)}`}function p(){return d("b_")}function l(){return d("e")}function v(){let t=s(),n=t.__pnextEntry,r=typeof n=="string";if(o.renderedEntryId=r?n:l(),!(c(t)&&r))try{history.replaceState({...t,__pnextEntry:o.renderedEntryId,[a]:c(t)??p()},"",location.href)}catch{}}var f;function h(t){f=t}function m(t,n={}){f?.(t,n)}function S(){return window.__PNEXT_LOCATION_LISTENERS__??=new Set,window.__PNEXT_LOCATION_LISTENERS__}function E(){if(o.observedLocationKey=i(),!(e>0))for(let t of[...S()])t()}var e=0;function I(t){e++;try{t()}finally{e--}}var g=new Set;function L(){for(let t of[...g])t()}var y=new Set;function C(){for(let t of[...y])t()}export{a,s as b,c,p as d,l as e,v as f,f as g,h,m as i,S as j,E as k,I as l,L as m,C as n};
@@ -1 +1 @@
1
- .app{--side: 232px;display:grid;grid-template-columns:var(--side) minmax(0,1fr);grid-template-rows:56px 1fr;min-height:100vh}.top{grid-column:1 / -1;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px 0 20px;background:var(--bg);border-bottom:1px solid var(--line2)}.top-l,.top-r{display:flex;align-items:center;gap:10px;min-width:0}.lockup{display:grid}.lockup small{font-weight:400;font-size:8px;line-height:8px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}.side{position:sticky;top:56px;z-index:12;height:calc(100vh - 56px);display:flex;flex-direction:column;justify-content:space-between;padding:16px 12px;border-right:1px solid var(--line)}.side-main{display:grid;gap:16px}.side nav{display:grid;gap:2px}.side nav a{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;color:var(--muted);border-left:2px solid transparent}.side nav a:hover{color:var(--fg);background:var(--wash)}.side nav a[aria-current]{color:var(--fg);background:var(--wash2);border-left-color:var(--deep)}.side nav .n,.side nav .dot{margin-left:auto;background:var(--accbg);color:var(--acc)}.dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--warn)}.dot.ok{background:var(--ok);box-shadow:0 0 0 3px var(--okbg)}.server>button{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);font-size:12px;text-align:left;cursor:pointer}.server>button:hover{background:var(--wash)}.server>button .grow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server .ic{color:var(--dim);width:14px}.server .pop{width:max-content;max-width:calc(100vw - 32px)}.server .kv dd{white-space:nowrap}.org,.avatar{display:inline-grid;place-items:center;flex:none;width:26px;height:26px;background:var(--wash2);font-weight:700;font-size:12px}.avatar{width:32px;height:32px}.avatar-btn{display:grid;place-items:center;width:32px;height:32px;background:var(--fg);color:var(--bg);font-weight:700;cursor:pointer}.kv{display:grid;grid-template-columns:max-content 1fr;gap:8px 20px;margin:0}.kv dt{color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}.pop .kv{padding:6px 10px 10px;font-size:12px}.theme .ic.sun,.theme .ic.moon,.theme .ic.sys{display:none}:root[data-theme=light] .theme .ic.sun,:root[data-theme=dark] .theme .ic.moon,:root:not([data-theme]) .theme .ic.sys{display:block}.app>.auth{position:fixed;inset:0;z-index:60;overflow:auto;background:var(--bg)}@media(max-width:760px){.app{grid-template-columns:minmax(0,1fr)}.top{padding:0 10px}.side{position:fixed;top:56px;left:0;bottom:0;height:auto;width:min(280px,84vw);z-index:30;background:var(--bg);border-right:1px solid var(--line2);transform:translate(-100%);transition:transform .2s}}.side-foot{display:grid;gap:8px}button.side-toggle{justify-self:end;color:var(--dim)}.side-min .side-toggle{justify-self:center}.app.side-min{--side: 60px}.side-min .top .lockup{display:none}.side-min .side{padding-inline:10px}.side-min .side nav a{justify-content:center;gap:0;padding:0;font-size:0}.side-min .create .btn{gap:0;padding:0;font-size:0}.side-min .side nav .n{display:none}.side-min .side nav .dot{position:absolute;top:8px;right:8px}.side-min .side [data-tip],.side-toggle{position:relative}.side-min .side [data-tip]:after,.side-toggle:after{content:attr(data-tip) / "";position:absolute;top:50%;left:calc(100% + 12px);z-index:30;padding:6px 10px;border:1px solid var(--line2);background:var(--tile);box-shadow:0 12px 32px #0000002e;color:var(--fg);font-size:12px;letter-spacing:normal;white-space:nowrap;transform:translateY(-50%);pointer-events:none;opacity:0;transition:opacity .1s}.side-min .side [data-tip]:before,.side-toggle:before{content:"";position:absolute;top:50%;left:calc(100% + 8px);z-index:31;width:8px;height:8px;border-bottom:1px solid var(--line2);border-left:1px solid var(--line2);background:var(--tile);transform:translateY(-50%) rotate(45deg);pointer-events:none;opacity:0;transition:opacity .1s}.side-min .side [data-tip]:is(:hover,:focus-visible):before,.side-min .side [data-tip]:is(:hover,:focus-visible):after,.side-toggle:is(:hover,:focus-visible):before,.side-toggle:is(:hover,:focus-visible):after{opacity:1}.side-toggle:is(:hover,:focus-visible):before,.side-toggle:is(:hover,:focus-visible):after{transition-delay:.7s}.side-min .menu:has(:popover-open)>[data-tip]:before,.side-min .menu:has(:popover-open)>[data-tip]:after{opacity:0}.side-min .server>button{justify-content:center;padding:10px 0}.side-min .server>button :is(.grow,.ic){display:none}@media(max-width:760px){button.side-toggle{display:none}.app.side-min{grid-template-columns:minmax(0,1fr)}}.auth{display:grid;min-height:100vh}.auth-side{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:40px 24px 72px}.auth-frame{width:100%;max-width:440px}.auth-frame .bar{min-height:32px;font-size:10px}.auth-frame .brand{font-size:12px}.tag{margin-left:auto;padding:1px 8px;background:var(--deep);color:#fff}.auth-body{display:grid;gap:14px;padding:28px 24px 26px}.auth-body h1{font-size:22px}.auth-body .lead{margin:0 0 6px}.auth-body form{display:grid;gap:14px}.auth-links{position:absolute;bottom:24px;left:0;right:0;display:flex;justify-content:center;gap:24px;font-size:9px;color:var(--muted)}.auth-links a:hover{color:var(--fg)}.ic{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.brand .coder-mark{flex:none;position:relative;top:-1px;width:16px;height:16px;fill:currentColor}th .ic{width:12px;height:12px}.pop,.more-list{position:fixed;inset:auto;margin:0;padding:6px;white-space:normal;max-height:calc(100vh - 24px);overflow-y:auto;border:1px solid var(--line2);background:var(--tile);color:inherit;box-shadow:0 12px 32px #0000002e}:where(.menu,.more)>button{padding:0;border:0;background:none;color:inherit;cursor:pointer}.menu>.pop,.more>.more-list{inset:0;margin:auto}@supports (anchor-scope: --menu){.menu,.more{anchor-scope:--menu}:where(.menu,.more)>button{anchor-name:--menu}.menu>.pop,.more>.more-list{position-anchor:--menu;inset:anchor(bottom) auto auto anchor(left);margin:8px 0 0}.menu>.pop{min-width:max(260px,anchor-size(width));position-try-fallbacks:flip-inline}.more>.more-list{position-try-fallbacks:flip-block}.menu.right>.pop,.more>.more-list{inset:anchor(bottom) anchor(right) auto auto}.menu.up>.pop{inset:auto anchor(right) anchor(top) anchor(left);margin:0 0 8px}.menu>.pop.flip{inset:auto auto anchor(top) anchor(left);margin:0 0 8px}.menu.right>.pop.flip{inset:auto anchor(right) anchor(top) auto}.menu.up>.pop.flip{inset:anchor(bottom) anchor(right) auto anchor(left);margin:8px 0 0}}.pop{z-index:40;min-width:260px}.menu.up>.pop{min-width:0}.pop.wide{width:min(320px,calc(100vw - 32px))}.pop hr{border:0;border-top:1px solid var(--line);margin:6px 0}.pop-label{padding:8px 10px 4px;font-size:10px;color:var(--dim);border-top:1px solid var(--line)}.pop-head+.pop-label,.pop .pop-label:first-child{border-top:0}.pop-item{display:flex;align-items:center;gap:12px;width:100%;padding:8px 10px;border:0;background:none;text-align:left;cursor:pointer}.pop-item:hover{background:var(--wash)}.pop-item.danger:hover{background:var(--badbg);color:var(--bad)}.pop-item:disabled,.pop-item[aria-disabled=true]{cursor:default}.pop-item:disabled:hover,.pop-item[aria-disabled=true]:hover{background:none}.pop-item small{display:block;color:var(--muted);font-size:11.5px}.pop-item.rich{align-items:flex-start}.pop-item.rich .ic{margin-top:2px}.pop-item[role=menuitemradio]>.ic:last-child{visibility:hidden}.pop-item[role=menuitemradio][aria-checked=true]>.ic:last-child{visibility:visible;color:var(--acc)}.pop form{margin:0}.pop-head{display:flex;align-items:center;gap:12px;padding:8px 10px 12px;min-width:0}.pop-head b,.pop-head small{display:block;overflow:hidden;text-overflow:ellipsis}.pop-head small{color:var(--muted);font-size:11.5px}.pop-row{display:flex;align-items:center}.pop-row>.pop-item{flex:1 1 auto}.pop-row>.pop-item small{margin-right:6px;color:var(--muted);font-size:11px}.pop-note{padding:0 10px 8px;font-size:11.5px;color:var(--muted)}.more{flex:none}.more>button{padding:0 7px;border:1px solid var(--line2);color:var(--fg);font-size:11.5px;white-space:nowrap}.more:hover>button,.more:has(:popover-open)>button{border-color:var(--acc);color:var(--acc)}.more.info>button{display:inline-flex;padding:0;border:0;color:var(--muted);vertical-align:middle}.more.info .ic{width:14px;height:14px}.more.info>.more-list{max-width:280px;padding:10px 12px;gap:6px;color:var(--fg);font-size:13px;letter-spacing:normal;text-align:left}.more-list{--max: 220px;z-index:45;min-width:220px}.more-list:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.more-list:popover-open{display:grid;gap:4px}.more-list>:not(.pf-row,p){padding:4px 6px}@media(max-width:760px){.pop.wide{min-width:min(320px,calc(100vw - 32px))}}.scrim{display:none}@media(max-width:760px){.drawer .side{transform:none}.scrim{display:block;position:fixed;inset:56px 0 0;z-index:25;background:#0b0c1073;opacity:0;pointer-events:none;transition:opacity .2s}.drawer .scrim{opacity:1;pointer-events:auto}}@media(min-width:761px){button.only-m{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:34px;padding:0 14px;border:1px solid var(--deep);background:var(--deep);color:#fff;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;white-space:nowrap;cursor:pointer}.btn:hover{filter:brightness(1.12)}.btn.outline{background:transparent;color:var(--fg);border-color:var(--line2)}.btn.outline:hover,.btn.ghost:hover{background:var(--wash);filter:none}.btn.ghost{background:transparent;border-color:transparent;color:var(--fg)}.btn.secondary{background:var(--wash2);border-color:transparent;color:var(--fg)}.btn.secondary:hover{background:var(--line2);filter:none}.btn.danger{background:light-dark(#c92a2a,#d42f2f);border-color:light-dark(#c92a2a,#d42f2f);color:#fff}.btn.secondary.danger{background:var(--badbg);border-color:transparent;color:var(--bad)}.btn.secondary.danger:is(:hover,:focus-visible){background:light-dark(rgba(224,49,49,.18),rgba(224,49,49,.3))}.btn.outline.danger{background:transparent;border-color:var(--line2);color:var(--bad)}.btn.ghost.danger{background:transparent;border-color:transparent;color:var(--fg)}.btn:is(.outline,.ghost).danger:is(:hover,:focus-visible){background:var(--badbg);color:var(--bad)}.btn.sm{height:28px;padding:0 10px;font-size:10px}.btn.wide{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.btn:disabled:not(.outline,.ghost,.secondary,.danger){background:light-dark(var(--deep),var(--line2));border-color:light-dark(var(--deep),transparent)}.btn-spin{flex:none;width:12px;height:12px;margin:2px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.btn[aria-busy=true]:not(:has(>.btn-spin)){position:relative;-webkit-text-fill-color:transparent}.btn[aria-busy=true]:not(:has(>.btn-spin)):after{content:"";position:absolute;inset:0;width:12px;height:12px;margin:auto;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;border:0;background:none;color:var(--muted);cursor:pointer}.icon-btn:hover{color:var(--fg);background:var(--wash)}td .btn,td .icon-btn{height:28px;margin-block:-3px -5px;vertical-align:top}td .icon-btn{width:28px}.bar-r .icon-btn{width:28px;height:28px}.toasts{position:fixed;z-index:50;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;width:min(420px,calc(100vw - 32px));height:auto;inset:16px 16px 16px auto;margin:0;padding:0;border:0;background:none;color:inherit;overflow:visible;pointer-events:none}.toast{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:14px 16px;border:1px solid var(--line2);background:var(--tile);box-shadow:0 12px 32px #0000002e;pointer-events:auto;animation:toast-in .15s ease-out}.toast-head{display:flex;align-items:center;gap:10px;margin:0}.toast-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg);text-decoration:none}a.toast-title:hover{text-decoration:underline}.toast-head .icon-btn{width:24px;height:24px;margin:-4px -8px -4px 0}.toast-head .icon-btn:hover{background:var(--wash2)}.toast-line{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.toast:is(.success,.warning,.error){border-top:3px solid var(--tone)}.toast.success{--tone: var(--ok)}.toast.warning{--tone: var(--warn)}.toast.error{--tone: var(--bad)}.toast.error .toast-line{white-space:normal}@keyframes toast-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){.toast{animation:none}}.st{display:inline-flex;align-items:baseline;gap:7px;padding:2px 8px;font-size:10px;letter-spacing:.14em;white-space:nowrap;color:var(--muted);background:var(--wash)}.st i{align-self:center;width:7px;height:7px;border-radius:50%;background:currentColor}.st.running{color:var(--acc);background:var(--accbg)}.st.running i{width:9px;height:9px;background:none;border:1.5px solid currentColor;border-top-color:transparent;animation:spin 1s linear infinite}.st.waiting{color:var(--warn);background:var(--warnbg)}.st.completed{color:var(--ok);background:var(--okbg)}.st.failed{color:var(--bad);background:var(--badbg)}.st.queued i,.st.cancelled i{background:none;border:1.5px solid currentColor}.stats .st{justify-self:start}.badge{display:inline-flex;align-items:center;gap:6px;padding:1px 7px;border:1px solid var(--line2);font-size:10px;letter-spacing:.14em;color:var(--muted);white-space:nowrap}.badge.acc{border-color:transparent;background:var(--accbg);color:var(--acc)}.badge.ok{border-color:transparent;background:var(--okbg);color:var(--ok)}.badge.warn{border-color:transparent;background:var(--warnbg);color:var(--warn)}.badge.bad{border-color:transparent;background:var(--badbg);color:var(--bad)}.badge.solid{border-color:var(--fg);background:var(--fg);color:var(--bg)}a.badge:hover,button.badge:hover{border-color:var(--acc)}button.badge{cursor:pointer}.chips{display:inline-flex;flex-wrap:wrap;gap:4px}.chip{line-height:18px;padding:0 6px;border:1px solid var(--line2);font-size:11.5px;color:var(--muted)}.id{font-size:11.5px;color:var(--dim)}button.chip{background:none;cursor:pointer}button.chip:hover,button.chip[aria-pressed=true]{border-color:var(--acc);color:var(--acc)}.page.narrow{max-width:760px}.meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.page .head,.page .hero{position:sticky;top:56px;z-index:10;margin:-10px -40px 0;padding:10px 40px 6px;background:var(--bg);overflow-anchor:none}.page{--stuck: calc(56px + var(--head, 0px) + var(--tabs, 0px))}.page:has(.tabs:not(.vertical)){--tabs: 40px}.page *{scroll-margin-top:calc(var(--stuck) + 16px)}.back{display:inline-flex;align-items:center;gap:4px;margin-bottom:6px;font-size:12px;color:var(--muted)}.stuck>div:first-child:has(>.back,>*>.back){display:flex;align-items:center;gap:8px}.stuck .back{flex:none;margin:0}.stuck .back>span{display:none}.back:hover{color:var(--fg)}.back .ic{width:14px;height:14px}.title-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;min-width:0}.title-row h1{min-width:0}.head .title-row{flex-wrap:nowrap}.head .title-row h1{flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.head .title-row .meta{flex:none}@media(max-width:760px){.page .head,.page .hero{margin-inline:-16px;padding-inline:16px}.head .title-row{flex-wrap:wrap}}.head .meta:empty{min-height:20px}.sentinel{display:block;height:0;margin-bottom:-20px}.stuck{border-bottom:1px solid var(--line2);align-items:center;flex-wrap:nowrap}.stuck h1{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stuck .lead{display:none}.stuck .title-row{flex-wrap:nowrap}.stuck .meta{flex-wrap:nowrap;overflow:hidden}.stuck>div:first-child,.stuck>.grow{flex:1 1 auto;min-width:0}.stuck .actions{flex:none;flex-wrap:nowrap;width:auto;justify-content:flex-end}.stuck .hero-mark{width:28px;height:28px;font-size:13px}.stuck.hero{align-items:center;gap:12px}.hero.stuck .title-row .badge{display:none}@media(max-width:760px){.stuck .actions>:not(.flash,dialog)~:not(.flash,dialog){display:none}}.bar-r{display:flex;align-items:center;margin-block:-2px;gap:8px;flex-wrap:wrap;justify-content:flex-end}.card.accent{border-color:var(--warn);background:linear-gradient(var(--warnbg),var(--warnbg)),var(--panel)}.card.danger{border-color:var(--bad)}.fold>summary{list-style:none;cursor:pointer}.fold>summary::-webkit-details-marker{display:none}.fold:not([open])>summary{border-bottom:0}.fold>summary h2{flex:0 0 auto}.fold-note{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.fold>summary:hover{background:var(--wash)}.fold>summary:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}.fold>summary .btn{pointer-events:none}.fold[open]>summary .fold-open,.fold:not([open])>summary .fold-close{display:none}.empty{display:grid;justify-items:center;gap:6px;padding:32px 16px;border:1px dashed var(--line2);text-align:center;color:var(--muted)}.empty b{color:var(--fg);font-weight:500}.card .empty{border:0}.empty .actions{justify-content:center;margin-top:10px}.loading{display:flex;align-items:center;justify-content:center;gap:10px;flex:1 0 auto;min-height:var(--h, 240px);color:var(--dim);font-size:12px}.loading.inline{display:inline-flex;min-height:0}.card:has(>.loading:not([style])){flex:1 0 auto;display:flex;flex-direction:column}.loading>span{display:inline-flex;align-items:center;gap:10px;animation:loader-in 0s 60ms both}.loading.late>span{animation-delay:.3s}.loading .spin{flex:none;width:12px;height:12px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.loading .dots{display:inline-flex;gap:3px}.loading .dots>b{width:4px;height:4px;border-radius:50%;background:currentColor;animation:dots 1.2s ease-in-out infinite}.loading .dots>b:nth-child(2){animation-delay:.2s}.loading .dots>b:nth-child(3){animation-delay:.4s}@keyframes dots{0%,80%,to{opacity:.25}40%{opacity:1}}.card.frame.filled{border-color:transparent;background:var(--surface)}.filter-chips{display:flex;flex:1 1 0;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none}.filters:has(>.filter-chips)>.search{flex-grow:1000}.head.tools .filter-chips{order:-1}.head.tools .filter-chips>:first-child{margin-left:auto}.filter-chips .chip{display:inline-flex;flex:none;align-items:center;gap:4px;max-width:200px}.filter-chips .chip .grow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chips .chip .ic{width:12px;height:12px}.filter-more>.pop:popover-open{display:block;width:min(260px,calc(100vw - 32px));max-height:calc(100vh - 160px);overflow-y:auto;padding:6px}.filter-more .pop-label:not(:first-child){margin-top:10px}.filter-more .pop-item{width:100%;min-height:30px;font-size:12px}.field-btn{display:flex;align-items:center;gap:10px;min-height:36px;padding:7px 12px;border:1px solid var(--line2);background:var(--field);white-space:nowrap;cursor:pointer}.field-btn:focus-visible,.field-btn:has(+.pop:popover-open){outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--accbg)}.field-btn:disabled{color:var(--muted);cursor:default}.filter-more>.field-btn.on{color:var(--acc)}.filter-panel .pop-item>.brand-icon{width:16px;height:16px}.filter-panel [data-facet]{color:var(--muted)}.filter-panel .search{margin:4px 0 6px}.filter-panel .search input{width:100%}@media(max-width:760px){.head.tools .filter-chips{order:0}.head.tools .filter-chips>:first-child{margin-left:0}}.head.tools{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px 24px;min-height:36px}.head.tools>div:first-child{display:contents}.head.tools .lead{grid-row:2;grid-column:1 / -1}.head.tools>.filters{grid-row:1;grid-column:2;justify-content:flex-end}.head.tools>.filters:last-child{grid-column:2 / -1}.head.tools>.actions{grid-row:1;grid-column:3}.page{container-type:inline-size}@container (max-width: 720px){.head.tools:has(>.actions)>.filters{grid-row:auto;grid-column:1 / -1;justify-content:flex-start}.head.tools:has(>.actions) .search{max-width:none}}.filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search{position:relative;display:block}.tab-body .filters{position:sticky;top:calc(56px + var(--head, 0px) + var(--tabs, 0px));z-index:8;margin-block:-8px;padding-block:8px;background:var(--bg)}.filters .search{flex:1 1 240px;max-width:360px}.search .ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--dim);pointer-events:none}label.search input[type=search]{padding-left:32px}.filters .select{flex:none}.filters .end{margin-left:auto}.vsearch .search{width:min(280px,100%)}@media(max-width:760px){.head.tools{grid-template-columns:minmax(0,1fr) auto;row-gap:12px}.head.tools>.filters{grid-row:3;grid-column:1 / -1}.head.tools>.actions{grid-column:2;width:auto}.filters .search{max-width:none}.filters:has(>.filter-chips:not(:empty)) .search{flex-basis:100%}.filters .filter-more{margin-left:auto}.filters .select{flex:1 1 0}.filters .select>button{gap:4px;padding-inline:8px}.head.tools.stuck>.filters>.select{display:none}}.select{position:relative;display:inline-flex;min-width:0}.field .select{display:flex}.select>button{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:7px 10px 7px 12px;border:1px solid var(--line2);background:var(--field);text-align:left;white-space:nowrap;cursor:pointer;touch-action:manipulation}.select>button .grow{overflow:hidden;text-overflow:ellipsis}.select>button .ic{color:var(--dim);transition:transform .15s}.select>button[aria-expanded=true] .ic{transform:rotate(180deg)}.select>button:focus-visible,.select>button[aria-expanded=true]{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--accbg)}.select>button:disabled{color:var(--muted);cursor:default}.select-pop{min-width:0;max-width:min(440px,calc(100vw - 16px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line2) transparent}.select-pop .pop-item{white-space:nowrap}.select-pop .pop-item:hover{background:none}.select-pop .pop-item.on{background:var(--wash2)}.select-pop .pop-item>.ic{visibility:hidden}.select-pop .pop-item[aria-selected=true]>.ic{visibility:visible;color:var(--acc)}.select>button:disabled{opacity:.65;cursor:default}.select-pop .pop-item small{display:block;overflow:hidden;direction:rtl;text-align:left;white-space:nowrap;text-overflow:ellipsis;font-size:11px;color:var(--muted)}.select-pop .pop-item .grow{min-width:0;overflow:hidden;text-overflow:ellipsis}.select-pop .pop-item.action{margin-top:4px;color:var(--muted)}.select-pop .pop-item.action>.ic{visibility:visible;width:14px;height:14px}.select-pop .pop-item.action.on{color:var(--fg)}.select .brand-icon,.select-pop .brand-icon{flex:none;width:14px;height:14px}dialog.modal{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 48px);margin:auto;padding:0;border:3px solid light-dark(rgba(11,12,16,.3),rgba(255,255,255,.15));background:var(--tile);color:inherit;text-align:left;white-space:normal}dialog.modal:focus-visible{outline:none}dialog.modal::backdrop{background:light-dark(rgba(0,0,0,.1),rgba(0,0,0,.45))}.modal form{display:grid;gap:16px;padding:20px 24px 24px}.modal header{display:flex;align-items:center;gap:10px}.modal header:has(.icon-btn){margin-right:-10px}.modal h2{flex:1;font-size:15px;font-weight:700;overflow-wrap:anywhere}.modal .actions{justify-content:flex-end;margin-top:4px}@media(min-width:561px){.modal .actions>:first-child:not(:only-child){margin-right:auto}}dialog.confirm,dialog.outcome-dialog{width:min(500px,calc(100vw - 32px))}.confirm p,.outcome-dialog p{color:var(--muted);line-height:1.6}.confirm form{gap:8px}.confirm .actions{margin-top:12px}.outcome-dialog form{gap:10px;padding:24px 24px 20px}dialog.modal.tone{border-top:3px solid var(--tone)}dialog.modal.neutral{--tone: var(--muted)}dialog.modal.success{--tone: var(--ok)}dialog.modal.warning{--tone: var(--warn)}dialog.modal.error{--tone: var(--bad)}.modal.tone header{color:var(--tone)}.modal.tone h2{color:var(--fg)}.outcome-dialog .actions{margin-top:14px}@media(max-width:560px){.modal .actions{flex-direction:column-reverse;align-items:stretch}.modal .actions>*{margin-right:0}}.tabs{display:flex;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none;box-shadow:inset 0 -1px var(--line2)}.page .tabs:not(.vertical){height:40px;margin-top:-8px;position:sticky;top:calc(56px + var(--head, 0px));z-index:9;background:var(--bg)}.tabs a,.tabs>button{display:flex;flex:none;align-items:center;gap:8px;padding:10px 12px;border:0;border-bottom:2px solid transparent;background:none;font-size:10.5px;color:var(--muted);white-space:nowrap;cursor:pointer}.tabs a:hover,.tabs>button:hover{color:var(--fg)}.tabs:focus{outline:none}.tabs a:focus-visible,.tabs>button:focus-visible{outline-offset:-2px}.tabs a[aria-current],.tabs a[data-pending],.tabs>button[aria-current]{color:var(--fg);border-bottom-color:var(--fg)}.tabs:has(a[data-pending]) a[aria-current]:not([data-pending]){color:var(--muted);border-bottom-color:transparent}.tabs .count{color:var(--dim)}@property --tabs-fade{syntax: "<length>"; inherits: false; initial-value: 0px;}@keyframes tabs-fade{0%{--tabs-fade: 40px}to{--tabs-fade: 0px}}.tabs{mask-image:linear-gradient(to left,transparent,#000 var(--tabs-fade));animation:tabs-fade linear both;animation-timeline:scroll(self inline)}.tabs[aria-hidden]>*{visibility:hidden}@media(max-width:760px){.page .tabs:not(.vertical){gap:0}.page .tabs:not(.vertical) a,.page .tabs:not(.vertical)>button{gap:4px;padding-inline:6px;letter-spacing:.04em}}.hero{display:flex;align-items:flex-start;gap:20px;flex-wrap:wrap}.hero>.grow{flex:1 1 280px}.hero-side{display:grid;gap:14px;justify-items:end}.hero .handles{display:grid;gap:4px;flex:none;font-size:12px;color:var(--muted);text-align:right}.hero .handles b{color:var(--fg)}.hero .handles .more-list .handles{text-align:left}.hero.stuck .handles,.hero.stuck .lead{display:none}.hero.stuck>.grow{display:contents}.hero.stuck .back{order:-1}.hero.stuck .title-row{flex:1 1 auto;min-width:0}.hero .title-row button.link{padding:0;border-width:0 0 1px;background:none;font-size:12px;line-height:1;cursor:pointer}.hero .lead{display:-webkit-box;min-height:2lh;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.hero-mark{display:grid;place-items:center;flex:none;width:64px;height:64px;background:var(--blue);color:#fff;font-size:26px;font-weight:700}@media(max-width:760px){.hero{gap:14px}.hero-mark{width:48px;height:48px;font-size:20px}.hero-side{justify-items:start}.hero .handles{text-align:left}@supports (anchor-scope: --menu){.hero .more>.more-list{inset:anchor(bottom) auto auto anchor(left)}}}.link-pill{color:var(--acc);text-transform:none;letter-spacing:.02em}.link-pill .ic{width:12px;height:12px}.pf{display:inline-flex;flex:none;align-items:center;gap:7px;color:var(--muted);white-space:nowrap}.brand-icon{width:12px;height:12px;flex:none}.brand-icon>svg{display:block;width:100%;height:100%}.more-list:has(.pf-row){min-width:180px;gap:0}.pf-row{display:flex;align-items:center;padding:8px 10px}:is(.pfs>a,a.pf-row):hover{background:var(--wash)}.pfs>a{position:relative;z-index:1;margin:-3px -6px;padding:3px 6px}.pf-row .pf{gap:12px;color:var(--fg)}.tasks{table-layout:fixed;min-width:944px}.tasks th:nth-child(2){width:160px}.tasks .model{width:160px}.tasks th:nth-child(4){width:120px}.tasks th.num{width:136px}.tasks th:nth-child(6){width:128px}td.model{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.tasks td{padding-block:9px;vertical-align:middle}.tasks .cover{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.tasks td:first-child .sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks td:first-child .sub{margin-top:1px}.tasks .sub .ic{width:12px;height:12px;margin-right:5px;color:var(--dim);vertical-align:-2px}@media(min-width:761px){.tasks th:last-child,.tasks td:last-child{position:sticky;right:0;z-index:1;background:var(--panel)}.tasks tbody tr:hover td:last-child{background:linear-gradient(var(--wash),var(--wash)),var(--panel)}.table-scroll:has(>.tasks){container-type:scroll-state}@container scroll-state(scrollable: inline-end){.tasks th:last-child,.tasks td:last-child{box-shadow:-8px 0 8px -8px light-dark(rgba(11,12,16,.25),rgba(0,0,0,.7))}}}@media(max-width:760px){.tasks{min-width:0}.tasks td{padding-block:0}.tasks td:is(.when,.num){order:1}.tasks.stacked tr{grid-template-columns:auto minmax(0,1fr) auto}.tasks.stacked td:last-child{position:relative;display:flex;align-items:center;justify-self:end;padding-right:0}.tasks td.num{grid-column:3}.tasks td.model{align-self:center}.tasks td:is(.when,.num,.model){font-size:11.5px}.tasks td.num{justify-self:end;color:var(--muted)}}.source{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.source .ic{color:var(--dim)}.tasks th:last-child,.tasks td:last-child{padding-right:28px}.row-acts{position:absolute;top:50%;right:8px;z-index:1;translate:0 -50%;opacity:0;transition:opacity .12s}.tasks tr:is(:hover,:focus-within) .row-acts,.row-acts:has(.pop:popover-open){opacity:1}.approval-queue{--max: 420px;display:grid;margin:0;padding:0;list-style:none}.queue-row{display:flex;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--line)}.queue-row:first-child{border-top:0}.queue-row>details{flex:1;min-width:0}.queue-row summary{display:grid;gap:2px;cursor:pointer;list-style:none}.queue-row summary::-webkit-details-marker{display:none}.queue-ask{display:flex;align-items:baseline;gap:8px;min-width:0}.queue-reason{overflow:hidden;font-size:13px;color:var(--fg);text-overflow:ellipsis;white-space:nowrap}.queue-task{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;min-width:0;font-size:12px}.queue-task>a{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.queue-task>a:hover{color:var(--fg)}.queue-task>a{max-width:100%}.queue-row details[open] .queue-reason{white-space:normal}.queue-row .body{display:grid;gap:10px;padding:10px 0 0}.queue-acts{display:flex;flex:none;gap:6px}@media(max-width:760px){.queue-row{flex-wrap:wrap}.queue-acts{margin-left:auto}.queue-ask{flex-wrap:wrap}}.card.accent:has(>.approval-queue){background:var(--panel)}@media(min-width:761px){.queue-task>.admin-ask:before{content:"\b7";margin-right:10px}}.head .lead:has(.fact){display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;font-size:12px}.fact{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.fact .ic{width:12px;height:12px;color:var(--dim)}.fact-dim{color:var(--dim)}.head.stuck .lead:has(.fact){display:none}@media(max-width:760px){.head:has(.fact) .back{height:34px}.head:has(.fact) .title-row>h1{flex-basis:100%}.head:has(.fact)>.actions{position:absolute;top:10px;right:16px;width:auto;flex-wrap:nowrap}.head.stuck:has(.fact)>.actions{position:static}.head.stuck:has(.fact)>.actions>.menu{display:inline}.head.stuck:has(.fact) .title-row>h1{flex-basis:auto}.head.stuck:has(.fact) .meta{display:none}.reply-box,.reply-box textarea{min-width:0}}.agent-link{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted);text-decoration:underline dotted;text-underline-offset:3px}.agent-link .ic{width:12px;height:12px}.turn.answer,.turn.reply{border-left-color:var(--line2)}.agent-link:hover{color:var(--fg)}.logs{margin:0;padding:16px;max-height:420px;overflow:auto;font:12.5px/1.8 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--tile)}pre.json{margin:0;overflow-x:auto}.convo{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.turn{min-width:0;padding:12px 16px;border-left:2px solid var(--acc);background:var(--tile)}.turn .who{margin-bottom:4px;font-size:11px;color:var(--dim)}.turn .collapse.open>.btn.more-toggle{margin:8px auto 0}.act-list{position:relative}.act-slot{position:absolute;top:0;left:0;width:100%}.act{display:grid;grid-template-columns:76px 16px minmax(0,1fr);align-items:baseline;gap:10px;width:100%;padding:3px 8px;border:0;border-left:2px solid transparent;background:none;font:12.5px/1.7 var(--mono);text-align:left}:is(.act.fold,button.act){grid-template-columns:76px 16px minmax(0,1fr) 14px;cursor:pointer}.act .act-chev{visibility:hidden}:is(.act.fold,button.act):hover .act-chev,.act.open .act-chev{visibility:visible}.act.open .act-chev{rotate:180deg}:is(.act.fold,button.act):hover{background:var(--wash)}.act time{color:var(--dim);font-size:11px}.act .ic{width:13px;height:13px;align-self:start;margin-top:4px;color:var(--dim)}.act-text{display:flex;gap:12px;min-width:0}.act-title,.act-detail{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.act-title{flex:0 1 auto}.act-detail{flex:1 1 0;color:var(--dim)}.act.open .act-text{display:grid;gap:2px}.act.open :is(.act-title,.act-detail){white-space:pre-wrap;overflow-wrap:anywhere}.act.muted .act-title,.act.usage .act-title{color:var(--muted)}.act.assistant .act-title{color:var(--fg);font-size:13px;line-height:21.25px}.act.assistant .ic{color:var(--acc)}.act.approval{border-left-color:var(--acc);background:var(--accbg)}.act.approval .ic{color:var(--acc)}.act.warning :is(.act-title,.ic){color:var(--warn)}.act.error :is(.act-title,.ic){color:var(--bad)}.act.steer :is(.act-title,.ic){color:var(--acc)}.act.timed{grid-template-columns:76px 16px minmax(0,1fr) auto 14px}.act-state{color:var(--dim);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.act-state.bad,.act-state.bad .ic{color:var(--bad)}.act-state :is(.ic,.spin){display:inline-block;width:11px;height:11px;margin:0 6px 0 0;vertical-align:-1px}.act-state .spin,.act.step>.spin{border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:760px){.act.approval.timed{grid-template-columns:76px 16px minmax(0,1fr) 14px}.act.approval .act-state{grid-column:3;grid-row:2;white-space:normal;overflow-wrap:anywhere}.act.approval .act-chev{grid-column:4;grid-row:1}}.run-sum,.run-foot{color:var(--muted);font-size:12px}.run>.run-steps{display:grid;grid-template-rows:repeat(2,28px);margin:8px -8px 0}.run-steps.earlier{mask-image:linear-gradient(to bottom,#00000040,#000 28px)}.run>.loading.inline{display:flex;margin-top:12px}.act.step{grid-template-columns:16px minmax(0,1fr) auto 14px}.act.run-sum{grid-template-columns:minmax(0,1fr) 14px;width:calc(100% + 16px);margin-inline:-8px}.act.step.approval{border-left-color:transparent}.act.step.approval:not(:hover){background:none}.act.step>.spin{width:11px;height:11px;margin-inline:1px;align-self:center}.run-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px 6px 16px;border-top:1px solid var(--line)}.act-slot.at>.act{background:var(--wash)}.act-empty{padding:24px 0;text-align:center}.jump{position:sticky;bottom:calc(var(--reply, 72px) + 8px);z-index:11;display:block;width:max-content;margin:0 auto;padding:6px 14px;border:1px solid var(--line2);border-radius:999px;background:var(--tile);color:var(--fg);font-size:12px;box-shadow:0 6px 18px #0000002e;cursor:pointer}.no-reply{margin-top:16px;font-size:12px}.approval-actions>summary{display:flex;align-items:baseline;gap:9px;width:fit-content;font-size:12px;color:var(--muted);cursor:pointer;list-style:none}.approval-actions>summary::-webkit-details-marker{display:none}.approval-actions>summary:before{content:"";width:5px;height:5px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(-45deg);transition:transform .15s}.approval-actions[open]>summary:before{transform:rotate(45deg)}.approval-actions>summary:hover{color:var(--fg)}.approval-actions ol{display:grid;gap:4px;margin:8px 0 0;padding-left:20px}.approval-actions code{font-size:12px;white-space:pre-wrap;word-break:break-word}.bar-r .decided{font-size:12px}@media(min-width:761px){.tabs+.card.accent{position:sticky;top:var(--stuck);z-index:8}}@media(max-width:760px){.tabs+.card.accent>.bar{position:sticky;top:var(--stuck);z-index:8;background:inherit}}.turn.decision.decline{border-left-color:var(--bad)}.turn.decision .prose{margin-bottom:6px}.card .decision{font-size:13px}main:has(form.reply){padding-bottom:0}form.reply{position:sticky;bottom:0;z-index:10;display:grid;gap:6px;margin-top:auto;padding:12px 0 16px;background:var(--bg)}.reply-box{display:flex;align-items:flex-end;gap:6px;padding:4px;border:1px solid var(--line2);background:var(--field)}.reply-box:focus-within{border-color:var(--acc);box-shadow:0 0 0 3px var(--accbg)}.reply-box textarea{flex:1;field-sizing:content;min-height:28px;max-height:6lh;padding:2px 6px;border:0;background:none;resize:none;box-shadow:none}.reply-box textarea:focus{box-shadow:none}.reply-box textarea::placeholder{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-box .mode{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px;background:var(--wash2);font-size:11px;text-transform:uppercase;letter-spacing:.2em}.reply-box .mode .ic{width:12px;height:12px}.act:is(.tool,.tool-result,.status,.line,.reasoning,.usage) .act-title{color:var(--muted)}.act.open:not(.warning,.error) .act-title{color:var(--fg)}.findings{display:grid;gap:24px;margin:0;padding:12px 16px;list-style:none}.finding{min-width:0;padding-left:12px;border-left:2px solid var(--dim);--sev: var(--dim)}.finding.critical{--sev: var(--bad)}.finding.major{--sev: var(--warn)}.finding.minor{--sev: var(--acc)}.finding{border-left-color:var(--sev)}.finding p{white-space:normal;overflow-wrap:anywhere}.finding-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;font-size:12px}.finding-head .sev{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sev)}.finding-head .loc{color:var(--muted)}.finding-head .cat{margin-left:auto;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}.finding-sum{margin-top:4px;font-weight:500}.finding-why{margin-top:2px;font-size:12.5px}.turn.qa>.answer{margin-top:10px;padding-top:10px;border-top:1px solid var(--line2)}.turn.prompt .prose{font-size:13.5px}.turn .collapse:not(.open){margin-bottom:-12px}.change-diff{margin:0;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--wash);font:12px/1.6 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere}.approval-actions>.change-diff{margin-top:8px}.change-diff>span{display:block}.asker{display:inline-flex;flex:none;border:1px solid var(--line2);font:11px/1.6 var(--mono);color:var(--muted);white-space:nowrap;vertical-align:1px}.asker>span{display:inline-flex;align-items:center;gap:4px;padding:0 6px}.asker>span+span{border-left:1px solid var(--line2)}.asker .ic{width:11px;height:11px}p.approval{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.approve-off{display:inline-flex}.admin-ask{font-size:12px;color:var(--muted)}.admin-ask>.link{padding:0;background:none;font:inherit;cursor:pointer}.change-diff>.add{color:var(--ok)}.change-diff>.del{color:var(--bad)}.request .seg-btns{align-self:flex-start}.task-missing{display:grid;align-content:center;min-height:calc(100dvh - 160px)}.field{display:grid;gap:6px}.field>span:first-child,.field>label{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-weight:500}.field small{font-weight:400;color:var(--muted);font-size:11.5px}.field .seg-btns{width:max-content;max-width:100%}.field .seg-btns>button{height:36px}.seg-btns{display:flex;border:1px solid var(--line2)}.seg-btns>a,.seg-btns>button,.seg-btns .menu>button{display:flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-left:1px solid var(--line2);background:var(--panel);font-size:10.5px;letter-spacing:.14em;color:var(--muted);cursor:pointer}.seg-btns>button{border-top:0;border-right:0;border-bottom:0;text-transform:uppercase}.seg-btns>:first-child{border-left:0}.seg-btns>a:hover,.seg-btns>button:hover,.seg-btns .menu>button:hover{color:var(--fg)}.seg-btns [aria-current],.seg-btns [aria-checked=true],.seg-btns .on>button{background:var(--accbg);color:var(--acc)}.seg-btns>button:disabled{opacity:.45;color:var(--muted);cursor:not-allowed}.seg-btns>button:has(.badge){position:relative}.seg-btns>button .badge{position:absolute;top:-8px;left:calc(100% - 14px);z-index:1;border-color:transparent;background:var(--acc);color:var(--panel);padding:0 4px;font-size:8.5px;line-height:14px;letter-spacing:.06em;text-transform:none}.tail{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 14px;color:var(--dim);font-size:11.5px}.tail.err{color:var(--bad)}.composer{display:flex;flex-wrap:wrap;padding:5px 5px 5px 8px;border:1px solid var(--line2);background:var(--field)}.composer:has(textarea:focus){border-color:var(--acc)}.composer textarea{flex:1 1 100%;width:auto;field-sizing:content;min-height:22px;max-height:8lh;margin:6px 0;padding:0 4px;border:0;background:none;box-shadow:none;resize:none}.composer textarea:focus{box-shadow:none}.composer-line{display:flex;align-items:center;gap:2px;width:100%;height:30px;min-width:0}.composer-line .select{flex:0 1 auto;max-width:220px}.composer-line .select>button,.composer-line .quiet{margin-left:auto;display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:3px 8px;border:1px solid transparent;background:none;font-size:11.5px;color:var(--muted);white-space:nowrap;cursor:pointer}.composer-line .select>button:hover,.composer-line .quiet:hover{background:var(--wash)}.run-picks .dim{color:var(--dim)}@media(max-width:760px){.run-picks>:not(:first-child){display:none}}.composer-line .send{flex:none;margin-left:4px}.composer>.flash{flex-basis:100%;margin:0 4px 2px}.composer-settings:popover-open{display:block;width:min(320px,calc(100vw - 32px));overflow-y:auto;padding:6px}.composer-settings>.pop-label:not(:first-child){margin-top:10px}.composer-settings .pop-item{width:100%;min-height:30px;font-size:12px}.composer-settings .add-models{margin-top:4px;color:var(--muted)}.composer-settings .add-models .ic{width:14px;height:14px}.composer-settings .pop-group{margin:6px 10px 2px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}.composer-settings .select{margin:2px 6px 4px}.composer-settings .select>button{min-height:30px;padding:4px 8px 4px 10px;font-size:12px}.composer-slash .pop-item{gap:10px;padding:6px 10px}.composer-slash .pop-item:hover{background:none}.composer-slash .pop-item.on{background:var(--wash2)}.composer-slash small{font-size:11px;color:var(--dim);white-space:nowrap}.composer-slash{max-height:min(360px,50vh);overflow-y:auto}.composer-slash .grow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-slash>.loading{padding:6px 10px}dialog.compose-dialog{width:min(760px,calc(100vw - 32px));margin:14vh auto auto;padding:0;border:1px solid var(--line2);background:var(--tile);color:inherit;box-shadow:0 12px 32px #0000002e}dialog.compose-dialog::backdrop{background:light-dark(rgba(0,0,0,.45),rgba(0,0,0,.72))}.compose-dialog>header{display:flex;align-items:baseline;gap:10px;padding:10px 6px 0 16px}.compose-dialog h2{font-size:15px;font-weight:700}.compose-dialog>header .icon-btn{align-self:center;width:30px;height:30px;margin-left:auto}.compose-dialog .composer textarea{max-height:min(20lh,max(4lh,calc(86dvh - 180px)))}.compose-dialog .composer,.compose-dialog>.loading,.compose-dialog>.flash,.compose-dialog>.notice{margin:10px 16px 16px}@media(max-width:760px){.composer-settings:popover-open{right:16px!important;grid-template-columns:minmax(0,1fr);gap:4px}.notice.slim .grow{white-space:normal}}.composer-line .folder{display:contents}.composer-line input.folder-path{flex:0 1 260px;min-width:0;min-height:0;height:28px;padding:3px 8px;border:1px solid transparent;background:none;font-size:11.5px}.composer-line input.folder-path:focus{border-color:var(--line2);box-shadow:none}.composer-line .folder-busy{flex:none;font-size:11.5px;color:var(--muted)}.composer>.folder-hint{flex:1 1 100%;padding:0 8px 4px;font-size:11px;color:var(--muted)}.composer>.flash{flex:1 1 100%;padding:2px 8px 4px}.model-pick{display:inline-flex;min-width:0}.field .model-pick{display:flex;max-width:420px}.model-pick-btn{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:7px 10px 7px 12px;border:1px solid var(--line2);background:var(--field);text-align:left;white-space:nowrap;cursor:pointer}.model-pick-btn small{font-size:10px}.model-pick-btn .grow{overflow:hidden;text-overflow:ellipsis}.model-pick-btn .ic{color:var(--dim)}.model-pick-btn:focus-visible{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--accbg)}.model-pick.compact .model-pick-btn{min-height:32px;padding:5px 10px 5px 12px;border-color:transparent;background:var(--wash2)}.model-pick.compact .model-pick-btn:hover{background:var(--line2)}.model-pop{position:fixed;inset:auto;width:300px;overflow-y:auto}.model-choices .pop-item{width:100%;min-height:30px;font-size:12px}.model-choices .add-models{margin-top:4px;color:var(--muted)}.model-choices .add-models .ic{width:14px;height:14px}.model-choices .pop-group{margin:6px 10px 2px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}.pop-chev{display:inline-flex;align-items:center;gap:4px;flex:none;align-self:stretch;padding:0 8px 0 10px;width:auto;border:0;background:none;color:var(--dim);cursor:pointer}.pop-chev:focus-visible{outline-offset:-2px}.pop-chev:hover,.pop-chev[aria-expanded=true]{color:var(--fg);background:var(--wash)}.pop-chev small{font-size:10px}.pop-chev .ic{width:14px;height:14px;transition:rotate .15s}.pop-chev[aria-expanded=true] .ic{rotate:90deg}.pop-flyout{position:fixed;inset:auto;margin:0;min-width:170px}.pop-chev:has(+.pop-flyout:popover-open){color:var(--fg);background:var(--wash)}.pop-chev:has(+.pop-flyout:popover-open) .ic{rotate:0deg}.model-choices .pop-row .pop-chev small{visibility:hidden}.model-choices .pop-row:is(:hover,:focus-within,:has([aria-checked=true]),:has(.pop-flyout:popover-open)) .pop-chev small{visibility:visible}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px 20px;margin:0}.facts dt{font-size:10px;color:var(--muted)}.facts dd{margin:4px 0 0;overflow-wrap:anywhere}.versions li{display:flex;align-items:first baseline;gap:14px;padding:12px 16px;border-top:1px solid var(--line)}.md{overflow-wrap:anywhere}.md :where(h3,h4,h5,h6){margin:0;font-size:13px;font-weight:700}.md h3{font-size:14px}.md ul{padding-left:20px;list-style:disc}.md ol{padding-left:20px;list-style:decimal}.md pre{margin:0;padding:8px 12px;overflow-x:auto;background:var(--wash)}.md pre code{padding:0;background:none}.md .table{overflow-x:auto}.md table{border-collapse:collapse}.md :where(th,td){padding:4px 12px 4px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.md th{font-weight:700}.collapse{position:relative}.collapse:not(.open){padding-bottom:6px}.collapse-box{box-sizing:content-box;max-height:calc(var(--lines) * 1lh + 44px);overflow:hidden}.collapse.open>.collapse-box{max-height:none}.collapse.long:not(.open)>.collapse-box{mask-image:linear-gradient(#000 calc(100% - 52px),transparent calc(100% - 36px))}.collapse>.btn.more-toggle{position:absolute;z-index:1;left:50%;bottom:6px;translate:-50% 0}.collapse.open>.btn.more-toggle{position:static;display:flex;margin:0 auto 12px;translate:none}
1
+ .app{--side: 232px;display:grid;grid-template-columns:var(--side) minmax(0,1fr);grid-template-rows:56px 1fr;min-height:100vh}.top{grid-column:1 / -1;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px 0 20px;background:var(--bg);border-bottom:1px solid var(--line2)}.top-l,.top-r{display:flex;align-items:center;gap:10px;min-width:0}.lockup{display:grid}.lockup small{font-weight:400;font-size:8px;line-height:8px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}.side{position:sticky;top:56px;z-index:12;height:calc(100vh - 56px);display:flex;flex-direction:column;justify-content:space-between;padding:16px 12px;border-right:1px solid var(--line)}.side-main{display:grid;gap:16px}.side nav{display:grid;gap:2px}.side nav a{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;color:var(--muted);border-left:2px solid transparent}.side nav a:hover{color:var(--fg);background:var(--wash)}.side nav a[aria-current]{color:var(--fg);background:var(--wash2);border-left-color:var(--deep)}.side nav .n,.side nav .dot{margin-left:auto;background:var(--accbg);color:var(--acc)}.dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--warn)}.dot.ok{background:var(--ok);box-shadow:0 0 0 3px var(--okbg)}.server>button{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);font-size:12px;text-align:left;cursor:pointer}.server>button:hover{background:var(--wash)}.server>button .grow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server .ic{color:var(--dim);width:14px}.server .pop{width:max-content;max-width:calc(100vw - 32px)}.server .kv dd{white-space:nowrap}.org,.avatar{display:inline-grid;place-items:center;flex:none;width:26px;height:26px;background:var(--wash2);font-weight:700;font-size:12px}.avatar{width:32px;height:32px}.avatar-btn{display:grid;place-items:center;width:32px;height:32px;background:var(--fg);color:var(--bg);font-weight:700;cursor:pointer}.kv{display:grid;grid-template-columns:max-content 1fr;gap:8px 20px;margin:0}.kv dt{color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}.pop .kv{padding:6px 10px 10px;font-size:12px}.theme .ic.sun,.theme .ic.moon,.theme .ic.sys{display:none}:root[data-theme=light] .theme .ic.sun,:root[data-theme=dark] .theme .ic.moon,:root:not([data-theme]) .theme .ic.sys{display:block}.app>.auth{position:fixed;inset:0;z-index:60;overflow:auto;background:var(--bg)}@media(max-width:760px){.app{grid-template-columns:minmax(0,1fr)}.top{padding:0 10px}.side{position:fixed;top:56px;left:0;bottom:0;height:auto;width:min(280px,84vw);z-index:30;background:var(--bg);border-right:1px solid var(--line2);transform:translate(-100%);transition:transform .2s}}.side-foot{display:grid;gap:8px}button.side-toggle{justify-self:end;color:var(--dim)}.side-min .side-toggle{justify-self:center}.app.side-min{--side: 60px}.side-min .top .lockup{display:none}.side-min .side{padding-inline:10px}.side-min .side nav a{justify-content:center;gap:0;padding:0;font-size:0}.side-min .create .btn{gap:0;padding:0;font-size:0}.side-min .side nav .n{display:none}.side-min .side nav .dot{position:absolute;top:8px;right:8px}.side-min .side [data-tip],.side-toggle{position:relative}.side-min .side [data-tip]:after,.side-toggle:after{content:attr(data-tip) / "";position:absolute;top:50%;left:calc(100% + 12px);z-index:30;padding:6px 10px;border:1px solid var(--line2);background:var(--tile);box-shadow:0 12px 32px #0000002e;color:var(--fg);font-size:12px;letter-spacing:normal;white-space:nowrap;transform:translateY(-50%);pointer-events:none;opacity:0;transition:opacity .1s}.side-min .side [data-tip]:before,.side-toggle:before{content:"";position:absolute;top:50%;left:calc(100% + 8px);z-index:31;width:8px;height:8px;border-bottom:1px solid var(--line2);border-left:1px solid var(--line2);background:var(--tile);transform:translateY(-50%) rotate(45deg);pointer-events:none;opacity:0;transition:opacity .1s}.side-min .side [data-tip]:is(:hover,:focus-visible):before,.side-min .side [data-tip]:is(:hover,:focus-visible):after,.side-toggle:is(:hover,:focus-visible):before,.side-toggle:is(:hover,:focus-visible):after{opacity:1}.side-toggle:is(:hover,:focus-visible):before,.side-toggle:is(:hover,:focus-visible):after{transition-delay:.7s}.side-min .menu:has(:popover-open)>[data-tip]:before,.side-min .menu:has(:popover-open)>[data-tip]:after{opacity:0}.side-min .server>button{justify-content:center;padding:10px 0}.side-min .server>button :is(.grow,.ic){display:none}@media(max-width:760px){button.side-toggle{display:none}.app.side-min{grid-template-columns:minmax(0,1fr)}}.auth{display:grid;min-height:100vh}.auth-side{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:40px 24px 72px}.auth-frame{width:100%;max-width:440px}.auth-frame .bar{min-height:32px;font-size:10px}.auth-frame .brand{font-size:12px}.tag{margin-left:auto;padding:1px 8px;background:var(--deep);color:#fff}.auth-body{display:grid;gap:14px;padding:28px 24px 26px}.auth-body h1{font-size:22px}.auth-body .lead{margin:0 0 6px}.auth-body form{display:grid;gap:14px}.auth-links{position:absolute;bottom:24px;left:0;right:0;display:flex;justify-content:center;gap:24px;font-size:9px;color:var(--muted)}.auth-links a:hover{color:var(--fg)}.ic{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.brand .coder-mark{flex:none;position:relative;top:-1px;width:16px;height:16px;fill:currentColor}th .ic{width:12px;height:12px}.pop,.more-list{position:fixed;inset:auto;margin:0;padding:6px;white-space:normal;max-height:calc(100vh - 24px);overflow-y:auto;border:1px solid var(--line2);background:var(--tile);color:inherit;box-shadow:0 12px 32px #0000002e}:where(.menu,.more)>button{padding:0;border:0;background:none;color:inherit;cursor:pointer}.menu>.pop,.more>.more-list{inset:0;margin:auto}@supports (anchor-scope: --menu){.menu,.more{anchor-scope:--menu}:where(.menu,.more)>button{anchor-name:--menu}.menu>.pop,.more>.more-list{position-anchor:--menu;inset:anchor(bottom) auto auto anchor(left);margin:8px 0 0}.menu>.pop{min-width:max(260px,anchor-size(width));position-try-fallbacks:flip-inline}.more>.more-list{position-try-fallbacks:flip-block}.menu.right>.pop,.more>.more-list{inset:anchor(bottom) anchor(right) auto auto}.menu.up>.pop{inset:auto anchor(right) anchor(top) anchor(left);margin:0 0 8px}.menu>.pop.flip{inset:auto auto anchor(top) anchor(left);margin:0 0 8px}.menu.right>.pop.flip{inset:auto anchor(right) anchor(top) auto}.menu.up>.pop.flip{inset:anchor(bottom) anchor(right) auto anchor(left);margin:8px 0 0}}.pop{z-index:40;min-width:260px}.menu.up>.pop{min-width:0}.pop.wide{width:min(320px,calc(100vw - 32px))}.pop hr{border:0;border-top:1px solid var(--line);margin:6px 0}.pop-label{padding:8px 10px 4px;font-size:10px;color:var(--dim);border-top:1px solid var(--line)}.pop-head+.pop-label,.pop .pop-label:first-child{border-top:0}.pop-item{display:flex;align-items:center;gap:12px;width:100%;padding:8px 10px;border:0;background:none;text-align:left;cursor:pointer}.pop-item:hover{background:var(--wash)}.pop-item.danger:hover{background:var(--badbg);color:var(--bad)}.pop-item:disabled,.pop-item[aria-disabled=true]{cursor:default}.pop-item:disabled:hover,.pop-item[aria-disabled=true]:hover{background:none}.pop-item small{display:block;color:var(--muted);font-size:11.5px}.pop-item.rich{align-items:flex-start}.pop-item.rich .ic{margin-top:2px}.pop-item[role=menuitemradio]>.ic:last-child{visibility:hidden}.pop-item[role=menuitemradio][aria-checked=true]>.ic:last-child{visibility:visible;color:var(--acc)}.pop form{margin:0}.pop-head{display:flex;align-items:center;gap:12px;padding:8px 10px 12px;min-width:0}.pop-head b,.pop-head small{display:block;overflow:hidden;text-overflow:ellipsis}.pop-head small{color:var(--muted);font-size:11.5px}.pop-row{display:flex;align-items:center}.pop-row>.pop-item{flex:1 1 auto}.pop-row>.pop-item small{margin-right:6px;color:var(--muted);font-size:11px}.pop-note{padding:0 10px 8px;font-size:11.5px;color:var(--muted)}.more{flex:none}.more>button{padding:0 7px;border:1px solid var(--line2);color:var(--fg);font-size:11.5px;white-space:nowrap}.more:hover>button,.more:has(:popover-open)>button{border-color:var(--acc);color:var(--acc)}.more.info>button{display:inline-flex;padding:0;border:0;color:var(--muted);vertical-align:middle}.more.info .ic{width:14px;height:14px}.more.info>.more-list{max-width:280px;padding:10px 12px;gap:6px;color:var(--fg);font-size:13px;letter-spacing:normal;text-align:left}.more-list{--max: 220px;z-index:45;min-width:220px}.more-list:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.more-list:popover-open{display:grid;gap:4px}.more-list>:not(.pf-row,p){padding:4px 6px}@media(max-width:760px){.pop.wide{min-width:min(320px,calc(100vw - 32px))}}.scrim{display:none}@media(max-width:760px){.drawer .side{transform:none}.scrim{display:block;position:fixed;inset:56px 0 0;z-index:25;background:#0b0c1073;opacity:0;pointer-events:none;transition:opacity .2s}.drawer .scrim{opacity:1;pointer-events:auto}}@media(min-width:761px){button.only-m{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:34px;padding:0 14px;border:1px solid var(--deep);background:var(--deep);color:#fff;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;white-space:nowrap;cursor:pointer}.btn:hover{filter:brightness(1.12)}.btn.outline{background:transparent;color:var(--fg);border-color:var(--line2)}.btn.outline:hover,.btn.ghost:hover{background:var(--wash);filter:none}.btn.ghost{background:transparent;border-color:transparent;color:var(--fg)}.btn.secondary{background:var(--wash2);border-color:transparent;color:var(--fg)}.btn.secondary:hover{background:var(--line2);filter:none}.btn.danger{background:light-dark(#c92a2a,#d42f2f);border-color:light-dark(#c92a2a,#d42f2f);color:#fff}.btn.secondary.danger{background:var(--badbg);border-color:transparent;color:var(--bad)}.btn.secondary.danger:is(:hover,:focus-visible){background:light-dark(rgba(224,49,49,.18),rgba(224,49,49,.3))}.btn.outline.danger{background:transparent;border-color:var(--line2);color:var(--bad)}.btn.ghost.danger{background:transparent;border-color:transparent;color:var(--fg)}.btn:is(.outline,.ghost).danger:is(:hover,:focus-visible){background:var(--badbg);color:var(--bad)}.btn.sm{height:28px;padding:0 10px;font-size:10px}.btn.wide{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.btn:disabled:not(.outline,.ghost,.secondary,.danger){background:light-dark(var(--deep),var(--line2));border-color:light-dark(var(--deep),transparent)}.btn-spin{flex:none;width:12px;height:12px;margin:2px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.btn[aria-busy=true]:not(:has(>.btn-spin)){position:relative;-webkit-text-fill-color:transparent}.btn[aria-busy=true]:not(:has(>.btn-spin)):after{content:"";position:absolute;inset:0;width:12px;height:12px;margin:auto;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;border:0;background:none;color:var(--muted);cursor:pointer}.icon-btn:hover{color:var(--fg);background:var(--wash)}td .btn,td .icon-btn{height:28px;margin-block:-3px -5px;vertical-align:top}td .icon-btn{width:28px}.bar-r .icon-btn{width:28px;height:28px}.toasts{position:fixed;z-index:50;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;width:min(420px,calc(100vw - 32px));height:auto;inset:16px 16px 16px auto;margin:0;padding:0;border:0;background:none;color:inherit;overflow:visible;pointer-events:none}.toast{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:14px 16px;border:1px solid var(--line2);background:var(--tile);box-shadow:0 12px 32px #0000002e;pointer-events:auto;animation:toast-in .15s ease-out}.toast-head{display:flex;align-items:center;gap:10px;margin:0}.toast-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg);text-decoration:none}a.toast-title:hover{text-decoration:underline}.toast-head .icon-btn{width:24px;height:24px;margin:-4px -8px -4px 0}.toast-head .icon-btn:hover{background:var(--wash2)}.toast-line{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.toast:is(.success,.warning,.error){border-top:3px solid var(--tone)}.toast.success{--tone: var(--ok)}.toast.warning{--tone: var(--warn)}.toast.error{--tone: var(--bad)}.toast.error .toast-line{white-space:normal}@keyframes toast-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){.toast{animation:none}}.st{display:inline-flex;align-items:baseline;gap:7px;padding:2px 8px;font-size:10px;letter-spacing:.14em;white-space:nowrap;color:var(--muted);background:var(--wash)}.st i{align-self:center;width:7px;height:7px;border-radius:50%;background:currentColor}.st.running{color:var(--acc);background:var(--accbg)}.st.running i{width:9px;height:9px;background:none;border:1.5px solid currentColor;border-top-color:transparent;animation:spin 1s linear infinite}.st.waiting{color:var(--warn);background:var(--warnbg)}.st.completed{color:var(--ok);background:var(--okbg)}.st.failed{color:var(--bad);background:var(--badbg)}.st.queued i,.st.cancelled i{background:none;border:1.5px solid currentColor}.stats .st{justify-self:start}.badge{display:inline-flex;align-items:center;gap:6px;padding:1px 7px;border:1px solid var(--line2);font-size:10px;letter-spacing:.14em;color:var(--muted);white-space:nowrap}.badge.acc{border-color:transparent;background:var(--accbg);color:var(--acc)}.badge.ok{border-color:transparent;background:var(--okbg);color:var(--ok)}.badge.warn{border-color:transparent;background:var(--warnbg);color:var(--warn)}.badge.bad{border-color:transparent;background:var(--badbg);color:var(--bad)}.badge.solid{border-color:var(--fg);background:var(--fg);color:var(--bg)}a.badge:hover,button.badge:hover{border-color:var(--acc)}button.badge{cursor:pointer}.chips{display:inline-flex;flex-wrap:wrap;gap:4px}.chip{line-height:18px;padding:0 6px;border:1px solid var(--line2);font-size:11.5px;color:var(--muted)}.id{font-size:11.5px;color:var(--dim)}button.chip{background:none;cursor:pointer}button.chip:hover,button.chip[aria-pressed=true]{border-color:var(--acc);color:var(--acc)}.page.narrow{max-width:760px}.meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.page .head,.page .hero{position:sticky;top:56px;z-index:10;margin:-10px -40px 0;padding:10px 40px 6px;background:var(--bg);overflow-anchor:none}.page{--stuck: calc(56px + var(--head, 0px) + var(--tabs, 0px))}.page:has(.tabs:not(.vertical)){--tabs: 40px}.page *{scroll-margin-top:calc(var(--stuck) + 16px)}.back{display:inline-flex;align-items:center;gap:4px;margin-bottom:6px;font-size:12px;color:var(--muted)}.stuck>div:first-child:has(>.back,>*>.back){display:flex;align-items:center;gap:8px}.stuck .back{flex:none;margin:0}.stuck .back>span{display:none}.back:hover{color:var(--fg)}.back .ic{width:14px;height:14px}.title-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;min-width:0}.title-row h1{min-width:0}.head .title-row{flex-wrap:nowrap}.head .title-row h1{flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.head .title-row .meta{flex:none}@media(max-width:760px){.page .head,.page .hero{margin-inline:-16px;padding-inline:16px}.head .title-row{flex-wrap:wrap}}.head .meta:empty{min-height:20px}.sentinel{display:block;height:0;margin-bottom:-20px}.stuck{border-bottom:1px solid var(--line2);align-items:center;flex-wrap:nowrap}.stuck h1{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stuck .lead{display:none}.stuck .title-row{flex-wrap:nowrap}.stuck .meta{flex-wrap:nowrap;overflow:hidden}.stuck>div:first-child,.stuck>.grow{flex:1 1 auto;min-width:0}.stuck .actions{flex:none;flex-wrap:nowrap;width:auto;justify-content:flex-end}.stuck .hero-mark{width:28px;height:28px;font-size:13px}.stuck.hero{align-items:center;gap:12px}.hero.stuck .title-row .badge{display:none}@media(max-width:760px){.stuck .actions>:not(.flash,dialog)~:not(.flash,dialog){display:none}}.bar-r{display:flex;align-items:center;margin-block:-2px;gap:8px;flex-wrap:wrap;justify-content:flex-end}.card.accent{border-color:var(--warn);background:linear-gradient(var(--warnbg),var(--warnbg)),var(--panel)}.card.danger{border-color:var(--bad)}.fold>summary{list-style:none;cursor:pointer}.fold>summary::-webkit-details-marker{display:none}.fold:not([open])>summary{border-bottom:0}.fold>summary h2{flex:0 0 auto}.fold-note{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.fold>summary:hover{background:var(--wash)}.fold>summary:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}.fold>summary .btn{pointer-events:none}.fold[open]>summary .fold-open,.fold:not([open])>summary .fold-close{display:none}.empty{display:grid;justify-items:center;gap:6px;padding:32px 16px;border:1px dashed var(--line2);text-align:center;color:var(--muted)}.empty b{color:var(--fg);font-weight:500}.card .empty{border:0}.empty .actions{justify-content:center;margin-top:10px}.loading{display:flex;align-items:center;justify-content:center;gap:10px;flex:1 0 auto;min-height:var(--h, 240px);color:var(--dim);font-size:12px}.loading.inline{display:inline-flex;min-height:0}.card:has(>.loading:not([style])){flex:1 0 auto;display:flex;flex-direction:column}.loading>span{display:inline-flex;align-items:center;gap:10px;animation:loader-in 0s 60ms both}.loading.late>span{animation-delay:.3s}.loading .spin{flex:none;width:12px;height:12px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.loading .dots{display:inline-flex;gap:3px}.loading .dots>b{width:4px;height:4px;border-radius:50%;background:currentColor;animation:dots 1.2s ease-in-out infinite}.loading .dots>b:nth-child(2){animation-delay:.2s}.loading .dots>b:nth-child(3){animation-delay:.4s}@keyframes dots{0%,80%,to{opacity:.25}40%{opacity:1}}.card.frame.filled{border-color:transparent;background:var(--surface)}.filter-chips{display:flex;flex:1 1 0;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none}.filters:has(>.filter-chips)>.search{flex-grow:1000}.head.tools .filter-chips{order:-1}.head.tools .filter-chips>:first-child{margin-left:auto}.filter-chips .chip{display:inline-flex;flex:none;align-items:center;gap:4px;max-width:200px}.filter-chips .chip .grow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chips .chip .ic{width:12px;height:12px}.filter-more>.pop:popover-open{display:block;width:min(260px,calc(100vw - 32px));max-height:calc(100vh - 160px);overflow-y:auto;padding:6px}.filter-more .pop-label:not(:first-child){margin-top:10px}.filter-more .pop-item{width:100%;min-height:30px;font-size:12px}.field-btn{display:flex;align-items:center;gap:10px;min-height:36px;padding:7px 12px;border:1px solid var(--line2);background:var(--field);white-space:nowrap;cursor:pointer}.field-btn:focus-visible,.field-btn:has(+.pop:popover-open){outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--accbg)}.field-btn:disabled{color:var(--muted);cursor:default}.filter-more>.field-btn.on{color:var(--acc)}.filter-panel .pop-item>.brand-icon{width:16px;height:16px}.filter-panel [data-facet]{color:var(--muted)}.filter-panel .search{margin:4px 0 6px}.filter-panel .search input{width:100%}@media(max-width:760px){.head.tools .filter-chips{order:0}.head.tools .filter-chips>:first-child{margin-left:0}}.head.tools{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px 24px;min-height:36px}.head.tools>div:first-child{display:contents}.head.tools .lead{grid-row:2;grid-column:1 / -1}.head.tools>.filters{grid-row:1;grid-column:2;justify-content:flex-end}.head.tools>.filters:last-child{grid-column:2 / -1}.head.tools>.actions{grid-row:1;grid-column:3}.page{container-type:inline-size}@container (max-width: 720px){.head.tools:has(>.actions)>.filters{grid-row:auto;grid-column:1 / -1;justify-content:flex-start}.head.tools:has(>.actions) .search{max-width:none}}.filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search{position:relative;display:block}.tab-body .filters{position:sticky;top:calc(56px + var(--head, 0px) + var(--tabs, 0px));z-index:8;margin-block:-8px;padding-block:8px;background:var(--bg)}.filters .search{flex:1 1 240px;max-width:360px}.search .ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--dim);pointer-events:none}label.search input[type=search]{padding-left:32px}.filters .select{flex:none}.filters .end{margin-left:auto}.vsearch .search{width:min(280px,100%)}@media(max-width:760px){.head.tools{grid-template-columns:minmax(0,1fr) auto;row-gap:12px}.head.tools>.filters{grid-row:3;grid-column:1 / -1}.head.tools>.actions{grid-column:2;width:auto}.filters .search{max-width:none}.filters:has(>.filter-chips:not(:empty)) .search{flex-basis:100%}.filters .filter-more{margin-left:auto}.filters .select{flex:1 1 0}.filters .select>button{gap:4px;padding-inline:8px}.head.tools.stuck>.filters>.select{display:none}}.select{position:relative;display:inline-flex;min-width:0}.field .select{display:flex}.select>button{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:7px 10px 7px 12px;border:1px solid var(--line2);background:var(--field);text-align:left;white-space:nowrap;cursor:pointer;touch-action:manipulation}.select>button .grow{overflow:hidden;text-overflow:ellipsis}.select>button .ic{color:var(--dim);transition:transform .15s}.select>button[aria-expanded=true] .ic{transform:rotate(180deg)}.select>button:focus-visible,.select>button[aria-expanded=true]{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--accbg)}.select>button:disabled{color:var(--muted);cursor:default}.select-pop{min-width:0;max-width:min(440px,calc(100vw - 16px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line2) transparent}.select-pop .pop-item{white-space:nowrap}.select-pop .pop-item:hover{background:none}.select-pop .pop-item.on{background:var(--wash2)}.select-pop .pop-item>.ic{visibility:hidden}.select-pop .pop-item[aria-selected=true]>.ic{visibility:visible;color:var(--acc)}.select>button:disabled{opacity:.65;cursor:default}.select-pop .pop-item small{display:block;overflow:hidden;direction:rtl;text-align:left;white-space:nowrap;text-overflow:ellipsis;font-size:11px;color:var(--muted)}.select-pop .pop-item .grow{min-width:0;overflow:hidden;text-overflow:ellipsis}.select-pop .pop-item.action{margin-top:4px;color:var(--muted)}.select-pop .pop-item.action>.ic{visibility:visible;width:14px;height:14px}.select-pop .pop-item.action.on{color:var(--fg)}.select .brand-icon,.select-pop .brand-icon{flex:none;width:14px;height:14px}dialog.modal{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 48px);margin:auto;padding:0;border:3px solid light-dark(rgba(11,12,16,.3),rgba(255,255,255,.15));background:var(--tile);color:inherit;text-align:left;white-space:normal}dialog.modal:focus-visible{outline:none}dialog.modal::backdrop{background:light-dark(rgba(0,0,0,.1),rgba(0,0,0,.45))}.modal form{display:grid;gap:16px;padding:20px 24px 24px}.modal header{display:flex;align-items:center;gap:10px}.modal header:has(.icon-btn){margin-right:-10px}.modal h2{flex:1;font-size:15px;font-weight:700;overflow-wrap:anywhere}.modal .actions{justify-content:flex-end;margin-top:4px}@media(min-width:561px){.modal .actions>:first-child:not(:only-child){margin-right:auto}}dialog.confirm,dialog.outcome-dialog{width:min(500px,calc(100vw - 32px))}.confirm p,.outcome-dialog p{color:var(--muted);line-height:1.6}.confirm form{gap:8px}.confirm .actions{margin-top:12px}.outcome-dialog form{gap:10px;padding:24px 24px 20px}dialog.modal.tone{border-top:3px solid var(--tone)}dialog.modal.neutral{--tone: var(--muted)}dialog.modal.success{--tone: var(--ok)}dialog.modal.warning{--tone: var(--warn)}dialog.modal.error{--tone: var(--bad)}.modal.tone header{color:var(--tone)}.modal.tone h2{color:var(--fg)}.outcome-dialog .actions{margin-top:14px}@media(max-width:560px){.modal .actions{flex-direction:column-reverse;align-items:stretch}.modal .actions>*{margin-right:0}}.tabs{display:flex;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none;box-shadow:inset 0 -1px var(--line2)}.page .tabs:not(.vertical){height:40px;margin-top:-8px;position:sticky;top:calc(56px + var(--head, 0px));z-index:9;background:var(--bg)}.tabs a,.tabs>button{display:flex;flex:none;align-items:center;gap:8px;padding:10px 12px;border:0;border-bottom:2px solid transparent;background:none;font-size:10.5px;color:var(--muted);white-space:nowrap;cursor:pointer}.tabs a:hover,.tabs>button:hover{color:var(--fg)}.tabs:focus{outline:none}.tabs a:focus-visible,.tabs>button:focus-visible{outline-offset:-2px}.tabs a[aria-current],.tabs a[data-pending],.tabs>button[aria-current]{color:var(--fg);border-bottom-color:var(--fg)}.tabs:has(a[data-pending]) a[aria-current]:not([data-pending]){color:var(--muted);border-bottom-color:transparent}.tabs .count{color:var(--dim)}@property --tabs-fade{syntax: "<length>"; inherits: false; initial-value: 0px;}@keyframes tabs-fade{0%{--tabs-fade: 40px}to{--tabs-fade: 0px}}.tabs{mask-image:linear-gradient(to left,transparent,#000 var(--tabs-fade));animation:tabs-fade linear both;animation-timeline:scroll(self inline)}.tabs[aria-hidden]>*{visibility:hidden}@media(max-width:760px){.page .tabs:not(.vertical){gap:0}.page .tabs:not(.vertical) a,.page .tabs:not(.vertical)>button{gap:4px;padding-inline:6px;letter-spacing:.04em}}.hero{display:flex;align-items:flex-start;gap:20px;flex-wrap:wrap}.hero>.grow{flex:1 1 280px}.hero-side{display:grid;gap:14px;justify-items:end}.hero .handles{display:grid;gap:4px;flex:none;font-size:12px;color:var(--muted);text-align:right}.hero .handles b{color:var(--fg)}.hero .handles .more-list .handles{text-align:left}.hero.stuck .handles,.hero.stuck .lead{display:none}.hero.stuck>.grow{display:contents}.hero.stuck .back{order:-1}.hero.stuck .title-row{flex:1 1 auto;min-width:0}.hero .title-row button.link{padding:0;border-width:0 0 1px;background:none;font-size:12px;line-height:1;cursor:pointer}.hero .lead{display:-webkit-box;min-height:2lh;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.hero-mark{display:grid;place-items:center;flex:none;width:64px;height:64px;background:var(--blue);color:#fff;font-size:26px;font-weight:700}@media(max-width:760px){.hero{gap:14px}.hero-mark{width:48px;height:48px;font-size:20px}.hero-side{justify-items:start}.hero .handles{text-align:left}@supports (anchor-scope: --menu){.hero .more>.more-list{inset:anchor(bottom) auto auto anchor(left)}}}.link-pill{color:var(--acc);text-transform:none;letter-spacing:.02em}.link-pill .ic{width:12px;height:12px}.pf{display:inline-flex;flex:none;align-items:center;gap:7px;color:var(--muted);white-space:nowrap}.brand-icon{width:12px;height:12px;flex:none}.brand-icon>svg{display:block;width:100%;height:100%}.more-list:has(.pf-row){min-width:180px;gap:0}.pf-row{display:flex;align-items:center;padding:8px 10px}:is(.pfs>a,a.pf-row):hover{background:var(--wash)}.pfs>a{position:relative;z-index:1;margin:-3px -6px;padding:3px 6px}.pf-row .pf{gap:12px;color:var(--fg)}.tasks{table-layout:fixed;min-width:944px}.tasks th:nth-child(2){width:160px}.tasks .model{width:160px}.tasks th:nth-child(4){width:120px}.tasks th.num{width:136px}.tasks th:nth-child(6){width:128px}td.model{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.tasks td{padding-block:9px;vertical-align:middle}.tasks .cover{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.tasks td:first-child .sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks td:first-child .sub{margin-top:1px}.tasks .sub .ic{width:12px;height:12px;margin-right:5px;color:var(--dim);vertical-align:-2px}@media(min-width:761px){.tasks th:last-child,.tasks td:last-child{position:sticky;right:0;z-index:1;background:var(--panel)}.tasks tbody tr:hover td:last-child{background:linear-gradient(var(--wash),var(--wash)),var(--panel)}.table-scroll:has(>.tasks){container-type:scroll-state}@container scroll-state(scrollable: inline-end){.tasks th:last-child,.tasks td:last-child{box-shadow:-8px 0 8px -8px light-dark(rgba(11,12,16,.25),rgba(0,0,0,.7))}}}@media(max-width:760px){.tasks{min-width:0}.tasks td{padding-block:0}.tasks td:is(.when,.num){order:1}.tasks.stacked tr{grid-template-columns:auto minmax(0,1fr) auto}.tasks.stacked td:last-child{position:relative;display:flex;align-items:center;justify-self:end;padding-right:0}.tasks td.num{grid-column:3}.tasks td.model{align-self:center}.tasks td:is(.when,.num,.model){font-size:11.5px}.tasks td.num{justify-self:end;color:var(--muted)}}.source{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.source .ic{color:var(--dim)}.tasks th:last-child,.tasks td:last-child{padding-right:28px}.row-acts{position:absolute;top:50%;right:8px;z-index:1;translate:0 -50%;opacity:0;transition:opacity .12s}.tasks tr:is(:hover,:focus-within) .row-acts,.row-acts:has(.pop:popover-open){opacity:1}.approval-queue{--max: 420px;display:grid;margin:0;padding:0;list-style:none}.queue-row{display:flex;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--line)}.queue-row:first-child{border-top:0}.queue-row>details{flex:1;min-width:0}.queue-row summary{display:grid;gap:2px;cursor:pointer;list-style:none}.queue-row summary::-webkit-details-marker{display:none}.queue-ask{display:flex;align-items:baseline;gap:8px;min-width:0}.queue-reason{overflow:hidden;font-size:13px;color:var(--fg);text-overflow:ellipsis;white-space:nowrap}.queue-task{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;min-width:0;font-size:12px}.queue-task>a{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.queue-task>a:hover{color:var(--fg)}.queue-task>a{max-width:100%}.queue-row details[open] .queue-reason{white-space:normal}.queue-row .body{display:grid;gap:10px;padding:10px 0 0}.queue-acts{display:flex;flex:none;gap:6px}@media(max-width:760px){.queue-row{flex-wrap:wrap}.queue-acts{margin-left:auto}.queue-ask{flex-wrap:wrap}}.card.accent:has(>.approval-queue){background:var(--panel)}@media(min-width:761px){.queue-task>.admin-ask:before{content:"\b7";margin-right:10px}}.head .lead:has(.fact){display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;font-size:12px}.fact{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.fact .ic{width:12px;height:12px;color:var(--dim)}.fact-dim{color:var(--dim)}.head.stuck .lead:has(.fact){display:none}@media(max-width:760px){.head:has(.fact) .back{height:34px}.head:has(.fact) .title-row>h1{flex-basis:100%}.head:has(.fact)>.actions{position:absolute;top:10px;right:16px;width:auto;flex-wrap:nowrap}.head.stuck:has(.fact)>.actions{position:static}.head.stuck:has(.fact)>.actions>.menu{display:inline}.head.stuck:has(.fact) .title-row>h1{flex-basis:auto}.head.stuck:has(.fact) .meta{display:none}.reply-box,.reply-box textarea{min-width:0}}.agent-link{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted);text-decoration:underline dotted;text-underline-offset:3px}.agent-link .ic{width:12px;height:12px}.turn.answer,.turn.reply{border-left-color:var(--line2)}.agent-link:hover{color:var(--fg)}.logs{margin:0;padding:16px;max-height:420px;overflow:auto;font:12.5px/1.8 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--tile)}pre.json{margin:0;overflow-x:auto}.convo{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.turn{min-width:0;padding:12px 16px;border-left:2px solid var(--acc);background:var(--tile)}.turn .who{margin-bottom:4px;font-size:11px;color:var(--dim)}.turn .collapse.open>.btn.more-toggle{margin:8px auto 0}.act-list{position:relative}.act-slot{position:absolute;top:0;left:0;width:100%}.act{display:grid;grid-template-columns:76px 16px minmax(0,1fr);align-items:baseline;gap:10px;width:100%;padding:3px 8px;border:0;border-left:2px solid transparent;background:none;font:12.5px/1.7 var(--mono);text-align:left}:is(.act.fold,button.act){grid-template-columns:76px 16px minmax(0,1fr) 14px;cursor:pointer}.act .act-chev{visibility:hidden}:is(.act.fold,button.act):hover .act-chev,.act.open .act-chev{visibility:visible}.act.open .act-chev{rotate:180deg}:is(.act.fold,button.act):hover{background:var(--wash)}.act time{color:var(--dim);font-size:11px}.act .ic{width:13px;height:13px;align-self:start;margin-top:4px;color:var(--dim)}.act-text{display:flex;gap:12px;min-width:0}.act-title,.act-detail{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.act-title{flex:0 1 auto}.act-detail{flex:1 1 0;color:var(--dim)}.act.open .act-text{display:grid;gap:2px}.act.open :is(.act-title,.act-detail){white-space:pre-wrap;overflow-wrap:anywhere}.act.muted .act-title,.act.usage .act-title{color:var(--muted)}.act.assistant .act-title{color:var(--fg);font-size:13px;line-height:21.25px}.act.assistant .ic{color:var(--acc)}.act.approval{border-left-color:var(--acc);background:var(--accbg)}.act.approval .ic{color:var(--acc)}.act.warning :is(.act-title,.ic){color:var(--warn)}.act.error :is(.act-title,.ic){color:var(--bad)}.act.steer :is(.act-title,.ic){color:var(--acc)}.act.timed{grid-template-columns:76px 16px minmax(0,1fr) auto 14px}.act-state{color:var(--dim);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.act-state.bad,.act-state.bad .ic{color:var(--bad)}.act-state :is(.ic,.spin){display:inline-block;width:11px;height:11px;margin:0 6px 0 0;vertical-align:-1px}.act-state .spin,.act.step>.spin{border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:760px){.act.approval.timed{grid-template-columns:76px 16px minmax(0,1fr) 14px}.act.approval .act-state{grid-column:3;grid-row:2;white-space:normal;overflow-wrap:anywhere}.act.approval .act-chev{grid-column:4;grid-row:1}}.run-sum,.run-foot{color:var(--muted);font-size:12px}.run>.run-steps{display:grid;grid-template-rows:repeat(2,28px);margin:8px -8px 0}.run-steps.earlier{mask-image:linear-gradient(to bottom,#00000040,#000 28px)}.run>.loading.inline{display:flex;margin-top:12px}.act.step{grid-template-columns:16px minmax(0,1fr) auto 14px}.act.run-sum{grid-template-columns:minmax(0,1fr) 14px;width:calc(100% + 16px);margin-inline:-8px}.act.step.approval{border-left-color:transparent}.act.step.approval:not(:hover){background:none}.act.step>.spin{width:11px;height:11px;margin-inline:1px;align-self:center}.run-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px 6px 16px;border-top:1px solid var(--line)}.act-slot.at>.act{background:var(--wash)}.act-empty{padding:24px 0;text-align:center}.jump{position:sticky;bottom:calc(var(--reply, 72px) + 8px);z-index:11;display:block;width:max-content;margin:0 auto;padding:6px 14px;border:1px solid var(--line2);border-radius:999px;background:var(--tile);color:var(--fg);font-size:12px;box-shadow:0 6px 18px #0000002e;cursor:pointer}.no-reply{margin-top:16px;font-size:12px}.approval-actions>summary{display:flex;align-items:baseline;gap:9px;width:fit-content;font-size:12px;color:var(--muted);cursor:pointer;list-style:none}.approval-actions>summary::-webkit-details-marker{display:none}.approval-actions>summary:before{content:"";width:5px;height:5px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(-45deg);transition:transform .15s}.approval-actions[open]>summary:before{transform:rotate(45deg)}.approval-actions>summary:hover{color:var(--fg)}.approval-actions ol{display:grid;gap:4px;margin:8px 0 0;padding-left:20px}.approval-actions code{font-size:12px;white-space:pre-wrap;word-break:break-word}.bar-r .decided{font-size:12px}@media(min-width:761px){.tabs+.card.accent{position:sticky;top:var(--stuck);z-index:8}}@media(max-width:760px){.tabs+.card.accent>.bar{position:sticky;top:var(--stuck);z-index:8;background:inherit}}.turn.decision.decline{border-left-color:var(--bad)}.turn.decision .prose{margin-bottom:6px}.card .decision{font-size:13px}main:has(form.reply){padding-bottom:0}form.reply{position:sticky;bottom:0;z-index:10;display:grid;gap:6px;margin-top:auto;padding:12px 0 16px;background:var(--bg)}.reply-box{display:flex;align-items:flex-end;gap:6px;padding:4px;border:1px solid var(--line2);background:var(--field)}.reply-box:focus-within{border-color:var(--acc);box-shadow:0 0 0 3px var(--accbg)}.reply-box textarea{flex:1;field-sizing:content;min-height:28px;max-height:6lh;padding:2px 6px;border:0;background:none;resize:none;box-shadow:none}.reply-box textarea:focus{box-shadow:none}.reply-box textarea::placeholder{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-box .mode{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px;background:var(--wash2);font-size:11px;text-transform:uppercase;letter-spacing:.2em}.reply-box .mode .ic{width:12px;height:12px}.act:is(.tool,.tool-result,.status,.line,.reasoning,.usage) .act-title{color:var(--muted)}.act.open:not(.warning,.error) .act-title{color:var(--fg)}.turn.qa>.answer{margin-top:10px;padding-top:10px;border-top:1px solid var(--line2)}.turn.prompt .prose{font-size:13.5px}.turn .collapse:not(.open){margin-bottom:-12px}.change-diff{margin:0;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--wash);font:12px/1.6 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere}.approval-actions>.change-diff{margin-top:8px}.change-diff>span{display:block}.asker{display:inline-flex;flex:none;border:1px solid var(--line2);font:11px/1.6 var(--mono);color:var(--muted);white-space:nowrap;vertical-align:1px}.asker>span{display:inline-flex;align-items:center;gap:4px;padding:0 6px}.asker>span+span{border-left:1px solid var(--line2)}.asker .ic{width:11px;height:11px}p.approval{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.approve-off{display:inline-flex}.admin-ask{font-size:12px;color:var(--muted)}.admin-ask>.link{padding:0;background:none;font:inherit;cursor:pointer}.change-diff>.add{color:var(--ok)}.change-diff>.del{color:var(--bad)}.request .seg-btns{align-self:flex-start}.task-missing{display:grid;align-content:center;min-height:calc(100dvh - 160px)}.field{display:grid;gap:6px}.field>span:first-child,.field>label{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-weight:500}.field small{font-weight:400;color:var(--muted);font-size:11.5px}.field .seg-btns{width:max-content;max-width:100%}.field .seg-btns>button{height:36px}.seg-btns{display:flex;border:1px solid var(--line2)}.seg-btns>a,.seg-btns>button,.seg-btns .menu>button{display:flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-left:1px solid var(--line2);background:var(--panel);font-size:10.5px;letter-spacing:.14em;color:var(--muted);cursor:pointer}.seg-btns>button{border-top:0;border-right:0;border-bottom:0;text-transform:uppercase}.seg-btns>:first-child{border-left:0}.seg-btns>a:hover,.seg-btns>button:hover,.seg-btns .menu>button:hover{color:var(--fg)}.seg-btns [aria-current],.seg-btns [aria-checked=true],.seg-btns .on>button{background:var(--accbg);color:var(--acc)}.seg-btns>button:disabled{opacity:.45;color:var(--muted);cursor:not-allowed}.seg-btns>button:has(.badge){position:relative}.seg-btns>button .badge{position:absolute;top:-8px;left:calc(100% - 14px);z-index:1;border-color:transparent;background:var(--acc);color:var(--panel);padding:0 4px;font-size:8.5px;line-height:14px;letter-spacing:.06em;text-transform:none}.tail{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 14px;color:var(--dim);font-size:11.5px}.tail.err{color:var(--bad)}.composer{display:flex;flex-wrap:wrap;padding:5px 5px 5px 8px;border:1px solid var(--line2);background:var(--field)}.composer:has(textarea:focus){border-color:var(--acc)}.composer textarea{flex:1 1 100%;width:auto;field-sizing:content;min-height:22px;max-height:8lh;margin:6px 0;padding:0 4px;border:0;background:none;box-shadow:none;resize:none}.composer textarea:focus{box-shadow:none}.composer-line{display:flex;align-items:center;gap:2px;width:100%;height:30px;min-width:0}.composer-line .select{flex:0 1 auto;max-width:220px}.composer-line .select>button,.composer-line .quiet{margin-left:auto;display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:3px 8px;border:1px solid transparent;background:none;font-size:11.5px;color:var(--muted);white-space:nowrap;cursor:pointer}.composer-line .select>button:hover,.composer-line .quiet:hover{background:var(--wash)}.run-picks .dim{color:var(--dim)}@media(max-width:760px){.run-picks>:not(:first-child){display:none}}.composer-line .send{flex:none;margin-left:4px}.composer>.flash{flex-basis:100%;margin:0 4px 2px}.composer-settings:popover-open{display:block;width:min(320px,calc(100vw - 32px));overflow-y:auto;padding:6px}.composer-settings>.pop-label:not(:first-child){margin-top:10px}.composer-settings .pop-item{width:100%;min-height:30px;font-size:12px}.composer-settings .add-models{margin-top:4px;color:var(--muted)}.composer-settings .add-models .ic{width:14px;height:14px}.composer-settings .pop-group{margin:6px 10px 2px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}.composer-settings .select{margin:2px 6px 4px}.composer-settings .select>button{min-height:30px;padding:4px 8px 4px 10px;font-size:12px}.composer-slash .pop-item{gap:10px;padding:6px 10px}.composer-slash .pop-item:hover{background:none}.composer-slash .pop-item.on{background:var(--wash2)}.composer-slash small{font-size:11px;color:var(--dim);white-space:nowrap}.composer-slash{max-height:min(360px,50vh);overflow-y:auto}.composer-slash .grow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-slash>.loading{padding:6px 10px}dialog.compose-dialog{width:min(760px,calc(100vw - 32px));margin:14vh auto auto;padding:0;border:1px solid var(--line2);background:var(--tile);color:inherit;box-shadow:0 12px 32px #0000002e}dialog.compose-dialog::backdrop{background:light-dark(rgba(0,0,0,.45),rgba(0,0,0,.72))}.compose-dialog>header{display:flex;align-items:baseline;gap:10px;padding:10px 6px 0 16px}.compose-dialog h2{font-size:15px;font-weight:700}.compose-dialog>header .icon-btn{align-self:center;width:30px;height:30px;margin-left:auto}.compose-dialog .composer textarea{max-height:min(20lh,max(4lh,calc(86dvh - 180px)))}.compose-dialog .composer,.compose-dialog>.loading,.compose-dialog>.flash,.compose-dialog>.notice{margin:10px 16px 16px}@media(max-width:760px){.composer-settings:popover-open{right:16px!important;grid-template-columns:minmax(0,1fr);gap:4px}.notice.slim .grow{white-space:normal}}.composer-line .folder{display:contents}.composer-line input.folder-path{flex:0 1 260px;min-width:0;min-height:0;height:28px;padding:3px 8px;border:1px solid transparent;background:none;font-size:11.5px}.composer-line input.folder-path:focus{border-color:var(--line2);box-shadow:none}.composer-line .folder-busy{flex:none;font-size:11.5px;color:var(--muted)}.composer>.folder-hint{flex:1 1 100%;padding:0 8px 4px;font-size:11px;color:var(--muted)}.composer>.flash{flex:1 1 100%;padding:2px 8px 4px}.model-pick{display:inline-flex;min-width:0}.field .model-pick{display:flex;max-width:420px}.model-pick-btn{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:7px 10px 7px 12px;border:1px solid var(--line2);background:var(--field);text-align:left;white-space:nowrap;cursor:pointer}.model-pick-btn small{font-size:10px}.model-pick-btn .grow{overflow:hidden;text-overflow:ellipsis}.model-pick-btn .ic{color:var(--dim)}.model-pick-btn:focus-visible{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--accbg)}.model-pick.compact .model-pick-btn{min-height:32px;padding:5px 10px 5px 12px;border-color:transparent;background:var(--wash2)}.model-pick.compact .model-pick-btn:hover{background:var(--line2)}.model-pop{position:fixed;inset:auto;width:300px;overflow-y:auto}.model-choices .pop-item{width:100%;min-height:30px;font-size:12px}.model-choices .add-models{margin-top:4px;color:var(--muted)}.model-choices .add-models .ic{width:14px;height:14px}.model-choices .pop-group{margin:6px 10px 2px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}.pop-chev{display:inline-flex;align-items:center;gap:4px;flex:none;align-self:stretch;padding:0 8px 0 10px;width:auto;border:0;background:none;color:var(--dim);cursor:pointer}.pop-chev:focus-visible{outline-offset:-2px}.pop-chev:hover,.pop-chev[aria-expanded=true]{color:var(--fg);background:var(--wash)}.pop-chev small{font-size:10px}.pop-chev .ic{width:14px;height:14px;transition:rotate .15s}.pop-chev[aria-expanded=true] .ic{rotate:90deg}.pop-flyout{position:fixed;inset:auto;margin:0;min-width:170px}.pop-chev:has(+.pop-flyout:popover-open){color:var(--fg);background:var(--wash)}.pop-chev:has(+.pop-flyout:popover-open) .ic{rotate:0deg}.model-choices .pop-row .pop-chev small{visibility:hidden}.model-choices .pop-row:is(:hover,:focus-within,:has([aria-checked=true]),:has(.pop-flyout:popover-open)) .pop-chev small{visibility:visible}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px 20px;margin:0}.facts dt{font-size:10px;color:var(--muted)}.facts dd{margin:4px 0 0;overflow-wrap:anywhere}.versions li{display:flex;align-items:first baseline;gap:14px;padding:12px 16px;border-top:1px solid var(--line)}.md{overflow-wrap:anywhere}.md :where(h3,h4,h5,h6){margin:0;font-size:13px;font-weight:700}.md h3{font-size:14px}.md ul{padding-left:20px;list-style:disc}.md ol{padding-left:20px;list-style:decimal}.md pre{margin:0;padding:8px 12px;overflow-x:auto;background:var(--wash)}.md pre code{padding:0;background:none}.md .table{overflow-x:auto}.md table{border-collapse:collapse}.md :where(th,td){padding:4px 12px 4px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.md th{font-weight:700}.collapse{position:relative}.collapse:not(.open){padding-bottom:6px}.collapse-box{box-sizing:content-box;max-height:calc(var(--lines) * 1lh + 44px);overflow:hidden}.collapse.open>.collapse-box{max-height:none}.collapse.long:not(.open)>.collapse-box{mask-image:linear-gradient(#000 calc(100% - 52px),transparent calc(100% - 36px))}.collapse>.btn.more-toggle{position:absolute;z-index:1;left:50%;bottom:6px;translate:-50% 0}.collapse.open>.btn.more-toggle{position:static;display:flex;margin:0 auto 12px;translate:none}