@threadlabs/looma 0.5.2 → 0.6.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/components/shared/overlay.js +3 -0
  2. package/components/ui-button/ui-button.html +46 -26
  3. package/components/ui-callout/ui-callout.html +1 -1
  4. package/components/ui-checkbox/ui-checkbox.html +1 -1
  5. package/components/ui-cluster/ui-cluster.html +6 -6
  6. package/components/ui-combobox/ui-combobox.html +23 -23
  7. package/components/ui-container/ui-container.html +4 -4
  8. package/components/ui-context-menu/ui-context-menu.html +2 -2
  9. package/components/ui-dialog/ui-dialog.html +12 -12
  10. package/components/ui-disclosure/ui-disclosure.html +19 -4
  11. package/components/ui-editable/ui-editable.html +6 -6
  12. package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.html +20 -20
  13. package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +25 -25
  14. package/components/ui-editor-slash-menu/ui-editor-slash-menu.html +39 -39
  15. package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +20 -20
  16. package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +48 -48
  17. package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +34 -34
  18. package/components/ui-editor-toolbar/ui-editor-toolbar.html +9 -9
  19. package/components/ui-floating-action-button/ui-floating-action-button.html +16 -22
  20. package/components/ui-grid/ui-grid.html +6 -6
  21. package/components/ui-icon-button/ui-icon-button.html +45 -40
  22. package/components/ui-input/ui-input.html +2 -2
  23. package/components/ui-menu/ui-menu.html +15 -4
  24. package/components/ui-menu-item/ui-menu-item.html +5 -5
  25. package/components/ui-popover/ui-popover.html +3 -3
  26. package/components/ui-reel/ui-reel.html +6 -6
  27. package/components/ui-search-result-row/ui-search-result-row.html +9 -9
  28. package/components/ui-search-shell/ui-search-shell.html +3 -3
  29. package/components/ui-select/ui-select.html +2 -2
  30. package/components/ui-sidebar/ui-sidebar.html +11 -11
  31. package/components/ui-stack/ui-stack.html +6 -6
  32. package/components/ui-switcher/ui-switcher.html +6 -6
  33. package/components/ui-tabs/ui-tabs.html +18 -4
  34. package/components/ui-textarea/ui-textarea.html +2 -2
  35. package/components/ui-toast-region/ui-toast-region.html +2 -2
  36. package/components/ui-tooltip/ui-tooltip.html +1 -1
  37. package/components/ui-top-bar/ui-top-bar.html +5 -5
  38. package/components/ui-tree/ui-tree.html +7 -0
  39. package/components/ui-tree-item/ui-tree-item.html +15 -7
  40. package/dist/index.js +1 -1
  41. package/package.json +1 -1
  42. package/styles/ui-button.css +47 -26
  43. package/styles/ui-callout.css +1 -1
  44. package/styles/ui-checkbox.css +1 -1
  45. package/styles/ui-cluster.css +6 -6
  46. package/styles/ui-combobox.css +23 -23
  47. package/styles/ui-container.css +4 -4
  48. package/styles/ui-context-menu.css +2 -2
  49. package/styles/ui-dialog.css +12 -12
  50. package/styles/ui-disclosure.css +22 -6
  51. package/styles/ui-editable.css +6 -6
  52. package/styles/ui-editor-insert-table-grid.css +20 -20
  53. package/styles/ui-editor-mention-menu.css +25 -25
  54. package/styles/ui-editor-slash-menu.css +39 -39
  55. package/styles/ui-editor-table-context-menu.css +20 -20
  56. package/styles/ui-editor-table-overlay.css +48 -48
  57. package/styles/ui-editor-table-toolbar.css +34 -34
  58. package/styles/ui-editor-toolbar.css +9 -9
  59. package/styles/ui-floating-action-button.css +16 -22
  60. package/styles/ui-grid.css +6 -6
  61. package/styles/ui-icon-button.css +45 -40
  62. package/styles/ui-input.css +2 -2
  63. package/styles/ui-menu-item.css +5 -5
  64. package/styles/ui-menu.css +18 -6
  65. package/styles/ui-popover.css +3 -3
  66. package/styles/ui-reel.css +6 -6
  67. package/styles/ui-search-result-row.css +9 -9
  68. package/styles/ui-search-shell.css +3 -3
  69. package/styles/ui-select.css +2 -2
  70. package/styles/ui-sidebar.css +11 -11
  71. package/styles/ui-stack.css +6 -6
  72. package/styles/ui-switcher.css +6 -6
  73. package/styles/ui-tabs.css +20 -6
  74. package/styles/ui-textarea.css +2 -2
  75. package/styles/ui-toast-region.css +2 -2
  76. package/styles/ui-tooltip.css +1 -1
  77. package/styles/ui-top-bar.css +5 -5
  78. package/styles/ui-tree-item.css +21 -8
  79. package/styles/ui-tree.css +7 -1
  80. package/theme-dark.css +46 -103
  81. package/theme-high-contrast.css +22 -22
  82. package/theme-light.css +17 -41
  83. package/tokens.css +154 -201
  84. package/vanilla/UiButton.d.ts +1 -0
  85. package/vanilla/UiButton.js +1 -1
  86. package/vanilla/UiDisclosure.d.ts +1 -0
  87. package/vanilla/UiDisclosure.js +1 -1
  88. package/vanilla/UiMenu.d.ts +1 -0
  89. package/vanilla/UiMenu.js +1 -1
  90. package/vanilla/UiTabs.d.ts +1 -0
  91. package/vanilla/UiTabs.js +1 -1
  92. package/vanilla/UiTree.d.ts +1 -0
  93. package/vanilla/UiTree.js +1 -1
  94. package/vue/UiButton.d.ts +2 -0
  95. package/vue/UiButton.vue +56 -41
  96. package/vue/UiCallout.vue +1 -1
  97. package/vue/UiCheckbox.vue +1 -1
  98. package/vue/UiCluster.vue +6 -6
  99. package/vue/UiCombobox.vue +23 -23
  100. package/vue/UiContainer.vue +4 -4
  101. package/vue/UiContextMenu.vue +2 -2
  102. package/vue/UiDialog.vue +12 -12
  103. package/vue/UiDisclosure.d.ts +2 -0
  104. package/vue/UiDisclosure.vue +21 -4
  105. package/vue/UiEditable.vue +6 -6
  106. package/vue/UiEditorInsertTableGrid.vue +20 -20
  107. package/vue/UiEditorMentionMenu.vue +25 -25
  108. package/vue/UiEditorSlashMenu.vue +39 -39
  109. package/vue/UiEditorTableContextMenu.vue +20 -20
  110. package/vue/UiEditorTableOverlay.vue +48 -57
  111. package/vue/UiEditorTableToolbar.vue +34 -34
  112. package/vue/UiEditorToolbar.vue +9 -9
  113. package/vue/UiFloatingActionButton.vue +17 -22
  114. package/vue/UiGrid.vue +6 -6
  115. package/vue/UiIconButton.vue +45 -55
  116. package/vue/UiInput.vue +2 -2
  117. package/vue/UiMenu.d.ts +2 -0
  118. package/vue/UiMenu.vue +17 -7
  119. package/vue/UiMenuItem.vue +6 -5
  120. package/vue/UiPopover.vue +3 -3
  121. package/vue/UiReel.vue +6 -6
  122. package/vue/UiSearchResultRow.vue +10 -13
  123. package/vue/UiSearchShell.vue +3 -3
  124. package/vue/UiSelect.vue +2 -2
  125. package/vue/UiSidebar.vue +11 -16
  126. package/vue/UiStack.vue +6 -6
  127. package/vue/UiSwitcher.vue +6 -6
  128. package/vue/UiTabs.d.ts +2 -0
  129. package/vue/UiTabs.vue +21 -4
  130. package/vue/UiTextarea.vue +2 -2
  131. package/vue/UiToastRegion.vue +2 -2
  132. package/vue/UiTooltip.vue +1 -1
  133. package/vue/UiTopBar.vue +5 -5
  134. package/vue/UiTree.d.ts +2 -0
  135. package/vue/UiTree.vue +24 -1
  136. package/vue/UiTreeItem.vue +16 -8
  137. package/vue/chunks/UiButton.js +4 -2
  138. package/vue/chunks/UiCallout.js +1 -1
  139. package/vue/chunks/UiCheckbox.js +1 -1
  140. package/vue/chunks/UiCluster.js +1 -1
  141. package/vue/chunks/UiCombobox.js +1 -1
  142. package/vue/chunks/UiContainer.js +1 -1
  143. package/vue/chunks/UiContextMenu.js +1 -1
  144. package/vue/chunks/UiDialog.js +1 -1
  145. package/vue/chunks/UiDisclosure.js +3 -2
  146. package/vue/chunks/UiEditable.js +1 -1
  147. package/vue/chunks/UiEditorInsertTableGrid.js +1 -1
  148. package/vue/chunks/UiEditorMentionMenu.js +1 -1
  149. package/vue/chunks/UiEditorSlashMenu.js +1 -1
  150. package/vue/chunks/UiEditorTableContextMenu.js +1 -1
  151. package/vue/chunks/UiEditorTableOverlay.js +1 -1
  152. package/vue/chunks/UiEditorTableToolbar.js +1 -1
  153. package/vue/chunks/UiEditorToolbar.js +1 -1
  154. package/vue/chunks/UiFloatingActionButton.js +1 -1
  155. package/vue/chunks/UiGrid.js +1 -1
  156. package/vue/chunks/UiIconButton.js +1 -1
  157. package/vue/chunks/UiInput.js +1 -1
  158. package/vue/chunks/UiMenu.js +3 -2
  159. package/vue/chunks/UiMenuItem.js +1 -1
  160. package/vue/chunks/UiPopover.js +1 -1
  161. package/vue/chunks/UiReel.js +1 -1
  162. package/vue/chunks/UiSearchResultRow.js +1 -1
  163. package/vue/chunks/UiSearchShell.js +1 -1
  164. package/vue/chunks/UiSelect.js +1 -1
  165. package/vue/chunks/UiSidebar.js +1 -1
  166. package/vue/chunks/UiStack.js +1 -1
  167. package/vue/chunks/UiSwitcher.js +1 -1
  168. package/vue/chunks/UiTabs.js +7 -2
  169. package/vue/chunks/UiTextarea.js +1 -1
  170. package/vue/chunks/UiToastRegion.js +1 -1
  171. package/vue/chunks/UiTooltip.js +1 -1
  172. package/vue/chunks/UiTopBar.js +1 -1
  173. package/vue/chunks/UiTree.js +8 -2
  174. package/vue/chunks/UiTreeItem.js +1 -1
  175. package/vue/components.css +1114 -1090
  176. package/vue/editor/LoomaEditor.d.ts +11 -0
  177. package/vue/editor/index.js +17 -0
@@ -172,36 +172,36 @@
172
172
  display: none;
173
173
  }
174
174
 
175
- [data-component~="ui-button"][data-v-44d2f337] {
175
+ [data-component~="ui-button"][data-v-405b2c60] {
176
176
  display: inline-flex;
177
177
  align-items: center;
178
178
  justify-content: center;
179
179
  vertical-align: middle;
180
180
  color: var(--ui-action-secondary-text, var(--ui-text-primary));
181
181
  }
182
- [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-44d2f337] {
182
+ [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-405b2c60] {
183
183
  color: var(--ui-action-primary-text, var(--ui-text-on-accent));
184
184
  }
185
- [data-component~="ui-button"][data-ui-button-state~="align=start"][data-v-44d2f337] {
185
+ [data-component~="ui-button"][data-ui-button-state~="align=start"][data-v-405b2c60] {
186
186
  justify-content: flex-start;
187
187
  text-align: start;
188
188
  }
189
- [data-component~="ui-button"][data-ui-button-state~="stretch"][data-v-44d2f337] {
189
+ [data-component~="ui-button"][data-ui-button-state~="stretch"][data-v-405b2c60] {
190
190
  display: flex;
191
191
  inline-size: 100%;
192
192
  }
193
- [data-component~="ui-button"][data-v-44d2f337] {
193
+ [data-component~="ui-button"][data-v-405b2c60] {
194
194
  appearance: none;
195
- min-block-size: var(--ui-button-min-block-size, var(--ui-control-size-md, 2.5rem));
195
+ min-block-size: var(--ui-button-min-block-size, var(--ui-control-size-md));
196
196
  border: 1px solid var(--ui-button-border, var(--ui-border-strong));
197
- border-radius: var(--ui-button-radius, var(--ui-radius-2));
197
+ border-radius: var(--ui-button-radius, var(--ui-radius-md));
198
198
  background: var(--ui-button-surface, var(--ui-surface-elevated));
199
199
  color: var(--ui-button-text, var(--ui-action-secondary-text, var(--ui-text-primary)));
200
200
  font: inherit;
201
- font-weight: var(--ui-font-medium, 500);
201
+ font-weight: var(--ui-font-medium);
202
202
  line-height: var(--ui-line-height-tight);
203
203
  padding: var(--ui-space-2) var(--ui-space-3);
204
- background-image: var(--ui-raised-highlight, none);
204
+ background-image: var(--ui-raised-highlight);
205
205
  box-shadow: var(--ui-button-shadow, var(--ui-raised, var(--ui-shadow-xs)));
206
206
  cursor: pointer;
207
207
  transition:
@@ -213,29 +213,29 @@
213
213
  margin: 0;
214
214
  }
215
215
  @supports (text-box-trim: trim-both) {
216
- [data-component~="ui-button"][data-v-44d2f337] {
216
+ [data-component~="ui-button"][data-v-405b2c60] {
217
217
  text-box-trim: trim-both;
218
218
  text-box-edge: cap alphabetic;
219
219
  }
220
220
  }
221
- [data-component~="ui-button"][data-ui-button-state~="size=sm"][data-v-44d2f337] {
222
- min-block-size: var(--ui-control-size-sm, 2rem);
221
+ [data-component~="ui-button"][data-ui-button-state~="size=sm"][data-v-405b2c60] {
222
+ min-block-size: var(--ui-control-size-sm);
223
223
  padding: var(--ui-space-1) var(--ui-space-2);
224
224
  font-size: 0.875rem;
225
225
  }
226
- [data-component~="ui-button"][data-ui-button-state~="size=lg"][data-v-44d2f337] {
227
- min-block-size: var(--ui-control-size-lg, 3rem);
226
+ [data-component~="ui-button"][data-ui-button-state~="size=lg"][data-v-405b2c60] {
227
+ min-block-size: var(--ui-control-size-lg);
228
228
  padding: var(--ui-space-3) var(--ui-space-4);
229
229
  font-size: 1rem;
230
230
  }
231
- [data-component~="ui-button"][data-v-44d2f337]:hover:enabled {
231
+ [data-component~="ui-button"][data-v-405b2c60]:hover:enabled {
232
232
  background: var(--ui-action-secondary-surface-hover, var(--ui-surface-muted));
233
233
  border-color: var(--ui-control-border-hover, var(--ui-border-strong));
234
234
  }
235
- [data-component~="ui-button"][data-v-44d2f337]:active:enabled {
235
+ [data-component~="ui-button"][data-v-405b2c60]:active:enabled {
236
236
  background: var(--ui-surface-subtle);
237
237
  }
238
- [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-44d2f337] {
238
+ [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-405b2c60] {
239
239
  border-color: var(--ui-action-primary-surface, var(--ui-accent-solid));
240
240
  background: var(--ui-action-primary-surface, var(--ui-accent-solid));
241
241
  color: var(--ui-action-primary-text, var(--ui-text-on-accent));
@@ -245,19 +245,19 @@
245
245
  var(--ui-shadow-xs)
246
246
  );
247
247
  }
248
- [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-44d2f337]:hover:enabled {
248
+ [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-405b2c60]:hover:enabled {
249
249
  background: var(--ui-action-primary-surface-hover, var(--ui-accent-hover));
250
250
  border-color: var(--ui-action-primary-surface-hover, var(--ui-accent-hover));
251
251
  box-shadow: var(--ui-shadow-sm);
252
252
  transform: translateY(-1px);
253
253
  }
254
- [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-44d2f337]:active:enabled {
254
+ [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-405b2c60]:active:enabled {
255
255
  background: var(--ui-action-primary-surface-active, var(--ui-accent-active));
256
256
  border-color: var(--ui-action-primary-surface-active, var(--ui-accent-active));
257
257
  box-shadow: none;
258
258
  transform: translateY(0);
259
259
  }
260
- [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-44d2f337] {
260
+ [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-405b2c60] {
261
261
  border-color: var(--ui-danger-solid);
262
262
  background: var(--ui-danger-solid);
263
263
  color: var(--ui-text-on-accent);
@@ -267,17 +267,35 @@
267
267
  var(--ui-shadow-xs)
268
268
  );
269
269
  }
270
- [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-44d2f337]:hover:enabled {
270
+ [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-405b2c60]:hover:enabled {
271
271
  background: var(--ui-danger-hover);
272
272
  border-color: var(--ui-danger-hover);
273
273
  box-shadow: var(--ui-shadow-sm);
274
274
  transform: translateY(-1px);
275
275
  }
276
- [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-44d2f337]:active:enabled {
276
+ [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-405b2c60]:active:enabled {
277
277
  box-shadow: none;
278
278
  transform: translateY(0);
279
279
  }
280
- [data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-44d2f337] {
280
+
281
+ /* An accent-tinted secondary action: the outline, ghost, and link variants in the accent colour.
282
+ Solid and danger already carry their own intent. */
283
+ [data-component~="ui-button"][data-ui-button-state~="tone=accent"][data-component~="ui-button"][data-ui-button-state~="variant=outline"][data-v-405b2c60] {
284
+ border-color: var(--ui-button-accent-border, var(--ui-accent));
285
+ background: var(--ui-button-accent-surface, var(--ui-accent-subtle));
286
+ color: var(--ui-button-accent-text, var(--ui-accent-active));
287
+ }
288
+ [data-component~="ui-button"][data-ui-button-state~="tone=accent"][data-component~="ui-button"][data-ui-button-state~="variant=outline"][data-v-405b2c60]:hover:enabled {
289
+ border-color: var(--ui-button-accent-hover-border, var(--ui-accent-hover));
290
+ background: var(
291
+ --ui-button-accent-hover-surface,
292
+ color-mix(in srgb, var(--ui-accent) 16%, var(--ui-surface))
293
+ );
294
+ }
295
+ [data-component~="ui-button"][data-ui-button-state~="tone=accent"][data-v-405b2c60]:is([data-component~="ui-button"][data-ui-button-state~="variant=ghost"], [data-component~="ui-button"][data-ui-button-state~="variant=link"]) {
296
+ color: var(--ui-button-accent-text, var(--ui-accent-active));
297
+ }
298
+ [data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-405b2c60] {
281
299
  border-color: transparent;
282
300
  background: transparent;
283
301
  box-shadow: none;
@@ -285,84 +303,75 @@
285
303
  }
286
304
 
287
305
  /* Tints derive from the text colour, not a surface token, so hover and press show on any background. */
288
- [data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-44d2f337]:hover:enabled {
289
- background: var(--ui-button-ghost-hover, color-mix(in srgb, currentColor 8%, transparent));
306
+ [data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-405b2c60]:hover:enabled {
307
+ background: var(
308
+ --ui-button-ghost-hover-surface,
309
+ color-mix(in srgb, currentColor 8%, transparent)
310
+ );
290
311
  border-color: transparent;
291
312
  }
292
- [data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-44d2f337]:active:enabled {
293
- background: var(--ui-button-ghost-active, color-mix(in srgb, currentColor 14%, transparent));
313
+ [data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-405b2c60]:active:enabled {
314
+ background: var(
315
+ --ui-button-ghost-active-surface,
316
+ color-mix(in srgb, currentColor 14%, transparent)
317
+ );
294
318
  border-color: transparent;
295
319
  }
296
320
 
297
321
  /* A soft halo that transitions in with the other box-shadow changes, layered on the raised shadow. */
298
- [data-component~="ui-button"][data-v-44d2f337]:focus-visible {
322
+ [data-component~="ui-button"][data-v-405b2c60]:focus-visible {
299
323
  outline: none;
300
324
  box-shadow:
301
325
  var(--ui-button-shadow, var(--ui-raised, var(--ui-shadow-xs))),
302
326
  var(--ui-focus-halo);
303
327
  }
304
- [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-44d2f337]:focus-visible {
328
+ [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-405b2c60]:focus-visible {
305
329
  box-shadow:
306
330
  var(--ui-button-solid-shadow, inset 0 1px rgb(255 255 255 / 0.16), var(--ui-shadow-xs)),
307
331
  var(--ui-focus-halo);
308
332
  }
309
333
 
310
334
  /* Disabled colours fall back to each variant's own; ghost and link take only the text colour. */
311
- [data-component~="ui-button"][data-v-44d2f337]:disabled {
312
- opacity: var(--ui-button-disabled-opacity, 0.6);
335
+ [data-component~="ui-button"][data-v-405b2c60]:disabled {
336
+ opacity: var(--ui-button-disabled-opacity, 1);
313
337
  cursor: not-allowed;
314
- border-color: var(--ui-button-disabled-border, var(--ui-button-border, var(--ui-border-strong)));
315
- background-color: var(
316
- --ui-button-disabled-surface,
317
- var(--ui-button-surface, var(--ui-surface-elevated))
318
- );
319
- color: var(
320
- --ui-button-disabled-text,
321
- var(--ui-button-text, var(--ui-action-secondary-text, var(--ui-text-primary)))
322
- );
338
+ border-color: var(--ui-button-disabled-border, var(--ui-border));
339
+ background-color: var(--ui-button-disabled-surface, var(--ui-disabled-surface));
340
+ color: var(--ui-button-disabled-text, var(--ui-disabled-text));
323
341
  }
324
- [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-44d2f337]:disabled {
325
- border-color: var(
326
- --ui-button-disabled-border,
327
- var(--ui-action-primary-surface, var(--ui-accent-solid))
328
- );
329
- background-color: var(
330
- --ui-button-disabled-surface,
331
- var(--ui-action-primary-surface, var(--ui-accent-solid))
332
- );
333
- color: var(--ui-button-disabled-text, var(--ui-action-primary-text, var(--ui-text-on-accent)));
342
+ [data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-405b2c60]:disabled {
343
+ border-color: var(--ui-button-disabled-border, var(--ui-border));
344
+ background-color: var(--ui-button-disabled-surface, var(--ui-disabled-surface));
345
+ color: var(--ui-button-disabled-text, var(--ui-disabled-text));
334
346
  }
335
- [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-44d2f337]:disabled {
336
- border-color: var(--ui-button-disabled-border, var(--ui-danger-solid));
337
- background-color: var(--ui-button-disabled-surface, var(--ui-danger-solid));
338
- color: var(--ui-button-disabled-text, var(--ui-text-on-accent));
347
+ [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-405b2c60]:disabled {
348
+ border-color: var(--ui-button-disabled-border, var(--ui-border));
349
+ background-color: var(--ui-button-disabled-surface, var(--ui-disabled-surface));
350
+ color: var(--ui-button-disabled-text, var(--ui-disabled-text));
339
351
  }
340
- [data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-44d2f337]:disabled {
352
+ [data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-405b2c60]:disabled {
353
+ background: none;
341
354
  border-color: transparent;
342
- background-color: transparent;
343
- color: var(
344
- --ui-button-disabled-text,
345
- var(--ui-button-ghost-text, var(--ui-action-secondary-text, var(--ui-text-primary)))
346
- );
355
+ color: var(--ui-button-disabled-text, var(--ui-disabled-text));
347
356
  }
348
357
  @media (pointer: coarse) {
349
- [data-component~="ui-button"][data-v-44d2f337] {
350
- min-block-size: var(--ui-control-min-block-size, 2.75rem);
358
+ [data-component~="ui-button"][data-v-405b2c60] {
359
+ min-block-size: var(--ui-control-min-block-size);
351
360
  }
352
361
  }
353
362
 
354
363
  /* Link: an inline text action. No box, padding, or minimum height (inline targets are exempt under
355
364
  WCAG 2.5.8); the inherited font; an underline that strengthens on hover; a visible focus ring. */
356
- [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-44d2f337] {
365
+ [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-405b2c60] {
357
366
  display: inline;
358
367
  min-block-size: 0;
359
368
  padding: 0;
360
369
  border: 0;
361
- border-radius: var(--ui-radius-sm, 4px);
370
+ border-radius: var(--ui-radius-sm);
362
371
  background: none;
363
372
  box-shadow: none;
364
373
  font: inherit;
365
- color: var(--ui-button-link-color, var(--ui-text-secondary));
374
+ color: var(--ui-button-link-text, var(--ui-text-secondary));
366
375
  text-decoration-line: underline;
367
376
  text-decoration-thickness: 1px;
368
377
  text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
@@ -371,33 +380,34 @@
371
380
  color var(--ui-motion-fast) var(--ui-motion-ease),
372
381
  text-decoration-color var(--ui-motion-fast) var(--ui-motion-ease);
373
382
  }
374
- [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-44d2f337]:hover:enabled {
375
- color: var(--ui-button-link-hover-color, var(--ui-text-primary));
383
+ [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-405b2c60]:hover:enabled {
384
+ color: var(--ui-button-link-hover-text, var(--ui-text-primary));
376
385
  text-decoration-color: currentColor;
377
386
  background: none;
378
387
  transform: none;
379
388
  }
380
- [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-44d2f337]:active:enabled {
389
+ [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-405b2c60]:active:enabled {
381
390
  background: none;
382
391
  transform: none;
383
392
  }
384
- [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-44d2f337]:disabled {
393
+ [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-405b2c60]:disabled {
385
394
  background: none;
386
- color: var(--ui-button-disabled-text, var(--ui-button-link-color, var(--ui-text-secondary)));
395
+ border-color: transparent;
396
+ color: var(--ui-button-disabled-text, var(--ui-disabled-text));
387
397
  }
388
- [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-44d2f337]:focus-visible {
398
+ [data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-405b2c60]:focus-visible {
389
399
  box-shadow: none;
390
400
  /* Fallback keeps the ring if the token is missing: an unresolved var() would void the outline. */
391
- outline: 2px solid var(--ui-focus-ring, currentColor);
401
+ outline: 2px solid var(--ui-focus-ring);
392
402
  outline-offset: 2px;
393
403
  }
394
404
 
395
405
  /* A component that sets its display still honours the hidden attribute on its root. */
396
- [data-component~="ui-button"][hidden][data-v-44d2f337] {
406
+ [data-component~="ui-button"][hidden][data-v-405b2c60] {
397
407
  display: none;
398
408
  }
399
409
 
400
- [data-component~="ui-callout"][data-v-c6ed30ab] {
410
+ [data-component~="ui-callout"][data-v-31ee6589] {
401
411
  --_callout-surface: var(--ui-info-soft);
402
412
  --_callout-border: var(--ui-info-solid);
403
413
  --_callout-icon: var(--ui-info-solid);
@@ -413,7 +423,7 @@
413
423
  color-mix(in srgb, var(--ui-callout-border, var(--_callout-border)) 35%, transparent);
414
424
  border-inline-start: var(--ui-callout-leading-border-width, 4px) solid
415
425
  var(--ui-callout-border, var(--_callout-border));
416
- border-radius: var(--ui-radius-2);
426
+ border-radius: var(--ui-radius-md);
417
427
  background: var(--ui-callout-surface, var(--_callout-surface));
418
428
  color: var(--ui-callout-text, var(--ui-text-primary));
419
429
  font-family: var(--ui-font-family-sans);
@@ -423,47 +433,47 @@
423
433
  }
424
434
 
425
435
  /* One line box tall, so the icon centres on the first line of text. */
426
- .icon[data-v-c6ed30ab] {
436
+ .icon[data-v-31ee6589] {
427
437
  display: grid;
428
438
  place-items: center;
429
439
  inline-size: var(--ui-callout-icon-column, 1.125rem);
430
440
  block-size: 1lh;
431
441
  color: var(--ui-callout-icon, var(--_callout-icon));
432
442
  }
433
- .icon svg[data-v-c6ed30ab] {
443
+ .icon svg[data-v-31ee6589] {
434
444
  inline-size: var(--ui-callout-icon-size, 1.125rem);
435
445
  block-size: var(--ui-callout-icon-size, 1.125rem);
436
446
  }
437
- .content[data-v-c6ed30ab] {
447
+ .content[data-v-31ee6589] {
438
448
  min-inline-size: 0;
439
449
  }
440
- [data-component~="ui-callout"][data-ui-callout-state~="tone=note"][data-v-c6ed30ab] {
450
+ [data-component~="ui-callout"][data-ui-callout-state~="tone=note"][data-v-31ee6589] {
441
451
  --_callout-surface: var(--ui-surface-muted);
442
452
  --_callout-border: var(--ui-border-strong);
443
453
  --_callout-icon: var(--ui-text-secondary);
444
454
  }
445
- [data-component~="ui-callout"][data-ui-callout-state~="tone=warning"][data-v-c6ed30ab] {
455
+ [data-component~="ui-callout"][data-ui-callout-state~="tone=warning"][data-v-31ee6589] {
446
456
  --_callout-surface: var(--ui-warning-soft);
447
457
  --_callout-border: var(--ui-warning-solid);
448
458
  --_callout-icon: var(--ui-warning-solid);
449
459
  }
450
- [data-component~="ui-callout"][data-ui-callout-state~="tone=success"][data-v-c6ed30ab] {
460
+ [data-component~="ui-callout"][data-ui-callout-state~="tone=success"][data-v-31ee6589] {
451
461
  --_callout-surface: var(--ui-success-soft);
452
462
  --_callout-border: var(--ui-success-solid);
453
463
  --_callout-icon: var(--ui-success-solid);
454
464
  }
455
- [data-component~="ui-callout"][data-ui-callout-state~="tone=danger"][data-v-c6ed30ab] {
465
+ [data-component~="ui-callout"][data-ui-callout-state~="tone=danger"][data-v-31ee6589] {
456
466
  --_callout-surface: var(--ui-danger-soft);
457
467
  --_callout-border: var(--ui-danger-solid);
458
468
  --_callout-icon: var(--ui-danger-solid);
459
469
  }
460
470
 
461
471
  /* A component that sets its display still honours the hidden attribute on its root. */
462
- [data-component~="ui-callout"][hidden][data-v-c6ed30ab] {
472
+ [data-component~="ui-callout"][hidden][data-v-31ee6589] {
463
473
  display: none;
464
474
  }
465
475
 
466
- [data-component~="ui-checkbox"][data-v-1e598fdb] {
476
+ [data-component~="ui-checkbox"][data-v-acf71232] {
467
477
  display: inline-flex;
468
478
  align-items: flex-start;
469
479
  gap: var(--ui-checkbox-gap, var(--ui-space-2));
@@ -471,11 +481,11 @@
471
481
  color: var(--ui-text-primary);
472
482
  cursor: pointer;
473
483
  }
474
- .label[data-v-1e598fdb] {
484
+ .label[data-v-acf71232] {
475
485
  min-inline-size: 0;
476
486
  line-height: var(--ui-line-height-md);
477
487
  }
478
- input[data-v-1e598fdb] {
488
+ input[data-v-acf71232] {
479
489
  appearance: none;
480
490
  -webkit-appearance: none;
481
491
  position: relative;
@@ -484,7 +494,7 @@ input[data-v-1e598fdb] {
484
494
  block-size: var(--ui-checkbox-size, 1.125rem);
485
495
  margin: 0.125em 0 0;
486
496
  border: 1px solid var(--ui-control-border-hover, var(--ui-border-strong));
487
- border-radius: var(--ui-radius-1);
497
+ border-radius: var(--ui-radius-sm);
488
498
  background: var(--ui-control-surface, var(--ui-surface-default));
489
499
  box-shadow: inset 0 1px 2px color-mix(in srgb, var(--ui-text-primary) 8%, transparent);
490
500
  cursor: pointer;
@@ -493,20 +503,20 @@ input[data-v-1e598fdb] {
493
503
  border-color var(--ui-motion-fast) var(--ui-motion-ease),
494
504
  box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
495
505
  }
496
- input[data-v-1e598fdb]::after {
506
+ input[data-v-acf71232]::after {
497
507
  content: "";
498
508
  position: absolute;
499
509
  opacity: 0;
500
510
  }
501
- input[data-v-1e598fdb]:checked,
502
- input[data-v-1e598fdb]:indeterminate {
511
+ input[data-v-acf71232]:checked,
512
+ input[data-v-acf71232]:indeterminate {
503
513
  border-color: var(--ui-accent-solid);
504
514
  background: var(--ui-accent-solid);
505
515
  box-shadow: inset 0 1px 2px color-mix(in srgb, #000 16%, transparent);
506
516
  }
507
517
 
508
518
  /* Centre the tick's box, then lift it: a rotated L's ink sits ~0.11rem below its box centre. */
509
- input[data-v-1e598fdb]:checked::after {
519
+ input[data-v-acf71232]:checked::after {
510
520
  inset: 0;
511
521
  margin: auto;
512
522
  inline-size: 0.32rem;
@@ -516,7 +526,7 @@ input[data-v-1e598fdb]:checked::after {
516
526
  opacity: 1;
517
527
  transform: translateY(-0.11rem) rotate(45deg);
518
528
  }
519
- input[data-v-1e598fdb]:indeterminate::after {
529
+ input[data-v-acf71232]:indeterminate::after {
520
530
  inset: 50% 0.23rem auto;
521
531
  block-size: 0.125rem;
522
532
  border-radius: var(--ui-radius-round);
@@ -524,30 +534,30 @@ input[data-v-1e598fdb]:indeterminate::after {
524
534
  opacity: 1;
525
535
  transform: translateY(-50%);
526
536
  }
527
- input[data-v-1e598fdb]:hover:enabled {
537
+ input[data-v-acf71232]:hover:enabled {
528
538
  border-color: var(--ui-accent-solid);
529
539
  }
530
- input[data-v-1e598fdb]:focus-visible {
540
+ input[data-v-acf71232]:focus-visible {
531
541
  outline: 2px solid var(--ui-focus-ring, var(--ui-accent-solid));
532
542
  outline-offset: 2px;
533
543
  }
534
- [data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"][data-v-1e598fdb] {
544
+ [data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"][data-v-acf71232] {
535
545
  color: var(--ui-text-muted);
536
546
  cursor: not-allowed;
537
547
  }
538
- [data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"] input[data-v-1e598fdb] {
548
+ [data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"] input[data-v-acf71232] {
539
549
  border-color: var(--ui-border-default);
540
550
  background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
541
551
  cursor: not-allowed;
542
552
  }
543
553
 
544
554
  /* A component that sets its display still honours the hidden attribute on its root. */
545
- [data-component~="ui-checkbox"][hidden][data-v-1e598fdb] {
555
+ [data-component~="ui-checkbox"][hidden][data-v-acf71232] {
546
556
  display: none;
547
557
  }
548
558
 
549
- [data-component~="ui-cluster"][data-v-2a9e690c] {
550
- --_layout-gap: var(--ui-space-3, 0.75rem);
559
+ [data-component~="ui-cluster"][data-v-06d4310a] {
560
+ --_layout-gap: var(--ui-space-3);
551
561
  display: flex;
552
562
  flex-wrap: wrap;
553
563
  align-items: center;
@@ -556,37 +566,37 @@ input[data-v-1e598fdb]:focus-visible {
556
566
  max-inline-size: 100%;
557
567
  margin: 0;
558
568
  }
559
- [data-component~="ui-cluster"][data-ui-cluster-state~="gap=xs"][data-v-2a9e690c] {
560
- --_layout-gap: var(--ui-space-2, 0.5rem);
569
+ [data-component~="ui-cluster"][data-ui-cluster-state~="gap=xs"][data-v-06d4310a] {
570
+ --_layout-gap: var(--ui-space-2);
561
571
  }
562
- [data-component~="ui-cluster"][data-ui-cluster-state~="gap=s"][data-v-2a9e690c] {
563
- --_layout-gap: var(--ui-space-3, 0.75rem);
572
+ [data-component~="ui-cluster"][data-ui-cluster-state~="gap=s"][data-v-06d4310a] {
573
+ --_layout-gap: var(--ui-space-3);
564
574
  }
565
- [data-component~="ui-cluster"][data-ui-cluster-state~="gap=m"][data-v-2a9e690c] {
566
- --_layout-gap: var(--ui-space-4, 1rem);
575
+ [data-component~="ui-cluster"][data-ui-cluster-state~="gap=m"][data-v-06d4310a] {
576
+ --_layout-gap: var(--ui-space-4);
567
577
  }
568
- [data-component~="ui-cluster"][data-ui-cluster-state~="gap=l"][data-v-2a9e690c] {
569
- --_layout-gap: var(--ui-space-5, 1.5rem);
578
+ [data-component~="ui-cluster"][data-ui-cluster-state~="gap=l"][data-v-06d4310a] {
579
+ --_layout-gap: var(--ui-space-5);
570
580
  }
571
- [data-component~="ui-cluster"][data-ui-cluster-state~="gap=xl"][data-v-2a9e690c] {
572
- --_layout-gap: var(--ui-space-6, 2rem);
581
+ [data-component~="ui-cluster"][data-ui-cluster-state~="gap=xl"][data-v-06d4310a] {
582
+ --_layout-gap: var(--ui-space-6);
573
583
  }
574
- [data-component~="ui-cluster"][data-ui-cluster-state~="align=start"][data-v-2a9e690c] {
584
+ [data-component~="ui-cluster"][data-ui-cluster-state~="align=start"][data-v-06d4310a] {
575
585
  align-items: flex-start;
576
586
  }
577
- [data-component~="ui-cluster"][data-ui-cluster-state~="align=end"][data-v-2a9e690c] {
587
+ [data-component~="ui-cluster"][data-ui-cluster-state~="align=end"][data-v-06d4310a] {
578
588
  align-items: flex-end;
579
589
  }
580
- [data-component~="ui-cluster"][data-ui-cluster-state~="align=stretch"][data-v-2a9e690c] {
590
+ [data-component~="ui-cluster"][data-ui-cluster-state~="align=stretch"][data-v-06d4310a] {
581
591
  align-items: stretch;
582
592
  }
583
593
 
584
594
  /* A component that sets its display still honours the hidden attribute on its root. */
585
- [data-component~="ui-cluster"][hidden][data-v-2a9e690c] {
595
+ [data-component~="ui-cluster"][hidden][data-v-06d4310a] {
586
596
  display: none;
587
597
  }
588
598
 
589
- [data-component~="ui-tooltip"][data-v-78626a50] {
599
+ [data-component~="ui-tooltip"][data-v-3099b119] {
590
600
  position: fixed;
591
601
  inset: auto;
592
602
  margin: 0;
@@ -607,13 +617,13 @@ input[data-v-1e598fdb]:focus-visible {
607
617
  display var(--ui-motion-fast) allow-discrete,
608
618
  overlay var(--ui-motion-fast) allow-discrete;
609
619
  }
610
- .surface[data-v-78626a50] {
620
+ .surface[data-v-3099b119] {
611
621
  --_tooltip-line: var(--ui-tooltip-border, var(--ui-border-default));
612
622
  position: relative;
613
623
  box-sizing: border-box;
614
624
  max-inline-size: var(--ui-tooltip-max-inline-size, 18rem);
615
625
  border: 1px solid var(--_tooltip-line);
616
- border-radius: var(--ui-tooltip-radius, var(--ui-radius-1));
626
+ border-radius: var(--ui-tooltip-radius, var(--ui-radius-sm));
617
627
  background: var(--ui-tooltip-surface, var(--ui-surface-elevated));
618
628
  color: var(--ui-tooltip-text, var(--ui-text-primary));
619
629
  padding: var(--ui-space-1) var(--ui-space-2);
@@ -622,7 +632,7 @@ input[data-v-1e598fdb]:focus-visible {
622
632
  line-height: var(--ui-line-height-tight);
623
633
  box-shadow: var(--ui-tooltip-shadow, var(--ui-elevation-tooltip, var(--ui-shadow-md)));
624
634
  }
625
- [data-component~="ui-tooltip"][data-ui-tooltip-state~="inverse"] .surface[data-v-78626a50] {
635
+ [data-component~="ui-tooltip"][data-ui-tooltip-state~="inverse"] .surface[data-v-3099b119] {
626
636
  --_tooltip-line: var(--ui-tooltip-inverse-surface, var(--ui-text-primary));
627
637
  background: var(--ui-tooltip-inverse-surface, var(--ui-text-primary));
628
638
  color: var(--ui-tooltip-inverse-text, var(--ui-surface-default));
@@ -630,7 +640,7 @@ input[data-v-1e598fdb]:focus-visible {
630
640
 
631
641
  /* A rotated square shares the surface fill and draws the two outward border edges. Its centre sits on
632
642
  * the surface border line, so the fill covers that stretch of border and the outline runs unbroken. */
633
- .surface[data-v-78626a50]::after {
643
+ .surface[data-v-3099b119]::after {
634
644
  content: "";
635
645
  position: absolute;
636
646
  z-index: 1;
@@ -647,7 +657,7 @@ input[data-v-1e598fdb]:focus-visible {
647
657
  transform: rotate(45deg);
648
658
  }
649
659
  :is([data-component~="ui-tooltip"][data-ui-tooltip-state~="placement=bottom"], [data-component~="ui-tooltip"][data-ui-tooltip-state~="placement=bottom-start"], [data-component~="ui-tooltip"][data-ui-tooltip-state~="placement=bottom-end"])
650
- .surface[data-v-78626a50]::after {
660
+ .surface[data-v-3099b119]::after {
651
661
  inset-block-start: calc(var(--ui-tooltip-arrow-size, 0.5rem) / -2 - 0.5px);
652
662
  inset-block-end: auto;
653
663
  border-inline-end-width: 0;
@@ -658,67 +668,67 @@ input[data-v-1e598fdb]:focus-visible {
658
668
  border-start-start-radius: 1px;
659
669
  }
660
670
  :is([data-component~="ui-tooltip"][data-ui-tooltip-state~="placement=top-end"], [data-component~="ui-tooltip"][data-ui-tooltip-state~="placement=bottom-end"])
661
- .surface[data-v-78626a50]::after {
671
+ .surface[data-v-3099b119]::after {
662
672
  inset-inline-start: auto;
663
673
  inset-inline-end: var(--ui-space-3);
664
674
  }
665
- [data-component~="ui-tooltip"][data-v-78626a50]:popover-open {
675
+ [data-component~="ui-tooltip"][data-v-3099b119]:popover-open {
666
676
  opacity: 1;
667
677
  transform: translateY(0);
668
678
  }
669
679
  @starting-style {
670
- [data-component~="ui-tooltip"][data-v-78626a50]:popover-open {
680
+ [data-component~="ui-tooltip"][data-v-3099b119]:popover-open {
671
681
  opacity: 0;
672
682
  transform: translateY(4px);
673
683
  }
674
684
  }
675
- [data-component~="ui-tooltip"][hidden][data-v-78626a50] {
685
+ [data-component~="ui-tooltip"][hidden][data-v-3099b119] {
676
686
  display: none;
677
687
  }
678
688
  @media (prefers-reduced-motion: reduce) {
679
- [data-component~="ui-tooltip"][data-v-78626a50] {
689
+ [data-component~="ui-tooltip"][data-v-3099b119] {
680
690
  transition: none;
681
691
  }
682
692
  }
683
693
 
684
- [data-component~="ui-combobox"][data-v-7eb73ca2] {
694
+ [data-component~="ui-combobox"][data-v-147b231f] {
685
695
  display: grid;
686
696
  gap: var(--ui-space-1);
687
697
  min-inline-size: 0;
688
698
  color: var(--ui-text-primary);
689
699
  font: inherit;
690
700
  }
691
- label[data-v-7eb73ca2] {
692
- color: var(--ui-field-label-color, var(--ui-text-primary));
693
- font-size: var(--ui-field-label-size, 0.875rem);
694
- font-weight: var(--ui-field-label-weight, 500);
701
+ label[data-v-147b231f] {
702
+ color: var(--ui-combobox-label-text, var(--ui-text-primary));
703
+ font-size: var(--ui-combobox-label-font-size, 0.875rem);
704
+ font-weight: 500;
695
705
  }
696
- .field[data-v-7eb73ca2] {
706
+ .field[data-v-147b231f] {
697
707
  display: flex;
698
708
  min-inline-size: 0;
699
709
  border: 1px solid var(--ui-control-border, var(--ui-border-default));
700
- border-radius: var(--ui-radius-2);
710
+ border-radius: var(--ui-radius-md);
701
711
  background: var(--ui-control-surface, var(--ui-surface-default));
702
712
  box-shadow: var(--ui-control-inset);
703
713
  transition:
704
714
  border-color var(--ui-motion-fast) var(--ui-motion-ease),
705
715
  box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
706
716
  }
707
- .field[data-v-7eb73ca2]:focus-within {
717
+ .field[data-v-147b231f]:focus-within {
708
718
  border-color: var(--ui-control-focus, var(--ui-accent-solid));
709
719
  box-shadow:
710
720
  var(--ui-control-inset),
711
721
  var(--ui-control-focus-halo-shadow);
712
722
  }
713
- input[data-v-7eb73ca2]::selection {
723
+ input[data-v-147b231f]::selection {
714
724
  background: color-mix(in srgb, var(--ui-accent-solid) 20%, transparent);
715
725
  color: inherit;
716
726
  }
717
- input[data-v-7eb73ca2] {
727
+ input[data-v-147b231f] {
718
728
  appearance: none;
719
729
  width: 100%;
720
730
  min-inline-size: 0;
721
- min-block-size: calc(var(--ui-control-size-md, 2.5rem) - 2px);
731
+ min-block-size: calc(var(--ui-control-size-md) - 2px);
722
732
  box-sizing: border-box;
723
733
  border: 0;
724
734
  border-radius: inherit;
@@ -730,50 +740,50 @@ input[data-v-7eb73ca2] {
730
740
  margin: 0;
731
741
  outline: none;
732
742
  }
733
- [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"] input[data-v-7eb73ca2] {
734
- min-block-size: calc(var(--ui-field-compact-size, var(--ui-control-size-sm, 2rem)) - 2px);
743
+ [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"] input[data-v-147b231f] {
744
+ min-block-size: calc(var(--ui-control-size-sm) - 2px);
735
745
  padding: var(--ui-space-1) var(--ui-space-2);
736
746
  }
737
- button[data-v-7eb73ca2] {
747
+ button[data-v-147b231f] {
738
748
  appearance: none;
739
749
  display: inline-grid;
740
750
  place-items: center;
741
751
  align-self: stretch;
742
752
  border: 0;
743
- border-radius: var(--ui-radius-2);
753
+ border-radius: var(--ui-radius-md);
744
754
  background: transparent;
745
- color: var(--ui-field-affordance-color, var(--ui-text-secondary));
755
+ color: var(--ui-combobox-affordance-text, var(--ui-text-secondary));
746
756
  font: inherit;
747
- font-weight: var(--ui-field-affordance-weight, 400);
757
+ font-weight: 400;
748
758
  min-inline-size: 2rem;
749
759
  padding: 0 var(--ui-space-1);
750
760
  cursor: pointer;
751
761
  }
752
- .affordance-icon[data-v-7eb73ca2] {
762
+ .affordance-icon[data-v-147b231f] {
753
763
  display: block;
754
- inline-size: var(--ui-icon-size-sm, 1rem);
755
- block-size: var(--ui-icon-size-sm, 1rem);
764
+ inline-size: var(--ui-icon-size-sm);
765
+ block-size: var(--ui-icon-size-sm);
756
766
  }
757
- button[data-v-7eb73ca2]:hover:enabled {
767
+ button[data-v-147b231f]:hover:enabled {
758
768
  background: var(--ui-surface-muted);
759
769
  color: var(--ui-text-primary);
760
770
  }
761
- button[data-v-7eb73ca2]:focus-visible {
771
+ button[data-v-147b231f]:focus-visible {
762
772
  outline: none;
763
773
  background: var(--ui-surface-muted);
764
774
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--ui-focus-ring) 45%, transparent);
765
775
  }
766
- input[data-v-7eb73ca2]:disabled, button[data-v-7eb73ca2]:disabled {
776
+ input[data-v-147b231f]:disabled, button[data-v-147b231f]:disabled {
767
777
  color: var(--ui-text-muted);
768
778
  cursor: not-allowed;
769
779
  }
770
- .field[data-v-7eb73ca2]:has(input:disabled) {
780
+ .field[data-v-147b231f]:has(input:disabled) {
771
781
  background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
772
782
  }
773
- [data-component~="ui-combobox"][data-ui-combobox-state~="validationStatus=error"] .field[data-v-7eb73ca2] {
783
+ [data-component~="ui-combobox"][data-ui-combobox-state~="validationStatus=error"] .field[data-v-147b231f] {
774
784
  border-color: var(--ui-danger-solid, var(--ui-accent-active));
775
785
  }
776
- .popup[data-v-7eb73ca2] {
786
+ .popup[data-v-147b231f] {
777
787
  box-sizing: border-box;
778
788
  min-inline-size: 12rem;
779
789
  max-inline-size: calc(100vw - 1rem);
@@ -782,45 +792,45 @@ input[data-v-7eb73ca2]:disabled, button[data-v-7eb73ca2]:disabled {
782
792
  margin: 0;
783
793
  padding: var(--ui-space-1);
784
794
  border: 1px solid var(--ui-border-default);
785
- border-radius: var(--ui-radius-2);
795
+ border-radius: var(--ui-radius-md);
786
796
  background: var(--ui-surface-elevated);
787
797
  color: var(--ui-text-primary);
788
798
  box-shadow: var(--ui-elevation-overlay, var(--ui-shadow-lg));
789
799
  }
790
- [hidden][data-v-7eb73ca2] {
800
+ [hidden][data-v-147b231f] {
791
801
  display: none;
792
802
  }
793
- .option[data-v-7eb73ca2] {
803
+ .option[data-v-147b231f] {
794
804
  padding: var(--ui-space-2) var(--ui-space-3);
795
- border-radius: var(--ui-radius-1);
805
+ border-radius: var(--ui-radius-sm);
796
806
  cursor: pointer;
797
807
  overflow-wrap: anywhere;
798
808
  }
799
- .option[data-v-7eb73ca2]:hover, .option.active[data-v-7eb73ca2] {
809
+ .option[data-v-147b231f]:hover, .option.active[data-v-147b231f] {
800
810
  background: var(--ui-surface-muted);
801
- outline: 1px solid var(--ui-focus-ring, currentColor);
811
+ outline: 1px solid var(--ui-focus-ring);
802
812
  outline-offset: -1px;
803
813
  }
804
- .option[aria-disabled="true"][data-v-7eb73ca2] {
814
+ .option[aria-disabled="true"][data-v-147b231f] {
805
815
  color: var(--ui-text-muted);
806
816
  cursor: not-allowed;
807
817
  }
808
- .primary[data-v-7eb73ca2] {
818
+ .primary[data-v-147b231f] {
809
819
  display: block;
810
- color: var(--ui-option-primary-color, var(--ui-text-primary));
811
- font-weight: var(--ui-option-primary-weight, 500);
820
+ color: var(--ui-combobox-option-text, var(--ui-text-primary));
821
+ font-weight: 500;
812
822
  }
813
- .message[data-v-7eb73ca2], .group[data-v-7eb73ca2] {
814
- color: var(--ui-field-message-color, var(--ui-text-secondary));
815
- font-weight: var(--ui-field-message-weight, 400);
823
+ .message[data-v-147b231f], .group[data-v-147b231f] {
824
+ color: var(--ui-combobox-message-text, var(--ui-text-secondary));
825
+ font-weight: 400;
816
826
  font-size: var(--ui-font-size-sm);
817
827
  line-height: var(--ui-line-height-md);
818
828
  overflow-wrap: anywhere;
819
829
  }
820
- .group[data-v-7eb73ca2], .popup .message[data-v-7eb73ca2] {
830
+ .group[data-v-147b231f], .popup .message[data-v-147b231f] {
821
831
  padding: var(--ui-space-2) var(--ui-space-3);
822
832
  }
823
- .sr-only[data-v-7eb73ca2] {
833
+ .sr-only[data-v-147b231f] {
824
834
  position: absolute;
825
835
  inline-size: 1px;
826
836
  block-size: 1px;
@@ -829,95 +839,95 @@ input[data-v-7eb73ca2]:disabled, button[data-v-7eb73ca2]:disabled {
829
839
  white-space: nowrap;
830
840
  }
831
841
  @media (pointer: coarse) {
832
- button[data-v-7eb73ca2] {
842
+ button[data-v-147b231f] {
833
843
  min-inline-size: 2.75rem;
834
844
  min-block-size: 2.75rem;
835
845
  }
836
846
  }
837
847
  @media (forced-colors: active) {
838
- .field[data-v-7eb73ca2], .popup[data-v-7eb73ca2] {
848
+ .field[data-v-147b231f], .popup[data-v-147b231f] {
839
849
  border-color: CanvasText;
840
850
  }
841
- .option.active[data-v-7eb73ca2] {
851
+ .option.active[data-v-147b231f] {
842
852
  outline-color: Highlight;
843
853
  }
844
854
  }
845
855
 
846
856
  /* Multiple mode: chips wrap before the cursor on one flexible field line. */
847
- [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] .field[data-v-7eb73ca2] {
857
+ [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] .field[data-v-147b231f] {
848
858
  flex-wrap: wrap;
849
859
  align-items: center;
850
860
  gap: var(--ui-space-1);
851
- min-block-size: var(--ui-multi-combobox-min-block-size, 2.5rem);
861
+ min-block-size: var(--ui-combobox-item-min-block-size, 2.5rem);
852
862
  padding: var(--ui-space-1);
853
863
  }
854
- [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] input[data-v-7eb73ca2] {
855
- flex: 1 0 var(--ui-multi-combobox-input-min-inline-size, 5rem);
864
+ [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] input[data-v-147b231f] {
865
+ flex: 1 0 var(--ui-combobox-item-input-min-inline-size, 5rem);
856
866
  width: auto;
857
867
  min-block-size: 1.75rem;
858
868
  padding: var(--ui-space-0-5) var(--ui-space-1);
859
869
  }
860
- .item[data-v-7eb73ca2] {
870
+ .item[data-v-147b231f] {
861
871
  appearance: none;
862
872
  display: inline-flex;
863
873
  min-inline-size: 0;
864
- max-inline-size: min(100%, var(--ui-multi-combobox-item-max-inline-size, 12rem));
874
+ max-inline-size: min(100%, var(--ui-combobox-item-item-max-inline-size, 12rem));
865
875
  overflow: hidden;
866
876
  padding: 0;
867
877
  border: 0;
868
- border-radius: var(--ui-radius-1);
878
+ border-radius: var(--ui-radius-sm);
869
879
  background: transparent;
870
880
  color: inherit;
871
881
  font: inherit;
872
882
  cursor: default;
873
883
  }
874
- .item[data-v-7eb73ca2]:focus-visible {
875
- outline: 2px solid var(--ui-focus-ring, currentColor);
884
+ .item[data-v-147b231f]:focus-visible {
885
+ outline: 2px solid var(--ui-focus-ring);
876
886
  outline-offset: 1px;
877
887
  }
878
- .item[data-v-7eb73ca2]:disabled {
888
+ .item[data-v-147b231f]:disabled {
879
889
  opacity: 0.6;
880
890
  }
881
891
 
882
892
  /* A component that sets its display still honours the hidden attribute on its root. */
883
- [data-component~="ui-combobox"][hidden][data-v-7eb73ca2] {
893
+ [data-component~="ui-combobox"][hidden][data-v-147b231f] {
884
894
  display: none;
885
895
  }
886
896
 
887
- [data-component~="ui-container"][data-v-bf6caa0d] {
897
+ [data-component~="ui-container"][data-v-4c7bb81d] {
888
898
  --_container-measure: 65ch;
889
- --_container-gutters: var(--ui-space-4, 1rem);
899
+ --_container-gutters: var(--ui-space-4);
890
900
  display: block;
891
901
  inline-size: 100%;
892
902
  max-inline-size: var(--ui-container-measure, var(--_container-measure));
893
903
  margin-inline: auto;
894
904
  padding-inline: var(--ui-container-gutters, var(--_container-gutters));
895
905
  }
896
- [data-component~="ui-container"][data-ui-container-state~="measure=narrow"][data-v-bf6caa0d] {
906
+ [data-component~="ui-container"][data-ui-container-state~="measure=narrow"][data-v-4c7bb81d] {
897
907
  --_container-measure: 45ch;
898
908
  }
899
- [data-component~="ui-container"][data-ui-container-state~="measure=wide"][data-v-bf6caa0d] {
909
+ [data-component~="ui-container"][data-ui-container-state~="measure=wide"][data-v-4c7bb81d] {
900
910
  --_container-measure: 80ch;
901
911
  }
902
- [data-component~="ui-container"][data-ui-container-state~="gutters=s"][data-v-bf6caa0d] {
903
- --_container-gutters: var(--ui-space-3, 0.75rem);
912
+ [data-component~="ui-container"][data-ui-container-state~="gutters=s"][data-v-4c7bb81d] {
913
+ --_container-gutters: var(--ui-space-3);
904
914
  }
905
- [data-component~="ui-container"][data-ui-container-state~="gutters=m"][data-v-bf6caa0d] {
906
- --_container-gutters: var(--ui-space-4, 1rem);
915
+ [data-component~="ui-container"][data-ui-container-state~="gutters=m"][data-v-4c7bb81d] {
916
+ --_container-gutters: var(--ui-space-4);
907
917
  }
908
- [data-component~="ui-container"][data-ui-container-state~="gutters=l"][data-v-bf6caa0d] {
909
- --_container-gutters: var(--ui-space-5, 1.5rem);
918
+ [data-component~="ui-container"][data-ui-container-state~="gutters=l"][data-v-4c7bb81d] {
919
+ --_container-gutters: var(--ui-space-5);
910
920
  }
911
921
 
912
922
  /* A component that sets its display still honours the hidden attribute on its root. */
913
- [data-component~="ui-container"][hidden][data-v-bf6caa0d] {
923
+ [data-component~="ui-container"][hidden][data-v-4c7bb81d] {
914
924
  display: none;
915
925
  }
916
926
 
917
- [data-component~="ui-context-menu"][data-v-9d2943e9] {
927
+ [data-component~="ui-context-menu"][data-v-39e418e5] {
918
928
  display: contents;
919
929
  }
920
- .menu[data-v-9d2943e9] {
930
+ .menu[data-v-39e418e5] {
921
931
  position: fixed;
922
932
  inset: auto;
923
933
  margin: 0;
@@ -927,11 +937,11 @@ button[data-v-7eb73ca2] {
927
937
  padding: var(--ui-space-1);
928
938
  background: var(--ui-surface-elevated);
929
939
  border: 1px solid var(--ui-border-default);
930
- border-radius: var(--ui-radius-3);
940
+ border-radius: var(--ui-radius-lg);
931
941
  box-shadow: var(--ui-elevation-overlay, var(--ui-shadow-lg));
932
942
  outline: 0;
933
943
  overflow: auto;
934
- z-index: var(--ui-z-overlay, 1000);
944
+ z-index: var(--ui-context-menu-z-index, 1000);
935
945
  min-width: 12rem;
936
946
  opacity: 0;
937
947
  transform: translateY(-4px) scale(0.99);
@@ -941,41 +951,41 @@ button[data-v-7eb73ca2] {
941
951
  display var(--ui-motion-fast) allow-discrete,
942
952
  overlay var(--ui-motion-fast) allow-discrete;
943
953
  }
944
- .menu[data-v-9d2943e9]:popover-open {
954
+ .menu[data-v-39e418e5]:popover-open {
945
955
  opacity: 1;
946
956
  transform: translateY(0) scale(1);
947
957
  }
948
958
  @starting-style {
949
- .menu[data-v-9d2943e9]:popover-open {
959
+ .menu[data-v-39e418e5]:popover-open {
950
960
  opacity: 0;
951
961
  transform: translateY(-4px) scale(0.99);
952
962
  }
953
963
  }
954
- .menu[hidden][data-v-9d2943e9],
955
- .menu[popover][data-v-9d2943e9]:not(:popover-open) {
964
+ .menu[hidden][data-v-39e418e5],
965
+ .menu[popover][data-v-39e418e5]:not(:popover-open) {
956
966
  display: none;
957
967
  }
958
968
  @media (prefers-reduced-motion: reduce) {
959
- .menu[data-v-9d2943e9] {
969
+ .menu[data-v-39e418e5] {
960
970
  transition: none;
961
971
  }
962
972
  }
963
973
 
964
974
  /* A component that sets its display still honours the hidden attribute on its root. */
965
- [data-component~="ui-context-menu"][hidden][data-v-9d2943e9] {
975
+ [data-component~="ui-context-menu"][hidden][data-v-39e418e5] {
966
976
  display: none;
967
977
  }
968
978
 
969
- [data-component~="ui-dialog"][data-v-e78fa426] {
979
+ [data-component~="ui-dialog"][data-v-05ac1756] {
970
980
  position: fixed;
971
981
  inset: 0;
972
982
  box-sizing: border-box;
973
983
  inline-size: min(
974
- calc(100% - var(--ui-dialog-viewport-gap, var(--ui-space-4, 1rem)) * 2),
984
+ calc(100% - var(--ui-dialog-viewport-gap, var(--ui-space-4)) * 2),
975
985
  var(--ui-dialog-max-width, 440px)
976
986
  );
977
987
  max-inline-size: none;
978
- max-block-size: calc(100dvh - var(--ui-dialog-viewport-gap, var(--ui-space-4, 1rem)) * 2);
988
+ max-block-size: calc(100dvh - var(--ui-dialog-viewport-gap, var(--ui-space-4)) * 2);
979
989
  margin: auto;
980
990
  padding: 0;
981
991
  overflow: hidden;
@@ -995,17 +1005,17 @@ button[data-v-7eb73ca2] {
995
1005
  display var(--ui-dialog-duration, var(--ui-motion-base)) var(--ui-motion-ease) allow-discrete,
996
1006
  overlay var(--ui-dialog-duration, var(--ui-motion-base)) var(--ui-motion-ease) allow-discrete;
997
1007
  }
998
- [data-component~="ui-dialog"][open][data-v-e78fa426] {
1008
+ [data-component~="ui-dialog"][open][data-v-05ac1756] {
999
1009
  display: flex;
1000
1010
  visibility: visible;
1001
1011
  pointer-events: auto;
1002
1012
  opacity: 1;
1003
1013
  transform: scale(1);
1004
- animation: ui-dialog-enter-e78fa426 var(--ui-dialog-duration, var(--ui-motion-base)) var(--ui-motion-ease);
1014
+ animation: ui-dialog-enter-05ac1756 var(--ui-dialog-duration, var(--ui-motion-base)) var(--ui-motion-ease);
1005
1015
  }
1006
1016
 
1007
1017
  /* Header and actions stay pinned; only the body scrolls when content is long. */
1008
- header[data-v-e78fa426] {
1018
+ header[data-v-05ac1756] {
1009
1019
  display: flex;
1010
1020
  align-items: center;
1011
1021
  gap: var(--ui-space-3);
@@ -1015,7 +1025,7 @@ header[data-v-e78fa426] {
1015
1025
  }
1016
1026
 
1017
1027
  /* :host-qualified so page heading rules that reach in cannot outrank the dialog chrome. */
1018
- [data-component~="ui-dialog"] .title[data-v-e78fa426] {
1028
+ [data-component~="ui-dialog"] .title[data-v-05ac1756] {
1019
1029
  flex: 1;
1020
1030
  min-inline-size: 0;
1021
1031
  margin: 0;
@@ -1023,20 +1033,20 @@ header[data-v-e78fa426] {
1023
1033
  border: 0;
1024
1034
  color: var(--ui-text-primary);
1025
1035
  letter-spacing: normal;
1026
- font-size: var(--ui-font-size-lg, 1.125rem);
1027
- font-weight: var(--ui-font-semibold, 600);
1036
+ font-size: var(--ui-font-size-lg);
1037
+ font-weight: var(--ui-font-semibold);
1028
1038
  line-height: var(--ui-line-height-tight);
1029
1039
  }
1030
- .close[data-v-e78fa426] {
1040
+ .close[data-v-05ac1756] {
1031
1041
  display: inline-grid;
1032
1042
  place-items: center;
1033
1043
  flex: none;
1034
1044
  margin-inline-start: auto;
1035
- inline-size: var(--ui-control-size-sm, 2rem);
1036
- block-size: var(--ui-control-size-sm, 2rem);
1045
+ inline-size: var(--ui-control-size-sm);
1046
+ block-size: var(--ui-control-size-sm);
1037
1047
  padding: 0;
1038
1048
  border: 0;
1039
- border-radius: var(--ui-radius-round, 999px);
1049
+ border-radius: var(--ui-radius-round);
1040
1050
  background: transparent;
1041
1051
  color: var(--ui-text-secondary);
1042
1052
  cursor: pointer;
@@ -1046,8 +1056,8 @@ header[data-v-e78fa426] {
1046
1056
  }
1047
1057
 
1048
1058
  /* A CSS-drawn X. */
1049
- .close[data-v-e78fa426]::before,
1050
- .close[data-v-e78fa426]::after {
1059
+ .close[data-v-05ac1756]::before,
1060
+ .close[data-v-05ac1756]::after {
1051
1061
  content: "";
1052
1062
  grid-area: 1 / 1;
1053
1063
  inline-size: 0.875rem;
@@ -1056,37 +1066,37 @@ header[data-v-e78fa426] {
1056
1066
  background: currentColor;
1057
1067
  transform: rotate(45deg);
1058
1068
  }
1059
- .close[data-v-e78fa426]::after {
1069
+ .close[data-v-05ac1756]::after {
1060
1070
  transform: rotate(-45deg);
1061
1071
  }
1062
- .close[data-v-e78fa426]:hover {
1072
+ .close[data-v-05ac1756]:hover {
1063
1073
  background: var(--ui-surface-muted);
1064
1074
  color: var(--ui-text-primary);
1065
1075
  }
1066
- .close[data-v-e78fa426]:focus-visible {
1067
- outline: 2px solid var(--ui-focus-ring, currentColor);
1076
+ .close[data-v-05ac1756]:focus-visible {
1077
+ outline: 2px solid var(--ui-focus-ring);
1068
1078
  outline-offset: 2px;
1069
1079
  }
1070
1080
 
1071
1081
  /* A touch target, like Button on coarse pointers. */
1072
1082
  @media (pointer: coarse) {
1073
- .close[data-v-e78fa426] {
1074
- inline-size: var(--ui-control-min-block-size, 2.75rem);
1075
- block-size: var(--ui-control-min-block-size, 2.75rem);
1083
+ .close[data-v-05ac1756] {
1084
+ inline-size: var(--ui-control-min-block-size);
1085
+ block-size: var(--ui-control-min-block-size);
1076
1086
  }
1077
1087
  }
1078
- html[data-ui-input-modality="touch"] [data-component~="ui-dialog"] .close[data-v-e78fa426] {
1079
- inline-size: var(--ui-control-min-block-size, 2.75rem);
1080
- block-size: var(--ui-control-min-block-size, 2.75rem);
1088
+ html[data-ui-input-modality="touch"] [data-component~="ui-dialog"] .close[data-v-05ac1756] {
1089
+ inline-size: var(--ui-control-min-block-size);
1090
+ block-size: var(--ui-control-min-block-size);
1081
1091
  }
1082
- .body[data-v-e78fa426] {
1092
+ .body[data-v-05ac1756] {
1083
1093
  flex: 1 1 auto;
1084
1094
  min-block-size: 0;
1085
1095
  overflow: auto;
1086
1096
  overscroll-behavior: contain;
1087
1097
  padding: var(--ui-space-5);
1088
1098
  }
1089
- footer[data-v-e78fa426] {
1099
+ footer[data-v-05ac1756] {
1090
1100
  display: flex;
1091
1101
  flex: none;
1092
1102
  flex-wrap: wrap;
@@ -1095,72 +1105,85 @@ footer[data-v-e78fa426] {
1095
1105
  padding: var(--ui-space-3) var(--ui-space-5);
1096
1106
  border-block-start: 1px solid var(--ui-border-default);
1097
1107
  }
1098
- footer[data-v-e78fa426]:empty {
1108
+ footer[data-v-05ac1756]:empty {
1099
1109
  display: none;
1100
1110
  }
1101
- @keyframes ui-dialog-enter-e78fa426 {
1111
+ @keyframes ui-dialog-enter-05ac1756 {
1102
1112
  from {
1103
1113
  opacity: 0;
1104
1114
  transform: scale(0.96);
1105
1115
  }
1106
1116
  }
1107
- [data-component~="ui-dialog"][data-v-e78fa426]::backdrop {
1117
+ [data-component~="ui-dialog"][data-v-05ac1756]::backdrop {
1108
1118
  background-color: transparent;
1109
1119
  transition:
1110
1120
  background-color var(--ui-dialog-duration, var(--ui-motion-base)) var(--ui-motion-ease),
1111
1121
  display var(--ui-dialog-duration, var(--ui-motion-base)) var(--ui-motion-ease) allow-discrete,
1112
1122
  overlay var(--ui-dialog-duration, var(--ui-motion-base)) var(--ui-motion-ease) allow-discrete;
1113
1123
  }
1114
- [data-component~="ui-dialog"][open][data-v-e78fa426]::backdrop {
1124
+ [data-component~="ui-dialog"][open][data-v-05ac1756]::backdrop {
1115
1125
  background-color: var(--ui-overlay-backdrop);
1116
- animation: ui-dialog-backdrop-enter-e78fa426 var(--ui-dialog-duration, var(--ui-motion-base))
1126
+ animation: ui-dialog-backdrop-enter-05ac1756 var(--ui-dialog-duration, var(--ui-motion-base))
1117
1127
  var(--ui-motion-ease);
1118
1128
  }
1119
- @keyframes ui-dialog-backdrop-enter-e78fa426 {
1129
+ @keyframes ui-dialog-backdrop-enter-05ac1756 {
1120
1130
  from {
1121
1131
  background-color: transparent;
1122
1132
  }
1123
1133
  }
1124
1134
 
1135
+ /* Density resolves into the summary row's own values; the public tokens still override them. */
1136
+ [data-component~="ui-disclosure"][data-v-d9a330a8] {
1137
+ --_trigger-min-block-size: var(--ui-control-size);
1138
+ --_trigger-padding-block: var(--ui-space-2);
1139
+ --_trigger-padding-inline: var(--ui-space-3);
1140
+ }
1141
+ [data-component~="ui-disclosure"][data-ui-disclosure-state~="density=compact"][data-v-d9a330a8] {
1142
+ --_trigger-min-block-size: var(--ui-control-size-sm);
1143
+ --_trigger-padding-block: var(--ui-space-1);
1144
+ --_trigger-padding-inline: var(--ui-space-2);
1145
+ }
1146
+
1125
1147
  /* An accordion row, not a field: no enclosing box, just a divider, so it never reads as a
1126
1148
  * select or combobox. Stacked disclosures share their dividers. */
1127
- [data-component~="ui-disclosure"][data-v-283377cf] {
1149
+ [data-component~="ui-disclosure"][data-v-d9a330a8] {
1128
1150
  display: block;
1129
1151
  inline-size: 100%;
1130
1152
  overflow: clip;
1131
1153
  border-block-end: 1px solid var(--ui-border-default);
1132
1154
  color: var(--ui-text-primary);
1133
1155
  }
1134
- .trigger[data-v-283377cf] {
1156
+ .trigger[data-v-d9a330a8] {
1135
1157
  display: grid;
1136
1158
  grid-template-columns: minmax(0, 1fr) auto;
1137
1159
  gap: var(--ui-space-3);
1138
1160
  align-items: center;
1139
1161
  inline-size: 100%;
1140
- min-block-size: 2.5rem;
1141
- padding: var(--ui-space-2) var(--ui-space-3);
1162
+ min-block-size: var(--ui-disclosure-trigger-min-block-size, var(--_trigger-min-block-size));
1163
+ padding: var(--ui-disclosure-trigger-padding-block, var(--_trigger-padding-block))
1164
+ var(--ui-disclosure-trigger-padding-inline, var(--_trigger-padding-inline));
1142
1165
  border: 0;
1143
1166
  background: transparent;
1144
1167
  color: inherit;
1145
1168
  font: inherit;
1146
- font-weight: var(--ui-font-semibold, 600);
1169
+ font-weight: var(--ui-font-semibold);
1147
1170
  text-align: start;
1148
1171
  cursor: pointer;
1149
- border-radius: var(--ui-radius-1);
1172
+ border-radius: var(--ui-radius-sm);
1150
1173
  transition: background-color var(--ui-motion-fast) var(--ui-motion-ease);
1151
1174
  }
1152
- .trigger[data-v-283377cf]:hover:not(:disabled) {
1175
+ .trigger[data-v-d9a330a8]:hover:not(:disabled) {
1153
1176
  background: var(--ui-surface-muted);
1154
1177
  }
1155
- .trigger[data-v-283377cf]:focus-visible {
1178
+ .trigger[data-v-d9a330a8]:focus-visible {
1156
1179
  outline: none;
1157
1180
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--ui-focus-ring) 45%, transparent);
1158
1181
  }
1159
- .trigger[data-v-283377cf]:disabled {
1182
+ .trigger[data-v-d9a330a8]:disabled {
1160
1183
  color: var(--ui-text-muted);
1161
1184
  cursor: not-allowed;
1162
1185
  }
1163
- .chevron[data-v-283377cf] {
1186
+ .chevron[data-v-d9a330a8] {
1164
1187
  inline-size: 0.5rem;
1165
1188
  block-size: 0.5rem;
1166
1189
  border-inline-end: 2px solid currentColor;
@@ -1168,39 +1191,39 @@ from {
1168
1191
  transform: rotate(45deg) translate(-1px, -1px);
1169
1192
  transition: transform var(--ui-motion-fast) var(--ui-motion-ease);
1170
1193
  }
1171
- .panel[data-v-283377cf] {
1194
+ .panel[data-v-d9a330a8] {
1172
1195
  display: grid;
1173
1196
  grid-template-rows: 0fr;
1174
1197
  transition: grid-template-rows var(--ui-motion-fast)
1175
1198
  var(--ui-motion-ease-out, var(--ui-motion-ease));
1176
1199
  }
1177
- .panel-inner[data-v-283377cf] {
1200
+ .panel-inner[data-v-d9a330a8] {
1178
1201
  min-block-size: 0;
1179
1202
  overflow: hidden;
1180
1203
  padding-inline: var(--ui-space-3);
1181
1204
  }
1182
- [data-component~="ui-disclosure"][data-ui-disclosure-state~="internalOpen"] .panel[data-v-283377cf] {
1205
+ [data-component~="ui-disclosure"][data-ui-disclosure-state~="internalOpen"] .panel[data-v-d9a330a8] {
1183
1206
  grid-template-rows: 1fr;
1184
1207
  }
1185
- [data-component~="ui-disclosure"][data-ui-disclosure-state~="internalOpen"] .panel-inner[data-v-283377cf] {
1208
+ [data-component~="ui-disclosure"][data-ui-disclosure-state~="internalOpen"] .panel-inner[data-v-d9a330a8] {
1186
1209
  padding-block: 0 var(--ui-space-3);
1187
1210
  }
1188
- [data-component~="ui-disclosure"][data-ui-disclosure-state~="internalOpen"] .chevron[data-v-283377cf] {
1211
+ [data-component~="ui-disclosure"][data-ui-disclosure-state~="internalOpen"] .chevron[data-v-d9a330a8] {
1189
1212
  transform: rotate(225deg) translate(-1px, -1px);
1190
1213
  }
1191
1214
  @media (prefers-reduced-motion: reduce) {
1192
- .panel[data-v-283377cf],
1193
- .chevron[data-v-283377cf] {
1215
+ .panel[data-v-d9a330a8],
1216
+ .chevron[data-v-d9a330a8] {
1194
1217
  transition: none;
1195
1218
  }
1196
1219
  }
1197
1220
 
1198
1221
  /* A component that sets its display still honours the hidden attribute on its root. */
1199
- [data-component~="ui-disclosure"][hidden][data-v-283377cf] {
1222
+ [data-component~="ui-disclosure"][hidden][data-v-d9a330a8] {
1200
1223
  display: none;
1201
1224
  }
1202
1225
 
1203
- [data-component~="ui-editable"][data-v-f4bef809] {
1226
+ [data-component~="ui-editable"][data-v-3707d050] {
1204
1227
  display: flex;
1205
1228
  flex-wrap: wrap;
1206
1229
  align-items: center;
@@ -1211,20 +1234,20 @@ from {
1211
1234
 
1212
1235
  /* The value and the input share one grid cell with identical box metrics, so switching between
1213
1236
  * display and edit never changes the control's size or moves the text. */
1214
- .field[data-v-f4bef809] {
1237
+ .field[data-v-3707d050] {
1215
1238
  display: inline-grid;
1216
1239
  min-inline-size: 8rem;
1217
1240
  max-inline-size: 100%;
1218
1241
  }
1219
- .preview[data-v-f4bef809],
1220
- .input[data-v-f4bef809] {
1242
+ .preview[data-v-3707d050],
1243
+ .input[data-v-3707d050] {
1221
1244
  grid-area: 1 / 1;
1222
1245
  box-sizing: border-box;
1223
- min-block-size: var(--ui-control-size-sm, 2rem);
1246
+ min-block-size: var(--ui-control-size-sm);
1224
1247
  margin: 0;
1225
1248
  padding: var(--ui-space-1) var(--ui-space-2);
1226
1249
  border: 1px solid transparent;
1227
- border-radius: var(--ui-radius-2);
1250
+ border-radius: var(--ui-radius-md);
1228
1251
  font: inherit;
1229
1252
  line-height: var(--ui-line-height-md);
1230
1253
  color: inherit;
@@ -1233,7 +1256,7 @@ from {
1233
1256
  border-color var(--ui-motion-fast) var(--ui-motion-ease),
1234
1257
  box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
1235
1258
  }
1236
- .preview[data-v-f4bef809] {
1259
+ .preview[data-v-3707d050] {
1237
1260
  display: inline-flex;
1238
1261
  gap: var(--ui-space-2);
1239
1262
  align-items: center;
@@ -1241,233 +1264,233 @@ from {
1241
1264
  text-align: start;
1242
1265
  cursor: pointer;
1243
1266
  }
1244
- .preview[data-v-f4bef809]:hover:not(:disabled) {
1267
+ .preview[data-v-3707d050]:hover:not(:disabled) {
1245
1268
  background: var(--ui-surface-muted);
1246
1269
  }
1247
- .preview[data-v-f4bef809]:focus-visible {
1270
+ .preview[data-v-3707d050]:focus-visible {
1248
1271
  outline: none;
1249
1272
  box-shadow: var(--ui-focus-halo);
1250
1273
  }
1251
- .hint[data-v-f4bef809] {
1274
+ .hint[data-v-3707d050] {
1252
1275
  color: var(--ui-text-secondary);
1253
1276
  font-size: var(--ui-font-size-sm);
1254
1277
  }
1255
1278
 
1256
1279
  /* Contained so it takes the value's width instead of its own default input width. */
1257
- .input[data-v-f4bef809] {
1280
+ .input[data-v-3707d050] {
1258
1281
  contain: inline-size;
1259
1282
  inline-size: 100%;
1260
1283
  min-inline-size: 0;
1261
1284
  visibility: hidden;
1262
1285
  background: var(--ui-control-surface, var(--ui-surface-elevated));
1263
1286
  }
1264
- .input[data-v-f4bef809]:focus {
1287
+ .input[data-v-3707d050]:focus {
1265
1288
  outline: none;
1266
1289
  border-color: var(--ui-control-focus, var(--ui-accent-solid));
1267
1290
  box-shadow:
1268
1291
  var(--ui-control-inset),
1269
1292
  var(--ui-control-focus-halo-shadow);
1270
1293
  }
1271
- .input[data-v-f4bef809]::selection {
1294
+ .input[data-v-3707d050]::selection {
1272
1295
  background: color-mix(in srgb, var(--ui-accent-solid) 20%, transparent);
1273
1296
  }
1274
- [data-component~="ui-editable"][data-ui-editable-state~="internalEdit"] .preview[data-v-f4bef809] {
1297
+ [data-component~="ui-editable"][data-ui-editable-state~="internalEdit"] .preview[data-v-3707d050] {
1275
1298
  visibility: hidden;
1276
1299
  }
1277
- [data-component~="ui-editable"][data-ui-editable-state~="internalEdit"] .input[data-v-f4bef809] {
1300
+ [data-component~="ui-editable"][data-ui-editable-state~="internalEdit"] .input[data-v-3707d050] {
1278
1301
  visibility: visible;
1279
1302
  }
1280
- .actions[data-v-f4bef809] {
1303
+ .actions[data-v-3707d050] {
1281
1304
  display: none;
1282
1305
  gap: var(--ui-space-1);
1283
1306
  }
1284
- [data-component~="ui-editable"][data-ui-editable-state~="internalEdit"] .actions[data-v-f4bef809] {
1307
+ [data-component~="ui-editable"][data-ui-editable-state~="internalEdit"] .actions[data-v-3707d050] {
1285
1308
  display: inline-flex;
1286
1309
  }
1287
- .actions button[data-v-f4bef809] {
1288
- min-block-size: var(--ui-control-size-sm, 2rem);
1310
+ .actions button[data-v-3707d050] {
1311
+ min-block-size: var(--ui-control-size-sm);
1289
1312
  padding: 0 var(--ui-space-3);
1290
1313
  border: 1px solid var(--ui-border-strong);
1291
- border-radius: var(--ui-radius-2);
1314
+ border-radius: var(--ui-radius-md);
1292
1315
  background: var(--ui-surface-elevated);
1293
- background-image: var(--ui-raised-highlight, none);
1294
- box-shadow: var(--ui-raised, none);
1316
+ background-image: var(--ui-raised-highlight);
1317
+ box-shadow: var(--ui-raised);
1295
1318
  color: inherit;
1296
1319
  font: inherit;
1297
1320
  font-size: var(--ui-font-size-sm);
1298
1321
  cursor: pointer;
1299
1322
  }
1300
- .actions .save[data-v-f4bef809] {
1323
+ .actions .save[data-v-3707d050] {
1301
1324
  border-color: var(--ui-accent-solid);
1302
1325
  background: var(--ui-accent-solid);
1303
1326
  color: var(--ui-text-on-accent);
1304
1327
  }
1305
- .actions button[data-v-f4bef809]:focus-visible {
1328
+ .actions button[data-v-3707d050]:focus-visible {
1306
1329
  outline: none;
1307
1330
  box-shadow: var(--ui-focus-halo);
1308
1331
  }
1309
- [data-component~="ui-editable"][data-ui-editable-state~="disabled"] .preview[data-v-f4bef809] {
1332
+ [data-component~="ui-editable"][data-ui-editable-state~="disabled"] .preview[data-v-3707d050] {
1310
1333
  color: var(--ui-text-muted);
1311
1334
  cursor: not-allowed;
1312
1335
  }
1313
1336
 
1314
1337
  /* A component that sets its display still honours the hidden attribute on its root. */
1315
- [data-component~="ui-editable"][hidden][data-v-f4bef809] {
1338
+ [data-component~="ui-editable"][hidden][data-v-3707d050] {
1316
1339
  display: none;
1317
1340
  }
1318
1341
 
1319
- [data-component~="ui-editor-insert-table-grid"][data-v-daf13b61] {
1320
- padding: var(--ui-space-3, 12px);
1321
- background: var(--ui-surface, #fff);
1322
- border: 1px solid var(--ui-border, #e5e7eb);
1323
- border-radius: var(--ui-radius-md, 6px);
1342
+ [data-component~="ui-editor-insert-table-grid"][data-v-c4064690] {
1343
+ padding: var(--ui-space-3);
1344
+ background: var(--ui-surface);
1345
+ border: 1px solid var(--ui-border);
1346
+ border-radius: var(--ui-radius-md);
1324
1347
  box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
1325
1348
  }
1326
- .hint[data-v-daf13b61] {
1327
- margin: 0 0 var(--ui-space-2, 8px);
1328
- font-size: var(--ui-text-sm, 0.875rem);
1329
- color: var(--ui-text-muted, #6b7280);
1349
+ .hint[data-v-c4064690] {
1350
+ margin: 0 0 var(--ui-space-2);
1351
+ font-size: var(--ui-font-size-sm);
1352
+ color: var(--ui-text-muted);
1330
1353
  }
1331
- .grid[data-v-daf13b61] {
1354
+ .grid[data-v-c4064690] {
1332
1355
  display: grid;
1333
1356
  grid-template-columns: repeat(var(--ui-editor-table-grid-cols, 8), 1.25rem);
1334
1357
  grid-template-rows: repeat(var(--ui-editor-table-grid-rows, 8), 1.25rem);
1335
1358
  gap: 2px;
1336
- margin-bottom: var(--ui-space-2, 8px);
1359
+ margin-bottom: var(--ui-space-2);
1337
1360
  }
1338
- .cell[data-v-daf13b61] {
1361
+ .cell[data-v-c4064690] {
1339
1362
  width: 1.25rem;
1340
1363
  height: 1.25rem;
1341
1364
  padding: 0;
1342
- border: 1px solid var(--ui-border, #e5e7eb);
1365
+ border: 1px solid var(--ui-border);
1343
1366
  border-radius: 2px;
1344
- background: var(--ui-surface, #fff);
1367
+ background: var(--ui-surface);
1345
1368
  cursor: pointer;
1346
1369
  }
1347
- .cell.selected[data-v-daf13b61] {
1348
- background: var(--ui-accent-solid, var(--ui-accent, #0066cc));
1349
- border-color: var(--ui-accent-solid, var(--ui-accent, #0066cc));
1370
+ .cell.selected[data-v-c4064690] {
1371
+ background: var(--ui-accent-solid, var(--ui-accent));
1372
+ border-color: var(--ui-accent-solid, var(--ui-accent));
1350
1373
  }
1351
- .header[data-v-daf13b61] {
1374
+ .header[data-v-c4064690] {
1352
1375
  display: block;
1353
- margin-bottom: var(--ui-space-2, 8px);
1354
- font-size: var(--ui-text-sm, 0.875rem);
1376
+ margin-bottom: var(--ui-space-2);
1377
+ font-size: var(--ui-font-size-sm);
1355
1378
  cursor: pointer;
1356
1379
  }
1357
- [data-component~="ui-editor-insert-table-grid"] .insert[data-v-daf13b61] {
1380
+ [data-component~="ui-editor-insert-table-grid"] .insert[data-v-c4064690] {
1358
1381
  width: 100%;
1359
- padding: var(--ui-space-2, 8px) var(--ui-space-3, 12px);
1360
- border: 1px solid var(--ui-border, #e5e7eb);
1361
- border-radius: var(--ui-radius-sm, 4px);
1362
- background: var(--ui-accent-solid, var(--ui-accent, #0066cc));
1363
- color: var(--ui-accent-contrast, #fff);
1364
- font-size: var(--ui-text-sm, 0.875rem);
1382
+ padding: var(--ui-space-2) var(--ui-space-3);
1383
+ border: 1px solid var(--ui-border);
1384
+ border-radius: var(--ui-radius-sm);
1385
+ background: var(--ui-accent-solid, var(--ui-accent));
1386
+ color: var(--ui-accent-contrast);
1387
+ font-size: var(--ui-font-size-sm);
1365
1388
  cursor: pointer;
1366
1389
  }
1367
- [data-component~="ui-editor-insert-table-grid"] .insert[data-v-daf13b61]:hover {
1390
+ [data-component~="ui-editor-insert-table-grid"] .insert[data-v-c4064690]:hover {
1368
1391
  filter: brightness(1.05);
1369
1392
  }
1370
- [data-component~="ui-editor-insert-table-grid"][hidden][data-v-daf13b61] {
1393
+ [data-component~="ui-editor-insert-table-grid"][hidden][data-v-c4064690] {
1371
1394
  display: none;
1372
1395
  }
1373
1396
 
1374
- [data-component~="ui-editor-mention-menu"][data-v-e6ede828] {
1397
+ [data-component~="ui-editor-mention-menu"][data-v-2abe407e] {
1375
1398
  user-select: none;
1376
1399
  }
1377
- [data-component~="ui-editor-mention-menu"][data-v-e6ede828] {
1400
+ [data-component~="ui-editor-mention-menu"][data-v-2abe407e] {
1378
1401
  display: flex;
1379
1402
  overflow: hidden;
1380
1403
  flex-direction: column;
1381
- background: var(--ui-surface, #fff);
1382
- border: 1px solid var(--ui-border, #e5e7eb);
1383
- border-radius: var(--ui-radius-xl, 1rem);
1404
+ background: var(--ui-surface);
1405
+ border: 1px solid var(--ui-border);
1406
+ border-radius: var(--ui-radius-dialog);
1384
1407
  box-shadow: var(--ui-shadow-lg, 0 8px 24px rgb(0 0 0 / 0.12));
1385
1408
  }
1386
- .header[data-v-e6ede828] {
1409
+ .header[data-v-2abe407e] {
1387
1410
  display: flex;
1388
1411
  align-items: center;
1389
1412
  justify-content: space-between;
1390
- gap: var(--ui-space-3, 12px);
1391
- padding: var(--ui-space-2, 8px) var(--ui-space-3, 12px);
1392
- color: var(--ui-text-secondary, #4b5563);
1393
- border-bottom: 1px solid var(--ui-border, #e5e7eb);
1394
- font-size: var(--ui-font-size-xs, 0.75rem);
1395
- font-weight: var(--ui-font-semibold, 600);
1413
+ gap: var(--ui-space-3);
1414
+ padding: var(--ui-space-2) var(--ui-space-3);
1415
+ color: var(--ui-text-secondary);
1416
+ border-bottom: 1px solid var(--ui-border);
1417
+ font-size: var(--ui-font-size-xs);
1418
+ font-weight: var(--ui-font-semibold);
1396
1419
  }
1397
- .hint[data-v-e6ede828] {
1420
+ .hint[data-v-2abe407e] {
1398
1421
  overflow: hidden;
1399
- color: var(--ui-text-muted, #6b7280);
1400
- font-weight: var(--ui-font-normal, 400);
1422
+ color: var(--ui-text-muted);
1423
+ font-weight: var(--ui-font-normal);
1401
1424
  text-overflow: ellipsis;
1402
1425
  white-space: nowrap;
1403
1426
  }
1404
- .list[data-v-e6ede828] {
1427
+ .list[data-v-2abe407e] {
1405
1428
  max-height: 280px;
1406
- padding: var(--ui-space-1, 4px) 0;
1429
+ padding: var(--ui-space-1) 0;
1407
1430
  margin: 0;
1408
1431
  overflow-y: auto;
1409
1432
  overscroll-behavior: contain;
1410
1433
  list-style: none;
1411
1434
  }
1412
- .item[data-v-e6ede828] {
1435
+ .item[data-v-2abe407e] {
1413
1436
  display: flex;
1414
1437
  align-items: center;
1415
1438
  min-height: 44px;
1416
- padding: var(--ui-space-1-5, 6px) var(--ui-space-3, 12px);
1417
- gap: var(--ui-space-3, 12px);
1439
+ padding: var(--ui-space-2) var(--ui-space-3);
1440
+ gap: var(--ui-space-3);
1418
1441
  cursor: pointer;
1419
1442
  }
1420
- .item.active[data-v-e6ede828] {
1443
+ .item.active[data-v-2abe407e] {
1421
1444
  background: var(--ui-accent-subtle, rgb(59 130 246 / 0.1));
1422
1445
  }
1423
- .avatar[data-v-e6ede828] {
1446
+ .avatar[data-v-2abe407e] {
1424
1447
  display: inline-flex;
1425
1448
  align-items: center;
1426
1449
  justify-content: center;
1427
1450
  width: 32px;
1428
1451
  height: 32px;
1429
1452
  flex: 0 0 auto;
1430
- color: var(--ui-accent-active, var(--ui-accent-solid, #2563eb));
1431
- background: var(--ui-accent-soft, var(--ui-accent-subtle, #eff6ff));
1453
+ color: var(--ui-accent-active, var(--ui-accent-solid));
1454
+ background: var(--ui-accent-soft, var(--ui-accent-subtle));
1432
1455
  border-radius: 999px;
1433
- font-size: var(--ui-font-size-xs, 0.75rem);
1434
- font-weight: var(--ui-font-semibold, 600);
1456
+ font-size: var(--ui-font-size-xs);
1457
+ font-weight: var(--ui-font-semibold);
1435
1458
  }
1436
- .body[data-v-e6ede828] {
1459
+ .body[data-v-2abe407e] {
1437
1460
  display: flex;
1438
1461
  min-width: 0;
1439
1462
  flex-direction: column;
1440
1463
  }
1441
- .label[data-v-e6ede828],
1442
- .detail[data-v-e6ede828] {
1464
+ .label[data-v-2abe407e],
1465
+ .detail[data-v-2abe407e] {
1443
1466
  overflow: hidden;
1444
1467
  text-overflow: ellipsis;
1445
1468
  white-space: nowrap;
1446
1469
  }
1447
- .label[data-v-e6ede828] {
1448
- color: var(--ui-text-primary, #111827);
1449
- font-size: var(--ui-font-size-sm, 0.875rem);
1450
- font-weight: var(--ui-font-medium, 500);
1470
+ .label[data-v-2abe407e] {
1471
+ color: var(--ui-text-primary);
1472
+ font-size: var(--ui-font-size-sm);
1473
+ font-weight: var(--ui-font-medium);
1451
1474
  }
1452
- .detail[data-v-e6ede828],
1453
- .loading[data-v-e6ede828] {
1454
- color: var(--ui-text-muted, #6b7280);
1455
- font-size: var(--ui-font-size-xs, 0.75rem);
1475
+ .detail[data-v-2abe407e],
1476
+ .loading[data-v-2abe407e] {
1477
+ color: var(--ui-text-muted);
1478
+ font-size: var(--ui-font-size-xs);
1456
1479
  }
1457
- .loading[data-v-e6ede828] {
1480
+ .loading[data-v-2abe407e] {
1458
1481
  min-height: 44px;
1459
- padding: var(--ui-space-3, 12px);
1482
+ padding: var(--ui-space-3);
1460
1483
  }
1461
1484
  @media (max-width: 767px) {
1462
- [data-component~="ui-editor-mention-menu"][data-v-e6ede828] {
1485
+ [data-component~="ui-editor-mention-menu"][data-v-2abe407e] {
1463
1486
  border-bottom: 0;
1464
- border-radius: var(--ui-radius-xl, 1rem) var(--ui-radius-xl, 1rem) 0 0;
1487
+ border-radius: var(--ui-radius-dialog) var(--ui-radius-dialog) 0 0;
1465
1488
  }
1466
- .list[data-v-e6ede828] {
1489
+ .list[data-v-2abe407e] {
1467
1490
  max-height: calc(60dvh - 48px);
1468
1491
  }
1469
1492
  }
1470
- [data-component~="ui-editor-mention-menu"][hidden][data-v-e6ede828] {
1493
+ [data-component~="ui-editor-mention-menu"][hidden][data-v-2abe407e] {
1471
1494
  display: none;
1472
1495
  }
1473
1496
 
@@ -1488,159 +1511,159 @@ svg[data-v-b2b50d17] {
1488
1511
  display: none;
1489
1512
  }
1490
1513
 
1491
- [data-component~="ui-editor-slash-menu"][data-v-6616eea5] {
1514
+ [data-component~="ui-editor-slash-menu"][data-v-aeee1d4f] {
1492
1515
  user-select: none;
1493
1516
  }
1494
- [data-component~="ui-editor-slash-menu"][data-v-6616eea5] {
1495
- background: var(--ui-surface, #fff);
1496
- border: 1px solid var(--ui-border, #e5e7eb);
1497
- border-radius: var(--ui-radius-xl, 1rem);
1517
+ [data-component~="ui-editor-slash-menu"][data-v-aeee1d4f] {
1518
+ background: var(--ui-surface);
1519
+ border: 1px solid var(--ui-border);
1520
+ border-radius: var(--ui-radius-dialog);
1498
1521
  box-shadow: var(--ui-shadow-lg, 0 8px 24px rgb(0 0 0 / 0.12));
1499
1522
  overflow: hidden;
1500
1523
  display: flex;
1501
1524
  flex-direction: column;
1502
1525
  }
1503
1526
  @media (max-width: 767px) {
1504
- [data-component~="ui-editor-slash-menu"][data-v-6616eea5] {
1505
- border-radius: var(--ui-radius-xl, 1rem) var(--ui-radius-xl, 1rem) 0 0;
1527
+ [data-component~="ui-editor-slash-menu"][data-v-aeee1d4f] {
1528
+ border-radius: var(--ui-radius-dialog) var(--ui-radius-dialog) 0 0;
1506
1529
  border-bottom: none;
1507
1530
  }
1508
1531
  }
1509
- .header[data-v-6616eea5] {
1532
+ .header[data-v-aeee1d4f] {
1510
1533
  display: none;
1511
1534
  align-items: center;
1512
- gap: var(--ui-space-2, 8px);
1513
- padding: var(--ui-space-3, 12px) var(--ui-space-4, 16px);
1514
- border-bottom: 1px solid var(--ui-border, #e5e7eb);
1515
- font-size: var(--ui-font-size-xs, 0.75rem);
1516
- color: var(--ui-text-muted, #6b7280);
1517
- font-weight: var(--ui-font-semibold, 600);
1535
+ gap: var(--ui-space-2);
1536
+ padding: var(--ui-space-3) var(--ui-space-4);
1537
+ border-bottom: 1px solid var(--ui-border);
1538
+ font-size: var(--ui-font-size-xs);
1539
+ color: var(--ui-text-muted);
1540
+ font-weight: var(--ui-font-semibold);
1518
1541
  text-transform: uppercase;
1519
1542
  letter-spacing: 0.05em;
1520
1543
  }
1521
1544
  @media (max-width: 767px) {
1522
- .header[data-v-6616eea5] {
1545
+ .header[data-v-aeee1d4f] {
1523
1546
  display: flex;
1524
1547
  }
1525
1548
  }
1526
- .header-query[data-v-6616eea5] {
1527
- background: var(--ui-surface-hover, #f3f4f6);
1528
- border-radius: var(--ui-radius-sm, 4px);
1549
+ .header-query[data-v-aeee1d4f] {
1550
+ background: var(--ui-surface-hover);
1551
+ border-radius: var(--ui-radius-sm);
1529
1552
  padding: 0.1em 0.4em;
1530
1553
  font-family: var(--ui-font-family-mono, ui-monospace, monospace);
1531
- font-size: var(--ui-font-size-xs, 0.75rem);
1532
- color: var(--ui-accent, #3b82f6);
1554
+ font-size: var(--ui-font-size-xs);
1555
+ color: var(--ui-accent);
1533
1556
  text-transform: none;
1534
1557
  letter-spacing: 0;
1535
1558
  }
1536
- .list[data-v-6616eea5] {
1559
+ .list[data-v-aeee1d4f] {
1537
1560
  list-style: none;
1538
1561
  margin: 0;
1539
- padding: var(--ui-space-1, 4px) 0;
1562
+ padding: var(--ui-space-1) 0;
1540
1563
  overflow-y: auto;
1541
1564
  max-height: 280px;
1542
1565
  overscroll-behavior: contain;
1543
1566
  }
1544
1567
  @media (max-width: 767px) {
1545
- .list[data-v-6616eea5] {
1568
+ .list[data-v-aeee1d4f] {
1546
1569
  max-height: calc(60dvh - 80px);
1547
- padding: var(--ui-space-1, 4px) 0 var(--ui-space-2, 8px);
1570
+ padding: var(--ui-space-1) 0 var(--ui-space-2);
1548
1571
  }
1549
1572
  }
1550
- .item[data-v-6616eea5] {
1573
+ .item[data-v-aeee1d4f] {
1551
1574
  display: flex;
1552
1575
  align-items: center;
1553
- gap: var(--ui-space-3, 12px);
1554
- padding: var(--ui-space-2, 8px) var(--ui-space-3, 12px);
1576
+ gap: var(--ui-space-3);
1577
+ padding: var(--ui-space-2) var(--ui-space-3);
1555
1578
  min-height: 44px;
1556
1579
  cursor: pointer;
1557
1580
  transition: background-color 120ms ease;
1558
1581
  }
1559
- .item.active[data-v-6616eea5] {
1582
+ .item.active[data-v-aeee1d4f] {
1560
1583
  background: var(--ui-accent-subtle, rgb(59 130 246 / 0.1));
1561
1584
  }
1562
- .icon[data-v-6616eea5] {
1585
+ .icon[data-v-aeee1d4f] {
1563
1586
  display: flex;
1564
1587
  align-items: center;
1565
1588
  justify-content: center;
1566
1589
  width: 32px;
1567
1590
  height: 32px;
1568
- background: var(--ui-surface-hover, #f3f4f6);
1569
- border: 1px solid var(--ui-border, #e5e7eb);
1570
- border-radius: var(--ui-radius-md, 6px);
1571
- font-size: var(--ui-font-size-sm, 0.875rem);
1572
- font-weight: var(--ui-font-bold, 700);
1573
- color: var(--ui-text-secondary, #4b5563);
1591
+ background: var(--ui-surface-hover);
1592
+ border: 1px solid var(--ui-border);
1593
+ border-radius: var(--ui-radius-md);
1594
+ font-size: var(--ui-font-size-sm);
1595
+ font-weight: var(--ui-font-bold);
1596
+ color: var(--ui-text-secondary);
1574
1597
  font-family: var(--ui-font-family-mono, ui-monospace, monospace);
1575
1598
  flex-shrink: 0;
1576
1599
  line-height: 1;
1577
1600
  }
1578
- .item.active .icon[data-v-6616eea5] {
1579
- background: var(--ui-accent, #3b82f6);
1580
- border-color: var(--ui-accent, #3b82f6);
1581
- color: var(--ui-accent-contrast, #fff);
1601
+ .item.active .icon[data-v-aeee1d4f] {
1602
+ background: var(--ui-accent);
1603
+ border-color: var(--ui-accent);
1604
+ color: var(--ui-accent-contrast);
1582
1605
  }
1583
- .icon[data-v-6616eea5] {
1606
+ .icon[data-v-aeee1d4f] {
1584
1607
  --ui-icon-size: 1rem;
1585
1608
  --ui-icon-stroke-width: var(--ui-editor-toolbar-icon-stroke-width, 1.75);
1586
1609
  }
1587
- .body[data-v-6616eea5] {
1610
+ .body[data-v-aeee1d4f] {
1588
1611
  display: flex;
1589
1612
  min-width: 0;
1590
1613
  flex-direction: column;
1591
1614
  gap: 1px;
1592
1615
  }
1593
- .title[data-v-6616eea5] {
1594
- font-size: var(--ui-font-size-sm, 0.875rem);
1595
- font-weight: var(--ui-font-medium, 500);
1596
- color: var(--ui-text, #111827);
1616
+ .title[data-v-aeee1d4f] {
1617
+ font-size: var(--ui-font-size-sm);
1618
+ font-weight: var(--ui-font-medium);
1619
+ color: var(--ui-text);
1597
1620
  white-space: nowrap;
1598
1621
  overflow: hidden;
1599
1622
  text-overflow: ellipsis;
1600
1623
  }
1601
- .description[data-v-6616eea5] {
1602
- font-size: var(--ui-font-size-xs, 0.75rem);
1603
- color: var(--ui-text-muted, #6b7280);
1624
+ .description[data-v-aeee1d4f] {
1625
+ font-size: var(--ui-font-size-xs);
1626
+ color: var(--ui-text-muted);
1604
1627
  white-space: nowrap;
1605
1628
  overflow: hidden;
1606
1629
  text-overflow: ellipsis;
1607
1630
  }
1608
- .footer[data-v-6616eea5] {
1631
+ .footer[data-v-aeee1d4f] {
1609
1632
  display: none;
1610
- padding: var(--ui-space-2, 8px) var(--ui-space-3, 12px);
1611
- border-top: 1px solid var(--ui-border, #e5e7eb);
1612
- font-size: var(--ui-font-size-xs, 0.75rem);
1613
- color: var(--ui-text-muted, #6b7280);
1633
+ padding: var(--ui-space-2) var(--ui-space-3);
1634
+ border-top: 1px solid var(--ui-border);
1635
+ font-size: var(--ui-font-size-xs);
1636
+ color: var(--ui-text-muted);
1614
1637
  }
1615
1638
  @media (min-width: 768px) {
1616
- .footer[data-v-6616eea5] {
1639
+ .footer[data-v-aeee1d4f] {
1617
1640
  display: block;
1618
1641
  }
1619
1642
  }
1620
- [data-component~="ui-editor-slash-menu"] kbd[data-v-6616eea5] {
1643
+ [data-component~="ui-editor-slash-menu"] kbd[data-v-aeee1d4f] {
1621
1644
  display: inline-flex;
1622
1645
  align-items: center;
1623
1646
  justify-content: center;
1624
1647
  font-family: var(--ui-font-family-mono, ui-monospace, monospace);
1625
1648
  font-size: 10px;
1626
- background: var(--ui-surface-hover, #f3f4f6);
1627
- border: 1px solid var(--ui-border, #e5e7eb);
1649
+ background: var(--ui-surface-hover);
1650
+ border: 1px solid var(--ui-border);
1628
1651
  border-radius: 3px;
1629
1652
  padding: 0 3px;
1630
- color: var(--ui-text-secondary, #4b5563);
1653
+ color: var(--ui-text-secondary);
1631
1654
  }
1632
- [data-component~="ui-editor-slash-menu"][hidden][data-v-6616eea5] {
1655
+ [data-component~="ui-editor-slash-menu"][hidden][data-v-aeee1d4f] {
1633
1656
  display: none;
1634
1657
  }
1635
1658
 
1636
- [data-component~="ui-editor-table-context-menu"][data-v-db07efb3] {
1659
+ [data-component~="ui-editor-table-context-menu"][data-v-7c984caf] {
1637
1660
  min-width: 14rem;
1638
1661
  max-width: min(17rem, calc(100vw - 24px));
1639
1662
  max-height: min(28rem, calc(100vh - 24px));
1640
- padding: var(--ui-space-1-5, 6px);
1641
- background: var(--ui-surface, #fff);
1642
- border: 1px solid var(--ui-border, #e5e7eb);
1643
- border-radius: var(--ui-radius-lg, 10px);
1663
+ padding: var(--ui-space-2);
1664
+ background: var(--ui-surface);
1665
+ border: 1px solid var(--ui-border);
1666
+ border-radius: var(--ui-radius-lg);
1644
1667
  box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
1645
1668
  display: flex;
1646
1669
  flex-direction: column;
@@ -1649,125 +1672,125 @@ svg[data-v-b2b50d17] {
1649
1672
  overscroll-behavior: contain;
1650
1673
  scrollbar-width: thin;
1651
1674
  }
1652
- .section[data-v-db07efb3] {
1675
+ .section[data-v-7c984caf] {
1653
1676
  display: flex;
1654
1677
  flex-direction: column;
1655
1678
  gap: 3px;
1656
1679
  }
1657
- [data-component~="ui-editor-table-context-menu"] button[data-v-db07efb3] {
1680
+ [data-component~="ui-editor-table-context-menu"] button[data-v-7c984caf] {
1658
1681
  display: flex;
1659
1682
  align-items: center;
1660
- gap: var(--ui-space-2, 8px);
1683
+ gap: var(--ui-space-2);
1661
1684
  width: 100%;
1662
1685
  text-align: left;
1663
1686
  min-height: 32px;
1664
- padding: var(--ui-space-1-5, 6px) var(--ui-space-2, 8px);
1687
+ padding: var(--ui-space-2) var(--ui-space-2);
1665
1688
  border: none;
1666
- border-radius: var(--ui-radius-sm, 4px);
1689
+ border-radius: var(--ui-radius-sm);
1667
1690
  background: none;
1668
- font-size: var(--ui-font-size-sm, 0.875rem);
1691
+ font-size: var(--ui-font-size-sm);
1669
1692
  cursor: pointer;
1670
- color: var(--ui-text, #111);
1693
+ color: var(--ui-text);
1671
1694
  }
1672
- [data-component~="ui-editor-table-context-menu"] button[data-v-db07efb3] {
1695
+ [data-component~="ui-editor-table-context-menu"] button[data-v-7c984caf] {
1673
1696
  --ui-icon-size: 1rem;
1674
1697
  --ui-icon-stroke-width: var(--ui-editor-toolbar-icon-stroke-width, 1.75);
1675
1698
  }
1676
- [data-component~="ui-editor-table-context-menu"] button[data-v-db07efb3]:hover:not(:disabled) {
1677
- background: var(--ui-surface-hover, #f3f4f6);
1699
+ [data-component~="ui-editor-table-context-menu"] button[data-v-7c984caf]:hover:not(:disabled) {
1700
+ background: var(--ui-surface-hover);
1678
1701
  }
1679
- [data-component~="ui-editor-table-context-menu"] button.selected[data-v-db07efb3] {
1702
+ [data-component~="ui-editor-table-context-menu"] button.selected[data-v-7c984caf] {
1680
1703
  background: var(--ui-accent-subtle, rgb(59 130 246 / 0.1));
1681
1704
  }
1682
- [data-component~="ui-editor-table-context-menu"] button.danger[data-v-db07efb3] {
1683
- color: var(--ui-danger, #dc2626);
1705
+ [data-component~="ui-editor-table-context-menu"] button.danger[data-v-7c984caf] {
1706
+ color: var(--ui-danger);
1684
1707
  }
1685
- .swatches[data-v-db07efb3] {
1708
+ .swatches[data-v-7c984caf] {
1686
1709
  display: grid;
1687
1710
  grid-template-columns: repeat(3, minmax(0, 1fr));
1688
1711
  gap: 3px;
1689
1712
  }
1690
- .swatch-button[data-v-db07efb3] {
1713
+ .swatch-button[data-v-7c984caf] {
1691
1714
  display: inline-flex;
1692
1715
  align-items: center;
1693
- gap: var(--ui-space-2, 8px);
1716
+ gap: var(--ui-space-2);
1694
1717
  }
1695
- .swatch[data-v-db07efb3] {
1718
+ .swatch[data-v-7c984caf] {
1696
1719
  display: inline-flex;
1697
1720
  width: 1rem;
1698
1721
  height: 1rem;
1699
1722
  border-radius: 999px;
1700
- border: 1px solid var(--ui-border, #d1d5db);
1723
+ border: 1px solid var(--ui-border);
1701
1724
  background: var(--ui-editor-table-context-swatch, #fff);
1702
1725
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.35);
1703
1726
  flex-shrink: 0;
1704
1727
  }
1705
- .swatch.default[data-v-db07efb3] {
1728
+ .swatch.default[data-v-7c984caf] {
1706
1729
  position: relative;
1707
1730
  background:
1708
1731
  linear-gradient(
1709
1732
  135deg,
1710
1733
  transparent calc(50% - 1px),
1711
- var(--ui-text-muted, #6b7280) calc(50% - 1px),
1712
- var(--ui-text-muted, #6b7280) calc(50% + 1px),
1734
+ var(--ui-text-muted) calc(50% - 1px),
1735
+ var(--ui-text-muted) calc(50% + 1px),
1713
1736
  transparent calc(50% + 1px)
1714
1737
  ),
1715
- var(--ui-surface, #fff);
1738
+ var(--ui-surface);
1716
1739
  }
1717
- .swatch-label[data-v-db07efb3] {
1740
+ .swatch-label[data-v-7c984caf] {
1718
1741
  min-width: 0;
1719
1742
  white-space: nowrap;
1720
1743
  }
1721
- .heading[data-v-db07efb3] {
1722
- padding: var(--ui-space-1, 4px) var(--ui-space-2, 8px);
1744
+ .heading[data-v-7c984caf] {
1745
+ padding: var(--ui-space-1) var(--ui-space-2);
1723
1746
  font-size: 0.6875rem;
1724
1747
  font-weight: 700;
1725
1748
  letter-spacing: 0.05em;
1726
1749
  text-transform: uppercase;
1727
- color: var(--ui-text-muted, #6b7280);
1750
+ color: var(--ui-text-muted);
1728
1751
  }
1729
- .sep[data-v-db07efb3] {
1752
+ .sep[data-v-7c984caf] {
1730
1753
  height: 1px;
1731
- background: var(--ui-border, #e5e7eb);
1732
- margin: var(--ui-space-1, 4px) 0;
1754
+ background: var(--ui-border);
1755
+ margin: var(--ui-space-1) 0;
1733
1756
  }
1734
- [data-component~="ui-editor-table-context-menu"][hidden][data-v-db07efb3] {
1757
+ [data-component~="ui-editor-table-context-menu"][hidden][data-v-7c984caf] {
1735
1758
  display: none;
1736
1759
  }
1737
1760
 
1738
- [data-component~="ui-editor-table-overlay"][data-v-a31eb11f] {
1761
+ [data-component~="ui-editor-table-overlay"][data-v-d5963c35] {
1739
1762
  display: block;
1740
1763
  width: 100%;
1741
1764
  height: 100%;
1742
1765
  overflow: visible;
1743
1766
  pointer-events: none;
1744
1767
  }
1745
- [data-component~="ui-editor-table-overlay"][data-v-a31eb11f] {
1768
+ [data-component~="ui-editor-table-overlay"][data-v-d5963c35] {
1746
1769
  position: relative;
1747
1770
  width: 100%;
1748
1771
  height: 100%;
1749
1772
  overflow: visible;
1750
1773
  pointer-events: none;
1751
1774
  }
1752
- .rows[data-v-a31eb11f],
1753
- .cols[data-v-a31eb11f] {
1775
+ .rows[data-v-d5963c35],
1776
+ .cols[data-v-d5963c35] {
1754
1777
  pointer-events: none;
1755
1778
  position: absolute;
1756
1779
  }
1757
- .rows[data-v-a31eb11f] {
1780
+ .rows[data-v-d5963c35] {
1758
1781
  inset: 0;
1759
1782
  width: 100%;
1760
1783
  }
1761
- .cols[data-v-a31eb11f] {
1784
+ .cols[data-v-d5963c35] {
1762
1785
  inset: 0;
1763
1786
  height: 100%;
1764
1787
  }
1765
- .control[data-v-a31eb11f] {
1788
+ .control[data-v-d5963c35] {
1766
1789
  position: absolute;
1767
1790
  z-index: 1;
1768
1791
  pointer-events: none;
1769
1792
  }
1770
- .handle[data-v-a31eb11f] {
1793
+ .handle[data-v-d5963c35] {
1771
1794
  position: absolute;
1772
1795
  display: inline-flex;
1773
1796
  align-items: center;
@@ -1775,10 +1798,10 @@ svg[data-v-b2b50d17] {
1775
1798
  width: 24px;
1776
1799
  height: 24px;
1777
1800
  padding: 0;
1778
- border: 1px solid var(--ui-affordance-near-color, var(--ui-border-strong, #c8c8c4));
1779
- border-radius: var(--ui-radius-round, 999px);
1780
- background: color-mix(in srgb, var(--ui-surface-elevated, #fff) 96%, transparent);
1781
- color: var(--ui-affordance-near-color, var(--ui-text-secondary, #5c5c5c));
1801
+ border: 1px solid var(--ui-affordance-near-color, var(--ui-border-strong));
1802
+ border-radius: var(--ui-radius-round);
1803
+ background: color-mix(in srgb, var(--ui-surface-elevated) 96%, transparent);
1804
+ color: var(--ui-affordance-near-color, var(--ui-text-secondary));
1782
1805
  font: inherit;
1783
1806
  font-size: 16px;
1784
1807
  line-height: 1;
@@ -1786,129 +1809,124 @@ svg[data-v-b2b50d17] {
1786
1809
  opacity: 0;
1787
1810
  scale: 0.72;
1788
1811
  transition:
1789
- opacity var(--ui-affordance-motion, var(--ui-motion-fast, 120ms)) var(--ui-motion-ease, ease),
1790
- scale var(--ui-affordance-motion, var(--ui-motion-fast, 120ms)) var(--ui-motion-ease, ease),
1791
- color var(--ui-affordance-motion, var(--ui-motion-fast, 120ms)) var(--ui-motion-ease, ease),
1792
- background-color var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1793
- var(--ui-motion-ease, ease),
1794
- border-color var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1795
- var(--ui-motion-ease, ease);
1812
+ opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
1813
+ scale var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
1814
+ color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
1815
+ background-color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
1816
+ border-color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
1796
1817
  pointer-events: auto;
1797
1818
  cursor: pointer;
1798
1819
  }
1799
- .handle[data-v-a31eb11f] {
1820
+ .handle[data-v-d5963c35] {
1800
1821
  --ui-icon-size: 14px;
1801
- --ui-icon-stroke-width: var(--ui-editor-table-affordance-icon-stroke-width, 2);
1822
+ --ui-icon-stroke-width: 2;
1802
1823
  }
1803
- .handle[data-ui-proximity="near"][data-v-a31eb11f],
1804
- .control.active .handle[data-v-a31eb11f],
1805
- .handle[data-v-a31eb11f]:focus-visible {
1824
+ .handle[data-ui-proximity="near"][data-v-d5963c35],
1825
+ .control.active .handle[data-v-d5963c35],
1826
+ .handle[data-v-d5963c35]:focus-visible {
1806
1827
  opacity: 1;
1807
1828
  scale: 1;
1808
1829
  }
1809
- .control.active .handle[data-v-a31eb11f],
1810
- .handle[data-v-a31eb11f]:focus-visible {
1811
- border-color: var(--ui-affordance-direct-color, var(--ui-accent-solid, #5b55d6));
1812
- background: var(--ui-affordance-direct-color, var(--ui-accent-solid, #5b55d6));
1813
- color: var(--ui-text-on-accent, #fff);
1830
+ .control.active .handle[data-v-d5963c35],
1831
+ .handle[data-v-d5963c35]:focus-visible {
1832
+ border-color: var(--ui-affordance-direct-color, var(--ui-accent-solid));
1833
+ background: var(--ui-affordance-direct-color, var(--ui-accent-solid));
1834
+ color: var(--ui-text-on-accent);
1814
1835
  box-shadow: var(--ui-shadow-sm, 0 1px 3px rgb(0 0 0 / 0.1));
1815
1836
  }
1816
- .handle[data-v-a31eb11f]:focus-visible,
1817
- .selector[data-v-a31eb11f]:focus-visible,
1818
- .cell-menu[data-v-a31eb11f]:focus-visible {
1819
- outline: 2px solid var(--ui-focus-ring, #5b55d6);
1837
+ .handle[data-v-d5963c35]:focus-visible,
1838
+ .selector[data-v-d5963c35]:focus-visible,
1839
+ .cell-menu[data-v-d5963c35]:focus-visible {
1840
+ outline: 2px solid var(--ui-focus-ring);
1820
1841
  outline-offset: 2px;
1821
1842
  }
1822
- .control.row[data-v-a31eb11f] {
1843
+ .control.row[data-v-d5963c35] {
1823
1844
  left: 0;
1824
1845
  width: 100%;
1825
1846
  height: 0;
1826
1847
  }
1827
- .control.row .handle[data-v-a31eb11f] {
1848
+ .control.row .handle[data-v-d5963c35] {
1828
1849
  top: -12px;
1829
1850
  left: -30px;
1830
1851
  }
1831
- .control.col[data-v-a31eb11f] {
1852
+ .control.col[data-v-d5963c35] {
1832
1853
  top: 0;
1833
1854
  width: 0;
1834
1855
  height: 100%;
1835
1856
  }
1836
- .control.col .handle[data-v-a31eb11f] {
1857
+ .control.col .handle[data-v-d5963c35] {
1837
1858
  top: -30px;
1838
1859
  left: -12px;
1839
1860
  }
1840
- .line[data-v-a31eb11f] {
1861
+ .line[data-v-d5963c35] {
1841
1862
  position: absolute;
1842
- background: var(--ui-affordance-direct-color, var(--ui-accent-solid, #5b55d6));
1863
+ background: var(--ui-affordance-direct-color, var(--ui-accent-solid));
1843
1864
  opacity: 0;
1844
- transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1845
- var(--ui-motion-ease, ease);
1865
+ transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
1846
1866
  }
1847
- .control.row .line[data-v-a31eb11f] {
1867
+ .control.row .line[data-v-d5963c35] {
1848
1868
  inset: -1px 0 auto;
1849
1869
  height: 2px;
1850
1870
  }
1851
- .control.col .line[data-v-a31eb11f] {
1871
+ .control.col .line[data-v-d5963c35] {
1852
1872
  inset: 0 auto 0 -1px;
1853
1873
  width: 2px;
1854
1874
  }
1855
- .control.active .line[data-v-a31eb11f] {
1875
+ .control.active .line[data-v-d5963c35] {
1856
1876
  opacity: 0.8;
1857
1877
  }
1858
- .guide[data-v-a31eb11f] {
1878
+ .guide[data-v-d5963c35] {
1859
1879
  position: absolute;
1860
- width: var(--ui-affordance-guide-size, 4px);
1861
- height: var(--ui-affordance-guide-size, 4px);
1862
- border-radius: var(--ui-radius-round, 999px);
1863
- background: var(--ui-affordance-guide-color, var(--ui-border-strong, #c8c8c4));
1864
- opacity: var(--ui-affordance-guide-opacity, 0.42);
1865
- transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1866
- var(--ui-motion-ease, ease);
1880
+ width: var(--ui-affordance-guide-size);
1881
+ height: var(--ui-affordance-guide-size);
1882
+ border-radius: var(--ui-radius-round);
1883
+ background: var(--ui-affordance-guide-color, var(--ui-border-strong));
1884
+ opacity: var(--ui-affordance-guide-opacity);
1885
+ transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
1867
1886
  }
1868
- .control.row .guide[data-v-a31eb11f] {
1887
+ .control.row .guide[data-v-d5963c35] {
1869
1888
  left: -10px;
1870
1889
  top: -2px;
1871
1890
  }
1872
- .control.col .guide[data-v-a31eb11f] {
1891
+ .control.col .guide[data-v-d5963c35] {
1873
1892
  left: -2px;
1874
1893
  top: -10px;
1875
1894
  }
1876
- .control:has(.handle[data-ui-proximity="near"]) .guide[data-v-a31eb11f],
1877
- .control.active .guide[data-v-a31eb11f] {
1895
+ .control:has(.handle[data-ui-proximity="near"]) .guide[data-v-d5963c35],
1896
+ .control.active .guide[data-v-d5963c35] {
1878
1897
  opacity: 0;
1879
1898
  }
1880
- .tooltip[data-v-a31eb11f] {
1899
+ .tooltip[data-v-d5963c35] {
1881
1900
  position: absolute;
1882
1901
  z-index: 2;
1883
1902
  top: calc(100% + 6px);
1884
1903
  left: 50%;
1885
1904
  width: max-content;
1886
1905
  max-width: 14rem;
1887
- padding: var(--ui-space-1, 4px) var(--ui-space-2, 8px);
1888
- border-radius: var(--ui-radius-1, 4px);
1889
- background: var(--ui-text-primary, #1a1a1a);
1890
- color: var(--ui-surface-elevated, #fff);
1891
- font-size: var(--ui-font-size-xs, 0.75rem);
1892
- font-weight: var(--ui-font-medium, 500);
1893
- line-height: var(--ui-line-height-md, 1.4);
1906
+ padding: var(--ui-space-1) var(--ui-space-2);
1907
+ border-radius: var(--ui-radius-sm);
1908
+ background: var(--ui-text-primary);
1909
+ color: var(--ui-surface-elevated);
1910
+ font-size: var(--ui-font-size-xs);
1911
+ font-weight: var(--ui-font-medium);
1912
+ line-height: var(--ui-line-height-md);
1894
1913
  opacity: 0;
1895
1914
  transform: translateX(-50%);
1896
- transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1897
- var(--ui-motion-ease, ease);
1915
+ transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
1898
1916
  pointer-events: none;
1899
1917
  }
1900
- .control.row .tooltip[data-v-a31eb11f] {
1918
+ .control.row .tooltip[data-v-d5963c35] {
1901
1919
  top: 50%;
1902
1920
  left: auto;
1903
1921
  right: calc(100% + 8px);
1904
1922
  transform: translateY(-50%);
1905
1923
  }
1906
- .control.active .tooltip[data-v-a31eb11f],
1907
- .handle:focus-visible .tooltip[data-v-a31eb11f] {
1924
+ .control.active .tooltip[data-v-d5963c35],
1925
+ .handle:focus-visible .tooltip[data-v-d5963c35] {
1908
1926
  opacity: 1;
1909
1927
  }
1910
- .selector[data-v-a31eb11f],
1911
- .cell-menu[data-v-a31eb11f] {
1928
+ .selector[data-v-d5963c35],
1929
+ .cell-menu[data-v-d5963c35] {
1912
1930
  position: absolute;
1913
1931
  z-index: 2;
1914
1932
  display: inline-flex;
@@ -1917,105 +1935,101 @@ svg[data-v-b2b50d17] {
1917
1935
  padding: 0;
1918
1936
  border: 1px solid transparent;
1919
1937
  background: transparent;
1920
- color: var(--ui-text-secondary, #5c5c5c);
1938
+ color: var(--ui-text-secondary);
1921
1939
  box-shadow: none;
1922
1940
  pointer-events: auto;
1923
1941
  cursor: pointer;
1924
1942
  transition:
1925
- color var(--ui-affordance-motion, var(--ui-motion-fast, 120ms)) var(--ui-motion-ease, ease),
1926
- background-color var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1927
- var(--ui-motion-ease, ease),
1928
- border-color var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1929
- var(--ui-motion-ease, ease),
1930
- box-shadow var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1931
- var(--ui-motion-ease, ease);
1932
- }
1933
- .selector[data-v-a31eb11f]:hover,
1934
- .cell-menu[data-v-a31eb11f]:hover {
1935
- background: var(--ui-icon-button-hover-bg, var(--ui-surface-muted, #f3f4f6));
1936
- color: var(--ui-icon-button-hover-color, var(--ui-text-primary, #1a1a1a));
1943
+ color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
1944
+ background-color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
1945
+ border-color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
1946
+ box-shadow var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
1947
+ }
1948
+ .selector[data-v-d5963c35]:hover,
1949
+ .cell-menu[data-v-d5963c35]:hover {
1950
+ background: var(--ui-icon-button-hover-surface, var(--ui-surface-muted));
1951
+ color: var(--ui-icon-button-hover-text, var(--ui-text-primary));
1937
1952
  box-shadow: var(--ui-shadow-xs, 0 1px 2px rgb(0 0 0 / 0.05));
1938
1953
  }
1939
- .selector[data-v-a31eb11f] {
1940
- border-radius: var(--ui-radius-round, 999px);
1954
+ .selector[data-v-d5963c35] {
1955
+ border-radius: var(--ui-radius-round);
1941
1956
  }
1942
- .selector[data-v-a31eb11f]::before {
1957
+ .selector[data-v-d5963c35]::before {
1943
1958
  content: "";
1944
1959
  position: absolute;
1945
1960
  inset: 50% auto auto 50%;
1946
- border-radius: var(--ui-radius-round, 999px);
1947
- background: var(--ui-affordance-guide-color, var(--ui-border-strong, #c8c8c4));
1948
- opacity: var(--ui-affordance-guide-opacity, 0.42);
1961
+ border-radius: var(--ui-radius-round);
1962
+ background: var(--ui-affordance-guide-color, var(--ui-border-strong));
1963
+ opacity: var(--ui-affordance-guide-opacity);
1949
1964
  transform: translate(-50%, -50%);
1950
- transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
1951
- var(--ui-motion-ease, ease);
1965
+ transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
1952
1966
  pointer-events: none;
1953
1967
  }
1954
- .selector .glyph[data-v-a31eb11f] {
1968
+ .selector .glyph[data-v-d5963c35] {
1955
1969
  display: block;
1956
1970
  width: 14px;
1957
1971
  height: 14px;
1958
1972
  --ui-icon-size: 14px;
1959
- --ui-icon-stroke-width: var(--ui-editor-table-affordance-icon-stroke-width, 2);
1973
+ --ui-icon-stroke-width: 2;
1960
1974
  opacity: 0;
1961
1975
  transform: scale(0.72);
1962
1976
  transition:
1963
- opacity var(--ui-affordance-motion, var(--ui-motion-fast, 120ms)) var(--ui-motion-ease, ease),
1964
- transform var(--ui-affordance-motion, var(--ui-motion-fast, 120ms)) var(--ui-motion-ease, ease);
1977
+ opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
1978
+ transform var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
1965
1979
  }
1966
- .selector[data-v-a31eb11f]:hover::before,
1967
- .selector[data-v-a31eb11f]:focus-visible::before {
1980
+ .selector[data-v-d5963c35]:hover::before,
1981
+ .selector[data-v-d5963c35]:focus-visible::before {
1968
1982
  opacity: 0;
1969
1983
  }
1970
- .selector:hover .glyph[data-v-a31eb11f],
1971
- .selector:focus-visible .glyph[data-v-a31eb11f] {
1984
+ .selector:hover .glyph[data-v-d5963c35],
1985
+ .selector:focus-visible .glyph[data-v-d5963c35] {
1972
1986
  opacity: 1;
1973
1987
  transform: scale(1);
1974
1988
  }
1975
- .selector.row[data-v-a31eb11f] {
1989
+ .selector.row[data-v-d5963c35] {
1976
1990
  left: -9px;
1977
1991
  width: 18px;
1978
1992
  height: 32px;
1979
1993
  transform: translateY(-50%);
1980
1994
  }
1981
- .selector.row[data-v-a31eb11f]::before {
1995
+ .selector.row[data-v-d5963c35]::before {
1982
1996
  width: 2px;
1983
1997
  height: 16px;
1984
1998
  }
1985
- .selector.column[data-v-a31eb11f] {
1999
+ .selector.column[data-v-d5963c35] {
1986
2000
  top: -9px;
1987
2001
  width: 32px;
1988
2002
  height: 18px;
1989
2003
  transform: translateX(-50%);
1990
2004
  }
1991
- .selector.column[data-v-a31eb11f]::before {
2005
+ .selector.column[data-v-d5963c35]::before {
1992
2006
  width: 16px;
1993
2007
  height: 2px;
1994
2008
  }
1995
2009
  @media (hover: none), (pointer: coarse) {
1996
- .selector[data-v-a31eb11f]::before {
2010
+ .selector[data-v-d5963c35]::before {
1997
2011
  opacity: 0;
1998
2012
  }
1999
- .selector .glyph[data-v-a31eb11f] {
2013
+ .selector .glyph[data-v-d5963c35] {
2000
2014
  opacity: 1;
2001
2015
  transform: none;
2002
2016
  }
2003
2017
  }
2004
- .cell-menu[data-v-a31eb11f] {
2018
+ .cell-menu[data-v-d5963c35] {
2005
2019
  width: 24px;
2006
2020
  height: 24px;
2007
- border-radius: var(--ui-radius-1, 4px);
2008
- background: color-mix(in srgb, var(--ui-surface-muted, #f3f4f6) 78%, transparent);
2021
+ border-radius: var(--ui-radius-sm);
2022
+ background: color-mix(in srgb, var(--ui-surface-muted) 78%, transparent);
2009
2023
  }
2010
- .cell-menu[data-v-a31eb11f] {
2024
+ .cell-menu[data-v-d5963c35] {
2011
2025
  --ui-icon-size: 15px;
2012
- --ui-icon-stroke-width: var(--ui-editor-table-affordance-icon-stroke-width, 2);
2026
+ --ui-icon-stroke-width: 2;
2013
2027
  }
2014
- [data-component~="ui-editor-table-overlay"][hidden][data-v-a31eb11f] {
2028
+ [data-component~="ui-editor-table-overlay"][hidden][data-v-d5963c35] {
2015
2029
  display: none;
2016
2030
  }
2017
2031
 
2018
- .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"][data-v-b2b27930] {
2032
+ .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"][data-v-c7ed049b] {
2019
2033
  min-width: max-content;
2020
2034
  min-height: 100%;
2021
2035
  padding: 0;
@@ -2025,160 +2039,160 @@ svg[data-v-b2b50d17] {
2025
2039
  box-shadow: none;
2026
2040
  backdrop-filter: none;
2027
2041
  }
2028
- .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"] button[data-v-b2b27930] {
2042
+ .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"] button[data-v-c7ed049b] {
2029
2043
  min-height: 44px;
2030
2044
  background: transparent;
2031
2045
  }
2032
- .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"] button.active[data-v-b2b27930],
2033
- .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"] button.selected[data-v-b2b27930] {
2034
- background: var(--ui-accent-soft, var(--ui-accent-subtle, #e8f0fb));
2046
+ .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"] button.active[data-v-c7ed049b],
2047
+ .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"] button.selected[data-v-c7ed049b] {
2048
+ background: var(--ui-accent-soft, var(--ui-accent-subtle));
2035
2049
  }
2036
- .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"] .menu[data-v-b2b27930] {
2050
+ .looma-editor__mobile-toolbar-shell [data-component~="ui-editor-table-toolbar"] .menu[data-v-c7ed049b] {
2037
2051
  top: auto;
2038
2052
  right: 0;
2039
- bottom: calc(100% + var(--ui-space-2, 8px));
2053
+ bottom: calc(100% + var(--ui-space-2));
2040
2054
  max-height: min(50dvh, 22rem);
2041
2055
  overflow-y: auto;
2042
2056
  overscroll-behavior: contain;
2043
2057
  }
2044
- [data-component~="ui-editor-table-toolbar"][data-v-b2b27930] {
2058
+ [data-component~="ui-editor-table-toolbar"][data-v-c7ed049b] {
2045
2059
  display: inline-flex;
2046
2060
  align-items: center;
2047
- gap: var(--ui-space-1, 4px);
2048
- padding: var(--ui-space-1, 4px);
2049
- background: color-mix(in srgb, var(--ui-surface, #fff) 94%, transparent);
2050
- border: 1px solid var(--ui-border, #e5e7eb);
2051
- border-radius: calc(var(--ui-radius-md, 6px) + 2px);
2061
+ gap: var(--ui-space-1);
2062
+ padding: var(--ui-space-1);
2063
+ background: color-mix(in srgb, var(--ui-surface) 94%, transparent);
2064
+ border: 1px solid var(--ui-border);
2065
+ border-radius: calc(var(--ui-radius-md) + 2px);
2052
2066
  box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
2053
2067
  backdrop-filter: blur(10px);
2054
2068
  }
2055
- .group[data-v-b2b27930] {
2069
+ .group[data-v-c7ed049b] {
2056
2070
  display: inline-flex;
2057
2071
  align-items: center;
2058
2072
  gap: 2px;
2059
2073
  overflow: hidden;
2060
2074
  }
2061
- .sep[data-v-b2b27930] {
2075
+ .sep[data-v-c7ed049b] {
2062
2076
  width: 1px;
2063
2077
  align-self: stretch;
2064
- background: var(--ui-border, #e5e7eb);
2078
+ background: var(--ui-border);
2065
2079
  }
2066
- .overflow[data-v-b2b27930] {
2080
+ .overflow[data-v-c7ed049b] {
2067
2081
  position: relative;
2068
2082
  }
2069
- [data-component~="ui-editor-table-toolbar"] button[data-v-b2b27930] {
2083
+ [data-component~="ui-editor-table-toolbar"] button[data-v-c7ed049b] {
2070
2084
  display: inline-flex;
2071
2085
  align-items: center;
2072
2086
  justify-content: center;
2073
- gap: var(--ui-space-1-5, 6px);
2087
+ gap: var(--ui-space-2);
2074
2088
  min-height: 32px;
2075
2089
  border: 0;
2076
- border-radius: var(--ui-radius-sm, 4px);
2090
+ border-radius: var(--ui-radius-sm);
2077
2091
  background: transparent;
2078
- color: var(--ui-text-primary, #111827);
2092
+ color: var(--ui-text-primary);
2079
2093
  cursor: pointer;
2080
- font-size: var(--ui-text-sm, 0.875rem);
2094
+ font-size: var(--ui-font-size-sm);
2081
2095
  font-weight: 500;
2082
2096
  line-height: 1;
2083
- padding: var(--ui-space-1-5, 6px) var(--ui-space-2, 8px);
2097
+ padding: var(--ui-space-2) var(--ui-space-2);
2084
2098
  white-space: nowrap;
2085
2099
  }
2086
- [data-component~="ui-editor-table-toolbar"] button[data-v-b2b27930]:hover {
2087
- background: var(--ui-surface-hover, #f3f4f6);
2100
+ [data-component~="ui-editor-table-toolbar"] button[data-v-c7ed049b]:hover {
2101
+ background: var(--ui-surface-hover);
2088
2102
  }
2089
- [data-component~="ui-editor-table-toolbar"] button.active[data-v-b2b27930] {
2090
- background: var(--ui-accent-soft, var(--ui-accent-subtle, #e8f0fb));
2091
- color: var(--ui-accent-active, #003d7a);
2103
+ [data-component~="ui-editor-table-toolbar"] button.active[data-v-c7ed049b] {
2104
+ background: var(--ui-accent-soft, var(--ui-accent-subtle));
2105
+ color: var(--ui-accent-active);
2092
2106
  }
2093
- .group button[data-v-b2b27930] {
2094
- border-radius: var(--ui-radius-sm, 4px);
2107
+ .group button[data-v-c7ed049b] {
2108
+ border-radius: var(--ui-radius-sm);
2095
2109
  }
2096
- .group button + button[data-v-b2b27930] {
2110
+ .group button + button[data-v-c7ed049b] {
2097
2111
  border-left: 0;
2098
2112
  }
2099
- [data-component~="ui-editor-table-toolbar"] .more[data-v-b2b27930] {
2113
+ [data-component~="ui-editor-table-toolbar"] .more[data-v-c7ed049b] {
2100
2114
  border: 0;
2101
- border-radius: var(--ui-radius-sm, 4px);
2115
+ border-radius: var(--ui-radius-sm);
2102
2116
  }
2103
- [data-component~="ui-editor-table-toolbar"] button.danger[data-v-b2b27930] {
2104
- color: var(--ui-danger, #dc2626);
2117
+ [data-component~="ui-editor-table-toolbar"] button.danger[data-v-c7ed049b] {
2118
+ color: var(--ui-danger);
2105
2119
  }
2106
- [data-component~="ui-editor-table-toolbar"][data-v-b2b27930] {
2120
+ [data-component~="ui-editor-table-toolbar"][data-v-c7ed049b] {
2107
2121
  --ui-icon-size: var(--ui-editor-toolbar-icon-size, 1rem);
2108
2122
  --ui-icon-stroke-width: var(--ui-editor-toolbar-icon-stroke-width, 1.75);
2109
2123
  }
2110
- .chevron[data-v-b2b27930] {
2124
+ .chevron[data-v-c7ed049b] {
2111
2125
  display: inline-flex;
2112
2126
  --ui-icon-size: 0.875rem;
2113
2127
  }
2114
- [data-component~="ui-editor-table-toolbar"] .icon-button[data-v-b2b27930] {
2128
+ [data-component~="ui-editor-table-toolbar"] .icon-button[data-v-c7ed049b] {
2115
2129
  width: 32px;
2116
2130
  padding-inline: 0;
2117
2131
  }
2118
- .menu[data-v-b2b27930] {
2132
+ .menu[data-v-c7ed049b] {
2119
2133
  position: absolute;
2120
- top: calc(100% + var(--ui-space-2, 8px));
2134
+ top: calc(100% + var(--ui-space-2));
2121
2135
  right: 0;
2122
2136
  min-width: 12rem;
2123
- padding: var(--ui-space-1, 4px);
2124
- background: var(--ui-surface, #fff);
2125
- border: 1px solid var(--ui-border, #e5e7eb);
2126
- border-radius: var(--ui-radius-md, 6px);
2137
+ padding: var(--ui-space-1);
2138
+ background: var(--ui-surface);
2139
+ border: 1px solid var(--ui-border);
2140
+ border-radius: var(--ui-radius-md);
2127
2141
  box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
2128
2142
  display: flex;
2129
2143
  flex-direction: column;
2130
2144
  gap: 2px;
2131
2145
  z-index: 2;
2132
2146
  }
2133
- .menu-section + .menu-section[data-v-b2b27930] {
2134
- margin-top: var(--ui-space-1, 4px);
2135
- padding-top: var(--ui-space-1, 4px);
2136
- border-top: 1px solid color-mix(in srgb, var(--ui-border, #e5e7eb) 80%, transparent);
2147
+ .menu-section + .menu-section[data-v-c7ed049b] {
2148
+ margin-top: var(--ui-space-1);
2149
+ padding-top: var(--ui-space-1);
2150
+ border-top: 1px solid color-mix(in srgb, var(--ui-border) 80%, transparent);
2137
2151
  }
2138
- .menu-heading[data-v-b2b27930] {
2139
- padding: var(--ui-space-1, 4px) var(--ui-space-2, 8px);
2152
+ .menu-heading[data-v-c7ed049b] {
2153
+ padding: var(--ui-space-1) var(--ui-space-2);
2140
2154
  font-size: 0.6875rem;
2141
2155
  font-weight: 700;
2142
2156
  letter-spacing: 0.05em;
2143
2157
  text-transform: uppercase;
2144
- color: var(--ui-text-muted, #6b7280);
2158
+ color: var(--ui-text-muted);
2145
2159
  }
2146
- .menu button[data-v-b2b27930] {
2160
+ .menu button[data-v-c7ed049b] {
2147
2161
  display: flex;
2148
2162
  justify-content: flex-start;
2149
2163
  width: 100%;
2150
2164
  text-align: left;
2151
2165
  }
2152
- .swatches[data-v-b2b27930] {
2166
+ .swatches[data-v-c7ed049b] {
2153
2167
  display: grid;
2154
2168
  grid-template-columns: repeat(3, minmax(0, 1fr));
2155
2169
  gap: 2px;
2156
2170
  }
2157
- [data-component~="ui-editor-table-toolbar"] .swatch-button[data-v-b2b27930] {
2158
- gap: var(--ui-space-1, 4px);
2171
+ [data-component~="ui-editor-table-toolbar"] .swatch-button[data-v-c7ed049b] {
2172
+ gap: var(--ui-space-1);
2159
2173
  justify-content: flex-start;
2160
2174
  }
2161
- .swatch[data-v-b2b27930] {
2175
+ .swatch[data-v-c7ed049b] {
2162
2176
  width: 14px;
2163
2177
  height: 14px;
2164
2178
  flex: 0 0 14px;
2165
- border: 1px solid color-mix(in srgb, var(--ui-border, #e5e7eb) 80%, #000);
2179
+ border: 1px solid color-mix(in srgb, var(--ui-border) 80%, #000);
2166
2180
  border-radius: 3px;
2167
2181
  background: var(--ui-editor-table-toolbar-swatch);
2168
2182
  }
2169
- .swatch.default[data-v-b2b27930] {
2183
+ .swatch.default[data-v-c7ed049b] {
2170
2184
  background:
2171
- linear-gradient(135deg, transparent 44%, var(--ui-danger, #dc2626) 46% 54%, transparent 56%),
2172
- var(--ui-surface, #fff);
2185
+ linear-gradient(135deg, transparent 44%, var(--ui-danger) 46% 54%, transparent 56%),
2186
+ var(--ui-surface);
2173
2187
  }
2174
- .swatch-button.selected[data-v-b2b27930] {
2175
- background: var(--ui-accent-soft, var(--ui-accent-subtle, #e8f0fb));
2188
+ .swatch-button.selected[data-v-c7ed049b] {
2189
+ background: var(--ui-accent-soft, var(--ui-accent-subtle));
2176
2190
  }
2177
- [data-component~="ui-editor-table-toolbar"][hidden][data-v-b2b27930] {
2191
+ [data-component~="ui-editor-table-toolbar"][hidden][data-v-c7ed049b] {
2178
2192
  display: none;
2179
2193
  }
2180
2194
 
2181
- [data-component~="ui-editor-toolbar"][data-v-890a1e69] {
2195
+ [data-component~="ui-editor-toolbar"][data-v-472b5c16] {
2182
2196
  position: sticky;
2183
2197
  top: 0;
2184
2198
  z-index: var(--ui-editor-toolbar-z-index, 10);
@@ -2192,23 +2206,23 @@ svg[data-v-b2b50d17] {
2192
2206
  overflow-x: auto;
2193
2207
  scrollbar-width: none;
2194
2208
  white-space: nowrap;
2195
- background: var(--ui-editor-toolbar-bg, var(--ui-surface, #fff));
2196
- border-bottom: 1px solid var(--ui-editor-toolbar-border, var(--ui-border, #e5e7eb));
2209
+ background: var(--ui-editor-toolbar-surface, var(--ui-surface));
2210
+ border-bottom: 1px solid var(--ui-editor-toolbar-border, var(--ui-border));
2197
2211
  }
2198
- [data-component~="ui-editor-toolbar"][data-v-890a1e69]::-webkit-scrollbar {
2212
+ [data-component~="ui-editor-toolbar"][data-v-472b5c16]::-webkit-scrollbar {
2199
2213
  display: none;
2200
2214
  }
2201
- [data-component~="ui-editor-toolbar"] > [data-v-890a1e69-s] {
2215
+ [data-component~="ui-editor-toolbar"] > [data-v-472b5c16-s] {
2202
2216
  flex: 0 0 auto;
2203
2217
  }
2204
- .divider[data-v-890a1e69-s] {
2218
+ .divider[data-v-472b5c16-s] {
2205
2219
  width: 1px;
2206
2220
  height: 20px;
2207
- background: var(--ui-editor-toolbar-divider, var(--ui-border, #e5e7eb));
2221
+ background: var(--ui-editor-toolbar-divider, var(--ui-border));
2208
2222
  flex-shrink: 0;
2209
2223
  margin: 0 var(--ui-editor-toolbar-divider-margin, 4px);
2210
2224
  }
2211
- [data-component~="ui-editor-toolbar"][data-ui-editor-toolbar-state~="floating"][data-v-890a1e69] {
2225
+ [data-component~="ui-editor-toolbar"][data-ui-editor-toolbar-state~="floating"][data-v-472b5c16] {
2212
2226
  position: static;
2213
2227
  top: auto;
2214
2228
  width: max-content;
@@ -2218,11 +2232,11 @@ svg[data-v-b2b50d17] {
2218
2232
  overflow-x: visible;
2219
2233
  background: color-mix(
2220
2234
  in srgb,
2221
- var(--ui-editor-toolbar-bg, var(--ui-surface, #fff)) 96%,
2235
+ var(--ui-editor-toolbar-surface, var(--ui-surface)) 96%,
2222
2236
  transparent
2223
2237
  );
2224
- border: 1px solid var(--ui-editor-toolbar-border, var(--ui-border, #e5e7eb));
2225
- border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg, 10px));
2238
+ border: 1px solid var(--ui-editor-toolbar-border, var(--ui-border));
2239
+ border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg));
2226
2240
  box-shadow: var(
2227
2241
  --ui-editor-toolbar-floating-shadow,
2228
2242
  var(--ui-shadow-lg, 0 10px 24px rgb(0 0 0 / 0.12))
@@ -2230,23 +2244,23 @@ svg[data-v-b2b50d17] {
2230
2244
  backdrop-filter: blur(10px);
2231
2245
  }
2232
2246
  @media (max-width: 767px) {
2233
- [data-component~="ui-editor-toolbar"][data-v-890a1e69] {
2247
+ [data-component~="ui-editor-toolbar"][data-v-472b5c16] {
2234
2248
  position: fixed;
2235
2249
  top: auto;
2236
2250
  bottom: env(safe-area-inset-bottom);
2237
2251
  left: 0;
2238
2252
  right: 0;
2239
2253
  min-height: var(--ui-editor-toolbar-mobile-min-height, 56px);
2240
- border-top: 1px solid var(--ui-editor-toolbar-border, var(--ui-border, #e5e7eb));
2254
+ border-top: 1px solid var(--ui-editor-toolbar-border, var(--ui-border));
2241
2255
  border-bottom: none;
2242
2256
  box-shadow: var(--ui-editor-toolbar-mobile-shadow, 0 -2px 8px rgb(0 0 0 / 0.06));
2243
2257
  }
2244
- [data-component~="ui-editor-toolbar"][data-ui-editor-toolbar-state~="floating"][data-v-890a1e69] {
2258
+ [data-component~="ui-editor-toolbar"][data-ui-editor-toolbar-state~="floating"][data-v-472b5c16] {
2245
2259
  position: static;
2246
2260
  inset: auto;
2247
2261
  min-height: auto;
2248
- border: 1px solid var(--ui-editor-toolbar-border, var(--ui-border, #e5e7eb));
2249
- border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg, 10px));
2262
+ border: 1px solid var(--ui-editor-toolbar-border, var(--ui-border));
2263
+ border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg));
2250
2264
  box-shadow: var(
2251
2265
  --ui-editor-toolbar-floating-shadow,
2252
2266
  var(--ui-shadow-lg, 0 10px 24px rgb(0 0 0 / 0.12))
@@ -2255,7 +2269,7 @@ svg[data-v-b2b50d17] {
2255
2269
  }
2256
2270
 
2257
2271
  /* Inside LoomaEditor's sticky shell, the shell is the sticky surface. */
2258
- .looma-editor__sticky-toolbar-shell [data-component~="ui-editor-toolbar"][data-v-890a1e69] {
2272
+ .looma-editor__sticky-toolbar-shell [data-component~="ui-editor-toolbar"][data-v-472b5c16] {
2259
2273
  position: static;
2260
2274
  min-height: var(--ui-editor-toolbar-min-height, 48px);
2261
2275
  overscroll-behavior-inline: contain;
@@ -2266,7 +2280,7 @@ svg[data-v-b2b50d17] {
2266
2280
 
2267
2281
  /* Inside LoomaEditor's mobile shell, the toolbar is a scroll-snapping strip. */
2268
2282
  .looma-editor__mobile-toolbar-shell
2269
- [data-component~="ui-editor-toolbar"][data-ui-editor-toolbar-state~="floating"][data-v-890a1e69] {
2283
+ [data-component~="ui-editor-toolbar"][data-ui-editor-toolbar-state~="floating"][data-v-472b5c16] {
2270
2284
  width: 100%;
2271
2285
  max-width: none;
2272
2286
  min-height: 100%;
@@ -2283,25 +2297,26 @@ svg[data-v-b2b50d17] {
2283
2297
  }
2284
2298
 
2285
2299
  /* A component that sets its display still honours the hidden attribute on its root. */
2286
- [data-component~="ui-editor-toolbar"][hidden][data-v-890a1e69] {
2300
+ [data-component~="ui-editor-toolbar"][hidden][data-v-472b5c16] {
2287
2301
  display: none;
2288
2302
  }
2289
2303
 
2290
- [data-component~="ui-floating-action-button"][data-v-a6b9e9ca] {
2304
+ [data-component~="ui-floating-action-button"][data-v-b66a2428] {
2291
2305
  position: fixed;
2292
2306
  inset-block-end: calc(
2293
- var(--ui-floating-action-button-bottom, var(--ui-space-6, 1.5rem)) + env(safe-area-inset-bottom)
2307
+ var(--ui-floating-action-button-inset-block-end, var(--ui-space-6)) +
2308
+ env(safe-area-inset-bottom)
2294
2309
  );
2295
2310
  inset-inline-end: max(
2296
- var(--ui-floating-action-button-inline-end, var(--ui-space-5, 1.25rem)),
2311
+ var(--ui-floating-action-button-inset-inline-end, var(--ui-space-5)),
2297
2312
  env(safe-area-inset-right)
2298
2313
  );
2299
- inline-size: var(--ui-floating-action-button-size, 56px);
2300
- block-size: var(--ui-floating-action-button-size, 56px);
2314
+ inline-size: var(--ui-control-min-block-size);
2315
+ block-size: var(--ui-control-min-block-size);
2301
2316
  display: inline-flex;
2302
2317
  z-index: var(--ui-floating-action-button-z-index, 100);
2303
2318
  }
2304
- [data-component~="ui-floating-action-button"][data-v-a6b9e9ca] {
2319
+ [data-component~="ui-floating-action-button"][data-v-b66a2428] {
2305
2320
  appearance: none;
2306
2321
  border: none;
2307
2322
  border-radius: 999px;
@@ -2310,49 +2325,43 @@ svg[data-v-b2b50d17] {
2310
2325
  display: inline-flex;
2311
2326
  align-items: center;
2312
2327
  justify-content: center;
2313
- background: var(--ui-floating-action-button-bg, var(--ui-accent-solid));
2314
- color: var(--ui-floating-action-button-color, var(--ui-text-on-accent));
2315
- box-shadow: var(
2316
- --ui-floating-action-button-shadow,
2317
- 0 4px 12px color-mix(in srgb, var(--ui-accent-solid) 40%, transparent)
2318
- );
2328
+ background: var(--ui-accent);
2329
+ color: var(--ui-on-accent);
2330
+ box-shadow: 0 4px 12px color-mix(in srgb, var(--ui-accent) 40%, transparent);
2319
2331
  cursor: pointer;
2320
2332
  transition:
2321
- background-color var(--ui-motion-fast, 160ms) var(--ui-motion-ease, ease),
2322
- transform var(--ui-motion-fast, 160ms) var(--ui-motion-ease, ease),
2323
- box-shadow var(--ui-motion-fast, 160ms) var(--ui-motion-ease, ease);
2333
+ background-color var(--ui-motion-fast) var(--ui-motion-ease),
2334
+ transform var(--ui-motion-fast) var(--ui-motion-ease),
2335
+ box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
2324
2336
  }
2325
- [data-component~="ui-floating-action-button"][data-v-a6b9e9ca]:hover:enabled {
2326
- background: var(--ui-floating-action-button-hover-bg, var(--ui-accent-hover));
2327
- box-shadow: var(
2328
- --ui-floating-action-button-hover-shadow,
2329
- 0 6px 16px color-mix(in srgb, var(--ui-accent-solid) 50%, transparent)
2330
- );
2337
+ [data-component~="ui-floating-action-button"][data-v-b66a2428]:hover:enabled {
2338
+ background: var(--ui-accent-hover);
2339
+ box-shadow: 0 6px 16px color-mix(in srgb, var(--ui-accent) 50%, transparent);
2331
2340
  }
2332
- [data-component~="ui-floating-action-button"][data-v-a6b9e9ca]:active:enabled {
2333
- transform: scale(var(--ui-floating-action-button-active-scale, 0.94));
2341
+ [data-component~="ui-floating-action-button"][data-v-b66a2428]:active:enabled {
2342
+ transform: scale(0.94);
2334
2343
  }
2335
- [data-component~="ui-floating-action-button"][data-v-a6b9e9ca]:focus-visible {
2336
- outline: 2px solid var(--ui-focus-ring, currentColor);
2344
+ [data-component~="ui-floating-action-button"][data-v-b66a2428]:focus-visible {
2345
+ outline: 2px solid var(--ui-focus-ring);
2337
2346
  outline-offset: 2px;
2338
2347
  }
2339
- [data-component~="ui-floating-action-button"][data-v-a6b9e9ca]:disabled {
2348
+ [data-component~="ui-floating-action-button"][data-v-b66a2428]:disabled {
2340
2349
  opacity: 0.6;
2341
2350
  cursor: not-allowed;
2342
2351
  }
2343
- svg[data-v-a6b9e9ca-s] {
2344
- inline-size: var(--ui-floating-action-button-icon-size, 24px);
2345
- block-size: var(--ui-floating-action-button-icon-size, 24px);
2352
+ svg[data-v-b66a2428-s] {
2353
+ inline-size: var(--ui-icon-size-lg);
2354
+ block-size: var(--ui-icon-size-lg);
2346
2355
  flex-shrink: 0;
2347
2356
  }
2348
2357
  @media (min-width: 768px) {
2349
- [data-component~="ui-floating-action-button"][data-ui-floating-action-button-state~="mobileOnly"][data-v-a6b9e9ca] {
2358
+ [data-component~="ui-floating-action-button"][data-ui-floating-action-button-state~="mobileOnly"][data-v-b66a2428] {
2350
2359
  display: none;
2351
2360
  }
2352
2361
  }
2353
2362
 
2354
2363
  /* A component that sets its display still honours the hidden attribute on its root. */
2355
- [data-component~="ui-floating-action-button"][hidden][data-v-a6b9e9ca] {
2364
+ [data-component~="ui-floating-action-button"][hidden][data-v-b66a2428] {
2356
2365
  display: none;
2357
2366
  }
2358
2367
 
@@ -2393,8 +2402,8 @@ svg[data-v-a6b9e9ca-s] {
2393
2402
  display: none;
2394
2403
  }
2395
2404
 
2396
- [data-component~="ui-grid"][data-v-c390a71d] {
2397
- --_grid-gap: var(--ui-space-4, 1rem);
2405
+ [data-component~="ui-grid"][data-v-356b2957] {
2406
+ --_grid-gap: var(--ui-space-4);
2398
2407
  --_grid-min: 12rem;
2399
2408
  display: grid;
2400
2409
  gap: var(--ui-grid-gap, var(--_grid-gap));
@@ -2404,50 +2413,50 @@ svg[data-v-a6b9e9ca-s] {
2404
2413
  max-inline-size: 100%;
2405
2414
  margin: 0;
2406
2415
  }
2407
- [data-component~="ui-grid"][data-ui-grid-state~="gap=xs"][data-v-c390a71d] {
2408
- --_grid-gap: var(--ui-space-2, 0.5rem);
2416
+ [data-component~="ui-grid"][data-ui-grid-state~="gap=xs"][data-v-356b2957] {
2417
+ --_grid-gap: var(--ui-space-2);
2409
2418
  }
2410
- [data-component~="ui-grid"][data-ui-grid-state~="gap=s"][data-v-c390a71d] {
2411
- --_grid-gap: var(--ui-space-3, 0.75rem);
2419
+ [data-component~="ui-grid"][data-ui-grid-state~="gap=s"][data-v-356b2957] {
2420
+ --_grid-gap: var(--ui-space-3);
2412
2421
  }
2413
- [data-component~="ui-grid"][data-ui-grid-state~="gap=m"][data-v-c390a71d] {
2414
- --_grid-gap: var(--ui-space-4, 1rem);
2422
+ [data-component~="ui-grid"][data-ui-grid-state~="gap=m"][data-v-356b2957] {
2423
+ --_grid-gap: var(--ui-space-4);
2415
2424
  }
2416
- [data-component~="ui-grid"][data-ui-grid-state~="gap=l"][data-v-c390a71d] {
2417
- --_grid-gap: var(--ui-space-5, 1.5rem);
2425
+ [data-component~="ui-grid"][data-ui-grid-state~="gap=l"][data-v-356b2957] {
2426
+ --_grid-gap: var(--ui-space-5);
2418
2427
  }
2419
- [data-component~="ui-grid"][data-ui-grid-state~="gap=xl"][data-v-c390a71d] {
2420
- --_grid-gap: var(--ui-space-6, 2rem);
2428
+ [data-component~="ui-grid"][data-ui-grid-state~="gap=xl"][data-v-356b2957] {
2429
+ --_grid-gap: var(--ui-space-6);
2421
2430
  }
2422
- [data-component~="ui-grid"][data-ui-grid-state~="min=md"][data-v-c390a71d] {
2431
+ [data-component~="ui-grid"][data-ui-grid-state~="min=md"][data-v-356b2957] {
2423
2432
  --_grid-min: 16rem;
2424
2433
  }
2425
- [data-component~="ui-grid"][data-ui-grid-state~="min=lg"][data-v-c390a71d] {
2434
+ [data-component~="ui-grid"][data-ui-grid-state~="min=lg"][data-v-356b2957] {
2426
2435
  --_grid-min: 20rem;
2427
2436
  }
2428
2437
 
2429
2438
  /* A component that sets its display still honours the hidden attribute on its root. */
2430
- [data-component~="ui-grid"][hidden][data-v-c390a71d] {
2439
+ [data-component~="ui-grid"][hidden][data-v-356b2957] {
2431
2440
  display: none;
2432
2441
  }
2433
2442
 
2434
- [data-component~="ui-icon-button"][data-v-9ff7e192] {
2443
+ [data-component~="ui-icon-button"][data-v-80722d12] {
2435
2444
  display: inline-flex;
2436
2445
  color: var(--ui-text-secondary);
2437
2446
  }
2438
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-9ff7e192] {
2447
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-80722d12] {
2439
2448
  position: relative;
2440
2449
  }
2441
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-9ff7e192]::before {
2450
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-80722d12]::before {
2442
2451
  content: "";
2443
2452
  position: absolute;
2444
2453
  inset: 50% auto auto 50%;
2445
2454
  z-index: 1;
2446
- inline-size: var(--ui-affordance-guide-size, 0.25rem);
2447
- block-size: var(--ui-affordance-guide-size, 0.25rem);
2448
- border-radius: var(--ui-radius-round, 999px);
2455
+ inline-size: var(--ui-affordance-guide-size);
2456
+ block-size: var(--ui-affordance-guide-size);
2457
+ border-radius: var(--ui-radius-round);
2449
2458
  background: var(--ui-affordance-guide-color, var(--ui-border-strong));
2450
- opacity: var(--ui-affordance-guide-opacity, 0.42);
2459
+ opacity: var(--ui-affordance-guide-opacity);
2451
2460
  transform: translate(-50%, -50%);
2452
2461
  transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
2453
2462
  pointer-events: none;
@@ -2457,27 +2466,29 @@ svg[data-v-a6b9e9ca-s] {
2457
2466
  * surface and icon. The root is the native button, so hiding it outright would hide the dot
2458
2467
  * too, and slotted icons sit outside this scope; `color: transparent` hides currentColor icons. */
2459
2468
  @media (hover: hover) and (pointer: fine) {
2460
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-9ff7e192]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible) {
2469
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-80722d12]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible) {
2461
2470
  border-color: transparent;
2462
2471
  background: transparent;
2463
2472
  box-shadow: none;
2464
2473
  color: transparent;
2465
2474
  }
2466
2475
  }
2467
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-9ff7e192]:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible)::before {
2476
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-80722d12]:is([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-ui-proximity="near"], :hover, :focus-visible)::before {
2468
2477
  opacity: 0;
2469
2478
  }
2470
- [data-component~="ui-icon-button"][data-v-9ff7e192] {
2479
+ [data-component~="ui-icon-button"][data-v-80722d12] {
2480
+ /* The size prop resolves here; --ui-icon-button-size overrides it on an element. */
2481
+ --_size: 2rem;
2471
2482
  appearance: none;
2472
- inline-size: var(--ui-icon-button-size, 2rem);
2473
- block-size: var(--ui-icon-button-size, 2rem);
2474
- min-inline-size: var(--ui-icon-button-size, 2rem);
2475
- min-block-size: var(--ui-icon-button-size, 2rem);
2483
+ inline-size: var(--ui-icon-button-size, var(--_size));
2484
+ block-size: var(--ui-icon-button-size, var(--_size));
2485
+ min-inline-size: var(--ui-icon-button-size, var(--_size));
2486
+ min-block-size: var(--ui-icon-button-size, var(--_size));
2476
2487
  padding: 0;
2477
2488
  margin: 0;
2478
2489
  border: 1px solid transparent;
2479
- border-radius: var(--ui-icon-button-radius, var(--ui-radius-2));
2480
- background: var(--ui-icon-button-bg, transparent);
2490
+ border-radius: var(--ui-icon-button-radius, var(--ui-radius-md));
2491
+ background: var(--ui-icon-button-surface, transparent);
2481
2492
  color: inherit;
2482
2493
  display: inline-flex;
2483
2494
  align-items: center;
@@ -2491,7 +2502,7 @@ svg[data-v-a6b9e9ca-s] {
2491
2502
  transform var(--ui-motion-fast) var(--ui-motion-ease);
2492
2503
  }
2493
2504
  @media (hover: none), (pointer: coarse) {
2494
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-9ff7e192]::before {
2505
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"][data-v-80722d12]::before {
2495
2506
  opacity: 0;
2496
2507
  }
2497
2508
  }
@@ -2499,116 +2510,104 @@ svg[data-v-a6b9e9ca-s] {
2499
2510
  /* A touch target without a bigger button: an invisible hit area, at least the control
2500
2511
  minimum, centred on the button (::before is the anticipatory guide). */
2501
2512
  @media (pointer: coarse) {
2502
- [data-component~="ui-icon-button"][data-v-9ff7e192] {
2513
+ [data-component~="ui-icon-button"][data-v-80722d12] {
2503
2514
  position: relative;
2504
2515
  }
2505
- [data-component~="ui-icon-button"][data-v-9ff7e192]::after {
2516
+ [data-component~="ui-icon-button"][data-v-80722d12]::after {
2506
2517
  content: "";
2507
2518
  position: absolute;
2508
2519
  inset: 50% auto auto 50%;
2509
- inline-size: max(100%, var(--ui-control-min-block-size, 2.75rem));
2510
- block-size: max(100%, var(--ui-control-min-block-size, 2.75rem));
2520
+ inline-size: max(100%, var(--ui-control-min-block-size));
2521
+ block-size: max(100%, var(--ui-control-min-block-size));
2511
2522
  transform: translate(-50%, -50%);
2512
2523
  }
2513
2524
  }
2514
- html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-9ff7e192] {
2525
+ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-80722d12] {
2515
2526
  position: relative;
2516
2527
  }
2517
- html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-9ff7e192]::after {
2528
+ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"][data-v-80722d12]::after {
2518
2529
  content: "";
2519
2530
  position: absolute;
2520
2531
  inset: 50% auto auto 50%;
2521
- inline-size: max(100%, var(--ui-control-min-block-size, 2.75rem));
2522
- block-size: max(100%, var(--ui-control-min-block-size, 2.75rem));
2532
+ inline-size: max(100%, var(--ui-control-min-block-size));
2533
+ block-size: max(100%, var(--ui-control-min-block-size));
2523
2534
  transform: translate(-50%, -50%);
2524
2535
  }
2525
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-9ff7e192] {
2526
- inline-size: var(--ui-icon-button-size-sm, 1.75rem);
2527
- block-size: var(--ui-icon-button-size-sm, 1.75rem);
2528
- min-inline-size: var(--ui-icon-button-size-sm, 1.75rem);
2529
- min-block-size: var(--ui-icon-button-size-sm, 1.75rem);
2530
- }
2531
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-9ff7e192] {
2532
- inline-size: var(--ui-icon-button-size-lg, 2.5rem);
2533
- block-size: var(--ui-icon-button-size-lg, 2.5rem);
2534
- min-inline-size: var(--ui-icon-button-size-lg, 2.5rem);
2535
- min-block-size: var(--ui-icon-button-size-lg, 2.5rem);
2536
- }
2537
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="round"][data-v-9ff7e192] {
2538
- border-radius: var(--ui-radius-round, 999px);
2536
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-80722d12] {
2537
+ --_size: 1.75rem;
2538
+ inline-size: var(--ui-icon-button-size, var(--_size));
2539
+ block-size: var(--ui-icon-button-size, var(--_size));
2540
+ min-inline-size: var(--ui-icon-button-size, var(--_size));
2541
+ min-block-size: var(--ui-icon-button-size, var(--_size));
2542
+ }
2543
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-80722d12] {
2544
+ --_size: 2.5rem;
2545
+ inline-size: var(--ui-icon-button-size, var(--_size));
2546
+ block-size: var(--ui-icon-button-size, var(--_size));
2547
+ min-inline-size: var(--ui-icon-button-size, var(--_size));
2548
+ min-block-size: var(--ui-icon-button-size, var(--_size));
2549
+ }
2550
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="round"][data-v-80722d12] {
2551
+ border-radius: var(--ui-radius-round);
2539
2552
  }
2540
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-9ff7e192] {
2553
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-80722d12] {
2541
2554
  border-color: var(--ui-icon-button-border, var(--ui-border-default));
2542
- background: var(--ui-icon-button-outline-bg, var(--ui-surface-default));
2543
- color: var(--ui-icon-button-outline-color, var(--ui-text-primary));
2555
+ background: var(--ui-icon-button-outline-surface, var(--ui-surface-default));
2556
+ color: var(--ui-icon-button-outline-text, var(--ui-text-primary));
2544
2557
  }
2545
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-9ff7e192] {
2546
- background: var(--ui-icon-button-solid-bg, var(--ui-accent-solid));
2547
- color: var(--ui-icon-button-solid-color, var(--ui-text-on-accent));
2558
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-80722d12] {
2559
+ background: var(--ui-icon-button-solid-surface, var(--ui-accent-solid));
2560
+ color: var(--ui-icon-button-solid-text, var(--ui-text-on-accent));
2548
2561
  box-shadow: var(
2549
2562
  --ui-icon-button-solid-shadow,
2550
2563
  0 1px 2px color-mix(in srgb, var(--ui-accent-solid) 18%, transparent)
2551
2564
  );
2552
2565
  }
2553
- [data-component~="ui-icon-button"][data-v-9ff7e192]:hover:enabled {
2566
+ [data-component~="ui-icon-button"][data-v-80722d12]:hover:enabled {
2554
2567
  /* Derived from the text colour so the ghost hover shows on any background. */
2555
- background: var(--ui-icon-button-hover-bg, color-mix(in srgb, currentColor 8%, transparent));
2556
- color: var(--ui-icon-button-hover-color, var(--ui-text-primary));
2568
+ background: var(--ui-icon-button-hover-surface, color-mix(in srgb, currentColor 8%, transparent));
2569
+ color: var(--ui-icon-button-hover-text, var(--ui-text-primary));
2557
2570
  }
2558
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-9ff7e192]:hover:enabled {
2571
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-80722d12]:hover:enabled {
2559
2572
  border-color: var(--ui-icon-button-hover-border, var(--ui-border-strong));
2560
2573
  }
2561
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-9ff7e192]:hover:enabled {
2562
- background: var(--ui-icon-button-solid-hover-bg, var(--ui-accent-hover));
2574
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-80722d12]:hover:enabled {
2575
+ background: var(--ui-icon-button-solid-hover-surface, var(--ui-accent-hover));
2563
2576
  }
2564
- [data-component~="ui-icon-button"][data-v-9ff7e192]:active:enabled {
2577
+ [data-component~="ui-icon-button"][data-v-80722d12]:active:enabled {
2565
2578
  transform: scale(var(--ui-icon-button-active-scale, 0.96));
2566
2579
  }
2567
- [data-component~="ui-icon-button"][data-v-9ff7e192]:focus-visible {
2580
+ [data-component~="ui-icon-button"][data-v-80722d12]:focus-visible {
2568
2581
  outline: none;
2569
2582
  box-shadow: var(--ui-focus-halo);
2570
2583
  }
2571
2584
 
2572
2585
  /* Disabled colours fall back to each variant's own; ghost takes only the icon colour. */
2573
- [data-component~="ui-icon-button"][data-v-9ff7e192]:disabled {
2574
- opacity: var(--ui-icon-button-disabled-opacity, 0.6);
2575
- color: var(--ui-icon-button-disabled-color, inherit);
2586
+ [data-component~="ui-icon-button"][data-v-80722d12]:disabled {
2587
+ opacity: var(--ui-icon-button-disabled-opacity, 1);
2588
+ color: var(--ui-icon-button-disabled-text, var(--ui-disabled-text));
2576
2589
  cursor: not-allowed;
2577
2590
  }
2578
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-9ff7e192]:disabled {
2579
- border-color: var(
2580
- --ui-icon-button-disabled-border,
2581
- var(--ui-icon-button-border, var(--ui-border-default))
2582
- );
2583
- background-color: var(
2584
- --ui-icon-button-disabled-bg,
2585
- var(--ui-icon-button-outline-bg, var(--ui-surface-default))
2586
- );
2587
- color: var(
2588
- --ui-icon-button-disabled-color,
2589
- var(--ui-icon-button-outline-color, var(--ui-text-primary))
2590
- );
2591
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"][data-v-80722d12]:disabled {
2592
+ border-color: var(--ui-icon-button-disabled-border, var(--ui-border));
2593
+ background-color: var(--ui-icon-button-disabled-surface, var(--ui-disabled-surface));
2594
+ color: var(--ui-icon-button-disabled-text, var(--ui-disabled-text));
2591
2595
  }
2592
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-9ff7e192]:disabled {
2593
- background-color: var(
2594
- --ui-icon-button-disabled-bg,
2595
- var(--ui-icon-button-solid-bg, var(--ui-accent-solid))
2596
- );
2597
- color: var(
2598
- --ui-icon-button-disabled-color,
2599
- var(--ui-icon-button-solid-color, var(--ui-text-on-accent))
2600
- );
2596
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"][data-v-80722d12]:disabled {
2597
+ border-color: var(--ui-icon-button-disabled-border, var(--ui-border));
2598
+ background-color: var(--ui-icon-button-disabled-surface, var(--ui-disabled-surface));
2599
+ color: var(--ui-icon-button-disabled-text, var(--ui-disabled-text));
2601
2600
  }
2602
- [data-component~="ui-icon-button"][data-v-9ff7e192] {
2603
- --_icon-button-icon-default: var(--ui-icon-size-md, 1.25rem);
2601
+ [data-component~="ui-icon-button"][data-v-80722d12] {
2602
+ --_icon-button-icon-default: var(--ui-icon-size-md);
2604
2603
  }
2605
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-9ff7e192] {
2606
- --_icon-button-icon-default: var(--ui-icon-size-sm, 1rem);
2604
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=sm"][data-v-80722d12] {
2605
+ --_icon-button-icon-default: var(--ui-icon-size-sm);
2607
2606
  }
2608
- [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-9ff7e192] {
2609
- --_icon-button-icon-default: var(--ui-icon-size-lg, 1.5rem);
2607
+ [data-component~="ui-icon-button"][data-ui-icon-button-state~="size=lg"][data-v-80722d12] {
2608
+ --_icon-button-icon-default: var(--ui-icon-size-lg);
2610
2609
  }
2611
- svg[data-v-9ff7e192-s] {
2610
+ svg[data-v-80722d12-s] {
2612
2611
  inline-size: var(--ui-icon-button-icon-size, var(--_icon-button-icon-default));
2613
2612
  block-size: var(--ui-icon-button-icon-size, var(--_icon-button-icon-default));
2614
2613
  flex-shrink: 0;
@@ -2616,21 +2615,21 @@ svg[data-v-9ff7e192-s] {
2616
2615
  }
2617
2616
 
2618
2617
  /* A component that sets its display still honours the hidden attribute on its root. */
2619
- [data-component~="ui-icon-button"][hidden][data-v-9ff7e192] {
2618
+ [data-component~="ui-icon-button"][hidden][data-v-80722d12] {
2620
2619
  display: none;
2621
2620
  }
2622
2621
 
2623
- [data-component~="ui-input"][data-v-e80b5857] {
2622
+ [data-component~="ui-input"][data-v-f00d6a51] {
2624
2623
  box-sizing: border-box;
2625
2624
  display: inline-block;
2626
2625
  inline-size: 100%;
2627
2626
  min-inline-size: 0;
2628
- min-block-size: var(--ui-control-size-md, 2.5rem);
2627
+ min-block-size: var(--ui-control-size-md);
2629
2628
  margin: 0;
2630
2629
  padding: var(--ui-space-2) var(--ui-space-3);
2631
2630
  appearance: none;
2632
2631
  border: 1px solid var(--ui-control-border, var(--ui-border-strong));
2633
- border-radius: var(--ui-input-radius, var(--ui-radius-2));
2632
+ border-radius: var(--ui-input-radius, var(--ui-radius-md));
2634
2633
  background: var(--ui-control-surface, var(--ui-surface-elevated));
2635
2634
  color: var(--ui-text-primary);
2636
2635
  font: inherit;
@@ -2643,18 +2642,18 @@ svg[data-v-9ff7e192-s] {
2643
2642
  }
2644
2643
 
2645
2644
  /* Tabbing into a field selects its text; tint that selection softly instead of the page highlight. */
2646
- [data-component~="ui-input"][data-v-e80b5857]::selection {
2645
+ [data-component~="ui-input"][data-v-f00d6a51]::selection {
2647
2646
  background: color-mix(in srgb, var(--ui-accent-solid) 20%, transparent);
2648
2647
  color: inherit;
2649
2648
  }
2650
- [data-component~="ui-input"][data-v-e80b5857]::placeholder {
2649
+ [data-component~="ui-input"][data-v-f00d6a51]::placeholder {
2651
2650
  color: var(--ui-control-placeholder, var(--ui-text-secondary));
2652
2651
  opacity: 1;
2653
2652
  }
2654
- [data-component~="ui-input"][data-v-e80b5857]:hover:not(:focus):not(:disabled) {
2653
+ [data-component~="ui-input"][data-v-f00d6a51]:hover:not(:focus):not(:disabled) {
2655
2654
  border-color: var(--ui-control-border-hover, var(--ui-text-secondary));
2656
2655
  }
2657
- [data-component~="ui-input"][data-v-e80b5857]:focus-visible {
2656
+ [data-component~="ui-input"][data-v-f00d6a51]:focus-visible {
2658
2657
  border-color: var(--ui-control-focus, var(--ui-accent-solid));
2659
2658
  outline: none;
2660
2659
  box-shadow: var(
@@ -2665,16 +2664,16 @@ svg[data-v-9ff7e192-s] {
2665
2664
  }
2666
2665
 
2667
2666
  /* The app's invalid flag, or the browser's own verdict once the user has left an invalid field. */
2668
- [data-component~="ui-input"][aria-invalid="true"][data-v-e80b5857],
2669
- [data-component~="ui-input"][data-v-e80b5857]:is(:user-invalid, [data-user-invalid]) {
2667
+ [data-component~="ui-input"][aria-invalid="true"][data-v-f00d6a51],
2668
+ [data-component~="ui-input"][data-v-f00d6a51]:is(:user-invalid, [data-user-invalid]) {
2670
2669
  border-color: var(--ui-danger-solid);
2671
2670
  }
2672
- [data-component~="ui-input"][data-v-e80b5857]:is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible {
2671
+ [data-component~="ui-input"][data-v-f00d6a51]:is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible {
2673
2672
  box-shadow:
2674
2673
  var(--ui-control-inset),
2675
2674
  0 0 0 3px color-mix(in srgb, var(--ui-danger-solid) 22%, transparent);
2676
2675
  }
2677
- [data-component~="ui-input"][data-v-e80b5857]:disabled {
2676
+ [data-component~="ui-input"][data-v-f00d6a51]:disabled {
2678
2677
  background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
2679
2678
  color: var(--ui-text-muted);
2680
2679
  box-shadow: none;
@@ -2685,20 +2684,26 @@ svg[data-v-9ff7e192-s] {
2685
2684
  * scroll vertically inside the field. Native inputs already center their single line. */
2686
2685
 
2687
2686
  /* A component that sets its display still honours the hidden attribute on its root. */
2688
- [data-component~="ui-input"][hidden][data-v-e80b5857] {
2687
+ [data-component~="ui-input"][hidden][data-v-f00d6a51] {
2689
2688
  display: none;
2690
2689
  }
2691
2690
 
2692
- [data-component~="ui-menu"][data-v-3174acee] {
2691
+ /* Compact sets the part tokens its items read, so nothing has to rescale a global. */
2692
+ [data-component~="ui-menu"][data-ui-menu-state~="density=compact"][data-v-09be9e37] {
2693
+ --ui-menu-item-padding-block: var(--ui-space-1);
2694
+ --ui-menu-item-padding-inline: var(--ui-space-2);
2695
+ --ui-menu-item-font-size: var(--ui-font-size-sm);
2696
+ --ui-menu-item-radius: var(--ui-radius-sm);
2697
+ padding: var(--ui-space-1);
2698
+ gap: 0;
2699
+ }
2700
+ [data-component~="ui-menu"][data-v-09be9e37] {
2693
2701
  display: flex;
2694
2702
  flex-direction: column;
2695
2703
  box-sizing: border-box;
2696
2704
  inline-size: max-content;
2697
- min-inline-size: min(
2698
- 12rem,
2699
- calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2, 0.5rem)) * 2)
2700
- );
2701
- max-inline-size: calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2, 0.5rem)) * 2);
2705
+ min-inline-size: min(12rem, calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2));
2706
+ max-inline-size: calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2);
2702
2707
  padding: 0;
2703
2708
  border: 0;
2704
2709
  outline: 0;
@@ -2707,7 +2712,7 @@ svg[data-v-9ff7e192-s] {
2707
2712
  box-shadow: none;
2708
2713
  overflow: visible;
2709
2714
  }
2710
- .surface[data-v-3174acee] {
2715
+ .surface[data-v-09be9e37] {
2711
2716
  display: flex;
2712
2717
  flex-direction: column;
2713
2718
  box-sizing: border-box;
@@ -2715,20 +2720,20 @@ svg[data-v-9ff7e192-s] {
2715
2720
  padding: var(--ui-space-1);
2716
2721
  background: var(--ui-surface-elevated);
2717
2722
  border: 1px solid var(--ui-border-default);
2718
- border-radius: var(--ui-radius-3);
2723
+ border-radius: var(--ui-radius-lg);
2719
2724
  box-shadow: var(--ui-elevation-overlay, var(--ui-shadow-lg));
2720
2725
  max-block-size: inherit;
2721
2726
  overflow: auto;
2722
2727
  }
2723
- [data-component~="ui-menu"][data-v-3174acee]:not([data-component~="ui-menu"][data-ui-menu-state~="internalOpen"]) {
2728
+ [data-component~="ui-menu"][data-v-09be9e37]:not([data-component~="ui-menu"][data-ui-menu-state~="internalOpen"]) {
2724
2729
  display: none;
2725
2730
  }
2726
- [data-component~="ui-menu"][popover][data-v-3174acee] {
2731
+ [data-component~="ui-menu"][popover][data-v-09be9e37] {
2727
2732
  position: fixed;
2728
2733
  inset: auto;
2729
2734
  margin: 0;
2730
2735
  overflow: visible;
2731
- max-block-size: calc(100dvh - var(--ui-menu-viewport-gap, var(--ui-space-2, 0.5rem)) * 2);
2736
+ max-block-size: calc(100dvh - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2);
2732
2737
  opacity: 0;
2733
2738
  transform: translateY(-4px) scale(0.99);
2734
2739
  transition:
@@ -2737,61 +2742,62 @@ svg[data-v-9ff7e192-s] {
2737
2742
  display var(--ui-motion-fast) allow-discrete,
2738
2743
  overlay var(--ui-motion-fast) allow-discrete;
2739
2744
  }
2740
- [data-component~="ui-menu"][popover][data-v-3174acee]:popover-open {
2745
+ [data-component~="ui-menu"][popover][data-v-09be9e37]:popover-open {
2741
2746
  opacity: 1;
2742
2747
  transform: translateY(0) scale(1);
2743
2748
  }
2744
2749
  @starting-style {
2745
- [data-component~="ui-menu"][popover][data-v-3174acee]:popover-open {
2750
+ [data-component~="ui-menu"][popover][data-v-09be9e37]:popover-open {
2746
2751
  opacity: 0;
2747
2752
  transform: translateY(-4px) scale(0.99);
2748
2753
  }
2749
2754
  }
2750
- [data-component~="ui-menu"][hidden][data-v-3174acee] {
2755
+ [data-component~="ui-menu"][hidden][data-v-09be9e37] {
2751
2756
  display: none;
2752
2757
  }
2753
2758
  @media (prefers-reduced-motion: reduce) {
2754
- [data-component~="ui-menu"][popover][data-v-3174acee] {
2759
+ [data-component~="ui-menu"][popover][data-v-09be9e37] {
2755
2760
  transition: none;
2756
2761
  }
2757
2762
  }
2758
2763
 
2759
- [data-component~="ui-menu-item"][data-v-732d4711] {
2764
+ [data-component~="ui-menu-item"][data-v-deb5a674] {
2760
2765
  display: block;
2761
2766
  box-sizing: border-box;
2762
2767
  width: 100%;
2763
- padding: var(--ui-space-2) var(--ui-space-3);
2768
+ padding: var(--ui-menu-item-padding-block, var(--ui-space-2))
2769
+ var(--ui-menu-item-padding-inline, var(--ui-space-3));
2764
2770
  text-align: left;
2765
- border-radius: var(--ui-radius-2);
2771
+ border-radius: var(--ui-menu-item-radius, var(--ui-radius-md));
2766
2772
  color: var(--ui-text-primary);
2767
- font-size: var(--ui-font-size-md);
2768
- font-weight: var(--ui-font-medium, 500);
2773
+ font-size: var(--ui-menu-item-font-size, var(--ui-font-size-md));
2774
+ font-weight: var(--ui-font-medium);
2769
2775
  cursor: pointer;
2770
2776
  outline: none;
2771
2777
  transition:
2772
2778
  background-color var(--ui-motion-fast) var(--ui-motion-ease),
2773
2779
  color var(--ui-motion-fast) var(--ui-motion-ease);
2774
2780
  }
2775
- [data-component~="ui-menu-item"][data-v-732d4711]:is(:hover, :focus-visible):not([aria-disabled="true"]) {
2776
- background: var(--ui-surface-subtle);
2781
+ [data-component~="ui-menu-item"][data-v-deb5a674]:is(:hover, :focus-visible):not([aria-disabled="true"]) {
2782
+ background: var(--ui-menu-item-hover-surface, var(--ui-surface-subtle));
2777
2783
  }
2778
- [data-component~="ui-menu-item"][aria-disabled="true"][data-v-732d4711] {
2784
+ [data-component~="ui-menu-item"][aria-disabled="true"][data-v-deb5a674] {
2779
2785
  opacity: 0.6;
2780
2786
  cursor: not-allowed;
2781
2787
  }
2782
2788
 
2783
2789
  /* A component that sets its display still honours the hidden attribute on its root. */
2784
- [data-component~="ui-menu-item"][hidden][data-v-732d4711] {
2790
+ [data-component~="ui-menu-item"][hidden][data-v-deb5a674] {
2785
2791
  display: none;
2786
2792
  }
2787
2793
 
2788
- [data-component~="ui-popover"][data-v-49809509] {
2794
+ [data-component~="ui-popover"][data-v-c16079f0] {
2789
2795
  box-sizing: border-box;
2790
2796
  max-inline-size: min(
2791
2797
  20rem,
2792
- calc(100vw - var(--ui-popover-viewport-gap, var(--ui-space-2, 0.5rem)) * 2)
2798
+ calc(100vw - var(--ui-popover-viewport-gap, var(--ui-space-2)) * 2)
2793
2799
  );
2794
- max-block-size: calc(100dvh - var(--ui-popover-viewport-gap, var(--ui-space-2, 0.5rem)) * 2);
2800
+ max-block-size: calc(100dvh - var(--ui-popover-viewport-gap, var(--ui-space-2)) * 2);
2795
2801
  overflow: visible;
2796
2802
  padding: 0;
2797
2803
  border: 0;
@@ -2800,7 +2806,7 @@ svg[data-v-9ff7e192-s] {
2800
2806
  background: transparent;
2801
2807
  box-shadow: none;
2802
2808
  }
2803
- .surface[data-v-49809509] {
2809
+ .surface[data-v-c16079f0] {
2804
2810
  box-sizing: border-box;
2805
2811
  max-inline-size: inherit;
2806
2812
  max-block-size: inherit;
@@ -2808,13 +2814,13 @@ svg[data-v-9ff7e192-s] {
2808
2814
  padding: var(--ui-space-3);
2809
2815
  background: var(--ui-surface-elevated);
2810
2816
  border: 1px solid var(--ui-border-default);
2811
- border-radius: var(--ui-radius-3);
2817
+ border-radius: var(--ui-radius-lg);
2812
2818
  box-shadow: var(--ui-elevation-overlay, var(--ui-shadow-lg));
2813
2819
  }
2814
- [data-component~="ui-popover"][data-v-49809509]:not([data-component~="ui-popover"][data-ui-popover-state~="internalOpen"]) {
2820
+ [data-component~="ui-popover"][data-v-c16079f0]:not([data-component~="ui-popover"][data-ui-popover-state~="internalOpen"]) {
2815
2821
  display: none;
2816
2822
  }
2817
- [data-component~="ui-popover"][popover][data-v-49809509] {
2823
+ [data-component~="ui-popover"][popover][data-v-c16079f0] {
2818
2824
  position: fixed;
2819
2825
  inset: auto;
2820
2826
  margin: 0;
@@ -2826,21 +2832,21 @@ svg[data-v-9ff7e192-s] {
2826
2832
  display var(--ui-motion-fast) allow-discrete,
2827
2833
  overlay var(--ui-motion-fast) allow-discrete;
2828
2834
  }
2829
- [data-component~="ui-popover"][popover][data-v-49809509]:popover-open {
2835
+ [data-component~="ui-popover"][popover][data-v-c16079f0]:popover-open {
2830
2836
  opacity: 1;
2831
2837
  transform: translateY(0) scale(1);
2832
2838
  }
2833
2839
  @starting-style {
2834
- [data-component~="ui-popover"][popover][data-v-49809509]:popover-open {
2840
+ [data-component~="ui-popover"][popover][data-v-c16079f0]:popover-open {
2835
2841
  opacity: 0;
2836
2842
  transform: translateY(-4px) scale(0.99);
2837
2843
  }
2838
2844
  }
2839
- [data-component~="ui-popover"][hidden][data-v-49809509] {
2845
+ [data-component~="ui-popover"][hidden][data-v-c16079f0] {
2840
2846
  display: none;
2841
2847
  }
2842
2848
  @media (prefers-reduced-motion: reduce) {
2843
- [data-component~="ui-popover"][popover][data-v-49809509] {
2849
+ [data-component~="ui-popover"][popover][data-v-c16079f0] {
2844
2850
  transition: none;
2845
2851
  }
2846
2852
  }
@@ -2912,8 +2918,8 @@ legend[data-v-df092584] + * {
2912
2918
  display: none;
2913
2919
  }
2914
2920
 
2915
- [data-component~="ui-reel"][data-v-8cc08968] {
2916
- --_reel-gap: var(--ui-space-4, 1rem);
2921
+ [data-component~="ui-reel"][data-v-0dde8279] {
2922
+ --_reel-gap: var(--ui-space-4);
2917
2923
  --_reel-item-width: auto;
2918
2924
  display: flex;
2919
2925
  inline-size: 100%;
@@ -2925,133 +2931,130 @@ legend[data-v-df092584] + * {
2925
2931
  overflow-y: hidden;
2926
2932
  overscroll-behavior-inline: contain;
2927
2933
  }
2928
- [data-component~="ui-reel"] > [data-v-8cc08968-s] {
2934
+ [data-component~="ui-reel"] > [data-v-0dde8279-s] {
2929
2935
  min-inline-size: 0;
2930
2936
  flex: 0 0 var(--ui-reel-item-width, var(--_reel-item-width));
2931
2937
  }
2932
- [data-component~="ui-reel"][data-ui-reel-state~="gap=xs"][data-v-8cc08968] {
2933
- --_reel-gap: var(--ui-space-2, 0.5rem);
2938
+ [data-component~="ui-reel"][data-ui-reel-state~="gap=xs"][data-v-0dde8279] {
2939
+ --_reel-gap: var(--ui-space-2);
2934
2940
  }
2935
- [data-component~="ui-reel"][data-ui-reel-state~="gap=s"][data-v-8cc08968] {
2936
- --_reel-gap: var(--ui-space-3, 0.75rem);
2941
+ [data-component~="ui-reel"][data-ui-reel-state~="gap=s"][data-v-0dde8279] {
2942
+ --_reel-gap: var(--ui-space-3);
2937
2943
  }
2938
- [data-component~="ui-reel"][data-ui-reel-state~="gap=m"][data-v-8cc08968] {
2939
- --_reel-gap: var(--ui-space-4, 1rem);
2944
+ [data-component~="ui-reel"][data-ui-reel-state~="gap=m"][data-v-0dde8279] {
2945
+ --_reel-gap: var(--ui-space-4);
2940
2946
  }
2941
- [data-component~="ui-reel"][data-ui-reel-state~="gap=l"][data-v-8cc08968] {
2942
- --_reel-gap: var(--ui-space-5, 1.5rem);
2947
+ [data-component~="ui-reel"][data-ui-reel-state~="gap=l"][data-v-0dde8279] {
2948
+ --_reel-gap: var(--ui-space-5);
2943
2949
  }
2944
- [data-component~="ui-reel"][data-ui-reel-state~="gap=xl"][data-v-8cc08968] {
2945
- --_reel-gap: var(--ui-space-6, 2rem);
2950
+ [data-component~="ui-reel"][data-ui-reel-state~="gap=xl"][data-v-0dde8279] {
2951
+ --_reel-gap: var(--ui-space-6);
2946
2952
  }
2947
- [data-component~="ui-reel"][data-ui-reel-state~="itemWidth=sm"][data-v-8cc08968] {
2953
+ [data-component~="ui-reel"][data-ui-reel-state~="itemWidth=sm"][data-v-0dde8279] {
2948
2954
  --_reel-item-width: 12rem;
2949
2955
  }
2950
- [data-component~="ui-reel"][data-ui-reel-state~="itemWidth=md"][data-v-8cc08968] {
2956
+ [data-component~="ui-reel"][data-ui-reel-state~="itemWidth=md"][data-v-0dde8279] {
2951
2957
  --_reel-item-width: 16rem;
2952
2958
  }
2953
- [data-component~="ui-reel"][data-ui-reel-state~="itemWidth=lg"][data-v-8cc08968] {
2959
+ [data-component~="ui-reel"][data-ui-reel-state~="itemWidth=lg"][data-v-0dde8279] {
2954
2960
  --_reel-item-width: 20rem;
2955
2961
  }
2956
- [data-component~="ui-reel"][data-ui-reel-state~="snap"][data-v-8cc08968] {
2962
+ [data-component~="ui-reel"][data-ui-reel-state~="snap"][data-v-0dde8279] {
2957
2963
  scroll-snap-type: inline mandatory;
2958
2964
  }
2959
- [data-component~="ui-reel"][data-ui-reel-state~="snap=start"] > [data-v-8cc08968-s] {
2965
+ [data-component~="ui-reel"][data-ui-reel-state~="snap=start"] > [data-v-0dde8279-s] {
2960
2966
  scroll-snap-align: start;
2961
2967
  }
2962
- [data-component~="ui-reel"][data-ui-reel-state~="snap=center"] > [data-v-8cc08968-s] {
2968
+ [data-component~="ui-reel"][data-ui-reel-state~="snap=center"] > [data-v-0dde8279-s] {
2963
2969
  scroll-snap-align: center;
2964
2970
  }
2965
2971
 
2966
2972
  /* A component that sets its display still honours the hidden attribute on its root. */
2967
- [data-component~="ui-reel"][hidden][data-v-8cc08968] {
2973
+ [data-component~="ui-reel"][hidden][data-v-0dde8279] {
2968
2974
  display: none;
2969
2975
  }
2970
2976
 
2971
- [data-component~="ui-search-result-row"][data-v-d2414aa2] {
2977
+ [data-component~="ui-search-result-row"][data-v-7d88a5d4] {
2972
2978
  appearance: none;
2973
2979
  inline-size: 100%;
2974
2980
  min-block-size: var(--ui-search-result-row-min-height, 56px);
2975
2981
  margin: 0;
2976
- padding-block: var(--ui-search-result-row-padding-block, var(--ui-space-3, 0.75rem));
2977
- padding-inline: var(--ui-search-result-row-padding-inline, var(--ui-space-4, 1rem));
2982
+ padding-block: var(--ui-search-result-row-padding-block, var(--ui-space-3));
2983
+ padding-inline: var(--ui-search-result-row-padding-inline, var(--ui-space-4));
2978
2984
  display: flex;
2979
2985
  align-items: flex-start;
2980
- gap: var(--ui-search-result-row-gap, var(--ui-space-3, 0.75rem));
2981
- background: var(--ui-search-result-row-bg, transparent);
2986
+ gap: var(--ui-search-result-row-gap, var(--ui-space-3));
2987
+ background: var(--ui-search-result-row-surface, transparent);
2982
2988
  border: none;
2983
- border-block-end: 1px solid var(--ui-search-result-row-border, var(--ui-border, #e5e7eb));
2989
+ border-block-end: 1px solid var(--ui-search-result-row-border, var(--ui-border));
2984
2990
  color: inherit;
2985
2991
  cursor: pointer;
2986
2992
  text-align: left;
2987
- transition: background-color var(--ui-motion-fast, 160ms) var(--ui-motion-ease, ease);
2993
+ transition: background-color var(--ui-motion-fast) var(--ui-motion-ease);
2988
2994
  }
2989
- [data-component~="ui-search-result-row"][data-v-d2414aa2]:last-child {
2995
+ [data-component~="ui-search-result-row"][data-v-7d88a5d4]:last-child {
2990
2996
  border-block-end: none;
2991
2997
  }
2992
- [data-component~="ui-search-result-row"][data-v-d2414aa2]:hover:enabled {
2998
+ [data-component~="ui-search-result-row"][data-v-7d88a5d4]:hover:enabled {
2993
2999
  background: var(
2994
- --ui-search-result-row-hover-bg,
2995
- color-mix(in srgb, var(--ui-surface, #ffffff) 85%, black 3%)
3000
+ --ui-search-result-row-hover-surface,
3001
+ color-mix(in srgb, var(--ui-surface) 85%, black 3%)
2996
3002
  );
2997
3003
  }
2998
- [data-component~="ui-search-result-row"][data-ui-search-result-row-state~="selected"][data-v-d2414aa2] {
3004
+ [data-component~="ui-search-result-row"][data-ui-search-result-row-state~="selected"][data-v-7d88a5d4] {
2999
3005
  background: var(
3000
3006
  --ui-search-result-row-selected-bg,
3001
- var(
3002
- --ui-search-result-row-hover-bg,
3003
- color-mix(in srgb, var(--ui-surface, #ffffff) 85%, black 3%)
3004
- )
3007
+ var(--ui-search-result-row-hover-surface, color-mix(in srgb, var(--ui-surface) 85%, black 3%))
3005
3008
  );
3006
3009
  }
3007
- [data-component~="ui-search-result-row"][data-v-d2414aa2]:focus-visible {
3008
- outline: 2px solid var(--ui-focus-ring, #2563eb);
3010
+ [data-component~="ui-search-result-row"][data-v-7d88a5d4]:focus-visible {
3011
+ outline: 2px solid var(--ui-focus-ring);
3009
3012
  outline-offset: -2px;
3010
3013
  }
3011
- [data-component~="ui-search-result-row"][data-v-d2414aa2]:disabled {
3014
+ [data-component~="ui-search-result-row"][data-v-7d88a5d4]:disabled {
3012
3015
  opacity: 0.6;
3013
3016
  cursor: not-allowed;
3014
3017
  }
3015
- .leading[data-v-d2414aa2],
3016
- .trailing[data-v-d2414aa2] {
3018
+ .leading[data-v-7d88a5d4],
3019
+ .trailing[data-v-7d88a5d4] {
3017
3020
  display: inline-flex;
3018
3021
  align-items: flex-start;
3019
3022
  flex-shrink: 0;
3020
3023
  }
3021
- .content[data-v-d2414aa2] {
3024
+ .content[data-v-7d88a5d4] {
3022
3025
  min-inline-size: 0;
3023
3026
  flex: 1;
3024
3027
  display: flex;
3025
3028
  flex-direction: column;
3026
3029
  }
3027
- .title[data-v-d2414aa2],
3028
- .meta[data-v-d2414aa2],
3029
- .excerpt[data-v-d2414aa2] {
3030
+ .title[data-v-7d88a5d4],
3031
+ .meta[data-v-7d88a5d4],
3032
+ .excerpt[data-v-7d88a5d4] {
3030
3033
  display: block;
3031
3034
  min-inline-size: 0;
3032
3035
  }
3033
3036
 
3034
3037
  /* An unused region takes no space. */
3035
- .leading[data-v-d2414aa2]:empty,
3036
- .meta[data-v-d2414aa2]:empty,
3037
- .excerpt[data-v-d2414aa2]:empty,
3038
- .trailing[data-v-d2414aa2]:empty {
3038
+ .leading[data-v-7d88a5d4]:empty,
3039
+ .meta[data-v-7d88a5d4]:empty,
3040
+ .excerpt[data-v-7d88a5d4]:empty,
3041
+ .trailing[data-v-7d88a5d4]:empty {
3039
3042
  display: none;
3040
3043
  }
3041
- [slot="title"][data-v-d2414aa2-s],[slot="meta"][data-v-d2414aa2-s],[slot="excerpt"][data-v-d2414aa2-s] {
3044
+ [slot="title"][data-v-7d88a5d4-s],[slot="meta"][data-v-7d88a5d4-s],[slot="excerpt"][data-v-7d88a5d4-s] {
3042
3045
  display: block;
3043
3046
  margin: 0;
3044
3047
  }
3045
3048
 
3046
3049
  /* A component that sets its display still honours the hidden attribute on its root. */
3047
- [data-component~="ui-search-result-row"][hidden][data-v-d2414aa2] {
3050
+ [data-component~="ui-search-result-row"][hidden][data-v-7d88a5d4] {
3048
3051
  display: none;
3049
3052
  }
3050
3053
 
3051
- [data-component~="ui-search-shell"][data-v-7aa92a93] {
3054
+ [data-component~="ui-search-shell"][data-v-976b649d] {
3052
3055
  display: contents;
3053
3056
  }
3054
- dialog[data-v-7aa92a93] {
3057
+ dialog[data-v-976b649d] {
3055
3058
  position: fixed;
3056
3059
  inset: 0;
3057
3060
  z-index: var(--ui-search-shell-z-index, 400);
@@ -3069,10 +3072,10 @@ dialog[data-v-7aa92a93] {
3069
3072
  background: var(--ui-overlay-backdrop);
3070
3073
  color: var(--ui-text-primary);
3071
3074
  }
3072
- dialog[data-v-7aa92a93]::backdrop {
3075
+ dialog[data-v-976b649d]::backdrop {
3073
3076
  background: var(--ui-overlay-backdrop);
3074
3077
  }
3075
- .panel[data-v-7aa92a93] {
3078
+ .panel[data-v-976b649d] {
3076
3079
  position: relative;
3077
3080
  display: flex;
3078
3081
  flex-direction: column;
@@ -3080,12 +3083,12 @@ dialog[data-v-7aa92a93]::backdrop {
3080
3083
  max-block-size: var(--ui-search-shell-max-height, 80vh);
3081
3084
  margin-inline: auto;
3082
3085
  overflow: hidden;
3083
- background: var(--ui-search-shell-bg, var(--ui-surface-elevated));
3086
+ background: var(--ui-search-shell-surface, var(--ui-surface-elevated));
3084
3087
  border: 1px solid var(--ui-search-shell-border, var(--ui-border-default));
3085
3088
  border-radius: var(--ui-search-shell-radius, var(--ui-radius-dialog));
3086
3089
  box-shadow: var(--ui-search-shell-shadow, var(--ui-elevation-dialog, var(--ui-shadow-xl)));
3087
3090
  }
3088
- .search[data-v-7aa92a93] {
3091
+ .search[data-v-976b649d] {
3089
3092
  padding: var(--ui-space-3);
3090
3093
  border-block-end: 1px solid var(--ui-border-default);
3091
3094
  transition:
@@ -3094,40 +3097,40 @@ dialog[data-v-7aa92a93]::backdrop {
3094
3097
  }
3095
3098
 
3096
3099
  /* The search region shows where typing goes, whatever the author put in it. */
3097
- .search[data-v-7aa92a93]:focus-within {
3100
+ .search[data-v-976b649d]:focus-within {
3098
3101
  border-block-end-color: var(--ui-search-shell-focus-color, var(--ui-control-focus));
3099
3102
  box-shadow: inset 0 -1px 0 var(--ui-search-shell-focus-color, var(--ui-control-focus));
3100
3103
  }
3101
- input[slot="search"][data-v-7aa92a93-s] {
3104
+ input[slot="search"][data-v-976b649d-s] {
3102
3105
  box-sizing: border-box;
3103
3106
  inline-size: 100%;
3104
3107
  min-block-size: var(--ui-control-min-block-size);
3105
3108
  padding: var(--ui-space-2) var(--ui-space-3);
3106
3109
  border: 1px solid var(--ui-control-border);
3107
- border-radius: var(--ui-radius-2);
3110
+ border-radius: var(--ui-radius-md);
3108
3111
  background: var(--ui-control-surface);
3109
3112
  color: var(--ui-text-primary);
3110
3113
  font: inherit;
3111
3114
  box-shadow: var(--ui-shadow-xs);
3112
3115
  }
3113
- input[slot="search"][data-v-7aa92a93-s]:focus-visible {
3116
+ input[slot="search"][data-v-976b649d-s]:focus-visible {
3114
3117
  border-color: var(--ui-control-focus);
3115
- outline: 2px solid var(--ui-focus-ring, currentColor);
3118
+ outline: 2px solid var(--ui-focus-ring);
3116
3119
  outline-offset: 2px;
3117
3120
  }
3118
- .status[data-v-7aa92a93],
3119
- .footer[data-v-7aa92a93] {
3121
+ .status[data-v-976b649d],
3122
+ .footer[data-v-976b649d] {
3120
3123
  flex-shrink: 0;
3121
3124
  padding: var(--ui-space-2) var(--ui-space-4);
3122
3125
  color: var(--ui-text-secondary);
3123
3126
  font-size: var(--ui-font-size-sm);
3124
3127
  }
3125
- .status[data-v-7aa92a93] {
3128
+ .status[data-v-976b649d] {
3126
3129
  border-block-end: 1px solid var(--ui-border-default);
3127
3130
  }
3128
3131
 
3129
3132
  /* Laid out like the dialog's action row: actions right-aligned, spaced as buttons, no fill. */
3130
- .footer[data-v-7aa92a93] {
3133
+ .footer[data-v-976b649d] {
3131
3134
  display: flex;
3132
3135
  flex-wrap: wrap;
3133
3136
  align-items: center;
@@ -3136,21 +3139,21 @@ input[slot="search"][data-v-7aa92a93-s]:focus-visible {
3136
3139
  padding: var(--ui-space-3) var(--ui-space-4);
3137
3140
  border-block-start: 1px solid var(--ui-border-default);
3138
3141
  }
3139
- .status[data-v-7aa92a93]:empty,
3140
- .footer[data-v-7aa92a93]:empty {
3142
+ .status[data-v-976b649d]:empty,
3143
+ .footer[data-v-976b649d]:empty {
3141
3144
  display: none;
3142
3145
  }
3143
- .body[data-v-7aa92a93] {
3146
+ .body[data-v-976b649d] {
3144
3147
  flex: 1;
3145
3148
  min-block-size: 0;
3146
3149
  overflow: auto;
3147
3150
  padding: var(--ui-space-2);
3148
3151
  }
3149
3152
  @media (max-width: 47.9375rem) {
3150
- dialog[data-v-7aa92a93] {
3153
+ dialog[data-v-976b649d] {
3151
3154
  padding: 0;
3152
3155
  }
3153
- .panel[data-v-7aa92a93] {
3156
+ .panel[data-v-976b649d] {
3154
3157
  inline-size: 100%;
3155
3158
  min-block-size: 100dvh;
3156
3159
  max-block-size: none;
@@ -3160,20 +3163,20 @@ dialog[data-v-7aa92a93] {
3160
3163
  }
3161
3164
 
3162
3165
  /* A component that sets its display still honours the hidden attribute on its root. */
3163
- [data-component~="ui-search-shell"][hidden][data-v-7aa92a93] {
3166
+ [data-component~="ui-search-shell"][hidden][data-v-976b649d] {
3164
3167
  display: none;
3165
3168
  }
3166
3169
 
3167
- [data-component~="ui-select"][data-v-b52cc131] {
3170
+ [data-component~="ui-select"][data-v-01335c35] {
3168
3171
  box-sizing: border-box;
3169
3172
  display: inline-block;
3170
3173
  inline-size: 100%;
3171
3174
  min-inline-size: 0;
3172
- min-block-size: var(--ui-control-size-md, 2.5rem);
3175
+ min-block-size: var(--ui-control-size-md);
3173
3176
  margin: 0;
3174
3177
  padding: var(--ui-space-2) var(--ui-space-3);
3175
3178
  border: 1px solid var(--ui-control-border, var(--ui-border-strong));
3176
- border-radius: var(--ui-select-radius, var(--ui-radius-2));
3179
+ border-radius: var(--ui-select-radius, var(--ui-radius-md));
3177
3180
  background-color: var(--ui-control-surface, var(--ui-surface-elevated));
3178
3181
  color: var(--ui-text-primary);
3179
3182
  color-scheme: light dark;
@@ -3188,7 +3191,7 @@ dialog[data-v-7aa92a93] {
3188
3191
 
3189
3192
  /* Single selects draw their own chevron: the native caret cannot be inset or sized consistently.
3190
3193
  * The root stays a native <s-lect>, so the icon is a background image rather than an element. */
3191
- [data-component~="ui-select"][data-v-b52cc131]:not([multiple]) {
3194
+ [data-component~="ui-select"][data-v-01335c35]:not([multiple]) {
3192
3195
  appearance: none;
3193
3196
  padding-inline-end: calc(var(--ui-space-3) + 1.5rem);
3194
3197
  background-image: var(
@@ -3199,10 +3202,10 @@ dialog[data-v-7aa92a93] {
3199
3202
  background-position: right var(--ui-space-3) center;
3200
3203
  background-size: 1.125rem 1.125rem;
3201
3204
  }
3202
- [data-component~="ui-select"][data-v-b52cc131]:hover:not(:focus):not(:disabled) {
3205
+ [data-component~="ui-select"][data-v-01335c35]:hover:not(:focus):not(:disabled) {
3203
3206
  border-color: var(--ui-control-border-hover, var(--ui-text-secondary));
3204
3207
  }
3205
- [data-component~="ui-select"][data-v-b52cc131]:focus-visible {
3208
+ [data-component~="ui-select"][data-v-01335c35]:focus-visible {
3206
3209
  border-color: var(--ui-control-focus, var(--ui-accent-solid));
3207
3210
  outline: none;
3208
3211
  box-shadow: var(
@@ -3213,29 +3216,29 @@ dialog[data-v-7aa92a93] {
3213
3216
  }
3214
3217
 
3215
3218
  /* The app's invalid flag, or the browser's own verdict once the user has left an invalid field. */
3216
- [data-component~="ui-select"][aria-invalid="true"][data-v-b52cc131],
3217
- [data-component~="ui-select"][data-v-b52cc131]:is(:user-invalid, [data-user-invalid]) {
3219
+ [data-component~="ui-select"][aria-invalid="true"][data-v-01335c35],
3220
+ [data-component~="ui-select"][data-v-01335c35]:is(:user-invalid, [data-user-invalid]) {
3218
3221
  border-color: var(--ui-danger-solid);
3219
3222
  }
3220
- [data-component~="ui-select"][data-v-b52cc131]:is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible {
3223
+ [data-component~="ui-select"][data-v-01335c35]:is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible {
3221
3224
  box-shadow:
3222
3225
  var(--ui-control-inset),
3223
3226
  0 0 0 3px color-mix(in srgb, var(--ui-danger-solid) 22%, transparent);
3224
3227
  }
3225
- [data-component~="ui-select"][data-v-b52cc131]:disabled {
3228
+ [data-component~="ui-select"][data-v-01335c35]:disabled {
3226
3229
  background-color: var(--ui-control-surface-disabled, var(--ui-surface-muted));
3227
3230
  color: var(--ui-text-muted);
3228
3231
  box-shadow: none;
3229
3232
  cursor: not-allowed;
3230
3233
  }
3231
- [data-component~="ui-select"][multiple][data-v-b52cc131],
3232
- [data-component~="ui-select"][size][data-v-b52cc131]:not([size="1"]) {
3234
+ [data-component~="ui-select"][multiple][data-v-01335c35],
3235
+ [data-component~="ui-select"][size][data-v-01335c35]:not([size="1"]) {
3233
3236
  min-block-size: 7rem;
3234
3237
  padding: var(--ui-space-2);
3235
3238
  }
3236
3239
 
3237
3240
  /* A component that sets its display still honours the hidden attribute on its root. */
3238
- [data-component~="ui-select"][hidden][data-v-b52cc131] {
3241
+ [data-component~="ui-select"][hidden][data-v-01335c35] {
3239
3242
  display: none;
3240
3243
  }
3241
3244
 
@@ -3252,7 +3255,7 @@ hr[aria-orientation="vertical"][data-v-f0034397] {
3252
3255
  border-inline-start: 1px solid var(--ui-separator-color, var(--ui-border-default));
3253
3256
  }
3254
3257
 
3255
- [data-component~="ui-sidebar"][data-v-fe11c9df] {
3258
+ [data-component~="ui-sidebar"][data-v-a2e22569] {
3256
3259
  position: relative;
3257
3260
  box-sizing: border-box;
3258
3261
  display: flex;
@@ -3264,21 +3267,21 @@ hr[aria-orientation="vertical"][data-v-f0034397] {
3264
3267
  background: var(--ui-sidebar-surface, var(--ui-surface-default));
3265
3268
  border-inline-end: 1px solid var(--ui-sidebar-border, var(--ui-border-default));
3266
3269
  }
3267
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][data-v-fe11c9df] {
3270
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][data-v-a2e22569] {
3268
3271
  border-inline-end: 0;
3269
3272
  border-inline-start: 1px solid var(--ui-sidebar-border, var(--ui-border-default));
3270
3273
  }
3271
- .content[data-v-fe11c9df] {
3274
+ .content[data-v-a2e22569] {
3272
3275
  flex: 1;
3273
3276
  min-block-size: 0;
3274
3277
  overflow: auto;
3275
3278
  }
3276
3279
 
3277
3280
  /* Collapsed while docked. */
3278
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="internalCollapsed"][data-v-fe11c9df]:not([popover]) {
3281
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="internalCollapsed"][data-v-a2e22569]:not([popover]) {
3279
3282
  display: none;
3280
3283
  }
3281
- .resizer[data-v-fe11c9df] {
3284
+ .resizer[data-v-a2e22569] {
3282
3285
  position: absolute;
3283
3286
  z-index: 1;
3284
3287
  inset-block: 0;
@@ -3291,15 +3294,15 @@ hr[aria-orientation="vertical"][data-v-f0034397] {
3291
3294
  touch-action: none;
3292
3295
  outline: none;
3293
3296
  }
3294
- .resizer[hidden][data-v-fe11c9df] {
3297
+ .resizer[hidden][data-v-a2e22569] {
3295
3298
  display: none;
3296
3299
  }
3297
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"] .resizer[data-v-fe11c9df] {
3300
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"] .resizer[data-v-a2e22569] {
3298
3301
  inset-inline-end: auto;
3299
3302
  inset-inline-start: 0;
3300
3303
  transform: translateX(-50%);
3301
3304
  }
3302
- .resizer[data-v-fe11c9df]::after {
3305
+ .resizer[data-v-a2e22569]::after {
3303
3306
  content: "";
3304
3307
  position: absolute;
3305
3308
  inset-block: 0;
@@ -3310,40 +3313,35 @@ hr[aria-orientation="vertical"][data-v-f0034397] {
3310
3313
  var(--ui-affordance-guide-color, var(--ui-border-strong)) 45%,
3311
3314
  transparent
3312
3315
  );
3313
- opacity: var(--ui-affordance-guide-opacity, 0.42);
3316
+ opacity: var(--ui-affordance-guide-opacity);
3314
3317
  transition:
3315
- background-color var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
3316
- var(--ui-motion-ease, ease),
3317
- opacity var(--ui-affordance-motion, var(--ui-motion-fast, 120ms)) var(--ui-motion-ease, ease);
3318
+ background-color var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease),
3319
+ opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
3318
3320
  }
3319
- .guide[data-v-fe11c9df] {
3321
+ .guide[data-v-a2e22569] {
3320
3322
  position: absolute;
3321
3323
  inset-block-start: 50%;
3322
3324
  inset-inline-start: 50%;
3323
3325
  inline-size: 6px;
3324
3326
  block-size: 22px;
3325
- border: 1px solid var(--ui-border-strong, #c8c8c4);
3326
- border-radius: var(--ui-radius-round, 999px);
3327
- background: var(--ui-surface-elevated, #fff);
3327
+ border: 1px solid var(--ui-border-strong);
3328
+ border-radius: var(--ui-radius-round);
3329
+ background: var(--ui-surface-elevated);
3328
3330
  opacity: 0;
3329
3331
  transform: translate(-50%, -50%);
3330
- transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast, 120ms))
3331
- var(--ui-motion-ease, ease);
3332
+ transition: opacity var(--ui-affordance-motion, var(--ui-motion-fast)) var(--ui-motion-ease);
3332
3333
  pointer-events: none;
3333
3334
  }
3334
- .resizer[data-v-fe11c9df]:is(:hover, :focus-visible)::after {
3335
- background: var(
3336
- --ui-affordance-direct-color,
3337
- var(--ui-accent-solid, var(--ui-color-focus, Highlight))
3338
- );
3335
+ .resizer[data-v-a2e22569]:is(:hover, :focus-visible)::after {
3336
+ background: var(--ui-affordance-direct-color, var(--ui-accent-solid, var(--ui-focus-ring)));
3339
3337
  opacity: 1;
3340
3338
  }
3341
- .resizer:is(:hover, :focus-visible) > .guide[data-v-fe11c9df] {
3339
+ .resizer:is(:hover, :focus-visible) > .guide[data-v-a2e22569] {
3342
3340
  opacity: 1;
3343
3341
  }
3344
3342
 
3345
3343
  /* Drawer: a popover in the top layer, sliding in from its edge. Closed popovers are hidden by the UA. */
3346
- [data-component~="ui-sidebar"][popover][data-v-fe11c9df] {
3344
+ [data-component~="ui-sidebar"][popover][data-v-a2e22569] {
3347
3345
  position: fixed;
3348
3346
  inset-block: 0;
3349
3347
  inset-inline-start: 0;
@@ -3357,47 +3355,47 @@ hr[aria-orientation="vertical"][data-v-f0034397] {
3357
3355
  box-shadow: var(--ui-elevation-overlay, var(--ui-shadow-lg));
3358
3356
  transform: translateX(0);
3359
3357
  transition:
3360
- transform var(--ui-motion-base, 0.2s) var(--ui-motion-ease-out, ease-out),
3361
- display var(--ui-motion-base, 0.2s) allow-discrete,
3362
- overlay var(--ui-motion-base, 0.2s) allow-discrete;
3358
+ transform var(--ui-motion-base) var(--ui-motion-ease-out),
3359
+ display var(--ui-motion-base) allow-discrete,
3360
+ overlay var(--ui-motion-base) allow-discrete;
3363
3361
  }
3364
3362
 
3365
3363
  /* The author display above would otherwise override the UA rule that hides a closed popover. */
3366
- [data-component~="ui-sidebar"][popover][data-v-fe11c9df]:not(:popover-open) {
3364
+ [data-component~="ui-sidebar"][popover][data-v-a2e22569]:not(:popover-open) {
3367
3365
  display: none;
3368
3366
  transform: translateX(-100%);
3369
3367
  }
3370
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-fe11c9df] {
3368
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-a2e22569] {
3371
3369
  inset-inline-start: auto;
3372
3370
  inset-inline-end: 0;
3373
3371
  }
3374
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-fe11c9df]:not(:popover-open) {
3372
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-a2e22569]:not(:popover-open) {
3375
3373
  transform: translateX(100%);
3376
3374
  }
3377
3375
  @starting-style {
3378
- [data-component~="ui-sidebar"][popover][data-v-fe11c9df]:popover-open {
3376
+ [data-component~="ui-sidebar"][popover][data-v-a2e22569]:popover-open {
3379
3377
  transform: translateX(-100%);
3380
3378
  }
3381
- [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-fe11c9df]:popover-open {
3379
+ [data-component~="ui-sidebar"][data-ui-sidebar-state~="side=end"][popover][data-v-a2e22569]:popover-open {
3382
3380
  transform: translateX(100%);
3383
3381
  }
3384
3382
  }
3385
- [data-component~="ui-sidebar"][popover][data-v-fe11c9df]::backdrop {
3383
+ [data-component~="ui-sidebar"][popover][data-v-a2e22569]::backdrop {
3386
3384
  background: var(--ui-sidebar-backdrop, rgb(0 0 0 / 0.32));
3387
3385
  }
3388
3386
  @media (prefers-reduced-motion: reduce) {
3389
- [data-component~="ui-sidebar"][popover][data-v-fe11c9df] {
3387
+ [data-component~="ui-sidebar"][popover][data-v-a2e22569] {
3390
3388
  transition: none;
3391
3389
  }
3392
3390
  }
3393
3391
 
3394
3392
  /* A component that sets its display still honours the hidden attribute on its root. */
3395
- [data-component~="ui-sidebar"][hidden][data-v-fe11c9df] {
3393
+ [data-component~="ui-sidebar"][hidden][data-v-a2e22569] {
3396
3394
  display: none;
3397
3395
  }
3398
3396
 
3399
- [data-component~="ui-stack"][data-v-8ab460be] {
3400
- --_layout-gap: var(--ui-space-4, 1rem);
3397
+ [data-component~="ui-stack"][data-v-aa8062a9] {
3398
+ --_layout-gap: var(--ui-space-4);
3401
3399
  display: flex;
3402
3400
  flex-direction: column;
3403
3401
  align-items: stretch;
@@ -3406,42 +3404,42 @@ hr[aria-orientation="vertical"][data-v-f0034397] {
3406
3404
  max-inline-size: 100%;
3407
3405
  margin: 0;
3408
3406
  }
3409
- [data-component~="ui-stack"][data-ui-stack-state~="gap=xs"][data-v-8ab460be] {
3410
- --_layout-gap: var(--ui-space-2, 0.5rem);
3407
+ [data-component~="ui-stack"][data-ui-stack-state~="gap=xs"][data-v-aa8062a9] {
3408
+ --_layout-gap: var(--ui-space-2);
3411
3409
  }
3412
- [data-component~="ui-stack"][data-ui-stack-state~="gap=s"][data-v-8ab460be] {
3413
- --_layout-gap: var(--ui-space-3, 0.75rem);
3410
+ [data-component~="ui-stack"][data-ui-stack-state~="gap=s"][data-v-aa8062a9] {
3411
+ --_layout-gap: var(--ui-space-3);
3414
3412
  }
3415
- [data-component~="ui-stack"][data-ui-stack-state~="gap=m"][data-v-8ab460be] {
3416
- --_layout-gap: var(--ui-space-4, 1rem);
3413
+ [data-component~="ui-stack"][data-ui-stack-state~="gap=m"][data-v-aa8062a9] {
3414
+ --_layout-gap: var(--ui-space-4);
3417
3415
  }
3418
- [data-component~="ui-stack"][data-ui-stack-state~="gap=l"][data-v-8ab460be] {
3419
- --_layout-gap: var(--ui-space-5, 1.5rem);
3416
+ [data-component~="ui-stack"][data-ui-stack-state~="gap=l"][data-v-aa8062a9] {
3417
+ --_layout-gap: var(--ui-space-5);
3420
3418
  }
3421
- [data-component~="ui-stack"][data-ui-stack-state~="gap=xl"][data-v-8ab460be] {
3422
- --_layout-gap: var(--ui-space-6, 2rem);
3419
+ [data-component~="ui-stack"][data-ui-stack-state~="gap=xl"][data-v-aa8062a9] {
3420
+ --_layout-gap: var(--ui-space-6);
3423
3421
  }
3424
- [data-component~="ui-stack"][data-ui-stack-state~="align=start"][data-v-8ab460be] {
3422
+ [data-component~="ui-stack"][data-ui-stack-state~="align=start"][data-v-aa8062a9] {
3425
3423
  align-items: flex-start;
3426
3424
  }
3427
- [data-component~="ui-stack"][data-ui-stack-state~="align=center"][data-v-8ab460be] {
3425
+ [data-component~="ui-stack"][data-ui-stack-state~="align=center"][data-v-aa8062a9] {
3428
3426
  align-items: center;
3429
3427
  }
3430
- [data-component~="ui-stack"][data-ui-stack-state~="align=end"][data-v-8ab460be] {
3428
+ [data-component~="ui-stack"][data-ui-stack-state~="align=end"][data-v-aa8062a9] {
3431
3429
  align-items: flex-end;
3432
3430
  }
3433
- [data-component~="ui-stack"][data-ui-stack-state~="justify=center"][data-v-8ab460be] {
3431
+ [data-component~="ui-stack"][data-ui-stack-state~="justify=center"][data-v-aa8062a9] {
3434
3432
  justify-content: center;
3435
3433
  }
3436
- [data-component~="ui-stack"][data-ui-stack-state~="justify=end"][data-v-8ab460be] {
3434
+ [data-component~="ui-stack"][data-ui-stack-state~="justify=end"][data-v-aa8062a9] {
3437
3435
  justify-content: flex-end;
3438
3436
  }
3439
- [data-component~="ui-stack"][data-ui-stack-state~="justify=between"][data-v-8ab460be] {
3437
+ [data-component~="ui-stack"][data-ui-stack-state~="justify=between"][data-v-aa8062a9] {
3440
3438
  justify-content: space-between;
3441
3439
  }
3442
3440
 
3443
3441
  /* A component that sets its display still honours the hidden attribute on its root. */
3444
- [data-component~="ui-stack"][hidden][data-v-8ab460be] {
3442
+ [data-component~="ui-stack"][hidden][data-v-aa8062a9] {
3445
3443
  display: none;
3446
3444
  }
3447
3445
 
@@ -3519,8 +3517,8 @@ input[data-v-44eb48fd], input[data-v-44eb48fd]::after {
3519
3517
  display: none;
3520
3518
  }
3521
3519
 
3522
- [data-component~="ui-switcher"][data-v-4c7859e6] {
3523
- --_switcher-gap: var(--ui-space-4, 1rem);
3520
+ [data-component~="ui-switcher"][data-v-4ba623e1] {
3521
+ --_switcher-gap: var(--ui-space-4);
3524
3522
  display: flex;
3525
3523
  flex-wrap: wrap;
3526
3524
  gap: var(--ui-switcher-gap, var(--_switcher-gap));
@@ -3528,57 +3526,68 @@ input[data-v-44eb48fd], input[data-v-44eb48fd]::after {
3528
3526
  max-inline-size: 100%;
3529
3527
  margin: 0;
3530
3528
  }
3531
- [data-component~="ui-switcher"] > [data-v-4c7859e6-s] {
3529
+ [data-component~="ui-switcher"] > [data-v-4ba623e1-s] {
3532
3530
  min-inline-size: 0;
3533
3531
  flex-grow: 1;
3534
3532
  /* The large multiplier makes the basis flip as a group at the intrinsic threshold. */
3535
3533
  flex-basis: calc((var(--ui-switcher-threshold, 30rem) - 100%) * 999);
3536
3534
  }
3537
- [data-component~="ui-switcher"][data-ui-switcher-state~="gap=xs"][data-v-4c7859e6] {
3538
- --_switcher-gap: var(--ui-space-2, 0.5rem);
3535
+ [data-component~="ui-switcher"][data-ui-switcher-state~="gap=xs"][data-v-4ba623e1] {
3536
+ --_switcher-gap: var(--ui-space-2);
3539
3537
  }
3540
- [data-component~="ui-switcher"][data-ui-switcher-state~="gap=s"][data-v-4c7859e6] {
3541
- --_switcher-gap: var(--ui-space-3, 0.75rem);
3538
+ [data-component~="ui-switcher"][data-ui-switcher-state~="gap=s"][data-v-4ba623e1] {
3539
+ --_switcher-gap: var(--ui-space-3);
3542
3540
  }
3543
- [data-component~="ui-switcher"][data-ui-switcher-state~="gap=m"][data-v-4c7859e6] {
3544
- --_switcher-gap: var(--ui-space-4, 1rem);
3541
+ [data-component~="ui-switcher"][data-ui-switcher-state~="gap=m"][data-v-4ba623e1] {
3542
+ --_switcher-gap: var(--ui-space-4);
3545
3543
  }
3546
- [data-component~="ui-switcher"][data-ui-switcher-state~="gap=l"][data-v-4c7859e6] {
3547
- --_switcher-gap: var(--ui-space-5, 1.5rem);
3544
+ [data-component~="ui-switcher"][data-ui-switcher-state~="gap=l"][data-v-4ba623e1] {
3545
+ --_switcher-gap: var(--ui-space-5);
3548
3546
  }
3549
- [data-component~="ui-switcher"][data-ui-switcher-state~="gap=xl"][data-v-4c7859e6] {
3550
- --_switcher-gap: var(--ui-space-6, 2rem);
3547
+ [data-component~="ui-switcher"][data-ui-switcher-state~="gap=xl"][data-v-4ba623e1] {
3548
+ --_switcher-gap: var(--ui-space-6);
3551
3549
  }
3552
- [data-component~="ui-switcher"][data-ui-switcher-state~="threshold=xs"] > [data-v-4c7859e6-s] {
3550
+ [data-component~="ui-switcher"][data-ui-switcher-state~="threshold=xs"] > [data-v-4ba623e1-s] {
3553
3551
  flex-basis: calc((var(--ui-switcher-threshold, 20rem) - 100%) * 999);
3554
3552
  }
3555
- [data-component~="ui-switcher"][data-ui-switcher-state~="threshold=md"] > [data-v-4c7859e6-s] {
3553
+ [data-component~="ui-switcher"][data-ui-switcher-state~="threshold=md"] > [data-v-4ba623e1-s] {
3556
3554
  flex-basis: calc((var(--ui-switcher-threshold, 45rem) - 100%) * 999);
3557
3555
  }
3558
- [data-component~="ui-switcher"][data-ui-switcher-state~="threshold=lg"] > [data-v-4c7859e6-s] {
3556
+ [data-component~="ui-switcher"][data-ui-switcher-state~="threshold=lg"] > [data-v-4ba623e1-s] {
3559
3557
  flex-basis: calc((var(--ui-switcher-threshold, 60rem) - 100%) * 999);
3560
3558
  }
3561
- [data-component~="ui-switcher"][data-ui-switcher-state~="align=start"][data-v-4c7859e6] {
3559
+ [data-component~="ui-switcher"][data-ui-switcher-state~="align=start"][data-v-4ba623e1] {
3562
3560
  align-items: flex-start;
3563
3561
  }
3564
- [data-component~="ui-switcher"][data-ui-switcher-state~="align=center"][data-v-4c7859e6] {
3562
+ [data-component~="ui-switcher"][data-ui-switcher-state~="align=center"][data-v-4ba623e1] {
3565
3563
  align-items: center;
3566
3564
  }
3567
- [data-component~="ui-switcher"][data-ui-switcher-state~="align=end"][data-v-4c7859e6] {
3565
+ [data-component~="ui-switcher"][data-ui-switcher-state~="align=end"][data-v-4ba623e1] {
3568
3566
  align-items: flex-end;
3569
3567
  }
3570
3568
 
3571
3569
  /* A component that sets its display still honours the hidden attribute on its root. */
3572
- [data-component~="ui-switcher"][hidden][data-v-4c7859e6] {
3570
+ [data-component~="ui-switcher"][hidden][data-v-4ba623e1] {
3573
3571
  display: none;
3574
3572
  }
3575
3573
 
3576
- [data-component~="ui-tabs"][data-v-d4ecb8b6] {
3574
+ /* Density resolves into the tab row's own values; the public tokens still override them. */
3575
+ [data-component~="ui-tabs"][data-v-b9e876c6] {
3576
+ --_tab-min-block-size: var(--ui-control-size);
3577
+ --_tab-padding-block: var(--ui-space-2);
3578
+ --_tab-padding-inline: var(--ui-space-3);
3579
+ }
3580
+ [data-component~="ui-tabs"][data-ui-tabs-state~="density=compact"][data-v-b9e876c6] {
3581
+ --_tab-min-block-size: var(--ui-control-size-sm);
3582
+ --_tab-padding-block: var(--ui-space-1);
3583
+ --_tab-padding-inline: var(--ui-space-2);
3584
+ }
3585
+ [data-component~="ui-tabs"][data-v-b9e876c6] {
3577
3586
  display: grid;
3578
3587
  inline-size: 100%;
3579
3588
  min-inline-size: 0;
3580
3589
  }
3581
- .list[data-v-d4ecb8b6] {
3590
+ .list[data-v-b9e876c6] {
3582
3591
  display: grid;
3583
3592
  grid-auto-flow: column;
3584
3593
  grid-auto-columns: max-content;
@@ -3594,60 +3603,61 @@ input[data-v-44eb48fd], input[data-v-44eb48fd]::after {
3594
3603
  scrollbar-width: thin;
3595
3604
  border-block-end: 1px solid var(--ui-border-default);
3596
3605
  }
3597
- .list button[data-v-d4ecb8b6] {
3598
- min-block-size: 2.5rem;
3606
+ .list button[data-v-b9e876c6] {
3607
+ min-block-size: var(--ui-tabs-tab-min-block-size, var(--_tab-min-block-size));
3599
3608
  margin: 0 0 -1px;
3600
- padding: var(--ui-space-2) var(--ui-space-3);
3609
+ padding: var(--ui-tabs-tab-padding-block, var(--_tab-padding-block))
3610
+ var(--ui-tabs-tab-padding-inline, var(--_tab-padding-inline));
3601
3611
  border: 0;
3602
3612
  border-block-end: 2px solid transparent;
3603
3613
  background: transparent;
3604
3614
  color: var(--ui-text-secondary);
3605
3615
  font: inherit;
3606
3616
  font-size: var(--ui-font-size-sm);
3607
- font-weight: var(--ui-font-medium, 500);
3617
+ font-weight: var(--ui-font-medium);
3608
3618
  cursor: pointer;
3609
3619
  transition:
3610
3620
  color var(--ui-motion-fast) var(--ui-motion-ease),
3611
3621
  background-color var(--ui-motion-fast) var(--ui-motion-ease),
3612
3622
  border-color var(--ui-motion-fast) var(--ui-motion-ease);
3613
3623
  }
3614
- [data-component~="ui-tabs"][data-ui-tabs-state~="stretch"] .list[data-v-d4ecb8b6] {
3624
+ [data-component~="ui-tabs"][data-ui-tabs-state~="stretch"] .list[data-v-b9e876c6] {
3615
3625
  grid-auto-columns: minmax(max-content, 1fr);
3616
3626
  }
3617
- .list button[data-v-d4ecb8b6] {
3627
+ .list button[data-v-b9e876c6] {
3618
3628
  white-space: nowrap;
3619
3629
  }
3620
- .list button[data-v-d4ecb8b6]:hover {
3630
+ .list button[data-v-b9e876c6]:hover {
3621
3631
  color: var(--ui-text-primary);
3622
3632
  background: var(--ui-surface-muted);
3623
3633
  }
3624
- .list button[aria-selected="true"][data-v-d4ecb8b6] {
3634
+ .list button[aria-selected="true"][data-v-b9e876c6] {
3625
3635
  color: var(--ui-accent-solid);
3626
3636
  border-block-end-color: var(--ui-accent-solid);
3627
3637
  }
3628
- .list button[data-v-d4ecb8b6]:focus-visible {
3638
+ .list button[data-v-b9e876c6]:focus-visible {
3629
3639
  position: relative;
3630
3640
  outline: none;
3631
3641
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--ui-focus-ring) 45%, transparent);
3632
- border-radius: var(--ui-radius-1);
3642
+ border-radius: var(--ui-radius-sm);
3633
3643
  }
3634
- .panels[data-v-d4ecb8b6] {
3644
+ .panels[data-v-b9e876c6] {
3635
3645
  min-inline-size: 0;
3636
3646
  }
3637
- [data-v-d4ecb8b6-s] {
3647
+ [data-v-b9e876c6-s] {
3638
3648
  padding: var(--ui-space-4);
3639
3649
  }
3640
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"][data-v-d4ecb8b6] {
3650
+ [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"][data-v-b9e876c6] {
3641
3651
  grid-template-columns: max-content minmax(0, 1fr);
3642
3652
  align-items: start;
3643
3653
  }
3644
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"] .list[data-v-d4ecb8b6] {
3654
+ [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"] .list[data-v-b9e876c6] {
3645
3655
  grid-auto-flow: row;
3646
3656
  grid-auto-columns: auto;
3647
3657
  border-block-end: 0;
3648
3658
  border-inline-end: 1px solid var(--ui-border-default);
3649
3659
  }
3650
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"] .list button[data-v-d4ecb8b6] {
3660
+ [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"] .list button[data-v-b9e876c6] {
3651
3661
  margin: 0 -1px 0 0;
3652
3662
  border-block-end: 0;
3653
3663
  border-inline-end: 2px solid transparent;
@@ -3655,32 +3665,32 @@ input[data-v-44eb48fd], input[data-v-44eb48fd]::after {
3655
3665
  }
3656
3666
  [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"]
3657
3667
  .list
3658
- button[aria-selected="true"][data-v-d4ecb8b6] {
3668
+ button[aria-selected="true"][data-v-b9e876c6] {
3659
3669
  border-inline-end-color: var(--ui-accent-solid);
3660
3670
  }
3661
3671
  @media (prefers-reduced-motion: reduce) {
3662
- .list button[data-v-d4ecb8b6] {
3672
+ .list button[data-v-b9e876c6] {
3663
3673
  transition: none;
3664
3674
  }
3665
3675
  }
3666
3676
 
3667
3677
  /* A component that sets its display still honours the hidden attribute on its root. */
3668
- [data-component~="ui-tabs"][hidden][data-v-d4ecb8b6] {
3678
+ [data-component~="ui-tabs"][hidden][data-v-b9e876c6] {
3669
3679
  display: none;
3670
3680
  }
3671
3681
 
3672
- [data-component~="ui-textarea"][data-v-3c990207] {
3682
+ [data-component~="ui-textarea"][data-v-2b01ccc0] {
3673
3683
  box-sizing: border-box;
3674
3684
  display: inline-block;
3675
3685
  inline-size: 100%;
3676
3686
  min-inline-size: 0;
3677
- min-block-size: calc(var(--ui-space-12, 3rem) * 2);
3687
+ min-block-size: calc(3rem * 2);
3678
3688
  margin: 0;
3679
3689
  padding: var(--ui-space-2) var(--ui-space-3);
3680
3690
  appearance: none;
3681
3691
  resize: vertical;
3682
3692
  border: 1px solid var(--ui-control-border, var(--ui-border-strong));
3683
- border-radius: var(--ui-textarea-radius, var(--ui-radius-2));
3693
+ border-radius: var(--ui-textarea-radius, var(--ui-radius-md));
3684
3694
  background: var(--ui-control-surface, var(--ui-surface-elevated));
3685
3695
  color: var(--ui-text-primary);
3686
3696
  font: inherit;
@@ -3693,18 +3703,18 @@ input[data-v-44eb48fd], input[data-v-44eb48fd]::after {
3693
3703
  }
3694
3704
 
3695
3705
  /* Tabbing into a field selects its text; tint that selection softly instead of the page highlight. */
3696
- [data-component~="ui-textarea"][data-v-3c990207]::selection {
3706
+ [data-component~="ui-textarea"][data-v-2b01ccc0]::selection {
3697
3707
  background: color-mix(in srgb, var(--ui-accent-solid) 20%, transparent);
3698
3708
  color: inherit;
3699
3709
  }
3700
- [data-component~="ui-textarea"][data-v-3c990207]::placeholder {
3710
+ [data-component~="ui-textarea"][data-v-2b01ccc0]::placeholder {
3701
3711
  color: var(--ui-control-placeholder, var(--ui-text-secondary));
3702
3712
  opacity: 1;
3703
3713
  }
3704
- [data-component~="ui-textarea"][data-v-3c990207]:hover:not(:focus):not(:disabled) {
3714
+ [data-component~="ui-textarea"][data-v-2b01ccc0]:hover:not(:focus):not(:disabled) {
3705
3715
  border-color: var(--ui-control-border-hover, var(--ui-text-secondary));
3706
3716
  }
3707
- [data-component~="ui-textarea"][data-v-3c990207]:focus-visible {
3717
+ [data-component~="ui-textarea"][data-v-2b01ccc0]:focus-visible {
3708
3718
  border-color: var(--ui-control-focus, var(--ui-accent-solid));
3709
3719
  outline: none;
3710
3720
  box-shadow: var(
@@ -3715,16 +3725,16 @@ input[data-v-44eb48fd], input[data-v-44eb48fd]::after {
3715
3725
  }
3716
3726
 
3717
3727
  /* The app's invalid flag, or the browser's own verdict once the user has left an invalid field. */
3718
- [data-component~="ui-textarea"][aria-invalid="true"][data-v-3c990207],
3719
- [data-component~="ui-textarea"][data-v-3c990207]:is(:user-invalid, [data-user-invalid]) {
3728
+ [data-component~="ui-textarea"][aria-invalid="true"][data-v-2b01ccc0],
3729
+ [data-component~="ui-textarea"][data-v-2b01ccc0]:is(:user-invalid, [data-user-invalid]) {
3720
3730
  border-color: var(--ui-danger-solid);
3721
3731
  }
3722
- [data-component~="ui-textarea"][data-v-3c990207]:is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible {
3732
+ [data-component~="ui-textarea"][data-v-2b01ccc0]:is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible {
3723
3733
  box-shadow:
3724
3734
  var(--ui-control-inset),
3725
3735
  0 0 0 3px color-mix(in srgb, var(--ui-danger-solid) 22%, transparent);
3726
3736
  }
3727
- [data-component~="ui-textarea"][data-v-3c990207]:disabled {
3737
+ [data-component~="ui-textarea"][data-v-2b01ccc0]:disabled {
3728
3738
  background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
3729
3739
  color: var(--ui-text-muted);
3730
3740
  box-shadow: none;
@@ -3732,11 +3742,11 @@ input[data-v-44eb48fd], input[data-v-44eb48fd]::after {
3732
3742
  }
3733
3743
 
3734
3744
  /* A component that sets its display still honours the hidden attribute on its root. */
3735
- [data-component~="ui-textarea"][hidden][data-v-3c990207] {
3745
+ [data-component~="ui-textarea"][hidden][data-v-2b01ccc0] {
3736
3746
  display: none;
3737
3747
  }
3738
3748
 
3739
- [data-component~="ui-toast-region"][data-v-d98878bd] {
3749
+ [data-component~="ui-toast-region"][data-v-7d8dab78] {
3740
3750
  position: fixed;
3741
3751
  top: calc(var(--ui-space-4) + env(safe-area-inset-top));
3742
3752
  right: auto;
@@ -3758,34 +3768,34 @@ input[data-v-44eb48fd], input[data-v-44eb48fd]::after {
3758
3768
  box-shadow: none;
3759
3769
  pointer-events: none;
3760
3770
  }
3761
- [data-component~="ui-toast-region"][data-v-d98878bd]:not(:popover-open) {
3771
+ [data-component~="ui-toast-region"][data-v-7d8dab78]:not(:popover-open) {
3762
3772
  display: none;
3763
3773
  }
3764
- [data-component~="ui-toast-region"] > .toast[data-v-d98878bd],
3765
- [data-component~="ui-toast-region"] > [data-v-d98878bd-s] {
3774
+ [data-component~="ui-toast-region"] > .toast[data-v-7d8dab78],
3775
+ [data-component~="ui-toast-region"] > [data-v-7d8dab78-s] {
3766
3776
  pointer-events: auto;
3767
3777
  }
3768
- .toast[data-v-d98878bd] {
3778
+ .toast[data-v-7d8dab78] {
3769
3779
  display: grid;
3770
3780
  grid-template-columns: 1fr auto;
3771
3781
  gap: var(--ui-space-2);
3772
3782
  align-items: start;
3773
3783
  border: 1px solid var(--ui-border-default);
3774
- border-radius: var(--ui-radius-3);
3784
+ border-radius: var(--ui-radius-lg);
3775
3785
  padding: var(--ui-space-3) var(--ui-space-4);
3776
3786
  background: var(--ui-surface-elevated);
3777
3787
  color: var(--ui-text-primary);
3778
3788
  box-shadow: var(--ui-elevation-overlay, var(--ui-shadow-lg));
3779
- animation: ui-toast-enter-d98878bd var(--ui-toast-enter-duration, 0.32s)
3789
+ animation: ui-toast-enter-7d8dab78 var(--ui-toast-enter-duration, 0.32s)
3780
3790
  var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
3781
3791
  }
3782
3792
 
3783
3793
  /* Leaving slides on down and fades; the controller removes the toast when this ends. */
3784
- .toast.closing[data-v-d98878bd] {
3785
- animation: ui-toast-exit-d98878bd var(--ui-toast-exit-duration, 0.22s) var(--ui-motion-ease, ease) both;
3794
+ .toast.closing[data-v-7d8dab78] {
3795
+ animation: ui-toast-exit-7d8dab78 var(--ui-toast-exit-duration, 0.22s) var(--ui-motion-ease) both;
3786
3796
  pointer-events: none;
3787
3797
  }
3788
- @keyframes ui-toast-enter-d98878bd {
3798
+ @keyframes ui-toast-enter-7d8dab78 {
3789
3799
  from {
3790
3800
  opacity: 0;
3791
3801
  transform: translateY(-1rem);
@@ -3795,7 +3805,7 @@ to {
3795
3805
  transform: translateY(0);
3796
3806
  }
3797
3807
  }
3798
- @keyframes ui-toast-exit-d98878bd {
3808
+ @keyframes ui-toast-exit-7d8dab78 {
3799
3809
  from {
3800
3810
  opacity: 1;
3801
3811
  transform: translateY(0);
@@ -3806,83 +3816,88 @@ to {
3806
3816
  }
3807
3817
  }
3808
3818
  @media (prefers-reduced-motion: reduce) {
3809
- .toast[data-v-d98878bd], .toast.closing[data-v-d98878bd] {
3819
+ .toast[data-v-7d8dab78], .toast.closing[data-v-7d8dab78] {
3810
3820
  animation: none;
3811
3821
  }
3812
3822
  }
3813
- .message[data-v-d98878bd] {
3823
+ .message[data-v-7d8dab78] {
3814
3824
  min-inline-size: 0;
3815
3825
  align-self: center;
3816
3826
  }
3817
- .dismiss[data-v-d98878bd] {
3827
+ .dismiss[data-v-7d8dab78] {
3818
3828
  align-self: center;
3819
3829
  margin-inline-end: calc(var(--ui-space-2) * -1);
3820
3830
  }
3821
3831
 
3822
3832
  /* A component that sets its display still honours the hidden attribute on its root. */
3823
- [data-component~="ui-toast-region"][hidden][data-v-d98878bd] {
3833
+ [data-component~="ui-toast-region"][hidden][data-v-7d8dab78] {
3824
3834
  display: none;
3825
3835
  }
3826
3836
 
3827
- [data-component~="ui-top-bar"][data-v-e785cef9] {
3837
+ [data-component~="ui-top-bar"][data-v-88437f08] {
3828
3838
  position: sticky;
3829
3839
  inset-block-start: 0;
3830
3840
  z-index: var(--ui-top-bar-z-index, 100);
3831
3841
  min-block-size: calc(var(--ui-top-bar-height, 56px) + env(safe-area-inset-top));
3832
3842
  display: flex;
3833
3843
  align-items: center;
3834
- gap: var(--ui-top-bar-gap, var(--ui-space-3, 0.75rem));
3844
+ gap: var(--ui-top-bar-gap, var(--ui-space-3));
3835
3845
  padding-block-start: env(safe-area-inset-top);
3836
3846
  padding-inline-start: max(
3837
- var(--ui-top-bar-padding-inline, var(--ui-space-4, 1rem)),
3847
+ var(--ui-top-bar-padding-inline, var(--ui-space-4)),
3838
3848
  env(safe-area-inset-left)
3839
3849
  );
3840
3850
  padding-inline-end: max(
3841
- var(--ui-top-bar-padding-inline, var(--ui-space-4, 1rem)),
3851
+ var(--ui-top-bar-padding-inline, var(--ui-space-4)),
3842
3852
  env(safe-area-inset-right)
3843
3853
  );
3844
- background: var(--ui-top-bar-bg, var(--ui-surface-elevated));
3854
+ background: var(--ui-top-bar-surface, var(--ui-surface-elevated));
3845
3855
  border-block-end: 1px solid var(--ui-top-bar-border, var(--ui-border-default));
3846
3856
  }
3847
- .leading[data-v-e785cef9],
3848
- .search[data-v-e785cef9],
3849
- .actions[data-v-e785cef9] {
3857
+ .leading[data-v-88437f08],
3858
+ .search[data-v-88437f08],
3859
+ .actions[data-v-88437f08] {
3850
3860
  display: flex;
3851
3861
  align-items: center;
3852
3862
  flex-shrink: 0;
3853
3863
  }
3854
- .actions[data-v-e785cef9] {
3855
- gap: var(--ui-top-bar-actions-gap, var(--ui-space-1, 0.25rem));
3864
+ .actions[data-v-88437f08] {
3865
+ gap: var(--ui-top-bar-actions-gap, var(--ui-space-1));
3856
3866
  }
3857
- .title[data-v-e785cef9] {
3867
+ .title[data-v-88437f08] {
3858
3868
  min-inline-size: 0;
3859
3869
  flex: 1;
3860
3870
  }
3861
3871
 
3862
3872
  /* An unused region takes no space, so it adds no gap. */
3863
- .leading[data-v-e785cef9]:empty,
3864
- .search[data-v-e785cef9]:empty,
3865
- .actions[data-v-e785cef9]:empty {
3873
+ .leading[data-v-88437f08]:empty,
3874
+ .search[data-v-88437f08]:empty,
3875
+ .actions[data-v-88437f08]:empty {
3866
3876
  display: none;
3867
3877
  }
3868
3878
 
3869
3879
  /* A component that sets its display still honours the hidden attribute on its root. */
3870
- [data-component~="ui-top-bar"][hidden][data-v-e785cef9] {
3880
+ [data-component~="ui-top-bar"][hidden][data-v-88437f08] {
3871
3881
  display: none;
3872
3882
  }
3873
3883
 
3874
- [data-component~="ui-tree"][data-v-abe57610] {
3884
+ [data-component~="ui-tree"][data-ui-tree-state~="density=compact"][data-v-e94f7a5c] {
3885
+ --ui-tree-item-min-block-size: var(--ui-control-size-sm);
3886
+ --ui-tree-item-font-size: var(--ui-font-size-sm);
3887
+ --ui-tree-item-label-padding-block: 0;
3888
+ }
3889
+ [data-component~="ui-tree"][data-v-e94f7a5c] {
3875
3890
  display: block;
3876
3891
  min-inline-size: 0;
3877
3892
  padding-inline-start: var(--ui-tree-gutter, 0px);
3878
3893
  }
3879
3894
 
3880
3895
  /* A component that sets its display still honours the hidden attribute on its root. */
3881
- [data-component~="ui-tree"][hidden][data-v-abe57610] {
3896
+ [data-component~="ui-tree"][hidden][data-v-e94f7a5c] {
3882
3897
  display: none;
3883
3898
  }
3884
3899
 
3885
- [data-component~="ui-tree-item"][data-v-554c49dd] {
3900
+ [data-component~="ui-tree-item"][data-v-b57a29c6] {
3886
3901
  --_tree-row-min-height: 32px;
3887
3902
 
3888
3903
  position: relative;
@@ -3890,14 +3905,14 @@ to {
3890
3905
  min-inline-size: 0;
3891
3906
  margin-inline-start: calc(var(--ui-tree-item-depth, 0) * var(--ui-tree-indent, 16px));
3892
3907
  }
3893
- .row[data-v-554c49dd] {
3908
+ .row[data-v-b57a29c6] {
3894
3909
  position: relative;
3895
3910
  display: grid;
3896
3911
  grid-template-columns: 20px auto minmax(0, 1fr) auto;
3897
3912
  align-items: center;
3898
- min-block-size: var(--ui-tree-row-min-height, var(--_tree-row-min-height));
3913
+ min-block-size: var(--ui-tree-item-min-block-size, var(--_tree-row-min-height));
3899
3914
  min-inline-size: 0;
3900
- font-size: var(--ui-tree-font-size, var(--ui-font-size-ui, 0.9375rem));
3915
+ font-size: var(--ui-tree-item-font-size, var(--ui-font-size-ui));
3901
3916
  border-radius: var(--ui-radius-md);
3902
3917
  color: var(--ui-text-secondary);
3903
3918
  transition:
@@ -3907,36 +3922,38 @@ to {
3907
3922
  box-shadow var(--ui-motion-fast) var(--ui-motion-ease),
3908
3923
  min-block-size var(--ui-motion-base) var(--ui-motion-ease);
3909
3924
  }
3910
- .row[data-v-554c49dd]:hover,
3911
- [data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"] .row[data-v-554c49dd],
3912
- .row[data-v-554c49dd]:focus-within {
3925
+ .row[data-v-b57a29c6]:hover,
3926
+ [data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"] .row[data-v-b57a29c6],
3927
+ .row[data-v-b57a29c6]:focus-within {
3913
3928
  color: var(--ui-text-primary);
3914
3929
  background: var(--ui-surface-muted);
3915
3930
  }
3916
- [data-component~="ui-tree-item"][data-ui-tree-item-state~="disabled"] .row[data-v-554c49dd] {
3931
+ [data-component~="ui-tree-item"][data-ui-tree-item-state~="disabled"] .row[data-v-b57a29c6] {
3917
3932
  opacity: 0.55;
3918
3933
  }
3919
- [data-component~="ui-tree-item"][data-dragging] .row[data-v-554c49dd] {
3934
+ [data-component~="ui-tree-item"][data-dragging] .row[data-v-b57a29c6] {
3920
3935
  opacity: 0.42;
3921
3936
  }
3922
- [data-component~="ui-tree-item"][data-v-554c49dd]:focus {
3937
+ [data-component~="ui-tree-item"][data-v-b57a29c6]:focus {
3923
3938
  outline: none;
3924
3939
  }
3925
- [data-component~="ui-tree-item"]:focus-visible .row[data-v-554c49dd] {
3940
+ [data-component~="ui-tree-item"]:focus-visible .row[data-v-b57a29c6] {
3926
3941
  box-shadow: 0 0 0 2px var(--ui-focus-ring);
3927
3942
  }
3928
- [data-component~="ui-tree-item"][data-drop-position="inside"] .row[data-v-554c49dd] {
3943
+
3944
+ /* Child combinators: drop feedback belongs to this item's own row, not the rows nested in it. */
3945
+ [data-component~="ui-tree-item"][data-drop-position="inside"] > .row[data-v-b57a29c6] {
3929
3946
  background: var(--ui-accent-subtle);
3930
3947
  box-shadow: inset 0 0 0 1px var(--ui-tree-drop-color, var(--ui-accent-solid));
3931
3948
  }
3932
- .disclosure[data-v-554c49dd],
3933
- .disclosure-spacer[data-v-554c49dd] {
3949
+ .disclosure[data-v-b57a29c6],
3950
+ .disclosure-spacer[data-v-b57a29c6] {
3934
3951
  grid-column: 1;
3935
3952
  grid-row: 1;
3936
3953
  inline-size: 20px;
3937
3954
  block-size: 28px;
3938
3955
  }
3939
- .disclosure[data-v-554c49dd] {
3956
+ .disclosure[data-v-b57a29c6] {
3940
3957
  display: grid;
3941
3958
  place-items: center;
3942
3959
  padding: 0;
@@ -3946,14 +3963,14 @@ to {
3946
3963
  border-radius: var(--ui-radius-sm);
3947
3964
  cursor: pointer;
3948
3965
  }
3949
- .disclosure[hidden][data-v-554c49dd] {
3966
+ .disclosure[hidden][data-v-b57a29c6] {
3950
3967
  display: none;
3951
3968
  }
3952
- .disclosure[data-v-554c49dd]:hover {
3969
+ .disclosure[data-v-b57a29c6]:hover {
3953
3970
  color: var(--ui-text-primary);
3954
3971
  background: var(--ui-surface-elevated);
3955
3972
  }
3956
- .disclosure-icon[data-v-554c49dd] {
3973
+ .disclosure-icon[data-v-b57a29c6] {
3957
3974
  display: grid;
3958
3975
  place-items: center;
3959
3976
  inline-size: 14px;
@@ -3961,7 +3978,7 @@ to {
3961
3978
  transform: rotate(-90deg);
3962
3979
  transition: transform var(--ui-motion-fast) var(--ui-motion-ease);
3963
3980
  }
3964
- .disclosure-icon[data-v-554c49dd]::before {
3981
+ .disclosure-icon[data-v-b57a29c6]::before {
3965
3982
  display: block;
3966
3983
  inline-size: 0.45rem;
3967
3984
  block-size: 0.45rem;
@@ -3971,19 +3988,19 @@ to {
3971
3988
  /* A chevron's ink sits below its box centre; lift it so it centres optically (in either rotation). */
3972
3989
  transform: translateY(-20%) rotate(45deg);
3973
3990
  }
3974
- [data-component~="ui-tree-item"][aria-expanded="true"] .disclosure-icon[data-v-554c49dd] {
3991
+ [data-component~="ui-tree-item"][aria-expanded="true"] .disclosure-icon[data-v-b57a29c6] {
3975
3992
  transform: rotate(0deg);
3976
3993
  }
3977
3994
 
3978
3995
  /* Lucide grip-vertical, filling the handle as in Looma 0.2. */
3979
- .drag-handle svg[data-v-554c49dd] {
3996
+ .drag-handle svg[data-v-b57a29c6] {
3980
3997
  display: block;
3981
3998
  inline-size: 100%;
3982
3999
  block-size: 100%;
3983
4000
  }
3984
4001
 
3985
4002
  /* Slotted content is outside this scope, so :has() cannot see it; hide only a truly empty slot. */
3986
- .leading[data-v-554c49dd] {
4003
+ .leading[data-v-b57a29c6] {
3987
4004
  display: inline-grid;
3988
4005
  place-items: center;
3989
4006
  grid-column: 2;
@@ -3993,12 +4010,12 @@ to {
3993
4010
  margin-inline-start: var(--ui-space-1);
3994
4011
  color: var(--ui-text-muted);
3995
4012
  }
3996
- .leading[data-v-554c49dd]:empty {
4013
+ .leading[data-v-b57a29c6]:empty {
3997
4014
  display: none;
3998
4015
  }
3999
4016
 
4000
4017
  /* Icons match the label's size (as in Knit's tree): an unsized SVG would otherwise render 300×150. */
4001
- svg[data-v-554c49dd-s],img[data-v-554c49dd-s] {
4018
+ svg[data-v-b57a29c6-s],img[data-v-b57a29c6-s] {
4002
4019
  display: block;
4003
4020
  inline-size: 1em;
4004
4021
  block-size: 1em;
@@ -4007,24 +4024,31 @@ svg[data-v-554c49dd-s],img[data-v-554c49dd-s] {
4007
4024
 
4008
4025
  /* The label spans the row's height and centres its content, so slotted content (a link) can
4009
4026
  stretch to fill the row as its own hit area; the padding tokens remove the inset. */
4010
- .label[data-v-554c49dd] {
4027
+ .label[data-v-b57a29c6] {
4011
4028
  grid-column: 3;
4012
4029
  grid-row: 1;
4013
4030
  align-self: stretch;
4014
4031
  display: flex;
4015
4032
  align-items: center;
4016
4033
  min-inline-size: 0;
4017
- padding: var(--ui-tree-label-padding-block, var(--ui-space-1))
4018
- var(--ui-tree-label-padding-inline, var(--ui-space-2));
4034
+ padding: var(--ui-tree-item-label-padding-block, var(--ui-space-1))
4035
+ var(--ui-tree-item-label-padding-inline, var(--ui-space-2));
4036
+ }
4037
+
4038
+ /* Slotted label content fills the cell, so a link is the row's hit area rather than sizing to
4039
+ its own text and reading as overflow. */
4040
+ .label > [data-v-b57a29c6-s] {
4041
+ flex: 1 1 auto;
4042
+ min-inline-size: 0;
4019
4043
  }
4020
- .actions[data-v-554c49dd] {
4044
+ .actions[data-v-b57a29c6] {
4021
4045
  grid-column: 4;
4022
4046
  grid-row: 1;
4023
4047
  display: inline-flex;
4024
4048
  align-items: center;
4025
4049
  min-inline-size: 0;
4026
4050
  }
4027
- .drag-handle[data-v-554c49dd] {
4051
+ .drag-handle[data-v-b57a29c6] {
4028
4052
  position: absolute;
4029
4053
  z-index: 2;
4030
4054
  inset-block-start: 50%;
@@ -4045,16 +4069,16 @@ svg[data-v-554c49dd-s],img[data-v-554c49dd-s] {
4045
4069
  transform: translateY(-50%);
4046
4070
  transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
4047
4071
  }
4048
- .row:hover .drag-handle[data-v-554c49dd],
4049
- .drag-handle[data-v-554c49dd]:hover,
4050
- .drag-handle[data-v-554c49dd]:focus-visible,
4051
- [data-component~="ui-tree-item"][data-dragging] .drag-handle[data-v-554c49dd] {
4072
+ .row:hover .drag-handle[data-v-b57a29c6],
4073
+ .drag-handle[data-v-b57a29c6]:hover,
4074
+ .drag-handle[data-v-b57a29c6]:focus-visible,
4075
+ [data-component~="ui-tree-item"][data-dragging] > .row > .drag-handle[data-v-b57a29c6] {
4052
4076
  opacity: 1;
4053
4077
  }
4054
- .drag-handle[data-v-554c49dd]:active {
4078
+ .drag-handle[data-v-b57a29c6]:active {
4055
4079
  cursor: grabbing;
4056
4080
  }
4057
- .drop-indicator[data-v-554c49dd] {
4081
+ .drop-indicator[data-v-b57a29c6] {
4058
4082
  position: absolute;
4059
4083
  z-index: 3;
4060
4084
  inset-inline: 1px;
@@ -4064,8 +4088,8 @@ svg[data-v-554c49dd-s],img[data-v-554c49dd-s] {
4064
4088
  background: var(--ui-tree-drop-color, var(--ui-accent-solid));
4065
4089
  pointer-events: none;
4066
4090
  }
4067
- .drop-indicator[data-v-554c49dd]::before,
4068
- .drop-indicator[data-v-554c49dd]::after {
4091
+ .drop-indicator[data-v-b57a29c6]::before,
4092
+ .drop-indicator[data-v-b57a29c6]::after {
4069
4093
  content: "";
4070
4094
  position: absolute;
4071
4095
  inset-block-start: 50%;
@@ -4076,39 +4100,39 @@ svg[data-v-554c49dd-s],img[data-v-554c49dd-s] {
4076
4100
  background: var(--ui-surface-elevated);
4077
4101
  transform: translateY(-50%);
4078
4102
  }
4079
- .drop-indicator[data-v-554c49dd]::before {
4103
+ .drop-indicator[data-v-b57a29c6]::before {
4080
4104
  inset-inline-start: -1px;
4081
4105
  }
4082
- .drop-indicator[data-v-554c49dd]::after {
4106
+ .drop-indicator[data-v-b57a29c6]::after {
4083
4107
  inset-inline-end: -1px;
4084
4108
  }
4085
- [data-component~="ui-tree-item"][data-drop-position="before"] .row-drop-indicator[data-v-554c49dd] {
4109
+ [data-component~="ui-tree-item"][data-drop-position="before"] > .row > .row-drop-indicator[data-v-b57a29c6] {
4086
4110
  display: block;
4087
4111
  inset-block-start: -1px;
4088
4112
  }
4089
- [data-component~="ui-tree-item"][data-drop-position="after"] .subtree-drop-indicator[data-v-554c49dd] {
4113
+ [data-component~="ui-tree-item"][data-drop-position="after"] > .subtree-drop-indicator[data-v-b57a29c6] {
4090
4114
  display: block;
4091
4115
  inset-block-end: -1px;
4092
4116
  }
4093
- .children[hidden][data-v-554c49dd] {
4117
+ .children[hidden][data-v-b57a29c6] {
4094
4118
  display: none;
4095
4119
  }
4096
- html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"][data-v-554c49dd] {
4120
+ html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"][data-v-b57a29c6] {
4097
4121
  --_tree-row-min-height: 44px;
4098
4122
  }
4099
- html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .drag-handle[data-v-554c49dd] {
4123
+ html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .drag-handle[data-v-b57a29c6] {
4100
4124
  display: none;
4101
4125
  }
4102
4126
  @media (prefers-reduced-motion: reduce) {
4103
- .row[data-v-554c49dd],
4104
- .disclosure-icon[data-v-554c49dd],
4105
- .drag-handle[data-v-554c49dd] {
4127
+ .row[data-v-b57a29c6],
4128
+ .disclosure-icon[data-v-b57a29c6],
4129
+ .drag-handle[data-v-b57a29c6] {
4106
4130
  transition: none;
4107
4131
  }
4108
4132
  }
4109
4133
 
4110
4134
  /* A component that sets its display still honours the hidden attribute on its root. */
4111
- [data-component~="ui-tree-item"][hidden][data-v-554c49dd] {
4135
+ [data-component~="ui-tree-item"][hidden][data-v-b57a29c6] {
4112
4136
  display: none;
4113
4137
  }
4114
4138
  /**
@@ -4407,7 +4431,7 @@ html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .drag-hand
4407
4431
  }
4408
4432
 
4409
4433
  .looma-editor__toolbar-button {
4410
- --ui-icon-button-size-sm: var(--ui-editor-toolbar-button-size, 2rem);
4434
+ --ui-icon-button-size: var(--ui-editor-toolbar-button-size, 2rem);
4411
4435
  --ui-icon-button-radius: var(--ui-editor-toolbar-button-radius, var(--ui-radius-1));
4412
4436
  --ui-icon-button-icon-size: var(--ui-editor-toolbar-icon-size, 1rem);
4413
4437
  }
@@ -4477,7 +4501,7 @@ html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .drag-hand
4477
4501
  }
4478
4502
 
4479
4503
  .looma-editor__mobile-toolbar-shell .looma-editor__toolbar-button {
4480
- --ui-icon-button-size-sm: var(--ui-editor-toolbar-mobile-button-size, 44px);
4504
+ --ui-icon-button-size: var(--ui-editor-toolbar-mobile-button-size, var(--ui-control-min-block-size));
4481
4505
  }
4482
4506
 
4483
4507
  .looma-editor__mobile-toolbar-back {