@threadlabs/looma 0.22.14 → 0.23.1

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 (217) hide show
  1. package/components/shared/icons.js +2 -0
  2. package/components/ui-avatar/ui-avatar.html +3 -3
  3. package/components/ui-avatar-group/ui-avatar-group.html +1 -1
  4. package/components/ui-badge/ui-badge.html +1 -1
  5. package/components/ui-button/ui-button.html +3 -3
  6. package/components/ui-callout/ui-callout.html +3 -2
  7. package/components/ui-card/ui-card.html +2 -2
  8. package/components/ui-checkbox/ui-checkbox.html +3 -3
  9. package/components/ui-combobox/ui-combobox.html +8 -8
  10. package/components/ui-context-menu/ui-context-menu.html +2 -2
  11. package/components/ui-description-list/ui-description-list.html +1 -1
  12. package/components/ui-dialog/ui-dialog.html +3 -3
  13. package/components/ui-disclosure/ui-disclosure.html +43 -3
  14. package/components/ui-editable/ui-editable.html +2 -2
  15. package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.html +5 -5
  16. package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +2 -2
  17. package/components/ui-editor-slash-menu/ui-editor-slash-menu.html +6 -6
  18. package/components/ui-editor-slash-menu-item/ui-editor-slash-menu-item.html +1 -1
  19. package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +2 -2
  20. package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +11 -11
  21. package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +5 -5
  22. package/components/ui-editor-toolbar/ui-editor-toolbar.html +4 -4
  23. package/components/ui-floating-action-button/ui-floating-action-button.html +2 -2
  24. package/components/ui-icon/ui-icon.html +2 -0
  25. package/components/ui-icon-button/ui-icon-button.html +1 -1
  26. package/components/ui-input/ui-input.html +8 -4
  27. package/components/ui-input-group/ui-input-group.html +10 -6
  28. package/components/ui-list/ui-list.html +1 -1
  29. package/components/ui-list-item/ui-list-item.html +20 -4
  30. package/components/ui-listbox/ui-listbox.html +3 -3
  31. package/components/ui-menu/ui-menu.html +2 -2
  32. package/components/ui-menu-item/ui-menu-item.html +4 -4
  33. package/components/ui-meter/ui-meter.html +1 -1
  34. package/components/ui-nav-item/ui-nav-item.html +46 -14
  35. package/components/ui-popover/ui-popover.html +1 -1
  36. package/components/ui-radio/ui-radio.html +2 -2
  37. package/components/ui-search-result-row/ui-search-result-row.html +24 -5
  38. package/components/ui-search-shell/ui-search-shell.html +4 -4
  39. package/components/ui-section/ui-section.html +3 -3
  40. package/components/ui-select/ui-select.html +6 -2
  41. package/components/ui-separator/ui-separator.html +2 -2
  42. package/components/ui-sidebar/ui-sidebar.html +3 -3
  43. package/components/ui-status-message/ui-status-message.html +1 -1
  44. package/components/ui-switch/ui-switch.html +3 -3
  45. package/components/ui-table/ui-table.html +3 -3
  46. package/components/ui-tabs/ui-tabs.html +7 -7
  47. package/components/ui-textarea/ui-textarea.html +6 -2
  48. package/components/ui-toast/ui-toast.html +2 -2
  49. package/components/ui-toast-region/ui-toast-region.html +5 -5
  50. package/components/ui-tooltip/ui-tooltip.html +15 -15
  51. package/components/ui-top-bar/ui-top-bar.html +1 -1
  52. package/components/ui-tree-item/ui-tree-item.html +27 -8
  53. package/dist/index.js +1 -1
  54. package/editor/icons.d.ts +2 -0
  55. package/editor/index.js +3 -1
  56. package/package.json +1 -1
  57. package/styles/ui-avatar-group.css +1 -1
  58. package/styles/ui-avatar.css +3 -3
  59. package/styles/ui-badge.css +1 -1
  60. package/styles/ui-button.css +3 -3
  61. package/styles/ui-callout.css +3 -2
  62. package/styles/ui-card.css +2 -2
  63. package/styles/ui-checkbox.css +3 -3
  64. package/styles/ui-combobox.css +8 -8
  65. package/styles/ui-context-menu.css +2 -2
  66. package/styles/ui-description-list.css +1 -1
  67. package/styles/ui-dialog.css +3 -3
  68. package/styles/ui-disclosure.css +42 -2
  69. package/styles/ui-editable.css +2 -2
  70. package/styles/ui-editor-insert-table-grid.css +5 -5
  71. package/styles/ui-editor-mention-menu.css +2 -2
  72. package/styles/ui-editor-slash-menu-item.css +1 -1
  73. package/styles/ui-editor-slash-menu.css +6 -6
  74. package/styles/ui-editor-table-context-menu.css +2 -2
  75. package/styles/ui-editor-table-overlay.css +11 -11
  76. package/styles/ui-editor-table-toolbar.css +5 -5
  77. package/styles/ui-editor-toolbar.css +4 -4
  78. package/styles/ui-floating-action-button.css +2 -2
  79. package/styles/ui-icon-button.css +1 -1
  80. package/styles/ui-input-group.css +10 -6
  81. package/styles/ui-input.css +8 -4
  82. package/styles/ui-list-item.css +23 -4
  83. package/styles/ui-list.css +1 -1
  84. package/styles/ui-listbox.css +3 -3
  85. package/styles/ui-menu-item.css +4 -4
  86. package/styles/ui-menu.css +2 -2
  87. package/styles/ui-meter.css +1 -1
  88. package/styles/ui-nav-item.css +46 -12
  89. package/styles/ui-popover.css +1 -1
  90. package/styles/ui-radio.css +2 -2
  91. package/styles/ui-search-result-row.css +29 -5
  92. package/styles/ui-search-shell.css +4 -4
  93. package/styles/ui-section.css +3 -3
  94. package/styles/ui-select.css +6 -2
  95. package/styles/ui-separator.css +2 -2
  96. package/styles/ui-sidebar.css +3 -3
  97. package/styles/ui-status-message.css +1 -1
  98. package/styles/ui-switch.css +3 -3
  99. package/styles/ui-table.css +3 -3
  100. package/styles/ui-tabs.css +7 -7
  101. package/styles/ui-textarea.css +6 -2
  102. package/styles/ui-toast-region.css +5 -5
  103. package/styles/ui-toast.css +2 -2
  104. package/styles/ui-tooltip.css +15 -15
  105. package/styles/ui-top-bar.css +1 -1
  106. package/styles/ui-tree-item.css +32 -8
  107. package/tokens.css +30 -9
  108. package/vanilla/UiDisclosure.d.ts +1 -0
  109. package/vanilla/UiDisclosure.js +10 -1
  110. package/vanilla/UiIcon.js +1 -1
  111. package/vanilla/UiNavItem.d.ts +2 -0
  112. package/vanilla/UiNavItem.js +1 -1
  113. package/vue/UiAvatar.vue +3 -3
  114. package/vue/UiAvatarGroup.vue +1 -1
  115. package/vue/UiBadge.vue +2 -1
  116. package/vue/UiButton.vue +3 -3
  117. package/vue/UiCallout.vue +2 -2
  118. package/vue/UiCard.vue +2 -2
  119. package/vue/UiCheckbox.vue +3 -3
  120. package/vue/UiCombobox.vue +11 -8
  121. package/vue/UiContextMenu.vue +2 -2
  122. package/vue/UiDescriptionList.vue +1 -1
  123. package/vue/UiDialog.vue +4 -3
  124. package/vue/UiDisclosure.d.ts +13 -2
  125. package/vue/UiDisclosure.vue +61 -4
  126. package/vue/UiEditable.vue +2 -2
  127. package/vue/UiEditorInsertTableGrid.vue +5 -5
  128. package/vue/UiEditorMentionMenu.vue +2 -2
  129. package/vue/UiEditorSlashMenu.vue +6 -6
  130. package/vue/UiEditorSlashMenuItem.vue +1 -1
  131. package/vue/UiEditorTableContextMenu.vue +2 -2
  132. package/vue/UiEditorTableOverlay.vue +11 -11
  133. package/vue/UiEditorTableToolbar.vue +5 -5
  134. package/vue/UiEditorToolbar.vue +6 -4
  135. package/vue/UiFloatingActionButton.vue +2 -2
  136. package/vue/UiIcon.vue +8 -0
  137. package/vue/UiIconButton.vue +1 -1
  138. package/vue/UiInput.vue +7 -4
  139. package/vue/UiInputGroup.vue +6 -6
  140. package/vue/UiList.vue +1 -1
  141. package/vue/UiListItem.vue +20 -4
  142. package/vue/UiListbox.vue +3 -3
  143. package/vue/UiMenu.vue +3 -2
  144. package/vue/UiMenuItem.vue +4 -4
  145. package/vue/UiMeter.vue +1 -1
  146. package/vue/UiNavItem.d.ts +18 -0
  147. package/vue/UiNavItem.vue +96 -12
  148. package/vue/UiPopover.vue +2 -1
  149. package/vue/UiRadio.vue +2 -2
  150. package/vue/UiSearchResultRow.vue +25 -5
  151. package/vue/UiSearchShell.vue +4 -4
  152. package/vue/UiSection.vue +3 -3
  153. package/vue/UiSelect.vue +3 -2
  154. package/vue/UiSeparator.vue +4 -2
  155. package/vue/UiSidebar.vue +5 -3
  156. package/vue/UiStatusMessage.vue +1 -1
  157. package/vue/UiSwitch.vue +3 -3
  158. package/vue/UiTable.vue +3 -3
  159. package/vue/UiTabs.vue +8 -7
  160. package/vue/UiTextarea.vue +2 -2
  161. package/vue/UiToast.vue +4 -2
  162. package/vue/UiToastRegion.vue +5 -5
  163. package/vue/UiTooltip.vue +19 -15
  164. package/vue/UiTopBar.vue +1 -1
  165. package/vue/UiTreeItem.vue +31 -8
  166. package/vue/chunks/UiAvatar.js +1 -1
  167. package/vue/chunks/UiAvatarGroup.js +1 -1
  168. package/vue/chunks/UiBadge.js +1 -1
  169. package/vue/chunks/UiButton.js +1 -1
  170. package/vue/chunks/UiCallout.js +1 -1
  171. package/vue/chunks/UiCard.js +1 -1
  172. package/vue/chunks/UiCheckbox.js +1 -1
  173. package/vue/chunks/UiCombobox.js +1 -1
  174. package/vue/chunks/UiContextMenu.js +1 -1
  175. package/vue/chunks/UiDescriptionList.js +1 -1
  176. package/vue/chunks/UiDialog.js +1 -1
  177. package/vue/chunks/UiDisclosure.js +27 -4
  178. package/vue/chunks/UiEditable.js +1 -1
  179. package/vue/chunks/UiEditorInsertTableGrid.js +1 -1
  180. package/vue/chunks/UiEditorMentionMenu.js +1 -1
  181. package/vue/chunks/UiEditorSlashMenu.js +1 -1
  182. package/vue/chunks/UiEditorSlashMenuItem.js +1 -1
  183. package/vue/chunks/UiEditorTableContextMenu.js +1 -1
  184. package/vue/chunks/UiEditorTableOverlay.js +1 -1
  185. package/vue/chunks/UiEditorTableToolbar.js +1 -1
  186. package/vue/chunks/UiEditorToolbar.js +1 -1
  187. package/vue/chunks/UiFloatingActionButton.js +1 -1
  188. package/vue/chunks/UiIcon.js +24 -1
  189. package/vue/chunks/UiIconButton.js +1 -1
  190. package/vue/chunks/UiInput.js +1 -1
  191. package/vue/chunks/UiInputGroup.js +1 -1
  192. package/vue/chunks/UiList.js +1 -1
  193. package/vue/chunks/UiListItem.js +1 -1
  194. package/vue/chunks/UiListbox.js +1 -1
  195. package/vue/chunks/UiMenu.js +1 -1
  196. package/vue/chunks/UiMenuItem.js +1 -1
  197. package/vue/chunks/UiMeter.js +1 -1
  198. package/vue/chunks/UiNavItem.js +65 -6
  199. package/vue/chunks/UiPopover.js +1 -1
  200. package/vue/chunks/UiRadio.js +1 -1
  201. package/vue/chunks/UiSearchResultRow.js +1 -1
  202. package/vue/chunks/UiSearchShell.js +1 -1
  203. package/vue/chunks/UiSection.js +1 -1
  204. package/vue/chunks/UiSelect.js +1 -1
  205. package/vue/chunks/UiSeparator.js +1 -1
  206. package/vue/chunks/UiSidebar.js +1 -1
  207. package/vue/chunks/UiStatusMessage.js +1 -1
  208. package/vue/chunks/UiSwitch.js +1 -1
  209. package/vue/chunks/UiTable.js +1 -1
  210. package/vue/chunks/UiTabs.js +1 -1
  211. package/vue/chunks/UiTextarea.js +1 -1
  212. package/vue/chunks/UiToast.js +1 -1
  213. package/vue/chunks/UiToastRegion.js +1 -1
  214. package/vue/chunks/UiTooltip.js +1 -1
  215. package/vue/chunks/UiTopBar.js +1 -1
  216. package/vue/chunks/UiTreeItem.js +1 -1
  217. package/vue/components.css +1348 -1208
@@ -58,7 +58,7 @@
58
58
  padding: var(--ui-space-2) var(--ui-space-3);
59
59
  appearance: none;
60
60
  resize: vertical;
61
- border: 1px solid var(--ui-control-border, var(--ui-border-strong));
61
+ border: var(--ui-border-width) solid var(--ui-control-border, var(--ui-border-strong));
62
62
  border-radius: var(--ui-textarea-radius, var(--ui-field-radius, var(--ui-radius-md)));
63
63
  background: var(--ui-control-surface, var(--ui-surface-elevated));
64
64
  color: var(--ui-text-primary);
@@ -102,7 +102,11 @@
102
102
  box-shadow: var(
103
103
  --ui-textarea-invalid-focus-shadow,
104
104
  var(--ui-control-inset),
105
- 0 0 0 3px color-mix(in srgb, var(--ui-textarea-invalid-border, var(--ui-field-danger, var(--ui-danger-solid))) 22%, transparent)
105
+ 0 0 0 calc(var(--ui-focus-width) * 1.5) color-mix(
106
+ in srgb,
107
+ var(--ui-textarea-invalid-border, var(--ui-field-danger, var(--ui-danger-solid))) 22%,
108
+ transparent
109
+ )
106
110
  );
107
111
  }
108
112
 
@@ -52,8 +52,8 @@
52
52
  inline-size: 100%;
53
53
  margin: 0;
54
54
  padding: var(--ui-space-3) var(--ui-space-4);
55
- border: 1px solid var(--ui-toast-border, var(--ui-overlay-border, var(--ui-border-strong)));
56
- border-inline-start: 3px solid var(--ui-toast-accent, var(--_ui-toast-accent));
55
+ border: var(--ui-border-width) solid var(--ui-toast-border, var(--ui-overlay-border, var(--ui-border-strong)));
56
+ border-inline-start: var(--ui-accent-line-width) solid var(--ui-toast-accent, var(--_ui-toast-accent));
57
57
  border-radius: var(--ui-toast-radius, var(--ui-overlay-radius, var(--ui-radius-lg)));
58
58
  background: var(--ui-toast-surface, var(--ui-overlay-surface, var(--ui-surface-elevated)));
59
59
  color: var(--ui-text-primary);
@@ -140,7 +140,7 @@
140
140
  grid-template-columns: 1fr auto;
141
141
  gap: var(--ui-space-2);
142
142
  align-items: start;
143
- border: 1px solid var(--_ui-toast-region-border, var(--ui-overlay-border, var(--ui-border-strong)));
143
+ border: var(--ui-border-width) solid var(--_ui-toast-region-border, var(--ui-overlay-border, var(--ui-border-strong)));
144
144
  border-radius: var(--_ui-toast-region-radius, var(--ui-overlay-radius, var(--ui-radius-lg)));
145
145
  padding: var(--ui-space-3) var(--ui-space-4);
146
146
  background: var(--_ui-toast-region-surface, var(--ui-overlay-surface, var(--ui-surface-elevated)));
@@ -150,16 +150,16 @@
150
150
  }
151
151
 
152
152
  .toast[data-tone="info"] {
153
- border-inline-start: 3px solid var(--ui-info-solid);
153
+ border-inline-start: var(--ui-accent-line-width) solid var(--ui-info-solid);
154
154
  }
155
155
  .toast[data-tone="success"] {
156
- border-inline-start: 3px solid var(--ui-success-solid);
156
+ border-inline-start: var(--ui-accent-line-width) solid var(--ui-success-solid);
157
157
  }
158
158
  .toast[data-tone="warning"] {
159
- border-inline-start: 3px solid var(--ui-warning-solid);
159
+ border-inline-start: var(--ui-accent-line-width) solid var(--ui-warning-solid);
160
160
  }
161
161
  .toast[data-tone="danger"] {
162
- border-inline-start: 3px solid var(--ui-danger-solid);
162
+ border-inline-start: var(--ui-accent-line-width) solid var(--ui-danger-solid);
163
163
  }
164
164
 
165
165
  /* Leaving slides on down and fades; the controller removes the toast when this ends. */
@@ -117,7 +117,7 @@
117
117
  position: relative;
118
118
  box-sizing: border-box;
119
119
  max-inline-size: var(--_ui-tooltip-max-inline-size, 18rem);
120
- border: 1px solid var(--_tooltip-line);
120
+ border: var(--ui-border-width) solid var(--_tooltip-line);
121
121
  border-radius: var(--_ui-tooltip-radius, var(--ui-overlay-radius, var(--ui-radius-md)));
122
122
  background: var(--_ui-tooltip-surface, var(--ui-overlay-surface, var(--ui-surface-elevated)));
123
123
  color: var(--_ui-tooltip-text, var(--ui-text-primary));
@@ -165,27 +165,27 @@
165
165
  position: absolute;
166
166
  z-index: 1;
167
167
  inset-inline-start: var(--ui-space-3);
168
- inset-block-end: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - 0.5px);
168
+ inset-block-end: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - var(--ui-border-width) / 2);
169
169
  inline-size: var(--_ui-tooltip-arrow-size, 0.625rem);
170
170
  block-size: var(--_ui-tooltip-arrow-size, 0.625rem);
171
171
  box-sizing: border-box;
172
172
  background: inherit;
173
173
  border: 0 solid var(--_tooltip-line);
174
- border-inline-end-width: 1px;
175
- border-block-end-width: 1px;
176
- border-end-end-radius: 1px;
174
+ border-inline-end-width: var(--ui-border-width);
175
+ border-block-end-width: var(--ui-border-width);
176
+ border-end-end-radius: var(--ui-border-width);
177
177
  transform: rotate(45deg) scaleX(1.25) scaleY(0.85);
178
178
  }
179
179
 
180
180
  :host[data-ui-actual-placement="bottom"] .surface::after {
181
- inset-block-start: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - 0.5px);
181
+ inset-block-start: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - var(--ui-border-width) / 2);
182
182
  inset-block-end: auto;
183
183
  border-inline-end-width: 0;
184
184
  border-block-end-width: 0;
185
- border-inline-start-width: 1px;
186
- border-block-start-width: 1px;
185
+ border-inline-start-width: var(--ui-border-width);
186
+ border-block-start-width: var(--ui-border-width);
187
187
  border-end-end-radius: 0;
188
- border-start-start-radius: 1px;
188
+ border-start-start-radius: var(--ui-border-width);
189
189
  }
190
190
 
191
191
  :host[data-ui-actual-align="center"] .surface::after {
@@ -206,16 +206,16 @@
206
206
 
207
207
  :host[data-ui-actual-placement="left"] .surface::after {
208
208
  inset-inline-start: auto;
209
- inset-inline-end: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - 0.5px);
210
- border-inline-end-width: 1px;
211
- border-block-start-width: 1px;
209
+ inset-inline-end: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - var(--ui-border-width) / 2);
210
+ border-inline-end-width: var(--ui-border-width);
211
+ border-block-start-width: var(--ui-border-width);
212
212
  }
213
213
 
214
214
  :host[data-ui-actual-placement="right"] .surface::after {
215
- inset-inline-start: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - 0.5px);
215
+ inset-inline-start: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - var(--ui-border-width) / 2);
216
216
  inset-inline-end: auto;
217
- border-inline-start-width: 1px;
218
- border-block-end-width: 1px;
217
+ border-inline-start-width: var(--ui-border-width);
218
+ border-block-end-width: var(--ui-border-width);
219
219
  }
220
220
 
221
221
  :host[data-ui-actual-placement="left"][data-ui-actual-align="start"] .surface::after,
@@ -51,7 +51,7 @@
51
51
  padding-inline-start: max(var(--ui-top-bar-padding-inline, var(--ui-space-4)), env(safe-area-inset-left));
52
52
  padding-inline-end: max(var(--ui-top-bar-padding-inline, var(--ui-space-4)), env(safe-area-inset-right));
53
53
  background: var(--ui-top-bar-surface, var(--ui-surface-elevated));
54
- border-block-end: 1px solid var(--ui-top-bar-border, var(--ui-border-divider));
54
+ border-block-end: var(--ui-border-width) solid var(--ui-top-bar-border, var(--ui-border-divider));
55
55
  }
56
56
 
57
57
  .leading,
@@ -157,7 +157,7 @@
157
157
  min-block-size: var(--_ui-tree-item-min-block-size, var(--_tree-row-min-height));
158
158
  min-inline-size: 0;
159
159
  font-size: var(--_ui-tree-item-font-size, var(--ui-font-size-sm));
160
- border-radius: var(--ui-radius-md);
160
+ border-radius: var(--ui-selection-radius);
161
161
  color: var(--ui-text-secondary);
162
162
  transition:
163
163
  background-color var(--ui-motion-fast) var(--ui-motion-ease),
@@ -168,12 +168,20 @@
168
168
  }
169
169
 
170
170
  .row:hover,
171
- :host-state([selected]) .row,
172
171
  .row:focus-within {
173
172
  color: var(--ui-text-primary);
174
173
  background: var(--ui-surface-muted);
175
174
  }
176
175
 
176
+ /* Selection is the same surface recipe as destination and choice rows. */
177
+ :host-state([selected]) > .row {
178
+ color: var(--ui-selection-text);
179
+ background: var(--ui-selection-surface);
180
+ }
181
+ :host-state([selected]):not([aria-disabled="true"]) > .row > .leading {
182
+ color: var(--ui-selection-text);
183
+ }
184
+
177
185
  :host-state([disabled]) .row {
178
186
  color: var(--ui-disabled-text);
179
187
  background: var(--ui-disabled-surface);
@@ -188,13 +196,13 @@
188
196
  }
189
197
 
190
198
  :host:focus-visible .row {
191
- box-shadow: 0 0 0 2px var(--ui-focus-ring);
199
+ box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
192
200
  }
193
201
 
194
202
  /* Child combinators: drop feedback belongs to this item's own row, not the rows nested in it. */
195
203
  :host[data-drop-position="inside"] > .row {
196
204
  background: var(--ui-accent-subtle);
197
- box-shadow: inset 0 0 0 1px var(--_ui-tree-drop-color, var(--ui-accent-solid));
205
+ box-shadow: inset 0 0 0 var(--ui-accent-line-width) var(--_ui-tree-drop-color, var(--ui-accent-solid));
198
206
  }
199
207
 
200
208
  .disclosure,
@@ -517,7 +525,7 @@
517
525
  z-index: 3;
518
526
  inset-inline: 1px;
519
527
  display: none;
520
- block-size: 2px;
528
+ block-size: var(--ui-accent-line-width);
521
529
  border-radius: var(--ui-radius-round);
522
530
  background: var(--_ui-tree-drop-color, var(--ui-accent-solid));
523
531
  pointer-events: none;
@@ -530,7 +538,7 @@
530
538
  inset-block-start: 50%;
531
539
  inline-size: 7px;
532
540
  block-size: 7px;
533
- border: 2px solid var(--_ui-tree-drop-color, var(--ui-accent-solid));
541
+ border: var(--ui-accent-line-width) solid var(--_ui-tree-drop-color, var(--ui-accent-solid));
534
542
  border-radius: var(--ui-radius-round);
535
543
  background: var(--ui-surface-elevated);
536
544
  transform: translateY(-50%);
@@ -545,12 +553,12 @@
545
553
 
546
554
  :host[data-drop-position="before"] > .row > .row-drop-indicator {
547
555
  display: block;
548
- inset-block-start: -1px;
556
+ inset-block-start: calc(-0.5 * var(--ui-accent-line-width));
549
557
  }
550
558
 
551
559
  :host[data-drop-position="after"] > .subtree-drop-indicator {
552
560
  display: block;
553
- inset-block-end: -1px;
561
+ inset-block-end: calc(-0.5 * var(--ui-accent-line-width));
554
562
  }
555
563
 
556
564
  .children[hidden] {
@@ -612,6 +620,17 @@
612
620
  }
613
621
  }
614
622
 
623
+ @media (forced-colors: active) {
624
+ :host:focus-visible > .row {
625
+ outline: var(--ui-focus-width) solid Highlight;
626
+ outline-offset: calc(-1 * var(--ui-focus-width));
627
+ }
628
+ :host-state([selected]):not(:focus-visible):not([aria-disabled="true"]) > .row {
629
+ outline: var(--ui-border-width) solid Highlight;
630
+ outline-offset: calc(-1 * var(--ui-border-width));
631
+ }
632
+ }
633
+
615
634
  /* A component that sets its display still honours the hidden attribute on its root. */
616
635
  :host[hidden] {
617
636
  display: none;