@carbon/styles 1.114.0 → 1.115.0-rc.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.
Files changed (46) hide show
  1. package/css/styles.css +3354 -1545
  2. package/css/styles.min.css +7 -1
  3. package/package.json +10 -10
  4. package/scss/components/Tearsheet/_index.scss +11 -0
  5. package/scss/components/Tearsheet/_tearsheet.scss +715 -0
  6. package/scss/components/__tests__/data-table-test.js +49 -0
  7. package/scss/components/_index.scss +5 -2
  8. package/scss/components/big-number/_big-number.scss +1 -0
  9. package/scss/components/button/_button.scss +11 -12
  10. package/scss/components/button/_vars.scss +4 -4
  11. package/scss/components/checkbox/_checkbox.scss +69 -26
  12. package/scss/components/combo-box/_combo-box.scss +32 -21
  13. package/scss/components/data-table/action/_data-table-action.scss +54 -22
  14. package/scss/components/data-table/sort/_data-table-sort.scss +37 -3
  15. package/scss/components/date-picker/_date-picker-next.scss +60 -0
  16. package/scss/components/date-picker/_date-picker.scss +73 -0
  17. package/scss/components/date-picker/_flatpickr.scss +10 -0
  18. package/scss/components/dropdown/_dropdown.scss +26 -4
  19. package/scss/components/fluid-date-picker/_fluid-date-picker.scss +95 -11
  20. package/scss/components/fluid-list-box/_fluid-list-box.scss +102 -23
  21. package/scss/components/fluid-number-input/_fluid-number-input.scss +204 -24
  22. package/scss/components/fluid-search/_fluid-search.scss +7 -4
  23. package/scss/components/fluid-select/_fluid-select.scss +31 -2
  24. package/scss/components/fluid-text-input/_fluid-text-input.scss +34 -4
  25. package/scss/components/form/_form.scss +1 -14
  26. package/scss/components/guidebanner/_guidebanner.scss +322 -0
  27. package/scss/components/guidebanner/_index.scss +11 -0
  28. package/scss/components/list-box/_list-box.scss +116 -8
  29. package/scss/components/menu/_menu.scss +18 -1
  30. package/scss/components/multiselect/_multiselect.scss +82 -47
  31. package/scss/components/notifications-panel/_index.scss +11 -0
  32. package/scss/components/notifications-panel/_notifications-panel.scss +459 -0
  33. package/scss/components/number-input/_number-input.scss +94 -8
  34. package/scss/components/radio-button/_radio-button.scss +93 -27
  35. package/scss/components/search/_search.scss +35 -8
  36. package/scss/components/select/_select.scss +65 -5
  37. package/scss/components/tabs/_tabs.scss +2 -1
  38. package/scss/components/tag/_mixins.scss +19 -1
  39. package/scss/components/tag/_tag.scss +46 -16
  40. package/scss/components/text-input/_text-input.scss +53 -121
  41. package/scss/components/tile/_tile.scss +131 -13
  42. package/scss/utilities/_skeleton.scss +7 -1
  43. /package/scss/components/{EditInPlace → edit-in-place}/_edit-in-place.scss +0 -0
  44. /package/scss/components/{EditInPlace → edit-in-place}/_index.scss +0 -0
  45. /package/scss/components/{OptionsTile → options-tile}/_index.scss +0 -0
  46. /package/scss/components/{OptionsTile → options-tile}/_options-tile.scss +0 -0
@@ -0,0 +1,715 @@
1
+ /**
2
+ * Copyright IBM Corp. 2025, 2026
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ @use '../../config' as *;
9
+ @use '../../theme' as *;
10
+ @use '../../type' as *;
11
+ @use '../../spacing' as *;
12
+ @use '../../motion' as *;
13
+ @use '../../breakpoint' as *;
14
+ @use '../../utilities';
15
+ @use '@carbon/layout/scss/convert';
16
+ @use '../../utilities/focus-outline';
17
+ @use '../button/button' as button-mixin;
18
+
19
+ /// Tearsheet styles
20
+ /// @access public
21
+ /// @group tearsheet
22
+ @mixin tearsheet {
23
+ $block-class: #{$prefix}--tearsheet;
24
+ $motion-duration: $duration-moderate-02;
25
+ // viewport, capped at 500px to set an upper limit on the movement speed
26
+ $transform-start: translate3d(0, calc(min(95vh, 500px)), 0);
27
+
28
+ .#{$block-class} {
29
+ // ──────────────────────────────────────────────────────────────
30
+ // Presence animations (enter/exit) - default behavior
31
+ // ──────────────────────────────────────────────────────────────
32
+ &.#{$block-class}:not(.#{$block-class}--keep-mounted) {
33
+ animation: #{$block-class}--presence-tearsheet__enter $motion-duration
34
+ motion(entrance, expressive);
35
+ opacity: 1;
36
+
37
+ // extra specificity to ensure this transition overrides the carbon default
38
+ &.#{$block-class}.#{$block-class} .#{$block-class}__container {
39
+ animation: #{$block-class}--presence-tearsheet--container__enter
40
+ $motion-duration motion(entrance, expressive);
41
+ transform: translate3d(0, 0, 0);
42
+ @media screen and (prefers-reduced-motion: reduce) {
43
+ animation: none;
44
+ }
45
+ }
46
+
47
+ &.#{$block-class}--stacked.is-visible .#{$block-class}__container {
48
+ transform: scaleX(var(--scale-factor));
49
+ }
50
+
51
+ &[data-tearsheet-exiting] {
52
+ animation: #{$block-class}--presence-tearsheet__exit $motion-duration
53
+ motion(exit, expressive) forwards;
54
+
55
+ &.#{$block-class}.#{$block-class} .#{$block-class}__container {
56
+ animation: #{$block-class}--presence-tearsheet--container__exit
57
+ $motion-duration motion(entrance, expressive) forwards;
58
+ @media screen and (prefers-reduced-motion: reduce) {
59
+ animation: none;
60
+ }
61
+ }
62
+ }
63
+ }
64
+
65
+ // ──────────────────────────────────────────────────────────────
66
+ // Traditional visibility toggle when keepMounted is true
67
+ // ──────────────────────────────────────────────────────────────
68
+ &.#{$block-class}--keep-mounted {
69
+ &:not(.is-visible) {
70
+ &.#{$block-class}.#{$block-class} .#{$block-class}__container {
71
+ transform: $transform-start;
72
+ }
73
+ }
74
+ }
75
+
76
+ @keyframes #{$block-class}--presence-tearsheet__enter {
77
+ from {
78
+ opacity: 0;
79
+ transition: none;
80
+ }
81
+ }
82
+
83
+ @keyframes #{$block-class}--presence-tearsheet__exit {
84
+ to {
85
+ opacity: 0;
86
+ }
87
+ }
88
+
89
+ @keyframes #{$block-class}--presence-tearsheet--container__enter {
90
+ from {
91
+ transform: $transform-start;
92
+ transition: none;
93
+ }
94
+ }
95
+
96
+ @keyframes #{$block-class}--presence-tearsheet--container__exit {
97
+ to {
98
+ transform: $transform-start;
99
+ }
100
+ }
101
+
102
+ // ──────────────────────────────────────────────────────────────
103
+ // Container
104
+ // ──────────────────────────────────────────────────────────────
105
+ .#{$block-class}__container {
106
+ align-self: flex-end;
107
+ border: 1px solid $border-subtle-01;
108
+ block-size: 100%;
109
+ inset-block-start: auto;
110
+ max-block-size: calc(
111
+ 100% - var(
112
+ --tearsheet-vertical-gap,
113
+ calc(#{$spacing-11} + #{$spacing-03})
114
+ )
115
+ );
116
+ max-inline-size: var(--tearsheet-max-inline-size, 1312px);
117
+ }
118
+
119
+ &:not(.#{$block-class}--stack-activated.is-visible) {
120
+ .#{$block-class}__container {
121
+ @include breakpoint-down(md) {
122
+ max-block-size: none;
123
+ }
124
+ }
125
+ }
126
+
127
+ &:not(.is-visible) {
128
+ &.#{$block-class}.#{$block-class} .#{$block-class}__container {
129
+ transform: translate3d(0, calc(min(95vh, 500px)), 0);
130
+ }
131
+ }
132
+
133
+ &.#{$block-class}.#{$block-class}--has-ai-label {
134
+ .#{$block-class}__container {
135
+ border: 1px solid transparent;
136
+
137
+ /* override carbon ai removing background gradient */
138
+ background:
139
+ linear-gradient(to top, var(--cds-layer), var(--cds-layer))
140
+ padding-box,
141
+ linear-gradient(
142
+ to bottom,
143
+ var(--cds-ai-border-start, #78a9ff),
144
+ var(--cds-ai-border-end, #d0e2ff)
145
+ )
146
+ border-box,
147
+ linear-gradient(to top, var(--cds-layer), var(--cds-layer)) border-box;
148
+ border-block-end: 0;
149
+ box-shadow: 0 4px 10px 2px $ai-drop-shadow;
150
+ }
151
+
152
+ .#{$block-class}__main-content {
153
+ position: relative;
154
+ @include utilities.ai-popover-gradient('default', 0, 'background');
155
+
156
+ box-shadow: inset 0 -80px 70px -65px $ai-inner-shadow;
157
+ }
158
+ }
159
+
160
+ // Extra specificity to override Carbon default transition
161
+ &.#{$block-class}.#{$block-class} .#{$block-class}__container {
162
+ transition:
163
+ transform $motion-duration motion(entrance, expressive),
164
+ max-block-size $motion-duration motion(entrance, expressive);
165
+
166
+ @media screen and (prefers-reduced-motion: reduce) {
167
+ transition: none;
168
+ }
169
+ }
170
+
171
+ // ──────────────────────────────────────────────────────────────
172
+ // Header
173
+ // ──────────────────────────────────────────────────────────────
174
+ .#{$block-class}__header {
175
+ display: flex;
176
+ flex-wrap: wrap;
177
+ align-content: space-between;
178
+ border-block-end: 1px solid $border-subtle-01;
179
+ margin-block: 0;
180
+ max-block-size: 50vh;
181
+ padding-block-end: 0;
182
+ padding-block-start: $spacing-06;
183
+ padding-inline: $spacing-07;
184
+
185
+ > * {
186
+ flex-basis: 100%;
187
+ }
188
+
189
+ > *:not(
190
+ .#{$block-class}__navigation-bar,
191
+ .#{$block-class}__header-content-wrapper,
192
+ .#{$prefix}--modal-close-button,
193
+ .#{$block-class}__close-button
194
+ ) {
195
+ margin-block-end: $spacing-06;
196
+ }
197
+
198
+ @include breakpoint-down(md) {
199
+ padding-inline: $spacing-05;
200
+ }
201
+ }
202
+
203
+ .#{$prefix}--modal-container--sm .#{$prefix}--modal-header {
204
+ padding-inline-end: $spacing-07;
205
+ }
206
+
207
+ // ──────────────────────────────────────────────────────────────
208
+ // Header content wrapper
209
+ // ──────────────────────────────────────────────────────────────
210
+ .#{$block-class}__header-content-wrapper {
211
+ display: grid;
212
+ flex-basis: unset;
213
+ gap: $spacing-05;
214
+ grid-template-columns: minmax(auto, 40rem) minmax(
215
+ var(--tearsheet-header-title-grid-width, 0),
216
+ 1fr
217
+ );
218
+ inline-size: calc(100% - var(--tearsheet-header-action-offset));
219
+
220
+ @include breakpoint-down(md) {
221
+ display: flex;
222
+ flex-direction: column;
223
+ }
224
+ }
225
+
226
+ &:not(.#{$block-class}--narrow) {
227
+ @include breakpoint(md) {
228
+ .#{$block-class}__header-content-wrapper {
229
+ .#{$block-class}__header-actions {
230
+ order: 2;
231
+ }
232
+
233
+ .#{$block-class}__header-content {
234
+ order: 1;
235
+ }
236
+ }
237
+ }
238
+ }
239
+
240
+ // ──────────────────────────────────────────────────────────────
241
+ // Header default state: animated transitions
242
+ // ──────────────────────────────────────────────────────────────
243
+ .#{$block-class}__header {
244
+ > *:not(
245
+ .#{$block-class}__navigation-bar,
246
+ .#{$block-class}__header-content-wrapper,
247
+ .#{$prefix}--modal-close-button,
248
+ .#{$block-class}__close-button,
249
+ .#{$block-class}__decorator,
250
+ .excludeFromCollapse
251
+ ) {
252
+ overflow: hidden;
253
+ max-block-size: 50vh;
254
+ opacity: 1;
255
+ transition:
256
+ max-block-size $motion-duration motion(entrance, expressive),
257
+ opacity $motion-duration motion(entrance, expressive),
258
+ margin $motion-duration motion(entrance, expressive),
259
+ padding $motion-duration motion(entrance, expressive);
260
+ }
261
+
262
+ .#{$block-class}__header-actions,
263
+ .#{$block-class}__header-content-wrapper
264
+ .#{$block-class}__header-content
265
+ *:not(
266
+ .#{$block-class}__content__title-wrapper,
267
+ .#{$block-class}__header-label
268
+ ) {
269
+ opacity: 1;
270
+ transition:
271
+ all $motion-duration motion(entrance, expressive),
272
+ opacity $motion-duration motion(entrance, expressive);
273
+ }
274
+ }
275
+
276
+ .#{$prefix}--modal-close {
277
+ transition: all $motion-duration ease;
278
+ }
279
+
280
+ // COLLAPSED STATE
281
+ .#{$block-class}__header-collapsed {
282
+ padding-block-start: 0;
283
+ transition: padding $motion-duration motion(entrance, expressive);
284
+
285
+ > *:not(
286
+ .#{$block-class}__navigation-bar,
287
+ .#{$block-class}__header-content-wrapper,
288
+ .#{$prefix}--modal-close-button,
289
+ .#{$block-class}__close-button,
290
+ .#{$block-class}__decorator,
291
+ .excludeFromCollapse
292
+ ),
293
+ .#{$block-class}__header-actions
294
+ > *:not(.#{$block-class}__content__header-actions),
295
+ .#{$block-class}__header-content
296
+ > *:not(.#{$block-class}__content__title-wrapper),
297
+ > *:not(
298
+ .#{$block-class}__navigation-bar,
299
+ .#{$block-class}__header-content-wrapper,
300
+ .#{$prefix}--modal-close-button,
301
+ .#{$block-class}__close-button,
302
+ .#{$block-class}__decorator,
303
+ .excludeFromCollapse
304
+ )
305
+ *,
306
+ .#{$block-class}__header-content-wrapper
307
+ .#{$block-class}__header-content
308
+ > *:not(.#{$block-class}__content__title-wrapper)
309
+ * {
310
+ overflow: hidden;
311
+ padding: 0;
312
+ margin: 0;
313
+ max-block-size: 0;
314
+ opacity: 0;
315
+ pointer-events: none;
316
+ transition: all $motion-duration motion(entrance, expressive);
317
+ visibility: hidden;
318
+ }
319
+
320
+ .#{$block-class}__header-title {
321
+ @include type-style('label-02');
322
+
323
+ align-items: center;
324
+ gap: $spacing-03;
325
+ margin-block-start: $spacing-02;
326
+ transition: all $motion-duration motion(entrance, expressive);
327
+
328
+ > span {
329
+ display: flex;
330
+ align-items: center;
331
+ block-size: $spacing-06;
332
+ }
333
+
334
+ .#{$block-class}__title-start,
335
+ .#{$block-class}__title-end {
336
+ svg {
337
+ inline-size: $spacing-05;
338
+ }
339
+ }
340
+ }
341
+
342
+ .#{$block-class}__header-content {
343
+ align-self: center;
344
+ margin-block-end: 0;
345
+
346
+ @include breakpoint-down(md) {
347
+ align-self: stretch;
348
+ }
349
+ }
350
+
351
+ .#{$prefix}--modal-close {
352
+ block-size: $spacing-08;
353
+ inline-size: $spacing-08;
354
+ transition: all $motion-duration ease;
355
+ }
356
+
357
+ .#{$block-class}__decorator {
358
+ inset-block-start: $spacing-03;
359
+ }
360
+
361
+ .#{$block-class}__header-title {
362
+ block-size: $spacing-08;
363
+ }
364
+
365
+ .#{$block-class}__content__header-actions {
366
+ block-size: $spacing-06;
367
+ margin-block-start: $spacing-03;
368
+ transition: all $motion-duration ease;
369
+ }
370
+
371
+ @include breakpoint-down(md) {
372
+ .#{$block-class}__header-actions {
373
+ display: none;
374
+ }
375
+ }
376
+
377
+ .#{$block-class}__header-content-wrapper,
378
+ .#{$block-class}__header-content,
379
+ .#{$block-class}__content__title-wrapper,
380
+ .#{$block-class}__header-actions,
381
+ .#{$block-class}__header-title {
382
+ margin-block: 0;
383
+ transition: margin-block $motion-duration ease;
384
+ }
385
+
386
+ .#{$block-class}__header-content-wrapper {
387
+ min-block-size: $spacing-08;
388
+ }
389
+
390
+ .#{$block-class}__navigation-bar::before {
391
+ position: absolute;
392
+ z-index: 1;
393
+ background: $border-subtle-01;
394
+ block-size: 1px;
395
+ content: '';
396
+ inline-size: calc(100% + $spacing-11);
397
+ inset-block-start: 0;
398
+ inset-inline-start: -$spacing-07;
399
+ pointer-events: none;
400
+ }
401
+ }
402
+
403
+ &.#{$block-class}--stack-activated.is-visible {
404
+ --overlay-color: #{$overlay};
405
+ --overlay-alpha: 0.5;
406
+
407
+ z-index: calc(#{utilities.z('modal')} - var(--stack-depth, 0));
408
+ background-color: initial;
409
+
410
+ &::before {
411
+ position: absolute;
412
+ display: block;
413
+ background: var(--overlay-color);
414
+ content: '';
415
+ inset: 0;
416
+ opacity: calc(var(--overlay-alpha) - var(--stack-depth) * 0.1);
417
+ transition:
418
+ background-color $motion-duration motion(exit, expressive),
419
+ opacity $motion-duration motion(exit, expressive);
420
+
421
+ @media (prefers-reduced-motion: reduce) {
422
+ transition: none;
423
+ }
424
+ }
425
+
426
+ &.is-visible {
427
+ .#{$block-class}__container {
428
+ max-block-size: calc(
429
+ 100% - var(
430
+ --tearsheet-vertical-gap,
431
+ calc(#{$spacing-11} + #{$spacing-03} + #{$spacing-01})
432
+ ) + var(--block-size-change)
433
+ );
434
+ transform: scaleX(var(--scale-factor));
435
+ }
436
+ }
437
+ }
438
+ }
439
+
440
+ // ──────────────────────────────────────────────────────────────
441
+ // Top-level styles (outside .#{$block-class})
442
+ // ──────────────────────────────────────────────────────────────
443
+ $block-class: #{$prefix}--tearsheet;
444
+
445
+ .#{$block-class}__header-label {
446
+ @include type-style('label-01');
447
+
448
+ color: $text-secondary;
449
+ margin-block-end: $spacing-02;
450
+ }
451
+
452
+ .#{$block-class}__header-title {
453
+ @include type-style('heading-04');
454
+
455
+ @include breakpoint-down(md) {
456
+ @include type-style('heading-03');
457
+ }
458
+
459
+ display: flex;
460
+ align-items: flex-start;
461
+ gap: $spacing-05;
462
+ margin-block-end: $spacing-03;
463
+
464
+ &--no-content-below {
465
+ margin-block-end: 0;
466
+ }
467
+
468
+ svg {
469
+ flex-shrink: 0;
470
+ }
471
+
472
+ .#{$block-class}__title-end {
473
+ margin-inline-start: $spacing-05;
474
+ }
475
+ }
476
+
477
+ .#{$block-class}__header-description {
478
+ @include type-style('body-compact-01');
479
+ }
480
+
481
+ .#{$block-class}__header--no-close-icon {
482
+ display: none;
483
+ }
484
+
485
+ .#{$block-class}__decorator {
486
+ position: absolute;
487
+ inset-block-start: convert.to-rem(10px);
488
+ inset-inline-end: $spacing-09;
489
+ }
490
+
491
+ .#{$block-class}__navigation-bar {
492
+ position: relative;
493
+ display: flex;
494
+ align-items: center;
495
+ justify-content: space-between;
496
+ gap: $spacing-01;
497
+ max-inline-size: calc(100% - $spacing-04);
498
+ min-block-size: $spacing-08;
499
+
500
+ .#{$prefix}--tabs {
501
+ margin-inline-start: -$spacing-05;
502
+ }
503
+ }
504
+
505
+ .#{$block-class}__scroller-container {
506
+ position: absolute;
507
+ inset-block-end: 0;
508
+ inset-inline-end: -$spacing-08;
509
+
510
+ @include breakpoint-down(md) {
511
+ inset-inline-end: -$spacing-06;
512
+ }
513
+
514
+ .#{$block-class}__scroller-button-icon-collapsed {
515
+ transform: rotate(-180deg);
516
+ }
517
+ }
518
+
519
+ .#{$block-class}__header-actions {
520
+ display: flex;
521
+ justify-content: flex-end;
522
+ }
523
+
524
+ .#{$block-class}__content__header-actions {
525
+ display: flex;
526
+ overflow: hidden;
527
+ flex: 0 0 auto;
528
+ align-items: center;
529
+ justify-content: flex-end;
530
+ block-size: $spacing-07;
531
+ gap: $spacing-03;
532
+ inline-size: 100%;
533
+ margin-block-start: -14px;
534
+
535
+ > * {
536
+ flex-shrink: 0;
537
+ }
538
+
539
+ @include breakpoint-down(md) {
540
+ justify-content: flex-start;
541
+ margin-inline-end: 0;
542
+ }
543
+ }
544
+
545
+ .#{$block-class}__header-content,
546
+ .#{$block-class}__header-actions {
547
+ margin-block-end: $spacing-06;
548
+ }
549
+
550
+ @include breakpoint(md) {
551
+ .#{$block-class}--wide .#{$block-class}__container {
552
+ inline-size: calc(100% - (2 * #{$spacing-10}));
553
+ }
554
+ }
555
+
556
+ .#{$block-class}__body-layout {
557
+ display: grid;
558
+ grid-template-areas:
559
+ 'influencer body'
560
+ 'influencer footer';
561
+ grid-template-columns:
562
+ var(--tearsheet-influencer-width, calc($spacing-10 * 4))
563
+ 1fr;
564
+ grid-template-rows: 1fr auto;
565
+ padding-block: 0;
566
+ padding-inline-end: 0;
567
+
568
+ &:not(.#{$block-class}__body-layout--has-influencer) {
569
+ grid-template-areas:
570
+ 'body'
571
+ 'footer';
572
+ grid-template-columns: 1fr;
573
+ }
574
+ }
575
+
576
+ .#{$block-class}__influencer {
577
+ border-inline-end: 1px solid $border-subtle-01;
578
+ grid-area: influencer;
579
+ }
580
+
581
+ .#{$block-class}__body {
582
+ position: relative;
583
+ display: grid;
584
+ overflow: hidden;
585
+ grid-area: body;
586
+ grid-template-columns: 1fr var(
587
+ --tearsheet-summary-content-width,
588
+ calc($spacing-10 * 4)
589
+ );
590
+
591
+ @include breakpoint-down(md) {
592
+ grid-template-columns: 1fr 0;
593
+ }
594
+
595
+ > *:only-child {
596
+ grid-column: 1 / -1;
597
+ }
598
+
599
+ .#{$prefix}--tab-content {
600
+ padding: 0;
601
+ }
602
+ }
603
+
604
+ .#{$block-class}__footer {
605
+ overflow: hidden;
606
+ border-block-start: 1px solid $border-subtle-01;
607
+ grid-area: footer;
608
+
609
+ // @include breakpoint-down(md) {
610
+ // block-size: $spacing-10;
611
+ // }
612
+
613
+ // Use a lower stacking threshold (120px/button) so the footer buttons
614
+ // don't stack in typical narrow (540px) tearsheet containers.
615
+ // The mixin is called here on the same element that has .cds--btn-set--fluid
616
+ // so container-type and the custom-threshold @container queries are scoped
617
+ // to the tearsheet footer, overriding the global 176px defaults.
618
+ .#{$block-class}__footer-button-set {
619
+ block-size: 100%;
620
+
621
+ &.#{$prefix}--btn-set--fluid {
622
+ @include button-mixin.button-set-fluid-layout(
623
+ $min-inline-size: convert.to-rem(120px)
624
+ );
625
+ }
626
+ }
627
+ }
628
+
629
+ .#{$block-class}__influencer,
630
+ .#{$block-class}__main-content,
631
+ .#{$block-class}__summary-content {
632
+ overflow: auto;
633
+
634
+ &:not(.#{$block-class}__flush) {
635
+ padding-inline: $spacing-07;
636
+
637
+ @include breakpoint-down(md) {
638
+ padding-inline: $spacing-05;
639
+ }
640
+ }
641
+
642
+ &:focus {
643
+ @include focus-outline.focus-outline('outline');
644
+ }
645
+ }
646
+
647
+ .#{$block-class}__main-content {
648
+ position: relative;
649
+ }
650
+
651
+ .#{$block-class}__side-panel {
652
+ position: absolute;
653
+ z-index: 9999;
654
+ block-size: 100%;
655
+ inline-size: 100% !important; /* stylelint-disable-line declaration-no-important */
656
+ inset-block-start: 0;
657
+ max-inline-size: none;
658
+
659
+ .#{$prefix}--side-panel__header {
660
+ min-block-size: 0;
661
+ }
662
+ }
663
+
664
+ .#{$block-class}--narrow {
665
+ .#{$block-class}__container {
666
+ inline-size: 480px;
667
+ max-inline-size: 480px;
668
+
669
+ @media (width <= 480px) {
670
+ inline-size: 100%;
671
+ max-inline-size: 100%;
672
+ }
673
+ }
674
+
675
+ .#{$block-class}__header {
676
+ padding-inline: $spacing-05;
677
+ }
678
+
679
+ .#{$block-class}__header.#{$block-class}__header-collapsed {
680
+ .#{$block-class}__header-actions {
681
+ display: none;
682
+ }
683
+
684
+ .#{$block-class}__header-content {
685
+ align-self: flex-start;
686
+ }
687
+ }
688
+
689
+ .#{$block-class}__header-content-wrapper {
690
+ display: flex;
691
+ flex-direction: column;
692
+ }
693
+
694
+ .#{$block-class}__header-title {
695
+ @include type-style('heading-03');
696
+ }
697
+
698
+ .#{$block-class}__content__header-actions {
699
+ justify-content: flex-start;
700
+ margin-inline-end: 0;
701
+ }
702
+
703
+ .#{$block-class}__body {
704
+ grid-template-columns: 1fr 0;
705
+ }
706
+
707
+ .#{$block-class}__influencer,
708
+ .#{$block-class}__main-content,
709
+ .#{$block-class}__summary-content {
710
+ &:not(.#{$block-class}__flush) {
711
+ padding-inline: $spacing-05;
712
+ }
713
+ }
714
+ }
715
+ }