@adia-ai/web-components 0.6.33 → 0.6.34

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 (157) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/components/accordion/accordion.css +2 -2
  3. package/components/action-list/action-list.css +2 -2
  4. package/components/agent-artifact/agent-artifact.css +31 -31
  5. package/components/agent-feedback-bar/agent-feedback-bar.css +10 -10
  6. package/components/agent-questions/agent-questions.css +57 -57
  7. package/components/agent-reasoning/agent-reasoning.css +62 -62
  8. package/components/agent-suggestions/agent-suggestions.css +4 -4
  9. package/components/agent-trace/agent-trace.css +53 -53
  10. package/components/alert/alert.css +41 -41
  11. package/components/avatar/avatar.css +27 -27
  12. package/components/badge/badge.css +27 -27
  13. package/components/block/block.css +16 -16
  14. package/components/breadcrumb/breadcrumb.css +23 -23
  15. package/components/button/button.css +101 -91
  16. package/components/calendar-grid/calendar-grid.a2ui.json +136 -0
  17. package/components/calendar-grid/calendar-grid.css +226 -0
  18. package/components/calendar-grid/calendar-grid.d.ts +37 -0
  19. package/components/calendar-grid/calendar-grid.js +17 -0
  20. package/components/calendar-grid/calendar-grid.yaml +116 -0
  21. package/components/calendar-grid/class.js +300 -0
  22. package/components/calendar-picker/calendar-picker.css +139 -139
  23. package/components/canvas/canvas.css +12 -12
  24. package/components/card/card.css +83 -83
  25. package/components/chart/chart.css +224 -224
  26. package/components/chart-legend/chart-legend.css +26 -26
  27. package/components/check/check.css +40 -40
  28. package/components/code/code.css +125 -125
  29. package/components/col/col.css +15 -15
  30. package/components/color-picker/color-picker.css +55 -55
  31. package/components/combobox/class.js +861 -0
  32. package/components/combobox/combobox.a2ui.json +363 -0
  33. package/components/combobox/combobox.css +244 -0
  34. package/components/combobox/combobox.d.ts +113 -0
  35. package/components/combobox/combobox.examples.md +59 -0
  36. package/components/combobox/combobox.js +17 -0
  37. package/components/combobox/combobox.test.js +181 -0
  38. package/components/combobox/combobox.yaml +369 -0
  39. package/components/command/command.css +90 -90
  40. package/components/date-range-picker/class.js +775 -0
  41. package/components/date-range-picker/date-range-picker.a2ui.json +300 -0
  42. package/components/date-range-picker/date-range-picker.css +178 -0
  43. package/components/date-range-picker/date-range-picker.d.ts +82 -0
  44. package/components/date-range-picker/date-range-picker.examples.md +37 -0
  45. package/components/date-range-picker/date-range-picker.js +17 -0
  46. package/components/date-range-picker/date-range-picker.test.js +387 -0
  47. package/components/date-range-picker/date-range-picker.yaml +285 -0
  48. package/components/datetime-picker/class.js +706 -0
  49. package/components/datetime-picker/datetime-picker.a2ui.json +334 -0
  50. package/components/datetime-picker/datetime-picker.css +150 -0
  51. package/components/datetime-picker/datetime-picker.d.ts +86 -0
  52. package/components/datetime-picker/datetime-picker.examples.md +46 -0
  53. package/components/datetime-picker/datetime-picker.js +17 -0
  54. package/components/datetime-picker/datetime-picker.test.js +454 -0
  55. package/components/datetime-picker/datetime-picker.yaml +332 -0
  56. package/components/demo-toggle/demo-toggle.css +27 -27
  57. package/components/description-list/description-list.css +18 -18
  58. package/components/divider/divider.css +24 -24
  59. package/components/embed/embed.css +6 -6
  60. package/components/empty-state/empty-state.css +27 -27
  61. package/components/feed/feed.css +12 -12
  62. package/components/field/field.css +28 -28
  63. package/components/fields/fields.css +5 -5
  64. package/components/grid/grid.css +5 -5
  65. package/components/heatmap/heatmap.css +63 -63
  66. package/components/icon/icon.css +12 -12
  67. package/components/image/image.css +14 -14
  68. package/components/index.js +8 -0
  69. package/components/input/input.css +66 -66
  70. package/components/inspector/inspector.css +6 -6
  71. package/components/integration-card/class.js +410 -0
  72. package/components/integration-card/integration-card.a2ui.json +268 -0
  73. package/components/integration-card/integration-card.css +169 -0
  74. package/components/integration-card/integration-card.d.ts +63 -0
  75. package/components/integration-card/integration-card.examples.md +41 -0
  76. package/components/integration-card/integration-card.js +17 -0
  77. package/components/integration-card/integration-card.test.js +306 -0
  78. package/components/integration-card/integration-card.yaml +280 -0
  79. package/components/kbd/kbd.css +32 -32
  80. package/components/link/link.css +12 -12
  81. package/components/list/list.css +8 -8
  82. package/components/list-window/class.js +688 -0
  83. package/components/list-window/list-window.a2ui.json +277 -0
  84. package/components/list-window/list-window.css +124 -0
  85. package/components/list-window/list-window.d.ts +84 -0
  86. package/components/list-window/list-window.examples.md +73 -0
  87. package/components/list-window/list-window.js +17 -0
  88. package/components/list-window/list-window.test.js +303 -0
  89. package/components/list-window/list-window.yaml +270 -0
  90. package/components/menu/menu.css +8 -8
  91. package/components/modal/modal.css +43 -43
  92. package/components/nav/nav.css +40 -40
  93. package/components/nav-group/nav-group.css +52 -52
  94. package/components/nav-item/nav-item.css +44 -44
  95. package/components/noodles/noodles.css +31 -31
  96. package/components/option-card/option-card.css +69 -69
  97. package/components/otp-input/otp-input.css +30 -30
  98. package/components/page/page.css +18 -18
  99. package/components/pagination/pagination.css +61 -61
  100. package/components/pane/pane.css +57 -57
  101. package/components/pipeline-status/pipeline-status.css +65 -65
  102. package/components/popover/popover.css +17 -17
  103. package/components/progress/progress.css +23 -23
  104. package/components/progress-row/progress-row.css +17 -17
  105. package/components/radio/radio.css +39 -39
  106. package/components/range/range.css +55 -55
  107. package/components/rating/rating.css +28 -28
  108. package/components/richtext/richtext.css +133 -133
  109. package/components/row/row.css +19 -19
  110. package/components/search/search.css +5 -5
  111. package/components/segment/segment.css +24 -24
  112. package/components/segmented/segmented.css +25 -25
  113. package/components/select/select.css +84 -84
  114. package/components/skeleton/skeleton.css +14 -14
  115. package/components/slider/slider.css +46 -46
  116. package/components/spinner/class.js +69 -0
  117. package/components/spinner/spinner.a2ui.json +197 -0
  118. package/components/spinner/spinner.css +165 -0
  119. package/components/spinner/spinner.d.ts +26 -0
  120. package/components/spinner/spinner.examples.md +26 -0
  121. package/components/spinner/spinner.js +17 -0
  122. package/components/spinner/spinner.test.js +234 -0
  123. package/components/spinner/spinner.yaml +230 -0
  124. package/components/stack/stack.css +11 -11
  125. package/components/stat/stat.css +25 -25
  126. package/components/step-progress/step-progress.css +20 -20
  127. package/components/stepper/stepper.css +29 -29
  128. package/components/stream/stream.css +12 -12
  129. package/components/swatch/swatch.css +68 -68
  130. package/components/swiper/swiper.css +57 -57
  131. package/components/switch/switch.css +52 -52
  132. package/components/table/table.css +162 -162
  133. package/components/table-toolbar/table-toolbar.css +32 -32
  134. package/components/tabs/tabs.css +51 -51
  135. package/components/tag/tag.css +48 -48
  136. package/components/text/text.css +44 -44
  137. package/components/textarea/textarea.css +46 -46
  138. package/components/time-picker/class.js +693 -0
  139. package/components/time-picker/time-picker.a2ui.json +267 -0
  140. package/components/time-picker/time-picker.css +122 -0
  141. package/components/time-picker/time-picker.d.ts +75 -0
  142. package/components/time-picker/time-picker.examples.md +35 -0
  143. package/components/time-picker/time-picker.js +17 -0
  144. package/components/time-picker/time-picker.test.js +287 -0
  145. package/components/time-picker/time-picker.yaml +256 -0
  146. package/components/timeline/timeline.css +50 -50
  147. package/components/toast/toast.css +58 -58
  148. package/components/toggle-group/toggle-group.css +6 -6
  149. package/components/toggle-scheme/toggle-scheme.css +2 -2
  150. package/components/toolbar/toolbar.css +17 -17
  151. package/components/tooltip/tooltip.css +2 -2
  152. package/components/tree/tree.css +37 -37
  153. package/components/upload/upload.css +49 -49
  154. package/dist/web-components.min.css +1 -1
  155. package/dist/web-components.min.js +121 -83
  156. package/package.json +1 -1
  157. package/styles/components.css +8 -0
@@ -25,6 +25,7 @@ export { UITextarea } from './textarea/textarea.js';
25
25
  export { UICheck } from './check/check.js';
26
26
  export { UIRadio } from './radio/radio.js';
27
27
  export { UIOptionCard } from './option-card/option-card.js';
28
+ export { UIIntegrationCard } from './integration-card/integration-card.js';
28
29
  export { UISwitch } from './switch/switch.js';
29
30
  export { UISlider } from './slider/slider.js';
30
31
  export { UISelect } from './select/select.js';
@@ -60,6 +61,7 @@ export { UIAvatar, UIAvatarGroup } from './avatar/avatar.js';
60
61
  export { UIProgress } from './progress/progress.js';
61
62
  export { UIStepProgress } from './step-progress/step-progress.js';
62
63
  export { UISkeleton } from './skeleton/skeleton.js';
64
+ export { UISpinner } from './spinner/spinner.js';
63
65
  export { UIAlert } from './alert/alert.js';
64
66
  export { UIKbd } from './kbd/kbd.js';
65
67
  export { UITag } from './tag/tag.js';
@@ -78,6 +80,7 @@ export { UIDivider } from './divider/divider.js';
78
80
  export { UIPagination } from './pagination/pagination.js';
79
81
  export { UICode } from './code/code.js';
80
82
  export { UIList, UIListItem } from './list/list.js';
83
+ export { UIListWindow } from './list-window/list-window.js';
81
84
  export { UIMenu, UIMenuItem, UIMenuDivider } from './menu/menu.js';
82
85
  export { UIToolbar, UIToolbarGroup } from './toolbar/toolbar.js';
83
86
  export { UINav } from './nav/nav.js';
@@ -86,11 +89,16 @@ export { UINavItem } from './nav-item/nav-item.js';
86
89
  export { UIOtpInput } from './otp-input/otp-input.js';
87
90
  export { UIImage } from './image/image.js';
88
91
  export { UISearch } from './search/search.js';
92
+ export { UICombobox } from './combobox/combobox.js';
89
93
  export { UIStat } from './stat/stat.js';
90
94
  export { UIProgressRow } from './progress-row/progress-row.js';
91
95
  export { UIActionList, UIActionItem } from './action-list/action-list.js';
92
96
  export { UIEmptyState } from './empty-state/empty-state.js';
97
+ export { UICalendarGrid } from './calendar-grid/calendar-grid.js';
93
98
  export { UICalendarPicker } from './calendar-picker/calendar-picker.js';
99
+ export { UIDateRangePicker } from './date-range-picker/date-range-picker.js';
100
+ export { UITimePicker } from './time-picker/time-picker.js';
101
+ export { UIDatetimePicker } from './datetime-picker/datetime-picker.js';
94
102
  export { UIEmbed } from './embed/embed.js';
95
103
  export { UIBlock } from './block/block.js';
96
104
  export { UIText } from './text/text.js';
@@ -2,49 +2,49 @@
2
2
  inside `@scope` don't match the scope root. Plain selectors outside work.
3
3
  See docs/BROWSER-COMPAT.md §3a. */
4
4
  input-ui[variant="ghost"]:hover {
5
- --input-bg: var(--a-bg-muted);
5
+ --input-bg-default: var(--a-bg-muted);
6
6
  }
7
7
  input-ui:not([disabled]) [slot="field"]:hover {
8
- background: var(--input-bg-hover);
9
- border-color: var(--input-border-hover);
10
- color: var(--input-fg-hover);
8
+ background: var(--input-bg-hover, var(--input-bg-hover-default));
9
+ border-color: var(--input-border-hover, var(--input-border-hover-default));
10
+ color: var(--input-fg-hover, var(--input-fg-hover-default));
11
11
  }
12
12
  input-ui:not([disabled]) [slot="field"]:hover [slot="prefix"],
13
13
  input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
14
- color: var(--input-affix-fg-hover);
14
+ color: var(--input-affix-fg-hover, var(--input-affix-fg-hover-default));
15
15
  }
16
16
 
17
17
  @scope (input-ui) {
18
18
  :where(:scope) {
19
19
  /* ── Tokens (wired to --a-ui-*) ── */
20
- --input-bg: var(--a-ui-bg);
21
- --input-fg: var(--a-ui-text);
22
- --input-border: var(--a-ui-border);
23
- --input-border-hover: var(--a-ui-border-hover);
24
- --input-focus-ring: var(--a-focus-ring);
25
- --input-focus-ring-invalid: var(--a-focus-ring-invalid);
26
- --input-radius: var(--a-radius);
27
- --input-height: var(--a-size);
28
- --input-px: var(--a-ui-px);
29
- --input-font-size: var(--a-ui-size);
30
- --input-placeholder-fg: var(--a-ui-text-placeholder);
31
- --input-affix-fg: var(--a-ui-text-placeholder);
32
- --input-field-gap: var(--a-space-1);
33
- --input-label-min-width: 8ch;
20
+ --input-bg-default: var(--a-ui-bg);
21
+ --input-fg-default: var(--a-ui-text);
22
+ --input-border-default: var(--a-ui-border);
23
+ --input-border-hover-default: var(--a-ui-border-hover);
24
+ --input-focus-ring-default: var(--a-focus-ring);
25
+ --input-focus-ring-invalid-default: var(--a-focus-ring-invalid);
26
+ --input-radius-default: var(--a-radius);
27
+ --input-height-default: var(--a-size);
28
+ --input-px-default: var(--a-ui-px);
29
+ --input-font-size-default: var(--a-ui-size);
30
+ --input-placeholder-fg-default: var(--a-ui-text-placeholder);
31
+ --input-affix-fg-default: var(--a-ui-text-placeholder);
32
+ --input-field-gap-default: var(--a-space-1);
33
+ --input-label-min-width-default: 8ch;
34
34
 
35
35
  /* ── Transitions ── */
36
- --input-duration: var(--a-duration-fast);
37
- --input-easing: var(--a-easing);
36
+ --input-duration-default: var(--a-duration-fast);
37
+ --input-easing-default: var(--a-easing);
38
38
 
39
39
  /* ── State: hover/focus ── */
40
- --input-bg-hover: var(--a-ui-bg-hover);
41
- --input-fg-hover: var(--a-ui-text-hover);
42
- --input-affix-fg-hover: var(--a-ui-text-subtle);
43
- --input-fg-focus: var(--a-ui-text-active);
40
+ --input-bg-hover-default: var(--a-ui-bg-hover);
41
+ --input-fg-hover-default: var(--a-ui-text-hover);
42
+ --input-affix-fg-hover-default: var(--a-ui-text-subtle);
43
+ --input-fg-focus-default: var(--a-ui-text-active);
44
44
 
45
45
  /* ── State: disabled ── */
46
- --input-bg-disabled: var(--a-ui-bg-disabled);
47
- --input-fg-disabled: var(--a-ui-text-disabled);
46
+ --input-bg-disabled-default: var(--a-ui-bg-disabled);
47
+ --input-fg-disabled-default: var(--a-ui-text-disabled);
48
48
  text-align: start; /* §text-align-reset — blocks inheritance from centered ancestors */
49
49
  }
50
50
 
@@ -65,9 +65,9 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
65
65
  label wider than the floor grows past it. */
66
66
  [slot="label"] {
67
67
  flex-shrink: 0;
68
- min-width: var(--input-label-min-width);
69
- color: var(--input-affix-fg);
70
- font-size: var(--input-font-size);
68
+ min-width: var(--input-label-min-width, var(--input-label-min-width-default));
69
+ color: var(--input-affix-fg, var(--input-affix-fg-default));
70
+ font-size: var(--input-font-size, var(--input-font-size-default));
71
71
  user-select: none;
72
72
  pointer-events: none;
73
73
  }
@@ -76,15 +76,15 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
76
76
  [slot="field"] {
77
77
  display: flex;
78
78
  align-items: center;
79
- gap: var(--input-field-gap);
80
- min-height: var(--input-height);
81
- padding: 0 var(--input-px);
82
- border: 1px solid var(--input-border);
83
- border-radius: var(--input-radius);
84
- background: var(--input-bg);
85
- color: var(--input-fg);
79
+ gap: var(--input-field-gap, var(--input-field-gap-default));
80
+ min-height: var(--input-height, var(--input-height-default));
81
+ padding: 0 var(--input-px, var(--input-px-default));
82
+ border: 1px solid var(--input-border, var(--input-border-default));
83
+ border-radius: var(--input-radius, var(--input-radius-default));
84
+ background: var(--input-bg, var(--input-bg-default));
85
+ color: var(--input-fg, var(--input-fg-default));
86
86
  font: inherit;
87
- font-size: var(--input-font-size);
87
+ font-size: var(--input-font-size, var(--input-font-size-default));
88
88
  /* line-height: 1.4 (not 1) so descender-bearing glyphs (g, j, p, q, y)
89
89
  have room inside [slot="text"]'s line box. With line-height: 1 the
90
90
  line box equals the em-square and descenders extend below it; the
@@ -96,22 +96,22 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
96
96
  /* Cover every property the hover / focus / invalid states change so
97
97
  the field doesn't half-snap (border slides, but bg/colour/ring snap). */
98
98
  transition:
99
- background var(--input-duration) var(--input-easing),
100
- border-color var(--input-duration) var(--input-easing),
101
- color var(--input-duration) var(--input-easing),
102
- box-shadow var(--input-duration) var(--input-easing);
99
+ background var(--input-duration, var(--input-duration-default)) var(--input-easing, var(--input-easing-default)),
100
+ border-color var(--input-duration, var(--input-duration-default)) var(--input-easing, var(--input-easing-default)),
101
+ color var(--input-duration, var(--input-duration-default)) var(--input-easing, var(--input-easing-default)),
102
+ box-shadow var(--input-duration, var(--input-duration-default)) var(--input-easing, var(--input-easing-default));
103
103
  }
104
104
  /* hover rules moved outside @scope — see Safari 17.x bug note at top. */
105
105
  :scope:not([disabled]):focus-within [slot="field"] {
106
106
  /* Canonical ring — consumes the L3 --input-focus-ring token
107
107
  which aliases --a-focus-ring. Border stays stable; the ring
108
108
  is the focus affordance (WCAG 2.2 SC 2.4.11/2.4.13). */
109
- box-shadow: var(--input-focus-ring);
110
- color: var(--input-fg-focus);
109
+ box-shadow: var(--input-focus-ring, var(--input-focus-ring-default));
110
+ color: var(--input-fg-focus, var(--input-fg-focus-default));
111
111
  }
112
112
  :scope[aria-invalid="true"]:not([disabled]):focus-within [slot="field"],
113
113
  :scope[error]:not([disabled]):focus-within [slot="field"] {
114
- box-shadow: var(--input-focus-ring-invalid);
114
+ box-shadow: var(--input-focus-ring-invalid, var(--input-focus-ring-invalid-default));
115
115
  }
116
116
 
117
117
  /* Text (contenteditable span) */
@@ -135,13 +135,13 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
135
135
  }
136
136
 
137
137
  input[slot="text"]::placeholder {
138
- color: var(--input-placeholder-fg);
138
+ color: var(--input-placeholder-fg, var(--input-placeholder-fg-default));
139
139
  }
140
140
 
141
141
  /* Placeholder (contenteditable only) */
142
142
  span[slot="text"][data-empty]::before {
143
143
  content: attr(data-placeholder);
144
- color: var(--input-placeholder-fg);
144
+ color: var(--input-placeholder-fg, var(--input-placeholder-fg-default));
145
145
  pointer-events: none;
146
146
  }
147
147
 
@@ -157,7 +157,7 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
157
157
  font-weight: var(--a-weight-medium, 500);
158
158
  /* Reserve space for the absolutely-positioned controls column so the
159
159
  value never collides with the stepper buttons. */
160
- padding-inline-end: var(--input-controls-width, calc(var(--input-height) * 0.7));
160
+ padding-inline-end: var(--input-controls-width, calc(var(--input-height, var(--input-height-default)) * 0.7));
161
161
  }
162
162
 
163
163
  /* Suffix sits flush after the value in number mode (no auto margin so
@@ -168,7 +168,7 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
168
168
  suffix never collides with the stepper buttons. The padding moves
169
169
  from `[slot="text"]` to `[slot="suffix"]` when a suffix is present
170
170
  — only one element needs the reservation since they're adjacent. */
171
- margin-inline-end: var(--input-controls-width, calc(var(--input-height) * 0.7));
171
+ margin-inline-end: var(--input-controls-width, calc(var(--input-height, var(--input-height-default)) * 0.7));
172
172
  }
173
173
  [data-number]:has([slot="suffix"]) [slot="text"] {
174
174
  padding-inline-end: 0;
@@ -184,8 +184,8 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
184
184
  inset-inline-end: 0;
185
185
  display: grid;
186
186
  grid-template-rows: 1fr 1fr;
187
- border-inline-start: 1px solid var(--input-border);
188
- width: var(--input-controls-width, calc(var(--input-height) * 0.7));
187
+ border-inline-start: 1px solid var(--input-border, var(--input-border-default));
188
+ width: var(--input-controls-width, calc(var(--input-height, var(--input-height-default)) * 0.7));
189
189
  user-select: none;
190
190
  overflow: hidden;
191
191
  }
@@ -201,7 +201,7 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
201
201
  --button-height: 0;
202
202
  --button-radius: 0;
203
203
  --button-bg: transparent;
204
- --button-fg: var(--input-affix-fg);
204
+ --button-fg: var(--input-affix-fg, var(--input-affix-fg-default));
205
205
  --button-px: 0;
206
206
  min-width: 0;
207
207
  min-height: 0;
@@ -217,7 +217,7 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
217
217
  any value inherited from its parent button-ui. Tying it to
218
218
  --input-height keeps the chevron proportional across sm/md/lg. */
219
219
  [data-number] [slot="controls"] icon-ui {
220
- --icon-size: calc(var(--input-height) * 0.4);
220
+ --icon-size: calc(var(--input-height, var(--input-height-default)) * 0.4);
221
221
  }
222
222
  [data-number] [slot="controls"] button-ui:hover {
223
223
  --button-bg: var(--a-ui-bg-hover);
@@ -234,11 +234,11 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
234
234
  inline-start border on the column + the bottom-border on the upper
235
235
  button. */
236
236
  [data-number] [slot="controls"] button-ui:first-child {
237
- border-bottom: 1px solid var(--input-border);
238
- border-start-end-radius: calc(var(--input-radius) - 1px);
237
+ border-bottom: 1px solid var(--input-border, var(--input-border-default));
238
+ border-start-end-radius: calc(var(--input-radius, var(--input-radius-default)) - 1px);
239
239
  }
240
240
  [data-number] [slot="controls"] button-ui:last-child {
241
- border-end-end-radius: calc(var(--input-radius) - 1px);
241
+ border-end-end-radius: calc(var(--input-radius, var(--input-radius-default)) - 1px);
242
242
  }
243
243
 
244
244
  /* Raw mode strips the chrome — also strip the controls column's
@@ -265,8 +265,8 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
265
265
  display: inline-flex;
266
266
  align-items: center;
267
267
  flex-shrink: 0;
268
- color: var(--input-affix-fg);
269
- font-size: var(--input-font-size);
268
+ color: var(--input-affix-fg, var(--input-affix-fg-default));
269
+ font-size: var(--input-font-size, var(--input-font-size-default));
270
270
  line-height: 1;
271
271
  user-select: none;
272
272
  pointer-events: none;
@@ -312,10 +312,10 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
312
312
  instead so the button visually matches the input's intrinsic size. */
313
313
  [slot="field"] > [slot="leading"] button-ui,
314
314
  [slot="field"] > [slot="trailing"] button-ui {
315
- --button-height: calc(var(--input-height) - 4px);
315
+ --button-height: calc(var(--input-height, var(--input-height-default)) - 4px);
316
316
  --button-bg: transparent;
317
317
  --button-border: transparent;
318
- --button-fg: var(--input-affix-fg);
318
+ --button-fg: var(--input-affix-fg, var(--input-affix-fg-default));
319
319
  --button-px: var(--a-space-1);
320
320
  }
321
321
 
@@ -330,13 +330,13 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
330
330
  absolutely positioned at inset-inline-end: 0; trailing sits in the
331
331
  flex flow.) Same pattern as [slot="suffix"] in number mode. */
332
332
  [data-number]:has(> [slot="trailing"]) > [slot="trailing"] {
333
- margin-inline-end: var(--input-controls-width, calc(var(--input-height) * 0.7));
333
+ margin-inline-end: var(--input-controls-width, calc(var(--input-height, var(--input-height-default)) * 0.7));
334
334
  }
335
335
 
336
336
  /* Disabled */
337
337
  :scope[disabled] [slot="field"] {
338
- background: var(--input-bg-disabled);
339
- color: var(--input-fg-disabled);
338
+ background: var(--input-bg-disabled, var(--input-bg-disabled-default));
339
+ color: var(--input-fg-disabled, var(--input-fg-disabled-default));
340
340
  cursor: not-allowed;
341
341
  }
342
342
 
@@ -353,9 +353,9 @@ input-ui:not([disabled]) [slot="field"]:hover [slot="suffix"] {
353
353
 
354
354
  /* Ghost variant */
355
355
  :scope[variant="ghost"] {
356
- --input-bg: transparent;
357
- --input-border: transparent;
358
- --input-border-hover: transparent;
356
+ --input-bg-default: transparent;
357
+ --input-border-default: transparent;
358
+ --input-border-hover-default: transparent;
359
359
  }
360
360
  /* :scope[variant="ghost"]:hover moved outside @scope — see Safari
361
361
  17.x bug note at top of file. */
@@ -1,16 +1,16 @@
1
1
  @scope (inspector-ui) {
2
2
  :where(:scope) {
3
- --inspector-pane-font-size: var(--a-ui-tiny);
4
- --inspector-border: 1px solid var(--a-border-subtle);
5
- --inspector-radius: var(--a-radius);
3
+ --inspector-pane-font-size-default: var(--a-ui-tiny);
4
+ --inspector-border-default: 1px solid var(--a-border-subtle);
5
+ --inspector-radius-default: var(--a-radius);
6
6
  }
7
7
 
8
8
  :scope {
9
9
  display: flex;
10
10
  flex-direction: column;
11
11
  overflow: hidden;
12
- border: var(--inspector-border);
13
- border-radius: var(--inspector-radius);
12
+ border: var(--inspector-border, var(--inspector-border-default));
13
+ border-radius: var(--inspector-radius, var(--inspector-radius-default));
14
14
  min-width: 0;
15
15
  }
16
16
 
@@ -26,6 +26,6 @@
26
26
  :scope tab-ui > code-ui {
27
27
  display: block;
28
28
  overflow: auto;
29
- font-size: var(--inspector-pane-font-size);
29
+ font-size: var(--inspector-pane-font-size, var(--inspector-pane-font-size-default));
30
30
  }
31
31
  }