@agorapulse/ui-theme 20.1.18 → 20.1.19

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 (31) hide show
  1. package/agorapulse-ui-theme-20.1.19.tgz +0 -0
  2. package/assets/style/_table.scss +5 -5
  3. package/assets/style/css-ui/action-dropdown.css +172 -0
  4. package/assets/style/css-ui/avatar.css +199 -0
  5. package/assets/style/css-ui/badge.css +30 -0
  6. package/assets/style/css-ui/checkbox.css +170 -0
  7. package/assets/style/css-ui/counter.css +73 -0
  8. package/assets/style/css-ui/datepicker.css +294 -0
  9. package/assets/style/css-ui/dot-stepper.css +67 -0
  10. package/assets/style/css-ui/index.css +27 -0
  11. package/assets/style/css-ui/infobox.css +163 -0
  12. package/assets/style/css-ui/label.css +67 -0
  13. package/assets/style/css-ui/link.css +92 -0
  14. package/assets/style/css-ui/loader.css +247 -0
  15. package/assets/style/css-ui/pagination.css +161 -0
  16. package/assets/style/css-ui/select.css +664 -0
  17. package/assets/style/css-ui/snackbar.css +166 -0
  18. package/assets/style/css-ui/status.css +87 -0
  19. package/assets/style/css-ui/stepper.css +123 -0
  20. package/assets/style/css-ui/table.css +305 -0
  21. package/assets/style/css-ui/tabs.css +188 -0
  22. package/assets/style/css-ui/tag.css +171 -0
  23. package/assets/style/css-ui/textarea.css +158 -0
  24. package/assets/style/css-ui/tooltip.css +228 -0
  25. package/package.json +1 -1
  26. package/agorapulse-ui-theme-20.1.18.tgz +0 -0
  27. package/assets/style/lovable/tailwind.config.ts +0 -431
  28. /package/assets/style/{lovable/lovable-button.css → css-ui/button.css} +0 -0
  29. /package/assets/style/{lovable/lovable-input.css → css-ui/input.css} +0 -0
  30. /package/assets/style/{lovable/lovable-radio.css → css-ui/radio.css} +0 -0
  31. /package/assets/style/{lovable/lovable-toggle.css → css-ui/toggle.css} +0 -0
@@ -0,0 +1,664 @@
1
+ /* Agorapulse Select Styles */
2
+
3
+ /* ============================================
4
+ SELECT CONTAINER (using details/summary)
5
+ ============================================ */
6
+
7
+ .ap-select {
8
+ position: relative;
9
+ display: inline-block;
10
+ width: 100%;
11
+ }
12
+
13
+ /* Remove default details marker */
14
+ .ap-select summary {
15
+ list-style: none;
16
+ }
17
+
18
+ .ap-select summary::-webkit-details-marker {
19
+ display: none;
20
+ }
21
+
22
+ .ap-select summary::marker {
23
+ display: none;
24
+ }
25
+
26
+ /* ============================================
27
+ SELECT TRIGGER / INPUT
28
+ ============================================ */
29
+
30
+ .ap-select-trigger {
31
+ display: flex;
32
+ align-items: center;
33
+ gap: var(--ref-spacing-xxs);
34
+ width: 100%;
35
+ height: var(--comp-input-height);
36
+ padding: 0 var(--ref-spacing-xs);
37
+ border: 1px solid var(--ref-color-grey-20);
38
+ border-radius: var(--ref-border-radius-sm);
39
+ background-color: var(--ref-color-white);
40
+ font-family: var(--sys-text-style-body-font-family);
41
+ font-size: var(--sys-text-style-body-size);
42
+ font-weight: var(--sys-text-style-body-weight);
43
+ line-height: var(--sys-text-style-body-line-height);
44
+ color: var(--ref-color-grey-100);
45
+ cursor: pointer;
46
+ box-sizing: border-box;
47
+ transition: border-color 0.15s ease;
48
+ }
49
+
50
+ .ap-select-trigger:hover:not(.disabled) {
51
+ border-color: var(--ref-color-grey-40);
52
+ }
53
+
54
+ .ap-select-trigger:focus {
55
+ outline: none;
56
+ border-color: var(--ref-color-electric-blue-100);
57
+ }
58
+
59
+ /* Open state using details[open] */
60
+ .ap-select[open] .ap-select-trigger,
61
+ .ap-select-trigger.open {
62
+ outline: none;
63
+ border-color: var(--ref-color-electric-blue-100);
64
+ }
65
+
66
+ .ap-select-trigger.disabled {
67
+ background-color: var(--ref-color-grey-20);
68
+ border-color: var(--ref-color-grey-20);
69
+ color: var(--ref-color-grey-60);
70
+ cursor: default;
71
+ pointer-events: none;
72
+ }
73
+
74
+ /* Validation states */
75
+ .ap-select-trigger.valid {
76
+ border-color: var(--comp-input-border-success-color);
77
+ }
78
+
79
+ .ap-select-trigger.invalid {
80
+ border-color: var(--comp-input-border-error-color);
81
+ }
82
+
83
+ /* Inline label within trigger */
84
+ .ap-select-inline-label {
85
+ padding-right: var(--ref-spacing-xxs);
86
+ border-right: 1px solid var(--comp-select-inline-separator-color);
87
+ color: var(--comp-select-inline-label-text-color);
88
+ font-family: var(--comp-select-inline-label-text-font-family);
89
+ font-size: var(--comp-select-inline-label-text-size);
90
+ font-weight: var(--comp-select-inline-label-text-font-weight);
91
+ line-height: var(--comp-select-inline-label-text-line-height);
92
+ white-space: nowrap;
93
+ }
94
+
95
+ /* Inline icon */
96
+ .ap-select-inline-icon {
97
+ height: var(--comp-input-icon-size);
98
+ width: var(--comp-input-icon-size);
99
+ min-height: var(--comp-input-icon-size);
100
+ min-width: var(--comp-input-icon-size);
101
+ color: var(--comp-input-icon-color);
102
+ flex-shrink: 0;
103
+ }
104
+
105
+ /* Selected value display */
106
+ .ap-select-value {
107
+ flex: 1;
108
+ overflow: hidden;
109
+ white-space: nowrap;
110
+ text-overflow: ellipsis;
111
+ }
112
+
113
+ .ap-select-placeholder {
114
+ color: var(--ref-color-grey-60);
115
+ }
116
+
117
+ /* Avatar in trigger (for selected value with avatar) */
118
+ .ap-select-avatar {
119
+ width: 20px;
120
+ height: 20px;
121
+ min-width: 20px;
122
+ border-radius: 100%;
123
+ object-fit: cover;
124
+ flex-shrink: 0;
125
+ }
126
+
127
+ /* Arrow icon */
128
+ .ap-select-arrow {
129
+ width: 16px;
130
+ height: 16px;
131
+ min-width: 16px;
132
+ flex-shrink: 0;
133
+ color: var(--ref-color-grey-60);
134
+ transition:
135
+ transform 0.15s ease,
136
+ color 0.15s ease;
137
+ }
138
+
139
+ /* Arrow rotation when open */
140
+ .ap-select[open] .ap-select-arrow,
141
+ .ap-select-trigger.open .ap-select-arrow {
142
+ transform: rotate(180deg);
143
+ color: var(--ref-color-electric-blue-100);
144
+ }
145
+
146
+ /* Clear button */
147
+ .ap-select-clear {
148
+ display: flex;
149
+ align-items: center;
150
+ justify-content: center;
151
+ width: 16px;
152
+ height: 16px;
153
+ border: none;
154
+ background: transparent;
155
+ color: var(--ref-color-grey-60);
156
+ cursor: pointer;
157
+ padding: 0;
158
+ flex-shrink: 0;
159
+ }
160
+
161
+ .ap-select-clear:hover {
162
+ color: var(--ref-color-grey-80);
163
+ }
164
+
165
+ /* ============================================
166
+ DROPDOWN PANEL
167
+ ============================================ */
168
+
169
+ .ap-select-dropdown {
170
+ position: absolute;
171
+ top: 100%;
172
+ left: 0;
173
+ right: 0;
174
+ z-index: 1000;
175
+ margin-top: var(--ref-spacing-xxxs);
176
+ padding: var(--comp-select-padding-vertical) 0;
177
+ background-color: var(--comp-select-background-color);
178
+ border-radius: var(--ref-border-radius-sm);
179
+ box-shadow: var(--comp-select-shadow);
180
+ overflow: hidden;
181
+ }
182
+
183
+ /* Dropdown scrollable area */
184
+ .ap-select-options {
185
+ max-height: 280px;
186
+ overflow-y: auto;
187
+ }
188
+
189
+ /* ============================================
190
+ SEARCH BAR
191
+ ============================================ */
192
+
193
+ .ap-select-search {
194
+ display: flex;
195
+ align-items: center;
196
+ gap: var(--ref-spacing-xxs);
197
+ padding: 0 var(--comp-select-search-bar-padding-horizontal) var(--comp-select-search-bar-padding-bottom);
198
+ margin-bottom: var(--comp-select-search-bar-margin-bottom);
199
+ border-bottom: 1px solid var(--comp-select-search-bar-border-bottom-color);
200
+ }
201
+
202
+ .ap-select-search-input {
203
+ flex: 1;
204
+ border: none;
205
+ outline: none;
206
+ background: transparent;
207
+ font-family: var(--sys-text-style-body-font-family);
208
+ font-size: var(--sys-text-style-body-size);
209
+ color: var(--ref-color-grey-100);
210
+ padding: var(--ref-spacing-xxs) 0;
211
+ }
212
+
213
+ .ap-select-search-input::placeholder {
214
+ color: var(--ref-color-grey-60);
215
+ }
216
+
217
+ .ap-select-search-icon {
218
+ width: var(--comp-input-icon-size);
219
+ height: var(--comp-input-icon-size);
220
+ color: var(--comp-input-icon-color);
221
+ flex-shrink: 0;
222
+ }
223
+
224
+ /* ============================================
225
+ SELECT ALL CHECKBOX
226
+ ============================================ */
227
+
228
+ .ap-select-all {
229
+ display: flex;
230
+ align-items: center;
231
+ gap: var(--ref-spacing-xxs);
232
+ padding: 0 var(--ref-spacing-sm);
233
+ height: var(--comp-select-one-line-height);
234
+ }
235
+
236
+ /* ============================================
237
+ OPTION - ONE LINE
238
+ ============================================ */
239
+
240
+ .ap-select-option {
241
+ display: flex;
242
+ align-items: center;
243
+ gap: var(--ref-spacing-xxs);
244
+ min-height: var(--comp-select-one-line-height);
245
+ padding: var(--ref-spacing-xxs) var(--comp-select-one-line-padding-horizontal);
246
+ background-color: var(--comp-select-one-line-background-color);
247
+ font-family: var(--comp-select-one-line-text-font-family);
248
+ font-size: var(--comp-select-one-line-text-size);
249
+ font-weight: var(--comp-select-one-line-text-font-weight);
250
+ line-height: var(--comp-select-one-line-text-line-height);
251
+ color: var(--comp-select-one-line-text-color);
252
+ cursor: pointer;
253
+ box-sizing: border-box;
254
+ transition: background-color 0.1s ease;
255
+ }
256
+
257
+ .ap-select-option:hover:not(.disabled) {
258
+ background-color: var(--ref-color-electric-blue-10);
259
+ }
260
+
261
+ .ap-select-option:active:not(.disabled) {
262
+ background-color: var(--ref-color-electric-blue-20);
263
+ }
264
+
265
+ /* Selected state (single select) */
266
+ .ap-select-option.selected {
267
+ background-color: var(--ref-color-electric-blue-10);
268
+ color: var(--ref-color-electric-blue-150);
269
+ font-family: var(--comp-select-one-line-selected-text-font-family);
270
+ font-size: var(--comp-select-one-line-selected-text-size);
271
+ font-weight: var(--comp-select-one-line-selected-text-font-weight);
272
+ line-height: var(--comp-select-one-line-selected-text-line-height);
273
+ }
274
+
275
+ .ap-select-option.selected .ap-select-option-icon {
276
+ color: var(--ref-color-electric-blue-150);
277
+ }
278
+
279
+ /* Marked/focused state (keyboard navigation) */
280
+ .ap-select-option.marked:not(.selected) {
281
+ background-color: var(--ref-color-electric-blue-10);
282
+ }
283
+
284
+ /* Disabled state */
285
+ .ap-select-option.disabled {
286
+ color: var(--ref-color-grey-40);
287
+ cursor: default;
288
+ position: relative;
289
+ }
290
+
291
+ .ap-select-option.disabled::after {
292
+ content: '';
293
+ position: absolute;
294
+ inset: 0;
295
+ background-color: var(--ref-color-white);
296
+ opacity: 0.6;
297
+ pointer-events: none;
298
+ }
299
+
300
+ /* Option icon (avatar placeholder or symbol) */
301
+ .ap-select-option-icon {
302
+ width: 16px;
303
+ height: 16px;
304
+ min-width: 16px;
305
+ flex-shrink: 0;
306
+ color: var(--comp-select-one-line-text-color);
307
+ }
308
+
309
+ /* Option avatar */
310
+ .ap-select-option-avatar {
311
+ width: 24px;
312
+ height: 24px;
313
+ min-width: 24px;
314
+ border-radius: 100%;
315
+ object-fit: cover;
316
+ flex-shrink: 0;
317
+ }
318
+
319
+ .ap-select-option-avatar.square {
320
+ border-radius: var(--ref-border-radius-xs);
321
+ }
322
+
323
+ /* Option text */
324
+ .ap-select-option-text {
325
+ flex: 1;
326
+ overflow: hidden;
327
+ white-space: nowrap;
328
+ text-overflow: ellipsis;
329
+ }
330
+
331
+ /* Option badge */
332
+ .ap-select-option-badge {
333
+ padding: 2px 6px;
334
+ border-radius: var(--ref-border-radius-xs);
335
+ background-color: var(--ref-color-grey-10);
336
+ font-size: var(--ref-font-size-xs);
337
+ line-height: var(--ref-font-line-height-xs);
338
+ color: var(--ref-color-grey-80);
339
+ flex-shrink: 0;
340
+ }
341
+
342
+ /* Checkbox for multiple select */
343
+ .ap-select-option-checkbox {
344
+ width: 16px;
345
+ height: 16px;
346
+ min-width: 16px;
347
+ flex-shrink: 0;
348
+ }
349
+
350
+ /* Selected checkmark icon */
351
+ .ap-select-option-check {
352
+ width: 16px;
353
+ height: 16px;
354
+ min-width: 16px;
355
+ color: var(--ref-color-electric-blue-150);
356
+ flex-shrink: 0;
357
+ margin-left: auto;
358
+ }
359
+
360
+ /* ============================================
361
+ OPTION - TWO LINES
362
+ ============================================ */
363
+
364
+ .ap-select-option.two-lines {
365
+ flex-direction: row;
366
+ align-items: flex-start;
367
+ min-height: var(--comp-select-two-line-height);
368
+ padding: var(--comp-select-two-line-padding-vertical) var(--comp-select-one-line-padding-horizontal);
369
+ }
370
+
371
+ .ap-select-option-content {
372
+ display: flex;
373
+ flex-direction: column;
374
+ flex: 1;
375
+ min-width: 0;
376
+ gap: 2px;
377
+ }
378
+
379
+ .ap-select-option-title {
380
+ font-family: var(--comp-select-two-line-title-text-font-family);
381
+ font-size: var(--comp-select-two-line-title-text-size);
382
+ font-weight: var(--comp-select-two-line-title-text-font-weight);
383
+ line-height: var(--comp-select-two-line-title-text-line-height);
384
+ color: var(--comp-select-two-line-title-text-color);
385
+ overflow: hidden;
386
+ white-space: nowrap;
387
+ text-overflow: ellipsis;
388
+ }
389
+
390
+ .ap-select-option-caption {
391
+ font-family: var(--comp-select-two-line-caption-text-font-family);
392
+ font-size: var(--comp-select-two-line-caption-text-size);
393
+ font-weight: var(--comp-select-two-line-caption-text-font-weight);
394
+ line-height: var(--comp-select-two-line-caption-text-line-height);
395
+ color: var(--comp-select-two-line-caption-text-color);
396
+ overflow: hidden;
397
+ white-space: nowrap;
398
+ text-overflow: ellipsis;
399
+ }
400
+
401
+ /* Two-line selected state */
402
+ .ap-select-option.two-lines.selected .ap-select-option-title {
403
+ color: var(--ref-color-electric-blue-150);
404
+ }
405
+
406
+ .ap-select-option.two-lines.selected .ap-select-option-caption {
407
+ color: var(--ref-color-electric-blue-100);
408
+ }
409
+
410
+ /* ============================================
411
+ OPTION GROUP
412
+ ============================================ */
413
+
414
+ .ap-select-group {
415
+ display: flex;
416
+ align-items: center;
417
+ gap: var(--ref-spacing-xxs);
418
+ padding: var(--comp-select-group-padding-vertical) var(--comp-select-group-padding-horizontal);
419
+ background-color: var(--comp-select-group-background-color);
420
+ border-top: 1px solid var(--comp-select-group-border-top-color);
421
+ min-height: 32px;
422
+ box-sizing: border-box;
423
+ }
424
+
425
+ .ap-select-group:first-child {
426
+ border-top: none;
427
+ }
428
+
429
+ .ap-select-group-label {
430
+ font-family: var(--comp-select-group-text-font-family);
431
+ font-size: var(--comp-select-group-text-size);
432
+ font-weight: var(--comp-select-group-text-font-weight);
433
+ line-height: var(--comp-select-group-text-line-height);
434
+ color: var(--comp-select-group-text-color);
435
+ }
436
+
437
+ /* ============================================
438
+ DIVIDER
439
+ ============================================ */
440
+
441
+ .ap-select-divider {
442
+ width: 100%;
443
+ height: 1px;
444
+ background-color: var(--comp-select-separator-color);
445
+ margin: var(--ref-spacing-xxs) 0;
446
+ }
447
+
448
+ /* ============================================
449
+ NOT FOUND / EMPTY STATE
450
+ ============================================ */
451
+
452
+ .ap-select-not-found {
453
+ display: flex;
454
+ align-items: center;
455
+ padding: var(--ref-spacing-sm);
456
+ color: var(--ref-color-grey-80);
457
+ font-style: italic;
458
+ font-family: var(--sys-text-style-body-font-family);
459
+ font-size: var(--sys-text-style-body-size);
460
+ }
461
+
462
+ /* ============================================
463
+ LOADING STATE
464
+ ============================================ */
465
+
466
+ .ap-select-loading {
467
+ display: flex;
468
+ justify-content: center;
469
+ align-items: center;
470
+ flex-direction: column;
471
+ gap: var(--ref-spacing-xxs);
472
+ min-height: 90px;
473
+ padding: var(--ref-spacing-md) var(--ref-spacing-sm) var(--ref-spacing-sm);
474
+ }
475
+
476
+ .ap-select-loading-text {
477
+ font-size: var(--ref-font-size-sm);
478
+ line-height: var(--ref-font-line-height-sm);
479
+ font-style: italic;
480
+ font-weight: var(--ref-font-weight-regular);
481
+ color: var(--ref-color-grey-80);
482
+ }
483
+
484
+ /* ============================================
485
+ FOOTER / CREATE NEW
486
+ ============================================ */
487
+
488
+ .ap-select-footer {
489
+ padding: 0;
490
+ margin-top: var(--ref-spacing-xxxs);
491
+ border-top: 1px solid var(--ref-color-grey-10);
492
+ }
493
+
494
+ .ap-select-create {
495
+ display: flex;
496
+ align-items: center;
497
+ gap: var(--ref-spacing-xxxs);
498
+ width: 100%;
499
+ padding: var(--comp-select-search-bar-bottom-link-margin-top) var(--comp-select-search-bar-bottom-link-padding-horizontal)
500
+ var(--comp-select-search-bar-bottom-link-padding-bottom);
501
+ border: none;
502
+ background-color: transparent;
503
+ color: var(--ref-color-electric-blue-150);
504
+ font-weight: var(--ref-font-weight-bold);
505
+ font-family: var(--ref-font-family);
506
+ font-size: var(--ref-font-size-sm);
507
+ line-height: var(--ref-font-line-height-sm);
508
+ cursor: pointer;
509
+ text-align: left;
510
+ }
511
+
512
+ .ap-select-create:hover {
513
+ color: var(--ref-color-electric-blue-100);
514
+ }
515
+
516
+ .ap-select-create:active {
517
+ color: var(--ref-color-electric-blue-150);
518
+ }
519
+
520
+ .ap-select-create-icon {
521
+ width: 16px;
522
+ height: 16px;
523
+ flex-shrink: 0;
524
+ }
525
+
526
+ /* ============================================
527
+ FEATURE LOCKED OPTION
528
+ ============================================ */
529
+
530
+ .ap-select-option.feature-locked {
531
+ cursor: pointer;
532
+ }
533
+
534
+ .ap-select-option.feature-locked:hover {
535
+ background-color: var(--ref-color-purple-10);
536
+ }
537
+
538
+ .ap-select-option.feature-locked:active {
539
+ background-color: var(--ref-color-purple-20);
540
+ }
541
+
542
+ .ap-select-locked-icon {
543
+ width: 16px;
544
+ height: 16px;
545
+ color: var(--ref-color-purple-100);
546
+ flex-shrink: 0;
547
+ }
548
+
549
+ /* ============================================
550
+ MULTIPLE SELECT - SELECTED LABELS/TAGS
551
+ ============================================ */
552
+
553
+ .ap-select-labels {
554
+ display: flex;
555
+ align-items: center;
556
+ gap: var(--ref-spacing-xxxs);
557
+ flex: 1;
558
+ overflow: hidden;
559
+ }
560
+
561
+ /* Context-specific overrides for labels within select trigger */
562
+ .ap-select-trigger .ap-label {
563
+ height: 20px;
564
+ padding: 0 var(--ref-spacing-xxs);
565
+ }
566
+
567
+ .ap-select-trigger .ap-label.removable {
568
+ padding: 0 2px 0 var(--ref-spacing-xxs);
569
+ }
570
+
571
+ .ap-select-trigger .ap-label-content {
572
+ font-size: var(--ref-font-size-sm);
573
+ line-height: var(--ref-font-line-height-sm);
574
+ }
575
+
576
+ .ap-select-trigger .ap-label-close {
577
+ width: 16px;
578
+ height: 16px;
579
+ min-width: 16px;
580
+ }
581
+
582
+ /* Context-specific overrides for tags within select trigger */
583
+ .ap-select-trigger .ap-tag {
584
+ height: 20px;
585
+ padding: 0 var(--ref-spacing-xxs);
586
+ }
587
+
588
+ .ap-select-trigger .ap-tag.clearable {
589
+ padding: 0 2px 0 var(--ref-spacing-xxs);
590
+ }
591
+
592
+ .ap-select-trigger .ap-tag-text {
593
+ font-size: var(--ref-font-size-sm);
594
+ line-height: var(--ref-font-line-height-sm);
595
+ }
596
+
597
+ .ap-select-trigger .ap-tag-button {
598
+ width: 16px;
599
+ height: 16px;
600
+ min-width: 16px;
601
+ max-width: 16px;
602
+ max-height: 16px;
603
+ }
604
+
605
+ .ap-select-label-count {
606
+ font-size: var(--ref-font-size-sm);
607
+ color: var(--ref-color-grey-80);
608
+ white-space: nowrap;
609
+ }
610
+
611
+ /* ============================================
612
+ NATIVE SELECT (FALLBACK)
613
+ ============================================ */
614
+
615
+ .ap-native-select {
616
+ width: 100%;
617
+ height: var(--comp-input-height);
618
+ padding: 0 var(--ref-spacing-lg) 0 var(--ref-spacing-xs);
619
+ border: 1px solid var(--ref-color-grey-20);
620
+ border-radius: var(--ref-border-radius-sm);
621
+ background-color: var(--ref-color-white);
622
+ font-family: var(--sys-text-style-body-font-family);
623
+ font-size: var(--sys-text-style-body-size);
624
+ font-weight: var(--sys-text-style-body-weight);
625
+ line-height: var(--sys-text-style-body-line-height);
626
+ color: var(--ref-color-grey-100);
627
+ cursor: pointer;
628
+ appearance: none;
629
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6L8 10L12 6' stroke='%235D6A82' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
630
+ background-repeat: no-repeat;
631
+ background-position: right var(--ref-spacing-xs) center;
632
+ }
633
+
634
+ .ap-native-select:hover:not(:disabled) {
635
+ border-color: var(--ref-color-grey-40);
636
+ }
637
+
638
+ .ap-native-select:focus {
639
+ outline: none;
640
+ border-color: var(--ref-color-electric-blue-100);
641
+ }
642
+
643
+ .ap-native-select:disabled {
644
+ background-color: var(--ref-color-grey-20);
645
+ border-color: var(--ref-color-grey-20);
646
+ color: var(--ref-color-grey-60);
647
+ cursor: default;
648
+ }
649
+
650
+ .ap-native-select.valid {
651
+ border-color: var(--comp-input-border-success-color);
652
+ }
653
+
654
+ .ap-native-select.invalid {
655
+ border-color: var(--comp-input-border-error-color);
656
+ }
657
+
658
+ .ap-native-select option {
659
+ padding: var(--ref-spacing-xxs);
660
+ }
661
+
662
+ .ap-native-select optgroup {
663
+ font-weight: var(--comp-select-group-text-font-weight);
664
+ }