@db-ux/core-components 2.0.8 → 2.0.10-popover-d7e8b9a

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 (51) hide show
  1. package/build/components/accordion/accordion.css +4 -0
  2. package/build/components/accordion-item/accordion-item.css +30 -31
  3. package/build/components/accordion-item/accordion-item.scss +35 -39
  4. package/build/components/badge/badge.css +4 -0
  5. package/build/components/brand/brand.css +4 -0
  6. package/build/components/button/button.css +4 -0
  7. package/build/components/card/card.css +4 -0
  8. package/build/components/checkbox/checkbox.css +33 -12
  9. package/build/components/custom-select/custom-select.css +75 -134
  10. package/build/components/custom-select/custom-select.scss +0 -49
  11. package/build/components/custom-select-dropdown/custom-select-dropdown.css +4 -0
  12. package/build/components/custom-select-form-field/custom-select-form-field.css +4 -0
  13. package/build/components/custom-select-list/custom-select-list.css +4 -153
  14. package/build/components/custom-select-list/custom-select-list.scss +0 -3
  15. package/build/components/custom-select-list-item/custom-select-list-item.css +7 -21
  16. package/build/components/custom-select-list-item/custom-select-list-item.scss +5 -9
  17. package/build/components/divider/divider.css +4 -0
  18. package/build/components/drawer/drawer.css +4 -0
  19. package/build/components/header/header.css +4 -0
  20. package/build/components/icon/icon.css +4 -0
  21. package/build/components/infotext/infotext.css +4 -0
  22. package/build/components/input/input.css +75 -21
  23. package/build/components/link/link.css +4 -0
  24. package/build/components/navigation/navigation.css +4 -0
  25. package/build/components/navigation-item/navigation-item.css +4 -0
  26. package/build/components/notification/notification.css +4 -0
  27. package/build/components/popover/popover.css +83 -82
  28. package/build/components/popover/popover.scss +0 -1
  29. package/build/components/radio/radio.css +4 -0
  30. package/build/components/section/section.css +4 -0
  31. package/build/components/select/select.css +75 -21
  32. package/build/components/stack/stack-web-component.css +4 -0
  33. package/build/components/stack/stack.css +4 -0
  34. package/build/components/switch/switch.css +4 -0
  35. package/build/components/tab-item/tab-item.css +4 -0
  36. package/build/components/tab-list/tab-list.css +4 -0
  37. package/build/components/tabs/tabs.css +4 -0
  38. package/build/components/tag/tag.css +4 -0
  39. package/build/components/textarea/textarea.css +67 -19
  40. package/build/components/tooltip/tooltip.css +92 -90
  41. package/build/components/tooltip/tooltip.scss +14 -14
  42. package/build/styles/absolute.css +197 -13
  43. package/build/styles/dialog-init.css +1 -1
  44. package/build/styles/index.css +12 -12
  45. package/build/styles/internal/_form-components.scss +8 -3
  46. package/build/styles/internal/_popover-component.scss +69 -106
  47. package/build/styles/relative.css +197 -13
  48. package/build/styles/rollup.css +197 -13
  49. package/build/styles/visually-hidden.css +1 -1
  50. package/build/styles/webpack.css +197 -13
  51. package/package.json +2 -2
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  * @mixin screen-min-max
41
45
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
@@ -55,6 +55,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
55
55
 
56
56
  @layer variables {}
57
57
 
58
+ @layer variables {}
59
+
60
+ @layer variables {}
61
+
58
62
  @keyframes show-right-to-left {
59
63
  from {
60
64
  transform: translateX(110%);
@@ -134,7 +138,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
134
138
  transform: rotate(1turn);
135
139
  }
136
140
  }
137
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
141
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
138
142
  color: var(--db-icon-color, inherit);
139
143
  display: inline-block;
140
144
  /*** icon - placeholder ***/
@@ -157,17 +161,17 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
157
161
  content: var(--db-icon, attr(data-icon));
158
162
  }
159
163
  @supports (content: ""/"") {
160
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
164
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
161
165
  content: var(--db-icon, attr(data-icon))/"";
162
166
  }
163
167
  }
164
168
  @media aural {
165
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
169
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
166
170
  content: none;
167
171
  }
168
172
  }
169
173
  @media speech {
170
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
174
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
171
175
  content: none;
172
176
  }
173
177
  }
@@ -204,12 +208,12 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
204
208
 
205
209
  @layer variables {}
206
210
 
207
- .db-accordion-item summary {
211
+ .db-accordion-item > details > summary {
208
212
  font: var(--db-type-body-md);
209
213
  /* stylelint-disable-next-line at-rule-prelude-no-invalid,layer-name-pattern */
210
214
  }
211
215
  @layer variables {
212
- .db-accordion-item summary {
216
+ .db-accordion-item > details > summary {
213
217
  /* Those variables are only for components to calculate heights and change icons */
214
218
  --db-icon-font-weight: var(--db-base-body-icon-weight-md);
215
219
  --db-icon-font-size: var(--db-base-body-icon-font-size-md);
@@ -246,21 +250,21 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
246
250
  * @mixin screen-min-max
247
251
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
248
252
  */
249
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
253
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
250
254
  --db-icon-after: "chevron_down";
251
255
  margin-inline-start: var(--db-icon-margin-start, var(--db-spacing-fixed-xs));
252
256
  content: var(--db-icon-after, attr(data-icon-after));
253
257
  }
254
258
  @supports (content: ""/"") {
255
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
259
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
256
260
  content: var(--db-icon-after, attr(data-icon-after))/"";
257
261
  }
258
262
  }
259
- .db-accordion-item summary::after {
263
+ .db-accordion-item > details > summary::after {
260
264
  pointer-events: none;
261
265
  }
262
266
  @media screen and (prefers-reduced-motion: no-preference) {
263
- .db-accordion-item summary::after {
267
+ .db-accordion-item > details > summary::after {
264
268
  transition: transform var(--db-transition-straight-emotional);
265
269
  }
266
270
  }
@@ -271,35 +275,30 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
271
275
  border-radius: var(--db-border-radius-sm);
272
276
  list-style-type: "";
273
277
  }
274
- .db-accordion-item > details[open] summary + div {
278
+ .db-accordion-item > details[open] > summary + div {
275
279
  block-size: auto;
276
280
  /* stylelint-disable-next-line declaration-property-value-no-unknown */
277
281
  block-size: calc-size(auto, size);
278
282
  }
279
- .db-accordion-item > details[open] summary::after {
283
+ .db-accordion-item > details[open] > summary::after {
280
284
  transform: rotate(-180deg);
281
285
  }
282
286
  .db-accordion-item > details[aria-disabled=true] {
283
287
  pointer-events: none;
284
288
  opacity: 0.4;
285
289
  }
286
- @media screen and (prefers-reduced-motion: reduce) {
287
- .db-accordion-item summary + div {
288
- block-size: 0;
289
- overflow: hidden;
290
- transition: none;
291
- padding: var(--db-spacing-fixed-md);
292
- padding-block-end: var(--db-spacing-fixed-lg);
290
+ @media screen and (prefers-reduced-motion: no-preference) {
291
+ .db-accordion-item > details > summary + div {
292
+ transition: block-size var(--db-transition-straight-emotional);
293
293
  }
294
294
  }
295
- .db-accordion-item summary + div {
295
+ .db-accordion-item > details > summary + div {
296
296
  block-size: 0;
297
297
  overflow: hidden;
298
- transition: block-size var(--db-transition-straight-emotional);
299
298
  padding: var(--db-spacing-fixed-md);
300
299
  padding-block-end: var(--db-spacing-fixed-lg);
301
300
  }
302
- .db-accordion-item summary {
301
+ .db-accordion-item > details > summary {
303
302
  background-color: var(--db-adaptive-bg-basic-level-1-default);
304
303
  list-style: none;
305
304
  display: flex;
@@ -309,32 +308,32 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
309
308
  border-radius: var(--db-border-radius-sm);
310
309
  /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
311
310
  }
312
- .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]) {
311
+ .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]) {
313
312
  cursor: var(--db-overwrite-cursor, pointer);
314
313
  background-color: var(--db-adaptive-bg-basic-level-1-hovered);
315
314
  }
316
- .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]):is(input) {
315
+ .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]):is(input) {
317
316
  cursor: initial;
318
317
  }
319
- .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
318
+ .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
320
319
  cursor: pointer;
321
320
  }
322
- .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]) {
321
+ .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]) {
323
322
  cursor: var(--db-overwrite-cursor, pointer);
324
323
  background-color: var(--db-adaptive-bg-basic-level-1-pressed);
325
324
  }
326
- .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]):is(input) {
325
+ .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]):is(input) {
327
326
  cursor: initial;
328
327
  }
329
- .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
328
+ .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
330
329
  cursor: pointer;
331
330
  }
332
- .db-accordion-item summary::-webkit-details-marker {
331
+ .db-accordion-item > details > summary::-webkit-details-marker {
333
332
  display: none;
334
333
  }
335
- .db-accordion-item summary::after {
334
+ .db-accordion-item > details > summary::after {
336
335
  inset-inline-end: var(--db-spacing-fixed-sm);
337
336
  }
338
- .db-accordion-item summary:focus-visible {
337
+ .db-accordion-item > details > summary:focus-visible {
339
338
  border-radius: var(--db-border-radius-xs);
340
339
  }
@@ -13,13 +13,13 @@
13
13
 
14
14
  > details {
15
15
  &[open] {
16
- summary + div {
16
+ > summary + div {
17
17
  block-size: auto;
18
18
  /* stylelint-disable-next-line declaration-property-value-no-unknown */
19
19
  block-size: calc-size(auto, size);
20
20
  }
21
21
 
22
- summary::after {
22
+ > summary::after {
23
23
  transform: form-components.$dropdown-icon-transform;
24
24
  }
25
25
  }
@@ -28,56 +28,52 @@
28
28
  pointer-events: none;
29
29
  opacity: component.$default-disabled;
30
30
  }
31
- }
32
31
 
33
- @media screen and (prefers-reduced-motion: reduce) {
34
- summary + div {
32
+ @media screen and (prefers-reduced-motion: no-preference) {
33
+ > summary + div {
34
+ transition: block-size
35
+ #{variables.$db-transition-straight-emotional};
36
+ }
37
+ }
38
+
39
+ > summary + div {
35
40
  block-size: 0;
36
41
  overflow: hidden;
37
- transition: none;
38
42
  padding: variables.$db-spacing-fixed-md;
39
43
  padding-block-end: variables.$db-spacing-fixed-lg;
40
44
  }
41
- }
42
45
 
43
- summary + div {
44
- block-size: 0;
45
- overflow: hidden;
46
- transition: block-size #{variables.$db-transition-straight-emotional};
47
- padding: variables.$db-spacing-fixed-md;
48
- padding-block-end: variables.$db-spacing-fixed-lg;
49
- }
50
-
51
- summary {
52
- @extend %dropdown-icon;
53
- @extend %db-overwrite-font-size-md;
46
+ > summary {
47
+ @extend %dropdown-icon;
48
+ @extend %db-overwrite-font-size-md;
54
49
 
55
- background-color: colors.$db-adaptive-bg-basic-level-1-default;
56
- list-style: none;
57
- display: flex;
58
- justify-content: space-between;
59
- padding: variables.$db-spacing-fixed-md;
60
- gap: variables.$db-spacing-fixed-md;
61
- border-radius: variables.$db-border-radius-sm;
50
+ background-color: colors.$db-adaptive-bg-basic-level-1-default;
51
+ list-style: none;
52
+ display: flex;
53
+ justify-content: space-between;
54
+ padding: variables.$db-spacing-fixed-md;
55
+ gap: variables.$db-spacing-fixed-md;
56
+ border-radius: variables.$db-border-radius-sm;
62
57
 
63
- @include helpers.hover {
64
- background-color: colors.$db-adaptive-bg-basic-level-1-hovered;
65
- }
58
+ @include helpers.hover {
59
+ background-color: colors.$db-adaptive-bg-basic-level-1-hovered;
60
+ }
66
61
 
67
- @include helpers.active {
68
- background-color: colors.$db-adaptive-bg-basic-level-1-pressed;
69
- }
62
+ @include helpers.active {
63
+ background-color: colors.$db-adaptive-bg-basic-level-1-pressed;
64
+ }
70
65
 
71
- &::-webkit-details-marker {
72
- display: none;
73
- }
66
+ &::-webkit-details-marker {
67
+ display: none;
68
+ }
74
69
 
75
- &::after {
76
- inset-inline-end: variables.$db-spacing-fixed-sm;
77
- }
70
+ &::after {
71
+ inset-inline-end: variables.$db-spacing-fixed-sm;
72
+ }
78
73
 
79
- &:focus-visible {
80
- border-radius: variables.$db-border-radius-xs;
74
+ &:focus-visible {
75
+ border-radius: variables.$db-border-radius-xs;
76
+ }
81
77
  }
82
78
  }
83
79
  }
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  Generates 3 types of placeholders, e.g:
41
45
  - %db-component-variables-md
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  Generates 3 types of placeholders, e.g:
41
45
  - %db-component-variables-md
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  Generates 3 types of placeholders, e.g:
41
45
  - %db-component-variables-md
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  * @mixin screen-min-max
41
45
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
@@ -55,6 +55,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
55
55
 
56
56
  @layer variables {}
57
57
 
58
+ @layer variables {}
59
+
60
+ @layer variables {}
61
+
58
62
  .db-checkbox input:checked:not([data-hide-icon-before=true])::before, .db-checkbox input:indeterminate:not([data-hide-icon-before=true])::before {
59
63
  color: var(--db-icon-color, inherit);
60
64
  display: inline-block;
@@ -177,10 +181,12 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
177
181
  * @mixin screen-min-max
178
182
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
179
183
  */
180
- .db-checkbox .db-infotext {
184
+ .db-checkbox > db-infotext > .db-infotext,
185
+ .db-checkbox > .db-infotext {
181
186
  margin-block-start: var(--db-spacing-fixed-2xs);
182
187
  }
183
- .db-checkbox .db-infotext:is([data-semantic=successful], [data-semantic=critical]) {
188
+ .db-checkbox > db-infotext > .db-infotext:is([data-semantic=successful], [data-semantic=critical]),
189
+ .db-checkbox > .db-infotext:is([data-semantic=successful], [data-semantic=critical]) {
184
190
  display: none;
185
191
  }
186
192
 
@@ -282,13 +288,16 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
282
288
  --db-successful-on-bg-basic-emphasis-80-pressed
283
289
  );
284
290
  }
285
- .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) .db-infotext {
291
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext,
292
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) > .db-infotext {
286
293
  /* stylelint-disable-next-line at-rule-empty-line-before */
287
294
  }
288
- .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) .db-infotext[data-semantic=successful] {
295
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext[data-semantic=successful],
296
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) > .db-infotext[data-semantic=successful] {
289
297
  display: flex;
290
298
  }
291
- .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) .db-infotext:not([data-semantic]) {
299
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext:not([data-semantic]),
300
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) > .db-infotext:not([data-semantic]) {
292
301
  display: none;
293
302
  }
294
303
  .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):has(.db-infotext[data-semantic=successful]) input:not(:checked) {
@@ -328,13 +337,19 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
328
337
  --db-successful-on-bg-basic-emphasis-80-pressed
329
338
  );
330
339
  }
331
- .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) .db-infotext, .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) .db-infotext {
340
+ .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext,
341
+ .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) > .db-infotext, .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext,
342
+ .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) > .db-infotext {
332
343
  /* stylelint-disable-next-line at-rule-empty-line-before */
333
344
  }
334
- .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) .db-infotext[data-semantic=successful], .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) .db-infotext[data-semantic=successful] {
345
+ .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext[data-semantic=successful],
346
+ .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) > .db-infotext[data-semantic=successful], .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext[data-semantic=successful],
347
+ .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) > .db-infotext[data-semantic=successful] {
335
348
  display: flex;
336
349
  }
337
- .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) .db-infotext:not([data-semantic]), .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) .db-infotext:not([data-semantic]) {
350
+ .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext:not([data-semantic]),
351
+ .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) > .db-infotext:not([data-semantic]), .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) > db-infotext > .db-infotext:not([data-semantic]),
352
+ .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) > .db-infotext:not([data-semantic]) {
338
353
  display: none;
339
354
  }
340
355
  .db-checkbox:has(input[data-custom-validity=valid]):has(.db-infotext[data-semantic=successful]) input:not(:checked), .db-checkbox[data-custom-validity=valid]:has(.db-infotext[data-semantic=successful]) input:not(:checked) {
@@ -374,10 +389,12 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
374
389
  --db-critical-on-bg-basic-emphasis-80-pressed
375
390
  );
376
391
  }
377
- .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) .db-infotext[data-semantic=critical] {
392
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) > db-infotext > .db-infotext[data-semantic=critical],
393
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) > .db-infotext[data-semantic=critical] {
378
394
  display: flex;
379
395
  }
380
- .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) .db-infotext:not([data-semantic]) {
396
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) > db-infotext > .db-infotext:not([data-semantic]),
397
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) > .db-infotext:not([data-semantic]) {
381
398
  display: none;
382
399
  }
383
400
  .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not(:checked) {
@@ -417,10 +434,14 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
417
434
  --db-critical-on-bg-basic-emphasis-80-pressed
418
435
  );
419
436
  }
420
- .db-checkbox:has(input[data-custom-validity=invalid]) .db-infotext[data-semantic=critical], .db-checkbox[data-custom-validity=invalid] .db-infotext[data-semantic=critical] {
437
+ .db-checkbox:has(input[data-custom-validity=invalid]) > db-infotext > .db-infotext[data-semantic=critical],
438
+ .db-checkbox:has(input[data-custom-validity=invalid]) > .db-infotext[data-semantic=critical], .db-checkbox[data-custom-validity=invalid] > db-infotext > .db-infotext[data-semantic=critical],
439
+ .db-checkbox[data-custom-validity=invalid] > .db-infotext[data-semantic=critical] {
421
440
  display: flex;
422
441
  }
423
- .db-checkbox:has(input[data-custom-validity=invalid]) .db-infotext:not([data-semantic]), .db-checkbox[data-custom-validity=invalid] .db-infotext:not([data-semantic]) {
442
+ .db-checkbox:has(input[data-custom-validity=invalid]) > db-infotext > .db-infotext:not([data-semantic]),
443
+ .db-checkbox:has(input[data-custom-validity=invalid]) > .db-infotext:not([data-semantic]), .db-checkbox[data-custom-validity=invalid] > db-infotext > .db-infotext:not([data-semantic]),
444
+ .db-checkbox[data-custom-validity=invalid] > .db-infotext:not([data-semantic]) {
424
445
  display: none;
425
446
  }
426
447
  .db-checkbox:has(input[data-custom-validity=invalid]) input:not(:checked), .db-checkbox[data-custom-validity=invalid] input:not(:checked) {