@planningcenter/tapestry 4.2.0-rc.11 → 4.2.0-rc.13

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,6 +677,357 @@
677
677
  [data-padding-inline-xl="7"]{ padding-inline:var(--t-spacing-7); }
678
678
  }
679
679
 
680
+ @layer t-critical{
681
+ tds-page-header:not(.hydrated){
682
+ display:none;
683
+ }
684
+ }
685
+
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;
704
+
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);
707
+
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);
711
+
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);
714
+
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);
724
+ }
725
+
726
+ .tds-page-header--profile{
727
+ --tds-page-header-padding-y:20px;
728
+ }
729
+
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));
734
+ }
735
+ }
736
+
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);
755
+ }
756
+ }
757
+ }
758
+
759
+ .tds-page-header{
760
+ display:flex;
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);
766
+ }
767
+
768
+ .tds-page-header:not(.has-nav){
769
+ padding-bottom:var(--tds-page-header-padding-y);
770
+ }
771
+
772
+ .tds-page-header.inactive{
773
+ background:var(--tds-page-header-background-color-inactive);
774
+ }
775
+
776
+ .tds-page-header :is([slot="actions"],.tds-page-header__actions){
777
+ width:100%;
778
+ }
779
+
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;
787
+ }
788
+
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
+ }
798
+
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
+ }
819
+
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
+ }
826
+
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
+ }
833
+
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
+ }
839
+
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
+ }
847
+
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
+ }
858
+
859
+ :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator){
860
+ position:relative;
861
+ }
862
+
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
+ }
867
+
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{
886
+ display:flex;
887
+ flex-direction:column;
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);
892
+ }
893
+
894
+ .tds-page-header--profile > .tds-page-header__title-bar{
895
+ align-items:center;
896
+ }
897
+
898
+ .tds-page-header__primary{
899
+ width:100%;
900
+ }
901
+
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
+ }
910
+
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
+ }
918
+
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
+ }
928
+
929
+ .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
930
+ justify-content:flex-end;
931
+ }
932
+ }
933
+
934
+ .tds-page-header-phone,
935
+ .tds-page-header-email{
936
+ color:var(--tds-page-header-color);
937
+ white-space:nowrap;
938
+ }
939
+ .tds-page-header-email{
940
+ max-width:100%;
941
+ overflow:hidden;
942
+ text-overflow:ellipsis;
943
+ }
944
+
945
+ @keyframes indicator-pulse{
946
+ 0%{
947
+ opacity:.3;
948
+ transform:scale(.9);
949
+ }
950
+
951
+ 100%{
952
+ opacity:0;
953
+ transform:scale(1.75);
954
+ }
955
+ }
956
+
957
+ .tds-checkbox-group{
958
+ --tds-checkbox-group-font-size:var(--t-font-size-md);
959
+ --tds-checkbox-group-line-height:1.4;
960
+ --tds-checkbox-group-gap:var(--t-spacing-1);
961
+
962
+ --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
963
+ --tds-checkbox-group-description-line-height:1.35;
964
+ --tds-checkbox-group-description-color:var(--t-text-color-secondary);
965
+ --tds-checkbox-group-description-invalid-icon-display:none;
966
+ display:flex;
967
+ flex-direction:column;
968
+ gap:0;
969
+ padding:0;
970
+ margin:0;
971
+
972
+ font-size:var(--tds-checkbox-group-font-size);
973
+ line-height:var(--tds-checkbox-group-line-height);
974
+ border:0;
975
+ }
976
+
977
+ .tds-checkbox-group legend{
978
+ float:left;
979
+ padding:0;
980
+ margin:0;
981
+ }
982
+
983
+ .tds-checkbox-group[aria-invalid="true"]{
984
+ --tds-checkbox-group-description-color:var(--t-text-color-status-error);
985
+ --tds-checkbox-group-description-invalid-icon-display:inline-block;
986
+ }
987
+
988
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
989
+ margin-left:.25ch;
990
+ color:var(--t-text-color-status-error);
991
+ content:"*";
992
+ }
993
+
994
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
995
+ content:none;
996
+ }
997
+
998
+ .tds-checkbox-group-fields{
999
+ display:flex;
1000
+ flex-direction:column;
1001
+ gap:var(--tds-checkbox-group-gap);
1002
+ align-items:flex-start;
1003
+ margin-top:var(--t-spacing-1);
1004
+ }
1005
+
1006
+ .tds-checkbox-group-description{
1007
+ display:flex;
1008
+ gap:var(--t-spacing-half);
1009
+ align-items:flex-start;
1010
+ margin:var(--t-spacing-fourth) 0 0;
1011
+ font-size:var(--tds-checkbox-group-description-font-size);
1012
+ line-height:var(--tds-checkbox-group-description-line-height);
1013
+ color:var(--tds-checkbox-group-description-color);
1014
+ cursor:text;
1015
+ }
1016
+
1017
+ .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
1018
+ display:var(--tds-checkbox-group-description-invalid-icon-display);
1019
+ flex-shrink:0;
1020
+ margin-top:calc(.5lh - .5em);
1021
+ line-height:var(--tds-checkbox-group-description-line-height);
1022
+ }
1023
+
1024
+ .tds-checkbox-group--sm{
1025
+ --tds-checkbox-group-line-height:1.35;
1026
+ --tds-checkbox-group-font-size:var(--t-font-size-sm);
1027
+ --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
1028
+ --tds-checkbox-group-description-line-height:1.3;
1029
+ }
1030
+
680
1031
  .tds-button-group{
681
1032
  display:inline-flex;
682
1033
  }
@@ -914,511 +1265,389 @@
914
1265
  --tds-checkbox-description-line-height:1.3;
915
1266
  }
916
1267
 
917
- .tds-checkbox-group{
918
- --tds-checkbox-group-font-size:var(--t-font-size-md);
919
- --tds-checkbox-group-line-height:1.4;
920
- --tds-checkbox-group-gap:var(--t-spacing-1);
921
-
922
- --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
923
- --tds-checkbox-group-description-line-height:1.35;
924
- --tds-checkbox-group-description-color:var(--t-text-color-secondary);
925
- --tds-checkbox-group-description-invalid-icon-display:none;
926
- display:flex;
927
- flex-direction:column;
928
- gap:0;
929
- padding:0;
930
- margin:0;
931
-
932
- font-size:var(--tds-checkbox-group-font-size);
933
- line-height:var(--tds-checkbox-group-line-height);
934
- border:0;
935
- }
936
-
937
- .tds-checkbox-group legend{
938
- float:left;
939
- padding:0;
940
- margin:0;
941
- }
942
-
943
- .tds-checkbox-group[aria-invalid="true"]{
944
- --tds-checkbox-group-description-color:var(--t-text-color-status-error);
945
- --tds-checkbox-group-description-invalid-icon-display:inline-block;
946
- }
947
-
948
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
949
- margin-left:.25ch;
950
- color:var(--t-text-color-status-error);
951
- content:"*";
952
- }
953
1268
 
954
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
955
- content:none;
956
- }
957
-
958
- .tds-checkbox-group-fields{
959
- display:flex;
960
- flex-direction:column;
961
- gap:var(--tds-checkbox-group-gap);
962
- align-items:flex-start;
963
- margin-top:var(--t-spacing-1);
964
- }
1269
+ @media (prefers-reduced-motion: no-preference){
965
1270
 
966
- .tds-checkbox-group-description{
967
- display:flex;
968
- gap:var(--t-spacing-half);
969
- align-items:flex-start;
970
- margin:var(--t-spacing-fourth) 0 0;
971
- font-size:var(--tds-checkbox-group-description-font-size);
972
- line-height:var(--tds-checkbox-group-description-line-height);
973
- color:var(--tds-checkbox-group-description-color);
974
- cursor:text;
1271
+ :root{
1272
+ interpolate-size:allow-keywords;
975
1273
  }
976
-
977
- .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
978
- display:var(--tds-checkbox-group-description-invalid-icon-display);
979
- flex-shrink:0;
980
- margin-top:calc(.5lh - .5em);
981
- line-height:var(--tds-checkbox-group-description-line-height);
982
1274
  }
983
1275
 
984
- .tds-checkbox-group--sm{
985
- --tds-checkbox-group-line-height:1.35;
986
- --tds-checkbox-group-font-size:var(--t-font-size-sm);
987
- --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
988
- --tds-checkbox-group-description-line-height:1.3;
989
- }
1276
+ @layer tds-component{
1277
+ tds-sidenav,
1278
+ .tds-sidenav{
1279
+ --tds-sidenav-indent:12px;
1280
+ --tds-sidenav-item-depth:0;
990
1281
 
991
- @layer t-critical{
992
- tds-page-header:not(.hydrated){
993
- display:none;
994
- }
995
- }
1282
+ --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
996
1283
 
997
- @layer t-component{
998
- .tds-page-header{
999
- --tds-page-header-background-color:var(--t-fill-color-product-current-gradient-tint, var(--t-surface-color-canvas));
1000
- --tds-page-header-background-color-inactive:var(--t-fill-color-neutral-090);
1001
- --tds-page-header-color:var(--t-text-color);
1002
- --tds-page-header-bottom-border-color:transparent;
1003
- --tds-page-header-headline-color:var(--t-text-color-headline);
1004
- --tds-page-header-headline-font-size:var(--t-font-size-2xl);
1005
- --tds-page-header-padding-x:var(--t-spacing-2);
1006
- --tds-page-header-padding-y:var(--t-spacing-2);
1007
- --tds-page-header-nav-padding-x:var(--tds-page-header-padding-x, var(--t-spacing-3));
1008
- --tds-page-header-nav-gap:var(--t-spacing-1);
1009
- --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%);
1010
- --tds-page-header-nav-item-padding-x:var(--t-spacing-1);
1011
- --tds-page-header-nav-item-padding-y:var(--t-spacing-1);
1012
- --tds-page-header-nav-item-color:var(--t-text-color-secondary);
1013
- --tds-page-header-nav-item-background-color:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 35%);
1014
- --tds-page-header-nav-item-border-width:1px;
1284
+ --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;
1285
+ --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;
1286
+ --tds-sidenav-collapse-closed-opacity:0;
1287
+ --tds-sidenav-collapse-open-opacity:1;
1288
+ --tds-sidenav-collapse-closed-transform:translateY(-8px);
1289
+ --tds-sidenav-collapse-open-transform:translateY(0);
1015
1290
 
1016
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-background-color);
1017
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color);
1291
+ --tds-sidenav-item-icon-size:var(--t-element-size-md);
1292
+ --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
1293
+ --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
1294
+ --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
1018
1295
 
1019
- --tds-page-header-nav-item-color-hover:var(--t-text-color);
1020
- --tds-page-header-nav-item-background-color-hover:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 20%);
1021
- --tds-page-header-nav-item-border-color-hover:var(--tds-page-header-nav-item-background-color-hover);
1296
+ --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
1297
+ --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
1298
+ --tds-sidenav-item-nested-background-selected:transparent;
1022
1299
 
1023
- --tds-page-header-nav-item-background-color-active:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 10%);
1024
- --tds-page-header-nav-item-border-color-active:var(--tds-page-header-nav-item-background-color-active);
1300
+ --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
1301
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1302
+ --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
1025
1303
 
1026
- --tds-page-header-nav-item-color-disabled:var(--t-text-color-disabled);
1027
- --tds-page-header-nav-item-background-color-disabled:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 50%);
1028
- --tds-page-header-nav-item-border-color-disabled:var(--tds-page-header-nav-item-background-color-disabled);
1304
+ --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
1305
+ --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
1306
+ }
1029
1307
 
1030
- --tds-page-header-nav-item-color-selected:var(--t-text-color);
1031
- --tds-page-header-nav-item-background-color-selected:var(--t-surface-color-canvas);
1032
- --tds-page-header-nav-item-border-color-selected:var(--tds-page-header-nav-item-background-color-selected);
1033
- --tds-page-header-nav-item-border-bottom-color-selected:var(--tds-page-header-nav-item-background-color-selected);
1034
- --tds-page-header-nav-item-indicator-color:var(--t-icon-color-status-warning);
1308
+ @media (prefers-reduced-motion: reduce){
1309
+ tds-sidenav,
1310
+ .tds-sidenav{
1311
+ --tds-sidenav-collapse-transition-enter:none;
1312
+ --tds-sidenav-collapse-transition-exit:none;
1313
+ --tds-sidenav-collapse-closed-transform:none;
1314
+ --tds-sidenav-collapse-open-transform:none;
1035
1315
  }
1316
+ }
1036
1317
 
1037
- .tds-page-header--profile{
1038
- --tds-page-header-padding-y:20px;
1318
+ .tds-sidenav--theme-gray{
1319
+ --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
1320
+ --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
1321
+ --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
1322
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1323
+ --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
1039
1324
  }
1325
+ }
1040
1326
 
1041
- @supports (color: light-dark(#fff, #000)){
1042
- .tds-page-header{
1043
- --tds-page-header-nav-background-start:light-dark(rgba(0, 0, 0, 0), rgba(255, 255, 255, 0));
1044
- --tds-page-header-nav-background-end:light-dark(rgba(0, 0, 0, .05), rgba(255, 255, 255, .1));
1045
- }
1327
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section){
1328
+ display:flex;
1046
1329
  }
1047
1330
 
1048
- @media (min-width: 600px){
1049
- .tds-page-header{
1050
- --tds-page-header-background-color:var(--t-surface-color-canvas);
1051
- --tds-page-header-color:var(--t-text-color-secondary);
1052
- --tds-page-header-bottom-border-color:var(--t-border-color);
1053
- --tds-page-header-padding-x:var(--t-spacing-3);
1054
- --tds-page-header-headline-font-size:var(--t-font-size-3xl);
1055
- --tds-page-header-nav-gap:var(--t-spacing-half);
1056
- --tds-page-header-nav-background:transparent;
1057
- --tds-page-header-nav-item-padding-x:var(--t-spacing-2);
1058
- --tds-page-header-nav-item-border-width:1px;
1059
- --tds-page-header-nav-item-color:var(--t-text-color);
1060
- --tds-page-header-nav-item-background-color:var(--t-fill-color-neutral-070);
1061
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-bottom-border-color);
1062
- --tds-page-header-nav-item-background-color-hover:var(--t-fill-color-neutral-060);
1063
- --tds-page-header-nav-item-background-color-active:var(--t-fill-color-neutral-050);
1064
- --tds-page-header-nav-item-background-color-disabled:var(--t-fill-color-neutral-080);
1065
- --tds-page-header-nav-item-border-color-selected:var(--t-border-color);
1066
- }
1331
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
1332
+ flex-direction:column;
1333
+ gap:var(--t-spacing-half);
1334
+ width:100%;
1067
1335
  }
1336
+
1337
+ .tds-sidenav-section-list{
1338
+ width:100%;
1339
+ padding:0;
1340
+ margin:0;
1341
+ list-style:none;
1068
1342
  }
1069
1343
 
1070
- .tds-page-header{
1344
+ .tds-sidenav-section-header{
1071
1345
  display:flex;
1072
- flex-direction:column;
1073
- padding-top:var(--tds-page-header-padding-y);
1074
- color:var(--tds-page-header-color);
1075
- background:var(--tds-page-header-background-color);
1076
- border-bottom:1px solid var(--tds-page-header-bottom-border-color);
1346
+ align-items:baseline;
1347
+ justify-content:space-between;
1348
+ padding-top:var(--t-spacing-2);
1077
1349
  }
1078
1350
 
1079
- .tds-page-header:not(.has-nav){
1080
- padding-bottom:var(--tds-page-header-padding-y);
1081
- }
1082
-
1083
- .tds-page-header.inactive{
1084
- background:var(--tds-page-header-background-color-inactive);
1351
+ .tds-sidenav-section-header h2{
1352
+ margin:0;
1353
+ font-size:var(--t-font-size-sm);
1354
+ font-weight:var(--t-font-weight-semibold);
1355
+ line-height:1.35;
1356
+ color:var(--t-text-color-secondary);
1357
+ text-transform:uppercase;
1085
1358
  }
1086
1359
 
1087
- .tds-page-header :is([slot="actions"],.tds-page-header__actions){
1088
- width:100%;
1360
+ .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
1361
+ padding-top:0;
1089
1362
  }
1090
1363
 
1091
- .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
1364
+ .tds-sidenav-section-header [slot="label-actions"]{
1092
1365
  display:flex;
1093
- flex-flow:row wrap;
1094
- gap:var(--t-spacing-half) var(--t-spacing-1);
1095
- align-items:flex-start;
1096
- justify-content:flex-start;
1097
- min-width:0;
1366
+ gap:var(--t-spacing-half);
1367
+ align-items:center;
1098
1368
  }
1099
1369
 
1100
- :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{
1101
- display:flex;
1102
- gap:var(--tds-page-header-nav-gap);
1103
- padding:var(--t-spacing-2) var(--tds-page-header-nav-padding-x) 0;
1104
- margin:0 0 -1px;
1105
- overflow:auto;
1106
- list-style:none;
1107
- background:var(--tds-page-header-nav-background);
1108
- }
1109
-
1110
- :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button){
1111
- position:relative;
1112
- display:inline-flex;
1113
- padding:var(--tds-page-header-nav-item-padding-y) var(--tds-page-header-nav-item-padding-x);
1114
- font-size:var(--t-font-size-sm);
1115
- line-height:22px;
1116
- color:var(--tds-page-header-nav-item-color);
1117
- white-space:nowrap;
1118
- text-decoration:none;
1119
- -webkit-appearance:none;
1120
- -moz-appearance:none;
1121
- appearance:none;
1122
- cursor:pointer;
1123
- outline-offset:-2px;
1124
- background-color:var(--tds-page-header-nav-item-background-color);
1125
- background-clip:padding-box;
1126
- border:var(--tds-page-header-nav-item-border-width) solid var(--tds-page-header-nav-item-border-color);
1127
- border-bottom:1px solid var(--tds-page-header-nav-item-border-bottom-color);
1128
- border-radius:var(--t-border-radius-md) var(--t-border-radius-md) 0 0;
1129
- }
1130
-
1131
- .selected:is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)){
1132
- --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-selected);
1133
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-selected);
1134
- --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-selected);
1135
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-selected);
1136
- }
1137
-
1138
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):hover{
1139
- --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-hover);
1140
- --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-hover);
1141
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-hover);
1142
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-hover);
1143
- }
1370
+ .tds-sidenav-section [slot="section-actions"]{
1371
+ display:flex;
1372
+ gap:12px;
1373
+ align-items:center;
1374
+ min-height:42px;
1375
+ padding:var(--t-spacing-1) 0;
1376
+ }
1144
1377
 
1145
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):active{
1146
- background-color:var(--tds-page-header-nav-item-background-color-active);
1147
- border-color:var(--tds-page-header-nav-item-border-color-active);
1148
- border-bottom-color:var(--tds-page-header-nav-item-background-color-active);
1149
- }
1378
+ .tds-sidenav-section-list,
1379
+ .tds-sidenav-item{
1380
+ width:100%;
1381
+ padding:0;
1382
+ margin:0;
1383
+ }
1150
1384
 
1151
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):disabled{
1152
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-disabled);
1153
- color:var(--tds-page-header-nav-item-color-disabled);
1154
- cursor:not-allowed;
1155
- background-color:var(--tds-page-header-nav-item-background-color-disabled);
1156
- opacity:1;
1157
- }
1385
+ .tds-sidenav-item :is(a,button){
1386
+ position:relative;
1387
+ display:flex;
1388
+ gap:12px;
1389
+ align-items:center;
1390
+ width:100%;
1391
+ padding:12px;
1392
+ overflow:hidden;
1393
+ font-size:var(--t-font-size-sm);
1394
+ line-height:18px;
1395
+ color:var(--t-text-color-headline);
1396
+ white-space:nowrap;
1397
+ text-decoration:none;
1398
+ -webkit-appearance:none;
1399
+ -moz-appearance:none;
1400
+ appearance:none;
1401
+ cursor:pointer;
1402
+ background-color:var(--tds-sidenav-item-background, transparent);
1403
+ border:0;
1404
+ border-radius:var(--t-border-radius);
1405
+ transition:var(--tds-sidenav-item-transition);
1406
+ }
1158
1407
 
1159
- @media (min-width: 600px){
1160
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected)::after{
1161
- position:absolute;
1162
- inset:auto -1px -1px;
1163
- height:1px;
1164
- pointer-events:none;
1165
- content:"";
1166
- background-color:var(--tds-page-header-bottom-border-color);
1167
- }
1168
- }
1408
+ :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
1409
+ display:block;
1410
+ flex:1;
1411
+ overflow:hidden;
1412
+ text-overflow:ellipsis;
1413
+ text-align:left;
1414
+ white-space:nowrap;
1415
+ }
1169
1416
 
1170
- :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator){
1171
- position:relative;
1417
+ :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
1418
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
1419
+ color:var(--t-text-color-headline);
1420
+ text-decoration:none;
1172
1421
  }
1173
1422
 
1174
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator)) :is(a,button){
1175
- -webkit-mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
1176
- mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
1177
- }
1423
+ :is(.tds-sidenav-item :is(a,button)):active{
1424
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
1425
+ }
1178
1426
 
1179
- :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{
1180
- position:absolute;
1181
- top:-5px;
1182
- right:-2px;
1183
- width:10px;
1184
- height:10px;
1185
- content:"";
1186
- background:var(--tds-page-header-nav-item-indicator-color);
1187
- border-radius:50%;
1188
- }
1427
+ :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
1428
+ overflow:hidden;
1429
+ color:var(--tds-sidenav-item-icon-color);
1430
+ }
1189
1431
 
1190
- @media (prefers-reduced-motion: no-preference){
1191
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::after{
1192
- animation:indicator-pulse 1.25s ease infinite;
1193
- }
1432
+ :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{
1433
+ display:block;
1434
+ width:var(--tds-sidenav-item-icon-size);
1435
+ height:var(--tds-sidenav-item-icon-size);
1194
1436
  }
1195
1437
 
1196
- .tds-page-header__title-bar{
1197
- display:flex;
1198
- flex-direction:column;
1199
- gap:var(--t-spacing-2) var(--t-spacing-1);
1200
- align-items:flex-start;
1201
- justify-content:space-between;
1202
- padding:0 var(--tds-page-header-padding-x);
1203
- }
1438
+ :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
1439
+ --tds-sidenav-indent:19px;
1440
+ }
1204
1441
 
1205
- .tds-page-header--profile > .tds-page-header__title-bar{
1206
- align-items:center;
1207
- }
1442
+ [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
1443
+ visibility:visible;
1444
+ block-size:auto;
1445
+ opacity:1;
1446
+ }
1208
1447
 
1209
- .tds-page-header__primary{
1210
- width:100%;
1211
- }
1448
+ .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
1449
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
1450
+ --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
1212
1451
 
1213
- .tds-page-header__primary h1{
1214
- margin:0;
1215
- font-size:var(--tds-page-header-headline-font-size);
1216
- font-weight:var(--t-font-weight-normal);
1217
- line-height:32px;
1218
- color:var(--tds-page-header-headline-color);
1219
- overflow-wrap:break-word;
1452
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
1453
+ font-weight:var(--t-font-weight-semibold);
1220
1454
  }
1221
1455
 
1222
- @media (min-width: 960px){
1223
- .tds-page-header__primary{
1224
- flex:1 1 max-content;
1225
- width:auto;
1226
- min-width:0;
1227
- max-width:100%;
1456
+ .tds-sidenav-item:has(.tds-sidenav-section){
1457
+ display:flex;
1458
+ flex-direction:column;
1459
+ gap:var(--t-spacing-half);
1228
1460
  }
1229
1461
 
1230
- .tds-page-header__title-bar,
1231
- .tds-page-header--profile .tds-page-header__title-bar{
1232
- flex-flow:row nowrap;
1233
- row-gap:12px;
1234
- align-items:flex-start;
1462
+ .tds-sidenav-item .tds-sidenav-section-list{
1463
+ --tds-sidenav-item-depth:1;
1464
+ gap:0;
1235
1465
  }
1236
- .tds-page-header :is([slot="actions"],.tds-page-header__actions){
1237
- width:auto;
1466
+
1467
+ .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
1468
+ visibility:hidden;
1469
+ block-size:0;
1470
+ overflow-y:clip;
1471
+ opacity:0;
1472
+ transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
1238
1473
  }
1239
1474
 
1240
- .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
1241
- justify-content:flex-end;
1475
+ :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
1476
+ --tds-sidenav-item-depth:2;
1242
1477
  }
1243
- }
1244
1478
 
1245
- .tds-page-header-phone,
1246
- .tds-page-header-email{
1247
- color:var(--tds-page-header-color);
1248
- white-space:nowrap;
1249
- }
1250
- .tds-page-header-email{
1251
- max-width:100%;
1252
- overflow:hidden;
1253
- text-overflow:ellipsis;
1254
- }
1479
+ :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1480
+ min-height:var(--t-element-size-2xl);
1481
+ padding-block:9px;
1482
+ padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
1483
+ line-height:1;
1484
+ background-color:transparent;
1485
+ }
1255
1486
 
1256
- @keyframes indicator-pulse{
1257
- 0%{
1258
- opacity:.3;
1259
- transform:scale(.9);
1260
- }
1487
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
1488
+ position:absolute;
1489
+ top:0;
1490
+ bottom:0;
1491
+ left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1492
+ width:2px;
1493
+ content:"";
1494
+ background-color:var(--tds-sidenav-item-nested-border-color);
1495
+ transition:var(--tds-sidenav-item-transition);
1496
+ }
1261
1497
 
1262
- 100%{
1263
- opacity:0;
1264
- transform:scale(1.75);
1265
- }
1266
- }
1498
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
1499
+ position:absolute;
1500
+ inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1501
+ z-index:-1;
1502
+ height:100%;
1503
+ content:"";
1504
+ background-color:var(--tds-sidenav-item-nested-background);
1505
+ border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
1506
+ transition:var(--tds-sidenav-item-transition);
1507
+ }
1267
1508
 
1509
+ :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)){
1510
+ display:block;
1511
+ text-align:left;
1512
+ white-space:normal;
1513
+ }
1268
1514
 
1269
- :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{
1270
- -webkit-appearance:none;
1271
- appearance:none;
1272
- }
1515
+ :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{
1516
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
1517
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
1518
+ }
1273
1519
 
1274
- [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
1275
- inline-size:1em;
1276
- block-size:2em;
1520
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
1521
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
1522
+ }
1523
+
1524
+ .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1525
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
1526
+ font-weight:var(--t-font-weight-medium);
1277
1527
  }
1278
- @supports (field-sizing: content){
1279
- .tds-input--auto-width{
1280
- inline-size:-moz-fit-content;
1281
- inline-size:fit-content;
1282
- min-inline-size:min(100%, 122px);
1283
- }
1284
1528
 
1285
- .tds-input--auto-width input{
1286
- field-sizing:content;
1287
- inline-size:auto;
1288
- }
1529
+ .tds-sidenav-responsive-header{
1530
+ display:flex;
1531
+ gap:var(--t-spacing-2);
1532
+ align-items:center;
1533
+ width:100%;
1289
1534
  }
1290
1535
 
1291
- .tds-radio{
1292
- --tds-radio-font-size:var(--t-font-size-md);
1293
- --tds-radio-cursor:pointer;
1294
- --tds-radio-line-height:1.4;
1295
- --tds-radio-transition-property:border-width;
1296
-
1297
- --tds-radio-input-size:var(--t-element-size-md);
1298
- --tds-radio-input-border-radius:var(--t-border-radius-round);
1299
- --tds-radio-input-border-color:var(--t-form-border-color);
1300
- --tds-radio-input-border-width:var(--t-form-border-width);
1301
- --tds-radio-input-background-color:var(--t-form-background-color);
1302
-
1303
- --tds-radio-label-color:var(--t-form-color);
1536
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
1537
+ order:0;
1538
+ }
1304
1539
 
1305
- --tds-radio-description-font-size:var(--t-font-size-sm);
1306
- --tds-radio-description-line-height:1.35;
1307
- --tds-radio-description-color:var(--t-text-color-secondary);
1540
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
1541
+ flex:1;
1542
+ order:1;
1543
+ margin:0;
1544
+ font-size:var(--t-font-size-lg);
1545
+ font-weight:var(--t-font-weight-medium);
1546
+ color:var(--t-text-color-headline);
1547
+ }
1308
1548
 
1309
- position:relative;
1310
- display:inline-grid;
1311
- grid-template-columns:auto;
1312
- grid-auto-columns:1fr;
1313
- gap:var(--t-spacing-fourth) 0;
1314
- line-height:var(--tds-radio-line-height);
1315
- -webkit-user-select:none;
1316
- -moz-user-select:none;
1317
- user-select:none;
1318
- }
1549
+ @media (max-width: 719px){
1550
+ .tds-sidenav-collapse{
1551
+ z-index:10001;
1552
+ display:none;
1553
+ max-width:min(448px, calc(100vw - 48px));
1554
+ padding:0;
1555
+ margin:12px 0;
1556
+ position-area:bottom span-right;
1557
+ overflow:hidden;
1558
+ outline:0;
1559
+ background:var(--t-surface-color-card);
1560
+ border:0;
1561
+ border-radius:6px;
1562
+ box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
1563
+ opacity:var(--tds-sidenav-collapse-open-opacity);
1564
+ transform:var(--tds-sidenav-collapse-open-transform);
1565
+ transition:var(--tds-sidenav-collapse-transition-enter);
1566
+ will-change:transform;
1567
+ }
1319
1568
 
1320
- .tds-radio label{
1321
- grid-area:1 / 2;
1322
- padding-inline-start:var(--t-spacing-1);
1323
- font-size:var(--tds-radio-font-size);
1324
- font-weight:var(--t-font-weight-normal);
1325
- color:var(--tds-radio-label-color);
1326
- cursor:var(--tds-radio-cursor);
1569
+ .tds-sidenav-scroll-container{
1570
+ --webkit-overflow-scrolling:touch;
1571
+ display:block;
1572
+ width:100%;
1573
+ height:-moz-fit-content;
1574
+ height:fit-content;
1575
+ padding:var(--t-spacing-2);
1576
+ overflow-y:auto;
1327
1577
  }
1328
1578
 
1329
- .tds-radio input[type="radio"]{
1330
- position:relative;
1331
- width:1em;
1332
- height:1em;
1333
- margin:calc((1lh - 1em) / 2) 0 0;
1334
- font-size:var(--tds-radio-font-size);
1335
- line-height:inherit;
1336
- -webkit-appearance:none;
1337
- -moz-appearance:none;
1338
- appearance:none;
1339
- cursor:var(--tds-radio-cursor);
1340
- background-color:var(--tds-radio-input-background-color);
1341
- border:var(--tds-radio-input-border-width) solid var(--tds-radio-input-border-color);
1342
- border-radius:var(--tds-radio-input-border-radius);
1343
- transition-timing-function:var(--t-ease-in-out);
1344
- transition-duration:var(--t-duration-200);
1345
- transition-property:var(--tds-radio-transition-property);
1579
+ .tds-sidenav-item :is(a, button) :is(.prefix){
1580
+ display:none;
1346
1581
  }
1347
-
1348
- :is(.tds-radio input[type="radio"]):hover:not(:disabled){
1349
- --tds-radio-input-border-color:var(--t-fill-color-interaction-hover);
1350
- --tds-radio-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
1582
+ @supports selector(:popover-open){
1583
+ .tds-sidenav-collapse:popover-open{
1584
+ display:flex;
1351
1585
  }
1352
1586
 
1353
- :is(.tds-radio input[type="radio"]):focus-visible{
1354
- outline:var(--t-focus-ring-outline);
1355
- outline-offset:var(--t-focus-ring-offset);
1587
+ .tds-sidenav-collapse:not(:popover-open){
1588
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1589
+ transition:var(--tds-sidenav-collapse-transition-exit);
1356
1590
  }
1357
1591
 
1358
- :is(.tds-radio input[type="radio"]):disabled{
1359
- pointer-events:none;
1592
+ @starting-style{
1593
+ .tds-sidenav-collapse:popover-open{
1594
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1595
+ transform:var(--tds-sidenav-collapse-closed-transform);
1596
+ }
1360
1597
  }
1361
-
1362
- @media (prefers-reduced-motion: reduce){
1363
-
1364
- .tds-radio input[type="radio"]{
1365
- --tds-radio-transition-property:none;
1366
1598
  }
1599
+ @supports not selector(:popover-open){
1600
+ .tds-sidenav-collapse.\:popover-open{
1601
+ display:flex;
1367
1602
  }
1368
1603
 
1369
- .tds-radio:has(input:checked){
1370
- --tds-radio-input-background-color:var(--t-icon-color-inverted);
1371
- --tds-radio-input-border-color:var(--t-border-color-control-info);
1372
- --tds-radio-input-border-width:4px;
1373
- }
1374
-
1375
- .tds-radio:has(input:checked) input:hover:not(:disabled){
1376
- --tds-radio-input-background-color:var(--t-icon-color-inverted);
1377
- --tds-radio-input-border-color:var(--t-fill-color-interaction-hover);
1604
+ .tds-sidenav-collapse:not(.\:popover-open){
1605
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1606
+ transition:var(--tds-sidenav-collapse-transition-exit);
1378
1607
  }
1608
+ }
1609
+ }
1379
1610
 
1380
- .tds-radio:has(input:user-invalid){
1381
- --tds-radio-input-border-color:var(--t-form-border-color-error);
1611
+ @media (min-width: 720px){
1612
+ .tds-sidenav-responsive-header{
1613
+ display:none;
1382
1614
  }
1615
+ }
1383
1616
 
1384
- .tds-radio:has(input:user-invalid) input:hover:not(:disabled){
1385
- --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
1386
- --tds-radio-input-background-color:var(--t-form-background-color-error);
1617
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
1618
+ display:none;
1387
1619
  }
1388
1620
 
1389
- .tds-radio:has(input:disabled){
1390
- --tds-radio-input-background-color:var(--t-form-background-color-disabled);
1391
- --tds-radio-input-border-color:var(--t-form-border-color-disabled);
1621
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
1622
+ display:block;
1623
+ }
1392
1624
 
1393
- --tds-radio-label-color:var(--t-form-color-disabled);
1394
- --tds-radio-description-color:var(--t-form-color-disabled);
1395
- --tds-radio-cursor:not-allowed;
1396
- }
1625
+ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1626
+ display:flex;
1627
+ flex-direction:column;
1628
+ }
1397
1629
 
1398
- .tds-radio:has(input:disabled) input:checked{
1399
- --tds-radio-input-background-color:var(--t-form-background-color);
1400
- --tds-radio-input-border-color:var(--t-form-border-color-disabled);
1630
+
1631
+ :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{
1632
+ -webkit-appearance:none;
1633
+ appearance:none;
1401
1634
  }
1402
1635
 
1403
- .tds-radio-description{
1404
- display:flex;
1405
- grid-area:2 / 2;
1406
- gap:var(--t-spacing-half);
1407
- align-items:flex-start;
1408
- padding-inline-start:var(--t-spacing-1);
1409
- margin:0;
1410
- font-size:var(--tds-radio-description-font-size);
1411
- line-height:var(--tds-radio-description-line-height);
1412
- color:var(--tds-radio-description-color);
1413
- cursor:text;
1414
- }
1636
+ [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
1637
+ inline-size:1em;
1638
+ block-size:2em;
1639
+ }
1640
+ @supports (field-sizing: content){
1641
+ .tds-input--auto-width{
1642
+ inline-size:-moz-fit-content;
1643
+ inline-size:fit-content;
1644
+ min-inline-size:min(100%, 122px);
1645
+ }
1415
1646
 
1416
- .tds-radio--sm{
1417
- --tds-radio-line-height:1.35;
1418
- --tds-radio-input-size:var(--t-element-size-sm);
1419
- --tds-radio-font-size:var(--t-font-size-sm);
1420
- --tds-radio-description-font-size:var(--t-font-size-xs);
1421
- --tds-radio-description-line-height:1.3;
1647
+ .tds-input--auto-width input{
1648
+ field-sizing:content;
1649
+ inline-size:auto;
1650
+ }
1422
1651
  }
1423
1652
 
1424
1653
  .tds-modal-overlay{
@@ -1518,315 +1747,203 @@
1518
1747
  column-gap:var(--t-spacing-2);
1519
1748
  padding-block:0;
1520
1749
  padding-inline:var(--t-spacing-4);
1521
- }
1522
-
1523
- .tds-modal-title{
1524
- grid-row:1;
1525
- grid-column:1;
1526
- margin:0;
1527
- font-size:var(--t-font-size-2xl);
1528
- font-weight:var(--t-font-weight-medium);
1529
- line-height:140%;
1530
- color:var(--t-text-color-headline);
1531
- }
1532
-
1533
- .tds-modal-subtitle{
1534
- grid-row:2;
1535
- grid-column:1;
1536
- margin:0;
1537
- font-size:var(--t-font-size-md);
1538
- font-weight:var(--t-font-weight-medium);
1539
- line-height:140%;
1540
- color:var(--t-text-color-secondary);
1541
- }
1542
-
1543
- .tds-modal-close{
1544
- grid-row:1;
1545
- grid-column:2;
1546
- align-self:center;
1547
- color:var(--t-icon-color-dim);
1548
- }
1549
-
1550
- .tds-modal-body{
1551
- padding-block:var(--t-spacing-3);
1552
- padding-inline:var(--t-spacing-4);
1553
- }
1554
-
1555
- .tds-modal-body--full-width{
1556
- padding-inline:0;
1557
- }
1558
-
1559
- .tds-modal-footer{
1560
- display:flex;
1561
- gap:var(--t-spacing-2);
1562
- align-items:center;
1563
- justify-content:flex-end;
1564
- padding-block:var(--t-spacing-3);
1565
- padding-inline:var(--t-spacing-4);
1566
- border-top:1px solid var(--t-border-color);
1567
- }
1568
-
1569
- .tds-modal-footer > [slot="start"]{
1570
- margin-inline-end:auto;
1571
- }
1572
-
1573
- @media (min-width: 720px){
1574
- .tds-modal-overlay{
1575
- --tds-modal-min-margin-block:0;
1576
- }
1577
-
1578
- .tds-modal-footer{
1579
- position:sticky;
1580
- bottom:0;
1581
- background:var(--t-surface-color-card);
1582
- border-end-start-radius:var(--t-border-radius-lg);
1583
- border-end-end-radius:var(--t-border-radius-lg);
1584
- }
1585
- }
1586
-
1587
- .tds-input:has(textarea){
1588
- --tds-input-padding-block:6px;
1589
- --tds-input-resizer-size:var(--t-element-size-sm);
1590
- --tds-input-resizer-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cg fill='none' stroke='%236f7784' stroke-linecap='round' stroke-width='1.25'%3E%3Cpath d='M5.5 13l7.5-7.5'/%3E%3Cpath d='M9 13l4-4'/%3E%3C/g%3E%3C/svg%3E");
1591
- }
1592
-
1593
- @supports (x: attr(x type(*))){
1594
-
1595
- .tds-input textarea{
1596
- --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
1597
- }
1598
- }
1599
-
1600
- .tds-input.tds-textarea--resize-vertical textarea{
1601
- resize:vertical;
1602
- }
1603
-
1604
- .tds-input.tds-textarea--resize-none textarea{
1605
- resize:none;
1606
- }
1607
-
1608
- .tds-input.tds-textarea--resize-auto textarea{
1609
- resize:vertical;
1610
- }
1611
-
1612
- @supports (field-sizing: content){
1613
- .tds-input.tds-textarea--resize-auto textarea{
1614
- field-sizing:content;
1615
- resize:none;
1616
- }
1617
- }
1618
-
1619
- .tds-input textarea{
1620
- --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
1621
- --tds-input-scrollbar-thumb-color-hidden:transparent;
1622
- --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
1623
- --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
1624
- --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
1625
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
1626
- --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
1627
- --tds-input-scrollbar-thumb-border-radius:999px;
1628
- --tds-input-scrollbar-thumb-border-width:3px;
1629
- --tds-input-scrollbar-track-margin-block:.125rem;
1630
- scrollbar-color:initial;
1631
- transition-timing-function:var(--t-ease-in-out);
1632
- transition-duration:var(--t-duration-200);
1633
- transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
1634
- }
1635
-
1636
- @media (pointer: fine){
1637
- :is(.tds-input textarea)::-webkit-scrollbar{
1638
- width:12px;
1639
- height:12px;
1640
- cursor:default;
1641
- }
1642
-
1643
- :is(.tds-input textarea)::-webkit-scrollbar-thumb{
1644
- cursor:default;
1645
- background:var(--tds-input-scrollbar-thumb-color);
1646
- background-clip:content-box;
1647
- border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
1648
- border-radius:var(--tds-input-scrollbar-thumb-border-radius);
1649
- }
1750
+ }
1650
1751
 
1651
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
1652
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
1653
- }
1752
+ .tds-modal-title{
1753
+ grid-row:1;
1754
+ grid-column:1;
1755
+ margin:0;
1756
+ font-size:var(--t-font-size-2xl);
1757
+ font-weight:var(--t-font-weight-medium);
1758
+ line-height:140%;
1759
+ color:var(--t-text-color-headline);
1760
+ }
1654
1761
 
1655
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
1656
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
1657
- }
1762
+ .tds-modal-subtitle{
1763
+ grid-row:2;
1764
+ grid-column:1;
1765
+ margin:0;
1766
+ font-size:var(--t-font-size-md);
1767
+ font-weight:var(--t-font-weight-medium);
1768
+ line-height:140%;
1769
+ color:var(--t-text-color-secondary);
1770
+ }
1658
1771
 
1659
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
1660
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
1661
- }
1772
+ .tds-modal-close{
1773
+ grid-row:1;
1774
+ grid-column:2;
1775
+ align-self:center;
1776
+ color:var(--t-icon-color-dim);
1777
+ }
1662
1778
 
1663
- :is(.tds-input textarea)::-webkit-scrollbar-corner{
1664
- background:var(--tds-input-scrollbar-surface-color);
1665
- }
1779
+ .tds-modal-body{
1780
+ padding-block:var(--t-spacing-3);
1781
+ padding-inline:var(--t-spacing-4);
1782
+ }
1666
1783
 
1667
- :is(.tds-input textarea)::-webkit-resizer{
1668
- background:var(--tds-input-resizer-icon) no-repeat;
1669
- background-position:right bottom;
1670
- background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
1671
- }
1784
+ .tds-modal-body--full-width{
1785
+ padding-inline:0;
1786
+ }
1672
1787
 
1673
- :is(.tds-input textarea)::-webkit-scrollbar-track{
1674
- margin-block:var(--tds-input-scrollbar-track-margin-block);
1675
- cursor:default;
1676
- }
1788
+ .tds-modal-footer{
1789
+ display:flex;
1790
+ gap:var(--t-spacing-2);
1791
+ align-items:center;
1792
+ justify-content:flex-end;
1793
+ padding-block:var(--t-spacing-3);
1794
+ padding-inline:var(--t-spacing-4);
1795
+ border-top:1px solid var(--t-border-color);
1796
+ }
1677
1797
 
1678
- @supports (-moz-appearance: none){
1679
- :is(.tds-input textarea){
1680
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
1681
- scrollbar-width:thin;
1682
- }
1798
+ .tds-modal-footer > [slot="start"]{
1799
+ margin-inline-end:auto;
1800
+ }
1683
1801
 
1684
- @media (hover){
1685
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
1686
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
1687
- }
1688
- }
1689
- }
1802
+ @media (min-width: 720px){
1803
+ .tds-modal-overlay{
1804
+ --tds-modal-min-margin-block:0;
1690
1805
  }
1691
1806
 
1692
- .tds-toggle-switch{
1693
- --tds-toggle-switch-font-size:var(--t-font-size-md);
1694
- --tds-toggle-switch-cursor:pointer;
1695
- --tds-toggle-switch-display:inline-grid;
1696
- --tds-toggle-switch-line-height:1.4;
1807
+ .tds-modal-footer{
1808
+ position:sticky;
1809
+ bottom:0;
1810
+ background:var(--t-surface-color-card);
1811
+ border-end-start-radius:var(--t-border-radius-lg);
1812
+ border-end-end-radius:var(--t-border-radius-lg);
1813
+ }
1814
+ }
1697
1815
 
1698
- --tds-toggle-switch-label-color:var(--t-form-color);
1816
+ .tds-radio{
1817
+ --tds-radio-font-size:var(--t-font-size-md);
1818
+ --tds-radio-cursor:pointer;
1819
+ --tds-radio-line-height:1.4;
1820
+ --tds-radio-transition-property:border-width;
1699
1821
 
1700
- --tds-toggle-switch-track-width:var(--t-container-size-md);
1701
- --tds-toggle-switch-track-outline:none;
1702
- --tds-toggle-switch-track-height:var(--t-container-size-xs);
1703
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
1704
- --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
1822
+ --tds-radio-input-size:var(--t-element-size-md);
1823
+ --tds-radio-input-border-radius:var(--t-border-radius-round);
1824
+ --tds-radio-input-border-color:var(--t-form-border-color);
1825
+ --tds-radio-input-border-width:var(--t-form-border-width);
1826
+ --tds-radio-input-background-color:var(--t-form-background-color);
1705
1827
 
1706
- --tds-toggle-switch-thumb-size:var(--t-element-size-md);
1707
- --tds-toggle-switch-thumb-transform:translateX(0);
1708
- --tds-toggle-switch-thumb-transition:transform var(--t-duration-200) var(--t-ease-in-out);
1828
+ --tds-radio-label-color:var(--t-form-color);
1709
1829
 
1710
- --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
1711
- --tds-toggle-switch-description-line-height:1.35;
1712
- --tds-toggle-switch-description-color:var(--t-text-color-secondary);
1713
- position:relative;
1830
+ --tds-radio-description-font-size:var(--t-font-size-sm);
1831
+ --tds-radio-description-line-height:1.35;
1832
+ --tds-radio-description-color:var(--t-text-color-secondary);
1714
1833
 
1715
- display:var(--tds-toggle-switch-display);
1834
+ position:relative;
1835
+ display:inline-grid;
1716
1836
  grid-template-columns:auto;
1717
1837
  grid-auto-columns:1fr;
1718
1838
  gap:var(--t-spacing-fourth) 0;
1839
+ line-height:var(--tds-radio-line-height);
1719
1840
  -webkit-user-select:none;
1720
1841
  -moz-user-select:none;
1721
1842
  user-select:none;
1722
1843
  }
1723
1844
 
1724
- .tds-toggle-switch input[type="checkbox"]{
1725
- position:absolute;
1726
- width:var(--tds-toggle-switch-track-width);
1727
- height:var(--tds-toggle-switch-track-height);
1728
- margin:0;
1845
+ .tds-radio label{
1846
+ grid-area:1 / 2;
1847
+ padding-inline-start:var(--t-spacing-1);
1848
+ font-size:var(--tds-radio-font-size);
1849
+ font-weight:var(--t-font-weight-normal);
1850
+ color:var(--tds-radio-label-color);
1851
+ cursor:var(--tds-radio-cursor);
1852
+ }
1853
+
1854
+ .tds-radio input[type="radio"]{
1855
+ position:relative;
1856
+ width:1em;
1857
+ height:1em;
1858
+ margin:calc((1lh - 1em) / 2) 0 0;
1859
+ font-size:var(--tds-radio-font-size);
1860
+ line-height:inherit;
1729
1861
  -webkit-appearance:none;
1730
1862
  -moz-appearance:none;
1731
1863
  appearance:none;
1732
- cursor:var(--tds-toggle-switch-cursor);
1733
- outline:var(--tds-toggle-switch-track-outline);
1734
- outline-offset:var(--t-focus-ring-offset);
1735
- background-color:transparent;
1736
- border:0;
1737
- border-radius:var(--t-border-radius-round);
1864
+ cursor:var(--tds-radio-cursor);
1865
+ background-color:var(--tds-radio-input-background-color);
1866
+ border:var(--tds-radio-input-border-width) solid var(--tds-radio-input-border-color);
1867
+ border-radius:var(--tds-radio-input-border-radius);
1868
+ transition-timing-function:var(--t-ease-in-out);
1869
+ transition-duration:var(--t-duration-200);
1870
+ transition-property:var(--tds-radio-transition-property);
1738
1871
  }
1739
1872
 
1740
- :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
1741
- --tds-toggle-switch-track-outline:var(--t-focus-ring-outline);
1873
+ :is(.tds-radio input[type="radio"]):hover:not(:disabled){
1874
+ --tds-radio-input-border-color:var(--t-fill-color-interaction-hover);
1875
+ --tds-radio-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
1742
1876
  }
1743
1877
 
1744
- .tds-toggle-switch label{
1745
- display:inline-flex;
1746
- grid-area:1 / 2;
1747
- padding-inline-start:var(--t-spacing-1);
1748
- margin-top:-.09375em;
1749
- font-size:var(--tds-toggle-switch-font-size);
1750
- font-weight:var(--t-font-weight-normal);
1751
- line-height:var(--tds-toggle-switch-line-height);
1752
- color:var(--tds-toggle-switch-label-color);
1753
- cursor:var(--tds-toggle-switch-cursor);
1754
- }
1878
+ :is(.tds-radio input[type="radio"]):focus-visible{
1879
+ outline:var(--t-focus-ring-outline);
1880
+ outline-offset:var(--t-focus-ring-offset);
1881
+ }
1755
1882
 
1756
- .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
1757
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
1758
- }
1883
+ :is(.tds-radio input[type="radio"]):disabled{
1884
+ pointer-events:none;
1885
+ }
1759
1886
 
1760
- .tds-toggle-switch:has(input:checked){
1761
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
1762
- --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
1763
- }
1887
+ @media (prefers-reduced-motion: reduce){
1764
1888
 
1765
- .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
1766
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
1889
+ .tds-radio input[type="radio"]{
1890
+ --tds-radio-transition-property:none;
1891
+ }
1767
1892
  }
1768
1893
 
1769
- .tds-toggle-switch:has(input:disabled){
1770
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
1771
- --tds-toggle-switch-label-color:var(--t-form-color-disabled);
1772
- --tds-toggle-switch-description-color:var(--t-form-color-disabled);
1773
- --tds-toggle-switch-cursor:not-allowed;
1894
+ .tds-radio:has(input:checked){
1895
+ --tds-radio-input-background-color:var(--t-icon-color-inverted);
1896
+ --tds-radio-input-border-color:var(--t-border-color-control-info);
1897
+ --tds-radio-input-border-width:4px;
1774
1898
  }
1775
1899
 
1776
- .tds-toggle-switch-track{
1777
- position:relative;
1778
- flex-shrink:0;
1779
- width:var(--tds-toggle-switch-track-width);
1780
- height:var(--tds-toggle-switch-track-height);
1781
- background-color:var(--tds-toggle-switch-track-background-color);
1782
- border-radius:var(--t-border-radius-round);
1783
- transition:var(--tds-toggle-switch-track-transition);
1784
- }
1900
+ .tds-radio:has(input:checked) input:hover:not(:disabled){
1901
+ --tds-radio-input-background-color:var(--t-icon-color-inverted);
1902
+ --tds-radio-input-border-color:var(--t-fill-color-interaction-hover);
1903
+ }
1785
1904
 
1786
- .tds-toggle-switch-track::before{
1787
- position:absolute;
1788
- top:var(--t-spacing-fourth);
1789
- left:var(--t-spacing-fourth);
1790
- width:var(--tds-toggle-switch-thumb-size);
1791
- height:var(--tds-toggle-switch-thumb-size);
1792
- content:"";
1793
- background-color:#fff;
1794
- border-radius:var(--t-border-radius-round);
1795
- transform:var(--tds-toggle-switch-thumb-transform);
1796
- transition:var(--tds-toggle-switch-thumb-transition);
1905
+ .tds-radio:has(input:user-invalid){
1906
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
1797
1907
  }
1798
1908
 
1799
- @media (prefers-reduced-motion: reduce){
1909
+ .tds-radio:has(input:user-invalid) input:hover:not(:disabled){
1910
+ --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
1911
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
1912
+ }
1800
1913
 
1801
- .tds-toggle-switch-track{
1802
- --tds-toggle-switch-track-transition:none;
1803
- --tds-toggle-switch-thumb-transition:none;
1804
- }
1914
+ .tds-radio:has(input:disabled){
1915
+ --tds-radio-input-background-color:var(--t-form-background-color-disabled);
1916
+ --tds-radio-input-border-color:var(--t-form-border-color-disabled);
1917
+
1918
+ --tds-radio-label-color:var(--t-form-color-disabled);
1919
+ --tds-radio-description-color:var(--t-form-color-disabled);
1920
+ --tds-radio-cursor:not-allowed;
1805
1921
  }
1806
1922
 
1807
- .tds-toggle-switch-description{
1923
+ .tds-radio:has(input:disabled) input:checked{
1924
+ --tds-radio-input-background-color:var(--t-form-background-color);
1925
+ --tds-radio-input-border-color:var(--t-form-border-color-disabled);
1926
+ }
1927
+
1928
+ .tds-radio-description{
1808
1929
  display:flex;
1809
1930
  grid-area:2 / 2;
1931
+ gap:var(--t-spacing-half);
1810
1932
  align-items:flex-start;
1811
1933
  padding-inline-start:var(--t-spacing-1);
1812
- margin:0;
1813
- font-size:var(--tds-toggle-switch-description-font-size);
1814
- line-height:var(--tds-toggle-switch-description-line-height);
1815
- color:var(--tds-toggle-switch-description-color);
1934
+ margin:0;
1935
+ font-size:var(--tds-radio-description-font-size);
1936
+ line-height:var(--tds-radio-description-line-height);
1937
+ color:var(--tds-radio-description-color);
1816
1938
  cursor:text;
1817
1939
  }
1818
1940
 
1819
- .tds-toggle-switch--sm{
1820
- --tds-toggle-switch-font-size:var(--t-font-size-sm);
1821
- --tds-toggle-switch-line-height:1.35;
1822
- --tds-toggle-switch-track-height:var(--t-element-size-lg);
1823
- --tds-toggle-switch-thumb-size:var(--t-element-size-sm);
1824
- --tds-toggle-switch-description-font-size:var(--t-font-size-xs);
1825
- --tds-toggle-switch-description-line-height:1.3;
1826
- }
1827
-
1828
- .tds-toggle-switch--hide-label{
1829
- --tds-toggle-switch-display:inline-flex;
1941
+ .tds-radio--sm{
1942
+ --tds-radio-line-height:1.35;
1943
+ --tds-radio-input-size:var(--t-element-size-sm);
1944
+ --tds-radio-font-size:var(--t-font-size-sm);
1945
+ --tds-radio-description-font-size:var(--t-font-size-xs);
1946
+ --tds-radio-description-line-height:1.3;
1830
1947
  }
1831
1948
 
1832
1949
  .tds-radio-group{
@@ -1912,367 +2029,250 @@
1912
2029
  --tds-radio-group-description-line-height:1.3;
1913
2030
  }
1914
2031
 
1915
-
1916
- @media (prefers-reduced-motion: no-preference){
1917
-
1918
- :root{
1919
- interpolate-size:allow-keywords;
1920
- }
1921
- }
1922
-
1923
- @layer tds-component{
1924
- tds-sidenav,
1925
- .tds-sidenav{
1926
- --tds-sidenav-indent:12px;
1927
- --tds-sidenav-item-depth:0;
1928
-
1929
- --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
1930
-
1931
- --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;
1932
- --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;
1933
- --tds-sidenav-collapse-closed-opacity:0;
1934
- --tds-sidenav-collapse-open-opacity:1;
1935
- --tds-sidenav-collapse-closed-transform:translateY(-8px);
1936
- --tds-sidenav-collapse-open-transform:translateY(0);
1937
-
1938
- --tds-sidenav-item-icon-size:var(--t-element-size-md);
1939
- --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
1940
- --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
1941
- --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
1942
-
1943
- --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
1944
- --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
1945
- --tds-sidenav-item-nested-background-selected:transparent;
1946
-
1947
- --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
1948
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1949
- --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
1950
-
1951
- --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
1952
- --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
1953
- }
1954
-
1955
- @media (prefers-reduced-motion: reduce){
1956
- tds-sidenav,
1957
- .tds-sidenav{
1958
- --tds-sidenav-collapse-transition-enter:none;
1959
- --tds-sidenav-collapse-transition-exit:none;
1960
- --tds-sidenav-collapse-closed-transform:none;
1961
- --tds-sidenav-collapse-open-transform:none;
1962
- }
1963
- }
1964
-
1965
- .tds-sidenav--theme-gray{
1966
- --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
1967
- --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
1968
- --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
1969
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1970
- --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
1971
- }
1972
- }
1973
-
1974
- .tds-sidenav :where(nav,ul,.tds-sidenav-section){
1975
- display:flex;
1976
- }
1977
-
1978
- .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
1979
- flex-direction:column;
1980
- gap:var(--t-spacing-half);
1981
- width:100%;
1982
- }
1983
-
1984
- .tds-sidenav-section-list{
1985
- width:100%;
1986
- padding:0;
1987
- margin:0;
1988
- list-style:none;
1989
- }
1990
-
1991
- .tds-sidenav-section-header{
1992
- display:flex;
1993
- align-items:baseline;
1994
- justify-content:space-between;
1995
- padding-top:var(--t-spacing-2);
2032
+ .tds-input:has(textarea){
2033
+ --tds-input-padding-block:6px;
2034
+ --tds-input-resizer-size:var(--t-element-size-sm);
2035
+ --tds-input-resizer-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cg fill='none' stroke='%236f7784' stroke-linecap='round' stroke-width='1.25'%3E%3Cpath d='M5.5 13l7.5-7.5'/%3E%3Cpath d='M9 13l4-4'/%3E%3C/g%3E%3C/svg%3E");
1996
2036
  }
1997
2037
 
1998
- .tds-sidenav-section-header h2{
1999
- margin:0;
2000
- font-size:var(--t-font-size-sm);
2001
- font-weight:var(--t-font-weight-semibold);
2002
- line-height:1.35;
2003
- color:var(--t-text-color-secondary);
2004
- text-transform:uppercase;
2005
- }
2006
-
2007
- .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
2008
- padding-top:0;
2009
- }
2010
-
2011
- .tds-sidenav-section-header [slot="label-actions"]{
2012
- display:flex;
2013
- gap:var(--t-spacing-half);
2014
- align-items:center;
2015
- }
2016
-
2017
- .tds-sidenav-section [slot="section-actions"]{
2018
- display:flex;
2019
- gap:12px;
2020
- align-items:center;
2021
- min-height:42px;
2022
- padding:var(--t-spacing-1) 0;
2023
- }
2038
+ @supports (x: attr(x type(*))){
2024
2039
 
2025
- .tds-sidenav-section-list,
2026
- .tds-sidenav-item{
2027
- width:100%;
2028
- padding:0;
2029
- margin:0;
2040
+ .tds-input textarea{
2041
+ --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
2030
2042
  }
2031
-
2032
- .tds-sidenav-item :is(a,button){
2033
- position:relative;
2034
- display:flex;
2035
- gap:12px;
2036
- align-items:center;
2037
- width:100%;
2038
- padding:12px;
2039
- overflow:hidden;
2040
- font-size:var(--t-font-size-sm);
2041
- line-height:18px;
2042
- color:var(--t-text-color-headline);
2043
- white-space:nowrap;
2044
- text-decoration:none;
2045
- -webkit-appearance:none;
2046
- -moz-appearance:none;
2047
- appearance:none;
2048
- cursor:pointer;
2049
- background-color:var(--tds-sidenav-item-background, transparent);
2050
- border:0;
2051
- border-radius:var(--t-border-radius);
2052
- transition:var(--tds-sidenav-item-transition);
2053
2043
  }
2054
2044
 
2055
- :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
2056
- display:block;
2057
- flex:1;
2058
- overflow:hidden;
2059
- text-overflow:ellipsis;
2060
- text-align:left;
2061
- white-space:nowrap;
2045
+ .tds-input.tds-textarea--resize-vertical textarea{
2046
+ resize:vertical;
2062
2047
  }
2063
2048
 
2064
- :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
2065
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
2066
- color:var(--t-text-color-headline);
2067
- text-decoration:none;
2049
+ .tds-input.tds-textarea--resize-none textarea{
2050
+ resize:none;
2068
2051
  }
2069
2052
 
2070
- :is(.tds-sidenav-item :is(a,button)):active{
2071
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
2053
+ .tds-input.tds-textarea--resize-auto textarea{
2054
+ resize:vertical;
2072
2055
  }
2073
2056
 
2074
- :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
2075
- overflow:hidden;
2076
- color:var(--tds-sidenav-item-icon-color);
2057
+ @supports (field-sizing: content){
2058
+ .tds-input.tds-textarea--resize-auto textarea{
2059
+ field-sizing:content;
2060
+ resize:none;
2061
+ }
2077
2062
  }
2078
2063
 
2079
- :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{
2080
- display:block;
2081
- width:var(--tds-sidenav-item-icon-size);
2082
- height:var(--tds-sidenav-item-icon-size);
2083
- }
2064
+ .tds-input textarea{
2065
+ --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
2066
+ --tds-input-scrollbar-thumb-color-hidden:transparent;
2067
+ --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
2068
+ --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
2069
+ --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
2070
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
2071
+ --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
2072
+ --tds-input-scrollbar-thumb-border-radius:999px;
2073
+ --tds-input-scrollbar-thumb-border-width:3px;
2074
+ --tds-input-scrollbar-track-margin-block:.125rem;
2075
+ scrollbar-color:initial;
2076
+ transition-timing-function:var(--t-ease-in-out);
2077
+ transition-duration:var(--t-duration-200);
2078
+ transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
2079
+ }
2084
2080
 
2085
- :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
2086
- --tds-sidenav-indent:19px;
2081
+ @media (pointer: fine){
2082
+ :is(.tds-input textarea)::-webkit-scrollbar{
2083
+ width:12px;
2084
+ height:12px;
2085
+ cursor:default;
2087
2086
  }
2088
2087
 
2089
- [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
2090
- visibility:visible;
2091
- block-size:auto;
2092
- opacity:1;
2088
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb{
2089
+ cursor:default;
2090
+ background:var(--tds-input-scrollbar-thumb-color);
2091
+ background-clip:content-box;
2092
+ border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
2093
+ border-radius:var(--tds-input-scrollbar-thumb-border-radius);
2093
2094
  }
2094
2095
 
2095
- .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
2096
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
2097
- --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
2098
-
2099
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
2100
- font-weight:var(--t-font-weight-semibold);
2101
- }
2102
-
2103
- .tds-sidenav-item:has(.tds-sidenav-section){
2104
- display:flex;
2105
- flex-direction:column;
2106
- gap:var(--t-spacing-half);
2107
- }
2096
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2097
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
2098
+ }
2108
2099
 
2109
- .tds-sidenav-item .tds-sidenav-section-list{
2110
- --tds-sidenav-item-depth:1;
2111
- gap:0;
2112
- }
2100
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
2101
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
2102
+ }
2113
2103
 
2114
- .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
2115
- visibility:hidden;
2116
- block-size:0;
2117
- overflow-y:clip;
2118
- opacity:0;
2119
- transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
2104
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
2105
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
2120
2106
  }
2121
2107
 
2122
- :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
2123
- --tds-sidenav-item-depth:2;
2108
+ :is(.tds-input textarea)::-webkit-scrollbar-corner{
2109
+ background:var(--tds-input-scrollbar-surface-color);
2124
2110
  }
2125
2111
 
2126
- :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
2127
- min-height:var(--t-element-size-2xl);
2128
- padding-block:9px;
2129
- padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
2130
- line-height:1;
2131
- background-color:transparent;
2112
+ :is(.tds-input textarea)::-webkit-resizer{
2113
+ background:var(--tds-input-resizer-icon) no-repeat;
2114
+ background-position:right bottom;
2115
+ background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
2132
2116
  }
2133
2117
 
2134
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
2135
- position:absolute;
2136
- top:0;
2137
- bottom:0;
2138
- left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
2139
- width:2px;
2140
- content:"";
2141
- background-color:var(--tds-sidenav-item-nested-border-color);
2142
- transition:var(--tds-sidenav-item-transition);
2143
- }
2118
+ :is(.tds-input textarea)::-webkit-scrollbar-track{
2119
+ margin-block:var(--tds-input-scrollbar-track-margin-block);
2120
+ cursor:default;
2121
+ }
2144
2122
 
2145
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
2146
- position:absolute;
2147
- inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
2148
- z-index:-1;
2149
- height:100%;
2150
- content:"";
2151
- background-color:var(--tds-sidenav-item-nested-background);
2152
- border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
2153
- transition:var(--tds-sidenav-item-transition);
2123
+ @supports (-moz-appearance: none){
2124
+ :is(.tds-input textarea){
2125
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
2126
+ scrollbar-width:thin;
2154
2127
  }
2155
2128
 
2156
- :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)){
2157
- display:block;
2158
- text-align:left;
2159
- white-space:normal;
2129
+ @media (hover){
2130
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2131
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
2132
+ }
2160
2133
  }
2134
+ }
2135
+ }
2161
2136
 
2162
- :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{
2163
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
2164
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
2165
- }
2137
+ .tds-toggle-switch{
2138
+ --tds-toggle-switch-font-size:var(--t-font-size-md);
2139
+ --tds-toggle-switch-cursor:pointer;
2140
+ --tds-toggle-switch-display:inline-grid;
2141
+ --tds-toggle-switch-line-height:1.4;
2166
2142
 
2167
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
2168
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
2169
- }
2143
+ --tds-toggle-switch-label-color:var(--t-form-color);
2170
2144
 
2171
- .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
2172
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
2173
- font-weight:var(--t-font-weight-medium);
2174
- }
2145
+ --tds-toggle-switch-track-width:var(--t-container-size-md);
2146
+ --tds-toggle-switch-track-outline:none;
2147
+ --tds-toggle-switch-track-height:var(--t-container-size-xs);
2148
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
2149
+ --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
2175
2150
 
2176
- .tds-sidenav-responsive-header{
2177
- display:flex;
2178
- gap:var(--t-spacing-2);
2179
- align-items:center;
2180
- width:100%;
2181
- }
2151
+ --tds-toggle-switch-thumb-size:var(--t-element-size-md);
2152
+ --tds-toggle-switch-thumb-transform:translateX(0);
2153
+ --tds-toggle-switch-thumb-transition:transform var(--t-duration-200) var(--t-ease-in-out);
2182
2154
 
2183
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
2184
- order:0;
2185
- }
2155
+ --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
2156
+ --tds-toggle-switch-description-line-height:1.35;
2157
+ --tds-toggle-switch-description-color:var(--t-text-color-secondary);
2158
+ position:relative;
2186
2159
 
2187
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
2188
- flex:1;
2189
- order:1;
2160
+ display:var(--tds-toggle-switch-display);
2161
+ grid-template-columns:auto;
2162
+ grid-auto-columns:1fr;
2163
+ gap:var(--t-spacing-fourth) 0;
2164
+ -webkit-user-select:none;
2165
+ -moz-user-select:none;
2166
+ user-select:none;
2167
+ }
2168
+
2169
+ .tds-toggle-switch input[type="checkbox"]{
2170
+ position:absolute;
2171
+ width:var(--tds-toggle-switch-track-width);
2172
+ height:var(--tds-toggle-switch-track-height);
2190
2173
  margin:0;
2191
- font-size:var(--t-font-size-lg);
2192
- font-weight:var(--t-font-weight-medium);
2193
- color:var(--t-text-color-headline);
2174
+ -webkit-appearance:none;
2175
+ -moz-appearance:none;
2176
+ appearance:none;
2177
+ cursor:var(--tds-toggle-switch-cursor);
2178
+ outline:var(--tds-toggle-switch-track-outline);
2179
+ outline-offset:var(--t-focus-ring-offset);
2180
+ background-color:transparent;
2181
+ border:0;
2182
+ border-radius:var(--t-border-radius-round);
2194
2183
  }
2195
2184
 
2196
- @media (max-width: 719px){
2197
- .tds-sidenav-collapse{
2198
- z-index:10001;
2199
- display:none;
2200
- max-width:min(448px, calc(100vw - 48px));
2201
- padding:0;
2202
- margin:12px 0;
2203
- position-area:bottom span-right;
2204
- overflow:hidden;
2205
- outline:0;
2206
- background:var(--t-surface-color-card);
2207
- border:0;
2208
- border-radius:6px;
2209
- box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
2210
- opacity:var(--tds-sidenav-collapse-open-opacity);
2211
- transform:var(--tds-sidenav-collapse-open-transform);
2212
- transition:var(--tds-sidenav-collapse-transition-enter);
2213
- will-change:transform;
2185
+ :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
2186
+ --tds-toggle-switch-track-outline:var(--t-focus-ring-outline);
2187
+ }
2188
+
2189
+ .tds-toggle-switch label{
2190
+ display:inline-flex;
2191
+ grid-area:1 / 2;
2192
+ padding-inline-start:var(--t-spacing-1);
2193
+ margin-top:-.09375em;
2194
+ font-size:var(--tds-toggle-switch-font-size);
2195
+ font-weight:var(--t-font-weight-normal);
2196
+ line-height:var(--tds-toggle-switch-line-height);
2197
+ color:var(--tds-toggle-switch-label-color);
2198
+ cursor:var(--tds-toggle-switch-cursor);
2214
2199
  }
2215
2200
 
2216
- .tds-sidenav-scroll-container{
2217
- --webkit-overflow-scrolling:touch;
2218
- display:block;
2219
- width:100%;
2220
- height:-moz-fit-content;
2221
- height:fit-content;
2222
- padding:var(--t-spacing-2);
2223
- overflow-y:auto;
2201
+ .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
2202
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
2224
2203
  }
2225
2204
 
2226
- .tds-sidenav-item :is(a, button) :is(.prefix){
2227
- display:none;
2205
+ .tds-toggle-switch:has(input:checked){
2206
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
2207
+ --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
2228
2208
  }
2229
- @supports selector(:popover-open){
2230
- .tds-sidenav-collapse:popover-open{
2231
- display:flex;
2232
- }
2233
2209
 
2234
- .tds-sidenav-collapse:not(:popover-open){
2235
- opacity:var(--tds-sidenav-collapse-closed-opacity);
2236
- transition:var(--tds-sidenav-collapse-transition-exit);
2210
+ .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
2211
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
2237
2212
  }
2238
2213
 
2239
- @starting-style{
2240
- .tds-sidenav-collapse:popover-open{
2241
- opacity:var(--tds-sidenav-collapse-closed-opacity);
2242
- transform:var(--tds-sidenav-collapse-closed-transform);
2243
- }
2244
- }
2214
+ .tds-toggle-switch:has(input:disabled){
2215
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
2216
+ --tds-toggle-switch-label-color:var(--t-form-color-disabled);
2217
+ --tds-toggle-switch-description-color:var(--t-form-color-disabled);
2218
+ --tds-toggle-switch-cursor:not-allowed;
2245
2219
  }
2246
- @supports not selector(:popover-open){
2247
- .tds-sidenav-collapse.\:popover-open{
2248
- display:flex;
2249
- }
2250
2220
 
2251
- .tds-sidenav-collapse:not(.\:popover-open){
2252
- opacity:var(--tds-sidenav-collapse-closed-opacity);
2253
- transition:var(--tds-sidenav-collapse-transition-exit);
2254
- }
2255
- }
2221
+ .tds-toggle-switch-track{
2222
+ position:relative;
2223
+ flex-shrink:0;
2224
+ width:var(--tds-toggle-switch-track-width);
2225
+ height:var(--tds-toggle-switch-track-height);
2226
+ background-color:var(--tds-toggle-switch-track-background-color);
2227
+ border-radius:var(--t-border-radius-round);
2228
+ transition:var(--tds-toggle-switch-track-transition);
2256
2229
  }
2257
2230
 
2258
- @media (min-width: 720px){
2259
- .tds-sidenav-responsive-header{
2260
- display:none;
2231
+ .tds-toggle-switch-track::before{
2232
+ position:absolute;
2233
+ top:var(--t-spacing-fourth);
2234
+ left:var(--t-spacing-fourth);
2235
+ width:var(--tds-toggle-switch-thumb-size);
2236
+ height:var(--tds-toggle-switch-thumb-size);
2237
+ content:"";
2238
+ background-color:#fff;
2239
+ border-radius:var(--t-border-radius-round);
2240
+ transform:var(--tds-toggle-switch-thumb-transform);
2241
+ transition:var(--tds-toggle-switch-thumb-transition);
2261
2242
  }
2243
+
2244
+ @media (prefers-reduced-motion: reduce){
2245
+
2246
+ .tds-toggle-switch-track{
2247
+ --tds-toggle-switch-track-transition:none;
2248
+ --tds-toggle-switch-thumb-transition:none;
2262
2249
  }
2250
+ }
2263
2251
 
2264
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
2265
- display:none;
2266
- }
2252
+ .tds-toggle-switch-description{
2253
+ display:flex;
2254
+ grid-area:2 / 2;
2255
+ align-items:flex-start;
2256
+ padding-inline-start:var(--t-spacing-1);
2257
+ margin:0;
2258
+ font-size:var(--tds-toggle-switch-description-font-size);
2259
+ line-height:var(--tds-toggle-switch-description-line-height);
2260
+ color:var(--tds-toggle-switch-description-color);
2261
+ cursor:text;
2262
+ }
2267
2263
 
2268
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
2269
- display:block;
2270
- }
2264
+ .tds-toggle-switch--sm{
2265
+ --tds-toggle-switch-font-size:var(--t-font-size-sm);
2266
+ --tds-toggle-switch-line-height:1.35;
2267
+ --tds-toggle-switch-track-height:var(--t-element-size-lg);
2268
+ --tds-toggle-switch-thumb-size:var(--t-element-size-sm);
2269
+ --tds-toggle-switch-description-font-size:var(--t-font-size-xs);
2270
+ --tds-toggle-switch-description-line-height:1.3;
2271
+ }
2271
2272
 
2272
- tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
2273
- display:flex;
2274
- flex-direction:column;
2275
- }
2273
+ .tds-toggle-switch--hide-label{
2274
+ --tds-toggle-switch-display:inline-flex;
2275
+ }
2276
2276
 
2277
2277
  .tds-input{
2278
2278
  --tds-input-border-color:var(--t-form-border-color);
@@ -5140,7 +5140,7 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
5140
5140
  content:"*" / "";
5141
5141
  }
5142
5142
 
5143
- .tds-field[data-invalid]{
5143
+ .tds-field:has([aria-invalid="true"]),.tds-field[data-invalid]{
5144
5144
  --tds-field-border-color:var(--t-form-border-color-error);
5145
5145
  --tds-field-border-color-hover:var(--t-form-border-color-error-hover);
5146
5146
  --tds-field-border-color-active:var(--t-form-border-color-error-hover);