@navikt/ds-css 7.3.1 → 7.4.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 (71) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/darkside/accordion.darkside.css +198 -0
  3. package/darkside/action-menu.darkside.css +227 -0
  4. package/darkside/alert.darkside.css +113 -0
  5. package/darkside/baseline/theme.darkside.css +4 -2
  6. package/darkside/button.darkside.css +318 -4
  7. package/darkside/chat.darkside.css +120 -0
  8. package/darkside/chips.darkside.css +234 -0
  9. package/darkside/copybutton.darkside.css +226 -0
  10. package/darkside/date.darkside.css +344 -0
  11. package/darkside/dropdown.darkside.css +91 -0
  12. package/darkside/expansioncard.darkside.css +235 -0
  13. package/darkside/form/combobox.darkside.css +441 -0
  14. package/darkside/form/confirmation-panel.darkside.css +53 -0
  15. package/darkside/form/error-summary.darkside.css +55 -0
  16. package/darkside/form/fieldset.darkside.css +51 -0
  17. package/darkside/form/file-upload.darkside.css +230 -0
  18. package/darkside/form/form-progress.darkside.css +52 -0
  19. package/darkside/form/form-summary.darkside.css +78 -0
  20. package/darkside/form/form.darkside.css +61 -0
  21. package/darkside/form/index.css +16 -0
  22. package/darkside/form/radio-checkbox.darkside.css +356 -0
  23. package/darkside/form/search.darkside.css +228 -0
  24. package/darkside/form/select.darkside.css +115 -0
  25. package/darkside/form/switch.darkside.css +269 -0
  26. package/darkside/form/text-field.darkside.css +112 -0
  27. package/darkside/form/textarea.darkside.css +144 -0
  28. package/darkside/guide-panel.darkside.css +96 -0
  29. package/darkside/help-text.darkside.css +85 -0
  30. package/darkside/index copy.css +37 -0
  31. package/darkside/index.css +36 -1
  32. package/darkside/internalheader.darkside.css +105 -0
  33. package/darkside/link-panel.darkside.css +47 -0
  34. package/darkside/link.darkside.css +79 -0
  35. package/darkside/list.darkside.css +85 -0
  36. package/darkside/loader.darkside.css +119 -0
  37. package/darkside/modal.darkside.css +209 -0
  38. package/darkside/pagination.darkside.css +73 -0
  39. package/darkside/panel.darkside.css +10 -0
  40. package/darkside/popover.darkside.css +84 -0
  41. package/darkside/primitives/base.darkside.css +809 -0
  42. package/darkside/primitives/bleed.darkside.css +103 -0
  43. package/darkside/primitives/box.darkside.css +66 -0
  44. package/darkside/primitives/hgrid.darkside.css +80 -0
  45. package/darkside/primitives/index.css +36 -0
  46. package/darkside/primitives/page.darkside.css +63 -0
  47. package/darkside/primitives/responsive.darkside.css +59 -0
  48. package/darkside/primitives/stack.darkside.css +155 -0
  49. package/darkside/progress-bar.darkside.css +108 -0
  50. package/darkside/read-more.darkside.css +91 -0
  51. package/darkside/skeleton.darkside.css +67 -0
  52. package/darkside/stepper.darkside.css +308 -0
  53. package/darkside/table.darkside.css +286 -0
  54. package/darkside/tabs.darkside.css +154 -0
  55. package/darkside/tag.darkside.css +194 -0
  56. package/darkside/timeline.darkside.css +449 -0
  57. package/darkside/toggle-group.darkside.css +181 -0
  58. package/darkside/tooltip.darkside.css +81 -0
  59. package/darkside/typography.darkside.css +253 -0
  60. package/dist/component/form.css +4 -1
  61. package/dist/component/form.min.css +1 -1
  62. package/dist/component/index.css +6 -2
  63. package/dist/component/index.min.css +2 -2
  64. package/dist/components.css +6 -2
  65. package/dist/components.min.css +2 -2
  66. package/dist/global/tokens.css +1 -1
  67. package/dist/global/tokens.min.css +1 -1
  68. package/dist/index.css +6 -2
  69. package/dist/index.min.css +2 -2
  70. package/form/combobox.css +5 -1
  71. package/package.json +2 -2
@@ -0,0 +1,356 @@
1
+ .navds-checkbox,
2
+ .navds-radio {
3
+ position: relative;
4
+ width: fit-content;
5
+ }
6
+
7
+ .navds-checkbox__input,
8
+ .navds-radio__input {
9
+ position: absolute;
10
+ width: 3rem;
11
+ height: 3rem;
12
+ top: 0;
13
+ left: -0.75rem;
14
+ z-index: 1;
15
+ opacity: 0;
16
+ cursor: pointer;
17
+ }
18
+
19
+ .navds-checkbox__label,
20
+ .navds-radio__label {
21
+ padding: var(--a-spacing-3) 0;
22
+ cursor: pointer;
23
+ display: flex;
24
+ gap: var(--a-spacing-2);
25
+
26
+ --__ac-radio-checkbox-readonly-bg: var(--a-surface-subtle);
27
+ --__ac-radio-checkbox-readonly-border: var(--a-border-subtle);
28
+ }
29
+
30
+ .navds-checkbox__label::before,
31
+ .navds-radio__label::before {
32
+ content: "";
33
+ background-color: var(--ac-radio-checkbox-bg, var(--a-surface-default));
34
+ border-radius: var(--a-border-radius-small);
35
+ flex-shrink: 0;
36
+ box-shadow: 0 0 0 2px var(--ac-radio-checkbox-border, var(--a-border-default));
37
+ width: calc(1.5rem - 0.25rem);
38
+ height: calc(1.5rem - 0.25rem);
39
+ margin-block: 2px;
40
+ margin-inline: 2px;
41
+ }
42
+
43
+ .navds-radio__label::before {
44
+ border-radius: var(--a-border-radius-full);
45
+ }
46
+
47
+ .navds-checkbox__content,
48
+ .navds-radio__content {
49
+ display: flex;
50
+ flex-direction: column;
51
+ gap: 0.125rem;
52
+ }
53
+
54
+ .navds-checkbox--small > .navds-checkbox__input,
55
+ .navds-radio--small > .navds-radio__input {
56
+ width: 2rem;
57
+ height: 2rem;
58
+ top: 0;
59
+ left: -0.375rem;
60
+ }
61
+
62
+ .navds-checkbox--small > .navds-checkbox__label,
63
+ .navds-radio--small > .navds-radio__label {
64
+ padding: var(--a-spacing-1-alt) 0;
65
+ }
66
+
67
+ .navds-checkbox--small > .navds-checkbox__label::before,
68
+ .navds-radio--small > .navds-radio__label::before {
69
+ width: calc(1.25rem - 0.25rem);
70
+ height: calc(1.25rem - 0.25rem);
71
+ }
72
+
73
+ .navds-checkbox__input:focus + .navds-checkbox__label::before,
74
+ .navds-radio__input:focus + .navds-radio__label::before {
75
+ outline: 2px solid transparent;
76
+ outline-offset: 2px;
77
+ box-shadow:
78
+ 0 0 0 2px var(--ac-radio-checkbox-border, var(--a-border-default)),
79
+ 0 0 0 2px var(--ac-radio-checkbox-bg, var(--a-surface-default)),
80
+ 0 0 0 4px var(--a-border-focus);
81
+ }
82
+
83
+ .navds-checkbox__input:hover:focus + .navds-checkbox__label::before,
84
+ .navds-radio__input:hover:focus + .navds-radio__label::before {
85
+ box-shadow:
86
+ 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-hover)),
87
+ 0 0 0 4px var(--a-border-focus);
88
+ }
89
+
90
+ .navds-checkbox__input:indeterminate + .navds-checkbox__label::after {
91
+ content: "";
92
+ position: absolute;
93
+ top: 50%;
94
+ transform: translate(var(--a-spacing-1-alt), -50%);
95
+ background-color: var(--ac-radio-checkbox-bg, var(--a-surface-default));
96
+ width: 0.75rem;
97
+ height: 0.25rem;
98
+ border-radius: 1px;
99
+ flex-shrink: 0;
100
+ }
101
+
102
+ .navds-checkbox--small .navds-checkbox__input:indeterminate + .navds-checkbox__label::after {
103
+ transform: translate(0.25rem, -50%);
104
+ }
105
+
106
+ .navds-checkbox__input:where(:checked, :indeterminate) + .navds-checkbox__label::before {
107
+ box-shadow: 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-selected));
108
+ background-color: var(--ac-radio-checkbox-action, var(--a-surface-action-selected));
109
+ }
110
+
111
+ .navds-checkbox__input:where(:checked, :indeterminate):hover + .navds-checkbox__label::before {
112
+ box-shadow: 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-selected-hover));
113
+ background-color: var(--ac-radio-checkbox-action, var(--a-surface-action-selected-hover));
114
+ }
115
+
116
+ .navds-checkbox__input:where(:not(:checked)) + .navds-checkbox__label > .navds-checkbox__icon {
117
+ display: none;
118
+ }
119
+
120
+ .navds-checkbox__input:checked + .navds-checkbox__label > .navds-checkbox__icon {
121
+ color: var(--ac-radio-checkbox-bg, var(--a-surface-default));
122
+ position: absolute;
123
+ height: 1.5rem;
124
+ transform: translate(var(--a-spacing-1-alt));
125
+ pointer-events: none;
126
+
127
+ /* Fixed edcase where when using in shadow-dom, svg will not center */
128
+ display: flex;
129
+ align-items: center;
130
+ }
131
+
132
+ .navds-checkbox--small .navds-checkbox__input:checked + .navds-checkbox__label > .navds-checkbox__icon {
133
+ transform: translate(0.25rem, -10%);
134
+ }
135
+
136
+ /* Tailwind sets all svg to block */
137
+ .navds-checkbox__icon > svg {
138
+ display: inline;
139
+ vertical-align: initial;
140
+ }
141
+
142
+ .navds-checkbox--small > .navds-checkbox__input:checked + .navds-checkbox__label::before {
143
+ background-position: 0.25rem center;
144
+ }
145
+
146
+ .navds-checkbox__input:indeterminate:focus + .navds-checkbox__label::before,
147
+ .navds-checkbox__input:checked:focus + .navds-checkbox__label::before {
148
+ box-shadow:
149
+ 0 0 0 1px var(--ac-radio-checkbox-action, var(--a-surface-action-selected)),
150
+ 0 0 0 2px var(--ac-radio-checkbox-bg, var(--a-surface-default)),
151
+ 0 0 0 4px var(--a-border-focus);
152
+ }
153
+
154
+ .navds-radio__input:checked + .navds-radio__label::before {
155
+ box-shadow:
156
+ 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-selected)),
157
+ inset 0 0 0 2px var(--ac-radio-checkbox-bg, var(--a-surface-default));
158
+ background-color: var(--ac-radio-checkbox-action, var(--a-surface-action-selected));
159
+ }
160
+
161
+ .navds-radio__input:checked:focus + .navds-radio__label::before {
162
+ box-shadow:
163
+ 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-selected)),
164
+ inset 0 0 0 2px var(--ac-radio-checkbox-bg, var(--a-surface-default)),
165
+ 0 0 0 4px var(--a-border-focus);
166
+ }
167
+
168
+ .navds-checkbox__input:hover:not(:disabled) + .navds-checkbox__label,
169
+ .navds-radio__input:hover:not(:disabled) + .navds-radio__label {
170
+ color: var(--ac-radio-checkbox-action, var(--a-surface-action-hover));
171
+ }
172
+
173
+ .navds-checkbox__input:hover:not(:disabled, :checked, :indeterminate, :focus) + .navds-checkbox__label::before,
174
+ .navds-radio__input:hover:not(:disabled, :checked, :focus) + .navds-radio__label::before {
175
+ box-shadow: 0 0 0 2px var(--ac-radio-checkbox-action, var(--a-surface-action-hover));
176
+ }
177
+
178
+ .navds-checkbox__input:hover:not(:disabled, :checked, :indeterminate) + .navds-checkbox__label::before,
179
+ .navds-radio__input:hover:not(:disabled, :checked) + .navds-radio__label::before {
180
+ background-color: var(--ac-radio-checkbox-action-hover-bg, var(--a-surface-action-subtle));
181
+ }
182
+
183
+ .navds-checkbox--error > .navds-checkbox__input:not(:hover, :disabled, :checked, :indeterminate) + .navds-checkbox__label::before,
184
+ .navds-radio--error > .navds-radio__input:not(:hover, :disabled, :checked) + .navds-radio__label::before {
185
+ box-shadow: 0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger));
186
+ }
187
+
188
+ .navds-checkbox--error
189
+ > .navds-checkbox__input:focus:not(:hover, :disabled, :checked, :indeterminate)
190
+ + .navds-checkbox__label::before,
191
+ .navds-radio--error > .navds-radio__input:focus:not(:hover, :disabled, :checked) + .navds-radio__label::before {
192
+ box-shadow:
193
+ 0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger)),
194
+ 0 0 0 4px var(--a-border-focus);
195
+ }
196
+
197
+ .navds-checkbox--error
198
+ > .navds-checkbox__input:hover:not(:disabled, :checked, :indeterminate, :focus)
199
+ + .navds-checkbox__label::before,
200
+ .navds-radio--error > .navds-radio__input:hover:not(:disabled, :checked, :focus) + .navds-radio__label::before {
201
+ background-color: var(--ac-radio-checkbox-error-hover-bg, var(--a-surface-danger-subtle));
202
+ box-shadow: 0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger));
203
+ }
204
+
205
+ .navds-checkbox--error
206
+ > .navds-checkbox__input:focus:hover:not(:disabled, :checked, :indeterminate)
207
+ + .navds-checkbox__label::before,
208
+ .navds-radio--error > .navds-radio__input:focus:hover:not(:disabled, :checked) + .navds-radio__label::before {
209
+ background-color: var(--ac-radio-checkbox-error-hover-bg, var(--a-surface-danger-subtle));
210
+ box-shadow:
211
+ 0 0 0 2px var(--ac-radio-checkbox-error-border, var(--a-border-danger)),
212
+ 0 0 0 4px var(--a-border-focus);
213
+ }
214
+
215
+ .navds-checkbox--disabled,
216
+ .navds-radio--disabled {
217
+ opacity: 0.3;
218
+ }
219
+
220
+ .navds-checkbox--disabled > .navds-checkbox__input,
221
+ .navds-checkbox--disabled > .navds-checkbox__label,
222
+ .navds-radio--disabled > .navds-radio__input,
223
+ .navds-radio--disabled > .navds-radio__label {
224
+ cursor: not-allowed;
225
+ }
226
+
227
+ /* Readonly */
228
+ .navds-checkbox--readonly > :where(.navds-checkbox__input, .navds-checkbox__label),
229
+ .navds-radio--readonly > :where(.navds-radio__input, .navds-radio__label) {
230
+ cursor: default;
231
+ }
232
+
233
+ .navds-checkbox--readonly .navds-checkbox__label-text {
234
+ display: inline-flex;
235
+ }
236
+
237
+ .navds-checkbox--readonly > .navds-checkbox__input:hover + .navds-checkbox__label,
238
+ .navds-radio--readonly > .navds-radio__input:hover + .navds-radio__label {
239
+ color: var(--a-text-default);
240
+ }
241
+
242
+ .navds-checkbox--readonly > .navds-checkbox__input:not(:disabled, :checked, :indeterminate) + .navds-checkbox__label::before,
243
+ .navds-checkbox--readonly > .navds-checkbox__input:hover:not(:checked, :indeterminate, :focus) + .navds-checkbox__label::before,
244
+ .navds-radio--readonly > .navds-radio__input:not(:disabled, :checked) + .navds-radio__label::before,
245
+ .navds-radio--readonly > .navds-radio__input:hover:not(:checked, :focus) + .navds-radio__label::before {
246
+ background-color: var(--__ac-radio-checkbox-readonly-bg);
247
+ box-shadow: 0 0 0 2px var(--__ac-radio-checkbox-readonly-border);
248
+ }
249
+
250
+ .navds-checkbox--readonly > .navds-checkbox__input:focus + .navds-checkbox__label::before,
251
+ .navds-radio--readonly > .navds-radio__input:focus + .navds-radio__label::before {
252
+ --__ac-radio-checkbox-readonly-border: var(--a-border-subtle), var(--a-shadow-focus);
253
+ }
254
+
255
+ .navds-checkbox--readonly > .navds-checkbox__input:checked + .navds-checkbox__label::before {
256
+ background-color: var(--__ac-radio-checkbox-readonly-bg);
257
+ box-shadow: 0 0 0 2px var(--__ac-radio-checkbox-readonly-border);
258
+ }
259
+
260
+ .navds-checkbox--readonly > .navds-checkbox__input:checked + .navds-checkbox__label > .navds-checkbox__icon {
261
+ color: var(--a-icon-subtle);
262
+ }
263
+
264
+ .navds-radio--readonly > .navds-radio__input:checked + .navds-radio__label::before {
265
+ background-color: var(--a-icon-subtle);
266
+ box-shadow:
267
+ 0 0 0 2px var(--__ac-radio-checkbox-readonly-border),
268
+ inset 0 0 0 2px var(--__ac-radio-checkbox-readonly-bg);
269
+ }
270
+
271
+ .navds-checkbox--readonly > .navds-checkbox__input:indeterminate + .navds-checkbox__label::before {
272
+ box-shadow: 0 0 0 2px var(--__ac-radio-checkbox-readonly-border);
273
+ background-color: var(--__ac-radio-checkbox-readonly-bg);
274
+ }
275
+
276
+ .navds-checkbox--readonly > .navds-checkbox__input:indeterminate + .navds-checkbox__label::after {
277
+ background-color: var(--a-icon-subtle);
278
+ }
279
+
280
+ @media (forced-colors: active) {
281
+ .navds-checkbox__input:focus + .navds-checkbox__label::before,
282
+ .navds-radio__input:focus + .navds-radio__label::before {
283
+ outline-color: highlight;
284
+ }
285
+
286
+ .navds-checkbox,
287
+ .navds-radio {
288
+ --__ac-radio-checkbox-high-contrast-bg: field;
289
+ --__ac-radio-checkbox-high-contrast-text: fieldtext;
290
+ --__ac-radio-checkbox-high-contrast-highlight: highlight;
291
+ }
292
+
293
+ .navds-checkbox__label::before,
294
+ .navds-radio__label::before {
295
+ border: 1px solid var(--__ac-radio-checkbox-high-contrast-text);
296
+ background-color: var(--__ac-radio-checkbox-high-contrast-bg);
297
+ }
298
+
299
+ .navds-checkbox__input:checked + .navds-checkbox__label > .navds-checkbox__icon {
300
+ color: var(--__ac-radio-checkbox-high-contrast-text);
301
+ }
302
+
303
+ .navds-checkbox__input:indeterminate + .navds-checkbox__label::after {
304
+ background-color: var(--__ac-radio-checkbox-high-contrast-text);
305
+ }
306
+
307
+ .navds-radio__input:checked + .navds-radio__label::before {
308
+ border: 1px solid var(--__ac-radio-checkbox-high-contrast-text);
309
+ outline: 3px solid var(--__ac-radio-checkbox-high-contrast-bg);
310
+ outline-offset: -4px;
311
+ background-color: var(--__ac-radio-checkbox-high-contrast-text);
312
+ }
313
+
314
+ .navds-radio__input:checked:focus + .navds-radio__label::before {
315
+ border: 1px solid var(--__ac-radio-checkbox-high-contrast-bg);
316
+ outline: 2px solid highlight;
317
+ outline-offset: 2px;
318
+ }
319
+
320
+ :not(.navds-checkbox--readonly) > .navds-checkbox__input:hover:not(:disabled) + .navds-checkbox__label,
321
+ :not(.navds-radio--readonly) > .navds-radio__input:hover:not(:disabled) + .navds-radio__label {
322
+ color: highlight;
323
+ }
324
+
325
+ .navds-checkbox__input:focus + .navds-checkbox__label::before {
326
+ outline: 2px solid var(--__ac-radio-checkbox-high-contrast-highlight);
327
+ }
328
+
329
+ .navds-checkbox--readonly > .navds-checkbox__input:checked + .navds-checkbox__label::before {
330
+ border: 1px solid var(--__ac-radio-checkbox-high-contrast-text);
331
+ background-color: var(--__ac-radio-checkbox-high-contrast-bg);
332
+ }
333
+
334
+ .navds-checkbox--readonly > .navds-checkbox__input:indeterminate + .navds-checkbox__label::after {
335
+ background-color: var(--__ac-radio-checkbox-high-contrast-text);
336
+ }
337
+
338
+ .navds-radio--readonly > .navds-radio__input:checked + .navds-radio__label::before {
339
+ border: 1px solid var(--__ac-radio-checkbox-high-contrast-text);
340
+ outline: 3px solid var(--__ac-radio-checkbox-high-contrast-bg);
341
+ outline-offset: -4px;
342
+ background-color: var(--__ac-radio-checkbox-high-contrast-text);
343
+ }
344
+
345
+ .navds-checkbox--disabled,
346
+ .navds-radio--disabled {
347
+ opacity: 1;
348
+
349
+ --__ac-radio-checkbox-high-contrast-bg: field;
350
+ --__ac-radio-checkbox-high-contrast-text: graytext;
351
+ }
352
+
353
+ :is(.navds-checkbox--disabled, .navds-radio--disabled) :is(.navds-checkbox__label, .navds-radio__label) {
354
+ color: graytext;
355
+ }
356
+ }
@@ -0,0 +1,228 @@
1
+ [data-theme="dark"] {
2
+ --__ac-search-button-border: var(--a-border-on-inverted);
3
+ --__ac-search-button-border-hover: var(--a-blue-200);
4
+ --__ac-search-clear-icon: var(--a-white);
5
+ --__ac-search-clear-icon-hover: var(--a-blue-200);
6
+ --__ac-search-error-border: var(--a-red-300);
7
+ }
8
+
9
+ [data-theme="light"] {
10
+ --__ac-search-button-border: initial;
11
+ --__ac-search-button-border-hover: initial;
12
+ --__ac-search-clear-icon: initial;
13
+ --__ac-search-clear-icon-hover: initial;
14
+ --__ac-search-error-border: initial;
15
+ }
16
+
17
+ .navds-search {
18
+ display: flex;
19
+ flex-direction: column;
20
+ width: 100%;
21
+ }
22
+
23
+ .navds-search__wrapper-inner {
24
+ position: relative;
25
+ width: 100%;
26
+ }
27
+
28
+ .navds-search--with-size :where(.navds-search__wrapper-inner) {
29
+ width: inherit;
30
+ }
31
+
32
+ .navds-search__wrapper {
33
+ display: inline-flex;
34
+ align-items: center;
35
+ }
36
+
37
+ .navds-search__input {
38
+ padding-right: var(--a-spacing-10);
39
+ }
40
+
41
+ .navds-form-field--small .navds-search__input {
42
+ padding-right: var(--a-spacing-8);
43
+ }
44
+
45
+ .navds-search__input--simple {
46
+ padding-left: var(--a-spacing-11);
47
+ }
48
+
49
+ .navds-form-field--small .navds-search__input--simple {
50
+ padding-left: var(--a-spacing-7);
51
+ }
52
+
53
+ .navds-search__input:not(.navds-search__input--simple) {
54
+ border-top-right-radius: 0;
55
+ border-bottom-right-radius: 0;
56
+ }
57
+
58
+ .navds-search__search-icon {
59
+ position: absolute;
60
+ left: var(--a-spacing-3);
61
+ top: 50%;
62
+ transform: translateY(-50%);
63
+ pointer-events: none;
64
+ font-size: 1.5rem;
65
+ }
66
+
67
+ .navds-form-field--small .navds-search__search-icon {
68
+ left: var(--a-spacing-2);
69
+ font-size: 1rem;
70
+ }
71
+
72
+ .navds-search__button-clear {
73
+ position: absolute;
74
+ right: 0.75rem;
75
+ border-radius: var(--a-border-radius-medium);
76
+ color: var(--ac-search-clear-icon, var(--__ac-search-clear-icon, var(--a-text-default)));
77
+ height: 32px;
78
+ width: 32px;
79
+ top: 50%;
80
+ transform: translateY(-50%);
81
+ display: flex;
82
+ justify-content: center;
83
+ align-items: center;
84
+ cursor: pointer;
85
+ background: none;
86
+ border: none;
87
+ font-size: 1.25rem;
88
+ padding: 0;
89
+ }
90
+
91
+ .navds-form-field--small .navds-search__button-clear {
92
+ right: 0.5rem;
93
+ height: 24px;
94
+ width: 24px;
95
+ }
96
+
97
+ .navds-search__button-clear:hover {
98
+ color: var(--ac-search-clear-icon-hover, var(--__ac-search-clear-icon-hover, var(--a-text-action-hover)));
99
+ }
100
+
101
+ .navds-search__button-clear:focus-visible {
102
+ outline: 2px solid transparent;
103
+ box-shadow: var(--a-shadow-focus);
104
+ }
105
+
106
+ @supports not selector(:focus-visible) {
107
+ .navds-search__button-clear:focus {
108
+ outline: 2px solid transparent;
109
+ box-shadow: var(--a-shadow-focus);
110
+ }
111
+ }
112
+
113
+ .navds-search__button-search {
114
+ flex-shrink: 0;
115
+ min-width: 4rem;
116
+ min-height: 2rem;
117
+ border-radius: 0;
118
+ border-top-right-radius: var(--a-border-radius-medium);
119
+ border-bottom-right-radius: var(--a-border-radius-medium);
120
+ }
121
+
122
+ .navds-form-field--small .navds-search__button-search svg {
123
+ font-size: 1rem;
124
+ }
125
+
126
+ .navds-form-field--small .navds-search__button-search {
127
+ min-width: 2.5rem;
128
+ }
129
+
130
+ .navds-search__button-search.navds-button--secondary {
131
+ box-shadow:
132
+ -1px 0 0 0 var(--ac-search-button-border, var(--__ac-search-button-border, var(--a-border-default))) inset,
133
+ 0 1px 0 0 var(--ac-search-button-border, var(--__ac-search-button-border, var(--a-border-default))) inset,
134
+ 0 -1px 0 0 var(--ac-search-button-border, var(--__ac-search-button-border, var(--a-border-default))) inset;
135
+ }
136
+
137
+ .navds-search__button-search.navds-button--secondary:where(:hover, :active) {
138
+ box-shadow:
139
+ -1px 0 0 0 var(--ac-search-button-border-hover, var(--__ac-search-button-border-hover, var(--a-border-action-hover))) inset,
140
+ 0 1px 0 0 var(--ac-search-button-border-hover, var(--__ac-search-button-border-hover, var(--a-border-action-hover))) inset,
141
+ 0 -1px 0 0 var(--ac-search-button-border-hover, var(--__ac-search-button-border-hover, var(--a-border-action-hover))) inset,
142
+ -1px 0 0 0 var(--ac-search-button-border-hover, var(--__ac-search-button-border-hover, var(--a-border-action-hover)));
143
+ z-index: 1;
144
+ }
145
+
146
+ .navds-search__wrapper-inner:focus-within + .navds-search__button-search.navds-button--secondary:hover {
147
+ z-index: auto;
148
+ }
149
+
150
+ .navds-search__button-search.navds-button--secondary:focus-visible {
151
+ box-shadow:
152
+ 0 0 0 1px var(--ac-search-button-border, var(--__ac-search-button-border, var(--a-border-default))) inset,
153
+ var(--a-shadow-focus);
154
+ }
155
+
156
+ .navds-search__button-search.navds-button--secondary:focus-visible:hover {
157
+ box-shadow:
158
+ 0 0 0 1px var(--ac-search-button-border-hover, var(--__ac-search-button-border-hover, var(--a-border-action-hover))) inset,
159
+ var(--a-shadow-focus);
160
+ }
161
+
162
+ .navds-search__button-search.navds-button--secondary:focus-visible:active {
163
+ box-shadow:
164
+ 0 0 0 1px var(--ac-search-button-focus-active-border, var(--a-surface-default)) inset,
165
+ var(--a-shadow-focus);
166
+ }
167
+
168
+ @supports not selector(:focus-visible) {
169
+ .navds-search__button-search.navds-button--secondary:focus {
170
+ box-shadow:
171
+ 0 0 0 1px var(--ac-search-button-border, var(--__ac-search-button-border, var(--a-border-default))) inset,
172
+ var(--a-shadow-focus);
173
+ }
174
+
175
+ .navds-search__button-search.navds-button--secondary:focus:hover {
176
+ box-shadow:
177
+ 0 0 0 1px var(--ac-search-button-border-hover, var(--__ac-search-button-border-hover, var(--a-border-action))) inset,
178
+ var(--a-shadow-focus);
179
+ }
180
+
181
+ .navds-search__button-search.navds-button--secondary:focus:active {
182
+ box-shadow:
183
+ 0 0 0 1px var(--ac-search-button-focus-active-border, var(--a-surface-default)) inset,
184
+ var(--a-shadow-focus);
185
+ }
186
+ }
187
+
188
+ /* Error-handling */
189
+ .navds-search--error .navds-search__input:not(:hover, :disabled) {
190
+ border-color: var(--ac-search-error-border, var(--__ac-search-error-border, var(--a-border-danger)));
191
+ box-shadow: inset 0 0 0 1px var(--ac-search-error-border, var(--__ac-search-error-border, var(--a-border-danger)));
192
+ }
193
+
194
+ .navds-search--error .navds-search__input:focus-visible:not(:hover, :disabled) {
195
+ box-shadow:
196
+ inset 0 0 0 1px var(--ac-search-error-border, var(--__ac-search-error-border, var(--a-border-danger))),
197
+ var(--a-shadow-focus);
198
+ }
199
+
200
+ /* Focus layering */
201
+ .navds-search__input:focus-visible,
202
+ .navds-search__button-clear,
203
+ .navds-search__button-search:focus-visible {
204
+ z-index: 1;
205
+ }
206
+
207
+ @supports not selector(:focus-visible) {
208
+ .navds-search--error .navds-search__input:focus:not(:hover, :disabled) {
209
+ box-shadow:
210
+ inset 0 0 0 1px var(--ac-search-error-border, var(--__ac-search-error-border, var(--a-border-danger))),
211
+ var(--a-shadow-focus);
212
+ }
213
+
214
+ .navds-search__input:focus,
215
+ .navds-search__button-search:focus {
216
+ z-index: 1;
217
+ }
218
+ }
219
+
220
+ @media (forced-colors: active) {
221
+ .navds-modal {
222
+ outline: 2px solid transparent;
223
+ }
224
+
225
+ .navds-search__button-clear:hover {
226
+ color: highlight;
227
+ }
228
+ }
@@ -0,0 +1,115 @@
1
+ .navds-select__input {
2
+ appearance: none;
3
+ background-color: var(--ac-select-bg, var(--a-surface-default));
4
+ border-radius: var(--a-border-radius-medium);
5
+ border: 1px solid var(--ac-select-border, var(--a-border-default));
6
+ color: var(--ac-select-text, var(--a-text-default));
7
+ width: 100%;
8
+ box-sizing: border-box;
9
+ min-height: 3rem;
10
+ display: inline-block;
11
+ position: relative;
12
+ padding: 0.5rem;
13
+ padding-right: 2rem;
14
+ }
15
+
16
+ @media (forced-colors: active) {
17
+ .navds-select__input.navds-select__input.navds-select__input {
18
+ background-color: ButtonFace;
19
+ border-color: ButtonText;
20
+ color: ButtonText;
21
+ forced-color-adjust: none;
22
+ box-shadow: none;
23
+ }
24
+
25
+ .navds-select__input.navds-select__input.navds-select__input:focus-visible {
26
+ outline: 2px solid highlight;
27
+ outline-offset: 2px;
28
+ }
29
+ }
30
+
31
+ .navds-select__input:hover {
32
+ border-color: var(--ac-select-hover-border, var(--a-border-action-hover));
33
+ cursor: pointer;
34
+ }
35
+
36
+ .navds-select__input:focus-visible {
37
+ outline: none;
38
+ border-color: var(--ac-select-active-border, var(--a-border-action-selected));
39
+ box-shadow: var(--a-shadow-focus);
40
+ }
41
+
42
+ @supports not selector(:focus-visible) {
43
+ .navds-select__input:focus {
44
+ outline: none;
45
+ box-shadow: var(--a-shadow-focus);
46
+ }
47
+ }
48
+
49
+ .navds-select__container {
50
+ position: relative;
51
+ display: flex;
52
+ width: 100%;
53
+ color: var(--a-text-default);
54
+ }
55
+
56
+ .navds-select__chevron {
57
+ position: absolute;
58
+ font-size: 1.5rem;
59
+ right: var(--a-spacing-2);
60
+ pointer-events: none;
61
+ align-self: center;
62
+ color: var(--ac-select-text, var(--a-text-default));
63
+ }
64
+
65
+ @media (forced-colors: active) {
66
+ .navds-select__chevron {
67
+ color: ButtonText;
68
+ }
69
+ }
70
+
71
+ .navds-form-field--small .navds-select__input {
72
+ min-height: 2rem;
73
+ padding: 0 var(--a-spacing-8) 0 var(--a-spacing-2);
74
+ }
75
+
76
+ .navds-form-field--small .navds-select__chevron {
77
+ right: var(--a-spacing-1-alt);
78
+ }
79
+
80
+ /**
81
+ Error handling
82
+ */
83
+ .navds-select--error > * select:not(:hover, :focus, :disabled) {
84
+ box-shadow: 0 0 0 1px var(--ac-select-error-border, var(--a-surface-danger));
85
+ border-color: var(--ac-select-error-border, var(--a-surface-danger));
86
+ }
87
+
88
+ /**
89
+ Disabled
90
+ */
91
+ .navds-select__input:disabled {
92
+ background-color: var(--ac-select-bg, var(--a-surface-default));
93
+ border: 1px solid var(--ac-select-border, var(--a-border-default));
94
+ box-shadow: none;
95
+ cursor: not-allowed;
96
+
97
+ /* Chrome-fix */
98
+ opacity: 1;
99
+ color: var(--a-text-default);
100
+ }
101
+
102
+ /* Chrome-fix */
103
+ .navds-select__input:disabled > option {
104
+ color: var(--a-text-default);
105
+ }
106
+
107
+ .navds-select--readonly .navds-select__input {
108
+ background-color: var(--a-surface-subtle);
109
+ border-color: var(--a-border-subtle);
110
+ cursor: default;
111
+ }
112
+
113
+ .navds-select--readonly .navds-select__chevron {
114
+ color: var(--a-gray-500);
115
+ }