@mcp-b/react-components 0.12.0 → 0.13.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 (229) hide show
  1. package/dist/{AgentChat-CRmsKg9B.d.ts → AgentChat-Br6tKEl8.d.ts} +29 -5
  2. package/dist/{Button-Ct5I6aTu.d.ts → Button-FX_hpqxm.d.ts} +8 -11
  3. package/dist/{CodeBlock-XNQOupQ3.js → CodeBlock-BUFXG8HW.js} +22 -12
  4. package/dist/{CodeBlock-CxQXv3C4.d.ts → CodeBlock-DUh9WOGo.d.ts} +13 -7
  5. package/dist/{Combobox-D9anamNr.d.ts → Combobox-B9Fcd6q-.d.ts} +4 -14
  6. package/dist/{FileTree-wMyZhhHO.js → FileTree-mpEIcfzA.js} +1 -1
  7. package/dist/{Menu-BLhnNnRK.d.ts → Menu-Bgu-ufb5.d.ts} +26 -65
  8. package/dist/{ModelSelector-BB-xB-Es.js → ModelSelector-DVgVBdvw.js} +7 -7
  9. package/dist/{PromptInput-IyM6ZETj.d.ts → PromptInput-p5KmOmt1.d.ts} +302 -46
  10. package/dist/Select-Dl_vF_Bt.d.ts +213 -0
  11. package/dist/{Tabs-D9EAq09D.d.ts → Tabs-3Zc4tb9D.d.ts} +9 -6
  12. package/dist/{ThinkChat-B3wYahor.js → ThinkChat-7DQ2CogF.js} +34 -2
  13. package/dist/{ThinkChatActivity-F4KFPcJA.d.ts → ThinkChatActivity-Cuk28Js_.d.ts} +1 -1
  14. package/dist/{attachment-preview-ChtC3HiU.js → attachment-preview-DIs50Q0h.js} +3 -3
  15. package/dist/components/Accordion.d.ts +17 -6
  16. package/dist/components/Accordion.js +23 -36
  17. package/dist/components/Activity.d.ts +5 -5
  18. package/dist/components/Activity.js +9 -9
  19. package/dist/components/AgentChat.d.ts +1 -1
  20. package/dist/components/AgentChat.js +304 -116
  21. package/dist/components/AgentConnection.js +2 -2
  22. package/dist/components/AlertDialog.d.ts +40 -32
  23. package/dist/components/AlertDialog.js +46 -39
  24. package/dist/components/Artifact.d.ts +1 -1
  25. package/dist/components/Artifact.js +5 -5
  26. package/dist/components/Autocomplete.js +10 -2
  27. package/dist/components/Avatar.d.ts +2 -2
  28. package/dist/components/Avatar.js +3 -3
  29. package/dist/components/Badge.d.ts +11 -14
  30. package/dist/components/Badge.js +10 -18
  31. package/dist/components/BrowserLiveView.js +26 -36
  32. package/dist/components/BrowserReplay.js +4 -4
  33. package/dist/components/BrowserRunPanel.js +1 -1
  34. package/dist/components/Button.d.ts +2 -2
  35. package/dist/components/Button.js +7 -30
  36. package/dist/components/ChainOfThought.d.ts +5 -5
  37. package/dist/components/ChainOfThought.js +8 -5
  38. package/dist/components/ChatGptSignInScreen.js +3 -3
  39. package/dist/components/Checkbox.d.ts +10 -2
  40. package/dist/components/Checkbox.js +13 -6
  41. package/dist/components/CheckboxGroup.d.ts +6 -6
  42. package/dist/components/CheckboxGroup.js +6 -6
  43. package/dist/components/CodeBlock.d.ts +1 -1
  44. package/dist/components/CodeBlock.js +1 -1
  45. package/dist/components/CodexModelSelector.d.ts +23 -28
  46. package/dist/components/CodexModelSelector.js +116 -94
  47. package/dist/components/Collapsible.d.ts +2 -4
  48. package/dist/components/Collapsible.js +9 -7
  49. package/dist/components/Combobox.d.ts +2 -2
  50. package/dist/components/Combobox.js +20 -22
  51. package/dist/components/Commit.d.ts +5 -5
  52. package/dist/components/Commit.js +6 -6
  53. package/dist/components/Context.js +5 -1
  54. package/dist/components/ContextMenu.d.ts +20 -72
  55. package/dist/components/ContextMenu.js +46 -56
  56. package/dist/components/Conversation.d.ts +1 -1
  57. package/dist/components/Conversation.js +1 -1
  58. package/dist/components/Dialog.d.ts +38 -30
  59. package/dist/components/Dialog.js +46 -34
  60. package/dist/components/EnvironmentVariables.d.ts +1 -1
  61. package/dist/components/EnvironmentVariables.js +5 -5
  62. package/dist/components/Field.d.ts +3 -3
  63. package/dist/components/Field.js +7 -8
  64. package/dist/components/Fieldset.d.ts +2 -2
  65. package/dist/components/Fieldset.js +2 -2
  66. package/dist/components/FileTree.js +1 -1
  67. package/dist/components/Label.d.ts +1 -1
  68. package/dist/components/Label.js +1 -1
  69. package/dist/components/McpServerPicker.js +21 -19
  70. package/dist/components/Menu.d.ts +2 -2
  71. package/dist/components/Menu.js +39 -49
  72. package/dist/components/Menubar.d.ts +16 -52
  73. package/dist/components/Menubar.js +44 -56
  74. package/dist/components/Message.d.ts +1 -1
  75. package/dist/components/Message.js +6 -6
  76. package/dist/components/MessageScroller.d.ts +1 -1
  77. package/dist/components/MessageScroller.js +1 -1
  78. package/dist/components/Meter.js +5 -0
  79. package/dist/components/ModelSelector.d.ts +1 -1
  80. package/dist/components/ModelSelector.js +1 -1
  81. package/dist/components/NavigationMenu.d.ts +3 -14
  82. package/dist/components/NavigationMenu.js +22 -38
  83. package/dist/components/NumberField.js +6 -0
  84. package/dist/components/Popover.d.ts +21 -44
  85. package/dist/components/Popover.js +33 -23
  86. package/dist/components/PreviewCard.d.ts +20 -18
  87. package/dist/components/PreviewCard.js +30 -20
  88. package/dist/components/PricingPage.js +30 -29
  89. package/dist/components/Progress.d.ts +7 -3
  90. package/dist/components/Progress.js +9 -4
  91. package/dist/components/PromptInput.d.ts +2 -2
  92. package/dist/components/PromptInput.js +139 -54
  93. package/dist/components/Queue.d.ts +7 -7
  94. package/dist/components/Queue.js +6 -6
  95. package/dist/components/RadioGroup.d.ts +10 -9
  96. package/dist/components/RadioGroup.js +8 -9
  97. package/dist/components/Reasoning.d.ts +4 -4
  98. package/dist/components/Reasoning.js +10 -6
  99. package/dist/components/ScrollArea.d.ts +2 -9
  100. package/dist/components/ScrollArea.js +5 -23
  101. package/dist/components/Select.d.ts +2 -2
  102. package/dist/components/Select.js +100 -134
  103. package/dist/components/Slider.d.ts +10 -7
  104. package/dist/components/Slider.js +12 -11
  105. package/dist/components/Sources.d.ts +4 -4
  106. package/dist/components/Sources.js +8 -5
  107. package/dist/components/Stepper.js +1 -1
  108. package/dist/components/Switch.d.ts +6 -3
  109. package/dist/components/Switch.js +7 -4
  110. package/dist/components/Tabs.d.ts +2 -2
  111. package/dist/components/Tabs.js +9 -4
  112. package/dist/components/Task.d.ts +4 -4
  113. package/dist/components/Task.js +10 -6
  114. package/dist/components/Terminal.d.ts +2 -2
  115. package/dist/components/Terminal.js +5 -5
  116. package/dist/components/TestResults.d.ts +4 -4
  117. package/dist/components/TestResults.js +5 -5
  118. package/dist/components/ThinkChat.d.ts +9 -2
  119. package/dist/components/ThinkChat.js +1 -1
  120. package/dist/components/ThinkChatActivity.d.ts +1 -1
  121. package/dist/components/ThinkChatActivity.js +1 -1
  122. package/dist/components/ThinkChatToolPanels.js +8 -8
  123. package/dist/components/ThinkExecutionWorkbench.js +28 -28
  124. package/dist/components/ThinkFullApp.js +8 -8
  125. package/dist/components/ThinkThreadPicker.js +1 -1
  126. package/dist/components/ThinkThreadShell.js +5 -5
  127. package/dist/components/Toast.js +7 -0
  128. package/dist/components/ToggleGroup.d.ts +6 -2
  129. package/dist/components/ToggleGroup.js +6 -2
  130. package/dist/components/Toolbar.js +6 -0
  131. package/dist/components/Tooltip.d.ts +36 -27
  132. package/dist/components/Tooltip.js +45 -29
  133. package/dist/components/WebPreview.d.ts +1 -1
  134. package/dist/components/WebPreview.js +3 -3
  135. package/dist/components/WorkspaceExplorer.d.ts +6 -8
  136. package/dist/components/WorkspaceExplorer.js +6 -6
  137. package/dist/components/icons.d.ts +2 -2
  138. package/dist/components/icons.js +2 -2
  139. package/dist/{copy-button-C6JSKtFE.js → copy-button-DUMLYdsk.js} +7 -6
  140. package/dist/{copy-button-BKXqGiNm.d.ts → copy-button-DtPMgN7e.d.ts} +3 -2
  141. package/dist/icons-Ba9THQKz.js +64 -0
  142. package/dist/icons-CUCz_Sft.d.ts +210 -0
  143. package/dist/styles/accessibility.css +14 -0
  144. package/dist/styles/accordion.css +21 -61
  145. package/dist/styles/activity.css +23 -58
  146. package/dist/styles/agent-chat.css +45 -4
  147. package/dist/styles/agent-connection.css +8 -10
  148. package/dist/styles/alert-dialog.css +20 -26
  149. package/dist/styles/artifact.css +6 -6
  150. package/dist/styles/attachment-preview.css +1 -1
  151. package/dist/styles/autocomplete.css +5 -170
  152. package/dist/styles/avatar.css +8 -8
  153. package/dist/styles/badge.css +8 -10
  154. package/dist/styles/base-ui-motion.css +176 -0
  155. package/dist/styles/base.css +19 -25
  156. package/dist/styles/browser-live-view.css +7 -7
  157. package/dist/styles/browser-replay.css +5 -5
  158. package/dist/styles/browser-run-panel.css +5 -5
  159. package/dist/styles/button.css +48 -43
  160. package/dist/styles/card.css +3 -5
  161. package/dist/styles/chain-of-thought.css +14 -70
  162. package/dist/styles/chatgpt-sign-in-screen.css +3 -3
  163. package/dist/styles/checkbox-group.css +1 -1
  164. package/dist/styles/checkbox.css +3 -7
  165. package/dist/styles/code-block.css +10 -10
  166. package/dist/styles/codex-model-selector.css +33 -44
  167. package/dist/styles/collapsible.css +11 -27
  168. package/dist/styles/combobox.css +3 -149
  169. package/dist/styles/commit.css +19 -35
  170. package/dist/styles/context-menu.css +1 -77
  171. package/dist/styles/context.css +12 -12
  172. package/dist/styles/conversation.css +7 -7
  173. package/dist/styles/dialog.css +34 -55
  174. package/dist/styles/environment-variables.css +10 -10
  175. package/dist/styles/field.css +16 -58
  176. package/dist/styles/fieldset.css +2 -2
  177. package/dist/styles/file-tree.css +7 -9
  178. package/dist/styles/index.css +8 -1
  179. package/dist/styles/input.css +1 -51
  180. package/dist/styles/label.css +2 -2
  181. package/dist/styles/marker.css +2 -4
  182. package/dist/styles/mcp-server-picker.css +5 -5
  183. package/dist/styles/menu.css +6 -153
  184. package/dist/styles/menubar.css +6 -105
  185. package/dist/styles/message-scroller.css +1 -1
  186. package/dist/styles/message.css +86 -8
  187. package/dist/styles/meter.css +4 -20
  188. package/dist/styles/model-selector.css +13 -13
  189. package/dist/styles/navigation-menu.css +14 -54
  190. package/dist/styles/number-field.css +8 -23
  191. package/dist/styles/popover.css +13 -68
  192. package/dist/styles/preview-card.css +5 -46
  193. package/dist/styles/pricing-page.css +43 -43
  194. package/dist/styles/progress.css +7 -16
  195. package/dist/styles/prompt-input.css +95 -44
  196. package/dist/styles/queue.css +12 -28
  197. package/dist/styles/radio.css +4 -8
  198. package/dist/styles/reasoning.css +3 -62
  199. package/dist/styles/recipes.css +475 -0
  200. package/dist/styles/select.css +7 -103
  201. package/dist/styles/shell.css +3 -3
  202. package/dist/styles/slider.css +5 -7
  203. package/dist/styles/sources.css +9 -66
  204. package/dist/styles/stepper.css +16 -14
  205. package/dist/styles/streamdown.css +9 -9
  206. package/dist/styles/switch.css +4 -7
  207. package/dist/styles/tabs.css +7 -8
  208. package/dist/styles/task.css +13 -42
  209. package/dist/styles/terminal.css +7 -7
  210. package/dist/styles/test-results.css +21 -37
  211. package/dist/styles/think-execution-workbench.css +23 -23
  212. package/dist/styles/think-full-app.css +12 -20
  213. package/dist/styles/think-resize-handle.css +2 -2
  214. package/dist/styles/think-thread-picker.css +19 -10
  215. package/dist/styles/think-thread-shell.css +7 -7
  216. package/dist/styles/toast.css +14 -25
  217. package/dist/styles/toggle-group.css +16 -14
  218. package/dist/styles/toggle.css +14 -15
  219. package/dist/styles/toolbar.css +13 -25
  220. package/dist/styles/tooltip.css +6 -16
  221. package/dist/styles/web-preview.css +15 -15
  222. package/dist/styles/workspace-explorer.css +14 -13
  223. package/dist/utils/codex-model-catalog.d.ts +142 -0
  224. package/dist/utils/codex-model-catalog.js +112 -0
  225. package/dist/utils/structured-code.d.ts +1 -1
  226. package/package.json +8 -2
  227. package/dist/Select-CRsKCJ9x.d.ts +0 -200
  228. package/dist/icons-CbjtbIJK.d.ts +0 -51
  229. package/dist/icons-D2Q5n5C1.js +0 -291
@@ -2,7 +2,7 @@
2
2
  display: flex;
3
3
  width: 100%;
4
4
  flex-direction: column;
5
- gap: 0.75rem;
5
+ gap: var(--sigvelo-spacing-3);
6
6
  }
7
7
 
8
8
  .field:is([data-invalid="true"], [data-invalid=""]) .field__label,
@@ -54,8 +54,8 @@
54
54
  display: flex;
55
55
  width: fit-content;
56
56
  gap: 0.5rem;
57
- font-family: var(--sigvelo-font-sans);
58
- font-size: 0.875rem;
57
+ font-family: inherit;
58
+ font-size: var(--sigvelo-text-sm);
59
59
  font-weight: var(--sigvelo-font-weight-semibold);
60
60
  line-height: 1;
61
61
  color: var(--sigvelo-color-text);
@@ -81,68 +81,26 @@
81
81
  .field[data-disabled] .field__label,
82
82
  .field[data-disabled] .field-title,
83
83
  .field__label[data-disabled] {
84
- opacity: 0.5;
84
+ opacity: var(--sigvelo-recipe-disabled-opacity);
85
85
  cursor: not-allowed;
86
86
  }
87
87
 
88
88
  .field__control {
89
89
  display: flex;
90
90
  width: 100%;
91
- height: 2.5rem;
92
- padding-block: 0.5rem;
93
- padding-inline: 0.75rem;
94
- font-family: var(--sigvelo-font-sans);
95
- font-size: 0.875rem;
96
- line-height: 1.25;
97
- color: var(--sigvelo-color-text);
98
- background-color: var(--sigvelo-color-canvas);
99
- border: var(--sigvelo-border-style) var(--sigvelo-border-width)
100
- var(--sigvelo-color-neutral-border-muted);
101
- border-radius: var(--sigvelo-radius-md);
102
- transition:
103
- border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
104
- box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
105
- }
106
-
107
- .field__control::placeholder {
108
- color: var(--sigvelo-color-text-muted);
109
- }
110
-
111
- .field__control:focus-visible {
112
- outline: none;
113
- border-color: var(--sigvelo-color-focus);
114
- box-shadow:
115
- 0 0 0 2px var(--sigvelo-color-canvas),
116
- 0 0 0 4px color-mix(in oklab, var(--sigvelo-color-focus), transparent 80%);
117
- }
118
-
119
- .field__control:disabled {
120
- opacity: 0.5;
121
- cursor: not-allowed;
122
- }
123
-
124
- .field__control:is([aria-invalid="true"], [data-invalid="true"], [data-invalid=""]) {
125
- border-color: var(--sigvelo-color-danger-bg);
126
- }
127
-
128
- .field__control:is([aria-invalid="true"], [data-invalid="true"], [data-invalid=""]):focus-visible {
129
- border-color: var(--sigvelo-color-danger-bg);
130
- box-shadow:
131
- 0 0 0 2px var(--sigvelo-color-canvas),
132
- 0 0 0 4px color-mix(in oklab, var(--sigvelo-color-danger-bg), transparent 80%);
133
91
  }
134
92
 
135
93
  .field__description {
136
- font-family: var(--sigvelo-font-sans);
137
- font-size: 0.75rem;
94
+ font-family: inherit;
95
+ font-size: var(--sigvelo-text-xs);
138
96
  line-height: 1.4;
139
97
  color: var(--sigvelo-color-text-muted);
140
98
  margin: 0;
141
99
  }
142
100
 
143
101
  .field__error {
144
- font-family: var(--sigvelo-font-sans);
145
- font-size: 0.75rem;
102
+ font-family: inherit;
103
+ font-size: var(--sigvelo-text-xs);
146
104
  line-height: 1.4;
147
105
  color: var(--sigvelo-color-danger-bg);
148
106
  margin: 0;
@@ -169,7 +127,7 @@
169
127
  }
170
128
 
171
129
  .field-set:has(> [data-slot="checkbox-group"], > [data-slot="radio-group"]) {
172
- gap: 0.75rem;
130
+ gap: var(--sigvelo-spacing-3);
173
131
  }
174
132
 
175
133
  .field-group {
@@ -183,12 +141,12 @@
183
141
  }
184
142
 
185
143
  .field-group:is([data-slot="checkbox-group"], [data-slot="radio-group"]) {
186
- gap: 0.75rem;
144
+ gap: var(--sigvelo-spacing-3);
187
145
  }
188
146
 
189
147
  .field-content {
190
148
  flex: 1;
191
- gap: 0.375rem;
149
+ gap: var(--sigvelo-spacing-1-5);
192
150
  line-height: 1.375;
193
151
  }
194
152
 
@@ -200,12 +158,12 @@
200
158
  }
201
159
 
202
160
  .field-legend {
203
- margin-block-end: 0.75rem;
204
- font-size: 1rem;
161
+ margin-block-end: var(--sigvelo-spacing-3);
162
+ font-size: var(--sigvelo-text-base);
205
163
  }
206
164
 
207
165
  .field-legend[data-variant="label"] {
208
- font-size: 0.875rem;
166
+ font-size: var(--sigvelo-text-sm);
209
167
  }
210
168
 
211
169
  .field-title {
@@ -213,7 +171,7 @@
213
171
  width: fit-content;
214
172
  align-items: center;
215
173
  gap: 0.5rem;
216
- font-size: 0.875rem;
174
+ font-size: var(--sigvelo-text-sm);
217
175
  }
218
176
 
219
177
  .field-separator {
@@ -223,7 +181,7 @@
223
181
  justify-content: center;
224
182
  min-height: 1.25rem;
225
183
  color: var(--sigvelo-color-text-muted);
226
- font-size: 0.875rem;
184
+ font-size: var(--sigvelo-text-sm);
227
185
  }
228
186
 
229
187
  .field-separator__line {
@@ -12,8 +12,8 @@
12
12
  .fieldset__legend {
13
13
  padding: 0 0.5rem;
14
14
  margin: 0 -0.5rem;
15
- font-family: var(--sigvelo-font-sans);
16
- font-size: 0.875rem;
15
+ font-family: inherit;
16
+ font-size: var(--sigvelo-text-sm);
17
17
  font-weight: var(--sigvelo-font-weight-bold);
18
18
  color: var(--sigvelo-color-text);
19
19
  }
@@ -1,12 +1,12 @@
1
1
  .file-tree {
2
2
  width: 100%;
3
- font-family: var(--sigvelo-font-sans);
3
+ font-family: inherit;
4
4
  color: var(--sigvelo-color-text);
5
5
  background-color: var(--sigvelo-color-surface);
6
6
  border: var(--sigvelo-border-style) var(--sigvelo-border-width)
7
7
  var(--sigvelo-color-neutral-border-subtle);
8
8
  border-radius: var(--sigvelo-radius-md);
9
- padding-block: 0.375rem;
9
+ padding-block: var(--sigvelo-spacing-1-5);
10
10
  overflow: auto;
11
11
  }
12
12
 
@@ -27,7 +27,7 @@
27
27
  .file-tree__node {
28
28
  display: flex;
29
29
  align-items: center;
30
- gap: 0.375rem;
30
+ gap: var(--sigvelo-spacing-1-5);
31
31
  width: 100%;
32
32
  padding-block: 0.25rem;
33
33
  padding-inline-end: 0.5rem;
@@ -35,11 +35,11 @@
35
35
  border: none;
36
36
  color: var(--sigvelo-color-text);
37
37
  font-family: inherit;
38
- font-size: 0.8125rem;
38
+ font-size: var(--sigvelo-text-compact);
39
39
  text-align: start;
40
40
  cursor: pointer;
41
41
  border-radius: var(--sigvelo-radius-sm);
42
- transition: background-color 120ms ease;
42
+ transition: background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
43
43
  }
44
44
 
45
45
  .file-tree__node:hover:not([data-disabled]) {
@@ -50,9 +50,7 @@
50
50
  .file-tree__node:focus-visible {
51
51
  outline: none;
52
52
  background-color: var(--sigvelo-color-neutral-bg-muted);
53
- box-shadow:
54
- 0 0 0 2px var(--sigvelo-color-canvas),
55
- 0 0 0 4px var(--sigvelo-color-focus);
53
+ box-shadow: var(--sigvelo-recipe-focus-shadow);
56
54
  }
57
55
 
58
56
  .file-tree__node[data-selected] {
@@ -99,7 +97,7 @@
99
97
  .file-tree__actions {
100
98
  display: inline-flex;
101
99
  align-items: center;
102
- gap: 0.125rem;
100
+ gap: var(--sigvelo-spacing-0-5);
103
101
  flex-shrink: 0;
104
102
  opacity: 0;
105
103
  transition: opacity var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
@@ -1,10 +1,14 @@
1
- @layer reset, tokens, base, components, utilities, overrides;
1
+ @layer reset, tokens, base, recipes, components, utilities, overrides;
2
2
 
3
3
  /* Design Tokens */
4
4
  @import "./tokens.css" layer(tokens);
5
5
 
6
6
  /* Base Styles */
7
7
  @import "./base.css" layer(base);
8
+ @import "./base-ui-motion.css" layer(base);
9
+
10
+ /* Shared visual contracts */
11
+ @import "./recipes.css" layer(recipes);
8
12
 
9
13
  /* Components */
10
14
  @import "./accordion.css" layer(components);
@@ -95,3 +99,6 @@
95
99
 
96
100
  /* Page Components */
97
101
  @import "./pricing-page.css" layer(components);
102
+
103
+ /* Accessibility system overrides */
104
+ @import "./accessibility.css" layer(overrides);
@@ -1,27 +1,6 @@
1
1
  .input {
2
2
  display: flex;
3
3
  width: 100%;
4
- min-width: 0;
5
- height: var(--sigvelo-control-height-md);
6
- padding-block: 0.5rem;
7
- padding-inline: 0.75rem;
8
- font-family: var(--sigvelo-font-sans);
9
- font-size: var(--sigvelo-control-text-md);
10
- line-height: 1.25;
11
- color: var(--sigvelo-color-text);
12
- background-color: var(--sigvelo-color-canvas);
13
- border: var(--sigvelo-border-style) var(--sigvelo-border-width)
14
- var(--sigvelo-color-neutral-border-muted);
15
- border-radius: var(--sigvelo-radius-md);
16
- transition:
17
- color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
18
- border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
19
- box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
20
- }
21
-
22
- /* :where keeps specificity below the invalid rules so danger borders win on hover */
23
- .input:where(:hover:not(:disabled)) {
24
- border-color: var(--sigvelo-color-focus);
25
4
  }
26
5
 
27
6
  .input::selection {
@@ -29,15 +8,11 @@
29
8
  background-color: var(--sigvelo-color-selection-bg);
30
9
  }
31
10
 
32
- .input::placeholder {
33
- color: var(--sigvelo-color-text-muted);
34
- }
35
-
36
11
  .input::file-selector-button {
37
12
  display: inline-flex;
38
13
  align-items: center;
39
14
  height: 1.75rem;
40
- margin-inline-end: 0.75rem;
15
+ margin-inline-end: var(--sigvelo-spacing-3);
41
16
  padding: 0;
42
17
  font: inherit;
43
18
  font-size: var(--sigvelo-text-sm);
@@ -46,28 +21,3 @@
46
21
  background-color: transparent;
47
22
  border: 0;
48
23
  }
49
-
50
- .input:focus-visible {
51
- outline: none;
52
- border-color: var(--sigvelo-color-focus);
53
- box-shadow:
54
- 0 0 0 2px var(--sigvelo-color-canvas),
55
- 0 0 0 4px color-mix(in oklab, var(--sigvelo-color-focus), transparent 80%);
56
- }
57
-
58
- .input:disabled {
59
- pointer-events: none;
60
- opacity: 0.5;
61
- cursor: not-allowed;
62
- }
63
-
64
- .input:is([aria-invalid="true"], [data-invalid="true"], [data-invalid=""]) {
65
- border-color: var(--sigvelo-color-danger-bg);
66
- }
67
-
68
- .input:is([aria-invalid="true"], [data-invalid="true"], [data-invalid=""]):focus-visible {
69
- border-color: var(--sigvelo-color-danger-bg);
70
- box-shadow:
71
- 0 0 0 2px var(--sigvelo-color-canvas),
72
- 0 0 0 4px color-mix(in oklab, var(--sigvelo-color-danger-bg), transparent 80%);
73
- }
@@ -2,8 +2,8 @@
2
2
  display: flex;
3
3
  align-items: center;
4
4
  gap: 0.5rem;
5
- font-family: var(--sigvelo-font-sans);
6
- font-size: 0.875rem;
5
+ font-family: inherit;
6
+ font-size: var(--sigvelo-text-sm);
7
7
  font-weight: var(--sigvelo-font-weight-semibold);
8
8
  line-height: 1;
9
9
  color: var(--sigvelo-color-text);
@@ -5,7 +5,7 @@
5
5
  gap: 0.5rem;
6
6
  width: 100%;
7
7
  min-height: 1rem;
8
- font-family: var(--sigvelo-font-sans);
8
+ font-family: inherit;
9
9
  font-size: var(--sigvelo-text-sm);
10
10
  line-height: 1.5;
11
11
  color: var(--sigvelo-color-text-muted);
@@ -32,9 +32,7 @@
32
32
  .marker:where(a, button):focus-visible {
33
33
  outline: none;
34
34
  border-radius: var(--sigvelo-radius-sm);
35
- box-shadow:
36
- 0 0 0 2px var(--sigvelo-color-canvas),
37
- 0 0 0 4px var(--sigvelo-color-focus);
35
+ box-shadow: var(--sigvelo-recipe-focus-shadow);
38
36
  }
39
37
 
40
38
  .marker--separator::before,
@@ -80,7 +80,7 @@
80
80
  border-radius: var(--sigvelo-radius-sm);
81
81
  background-color: var(--sigvelo-color-neutral-bg-subtle);
82
82
  color: var(--sigvelo-color-neutral-text-on-subtle);
83
- font-size: 0.75rem;
83
+ font-size: var(--sigvelo-text-xs);
84
84
  font-weight: var(--sigvelo-font-weight-bold);
85
85
  line-height: 1;
86
86
  text-transform: uppercase;
@@ -89,7 +89,7 @@
89
89
  .mcp-server-picker__copy {
90
90
  display: flex;
91
91
  align-items: baseline;
92
- gap: 0.625rem;
92
+ gap: var(--sigvelo-spacing-2-5);
93
93
  min-inline-size: 0;
94
94
  }
95
95
 
@@ -122,7 +122,7 @@
122
122
  .mcp-server-picker__row-actions {
123
123
  display: inline-flex;
124
124
  align-items: center;
125
- gap: 0.125rem;
125
+ gap: var(--sigvelo-spacing-0-5);
126
126
  padding-inline-end: 0.5rem;
127
127
  }
128
128
 
@@ -175,9 +175,9 @@
175
175
 
176
176
  .mcp-server-picker__empty {
177
177
  padding-block: 0.5rem;
178
- padding-inline: 0.75rem;
178
+ padding-inline: var(--sigvelo-spacing-3);
179
179
  color: var(--sigvelo-color-text-muted);
180
- font-size: 0.875rem;
180
+ font-size: var(--sigvelo-text-sm);
181
181
  }
182
182
 
183
183
  @media (width < 30rem) {
@@ -1,84 +1,10 @@
1
- .menu__trigger {
2
- display: inline-flex;
3
- align-items: center;
4
- justify-content: center;
5
- gap: 0.5rem;
6
- padding-block: 0.5rem;
7
- padding-inline: 1rem;
8
- font-family: var(--sigvelo-font-sans);
9
- font-size: 0.875rem;
10
- font-weight: var(--sigvelo-font-weight-semibold);
11
- line-height: 1.25;
12
- color: var(--sigvelo-color-text);
13
- background-color: var(--sigvelo-color-canvas);
14
- border: var(--sigvelo-border-style) var(--sigvelo-border-width)
15
- var(--sigvelo-color-neutral-border-muted);
16
- border-radius: var(--sigvelo-radius-md);
17
- cursor: pointer;
18
- transition:
19
- background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
20
- border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
21
- }
22
-
23
- .menu__trigger:hover {
24
- background-color: var(--sigvelo-color-neutral-bg-subtle);
25
- color: var(--sigvelo-color-neutral-text-on-subtle);
26
- }
27
-
28
- .menu__trigger:focus-visible {
29
- outline: none;
30
- box-shadow:
31
- 0 0 0 2px var(--sigvelo-color-canvas),
32
- 0 0 0 4px var(--sigvelo-color-focus);
33
- }
34
-
35
- .menu__trigger[data-popup-open] {
36
- background-color: var(--sigvelo-color-neutral-bg-subtle);
37
- }
38
-
39
1
  .menu__positioner {
40
- z-index: 50;
41
2
  outline: none;
42
3
  }
43
4
 
44
5
  .menu__popup {
45
6
  min-width: 10rem;
46
- padding: 0.25rem;
47
- font-family: var(--sigvelo-font-sans);
48
- background-color: var(--sigvelo-color-canvas);
49
- border: var(--sigvelo-border-style) var(--sigvelo-border-width)
50
- var(--sigvelo-color-neutral-border-muted);
51
- border-radius: var(--sigvelo-radius-md);
52
- box-shadow:
53
- 0 10px 15px -3px color-mix(in oklab, var(--sigvelo-color-text), transparent 90%),
54
- 0 4px 6px -4px color-mix(in oklab, var(--sigvelo-color-text), transparent 90%);
55
- outline: none;
56
- transform-origin: var(--transform-origin);
57
- transition:
58
- opacity var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
59
- transform var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
60
- }
61
-
62
- .menu__popup[data-starting-style],
63
- .menu__popup[data-ending-style] {
64
- opacity: 0;
65
- transform: scale(0.95);
66
- }
67
-
68
- .menu__item {
69
- display: flex;
70
- align-items: center;
71
- gap: 0.5rem;
72
- padding-block: 0.5rem;
73
- padding-inline: 0.75rem;
74
- font-size: 0.875rem;
75
- line-height: 1.25;
76
- color: var(--sigvelo-color-text);
77
- border-radius: var(--sigvelo-radius-sm);
78
- cursor: pointer;
79
- user-select: none;
80
- outline: none;
81
- transition: background-color 100ms ease;
7
+ overflow-y: auto;
82
8
  }
83
9
 
84
10
  .menu__item--inset,
@@ -86,11 +12,6 @@
86
12
  padding-inline-start: 2rem;
87
13
  }
88
14
 
89
- .menu__item[data-highlighted] {
90
- background-color: var(--sigvelo-color-neutral-bg-subtle);
91
- color: var(--sigvelo-color-neutral-text-on-subtle);
92
- }
93
-
94
15
  .menu__item[data-variant="destructive"] {
95
16
  color: var(--sigvelo-color-danger-text);
96
17
  }
@@ -100,27 +21,18 @@
100
21
  color: var(--sigvelo-color-danger-text-on-subtle);
101
22
  }
102
23
 
103
- .menu__item[data-disabled] {
104
- opacity: 0.5;
105
- pointer-events: none;
106
- }
107
-
108
24
  .menu__group {
109
25
  display: flex;
110
26
  flex-direction: column;
111
27
  }
112
28
 
113
29
  .menu__group-label {
114
- padding-block: 0.5rem;
115
- padding-inline: 0.75rem;
116
- font-size: 0.75rem;
117
- font-weight: var(--sigvelo-font-weight-semibold);
118
- color: var(--sigvelo-color-text-muted);
30
+ padding-block: var(--sigvelo-spacing-2);
119
31
  }
120
32
 
121
33
  .menu__arrow {
122
- width: 0.75rem;
123
- height: 0.75rem;
34
+ width: var(--sigvelo-spacing-3);
35
+ height: var(--sigvelo-spacing-3);
124
36
  background-color: var(--sigvelo-color-canvas);
125
37
  border: var(--sigvelo-border-style) var(--sigvelo-border-width)
126
38
  var(--sigvelo-color-neutral-border-muted);
@@ -147,46 +59,11 @@
147
59
  border-right: none;
148
60
  }
149
61
 
150
- .menu__separator {
151
- height: 1px;
152
- margin: 0.25rem 0;
153
- background-color: var(--sigvelo-color-neutral-border-muted);
154
- }
155
-
156
62
  .menu__radio-group {
157
63
  display: flex;
158
64
  flex-direction: column;
159
65
  }
160
66
 
161
- .menu__radio-item,
162
- .menu__checkbox-item {
163
- display: flex;
164
- align-items: center;
165
- gap: 0.5rem;
166
- padding-block: 0.5rem;
167
- padding-inline: 0.75rem;
168
- font-size: 0.875rem;
169
- line-height: 1.25;
170
- color: var(--sigvelo-color-text);
171
- border-radius: var(--sigvelo-radius-sm);
172
- cursor: pointer;
173
- user-select: none;
174
- outline: none;
175
- transition: background-color 100ms ease;
176
- }
177
-
178
- .menu__radio-item[data-highlighted],
179
- .menu__checkbox-item[data-highlighted] {
180
- background-color: var(--sigvelo-color-neutral-bg-subtle);
181
- color: var(--sigvelo-color-neutral-text-on-subtle);
182
- }
183
-
184
- .menu__radio-item[data-disabled],
185
- .menu__checkbox-item[data-disabled] {
186
- opacity: 0.5;
187
- pointer-events: none;
188
- }
189
-
190
67
  .menu__radio-indicator,
191
68
  .menu__checkbox-indicator {
192
69
  display: flex;
@@ -206,39 +83,15 @@
206
83
 
207
84
  .menu__checkbox-indicator::before {
208
85
  content: "";
209
- width: 0.625rem;
210
- height: 0.375rem;
86
+ width: var(--sigvelo-spacing-2-5);
87
+ height: var(--sigvelo-spacing-1-5);
211
88
  border-inline-start: 2px solid currentColor;
212
89
  border-block-end: 2px solid currentColor;
213
90
  transform: rotate(-45deg) translateY(-1px);
214
91
  }
215
92
 
216
- .menu__shortcut {
217
- margin-inline-start: auto;
218
- color: var(--sigvelo-color-text-muted);
219
- font-size: 0.75rem;
220
- }
221
-
222
93
  .menu__submenu-trigger {
223
- display: flex;
224
- align-items: center;
225
94
  justify-content: space-between;
226
- gap: 0.5rem;
227
- padding-block: 0.5rem;
228
- padding-inline: 0.75rem;
229
- font-size: 0.875rem;
230
- line-height: 1.25;
231
- color: var(--sigvelo-color-text);
232
- border-radius: var(--sigvelo-radius-sm);
233
- cursor: pointer;
234
- user-select: none;
235
- outline: none;
236
- transition: background-color 100ms ease;
237
- }
238
-
239
- .menu__submenu-trigger[data-highlighted] {
240
- background-color: var(--sigvelo-color-neutral-bg-subtle);
241
- color: var(--sigvelo-color-neutral-text-on-subtle);
242
95
  }
243
96
 
244
97
  .menu__submenu-trigger::after {