@planningcenter/tapestry 3.8.1-rc.2 → 3.8.1-rc.4

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.
@@ -766,941 +766,645 @@
766
766
  [data-padding-inline-xl="7"]{ padding-inline:var(--t-spacing-7); }
767
767
  }
768
768
 
769
-
770
- @media (prefers-reduced-motion: no-preference){
771
-
772
- :root{
773
- interpolate-size:allow-keywords;
774
- }
769
+ @layer t-critical{
770
+ tds-page-header:not(.hydrated){
771
+ display:none;
775
772
  }
773
+ }
776
774
 
777
- @layer tds-component{
778
- tds-sidenav,
779
- .tds-sidenav{
780
- --tds-sidenav-indent:12px;
781
- --tds-sidenav-item-depth:0;
782
-
783
- --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
784
-
785
- --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;
786
- --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;
787
- --tds-sidenav-collapse-closed-opacity:0;
788
- --tds-sidenav-collapse-open-opacity:1;
789
- --tds-sidenav-collapse-closed-transform:translateY(-8px);
790
- --tds-sidenav-collapse-open-transform:translateY(0);
775
+ @layer t-component{
776
+ .tds-page-header{
777
+ --tds-page-header-background-color:var(--t-fill-color-product-current-gradient-tint, var(--t-surface-color-canvas));
778
+ --tds-page-header-background-color-inactive:var(--t-fill-color-neutral-090);
779
+ --tds-page-header-color:var(--t-text-color);
780
+ --tds-page-header-bottom-border-color:transparent;
781
+ --tds-page-header-headline-color:var(--t-text-color-headline);
782
+ --tds-page-header-headline-font-size:var(--t-font-size-2xl);
783
+ --tds-page-header-padding-x:var(--t-spacing-2);
784
+ --tds-page-header-padding-y:var(--t-spacing-2);
785
+ --tds-page-header-nav-padding-x:var(--tds-page-header-padding-x, var(--t-spacing-3));
786
+ --tds-page-header-nav-gap:var(--t-spacing-1);
787
+ --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%);
788
+ --tds-page-header-nav-item-padding-x:var(--t-spacing-1);
789
+ --tds-page-header-nav-item-padding-y:var(--t-spacing-1);
790
+ --tds-page-header-nav-item-color:var(--t-text-color-secondary);
791
+ --tds-page-header-nav-item-background-color:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 35%);
792
+ --tds-page-header-nav-item-border-width:1px;
791
793
 
792
- --tds-sidenav-item-icon-size:var(--t-element-size-md);
793
- --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
794
- --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
795
- --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
794
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-background-color);
795
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color);
796
796
 
797
- --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
798
- --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
799
- --tds-sidenav-item-nested-background-selected:transparent;
797
+ --tds-page-header-nav-item-color-hover:var(--t-text-color);
798
+ --tds-page-header-nav-item-background-color-hover:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 20%);
799
+ --tds-page-header-nav-item-border-color-hover:var(--tds-page-header-nav-item-background-color-hover);
800
800
 
801
- --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
802
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
803
- --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
801
+ --tds-page-header-nav-item-background-color-active:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 10%);
802
+ --tds-page-header-nav-item-border-color-active:var(--tds-page-header-nav-item-background-color-active);
804
803
 
805
- --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
806
- --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
807
- }
804
+ --tds-page-header-nav-item-color-disabled:var(--t-text-color-disabled);
805
+ --tds-page-header-nav-item-background-color-disabled:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 50%);
806
+ --tds-page-header-nav-item-border-color-disabled:var(--tds-page-header-nav-item-background-color-disabled);
808
807
 
809
- @media (prefers-reduced-motion: reduce){
810
- tds-sidenav,
811
- .tds-sidenav{
812
- --tds-sidenav-collapse-transition-enter:none;
813
- --tds-sidenav-collapse-transition-exit:none;
814
- --tds-sidenav-collapse-closed-transform:none;
815
- --tds-sidenav-collapse-open-transform:none;
808
+ --tds-page-header-nav-item-color-selected:var(--t-text-color);
809
+ --tds-page-header-nav-item-background-color-selected:var(--t-surface-color-canvas);
810
+ --tds-page-header-nav-item-border-color-selected:var(--tds-page-header-nav-item-background-color-selected);
811
+ --tds-page-header-nav-item-border-bottom-color-selected:var(--tds-page-header-nav-item-background-color-selected);
812
+ --tds-page-header-nav-item-indicator-color:var(--t-icon-color-status-warning);
816
813
  }
817
- }
818
814
 
819
- .tds-sidenav--theme-gray{
820
- --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
821
- --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
822
- --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
823
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
824
- --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
815
+ .tds-page-header--profile{
816
+ --tds-page-header-padding-y:20px;
825
817
  }
826
- }
827
818
 
828
- .tds-sidenav :where(nav,ul,.tds-sidenav-section){
829
- display:flex;
819
+ @supports (color: light-dark(#fff, #000)){
820
+ .tds-page-header{
821
+ --tds-page-header-nav-background-start:light-dark(rgba(0, 0, 0, 0), rgba(255, 255, 255, 0));
822
+ --tds-page-header-nav-background-end:light-dark(rgba(0, 0, 0, .05), rgba(255, 255, 255, .1));
823
+ }
830
824
  }
831
825
 
832
- .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
833
- flex-direction:column;
834
- gap:var(--t-spacing-half);
835
- width:100%;
826
+ @media (min-width: 600px){
827
+ .tds-page-header{
828
+ --tds-page-header-background-color:var(--t-surface-color-canvas);
829
+ --tds-page-header-color:var(--t-text-color-secondary);
830
+ --tds-page-header-bottom-border-color:var(--t-border-color);
831
+ --tds-page-header-padding-x:var(--t-spacing-3);
832
+ --tds-page-header-headline-font-size:var(--t-font-size-3xl);
833
+ --tds-page-header-nav-gap:var(--t-spacing-half);
834
+ --tds-page-header-nav-background:transparent;
835
+ --tds-page-header-nav-item-padding-x:var(--t-spacing-2);
836
+ --tds-page-header-nav-item-border-width:1px;
837
+ --tds-page-header-nav-item-color:var(--t-text-color);
838
+ --tds-page-header-nav-item-background-color:var(--t-fill-color-neutral-070);
839
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-bottom-border-color);
840
+ --tds-page-header-nav-item-background-color-hover:var(--t-fill-color-neutral-060);
841
+ --tds-page-header-nav-item-background-color-active:var(--t-fill-color-neutral-050);
842
+ --tds-page-header-nav-item-background-color-disabled:var(--t-fill-color-neutral-080);
843
+ --tds-page-header-nav-item-border-color-selected:var(--t-border-color);
844
+ }
836
845
  }
837
-
838
- .tds-sidenav-section-list{
839
- width:100%;
840
- padding:0;
841
- margin:0;
842
- list-style:none;
843
846
  }
844
847
 
845
- .tds-sidenav-section-header{
848
+ .tds-page-header{
846
849
  display:flex;
847
- align-items:baseline;
848
- justify-content:space-between;
849
- padding-top:var(--t-spacing-2);
850
+ flex-direction:column;
851
+ padding-top:var(--tds-page-header-padding-y);
852
+ color:var(--tds-page-header-color);
853
+ background:var(--tds-page-header-background-color);
854
+ border-bottom:1px solid var(--tds-page-header-bottom-border-color);
850
855
  }
851
856
 
852
- .tds-sidenav-section-header h2{
853
- margin:0;
854
- font-size:var(--t-font-size-sm);
855
- font-weight:var(--t-font-weight-semibold);
856
- line-height:1.35;
857
- color:var(--t-text-color-secondary);
858
- text-transform:uppercase;
857
+ .tds-page-header:not(.has-nav){
858
+ padding-bottom:var(--tds-page-header-padding-y);
859
859
  }
860
860
 
861
- .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
862
- padding-top:0;
861
+ .tds-page-header.inactive{
862
+ background:var(--tds-page-header-background-color-inactive);
863
863
  }
864
864
 
865
- .tds-sidenav-section-header [slot="label-actions"]{
866
- display:flex;
867
- gap:var(--t-spacing-half);
868
- align-items:center;
865
+ .tds-page-header :is([slot="actions"],.tds-page-header__actions){
866
+ width:100%;
869
867
  }
870
868
 
871
- .tds-sidenav-section [slot="section-actions"]{
872
- display:flex;
873
- gap:12px;
874
- align-items:center;
875
- min-height:42px;
876
- padding:var(--t-spacing-1) 0;
877
- }
878
-
879
- .tds-sidenav-section-list,
880
- .tds-sidenav-item{
881
- width:100%;
882
- padding:0;
883
- margin:0;
884
- }
885
-
886
- .tds-sidenav-item :is(a,button){
887
- position:relative;
869
+ .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
888
870
  display:flex;
889
- gap:12px;
890
- align-items:center;
891
- width:100%;
892
- padding:12px;
893
- overflow:hidden;
894
- font-size:var(--t-font-size-sm);
895
- line-height:18px;
896
- color:var(--t-text-color-headline);
897
- white-space:nowrap;
898
- text-decoration:none;
899
- -webkit-appearance:none;
900
- -moz-appearance:none;
901
- appearance:none;
902
- cursor:pointer;
903
- background-color:var(--tds-sidenav-item-background, transparent);
904
- border:0;
905
- border-radius:var(--t-border-radius);
906
- transition:var(--tds-sidenav-item-transition);
871
+ flex-flow:row wrap;
872
+ gap:var(--t-spacing-half) var(--t-spacing-1);
873
+ align-items:flex-start;
874
+ justify-content:flex-start;
875
+ min-width:0;
907
876
  }
908
877
 
909
- :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
910
- display:block;
911
- flex:1;
912
- overflow:hidden;
913
- text-overflow:ellipsis;
914
- text-align:left;
915
- white-space:nowrap;
878
+ :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{
879
+ display:flex;
880
+ gap:var(--tds-page-header-nav-gap);
881
+ padding:var(--t-spacing-2) var(--tds-page-header-nav-padding-x) 0;
882
+ margin:0 0 -1px;
883
+ overflow:auto;
884
+ list-style:none;
885
+ background:var(--tds-page-header-nav-background);
916
886
  }
917
887
 
918
- :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
919
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
920
- color:var(--t-text-color-headline);
888
+ :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button){
889
+ position:relative;
890
+ display:inline-flex;
891
+ padding:var(--tds-page-header-nav-item-padding-y) var(--tds-page-header-nav-item-padding-x);
892
+ font-size:var(--t-font-size-sm);
893
+ line-height:22px;
894
+ color:var(--tds-page-header-nav-item-color);
895
+ white-space:nowrap;
921
896
  text-decoration:none;
897
+ -webkit-appearance:none;
898
+ -moz-appearance:none;
899
+ appearance:none;
900
+ cursor:pointer;
901
+ outline-offset:-2px;
902
+ background-color:var(--tds-page-header-nav-item-background-color);
903
+ background-clip:padding-box;
904
+ border:var(--tds-page-header-nav-item-border-width) solid var(--tds-page-header-nav-item-border-color);
905
+ border-bottom:1px solid var(--tds-page-header-nav-item-border-bottom-color);
906
+ border-radius:var(--t-border-radius-md) var(--t-border-radius-md) 0 0;
922
907
  }
923
908
 
924
- :is(.tds-sidenav-item :is(a,button)):active{
925
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
926
- }
927
-
928
- :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
929
- overflow:hidden;
930
- color:var(--tds-sidenav-item-icon-color);
931
- }
932
-
933
- :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{
934
- display:block;
935
- width:var(--tds-sidenav-item-icon-size);
936
- height:var(--tds-sidenav-item-icon-size);
909
+ .selected:is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)){
910
+ --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-selected);
911
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-selected);
912
+ --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-selected);
913
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-selected);
937
914
  }
938
915
 
939
- :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
940
- --tds-sidenav-indent:19px;
941
- }
916
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):hover{
917
+ --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-hover);
918
+ --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-hover);
919
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-hover);
920
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-hover);
921
+ }
942
922
 
943
- [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
944
- visibility:visible;
945
- block-size:auto;
946
- opacity:1;
947
- }
948
-
949
- .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
950
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
951
- --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
952
-
953
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
954
- font-weight:var(--t-font-weight-semibold);
955
- }
956
-
957
- .tds-sidenav-item:has(.tds-sidenav-section){
958
- display:flex;
959
- flex-direction:column;
960
- gap:var(--t-spacing-half);
961
- }
962
-
963
- .tds-sidenav-item .tds-sidenav-section-list{
964
- --tds-sidenav-item-depth:1;
965
- gap:0;
966
- }
923
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):active{
924
+ background-color:var(--tds-page-header-nav-item-background-color-active);
925
+ border-color:var(--tds-page-header-nav-item-border-color-active);
926
+ border-bottom-color:var(--tds-page-header-nav-item-background-color-active);
927
+ }
967
928
 
968
- .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
969
- visibility:hidden;
970
- block-size:0;
971
- overflow-y:clip;
972
- opacity:0;
973
- transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
974
- }
929
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):disabled{
930
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-disabled);
931
+ color:var(--tds-page-header-nav-item-color-disabled);
932
+ cursor:not-allowed;
933
+ background-color:var(--tds-page-header-nav-item-background-color-disabled);
934
+ opacity:1;
935
+ }
975
936
 
976
- :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
977
- --tds-sidenav-item-depth:2;
978
- }
937
+ @media (min-width: 600px){
938
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected)::after{
939
+ position:absolute;
940
+ inset:auto -1px -1px;
941
+ height:1px;
942
+ pointer-events:none;
943
+ content:"";
944
+ background-color:var(--tds-page-header-bottom-border-color);
945
+ }
946
+ }
979
947
 
980
- :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
981
- min-height:var(--t-element-size-2xl);
982
- padding-block:9px;
983
- padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
984
- line-height:1;
985
- background-color:transparent;
948
+ :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator){
949
+ position:relative;
986
950
  }
987
951
 
988
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
989
- position:absolute;
990
- top:0;
991
- bottom:0;
992
- left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
993
- width:2px;
994
- content:"";
995
- background-color:var(--tds-sidenav-item-nested-border-color);
996
- transition:var(--tds-sidenav-item-transition);
952
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator)) :is(a,button){
953
+ -webkit-mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
954
+ mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
997
955
  }
998
956
 
999
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
957
+ :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{
1000
958
  position:absolute;
1001
- inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1002
- z-index:-1;
1003
- height:100%;
959
+ top:-5px;
960
+ right:-2px;
961
+ width:10px;
962
+ height:10px;
1004
963
  content:"";
1005
- background-color:var(--tds-sidenav-item-nested-background);
1006
- border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
1007
- transition:var(--tds-sidenav-item-transition);
1008
- }
1009
-
1010
- :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)){
1011
- display:block;
1012
- text-align:left;
1013
- white-space:normal;
1014
- }
1015
-
1016
- :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{
1017
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
1018
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
964
+ background:var(--tds-page-header-nav-item-indicator-color);
965
+ border-radius:50%;
1019
966
  }
1020
967
 
1021
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
1022
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
968
+ @media (prefers-reduced-motion: no-preference){
969
+ :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::after{
970
+ animation:indicator-pulse 1.25s ease infinite;
971
+ }
1023
972
  }
1024
973
 
1025
- .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1026
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
1027
- font-weight:var(--t-font-weight-medium);
1028
- }
1029
-
1030
- .tds-sidenav-responsive-header{
974
+ .tds-page-header__title-bar{
1031
975
  display:flex;
1032
- gap:var(--t-spacing-2);
1033
- align-items:center;
1034
- width:100%;
976
+ flex-direction:column;
977
+ gap:var(--t-spacing-2) var(--t-spacing-1);
978
+ align-items:flex-start;
979
+ justify-content:space-between;
980
+ padding:0 var(--tds-page-header-padding-x);
1035
981
  }
1036
982
 
1037
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
1038
- order:0;
983
+ .tds-page-header--profile > .tds-page-header__title-bar{
984
+ align-items:center;
1039
985
  }
1040
986
 
1041
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
1042
- flex:1;
1043
- order:1;
1044
- margin:0;
1045
- font-size:var(--t-font-size-lg);
1046
- font-weight:var(--t-font-weight-medium);
1047
- color:var(--t-text-color-headline);
1048
- }
987
+ .tds-page-header__primary{
988
+ width:100%;
989
+ }
1049
990
 
1050
- @media (max-width: 719px){
1051
- .tds-sidenav-collapse{
1052
- z-index:10001;
1053
- display:none;
1054
- max-width:min(448px, calc(100vw - 48px));
1055
- padding:0;
1056
- margin:12px 0;
1057
- position-area:bottom span-right;
1058
- overflow:hidden;
1059
- outline:0;
1060
- background:var(--t-surface-color-card);
1061
- border:0;
1062
- border-radius:6px;
1063
- box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
1064
- opacity:var(--tds-sidenav-collapse-open-opacity);
1065
- transform:var(--tds-sidenav-collapse-open-transform);
1066
- transition:var(--tds-sidenav-collapse-transition-enter);
1067
- will-change:transform;
991
+ .tds-page-header__primary h1{
992
+ margin:0;
993
+ font-size:var(--tds-page-header-headline-font-size);
994
+ font-weight:var(--t-font-weight-normal);
995
+ line-height:32px;
996
+ color:var(--tds-page-header-headline-color);
997
+ overflow-wrap:break-word;
1068
998
  }
1069
999
 
1070
- .tds-sidenav-scroll-container{
1071
- --webkit-overflow-scrolling:touch;
1072
- display:block;
1073
- width:100%;
1074
- height:-moz-fit-content;
1075
- height:fit-content;
1076
- padding:var(--t-spacing-2);
1077
- overflow-y:auto;
1000
+ @media (min-width: 960px){
1001
+ .tds-page-header__primary{
1002
+ flex:1 1 max-content;
1003
+ width:auto;
1004
+ min-width:0;
1005
+ max-width:100%;
1078
1006
  }
1079
1007
 
1080
- .tds-sidenav-item :is(a, button) :is(.prefix){
1081
- display:none;
1008
+ .tds-page-header__title-bar,
1009
+ .tds-page-header--profile .tds-page-header__title-bar{
1010
+ flex-flow:row nowrap;
1011
+ row-gap:12px;
1012
+ align-items:flex-start;
1082
1013
  }
1083
- @supports selector(:popover-open){
1084
- .tds-sidenav-collapse:popover-open{
1085
- display:flex;
1014
+ .tds-page-header :is([slot="actions"],.tds-page-header__actions){
1015
+ width:auto;
1086
1016
  }
1087
1017
 
1088
- .tds-sidenav-collapse:not(:popover-open){
1089
- opacity:var(--tds-sidenav-collapse-closed-opacity);
1090
- transition:var(--tds-sidenav-collapse-transition-exit);
1018
+ .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
1019
+ justify-content:flex-end;
1091
1020
  }
1021
+ }
1092
1022
 
1093
- @starting-style{
1094
- .tds-sidenav-collapse:popover-open{
1095
- opacity:var(--tds-sidenav-collapse-closed-opacity);
1096
- transform:var(--tds-sidenav-collapse-closed-transform);
1097
- }
1098
- }
1099
- }
1100
- @supports not selector(:popover-open){
1101
- .tds-sidenav-collapse.\:popover-open{
1102
- display:flex;
1103
- }
1023
+ .tds-page-header-phone,
1024
+ .tds-page-header-email{
1025
+ color:var(--tds-page-header-color);
1026
+ white-space:nowrap;
1027
+ }
1104
1028
 
1105
- .tds-sidenav-collapse:not(.\:popover-open){
1106
- opacity:var(--tds-sidenav-collapse-closed-opacity);
1107
- transition:var(--tds-sidenav-collapse-transition-exit);
1108
- }
1109
- }
1029
+ .tds-page-header-email{
1030
+ max-width:100%;
1031
+ overflow:hidden;
1032
+ text-overflow:ellipsis;
1110
1033
  }
1111
1034
 
1112
- @media (min-width: 720px){
1113
- .tds-sidenav-responsive-header{
1114
- display:none;
1035
+ @keyframes indicator-pulse{
1036
+ 0%{
1037
+ opacity:.3;
1038
+ transform:scale(.9);
1039
+ }
1040
+
1041
+ 100%{
1042
+ opacity:0;
1043
+ transform:scale(1.75);
1115
1044
  }
1116
1045
  }
1117
1046
 
1118
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
1119
- display:none;
1120
- }
1121
1047
 
1122
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
1123
- display:block;
1124
- }
1048
+ @media (prefers-reduced-motion: no-preference){
1125
1049
 
1126
- tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1127
- display:flex;
1128
- flex-direction:column;
1129
- }
1050
+ :root{
1051
+ interpolate-size:allow-keywords;
1052
+ }
1053
+ }
1130
1054
 
1131
- .tds-checkbox{
1132
- --tds-checkbox-font-size:var(--t-font-size-md);
1133
- --tds-checkbox-cursor:pointer;
1134
- --tds-checkbox-line-height:1.4;
1135
- --tds-checkbox-transition-property:background-color, border-color;
1055
+ @layer tds-component{
1056
+ tds-sidenav,
1057
+ .tds-sidenav{
1058
+ --tds-sidenav-indent:12px;
1059
+ --tds-sidenav-item-depth:0;
1136
1060
 
1137
- --tds-checkbox-input-size:var(--t-element-size-md);
1138
- --tds-checkbox-input-border-radius:var(--t-border-radius-sm);
1139
- --tds-checkbox-input-border-color:var(--t-form-border-color);
1140
- --tds-checkbox-input-background-color:var(--t-form-background-color);
1061
+ --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
1141
1062
 
1142
- --tds-checkbox-input-icon:none;
1143
- --tds-checkbox-input-icon-visibility:hidden;
1144
- --tds-checkbox-input-icon-opacity:0;
1145
- --tds-checkbox-input-icon-fill:var(--t-icon-color-inverted);
1063
+ --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;
1064
+ --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;
1065
+ --tds-sidenav-collapse-closed-opacity:0;
1066
+ --tds-sidenav-collapse-open-opacity:1;
1067
+ --tds-sidenav-collapse-closed-transform:translateY(-8px);
1068
+ --tds-sidenav-collapse-open-transform:translateY(0);
1146
1069
 
1147
- --tds-checkbox-label-color:var(--t-form-color);
1070
+ --tds-sidenav-item-icon-size:var(--t-element-size-md);
1071
+ --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
1072
+ --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
1073
+ --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
1148
1074
 
1149
- --tds-checkbox-description-font-size:var(--t-font-size-sm);
1150
- --tds-checkbox-description-line-height:1.35;
1151
- --tds-checkbox-description-color:var(--t-text-color-secondary);
1152
- --tds-checkbox-description-invalid-icon-display:none;
1075
+ --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
1076
+ --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
1077
+ --tds-sidenav-item-nested-background-selected:transparent;
1153
1078
 
1154
- position:relative;
1155
- display:inline-grid;
1156
- grid-template-columns:auto;
1157
- grid-auto-columns:1fr;
1158
- gap:var(--t-spacing-fourth) 0;
1159
- line-height:var(--tds-checkbox-line-height);
1160
- -webkit-user-select:none;
1161
- -moz-user-select:none;
1162
- user-select:none;
1079
+ --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
1080
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1081
+ --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
1082
+
1083
+ --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
1084
+ --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
1085
+ }
1086
+
1087
+ @media (prefers-reduced-motion: reduce){
1088
+ tds-sidenav,
1089
+ .tds-sidenav{
1090
+ --tds-sidenav-collapse-transition-enter:none;
1091
+ --tds-sidenav-collapse-transition-exit:none;
1092
+ --tds-sidenav-collapse-closed-transform:none;
1093
+ --tds-sidenav-collapse-open-transform:none;
1094
+ }
1095
+ }
1096
+
1097
+ .tds-sidenav--theme-gray{
1098
+ --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
1099
+ --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
1100
+ --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
1101
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
1102
+ --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
1103
+ }
1163
1104
  }
1164
1105
 
1165
- .tds-checkbox label{
1166
- grid-area:1 / 2;
1167
- padding-inline-start:var(--t-spacing-1);
1168
- font-size:var(--tds-checkbox-font-size);
1169
- font-weight:var(--t-font-weight-normal);
1170
- color:var(--tds-checkbox-label-color);
1171
- cursor:var(--tds-checkbox-cursor);
1106
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section){
1107
+ display:flex;
1172
1108
  }
1173
1109
 
1174
- .tds-checkbox tds-indeterminate{
1110
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
1111
+ flex-direction:column;
1112
+ gap:var(--t-spacing-half);
1113
+ width:100%;
1114
+ }
1115
+
1116
+ .tds-sidenav-section-list{
1117
+ width:100%;
1118
+ padding:0;
1119
+ margin:0;
1120
+ list-style:none;
1121
+ }
1122
+
1123
+ .tds-sidenav-section-header{
1124
+ display:flex;
1125
+ align-items:baseline;
1126
+ justify-content:space-between;
1127
+ padding-top:var(--t-spacing-2);
1128
+ }
1129
+
1130
+ .tds-sidenav-section-header h2{
1131
+ margin:0;
1132
+ font-size:var(--t-font-size-sm);
1133
+ font-weight:var(--t-font-weight-semibold);
1134
+ line-height:1.35;
1135
+ color:var(--t-text-color-secondary);
1136
+ text-transform:uppercase;
1137
+ }
1138
+
1139
+ .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
1140
+ padding-top:0;
1141
+ }
1142
+
1143
+ .tds-sidenav-section-header [slot="label-actions"]{
1175
1144
  display:flex;
1145
+ gap:var(--t-spacing-half);
1146
+ align-items:center;
1176
1147
  }
1177
1148
 
1178
- .tds-checkbox input[type="checkbox"]{
1149
+ .tds-sidenav-section [slot="section-actions"]{
1150
+ display:flex;
1151
+ gap:12px;
1152
+ align-items:center;
1153
+ min-height:42px;
1154
+ padding:var(--t-spacing-1) 0;
1155
+ }
1156
+
1157
+ .tds-sidenav-section-list,
1158
+ .tds-sidenav-item{
1159
+ width:100%;
1160
+ padding:0;
1161
+ margin:0;
1162
+ }
1163
+
1164
+ .tds-sidenav-item :is(a,button){
1179
1165
  position:relative;
1180
- width:1em;
1181
- height:1em;
1182
- margin:calc((1lh - 1em) / 2) 0 0;
1183
- font-size:var(--tds-checkbox-font-size);
1184
- line-height:inherit;
1166
+ display:flex;
1167
+ gap:12px;
1168
+ align-items:center;
1169
+ width:100%;
1170
+ padding:12px;
1171
+ overflow:hidden;
1172
+ font-size:var(--t-font-size-sm);
1173
+ line-height:18px;
1174
+ color:var(--t-text-color-headline);
1175
+ white-space:nowrap;
1176
+ text-decoration:none;
1185
1177
  -webkit-appearance:none;
1186
1178
  -moz-appearance:none;
1187
1179
  appearance:none;
1188
- cursor:var(--tds-checkbox-cursor);
1189
- background-color:var(--tds-checkbox-input-background-color);
1190
- border:var(--t-form-border-width) solid var(--tds-checkbox-input-border-color);
1191
- border-radius:var(--tds-checkbox-input-border-radius);
1192
- transition-timing-function:var(--t-ease-in-out);
1193
- transition-duration:var(--t-duration-200);
1194
- transition-property:var(--tds-checkbox-transition-property);
1180
+ cursor:pointer;
1181
+ background-color:var(--tds-sidenav-item-background, transparent);
1182
+ border:0;
1183
+ border-radius:var(--t-border-radius);
1184
+ transition:var(--tds-sidenav-item-transition);
1195
1185
  }
1196
1186
 
1197
- :is(.tds-checkbox input[type="checkbox"])::before{
1198
- position:absolute;
1199
- top:50%;
1200
- left:50%;
1201
- visibility:var(--tds-checkbox-input-icon-visibility);
1202
- width:100%;
1203
- height:100%;
1204
- content:"";
1205
- background-color:var(--tds-checkbox-input-icon-fill);
1206
- border-radius:var(--tds-checkbox-input-border-radius);
1207
- opacity:var(--tds-checkbox-input-icon-opacity);
1208
- -webkit-mask-image:var(--tds-checkbox-input-icon);
1209
- mask-image:var(--tds-checkbox-input-icon);
1210
- -webkit-mask-repeat:no-repeat;
1211
- mask-repeat:no-repeat;
1212
- -webkit-mask-size:contain;
1213
- mask-size:contain;
1214
- transform:translate(-50%, -50%);
1187
+ :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
1188
+ display:block;
1189
+ flex:1;
1190
+ overflow:hidden;
1191
+ text-overflow:ellipsis;
1192
+ text-align:left;
1193
+ white-space:nowrap;
1215
1194
  }
1216
1195
 
1217
- :is(.tds-checkbox input[type="checkbox"]):hover:not(:disabled){
1218
- --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
1219
- --tds-checkbox-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
1196
+ :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
1197
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
1198
+ color:var(--t-text-color-headline);
1199
+ text-decoration:none;
1220
1200
  }
1221
1201
 
1222
- :is(.tds-checkbox input[type="checkbox"]):focus-visible{
1223
- outline:var(--t-focus-ring-outline);
1224
- outline-offset:var(--t-focus-ring-offset);
1202
+ :is(.tds-sidenav-item :is(a,button)):active{
1203
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
1225
1204
  }
1226
1205
 
1227
- :is(.tds-checkbox input[type="checkbox"]):disabled{
1228
- pointer-events:none;
1206
+ :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
1207
+ overflow:hidden;
1208
+ color:var(--tds-sidenav-item-icon-color);
1229
1209
  }
1230
1210
 
1231
- @media (prefers-reduced-motion: reduce){
1211
+ :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{
1212
+ display:block;
1213
+ width:var(--tds-sidenav-item-icon-size);
1214
+ height:var(--tds-sidenav-item-icon-size);
1215
+ }
1232
1216
 
1233
- .tds-checkbox input[type="checkbox"]{
1234
- --tds-checkbox-transition-property:none;
1235
- }
1217
+ :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
1218
+ --tds-sidenav-indent:19px;
1236
1219
  }
1237
1220
 
1238
- .tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate){
1239
- --tds-checkbox-input-background-color:var(--t-fill-color-control);
1240
- --tds-checkbox-input-border-color:var(--t-border-color-control-info);
1241
- --tds-checkbox-input-icon-visibility:visible;
1242
- --tds-checkbox-input-icon-opacity:1;
1243
- }
1244
-
1245
- :is(.tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate)) input:hover:not(:disabled){
1246
- --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
1247
- --tds-checkbox-input-background-color:var(--t-fill-color-interaction-hover);
1221
+ [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
1222
+ visibility:visible;
1223
+ block-size:auto;
1224
+ opacity:1;
1248
1225
  }
1249
1226
 
1250
- .tds-checkbox:has(input:checked){
1251
- --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjUwMjAxIDExLjQyOTNMMy42NzM3NCA4LjM5MkMzLjUxNjE2IDguMjI0ODkgMy41MTYxNiA3Ljk1Mjg5IDMuNjczNzQgNy43ODRMNC4yNDUwNSA3LjE3Njg5QzQuNDAyNjIgNy4wMDk3OCA0LjY1ODc4IDcuMDA5NzggNC44MTYzNiA3LjE3Njg5TDYuNzg4MDcgOS4zMDMxMUwxMS4xODMyIDQuNTY5NzhDMTEuMzQwOCA0LjQwMjY2IDExLjU5NjkgNC40MDI2NiAxMS43NTQ1IDQuNTY5NzhMMTIuMzI1OCA1LjE3Nzc4QzEyLjQ4MzQgNS4zNDQ4OSAxMi40ODM0IDUuNjE3NzggMTIuMzI1OCA1Ljc4NEw3LjA3MzMyIDExLjQyOTNDNi45MTU3NCAxMS41OTY0IDYuNjU5NTggMTEuNTk2NCA2LjUwMjAxIDExLjQyOTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
1227
+ .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
1228
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
1229
+ --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
1230
+
1231
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
1232
+ font-weight:var(--t-font-weight-semibold);
1252
1233
  }
1253
1234
 
1254
- .tds-checkbox:has(input:indeterminate){
1255
- --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMy41NTU1NiIgeT0iNy4xMTExMSIgd2lkdGg9IjguODg4ODkiIGhlaWdodD0iMS43Nzc3OCIgcng9IjAuODg4ODg5IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
1235
+ .tds-sidenav-item:has(.tds-sidenav-section){
1236
+ display:flex;
1237
+ flex-direction:column;
1238
+ gap:var(--t-spacing-half);
1256
1239
  }
1257
1240
 
1258
- .tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid{
1259
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1260
- --tds-checkbox-description-color:var(--t-text-color-status-error);
1261
- --tds-checkbox-description-invalid-icon-display:inline-block;
1241
+ .tds-sidenav-item .tds-sidenav-section-list{
1242
+ --tds-sidenav-item-depth:1;
1243
+ gap:0;
1262
1244
  }
1263
1245
 
1264
- :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:hover:not(:disabled){
1265
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1266
- --tds-checkbox-input-background-color:var(--t-form-background-color-error);
1246
+ .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
1247
+ visibility:hidden;
1248
+ block-size:0;
1249
+ overflow-y:clip;
1250
+ opacity:0;
1251
+ transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
1267
1252
  }
1268
1253
 
1269
- :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:checked,:is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:indeterminate{
1270
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1271
- --tds-checkbox-input-background-color:var(--t-form-border-color-error);
1254
+ :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
1255
+ --tds-sidenav-item-depth:2;
1272
1256
  }
1273
1257
 
1274
- :is(:is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:checked,:is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:indeterminate):hover:not(:disabled){
1275
- --tds-checkbox-input-border-color:var(--t-form-border-color-error-hover);
1276
- --tds-checkbox-input-background-color:var(--t-form-border-color-error-hover);
1277
- }
1278
-
1279
- .tds-checkbox:has(input:required) label::after{
1280
- margin-left:.25ch;
1281
- color:var(--t-text-color-status-error);
1282
- content:"*";
1258
+ :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1259
+ min-height:var(--t-element-size-2xl);
1260
+ padding-block:9px;
1261
+ padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
1262
+ line-height:1;
1263
+ background-color:transparent;
1283
1264
  }
1284
1265
 
1285
- .tds-checkbox:has(input:disabled){
1286
- --tds-checkbox-input-background-color:var(--t-form-background-color-disabled);
1287
- --tds-checkbox-input-border-color:var(--t-form-border-color-disabled);
1288
-
1289
- --tds-checkbox-label-color:var(--t-form-color-disabled);
1290
- --tds-checkbox-description-color:var(--t-form-color-disabled);
1291
- --tds-checkbox-cursor:not-allowed;
1292
- }
1293
-
1294
- .tds-checkbox:has(input:disabled) input:checked,.tds-checkbox:has(input:disabled) input:indeterminate{
1295
- --tds-checkbox-input-background-color:var(--t-border-color-control-disabled);
1296
- }
1266
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
1267
+ position:absolute;
1268
+ top:0;
1269
+ bottom:0;
1270
+ left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1271
+ width:2px;
1272
+ content:"";
1273
+ background-color:var(--tds-sidenav-item-nested-border-color);
1274
+ transition:var(--tds-sidenav-item-transition);
1275
+ }
1297
1276
 
1298
- .tds-checkbox-description{
1299
- display:flex;
1300
- grid-area:2 / 2;
1301
- gap:var(--t-spacing-half);
1302
- align-items:flex-start;
1303
- padding-inline-start:var(--t-spacing-1);
1304
- margin:0;
1305
- font-size:var(--tds-checkbox-description-font-size);
1306
- line-height:var(--tds-checkbox-description-line-height);
1307
- color:var(--tds-checkbox-description-color);
1308
- cursor:text;
1309
- }
1277
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
1278
+ position:absolute;
1279
+ inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
1280
+ z-index:-1;
1281
+ height:100%;
1282
+ content:"";
1283
+ background-color:var(--tds-sidenav-item-nested-background);
1284
+ border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
1285
+ transition:var(--tds-sidenav-item-transition);
1286
+ }
1310
1287
 
1311
- .tds-checkbox-description .tds-checkbox-description-invalid-icon{
1312
- display:var(--tds-checkbox-description-invalid-icon-display);
1313
- flex-shrink:0;
1314
- margin-top:calc(.5lh - .5em);
1315
- line-height:var(--tds-checkbox-description-line-height);
1316
- }
1288
+ :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)){
1289
+ display:block;
1290
+ text-align:left;
1291
+ white-space:normal;
1292
+ }
1317
1293
 
1318
- .tds-checkbox--sm{
1319
- --tds-checkbox-line-height:1.35;
1320
- --tds-checkbox-input-size:var(--t-element-size-sm);
1321
- --tds-checkbox-font-size:var(--t-font-size-sm);
1322
- --tds-checkbox-description-font-size:var(--t-font-size-xs);
1323
- --tds-checkbox-description-line-height:1.3;
1324
- }
1294
+ :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{
1295
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
1296
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
1297
+ }
1325
1298
 
1326
- .tds-button-group{
1327
- display:inline-flex;
1328
- }
1329
- .tds-button-group > .tds-btn{
1330
- --tds-button-group-item-z-index:1;
1299
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
1300
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
1301
+ }
1331
1302
 
1332
- z-index:var(--tds-button-group-item-z-index);
1333
- border-radius:0;
1334
- }
1335
- :is(.tds-button-group > .tds-btn):not(:first-child){
1336
- margin-inline-start:calc(var(--tds-btn-border-width) * -1);
1337
- }
1338
- :is(.tds-button-group > .tds-btn):hover{
1339
- --tds-button-group-item-z-index:2;
1340
- }
1341
- :is(.tds-button-group > .tds-btn):focus-visible{
1342
- --tds-button-group-item-z-index:5;
1303
+ .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
1304
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
1305
+ font-weight:var(--t-font-weight-medium);
1343
1306
  }
1344
- .tds-button-group > .tds-btn:first-child{
1345
- border-start-start-radius:var(--tds-btn-border-radius);
1346
- border-end-start-radius:var(--tds-btn-border-radius);
1347
- }
1348
- .tds-button-group > .tds-btn:last-child{
1349
- border-start-end-radius:var(--tds-btn-border-radius);
1350
- border-end-end-radius:var(--tds-btn-border-radius);
1351
- }
1352
1307
 
1353
- .tds-checkbox-group{
1354
- --tds-checkbox-group-font-size:var(--t-font-size-md);
1355
- --tds-checkbox-group-line-height:1.4;
1356
- --tds-checkbox-group-gap:var(--t-spacing-1);
1357
-
1358
- --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
1359
- --tds-checkbox-group-description-line-height:1.35;
1360
- --tds-checkbox-group-description-color:var(--t-text-color-secondary);
1361
- --tds-checkbox-group-description-invalid-icon-display:none;
1308
+ .tds-sidenav-responsive-header{
1362
1309
  display:flex;
1363
- flex-direction:column;
1364
- gap:0;
1365
- padding:0;
1366
- margin:0;
1367
-
1368
- font-size:var(--tds-checkbox-group-font-size);
1369
- line-height:var(--tds-checkbox-group-line-height);
1370
- border:0;
1310
+ gap:var(--t-spacing-2);
1311
+ align-items:center;
1312
+ width:100%;
1371
1313
  }
1372
1314
 
1373
- .tds-checkbox-group legend{
1374
- float:left;
1375
- padding:0;
1376
- margin:0;
1377
- }
1378
-
1379
- .tds-checkbox-group[aria-invalid="true"]{
1380
- --tds-checkbox-group-description-color:var(--t-text-color-status-error);
1381
- --tds-checkbox-group-description-invalid-icon-display:inline-block;
1315
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
1316
+ order:0;
1382
1317
  }
1383
1318
 
1384
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
1385
- margin-left:.25ch;
1386
- color:var(--t-text-color-status-error);
1387
- content:"*";
1388
- }
1389
-
1390
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
1391
- content:none;
1392
- }
1393
-
1394
- .tds-checkbox-group-fields{
1395
- display:flex;
1396
- flex-direction:column;
1397
- gap:var(--tds-checkbox-group-gap);
1398
- align-items:flex-start;
1399
- margin-top:var(--t-spacing-1);
1400
- }
1401
-
1402
- .tds-checkbox-group-description{
1403
- display:flex;
1404
- gap:var(--t-spacing-half);
1405
- align-items:flex-start;
1406
- margin:var(--t-spacing-fourth) 0 0;
1407
- font-size:var(--tds-checkbox-group-description-font-size);
1408
- line-height:var(--tds-checkbox-group-description-line-height);
1409
- color:var(--tds-checkbox-group-description-color);
1410
- cursor:text;
1411
- }
1412
-
1413
- .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
1414
- display:var(--tds-checkbox-group-description-invalid-icon-display);
1415
- flex-shrink:0;
1416
- margin-top:calc(.5lh - .5em);
1417
- line-height:var(--tds-checkbox-group-description-line-height);
1319
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
1320
+ flex:1;
1321
+ order:1;
1322
+ margin:0;
1323
+ font-size:var(--t-font-size-lg);
1324
+ font-weight:var(--t-font-weight-medium);
1325
+ color:var(--t-text-color-headline);
1418
1326
  }
1419
1327
 
1420
- .tds-checkbox-group--sm{
1421
- --tds-checkbox-group-line-height:1.35;
1422
- --tds-checkbox-group-font-size:var(--t-font-size-sm);
1423
- --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
1424
- --tds-checkbox-group-description-line-height:1.3;
1425
- }
1426
-
1427
- @layer t-critical{
1428
- tds-page-header:not(.hydrated){
1328
+ @media (max-width: 719px){
1329
+ .tds-sidenav-collapse{
1330
+ z-index:10001;
1429
1331
  display:none;
1332
+ max-width:min(448px, calc(100vw - 48px));
1333
+ padding:0;
1334
+ margin:12px 0;
1335
+ position-area:bottom span-right;
1336
+ overflow:hidden;
1337
+ outline:0;
1338
+ background:var(--t-surface-color-card);
1339
+ border:0;
1340
+ border-radius:6px;
1341
+ box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
1342
+ opacity:var(--tds-sidenav-collapse-open-opacity);
1343
+ transform:var(--tds-sidenav-collapse-open-transform);
1344
+ transition:var(--tds-sidenav-collapse-transition-enter);
1345
+ will-change:transform;
1430
1346
  }
1431
- }
1432
-
1433
- @layer t-component{
1434
- .tds-page-header{
1435
- --tds-page-header-background-color:var(--t-fill-color-product-current-gradient-tint, var(--t-surface-color-canvas));
1436
- --tds-page-header-background-color-inactive:var(--t-fill-color-neutral-090);
1437
- --tds-page-header-color:var(--t-text-color);
1438
- --tds-page-header-bottom-border-color:transparent;
1439
- --tds-page-header-headline-color:var(--t-text-color-headline);
1440
- --tds-page-header-headline-font-size:var(--t-font-size-2xl);
1441
- --tds-page-header-padding-x:var(--t-spacing-2);
1442
- --tds-page-header-padding-y:var(--t-spacing-2);
1443
- --tds-page-header-nav-padding-x:var(--tds-page-header-padding-x, var(--t-spacing-3));
1444
- --tds-page-header-nav-gap:var(--t-spacing-1);
1445
- --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%);
1446
- --tds-page-header-nav-item-padding-x:var(--t-spacing-1);
1447
- --tds-page-header-nav-item-padding-y:var(--t-spacing-1);
1448
- --tds-page-header-nav-item-color:var(--t-text-color-secondary);
1449
- --tds-page-header-nav-item-background-color:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 35%);
1450
- --tds-page-header-nav-item-border-width:1px;
1451
-
1452
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-background-color);
1453
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color);
1454
-
1455
- --tds-page-header-nav-item-color-hover:var(--t-text-color);
1456
- --tds-page-header-nav-item-background-color-hover:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 20%);
1457
- --tds-page-header-nav-item-border-color-hover:var(--tds-page-header-nav-item-background-color-hover);
1458
-
1459
- --tds-page-header-nav-item-background-color-active:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 10%);
1460
- --tds-page-header-nav-item-border-color-active:var(--tds-page-header-nav-item-background-color-active);
1461
-
1462
- --tds-page-header-nav-item-color-disabled:var(--t-text-color-disabled);
1463
- --tds-page-header-nav-item-background-color-disabled:color-mix(in srgb, var(--t-surface-color-canvas) 100%, transparent 50%);
1464
- --tds-page-header-nav-item-border-color-disabled:var(--tds-page-header-nav-item-background-color-disabled);
1465
-
1466
- --tds-page-header-nav-item-color-selected:var(--t-text-color);
1467
- --tds-page-header-nav-item-background-color-selected:var(--t-surface-color-canvas);
1468
- --tds-page-header-nav-item-border-color-selected:var(--tds-page-header-nav-item-background-color-selected);
1469
- --tds-page-header-nav-item-border-bottom-color-selected:var(--tds-page-header-nav-item-background-color-selected);
1470
- --tds-page-header-nav-item-indicator-color:var(--t-icon-color-status-warning);
1471
- }
1472
-
1473
- .tds-page-header--profile{
1474
- --tds-page-header-padding-y:20px;
1475
- }
1476
-
1477
- @supports (color: light-dark(#fff, #000)){
1478
- .tds-page-header{
1479
- --tds-page-header-nav-background-start:light-dark(rgba(0, 0, 0, 0), rgba(255, 255, 255, 0));
1480
- --tds-page-header-nav-background-end:light-dark(rgba(0, 0, 0, .05), rgba(255, 255, 255, .1));
1481
- }
1482
- }
1483
-
1484
- @media (min-width: 600px){
1485
- .tds-page-header{
1486
- --tds-page-header-background-color:var(--t-surface-color-canvas);
1487
- --tds-page-header-color:var(--t-text-color-secondary);
1488
- --tds-page-header-bottom-border-color:var(--t-border-color);
1489
- --tds-page-header-padding-x:var(--t-spacing-3);
1490
- --tds-page-header-headline-font-size:var(--t-font-size-3xl);
1491
- --tds-page-header-nav-gap:var(--t-spacing-half);
1492
- --tds-page-header-nav-background:transparent;
1493
- --tds-page-header-nav-item-padding-x:var(--t-spacing-2);
1494
- --tds-page-header-nav-item-border-width:1px;
1495
- --tds-page-header-nav-item-color:var(--t-text-color);
1496
- --tds-page-header-nav-item-background-color:var(--t-fill-color-neutral-070);
1497
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-bottom-border-color);
1498
- --tds-page-header-nav-item-background-color-hover:var(--t-fill-color-neutral-060);
1499
- --tds-page-header-nav-item-background-color-active:var(--t-fill-color-neutral-050);
1500
- --tds-page-header-nav-item-background-color-disabled:var(--t-fill-color-neutral-080);
1501
- --tds-page-header-nav-item-border-color-selected:var(--t-border-color);
1502
- }
1503
- }
1504
- }
1505
-
1506
- .tds-page-header{
1507
- display:flex;
1508
- flex-direction:column;
1509
- padding-top:var(--tds-page-header-padding-y);
1510
- color:var(--tds-page-header-color);
1511
- background:var(--tds-page-header-background-color);
1512
- border-bottom:1px solid var(--tds-page-header-bottom-border-color);
1513
- }
1514
-
1515
- .tds-page-header:not(.has-nav){
1516
- padding-bottom:var(--tds-page-header-padding-y);
1517
- }
1518
-
1519
- .tds-page-header.inactive{
1520
- background:var(--tds-page-header-background-color-inactive);
1521
- }
1522
-
1523
- .tds-page-header :is([slot="actions"],.tds-page-header__actions){
1524
- width:100%;
1525
- }
1526
-
1527
- .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
1528
- display:flex;
1529
- flex-flow:row wrap;
1530
- gap:var(--t-spacing-half) var(--t-spacing-1);
1531
- align-items:flex-start;
1532
- justify-content:flex-start;
1533
- min-width:0;
1534
- }
1535
-
1536
- :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{
1537
- display:flex;
1538
- gap:var(--tds-page-header-nav-gap);
1539
- padding:var(--t-spacing-2) var(--tds-page-header-nav-padding-x) 0;
1540
- margin:0 0 -1px;
1541
- overflow:auto;
1542
- list-style:none;
1543
- background:var(--tds-page-header-nav-background);
1544
- }
1545
-
1546
- :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button){
1547
- position:relative;
1548
- display:inline-flex;
1549
- padding:var(--tds-page-header-nav-item-padding-y) var(--tds-page-header-nav-item-padding-x);
1550
- font-size:var(--t-font-size-sm);
1551
- line-height:22px;
1552
- color:var(--tds-page-header-nav-item-color);
1553
- white-space:nowrap;
1554
- text-decoration:none;
1555
- -webkit-appearance:none;
1556
- -moz-appearance:none;
1557
- appearance:none;
1558
- cursor:pointer;
1559
- outline-offset:-2px;
1560
- background-color:var(--tds-page-header-nav-item-background-color);
1561
- background-clip:padding-box;
1562
- border:var(--tds-page-header-nav-item-border-width) solid var(--tds-page-header-nav-item-border-color);
1563
- border-bottom:1px solid var(--tds-page-header-nav-item-border-bottom-color);
1564
- border-radius:var(--t-border-radius-md) var(--t-border-radius-md) 0 0;
1565
- }
1566
-
1567
- .selected:is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)){
1568
- --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-selected);
1569
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-selected);
1570
- --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-selected);
1571
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-selected);
1572
- }
1573
-
1574
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):hover{
1575
- --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-hover);
1576
- --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-hover);
1577
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-hover);
1578
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-hover);
1579
- }
1580
-
1581
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):active{
1582
- background-color:var(--tds-page-header-nav-item-background-color-active);
1583
- border-color:var(--tds-page-header-nav-item-border-color-active);
1584
- border-bottom-color:var(--tds-page-header-nav-item-background-color-active);
1585
- }
1586
-
1587
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected):disabled{
1588
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-disabled);
1589
- color:var(--tds-page-header-nav-item-color-disabled);
1590
- cursor:not-allowed;
1591
- background-color:var(--tds-page-header-nav-item-background-color-disabled);
1592
- opacity:1;
1593
- }
1594
-
1595
- @media (min-width: 600px){
1596
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) :is(a,button)):not(.selected)::after{
1597
- position:absolute;
1598
- inset:auto -1px -1px;
1599
- height:1px;
1600
- pointer-events:none;
1601
- content:"";
1602
- background-color:var(--tds-page-header-bottom-border-color);
1603
- }
1604
- }
1605
-
1606
- :is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator){
1607
- position:relative;
1608
- }
1609
-
1610
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator)) :is(a,button){
1611
- -webkit-mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
1612
- mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
1613
- }
1614
-
1615
- :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{
1616
- position:absolute;
1617
- top:-5px;
1618
- right:-2px;
1619
- width:10px;
1620
- height:10px;
1621
- content:"";
1622
- background:var(--tds-page-header-nav-item-indicator-color);
1623
- border-radius:50%;
1624
- }
1625
-
1626
- @media (prefers-reduced-motion: no-preference){
1627
- :is(:is(.tds-page-header nav:is([slot="navigation"],.tds-page-header__nav)) li:has(.indicator))::after{
1628
- animation:indicator-pulse 1.25s ease infinite;
1629
- }
1630
- }
1631
-
1632
- .tds-page-header__title-bar{
1633
- display:flex;
1634
- flex-direction:column;
1635
- gap:var(--t-spacing-2) var(--t-spacing-1);
1636
- align-items:flex-start;
1637
- justify-content:space-between;
1638
- padding:0 var(--tds-page-header-padding-x);
1639
- }
1640
-
1641
- .tds-page-header--profile > .tds-page-header__title-bar{
1642
- align-items:center;
1643
- }
1644
-
1645
- .tds-page-header__primary{
1646
- width:100%;
1647
- }
1648
1347
 
1649
- .tds-page-header__primary h1{
1650
- margin:0;
1651
- font-size:var(--tds-page-header-headline-font-size);
1652
- font-weight:var(--t-font-weight-normal);
1653
- line-height:32px;
1654
- color:var(--tds-page-header-headline-color);
1655
- overflow-wrap:break-word;
1348
+ .tds-sidenav-scroll-container{
1349
+ --webkit-overflow-scrolling:touch;
1350
+ display:block;
1351
+ width:100%;
1352
+ height:-moz-fit-content;
1353
+ height:fit-content;
1354
+ padding:var(--t-spacing-2);
1355
+ overflow-y:auto;
1656
1356
  }
1657
1357
 
1658
- @media (min-width: 960px){
1659
- .tds-page-header__primary{
1660
- flex:1 1 max-content;
1661
- width:auto;
1662
- min-width:0;
1663
- max-width:100%;
1358
+ .tds-sidenav-item :is(a, button) :is(.prefix){
1359
+ display:none;
1664
1360
  }
1361
+ @supports selector(:popover-open){
1362
+ .tds-sidenav-collapse:popover-open{
1363
+ display:flex;
1364
+ }
1665
1365
 
1666
- .tds-page-header__title-bar,
1667
- .tds-page-header--profile .tds-page-header__title-bar{
1668
- flex-flow:row nowrap;
1669
- row-gap:12px;
1670
- align-items:flex-start;
1366
+ .tds-sidenav-collapse:not(:popover-open){
1367
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1368
+ transition:var(--tds-sidenav-collapse-transition-exit);
1369
+ }
1370
+
1371
+ @starting-style{
1372
+ .tds-sidenav-collapse:popover-open{
1373
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1374
+ transform:var(--tds-sidenav-collapse-closed-transform);
1375
+ }
1376
+ }
1671
1377
  }
1672
- .tds-page-header :is([slot="actions"],.tds-page-header__actions){
1673
- width:auto;
1378
+ @supports not selector(:popover-open){
1379
+ .tds-sidenav-collapse.\:popover-open{
1380
+ display:flex;
1674
1381
  }
1675
1382
 
1676
- .tds-page-header.has-multi-actions :is([slot="actions"],.tds-page-header__actions){
1677
- justify-content:flex-end;
1383
+ .tds-sidenav-collapse:not(.\:popover-open){
1384
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
1385
+ transition:var(--tds-sidenav-collapse-transition-exit);
1678
1386
  }
1387
+ }
1679
1388
  }
1680
1389
 
1681
- .tds-page-header-phone,
1682
- .tds-page-header-email{
1683
- color:var(--tds-page-header-color);
1684
- white-space:nowrap;
1390
+ @media (min-width: 720px){
1391
+ .tds-sidenav-responsive-header{
1392
+ display:none;
1393
+ }
1685
1394
  }
1686
1395
 
1687
- .tds-page-header-email{
1688
- max-width:100%;
1689
- overflow:hidden;
1690
- text-overflow:ellipsis;
1691
- }
1396
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
1397
+ display:none;
1398
+ }
1692
1399
 
1693
- @keyframes indicator-pulse{
1694
- 0%{
1695
- opacity:.3;
1696
- transform:scale(.9);
1697
- }
1400
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
1401
+ display:block;
1402
+ }
1698
1403
 
1699
- 100%{
1700
- opacity:0;
1701
- transform:scale(1.75);
1702
- }
1703
- }
1404
+ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1405
+ display:flex;
1406
+ flex-direction:column;
1407
+ }
1704
1408
 
1705
1409
  .tds-combo-box{
1706
1410
  --tds-combo-box-button-offset:4px;
@@ -1884,6 +1588,80 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1884
1588
  color:var(--t-text-color-secondary);
1885
1589
  }
1886
1590
 
1591
+ .tds-checkbox-group{
1592
+ --tds-checkbox-group-font-size:var(--t-font-size-md);
1593
+ --tds-checkbox-group-line-height:1.4;
1594
+ --tds-checkbox-group-gap:var(--t-spacing-1);
1595
+
1596
+ --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
1597
+ --tds-checkbox-group-description-line-height:1.35;
1598
+ --tds-checkbox-group-description-color:var(--t-text-color-secondary);
1599
+ --tds-checkbox-group-description-invalid-icon-display:none;
1600
+ display:flex;
1601
+ flex-direction:column;
1602
+ gap:0;
1603
+ padding:0;
1604
+ margin:0;
1605
+
1606
+ font-size:var(--tds-checkbox-group-font-size);
1607
+ line-height:var(--tds-checkbox-group-line-height);
1608
+ border:0;
1609
+ }
1610
+
1611
+ .tds-checkbox-group legend{
1612
+ float:left;
1613
+ padding:0;
1614
+ margin:0;
1615
+ }
1616
+
1617
+ .tds-checkbox-group[aria-invalid="true"]{
1618
+ --tds-checkbox-group-description-color:var(--t-text-color-status-error);
1619
+ --tds-checkbox-group-description-invalid-icon-display:inline-block;
1620
+ }
1621
+
1622
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
1623
+ margin-left:.25ch;
1624
+ color:var(--t-text-color-status-error);
1625
+ content:"*";
1626
+ }
1627
+
1628
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
1629
+ content:none;
1630
+ }
1631
+
1632
+ .tds-checkbox-group-fields{
1633
+ display:flex;
1634
+ flex-direction:column;
1635
+ gap:var(--tds-checkbox-group-gap);
1636
+ align-items:flex-start;
1637
+ margin-top:var(--t-spacing-1);
1638
+ }
1639
+
1640
+ .tds-checkbox-group-description{
1641
+ display:flex;
1642
+ gap:var(--t-spacing-half);
1643
+ align-items:flex-start;
1644
+ margin:var(--t-spacing-fourth) 0 0;
1645
+ font-size:var(--tds-checkbox-group-description-font-size);
1646
+ line-height:var(--tds-checkbox-group-description-line-height);
1647
+ color:var(--tds-checkbox-group-description-color);
1648
+ cursor:text;
1649
+ }
1650
+
1651
+ .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
1652
+ display:var(--tds-checkbox-group-description-invalid-icon-display);
1653
+ flex-shrink:0;
1654
+ margin-top:calc(.5lh - .5em);
1655
+ line-height:var(--tds-checkbox-group-description-line-height);
1656
+ }
1657
+
1658
+ .tds-checkbox-group--sm{
1659
+ --tds-checkbox-group-line-height:1.35;
1660
+ --tds-checkbox-group-font-size:var(--t-font-size-sm);
1661
+ --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
1662
+ --tds-checkbox-group-description-line-height:1.3;
1663
+ }
1664
+
1887
1665
  .tds-dropdown-popover{
1888
1666
  min-inline-size:10rem;
1889
1667
  max-inline-size:24rem;
@@ -2018,76 +1796,117 @@ a.tds-dropdown-item:is(:hover, :active){
2018
1796
  border-top:1px solid var(--t-border-color);
2019
1797
  }
2020
1798
 
2021
- .tds-modal{
2022
- --tds-modal-width:600px;
2023
- --tds-modal-opacity:0;
2024
- --tds-modal-backdrop-opacity:0;
2025
- --tds-modal-scale:.96;
2026
- --tds-modal-transition-duration:var(--t-duration-200);
2027
- --tds-modal-transition-timing-function:var(--t-ease-in);
2028
- --tds-modal-transition:opacity var(--tds-modal-transition-duration) var(--tds-modal-transition-timing-function), scale var(--tds-modal-transition-duration) var(--tds-modal-transition-timing-function);
2029
- --tds-modal-backdrop-transition:opacity var(--tds-modal-transition-duration) var(--tds-modal-transition-timing-function);
2030
-
2031
- flex-direction:column;
2032
- width:min(var(--tds-modal-width), calc(100% - 48px));
2033
- padding-block:var(--t-spacing-3);
2034
- padding-inline:0;
2035
- background:var(--t-surface-color-card);
1799
+ .tds-button-group{
1800
+ display:inline-flex;
1801
+ }
1802
+ .tds-button-group > .tds-btn{
1803
+ --tds-button-group-item-z-index:1;
2036
1804
 
2037
- border:0;
2038
- border-radius:var(--t-border-radius-lg);
2039
- box-shadow:0 4px 18px 0 #0003;
1805
+ z-index:var(--tds-button-group-item-z-index);
1806
+ border-radius:0;
1807
+ }
1808
+ :is(.tds-button-group > .tds-btn):not(:first-child){
1809
+ margin-inline-start:calc(var(--tds-btn-border-width) * -1);
1810
+ }
1811
+ :is(.tds-button-group > .tds-btn):hover{
1812
+ --tds-button-group-item-z-index:2;
1813
+ }
1814
+ :is(.tds-button-group > .tds-btn):focus-visible{
1815
+ --tds-button-group-item-z-index:5;
1816
+ }
1817
+ .tds-button-group > .tds-btn:first-child{
1818
+ border-start-start-radius:var(--tds-btn-border-radius);
1819
+ border-end-start-radius:var(--tds-btn-border-radius);
1820
+ }
1821
+ .tds-button-group > .tds-btn:last-child{
1822
+ border-start-end-radius:var(--tds-btn-border-radius);
1823
+ border-end-end-radius:var(--tds-btn-border-radius);
1824
+ }
2040
1825
 
2041
- opacity:var(--tds-modal-opacity);
2042
- scale:var(--tds-modal-scale);
2043
- transition:var(--tds-modal-transition);
1826
+ .tds-modal-overlay{
1827
+ position:fixed;
1828
+ inset:0;
1829
+ z-index:1000;
1830
+ display:flex;
1831
+ align-items:center;
1832
+ justify-content:center;
1833
+ background:hsl(0 0% 0% / 40%);
2044
1834
  }
2045
1835
 
2046
- .tds-modal[open]{
2047
- --tds-modal-opacity:1;
2048
- --tds-modal-backdrop-opacity:1;
2049
- --tds-modal-scale:1;
2050
- --tds-modal-transition-duration:var(--t-duration-300);
2051
- --tds-modal-transition-timing-function:var(--t-ease-out);
1836
+ .tds-modal-overlay[data-entering]{
1837
+ animation:tds-modal-overlay-fade var(--t-duration-300) var(--t-ease-out);
1838
+ }
2052
1839
 
2053
- display:flex;
1840
+ .tds-modal-overlay[data-exiting]{
1841
+ animation:tds-modal-overlay-fade var(--t-duration-200) var(--t-ease-in) reverse;
2054
1842
  }
2055
1843
 
2056
- .tds-modal::backdrop{
2057
- background:hsl(0 0% 0% / 40%);
2058
- opacity:var(--tds-modal-backdrop-opacity);
2059
- transition:var(--tds-modal-backdrop-transition);
1844
+ @keyframes tds-modal-overlay-fade{
1845
+ from{
1846
+ opacity:0;
2060
1847
  }
1848
+ }
2061
1849
 
2062
- @starting-style{
2063
- .tds-modal[open]{
2064
- --tds-modal-opacity:0;
2065
- --tds-modal-scale:.96;
1850
+ .tds-modal-frame{
1851
+ --tds-modal-width:600px;
1852
+
1853
+ display:flex;
1854
+ justify-content:center;
1855
+ width:min(var(--tds-modal-width), calc(100% - 48px));
1856
+ }
1857
+
1858
+ .tds-modal-frame[data-entering]{
1859
+ animation:tds-modal-zoom var(--t-duration-300) var(--t-ease-out);
2066
1860
  }
2067
1861
 
2068
- .tds-modal[open]::backdrop{
2069
- --tds-modal-backdrop-opacity:0;
1862
+ .tds-modal-frame[data-exiting]{
1863
+ animation:tds-modal-zoom var(--t-duration-200) var(--t-ease-in) reverse;
2070
1864
  }
1865
+
1866
+ .tds-modal-frame--sm{
1867
+ --tds-modal-width:400px;
2071
1868
  }
2072
1869
 
2073
- @media (prefers-reduced-motion: reduce){
2074
- .tds-modal{
2075
- --tds-modal-transition:none;
2076
- --tds-modal-backdrop-transition:none;
1870
+ .tds-modal-frame--lg{
1871
+ --tds-modal-width:800px;
1872
+ }
1873
+
1874
+ .tds-modal-frame--xl{
1875
+ --tds-modal-width:1000px;
1876
+ }
1877
+
1878
+ @keyframes tds-modal-zoom{
1879
+ from{
1880
+ opacity:0;
1881
+ scale:.96;
2077
1882
  }
2078
1883
  }
2079
1884
 
2080
- .tds-modal--sm{
2081
- --tds-modal-width:400px;
1885
+ @media (prefers-reduced-motion: reduce){
1886
+ .tds-modal-overlay[data-entering],
1887
+ .tds-modal-overlay[data-exiting],
1888
+ .tds-modal-frame[data-entering],
1889
+ .tds-modal-frame[data-exiting]{
1890
+ animation:none;
1891
+ }
2082
1892
  }
2083
1893
 
2084
- .tds-modal--lg{
2085
- --tds-modal-width:800px;
1894
+ .tds-modal{
1895
+ display:flex;
1896
+ flex-direction:column;
1897
+ width:100%;
1898
+ padding-block:var(--t-spacing-3);
1899
+ padding-inline:0;
1900
+ background:var(--t-surface-color-card);
1901
+
1902
+ border:0;
1903
+ border-radius:var(--t-border-radius-lg);
1904
+ box-shadow:0 4px 18px 0 #0003;
2086
1905
  }
2087
1906
 
2088
- .tds-modal--xl{
2089
- --tds-modal-width:1000px;
2090
- }
1907
+ .tds-modal:focus{
1908
+ outline:none;
1909
+ }
2091
1910
 
2092
1911
  .tds-modal-header{
2093
1912
  display:grid;
@@ -2172,111 +1991,89 @@ a.tds-dropdown-item:is(:hover, :active){
2172
1991
  }
2173
1992
  }
2174
1993
 
2175
- .tds-input:has(textarea){
2176
- --tds-input-padding-block:6px;
2177
- --tds-input-resizer-size:var(--t-element-size-sm);
2178
- --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");
2179
- }
1994
+ .tds-radio-group{
1995
+ --tds-radio-group-font-size:var(--t-font-size-md);
1996
+ --tds-radio-group-line-height:1.4;
1997
+ --tds-radio-group-gap:var(--t-spacing-1);
2180
1998
 
2181
- @supports (x: attr(x type(*))){
1999
+ --tds-radio-group-description-font-size:var(--t-font-size-sm);
2000
+ --tds-radio-group-description-line-height:1.35;
2001
+ --tds-radio-group-description-color:var(--t-text-color-secondary);
2002
+ --tds-radio-group-description-invalid-icon-display:none;
2003
+ display:flex;
2004
+ flex-direction:column;
2005
+ gap:0;
2006
+ padding:0;
2007
+ margin:0;
2182
2008
 
2183
- .tds-input textarea{
2184
- --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
2009
+ font-size:var(--tds-radio-group-font-size);
2010
+ line-height:var(--tds-radio-group-line-height);
2011
+ border:0;
2185
2012
  }
2186
- }
2187
2013
 
2188
- .tds-input.tds-textarea--resize-vertical textarea{
2189
- resize:vertical;
2190
- }
2014
+ .tds-radio-group legend{
2015
+ float:left;
2016
+ padding:0;
2017
+ margin:0;
2018
+ }
2191
2019
 
2192
- .tds-input.tds-textarea--resize-none textarea{
2193
- resize:none;
2194
- }
2020
+ .tds-radio-group[aria-invalid="true"]{
2021
+ --tds-radio-group-description-color:var(--t-text-color-status-error);
2022
+ --tds-radio-group-description-invalid-icon-display:inline-block;
2023
+ }
2195
2024
 
2196
- .tds-input.tds-textarea--resize-auto textarea{
2197
- resize:vertical;
2025
+ .tds-radio-group[aria-invalid="true"] .tds-radio{
2026
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
2198
2027
  }
2199
2028
 
2200
- @supports (field-sizing: content){
2201
- .tds-input.tds-textarea--resize-auto textarea{
2202
- field-sizing:content;
2203
- resize:none;
2029
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
2030
+ --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
2031
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
2204
2032
  }
2205
- }
2206
-
2207
- .tds-input textarea{
2208
- --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
2209
- --tds-input-scrollbar-thumb-color-hidden:transparent;
2210
- --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
2211
- --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
2212
- --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
2213
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
2214
- --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
2215
- --tds-input-scrollbar-thumb-border-radius:999px;
2216
- --tds-input-scrollbar-thumb-border-width:3px;
2217
- --tds-input-scrollbar-track-margin-block:.125rem;
2218
- scrollbar-color:initial;
2219
- transition-timing-function:var(--t-ease-in-out);
2220
- transition-duration:var(--t-duration-200);
2221
- transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
2222
- }
2223
-
2224
- @media (pointer: fine){
2225
- :is(.tds-input textarea)::-webkit-scrollbar{
2226
- width:12px;
2227
- height:12px;
2228
- cursor:default;
2229
- }
2230
-
2231
- :is(.tds-input textarea)::-webkit-scrollbar-thumb{
2232
- cursor:default;
2233
- background:var(--tds-input-scrollbar-thumb-color);
2234
- background-clip:content-box;
2235
- border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
2236
- border-radius:var(--tds-input-scrollbar-thumb-border-radius);
2237
- }
2238
-
2239
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2240
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
2241
- }
2242
-
2243
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
2244
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
2245
- }
2246
-
2247
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
2248
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
2249
- }
2250
2033
 
2251
- :is(.tds-input textarea)::-webkit-scrollbar-corner{
2252
- background:var(--tds-input-scrollbar-surface-color);
2253
- }
2034
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
2035
+ --tds-radio-input-background-color:var(--t-icon-color-inverted);
2036
+ }
2254
2037
 
2255
- :is(.tds-input textarea)::-webkit-resizer{
2256
- background:var(--tds-input-resizer-icon) no-repeat;
2257
- background-position:right bottom;
2258
- background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
2038
+ .tds-radio-group:has(input:required) legend::after{
2039
+ margin-left:.25ch;
2040
+ color:var(--t-text-color-status-error);
2041
+ content:"*";
2259
2042
  }
2260
2043
 
2261
- :is(.tds-input textarea)::-webkit-scrollbar-track{
2262
- margin-block:var(--tds-input-scrollbar-track-margin-block);
2263
- cursor:default;
2264
- }
2044
+ .tds-radio-group-fields{
2045
+ display:flex;
2046
+ flex-direction:column;
2047
+ gap:var(--tds-radio-group-gap);
2048
+ align-items:flex-start;
2049
+ margin-top:var(--t-spacing-1);
2050
+ }
2265
2051
 
2266
- @supports (-moz-appearance: none){
2267
- :is(.tds-input textarea){
2268
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
2269
- scrollbar-width:thin;
2270
- }
2052
+ .tds-radio-group-description{
2053
+ display:flex;
2054
+ gap:var(--t-spacing-half);
2055
+ align-items:flex-start;
2056
+ margin:var(--t-spacing-fourth) 0 0;
2057
+ font-size:var(--tds-radio-group-description-font-size);
2058
+ line-height:var(--tds-radio-group-description-line-height);
2059
+ color:var(--tds-radio-group-description-color);
2060
+ cursor:text;
2061
+ }
2271
2062
 
2272
- @media (hover){
2273
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2274
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
2275
- }
2276
- }
2277
- }
2063
+ .tds-radio-group-description .tds-radio-group-description-invalid-icon{
2064
+ display:var(--tds-radio-group-description-invalid-icon-display);
2065
+ flex-shrink:0;
2066
+ margin-top:calc(.5lh - .5em);
2067
+ line-height:var(--tds-radio-group-description-line-height);
2278
2068
  }
2279
2069
 
2070
+ .tds-radio-group--sm{
2071
+ --tds-radio-group-line-height:1.35;
2072
+ --tds-radio-group-font-size:var(--t-font-size-sm);
2073
+ --tds-radio-group-description-font-size:var(--t-font-size-xs);
2074
+ --tds-radio-group-description-line-height:1.3;
2075
+ }
2076
+
2280
2077
  .tds-radio{
2281
2078
  --tds-radio-font-size:var(--t-font-size-md);
2282
2079
  --tds-radio-cursor:pointer;
@@ -2410,89 +2207,111 @@ a.tds-dropdown-item:is(:hover, :active){
2410
2207
  --tds-radio-description-line-height:1.3;
2411
2208
  }
2412
2209
 
2413
- .tds-radio-group{
2414
- --tds-radio-group-font-size:var(--t-font-size-md);
2415
- --tds-radio-group-line-height:1.4;
2416
- --tds-radio-group-gap:var(--t-spacing-1);
2210
+ .tds-input:has(textarea){
2211
+ --tds-input-padding-block:6px;
2212
+ --tds-input-resizer-size:var(--t-element-size-sm);
2213
+ --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");
2214
+ }
2417
2215
 
2418
- --tds-radio-group-description-font-size:var(--t-font-size-sm);
2419
- --tds-radio-group-description-line-height:1.35;
2420
- --tds-radio-group-description-color:var(--t-text-color-secondary);
2421
- --tds-radio-group-description-invalid-icon-display:none;
2422
- display:flex;
2423
- flex-direction:column;
2424
- gap:0;
2425
- padding:0;
2426
- margin:0;
2216
+ @supports (x: attr(x type(*))){
2427
2217
 
2428
- font-size:var(--tds-radio-group-font-size);
2429
- line-height:var(--tds-radio-group-line-height);
2430
- border:0;
2218
+ .tds-input textarea{
2219
+ --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
2431
2220
  }
2432
-
2433
- .tds-radio-group legend{
2434
- float:left;
2435
- padding:0;
2436
- margin:0;
2437
2221
  }
2438
2222
 
2439
- .tds-radio-group[aria-invalid="true"]{
2440
- --tds-radio-group-description-color:var(--t-text-color-status-error);
2441
- --tds-radio-group-description-invalid-icon-display:inline-block;
2442
- }
2223
+ .tds-input.tds-textarea--resize-vertical textarea{
2224
+ resize:vertical;
2225
+ }
2226
+
2227
+ .tds-input.tds-textarea--resize-none textarea{
2228
+ resize:none;
2229
+ }
2230
+
2231
+ .tds-input.tds-textarea--resize-auto textarea{
2232
+ resize:vertical;
2233
+ }
2234
+
2235
+ @supports (field-sizing: content){
2236
+ .tds-input.tds-textarea--resize-auto textarea{
2237
+ field-sizing:content;
2238
+ resize:none;
2239
+ }
2240
+ }
2241
+
2242
+ .tds-input textarea{
2243
+ --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
2244
+ --tds-input-scrollbar-thumb-color-hidden:transparent;
2245
+ --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
2246
+ --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
2247
+ --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
2248
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
2249
+ --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
2250
+ --tds-input-scrollbar-thumb-border-radius:999px;
2251
+ --tds-input-scrollbar-thumb-border-width:3px;
2252
+ --tds-input-scrollbar-track-margin-block:.125rem;
2253
+ scrollbar-color:initial;
2254
+ transition-timing-function:var(--t-ease-in-out);
2255
+ transition-duration:var(--t-duration-200);
2256
+ transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
2257
+ }
2258
+
2259
+ @media (pointer: fine){
2260
+ :is(.tds-input textarea)::-webkit-scrollbar{
2261
+ width:12px;
2262
+ height:12px;
2263
+ cursor:default;
2264
+ }
2265
+
2266
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb{
2267
+ cursor:default;
2268
+ background:var(--tds-input-scrollbar-thumb-color);
2269
+ background-clip:content-box;
2270
+ border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
2271
+ border-radius:var(--tds-input-scrollbar-thumb-border-radius);
2272
+ }
2273
+
2274
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2275
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
2276
+ }
2277
+
2278
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
2279
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
2280
+ }
2281
+
2282
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
2283
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
2284
+ }
2285
+
2286
+ :is(.tds-input textarea)::-webkit-scrollbar-corner{
2287
+ background:var(--tds-input-scrollbar-surface-color);
2288
+ }
2443
2289
 
2444
- .tds-radio-group[aria-invalid="true"] .tds-radio{
2445
- --tds-radio-input-border-color:var(--t-form-border-color-error);
2290
+ :is(.tds-input textarea)::-webkit-resizer{
2291
+ background:var(--tds-input-resizer-icon) no-repeat;
2292
+ background-position:right bottom;
2293
+ background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
2446
2294
  }
2447
2295
 
2448
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
2449
- --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
2450
- --tds-radio-input-background-color:var(--t-form-background-color-error);
2451
- }
2296
+ :is(.tds-input textarea)::-webkit-scrollbar-track{
2297
+ margin-block:var(--tds-input-scrollbar-track-margin-block);
2298
+ cursor:default;
2299
+ }
2452
2300
 
2453
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
2454
- --tds-radio-input-background-color:var(--t-icon-color-inverted);
2301
+ @supports (-moz-appearance: none){
2302
+ :is(.tds-input textarea){
2303
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
2304
+ scrollbar-width:thin;
2455
2305
  }
2456
2306
 
2457
- .tds-radio-group:has(input:required) legend::after{
2458
- margin-left:.25ch;
2459
- color:var(--t-text-color-status-error);
2460
- content:"*";
2307
+ @media (hover){
2308
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2309
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
2310
+ }
2311
+ }
2461
2312
  }
2462
-
2463
- .tds-radio-group-fields{
2464
- display:flex;
2465
- flex-direction:column;
2466
- gap:var(--tds-radio-group-gap);
2467
- align-items:flex-start;
2468
- margin-top:var(--t-spacing-1);
2469
- }
2470
-
2471
- .tds-radio-group-description{
2472
- display:flex;
2473
- gap:var(--t-spacing-half);
2474
- align-items:flex-start;
2475
- margin:var(--t-spacing-fourth) 0 0;
2476
- font-size:var(--tds-radio-group-description-font-size);
2477
- line-height:var(--tds-radio-group-description-line-height);
2478
- color:var(--tds-radio-group-description-color);
2479
- cursor:text;
2480
- }
2481
-
2482
- .tds-radio-group-description .tds-radio-group-description-invalid-icon{
2483
- display:var(--tds-radio-group-description-invalid-icon-display);
2484
- flex-shrink:0;
2485
- margin-top:calc(.5lh - .5em);
2486
- line-height:var(--tds-radio-group-description-line-height);
2487
2313
  }
2488
2314
 
2489
- .tds-radio-group--sm{
2490
- --tds-radio-group-line-height:1.35;
2491
- --tds-radio-group-font-size:var(--t-font-size-sm);
2492
- --tds-radio-group-description-font-size:var(--t-font-size-xs);
2493
- --tds-radio-group-description-line-height:1.3;
2494
- }
2495
-
2496
2315
  .tds-toggle-switch{
2497
2316
  --tds-toggle-switch-font-size:var(--t-font-size-md);
2498
2317
  --tds-toggle-switch-cursor:pointer;
@@ -2633,6 +2452,201 @@ a.tds-dropdown-item:is(:hover, :active){
2633
2452
  --tds-toggle-switch-display:inline-flex;
2634
2453
  }
2635
2454
 
2455
+ .tds-checkbox{
2456
+ --tds-checkbox-font-size:var(--t-font-size-md);
2457
+ --tds-checkbox-cursor:pointer;
2458
+ --tds-checkbox-line-height:1.4;
2459
+ --tds-checkbox-transition-property:background-color, border-color;
2460
+
2461
+ --tds-checkbox-input-size:var(--t-element-size-md);
2462
+ --tds-checkbox-input-border-radius:var(--t-border-radius-sm);
2463
+ --tds-checkbox-input-border-color:var(--t-form-border-color);
2464
+ --tds-checkbox-input-background-color:var(--t-form-background-color);
2465
+
2466
+ --tds-checkbox-input-icon:none;
2467
+ --tds-checkbox-input-icon-visibility:hidden;
2468
+ --tds-checkbox-input-icon-opacity:0;
2469
+ --tds-checkbox-input-icon-fill:var(--t-icon-color-inverted);
2470
+
2471
+ --tds-checkbox-label-color:var(--t-form-color);
2472
+
2473
+ --tds-checkbox-description-font-size:var(--t-font-size-sm);
2474
+ --tds-checkbox-description-line-height:1.35;
2475
+ --tds-checkbox-description-color:var(--t-text-color-secondary);
2476
+ --tds-checkbox-description-invalid-icon-display:none;
2477
+
2478
+ position:relative;
2479
+ display:inline-grid;
2480
+ grid-template-columns:auto;
2481
+ grid-auto-columns:1fr;
2482
+ gap:var(--t-spacing-fourth) 0;
2483
+ line-height:var(--tds-checkbox-line-height);
2484
+ -webkit-user-select:none;
2485
+ -moz-user-select:none;
2486
+ user-select:none;
2487
+ }
2488
+
2489
+ .tds-checkbox label{
2490
+ grid-area:1 / 2;
2491
+ padding-inline-start:var(--t-spacing-1);
2492
+ font-size:var(--tds-checkbox-font-size);
2493
+ font-weight:var(--t-font-weight-normal);
2494
+ color:var(--tds-checkbox-label-color);
2495
+ cursor:var(--tds-checkbox-cursor);
2496
+ }
2497
+
2498
+ .tds-checkbox tds-indeterminate{
2499
+ display:flex;
2500
+ }
2501
+
2502
+ .tds-checkbox input[type="checkbox"]{
2503
+ position:relative;
2504
+ width:1em;
2505
+ height:1em;
2506
+ margin:calc((1lh - 1em) / 2) 0 0;
2507
+ font-size:var(--tds-checkbox-font-size);
2508
+ line-height:inherit;
2509
+ -webkit-appearance:none;
2510
+ -moz-appearance:none;
2511
+ appearance:none;
2512
+ cursor:var(--tds-checkbox-cursor);
2513
+ background-color:var(--tds-checkbox-input-background-color);
2514
+ border:var(--t-form-border-width) solid var(--tds-checkbox-input-border-color);
2515
+ border-radius:var(--tds-checkbox-input-border-radius);
2516
+ transition-timing-function:var(--t-ease-in-out);
2517
+ transition-duration:var(--t-duration-200);
2518
+ transition-property:var(--tds-checkbox-transition-property);
2519
+ }
2520
+
2521
+ :is(.tds-checkbox input[type="checkbox"])::before{
2522
+ position:absolute;
2523
+ top:50%;
2524
+ left:50%;
2525
+ visibility:var(--tds-checkbox-input-icon-visibility);
2526
+ width:100%;
2527
+ height:100%;
2528
+ content:"";
2529
+ background-color:var(--tds-checkbox-input-icon-fill);
2530
+ border-radius:var(--tds-checkbox-input-border-radius);
2531
+ opacity:var(--tds-checkbox-input-icon-opacity);
2532
+ -webkit-mask-image:var(--tds-checkbox-input-icon);
2533
+ mask-image:var(--tds-checkbox-input-icon);
2534
+ -webkit-mask-repeat:no-repeat;
2535
+ mask-repeat:no-repeat;
2536
+ -webkit-mask-size:contain;
2537
+ mask-size:contain;
2538
+ transform:translate(-50%, -50%);
2539
+ }
2540
+
2541
+ :is(.tds-checkbox input[type="checkbox"]):hover:not(:disabled){
2542
+ --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
2543
+ --tds-checkbox-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
2544
+ }
2545
+
2546
+ :is(.tds-checkbox input[type="checkbox"]):focus-visible{
2547
+ outline:var(--t-focus-ring-outline);
2548
+ outline-offset:var(--t-focus-ring-offset);
2549
+ }
2550
+
2551
+ :is(.tds-checkbox input[type="checkbox"]):disabled{
2552
+ pointer-events:none;
2553
+ }
2554
+
2555
+ @media (prefers-reduced-motion: reduce){
2556
+
2557
+ .tds-checkbox input[type="checkbox"]{
2558
+ --tds-checkbox-transition-property:none;
2559
+ }
2560
+ }
2561
+
2562
+ .tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate){
2563
+ --tds-checkbox-input-background-color:var(--t-fill-color-control);
2564
+ --tds-checkbox-input-border-color:var(--t-border-color-control-info);
2565
+ --tds-checkbox-input-icon-visibility:visible;
2566
+ --tds-checkbox-input-icon-opacity:1;
2567
+ }
2568
+
2569
+ :is(.tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate)) input:hover:not(:disabled){
2570
+ --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
2571
+ --tds-checkbox-input-background-color:var(--t-fill-color-interaction-hover);
2572
+ }
2573
+
2574
+ .tds-checkbox:has(input:checked){
2575
+ --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjUwMjAxIDExLjQyOTNMMy42NzM3NCA4LjM5MkMzLjUxNjE2IDguMjI0ODkgMy41MTYxNiA3Ljk1Mjg5IDMuNjczNzQgNy43ODRMNC4yNDUwNSA3LjE3Njg5QzQuNDAyNjIgNy4wMDk3OCA0LjY1ODc4IDcuMDA5NzggNC44MTYzNiA3LjE3Njg5TDYuNzg4MDcgOS4zMDMxMUwxMS4xODMyIDQuNTY5NzhDMTEuMzQwOCA0LjQwMjY2IDExLjU5NjkgNC40MDI2NiAxMS43NTQ1IDQuNTY5NzhMMTIuMzI1OCA1LjE3Nzc4QzEyLjQ4MzQgNS4zNDQ4OSAxMi40ODM0IDUuNjE3NzggMTIuMzI1OCA1Ljc4NEw3LjA3MzMyIDExLjQyOTNDNi45MTU3NCAxMS41OTY0IDYuNjU5NTggMTEuNTk2NCA2LjUwMjAxIDExLjQyOTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
2576
+ }
2577
+
2578
+ .tds-checkbox:has(input:indeterminate){
2579
+ --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMy41NTU1NiIgeT0iNy4xMTExMSIgd2lkdGg9IjguODg4ODkiIGhlaWdodD0iMS43Nzc3OCIgcng9IjAuODg4ODg5IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
2580
+ }
2581
+
2582
+ .tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid{
2583
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
2584
+ --tds-checkbox-description-color:var(--t-text-color-status-error);
2585
+ --tds-checkbox-description-invalid-icon-display:inline-block;
2586
+ }
2587
+
2588
+ :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:hover:not(:disabled){
2589
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
2590
+ --tds-checkbox-input-background-color:var(--t-form-background-color-error);
2591
+ }
2592
+
2593
+ :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:checked,:is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:indeterminate{
2594
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
2595
+ --tds-checkbox-input-background-color:var(--t-form-border-color-error);
2596
+ }
2597
+
2598
+ :is(:is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:checked,:is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:indeterminate):hover:not(:disabled){
2599
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error-hover);
2600
+ --tds-checkbox-input-background-color:var(--t-form-border-color-error-hover);
2601
+ }
2602
+
2603
+ .tds-checkbox:has(input:required) label::after{
2604
+ margin-left:.25ch;
2605
+ color:var(--t-text-color-status-error);
2606
+ content:"*";
2607
+ }
2608
+
2609
+ .tds-checkbox:has(input:disabled){
2610
+ --tds-checkbox-input-background-color:var(--t-form-background-color-disabled);
2611
+ --tds-checkbox-input-border-color:var(--t-form-border-color-disabled);
2612
+
2613
+ --tds-checkbox-label-color:var(--t-form-color-disabled);
2614
+ --tds-checkbox-description-color:var(--t-form-color-disabled);
2615
+ --tds-checkbox-cursor:not-allowed;
2616
+ }
2617
+
2618
+ .tds-checkbox:has(input:disabled) input:checked,.tds-checkbox:has(input:disabled) input:indeterminate{
2619
+ --tds-checkbox-input-background-color:var(--t-border-color-control-disabled);
2620
+ }
2621
+
2622
+ .tds-checkbox-description{
2623
+ display:flex;
2624
+ grid-area:2 / 2;
2625
+ gap:var(--t-spacing-half);
2626
+ align-items:flex-start;
2627
+ padding-inline-start:var(--t-spacing-1);
2628
+ margin:0;
2629
+ font-size:var(--tds-checkbox-description-font-size);
2630
+ line-height:var(--tds-checkbox-description-line-height);
2631
+ color:var(--tds-checkbox-description-color);
2632
+ cursor:text;
2633
+ }
2634
+
2635
+ .tds-checkbox-description .tds-checkbox-description-invalid-icon{
2636
+ display:var(--tds-checkbox-description-invalid-icon-display);
2637
+ flex-shrink:0;
2638
+ margin-top:calc(.5lh - .5em);
2639
+ line-height:var(--tds-checkbox-description-line-height);
2640
+ }
2641
+
2642
+ .tds-checkbox--sm{
2643
+ --tds-checkbox-line-height:1.35;
2644
+ --tds-checkbox-input-size:var(--t-element-size-sm);
2645
+ --tds-checkbox-font-size:var(--t-font-size-sm);
2646
+ --tds-checkbox-description-font-size:var(--t-font-size-xs);
2647
+ --tds-checkbox-description-line-height:1.3;
2648
+ }
2649
+
2636
2650
  .tds-loading-spinner{
2637
2651
  position:absolute;
2638
2652
  right:0;