@threadlabs/looma 0.6.4 → 0.7.0

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