@scattered-light/loomiere-base-ui 0.0.0-stage → 0.1.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 (46) hide show
  1. package/README.md +26 -2
  2. package/dist/index.d.ts +107 -0
  3. package/dist/index.js +315 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/styles/components/Accordion.css +120 -0
  6. package/dist/styles/components/AlertDialog.css +8 -0
  7. package/dist/styles/components/Autocomplete.css +201 -0
  8. package/dist/styles/components/Avatar.css +134 -0
  9. package/dist/styles/components/Button.css +129 -0
  10. package/dist/styles/components/Checkbox.css +156 -0
  11. package/dist/styles/components/CheckboxGroup.css +15 -0
  12. package/dist/styles/components/Collapsible.css +115 -0
  13. package/dist/styles/components/Combobox.css +484 -0
  14. package/dist/styles/components/ContextMenu.css +168 -0
  15. package/dist/styles/components/Dialog.css +145 -0
  16. package/dist/styles/components/Drawer.css +126 -0
  17. package/dist/styles/components/Field.css +60 -0
  18. package/dist/styles/components/Fieldset.css +41 -0
  19. package/dist/styles/components/Form.css +19 -0
  20. package/dist/styles/components/Input.css +136 -0
  21. package/dist/styles/components/Menu.css +148 -0
  22. package/dist/styles/components/Menubar.css +192 -0
  23. package/dist/styles/components/Meter.css +59 -0
  24. package/dist/styles/components/NavigationMenu.css +419 -0
  25. package/dist/styles/components/NumberField.css +90 -0
  26. package/dist/styles/components/OTPField.css +62 -0
  27. package/dist/styles/components/Popover.css +161 -0
  28. package/dist/styles/components/PreviewCard.css +116 -0
  29. package/dist/styles/components/Progress.css +76 -0
  30. package/dist/styles/components/Radio.css +151 -0
  31. package/dist/styles/components/ScrollArea.css +81 -0
  32. package/dist/styles/components/Select.css +273 -0
  33. package/dist/styles/components/Separator.css +27 -0
  34. package/dist/styles/components/Slider.css +165 -0
  35. package/dist/styles/components/Switch.css +165 -0
  36. package/dist/styles/components/Tabs.css +135 -0
  37. package/dist/styles/components/Toast.css +235 -0
  38. package/dist/styles/components/Toggle.css +109 -0
  39. package/dist/styles/components/ToggleGroup.css +20 -0
  40. package/dist/styles/components/Toolbar.css +61 -0
  41. package/dist/styles/components/Tooltip.css +59 -0
  42. package/dist/styles/index.css +52 -0
  43. package/dist/styles/reset/accessibility.css +65 -0
  44. package/dist/styles/reset/reset-accessibility.css +110 -0
  45. package/dist/styles/reset/reset.css +442 -0
  46. package/package.json +50 -4
@@ -0,0 +1,115 @@
1
+ /* @scattered-light/loomiere-base-ui 0.1.0 · styles for @base-ui/react 1.9.0 */
2
+ /* Collapsible - Mojave Theme
3
+ *
4
+ * No component tokens. Hover, press, chevron and motion are the disclosure concept
5
+ * (tokens/semantic/disclosure.json). The trigger is base-subtitle text with a base-size
6
+ * chevron; the panel lines up under the trigger's text and sits on the overlay surface.
7
+ */
8
+
9
+ .Collapsible {
10
+ display: flex;
11
+ flex-direction: column;
12
+ }
13
+
14
+ .CollapsibleTrigger {
15
+ all: unset;
16
+ font-family: var(--sl-font-base-subtitle-font-family);
17
+ font-size: var(--sl-font-base-subtitle-font-size);
18
+ font-weight: var(--sl-font-base-subtitle-font-weight);
19
+ line-height: var(--sl-font-base-subtitle-line-height);
20
+ letter-spacing: var(--sl-font-base-subtitle-letter-spacing);
21
+ box-sizing: border-box;
22
+ display: flex;
23
+ align-items: center;
24
+ gap: var(--sl-space-2);
25
+ padding: var(--sl-space-1) var(--sl-space-2);
26
+ border-radius: var(--sl-radius-item);
27
+ color: var(--sl-text-primary);
28
+ cursor: pointer;
29
+ transition: background-color var(--sl-disclosure-animation-duration) var(--sl-disclosure-animation-easing);
30
+ }
31
+
32
+ @media (hover: hover) {
33
+ .CollapsibleTrigger:hover {
34
+ background-color: var(--sl-disclosure-trigger-background-hover);
35
+ }
36
+ }
37
+
38
+ .CollapsibleTrigger:active {
39
+ background-color: var(--sl-disclosure-trigger-background-active);
40
+ }
41
+
42
+ .CollapsibleTrigger:focus-visible {
43
+ outline: var(--sl-focus-outline);
44
+ outline-offset: var(--sl-focus-outline-offset);
45
+ }
46
+
47
+ /* Chevron: points right when closed and down when open. */
48
+ .CollapsibleIcon {
49
+ display: flex;
50
+ align-items: center;
51
+ justify-content: center;
52
+ width: var(--sl-icon-size-base);
53
+ height: var(--sl-icon-size-base);
54
+ font-size: var(--sl-icon-size-base);
55
+ line-height: 1;
56
+ color: var(--sl-disclosure-icon-color);
57
+ transition: transform var(--sl-disclosure-animation-duration) var(--sl-disclosure-animation-easing);
58
+ }
59
+
60
+ .CollapsibleTrigger[data-panel-open] .CollapsibleIcon {
61
+ transform: rotate(90deg);
62
+ }
63
+
64
+ .CollapsiblePanel {
65
+ display: flex;
66
+ flex-direction: column;
67
+ justify-content: end;
68
+ height: var(--collapsible-panel-height);
69
+ overflow: hidden;
70
+ transition: height var(--sl-disclosure-animation-duration) var(--sl-disclosure-animation-easing);
71
+ }
72
+
73
+ .CollapsiblePanel[hidden]:not([hidden='until-found']) {
74
+ display: none;
75
+ }
76
+
77
+ .CollapsiblePanel[data-starting-style],
78
+ .CollapsiblePanel[data-ending-style] {
79
+ height: 0;
80
+ }
81
+
82
+ /* Content starts under the trigger's text: its padding, the chevron and the gap. */
83
+ .CollapsibleContent {
84
+ font-family: var(--sl-font-base-font-family);
85
+ font-size: var(--sl-font-base-font-size);
86
+ font-weight: var(--sl-font-base-font-weight);
87
+ line-height: var(--sl-font-base-line-height);
88
+ letter-spacing: var(--sl-font-base-letter-spacing);
89
+ display: flex;
90
+ flex-direction: column;
91
+ gap: var(--sl-space-2);
92
+ margin-top: var(--sl-space-1);
93
+ padding-block: var(--sl-space-2);
94
+ padding-inline: calc(var(--sl-space-2) * 2 + var(--sl-icon-size-base)) var(--sl-space-2);
95
+ border-radius: var(--sl-radius-item);
96
+ background-color: var(--sl-surface-overlay);
97
+ color: var(--sl-disclosure-content-color);
98
+ }
99
+
100
+ .CollapsibleContent p {
101
+ margin: 0;
102
+ }
103
+
104
+ .CollapsibleContent code {
105
+ font-family: var(--sl-font-code-font-family);
106
+ font-size: var(--sl-font-code-font-size);
107
+ font-weight: var(--sl-font-code-font-weight);
108
+ line-height: var(--sl-font-code-line-height);
109
+ letter-spacing: var(--sl-font-code-letter-spacing);
110
+ display: block;
111
+ margin-top: var(--sl-space-2);
112
+ padding: var(--sl-space-2);
113
+ border-radius: var(--sl-radius-item);
114
+ background: var(--sl-surface-raised);
115
+ }
@@ -0,0 +1,484 @@
1
+ /* @scattered-light/loomiere-base-ui 0.1.0 · styles for @base-ui/react 1.9.0 */
2
+ /* Combobox - Mojave Theme
3
+ *
4
+ * No component tokens. The input is Input (Input.css); the chips box is a field; the
5
+ * clear and open buttons are icon buttons; the list is a popup of item rows with the
6
+ * shared group label, separator and empty message. Rules that adjust Input are scoped
7
+ * under a Combobox parent so they win over Input.css, which loads later.
8
+ */
9
+
10
+ .ComboboxRoot {
11
+ position: relative;
12
+ width: 100%;
13
+ }
14
+
15
+ .ComboboxContainer {
16
+ display: flex;
17
+ flex-direction: column;
18
+ gap: var(--sl-gap-control);
19
+ max-width: var(--sl-measure-narrow);
20
+ min-height: var(--sl-control-height-md);
21
+ margin-inline: auto;
22
+ }
23
+
24
+ .ComboboxLabel {
25
+ font-family: var(--sl-font-base-label-font-family);
26
+ font-size: var(--sl-font-base-label-font-size);
27
+ font-weight: var(--sl-font-base-label-font-weight);
28
+ line-height: var(--sl-font-base-label-line-height);
29
+ letter-spacing: var(--sl-font-base-label-letter-spacing);
30
+ display: flex;
31
+ flex-direction: column;
32
+ gap: var(--sl-field-label-spacing);
33
+ width: 100%;
34
+ color: var(--sl-text-primary);
35
+ }
36
+
37
+ .ComboboxInputWrapper {
38
+ position: relative;
39
+ display: flex;
40
+ align-items: center;
41
+ width: 100%;
42
+ }
43
+
44
+ /* Room for the clear and open buttons at the end of the input */
45
+ .ComboboxInputWrapper .ComboboxInput {
46
+ padding-inline-end: calc(var(--sl-control-padding-inline) + 2 * var(--sl-icon-button-size) + var(--sl-space-1));
47
+ }
48
+
49
+ /* ============================================
50
+ CHIPS (multiple selection): the chips box is the field
51
+ ============================================ */
52
+
53
+ .ComboboxChips {
54
+ box-sizing: border-box;
55
+ color: var(--sl-field-color);
56
+ background: var(--sl-field-background);
57
+ border: var(--sl-field-border-width) solid var(--sl-field-border-color);
58
+ border-radius: var(--sl-field-radius);
59
+ transition: var(--sl-field-transition);
60
+ outline: none;
61
+ display: flex;
62
+ flex-wrap: wrap;
63
+ align-items: center;
64
+ gap: var(--sl-space-0-5);
65
+ width: 100%;
66
+ padding: var(--sl-space-1) var(--sl-space-1-5);
67
+ }
68
+
69
+ .ComboboxChips:focus-within {
70
+ border-color: var(--sl-field-border-color-focus);
71
+ box-shadow: var(--sl-field-shadow-focus);
72
+ }
73
+
74
+ .ComboboxChips .ComboboxInput,
75
+ .ComboboxChips .ComboboxInput:focus {
76
+ flex: 1;
77
+ min-width: var(--sl-space-12);
78
+ height: var(--sl-space-8);
79
+ margin: 0;
80
+ padding-block: 0;
81
+ padding-inline: var(--sl-space-2) 0;
82
+ border: none;
83
+ background: transparent;
84
+ box-shadow: none;
85
+ }
86
+
87
+ .ComboboxChip {
88
+ font-family: var(--sl-font-condense-font-family);
89
+ font-size: var(--sl-font-condense-font-size);
90
+ font-weight: var(--sl-font-condense-font-weight);
91
+ line-height: var(--sl-font-condense-line-height);
92
+ letter-spacing: var(--sl-font-condense-letter-spacing);
93
+ display: flex;
94
+ align-items: center;
95
+ gap: var(--sl-space-1);
96
+ padding-block: var(--sl-space-0-5);
97
+ padding-inline: var(--sl-space-1-5) var(--sl-space-0-5);
98
+ overflow: hidden;
99
+ border-radius: var(--sl-radius-item);
100
+ background-color: var(--sl-fill-subtle);
101
+ color: var(--sl-text-primary);
102
+ outline: 0;
103
+ cursor: default;
104
+ }
105
+
106
+ .ComboboxChip:focus-within {
107
+ background-color: var(--sl-interactive-default);
108
+ color: var(--sl-text-on-primary);
109
+ }
110
+
111
+ @media (hover: hover) {
112
+ .ComboboxChip[data-highlighted] {
113
+ background-color: var(--sl-interactive-default);
114
+ color: var(--sl-text-on-primary);
115
+ }
116
+ }
117
+
118
+ .ComboboxChipRemove {
119
+ display: inline-flex;
120
+ align-items: center;
121
+ justify-content: center;
122
+ flex-shrink: 0;
123
+ line-height: 1;
124
+ padding: var(--sl-space-1);
125
+ border: none;
126
+ border-radius: var(--sl-radius-item);
127
+ background: none;
128
+ color: inherit;
129
+ cursor: pointer;
130
+ }
131
+
132
+ @media (hover: hover) {
133
+ .ComboboxChipRemove:hover {
134
+ background-color: var(--sl-fill-default);
135
+ }
136
+ }
137
+
138
+ .ComboboxChipRemoveIcon {
139
+ font-size: var(--sl-icon-size-condense);
140
+ line-height: 1;
141
+ }
142
+
143
+ /* ============================================
144
+ CLEAR AND OPEN BUTTONS
145
+ ============================================ */
146
+
147
+ .ComboboxActionButtons {
148
+ position: absolute;
149
+ top: 50%;
150
+ right: var(--sl-space-3);
151
+ display: flex;
152
+ gap: var(--sl-space-1);
153
+ transform: translateY(-50%);
154
+ }
155
+
156
+ .ComboboxClear,
157
+ .ComboboxTrigger {
158
+ display: flex;
159
+ align-items: center;
160
+ justify-content: center;
161
+ flex-shrink: 0;
162
+ width: var(--sl-icon-button-size);
163
+ height: var(--sl-icon-button-size);
164
+ padding: 0;
165
+ border: none;
166
+ border-radius: var(--sl-icon-button-radius);
167
+ background: transparent;
168
+ color: var(--sl-icon-button-color);
169
+ cursor: pointer;
170
+ outline: none;
171
+ transition: var(--sl-icon-button-transition);
172
+ position: relative;
173
+ line-height: 1;
174
+ }
175
+
176
+ .ComboboxClear:hover,
177
+ .ComboboxTrigger:hover {
178
+ background: var(--sl-icon-button-background-hover);
179
+ color: var(--sl-icon-button-color-hover);
180
+ }
181
+
182
+ .ComboboxClear:focus-visible,
183
+ .ComboboxTrigger:focus-visible {
184
+ outline: var(--sl-focus-outline);
185
+ outline-offset: var(--sl-focus-outline-offset);
186
+ box-shadow: 0 0 0 var(--sl-focus-halo-spread) var(--sl-focus-halo-color);
187
+ }
188
+
189
+ .ComboboxClearIcon,
190
+ .ComboboxTriggerIcon {
191
+ font-size: var(--sl-icon-size-magnify);
192
+ line-height: 1;
193
+ }
194
+
195
+ .ComboboxTriggerIcon {
196
+ transition: transform var(--sl-duration-normal) var(--sl-easing-default);
197
+ }
198
+
199
+ .ComboboxTrigger[aria-expanded='true'] .ComboboxTriggerIcon {
200
+ transform: rotate(180deg);
201
+ }
202
+
203
+ /* ============================================
204
+ POSITIONER, POPUP, LIST
205
+ ============================================ */
206
+
207
+ .ComboboxPositioner {
208
+ z-index: var(--sl-popup-z-index);
209
+ }
210
+
211
+ .ComboboxPopup {
212
+ box-sizing: border-box;
213
+ background: var(--sl-popup-background);
214
+ border: var(--sl-popup-border-width) solid var(--sl-popup-border-color);
215
+ border-radius: var(--sl-popup-radius);
216
+ box-shadow: var(--sl-popup-shadow);
217
+ outline: none;
218
+ width: var(--anchor-width);
219
+ margin-block-start: var(--sl-space-1);
220
+ border-radius: var(--sl-popup-radius-field);
221
+ overflow: hidden;
222
+ animation: slideDown var(--sl-popup-animation-duration) var(--sl-popup-animation-easing);
223
+ }
224
+
225
+ @keyframes slideDown {
226
+ from {
227
+ opacity: 0;
228
+ transform: translateY(calc(-1 * var(--sl-space-2)));
229
+ }
230
+ to {
231
+ opacity: 1;
232
+ transform: translateY(0);
233
+ }
234
+ }
235
+
236
+ .ComboboxList {
237
+ max-height: var(--sl-popup-list-max-height);
238
+ overflow-y: auto;
239
+ margin: 0;
240
+ padding: var(--sl-popup-padding);
241
+ list-style: none;
242
+ }
243
+
244
+ /* ============================================
245
+ ITEM
246
+ ============================================ */
247
+
248
+ .ComboboxItem {
249
+ display: flex;
250
+ align-items: center;
251
+ gap: var(--sl-item-gap);
252
+ padding-block: var(--sl-item-padding-block);
253
+ padding-inline: var(--sl-item-padding-inline);
254
+ border-radius: var(--sl-item-radius);
255
+ color: var(--sl-item-color);
256
+ cursor: default;
257
+ user-select: none;
258
+ outline: none;
259
+ transition: var(--sl-item-transition);
260
+ font-family: var(--sl-font-base-font-family);
261
+ font-size: var(--sl-font-base-font-size);
262
+ font-weight: var(--sl-font-base-font-weight);
263
+ line-height: var(--sl-font-base-line-height);
264
+ letter-spacing: var(--sl-font-base-letter-spacing);
265
+ cursor: pointer;
266
+ list-style: none;
267
+ }
268
+
269
+ .ComboboxItem:hover,
270
+ .ComboboxItem[data-highlighted] {
271
+ background: var(--sl-item-background-hover);
272
+ color: var(--sl-item-color-hover);
273
+ }
274
+
275
+ .ComboboxItem[data-selected] {
276
+ font-family: var(--sl-font-base-selected-font-family);
277
+ font-size: var(--sl-font-base-selected-font-size);
278
+ font-weight: var(--sl-font-base-selected-font-weight);
279
+ line-height: var(--sl-font-base-selected-line-height);
280
+ letter-spacing: var(--sl-font-base-selected-letter-spacing);
281
+ background: var(--sl-item-background-selected);
282
+ color: var(--sl-item-color-selected);
283
+ }
284
+
285
+ .ComboboxItem[data-disabled] {
286
+ color: var(--sl-item-color-disabled);
287
+ cursor: not-allowed;
288
+ opacity: var(--sl-item-opacity-disabled);
289
+ }
290
+
291
+ .ComboboxItemIndicator {
292
+ display: inline-flex;
293
+ align-items: center;
294
+ justify-content: center;
295
+ flex-shrink: 0;
296
+ width: var(--sl-item-indicator-size);
297
+ height: var(--sl-item-indicator-size);
298
+ color: var(--sl-item-indicator-color);
299
+ line-height: 1;
300
+ }
301
+
302
+ .ComboboxItemIndicatorIcon {
303
+ font-size: var(--sl-item-indicator-size);
304
+ line-height: 1;
305
+ }
306
+
307
+ .ComboboxItemText {
308
+ flex: 1;
309
+ }
310
+
311
+ /* ============================================
312
+ GROUP, SEPARATOR, EMPTY, STATUS
313
+ ============================================ */
314
+
315
+ .ComboboxGroupLabel {
316
+ font-family: var(--sl-font-condense-subtitle-label-font-family);
317
+ font-size: var(--sl-font-condense-subtitle-label-font-size);
318
+ font-weight: var(--sl-font-condense-subtitle-label-font-weight);
319
+ line-height: var(--sl-font-condense-subtitle-label-line-height);
320
+ letter-spacing: var(--sl-font-condense-subtitle-label-letter-spacing);
321
+ text-transform: var(--sl-font-condense-subtitle-label-text-transform);
322
+ padding-block: var(--sl-popup-group-label-padding-top) var(--sl-popup-group-label-padding-bottom);
323
+ padding-inline: var(--sl-item-padding-inline);
324
+ color: var(--sl-text-secondary);
325
+ }
326
+
327
+ .ComboboxSeparator {
328
+ height: var(--sl-stroke-default);
329
+ margin-block: var(--sl-popup-separator-spacing);
330
+ border: none;
331
+ background: var(--sl-popup-separator-color);
332
+ }
333
+
334
+ .ComboboxEmpty:not(:empty) {
335
+ font-family: var(--sl-font-condense-font-family);
336
+ font-size: var(--sl-font-condense-font-size);
337
+ font-weight: var(--sl-font-condense-font-weight);
338
+ line-height: var(--sl-font-condense-line-height);
339
+ letter-spacing: var(--sl-font-condense-letter-spacing);
340
+ padding-block: var(--sl-popup-empty-padding-block);
341
+ padding-inline: var(--sl-item-padding-inline);
342
+ color: var(--sl-text-tertiary);
343
+ text-align: center;
344
+ }
345
+
346
+ /* Status is hidden with the shared .visually-hidden class (reset-accessibility.css)
347
+ and shown while results load or when it has a message. */
348
+ .ComboboxPopup[aria-busy] .ComboboxStatus,
349
+ .ComboboxStatus:not(:empty) {
350
+ font-family: var(--sl-font-condense-font-family);
351
+ font-size: var(--sl-font-condense-font-size);
352
+ font-weight: var(--sl-font-condense-font-weight);
353
+ line-height: var(--sl-font-condense-line-height);
354
+ letter-spacing: var(--sl-font-condense-letter-spacing);
355
+ position: static;
356
+ width: auto;
357
+ height: auto;
358
+ margin: 0;
359
+ padding: var(--sl-space-3);
360
+ overflow: visible;
361
+ clip: auto;
362
+ white-space: normal;
363
+ text-align: center;
364
+ color: var(--sl-text-secondary);
365
+ }
366
+
367
+ .ComboboxPopup[aria-busy] .ComboboxStatus {
368
+ display: flex;
369
+ align-items: center;
370
+ justify-content: center;
371
+ gap: var(--sl-space-2);
372
+ }
373
+
374
+ /* ============================================
375
+ SELECT-STYLE TRIGGER (input inside the popup)
376
+ ============================================ */
377
+
378
+ .ComboboxSelectTrigger {
379
+ box-sizing: border-box;
380
+ color: var(--sl-field-color);
381
+ background: var(--sl-field-background);
382
+ border: var(--sl-field-border-width) solid var(--sl-field-border-color);
383
+ border-radius: var(--sl-field-radius);
384
+ transition: var(--sl-field-transition);
385
+ outline: none;
386
+ font-family: var(--sl-font-base-font-family);
387
+ font-size: var(--sl-font-base-font-size);
388
+ font-weight: var(--sl-font-base-font-weight);
389
+ line-height: var(--sl-font-base-line-height);
390
+ letter-spacing: var(--sl-font-base-letter-spacing);
391
+ display: flex;
392
+ align-items: center;
393
+ justify-content: space-between;
394
+ width: 100%;
395
+ height: var(--sl-control-height-md);
396
+ padding-block: var(--sl-control-padding-block);
397
+ padding-inline: var(--sl-control-padding-inline);
398
+ cursor: pointer;
399
+ }
400
+
401
+ .ComboboxSelectTrigger:hover {
402
+ border-color: var(--sl-field-border-color-hover);
403
+ }
404
+
405
+ .ComboboxSelectTrigger:focus-visible {
406
+ border-color: var(--sl-field-border-color-focus);
407
+ box-shadow: var(--sl-field-shadow-focus);
408
+ }
409
+
410
+ .ComboboxIcon {
411
+ flex-shrink: 0;
412
+ width: var(--sl-icon-size-base);
413
+ height: var(--sl-icon-size-base);
414
+ color: var(--sl-text-tertiary);
415
+ }
416
+
417
+ .ComboboxInputContainer {
418
+ padding: var(--sl-space-2);
419
+ border-bottom: var(--sl-stroke-default) solid var(--sl-popup-separator-color);
420
+ }
421
+
422
+ .ComboboxInputContainer .ComboboxInput {
423
+ padding-inline-end: var(--sl-control-padding-inline);
424
+ }
425
+
426
+ /* ============================================
427
+ ASYNC AND RICH ITEMS
428
+ ============================================ */
429
+
430
+ .ComboboxSpinner {
431
+ display: inline-block;
432
+ width: var(--sl-icon-size-condense);
433
+ height: var(--sl-icon-size-condense);
434
+ border: var(--sl-stroke-emphasis) solid var(--sl-fill-default);
435
+ border-top-color: var(--sl-interactive-default);
436
+ border-radius: var(--sl-radius-pill);
437
+ animation: spin 0.6s linear infinite;
438
+ }
439
+
440
+ @keyframes spin {
441
+ to {
442
+ transform: rotate(360deg);
443
+ }
444
+ }
445
+
446
+ .ComboboxItemTitle {
447
+ font-family: var(--sl-font-base-trigger-font-family);
448
+ font-size: var(--sl-font-base-trigger-font-size);
449
+ font-weight: var(--sl-font-base-trigger-font-weight);
450
+ line-height: var(--sl-font-base-trigger-line-height);
451
+ letter-spacing: var(--sl-font-base-trigger-letter-spacing);
452
+ color: var(--sl-text-primary);
453
+ }
454
+
455
+ .ComboboxItemSubtitle {
456
+ font-family: var(--sl-font-condense-font-family);
457
+ font-size: var(--sl-font-condense-font-size);
458
+ font-weight: var(--sl-font-condense-font-weight);
459
+ line-height: var(--sl-font-condense-line-height);
460
+ letter-spacing: var(--sl-font-condense-letter-spacing);
461
+ display: flex;
462
+ gap: var(--sl-space-2);
463
+ margin-top: var(--sl-space-0-5);
464
+ color: var(--sl-text-secondary);
465
+ }
466
+
467
+ .ComboboxItemUsername {
468
+ font-family: var(--sl-font-base-label-font-family);
469
+ font-size: var(--sl-font-base-label-font-size);
470
+ font-weight: var(--sl-font-base-label-font-weight);
471
+ line-height: var(--sl-font-base-label-line-height);
472
+ letter-spacing: var(--sl-font-base-label-letter-spacing);
473
+ color: var(--sl-interactive-default);
474
+ }
475
+
476
+ .ComboboxItemEmail {
477
+ font-family: var(--sl-font-minimize-font-family);
478
+ font-size: var(--sl-font-minimize-font-size);
479
+ font-weight: var(--sl-font-minimize-font-weight);
480
+ line-height: var(--sl-font-minimize-line-height);
481
+ letter-spacing: var(--sl-font-minimize-letter-spacing);
482
+ margin-top: var(--sl-space-0-5);
483
+ color: var(--sl-text-tertiary);
484
+ }