@carbon/styles 1.26.1 → 1.27.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.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/styles",
3
3
  "description": "Styles for the Carbon Design System",
4
- "version": "1.26.1",
4
+ "version": "1.27.0",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
7
7
  "type": "git",
@@ -32,21 +32,21 @@
32
32
  "sass": "^1.33.0"
33
33
  },
34
34
  "dependencies": {
35
- "@carbon/colors": "^11.13.0",
35
+ "@carbon/colors": "^11.14.0",
36
36
  "@carbon/feature-flags": "^0.13.0",
37
- "@carbon/grid": "^11.12.0",
38
- "@carbon/layout": "^11.12.0",
37
+ "@carbon/grid": "^11.13.0",
38
+ "@carbon/layout": "^11.13.0",
39
39
  "@carbon/motion": "^11.10.0",
40
- "@carbon/themes": "^11.17.0",
41
- "@carbon/type": "^11.16.0",
40
+ "@carbon/themes": "^11.18.0",
41
+ "@carbon/type": "^11.17.0",
42
42
  "@ibm/plex": "6.0.0-next.6"
43
43
  },
44
44
  "devDependencies": {
45
- "@carbon/test-utils": "^10.27.0",
45
+ "@carbon/test-utils": "^10.28.0",
46
46
  "autoprefixer": "^10.4.7",
47
47
  "browserslist-config-carbon": "^11.1.0",
48
48
  "css": "^3.0.0",
49
- "cssnano": "^5.1.9",
49
+ "cssnano": "^6.0.0",
50
50
  "lodash.isequal": "^4.5.0",
51
51
  "postcss": "^8.4.14",
52
52
  "postcss-flexbugs-fixes": "^5.0.2",
@@ -59,5 +59,5 @@
59
59
  "scss/**/*.css",
60
60
  "css/**/*.css"
61
61
  ],
62
- "gitHead": "722f2ebbad8ce2ebf41385a1e3dae5b9ca279a5b"
62
+ "gitHead": "9d9c35494255b0ad0996bad46ffaf093cdd20012"
63
63
  }
@@ -30,17 +30,20 @@ $button-height: 3rem !default;
30
30
  /// @type Value
31
31
  /// @access public
32
32
  /// @group button
33
- $button-padding: calc(0.875rem - 3px) 63px calc(0.875rem - 3px) 15px !default;
33
+ $button-padding: calc(0.875rem - 3px) calc(#{$spacing-10} - 1px)
34
+ calc(0.875rem - 3px) calc(#{$spacing-05} - 1px) !default;
34
35
 
35
36
  /// @type Value
36
37
  /// @access public
37
38
  /// @group button
38
- $button-padding-field: calc(0.675rem - 3px) 60px calc(0.675rem - 3px) 12px !default;
39
+ $button-padding-field: calc(0.675rem - 3px) calc(#{$spacing-10} - 4px)
40
+ calc(0.675rem - 3px) calc(#{$spacing-05} - 4px) !default;
39
41
 
40
42
  /// @type Value
41
43
  /// @access public
42
44
  /// @group button
43
- $button-padding-sm: calc(0.375rem - 3px) 60px calc(0.375rem - 3px) 12px !default;
45
+ $button-padding-sm: calc(0.375rem - 3px) calc(#{$spacing-10} - 4px)
46
+ calc(0.375rem - 3px) calc(#{$spacing-05} - 4px) !default;
44
47
 
45
48
  /// @type Number
46
49
  /// @access public
@@ -51,19 +54,19 @@ $button-padding-lg: $spacing-04 !default;
51
54
  /// @access public
52
55
  /// @group button
53
56
  /// Uses the same padding-y as normal buttons, but removes extra padding-right
54
- $button-padding-ghost: calc(0.875rem - 3px) 16px !default;
57
+ $button-padding-ghost: calc(0.875rem - 3px) $spacing-05 !default;
55
58
 
56
59
  /// @type Number
57
60
  /// @access public
58
61
  /// @group button
59
62
  /// Uses the same padding-y as field buttons, but removes extra padding-right
60
- $button-padding-ghost-field: calc(0.675rem - 3px) 16px !default;
63
+ $button-padding-ghost-field: calc(0.675rem - 3px) $spacing-05 !default;
61
64
 
62
65
  /// @type Number
63
66
  /// @access public
64
67
  /// @group button
65
68
  /// Uses the same padding-y as small buttons, but removes extra padding-right
66
- $button-padding-ghost-sm: calc(0.375rem - 3px) 16px !default;
69
+ $button-padding-ghost-sm: calc(0.375rem - 3px) $spacing-05 !default;
67
70
 
68
71
  /// @type Number
69
72
  /// @access public
@@ -15,6 +15,10 @@
15
15
  @use '../../utilities/visually-hidden' as *;
16
16
 
17
17
  @mixin checkbox {
18
+ .#{$prefix}--checkbox-group {
19
+ @include reset;
20
+ }
21
+
18
22
  // Spacing between checkboxes
19
23
  .#{$prefix}--form-item.#{$prefix}--checkbox-wrapper {
20
24
  position: relative;
@@ -180,24 +184,125 @@
180
184
  background-color: $icon-disabled;
181
185
  }
182
186
 
187
+ //----------------------------------------------
188
+ // Invalid + warn
189
+ // ---------------------------------------------
190
+ .#{$prefix}--checkbox-group[data-invalid] .cds--checkbox-label::before,
191
+ .#{$prefix}--checkbox-wrapper--invalid .cds--checkbox-label::before,
192
+ .#{$prefix}--checkbox-wrapper--invalid
193
+ .#{$prefix}--checkbox:checked
194
+ + .#{$prefix}--checkbox-label::before {
195
+ border: 1px solid $support-error;
196
+ }
197
+
198
+ // checkbox group overrides for individual validation checkbox
199
+ .#{$prefix}--checkbox-group
200
+ .#{$prefix}--checkbox-wrapper--invalid
201
+ > .#{$prefix}--checkbox__validation-msg,
202
+ .#{$prefix}--checkbox-group
203
+ .#{$prefix}--checkbox-wrapper--warning
204
+ > .#{$prefix}--checkbox__validation-msg,
205
+ .#{$prefix}--checkbox-group
206
+ .#{$prefix}--checkbox-wrapper
207
+ > .#{$prefix}--form__helper-text {
208
+ display: none;
209
+ }
210
+
211
+ .#{$prefix}--checkbox-group:not(.#{$prefix}--checkbox-group[data-invalid])
212
+ .#{$prefix}--checkbox-wrapper--invalid
213
+ .cds--checkbox-label::before,
214
+ .#{$prefix}--checkbox-group:not(.#{$prefix}--checkbox-group[data-invalid])
215
+ .#{$prefix}--checkbox-wrapper--invalid
216
+ .#{$prefix}--checkbox:checked
217
+ + .#{$prefix}--checkbox-label::before {
218
+ border: 1px solid $icon-primary;
219
+ }
220
+
221
+ .#{$prefix}--checkbox-group__validation-msg,
222
+ .#{$prefix}--checkbox__validation-msg {
223
+ display: none;
224
+ align-items: flex-end;
225
+ margin-top: $spacing-02;
226
+ }
227
+
228
+ .#{$prefix}--checkbox__invalid-icon {
229
+ margin: 0 rem(1px) 0 rem(3px);
230
+ fill: $support-error;
231
+ }
232
+
233
+ .#{$prefix}--checkbox__invalid-icon--warning {
234
+ fill: $support-warning;
235
+ }
236
+
237
+ .#{$prefix}--checkbox__invalid-icon--warning path:first-of-type {
238
+ fill: #000000;
239
+ }
240
+
241
+ .#{$prefix}--checkbox-group--invalid
242
+ .#{$prefix}--checkbox-group__validation-msg,
243
+ .#{$prefix}--checkbox-group--warning
244
+ .#{$prefix}--checkbox-group__validation-msg,
245
+ .#{$prefix}--checkbox-wrapper--invalid
246
+ > .#{$prefix}--checkbox__validation-msg,
247
+ .#{$prefix}--checkbox-wrapper--warning
248
+ > .#{$prefix}--checkbox__validation-msg {
249
+ display: flex;
250
+ }
251
+
252
+ .#{$prefix}--checkbox-group--invalid
253
+ .#{$prefix}--checkbox-group__validation-msg
254
+ .#{$prefix}--form-requirement,
255
+ .#{$prefix}--checkbox-group--warning
256
+ .#{$prefix}--checkbox-group__validation-msg
257
+ .#{$prefix}--form-requirement,
258
+ .#{$prefix}--checkbox-wrapper--invalid
259
+ .#{$prefix}--checkbox__validation-msg
260
+ .#{$prefix}--form-requirement,
261
+ .#{$prefix}--checkbox-wrapper--warning
262
+ .#{$prefix}--checkbox__validation-msg
263
+ .#{$prefix}--form-requirement {
264
+ display: block;
265
+ overflow: visible;
266
+ max-height: 100%;
267
+ margin-top: 0;
268
+ margin-left: $spacing-03;
269
+ }
270
+
271
+ .#{$prefix}--checkbox-group--invalid
272
+ .#{$prefix}--checkbox-group__validation-msg
273
+ .#{$prefix}--form-requirement,
274
+ .#{$prefix}--checkbox-wrapper--invalid
275
+ .#{$prefix}--checkbox__validation-msg
276
+ .#{$prefix}--form-requirement {
277
+ color: $text-error;
278
+ }
279
+
183
280
  //----------------------------------------------
184
281
  // Read-only
185
282
  // ---------------------------------------------
283
+ .#{$prefix}--checkbox-group--readonly .#{$prefix}--checkbox-label,
186
284
  .#{$prefix}--checkbox-wrapper--readonly .#{$prefix}--checkbox-label {
187
285
  cursor: default;
188
286
  }
189
287
 
288
+ .#{$prefix}--checkbox-group--readonly .#{$prefix}--checkbox-label-text,
190
289
  .#{$prefix}--checkbox-wrapper--readonly .#{$prefix}--checkbox-label-text {
191
290
  cursor: text;
192
291
  user-select: text;
193
292
  }
194
293
 
294
+ .#{$prefix}--checkbox-group--readonly
295
+ .#{$prefix}--checkbox
296
+ + .#{$prefix}--checkbox-label::before,
195
297
  .#{$prefix}--checkbox-wrapper--readonly
196
298
  .#{$prefix}--checkbox
197
299
  + .#{$prefix}--checkbox-label::before {
198
300
  border-color: $icon-disabled;
199
301
  }
200
302
 
303
+ .#{$prefix}--checkbox-group--readonly
304
+ .#{$prefix}--checkbox:checked
305
+ + .#{$prefix}--checkbox-label::before,
201
306
  .#{$prefix}--checkbox-wrapper--readonly
202
307
  .#{$prefix}--checkbox:checked
203
308
  + .#{$prefix}--checkbox-label::before {
@@ -205,6 +310,9 @@
205
310
  background: transparent;
206
311
  }
207
312
 
313
+ .#{$prefix}--checkbox-group--readonly
314
+ .#{$prefix}--checkbox:checked
315
+ + .#{$prefix}--checkbox-label::after,
208
316
  .#{$prefix}--checkbox-wrapper--readonly
209
317
  .#{$prefix}--checkbox:checked
210
318
  + .#{$prefix}--checkbox-label::after {
@@ -54,6 +54,10 @@
54
54
  background-color: transparent;
55
55
  }
56
56
 
57
+ .#{$prefix}--combo-box--readonly .#{$prefix}--text-input {
58
+ border-bottom-color: $border-subtle;
59
+ }
60
+
57
61
  .#{$prefix}--combo-box--readonly .#{$prefix}--list-box__menu-icon,
58
62
  .#{$prefix}--combo-box--readonly .#{$prefix}--list-box__selection {
59
63
  cursor: default;
@@ -113,21 +113,36 @@
113
113
  }
114
114
  }
115
115
 
116
- .#{$prefix}--content-switcher-btn:first-child {
116
+ .#{$prefix}--content-switcher:not(.#{$prefix}--content-switcher--icon-only)
117
+ .#{$prefix}--content-switcher-btn:first-child {
117
118
  border-left: rem(1px) solid $border-inverse;
118
119
  border-bottom-left-radius: rem(4px);
119
120
  border-top-left-radius: rem(4px);
121
+
122
+ &:disabled {
123
+ border-color: $border-disabled;
124
+ color: $text-disabled;
125
+ }
120
126
  }
121
127
 
122
- .#{$prefix}--content-switcher-btn:last-child {
128
+ .#{$prefix}--content-switcher:not(.#{$prefix}--content-switcher--icon-only)
129
+ .#{$prefix}--content-switcher-btn:last-child {
123
130
  border-right: rem(1px) solid $border-inverse;
124
131
  border-bottom-right-radius: rem(4px);
125
132
  border-top-right-radius: rem(4px);
133
+
134
+ &:disabled {
135
+ border-color: $border-disabled;
136
+ color: $text-disabled;
137
+ }
126
138
  }
127
139
 
128
- .#{$prefix}--content-switcher--selected,
129
- .#{$prefix}--content-switcher--selected:first-child,
130
- .#{$prefix}--content-switcher--selected:last-child {
140
+ .#{$prefix}--content-switcher
141
+ .#{$prefix}--content-switcher-btn.#{$prefix}--content-switcher--selected,
142
+ .#{$prefix}--content-switcher
143
+ .#{$prefix}--content-switcher-btn.#{$prefix}--content-switcher--selected:first-child,
144
+ .#{$prefix}--content-switcher
145
+ .#{$prefix}--content-switcher-btn.#{$prefix}--content-switcher--selected:last-child {
131
146
  border: 0;
132
147
  }
133
148
 
@@ -142,7 +157,8 @@
142
157
  content: '';
143
158
  }
144
159
 
145
- .#{$prefix}--content-switcher-btn:first-of-type::before {
160
+ .#{$prefix}--content-switcher:not(.#{$prefix}--content-switcher--icon-only)
161
+ .#{$prefix}--content-switcher-btn:first-of-type::before {
146
162
  display: none;
147
163
  }
148
164
 
@@ -218,4 +234,119 @@
218
234
  .#{$prefix}--content-switcher-btn:focus {
219
235
  @include high-contrast-mode('focus');
220
236
  }
237
+
238
+ // Icon Only overrides
239
+ .#{$prefix}--content-switcher--icon-only {
240
+ justify-content: flex-start;
241
+ }
242
+
243
+ .#{$prefix}--content-switcher--icon-only
244
+ .#{$prefix}--content-switcher-popover__wrapper:first-child
245
+ .#{$prefix}--content-switcher-btn {
246
+ border-left: rem(1px) solid $border-inverse;
247
+ border-bottom-left-radius: rem(4px);
248
+ border-top-left-radius: rem(4px);
249
+ }
250
+
251
+ .#{$prefix}--content-switcher--icon-only
252
+ .#{$prefix}--content-switcher-popover__wrapper:first-child
253
+ .#{$prefix}--content-switcher--selected[disabled],
254
+ .#{$prefix}--content-switcher--icon-only
255
+ .#{$prefix}--content-switcher-popover__wrapper:last-child
256
+ .#{$prefix}--content-switcher--selected[disabled] {
257
+ border-color: $layer-selected-disabled;
258
+ }
259
+
260
+ .#{$prefix}--content-switcher--icon-only
261
+ .#{$prefix}--content-switcher-popover__wrapper:last-child
262
+ .#{$prefix}--content-switcher-btn {
263
+ border-right: rem(1px) solid $border-inverse;
264
+ border-bottom-right-radius: rem(4px);
265
+ border-top-right-radius: rem(4px);
266
+ }
267
+
268
+ .#{$prefix}--content-switcher--icon-only
269
+ .#{$prefix}--content-switcher-popover__wrapper:last-child
270
+ .#{$prefix}--content-switcher-btn.#{$prefix}--content-switcher--selected,
271
+ .#{$prefix}--content-switcher--icon-only
272
+ .#{$prefix}--content-switcher-popover__wrapper:first-child
273
+ .#{$prefix}--content-switcher-btn.#{$prefix}--content-switcher--selected {
274
+ border-color: $background;
275
+ }
276
+
277
+ .#{$prefix}--content-switcher--lg .#{$prefix}--content-switcher-btn {
278
+ // accounts for the larger icon sizes to keep the switcher at 48px
279
+ padding-right: rem(14px);
280
+ padding-left: rem(14px);
281
+ }
282
+
283
+ .#{$prefix}--content-switcher--lg .#{$prefix}--content-switcher-btn svg {
284
+ width: 20px;
285
+ height: 20px;
286
+ }
287
+
288
+ .#{$prefix}--content-switcher--icon-only
289
+ .#{$prefix}--content-switcher-btn
290
+ svg {
291
+ fill: $icon-primary;
292
+ }
293
+
294
+ .#{$prefix}--content-switcher--icon-only
295
+ .#{$prefix}--content-switcher-btn.#{$prefix}--content-switcher--selected
296
+ svg {
297
+ z-index: 1;
298
+ fill: $icon-inverse;
299
+ }
300
+
301
+ .#{$prefix}--content-switcher--icon-only.#{$prefix}--content-switcher--sm
302
+ .#{$prefix}--btn--sm {
303
+ height: 2rem;
304
+ }
305
+
306
+ // Subtle border overrides
307
+ .#{$prefix}--content-switcher--icon-only
308
+ .#{$prefix}--content-switcher-popover__wrapper:first-of-type
309
+ .#{$prefix}--content-switcher-btn::before {
310
+ display: none;
311
+ }
312
+
313
+ .#{$prefix}--content-switcher-btn:focus::before,
314
+ .#{$prefix}--content-switcher-popover__wrapper:focus-within
315
+ + .#{$prefix}--content-switcher-popover__wrapper
316
+ .#{$prefix}--content-switcher-btn::before,
317
+ .#{$prefix}--content-switcher-btn:hover::before,
318
+ .#{$prefix}--content-switcher-popover__wrapper:not(.#{$prefix}--content-switcher-popover--disabled):hover
319
+ + .#{$prefix}--content-switcher-popover__wrapper
320
+ .#{$prefix}--content-switcher-btn::before,
321
+ .#{$prefix}--content-switcher--selected::before,
322
+ .#{$prefix}--content-switcher-popover--selected
323
+ + .#{$prefix}--content-switcher-popover__wrapper
324
+ .#{$prefix}--content-switcher-btn::before {
325
+ background-color: transparent;
326
+ }
327
+
328
+ .#{$prefix}--content-switcher--icon-only
329
+ .#{$prefix}--content-switcher-btn[disabled] {
330
+ border-color: $border-inverse;
331
+ }
332
+
333
+ .#{$prefix}--content-switcher--icon-only
334
+ .#{$prefix}--content-switcher-btn[disabled]
335
+ svg {
336
+ fill: $icon-disabled;
337
+ }
338
+
339
+ .#{$prefix}--content-switcher--icon-only
340
+ .#{$prefix}--content-switcher-btn[disabled]:not(.#{$prefix}--content-switcher--selected):hover,
341
+ .#{$prefix}--content-switcher--icon-only
342
+ .#{$prefix}--content-switcher-popover--selected
343
+ + .#{$prefix}--content-switcher-popover--disabled
344
+ .#{$prefix}--content-switcher-btn[disabled]:hover::before {
345
+ background-color: transparent;
346
+ }
347
+
348
+ .#{$prefix}--content-switcher--icon-only
349
+ .#{$prefix}--content-switcher-btn[disabled]:hover::before {
350
+ background-color: $border-subtle;
351
+ }
221
352
  }
@@ -213,6 +213,7 @@
213
213
 
214
214
  // readonly
215
215
  .#{$prefix}--date-picker__input[readonly] {
216
+ border-bottom-color: $border-subtle;
216
217
  background: transparent;
217
218
  cursor: text;
218
219
  }
@@ -477,6 +477,7 @@
477
477
  // readonly
478
478
  .#{$prefix}--dropdown--readonly,
479
479
  .#{$prefix}--dropdown--readonly:hover {
480
+ border-bottom-color: $border-subtle;
480
481
  background-color: transparent;
481
482
  }
482
483
 
@@ -360,4 +360,21 @@
360
360
  .#{$prefix}--date-picker__icon {
361
361
  bottom: $spacing-03;
362
362
  }
363
+
364
+ // Readonly
365
+ .#{$prefix}--date-picker--fluid.#{$prefix}--date-picker--fluid--readonly:not(.#{$prefix}--date-picker--fluid--invalid):not(.#{$prefix}--date-picker--fluid--warn)
366
+ .#{$prefix}--date-picker
367
+ > .#{$prefix}--date-picker-container,
368
+ .#{$prefix}--date-picker--fluid.#{$prefix}--date-picker--fluid--readonly:not(.#{$prefix}--date-picker--fluid--invalid):not(.#{$prefix}--date-picker--fluid--warn)
369
+ .#{$prefix}--date-picker
370
+ .#{$prefix}--date-picker__input {
371
+ border-bottom-color: $border-subtle;
372
+ }
373
+
374
+ .#{$prefix}--date-picker--fluid.#{$prefix}--date-picker--fluid--readonly:not(.#{$prefix}--date-picker--fluid--invalid):not(.#{$prefix}--date-picker--fluid--warn)
375
+ .#{$prefix}--date-picker--range
376
+ > .#{$prefix}--date-picker-container:last-child
377
+ .#{$prefix}--date-picker__input {
378
+ border-left-color: $border-subtle;
379
+ }
363
380
  }
@@ -516,10 +516,12 @@ $list-box-menu-width: rem(300px);
516
516
  .#{$prefix}--list-box
517
517
  .#{$prefix}--list-box__field[aria-expanded='false']
518
518
  + .#{$prefix}--list-box__menu {
519
+ display: none;
519
520
  max-height: 0;
520
521
  }
521
522
 
522
523
  .#{$prefix}--list-box--expanded .#{$prefix}--list-box__menu {
524
+ display: block;
523
525
  // 40px item height * 5.5 items shown
524
526
  max-height: rem(220px);
525
527
  }
@@ -222,6 +222,8 @@
222
222
  .#{$prefix}--modal-header__heading {
223
223
  @include type-style('heading-03');
224
224
 
225
+ // padding should take into account the left and right padding of modal container
226
+ padding-right: calc(20% - $spacing-09);
225
227
  color: $text-primary;
226
228
  }
227
229
 
@@ -119,6 +119,7 @@
119
119
 
120
120
  .#{$prefix}--multi-select.#{$prefix}--multi-select--readonly,
121
121
  .#{$prefix}--multi-select.#{$prefix}--multi-select--readonly:hover {
122
+ border-bottom-color: $border-subtle;
122
123
  background-color: transparent;
123
124
  }
124
125
 
@@ -198,12 +198,10 @@
198
198
  input[type='number']:focus
199
199
  ~ .#{$prefix}--number__controls
200
200
  .#{$prefix}--number__control-btn {
201
- border-bottom-width: 0;
201
+ border-bottom-color: transparent;
202
202
 
203
203
  &:hover {
204
204
  @include focus-outline('outline');
205
-
206
- border: 0;
207
205
  }
208
206
  }
209
207
 
@@ -211,7 +209,7 @@
211
209
  input[type='number'][data-invalid]
212
210
  ~ .#{$prefix}--number__controls
213
211
  .#{$prefix}--number__control-btn {
214
- border-bottom-width: 0;
212
+ border-bottom-color: transparent;
215
213
  }
216
214
 
217
215
  // add invalid outline to number controls only when invalid input is not focused
@@ -437,6 +435,7 @@
437
435
 
438
436
  // Readonly
439
437
  .#{$prefix}--number--readonly input[type='number'] {
438
+ border-bottom-color: $border-subtle;
440
439
  background: transparent;
441
440
  }
442
441
 
@@ -254,6 +254,7 @@
254
254
 
255
255
  // readonly
256
256
  .#{$prefix}--select--readonly .#{$prefix}--select-input {
257
+ border-bottom-color: $border-subtle;
257
258
  background-color: transparent;
258
259
  cursor: default;
259
260
  }
@@ -81,24 +81,52 @@
81
81
 
82
82
  .#{$prefix}--structured-list-row {
83
83
  display: table-row;
84
- border-bottom: 1px solid $border-subtle;
84
+ border-top: 1px solid $border-subtle;
85
85
  transition: background-color motion.$duration-fast-02
86
86
  motion.motion(standard, productive);
87
87
  }
88
88
 
89
+ .#{$prefix}--structured-list-tbody
90
+ .#{$prefix}--structured-list-row:last-child {
91
+ border-bottom: 1px solid $border-subtle;
92
+ }
93
+
94
+ .#{$prefix}--structured-list-row--header-row {
95
+ border: none;
96
+ }
97
+
89
98
  .#{$prefix}--structured-list--selection
90
99
  .#{$prefix}--structured-list-row:hover:not(.#{$prefix}--structured-list-row--header-row):not(.#{$prefix}--structured-list-row--selected) {
91
- border-bottom: 1px solid $background-hover;
92
- background-color: $background-hover;
100
+ border-color: $layer-hover;
101
+ background-color: $layer-hover;
93
102
  cursor: pointer;
94
103
  }
95
104
 
96
- .#{$prefix}--structured-list-row.#{$prefix}--structured-list-row--selected {
97
- background-color: $background-selected;
105
+ .#{$prefix}--structured-list--selection
106
+ .#{$prefix}--structured-list-row:hover:not(.#{$prefix}--structured-list-row--header-row):not(.#{$prefix}--structured-list-row--selected)
107
+ + .#{$prefix}--structured-list-row {
108
+ border-color: $layer-hover;
109
+ }
110
+
111
+ .#{$prefix}--structured-list--selection
112
+ .#{$prefix}--structured-list-row.#{$prefix}--structured-list-row--selected {
113
+ border-color: $layer-selected;
114
+ background-color: $layer-selected;
115
+ }
116
+
117
+ .#{$prefix}--structured-list--selection
118
+ .#{$prefix}--structured-list-row--selected
119
+ + .#{$prefix}--structured-list-row {
120
+ border-color: $layer-selected;
121
+ }
122
+
123
+ .#{$prefix}--structured-list--selection
124
+ .#{$prefix}--structured-list-row.#{$prefix}--structured-list-row--selected
125
+ .#{$prefix}--structured-list-td {
126
+ color: $text-primary;
98
127
  }
99
128
 
100
129
  .#{$prefix}--structured-list-row.#{$prefix}--structured-list-row--header-row {
101
- border-bottom: 1px solid $background-selected;
102
130
  cursor: inherit;
103
131
  }
104
132
 
@@ -110,19 +138,10 @@
110
138
  .#{$prefix}--structured-list--selection
111
139
  .#{$prefix}--structured-list-row:hover:not(.#{$prefix}--structured-list-row--header-row)
112
140
  > .#{$prefix}--structured-list-td,
113
- .#{$prefix}--structured-list-row.#{$prefix}--structured-list-row--selected
114
- > .#{$prefix}--structured-list-td {
115
- color: $text-primary;
116
- }
117
-
118
141
  .#{$prefix}--structured-list--selection
119
- .#{$prefix}--structured-list-row:hover:not(.#{$prefix}--structured-list-row--header-row)
142
+ .#{$prefix}--structured-list-row.#{$prefix}--structured-list-row--selected
120
143
  > .#{$prefix}--structured-list-td {
121
- @if enabled('enable-v11-release') {
122
- border-top: 1px solid $border-subtle;
123
- } @else {
124
- border-top: 1px solid $layer;
125
- }
144
+ color: $text-primary;
126
145
  }
127
146
 
128
147
  .#{$prefix}--structured-list-thead {
@@ -158,9 +177,6 @@
158
177
  display: table-cell;
159
178
  max-width: 36rem;
160
179
  color: $text-secondary;
161
- @if enabled('enable-v11-release') {
162
- border-top: 1px solid $border-subtle;
163
- }
164
180
 
165
181
  transition: color motion.$duration-fast-02
166
182
  motion.motion(standard, productive);
@@ -230,6 +230,13 @@ $icon-tab-size: custom-property.get-var('icon-tab-size', rem(40px));
230
230
  }
231
231
  }
232
232
 
233
+ //-----------------------------
234
+ // Wrapper
235
+ //-----------------------------
236
+ .#{$prefix}--tabs__nav-item-label-wrapper {
237
+ display: flex;
238
+ }
239
+
233
240
  //-----------------------------
234
241
  // Item
235
242
  //-----------------------------
@@ -266,6 +273,19 @@ $icon-tab-size: custom-property.get-var('icon-tab-size', rem(40px));
266
273
  outline $duration-fast-01 motion(standard, productive);
267
274
  }
268
275
 
276
+ //-----------------------------
277
+ // Icon
278
+ //-----------------------------
279
+ .#{$prefix}--tabs__nav-item--icon {
280
+ display: flex;
281
+ align-items: center;
282
+ padding-left: $spacing-03;
283
+ }
284
+
285
+ &.#{$prefix}--tabs--contained .#{$prefix}--tabs__nav-item--icon {
286
+ padding-left: $spacing-05;
287
+ }
288
+
269
289
  //-----------------------------
270
290
  // Link
271
291
  //-----------------------------
@@ -326,8 +346,8 @@ $icon-tab-size: custom-property.get-var('icon-tab-size', rem(40px));
326
346
  overflow-x: visible;
327
347
  }
328
348
 
329
- .#{$prefix}--tabs__nav-item--icon,
330
- &.#{$prefix}--tabs--contained .#{$prefix}--tabs__nav-item--icon {
349
+ .#{$prefix}--tabs__nav-item--icon-only,
350
+ &.#{$prefix}--tabs--contained .#{$prefix}--tabs__nav-item--icon-only {
331
351
  display: flex;
332
352
  width: $icon-tab-size;
333
353
  height: $icon-tab-size;
@@ -112,6 +112,7 @@
112
112
  // Readonly
113
113
  //-----------------------------
114
114
  .#{$prefix}--text-area__wrapper--readonly .#{$prefix}--text-area {
115
+ border-bottom-color: $border-subtle;
115
116
  background: transparent;
116
117
  }
117
118