@planningcenter/tapestry 3.4.1-rc.6 → 3.4.1-rc.8

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.
@@ -1,3 +1,77 @@
1
+ .tds-checkbox-group{
2
+ --tds-checkbox-group-font-size:var(--t-font-size-md);
3
+ --tds-checkbox-group-line-height:1.4;
4
+ --tds-checkbox-group-gap:var(--t-spacing-1);
5
+
6
+ --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
7
+ --tds-checkbox-group-description-line-height:1.35;
8
+ --tds-checkbox-group-description-color:var(--t-text-color-secondary);
9
+ --tds-checkbox-group-description-invalid-icon-display:none;
10
+ display:flex;
11
+ flex-direction:column;
12
+ gap:0;
13
+ padding:0;
14
+ margin:0;
15
+
16
+ font-size:var(--tds-checkbox-group-font-size);
17
+ line-height:var(--tds-checkbox-group-line-height);
18
+ border:0;
19
+ }
20
+
21
+ .tds-checkbox-group legend{
22
+ float:left;
23
+ padding:0;
24
+ margin:0;
25
+ }
26
+
27
+ .tds-checkbox-group[aria-invalid="true"]{
28
+ --tds-checkbox-group-description-color:var(--t-text-color-status-error);
29
+ --tds-checkbox-group-description-invalid-icon-display:inline-block;
30
+ }
31
+
32
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
33
+ margin-left:.25ch;
34
+ color:var(--t-text-color-status-error);
35
+ content:"*";
36
+ }
37
+
38
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
39
+ content:none;
40
+ }
41
+
42
+ .tds-checkbox-group-fields{
43
+ display:flex;
44
+ flex-direction:column;
45
+ gap:var(--tds-checkbox-group-gap);
46
+ align-items:flex-start;
47
+ margin-top:var(--t-spacing-1);
48
+ }
49
+
50
+ .tds-checkbox-group-description{
51
+ display:flex;
52
+ gap:var(--t-spacing-half);
53
+ align-items:flex-start;
54
+ margin:var(--t-spacing-fourth) 0 0;
55
+ font-size:var(--tds-checkbox-group-description-font-size);
56
+ line-height:var(--tds-checkbox-group-description-line-height);
57
+ color:var(--tds-checkbox-group-description-color);
58
+ cursor:text;
59
+ }
60
+
61
+ .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
62
+ display:var(--tds-checkbox-group-description-invalid-icon-display);
63
+ flex-shrink:0;
64
+ margin-top:calc(.5lh - .5em);
65
+ line-height:var(--tds-checkbox-group-description-line-height);
66
+ }
67
+
68
+ .tds-checkbox-group--sm{
69
+ --tds-checkbox-group-line-height:1.35;
70
+ --tds-checkbox-group-font-size:var(--t-font-size-sm);
71
+ --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
72
+ --tds-checkbox-group-description-line-height:1.3;
73
+ }
74
+
1
75
  @layer t-critical{
2
76
  tds-page-header:not(.hydrated){
3
77
  display:none;
@@ -276,6 +350,188 @@
276
350
  }
277
351
  }
278
352
 
353
+ .tds-combo-box{
354
+ --tds-combo-box-button-offset:4px;
355
+ }
356
+
357
+ .tds-combo-box[data-open] .tds-combo-box-button > svg{
358
+ transform:rotate(.5turn);
359
+ }
360
+
361
+ .tds-combo-box--lg{
362
+ --tds-combo-box-button-offset:5px;
363
+ }
364
+
365
+ .tds-combo-box-field:has([readonly]) .tds-combo-box-button{
366
+ display:none;
367
+ }
368
+
369
+ .tds-combo-box-input{
370
+ display:flex;
371
+ flex:1;
372
+ align-items:center;
373
+ padding-block:var(--tds-field-padding-block);
374
+ padding-inline:var(--tds-field-padding-inline);
375
+ font-family:inherit;
376
+ font-size:inherit;
377
+ color:inherit;
378
+ outline:0;
379
+ background:transparent;
380
+ border:0;
381
+ }
382
+
383
+ .tds-combo-box-input:has( + .tds-combo-box-button){
384
+ padding-inline-end:0;
385
+ }
386
+
387
+ .tds-combo-box-input::-moz-placeholder{
388
+ color:var(--tds-field-placeholder-color);
389
+ -moz-user-select:none;
390
+ user-select:none;
391
+ }
392
+
393
+ .tds-combo-box-input::placeholder{
394
+ color:var(--tds-field-placeholder-color);
395
+ -webkit-user-select:none;
396
+ -moz-user-select:none;
397
+ user-select:none;
398
+ }
399
+
400
+ .tds-combo-box-button{
401
+ flex-shrink:0;
402
+ align-self:center;
403
+ inline-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
404
+ block-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
405
+ padding:0;
406
+ margin-inline-end:var(--tds-combo-box-button-offset);
407
+ }
408
+
409
+ .tds-combo-box-button > svg{
410
+ inline-size:var(--tds-field-font-size);
411
+ block-size:var(--tds-field-font-size);
412
+ transition:transform var(--t-duration-300) var(--t-ease-in-out);
413
+ }
414
+
415
+ .tds-combo-box-popover{
416
+ width:var(--trigger-width);
417
+ max-block-size:inherit;
418
+ padding:var(--t-spacing-1);
419
+ overflow:auto;
420
+ scroll-behavior:smooth;
421
+ overscroll-behavior:none;
422
+ -webkit-user-select:none;
423
+ -moz-user-select:none;
424
+ user-select:none;
425
+ outline:0;
426
+ scrollbar-color:#0004 var(--t-surface-color-card);
427
+ scrollbar-width:thin;
428
+ background:var(--t-surface-color-card);
429
+ background-clip:padding-box;
430
+ border:1px solid var(--t-border-color);
431
+ border-radius:var(--t-border-radius);
432
+ box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
433
+ }
434
+
435
+ .tds-combo-box-popover[data-entering]{
436
+ animation:tds-combo-box-popover var(--t-duration-300) var(--t-ease-out);
437
+ }
438
+
439
+ .tds-combo-box-popover[data-exiting]{
440
+ animation:tds-combo-box-popover var(--t-duration-200) var(--t-ease-in) reverse;
441
+ }
442
+
443
+ .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
444
+ will-change:opacity, transform;
445
+ }
446
+
447
+ @keyframes tds-combo-box-popover{
448
+ from{
449
+ opacity:0;
450
+ transform:translateY(-8px);
451
+ }
452
+ }
453
+
454
+ @media (prefers-reduced-motion: reduce){
455
+ .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
456
+ animation:none;
457
+ }
458
+
459
+ .tds-combo-box-button > svg{
460
+ transition:none;
461
+ }
462
+ }
463
+
464
+ .tds-combo-box-list{
465
+ padding:0;
466
+ margin:0;
467
+ }
468
+
469
+ .tds-combo-box-list-item{
470
+ display:block;
471
+ padding-block:var(--t-spacing-1);
472
+ padding-inline:var(--t-spacing-2) var(--t-spacing-1);
473
+ overflow:hidden;
474
+ text-overflow:ellipsis;
475
+ font-size:1rem;
476
+ color:var(--t-text-color);
477
+ white-space:nowrap;
478
+ cursor:default;
479
+ border-radius:var(--t-border-radius);
480
+ }
481
+
482
+ .tds-combo-box-list-item[data-hovered]:not([data-disabled]),.tds-combo-box-list-item[data-focus-visible]{
483
+ background:var(--t-fill-color-neutral-070);
484
+ }
485
+
486
+ .tds-combo-box-list-item[data-selected]{
487
+ background:var(--t-fill-color-button-interaction-ghost-active);
488
+ }
489
+
490
+ .tds-combo-box-list-item[data-pressed]:not([data-disabled]){
491
+ background:var(--t-fill-color-neutral-060);
492
+ }
493
+
494
+ .tds-combo-box-list-item[data-disabled]{
495
+ color:var(--t-form-color-disabled);
496
+ cursor:not-allowed;
497
+ }
498
+
499
+ .tds-combo-box-list-item[data-disabled][data-hovered]{
500
+ background:transparent;
501
+ }
502
+
503
+ .tds-combo-box-empty-state{
504
+ position:relative;
505
+ min-block-size:var(--t-spacing-3);
506
+ padding-block:var(--t-spacing-1);
507
+ padding-inline:var(--t-spacing-2);
508
+ font-size:var(--t-font-size-md);
509
+ color:var(--t-text-color-secondary);
510
+ }
511
+
512
+ .tds-combo-box-load-more{
513
+ position:relative;
514
+ min-block-size:calc(var(--t-spacing-3) + var(--t-spacing-1));
515
+ }
516
+
517
+ .tds-combo-box-empty-state,
518
+ .tds-combo-box-load-more{
519
+ --tds-loading-spinner-visibility:visible;
520
+ --tds-loading-spinner-animation-play-state:running;
521
+ }
522
+
523
+ .tds-combo-box-list-section:not(:first-child){
524
+ margin-block-start:var(--t-spacing-half);
525
+ }
526
+
527
+ .tds-combo-box-section-header{
528
+ padding-block:var(--t-spacing-1);
529
+ padding-inline:var(--t-spacing-1);
530
+ font-size:var(--t-font-size-sm);
531
+ font-weight:var(--t-font-weight-semibold);
532
+ color:var(--t-text-color-secondary);
533
+ }
534
+
279
535
  .tds-checkbox{
280
536
  --tds-checkbox-font-size:var(--t-font-size-md);
281
537
  --tds-checkbox-cursor:pointer;
@@ -471,548 +727,87 @@
471
727
  --tds-checkbox-description-line-height:1.3;
472
728
  }
473
729
 
730
+ .tds-radio-group{
731
+ --tds-radio-group-font-size:var(--t-font-size-md);
732
+ --tds-radio-group-line-height:1.4;
733
+ --tds-radio-group-gap:var(--t-spacing-1);
474
734
 
475
- @media (prefers-reduced-motion: no-preference){
476
-
477
- :root{
478
- interpolate-size:allow-keywords;
479
- }
480
- }
481
-
482
- @layer tds-component{
483
- tds-sidenav,
484
- .tds-sidenav{
485
- --tds-sidenav-indent:12px;
486
- --tds-sidenav-item-depth:0;
487
-
488
- --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
489
-
490
- --tds-sidenav-collapse-transition-enter:opacity var(--t-duration-300) var(--t-ease-out), transform var(--t-duration-300) var(--t-ease-out), display var(--t-duration-300) allow-discrete, overlay var(--t-duration-300) allow-discrete;
491
- --tds-sidenav-collapse-transition-exit:opacity var(--t-duration-200) var(--t-ease-in), display var(--t-duration-200) allow-discrete, overlay var(--t-duration-200) allow-discrete;
492
- --tds-sidenav-collapse-closed-opacity:0;
493
- --tds-sidenav-collapse-open-opacity:1;
494
- --tds-sidenav-collapse-closed-transform:translateY(-8px);
495
- --tds-sidenav-collapse-open-transform:translateY(0);
496
-
497
- --tds-sidenav-item-icon-size:var(--t-element-size-md);
498
- --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
499
- --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
500
- --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
501
-
502
- --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
503
- --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
504
- --tds-sidenav-item-nested-background-selected:transparent;
505
-
506
- --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
507
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
508
- --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
509
-
510
- --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
511
- --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
512
- }
513
-
514
- @media (prefers-reduced-motion: reduce){
515
- tds-sidenav,
516
- .tds-sidenav{
517
- --tds-sidenav-collapse-transition-enter:none;
518
- --tds-sidenav-collapse-transition-exit:none;
519
- --tds-sidenav-collapse-closed-transform:none;
520
- --tds-sidenav-collapse-open-transform:none;
521
- }
522
- }
523
-
524
- .tds-sidenav--theme-gray{
525
- --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
526
- --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
527
- --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
528
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
529
- --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
530
- }
531
- }
532
-
533
- .tds-sidenav :where(nav,ul,.tds-sidenav-section){
534
- display:flex;
535
- }
536
-
537
- .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
538
- flex-direction:column;
539
- gap:var(--t-spacing-half);
540
- width:100%;
541
- }
542
-
543
- .tds-sidenav-section-list{
544
- width:100%;
735
+ --tds-radio-group-description-font-size:var(--t-font-size-sm);
736
+ --tds-radio-group-description-line-height:1.35;
737
+ --tds-radio-group-description-color:var(--t-text-color-secondary);
738
+ --tds-radio-group-description-invalid-icon-display:none;
739
+ display:flex;
740
+ flex-direction:column;
741
+ gap:0;
545
742
  padding:0;
546
743
  margin:0;
547
- list-style:none;
548
- }
549
744
 
550
- .tds-sidenav-section-header{
551
- display:flex;
552
- align-items:baseline;
553
- justify-content:space-between;
554
- padding-top:var(--t-spacing-2);
745
+ font-size:var(--tds-radio-group-font-size);
746
+ line-height:var(--tds-radio-group-line-height);
747
+ border:0;
555
748
  }
556
749
 
557
- .tds-sidenav-section-header h2{
750
+ .tds-radio-group legend{
751
+ float:left;
752
+ padding:0;
558
753
  margin:0;
559
- font-size:var(--t-font-size-sm);
560
- font-weight:var(--t-font-weight-semibold);
561
- line-height:1.35;
562
- color:var(--t-text-color-secondary);
563
- text-transform:uppercase;
564
- }
565
-
566
- .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
567
- padding-top:0;
568
- }
569
-
570
- .tds-sidenav-section-header [slot="label-actions"]{
571
- display:flex;
572
- gap:var(--t-spacing-half);
573
- align-items:center;
574
- }
575
-
576
- .tds-sidenav-section [slot="section-actions"]{
577
- display:flex;
578
- gap:12px;
579
- align-items:center;
580
- min-height:42px;
581
- padding:var(--t-spacing-1) 0;
582
- }
583
-
584
- .tds-sidenav-section-list,
585
- .tds-sidenav-item{
586
- width:100%;
587
- padding:0;
588
- margin:0;
589
- }
590
-
591
- .tds-sidenav-item :is(a,button){
592
- position:relative;
593
- display:flex;
594
- gap:12px;
595
- align-items:center;
596
- width:100%;
597
- padding:12px;
598
- overflow:hidden;
599
- font-size:var(--t-font-size-sm);
600
- line-height:18px;
601
- color:var(--t-text-color-headline);
602
- white-space:nowrap;
603
- text-decoration:none;
604
- -webkit-appearance:none;
605
- -moz-appearance:none;
606
- appearance:none;
607
- cursor:pointer;
608
- background-color:var(--tds-sidenav-item-background, transparent);
609
- border:0;
610
- border-radius:var(--t-border-radius);
611
- transition:var(--tds-sidenav-item-transition);
612
- }
613
-
614
- :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
615
- display:block;
616
- flex:1;
617
- overflow:hidden;
618
- text-overflow:ellipsis;
619
- text-align:left;
620
- white-space:nowrap;
621
- }
622
-
623
- :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
624
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
625
- color:var(--t-text-color-headline);
626
- text-decoration:none;
627
- }
628
-
629
- :is(.tds-sidenav-item :is(a,button)):active{
630
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
631
- }
632
-
633
- :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
634
- overflow:hidden;
635
- color:var(--tds-sidenav-item-icon-color);
636
- }
637
-
638
- :is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])),:is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])) svg{
639
- display:block;
640
- width:var(--tds-sidenav-item-icon-size);
641
- height:var(--tds-sidenav-item-icon-size);
642
- }
643
-
644
- :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
645
- --tds-sidenav-indent:19px;
646
- }
647
-
648
- [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
649
- visibility:visible;
650
- block-size:auto;
651
- opacity:1;
652
- }
653
-
654
- .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
655
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
656
- --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
657
-
658
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
659
- font-weight:var(--t-font-weight-semibold);
660
- }
661
-
662
- .tds-sidenav-item:has(.tds-sidenav-section){
663
- display:flex;
664
- flex-direction:column;
665
- gap:var(--t-spacing-half);
666
754
  }
667
755
 
668
- .tds-sidenav-item .tds-sidenav-section-list{
669
- --tds-sidenav-item-depth:1;
670
- gap:0;
756
+ .tds-radio-group[aria-invalid="true"]{
757
+ --tds-radio-group-description-color:var(--t-text-color-status-error);
758
+ --tds-radio-group-description-invalid-icon-display:inline-block;
671
759
  }
672
760
 
673
- .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
674
- visibility:hidden;
675
- block-size:0;
676
- overflow-y:clip;
677
- opacity:0;
678
- transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
679
- }
680
-
681
- :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
682
- --tds-sidenav-item-depth:2;
683
- }
684
-
685
- :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
686
- min-height:var(--t-element-size-2xl);
687
- padding-block:9px;
688
- padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
689
- line-height:1;
690
- background-color:transparent;
761
+ .tds-radio-group[aria-invalid="true"] .tds-radio{
762
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
691
763
  }
692
764
 
693
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
694
- position:absolute;
695
- top:0;
696
- bottom:0;
697
- left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
698
- width:2px;
699
- content:"";
700
- background-color:var(--tds-sidenav-item-nested-border-color);
701
- transition:var(--tds-sidenav-item-transition);
765
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
766
+ --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
767
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
702
768
  }
703
769
 
704
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
705
- position:absolute;
706
- inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
707
- z-index:-1;
708
- height:100%;
709
- content:"";
710
- background-color:var(--tds-sidenav-item-nested-background);
711
- border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
712
- transition:var(--tds-sidenav-item-transition);
770
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
771
+ --tds-radio-input-background-color:var(--t-form-background-color);
713
772
  }
714
773
 
715
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):not(:has(.prefix,.suffix)),:is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)) :is(:not(.prefix,.suffix)){
716
- display:block;
717
- text-align:left;
718
- white-space:normal;
719
- }
720
-
721
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):hover,:is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):focus-visible{
722
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
723
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
724
- }
725
-
726
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
727
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
728
- }
729
-
730
- .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
731
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
732
- font-weight:var(--t-font-weight-medium);
733
- }
734
-
735
- .tds-sidenav-responsive-header{
736
- display:flex;
737
- gap:var(--t-spacing-2);
738
- align-items:center;
739
- width:100%;
740
- }
741
-
742
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
743
- order:0;
744
- }
745
-
746
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
747
- flex:1;
748
- order:1;
749
- margin:0;
750
- font-size:var(--t-font-size-lg);
751
- font-weight:var(--t-font-weight-medium);
752
- color:var(--t-text-color-headline);
753
- }
754
-
755
- @media (max-width: 719px){
756
- .tds-sidenav-collapse{
757
- z-index:10001;
758
- display:none;
759
- max-width:min(448px, calc(100vw - 48px));
760
- padding:0;
761
- margin:12px 0;
762
- position-area:bottom span-right;
763
- overflow:hidden;
764
- outline:0;
765
- background:var(--t-surface-color-card);
766
- border:0;
767
- border-radius:6px;
768
- box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
769
- opacity:var(--tds-sidenav-collapse-open-opacity);
770
- transform:var(--tds-sidenav-collapse-open-transform);
771
- transition:var(--tds-sidenav-collapse-transition-enter);
772
- will-change:transform;
773
- }
774
-
775
- .tds-sidenav-scroll-container{
776
- --webkit-overflow-scrolling:touch;
777
- display:block;
778
- width:100%;
779
- height:-moz-fit-content;
780
- height:fit-content;
781
- padding:var(--t-spacing-2);
782
- overflow-y:auto;
783
- }
784
-
785
- .tds-sidenav-item :is(a, button) :is(.prefix){
786
- display:none;
787
- }
788
- @supports selector(:popover-open){
789
- .tds-sidenav-collapse:popover-open{
790
- display:flex;
791
- }
792
-
793
- .tds-sidenav-collapse:not(:popover-open){
794
- opacity:var(--tds-sidenav-collapse-closed-opacity);
795
- transition:var(--tds-sidenav-collapse-transition-exit);
796
- }
797
-
798
- @starting-style{
799
- .tds-sidenav-collapse:popover-open{
800
- opacity:var(--tds-sidenav-collapse-closed-opacity);
801
- transform:var(--tds-sidenav-collapse-closed-transform);
802
- }
803
- }
804
- }
805
- @supports not selector(:popover-open){
806
- .tds-sidenav-collapse.\:popover-open{
807
- display:flex;
808
- }
809
-
810
- .tds-sidenav-collapse:not(.\:popover-open){
811
- opacity:var(--tds-sidenav-collapse-closed-opacity);
812
- transition:var(--tds-sidenav-collapse-transition-exit);
813
- }
814
- }
815
- }
816
-
817
- @media (min-width: 720px){
818
- .tds-sidenav-responsive-header{
819
- display:none;
820
- }
821
- }
822
-
823
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
824
- display:none;
825
- }
826
-
827
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
828
- display:block;
829
- }
830
-
831
- tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
832
- display:flex;
833
- flex-direction:column;
834
- }
835
-
836
- .tds-combo-box{
837
- --tds-combo-box-button-offset:4px;
838
- }
839
-
840
- .tds-combo-box[data-open] .tds-combo-box-button > svg{
841
- transform:rotate(.5turn);
842
- }
843
-
844
- .tds-combo-box--lg{
845
- --tds-combo-box-button-offset:5px;
846
- }
847
-
848
- .tds-combo-box-field:has([readonly]) .tds-combo-box-button{
849
- display:none;
850
- }
851
-
852
- .tds-combo-box-input{
853
- display:flex;
854
- flex:1;
855
- align-items:center;
856
- padding-block:var(--tds-field-padding-block);
857
- padding-inline:var(--tds-field-padding-inline);
858
- font-family:inherit;
859
- font-size:inherit;
860
- color:inherit;
861
- outline:0;
862
- background:transparent;
863
- border:0;
864
- }
865
-
866
- .tds-combo-box-input:has( + .tds-combo-box-button){
867
- padding-inline-end:0;
868
- }
869
-
870
- .tds-combo-box-input::-moz-placeholder{
871
- color:var(--tds-field-placeholder-color);
872
- -moz-user-select:none;
873
- user-select:none;
874
- }
875
-
876
- .tds-combo-box-input::placeholder{
877
- color:var(--tds-field-placeholder-color);
878
- -webkit-user-select:none;
879
- -moz-user-select:none;
880
- user-select:none;
881
- }
882
-
883
- .tds-combo-box-button{
884
- flex-shrink:0;
885
- align-self:center;
886
- inline-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
887
- block-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
888
- padding:0;
889
- margin-inline-end:var(--tds-combo-box-button-offset);
890
- }
891
-
892
- .tds-combo-box-button > svg{
893
- inline-size:var(--tds-field-font-size);
894
- block-size:var(--tds-field-font-size);
895
- transition:transform var(--t-duration-300) var(--t-ease-in-out);
896
- }
897
-
898
- .tds-combo-box-popover{
899
- width:var(--trigger-width);
900
- max-block-size:inherit;
901
- padding:var(--t-spacing-1);
902
- overflow:auto;
903
- scroll-behavior:smooth;
904
- overscroll-behavior:none;
905
- -webkit-user-select:none;
906
- -moz-user-select:none;
907
- user-select:none;
908
- outline:0;
909
- scrollbar-color:#0004 var(--t-surface-color-card);
910
- scrollbar-width:thin;
911
- background:var(--t-surface-color-card);
912
- background-clip:padding-box;
913
- border:1px solid var(--t-border-color);
914
- border-radius:var(--t-border-radius);
915
- box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
916
- }
917
-
918
- .tds-combo-box-popover[data-entering]{
919
- animation:tds-combo-box-popover var(--t-duration-300) var(--t-ease-out);
920
- }
921
-
922
- .tds-combo-box-popover[data-exiting]{
923
- animation:tds-combo-box-popover var(--t-duration-200) var(--t-ease-in) reverse;
924
- }
925
-
926
- .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
927
- will-change:opacity, transform;
928
- }
929
-
930
- @keyframes tds-combo-box-popover{
931
- from{
932
- opacity:0;
933
- transform:translateY(-8px);
934
- }
935
- }
936
-
937
- @media (prefers-reduced-motion: reduce){
938
- .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
939
- animation:none;
940
- }
941
-
942
- .tds-combo-box-button > svg{
943
- transition:none;
944
- }
945
- }
946
-
947
- .tds-combo-box-list{
948
- padding:0;
949
- margin:0;
950
- }
951
-
952
- .tds-combo-box-list-item{
953
- display:block;
954
- padding-block:var(--t-spacing-1);
955
- padding-inline:var(--t-spacing-2) var(--t-spacing-1);
956
- overflow:hidden;
957
- text-overflow:ellipsis;
958
- font-size:1rem;
959
- color:var(--t-text-color);
960
- white-space:nowrap;
961
- cursor:default;
962
- border-radius:var(--t-border-radius);
963
- }
964
-
965
- .tds-combo-box-list-item[data-hovered]:not([data-disabled]),.tds-combo-box-list-item[data-focus-visible]{
966
- background:var(--t-fill-color-neutral-070);
967
- }
968
-
969
- .tds-combo-box-list-item[data-selected]{
970
- background:var(--t-fill-color-button-interaction-ghost-active);
971
- }
972
-
973
- .tds-combo-box-list-item[data-pressed]:not([data-disabled]){
974
- background:var(--t-fill-color-neutral-060);
975
- }
976
-
977
- .tds-combo-box-list-item[data-disabled]{
978
- color:var(--t-form-color-disabled);
979
- cursor:not-allowed;
980
- }
981
-
982
- .tds-combo-box-list-item[data-disabled][data-hovered]{
983
- background:transparent;
984
- }
985
-
986
- .tds-combo-box-empty-state{
987
- position:relative;
988
- min-block-size:var(--t-spacing-3);
989
- padding-block:var(--t-spacing-1);
990
- padding-inline:var(--t-spacing-2);
991
- font-size:var(--t-font-size-md);
992
- color:var(--t-text-color-secondary);
993
- }
774
+ .tds-radio-group:has(input:required) legend::after{
775
+ margin-left:.25ch;
776
+ color:var(--t-text-color-status-error);
777
+ content:"*";
778
+ }
994
779
 
995
- .tds-combo-box-load-more{
996
- position:relative;
997
- min-block-size:calc(var(--t-spacing-3) + var(--t-spacing-1));
780
+ .tds-radio-group-fields{
781
+ display:flex;
782
+ flex-direction:column;
783
+ gap:var(--tds-radio-group-gap);
784
+ align-items:flex-start;
785
+ margin-top:var(--t-spacing-1);
998
786
  }
999
787
 
1000
- .tds-combo-box-empty-state,
1001
- .tds-combo-box-load-more{
1002
- --tds-loading-spinner-visibility:visible;
1003
- --tds-loading-spinner-animation-play-state:running;
788
+ .tds-radio-group-description{
789
+ display:flex;
790
+ gap:var(--t-spacing-half);
791
+ align-items:flex-start;
792
+ margin:var(--t-spacing-fourth) 0 0;
793
+ font-size:var(--tds-radio-group-description-font-size);
794
+ line-height:var(--tds-radio-group-description-line-height);
795
+ color:var(--tds-radio-group-description-color);
796
+ cursor:text;
1004
797
  }
1005
798
 
1006
- .tds-combo-box-list-section:not(:first-child){
1007
- margin-block-start:var(--t-spacing-half);
799
+ .tds-radio-group-description .tds-radio-group-description-invalid-icon{
800
+ display:var(--tds-radio-group-description-invalid-icon-display);
801
+ flex-shrink:0;
802
+ margin-top:calc(.5lh - .5em);
803
+ line-height:var(--tds-radio-group-description-line-height);
1008
804
  }
1009
805
 
1010
- .tds-combo-box-section-header{
1011
- padding-block:var(--t-spacing-1);
1012
- padding-inline:var(--t-spacing-1);
1013
- font-size:var(--t-font-size-sm);
1014
- font-weight:var(--t-font-weight-semibold);
1015
- color:var(--t-text-color-secondary);
806
+ .tds-radio-group--sm{
807
+ --tds-radio-group-line-height:1.35;
808
+ --tds-radio-group-font-size:var(--t-font-size-sm);
809
+ --tds-radio-group-description-font-size:var(--t-font-size-xs);
810
+ --tds-radio-group-description-line-height:1.3;
1016
811
  }
1017
812
 
1018
813
  .tds-date-picker{
@@ -1371,6 +1166,57 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1371
1166
  --tds-date-picker-popover-font-size:var(--t-font-size-lg);
1372
1167
  }
1373
1168
 
1169
+ .tds-number-stepper{
1170
+ --tds-number-stepper-button-offset:4px;
1171
+ --tds-number-stepper-button-gap:2px;
1172
+ }
1173
+
1174
+ .tds-number-stepper--lg{
1175
+ --tds-number-stepper-button-offset:5px;
1176
+ --tds-number-stepper-button-gap:4px;
1177
+ }
1178
+
1179
+ .tds-number-stepper-field:has([readonly]) .tds-number-stepper-button{
1180
+ display:none;
1181
+ }
1182
+
1183
+ .tds-number-stepper-input{
1184
+ display:flex;
1185
+ flex:1;
1186
+ align-items:center;
1187
+ min-inline-size:0;
1188
+ padding-block:var(--tds-field-padding-block);
1189
+ padding-inline:var(--tds-field-padding-inline);
1190
+ font-family:inherit;
1191
+ font-size:inherit;
1192
+ color:inherit;
1193
+ outline:0;
1194
+ background:transparent;
1195
+ border:0;
1196
+ }
1197
+
1198
+ .tds-number-stepper-input::-webkit-inner-spin-button,.tds-number-stepper-input::-webkit-outer-spin-button{
1199
+ margin:0;
1200
+ -webkit-appearance:none;
1201
+ appearance:none;
1202
+ }
1203
+
1204
+ .tds-number-stepper-button{
1205
+ flex-shrink:0;
1206
+ align-self:center;
1207
+ inline-size:calc(var(--tds-field-min-height) - (var(--tds-number-stepper-button-offset) * 2));
1208
+ block-size:calc(var(--tds-field-min-height) - (var(--tds-number-stepper-button-offset) * 2));
1209
+ padding:0;
1210
+ }
1211
+
1212
+ .tds-number-stepper-button + .tds-number-stepper-button{
1213
+ margin-inline-start:var(--tds-number-stepper-button-gap);
1214
+ }
1215
+
1216
+ .tds-number-stepper-button:last-of-type{
1217
+ margin-inline-end:var(--tds-number-stepper-button-offset);
1218
+ }
1219
+
1374
1220
 
1375
1221
  :is(.tds-input input)::-webkit-search-decoration,:is(.tds-input input)::-webkit-search-cancel-button,:is(.tds-input input)::-webkit-search-results-button,:is(.tds-input input)::-webkit-search-results-decoration{
1376
1222
  -webkit-appearance:none;
@@ -1402,6 +1248,111 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1402
1248
  font-variant-numeric:tabular-nums;
1403
1249
  }
1404
1250
 
1251
+ .tds-input:has(textarea){
1252
+ --tds-input-padding-block:6px;
1253
+ --tds-input-resizer-size:var(--t-element-size-sm);
1254
+ --tds-input-resizer-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cg fill='none' stroke='%236f7784' stroke-linecap='round' stroke-width='1.25'%3E%3Cpath d='M5.5 13l7.5-7.5'/%3E%3Cpath d='M9 13l4-4'/%3E%3C/g%3E%3C/svg%3E");
1255
+ }
1256
+
1257
+ @supports (x: attr(x type(*))){
1258
+
1259
+ .tds-input textarea{
1260
+ --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
1261
+ }
1262
+ }
1263
+
1264
+ .tds-input.tds-textarea--resize-vertical textarea{
1265
+ resize:vertical;
1266
+ }
1267
+
1268
+ .tds-input.tds-textarea--resize-none textarea{
1269
+ resize:none;
1270
+ }
1271
+
1272
+ .tds-input.tds-textarea--resize-auto textarea{
1273
+ resize:vertical;
1274
+ }
1275
+
1276
+ @supports (field-sizing: content){
1277
+ .tds-input.tds-textarea--resize-auto textarea{
1278
+ field-sizing:content;
1279
+ resize:none;
1280
+ }
1281
+ }
1282
+
1283
+ .tds-input textarea{
1284
+ --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
1285
+ --tds-input-scrollbar-thumb-color-hidden:transparent;
1286
+ --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
1287
+ --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
1288
+ --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
1289
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
1290
+ --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
1291
+ --tds-input-scrollbar-thumb-border-radius:999px;
1292
+ --tds-input-scrollbar-thumb-border-width:3px;
1293
+ --tds-input-scrollbar-track-margin-block:.125rem;
1294
+ scrollbar-color:initial;
1295
+ transition-timing-function:var(--t-ease-in-out);
1296
+ transition-duration:var(--t-duration-200);
1297
+ transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
1298
+ }
1299
+
1300
+ @media (pointer: fine){
1301
+ :is(.tds-input textarea)::-webkit-scrollbar{
1302
+ width:12px;
1303
+ height:12px;
1304
+ cursor:default;
1305
+ }
1306
+
1307
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb{
1308
+ cursor:default;
1309
+ background:var(--tds-input-scrollbar-thumb-color);
1310
+ background-clip:content-box;
1311
+ border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
1312
+ border-radius:var(--tds-input-scrollbar-thumb-border-radius);
1313
+ }
1314
+
1315
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
1316
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
1317
+ }
1318
+
1319
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
1320
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
1321
+ }
1322
+
1323
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
1324
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
1325
+ }
1326
+
1327
+ :is(.tds-input textarea)::-webkit-scrollbar-corner{
1328
+ background:var(--tds-input-scrollbar-surface-color);
1329
+ }
1330
+
1331
+ :is(.tds-input textarea)::-webkit-resizer{
1332
+ background:var(--tds-input-resizer-icon) no-repeat;
1333
+ background-position:right bottom;
1334
+ background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
1335
+ }
1336
+
1337
+ :is(.tds-input textarea)::-webkit-scrollbar-track{
1338
+ margin-block:var(--tds-input-scrollbar-track-margin-block);
1339
+ cursor:default;
1340
+ }
1341
+
1342
+ @supports (-moz-appearance: none){
1343
+ :is(.tds-input textarea){
1344
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
1345
+ scrollbar-width:thin;
1346
+ }
1347
+
1348
+ @media (hover){
1349
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
1350
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
1351
+ }
1352
+ }
1353
+ }
1354
+ }
1355
+
1405
1356
  .tds-radio{
1406
1357
  --tds-radio-font-size:var(--t-font-size-md);
1407
1358
  --tds-radio-cursor:pointer;
@@ -1535,138 +1486,144 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1535
1486
  --tds-radio-description-line-height:1.3;
1536
1487
  }
1537
1488
 
1538
- .tds-number-stepper{
1539
- --tds-number-stepper-button-offset:4px;
1540
- --tds-number-stepper-button-gap:2px;
1541
- }
1489
+ .tds-toggle-switch{
1490
+ --tds-toggle-switch-font-size:var(--t-font-size-md);
1491
+ --tds-toggle-switch-cursor:pointer;
1492
+ --tds-toggle-switch-display:inline-grid;
1493
+ --tds-toggle-switch-line-height:1.4;
1542
1494
 
1543
- .tds-number-stepper--lg{
1544
- --tds-number-stepper-button-offset:5px;
1545
- --tds-number-stepper-button-gap:4px;
1546
- }
1495
+ --tds-toggle-switch-label-color:var(--t-form-color);
1547
1496
 
1548
- .tds-number-stepper-field:has([readonly]) .tds-number-stepper-button{
1549
- display:none;
1550
- }
1497
+ --tds-toggle-switch-track-width:var(--t-container-size-md);
1498
+ --tds-toggle-switch-track-outline:none;
1499
+ --tds-toggle-switch-track-height:var(--t-container-size-xs);
1500
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
1501
+ --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
1551
1502
 
1552
- .tds-number-stepper-input{
1553
- display:flex;
1554
- flex:1;
1555
- align-items:center;
1556
- min-inline-size:0;
1557
- padding-block:var(--tds-field-padding-block);
1558
- padding-inline:var(--tds-field-padding-inline);
1559
- font-family:inherit;
1560
- font-size:inherit;
1561
- color:inherit;
1562
- outline:0;
1563
- background:transparent;
1564
- border:0;
1503
+ --tds-toggle-switch-thumb-size:var(--t-element-size-md);
1504
+ --tds-toggle-switch-thumb-transform:translateX(0);
1505
+ --tds-toggle-switch-thumb-transition:transform var(--t-duration-200) var(--t-ease-in-out);
1506
+
1507
+ --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
1508
+ --tds-toggle-switch-description-line-height:1.35;
1509
+ --tds-toggle-switch-description-color:var(--t-text-color-secondary);
1510
+ position:relative;
1511
+
1512
+ display:var(--tds-toggle-switch-display);
1513
+ grid-template-columns:auto;
1514
+ grid-auto-columns:1fr;
1515
+ gap:var(--t-spacing-fourth) 0;
1516
+ -webkit-user-select:none;
1517
+ -moz-user-select:none;
1518
+ user-select:none;
1565
1519
  }
1566
1520
 
1567
- .tds-number-stepper-input::-webkit-inner-spin-button,.tds-number-stepper-input::-webkit-outer-spin-button{
1521
+ .tds-toggle-switch input[type="checkbox"]{
1522
+ position:absolute;
1523
+ width:var(--tds-toggle-switch-track-width);
1524
+ height:var(--tds-toggle-switch-track-height);
1568
1525
  margin:0;
1569
1526
  -webkit-appearance:none;
1527
+ -moz-appearance:none;
1570
1528
  appearance:none;
1529
+ cursor:var(--tds-toggle-switch-cursor);
1530
+ outline:var(--tds-toggle-switch-track-outline);
1531
+ outline-offset:var(--t-focus-ring-offset);
1532
+ background-color:transparent;
1533
+ border:0;
1534
+ border-radius:var(--t-border-radius-round);
1571
1535
  }
1572
1536
 
1573
- .tds-number-stepper-button{
1574
- flex-shrink:0;
1575
- align-self:center;
1576
- inline-size:calc(var(--tds-field-min-height) - (var(--tds-number-stepper-button-offset) * 2));
1577
- block-size:calc(var(--tds-field-min-height) - (var(--tds-number-stepper-button-offset) * 2));
1578
- padding:0;
1579
- }
1580
-
1581
- .tds-number-stepper-button + .tds-number-stepper-button{
1582
- margin-inline-start:var(--tds-number-stepper-button-gap);
1583
- }
1537
+ :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
1538
+ --tds-toggle-switch-track-outline:var(--t-focus-ring-outline);
1539
+ }
1584
1540
 
1585
- .tds-number-stepper-button:last-of-type{
1586
- margin-inline-end:var(--tds-number-stepper-button-offset);
1541
+ .tds-toggle-switch label{
1542
+ display:inline-flex;
1543
+ grid-area:1 / 2;
1544
+ padding-inline-start:var(--t-spacing-1);
1545
+ margin-top:-.09375em;
1546
+ font-size:var(--tds-toggle-switch-font-size);
1547
+ font-weight:var(--t-font-weight-normal);
1548
+ line-height:var(--tds-toggle-switch-line-height);
1549
+ color:var(--tds-toggle-switch-label-color);
1550
+ cursor:var(--tds-toggle-switch-cursor);
1587
1551
  }
1588
1552
 
1589
- .tds-radio-group{
1590
- --tds-radio-group-font-size:var(--t-font-size-md);
1591
- --tds-radio-group-line-height:1.4;
1592
- --tds-radio-group-gap:var(--t-spacing-1);
1593
-
1594
- --tds-radio-group-description-font-size:var(--t-font-size-sm);
1595
- --tds-radio-group-description-line-height:1.35;
1596
- --tds-radio-group-description-color:var(--t-text-color-secondary);
1597
- --tds-radio-group-description-invalid-icon-display:none;
1598
- display:flex;
1599
- flex-direction:column;
1600
- gap:0;
1601
- padding:0;
1602
- margin:0;
1603
-
1604
- font-size:var(--tds-radio-group-font-size);
1605
- line-height:var(--tds-radio-group-line-height);
1606
- border:0;
1607
- }
1608
-
1609
- .tds-radio-group legend{
1610
- float:left;
1611
- padding:0;
1612
- margin:0;
1553
+ .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
1554
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
1613
1555
  }
1614
1556
 
1615
- .tds-radio-group[aria-invalid="true"]{
1616
- --tds-radio-group-description-color:var(--t-text-color-status-error);
1617
- --tds-radio-group-description-invalid-icon-display:inline-block;
1557
+ .tds-toggle-switch:has(input:checked){
1558
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
1559
+ --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
1618
1560
  }
1619
1561
 
1620
- .tds-radio-group[aria-invalid="true"] .tds-radio{
1621
- --tds-radio-input-border-color:var(--t-form-border-color-error);
1562
+ .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
1563
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
1622
1564
  }
1623
1565
 
1624
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
1625
- --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
1626
- --tds-radio-input-background-color:var(--t-form-background-color-error);
1627
- }
1566
+ .tds-toggle-switch:has(input:disabled){
1567
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
1568
+ --tds-toggle-switch-label-color:var(--t-form-color-disabled);
1569
+ --tds-toggle-switch-description-color:var(--t-form-color-disabled);
1570
+ --tds-toggle-switch-cursor:not-allowed;
1571
+ }
1628
1572
 
1629
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
1630
- --tds-radio-input-background-color:var(--t-form-background-color);
1631
- }
1573
+ .tds-toggle-switch-track{
1574
+ position:relative;
1575
+ flex-shrink:0;
1576
+ width:var(--tds-toggle-switch-track-width);
1577
+ height:var(--tds-toggle-switch-track-height);
1578
+ background-color:var(--tds-toggle-switch-track-background-color);
1579
+ border-radius:var(--t-border-radius-round);
1580
+ transition:var(--tds-toggle-switch-track-transition);
1581
+ }
1632
1582
 
1633
- .tds-radio-group:has(input:required) legend::after{
1634
- margin-left:.25ch;
1635
- color:var(--t-text-color-status-error);
1636
- content:"*";
1637
- }
1583
+ .tds-toggle-switch-track::before{
1584
+ position:absolute;
1585
+ top:var(--t-spacing-fourth);
1586
+ left:var(--t-spacing-fourth);
1587
+ width:var(--tds-toggle-switch-thumb-size);
1588
+ height:var(--tds-toggle-switch-thumb-size);
1589
+ content:"";
1590
+ background-color:#fff;
1591
+ border-radius:var(--t-border-radius-round);
1592
+ transform:var(--tds-toggle-switch-thumb-transform);
1593
+ transition:var(--tds-toggle-switch-thumb-transition);
1594
+ }
1638
1595
 
1639
- .tds-radio-group-fields{
1640
- display:flex;
1641
- flex-direction:column;
1642
- gap:var(--tds-radio-group-gap);
1643
- align-items:flex-start;
1644
- margin-top:var(--t-spacing-1);
1596
+ @media (prefers-reduced-motion: reduce){
1597
+
1598
+ .tds-toggle-switch-track{
1599
+ --tds-toggle-switch-track-transition:none;
1600
+ --tds-toggle-switch-thumb-transition:none;
1645
1601
  }
1602
+ }
1646
1603
 
1647
- .tds-radio-group-description{
1604
+ .tds-toggle-switch-description{
1648
1605
  display:flex;
1649
- gap:var(--t-spacing-half);
1606
+ grid-area:2 / 2;
1650
1607
  align-items:flex-start;
1651
- margin:var(--t-spacing-fourth) 0 0;
1652
- font-size:var(--tds-radio-group-description-font-size);
1653
- line-height:var(--tds-radio-group-description-line-height);
1654
- color:var(--tds-radio-group-description-color);
1608
+ padding-inline-start:var(--t-spacing-1);
1609
+ margin:0;
1610
+ font-size:var(--tds-toggle-switch-description-font-size);
1611
+ line-height:var(--tds-toggle-switch-description-line-height);
1612
+ color:var(--tds-toggle-switch-description-color);
1655
1613
  cursor:text;
1656
1614
  }
1657
1615
 
1658
- .tds-radio-group-description .tds-radio-group-description-invalid-icon{
1659
- display:var(--tds-radio-group-description-invalid-icon-display);
1660
- flex-shrink:0;
1661
- margin-top:calc(.5lh - .5em);
1662
- line-height:var(--tds-radio-group-description-line-height);
1663
- }
1616
+ .tds-toggle-switch--sm{
1617
+ --tds-toggle-switch-font-size:var(--t-font-size-sm);
1618
+ --tds-toggle-switch-line-height:1.35;
1619
+ --tds-toggle-switch-track-height:var(--t-element-size-lg);
1620
+ --tds-toggle-switch-thumb-size:var(--t-element-size-sm);
1621
+ --tds-toggle-switch-description-font-size:var(--t-font-size-xs);
1622
+ --tds-toggle-switch-description-line-height:1.3;
1623
+ }
1664
1624
 
1665
- .tds-radio-group--sm{
1666
- --tds-radio-group-line-height:1.35;
1667
- --tds-radio-group-font-size:var(--t-font-size-sm);
1668
- --tds-radio-group-description-font-size:var(--t-font-size-xs);
1669
- --tds-radio-group-description-line-height:1.3;
1625
+ .tds-toggle-switch--hide-label{
1626
+ --tds-toggle-switch-display:inline-flex;
1670
1627
  }
1671
1628
 
1672
1629
  .tds-input{
@@ -1953,324 +1910,396 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1953
1910
  color:var(--tds-field-color);
1954
1911
  }
1955
1912
 
1956
- .tds-input:has(textarea){
1957
- --tds-input-padding-block:6px;
1958
- --tds-input-resizer-size:var(--t-element-size-sm);
1959
- --tds-input-resizer-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cg fill='none' stroke='%236f7784' stroke-linecap='round' stroke-width='1.25'%3E%3Cpath d='M5.5 13l7.5-7.5'/%3E%3Cpath d='M9 13l4-4'/%3E%3C/g%3E%3C/svg%3E");
1913
+ .tds-loading-spinner{
1914
+ --tds-loading-spinner-size:1.25em;
1915
+
1916
+ position:absolute;
1917
+ right:0;
1918
+ left:0;
1919
+ visibility:var(--tds-loading-spinner-visibility, hidden);
1920
+ width:var(--tds-loading-spinner-size);
1921
+ height:var(--tds-loading-spinner-size);
1922
+ margin:auto;
1923
+ border:var(--tds-loading-spinner-track-width, 4px) solid var(--tds-loading-spinner-track-color, var(--t-fill-color-transparency-dark-020));
1924
+ border-top-color:var(--tds-loading-spinner-color, currentcolor);
1925
+ border-radius:50%;
1926
+ animation:spinner-rotate 500ms infinite linear;
1927
+ animation-play-state:var(--tds-loading-spinner-animation-play-state, paused);
1928
+ }
1929
+
1930
+ @keyframes spinner-rotate{
1931
+ to{
1932
+ transform:rotate(360deg);
1933
+ }
1934
+ }
1935
+
1936
+ @media (prefers-reduced-motion: reduce){
1937
+ [class*="--loading"] .tds-loading-spinner{
1938
+ --tds-loading-spinner-animation-play-state:paused;
1939
+ }
1940
+ }
1941
+
1942
+
1943
+ @media (prefers-reduced-motion: no-preference){
1944
+
1945
+ :root{
1946
+ interpolate-size:allow-keywords;
1947
+ }
1948
+ }
1949
+
1950
+ @layer tds-component{
1951
+ tds-sidenav,
1952
+ .tds-sidenav{
1953
+ --tds-sidenav-indent:12px;
1954
+ --tds-sidenav-item-depth:0;
1955
+
1956
+ --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
1957
+
1958
+ --tds-sidenav-collapse-transition-enter:opacity var(--t-duration-300) var(--t-ease-out), transform var(--t-duration-300) var(--t-ease-out), display var(--t-duration-300) allow-discrete, overlay var(--t-duration-300) allow-discrete;
1959
+ --tds-sidenav-collapse-transition-exit:opacity var(--t-duration-200) var(--t-ease-in), display var(--t-duration-200) allow-discrete, overlay var(--t-duration-200) allow-discrete;
1960
+ --tds-sidenav-collapse-closed-opacity:0;
1961
+ --tds-sidenav-collapse-open-opacity:1;
1962
+ --tds-sidenav-collapse-closed-transform:translateY(-8px);
1963
+ --tds-sidenav-collapse-open-transform:translateY(0);
1964
+
1965
+ --tds-sidenav-item-icon-size:var(--t-element-size-md);
1966
+ --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
1967
+ --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
1968
+ --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
1969
+
1970
+ --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
1971
+ --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
1972
+ --tds-sidenav-item-nested-background-selected:transparent;
1973
+
1974
+ --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
1975
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1976
+ --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
1977
+
1978
+ --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
1979
+ --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
1980
+ }
1981
+
1982
+ @media (prefers-reduced-motion: reduce){
1983
+ tds-sidenav,
1984
+ .tds-sidenav{
1985
+ --tds-sidenav-collapse-transition-enter:none;
1986
+ --tds-sidenav-collapse-transition-exit:none;
1987
+ --tds-sidenav-collapse-closed-transform:none;
1988
+ --tds-sidenav-collapse-open-transform:none;
1989
+ }
1990
+ }
1991
+
1992
+ .tds-sidenav--theme-gray{
1993
+ --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
1994
+ --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
1995
+ --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
1996
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1997
+ --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
1998
+ }
1999
+ }
2000
+
2001
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section){
2002
+ display:flex;
2003
+ }
2004
+
2005
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
2006
+ flex-direction:column;
2007
+ gap:var(--t-spacing-half);
2008
+ width:100%;
2009
+ }
2010
+
2011
+ .tds-sidenav-section-list{
2012
+ width:100%;
2013
+ padding:0;
2014
+ margin:0;
2015
+ list-style:none;
2016
+ }
2017
+
2018
+ .tds-sidenav-section-header{
2019
+ display:flex;
2020
+ align-items:baseline;
2021
+ justify-content:space-between;
2022
+ padding-top:var(--t-spacing-2);
1960
2023
  }
1961
2024
 
1962
- @supports (x: attr(x type(*))){
1963
-
1964
- .tds-input textarea{
1965
- --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
1966
- }
2025
+ .tds-sidenav-section-header h2{
2026
+ margin:0;
2027
+ font-size:var(--t-font-size-sm);
2028
+ font-weight:var(--t-font-weight-semibold);
2029
+ line-height:1.35;
2030
+ color:var(--t-text-color-secondary);
2031
+ text-transform:uppercase;
1967
2032
  }
1968
2033
 
1969
- .tds-input.tds-textarea--resize-vertical textarea{
1970
- resize:vertical;
1971
- }
1972
-
1973
- .tds-input.tds-textarea--resize-none textarea{
1974
- resize:none;
1975
- }
2034
+ .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
2035
+ padding-top:0;
2036
+ }
1976
2037
 
1977
- .tds-input.tds-textarea--resize-auto textarea{
1978
- resize:vertical;
1979
- }
2038
+ .tds-sidenav-section-header [slot="label-actions"]{
2039
+ display:flex;
2040
+ gap:var(--t-spacing-half);
2041
+ align-items:center;
2042
+ }
1980
2043
 
1981
- @supports (field-sizing: content){
1982
- .tds-input.tds-textarea--resize-auto textarea{
1983
- field-sizing:content;
1984
- resize:none;
1985
- }
1986
- }
2044
+ .tds-sidenav-section [slot="section-actions"]{
2045
+ display:flex;
2046
+ gap:12px;
2047
+ align-items:center;
2048
+ min-height:42px;
2049
+ padding:var(--t-spacing-1) 0;
2050
+ }
1987
2051
 
1988
- .tds-input textarea{
1989
- --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
1990
- --tds-input-scrollbar-thumb-color-hidden:transparent;
1991
- --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
1992
- --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
1993
- --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
1994
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
1995
- --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
1996
- --tds-input-scrollbar-thumb-border-radius:999px;
1997
- --tds-input-scrollbar-thumb-border-width:3px;
1998
- --tds-input-scrollbar-track-margin-block:.125rem;
1999
- scrollbar-color:initial;
2000
- transition-timing-function:var(--t-ease-in-out);
2001
- transition-duration:var(--t-duration-200);
2002
- transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
2052
+ .tds-sidenav-section-list,
2053
+ .tds-sidenav-item{
2054
+ width:100%;
2055
+ padding:0;
2056
+ margin:0;
2003
2057
  }
2004
2058
 
2005
- @media (pointer: fine){
2006
- :is(.tds-input textarea)::-webkit-scrollbar{
2007
- width:12px;
2008
- height:12px;
2009
- cursor:default;
2010
- }
2059
+ .tds-sidenav-item :is(a,button){
2060
+ position:relative;
2061
+ display:flex;
2062
+ gap:12px;
2063
+ align-items:center;
2064
+ width:100%;
2065
+ padding:12px;
2066
+ overflow:hidden;
2067
+ font-size:var(--t-font-size-sm);
2068
+ line-height:18px;
2069
+ color:var(--t-text-color-headline);
2070
+ white-space:nowrap;
2071
+ text-decoration:none;
2072
+ -webkit-appearance:none;
2073
+ -moz-appearance:none;
2074
+ appearance:none;
2075
+ cursor:pointer;
2076
+ background-color:var(--tds-sidenav-item-background, transparent);
2077
+ border:0;
2078
+ border-radius:var(--t-border-radius);
2079
+ transition:var(--tds-sidenav-item-transition);
2080
+ }
2011
2081
 
2012
- :is(.tds-input textarea)::-webkit-scrollbar-thumb{
2013
- cursor:default;
2014
- background:var(--tds-input-scrollbar-thumb-color);
2015
- background-clip:content-box;
2016
- border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
2017
- border-radius:var(--tds-input-scrollbar-thumb-border-radius);
2082
+ :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
2083
+ display:block;
2084
+ flex:1;
2085
+ overflow:hidden;
2086
+ text-overflow:ellipsis;
2087
+ text-align:left;
2088
+ white-space:nowrap;
2018
2089
  }
2019
2090
 
2020
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2021
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
2091
+ :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
2092
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
2093
+ color:var(--t-text-color-headline);
2094
+ text-decoration:none;
2022
2095
  }
2023
2096
 
2024
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
2025
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
2097
+ :is(.tds-sidenav-item :is(a,button)):active{
2098
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
2026
2099
  }
2027
2100
 
2028
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
2029
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
2101
+ :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
2102
+ overflow:hidden;
2103
+ color:var(--tds-sidenav-item-icon-color);
2030
2104
  }
2031
2105
 
2032
- :is(.tds-input textarea)::-webkit-scrollbar-corner{
2033
- background:var(--tds-input-scrollbar-surface-color);
2034
- }
2106
+ :is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])),:is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])) svg{
2107
+ display:block;
2108
+ width:var(--tds-sidenav-item-icon-size);
2109
+ height:var(--tds-sidenav-item-icon-size);
2110
+ }
2035
2111
 
2036
- :is(.tds-input textarea)::-webkit-resizer{
2037
- background:var(--tds-input-resizer-icon) no-repeat;
2038
- background-position:right bottom;
2039
- background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
2112
+ :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
2113
+ --tds-sidenav-indent:19px;
2040
2114
  }
2041
2115
 
2042
- :is(.tds-input textarea)::-webkit-scrollbar-track{
2043
- margin-block:var(--tds-input-scrollbar-track-margin-block);
2044
- cursor:default;
2116
+ [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
2117
+ visibility:visible;
2118
+ block-size:auto;
2119
+ opacity:1;
2045
2120
  }
2046
2121
 
2047
- @supports (-moz-appearance: none){
2048
- :is(.tds-input textarea){
2049
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
2050
- scrollbar-width:thin;
2051
- }
2122
+ .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
2123
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
2124
+ --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
2052
2125
 
2053
- @media (hover){
2054
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2055
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
2056
- }
2057
- }
2058
- }
2126
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
2127
+ font-weight:var(--t-font-weight-semibold);
2059
2128
  }
2060
2129
 
2061
- .tds-checkbox-group{
2062
- --tds-checkbox-group-font-size:var(--t-font-size-md);
2063
- --tds-checkbox-group-line-height:1.4;
2064
- --tds-checkbox-group-gap:var(--t-spacing-1);
2065
-
2066
- --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
2067
- --tds-checkbox-group-description-line-height:1.35;
2068
- --tds-checkbox-group-description-color:var(--t-text-color-secondary);
2069
- --tds-checkbox-group-description-invalid-icon-display:none;
2070
- display:flex;
2071
- flex-direction:column;
2072
- gap:0;
2073
- padding:0;
2074
- margin:0;
2075
-
2076
- font-size:var(--tds-checkbox-group-font-size);
2077
- line-height:var(--tds-checkbox-group-line-height);
2078
- border:0;
2079
- }
2080
-
2081
- .tds-checkbox-group legend{
2082
- float:left;
2083
- padding:0;
2084
- margin:0;
2130
+ .tds-sidenav-item:has(.tds-sidenav-section){
2131
+ display:flex;
2132
+ flex-direction:column;
2133
+ gap:var(--t-spacing-half);
2085
2134
  }
2086
2135
 
2087
- .tds-checkbox-group[aria-invalid="true"]{
2088
- --tds-checkbox-group-description-color:var(--t-text-color-status-error);
2089
- --tds-checkbox-group-description-invalid-icon-display:inline-block;
2136
+ .tds-sidenav-item .tds-sidenav-section-list{
2137
+ --tds-sidenav-item-depth:1;
2138
+ gap:0;
2090
2139
  }
2091
2140
 
2092
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
2093
- margin-left:.25ch;
2094
- color:var(--t-text-color-status-error);
2095
- content:"*";
2141
+ .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
2142
+ visibility:hidden;
2143
+ block-size:0;
2144
+ overflow-y:clip;
2145
+ opacity:0;
2146
+ transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
2096
2147
  }
2097
2148
 
2098
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
2099
- content:none;
2149
+ :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
2150
+ --tds-sidenav-item-depth:2;
2100
2151
  }
2101
2152
 
2102
- .tds-checkbox-group-fields{
2103
- display:flex;
2104
- flex-direction:column;
2105
- gap:var(--tds-checkbox-group-gap);
2106
- align-items:flex-start;
2107
- margin-top:var(--t-spacing-1);
2108
- }
2109
-
2110
- .tds-checkbox-group-description{
2111
- display:flex;
2112
- gap:var(--t-spacing-half);
2113
- align-items:flex-start;
2114
- margin:var(--t-spacing-fourth) 0 0;
2115
- font-size:var(--tds-checkbox-group-description-font-size);
2116
- line-height:var(--tds-checkbox-group-description-line-height);
2117
- color:var(--tds-checkbox-group-description-color);
2118
- cursor:text;
2119
- }
2120
-
2121
- .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
2122
- display:var(--tds-checkbox-group-description-invalid-icon-display);
2123
- flex-shrink:0;
2124
- margin-top:calc(.5lh - .5em);
2125
- line-height:var(--tds-checkbox-group-description-line-height);
2126
- }
2127
-
2128
- .tds-checkbox-group--sm{
2129
- --tds-checkbox-group-line-height:1.35;
2130
- --tds-checkbox-group-font-size:var(--t-font-size-sm);
2131
- --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
2132
- --tds-checkbox-group-description-line-height:1.3;
2133
- }
2153
+ :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
2154
+ min-height:var(--t-element-size-2xl);
2155
+ padding-block:9px;
2156
+ padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
2157
+ line-height:1;
2158
+ background-color:transparent;
2159
+ }
2134
2160
 
2135
- .tds-toggle-switch{
2136
- --tds-toggle-switch-font-size:var(--t-font-size-md);
2137
- --tds-toggle-switch-cursor:pointer;
2138
- --tds-toggle-switch-display:inline-grid;
2139
- --tds-toggle-switch-line-height:1.4;
2161
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
2162
+ position:absolute;
2163
+ top:0;
2164
+ bottom:0;
2165
+ left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
2166
+ width:2px;
2167
+ content:"";
2168
+ background-color:var(--tds-sidenav-item-nested-border-color);
2169
+ transition:var(--tds-sidenav-item-transition);
2170
+ }
2140
2171
 
2141
- --tds-toggle-switch-label-color:var(--t-form-color);
2172
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
2173
+ position:absolute;
2174
+ inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
2175
+ z-index:-1;
2176
+ height:100%;
2177
+ content:"";
2178
+ background-color:var(--tds-sidenav-item-nested-background);
2179
+ border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
2180
+ transition:var(--tds-sidenav-item-transition);
2181
+ }
2142
2182
 
2143
- --tds-toggle-switch-track-width:var(--t-container-size-md);
2144
- --tds-toggle-switch-track-outline:none;
2145
- --tds-toggle-switch-track-height:var(--t-container-size-xs);
2146
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
2147
- --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
2183
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):not(:has(.prefix,.suffix)),:is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)) :is(:not(.prefix,.suffix)){
2184
+ display:block;
2185
+ text-align:left;
2186
+ white-space:normal;
2187
+ }
2148
2188
 
2149
- --tds-toggle-switch-thumb-size:var(--t-element-size-md);
2150
- --tds-toggle-switch-thumb-transform:translateX(0);
2151
- --tds-toggle-switch-thumb-transition:transform var(--t-duration-200) var(--t-ease-in-out);
2189
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):hover,:is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):focus-visible{
2190
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
2191
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
2192
+ }
2152
2193
 
2153
- --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
2154
- --tds-toggle-switch-description-line-height:1.35;
2155
- --tds-toggle-switch-description-color:var(--t-text-color-secondary);
2156
- position:relative;
2194
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
2195
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
2196
+ }
2157
2197
 
2158
- display:var(--tds-toggle-switch-display);
2159
- grid-template-columns:auto;
2160
- grid-auto-columns:1fr;
2161
- gap:var(--t-spacing-fourth) 0;
2162
- -webkit-user-select:none;
2163
- -moz-user-select:none;
2164
- user-select:none;
2198
+ .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
2199
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
2200
+ font-weight:var(--t-font-weight-medium);
2201
+ }
2202
+
2203
+ .tds-sidenav-responsive-header{
2204
+ display:flex;
2205
+ gap:var(--t-spacing-2);
2206
+ align-items:center;
2207
+ width:100%;
2165
2208
  }
2166
2209
 
2167
- .tds-toggle-switch input[type="checkbox"]{
2168
- position:absolute;
2169
- width:var(--tds-toggle-switch-track-width);
2170
- height:var(--tds-toggle-switch-track-height);
2171
- margin:0;
2172
- -webkit-appearance:none;
2173
- -moz-appearance:none;
2174
- appearance:none;
2175
- cursor:var(--tds-toggle-switch-cursor);
2176
- outline:var(--tds-toggle-switch-track-outline);
2177
- outline-offset:var(--t-focus-ring-offset);
2178
- background-color:transparent;
2179
- border:0;
2180
- border-radius:var(--t-border-radius-round);
2210
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
2211
+ order:0;
2181
2212
  }
2182
2213
 
2183
- :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
2184
- --tds-toggle-switch-track-outline:var(--t-focus-ring-outline);
2185
- }
2214
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
2215
+ flex:1;
2216
+ order:1;
2217
+ margin:0;
2218
+ font-size:var(--t-font-size-lg);
2219
+ font-weight:var(--t-font-weight-medium);
2220
+ color:var(--t-text-color-headline);
2221
+ }
2186
2222
 
2187
- .tds-toggle-switch label{
2188
- display:inline-flex;
2189
- grid-area:1 / 2;
2190
- padding-inline-start:var(--t-spacing-1);
2191
- margin-top:-.09375em;
2192
- font-size:var(--tds-toggle-switch-font-size);
2193
- font-weight:var(--t-font-weight-normal);
2194
- line-height:var(--tds-toggle-switch-line-height);
2195
- color:var(--tds-toggle-switch-label-color);
2196
- cursor:var(--tds-toggle-switch-cursor);
2223
+ @media (max-width: 719px){
2224
+ .tds-sidenav-collapse{
2225
+ z-index:10001;
2226
+ display:none;
2227
+ max-width:min(448px, calc(100vw - 48px));
2228
+ padding:0;
2229
+ margin:12px 0;
2230
+ position-area:bottom span-right;
2231
+ overflow:hidden;
2232
+ outline:0;
2233
+ background:var(--t-surface-color-card);
2234
+ border:0;
2235
+ border-radius:6px;
2236
+ box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
2237
+ opacity:var(--tds-sidenav-collapse-open-opacity);
2238
+ transform:var(--tds-sidenav-collapse-open-transform);
2239
+ transition:var(--tds-sidenav-collapse-transition-enter);
2240
+ will-change:transform;
2197
2241
  }
2198
2242
 
2199
- .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
2200
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
2243
+ .tds-sidenav-scroll-container{
2244
+ --webkit-overflow-scrolling:touch;
2245
+ display:block;
2246
+ width:100%;
2247
+ height:-moz-fit-content;
2248
+ height:fit-content;
2249
+ padding:var(--t-spacing-2);
2250
+ overflow-y:auto;
2201
2251
  }
2202
2252
 
2203
- .tds-toggle-switch:has(input:checked){
2204
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
2205
- --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
2253
+ .tds-sidenav-item :is(a, button) :is(.prefix){
2254
+ display:none;
2206
2255
  }
2256
+ @supports selector(:popover-open){
2257
+ .tds-sidenav-collapse:popover-open{
2258
+ display:flex;
2259
+ }
2207
2260
 
2208
- .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
2209
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
2261
+ .tds-sidenav-collapse:not(:popover-open){
2262
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
2263
+ transition:var(--tds-sidenav-collapse-transition-exit);
2210
2264
  }
2211
2265
 
2212
- .tds-toggle-switch:has(input:disabled){
2213
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
2214
- --tds-toggle-switch-label-color:var(--t-form-color-disabled);
2215
- --tds-toggle-switch-description-color:var(--t-form-color-disabled);
2216
- --tds-toggle-switch-cursor:not-allowed;
2266
+ @starting-style{
2267
+ .tds-sidenav-collapse:popover-open{
2268
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
2269
+ transform:var(--tds-sidenav-collapse-closed-transform);
2270
+ }
2271
+ }
2217
2272
  }
2273
+ @supports not selector(:popover-open){
2274
+ .tds-sidenav-collapse.\:popover-open{
2275
+ display:flex;
2276
+ }
2218
2277
 
2219
- .tds-toggle-switch-track{
2220
- position:relative;
2221
- flex-shrink:0;
2222
- width:var(--tds-toggle-switch-track-width);
2223
- height:var(--tds-toggle-switch-track-height);
2224
- background-color:var(--tds-toggle-switch-track-background-color);
2225
- border-radius:var(--t-border-radius-round);
2226
- transition:var(--tds-toggle-switch-track-transition);
2278
+ .tds-sidenav-collapse:not(.\:popover-open){
2279
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
2280
+ transition:var(--tds-sidenav-collapse-transition-exit);
2281
+ }
2282
+ }
2227
2283
  }
2228
2284
 
2229
- .tds-toggle-switch-track::before{
2230
- position:absolute;
2231
- top:var(--t-spacing-fourth);
2232
- left:var(--t-spacing-fourth);
2233
- width:var(--tds-toggle-switch-thumb-size);
2234
- height:var(--tds-toggle-switch-thumb-size);
2235
- content:"";
2236
- background-color:#fff;
2237
- border-radius:var(--t-border-radius-round);
2238
- transform:var(--tds-toggle-switch-thumb-transform);
2239
- transition:var(--tds-toggle-switch-thumb-transition);
2285
+ @media (min-width: 720px){
2286
+ .tds-sidenav-responsive-header{
2287
+ display:none;
2240
2288
  }
2241
-
2242
- @media (prefers-reduced-motion: reduce){
2243
-
2244
- .tds-toggle-switch-track{
2245
- --tds-toggle-switch-track-transition:none;
2246
- --tds-toggle-switch-thumb-transition:none;
2247
2289
  }
2248
- }
2249
2290
 
2250
- .tds-toggle-switch-description{
2251
- display:flex;
2252
- grid-area:2 / 2;
2253
- align-items:flex-start;
2254
- padding-inline-start:var(--t-spacing-1);
2255
- margin:0;
2256
- font-size:var(--tds-toggle-switch-description-font-size);
2257
- line-height:var(--tds-toggle-switch-description-line-height);
2258
- color:var(--tds-toggle-switch-description-color);
2259
- cursor:text;
2260
- }
2291
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
2292
+ display:none;
2293
+ }
2261
2294
 
2262
- .tds-toggle-switch--sm{
2263
- --tds-toggle-switch-font-size:var(--t-font-size-sm);
2264
- --tds-toggle-switch-line-height:1.35;
2265
- --tds-toggle-switch-track-height:var(--t-element-size-lg);
2266
- --tds-toggle-switch-thumb-size:var(--t-element-size-sm);
2267
- --tds-toggle-switch-description-font-size:var(--t-font-size-xs);
2268
- --tds-toggle-switch-description-line-height:1.3;
2269
- }
2295
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
2296
+ display:block;
2297
+ }
2270
2298
 
2271
- .tds-toggle-switch--hide-label{
2272
- --tds-toggle-switch-display:inline-flex;
2273
- }
2299
+ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
2300
+ display:flex;
2301
+ flex-direction:column;
2302
+ }
2274
2303
 
2275
2304
  .tds-select{
2276
2305
  --tds-select-border-color:var(--t-form-border-color);
@@ -2712,35 +2741,6 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
2712
2741
  }
2713
2742
  }
2714
2743
 
2715
- .tds-loading-spinner{
2716
- --tds-loading-spinner-size:1.25em;
2717
-
2718
- position:absolute;
2719
- right:0;
2720
- left:0;
2721
- visibility:var(--tds-loading-spinner-visibility, hidden);
2722
- width:var(--tds-loading-spinner-size);
2723
- height:var(--tds-loading-spinner-size);
2724
- margin:auto;
2725
- border:var(--tds-loading-spinner-track-width, 4px) solid var(--tds-loading-spinner-track-color, var(--t-fill-color-transparency-dark-020));
2726
- border-top-color:var(--tds-loading-spinner-color, currentcolor);
2727
- border-radius:50%;
2728
- animation:spinner-rotate 500ms infinite linear;
2729
- animation-play-state:var(--tds-loading-spinner-animation-play-state, paused);
2730
- }
2731
-
2732
- @keyframes spinner-rotate{
2733
- to{
2734
- transform:rotate(360deg);
2735
- }
2736
- }
2737
-
2738
- @media (prefers-reduced-motion: reduce){
2739
- [class*="--loading"] .tds-loading-spinner{
2740
- --tds-loading-spinner-animation-play-state:paused;
2741
- }
2742
- }
2743
-
2744
2744
  .symbol{
2745
2745
  display:inline-block;
2746
2746
  vertical-align:text-top;