@mcp-b/react-components 0.40.0 → 0.42.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 (228) hide show
  1. package/dist/{AgentChat-CVO7xyLC.d.ts → AgentChat-DVr2giwD.d.ts} +1 -1
  2. package/dist/{AgentToolRunsContext-BCVqCtJ1.d.ts → AgentToolRunsContext-daY67hFM.d.ts} +12 -0
  3. package/dist/{CodeBlock-CWk1FVtm.js → CodeBlock-BjELA-_s.js} +1 -1
  4. package/dist/{FileTree-xqHYBw4g.js → FileTree-DMYRdT6R.js} +1 -1
  5. package/dist/McpConnectorForm-MRm1r59e.d.ts +39 -0
  6. package/dist/{Message-DBsHHhcM.d.ts → Message-D_vCVEGB.d.ts} +20 -1
  7. package/dist/{ThinkChatActivity-D6-_5Phw.d.ts → ThinkChatActivity-CsDql-ER.d.ts} +4 -1
  8. package/dist/{ThinkExecutionRun-lYYgyeE1.d.ts → ThinkExecutionRun-k8bpyXqt.d.ts} +3 -3
  9. package/dist/{WorkspaceFileView-Lab3om3F.js → WorkspaceFileView-DwdXiKku.js} +17 -22
  10. package/dist/{WorkspaceMessageResponse-Cy28WGSz.d.ts → WorkspaceMessageResponse-D66ty4FO.d.ts} +1 -1
  11. package/dist/components/agents-sdk/AgentActivity.js +4 -3
  12. package/dist/components/agents-sdk/AgentChat.d.ts +1 -1
  13. package/dist/components/agents-sdk/AgentChat.js +42 -18
  14. package/dist/components/agents-sdk/AgentToolRunsContext.d.ts +1 -1
  15. package/dist/components/agents-sdk/AgentToolRunsContext.js +12 -0
  16. package/dist/components/agents-sdk/BrowserLiveScreen.d.ts +135 -0
  17. package/dist/components/agents-sdk/BrowserLiveScreen.js +637 -0
  18. package/dist/components/agents-sdk/BrowserLiveView.d.ts +2 -2
  19. package/dist/components/agents-sdk/BrowserLiveView.js +6 -9
  20. package/dist/components/agents-sdk/BrowserReplay.js +1 -1
  21. package/dist/components/agents-sdk/BrowserRunPanel.d.ts +1 -1
  22. package/dist/components/agents-sdk/BrowserRunPanel.js +8 -13
  23. package/dist/components/agents-sdk/ManagerOffice.d.ts +168 -0
  24. package/dist/components/agents-sdk/ManagerOffice.js +698 -0
  25. package/dist/components/agents-sdk/McpConnectionRequest.js +3 -3
  26. package/dist/components/agents-sdk/McpConnectorForm.d.ts +1 -38
  27. package/dist/components/agents-sdk/McpPluginCatalog.d.ts +8 -2
  28. package/dist/components/agents-sdk/McpPluginCatalog.js +82 -62
  29. package/dist/components/agents-sdk/McpServerPicker.d.ts +1 -1
  30. package/dist/components/agents-sdk/McpServerPicker.js +2 -2
  31. package/dist/components/agents-sdk/ModelSelector.js +1 -1
  32. package/dist/components/agents-sdk/PromptInputCommands.js +1 -1
  33. package/dist/components/agents-sdk/SubagentRunDetails.d.ts +1 -9
  34. package/dist/components/agents-sdk/SubagentRunDetails.js +1 -9
  35. package/dist/components/agents-sdk/SubagentRunIndicator.js +1 -1
  36. package/dist/components/agents-sdk/SubagentRunSelector.d.ts +4 -2
  37. package/dist/components/agents-sdk/SubagentRunSelector.js +7 -6
  38. package/dist/components/agents-sdk/ThinkChat.d.ts +4 -4
  39. package/dist/components/agents-sdk/ThinkChatActivity.d.ts +1 -1
  40. package/dist/components/agents-sdk/ThinkChatActivity.js +18 -4
  41. package/dist/components/agents-sdk/ThinkChatToolPanels.js +7 -3
  42. package/dist/components/agents-sdk/ThinkExecutionDetail.d.ts +1 -1
  43. package/dist/components/agents-sdk/ThinkExecutionDetail.js +45 -43
  44. package/dist/components/agents-sdk/ThinkExecutionRun.d.ts +2 -2
  45. package/dist/components/agents-sdk/ThinkExecutionRun.js +5 -6
  46. package/dist/components/agents-sdk/ThinkExecutionStatus.d.ts +1 -1
  47. package/dist/components/agents-sdk/ThinkExecutionStatus.js +8 -12
  48. package/dist/components/agents-sdk/ThinkExecutionWorkbench.d.ts +8 -1
  49. package/dist/components/agents-sdk/ThinkExecutionWorkbench.js +43 -37
  50. package/dist/components/agents-sdk/ThinkFullApp.d.ts +42 -78
  51. package/dist/components/agents-sdk/ThinkFullApp.js +121 -202
  52. package/dist/components/agents-sdk/ThinkFullAppViewSwitch.d.ts +1 -1
  53. package/dist/components/agents-sdk/ThinkRoutine.d.ts +1 -1
  54. package/dist/components/agents-sdk/ThinkRoutineBrowser.js +1 -1
  55. package/dist/components/agents-sdk/ThinkRoutineDetail.js +4 -15
  56. package/dist/components/agents-sdk/ThinkRoutineForm.js +1 -1
  57. package/dist/components/agents-sdk/ThinkRoutineLibrary.d.ts +7 -6
  58. package/dist/components/agents-sdk/ThinkRoutineLibrary.js +112 -140
  59. package/dist/components/agents-sdk/ThinkRoutineRuns.d.ts +1 -1
  60. package/dist/components/agents-sdk/ThinkRoutineRuns.js +3 -10
  61. package/dist/components/agents-sdk/ThinkThreadPicker.js +2 -1
  62. package/dist/components/agents-sdk/WorkspaceBrowser.js +1 -1
  63. package/dist/components/agents-sdk/WorkspaceExplorer.js +2 -1
  64. package/dist/components/agents-sdk/WorkspaceFileView.js +1 -1
  65. package/dist/components/agents-sdk/WorkspaceHeader.js +2 -1
  66. package/dist/components/agents-sdk/WorkspaceMessageResponse.d.ts +1 -1
  67. package/dist/components/agents-sdk/WorkspaceMountManager.js +11 -11
  68. package/dist/components/ai-sdk/Activity.js +1 -1
  69. package/dist/components/ai-sdk/AgentAttention.d.ts +1 -1
  70. package/dist/components/ai-sdk/AgentChatStartScreen.js +1 -1
  71. package/dist/components/ai-sdk/Approval.js +1 -1
  72. package/dist/components/ai-sdk/Artifact.js +1 -1
  73. package/dist/components/ai-sdk/ChainOfThought.d.ts +1 -1
  74. package/dist/components/ai-sdk/ChainOfThought.js +1 -1
  75. package/dist/components/ai-sdk/Checkpoint.js +1 -1
  76. package/dist/components/ai-sdk/CodeBlock.js +1 -1
  77. package/dist/components/ai-sdk/Conversation.js +1 -1
  78. package/dist/components/ai-sdk/Goal.js +1 -1
  79. package/dist/components/ai-sdk/MediaPreviewCard.js +1 -1
  80. package/dist/components/ai-sdk/Message.d.ts +2 -2
  81. package/dist/components/ai-sdk/Message.js +25 -3
  82. package/dist/components/ai-sdk/MessageScroller.js +3 -2
  83. package/dist/components/ai-sdk/MessageScrollerVirtual.js +2 -1
  84. package/dist/components/ai-sdk/Plan.js +1 -1
  85. package/dist/components/ai-sdk/PromptInput.js +21 -15
  86. package/dist/components/ai-sdk/Queue.d.ts +4 -4
  87. package/dist/components/ai-sdk/Queue.js +6 -15
  88. package/dist/components/ai-sdk/Reasoning.js +1 -1
  89. package/dist/components/ai-sdk/Sources.js +1 -1
  90. package/dist/components/ai-sdk/Task.d.ts +2 -2
  91. package/dist/components/ai-sdk/Task.js +2 -2
  92. package/dist/components/extension/ChatGptSignInScreen.js +2 -1
  93. package/dist/components/extension/CodexModelSelector.js +1 -1
  94. package/dist/components/extension/ConversationTabPicker.js +1 -1
  95. package/dist/components/foundations/Avatar.d.ts +1 -10
  96. package/dist/components/foundations/Avatar.js +1 -10
  97. package/dist/components/foundations/Checkbox.js +1 -1
  98. package/dist/components/foundations/CheckboxGroup.js +1 -0
  99. package/dist/components/foundations/ContextMenu.js +1 -1
  100. package/dist/components/foundations/LinkButton.d.ts +12 -10
  101. package/dist/components/foundations/LinkButton.js +15 -11
  102. package/dist/components/foundations/Menubar.js +1 -1
  103. package/dist/components/foundations/SearchField.js +1 -1
  104. package/dist/components/foundations/Select.js +1 -1
  105. package/dist/components/foundations/Stepper.js +1 -1
  106. package/dist/components/foundations/Toast.js +1 -1
  107. package/dist/components/foundations/ToggleGroup.d.ts +79 -1
  108. package/dist/components/foundations/icons.d.ts +2 -2
  109. package/dist/components/foundations/icons.js +2 -2
  110. package/dist/components/general-purpose/AppFrame.js +1 -0
  111. package/dist/components/general-purpose/AppTopBar.d.ts +6 -0
  112. package/dist/components/general-purpose/AppTopBar.js +2 -1
  113. package/dist/components/general-purpose/Commit.d.ts +2 -2
  114. package/dist/components/general-purpose/Commit.js +5 -13
  115. package/dist/components/general-purpose/EnvironmentVariables.d.ts +2 -2
  116. package/dist/components/general-purpose/EnvironmentVariables.js +4 -7
  117. package/dist/components/general-purpose/FileTree.js +1 -1
  118. package/dist/components/general-purpose/PricingBillingToggle.js +4 -9
  119. package/dist/components/general-purpose/PricingPlanCard.js +15 -14
  120. package/dist/components/general-purpose/ResizableSidePanel.d.ts +8 -0
  121. package/dist/components/general-purpose/ResizableSidePanel.js +3 -2
  122. package/dist/components/general-purpose/ResponsiveSidebarShell.d.ts +105 -2
  123. package/dist/components/general-purpose/ResponsiveSidebarShell.js +112 -56
  124. package/dist/components/general-purpose/SetupChecklist.js +1 -1
  125. package/dist/components/general-purpose/Terminal.d.ts +1 -1
  126. package/dist/components/general-purpose/Terminal.js +4 -12
  127. package/dist/components/general-purpose/TestResults.d.ts +1 -1
  128. package/dist/components/general-purpose/TestResults.js +8 -21
  129. package/dist/components/general-purpose/ThemeModeControl.js +1 -1
  130. package/dist/components/general-purpose/WebPreview.d.ts +4 -1
  131. package/dist/components/general-purpose/WebPreview.js +6 -14
  132. package/dist/components/nanites/AgentConnection.js +2 -2
  133. package/dist/components/nanites/AgentToolDetail.d.ts +1 -1
  134. package/dist/components/nanites/AgentToolDetail.js +6 -5
  135. package/dist/components/nanites/NaniteScene.js +11 -11
  136. package/dist/{copy-button-Bc7jsYv_.js → copy-button-lys9N_aI.js} +1 -1
  137. package/dist/{icons-DwgNir1Q.d.ts → icons-0corjfxR.d.ts} +1 -16
  138. package/dist/{icons-MmIXciMO.js → icons-CVFSeTJn.js} +2 -5
  139. package/dist/styles/accordion.css +1 -0
  140. package/dist/styles/action-guide.css +8 -7
  141. package/dist/styles/activity-header.css +13 -39
  142. package/dist/styles/activity.css +40 -55
  143. package/dist/styles/agent-attention.css +19 -19
  144. package/dist/styles/agent-chat.css +94 -42
  145. package/dist/styles/agent-connection.css +10 -4
  146. package/dist/styles/agent-tool-detail.css +5 -15
  147. package/dist/styles/alert-dialog.css +4 -4
  148. package/dist/styles/app-frame.css +1 -3
  149. package/dist/styles/app-icon.css +12 -18
  150. package/dist/styles/app-top-bar.css +31 -9
  151. package/dist/styles/approval.css +1 -0
  152. package/dist/styles/artifact.css +6 -6
  153. package/dist/styles/attachment-preview.css +5 -4
  154. package/dist/styles/avatar.css +6 -22
  155. package/dist/styles/base.css +2 -8
  156. package/dist/styles/browser-live-screen.css +38 -0
  157. package/dist/styles/browser-live-view.css +12 -4
  158. package/dist/styles/browser-replay.css +6 -6
  159. package/dist/styles/browser-run-panel.css +21 -18
  160. package/dist/styles/button.css +15 -6
  161. package/dist/styles/card.css +5 -5
  162. package/dist/styles/chatgpt-sign-in-screen.css +6 -6
  163. package/dist/styles/code-block.css +14 -13
  164. package/dist/styles/codex-model-selector.css +2 -0
  165. package/dist/styles/collapsible.css +1 -0
  166. package/dist/styles/commit.css +30 -7
  167. package/dist/styles/context.css +9 -9
  168. package/dist/styles/conversation-tab-picker.css +1 -1
  169. package/dist/styles/conversation.css +6 -8
  170. package/dist/styles/dialog.css +4 -4
  171. package/dist/styles/empty-state.css +3 -3
  172. package/dist/styles/environment-variables.css +12 -9
  173. package/dist/styles/field.css +2 -1
  174. package/dist/styles/fieldset.css +2 -2
  175. package/dist/styles/index.css +8 -7
  176. package/dist/styles/manager-office.css +480 -0
  177. package/dist/styles/mcp-plugin-catalog.css +44 -39
  178. package/dist/styles/mcp-server-picker.css +4 -4
  179. package/dist/styles/message-scroller.css +9 -11
  180. package/dist/styles/message.css +74 -28
  181. package/dist/styles/nanite-scene.css +9 -9
  182. package/dist/styles/navigation-menu.css +1 -0
  183. package/dist/styles/plan.css +13 -12
  184. package/dist/styles/pricing-page.css +37 -30
  185. package/dist/styles/prompt-input.css +26 -18
  186. package/dist/styles/queue.css +1 -0
  187. package/dist/styles/reasoning.css +1 -9
  188. package/dist/styles/recipes.css +29 -58
  189. package/dist/styles/responsive-sidebar-shell.css +107 -29
  190. package/dist/styles/separator.css +5 -5
  191. package/dist/styles/sources.css +4 -4
  192. package/dist/styles/stepper.css +1 -0
  193. package/dist/styles/streamdown.css +31 -21
  194. package/dist/styles/subagent-run.css +20 -3
  195. package/dist/styles/tabs.css +1 -0
  196. package/dist/styles/task.css +5 -17
  197. package/dist/styles/terminal.css +29 -10
  198. package/dist/styles/test-results.css +16 -7
  199. package/dist/styles/think-execution-status.css +10 -26
  200. package/dist/styles/think-execution-workbench.css +98 -108
  201. package/dist/styles/think-full-app.css +75 -225
  202. package/dist/styles/think-routine-library.css +26 -95
  203. package/dist/styles/think-thread-picker.css +17 -12
  204. package/dist/styles/transition-surface.css +7 -8
  205. package/dist/styles/utilities.css +75 -0
  206. package/dist/styles/web-preview.css +46 -22
  207. package/dist/styles/workspace-explorer.css +22 -44
  208. package/dist/styles/workspace-mount-manager.css +24 -2
  209. package/dist/utils/favicon.d.ts +6 -1
  210. package/dist/utils/favicon.js +18 -1
  211. package/package.json +37 -35
  212. package/dist/ResponsiveSidebarShell-DWjULskY.d.ts +0 -68
  213. package/dist/ToggleGroup-_pQMyHGM.d.ts +0 -80
  214. package/dist/components/agents-sdk/AgentActivityPreview.d.ts +0 -46
  215. package/dist/components/agents-sdk/AgentActivityPreview.js +0 -93
  216. package/dist/components/agents-sdk/ThinkThreadShell.d.ts +0 -38
  217. package/dist/components/agents-sdk/ThinkThreadShell.js +0 -27
  218. package/dist/components/foundations/Badge.d.ts +0 -62
  219. package/dist/components/foundations/Badge.js +0 -55
  220. package/dist/components/foundations/StatusPill.d.ts +0 -43
  221. package/dist/components/foundations/StatusPill.js +0 -35
  222. package/dist/components/general-purpose/Shell.d.ts +0 -149
  223. package/dist/components/general-purpose/Shell.js +0 -116
  224. package/dist/styles/agent-activity-preview-overlay.css +0 -169
  225. package/dist/styles/agent-activity-preview.css +0 -209
  226. package/dist/styles/badge.css +0 -120
  227. package/dist/styles/shell.css +0 -122
  228. package/dist/styles/status-pill.css +0 -39
@@ -0,0 +1,480 @@
1
+ .manager-office {
2
+ block-size: 100%;
3
+ min-block-size: 32rem;
4
+ }
5
+
6
+ .manager-office__sidebar {
7
+ block-size: 100%;
8
+ min-inline-size: 0;
9
+ display: grid;
10
+ grid-template-rows: auto auto auto var(--sigvelo-layout-track-fill);
11
+ gap: var(--sigvelo-density-compact-control-gap);
12
+ padding: var(--sigvelo-layout-cluster);
13
+ }
14
+
15
+ .manager-office__sidebar-heading,
16
+ .manager-office__sidebar-actions {
17
+ min-inline-size: 0;
18
+ display: flex;
19
+ align-items: center;
20
+ }
21
+
22
+ .manager-office__sidebar-heading {
23
+ min-block-size: var(--sigvelo-density-compact-control-height);
24
+ justify-content: space-between;
25
+ padding-inline-start: var(--sigvelo-spacing-2);
26
+ }
27
+
28
+ .manager-office__sidebar-actions {
29
+ gap: var(--sigvelo-spacing-0-5);
30
+ }
31
+
32
+ /*
33
+ * Ploy's measured application voice is 14px/21px for content and ~12.25px for
34
+ * metadata. The office previously ran a step below that on both — 13px titles
35
+ * over 11px meta — which read as a settings panel rather than the surface a
36
+ * manager works out of. The dense sidebar keeps the compact step; only the
37
+ * content plane moves up.
38
+ */
39
+ .manager-office__sidebar-heading strong,
40
+ .manager-office__employee-nav strong,
41
+ .manager-office__routine-trigger strong {
42
+ font-size: var(--sigvelo-text-compact);
43
+ font-weight: var(--sigvelo-font-weight-semibold);
44
+ line-height: var(--sigvelo-text-compact-leading);
45
+ }
46
+
47
+ .manager-office__employee-header strong,
48
+ .manager-office__work-list strong,
49
+ .manager-office__routine-list strong,
50
+ .manager-office__channel-list strong {
51
+ font-size: var(--sigvelo-text-sm);
52
+ font-weight: var(--sigvelo-font-weight-semibold);
53
+ line-height: var(--sigvelo-text-sm-leading);
54
+ }
55
+
56
+ .manager-office__attention-nav,
57
+ .manager-office__employee-link {
58
+ inline-size: 100%;
59
+ min-inline-size: 0;
60
+ display: grid;
61
+ align-items: center;
62
+ justify-content: stretch;
63
+ gap: var(--sigvelo-density-compact-control-gap);
64
+ font-weight: var(--sigvelo-font-weight-normal);
65
+ text-align: start;
66
+ }
67
+
68
+ .manager-office__attention-nav {
69
+ grid-template-columns: auto var(--sigvelo-layout-track-fill);
70
+ }
71
+
72
+ .manager-office__attention-nav > svg {
73
+ color: var(--sigvelo-color-danger-text);
74
+ }
75
+
76
+ /* A section label above the roster, sized to the rail's own quiet voice. */
77
+ .manager-office__nav-label {
78
+ display: flex;
79
+ align-items: center;
80
+ justify-content: space-between;
81
+ gap: var(--sigvelo-spacing-2);
82
+ margin: var(--sigvelo-spacing-1) 0 0;
83
+ padding-inline: var(--sigvelo-spacing-2);
84
+ color: var(--sigvelo-color-text-muted);
85
+ font-size: var(--sigvelo-text-2xs);
86
+ font-weight: var(--sigvelo-font-weight-semibold);
87
+ line-height: var(--sigvelo-text-2xs-leading);
88
+ text-transform: uppercase;
89
+ letter-spacing: var(--sigvelo-tracking-wide);
90
+ }
91
+
92
+ .manager-office__employee-nav {
93
+ min-block-size: 0;
94
+ overflow: auto;
95
+ }
96
+
97
+ .manager-office__employee-link {
98
+ grid-template-columns: auto var(--sigvelo-layout-track-fill) auto;
99
+ padding-block: var(--sigvelo-spacing-1);
100
+ }
101
+
102
+ .manager-office__identity {
103
+ min-inline-size: 0;
104
+ display: grid;
105
+ gap: var(--sigvelo-spacing-0-5);
106
+ }
107
+
108
+ .manager-office__employee-nav small,
109
+ .manager-office__routine-list small {
110
+ min-inline-size: 0;
111
+ color: var(--sigvelo-color-text-muted);
112
+ font-size: var(--sigvelo-text-2xs);
113
+ line-height: var(--sigvelo-text-2xs-leading);
114
+ }
115
+
116
+ .manager-office__employee-header small,
117
+ .manager-office__work-list small,
118
+ .manager-office__channel-list small {
119
+ min-inline-size: 0;
120
+ color: var(--sigvelo-color-text-muted);
121
+ font-size: var(--sigvelo-text-xs);
122
+ line-height: var(--sigvelo-text-xs-leading);
123
+ }
124
+
125
+ .manager-office__attention-nav[aria-current="page"],
126
+ .manager-office__employee-link[aria-current="page"] {
127
+ background: color-mix(in oklab, var(--sigvelo-color-neutral-bg-subtle), transparent 18%);
128
+ }
129
+
130
+ .manager-office__main {
131
+ min-inline-size: 0;
132
+ min-block-size: 0;
133
+ block-size: 100%;
134
+ overflow: auto;
135
+ }
136
+
137
+ /*
138
+ * A capped, centred column. Stretched to a 1440px pane, a roster row put its
139
+ * status a screen-width away from the name it belonged to; Ploy caps the same
140
+ * lists at 800px for the same reason.
141
+ */
142
+ .manager-office__attention-list {
143
+ gap: var(--sigvelo-layout-cluster);
144
+ }
145
+
146
+ /*
147
+ * Rows are bounded surfaces, not naked ghost buttons. One hairline and a real
148
+ * padding box give each row an edge to scan against, which is what carried
149
+ * Ploy's 67px work rows and Codex's activity rows.
150
+ */
151
+ .manager-office__work-link,
152
+ .manager-office__routine-link,
153
+ .manager-office__channel {
154
+ inline-size: 100%;
155
+ min-inline-size: 0;
156
+ display: grid;
157
+ align-items: center;
158
+ justify-content: stretch;
159
+ gap: var(--sigvelo-density-compact-control-gap);
160
+ font-weight: var(--sigvelo-font-weight-normal);
161
+ text-align: start;
162
+ white-space: normal;
163
+ }
164
+
165
+ .manager-office__work-link {
166
+ min-block-size: var(--sigvelo-control-height-xl);
167
+ padding: var(--sigvelo-spacing-2) var(--sigvelo-spacing-3);
168
+ border: var(--sigvelo-border-style) var(--sigvelo-border-width)
169
+ var(--sigvelo-color-neutral-border-muted);
170
+ border-radius: var(--sigvelo-radius-md);
171
+ background: var(--sigvelo-color-surface);
172
+ }
173
+
174
+ .manager-office__routine-link {
175
+ padding-block: var(--sigvelo-spacing-1);
176
+ }
177
+
178
+ .manager-office__work-link,
179
+ .manager-office__routine-link {
180
+ grid-template-columns: auto var(--sigvelo-layout-track-fill) auto;
181
+ }
182
+
183
+ .manager-office__row-chevron {
184
+ color: var(--sigvelo-color-text-subtle);
185
+ }
186
+
187
+ .manager-office__employee-detail {
188
+ display: grid;
189
+ align-content: start;
190
+ gap: var(--sigvelo-spacing-3);
191
+ }
192
+
193
+ .manager-office__employee-header {
194
+ min-inline-size: 0;
195
+ display: grid;
196
+ grid-template-columns: auto var(--sigvelo-layout-track-fill) auto auto;
197
+ align-items: center;
198
+ gap: var(--sigvelo-spacing-3);
199
+ padding-block: var(--sigvelo-spacing-1);
200
+ }
201
+
202
+ .manager-office__employee-handoffs,
203
+ .manager-office__attention-list {
204
+ display: grid;
205
+ gap: var(--sigvelo-spacing-2);
206
+ }
207
+
208
+ .manager-office__handoff {
209
+ inline-size: 100%;
210
+ gap: var(--sigvelo-spacing-3);
211
+ padding: var(--sigvelo-spacing-3);
212
+ /* Lifted off a transcript the card needs elevation; sitting on the page it
213
+ does not, and the attention hairline reads better without a shadow
214
+ competing with it. Same call as the sections below. */
215
+ box-shadow: none;
216
+ }
217
+
218
+ /*
219
+ * `AgentAttention` stacks header over body over actions, which is right when
220
+ * the employee quoted its ask. When it did not, that stack spends a whole row
221
+ * on a lone button, so the bare card pulls the way in up beside the ask instead.
222
+ */
223
+ .manager-office__handoff--bare {
224
+ grid-template-columns: var(--sigvelo-layout-track-fill) auto;
225
+ align-items: center;
226
+ }
227
+
228
+ /* The verbatim ask is the point of the card; it wraps rather than truncating,
229
+ unlike the description line above it. */
230
+ .manager-office__handoff-ask {
231
+ grid-column: 1 / -1;
232
+ color: var(--sigvelo-color-text);
233
+ font-size: var(--sigvelo-text-sm);
234
+ line-height: var(--sigvelo-text-sm-leading);
235
+ }
236
+
237
+ /* Local wrap. Not --sigvelo-layout-break-compact. */
238
+ @container responsive-sidebar-shell (inline-size <= 34rem) {
239
+ .manager-office__handoff--bare {
240
+ grid-template-columns: var(--sigvelo-layout-track-fill);
241
+ gap: var(--sigvelo-spacing-2);
242
+ }
243
+ }
244
+
245
+ .manager-office__employee-columns {
246
+ min-inline-size: 0;
247
+ display: grid;
248
+ grid-template-columns: minmax(0, 2fr) minmax(15rem, 1fr);
249
+ align-items: stretch;
250
+ gap: var(--sigvelo-layout-gap);
251
+ }
252
+
253
+ .manager-office__employee-aside {
254
+ min-inline-size: 0;
255
+ display: grid;
256
+ align-content: start;
257
+ gap: var(--sigvelo-layout-gap);
258
+ }
259
+
260
+ .manager-office__section {
261
+ min-inline-size: 0;
262
+ display: grid;
263
+ align-content: start;
264
+ gap: var(--sigvelo-spacing-2);
265
+ padding-block: var(--sigvelo-layout-gutter);
266
+ }
267
+
268
+ .manager-office__section-header {
269
+ display: flex;
270
+ align-items: flex-start;
271
+ justify-content: space-between;
272
+ gap: var(--sigvelo-layout-cluster);
273
+ }
274
+
275
+ /* The glyph makes the three panes distinct before their labels are read. */
276
+ .manager-office__section-title {
277
+ display: flex;
278
+ align-items: center;
279
+ gap: var(--sigvelo-density-compact-control-gap);
280
+ margin: 0;
281
+ font-size: var(--sigvelo-text-sm);
282
+ font-weight: var(--sigvelo-font-weight-semibold);
283
+ line-height: var(--sigvelo-leading-tight);
284
+ }
285
+
286
+ .manager-office__section-title > svg {
287
+ color: var(--sigvelo-color-text-muted);
288
+ inline-size: var(--sigvelo-density-compact-control-icon-size);
289
+ block-size: var(--sigvelo-density-compact-control-icon-size);
290
+ }
291
+
292
+ .manager-office__section-content {
293
+ display: grid;
294
+ gap: 0;
295
+ }
296
+
297
+ .manager-office__channel-list {
298
+ gap: var(--sigvelo-spacing-0-5);
299
+ }
300
+
301
+ .manager-office__channel {
302
+ grid-template-columns: auto var(--sigvelo-layout-track-fill) auto auto;
303
+ padding: var(--sigvelo-spacing-1) 0;
304
+ }
305
+
306
+ /* The host's mark sits in the tile the way a favicon would, so a supplied SVG
307
+ and a fallback initial occupy the same box. */
308
+ .manager-office__channel-mark {
309
+ display: inline-grid;
310
+ place-items: center;
311
+ inline-size: 100%;
312
+ block-size: 100%;
313
+ }
314
+
315
+ .manager-office__channel-mark > svg {
316
+ inline-size: 65%;
317
+ block-size: 65%;
318
+ }
319
+
320
+ .manager-office__channel-direction {
321
+ display: inline-grid;
322
+ place-items: center;
323
+ color: var(--sigvelo-color-text-muted);
324
+ }
325
+
326
+ .manager-office__channel-status {
327
+ display: inline-grid;
328
+ place-items: center;
329
+ }
330
+
331
+ .manager-office__channel-status[data-status="connected"] {
332
+ color: var(--sigvelo-color-success-text);
333
+ }
334
+
335
+ .manager-office__channel-status[data-status="needs-auth"] {
336
+ color: var(--sigvelo-color-danger-text);
337
+ }
338
+
339
+ .manager-office__channel-status[data-status="error"] {
340
+ color: var(--sigvelo-color-danger-text);
341
+ }
342
+
343
+ .manager-office__work-list {
344
+ gap: var(--sigvelo-spacing-2);
345
+ }
346
+
347
+ .manager-office__routine-list {
348
+ gap: var(--sigvelo-spacing-0-5);
349
+ }
350
+
351
+ .manager-office__routine-trigger {
352
+ inline-size: 100%;
353
+ min-inline-size: 0;
354
+ display: grid;
355
+ grid-template-columns: var(--sigvelo-layout-track-fill) auto;
356
+ align-items: center;
357
+ justify-content: stretch;
358
+ padding-inline: 0;
359
+ text-align: start;
360
+ }
361
+
362
+ .manager-office__routine-trigger > span:first-child {
363
+ min-inline-size: 0;
364
+ display: flex;
365
+ align-items: center;
366
+ gap: var(--sigvelo-density-compact-control-gap);
367
+ }
368
+
369
+ .manager-office__routine-list {
370
+ margin-block-start: var(--sigvelo-spacing-1);
371
+ }
372
+
373
+ .manager-office__nav-status,
374
+ .manager-office__thread-status {
375
+ display: inline-grid;
376
+ place-items: center;
377
+ color: var(--sigvelo-color-text-muted);
378
+ }
379
+
380
+ .manager-office__status,
381
+ .manager-office__evidence {
382
+ display: inline-flex;
383
+ align-items: center;
384
+ gap: var(--sigvelo-density-compact-control-gap);
385
+ color: var(--sigvelo-color-text-muted);
386
+ font-size: var(--sigvelo-text-xs);
387
+ line-height: var(--sigvelo-leading-snug);
388
+ white-space: nowrap;
389
+ }
390
+
391
+ .manager-office__status > svg,
392
+ .manager-office__evidence > svg,
393
+ .manager-office__nav-status > svg,
394
+ .manager-office__thread-status > svg,
395
+ .manager-office__channel-direction > svg,
396
+ .manager-office__channel-status > svg,
397
+ .manager-office__row-chevron,
398
+ .manager-office__routine-link > svg {
399
+ inline-size: var(--sigvelo-density-compact-control-icon-size);
400
+ block-size: var(--sigvelo-density-compact-control-icon-size);
401
+ }
402
+
403
+ .manager-office__status[data-status="needs-you"],
404
+ .manager-office__nav-status[data-status="needs-you"],
405
+ .manager-office__status[data-status="issue"],
406
+ .manager-office__status[data-status="unavailable"],
407
+ .manager-office__nav-status[data-status="issue"],
408
+ .manager-office__nav-status[data-status="unavailable"],
409
+ .manager-office__thread-status[data-status="error"] {
410
+ color: var(--sigvelo-color-danger-text);
411
+ }
412
+
413
+ .manager-office__status[data-status="working"],
414
+ .manager-office__status[data-status="connecting"],
415
+ .manager-office__nav-status[data-status="working"],
416
+ .manager-office__nav-status[data-status="connecting"],
417
+ .manager-office__thread-status[data-status="running"] {
418
+ color: var(--sigvelo-color-primary-text);
419
+ }
420
+
421
+ .manager-office__evidence[data-complete] {
422
+ color: var(--sigvelo-color-success-text);
423
+ }
424
+
425
+ /*
426
+ * The rail's state line stays muted and lets the glyph beside it carry the
427
+ * colour. Tinting both put semantic text at 11px over the selected row's
428
+ * raised background, which lands at 4.28:1 — under the 4.5:1 floor — and the
429
+ * glyph is a non-text element held to 3:1, so it can say the same thing.
430
+ */
431
+
432
+ .manager-office__unread-dot {
433
+ display: inline-block;
434
+ inline-size: var(--sigvelo-spacing-1-5);
435
+ block-size: var(--sigvelo-spacing-1-5);
436
+ margin-inline-start: var(--sigvelo-spacing-1);
437
+ border-radius: var(--sigvelo-radius-full);
438
+ background: var(--sigvelo-color-primary-text);
439
+ vertical-align: middle;
440
+ }
441
+
442
+ .manager-office__main > .empty-state {
443
+ padding: var(--sigvelo-spacing-6) var(--sigvelo-spacing-3);
444
+ }
445
+
446
+ /* Local wrap. Not --sigvelo-layout-break-compact. */
447
+ @container responsive-sidebar-shell (inline-size <= 42rem) {
448
+ .manager-office__attention,
449
+ .manager-office__employee-detail {
450
+ padding: var(--sigvelo-spacing-2);
451
+ }
452
+
453
+ .manager-office__employee-columns {
454
+ grid-template-columns: var(--sigvelo-layout-track-fill);
455
+ }
456
+ }
457
+
458
+ /* Local wrap. Not --sigvelo-layout-break-compact. */
459
+ @container responsive-sidebar-shell (inline-size <= 30rem) {
460
+ .manager-office__status > span {
461
+ display: none;
462
+ }
463
+ }
464
+
465
+ @media (any-pointer: coarse) {
466
+ .manager-office__attention-nav,
467
+ .manager-office__employee-link,
468
+ .manager-office__work-link,
469
+ .manager-office__routine-link,
470
+ .manager-office__routine-trigger {
471
+ min-block-size: var(--sigvelo-control-height-xl);
472
+ }
473
+ }
474
+
475
+ @media (forced-colors: active) {
476
+ .manager-office__attention-nav[aria-current="page"],
477
+ .manager-office__employee-link[aria-current="page"] {
478
+ outline: var(--sigvelo-border-width) solid Highlight;
479
+ }
480
+ }
@@ -2,58 +2,67 @@
2
2
  container: mcp-plugin-catalog / inline-size;
3
3
  box-sizing: border-box;
4
4
  inline-size: 100%;
5
- max-inline-size: var(--sigvelo-measure-wide-block);
6
- padding-inline: var(--sigvelo-spacing-4);
7
- margin-inline: auto;
5
+ min-block-size: 0;
6
+ display: flex;
7
+ flex-direction: column;
8
8
  color: var(--sigvelo-color-text);
9
9
  }
10
10
 
11
- .mcp-plugin-catalog__header,
12
- .mcp-plugin-catalog__heading-copy,
13
11
  .mcp-plugin-catalog__installed,
14
12
  .mcp-plugin-catalog__sections,
15
13
  .mcp-plugin-catalog__section {
16
14
  display: grid;
17
15
  }
18
16
 
17
+ /* The card's chrome row at the bar rhythm: no title (the hosting tab or icon
18
+ carries it), no fill — separated from the scrolling directory by one
19
+ hairline and a breath of shadow. */
19
20
  .mcp-plugin-catalog__header {
20
- gap: var(--sigvelo-spacing-4);
21
- margin-block-end: var(--sigvelo-spacing-6);
21
+ position: relative;
22
+ flex: none;
23
+ display: flex;
24
+ align-items: center;
25
+ gap: var(--sigvelo-layout-cluster);
26
+ min-block-size: var(--sigvelo-layout-chrome);
27
+ padding-block: var(--sigvelo-spacing-1);
28
+ padding-inline: var(--sigvelo-layout-gutter);
29
+ border-block-end: var(--sigvelo-border-style) var(--sigvelo-border-width)
30
+ var(--sigvelo-color-neutral-border-subtle);
31
+ box-shadow: var(--sigvelo-elevation-bar);
22
32
  }
23
33
 
24
- .mcp-plugin-catalog__heading-copy {
25
- gap: var(--sigvelo-spacing-1);
34
+ /* The bar's one action keeps to the far end, Ploy-style. */
35
+ .mcp-plugin-catalog__add-custom {
36
+ margin-inline-start: auto;
26
37
  }
27
38
 
28
- .mcp-plugin-catalog__heading,
29
- .mcp-plugin-catalog__description,
30
39
  .mcp-plugin-catalog__section-heading,
31
40
  .mcp-plugin-catalog__empty,
32
41
  .mcp-plugin-details p {
33
42
  margin: 0;
34
43
  }
35
44
 
36
- .mcp-plugin-catalog__heading {
37
- font-size: var(--sigvelo-text-3xl);
38
- font-weight: var(--sigvelo-font-weight-normal);
39
- line-height: var(--sigvelo-text-3xl-leading);
40
- letter-spacing: var(--sigvelo-tracking-normal);
45
+ .mcp-plugin-catalog__search {
46
+ flex: 1;
47
+ max-inline-size: 24rem;
41
48
  }
42
49
 
43
- .mcp-plugin-catalog__description {
44
- max-inline-size: var(--sigvelo-measure-prose);
45
- color: var(--sigvelo-color-text-muted);
46
- font-size: var(--sigvelo-text-base);
47
- line-height: var(--sigvelo-text-base-leading);
50
+ .mcp-plugin-catalog__body {
51
+ flex: 1;
52
+ min-block-size: 0;
53
+ overflow: auto;
54
+ padding-inline: var(--sigvelo-layout-gutter);
55
+ padding-block: var(--sigvelo-layout-cluster) var(--sigvelo-layout-stack);
48
56
  }
49
57
 
50
- .mcp-plugin-catalog__search {
51
- inline-size: 100%;
58
+ .mcp-plugin-catalog__body > * {
59
+ max-inline-size: var(--sigvelo-measure-wide-block);
60
+ margin-inline: auto;
52
61
  }
53
62
 
54
63
  .mcp-plugin-catalog__installed {
55
- gap: var(--sigvelo-spacing-2);
56
- margin-block-end: var(--sigvelo-spacing-6);
64
+ gap: var(--sigvelo-layout-cluster);
65
+ margin-block-end: var(--sigvelo-spacing-5);
57
66
  }
58
67
 
59
68
  .mcp-plugin-catalog__installed-list,
@@ -70,7 +79,7 @@
70
79
  }
71
80
 
72
81
  .mcp-plugin-catalog__sections {
73
- gap: var(--sigvelo-spacing-6);
82
+ gap: var(--sigvelo-spacing-5);
74
83
  }
75
84
 
76
85
  .mcp-plugin-catalog__section {
@@ -86,16 +95,16 @@
86
95
 
87
96
  .mcp-plugin-catalog__list {
88
97
  display: grid;
89
- gap: var(--sigvelo-spacing-4) var(--sigvelo-spacing-2);
98
+ gap: var(--sigvelo-spacing-2) var(--sigvelo-spacing-2);
90
99
  margin-inline: calc(-1 * var(--sigvelo-spacing-2));
91
100
  }
92
101
 
93
102
  .mcp-plugin-catalog__card {
94
103
  display: grid;
95
- grid-template-columns: minmax(0, 1fr) auto;
104
+ grid-template-columns: var(--sigvelo-layout-track-fill) auto;
96
105
  align-items: center;
97
106
  gap: var(--sigvelo-spacing-2);
98
- min-block-size: var(--sigvelo-spacing-14);
107
+ min-block-size: var(--sigvelo-spacing-12);
99
108
  padding-inline-end: var(--sigvelo-spacing-2);
100
109
  border-radius: var(--sigvelo-radius-lg);
101
110
  transition: background-color var(--sigvelo-motion-duration-interaction)
@@ -112,10 +121,10 @@
112
121
 
113
122
  .mcp-plugin-catalog__card-main {
114
123
  display: grid;
115
- grid-template-columns: var(--sigvelo-spacing-10) minmax(0, 1fr);
124
+ grid-template-columns: var(--sigvelo-spacing-8) var(--sigvelo-layout-track-fill);
116
125
  align-items: center;
117
126
  justify-content: start;
118
- gap: var(--sigvelo-spacing-3-5);
127
+ gap: var(--sigvelo-spacing-3);
119
128
  inline-size: 100%;
120
129
  min-inline-size: 0;
121
130
  padding-inline: var(--sigvelo-spacing-2);
@@ -170,7 +179,7 @@
170
179
  background:
171
180
  radial-gradient(
172
181
  ellipse 48% 135% at 0% 38%,
173
- var(--sigvelo-color-warning-400) 0%,
182
+ var(--sigvelo-color-primary-400) 0%,
174
183
  transparent 74%
175
184
  ),
176
185
  radial-gradient(
@@ -260,7 +269,7 @@
260
269
  display: flex;
261
270
  justify-content: center;
262
271
  margin-block-start: auto;
263
- padding-block: var(--sigvelo-spacing-4) var(--sigvelo-spacing-8);
272
+ padding-block: var(--sigvelo-layout-stack) var(--sigvelo-spacing-8);
264
273
  }
265
274
 
266
275
  .mcp-plugin-details__disclosure {
@@ -284,13 +293,9 @@
284
293
  }
285
294
  }
286
295
 
296
+ /* Local wrap. Not --sigvelo-layout-break-compact. */
287
297
  @container mcp-plugin-catalog (inline-size >= 36rem) {
288
- .mcp-plugin-catalog__header {
289
- grid-template-columns: minmax(0, 1fr) 16rem;
290
- align-items: end;
291
- }
292
-
293
298
  .mcp-plugin-catalog__list {
294
- grid-template-columns: repeat(2, minmax(0, 1fr));
299
+ grid-template-columns: repeat(2, var(--sigvelo-layout-track-fill));
295
300
  }
296
301
  }
@@ -25,7 +25,7 @@
25
25
 
26
26
  .mcp-server-picker__row-shell {
27
27
  display: grid;
28
- grid-template-columns: minmax(0, 1fr) auto;
28
+ grid-template-columns: var(--sigvelo-layout-track-fill) auto;
29
29
  align-items: center;
30
30
  transition: background-color var(--sigvelo-motion-duration-interaction)
31
31
  var(--sigvelo-motion-ease-change);
@@ -130,7 +130,7 @@
130
130
  }
131
131
 
132
132
  .mcp-server-picker__row-shell[data-status="authenticating"] .mcp-server-picker__row-status {
133
- color: var(--sigvelo-color-warning-text-on-subtle);
133
+ color: var(--sigvelo-color-text-muted);
134
134
  }
135
135
 
136
136
  .mcp-server-picker__row-shell:is([data-status="failed"], [data-status="not-connected"])
@@ -151,8 +151,8 @@
151
151
  }
152
152
 
153
153
  .mcp-server-picker__empty {
154
- padding-block: var(--sigvelo-spacing-2);
155
- padding-inline: var(--sigvelo-spacing-3);
154
+ padding-block: var(--sigvelo-layout-cluster);
155
+ padding-inline: var(--sigvelo-layout-gutter);
156
156
  color: var(--sigvelo-color-text-muted);
157
157
  font-size: var(--sigvelo-text-sm);
158
158
  }