@wrongstack/webui 0.286.0 → 0.289.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (340) hide show
  1. package/README.md +35 -0
  2. package/dist/App.d.ts.map +1 -1
  3. package/dist/assets/AnalyticsDashboard-qGVC0XiK.js +1 -0
  4. package/dist/assets/AudienceMemoryPanel-CxAGL0gP.js +3 -0
  5. package/dist/assets/ChangesView-Bc6demyA.js +1 -0
  6. package/dist/assets/ChronicleDashboard-CwWcOmB3.js +1 -0
  7. package/dist/assets/CodeEditor-JY7CfGGl.js +1 -0
  8. package/dist/assets/CodeMap-BDgG3Rjz.js +1 -0
  9. package/dist/assets/CronJobsPanel-CqA5Tmx-.js +1 -0
  10. package/dist/assets/DebugDashboard-DlSJuEnl.js +1 -0
  11. package/dist/assets/DesignGalleryView-Cw9pbmsU.js +1 -0
  12. package/dist/assets/GoalView-B9BA9Jlk.js +1 -0
  13. package/dist/assets/KanbanView-CvKWtMXO.js +1 -0
  14. package/dist/assets/MailboxDetailView-dtLgBAb5.js +1 -0
  15. package/dist/assets/MemoryManager-BX9vS8Sc.js +1 -0
  16. package/dist/assets/OfficeMapPanel-D87MJFyb.css +1 -0
  17. package/dist/assets/OfficeMapPanel-DBafq6N3.js +4 -0
  18. package/dist/assets/ProcessMonitor-B0wlr4xu.js +1 -0
  19. package/dist/assets/QueuePanel-Cbd6WEUu.js +1 -0
  20. package/dist/assets/RefreshDebugView-BU6_CzHg.js +1 -0
  21. package/dist/assets/SddBoardView-ChpDmoWH.js +2 -0
  22. package/dist/assets/SddFlowGraph-ZGRYKvG4.js +1 -0
  23. package/dist/assets/SddWizard-C9EU3uMP.js +1 -0
  24. package/dist/assets/SessionsDashboard-BZjGcI8m.js +1 -0
  25. package/dist/assets/SetupScreen-OLD-xwmi.js +1 -0
  26. package/dist/assets/SkillDetailView-cBe0gnN1.js +3 -0
  27. package/dist/assets/SpecsView-BXqQnduk.js +1 -0
  28. package/dist/assets/TechStackView-whP83IaE.js +1 -0
  29. package/dist/assets/TerminalPanel-DYJvz1GK.js +1 -0
  30. package/dist/assets/activity-B6TyDCwd.js +5 -0
  31. package/dist/assets/activity-BZm_Psbt.js +5 -0
  32. package/dist/assets/activity-Bhoxw076.js +5 -0
  33. package/dist/assets/activity-CWFY3Fhi.js +5 -0
  34. package/dist/assets/activity-DVZ7t5as.js +5 -0
  35. package/dist/assets/activity-DiuZra5w.js +5 -0
  36. package/dist/assets/activity-DkwwCy23.js +5 -0
  37. package/dist/assets/{chat-CmZiF8Sm.js → chat-BJzPxfyr.js} +1 -1
  38. package/dist/assets/{chat-eXJFi4bY.js → chat-BRBVFl4h.js} +1 -1
  39. package/dist/assets/{chat-C_9_T_Py.js → chat-Bkom8vQo.js} +1 -1
  40. package/dist/assets/{chat-DfjGjYKF.js → chat-C7ybebfi.js} +1 -1
  41. package/dist/assets/{chat-BNf8yQ-i.js → chat-Du7n7HZ7.js} +1 -1
  42. package/dist/assets/{chat-BwmYDkLr.js → chat-IRKmQ6we.js} +1 -1
  43. package/dist/assets/{chat-DW62ursN.js → chat-VkTBQmmx.js} +1 -1
  44. package/dist/assets/chat-store-BJ55HZKb.js +13 -0
  45. package/dist/assets/{commandPalette-C5U6qfth.js → commandPalette-CGMq-qlP.js} +1 -1
  46. package/dist/assets/{commandPalette-C4o2rUOp.js → commandPalette-CUh_kgfp.js} +1 -1
  47. package/dist/assets/{commandPalette-CBJfByB7.js → commandPalette-Dfk74u87.js} +1 -1
  48. package/dist/assets/{commandPalette-DUootORZ.js → commandPalette-DpaemFux.js} +1 -1
  49. package/dist/assets/{commandPalette-BcMV6x3_.js → commandPalette-Nlxs0V7J.js} +1 -1
  50. package/dist/assets/{commandPalette-CrYfIhnW.js → commandPalette-aaAou3Tl.js} +1 -1
  51. package/dist/assets/{commandPalette-Dgd8HfNm.js → commandPalette-tFxIIhvU.js} +1 -1
  52. package/dist/assets/i18n-BcnwAuXt.js +2 -0
  53. package/dist/assets/index-MIiPbE0D.js +151 -0
  54. package/dist/assets/index-dpcVzvHS.css +1 -0
  55. package/dist/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2 +0 -0
  56. package/dist/assets/manrope-greek-wght-normal-DL7QRZyv.woff2 +0 -0
  57. package/dist/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2 +0 -0
  58. package/dist/assets/manrope-latin-wght-normal-DHIcAJRg.woff2 +0 -0
  59. package/dist/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2 +0 -0
  60. package/dist/assets/markdown-CF2fGOZh.js +44 -0
  61. package/dist/assets/{monaco-MjnRih9i.js → monaco-BgFAljXl.js} +201 -201
  62. package/dist/assets/{monaco-theme-DhdHiZEb.js → monaco-theme-DxkhltWi.js} +1 -1
  63. package/dist/assets/{session-store-BOmBeF9r.js → session-store-CgCoJmdF.js} +1 -1
  64. package/dist/assets/settings-4BR882HN.js +1 -0
  65. package/dist/assets/settings-B5P4V9M6.js +1 -0
  66. package/dist/assets/settings-Cjxo5UVP.js +1 -0
  67. package/dist/assets/settings-CnViO4_M.js +1 -0
  68. package/dist/assets/settings-CyzkAhwD.js +1 -0
  69. package/dist/assets/settings-jrfJX8W2.js +1 -0
  70. package/dist/assets/settings-llUXRsji.js +1 -0
  71. package/dist/assets/shared-aqSRO8IM.js +1 -0
  72. package/dist/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2 +0 -0
  73. package/dist/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2 +0 -0
  74. package/dist/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2 +0 -0
  75. package/dist/assets/ui-store-lBwi9h6q.js +1 -0
  76. package/dist/assets/utils-BLVofF8S.js +1 -0
  77. package/dist/assets/vendor-BBksTEZc.css +1 -0
  78. package/dist/assets/vendor-JNPeA-SL.js +76 -0
  79. package/dist/assets/ws-client-3f38Kop2.js +1 -0
  80. package/dist/components/AgentOfficeView.d.ts +3 -0
  81. package/dist/components/AgentOfficeView.d.ts.map +1 -0
  82. package/dist/components/AnalyticsDashboard.d.ts.map +1 -1
  83. package/dist/components/AudienceMemoryPanel.d.ts +2 -0
  84. package/dist/components/AudienceMemoryPanel.d.ts.map +1 -0
  85. package/dist/components/BoardView.d.ts +2 -2
  86. package/dist/components/ChatInput/slash-routing.d.ts +4 -4
  87. package/dist/components/ChatInput/slash-routing.d.ts.map +1 -1
  88. package/dist/components/ChatInput/use-paste-drop.d.ts.map +1 -1
  89. package/dist/components/ChatInput.d.ts.map +1 -1
  90. package/dist/components/CheckpointTimeline.d.ts.map +1 -1
  91. package/dist/components/ChipMultiSelect.d.ts +20 -0
  92. package/dist/components/ChipMultiSelect.d.ts.map +1 -0
  93. package/dist/components/ChronicleDashboard.d.ts +2 -0
  94. package/dist/components/ChronicleDashboard.d.ts.map +1 -0
  95. package/dist/components/CodeEditor.d.ts.map +1 -1
  96. package/dist/components/CodeMap.d.ts +9 -0
  97. package/dist/components/CodeMap.d.ts.map +1 -0
  98. package/dist/components/CommandPalette/index.d.ts.map +1 -1
  99. package/dist/components/ContextDashboard.d.ts +13 -0
  100. package/dist/components/ContextDashboard.d.ts.map +1 -0
  101. package/dist/components/CronJobsPanel.d.ts +6 -0
  102. package/dist/components/CronJobsPanel.d.ts.map +1 -0
  103. package/dist/components/CronTrigger.d.ts +2 -0
  104. package/dist/components/CronTrigger.d.ts.map +1 -0
  105. package/dist/components/DebugDashboard.d.ts.map +1 -1
  106. package/dist/components/DesignGalleryView.d.ts.map +1 -1
  107. package/dist/components/FallbackEditor.d.ts.map +1 -1
  108. package/dist/components/FileReferenceChip.d.ts +2 -2
  109. package/dist/components/FileReferenceChip.d.ts.map +1 -1
  110. package/dist/components/FleetPanel.d.ts.map +1 -1
  111. package/dist/components/{AutoPhaseView.d.ts → GoalView.d.ts} +4 -4
  112. package/dist/components/GoalView.d.ts.map +1 -0
  113. package/dist/components/InspectorPanel.d.ts +9 -9
  114. package/dist/components/InspectorPanel.d.ts.map +1 -1
  115. package/dist/components/KanbanCleanerAlert.d.ts +6 -0
  116. package/dist/components/KanbanCleanerAlert.d.ts.map +1 -0
  117. package/dist/components/KanbanView.d.ts +14 -0
  118. package/dist/components/KanbanView.d.ts.map +1 -1
  119. package/dist/components/MailboxDetailView.d.ts.map +1 -1
  120. package/dist/components/MailboxPanel.d.ts.map +1 -1
  121. package/dist/components/MemoryManager/MemoryDetail.d.ts +17 -0
  122. package/dist/components/MemoryManager/MemoryDetail.d.ts.map +1 -0
  123. package/dist/components/MemoryManager/MemoryDrawer.d.ts +25 -0
  124. package/dist/components/MemoryManager/MemoryDrawer.d.ts.map +1 -0
  125. package/dist/components/MemoryManager/MemoryEditor.d.ts +12 -0
  126. package/dist/components/MemoryManager/MemoryEditor.d.ts.map +1 -0
  127. package/dist/components/MemoryManager/MemoryFilters.d.ts +19 -0
  128. package/dist/components/MemoryManager/MemoryFilters.d.ts.map +1 -0
  129. package/dist/components/MemoryManager/MemoryGraph.d.ts +9 -0
  130. package/dist/components/MemoryManager/MemoryGraph.d.ts.map +1 -0
  131. package/dist/components/MemoryManager/MemoryList.d.ts +13 -0
  132. package/dist/components/MemoryManager/MemoryList.d.ts.map +1 -0
  133. package/dist/components/MemoryManager/index.d.ts +2 -0
  134. package/dist/components/MemoryManager/index.d.ts.map +1 -0
  135. package/dist/components/MemoryManager/shared.d.ts +51 -0
  136. package/dist/components/MemoryManager/shared.d.ts.map +1 -0
  137. package/dist/components/MessageBubble/index.d.ts.map +1 -1
  138. package/dist/components/ModelSelectDialog.d.ts +47 -0
  139. package/dist/components/ModelSelectDialog.d.ts.map +1 -0
  140. package/dist/components/OfficeMapCanvas/edges.d.ts +15 -0
  141. package/dist/components/OfficeMapCanvas/edges.d.ts.map +1 -0
  142. package/dist/components/OfficeMapCanvas/nodes.d.ts +53 -0
  143. package/dist/components/OfficeMapCanvas/nodes.d.ts.map +1 -0
  144. package/dist/components/OfficeMapCanvas/resolve.d.ts +17 -2
  145. package/dist/components/OfficeMapCanvas/resolve.d.ts.map +1 -1
  146. package/dist/components/OfficeMapCanvas/utils.d.ts +28 -1
  147. package/dist/components/OfficeMapCanvas/utils.d.ts.map +1 -1
  148. package/dist/components/OfficeMapCanvas.d.ts.map +1 -1
  149. package/dist/components/OfficeMapPanel.d.ts.map +1 -1
  150. package/dist/components/PhasePanel.d.ts.map +1 -1
  151. package/dist/components/RefinePanel.d.ts +21 -1
  152. package/dist/components/RefinePanel.d.ts.map +1 -1
  153. package/dist/components/SddWizard.d.ts.map +1 -1
  154. package/dist/components/SessionsDashboard.d.ts.map +1 -1
  155. package/dist/components/SettingsPanel/BrainSection.d.ts.map +1 -1
  156. package/dist/components/SettingsPanel/ChimeraSettingsPanel.d.ts +10 -0
  157. package/dist/components/SettingsPanel/ChimeraSettingsPanel.d.ts.map +1 -0
  158. package/dist/components/SettingsPanel/ModelSection.d.ts.map +1 -1
  159. package/dist/components/SettingsPanel/PluginToggleList.d.ts +3 -0
  160. package/dist/components/SettingsPanel/PluginToggleList.d.ts.map +1 -0
  161. package/dist/components/SettingsPanel/RoutingSection.d.ts +8 -1
  162. package/dist/components/SettingsPanel/RoutingSection.d.ts.map +1 -1
  163. package/dist/components/SettingsPanel/index.d.ts.map +1 -1
  164. package/dist/components/SetupScreen.d.ts.map +1 -1
  165. package/dist/components/SidePanel/AgentsPanel.d.ts.map +1 -1
  166. package/dist/components/SidePanel/HistoryPanel.d.ts.map +1 -1
  167. package/dist/components/SidePanel/SessionList.d.ts +33 -5
  168. package/dist/components/SidePanel/SessionList.d.ts.map +1 -1
  169. package/dist/components/SidePanel/SessionPanel.d.ts.map +1 -1
  170. package/dist/components/SidePanel/index.d.ts.map +1 -1
  171. package/dist/components/SkillDetailView.d.ts.map +1 -1
  172. package/dist/components/TaskActivityTimeline.d.ts +31 -0
  173. package/dist/components/TaskActivityTimeline.d.ts.map +1 -0
  174. package/dist/components/TaskExecutionAttempts.d.ts +28 -0
  175. package/dist/components/TaskExecutionAttempts.d.ts.map +1 -0
  176. package/dist/components/TaskIntelligencePanel.d.ts +42 -0
  177. package/dist/components/TaskIntelligencePanel.d.ts.map +1 -0
  178. package/dist/components/TaskRiskPanel.d.ts +31 -0
  179. package/dist/components/TaskRiskPanel.d.ts.map +1 -0
  180. package/dist/components/TechStackView/DependencyDetail.d.ts +20 -0
  181. package/dist/components/TechStackView/DependencyDetail.d.ts.map +1 -0
  182. package/dist/components/TechStackView/DependencyTable.d.ts +17 -0
  183. package/dist/components/TechStackView/DependencyTable.d.ts.map +1 -0
  184. package/dist/components/TechStackView/FindingsPanel.d.ts +15 -0
  185. package/dist/components/TechStackView/FindingsPanel.d.ts.map +1 -0
  186. package/dist/components/TechStackView/TechStackToolbar.d.ts +26 -0
  187. package/dist/components/TechStackView/TechStackToolbar.d.ts.map +1 -0
  188. package/dist/components/TechStackView/index.d.ts +18 -0
  189. package/dist/components/TechStackView/index.d.ts.map +1 -0
  190. package/dist/components/TechStackView/shared.d.ts +73 -0
  191. package/dist/components/TechStackView/shared.d.ts.map +1 -0
  192. package/dist/components/TodosPanel.d.ts.map +1 -1
  193. package/dist/components/WelcomeScreen.d.ts +1 -8
  194. package/dist/components/WelcomeScreen.d.ts.map +1 -1
  195. package/dist/components/WorkspaceDock.d.ts +8 -9
  196. package/dist/components/WorkspaceDock.d.ts.map +1 -1
  197. package/dist/components/activity-bar/index.d.ts.map +1 -1
  198. package/dist/components/codemap-model.d.ts +64 -0
  199. package/dist/components/codemap-model.d.ts.map +1 -0
  200. package/dist/components/index.d.ts +3 -1
  201. package/dist/components/index.d.ts.map +1 -1
  202. package/dist/components/ui/PickerCardList.d.ts +52 -0
  203. package/dist/components/ui/PickerCardList.d.ts.map +1 -0
  204. package/dist/components/ui/sheet.d.ts +7 -1
  205. package/dist/components/ui/sheet.d.ts.map +1 -1
  206. package/dist/hooks/index.d.ts +1 -0
  207. package/dist/hooks/index.d.ts.map +1 -1
  208. package/dist/hooks/useDesktopBridge.d.ts +29 -0
  209. package/dist/hooks/useDesktopBridge.d.ts.map +1 -0
  210. package/dist/hooks/useF5Resilience.d.ts +16 -0
  211. package/dist/hooks/useF5Resilience.d.ts.map +1 -0
  212. package/dist/hooks/useGlobalKeyboardShortcuts.d.ts +25 -0
  213. package/dist/hooks/useGlobalKeyboardShortcuts.d.ts.map +1 -0
  214. package/dist/hooks/useHorizontalScroll.d.ts +17 -0
  215. package/dist/hooks/useHorizontalScroll.d.ts.map +1 -0
  216. package/dist/hooks/useKanbanMeta.d.ts +32 -0
  217. package/dist/hooks/useKanbanMeta.d.ts.map +1 -0
  218. package/dist/hooks/useMemoryForFile.d.ts +30 -0
  219. package/dist/hooks/useMemoryForFile.d.ts.map +1 -0
  220. package/dist/hooks/useScrollPosition.d.ts +16 -0
  221. package/dist/hooks/useScrollPosition.d.ts.map +1 -0
  222. package/dist/hooks/useWebSocket.d.ts +36 -13
  223. package/dist/hooks/useWebSocket.d.ts.map +1 -1
  224. package/dist/hooks/ws-handlers/fleet-handlers.d.ts.map +1 -1
  225. package/dist/hooks/ws-handlers/misc-handlers.d.ts +6 -4
  226. package/dist/hooks/ws-handlers/misc-handlers.d.ts.map +1 -1
  227. package/dist/hooks/ws-handlers/session-handlers.d.ts.map +1 -1
  228. package/dist/hooks/ws-handlers/techstack-handlers.d.ts +13 -0
  229. package/dist/hooks/ws-handlers/techstack-handlers.d.ts.map +1 -0
  230. package/dist/hooks/ws-handlers.d.ts +7 -0
  231. package/dist/hooks/ws-handlers.d.ts.map +1 -1
  232. package/dist/index.css +2881 -2
  233. package/dist/index.css.map +3 -3
  234. package/dist/index.html +16 -17
  235. package/dist/index.js +33292 -16587
  236. package/dist/index.js.map +4 -4
  237. package/dist/lib/agent-office.d.ts +96 -0
  238. package/dist/lib/agent-office.d.ts.map +1 -0
  239. package/dist/lib/desktop-host.d.ts.map +1 -1
  240. package/dist/lib/kanban-cleaner.d.ts +28 -0
  241. package/dist/lib/kanban-cleaner.d.ts.map +1 -0
  242. package/dist/lib/kanban-metadata.d.ts +7 -0
  243. package/dist/lib/kanban-metadata.d.ts.map +1 -0
  244. package/dist/lib/plugin-enablement.d.ts +37 -0
  245. package/dist/lib/plugin-enablement.d.ts.map +1 -0
  246. package/dist/lib/view-navigation.d.ts +1 -1
  247. package/dist/lib/view-navigation.d.ts.map +1 -1
  248. package/dist/lib/ws-client.d.ts +67 -10
  249. package/dist/lib/ws-client.d.ts.map +1 -1
  250. package/dist/main.d.ts +2 -0
  251. package/dist/main.d.ts.map +1 -1
  252. package/dist/providers.json +30 -0
  253. package/dist/stores/chat-store.d.ts.map +1 -1
  254. package/dist/stores/codemap-activity-store.d.ts +79 -0
  255. package/dist/stores/codemap-activity-store.d.ts.map +1 -0
  256. package/dist/stores/cron-store.d.ts +29 -0
  257. package/dist/stores/cron-store.d.ts.map +1 -0
  258. package/dist/stores/file-reference-store.d.ts +7 -1
  259. package/dist/stores/file-reference-store.d.ts.map +1 -1
  260. package/dist/stores/fleet-store.d.ts.map +1 -1
  261. package/dist/stores/{autophase-store.d.ts → goal-run-store.d.ts} +12 -12
  262. package/dist/stores/goal-run-store.d.ts.map +1 -0
  263. package/dist/stores/goal-state-store.d.ts +12 -0
  264. package/dist/stores/goal-state-store.d.ts.map +1 -0
  265. package/dist/stores/index.d.ts +7 -2
  266. package/dist/stores/index.d.ts.map +1 -1
  267. package/dist/stores/kanban-store.d.ts +2 -1
  268. package/dist/stores/kanban-store.d.ts.map +1 -1
  269. package/dist/stores/local-prefs.d.ts +32 -0
  270. package/dist/stores/local-prefs.d.ts.map +1 -1
  271. package/dist/stores/mailbox-store.d.ts +16 -0
  272. package/dist/stores/mailbox-store.d.ts.map +1 -1
  273. package/dist/stores/monitor-store.d.ts +61 -0
  274. package/dist/stores/monitor-store.d.ts.map +1 -1
  275. package/dist/stores/office-map-store.d.ts +4 -0
  276. package/dist/stores/office-map-store.d.ts.map +1 -1
  277. package/dist/stores/session-store.d.ts.map +1 -1
  278. package/dist/stores/techstack-store.d.ts +110 -0
  279. package/dist/stores/techstack-store.d.ts.map +1 -0
  280. package/dist/stores/types.d.ts +29 -3
  281. package/dist/stores/types.d.ts.map +1 -1
  282. package/dist/stores/ui-store.d.ts +44 -13
  283. package/dist/stores/ui-store.d.ts.map +1 -1
  284. package/dist/stores/viz-store.d.ts +6 -0
  285. package/dist/stores/viz-store.d.ts.map +1 -1
  286. package/dist/types.d.ts +672 -41
  287. package/dist/types.d.ts.map +1 -1
  288. package/package.json +16 -18
  289. package/dist/assets/AnalyticsDashboard-BDpQqHtX.js +0 -1
  290. package/dist/assets/AutoPhaseView-BL_RSAcj.js +0 -1
  291. package/dist/assets/ChangesView-Dqfa8YFA.js +0 -1
  292. package/dist/assets/CodeEditor-De8voGEi.js +0 -1
  293. package/dist/assets/DebugDashboard-D0C8_NWJ.js +0 -1
  294. package/dist/assets/DesignGalleryView-Dwn2JYAL.js +0 -1
  295. package/dist/assets/KanbanView-BUugea4e.js +0 -1
  296. package/dist/assets/MailboxDetailView-DCjSrQNI.js +0 -1
  297. package/dist/assets/OfficeMapPanel-Bqqys7xo.js +0 -4
  298. package/dist/assets/ProcessMonitor-CS1LSf39.js +0 -1
  299. package/dist/assets/QueuePanel-Cs7k3M-4.js +0 -1
  300. package/dist/assets/RefreshDebugView-Di0lyXKv.js +0 -1
  301. package/dist/assets/SddBoardView-Dv9R7tBM.js +0 -2
  302. package/dist/assets/SddFlowGraph-BGPIWq7W.js +0 -1
  303. package/dist/assets/SddWizard-BWaJb5ZH.js +0 -1
  304. package/dist/assets/SessionsDashboard-B1u7rjTK.js +0 -1
  305. package/dist/assets/SetupScreen-nZMY7jM6.js +0 -1
  306. package/dist/assets/SkillDetailView-CQevybc9.js +0 -3
  307. package/dist/assets/SpecsView-Xw9k8Llw.js +0 -1
  308. package/dist/assets/TerminalPanel-CPuqFiXC.js +0 -1
  309. package/dist/assets/activity-Bt5JliZ2.js +0 -5
  310. package/dist/assets/activity-DVbfo6OS.js +0 -5
  311. package/dist/assets/activity-DkmpcH1_.js +0 -5
  312. package/dist/assets/activity-HUfcj2wp.js +0 -5
  313. package/dist/assets/activity-lQ47COGt.js +0 -5
  314. package/dist/assets/activity-mgahm8RV.js +0 -5
  315. package/dist/assets/activity-naMKylQi.js +0 -5
  316. package/dist/assets/chat-store-Dy1m3oen.js +0 -5
  317. package/dist/assets/i18n-ClFSbktB.js +0 -2
  318. package/dist/assets/index-DGwt4pL3.js +0 -157
  319. package/dist/assets/index-pw_NYdQ9.css +0 -1
  320. package/dist/assets/local-prefs-DUm4LFyu.js +0 -1
  321. package/dist/assets/markdown-BRAejDWd.js +0 -44
  322. package/dist/assets/settings-BehzuKKh.js +0 -1
  323. package/dist/assets/settings-CO8sA1-8.js +0 -1
  324. package/dist/assets/settings-CSb_3QO0.js +0 -1
  325. package/dist/assets/settings-CVkZ15Hv.js +0 -1
  326. package/dist/assets/settings-DRDu_6WL.js +0 -1
  327. package/dist/assets/settings-Dj8eonZG.js +0 -1
  328. package/dist/assets/settings-DkZAyCk6.js +0 -1
  329. package/dist/assets/ui-store-LCpXBvQT.js +0 -1
  330. package/dist/assets/utils-Bl7Yr7Bw.js +0 -1
  331. package/dist/assets/vendor-C9iFsXuW.js +0 -70
  332. package/dist/assets/vendor-CcOzUMQS.css +0 -1
  333. package/dist/assets/ws-client-WVS5hdJj.js +0 -1
  334. package/dist/assets/xyflow-DtxX27Jz.css +0 -1
  335. package/dist/assets/xyflow-YzHYNDhB.js +0 -7
  336. package/dist/components/AutoPhaseView.d.ts.map +0 -1
  337. package/dist/lib/analytics.d.ts +0 -38
  338. package/dist/lib/analytics.d.ts.map +0 -1
  339. package/dist/server/index.d.ts.map +0 -1
  340. package/dist/stores/autophase-store.d.ts.map +0 -1
package/dist/index.css CHANGED
@@ -234,14 +234,2893 @@
234
234
  }
235
235
  }
236
236
  @media (prefers-reduced-motion: reduce) {
237
+ .thinking-bubble,
238
+ .thinking-bubble *,
239
+ .thinking-orb,
237
240
  .thinking-orb::before,
241
+ .thinking-orb::after,
238
242
  .thinking-orb__icon,
239
243
  .thinking-orb__ring,
240
244
  .thinking-orb__spark,
245
+ .thinking-dots,
241
246
  .thinking-dots span,
247
+ .thinking-panel,
242
248
  .thinking-panel::before,
243
- .thinking-wave span {
244
- animation: none;
249
+ .thinking-wave,
250
+ .thinking-wave span,
251
+ .thinking-text {
252
+ animation: none !important;
253
+ animation-iteration-count: 1 !important;
254
+ animation-duration: 0s !important;
255
+ animation-delay: 0s !important;
256
+ transition: none !important;
257
+ scroll-behavior: auto !important;
258
+ }
259
+ .thinking-orb__icon {
260
+ filter: none;
261
+ }
262
+ .thinking-panel {
263
+ transform: none;
264
+ }
265
+ }
266
+
267
+ /* src/components/AgentOfficeView.css */
268
+ .agent-office {
269
+ --office-line: hsl(var(--border) / 0.72);
270
+ --office-soft: hsl(var(--surface-2) / 0.78);
271
+ --office-panel: hsl(var(--card) / 0.94);
272
+ position: relative;
273
+ display: grid;
274
+ grid-template-rows: auto auto minmax(0, 1fr) auto;
275
+ height: 100%;
276
+ min-height: 0;
277
+ overflow: hidden;
278
+ color: hsl(var(--foreground));
279
+ background:
280
+ radial-gradient(
281
+ circle at 9% 0%,
282
+ hsl(var(--primary) / 0.08),
283
+ transparent 24rem),
284
+ linear-gradient(
285
+ 135deg,
286
+ hsl(var(--background)),
287
+ hsl(var(--surface-2) / 0.62));
288
+ }
289
+ .agent-office::before {
290
+ position: absolute;
291
+ inset: 0;
292
+ pointer-events: none;
293
+ content: "";
294
+ opacity: 0.18;
295
+ background-image:
296
+ linear-gradient(hsl(var(--border) / 0.34) 1px, transparent 1px),
297
+ linear-gradient(
298
+ 90deg,
299
+ hsl(var(--border) / 0.34) 1px,
300
+ transparent 1px);
301
+ background-size: 28px 28px;
302
+ mask-image:
303
+ linear-gradient(
304
+ to bottom,
305
+ transparent,
306
+ black 16%,
307
+ black 92%,
308
+ transparent);
309
+ }
310
+ .agent-office__header {
311
+ position: relative;
312
+ z-index: 4;
313
+ display: flex;
314
+ min-height: 68px;
315
+ align-items: center;
316
+ gap: 18px;
317
+ padding: 10px 16px;
318
+ border-bottom: 1px solid var(--office-line);
319
+ background: hsl(var(--card) / 0.9);
320
+ box-shadow: 0 8px 30px hsl(var(--shadow-color) / 0.08);
321
+ backdrop-filter: blur(18px);
322
+ }
323
+ .agent-office__title {
324
+ display: flex;
325
+ min-width: 210px;
326
+ align-items: center;
327
+ gap: 10px;
328
+ }
329
+ .agent-office__brand-mark {
330
+ display: grid;
331
+ width: 38px;
332
+ height: 38px;
333
+ flex: 0 0 auto;
334
+ place-items: center;
335
+ border: 1px solid hsl(var(--primary) / 0.34);
336
+ border-radius: 10px;
337
+ color: hsl(var(--primary));
338
+ background: hsl(var(--primary) / 0.1);
339
+ }
340
+ .agent-office__brand-mark svg {
341
+ width: 19px;
342
+ height: 19px;
343
+ }
344
+ .agent-office__title > div > span,
345
+ .agent-office__detail-header > div > span {
346
+ display: block;
347
+ color: hsl(var(--muted-foreground));
348
+ font: 500 9px / 1.2 var(--font-mono);
349
+ letter-spacing: 0.13em;
350
+ }
351
+ .agent-office__title h1 {
352
+ max-width: 280px;
353
+ overflow: hidden;
354
+ margin: 3px 0 0;
355
+ font: 500 15px / 1.2 var(--font-display);
356
+ text-overflow: ellipsis;
357
+ white-space: nowrap;
358
+ }
359
+ .agent-office__live-pill {
360
+ display: flex;
361
+ align-items: center;
362
+ gap: 6px;
363
+ padding: 5px 8px;
364
+ border: 1px solid hsl(var(--success) / 0.3);
365
+ border-radius: 999px;
366
+ color: hsl(var(--success));
367
+ background: hsl(var(--success) / 0.08);
368
+ font: 500 9px / 1 var(--font-mono);
369
+ letter-spacing: 0.1em;
370
+ }
371
+ .agent-office__live-pill > span,
372
+ .agent-office__pulse-dot {
373
+ width: 6px;
374
+ height: 6px;
375
+ border-radius: 999px;
376
+ background: currentColor;
377
+ box-shadow: 0 0 0 4px hsl(var(--success) / 0.12);
378
+ animation: agent-office-pulse 1.6s ease-in-out infinite;
379
+ }
380
+ .agent-office__summary {
381
+ display: flex;
382
+ min-width: 0;
383
+ flex: 1 1 auto;
384
+ justify-content: center;
385
+ gap: 6px;
386
+ }
387
+ .agent-office__summary > div {
388
+ display: grid;
389
+ grid-template-columns: auto auto;
390
+ align-items: center;
391
+ gap: 0 6px;
392
+ min-width: 92px;
393
+ padding: 6px 9px;
394
+ border-left: 1px solid var(--office-line);
395
+ }
396
+ .agent-office__summary svg {
397
+ width: 13px;
398
+ height: 13px;
399
+ color: hsl(var(--muted-foreground));
400
+ }
401
+ .agent-office__summary strong {
402
+ font: 500 13px / 1 var(--font-mono);
403
+ }
404
+ .agent-office__summary span {
405
+ grid-column: 1 / -1;
406
+ color: hsl(var(--muted-foreground));
407
+ font-size: 9px;
408
+ }
409
+ .agent-office__column-headings,
410
+ .agent-office__lane {
411
+ display: grid;
412
+ grid-template-columns: 180px minmax(430px, 1fr) 270px;
413
+ }
414
+ .agent-office__column-headings {
415
+ position: relative;
416
+ z-index: 3;
417
+ align-items: center;
418
+ min-height: 28px;
419
+ padding: 0 12px;
420
+ border-bottom: 1px solid var(--office-line);
421
+ color: hsl(var(--muted-foreground));
422
+ background: hsl(var(--background) / 0.84);
423
+ font: 500 8px / 1 var(--font-mono);
424
+ letter-spacing: 0.14em;
425
+ }
426
+ .agent-office__column-headings span {
427
+ padding: 0 12px;
428
+ }
429
+ .agent-office__column-headings span:last-child {
430
+ padding-left: 16px;
431
+ }
432
+ .agent-office__client-office {
433
+ overflow: hidden;
434
+ margin-bottom: 14px;
435
+ border: 1px solid hsl(var(--border));
436
+ border-radius: 16px;
437
+ background: hsl(var(--card) / 0.42);
438
+ box-shadow: 0 14px 38px hsl(var(--shadow-color) / 0.08);
439
+ }
440
+ .agent-office__client-header {
441
+ display: flex;
442
+ min-height: 62px;
443
+ align-items: center;
444
+ justify-content: space-between;
445
+ gap: 14px;
446
+ padding: 9px 12px;
447
+ border-bottom: 1px solid hsl(var(--border));
448
+ background:
449
+ linear-gradient(
450
+ 90deg,
451
+ hsl(var(--primary) / 0.07),
452
+ transparent 42%),
453
+ hsl(var(--card) / 0.82);
454
+ }
455
+ .agent-office__client-title {
456
+ display: flex;
457
+ min-width: 210px;
458
+ flex: 1 1 420px;
459
+ align-items: center;
460
+ flex-wrap: wrap;
461
+ gap: 9px;
462
+ }
463
+ .agent-office__client-copy {
464
+ display: flex;
465
+ min-width: 0;
466
+ flex-direction: column;
467
+ flex: 1 1 150px;
468
+ gap: 2px;
469
+ }
470
+ .agent-office__client-copy strong {
471
+ overflow: hidden;
472
+ font: 500 12px / 1.2 var(--font-display);
473
+ text-overflow: ellipsis;
474
+ white-space: nowrap;
475
+ }
476
+ .agent-office__client-copy > span {
477
+ overflow: hidden;
478
+ max-width: 310px;
479
+ color: hsl(var(--muted-foreground));
480
+ font: 400 8px / 1.2 var(--font-mono);
481
+ text-overflow: ellipsis;
482
+ white-space: nowrap;
483
+ }
484
+ .agent-office__client-icon {
485
+ display: grid;
486
+ width: 32px;
487
+ height: 32px;
488
+ flex: 0 0 auto;
489
+ place-items: center;
490
+ border-radius: 9px;
491
+ color: hsl(var(--primary));
492
+ background: hsl(var(--primary) / 0.1);
493
+ }
494
+ .agent-office__client-icon svg {
495
+ width: 16px;
496
+ height: 16px;
497
+ }
498
+ .agent-office__client-agent-count {
499
+ flex: 0 0 auto;
500
+ padding: 3px 6px;
501
+ border-radius: 999px;
502
+ color: hsl(var(--primary));
503
+ background: hsl(var(--primary) / 0.09);
504
+ font: 500 8px / 1 var(--font-mono);
505
+ }
506
+ .agent-office__client-presence {
507
+ display: flex;
508
+ min-width: 0;
509
+ align-items: center;
510
+ flex-wrap: wrap;
511
+ gap: 4px;
512
+ }
513
+ .agent-office__presence-chip {
514
+ display: inline-flex;
515
+ min-height: 20px;
516
+ flex: 0 0 auto;
517
+ align-items: center;
518
+ gap: 3px;
519
+ padding: 3px 5px;
520
+ border: 1px solid hsl(var(--border));
521
+ border-radius: 999px;
522
+ color: hsl(var(--muted-foreground));
523
+ background: hsl(var(--background) / 0.5);
524
+ font: 500 7px / 1 var(--font-mono);
525
+ letter-spacing: 0.04em;
526
+ }
527
+ .agent-office__presence-chip svg {
528
+ width: 9px;
529
+ height: 9px;
530
+ }
531
+ .agent-office__presence-chip.is-live,
532
+ .agent-office__presence-chip.is-telemetry {
533
+ border-color: hsl(var(--success) / 0.25);
534
+ color: hsl(var(--success));
535
+ background: hsl(var(--success) / 0.07);
536
+ }
537
+ .agent-office__presence-chip.is-legacy {
538
+ border-color: hsl(var(--warning) / 0.28);
539
+ color: hsl(var(--warning));
540
+ background: hsl(var(--warning) / 0.08);
541
+ }
542
+ .agent-office__agent-verified {
543
+ display: inline-flex;
544
+ min-height: 16px;
545
+ flex: 0 0 auto;
546
+ align-items: center;
547
+ gap: 2px;
548
+ padding: 2px 4px;
549
+ border-radius: 999px;
550
+ color: hsl(var(--success));
551
+ background: hsl(var(--success) / 0.08);
552
+ font: 500 6px / 1 var(--font-mono);
553
+ letter-spacing: 0.04em;
554
+ }
555
+ .agent-office__agent-verified svg {
556
+ width: 8px;
557
+ height: 8px;
558
+ }
559
+ .agent-office__client-stats {
560
+ display: flex;
561
+ min-width: 0;
562
+ margin: 0;
563
+ padding: 0;
564
+ border: 0;
565
+ flex-wrap: wrap;
566
+ justify-content: flex-end;
567
+ gap: 5px;
568
+ }
569
+ .agent-office__client-stats > span {
570
+ display: inline-flex;
571
+ min-height: 25px;
572
+ align-items: center;
573
+ gap: 4px;
574
+ padding: 4px 6px;
575
+ border: 1px solid hsl(var(--border));
576
+ border-radius: 6px;
577
+ color: hsl(var(--muted-foreground));
578
+ background: hsl(var(--background) / 0.58);
579
+ font: 400 7px / 1 var(--font-mono);
580
+ letter-spacing: 0.05em;
581
+ }
582
+ .agent-office__client-stats svg {
583
+ width: 11px;
584
+ height: 11px;
585
+ }
586
+ .agent-office__client-stats strong {
587
+ color: hsl(var(--foreground));
588
+ font-size: 9px;
589
+ }
590
+ .agent-office__client-delta strong {
591
+ color: hsl(var(--success));
592
+ }
593
+ .agent-office__client-delta b {
594
+ color: hsl(var(--destructive));
595
+ font-weight: 500;
596
+ }
597
+ .agent-office__client-desks {
598
+ padding: 9px 9px 1px;
599
+ }
600
+ .agent-office__briefing {
601
+ display: grid;
602
+ grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
603
+ gap: 8px;
604
+ padding: 8px 9px;
605
+ border-bottom: 1px solid hsl(var(--border));
606
+ background: hsl(var(--background) / 0.34);
607
+ }
608
+ .agent-office__prompt-card,
609
+ .agent-office__todo-board {
610
+ position: relative;
611
+ display: flex;
612
+ min-width: 0;
613
+ min-height: 68px;
614
+ align-items: center;
615
+ gap: 9px;
616
+ padding: 9px 10px;
617
+ border: 1px solid hsl(var(--border));
618
+ border-radius: 10px;
619
+ color: hsl(var(--foreground));
620
+ background: hsl(var(--card) / 0.7);
621
+ text-align: left;
622
+ box-shadow: 0 6px 18px hsl(var(--shadow-color) / 0.045);
623
+ transition:
624
+ border-color 160ms ease,
625
+ background 160ms ease,
626
+ transform 160ms ease;
627
+ }
628
+ .agent-office__prompt-card {
629
+ overflow: hidden;
630
+ }
631
+ .agent-office__prompt-card.is-active {
632
+ border-color: hsl(var(--success) / 0.38);
633
+ background:
634
+ linear-gradient(
635
+ 90deg,
636
+ hsl(var(--success) / 0.07),
637
+ transparent 62%),
638
+ hsl(var(--card) / 0.78);
639
+ box-shadow: 0 8px 24px hsl(var(--success) / 0.08);
640
+ }
641
+ .agent-office__prompt-card.is-fresh::after {
642
+ position: absolute;
643
+ inset: 0 auto 0 -30%;
644
+ width: 24%;
645
+ pointer-events: none;
646
+ content: "";
647
+ background:
648
+ linear-gradient(
649
+ 90deg,
650
+ transparent,
651
+ hsl(var(--primary) / 0.14),
652
+ transparent);
653
+ transform: skewX(-18deg);
654
+ animation: agent-office-brief-arrive 1.1s ease-out 1;
655
+ }
656
+ .agent-office__prompt-card.is-waiting,
657
+ .agent-office__todo-board.is-waiting {
658
+ border-style: dashed;
659
+ background: hsl(var(--muted) / 0.28);
660
+ }
661
+ .agent-office__prompt-card:hover,
662
+ .agent-office__todo-board:hover {
663
+ border-color: hsl(var(--primary) / 0.34);
664
+ background: hsl(var(--card));
665
+ transform: translateY(-1px);
666
+ }
667
+ .agent-office__briefing-icon {
668
+ display: grid;
669
+ width: 34px;
670
+ height: 34px;
671
+ flex: 0 0 auto;
672
+ place-items: center;
673
+ border-radius: 9px;
674
+ color: hsl(var(--primary));
675
+ background: hsl(var(--primary) / 0.1);
676
+ }
677
+ .agent-office__briefing-icon svg {
678
+ width: 16px;
679
+ height: 16px;
680
+ }
681
+ .agent-office__briefing-copy {
682
+ display: flex;
683
+ min-width: 0;
684
+ flex: 1 1 auto;
685
+ flex-direction: column;
686
+ gap: 4px;
687
+ }
688
+ .agent-office__briefing-copy > span,
689
+ .agent-office__todo-heading > span {
690
+ color: hsl(var(--muted-foreground));
691
+ font: 500 7px / 1 var(--font-mono);
692
+ letter-spacing: 0.11em;
693
+ text-transform: uppercase;
694
+ }
695
+ .agent-office__briefing-copy strong {
696
+ display: -webkit-box;
697
+ overflow: hidden;
698
+ font: 500 10px / 1.35 var(--font-display);
699
+ -webkit-box-orient: vertical;
700
+ -webkit-line-clamp: 2;
701
+ }
702
+ .agent-office__prompt-card time {
703
+ flex: 0 0 auto;
704
+ align-self: flex-start;
705
+ color: hsl(var(--muted-foreground));
706
+ font: 400 7px / 1 var(--font-mono);
707
+ }
708
+ .agent-office__instruction-live {
709
+ display: inline-flex;
710
+ flex: 0 0 auto;
711
+ align-items: center;
712
+ gap: 4px;
713
+ padding: 3px 5px;
714
+ border-radius: 999px;
715
+ color: hsl(var(--success));
716
+ background: hsl(var(--success) / 0.09);
717
+ font: 500 7px / 1 var(--font-mono);
718
+ letter-spacing: 0.08em;
719
+ }
720
+ .agent-office__instruction-live i {
721
+ width: 5px;
722
+ height: 5px;
723
+ border-radius: 50%;
724
+ background: currentColor;
725
+ box-shadow: 0 0 0 3px hsl(var(--success) / 0.1);
726
+ animation: agent-office-pulse 1.6s ease-in-out infinite;
727
+ }
728
+ .agent-office__todo-board {
729
+ flex-direction: column;
730
+ align-items: stretch;
731
+ gap: 7px;
732
+ }
733
+ .agent-office__todo-board.has-active {
734
+ border-color: hsl(var(--primary) / 0.26);
735
+ }
736
+ .agent-office__todo-board.has-active::after {
737
+ position: absolute;
738
+ right: 8px;
739
+ bottom: 7px;
740
+ width: 38px;
741
+ height: 2px;
742
+ overflow: hidden;
743
+ content: "";
744
+ border-radius: 999px;
745
+ background:
746
+ linear-gradient(
747
+ 90deg,
748
+ hsl(var(--primary) / 0.16),
749
+ hsl(var(--primary)),
750
+ hsl(var(--primary) / 0.16));
751
+ background-size: 200% 100%;
752
+ animation: agent-office-sync-line 2.4s linear infinite;
753
+ }
754
+ .agent-office__todo-heading {
755
+ display: flex;
756
+ min-width: 0;
757
+ align-items: center;
758
+ justify-content: space-between;
759
+ gap: 8px;
760
+ }
761
+ .agent-office__todo-heading > span {
762
+ display: inline-flex;
763
+ align-items: center;
764
+ gap: 5px;
765
+ }
766
+ .agent-office__todo-heading svg {
767
+ width: 12px;
768
+ height: 12px;
769
+ color: hsl(var(--primary));
770
+ }
771
+ .agent-office__todo-heading strong,
772
+ .agent-office__todo-more {
773
+ color: hsl(var(--muted-foreground));
774
+ font: 500 7px / 1 var(--font-mono);
775
+ }
776
+ .agent-office__todo-preview {
777
+ display: flex;
778
+ min-width: 0;
779
+ flex-direction: column;
780
+ gap: 4px;
781
+ }
782
+ .agent-office__todo-line {
783
+ display: flex;
784
+ min-width: 0;
785
+ align-items: center;
786
+ gap: 6px;
787
+ font: 400 8px / 1.2 var(--font-mono);
788
+ }
789
+ .agent-office__todo-line i {
790
+ width: 6px;
791
+ height: 6px;
792
+ flex: 0 0 auto;
793
+ border: 1px solid hsl(var(--muted-foreground) / 0.62);
794
+ border-radius: 50%;
795
+ }
796
+ .agent-office__todo-line.is-in_progress i {
797
+ border-color: hsl(var(--success));
798
+ background: hsl(var(--success));
799
+ box-shadow: 0 0 0 3px hsl(var(--success) / 0.1);
800
+ animation: agent-office-pulse 1.6s ease-in-out infinite;
801
+ }
802
+ .agent-office__todo-line > span {
803
+ overflow: hidden;
804
+ text-overflow: ellipsis;
805
+ white-space: nowrap;
806
+ }
807
+ .agent-office__todo-empty {
808
+ display: flex;
809
+ align-items: center;
810
+ gap: 6px;
811
+ color: hsl(var(--muted-foreground));
812
+ font: 400 8px / 1.2 var(--font-mono);
813
+ }
814
+ .agent-office__todo-empty svg {
815
+ width: 13px;
816
+ height: 13px;
817
+ color: hsl(var(--success));
818
+ }
819
+ .agent-office__todo-empty.is-waiting svg {
820
+ color: hsl(var(--warning));
821
+ animation: agent-office-telemetry-wait 1.8s ease-in-out infinite;
822
+ }
823
+ .agent-office__floor {
824
+ position: relative;
825
+ z-index: 2;
826
+ min-height: 0;
827
+ overflow-y: auto;
828
+ overscroll-behavior: contain;
829
+ padding: 10px 12px 20px;
830
+ scrollbar-color: hsl(var(--border)) transparent;
831
+ }
832
+ .agent-office__lane {
833
+ --desk-top: hsl(var(--warning) / 0.72);
834
+ --desk-edge: hsl(var(--warning) / 0.3);
835
+ --desk-leg: hsl(var(--muted-foreground) / 0.62);
836
+ --desk-chair: hsl(var(--muted-foreground) / 0.28);
837
+ --desk-screen: hsl(var(--primary));
838
+ --desk-decor: hsl(var(--warning) / 0.68);
839
+ --desk-wall: hsl(var(--info) / 0.055);
840
+ --desk-floor: hsl(var(--warning) / 0.055);
841
+ --desk-aura: hsl(var(--warning) / 0.045);
842
+ position: relative;
843
+ min-height: 172px;
844
+ overflow: hidden;
845
+ margin-bottom: 9px;
846
+ border: 1px solid var(--office-line);
847
+ border-radius: 14px;
848
+ background: var(--office-panel);
849
+ box-shadow: 0 10px 30px hsl(var(--shadow-color) / 0.06);
850
+ transition:
851
+ border-color 180ms ease,
852
+ box-shadow 180ms ease,
853
+ transform 180ms ease;
854
+ animation: agent-office-lane-arrive 420ms cubic-bezier(0.16, 0.82, 0.28, 1);
855
+ }
856
+ .agent-office__lane.is-desk-mint {
857
+ --desk-top: hsl(var(--success) / 0.58);
858
+ --desk-edge: hsl(var(--success) / 0.22);
859
+ --desk-leg: hsl(var(--foreground) / 0.5);
860
+ --desk-chair: hsl(var(--success) / 0.2);
861
+ --desk-screen: hsl(var(--success));
862
+ --desk-decor: hsl(var(--info) / 0.7);
863
+ --desk-wall: hsl(var(--success) / 0.07);
864
+ --desk-floor: hsl(var(--info) / 0.045);
865
+ --desk-aura: hsl(var(--success) / 0.055);
866
+ }
867
+ .agent-office__lane.is-desk-ocean {
868
+ --desk-top: hsl(var(--info) / 0.62);
869
+ --desk-edge: hsl(var(--info) / 0.24);
870
+ --desk-leg: hsl(var(--foreground) / 0.58);
871
+ --desk-chair: hsl(var(--info) / 0.2);
872
+ --desk-screen: hsl(var(--info));
873
+ --desk-decor: hsl(var(--primary) / 0.72);
874
+ --desk-wall: hsl(var(--info) / 0.09);
875
+ --desk-floor: hsl(var(--primary) / 0.04);
876
+ --desk-aura: hsl(var(--info) / 0.052);
877
+ }
878
+ .agent-office__lane.is-desk-plum {
879
+ --desk-top: hsl(var(--primary) / 0.58);
880
+ --desk-edge: hsl(var(--primary) / 0.24);
881
+ --desk-leg: hsl(var(--foreground) / 0.54);
882
+ --desk-chair: hsl(var(--primary) / 0.2);
883
+ --desk-screen: hsl(var(--primary));
884
+ --desk-decor: hsl(var(--warning) / 0.75);
885
+ --desk-wall: hsl(var(--primary) / 0.075);
886
+ --desk-floor: hsl(var(--warning) / 0.04);
887
+ --desk-aura: hsl(var(--primary) / 0.052);
888
+ }
889
+ .agent-office__lane.is-desk-rose {
890
+ --desk-top: hsl(var(--destructive) / 0.5);
891
+ --desk-edge: hsl(var(--destructive) / 0.2);
892
+ --desk-leg: hsl(var(--foreground) / 0.52);
893
+ --desk-chair: hsl(var(--destructive) / 0.18);
894
+ --desk-screen: hsl(var(--destructive));
895
+ --desk-decor: hsl(var(--warning) / 0.72);
896
+ --desk-wall: hsl(var(--destructive) / 0.06);
897
+ --desk-floor: hsl(var(--warning) / 0.04);
898
+ --desk-aura: hsl(var(--destructive) / 0.048);
899
+ }
900
+ .agent-office__lane.is-desk-graphite {
901
+ --desk-top: hsl(var(--muted-foreground) / 0.58);
902
+ --desk-edge: hsl(var(--foreground) / 0.18);
903
+ --desk-leg: hsl(var(--foreground) / 0.66);
904
+ --desk-chair: hsl(var(--foreground) / 0.16);
905
+ --desk-screen: hsl(var(--success));
906
+ --desk-decor: hsl(var(--info) / 0.7);
907
+ --desk-wall: hsl(var(--muted-foreground) / 0.055);
908
+ --desk-floor: hsl(var(--foreground) / 0.035);
909
+ --desk-aura: hsl(var(--muted-foreground) / 0.044);
910
+ }
911
+ .agent-office__lane:hover {
912
+ transform: translateY(-1px);
913
+ box-shadow: 0 13px 34px hsl(var(--shadow-color) / 0.1);
914
+ }
915
+ .agent-office__lane.is-active {
916
+ border-color: hsl(var(--primary) / 0.38);
917
+ box-shadow: 0 12px 34px hsl(var(--primary) / 0.09);
918
+ }
919
+ .agent-office__lane.is-failed {
920
+ border-color: hsl(var(--destructive) / 0.42);
921
+ }
922
+ .agent-office__identity {
923
+ display: flex;
924
+ min-width: 0;
925
+ flex-direction: column;
926
+ justify-content: center;
927
+ padding: 16px;
928
+ border-right: 1px solid var(--office-line);
929
+ background:
930
+ linear-gradient(
931
+ 145deg,
932
+ var(--desk-aura),
933
+ transparent 68%);
934
+ }
935
+ .agent-office__identity-line {
936
+ display: flex;
937
+ min-width: 0;
938
+ align-items: center;
939
+ gap: 8px;
940
+ }
941
+ .agent-office__identity-line strong {
942
+ overflow: hidden;
943
+ font: 500 13px / 1.25 var(--font-display);
944
+ text-overflow: ellipsis;
945
+ white-space: nowrap;
946
+ }
947
+ .agent-office__status-dot {
948
+ width: 7px;
949
+ height: 7px;
950
+ flex: 0 0 auto;
951
+ border-radius: 999px;
952
+ background: hsl(var(--muted-foreground) / 0.52);
953
+ }
954
+ .agent-office__status-dot.is-active {
955
+ background: hsl(var(--success));
956
+ box-shadow: 0 0 0 4px hsl(var(--success) / 0.1);
957
+ }
958
+ .agent-office__status-dot.is-failed {
959
+ background: hsl(var(--destructive));
960
+ box-shadow: 0 0 0 4px hsl(var(--destructive) / 0.1);
961
+ }
962
+ .agent-office__role {
963
+ margin: 6px 0 16px 15px;
964
+ color: hsl(var(--primary));
965
+ font: 500 8px / 1 var(--font-mono);
966
+ letter-spacing: 0.12em;
967
+ }
968
+ .agent-office__agent-meta {
969
+ display: flex;
970
+ flex-wrap: wrap;
971
+ gap: 5px;
972
+ }
973
+ .agent-office__agent-meta span {
974
+ max-width: 100%;
975
+ overflow: hidden;
976
+ padding: 3px 6px;
977
+ border-radius: 5px;
978
+ color: hsl(var(--muted-foreground));
979
+ background: hsl(var(--muted) / 0.75);
980
+ font: 400 8px / 1.2 var(--font-mono);
981
+ text-overflow: ellipsis;
982
+ white-space: nowrap;
983
+ }
984
+ .agent-office__agent-task {
985
+ display: flex;
986
+ width: 100%;
987
+ min-width: 0;
988
+ align-items: center;
989
+ gap: 6px;
990
+ margin-top: 8px;
991
+ padding: 5px 6px;
992
+ border: 1px solid hsl(var(--primary) / 0.2);
993
+ border-radius: 7px;
994
+ color: hsl(var(--foreground));
995
+ background: hsl(var(--primary) / 0.055);
996
+ text-align: left;
997
+ }
998
+ .agent-office__agent-task:hover {
999
+ border-color: hsl(var(--primary) / 0.4);
1000
+ background: hsl(var(--primary) / 0.09);
1001
+ }
1002
+ .agent-office__agent-task:not(.is-missing) {
1003
+ animation: agent-office-task-assigned 460ms cubic-bezier(0.16, 0.82, 0.28, 1);
1004
+ }
1005
+ .agent-office__agent-task.is-missing {
1006
+ border-style: dashed;
1007
+ color: hsl(var(--muted-foreground));
1008
+ background: hsl(var(--muted) / 0.3);
1009
+ }
1010
+ .agent-office__agent-task.is-missing > svg {
1011
+ color: hsl(var(--warning));
1012
+ animation: agent-office-telemetry-wait 1.8s ease-in-out infinite;
1013
+ }
1014
+ .agent-office__agent-task > svg {
1015
+ width: 13px;
1016
+ height: 13px;
1017
+ flex: 0 0 auto;
1018
+ color: hsl(var(--primary));
1019
+ }
1020
+ .agent-office__agent-task > span {
1021
+ display: flex;
1022
+ min-width: 0;
1023
+ flex-direction: column;
1024
+ gap: 2px;
1025
+ }
1026
+ .agent-office__agent-task strong {
1027
+ color: hsl(var(--primary));
1028
+ font: 500 6px / 1 var(--font-mono);
1029
+ letter-spacing: 0.09em;
1030
+ }
1031
+ .agent-office__agent-task small {
1032
+ overflow: hidden;
1033
+ font: 400 8px / 1.2 var(--font-mono);
1034
+ text-overflow: ellipsis;
1035
+ white-space: nowrap;
1036
+ }
1037
+ .agent-office__identity-mail {
1038
+ display: flex;
1039
+ width: 100%;
1040
+ min-width: 0;
1041
+ align-items: center;
1042
+ gap: 6px;
1043
+ margin-top: 8px;
1044
+ padding: 5px 6px;
1045
+ border: 1px solid hsl(var(--info) / 0.18);
1046
+ border-radius: 7px;
1047
+ color: hsl(var(--muted-foreground));
1048
+ background: hsl(var(--info) / 0.055);
1049
+ text-align: left;
1050
+ }
1051
+ .agent-office__identity-mail:hover {
1052
+ border-color: hsl(var(--info) / 0.34);
1053
+ background: hsl(var(--info) / 0.09);
1054
+ }
1055
+ .agent-office__identity-mail.is-unread {
1056
+ border-color: hsl(var(--info) / 0.38);
1057
+ color: hsl(var(--foreground));
1058
+ }
1059
+ .agent-office__identity-mail > svg {
1060
+ width: 13px;
1061
+ height: 13px;
1062
+ flex: 0 0 auto;
1063
+ color: hsl(var(--info));
1064
+ }
1065
+ .agent-office__identity-mail > span {
1066
+ display: flex;
1067
+ min-width: 0;
1068
+ flex-direction: column;
1069
+ gap: 2px;
1070
+ }
1071
+ .agent-office__identity-mail strong {
1072
+ font: 500 7px / 1 var(--font-mono);
1073
+ letter-spacing: 0.08em;
1074
+ }
1075
+ .agent-office__identity-mail small {
1076
+ overflow: hidden;
1077
+ max-width: 100%;
1078
+ font: 400 8px / 1.15 var(--font-mono);
1079
+ text-overflow: ellipsis;
1080
+ white-space: nowrap;
1081
+ }
1082
+ .agent-office__scene {
1083
+ position: relative;
1084
+ min-width: 0;
1085
+ overflow: hidden;
1086
+ background:
1087
+ linear-gradient(
1088
+ to bottom,
1089
+ var(--desk-wall) 0 68%,
1090
+ transparent 68%),
1091
+ linear-gradient(
1092
+ 165deg,
1093
+ transparent 0 72%,
1094
+ var(--desk-floor) 72% 100%);
1095
+ }
1096
+ .agent-office__scene::after {
1097
+ position: absolute;
1098
+ right: 0;
1099
+ bottom: 0;
1100
+ left: 0;
1101
+ height: 29%;
1102
+ pointer-events: none;
1103
+ content: "";
1104
+ border-top: 1px solid hsl(var(--border) / 0.55);
1105
+ background-image:
1106
+ repeating-linear-gradient(
1107
+ 90deg,
1108
+ transparent 0 54px,
1109
+ hsl(var(--border) / 0.26) 54px 55px);
1110
+ transform: perspective(170px) rotateX(4deg);
1111
+ transform-origin: bottom;
1112
+ }
1113
+ .agent-office__window {
1114
+ position: absolute;
1115
+ top: 14px;
1116
+ left: 15px;
1117
+ display: flex;
1118
+ width: 70px;
1119
+ height: 37px;
1120
+ gap: 3px;
1121
+ padding: 4px;
1122
+ border: 1px solid hsl(var(--border));
1123
+ border-radius: 5px;
1124
+ background: hsl(var(--card));
1125
+ box-shadow: inset 0 -10px 18px hsl(var(--info) / 0.08);
1126
+ }
1127
+ .agent-office__window span {
1128
+ flex: 1;
1129
+ border-radius: 2px;
1130
+ background:
1131
+ linear-gradient(
1132
+ 160deg,
1133
+ color-mix(in srgb, var(--desk-screen) 23%, transparent),
1134
+ hsl(var(--primary) / 0.04));
1135
+ animation: agent-office-window-glow 8s ease-in-out infinite alternate;
1136
+ }
1137
+ .agent-office__window span:nth-child(2) {
1138
+ animation-delay: -2.4s;
1139
+ }
1140
+ .agent-office__window span:nth-child(3) {
1141
+ animation-delay: -4.8s;
1142
+ }
1143
+ .agent-office__plant {
1144
+ position: absolute;
1145
+ bottom: 29px;
1146
+ left: 9px;
1147
+ z-index: 3;
1148
+ width: 25px;
1149
+ height: 41px;
1150
+ }
1151
+ .agent-office__plant::after {
1152
+ position: absolute;
1153
+ bottom: 0;
1154
+ left: 4px;
1155
+ width: 18px;
1156
+ height: 16px;
1157
+ content: "";
1158
+ border-radius: 3px 3px 8px 8px;
1159
+ background: var(--desk-decor);
1160
+ }
1161
+ .agent-office__plant span,
1162
+ .agent-office__plant i,
1163
+ .agent-office__plant b {
1164
+ --plant-angle: 0deg;
1165
+ --plant-scale: 1;
1166
+ position: absolute;
1167
+ bottom: 14px;
1168
+ left: 10px;
1169
+ width: 8px;
1170
+ height: 23px;
1171
+ border-radius: 100% 0 100% 0;
1172
+ background: hsl(var(--success) / 0.72);
1173
+ transform: rotate(var(--plant-angle)) scale(var(--plant-scale));
1174
+ transform-origin: bottom;
1175
+ }
1176
+ .agent-office__plant i {
1177
+ --plant-angle: -40deg;
1178
+ }
1179
+ .agent-office__plant b {
1180
+ --plant-angle: 43deg;
1181
+ --plant-scale: 0.86;
1182
+ }
1183
+ .agent-office__plant span,
1184
+ .agent-office__plant i,
1185
+ .agent-office__plant b {
1186
+ animation: agent-office-plant-sway 4.8s ease-in-out infinite alternate;
1187
+ }
1188
+ .agent-office__plant i {
1189
+ animation-delay: -1.3s;
1190
+ }
1191
+ .agent-office__plant b {
1192
+ animation-delay: -2.6s;
1193
+ }
1194
+ .agent-office__desk-zone {
1195
+ position: absolute;
1196
+ z-index: 4;
1197
+ top: 18px;
1198
+ bottom: 19px;
1199
+ left: 30px;
1200
+ width: 128px;
1201
+ }
1202
+ .agent-office__desk {
1203
+ position: absolute;
1204
+ z-index: 5;
1205
+ right: 0;
1206
+ bottom: 29px;
1207
+ width: 84px;
1208
+ height: 9px;
1209
+ border-radius: 3px;
1210
+ background: var(--desk-top);
1211
+ box-shadow: 0 25px 0 -3px var(--desk-edge);
1212
+ }
1213
+ .agent-office__desk::before,
1214
+ .agent-office__desk::after {
1215
+ position: absolute;
1216
+ top: 7px;
1217
+ width: 5px;
1218
+ height: 38px;
1219
+ content: "";
1220
+ background: var(--desk-leg);
1221
+ }
1222
+ .agent-office__desk::before {
1223
+ left: 7px;
1224
+ }
1225
+ .agent-office__desk::after {
1226
+ right: 7px;
1227
+ }
1228
+ .agent-office__monitor {
1229
+ position: absolute;
1230
+ z-index: 7;
1231
+ right: 22px;
1232
+ bottom: 38px;
1233
+ display: grid;
1234
+ width: 48px;
1235
+ height: 34px;
1236
+ place-items: center;
1237
+ border: 3px solid hsl(var(--foreground) / 0.8);
1238
+ border-radius: 5px;
1239
+ color: var(--desk-screen);
1240
+ background: hsl(var(--background));
1241
+ box-shadow: inset 0 0 12px color-mix(in srgb, var(--desk-screen) 18%, transparent);
1242
+ }
1243
+ .agent-office__lane.is-active .agent-office__monitor::before {
1244
+ position: absolute;
1245
+ inset: 3px;
1246
+ pointer-events: none;
1247
+ content: "";
1248
+ border-radius: 2px;
1249
+ opacity: 0.46;
1250
+ background:
1251
+ linear-gradient(
1252
+ to bottom,
1253
+ transparent 0 42%,
1254
+ color-mix(in srgb, var(--desk-screen) 28%, transparent) 48% 54%,
1255
+ transparent 60% 100%);
1256
+ background-size: 100% 220%;
1257
+ animation: agent-office-monitor-scan 2.2s linear infinite;
1258
+ }
1259
+ .agent-office__monitor::after {
1260
+ position: absolute;
1261
+ bottom: -10px;
1262
+ left: 20px;
1263
+ width: 4px;
1264
+ height: 8px;
1265
+ content: "";
1266
+ background: hsl(var(--foreground) / 0.72);
1267
+ }
1268
+ .agent-office__monitor > svg {
1269
+ width: 15px;
1270
+ height: 15px;
1271
+ }
1272
+ .agent-office__monitor .agent-office__tool-glyph {
1273
+ width: 23px;
1274
+ height: 23px;
1275
+ border: 0;
1276
+ background: transparent;
1277
+ box-shadow: none;
1278
+ }
1279
+ .agent-office__monitor .agent-office__tool-glyph > svg {
1280
+ width: 14px;
1281
+ height: 14px;
1282
+ }
1283
+ .agent-office__monitor .agent-office__file-underlay {
1284
+ display: none;
1285
+ }
1286
+ .agent-office__activity-fx {
1287
+ position: absolute;
1288
+ z-index: 9;
1289
+ right: 16px;
1290
+ bottom: 35px;
1291
+ width: 58px;
1292
+ height: 42px;
1293
+ pointer-events: none;
1294
+ opacity: 0;
1295
+ }
1296
+ .agent-office__activity-fx > span,
1297
+ .agent-office__activity-fx > i,
1298
+ .agent-office__activity-fx > b {
1299
+ position: absolute;
1300
+ display: block;
1301
+ }
1302
+ .agent-office__scene.is-tool-terminal .agent-office__activity-fx {
1303
+ opacity: 0.8;
1304
+ }
1305
+ .agent-office__scene.is-tool-terminal .agent-office__activity-fx > span,
1306
+ .agent-office__scene.is-tool-terminal .agent-office__activity-fx > i,
1307
+ .agent-office__scene.is-tool-terminal .agent-office__activity-fx > b {
1308
+ bottom: 10px;
1309
+ left: 17px;
1310
+ width: 2px;
1311
+ height: 5px;
1312
+ border-radius: 2px;
1313
+ background: var(--desk-screen);
1314
+ animation: agent-office-terminal-bars 0.85s ease-in-out infinite alternate;
1315
+ }
1316
+ .agent-office__scene.is-tool-terminal .agent-office__activity-fx > i {
1317
+ left: 25px;
1318
+ height: 10px;
1319
+ animation-delay: -0.42s;
1320
+ }
1321
+ .agent-office__scene.is-tool-terminal .agent-office__activity-fx > b {
1322
+ left: 33px;
1323
+ height: 7px;
1324
+ animation-delay: -0.7s;
1325
+ }
1326
+ .agent-office__scene:is(.is-tool-web) .agent-office__activity-fx {
1327
+ opacity: 0.7;
1328
+ }
1329
+ .agent-office__scene:is(.is-tool-web) .agent-office__activity-fx > span,
1330
+ .agent-office__scene:is(.is-tool-web) .agent-office__activity-fx > i,
1331
+ .agent-office__scene:is(.is-tool-web) .agent-office__activity-fx > b {
1332
+ top: 1px;
1333
+ right: -2px;
1334
+ width: 12px;
1335
+ height: 12px;
1336
+ border: 1px solid var(--desk-screen);
1337
+ border-bottom-color: transparent;
1338
+ border-left-color: transparent;
1339
+ border-radius: 50%;
1340
+ transform: rotate(-38deg);
1341
+ animation: agent-office-web-signal 1.8s ease-out infinite;
1342
+ }
1343
+ .agent-office__scene:is(.is-tool-web) .agent-office__activity-fx > i {
1344
+ top: -3px;
1345
+ right: -6px;
1346
+ width: 20px;
1347
+ height: 20px;
1348
+ animation-delay: -0.6s;
1349
+ }
1350
+ .agent-office__scene:is(.is-tool-web) .agent-office__activity-fx > b {
1351
+ top: -7px;
1352
+ right: -10px;
1353
+ width: 28px;
1354
+ height: 28px;
1355
+ animation-delay: -1.2s;
1356
+ }
1357
+ .agent-office__scene:is(.is-tool-read, .is-tool-search) .agent-office__activity-fx {
1358
+ opacity: 0.78;
1359
+ }
1360
+ .agent-office__scene:is(.is-tool-read, .is-tool-search) .agent-office__activity-fx > span {
1361
+ top: -3px;
1362
+ left: 4px;
1363
+ width: 14px;
1364
+ height: 14px;
1365
+ border: 2px solid var(--desk-screen);
1366
+ border-radius: 50%;
1367
+ animation: agent-office-inspect 1.65s ease-in-out infinite alternate;
1368
+ }
1369
+ .agent-office__scene:is(.is-tool-read, .is-tool-search) .agent-office__activity-fx > i {
1370
+ top: 10px;
1371
+ left: 16px;
1372
+ width: 9px;
1373
+ height: 2px;
1374
+ border-radius: 2px;
1375
+ background: var(--desk-screen);
1376
+ transform: rotate(42deg);
1377
+ animation: agent-office-inspect-handle 1.65s ease-in-out infinite alternate;
1378
+ }
1379
+ .agent-office__scene:is(.is-tool-read, .is-tool-search) .agent-office__activity-fx > b {
1380
+ top: 1px;
1381
+ left: 31px;
1382
+ width: 12px;
1383
+ height: 16px;
1384
+ border: 1px solid color-mix(in srgb, var(--desk-screen) 58%, transparent);
1385
+ border-radius: 2px;
1386
+ background:
1387
+ repeating-linear-gradient(
1388
+ to bottom,
1389
+ transparent 0 3px,
1390
+ color-mix(in srgb, var(--desk-screen) 32%, transparent) 3px 4px);
1391
+ }
1392
+ .agent-office__scene:is(.is-tool-write, .is-tool-edit) .agent-office__activity-fx {
1393
+ opacity: 0.78;
1394
+ }
1395
+ .agent-office__scene:is(.is-tool-write, .is-tool-edit) .agent-office__activity-fx > span {
1396
+ right: 5px;
1397
+ bottom: -2px;
1398
+ width: 22px;
1399
+ height: 8px;
1400
+ border-bottom: 1px solid color-mix(in srgb, var(--desk-screen) 62%, transparent);
1401
+ background:
1402
+ repeating-linear-gradient(
1403
+ to bottom,
1404
+ transparent 0 3px,
1405
+ color-mix(in srgb, var(--desk-screen) 24%, transparent) 3px 4px);
1406
+ }
1407
+ .agent-office__scene:is(.is-tool-write, .is-tool-edit) .agent-office__activity-fx > i {
1408
+ right: 12px;
1409
+ bottom: 3px;
1410
+ width: 17px;
1411
+ height: 3px;
1412
+ border-radius: 4px 1px 1px 4px;
1413
+ background: var(--desk-screen);
1414
+ transform: rotate(-27deg);
1415
+ transform-origin: right;
1416
+ animation: agent-office-write-stroke 0.72s ease-in-out infinite alternate;
1417
+ }
1418
+ .agent-office__scene:is(.is-tool-write, .is-tool-edit) .agent-office__activity-fx > b {
1419
+ right: 27px;
1420
+ bottom: 1px;
1421
+ width: 3px;
1422
+ height: 3px;
1423
+ border-radius: 50%;
1424
+ background: var(--desk-screen);
1425
+ }
1426
+ .agent-office__scene:is(.is-tool-memory, .is-tool-other) .agent-office__activity-fx {
1427
+ opacity: 0.72;
1428
+ }
1429
+ .agent-office__scene:is(.is-tool-memory, .is-tool-other) .agent-office__activity-fx > span,
1430
+ .agent-office__scene:is(.is-tool-memory, .is-tool-other) .agent-office__activity-fx > i,
1431
+ .agent-office__scene:is(.is-tool-memory, .is-tool-other) .agent-office__activity-fx > b {
1432
+ top: -1px;
1433
+ right: 0;
1434
+ width: 6px;
1435
+ height: 6px;
1436
+ border: 1px solid var(--desk-screen);
1437
+ border-radius: 2px;
1438
+ background: color-mix(in srgb, var(--desk-screen) 15%, transparent);
1439
+ animation: agent-office-memory-pulse 1.8s ease-in-out infinite;
1440
+ }
1441
+ .agent-office__scene:is(.is-tool-memory, .is-tool-other) .agent-office__activity-fx > i {
1442
+ top: 8px;
1443
+ right: -5px;
1444
+ animation-delay: -0.6s;
1445
+ }
1446
+ .agent-office__scene:is(.is-tool-memory, .is-tool-other) .agent-office__activity-fx > b {
1447
+ top: 14px;
1448
+ right: 4px;
1449
+ animation-delay: -1.2s;
1450
+ }
1451
+ .agent-office__desk-lamp {
1452
+ position: absolute;
1453
+ z-index: 8;
1454
+ right: 76px;
1455
+ bottom: 39px;
1456
+ width: 3px;
1457
+ height: 25px;
1458
+ border-radius: 3px;
1459
+ background: var(--desk-leg);
1460
+ transform: rotate(8deg);
1461
+ transform-origin: bottom;
1462
+ }
1463
+ .agent-office__desk-lamp::before {
1464
+ position: absolute;
1465
+ top: -4px;
1466
+ left: -7px;
1467
+ width: 16px;
1468
+ height: 10px;
1469
+ content: "";
1470
+ border-radius: 8px 8px 3px 3px;
1471
+ background: var(--desk-decor);
1472
+ box-shadow: 0 7px 11px color-mix(in srgb, var(--desk-decor) 20%, transparent);
1473
+ transform: rotate(-12deg);
1474
+ }
1475
+ .agent-office__desk-lamp::after {
1476
+ position: absolute;
1477
+ right: -5px;
1478
+ bottom: -2px;
1479
+ width: 13px;
1480
+ height: 3px;
1481
+ content: "";
1482
+ border-radius: 4px;
1483
+ background: var(--desk-leg);
1484
+ }
1485
+ .agent-office__desk-clutter {
1486
+ position: absolute;
1487
+ z-index: 8;
1488
+ right: 61px;
1489
+ bottom: 39px;
1490
+ width: 18px;
1491
+ height: 7px;
1492
+ border-radius: 2px;
1493
+ background: hsl(var(--card));
1494
+ box-shadow: 0 -3px 0 -1px var(--desk-decor), 0 1px 2px hsl(var(--shadow-color) / 0.12);
1495
+ transform: rotate(-3deg);
1496
+ }
1497
+ .agent-office__desk-clutter > i,
1498
+ .agent-office__desk-clutter > b {
1499
+ position: absolute;
1500
+ right: 2px;
1501
+ bottom: 8px;
1502
+ width: 2px;
1503
+ height: 10px;
1504
+ border-radius: 2px;
1505
+ background: var(--desk-decor);
1506
+ transform: rotate(12deg);
1507
+ }
1508
+ .agent-office__desk-clutter > b {
1509
+ right: 6px;
1510
+ height: 8px;
1511
+ background: var(--desk-screen);
1512
+ transform: rotate(-5deg);
1513
+ }
1514
+ .agent-office__desk-charm {
1515
+ position: absolute;
1516
+ z-index: 8;
1517
+ right: -6px;
1518
+ bottom: 11px;
1519
+ display: block;
1520
+ width: 15px;
1521
+ height: 14px;
1522
+ color: var(--desk-decor);
1523
+ }
1524
+ .agent-office__desk-charm.is-bot {
1525
+ border: 1px solid currentColor;
1526
+ border-radius: 4px;
1527
+ background: color-mix(in srgb, var(--desk-decor) 18%, hsl(var(--card)));
1528
+ }
1529
+ .agent-office__desk-charm.is-bot::before,
1530
+ .agent-office__desk-charm.is-bot::after {
1531
+ position: absolute;
1532
+ top: 4px;
1533
+ width: 2px;
1534
+ height: 2px;
1535
+ content: "";
1536
+ border-radius: 50%;
1537
+ background: currentColor;
1538
+ animation: agent-office-charm-blink 4.1s ease-in-out infinite;
1539
+ }
1540
+ .agent-office__desk-charm.is-bot::before {
1541
+ left: 3px;
1542
+ }
1543
+ .agent-office__desk-charm.is-bot::after {
1544
+ right: 3px;
1545
+ }
1546
+ .agent-office__desk-charm.is-bot > i {
1547
+ position: absolute;
1548
+ top: -5px;
1549
+ left: 6px;
1550
+ width: 1px;
1551
+ height: 5px;
1552
+ background: currentColor;
1553
+ }
1554
+ .agent-office__desk-charm.is-cactus::before {
1555
+ position: absolute;
1556
+ right: 4px;
1557
+ bottom: 4px;
1558
+ width: 7px;
1559
+ height: 12px;
1560
+ content: "";
1561
+ border-radius: 6px 6px 2px 2px;
1562
+ background: hsl(var(--success) / 0.74);
1563
+ box-shadow: -4px 4px 0 -2px hsl(var(--success) / 0.74);
1564
+ }
1565
+ .agent-office__desk-charm.is-cactus::after {
1566
+ position: absolute;
1567
+ right: 1px;
1568
+ bottom: 0;
1569
+ width: 13px;
1570
+ height: 5px;
1571
+ content: "";
1572
+ border-radius: 2px 2px 5px 5px;
1573
+ background: var(--desk-decor);
1574
+ }
1575
+ .agent-office__desk-charm.is-duck::before {
1576
+ position: absolute;
1577
+ right: 0;
1578
+ bottom: 0;
1579
+ width: 14px;
1580
+ height: 9px;
1581
+ content: "";
1582
+ border-radius: 65% 48% 48% 55%;
1583
+ background: hsl(var(--warning) / 0.82);
1584
+ animation: agent-office-charm-bob 3.6s ease-in-out infinite;
1585
+ }
1586
+ .agent-office__desk-charm.is-duck::after {
1587
+ position: absolute;
1588
+ top: 0;
1589
+ left: 1px;
1590
+ width: 8px;
1591
+ height: 8px;
1592
+ content: "";
1593
+ border-radius: 50%;
1594
+ background: hsl(var(--warning) / 0.82);
1595
+ box-shadow: -3px 4px 0 -2px hsl(var(--destructive) / 0.72);
1596
+ animation: agent-office-charm-bob 3.6s ease-in-out infinite;
1597
+ }
1598
+ .agent-office__desk-charm.is-radio {
1599
+ border: 1px solid currentColor;
1600
+ border-radius: 3px;
1601
+ background: hsl(var(--card));
1602
+ box-shadow: inset 5px 0 0 color-mix(in srgb, var(--desk-decor) 18%, transparent);
1603
+ }
1604
+ .agent-office__desk-charm.is-radio::before {
1605
+ position: absolute;
1606
+ top: 3px;
1607
+ right: 2px;
1608
+ width: 5px;
1609
+ height: 5px;
1610
+ content: "";
1611
+ border: 1px dotted currentColor;
1612
+ border-radius: 50%;
1613
+ }
1614
+ .agent-office__desk-charm.is-radio::after {
1615
+ position: absolute;
1616
+ top: -6px;
1617
+ left: 3px;
1618
+ width: 1px;
1619
+ height: 7px;
1620
+ content: "";
1621
+ background: currentColor;
1622
+ transform: rotate(-20deg);
1623
+ transform-origin: bottom;
1624
+ }
1625
+ .agent-office__lane.is-clutter-0 .agent-office__desk-lamp,
1626
+ .agent-office__lane.is-clutter-1 .agent-office__desk-clutter {
1627
+ display: none;
1628
+ }
1629
+ .agent-office__lane.is-layout-1 .agent-office__desk-zone {
1630
+ left: 39px;
1631
+ }
1632
+ .agent-office__lane.is-layout-1 .agent-office__window {
1633
+ width: 49px;
1634
+ border-radius: 14px 14px 5px 5px;
1635
+ }
1636
+ .agent-office__lane.is-layout-1 .agent-office__desk {
1637
+ width: 91px;
1638
+ border-radius: 8px 3px 3px 8px;
1639
+ transform: rotate(0.7deg);
1640
+ }
1641
+ .agent-office__lane.is-layout-2 .agent-office__desk-zone {
1642
+ left: 22px;
1643
+ }
1644
+ .agent-office__lane.is-layout-2 .agent-office__desk {
1645
+ bottom: 31px;
1646
+ height: 11px;
1647
+ border-radius: 2px 9px 2px 2px;
1648
+ }
1649
+ .agent-office__lane.is-layout-2 .agent-office__desk::before {
1650
+ left: 17px;
1651
+ width: 3px;
1652
+ }
1653
+ .agent-office__lane.is-layout-2 .agent-office__desk::after {
1654
+ right: 16px;
1655
+ width: 3px;
1656
+ }
1657
+ .agent-office__lane.is-layout-2 .agent-office__plant {
1658
+ transform: scale(0.78);
1659
+ transform-origin: bottom;
1660
+ }
1661
+ .agent-office__lane.is-layout-3 .agent-office__window {
1662
+ width: 78px;
1663
+ height: 29px;
1664
+ border-radius: 3px;
1665
+ transform: rotate(-1deg);
1666
+ }
1667
+ .agent-office__lane.is-layout-3 .agent-office__window span:nth-child(2) {
1668
+ flex: 1.8;
1669
+ }
1670
+ .agent-office__lane.is-layout-3 .agent-office__desk {
1671
+ width: 78px;
1672
+ height: 12px;
1673
+ border-radius: 10px 2px 6px 2px;
1674
+ }
1675
+ .agent-office__lane.is-layout-3 .agent-office__plant {
1676
+ left: 139px;
1677
+ }
1678
+ .agent-office__mug {
1679
+ position: absolute;
1680
+ z-index: 8;
1681
+ right: 4px;
1682
+ bottom: 39px;
1683
+ width: 11px;
1684
+ height: 13px;
1685
+ border-radius: 2px 2px 4px 4px;
1686
+ background: hsl(var(--primary) / 0.55);
1687
+ }
1688
+ .agent-office__mug::after {
1689
+ position: absolute;
1690
+ top: 3px;
1691
+ right: -5px;
1692
+ width: 6px;
1693
+ height: 7px;
1694
+ content: "";
1695
+ border: 2px solid hsl(var(--primary) / 0.55);
1696
+ border-left: 0;
1697
+ border-radius: 0 5px 5px 0;
1698
+ }
1699
+ .agent-office__mug > i,
1700
+ .agent-office__mug > b {
1701
+ position: absolute;
1702
+ top: -9px;
1703
+ left: 2px;
1704
+ width: 5px;
1705
+ height: 8px;
1706
+ content: "";
1707
+ border-left: 1px solid hsl(var(--muted-foreground) / 0.42);
1708
+ border-radius: 50%;
1709
+ opacity: 0;
1710
+ animation: agent-office-mug-steam 3.4s ease-in-out infinite;
1711
+ }
1712
+ .agent-office__mug > b {
1713
+ left: 6px;
1714
+ animation-delay: -1.55s;
1715
+ }
1716
+ .agent-office__mug.is-leader {
1717
+ width: 14px;
1718
+ background: hsl(var(--warning) / 0.82);
1719
+ box-shadow: inset 0 3px 0 hsl(var(--background) / 0.22);
1720
+ }
1721
+ .agent-office__mug.is-leader::before {
1722
+ position: absolute;
1723
+ top: -5px;
1724
+ left: 2px;
1725
+ width: 10px;
1726
+ height: 5px;
1727
+ content: "";
1728
+ background: hsl(var(--warning));
1729
+ clip-path: polygon(0 100%, 0 0, 30% 65%, 50% 0, 70% 65%, 100% 0, 100% 100%);
1730
+ }
1731
+ .agent-office__mug.is-leader::after {
1732
+ border-color: hsl(var(--warning) / 0.82);
1733
+ }
1734
+ .agent-office__mug.is-builder {
1735
+ width: 10px;
1736
+ height: 18px;
1737
+ border-radius: 3px;
1738
+ background: hsl(var(--success) / 0.72);
1739
+ }
1740
+ .agent-office__mug.is-builder::after {
1741
+ display: none;
1742
+ }
1743
+ .agent-office__mug.is-researcher {
1744
+ width: 15px;
1745
+ height: 14px;
1746
+ border-radius: 3px 3px 7px 7px;
1747
+ background: hsl(var(--info) / 0.66);
1748
+ }
1749
+ .agent-office__mug.is-researcher::after {
1750
+ border-color: hsl(var(--info) / 0.66);
1751
+ }
1752
+ .agent-office__mug.is-reviewer {
1753
+ right: 7px;
1754
+ bottom: 39px;
1755
+ width: 10px;
1756
+ height: 8px;
1757
+ border-radius: 2px 2px 5px 5px;
1758
+ background: hsl(var(--warning) / 0.68);
1759
+ }
1760
+ .agent-office__mug.is-reviewer::after {
1761
+ top: 1px;
1762
+ right: -4px;
1763
+ width: 5px;
1764
+ height: 5px;
1765
+ border-color: hsl(var(--warning) / 0.68);
1766
+ }
1767
+ .agent-office__mug.is-planner {
1768
+ background: hsl(var(--primary) / 0.64);
1769
+ box-shadow: -8px -3px 0 -3px hsl(var(--foreground) / 0.72);
1770
+ }
1771
+ .agent-office__mug.is-operator {
1772
+ background: hsl(var(--muted-foreground) / 0.62);
1773
+ }
1774
+ .agent-office__mug.is-operator::after {
1775
+ border-color: hsl(var(--muted-foreground) / 0.62);
1776
+ }
1777
+ .agent-office__avatar {
1778
+ --avatar-shirt: hsl(var(--primary) / 0.72);
1779
+ --avatar-accent: hsl(var(--primary));
1780
+ --avatar-skin: hsl(var(--warning) / 0.42);
1781
+ --avatar-skin-shadow: hsl(var(--warning) / 0.14);
1782
+ --avatar-hair: hsl(var(--foreground) / 0.78);
1783
+ --avatar-cycle: 7.2s;
1784
+ --avatar-delay: -0.4s;
1785
+ --avatar-type-speed: 0.72s;
1786
+ position: absolute;
1787
+ z-index: 6;
1788
+ bottom: 25px;
1789
+ left: 0;
1790
+ width: 58px;
1791
+ height: 78px;
1792
+ }
1793
+ .agent-office__avatar-chair {
1794
+ position: absolute;
1795
+ bottom: 2px;
1796
+ left: 5px;
1797
+ width: 41px;
1798
+ height: 49px;
1799
+ border-radius: 15px 15px 8px 8px;
1800
+ background: var(--desk-chair);
1801
+ transform: rotate(-3deg);
1802
+ }
1803
+ .agent-office__avatar-body {
1804
+ position: absolute;
1805
+ bottom: 15px;
1806
+ left: 14px;
1807
+ width: 34px;
1808
+ height: 35px;
1809
+ border-radius: 12px 12px 8px 8px;
1810
+ background: var(--avatar-shirt);
1811
+ }
1812
+ .agent-office__avatar-head {
1813
+ position: absolute;
1814
+ top: 4px;
1815
+ left: 15px;
1816
+ width: 31px;
1817
+ height: 32px;
1818
+ border-radius: 48% 48% 44% 44%;
1819
+ background: var(--avatar-skin);
1820
+ box-shadow: inset 0 -3px 0 var(--avatar-skin-shadow);
1821
+ }
1822
+ .agent-office__avatar-hair {
1823
+ position: absolute;
1824
+ inset: -2px 2px auto 0;
1825
+ height: 13px;
1826
+ border-radius: 15px 14px 4px 7px;
1827
+ background: var(--avatar-hair);
1828
+ }
1829
+ .agent-office__avatar.is-avatar-1 {
1830
+ --avatar-skin: color-mix(in srgb, hsl(var(--warning)) 72%, hsl(var(--foreground)));
1831
+ --avatar-skin-shadow: color-mix(in srgb, var(--avatar-skin) 72%, transparent);
1832
+ --avatar-hair: hsl(var(--primary) / 0.76);
1833
+ }
1834
+ .agent-office__avatar.is-avatar-1 .agent-office__avatar-hair {
1835
+ inset: -3px -1px auto -1px;
1836
+ height: 17px;
1837
+ border-radius: 17px 15px 8px 3px;
1838
+ clip-path: polygon(0 0, 100% 0, 100% 68%, 70% 42%, 48% 100%, 31% 43%, 0 72%);
1839
+ }
1840
+ .agent-office__avatar.is-avatar-2 {
1841
+ --avatar-skin: color-mix(in srgb, hsl(var(--warning)) 63%, hsl(var(--background)));
1842
+ --avatar-skin-shadow: hsl(var(--warning) / 0.12);
1843
+ --avatar-hair: hsl(var(--foreground) / 0.7);
1844
+ }
1845
+ .agent-office__avatar.is-avatar-2 .agent-office__avatar-hair {
1846
+ inset: -4px -1px auto;
1847
+ width: 32px;
1848
+ height: 15px;
1849
+ border-radius: 11px 13px 4px 7px;
1850
+ background:
1851
+ radial-gradient(
1852
+ circle at 15% 58%,
1853
+ var(--avatar-hair) 0 4px,
1854
+ transparent 4.5px),
1855
+ radial-gradient(
1856
+ circle at 38% 34%,
1857
+ var(--avatar-hair) 0 5px,
1858
+ transparent 5.5px),
1859
+ radial-gradient(
1860
+ circle at 64% 38%,
1861
+ var(--avatar-hair) 0 5px,
1862
+ transparent 5.5px),
1863
+ radial-gradient(
1864
+ circle at 87% 62%,
1865
+ var(--avatar-hair) 0 4px,
1866
+ transparent 4.5px);
1867
+ }
1868
+ .agent-office__avatar.is-avatar-3 {
1869
+ --avatar-skin: color-mix(in srgb, hsl(var(--warning)) 58%, hsl(var(--primary)));
1870
+ --avatar-skin-shadow: hsl(var(--primary) / 0.13);
1871
+ --avatar-hair: hsl(var(--muted-foreground) / 0.84);
1872
+ }
1873
+ .agent-office__avatar.is-avatar-3 .agent-office__avatar-hair {
1874
+ inset: -1px 3px auto 0;
1875
+ height: 9px;
1876
+ border-radius: 14px 14px 3px 7px;
1877
+ }
1878
+ .agent-office__avatar.is-avatar-3 .agent-office__avatar-hair::after {
1879
+ position: absolute;
1880
+ top: -7px;
1881
+ right: -3px;
1882
+ width: 11px;
1883
+ height: 11px;
1884
+ content: "";
1885
+ border-radius: 50%;
1886
+ background: var(--avatar-hair);
1887
+ }
1888
+ .agent-office__avatar.is-avatar-4 {
1889
+ --avatar-skin: color-mix(in srgb, hsl(var(--warning)) 78%, hsl(var(--background)));
1890
+ --avatar-skin-shadow: hsl(var(--warning) / 0.1);
1891
+ --avatar-hair: hsl(var(--foreground) / 0.66);
1892
+ }
1893
+ .agent-office__avatar.is-avatar-4 .agent-office__avatar-hair {
1894
+ inset: 0 2px auto 1px;
1895
+ height: 5px;
1896
+ border-radius: 50% 50% 2px 2px;
1897
+ background:
1898
+ repeating-linear-gradient(
1899
+ 90deg,
1900
+ var(--avatar-hair) 0 2px,
1901
+ transparent 2px 4px);
1902
+ }
1903
+ .agent-office__avatar.is-motion-1 {
1904
+ --avatar-cycle: 8.6s;
1905
+ --avatar-delay: -3.1s;
1906
+ --avatar-type-speed: 0.58s;
1907
+ }
1908
+ .agent-office__avatar.is-motion-2 {
1909
+ --avatar-cycle: 6.8s;
1910
+ --avatar-delay: -5.2s;
1911
+ --avatar-type-speed: 0.84s;
1912
+ }
1913
+ .agent-office__avatar.is-motion-3 {
1914
+ --avatar-cycle: 9.4s;
1915
+ --avatar-delay: -1.7s;
1916
+ --avatar-type-speed: 0.66s;
1917
+ }
1918
+ .agent-office__avatar-face::before,
1919
+ .agent-office__avatar-face::after {
1920
+ position: absolute;
1921
+ top: 17px;
1922
+ width: 2px;
1923
+ height: 2px;
1924
+ content: "";
1925
+ border-radius: 50%;
1926
+ background: hsl(var(--foreground) / 0.7);
1927
+ animation: agent-office-blink 5.2s ease-in-out infinite;
1928
+ animation-delay: var(--avatar-delay);
1929
+ }
1930
+ .agent-office__avatar-face::before {
1931
+ left: 9px;
1932
+ }
1933
+ .agent-office__avatar-face::after {
1934
+ right: 9px;
1935
+ }
1936
+ .agent-office__avatar-mouth {
1937
+ position: absolute;
1938
+ bottom: 6px;
1939
+ left: 13px;
1940
+ width: 6px;
1941
+ height: 2px;
1942
+ border-radius: 50%;
1943
+ background: hsl(var(--foreground) / 0.58);
1944
+ transform-origin: center;
1945
+ }
1946
+ .agent-office__avatar-headset {
1947
+ position: absolute;
1948
+ inset: 5px -4px auto;
1949
+ height: 20px;
1950
+ border: 2px solid hsl(var(--foreground) / 0.72);
1951
+ border-bottom: 0;
1952
+ border-radius: 15px 15px 0 0;
1953
+ }
1954
+ .agent-office__avatar-headset::after {
1955
+ position: absolute;
1956
+ right: -3px;
1957
+ bottom: -3px;
1958
+ width: 5px;
1959
+ height: 9px;
1960
+ content: "";
1961
+ border-radius: 3px;
1962
+ background: hsl(var(--foreground) / 0.72);
1963
+ }
1964
+ .agent-office__avatar-arm {
1965
+ position: absolute;
1966
+ z-index: 8;
1967
+ right: 0;
1968
+ bottom: 29px;
1969
+ width: 29px;
1970
+ height: 8px;
1971
+ border-radius: 8px;
1972
+ background: var(--avatar-shirt);
1973
+ transform: rotate(-11deg);
1974
+ transform-origin: left center;
1975
+ }
1976
+ .agent-office__avatar-role-badge {
1977
+ position: absolute;
1978
+ z-index: 10;
1979
+ bottom: 4px;
1980
+ left: 18px;
1981
+ display: grid;
1982
+ width: 18px;
1983
+ height: 18px;
1984
+ place-items: center;
1985
+ border: 2px solid hsl(var(--card));
1986
+ border-radius: 50%;
1987
+ color: hsl(var(--primary-foreground));
1988
+ background: var(--avatar-accent);
1989
+ box-shadow: 0 2px 6px hsl(var(--shadow-color) / 0.18);
1990
+ }
1991
+ .agent-office__avatar-role-badge svg {
1992
+ width: 9px;
1993
+ height: 9px;
1994
+ }
1995
+ .agent-office__avatar-prop {
1996
+ position: absolute;
1997
+ z-index: 11;
1998
+ pointer-events: none;
1999
+ }
2000
+ .agent-office__avatar.is-leader {
2001
+ --avatar-shirt: hsl(var(--primary) / 0.86);
2002
+ --avatar-accent: hsl(var(--warning));
2003
+ }
2004
+ .agent-office__avatar.is-leader .agent-office__avatar-prop {
2005
+ top: -3px;
2006
+ left: 19px;
2007
+ width: 23px;
2008
+ height: 11px;
2009
+ background: hsl(var(--warning));
2010
+ clip-path: polygon(0 100%, 0 25%, 25% 65%, 50% 0, 75% 65%, 100% 25%, 100% 100%);
2011
+ filter: drop-shadow(0 2px 2px hsl(var(--shadow-color) / 0.16));
2012
+ }
2013
+ .agent-office__avatar.is-builder {
2014
+ --avatar-shirt: hsl(var(--success) / 0.7);
2015
+ --avatar-accent: hsl(var(--success));
2016
+ }
2017
+ .agent-office__avatar.is-builder .agent-office__avatar-body {
2018
+ border-radius: 16px 16px 7px 7px;
2019
+ box-shadow: inset 0 4px 0 hsl(var(--background) / 0.18);
2020
+ }
2021
+ .agent-office__avatar.is-builder .agent-office__avatar-prop {
2022
+ right: 0;
2023
+ bottom: 20px;
2024
+ width: 23px;
2025
+ height: 4px;
2026
+ border-radius: 4px;
2027
+ background: hsl(var(--warning));
2028
+ transform: rotate(-38deg);
2029
+ }
2030
+ .agent-office__avatar.is-researcher {
2031
+ --avatar-shirt: hsl(var(--info) / 0.68);
2032
+ --avatar-accent: hsl(var(--info));
2033
+ }
2034
+ .agent-office__avatar.is-researcher .agent-office__avatar-prop {
2035
+ top: 14px;
2036
+ right: 2px;
2037
+ width: 14px;
2038
+ height: 14px;
2039
+ border: 3px solid hsl(var(--info));
2040
+ border-radius: 50%;
2041
+ }
2042
+ .agent-office__avatar.is-researcher .agent-office__avatar-prop::after {
2043
+ position: absolute;
2044
+ right: -7px;
2045
+ bottom: -5px;
2046
+ width: 9px;
2047
+ height: 3px;
2048
+ content: "";
2049
+ border-radius: 3px;
2050
+ background: hsl(var(--info));
2051
+ transform: rotate(48deg);
2052
+ }
2053
+ .agent-office__avatar.is-reviewer {
2054
+ --avatar-shirt: hsl(var(--warning) / 0.64);
2055
+ --avatar-accent: hsl(var(--warning));
2056
+ }
2057
+ .agent-office__avatar.is-reviewer .agent-office__avatar-prop {
2058
+ top: 18px;
2059
+ left: 17px;
2060
+ width: 11px;
2061
+ height: 7px;
2062
+ border: 2px solid hsl(var(--foreground) / 0.76);
2063
+ border-radius: 5px;
2064
+ box-shadow: 12px 0 0 -2px hsl(var(--warning) / 0.35), 12px 0 0 0 hsl(var(--foreground) / 0.76);
2065
+ }
2066
+ .agent-office__avatar.is-planner {
2067
+ --avatar-shirt: hsl(var(--primary) / 0.56);
2068
+ --avatar-accent: hsl(var(--primary));
2069
+ }
2070
+ .agent-office__avatar.is-planner .agent-office__avatar-hair {
2071
+ border-radius: 4px 15px 10px 4px;
2072
+ transform: rotate(-5deg);
2073
+ }
2074
+ .agent-office__avatar.is-planner .agent-office__avatar-prop {
2075
+ right: -1px;
2076
+ bottom: 16px;
2077
+ width: 18px;
2078
+ height: 24px;
2079
+ border: 2px solid hsl(var(--primary));
2080
+ border-radius: 3px;
2081
+ background: hsl(var(--card));
2082
+ box-shadow: inset 0 5px 0 hsl(var(--primary) / 0.15);
2083
+ transform: rotate(8deg);
2084
+ }
2085
+ .agent-office__avatar.is-operator {
2086
+ --avatar-shirt: hsl(var(--muted-foreground) / 0.62);
2087
+ --avatar-accent: hsl(var(--muted-foreground));
2088
+ }
2089
+ .agent-office__avatar.is-active .agent-office__avatar-arm {
2090
+ animation: agent-office-type var(--avatar-type-speed) ease-in-out infinite alternate;
2091
+ animation-delay: var(--avatar-delay);
2092
+ }
2093
+ .agent-office__avatar.is-active .agent-office__avatar-head {
2094
+ animation: agent-office-nod 2.6s ease-in-out infinite;
2095
+ animation-delay: var(--avatar-delay);
2096
+ }
2097
+ .agent-office__avatar.is-idle .agent-office__avatar-head {
2098
+ animation: agent-office-yawn-head var(--avatar-cycle) ease-in-out infinite;
2099
+ animation-delay: var(--avatar-delay);
2100
+ }
2101
+ .agent-office__avatar.is-idle .agent-office__avatar-mouth {
2102
+ animation: agent-office-yawn-mouth var(--avatar-cycle) ease-in-out infinite;
2103
+ animation-delay: var(--avatar-delay);
2104
+ }
2105
+ .agent-office__avatar.is-idle .agent-office__avatar-arm {
2106
+ animation: agent-office-idle-stretch var(--avatar-cycle) ease-in-out infinite;
2107
+ animation-delay: var(--avatar-delay);
2108
+ }
2109
+ .agent-office__avatar.is-failed .agent-office__avatar-body {
2110
+ background: hsl(var(--destructive) / 0.72);
2111
+ }
2112
+ .agent-office__conveyor {
2113
+ position: absolute;
2114
+ z-index: 5;
2115
+ top: 24px;
2116
+ right: 16px;
2117
+ bottom: 22px;
2118
+ left: 168px;
2119
+ display: grid;
2120
+ min-width: 0;
2121
+ place-items: center;
2122
+ }
2123
+ .agent-office__belt {
2124
+ position: absolute;
2125
+ right: 0;
2126
+ bottom: 15px;
2127
+ left: 0;
2128
+ display: flex;
2129
+ height: 30px;
2130
+ align-items: center;
2131
+ justify-content: space-around;
2132
+ overflow: hidden;
2133
+ border: 1px solid hsl(var(--border));
2134
+ border-radius: 8px;
2135
+ background:
2136
+ repeating-linear-gradient(
2137
+ 115deg,
2138
+ hsl(var(--muted)) 0 18px,
2139
+ hsl(var(--surface-3) / 0.62) 18px 35px);
2140
+ box-shadow: inset 0 4px 8px hsl(var(--shadow-color) / 0.06);
2141
+ }
2142
+ .agent-office__belt span {
2143
+ width: 18px;
2144
+ height: 18px;
2145
+ flex: 0 0 auto;
2146
+ border: 3px solid hsl(var(--muted-foreground) / 0.3);
2147
+ border-radius: 50%;
2148
+ background: hsl(var(--card));
2149
+ }
2150
+ .agent-office__conveyor.is-moving .agent-office__belt {
2151
+ animation: agent-office-belt 1.8s linear infinite;
2152
+ }
2153
+ .agent-office__current-action {
2154
+ position: relative;
2155
+ z-index: 3;
2156
+ width: min(340px, 90%);
2157
+ margin-bottom: 25px;
2158
+ }
2159
+ .agent-office__current-action > .agent-office__parcel {
2160
+ animation: agent-office-arrive 520ms cubic-bezier(0.2, 0.8, 0.2, 1);
2161
+ }
2162
+ .agent-office__parcel {
2163
+ position: relative;
2164
+ display: flex;
2165
+ width: 100%;
2166
+ min-width: 0;
2167
+ align-items: center;
2168
+ gap: 10px;
2169
+ padding: 10px;
2170
+ border: 1px solid hsl(var(--border));
2171
+ border-radius: 10px;
2172
+ color: hsl(var(--foreground));
2173
+ text-align: left;
2174
+ background: hsl(var(--card));
2175
+ box-shadow: 0 9px 22px hsl(var(--shadow-color) / 0.12);
2176
+ cursor: pointer;
2177
+ transition:
2178
+ transform 150ms ease,
2179
+ border-color 150ms ease,
2180
+ box-shadow 150ms ease;
2181
+ }
2182
+ button.agent-office__parcel:hover {
2183
+ transform: translateY(-2px);
2184
+ border-color: hsl(var(--primary) / 0.45);
2185
+ box-shadow: 0 12px 26px hsl(var(--shadow-color) / 0.16);
2186
+ }
2187
+ .agent-office__parcel.is-running {
2188
+ border-color: hsl(var(--primary) / 0.52);
2189
+ box-shadow: 0 10px 26px hsl(var(--primary) / 0.14);
2190
+ }
2191
+ .agent-office__parcel.is-failed {
2192
+ border-color: hsl(var(--destructive) / 0.48);
2193
+ }
2194
+ .agent-office__parcel.is-compact {
2195
+ min-height: 38px;
2196
+ gap: 7px;
2197
+ padding: 6px 7px;
2198
+ border-radius: 7px;
2199
+ box-shadow: none;
2200
+ }
2201
+ .agent-office__parcel--empty {
2202
+ cursor: default;
2203
+ border-style: dashed;
2204
+ color: hsl(var(--muted-foreground));
2205
+ background: hsl(var(--card) / 0.65);
2206
+ box-shadow: none;
2207
+ }
2208
+ .agent-office__mail-parcel {
2209
+ position: relative;
2210
+ display: flex;
2211
+ width: 100%;
2212
+ min-width: 0;
2213
+ align-items: center;
2214
+ gap: 8px;
2215
+ padding: 7px 8px;
2216
+ border: 1px solid hsl(var(--info) / 0.34);
2217
+ border-radius: 8px;
2218
+ color: hsl(var(--foreground));
2219
+ text-align: left;
2220
+ background: hsl(var(--card));
2221
+ box-shadow: 0 8px 22px hsl(var(--info) / 0.12);
2222
+ cursor: pointer;
2223
+ }
2224
+ .agent-office__mail-parcel:hover {
2225
+ border-color: hsl(var(--info) / 0.58);
2226
+ }
2227
+ .agent-office__mail-parcel.is-outgoing {
2228
+ border-color: hsl(var(--success) / 0.36);
2229
+ }
2230
+ .agent-office__mail-parcel.is-unread::after {
2231
+ position: absolute;
2232
+ top: 5px;
2233
+ right: 5px;
2234
+ width: 5px;
2235
+ height: 5px;
2236
+ content: "";
2237
+ border-radius: 50%;
2238
+ background: hsl(var(--info));
2239
+ box-shadow: 0 0 0 3px hsl(var(--info) / 0.12);
2240
+ }
2241
+ .agent-office__mail-parcel > svg {
2242
+ width: 12px;
2243
+ height: 12px;
2244
+ flex: 0 0 auto;
2245
+ color: hsl(var(--info));
2246
+ }
2247
+ .agent-office__mail-icon {
2248
+ display: grid;
2249
+ width: 27px;
2250
+ height: 27px;
2251
+ flex: 0 0 auto;
2252
+ place-items: center;
2253
+ border-radius: 6px;
2254
+ color: hsl(var(--info));
2255
+ background: hsl(var(--info) / 0.1);
2256
+ }
2257
+ .agent-office__mail-icon svg {
2258
+ width: 13px;
2259
+ height: 13px;
2260
+ }
2261
+ .agent-office__mail-parcel.is-outgoing .agent-office__mail-icon {
2262
+ color: hsl(var(--success));
2263
+ background: hsl(var(--success) / 0.1);
2264
+ }
2265
+ .agent-office__mail-flyby {
2266
+ position: absolute;
2267
+ z-index: 12;
2268
+ top: 8px;
2269
+ right: 9px;
2270
+ width: min(190px, 42%);
2271
+ }
2272
+ .agent-office__mail-flyby.is-incoming {
2273
+ animation: agent-office-mail-in 650ms cubic-bezier(0.16, 0.82, 0.28, 1);
2274
+ }
2275
+ .agent-office__mail-flyby.is-outgoing {
2276
+ animation: agent-office-mail-out 650ms cubic-bezier(0.16, 0.82, 0.28, 1);
2277
+ }
2278
+ .agent-office__tool-glyph {
2279
+ position: relative;
2280
+ display: grid;
2281
+ width: 36px;
2282
+ height: 36px;
2283
+ flex: 0 0 auto;
2284
+ place-items: center;
2285
+ border: 1px solid hsl(var(--border));
2286
+ border-radius: 9px;
2287
+ color: hsl(var(--muted-foreground));
2288
+ background: hsl(var(--muted));
2289
+ }
2290
+ .agent-office__tool-glyph > svg {
2291
+ position: relative;
2292
+ z-index: 2;
2293
+ width: 17px;
2294
+ height: 17px;
2295
+ }
2296
+ .agent-office__tool-glyph.is-read {
2297
+ color: hsl(var(--info));
2298
+ background: hsl(var(--info) / 0.1);
2299
+ border-color: hsl(var(--info) / 0.25);
2300
+ }
2301
+ .agent-office__tool-glyph.is-read > svg:not(.agent-office__file-underlay) {
2302
+ width: 13px;
2303
+ height: 13px;
2304
+ transform: translate(5px, 5px);
2305
+ }
2306
+ .agent-office__tool-glyph > .agent-office__file-underlay {
2307
+ position: absolute;
2308
+ z-index: 1;
2309
+ width: 18px;
2310
+ height: 18px;
2311
+ transform: translate(-3px, -3px);
2312
+ opacity: 0.72;
2313
+ }
2314
+ .agent-office__tool-glyph.is-write,
2315
+ .agent-office__tool-glyph.is-edit {
2316
+ color: hsl(var(--warning));
2317
+ background: hsl(var(--warning) / 0.1);
2318
+ border-color: hsl(var(--warning) / 0.25);
2319
+ }
2320
+ .agent-office__tool-glyph.is-terminal {
2321
+ color: hsl(var(--success));
2322
+ background: hsl(var(--success) / 0.1);
2323
+ border-color: hsl(var(--success) / 0.25);
2324
+ }
2325
+ .agent-office__tool-glyph.is-web {
2326
+ color: hsl(var(--info));
2327
+ background: hsl(var(--info) / 0.1);
2328
+ border-color: hsl(var(--info) / 0.25);
2329
+ }
2330
+ .agent-office__tool-glyph.is-search,
2331
+ .agent-office__tool-glyph.is-memory {
2332
+ color: hsl(var(--primary));
2333
+ background: hsl(var(--primary) / 0.09);
2334
+ border-color: hsl(var(--primary) / 0.24);
2335
+ }
2336
+ .agent-office__tool-glyph.is-active::after {
2337
+ position: absolute;
2338
+ inset: -4px;
2339
+ z-index: 0;
2340
+ content: "";
2341
+ border: 1px solid currentColor;
2342
+ border-radius: 11px;
2343
+ opacity: 0.25;
2344
+ animation: agent-office-ring 1.3s ease-out infinite;
2345
+ }
2346
+ .agent-office__parcel.is-compact .agent-office__tool-glyph {
2347
+ width: 27px;
2348
+ height: 27px;
2349
+ border-radius: 6px;
2350
+ }
2351
+ .agent-office__parcel.is-compact .agent-office__tool-glyph > svg {
2352
+ width: 13px;
2353
+ height: 13px;
2354
+ }
2355
+ .agent-office__parcel-copy {
2356
+ display: flex;
2357
+ min-width: 0;
2358
+ flex: 1 1 auto;
2359
+ flex-direction: column;
2360
+ gap: 2px;
2361
+ }
2362
+ .agent-office__parcel-topline {
2363
+ display: flex;
2364
+ min-width: 0;
2365
+ align-items: center;
2366
+ gap: 6px;
2367
+ }
2368
+ .agent-office__parcel-copy strong {
2369
+ overflow: hidden;
2370
+ font: 500 10px / 1.2 var(--font-mono);
2371
+ text-overflow: ellipsis;
2372
+ white-space: nowrap;
2373
+ }
2374
+ .agent-office__parcel-target {
2375
+ overflow: hidden;
2376
+ color: hsl(var(--muted-foreground));
2377
+ font: 400 9px / 1.25 var(--font-mono);
2378
+ text-overflow: ellipsis;
2379
+ white-space: nowrap;
2380
+ }
2381
+ .agent-office__parcel-summary {
2382
+ overflow: hidden;
2383
+ color: hsl(var(--foreground) / 0.82);
2384
+ font-size: 10px;
2385
+ text-overflow: ellipsis;
2386
+ white-space: nowrap;
2387
+ }
2388
+ .agent-office__parcel.is-compact .agent-office__parcel-target,
2389
+ .agent-office__parcel.is-compact .agent-office__line-chip {
2390
+ display: none;
2391
+ }
2392
+ .agent-office__parcel.is-compact .agent-office__parcel-summary {
2393
+ color: hsl(var(--muted-foreground));
2394
+ font-size: 9px;
2395
+ }
2396
+ .agent-office__line-chip {
2397
+ flex: 0 0 auto;
2398
+ padding: 2px 4px;
2399
+ border-radius: 4px;
2400
+ color: hsl(var(--info));
2401
+ background: hsl(var(--info) / 0.09);
2402
+ font: 500 8px / 1 var(--font-mono);
2403
+ }
2404
+ .agent-office__parcel-state {
2405
+ display: grid;
2406
+ width: 18px;
2407
+ height: 18px;
2408
+ flex: 0 0 auto;
2409
+ place-items: center;
2410
+ color: hsl(var(--success));
2411
+ }
2412
+ .agent-office__parcel-state > svg {
2413
+ width: 12px;
2414
+ height: 12px;
2415
+ }
2416
+ .agent-office__parcel-state .agent-office__pulse-dot {
2417
+ color: hsl(var(--primary));
2418
+ background: hsl(var(--primary));
2419
+ box-shadow: 0 0 0 4px hsl(var(--primary) / 0.12);
2420
+ }
2421
+ .agent-office__parcel.is-failed .agent-office__parcel-state {
2422
+ color: hsl(var(--destructive));
2423
+ }
2424
+ .agent-office__history {
2425
+ min-width: 0;
2426
+ padding: 11px 12px;
2427
+ border-left: 1px solid var(--office-line);
2428
+ background: hsl(var(--background) / 0.24);
2429
+ }
2430
+ .agent-office__history-heading {
2431
+ display: flex;
2432
+ align-items: center;
2433
+ justify-content: space-between;
2434
+ margin-bottom: 7px;
2435
+ color: hsl(var(--muted-foreground));
2436
+ font: 500 8px / 1 var(--font-mono);
2437
+ letter-spacing: 0.1em;
2438
+ }
2439
+ .agent-office__history-heading span:last-child {
2440
+ letter-spacing: 0;
2441
+ }
2442
+ .agent-office__history-list {
2443
+ display: flex;
2444
+ max-height: 146px;
2445
+ flex-direction: column;
2446
+ gap: 5px;
2447
+ overflow-y: auto;
2448
+ padding-right: 3px;
2449
+ scrollbar-color: hsl(var(--border)) transparent;
2450
+ scrollbar-width: thin;
2451
+ }
2452
+ .agent-office__history-empty {
2453
+ display: grid;
2454
+ min-height: 88px;
2455
+ place-items: center;
2456
+ color: hsl(var(--muted-foreground));
2457
+ font-size: 10px;
2458
+ font-style: italic;
2459
+ }
2460
+ .agent-office__footer {
2461
+ position: relative;
2462
+ z-index: 4;
2463
+ display: flex;
2464
+ min-height: 31px;
2465
+ align-items: center;
2466
+ gap: 18px;
2467
+ padding: 5px 15px;
2468
+ border-top: 1px solid var(--office-line);
2469
+ color: hsl(var(--muted-foreground));
2470
+ background: hsl(var(--card) / 0.9);
2471
+ font: 400 9px / 1 var(--font-mono);
2472
+ }
2473
+ .agent-office__footer > span {
2474
+ display: flex;
2475
+ align-items: center;
2476
+ gap: 6px;
2477
+ }
2478
+ .agent-office__footer svg {
2479
+ width: 12px;
2480
+ height: 12px;
2481
+ }
2482
+ .agent-office__empty-state {
2483
+ display: grid;
2484
+ min-height: 360px;
2485
+ place-content: center;
2486
+ justify-items: center;
2487
+ text-align: center;
2488
+ }
2489
+ .agent-office__empty-state > span {
2490
+ display: grid;
2491
+ width: 64px;
2492
+ height: 64px;
2493
+ margin-bottom: 15px;
2494
+ place-items: center;
2495
+ border: 1px dashed hsl(var(--border));
2496
+ border-radius: 18px;
2497
+ color: hsl(var(--primary));
2498
+ background: hsl(var(--primary) / 0.06);
2499
+ }
2500
+ .agent-office__empty-state h2 {
2501
+ margin: 0 0 5px;
2502
+ font: 500 16px / 1.3 var(--font-display);
2503
+ }
2504
+ .agent-office__empty-state p {
2505
+ margin: 0;
2506
+ color: hsl(var(--muted-foreground));
2507
+ font-size: 11px;
2508
+ }
2509
+ .agent-office__detail-backdrop {
2510
+ position: absolute;
2511
+ inset: 0;
2512
+ z-index: 39;
2513
+ border: 0;
2514
+ background: hsl(var(--background) / 0.44);
2515
+ backdrop-filter: blur(2px);
2516
+ cursor: default;
2517
+ }
2518
+ .agent-office__detail {
2519
+ position: absolute;
2520
+ z-index: 40;
2521
+ top: 0;
2522
+ right: 0;
2523
+ bottom: 0;
2524
+ width: min(410px, 94%);
2525
+ overflow-y: auto;
2526
+ border-left: 1px solid hsl(var(--border));
2527
+ color: hsl(var(--foreground));
2528
+ background: hsl(var(--background));
2529
+ box-shadow: -20px 0 55px hsl(var(--shadow-color) / 0.24);
2530
+ animation: agent-office-drawer 220ms ease-out;
2531
+ }
2532
+ .agent-office__detail-header {
2533
+ position: sticky;
2534
+ z-index: 2;
2535
+ top: 0;
2536
+ display: flex;
2537
+ align-items: center;
2538
+ gap: 10px;
2539
+ padding: 14px;
2540
+ border-bottom: 1px solid hsl(var(--border));
2541
+ background: hsl(var(--card) / 0.95);
2542
+ backdrop-filter: blur(18px);
2543
+ }
2544
+ .agent-office__detail-header h2 {
2545
+ margin: 3px 0 0;
2546
+ font: 500 15px / 1.2 var(--font-display);
2547
+ }
2548
+ .agent-office__detail-header > button {
2549
+ display: grid;
2550
+ width: 30px;
2551
+ height: 30px;
2552
+ margin-left: auto;
2553
+ place-items: center;
2554
+ border: 1px solid hsl(var(--border));
2555
+ border-radius: 7px;
2556
+ color: hsl(var(--muted-foreground));
2557
+ background: hsl(var(--background));
2558
+ cursor: pointer;
2559
+ }
2560
+ .agent-office__detail-header > button:hover {
2561
+ color: hsl(var(--foreground));
2562
+ background: hsl(var(--accent));
2563
+ }
2564
+ .agent-office__detail-header > button svg {
2565
+ width: 14px;
2566
+ height: 14px;
2567
+ }
2568
+ .agent-office__detail-icon {
2569
+ display: grid;
2570
+ width: 38px;
2571
+ height: 38px;
2572
+ place-items: center;
2573
+ border-radius: 10px;
2574
+ color: hsl(var(--primary));
2575
+ background: hsl(var(--primary) / 0.1);
2576
+ }
2577
+ .agent-office__detail-icon.is-terminal {
2578
+ color: hsl(var(--success));
2579
+ background: hsl(var(--success) / 0.1);
2580
+ }
2581
+ .agent-office__detail-icon.is-read,
2582
+ .agent-office__detail-icon.is-web {
2583
+ color: hsl(var(--info));
2584
+ background: hsl(var(--info) / 0.1);
2585
+ }
2586
+ .agent-office__detail-icon.is-edit,
2587
+ .agent-office__detail-icon.is-write {
2588
+ color: hsl(var(--warning));
2589
+ background: hsl(var(--warning) / 0.1);
2590
+ }
2591
+ .agent-office__detail-icon.is-mail {
2592
+ color: hsl(var(--info));
2593
+ background: hsl(var(--info) / 0.1);
2594
+ }
2595
+ .agent-office__detail-icon.is-task,
2596
+ .agent-office__detail-icon.is-briefing {
2597
+ color: hsl(var(--primary));
2598
+ background: hsl(var(--primary) / 0.1);
2599
+ }
2600
+ .agent-office__detail-icon svg {
2601
+ width: 18px;
2602
+ height: 18px;
2603
+ }
2604
+ .agent-office__detail-status {
2605
+ display: grid;
2606
+ grid-template-columns: auto minmax(0, 1fr) auto;
2607
+ align-items: center;
2608
+ gap: 9px;
2609
+ margin: 14px;
2610
+ padding: 11px;
2611
+ border: 1px solid hsl(var(--border));
2612
+ border-radius: 9px;
2613
+ background: hsl(var(--card));
2614
+ }
2615
+ .agent-office__detail-status strong {
2616
+ overflow: hidden;
2617
+ font-size: 11px;
2618
+ text-overflow: ellipsis;
2619
+ white-space: nowrap;
2620
+ }
2621
+ .agent-office__detail-status > span:last-child {
2622
+ padding: 3px 5px;
2623
+ border-radius: 4px;
2624
+ color: hsl(var(--muted-foreground));
2625
+ background: hsl(var(--muted));
2626
+ font: 500 8px / 1 var(--font-mono);
2627
+ text-transform: uppercase;
2628
+ }
2629
+ .agent-office__detail-section {
2630
+ padding: 12px 14px;
2631
+ border-top: 1px solid hsl(var(--border) / 0.72);
2632
+ }
2633
+ .agent-office__detail-section h3 {
2634
+ margin: 0 0 9px;
2635
+ color: hsl(var(--muted-foreground));
2636
+ font: 500 9px / 1 var(--font-mono);
2637
+ letter-spacing: 0.11em;
2638
+ text-transform: uppercase;
2639
+ }
2640
+ .agent-office__detail-row {
2641
+ display: flex;
2642
+ align-items: baseline;
2643
+ justify-content: space-between;
2644
+ gap: 14px;
2645
+ padding: 4px 0;
2646
+ font-size: 10px;
2647
+ }
2648
+ .agent-office__detail-row > span {
2649
+ color: hsl(var(--muted-foreground));
2650
+ }
2651
+ .agent-office__detail-row > strong {
2652
+ min-width: 0;
2653
+ overflow: hidden;
2654
+ font: 500 10px / 1.3 var(--font-mono);
2655
+ text-align: right;
2656
+ text-overflow: ellipsis;
2657
+ white-space: nowrap;
2658
+ }
2659
+ .agent-office__target-code {
2660
+ display: block;
2661
+ overflow-wrap: anywhere;
2662
+ padding: 9px;
2663
+ border-radius: 7px;
2664
+ color: hsl(var(--foreground));
2665
+ background: hsl(var(--muted) / 0.7);
2666
+ font: 400 10px / 1.45 var(--font-mono);
2667
+ }
2668
+ .agent-office__file-target {
2669
+ display: grid;
2670
+ grid-template-columns: auto minmax(0, 1fr) auto;
2671
+ align-items: center;
2672
+ gap: 7px;
2673
+ margin-top: 6px;
2674
+ padding: 7px;
2675
+ border: 1px solid hsl(var(--border) / 0.68);
2676
+ border-radius: 6px;
2677
+ }
2678
+ .agent-office__file-target svg {
2679
+ width: 13px;
2680
+ height: 13px;
2681
+ color: hsl(var(--info));
2682
+ }
2683
+ .agent-office__file-target span {
2684
+ overflow: hidden;
2685
+ font: 400 9px / 1.2 var(--font-mono);
2686
+ text-overflow: ellipsis;
2687
+ white-space: nowrap;
2688
+ }
2689
+ .agent-office__file-target strong {
2690
+ color: hsl(var(--info));
2691
+ font: 500 8px / 1 var(--font-mono);
2692
+ }
2693
+ .agent-office__metric-grid {
2694
+ display: grid;
2695
+ grid-template-columns: repeat(3, minmax(0, 1fr));
2696
+ gap: 6px;
2697
+ }
2698
+ .agent-office__metric-grid > div {
2699
+ display: flex;
2700
+ min-width: 0;
2701
+ flex-direction: column;
2702
+ padding: 9px;
2703
+ border-radius: 7px;
2704
+ background: hsl(var(--muted) / 0.62);
2705
+ }
2706
+ .agent-office__metric-grid strong {
2707
+ overflow: hidden;
2708
+ font: 500 12px / 1.2 var(--font-mono);
2709
+ text-overflow: ellipsis;
2710
+ }
2711
+ .agent-office__metric-grid span {
2712
+ margin-top: 3px;
2713
+ color: hsl(var(--muted-foreground));
2714
+ font-size: 8px;
2715
+ }
2716
+ .agent-office__detail-section pre {
2717
+ max-height: 260px;
2718
+ overflow: auto;
2719
+ margin: 0;
2720
+ padding: 10px;
2721
+ border: 1px solid hsl(var(--border));
2722
+ border-radius: 7px;
2723
+ color: hsl(var(--foreground) / 0.9);
2724
+ background: hsl(var(--popover));
2725
+ font: 400 9px / 1.55 var(--font-mono);
2726
+ white-space: pre-wrap;
2727
+ overflow-wrap: anywhere;
2728
+ }
2729
+ .agent-office__mail-body {
2730
+ padding: 10px;
2731
+ border: 1px solid hsl(var(--border));
2732
+ border-radius: 8px;
2733
+ color: hsl(var(--foreground) / 0.88);
2734
+ background: hsl(var(--muted) / 0.45);
2735
+ font: 400 11px / 1.55 var(--font-sans);
2736
+ white-space: pre-wrap;
2737
+ }
2738
+ .agent-office__task-body {
2739
+ padding: 10px;
2740
+ border: 1px solid hsl(var(--border));
2741
+ border-radius: 8px;
2742
+ color: hsl(var(--foreground) / 0.9);
2743
+ background: hsl(var(--muted) / 0.42);
2744
+ font: 400 11px / 1.55 var(--font-sans);
2745
+ white-space: pre-wrap;
2746
+ }
2747
+ .agent-office__todo-detail-list {
2748
+ display: flex;
2749
+ flex-direction: column;
2750
+ gap: 6px;
2751
+ }
2752
+ .agent-office__todo-detail {
2753
+ display: flex;
2754
+ align-items: flex-start;
2755
+ gap: 8px;
2756
+ padding: 7px 8px;
2757
+ border: 1px solid hsl(var(--border));
2758
+ border-radius: 8px;
2759
+ background: hsl(var(--muted) / 0.3);
2760
+ }
2761
+ .agent-office__todo-detail > span {
2762
+ width: 7px;
2763
+ height: 7px;
2764
+ flex: 0 0 auto;
2765
+ margin-top: 3px;
2766
+ border: 1px solid hsl(var(--muted-foreground));
2767
+ border-radius: 50%;
2768
+ }
2769
+ .agent-office__todo-detail.is-in_progress > span {
2770
+ border-color: hsl(var(--success));
2771
+ background: hsl(var(--success));
2772
+ box-shadow: 0 0 0 3px hsl(var(--success) / 0.1);
2773
+ }
2774
+ .agent-office__todo-detail.is-completed {
2775
+ opacity: 0.68;
2776
+ }
2777
+ .agent-office__todo-detail.is-completed > span {
2778
+ border-color: hsl(var(--success));
2779
+ background: hsl(var(--success));
2780
+ }
2781
+ .agent-office__todo-detail > div {
2782
+ display: flex;
2783
+ min-width: 0;
2784
+ flex-direction: column;
2785
+ gap: 3px;
2786
+ }
2787
+ .agent-office__todo-detail strong {
2788
+ font: 500 10px / 1.35 var(--font-sans);
2789
+ }
2790
+ .agent-office__todo-detail small {
2791
+ color: hsl(var(--muted-foreground));
2792
+ font: 400 7px / 1 var(--font-mono);
2793
+ text-transform: uppercase;
2794
+ }
2795
+ @keyframes agent-office-arrive {
2796
+ from {
2797
+ opacity: 0.4;
2798
+ transform: translateX(42px) rotate(1deg);
2799
+ }
2800
+ to {
2801
+ opacity: 1;
2802
+ transform: translateX(0) rotate(0);
2803
+ }
2804
+ }
2805
+ @keyframes agent-office-mail-in {
2806
+ from {
2807
+ opacity: 0;
2808
+ transform: translateX(72px) rotate(4deg);
2809
+ }
2810
+ to {
2811
+ opacity: 1;
2812
+ transform: translateX(0) rotate(0);
2813
+ }
2814
+ }
2815
+ @keyframes agent-office-mail-out {
2816
+ from {
2817
+ opacity: 0;
2818
+ transform: translateX(-42px) rotate(-3deg);
2819
+ }
2820
+ to {
2821
+ opacity: 1;
2822
+ transform: translateX(0) rotate(0);
2823
+ }
2824
+ }
2825
+ @keyframes agent-office-belt {
2826
+ to {
2827
+ background-position: 70px 0;
2828
+ }
2829
+ }
2830
+ @keyframes agent-office-brief-arrive {
2831
+ from {
2832
+ left: -30%;
2833
+ }
2834
+ to {
2835
+ left: 118%;
2836
+ }
2837
+ }
2838
+ @keyframes agent-office-sync-line {
2839
+ to {
2840
+ background-position: -200% 0;
2841
+ }
2842
+ }
2843
+ @keyframes agent-office-telemetry-wait {
2844
+ 0%, 100% {
2845
+ opacity: 0.42;
2846
+ }
2847
+ 50% {
2848
+ opacity: 1;
2849
+ }
2850
+ }
2851
+ @keyframes agent-office-task-assigned {
2852
+ from {
2853
+ opacity: 0;
2854
+ transform: translateX(-12px) rotate(-1deg);
2855
+ }
2856
+ to {
2857
+ opacity: 1;
2858
+ transform: translateX(0) rotate(0);
2859
+ }
2860
+ }
2861
+ @keyframes agent-office-window-glow {
2862
+ from {
2863
+ opacity: 0.58;
2864
+ }
2865
+ to {
2866
+ opacity: 1;
2867
+ box-shadow: inset 0 0 8px hsl(var(--info) / 0.14);
2868
+ }
2869
+ }
2870
+ @keyframes agent-office-plant-sway {
2871
+ from {
2872
+ transform: rotate(calc(var(--plant-angle) - 3deg)) scale(var(--plant-scale));
2873
+ }
2874
+ to {
2875
+ transform: rotate(calc(var(--plant-angle) + 3deg)) scale(var(--plant-scale));
2876
+ }
2877
+ }
2878
+ @keyframes agent-office-monitor-scan {
2879
+ from {
2880
+ background-position: 0 -110%;
2881
+ }
2882
+ to {
2883
+ background-position: 0 110%;
2884
+ }
2885
+ }
2886
+ @keyframes agent-office-mug-steam {
2887
+ 0%, 18% {
2888
+ opacity: 0;
2889
+ transform: translateY(3px) translateX(0);
2890
+ }
2891
+ 42% {
2892
+ opacity: 0.55;
2893
+ }
2894
+ 78%, 100% {
2895
+ opacity: 0;
2896
+ transform: translateY(-6px) translateX(2px);
2897
+ }
2898
+ }
2899
+ @keyframes agent-office-blink {
2900
+ 0%, 44%, 48%, 100% {
2901
+ transform: scaleY(1);
2902
+ }
2903
+ 46% {
2904
+ transform: scaleY(0.12);
2905
+ }
2906
+ }
2907
+ @keyframes agent-office-terminal-bars {
2908
+ from {
2909
+ transform: scaleY(0.45);
2910
+ opacity: 0.42;
2911
+ }
2912
+ to {
2913
+ transform: scaleY(1.15);
2914
+ opacity: 1;
2915
+ }
2916
+ }
2917
+ @keyframes agent-office-lane-arrive {
2918
+ from {
2919
+ transform: translateY(8px) scale(0.992);
2920
+ opacity: 0;
2921
+ }
2922
+ to {
2923
+ transform: translateY(0) scale(1);
2924
+ opacity: 1;
2925
+ }
2926
+ }
2927
+ @keyframes agent-office-memory-pulse {
2928
+ 0%, 100% {
2929
+ transform: scale(0.72) rotate(0);
2930
+ opacity: 0.35;
2931
+ }
2932
+ 50% {
2933
+ transform: scale(1.08) rotate(8deg);
2934
+ opacity: 1;
2935
+ }
2936
+ }
2937
+ @keyframes agent-office-web-signal {
2938
+ 0% {
2939
+ transform: rotate(-38deg) scale(0.72);
2940
+ opacity: 0;
2941
+ }
2942
+ 45% {
2943
+ opacity: 0.82;
2944
+ }
2945
+ 100% {
2946
+ transform: rotate(-38deg) scale(1.08);
2947
+ opacity: 0;
2948
+ }
2949
+ }
2950
+ @keyframes agent-office-inspect {
2951
+ from {
2952
+ transform: translate(0, 0) rotate(-4deg);
2953
+ }
2954
+ to {
2955
+ transform: translate(13px, 3px) rotate(5deg);
2956
+ }
2957
+ }
2958
+ @keyframes agent-office-inspect-handle {
2959
+ from {
2960
+ transform: translate(0, 0) rotate(42deg);
2961
+ }
2962
+ to {
2963
+ transform: translate(13px, 3px) rotate(51deg);
2964
+ }
2965
+ }
2966
+ @keyframes agent-office-write-stroke {
2967
+ from {
2968
+ transform: translateX(-4px) rotate(-27deg);
2969
+ }
2970
+ to {
2971
+ transform: translateX(5px) rotate(-18deg);
2972
+ }
2973
+ }
2974
+ @keyframes agent-office-charm-blink {
2975
+ 0%, 45%, 49%, 100% {
2976
+ transform: scaleY(1);
2977
+ }
2978
+ 47% {
2979
+ transform: scaleY(0.12);
2980
+ }
2981
+ }
2982
+ @keyframes agent-office-charm-bob {
2983
+ 0%, 76%, 100% {
2984
+ transform: translateY(0) rotate(0);
2985
+ }
2986
+ 84%, 91% {
2987
+ transform: translateY(-2px) rotate(-5deg);
2988
+ }
2989
+ }
2990
+ @keyframes agent-office-yawn-head {
2991
+ 0%, 72%, 100% {
2992
+ transform: translateY(0) rotate(0);
2993
+ }
2994
+ 78%, 90% {
2995
+ transform: translateY(-2px) rotate(-7deg);
2996
+ }
2997
+ }
2998
+ @keyframes agent-office-yawn-mouth {
2999
+ 0%, 72%, 100% {
3000
+ height: 2px;
3001
+ transform: scale(1);
3002
+ }
3003
+ 80%, 88% {
3004
+ height: 7px;
3005
+ transform: scale(1.15);
3006
+ }
3007
+ }
3008
+ @keyframes agent-office-idle-stretch {
3009
+ 0%, 72%, 100% {
3010
+ transform: rotate(-11deg);
3011
+ }
3012
+ 80%, 90% {
3013
+ transform: translate(2px, -7px) rotate(-34deg);
3014
+ }
3015
+ }
3016
+ @keyframes agent-office-type {
3017
+ to {
3018
+ transform: rotate(-4deg) translateY(2px);
3019
+ }
3020
+ }
3021
+ @keyframes agent-office-nod {
3022
+ 0%, 70%, 100% {
3023
+ transform: rotate(0);
3024
+ }
3025
+ 82% {
3026
+ transform: rotate(3deg);
3027
+ }
3028
+ }
3029
+ @keyframes agent-office-ring {
3030
+ from {
3031
+ transform: scale(0.82);
3032
+ opacity: 0.42;
3033
+ }
3034
+ to {
3035
+ transform: scale(1.18);
3036
+ opacity: 0;
3037
+ }
3038
+ }
3039
+ @keyframes agent-office-pulse {
3040
+ 0%, 100% {
3041
+ opacity: 0.55;
3042
+ transform: scale(0.8);
3043
+ }
3044
+ 50% {
3045
+ opacity: 1;
3046
+ transform: scale(1);
3047
+ }
3048
+ }
3049
+ @keyframes agent-office-drawer {
3050
+ from {
3051
+ transform: translateX(35px);
3052
+ opacity: 0.5;
3053
+ }
3054
+ to {
3055
+ transform: translateX(0);
3056
+ opacity: 1;
3057
+ }
3058
+ }
3059
+ @media (max-width: 1040px) {
3060
+ .agent-office__briefing {
3061
+ grid-template-columns: 1fr;
3062
+ }
3063
+ .agent-office__client-header {
3064
+ flex-wrap: wrap;
3065
+ }
3066
+ .agent-office__client-stats {
3067
+ width: 100%;
3068
+ justify-content: flex-start;
3069
+ }
3070
+ .agent-office__column-headings,
3071
+ .agent-office__lane {
3072
+ grid-template-columns: 150px minmax(390px, 1fr) 230px;
3073
+ }
3074
+ .agent-office__summary > div {
3075
+ min-width: 72px;
3076
+ }
3077
+ .agent-office__summary span {
3078
+ display: none;
3079
+ }
3080
+ .agent-office__title {
3081
+ min-width: 185px;
3082
+ }
3083
+ .agent-office__title h1 {
3084
+ max-width: 200px;
3085
+ }
3086
+ }
3087
+ @media (max-width: 820px) {
3088
+ .agent-office__header {
3089
+ flex-wrap: wrap;
3090
+ gap: 8px;
3091
+ }
3092
+ .agent-office__summary {
3093
+ order: 3;
3094
+ width: 100%;
3095
+ justify-content: flex-start;
3096
+ }
3097
+ .agent-office__summary > div {
3098
+ padding-block: 3px;
3099
+ }
3100
+ .agent-office__live-pill {
3101
+ margin-left: auto;
3102
+ }
3103
+ .agent-office__column-headings {
3104
+ display: none;
3105
+ }
3106
+ .agent-office__lane {
3107
+ grid-template-columns: 132px minmax(380px, 1fr);
3108
+ }
3109
+ .agent-office__history {
3110
+ display: none;
3111
+ }
3112
+ .agent-office__floor {
3113
+ overflow-x: auto;
3114
+ }
3115
+ }
3116
+ @media (prefers-reduced-motion: reduce) {
3117
+ .agent-office *,
3118
+ .agent-office *::before,
3119
+ .agent-office *::after {
3120
+ scroll-behavior: auto;
3121
+ animation-duration: 0.001ms;
3122
+ animation-iteration-count: 1;
3123
+ transition-duration: 0.001ms;
245
3124
  }
246
3125
  }
247
3126