@planningcenter/tapestry 3.1.0-rc.8 → 3.1.0

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.
Files changed (58) hide show
  1. package/dist/components/checkbox/Checkbox.d.ts +1 -0
  2. package/dist/components/checkbox/Checkbox.d.ts.map +1 -1
  3. package/dist/components/checkbox/Checkbox.js +5 -14
  4. package/dist/components/checkbox/Checkbox.js.map +1 -1
  5. package/dist/components/checkbox/tds-indeterminate.d.ts +11 -0
  6. package/dist/components/checkbox/tds-indeterminate.d.ts.map +1 -0
  7. package/dist/components/checkbox/tds-indeterminate.js +30 -0
  8. package/dist/components/checkbox/tds-indeterminate.js.map +1 -0
  9. package/dist/components/input/Input.d.ts +9 -9
  10. package/dist/components/input/Input.d.ts.map +1 -1
  11. package/dist/components/input/Input.js.map +1 -1
  12. package/dist/components/input-text-base/InputTextBase.d.ts.map +1 -1
  13. package/dist/components/input-text-base/InputTextBase.js +6 -3
  14. package/dist/components/input-text-base/InputTextBase.js.map +1 -1
  15. package/dist/components/radio-group/RadioGroup.js +6 -6
  16. package/dist/components/radio-group/RadioGroup.js.map +1 -1
  17. package/dist/components/select/Select.d.ts +16 -11
  18. package/dist/components/select/Select.d.ts.map +1 -1
  19. package/dist/components/select/Select.js +13 -6
  20. package/dist/components/select/Select.js.map +1 -1
  21. package/dist/components/select/SelectOptions.d.ts.map +1 -1
  22. package/dist/components/select/SelectOptions.js +2 -1
  23. package/dist/components/select/SelectOptions.js.map +1 -1
  24. package/dist/components/select/SelectPopover.d.ts +1 -0
  25. package/dist/components/select/SelectPopover.d.ts.map +1 -1
  26. package/dist/components/select/SelectPopover.js +9 -7
  27. package/dist/components/select/SelectPopover.js.map +1 -1
  28. package/dist/components/text-area/TextArea.d.ts +10 -9
  29. package/dist/components/text-area/TextArea.d.ts.map +1 -1
  30. package/dist/components/text-area/TextArea.js.map +1 -1
  31. package/dist/index.css +770 -64
  32. package/dist/index.css.map +1 -1
  33. package/dist/index.d.ts +4 -0
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +4 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/reactRender.css +2388 -2451
  38. package/dist/reactRender.css.map +1 -1
  39. package/dist/reactRenderLegacy.css +2388 -2451
  40. package/dist/reactRenderLegacy.css.map +1 -1
  41. package/dist/tokens/tokens-deprecated.json +20 -0
  42. package/dist/tokens-dark.css +14 -18
  43. package/dist/tokens-dark.css.map +1 -1
  44. package/dist/tokens-deprecated.css +14 -0
  45. package/dist/tokens-deprecated.css.map +1 -1
  46. package/dist/tokens.css +21 -23
  47. package/dist/tokens.css.map +1 -1
  48. package/dist/unstable.css +622 -685
  49. package/dist/unstable.css.map +1 -1
  50. package/dist/unstable.d.ts +0 -3
  51. package/dist/unstable.d.ts.map +1 -1
  52. package/dist/unstable.js +4 -3
  53. package/dist/unstable.js.map +1 -1
  54. package/dist/utilities/selectUtils.d.ts +1 -0
  55. package/dist/utilities/selectUtils.d.ts.map +1 -1
  56. package/dist/utilities/selectUtils.js +10 -1
  57. package/dist/utilities/selectUtils.js.map +1 -1
  58. package/package.json +3 -3
package/dist/index.css CHANGED
@@ -116,11 +116,8 @@
116
116
  --t-fill-color-interaction-hover:hsl(204, 100%, 35%);
117
117
  --t-fill-color-interaction-active:hsl(204, 100%, 30%);
118
118
  --t-fill-color-interaction-disabled:hsl(0, 0%, 81%);
119
- --t-fill-color-control-neutral-off:hsl(0, 0%, 58%);
120
- --t-fill-color-control-neutral-on:hsl(0, 0%, 24%);
121
- --t-fill-color-control:hsl(204, 100%, 40%);
122
- --t-fill-color-control-error:hsl(8, 60%, 47%);
123
- --t-fill-color-control-secondary:hsl(97, 57%, 40%);
119
+ --t-fill-color-control-neutral:hsl(0, 0%, 58%);
120
+ --t-fill-color-control:var(--t-fill-color-interaction);
124
121
  --t-fill-color-control-disabled:hsl(0, 0%, 81%);
125
122
  --t-fill-color-status-neutral:hsl(0, 0%, 42%);
126
123
  --t-fill-color-status-neutral-ghost:hsl(0, 0%, 93%);
@@ -428,6 +425,15 @@
428
425
  --t-form-color-readonly:var(--t-text-color);
429
426
  --t-form-picker-icon-color:var(--t-icon-color);
430
427
  --t-form-placeholder-color:var(--t-text-color-placeholder);
428
+ --t-form-toggle-color:var(--t-fill-color-control-neutral);
429
+ --t-form-toggle-color-disabled:var(--t-fill-color-control-disabled);
430
+ --t-form-toggle-color-hover:var(--t-fill-color-neutral-025);
431
+ --t-form-toggle-color-on:var(--t-fill-color-interaction);
432
+ --t-form-toggle-color-on-hover:var(--t-fill-color-interaction-hover);
433
+ --t-fill-color-control-neutral-off:var(--t-fill-color-control-neutral);
434
+ --t-fill-color-control-neutral-on:hsl(0, 0%, 24%);
435
+ --t-fill-color-control-error:var(--t-fill-color-status-error);
436
+ --t-fill-color-control-secondary:var(--t-icon-color-status-success-secondary);
431
437
  --t-form-font-color:var(--t-form-color);
432
438
  --t-form-font-color-disabled:var(--t-form-color-disabled);
433
439
  --t-form-font-color-error:var(--t-text-color-status-error);
@@ -497,9 +503,7 @@
497
503
  --t-fill-color-interaction-hover:hsl(204, 100%, 40%);
498
504
  --t-fill-color-interaction-active:hsl(204, 80%, 45%);
499
505
  --t-fill-color-interaction-disabled:hsl(0, 0%, 25%);
500
- --t-fill-color-control-neutral-off:hsl(0, 0%, 32%);
501
- --t-fill-color-control-neutral-on:hsl(0, 0%, 50%);
502
- --t-fill-color-control:hsl(204, 100%, 35%);
506
+ --t-fill-color-control-neutral:hsl(0, 0%, 32%);
503
507
  --t-fill-color-control-disabled:hsl(0, 0%, 20%);
504
508
  --t-fill-color-status-neutral:hsl(0, 0%, 24%);
505
509
  --t-fill-color-status-neutral-ghost:hsl(0, 0%, 18%);
@@ -582,11 +586,11 @@
582
586
  --t-fill-color-button-neutral-solid:hsl(0, 0%, 19%);
583
587
  --t-fill-color-button-neutral-solid-hover:hsl(0, 0%, 24%);
584
588
  --t-fill-color-button-neutral-solid-active:hsl(0, 0%, 32%);
585
- --t-fill-color-button-neutral-solid-disabled:hsl(0, 0%, 12%);
589
+ --t-fill-color-button-neutral-solid-disabled:hsl(0, 0%, 15%);
586
590
  --t-fill-color-button-neutral-outline:hsl(0, 0%, 15%);
587
591
  --t-fill-color-button-neutral-outline-hover:hsl(0, 0%, 17%);
588
592
  --t-fill-color-button-neutral-outline-active:hsl(0, 0%, 19%);
589
- --t-fill-color-button-neutral-outline-disabled:hsl(0, 0%, 12%);
593
+ --t-fill-color-button-neutral-outline-disabled:hsl(0, 0%, 15%);
590
594
  --t-fill-color-button-neutral-ghost:hsla(0, 0%, 0%, 0);
591
595
  --t-fill-color-button-neutral-ghost-hover:hsl(0, 0%, 17%);
592
596
  --t-fill-color-button-neutral-ghost-active:hsl(0, 0%, 19%);
@@ -595,22 +599,22 @@
595
599
  --t-fill-color-button-interaction-solid:hsl(204, 100%, 35%);
596
600
  --t-fill-color-button-interaction-solid-hover:hsl(204, 100%, 40%);
597
601
  --t-fill-color-button-interaction-solid-active:hsl(204, 80%, 45%);
598
- --t-fill-color-button-interaction-solid-disabled:hsl(0, 0%, 12%);
602
+ --t-fill-color-button-interaction-solid-disabled:hsl(0, 0%, 15%);
599
603
  --t-fill-color-button-interaction-outline:hsl(204, 32%, 15%);
600
604
  --t-fill-color-button-interaction-outline-hover:hsl(204, 39%, 17%);
601
605
  --t-fill-color-button-interaction-outline-active:hsl(205, 45%, 18%);
602
- --t-fill-color-button-interaction-outline-disabled:hsl(0, 0%, 12%);
606
+ --t-fill-color-button-interaction-outline-disabled:hsl(0, 0%, 15%);
603
607
  --t-fill-color-button-interaction-ghost:hsla(0, 0%, 0%, 0);
604
608
  --t-fill-color-button-interaction-ghost-hover:hsl(204, 32%, 15%);
605
609
  --t-fill-color-button-interaction-ghost-active:hsl(204, 39%, 17%);
606
610
  --t-fill-color-button-interaction-ghost-disabled:hsla(0, 0%, 0%, 0);
607
611
  --t-fill-color-button-delete-solid:hsl(8, 60%, 40%);
608
612
  --t-fill-color-button-delete-solid-active:hsl(8, 60%, 47%);
609
- --t-fill-color-button-delete-solid-disabled:hsl(0, 0%, 12%);
613
+ --t-fill-color-button-delete-solid-disabled:hsl(0, 0%, 15%);
610
614
  --t-fill-color-button-delete-outline:hsl(8, 20%, 16%);
611
615
  --t-fill-color-button-delete-outline-hover:hsl(9, 24%, 17%);
612
616
  --t-fill-color-button-delete-outline-active:hsl(9, 29%, 19%);
613
- --t-fill-color-button-delete-outline-disabled:hsl(0, 0%, 12%);
617
+ --t-fill-color-button-delete-outline-disabled:hsl(0, 0%, 15%);
614
618
  --t-fill-color-button-delete-ghost:hsla(0, 0%, 0%, 0);
615
619
  --t-fill-color-button-delete-ghost-hover:hsl(8, 20%, 16%);
616
620
  --t-fill-color-button-delete-ghost-active:hsl(9, 24%, 17%);
@@ -656,6 +660,7 @@
656
660
  --t-border-color-control-info:hsl(204, 100%, 35%);
657
661
  --t-border-color-control-disabled:hsl(0, 0%, 24%);
658
662
  --t-shadow-overflow-color:hsla(0, 0%, 0%, 0.6);
663
+ --t-fill-color-control-neutral-on:hsl(0, 0%, 50%);
659
664
  }
660
665
 
661
666
  @media (prefers-color-scheme: dark){
@@ -722,9 +727,7 @@
722
727
  --t-fill-color-interaction-hover:hsl(204, 100%, 40%);
723
728
  --t-fill-color-interaction-active:hsl(204, 80%, 45%);
724
729
  --t-fill-color-interaction-disabled:hsl(0, 0%, 25%);
725
- --t-fill-color-control-neutral-off:hsl(0, 0%, 32%);
726
- --t-fill-color-control-neutral-on:hsl(0, 0%, 50%);
727
- --t-fill-color-control:hsl(204, 100%, 35%);
730
+ --t-fill-color-control-neutral:hsl(0, 0%, 32%);
728
731
  --t-fill-color-control-disabled:hsl(0, 0%, 20%);
729
732
  --t-fill-color-status-neutral:hsl(0, 0%, 24%);
730
733
  --t-fill-color-status-neutral-ghost:hsl(0, 0%, 18%);
@@ -807,11 +810,11 @@
807
810
  --t-fill-color-button-neutral-solid:hsl(0, 0%, 19%);
808
811
  --t-fill-color-button-neutral-solid-hover:hsl(0, 0%, 24%);
809
812
  --t-fill-color-button-neutral-solid-active:hsl(0, 0%, 32%);
810
- --t-fill-color-button-neutral-solid-disabled:hsl(0, 0%, 12%);
813
+ --t-fill-color-button-neutral-solid-disabled:hsl(0, 0%, 15%);
811
814
  --t-fill-color-button-neutral-outline:hsl(0, 0%, 15%);
812
815
  --t-fill-color-button-neutral-outline-hover:hsl(0, 0%, 17%);
813
816
  --t-fill-color-button-neutral-outline-active:hsl(0, 0%, 19%);
814
- --t-fill-color-button-neutral-outline-disabled:hsl(0, 0%, 12%);
817
+ --t-fill-color-button-neutral-outline-disabled:hsl(0, 0%, 15%);
815
818
  --t-fill-color-button-neutral-ghost:hsla(0, 0%, 0%, 0);
816
819
  --t-fill-color-button-neutral-ghost-hover:hsl(0, 0%, 17%);
817
820
  --t-fill-color-button-neutral-ghost-active:hsl(0, 0%, 19%);
@@ -820,22 +823,22 @@
820
823
  --t-fill-color-button-interaction-solid:hsl(204, 100%, 35%);
821
824
  --t-fill-color-button-interaction-solid-hover:hsl(204, 100%, 40%);
822
825
  --t-fill-color-button-interaction-solid-active:hsl(204, 80%, 45%);
823
- --t-fill-color-button-interaction-solid-disabled:hsl(0, 0%, 12%);
826
+ --t-fill-color-button-interaction-solid-disabled:hsl(0, 0%, 15%);
824
827
  --t-fill-color-button-interaction-outline:hsl(204, 32%, 15%);
825
828
  --t-fill-color-button-interaction-outline-hover:hsl(204, 39%, 17%);
826
829
  --t-fill-color-button-interaction-outline-active:hsl(205, 45%, 18%);
827
- --t-fill-color-button-interaction-outline-disabled:hsl(0, 0%, 12%);
830
+ --t-fill-color-button-interaction-outline-disabled:hsl(0, 0%, 15%);
828
831
  --t-fill-color-button-interaction-ghost:hsla(0, 0%, 0%, 0);
829
832
  --t-fill-color-button-interaction-ghost-hover:hsl(204, 32%, 15%);
830
833
  --t-fill-color-button-interaction-ghost-active:hsl(204, 39%, 17%);
831
834
  --t-fill-color-button-interaction-ghost-disabled:hsla(0, 0%, 0%, 0);
832
835
  --t-fill-color-button-delete-solid:hsl(8, 60%, 40%);
833
836
  --t-fill-color-button-delete-solid-active:hsl(8, 60%, 47%);
834
- --t-fill-color-button-delete-solid-disabled:hsl(0, 0%, 12%);
837
+ --t-fill-color-button-delete-solid-disabled:hsl(0, 0%, 15%);
835
838
  --t-fill-color-button-delete-outline:hsl(8, 20%, 16%);
836
839
  --t-fill-color-button-delete-outline-hover:hsl(9, 24%, 17%);
837
840
  --t-fill-color-button-delete-outline-active:hsl(9, 29%, 19%);
838
- --t-fill-color-button-delete-outline-disabled:hsl(0, 0%, 12%);
841
+ --t-fill-color-button-delete-outline-disabled:hsl(0, 0%, 15%);
839
842
  --t-fill-color-button-delete-ghost:hsla(0, 0%, 0%, 0);
840
843
  --t-fill-color-button-delete-ghost-hover:hsl(8, 20%, 16%);
841
844
  --t-fill-color-button-delete-ghost-active:hsl(9, 24%, 17%);
@@ -881,7 +884,11 @@
881
884
  --t-border-color-control-info:hsl(204, 100%, 35%);
882
885
  --t-border-color-control-disabled:hsl(0, 0%, 24%);
883
886
  --t-shadow-overflow-color:hsla(0, 0%, 0%, 0.6);
887
+ --t-fill-color-control-neutral-on:hsl(0, 0%, 50%);
888
+ }
884
889
  }
890
+
891
+ @media (prefers-color-scheme: dark){
885
892
  }
886
893
 
887
894
  @layer t-critical{
@@ -1997,7 +2004,7 @@ a[class="tds-btn"]{
1997
2004
 
1998
2005
  --tds-checkbox-input-size:var(--t-element-size-md);
1999
2006
  --tds-checkbox-input-border-radius:var(--t-border-radius-sm);
2000
- --tds-checkbox-input-border-color:var(--t-border-color-control-neutral);
2007
+ --tds-checkbox-input-border-color:var(--t-form-border-color);
2001
2008
  --tds-checkbox-input-background-color:transparent;
2002
2009
 
2003
2010
  --tds-checkbox-input-icon:none;
@@ -2005,7 +2012,7 @@ a[class="tds-btn"]{
2005
2012
  --tds-checkbox-input-icon-opacity:0;
2006
2013
  --tds-checkbox-input-icon-fill:var(--t-icon-color-inverted);
2007
2014
 
2008
- --tds-checkbox-label-color:var(--t-text-color);
2015
+ --tds-checkbox-label-color:var(--t-form-color);
2009
2016
 
2010
2017
  --tds-checkbox-description-font-size:var(--t-font-size-sm);
2011
2018
  --tds-checkbox-description-line-height:1.35;
@@ -2032,6 +2039,10 @@ a[class="tds-btn"]{
2032
2039
  cursor:var(--tds-checkbox-cursor);
2033
2040
  }
2034
2041
 
2042
+ .tds-checkbox tds-indeterminate{
2043
+ display:flex;
2044
+ }
2045
+
2035
2046
  .tds-checkbox input[type="checkbox"]{
2036
2047
  position:relative;
2037
2048
  width:1em;
@@ -2044,7 +2055,7 @@ a[class="tds-btn"]{
2044
2055
  appearance:none;
2045
2056
  cursor:var(--tds-checkbox-cursor);
2046
2057
  background-color:var(--tds-checkbox-input-background-color);
2047
- border:var(--t-border-width) solid var(--tds-checkbox-input-border-color);
2058
+ border:var(--t-form-border-width) solid var(--tds-checkbox-input-border-color);
2048
2059
  border-radius:var(--tds-checkbox-input-border-radius);
2049
2060
  transition-timing-function:ease-in-out;
2050
2061
  transition-duration:180ms;
@@ -2113,19 +2124,19 @@ a[class="tds-btn"]{
2113
2124
  }
2114
2125
 
2115
2126
  .tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid{
2116
- --tds-checkbox-input-border-color:var(--t-border-color-control-error);
2127
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
2117
2128
  --tds-checkbox-description-color:var(--t-text-color-status-error);
2118
2129
  --tds-checkbox-description-invalid-icon-display:inline-block;
2119
2130
  }
2120
2131
 
2121
2132
  :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:hover:not(:disabled){
2122
- --tds-checkbox-input-border-color:var(--t-border-color-control-error);
2123
- --tds-checkbox-input-background-color:var(--t-fill-color-status-error-dim);
2133
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
2134
+ --tds-checkbox-input-background-color:var(--t-form-background-color-error);
2124
2135
  }
2125
2136
 
2126
2137
  :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{
2127
- --tds-checkbox-input-border-color:var(--t-fill-color-control-error);
2128
- --tds-checkbox-input-background-color:var(--t-fill-color-control-error);
2138
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
2139
+ --tds-checkbox-input-background-color:var(--t-form-border-color-error);
2129
2140
  }
2130
2141
 
2131
2142
  :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){
@@ -2140,11 +2151,11 @@ a[class="tds-btn"]{
2140
2151
  }
2141
2152
 
2142
2153
  .tds-checkbox:has(input:disabled){
2143
- --tds-checkbox-input-background-color:var(--t-fill-color-neutral-070);
2144
- --tds-checkbox-input-border-color:var(--t-border-color-control-disabled);
2154
+ --tds-checkbox-input-background-color:var(--t-form-background-color-disabled);
2155
+ --tds-checkbox-input-border-color:var(--t-form-border-color-disabled);
2145
2156
 
2146
- --tds-checkbox-label-color:var(--t-text-color-disabled);
2147
- --tds-checkbox-description-color:var(--t-text-color-disabled);
2157
+ --tds-checkbox-label-color:var(--t-form-color-disabled);
2158
+ --tds-checkbox-description-color:var(--t-form-color-disabled);
2148
2159
  --tds-checkbox-cursor:not-allowed;
2149
2160
  }
2150
2161
 
@@ -2155,7 +2166,7 @@ a[class="tds-btn"]{
2155
2166
  .tds-checkbox-description{
2156
2167
  display:flex;
2157
2168
  grid-area:2 / 2;
2158
- gap:4px;
2169
+ gap:var(--t-spacing-half);
2159
2170
  align-items:flex-start;
2160
2171
  margin:0;
2161
2172
  font-size:var(--tds-checkbox-description-font-size);
@@ -2179,6 +2190,165 @@ a[class="tds-btn"]{
2179
2190
  --tds-checkbox-description-line-height:1.3;
2180
2191
  }
2181
2192
 
2193
+
2194
+ :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{
2195
+ -webkit-appearance:none;
2196
+ appearance:none;
2197
+ }
2198
+
2199
+ [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
2200
+ inline-size:1em;
2201
+ block-size:2em;
2202
+ }
2203
+
2204
+ @supports (field-sizing: content){
2205
+ .tds-input--auto-width{
2206
+ inline-size:-moz-fit-content;
2207
+ inline-size:fit-content;
2208
+ }
2209
+
2210
+ .tds-input--auto-width input{
2211
+ field-sizing:content;
2212
+ inline-size:auto;
2213
+ }
2214
+ }
2215
+
2216
+ .tds-input{
2217
+ --tds-input-border-color:var(--t-form-border-color);
2218
+ --tds-input-border-color-hover:var(--t-form-border-color-hover);
2219
+ --tds-input-background-color:var(--t-form-background-color);
2220
+ --tds-input-color:var(--t-form-color);
2221
+ --tds-input-font-size:var(--t-font-size-md);
2222
+ --tds-input-description-color:var(--t-text-color-secondary);
2223
+ --tds-input-description-invalid-icon-display:none;
2224
+ --tds-input-min-height:var(--t-container-size-md);
2225
+ --tds-input-padding-inline:var(--t-spacing-1);
2226
+
2227
+ --tds-input-transition-property:background-color, border-color, outline-color, outline-offset;
2228
+
2229
+ display:flex;
2230
+ flex-direction:column;
2231
+ gap:var(--t-spacing-half);
2232
+ }
2233
+
2234
+ .tds-input label{
2235
+ font-size:var(--t-font-size-md);
2236
+ font-weight:var(--t-font-weight-normal);
2237
+ color:var(--t-text-color);
2238
+ }
2239
+
2240
+ .tds-input :is(input,textarea){
2241
+ inline-size:100%;
2242
+ min-block-size:var(--tds-input-min-height);
2243
+ block-size:auto;
2244
+ padding-block:var(--tds-input-padding-block);
2245
+ padding-inline:var(--tds-input-padding-inline);
2246
+ font-family:inherit;
2247
+ font-size:var(--tds-input-font-size);
2248
+ color:var(--tds-input-color);
2249
+ -webkit-appearance:none;
2250
+ -moz-appearance:none;
2251
+ appearance:none;
2252
+ outline:var(--t-focus-ring-width) solid transparent;
2253
+ outline-offset:0;
2254
+ background-color:var(--tds-input-background-color);
2255
+ border:var(--t-form-border-width) solid var(--tds-input-border-color);
2256
+ border-radius:var(--t-form-border-radius);
2257
+ transition-timing-function:ease-in-out;
2258
+ transition-duration:180ms;
2259
+ transition-property:var(--tds-input-transition-property);
2260
+ }
2261
+
2262
+ :is(.tds-input :is(input,textarea)):hover:not(:disabled,:focus-visible,[readonly]){
2263
+ border-color:var(--tds-input-border-color-hover);
2264
+ }
2265
+
2266
+ :is(.tds-input :is(input,textarea)):focus{
2267
+ outline-color:transparent;
2268
+ }
2269
+
2270
+ :is(.tds-input :is(input,textarea)):focus-visible{
2271
+ outline-color:var(--t-focus-ring-color);
2272
+ outline-offset:var(--t-focus-ring-offset);
2273
+ border-color:var(--t-form-border-color-focus);
2274
+ }
2275
+
2276
+ :is(.tds-input :is(input,textarea))::-moz-placeholder{
2277
+ color:var(--t-form-placeholder-color);
2278
+ -moz-user-select:none;
2279
+ user-select:none;
2280
+ }
2281
+
2282
+ :is(.tds-input :is(input,textarea))::placeholder{
2283
+ color:var(--t-form-placeholder-color);
2284
+ -webkit-user-select:none;
2285
+ -moz-user-select:none;
2286
+ user-select:none;
2287
+ }
2288
+
2289
+ @media (prefers-reduced-motion: reduce){
2290
+
2291
+ .tds-input :is(input,textarea){
2292
+ --tds-input-transition-property:none;
2293
+ }
2294
+ }
2295
+
2296
+ .tds-input.tds-input--invalid,.tds-input:has(:is(input,textarea):is(:user-invalid,[aria-invalid="true"])){
2297
+ --tds-input-background-color:var(--t-form-background-color-error);
2298
+ --tds-input-border-color:var(--t-form-border-color-error);
2299
+ --tds-input-border-color-hover:var(--t-form-border-color-error-hover);
2300
+ --tds-input-description-color:var(--t-text-color-status-error);
2301
+ --tds-input-description-invalid-icon-display:inline-block;
2302
+ }
2303
+
2304
+ .tds-input:has(:is(input,textarea):required) label::after{
2305
+ margin-left:.25ch;
2306
+ color:var(--t-text-color-status-error);
2307
+ content:"*";
2308
+ }
2309
+
2310
+ .tds-input:where(:has(:is(input,textarea):disabled)){
2311
+ --tds-input-border-color:var(--t-form-border-color-disabled);
2312
+ --tds-input-background-color:var(--t-form-background-color-disabled);
2313
+ --tds-input-color:var(--t-form-color-disabled);
2314
+ }
2315
+
2316
+ .tds-input:where(:has(:is(input,textarea):disabled)) :is(input,textarea){
2317
+ cursor:not-allowed;
2318
+ }
2319
+
2320
+ .tds-input:where(:has(:is(input,textarea)[readonly])){
2321
+ --tds-input-border-color:var(--t-form-border-color-readonly);
2322
+ --tds-input-background-color:var(--t-form-background-color-readonly);
2323
+ }
2324
+
2325
+ .tds-input:where(:has(:is(input,textarea)[readonly])) :is(input,textarea):focus{
2326
+ border-color:var(--tds-input-border-color-hover);
2327
+ }
2328
+
2329
+ .tds-input.tds-input--lg{
2330
+ --tds-input-min-height:var(--t-container-size-lg);
2331
+ --tds-input-font-size:var(--t-font-size-lg);
2332
+ }
2333
+
2334
+ .tds-input-description{
2335
+ display:flex;
2336
+ gap:var(--t-spacing-half);
2337
+ align-items:flex-start;
2338
+ margin:0;
2339
+ font-size:var(--t-font-size-sm);
2340
+ line-height:1.35;
2341
+ color:var(--tds-input-description-color, var(--t-text-color-secondary));
2342
+ cursor:text;
2343
+ }
2344
+
2345
+ .tds-input-description-invalid-icon{
2346
+ display:var(--tds-input-description-invalid-icon-display, none);
2347
+ flex-shrink:0;
2348
+ margin-block-start:calc(.5lh - .5em);
2349
+ line-height:1.35;
2350
+ }
2351
+
2182
2352
  .tds-radio{
2183
2353
  --tds-radio-font-size:var(--t-font-size-md);
2184
2354
  --tds-radio-cursor:pointer;
@@ -2187,11 +2357,11 @@ a[class="tds-btn"]{
2187
2357
 
2188
2358
  --tds-radio-input-size:var(--t-element-size-md);
2189
2359
  --tds-radio-input-border-radius:var(--t-border-radius-round);
2190
- --tds-radio-input-border-color:var(--t-border-color-control-neutral);
2191
- --tds-radio-input-border-width:var(--t-border-width);
2360
+ --tds-radio-input-border-color:var(--t-form-border-color);
2361
+ --tds-radio-input-border-width:var(--t-form-border-width);
2192
2362
  --tds-radio-input-background-color:transparent;
2193
2363
 
2194
- --tds-radio-label-color:var(--t-text-color);
2364
+ --tds-radio-label-color:var(--t-form-color);
2195
2365
 
2196
2366
  --tds-radio-description-font-size:var(--t-font-size-sm);
2197
2367
  --tds-radio-description-line-height:1.35;
@@ -2269,32 +2439,32 @@ a[class="tds-btn"]{
2269
2439
  }
2270
2440
 
2271
2441
  .tds-radio:has(input:user-invalid){
2272
- --tds-radio-input-border-color:var(--t-border-color-control-error);
2442
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
2273
2443
  }
2274
2444
 
2275
2445
  .tds-radio:has(input:user-invalid) input:hover:not(:disabled){
2276
- --tds-radio-input-border-color:var(--t-border-color-control-error);
2277
- --tds-radio-input-background-color:var(--t-fill-color-status-error-dim);
2446
+ --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
2447
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
2278
2448
  }
2279
2449
 
2280
2450
  .tds-radio:has(input:disabled){
2281
- --tds-radio-input-background-color:var(--t-fill-color-neutral-070);
2282
- --tds-radio-input-border-color:var(--t-border-color-control-disabled);
2451
+ --tds-radio-input-background-color:var(--t-form-background-color-disabled);
2452
+ --tds-radio-input-border-color:var(--t-form-border-color-disabled);
2283
2453
 
2284
- --tds-radio-label-color:var(--t-text-color-disabled);
2285
- --tds-radio-description-color:var(--t-text-color-disabled);
2454
+ --tds-radio-label-color:var(--t-form-color-disabled);
2455
+ --tds-radio-description-color:var(--t-form-color-disabled);
2286
2456
  --tds-radio-cursor:not-allowed;
2287
2457
  }
2288
2458
 
2289
2459
  .tds-radio:has(input:disabled) input:checked{
2290
2460
  --tds-radio-input-background-color:var(--t-form-background-color);
2291
- --tds-radio-input-border-color:var(--t-border-color-control-disabled);
2461
+ --tds-radio-input-border-color:var(--t-form-border-color-disabled);
2292
2462
  }
2293
2463
 
2294
2464
  .tds-radio-description{
2295
2465
  display:flex;
2296
2466
  grid-area:2 / 2;
2297
- gap:4px;
2467
+ gap:var(--t-spacing-half);
2298
2468
  align-items:flex-start;
2299
2469
  margin:0;
2300
2470
  font-size:var(--tds-radio-description-font-size);
@@ -2348,12 +2518,12 @@ a[class="tds-btn"]{
2348
2518
  }
2349
2519
 
2350
2520
  .tds-radio-group[aria-invalid="true"] .tds-radio{
2351
- --tds-radio-input-border-color:var(--t-border-color-control-error);
2521
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
2352
2522
  }
2353
2523
 
2354
2524
  :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
2355
2525
  --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
2356
- --tds-radio-input-background-color:var(--t-fill-color-status-error-dim);
2526
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
2357
2527
  }
2358
2528
 
2359
2529
  :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
@@ -2398,19 +2568,555 @@ a[class="tds-btn"]{
2398
2568
  --tds-radio-group-description-line-height:1.3;
2399
2569
  }
2400
2570
 
2571
+ .tds-select{
2572
+ --tds-select-border-color:var(--t-form-border-color);
2573
+ --tds-select-border-color-hover:var(--t-form-border-color-hover);
2574
+ --tds-select-border-color-active:var(--t-form-border-color-hover);
2575
+ --tds-select-background-color:var(--t-form-background-color);
2576
+ --tds-select-color:var(--t-form-color);
2577
+ --tds-select-placeholder-color:var(--t-form-placeholder-color);
2578
+ --tds-select-font-size:var(--t-font-size-md);
2579
+ --tds-select-min-height:var(--t-container-size-md);
2580
+ --tds-select-padding-block:6px;
2581
+ --tds-select-description-color:var(--t-text-color-secondary);
2582
+ --tds-select-description-invalid-icon-display:none;
2583
+ --tds-select-transition-property:background-color, border-color, outline-color, outline-offset;
2584
+ --tds-select-background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMzQzYTQwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0ibTIgNSA2IDYgNi02Ii8+PC9zdmc+");
2585
+ --tds-select-caret-size:.75em;
2586
+ --tds-select-caret-inline-offset:.75em;
2587
+ --tds-select-caret-transition:transform 180ms cubic-bezier(.45, 0, .4, 1);;
2588
+
2589
+ --tds-select-dropdown-background-color:var(--t-surface-color-card);
2590
+ --tds-select-dropdown-border:1px solid var(--t-border-color);
2591
+ --tds-select-dropdown-padding:var(--t-spacing-1);
2592
+ --tds-select-dropdown-margin-block:5px;
2593
+ --tds-select-dropdown-scrollbar-color:#0004 #0000;
2594
+ --tds-select-dropdown-scrollbar-width:thin;
2595
+ --tds-select-dropdown-border-radius:var(--t-border-radius);
2596
+ --tds-select-dropdown-box-shadow:hsl(0, 0%, 0%, .05) 0 10px 15px -3px, hsl(0, 0%, 0%, .05) 0 4px 6px -4px;
2597
+ --tds-select-dropdown-scroll-behavior:smooth;
2598
+ --tds-select-dropdown-transition-enter:opacity 160ms ease, transform 160ms cubic-bezier(0, 0, .4, 1), display 160ms allow-discrete, overlay 160ms allow-discrete;
2599
+ --tds-select-dropdown-transition-exit:opacity 130ms ease, transform 130ms cubic-bezier(.5, 0, 1, 1), display 130ms allow-discrete, overlay 130ms allow-discrete;
2600
+ --tds-select-dropdown-closed-opacity:0;
2601
+ --tds-select-dropdown-open-opacity:1;
2602
+ --tds-select-dropdown-closed-transform:translateY(-8px);
2603
+ --tds-select-dropdown-open-transform:translateY(0);
2604
+
2605
+ --tds-select-option-gap:var(--t-spacing-1);
2606
+ --tds-select-option-padding-block:var(--t-spacing-1);
2607
+ --tds-select-option-padding-inline:var(--t-spacing-2) var(--t-spacing-1);
2608
+ --tds-select-option-font-size:1rem;
2609
+ --tds-select-option-color:var(--t-text-color);
2610
+ --tds-select-option-background-hover:var(--t-fill-color-neutral-070);
2611
+ --tds-select-option-background-active:var(--t-fill-color-button-interaction-ghost-active);
2612
+ --tds-select-option-outline-offset:-1px;
2613
+ --tds-select-option-border-radius:var(--t-border-radius);
2614
+
2615
+ --tds-select-group-label-padding-block-start:var(--t-spacing-2);
2616
+ --tds-select-group-label-padding-block:var(--tds-select-group-label-padding-block-start) var(--t-spacing-1);
2617
+ --tds-select-group-label-padding-inline:var(--t-spacing-1);
2618
+ --tds-select-group-label-font-size:var(--t-font-size-sm);
2619
+ --tds-select-group-label-font-weight:var(--t-font-weight-semibold);
2620
+ --tds-select-group-label-letter-spacing:0;
2621
+ --tds-select-group-label-color:var(--t-text-color-secondary);
2622
+ --tds-select-group-label-color-stuck:var(--t-text-color-headline);
2623
+ --tds-select-group-label-background:var(--tds-select-dropdown-background-color);
2624
+ --tds-select-group-label-transition:color .3s ease;
2625
+
2626
+ position:relative;
2627
+ display:flex;
2628
+ flex-direction:column;
2629
+ gap:var(--t-spacing-half);
2630
+ }
2631
+
2632
+ .tds-select :is(label,.tds-select-label){
2633
+ font-size:var(--t-font-size-md);
2634
+ font-weight:var(--t-font-weight-normal);
2635
+ color:var(--t-text-color);
2636
+ cursor:default;
2637
+ }
2638
+
2639
+ .tds-select :is(select,button){
2640
+ position:relative;
2641
+ place-items:center;
2642
+ inline-size:100%;
2643
+ min-block-size:var(--tds-select-min-height);
2644
+ padding-block:var(--tds-select-padding-block);
2645
+ padding-inline:var(--t-spacing-1);
2646
+ padding-inline-end:calc(var(--t-spacing-1) + var(--tds-select-caret-size) + .5em);
2647
+ font-family:inherit;
2648
+ font-size:var(--tds-select-font-size);
2649
+ line-height:1;
2650
+ color:var(--tds-select-color);
2651
+ text-align:left;
2652
+ -webkit-appearance:none;
2653
+ -moz-appearance:none;
2654
+ appearance:none;
2655
+ cursor:var(--tds-select-cursor, default);
2656
+ outline:var(--t-focus-ring-width) solid transparent;
2657
+ outline-offset:0;
2658
+ background-color:var(--tds-select-background-color);
2659
+ background-image:var(--tds-select-background-image);
2660
+ background-repeat:no-repeat;
2661
+ background-position:right var(--tds-select-caret-inline-offset) top 50%;
2662
+ background-size:var(--tds-select-caret-size);
2663
+ border:var(--t-form-border-width) solid var(--tds-select-border-color);
2664
+ border-radius:var(--t-form-border-radius);
2665
+ transition-timing-function:ease-in-out;
2666
+ transition-duration:160ms;
2667
+ transition-property:var(--tds-select-transition-property);
2668
+ }
2669
+
2670
+ :is(.tds-select :is(select,button)):hover:not(:disabled,:focus,:focus-visible,:focus-within,:active,:open){
2671
+ border-color:var(--tds-select-border-color-hover);
2672
+ }
2673
+
2674
+ :is(.tds-select :is(select,button)):focus{
2675
+ outline-color:var(--t-focus-ring-color);
2676
+ outline-offset:var(--t-focus-ring-offset);
2677
+ border-color:var(--tds-select-border-color-active);
2678
+ }
2679
+
2680
+ :is(.tds-select :is(select,button)):required:invalid,:is(.tds-select :is(select,button)):has(option[hidden][disabled][value=""]:checked){
2681
+ color:var(--tds-select-placeholder-color);
2682
+ }
2683
+
2684
+ .tds-select:has(select:user-invalid,[aria-invalid="true"]),.tds-select.tds-select--invalid{
2685
+ --tds-select-border-color:var(--t-form-border-color-error);
2686
+ --tds-select-border-color-hover:var(--t-form-border-color-error-hover);
2687
+ --tds-select-border-color-active:var(--t-form-border-color-error-hover);
2688
+ --tds-select-background-color:var(--t-form-background-color-error);
2689
+ --tds-select-description-color:var(--t-text-color-status-error);
2690
+ --tds-select-description-invalid-icon-display:inline-block;
2691
+ }
2692
+
2693
+ .tds-select:has(select:required,[aria-required="true"]) :is(label,.tds-select-label)::after{
2694
+ margin-left:.25ch;
2695
+ color:var(--t-text-color-status-error);
2696
+ content:"*";
2697
+ }
2698
+
2699
+ .tds-select:has(:is(select,button[role="combobox"]):is(:disabled,[aria-disabled="true"])){
2700
+ --tds-select-border-color:var(--t-form-border-color-disabled);
2701
+ --tds-select-background-color:var(--t-form-background-color-disabled);
2702
+ --tds-select-color:var(--t-form-color-disabled);
2703
+ --tds-select-cursor:not-allowed;
2704
+ }
2705
+
2706
+ .tds-select:has( > [popover]:popover-open) > button{
2707
+ border-color:var(--tds-select-border-color-active);
2708
+ }
2709
+
2710
+ :is(.tds-select:has( > [popover]:popover-open) > button)::after{
2711
+ transform:translateY(-50%) rotate(.5turn);
2712
+ }
2713
+
2714
+ .tds-select :is(hr,li[role="separator"]){
2715
+ margin-block:var(--t-spacing-half);
2716
+ color:var(--tds-select-border-color);
2717
+ border:0;
2718
+ border-top:1px solid;
2719
+ }
2720
+
2721
+ .tds-select :is(li[role="option"],option:not([hidden])){
2722
+ display:block;
2723
+ padding-block:var(--tds-select-option-padding-block);
2724
+ padding-inline:var(--tds-select-option-padding-inline);
2725
+ overflow:hidden;
2726
+ text-overflow:ellipsis;
2727
+ font-size:var(--tds-select-option-font-size);
2728
+ color:var(--tds-select-option-color);
2729
+ white-space:nowrap;
2730
+ cursor:default;
2731
+ outline-offset:var(--tds-select-option-outline-offset);
2732
+ border-radius:var(--tds-select-option-border-radius);
2733
+ }
2734
+
2735
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):focus-visible{
2736
+ outline:var(--t-focus-ring-outline);
2737
+ outline-offset:var(--tds-select-option-outline-offset);
2738
+ }
2739
+
2740
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):is(:focus,:hover,.tds-select-option--active):not([disabled],[aria-disabled="true"]){
2741
+ background:var(--tds-select-option-background-hover);
2742
+ }
2743
+
2744
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-selected="true"],:checked){
2745
+ background:var(--tds-select-option-background-active);
2746
+ }
2747
+
2748
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-disabled="true"],:disabled){
2749
+ color:var(--t-form-color-disabled);
2750
+ cursor:not-allowed;
2751
+ }
2752
+
2753
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-disabled="true"],:disabled):is(:focus,:hover){
2754
+ background:transparent;
2755
+ }
2756
+
2757
+ .tds-select :is(li[role="presentation"],legend){
2758
+ position:sticky;
2759
+ inset-block-start:calc(var(--tds-select-dropdown-padding) * -1);
2760
+ z-index:1;
2761
+ float:inline-start;
2762
+ inline-size:100%;
2763
+ padding-block:var(--tds-select-group-label-padding-block);
2764
+ padding-inline:var(--tds-select-group-label-padding-inline);
2765
+ container-type:scroll-state;
2766
+ font-size:var(--tds-select-group-label-font-size);
2767
+ font-weight:var(--tds-select-group-label-font-weight);
2768
+ letter-spacing:var(--tds-select-group-label-letter-spacing);
2769
+ background:var(--tds-select-group-label-background);
2770
+ text-box:trim-both cap alphabetic;
2771
+ }
2772
+
2773
+ :is(.tds-select :is(li[role="presentation"],legend)) span{
2774
+ display:inline-flex;
2775
+ gap:var(--t-spacing-half);
2776
+ align-items:center;
2777
+ color:var(--tds-select-group-label-color);
2778
+ transition:var(--tds-select-group-label-transition);
2779
+ }
2780
+
2781
+ @container scroll-state(stuck){
2782
+
2783
+ :is(.tds-select :is(li[role="presentation"],legend)) span{
2784
+ color:var(--tds-select-group-label-color-stuck);
2785
+ }
2786
+
2787
+ @media (forced-colors: active){
2788
+
2789
+ :is(.tds-select :is(li[role="presentation"],legend)) span{
2790
+ color:var(--tds-select-group-label-color-stuck);
2791
+ }
2792
+ }
2793
+ }
2794
+
2795
+ .tds-select.tds-select--lg{
2796
+ --tds-select-min-height:var(--t-container-size-lg);
2797
+ --tds-select-font-size:var(--t-font-size-lg);
2798
+ }
2799
+
2800
+ @media (prefers-reduced-motion: reduce){
2801
+
2802
+ .tds-select{
2803
+ --tds-select-transition-property:none;
2804
+ --tds-select-dropdown-transition-enter:none;
2805
+ --tds-select-dropdown-transition-exit:none;
2806
+ --tds-select-dropdown-scroll-behavior:auto;
2807
+ --tds-select-dropdown-closed-transform:none;
2808
+ --tds-select-dropdown-open-transform:none;
2809
+ --tds-select-caret-transition:none;
2810
+ }
2811
+ }
2812
+
2813
+ .tds-select-description{
2814
+ display:flex;
2815
+ gap:var(--t-spacing-half);
2816
+ align-items:flex-start;
2817
+ margin:0;
2818
+ font-size:var(--t-font-size-sm);
2819
+ line-height:1.35;
2820
+ color:var(--tds-select-description-color, var(--t-text-color-secondary));
2821
+ cursor:text;
2822
+ }
2823
+
2824
+ .tds-select-description-invalid-icon{
2825
+ display:var(--tds-select-description-invalid-icon-display, none);
2826
+ flex-shrink:0;
2827
+ margin-block-start:calc(.5lh - .5em);
2828
+ line-height:1.35;
2829
+ }
2830
+
2831
+ .tds-select > .tds-select-hidden-select{
2832
+ position:absolute;
2833
+ inline-size:1px;
2834
+ block-size:1px;
2835
+ padding:0;
2836
+ margin:0;
2837
+ pointer-events:none;
2838
+ opacity:0;
2839
+ }
2840
+
2841
+ .tds-select:has( > button) > button{
2842
+ display:block;
2843
+ padding-inline-end:calc(var(--tds-select-caret-size) + var(--tds-select-caret-inline-offset) + .75ch);
2844
+ overflow:hidden;
2845
+ text-overflow:ellipsis;
2846
+ color:var(--tds-select-placeholder-color);
2847
+ white-space:nowrap;
2848
+ background-image:none;
2849
+ transition:background-color 160ms ease-in-out, border-color 160ms ease-in-out, outline-color 160ms ease-in-out, outline-offset 160ms ease-in-out, transform .1s ease;
2850
+ -webkit-tap-highlight-color:transparent;
2851
+ }
2852
+
2853
+ :is(.tds-select:has( > button) > button)::after{
2854
+ position:absolute;
2855
+ inset-block-start:50%;
2856
+ inset-inline-end:var(--tds-select-caret-inline-offset);
2857
+ width:var(--tds-select-caret-size);
2858
+ pointer-events:none;
2859
+ content:var(--tds-select-background-image);
2860
+ transform:translateY(-50%) rotate(0);
2861
+ transition:var(--tds-select-caret-transition);
2862
+ }
2863
+
2864
+ .tds-select:has( > button):has([role="option"][aria-selected="true"]) > button{
2865
+ color:var(--tds-select-color);
2866
+ }
2867
+
2868
+ .tds-select:has( > button) [popover]{
2869
+ inset:auto;
2870
+ inline-size:-moz-max-content;
2871
+ inline-size:max-content;
2872
+ min-inline-size:anchor-size(width);
2873
+ max-inline-size:100vi;
2874
+ max-block-size:min(50vh, 20rem);
2875
+ padding:var(--tds-select-dropdown-padding);
2876
+ margin-block:var(--tds-select-dropdown-margin-block);
2877
+ position-area:block-end span-inline-start;
2878
+ position-try-fallbacks:flip-block, flip-inline;
2879
+ overflow:auto;
2880
+ overflow-x:hidden;
2881
+ scroll-behavior:var(--tds-select-dropdown-scroll-behavior);
2882
+ -webkit-user-select:none;
2883
+ -moz-user-select:none;
2884
+ user-select:none;
2885
+ scroll-padding-top:calc(var(--tds-select-group-label-padding-block-start) + var(--tds-select-group-label-font-size) + var(--t-spacing-2));
2886
+ scrollbar-color:var(--tds-select-dropdown-scrollbar-color);
2887
+ scrollbar-width:var(--tds-select-dropdown-scrollbar-width);
2888
+ background:var(--tds-select-dropdown-background-color);
2889
+ border:var(--tds-select-dropdown-border);
2890
+ border-radius:var(--tds-select-dropdown-border-radius);
2891
+ box-shadow:var(--tds-select-dropdown-box-shadow);
2892
+ opacity:var(--tds-select-dropdown-open-opacity);
2893
+ transform:var(--tds-select-dropdown-open-transform);
2894
+ transition:var(--tds-select-dropdown-transition-enter);
2895
+ }
2896
+
2897
+ :is(.tds-select:has( > button) [popover]):not(:popover-open){
2898
+ opacity:var(--tds-select-dropdown-closed-opacity);
2899
+ transform:var(--tds-select-dropdown-closed-transform);
2900
+ transition:var(--tds-select-dropdown-transition-exit);
2901
+ }
2902
+
2903
+ :is(.tds-select:has( > button) [popover]) ul{
2904
+ padding:0;
2905
+ margin:0;
2906
+ list-style:none;
2907
+ }
2908
+
2909
+ @starting-style{
2910
+ :is(.tds-select:has( > button) [popover]):popover-open{
2911
+ opacity:var(--tds-select-dropdown-closed-opacity);
2912
+ transform:var(--tds-select-dropdown-closed-transform);
2913
+ }
2914
+ }
2915
+
2916
+ @supports ((-webkit-appearance: base-select) or (-moz-appearance: base-select) or (appearance: base-select)){
2917
+ .tds-select select:has(> button){
2918
+ padding-inline-end:0;
2919
+ background-image:none;
2920
+ }
2921
+ @media (hover) and (pointer: fine){
2922
+ :is(.tds-select select:has( > button)),:is(.tds-select select:has( > button))::picker(select){
2923
+ padding-block:0;
2924
+ -webkit-appearance:base-select;
2925
+ -moz-appearance:base-select;
2926
+ appearance:base-select;
2927
+ }
2928
+ }
2929
+ :is(.tds-select select:has( > button))::picker-icon{
2930
+ flex-shrink:0;
2931
+ width:var(--tds-select-caret-size);
2932
+ margin-inline-end:var(--tds-select-caret-inline-offset);
2933
+ content:var(--tds-select-background-image);
2934
+ transition:var(--tds-select-caret-transition);
2935
+ }
2936
+
2937
+ :is(.tds-select select:has( > button))::picker(select):not(:popover-open){
2938
+ opacity:var(--tds-select-dropdown-closed-opacity);
2939
+ transform:var(--tds-select-dropdown-closed-transform);
2940
+ transition:var(--tds-select-dropdown-transition-exit);
2941
+ }
2942
+
2943
+ :is(.tds-select select:has( > button)):open,:is(.tds-select select:has( > button)):focus-within{
2944
+ outline-color:var(--t-focus-ring-color);
2945
+ outline-offset:var(--t-focus-ring-offset);
2946
+ border-color:var(--tds-select-border-color-active);
2947
+ }
2948
+
2949
+ :is(.tds-select select:has( > button)):open::picker-icon{
2950
+ opacity:1;
2951
+ transform:rotate(.5turn);
2952
+ }
2953
+
2954
+ :is(.tds-select select:has( > button)) selectedcontent{
2955
+ overflow:hidden;
2956
+ text-overflow:ellipsis;
2957
+ line-height:calc(var(--tds-select-min-height) - 2px);
2958
+ white-space:nowrap;
2959
+ }
2960
+
2961
+ :is(.tds-select select:has( > button)):has(option[hidden][disabled][value=""]:checked) > button{
2962
+ color:var(--tds-select-placeholder-color);
2963
+ }
2964
+
2965
+ :is(.tds-select select:has( > button))::picker(select){
2966
+ inset:auto;
2967
+ inline-size:-moz-max-content;
2968
+ inline-size:max-content;
2969
+ min-inline-size:anchor-size(width);
2970
+ max-inline-size:100vi;
2971
+ padding:var(--tds-select-dropdown-padding);
2972
+ margin-block:var(--tds-select-dropdown-margin-block);
2973
+ position-try-fallbacks:flip-block, flip-inline;
2974
+ overflow:clip;
2975
+ scroll-behavior:var(--tds-select-dropdown-scroll-behavior);
2976
+ -webkit-user-select:none;
2977
+ -moz-user-select:none;
2978
+ user-select:none;
2979
+ scrollbar-color:var(--tds-select-dropdown-scrollbar-color);
2980
+ scrollbar-width:var(--tds-select-dropdown-scrollbar-width);
2981
+ background:var(--tds-select-dropdown-background-color);
2982
+ border:var(--tds-select-dropdown-border);
2983
+ border-radius:var(--tds-select-dropdown-border-radius);
2984
+ box-shadow:var(--tds-select-dropdown-box-shadow);
2985
+ opacity:var(--tds-select-dropdown-open-opacity);
2986
+ transform:var(--tds-select-dropdown-open-transform);
2987
+ transition:var(--tds-select-dropdown-transition-enter);
2988
+ }
2989
+
2990
+ :is(.tds-select select:has( > button)) option::checkmark{
2991
+ display:none;
2992
+ }
2993
+
2994
+ @starting-style{
2995
+ :is(.tds-select select:has( > button))::picker(select):popover-open{
2996
+ opacity:var(--tds-select-dropdown-closed-opacity);
2997
+ transform:var(--tds-select-dropdown-closed-transform);
2998
+ }
2999
+ }
3000
+ }
3001
+
3002
+ .tds-input:has(textarea){
3003
+ --tds-input-padding-block:6px;
3004
+ --tds-input-resizer-size:var(--t-element-size-sm);
3005
+ --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");
3006
+ }
3007
+
3008
+ @supports (x: attr(x type(*))){
3009
+
3010
+ .tds-input:has(textarea){
3011
+ --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
3012
+ }
3013
+ }
3014
+
3015
+ .tds-input.tds-textarea--resize-vertical textarea{
3016
+ resize:vertical;
3017
+ }
3018
+
3019
+ .tds-input.tds-textarea--resize-none textarea{
3020
+ resize:none;
3021
+ }
3022
+
3023
+ .tds-input.tds-textarea--resize-auto textarea{
3024
+ resize:vertical;
3025
+ }
3026
+
3027
+ @supports (field-sizing: content){
3028
+ .tds-input.tds-textarea--resize-auto textarea{
3029
+ field-sizing:content;
3030
+ resize:none;
3031
+ }
3032
+ }
3033
+
3034
+ .tds-input textarea{
3035
+ --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
3036
+ --tds-input-scrollbar-thumb-color-hidden:transparent;
3037
+ --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
3038
+ --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
3039
+ --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
3040
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
3041
+ --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
3042
+ --tds-input-scrollbar-thumb-border-radius:999px;
3043
+ --tds-input-scrollbar-thumb-border-width:3px;
3044
+ --tds-input-scrollbar-track-margin-block:.125rem;
3045
+ scrollbar-color:initial;
3046
+ transition-timing-function:ease-in-out;
3047
+ transition-duration:180ms;
3048
+ transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
3049
+ }
3050
+
3051
+ @media (pointer: fine){
3052
+ :is(.tds-input textarea)::-webkit-scrollbar{
3053
+ width:12px;
3054
+ height:12px;
3055
+ cursor:default;
3056
+ }
3057
+
3058
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb{
3059
+ cursor:default;
3060
+ background:var(--tds-input-scrollbar-thumb-color);
3061
+ background-clip:content-box;
3062
+ border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
3063
+ border-radius:var(--tds-input-scrollbar-thumb-border-radius);
3064
+ }
3065
+
3066
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
3067
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
3068
+ }
3069
+
3070
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
3071
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
3072
+ }
3073
+
3074
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
3075
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
3076
+ }
3077
+
3078
+ :is(.tds-input textarea)::-webkit-scrollbar-corner{
3079
+ background:var(--tds-input-scrollbar-surface-color);
3080
+ }
3081
+
3082
+ :is(.tds-input textarea)::-webkit-resizer{
3083
+ background:var(--tds-input-resizer-icon) no-repeat;
3084
+ background-position:right bottom;
3085
+ background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
3086
+ }
3087
+
3088
+ :is(.tds-input textarea)::-webkit-scrollbar-track{
3089
+ margin-block:var(--tds-input-scrollbar-track-margin-block);
3090
+ cursor:default;
3091
+ }
3092
+
3093
+ @supports (-moz-appearance: none){
3094
+ :is(.tds-input textarea){
3095
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
3096
+ scrollbar-width:thin;
3097
+ }
3098
+
3099
+ @media (hover){
3100
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
3101
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
3102
+ }
3103
+ }
3104
+ }
3105
+ }
3106
+
2401
3107
  .tds-toggle-switch{
2402
3108
  --tds-toggle-switch-font-size:var(--t-font-size-md);
2403
- --tds-toggle-switch-column-gap:var(--t-spacing-2);
3109
+ --tds-toggle-switch-column-gap:var(--t-spacing-1);
2404
3110
  --tds-toggle-switch-cursor:pointer;
2405
3111
  --tds-toggle-switch-display:inline-grid;
2406
3112
  --tds-toggle-switch-line-height:1.4;
2407
3113
 
2408
- --tds-toggle-switch-label-color:var(--t-text-color);
3114
+ --tds-toggle-switch-label-color:var(--t-form-color);
2409
3115
 
2410
3116
  --tds-toggle-switch-track-width:var(--t-container-size-md);
2411
3117
  --tds-toggle-switch-track-outline:none;
2412
3118
  --tds-toggle-switch-track-height:var(--t-container-size-xs);
2413
- --tds-toggle-switch-track-background-color:var(--t-fill-color-control-neutral-off);
3119
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
2414
3120
  --tds-toggle-switch-track-transition:background-color 180ms ease-in-out;
2415
3121
 
2416
3122
  --tds-toggle-switch-thumb-size:var(--t-element-size-md);
@@ -2420,12 +3126,12 @@ a[class="tds-btn"]{
2420
3126
  --tds-toggle-switch-description-font-size:var(--t-font-size-sm);
2421
3127
  --tds-toggle-switch-description-line-height:1.35;
2422
3128
  --tds-toggle-switch-description-color:var(--t-text-color-secondary);
3129
+ position:relative;
2423
3130
 
2424
3131
  display:var(--tds-toggle-switch-display);
2425
- gap:var(--t-spacing-fourth) var(--tds-toggle-switch-column-gap);
2426
- grid-auto-columns:1fr;
2427
3132
  grid-template-columns:auto;
2428
- position:relative;
3133
+ grid-auto-columns:1fr;
3134
+ gap:var(--t-spacing-fourth) var(--tds-toggle-switch-column-gap);
2429
3135
  -webkit-user-select:none;
2430
3136
  -moz-user-select:none;
2431
3137
  user-select:none;
@@ -2440,11 +3146,11 @@ a[class="tds-btn"]{
2440
3146
  -moz-appearance:none;
2441
3147
  appearance:none;
2442
3148
  cursor:var(--tds-toggle-switch-cursor);
3149
+ outline:var(--tds-toggle-switch-track-outline);
3150
+ outline-offset:var(--t-focus-ring-offset);
2443
3151
  background-color:transparent;
2444
3152
  border:0;
2445
3153
  border-radius:var(--t-border-radius-round);
2446
- outline:var(--tds-toggle-switch-track-outline);
2447
- outline-offset:var(--t-focus-ring-offset);
2448
3154
  }
2449
3155
 
2450
3156
  :is(.tds-toggle-switch input[type="checkbox"]):focus-visible{
@@ -2465,22 +3171,22 @@ a[class="tds-btn"]{
2465
3171
  }
2466
3172
 
2467
3173
  .tds-toggle-switch:not(:has(input:disabled)):has(input:hover){
2468
- --tds-toggle-switch-track-background-color:var(--t-fill-color-neutral-025);
3174
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-hover);
2469
3175
  }
2470
3176
 
2471
3177
  .tds-toggle-switch:has(input:checked){
2472
- --tds-toggle-switch-track-background-color:var(--t-fill-color-control);
3178
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on);
2473
3179
  --tds-toggle-switch-thumb-transform:translateX(calc(var(--tds-toggle-switch-track-width) - var(--tds-toggle-switch-thumb-size) - var(--t-spacing-half)));
2474
3180
  }
2475
3181
 
2476
3182
  .tds-toggle-switch:has(input:checked):not(:has(input:disabled)):has(input:hover){
2477
- --tds-toggle-switch-track-background-color:var(--t-fill-color-interaction-hover);
3183
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-on-hover);
2478
3184
  }
2479
3185
 
2480
3186
  .tds-toggle-switch:has(input:disabled){
2481
- --tds-toggle-switch-track-background-color:var(--t-fill-color-control-disabled);
2482
- --tds-toggle-switch-label-color:var(--t-text-color-disabled);
2483
- --tds-toggle-switch-description-color:var(--t-text-color-disabled);
3187
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color-disabled);
3188
+ --tds-toggle-switch-label-color:var(--t-form-color-disabled);
3189
+ --tds-toggle-switch-description-color:var(--t-form-color-disabled);
2484
3190
  --tds-toggle-switch-cursor:not-allowed;
2485
3191
  }
2486
3192