@wwtdev/bsds-css 3.0.0-rc.46 → 3.0.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,6 +25,7 @@
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);
28
29
  --bs-gold-100: #f9f5f1;
29
30
  --bs-gold-200: #ebdfd4;
30
31
  --bs-gold-300: #e0c7ac;
@@ -110,98 +111,79 @@
110
111
  --bs-yellow-100: #fdeed3;
111
112
  --bs-yellow-200: #fcdea7;
112
113
  --bs-yellow-300: #f8c464;
113
- --bs-yellow-400: #ffb834;
114
- --bs-yellow-450: #c18300;
114
+ --bs-yellow-400: #c18300;
115
115
  --bs-yellow-500: #805a14;
116
116
  --bs-shadow-primary: rgba(0, 0, 0, 0.06);
117
117
  --bs-shadow-secondary: rgba(28, 0, 135, 0.2);
118
118
  --bs-gradient-dark: linear-gradient(
119
119
  90deg,
120
120
  #1c0087 0%,
121
- #ee282a 35%,
122
- #ffffff 50%,
121
+ #ee282a 35.01%,
122
+ #fff 49.99%,
123
123
  #0086ea 65%,
124
124
  #1c0087 100%
125
125
  );
126
126
  --bs-gradient-light: linear-gradient(
127
127
  90deg,
128
128
  #1c0087 0%,
129
- #ee282a 20%,
130
- #ee282a 40%,
131
- #1c0087 50%,
129
+ #ee282a 19.93%,
130
+ #ee282a 39.91%,
131
+ #1c0087 49.9%,
132
132
  #0086ea 60%,
133
- #0086ea 80%,
133
+ #0086ea 79.99%,
134
134
  #1c0087 100%
135
135
  );
136
136
  --bs-gradient-line: linear-gradient(
137
137
  90deg,
138
138
  #ee282a 0%,
139
- #1c0087 50%,
139
+ #1c0087 49.35%,
140
140
  #0086ea 100%
141
141
  );
142
- --bs-gradient-atom-ai-border: conic-gradient(
143
- from 180deg at 50% 50%,
144
- var(--bs-royal-400) -96.8deg,
145
- var(--bs-pink-400) 74.2deg,
146
- var(--bs-blue-400) 98.8deg,
147
- var(--bs-orange-400) 259.6deg,
148
- var(--bs-royal-400) 283.2deg,
149
- var(--bs-pink-400) 414.4deg
150
- );
151
- --bs-gradient-atom-ai-bg: conic-gradient(
152
- from 180deg at 50% 50%,
153
- rgba(22, 47, 180, 0.05) -96.8deg,
154
- rgba(227, 28, 121, 0.05) 74.2deg,
155
- rgba(0, 134, 234, 0.05) 98.8deg,
156
- rgba(251, 85, 14, 0.05) 259.6deg,
157
- rgba(22, 47, 180, 0.05) 283.2deg,
158
- rgba(227, 28, 121, 0.05) 414.4deg
159
- );
160
- --bs-gradient-blue-top-left: radial-gradient(
161
- 312.54% 141.42% at 0% 0%,
142
+ --bs-gradient-blue-center: radial-gradient(
143
+ 154.77% 52.27% at 47.08% 49.86%,
162
144
  #162fb4 0%,
163
145
  #1d1e48 100%
164
146
  );
165
- --bs-gradient-blue-top-center: radial-gradient(
166
- 201.14% 201.14% at 50% -51.28%,
167
- #162fb4 26.06%,
168
- #1d1e48 100%
169
- );
170
- --bs-gradient-blue-top-right: radial-gradient(
171
- 312.54% 141.42% at 100% 0%,
147
+ --bs-gradient-blue-mid-left: linear-gradient(
148
+ 90deg,
172
149
  #162fb4 0%,
173
- #1d1e48 100%
150
+ #1d1e48 98.9%
174
151
  );
175
- --bs-gradient-blue-mid-left: radial-gradient(
176
- 347.1% 117.22% at -9.27% 49.86%,
177
- #162fb4 8.19%,
178
- #1d1e48 100%
152
+ --bs-gradient-blue-mid-right: linear-gradient(
153
+ 90deg,
154
+ #1d1e48 0%,
155
+ #162fb4 99.27%
179
156
  );
180
- --bs-gradient-blue-mid-right: radial-gradient(
181
- 347.1% 117.22% at 109.27% 49.86%,
182
- #162fb4 8.19%,
183
- #1d1e48 100%
157
+ --bs-gradient-blue-bottom-center: radial-gradient(
158
+ 100% 100% at 50% 0%,
159
+ #1d1e48 0%,
160
+ #162fb4 100%
184
161
  );
185
- --bs-gradient-blue-center: radial-gradient(
186
- 172.57% 58.28% at 50% 49.86%,
187
- #162fb4 0%,
162
+ --bs-gradient-blue-top-center: radial-gradient(
163
+ 96.7% 96.7% at 50% 0%,
164
+ #162fb4 5%,
188
165
  #1d1e48 100%
189
166
  );
190
- --bs-gradient-blue-bottom-left: radial-gradient(
191
- 312.54% 141.42% at 0% 100%,
167
+ --bs-gradient-blue-top-left: radial-gradient(
168
+ 312.54% 141.42% at 0% 0%,
192
169
  #162fb4 0%,
193
170
  #1d1e48 100%
194
171
  );
195
- --bs-gradient-blue-bottom-center: radial-gradient(
196
- 201.14% 201.14% at 50% 151.28%,
197
- #162fb4 26.06%,
198
- #1d1e48 100%
199
- );
200
172
  --bs-gradient-blue-bottom-right: radial-gradient(
201
- 312.54% 141.42% at 100% 100%,
173
+ 312.54% 141.42% at 0% 0%,
174
+ #1d1e48 0%,
175
+ #162fb4 100%
176
+ );
177
+ --bs-gradient-blue-top-right: radial-gradient(
178
+ 312.54% 141.42% at 100% 0%,
202
179
  #162fb4 0%,
203
180
  #1d1e48 100%
204
181
  );
182
+ --bs-gradient-blue-bottom-left: radial-gradient(
183
+ 312.54% 141.42% at 100% 0%,
184
+ #1d1e48 0%,
185
+ #162fb4 100%
186
+ );
205
187
  --bs-gradient-light-blue-transparent: radial-gradient(
206
188
  236% 114.71% at 94.24% 7.6%,
207
189
  rgba(153, 207, 247, 0.2) 0%,
@@ -214,8 +196,8 @@
214
196
  );
215
197
  --bs-gradient-light-gray: linear-gradient(
216
198
  180deg,
217
- #f7f7fc 24.82%,
218
- #f0f0fa 100%
199
+ var(--background-light, #f7f7fc) 24.82%,
200
+ var(--background-medium, #f0f0fa) 100%
219
201
  );
220
202
  --bs-gradient-softchoice-light: linear-gradient(
221
203
  252deg,
@@ -227,6 +209,24 @@
227
209
  #ff5100 66.87%,
228
210
  #7d00ff 97.9%
229
211
  );
212
+ --bs-gradient-atom-ai-border: conic-gradient(
213
+ from 180deg at 50% 50%,
214
+ var(--bs-royal-400) -96.8deg,
215
+ var(--bs-pink-400) 74.2deg,
216
+ var(--bs-blue-400) 98.8deg,
217
+ var(--bs-orange-400) 259.6deg,
218
+ var(--bs-royal-400) 283.2deg,
219
+ var(--bs-pink-400) 414.4deg
220
+ );
221
+ --bs-gradient-atom-ai-bg: conic-gradient(
222
+ from 180deg at 50% 50%,
223
+ rgba(22, 47, 180, 0.05) -96.8deg,
224
+ rgba(227, 28, 121, 0.05) 74.2deg,
225
+ rgba(0, 134, 234, 0.05) 98.8deg,
226
+ rgba(251, 85, 14, 0.05) 259.6deg,
227
+ rgba(22, 47, 180, 0.05) 283.2deg,
228
+ rgba(227, 28, 121, 0.05) 414.4deg
229
+ );
230
230
  --bs-space-0: var(--bs-space-none);
231
231
  --bs-space-1: var(--bs-space-3xs);
232
232
  --bs-space-2: var(--bs-space-2xs);
@@ -263,6 +263,7 @@
263
263
  --bs-font-light: 300;
264
264
  --bs-font-normal: 400;
265
265
  --bs-font-semibold: 600;
266
+ --bs-font-bold: 600;
266
267
  --bs-leading-none: 1;
267
268
  --bs-leading-sm: 1.1;
268
269
  --bs-leading-regular: 1.3;
@@ -297,8 +298,8 @@
297
298
  /* Navigation */
298
299
  --bs-horizontal-nav-height: 48px;
299
300
  --bs-vertical-nav-narrow-width: 4.5rem;
300
- --bs-vertical-nav-width: 9.875rem;
301
- --bs-vertical-nav-collapsed-width: 4rem;
301
+ --bs-vertical-nav-width: 11.25rem;
302
+ --bs-vertical-nav-collapsed-width: 4.5rem;
302
303
  /* Dynamic width set by the navigation component for page layout */
303
304
  --bs-page-nav-width: 0px;
304
305
 
@@ -318,7 +319,7 @@
318
319
  --bs-ink-base: var(--bs-black);
319
320
  --bs-ink-medium: var(--bs-gray-500);
320
321
  --bs-ink-light: var(--bs-gray-400);
321
- --bs-ink-disabled: rgba(78, 79, 95, 0.6); /* --bs-gray-400 at .6 */
322
+ --bs-ink-disabled: rgba(78, 79, 95, 0.6); /* gray-400 at 60% */
322
323
  --bs-ink-invert-base: var(--bs-white);
323
324
  --bs-ink-invert-medium: var(--bs-gray-100);
324
325
  --bs-ink-invert-light: var(--bs-gray-200);
@@ -327,37 +328,12 @@
327
328
  --bs-ink-accent-1: var(--bs-royal-400);
328
329
  --bs-ink-accent-2: var(--bs-violet-400);
329
330
  --bs-ink-accent-3: var(--bs-pink-500);
330
- --bs-ink-negative: var(--bs-red-500);
331
- --bs-ink-ecomm-positive: var(--bs-green-500);
332
- --bs-ink-positive: var(--bs-purple-400);
331
+ --bs-ink-accent-4: var(--bs-purple-400);
332
+ --bs-ink-positive: var(--bs-green-500);
333
333
  --bs-ink-warning: var(--bs-orange-500);
334
+ --bs-ink-negative: var(--bs-red-500);
334
335
  --bs-ink-white: var(--bs-white);
335
336
 
336
- /* Background */
337
- --bs-bg-base: var(--bs-white);
338
- --bs-bg-light: var(--bs-gray-50);
339
- --bs-bg-medium: var(--bs-gray-100);
340
- --bs-bg-disabled: var(--bs-gray-200);
341
- --bs-bg-invert-base: var(--bs-slate-600);
342
- --bs-bg-invert-light: var(--bs-slate-500);
343
- --bs-bg-invert-medium: var(--bs-slate-400);
344
- --bs-bg-base-to-light: var(--bs-white);
345
- --bs-bg-base-to-medium: var(--bs-white);
346
- --bs-bg-medium-to-base: var(--bs-gray-100);
347
- --bs-bg-medium-to-light: var(--bs-gray-100);
348
- --bs-bg-light-to-base: var(--bs-gray-50);
349
- --bs-bg-light-to-medium: var(--bs-gray-50);
350
-
351
- /* Borders */
352
- --bs-border-base: var(--bs-gray-200);
353
- --bs-border-medium: var(--bs-gray-150);
354
- --bs-border-light: var(--bs-gray-100);
355
- --bs-border-dark: var(--bs-gray-400);
356
- --bs-border-medium-to-light: var(--bs-gray-150);
357
- --bs-border-input: rgba(99, 66, 145, 0.75); /* --bs-violet-300 at .75 opacity */
358
- --bs-border-active: var(--bs-blue-400);
359
- --bs-border-error: var(--bs-red-500);
360
-
361
337
  /* Primary */
362
338
  --bs-primary-base-fixed: var(--bs-blue-400);
363
339
  --bs-primary-base: var(--bs-blue-400);
@@ -374,13 +350,6 @@
374
350
  --bs-secondary-lightest: var(--bs-plum-100);
375
351
  --bs-secondary-highlight: var(--bs-plum-10);
376
352
 
377
- /* Neutral */
378
- --bs-neutral-dark: var(--bs-gray-500);
379
- --bs-neutral-base: var(--bs-gray-400);
380
- --bs-neutral-medium: var(--bs-gray-300);
381
- --bs-neutral-light: var(--bs-gray-200);
382
- --bs-neutral-lightest: var(--bs-gray-100);
383
-
384
353
  /* Accent 1 */
385
354
  --bs-accent-1-base-fixed: var(--bs-royal-400);
386
355
  --bs-accent-1-base: var(--bs-royal-400);
@@ -406,46 +375,91 @@
406
375
  --bs-accent-3-highlight: var(--bs-pink-10);
407
376
 
408
377
  /* Accent 4 */
409
- --bs-accent-4-base: var(--bs-navy-400);
410
- --bs-accent-4-medium: var(--bs-navy-300);
411
- --bs-accent-4-light: var(--bs-navy-200);
412
- --bs-accent-4-lightest: var(--bs-navy-100);
413
- --bs-accent-4-highlight: var(--bs-navy-10);
378
+ --bs-accent-4-base-fixed: var(--bs-purple-400);
379
+ --bs-accent-4-base: var(--bs-purple-400);
380
+ --bs-accent-4-medium: var(--bs-purple-300);
381
+ --bs-accent-4-light: var(--bs-purple-200);
382
+ --bs-accent-4-lightest: var(--bs-purple-100);
383
+ --bs-accent-4-highlight: var(--bs-purple-10);
384
+
385
+ /* Accent 5 */
386
+ --bs-accent-5-base: var(--bs-orange-400);
387
+ --bs-accent-5-medium: var(--bs-orange-300);
388
+ --bs-accent-5-light: var(--bs-orange-200);
389
+ --bs-accent-5-lightest: var(--bs-orange-100);
390
+ --bs-accent-5-highlight: var(--bs-orange-10);
391
+
392
+ /* Accent 6 */
393
+ --bs-accent-6-base: var(--bs-red-400);
394
+ --bs-accent-6-medium: var(--bs-red-300);
395
+ --bs-accent-6-light: var(--bs-red-200);
396
+ --bs-accent-6-lightest: var(--bs-red-100);
397
+ --bs-accent-6-highlight: var(--bs-red-10);
398
+
399
+ /* Accent 7 */
400
+ --bs-accent-7-base: var(--bs-navy-400);
401
+ --bs-accent-7-medium: var(--bs-navy-300);
402
+ --bs-accent-7-light: var(--bs-navy-200);
403
+ --bs-accent-7-lightest: var(--bs-navy-100);
404
+ --bs-accent-7-highlight: var(--bs-navy-10);
405
+
406
+ /* Neutral */
407
+ --bs-neutral-dark: var(--bs-gray-500);
408
+ --bs-neutral-base: var(--bs-gray-400);
409
+ --bs-neutral-medium: var(--bs-gray-300);
410
+ --bs-neutral-light: var(--bs-gray-200);
411
+ --bs-neutral-lightest: var(--bs-gray-100);
414
412
 
415
413
  /* Positive */
416
- --bs-positive-base-fixed: var(--bs-purple-400);
417
- --bs-positive-base: var(--bs-purple-400);
418
- --bs-positive-medium: var(--bs-purple-300);
419
- --bs-positive-light: var(--bs-purple-200);
420
- --bs-positive-lightest: var(--bs-purple-100);
421
- --bs-positive-highlight: var(--bs-purple-10);
422
-
423
- /* Ecommerce Positive */
424
- --bs-ecomm-positive-base-fixed: var(--bs-green-400);
425
- --bs-ecomm-positive-base: var(--bs-green-400);
426
- --bs-ecomm-positive-medium: var(--bs-green-300);
427
- --bs-ecomm-positive-light: var(--bs-green-200);
428
- --bs-ecomm-positive-lightest: var(--bs-green-100);
429
- --bs-ecomm-positive-highlight: var(--bs-green-10);
414
+ --bs-positive-base: var(--bs-green-400);
415
+ --bs-positive-medium: var(--bs-green-300);
416
+ --bs-positive-highlight: var(--bs-green-10);
430
417
 
431
418
  /* Warning */
432
- --bs-warning-dark: var(--bs-orange-500);
433
- --bs-warning-base: var(--bs-orange-400);
419
+ --bs-warning-base: var(--bs-orange-500);
434
420
  --bs-warning-medium: var(--bs-orange-300);
435
- --bs-warning-light: var(--bs-orange-200);
436
- --bs-warning-lightest: var(--bs-orange-100);
437
421
  --bs-warning-highlight: var(--bs-orange-10);
438
422
 
439
423
  /* Negative */
440
- --bs-negative-dark: var(--bs-red-500);
441
- --bs-negative-base: var(--bs-red-400);
424
+ --bs-negative-base: var(--bs-red-500);
442
425
  --bs-negative-medium: var(--bs-red-300);
443
- --bs-negative-light: var(--bs-red-200);
444
- --bs-negative-lightest: var(--bs-red-100);
445
426
  --bs-negative-highlight: var(--bs-red-10);
446
427
 
447
-
428
+ /* Background */
429
+ --bs-bg-base: var(--bs-white);
430
+ --bs-bg-light: var(--bs-gray-50);
431
+ --bs-bg-medium: var(--bs-gray-100);
432
+ --bs-bg-disabled: var(--bs-gray-200);
433
+ --bs-bg-invert-base: var(--bs-slate-600);
434
+ --bs-bg-invert-light: var(--bs-slate-500);
435
+ --bs-bg-invert-medium: var(--bs-slate-400);
436
+ --bs-bg-base-to-light: var(--bs-white);
437
+ --bs-bg-base-to-medium: var(--bs-white);
438
+ --bs-bg-medium-to-base: var(--bs-gray-100);
439
+ --bs-bg-medium-to-light: var(--bs-gray-100);
440
+ --bs-bg-light-to-base: var(--bs-gray-50);
441
+ --bs-bg-light-to-medium: var(--bs-gray-50);
442
+
443
+ /* Borders */
444
+ --bs-border-dark: var(--bs-gray-300);
445
+ --bs-border-base: var(--bs-gray-200);
446
+ --bs-border-medium: var(--bs-gray-150);
447
+ --bs-border-light: var(--bs-gray-100);
448
+ --bs-border-medium-to-light: var(--bs-gray-150);
449
+ --bs-border-input: rgba(99, 66, 145, 0.75); /* violet-300 at 75% */
450
+ --bs-border-active: var(--bs-blue-400);
451
+ --bs-border-error: var(--bs-red-500);
452
+
448
453
  /* -------------- Deprecated Color Tokens -------------- */
454
+ /* Ink */
455
+ --bs-ink-blue: var(--bs-blue-500); /* replaced by Ink Primary */
456
+ --bs-ink-orange: var(--bs-orange-500); /* replaced by Ink Warning */
457
+ --bs-ink-pink: var(--bs-pink-500); /* replaced by Ink Accent 3 */
458
+ --bs-ink-plum: var(--bs-plum-400); /* replaced by Ink Secondary */
459
+ --bs-ink-purple: var(--bs-purple-400); /* replaced by Ink Accent 4 */
460
+ --bs-ink-red: var(--bs-red-500); /* replaced by Ink Negative */
461
+ --bs-ink-royal: var(--bs-royal-400); /* replaced by Ink Accent 1 */
462
+ --bs-ink-violet: var(--bs-violet-400); /* replaced by Ink Accent 2 */
449
463
 
450
464
  /* Blue (replaced by Primary) */
451
465
  --bs-blue-base: var(--bs-blue-400);
@@ -460,7 +474,7 @@
460
474
  --bs-gray-light: var(--bs-gray-200);
461
475
  --bs-gray-lightest: var(--bs-gray-100);
462
476
 
463
- /* Navy (replaced by Accent 4) */
477
+ /* Navy (replaced by Accent 7) */
464
478
  --bs-navy-base: var(--bs-navy-400);
465
479
  --bs-navy-medium: var(--bs-navy-300);
466
480
  --bs-navy-light: var(--bs-navy-200);
@@ -485,7 +499,7 @@
485
499
  --bs-plum-light: var(--bs-plum-200);
486
500
  --bs-plum-lightest: var(--bs-plum-100);
487
501
 
488
- /* Purple (replaced by Positive) */
502
+ /* Purple (replaced by Accent 4) */
489
503
  --bs-purple-base: var(--bs-purple-400);
490
504
  --bs-purple-medium: var(--bs-purple-300);
491
505
  --bs-purple-light: var(--bs-purple-200);
@@ -508,121 +522,107 @@
508
522
  --bs-violet-medium: var(--bs-violet-300);
509
523
  --bs-violet-light: var(--bs-violet-200);
510
524
  --bs-violet-lightest: var(--bs-violet-100);
511
-
512
-
513
- /* ------------ Deprecated Ink Color Tokens ------------ */
514
-
515
- /* Ink Blue (replaced by Ink Primary) */
516
- --bs-ink-blue: var(--bs-blue-500);
517
-
518
- /* Ink Orange (replaced by Ink Warning) */
519
- --bs-ink-orange: var(--bs-orange-500);
520
-
521
- /* Ink Pink (replaced by Ink Accent 3) */
522
- --bs-ink-pink: var(--bs-pink-500);
523
-
524
- /* Ink Plum (replaced by Ink Secondary) */
525
- --bs-ink-plum: var(--bs-plum-400);
526
-
527
- /* Ink Purple (replaced by Ink Positive) */
528
- --bs-ink-purple: var(--bs-purple-400);
529
-
530
- /* Ink Red (replaced by Ink Negative) */
531
- --bs-ink-red: var(--bs-red-500);
532
-
533
- /* Ink Royal (replaced by Ink Accent 1) */
534
- --bs-ink-royal: var(--bs-royal-400);
535
-
536
- /* Ink Violet (replaced by Ink Accent 2) */
537
- --bs-ink-violet: var(--bs-violet-400);
538
525
  }
539
- /* Token Overrides */
526
+ /* put browser scrollbars into dark mode */
527
+ /* html selector needed since .dark class gets added to body, but scrolling may be on <html> */
528
+ html:where(:has(.dark)),
529
+ .dark {
530
+ color-scheme: dark;
531
+ }
540
532
  .dark {
541
533
  /* Ink */
542
534
  --bs-ink-base: var(--bs-white);
543
535
  --bs-ink-medium: var(--bs-gray-100);
544
536
  --bs-ink-light: var(--bs-gray-200);
545
- --bs-ink-disabled: rgba(163, 164, 183, 0.5); /* --bs-gray-300 at .5 opacity */
546
- --bs-ink-invert-base: var(--bs-black);
547
- --bs-ink-invert-medium: var(--bs-gray-500);
548
- --bs-ink-invert-light: var(--bs-gray-400);
537
+ --bs-ink-disabled: rgba(163, 164, 183, 0.7); /* gray-300 at 70% */
549
538
  --bs-ink-primary: var(--bs-blue-100);
550
539
  --bs-ink-secondary: var(--bs-plum-100);
551
540
  --bs-ink-accent-1: var(--bs-royal-200);
552
- --bs-ink-accent-2: var(--bs-violet-200);
541
+ --bs-ink-accent-2: var(--bs-violet-100);
553
542
  --bs-ink-accent-3: var(--bs-pink-200);
554
- --bs-ink-negative: var(--bs-red-200);
555
- --bs-ink-ecomm-positive: var(--bs-green-200);
556
- --bs-ink-positive: var(--bs-purple-200);
543
+ --bs-ink-accent-4: var(--bs-purple-200);
544
+ --bs-ink-positive: var(--bs-green-200);
557
545
  --bs-ink-warning: var(--bs-orange-200);
546
+ --bs-ink-negative: var(--bs-red-200);
558
547
  --bs-ink-white: var(--bs-white);
559
-
560
- /* Background */
561
- --bs-bg-base: var(--bs-slate-600);
562
- --bs-bg-light: var(--bs-slate-500);
563
- --bs-bg-medium: var(--bs-slate-400);
564
- --bs-bg-disabled: rgba(78, 79, 95, 0.3); /* --bs-gray-400 at .3 opacity */
565
- --bs-bg-invert-base: var(--bs-white);
566
- --bs-bg-invert-light: var(--bs-gray-50);
567
- --bs-bg-invert-medium: var(--bs-gray-100);
568
- --bs-bg-base-to-light: var(--bs-slate-500);
569
- --bs-bg-base-to-medium: var(--bs-slate-400);
570
- --bs-bg-medium-to-base: var(--bs-slate-600);
571
- --bs-bg-medium-to-light: var(--bs-slate-500);
572
- --bs-bg-light-to-base: var(--bs-slate-600);
573
- --bs-bg-light-to-medium: var(--bs-slate-400);
574
-
575
- /* Borders */
576
- --bs-border-base: rgba(163, 164, 183, 0.7); /* --bs-gray-300 at .7 opacity */
577
- --bs-border-medium: var(--bs-gray-400);
578
- --bs-border-light: rgba(78, 79, 95, 0.5); /* --bs-gray-400 at .5 opacity */
579
- --bs-border-dark: var(--bs-gray-300);
580
- --bs-border-medium-to-light: rgba(78, 79, 95, 0.5); /* --bs-gray-400 at .5 opacity */
581
- --bs-border-input: var(--bs-violet-200);
582
- --bs-border-active: var(--bs-blue-400);
583
- --bs-border-error: var(--bs-red-200);
548
+ --bs-ink-invert-base: var(--bs-black);
549
+ --bs-ink-invert-medium: var(--bs-gray-500);
550
+ --bs-ink-invert-light: var(--bs-gray-400);
584
551
 
585
552
  /* Primary */
586
553
  --bs-primary-base: var(--bs-blue-300);
554
+ --bs-primary-medium: var(--bs-blue-200);
587
555
 
588
556
  /* Secondary */
589
557
  --bs-secondary-base: var(--bs-plum-300);
590
558
  --bs-secondary-medium: var(--bs-plum-200);
591
559
 
592
- /* Neutral */
593
- --bs-neutral-dark: var(--bs-gray-100);
594
- --bs-neutral-base: var(--bs-gray-200);
595
- --bs-neutral-medium: var(--bs-gray-300);
596
- --bs-neutral-light: var(--bs-gray-400);
597
- --bs-neutral-lightest: var(--bs-gray-500);
598
-
599
560
  /* Accent 1 */
600
561
  --bs-accent-1-base: var(--bs-royal-300);
601
562
  --bs-accent-1-medium: var(--bs-royal-200);
602
563
 
603
564
  /* Accent 2 */
604
565
  --bs-accent-2-base: var(--bs-violet-300);
566
+ --bs-accent-2-medium: var(--bs-violet-200);
605
567
 
606
568
  /* Accent 3 */
607
569
  --bs-accent-3-base: var(--bs-pink-300);
570
+ --bs-accent-3-medium: var(--bs-pink-200);
608
571
 
609
572
  /* Accent 4 */
610
- --bs-accent-4-base: var(--bs-navy-200);
573
+ --bs-accent-4-base: var(--bs-purple-300);
574
+ --bs-accent-4-medium: var(--bs-purple-200);
611
575
 
612
- /* Positive */
613
- --bs-positive-base: var(--bs-purple-300);
576
+ /* Accent 5 */
577
+ --bs-accent-5-base: var(--bs-orange-300);
578
+ --bs-accent-5-medium: var(--bs-orange-200);
614
579
 
615
- /* Ecommerce Positive */
616
- --bs-ecomm-positive-base: var(--bs-green-300);
580
+ /* Accent 6 */
581
+ --bs-accent-6-base: var(--bs-red-300);
582
+
583
+ /* Accent 7 */
584
+ --bs-accent-7-base: var(--bs-navy-300);
585
+ --bs-accent-7-medium: var(--bs-navy-200);
586
+
587
+ /* Neutral */
588
+ --bs-neutral-dark: var(--bs-gray-100);
589
+ --bs-neutral-base: var(--bs-gray-200);
590
+ --bs-neutral-medium: var(--bs-gray-300);
591
+ --bs-neutral-light: var(--bs-gray-400);
592
+ --bs-neutral-lightest: var(--bs-gray-500);
617
593
 
618
594
  /* Warning */
619
- --bs-warning-dark: var(--bs-orange-400);
620
- --bs-warning-base: var(--bs-orange-300);
595
+ --bs-warning-base: var(--bs-orange-400);
596
+ --bs-warning-medium: var(--bs-orange-200);
621
597
 
622
598
  /* Negative */
623
- --bs-negative-dark: var(--bs-red-400);
624
599
  --bs-negative-base: var(--bs-red-300);
600
+ --bs-negative-medium: var(--bs-red-200);
625
601
 
602
+ /* Background */
603
+ --bs-bg-base: var(--bs-slate-600);
604
+ --bs-bg-light: var(--bs-slate-500);
605
+ --bs-bg-medium: var(--bs-slate-400);
606
+ --bs-bg-disabled: rgba(78, 79, 95, 0.3); /* gray-400 at 30% */
607
+ --bs-bg-invert-base: var(--bs-white);
608
+ --bs-bg-invert-light: var(--bs-gray-50);
609
+ --bs-bg-invert-medium: var(--bs-gray-100);
610
+ --bs-bg-base-to-light: var(--bs-slate-500);
611
+ --bs-bg-base-to-medium: var(--bs-slate-400);
612
+ --bs-bg-medium-to-base: var(--bs-slate-600);
613
+ --bs-bg-medium-to-light: var(--bs-slate-500);
614
+ --bs-bg-light-to-base: var(--bs-slate-600);
615
+ --bs-bg-light-to-medium: var(--bs-slate-400);
616
+
617
+ /* Borders */
618
+ --bs-border-dark: var(--bs-gray-300);
619
+ --bs-border-base: rgba(163, 164, 183, 0.7); /* gray-300 at 70% */
620
+ --bs-border-medium: var(--bs-gray-400);
621
+ --bs-border-light: rgba(78, 79, 95, 0.5); /* gray-400 at 50% */
622
+ --bs-border-medium-to-light: rgba(78, 79, 95, 0.5); /* gray-400 at 50% */
623
+ --bs-border-input: var(--bs-violet-200);
624
+ --bs-border-active: var(--bs-blue-300);
625
+ --bs-border-error: var(--bs-red-300);
626
626
 
627
627
  /* Atom gradients */
628
628
  --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);
@@ -640,9 +640,16 @@
640
640
  --bs-shadow-drawerRight: 16px 20px 40px 0 #000;
641
641
  --bs-shadow-profilePhoto: inset 0px 0px 0.5em var(--bs-shadow-secondary);
642
642
 
643
-
644
-
645
643
  /* -------------- Deprecated Color Tokens -------------- */
644
+ /* Ink */
645
+ --bs-ink-blue: var(--bs-blue-200); /* replaced by Ink Primary */
646
+ --bs-ink-orange: var(--bs-orange-200); /* replaced by Ink Warning */
647
+ --bs-ink-pink: var(--bs-pink-200); /* replaced by Ink Accent 3 */
648
+ --bs-ink-plum: var(--bs-plum-100); /* replaced by Ink Secondary */
649
+ --bs-ink-purple: var(--bs-purple-200); /* replaced by Ink Accent 4 */
650
+ --bs-ink-red: var(--bs-red-200); /* replaced by Ink Negative */
651
+ --bs-ink-royal: var(--bs-royal-200); /* replaced by Ink Accent 1 */
652
+ --bs-ink-violet: var(--bs-violet-200); /* replaced by Ink Accent 2 */
646
653
 
647
654
  /* Blue (replaced by Primary) */
648
655
  --bs-blue-base: var(--bs-blue-300);
@@ -653,7 +660,7 @@
653
660
  --bs-gray-light: var(--bs-gray-400);
654
661
  --bs-gray-lightest: var(--bs-gray-500);
655
662
 
656
- /* Navy (replaced by Accent 4) */
663
+ /* Navy (replaced by Accent 7) */
657
664
  --bs-navy-base: var(--bs-navy-200);
658
665
 
659
666
  /* Orange (replaced by Warning) */
@@ -667,7 +674,7 @@
667
674
  --bs-plum-base: var(--bs-plum-300);
668
675
  --bs-plum-medium: var(--bs-plum-200);
669
676
 
670
- /* Purple (replaced by Positive) */
677
+ /* Purple (replaced by Accent 4) */
671
678
  --bs-purple-base: var(--bs-purple-300);
672
679
 
673
680
  /* Red (replaced by Negative) */
@@ -679,52 +686,16 @@
679
686
 
680
687
  /* Violet (replaced by Accent 2) */
681
688
  --bs-violet-base: var(--bs-violet-300);
682
-
683
-
684
- /* ------------ Deprecated Ink Color Tokens ------------ */
685
-
686
- /* Ink Blue (replaced by Ink Primary) */
687
- --bs-ink-blue: var(--bs-blue-200);
688
-
689
- /* Ink Orange (replaced by Ink Warning) */
690
- --bs-ink-orange: var(--bs-orange-200);
691
-
692
- /* Ink Pink (replaced by Ink Accent 3) */
693
- --bs-ink-pink: var(--bs-pink-200);
694
-
695
- /* Ink Plum (replaced by Ink Secondary) */
696
- --bs-ink-plum: var(--bs-plum-100);
697
-
698
- /* Ink Purple (replaced by Ink Positive) */
699
- --bs-ink-purple: var(--bs-purple-200);
700
-
701
- /* Ink Red (replaced by Ink Negative) */
702
- --bs-ink-red: var(--bs-red-200);
703
-
704
- /* Ink Royal (replaced by Ink Accent 1) */
705
- --bs-ink-royal: var(--bs-royal-200);
706
-
707
- /* Ink Violet (replaced by Ink Accent 2) */
708
- --bs-ink-violet: var(--bs-violet-200);
709
689
  }
710
- /* Token Overrides (Softchoice branding) */
711
690
  .softchoice {
712
691
  /* Ink */
713
692
  --bs-ink-primary: var(--bs-cobalt-400);
714
- --bs-ink-secondary: var(--bs-midnight-400);
715
- --bs-ink-accent-1: var(--bs-orange-500);
716
- --bs-ink-negative: var(--bs-maroon-500);
693
+ --bs-ink-secondary: var(--bs-orange-500);
694
+ --bs-ink-accent-1: var(--bs-midnight-400);
695
+ --bs-ink-accent-4: var(--bs-orchid-400);
717
696
  --bs-ink-positive: var(--bs-green-500);
718
697
  --bs-ink-warning: var(--bs-yellow-500);
719
-
720
- /* Background */
721
- --bs-bg-light: var(--bs-charcoal-100);
722
- --bs-bg-medium: var(--bs-charcoal-200);
723
- --bs-bg-disabled: var(--bs-charcoal-300);
724
- --bs-bg-medium-to-base: var(--bs-charcoal-200);
725
- --bs-bg-medium-to-light: var(--bs-charcoal-200);
726
- --bs-bg-light-to-base: var(--bs-charcoal-100);
727
- --bs-bg-light-to-medium: var(--bs-charcoal-100);
698
+ --bs-ink-negative: var(--bs-maroon-500);
728
699
 
729
700
  /* Primary */
730
701
  --bs-primary-base-fixed: var(--bs-cobalt-400);
@@ -735,12 +706,35 @@
735
706
  --bs-primary-highlight: var(--bs-cobalt-10);
736
707
 
737
708
  /* Secondary */
738
- --bs-secondary-base-fixed: var(--bs-midnight-400);
739
- --bs-secondary-base: var(--bs-midnight-400);
740
- --bs-secondary-medium: var(--bs-midnight-300);
741
- --bs-secondary-light: var(--bs-midnight-200);
742
- --bs-secondary-lightest: var(--bs-midnight-100);
743
- --bs-secondary-highlight: var(--bs-midnight-10);
709
+ --bs-secondary-base-fixed: var(--bs-orange-400);
710
+ --bs-secondary-base: var(--bs-orange-400);
711
+ --bs-secondary-medium: var(--bs-orange-300);
712
+ --bs-secondary-light: var(--bs-orange-200);
713
+ --bs-secondary-lightest: var(--bs-orange-100);
714
+ --bs-secondary-highlight: var(--bs-orange-10);
715
+
716
+ /* Accent 1 */
717
+ --bs-accent-1-base-fixed: var(--bs-midnight-400);
718
+ --bs-accent-1-base: var(--bs-midnight-400);
719
+ --bs-accent-1-medium: var(--bs-midnight-300);
720
+ --bs-accent-1-light: var(--bs-midnight-200);
721
+ --bs-accent-1-lightest: var(--bs-midnight-100);
722
+ --bs-accent-1-highlight: var(--bs-midnight-10);
723
+
724
+ /* Accent 4 */
725
+ --bs-accent-4-base-fixed: var(--bs-orchid-400);
726
+ --bs-accent-4-base: var(--bs-orchid-400);
727
+ --bs-accent-4-medium: var(--bs-orchid-300);
728
+ --bs-accent-4-light: var(--bs-orchid-200);
729
+ --bs-accent-4-lightest: var(--bs-orchid-100);
730
+ --bs-accent-4-highlight: var(--bs-orchid-10);
731
+
732
+ /* Accent 5 */
733
+ --bs-accent-5-base: var(--bs-gold-400);
734
+ --bs-accent-5-medium: var(--bs-gold-300);
735
+ --bs-accent-5-light: var(--bs-gold-200);
736
+ --bs-accent-5-lightest: var(--bs-gold-100);
737
+ --bs-accent-5-highlight: var(--bs-gold-10);
744
738
 
745
739
  /* Neutral */
746
740
  --bs-neutral-dark: var(--bs-charcoal-500);
@@ -749,37 +743,28 @@
749
743
  --bs-neutral-light: var(--bs-charcoal-200);
750
744
  --bs-neutral-lightest: var(--bs-charcoal-100);
751
745
 
752
- /* Accent 1 */
753
- --bs-accent-1-base-fixed: var(--bs-cobalt-400);
754
- --bs-accent-1-base: var(--bs-cobalt-400);
755
- --bs-accent-1-medium: var(--bs-cobalt-300);
756
- --bs-accent-1-light: var(--bs-cobalt-200);
757
- --bs-accent-1-lightest: var(--bs-cobalt-100);
758
- --bs-accent-1-highlight: var(--bs-cobalt-10);
759
-
760
- /* Positive */
761
- --bs-positive-base-fixed: var(--bs-green-400);
762
- --bs-positive-base: var(--bs-green-400);
763
- --bs-positive-medium: var(--bs-green-300);
764
- --bs-positive-light: var(--bs-green-200);
765
- --bs-positive-lightest: var(--bs-green-100);
766
- --bs-positive-highlight: var(--bs-green-10);
767
-
768
746
  /* Warning */
769
- --bs-warning-dark: var(--bs-yellow-450);
770
747
  --bs-warning-base: var(--bs-yellow-400);
771
748
  --bs-warning-medium: var(--bs-yellow-300);
772
- --bs-warning-light: var(--bs-yellow-200);
773
- --bs-warning-lightest: var(--bs-yellow-100);
774
749
  --bs-warning-highlight: var(--bs-yellow-10);
775
750
 
776
751
  /* Negative */
777
- --bs-negative-dark: var(--bs-maroon-500);
778
- --bs-negative-base: var(--bs-maroon-400);
752
+ --bs-negative-base: var(--bs-maroon-500);
779
753
  --bs-negative-medium: var(--bs-maroon-300);
780
- --bs-negative-light: var(--bs-maroon-200);
781
- --bs-negative-lightest: var(--bs-maroon-100);
782
754
  --bs-negative-highlight: var(--bs-maroon-10);
755
+
756
+ /* Background */
757
+ --bs-bg-light: var(--bs-charcoal-100);
758
+ --bs-bg-medium: var(--bs-charcoal-200);
759
+ --bs-bg-disabled: var(--bs-charcoal-300);
760
+ --bs-bg-medium-to-base: var(--bs-charcoal-200);
761
+ --bs-bg-medium-to-light: var(--bs-charcoal-200);
762
+ --bs-bg-light-to-base: var(--bs-charcoal-100);
763
+ --bs-bg-light-to-medium: var(--bs-charcoal-100);
764
+
765
+ /* Borders */
766
+ --bs-border-active: var(--bs-cobalt-400);
767
+ --bs-border-error: var(--bs-maroon-500);
783
768
  }
784
769
  /* Reset */
785
770
  /* Provides the minimum reset needed for CSS components to function properly */
@@ -1104,8 +1089,8 @@ input:where([type='checkbox']:checked, [type='checkbox']:indeterminate, [type='r
1104
1089
  }
1105
1090
  /* ---------- Error state ----------- */
1106
1091
  input:where([type='checkbox'], [type='radio'])[data-error]:where(:not([data-error="false"])) {
1107
- --box-shadow: var(--bs-negative-base);
1108
- --outline-color: var(--bs-negative-base);
1092
+ --box-shadow: var(--bs-ink-negative);
1093
+ --outline-color: var(--bs-ink-negative);
1109
1094
  }
1110
1095
  /* !! Styles duplicated from components/input-general.css !! */
1111
1096
  /* Includes text inputs & textarea */
@@ -1235,9 +1220,6 @@ a {
1235
1220
  text-underline-offset: 2px;
1236
1221
  transition: all var(--bs-transition-quick) var(--bs-transition-ease);
1237
1222
  }
1238
- a:where(:hover) {
1239
- text-decoration: underline;
1240
- }
1241
1223
  a:where(:visited) {
1242
1224
  color: var(--bs-ink-secondary);
1243
1225
  }
@@ -1249,17 +1231,6 @@ a:where(:focus-visible) {
1249
1231
  a:where(:focus:not(:focus-visible)) {
1250
1232
  outline: none;
1251
1233
  }
1252
- /* Links */
1253
- .dark :where(a) {
1254
- color: var(--bs-purple-200);
1255
- outline-color: var(--bs-blue-300);
1256
- }
1257
- .dark :where(a):where(:hover),
1258
- .dark :where(a):where(:focus),
1259
- .dark :where(a):where(:focus-visible) {
1260
- color: var(--bs-pink-300);
1261
- text-decoration-color: var(--bs-purple-200);
1262
- }
1263
1234
  /* !! Styles duplicated from components/_deprecated/select.css !! */
1264
1235
  /*
1265
1236
  Custom properties:
@@ -1589,7 +1560,7 @@ table:where([data-sticky^="left"]) :is(td:first-child, th:first-child) {
1589
1560
  }
1590
1561
  /* data-variant="negative" list option keyboard navigation focus */
1591
1562
  .bs-dropdown-options-deprecated:where(:focus-visible) :where(li[data-variant~="negative"][data-active]) {
1592
- --focus-border-color: var(--bs-negative-light);
1563
+ --focus-border-color: var(--bs-red-light);
1593
1564
  }
1594
1565
  /* Multi-select divider */
1595
1566
  .bs-dropdown-options-deprecated :where(li[role="separator"]) {
@@ -2212,129 +2183,125 @@ Custom properties:
2212
2183
  }
2213
2184
  /* Base Toast Styles */
2214
2185
  .bs-toast-deprecated {
2215
- --toast-transform: translate(0, calc(100% + 1.5rem));
2186
+ --toast-transform: translate(0, calc(100% + 1.5rem));
2216
2187
 
2217
- background-color: var(--bs-bg-base-to-light);
2218
- border-top: 4px solid var(--bs-primary-base);
2219
- bottom: 1.5rem;
2220
- box-shadow: var(--bs-shadow-contentMedium);
2221
- left: 0;
2222
- margin-left: 1.5rem;
2223
- margin-right: 1.5rem;
2224
- opacity: 0;
2225
- position: fixed;
2226
- right: 0;
2227
- transform: var(--toast-transform);
2228
- transition-duration: var(--bs-transition-medium);
2229
- transition-property: transform, opacity;
2230
- transition-timing-function: var(--bs-transition-ease);
2231
- /* Clamp width for mobile -> full screen */
2232
- width: clamp(17rem, calc(100vw - 3rem), 25rem);
2233
- z-index: 999;
2188
+ background-color: var(--bs-bg-base-elevated);
2189
+ border-top: 4px solid var(--bs-primary-base);
2190
+ bottom: 1.5rem;
2191
+ box-shadow: var(--bs-shadow-contentMedium);
2192
+ left: 0;
2193
+ margin-left: 1.5rem;
2194
+ margin-right: 1.5rem;
2195
+ opacity: 0;
2196
+ position: fixed;
2197
+ right: 0;
2198
+ transform: var(--toast-transform);
2199
+ transition-duration: 200ms;
2200
+ transition-property: transform, opacity;
2201
+ transition-timing-function: ease;
2202
+ /* Clamp width for mobile -> full screen */
2203
+ width: clamp(17rem, calc(100vw - 3rem), 25rem);
2204
+ z-index: 999;
2234
2205
  }
2235
2206
  .bs-toast-deprecated:where([data-stacked]:not([data-stacked="false"])) {
2236
- bottom: auto;
2237
- left: auto;
2238
- position: static;
2239
- right: auto;
2240
- z-index: auto;
2207
+ bottom: auto;
2208
+ left: auto;
2209
+ position: static;
2210
+ right: auto;
2211
+ z-index: auto;
2241
2212
  }
2242
2213
  /* Mobile - Toast comes up from bottom */
2243
2214
  .bs-toast-deprecated:where([data-shown]:not([data-shown="false"])) {
2244
- opacity: 1;
2245
- transform: translate(0, 0);
2215
+ opacity: 1;
2216
+ transform: translate(0, 0);
2246
2217
  }
2247
2218
  .bs-toast-header-deprecated {
2248
- align-items: center;
2249
- color: var(--bs-ink-base);
2250
- display: flex;
2251
- gap: 0.5rem;
2252
- padding: 1rem;
2219
+ align-items: center;
2220
+ color: var(--bs-ink-base);
2221
+ display: flex;
2222
+ gap: 0.5rem;
2223
+ padding: 1rem;
2253
2224
  }
2254
- .bs-toast-header-deprecated :where(.bs-toast-header-icon-deprecated) {
2255
- color: var(--bs-primary-base);
2225
+ .bs-toast-header-deprecated :where(.bs-toast-header-deprecated-icon) {
2226
+ color: var(--bs-primary-base);
2256
2227
  }
2257
- .bs-toast-header-deprecated :where(h5) {
2258
- font-weight: 400;
2228
+ .bs-toast-header-deprecated :where(.bs-toast-header-deprecated-text) {
2229
+ font-size: var(--bs-text-md);
2230
+ font-weight: var(--bs-font-normal);
2231
+ line-height: var(--bs-leading-lg);
2259
2232
  }
2260
2233
  .bs-toast-body-deprecated {
2261
- border-bottom: 1px solid var(--bs-border-base);
2262
- color: var(--bs-ink-light);
2263
- padding-bottom: 1rem;
2264
- padding-left: 1rem;
2265
- padding-right: 1rem;
2234
+ border-bottom: 1px solid var(--bs-border-base);
2235
+ color: var(--bs-ink-light);
2236
+ padding-bottom: 1rem;
2237
+ padding-left: 1rem;
2238
+ padding-right: 1rem;
2266
2239
  }
2267
2240
  .bs-toast-actions-deprecated {
2268
- /* Mobile - Buttons will be stacked */
2269
- display: flex;
2270
- flex-direction: row;
2271
- gap: 1rem;
2272
- justify-content: flex-end;
2273
- padding-bottom: 0.5rem;
2274
- padding-left: 1rem;
2275
- padding-right: 1rem;
2276
- padding-top: 0.5rem;
2241
+ /* Mobile - Buttons will be stacked */
2242
+ display: flex;
2243
+ flex-direction: row;
2244
+ gap: 1rem;
2245
+ justify-content: flex-end;
2246
+ padding-bottom: 0.5rem;
2247
+ padding-left: 1rem;
2248
+ padding-right: 1rem;
2249
+ padding-top: 0.5rem;
2277
2250
  }
2278
2251
  .bs-toast-actions-deprecated:where([data-stacked]:not([data-stacked="false"])) {
2279
- flex-direction: column-reverse;
2252
+ flex-direction: column-reverse;
2280
2253
  }
2281
2254
  /* Warning Toast Styles */
2282
2255
  .bs-toast-deprecated:where([data-variant^='warning']) {
2283
- border-top: 4px solid var(--bs-warning-base);
2256
+ border-top: 4px solid var(--bs-warning-base);
2284
2257
  }
2285
- .bs-toast-deprecated:where([data-variant^='warning']) :where(.bs-toast-header-deprecated .bs-toast-header-icon-deprecated) {
2286
- color: var(--bs-ink-warning);
2258
+ .bs-toast-deprecated:where([data-variant^='warning']) :where(.bs-toast-header-deprecated .bs-toast-header-deprecated-icon) {
2259
+ color: var(--bs-ink-warning);
2287
2260
  }
2288
2261
  /* Positive Toast Styles */
2289
2262
  .bs-toast-deprecated:where([data-variant^='positive']) {
2290
- border-top: 4px solid var(--bs-positive-base);
2263
+ border-top: 4px solid var(--bs-positive-base);
2291
2264
  }
2292
- .bs-toast-deprecated:where([data-variant^='positive']) :where(.bs-toast-header-deprecated .bs-toast-header-icon-deprecated) {
2293
- color: var(--bs-ink-positive);
2294
- }
2295
- :where(.dark) .bs-toast-deprecated:where([data-variant^='positive']) {
2296
- border-top: 4px solid var(--bs-positive-light);
2297
- }
2298
- :where(.dark) .bs-toast-deprecated:where([data-variant^='positive']) :where(.bs-toast-header-deprecated .bs-toast-header-icon-deprecated) {
2299
- color: var(--bs-positive-light);
2265
+ .bs-toast-deprecated:where([data-variant^='positive']) :where(.bs-toast-header-deprecated .bs-toast-header-deprecated-icon) {
2266
+ color: var(--bs-ink-positive);
2300
2267
  }
2301
2268
  /* Negative Toast Styles */
2302
2269
  .bs-toast-deprecated:where([data-variant^='negative']) {
2303
- border-top: 4px solid var(--bs-negative-dark);
2270
+ border-top: 4px solid var(--bs-negative-dark);
2304
2271
  }
2305
- .bs-toast-deprecated:where([data-variant^='negative']) :where(.bs-toast-header-deprecated .bs-toast-header-icon-deprecated) {
2306
- color: var(--bs-negative-dark);
2272
+ .bs-toast-deprecated:where([data-variant^='negative']) :where(.bs-toast-header-deprecated .bs-toast-header-deprecated-icon) {
2273
+ color: var(--bs-negative-dark);
2307
2274
  }
2308
2275
  @media (min-width: 440px) {
2309
- .bs-toast-deprecated {
2310
- --toast-transform: translate(calc(100% + 1.5rem), 0);
2276
+ .bs-toast-deprecated {
2277
+ --toast-transform: translate(calc(100% + 1.5rem), 0);
2311
2278
 
2312
- left: auto;
2313
- margin-left: 0;
2314
- margin-right: 0;
2315
- opacity: 0;
2316
- right: 1.5rem;
2317
- }
2279
+ left: auto;
2280
+ margin-left: 0;
2281
+ margin-right: 0;
2282
+ opacity: 0;
2283
+ right: 1.5rem;
2284
+ }
2318
2285
 
2319
- .bs-toast-deprecated:where([data-shown]:not([data-shown="false"])) {
2320
- opacity: 1;
2321
- transform: translate(0, 0);
2322
- }
2286
+ .bs-toast-deprecated:where([data-shown]:not([data-shown="false"])) {
2287
+ opacity: 1;
2288
+ transform: translate(0, 0);
2289
+ }
2323
2290
 
2324
- .bs-toast-actions-deprecated:where([data-stacked]:not([data-stacked="false"])) {
2325
- flex-direction: row;
2326
- }
2291
+ .bs-toast-actions-deprecated:where([data-stacked]:not([data-stacked="false"])) {
2292
+ flex-direction: row;
2293
+ }
2327
2294
  }
2328
2295
  /* Vue Transition Styles - Only used in Vue component */
2329
- .bs-toast-deprecated:where(.bs-toast-enter-from),
2330
- .bs-toast-deprecated:where(.bs-toast-leave-to) {
2331
- opacity: 0;
2332
- transform: var(--toast-transform);
2296
+ .bs-toast-deprecated:where(.bs-toast-deprecated-enter-from),
2297
+ .bs-toast-deprecated:where(.bs-toast-deprecated-leave-to) {
2298
+ opacity: 0;
2299
+ transform: var(--toast-transform);
2333
2300
  }
2334
- .bs-toast-deprecated:where(.bs-toast-enter-to),
2335
- .bs-toast-deprecated:where(.bs-toast-leave-from) {
2336
- opacity: 1;
2337
- transform: translate(0, 0);
2301
+ .bs-toast-deprecated:where(.bs-toast-deprecated-enter-to),
2302
+ .bs-toast-deprecated:where(.bs-toast-deprecated-leave-from) {
2303
+ opacity: 1;
2304
+ transform: translate(0, 0);
2338
2305
  }
2339
2306
  /* Container for holding all toasts that will be visible */
2340
2307
  .bs-toaster-deprecated {
@@ -2757,16 +2724,16 @@ This must go last to properly override the other classes
2757
2724
  -webkit-backdrop-filter: blur(4px);
2758
2725
  backdrop-filter: blur(4px);
2759
2726
  background: rgba(29, 30, 72, 0.05);
2760
- /*
2761
- Should be very rare, but below is an optional way for consumer to override z-index.
2762
- See note in popover.css for more info...most often (but still rare) the consumer
2763
- would override the --bs-popover-z-index instead, which would take care of this bs-backdrop too.
2764
- Should be a very very rare use case to need to override both independently to different values.
2765
- */
2766
- z-index: var(--bs-backdrop-z-index, var(--bs-popover-z-index));
2727
+ transition-property: opacity;
2728
+ transition-duration: var(--bs-backdrop-transition-duration);
2729
+ transition-timing-function: var(--bs-transition-cubic);
2730
+ }
2731
+ .bs-backdrop-enter-from,
2732
+ .bs-backdrop-leave-to {
2733
+ opacity: 0;
2767
2734
  }
2768
2735
  .bs-badge {
2769
- --badge-bg: var(--bs-negative-dark);
2736
+ --badge-bg: var(--bs-accent-6-base);
2770
2737
  --badge-text: var(--bs-white);
2771
2738
  display: inline-block;
2772
2739
  }
@@ -2894,10 +2861,7 @@ This must go last to properly override the other classes
2894
2861
  text-decoration: none;
2895
2862
  }
2896
2863
  .bs-banner:where([data-variant="negative"]) {
2897
- --banner-bg: var(--bs-red-300);
2898
- }
2899
- :where(.softchoice) .bs-banner:where([data-variant="negative"]) {
2900
- --banner-bg: var(--bs-maroon-400);
2864
+ --banner-bg: var(--bs-accent-6-medium);
2901
2865
  }
2902
2866
  @media (min-width: 957px) {
2903
2867
  .bs-banner {
@@ -2912,7 +2876,7 @@ This must go last to properly override the other classes
2912
2876
  --btn-ghost-ink: var(--bs-ink-primary);
2913
2877
  --btn-highlight: var(--bs-primary-lightest);
2914
2878
  --btn-ink: var(--bs-white);
2915
- --btn-main: var(--bs-primary-base-fixed);
2879
+ --btn-main: var(--bs-primary-base);
2916
2880
  --btn-padding: .25rem .75rem;
2917
2881
  --btn-secondary: var(--bs-primary-medium);
2918
2882
  --btn-text-size: var(--bs-text-md);
@@ -3013,50 +2977,67 @@ See: https://github.wwt.com/custom-apps/wwt-blue-steel/pull/917
3013
2977
  --btn-ghost-ink: var(--bs-ink-secondary);
3014
2978
  --btn-highlight: var(--bs-secondary-lightest);
3015
2979
  --btn-light: var(--bs-secondary-highlight);
3016
- --btn-main: var(--bs-secondary-base-fixed);
2980
+ --btn-main: var(--bs-secondary-base);
3017
2981
  --btn-secondary: var(--bs-secondary-medium);
3018
2982
  }
3019
- .dark .bs-button:where([data-variant^='secondary']) {
3020
- --btn-highlight: var(--bs-secondary-base-fixed);
3021
- --btn-light: var(--bs-navy-400);
3022
- }
3023
2983
  .bs-button:where([data-variant^='positive']) {
3024
2984
  --btn-ghost-ink: var(--bs-ink-positive);
3025
- --btn-highlight: var(--bs-positive-lightest);
2985
+ --btn-highlight: var(--bs-positive-highlight);
3026
2986
  --btn-light: var(--bs-positive-highlight);
3027
- --btn-main: var(--bs-positive-base-fixed);
2987
+ --btn-main: var(--bs-positive-base);
3028
2988
  --btn-secondary: var(--bs-positive-medium);
3029
2989
  }
3030
2990
  .bs-button:where([data-variant^='warning']) {
3031
2991
  --btn-ghost-ink: var(--bs-ink-warning);
3032
- --btn-highlight: var(--bs-warning-lightest);
2992
+ --btn-highlight: var(--bs-warning-highlight);
3033
2993
  --btn-light: var(--bs-warning-highlight);
3034
- --btn-main: var(--bs-warning-dark);
2994
+ --btn-main: var(--bs-warning-base);
3035
2995
  --btn-secondary: var(--bs-warning-medium);
3036
2996
  }
3037
2997
  .bs-button:where([data-variant^='negative']) {
3038
2998
  --btn-ghost-ink: var(--bs-ink-negative);
3039
- --btn-highlight: var(--bs-negative-lightest);
2999
+ --btn-highlight: var(--bs-negative-highlight);
3040
3000
  --btn-light: var(--bs-negative-highlight);
3041
- --btn-main: var(--bs-negative-dark);
3001
+ --btn-main: var(--bs-negative-base);
3042
3002
  --btn-secondary: var(--bs-negative-medium);
3043
3003
  }
3044
- /* pink variant */
3045
- .bs-button:where([data-variant^='pink']) {
3046
- --btn-ghost-ink: var(--bs-ink-accent-3);
3047
- --btn-highlight: var(--bs-accent-3-base-fixed);
3048
- --btn-light: var(--bs-accent-3-highlight);
3049
- --btn-main: var(--bs-accent-3-base-fixed);
3050
- --btn-secondary: var(--bs-accent-3-medium);
3004
+ .bs-button:where([data-variant^='accent-1']) {
3005
+ --btn-ghost-ink: var(--bs-ink-accent-1);
3006
+ --btn-highlight: var(--bs-accent-1-base);
3007
+ --btn-light: var(--bs-accent-1-highlight);
3008
+ --btn-main: var(--bs-accent-1-base);
3009
+ --btn-secondary: var(--bs-accent-1-medium);
3051
3010
  }
3052
- /* royal blue variant */
3011
+ /* DEPRECATED - royal blue variant (use accent-1 instead) */
3053
3012
  .bs-button:where([data-variant^='royal']) {
3054
3013
  --btn-ghost-ink: var(--bs-ink-accent-1);
3055
- --btn-highlight: var(--bs-accent-1-base-fixed);
3014
+ --btn-highlight: var(--bs-accent-1-base);
3056
3015
  --btn-light: var(--bs-accent-1-highlight);
3057
- --btn-main: var(--bs-accent-1-base-fixed);
3016
+ --btn-main: var(--bs-accent-1-base);
3058
3017
  --btn-secondary: var(--bs-accent-1-medium);
3059
3018
  }
3019
+ .bs-button:where([data-variant^='accent-2']) {
3020
+ --btn-ghost-ink: var(--bs-ink-accent-2);
3021
+ --btn-highlight: var(--bs-accent-2-base);
3022
+ --btn-light: var(--bs-accent-2-highlight);
3023
+ --btn-main: var(--bs-accent-2-base);
3024
+ --btn-secondary: var(--bs-accent-2-medium);
3025
+ }
3026
+ .bs-button:where([data-variant^='accent-3']) {
3027
+ --btn-ghost-ink: var(--bs-ink-accent-3);
3028
+ --btn-highlight: var(--bs-accent-3-base);
3029
+ --btn-light: var(--bs-accent-3-highlight);
3030
+ --btn-main: var(--bs-accent-3-base);
3031
+ --btn-secondary: var(--bs-accent-3-medium);
3032
+ }
3033
+ /* DEPRECATED - pink variant (use accent-3 instead) */
3034
+ .bs-button:where([data-variant^='pink']) {
3035
+ --btn-ghost-ink: var(--bs-ink-accent-3);
3036
+ --btn-highlight: var(--bs-accent-3-base);
3037
+ --btn-light: var(--bs-accent-3-highlight);
3038
+ --btn-main: var(--bs-accent-3-base);
3039
+ --btn-secondary: var(--bs-accent-3-medium);
3040
+ }
3060
3041
  /* white variant - for dark backgrounds + ghost btn or text btn only */
3061
3042
  .bs-button:where([data-variant^='white'][data-ghost]:not([data-ghost="false"])) {
3062
3043
  --btn-ghost-ink: var(--bs-ink-white);
@@ -3509,35 +3490,71 @@ a.bs-circle-button {
3509
3490
  --btn-secondary: transparent;
3510
3491
  --btn-shadow-color-active: transparent;
3511
3492
  }
3512
- .bs-circle-button:where([data-variant="color-blue"]) {
3513
- --btn-border-color-focused: var(--bs-ink-primary);
3514
- --btn-text-color: var(--bs-ink-primary);
3515
- --btn-text-color-hovered: var(--bs-primary-base);
3493
+ .bs-circle-button:where([data-variant="color-primary"]) {
3494
+ --btn-border-color-focused: var(--bs-ink-primary);
3495
+ --btn-text-color: var(--bs-ink-primary);
3496
+ --btn-text-color-hovered: var(--bs-primary-base);
3497
+ }
3498
+ /* DEPRECATED - blue variant (use primary instead) */
3499
+ .bs-circle-button:where([data-variant="color-blue"]) {
3500
+ --btn-border-color-focused: var(--bs-ink-primary);
3501
+ --btn-text-color: var(--bs-ink-primary);
3502
+ --btn-text-color-hovered: var(--bs-primary-base);
3503
+ }
3504
+ .bs-circle-button:where([data-variant="color-positive"]) {
3505
+ --btn-border-color-focused: var(--bs-positive-base);
3506
+ --btn-text-color: var(--bs-ink-positive);
3507
+ --btn-text-color-hovered: var(--bs-positive-medium);
3508
+ }
3509
+ /* DEPRECATED - purple variant (use positive instead) */
3510
+ .bs-circle-button:where([data-variant="color-purple"]) {
3511
+ --btn-border-color-focused: var(--bs-positive-base);
3512
+ --btn-text-color: var(--bs-ink-positive);
3513
+ --btn-text-color-hovered: var(--bs-positive-medium);
3514
+ }
3515
+ .bs-circle-button:where([data-variant="color-warning"]) {
3516
+ --btn-border-color-focused: var(--bs-ink-warning);
3517
+ --btn-text-color: var(--bs-ink-warning);
3518
+ --btn-text-color-hovered: var(--bs-warning-base);
3519
+ }
3520
+ /* DEPRECATED - orange variant (use warning instead) */
3521
+ .bs-circle-button:where([data-variant="color-orange"]) {
3522
+ --btn-border-color-focused: var(--bs-ink-warning);
3523
+ --btn-text-color: var(--bs-ink-warning);
3524
+ --btn-text-color-hovered: var(--bs-warning-base);
3525
+ }
3526
+ .bs-circle-button:where([data-variant="color-negative"]) {
3527
+ --btn-border-color-focused: var(--bs-ink-negative);
3528
+ --btn-text-color: var(--bs-ink-negative);
3529
+ --btn-text-color-hovered: var(--bs-negative-base);
3530
+ }
3531
+ /* DEPRECATED - red variant (use negative instead) */
3532
+ .bs-circle-button:where([data-variant="color-red"]) {
3533
+ --btn-border-color-focused: var(--bs-ink-regative);
3534
+ --btn-text-color: var(--bs-ink-negative);
3535
+ --btn-text-color-hovered: var(--bs-negative-base);
3536
+ }
3537
+ .bs-circle-button:where([data-variant="color-accent-1"]) {
3538
+ --btn-border-color-focused: var(--bs-ink-accent-1);
3539
+ --btn-text-color: var(--bs-ink-accent-1);
3540
+ --btn-text-color-hovered: var(--bs-accent-1-medium);
3516
3541
  }
3542
+ /* DEPRECATED - royal blue variant (use accent-1 instead) */
3517
3543
  .bs-circle-button:where([data-variant="color-royal"]) {
3518
3544
  --btn-border-color-focused: var(--bs-ink-accent-1);
3519
3545
  --btn-text-color: var(--bs-ink-accent-1);
3520
3546
  --btn-text-color-hovered: var(--bs-accent-1-medium);
3521
3547
  }
3522
- .bs-circle-button:where([data-variant="color-purple"]) {
3523
- --btn-border-color-focused: var(--bs-positive-base);
3524
- --btn-text-color: var(--bs-ink-positive);
3525
- --btn-text-color-hovered: var(--bs-positive-medium);
3548
+ .bs-circle-button:where([data-variant="color-accent-3"]) {
3549
+ --btn-border-color-focused: var(--bs-accent-3-base);
3550
+ --btn-text-color: var(--bs-ink-accent-3);
3551
+ --btn-text-color-hovered: var(--bs-accent-3-medium);
3526
3552
  }
3553
+ /* DEPRECATED - pink variant (use accent-3 instead) */
3527
3554
  .bs-circle-button:where([data-variant="color-pink"]) {
3528
3555
  --btn-border-color-focused: var(--bs-accent-3-base);
3529
3556
  --btn-text-color: var(--bs-ink-accent-3);
3530
- --btn-text-color-hovered: var(--bs-accent-3-base);
3531
- }
3532
- .bs-circle-button:where([data-variant="color-orange"]) {
3533
- --btn-border-color-focused: var(--bs-ink-warning);
3534
- --btn-text-color: var(--bs-ink-warning);
3535
- --btn-text-color-hovered: var(--bs-warning-base);
3536
- }
3537
- .bs-circle-button:where([data-variant="color-red"]) {
3538
- --btn-border-color-focused: var(--bs-ink-regative);
3539
- --btn-text-color: var(--bs-ink-negative);
3540
- --btn-text-color-hovered: var(--bs-negative-base);
3557
+ --btn-text-color-hovered: var(--bs-accent-3-medium);
3541
3558
  }
3542
3559
  .bs-circle-button:where([data-variant="color-white"]) {
3543
3560
  --btn-border-color-focused: var(--bs-ink-white);
@@ -3556,7 +3573,7 @@ a.bs-circle-button {
3556
3573
  }
3557
3574
  .bs-empty-state {
3558
3575
  --bs-empty-state-description-color: var(--bs-ink-light);
3559
- --bs-empty-state-icon-color: var(--bs-violet-300);
3576
+ --bs-empty-state-icon-color: var(--bs-accent-2-medium);
3560
3577
  --bs-empty-state-title-color: var(--bs-ink-base);
3561
3578
  --col-gap: var(--bs-space-6);
3562
3579
  --cta-spacing: var(--bs-space-4);
@@ -4277,7 +4294,7 @@ button:where(.bs-filter-button) {
4277
4294
  border-color: transparent;
4278
4295
  border-radius: var(--bs-space-1);
4279
4296
  border: 1px solid transparent;
4280
- color: var(--bs-royal-400);
4297
+ color: var(--bs-ink-accent-1);
4281
4298
  cursor: pointer;
4282
4299
  display: inline-flex;
4283
4300
  font-family: inherit;
@@ -4298,11 +4315,11 @@ button:where(.bs-filter-button) {
4298
4315
  }
4299
4316
  /* Hover */
4300
4317
  .bs-inline-tab:where(:not([data-selected]):hover) {
4301
- border-color: var(--bs-royal-400);
4318
+ border-color: var(--bs-ink-accent-1);
4302
4319
  }
4303
4320
  /* Keyboard Focus */
4304
4321
  .bs-inline-tab:where(:focus-visible) {
4305
- outline: 2px solid var(--bs-royal-400);
4322
+ outline: 2px solid var(--bs-ink-accent-1);
4306
4323
 
4307
4324
  &:where([data-selected]) {
4308
4325
  outline-offset: 2px;
@@ -4328,45 +4345,10 @@ button:where(.bs-filter-button) {
4328
4345
  /* -- Dark Mode Overrides -- */
4329
4346
  :where(.dark .bs-inline-tab) {
4330
4347
 
4331
- /* Ink */
4332
- &:not([data-selected], :disabled, [aria-disabled="true"]) {
4333
- color: var(--bs-royal-200);
4334
- }
4335
-
4336
4348
  /* Selected & Disabled */
4337
4349
  &[data-selected]:where(:disabled, [aria-disabled="true"]) {
4338
4350
  color: var(--bs-ink-invert-base);
4339
4351
  }
4340
-
4341
- /* Keyboard Focus */
4342
- &:not([disabled]):where(:focus-visible) {
4343
- outline-color: var(--bs-royal-200);
4344
- }
4345
-
4346
- /* Hover */
4347
- &:not([disabled]):where(:not([data-selected]):hover) {
4348
- border-color: var(--bs-royal-200);
4349
- }
4350
-
4351
- }
4352
- /* -- Softchoice Mode Overrides -- */
4353
- :where(.softchoice .bs-inline-tab) {
4354
-
4355
- /* Ink */
4356
- &:not([data-selected], :disabled, [aria-disabled="true"]) {
4357
- color: var(--bs-cobalt-400);
4358
- }
4359
-
4360
- /* Keyboard Focus */
4361
- &:not([disabled]):where(:focus-visible) {
4362
- outline-color: var(--bs-cobalt-400);
4363
- }
4364
-
4365
- /* Hover */
4366
- &:not([disabled]):where(:not([data-selected]):hover) {
4367
- border-color: var(--bs-cobalt-400);
4368
- }
4369
-
4370
4352
  }
4371
4353
  /* 0 0 1 for width to allow e.g. tailwind override */
4372
4354
  :is(div, *):where(.bs-input-addon) {
@@ -4473,7 +4455,7 @@ and issues with box-sizing
4473
4455
  /* -------- Inner-bordered styles -------- */
4474
4456
  /** Inner borders should be straight; shown only if variant: "inner-bordered" */
4475
4457
  .bs-input-addon:where([data-variant="inner-bordered"]) {
4476
- --input-addon-nested-border: var(--bs-violet-200);
4458
+ --input-addon-nested-border: var(--bs-border-input);
4477
4459
  }
4478
4460
  .bs-input-addon > :where(.bs-input-addon:not(:last-child, :focus-within, [data-part="right"])),
4479
4461
  .bs-input-addon > :where(:not(:last-child, :focus-within, [data-part="right"]))::after {
@@ -4567,7 +4549,7 @@ and issues with box-sizing
4567
4549
  /* Straight-lined ::before border to fill the gap below the rounded ::after border */
4568
4550
  .bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) :where(:focus-within)::before {
4569
4551
  border-bottom-width: 1px;
4570
- border-color: var(--bs-violet-300);
4552
+ border-color: var(--bs-border-input);
4571
4553
  border-radius: 0;
4572
4554
  border-top-width: 1px;
4573
4555
  z-index: 1;
@@ -4770,8 +4752,8 @@ data-autosize-icons="true" - see above
4770
4752
  .bs-boolean :where(input[data-error="true"]), /* deprecate this one in favor of next line */
4771
4753
  .bs-boolean:where([data-error="true"]),
4772
4754
  .bs-checkbox:where([data-error="true"]) {
4773
- --box-shadow: var(--bs-negative-base);
4774
- --outline-color: var(--bs-negative-base);
4755
+ --box-shadow: var(--bs-ink-negative);
4756
+ --outline-color: var(--bs-ink-negative);
4775
4757
  }
4776
4758
  /*
4777
4759
  HEADS-UP! Styling to look like an input is inherited from .bs-input
@@ -4870,73 +4852,88 @@ data-autosize-icons="true" - see above
4870
4852
  .bs-input-phone ul:where(.bs-dropdown-options-deprecated) {
4871
4853
  min-width: 7.5rem;
4872
4854
  }
4873
- :where(.bs-input-search) {
4874
- display: inline-block;
4855
+ .bs-input-search {
4856
+ display: grid;
4857
+ grid-template-columns: 1fr 2.5rem;
4858
+ align-items: center;
4875
4859
  width: 100%;
4860
+ height: var(--input-search-height, 2.5rem);
4876
4861
  }
4877
- .bs-input-search :where(.bs-icon svg) {
4878
- box-sizing: content-box;
4879
- }
4880
- .bs-input-search :where([data-component="bs-icon-search"]) {
4862
+ /* -- Icon -- */
4863
+ .bs-input-search-icon {
4881
4864
  --icon-size: var(--search-icon-size, 1.75rem);
4865
+ position: relative;
4866
+ grid-area: 1 / 1;
4882
4867
  padding: var(--search-icon-padding, 0 0 0 .75rem);
4868
+ height: 100%;
4869
+ pointer-events: none;
4870
+ z-index: 1;
4883
4871
  }
4884
- /* Clear Button */
4885
- .bs-input-search button {
4886
- align-items: center;
4887
- background-color: transparent;
4888
- border-color: transparent;
4889
- color: inherit;
4890
- cursor: pointer;
4872
+ .bs-input-search-icon :where(svg) {
4873
+ box-sizing: content-box;
4874
+ }
4875
+ /* -- Input -- */
4876
+ .bs-input-search-input {
4877
+ --input-padding-inline: .75rem;
4878
+ grid-area: 1 / 1 / 1 / -1;
4879
+ pointer-events: auto;
4880
+ }
4881
+ /* make room for search icon */
4882
+ /* can't use 0,1,0 here due to :is() usage in input-text.css trumping it */
4883
+ .bs-input-search-icon + .bs-input-search-input {
4884
+ padding-inline-start: 2.25rem;
4885
+ }
4886
+ /* make room for X button (so text doesn't overlap) */
4887
+ /* can't use 0,1,0 here due to :is() usage in input-text.css trumping it */
4888
+ .bs-input-search-input:has(+ .bs-input-search-button) {
4889
+ padding-inline-end: 2.25rem;
4890
+ }
4891
+ .bs-input-search:where(:focus-within) :where(.bs-input-search-input) {
4892
+ --input-border: var(--bs-blue-base);
4893
+ }
4894
+ /* -- Button -- */
4895
+ .bs-input-search-button {
4896
+ grid-area: 1 / 2 / 1 / -1;
4891
4897
  display: flex;
4892
- font-family: inherit;
4893
- font-size: var(--bs-text-base);
4898
+ align-items: center;
4899
+ justify-content: center;
4894
4900
  height: 100%;
4895
- padding-bottom: var(--bs-space-0);
4896
- padding-left: 0.75rem;
4897
- padding-right: 0.75rem;
4898
- padding-top: var(--bs-space-0);
4899
- position: relative;
4900
- text-decoration: none;
4901
+ cursor: pointer;
4902
+ background-color: inherit;
4901
4903
  transition: transform var(--bs-transition-fast) var(--bs-transition-ease);
4902
4904
  }
4903
- .bs-input-search button:where(:active) {
4904
- transform: scale(0.97);
4905
- transform-origin: center;
4906
- box-shadow: inset 0px 0px 4px 1px var(--bs-primary-base);
4907
- }
4908
- .bs-input-search button:where(:focus) {
4905
+ .bs-input-search-button:where(:focus-visible) {
4906
+ outline: none;
4909
4907
  border-radius: .25rem;
4910
- box-shadow: var(--focus-border) 0px 0px 0px 1px inset;
4911
- z-index: 1;
4908
+ box-shadow: var(--bs-blue-base) 0px 0px 0px 1px inset;
4909
+ }
4910
+ /* -- Disabled -- */
4911
+ .bs-input-search:where(:has(:disabled)) {
4912
+ color: var(--bs-ink-disabled);
4912
4913
  }
4913
- /* Filter variant */
4914
- .bs-input-search:where([data-variant="filter"]) {
4914
+ /* -- Filter Variant -- */
4915
+ .bs-input-search:where([data-variant="filter"]) :where(.bs-input-search-input) {
4915
4916
  --focus-border: transparent;
4916
4917
  --input-border: transparent;
4917
4918
  --input-addon-height: 1.5rem;
4918
- --input-caret: var(--bs-primary-base);
4919
+ --input-caret: var(--bs-blue-base);
4919
4920
  --input-padding-block: 0 0.125rem;
4920
- --input-padding-inline: 0.5rem;
4921
+ --input-padding-inline: 2.5rem 0.5rem;
4921
4922
  --input-placeholder: var(--bs-ink-light);
4922
4923
  --input-text-size: var(--bs-text-sm);
4923
4924
  --search-icon-size: 1rem;
4924
4925
  --search-icon-padding: 0;
4925
4926
  }
4926
- /* Filter variant: persist placeholder text color (`ink-light`) in dark mode */
4927
- :where(.dark) .bs-input-search:where([data-variant="filter"]) :is(input.bs-input)::-moz-placeholder {
4928
- --input-placeholder: var(--bs-ink-light);
4927
+ .bs-input-search:where([data-variant="filter"]):where(:focus-within) .bs-input-search-input {
4928
+ --input-border: transparent;
4929
4929
  }
4930
- :where(.dark) .bs-input-search:where([data-variant="filter"]) :is(input.bs-input)::placeholder {
4930
+ :where(.dark) .bs-input-search:where([data-variant="filter"]) .bs-input-search-input::-moz-placeholder {
4931
4931
  --input-placeholder: var(--bs-ink-light);
4932
4932
  }
4933
- /* Filter variant: cancels out base hover state styles */
4934
- .bs-input-addon:where([data-variant="filter"]):hover {
4935
- --input-bg: var(--bs-bg-base);
4933
+ :where(.dark) .bs-input-search:where([data-variant="filter"]) .bs-input-search-input::placeholder {
4934
+ --input-placeholder: var(--bs-ink-light);
4936
4935
  }
4937
- /* -------- Disabled styles -------- */
4938
- .bs-input-addon:where([data-variant="filter"][data-disabled="true"]),
4939
- .bs-input-addon:where([data-variant="filter"][data-disabled="true"]) :is(.bs-button, .bs-input) {
4936
+ .bs-input-search:where([data-variant="filter"]):where(:has(:disabled)) .bs-input-search-input {
4940
4937
  --input-bg: var(--bs-bg-base);
4941
4938
  --input-border: transparent;
4942
4939
  }
@@ -5169,11 +5166,17 @@ label:where(.bs-label) {
5169
5166
  }
5170
5167
  }
5171
5168
  .bs-option-group {
5172
- margin: var(--bs-space-3) 0;
5169
+ margin-bottom: var(--bs-space-6);
5173
5170
  padding-top: var(--bs-space-3);
5174
5171
  border-top: 1px solid var(--bs-border-base);
5172
+ display: flex;
5173
+ flex-direction: column;
5175
5174
  }
5176
- .bs-option-group:where(:last-child) {
5175
+ .bs-option-group:where(:first-child) {
5176
+ padding-top: 0;
5177
+ border-top: none;
5178
+ }
5179
+ .bs-option-group:where(:nth-last-child(1 of [data-visible="true"])) {
5177
5180
  margin-bottom: 0;
5178
5181
  }
5179
5182
  .bs-option-group:where(:has(.bs-option-group-title)) {
@@ -5189,27 +5192,47 @@ label:where(.bs-label) {
5189
5192
  display: flex;
5190
5193
  font-size: var(--bs-text-xs);
5191
5194
  font-weight: var(--bs-font-semibold);
5192
- margin: 0 0 var(--bs-space-3);
5193
- min-height: var(--bs-space-8);
5194
- padding: var(--bs-space-1) var(--bs-space-3);
5195
+ height: var(--bs-space-8);
5196
+ margin: 0 0 var(--bs-space-2);
5197
+ padding: var(--bs-space-1) var(--bs-space-3) var(--bs-space-1) 1.75rem;
5195
5198
  position: sticky;
5196
5199
  top: 0;
5200
+ order: -2;
5201
+ z-index: 1;
5202
+ }
5203
+ /* Separator for multiple selected options */
5204
+ .bs-option-group-multiple-hr {
5205
+ margin: 0 var(--bs-space-3) var(--bs-space-3);
5206
+ border-bottom: 0.0625rem solid var(--bs-border-base);
5207
+ }
5208
+ @media (min-width: 1166px) {
5209
+ .bs-option-group-title {
5210
+ padding: var(--bs-space-1) var(--bs-space-3);
5211
+ }
5197
5212
  }
5198
5213
  .bs-option {
5199
- padding: var(--bs-space-1) var(--bs-space-2);
5200
- color: var(--bs-ink-base);
5201
5214
  --description-color: var(--bs-ink-light);
5202
- cursor: pointer;
5203
5215
  border-left: 4px solid transparent;
5204
5216
  border-right: 4px solid transparent;
5217
+ color: var(--bs-ink-base);
5218
+ cursor: pointer;
5205
5219
  overflow-wrap: break-word;
5220
+ padding: var(--bs-space-1) var(--bs-space-3) var(--bs-space-1) var(--bs-space-6);
5206
5221
  scroll-margin-bottom: var(--bs-space-3);
5222
+ /* Make sure options are visible when scrolling with group title */
5223
+ /* This is group title height + margin + padding + border */
5224
+ scroll-margin-top: 2.5rem;
5225
+ }
5226
+ @media (min-width: 1166px) {
5227
+ .bs-option {
5228
+ padding: var(--bs-space-1) var(--bs-space-2);
5229
+ }
5207
5230
  }
5208
5231
  .bs-option {
5209
5232
  margin-bottom: var(--bs-space-2); /* ask ux: 12px is too much, can't see many menu options in view */
5210
5233
  }
5211
- /* is basically doing a last visible child selector, since filtered options and groups are hidden by v-show */
5212
- .bs-option:where(:not(:has(~ [data-visible="true"]))) {
5234
+ /* is basically doing a last visible child selector ignoring selectToTop, since filtered options and groups are hidden by v-show */
5235
+ .bs-option:where(:nth-last-child(1 of [data-visible="true"][data-selected-to-top="false"])) {
5213
5236
  margin-bottom: 0;
5214
5237
  }
5215
5238
  /* -- DISABLED -- */
@@ -5395,10 +5418,11 @@ label:where(.bs-label) {
5395
5418
  padding-right: 2px;
5396
5419
  width: auto;
5397
5420
  }
5421
+ /* todo: waiting to hear back from UX on disabled, but there is at least 1 exmple in code of a pill w/ disable */
5398
5422
  .bs-pill {
5399
5423
  --pill-background: var(--bs-bg-medium);
5400
5424
  --pill-border: transparent;
5401
- --pill-text: var(--bs-royal-400);
5425
+ --pill-text: var(--bs-ink-accent-1);
5402
5426
  --pill-gap: var(--bs-space-2);
5403
5427
 
5404
5428
  align-items: center;
@@ -5420,33 +5444,24 @@ label:where(.bs-label) {
5420
5444
  position: relative;
5421
5445
  text-decoration: none;
5422
5446
  }
5423
- :where(.bs-pill .bs-icon) {
5424
- height: 1rem;
5425
- width: 1rem;
5426
- }
5427
- /* ------------------------------- Dark mode (basic & status types only) ------------------------------- */
5428
- :where(.dark) .bs-pill {
5429
- --pill-text: var(--bs-royal-200);
5447
+ .bs-pill-content {
5448
+ display: inline-flex;
5449
+ align-items: center;
5450
+ gap: var(--pill-gap);
5430
5451
  }
5431
- /* ------------------------------- Softchoice mode (basic & status types only) ------------------------------- */
5432
- :where(.softchoice) .bs-pill {
5433
- --pill-text: var(--bs-cobalt-400);
5452
+ .bs-pill :where(.bs-icon) {
5453
+ height: 0.75rem;
5454
+ width: 0.75rem;
5455
+ flex-shrink: 0;
5434
5456
  }
5435
5457
  /* ------------------------------ Auto-truncation for content ------------------------------ */
5436
5458
  .bs-pill:has([data-truncate="true"]) {
5437
5459
  max-width: 100%;
5438
5460
  }
5439
- .bs-pill > :where([data-truncate="true"]) {
5440
- display: inline-block;
5461
+ .bs-pill-content:where([data-truncate="true"]) {
5462
+ white-space: nowrap;
5441
5463
  overflow: hidden;
5442
5464
  text-overflow: ellipsis;
5443
- white-space: nowrap;
5444
- }
5445
- /* If false, pass thru .bs-pill display styles */
5446
- .bs-pill > :where([data-truncate="false"]) {
5447
- display: inline-flex;
5448
- align-items: center;
5449
- gap: var(--pill-gap);
5450
5465
  }
5451
5466
  /* ------------------------------ Button and Link Styles ------------------------------ */
5452
5467
  :is(a, button).bs-pill {
@@ -5466,37 +5481,47 @@ label:where(.bs-label) {
5466
5481
  }
5467
5482
  /* ------------------------------ Status Styles ------------------------------ */
5468
5483
  .bs-pill:where([data-status]) {
5469
- --status-color: var(--bs-primary-base-fixed);
5470
- }
5471
- .bs-pill:where([data-status])::before {
5472
- background-color: var(--status-color);
5473
- border-radius: 100%;
5474
- content: '';
5475
- height: 12px;
5476
- width: 12px;
5484
+ font-size: var(--bs-text-xs);
5485
+ font-weight: var(--bs-font-semibold);
5486
+ color: var(--status-color);
5477
5487
  }
5478
5488
  /* ----- Status Colors ----- */
5479
- .bs-pill:where([data-status^="active"]) {
5480
- --status-color: var(--bs-primary-base-fixed);
5481
- }
5482
- .bs-pill:where([data-status^="complete"]) {
5483
- --status-color: var(--bs-positive-base-fixed);
5484
- }
5485
- .bs-pill:where([data-status^="disabled"]) {
5486
- --status-color: var(--bs-ink-disabled);
5489
+ /* Disabled is being renamed to Neutral */
5490
+ .bs-pill:where([data-status^="neutral"], [data-status^="disabled"]) {
5491
+ --status-color: var(--bs-ink-light);
5492
+ --pill-background: var(--bs-accent-7-highlight);
5487
5493
  }
5488
- .bs-pill:where([data-status^="error"]) {
5489
- --status-color: var(--bs-negative-dark);
5494
+ .bs-pill:where([data-status^="active"]) {
5495
+ --status-color: var(--bs-ink-primary);
5496
+ --pill-background: var(--bs-primary-highlight);
5490
5497
  }
5491
5498
  .bs-pill:where([data-status^="positive"]) {
5492
- --status-color: var(--bs-ecomm-positive-base-fixed);
5499
+ --status-color: var(--bs-ink-positive);
5500
+ --pill-background: var(--bs-positive-highlight);
5493
5501
  }
5494
5502
  .bs-pill:where([data-status^="warning"]) {
5495
- --status-color: var(--bs-warning-dark);
5503
+ --status-color: var(--bs-ink-warning);
5504
+ --pill-background: var(--bs-warning-highlight);
5505
+ }
5506
+ /* Error is being renamed to Negative */
5507
+ .bs-pill:where([data-status^="negative"],[data-status^="error"]) {
5508
+ --status-color: var(--bs-ink-negative);
5509
+ --pill-background: var(--bs-negative-highlight);
5496
5510
  }
5497
5511
  /* Deprecated; use "data-status disabled" instead */
5498
5512
  .bs-pill:where([data-status^="inactive"]) {
5499
- --status-color: var(--bs-gray-300);
5513
+ --status-color: var(--bs-gray-400);
5514
+ --pill-background: var(--bs-gray-100);
5515
+ }
5516
+ /* Deprecated; use "data-status positive" instead */
5517
+ .bs-pill:where([data-status^="complete"]) {
5518
+ --status-color: var(--bs-purple-500);
5519
+ --pill-background: var(--bs-purple-100);
5520
+ }
5521
+ /* Dark mode selector for complete */
5522
+ :where(.dark) .bs-pill:where([data-status^="complete"]) {
5523
+ --status-color: var(--bs-purple-100);
5524
+ --pill-background: var(--bs-purple-500);
5500
5525
  }
5501
5526
  /* ------------------------------ Filter Styles ------------------------------ */
5502
5527
  .bs-pill:where([data-variant^="filter"]) {
@@ -5510,6 +5535,10 @@ label:where(.bs-label) {
5510
5535
  :is(a, button).bs-pill:where([data-variant^="filter"]):is(:hover, :focus) {
5511
5536
  --pill-border: var(--bs-ink-base);
5512
5537
  }
5538
+ /* ------------------------------ Variant: "White" Styles ------------------------------ */
5539
+ .bs-pill:where([data-variant="white"]) {
5540
+ background-color: var(--bs-bg-base-to-medium);
5541
+ }
5513
5542
  /* ------------------------------ Variant: "Filter Add" Styles ------------------------------ */
5514
5543
  /* Black + */
5515
5544
  .bs-pill:where([data-variant^="filter"][data-variant*="add"])::after {
@@ -5528,7 +5557,7 @@ label:where(.bs-label) {
5528
5557
  :where(.dark) .bs-pill:where([data-variant^="filter"][data-variant*="remove"]):not(:disabled, [aria-disabled="true"])::after {
5529
5558
  content: url("data:image/svg+xml,%3Csvg width='8' height='8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 .703 7.297 0 4 3.297.703 0 0 .703 3.297 4 0 7.297.703 8 4 4.703 7.297 8 8 7.297 4.703 4 8 .703Z' fill='%23ffffff'/%3E%3C/svg%3E%0A");
5530
5559
  }
5531
- /* ------------------------------ Variant: "Filter Active" Styles ------------------------------ */
5560
+ /* ------------------------------ Variant: "Filter Active" Styles DEPRECATED ------------------------------ */
5532
5561
  .bs-pill:where([data-variant^="filter"][data-active]:not([data-active="false"])) {
5533
5562
  --pill-background: var(--bs-primary-base-fixed);
5534
5563
  --pill-border: transparent;
@@ -5555,6 +5584,8 @@ label:where(.bs-label) {
5555
5584
  --pill-text: var(--bs-white);
5556
5585
  --pill-gap: var(--bs-space-1);
5557
5586
  text-transform: uppercase;
5587
+ font-size: var(--bs-text-xs);
5588
+ font-weight: var(--bs-font-semibold);
5558
5589
  }
5559
5590
  .bs-pill:where([data-variant^="live"]):hover {
5560
5591
  --pill-border: transparent;
@@ -5568,6 +5599,7 @@ label:where(.bs-label) {
5568
5599
  width: 12px;
5569
5600
  }
5570
5601
  /* ------------------------------ Variant: "Inactive" Styles ------------------------------ */
5602
+ /* Deprecated; use Status Neutral instead */
5571
5603
  .bs-pill:where([data-variant^="inactive"]) {
5572
5604
  --pill-background: var(--bs-neutral-base);
5573
5605
  --pill-text: var(--bs-ink-invert-base);
@@ -6522,7 +6554,7 @@ a.bs-text-button {
6522
6554
  /* ------------ Status colors ------------ */
6523
6555
  .bs-timeline :where(.bs-step-item[data-status="in-progress"]) {
6524
6556
  --step-color: var(--bs-ink-base);
6525
- --progress-step-bg: var(--bs-positive-light);
6557
+ --progress-step-bg: var(--bs-accent-4-base);
6526
6558
  }
6527
6559
  .bs-progress-bar :where(.bs-step-item[data-status="not-started"]) {
6528
6560
  --step-color: var(--bs-ink-light);
@@ -6538,11 +6570,11 @@ a.bs-text-button {
6538
6570
  .bs-timeline :where(.bs-step-item[data-status="complete"]),
6539
6571
  .bs-timeline :where(.bs-step-item[data-status="paused"]),
6540
6572
  .bs-timeline :where(.bs-step-item[data-status="ongoing"]) {
6541
- --step-color: var(--bs-ink-positive);
6542
- --progress-step-bg: var(--bs-positive-medium);
6573
+ --step-color: var(--bs-ink-accent-4);
6574
+ --progress-step-bg: var(--bs-accent-4-medium);
6543
6575
  }
6544
6576
  :is(.bs-progress-bar, .bs-timeline) :where(.bs-step-item[data-status="base"]) {
6545
- --progress-step-bg: var(--bs-positive-base);
6577
+ --progress-step-bg: var(--bs-accent-4-base);
6546
6578
  }
6547
6579
  .bs-timeline :where(.bs-step-item[data-status="warning"]) {
6548
6580
  --step-color: var(--bs-ink-warning);
@@ -6569,6 +6601,27 @@ a.bs-text-button {
6569
6601
  --toggle-color: var(--bs-white);
6570
6602
  --top-offset: 48px;
6571
6603
  }
6604
+ .bs-vertical-nav-wrapper:where([data-bg-variant="bg-base"]) {
6605
+ --active-color: var(--bs-blue-10);
6606
+ --bg-color: var(--bs-bg-base);
6607
+ --border-color: var(--bs-border-medium);
6608
+ --text-color: var(--bs-ink-medium);
6609
+ --link-color: var(--bs-ink-medium);
6610
+ --link-hover-color: var(--bs-ink-blue);
6611
+ --link-active-color: var(--bs-ink-blue);
6612
+ --toggle-bg-color: var(--bs-bg-base);
6613
+ --toggle-color: var(--bs-ink-medium);
6614
+ }
6615
+ .dark :where(.bs-vertical-nav-wrapper),
6616
+ .dark :where(.bs-vertical-nav-wrapper:where([data-bg-variant="bg-base"])) {
6617
+ --active-color: rgba(255, 255, 255, 0.25);
6618
+ --bg-color: var(--bs-bg-base);
6619
+ --border-color: var(--bs-border-medium);
6620
+ --text-color: var(--bs-white);
6621
+ --link-color: var(--bs-white);
6622
+ --link-hover-color: var(--bs-white);
6623
+ --link-active-color: var(--bs-white);
6624
+ }
6572
6625
  .bs-vertical-nav {
6573
6626
  -ms-overflow-style: none; /* Internet Explorer 10+ */
6574
6627
  background-color: var(--bg-color);
@@ -6592,30 +6645,25 @@ a.bs-text-button {
6592
6645
  /* Slight delay for visibility to change prior to opacity */
6593
6646
  transition: opacity var(--bs-transition-medium) var(--bs-transition-ease) 10ms;
6594
6647
  visibility: hidden;
6648
+ pointer-events: none;
6595
6649
  width: auto;
6596
- z-index: 1000;
6650
+ z-index: 999;
6597
6651
  }
6598
6652
  .bs-vertical-nav:where([data-mobile-shown="true"]) {
6599
6653
  opacity: 1;
6600
6654
  visibility: visible;
6655
+ pointer-events: auto;
6601
6656
  }
6602
6657
  .bs-vertical-nav:where([data-collapsible="true"]) {
6603
6658
  transition: opacity 200ms ease 10ms, width 350ms cubic-bezier(0.4, 0, 0.2, 1);
6604
6659
  }
6605
- .dark .bs-vertical-nav-wrapper {
6606
- --active-color: rgba(255, 255, 255, 0.25);
6607
- --bg-color: var(--bs-bg-base);
6608
- --border-color: var(--bs-border-medium);
6609
- }
6610
6660
  @media (min-width: 1166px) {
6611
6661
  .bs-vertical-nav {
6612
6662
  opacity: 1;
6613
- padding-bottom: 1rem;
6614
- padding-left: 0.5rem;
6615
- padding-right: 0.5rem;
6616
- padding-top: 1rem;
6663
+ padding: 1rem;
6617
6664
  right: auto;
6618
6665
  visibility: visible;
6666
+ pointer-events: auto;
6619
6667
  width: var(--bs-vertical-nav-width);
6620
6668
  }
6621
6669
 
@@ -6646,7 +6694,7 @@ a.bs-text-button {
6646
6694
  position: fixed;
6647
6695
  left: calc(var(--bs-vertical-nav-width) - 0.5rem);
6648
6696
  pointer-events: auto; /* Ensure button is clickable */
6649
- top: calc(var(--top-offset) + 3rem); /* top-offset + 3rem */
6697
+ top: calc(var(--top-offset) + 1.125rem); /* top-offset + 18px */
6650
6698
  transition: left 300ms ease-out, opacity 100ms ease-out;
6651
6699
  z-index: 1002; /* Above nav to prevent hover conflicts */
6652
6700
  }
@@ -6656,11 +6704,11 @@ a.bs-text-button {
6656
6704
  opacity: 1;
6657
6705
  transition: left 300ms ease-out, opacity 100ms ease-out;
6658
6706
  }
6659
-
6707
+
6660
6708
  .bs-vertical-nav-toggle:where([data-collapsed="true"]) {
6661
6709
  left: calc(var(--bs-vertical-nav-collapsed-width) - 0.5rem);
6662
6710
  }
6663
-
6711
+
6664
6712
  /* Adjust position for narrow variant when NOT collapsed */
6665
6713
  .bs-vertical-nav-toggle:where([data-narrow="true"]:not([data-collapsed="true"])) {
6666
6714
  left: calc(var(--bs-vertical-nav-narrow-width) - 0.5rem);
@@ -6676,18 +6724,18 @@ a.bs-text-button {
6676
6724
  }
6677
6725
  /* ===== Sections ===== */
6678
6726
  .bs-vertical-nav :where(.bs-vertical-nav-section) {
6679
- border-top: 2px solid var(--border-color);
6727
+ border-top: 1px solid var(--border-color);
6680
6728
  margin-top: 0.5rem;
6681
6729
  padding-top: 0.5rem;
6682
6730
  }
6683
6731
  @media (min-width: 1166px) {
6684
6732
  .bs-vertical-nav :where(.bs-vertical-nav-section) {
6685
- margin-top: 0.25rem;
6733
+ margin-top: 0.5rem;
6686
6734
  }
6687
6735
  }
6688
6736
  /* Divider-only sections have no additional padding since no toggle button */
6689
6737
  .bs-vertical-nav :where(.bs-vertical-nav-section[data-divider-only="true"]) {
6690
- padding-top: 0.25rem;
6738
+ padding-top: 0.5rem;
6691
6739
  }
6692
6740
  /* Don't show border if the very first item is a section */
6693
6741
  .bs-vertical-nav :where(ul li:first-child) {
@@ -6717,7 +6765,7 @@ a.bs-text-button {
6717
6765
  @media (min-width: 1166px) {
6718
6766
  .bs-vertical-nav :where(.bs-vertical-nav-section-toggle) {
6719
6767
  /* nav width - nav left padding - nav right padding */
6720
- width: calc(var(--bs-vertical-nav-width) - 0.5rem - 0.5rem);
6768
+ width: calc(var(--bs-vertical-nav-width) - 1rem - 1rem);
6721
6769
  }
6722
6770
 
6723
6771
  .bs-vertical-nav :where(.bs-vertical-nav-section-toggle span:first-child) {
@@ -6725,7 +6773,7 @@ a.bs-text-button {
6725
6773
  text-align: start;
6726
6774
  text-overflow: ellipsis;
6727
6775
  /* nav width - nav left padding - nav right padding - link left padding - link right padding - caret width */
6728
- width: calc(var(--bs-vertical-nav-width) - 0.5rem - 0.5rem - 0.75rem - 0.75rem - 0.75rem);
6776
+ width: calc(var(--bs-vertical-nav-width) - 1rem - 1rem - 0.75rem - 0.75rem - 0.75rem);
6729
6777
  }
6730
6778
  }
6731
6779
  .bs-vertical-nav :where(.bs-vertical-nav-section-toggle-caret) {
@@ -6748,11 +6796,6 @@ a.bs-text-button {
6748
6796
  margin-top: 0;
6749
6797
  padding-left: 0;
6750
6798
  }
6751
- @media (min-width: 1166px) {
6752
- .bs-vertical-nav :where(ul) {
6753
- gap: 0.25rem;
6754
- }
6755
- }
6756
6799
  /* ===== Nav List Items / Links */
6757
6800
  .bs-vertical-nav :where(ul li a) {
6758
6801
  align-items: center;
@@ -6782,13 +6825,13 @@ a.bs-text-button {
6782
6825
  min-height: 2.5rem; /* Fixed minimum height to prevent height changes */
6783
6826
  padding: 0.5rem 0.75rem; /* Explicit padding for consistency */
6784
6827
  /* nav width - nav left padding - nav right padding */
6785
- width: calc(var(--bs-vertical-nav-width) - 0.5rem - 0.5rem);
6828
+ width: calc(var(--bs-vertical-nav-width) - 1rem - 1rem);
6786
6829
  }
6787
6830
 
6788
6831
  /* Collapsed state width */
6789
6832
  .bs-vertical-nav:where([data-collapsed="true"]) :where(ul li a) {
6790
6833
  /* collapsed width - nav left padding - nav right padding */
6791
- width: calc(var(--bs-vertical-nav-collapsed-width) - 0.5rem - 0.5rem);
6834
+ width: calc(var(--bs-vertical-nav-collapsed-width) - 1rem - 1rem);
6792
6835
  }
6793
6836
 
6794
6837
  /* Text overflow - normal width - no icon */
@@ -6797,7 +6840,7 @@ a.bs-text-button {
6797
6840
  text-overflow: ellipsis;
6798
6841
  white-space: nowrap;
6799
6842
  /* nav width - nav left padding - nav right padding - link left padding - link right padding */
6800
- width: calc(var(--bs-vertical-nav-width) - 0.5rem - 0.5rem - 0.75rem - 0.75rem);
6843
+ width: calc(var(--bs-vertical-nav-width) - 1rem - 1rem - 0.75rem - 0.75rem);
6801
6844
  }
6802
6845
 
6803
6846
  /* Text overflow - normal width - with icon */
@@ -6806,7 +6849,7 @@ a.bs-text-button {
6806
6849
  text-overflow: ellipsis;
6807
6850
  white-space: nowrap;
6808
6851
  /* nav width - nav left padding - nav right padding - link left padding - link right padding - icon width - icon gap */
6809
- width: calc(var(--bs-vertical-nav-width) - 0.5rem - 0.5rem - 0.75rem - 0.75rem - 1rem - 0.5rem);
6852
+ width: calc(var(--bs-vertical-nav-width) - 1rem - 1rem - 0.75rem - 0.75rem - 1rem - 0.5rem);
6810
6853
  }
6811
6854
 
6812
6855
  .bs-vertical-nav:where([data-narrow="true"]) :where(ul li a) {
@@ -6817,7 +6860,7 @@ a.bs-text-button {
6817
6860
  padding: 0.5rem 0.75rem; /* 8px 12px - matches Figma */
6818
6861
  text-align: center;
6819
6862
  /* nav width - nav left padding - nav right padding */
6820
- width: calc(var(--bs-vertical-nav-narrow-width) - 0.5rem - 0.5rem);
6863
+ width: calc(var(--bs-vertical-nav-narrow-width) - 1rem - 1rem);
6821
6864
  }
6822
6865
 
6823
6866
  /* Text overflow - narrow width */
@@ -6830,10 +6873,21 @@ a.bs-text-button {
6830
6873
  width: calc(var(--bs-vertical-nav-narrow-width) - 0.5rem - 0.5rem);
6831
6874
  }
6832
6875
  }
6876
+ .bs-vertical-nav-section:where([data-app-links="true"]) {
6877
+ padding-top: 1rem;
6878
+ }
6879
+ .bs-vertical-nav-section:where([data-app-links="true"]) :where(ul li a) {
6880
+ padding: 0.375rem 0.5rem;
6881
+ font-size: 0.75rem;
6882
+ font-weight: 600;
6883
+ }
6833
6884
  .bs-vertical-nav :where(ul li a:hover) {
6834
6885
  color: var(--link-hover-color);
6835
6886
  font-weight: 600;
6836
6887
  }
6888
+ .bs-vertical-nav-section:where([data-app-links="true"]) :where(ul li a:hover) {
6889
+ color: var(--bs-ink-blue);
6890
+ }
6837
6891
  .bs-vertical-nav :where(ul li a[data-active="true"]) {
6838
6892
  background-color: var(--active-color);
6839
6893
  color: var(--link-active-color);
@@ -6851,7 +6905,6 @@ a.bs-text-button {
6851
6905
  .bs-vertical-nav:not([data-narrow="true"]) :where(.bs-vertical-nav-link-icon) {
6852
6906
  height: 0.875rem;
6853
6907
  width: 0.875rem;
6854
- margin-left: 0.25rem; /* Visual centering adjustment */
6855
6908
  }
6856
6909
 
6857
6910
  /* Narrow variant icons - 16px (inherits from base) */
@@ -6860,6 +6913,11 @@ a.bs-text-button {
6860
6913
  width: 1rem;
6861
6914
  }
6862
6915
  }
6916
+ .bs-vertical-nav-section:where([data-app-links="true"]) .bs-vertical-nav-link-icon {
6917
+ height: 1.5rem;
6918
+ width: 1.5rem;
6919
+ margin-left: 0;
6920
+ }
6863
6921
  /* Default: Show text on mobile */
6864
6922
  .bs-vertical-nav :where(ul li a > span:last-child) {
6865
6923
  opacity: 1;
@@ -6910,7 +6968,7 @@ a.bs-text-button {
6910
6968
 
6911
6969
  /* Expand link widths on hover when collapsed */
6912
6970
  .bs-vertical-nav-wrapper:where(:hover:not(:has(.bs-vertical-nav-toggle:hover))) :where(.bs-vertical-nav[data-collapsed="true"]) :where(ul li a) {
6913
- width: calc(var(--bs-vertical-nav-width) - 0.5rem - 0.5rem);
6971
+ width: calc(var(--bs-vertical-nav-width) - 1rem - 1rem);
6914
6972
  }
6915
6973
 
6916
6974
  /* Narrow variant links should respect narrow width on hover */
@@ -6923,7 +6981,6 @@ a.bs-text-button {
6923
6981
  opacity: 1;
6924
6982
  visibility: visible;
6925
6983
  width: auto;
6926
- overflow: visible;
6927
6984
  }
6928
6985
 
6929
6986
  /* Hide toggle button on hover when collapsed - but NOT when hovering the button itself */
@@ -6937,6 +6994,16 @@ a.bs-text-button {
6937
6994
  display: flex;
6938
6995
  }
6939
6996
  }
6997
+ /* ===== Top Content ===== */
6998
+ .bs-vertical-nav :where(.bs-vertical-nav-top-content) {
6999
+ margin-bottom: 0.5rem;
7000
+ padding: 0;
7001
+ }
7002
+ @media (min-width: 1166px) {
7003
+ .bs-vertical-nav :where(.bs-vertical-nav-top-content) {
7004
+ margin-bottom: 0.75rem;
7005
+ }
7006
+ }
6940
7007
  /* ===== End Items ===== */
6941
7008
  .bs-vertical-nav :where(.bs-vertical-nav-end-items) {
6942
7009
  display: flex;
@@ -6988,8 +7055,13 @@ a.bs-text-button {
6988
7055
  transition: margin-inline-start 350ms cubic-bezier(0.4, 0, 0.2, 1);
6989
7056
  }
6990
7057
  /*
6991
- POP SYSTEM COMPONENTS
6992
- Components that are built on top of BsPopover. The popover.css must come first.
7058
+ POP SYSTEM COMPONENTS (the order matters)
7059
+ - Components that are built on top of BsPopover
7060
+ - The popover.css must come first
7061
+ - In the future, could refactor this file to use @layer instead
7062
+ */
7063
+ /*
7064
+ HEADS-UP: BsPopover and its styles are the base for all popover-based components and their styles
6993
7065
  */
6994
7066
  #bs-popover-teleport-target {
6995
7067
  z-index: var(--bs-popover-z-index);
@@ -7003,39 +7075,27 @@ a.bs-text-button {
7003
7075
  overflow: hidden;
7004
7076
  z-index: var(--bs-popover-z-index);
7005
7077
  }
7006
- .bs-popover-wrap .bs-backdrop {
7007
- z-index: -1;
7008
- }
7009
7078
  .bs-popover {
7010
7079
  /* absolute positioning is needed for floating-ui, i.e. to anchor to element (is unset if anchored to viewport) */
7011
7080
  position: absolute;
7012
7081
  top: 0;
7013
7082
  left: 0;
7083
+ display: flex;
7084
+ flex-direction: column;
7014
7085
  width: var(--bs-popover-width, -moz-fit-content);
7015
7086
  width: var(--bs-popover-width, fit-content);
7016
7087
  height: var(--bs-popover-height, -moz-fit-content);
7017
7088
  height: var(--bs-popover-height, fit-content);
7018
7089
  max-width: calc(100dvw - 3rem);
7019
7090
  max-height: calc(100dvh - 3rem);
7020
- padding: var(--bs-space-6);
7021
7091
  background-color: var(--bs-bg-base-to-light);
7022
7092
  border-radius: var(--bs-space-1);
7023
7093
  box-shadow: var(--bs-shadow-contentLowCenter);
7024
7094
  pointer-events: auto; /* due to `pointer-events: none` on bs-popover-wrap */
7095
+ overflow: hidden;
7025
7096
  }
7026
- .bs-popover-close-button {
7027
- background-color: inherit;
7028
- background: transparent;
7029
- border-color: transparent;
7030
- color: inherit;
7031
- cursor: pointer;
7032
- font-family: inherit;
7033
- font-size: var(--bs-text-base);
7034
- padding: var(--bs-space-2); /* to make a bit nicer hit target */
7035
- position: absolute;
7036
- right: var(--bs-space-2);
7037
- text-decoration: none;
7038
- top: var(--bs-space-2);
7097
+ .bs-popover:where(:not(:has(.bs-pop-header, .bs-pop-body, .bs-pop-footer))) {
7098
+ padding: var(--bs-space-6);
7039
7099
  }
7040
7100
  /* -- SIZING -- */
7041
7101
  .bs-popover:where([data-size="sm"]) {
@@ -7104,13 +7164,6 @@ a.bs-text-button {
7104
7164
  .bs-popover-leave-active {
7105
7165
  transition-duration: var(--bs-popover-transition-duration)
7106
7166
  }
7107
- .bs-popover-enter-active .bs-backdrop,
7108
- .bs-popover-leave-active .bs-backdrop {
7109
- transition-property: opacity;
7110
- transition-duration: var(--bs-popover-transition-duration);
7111
- transition-timing-function: var(--bs-transition-cubic);
7112
- }
7113
- .bs-popover-enter-from .bs-backdrop,
7114
7167
  .bs-popover-leave-to .bs-backdrop {
7115
7168
  opacity: 0;
7116
7169
  }
@@ -7126,95 +7179,105 @@ a.bs-text-button {
7126
7179
  transform: scale(.95);
7127
7180
  }
7128
7181
  /*
7129
- HEADS-UP:
7130
- Most BsFlyout base styles come from its BsPopover root element,
7131
- so some of these styles are there to override those defaults.
7182
+ Used in BsPopover, but exists as its own thing in case
7183
+ consumers need/want to use it for custom layout cases.
7132
7184
  */
7133
- .bs-flyout {
7134
- --bs-flyout-padding: var(--bs-space-6);
7135
- --bs-flyout-padding-top: 2.75rem;
7136
- display: flex;
7137
- flex-direction: column;
7138
- padding: 0;
7139
- margin: 0;
7140
- border-radius: 0;
7185
+ .bs-pop-x-button {
7186
+ background-color: inherit;
7187
+ background: transparent;
7188
+ border-color: transparent;
7189
+ color: inherit;
7190
+ cursor: pointer;
7191
+ font-family: inherit;
7192
+ font-size: var(--bs-text-base);
7193
+ padding: var(--bs-space-3); /* to make a bit nicer hit target */
7194
+ position: absolute;
7195
+ right: var(--bs-pop-x-btn-right, var(--bs-space-1));
7196
+ text-decoration: none;
7197
+ top: var(--bs-pop-x-btn-top, var(--bs-space-1));
7141
7198
  }
7142
- /* -- CLOSE BUTTON -- */
7143
- /* calc() adjusts for default .5rem padding .bs-popover-close-button has, which exists for a nicer hit target */
7144
- .bs-flyout :where(.bs-popover-close-button) {
7145
- top: calc(var(--bs-flyout-padding) - .5rem);
7146
- right: calc(var(--bs-flyout-padding) - .5rem);
7199
+ .bs-popover:where(:has(.bs-pop-header)) {
7200
+ --bs-pop-x-btn-right: var(--bs-space-4);
7201
+ --bs-pop-x-btn-top: var(--bs-space-4);
7147
7202
  }
7148
- /* -- HEADER -- */
7149
- .bs-flyout-header {
7203
+ .bs-pop-header {
7204
+ color: var(--bs-ink-base);
7205
+ font-size: var(--bs-text-md);
7150
7206
  flex-shrink: 0;
7151
- padding: var(--bs-flyout-padding-top) var(--bs-flyout-padding) var(--bs-flyout-padding);
7152
- }
7153
- /* with border */
7154
- .bs-flyout-header:where([data-border="true"]) {
7155
- border-bottom: 1px solid var(--bs-border-base);
7156
- }
7157
- .bs-flyout-title {
7158
- display: flex;
7159
- align-items: center;
7160
- gap: var(--bs-space-2);
7161
- margin: 0 var(--bs-space-6) 0 0;
7162
- font-size: var(--bs-text-lg);
7163
- font-weight: normal;
7207
+ padding: var(--bs-pop-header-padding, var(--bs-space-6));
7164
7208
  line-height: var(--bs-leading-regular);
7165
7209
  }
7166
- .bs-flyout-subtitle {
7210
+ .bs-pop-header:where(:not(:has(.bs-pop-title, .bs-pop-subtitle))) {
7167
7211
  display: flex;
7168
7212
  align-items: center;
7169
7213
  gap: var(--bs-space-2);
7170
- margin: var(--bs-space-2) 0 0 0;
7171
- font-size: var(--bs-text-sm);
7172
- font-weight: normal;
7173
- line-height: var(--bs-leading-lg);
7174
7214
  }
7175
- .bs-flyout-header:where([data-border="true"]) {
7215
+ .bs-pop-header:where([data-border="true"]) {
7176
7216
  border-bottom: 1px solid var(--bs-border-base);
7177
7217
  }
7178
- /* -- BODY -- */
7179
- .bs-flyout-body {
7218
+ .bs-pop-body {
7180
7219
  flex: 1;
7181
- padding: 0 var(--bs-flyout-padding);
7182
7220
  overflow-y: auto;
7183
7221
  overscroll-behavior: contain;
7222
+ padding: var(--bs-pop-body-padding, var(--bs-space-6));
7184
7223
  }
7185
- /* no header exists */
7186
- .bs-flyout:where(:not(:has(.bs-flyout-header))) :where(.bs-flyout-body) {
7187
- padding-top: var(--bs-flyout-padding-top);
7224
+ .bs-pop-body:where([data-background="true"]) {
7225
+ background-color: var(--bs-bg-light);
7188
7226
  }
7189
- /* no footer exists */
7190
- .bs-flyout:where(:not(:has(.bs-flyout-footer))) :where(.bs-flyout-body) {
7191
- padding-bottom: var(--bs-flyout-padding);
7227
+ .bs-pop-header:where(:not([data-border="true"])) + :where(.bs-pop-body:not([data-background="true"])) {
7228
+ padding-top: 0;
7192
7229
  }
7193
- /* header border exists */
7194
- .bs-flyout:where(:has(.bs-flyout-header[data-border="true"])) :where(.bs-flyout-body) {
7195
- padding-top: var(--bs-flyout-padding);
7230
+ .bs-pop-footer {
7231
+ align-items: center;
7232
+ display: flex;
7233
+ flex-shrink: 0;
7234
+ gap: var(--bs-space-6);
7235
+ justify-content: flex-end;
7236
+ padding: var(--bs-pop-footer-padding, var(--bs-space-4) var(--bs-space-6));
7196
7237
  }
7197
- /* footer border exists */
7198
- .bs-flyout:where(:has(.bs-flyout-footer[data-border="true"])) :where(.bs-flyout-body) {
7199
- padding-bottom: var(--bs-flyout-padding);
7238
+ .bs-pop-footer:where([data-border="true"]) {
7239
+ border-top: 1px solid var(--bs-border-base);
7200
7240
  }
7201
- /* -- FOOTER -- */
7202
- .bs-flyout-footer {
7241
+ .bs-pop-title {
7242
+ align-items: center;
7203
7243
  display: flex;
7204
- justify-content: flex-end;
7244
+ font-size: var(--bs-text-md);
7245
+ font-weight: normal;
7246
+ gap: var(--bs-space-2);
7247
+ line-height: var(--bs-leading-regular);
7248
+ margin: 0 var(--bs-space-12) 0 0;
7249
+ }
7250
+ .bs-pop-subtitle {
7205
7251
  align-items: center;
7206
- gap: var(--bs-space-6);
7207
- flex-shrink: 0;
7208
- padding: var(--bs-space-6);
7252
+ color: var(--bs-ink-light);
7253
+ display: flex;
7254
+ font-size: var(--bs-text-sm);
7255
+ font-weight: normal;
7256
+ gap: var(--bs-space-2);
7257
+ line-height: var(--bs-leading-lg);
7258
+ margin: var(--bs-space-2) 0 0 0;
7209
7259
  }
7210
- /* with border */
7211
- .bs-flyout-footer:where([data-border="true"]) {
7212
- border-top: 1px solid var(--bs-border-base);
7260
+ /*
7261
+ HEADS-UP:
7262
+ Most BsFlyout base styles come from its BsPopover root element,
7263
+ so some of these styles are there to override those defaults.
7264
+ */
7265
+ .bs-flyout {
7266
+ --bs-pop-header-padding: var(--bs-space-6);
7267
+ --bs-pop-body-padding: var(--bs-space-6);
7268
+ --bs-pop-footer-padding: var(--bs-space-6);
7269
+ margin: 0;
7270
+ border-radius: 0;
7271
+ }
7272
+ /* targeting header too, so consumer could just do: <BsPopHeader>My Title</BsPopHeader> */
7273
+ .bs-flyout :where(.bs-pop-header, .bs-pop-title) {
7274
+ font-size: var(--bs-text-lg);
7213
7275
  }
7214
7276
  /* -- SIZING -- */
7215
7277
  .bs-flyout {
7216
7278
  --bs-popover-height: 100dvh;
7217
7279
  max-height: unset;
7280
+ max-width: 100dvw;
7218
7281
  }
7219
7282
  .bs-flyout:where([data-size="sm"]) {
7220
7283
  --bs-popover-width: 22.5rem; /* 360px */
@@ -7237,13 +7300,6 @@ a.bs-text-button {
7237
7300
  .bs-flyout-leave-active {
7238
7301
  transition-duration: var(--bs-popover-transition-duration);
7239
7302
  }
7240
- .bs-flyout-enter-active .bs-backdrop,
7241
- .bs-flyout-leave-active .bs-backdrop {
7242
- transition-property: opacity;
7243
- transition-duration: var(--bs-transition-leisurely);
7244
- transition-timing-function: var(--bs-transition-cubic);
7245
- }
7246
- .bs-flyout-enter-from .bs-backdrop,
7247
7303
  .bs-flyout-leave-to .bs-backdrop {
7248
7304
  opacity: 0;
7249
7305
  }
@@ -7268,142 +7324,50 @@ a.bs-text-button {
7268
7324
  ...so some of these styles override those defaults.
7269
7325
  */
7270
7326
  .bs-modal {
7271
- --bs-modal-sm-width: 21.25rem; /* 340px */
7272
- --bs-modal-md-width: 35rem; /* 560px */
7273
- --bs-modal-lg-width: 45.3125rem; /* 725px */
7274
- --bs-modal-padding: 1.5rem; /* 24px */
7275
- --bs-modal-lg-padding: 2rem; /* 32px */
7276
- display: flex;
7277
- flex-direction: column;
7278
- margin: 0;
7279
- padding: 0;
7327
+ --bs-pop-header-padding: var(--bs-modal-padding);
7328
+ --bs-pop-body-padding: var(--bs-modal-padding);
7329
+ --bs-pop-footer-padding: var(--bs-space-4) var(--bs-modal-padding);
7330
+ --bs-modal-padding: var(--bs-space-6);
7331
+ --bs-modal-lg-padding: var(--bs-space-8);
7280
7332
  background-color: var(--bs-bg-base-to-medium);
7281
7333
  box-shadow: var(--bs-shadow-contentHigh);
7282
- overflow: hidden;
7283
- }
7284
- /* -- CLOSE BUTTON -- */
7285
- /* calc() adjusts for default .5rem padding .bs-popover-close-button has, which exists for a nicer hit target */
7286
- .bs-modal :where(.bs-popover-close-button) {
7287
- top: calc(var(--bs-modal-padding) - .5rem);
7288
- right: calc(var(--bs-modal-padding) - .5rem);
7289
- }
7290
- .bs-modal:where([data-size="lg"]) :where(.bs-popover-close-button) {
7291
- top: calc(var(--bs-modal-lg-padding) - .5rem);
7292
- right: calc(var(--bs-modal-lg-padding) - .5rem);
7293
- }
7294
- /* -- HEADER -- */
7295
- .bs-modal-header {
7296
- flex-shrink: 0;
7297
- padding: var(--bs-modal-padding);
7298
- }
7299
- /* with border */
7300
- .bs-modal-header:where([data-border="true"]) {
7301
- border-bottom: 1px solid var(--bs-border-base);
7302
- }
7303
- /* large size, no border */
7304
- .bs-modal:where([data-size="lg"]) :where(.bs-modal-header) {
7305
- padding: var(--bs-modal-lg-padding);
7306
- }
7307
- /* large size, with border */
7308
- .bs-modal:where([data-size="lg"]) :where(.bs-modal-header[data-border="true"]) {
7309
- padding: var(--bs-modal-lg-padding);
7310
- padding-bottom: var(--bs-modal-padding);
7334
+ margin: 0;
7311
7335
  }
7312
- .bs-modal-title {
7313
- display: flex;
7314
- align-items: center;
7315
- gap: var(--bs-space-2);
7316
- margin: 0 var(--bs-space-6) 0 0;
7336
+ /* targeting header too, so consumer could just do: <BsPopHeader>My Title</BsPopHeader> */
7337
+ .bs-modal :where(.bs-pop-header, .bs-pop-title) {
7317
7338
  font-size: var(--bs-text-lg);
7318
- font-weight: normal;
7319
- line-height: var(--bs-leading-regular);
7320
- }
7321
- .bs-modal-subtitle {
7322
- display: flex;
7323
- align-items: center;
7324
- gap: var(--bs-space-2);
7325
- margin: var(--bs-space-2) 0 0 0;
7326
- font-size: var(--bs-text-sm);
7327
- font-weight: normal;
7328
- line-height: var(--bs-leading-lg);
7329
- }
7330
- /* -- BODY -- */
7331
- .bs-modal-body {
7332
- flex: 1;
7333
- overflow-y: auto;
7334
- padding: 0 var(--bs-modal-padding);
7335
- overscroll-behavior: contain;
7336
- }
7337
- /* large size */
7338
- .bs-modal:where([data-size="lg"]) :where(.bs-modal-body) {
7339
- padding: 0 var(--bs-modal-lg-padding);
7340
- }
7341
- /* no header exists */
7342
- .bs-modal:where(:not(:has(.bs-modal-header))) :where(.bs-modal-body) {
7343
- padding-top: var(--bs-modal-padding);
7344
- }
7345
- /* large size, no header exists */
7346
- .bs-modal:where([data-size="lg"]):where(:not(:has(.bs-modal-header))) :where(.bs-modal-body) {
7347
- padding-top: var(--bs-modal-lg-padding);
7348
- }
7349
- /* no footer exists */
7350
- .bs-modal:where(:not(:has(.bs-modal-footer))) :where(.bs-modal-body) {
7351
- padding-bottom: var(--bs-modal-padding);
7352
- }
7353
- /* large size, no footer exists */
7354
- .bs-modal:where([data-size="lg"]):where(:not(:has(.bs-modal-footer))) :where(.bs-modal-body) {
7355
- padding-bottom: var(--bs-modal-lg-padding);
7356
- }
7357
- /* header border exists */
7358
- .bs-modal:where(:has(.bs-modal-header[data-border="true"])) :where(.bs-modal-body) {
7359
- padding-top: var(--bs-modal-padding);
7360
7339
  }
7361
- /* footer border exists */
7362
- .bs-modal:where(:has(.bs-modal-footer[data-border="true"])) :where(.bs-modal-body) {
7363
- padding-bottom: var(--bs-modal-padding);
7340
+ .bs-modal:where([data-size="lg"]) {
7341
+ --bs-pop-x-btn-right: var(--bs-space-6);
7342
+ --bs-pop-header-padding: var(--bs-modal-lg-padding) var(--bs-modal-lg-padding) var(--bs-modal-padding);
7343
+ --bs-pop-body-padding: var(--bs-modal-padding) var(--bs-modal-lg-padding);
7344
+ --bs-pop-footer-padding: var(--bs-space-4) var(--bs-modal-lg-padding);
7364
7345
  }
7365
- /* -- FOOTER -- */
7366
- .bs-modal-footer {
7367
- display: flex;
7368
- justify-content: flex-end;
7369
- align-items: center;
7370
- gap: var(--bs-space-6);
7371
- flex-shrink: 0;
7372
- padding: var(--bs-space-6) var(--bs-modal-padding);
7373
- }
7374
- /* with border */
7375
- .bs-modal-footer:where([data-border="true"]) {
7376
- border-top: 1px solid var(--bs-border-base);
7377
- padding: var(--bs-space-4) var(--bs-modal-padding);
7378
- }
7379
- /* large size, no border */
7380
- .bs-modal:where([data-size="lg"]) :where(.bs-modal-footer) {
7381
- padding: var(--bs-modal-lg-padding);
7382
- }
7383
- /* large size, with border */
7384
- .bs-modal:where([data-size="lg"]) :where(.bs-modal-footer[data-border="true"]) {
7385
- padding: var(--bs-space-4) var(--bs-modal-lg-padding);
7346
+ .bs-modal:where([data-size="lg"]:has(.bs-pop-header)) {
7347
+ --bs-pop-x-btn-right: var(--bs-space-6);
7348
+ --bs-pop-x-btn-top: var(--bs-space-6);
7386
7349
  }
7387
7350
  /* -- SIZING -- */
7388
7351
  .bs-modal {
7389
- max-width: calc(100dvw - 3rem);
7352
+ --bs-popover-width: calc(100dvw - 3rem);
7390
7353
  max-height: calc(100dvh - 3rem);
7391
7354
  }
7392
7355
  @media (min-width: 752px) {
7393
7356
  .bs-modal {
7357
+ --bs-popover-width: fit-content;
7394
7358
  max-height: min(calc(100dvh - 3rem), 40.625rem);
7395
7359
  }
7396
7360
 
7397
7361
  .bs-modal:where([data-size="sm"]) {
7398
- --bs-popover-width: var(--bs-modal-sm-width);
7362
+ --bs-popover-width: 21.25rem; /* 340px */
7399
7363
  }
7400
7364
 
7401
7365
  .bs-modal:where([data-size="md"]) {
7402
- --bs-popover-width: var(--bs-modal-md-width);
7366
+ --bs-popover-width: 35rem; /* 560px */
7403
7367
  }
7404
7368
 
7405
7369
  .bs-modal:where([data-size="lg"]) {
7406
- --bs-popover-width: var(--bs-modal-lg-width);
7370
+ --bs-popover-width: 45.3125rem; /* 725px */
7407
7371
  }
7408
7372
  }
7409
7373
  /* -- TRANSITIONS -- */
@@ -7411,13 +7375,6 @@ a.bs-text-button {
7411
7375
  .bs-modal-leave-active {
7412
7376
  transition-duration: var(--bs-popover-transition-duration);
7413
7377
  }
7414
- .bs-modal-enter-active .bs-backdrop,
7415
- .bs-modal-leave-active .bs-backdrop {
7416
- transition-property: opacity;
7417
- transition-duration: var(--bs-transition-leisurely);
7418
- transition-timing-function: var(--bs-transition-cubic);
7419
- }
7420
- .bs-modal-enter-from .bs-backdrop,
7421
7378
  .bs-modal-leave-to .bs-backdrop {
7422
7379
  opacity: 0;
7423
7380
  }
@@ -7457,84 +7414,72 @@ a.bs-text-button {
7457
7414
  }
7458
7415
  /* Toast */
7459
7416
  .bs-toast {
7417
+ --bs-pop-header-padding: var(--bs-space-4);
7418
+ --bs-pop-body-padding: var(--bs-space-4);
7419
+ --bs-pop-footer-padding: var(--bs-space-2) var(--bs-space-4);
7460
7420
  --bs-popover-width: min(23rem, calc(100dvw - 3rem));
7461
7421
  --toast-transform: translate(0, calc(100% + 1.5rem));
7462
7422
  --toast-variant-color: var(--bs-primary-base);
7423
+ --toast-icon: var(--toast-icon-base);
7424
+ --toast-icon-color: var(--bs-ink-primary);
7425
+ --toast-icon-base: url('https://cdn.apps.wwt.com/static/wwt-blue-steel-icons/icon-circle-info.svg');
7426
+ --toast-icon-warning: url('https://cdn.apps.wwt.com/static/wwt-blue-steel-icons/icon-warning.svg');
7427
+ --toast-icon-positive: url('https://cdn.apps.wwt.com/static/wwt-blue-steel-icons/icon-thumbs-up-stroke.svg');
7463
7428
  background-color: var(--bs-bg-base-to-light);
7464
7429
  border-radius: 0;
7465
7430
  border-top: 4px solid var(--toast-variant-color);
7466
7431
  box-shadow: var(--bs-shadow-contentMedium);
7467
7432
  margin: 0;
7468
7433
  order: var(--toast-order, 0);
7469
- padding: 0;
7434
+ }
7435
+ /* Toast Footer Mobile - Buttons will be stacked */
7436
+ .bs-toast :where(.bs-pop-footer) {
7437
+ align-items: stretch;
7438
+ flex-direction: column-reverse;
7439
+ gap: var(--bs-space-2);
7470
7440
  }
7471
7441
  @media (min-width: 440px) {
7472
7442
  .bs-toast {
7473
7443
  --toast-transform: translate(calc(100% + 1.5rem), 0);
7474
7444
  }
7445
+
7446
+ .bs-toast :where(.bs-pop-footer) {
7447
+ align-items: center;
7448
+ flex-direction: row;
7449
+ gap: var(--bs-space-6);
7450
+ }
7475
7451
  }
7452
+ /* Toast Variants */
7476
7453
  .bs-toast:where([data-variant="warning"]) {
7454
+ --toast-icon: var(--toast-icon-warning);
7455
+ --toast-icon-color: var(--bs-ink-warning);
7477
7456
  --toast-variant-color: var(--bs-warning-base);
7478
-
7479
- .bs-toast-header-icon {
7480
- color: var(--bs-ink-warning);
7481
- }
7482
7457
  }
7483
7458
  .bs-toast:where([data-variant="positive"]) {
7459
+ --toast-icon: var(--toast-icon-positive);
7460
+ --toast-icon-color: var(--bs-ink-positive);
7484
7461
  --toast-variant-color: var(--bs-positive-base);
7485
-
7486
- .bs-toast-header-icon {
7487
- color: var(--bs-ink-positive);
7488
- }
7489
7462
  }
7490
7463
  .bs-toast:where([data-variant="negative"]) {
7491
- --toast-variant-color: var(--bs-negative-base);
7492
-
7493
- .bs-toast-header-icon {
7494
- color: var(--bs-ink-negative);
7495
- }
7496
- }
7497
- /* Toast Header */
7498
- .bs-toast :where(.bs-toast-header) {
7499
- align-items: center;
7500
- color: var(--bs-ink-base);
7501
- display: flex;
7502
- gap: 0.5rem;
7503
- padding: 1rem;
7464
+ --toast-icon: var(--toast-icon-warning);
7465
+ --toast-icon-color: var(--bs-negative-dark);
7466
+ --toast-variant-color: var(--bs-negative-dark);
7504
7467
  }
7505
- .bs-toast :where(.bs-toast-header .bs-toast-header-icon) {
7506
- color: var(--bs-ink-primary);
7507
- }
7508
- .bs-toast :where(.bs-toast-header .bs-toast-header-text) {
7509
- font-size: var(--bs-text-md);
7510
- font-weight: var(--bs-font-normal);
7511
- line-height: var(--bs-leading-lg);
7468
+ /* Toast Header - auto-add the icon */
7469
+ .bs-toast :where(.bs-pop-header:not(:has(.bs-pop-title, .bs-pop-subtitle)))::before,
7470
+ .bs-toast :where(.bs-pop-header .bs-pop-title)::before {
7471
+ display: block;
7472
+ content: '';
7473
+ background-color: var(--toast-icon-color);
7474
+ -webkit-mask: var(--toast-icon) center/contain no-repeat;
7475
+ mask: var(--toast-icon) center/contain no-repeat;
7476
+ flex-shrink: 0;
7477
+ height: var(--bs-space-4);
7478
+ width: var(--bs-space-4);
7512
7479
  }
7513
7480
  /* Toast Body */
7514
- .bs-toast :where(.bs-toast-body) {
7515
- border-bottom: 1px solid var(--bs-border-base);
7481
+ .bs-toast :where(.bs-pop-body) {
7516
7482
  color: var(--bs-ink-light);
7517
- padding-bottom: 1rem;
7518
- padding-left: 1rem;
7519
- padding-right: 1rem;
7520
- }
7521
- .bs-toast :where(:not(:has(.bs-toast-header)) .bs-toast-body) {
7522
- padding-top: 1rem;
7523
- }
7524
- /* Toast Footer */
7525
- .bs-toast :where(.bs-toast-footer) {
7526
- /* Mobile - Buttons will be stacked */
7527
- display: flex;
7528
- flex-direction: row;
7529
- gap: 1rem;
7530
- justify-content: flex-end;
7531
- padding-bottom: 0.5rem;
7532
- padding-left: 1rem;
7533
- padding-right: 1rem;
7534
- padding-top: 0.5rem;
7535
- }
7536
- .bs-toast :where(.bs-toast-footer):where([data-stacked]:not([data-stacked="false"])) {
7537
- flex-direction: column-reverse;
7538
7483
  }
7539
7484
  /* Vue Transition Styles */
7540
7485
  .bs-toast-enter-active,
@@ -7557,52 +7502,185 @@ a.bs-text-button {
7557
7502
  BsDropdown inherits base styles from its BsPopover root element
7558
7503
  ...so some of these styles override those defaults.
7559
7504
  */
7505
+ /* -- DROPDOWN -- */
7506
+ /* Note: Assumes mobile sheet by default */
7507
+ /* Note: Some heights for reference */
7508
+ /* filter (desktop): 4rem (64px) */
7509
+ /* filter (mobile sheet): 5.5rem (88px) */
7510
+ /* mobile header (heading and description): 6rem (96px) */
7511
+ /* mobile header (just heading text): 4.25rem (68px) */
7512
+ /* mobile sheet footer: 3rem (48px) */
7560
7513
  .bs-dropdown {
7514
+ --bs-popover-width: 100dvw;
7561
7515
  background-color: var(--bs-bg-base-to-medium);
7562
- max-height: 20rem;
7516
+ height: 60dvh;
7517
+ margin: 0;
7518
+ max-width: 100dvw;
7563
7519
  padding: 0;
7564
7520
  }
7565
- /* filter could be "display: none" if mounted for it's logic, yet hidden due to using an outside input/model */
7566
- .bs-dropdown:where(:has(.bs-dropdown-filter:not([style*="display: none"]))) {
7567
- padding-top: 0;
7521
+ /* Don't use mobile sheet at any breakpoint */
7522
+ .bs-dropdown:where(:not([data-mobile-sheet])) {
7523
+ --bs-popover-width: 20rem;
7524
+ height: unset;
7525
+ max-height: 20rem; /* 320px */
7526
+ max-width: calc(100dvw - 3rem);
7568
7527
  }
7569
- .bs-dropdown :where(hr) {
7570
- margin: var(--bs-space-3) 0;
7528
+ @media (min-width: 752px) {
7529
+ /* Remove bottom drawer at tablet breakpoint */
7530
+ .bs-dropdown:where([data-mobile-sheet="mobile"]) {
7531
+ --bs-popover-width: 20rem;
7532
+ height: unset;
7533
+ max-height: 20rem; /* 320px */
7534
+ max-width: calc(100dvw - 3rem);
7535
+ }
7571
7536
  }
7572
- .bs-dropdown:where(:focus-visible) {
7573
- outline: none;
7537
+ @media (min-width: 1166px) {
7538
+ /* Remove bottom drawer at desktop breakpoint */
7539
+ .bs-dropdown:where([data-mobile-sheet="tablet"]) {
7540
+ --bs-popover-width: 20rem;
7541
+ height: unset;
7542
+ max-height: 20rem; /* 320px */
7543
+ max-width: calc(100dvw - 3rem);
7544
+ }
7545
+ }
7546
+ /* Here if a consumer adds their own hr between BsOptions. Just don't override the internal option group separator. */
7547
+ .bs-dropdown :where(hr:not(.bs-option-group-multiple-hr)) {
7548
+ margin: var(--bs-space-3) 0;
7574
7549
  }
7550
+ /* -- LIST -- */
7575
7551
  .bs-dropdown-list {
7576
- max-height: 20rem;
7552
+ display: flex;
7553
+ flex-direction: column;
7554
+ }
7555
+ /* Only add padding, etc when there is at least one child visible */
7556
+ .bs-dropdown-list:where(:has(.bs-option[data-visible="true"], .bs-option-group[data-visible="true"])) {
7557
+ flex: 1;
7577
7558
  overflow-y: auto;
7578
7559
  overscroll-behavior: contain;
7579
7560
  padding: var(--bs-space-3) 0;
7580
7561
  }
7562
+ .bs-dropdown-list:where(:has( .bs-option-group)) {
7563
+ padding-top: 0;
7564
+ }
7581
7565
  .bs-dropdown-list:where(:focus-visible) {
7582
7566
  outline: none;
7583
7567
  }
7584
7568
  .bs-dropdown:where(:has(.bs-dropdown-filter)) :where(.bs-dropdown-list) {
7585
7569
  padding-top: 0;
7586
- /* filter input is 4rem, so 20rem (default) - 4rem = 16rem */
7587
- max-height: 16rem;
7570
+ }
7571
+ /* Move selected options to the top */
7572
+ .bs-dropdown-list:where([aria-multiselectable="true"]) :where(.bs-option:where([data-selected-to-top="true"])) {
7573
+ order: -1;
7574
+ }
7575
+ /* Separator for multiple selected options */
7576
+ .bs-dropdown-multiple-hr {
7577
+ margin: 0 var(--bs-space-3) var(--bs-space-3);
7578
+ border-bottom: 0.0625rem solid var(--bs-accent-7-light);
7579
+ }
7580
+ /* -- MOBILE HEADER -- */
7581
+ /* Mobile sheet header */
7582
+ .bs-dropdown :where(.bs-dropdown-mobile-header) {
7583
+ border-bottom: 1px solid var(--bs-border-base);
7584
+ padding: var(--bs-space-6);
7585
+ }
7586
+ /* Hide header if not using mobile sheet */
7587
+ .bs-dropdown:where(:not([data-mobile-sheet])) :where(.bs-dropdown-mobile-header) {
7588
+ display: none;
7589
+ }
7590
+ /* Hide header at tablet breakpoint if only using mobile sheet */
7591
+ @media (min-width: 752px) {
7592
+ .bs-dropdown:where([data-mobile-sheet="mobile"]) :where(.bs-dropdown-mobile-header) {
7593
+ display: none;
7594
+ }
7595
+ }
7596
+ /* Hide header at desktop breakpoint if only using tablet sheet */
7597
+ @media (min-width: 1166px) {
7598
+ .bs-dropdown:where([data-mobile-sheet="tablet"]) :where(.bs-dropdown-mobile-header) {
7599
+ display: none;
7600
+ }
7601
+ }
7602
+ .bs-dropdown :where(.bs-dropdown-mobile-heading) {
7603
+ font-size: var(--bs-text-lg);
7604
+ line-height: var(--bs-leading-none);
7605
+ }
7606
+ .bs-dropdown :where(.bs-dropdown-mobile-description) {
7607
+ color: var(--bs-ink-light);
7608
+ font-size: var(--bs-text-base);
7609
+ padding-top: var(--bs-space-1);
7610
+ }
7611
+ /* -- MOBILE FOOTER -- */
7612
+ /* Mobile sheet footer, show by default */
7613
+ .bs-dropdown-mobile-footer {
7614
+ display: flex;
7615
+ }
7616
+ /* Hide footer if not using mobile sheet */
7617
+ .bs-dropdown:where(:not([data-mobile-sheet])) :where(.bs-dropdown-mobile-footer) {
7618
+ display: none;
7619
+ }
7620
+ @media (min-width: 752px) {
7621
+ /* Hide footer at tablet breakpoint if only using mobile sheet */
7622
+ .bs-dropdown:where([data-mobile-sheet="mobile"]) :where(.bs-dropdown-mobile-footer) {
7623
+ display: none;
7624
+ }
7625
+ }
7626
+ @media (min-width: 1166px) {
7627
+ /* Hide footer at desktop breakpoint if only using tablet sheet */
7628
+ .bs-dropdown:where([data-mobile-sheet="tablet"]) :where(.bs-dropdown-mobile-footer) {
7629
+ display: none;
7630
+ }
7631
+ }
7632
+ .bs-dropdown-mobile-footer :where(.bs-button) {
7633
+ margin: var(--bs-space-2) var(--bs-space-6);
7634
+ width: 100%;
7635
+ }
7636
+ /* -- CLOSE BUTTON -- */
7637
+ /* Override popover button positioning for mobile drawer */
7638
+ .bs-dropdown :where(.bs-popover-close-button) {
7639
+ right: var(--bs-space-4);
7640
+ top: var(--bs-space-4);
7588
7641
  }
7589
7642
  /* -- FILTER -- */
7590
7643
  .bs-dropdown-filter {
7591
7644
  position: sticky;
7592
7645
  top: 0;
7593
- padding: var(--bs-space-3);
7594
- /* fade to transparent in bottom padding area, so scrolling menu items under filter looks better */
7595
- background-image: linear-gradient(
7596
- var(--bs-bg-base-to-medium) calc(100% - var(--bs-space-3)),
7597
- transparent 100%
7598
- );
7646
+ padding: var(--bs-space-6) var(--bs-space-3);
7599
7647
  z-index: 1;
7600
7648
  }
7649
+ /* No mobile sheet, so always use desktop padding */
7650
+ .bs-dropdown:where(:not([data-mobile-sheet])) :where(.bs-dropdown-filter) {
7651
+ padding: var(--bs-space-3);
7652
+ }
7653
+ /* Mobile sheet, so use desktop padding at tablet breakpoint */
7654
+ @media (min-width: 752px) {
7655
+ .bs-dropdown:where([data-mobile-sheet="mobile"]) :where(.bs-dropdown-filter) {
7656
+ padding: var(--bs-space-3);
7657
+ }
7658
+ }
7659
+ /* Tablet sheet, so use desktop padding at desktop breakpoint */
7660
+ @media (min-width: 1166px) {
7661
+ .bs-dropdown:where([data-mobile-sheet="tablet"]) :where(.bs-dropdown-filter) {
7662
+ padding: var(--bs-space-3);
7663
+ }
7664
+ }
7665
+ .bs-dropdown-filter:where([data-hide-input="true"]) {
7666
+ padding-top: 0;
7667
+ }
7601
7668
  .bs-dropdown-filter-icon {
7602
7669
  margin-left: var(--bs-space-3);
7603
7670
  }
7604
7671
  .bs-dropdown-filter-input {
7672
+ overflow: hidden;
7605
7673
  padding-inline: var(--bs-space-2);
7674
+ text-overflow: ellipsis;
7675
+ white-space: nowrap;
7676
+ }
7677
+ .bs-dropdown-filter-hint {
7678
+ color: var(--bs-ink-light);
7679
+ font-size: var(--bs-text-xs);
7680
+ padding-top: var(--bs-space-2);
7681
+ }
7682
+ .bs-dropdown-filter:where([data-hide-input="true"]) :where(.bs-dropdown-filter-hint) {
7683
+ padding-top: var(--bs-space-4);
7606
7684
  }
7607
7685
  /* override form-text-fields.css style that hides placeholder when inputs are focused */
7608
7686
  .bs-dropdown-filter-input::-moz-placeholder {
@@ -7626,14 +7704,19 @@ a.bs-text-button {
7626
7704
  box-shadow: 0px 0px 0px 1px inset var(--bs-primary-base);
7627
7705
  }
7628
7706
  /* -- SIZING -- */
7629
- .bs-dropdown:where([data-size="sm"]) {
7630
- --bs-popover-width: 10rem; /* 160px */
7631
- }
7632
- .bs-dropdown:where([data-size="md"]) {
7633
- --bs-popover-width: 20rem; /* 320px */
7634
- }
7635
- .bs-dropdown:where([data-size="lg"]) {
7636
- --bs-popover-width: 28rem; /* 448px */
7707
+ /* Only applies to non-mobile */
7708
+ @media (min-width: 1166px) {
7709
+ .bs-dropdown:where([data-size="sm"]) {
7710
+ --bs-popover-width: 10rem; /* 160px */
7711
+ }
7712
+
7713
+ .bs-dropdown:where([data-size="md"]) {
7714
+ --bs-popover-width: 20rem; /* 320px */
7715
+ }
7716
+
7717
+ .bs-dropdown:where([data-size="lg"]) {
7718
+ --bs-popover-width: 28rem; /* 448px */
7719
+ }
7637
7720
  }
7638
7721
  /*
7639
7722
  HEADS-UP:
@@ -7641,16 +7724,14 @@ a.bs-text-button {
7641
7724
  so some of these styles are there to override those defaults.
7642
7725
  */
7643
7726
  .bs-tooltip {
7727
+ display: block;
7644
7728
  padding: var(--bs-space-4);
7645
7729
  font-size: var(--bs-text-sm);
7646
- color: var(--bs-ink-violet);
7730
+ color: var(--bs-ink-accent-2);
7647
7731
  text-align: center;
7648
7732
  line-height: var(--bs-leading-lg);
7649
7733
  background-color: var(--bs-bg-base-to-medium);
7650
7734
  }
7651
- .dark :where(.bs-tooltip) {
7652
- color: var(--bs-ink-base);
7653
- }
7654
7735
  /* Prevent tiny empty tooltip from showing if empty string is rendered into slot. */
7655
7736
  .bs-tooltip:where(:empty) {
7656
7737
  display: none;
@@ -8764,6 +8845,12 @@ a.bs-text-button {
8764
8845
  .bs-bg-accent-3-highlight {
8765
8846
  background-color: var(--bs-accent-3-highlight);
8766
8847
  }
8848
+ .bs-text-accent-4-base-fixed {
8849
+ color: var(--bs-accent-4-base-fixed);
8850
+ }
8851
+ .bs-bg-accent-4-base-fixed {
8852
+ background-color: var(--bs-accent-4-base-fixed);
8853
+ }
8767
8854
  .bs-text-accent-4-base {
8768
8855
  color: var(--bs-accent-4-base);
8769
8856
  }
@@ -8794,84 +8881,114 @@ a.bs-text-button {
8794
8881
  .bs-bg-accent-4-highlight {
8795
8882
  background-color: var(--bs-accent-4-highlight);
8796
8883
  }
8797
- /* Status Colors */
8798
- .bs-text-positive-base-fixed {
8799
- color: var(--bs-positive-base-fixed);
8884
+ .bs-text-accent-5-base {
8885
+ color: var(--bs-accent-5-base);
8800
8886
  }
8801
- .bs-bg-positive-base-fixed {
8802
- background-color: var(--bs-positive-base-fixed);
8887
+ .bs-bg-accent-5-base {
8888
+ background-color: var(--bs-accent-5-base);
8803
8889
  }
8804
- .bs-text-positive-base {
8805
- color: var(--bs-positive-base);
8890
+ .bs-text-accent-5-medium {
8891
+ color: var(--bs-accent-5-medium);
8806
8892
  }
8807
- .bs-bg-positive-base {
8808
- background-color: var(--bs-positive-base);
8893
+ .bs-bg-accent-5-medium {
8894
+ background-color: var(--bs-accent-5-medium);
8809
8895
  }
8810
- .bs-text-positive-medium {
8811
- color: var(--bs-positive-medium);
8896
+ .bs-text-accent-5-light {
8897
+ color: var(--bs-accent-5-light);
8812
8898
  }
8813
- .bs-bg-positive-medium {
8814
- background-color: var(--bs-positive-medium);
8899
+ .bs-bg-accent-5-light {
8900
+ background-color: var(--bs-accent-5-light);
8815
8901
  }
8816
- .bs-text-positive-light {
8817
- color: var(--bs-positive-light);
8902
+ .bs-text-accent-5-lightest {
8903
+ color: var(--bs-accent-5-lightest);
8818
8904
  }
8819
- .bs-bg-positive-light {
8820
- background-color: var(--bs-positive-light);
8905
+ .bs-bg-accent-5-lightest {
8906
+ background-color: var(--bs-accent-5-lightest);
8821
8907
  }
8822
- .bs-text-positive-lightest {
8823
- color: var(--bs-positive-lightest);
8908
+ .bs-text-accent-5-highlight {
8909
+ color: var(--bs-accent-5-highlight);
8824
8910
  }
8825
- .bs-bg-positive-lightest {
8826
- background-color: var(--bs-positive-lightest);
8911
+ .bs-bg-accent-5-highlight {
8912
+ background-color: var(--bs-accent-5-highlight);
8827
8913
  }
8828
- .bs-text-positive-highlight {
8829
- color: var(--bs-positive-highlight);
8914
+ .bs-text-accent-6-base {
8915
+ color: var(--bs-accent-6-base);
8830
8916
  }
8831
- .bs-bg-positive-highlight {
8832
- background-color: var(--bs-positive-highlight);
8917
+ .bs-bg-accent-6-base {
8918
+ background-color: var(--bs-accent-6-base);
8919
+ }
8920
+ .bs-text-accent-6-medium {
8921
+ color: var(--bs-accent-6-medium);
8833
8922
  }
8834
- .bs-text-ecomm-positive-base-fixed {
8835
- color: var(--bs-ecomm-positive-base-fixed);
8923
+ .bs-bg-accent-6-medium {
8924
+ background-color: var(--bs-accent-6-medium);
8836
8925
  }
8837
- .bs-bg-ecomm-positive-base-fixed {
8838
- background-color: var(--bs-ecomm-positive-base-fixed);
8926
+ .bs-text-accent-6-light {
8927
+ color: var(--bs-accent-6-light);
8839
8928
  }
8840
- .bs-text-ecomm-positive-base {
8841
- color: var(--bs-ecomm-positive-base);
8929
+ .bs-bg-accent-6-light {
8930
+ background-color: var(--bs-accent-6-light);
8842
8931
  }
8843
- .bs-bg-ecomm-positive-base {
8844
- background-color: var(--bs-ecomm-positive-base);
8932
+ .bs-text-accent-6-lightest {
8933
+ color: var(--bs-accent-6-lightest);
8845
8934
  }
8846
- .bs-text-ecomm-positive-medium {
8847
- color: var(--bs-ecomm-positive-medium);
8935
+ .bs-bg-accent-6-lightest {
8936
+ background-color: var(--bs-accent-6-lightest);
8848
8937
  }
8849
- .bs-bg-ecomm-positive-medium {
8850
- background-color: var(--bs-ecomm-positive-medium);
8938
+ .bs-text-accent-6-highlight {
8939
+ color: var(--bs-accent-6-highlight);
8851
8940
  }
8852
- .bs-text-ecomm-positive-light {
8853
- color: var(--bs-ecomm-positive-light);
8941
+ .bs-bg-accent-6-highlight {
8942
+ background-color: var(--bs-accent-6-highlight);
8854
8943
  }
8855
- .bs-bg-ecomm-positive-light {
8856
- background-color: var(--bs-ecomm-positive-light);
8944
+ .bs-text-accent-7-base {
8945
+ color: var(--bs-accent-7-base);
8857
8946
  }
8858
- .bs-text-ecomm-positive-lightest {
8859
- color: var(--bs-ecomm-positive-lightest);
8947
+ .bs-bg-accent-7-base {
8948
+ background-color: var(--bs-accent-7-base);
8860
8949
  }
8861
- .bs-bg-ecomm-positive-lightest {
8862
- background-color: var(--bs-ecomm-positive-lightest);
8950
+ .bs-text-accent-7-medium {
8951
+ color: var(--bs-accent-7-medium);
8863
8952
  }
8864
- .bs-text-ecomm-positive-highlight {
8865
- color: var(--bs-ecomm-positive-highlight);
8953
+ .bs-bg-accent-7-medium {
8954
+ background-color: var(--bs-accent-7-medium);
8866
8955
  }
8867
- .bs-bg-ecomm-positive-highlight {
8868
- background-color: var(--bs-ecomm-positive-highlight);
8956
+ .bs-text-accent-7-light {
8957
+ color: var(--bs-accent-7-light);
8869
8958
  }
8870
- .bs-text-warning-dark {
8871
- color: var(--bs-warning-dark);
8959
+ .bs-bg-accent-7-light {
8960
+ background-color: var(--bs-accent-7-light);
8872
8961
  }
8873
- .bs-bg-warning-dark {
8874
- background-color: var(--bs-warning-dark);
8962
+ .bs-text-accent-7-lightest {
8963
+ color: var(--bs-accent-7-lightest);
8964
+ }
8965
+ .bs-bg-accent-7-lightest {
8966
+ background-color: var(--bs-accent-7-lightest);
8967
+ }
8968
+ .bs-text-accent-7-highlight {
8969
+ color: var(--bs-accent-7-highlight);
8970
+ }
8971
+ .bs-bg-accent-7-highlight {
8972
+ background-color: var(--bs-accent-7-highlight);
8973
+ }
8974
+ /* Status Colors */
8975
+ .bs-text-positive-base {
8976
+ color: var(--bs-positive-base);
8977
+ }
8978
+ .bs-bg-positive-base {
8979
+ background-color: var(--bs-positive-base);
8980
+ }
8981
+ .bs-text-positive-medium {
8982
+ color: var(--bs-positive-medium);
8983
+ }
8984
+ .bs-bg-positive-medium {
8985
+ background-color: var(--bs-positive-medium);
8986
+ }
8987
+ .bs-text-positive-highlight {
8988
+ color: var(--bs-positive-highlight);
8989
+ }
8990
+ .bs-bg-positive-highlight {
8991
+ background-color: var(--bs-positive-highlight);
8875
8992
  }
8876
8993
  .bs-text-warning-base {
8877
8994
  color: var(--bs-warning-base);
@@ -8885,30 +9002,12 @@ a.bs-text-button {
8885
9002
  .bs-bg-warning-medium {
8886
9003
  background-color: var(--bs-warning-medium);
8887
9004
  }
8888
- .bs-text-warning-light {
8889
- color: var(--bs-warning-light);
8890
- }
8891
- .bs-bg-warning-light {
8892
- background-color: var(--bs-warning-light);
8893
- }
8894
- .bs-text-warning-lightest {
8895
- color: var(--bs-warning-lightest);
8896
- }
8897
- .bs-bg-warning-lightest {
8898
- background-color: var(--bs-warning-lightest);
8899
- }
8900
9005
  .bs-text-warning-highlight {
8901
9006
  color: var(--bs-warning-highlight);
8902
9007
  }
8903
9008
  .bs-bg-warning-highlight {
8904
9009
  background-color: var(--bs-warning-highlight);
8905
9010
  }
8906
- .bs-text-negative-dark {
8907
- color: var(--bs-negative-dark);
8908
- }
8909
- .bs-bg-negative-dark {
8910
- background-color: var(--bs-negative-dark);
8911
- }
8912
9011
  .bs-text-negative-base {
8913
9012
  color: var(--bs-negative-base);
8914
9013
  }
@@ -8921,18 +9020,6 @@ a.bs-text-button {
8921
9020
  .bs-bg-negative-medium {
8922
9021
  background-color: var(--bs-negative-medium);
8923
9022
  }
8924
- .bs-text-negative-light {
8925
- color: var(--bs-negative-light);
8926
- }
8927
- .bs-bg-negative-light {
8928
- background-color: var(--bs-negative-light);
8929
- }
8930
- .bs-text-negative-lightest {
8931
- color: var(--bs-negative-lightest);
8932
- }
8933
- .bs-bg-negative-lightest {
8934
- background-color: var(--bs-negative-lightest);
8935
- }
8936
9023
  .bs-text-negative-highlight {
8937
9024
  color: var(--bs-negative-highlight);
8938
9025
  }