@planningcenter/tapestry 3.2.3-rc.17 → 3.2.3-rc.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,197 +1,3 @@
1
- .tds-checkbox{
2
- --tds-checkbox-font-size:var(--t-font-size-md);
3
- --tds-checkbox-cursor:pointer;
4
- --tds-checkbox-line-height:1.4;
5
- --tds-checkbox-transition-property:background-color, border-color;
6
-
7
- --tds-checkbox-input-size:var(--t-element-size-md);
8
- --tds-checkbox-input-border-radius:var(--t-border-radius-sm);
9
- --tds-checkbox-input-border-color:var(--t-form-border-color);
10
- --tds-checkbox-input-background-color:transparent;
11
-
12
- --tds-checkbox-input-icon:none;
13
- --tds-checkbox-input-icon-visibility:hidden;
14
- --tds-checkbox-input-icon-opacity:0;
15
- --tds-checkbox-input-icon-fill:var(--t-icon-color-inverted);
16
-
17
- --tds-checkbox-label-color:var(--t-form-color);
18
-
19
- --tds-checkbox-description-font-size:var(--t-font-size-sm);
20
- --tds-checkbox-description-line-height:1.35;
21
- --tds-checkbox-description-color:var(--t-text-color-secondary);
22
- --tds-checkbox-description-invalid-icon-display:none;
23
-
24
- position:relative;
25
- display:inline-grid;
26
- grid-template-columns:auto;
27
- grid-auto-columns:1fr;
28
- gap:var(--t-spacing-fourth) var(--t-spacing-1);
29
- line-height:var(--tds-checkbox-line-height);
30
- cursor:var(--tds-checkbox-cursor);
31
- -webkit-user-select:none;
32
- -moz-user-select:none;
33
- user-select:none;
34
- }
35
-
36
- .tds-checkbox label{
37
- grid-area:1 / 2;
38
- font-size:var(--tds-checkbox-font-size);
39
- font-weight:var(--t-font-weight-normal);
40
- color:var(--tds-checkbox-label-color);
41
- cursor:var(--tds-checkbox-cursor);
42
- }
43
-
44
- .tds-checkbox tds-indeterminate{
45
- display:flex;
46
- }
47
-
48
- .tds-checkbox input[type="checkbox"]{
49
- position:relative;
50
- width:1em;
51
- height:1em;
52
- margin:calc((1lh - 1em) / 2) 0 0;
53
- font-size:var(--tds-checkbox-font-size);
54
- line-height:inherit;
55
- -webkit-appearance:none;
56
- -moz-appearance:none;
57
- appearance:none;
58
- cursor:var(--tds-checkbox-cursor);
59
- background-color:var(--tds-checkbox-input-background-color);
60
- border:var(--t-form-border-width) solid var(--tds-checkbox-input-border-color);
61
- border-radius:var(--tds-checkbox-input-border-radius);
62
- transition-timing-function:var(--t-ease-in-out);
63
- transition-duration:var(--t-duration-200);
64
- transition-property:var(--tds-checkbox-transition-property);
65
- }
66
-
67
- :is(.tds-checkbox input[type="checkbox"])::before{
68
- position:absolute;
69
- top:50%;
70
- left:50%;
71
- visibility:var(--tds-checkbox-input-icon-visibility);
72
- width:100%;
73
- height:100%;
74
- content:"";
75
- background-color:var(--tds-checkbox-input-icon-fill);
76
- border-radius:var(--tds-checkbox-input-border-radius);
77
- opacity:var(--tds-checkbox-input-icon-opacity);
78
- -webkit-mask-image:var(--tds-checkbox-input-icon);
79
- mask-image:var(--tds-checkbox-input-icon);
80
- -webkit-mask-repeat:no-repeat;
81
- mask-repeat:no-repeat;
82
- -webkit-mask-size:contain;
83
- mask-size:contain;
84
- transform:translate(-50%, -50%);
85
- }
86
-
87
- :is(.tds-checkbox input[type="checkbox"]):hover:not(:disabled){
88
- --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
89
- --tds-checkbox-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
90
- }
91
-
92
- :is(.tds-checkbox input[type="checkbox"]):focus-visible{
93
- outline:var(--t-focus-ring-outline);
94
- outline-offset:var(--t-focus-ring-offset);
95
- }
96
-
97
- :is(.tds-checkbox input[type="checkbox"]):disabled{
98
- pointer-events:none;
99
- }
100
-
101
- @media (prefers-reduced-motion: reduce){
102
-
103
- .tds-checkbox input[type="checkbox"]{
104
- --tds-checkbox-transition-property:none;
105
- }
106
- }
107
-
108
- .tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate){
109
- --tds-checkbox-input-background-color:var(--t-fill-color-control);
110
- --tds-checkbox-input-border-color:var(--t-border-color-control-info);
111
- --tds-checkbox-input-icon-visibility:visible;
112
- --tds-checkbox-input-icon-opacity:1;
113
- }
114
-
115
- :is(.tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate)) input:hover:not(:disabled){
116
- --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
117
- --tds-checkbox-input-background-color:var(--t-fill-color-interaction-hover);
118
- }
119
-
120
- .tds-checkbox:has(input:checked){
121
- --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjUwMjAxIDExLjQyOTNMMy42NzM3NCA4LjM5MkMzLjUxNjE2IDguMjI0ODkgMy41MTYxNiA3Ljk1Mjg5IDMuNjczNzQgNy43ODRMNC4yNDUwNSA3LjE3Njg5QzQuNDAyNjIgNy4wMDk3OCA0LjY1ODc4IDcuMDA5NzggNC44MTYzNiA3LjE3Njg5TDYuNzg4MDcgOS4zMDMxMUwxMS4xODMyIDQuNTY5NzhDMTEuMzQwOCA0LjQwMjY2IDExLjU5NjkgNC40MDI2NiAxMS43NTQ1IDQuNTY5NzhMMTIuMzI1OCA1LjE3Nzc4QzEyLjQ4MzQgNS4zNDQ4OSAxMi40ODM0IDUuNjE3NzggMTIuMzI1OCA1Ljc4NEw3LjA3MzMyIDExLjQyOTNDNi45MTU3NCAxMS41OTY0IDYuNjU5NTggMTEuNTk2NCA2LjUwMjAxIDExLjQyOTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
122
- }
123
-
124
- .tds-checkbox:has(input:indeterminate){
125
- --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMy41NTU1NiIgeT0iNy4xMTExMSIgd2lkdGg9IjguODg4ODkiIGhlaWdodD0iMS43Nzc3OCIgcng9IjAuODg4ODg5IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
126
- }
127
-
128
- .tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid{
129
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
130
- --tds-checkbox-description-color:var(--t-text-color-status-error);
131
- --tds-checkbox-description-invalid-icon-display:inline-block;
132
- }
133
-
134
- :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:hover:not(:disabled){
135
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
136
- --tds-checkbox-input-background-color:var(--t-form-background-color-error);
137
- }
138
-
139
- :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{
140
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
141
- --tds-checkbox-input-background-color:var(--t-form-border-color-error);
142
- }
143
-
144
- :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){
145
- --tds-checkbox-input-border-color:var(--t-form-border-color-error-hover);
146
- --tds-checkbox-input-background-color:var(--t-form-border-color-error-hover);
147
- }
148
-
149
- .tds-checkbox:has(input:required) label::after{
150
- margin-left:.25ch;
151
- color:var(--t-text-color-status-error);
152
- content:"*";
153
- }
154
-
155
- .tds-checkbox:has(input:disabled){
156
- --tds-checkbox-input-background-color:var(--t-form-background-color-disabled);
157
- --tds-checkbox-input-border-color:var(--t-form-border-color-disabled);
158
-
159
- --tds-checkbox-label-color:var(--t-form-color-disabled);
160
- --tds-checkbox-description-color:var(--t-form-color-disabled);
161
- --tds-checkbox-cursor:not-allowed;
162
- }
163
-
164
- .tds-checkbox:has(input:disabled) input:checked,.tds-checkbox:has(input:disabled) input:indeterminate{
165
- --tds-checkbox-input-background-color:var(--t-border-color-control-disabled);
166
- }
167
-
168
- .tds-checkbox-description{
169
- display:flex;
170
- grid-area:2 / 2;
171
- gap:var(--t-spacing-half);
172
- align-items:flex-start;
173
- margin:0;
174
- font-size:var(--tds-checkbox-description-font-size);
175
- line-height:var(--tds-checkbox-description-line-height);
176
- color:var(--tds-checkbox-description-color);
177
- cursor:text;
178
- }
179
-
180
- .tds-checkbox-description .tds-checkbox-description-invalid-icon{
181
- display:var(--tds-checkbox-description-invalid-icon-display);
182
- flex-shrink:0;
183
- margin-top:calc(.5lh - .5em);
184
- line-height:var(--tds-checkbox-description-line-height);
185
- }
186
-
187
- .tds-checkbox--sm{
188
- --tds-checkbox-line-height:1.35;
189
- --tds-checkbox-input-size:var(--t-element-size-sm);
190
- --tds-checkbox-font-size:var(--t-font-size-sm);
191
- --tds-checkbox-description-font-size:var(--t-font-size-xs);
192
- --tds-checkbox-description-line-height:1.3;
193
- }
194
-
195
1
  @layer t-critical{
196
2
  tds-page-header:not(.hydrated){
197
3
  display:none;
@@ -471,30 +277,6 @@
471
277
  }
472
278
 
473
279
 
474
- :is(.tds-input input)::-webkit-search-decoration,:is(.tds-input input)::-webkit-search-cancel-button,:is(.tds-input input)::-webkit-search-results-button,:is(.tds-input input)::-webkit-search-results-decoration{
475
- -webkit-appearance:none;
476
- appearance:none;
477
- }
478
-
479
- [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
480
- inline-size:1em;
481
- block-size:2em;
482
- }
483
-
484
- @supports (field-sizing: content){
485
- .tds-input--auto-width{
486
- inline-size:-moz-fit-content;
487
- inline-size:fit-content;
488
- min-inline-size:min(100%, 122px);
489
- }
490
-
491
- .tds-input--auto-width input{
492
- field-sizing:content;
493
- inline-size:auto;
494
- }
495
- }
496
-
497
-
498
280
  @media (prefers-reduced-motion: no-preference){
499
281
 
500
282
  :root{
@@ -856,150 +638,18 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
856
638
  flex-direction:column;
857
639
  }
858
640
 
859
- .tds-radio{
860
- --tds-radio-font-size:var(--t-font-size-md);
861
- --tds-radio-cursor:pointer;
862
- --tds-radio-line-height:1.4;
863
- --tds-radio-transition-property:border-width;
864
-
865
- --tds-radio-input-size:var(--t-element-size-md);
866
- --tds-radio-input-border-radius:var(--t-border-radius-round);
867
- --tds-radio-input-border-color:var(--t-form-border-color);
868
- --tds-radio-input-border-width:var(--t-form-border-width);
869
- --tds-radio-input-background-color:transparent;
870
-
871
- --tds-radio-label-color:var(--t-form-color);
641
+ .tds-input:has(textarea){
642
+ --tds-input-padding-block:6px;
643
+ --tds-input-resizer-size:var(--t-element-size-sm);
644
+ --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");
645
+ }
872
646
 
873
- --tds-radio-description-font-size:var(--t-font-size-sm);
874
- --tds-radio-description-line-height:1.35;
875
- --tds-radio-description-color:var(--t-text-color-secondary);
647
+ @supports (x: attr(x type(*))){
876
648
 
877
- position:relative;
878
- display:inline-grid;
879
- grid-template-columns:auto;
880
- grid-auto-columns:1fr;
881
- gap:var(--t-spacing-fourth) var(--t-spacing-1);
882
- line-height:var(--tds-radio-line-height);
883
- cursor:var(--tds-radio-cursor);
884
- -webkit-user-select:none;
885
- -moz-user-select:none;
886
- user-select:none;
649
+ .tds-input:has(textarea){
650
+ --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
887
651
  }
888
-
889
- .tds-radio label{
890
- grid-area:1 / 2;
891
- font-size:var(--tds-radio-font-size);
892
- font-weight:var(--t-font-weight-normal);
893
- color:var(--tds-radio-label-color);
894
- cursor:var(--tds-radio-cursor);
895
- }
896
-
897
- .tds-radio input[type="radio"]{
898
- position:relative;
899
- width:1em;
900
- height:1em;
901
- margin:calc((1lh - 1em) / 2) 0 0;
902
- font-size:var(--tds-radio-font-size);
903
- line-height:inherit;
904
- -webkit-appearance:none;
905
- -moz-appearance:none;
906
- appearance:none;
907
- cursor:var(--tds-radio-cursor);
908
- background-color:var(--tds-radio-input-background-color);
909
- border:var(--tds-radio-input-border-width) solid var(--tds-radio-input-border-color);
910
- border-radius:var(--tds-radio-input-border-radius);
911
- transition-timing-function:var(--t-ease-in-out);
912
- transition-duration:var(--t-duration-200);
913
- transition-property:var(--tds-radio-transition-property);
914
- }
915
-
916
- :is(.tds-radio input[type="radio"]):hover:not(:disabled){
917
- --tds-radio-input-border-color:var(--t-fill-color-interaction-hover);
918
- --tds-radio-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
919
- }
920
-
921
- :is(.tds-radio input[type="radio"]):focus-visible{
922
- outline:var(--t-focus-ring-outline);
923
- outline-offset:var(--t-focus-ring-offset);
924
- }
925
-
926
- :is(.tds-radio input[type="radio"]):disabled{
927
- pointer-events:none;
928
- }
929
-
930
- @media (prefers-reduced-motion: reduce){
931
-
932
- .tds-radio input[type="radio"]{
933
- --tds-radio-transition-property:none;
934
- }
935
- }
936
-
937
- .tds-radio:has(input:checked){
938
- --tds-radio-input-background-color:var(--t-form-background-color);
939
- --tds-radio-input-border-color:var(--t-border-color-control-info);
940
- --tds-radio-input-border-width:4px;
941
- }
942
-
943
- .tds-radio:has(input:checked) input:hover:not(:disabled){
944
- --tds-radio-input-background-color:var(--t-form-background-color);
945
- --tds-radio-input-border-color:var(--t-fill-color-interaction-hover);
946
- }
947
-
948
- .tds-radio:has(input:user-invalid){
949
- --tds-radio-input-border-color:var(--t-form-border-color-error);
950
- }
951
-
952
- .tds-radio:has(input:user-invalid) input:hover:not(:disabled){
953
- --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
954
- --tds-radio-input-background-color:var(--t-form-background-color-error);
955
- }
956
-
957
- .tds-radio:has(input:disabled){
958
- --tds-radio-input-background-color:var(--t-form-background-color-disabled);
959
- --tds-radio-input-border-color:var(--t-form-border-color-disabled);
960
-
961
- --tds-radio-label-color:var(--t-form-color-disabled);
962
- --tds-radio-description-color:var(--t-form-color-disabled);
963
- --tds-radio-cursor:not-allowed;
964
- }
965
-
966
- .tds-radio:has(input:disabled) input:checked{
967
- --tds-radio-input-background-color:var(--t-form-background-color);
968
- --tds-radio-input-border-color:var(--t-form-border-color-disabled);
969
- }
970
-
971
- .tds-radio-description{
972
- display:flex;
973
- grid-area:2 / 2;
974
- gap:var(--t-spacing-half);
975
- align-items:flex-start;
976
- margin:0;
977
- font-size:var(--tds-radio-description-font-size);
978
- line-height:var(--tds-radio-description-line-height);
979
- color:var(--tds-radio-description-color);
980
- cursor:text;
981
- }
982
-
983
- .tds-radio--sm{
984
- --tds-radio-line-height:1.35;
985
- --tds-radio-input-size:var(--t-element-size-sm);
986
- --tds-radio-font-size:var(--t-font-size-sm);
987
- --tds-radio-description-font-size:var(--t-font-size-xs);
988
- --tds-radio-description-line-height:1.3;
989
- }
990
-
991
- .tds-input:has(textarea){
992
- --tds-input-padding-block:6px;
993
- --tds-input-resizer-size:var(--t-element-size-sm);
994
- --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");
995
- }
996
-
997
- @supports (x: attr(x type(*))){
998
-
999
- .tds-input:has(textarea){
1000
- --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
1001
- }
1002
- }
652
+ }
1003
653
 
1004
654
  .tds-input.tds-textarea--resize-vertical textarea{
1005
655
  resize:vertical;
@@ -1093,135 +743,713 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1093
743
  }
1094
744
  }
1095
745
 
1096
- .tds-select{
1097
- --tds-select-border-color:var(--t-form-border-color);
1098
- --tds-select-border-color-hover:var(--t-form-border-color-hover);
1099
- --tds-select-border-color-active:var(--t-form-border-color-hover);
1100
- --tds-select-background-color:var(--t-form-background-color);
1101
- --tds-select-color:var(--t-form-color);
1102
- --tds-select-placeholder-color:var(--t-form-placeholder-color);
1103
- --tds-select-font-size:var(--t-font-size-md);
1104
- --tds-select-min-height:var(--t-container-size-md);
1105
- --tds-select-padding-block:6px;
1106
- --tds-select-description-color:var(--t-text-color-secondary);
1107
- --tds-select-description-invalid-icon-display:none;
1108
- --tds-select-transition-property:background-color, border-color, outline-color, outline-offset;
1109
- --tds-select-background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTEzLDZsLTUsNWwtNSwtNXoiIGZpbGw9IiMzRDNEM0QiLz48L3N2Zz4=");
1110
- --tds-select-caret-size:1em;
1111
- --tds-select-caret-inline-offset:.75em;
1112
- --tds-select-caret-transition:transform var(--t-duration-300) var(--t-ease-in-out);
1113
-
1114
- --tds-select-dropdown-background-color:var(--t-surface-color-card);
1115
- --tds-select-dropdown-border:1px solid var(--t-border-color);
1116
- --tds-select-dropdown-padding:var(--t-spacing-1);
1117
- --tds-select-dropdown-margin-block:5px;
1118
- --tds-select-dropdown-scrollbar-color:#0004 #0000;
1119
- --tds-select-dropdown-scrollbar-width:thin;
1120
- --tds-select-dropdown-border-radius:var(--t-border-radius);
1121
- --tds-select-dropdown-box-shadow:hsl(0, 0%, 0%, .05) 0 10px 15px -3px, hsl(0, 0%, 0%, .05) 0 4px 6px -4px;
1122
- --tds-select-dropdown-scroll-behavior:smooth;
1123
- --tds-select-dropdown-transition:opacity var(--t-duration-300) var(--t-ease-out), translate var(--t-duration-300) var(--t-ease-out), display var(--t-duration-300) allow-discrete, overlay var(--t-duration-300) allow-discrete;
1124
- --tds-select-dropdown-closed-opacity:0;
1125
- --tds-select-dropdown-open-opacity:1;
1126
- --tds-select-dropdown-closed-translate:0 -8px;
1127
- --tds-select-dropdown-open-translate:0 0;
1128
-
1129
- --tds-select-option-gap:var(--t-spacing-1);
1130
- --tds-select-option-padding-block:var(--t-spacing-1);
1131
- --tds-select-option-padding-inline:var(--t-spacing-2) var(--t-spacing-1);
1132
- --tds-select-option-font-size:1rem;
1133
- --tds-select-option-color:var(--t-text-color);
1134
- --tds-select-option-background-hover:var(--t-fill-color-neutral-070);
1135
- --tds-select-option-background-active:var(--t-fill-color-button-interaction-ghost-active);
1136
- --tds-select-option-border-radius:var(--t-border-radius);
746
+ .tds-radio-group{
747
+ --tds-radio-group-font-size:var(--t-font-size-md);
748
+ --tds-radio-group-line-height:1.4;
749
+ --tds-radio-group-gap:var(--t-spacing-1);
1137
750
 
1138
- --tds-select-group-label-padding-block-start:var(--t-spacing-2);
1139
- --tds-select-group-label-padding-block:var(--tds-select-group-label-padding-block-start) var(--t-spacing-1);
1140
- --tds-select-group-label-padding-inline:var(--t-spacing-1);
1141
- --tds-select-group-label-font-size:var(--t-font-size-sm);
1142
- --tds-select-group-label-font-weight:var(--t-font-weight-semibold);
1143
- --tds-select-group-label-letter-spacing:0;
1144
- --tds-select-group-label-color:var(--t-text-color-secondary);
1145
- --tds-select-group-label-color-stuck:var(--t-text-color-headline);
1146
- --tds-select-group-label-background:var(--tds-select-dropdown-background-color);
1147
- --tds-select-group-label-transition:color var(--t-duration-200) var(--t-ease-in-out);
751
+ --tds-radio-group-legend-margin-bottom:var(--tds-radio-group-gap);
1148
752
 
1149
- position:relative;
753
+ --tds-radio-group-description-font-size:var(--t-font-size-sm);
754
+ --tds-radio-group-description-line-height:1.35;
755
+ --tds-radio-group-description-color:var(--t-text-color-secondary);
756
+ --tds-radio-group-description-invalid-icon-display:none;
1150
757
  display:flex;
1151
758
  flex-direction:column;
1152
- gap:var(--t-spacing-half);
759
+ gap:var(--tds-radio-group-gap);
760
+ padding:0;
761
+ margin:0;
762
+
763
+ font-size:var(--tds-radio-group-font-size);
764
+ line-height:var(--tds-radio-group-line-height);
765
+ border:0;
1153
766
  }
1154
767
 
1155
- .tds-select :is(label,.tds-select-label){
1156
- font-size:var(--t-font-size-md);
1157
- font-weight:var(--t-font-weight-normal);
1158
- color:var(--t-text-color);
1159
- cursor:default;
768
+ .tds-radio-group legend{
769
+ padding:0;
770
+ margin-bottom:var(--tds-radio-group-legend-margin-bottom);
1160
771
  }
1161
772
 
1162
- .tds-select :is(select,button){
1163
- position:relative;
1164
- place-items:center;
1165
- inline-size:100%;
1166
- min-block-size:var(--tds-select-min-height);
1167
- padding-block:var(--tds-select-padding-block);
1168
- padding-inline:var(--t-spacing-1);
1169
- padding-inline-end:calc(var(--t-spacing-1) + var(--tds-select-caret-size) + .5em);
1170
- font-family:inherit;
1171
- font-size:var(--tds-select-font-size);
1172
- line-height:1;
1173
- color:var(--tds-select-color);
1174
- text-align:left;
1175
- -webkit-appearance:none;
1176
- -moz-appearance:none;
1177
- appearance:none;
1178
- cursor:var(--tds-select-cursor, default);
1179
- outline:var(--t-focus-ring-width) solid transparent;
1180
- outline-offset:0;
1181
- background-color:var(--tds-select-background-color);
1182
- background-image:var(--tds-select-background-image);
1183
- background-repeat:no-repeat;
1184
- background-position:right var(--tds-select-caret-inline-offset) top 50%;
1185
- background-size:var(--tds-select-caret-size);
1186
- border:var(--t-form-border-width) solid var(--tds-select-border-color);
1187
- border-radius:var(--t-form-border-radius);
1188
- transition-timing-function:var(--t-ease-in-out);
1189
- transition-duration:var(--t-duration-300);
1190
- transition-property:var(--tds-select-transition-property);
773
+ .tds-radio-group:has(.tds-radio-group-description){
774
+ --tds-radio-group-legend-margin-bottom:var(--t-spacing-fourth);
1191
775
  }
1192
776
 
1193
- :is(.tds-select :is(select,button)):hover:not(:disabled,:focus,:focus-visible,:focus-within,:active,:open){
1194
- border-color:var(--tds-select-border-color-hover);
1195
- }
777
+ .tds-radio-group[aria-invalid="true"]{
778
+ --tds-radio-group-description-color:var(--t-text-color-status-error);
779
+ --tds-radio-group-description-invalid-icon-display:inline-block;
780
+ }
1196
781
 
1197
- :is(.tds-select :is(select,button)):focus{
1198
- outline-color:var(--t-focus-ring-color);
1199
- outline-offset:var(--t-focus-ring-offset);
1200
- border-color:var(--tds-select-border-color-active);
782
+ .tds-radio-group[aria-invalid="true"] .tds-radio{
783
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
1201
784
  }
1202
785
 
1203
- :is(.tds-select :is(select,button)):required:invalid,:is(.tds-select :is(select,button)):has(option[hidden][disabled][value=""]:checked){
1204
- color:var(--tds-select-placeholder-color);
1205
- }
786
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
787
+ --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
788
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
789
+ }
1206
790
 
1207
- .tds-select:has(select:user-invalid,[aria-invalid="true"]),.tds-select.tds-select--invalid{
1208
- --tds-select-border-color:var(--t-form-border-color-error);
1209
- --tds-select-border-color-hover:var(--t-form-border-color-error-hover);
1210
- --tds-select-border-color-active:var(--t-form-border-color-error-hover);
1211
- --tds-select-background-color:var(--t-form-background-color-error);
1212
- --tds-select-description-color:var(--t-text-color-status-error);
1213
- --tds-select-description-invalid-icon-display:inline-block;
1214
- }
791
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
792
+ --tds-radio-input-background-color:var(--t-form-background-color);
793
+ }
1215
794
 
1216
- .tds-select:has(select:required,[aria-required="true"]) :is(label,.tds-select-label)::after{
795
+ .tds-radio-group:has(input:required) legend::after{
1217
796
  margin-left:.25ch;
1218
797
  color:var(--t-text-color-status-error);
1219
798
  content:"*";
1220
799
  }
1221
800
 
1222
- .tds-select:has(:is(select,button[role="combobox"]):is(:disabled,[aria-disabled="true"])){
1223
- --tds-select-border-color:var(--t-form-border-color-disabled);
1224
- --tds-select-background-color:var(--t-form-background-color-disabled);
801
+ .tds-radio-group-fields{
802
+ display:flex;
803
+ flex-direction:column;
804
+ gap:var(--tds-radio-group-gap);
805
+ align-items:flex-start;
806
+ }
807
+
808
+ .tds-radio-group-description{
809
+ display:flex;
810
+ gap:var(--t-spacing-half);
811
+ align-items:flex-start;
812
+ margin:0;
813
+ font-size:var(--tds-radio-group-description-font-size);
814
+ line-height:var(--tds-radio-group-description-line-height);
815
+ color:var(--tds-radio-group-description-color);
816
+ cursor:text;
817
+ }
818
+
819
+ .tds-radio-group-description .tds-radio-group-description-invalid-icon{
820
+ display:var(--tds-radio-group-description-invalid-icon-display);
821
+ flex-shrink:0;
822
+ margin-top:calc(.5lh - .5em);
823
+ line-height:var(--tds-radio-group-description-line-height);
824
+ }
825
+
826
+ .tds-radio-group--sm{
827
+ --tds-radio-group-line-height:1.35;
828
+ --tds-radio-group-font-size:var(--t-font-size-sm);
829
+ --tds-radio-group-description-font-size:var(--t-font-size-xs);
830
+ --tds-radio-group-description-line-height:1.3;
831
+ }
832
+
833
+ .tds-checkbox{
834
+ --tds-checkbox-font-size:var(--t-font-size-md);
835
+ --tds-checkbox-cursor:pointer;
836
+ --tds-checkbox-line-height:1.4;
837
+ --tds-checkbox-transition-property:background-color, border-color;
838
+
839
+ --tds-checkbox-input-size:var(--t-element-size-md);
840
+ --tds-checkbox-input-border-radius:var(--t-border-radius-sm);
841
+ --tds-checkbox-input-border-color:var(--t-form-border-color);
842
+ --tds-checkbox-input-background-color:transparent;
843
+
844
+ --tds-checkbox-input-icon:none;
845
+ --tds-checkbox-input-icon-visibility:hidden;
846
+ --tds-checkbox-input-icon-opacity:0;
847
+ --tds-checkbox-input-icon-fill:var(--t-icon-color-inverted);
848
+
849
+ --tds-checkbox-label-color:var(--t-form-color);
850
+
851
+ --tds-checkbox-description-font-size:var(--t-font-size-sm);
852
+ --tds-checkbox-description-line-height:1.35;
853
+ --tds-checkbox-description-color:var(--t-text-color-secondary);
854
+ --tds-checkbox-description-invalid-icon-display:none;
855
+
856
+ position:relative;
857
+ display:inline-grid;
858
+ grid-template-columns:auto;
859
+ grid-auto-columns:1fr;
860
+ gap:var(--t-spacing-fourth) var(--t-spacing-1);
861
+ line-height:var(--tds-checkbox-line-height);
862
+ cursor:var(--tds-checkbox-cursor);
863
+ -webkit-user-select:none;
864
+ -moz-user-select:none;
865
+ user-select:none;
866
+ }
867
+
868
+ .tds-checkbox label{
869
+ grid-area:1 / 2;
870
+ font-size:var(--tds-checkbox-font-size);
871
+ font-weight:var(--t-font-weight-normal);
872
+ color:var(--tds-checkbox-label-color);
873
+ cursor:var(--tds-checkbox-cursor);
874
+ }
875
+
876
+ .tds-checkbox tds-indeterminate{
877
+ display:flex;
878
+ }
879
+
880
+ .tds-checkbox input[type="checkbox"]{
881
+ position:relative;
882
+ width:1em;
883
+ height:1em;
884
+ margin:calc((1lh - 1em) / 2) 0 0;
885
+ font-size:var(--tds-checkbox-font-size);
886
+ line-height:inherit;
887
+ -webkit-appearance:none;
888
+ -moz-appearance:none;
889
+ appearance:none;
890
+ cursor:var(--tds-checkbox-cursor);
891
+ background-color:var(--tds-checkbox-input-background-color);
892
+ border:var(--t-form-border-width) solid var(--tds-checkbox-input-border-color);
893
+ border-radius:var(--tds-checkbox-input-border-radius);
894
+ transition-timing-function:var(--t-ease-in-out);
895
+ transition-duration:var(--t-duration-200);
896
+ transition-property:var(--tds-checkbox-transition-property);
897
+ }
898
+
899
+ :is(.tds-checkbox input[type="checkbox"])::before{
900
+ position:absolute;
901
+ top:50%;
902
+ left:50%;
903
+ visibility:var(--tds-checkbox-input-icon-visibility);
904
+ width:100%;
905
+ height:100%;
906
+ content:"";
907
+ background-color:var(--tds-checkbox-input-icon-fill);
908
+ border-radius:var(--tds-checkbox-input-border-radius);
909
+ opacity:var(--tds-checkbox-input-icon-opacity);
910
+ -webkit-mask-image:var(--tds-checkbox-input-icon);
911
+ mask-image:var(--tds-checkbox-input-icon);
912
+ -webkit-mask-repeat:no-repeat;
913
+ mask-repeat:no-repeat;
914
+ -webkit-mask-size:contain;
915
+ mask-size:contain;
916
+ transform:translate(-50%, -50%);
917
+ }
918
+
919
+ :is(.tds-checkbox input[type="checkbox"]):hover:not(:disabled){
920
+ --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
921
+ --tds-checkbox-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
922
+ }
923
+
924
+ :is(.tds-checkbox input[type="checkbox"]):focus-visible{
925
+ outline:var(--t-focus-ring-outline);
926
+ outline-offset:var(--t-focus-ring-offset);
927
+ }
928
+
929
+ :is(.tds-checkbox input[type="checkbox"]):disabled{
930
+ pointer-events:none;
931
+ }
932
+
933
+ @media (prefers-reduced-motion: reduce){
934
+
935
+ .tds-checkbox input[type="checkbox"]{
936
+ --tds-checkbox-transition-property:none;
937
+ }
938
+ }
939
+
940
+ .tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate){
941
+ --tds-checkbox-input-background-color:var(--t-fill-color-control);
942
+ --tds-checkbox-input-border-color:var(--t-border-color-control-info);
943
+ --tds-checkbox-input-icon-visibility:visible;
944
+ --tds-checkbox-input-icon-opacity:1;
945
+ }
946
+
947
+ :is(.tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate)) input:hover:not(:disabled){
948
+ --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
949
+ --tds-checkbox-input-background-color:var(--t-fill-color-interaction-hover);
950
+ }
951
+
952
+ .tds-checkbox:has(input:checked){
953
+ --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjUwMjAxIDExLjQyOTNMMy42NzM3NCA4LjM5MkMzLjUxNjE2IDguMjI0ODkgMy41MTYxNiA3Ljk1Mjg5IDMuNjczNzQgNy43ODRMNC4yNDUwNSA3LjE3Njg5QzQuNDAyNjIgNy4wMDk3OCA0LjY1ODc4IDcuMDA5NzggNC44MTYzNiA3LjE3Njg5TDYuNzg4MDcgOS4zMDMxMUwxMS4xODMyIDQuNTY5NzhDMTEuMzQwOCA0LjQwMjY2IDExLjU5NjkgNC40MDI2NiAxMS43NTQ1IDQuNTY5NzhMMTIuMzI1OCA1LjE3Nzc4QzEyLjQ4MzQgNS4zNDQ4OSAxMi40ODM0IDUuNjE3NzggMTIuMzI1OCA1Ljc4NEw3LjA3MzMyIDExLjQyOTNDNi45MTU3NCAxMS41OTY0IDYuNjU5NTggMTEuNTk2NCA2LjUwMjAxIDExLjQyOTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
954
+ }
955
+
956
+ .tds-checkbox:has(input:indeterminate){
957
+ --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMy41NTU1NiIgeT0iNy4xMTExMSIgd2lkdGg9IjguODg4ODkiIGhlaWdodD0iMS43Nzc3OCIgcng9IjAuODg4ODg5IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
958
+ }
959
+
960
+ .tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid{
961
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
962
+ --tds-checkbox-description-color:var(--t-text-color-status-error);
963
+ --tds-checkbox-description-invalid-icon-display:inline-block;
964
+ }
965
+
966
+ :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:hover:not(:disabled){
967
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
968
+ --tds-checkbox-input-background-color:var(--t-form-background-color-error);
969
+ }
970
+
971
+ :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{
972
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
973
+ --tds-checkbox-input-background-color:var(--t-form-border-color-error);
974
+ }
975
+
976
+ :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){
977
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error-hover);
978
+ --tds-checkbox-input-background-color:var(--t-form-border-color-error-hover);
979
+ }
980
+
981
+ .tds-checkbox:has(input:required) label::after{
982
+ margin-left:.25ch;
983
+ color:var(--t-text-color-status-error);
984
+ content:"*";
985
+ }
986
+
987
+ .tds-checkbox:has(input:disabled){
988
+ --tds-checkbox-input-background-color:var(--t-form-background-color-disabled);
989
+ --tds-checkbox-input-border-color:var(--t-form-border-color-disabled);
990
+
991
+ --tds-checkbox-label-color:var(--t-form-color-disabled);
992
+ --tds-checkbox-description-color:var(--t-form-color-disabled);
993
+ --tds-checkbox-cursor:not-allowed;
994
+ }
995
+
996
+ .tds-checkbox:has(input:disabled) input:checked,.tds-checkbox:has(input:disabled) input:indeterminate{
997
+ --tds-checkbox-input-background-color:var(--t-border-color-control-disabled);
998
+ }
999
+
1000
+ .tds-checkbox-description{
1001
+ display:flex;
1002
+ grid-area:2 / 2;
1003
+ gap:var(--t-spacing-half);
1004
+ align-items:flex-start;
1005
+ margin:0;
1006
+ font-size:var(--tds-checkbox-description-font-size);
1007
+ line-height:var(--tds-checkbox-description-line-height);
1008
+ color:var(--tds-checkbox-description-color);
1009
+ cursor:text;
1010
+ }
1011
+
1012
+ .tds-checkbox-description .tds-checkbox-description-invalid-icon{
1013
+ display:var(--tds-checkbox-description-invalid-icon-display);
1014
+ flex-shrink:0;
1015
+ margin-top:calc(.5lh - .5em);
1016
+ line-height:var(--tds-checkbox-description-line-height);
1017
+ }
1018
+
1019
+ .tds-checkbox--sm{
1020
+ --tds-checkbox-line-height:1.35;
1021
+ --tds-checkbox-input-size:var(--t-element-size-sm);
1022
+ --tds-checkbox-font-size:var(--t-font-size-sm);
1023
+ --tds-checkbox-description-font-size:var(--t-font-size-xs);
1024
+ --tds-checkbox-description-line-height:1.3;
1025
+ }
1026
+
1027
+ .tds-radio{
1028
+ --tds-radio-font-size:var(--t-font-size-md);
1029
+ --tds-radio-cursor:pointer;
1030
+ --tds-radio-line-height:1.4;
1031
+ --tds-radio-transition-property:border-width;
1032
+
1033
+ --tds-radio-input-size:var(--t-element-size-md);
1034
+ --tds-radio-input-border-radius:var(--t-border-radius-round);
1035
+ --tds-radio-input-border-color:var(--t-form-border-color);
1036
+ --tds-radio-input-border-width:var(--t-form-border-width);
1037
+ --tds-radio-input-background-color:transparent;
1038
+
1039
+ --tds-radio-label-color:var(--t-form-color);
1040
+
1041
+ --tds-radio-description-font-size:var(--t-font-size-sm);
1042
+ --tds-radio-description-line-height:1.35;
1043
+ --tds-radio-description-color:var(--t-text-color-secondary);
1044
+
1045
+ position:relative;
1046
+ display:inline-grid;
1047
+ grid-template-columns:auto;
1048
+ grid-auto-columns:1fr;
1049
+ gap:var(--t-spacing-fourth) var(--t-spacing-1);
1050
+ line-height:var(--tds-radio-line-height);
1051
+ cursor:var(--tds-radio-cursor);
1052
+ -webkit-user-select:none;
1053
+ -moz-user-select:none;
1054
+ user-select:none;
1055
+ }
1056
+
1057
+ .tds-radio label{
1058
+ grid-area:1 / 2;
1059
+ font-size:var(--tds-radio-font-size);
1060
+ font-weight:var(--t-font-weight-normal);
1061
+ color:var(--tds-radio-label-color);
1062
+ cursor:var(--tds-radio-cursor);
1063
+ }
1064
+
1065
+ .tds-radio input[type="radio"]{
1066
+ position:relative;
1067
+ width:1em;
1068
+ height:1em;
1069
+ margin:calc((1lh - 1em) / 2) 0 0;
1070
+ font-size:var(--tds-radio-font-size);
1071
+ line-height:inherit;
1072
+ -webkit-appearance:none;
1073
+ -moz-appearance:none;
1074
+ appearance:none;
1075
+ cursor:var(--tds-radio-cursor);
1076
+ background-color:var(--tds-radio-input-background-color);
1077
+ border:var(--tds-radio-input-border-width) solid var(--tds-radio-input-border-color);
1078
+ border-radius:var(--tds-radio-input-border-radius);
1079
+ transition-timing-function:var(--t-ease-in-out);
1080
+ transition-duration:var(--t-duration-200);
1081
+ transition-property:var(--tds-radio-transition-property);
1082
+ }
1083
+
1084
+ :is(.tds-radio input[type="radio"]):hover:not(:disabled){
1085
+ --tds-radio-input-border-color:var(--t-fill-color-interaction-hover);
1086
+ --tds-radio-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
1087
+ }
1088
+
1089
+ :is(.tds-radio input[type="radio"]):focus-visible{
1090
+ outline:var(--t-focus-ring-outline);
1091
+ outline-offset:var(--t-focus-ring-offset);
1092
+ }
1093
+
1094
+ :is(.tds-radio input[type="radio"]):disabled{
1095
+ pointer-events:none;
1096
+ }
1097
+
1098
+ @media (prefers-reduced-motion: reduce){
1099
+
1100
+ .tds-radio input[type="radio"]{
1101
+ --tds-radio-transition-property:none;
1102
+ }
1103
+ }
1104
+
1105
+ .tds-radio:has(input:checked){
1106
+ --tds-radio-input-background-color:var(--t-form-background-color);
1107
+ --tds-radio-input-border-color:var(--t-border-color-control-info);
1108
+ --tds-radio-input-border-width:4px;
1109
+ }
1110
+
1111
+ .tds-radio:has(input:checked) input:hover:not(:disabled){
1112
+ --tds-radio-input-background-color:var(--t-form-background-color);
1113
+ --tds-radio-input-border-color:var(--t-fill-color-interaction-hover);
1114
+ }
1115
+
1116
+ .tds-radio:has(input:user-invalid){
1117
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
1118
+ }
1119
+
1120
+ .tds-radio:has(input:user-invalid) input:hover:not(:disabled){
1121
+ --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
1122
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
1123
+ }
1124
+
1125
+ .tds-radio:has(input:disabled){
1126
+ --tds-radio-input-background-color:var(--t-form-background-color-disabled);
1127
+ --tds-radio-input-border-color:var(--t-form-border-color-disabled);
1128
+
1129
+ --tds-radio-label-color:var(--t-form-color-disabled);
1130
+ --tds-radio-description-color:var(--t-form-color-disabled);
1131
+ --tds-radio-cursor:not-allowed;
1132
+ }
1133
+
1134
+ .tds-radio:has(input:disabled) input:checked{
1135
+ --tds-radio-input-background-color:var(--t-form-background-color);
1136
+ --tds-radio-input-border-color:var(--t-form-border-color-disabled);
1137
+ }
1138
+
1139
+ .tds-radio-description{
1140
+ display:flex;
1141
+ grid-area:2 / 2;
1142
+ gap:var(--t-spacing-half);
1143
+ align-items:flex-start;
1144
+ margin:0;
1145
+ font-size:var(--tds-radio-description-font-size);
1146
+ line-height:var(--tds-radio-description-line-height);
1147
+ color:var(--tds-radio-description-color);
1148
+ cursor:text;
1149
+ }
1150
+
1151
+ .tds-radio--sm{
1152
+ --tds-radio-line-height:1.35;
1153
+ --tds-radio-input-size:var(--t-element-size-sm);
1154
+ --tds-radio-font-size:var(--t-font-size-sm);
1155
+ --tds-radio-description-font-size:var(--t-font-size-xs);
1156
+ --tds-radio-description-line-height:1.3;
1157
+ }
1158
+
1159
+
1160
+ :is(.tds-input input)::-webkit-search-decoration,:is(.tds-input input)::-webkit-search-cancel-button,:is(.tds-input input)::-webkit-search-results-button,:is(.tds-input input)::-webkit-search-results-decoration{
1161
+ -webkit-appearance:none;
1162
+ appearance:none;
1163
+ }
1164
+
1165
+ [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
1166
+ inline-size:1em;
1167
+ block-size:2em;
1168
+ }
1169
+
1170
+ @supports (field-sizing: content){
1171
+ .tds-input--auto-width{
1172
+ inline-size:-moz-fit-content;
1173
+ inline-size:fit-content;
1174
+ min-inline-size:min(100%, 122px);
1175
+ }
1176
+
1177
+ .tds-input--auto-width input{
1178
+ field-sizing:content;
1179
+ inline-size:auto;
1180
+ }
1181
+ }
1182
+
1183
+ .tds-toggle-switch{
1184
+ --tds-toggle-switch-font-size:var(--t-font-size-md);
1185
+ --tds-toggle-switch-column-gap:var(--t-spacing-1);
1186
+ --tds-toggle-switch-cursor:pointer;
1187
+ --tds-toggle-switch-display:inline-grid;
1188
+ --tds-toggle-switch-line-height:1.4;
1189
+
1190
+ --tds-toggle-switch-label-color:var(--t-form-color);
1191
+
1192
+ --tds-toggle-switch-track-width:var(--t-container-size-md);
1193
+ --tds-toggle-switch-track-outline:none;
1194
+ --tds-toggle-switch-track-height:var(--t-container-size-xs);
1195
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
1196
+ --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
1197
+
1198
+ --tds-toggle-switch-thumb-size:var(--t-element-size-md);
1199
+ --tds-toggle-switch-thumb-transform:translateX(0);
1200
+ --tds-toggle-switch-thumb-transition:transform var(--t-duration-200) var(--t-ease-in-out);
1201
+
1202
+ --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
1203
+ --tds-toggle-switch-description-line-height:1.35;
1204
+ --tds-toggle-switch-description-color:var(--t-text-color-secondary);
1205
+ position:relative;
1206
+
1207
+ display:var(--tds-toggle-switch-display);
1208
+ grid-template-columns:auto;
1209
+ grid-auto-columns:1fr;
1210
+ gap:var(--t-spacing-fourth) var(--tds-toggle-switch-column-gap);
1211
+ -webkit-user-select:none;
1212
+ -moz-user-select:none;
1213
+ user-select:none;
1214
+ }
1215
+
1216
+ .tds-toggle-switch input[type="checkbox"]{
1217
+ position:absolute;
1218
+ width:var(--tds-toggle-switch-track-width);
1219
+ height:var(--tds-toggle-switch-track-height);
1220
+ margin:0;
1221
+ -webkit-appearance:none;
1222
+ -moz-appearance:none;
1223
+ appearance:none;
1224
+ cursor:var(--tds-toggle-switch-cursor);
1225
+ outline:var(--tds-toggle-switch-track-outline);
1226
+ outline-offset:var(--t-focus-ring-offset);
1227
+ background-color:transparent;
1228
+ border:0;
1229
+ border-radius:var(--t-border-radius-round);
1230
+ }
1231
+
1232
+ :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
1233
+ --tds-toggle-switch-track-outline:var(--t-focus-ring-outline);
1234
+ }
1235
+
1236
+ .tds-toggle-switch label{
1237
+ display:inline-flex;
1238
+ grid-area:1 / 2;
1239
+ -moz-column-gap:var(--tds-toggle-switch-column-gap);
1240
+ column-gap:var(--tds-toggle-switch-column-gap);
1241
+ margin-top:-.09375em;
1242
+ font-size:var(--tds-toggle-switch-font-size);
1243
+ font-weight:var(--t-font-weight-normal);
1244
+ line-height:var(--tds-toggle-switch-line-height);
1245
+ color:var(--tds-toggle-switch-label-color);
1246
+ cursor:var(--tds-toggle-switch-cursor);
1247
+ }
1248
+
1249
+ .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
1250
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
1251
+ }
1252
+
1253
+ .tds-toggle-switch:has(input:checked){
1254
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
1255
+ --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
1256
+ }
1257
+
1258
+ .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
1259
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
1260
+ }
1261
+
1262
+ .tds-toggle-switch:has(input:disabled){
1263
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
1264
+ --tds-toggle-switch-label-color:var(--t-form-color-disabled);
1265
+ --tds-toggle-switch-description-color:var(--t-form-color-disabled);
1266
+ --tds-toggle-switch-cursor:not-allowed;
1267
+ }
1268
+
1269
+ .tds-toggle-switch-track{
1270
+ position:relative;
1271
+ flex-shrink:0;
1272
+ width:var(--tds-toggle-switch-track-width);
1273
+ height:var(--tds-toggle-switch-track-height);
1274
+ background-color:var(--tds-toggle-switch-track-background-color);
1275
+ border-radius:var(--t-border-radius-round);
1276
+ transition:var(--tds-toggle-switch-track-transition);
1277
+ }
1278
+
1279
+ .tds-toggle-switch-track::before{
1280
+ position:absolute;
1281
+ top:var(--t-spacing-fourth);
1282
+ left:var(--t-spacing-fourth);
1283
+ width:var(--tds-toggle-switch-thumb-size);
1284
+ height:var(--tds-toggle-switch-thumb-size);
1285
+ content:"";
1286
+ background-color:#fff;
1287
+ border-radius:var(--t-border-radius-round);
1288
+ transform:var(--tds-toggle-switch-thumb-transform);
1289
+ transition:var(--tds-toggle-switch-thumb-transition);
1290
+ }
1291
+
1292
+ @media (prefers-reduced-motion: reduce){
1293
+
1294
+ .tds-toggle-switch-track{
1295
+ --tds-toggle-switch-track-transition:none;
1296
+ --tds-toggle-switch-thumb-transition:none;
1297
+ }
1298
+ }
1299
+
1300
+ .tds-toggle-switch-description{
1301
+ display:flex;
1302
+ grid-area:2 / 2;
1303
+ align-items:flex-start;
1304
+ margin:0;
1305
+ font-size:var(--tds-toggle-switch-description-font-size);
1306
+ line-height:var(--tds-toggle-switch-description-line-height);
1307
+ color:var(--tds-toggle-switch-description-color);
1308
+ cursor:text;
1309
+ }
1310
+
1311
+ .tds-toggle-switch--sm{
1312
+ --tds-toggle-switch-font-size:var(--t-font-size-sm);
1313
+ --tds-toggle-switch-line-height:1.35;
1314
+ --tds-toggle-switch-track-height:var(--t-element-size-lg);
1315
+ --tds-toggle-switch-thumb-size:var(--t-element-size-sm);
1316
+ --tds-toggle-switch-description-font-size:var(--t-font-size-xs);
1317
+ --tds-toggle-switch-description-line-height:1.3;
1318
+ }
1319
+
1320
+ .tds-toggle-switch--hide-label{
1321
+ --tds-toggle-switch-display:inline-flex;
1322
+ }
1323
+
1324
+ .tds-select{
1325
+ --tds-select-border-color:var(--t-form-border-color);
1326
+ --tds-select-border-color-hover:var(--t-form-border-color-hover);
1327
+ --tds-select-border-color-active:var(--t-form-border-color-hover);
1328
+ --tds-select-background-color:var(--t-form-background-color);
1329
+ --tds-select-color:var(--t-form-color);
1330
+ --tds-select-placeholder-color:var(--t-form-placeholder-color);
1331
+ --tds-select-font-size:var(--t-font-size-md);
1332
+ --tds-select-min-height:var(--t-container-size-md);
1333
+ --tds-select-padding-block:6px;
1334
+ --tds-select-description-color:var(--t-text-color-secondary);
1335
+ --tds-select-description-invalid-icon-display:none;
1336
+ --tds-select-transition-property:background-color, border-color, outline-color, outline-offset;
1337
+ --tds-select-background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTEzLDZsLTUsNWwtNSwtNXoiIGZpbGw9IiMzRDNEM0QiLz48L3N2Zz4=");
1338
+ --tds-select-caret-size:1em;
1339
+ --tds-select-caret-inline-offset:.75em;
1340
+ --tds-select-caret-transition:transform var(--t-duration-300) var(--t-ease-in-out);
1341
+
1342
+ --tds-select-dropdown-background-color:var(--t-surface-color-card);
1343
+ --tds-select-dropdown-border:1px solid var(--t-border-color);
1344
+ --tds-select-dropdown-padding:var(--t-spacing-1);
1345
+ --tds-select-dropdown-margin-block:5px;
1346
+ --tds-select-dropdown-scrollbar-color:#0004 #0000;
1347
+ --tds-select-dropdown-scrollbar-width:thin;
1348
+ --tds-select-dropdown-border-radius:var(--t-border-radius);
1349
+ --tds-select-dropdown-box-shadow:hsl(0, 0%, 0%, .05) 0 10px 15px -3px, hsl(0, 0%, 0%, .05) 0 4px 6px -4px;
1350
+ --tds-select-dropdown-scroll-behavior:smooth;
1351
+ --tds-select-dropdown-transition:opacity var(--t-duration-300) var(--t-ease-out), translate var(--t-duration-300) var(--t-ease-out), display var(--t-duration-300) allow-discrete, overlay var(--t-duration-300) allow-discrete;
1352
+ --tds-select-dropdown-closed-opacity:0;
1353
+ --tds-select-dropdown-open-opacity:1;
1354
+ --tds-select-dropdown-closed-translate:0 -8px;
1355
+ --tds-select-dropdown-open-translate:0 0;
1356
+
1357
+ --tds-select-option-gap:var(--t-spacing-1);
1358
+ --tds-select-option-padding-block:var(--t-spacing-1);
1359
+ --tds-select-option-padding-inline:var(--t-spacing-2) var(--t-spacing-1);
1360
+ --tds-select-option-font-size:1rem;
1361
+ --tds-select-option-color:var(--t-text-color);
1362
+ --tds-select-option-background-hover:var(--t-fill-color-neutral-070);
1363
+ --tds-select-option-background-active:var(--t-fill-color-button-interaction-ghost-active);
1364
+ --tds-select-option-border-radius:var(--t-border-radius);
1365
+
1366
+ --tds-select-group-label-padding-block-start:var(--t-spacing-2);
1367
+ --tds-select-group-label-padding-block:var(--tds-select-group-label-padding-block-start) var(--t-spacing-1);
1368
+ --tds-select-group-label-padding-inline:var(--t-spacing-1);
1369
+ --tds-select-group-label-font-size:var(--t-font-size-sm);
1370
+ --tds-select-group-label-font-weight:var(--t-font-weight-semibold);
1371
+ --tds-select-group-label-letter-spacing:0;
1372
+ --tds-select-group-label-color:var(--t-text-color-secondary);
1373
+ --tds-select-group-label-color-stuck:var(--t-text-color-headline);
1374
+ --tds-select-group-label-background:var(--tds-select-dropdown-background-color);
1375
+ --tds-select-group-label-transition:color var(--t-duration-200) var(--t-ease-in-out);
1376
+
1377
+ position:relative;
1378
+ display:flex;
1379
+ flex-direction:column;
1380
+ gap:var(--t-spacing-half);
1381
+ }
1382
+
1383
+ .tds-select :is(label,.tds-select-label){
1384
+ font-size:var(--t-font-size-md);
1385
+ font-weight:var(--t-font-weight-normal);
1386
+ color:var(--t-text-color);
1387
+ cursor:default;
1388
+ }
1389
+
1390
+ .tds-select :is(select,button){
1391
+ position:relative;
1392
+ place-items:center;
1393
+ inline-size:100%;
1394
+ min-block-size:var(--tds-select-min-height);
1395
+ padding-block:var(--tds-select-padding-block);
1396
+ padding-inline:var(--t-spacing-1);
1397
+ padding-inline-end:calc(var(--t-spacing-1) + var(--tds-select-caret-size) + .5em);
1398
+ font-family:inherit;
1399
+ font-size:var(--tds-select-font-size);
1400
+ line-height:1;
1401
+ color:var(--tds-select-color);
1402
+ text-align:left;
1403
+ -webkit-appearance:none;
1404
+ -moz-appearance:none;
1405
+ appearance:none;
1406
+ cursor:var(--tds-select-cursor, default);
1407
+ outline:var(--t-focus-ring-width) solid transparent;
1408
+ outline-offset:0;
1409
+ background-color:var(--tds-select-background-color);
1410
+ background-image:var(--tds-select-background-image);
1411
+ background-repeat:no-repeat;
1412
+ background-position:right var(--tds-select-caret-inline-offset) top 50%;
1413
+ background-size:var(--tds-select-caret-size);
1414
+ border:var(--t-form-border-width) solid var(--tds-select-border-color);
1415
+ border-radius:var(--t-form-border-radius);
1416
+ transition-timing-function:var(--t-ease-in-out);
1417
+ transition-duration:var(--t-duration-300);
1418
+ transition-property:var(--tds-select-transition-property);
1419
+ }
1420
+
1421
+ :is(.tds-select :is(select,button)):hover:not(:disabled,:focus,:focus-visible,:focus-within,:active,:open){
1422
+ border-color:var(--tds-select-border-color-hover);
1423
+ }
1424
+
1425
+ :is(.tds-select :is(select,button)):focus{
1426
+ outline-color:var(--t-focus-ring-color);
1427
+ outline-offset:var(--t-focus-ring-offset);
1428
+ border-color:var(--tds-select-border-color-active);
1429
+ }
1430
+
1431
+ :is(.tds-select :is(select,button)):required:invalid,:is(.tds-select :is(select,button)):has(option[hidden][disabled][value=""]:checked){
1432
+ color:var(--tds-select-placeholder-color);
1433
+ }
1434
+
1435
+ .tds-select:has(select:user-invalid,[aria-invalid="true"]),.tds-select.tds-select--invalid{
1436
+ --tds-select-border-color:var(--t-form-border-color-error);
1437
+ --tds-select-border-color-hover:var(--t-form-border-color-error-hover);
1438
+ --tds-select-border-color-active:var(--t-form-border-color-error-hover);
1439
+ --tds-select-background-color:var(--t-form-background-color-error);
1440
+ --tds-select-description-color:var(--t-text-color-status-error);
1441
+ --tds-select-description-invalid-icon-display:inline-block;
1442
+ }
1443
+
1444
+ .tds-select:has(select:required,[aria-required="true"]) :is(label,.tds-select-label)::after{
1445
+ margin-left:.25ch;
1446
+ color:var(--t-text-color-status-error);
1447
+ content:"*";
1448
+ }
1449
+
1450
+ .tds-select:has(:is(select,button[role="combobox"]):is(:disabled,[aria-disabled="true"])){
1451
+ --tds-select-border-color:var(--t-form-border-color-disabled);
1452
+ --tds-select-background-color:var(--t-form-background-color-disabled);
1225
1453
  --tds-select-color:var(--t-form-color-disabled);
1226
1454
  --tds-select-cursor:not-allowed;
1227
1455
  }
@@ -1445,312 +1673,84 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
1445
1673
  @media (hover) and (pointer: fine){
1446
1674
  :is(.tds-select select:has( > button)),:is(.tds-select select:has( > button))::picker(select){
1447
1675
  padding-block:0;
1448
- -webkit-appearance:base-select;
1449
- -moz-appearance:base-select;
1450
- appearance:base-select;
1451
- }
1452
- }
1453
- :is(.tds-select select:has( > button))::picker-icon{
1454
- flex-shrink:0;
1455
- width:var(--tds-select-caret-size);
1456
- height:var(--tds-select-caret-size);
1457
- margin-inline-end:var(--tds-select-caret-inline-offset);
1458
- content:var(--tds-select-background-image);
1459
- transition:var(--tds-select-caret-transition);
1460
- }
1461
-
1462
- :is(.tds-select select:has( > button))::picker(select):not(:popover-open){
1463
- opacity:var(--tds-select-dropdown-closed-opacity);
1464
- translate:var(--tds-select-dropdown-closed-translate);
1465
- }
1466
-
1467
- :is(.tds-select select:has( > button)):open,:is(.tds-select select:has( > button)):focus-within{
1468
- outline-color:var(--t-focus-ring-color);
1469
- outline-offset:var(--t-focus-ring-offset);
1470
- border-color:var(--tds-select-border-color-active);
1471
- }
1472
-
1473
- :is(.tds-select select:has( > button)):open::picker-icon{
1474
- opacity:1;
1475
- transform:rotate(.5turn);
1476
- }
1477
-
1478
- :is(.tds-select select:has( > button)) selectedcontent{
1479
- overflow:hidden;
1480
- text-overflow:ellipsis;
1481
- line-height:calc(var(--tds-select-min-height) - 2px);
1482
- white-space:nowrap;
1483
- }
1484
-
1485
- :is(.tds-select select:has( > button)):has(option[hidden][disabled][value=""]:checked) > button{
1486
- color:var(--tds-select-placeholder-color);
1487
- }
1488
-
1489
- :is(.tds-select select:has( > button))::picker(select){
1490
- inset:auto;
1491
- inline-size:-moz-max-content;
1492
- inline-size:max-content;
1493
- min-inline-size:anchor-size(width);
1494
- max-inline-size:100vi;
1495
- padding:var(--tds-select-dropdown-padding);
1496
- margin-block:var(--tds-select-dropdown-margin-block);
1497
- position-try-fallbacks:flip-block, flip-inline;
1498
- overflow:auto;
1499
- overflow-x:hidden;
1500
- scroll-behavior:var(--tds-select-dropdown-scroll-behavior);
1501
- overscroll-behavior:none;
1502
- -webkit-user-select:none;
1503
- -moz-user-select:none;
1504
- user-select:none;
1505
- scrollbar-color:var(--tds-select-dropdown-scrollbar-color);
1506
- scrollbar-width:var(--tds-select-dropdown-scrollbar-width);
1507
- background:var(--tds-select-dropdown-background-color);
1508
- border:var(--tds-select-dropdown-border);
1509
- border-radius:var(--tds-select-dropdown-border-radius);
1510
- box-shadow:var(--tds-select-dropdown-box-shadow);
1511
- opacity:var(--tds-select-dropdown-open-opacity);
1512
- translate:var(--tds-select-dropdown-open-translate);
1513
- transition:var(--tds-select-dropdown-transition);
1514
- }
1515
-
1516
- :is(.tds-select select:has( > button)) option::checkmark{
1517
- display:none;
1518
- }
1519
-
1520
- @starting-style{
1521
- :is(.tds-select select:has( > button))::picker(select):popover-open{
1522
- opacity:var(--tds-select-dropdown-closed-opacity);
1523
- translate:var(--tds-select-dropdown-closed-translate);
1524
- }
1525
- }
1526
- }
1527
-
1528
- .tds-radio-group{
1529
- --tds-radio-group-font-size:var(--t-font-size-md);
1530
- --tds-radio-group-line-height:1.4;
1531
- --tds-radio-group-gap:var(--t-spacing-1);
1532
-
1533
- --tds-radio-group-legend-margin-bottom:var(--tds-radio-group-gap);
1534
-
1535
- --tds-radio-group-description-font-size:var(--t-font-size-sm);
1536
- --tds-radio-group-description-line-height:1.35;
1537
- --tds-radio-group-description-color:var(--t-text-color-secondary);
1538
- --tds-radio-group-description-invalid-icon-display:none;
1539
- display:flex;
1540
- flex-direction:column;
1541
- gap:var(--tds-radio-group-gap);
1542
- padding:0;
1543
- margin:0;
1544
-
1545
- font-size:var(--tds-radio-group-font-size);
1546
- line-height:var(--tds-radio-group-line-height);
1547
- border:0;
1548
- }
1549
-
1550
- .tds-radio-group legend{
1551
- padding:0;
1552
- margin-bottom:var(--tds-radio-group-legend-margin-bottom);
1553
- }
1554
-
1555
- .tds-radio-group:has(.tds-radio-group-description){
1556
- --tds-radio-group-legend-margin-bottom:var(--t-spacing-fourth);
1557
- }
1558
-
1559
- .tds-radio-group[aria-invalid="true"]{
1560
- --tds-radio-group-description-color:var(--t-text-color-status-error);
1561
- --tds-radio-group-description-invalid-icon-display:inline-block;
1562
- }
1563
-
1564
- .tds-radio-group[aria-invalid="true"] .tds-radio{
1565
- --tds-radio-input-border-color:var(--t-form-border-color-error);
1566
- }
1567
-
1568
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
1569
- --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
1570
- --tds-radio-input-background-color:var(--t-form-background-color-error);
1571
- }
1572
-
1573
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
1574
- --tds-radio-input-background-color:var(--t-form-background-color);
1575
- }
1576
-
1577
- .tds-radio-group:has(input:required) legend::after{
1578
- margin-left:.25ch;
1579
- color:var(--t-text-color-status-error);
1580
- content:"*";
1581
- }
1582
-
1583
- .tds-radio-group-fields{
1584
- display:flex;
1585
- flex-direction:column;
1586
- gap:var(--tds-radio-group-gap);
1587
- align-items:flex-start;
1588
- }
1589
-
1590
- .tds-radio-group-description{
1591
- display:flex;
1592
- gap:var(--t-spacing-half);
1593
- align-items:flex-start;
1594
- margin:0;
1595
- font-size:var(--tds-radio-group-description-font-size);
1596
- line-height:var(--tds-radio-group-description-line-height);
1597
- color:var(--tds-radio-group-description-color);
1598
- cursor:text;
1599
- }
1600
-
1601
- .tds-radio-group-description .tds-radio-group-description-invalid-icon{
1602
- display:var(--tds-radio-group-description-invalid-icon-display);
1603
- flex-shrink:0;
1604
- margin-top:calc(.5lh - .5em);
1605
- line-height:var(--tds-radio-group-description-line-height);
1606
- }
1607
-
1608
- .tds-radio-group--sm{
1609
- --tds-radio-group-line-height:1.35;
1610
- --tds-radio-group-font-size:var(--t-font-size-sm);
1611
- --tds-radio-group-description-font-size:var(--t-font-size-xs);
1612
- --tds-radio-group-description-line-height:1.3;
1613
- }
1614
-
1615
- .tds-toggle-switch{
1616
- --tds-toggle-switch-font-size:var(--t-font-size-md);
1617
- --tds-toggle-switch-column-gap:var(--t-spacing-1);
1618
- --tds-toggle-switch-cursor:pointer;
1619
- --tds-toggle-switch-display:inline-grid;
1620
- --tds-toggle-switch-line-height:1.4;
1621
-
1622
- --tds-toggle-switch-label-color:var(--t-form-color);
1623
-
1624
- --tds-toggle-switch-track-width:var(--t-container-size-md);
1625
- --tds-toggle-switch-track-outline:none;
1626
- --tds-toggle-switch-track-height:var(--t-container-size-xs);
1627
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
1628
- --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
1629
-
1630
- --tds-toggle-switch-thumb-size:var(--t-element-size-md);
1631
- --tds-toggle-switch-thumb-transform:translateX(0);
1632
- --tds-toggle-switch-thumb-transition:transform var(--t-duration-200) var(--t-ease-in-out);
1633
-
1634
- --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
1635
- --tds-toggle-switch-description-line-height:1.35;
1636
- --tds-toggle-switch-description-color:var(--t-text-color-secondary);
1637
- position:relative;
1638
-
1639
- display:var(--tds-toggle-switch-display);
1640
- grid-template-columns:auto;
1641
- grid-auto-columns:1fr;
1642
- gap:var(--t-spacing-fourth) var(--tds-toggle-switch-column-gap);
1643
- -webkit-user-select:none;
1644
- -moz-user-select:none;
1645
- user-select:none;
1646
- }
1647
-
1648
- .tds-toggle-switch input[type="checkbox"]{
1649
- position:absolute;
1650
- width:var(--tds-toggle-switch-track-width);
1651
- height:var(--tds-toggle-switch-track-height);
1652
- margin:0;
1653
- -webkit-appearance:none;
1654
- -moz-appearance:none;
1655
- appearance:none;
1656
- cursor:var(--tds-toggle-switch-cursor);
1657
- outline:var(--tds-toggle-switch-track-outline);
1658
- outline-offset:var(--t-focus-ring-offset);
1659
- background-color:transparent;
1660
- border:0;
1661
- border-radius:var(--t-border-radius-round);
1662
- }
1663
-
1664
- :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
1665
- --tds-toggle-switch-track-outline:var(--t-focus-ring-outline);
1666
- }
1667
-
1668
- .tds-toggle-switch label{
1669
- display:inline-flex;
1670
- grid-area:1 / 2;
1671
- -moz-column-gap:var(--tds-toggle-switch-column-gap);
1672
- column-gap:var(--tds-toggle-switch-column-gap);
1673
- margin-top:-.09375em;
1674
- font-size:var(--tds-toggle-switch-font-size);
1675
- font-weight:var(--t-font-weight-normal);
1676
- line-height:var(--tds-toggle-switch-line-height);
1677
- color:var(--tds-toggle-switch-label-color);
1678
- cursor:var(--tds-toggle-switch-cursor);
1679
- }
1680
-
1681
- .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
1682
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
1683
- }
1684
-
1685
- .tds-toggle-switch:has(input:checked){
1686
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
1687
- --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
1688
- }
1689
-
1690
- .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
1691
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
1676
+ -webkit-appearance:base-select;
1677
+ -moz-appearance:base-select;
1678
+ appearance:base-select;
1679
+ }
1680
+ }
1681
+ :is(.tds-select select:has( > button))::picker-icon{
1682
+ flex-shrink:0;
1683
+ width:var(--tds-select-caret-size);
1684
+ height:var(--tds-select-caret-size);
1685
+ margin-inline-end:var(--tds-select-caret-inline-offset);
1686
+ content:var(--tds-select-background-image);
1687
+ transition:var(--tds-select-caret-transition);
1692
1688
  }
1693
1689
 
1694
- .tds-toggle-switch:has(input:disabled){
1695
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
1696
- --tds-toggle-switch-label-color:var(--t-form-color-disabled);
1697
- --tds-toggle-switch-description-color:var(--t-form-color-disabled);
1698
- --tds-toggle-switch-cursor:not-allowed;
1699
- }
1690
+ :is(.tds-select select:has( > button))::picker(select):not(:popover-open){
1691
+ opacity:var(--tds-select-dropdown-closed-opacity);
1692
+ translate:var(--tds-select-dropdown-closed-translate);
1693
+ }
1700
1694
 
1701
- .tds-toggle-switch-track{
1702
- position:relative;
1703
- flex-shrink:0;
1704
- width:var(--tds-toggle-switch-track-width);
1705
- height:var(--tds-toggle-switch-track-height);
1706
- background-color:var(--tds-toggle-switch-track-background-color);
1707
- border-radius:var(--t-border-radius-round);
1708
- transition:var(--tds-toggle-switch-track-transition);
1709
- }
1695
+ :is(.tds-select select:has( > button)):open,:is(.tds-select select:has( > button)):focus-within{
1696
+ outline-color:var(--t-focus-ring-color);
1697
+ outline-offset:var(--t-focus-ring-offset);
1698
+ border-color:var(--tds-select-border-color-active);
1699
+ }
1710
1700
 
1711
- .tds-toggle-switch-track::before{
1712
- position:absolute;
1713
- top:var(--t-spacing-fourth);
1714
- left:var(--t-spacing-fourth);
1715
- width:var(--tds-toggle-switch-thumb-size);
1716
- height:var(--tds-toggle-switch-thumb-size);
1717
- content:"";
1718
- background-color:#fff;
1719
- border-radius:var(--t-border-radius-round);
1720
- transform:var(--tds-toggle-switch-thumb-transform);
1721
- transition:var(--tds-toggle-switch-thumb-transition);
1722
- }
1701
+ :is(.tds-select select:has( > button)):open::picker-icon{
1702
+ opacity:1;
1703
+ transform:rotate(.5turn);
1704
+ }
1723
1705
 
1724
- @media (prefers-reduced-motion: reduce){
1706
+ :is(.tds-select select:has( > button)) selectedcontent{
1707
+ overflow:hidden;
1708
+ text-overflow:ellipsis;
1709
+ line-height:calc(var(--tds-select-min-height) - 2px);
1710
+ white-space:nowrap;
1711
+ }
1725
1712
 
1726
- .tds-toggle-switch-track{
1727
- --tds-toggle-switch-track-transition:none;
1728
- --tds-toggle-switch-thumb-transition:none;
1729
- }
1730
- }
1713
+ :is(.tds-select select:has( > button)):has(option[hidden][disabled][value=""]:checked) > button{
1714
+ color:var(--tds-select-placeholder-color);
1715
+ }
1731
1716
 
1732
- .tds-toggle-switch-description{
1733
- display:flex;
1734
- grid-area:2 / 2;
1735
- align-items:flex-start;
1736
- margin:0;
1737
- font-size:var(--tds-toggle-switch-description-font-size);
1738
- line-height:var(--tds-toggle-switch-description-line-height);
1739
- color:var(--tds-toggle-switch-description-color);
1740
- cursor:text;
1741
- }
1717
+ :is(.tds-select select:has( > button))::picker(select){
1718
+ inset:auto;
1719
+ inline-size:-moz-max-content;
1720
+ inline-size:max-content;
1721
+ min-inline-size:anchor-size(width);
1722
+ max-inline-size:100vi;
1723
+ padding:var(--tds-select-dropdown-padding);
1724
+ margin-block:var(--tds-select-dropdown-margin-block);
1725
+ position-try-fallbacks:flip-block, flip-inline;
1726
+ overflow:auto;
1727
+ overflow-x:hidden;
1728
+ scroll-behavior:var(--tds-select-dropdown-scroll-behavior);
1729
+ overscroll-behavior:none;
1730
+ -webkit-user-select:none;
1731
+ -moz-user-select:none;
1732
+ user-select:none;
1733
+ scrollbar-color:var(--tds-select-dropdown-scrollbar-color);
1734
+ scrollbar-width:var(--tds-select-dropdown-scrollbar-width);
1735
+ background:var(--tds-select-dropdown-background-color);
1736
+ border:var(--tds-select-dropdown-border);
1737
+ border-radius:var(--tds-select-dropdown-border-radius);
1738
+ box-shadow:var(--tds-select-dropdown-box-shadow);
1739
+ opacity:var(--tds-select-dropdown-open-opacity);
1740
+ translate:var(--tds-select-dropdown-open-translate);
1741
+ transition:var(--tds-select-dropdown-transition);
1742
+ }
1742
1743
 
1743
- .tds-toggle-switch--sm{
1744
- --tds-toggle-switch-font-size:var(--t-font-size-sm);
1745
- --tds-toggle-switch-line-height:1.35;
1746
- --tds-toggle-switch-track-height:var(--t-element-size-lg);
1747
- --tds-toggle-switch-thumb-size:var(--t-element-size-sm);
1748
- --tds-toggle-switch-description-font-size:var(--t-font-size-xs);
1749
- --tds-toggle-switch-description-line-height:1.3;
1750
- }
1744
+ :is(.tds-select select:has( > button)) option::checkmark{
1745
+ display:none;
1746
+ }
1751
1747
 
1752
- .tds-toggle-switch--hide-label{
1753
- --tds-toggle-switch-display:inline-flex;
1748
+ @starting-style{
1749
+ :is(.tds-select select:has( > button))::picker(select):popover-open{
1750
+ opacity:var(--tds-select-dropdown-closed-opacity);
1751
+ translate:var(--tds-select-dropdown-closed-translate);
1752
+ }
1753
+ }
1754
1754
  }
1755
1755
 
1756
1756
  .tds-input{
@@ -3336,19 +3336,19 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
3336
3336
  @media (prefers-color-scheme: dark){
3337
3337
  }
3338
3338
 
3339
- .tds-combo-box{
3340
- --tds-combo-box-border-color:var(--t-form-border-color);
3341
- --tds-combo-box-border-color-hover:var(--t-form-border-color-hover);
3342
- --tds-combo-box-border-color-active:var(--t-form-border-color-focus);
3343
- --tds-combo-box-background-color:var(--t-form-background-color);
3344
- --tds-combo-box-color:var(--t-form-color);
3345
- --tds-combo-box-placeholder-color:var(--t-form-placeholder-color);
3346
- --tds-combo-box-font-size:var(--t-font-size-md);
3347
- --tds-combo-box-min-height:var(--t-container-size-md);
3348
- --tds-combo-box-padding-block:6px;
3349
- --tds-combo-box-button-offset:4px;
3350
- --tds-combo-box-description-color:var(--t-text-color-secondary);
3351
- --tds-combo-box-description-invalid-icon-display:none;
3339
+ .tds-date-picker{
3340
+ --tds-date-picker-border-color:var(--t-form-border-color);
3341
+ --tds-date-picker-border-color-hover:var(--t-form-border-color-hover);
3342
+ --tds-date-picker-border-color-active:var(--t-form-border-color-focus);
3343
+ --tds-date-picker-background-color:var(--t-form-background-color);
3344
+ --tds-date-picker-color:var(--t-form-color);
3345
+ --tds-date-picker-placeholder-color:var(--t-form-placeholder-color);
3346
+ --tds-date-picker-font-size:var(--t-font-size-md);
3347
+ --tds-date-picker-min-height:var(--t-container-size-md);
3348
+ --tds-date-picker-padding-block:6px;
3349
+ --tds-date-picker-button-offset:4px;
3350
+ --tds-date-picker-description-color:var(--t-text-color-secondary);
3351
+ --tds-date-picker-description-invalid-icon-display:none;
3352
3352
 
3353
3353
  position:relative;
3354
3354
  display:flex;
@@ -3356,982 +3356,983 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
3356
3356
  gap:var(--t-spacing-half);
3357
3357
  }
3358
3358
 
3359
- .tds-combo-box[data-required] .tds-combo-box-label::after{
3359
+ .tds-date-picker[data-required] .tds-date-picker-label::after{
3360
3360
  margin-left:.25ch;
3361
3361
  color:var(--t-text-color-status-error);
3362
3362
  content:"*";
3363
3363
  }
3364
3364
 
3365
- .tds-combo-box[data-invalid]{
3366
- --tds-combo-box-border-color:var(--t-form-border-color-error);
3367
- --tds-combo-box-border-color-hover:var(--t-form-border-color-error-hover);
3368
- --tds-combo-box-border-color-active:var(--t-form-border-color-error-hover);
3369
- --tds-combo-box-background-color:var(--t-form-background-color-error);
3370
- --tds-combo-box-description-color:var(--t-text-color-status-error);
3371
- --tds-combo-box-description-invalid-icon-display:inline-block;
3365
+ .tds-date-picker[data-invalid]{
3366
+ --tds-date-picker-border-color:var(--t-form-border-color-error);
3367
+ --tds-date-picker-border-color-hover:var(--t-form-border-color-error-hover);
3368
+ --tds-date-picker-border-color-active:var(--t-form-border-color-error-hover);
3369
+ --tds-date-picker-background-color:var(--t-form-background-color-error);
3370
+ --tds-date-picker-description-color:var(--t-text-color-status-error);
3371
+ --tds-date-picker-description-invalid-icon-display:inline-block;
3372
3372
  }
3373
3373
 
3374
- .tds-combo-box[data-disabled]{
3375
- --tds-combo-box-border-color:var(--t-form-border-color-disabled);
3376
- --tds-combo-box-background-color:var(--t-form-background-color-disabled);
3377
- --tds-combo-box-color:var(--t-form-color-disabled);
3374
+ .tds-date-picker[data-disabled]{
3375
+ --tds-date-picker-border-color:var(--t-form-border-color-disabled);
3376
+ --tds-date-picker-background-color:var(--t-form-background-color-disabled);
3377
+ --tds-date-picker-color:var(--t-form-color-disabled);
3378
+ --tds-date-picker-placeholder-color:var(--t-form-color-disabled);
3378
3379
  }
3379
3380
 
3380
- .tds-combo-box[data-disabled] .tds-combo-box-label{
3381
- color:var(--t-form-color-disabled);
3382
- }
3383
-
3384
- .tds-combo-box[data-disabled] .tds-combo-box-field{
3381
+ .tds-date-picker[data-disabled] .tds-date-picker-field{
3385
3382
  cursor:not-allowed;
3386
3383
  }
3387
3384
 
3388
- .tds-combo-box[data-open] .tds-combo-box-button > svg{
3389
- transform:rotate(.5turn);
3390
- }
3391
-
3392
- .tds-combo-box--lg{
3393
- --tds-combo-box-min-height:var(--t-container-size-lg);
3394
- --tds-combo-box-font-size:var(--t-font-size-lg);
3395
- --tds-combo-box-button-offset:5px;
3385
+ .tds-date-picker--lg{
3386
+ --tds-date-picker-min-height:var(--t-container-size-lg);
3387
+ --tds-date-picker-font-size:var(--t-font-size-lg);
3388
+ --tds-date-picker-button-offset:5px;
3396
3389
  }
3397
3390
 
3398
- .tds-combo-box-label{
3391
+ .tds-date-picker-label{
3399
3392
  font-size:var(--t-font-size-md);
3400
3393
  font-weight:var(--t-font-weight-normal);
3401
3394
  color:var(--t-text-color);
3402
3395
  cursor:default;
3403
3396
  }
3404
3397
 
3405
- .tds-combo-box-field{
3398
+ .tds-date-picker-field{
3406
3399
  display:flex;
3407
3400
  align-items:center;
3408
3401
  inline-size:100%;
3409
- min-block-size:var(--tds-combo-box-min-height);
3402
+ min-block-size:var(--tds-date-picker-min-height);
3410
3403
  font-family:inherit;
3411
- font-size:var(--tds-combo-box-font-size);
3404
+ font-size:var(--tds-date-picker-font-size);
3412
3405
  line-height:1;
3413
- color:var(--tds-combo-box-color);
3406
+ color:var(--tds-date-picker-color);
3414
3407
  -webkit-appearance:none;
3415
3408
  -moz-appearance:none;
3416
3409
  appearance:none;
3417
- cursor:default;
3410
+ cursor:text;
3418
3411
  outline:var(--t-focus-ring-width) solid transparent;
3419
3412
  outline-offset:0;
3420
- background-color:var(--tds-combo-box-background-color);
3421
- border:var(--t-form-border-width) solid var(--tds-combo-box-border-color);
3413
+ background-color:var(--tds-date-picker-background-color);
3414
+ border:var(--t-form-border-width) solid var(--tds-date-picker-border-color);
3422
3415
  border-radius:var(--t-form-border-radius);
3423
3416
  }
3424
3417
 
3425
- .tds-combo-box-field[data-hovered]:not([data-focus-visible],[data-focus-within],[data-disabled]){
3426
- border-color:var(--tds-combo-box-border-color-hover);
3418
+ .tds-date-picker-field[data-hovered]:not([data-focus-visible],[data-focus-within],[data-disabled]){
3419
+ border-color:var(--tds-date-picker-border-color-hover);
3427
3420
  }
3428
3421
 
3429
- .tds-combo-box-field[data-focus-within]{
3422
+ .tds-date-picker-field[data-focus-within]{
3430
3423
  outline-color:var(--t-focus-ring-color);
3431
3424
  outline-offset:var(--t-focus-ring-offset);
3432
- border-color:var(--tds-combo-box-border-color-active);
3425
+ border-color:var(--tds-date-picker-border-color-active);
3433
3426
  }
3434
3427
 
3435
- .tds-combo-box-field:has([readonly]){
3436
- --tds-input-border-color:var(--t-form-border-color-readonly);
3437
- --tds-combo-box-background-color:var(--t-form-background-color-readonly);
3428
+ .tds-date-picker-field:has(.tds-date-picker-input[data-readonly]){
3429
+ color:var(--t-form-color-readonly);
3430
+ background-color:var(--t-form-background-color-readonly);
3431
+ border-color:var(--t-form-border-color-readonly);
3438
3432
  }
3439
3433
 
3440
- .tds-combo-box-field[data-focus-within]:has([readonly]){
3434
+ .tds-date-picker-field[data-hovered]:has(.tds-date-picker-input[data-readonly]){
3435
+ border-color:var(--t-form-border-color-readonly);
3436
+ }
3437
+
3438
+ .tds-date-picker-field[data-focus-within]:has(.tds-date-picker-input[data-readonly]){
3439
+ outline-color:var(--t-focus-ring-color);
3440
+ outline-offset:var(--t-focus-ring-offset);
3441
3441
  border-color:var(--t-form-border-color-hover);
3442
3442
  }
3443
3443
 
3444
- .tds-combo-box-input{
3444
+ .tds-date-picker-input{
3445
+ flex:1;
3446
+ padding-block:var(--tds-date-picker-padding-block);
3447
+ padding-inline-start:var(--t-spacing-1);
3448
+ font-variant-numeric:tabular-nums;
3449
+ }
3450
+
3451
+ .tds-date-picker-segment{
3452
+ padding-inline:2px;
3453
+ caret-color:transparent;
3454
+ border-radius:var(--t-border-radius-sm);
3455
+ }
3456
+
3457
+ .tds-date-picker-segment[data-placeholder]{
3458
+ color:var(--tds-date-picker-placeholder-color);
3459
+ }
3460
+
3461
+ .tds-date-picker-segment[data-focused]{
3462
+ color:var(--t-text-color-inverted);
3463
+ outline:0;
3464
+ background:var(--t-fill-color-interaction);
3465
+ }
3466
+
3467
+ .tds-date-picker-segment-separator{
3468
+ padding-inline:0;
3469
+ color:var(--tds-date-picker-placeholder-color);
3470
+ }
3471
+
3472
+ .tds-date-picker-description{
3445
3473
  display:flex;
3446
- flex:1;
3447
- align-items:center;
3448
- padding-block:var(--tds-combo-box-padding-block);
3449
- padding-inline-start:var(--t-spacing-1);
3450
- font-family:inherit;
3451
- font-size:inherit;
3452
- color:inherit;
3453
- outline:0;
3454
- background:transparent;
3455
- border:0;
3474
+ gap:var(--t-spacing-half);
3475
+ align-items:flex-start;
3476
+ margin:0;
3477
+ font-size:var(--t-font-size-sm);
3478
+ line-height:1.35;
3479
+ color:var(--tds-date-picker-description-color, var(--t-text-color-secondary));
3480
+ cursor:text;
3456
3481
  }
3457
3482
 
3458
- .tds-combo-box-input::-moz-placeholder{
3459
- color:var(--tds-combo-box-placeholder-color);
3460
- -moz-user-select:none;
3461
- user-select:none;
3462
- }
3463
-
3464
- .tds-combo-box-input::placeholder{
3465
- color:var(--tds-combo-box-placeholder-color);
3466
- -webkit-user-select:none;
3467
- -moz-user-select:none;
3468
- user-select:none;
3483
+ .tds-date-picker-description .tds-date-picker-description-invalid-icon{
3484
+ display:var(--tds-date-picker-description-invalid-icon-display, none);
3485
+ flex-shrink:0;
3486
+ margin-block-start:calc(.5lh - .5em);
3487
+ line-height:1.35;
3469
3488
  }
3470
3489
 
3471
- .tds-combo-box-button{
3490
+ .tds-date-picker-button{
3472
3491
  flex-shrink:0;
3473
3492
  align-self:center;
3474
- inline-size:calc(var(--tds-combo-box-min-height) - (var(--tds-combo-box-button-offset) * 2));
3475
- block-size:calc(var(--tds-combo-box-min-height) - (var(--tds-combo-box-button-offset) * 2));
3493
+ inline-size:calc(var(--tds-date-picker-min-height) - (var(--tds-date-picker-button-offset) * 2));
3494
+ block-size:calc(var(--tds-date-picker-min-height) - (var(--tds-date-picker-button-offset) * 2));
3476
3495
  padding:0;
3477
- margin-inline-end:var(--tds-combo-box-button-offset);
3496
+ margin-inline-end:var(--tds-date-picker-button-offset);
3478
3497
  }
3479
3498
 
3480
- .tds-combo-box-button > svg{
3481
- inline-size:var(--tds-combo-box-font-size);
3482
- block-size:var(--tds-combo-box-font-size);
3483
- transition:transform var(--t-duration-300) var(--t-ease-in-out);
3484
- }
3485
-
3486
- .tds-combo-box-button:not(.tds-btn){
3487
- display:inline-flex;
3488
- align-items:center;
3489
- justify-content:center;
3490
- inline-size:auto;
3491
- block-size:auto;
3492
- margin-inline-end:.75em;
3493
- color:var(--t-icon-color);
3494
- cursor:default;
3495
- background:transparent;
3496
- border:0;
3497
- }
3498
-
3499
- .tds-combo-box-button[data-focus-visible]:not(.tds-btn){
3500
- outline:0;
3501
- }
3499
+ .tds-date-picker-popover{
3500
+ --tds-date-picker-popover-font-size:var(--t-font-size-md);
3501
+ --tds-date-picker-popover-padding:var(--t-spacing-1-half);
3502
+ --tds-date-picker-popover-background-color:var(--t-surface-color-card);
3503
+ --tds-date-picker-popover-transition-enter:opacity var(--t-duration-300) var(--t-ease-out), transform var(--t-duration-300) var(--t-ease-out);
3504
+ --tds-date-picker-popover-transition-exit:opacity var(--t-duration-200) var(--t-ease-in), transform var(--t-duration-200) var(--t-ease-in);
3505
+ --tds-date-picker-popover-closed-opacity:0;
3506
+ --tds-date-picker-popover-closed-transform:translateY(-8px);
3507
+ --tds-date-picker-popover-interactive-timing-function:var(--t-ease-in-out);
3508
+ --tds-date-picker-popover-interactive-duration:var(--t-duration-200);
3509
+ --tds-date-picker-popover-interactive-property:color, background-color, border-color;
3502
3510
 
3503
- .tds-combo-box-popover{
3504
- width:var(--trigger-width);
3505
- max-block-size:inherit;
3506
- padding:var(--t-spacing-1);
3507
- overflow:auto;
3508
- outline:0;
3509
- scrollbar-color:#0004 #0000;
3510
- scrollbar-width:thin;
3511
- background:var(--t-surface-color-card);
3512
- background-clip:padding-box;
3513
- border:1px solid var(--t-border-color);
3511
+ position:relative;
3512
+ overflow:hidden;
3513
+ background-color:var(--tds-date-picker-popover-background-color);
3514
+ border:var(--t-border-width) solid var(--t-border-color);
3514
3515
  border-radius:var(--t-border-radius);
3515
- box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
3516
+ box-shadow:hsl(0, 0%, 0%, .05) 0 10px 15px -3px, hsl(0, 0%, 0%, .05) 0 4px 6px -4px;
3517
+ opacity:1;
3518
+ transform:translateY(0);
3519
+ transition:var(--tds-date-picker-popover-transition-enter);
3516
3520
  }
3517
3521
 
3518
- .tds-combo-box-popover[data-entering]{
3519
- animation:tds-combo-box-popover-enter 160ms ease;
3522
+ .tds-date-picker-popover[data-entering]{
3523
+ opacity:var(--tds-date-picker-popover-closed-opacity);
3524
+ transform:var(--tds-date-picker-popover-closed-transform);
3520
3525
  }
3521
3526
 
3522
- .tds-combo-box-popover[data-exiting]{
3523
- animation:tds-combo-box-popover-exit 130ms ease;
3527
+ .tds-date-picker-popover[data-exiting]{
3528
+ opacity:var(--tds-date-picker-popover-closed-opacity);
3529
+ transform:var(--tds-date-picker-popover-closed-transform);
3530
+ transition:var(--tds-date-picker-popover-transition-exit);
3524
3531
  }
3525
3532
 
3526
- @keyframes tds-combo-box-popover-enter{
3527
- from{
3528
- opacity:0;
3529
- transform:translateY(-8px);
3530
- }
3531
- }
3533
+ @media (prefers-reduced-motion: reduce){
3532
3534
 
3533
- @keyframes tds-combo-box-popover-exit{
3534
- to{
3535
- opacity:0;
3536
- transform:translateY(-8px);
3535
+ .tds-date-picker-popover{
3536
+ --tds-date-picker-popover-transition-enter:none;
3537
+ --tds-date-picker-popover-transition-exit:none;
3538
+ --tds-date-picker-popover-closed-opacity:1;
3539
+ --tds-date-picker-popover-closed-transform:none;
3540
+ }
3537
3541
  }
3542
+
3543
+ .tds-date-picker-overlay{
3544
+ position:absolute;
3545
+ inset:0;
3546
+ z-index:1;
3547
+ display:flex;
3548
+ background-color:var(--tds-date-picker-popover-background-color);
3538
3549
  }
3539
3550
 
3540
- @media (prefers-reduced-motion: reduce){
3541
- .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
3542
- animation:none;
3543
- }
3551
+ .tds-date-picker-overlay-list{
3552
+ display:grid;
3553
+ flex:1;
3554
+ gap:var(--t-spacing-half);
3555
+ padding-inline:var(--tds-date-picker-popover-padding);
3556
+ outline:0;
3557
+ grid-template-columns:repeat(3, 1fr);
3558
+ scrollbar-width:thin;
3559
+ scrollbar-color:var(--t-fill-color-transparency-dark-030) transparent;
3560
+ }
3544
3561
 
3545
- .tds-combo-box-button > svg{
3546
- transition:none;
3547
- }
3562
+ .tds-date-picker-overlay--month .tds-date-picker-overlay-list{
3563
+ padding-bottom:var(--tds-date-picker-popover-padding);
3564
+ grid-template-rows:repeat(4, 1fr);
3548
3565
  }
3549
3566
 
3550
- .tds-combo-box-list{
3551
- padding:0;
3552
- margin:0;
3567
+ .tds-date-picker-overlay--year .tds-date-picker-overlay-list{
3568
+ padding-right:var(--t-spacing-1);
3569
+ grid-auto-rows:var(--t-container-size-xl);
3570
+ overflow-y:auto;
3571
+ scroll-padding-block:calc(var(--t-focus-ring-width) + var(--t-focus-ring-offset));
3553
3572
  }
3554
3573
 
3555
- .tds-combo-box-list-item{
3556
- display:block;
3557
- padding-block:var(--t-spacing-1);
3558
- padding-inline:var(--t-spacing-2) var(--t-spacing-1);
3559
- overflow:hidden;
3560
- text-overflow:ellipsis;
3561
- font-size:1rem;
3574
+ .tds-date-picker-overlay-cell{
3575
+ display:flex;
3576
+ align-items:center;
3577
+ justify-content:center;
3578
+ font-family:inherit;
3579
+ font-size:var(--tds-date-picker-popover-font-size);
3562
3580
  color:var(--t-text-color);
3563
- white-space:nowrap;
3564
3581
  cursor:default;
3565
- outline-offset:-1px;
3566
- border-radius:var(--t-border-radius);
3582
+ outline:0;
3583
+ background:transparent;
3584
+ border:0;
3585
+ border-radius:var(--t-border-radius-md);
3586
+ transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
3587
+ transition-duration:var(--tds-date-picker-popover-interactive-duration);
3588
+ transition-property:var(--tds-date-picker-popover-interactive-property);
3567
3589
  }
3568
3590
 
3569
- .tds-combo-box-list-item[data-hovered]:not([data-disabled]){
3570
- background:var(--t-fill-color-neutral-070);
3591
+ .tds-date-picker-overlay-cell[data-hovered]{
3592
+ background:var(--t-fill-color-button-neutral-outline-hover);
3571
3593
  }
3572
3594
 
3573
- .tds-combo-box-list-item[data-selected]{
3574
- background:var(--t-fill-color-button-interaction-ghost-active);
3595
+ .tds-date-picker-overlay-cell[data-pressed]{
3596
+ background:var(--t-fill-color-button-neutral-outline-active);
3575
3597
  }
3576
3598
 
3577
- .tds-combo-box-list-item[data-focus-visible]{
3578
- outline:var(--t-focus-ring-outline);
3579
- outline-offset:-1px;
3599
+ .tds-date-picker-overlay-cell[data-selected]{
3600
+ font-weight:var(--t-font-weight-semibold);
3601
+ color:var(--t-text-color-inverted);
3602
+ background:var(--t-fill-color-interaction);
3580
3603
  }
3581
3604
 
3582
- .tds-combo-box-list-item[data-disabled]{
3583
- color:var(--t-form-color-disabled);
3584
- cursor:not-allowed;
3605
+ .tds-date-picker-overlay-cell[data-focus-visible]{
3606
+ outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
3585
3607
  }
3586
3608
 
3587
- .tds-combo-box-list-item[data-disabled][data-hovered]{
3588
- background:transparent;
3589
- }
3609
+ .tds-date-picker-overlay-cell[data-selected][data-focus-visible]{
3610
+ outline-offset:var(--t-focus-ring-offset);
3611
+ }
3590
3612
 
3591
- .tds-combo-box-empty-state{
3592
- position:relative;
3593
- min-block-size:var(--t-spacing-3);
3594
- padding-block:var(--t-spacing-1);
3595
- padding-inline:var(--t-spacing-2);
3596
- font-size:var(--t-font-size-md);
3597
- color:var(--t-text-color-secondary);
3613
+ .tds-date-picker-calendar-heading{
3614
+ display:flex;
3615
+ flex:1;
3616
+ gap:var(--t-spacing-half);
3617
+ align-items:center;
3618
+ justify-content:flex-start;
3598
3619
  }
3599
3620
 
3600
- .tds-combo-box-load-more{
3601
- position:relative;
3602
- min-block-size:calc(var(--t-spacing-3) + var(--t-spacing-1));
3621
+ .tds-date-picker-calendar-overlay-trigger{
3622
+ padding:var(--t-spacing-half) var(--t-spacing-1);
3623
+ font-family:inherit;
3624
+ font-size:var(--tds-date-picker-popover-font-size);
3625
+ font-weight:var(--t-font-weight-semibold);
3626
+ color:var(--t-text-color);
3627
+ cursor:default;
3628
+ outline:0;
3629
+ background:transparent;
3630
+ border:0;
3631
+ border-radius:var(--t-border-radius-md);
3632
+ transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
3633
+ transition-duration:var(--tds-date-picker-popover-interactive-duration);
3634
+ transition-property:var(--tds-date-picker-popover-interactive-property);
3603
3635
  }
3604
3636
 
3605
- .tds-combo-box-empty-state,
3606
- .tds-combo-box-load-more{
3607
- --tds-loading-spinner-visibility:visible;
3608
- --tds-loading-spinner-animation-play-state:running;
3609
- }
3637
+ .tds-date-picker-calendar-overlay-trigger[data-hovered]{
3638
+ background:var(--t-fill-color-button-neutral-outline-hover);
3639
+ }
3610
3640
 
3611
- .tds-combo-box-list-section:not(:first-child){
3612
- margin-block-start:var(--t-spacing-half);
3641
+ .tds-date-picker-calendar-overlay-trigger[data-pressed]{
3642
+ background:var(--t-fill-color-button-neutral-outline-active);
3643
+ }
3644
+
3645
+ .tds-date-picker-calendar-overlay-trigger[data-focus-visible]{
3646
+ outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
3647
+ outline-offset:var(--t-focus-ring-offset);
3613
3648
  }
3614
3649
 
3615
- .tds-combo-box-section-header{
3616
- padding-block:var(--t-spacing-1);
3617
- padding-inline:var(--t-spacing-1);
3618
- font-size:var(--t-font-size-sm);
3619
- font-weight:var(--t-font-weight-semibold);
3620
- color:var(--t-text-color-secondary);
3650
+ .tds-date-picker-calendar{
3651
+ font-size:var(--tds-date-picker-popover-font-size);
3652
+ inline-size:-moz-fit-content;
3653
+ inline-size:fit-content;
3621
3654
  }
3622
3655
 
3623
- .tds-combo-box-description{
3624
- display:flex;
3625
- gap:var(--t-spacing-half);
3626
- align-items:flex-start;
3627
- margin:0;
3628
- font-size:var(--t-font-size-sm);
3629
- line-height:1.35;
3630
- color:var(--tds-combo-box-description-color, var(--t-text-color-secondary));
3631
- cursor:text;
3656
+ .tds-date-picker-calendar-body{
3657
+ position:relative;
3658
+ padding:var(--tds-date-picker-popover-padding);
3659
+ padding-block-start:0;
3632
3660
  }
3633
3661
 
3634
- .tds-combo-box-description-invalid-icon{
3635
- display:var(--tds-combo-box-description-invalid-icon-display, none);
3636
- flex-shrink:0;
3637
- margin-block-start:calc(.5lh - .5em);
3638
- line-height:1.35;
3662
+ .tds-date-picker-calendar-header{
3663
+ display:flex;
3664
+ align-items:center;
3665
+ justify-content:space-between;
3666
+ padding:var(--tds-date-picker-popover-padding);
3639
3667
  }
3640
3668
 
3641
- .tds-checkbox-group{
3642
- --tds-checkbox-group-font-size:var(--t-font-size-md);
3643
- --tds-checkbox-group-line-height:1.4;
3644
- --tds-checkbox-group-gap:var(--t-spacing-1);
3645
-
3646
- --tds-checkbox-group-legend-margin-bottom:var(--tds-checkbox-group-gap);
3669
+ .tds-date-picker-calendar-title{
3670
+ padding:var(--t-spacing-half) var(--t-spacing-1);
3671
+ font-size:var(--tds-date-picker-popover-font-size);
3672
+ font-weight:var(--t-font-weight-semibold);
3673
+ }
3647
3674
 
3648
- --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
3649
- --tds-checkbox-group-description-line-height:1.35;
3650
- --tds-checkbox-group-description-color:var(--t-text-color-secondary);
3651
- --tds-checkbox-group-description-invalid-icon-display:none;
3652
- display:flex;
3653
- flex-direction:column;
3654
- gap:var(--tds-checkbox-group-gap);
3675
+ .tds-date-picker-calendar-title--visually-hidden{
3676
+ position:absolute;
3677
+ inline-size:1px;
3678
+ block-size:1px;
3655
3679
  padding:0;
3656
- margin:0;
3680
+ margin:-1px;
3681
+ overflow:hidden;
3682
+ white-space:nowrap;
3683
+ border:0;
3684
+ clip-path:inset(50%);
3685
+ }
3657
3686
 
3658
- font-size:var(--tds-checkbox-group-font-size);
3659
- line-height:var(--tds-checkbox-group-line-height);
3687
+ .tds-date-picker-calendar-nav{
3688
+ font-size:var(--tds-date-picker-popover-font-size);
3689
+ display:flex;
3690
+ align-items:center;
3691
+ justify-content:center;
3692
+ padding:var(--t-spacing-half);
3693
+ color:var(--t-text-color);
3694
+ cursor:default;
3695
+ outline:0;
3696
+ background:transparent;
3660
3697
  border:0;
3698
+ border-radius:var(--t-border-radius-md);
3699
+ transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
3700
+ transition-duration:var(--tds-date-picker-popover-interactive-duration);
3701
+ transition-property:var(--tds-date-picker-popover-interactive-property);
3661
3702
  }
3662
3703
 
3663
- .tds-checkbox-group legend{
3664
- padding:0;
3665
- margin-bottom:var(--tds-checkbox-group-legend-margin-bottom);
3704
+ .tds-date-picker-calendar-nav[data-hovered]{
3705
+ background:var(--t-fill-color-button-neutral-outline-hover);
3666
3706
  }
3667
3707
 
3668
- .tds-checkbox-group:has(.tds-checkbox-group-description){
3669
- --tds-checkbox-group-legend-margin-bottom:var(--t-spacing-fourth);
3708
+ .tds-date-picker-calendar-nav[data-pressed]{
3709
+ background:var(--t-fill-color-button-neutral-outline-active);
3670
3710
  }
3671
3711
 
3672
- .tds-checkbox-group[aria-invalid="true"]{
3673
- --tds-checkbox-group-description-color:var(--t-text-color-status-error);
3674
- --tds-checkbox-group-description-invalid-icon-display:inline-block;
3712
+ .tds-date-picker-calendar-nav[data-focus-visible]{
3713
+ outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
3714
+ outline-offset:var(--t-focus-ring-offset);
3675
3715
  }
3676
3716
 
3677
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
3678
- margin-left:.25ch;
3679
- color:var(--t-text-color-status-error);
3680
- content:"*";
3681
- }
3682
-
3683
- .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
3684
- content:none;
3685
- }
3717
+ .tds-date-picker-calendar-nav[data-disabled]{
3718
+ color:var(--t-text-color-disabled);
3719
+ cursor:not-allowed;
3720
+ }
3686
3721
 
3687
- .tds-checkbox-group-fields{
3688
- display:flex;
3689
- flex-direction:column;
3690
- gap:var(--tds-checkbox-group-gap);
3691
- align-items:flex-start;
3722
+ .tds-date-picker-calendar-nav svg{
3723
+ transform:scale(0.875);
3692
3724
  }
3693
3725
 
3694
- .tds-checkbox-group-description{
3695
- display:flex;
3696
- gap:var(--t-spacing-half);
3697
- align-items:flex-start;
3698
- margin:0;
3699
- font-size:var(--tds-checkbox-group-description-font-size);
3700
- line-height:var(--tds-checkbox-group-description-line-height);
3701
- color:var(--tds-checkbox-group-description-color);
3702
- cursor:text;
3726
+ .tds-date-picker-calendar-nav--lg svg{
3727
+ transform:scale(1);
3703
3728
  }
3704
3729
 
3705
- .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
3706
- display:var(--tds-checkbox-group-description-invalid-icon-display);
3707
- flex-shrink:0;
3708
- margin-top:calc(.5lh - .5em);
3709
- line-height:var(--tds-checkbox-group-description-line-height);
3710
- }
3711
-
3712
- .tds-checkbox-group--sm{
3713
- --tds-checkbox-group-line-height:1.35;
3714
- --tds-checkbox-group-font-size:var(--t-font-size-sm);
3715
- --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
3716
- --tds-checkbox-group-description-line-height:1.3;
3730
+ .tds-date-picker-calendar-grid{
3731
+ border-collapse:collapse;
3717
3732
  }
3718
3733
 
3719
- .tds-date-picker{
3720
- --tds-date-picker-border-color:var(--t-form-border-color);
3721
- --tds-date-picker-border-color-hover:var(--t-form-border-color-hover);
3722
- --tds-date-picker-border-color-active:var(--t-form-border-color-focus);
3723
- --tds-date-picker-background-color:var(--t-form-background-color);
3724
- --tds-date-picker-color:var(--t-form-color);
3725
- --tds-date-picker-placeholder-color:var(--t-form-placeholder-color);
3726
- --tds-date-picker-font-size:var(--t-font-size-md);
3727
- --tds-date-picker-min-height:var(--t-container-size-md);
3728
- --tds-date-picker-padding-block:6px;
3729
- --tds-date-picker-button-offset:4px;
3730
- --tds-date-picker-description-color:var(--t-text-color-secondary);
3731
- --tds-date-picker-description-invalid-icon-display:none;
3734
+ .tds-date-picker-calendar-header-cell{
3735
+ padding-block:var(--t-spacing-half);
3736
+ font-size:0.875em;
3737
+ font-weight:var(--t-font-weight-medium);
3738
+ color:var(--t-text-color-secondary);
3739
+ text-align:center;
3740
+ }
3732
3741
 
3733
- position:relative;
3742
+ .tds-date-picker-calendar-cell{
3734
3743
  display:flex;
3735
- flex-direction:column;
3736
- gap:var(--t-spacing-half);
3744
+ align-items:center;
3745
+ justify-content:center;
3746
+ inline-size:2.25em;
3747
+ block-size:2.25em;
3748
+ color:var(--t-text-color);
3749
+ cursor:default;
3750
+ outline:0;
3751
+ border:2px solid transparent;
3752
+ border-radius:var(--t-border-radius-md);
3753
+ position:relative;
3754
+ transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
3755
+ transition-duration:var(--tds-date-picker-popover-interactive-duration);
3756
+ transition-property:var(--tds-date-picker-popover-interactive-property);
3737
3757
  }
3738
3758
 
3739
- .tds-date-picker[data-required] .tds-date-picker-label::after{
3740
- margin-left:.25ch;
3741
- color:var(--t-text-color-status-error);
3742
- content:"*";
3759
+ .tds-date-picker-calendar-cell[data-today]{
3760
+ border-radius:50%;
3761
+ border-color:var(--t-border-color);
3743
3762
  }
3744
3763
 
3745
- .tds-date-picker[data-invalid]{
3746
- --tds-date-picker-border-color:var(--t-form-border-color-error);
3747
- --tds-date-picker-border-color-hover:var(--t-form-border-color-error-hover);
3748
- --tds-date-picker-border-color-active:var(--t-form-border-color-error-hover);
3749
- --tds-date-picker-background-color:var(--t-form-background-color-error);
3750
- --tds-date-picker-description-color:var(--t-text-color-status-error);
3751
- --tds-date-picker-description-invalid-icon-display:inline-block;
3764
+ .tds-date-picker-calendar-cell[data-outside-month]{
3765
+ color:var(--t-text-color-secondary);
3752
3766
  }
3753
3767
 
3754
- .tds-date-picker[data-disabled]{
3755
- --tds-date-picker-border-color:var(--t-form-border-color-disabled);
3756
- --tds-date-picker-background-color:var(--t-form-background-color-disabled);
3757
- --tds-date-picker-color:var(--t-form-color-disabled);
3758
- --tds-date-picker-placeholder-color:var(--t-form-color-disabled);
3768
+ .tds-date-picker-calendar-cell[data-hovered]{
3769
+ background:var(--t-fill-color-button-neutral-outline-hover);
3759
3770
  }
3760
3771
 
3761
- .tds-date-picker[data-disabled] .tds-date-picker-field{
3762
- cursor:not-allowed;
3763
- }
3764
-
3765
- .tds-date-picker--lg{
3766
- --tds-date-picker-min-height:var(--t-container-size-lg);
3767
- --tds-date-picker-font-size:var(--t-font-size-lg);
3768
- --tds-date-picker-button-offset:5px;
3769
- }
3772
+ .tds-date-picker-calendar-cell[data-pressed]{
3773
+ background:var(--t-fill-color-button-neutral-outline-active);
3774
+ }
3770
3775
 
3771
- .tds-date-picker-label{
3772
- font-size:var(--t-font-size-md);
3773
- font-weight:var(--t-font-weight-normal);
3774
- color:var(--t-text-color);
3775
- cursor:default;
3776
- }
3776
+ .tds-date-picker-calendar-cell[data-selected]{
3777
+ font-weight:var(--t-font-weight-semibold);
3778
+ color:var(--t-text-color-inverted);
3779
+ background:var(--t-fill-color-interaction);
3780
+ border-color:transparent;
3781
+ }
3777
3782
 
3778
- .tds-date-picker-field{
3779
- display:flex;
3780
- align-items:center;
3781
- inline-size:100%;
3782
- min-block-size:var(--tds-date-picker-min-height);
3783
- font-family:inherit;
3784
- font-size:var(--tds-date-picker-font-size);
3785
- line-height:1;
3786
- color:var(--tds-date-picker-color);
3787
- -webkit-appearance:none;
3788
- -moz-appearance:none;
3789
- appearance:none;
3790
- cursor:text;
3791
- outline:var(--t-focus-ring-width) solid transparent;
3792
- outline-offset:0;
3793
- background-color:var(--tds-date-picker-background-color);
3794
- border:var(--t-form-border-width) solid var(--tds-date-picker-border-color);
3795
- border-radius:var(--t-form-border-radius);
3796
- }
3783
+ .tds-date-picker-calendar-cell[data-unavailable]{
3784
+ color:var(--t-text-color-disabled);
3785
+ text-decoration:line-through;
3786
+ cursor:not-allowed;
3787
+ }
3797
3788
 
3798
- .tds-date-picker-field[data-hovered]:not([data-focus-visible],[data-focus-within],[data-disabled]){
3799
- border-color:var(--tds-date-picker-border-color-hover);
3789
+ .tds-date-picker-calendar-cell[data-disabled]{
3790
+ color:var(--t-text-color-disabled);
3791
+ cursor:not-allowed;
3800
3792
  }
3801
3793
 
3802
- .tds-date-picker-field[data-focus-within]{
3803
- outline-color:var(--t-focus-ring-color);
3804
- outline-offset:var(--t-focus-ring-offset);
3805
- border-color:var(--tds-date-picker-border-color-active);
3794
+ .tds-date-picker-calendar-cell[data-focus-visible]{
3795
+ outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
3796
+ outline-offset:-2px;
3806
3797
  }
3807
3798
 
3808
- .tds-date-picker-field:has(.tds-date-picker-input[data-readonly]){
3809
- color:var(--t-form-color-readonly);
3810
- background-color:var(--t-form-background-color-readonly);
3811
- border-color:var(--t-form-border-color-readonly);
3799
+ .tds-date-picker-calendar-cell[data-focus-visible][data-selected]{
3800
+ outline-offset:var(--t-focus-ring-offset);
3812
3801
  }
3813
3802
 
3814
- .tds-date-picker-field[data-hovered]:has(.tds-date-picker-input[data-readonly]){
3815
- border-color:var(--t-form-border-color-readonly);
3816
- }
3803
+ .tds-date-picker-popover--lg{
3804
+ --tds-date-picker-popover-font-size:var(--t-font-size-lg);
3805
+ }
3817
3806
 
3818
- .tds-date-picker-field[data-focus-within]:has(.tds-date-picker-input[data-readonly]){
3819
- outline-color:var(--t-focus-ring-color);
3820
- outline-offset:var(--t-focus-ring-offset);
3821
- border-color:var(--t-form-border-color-hover);
3822
- }
3807
+ .tds-checkbox-group{
3808
+ --tds-checkbox-group-font-size:var(--t-font-size-md);
3809
+ --tds-checkbox-group-line-height:1.4;
3810
+ --tds-checkbox-group-gap:var(--t-spacing-1);
3823
3811
 
3824
- .tds-date-picker-input{
3825
- flex:1;
3826
- padding-block:var(--tds-date-picker-padding-block);
3827
- padding-inline-start:var(--t-spacing-1);
3828
- font-variant-numeric:tabular-nums;
3829
- }
3812
+ --tds-checkbox-group-legend-margin-bottom:var(--tds-checkbox-group-gap);
3830
3813
 
3831
- .tds-date-picker-segment{
3832
- padding-inline:2px;
3833
- caret-color:transparent;
3834
- border-radius:var(--t-border-radius-sm);
3814
+ --tds-checkbox-group-description-font-size:var(--t-font-size-sm);
3815
+ --tds-checkbox-group-description-line-height:1.35;
3816
+ --tds-checkbox-group-description-color:var(--t-text-color-secondary);
3817
+ --tds-checkbox-group-description-invalid-icon-display:none;
3818
+ display:flex;
3819
+ flex-direction:column;
3820
+ gap:var(--tds-checkbox-group-gap);
3821
+ padding:0;
3822
+ margin:0;
3823
+
3824
+ font-size:var(--tds-checkbox-group-font-size);
3825
+ line-height:var(--tds-checkbox-group-line-height);
3826
+ border:0;
3835
3827
  }
3836
3828
 
3837
- .tds-date-picker-segment[data-placeholder]{
3838
- color:var(--tds-date-picker-placeholder-color);
3829
+ .tds-checkbox-group legend{
3830
+ padding:0;
3831
+ margin-bottom:var(--tds-checkbox-group-legend-margin-bottom);
3839
3832
  }
3840
3833
 
3841
- .tds-date-picker-segment[data-focused]{
3842
- color:var(--t-text-color-inverted);
3843
- outline:0;
3844
- background:var(--t-fill-color-interaction);
3834
+ .tds-checkbox-group:has(.tds-checkbox-group-description){
3835
+ --tds-checkbox-group-legend-margin-bottom:var(--t-spacing-fourth);
3845
3836
  }
3846
3837
 
3847
- .tds-date-picker-segment-separator{
3848
- padding-inline:0;
3849
- color:var(--tds-date-picker-placeholder-color);
3838
+ .tds-checkbox-group[aria-invalid="true"]{
3839
+ --tds-checkbox-group-description-color:var(--t-text-color-status-error);
3840
+ --tds-checkbox-group-description-invalid-icon-display:inline-block;
3841
+ }
3842
+
3843
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) legend::after{
3844
+ margin-left:.25ch;
3845
+ color:var(--t-text-color-status-error);
3846
+ content:"*";
3847
+ }
3848
+
3849
+ .tds-checkbox-group:has(.tds-checkbox input:required):not(:has(.tds-checkbox input:not(:required))) .tds-checkbox label::after{
3850
+ content:none;
3851
+ }
3852
+
3853
+ .tds-checkbox-group-fields{
3854
+ display:flex;
3855
+ flex-direction:column;
3856
+ gap:var(--tds-checkbox-group-gap);
3857
+ align-items:flex-start;
3850
3858
  }
3851
3859
 
3852
- .tds-date-picker-description{
3860
+ .tds-checkbox-group-description{
3853
3861
  display:flex;
3854
3862
  gap:var(--t-spacing-half);
3855
3863
  align-items:flex-start;
3856
3864
  margin:0;
3857
- font-size:var(--t-font-size-sm);
3858
- line-height:1.35;
3859
- color:var(--tds-date-picker-description-color, var(--t-text-color-secondary));
3865
+ font-size:var(--tds-checkbox-group-description-font-size);
3866
+ line-height:var(--tds-checkbox-group-description-line-height);
3867
+ color:var(--tds-checkbox-group-description-color);
3860
3868
  cursor:text;
3861
3869
  }
3862
3870
 
3863
- .tds-date-picker-description .tds-date-picker-description-invalid-icon{
3864
- display:var(--tds-date-picker-description-invalid-icon-display, none);
3871
+ .tds-checkbox-group-description .tds-checkbox-group-description-invalid-icon{
3872
+ display:var(--tds-checkbox-group-description-invalid-icon-display);
3865
3873
  flex-shrink:0;
3866
- margin-block-start:calc(.5lh - .5em);
3867
- line-height:1.35;
3874
+ margin-top:calc(.5lh - .5em);
3875
+ line-height:var(--tds-checkbox-group-description-line-height);
3868
3876
  }
3869
3877
 
3870
- .tds-date-picker-button{
3871
- flex-shrink:0;
3872
- align-self:center;
3873
- inline-size:calc(var(--tds-date-picker-min-height) - (var(--tds-date-picker-button-offset) * 2));
3874
- block-size:calc(var(--tds-date-picker-min-height) - (var(--tds-date-picker-button-offset) * 2));
3875
- padding:0;
3876
- margin-inline-end:var(--tds-date-picker-button-offset);
3878
+ .tds-checkbox-group--sm{
3879
+ --tds-checkbox-group-line-height:1.35;
3880
+ --tds-checkbox-group-font-size:var(--t-font-size-sm);
3881
+ --tds-checkbox-group-description-font-size:var(--t-font-size-xs);
3882
+ --tds-checkbox-group-description-line-height:1.3;
3877
3883
  }
3878
3884
 
3879
- .tds-date-picker-popover{
3880
- --tds-date-picker-popover-font-size:var(--t-font-size-md);
3881
- --tds-date-picker-popover-padding:var(--t-spacing-1-half);
3882
- --tds-date-picker-popover-background-color:var(--t-surface-color-card);
3883
- --tds-date-picker-popover-transition-enter:opacity var(--t-duration-300) var(--t-ease-out), transform var(--t-duration-300) var(--t-ease-out);
3884
- --tds-date-picker-popover-transition-exit:opacity var(--t-duration-200) var(--t-ease-in), transform var(--t-duration-200) var(--t-ease-in);
3885
- --tds-date-picker-popover-closed-opacity:0;
3886
- --tds-date-picker-popover-closed-transform:translateY(-8px);
3887
- --tds-date-picker-popover-interactive-timing-function:var(--t-ease-in-out);
3888
- --tds-date-picker-popover-interactive-duration:var(--t-duration-200);
3889
- --tds-date-picker-popover-interactive-property:color, background-color, border-color;
3885
+ .tds-time-field{
3886
+ --tds-time-field-border-color:var(--t-form-border-color);
3887
+ --tds-time-field-border-color-hover:var(--t-form-border-color-hover);
3888
+ --tds-time-field-border-color-active:var(--t-form-border-color-focus);
3889
+ --tds-time-field-background-color:var(--t-form-background-color);
3890
+ --tds-time-field-color:var(--t-form-color);
3891
+ --tds-time-field-placeholder-color:var(--t-form-placeholder-color);
3892
+ --tds-time-field-font-size:var(--t-font-size-md);
3893
+ --tds-time-field-min-height:var(--t-container-size-md);
3894
+ --tds-time-field-padding-block:6px;
3895
+ --tds-time-field-description-color:var(--t-text-color-secondary);
3896
+ --tds-time-field-description-invalid-icon-display:none;
3890
3897
 
3891
3898
  position:relative;
3892
- overflow:hidden;
3893
- background-color:var(--tds-date-picker-popover-background-color);
3894
- border:var(--t-border-width) solid var(--t-border-color);
3895
- border-radius:var(--t-border-radius);
3896
- box-shadow:hsl(0, 0%, 0%, .05) 0 10px 15px -3px, hsl(0, 0%, 0%, .05) 0 4px 6px -4px;
3897
- opacity:1;
3898
- transform:translateY(0);
3899
- transition:var(--tds-date-picker-popover-transition-enter);
3899
+ display:flex;
3900
+ flex-direction:column;
3901
+ gap:var(--t-spacing-half);
3900
3902
  }
3901
3903
 
3902
- .tds-date-picker-popover[data-entering]{
3903
- opacity:var(--tds-date-picker-popover-closed-opacity);
3904
- transform:var(--tds-date-picker-popover-closed-transform);
3904
+ .tds-time-field[data-required] .tds-time-field-label::after{
3905
+ margin-left:.25ch;
3906
+ color:var(--t-text-color-status-error);
3907
+ content:"*";
3905
3908
  }
3906
3909
 
3907
- .tds-date-picker-popover[data-exiting]{
3908
- opacity:var(--tds-date-picker-popover-closed-opacity);
3909
- transform:var(--tds-date-picker-popover-closed-transform);
3910
- transition:var(--tds-date-picker-popover-transition-exit);
3910
+ .tds-time-field[data-invalid]{
3911
+ --tds-time-field-border-color:var(--t-form-border-color-error);
3912
+ --tds-time-field-border-color-hover:var(--t-form-border-color-error-hover);
3913
+ --tds-time-field-border-color-active:var(--t-form-border-color-error-hover);
3914
+ --tds-time-field-background-color:var(--t-form-background-color-error);
3915
+ --tds-time-field-description-color:var(--t-text-color-status-error);
3916
+ --tds-time-field-description-invalid-icon-display:inline-block;
3911
3917
  }
3912
3918
 
3913
- @media (prefers-reduced-motion: reduce){
3914
-
3915
- .tds-date-picker-popover{
3916
- --tds-date-picker-popover-transition-enter:none;
3917
- --tds-date-picker-popover-transition-exit:none;
3918
- --tds-date-picker-popover-closed-opacity:1;
3919
- --tds-date-picker-popover-closed-transform:none;
3920
- }
3919
+ .tds-time-field[data-disabled]{
3920
+ --tds-time-field-border-color:var(--t-form-border-color-disabled);
3921
+ --tds-time-field-background-color:var(--t-form-background-color-disabled);
3922
+ --tds-time-field-color:var(--t-form-color-disabled);
3923
+ --tds-time-field-placeholder-color:var(--t-form-color-disabled);
3921
3924
  }
3922
3925
 
3923
- .tds-date-picker-overlay{
3924
- position:absolute;
3925
- inset:0;
3926
- z-index:1;
3927
- display:flex;
3928
- background-color:var(--tds-date-picker-popover-background-color);
3929
- }
3926
+ .tds-time-field[data-disabled] .tds-time-field-label{
3927
+ color:var(--t-form-color-disabled);
3928
+ }
3930
3929
 
3931
- .tds-date-picker-overlay-list{
3932
- display:grid;
3933
- flex:1;
3934
- gap:var(--t-spacing-half);
3935
- padding-inline:var(--tds-date-picker-popover-padding);
3936
- outline:0;
3937
- grid-template-columns:repeat(3, 1fr);
3938
- scrollbar-width:thin;
3939
- scrollbar-color:var(--t-fill-color-transparency-dark-030) transparent;
3940
- }
3930
+ .tds-time-field[data-disabled] .tds-time-field-input{
3931
+ cursor:not-allowed;
3932
+ }
3941
3933
 
3942
- .tds-date-picker-overlay--month .tds-date-picker-overlay-list{
3943
- padding-bottom:var(--tds-date-picker-popover-padding);
3944
- grid-template-rows:repeat(4, 1fr);
3934
+ .tds-time-field--lg{
3935
+ --tds-time-field-min-height:var(--t-container-size-lg);
3936
+ --tds-time-field-font-size:var(--t-font-size-lg);
3945
3937
  }
3946
3938
 
3947
- .tds-date-picker-overlay--year .tds-date-picker-overlay-list{
3948
- padding-right:var(--t-spacing-1);
3949
- grid-auto-rows:var(--t-container-size-xl);
3950
- overflow-y:auto;
3951
- scroll-padding-block:calc(var(--t-focus-ring-width) + var(--t-focus-ring-offset));
3939
+ .tds-time-field-label{
3940
+ font-size:var(--t-font-size-md);
3941
+ font-weight:var(--t-font-weight-normal);
3942
+ color:var(--t-text-color);
3943
+ cursor:default;
3952
3944
  }
3953
3945
 
3954
- .tds-date-picker-overlay-cell{
3946
+ .tds-time-field-input{
3955
3947
  display:flex;
3956
3948
  align-items:center;
3957
- justify-content:center;
3949
+ inline-size:100%;
3950
+ min-block-size:var(--tds-time-field-min-height);
3951
+ padding-block:var(--tds-time-field-padding-block);
3952
+ padding-inline:var(--t-spacing-1);
3958
3953
  font-family:inherit;
3959
- font-size:var(--tds-date-picker-popover-font-size);
3960
- color:var(--t-text-color);
3961
- cursor:default;
3962
- outline:0;
3963
- background:transparent;
3964
- border:0;
3965
- border-radius:var(--t-border-radius-md);
3966
- transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
3967
- transition-duration:var(--tds-date-picker-popover-interactive-duration);
3968
- transition-property:var(--tds-date-picker-popover-interactive-property);
3954
+ font-size:var(--tds-time-field-font-size);
3955
+ font-variant-numeric:tabular-nums;
3956
+ line-height:1;
3957
+ color:var(--tds-time-field-color);
3958
+ cursor:text;
3959
+ outline:var(--t-focus-ring-width) solid transparent;
3960
+ outline-offset:0;
3961
+ background-color:var(--tds-time-field-background-color);
3962
+ border:var(--t-form-border-width) solid var(--tds-time-field-border-color);
3963
+ border-radius:var(--t-form-border-radius);
3969
3964
  }
3970
3965
 
3971
- .tds-date-picker-overlay-cell[data-hovered]{
3972
- background:var(--t-fill-color-button-neutral-outline-hover);
3973
- }
3974
-
3975
- .tds-date-picker-overlay-cell[data-pressed]{
3976
- background:var(--t-fill-color-button-neutral-outline-active);
3977
- }
3978
-
3979
- .tds-date-picker-overlay-cell[data-selected]{
3980
- font-weight:var(--t-font-weight-semibold);
3981
- color:var(--t-text-color-inverted);
3982
- background:var(--t-fill-color-interaction);
3983
- }
3984
-
3985
- .tds-date-picker-overlay-cell[data-focus-visible]{
3986
- outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
3966
+ .tds-time-field-input[data-hovered]:not([data-focus-visible],[data-focused],[data-disabled]){
3967
+ border-color:var(--tds-time-field-border-color-hover);
3987
3968
  }
3988
3969
 
3989
- .tds-date-picker-overlay-cell[data-selected][data-focus-visible]{
3970
+ .tds-time-field-input[data-focus-within]{
3971
+ outline-color:var(--t-focus-ring-color);
3990
3972
  outline-offset:var(--t-focus-ring-offset);
3973
+ border-color:var(--tds-time-field-border-color-active);
3991
3974
  }
3992
3975
 
3993
- .tds-date-picker-calendar-heading{
3994
- display:flex;
3995
- flex:1;
3996
- gap:var(--t-spacing-half);
3997
- align-items:center;
3998
- justify-content:flex-start;
3999
- }
3976
+ .tds-time-field-input[data-readonly]{
3977
+ color:var(--t-form-color-readonly);
3978
+ background-color:var(--t-form-background-color-readonly);
3979
+ border-color:var(--t-form-border-color-readonly);
3980
+ }
4000
3981
 
4001
- .tds-date-picker-calendar-overlay-trigger{
4002
- padding:var(--t-spacing-half) var(--t-spacing-1);
4003
- font-family:inherit;
4004
- font-size:var(--tds-date-picker-popover-font-size);
4005
- font-weight:var(--t-font-weight-semibold);
4006
- color:var(--t-text-color);
4007
- cursor:default;
4008
- outline:0;
4009
- background:transparent;
4010
- border:0;
4011
- border-radius:var(--t-border-radius-md);
4012
- transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
4013
- transition-duration:var(--tds-date-picker-popover-interactive-duration);
4014
- transition-property:var(--tds-date-picker-popover-interactive-property);
4015
- }
3982
+ .tds-time-field-input[data-readonly][data-hovered]{
3983
+ border-color:var(--t-form-border-color-readonly);
3984
+ }
4016
3985
 
4017
- .tds-date-picker-calendar-overlay-trigger[data-hovered]{
4018
- background:var(--t-fill-color-button-neutral-outline-hover);
4019
- }
3986
+ .tds-time-field-input[data-readonly][data-focus-within]{
3987
+ outline-color:var(--t-focus-ring-color);
3988
+ outline-offset:var(--t-focus-ring-offset);
3989
+ border-color:var(--t-form-border-color-hover);
3990
+ }
4020
3991
 
4021
- .tds-date-picker-calendar-overlay-trigger[data-pressed]{
4022
- background:var(--t-fill-color-button-neutral-outline-active);
4023
- }
3992
+ .tds-time-field-segment{
3993
+ padding-inline:1px;
3994
+ font-variant-numeric:tabular-nums;
3995
+ cursor:text;
3996
+ caret-color:transparent;
3997
+ border-radius:var(--t-border-radius-sm);
3998
+ }
4024
3999
 
4025
- .tds-date-picker-calendar-overlay-trigger[data-focus-visible]{
4026
- outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
4027
- outline-offset:var(--t-focus-ring-offset);
4000
+ .tds-time-field-segment[data-placeholder]{
4001
+ color:var(--tds-time-field-placeholder-color);
4028
4002
  }
4029
4003
 
4030
- .tds-date-picker-calendar{
4031
- font-size:var(--tds-date-picker-popover-font-size);
4032
- inline-size:-moz-fit-content;
4033
- inline-size:fit-content;
4034
- }
4004
+ .tds-time-field-segment[data-focused]{
4005
+ color:var(--t-text-color-inverted);
4006
+ outline:0;
4007
+ background:var(--t-fill-color-interaction);
4008
+ }
4035
4009
 
4036
- .tds-date-picker-calendar-body{
4037
- position:relative;
4038
- padding:var(--tds-date-picker-popover-padding);
4039
- padding-block-start:0;
4010
+ .tds-time-field-segment-separator{
4011
+ padding-inline:0;
4012
+ color:var(--tds-time-field-placeholder-color);
4040
4013
  }
4041
4014
 
4042
- .tds-date-picker-calendar-header{
4015
+ .tds-time-field-description{
4043
4016
  display:flex;
4044
- align-items:center;
4045
- justify-content:space-between;
4046
- padding:var(--tds-date-picker-popover-padding);
4017
+ gap:var(--t-spacing-half);
4018
+ align-items:flex-start;
4019
+ margin:0;
4020
+ font-size:var(--t-font-size-sm);
4021
+ line-height:1.35;
4022
+ color:var(--tds-time-field-description-color, var(--t-text-color-secondary));
4023
+ cursor:text;
4047
4024
  }
4048
4025
 
4049
- .tds-date-picker-calendar-title{
4050
- padding:var(--t-spacing-half) var(--t-spacing-1);
4051
- font-size:var(--tds-date-picker-popover-font-size);
4052
- font-weight:var(--t-font-weight-semibold);
4053
- }
4026
+ .tds-time-field-description .tds-time-field-description-invalid-icon{
4027
+ display:var(--tds-time-field-description-invalid-icon-display, none);
4028
+ flex-shrink:0;
4029
+ margin-block-start:calc(.5lh - .5em);
4030
+ line-height:1.35;
4031
+ }
4054
4032
 
4055
- .tds-date-picker-calendar-title--visually-hidden{
4056
- position:absolute;
4057
- inline-size:1px;
4058
- block-size:1px;
4059
- padding:0;
4060
- margin:-1px;
4061
- overflow:hidden;
4062
- white-space:nowrap;
4063
- border:0;
4064
- clip-path:inset(50%);
4065
- }
4033
+ .tds-combo-box{
4034
+ --tds-combo-box-border-color:var(--t-form-border-color);
4035
+ --tds-combo-box-border-color-hover:var(--t-form-border-color-hover);
4036
+ --tds-combo-box-border-color-active:var(--t-form-border-color-focus);
4037
+ --tds-combo-box-background-color:var(--t-form-background-color);
4038
+ --tds-combo-box-color:var(--t-form-color);
4039
+ --tds-combo-box-placeholder-color:var(--t-form-placeholder-color);
4040
+ --tds-combo-box-font-size:var(--t-font-size-md);
4041
+ --tds-combo-box-min-height:var(--t-container-size-md);
4042
+ --tds-combo-box-padding-block:6px;
4043
+ --tds-combo-box-button-offset:4px;
4044
+ --tds-combo-box-description-color:var(--t-text-color-secondary);
4045
+ --tds-combo-box-description-invalid-icon-display:none;
4066
4046
 
4067
- .tds-date-picker-calendar-nav{
4068
- font-size:var(--tds-date-picker-popover-font-size);
4047
+ position:relative;
4069
4048
  display:flex;
4070
- align-items:center;
4071
- justify-content:center;
4072
- padding:var(--t-spacing-half);
4073
- color:var(--t-text-color);
4074
- cursor:default;
4075
- outline:0;
4076
- background:transparent;
4077
- border:0;
4078
- border-radius:var(--t-border-radius-md);
4079
- transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
4080
- transition-duration:var(--tds-date-picker-popover-interactive-duration);
4081
- transition-property:var(--tds-date-picker-popover-interactive-property);
4049
+ flex-direction:column;
4050
+ gap:var(--t-spacing-half);
4082
4051
  }
4083
4052
 
4084
- .tds-date-picker-calendar-nav[data-hovered]{
4085
- background:var(--t-fill-color-button-neutral-outline-hover);
4053
+ .tds-combo-box[data-required] .tds-combo-box-label::after{
4054
+ margin-left:.25ch;
4055
+ color:var(--t-text-color-status-error);
4056
+ content:"*";
4086
4057
  }
4087
4058
 
4088
- .tds-date-picker-calendar-nav[data-pressed]{
4089
- background:var(--t-fill-color-button-neutral-outline-active);
4059
+ .tds-combo-box[data-invalid]{
4060
+ --tds-combo-box-border-color:var(--t-form-border-color-error);
4061
+ --tds-combo-box-border-color-hover:var(--t-form-border-color-error-hover);
4062
+ --tds-combo-box-border-color-active:var(--t-form-border-color-error-hover);
4063
+ --tds-combo-box-background-color:var(--t-form-background-color-error);
4064
+ --tds-combo-box-description-color:var(--t-text-color-status-error);
4065
+ --tds-combo-box-description-invalid-icon-display:inline-block;
4090
4066
  }
4091
4067
 
4092
- .tds-date-picker-calendar-nav[data-focus-visible]{
4093
- outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
4094
- outline-offset:var(--t-focus-ring-offset);
4068
+ .tds-combo-box[data-disabled]{
4069
+ --tds-combo-box-border-color:var(--t-form-border-color-disabled);
4070
+ --tds-combo-box-background-color:var(--t-form-background-color-disabled);
4071
+ --tds-combo-box-color:var(--t-form-color-disabled);
4095
4072
  }
4096
4073
 
4097
- .tds-date-picker-calendar-nav[data-disabled]{
4098
- color:var(--t-text-color-disabled);
4099
- cursor:not-allowed;
4100
- }
4074
+ .tds-combo-box[data-disabled] .tds-combo-box-label{
4075
+ color:var(--t-form-color-disabled);
4076
+ }
4101
4077
 
4102
- .tds-date-picker-calendar-nav svg{
4103
- transform:scale(0.875);
4104
- }
4078
+ .tds-combo-box[data-disabled] .tds-combo-box-field{
4079
+ cursor:not-allowed;
4080
+ }
4105
4081
 
4106
- .tds-date-picker-calendar-nav--lg svg{
4107
- transform:scale(1);
4108
- }
4082
+ .tds-combo-box[data-open] .tds-combo-box-button > svg{
4083
+ transform:rotate(.5turn);
4084
+ }
4109
4085
 
4110
- .tds-date-picker-calendar-grid{
4111
- border-collapse:collapse;
4086
+ .tds-combo-box--lg{
4087
+ --tds-combo-box-min-height:var(--t-container-size-lg);
4088
+ --tds-combo-box-font-size:var(--t-font-size-lg);
4089
+ --tds-combo-box-button-offset:5px;
4112
4090
  }
4113
4091
 
4114
- .tds-date-picker-calendar-header-cell{
4115
- padding-block:var(--t-spacing-half);
4116
- font-size:0.875em;
4117
- font-weight:var(--t-font-weight-medium);
4118
- color:var(--t-text-color-secondary);
4119
- text-align:center;
4092
+ .tds-combo-box-label{
4093
+ font-size:var(--t-font-size-md);
4094
+ font-weight:var(--t-font-weight-normal);
4095
+ color:var(--t-text-color);
4096
+ cursor:default;
4120
4097
  }
4121
4098
 
4122
- .tds-date-picker-calendar-cell{
4099
+ .tds-combo-box-field{
4123
4100
  display:flex;
4124
4101
  align-items:center;
4125
- justify-content:center;
4126
- inline-size:2.25em;
4127
- block-size:2.25em;
4128
- color:var(--t-text-color);
4102
+ inline-size:100%;
4103
+ min-block-size:var(--tds-combo-box-min-height);
4104
+ font-family:inherit;
4105
+ font-size:var(--tds-combo-box-font-size);
4106
+ line-height:1;
4107
+ color:var(--tds-combo-box-color);
4108
+ -webkit-appearance:none;
4109
+ -moz-appearance:none;
4110
+ appearance:none;
4129
4111
  cursor:default;
4130
- outline:0;
4131
- border:2px solid transparent;
4132
- border-radius:var(--t-border-radius-md);
4133
- position:relative;
4134
- transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
4135
- transition-duration:var(--tds-date-picker-popover-interactive-duration);
4136
- transition-property:var(--tds-date-picker-popover-interactive-property);
4112
+ outline:var(--t-focus-ring-width) solid transparent;
4113
+ outline-offset:0;
4114
+ background-color:var(--tds-combo-box-background-color);
4115
+ border:var(--t-form-border-width) solid var(--tds-combo-box-border-color);
4116
+ border-radius:var(--t-form-border-radius);
4137
4117
  }
4138
4118
 
4139
- .tds-date-picker-calendar-cell[data-today]{
4140
- border-radius:50%;
4141
- border-color:var(--t-border-color);
4119
+ .tds-combo-box-field[data-hovered]:not([data-focus-visible],[data-focus-within],[data-disabled]){
4120
+ border-color:var(--tds-combo-box-border-color-hover);
4142
4121
  }
4143
4122
 
4144
- .tds-date-picker-calendar-cell[data-outside-month]{
4145
- color:var(--t-text-color-secondary);
4123
+ .tds-combo-box-field[data-focus-within]{
4124
+ outline-color:var(--t-focus-ring-color);
4125
+ outline-offset:var(--t-focus-ring-offset);
4126
+ border-color:var(--tds-combo-box-border-color-active);
4146
4127
  }
4147
4128
 
4148
- .tds-date-picker-calendar-cell[data-hovered]{
4149
- background:var(--t-fill-color-button-neutral-outline-hover);
4129
+ .tds-combo-box-field:has([readonly]){
4130
+ --tds-input-border-color:var(--t-form-border-color-readonly);
4131
+ --tds-combo-box-background-color:var(--t-form-background-color-readonly);
4150
4132
  }
4151
4133
 
4152
- .tds-date-picker-calendar-cell[data-pressed]{
4153
- background:var(--t-fill-color-button-neutral-outline-active);
4134
+ .tds-combo-box-field[data-focus-within]:has([readonly]){
4135
+ border-color:var(--t-form-border-color-hover);
4136
+ }
4137
+
4138
+ .tds-combo-box-input{
4139
+ display:flex;
4140
+ flex:1;
4141
+ align-items:center;
4142
+ padding-block:var(--tds-combo-box-padding-block);
4143
+ padding-inline-start:var(--t-spacing-1);
4144
+ font-family:inherit;
4145
+ font-size:inherit;
4146
+ color:inherit;
4147
+ outline:0;
4148
+ background:transparent;
4149
+ border:0;
4150
+ }
4151
+
4152
+ .tds-combo-box-input::-moz-placeholder{
4153
+ color:var(--tds-combo-box-placeholder-color);
4154
+ -moz-user-select:none;
4155
+ user-select:none;
4154
4156
  }
4155
4157
 
4156
- .tds-date-picker-calendar-cell[data-selected]{
4157
- font-weight:var(--t-font-weight-semibold);
4158
- color:var(--t-text-color-inverted);
4159
- background:var(--t-fill-color-interaction);
4160
- border-color:transparent;
4158
+ .tds-combo-box-input::placeholder{
4159
+ color:var(--tds-combo-box-placeholder-color);
4160
+ -webkit-user-select:none;
4161
+ -moz-user-select:none;
4162
+ user-select:none;
4161
4163
  }
4162
4164
 
4163
- .tds-date-picker-calendar-cell[data-unavailable]{
4164
- color:var(--t-text-color-disabled);
4165
- text-decoration:line-through;
4166
- cursor:not-allowed;
4167
- }
4165
+ .tds-combo-box-button{
4166
+ flex-shrink:0;
4167
+ align-self:center;
4168
+ inline-size:calc(var(--tds-combo-box-min-height) - (var(--tds-combo-box-button-offset) * 2));
4169
+ block-size:calc(var(--tds-combo-box-min-height) - (var(--tds-combo-box-button-offset) * 2));
4170
+ padding:0;
4171
+ margin-inline-end:var(--tds-combo-box-button-offset);
4172
+ }
4168
4173
 
4169
- .tds-date-picker-calendar-cell[data-disabled]{
4170
- color:var(--t-text-color-disabled);
4171
- cursor:not-allowed;
4174
+ .tds-combo-box-button > svg{
4175
+ inline-size:var(--tds-combo-box-font-size);
4176
+ block-size:var(--tds-combo-box-font-size);
4177
+ transition:transform var(--t-duration-300) var(--t-ease-in-out);
4172
4178
  }
4173
4179
 
4174
- .tds-date-picker-calendar-cell[data-focus-visible]{
4175
- outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
4176
- outline-offset:-2px;
4180
+ .tds-combo-box-button:not(.tds-btn){
4181
+ display:inline-flex;
4182
+ align-items:center;
4183
+ justify-content:center;
4184
+ inline-size:auto;
4185
+ block-size:auto;
4186
+ margin-inline-end:.75em;
4187
+ color:var(--t-icon-color);
4188
+ cursor:default;
4189
+ background:transparent;
4190
+ border:0;
4177
4191
  }
4178
4192
 
4179
- .tds-date-picker-calendar-cell[data-focus-visible][data-selected]{
4180
- outline-offset:var(--t-focus-ring-offset);
4181
- }
4193
+ .tds-combo-box-button[data-focus-visible]:not(.tds-btn){
4194
+ outline:0;
4195
+ }
4182
4196
 
4183
- .tds-date-picker-popover--lg{
4184
- --tds-date-picker-popover-font-size:var(--t-font-size-lg);
4197
+ .tds-combo-box-popover{
4198
+ width:var(--trigger-width);
4199
+ max-block-size:inherit;
4200
+ padding:var(--t-spacing-1);
4201
+ overflow:auto;
4202
+ outline:0;
4203
+ scrollbar-color:#0004 #0000;
4204
+ scrollbar-width:thin;
4205
+ background:var(--t-surface-color-card);
4206
+ background-clip:padding-box;
4207
+ border:1px solid var(--t-border-color);
4208
+ border-radius:var(--t-border-radius);
4209
+ box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
4185
4210
  }
4186
4211
 
4187
- .tds-time-field{
4188
- --tds-time-field-border-color:var(--t-form-border-color);
4189
- --tds-time-field-border-color-hover:var(--t-form-border-color-hover);
4190
- --tds-time-field-border-color-active:var(--t-form-border-color-focus);
4191
- --tds-time-field-background-color:var(--t-form-background-color);
4192
- --tds-time-field-color:var(--t-form-color);
4193
- --tds-time-field-placeholder-color:var(--t-form-placeholder-color);
4194
- --tds-time-field-font-size:var(--t-font-size-md);
4195
- --tds-time-field-min-height:var(--t-container-size-md);
4196
- --tds-time-field-padding-block:6px;
4197
- --tds-time-field-description-color:var(--t-text-color-secondary);
4198
- --tds-time-field-description-invalid-icon-display:none;
4199
-
4200
- position:relative;
4201
- display:flex;
4202
- flex-direction:column;
4203
- gap:var(--t-spacing-half);
4204
- }
4212
+ .tds-combo-box-popover[data-entering]{
4213
+ animation:tds-combo-box-popover-enter 160ms ease;
4214
+ }
4205
4215
 
4206
- .tds-time-field[data-required] .tds-time-field-label::after{
4207
- margin-left:.25ch;
4208
- color:var(--t-text-color-status-error);
4209
- content:"*";
4216
+ .tds-combo-box-popover[data-exiting]{
4217
+ animation:tds-combo-box-popover-exit 130ms ease;
4210
4218
  }
4211
4219
 
4212
- .tds-time-field[data-invalid]{
4213
- --tds-time-field-border-color:var(--t-form-border-color-error);
4214
- --tds-time-field-border-color-hover:var(--t-form-border-color-error-hover);
4215
- --tds-time-field-border-color-active:var(--t-form-border-color-error-hover);
4216
- --tds-time-field-background-color:var(--t-form-background-color-error);
4217
- --tds-time-field-description-color:var(--t-text-color-status-error);
4218
- --tds-time-field-description-invalid-icon-display:inline-block;
4220
+ @keyframes tds-combo-box-popover-enter{
4221
+ from{
4222
+ opacity:0;
4223
+ transform:translateY(-8px);
4219
4224
  }
4225
+ }
4220
4226
 
4221
- .tds-time-field[data-disabled]{
4222
- --tds-time-field-border-color:var(--t-form-border-color-disabled);
4223
- --tds-time-field-background-color:var(--t-form-background-color-disabled);
4224
- --tds-time-field-color:var(--t-form-color-disabled);
4225
- --tds-time-field-placeholder-color:var(--t-form-color-disabled);
4227
+ @keyframes tds-combo-box-popover-exit{
4228
+ to{
4229
+ opacity:0;
4230
+ transform:translateY(-8px);
4226
4231
  }
4232
+ }
4227
4233
 
4228
- .tds-time-field[data-disabled] .tds-time-field-label{
4229
- color:var(--t-form-color-disabled);
4234
+ @media (prefers-reduced-motion: reduce){
4235
+ .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
4236
+ animation:none;
4230
4237
  }
4231
4238
 
4232
- .tds-time-field[data-disabled] .tds-time-field-input{
4233
- cursor:not-allowed;
4234
- }
4239
+ .tds-combo-box-button > svg{
4240
+ transition:none;
4241
+ }
4242
+ }
4235
4243
 
4236
- .tds-time-field--lg{
4237
- --tds-time-field-min-height:var(--t-container-size-lg);
4238
- --tds-time-field-font-size:var(--t-font-size-lg);
4244
+ .tds-combo-box-list{
4245
+ padding:0;
4246
+ margin:0;
4239
4247
  }
4240
4248
 
4241
- .tds-time-field-label{
4242
- font-size:var(--t-font-size-md);
4243
- font-weight:var(--t-font-weight-normal);
4249
+ .tds-combo-box-list-item{
4250
+ display:block;
4251
+ padding-block:var(--t-spacing-1);
4252
+ padding-inline:var(--t-spacing-2) var(--t-spacing-1);
4253
+ overflow:hidden;
4254
+ text-overflow:ellipsis;
4255
+ font-size:1rem;
4244
4256
  color:var(--t-text-color);
4257
+ white-space:nowrap;
4245
4258
  cursor:default;
4259
+ outline-offset:-1px;
4260
+ border-radius:var(--t-border-radius);
4246
4261
  }
4247
4262
 
4248
- .tds-time-field-input{
4249
- display:flex;
4250
- align-items:center;
4251
- inline-size:100%;
4252
- min-block-size:var(--tds-time-field-min-height);
4253
- padding-block:var(--tds-time-field-padding-block);
4254
- padding-inline:var(--t-spacing-1);
4255
- font-family:inherit;
4256
- font-size:var(--tds-time-field-font-size);
4257
- font-variant-numeric:tabular-nums;
4258
- line-height:1;
4259
- color:var(--tds-time-field-color);
4260
- cursor:text;
4261
- outline:var(--t-focus-ring-width) solid transparent;
4262
- outline-offset:0;
4263
- background-color:var(--tds-time-field-background-color);
4264
- border:var(--t-form-border-width) solid var(--tds-time-field-border-color);
4265
- border-radius:var(--t-form-border-radius);
4266
- }
4263
+ .tds-combo-box-list-item[data-hovered]:not([data-disabled]){
4264
+ background:var(--t-fill-color-neutral-070);
4265
+ }
4267
4266
 
4268
- .tds-time-field-input[data-hovered]:not([data-focus-visible],[data-focused],[data-disabled]){
4269
- border-color:var(--tds-time-field-border-color-hover);
4267
+ .tds-combo-box-list-item[data-selected]{
4268
+ background:var(--t-fill-color-button-interaction-ghost-active);
4270
4269
  }
4271
4270
 
4272
- .tds-time-field-input[data-focus-within]{
4273
- outline-color:var(--t-focus-ring-color);
4274
- outline-offset:var(--t-focus-ring-offset);
4275
- border-color:var(--tds-time-field-border-color-active);
4271
+ .tds-combo-box-list-item[data-focus-visible]{
4272
+ outline:var(--t-focus-ring-outline);
4273
+ outline-offset:-1px;
4276
4274
  }
4277
4275
 
4278
- .tds-time-field-input[data-readonly]{
4279
- color:var(--t-form-color-readonly);
4280
- background-color:var(--t-form-background-color-readonly);
4281
- border-color:var(--t-form-border-color-readonly);
4276
+ .tds-combo-box-list-item[data-disabled]{
4277
+ color:var(--t-form-color-disabled);
4278
+ cursor:not-allowed;
4282
4279
  }
4283
4280
 
4284
- .tds-time-field-input[data-readonly][data-hovered]{
4285
- border-color:var(--t-form-border-color-readonly);
4281
+ .tds-combo-box-list-item[data-disabled][data-hovered]{
4282
+ background:transparent;
4286
4283
  }
4287
4284
 
4288
- .tds-time-field-input[data-readonly][data-focus-within]{
4289
- outline-color:var(--t-focus-ring-color);
4290
- outline-offset:var(--t-focus-ring-offset);
4291
- border-color:var(--t-form-border-color-hover);
4292
- }
4285
+ .tds-combo-box-empty-state{
4286
+ position:relative;
4287
+ min-block-size:var(--t-spacing-3);
4288
+ padding-block:var(--t-spacing-1);
4289
+ padding-inline:var(--t-spacing-2);
4290
+ font-size:var(--t-font-size-md);
4291
+ color:var(--t-text-color-secondary);
4292
+ }
4293
4293
 
4294
- .tds-time-field-segment{
4295
- padding-inline:1px;
4296
- font-variant-numeric:tabular-nums;
4297
- cursor:text;
4298
- caret-color:transparent;
4299
- border-radius:var(--t-border-radius-sm);
4294
+ .tds-combo-box-load-more{
4295
+ position:relative;
4296
+ min-block-size:calc(var(--t-spacing-3) + var(--t-spacing-1));
4300
4297
  }
4301
4298
 
4302
- .tds-time-field-segment[data-placeholder]{
4303
- color:var(--tds-time-field-placeholder-color);
4304
- }
4299
+ .tds-combo-box-empty-state,
4300
+ .tds-combo-box-load-more{
4301
+ --tds-loading-spinner-visibility:visible;
4302
+ --tds-loading-spinner-animation-play-state:running;
4303
+ }
4305
4304
 
4306
- .tds-time-field-segment[data-focused]{
4307
- color:var(--t-text-color-inverted);
4308
- outline:0;
4309
- background:var(--t-fill-color-interaction);
4305
+ .tds-combo-box-list-section:not(:first-child){
4306
+ margin-block-start:var(--t-spacing-half);
4310
4307
  }
4311
4308
 
4312
- .tds-time-field-segment-separator{
4313
- padding-inline:0;
4314
- color:var(--tds-time-field-placeholder-color);
4309
+ .tds-combo-box-section-header{
4310
+ padding-block:var(--t-spacing-1);
4311
+ padding-inline:var(--t-spacing-1);
4312
+ font-size:var(--t-font-size-sm);
4313
+ font-weight:var(--t-font-weight-semibold);
4314
+ color:var(--t-text-color-secondary);
4315
4315
  }
4316
4316
 
4317
- .tds-time-field-description{
4317
+ .tds-combo-box-description{
4318
4318
  display:flex;
4319
4319
  gap:var(--t-spacing-half);
4320
4320
  align-items:flex-start;
4321
4321
  margin:0;
4322
4322
  font-size:var(--t-font-size-sm);
4323
4323
  line-height:1.35;
4324
- color:var(--tds-time-field-description-color, var(--t-text-color-secondary));
4324
+ color:var(--tds-combo-box-description-color, var(--t-text-color-secondary));
4325
4325
  cursor:text;
4326
4326
  }
4327
4327
 
4328
- .tds-time-field-description .tds-time-field-description-invalid-icon{
4329
- display:var(--tds-time-field-description-invalid-icon-display, none);
4328
+ .tds-combo-box-description .tds-combo-box-description-invalid-icon{
4329
+ display:var(--tds-combo-box-description-invalid-icon-display, none);
4330
4330
  flex-shrink:0;
4331
4331
  margin-block-start:calc(.5lh - .5em);
4332
4332
  line-height:1.35;
4333
4333
  }
4334
4334
 
4335
+
4335
4336
  .tds-number-stepper{
4336
4337
  --tds-number-stepper-border-color:var(--t-form-border-color);
4337
4338
  --tds-number-stepper-border-color-hover:var(--t-form-border-color-hover);
@@ -4480,12 +4481,13 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
4480
4481
  cursor:text;
4481
4482
  }
4482
4483
 
4483
- .tds-number-stepper-description-invalid-icon{
4484
- display:var(--tds-number-stepper-description-invalid-icon-display, none);
4485
- flex-shrink:0;
4486
- margin-block-start:calc(.5lh - .5em);
4487
- line-height:1.35;
4488
- }
4484
+ .tds-number-stepper-description .tds-number-stepper-description-invalid-icon{
4485
+ display:var(--tds-number-stepper-description-invalid-icon-display, none);
4486
+ flex-shrink:0;
4487
+ margin-block-start:calc(.5lh - .5em);
4488
+ line-height:1.35;
4489
+ }
4490
+
4489
4491
 
4490
4492
  .t-banner{
4491
4493
  --t-banner-font-size:var(--t-font-size-md);