@wwtdev/bsds-css 3.2.2 → 3.4.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.
package/dist/wwt-bsds.css CHANGED
@@ -25,15 +25,14 @@
25
25
  --bs-cobalt-200: #948be1;
26
26
  --bs-cobalt-300: #5f52d3;
27
27
  --bs-cobalt-400: #2918c4;
28
- --bs-gold-10: rgba(235, 223, 212, 0.1);
29
- --bs-gold-100: #f9f5f1;
30
- --bs-gold-200: #ebdfd4;
31
- --bs-gold-300: #e0c7ac;
32
- --bs-gold-400: #cca175;
33
- --bs-gold-500: #997958;
28
+ --bs-gold-10: rgba(224, 199, 172, 0.1);
29
+ --bs-gold-100: #ebdfd4;
30
+ --bs-gold-200: #e0c7ac;
31
+ --bs-gold-300: #cca175;
32
+ --bs-gold-400: #997958;
34
33
  --bs-gray-50: #f7f7fc;
35
34
  --bs-gray-100: #f0f0fa;
36
- --bs-gray-150: #e4e4eb;
35
+ --bs-gray-150: #dcdde9;
37
36
  --bs-gray-200: #c9cad9;
38
37
  --bs-gray-300: #a3a4b7;
39
38
  --bs-gray-400: #4e4f5f;
@@ -44,7 +43,7 @@
44
43
  --bs-green-300: #39a283;
45
44
  --bs-green-400: #008b5d;
46
45
  --bs-green-500: #00744d;
47
- --bs-maroon-10: rgba(195, 91, 91, 0.1);
46
+ --bs-maroon-10: rgba(215, 145, 145, 0.1);
48
47
  --bs-maroon-100: #ebc8c8;
49
48
  --bs-maroon-200: #d79191;
50
49
  --bs-maroon-300: #c35b5b;
@@ -64,7 +63,7 @@
64
63
  --bs-orange-100: #f3c4a8;
65
64
  --bs-orange-200: #f7a17b;
66
65
  --bs-orange-300: #f97c4c;
67
- --bs-orange-400: #fb550e;
66
+ --bs-orange-400: #ed5615;
68
67
  --bs-orange-500: #c33d04;
69
68
  --bs-orange-brand: #ff5100;
70
69
  --bs-orchid-10: rgba(190, 128, 255, 0.1);
@@ -227,28 +226,53 @@
227
226
  rgba(22, 47, 180, 0.05) 283.2deg,
228
227
  rgba(227, 28, 121, 0.05) 414.4deg
229
228
  );
230
- --bs-space-0: 0;
231
- --bs-space-1: 0.25rem;
232
- --bs-space-2: 0.5rem;
233
- --bs-space-3: 0.75rem;
234
- --bs-space-4: 1rem;
235
- --bs-space-6: 1.5rem;
236
- --bs-space-8: 2rem;
237
- --bs-space-12: 3rem;
238
- --bs-space-16: 4rem;
239
- --bs-space-24: 6rem;
240
- --bs-space-32: 8rem;
241
- --bs-space-none: 0;
242
- --bs-space-3xs: 0.25rem;
243
- --bs-space-2xs: 0.5rem;
244
- --bs-space-xs: 0.75rem;
245
- --bs-space-sm: 1rem;
246
- --bs-space-md: 1.5rem;
247
- --bs-space-lg: 2rem;
248
- --bs-space-xl: 3rem;
249
- --bs-space-2xl: 4rem;
250
- --bs-space-3xl: 6rem;
251
- --bs-space-4xl: 8rem;
229
+ --bs-space-0: calc(var(--bs-space) * 0);
230
+ --bs-space-1: calc(var(--bs-space) * 1);
231
+ --bs-space-2: calc(var(--bs-space) * 2);
232
+ --bs-space-3: calc(var(--bs-space) * 3);
233
+ --bs-space-4: calc(var(--bs-space) * 4);
234
+ --bs-space-5: calc(var(--bs-space) * 5);
235
+ --bs-space-6: calc(var(--bs-space) * 6);
236
+ --bs-space-7: calc(var(--bs-space) * 7);
237
+ --bs-space-8: calc(var(--bs-space) * 8);
238
+ --bs-space-9: calc(var(--bs-space) * 9);
239
+ --bs-space-10: calc(var(--bs-space) * 10);
240
+ --bs-space-11: calc(var(--bs-space) * 11);
241
+ --bs-space-12: calc(var(--bs-space) * 12);
242
+ --bs-space-14: calc(var(--bs-space) * 14);
243
+ --bs-space-16: calc(var(--bs-space) * 16);
244
+ --bs-space-20: calc(var(--bs-space) * 20);
245
+ --bs-space-24: calc(var(--bs-space) * 24);
246
+ --bs-space-28: calc(var(--bs-space) * 28);
247
+ --bs-space-32: calc(var(--bs-space) * 32);
248
+ --bs-space-36: calc(var(--bs-space) * 36);
249
+ --bs-space-40: calc(var(--bs-space) * 40);
250
+ --bs-space-44: calc(var(--bs-space) * 44);
251
+ --bs-space-48: calc(var(--bs-space) * 48);
252
+ --bs-space-52: calc(var(--bs-space) * 52);
253
+ --bs-space-56: calc(var(--bs-space) * 56);
254
+ --bs-space-60: calc(var(--bs-space) * 60);
255
+ --bs-space-64: calc(var(--bs-space) * 64);
256
+ --bs-space-72: calc(var(--bs-space) * 72);
257
+ --bs-space-80: calc(var(--bs-space) * 80);
258
+ --bs-space-96: calc(var(--bs-space) * 96);
259
+ --bs-space: 0.25rem;
260
+ --bs-space-px: 1px;
261
+ --bs-space-0_5: calc(var(--bs-space) * 0.5);
262
+ --bs-space-1_5: calc(var(--bs-space) * 1.5);
263
+ --bs-space-2_5: calc(var(--bs-space) * 2.5);
264
+ --bs-space-3_5: calc(var(--bs-space) * 3.5);
265
+ --bs-space-none: var(--bs-space-0);
266
+ --bs-space-3xs: var(--bs-space-1);
267
+ --bs-space-2xs: var(--bs-space-2);
268
+ --bs-space-xs: var(--bs-space-3);
269
+ --bs-space-sm: var(--bs-space-4);
270
+ --bs-space-md: var(--bs-space-6);
271
+ --bs-space-lg: var(--bs-space-8);
272
+ --bs-space-xl: var(--bs-space-12);
273
+ --bs-space-2xl: var(--bs-space-16);
274
+ --bs-space-3xl: var(--bs-space-24);
275
+ --bs-space-4xl: var(--bs-space-32);
252
276
  --bs-text-xs: 0.75rem;
253
277
  --bs-text-sm: 0.875rem;
254
278
  --bs-text-base: 1rem;
@@ -302,6 +326,9 @@
302
326
  /* Dynamic width set by the navigation component for page layout */
303
327
  --bs-page-nav-width: 0px;
304
328
 
329
+ /* Pill */
330
+ --bs-pill-height: 1.5rem;
331
+
305
332
  /* Table */
306
333
  --bs-table-cell-padding-xs: var(--bs-space-2);
307
334
  --bs-table-cell-padding-sm: var(--bs-space-3);
@@ -393,6 +420,202 @@
393
420
  --bs-border-active: var(--bs-cobalt-400);
394
421
  --bs-border-error: var(--bs-maroon-500);
395
422
  }
423
+ html:where(:has([data-theme="softchoice-dark"])),
424
+ [data-theme="softchoice-dark"] {
425
+ color-scheme: dark;
426
+ }
427
+ [data-theme="softchoice-dark"] {
428
+ /* Ink */
429
+ --bs-ink-base: var(--bs-white);
430
+ --bs-ink-medium: var(--bs-gray-100);
431
+ --bs-ink-light: var(--bs-gray-150);
432
+ --bs-ink-disabled: rgba(163, 164, 183, 0.7); /* gray-300 at 70% */
433
+ --bs-ink-invert-base: var(--bs-black);
434
+ --bs-ink-invert-medium: var(--bs-gray-500);
435
+ --bs-ink-invert-light: var(--bs-gray-400);
436
+ --bs-ink-primary: var(--bs-cobalt-100);
437
+ --bs-ink-secondary: var(--bs-orange-200);
438
+ --bs-ink-accent-1: var(--bs-midnight-100);
439
+ --bs-ink-accent-2: var(--bs-violet-100);
440
+ --bs-ink-accent-3: var(--bs-pink-200);
441
+ --bs-ink-accent-4: var(--bs-orchid-200);
442
+ --bs-ink-positive: var(--bs-green-200);
443
+ --bs-ink-warning: var(--bs-yellow-300);
444
+ --bs-ink-negative: var(--bs-maroon-200);
445
+
446
+ /* Primary */
447
+ --bs-primary-base-fixed: var(--bs-cobalt-400);
448
+ --bs-primary-base: var(--bs-cobalt-300);
449
+ --bs-primary-medium: var(--bs-cobalt-200);
450
+ --bs-primary-light: var(--bs-cobalt-200);
451
+ --bs-primary-lightest: var(--bs-cobalt-100);
452
+ --bs-primary-highlight: var(--bs-cobalt-10);
453
+
454
+ /* Secondary */
455
+ --bs-secondary-base-fixed: var(--bs-orange-400);
456
+ --bs-secondary-base: var(--bs-orange-300);
457
+ --bs-secondary-medium: var(--bs-orange-200);
458
+ --bs-secondary-light: var(--bs-orange-200);
459
+ --bs-secondary-lightest: var(--bs-orange-100);
460
+ --bs-secondary-highlight: var(--bs-orange-10);
461
+
462
+ /* Accent 1 */
463
+ --bs-accent-1-base-fixed: var(--bs-midnight-400);
464
+ --bs-accent-1-base: var(--bs-midnight-300);
465
+ --bs-accent-1-medium: var(--bs-midnight-200);
466
+ --bs-accent-1-light: var(--bs-midnight-200);
467
+ --bs-accent-1-lightest: var(--bs-midnight-100);
468
+ --bs-accent-1-highlight: var(--bs-midnight-10);
469
+
470
+ /* Accent 2 */
471
+ --bs-accent-2-base: var(--bs-violet-300);
472
+ --bs-accent-2-medium: var(--bs-violet-200);
473
+ --bs-accent-2-light: var(--bs-violet-200);
474
+
475
+ /* Accent 3 */
476
+ --bs-accent-3-base: var(--bs-pink-300);
477
+ --bs-accent-3-medium: var(--bs-pink-200);
478
+
479
+ /* Accent 4 */
480
+ --bs-accent-4-base-fixed: var(--bs-orchid-400);
481
+ --bs-accent-4-base: var(--bs-orchid-300);
482
+ --bs-accent-4-medium: var(--bs-orchid-200);
483
+ --bs-accent-4-light: var(--bs-orchid-200);
484
+ --bs-accent-4-lightest: var(--bs-orchid-100);
485
+ --bs-accent-4-highlight: var(--bs-orchid-10);
486
+
487
+ /* Accent 5 */
488
+ --bs-accent-5-base: var(--bs-gold-300);
489
+ --bs-accent-5-medium: var(--bs-gold-200);
490
+ --bs-accent-5-light: var(--bs-gold-200);
491
+ --bs-accent-5-lightest: var(--bs-gold-100);
492
+ --bs-accent-5-highlight: var(--bs-gold-10);
493
+
494
+ /* Accent 6 */
495
+ --bs-accent-6-base: var(--bs-red-300);
496
+
497
+ /* Accent 7 */
498
+ --bs-accent-7-base: var(--bs-navy-300);
499
+ --bs-accent-7-medium: var(--bs-navy-200);
500
+
501
+ /* Neutral */
502
+ --bs-neutral-dark: var(--bs-charcoal-100);
503
+ --bs-neutral-base: var(--bs-charcoal-200);
504
+ --bs-neutral-medium: var(--bs-charcoal-300);
505
+ --bs-neutral-light: var(--bs-charcoal-400);
506
+ --bs-neutral-lightest: var(--bs-charcoal-500);
507
+
508
+ /* Warning */
509
+ --bs-warning-base: var(--bs-yellow-400);
510
+ --bs-warning-medium: var(--bs-yellow-300);
511
+ --bs-warning-highlight: var(--bs-yellow-10);
512
+
513
+ /* Negative */
514
+ --bs-negative-base: var(--bs-maroon-300);
515
+ --bs-negative-medium: var(--bs-maroon-200);
516
+ --bs-negative-highlight: var(--bs-maroon-10);
517
+
518
+ /* Background */
519
+ --bs-bg-base: var(--bs-slate-600);
520
+ --bs-bg-light: var(--bs-slate-500);
521
+ --bs-bg-medium: var(--bs-slate-400);
522
+ --bs-bg-disabled: rgba(78, 79, 95, 0.3); /* gray-400 at 30% */
523
+ --bs-bg-invert-base: var(--bs-white);
524
+ --bs-bg-invert-light: var(--bs-charcoal-100);
525
+ --bs-bg-invert-medium: var(--bs-charcoal-200);
526
+ --bs-bg-base-to-light: var(--bs-slate-500);
527
+ --bs-bg-base-to-medium: var(--bs-slate-400);
528
+ --bs-bg-medium-to-base: var(--bs-slate-600);
529
+ --bs-bg-medium-to-light: var(--bs-slate-500);
530
+ --bs-bg-light-to-base: var(--bs-slate-600);
531
+ --bs-bg-light-to-medium: var(--bs-slate-400);
532
+
533
+ /* Borders */
534
+ --bs-border-base: rgba(163, 164, 183, 0.7); /* gray-300 at 70% */
535
+ --bs-border-medium: var(--bs-gray-400);
536
+ --bs-border-light: rgba(78, 79, 95, 0.5); /* gray-400 at 50% */
537
+ --bs-border-medium-to-light: rgba(78, 79, 95, 0.5); /* gray-400 at 50% */
538
+ --bs-border-input: var(--bs-violet-200);
539
+ --bs-border-active: var(--bs-cobalt-300);
540
+ --bs-border-error: var(--bs-maroon-200);
541
+
542
+ /* Atom gradients */
543
+ --bs-gradient-atom-ai-bg: conic-gradient(from 180deg at 50% 50%, rgba(83, 101, 196, 0.2) -96.8deg, rgba(228, 94, 155, 0.2) 74.2deg, rgba(51, 158, 238, 0.2) 98.8deg, rgba(249, 124, 76, 0.2) 259.6deg, rgba(83, 101, 196, 0.2) 283.2deg, rgba(228, 94, 155, 0.2) 414.4deg);
544
+ --bs-gradient-atom-ai-border: conic-gradient(from 180deg at 50% 50%, var(--bs-royal-300) -96.8deg, var(--bs-pink-300) 74.2deg, var(--bs-blue-300) 98.8deg, var(--bs-orange-300) 259.6deg, var(--bs-royal-300) 283.2deg, var(--bs-pink-300) 414.4deg);
545
+
546
+ /* Shadows */
547
+ --bs-shadow-secondary: rgba(10, 11, 25, 0.60);
548
+ --bs-shadow-dark: -16px 20px 40px 0 #000;
549
+ --bs-shadow-contentLow: var(--bs-shadow-dark);
550
+ --bs-shadow-contentLowCenter: var(--bs-shadow-dark);
551
+ --bs-shadow-contentMedium: var(--bs-shadow-dark);
552
+ --bs-shadow-contentHigh: var(--bs-shadow-dark);
553
+ --bs-shadow-drawerLeft: var(--bs-shadow-dark);
554
+ --bs-shadow-drawerRight: 16px 20px 40px 0 #000;
555
+ --bs-shadow-profilePhoto: inset 0px 0px 0.5em var(--bs-shadow-secondary);
556
+
557
+ /* -------------- Deprecated Color Tokens -------------- */
558
+ /* Ink */
559
+ --bs-ink-blue: var(--bs-cobalt-100); /* replaced by Ink Primary */
560
+ --bs-ink-orange: var(--bs-yellow-300); /* replaced by Ink Warning */
561
+ --bs-ink-pink: var(--bs-pink-200); /* replaced by Ink Accent 3 */
562
+ --bs-ink-plum: var(--bs-orange-200); /* replaced by Ink Secondary */
563
+ --bs-ink-purple: var(--bs-orchid-200); /* replaced by Ink Accent 4 */
564
+ --bs-ink-red: var(--bs-maroon-200); /* replaced by Ink Negative */
565
+ --bs-ink-royal: var(--bs-midnight-100); /* replaced by Ink Accent 1 */
566
+ --bs-ink-violet: var(--bs-violet-100); /* replaced by Ink Accent 2 */
567
+ --bs-bg-invert-to-medium: var(--bs-gray-500); /* removed in v3 */
568
+ --bs-ink-accent: var(--bs-orange-200); /* removed in v3 */
569
+
570
+ /* Blue (replaced by Primary) */
571
+ --bs-blue-base: var(--bs-cobalt-300);
572
+ --bs-blue-medium: var(--bs-cobalt-200);
573
+ --bs-blue-light: var(--bs-cobalt-200);
574
+ --bs-blue-lightest: var(--bs-cobalt-100);
575
+
576
+ /* Gray (replaced by Neutral) */
577
+ --bs-gray-dark: var(--bs-charcoal-100);
578
+ --bs-gray-base: var(--bs-charcoal-200);
579
+ --bs-gray-medium: var(--bs-charcoal-300);
580
+ --bs-gray-light: var(--bs-charcoal-400);
581
+ --bs-gray-lightest: var(--bs-charcoal-500);
582
+
583
+ /* Navy (replaced by Accent 7) */
584
+ --bs-navy-base: var(--bs-navy-300);
585
+ --bs-navy-medium: var(--bs-navy-200);
586
+
587
+ /* Orange (replaced by Warning) */
588
+ --bs-warning: var(--bs-yellow-400);
589
+ --bs-orange-base: var(--bs-yellow-300);
590
+
591
+ /* Pink (replaced by Accent 3) */
592
+ --bs-pink-base: var(--bs-pink-300);
593
+ --bs-pink-medium: var(--bs-pink-200);
594
+
595
+ /* Plum (replaced by Secondary) */
596
+ --bs-plum-base: var(--bs-orange-300);
597
+ --bs-plum-medium: var(--bs-orange-200);
598
+
599
+ /* Purple (replaced by Accent 4) */
600
+ --bs-purple-base: var(--bs-orchid-300);
601
+ --bs-purple-medium: var(--bs-orchid-200);
602
+ --bs-purple-light: var(--bs-orchid-200);
603
+ --bs-purple-lightest: var(--bs-orchid-100);
604
+
605
+ /* Red (replaced by Negative) */
606
+ --bs-red-base: var(--bs-maroon-300);
607
+ --bs-red-medium: var(--bs-maroon-200);
608
+
609
+ /* Royal Blue (replaced by Accent 1) */
610
+ --bs-royal-base: var(--bs-midnight-300);
611
+ --bs-royal-medium: var(--bs-midnight-200);
612
+ --bs-royal-light: var(--bs-midnight-200);
613
+ --bs-royal-lightest: var(--bs-midnight-100);
614
+
615
+ /* Violet (replaced by Accent 2) */
616
+ --bs-violet-base: var(--bs-violet-300);
617
+ --bs-violet-medium: var(--bs-violet-200);
618
+ }
396
619
  /* put browser scrollbars into dark mode */
397
620
  /* html selector needed since data-theme gets added to body, but scrolling may be on <html> */
398
621
  html:where(:has(.dark, [data-theme="wwt-dark"])),
@@ -405,7 +628,7 @@ html:where(:has(.dark, [data-theme="wwt-dark"])),
405
628
  /* Ink */
406
629
  --bs-ink-base: var(--bs-white);
407
630
  --bs-ink-medium: var(--bs-gray-100);
408
- --bs-ink-light: var(--bs-gray-200);
631
+ --bs-ink-light: var(--bs-gray-150);
409
632
  --bs-ink-disabled: rgba(163, 164, 183, 0.7); /* gray-300 at 70% */
410
633
  --bs-ink-primary: var(--bs-blue-100);
411
634
  --bs-ink-secondary: var(--bs-plum-100);
@@ -570,7 +793,7 @@ html:where(:has(.dark, [data-theme="wwt-dark"])),
570
793
  --bs-ink-disabled: rgba(78, 79, 95, 0.6); /* gray-400 at 60% */
571
794
  --bs-ink-invert-base: var(--bs-white);
572
795
  --bs-ink-invert-medium: var(--bs-gray-100);
573
- --bs-ink-invert-light: var(--bs-gray-200);
796
+ --bs-ink-invert-light: var(--bs-gray-150);
574
797
  --bs-ink-primary: var(--bs-blue-500);
575
798
  --bs-ink-secondary: var(--bs-plum-400);
576
799
  --bs-ink-accent-1: var(--bs-royal-400);
@@ -1395,7 +1618,7 @@ table {
1395
1618
  }
1396
1619
  thead {
1397
1620
  color: var(--bs-ink-base);
1398
- font-size: var(--bs-font-base);
1621
+ font-size: var(--bs-text-base);
1399
1622
  font-weight: 600;
1400
1623
  }
1401
1624
  tbody {
@@ -2305,10 +2528,10 @@ Custom properties:
2305
2528
  }
2306
2529
  /* Negative Toast Styles */
2307
2530
  .bs-toast-deprecated:where([data-variant^='negative']) {
2308
- border-top: 4px solid var(--bs-negative-dark);
2531
+ border-top: 4px solid var(--bs-negative-base);
2309
2532
  }
2310
2533
  .bs-toast-deprecated:where([data-variant^='negative']) :where(.bs-toast-header-deprecated .bs-toast-header-deprecated-icon) {
2311
- color: var(--bs-negative-dark);
2534
+ color: var(--bs-negative-base);
2312
2535
  }
2313
2536
  @media (min-width: 440px) {
2314
2537
  .bs-toast-deprecated {
@@ -2530,15 +2753,13 @@ This must go last to properly override the other classes
2530
2753
  transform: translateY(-50%) scale(0.5);
2531
2754
  }
2532
2755
  .bs-accordion {
2533
- --accordion-link-color: var(--bs-positive-base-fixed);
2534
- --accordion-link-outline-color: var(--bs-primary-base);
2535
2756
  --accordion-outline-color: transparent;
2536
2757
  --accordion-padding-inline: 0;
2537
2758
  --accordion-text-size: var(--bs-text-sm);
2538
2759
  border-block: 1px solid var(--bs-border-base);
2539
2760
  display: block;
2540
2761
  }
2541
- @media (min-width: 957px) {
2762
+ @media (min-width: 752px) {
2542
2763
  .bs-accordion {
2543
2764
  --accordion-padding-inline: var(--bs-space-2);
2544
2765
  --accordion-text-size: var(--bs-text-base);
@@ -2586,7 +2807,7 @@ This must go last to properly override the other classes
2586
2807
  .bs-accordion > :where(header) > :where(button) > * {
2587
2808
  vertical-align: middle;
2588
2809
  }
2589
- @media (min-width: 957px) {
2810
+ @media (min-width: 752px) {
2590
2811
  .bs-accordion :where(.bs-accordion-toggle) > * ,
2591
2812
  .bs-accordion > :where(header) > :where(button) > * {
2592
2813
  margin-right: var(--bs-space-3);
@@ -2624,7 +2845,7 @@ This must go last to properly override the other classes
2624
2845
  }
2625
2846
  .bs-accordion :where(.bs-accordion-content[data-open]:not([data-open="false"])) {
2626
2847
  grid-template-rows: 1fr;
2627
- padding-block-end: var(--bs-space-f-2);
2848
+ padding-block-end: var(--bs-space-2);
2628
2849
  }
2629
2850
  /* Accordion Group */
2630
2851
  :where(.bs-accordion[data-stacked]:not([data-stacked="false"])) + .bs-accordion:where([data-stacked]:not([data-stacked="false"])) {
@@ -2656,7 +2877,7 @@ This must go last to properly override the other classes
2656
2877
  .bs-alert:where([data-horizontal="true"]) {
2657
2878
  padding: 1rem 1.5rem;
2658
2879
  grid-template-areas: "icon title action close";
2659
- grid-template-columns: 1.125rem max-content 1fr 1rem;
2880
+ grid-template-columns: 1.125rem auto 1fr 1rem;
2660
2881
  }
2661
2882
  }
2662
2883
  .bs-alert :where(.bs-alert-icon) {
@@ -2682,6 +2903,7 @@ This must go last to properly override the other classes
2682
2903
  .bs-alert:where([data-horizontal="true"]) :where(.bs-alert-title) {
2683
2904
  font-size: 1.125rem;
2684
2905
  line-height: 1.5;
2906
+ overflow-wrap: break-word;
2685
2907
  }
2686
2908
 
2687
2909
  .bs-alert:where(:not([data-horizontal="true"])) :where(.bs-alert-icon) {
@@ -2722,6 +2944,7 @@ This must go last to properly override the other classes
2722
2944
  .bs-alert :where(.bs-alert-action) {
2723
2945
  grid-area: action;
2724
2946
  margin-top: 1rem;
2947
+ white-space: nowrap;
2725
2948
  }
2726
2949
  @media (min-width: 752px) {
2727
2950
  .bs-alert:where([data-horizontal="true"]) :where(.bs-alert-action) {
@@ -2904,7 +3127,7 @@ This must go last to properly override the other classes
2904
3127
  .bs-banner:where([data-variant="negative"]) {
2905
3128
  --banner-bg: var(--bs-accent-6-medium);
2906
3129
  }
2907
- @media (min-width: 957px) {
3130
+ @media (min-width: 752px) {
2908
3131
  .bs-banner {
2909
3132
  --banner-icon-display: inline-flex;
2910
3133
  --banner-padding: var(--banner-padding-dt);
@@ -3451,8 +3674,8 @@ a.bs-circle-button {
3451
3674
  .bs-circle-button:where([data-ghost]:not([data-ghost="false"])) {
3452
3675
  --btn-icon-bg-color: transparent;
3453
3676
  --btn-icon-stroke-color: var(--btn-main);
3454
- --btn-light: var(--bs-primary-10);
3455
- --btn-secondary: var(--bs-primary-10);
3677
+ --btn-light: transparent;
3678
+ --btn-secondary: transparent;
3456
3679
  }
3457
3680
  /* Active, Hover, Focus states */
3458
3681
  .bs-circle-button:active, .bs-circle-button:hover {
@@ -4775,6 +4998,12 @@ data-autosize-icons="true" - see above
4775
4998
  grid-template-columns: auto 1fr auto auto;
4776
4999
  align-items: center;
4777
5000
  cursor: pointer;
5001
+
5002
+ &:where([data-show-pill-group="true"]) {
5003
+ --input-height: auto;
5004
+ --input-padding-block: var(--bs-space-2);
5005
+ min-height: var(--bs-space-10);
5006
+ }
4778
5007
  }
4779
5008
  /* -- Multiselect Count -- */
4780
5009
  .bs-input-button-count {
@@ -5288,7 +5517,7 @@ label:where(.bs-label) {
5288
5517
  .bs-option:where(:not([data-multiple="true"])[aria-selected="true"]) {
5289
5518
  --description-color: var(--bs-ink-primary);
5290
5519
  background: var(--bs-bg-medium-to-light);
5291
- border-left-color: var(--bs-ink-primary);
5520
+ border-left-color: var(--bs-primary-base);
5292
5521
  color: var(--bs-ink-primary);
5293
5522
  }
5294
5523
  /* selected yet disabled...should be a very rare scenario, but need to handle it */
@@ -5472,8 +5701,9 @@ label:where(.bs-label) {
5472
5701
  font-family: inherit;
5473
5702
  font-size: var(--bs-text-sm);
5474
5703
  gap: var(--pill-gap);
5475
- height: 1.5rem;
5476
5704
  line-height: 1rem;
5705
+ max-width: 100%;
5706
+ min-height: var(--bs-pill-height);
5477
5707
  padding: 0 .375rem;
5478
5708
  position: relative;
5479
5709
  text-decoration: none;
@@ -5645,6 +5875,23 @@ label:where(.bs-label) {
5645
5875
  .bs-pill:where([data-variant^="filter"])[data-active="false"]:is(:disabled, [aria-disabled="true"]) {
5646
5876
  --pill-border: var(--bs-gray-400);
5647
5877
  }
5878
+ .bs-pill-group {
5879
+ --pill-group-max-lines: 3;
5880
+ }
5881
+ .bs-pill-group-pills {
5882
+ /* Mainly for css-component-only usage */
5883
+ --default-max-height: calc(var(--pill-group-max-lines) * (var(--bs-pill-height) + var(--bs-space-2)));
5884
+ display: flex;
5885
+ flex-wrap: wrap;
5886
+ gap: var(--bs-space-2);
5887
+ max-height: var(--pill-group-max-height, var(--default-max-height));
5888
+ overflow: hidden;
5889
+ }
5890
+ .bs-pill-group-pills:where([data-expanded="true"]) {
5891
+ margin-bottom: var(--bs-space-2);
5892
+ max-height: none;
5893
+ overflow: visible;
5894
+ }
5648
5895
  .bs-profile-details {
5649
5896
  color: var(--bs-ink-light);
5650
5897
  font-size: var(--bs-text-sm);
@@ -5816,14 +6063,14 @@ a.bs-profile:where([data-layout]):hover {
5816
6063
  --bs-spinner-color-1: white;
5817
6064
  --bs-spinner-color-2: white;
5818
6065
  }
5819
- :where(#bs-spinner-gradient stop) {
6066
+ .bs-spinner:where([data-variant="gradient"]) :where(linearGradient stop) {
5820
6067
  stop-color: var(--bs-secondary-base-fixed);
5821
6068
  }
5822
- :where(#bs-spinner-gradient stop:first-child) {
6069
+ .bs-spinner:where([data-variant="gradient"]) :where(linearGradient stop:first-child) {
5823
6070
  stop-color: var(--bs-primary-base-fixed);
5824
6071
  }
5825
- :where(#bs-spinner-gradient stop:last-child) {
5826
- stop-color: var(--bs-negative-dark);
6072
+ .bs-spinner:where([data-variant="gradient"]) :where(linearGradient stop:last-child) {
6073
+ stop-color: var(--bs-negative-base);
5827
6074
  }
5828
6075
  @keyframes bs-spin {
5829
6076
  0% {
@@ -7399,65 +7646,90 @@ a.bs-text-button {
7399
7646
  --bs-pop-header-padding: var(--bs-space-6);
7400
7647
  --bs-pop-body-padding: var(--bs-space-6);
7401
7648
  --bs-pop-footer-padding: var(--bs-space-6);
7402
- margin: 0;
7649
+ --bs-popover-height: 100dvh;
7650
+ --bs-popover-width: 100dvw;
7403
7651
  border-radius: 0;
7652
+ margin: 0;
7653
+ max-height: unset;
7654
+ max-width: 100dvw;
7655
+
7656
+ /* -- SHADOWS -- */
7657
+ &:where([data-place-self="left"]) {
7658
+ box-shadow: var(--bs-shadow-drawerRight);
7659
+ }
7660
+
7661
+ &:where([data-place-self="right"]) {
7662
+ box-shadow: var(--bs-shadow-drawerLeft);
7663
+ }
7664
+
7665
+ /* -- RESIZING -- */
7666
+ &:where([data-resize]) {
7667
+ /* using clip instead of hidden, to allow resizer hover target
7668
+ to extend outside of the flyout bounds via overflow-clip-margin */
7669
+ overflow: clip;
7670
+ }
7671
+
7672
+ /* right flyout */
7673
+ &:where([data-resize="right"]) {
7674
+ overflow-clip-margin: 5px;
7675
+ }
7676
+
7677
+ /* left flyout - not using same as right flyout, to avoid overlapping potential scrollbar too much */
7678
+ &:where([data-resize="left"]) {
7679
+ overflow-clip-margin: 7px;
7680
+ }
7681
+
7682
+ /*
7683
+ Everything below is desktop-only. Sizing and resize values are gated to
7684
+ widths above the mobile breakpoint, so at mobile widths the flyout falls
7685
+ back to the full-screen defaults above with no JS cleanup needed. The
7686
+ resizer writes its values to the --bs-flyout-resize-* custom properties.
7687
+ */
7688
+ @media (min-width: 752px) {
7689
+ &:where([data-size="sm"]) {
7690
+ --bs-popover-width: 22.5rem; /* 360px */
7691
+ }
7692
+
7693
+ &:where([data-size="md"]) {
7694
+ --bs-popover-width: 28.75rem; /* 460px */
7695
+ }
7696
+
7697
+ &:where([data-size="lg"]) {
7698
+ --bs-popover-width: 33.4375rem; /* 535px */
7699
+ }
7700
+
7701
+ &:where([data-size="fit-content"]) {
7702
+ --bs-popover-width: fit-content;
7703
+ }
7704
+
7705
+ &:where([data-resize]) {
7706
+ max-width: var(--bs-flyout-resize-max);
7707
+ min-width: var(--bs-flyout-resize-min);
7708
+ transform: translateX(var(--bs-flyout-resize-pushed, 0px));
7709
+ width: var(--bs-flyout-resize-width, var(--bs-popover-width));
7710
+ }
7711
+ }
7404
7712
  }
7405
7713
  /* targeting header too, so consumer could just do: <BsPopHeader>My Title</BsPopHeader> */
7406
7714
  .bs-flyout :where(.bs-pop-header, .bs-pop-title) {
7407
7715
  font-size: var(--bs-text-lg);
7408
7716
  }
7409
- /* -- SIZING -- */
7410
- .bs-flyout {
7411
- --bs-popover-height: 100dvh;
7412
- max-height: unset;
7413
- max-width: 100dvw;
7414
- }
7415
- .bs-flyout:where([data-size="sm"]) {
7416
- --bs-popover-width: 22.5rem; /* 360px */
7417
- }
7418
- .bs-flyout:where([data-size="md"]) {
7419
- --bs-popover-width: 28.75rem; /* 460px */
7420
- }
7421
- .bs-flyout:where([data-size="lg"]) {
7422
- --bs-popover-width: 33.4375rem; /* 535px */
7423
- }
7424
- /* -- RESIZING -- */
7425
- .bs-flyout:where([data-resize]) {
7426
- /* using clip instead of hidden, to allow resizer hover target
7427
- to extend outside of the flyout bounds via overflow-clip-margin */
7428
- overflow: clip;
7429
- transform: translateX(var(--bs-flyout-resize-pushed, 0px));
7430
- }
7717
+ /* -- RESIZER -- */
7431
7718
  .bs-flyout-resizer {
7432
7719
  cursor: col-resize;
7433
7720
  inset-block: 0;
7434
7721
  position: absolute;
7435
- width: 10px;
7436
- z-index: 1;
7437
7722
  /* prevents browser from trying to hijack touch interactions to handle on its own */
7438
7723
  touch-action: none;
7439
- }
7440
- /* right flyout */
7441
- .bs-flyout:where([data-resize="right"]) {
7442
- overflow-clip-margin: 5px;
7724
+ width: 10px;
7725
+ z-index: 1;
7443
7726
  }
7444
7727
  .bs-flyout:where([data-resize="right"]) :where(.bs-flyout-resizer) {
7445
7728
  left: -5px;
7446
7729
  }
7447
- /* left flyout - not using same as right flyout, to avoid overlapping potential scrollbar too much */
7448
- .bs-flyout:where([data-resize="left"]) {
7449
- overflow-clip-margin: 7px;
7450
- }
7451
7730
  .bs-flyout:where([data-resize="left"]) :where(.bs-flyout-resizer) {
7452
7731
  right: -7px;
7453
7732
  }
7454
- /* -- SHADOWS -- */
7455
- .bs-flyout:where([data-place-self="left"]) {
7456
- box-shadow: var(--bs-shadow-drawerRight);
7457
- }
7458
- .bs-flyout:where([data-place-self="right"]) {
7459
- box-shadow: var(--bs-shadow-drawerLeft);
7460
- }
7461
7733
  /* -- TRANSITIONS -- */
7462
7734
  .bs-flyout-enter-active,
7463
7735
  .bs-flyout-leave-active {
@@ -7468,18 +7740,27 @@ a.bs-text-button {
7468
7740
  }
7469
7741
  .bs-flyout-enter-active .bs-flyout,
7470
7742
  .bs-flyout-leave-active .bs-flyout {
7471
- transition-property: transform;
7472
7743
  transition-duration: var(--bs-popover-transition-duration);
7744
+ transition-property: transform;
7473
7745
  transition-timing-function: var(--bs-transition-cubic);
7474
7746
  }
7475
7747
  /* The 105% is so the huge shadow on the flyout ends-up off-screen too, otherwise at 100%, you notice it cut out when the panel closes */
7476
7748
  .bs-flyout-enter-from .bs-flyout[data-place-self="left"],
7477
7749
  .bs-flyout-leave-to .bs-flyout[data-place-self="left"] {
7478
- transform: translate(calc(-105% + var(--bs-flyout-resize-pushed, 0px)));
7750
+ transform: translate(-105%);
7751
+
7752
+ /* preserve any resize push offset while sliding in/out (desktop-only, matching the resize sizing above) */
7753
+ @media (min-width: 752px) {
7754
+ transform: translate(calc(-105% + var(--bs-flyout-resize-pushed, 0px)));
7755
+ }
7479
7756
  }
7480
7757
  .bs-flyout-enter-from .bs-flyout[data-place-self="right"],
7481
7758
  .bs-flyout-leave-to .bs-flyout[data-place-self="right"] {
7482
- transform: translate(calc(105% + var(--bs-flyout-resize-pushed, 0px)));
7759
+ transform: translate(105%);
7760
+
7761
+ @media (min-width: 752px) {
7762
+ transform: translate(calc(105% + var(--bs-flyout-resize-pushed, 0px)));
7763
+ }
7483
7764
  }
7484
7765
  /*
7485
7766
  HEADS-UP:
@@ -8849,12 +9130,6 @@ a.bs-text-button {
8849
9130
  .bs-bg-ink-positive {
8850
9131
  background-color: var(--bs-ink-positive);
8851
9132
  }
8852
- .bs-text-ink-ecomm-positive {
8853
- color: var(--bs-ink-ecomm-positive);
8854
- }
8855
- .bs-bg-ink-ecomm-positive {
8856
- background-color: var(--bs-ink-ecomm-positive);
8857
- }
8858
9133
  .bs-text-ink-warning {
8859
9134
  color: var(--bs-ink-warning);
8860
9135
  }