@planningcenter/tapestry 4.5.0-rc.2 → 4.5.0-rc.3

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.
@@ -677,560 +677,759 @@
677
677
  [data-padding-inline-xl="7"]{ padding-inline:var(--t-spacing-7); }
678
678
  }
679
679
 
680
- .tds-button-group{
681
- display:inline-flex;
680
+ @layer t-critical{
681
+ tds-page-header:not(.hydrated){
682
+ display:none;
683
+ }
682
684
  }
683
- .tds-button-group > .tds-btn{
684
- --tds-button-group-item-z-index:1;
685
685
 
686
- position:relative;
687
- z-index:var(--tds-button-group-item-z-index);
688
- border-radius:0;
689
- }
690
- :is(.tds-button-group > .tds-btn):not(:first-child){
691
- margin-inline-start:calc(var(--tds-btn-border-width) * -1);
692
- }
693
- :is(.tds-button-group > .tds-btn):is(.tds-btn--interaction,.tds-btn--neutral,.tds-btn--staff-only):not(:first-child)::before,:is(.tds-button-group > .tds-btn):is(.tds-btn--interaction,.tds-btn--neutral,.tds-btn--staff-only):not(:last-child)::after{
694
- position:absolute;
695
- inset-block:calc(var(--tds-btn-border-width) * -1);
696
- width:var(--tds-btn-border-width);
697
- pointer-events:none;
698
- content:"";
699
- background-color:var(--t-border-color-white);
700
- }
701
- :is(.tds-button-group > .tds-btn):is(.tds-btn--interaction,.tds-btn--neutral,.tds-btn--staff-only):not(:first-child)::before{
702
- inset-inline-start:calc(var(--tds-btn-border-width) * -1);
703
- }
704
- :is(.tds-button-group > .tds-btn):is(.tds-btn--interaction,.tds-btn--neutral,.tds-btn--staff-only):not(:last-child)::after{
705
- inset-inline-end:calc(var(--tds-btn-border-width) * -1);
706
- }
707
- :is(.tds-button-group > .tds-btn):hover{
708
- --tds-button-group-item-z-index:2;
709
- }
710
- :is(.tds-button-group > .tds-btn):focus-visible{
711
- --tds-button-group-item-z-index:5;
712
- }
713
- .tds-button-group > .tds-btn:first-child{
714
- border-start-start-radius:var(--tds-btn-border-radius);
715
- border-end-start-radius:var(--tds-btn-border-radius);
716
- }
717
- .tds-button-group > .tds-btn:last-child{
718
- border-start-end-radius:var(--tds-btn-border-radius);
719
- border-end-end-radius:var(--tds-btn-border-radius);
720
- }
686
+ @layer t-component{
687
+ .tds-page-header{
688
+ --tds-page-header-background-color:var(--t-fill-color-product-current-gradient-tint, var(--t-surface-color-canvas));
689
+ --tds-page-header-background-color-inactive:var(--t-fill-color-neutral-090);
690
+ --tds-page-header-color:var(--t-text-color);
691
+ --tds-page-header-bottom-border-color:transparent;
692
+ --tds-page-header-headline-color:var(--t-text-color-headline);
693
+ --tds-page-header-headline-font-size:var(--t-font-size-2xl);
694
+ --tds-page-header-padding-x:var(--t-spacing-2);
695
+ --tds-page-header-padding-y:var(--t-spacing-2);
696
+ --tds-page-header-nav-padding-x:var(--tds-page-header-padding-x, var(--t-spacing-3));
697
+ --tds-page-header-nav-gap:var(--t-spacing-1);
698
+ --tds-page-header-nav-background:linear-gradient(180deg, var(--tds-page-header-nav-background-start, rgba(0, 0, 0, 0)) 0%, var(--tds-page-header-nav-background-end, rgba(0, 0, 0, .1)) 100%);
699
+ --tds-page-header-nav-item-padding-x:var(--t-spacing-1);
700
+ --tds-page-header-nav-item-padding-y:var(--t-spacing-1);
701
+ --tds-page-header-nav-item-color:var(--t-text-color-secondary);
702
+ --tds-page-header-nav-item-background-color:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 35%);
703
+ --tds-page-header-nav-item-border-width:1px;
721
704
 
722
- .tds-checkbox-group{
723
- --tds-checkbox-group-font-size:var(--t-font-size-md);
724
- --tds-checkbox-group-line-height:1.4;
725
- --tds-checkbox-group-gap:var(--t-spacing-1);
705
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-background-color);
706
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color);
726
707
 
727
- --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
728
- --tds-checkbox-group-description-line-height:1.35;
729
- --tds-checkbox-group-description-color:var(--t-text-color-secondary);
730
- --tds-checkbox-group-description-invalid-icon-display:none;
731
- display:flex;
732
- flex-direction:column;
733
- gap:0;
734
- padding:0;
735
- margin:0;
708
+ --tds-page-header-nav-item-color-hover:var(--t-text-color);
709
+ --tds-page-header-nav-item-background-color-hover:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 20%);
710
+ --tds-page-header-nav-item-border-color-hover:var(--tds-page-header-nav-item-background-color-hover);
736
711
 
737
- font-size:var(--tds-checkbox-group-font-size);
738
- line-height:var(--tds-checkbox-group-line-height);
739
- border:0;
740
- }
712
+ --tds-page-header-nav-item-background-color-active:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 10%);
713
+ --tds-page-header-nav-item-border-color-active:var(--tds-page-header-nav-item-background-color-active);
741
714
 
742
- .tds-checkbox-group legend{
743
- float:left;
744
- padding:0;
745
- margin:0;
715
+ --tds-page-header-nav-item-color-disabled:var(--t-text-color-disabled);
716
+ --tds-page-header-nav-item-background-color-disabled:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 50%);
717
+ --tds-page-header-nav-item-border-color-disabled:var(--tds-page-header-nav-item-background-color-disabled);
718
+
719
+ --tds-page-header-nav-item-color-selected:var(--t-text-color);
720
+ --tds-page-header-nav-item-background-color-selected:var(--t-surface-color-canvas);
721
+ --tds-page-header-nav-item-border-color-selected:var(--tds-page-header-nav-item-background-color-selected);
722
+ --tds-page-header-nav-item-border-bottom-color-selected:var(--tds-page-header-nav-item-background-color-selected);
723
+ --tds-page-header-nav-item-indicator-color:var(--t-icon-color-status-warning);
746
724
  }
747
725
 
748
- .tds-checkbox-group[aria-invalid="true"]{
749
- --tds-checkbox-group-description-color:var(--t-text-color-status-error);
750
- --tds-checkbox-group-description-invalid-icon-display:inline-block;
726
+ .tds-page-header--profile{
727
+ --tds-page-header-padding-y:20px;
751
728
  }
752
729
 
753
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
754
- margin-left:.25ch;
755
- color:var(--t-text-color-status-error);
756
- content:"*";
730
+ @supports (color: light-dark(#fff, #000)){
731
+ .tds-page-header{
732
+ --tds-page-header-nav-background-start:light-dark(rgba(0, 0, 0, 0), rgba(255, 255, 255, 0));
733
+ --tds-page-header-nav-background-end:light-dark(rgba(0, 0, 0, .05), rgba(255, 255, 255, .1));
757
734
  }
735
+ }
758
736
 
759
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
760
- content:none;
737
+ @media (min-width: 600px){
738
+ .tds-page-header{
739
+ --tds-page-header-background-color:var(--t-surface-color-canvas);
740
+ --tds-page-header-color:var(--t-text-color-secondary);
741
+ --tds-page-header-bottom-border-color:var(--t-border-color);
742
+ --tds-page-header-padding-x:var(--t-spacing-3);
743
+ --tds-page-header-headline-font-size:var(--t-font-size-3xl);
744
+ --tds-page-header-nav-gap:var(--t-spacing-half);
745
+ --tds-page-header-nav-background:transparent;
746
+ --tds-page-header-nav-item-padding-x:var(--t-spacing-2);
747
+ --tds-page-header-nav-item-border-width:1px;
748
+ --tds-page-header-nav-item-color:var(--t-text-color);
749
+ --tds-page-header-nav-item-background-color:var(--t-fill-color-neutral-070);
750
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-bottom-border-color);
751
+ --tds-page-header-nav-item-background-color-hover:var(--t-fill-color-neutral-060);
752
+ --tds-page-header-nav-item-background-color-active:var(--t-fill-color-neutral-050);
753
+ --tds-page-header-nav-item-background-color-disabled:var(--t-fill-color-neutral-080);
754
+ --tds-page-header-nav-item-border-color-selected:var(--t-border-color);
761
755
  }
762
-
763
- .tds-checkbox-group-fields{
764
- display:flex;
765
- flex-direction:column;
766
- gap:var(--tds-checkbox-group-gap);
767
- align-items:flex-start;
768
- margin-top:var(--t-spacing-1);
756
+ }
769
757
  }
770
758
 
771
- .tds-checkbox-group-description{
759
+ .tds-page-header{
772
760
  display:flex;
773
- gap:var(--t-spacing-half);
774
- align-items:flex-start;
775
- margin:var(--t-spacing-fourth) 0 0;
776
- font-size:var(--tds-checkbox-group-description-font-size);
777
- line-height:var(--tds-checkbox-group-description-line-height);
778
- color:var(--tds-checkbox-group-description-color);
779
- cursor:text;
761
+ flex-direction:column;
762
+ padding-top:var(--tds-page-header-padding-y);
763
+ color:var(--tds-page-header-color);
764
+ background:var(--tds-page-header-background-color);
765
+ border-bottom:1px solid var(--tds-page-header-bottom-border-color);
780
766
  }
781
767
 
782
- .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
783
- display:var(--tds-checkbox-group-description-invalid-icon-display);
784
- flex-shrink:0;
785
- margin-top:calc(.5lh - .5em);
786
- line-height:var(--tds-checkbox-group-description-line-height);
768
+ .tds-page-header:not(.has-nav){
769
+ padding-bottom:var(--tds-page-header-padding-y);
787
770
  }
788
771
 
789
- .tds-checkbox-group--sm{
790
- --tds-checkbox-group-line-height:1.35;
791
- --tds-checkbox-group-font-size:var(--t-font-size-sm);
792
- --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
793
- --tds-checkbox-group-description-line-height:1.3;
794
- }
795
-
796
- .tds-modal-overlay{
797
- --tds-modal-min-margin-block:var(--t-spacing-3);
798
-
799
- position:fixed;
800
- inset:0;
801
- z-index:1000;
802
- display:grid;
803
- grid-template-rows:minmax(var(--tds-modal-min-margin-block), 1fr) auto minmax(var(--tds-modal-min-margin-block), 1fr);
804
- justify-items:center;
805
- overflow-y:auto;
806
- background:hsl(0 0% 0% / 40%);
807
- }
808
-
809
- .tds-modal-overlay[data-entering]{
810
- animation:tds-modal-overlay-fade var(--t-duration-300) var(--t-ease-out);
772
+ .tds-page-header.inactive{
773
+ background:var(--tds-page-header-background-color-inactive);
811
774
  }
812
775
 
813
- .tds-modal-overlay[data-exiting]{
814
- animation:tds-modal-overlay-fade var(--t-duration-200) var(--t-ease-in) reverse;
776
+ .tds-page-header :is([slot="actions"],.tds-page-header__actions){
777
+ width:100%;
815
778
  }
816
779
 
817
- @keyframes tds-modal-overlay-fade{
818
- from{
819
- opacity:0;
780
+ .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
781
+ display:flex;
782
+ flex-flow:row wrap;
783
+ gap:var(--t-spacing-half) var(--t-spacing-1);
784
+ align-items:flex-start;
785
+ justify-content:flex-start;
786
+ min-width:0;
820
787
  }
821
- }
822
788
 
823
- .tds-modal-frame{
824
- --tds-modal-width:600px;
825
- --tds-modal-edge-margin-inline:var(--t-spacing-3);
826
- display:flex;
789
+ :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)):not(:has(ul)),:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) ul{
790
+ display:flex;
791
+ gap:var(--tds-page-header-nav-gap);
792
+ padding:var(--t-spacing-2) var(--tds-page-header-nav-padding-x) 0;
793
+ margin:0 0 -1px;
794
+ overflow:auto;
795
+ list-style:none;
796
+ background:var(--tds-page-header-nav-background);
797
+ }
827
798
 
828
- grid-row:2;
829
- justify-content:center;
830
- width:min(var(--tds-modal-width), calc(100% - var(--tds-modal-edge-margin-inline) * 2));
831
- }
799
+ :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button){
800
+ position:relative;
801
+ display:inline-flex;
802
+ padding:var(--tds-page-header-nav-item-padding-y) var(--tds-page-header-nav-item-padding-x);
803
+ font-size:var(--t-font-size-sm);
804
+ line-height:22px;
805
+ color:var(--tds-page-header-nav-item-color);
806
+ white-space:nowrap;
807
+ text-decoration:none;
808
+ -webkit-appearance:none;
809
+ -moz-appearance:none;
810
+ appearance:none;
811
+ cursor:pointer;
812
+ outline-offset:-2px;
813
+ background-color:var(--tds-page-header-nav-item-background-color);
814
+ background-clip:padding-box;
815
+ border:var(--tds-page-header-nav-item-border-width) solid var(--tds-page-header-nav-item-border-color);
816
+ border-bottom:1px solid var(--tds-page-header-nav-item-border-bottom-color);
817
+ border-radius:var(--t-border-radius-md) var(--t-border-radius-md) 0 0;
818
+ }
832
819
 
833
- .tds-modal-frame[data-entering]{
834
- animation:tds-modal-zoom var(--t-duration-300) var(--t-ease-out);
835
- }
820
+ .selected:is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)){
821
+ --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-selected);
822
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-selected);
823
+ --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-selected);
824
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-selected);
825
+ }
836
826
 
837
- .tds-modal-frame[data-exiting]{
838
- animation:tds-modal-zoom var(--t-duration-200) var(--t-ease-in) reverse;
839
- }
827
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):hover{
828
+ --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-hover);
829
+ --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-hover);
830
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-hover);
831
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-hover);
832
+ }
840
833
 
841
- .tds-modal-frame--sm{
842
- --tds-modal-width:400px;
843
- }
834
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):active{
835
+ background-color:var(--tds-page-header-nav-item-background-color-active);
836
+ border-color:var(--tds-page-header-nav-item-border-color-active);
837
+ border-bottom-color:var(--tds-page-header-nav-item-background-color-active);
838
+ }
844
839
 
845
- .tds-modal-frame--lg{
846
- --tds-modal-width:800px;
847
- }
840
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):disabled{
841
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-disabled);
842
+ color:var(--tds-page-header-nav-item-color-disabled);
843
+ cursor:not-allowed;
844
+ background-color:var(--tds-page-header-nav-item-background-color-disabled);
845
+ opacity:1;
846
+ }
848
847
 
849
- .tds-modal-frame--xl{
850
- --tds-modal-width:1000px;
851
- }
848
+ @media (min-width: 600px){
849
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected)::after{
850
+ position:absolute;
851
+ inset:auto -1px -1px;
852
+ height:1px;
853
+ pointer-events:none;
854
+ content:"";
855
+ background-color:var(--tds-page-header-bottom-border-color);
856
+ }
857
+ }
852
858
 
853
- @keyframes tds-modal-zoom{
854
- from{
855
- opacity:0;
856
- scale:.96;
857
- }
858
- }
859
+ :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator){
860
+ position:relative;
861
+ }
859
862
 
860
- @media (prefers-reduced-motion: reduce){
861
- .tds-modal-overlay[data-entering],
862
- .tds-modal-overlay[data-exiting],
863
- .tds-modal-frame[data-entering],
864
- .tds-modal-frame[data-exiting]{
865
- animation:none;
866
- }
867
- }
863
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator)) :is(a,button){
864
+ -webkit-mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
865
+ mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
866
+ }
868
867
 
869
- .tds-modal{
868
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::before,:is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::after{
869
+ position:absolute;
870
+ top:-5px;
871
+ right:-2px;
872
+ width:10px;
873
+ height:10px;
874
+ content:"";
875
+ background:var(--tds-page-header-nav-item-indicator-color);
876
+ border-radius:50%;
877
+ }
878
+
879
+ @media (prefers-reduced-motion: no-preference){
880
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::after{
881
+ animation:indicator-pulse 1.25s ease infinite;
882
+ }
883
+ }
884
+
885
+ .tds-page-header__title-bar{
870
886
  display:flex;
871
887
  flex-direction:column;
872
- width:100%;
873
- padding-block-start:var(--t-spacing-3);
874
- padding-inline:0;
875
- background:var(--t-surface-color-card);
876
-
877
- border:0;
878
- border-radius:var(--t-border-radius-lg);
879
- box-shadow:0 4px 18px 0 #0003;
888
+ gap:var(--t-spacing-2) var(--t-spacing-1);
889
+ align-items:flex-start;
890
+ justify-content:space-between;
891
+ padding:0 var(--tds-page-header-padding-x);
880
892
  }
881
893
 
882
- .tds-modal:focus{
883
- outline:none;
894
+ .tds-page-header--profile > .tds-page-header__title-bar{
895
+ align-items:center;
884
896
  }
885
897
 
886
- .tds-modal-header{
887
- display:grid;
888
- grid-template-columns:1fr auto;
889
- -moz-column-gap:var(--t-spacing-2);
890
- column-gap:var(--t-spacing-2);
891
- padding-block:0;
892
- padding-inline:var(--t-spacing-4);
893
- }
894
-
895
- .tds-modal-title{
896
- grid-row:1;
897
- grid-column:1;
898
- margin:0;
899
- font-size:var(--t-font-size-2xl);
900
- font-weight:var(--t-font-weight-medium);
901
- line-height:140%;
902
- color:var(--t-text-color-headline);
898
+ .tds-page-header__primary{
899
+ width:100%;
903
900
  }
904
901
 
905
- .tds-modal-subtitle{
906
- grid-row:2;
907
- grid-column:1;
908
- margin:0;
909
- font-size:var(--t-font-size-md);
910
- font-weight:var(--t-font-weight-medium);
911
- line-height:140%;
912
- color:var(--t-text-color-secondary);
913
- }
902
+ .tds-page-header__primary h1{
903
+ margin:0;
904
+ font-size:var(--tds-page-header-headline-font-size);
905
+ font-weight:var(--t-font-weight-normal);
906
+ line-height:32px;
907
+ color:var(--tds-page-header-headline-color);
908
+ overflow-wrap:break-word;
909
+ }
914
910
 
915
- .tds-modal-close{
916
- grid-row:1;
917
- grid-column:2;
918
- align-self:center;
919
- color:var(--t-icon-color-dim);
920
- }
911
+ @media (min-width: 960px){
912
+ .tds-page-header__primary{
913
+ flex:1 1 max-content;
914
+ width:auto;
915
+ min-width:0;
916
+ max-width:100%;
917
+ }
921
918
 
922
- .tds-modal-body{
923
- padding-block:var(--t-spacing-3);
924
- padding-inline:var(--t-spacing-4);
925
- }
919
+ .tds-page-header__title-bar,
920
+ .tds-page-header--profile .tds-page-header__title-bar{
921
+ flex-flow:row nowrap;
922
+ row-gap:12px;
923
+ align-items:flex-start;
924
+ }
925
+ .tds-page-header :is([slot="actions"],.tds-page-header__actions){
926
+ width:auto;
927
+ }
926
928
 
927
- .tds-modal-body--full-width{
928
- padding-inline:0;
929
+ .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
930
+ justify-content:flex-end;
931
+ }
929
932
  }
930
933
 
931
- .tds-modal-footer{
932
- display:flex;
933
- gap:var(--t-spacing-2);
934
- align-items:center;
935
- justify-content:flex-end;
936
- padding-block:var(--t-spacing-3);
937
- padding-inline:var(--t-spacing-4);
938
- border-top:1px solid var(--t-border-color);
934
+ .tds-page-header-phone,
935
+ .tds-page-header-email{
936
+ color:var(--tds-page-header-color);
937
+ white-space:nowrap;
939
938
  }
940
-
941
- .tds-modal-footer > [slot="start"]{
942
- margin-inline-end:auto;
939
+ .tds-page-header-email{
940
+ max-width:100%;
941
+ overflow:hidden;
942
+ text-overflow:ellipsis;
943
943
  }
944
944
 
945
- @media (min-width: 720px){
946
- .tds-modal-overlay{
947
- --tds-modal-min-margin-block:0;
945
+ @keyframes indicator-pulse{
946
+ 0%{
947
+ opacity:.3;
948
+ transform:scale(.9);
948
949
  }
949
950
 
950
- .tds-modal-footer{
951
- position:sticky;
952
- bottom:0;
953
- background:var(--t-surface-color-card);
954
- border-end-start-radius:var(--t-border-radius-lg);
955
- border-end-end-radius:var(--t-border-radius-lg);
951
+ 100%{
952
+ opacity:0;
953
+ transform:scale(1.75);
956
954
  }
957
955
  }
958
956
 
959
- @layer t-critical{
960
- tds-page-header:not(.hydrated){
961
- display:none;
962
- }
957
+ .tds-button-group{
958
+ display:inline-flex;
963
959
  }
960
+ .tds-button-group > .tds-btn{
961
+ --tds-button-group-item-z-index:1;
964
962
 
965
- @layer t-component{
966
- .tds-page-header{
967
- --tds-page-header-background-color:var(--t-fill-color-product-current-gradient-tint, var(--t-surface-color-canvas));
968
- --tds-page-header-background-color-inactive:var(--t-fill-color-neutral-090);
969
- --tds-page-header-color:var(--t-text-color);
970
- --tds-page-header-bottom-border-color:transparent;
971
- --tds-page-header-headline-color:var(--t-text-color-headline);
972
- --tds-page-header-headline-font-size:var(--t-font-size-2xl);
973
- --tds-page-header-padding-x:var(--t-spacing-2);
974
- --tds-page-header-padding-y:var(--t-spacing-2);
975
- --tds-page-header-nav-padding-x:var(--tds-page-header-padding-x, var(--t-spacing-3));
976
- --tds-page-header-nav-gap:var(--t-spacing-1);
977
- --tds-page-header-nav-background:linear-gradient(180deg, var(--tds-page-header-nav-background-start, rgba(0, 0, 0, 0)) 0%, var(--tds-page-header-nav-background-end, rgba(0, 0, 0, .1)) 100%);
978
- --tds-page-header-nav-item-padding-x:var(--t-spacing-1);
979
- --tds-page-header-nav-item-padding-y:var(--t-spacing-1);
980
- --tds-page-header-nav-item-color:var(--t-text-color-secondary);
981
- --tds-page-header-nav-item-background-color:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 35%);
982
- --tds-page-header-nav-item-border-width:1px;
963
+ position:relative;
964
+ z-index:var(--tds-button-group-item-z-index);
965
+ border-radius:0;
966
+ }
967
+ :is(.tds-button-group > .tds-btn):not(:first-child){
968
+ margin-inline-start:calc(var(--tds-btn-border-width) * -1);
969
+ }
970
+ :is(.tds-button-group > .tds-btn):is(.tds-btn--interaction,.tds-btn--neutral,.tds-btn--staff-only):not(:first-child)::before,:is(.tds-button-group > .tds-btn):is(.tds-btn--interaction,.tds-btn--neutral,.tds-btn--staff-only):not(:last-child)::after{
971
+ position:absolute;
972
+ inset-block:calc(var(--tds-btn-border-width) * -1);
973
+ width:var(--tds-btn-border-width);
974
+ pointer-events:none;
975
+ content:"";
976
+ background-color:var(--t-border-color-white);
977
+ }
978
+ :is(.tds-button-group > .tds-btn):is(.tds-btn--interaction,.tds-btn--neutral,.tds-btn--staff-only):not(:first-child)::before{
979
+ inset-inline-start:calc(var(--tds-btn-border-width) * -1);
980
+ }
981
+ :is(.tds-button-group > .tds-btn):is(.tds-btn--interaction,.tds-btn--neutral,.tds-btn--staff-only):not(:last-child)::after{
982
+ inset-inline-end:calc(var(--tds-btn-border-width) * -1);
983
+ }
984
+ :is(.tds-button-group > .tds-btn):hover{
985
+ --tds-button-group-item-z-index:2;
986
+ }
987
+ :is(.tds-button-group > .tds-btn):focus-visible{
988
+ --tds-button-group-item-z-index:5;
989
+ }
990
+ .tds-button-group > .tds-btn:first-child{
991
+ border-start-start-radius:var(--tds-btn-border-radius);
992
+ border-end-start-radius:var(--tds-btn-border-radius);
993
+ }
994
+ .tds-button-group > .tds-btn:last-child{
995
+ border-start-end-radius:var(--tds-btn-border-radius);
996
+ border-end-end-radius:var(--tds-btn-border-radius);
997
+ }
983
998
 
984
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-background-color);
985
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color);
986
999
 
987
- --tds-page-header-nav-item-color-hover:var(--t-text-color);
988
- --tds-page-header-nav-item-background-color-hover:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 20%);
989
- --tds-page-header-nav-item-border-color-hover:var(--tds-page-header-nav-item-background-color-hover);
1000
+ @media (prefers-reduced-motion: no-preference){
990
1001
 
991
- --tds-page-header-nav-item-background-color-active:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 10%);
992
- --tds-page-header-nav-item-border-color-active:var(--tds-page-header-nav-item-background-color-active);
1002
+ :root{
1003
+ interpolate-size:allow-keywords;
1004
+ }
1005
+ }
993
1006
 
994
- --tds-page-header-nav-item-color-disabled:var(--t-text-color-disabled);
995
- --tds-page-header-nav-item-background-color-disabled:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 50%);
996
- --tds-page-header-nav-item-border-color-disabled:var(--tds-page-header-nav-item-background-color-disabled);
1007
+ @layer tds-component{
1008
+ tds-sidenav,
1009
+ .tds-sidenav{
1010
+ --tds-sidenav-indent:12px;
1011
+ --tds-sidenav-item-depth:0;
997
1012
 
998
- --tds-page-header-nav-item-color-selected:var(--t-text-color);
999
- --tds-page-header-nav-item-background-color-selected:var(--t-surface-color-canvas);
1000
- --tds-page-header-nav-item-border-color-selected:var(--tds-page-header-nav-item-background-color-selected);
1001
- --tds-page-header-nav-item-border-bottom-color-selected:var(--tds-page-header-nav-item-background-color-selected);
1002
- --tds-page-header-nav-item-indicator-color:var(--t-icon-color-status-warning);
1003
- }
1013
+ --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
1004
1014
 
1005
- .tds-page-header--profile{
1006
- --tds-page-header-padding-y:20px;
1015
+ --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;
1016
+ --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;
1017
+ --tds-sidenav-collapse-closed-opacity:0;
1018
+ --tds-sidenav-collapse-open-opacity:1;
1019
+ --tds-sidenav-collapse-closed-transform:translateY(-8px);
1020
+ --tds-sidenav-collapse-open-transform:translateY(0);
1021
+
1022
+ --tds-sidenav-item-icon-size:var(--t-element-size-md);
1023
+ --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
1024
+ --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
1025
+ --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
1026
+
1027
+ --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
1028
+ --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
1029
+ --tds-sidenav-item-nested-background-selected:transparent;
1030
+
1031
+ --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
1032
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1033
+ --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
1034
+
1035
+ --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
1036
+ --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
1007
1037
  }
1008
1038
 
1009
- @supports (color: light-dark(#fff, #000)){
1010
- .tds-page-header{
1011
- --tds-page-header-nav-background-start:light-dark(rgba(0, 0, 0, 0), rgba(255, 255, 255, 0));
1012
- --tds-page-header-nav-background-end:light-dark(rgba(0, 0, 0, .05), rgba(255, 255, 255, .1));
1039
+ @media (prefers-reduced-motion: reduce){
1040
+ tds-sidenav,
1041
+ .tds-sidenav{
1042
+ --tds-sidenav-collapse-transition-enter:none;
1043
+ --tds-sidenav-collapse-transition-exit:none;
1044
+ --tds-sidenav-collapse-closed-transform:none;
1045
+ --tds-sidenav-collapse-open-transform:none;
1046
+ }
1013
1047
  }
1048
+
1049
+ .tds-sidenav--theme-gray{
1050
+ --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
1051
+ --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
1052
+ --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
1053
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1054
+ --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
1014
1055
  }
1056
+ }
1015
1057
 
1016
- @media (min-width: 600px){
1017
- .tds-page-header{
1018
- --tds-page-header-background-color:var(--t-surface-color-canvas);
1019
- --tds-page-header-color:var(--t-text-color-secondary);
1020
- --tds-page-header-bottom-border-color:var(--t-border-color);
1021
- --tds-page-header-padding-x:var(--t-spacing-3);
1022
- --tds-page-header-headline-font-size:var(--t-font-size-3xl);
1023
- --tds-page-header-nav-gap:var(--t-spacing-half);
1024
- --tds-page-header-nav-background:transparent;
1025
- --tds-page-header-nav-item-padding-x:var(--t-spacing-2);
1026
- --tds-page-header-nav-item-border-width:1px;
1027
- --tds-page-header-nav-item-color:var(--t-text-color);
1028
- --tds-page-header-nav-item-background-color:var(--t-fill-color-neutral-070);
1029
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-bottom-border-color);
1030
- --tds-page-header-nav-item-background-color-hover:var(--t-fill-color-neutral-060);
1031
- --tds-page-header-nav-item-background-color-active:var(--t-fill-color-neutral-050);
1032
- --tds-page-header-nav-item-background-color-disabled:var(--t-fill-color-neutral-080);
1033
- --tds-page-header-nav-item-border-color-selected:var(--t-border-color);
1034
- }
1058
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section){
1059
+ display:flex;
1035
1060
  }
1061
+
1062
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
1063
+ flex-direction:column;
1064
+ gap:var(--t-spacing-half);
1065
+ width:100%;
1066
+ }
1067
+
1068
+ .tds-sidenav-section-list{
1069
+ width:100%;
1070
+ padding:0;
1071
+ margin:0;
1072
+ list-style:none;
1036
1073
  }
1037
1074
 
1038
- .tds-page-header{
1075
+ .tds-sidenav-section-header{
1039
1076
  display:flex;
1040
- flex-direction:column;
1041
- padding-top:var(--tds-page-header-padding-y);
1042
- color:var(--tds-page-header-color);
1043
- background:var(--tds-page-header-background-color);
1044
- border-bottom:1px solid var(--tds-page-header-bottom-border-color);
1077
+ align-items:baseline;
1078
+ justify-content:space-between;
1079
+ padding-top:var(--t-spacing-2);
1045
1080
  }
1046
1081
 
1047
- .tds-page-header:not(.has-nav){
1048
- padding-bottom:var(--tds-page-header-padding-y);
1082
+ .tds-sidenav-section-header h2{
1083
+ margin:0;
1084
+ font-size:var(--t-font-size-sm);
1085
+ font-weight:var(--t-font-weight-semibold);
1086
+ line-height:1.35;
1087
+ color:var(--t-text-color-secondary);
1088
+ text-transform:uppercase;
1089
+ }
1090
+
1091
+ .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
1092
+ padding-top:0;
1093
+ }
1094
+
1095
+ .tds-sidenav-section-header [slot="label-actions"]{
1096
+ display:flex;
1097
+ gap:var(--t-spacing-half);
1098
+ align-items:center;
1099
+ }
1100
+
1101
+ .tds-sidenav-section [slot="section-actions"]{
1102
+ display:flex;
1103
+ gap:12px;
1104
+ align-items:center;
1105
+ min-height:42px;
1106
+ padding:var(--t-spacing-1) 0;
1107
+ }
1108
+
1109
+ .tds-sidenav-section-list,
1110
+ .tds-sidenav-item{
1111
+ width:100%;
1112
+ padding:0;
1113
+ margin:0;
1114
+ }
1115
+
1116
+ .tds-sidenav-item :is(a,button){
1117
+ position:relative;
1118
+ display:flex;
1119
+ gap:12px;
1120
+ align-items:center;
1121
+ width:100%;
1122
+ padding:12px;
1123
+ overflow:hidden;
1124
+ font-size:var(--t-font-size-sm);
1125
+ line-height:18px;
1126
+ color:var(--t-text-color-headline);
1127
+ white-space:nowrap;
1128
+ text-decoration:none;
1129
+ -webkit-appearance:none;
1130
+ -moz-appearance:none;
1131
+ appearance:none;
1132
+ cursor:pointer;
1133
+ background-color:var(--tds-sidenav-item-background, transparent);
1134
+ border:0;
1135
+ border-radius:var(--t-border-radius);
1136
+ transition:var(--tds-sidenav-item-transition);
1137
+ }
1138
+
1139
+ :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
1140
+ display:block;
1141
+ flex:1;
1142
+ overflow:hidden;
1143
+ text-overflow:ellipsis;
1144
+ text-align:left;
1145
+ white-space:nowrap;
1146
+ }
1147
+
1148
+ :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
1149
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
1150
+ color:var(--t-text-color-headline);
1151
+ text-decoration:none;
1152
+ }
1153
+
1154
+ :is(.tds-sidenav-item :is(a,button)):active{
1155
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
1156
+ }
1157
+
1158
+ :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
1159
+ overflow:hidden;
1160
+ color:var(--tds-sidenav-item-icon-color);
1161
+ }
1162
+
1163
+ :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{
1164
+ display:block;
1165
+ width:var(--tds-sidenav-item-icon-size);
1166
+ height:var(--tds-sidenav-item-icon-size);
1167
+ }
1168
+
1169
+ :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
1170
+ --tds-sidenav-indent:19px;
1171
+ }
1172
+
1173
+ [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
1174
+ visibility:visible;
1175
+ block-size:auto;
1176
+ opacity:1;
1177
+ }
1178
+
1179
+ .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
1180
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
1181
+ --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
1182
+
1183
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
1184
+ font-weight:var(--t-font-weight-semibold);
1185
+ }
1186
+
1187
+ .tds-sidenav-item:has(.tds-sidenav-section){
1188
+ display:flex;
1189
+ flex-direction:column;
1190
+ gap:var(--t-spacing-half);
1191
+ }
1192
+
1193
+ .tds-sidenav-item .tds-sidenav-section-list{
1194
+ --tds-sidenav-item-depth:1;
1195
+ gap:0;
1196
+ }
1197
+
1198
+ .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
1199
+ visibility:hidden;
1200
+ block-size:0;
1201
+ overflow-y:clip;
1202
+ opacity:0;
1203
+ transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
1204
+ }
1205
+
1206
+ :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
1207
+ --tds-sidenav-item-depth:2;
1208
+ }
1209
+
1210
+ :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1211
+ min-height:var(--t-element-size-2xl);
1212
+ padding-block:9px;
1213
+ padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
1214
+ line-height:1;
1215
+ background-color:transparent;
1216
+ }
1217
+
1218
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
1219
+ position:absolute;
1220
+ top:0;
1221
+ bottom:0;
1222
+ left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1223
+ width:2px;
1224
+ content:"";
1225
+ background-color:var(--tds-sidenav-item-nested-border-color);
1226
+ transition:var(--tds-sidenav-item-transition);
1227
+ }
1228
+
1229
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
1230
+ position:absolute;
1231
+ inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1232
+ z-index:-1;
1233
+ height:100%;
1234
+ content:"";
1235
+ background-color:var(--tds-sidenav-item-nested-background);
1236
+ border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
1237
+ transition:var(--tds-sidenav-item-transition);
1238
+ }
1239
+
1240
+ :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)){
1241
+ display:block;
1242
+ text-align:left;
1243
+ white-space:normal;
1244
+ }
1245
+
1246
+ :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{
1247
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
1248
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
1249
+ }
1250
+
1251
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
1252
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
1253
+ }
1254
+
1255
+ .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1256
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
1257
+ font-weight:var(--t-font-weight-medium);
1258
+ }
1259
+
1260
+ .tds-sidenav-responsive-header{
1261
+ display:flex;
1262
+ gap:var(--t-spacing-2);
1263
+ align-items:center;
1264
+ width:100%;
1265
+ }
1266
+
1267
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
1268
+ order:0;
1269
+ }
1270
+
1271
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
1272
+ flex:1;
1273
+ order:1;
1274
+ margin:0;
1275
+ font-size:var(--t-font-size-lg);
1276
+ font-weight:var(--t-font-weight-medium);
1277
+ color:var(--t-text-color-headline);
1049
1278
  }
1050
1279
 
1051
- .tds-page-header.inactive{
1052
- background:var(--tds-page-header-background-color-inactive);
1280
+ @media (max-width: 719px){
1281
+ .tds-sidenav-collapse{
1282
+ z-index:10001;
1283
+ display:none;
1284
+ max-width:min(448px, calc(100vw - 48px));
1285
+ padding:0;
1286
+ margin:12px 0;
1287
+ position-area:bottom span-right;
1288
+ overflow:hidden;
1289
+ outline:0;
1290
+ background:var(--t-surface-color-card);
1291
+ border:0;
1292
+ border-radius:6px;
1293
+ box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
1294
+ opacity:var(--tds-sidenav-collapse-open-opacity);
1295
+ transform:var(--tds-sidenav-collapse-open-transform);
1296
+ transition:var(--tds-sidenav-collapse-transition-enter);
1297
+ will-change:transform;
1053
1298
  }
1054
1299
 
1055
- .tds-page-header :is([slot="actions"],.tds-page-header__actions){
1300
+ .tds-sidenav-scroll-container{
1301
+ --webkit-overflow-scrolling:touch;
1302
+ display:block;
1056
1303
  width:100%;
1304
+ height:-moz-fit-content;
1305
+ height:fit-content;
1306
+ padding:var(--t-spacing-2);
1307
+ overflow-y:auto;
1057
1308
  }
1058
1309
 
1059
- .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
1060
- display:flex;
1061
- flex-flow:row wrap;
1062
- gap:var(--t-spacing-half) var(--t-spacing-1);
1063
- align-items:flex-start;
1064
- justify-content:flex-start;
1065
- min-width:0;
1310
+ .tds-sidenav-item :is(a, button) :is(.prefix){
1311
+ display:none;
1066
1312
  }
1067
-
1068
- :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)):not(:has(ul)),:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) ul{
1313
+ @supports selector(:popover-open){
1314
+ .tds-sidenav-collapse:popover-open{
1069
1315
  display:flex;
1070
- gap:var(--tds-page-header-nav-gap);
1071
- padding:var(--t-spacing-2) var(--tds-page-header-nav-padding-x) 0;
1072
- margin:0 0 -1px;
1073
- overflow:auto;
1074
- list-style:none;
1075
- background:var(--tds-page-header-nav-background);
1076
1316
  }
1077
1317
 
1078
- :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button){
1079
- position:relative;
1080
- display:inline-flex;
1081
- padding:var(--tds-page-header-nav-item-padding-y) var(--tds-page-header-nav-item-padding-x);
1082
- font-size:var(--t-font-size-sm);
1083
- line-height:22px;
1084
- color:var(--tds-page-header-nav-item-color);
1085
- white-space:nowrap;
1086
- text-decoration:none;
1087
- -webkit-appearance:none;
1088
- -moz-appearance:none;
1089
- appearance:none;
1090
- cursor:pointer;
1091
- outline-offset:-2px;
1092
- background-color:var(--tds-page-header-nav-item-background-color);
1093
- background-clip:padding-box;
1094
- border:var(--tds-page-header-nav-item-border-width) solid var(--tds-page-header-nav-item-border-color);
1095
- border-bottom:1px solid var(--tds-page-header-nav-item-border-bottom-color);
1096
- border-radius:var(--t-border-radius-md) var(--t-border-radius-md) 0 0;
1318
+ .tds-sidenav-collapse:not(:popover-open){
1319
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1320
+ transition:var(--tds-sidenav-collapse-transition-exit);
1097
1321
  }
1098
1322
 
1099
- .selected:is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)){
1100
- --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-selected);
1101
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-selected);
1102
- --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-selected);
1103
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-selected);
1323
+ @starting-style{
1324
+ .tds-sidenav-collapse:popover-open{
1325
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1326
+ transform:var(--tds-sidenav-collapse-closed-transform);
1104
1327
  }
1328
+ }
1329
+ }
1330
+ @supports not selector(:popover-open){
1331
+ .tds-sidenav-collapse.\:popover-open{
1332
+ display:flex;
1333
+ }
1105
1334
 
1106
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):hover{
1107
- --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-hover);
1108
- --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-hover);
1109
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-hover);
1110
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-hover);
1111
- }
1112
-
1113
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):active{
1114
- background-color:var(--tds-page-header-nav-item-background-color-active);
1115
- border-color:var(--tds-page-header-nav-item-border-color-active);
1116
- border-bottom-color:var(--tds-page-header-nav-item-background-color-active);
1117
- }
1118
-
1119
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):disabled{
1120
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-disabled);
1121
- color:var(--tds-page-header-nav-item-color-disabled);
1122
- cursor:not-allowed;
1123
- background-color:var(--tds-page-header-nav-item-background-color-disabled);
1124
- opacity:1;
1125
- }
1335
+ .tds-sidenav-collapse:not(.\:popover-open){
1336
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1337
+ transition:var(--tds-sidenav-collapse-transition-exit);
1338
+ }
1339
+ }
1340
+ }
1126
1341
 
1127
- @media (min-width: 600px){
1128
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected)::after{
1129
- position:absolute;
1130
- inset:auto -1px -1px;
1131
- height:1px;
1132
- pointer-events:none;
1133
- content:"";
1134
- background-color:var(--tds-page-header-bottom-border-color);
1135
- }
1136
- }
1342
+ @media (min-width: 720px){
1343
+ .tds-sidenav-responsive-header{
1344
+ display:none;
1345
+ }
1346
+ }
1137
1347
 
1138
- :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator){
1139
- position:relative;
1348
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
1349
+ display:none;
1140
1350
  }
1141
1351
 
1142
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator)) :is(a,button){
1143
- -webkit-mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
1144
- mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
1145
- }
1352
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
1353
+ display:block;
1354
+ }
1146
1355
 
1147
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::before,:is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::after{
1148
- position:absolute;
1149
- top:-5px;
1150
- right:-2px;
1151
- width:10px;
1152
- height:10px;
1153
- content:"";
1154
- background:var(--tds-page-header-nav-item-indicator-color);
1155
- border-radius:50%;
1156
- }
1356
+ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1357
+ display:flex;
1358
+ flex-direction:column;
1359
+ }
1157
1360
 
1158
- @media (prefers-reduced-motion: no-preference){
1159
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::after{
1160
- animation:indicator-pulse 1.25s ease infinite;
1161
- }
1162
- }
1361
+ .tds-checkbox-group{
1362
+ --tds-checkbox-group-font-size:var(--t-font-size-md);
1363
+ --tds-checkbox-group-line-height:1.4;
1364
+ --tds-checkbox-group-gap:var(--t-spacing-1);
1163
1365
 
1164
- .tds-page-header__title-bar{
1366
+ --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
1367
+ --tds-checkbox-group-description-line-height:1.35;
1368
+ --tds-checkbox-group-description-color:var(--t-text-color-secondary);
1369
+ --tds-checkbox-group-description-invalid-icon-display:none;
1165
1370
  display:flex;
1166
1371
  flex-direction:column;
1167
- gap:var(--t-spacing-2) var(--t-spacing-1);
1168
- align-items:flex-start;
1169
- justify-content:space-between;
1170
- padding:0 var(--tds-page-header-padding-x);
1171
- }
1172
-
1173
- .tds-page-header--profile > .tds-page-header__title-bar{
1174
- align-items:center;
1175
- }
1372
+ gap:0;
1373
+ padding:0;
1374
+ margin:0;
1176
1375
 
1177
- .tds-page-header__primary{
1178
- width:100%;
1376
+ font-size:var(--tds-checkbox-group-font-size);
1377
+ line-height:var(--tds-checkbox-group-line-height);
1378
+ border:0;
1179
1379
  }
1180
1380
 
1181
- .tds-page-header__primary h1{
1381
+ .tds-checkbox-group legend{
1382
+ float:left;
1383
+ padding:0;
1182
1384
  margin:0;
1183
- font-size:var(--tds-page-header-headline-font-size);
1184
- font-weight:var(--t-font-weight-normal);
1185
- line-height:32px;
1186
- color:var(--tds-page-header-headline-color);
1187
- overflow-wrap:break-word;
1188
1385
  }
1189
1386
 
1190
- @media (min-width: 960px){
1191
- .tds-page-header__primary{
1192
- flex:1 1 max-content;
1193
- width:auto;
1194
- min-width:0;
1195
- max-width:100%;
1387
+ .tds-checkbox-group[aria-invalid="true"]{
1388
+ --tds-checkbox-group-description-color:var(--t-text-color-status-error);
1389
+ --tds-checkbox-group-description-invalid-icon-display:inline-block;
1196
1390
  }
1197
1391
 
1198
- .tds-page-header__title-bar,
1199
- .tds-page-header--profile .tds-page-header__title-bar{
1200
- flex-flow:row nowrap;
1201
- row-gap:12px;
1202
- align-items:flex-start;
1203
- }
1204
- .tds-page-header :is([slot="actions"],.tds-page-header__actions){
1205
- width:auto;
1392
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
1393
+ margin-left:.25ch;
1394
+ color:var(--t-text-color-status-error);
1395
+ content:"*";
1206
1396
  }
1207
1397
 
1208
- .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
1209
- justify-content:flex-end;
1398
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
1399
+ content:none;
1210
1400
  }
1211
- }
1212
1401
 
1213
- .tds-page-header-phone,
1214
- .tds-page-header-email{
1215
- color:var(--tds-page-header-color);
1216
- white-space:nowrap;
1402
+ .tds-checkbox-group-fields{
1403
+ display:flex;
1404
+ flex-direction:column;
1405
+ gap:var(--tds-checkbox-group-gap);
1406
+ align-items:flex-start;
1407
+ margin-top:var(--t-spacing-1);
1217
1408
  }
1218
- .tds-page-header-email{
1219
- max-width:100%;
1220
- overflow:hidden;
1221
- text-overflow:ellipsis;
1409
+
1410
+ .tds-checkbox-group-description{
1411
+ display:flex;
1412
+ gap:var(--t-spacing-half);
1413
+ align-items:flex-start;
1414
+ margin:var(--t-spacing-fourth) 0 0;
1415
+ font-size:var(--tds-checkbox-group-description-font-size);
1416
+ line-height:var(--tds-checkbox-group-description-line-height);
1417
+ color:var(--tds-checkbox-group-description-color);
1418
+ cursor:text;
1222
1419
  }
1223
1420
 
1224
- @keyframes indicator-pulse{
1225
- 0%{
1226
- opacity:.3;
1227
- transform:scale(.9);
1421
+ .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
1422
+ display:var(--tds-checkbox-group-description-invalid-icon-display);
1423
+ flex-shrink:0;
1424
+ margin-top:calc(.5lh - .5em);
1425
+ line-height:var(--tds-checkbox-group-description-line-height);
1228
1426
  }
1229
1427
 
1230
- 100%{
1231
- opacity:0;
1232
- transform:scale(1.75);
1233
- }
1428
+ .tds-checkbox-group--sm{
1429
+ --tds-checkbox-group-line-height:1.35;
1430
+ --tds-checkbox-group-font-size:var(--t-font-size-sm);
1431
+ --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
1432
+ --tds-checkbox-group-description-line-height:1.3;
1234
1433
  }
1235
1434
 
1236
1435
  .tds-checkbox{
@@ -1428,390 +1627,414 @@
1428
1627
  --tds-checkbox-description-line-height:1.3;
1429
1628
  }
1430
1629
 
1630
+ .tds-modal-overlay{
1631
+ --tds-modal-min-margin-block:var(--t-spacing-3);
1431
1632
 
1432
- :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{
1433
- -webkit-appearance:none;
1434
- appearance:none;
1435
- }
1436
-
1437
- [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
1438
- inline-size:1em;
1439
- block-size:2em;
1440
- }
1441
- @supports (field-sizing: content){
1442
- .tds-input--auto-width{
1443
- inline-size:-moz-fit-content;
1444
- inline-size:fit-content;
1445
- min-inline-size:min(100%, 122px);
1446
- }
1447
-
1448
- .tds-input--auto-width input{
1449
- field-sizing:content;
1450
- inline-size:auto;
1451
- }
1633
+ position:fixed;
1634
+ inset:0;
1635
+ z-index:1000;
1636
+ display:grid;
1637
+ grid-template-rows:minmax(var(--tds-modal-min-margin-block), 1fr) auto minmax(var(--tds-modal-min-margin-block), 1fr);
1638
+ justify-items:center;
1639
+ overflow-y:auto;
1640
+ background:hsl(0 0% 0% / 40%);
1452
1641
  }
1453
1642
 
1454
-
1455
- @media (prefers-reduced-motion: no-preference){
1456
-
1457
- :root{
1458
- interpolate-size:allow-keywords;
1459
- }
1643
+ .tds-modal-overlay[data-entering]{
1644
+ animation:tds-modal-overlay-fade var(--t-duration-300) var(--t-ease-out);
1460
1645
  }
1461
1646
 
1462
- @layer tds-component{
1463
- tds-sidenav,
1464
- .tds-sidenav{
1465
- --tds-sidenav-indent:12px;
1466
- --tds-sidenav-item-depth:0;
1467
-
1468
- --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
1469
-
1470
- --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;
1471
- --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;
1472
- --tds-sidenav-collapse-closed-opacity:0;
1473
- --tds-sidenav-collapse-open-opacity:1;
1474
- --tds-sidenav-collapse-closed-transform:translateY(-8px);
1475
- --tds-sidenav-collapse-open-transform:translateY(0);
1476
-
1477
- --tds-sidenav-item-icon-size:var(--t-element-size-md);
1478
- --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
1479
- --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
1480
- --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
1481
-
1482
- --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
1483
- --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
1484
- --tds-sidenav-item-nested-background-selected:transparent;
1485
-
1486
- --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
1487
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1488
- --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
1489
-
1490
- --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
1491
- --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
1647
+ .tds-modal-overlay[data-exiting]{
1648
+ animation:tds-modal-overlay-fade var(--t-duration-200) var(--t-ease-in) reverse;
1492
1649
  }
1493
1650
 
1494
- @media (prefers-reduced-motion: reduce){
1495
- tds-sidenav,
1496
- .tds-sidenav{
1497
- --tds-sidenav-collapse-transition-enter:none;
1498
- --tds-sidenav-collapse-transition-exit:none;
1499
- --tds-sidenav-collapse-closed-transform:none;
1500
- --tds-sidenav-collapse-open-transform:none;
1651
+ @keyframes tds-modal-overlay-fade{
1652
+ from{
1653
+ opacity:0;
1501
1654
  }
1502
- }
1655
+ }
1503
1656
 
1504
- .tds-sidenav--theme-gray{
1505
- --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
1506
- --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
1507
- --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
1508
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1509
- --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
1510
- }
1657
+ .tds-modal-frame{
1658
+ --tds-modal-width:600px;
1659
+ --tds-modal-edge-margin-inline:var(--t-spacing-3);
1660
+ display:flex;
1661
+
1662
+ grid-row:2;
1663
+ justify-content:center;
1664
+ width:min(var(--tds-modal-width), calc(100% - var(--tds-modal-edge-margin-inline) * 2));
1511
1665
  }
1512
1666
 
1513
- .tds-sidenav :where(nav,ul,.tds-sidenav-section){
1514
- display:flex;
1667
+ .tds-modal-frame[data-entering]{
1668
+ animation:tds-modal-zoom var(--t-duration-300) var(--t-ease-out);
1515
1669
  }
1516
1670
 
1517
- .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
1518
- flex-direction:column;
1519
- gap:var(--t-spacing-half);
1520
- width:100%;
1671
+ .tds-modal-frame[data-exiting]{
1672
+ animation:tds-modal-zoom var(--t-duration-200) var(--t-ease-in) reverse;
1521
1673
  }
1522
1674
 
1523
- .tds-sidenav-section-list{
1524
- width:100%;
1525
- padding:0;
1526
- margin:0;
1527
- list-style:none;
1675
+ .tds-modal-frame--sm{
1676
+ --tds-modal-width:400px;
1528
1677
  }
1529
1678
 
1530
- .tds-sidenav-section-header{
1531
- display:flex;
1532
- align-items:baseline;
1533
- justify-content:space-between;
1534
- padding-top:var(--t-spacing-2);
1679
+ .tds-modal-frame--lg{
1680
+ --tds-modal-width:800px;
1535
1681
  }
1536
1682
 
1537
- .tds-sidenav-section-header h2{
1538
- margin:0;
1539
- font-size:var(--t-font-size-sm);
1540
- font-weight:var(--t-font-weight-semibold);
1541
- line-height:1.35;
1542
- color:var(--t-text-color-secondary);
1543
- text-transform:uppercase;
1544
- }
1683
+ .tds-modal-frame--xl{
1684
+ --tds-modal-width:1000px;
1685
+ }
1545
1686
 
1546
- .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
1547
- padding-top:0;
1687
+ @keyframes tds-modal-zoom{
1688
+ from{
1689
+ opacity:0;
1690
+ scale:.96;
1548
1691
  }
1692
+ }
1549
1693
 
1550
- .tds-sidenav-section-header [slot="label-actions"]{
1551
- display:flex;
1552
- gap:var(--t-spacing-half);
1553
- align-items:center;
1694
+ @media (prefers-reduced-motion: reduce){
1695
+ .tds-modal-overlay[data-entering],
1696
+ .tds-modal-overlay[data-exiting],
1697
+ .tds-modal-frame[data-entering],
1698
+ .tds-modal-frame[data-exiting]{
1699
+ animation:none;
1554
1700
  }
1555
-
1556
- .tds-sidenav-section [slot="section-actions"]{
1557
- display:flex;
1558
- gap:12px;
1559
- align-items:center;
1560
- min-height:42px;
1561
- padding:var(--t-spacing-1) 0;
1562
1701
  }
1563
1702
 
1564
- .tds-sidenav-section-list,
1565
- .tds-sidenav-item{
1703
+ .tds-modal{
1704
+ display:flex;
1705
+ flex-direction:column;
1566
1706
  width:100%;
1567
- padding:0;
1568
- margin:0;
1707
+ padding-block-start:var(--t-spacing-3);
1708
+ padding-inline:0;
1709
+ background:var(--t-surface-color-card);
1710
+
1711
+ border:0;
1712
+ border-radius:var(--t-border-radius-lg);
1713
+ box-shadow:0 4px 18px 0 #0003;
1569
1714
  }
1570
1715
 
1571
- .tds-sidenav-item :is(a,button){
1572
- position:relative;
1573
- display:flex;
1574
- gap:12px;
1575
- align-items:center;
1576
- width:100%;
1577
- padding:12px;
1578
- overflow:hidden;
1579
- font-size:var(--t-font-size-sm);
1580
- line-height:18px;
1581
- color:var(--t-text-color-headline);
1582
- white-space:nowrap;
1583
- text-decoration:none;
1584
- -webkit-appearance:none;
1585
- -moz-appearance:none;
1586
- appearance:none;
1587
- cursor:pointer;
1588
- background-color:var(--tds-sidenav-item-background, transparent);
1589
- border:0;
1590
- border-radius:var(--t-border-radius);
1591
- transition:var(--tds-sidenav-item-transition);
1716
+ .tds-modal:focus{
1717
+ outline:none;
1592
1718
  }
1593
1719
 
1594
- :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
1595
- display:block;
1596
- flex:1;
1597
- overflow:hidden;
1598
- text-overflow:ellipsis;
1599
- text-align:left;
1600
- white-space:nowrap;
1601
- }
1720
+ .tds-modal-header{
1721
+ display:grid;
1722
+ grid-template-columns:1fr auto;
1723
+ -moz-column-gap:var(--t-spacing-2);
1724
+ column-gap:var(--t-spacing-2);
1725
+ padding-block:0;
1726
+ padding-inline:var(--t-spacing-4);
1727
+ }
1602
1728
 
1603
- :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
1604
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
1605
- color:var(--t-text-color-headline);
1606
- text-decoration:none;
1607
- }
1729
+ .tds-modal-title{
1730
+ grid-row:1;
1731
+ grid-column:1;
1732
+ margin:0;
1733
+ font-size:var(--t-font-size-2xl);
1734
+ font-weight:var(--t-font-weight-medium);
1735
+ line-height:140%;
1736
+ color:var(--t-text-color-headline);
1737
+ }
1608
1738
 
1609
- :is(.tds-sidenav-item :is(a,button)):active{
1610
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
1611
- }
1739
+ .tds-modal-subtitle{
1740
+ grid-row:2;
1741
+ grid-column:1;
1742
+ margin:0;
1743
+ font-size:var(--t-font-size-md);
1744
+ font-weight:var(--t-font-weight-medium);
1745
+ line-height:140%;
1746
+ color:var(--t-text-color-secondary);
1747
+ }
1612
1748
 
1613
- :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
1614
- overflow:hidden;
1615
- color:var(--tds-sidenav-item-icon-color);
1616
- }
1749
+ .tds-modal-close{
1750
+ grid-row:1;
1751
+ grid-column:2;
1752
+ align-self:center;
1753
+ color:var(--t-icon-color-dim);
1754
+ }
1617
1755
 
1618
- :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{
1619
- display:block;
1620
- width:var(--tds-sidenav-item-icon-size);
1621
- height:var(--tds-sidenav-item-icon-size);
1622
- }
1756
+ .tds-modal-body{
1757
+ padding-block:var(--t-spacing-3);
1758
+ padding-inline:var(--t-spacing-4);
1759
+ }
1623
1760
 
1624
- :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
1625
- --tds-sidenav-indent:19px;
1626
- }
1761
+ .tds-modal-body--full-width{
1762
+ padding-inline:0;
1763
+ }
1627
1764
 
1628
- [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
1629
- visibility:visible;
1630
- block-size:auto;
1631
- opacity:1;
1632
- }
1765
+ .tds-modal-footer{
1766
+ display:flex;
1767
+ gap:var(--t-spacing-2);
1768
+ align-items:center;
1769
+ justify-content:flex-end;
1770
+ padding-block:var(--t-spacing-3);
1771
+ padding-inline:var(--t-spacing-4);
1772
+ border-top:1px solid var(--t-border-color);
1773
+ }
1633
1774
 
1634
- .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
1635
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
1636
- --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
1775
+ .tds-modal-footer > [slot="start"]{
1776
+ margin-inline-end:auto;
1777
+ }
1637
1778
 
1638
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
1639
- font-weight:var(--t-font-weight-semibold);
1779
+ @media (min-width: 720px){
1780
+ .tds-modal-overlay{
1781
+ --tds-modal-min-margin-block:0;
1640
1782
  }
1641
1783
 
1642
- .tds-sidenav-item:has(.tds-sidenav-section){
1643
- display:flex;
1644
- flex-direction:column;
1645
- gap:var(--t-spacing-half);
1784
+ .tds-modal-footer{
1785
+ position:sticky;
1786
+ bottom:0;
1787
+ background:var(--t-surface-color-card);
1788
+ border-end-start-radius:var(--t-border-radius-lg);
1789
+ border-end-end-radius:var(--t-border-radius-lg);
1646
1790
  }
1791
+ }
1647
1792
 
1648
- .tds-sidenav-item .tds-sidenav-section-list{
1649
- --tds-sidenav-item-depth:1;
1650
- gap:0;
1651
- }
1652
1793
 
1653
- .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
1654
- visibility:hidden;
1655
- block-size:0;
1656
- overflow-y:clip;
1657
- opacity:0;
1658
- transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
1794
+ :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{
1795
+ -webkit-appearance:none;
1796
+ appearance:none;
1659
1797
  }
1660
1798
 
1661
- :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
1662
- --tds-sidenav-item-depth:2;
1799
+ [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
1800
+ inline-size:1em;
1801
+ block-size:2em;
1663
1802
  }
1803
+ @supports (field-sizing: content){
1804
+ .tds-input--auto-width{
1805
+ inline-size:-moz-fit-content;
1806
+ inline-size:fit-content;
1807
+ min-inline-size:min(100%, 122px);
1808
+ }
1664
1809
 
1665
- :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1666
- min-height:var(--t-element-size-2xl);
1667
- padding-block:9px;
1668
- padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
1669
- line-height:1;
1670
- background-color:transparent;
1671
- }
1810
+ .tds-input--auto-width input{
1811
+ field-sizing:content;
1812
+ inline-size:auto;
1813
+ }
1814
+ }
1672
1815
 
1673
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
1674
- position:absolute;
1675
- top:0;
1676
- bottom:0;
1677
- left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1678
- width:2px;
1679
- content:"";
1680
- background-color:var(--tds-sidenav-item-nested-border-color);
1681
- transition:var(--tds-sidenav-item-transition);
1682
- }
1816
+ .tds-radio-group{
1817
+ --tds-radio-group-font-size:var(--t-font-size-md);
1818
+ --tds-radio-group-line-height:1.4;
1819
+ --tds-radio-group-gap:var(--t-spacing-1);
1683
1820
 
1684
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
1685
- position:absolute;
1686
- inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1687
- z-index:-1;
1688
- height:100%;
1689
- content:"";
1690
- background-color:var(--tds-sidenav-item-nested-background);
1691
- border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
1692
- transition:var(--tds-sidenav-item-transition);
1693
- }
1821
+ --tds-radio-group-description-font-size:var(--t-font-size-sm);
1822
+ --tds-radio-group-description-line-height:1.35;
1823
+ --tds-radio-group-description-color:var(--t-text-color-secondary);
1824
+ --tds-radio-group-description-invalid-icon-display:none;
1825
+ display:flex;
1826
+ flex-direction:column;
1827
+ gap:0;
1828
+ padding:0;
1829
+ margin:0;
1694
1830
 
1695
- :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)){
1696
- display:block;
1697
- text-align:left;
1698
- white-space:normal;
1699
- }
1831
+ font-size:var(--tds-radio-group-font-size);
1832
+ line-height:var(--tds-radio-group-line-height);
1833
+ border:0;
1834
+ }
1700
1835
 
1701
- :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{
1702
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
1703
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
1836
+ .tds-radio-group legend{
1837
+ float:left;
1838
+ padding:0;
1839
+ margin:0;
1840
+ }
1841
+
1842
+ .tds-radio-group[aria-invalid="true"]{
1843
+ --tds-radio-group-description-color:var(--t-text-color-status-error);
1844
+ --tds-radio-group-description-invalid-icon-display:inline-block;
1845
+ }
1846
+
1847
+ .tds-radio-group[aria-invalid="true"] .tds-radio{
1848
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
1849
+ }
1850
+
1851
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
1852
+ --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
1853
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
1704
1854
  }
1705
1855
 
1706
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
1707
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
1856
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
1857
+ --tds-radio-input-background-color:var(--t-icon-color-inverted);
1708
1858
  }
1709
1859
 
1710
- .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1711
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
1712
- font-weight:var(--t-font-weight-medium);
1860
+ .tds-radio-group:has(input:required) legend::after{
1861
+ margin-left:.25ch;
1862
+ color:var(--t-text-color-status-error);
1863
+ content:"*";
1713
1864
  }
1714
1865
 
1715
- .tds-sidenav-responsive-header{
1866
+ .tds-radio-group-fields{
1716
1867
  display:flex;
1717
- gap:var(--t-spacing-2);
1718
- align-items:center;
1719
- width:100%;
1868
+ flex-direction:column;
1869
+ gap:var(--tds-radio-group-gap);
1870
+ align-items:flex-start;
1871
+ margin-top:var(--t-spacing-1);
1720
1872
  }
1721
1873
 
1722
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
1723
- order:0;
1724
- }
1874
+ .tds-radio-group-description{
1875
+ display:flex;
1876
+ gap:var(--t-spacing-half);
1877
+ align-items:flex-start;
1878
+ margin:var(--t-spacing-fourth) 0 0;
1879
+ font-size:var(--tds-radio-group-description-font-size);
1880
+ line-height:var(--tds-radio-group-description-line-height);
1881
+ color:var(--tds-radio-group-description-color);
1882
+ cursor:text;
1883
+ }
1725
1884
 
1726
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
1727
- flex:1;
1728
- order:1;
1729
- margin:0;
1730
- font-size:var(--t-font-size-lg);
1731
- font-weight:var(--t-font-weight-medium);
1732
- color:var(--t-text-color-headline);
1885
+ .tds-radio-group-description .tds-radio-group-description-invalid-icon{
1886
+ display:var(--tds-radio-group-description-invalid-icon-display);
1887
+ flex-shrink:0;
1888
+ margin-top:calc(.5lh - .5em);
1889
+ line-height:var(--tds-radio-group-description-line-height);
1733
1890
  }
1734
1891
 
1735
- @media (max-width: 719px){
1736
- .tds-sidenav-collapse{
1737
- z-index:10001;
1738
- display:none;
1739
- max-width:min(448px, calc(100vw - 48px));
1740
- padding:0;
1741
- margin:12px 0;
1742
- position-area:bottom span-right;
1743
- overflow:hidden;
1744
- outline:0;
1745
- background:var(--t-surface-color-card);
1892
+ .tds-radio-group--sm{
1893
+ --tds-radio-group-line-height:1.35;
1894
+ --tds-radio-group-font-size:var(--t-font-size-sm);
1895
+ --tds-radio-group-description-font-size:var(--t-font-size-xs);
1896
+ --tds-radio-group-description-line-height:1.3;
1897
+ }
1898
+
1899
+ .tds-toggle-switch{
1900
+ --tds-toggle-switch-font-size:var(--t-font-size-md);
1901
+ --tds-toggle-switch-cursor:pointer;
1902
+ --tds-toggle-switch-display:inline-grid;
1903
+ --tds-toggle-switch-line-height:1.4;
1904
+
1905
+ --tds-toggle-switch-label-color:var(--t-form-color);
1906
+
1907
+ --tds-toggle-switch-track-width:var(--t-container-size-md);
1908
+ --tds-toggle-switch-track-outline:none;
1909
+ --tds-toggle-switch-track-height:var(--t-container-size-xs);
1910
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
1911
+ --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
1912
+
1913
+ --tds-toggle-switch-thumb-size:var(--t-element-size-md);
1914
+ --tds-toggle-switch-thumb-transform:translateX(0);
1915
+ --tds-toggle-switch-thumb-transition:transform var(--t-duration-200) var(--t-ease-in-out);
1916
+
1917
+ --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
1918
+ --tds-toggle-switch-description-line-height:1.35;
1919
+ --tds-toggle-switch-description-color:var(--t-text-color-secondary);
1920
+ position:relative;
1921
+
1922
+ display:var(--tds-toggle-switch-display);
1923
+ grid-template-columns:auto;
1924
+ grid-auto-columns:1fr;
1925
+ gap:var(--t-spacing-fourth) 0;
1926
+ -webkit-user-select:none;
1927
+ -moz-user-select:none;
1928
+ user-select:none;
1929
+ }
1930
+
1931
+ .tds-toggle-switch input[type="checkbox"]{
1932
+ position:absolute;
1933
+ width:var(--tds-toggle-switch-track-width);
1934
+ height:var(--tds-toggle-switch-track-height);
1935
+ margin:0;
1936
+ -webkit-appearance:none;
1937
+ -moz-appearance:none;
1938
+ appearance:none;
1939
+ cursor:var(--tds-toggle-switch-cursor);
1940
+ outline:var(--tds-toggle-switch-track-outline);
1941
+ outline-offset:var(--t-focus-ring-offset);
1942
+ background-color:transparent;
1746
1943
  border:0;
1747
- border-radius:6px;
1748
- box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
1749
- opacity:var(--tds-sidenav-collapse-open-opacity);
1750
- transform:var(--tds-sidenav-collapse-open-transform);
1751
- transition:var(--tds-sidenav-collapse-transition-enter);
1752
- will-change:transform;
1944
+ border-radius:var(--t-border-radius-round);
1753
1945
  }
1754
1946
 
1755
- .tds-sidenav-scroll-container{
1756
- --webkit-overflow-scrolling:touch;
1757
- display:block;
1758
- width:100%;
1759
- height:-moz-fit-content;
1760
- height:fit-content;
1761
- padding:var(--t-spacing-2);
1762
- overflow-y:auto;
1763
- }
1947
+ :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
1948
+ --tds-toggle-switch-track-outline:var(--t-focus-ring-outline);
1949
+ }
1764
1950
 
1765
- .tds-sidenav-item :is(a, button) :is(.prefix){
1766
- display:none;
1951
+ .tds-toggle-switch label{
1952
+ display:inline-flex;
1953
+ grid-area:1 / 2;
1954
+ padding-inline-start:var(--t-spacing-1);
1955
+ margin-top:-.09375em;
1956
+ font-size:var(--tds-toggle-switch-font-size);
1957
+ font-weight:var(--t-font-weight-normal);
1958
+ line-height:var(--tds-toggle-switch-line-height);
1959
+ color:var(--tds-toggle-switch-label-color);
1960
+ cursor:var(--tds-toggle-switch-cursor);
1767
1961
  }
1768
- @supports selector(:popover-open){
1769
- .tds-sidenav-collapse:popover-open{
1770
- display:flex;
1771
- }
1772
1962
 
1773
- .tds-sidenav-collapse:not(:popover-open){
1774
- opacity:var(--tds-sidenav-collapse-closed-opacity);
1775
- transition:var(--tds-sidenav-collapse-transition-exit);
1776
- }
1963
+ .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
1964
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
1965
+ }
1777
1966
 
1778
- @starting-style{
1779
- .tds-sidenav-collapse:popover-open{
1780
- opacity:var(--tds-sidenav-collapse-closed-opacity);
1781
- transform:var(--tds-sidenav-collapse-closed-transform);
1782
- }
1783
- }
1967
+ .tds-toggle-switch:has(input:checked){
1968
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
1969
+ --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
1784
1970
  }
1785
- @supports not selector(:popover-open){
1786
- .tds-sidenav-collapse.\:popover-open{
1787
- display:flex;
1788
- }
1789
1971
 
1790
- .tds-sidenav-collapse:not(.\:popover-open){
1791
- opacity:var(--tds-sidenav-collapse-closed-opacity);
1792
- transition:var(--tds-sidenav-collapse-transition-exit);
1972
+ .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
1973
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
1793
1974
  }
1975
+
1976
+ .tds-toggle-switch:has(input:disabled){
1977
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
1978
+ --tds-toggle-switch-label-color:var(--t-form-color-disabled);
1979
+ --tds-toggle-switch-description-color:var(--t-form-color-disabled);
1980
+ --tds-toggle-switch-cursor:not-allowed;
1794
1981
  }
1982
+
1983
+ .tds-toggle-switch-track{
1984
+ position:relative;
1985
+ flex-shrink:0;
1986
+ width:var(--tds-toggle-switch-track-width);
1987
+ height:var(--tds-toggle-switch-track-height);
1988
+ background-color:var(--tds-toggle-switch-track-background-color);
1989
+ border-radius:var(--t-border-radius-round);
1990
+ transition:var(--tds-toggle-switch-track-transition);
1795
1991
  }
1796
1992
 
1797
- @media (min-width: 720px){
1798
- .tds-sidenav-responsive-header{
1799
- display:none;
1993
+ .tds-toggle-switch-track::before{
1994
+ position:absolute;
1995
+ top:var(--t-spacing-fourth);
1996
+ left:var(--t-spacing-fourth);
1997
+ width:var(--tds-toggle-switch-thumb-size);
1998
+ height:var(--tds-toggle-switch-thumb-size);
1999
+ content:"";
2000
+ background-color:#fff;
2001
+ border-radius:var(--t-border-radius-round);
2002
+ transform:var(--tds-toggle-switch-thumb-transform);
2003
+ transition:var(--tds-toggle-switch-thumb-transition);
1800
2004
  }
2005
+
2006
+ @media (prefers-reduced-motion: reduce){
2007
+
2008
+ .tds-toggle-switch-track{
2009
+ --tds-toggle-switch-track-transition:none;
2010
+ --tds-toggle-switch-thumb-transition:none;
1801
2011
  }
2012
+ }
1802
2013
 
1803
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
1804
- display:none;
1805
- }
2014
+ .tds-toggle-switch-description{
2015
+ display:flex;
2016
+ grid-area:2 / 2;
2017
+ align-items:flex-start;
2018
+ padding-inline-start:var(--t-spacing-1);
2019
+ margin:0;
2020
+ font-size:var(--tds-toggle-switch-description-font-size);
2021
+ line-height:var(--tds-toggle-switch-description-line-height);
2022
+ color:var(--tds-toggle-switch-description-color);
2023
+ cursor:text;
2024
+ }
1806
2025
 
1807
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
1808
- display:block;
1809
- }
2026
+ .tds-toggle-switch--sm{
2027
+ --tds-toggle-switch-font-size:var(--t-font-size-sm);
2028
+ --tds-toggle-switch-line-height:1.35;
2029
+ --tds-toggle-switch-track-height:var(--t-element-size-lg);
2030
+ --tds-toggle-switch-thumb-size:var(--t-element-size-sm);
2031
+ --tds-toggle-switch-description-font-size:var(--t-font-size-xs);
2032
+ --tds-toggle-switch-description-line-height:1.3;
2033
+ }
1810
2034
 
1811
- tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1812
- display:flex;
1813
- flex-direction:column;
1814
- }
2035
+ .tds-toggle-switch--hide-label{
2036
+ --tds-toggle-switch-display:inline-flex;
2037
+ }
1815
2038
 
1816
2039
  .tds-radio{
1817
2040
  --tds-radio-font-size:var(--t-font-size-md);
@@ -2010,186 +2233,46 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
2010
2233
  border-radius:var(--tds-input-scrollbar-thumb-border-radius);
2011
2234
  }
2012
2235
 
2013
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2014
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
2015
- }
2016
-
2017
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
2018
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
2019
- }
2020
-
2021
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
2022
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
2023
- }
2024
-
2025
- :is(.tds-input textarea)::-webkit-scrollbar-corner{
2026
- background:var(--tds-input-scrollbar-surface-color);
2027
- }
2028
-
2029
- :is(.tds-input textarea)::-webkit-resizer{
2030
- background:var(--tds-input-resizer-icon) no-repeat;
2031
- background-position:right bottom;
2032
- background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
2033
- }
2034
-
2035
- :is(.tds-input textarea)::-webkit-scrollbar-track{
2036
- margin-block:var(--tds-input-scrollbar-track-margin-block);
2037
- cursor:default;
2038
- }
2039
-
2040
- @supports (-moz-appearance: none){
2041
- :is(.tds-input textarea){
2042
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
2043
- scrollbar-width:thin;
2044
- }
2045
-
2046
- @media (hover){
2047
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2048
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
2049
- }
2050
- }
2051
- }
2052
- }
2053
-
2054
- .tds-toggle-switch{
2055
- --tds-toggle-switch-font-size:var(--t-font-size-md);
2056
- --tds-toggle-switch-cursor:pointer;
2057
- --tds-toggle-switch-display:inline-grid;
2058
- --tds-toggle-switch-line-height:1.4;
2059
-
2060
- --tds-toggle-switch-label-color:var(--t-form-color);
2061
-
2062
- --tds-toggle-switch-track-width:var(--t-container-size-md);
2063
- --tds-toggle-switch-track-outline:none;
2064
- --tds-toggle-switch-track-height:var(--t-container-size-xs);
2065
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
2066
- --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
2067
-
2068
- --tds-toggle-switch-thumb-size:var(--t-element-size-md);
2069
- --tds-toggle-switch-thumb-transform:translateX(0);
2070
- --tds-toggle-switch-thumb-transition:transform var(--t-duration-200) var(--t-ease-in-out);
2071
-
2072
- --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
2073
- --tds-toggle-switch-description-line-height:1.35;
2074
- --tds-toggle-switch-description-color:var(--t-text-color-secondary);
2075
- position:relative;
2076
-
2077
- display:var(--tds-toggle-switch-display);
2078
- grid-template-columns:auto;
2079
- grid-auto-columns:1fr;
2080
- gap:var(--t-spacing-fourth) 0;
2081
- -webkit-user-select:none;
2082
- -moz-user-select:none;
2083
- user-select:none;
2084
- }
2085
-
2086
- .tds-toggle-switch input[type="checkbox"]{
2087
- position:absolute;
2088
- width:var(--tds-toggle-switch-track-width);
2089
- height:var(--tds-toggle-switch-track-height);
2090
- margin:0;
2091
- -webkit-appearance:none;
2092
- -moz-appearance:none;
2093
- appearance:none;
2094
- cursor:var(--tds-toggle-switch-cursor);
2095
- outline:var(--tds-toggle-switch-track-outline);
2096
- outline-offset:var(--t-focus-ring-offset);
2097
- background-color:transparent;
2098
- border:0;
2099
- border-radius:var(--t-border-radius-round);
2100
- }
2101
-
2102
- :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
2103
- --tds-toggle-switch-track-outline:var(--t-focus-ring-outline);
2104
- }
2105
-
2106
- .tds-toggle-switch label{
2107
- display:inline-flex;
2108
- grid-area:1 / 2;
2109
- padding-inline-start:var(--t-spacing-1);
2110
- margin-top:-.09375em;
2111
- font-size:var(--tds-toggle-switch-font-size);
2112
- font-weight:var(--t-font-weight-normal);
2113
- line-height:var(--tds-toggle-switch-line-height);
2114
- color:var(--tds-toggle-switch-label-color);
2115
- cursor:var(--tds-toggle-switch-cursor);
2116
- }
2117
-
2118
- .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
2119
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
2120
- }
2121
-
2122
- .tds-toggle-switch:has(input:checked){
2123
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
2124
- --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
2125
- }
2126
-
2127
- .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
2128
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
2129
- }
2130
-
2131
- .tds-toggle-switch:has(input:disabled){
2132
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
2133
- --tds-toggle-switch-label-color:var(--t-form-color-disabled);
2134
- --tds-toggle-switch-description-color:var(--t-form-color-disabled);
2135
- --tds-toggle-switch-cursor:not-allowed;
2136
- }
2137
-
2138
- .tds-toggle-switch-track{
2139
- position:relative;
2140
- flex-shrink:0;
2141
- width:var(--tds-toggle-switch-track-width);
2142
- height:var(--tds-toggle-switch-track-height);
2143
- background-color:var(--tds-toggle-switch-track-background-color);
2144
- border-radius:var(--t-border-radius-round);
2145
- transition:var(--tds-toggle-switch-track-transition);
2146
- }
2147
-
2148
- .tds-toggle-switch-track::before{
2149
- position:absolute;
2150
- top:var(--t-spacing-fourth);
2151
- left:var(--t-spacing-fourth);
2152
- width:var(--tds-toggle-switch-thumb-size);
2153
- height:var(--tds-toggle-switch-thumb-size);
2154
- content:"";
2155
- background-color:#fff;
2156
- border-radius:var(--t-border-radius-round);
2157
- transform:var(--tds-toggle-switch-thumb-transform);
2158
- transition:var(--tds-toggle-switch-thumb-transition);
2159
- }
2236
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2237
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
2238
+ }
2160
2239
 
2161
- @media (prefers-reduced-motion: reduce){
2240
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
2241
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
2242
+ }
2162
2243
 
2163
- .tds-toggle-switch-track{
2164
- --tds-toggle-switch-track-transition:none;
2165
- --tds-toggle-switch-thumb-transition:none;
2166
- }
2167
- }
2244
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
2245
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
2246
+ }
2168
2247
 
2169
- .tds-toggle-switch-description{
2170
- display:flex;
2171
- grid-area:2 / 2;
2172
- align-items:flex-start;
2173
- padding-inline-start:var(--t-spacing-1);
2174
- margin:0;
2175
- font-size:var(--tds-toggle-switch-description-font-size);
2176
- line-height:var(--tds-toggle-switch-description-line-height);
2177
- color:var(--tds-toggle-switch-description-color);
2178
- cursor:text;
2179
- }
2248
+ :is(.tds-input textarea)::-webkit-scrollbar-corner{
2249
+ background:var(--tds-input-scrollbar-surface-color);
2250
+ }
2180
2251
 
2181
- .tds-toggle-switch--sm{
2182
- --tds-toggle-switch-font-size:var(--t-font-size-sm);
2183
- --tds-toggle-switch-line-height:1.35;
2184
- --tds-toggle-switch-track-height:var(--t-element-size-lg);
2185
- --tds-toggle-switch-thumb-size:var(--t-element-size-sm);
2186
- --tds-toggle-switch-description-font-size:var(--t-font-size-xs);
2187
- --tds-toggle-switch-description-line-height:1.3;
2188
- }
2252
+ :is(.tds-input textarea)::-webkit-resizer{
2253
+ background:var(--tds-input-resizer-icon) no-repeat;
2254
+ background-position:right bottom;
2255
+ background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
2256
+ }
2189
2257
 
2190
- .tds-toggle-switch--hide-label{
2191
- --tds-toggle-switch-display:inline-flex;
2192
- }
2258
+ :is(.tds-input textarea)::-webkit-scrollbar-track{
2259
+ margin-block:var(--tds-input-scrollbar-track-margin-block);
2260
+ cursor:default;
2261
+ }
2262
+
2263
+ @supports (-moz-appearance: none){
2264
+ :is(.tds-input textarea){
2265
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
2266
+ scrollbar-width:thin;
2267
+ }
2268
+
2269
+ @media (hover){
2270
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2271
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
2272
+ }
2273
+ }
2274
+ }
2275
+ }
2193
2276
 
2194
2277
  .tds-input{
2195
2278
  --tds-input-border-color:var(--t-form-border-color);
@@ -2328,89 +2411,6 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
2328
2411
  line-height:1.35;
2329
2412
  }
2330
2413
 
2331
- .tds-radio-group{
2332
- --tds-radio-group-font-size:var(--t-font-size-md);
2333
- --tds-radio-group-line-height:1.4;
2334
- --tds-radio-group-gap:var(--t-spacing-1);
2335
-
2336
- --tds-radio-group-description-font-size:var(--t-font-size-sm);
2337
- --tds-radio-group-description-line-height:1.35;
2338
- --tds-radio-group-description-color:var(--t-text-color-secondary);
2339
- --tds-radio-group-description-invalid-icon-display:none;
2340
- display:flex;
2341
- flex-direction:column;
2342
- gap:0;
2343
- padding:0;
2344
- margin:0;
2345
-
2346
- font-size:var(--tds-radio-group-font-size);
2347
- line-height:var(--tds-radio-group-line-height);
2348
- border:0;
2349
- }
2350
-
2351
- .tds-radio-group legend{
2352
- float:left;
2353
- padding:0;
2354
- margin:0;
2355
- }
2356
-
2357
- .tds-radio-group[aria-invalid="true"]{
2358
- --tds-radio-group-description-color:var(--t-text-color-status-error);
2359
- --tds-radio-group-description-invalid-icon-display:inline-block;
2360
- }
2361
-
2362
- .tds-radio-group[aria-invalid="true"] .tds-radio{
2363
- --tds-radio-input-border-color:var(--t-form-border-color-error);
2364
- }
2365
-
2366
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
2367
- --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
2368
- --tds-radio-input-background-color:var(--t-form-background-color-error);
2369
- }
2370
-
2371
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
2372
- --tds-radio-input-background-color:var(--t-icon-color-inverted);
2373
- }
2374
-
2375
- .tds-radio-group:has(input:required) legend::after{
2376
- margin-left:.25ch;
2377
- color:var(--t-text-color-status-error);
2378
- content:"*";
2379
- }
2380
-
2381
- .tds-radio-group-fields{
2382
- display:flex;
2383
- flex-direction:column;
2384
- gap:var(--tds-radio-group-gap);
2385
- align-items:flex-start;
2386
- margin-top:var(--t-spacing-1);
2387
- }
2388
-
2389
- .tds-radio-group-description{
2390
- display:flex;
2391
- gap:var(--t-spacing-half);
2392
- align-items:flex-start;
2393
- margin:var(--t-spacing-fourth) 0 0;
2394
- font-size:var(--tds-radio-group-description-font-size);
2395
- line-height:var(--tds-radio-group-description-line-height);
2396
- color:var(--tds-radio-group-description-color);
2397
- cursor:text;
2398
- }
2399
-
2400
- .tds-radio-group-description .tds-radio-group-description-invalid-icon{
2401
- display:var(--tds-radio-group-description-invalid-icon-display);
2402
- flex-shrink:0;
2403
- margin-top:calc(.5lh - .5em);
2404
- line-height:var(--tds-radio-group-description-line-height);
2405
- }
2406
-
2407
- .tds-radio-group--sm{
2408
- --tds-radio-group-line-height:1.35;
2409
- --tds-radio-group-font-size:var(--t-font-size-sm);
2410
- --tds-radio-group-description-font-size:var(--t-font-size-xs);
2411
- --tds-radio-group-description-line-height:1.3;
2412
- }
2413
-
2414
2414
  @layer t-critical, t-component;
2415
2415
 
2416
2416
  :root{
@@ -3994,48 +3994,6 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
3994
3994
  [data-padding-inline-xl="7"]{ padding-inline:var(--t-spacing-7); }
3995
3995
  }
3996
3996
 
3997
- .tds-popover{
3998
- max-inline-size:24rem;
3999
- overflow:auto;
4000
- overscroll-behavior:none;
4001
- outline:0;
4002
- scrollbar-color:#0004 var(--t-surface-color-card);
4003
- scrollbar-width:thin;
4004
- background:var(--t-surface-color-card);
4005
- background-clip:padding-box;
4006
- border:1px solid var(--t-border-color);
4007
- border-radius:var(--t-border-radius);
4008
- box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
4009
- }
4010
-
4011
- @media (prefers-reduced-motion: no-preference){
4012
- .tds-popover[data-entering]{
4013
- animation:tds-popover var(--t-duration-300) var(--t-ease-out);
4014
- }
4015
-
4016
- .tds-popover[data-exiting]{
4017
- animation:tds-popover var(--t-duration-200) var(--t-ease-in) reverse;
4018
- }
4019
-
4020
- .tds-popover[data-entering],.tds-popover[data-exiting]{
4021
- will-change:opacity, transform;
4022
- }
4023
-
4024
- @keyframes tds-popover{
4025
- from{
4026
- opacity:0;
4027
- transform:translateY(-8px);
4028
- }
4029
- }
4030
- }
4031
-
4032
- .tds-popover-content{
4033
- display:flex;
4034
- flex-direction:column;
4035
- padding:var(--t-spacing-1);
4036
- outline:0;
4037
- }
4038
-
4039
3997
  .tds-segmented-control{
4040
3998
  --tds-segmented-control-font-size:var(--t-font-size-md);
4041
3999
  --tds-segmented-control-padding:var(--t-spacing-half);
@@ -4581,6 +4539,48 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
4581
4539
  max-block-size:inherit;
4582
4540
  }
4583
4541
 
4542
+ .tds-popover{
4543
+ max-inline-size:24rem;
4544
+ overflow:auto;
4545
+ overscroll-behavior:none;
4546
+ outline:0;
4547
+ scrollbar-color:#0004 var(--t-surface-color-card);
4548
+ scrollbar-width:thin;
4549
+ background:var(--t-surface-color-card);
4550
+ background-clip:padding-box;
4551
+ border:1px solid var(--t-border-color);
4552
+ border-radius:var(--t-border-radius);
4553
+ box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
4554
+ }
4555
+
4556
+ @media (prefers-reduced-motion: no-preference){
4557
+ .tds-popover[data-entering]{
4558
+ animation:tds-popover var(--t-duration-300) var(--t-ease-out);
4559
+ }
4560
+
4561
+ .tds-popover[data-exiting]{
4562
+ animation:tds-popover var(--t-duration-200) var(--t-ease-in) reverse;
4563
+ }
4564
+
4565
+ .tds-popover[data-entering],.tds-popover[data-exiting]{
4566
+ will-change:opacity, transform;
4567
+ }
4568
+
4569
+ @keyframes tds-popover{
4570
+ from{
4571
+ opacity:0;
4572
+ transform:translateY(-8px);
4573
+ }
4574
+ }
4575
+ }
4576
+
4577
+ .tds-popover-content{
4578
+ display:flex;
4579
+ flex-direction:column;
4580
+ padding:var(--t-spacing-1);
4581
+ outline:0;
4582
+ }
4583
+
4584
4584
  .tds-pagination{
4585
4585
  --tds-pagination-background-color:var(--t-surface-color-canvas);
4586
4586
  --tds-pagination-page-background-color-hover:var(--t-fill-color-neutral-100);
@@ -5781,7 +5781,7 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
5781
5781
  .tds-combo-box-field:has([readonly]) .tds-combo-box-button{
5782
5782
  display:none;
5783
5783
  }
5784
- .tds-combo-box-field:has(.tds-combo-box-search-icon){
5784
+ .tds-combo-box-field:has(.tds-combo-box-search-icon, .tds-combo-box-clear-button){
5785
5785
  position:relative;
5786
5786
  }
5787
5787
  .tds-combo-box-search-icon{
@@ -5819,6 +5819,9 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
5819
5819
  .tds-combo-box-input:has( + .tds-combo-box-button){
5820
5820
  padding-inline-end:0;
5821
5821
  }
5822
+ .tds-combo-box-input:has( + .tds-combo-box-clear-button){
5823
+ padding-inline-end:calc(var(--tds-field-padding-inline) + var(--tds-field-min-height));
5824
+ }
5822
5825
  .tds-combo-box-input::-moz-placeholder{
5823
5826
  color:var(--tds-field-placeholder-color);
5824
5827
  -moz-user-select:none;
@@ -5843,6 +5846,28 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
5843
5846
  block-size:var(--tds-field-font-size);
5844
5847
  transition:transform var(--t-duration-300) var(--t-ease-in-out);
5845
5848
  }
5849
+ .tds-combo-box-clear-button{
5850
+ --tds-btn-color:var(--t-icon-color-dim);
5851
+ --tds-btn-padding-truncated-x:0;
5852
+ --tds-combo-box-clear-button-visibility:hidden;
5853
+
5854
+ position:absolute;
5855
+ inset-block:0;
5856
+ inset-inline-end:var(--tds-combo-box-button-offset);
5857
+ visibility:var(--tds-combo-box-clear-button-visibility);
5858
+ inline-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
5859
+ block-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
5860
+ margin-block:auto;
5861
+ }
5862
+
5863
+ .tds-combo-box-field:is(:hover, :has(input:focus)) .tds-combo-box-clear-button:not([data-input-empty]){
5864
+ --tds-combo-box-clear-button-visibility:visible;
5865
+ }
5866
+
5867
+ .tds-combo-box-clear-icon{
5868
+ inline-size:calc(var(--tds-field-font-size) * .8);
5869
+ block-size:calc(var(--tds-field-font-size) * .8);
5870
+ }
5846
5871
  .tds-combo-box-popover{
5847
5872
  width:var(--trigger-width);
5848
5873
  max-block-size:inherit;