@itwin/itwinui-css 0.47.0 → 0.48.2

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.
@@ -7,9 +7,9 @@
7
7
  $iui-color-picker-content-width: ($iui-l * 9) + ($iui-s * 8); // (9 swatches per row) + (gaps)
8
8
  $iui-color-picker-max-width: ($iui-l * 10) + ($iui-s * 9); // (10 swatches per row) + (gaps)
9
9
  $iui-color-swatch-border-radius: 5px;
10
- $iui-inset-box-shadow: inset 0 0 0 1px rgba(t(iui-color-foreground-body-rgb), t(iui-opacity-5));
11
- $iui-active-box-shadow: 0 0 0 $iui-xxs rgba(t(iui-color-foreground-primary-rgb), t(iui-opacity-3));
12
- $iui-hover-box-shadow: 0 0 1px $iui-xxs + 1 rgba(t(iui-color-foreground-body-rgb), t(iui-opacity-5));
10
+ $iui-inset-box-shadow: inset 0 0 0 1px rgba(var(--iui-color-foreground-body-rgb), var(--iui-opacity-5));
11
+ $iui-active-box-shadow: 0 0 0 $iui-xxs rgba(var(--iui-color-foreground-primary-rgb), var(--iui-opacity-3));
12
+ $iui-hover-box-shadow: 0 0 1px $iui-xxs + 1 rgba(var(--iui-color-foreground-body-rgb), var(--iui-opacity-5));
13
13
 
14
14
  @mixin iui-color-picker {
15
15
  --iui-color-picker-selected-color: initial;
@@ -45,36 +45,39 @@ $iui-hover-box-shadow: 0 0 1px $iui-xxs + 1 rgba(t(iui-color-foreground-body-rgb
45
45
  width: $iui-l;
46
46
  cursor: pointer;
47
47
  border-radius: $iui-color-swatch-border-radius;
48
- background-color: var(--iui-color-swatch-background);
49
48
  margin-bottom: $iui-xs;
50
49
  margin-right: $iui-xs;
51
-
50
+ position: relative;
51
+ background-color: var(--iui-color-swatch-background);
52
+ @include iui-transparent-background;
52
53
  @supports (gap: $iui-s) {
53
54
  margin-bottom: 0;
54
55
  margin-right: 0;
55
56
  }
56
57
 
57
- @include themed {
58
+ &::after {
59
+ content: '';
60
+ position: absolute;
61
+ left: 0;
62
+ top: 0;
63
+ width: inherit;
64
+ height: inherit;
65
+ border-radius: inherit;
66
+ background-color: inherit;
58
67
  box-shadow: $iui-inset-box-shadow;
59
68
  }
60
69
 
61
70
  &:hover {
62
- @include themed {
63
- box-shadow: $iui-hover-box-shadow, $iui-inset-box-shadow;
64
- }
71
+ box-shadow: $iui-hover-box-shadow, $iui-inset-box-shadow;
65
72
  }
66
73
 
67
- @include iui-focus($offset: 0, $thickness: 2px);
74
+ @include iui-focus($offset: 1px, $thickness: 2px);
68
75
 
69
76
  &.iui-active {
70
- @include themed {
71
- box-shadow: $iui-active-box-shadow, $iui-inset-box-shadow;
72
- }
77
+ box-shadow: $iui-active-box-shadow, $iui-inset-box-shadow;
73
78
 
74
79
  &:hover {
75
- @include themed {
76
- box-shadow: $iui-hover-box-shadow, $iui-inset-box-shadow, $iui-active-box-shadow;
77
- }
80
+ box-shadow: $iui-hover-box-shadow, $iui-inset-box-shadow, $iui-active-box-shadow;
78
81
  }
79
82
  }
80
83
  }
@@ -169,10 +172,8 @@ $iui-hover-box-shadow: 0 0 1px $iui-xxs + 1 rgba(t(iui-color-foreground-body-rgb
169
172
  cursor: crosshair;
170
173
  width: 100%;
171
174
  height: $iui-baseline * 19;
172
- @include themed {
173
- background-image: linear-gradient(0deg, rgb(0, 0, 0), transparent),
174
- linear-gradient(90deg, rgb(255, 255, 255), var(--iui-color-field-hue));
175
- }
175
+ background-image: linear-gradient(0deg, rgb(0, 0, 0), transparent),
176
+ linear-gradient(90deg, rgb(255, 255, 255), var(--iui-color-field-hue));
176
177
 
177
178
  &:not(:last-child) {
178
179
  margin-bottom: round($iui-baseline * 0.5);
@@ -204,27 +205,7 @@ $iui-hover-box-shadow: 0 0 1px $iui-xxs + 1 rgba(t(iui-color-foreground-body-rgb
204
205
  @mixin iui-opacity-slider {
205
206
  .iui-slider-rail {
206
207
  height: $iui-s;
207
- @include themed {
208
- // Checkered transparency background pattern.
209
- background-image: repeating-linear-gradient(
210
- 45deg,
211
- t(iui-color-background-3) 25%,
212
- transparent 25%,
213
- transparent 75%,
214
- t(iui-color-background-3) 75%,
215
- t(iui-color-background-3)
216
- ),
217
- repeating-linear-gradient(
218
- 45deg,
219
- t(iui-color-background-3) 25%,
220
- t(iui-color-background-5) 25%,
221
- t(iui-color-background-5) 75%,
222
- t(iui-color-background-3) 75%,
223
- t(iui-color-background-3)
224
- );
225
- background-position: 0 0, ($iui-s * 0.5) ($iui-s * 0.5);
226
- background-size: $iui-s $iui-s;
227
- }
208
+ @include iui-transparent-background($size: $iui-s);
228
209
 
229
210
  &::before {
230
211
  display: block;
@@ -250,17 +231,36 @@ $iui-hover-box-shadow: 0 0 1px $iui-xxs + 1 rgba(t(iui-color-foreground-body-rgb
250
231
  border-radius: 50%;
251
232
  transform: translate(-$iui-s, -$iui-s);
252
233
  cursor: crosshair;
253
- @include themed {
254
- box-shadow: rgba(t(iui-color-foreground-accessory-rgb), t(iui-opacity-1)) 0 0 0 $iui-xxs - 1,
255
- inset 0 0 0 $iui-xxs - 1 rgba(t(iui-color-foreground-accessory-rgb), t(iui-opacity-6));
256
- background-color: var(--iui-color-picker-selected-color);
257
- }
234
+ box-shadow: rgba(var(--iui-color-foreground-accessory-rgb), var(--iui-opacity-1)) 0 0 0 $iui-xxs - 1,
235
+ inset 0 0 0 $iui-xxs - 1 rgba(var(--iui-color-foreground-accessory-rgb), var(--iui-opacity-6));
236
+ background-color: var(--iui-color-picker-selected-color);
258
237
 
259
238
  &:hover {
260
- @include themed {
261
- box-shadow: $iui-hover-box-shadow;
262
- }
239
+ box-shadow: $iui-hover-box-shadow;
263
240
  }
264
241
 
265
242
  @include iui-focus($offset: 0, $thickness: 2px);
266
243
  }
244
+
245
+ @mixin iui-transparent-background($size: $iui-m) {
246
+ background-position: 0 0, ($size * 0.5) ($size * 0.5);
247
+ background-size: $size $size;
248
+ @include themed {
249
+ background-image: repeating-linear-gradient(
250
+ 45deg,
251
+ t(iui-color-background-3) 25%,
252
+ transparent 25%,
253
+ transparent 75%,
254
+ t(iui-color-background-3) 75%,
255
+ t(iui-color-background-3)
256
+ ),
257
+ repeating-linear-gradient(
258
+ 45deg,
259
+ t(iui-color-background-3) 25%,
260
+ t(iui-color-background-5) 25%,
261
+ t(iui-color-background-5) 75%,
262
+ t(iui-color-background-3) 75%,
263
+ t(iui-color-background-3)
264
+ );
265
+ }
266
+ }
@@ -15,64 +15,24 @@
15
15
  color: rgba(t(iui-color-foreground-body-rgb), t(iui-opacity-2));
16
16
  }
17
17
 
18
- > input {
19
- width: 0;
20
- height: 0;
21
- appearance: none;
22
- opacity: 0;
23
- position: absolute;
24
- }
25
-
26
- &.iui-disabled {
27
- cursor: not-allowed;
28
- }
29
-
30
- .iui-checkbox-checkmark,
31
- .iui-radio-dot {
32
- width: $iui-icons-default;
33
- height: $iui-icons-default;
34
- margin: 0;
35
- display: flex;
36
- flex-shrink: 0;
37
- justify-content: center;
38
- align-items: center;
39
- position: relative;
40
- isolation: isolate;
41
- @include themed {
42
- border-color: rgba(t(iui-color-foreground-body-rgb), t(iui-opacity-4));
43
- background-color: t(iui-color-background-1);
44
- }
18
+ gap: $iui-s;
45
19
 
46
- &::after {
47
- content: '';
48
- position: absolute;
49
- inset: 0;
50
- z-index: -1;
51
- transition: border-color $iui-speed-fast ease-out;
52
- border-radius: inherit;
53
- border-style: solid;
54
- border-width: 1px;
55
- border-color: inherit;
20
+ // #region flex gap fallback
21
+ > * + * {
22
+ margin-left: $iui-s;
23
+ @supports (gap: $iui-s) {
24
+ margin-left: 0;
56
25
  }
26
+ }
27
+ // #endregion
57
28
 
58
- svg:not(.iui-radial) {
59
- width: 100%;
60
- height: 100%;
61
- @include themed {
62
- fill: t(iui-icons-color-primary);
63
- }
64
-
65
- > * {
66
- opacity: 0;
67
- @media (prefers-reduced-motion: no-preference) {
68
- transition: opacity $iui-speed-fast ease;
69
- }
70
- }
71
- }
29
+ &.iui-loading {
30
+ cursor: wait;
31
+ color: var(--iui-text-color-muted);
72
32
  }
73
33
 
74
- > .iui-label {
75
- margin-right: $iui-s;
34
+ > .iui-checkbox-label,
35
+ > .iui-radio-label {
76
36
  display: flex;
77
37
  align-items: center;
78
38
 
@@ -80,95 +40,16 @@
80
40
  width: $iui-icons-default;
81
41
  height: $iui-icons-default;
82
42
  vertical-align: middle;
83
- @include themed {
84
- fill: t(iui-icons-color-actionable);
85
- }
43
+ fill: currentColor;
86
44
  }
87
45
  }
88
46
 
89
- // For labels on the left
90
- .iui-checkbox-checkmark ~ .iui-label,
91
- .iui-radio-dot ~ .iui-label {
92
- margin-left: $iui-s;
93
- margin-right: 0;
94
- }
95
-
96
- // Adds hover to everything that is not disabled
97
- &:hover > input:enabled ~ .iui-checkbox-checkmark,
98
- &:hover > input:enabled ~ .iui-radio-dot {
99
- @include themed {
100
- border-color: rgba(t(iui-color-foreground-body-rgb), t(iui-opacity-2));
101
- }
102
- }
103
-
104
- // Selected checkboxes & radios border opacity increase
105
- input:checked ~ .iui-checkbox-checkmark,
106
- input:indeterminate ~ .iui-checkbox-checkmark,
107
- input:checked ~ .iui-radio-dot {
108
- @include themed {
109
- border-color: rgba(t(iui-color-foreground-body-rgb), t(iui-opacity-3));
110
- }
111
- }
112
-
113
- // Show check, partial, or dot depending on type
114
- input:checked ~ .iui-checkbox-checkmark .iui-check,
115
- input:indeterminate ~ .iui-checkbox-checkmark .iui-check-partial,
116
- input:checked ~ .iui-radio-dot circle {
117
- opacity: 1;
118
- @media (prefers-reduced-motion: no-preference) {
119
- transition: opacity $iui-speed-fast ease;
120
- }
121
- }
122
-
123
- // Adds focus to enabled checkbox & radio
124
- input:enabled {
125
- &:focus {
126
- ~ .iui-checkbox-checkmark,
127
- ~ .iui-radio-dot {
128
- @include themed {
129
- outline: 2px solid t(iui-color-foreground-primary);
130
- }
131
- outline-offset: -1px;
132
- }
133
- }
134
-
135
- &:focus:not(:focus-visible) {
136
- ~ .iui-checkbox-checkmark,
137
- ~ .iui-radio-dot {
138
- outline: none;
139
- }
140
- }
141
- }
142
-
143
- // Styles disabled checkbox & radio
144
- input:disabled ~ .iui-checkbox-checkmark,
145
- input:disabled ~ .iui-radio-dot {
146
- cursor: not-allowed;
147
- @include themed {
148
- background-color: t(iui-color-background-disabled);
149
- border-color: t(iui-color-background-disabled);
150
- }
151
- }
152
-
153
- // Styles disabled checks
154
- input:disabled ~ .iui-checkbox-checkmark svg,
155
- input:disabled ~ .iui-radio-dot svg {
156
- @include themed {
157
- fill: t(iui-icons-color-actionable-disabled);
158
- }
159
- }
160
-
161
- // Styles disabled labels
162
- input:disabled ~ .iui-label {
47
+ &.iui-disabled {
163
48
  cursor: not-allowed;
164
- @include themed {
165
- color: t(iui-text-color-muted);
166
- }
49
+ color: var(--iui-text-color-muted);
167
50
 
168
51
  svg {
169
- @include themed {
170
- fill: t(iui-icons-color-actionable-disabled);
171
- }
52
+ fill: var(--iui-icons-color-actionable-disabled);
172
53
  }
173
54
  }
174
55
 
@@ -4,63 +4,97 @@
4
4
  @import '../icon/index';
5
5
 
6
6
  @mixin iui-checkbox {
7
- @include iui-inputs-checkbox-radio;
7
+ &-wrapper {
8
+ @include iui-inputs-checkbox-radio;
9
+ }
10
+
11
+ --_iui-checkbox-checkmark-svg: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="m6.5 12.5-4.5-4.5 1.5-1.5 3 3 6-6 1.5 1.5z" /></svg>');
12
+ --_iui-checkbox-indeterminate-svg: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="m2.75 6.875h10.5v2.25h-10.5z" /></svg>');
13
+ --_iui-checkbox-unchecked-svg: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 16"></svg>');
14
+
15
+ --_iui-checkbox-svg-color: var(--iui-color-foreground-primary);
16
+ --_iui-checkbox-border-color: rgba(var(--iui-color-foreground-body-rgb), var(--iui-opacity-4));
17
+ --_iui-checkbox-background-color: var(--iui-color-background-1);
18
+ --_iui-checkbox-mask-image: initial;
8
19
 
9
- .iui-checkbox-checkmark {
10
- border-radius: $iui-border-radius;
20
+ appearance: none; // disable default browser styles
21
+ margin: 0;
22
+ width: $iui-icons-default;
23
+ height: $iui-icons-default;
24
+ position: relative;
25
+ border-radius: $iui-border-radius;
26
+ background-color: var(--_iui-checkbox-background-color);
27
+ cursor: pointer;
28
+
29
+ &::before {
30
+ content: '';
31
+ position: absolute;
32
+ inset: 0;
33
+ transition: border-color $iui-speed-fast ease-out;
34
+ border-radius: inherit;
35
+ border-style: solid;
36
+ border-width: 1px;
37
+ border-color: var(--_iui-checkbox-border-color);
11
38
  }
12
39
 
13
- &.iui-loading {
14
- cursor: wait;
40
+ &::after {
41
+ content: '';
42
+ position: absolute;
43
+ inset: 0;
44
+ background-color: var(--_iui-checkbox-svg-color);
45
+ mask: var(--_iui-checkbox-mask-image) no-repeat center;
46
+ }
15
47
 
16
- input ~ .iui-checkbox-checkmark {
17
- border-color: transparent;
18
- background-color: transparent;
19
- }
48
+ &:not(:checked) {
49
+ --_iui-checkbox-mask-image: var(--_iui-checkbox-unchecked-svg);
50
+ }
20
51
 
21
- input:disabled ~ .iui-checkbox-checkmark {
22
- cursor: wait;
23
- }
52
+ &:checked {
53
+ --_iui-checkbox-border-color: rgba(var(--iui-color-foreground-body-rgb), var(--iui-opacity-3));
54
+ --_iui-checkbox-mask-image: var(--_iui-checkbox-checkmark-svg);
55
+ }
24
56
 
25
- input:disabled ~ .iui-label {
26
- cursor: wait;
27
- }
57
+ &:indeterminate {
58
+ --_iui-checkbox-border-color: rgba(var(--iui-color-foreground-body-rgb), var(--iui-opacity-3));
59
+ --_iui-checkbox-mask-image: var(--_iui-checkbox-indeterminate-svg);
28
60
  }
29
61
 
30
- &-visibility {
31
- // Adds hover to everything that is not disabled
32
- &:hover > input:enabled ~ .iui-checkbox-checkmark {
33
- @include themed {
34
- background-color: rgba(t(iui-color-foreground-body-rgb), t(iui-opacity-6));
35
- }
36
- }
62
+ &:hover {
63
+ --_iui-checkbox-border-color: rgba(var(--iui-color-foreground-body-rgb), var(--iui-opacity-2));
64
+ }
37
65
 
38
- input ~ .iui-checkbox-checkmark::after,
39
- &:hover > input:enabled ~ .iui-checkbox-checkmark::after {
40
- border: none;
41
- }
66
+ @include iui-focus($thickness: 2px);
42
67
 
43
- input ~ .iui-checkbox-checkmark {
44
- background-color: transparent;
45
- }
68
+ &.iui-checkbox-visibility {
69
+ --_iui-checkbox-checkmark-svg: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="m8 2.99051a8.81883 8.81883 0 0 0 -8 4.95062 8.74664 8.74664 0 0 0 8 5.06836 8.63266 8.63266 0 0 0 8-5.06836 8.83631 8.83631 0 0 0 -8-4.95062zm-1.31445 1.86981a1.47663 1.47663 0 1 1 -1.47663 1.47668 1.47665 1.47665 0 0 1 1.47663-1.47668zm1.31445 6.64917a7.17486 7.17486 0 0 1 -6.30475-3.55237 7.4952 7.4952 0 0 1 2.81475-2.6336 3.83956 3.83956 0 1 0 6.98126.00244 7.522 7.522 0 0 1 2.81774 2.63916 7.09785 7.09785 0 0 1 -6.309 3.54437z" /></svg>');
70
+ --_iui-checkbox-indeterminate-svg: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="m8 3v7.9a4.01179 4.01179 0 0 0 4-4 6.7509 6.7509 0 0 0 -.2-1.4l.1.1a6.89429 6.89429 0 0 1 2.4 2.4 8.39088 8.39088 0 0 1 -2.3 2.3 6.89412 6.89412 0 0 1 -3.9 1.2c-.03345 0-.06653-.00677-.1-.0072v1.5072a8.90686 8.90686 0 0 0 8-5 8.90686 8.90686 0 0 0 -8-5z" opacity=".33" /><path d="m8 0a1 1 0 0 0 -1 1v2.07135a8.91637 8.91637 0 0 0 -7 4.92865 8.91637 8.91637 0 0 0 7 4.92865v2.07135a1 1 0 0 0 2 0v-14a1 1 0 0 0 -1-1zm-1.5 4.9a1.55426 1.55426 0 0 1 .5.087v2.81451a1.40746 1.40746 0 0 1 -.5.09849 1.538 1.538 0 0 1 -1.5-1.5 1.53794 1.53794 0 0 1 1.5-1.5zm-2.3 5.4a6.97279 6.97279 0 0 1 -2.5-2.3 6.89429 6.89429 0 0 1 2.4-2.4c.1 0 .1-.1.2-.1a3.194 3.194 0 0 0 -.3 1.4 4.0047 4.0047 0 0 0 3 3.857v.65289a6.37491 6.37491 0 0 1 -2.8-1.10989z" /></svg>');
71
+ --_iui-checkbox-unchecked-svg: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="m1.70671 12.879 11.17218-11.17219 1.4142 1.4142-11.17218 11.17218zm.99329-1.679 1.1-1.1a5.06317 5.06317 0 0 1 -2-2.1 7.48268 7.48268 0 0 1 6.2-3.5 4.86877 4.86877 0 0 1 1.2.1l1.3-1.3a10.07431 10.07431 0 0 0 -2.5-.3 8.84129 8.84129 0 0 0 -8 5 8.42455 8.42455 0 0 0 2.7 3.2zm10.7-6.4-1.1 1.1a7.08625 7.08625 0 0 1 2 2.1 7.50323 7.50323 0 0 1 -6.2 3.5 8.31665 8.31665 0 0 1 -1.3-.2l-1.3 1.3a8.909 8.909 0 0 0 6.4-.5 9.04344 9.04344 0 0 0 4.1-4.1 9.168 9.168 0 0 0 -2.6-3.2z" /></svg>');
46
72
 
47
- input:checked ~ .iui-checkbox-checkmark .iui-uncheck,
48
- input:indeterminate ~ .iui-checkbox-checkmark .iui-uncheck {
49
- opacity: 0;
50
- }
73
+ --_iui-checkbox-border-color: transparent;
74
+ --_iui-checkbox-background-color: transparent;
51
75
 
52
- input ~ .iui-checkbox-checkmark .iui-uncheck {
53
- opacity: 1;
54
- transition: opacity $iui-speed-fast ease;
55
- @include themed {
56
- fill: t(iui-icons-color-actionable);
57
- }
76
+ &:where(:not(:checked):not(:indeterminate)) {
77
+ --_iui-checkbox-svg-color: var(--iui-icons-color-actionable);
58
78
  }
59
79
 
60
- input:disabled ~ .iui-checkbox-checkmark .iui-uncheck {
61
- @include themed {
62
- fill: t(iui-icons-color-actionable-disabled);
63
- }
80
+ &:where(:hover) {
81
+ --_iui-checkbox-border-color: transparent;
82
+ --_iui-checkbox-background-color: rgba(var(--iui-color-foreground-body-rgb), var(--iui-opacity-6));
64
83
  }
65
84
  }
85
+
86
+ &:disabled {
87
+ --_iui-checkbox-svg-color: var(--iui-icons-color-actionable-disabled);
88
+ --_iui-checkbox-border-color: var(--iui-color-background-disabled);
89
+ --_iui-checkbox-background-color: var(--iui-color-background-disabled);
90
+ cursor: not-allowed;
91
+ }
92
+
93
+ &.iui-loading {
94
+ --_iui-checkbox-border-color: transparent;
95
+ --_iui-checkbox-background-color: transparent;
96
+ opacity: 0;
97
+ position: absolute;
98
+ cursor: wait;
99
+ }
66
100
  }
@@ -66,8 +66,8 @@
66
66
  // #endregion
67
67
 
68
68
  // Appropriate spacing even if no text label is given
69
- .iui-checkbox,
70
- .iui-radio {
69
+ .iui-checkbox-wrapper,
70
+ .iui-radio-wrapper {
71
71
  min-height: $iui-line-height;
72
72
  }
73
73
 
@@ -3,9 +3,20 @@
3
3
  @import '../style/index';
4
4
 
5
5
  @mixin iui-radio {
6
- @include iui-inputs-checkbox-radio;
6
+ &-wrapper {
7
+ @include iui-inputs-checkbox-radio;
8
+ }
9
+
10
+ @include iui-checkbox;
11
+
12
+ border-radius: 50%;
13
+
14
+ &:checked {
15
+ --_iui-checkbox-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" ><circle cx="8" cy="8" r="4" /></svg>');
16
+ }
7
17
 
8
- .iui-radio-dot {
9
- border-radius: 50%;
18
+ &:not(:checked),
19
+ &:indeterminate {
20
+ --_iui-checkbox-mask-image: var(--_iui-checkbox-unchecked-svg);
10
21
  }
11
22
  }
@@ -19,7 +19,8 @@
19
19
  transform: translateX(-50%) translateY(-170%);
20
20
  transition: background-color $iui-speed-fast ease-in-out;
21
21
  @media (prefers-reduced-motion: no-preference) {
22
- transition: background-color $iui-speed-fast ease-in-out, transform $iui-speed-slow ease-in-out, box-shadow $iui-speed-fast ease-in-out;
22
+ transition: background-color $iui-speed-fast ease-in-out, transform $iui-speed-slow ease-in-out,
23
+ box-shadow $iui-speed-fast ease-in-out;
23
24
  }
24
25
 
25
26
  &:hover {
@@ -37,6 +37,7 @@ $iui-expander-button-width: ($iui-icons-default) + ($iui-expander-inline-padding
37
37
  display: flex;
38
38
  cursor: pointer;
39
39
  padding: 0 $iui-s;
40
+ align-items: center;
40
41
 
41
42
  &-checkbox {
42
43
  margin-right: $iui-s;