@db-ux/core-components 2.1.2 → 2.2.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.
@@ -778,40 +778,6 @@ dialog:not([data-backdrop=none])[data-backdrop=weak]::backdrop, dialog:not([data
778
778
  background-color: color(from var(--db-adaptive-on-bg-basic-emphasis-100-default) srgb r g b/var(--db-opacity-sm));
779
779
  }
780
780
 
781
- [data-placement^=top].db-custom-select .db-custom-select-dropdown:not([data-outside-vy=top]), .db-custom-select:not([data-placement]) .db-custom-select-dropdown[data-outside-vy=bottom], [data-placement^=bottom].db-custom-select .db-custom-select-dropdown[data-outside-vy=bottom] {
782
- /* stylelint-disable-next-line media-query-no-invalid */
783
- /* stylelint-disable-next-line at-rule-empty-line-before */
784
- }
785
- @media screen and (min-width: 45em) {
786
- [data-placement^=top].db-custom-select .db-custom-select-dropdown:not([data-force-mobile]):not([data-outside-vy=top]), .db-custom-select:not([data-placement]) .db-custom-select-dropdown[data-outside-vy=bottom]:not([data-force-mobile]), [data-placement^=bottom].db-custom-select .db-custom-select-dropdown[data-outside-vy=bottom]:not([data-force-mobile]), [data-placement^=top].db-custom-select [data-force-mobile=false].db-custom-select-dropdown:not([data-outside-vy=top]), .db-custom-select:not([data-placement]) [data-force-mobile=false].db-custom-select-dropdown[data-outside-vy=bottom], [data-placement^=bottom].db-custom-select [data-force-mobile=false].db-custom-select-dropdown[data-outside-vy=bottom] {
787
- inset-block-end: 100%;
788
- margin-block-start: var(--db-spacing-fixed-md);
789
- }
790
- }
791
-
792
- [data-placement^=top].db-custom-select, .db-custom-select:not([data-placement]), [data-placement^=bottom].db-custom-select {
793
- /* stylelint-disable-next-line media-query-no-invalid */
794
- /* stylelint-disable-next-line at-rule-empty-line-before */
795
- }
796
- @media screen and (min-width: 45em) {
797
- [data-placement^=top].db-custom-select:not([data-force-mobile])[data-placement$=end] .db-custom-select-dropdown:not([data-outside-vx=right]), .db-custom-select:not([data-force-mobile])[data-placement$=end]:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vx=right]), [data-placement^=bottom].db-custom-select:not([data-force-mobile])[data-placement$=end] .db-custom-select-dropdown:not([data-outside-vx=right]), [data-force-mobile=false][data-placement$=end][data-placement^=top].db-custom-select .db-custom-select-dropdown:not([data-outside-vx=right]), [data-force-mobile=false][data-placement$=end].db-custom-select:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vx=right]), [data-force-mobile=false][data-placement$=end][data-placement^=bottom].db-custom-select .db-custom-select-dropdown:not([data-outside-vx=right]) {
798
- inset-inline-end: 0;
799
- }
800
- [data-placement^=top].db-custom-select:not([data-force-mobile]) .db-custom-select-dropdown[data-outside-vx=right], .db-custom-select:not([data-force-mobile]):not([data-placement]) .db-custom-select-dropdown[data-outside-vx=right], [data-placement^=bottom].db-custom-select:not([data-force-mobile]) .db-custom-select-dropdown[data-outside-vx=right], [data-force-mobile=false][data-placement^=top].db-custom-select .db-custom-select-dropdown[data-outside-vx=right], [data-force-mobile=false].db-custom-select:not([data-placement]) .db-custom-select-dropdown[data-outside-vx=right], [data-force-mobile=false][data-placement^=bottom].db-custom-select .db-custom-select-dropdown[data-outside-vx=right] {
801
- inset-inline-end: 0;
802
- }
803
- }
804
-
805
- .db-custom-select:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vy=bottom]), [data-placement^=bottom].db-custom-select .db-custom-select-dropdown:not([data-outside-vy=bottom]) {
806
- /* stylelint-disable-next-line media-query-no-invalid */
807
- /* stylelint-disable-next-line at-rule-empty-line-before */
808
- }
809
- @media screen and (min-width: 45em) {
810
- .db-custom-select:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vy=bottom]):not([data-force-mobile]), .db-custom-select:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vy=bottom])[data-force-mobile=false], [data-placement^=bottom].db-custom-select .db-custom-select-dropdown:not([data-outside-vy=bottom]):not([data-force-mobile]), [data-placement^=bottom].db-custom-select .db-custom-select-dropdown:not([data-outside-vy=bottom])[data-force-mobile=false] {
811
- inset-block-start: 100%;
812
- margin-block-end: var(--db-spacing-fixed-md);
813
- }
814
- }
815
781
  .db-custom-select {
816
782
  --db-form-component-padding-inline-end: calc(
817
783
  calc(var(--db-icon-font-size) + var(--db-spacing-fixed-sm) + var(--db-spacing-fixed-xs)) + var(--db-sizing-sm) +
@@ -1055,6 +1021,15 @@ input[type=radio]:checked) [id$=-placeholder] {
1055
1021
  .db-custom-select summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-custom-select summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
1056
1022
  cursor: pointer;
1057
1023
  }
1024
+ .db-custom-select summary:is(input, textarea) {
1025
+ /* see https://developer.mozilla.org/en-US/docs/Web/CSS/field-sizing */
1026
+ }
1027
+ .db-custom-select summary:is(input, textarea)[data-field-sizing=content] {
1028
+ field-sizing: content;
1029
+ }
1030
+ .db-custom-select summary:is(input, textarea)[data-field-sizing=fixed] {
1031
+ field-sizing: fixed;
1032
+ }
1058
1033
  .db-custom-select summary:is(input, textarea):not(:disabled):read-only {
1059
1034
  background-color: var(--db-textarea-read-only, var(--db-adaptive-bg-basic-level-1-default)) !important;
1060
1035
  }
@@ -7,53 +7,6 @@
7
7
  @use "../../styles/internal/select-components";
8
8
  @use "../../styles/dialog-init";
9
9
 
10
- %custom-select-placement-top {
11
- @include screen-sizes.screen("sm") {
12
- inset-block-end: 100%;
13
- margin-block-start: variables.$db-spacing-fixed-md;
14
- }
15
- }
16
-
17
- %custom-select-placement-vertical {
18
- @include screen-sizes.screen("sm") {
19
- &[data-placement$="end"] {
20
- .db-custom-select-dropdown:not([data-outside-vx="right"]) {
21
- inset-inline-end: 0;
22
- }
23
- }
24
-
25
- .db-custom-select-dropdown[data-outside-vx="right"] {
26
- inset-inline-end: 0;
27
- }
28
- }
29
- }
30
-
31
- %custom-select-placement {
32
- &:not([data-placement]),
33
- &[data-placement^="bottom"] {
34
- @extend %custom-select-placement-vertical;
35
-
36
- .db-custom-select-dropdown:not([data-outside-vy="bottom"]) {
37
- @include screen-sizes.screen("sm") {
38
- inset-block-start: 100%;
39
- margin-block-end: variables.$db-spacing-fixed-md;
40
- }
41
- }
42
-
43
- .db-custom-select-dropdown[data-outside-vy="bottom"] {
44
- @extend %custom-select-placement-top;
45
- }
46
- }
47
-
48
- &[data-placement^="top"] {
49
- @extend %custom-select-placement-vertical;
50
-
51
- .db-custom-select-dropdown:not([data-outside-vy="top"]) {
52
- @extend %custom-select-placement-top;
53
- }
54
- }
55
- }
56
-
57
10
  .db-custom-select {
58
11
  --db-form-component-padding-inline-end: calc(
59
12
  #{select-components.$select-icon-padding} + #{variables.$db-sizing-sm} +
@@ -67,7 +20,6 @@
67
20
 
68
21
  @extend %select-icon;
69
22
  @extend %select-placeholder;
70
- @extend %custom-select-placement;
71
23
 
72
24
  position: relative;
73
25
 
@@ -777,6 +777,15 @@ input[type=radio]:checked) [id$=-placeholder] {
777
777
  .db-input input:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-input input:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
778
778
  cursor: pointer;
779
779
  }
780
+ .db-input input:is(input, textarea) {
781
+ /* see https://developer.mozilla.org/en-US/docs/Web/CSS/field-sizing */
782
+ }
783
+ .db-input input:is(input, textarea)[data-field-sizing=content] {
784
+ field-sizing: content;
785
+ }
786
+ .db-input input:is(input, textarea)[data-field-sizing=fixed] {
787
+ field-sizing: fixed;
788
+ }
780
789
  .db-input input:is(input, textarea):not(:disabled):read-only {
781
790
  background-color: var(--db-textarea-read-only, var(--db-adaptive-bg-basic-level-1-default)) !important;
782
791
  }
@@ -276,13 +276,6 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
276
276
  transform: none;
277
277
  }
278
278
  }
279
- .db-navigation > menu .db-navigation-item:has([aria-current=page]) menu :has([aria-current=page])::after,
280
- .db-navigation > menu .db-navigation-item:has([aria-current=page]) menu [aria-current=page]::after, .db-navigation > menu .db-navigation-item:has([data-active=true]) menu :has([aria-current=page])::after,
281
- .db-navigation > menu .db-navigation-item:has([data-active=true]) menu [aria-current=page]::after, .db-navigation > menu .db-navigation-item[aria-current=page] menu :has([aria-current=page])::after,
282
- .db-navigation > menu .db-navigation-item[aria-current=page] menu [aria-current=page]::after, .db-navigation > menu .db-navigation-item[data-active=true] menu :has([aria-current=page])::after,
283
- .db-navigation > menu .db-navigation-item[data-active=true] menu [aria-current=page]::after {
284
- display: none;
285
- }
286
279
  .db-navigation > menu .db-navigation-item .db-navigation-item::after {
287
280
  display: none;
288
281
  }
@@ -86,16 +86,6 @@
86
86
  &[aria-current="page"],
87
87
  &[data-active="true"] {
88
88
  @extend %show-db-puls-auto;
89
-
90
- menu {
91
- // hide puls for non navigation items
92
- :has([aria-current="page"]),
93
- [aria-current="page"] {
94
- &::after {
95
- display: none;
96
- }
97
- }
98
- }
99
89
  }
100
90
 
101
91
  // angular workaround: as no direct-child selector can be used, the pulse is hidden from the second level onwards
@@ -133,15 +133,11 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
133
133
  border-radius: var(--default-card-border-radius, var(--db-border-radius-sm));
134
134
  }
135
135
 
136
- .db-popover > article:not([data-placement]), .db-popover > article[data-placement=bottom]:not([data-outside-vy]), .db-popover > article[data-placement=top]:not([data-outside-vy]), .db-popover > article:is([data-outside-vy=bottom], [data-outside-vy=top]):not([data-outside-vx],
137
- [data-placement$=end],
138
- [data-placement$=start]) {
136
+ .db-popover > article:not([data-placement], [data-corrected-placement]), .db-popover > article[data-placement=bottom]:not([data-corrected-placement]), .db-popover > article[data-placement=top]:not([data-corrected-placement]), .db-popover > article[data-corrected-placement=bottom], .db-popover > article[data-corrected-placement=top] {
139
137
  --db-popover-center-x: -50%;
140
138
  inset-inline-start: 50%;
141
139
  }
142
- .db-popover > article[data-placement=left]:not([data-outside-vx]), .db-popover > article[data-placement=right]:not([data-outside-vx]), .db-popover > article[data-outside-vx=left]:not([data-placement$=end],
143
- [data-placement$=start]), .db-popover > article[data-outside-vx=right]:not([data-placement$=end],
144
- [data-placement$=start]) {
140
+ .db-popover > article[data-corrected-placement=left], .db-popover > article[data-corrected-placement=right], .db-popover > article[data-placement=left]:not([data-corrected-placement]), .db-popover > article[data-placement=right]:not([data-corrected-placement]) {
145
141
  --db-popover-center-y: -50%;
146
142
  inset-block-start: 50%;
147
143
  }
@@ -153,135 +149,135 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
153
149
  content: "";
154
150
  position: absolute;
155
151
  }
156
- .db-popover > article[data-gap=true] {
157
- --db-popover-gap: 1;
158
- --db-popover-distance: var(--db-spacing-fixed-md);
159
- }
160
- .db-popover > article:is(.db-tooltip) {
161
- --db-popover-distance: var(--db-spacing-fixed-sm);
162
- }
163
- .db-popover > article[data-placement^=bottom]:not([data-outside-vy])[data-placement$=end], .db-popover > article[data-placement^=top]:not([data-outside-vy])[data-placement$=end], .db-popover > article[data-outside-vy=bottom]:not([data-outside-vx])[data-placement$=end], .db-popover > article[data-outside-vy=top]:not([data-outside-vx])[data-placement$=end] {
164
- inset-inline-end: 0;
165
- }
166
- .db-popover > article[data-placement^=bottom]:not([data-outside-vy])[data-placement$=start], .db-popover > article[data-placement^=top]:not([data-outside-vy])[data-placement$=start], .db-popover > article[data-outside-vy=bottom]:not([data-outside-vx])[data-placement$=start], .db-popover > article[data-outside-vy=top]:not([data-outside-vx])[data-placement$=start] {
167
- inset-inline-start: 0;
168
- }
169
- .db-popover > article[data-placement^=left]:not([data-outside-vx])[data-placement$=end], .db-popover > article[data-placement^=right]:not([data-outside-vx])[data-placement$=end], .db-popover > article[data-outside-vx=left][data-placement$=end], .db-popover > article[data-outside-vx=right][data-placement$=end] {
170
- inset-block-end: 0;
171
- }
172
- .db-popover > article[data-placement^=left]:not([data-outside-vx])[data-placement$=start], .db-popover > article[data-placement^=right]:not([data-outside-vx])[data-placement$=start], .db-popover > article[data-outside-vx=left][data-placement$=start], .db-popover > article[data-outside-vx=right][data-placement$=start] {
173
- inset-block-start: 0;
174
- }
175
- .db-popover > article:not([data-placement], [data-outside-vy]), .db-popover > article[data-placement^=bottom]:not([data-outside-vy]), .db-popover > article[data-outside-vy=top]:not([data-outside-vx]) {
176
- inset-block-start: calc(100% + var(--db-popover-distance) * var(--db-popover-gap, 0));
177
- }
178
- .db-popover > article:not([data-placement], [data-outside-vy])::before, .db-popover > article[data-placement^=bottom]:not([data-outside-vy])::before, .db-popover > article[data-outside-vy=top]:not([data-outside-vx])::before {
179
- inset-inline-start: 0;
180
- inline-size: 100%;
152
+ .db-popover > article:not([data-placement], [data-corrected-placement])::before, .db-popover > article[data-placement^=bottom]:not([data-corrected-placement])::before, .db-popover > article[data-corrected-placement^=bottom]::before {
153
+ inset-block-end: 100%;
154
+ inset-inline: 0;
181
155
  block-size: var(--db-popover-distance);
182
- inset-block-start: calc(-1 * var(--db-popover-distance));
183
156
  }
184
- .db-popover > article[data-placement^=top]:not([data-outside-vy]), .db-popover > article[data-outside-vy=bottom]:not([data-outside-vx]) {
185
- inset-block-end: calc(100% + var(--db-popover-distance) * var(--db-popover-gap, 0));
186
- }
187
- .db-popover > article[data-placement^=top]:not([data-outside-vy])::before, .db-popover > article[data-outside-vy=bottom]:not([data-outside-vx])::before {
188
- inset-inline-end: 0;
189
- inline-size: 100%;
157
+ .db-popover > article[data-placement^=top]:not([data-corrected-placement])::before, .db-popover > article[data-corrected-placement^=top]::before {
158
+ inset-block-start: 100%;
159
+ inset-inline: 0;
190
160
  block-size: var(--db-popover-distance);
191
- inset-block-end: calc(-1 * var(--db-popover-distance));
192
161
  }
193
- .db-popover > article[data-placement^=left]:not([data-outside-vx]), .db-popover > article[data-outside-vx=right] {
194
- inset-inline-end: calc(100% + var(--db-popover-distance) * var(--db-popover-gap, 0));
162
+ .db-popover > article[data-placement^=right]:not([data-corrected-placement])::before, .db-popover > article[data-corrected-placement^=right]::before {
163
+ inset-inline-end: 100%;
164
+ inset-block: 0;
165
+ inline-size: var(--db-popover-distance);
195
166
  }
196
- .db-popover > article[data-placement^=left]:not([data-outside-vx])::before, .db-popover > article[data-outside-vx=right]::before {
197
- inset-block-end: 0;
198
- block-size: 100%;
167
+ .db-popover > article[data-placement^=left]:not([data-corrected-placement])::before, .db-popover > article[data-corrected-placement^=left]::before {
168
+ inset-inline-start: 100%;
169
+ inset-block: 0;
199
170
  inline-size: var(--db-popover-distance);
200
- inset-inline-end: calc(-1 * var(--db-popover-distance));
201
171
  }
202
- .db-popover > article[data-placement^=right]:not([data-outside-vx]), .db-popover > article[data-outside-vx=left] {
203
- inset-inline-start: calc(100% + var(--db-popover-distance) * var(--db-popover-gap, 0));
172
+ .db-popover > article[data-gap=true] {
173
+ --db-popover-gap: 1;
174
+ --db-popover-distance: var(--db-spacing-fixed-md);
204
175
  }
205
- .db-popover > article[data-placement^=right]:not([data-outside-vx])::before, .db-popover > article[data-outside-vx=left]::before {
206
- inset-block-start: 0;
207
- block-size: 100%;
208
- inline-size: var(--db-popover-distance);
209
- inset-inline-start: calc(-1 * var(--db-popover-distance));
176
+ .db-popover > article:is(.db-tooltip) {
177
+ --db-popover-distance: var(--db-spacing-fixed-sm);
210
178
  }
211
179
 
212
180
  .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-open=false]), .db-popover > article[data-open=true] {
213
- display: revert;
181
+ visibility: var(--db-show-popover-visibility, visible);
214
182
  }
215
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-outside-vy]):not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-outside-vy]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-outside-vy]):not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-outside-vy]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=top]:not([data-outside-vx]):not([data-open=false]), .db-popover > article[data-outside-vy=top][data-open=true]:not([data-outside-vx]) {
183
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-corrected-placement]):not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-corrected-placement]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-corrected-placement]):not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-corrected-placement]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=bottom]:not([data-open=false]), .db-popover > article[data-corrected-placement^=bottom][data-open=true] {
216
184
  --db-popover-translate-y: -25%;
217
185
  }
218
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-outside-vy]):not([data-animation]):not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-outside-vy]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-outside-vy])[data-animation=false]:not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-outside-vy])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-outside-vy]):not([data-animation]):not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-outside-vy]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-outside-vy])[data-animation=false]:not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-outside-vy])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=top]:not([data-outside-vx]):not([data-animation]):not([data-open=false]), .db-popover > article[data-outside-vy=top][data-open=true]:not([data-outside-vx]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=top]:not([data-outside-vx])[data-animation=false]:not([data-open=false]), .db-popover > article[data-outside-vy=top][data-open=true]:not([data-outside-vx])[data-animation=false] {
186
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-corrected-placement]):not([data-animation]):not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-corrected-placement]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-corrected-placement])[data-animation=false]:not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-corrected-placement])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-corrected-placement]):not([data-animation]):not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-corrected-placement]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-corrected-placement])[data-animation=false]:not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-corrected-placement])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=bottom]:not([data-animation]):not([data-open=false]), .db-popover > article[data-corrected-placement^=bottom][data-open=true]:not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=bottom][data-animation=false]:not([data-open=false]), .db-popover > article[data-corrected-placement^=bottom][data-animation=false][data-open=true] {
219
187
  opacity: 1;
220
188
  transform: translate(var(--db-popover-center-x, 0), var(--db-popover-center-y, 0));
221
189
  }
222
190
  @media screen and (prefers-reduced-motion: no-preference) {
223
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-outside-vy])[data-animation=true]:not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-outside-vy])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-outside-vy])[data-animation=true]:not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-outside-vy])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=top]:not([data-outside-vx])[data-animation=true]:not([data-open=false]), .db-popover > article[data-outside-vy=top][data-open=true]:not([data-outside-vx])[data-animation=true] {
191
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-corrected-placement])[data-animation=true]:not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-corrected-placement])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-corrected-placement])[data-animation=true]:not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-corrected-placement])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=bottom][data-animation=true]:not([data-open=false]), .db-popover > article[data-corrected-placement^=bottom][data-animation=true][data-open=true] {
224
192
  animation: popover-animation var(--db-transition-straight-emotional) normal both;
193
+ /* stylelint-disable-next-line media-query-no-invalid */
194
+ /* stylelint-disable-next-line at-rule-empty-line-before */
225
195
  }
226
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-outside-vy])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-outside-vy])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-outside-vy])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-outside-vy])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=top]:not([data-outside-vx])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-outside-vy=top][data-open=true]:not([data-outside-vx])[data-animation=true][data-delay=slow] {
196
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-corrected-placement])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-corrected-placement])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-corrected-placement])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-corrected-placement])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=bottom][data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-corrected-placement^=bottom][data-animation=true][data-delay=slow][data-open=true] {
227
197
  animation-delay: var(--db-transition-duration-extra-slow);
228
198
  }
229
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-outside-vy])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-outside-vy])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-outside-vy])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-outside-vy])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=top]:not([data-outside-vx])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-outside-vy=top][data-open=true]:not([data-outside-vx])[data-animation=true][data-delay=fast] {
230
- animation-delay: calc(var(--db-transition-duration-medium));
199
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-corrected-placement])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-corrected-placement])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-corrected-placement])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-corrected-placement])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=bottom][data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-corrected-placement^=bottom][data-animation=true][data-delay=fast][data-open=true] {
200
+ animation-delay: var(--db-transition-duration-medium);
231
201
  }
232
202
  }
233
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-outside-vy]):not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-outside-vy]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=bottom]:not([data-outside-vx]):not([data-open=false]), .db-popover > article[data-outside-vy=bottom][data-open=true]:not([data-outside-vx]) {
203
+ @media screen and (prefers-reduced-motion: no-preference) and (width <= 64em) {
204
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article:not([data-placement], [data-corrected-placement])[data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-open=true]:not([data-placement], [data-corrected-placement])[data-animation=true]:not([data-delay]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=bottom]:not([data-corrected-placement])[data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-placement^=bottom][data-open=true]:not([data-corrected-placement])[data-animation=true]:not([data-delay]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=bottom][data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-corrected-placement^=bottom][data-animation=true][data-open=true]:not([data-delay]) {
205
+ animation-delay: var(--db-transition-duration-medium);
206
+ }
207
+ }
208
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-corrected-placement]):not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-corrected-placement]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=top]:not([data-open=false]), .db-popover > article[data-corrected-placement^=top][data-open=true] {
234
209
  --db-popover-translate-y: 25%;
235
210
  }
236
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-outside-vy]):not([data-animation]):not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-outside-vy]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-outside-vy])[data-animation=false]:not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-outside-vy])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=bottom]:not([data-outside-vx]):not([data-animation]):not([data-open=false]), .db-popover > article[data-outside-vy=bottom][data-open=true]:not([data-outside-vx]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=bottom]:not([data-outside-vx])[data-animation=false]:not([data-open=false]), .db-popover > article[data-outside-vy=bottom][data-open=true]:not([data-outside-vx])[data-animation=false] {
211
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-corrected-placement]):not([data-animation]):not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-corrected-placement]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-corrected-placement])[data-animation=false]:not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-corrected-placement])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=top]:not([data-animation]):not([data-open=false]), .db-popover > article[data-corrected-placement^=top][data-open=true]:not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=top][data-animation=false]:not([data-open=false]), .db-popover > article[data-corrected-placement^=top][data-animation=false][data-open=true] {
237
212
  opacity: 1;
238
213
  transform: translate(var(--db-popover-center-x, 0), var(--db-popover-center-y, 0));
239
214
  }
240
215
  @media screen and (prefers-reduced-motion: no-preference) {
241
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-outside-vy])[data-animation=true]:not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-outside-vy])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=bottom]:not([data-outside-vx])[data-animation=true]:not([data-open=false]), .db-popover > article[data-outside-vy=bottom][data-open=true]:not([data-outside-vx])[data-animation=true] {
216
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-corrected-placement])[data-animation=true]:not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-corrected-placement])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=top][data-animation=true]:not([data-open=false]), .db-popover > article[data-corrected-placement^=top][data-animation=true][data-open=true] {
242
217
  animation: popover-animation var(--db-transition-straight-emotional) normal both;
218
+ /* stylelint-disable-next-line media-query-no-invalid */
219
+ /* stylelint-disable-next-line at-rule-empty-line-before */
243
220
  }
244
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-outside-vy])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-outside-vy])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=bottom]:not([data-outside-vx])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-outside-vy=bottom][data-open=true]:not([data-outside-vx])[data-animation=true][data-delay=slow] {
221
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-corrected-placement])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-corrected-placement])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=top][data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-corrected-placement^=top][data-animation=true][data-delay=slow][data-open=true] {
245
222
  animation-delay: var(--db-transition-duration-extra-slow);
246
223
  }
247
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-outside-vy])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-outside-vy])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vy=bottom]:not([data-outside-vx])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-outside-vy=bottom][data-open=true]:not([data-outside-vx])[data-animation=true][data-delay=fast] {
248
- animation-delay: calc(var(--db-transition-duration-medium));
224
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-corrected-placement])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-corrected-placement])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=top][data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-corrected-placement^=top][data-animation=true][data-delay=fast][data-open=true] {
225
+ animation-delay: var(--db-transition-duration-medium);
226
+ }
227
+ }
228
+ @media screen and (prefers-reduced-motion: no-preference) and (width <= 64em) {
229
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=top]:not([data-corrected-placement])[data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-placement^=top][data-open=true]:not([data-corrected-placement])[data-animation=true]:not([data-delay]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=top][data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-corrected-placement^=top][data-animation=true][data-open=true]:not([data-delay]) {
230
+ animation-delay: var(--db-transition-duration-medium);
249
231
  }
250
232
  }
251
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-outside-vx]):not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-outside-vx]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=left]:not([data-open=false]), .db-popover > article[data-outside-vx=left][data-open=true] {
233
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-corrected-placement]):not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-corrected-placement]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=right]:not([data-open=false]), .db-popover > article[data-corrected-placement^=right][data-open=true] {
252
234
  --db-popover-translate-x: -25%;
253
235
  }
254
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-outside-vx]):not([data-animation]):not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-outside-vx]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-outside-vx])[data-animation=false]:not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-outside-vx])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=left]:not([data-animation]):not([data-open=false]), .db-popover > article[data-outside-vx=left][data-open=true]:not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=left][data-animation=false]:not([data-open=false]), .db-popover > article[data-outside-vx=left][data-animation=false][data-open=true] {
236
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-corrected-placement]):not([data-animation]):not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-corrected-placement]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-corrected-placement])[data-animation=false]:not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-corrected-placement])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=right]:not([data-animation]):not([data-open=false]), .db-popover > article[data-corrected-placement^=right][data-open=true]:not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=right][data-animation=false]:not([data-open=false]), .db-popover > article[data-corrected-placement^=right][data-animation=false][data-open=true] {
255
237
  opacity: 1;
256
238
  transform: translate(var(--db-popover-center-x, 0), var(--db-popover-center-y, 0));
257
239
  }
258
240
  @media screen and (prefers-reduced-motion: no-preference) {
259
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-outside-vx])[data-animation=true]:not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-outside-vx])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=left][data-animation=true]:not([data-open=false]), .db-popover > article[data-outside-vx=left][data-animation=true][data-open=true] {
241
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-corrected-placement])[data-animation=true]:not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-corrected-placement])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=right][data-animation=true]:not([data-open=false]), .db-popover > article[data-corrected-placement^=right][data-animation=true][data-open=true] {
260
242
  animation: popover-animation var(--db-transition-straight-emotional) normal both;
243
+ /* stylelint-disable-next-line media-query-no-invalid */
244
+ /* stylelint-disable-next-line at-rule-empty-line-before */
261
245
  }
262
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-outside-vx])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-outside-vx])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=left][data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-outside-vx=left][data-animation=true][data-delay=slow][data-open=true] {
246
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-corrected-placement])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-corrected-placement])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=right][data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-corrected-placement^=right][data-animation=true][data-delay=slow][data-open=true] {
263
247
  animation-delay: var(--db-transition-duration-extra-slow);
264
248
  }
265
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-outside-vx])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-outside-vx])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=left][data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-outside-vx=left][data-animation=true][data-delay=fast][data-open=true] {
266
- animation-delay: calc(var(--db-transition-duration-medium));
249
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-corrected-placement])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-corrected-placement])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=right][data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-corrected-placement^=right][data-animation=true][data-delay=fast][data-open=true] {
250
+ animation-delay: var(--db-transition-duration-medium);
267
251
  }
268
252
  }
269
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-outside-vx]):not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-outside-vx]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=right]:not([data-open=false]), .db-popover > article[data-outside-vx=right][data-open=true] {
253
+ @media screen and (prefers-reduced-motion: no-preference) and (width <= 64em) {
254
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=right]:not([data-corrected-placement])[data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-placement^=right][data-open=true]:not([data-corrected-placement])[data-animation=true]:not([data-delay]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=right][data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-corrected-placement^=right][data-animation=true][data-open=true]:not([data-delay]) {
255
+ animation-delay: var(--db-transition-duration-medium);
256
+ }
257
+ }
258
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-corrected-placement]):not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-corrected-placement]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=left]:not([data-open=false]), .db-popover > article[data-corrected-placement^=left][data-open=true] {
270
259
  --db-popover-translate-x: 25%;
271
260
  }
272
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-outside-vx]):not([data-animation]):not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-outside-vx]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-outside-vx])[data-animation=false]:not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-outside-vx])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=right]:not([data-animation]):not([data-open=false]), .db-popover > article[data-outside-vx=right][data-open=true]:not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=right][data-animation=false]:not([data-open=false]), .db-popover > article[data-outside-vx=right][data-animation=false][data-open=true] {
261
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-corrected-placement]):not([data-animation]):not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-corrected-placement]):not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-corrected-placement])[data-animation=false]:not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-corrected-placement])[data-animation=false], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=left]:not([data-animation]):not([data-open=false]), .db-popover > article[data-corrected-placement^=left][data-open=true]:not([data-animation]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=left][data-animation=false]:not([data-open=false]), .db-popover > article[data-corrected-placement^=left][data-animation=false][data-open=true] {
273
262
  opacity: 1;
274
263
  transform: translate(var(--db-popover-center-x, 0), var(--db-popover-center-y, 0));
275
264
  }
276
265
  @media screen and (prefers-reduced-motion: no-preference) {
277
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-outside-vx])[data-animation=true]:not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-outside-vx])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=right][data-animation=true]:not([data-open=false]), .db-popover > article[data-outside-vx=right][data-animation=true][data-open=true] {
266
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-corrected-placement])[data-animation=true]:not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-corrected-placement])[data-animation=true], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=left][data-animation=true]:not([data-open=false]), .db-popover > article[data-corrected-placement^=left][data-animation=true][data-open=true] {
278
267
  animation: popover-animation var(--db-transition-straight-emotional) normal both;
268
+ /* stylelint-disable-next-line media-query-no-invalid */
269
+ /* stylelint-disable-next-line at-rule-empty-line-before */
279
270
  }
280
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-outside-vx])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-outside-vx])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=right][data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-outside-vx=right][data-animation=true][data-delay=slow][data-open=true] {
271
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-corrected-placement])[data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-corrected-placement])[data-animation=true][data-delay=slow], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=left][data-animation=true][data-delay=slow]:not([data-open=false]), .db-popover > article[data-corrected-placement^=left][data-animation=true][data-delay=slow][data-open=true] {
281
272
  animation-delay: var(--db-transition-duration-extra-slow);
282
273
  }
283
- .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-outside-vx])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-outside-vx])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-outside-vx=right][data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-outside-vx=right][data-animation=true][data-delay=fast][data-open=true] {
284
- animation-delay: calc(var(--db-transition-duration-medium));
274
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-corrected-placement])[data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-corrected-placement])[data-animation=true][data-delay=fast], .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=left][data-animation=true][data-delay=fast]:not([data-open=false]), .db-popover > article[data-corrected-placement^=left][data-animation=true][data-delay=fast][data-open=true] {
275
+ animation-delay: var(--db-transition-duration-medium);
276
+ }
277
+ }
278
+ @media screen and (prefers-reduced-motion: no-preference) and (width <= 64em) {
279
+ .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-placement^=left]:not([data-corrected-placement])[data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-placement^=left][data-open=true]:not([data-corrected-placement])[data-animation=true]:not([data-delay]), .db-popover:is([data-e2e-hover=true], :hover, :focus-within) > article[data-corrected-placement^=left][data-animation=true]:not([data-delay]):not([data-open=false]), .db-popover > article[data-corrected-placement^=left][data-animation=true][data-open=true]:not([data-delay]) {
280
+ animation-delay: var(--db-transition-duration-medium);
285
281
  }
286
282
  }
287
283
 
@@ -289,21 +285,22 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
289
285
  position: absolute;
290
286
  background-color: var(--db-adaptive-bg-basic-level-1-default);
291
287
  box-shadow: var(--db-elevation-md);
292
- display: none;
288
+ visibility: hidden;
293
289
  z-index: 1337;
294
- white-space: nowrap;
290
+ white-space: normal;
291
+ max-inline-size: calc(100vw - 2 * var(--db-spacing-fixed-md));
292
+ block-size: fit-content;
293
+ inline-size: fit-content;
295
294
  }
296
295
  .db-popover > article[data-width=fixed] {
297
296
  inline-size: max-content;
298
- max-inline-size: var(--db-sizing-3xl);
299
- white-space: normal;
297
+ max-inline-size: min(var(--db-sizing-3xl), calc(100vw - 2 * var(--db-spacing-fixed-md)));
300
298
  text-align: initial;
301
299
  }
302
300
 
303
301
  .db-popover {
304
302
  position: relative;
305
303
  display: flex;
306
- inline-size: fit-content;
307
304
  }
308
305
  .db-popover > article {
309
306
  /* stylelint-disable-next-line at-rule-empty-line-before */
@@ -5,7 +5,6 @@
5
5
  .db-popover {
6
6
  position: relative;
7
7
  display: flex;
8
- inline-size: fit-content;
9
8
 
10
9
  &:is([data-e2e-hover="true"], :hover, :focus-within) {
11
10
  > article:not([data-open="false"]) {
@@ -825,6 +825,15 @@ input[type=radio]:checked) [id$=-placeholder] {
825
825
  .db-select select:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-select select:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
826
826
  cursor: pointer;
827
827
  }
828
+ .db-select select:is(input, textarea) {
829
+ /* see https://developer.mozilla.org/en-US/docs/Web/CSS/field-sizing */
830
+ }
831
+ .db-select select:is(input, textarea)[data-field-sizing=content] {
832
+ field-sizing: content;
833
+ }
834
+ .db-select select:is(input, textarea)[data-field-sizing=fixed] {
835
+ field-sizing: fixed;
836
+ }
828
837
  .db-select select:is(input, textarea):not(:disabled):read-only {
829
838
  background-color: var(--db-textarea-read-only, var(--db-adaptive-bg-basic-level-1-default)) !important;
830
839
  }
@@ -224,6 +224,12 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
224
224
  /* Left */
225
225
  /* Right */
226
226
  }
227
+ @supports (field-sizing: content) {
228
+ .db-tab-list > ul[data-field-sizing=content]:is([data-hide-resizer=true], [data-resize=none]) {
229
+ /* We don't show a scrollbar if we use field-sizing: content and no resizer is available */
230
+ scrollbar-width: none;
231
+ }
232
+ }
227
233
  .db-tab-list > ul::-webkit-scrollbar {
228
234
  z-index: 3;
229
235
  inline-size: 0.5rem;
@@ -283,6 +283,12 @@ input[type=radio]:checked) > label {
283
283
  /* Left */
284
284
  /* Right */
285
285
  }
286
+ @supports (field-sizing: content) {
287
+ .db-textarea textarea[data-field-sizing=content]:is([data-hide-resizer=true], [data-resize=none]) {
288
+ /* We don't show a scrollbar if we use field-sizing: content and no resizer is available */
289
+ scrollbar-width: none;
290
+ }
291
+ }
286
292
  .db-textarea textarea::-webkit-scrollbar {
287
293
  z-index: 3;
288
294
  inline-size: 0.5rem;
@@ -346,16 +352,19 @@ input[type=radio]:checked) > label {
346
352
  border-end-end-radius: var(--db-border-radius-xs);
347
353
  }
348
354
 
349
- .db-textarea textarea[data-resize=none] {
355
+ .db-textarea textarea[data-hide-resizer=true] {
356
+ resize: none;
357
+ }
358
+ .db-textarea textarea:not([data-hide-resizer=true])[data-resize=none] {
350
359
  resize: none;
351
360
  }
352
- .db-textarea textarea[data-resize=both] {
361
+ .db-textarea textarea:not([data-hide-resizer=true])[data-resize=both] {
353
362
  resize: both;
354
363
  }
355
- .db-textarea textarea[data-resize=horizontal] {
364
+ .db-textarea textarea:not([data-hide-resizer=true])[data-resize=horizontal] {
356
365
  resize: horizontal;
357
366
  }
358
- .db-textarea textarea[data-resize=vertical] {
367
+ .db-textarea textarea:not([data-hide-resizer=true])[data-resize=vertical] {
359
368
  resize: vertical;
360
369
  }
361
370
 
@@ -649,6 +658,15 @@ input[type=radio]:checked) [id$=-placeholder] {
649
658
  .db-textarea textarea:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-textarea textarea:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
650
659
  cursor: pointer;
651
660
  }
661
+ .db-textarea textarea:is(input, textarea) {
662
+ /* see https://developer.mozilla.org/en-US/docs/Web/CSS/field-sizing */
663
+ }
664
+ .db-textarea textarea:is(input, textarea)[data-field-sizing=content] {
665
+ field-sizing: content;
666
+ }
667
+ .db-textarea textarea:is(input, textarea)[data-field-sizing=fixed] {
668
+ field-sizing: fixed;
669
+ }
652
670
  .db-textarea textarea:is(input, textarea):not(:disabled):read-only {
653
671
  background-color: var(--db-textarea-read-only, var(--db-adaptive-bg-basic-level-1-default)) !important;
654
672
  }
@@ -8,20 +8,27 @@
8
8
  @use "../../styles/internal/scrollbar";
9
9
 
10
10
  %resize-textarea {
11
- &[data-resize="none"] {
11
+ &[data-hide-resizer="true"] {
12
12
  resize: none;
13
13
  }
14
14
 
15
- &[data-resize="both"] {
16
- resize: both;
17
- }
15
+ // TODO: Consolidate data-hide-resizer and data-resize attributes in the future
16
+ &:not([data-hide-resizer="true"]) {
17
+ &[data-resize="none"] {
18
+ resize: none;
19
+ }
18
20
 
19
- &[data-resize="horizontal"] {
20
- resize: horizontal;
21
- }
21
+ &[data-resize="both"] {
22
+ resize: both;
23
+ }
22
24
 
23
- &[data-resize="vertical"] {
24
- resize: vertical;
25
+ &[data-resize="horizontal"] {
26
+ resize: horizontal;
27
+ }
28
+
29
+ &[data-resize="vertical"] {
30
+ resize: vertical;
31
+ }
25
32
  }
26
33
  }
27
34