@planningcenter/tapestry 3.7.0 → 3.8.0-qa-1049.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.
@@ -1044,360 +1044,199 @@
1044
1044
  }
1045
1045
  }
1046
1046
 
1047
- .tds-date-picker{
1048
- --tds-date-picker-button-offset:4px;
1049
- }
1050
-
1051
- .tds-date-picker--lg{
1052
- --tds-date-picker-button-offset:5px;
1053
- }
1054
-
1055
- .tds-date-picker-field[data-focus-within]:has(.tds-date-picker-button[data-focused]){
1056
- outline-color:transparent;
1057
- outline-offset:0;
1058
- border-color:var(--tds-field-border-color);
1059
- }
1060
-
1061
- .tds-date-picker-field:has(.tds-date-picker-input[data-readonly]) .tds-date-picker-button{
1062
- display:none;
1063
- }
1047
+ .tds-checkbox{
1048
+ --tds-checkbox-font-size:var(--t-font-size-md);
1049
+ --tds-checkbox-cursor:pointer;
1050
+ --tds-checkbox-line-height:1.4;
1051
+ --tds-checkbox-transition-property:background-color, border-color;
1064
1052
 
1065
- .tds-date-picker-input{
1066
- flex:1;
1067
- padding-block:var(--tds-field-padding-block);
1068
- padding-inline:var(--tds-field-padding-inline);
1069
- overflow:auto clip;
1070
- font-variant-numeric:tabular-nums;
1071
- text-wrap:nowrap;
1072
- scrollbar-width:none;
1073
- }
1053
+ --tds-checkbox-input-size:var(--t-element-size-md);
1054
+ --tds-checkbox-input-border-radius:var(--t-border-radius-sm);
1055
+ --tds-checkbox-input-border-color:var(--t-form-border-color);
1056
+ --tds-checkbox-input-background-color:var(--t-form-background-color);
1074
1057
 
1075
- .tds-date-picker-input:has( + .tds-date-picker-button){
1076
- padding-inline-end:0;
1077
- }
1058
+ --tds-checkbox-input-icon:none;
1059
+ --tds-checkbox-input-icon-visibility:hidden;
1060
+ --tds-checkbox-input-icon-opacity:0;
1061
+ --tds-checkbox-input-icon-fill:var(--t-icon-color-inverted);
1078
1062
 
1079
- .tds-date-picker-button{
1080
- flex-shrink:0;
1081
- align-self:center;
1082
- inline-size:calc(var(--tds-field-min-height) - (var(--tds-date-picker-button-offset) * 2));
1083
- block-size:calc(var(--tds-field-min-height) - (var(--tds-date-picker-button-offset) * 2));
1084
- padding:0;
1085
- margin-inline-end:var(--tds-date-picker-button-offset);
1086
- }
1063
+ --tds-checkbox-label-color:var(--t-form-color);
1087
1064
 
1088
- .tds-date-picker-popover{
1089
- --tds-date-picker-popover-font-size:var(--t-font-size-md);
1090
- --tds-date-picker-popover-padding:var(--t-spacing-1-half);
1091
- --tds-date-picker-popover-background-color:var(--t-surface-color-card);
1092
- --tds-date-picker-popover-shadow:hsl(0, 0%, 0%, .05) 0 10px 15px -3px, hsl(0, 0%, 0%, .05) 0 4px 6px -4px;
1093
- --tds-date-picker-popover-interactive-timing-function:var(--t-ease-in-out);
1094
- --tds-date-picker-popover-interactive-duration:var(--t-duration-200);
1095
- --tds-date-picker-popover-interactive-property:color, background-color, border-color;
1065
+ --tds-checkbox-description-font-size:var(--t-font-size-sm);
1066
+ --tds-checkbox-description-line-height:1.35;
1067
+ --tds-checkbox-description-color:var(--t-text-color-secondary);
1068
+ --tds-checkbox-description-invalid-icon-display:none;
1096
1069
 
1097
1070
  position:relative;
1098
- overflow:hidden;
1099
- background-color:var(--tds-date-picker-popover-background-color);
1100
- border:var(--t-border-width) solid var(--t-border-color);
1101
- border-radius:var(--t-border-radius);
1102
- box-shadow:var(--tds-date-picker-popover-shadow);
1071
+ display:inline-grid;
1072
+ grid-template-columns:auto;
1073
+ grid-auto-columns:1fr;
1074
+ gap:var(--t-spacing-fourth) 0;
1075
+ line-height:var(--tds-checkbox-line-height);
1076
+ -webkit-user-select:none;
1077
+ -moz-user-select:none;
1078
+ user-select:none;
1103
1079
  }
1104
1080
 
1105
- .tds-date-picker-popover[data-entering]{
1106
- animation:tds-date-picker-popover var(--t-duration-300) var(--t-ease-out);
1107
- }
1108
-
1109
- .tds-date-picker-popover[data-exiting]{
1110
- animation:tds-date-picker-popover var(--t-duration-200) var(--t-ease-in) reverse;
1081
+ .tds-checkbox label{
1082
+ grid-area:1 / 2;
1083
+ padding-inline-start:var(--t-spacing-1);
1084
+ font-size:var(--tds-checkbox-font-size);
1085
+ font-weight:var(--t-font-weight-normal);
1086
+ color:var(--tds-checkbox-label-color);
1087
+ cursor:var(--tds-checkbox-cursor);
1111
1088
  }
1112
1089
 
1113
- .tds-date-picker-popover[data-entering],.tds-date-picker-popover[data-exiting]{
1114
- will-change:opacity, transform;
1090
+ .tds-checkbox tds-indeterminate{
1091
+ display:flex;
1115
1092
  }
1116
1093
 
1117
- @keyframes tds-date-picker-popover{
1118
- from{
1119
- opacity:0;
1120
- transform:translateY(-8px);
1094
+ .tds-checkbox input[type="checkbox"]{
1095
+ position:relative;
1096
+ width:1em;
1097
+ height:1em;
1098
+ margin:calc((1lh - 1em) / 2) 0 0;
1099
+ font-size:var(--tds-checkbox-font-size);
1100
+ line-height:inherit;
1101
+ -webkit-appearance:none;
1102
+ -moz-appearance:none;
1103
+ appearance:none;
1104
+ cursor:var(--tds-checkbox-cursor);
1105
+ background-color:var(--tds-checkbox-input-background-color);
1106
+ border:var(--t-form-border-width) solid var(--tds-checkbox-input-border-color);
1107
+ border-radius:var(--tds-checkbox-input-border-radius);
1108
+ transition-timing-function:var(--t-ease-in-out);
1109
+ transition-duration:var(--t-duration-200);
1110
+ transition-property:var(--tds-checkbox-transition-property);
1121
1111
  }
1122
- }
1123
1112
 
1124
- @media (prefers-reduced-motion: reduce){
1125
- .tds-date-picker-popover[data-entering],.tds-date-picker-popover[data-exiting]{
1126
- animation:none;
1113
+ :is(.tds-checkbox input[type="checkbox"])::before{
1114
+ position:absolute;
1115
+ top:50%;
1116
+ left:50%;
1117
+ visibility:var(--tds-checkbox-input-icon-visibility);
1118
+ width:100%;
1119
+ height:100%;
1120
+ content:"";
1121
+ background-color:var(--tds-checkbox-input-icon-fill);
1122
+ border-radius:var(--tds-checkbox-input-border-radius);
1123
+ opacity:var(--tds-checkbox-input-icon-opacity);
1124
+ -webkit-mask-image:var(--tds-checkbox-input-icon);
1125
+ mask-image:var(--tds-checkbox-input-icon);
1126
+ -webkit-mask-repeat:no-repeat;
1127
+ mask-repeat:no-repeat;
1128
+ -webkit-mask-size:contain;
1129
+ mask-size:contain;
1130
+ transform:translate(-50%, -50%);
1127
1131
  }
1128
- }
1129
-
1130
- .tds-date-picker-overlay{
1131
- position:absolute;
1132
- inset:0;
1133
- z-index:1;
1134
- display:flex;
1135
- background-color:var(--tds-date-picker-popover-background-color);
1136
- }
1137
1132
 
1138
- .tds-date-picker-overlay-list{
1139
- display:grid;
1140
- flex:1;
1141
- grid-template-columns:repeat(3, 1fr);
1142
- gap:var(--t-spacing-half);
1143
- padding-inline:var(--tds-date-picker-popover-padding);
1144
- outline:0;
1145
- scrollbar-color:var(--t-fill-color-transparency-dark-030) transparent;
1146
- scrollbar-width:thin;
1147
- }
1133
+ :is(.tds-checkbox input[type="checkbox"]):hover:not(:disabled){
1134
+ --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
1135
+ --tds-checkbox-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
1136
+ }
1148
1137
 
1149
- .tds-date-picker-overlay--month .tds-date-picker-overlay-list{
1150
- grid-template-rows:repeat(4, 1fr);
1151
- padding-bottom:var(--tds-date-picker-popover-padding);
1152
- }
1138
+ :is(.tds-checkbox input[type="checkbox"]):focus-visible{
1139
+ outline:var(--t-focus-ring-outline);
1140
+ outline-offset:var(--t-focus-ring-offset);
1141
+ }
1153
1142
 
1154
- .tds-date-picker-overlay--year .tds-date-picker-overlay-list{
1155
- grid-auto-rows:var(--t-container-size-xl);
1156
- padding-right:var(--t-spacing-1);
1157
- overflow-y:auto;
1158
- scroll-padding-block:calc(var(--t-focus-ring-width) + var(--t-focus-ring-offset));
1159
- }
1143
+ :is(.tds-checkbox input[type="checkbox"]):disabled{
1144
+ pointer-events:none;
1145
+ }
1160
1146
 
1161
- .tds-date-picker-overlay-cell{
1162
- display:flex;
1163
- align-items:center;
1164
- justify-content:center;
1165
- font-family:inherit;
1166
- font-size:var(--tds-date-picker-popover-font-size);
1167
- color:var(--t-text-color);
1168
- cursor:pointer;
1169
- outline:0;
1170
- background-color:transparent;
1171
- border:0;
1172
- border-radius:var(--t-border-radius-md);
1173
- transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
1174
- transition-duration:var(--t-duration-100);
1175
- transition-property:var(--tds-date-picker-popover-interactive-property);
1176
- }
1147
+ @media (prefers-reduced-motion: reduce){
1177
1148
 
1178
- .tds-date-picker-overlay-cell[data-hovered]{
1179
- background-color:var(--t-fill-color-button-neutral-outline-hover);
1149
+ .tds-checkbox input[type="checkbox"]{
1150
+ --tds-checkbox-transition-property:none;
1180
1151
  }
1152
+ }
1181
1153
 
1182
- .tds-date-picker-overlay-cell[data-pressed]{
1183
- background-color:var(--t-fill-color-button-neutral-outline-active);
1154
+ .tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate){
1155
+ --tds-checkbox-input-background-color:var(--t-fill-color-control);
1156
+ --tds-checkbox-input-border-color:var(--t-border-color-control-info);
1157
+ --tds-checkbox-input-icon-visibility:visible;
1158
+ --tds-checkbox-input-icon-opacity:1;
1184
1159
  }
1185
1160
 
1186
- .tds-date-picker-overlay-cell[data-selected]{
1187
- font-weight:var(--t-font-weight-semibold);
1188
- color:var(--t-text-color-inverted);
1189
- background-color:var(--t-fill-color-interaction);
1161
+ :is(.tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate)) input:hover:not(:disabled){
1162
+ --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
1163
+ --tds-checkbox-input-background-color:var(--t-fill-color-interaction-hover);
1164
+ }
1165
+
1166
+ .tds-checkbox:has(input:checked){
1167
+ --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjUwMjAxIDExLjQyOTNMMy42NzM3NCA4LjM5MkMzLjUxNjE2IDguMjI0ODkgMy41MTYxNiA3Ljk1Mjg5IDMuNjczNzQgNy43ODRMNC4yNDUwNSA3LjE3Njg5QzQuNDAyNjIgNy4wMDk3OCA0LjY1ODc4IDcuMDA5NzggNC44MTYzNiA3LjE3Njg5TDYuNzg4MDcgOS4zMDMxMUwxMS4xODMyIDQuNTY5NzhDMTEuMzQwOCA0LjQwMjY2IDExLjU5NjkgNC40MDI2NiAxMS43NTQ1IDQuNTY5NzhMMTIuMzI1OCA1LjE3Nzc4QzEyLjQ4MzQgNS4zNDQ4OSAxMi40ODM0IDUuNjE3NzggMTIuMzI1OCA1Ljc4NEw3LjA3MzMyIDExLjQyOTNDNi45MTU3NCAxMS41OTY0IDYuNjU5NTggMTEuNTk2NCA2LjUwMjAxIDExLjQyOTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
1190
1168
  }
1191
1169
 
1192
- .tds-date-picker-overlay-cell[data-focus-visible]{
1193
- outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
1170
+ .tds-checkbox:has(input:indeterminate){
1171
+ --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMy41NTU1NiIgeT0iNy4xMTExMSIgd2lkdGg9IjguODg4ODkiIGhlaWdodD0iMS43Nzc3OCIgcng9IjAuODg4ODg5IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
1194
1172
  }
1195
1173
 
1196
- .tds-date-picker-overlay-cell[data-selected][data-focus-visible]{
1197
- outline-offset:var(--t-focus-ring-offset);
1174
+ .tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid{
1175
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1176
+ --tds-checkbox-description-color:var(--t-text-color-status-error);
1177
+ --tds-checkbox-description-invalid-icon-display:inline-block;
1198
1178
  }
1199
1179
 
1200
- .tds-date-picker-calendar-heading{
1201
- display:flex;
1202
- flex:1;
1203
- gap:var(--t-spacing-1);
1204
- align-items:center;
1205
- justify-content:flex-start;
1206
- padding-inline-start:4px;
1207
- }
1180
+ :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:hover:not(:disabled){
1181
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1182
+ --tds-checkbox-input-background-color:var(--t-form-background-color-error);
1183
+ }
1208
1184
 
1209
- .tds-date-picker-calendar-overlay-trigger{
1210
- --_background-color:transparent;
1211
- position:relative;
1212
- padding:0;
1213
- font-family:inherit;
1214
- font-size:var(--tds-date-picker-popover-font-size);
1215
- font-weight:var(--t-font-weight-semibold);
1216
- font-feature-settings:"ss01", "ss02";
1217
- color:var(--t-text-color);
1218
- cursor:pointer;
1219
- outline:0;
1220
- background-color:transparent;
1221
- border:0;
1222
- border-radius:var(--t-border-radius-md);
1223
- isolation:isolate;
1224
- transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
1225
- transition-duration:var(--tds-date-picker-popover-interactive-duration);
1226
- transition-property:var(--tds-date-picker-popover-interactive-property);
1227
- }
1228
-
1229
- .tds-date-picker-calendar-overlay-trigger::before{
1230
- position:absolute;
1231
- inset:calc(var(--t-spacing-half) * -1);
1232
- z-index:-1;
1233
- pointer-events:inherit;
1234
- content:"";
1235
- background-color:var(--_background-color);
1236
- border-radius:inherit;
1237
- }
1238
-
1239
- .tds-date-picker-calendar-overlay-trigger[data-hovered]{
1240
- --_background-color:var(--t-fill-color-button-neutral-outline-hover);
1241
- }
1242
-
1243
- .tds-date-picker-calendar-overlay-trigger[data-pressed]{
1244
- --_background-color:var(--t-fill-color-button-neutral-outline-active);
1245
- }
1246
-
1247
- .tds-date-picker-calendar-overlay-trigger[data-focus-visible]{
1248
- outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
1249
- outline-offset:var(--t-focus-ring-offset);
1250
- }
1251
-
1252
- .tds-date-picker-calendar{
1253
- inline-size:-moz-fit-content;
1254
- inline-size:fit-content;
1255
- font-size:var(--tds-date-picker-popover-font-size);
1256
- }
1257
-
1258
- .tds-date-picker-calendar-body{
1259
- position:relative;
1260
- padding:var(--tds-date-picker-popover-padding);
1261
- padding-block-start:0;
1262
- }
1263
-
1264
- .tds-date-picker-calendar-header{
1265
- display:flex;
1266
- align-items:center;
1267
- justify-content:space-between;
1268
- padding:var(--tds-date-picker-popover-padding);
1269
- }
1270
-
1271
- .tds-date-picker-calendar-title{
1272
- padding:var(--t-spacing-half) var(--t-spacing-1);
1273
- font-size:var(--tds-date-picker-popover-font-size);
1274
- font-weight:var(--t-font-weight-semibold);
1275
- }
1276
-
1277
- .tds-date-picker-calendar-nav{
1278
- display:flex;
1279
- align-items:center;
1280
- justify-content:center;
1281
- padding:var(--t-spacing-half);
1282
- font-size:.875em;
1283
- color:var(--t-text-color);
1284
- cursor:pointer;
1285
- outline:0;
1286
- background-color:transparent;
1287
- border:0;
1288
- border-radius:var(--t-border-radius-md);
1289
- transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
1290
- transition-duration:var(--tds-date-picker-popover-interactive-duration);
1291
- transition-property:var(--tds-date-picker-popover-interactive-property);
1292
- }
1293
-
1294
- .tds-date-picker-calendar-nav[data-hovered]{
1295
- background-color:var(--t-fill-color-button-neutral-outline-hover);
1296
- }
1297
-
1298
- .tds-date-picker-calendar-nav[data-pressed]{
1299
- background-color:var(--t-fill-color-button-neutral-outline-active);
1300
- }
1185
+ :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{
1186
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1187
+ --tds-checkbox-input-background-color:var(--t-form-border-color-error);
1188
+ }
1301
1189
 
1302
- .tds-date-picker-calendar-nav[data-focus-visible]{
1303
- outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
1304
- outline-offset:var(--t-focus-ring-offset);
1305
- }
1190
+ :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){
1191
+ --tds-checkbox-input-border-color:var(--t-form-border-color-error-hover);
1192
+ --tds-checkbox-input-background-color:var(--t-form-border-color-error-hover);
1193
+ }
1306
1194
 
1307
- .tds-date-picker-calendar-nav[data-disabled]{
1308
- color:var(--t-text-color-disabled);
1309
- cursor:not-allowed;
1310
- }
1195
+ .tds-checkbox:has(input:required) label::after{
1196
+ margin-left:.25ch;
1197
+ color:var(--t-text-color-status-error);
1198
+ content:"*";
1199
+ }
1311
1200
 
1312
- .tds-date-picker-calendar-grid{
1313
- font-feature-settings:"ss01", "ss02";
1314
- border-collapse:collapse;
1315
- }
1201
+ .tds-checkbox:has(input:disabled){
1202
+ --tds-checkbox-input-background-color:var(--t-form-background-color-disabled);
1203
+ --tds-checkbox-input-border-color:var(--t-form-border-color-disabled);
1316
1204
 
1317
- .tds-date-picker-calendar-grid :where(thead,tbody,tr,td,th){
1318
- padding:0;
1319
- border:0;
1205
+ --tds-checkbox-label-color:var(--t-form-color-disabled);
1206
+ --tds-checkbox-description-color:var(--t-form-color-disabled);
1207
+ --tds-checkbox-cursor:not-allowed;
1320
1208
  }
1321
1209
 
1322
- .tds-date-picker-calendar-header-cell{
1323
- padding-block-end:var(--t-spacing-1);
1324
- font-size:.875em;
1325
- font-weight:var(--t-font-weight-medium);
1326
- color:var(--t-text-color-secondary);
1327
- text-align:center;
1328
- -webkit-user-select:none;
1329
- -moz-user-select:none;
1330
- user-select:none;
1331
- }
1210
+ .tds-checkbox:has(input:disabled) input:checked,.tds-checkbox:has(input:disabled) input:indeterminate{
1211
+ --tds-checkbox-input-background-color:var(--t-border-color-control-disabled);
1212
+ }
1332
1213
 
1333
- .tds-date-picker-calendar-cell-button{
1334
- position:relative;
1214
+ .tds-checkbox-description{
1335
1215
  display:flex;
1336
- align-items:center;
1337
- justify-content:center;
1338
- inline-size:2.25em;
1339
- block-size:2.25em;
1340
- color:var(--t-text-color);
1341
- cursor:pointer;
1342
- -webkit-user-select:none;
1343
- -moz-user-select:none;
1344
- user-select:none;
1345
- outline:0;
1216
+ grid-area:2 / 2;
1217
+ gap:var(--t-spacing-half);
1218
+ align-items:flex-start;
1219
+ padding-inline-start:var(--t-spacing-1);
1220
+ margin:0;
1221
+ font-size:var(--tds-checkbox-description-font-size);
1222
+ line-height:var(--tds-checkbox-description-line-height);
1223
+ color:var(--tds-checkbox-description-color);
1224
+ cursor:text;
1346
1225
  }
1347
1226
 
1348
- .tds-date-picker-calendar-cell-button::before{
1349
- position:absolute;
1350
- inset:0;
1351
- z-index:-1;
1352
- content:"";
1353
- background-color:var(--_background-color);
1354
- border-radius:50%;
1355
- }
1356
-
1357
- .tds-date-picker-calendar-cell-button[data-today]::before{
1358
- box-shadow:inset 0 0 0 1.5px var(--t-border-color);
1359
- }
1360
-
1361
- .tds-date-picker-calendar-cell-button[data-outside-month]{
1362
- display:none;
1363
- }
1364
-
1365
- .tds-date-picker-calendar-cell-button[data-hovered]{
1366
- --_background-color:var(--t-fill-color-button-neutral-outline-hover);
1367
- }
1368
-
1369
- .tds-date-picker-calendar-cell-button[data-pressed]{
1370
- --_background-color:var(--t-fill-color-button-neutral-outline-active);
1371
- }
1372
-
1373
- .tds-date-picker-calendar-cell-button[data-selected]{
1374
- --_background-color:var(--t-fill-color-interaction);
1375
- font-weight:var(--t-font-weight-semibold);
1376
- color:var(--t-text-color-inverted);
1377
- border-color:transparent;
1378
- }
1379
-
1380
- .tds-date-picker-calendar-cell-button[data-unavailable]{
1381
- color:var(--t-text-color-disabled);
1382
- text-decoration:line-through;
1383
- cursor:not-allowed;
1384
- }
1385
-
1386
- .tds-date-picker-calendar-cell-button[data-disabled]{
1387
- color:var(--t-text-color-disabled);
1388
- }
1389
-
1390
- .tds-date-picker-calendar-cell-button[data-focus-visible]{
1391
- outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
1392
- outline-offset:-2px;
1393
- }
1394
-
1395
- .tds-date-picker-calendar-cell-button[data-focus-visible][data-selected]{
1396
- outline-offset:var(--t-focus-ring-offset);
1227
+ .tds-checkbox-description .tds-checkbox-description-invalid-icon{
1228
+ display:var(--tds-checkbox-description-invalid-icon-display);
1229
+ flex-shrink:0;
1230
+ margin-top:calc(.5lh - .5em);
1231
+ line-height:var(--tds-checkbox-description-line-height);
1397
1232
  }
1398
1233
 
1399
- .tds-date-picker-popover--lg{
1400
- --tds-date-picker-popover-font-size:var(--t-font-size-lg);
1234
+ .tds-checkbox--sm{
1235
+ --tds-checkbox-line-height:1.35;
1236
+ --tds-checkbox-input-size:var(--t-element-size-sm);
1237
+ --tds-checkbox-font-size:var(--t-font-size-sm);
1238
+ --tds-checkbox-description-font-size:var(--t-font-size-xs);
1239
+ --tds-checkbox-description-line-height:1.3;
1401
1240
  }
1402
1241
 
1403
1242
  .tds-checkbox-group{
@@ -1474,23 +1313,148 @@
1474
1313
  --tds-checkbox-group-description-line-height:1.3;
1475
1314
  }
1476
1315
 
1477
- .tds-combo-box{
1478
- --tds-combo-box-button-offset:4px;
1316
+ .tds-dropdown-popover{
1317
+ min-inline-size:10rem;
1318
+ max-inline-size:24rem;
1319
+ padding:var(--t-spacing-1);
1320
+ overflow:auto;
1321
+ overscroll-behavior:none;
1322
+ -webkit-user-select:none;
1323
+ -moz-user-select:none;
1324
+ user-select:none;
1325
+ outline:0;
1326
+ scrollbar-color:#0004 var(--t-surface-color-card);
1327
+ scrollbar-width:thin;
1328
+ background:var(--t-surface-color-card);
1329
+ background-clip:padding-box;
1330
+ border:1px solid var(--t-border-color);
1331
+ border-radius:var(--t-border-radius);
1332
+ box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
1479
1333
  }
1480
-
1481
- .tds-combo-box[data-open] .tds-combo-box-button > svg{
1482
- transform:rotate(.5turn);
1334
+ .tds-dropdown-popover[data-entering]{
1335
+ animation:tds-dropdown-popover var(--t-duration-300) var(--t-ease-out);
1336
+ }
1337
+ .tds-dropdown-popover[data-exiting]{
1338
+ animation:tds-dropdown-popover var(--t-duration-200) var(--t-ease-in) reverse;
1339
+ }
1340
+ .tds-dropdown-popover[data-entering],.tds-dropdown-popover[data-exiting]{
1341
+ will-change:opacity, transform;
1342
+ }
1343
+ @keyframes tds-dropdown-popover{
1344
+ from{
1345
+ opacity:0;
1346
+ transform:translateY(-8px);
1483
1347
  }
1484
-
1485
- .tds-combo-box--lg{
1486
- --tds-combo-box-button-offset:5px;
1487
1348
  }
1488
-
1489
- .tds-combo-box-field:has([readonly]) .tds-combo-box-button{
1490
- display:none;
1349
+ @media (prefers-reduced-motion: reduce){
1350
+ .tds-dropdown-popover[data-entering],.tds-dropdown-popover[data-exiting]{
1351
+ animation:none;
1352
+ }
1353
+ }
1354
+ .tds-dropdown-popover [role="menu"]{
1355
+ outline:0;
1491
1356
  }
1357
+ .tds-dropdown-item{
1358
+ --tds-dropdown-item-color:var(--t-text-color);
1492
1359
 
1493
- .tds-combo-box-input{
1360
+ display:flex;
1361
+ gap:var(--t-spacing-1);
1362
+ align-items:center;
1363
+ padding-block:var(--t-spacing-1);
1364
+ padding-inline:var(--t-spacing-2);
1365
+ font-size:1rem;
1366
+ color:var(--tds-dropdown-item-color);
1367
+ text-decoration:none;
1368
+ cursor:default;
1369
+ outline:0;
1370
+ border-radius:var(--t-border-radius);
1371
+ }
1372
+ .tds-dropdown-item[data-hovered]:not([data-disabled]),.tds-dropdown-item[data-focus-visible]{
1373
+ background:var(--t-fill-color-neutral-070);
1374
+ }
1375
+ .tds-dropdown-item[data-pressed]:not([data-disabled]){
1376
+ background:var(--t-fill-color-neutral-060);
1377
+ }
1378
+ .tds-dropdown-item[data-disabled]{
1379
+ --tds-dropdown-item-color:var(--t-form-color-disabled);
1380
+
1381
+ cursor:not-allowed;
1382
+ }
1383
+ .tds-dropdown-item--destructive{
1384
+ --tds-dropdown-item-color:var(--t-text-color-status-error);
1385
+ }
1386
+ .tds-dropdown-item--staff-only{
1387
+ --tds-dropdown-item-color:var(--t-fill-color-product-staff);
1388
+ }
1389
+ a.tds-dropdown-item:is(:hover, :active){
1390
+ color:var(--tds-dropdown-item-color);
1391
+ }
1392
+ .tds-dropdown-item [slot="prefix"],
1393
+ .tds-dropdown-item [slot="suffix"]{
1394
+ flex-shrink:0;
1395
+ }
1396
+ .tds-dropdown-item [slot="label"]{
1397
+ flex:1;
1398
+ min-width:0;
1399
+ overflow:hidden;
1400
+ text-overflow:ellipsis;
1401
+ white-space:nowrap;
1402
+ }
1403
+ .tds-dropdown-item [slot="description"]{
1404
+ font-size:var(--t-font-size-sm);
1405
+ color:var(--t-text-color-secondary);
1406
+ }
1407
+ .tds-dropdown-item:has([slot="description"]){
1408
+ display:grid;
1409
+ grid-template-areas:"prefix label suffix" "prefix description suffix";
1410
+ grid-template-columns:auto 1fr auto;
1411
+ }
1412
+ .tds-dropdown-item:has([slot="description"]) [slot="prefix"]{
1413
+ grid-area:prefix;
1414
+ }
1415
+ .tds-dropdown-item:has([slot="description"]) [slot="label"]{
1416
+ grid-area:label;
1417
+ }
1418
+ .tds-dropdown-item:has([slot="description"]) [slot="description"]{
1419
+ grid-area:description;
1420
+ }
1421
+ .tds-dropdown-item:has([slot="description"]) [slot="suffix"]{
1422
+ grid-area:suffix;
1423
+ }
1424
+ .tds-dropdown-section:not(:first-child){
1425
+ margin-block-start:var(--t-spacing-half);
1426
+ }
1427
+ .tds-dropdown-section-label{
1428
+ padding-block:var(--t-spacing-1);
1429
+ padding-inline:var(--t-spacing-1);
1430
+ font-size:var(--t-font-size-sm);
1431
+ font-weight:var(--t-font-weight-semibold);
1432
+ color:var(--t-text-color-secondary);
1433
+ }
1434
+ .tds-dropdown-separator{
1435
+ margin-block:var(--t-spacing-half);
1436
+ margin-inline:0;
1437
+ border:0;
1438
+ border-top:1px solid var(--t-border-color);
1439
+ }
1440
+
1441
+ .tds-combo-box{
1442
+ --tds-combo-box-button-offset:4px;
1443
+ }
1444
+
1445
+ .tds-combo-box[data-open] .tds-combo-box-button > svg{
1446
+ transform:rotate(.5turn);
1447
+ }
1448
+
1449
+ .tds-combo-box--lg{
1450
+ --tds-combo-box-button-offset:5px;
1451
+ }
1452
+
1453
+ .tds-combo-box-field:has([readonly]) .tds-combo-box-button{
1454
+ display:none;
1455
+ }
1456
+
1457
+ .tds-combo-box-input{
1494
1458
  display:flex;
1495
1459
  flex:1;
1496
1460
  align-items:center;
@@ -1656,572 +1620,724 @@
1656
1620
  color:var(--t-text-color-secondary);
1657
1621
  }
1658
1622
 
1659
- .tds-dropdown-popover{
1660
- min-inline-size:10rem;
1661
- max-inline-size:24rem;
1662
- padding:var(--t-spacing-1);
1663
- overflow:auto;
1664
- overscroll-behavior:none;
1665
- -webkit-user-select:none;
1666
- -moz-user-select:none;
1667
- user-select:none;
1668
- outline:0;
1669
- scrollbar-color:#0004 var(--t-surface-color-card);
1670
- scrollbar-width:thin;
1671
- background:var(--t-surface-color-card);
1672
- background-clip:padding-box;
1673
- border:1px solid var(--t-border-color);
1623
+ .tds-date-picker{
1624
+ --tds-date-picker-button-offset:4px;
1625
+ }
1626
+
1627
+ .tds-date-picker--lg{
1628
+ --tds-date-picker-button-offset:5px;
1629
+ }
1630
+
1631
+ .tds-date-picker-field[data-focus-within]:has(.tds-date-picker-button[data-focused]){
1632
+ outline-color:transparent;
1633
+ outline-offset:0;
1634
+ border-color:var(--tds-field-border-color);
1635
+ }
1636
+
1637
+ .tds-date-picker-field:has(.tds-date-picker-input[data-readonly]) .tds-date-picker-button{
1638
+ display:none;
1639
+ }
1640
+
1641
+ .tds-date-picker-input{
1642
+ flex:1;
1643
+ padding-block:var(--tds-field-padding-block);
1644
+ padding-inline:var(--tds-field-padding-inline);
1645
+ overflow:auto clip;
1646
+ font-variant-numeric:tabular-nums;
1647
+ text-wrap:nowrap;
1648
+ scrollbar-width:none;
1649
+ }
1650
+
1651
+ .tds-date-picker-input:has( + .tds-date-picker-button){
1652
+ padding-inline-end:0;
1653
+ }
1654
+
1655
+ .tds-date-picker-button{
1656
+ flex-shrink:0;
1657
+ align-self:center;
1658
+ inline-size:calc(var(--tds-field-min-height) - (var(--tds-date-picker-button-offset) * 2));
1659
+ block-size:calc(var(--tds-field-min-height) - (var(--tds-date-picker-button-offset) * 2));
1660
+ padding:0;
1661
+ margin-inline-end:var(--tds-date-picker-button-offset);
1662
+ }
1663
+
1664
+ .tds-date-picker-popover{
1665
+ --tds-date-picker-popover-font-size:var(--t-font-size-md);
1666
+ --tds-date-picker-popover-padding:var(--t-spacing-1-half);
1667
+ --tds-date-picker-popover-background-color:var(--t-surface-color-card);
1668
+ --tds-date-picker-popover-shadow:hsl(0, 0%, 0%, .05) 0 10px 15px -3px, hsl(0, 0%, 0%, .05) 0 4px 6px -4px;
1669
+ --tds-date-picker-popover-interactive-timing-function:var(--t-ease-in-out);
1670
+ --tds-date-picker-popover-interactive-duration:var(--t-duration-200);
1671
+ --tds-date-picker-popover-interactive-property:color, background-color, border-color;
1672
+
1673
+ position:relative;
1674
+ overflow:hidden;
1675
+ background-color:var(--tds-date-picker-popover-background-color);
1676
+ border:var(--t-border-width) solid var(--t-border-color);
1674
1677
  border-radius:var(--t-border-radius);
1675
- box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
1678
+ box-shadow:var(--tds-date-picker-popover-shadow);
1676
1679
  }
1677
- .tds-dropdown-popover[data-entering]{
1678
- animation:tds-dropdown-popover var(--t-duration-300) var(--t-ease-out);
1680
+
1681
+ .tds-date-picker-popover[data-entering]{
1682
+ animation:tds-date-picker-popover var(--t-duration-300) var(--t-ease-out);
1679
1683
  }
1680
- .tds-dropdown-popover[data-exiting]{
1681
- animation:tds-dropdown-popover var(--t-duration-200) var(--t-ease-in) reverse;
1684
+
1685
+ .tds-date-picker-popover[data-exiting]{
1686
+ animation:tds-date-picker-popover var(--t-duration-200) var(--t-ease-in) reverse;
1682
1687
  }
1683
- .tds-dropdown-popover[data-entering],.tds-dropdown-popover[data-exiting]{
1688
+
1689
+ .tds-date-picker-popover[data-entering],.tds-date-picker-popover[data-exiting]{
1684
1690
  will-change:opacity, transform;
1685
1691
  }
1686
- @keyframes tds-dropdown-popover{
1692
+
1693
+ @keyframes tds-date-picker-popover{
1687
1694
  from{
1688
1695
  opacity:0;
1689
1696
  transform:translateY(-8px);
1690
1697
  }
1691
1698
  }
1699
+
1692
1700
  @media (prefers-reduced-motion: reduce){
1693
- .tds-dropdown-popover[data-entering],.tds-dropdown-popover[data-exiting]{
1701
+ .tds-date-picker-popover[data-entering],.tds-date-picker-popover[data-exiting]{
1694
1702
  animation:none;
1695
1703
  }
1696
1704
  }
1697
- .tds-dropdown-popover [role="menu"]{
1705
+
1706
+ .tds-date-picker-overlay{
1707
+ position:absolute;
1708
+ inset:0;
1709
+ z-index:1;
1710
+ display:flex;
1711
+ background-color:var(--tds-date-picker-popover-background-color);
1712
+ }
1713
+
1714
+ .tds-date-picker-overlay-list{
1715
+ display:grid;
1716
+ flex:1;
1717
+ grid-template-columns:repeat(3, 1fr);
1718
+ gap:var(--t-spacing-half);
1719
+ padding-inline:var(--tds-date-picker-popover-padding);
1698
1720
  outline:0;
1721
+ scrollbar-color:var(--t-fill-color-transparency-dark-030) transparent;
1722
+ scrollbar-width:thin;
1699
1723
  }
1700
- .tds-dropdown-item{
1701
- --tds-dropdown-item-color:var(--t-text-color);
1702
1724
 
1725
+ .tds-date-picker-overlay--month .tds-date-picker-overlay-list{
1726
+ grid-template-rows:repeat(4, 1fr);
1727
+ padding-bottom:var(--tds-date-picker-popover-padding);
1728
+ }
1729
+
1730
+ .tds-date-picker-overlay--year .tds-date-picker-overlay-list{
1731
+ grid-auto-rows:var(--t-container-size-xl);
1732
+ padding-right:var(--t-spacing-1);
1733
+ overflow-y:auto;
1734
+ scroll-padding-block:calc(var(--t-focus-ring-width) + var(--t-focus-ring-offset));
1735
+ }
1736
+
1737
+ .tds-date-picker-overlay-cell{
1703
1738
  display:flex;
1704
- gap:var(--t-spacing-1);
1705
1739
  align-items:center;
1706
- padding-block:var(--t-spacing-1);
1707
- padding-inline:var(--t-spacing-2);
1708
- font-size:1rem;
1709
- color:var(--tds-dropdown-item-color);
1710
- text-decoration:none;
1711
- cursor:default;
1740
+ justify-content:center;
1741
+ font-family:inherit;
1742
+ font-size:var(--tds-date-picker-popover-font-size);
1743
+ color:var(--t-text-color);
1744
+ cursor:pointer;
1712
1745
  outline:0;
1713
- border-radius:var(--t-border-radius);
1746
+ background-color:transparent;
1747
+ border:0;
1748
+ border-radius:var(--t-border-radius-md);
1749
+ transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
1750
+ transition-duration:var(--t-duration-100);
1751
+ transition-property:var(--tds-date-picker-popover-interactive-property);
1714
1752
  }
1715
- .tds-dropdown-item[data-hovered]:not([data-disabled]),.tds-dropdown-item[data-focus-visible]{
1716
- background:var(--t-fill-color-neutral-070);
1717
- }
1718
- .tds-dropdown-item[data-pressed]:not([data-disabled]){
1719
- background:var(--t-fill-color-neutral-060);
1753
+
1754
+ .tds-date-picker-overlay-cell[data-hovered]{
1755
+ background-color:var(--t-fill-color-button-neutral-outline-hover);
1720
1756
  }
1721
- .tds-dropdown-item[data-disabled]{
1722
- --tds-dropdown-item-color:var(--t-form-color-disabled);
1723
1757
 
1724
- cursor:not-allowed;
1758
+ .tds-date-picker-overlay-cell[data-pressed]{
1759
+ background-color:var(--t-fill-color-button-neutral-outline-active);
1725
1760
  }
1726
- .tds-dropdown-item--destructive{
1727
- --tds-dropdown-item-color:var(--t-text-color-status-error);
1728
- }
1729
- .tds-dropdown-item--staff-only{
1730
- --tds-dropdown-item-color:var(--t-fill-color-product-staff);
1731
- }
1732
- a.tds-dropdown-item:is(:hover, :active){
1733
- color:var(--tds-dropdown-item-color);
1734
- }
1735
- .tds-dropdown-item [slot="prefix"],
1736
- .tds-dropdown-item [slot="suffix"]{
1737
- flex-shrink:0;
1738
- }
1739
- .tds-dropdown-item [slot="label"]{
1761
+
1762
+ .tds-date-picker-overlay-cell[data-selected]{
1763
+ font-weight:var(--t-font-weight-semibold);
1764
+ color:var(--t-text-color-inverted);
1765
+ background-color:var(--t-fill-color-interaction);
1766
+ }
1767
+
1768
+ .tds-date-picker-overlay-cell[data-focus-visible]{
1769
+ outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
1770
+ }
1771
+
1772
+ .tds-date-picker-overlay-cell[data-selected][data-focus-visible]{
1773
+ outline-offset:var(--t-focus-ring-offset);
1774
+ }
1775
+
1776
+ .tds-date-picker-calendar-heading{
1777
+ display:flex;
1740
1778
  flex:1;
1741
- min-width:0;
1742
- overflow:hidden;
1743
- text-overflow:ellipsis;
1744
- white-space:nowrap;
1745
- }
1746
- .tds-dropdown-item [slot="description"]{
1747
- font-size:var(--t-font-size-sm);
1748
- color:var(--t-text-color-secondary);
1749
- }
1750
- .tds-dropdown-item:has([slot="description"]){
1751
- display:grid;
1752
- grid-template-areas:"prefix label suffix" "prefix description suffix";
1753
- grid-template-columns:auto 1fr auto;
1754
- }
1755
- .tds-dropdown-item:has([slot="description"]) [slot="prefix"]{
1756
- grid-area:prefix;
1779
+ gap:var(--t-spacing-1);
1780
+ align-items:center;
1781
+ justify-content:flex-start;
1782
+ padding-inline-start:4px;
1757
1783
  }
1758
- .tds-dropdown-item:has([slot="description"]) [slot="label"]{
1759
- grid-area:label;
1784
+
1785
+ .tds-date-picker-calendar-overlay-trigger{
1786
+ --_background-color:transparent;
1787
+ position:relative;
1788
+ padding:0;
1789
+ font-family:inherit;
1790
+ font-size:var(--tds-date-picker-popover-font-size);
1791
+ font-weight:var(--t-font-weight-semibold);
1792
+ font-feature-settings:"ss01", "ss02";
1793
+ color:var(--t-text-color);
1794
+ cursor:pointer;
1795
+ outline:0;
1796
+ background-color:transparent;
1797
+ border:0;
1798
+ border-radius:var(--t-border-radius-md);
1799
+ isolation:isolate;
1800
+ transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
1801
+ transition-duration:var(--tds-date-picker-popover-interactive-duration);
1802
+ transition-property:var(--tds-date-picker-popover-interactive-property);
1760
1803
  }
1761
- .tds-dropdown-item:has([slot="description"]) [slot="description"]{
1762
- grid-area:description;
1804
+
1805
+ .tds-date-picker-calendar-overlay-trigger::before{
1806
+ position:absolute;
1807
+ inset:calc(var(--t-spacing-half) * -1);
1808
+ z-index:-1;
1809
+ pointer-events:inherit;
1810
+ content:"";
1811
+ background-color:var(--_background-color);
1812
+ border-radius:inherit;
1813
+ }
1814
+
1815
+ .tds-date-picker-calendar-overlay-trigger[data-hovered]{
1816
+ --_background-color:var(--t-fill-color-button-neutral-outline-hover);
1817
+ }
1818
+
1819
+ .tds-date-picker-calendar-overlay-trigger[data-pressed]{
1820
+ --_background-color:var(--t-fill-color-button-neutral-outline-active);
1821
+ }
1822
+
1823
+ .tds-date-picker-calendar-overlay-trigger[data-focus-visible]{
1824
+ outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
1825
+ outline-offset:var(--t-focus-ring-offset);
1826
+ }
1827
+
1828
+ .tds-date-picker-calendar{
1829
+ inline-size:-moz-fit-content;
1830
+ inline-size:fit-content;
1831
+ font-size:var(--tds-date-picker-popover-font-size);
1763
1832
  }
1764
- .tds-dropdown-item:has([slot="description"]) [slot="suffix"]{
1765
- grid-area:suffix;
1833
+
1834
+ .tds-date-picker-calendar-body{
1835
+ position:relative;
1836
+ padding:var(--tds-date-picker-popover-padding);
1837
+ padding-block-start:0;
1766
1838
  }
1767
- .tds-dropdown-section:not(:first-child){
1768
- margin-block-start:var(--t-spacing-half);
1839
+
1840
+ .tds-date-picker-calendar-header{
1841
+ display:flex;
1842
+ align-items:center;
1843
+ justify-content:space-between;
1844
+ padding:var(--tds-date-picker-popover-padding);
1769
1845
  }
1770
- .tds-dropdown-section-label{
1771
- padding-block:var(--t-spacing-1);
1772
- padding-inline:var(--t-spacing-1);
1773
- font-size:var(--t-font-size-sm);
1846
+
1847
+ .tds-date-picker-calendar-title{
1848
+ padding:var(--t-spacing-half) var(--t-spacing-1);
1849
+ font-size:var(--tds-date-picker-popover-font-size);
1774
1850
  font-weight:var(--t-font-weight-semibold);
1775
- color:var(--t-text-color-secondary);
1776
1851
  }
1777
- .tds-dropdown-separator{
1778
- margin-block:var(--t-spacing-half);
1779
- margin-inline:0;
1852
+
1853
+ .tds-date-picker-calendar-nav{
1854
+ display:flex;
1855
+ align-items:center;
1856
+ justify-content:center;
1857
+ padding:var(--t-spacing-half);
1858
+ font-size:.875em;
1859
+ color:var(--t-text-color);
1860
+ cursor:pointer;
1861
+ outline:0;
1862
+ background-color:transparent;
1780
1863
  border:0;
1781
- border-top:1px solid var(--t-border-color);
1864
+ border-radius:var(--t-border-radius-md);
1865
+ transition-timing-function:var(--tds-date-picker-popover-interactive-timing-function);
1866
+ transition-duration:var(--tds-date-picker-popover-interactive-duration);
1867
+ transition-property:var(--tds-date-picker-popover-interactive-property);
1782
1868
  }
1783
1869
 
1784
- .tds-checkbox{
1785
- --tds-checkbox-font-size:var(--t-font-size-md);
1786
- --tds-checkbox-cursor:pointer;
1787
- --tds-checkbox-line-height:1.4;
1788
- --tds-checkbox-transition-property:background-color, border-color;
1870
+ .tds-date-picker-calendar-nav[data-hovered]{
1871
+ background-color:var(--t-fill-color-button-neutral-outline-hover);
1872
+ }
1789
1873
 
1790
- --tds-checkbox-input-size:var(--t-element-size-md);
1791
- --tds-checkbox-input-border-radius:var(--t-border-radius-sm);
1792
- --tds-checkbox-input-border-color:var(--t-form-border-color);
1793
- --tds-checkbox-input-background-color:var(--t-form-background-color);
1874
+ .tds-date-picker-calendar-nav[data-pressed]{
1875
+ background-color:var(--t-fill-color-button-neutral-outline-active);
1876
+ }
1794
1877
 
1795
- --tds-checkbox-input-icon:none;
1796
- --tds-checkbox-input-icon-visibility:hidden;
1797
- --tds-checkbox-input-icon-opacity:0;
1798
- --tds-checkbox-input-icon-fill:var(--t-icon-color-inverted);
1878
+ .tds-date-picker-calendar-nav[data-focus-visible]{
1879
+ outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
1880
+ outline-offset:var(--t-focus-ring-offset);
1881
+ }
1799
1882
 
1800
- --tds-checkbox-label-color:var(--t-form-color);
1883
+ .tds-date-picker-calendar-nav[data-disabled]{
1884
+ color:var(--t-text-color-disabled);
1885
+ cursor:not-allowed;
1886
+ }
1801
1887
 
1802
- --tds-checkbox-description-font-size:var(--t-font-size-sm);
1803
- --tds-checkbox-description-line-height:1.35;
1804
- --tds-checkbox-description-color:var(--t-text-color-secondary);
1805
- --tds-checkbox-description-invalid-icon-display:none;
1888
+ .tds-date-picker-calendar-grid{
1889
+ font-feature-settings:"ss01", "ss02";
1890
+ border-collapse:collapse;
1891
+ }
1892
+
1893
+ .tds-date-picker-calendar-grid :where(thead,tbody,tr,td,th){
1894
+ padding:0;
1895
+ border:0;
1896
+ }
1897
+
1898
+ .tds-date-picker-calendar-header-cell{
1899
+ padding-block-end:var(--t-spacing-1);
1900
+ font-size:.875em;
1901
+ font-weight:var(--t-font-weight-medium);
1902
+ color:var(--t-text-color-secondary);
1903
+ text-align:center;
1904
+ -webkit-user-select:none;
1905
+ -moz-user-select:none;
1906
+ user-select:none;
1907
+ }
1806
1908
 
1909
+ .tds-date-picker-calendar-cell-button{
1807
1910
  position:relative;
1808
- display:inline-grid;
1809
- grid-template-columns:auto;
1810
- grid-auto-columns:1fr;
1811
- gap:var(--t-spacing-fourth) 0;
1812
- line-height:var(--tds-checkbox-line-height);
1911
+ display:flex;
1912
+ align-items:center;
1913
+ justify-content:center;
1914
+ inline-size:2.25em;
1915
+ block-size:2.25em;
1916
+ color:var(--t-text-color);
1917
+ cursor:pointer;
1813
1918
  -webkit-user-select:none;
1814
1919
  -moz-user-select:none;
1815
1920
  user-select:none;
1921
+ outline:0;
1816
1922
  }
1817
1923
 
1818
- .tds-checkbox label{
1819
- grid-area:1 / 2;
1820
- padding-inline-start:var(--t-spacing-1);
1821
- font-size:var(--tds-checkbox-font-size);
1822
- font-weight:var(--t-font-weight-normal);
1823
- color:var(--tds-checkbox-label-color);
1824
- cursor:var(--tds-checkbox-cursor);
1924
+ .tds-date-picker-calendar-cell-button::before{
1925
+ position:absolute;
1926
+ inset:0;
1927
+ z-index:-1;
1928
+ content:"";
1929
+ background-color:var(--_background-color);
1930
+ border-radius:50%;
1825
1931
  }
1826
1932
 
1827
- .tds-checkbox tds-indeterminate{
1828
- display:flex;
1933
+ .tds-date-picker-calendar-cell-button[data-today]::before{
1934
+ box-shadow:inset 0 0 0 1.5px var(--t-border-color);
1935
+ }
1936
+
1937
+ .tds-date-picker-calendar-cell-button[data-outside-month]{
1938
+ display:none;
1829
1939
  }
1830
1940
 
1831
- .tds-checkbox input[type="checkbox"]{
1832
- position:relative;
1833
- width:1em;
1834
- height:1em;
1835
- margin:calc((1lh - 1em) / 2) 0 0;
1836
- font-size:var(--tds-checkbox-font-size);
1837
- line-height:inherit;
1838
- -webkit-appearance:none;
1839
- -moz-appearance:none;
1840
- appearance:none;
1841
- cursor:var(--tds-checkbox-cursor);
1842
- background-color:var(--tds-checkbox-input-background-color);
1843
- border:var(--t-form-border-width) solid var(--tds-checkbox-input-border-color);
1844
- border-radius:var(--tds-checkbox-input-border-radius);
1845
- transition-timing-function:var(--t-ease-in-out);
1846
- transition-duration:var(--t-duration-200);
1847
- transition-property:var(--tds-checkbox-transition-property);
1941
+ .tds-date-picker-calendar-cell-button[data-hovered]{
1942
+ --_background-color:var(--t-fill-color-button-neutral-outline-hover);
1848
1943
  }
1849
1944
 
1850
- :is(.tds-checkbox input[type="checkbox"])::before{
1851
- position:absolute;
1852
- top:50%;
1853
- left:50%;
1854
- visibility:var(--tds-checkbox-input-icon-visibility);
1855
- width:100%;
1856
- height:100%;
1857
- content:"";
1858
- background-color:var(--tds-checkbox-input-icon-fill);
1859
- border-radius:var(--tds-checkbox-input-border-radius);
1860
- opacity:var(--tds-checkbox-input-icon-opacity);
1861
- -webkit-mask-image:var(--tds-checkbox-input-icon);
1862
- mask-image:var(--tds-checkbox-input-icon);
1863
- -webkit-mask-repeat:no-repeat;
1864
- mask-repeat:no-repeat;
1865
- -webkit-mask-size:contain;
1866
- mask-size:contain;
1867
- transform:translate(-50%, -50%);
1868
- }
1869
-
1870
- :is(.tds-checkbox input[type="checkbox"]):hover:not(:disabled){
1871
- --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
1872
- --tds-checkbox-input-background-color:var(--t-fill-color-button-interaction-outline-hover);
1873
- }
1874
-
1875
- :is(.tds-checkbox input[type="checkbox"]):focus-visible{
1876
- outline:var(--t-focus-ring-outline);
1877
- outline-offset:var(--t-focus-ring-offset);
1878
- }
1879
-
1880
- :is(.tds-checkbox input[type="checkbox"]):disabled{
1881
- pointer-events:none;
1882
- }
1883
-
1884
- @media (prefers-reduced-motion: reduce){
1885
-
1886
- .tds-checkbox input[type="checkbox"]{
1887
- --tds-checkbox-transition-property:none;
1945
+ .tds-date-picker-calendar-cell-button[data-pressed]{
1946
+ --_background-color:var(--t-fill-color-button-neutral-outline-active);
1888
1947
  }
1889
- }
1890
1948
 
1891
- .tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate){
1892
- --tds-checkbox-input-background-color:var(--t-fill-color-control);
1893
- --tds-checkbox-input-border-color:var(--t-border-color-control-info);
1894
- --tds-checkbox-input-icon-visibility:visible;
1895
- --tds-checkbox-input-icon-opacity:1;
1949
+ .tds-date-picker-calendar-cell-button[data-selected]{
1950
+ --_background-color:var(--t-fill-color-interaction);
1951
+ font-weight:var(--t-font-weight-semibold);
1952
+ color:var(--t-text-color-inverted);
1953
+ border-color:transparent;
1896
1954
  }
1897
1955
 
1898
- :is(.tds-checkbox:has(input:checked),.tds-checkbox:has(input:indeterminate)) input:hover:not(:disabled){
1899
- --tds-checkbox-input-border-color:var(--t-fill-color-interaction-hover);
1900
- --tds-checkbox-input-background-color:var(--t-fill-color-interaction-hover);
1901
- }
1956
+ .tds-date-picker-calendar-cell-button[data-unavailable]{
1957
+ color:var(--t-text-color-disabled);
1958
+ text-decoration:line-through;
1959
+ cursor:not-allowed;
1960
+ }
1902
1961
 
1903
- .tds-checkbox:has(input:checked){
1904
- --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjUwMjAxIDExLjQyOTNMMy42NzM3NCA4LjM5MkMzLjUxNjE2IDguMjI0ODkgMy41MTYxNiA3Ljk1Mjg5IDMuNjczNzQgNy43ODRMNC4yNDUwNSA3LjE3Njg5QzQuNDAyNjIgNy4wMDk3OCA0LjY1ODc4IDcuMDA5NzggNC44MTYzNiA3LjE3Njg5TDYuNzg4MDcgOS4zMDMxMUwxMS4xODMyIDQuNTY5NzhDMTEuMzQwOCA0LjQwMjY2IDExLjU5NjkgNC40MDI2NiAxMS43NTQ1IDQuNTY5NzhMMTIuMzI1OCA1LjE3Nzc4QzEyLjQ4MzQgNS4zNDQ4OSAxMi40ODM0IDUuNjE3NzggMTIuMzI1OCA1Ljc4NEw3LjA3MzMyIDExLjQyOTNDNi45MTU3NCAxMS41OTY0IDYuNjU5NTggMTEuNTk2NCA2LjUwMjAxIDExLjQyOTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
1962
+ .tds-date-picker-calendar-cell-button[data-disabled]{
1963
+ color:var(--t-text-color-disabled);
1905
1964
  }
1906
1965
 
1907
- .tds-checkbox:has(input:indeterminate){
1908
- --tds-checkbox-input-icon:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMy41NTU1NiIgeT0iNy4xMTExMSIgd2lkdGg9IjguODg4ODkiIGhlaWdodD0iMS43Nzc3OCIgcng9IjAuODg4ODg5IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
1966
+ .tds-date-picker-calendar-cell-button[data-focus-visible]{
1967
+ outline:var(--t-focus-ring-width) solid var(--t-focus-ring-color);
1968
+ outline-offset:-2px;
1909
1969
  }
1910
1970
 
1911
- .tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid{
1912
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1913
- --tds-checkbox-description-color:var(--t-text-color-status-error);
1914
- --tds-checkbox-description-invalid-icon-display:inline-block;
1971
+ .tds-date-picker-calendar-cell-button[data-focus-visible][data-selected]{
1972
+ outline-offset:var(--t-focus-ring-offset);
1915
1973
  }
1916
1974
 
1917
- :is(.tds-checkbox:has(input:user-invalid),.tds-checkbox.tds-checkbox--invalid) input:hover:not(:disabled){
1918
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1919
- --tds-checkbox-input-background-color:var(--t-form-background-color-error);
1920
- }
1975
+ .tds-date-picker-popover--lg{
1976
+ --tds-date-picker-popover-font-size:var(--t-font-size-lg);
1977
+ }
1921
1978
 
1922
- :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{
1923
- --tds-checkbox-input-border-color:var(--t-form-border-color-error);
1924
- --tds-checkbox-input-background-color:var(--t-form-border-color-error);
1925
- }
1926
1979
 
1927
- :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){
1928
- --tds-checkbox-input-border-color:var(--t-form-border-color-error-hover);
1929
- --tds-checkbox-input-background-color:var(--t-form-border-color-error-hover);
1930
- }
1980
+ @media (prefers-reduced-motion: no-preference){
1931
1981
 
1932
- .tds-checkbox:has(input:required) label::after{
1933
- margin-left:.25ch;
1934
- color:var(--t-text-color-status-error);
1935
- content:"*";
1936
- }
1982
+ :root{
1983
+ interpolate-size:allow-keywords;
1984
+ }
1985
+ }
1937
1986
 
1938
- .tds-checkbox:has(input:disabled){
1939
- --tds-checkbox-input-background-color:var(--t-form-background-color-disabled);
1940
- --tds-checkbox-input-border-color:var(--t-form-border-color-disabled);
1987
+ @layer tds-component{
1988
+ tds-sidenav,
1989
+ .tds-sidenav{
1990
+ --tds-sidenav-indent:12px;
1991
+ --tds-sidenav-item-depth:0;
1941
1992
 
1942
- --tds-checkbox-label-color:var(--t-form-color-disabled);
1943
- --tds-checkbox-description-color:var(--t-form-color-disabled);
1944
- --tds-checkbox-cursor:not-allowed;
1945
- }
1993
+ --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
1946
1994
 
1947
- .tds-checkbox:has(input:disabled) input:checked,.tds-checkbox:has(input:disabled) input:indeterminate{
1948
- --tds-checkbox-input-background-color:var(--t-border-color-control-disabled);
1949
- }
1995
+ --tds-sidenav-collapse-transition-enter:opacity var(--t-duration-300) var(--t-ease-out), transform var(--t-duration-300) var(--t-ease-out), display var(--t-duration-300) allow-discrete, overlay var(--t-duration-300) allow-discrete;
1996
+ --tds-sidenav-collapse-transition-exit:opacity var(--t-duration-200) var(--t-ease-in), display var(--t-duration-200) allow-discrete, overlay var(--t-duration-200) allow-discrete;
1997
+ --tds-sidenav-collapse-closed-opacity:0;
1998
+ --tds-sidenav-collapse-open-opacity:1;
1999
+ --tds-sidenav-collapse-closed-transform:translateY(-8px);
2000
+ --tds-sidenav-collapse-open-transform:translateY(0);
1950
2001
 
1951
- .tds-checkbox-description{
1952
- display:flex;
1953
- grid-area:2 / 2;
1954
- gap:var(--t-spacing-half);
1955
- align-items:flex-start;
1956
- padding-inline-start:var(--t-spacing-1);
1957
- margin:0;
1958
- font-size:var(--tds-checkbox-description-font-size);
1959
- line-height:var(--tds-checkbox-description-line-height);
1960
- color:var(--tds-checkbox-description-color);
1961
- cursor:text;
1962
- }
2002
+ --tds-sidenav-item-icon-size:var(--t-element-size-md);
2003
+ --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
2004
+ --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
2005
+ --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
1963
2006
 
1964
- .tds-checkbox-description .tds-checkbox-description-invalid-icon{
1965
- display:var(--tds-checkbox-description-invalid-icon-display);
1966
- flex-shrink:0;
1967
- margin-top:calc(.5lh - .5em);
1968
- line-height:var(--tds-checkbox-description-line-height);
1969
- }
2007
+ --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
2008
+ --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
2009
+ --tds-sidenav-item-nested-background-selected:transparent;
1970
2010
 
1971
- .tds-checkbox--sm{
1972
- --tds-checkbox-line-height:1.35;
1973
- --tds-checkbox-input-size:var(--t-element-size-sm);
1974
- --tds-checkbox-font-size:var(--t-font-size-sm);
1975
- --tds-checkbox-description-font-size:var(--t-font-size-xs);
1976
- --tds-checkbox-description-line-height:1.3;
1977
- }
2011
+ --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
2012
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
2013
+ --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
1978
2014
 
2015
+ --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
2016
+ --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
2017
+ }
1979
2018
 
1980
- :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{
1981
- -webkit-appearance:none;
1982
- appearance:none;
2019
+ @media (prefers-reduced-motion: reduce){
2020
+ tds-sidenav,
2021
+ .tds-sidenav{
2022
+ --tds-sidenav-collapse-transition-enter:none;
2023
+ --tds-sidenav-collapse-transition-exit:none;
2024
+ --tds-sidenav-collapse-closed-transform:none;
2025
+ --tds-sidenav-collapse-open-transform:none;
2026
+ }
1983
2027
  }
1984
2028
 
1985
- [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
1986
- inline-size:1em;
1987
- block-size:2em;
1988
- }
2029
+ .tds-sidenav--theme-gray{
2030
+ --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
2031
+ --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
2032
+ --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
2033
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
2034
+ --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
2035
+ }
2036
+ }
1989
2037
 
1990
- @supports (field-sizing: content){
1991
- .tds-input--auto-width{
1992
- inline-size:-moz-fit-content;
1993
- inline-size:fit-content;
1994
- min-inline-size:min(100%, 122px);
2038
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section){
2039
+ display:flex;
1995
2040
  }
1996
2041
 
1997
- .tds-input--auto-width input{
1998
- field-sizing:content;
1999
- inline-size:auto;
2042
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
2043
+ flex-direction:column;
2044
+ gap:var(--t-spacing-half);
2045
+ width:100%;
2000
2046
  }
2001
- }
2002
2047
 
2003
- .tds-field{
2004
- --tds-field-label-color:var(--t-text-color);
2005
- --tds-field-label-cursor:default;
2006
- --tds-field-label-font-size:var(--t-font-size-md);
2007
- --tds-field-description-color:var(--t-text-color-secondary);
2008
- --tds-field-description-cursor:text;
2009
- --tds-field-description-font-size:var(--t-font-size-sm);
2010
- --tds-field-description-line-height:1.35;
2011
- --tds-field-description-invalid-icon-display:none;
2012
- --tds-field-border-color:var(--t-form-border-color);
2013
- --tds-field-border-color-hover:var(--t-form-border-color-hover);
2014
- --tds-field-border-color-active:var(--t-form-border-color-focus);
2015
- --tds-field-background-color:var(--t-form-background-color);
2016
- --tds-field-color:var(--t-form-color);
2017
- --tds-field-placeholder-color:var(--t-form-placeholder-color);
2018
- --tds-field-font-size:var(--t-font-size-md);
2019
- --tds-field-min-height:var(--t-container-size-md);
2020
- --tds-field-padding-block:6px;
2021
- --tds-field-padding-inline:var(--t-spacing-1);
2048
+ .tds-sidenav-section-list{
2049
+ width:100%;
2050
+ padding:0;
2051
+ margin:0;
2052
+ list-style:none;
2053
+ }
2022
2054
 
2023
- position:relative;
2055
+ .tds-sidenav-section-header{
2024
2056
  display:flex;
2025
- flex-direction:column;
2026
- gap:var(--t-spacing-half);
2057
+ align-items:baseline;
2058
+ justify-content:space-between;
2059
+ padding-top:var(--t-spacing-2);
2027
2060
  }
2028
2061
 
2029
- .tds-field:has(input:disabled):not([data-disabled]),.tds-field:has(select:disabled):not([data-disabled]),.tds-field:has(textarea:disabled):not([data-disabled]){
2030
- --tds-field-label-color:var(--t-form-color-disabled);
2031
- --tds-field-label-cursor:not-allowed;
2032
- --tds-field-description-color:var(--t-form-color-disabled);
2033
- --tds-field-description-cursor:not-allowed;
2062
+ .tds-sidenav-section-header h2{
2063
+ margin:0;
2064
+ font-size:var(--t-font-size-sm);
2065
+ font-weight:var(--t-font-weight-semibold);
2066
+ line-height:1.35;
2067
+ color:var(--t-text-color-secondary);
2068
+ text-transform:uppercase;
2034
2069
  }
2035
2070
 
2036
- .tds-field:has([required],[aria-required="true"]) .tds-field-label::after{
2037
- margin-left:.25ch;
2038
- color:var(--t-text-color-status-error);
2039
- content:"*" / "";
2040
- }
2041
-
2042
- .tds-field:has([aria-invalid="true"],:user-invalid){
2043
- --tds-field-description-color:var(--t-text-color-status-error);
2044
- --tds-field-description-invalid-icon-display:inline-block;
2071
+ .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
2072
+ padding-top:0;
2045
2073
  }
2046
2074
 
2047
- .tds-field[data-required] .tds-field-label::after{
2048
- margin-left:.25ch;
2049
- color:var(--t-text-color-status-error);
2050
- content:"*" / "";
2075
+ .tds-sidenav-section-header [slot="label-actions"]{
2076
+ display:flex;
2077
+ gap:var(--t-spacing-half);
2078
+ align-items:center;
2051
2079
  }
2052
2080
 
2053
- .tds-field[data-invalid]{
2054
- --tds-field-border-color:var(--t-form-border-color-error);
2055
- --tds-field-border-color-hover:var(--t-form-border-color-error-hover);
2056
- --tds-field-border-color-active:var(--t-form-border-color-error-hover);
2057
- --tds-field-background-color:var(--t-form-background-color-error);
2058
- --tds-field-description-color:var(--t-text-color-status-error);
2059
- --tds-field-description-invalid-icon-display:inline-block;
2060
- }
2061
-
2062
- .tds-field[data-disabled]{
2063
- --tds-field-border-color:var(--t-form-border-color-disabled);
2064
- --tds-field-background-color:var(--t-form-background-color-disabled);
2065
- --tds-field-color:var(--t-form-color-disabled);
2066
- --tds-field-placeholder-color:var(--t-form-color-disabled);
2067
- }
2068
-
2069
- .tds-field[data-disabled] .tds-field-control{
2070
- cursor:not-allowed;
2071
- }
2081
+ .tds-sidenav-section [slot="section-actions"]{
2082
+ display:flex;
2083
+ gap:12px;
2084
+ align-items:center;
2085
+ min-height:42px;
2086
+ padding:var(--t-spacing-1) 0;
2087
+ }
2072
2088
 
2073
- .tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"]){
2074
- --tds-field-label-cursor:pointer;
2089
+ .tds-sidenav-section-list,
2090
+ .tds-sidenav-item{
2091
+ width:100%;
2092
+ padding:0;
2093
+ margin:0;
2094
+ }
2075
2095
 
2076
- display:inline-grid;
2077
- grid-template-columns:auto;
2078
- grid-auto-columns:1fr;
2079
- row-gap:var(--t-spacing-fourth);
2080
- -moz-column-gap:var(--t-spacing-1);
2081
- column-gap:var(--t-spacing-1);
2096
+ .tds-sidenav-item :is(a,button){
2097
+ position:relative;
2098
+ display:flex;
2099
+ gap:12px;
2100
+ align-items:center;
2101
+ width:100%;
2102
+ padding:12px;
2103
+ overflow:hidden;
2104
+ font-size:var(--t-font-size-sm);
2105
+ line-height:18px;
2106
+ color:var(--t-text-color-headline);
2107
+ white-space:nowrap;
2108
+ text-decoration:none;
2109
+ -webkit-appearance:none;
2110
+ -moz-appearance:none;
2111
+ appearance:none;
2112
+ cursor:pointer;
2113
+ background-color:var(--tds-sidenav-item-background, transparent);
2114
+ border:0;
2115
+ border-radius:var(--t-border-radius);
2116
+ transition:var(--tds-sidenav-item-transition);
2082
2117
  }
2083
2118
 
2084
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])):has(:disabled){
2085
- --tds-field-label-cursor:not-allowed;
2086
- }
2087
-
2088
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) input[type="checkbox"],:is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) input[type="radio"],:is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) tds-indeterminate{
2089
- grid-row:1;
2090
- grid-column:1;
2091
- align-self:center;
2119
+ :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
2120
+ display:block;
2121
+ flex:1;
2122
+ overflow:hidden;
2123
+ text-overflow:ellipsis;
2124
+ text-align:left;
2125
+ white-space:nowrap;
2092
2126
  }
2093
2127
 
2094
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) tds-indeterminate{
2095
- display:flex;
2128
+ :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
2129
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
2130
+ color:var(--t-text-color-headline);
2131
+ text-decoration:none;
2096
2132
  }
2097
2133
 
2098
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) .tds-field-label{
2099
- grid-row:1;
2100
- grid-column:2;
2134
+ :is(.tds-sidenav-item :is(a,button)):active{
2135
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
2101
2136
  }
2102
2137
 
2103
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) .tds-field-description{
2104
- grid-row:2;
2105
- grid-column:2;
2138
+ :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
2139
+ overflow:hidden;
2140
+ color:var(--tds-sidenav-item-icon-color);
2106
2141
  }
2107
2142
 
2108
- .tds-field--sm{
2109
- --tds-field-label-font-size:var(--t-font-size-sm);
2110
- --tds-field-description-font-size:var(--t-font-size-xs);
2111
- --tds-field-description-line-height:1.3;
2112
- }
2113
-
2114
- .tds-field--lg{
2115
- --tds-field-min-height:var(--t-container-size-lg);
2116
- --tds-field-font-size:var(--t-font-size-lg);
2117
- }
2143
+ :is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])),:is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])) svg{
2144
+ display:block;
2145
+ width:var(--tds-sidenav-item-icon-size);
2146
+ height:var(--tds-sidenav-item-icon-size);
2147
+ }
2118
2148
 
2119
- .tds-field-label{
2120
- font-size:var(--tds-field-label-font-size);
2121
- font-weight:var(--t-font-weight-normal);
2122
- color:var(--tds-field-label-color);
2123
- cursor:var(--tds-field-label-cursor);
2124
- }
2149
+ :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
2150
+ --tds-sidenav-indent:19px;
2151
+ }
2125
2152
 
2126
- .tds-field-label--hidden{
2127
- position:absolute;
2128
- width:1px;
2129
- height:1px;
2130
- overflow:hidden;
2131
- white-space:nowrap;
2132
- clip-path:inset(50%);
2133
- }
2153
+ [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
2154
+ visibility:visible;
2155
+ block-size:auto;
2156
+ opacity:1;
2157
+ }
2134
2158
 
2135
- .tds-field-control{
2136
- display:flex;
2137
- align-items:center;
2138
- inline-size:100%;
2139
- min-block-size:var(--tds-field-min-height);
2140
- font-family:inherit;
2141
- font-size:var(--tds-field-font-size);
2142
- line-height:1;
2143
- color:var(--tds-field-color);
2144
- -webkit-appearance:none;
2145
- -moz-appearance:none;
2146
- appearance:none;
2147
- cursor:text;
2148
- outline:var(--t-focus-ring-width) solid transparent;
2149
- outline-color:rgb(from var(--t-focus-ring-color) r g b / 0);
2150
- outline-offset:0;
2151
- background-color:var(--tds-field-background-color);
2152
- border:var(--t-form-border-width) solid var(--tds-field-border-color);
2153
- border-radius:var(--t-form-border-radius);
2154
- transition-timing-function:var(--t-ease-in-out);
2155
- transition-duration:var(--t-duration-200);
2156
- transition-property:background-color, border-color, outline-color, outline-offset;
2157
- }
2159
+ .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
2160
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
2161
+ --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
2158
2162
 
2159
- .tds-field-control[data-hovered]:not([data-focus-visible],[data-focus-within],[data-disabled]){
2160
- border-color:var(--tds-field-border-color-hover);
2163
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
2164
+ font-weight:var(--t-font-weight-semibold);
2161
2165
  }
2162
2166
 
2163
- .tds-field-control[data-focus-within]{
2164
- outline-color:var(--t-focus-ring-color);
2165
- outline-offset:var(--t-focus-ring-offset);
2166
- border-color:var(--tds-field-border-color-active);
2167
+ .tds-sidenav-item:has(.tds-sidenav-section){
2168
+ display:flex;
2169
+ flex-direction:column;
2170
+ gap:var(--t-spacing-half);
2167
2171
  }
2168
2172
 
2169
- .tds-field-control[data-readonly],.tds-field-control:has([data-readonly]),.tds-field-control:has([readonly]){
2170
- --tds-field-border-color:var(--t-form-border-color-readonly);
2171
- --tds-field-border-color-hover:var(--t-form-border-color-readonly);
2172
- --tds-field-background-color:var(--t-form-background-color-readonly);
2173
- color:var(--t-form-color-readonly);
2173
+ .tds-sidenav-item .tds-sidenav-section-list{
2174
+ --tds-sidenav-item-depth:1;
2175
+ gap:0;
2174
2176
  }
2175
2177
 
2176
- [data-focus-within]:is(.tds-field-control[data-readonly],.tds-field-control:has([data-readonly]),.tds-field-control:has([readonly])){
2177
- border-color:var(--t-form-border-color-hover);
2178
+ .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
2179
+ visibility:hidden;
2180
+ block-size:0;
2181
+ overflow-y:clip;
2182
+ opacity:0;
2183
+ transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
2178
2184
  }
2179
2185
 
2180
- .tds-field-description{
2181
- display:flex;
2182
- gap:var(--t-spacing-half);
2183
- align-items:flex-start;
2184
- margin:0;
2185
- font-size:var(--tds-field-description-font-size);
2186
- line-height:var(--tds-field-description-line-height);
2187
- color:var(--tds-field-description-color, var(--t-text-color-secondary));
2188
- cursor:var(--tds-field-description-cursor);
2189
- }
2186
+ :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
2187
+ --tds-sidenav-item-depth:2;
2188
+ }
2190
2189
 
2191
- .tds-field-description .tds-field-description-invalid-icon{
2192
- display:var(--tds-field-description-invalid-icon-display, none);
2193
- flex-shrink:0;
2194
- margin-block-start:calc(.5lh - .5em);
2195
- line-height:var(--tds-field-description-line-height);
2196
- }
2190
+ :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
2191
+ min-height:var(--t-element-size-2xl);
2192
+ padding-block:9px;
2193
+ padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
2194
+ line-height:1;
2195
+ background-color:transparent;
2196
+ }
2197
2197
 
2198
- .tds-field-date-segment{
2199
- padding-inline:var(--tds-field-date-segment-padding-inline, 2px);
2200
- text-align:end;
2201
- text-wrap:nowrap;
2202
- caret-color:transparent;
2203
- border-radius:var(--t-border-radius-sm);
2204
- }
2198
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
2199
+ position:absolute;
2200
+ top:0;
2201
+ bottom:0;
2202
+ left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
2203
+ width:2px;
2204
+ content:"";
2205
+ background-color:var(--tds-sidenav-item-nested-border-color);
2206
+ transition:var(--tds-sidenav-item-transition);
2207
+ }
2205
2208
 
2206
- .tds-field-date-segment[data-placeholder]{
2207
- color:var(--tds-field-placeholder-color);
2208
- }
2209
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
2210
+ position:absolute;
2211
+ inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
2212
+ z-index:-1;
2213
+ height:100%;
2214
+ content:"";
2215
+ background-color:var(--tds-sidenav-item-nested-background);
2216
+ border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
2217
+ transition:var(--tds-sidenav-item-transition);
2218
+ }
2209
2219
 
2210
- .tds-field-date-segment[data-focused]{
2211
- color:var(--t-text-color-inverted);
2212
- outline:0;
2213
- background-color:var(--t-fill-color-interaction);
2214
- }
2220
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):not(:has(.prefix,.suffix)),:is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)) :is(:not(.prefix,.suffix)){
2221
+ display:block;
2222
+ text-align:left;
2223
+ white-space:normal;
2224
+ }
2215
2225
 
2216
- .tds-field-date-segment-separator{
2217
- padding-inline:0;
2218
- color:var(--tds-field-placeholder-color);
2219
- }
2226
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):hover,:is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):focus-visible{
2227
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
2228
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
2229
+ }
2220
2230
 
2221
- .tds-field-date-segment:not([data-placeholder]) + .tds-field-date-segment-separator{
2222
- color:var(--tds-field-color);
2231
+ :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
2232
+ --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
2233
+ }
2234
+
2235
+ .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
2236
+ --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
2237
+ font-weight:var(--t-font-weight-medium);
2238
+ }
2239
+
2240
+ .tds-sidenav-responsive-header{
2241
+ display:flex;
2242
+ gap:var(--t-spacing-2);
2243
+ align-items:center;
2244
+ width:100%;
2245
+ }
2246
+
2247
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
2248
+ order:0;
2249
+ }
2250
+
2251
+ .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
2252
+ flex:1;
2253
+ order:1;
2254
+ margin:0;
2255
+ font-size:var(--t-font-size-lg);
2256
+ font-weight:var(--t-font-weight-medium);
2257
+ color:var(--t-text-color-headline);
2258
+ }
2259
+
2260
+ @media (max-width: 719px){
2261
+ .tds-sidenav-collapse{
2262
+ z-index:10001;
2263
+ display:none;
2264
+ max-width:min(448px, calc(100vw - 48px));
2265
+ padding:0;
2266
+ margin:12px 0;
2267
+ position-area:bottom span-right;
2268
+ overflow:hidden;
2269
+ outline:0;
2270
+ background:var(--t-surface-color-card);
2271
+ border:0;
2272
+ border-radius:6px;
2273
+ box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
2274
+ opacity:var(--tds-sidenav-collapse-open-opacity);
2275
+ transform:var(--tds-sidenav-collapse-open-transform);
2276
+ transition:var(--tds-sidenav-collapse-transition-enter);
2277
+ will-change:transform;
2278
+ }
2279
+
2280
+ .tds-sidenav-scroll-container{
2281
+ --webkit-overflow-scrolling:touch;
2282
+ display:block;
2283
+ width:100%;
2284
+ height:-moz-fit-content;
2285
+ height:fit-content;
2286
+ padding:var(--t-spacing-2);
2287
+ overflow-y:auto;
2288
+ }
2289
+
2290
+ .tds-sidenav-item :is(a, button) :is(.prefix){
2291
+ display:none;
2292
+ }
2293
+ @supports selector(:popover-open){
2294
+ .tds-sidenav-collapse:popover-open{
2295
+ display:flex;
2296
+ }
2297
+
2298
+ .tds-sidenav-collapse:not(:popover-open){
2299
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
2300
+ transition:var(--tds-sidenav-collapse-transition-exit);
2301
+ }
2302
+
2303
+ @starting-style{
2304
+ .tds-sidenav-collapse:popover-open{
2305
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
2306
+ transform:var(--tds-sidenav-collapse-closed-transform);
2307
+ }
2308
+ }
2309
+ }
2310
+ @supports not selector(:popover-open){
2311
+ .tds-sidenav-collapse.\:popover-open{
2312
+ display:flex;
2313
+ }
2314
+
2315
+ .tds-sidenav-collapse:not(.\:popover-open){
2316
+ opacity:var(--tds-sidenav-collapse-closed-opacity);
2317
+ transition:var(--tds-sidenav-collapse-transition-exit);
2318
+ }
2319
+ }
2320
+ }
2321
+
2322
+ @media (min-width: 720px){
2323
+ .tds-sidenav-responsive-header{
2324
+ display:none;
2325
+ }
2223
2326
  }
2224
2327
 
2328
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
2329
+ display:none;
2330
+ }
2331
+
2332
+ :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
2333
+ display:block;
2334
+ }
2335
+
2336
+ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
2337
+ display:flex;
2338
+ flex-direction:column;
2339
+ }
2340
+
2225
2341
  .tds-number-stepper{
2226
2342
  --tds-number-stepper-button-offset:4px;
2227
2343
  --tds-number-stepper-button-gap:2px;
@@ -2273,6 +2389,113 @@ a.tds-dropdown-item:is(:hover, :active){
2273
2389
  margin-inline-end:var(--tds-number-stepper-button-offset);
2274
2390
  }
2275
2391
 
2392
+
2393
+ :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{
2394
+ -webkit-appearance:none;
2395
+ appearance:none;
2396
+ }
2397
+
2398
+ [type="number"]:is(.tds-input input)::-webkit-inner-spin-button{
2399
+ inline-size:1em;
2400
+ block-size:2em;
2401
+ }
2402
+
2403
+ @supports (field-sizing: content){
2404
+ .tds-input--auto-width{
2405
+ inline-size:-moz-fit-content;
2406
+ inline-size:fit-content;
2407
+ min-inline-size:min(100%, 122px);
2408
+ }
2409
+
2410
+ .tds-input--auto-width input{
2411
+ field-sizing:content;
2412
+ inline-size:auto;
2413
+ }
2414
+ }
2415
+
2416
+ .tds-radio-group{
2417
+ --tds-radio-group-font-size:var(--t-font-size-md);
2418
+ --tds-radio-group-line-height:1.4;
2419
+ --tds-radio-group-gap:var(--t-spacing-1);
2420
+
2421
+ --tds-radio-group-description-font-size:var(--t-font-size-sm);
2422
+ --tds-radio-group-description-line-height:1.35;
2423
+ --tds-radio-group-description-color:var(--t-text-color-secondary);
2424
+ --tds-radio-group-description-invalid-icon-display:none;
2425
+ display:flex;
2426
+ flex-direction:column;
2427
+ gap:0;
2428
+ padding:0;
2429
+ margin:0;
2430
+
2431
+ font-size:var(--tds-radio-group-font-size);
2432
+ line-height:var(--tds-radio-group-line-height);
2433
+ border:0;
2434
+ }
2435
+
2436
+ .tds-radio-group legend{
2437
+ float:left;
2438
+ padding:0;
2439
+ margin:0;
2440
+ }
2441
+
2442
+ .tds-radio-group[aria-invalid="true"]{
2443
+ --tds-radio-group-description-color:var(--t-text-color-status-error);
2444
+ --tds-radio-group-description-invalid-icon-display:inline-block;
2445
+ }
2446
+
2447
+ .tds-radio-group[aria-invalid="true"] .tds-radio{
2448
+ --tds-radio-input-border-color:var(--t-form-border-color-error);
2449
+ }
2450
+
2451
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
2452
+ --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
2453
+ --tds-radio-input-background-color:var(--t-form-background-color-error);
2454
+ }
2455
+
2456
+ :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
2457
+ --tds-radio-input-background-color:var(--t-icon-color-inverted);
2458
+ }
2459
+
2460
+ .tds-radio-group:has(input:required) legend::after{
2461
+ margin-left:.25ch;
2462
+ color:var(--t-text-color-status-error);
2463
+ content:"*";
2464
+ }
2465
+
2466
+ .tds-radio-group-fields{
2467
+ display:flex;
2468
+ flex-direction:column;
2469
+ gap:var(--tds-radio-group-gap);
2470
+ align-items:flex-start;
2471
+ margin-top:var(--t-spacing-1);
2472
+ }
2473
+
2474
+ .tds-radio-group-description{
2475
+ display:flex;
2476
+ gap:var(--t-spacing-half);
2477
+ align-items:flex-start;
2478
+ margin:var(--t-spacing-fourth) 0 0;
2479
+ font-size:var(--tds-radio-group-description-font-size);
2480
+ line-height:var(--tds-radio-group-description-line-height);
2481
+ color:var(--tds-radio-group-description-color);
2482
+ cursor:text;
2483
+ }
2484
+
2485
+ .tds-radio-group-description .tds-radio-group-description-invalid-icon{
2486
+ display:var(--tds-radio-group-description-invalid-icon-display);
2487
+ flex-shrink:0;
2488
+ margin-top:calc(.5lh - .5em);
2489
+ line-height:var(--tds-radio-group-description-line-height);
2490
+ }
2491
+
2492
+ .tds-radio-group--sm{
2493
+ --tds-radio-group-line-height:1.35;
2494
+ --tds-radio-group-font-size:var(--t-font-size-sm);
2495
+ --tds-radio-group-description-font-size:var(--t-font-size-xs);
2496
+ --tds-radio-group-description-line-height:1.3;
2497
+ }
2498
+
2276
2499
  .tds-radio{
2277
2500
  --tds-radio-font-size:var(--t-font-size-md);
2278
2501
  --tds-radio-cursor:pointer;
@@ -2406,207 +2629,248 @@ a.tds-dropdown-item:is(:hover, :active){
2406
2629
  --tds-radio-description-line-height:1.3;
2407
2630
  }
2408
2631
 
2409
- .tds-radio-group{
2410
- --tds-radio-group-font-size:var(--t-font-size-md);
2411
- --tds-radio-group-line-height:1.4;
2412
- --tds-radio-group-gap:var(--t-spacing-1);
2632
+ .tds-field{
2633
+ --tds-field-label-color:var(--t-text-color);
2634
+ --tds-field-label-cursor:default;
2635
+ --tds-field-label-font-size:var(--t-font-size-md);
2636
+ --tds-field-description-color:var(--t-text-color-secondary);
2637
+ --tds-field-description-cursor:text;
2638
+ --tds-field-description-font-size:var(--t-font-size-sm);
2639
+ --tds-field-description-line-height:1.35;
2640
+ --tds-field-description-invalid-icon-display:none;
2641
+ --tds-field-border-color:var(--t-form-border-color);
2642
+ --tds-field-border-color-hover:var(--t-form-border-color-hover);
2643
+ --tds-field-border-color-active:var(--t-form-border-color-focus);
2644
+ --tds-field-background-color:var(--t-form-background-color);
2645
+ --tds-field-color:var(--t-form-color);
2646
+ --tds-field-placeholder-color:var(--t-form-placeholder-color);
2647
+ --tds-field-font-size:var(--t-font-size-md);
2648
+ --tds-field-min-height:var(--t-container-size-md);
2649
+ --tds-field-padding-block:6px;
2650
+ --tds-field-padding-inline:var(--t-spacing-1);
2413
2651
 
2414
- --tds-radio-group-description-font-size:var(--t-font-size-sm);
2415
- --tds-radio-group-description-line-height:1.35;
2416
- --tds-radio-group-description-color:var(--t-text-color-secondary);
2417
- --tds-radio-group-description-invalid-icon-display:none;
2652
+ position:relative;
2418
2653
  display:flex;
2419
2654
  flex-direction:column;
2420
- gap:0;
2421
- padding:0;
2422
- margin:0;
2423
-
2424
- font-size:var(--tds-radio-group-font-size);
2425
- line-height:var(--tds-radio-group-line-height);
2426
- border:0;
2655
+ gap:var(--t-spacing-half);
2427
2656
  }
2428
2657
 
2429
- .tds-radio-group legend{
2430
- float:left;
2431
- padding:0;
2432
- margin:0;
2433
- }
2434
-
2435
- .tds-radio-group[aria-invalid="true"]{
2436
- --tds-radio-group-description-color:var(--t-text-color-status-error);
2437
- --tds-radio-group-description-invalid-icon-display:inline-block;
2658
+ .tds-field:has(input:disabled):not([data-disabled]),.tds-field:has(select:disabled):not([data-disabled]),.tds-field:has(textarea:disabled):not([data-disabled]){
2659
+ --tds-field-label-color:var(--t-form-color-disabled);
2660
+ --tds-field-label-cursor:not-allowed;
2661
+ --tds-field-description-color:var(--t-form-color-disabled);
2662
+ --tds-field-description-cursor:not-allowed;
2438
2663
  }
2439
2664
 
2440
- .tds-radio-group[aria-invalid="true"] .tds-radio{
2441
- --tds-radio-input-border-color:var(--t-form-border-color-error);
2442
- }
2443
-
2444
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio) input:hover:not(:disabled){
2445
- --tds-radio-input-border-color:var(--t-form-border-color-error-hover);
2446
- --tds-radio-input-background-color:var(--t-form-background-color-error);
2447
- }
2448
-
2449
- :is(.tds-radio-group[aria-invalid="true"] .tds-radio):has(input:checked) input:hover:not(:disabled){
2450
- --tds-radio-input-background-color:var(--t-icon-color-inverted);
2451
- }
2452
-
2453
- .tds-radio-group:has(input:required) legend::after{
2665
+ .tds-field:has([required],[aria-required="true"]) .tds-field-label::after{
2454
2666
  margin-left:.25ch;
2455
2667
  color:var(--t-text-color-status-error);
2456
- content:"*";
2668
+ content:"*" / "";
2457
2669
  }
2458
2670
 
2459
- .tds-radio-group-fields{
2460
- display:flex;
2461
- flex-direction:column;
2462
- gap:var(--tds-radio-group-gap);
2463
- align-items:flex-start;
2464
- margin-top:var(--t-spacing-1);
2465
- }
2466
-
2467
- .tds-radio-group-description{
2468
- display:flex;
2469
- gap:var(--t-spacing-half);
2470
- align-items:flex-start;
2471
- margin:var(--t-spacing-fourth) 0 0;
2472
- font-size:var(--tds-radio-group-description-font-size);
2473
- line-height:var(--tds-radio-group-description-line-height);
2474
- color:var(--tds-radio-group-description-color);
2475
- cursor:text;
2476
- }
2477
-
2478
- .tds-radio-group-description .tds-radio-group-description-invalid-icon{
2479
- display:var(--tds-radio-group-description-invalid-icon-display);
2480
- flex-shrink:0;
2481
- margin-top:calc(.5lh - .5em);
2482
- line-height:var(--tds-radio-group-description-line-height);
2671
+ .tds-field:has([aria-invalid="true"],:user-invalid){
2672
+ --tds-field-description-color:var(--t-text-color-status-error);
2673
+ --tds-field-description-invalid-icon-display:inline-block;
2483
2674
  }
2484
2675
 
2485
- .tds-radio-group--sm{
2486
- --tds-radio-group-line-height:1.35;
2487
- --tds-radio-group-font-size:var(--t-font-size-sm);
2488
- --tds-radio-group-description-font-size:var(--t-font-size-xs);
2489
- --tds-radio-group-description-line-height:1.3;
2490
- }
2491
-
2492
- .tds-input:has(textarea){
2493
- --tds-input-padding-block:6px;
2494
- --tds-input-resizer-size:var(--t-element-size-sm);
2495
- --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");
2496
- }
2676
+ .tds-field[data-required] .tds-field-label::after{
2677
+ margin-left:.25ch;
2678
+ color:var(--t-text-color-status-error);
2679
+ content:"*" / "";
2680
+ }
2497
2681
 
2498
- @supports (x: attr(x type(*))){
2682
+ .tds-field[data-invalid]{
2683
+ --tds-field-border-color:var(--t-form-border-color-error);
2684
+ --tds-field-border-color-hover:var(--t-form-border-color-error-hover);
2685
+ --tds-field-border-color-active:var(--t-form-border-color-error-hover);
2686
+ --tds-field-background-color:var(--t-form-background-color-error);
2687
+ --tds-field-description-color:var(--t-text-color-status-error);
2688
+ --tds-field-description-invalid-icon-display:inline-block;
2689
+ }
2499
2690
 
2500
- .tds-input textarea{
2501
- --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
2502
- }
2691
+ .tds-field[data-disabled]{
2692
+ --tds-field-border-color:var(--t-form-border-color-disabled);
2693
+ --tds-field-background-color:var(--t-form-background-color-disabled);
2694
+ --tds-field-color:var(--t-form-color-disabled);
2695
+ --tds-field-placeholder-color:var(--t-form-color-disabled);
2503
2696
  }
2504
2697
 
2505
- .tds-input.tds-textarea--resize-vertical textarea{
2506
- resize:vertical;
2698
+ .tds-field[data-disabled] .tds-field-control{
2699
+ cursor:not-allowed;
2507
2700
  }
2508
2701
 
2509
- .tds-input.tds-textarea--resize-none textarea{
2510
- resize:none;
2511
- }
2702
+ .tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"]){
2703
+ --tds-field-label-cursor:pointer;
2512
2704
 
2513
- .tds-input.tds-textarea--resize-auto textarea{
2514
- resize:vertical;
2515
- }
2705
+ display:inline-grid;
2706
+ grid-template-columns:auto;
2707
+ grid-auto-columns:1fr;
2708
+ row-gap:var(--t-spacing-fourth);
2709
+ -moz-column-gap:var(--t-spacing-1);
2710
+ column-gap:var(--t-spacing-1);
2711
+ }
2516
2712
 
2517
- @supports (field-sizing: content){
2518
- .tds-input.tds-textarea--resize-auto textarea{
2519
- field-sizing:content;
2520
- resize:none;
2521
- }
2713
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])):has(:disabled){
2714
+ --tds-field-label-cursor:not-allowed;
2522
2715
  }
2523
2716
 
2524
- .tds-input textarea{
2525
- --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
2526
- --tds-input-scrollbar-thumb-color-hidden:transparent;
2527
- --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
2528
- --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
2529
- --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
2530
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
2531
- --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
2532
- --tds-input-scrollbar-thumb-border-radius:999px;
2533
- --tds-input-scrollbar-thumb-border-width:3px;
2534
- --tds-input-scrollbar-track-margin-block:.125rem;
2535
- scrollbar-color:initial;
2536
- transition-timing-function:var(--t-ease-in-out);
2537
- transition-duration:var(--t-duration-200);
2538
- transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
2539
- }
2540
-
2541
- @media (pointer: fine){
2542
- :is(.tds-input textarea)::-webkit-scrollbar{
2543
- width:12px;
2544
- height:12px;
2545
- cursor:default;
2717
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) input[type="checkbox"],:is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) input[type="radio"],:is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) tds-indeterminate{
2718
+ grid-row:1;
2719
+ grid-column:1;
2720
+ align-self:center;
2546
2721
  }
2547
2722
 
2548
- :is(.tds-input textarea)::-webkit-scrollbar-thumb{
2549
- cursor:default;
2550
- background:var(--tds-input-scrollbar-thumb-color);
2551
- background-clip:content-box;
2552
- border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
2553
- border-radius:var(--tds-input-scrollbar-thumb-border-radius);
2723
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) tds-indeterminate{
2724
+ display:flex;
2554
2725
  }
2555
2726
 
2556
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2557
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
2727
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) .tds-field-label{
2728
+ grid-row:1;
2729
+ grid-column:2;
2558
2730
  }
2559
2731
 
2560
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
2561
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
2732
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) .tds-field-description{
2733
+ grid-row:2;
2734
+ grid-column:2;
2562
2735
  }
2563
2736
 
2564
- :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
2565
- --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
2566
- }
2737
+ .tds-field--sm{
2738
+ --tds-field-label-font-size:var(--t-font-size-sm);
2739
+ --tds-field-description-font-size:var(--t-font-size-xs);
2740
+ --tds-field-description-line-height:1.3;
2741
+ }
2567
2742
 
2568
- :is(.tds-input textarea)::-webkit-scrollbar-corner{
2569
- background:var(--tds-input-scrollbar-surface-color);
2570
- }
2743
+ .tds-field--lg{
2744
+ --tds-field-min-height:var(--t-container-size-lg);
2745
+ --tds-field-font-size:var(--t-font-size-lg);
2746
+ }
2571
2747
 
2572
- :is(.tds-input textarea)::-webkit-resizer{
2573
- background:var(--tds-input-resizer-icon) no-repeat;
2574
- background-position:right bottom;
2575
- background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
2576
- }
2748
+ .tds-field-label{
2749
+ font-size:var(--tds-field-label-font-size);
2750
+ font-weight:var(--t-font-weight-normal);
2751
+ color:var(--tds-field-label-color);
2752
+ cursor:var(--tds-field-label-cursor);
2753
+ }
2577
2754
 
2578
- :is(.tds-input textarea)::-webkit-scrollbar-track{
2579
- margin-block:var(--tds-input-scrollbar-track-margin-block);
2580
- cursor:default;
2581
- }
2755
+ .tds-field-label--hidden{
2756
+ position:absolute;
2757
+ width:1px;
2758
+ height:1px;
2759
+ overflow:hidden;
2760
+ white-space:nowrap;
2761
+ clip-path:inset(50%);
2762
+ }
2582
2763
 
2583
- @supports (-moz-appearance: none){
2584
- :is(.tds-input textarea){
2585
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
2586
- scrollbar-width:thin;
2587
- }
2764
+ .tds-field-control{
2765
+ display:flex;
2766
+ align-items:center;
2767
+ inline-size:100%;
2768
+ min-block-size:var(--tds-field-min-height);
2769
+ font-family:inherit;
2770
+ font-size:var(--tds-field-font-size);
2771
+ line-height:1;
2772
+ color:var(--tds-field-color);
2773
+ -webkit-appearance:none;
2774
+ -moz-appearance:none;
2775
+ appearance:none;
2776
+ cursor:text;
2777
+ outline:var(--t-focus-ring-width) solid transparent;
2778
+ outline-color:rgb(from var(--t-focus-ring-color) r g b / 0);
2779
+ outline-offset:0;
2780
+ background-color:var(--tds-field-background-color);
2781
+ border:var(--t-form-border-width) solid var(--tds-field-border-color);
2782
+ border-radius:var(--t-form-border-radius);
2783
+ transition-timing-function:var(--t-ease-in-out);
2784
+ transition-duration:var(--t-duration-200);
2785
+ transition-property:background-color, border-color, outline-color, outline-offset;
2786
+ }
2588
2787
 
2589
- @media (hover){
2590
- :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
2591
- scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
2592
- }
2593
- }
2594
- }
2788
+ .tds-field-control[data-hovered]:not([data-focus-visible],[data-focus-within],[data-disabled]){
2789
+ border-color:var(--tds-field-border-color-hover);
2595
2790
  }
2596
2791
 
2597
- .tds-toggle-switch{
2598
- --tds-toggle-switch-font-size:var(--t-font-size-md);
2599
- --tds-toggle-switch-cursor:pointer;
2600
- --tds-toggle-switch-display:inline-grid;
2601
- --tds-toggle-switch-line-height:1.4;
2602
-
2603
- --tds-toggle-switch-label-color:var(--t-form-color);
2792
+ .tds-field-control[data-focus-within]{
2793
+ outline-color:var(--t-focus-ring-color);
2794
+ outline-offset:var(--t-focus-ring-offset);
2795
+ border-color:var(--tds-field-border-color-active);
2796
+ }
2604
2797
 
2605
- --tds-toggle-switch-track-width:var(--t-container-size-md);
2606
- --tds-toggle-switch-track-outline:none;
2607
- --tds-toggle-switch-track-height:var(--t-container-size-xs);
2608
- --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
2609
- --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
2798
+ .tds-field-control[data-readonly],.tds-field-control:has([data-readonly]),.tds-field-control:has([readonly]){
2799
+ --tds-field-border-color:var(--t-form-border-color-readonly);
2800
+ --tds-field-border-color-hover:var(--t-form-border-color-readonly);
2801
+ --tds-field-background-color:var(--t-form-background-color-readonly);
2802
+ color:var(--t-form-color-readonly);
2803
+ }
2804
+
2805
+ [data-focus-within]:is(.tds-field-control[data-readonly],.tds-field-control:has([data-readonly]),.tds-field-control:has([readonly])){
2806
+ border-color:var(--t-form-border-color-hover);
2807
+ }
2808
+
2809
+ .tds-field-description{
2810
+ display:flex;
2811
+ gap:var(--t-spacing-half);
2812
+ align-items:flex-start;
2813
+ margin:0;
2814
+ font-size:var(--tds-field-description-font-size);
2815
+ line-height:var(--tds-field-description-line-height);
2816
+ color:var(--tds-field-description-color, var(--t-text-color-secondary));
2817
+ cursor:var(--tds-field-description-cursor);
2818
+ }
2819
+
2820
+ .tds-field-description .tds-field-description-invalid-icon{
2821
+ display:var(--tds-field-description-invalid-icon-display, none);
2822
+ flex-shrink:0;
2823
+ margin-block-start:calc(.5lh - .5em);
2824
+ line-height:var(--tds-field-description-line-height);
2825
+ }
2826
+
2827
+ .tds-field-date-segment{
2828
+ padding-inline:var(--tds-field-date-segment-padding-inline, 2px);
2829
+ text-align:end;
2830
+ text-wrap:nowrap;
2831
+ caret-color:transparent;
2832
+ border-radius:var(--t-border-radius-sm);
2833
+ }
2834
+
2835
+ .tds-field-date-segment[data-placeholder]{
2836
+ color:var(--tds-field-placeholder-color);
2837
+ }
2838
+
2839
+ .tds-field-date-segment[data-focused]{
2840
+ color:var(--t-text-color-inverted);
2841
+ outline:0;
2842
+ background-color:var(--t-fill-color-interaction);
2843
+ }
2844
+
2845
+ .tds-field-date-segment-separator{
2846
+ padding-inline:0;
2847
+ color:var(--tds-field-placeholder-color);
2848
+ }
2849
+
2850
+ .tds-field-date-segment:not([data-placeholder]) + .tds-field-date-segment-separator{
2851
+ color:var(--tds-field-color);
2852
+ }
2853
+
2854
+ .tds-time-field-input{
2855
+ --tds-field-date-segment-padding-inline:1px;
2856
+ padding-block:var(--tds-field-padding-block);
2857
+ padding-inline:var(--tds-field-padding-inline);
2858
+ font-variant-numeric:tabular-nums;
2859
+ }
2860
+
2861
+ .tds-toggle-switch{
2862
+ --tds-toggle-switch-font-size:var(--t-font-size-md);
2863
+ --tds-toggle-switch-cursor:pointer;
2864
+ --tds-toggle-switch-display:inline-grid;
2865
+ --tds-toggle-switch-line-height:1.4;
2866
+
2867
+ --tds-toggle-switch-label-color:var(--t-form-color);
2868
+
2869
+ --tds-toggle-switch-track-width:var(--t-container-size-md);
2870
+ --tds-toggle-switch-track-outline:none;
2871
+ --tds-toggle-switch-track-height:var(--t-container-size-xs);
2872
+ --tds-toggle-switch-track-background-color:var(--t-form-toggle-color);
2873
+ --tds-toggle-switch-track-transition:background-color var(--t-duration-100) var(--t-ease-in-out);
2610
2874
 
2611
2875
  --tds-toggle-switch-thumb-size:var(--t-element-size-md);
2612
2876
  --tds-toggle-switch-thumb-transform:translateX(0);
@@ -2734,6 +2998,111 @@ a.tds-dropdown-item:is(:hover, :active){
2734
2998
  --tds-toggle-switch-display:inline-flex;
2735
2999
  }
2736
3000
 
3001
+ .tds-input:has(textarea){
3002
+ --tds-input-padding-block:6px;
3003
+ --tds-input-resizer-size:var(--t-element-size-sm);
3004
+ --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");
3005
+ }
3006
+
3007
+ @supports (x: attr(x type(*))){
3008
+
3009
+ .tds-input textarea{
3010
+ --tds-input-min-height:calc((attr(rows type(<number>), 3) * 1lh) + (var(--tds-input-padding-block) * 2) + 2px);
3011
+ }
3012
+ }
3013
+
3014
+ .tds-input.tds-textarea--resize-vertical textarea{
3015
+ resize:vertical;
3016
+ }
3017
+
3018
+ .tds-input.tds-textarea--resize-none textarea{
3019
+ resize:none;
3020
+ }
3021
+
3022
+ .tds-input.tds-textarea--resize-auto textarea{
3023
+ resize:vertical;
3024
+ }
3025
+
3026
+ @supports (field-sizing: content){
3027
+ .tds-input.tds-textarea--resize-auto textarea{
3028
+ field-sizing:content;
3029
+ resize:none;
3030
+ }
3031
+ }
3032
+
3033
+ .tds-input textarea{
3034
+ --tds-input-scrollbar-thumb-color-default:var(--t-fill-color-neutral-040);
3035
+ --tds-input-scrollbar-thumb-color-hidden:transparent;
3036
+ --tds-input-scrollbar-thumb-color-hover:var(--t-fill-color-neutral-030);
3037
+ --tds-input-scrollbar-thumb-color-thumb-hover:var(--t-fill-color-neutral-020);
3038
+ --tds-input-scrollbar-thumb-color-thumb-active:var(--t-fill-color-neutral-010);
3039
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-default);
3040
+ --tds-input-scrollbar-surface-color:rgba(0, 0, 0, 0);
3041
+ --tds-input-scrollbar-thumb-border-radius:999px;
3042
+ --tds-input-scrollbar-thumb-border-width:3px;
3043
+ --tds-input-scrollbar-track-margin-block:.125rem;
3044
+ scrollbar-color:initial;
3045
+ transition-timing-function:var(--t-ease-in-out);
3046
+ transition-duration:var(--t-duration-200);
3047
+ transition-property:var(--tds-input-transition-property), --tds-input-scrollbar-thumb-color;
3048
+ }
3049
+
3050
+ @media (pointer: fine){
3051
+ :is(.tds-input textarea)::-webkit-scrollbar{
3052
+ width:12px;
3053
+ height:12px;
3054
+ cursor:default;
3055
+ }
3056
+
3057
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb{
3058
+ cursor:default;
3059
+ background:var(--tds-input-scrollbar-thumb-color);
3060
+ background-clip:content-box;
3061
+ border:var(--tds-input-scrollbar-thumb-border-width) solid var(--tds-input-scrollbar-surface-color);
3062
+ border-radius:var(--tds-input-scrollbar-thumb-border-radius);
3063
+ }
3064
+
3065
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
3066
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-hover);
3067
+ }
3068
+
3069
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:hover{
3070
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-hover);
3071
+ }
3072
+
3073
+ :is(.tds-input textarea)::-webkit-scrollbar-thumb:active{
3074
+ --tds-input-scrollbar-thumb-color:var(--tds-input-scrollbar-thumb-color-thumb-active);
3075
+ }
3076
+
3077
+ :is(.tds-input textarea)::-webkit-scrollbar-corner{
3078
+ background:var(--tds-input-scrollbar-surface-color);
3079
+ }
3080
+
3081
+ :is(.tds-input textarea)::-webkit-resizer{
3082
+ background:var(--tds-input-resizer-icon) no-repeat;
3083
+ background-position:right bottom;
3084
+ background-size:var(--tds-input-resizer-size) var(--tds-input-resizer-size);
3085
+ }
3086
+
3087
+ :is(.tds-input textarea)::-webkit-scrollbar-track{
3088
+ margin-block:var(--tds-input-scrollbar-track-margin-block);
3089
+ cursor:default;
3090
+ }
3091
+
3092
+ @supports (-moz-appearance: none){
3093
+ :is(.tds-input textarea){
3094
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-default) var(--tds-input-scrollbar-surface-color);
3095
+ scrollbar-width:thin;
3096
+ }
3097
+
3098
+ @media (hover){
3099
+ :is(.tds-input textarea):is(:hover,:focus-within,:focus-visible){
3100
+ scrollbar-color:var(--tds-input-scrollbar-thumb-color-hover) var(--tds-input-scrollbar-surface-color);
3101
+ }
3102
+ }
3103
+ }
3104
+ }
3105
+
2737
3106
  .tds-select{
2738
3107
  --tds-select-border-color:var(--t-form-border-color);
2739
3108
  --tds-select-border-color-hover:var(--t-form-border-color-hover);
@@ -2827,748 +3196,350 @@ a.tds-dropdown-item:is(:hover, :active){
2827
3196
  border:var(--t-form-border-width) solid var(--tds-select-border-color);
2828
3197
  border-radius:var(--t-form-border-radius);
2829
3198
  transition-timing-function:var(--t-ease-in-out);
2830
- transition-duration:var(--t-duration-300);
2831
- transition-property:var(--tds-select-transition-property);
2832
- }
2833
-
2834
- :is(.tds-select :is(select,button)):hover:not(:disabled,:focus,:focus-visible,:focus-within,:active,:open){
2835
- border-color:var(--tds-select-border-color-hover);
2836
- }
2837
-
2838
- :is(.tds-select :is(select,button)):focus{
2839
- outline-color:var(--t-focus-ring-color);
2840
- outline-offset:var(--t-focus-ring-offset);
2841
- border-color:var(--tds-select-border-color-active);
2842
- }
2843
-
2844
- :is(.tds-select :is(select,button)):required:invalid,:is(.tds-select :is(select,button)):has(option[hidden][disabled][value=""]:checked){
2845
- color:var(--tds-select-placeholder-color);
2846
- }
2847
-
2848
- .tds-select:has(select:user-invalid,[aria-invalid="true"]),.tds-select.tds-select--invalid{
2849
- --tds-select-border-color:var(--t-form-border-color-error);
2850
- --tds-select-border-color-hover:var(--t-form-border-color-error-hover);
2851
- --tds-select-border-color-active:var(--t-form-border-color-error-hover);
2852
- --tds-select-background-color:var(--t-form-background-color-error);
2853
- --tds-select-description-color:var(--t-text-color-status-error);
2854
- --tds-select-description-invalid-icon-display:inline-block;
2855
- }
2856
-
2857
- .tds-select:has(select:required,[aria-required="true"]) :is(label,.tds-select-label)::after{
2858
- margin-left:.25ch;
2859
- color:var(--t-text-color-status-error);
2860
- content:"*";
2861
- }
2862
-
2863
- .tds-select:has(:is(select,button[role="combobox"]):is(:disabled,[aria-disabled="true"])){
2864
- --tds-select-border-color:var(--t-form-border-color-disabled);
2865
- --tds-select-background-color:var(--t-form-background-color-disabled);
2866
- --tds-select-color:var(--t-form-color-disabled);
2867
- --tds-select-cursor:not-allowed;
2868
- }
2869
-
2870
- .tds-select:has( > [popover]:popover-open) > button{
2871
- border-color:var(--tds-select-border-color-active);
2872
- }
2873
-
2874
- :is(.tds-select:has( > [popover]:popover-open) > button)::after{
2875
- transform:rotate(.5turn);
2876
- }
2877
-
2878
- .tds-select :is(hr,li[role="separator"]){
2879
- margin-block:var(--t-spacing-half);
2880
- color:var(--tds-select-border-color);
2881
- border:0;
2882
- border-top:1px solid;
2883
- }
2884
-
2885
- .tds-select :is(li[role="option"],option:not([hidden])){
2886
- display:block;
2887
- align-content:center;
2888
- min-height:var(--t-container-size-md);
2889
- padding-block:var(--tds-select-option-padding-block);
2890
- padding-inline:var(--tds-select-option-padding-inline);
2891
- overflow:hidden;
2892
- text-overflow:ellipsis;
2893
- font-size:var(--tds-select-option-font-size);
2894
- line-height:1.15;
2895
- color:var(--tds-select-option-color);
2896
- white-space:nowrap;
2897
- cursor:default;
2898
- border-radius:var(--tds-select-option-border-radius);
2899
- }
2900
-
2901
- :is(.tds-select :is(li[role="option"],option:not([hidden]))):focus-visible{
2902
- outline:0;
2903
- }
2904
-
2905
- :is(.tds-select :is(li[role="option"],option:not([hidden]))):is(:focus,:hover,.tds-select-option--active):not([disabled],[aria-disabled="true"]){
2906
- background:var(--tds-select-option-background-hover);
2907
- }
2908
-
2909
- :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-selected="true"],:checked):not([disabled],[aria-disabled="true"]){
2910
- background:var(--tds-select-option-background-active);
2911
- }
2912
-
2913
- :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-disabled="true"],:disabled){
2914
- color:var(--t-form-color-disabled);
2915
- cursor:not-allowed;
2916
- }
2917
-
2918
- :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-disabled="true"],:disabled):is(:focus,:hover){
2919
- background:transparent;
2920
- }
2921
-
2922
- .tds-select :is(li[role="presentation"],legend){
2923
- position:sticky;
2924
- inset-block-start:calc(var(--tds-select-dropdown-padding) * -1);
2925
- z-index:1;
2926
- float:inline-start;
2927
- inline-size:100%;
2928
- padding-block:var(--tds-select-group-label-padding-block);
2929
- padding-inline:var(--tds-select-group-label-padding-inline);
2930
- container-type:scroll-state;
2931
- font-size:var(--tds-select-group-label-font-size);
2932
- font-weight:var(--tds-select-group-label-font-weight);
2933
- letter-spacing:var(--tds-select-group-label-letter-spacing);
2934
- background:var(--tds-select-group-label-background);
2935
- text-box:trim-both cap alphabetic;
2936
- }
2937
-
2938
- :is(.tds-select :is(li[role="presentation"],legend)) span{
2939
- display:inline-flex;
2940
- gap:var(--t-spacing-half);
2941
- align-items:center;
2942
- color:var(--tds-select-group-label-color);
2943
- transition:var(--tds-select-group-label-transition);
2944
- }
2945
-
2946
- @container scroll-state(stuck){
2947
-
2948
- :is(.tds-select :is(li[role="presentation"],legend)) span{
2949
- color:var(--tds-select-group-label-color-stuck);
2950
- }
2951
-
2952
- @media (forced-colors: active){
2953
-
2954
- :is(.tds-select :is(li[role="presentation"],legend)) span{
2955
- color:var(--tds-select-group-label-color-stuck);
2956
- }
2957
- }
2958
- }
2959
-
2960
- .tds-select.tds-select--lg{
2961
- --tds-select-min-height:var(--t-container-size-lg);
2962
- --tds-select-font-size:var(--t-font-size-lg);
2963
- }
2964
-
2965
- @media (prefers-reduced-motion: reduce){
2966
-
2967
- .tds-select{
2968
- --tds-select-transition-property:none;
2969
- --tds-select-dropdown-transition:none;
2970
- --tds-select-dropdown-closed-translate:none;
2971
- --tds-select-dropdown-open-translate:none;
2972
- --tds-select-caret-transition:none;
2973
- }
2974
- }
2975
-
2976
- .tds-select-description{
2977
- display:flex;
2978
- gap:var(--t-spacing-half);
2979
- align-items:flex-start;
2980
- margin:0;
2981
- font-size:var(--t-font-size-sm);
2982
- line-height:1.35;
2983
- color:var(--tds-select-description-color, var(--t-text-color-secondary));
2984
- cursor:text;
2985
- }
2986
-
2987
- .tds-select-description .tds-select-description-invalid-icon{
2988
- display:var(--tds-select-description-invalid-icon-display, none);
2989
- flex-shrink:0;
2990
- margin-block-start:calc(.5lh - .5em);
2991
- line-height:1.35;
2992
- }
2993
-
2994
- .tds-select > .tds-select-hidden-select{
2995
- position:absolute;
2996
- inline-size:1px;
2997
- block-size:1px;
2998
- padding:0;
2999
- margin:0;
3000
- pointer-events:none;
3001
- opacity:0;
3002
- }
3003
-
3004
- .tds-select:has(> button){
3005
- anchor-scope:--tds-select-anchor;
3006
- }
3007
-
3008
- .tds-select:has( > button) > button{
3009
- display:block;
3010
- padding-inline-end:calc(var(--tds-select-caret-size) + var(--tds-select-caret-inline-offset) + .75ch);
3011
- anchor-name:--tds-select-anchor;
3012
- overflow:hidden;
3013
- text-overflow:ellipsis;
3014
- color:var(--tds-select-placeholder-color);
3015
- white-space:nowrap;
3016
- background-image:none;
3017
- transition:background-color var(--t-duration-300) var(--t-ease-in-out), border-color var(--t-duration-300) var(--t-ease-in-out), outline-color var(--t-duration-300) var(--t-ease-in-out), outline-offset var(--t-duration-300) var(--t-ease-in-out), transform var(--t-duration-100) var(--t-ease-in-out);
3018
- -webkit-tap-highlight-color:transparent;
3019
- }
3020
-
3021
- :is(.tds-select:has( > button) > button)::after{
3022
- position:absolute;
3023
- inset-block:0;
3024
- inset-inline-end:var(--tds-select-caret-inline-offset);
3025
- width:var(--tds-select-caret-size);
3026
- height:var(--tds-select-caret-size);
3027
- margin-block:auto;
3028
- line-height:1;
3029
- pointer-events:none;
3030
- content:var(--tds-select-background-image);
3031
- transform:rotate(0);
3032
- transition:var(--tds-select-caret-transition);
3033
- }
3034
-
3035
- .tds-select:has( > button):has([role="option"][aria-selected="true"]) > button{
3036
- color:var(--tds-select-color);
3037
- }
3038
-
3039
- .tds-select:has( > button) [popover]{
3040
- inset:auto;
3041
- inline-size:-moz-max-content;
3042
- inline-size:max-content;
3043
- min-inline-size:anchor-size(width);
3044
- max-inline-size:100vi;
3045
- max-block-size:min(50vh, 20rem);
3046
- padding:var(--tds-select-dropdown-padding);
3047
- margin-block:var(--tds-select-dropdown-margin-block);
3048
- position-area:block-end span-inline-start;
3049
- position-anchor:--tds-select-anchor;
3050
- position-try-fallbacks:flip-block, flip-inline;
3051
- overflow:auto;
3052
- overflow-x:hidden;
3053
- overscroll-behavior:none;
3054
- -webkit-user-select:none;
3055
- -moz-user-select:none;
3056
- user-select:none;
3057
- scrollbar-color:var(--tds-select-dropdown-scrollbar-color);
3058
- scrollbar-width:var(--tds-select-dropdown-scrollbar-width);
3059
- background:var(--tds-select-dropdown-background-color);
3060
- border:var(--tds-select-dropdown-border);
3061
- border-radius:var(--tds-select-dropdown-border-radius);
3062
- box-shadow:var(--tds-select-dropdown-box-shadow);
3063
- opacity:var(--tds-select-dropdown-open-opacity);
3064
- translate:var(--tds-select-dropdown-open-translate);
3065
- transition:var(--tds-select-dropdown-transition);
3066
- }
3067
-
3068
- :is(.tds-select:has( > button) [popover]):not(:popover-open){
3069
- opacity:var(--tds-select-dropdown-closed-opacity);
3070
- translate:var(--tds-select-dropdown-closed-translate);
3071
- }
3072
-
3073
- :is(.tds-select:has( > button) [popover]) ul{
3074
- padding:0;
3075
- margin:0;
3076
- list-style:none;
3077
- }
3078
-
3079
- @starting-style{
3080
- :is(.tds-select:has( > button) [popover]):popover-open{
3081
- opacity:var(--tds-select-dropdown-closed-opacity);
3082
- translate:var(--tds-select-dropdown-closed-translate);
3083
- }
3084
- }
3085
-
3086
- @supports ((-webkit-appearance: base-select) or (-moz-appearance: base-select) or (appearance: base-select)){
3087
- .tds-select select:has(> button){
3088
- padding-inline-end:0;
3089
- background-image:none;
3090
- }
3091
- @media (hover) and (pointer: fine){
3092
- :is(.tds-select select:has( > button)),:is(.tds-select select:has( > button))::picker(select){
3093
- padding-block:0;
3094
- -webkit-appearance:base-select;
3095
- -moz-appearance:base-select;
3096
- appearance:base-select;
3097
- }
3098
- }
3099
- :is(.tds-select select:has( > button))::picker-icon{
3100
- flex-shrink:0;
3101
- width:var(--tds-select-caret-size);
3102
- height:var(--tds-select-caret-size);
3103
- margin-inline-end:var(--tds-select-caret-inline-offset);
3104
- line-height:1;
3105
- content:var(--tds-select-background-image);
3106
- transition:var(--tds-select-caret-transition);
3107
- }
3108
-
3109
- :is(.tds-select select:has( > button))::picker(select):not(:popover-open){
3110
- opacity:var(--tds-select-dropdown-closed-opacity);
3111
- translate:var(--tds-select-dropdown-closed-translate);
3112
- }
3113
-
3114
- :is(.tds-select select:has( > button)):open,:is(.tds-select select:has( > button)):focus-within{
3115
- outline-color:var(--t-focus-ring-color);
3116
- outline-offset:var(--t-focus-ring-offset);
3117
- border-color:var(--tds-select-border-color-active);
3118
- }
3119
-
3120
- :is(.tds-select select:has( > button)):open::picker-icon{
3121
- opacity:1;
3122
- transform:rotate(.5turn);
3123
- }
3124
-
3125
- :is(.tds-select select:has( > button)) selectedcontent{
3126
- overflow:hidden;
3127
- text-overflow:ellipsis;
3128
- line-height:calc(var(--tds-select-min-height) - 2px);
3129
- white-space:nowrap;
3130
- }
3131
-
3132
- :is(.tds-select select:has( > button)):has(option[hidden][disabled][value=""]:checked) > button{
3133
- color:var(--tds-select-placeholder-color);
3134
- }
3135
-
3136
- :is(.tds-select select:has( > button))::picker(select){
3137
- inset:auto;
3138
- inline-size:-moz-max-content;
3139
- inline-size:max-content;
3140
- min-inline-size:anchor-size(width);
3141
- max-inline-size:100vi;
3142
- padding:var(--tds-select-dropdown-padding);
3143
- margin-block:var(--tds-select-dropdown-margin-block);
3144
- position-area:block-end span-inline-start;
3145
- position-try-fallbacks:flip-block, flip-inline;
3146
- overflow:auto;
3147
- overflow-x:hidden;
3148
- scroll-behavior:auto;
3149
- overscroll-behavior:none;
3150
- -webkit-user-select:none;
3151
- -moz-user-select:none;
3152
- user-select:none;
3153
- scrollbar-color:var(--tds-select-dropdown-scrollbar-color);
3154
- scrollbar-width:var(--tds-select-dropdown-scrollbar-width);
3155
- background:var(--tds-select-dropdown-background-color);
3156
- border:var(--tds-select-dropdown-border);
3157
- border-radius:var(--tds-select-dropdown-border-radius);
3158
- box-shadow:var(--tds-select-dropdown-box-shadow);
3159
- opacity:var(--tds-select-dropdown-open-opacity);
3160
- translate:var(--tds-select-dropdown-open-translate);
3161
- transition:var(--tds-select-dropdown-transition);
3162
- }
3163
-
3164
- :is(.tds-select select:has( > button)) option::checkmark{
3165
- display:none;
3166
- }
3167
-
3168
- @starting-style{
3169
- :is(.tds-select select:has( > button))::picker(select):popover-open{
3170
- opacity:var(--tds-select-dropdown-closed-opacity);
3171
- translate:var(--tds-select-dropdown-closed-translate);
3172
- }
3173
- }
3174
- }
3175
-
3176
- .tds-time-field-input{
3177
- --tds-field-date-segment-padding-inline:1px;
3178
- padding-block:var(--tds-field-padding-block);
3179
- padding-inline:var(--tds-field-padding-inline);
3180
- font-variant-numeric:tabular-nums;
3181
- }
3182
-
3183
-
3184
- @media (prefers-reduced-motion: no-preference){
3185
-
3186
- :root{
3187
- interpolate-size:allow-keywords;
3188
- }
3189
- }
3190
-
3191
- @layer tds-component{
3192
- tds-sidenav,
3193
- .tds-sidenav{
3194
- --tds-sidenav-indent:12px;
3195
- --tds-sidenav-item-depth:0;
3196
-
3197
- --tds-sidenav-item-transition:background-color var(--t-duration-200) var(--t-ease-in-out);
3198
-
3199
- --tds-sidenav-collapse-transition-enter:opacity var(--t-duration-300) var(--t-ease-out), transform var(--t-duration-300) var(--t-ease-out), display var(--t-duration-300) allow-discrete, overlay var(--t-duration-300) allow-discrete;
3200
- --tds-sidenav-collapse-transition-exit:opacity var(--t-duration-200) var(--t-ease-in), display var(--t-duration-200) allow-discrete, overlay var(--t-duration-200) allow-discrete;
3201
- --tds-sidenav-collapse-closed-opacity:0;
3202
- --tds-sidenav-collapse-open-opacity:1;
3203
- --tds-sidenav-collapse-closed-transform:translateY(-8px);
3204
- --tds-sidenav-collapse-open-transform:translateY(0);
3205
-
3206
- --tds-sidenav-item-icon-size:var(--t-element-size-md);
3207
- --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
3208
- --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
3209
- --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
3210
-
3211
- --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
3212
- --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
3213
- --tds-sidenav-item-nested-background-selected:transparent;
3214
-
3215
- --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
3216
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
3217
- --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
3218
-
3219
- --tds-sidenav-item-icon-color:var(--t-icon-color-secondary);
3220
- --tds-sidenav-item-icon-color-selected:var(--t-icon-color);
3221
- }
3222
-
3223
- @media (prefers-reduced-motion: reduce){
3224
- tds-sidenav,
3225
- .tds-sidenav{
3226
- --tds-sidenav-collapse-transition-enter:none;
3227
- --tds-sidenav-collapse-transition-exit:none;
3228
- --tds-sidenav-collapse-closed-transform:none;
3229
- --tds-sidenav-collapse-open-transform:none;
3230
- }
3231
- }
3232
-
3233
- .tds-sidenav--theme-gray{
3234
- --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
3235
- --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
3236
- --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
3237
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
3238
- --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
3239
- }
3240
- }
3241
-
3242
- .tds-sidenav :where(nav,ul,.tds-sidenav-section){
3243
- display:flex;
3244
- }
3245
-
3246
- .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
3247
- flex-direction:column;
3248
- gap:var(--t-spacing-half);
3249
- width:100%;
3250
- }
3251
-
3252
- .tds-sidenav-section-list{
3253
- width:100%;
3254
- padding:0;
3255
- margin:0;
3256
- list-style:none;
3257
- }
3258
-
3259
- .tds-sidenav-section-header{
3260
- display:flex;
3261
- align-items:baseline;
3262
- justify-content:space-between;
3263
- padding-top:var(--t-spacing-2);
3264
- }
3265
-
3266
- .tds-sidenav-section-header h2{
3267
- margin:0;
3268
- font-size:var(--t-font-size-sm);
3269
- font-weight:var(--t-font-weight-semibold);
3270
- line-height:1.35;
3271
- color:var(--t-text-color-secondary);
3272
- text-transform:uppercase;
3273
- }
3274
-
3275
- .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
3276
- padding-top:0;
3277
- }
3278
-
3279
- .tds-sidenav-section-header [slot="label-actions"]{
3280
- display:flex;
3281
- gap:var(--t-spacing-half);
3282
- align-items:center;
3283
- }
3284
-
3285
- .tds-sidenav-section [slot="section-actions"]{
3286
- display:flex;
3287
- gap:12px;
3288
- align-items:center;
3289
- min-height:42px;
3290
- padding:var(--t-spacing-1) 0;
3291
- }
3292
-
3293
- .tds-sidenav-section-list,
3294
- .tds-sidenav-item{
3295
- width:100%;
3296
- padding:0;
3297
- margin:0;
3298
- }
3299
-
3300
- .tds-sidenav-item :is(a,button){
3301
- position:relative;
3302
- display:flex;
3303
- gap:12px;
3304
- align-items:center;
3305
- width:100%;
3306
- padding:12px;
3307
- overflow:hidden;
3308
- font-size:var(--t-font-size-sm);
3309
- line-height:18px;
3310
- color:var(--t-text-color-headline);
3311
- white-space:nowrap;
3312
- text-decoration:none;
3313
- -webkit-appearance:none;
3314
- -moz-appearance:none;
3315
- appearance:none;
3316
- cursor:pointer;
3317
- background-color:var(--tds-sidenav-item-background, transparent);
3318
- border:0;
3319
- border-radius:var(--t-border-radius);
3320
- transition:var(--tds-sidenav-item-transition);
3321
- }
3322
-
3323
- :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
3324
- display:block;
3325
- flex:1;
3326
- overflow:hidden;
3327
- text-overflow:ellipsis;
3328
- text-align:left;
3329
- white-space:nowrap;
3330
- }
3199
+ transition-duration:var(--t-duration-300);
3200
+ transition-property:var(--tds-select-transition-property);
3201
+ }
3331
3202
 
3332
- :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
3333
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
3334
- color:var(--t-text-color-headline);
3335
- text-decoration:none;
3203
+ :is(.tds-select :is(select,button)):hover:not(:disabled,:focus,:focus-visible,:focus-within,:active,:open){
3204
+ border-color:var(--tds-select-border-color-hover);
3336
3205
  }
3337
3206
 
3338
- :is(.tds-sidenav-item :is(a,button)):active{
3339
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
3207
+ :is(.tds-select :is(select,button)):focus{
3208
+ outline-color:var(--t-focus-ring-color);
3209
+ outline-offset:var(--t-focus-ring-offset);
3210
+ border-color:var(--tds-select-border-color-active);
3340
3211
  }
3341
3212
 
3342
- :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
3343
- overflow:hidden;
3344
- color:var(--tds-sidenav-item-icon-color);
3213
+ :is(.tds-select :is(select,button)):required:invalid,:is(.tds-select :is(select,button)):has(option[hidden][disabled][value=""]:checked){
3214
+ color:var(--tds-select-placeholder-color);
3345
3215
  }
3346
3216
 
3347
- :is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])),:is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])) svg{
3348
- display:block;
3349
- width:var(--tds-sidenav-item-icon-size);
3350
- height:var(--tds-sidenav-item-icon-size);
3351
- }
3352
-
3353
- :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
3354
- --tds-sidenav-indent:19px;
3355
- }
3217
+ .tds-select:has(select:user-invalid,[aria-invalid="true"]),.tds-select.tds-select--invalid{
3218
+ --tds-select-border-color:var(--t-form-border-color-error);
3219
+ --tds-select-border-color-hover:var(--t-form-border-color-error-hover);
3220
+ --tds-select-border-color-active:var(--t-form-border-color-error-hover);
3221
+ --tds-select-background-color:var(--t-form-background-color-error);
3222
+ --tds-select-description-color:var(--t-text-color-status-error);
3223
+ --tds-select-description-invalid-icon-display:inline-block;
3224
+ }
3356
3225
 
3357
- [aria-expanded="true"]:is(.tds-sidenav-item :is(a,button)) + .tds-sidenav-section-list{
3358
- visibility:visible;
3359
- block-size:auto;
3360
- opacity:1;
3226
+ .tds-select:has(select:required,[aria-required="true"]) :is(label,.tds-select-label)::after{
3227
+ margin-left:.25ch;
3228
+ color:var(--t-text-color-status-error);
3229
+ content:"*";
3361
3230
  }
3362
3231
 
3363
- .tds-sidenav-item.selected > :is(a,button),.tds-sidenav-item:has(.tds-sidenav-section):has(.selected) > :is(a,button){
3364
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-selected);
3365
- --tds-sidenav-item-icon-color:var(--tds-sidenav-item-icon-color-selected);
3232
+ .tds-select:has(:is(select,button[role="combobox"]):is(:disabled,[aria-disabled="true"])){
3233
+ --tds-select-border-color:var(--t-form-border-color-disabled);
3234
+ --tds-select-background-color:var(--t-form-background-color-disabled);
3235
+ --tds-select-color:var(--t-form-color-disabled);
3236
+ --tds-select-cursor:not-allowed;
3237
+ }
3366
3238
 
3367
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-selected);
3368
- font-weight:var(--t-font-weight-semibold);
3239
+ .tds-select:has( > [popover]:popover-open) > button{
3240
+ border-color:var(--tds-select-border-color-active);
3369
3241
  }
3370
3242
 
3371
- .tds-sidenav-item:has(.tds-sidenav-section){
3372
- display:flex;
3373
- flex-direction:column;
3374
- gap:var(--t-spacing-half);
3243
+ :is(.tds-select:has( > [popover]:popover-open) > button)::after{
3244
+ transform:rotate(.5turn);
3245
+ }
3246
+
3247
+ .tds-select :is(hr,li[role="separator"]){
3248
+ margin-block:var(--t-spacing-half);
3249
+ color:var(--tds-select-border-color);
3250
+ border:0;
3251
+ border-top:1px solid;
3375
3252
  }
3376
3253
 
3377
- .tds-sidenav-item .tds-sidenav-section-list{
3378
- --tds-sidenav-item-depth:1;
3379
- gap:0;
3254
+ .tds-select :is(li[role="option"],option:not([hidden])){
3255
+ display:block;
3256
+ align-content:center;
3257
+ min-height:var(--t-container-size-md);
3258
+ padding-block:var(--tds-select-option-padding-block);
3259
+ padding-inline:var(--tds-select-option-padding-inline);
3260
+ overflow:hidden;
3261
+ text-overflow:ellipsis;
3262
+ font-size:var(--tds-select-option-font-size);
3263
+ line-height:1.15;
3264
+ color:var(--tds-select-option-color);
3265
+ white-space:nowrap;
3266
+ cursor:default;
3267
+ border-radius:var(--tds-select-option-border-radius);
3380
3268
  }
3381
3269
 
3382
- .tds-sidenav-action--toggle + :is(.tds-sidenav-item .tds-sidenav-section-list){
3383
- visibility:hidden;
3384
- block-size:0;
3385
- overflow-y:clip;
3386
- opacity:0;
3387
- transition:content-visibility var(--t-duration-400) allow-discrete, opacity var(--t-duration-400), block-size var(--t-duration-400);
3270
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):focus-visible{
3271
+ outline:0;
3388
3272
  }
3389
3273
 
3390
- :is(.tds-sidenav-item .tds-sidenav-section-list) .tds-sidenav-section-list{
3391
- --tds-sidenav-item-depth:2;
3274
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):is(:focus,:hover,.tds-select-option--active):not([disabled],[aria-disabled="true"]){
3275
+ background:var(--tds-select-option-background-hover);
3392
3276
  }
3393
3277
 
3394
- :is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
3395
- min-height:var(--t-element-size-2xl);
3396
- padding-block:9px;
3397
- padding-left:calc((var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth)) + var(--tds-sidenav-indent) + var(--t-spacing-fourth));
3398
- line-height:1;
3399
- background-color:transparent;
3278
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-selected="true"],:checked):not([disabled],[aria-disabled="true"]){
3279
+ background:var(--tds-select-option-background-active);
3400
3280
  }
3401
3281
 
3402
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::before{
3403
- position:absolute;
3404
- top:0;
3405
- bottom:0;
3406
- left:calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
3407
- width:2px;
3408
- content:"";
3409
- background-color:var(--tds-sidenav-item-nested-border-color);
3410
- transition:var(--tds-sidenav-item-transition);
3411
- }
3282
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-disabled="true"],:disabled){
3283
+ color:var(--t-form-color-disabled);
3284
+ cursor:not-allowed;
3285
+ }
3412
3286
 
3413
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button))::after{
3414
- position:absolute;
3415
- inset:0 0 0 calc(var(--tds-sidenav-indent) * var(--tds-sidenav-item-depth));
3416
- z-index:-1;
3417
- height:100%;
3418
- content:"";
3419
- background-color:var(--tds-sidenav-item-nested-background);
3420
- border-radius:0 var(--t-border-radius) var(--t-border-radius) 0;
3421
- transition:var(--tds-sidenav-item-transition);
3287
+ :is(.tds-select :is(li[role="option"],option:not([hidden]))):is([aria-disabled="true"],:disabled):is(:focus,:hover){
3288
+ background:transparent;
3422
3289
  }
3423
3290
 
3424
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):not(:has(.prefix,.suffix)),:is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)) :is(:not(.prefix,.suffix)){
3425
- display:block;
3426
- text-align:left;
3427
- white-space:normal;
3428
- }
3291
+ .tds-select :is(li[role="presentation"],legend){
3292
+ position:sticky;
3293
+ inset-block-start:calc(var(--tds-select-dropdown-padding) * -1);
3294
+ z-index:1;
3295
+ float:inline-start;
3296
+ inline-size:100%;
3297
+ padding-block:var(--tds-select-group-label-padding-block);
3298
+ padding-inline:var(--tds-select-group-label-padding-inline);
3299
+ container-type:scroll-state;
3300
+ font-size:var(--tds-select-group-label-font-size);
3301
+ font-weight:var(--tds-select-group-label-font-weight);
3302
+ letter-spacing:var(--tds-select-group-label-letter-spacing);
3303
+ background:var(--tds-select-group-label-background);
3304
+ text-box:trim-both cap alphabetic;
3305
+ }
3429
3306
 
3430
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):hover,:is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):focus-visible{
3431
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-hover);
3432
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-hover);
3433
- }
3307
+ :is(.tds-select :is(li[role="presentation"],legend)) span{
3308
+ display:inline-flex;
3309
+ gap:var(--t-spacing-half);
3310
+ align-items:center;
3311
+ color:var(--tds-select-group-label-color);
3312
+ transition:var(--tds-select-group-label-transition);
3313
+ }
3434
3314
 
3435
- :is(:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button)):active{
3436
- --tds-sidenav-item-nested-background:var(--tds-sidenav-item-nested-background-active);
3437
- }
3315
+ @container scroll-state(stuck){
3438
3316
 
3439
- .selected:is(.tds-sidenav-section-list .tds-sidenav-section-list .tds-sidenav-item) :is(a,button){
3440
- --tds-sidenav-item-nested-border-color:var(--tds-sidenav-item-nested-border-color-selected);
3441
- font-weight:var(--t-font-weight-medium);
3317
+ :is(.tds-select :is(li[role="presentation"],legend)) span{
3318
+ color:var(--tds-select-group-label-color-stuck);
3442
3319
  }
3443
3320
 
3444
- .tds-sidenav-responsive-header{
3321
+ @media (forced-colors: active){
3322
+
3323
+ :is(.tds-select :is(li[role="presentation"],legend)) span{
3324
+ color:var(--tds-select-group-label-color-stuck);
3325
+ }
3326
+ }
3327
+ }
3328
+
3329
+ .tds-select.tds-select--lg{
3330
+ --tds-select-min-height:var(--t-container-size-lg);
3331
+ --tds-select-font-size:var(--t-font-size-lg);
3332
+ }
3333
+
3334
+ @media (prefers-reduced-motion: reduce){
3335
+
3336
+ .tds-select{
3337
+ --tds-select-transition-property:none;
3338
+ --tds-select-dropdown-transition:none;
3339
+ --tds-select-dropdown-closed-translate:none;
3340
+ --tds-select-dropdown-open-translate:none;
3341
+ --tds-select-caret-transition:none;
3342
+ }
3343
+ }
3344
+
3345
+ .tds-select-description{
3445
3346
  display:flex;
3446
- gap:var(--t-spacing-2);
3447
- align-items:center;
3448
- width:100%;
3347
+ gap:var(--t-spacing-half);
3348
+ align-items:flex-start;
3349
+ margin:0;
3350
+ font-size:var(--t-font-size-sm);
3351
+ line-height:1.35;
3352
+ color:var(--tds-select-description-color, var(--t-text-color-secondary));
3353
+ cursor:text;
3449
3354
  }
3450
3355
 
3451
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-toggle{
3452
- order:0;
3356
+ .tds-select-description .tds-select-description-invalid-icon{
3357
+ display:var(--tds-select-description-invalid-icon-display, none);
3358
+ flex-shrink:0;
3359
+ margin-block-start:calc(.5lh - .5em);
3360
+ line-height:1.35;
3453
3361
  }
3454
3362
 
3455
- .tds-sidenav-responsive-header .tds-sidenav-responsive-header-label{
3456
- flex:1;
3457
- order:1;
3458
- margin:0;
3459
- font-size:var(--t-font-size-lg);
3460
- font-weight:var(--t-font-weight-medium);
3461
- color:var(--t-text-color-headline);
3462
- }
3363
+ .tds-select > .tds-select-hidden-select{
3364
+ position:absolute;
3365
+ inline-size:1px;
3366
+ block-size:1px;
3367
+ padding:0;
3368
+ margin:0;
3369
+ pointer-events:none;
3370
+ opacity:0;
3371
+ }
3463
3372
 
3464
- @media (max-width: 719px){
3465
- .tds-sidenav-collapse{
3466
- z-index:10001;
3467
- display:none;
3468
- max-width:min(448px, calc(100vw - 48px));
3469
- padding:0;
3470
- margin:12px 0;
3471
- position-area:bottom span-right;
3472
- overflow:hidden;
3473
- outline:0;
3474
- background:var(--t-surface-color-card);
3475
- border:0;
3476
- border-radius:6px;
3477
- box-shadow:0 8px 20px 0 rgba(0, 0, 0, .25);
3478
- opacity:var(--tds-sidenav-collapse-open-opacity);
3479
- transform:var(--tds-sidenav-collapse-open-transform);
3480
- transition:var(--tds-sidenav-collapse-transition-enter);
3481
- will-change:transform;
3373
+ .tds-select:has(> button){
3374
+ anchor-scope:--tds-select-anchor;
3375
+ }
3376
+
3377
+ .tds-select:has( > button) > button{
3378
+ display:block;
3379
+ padding-inline-end:calc(var(--tds-select-caret-size) + var(--tds-select-caret-inline-offset) + .75ch);
3380
+ anchor-name:--tds-select-anchor;
3381
+ overflow:hidden;
3382
+ text-overflow:ellipsis;
3383
+ color:var(--tds-select-placeholder-color);
3384
+ white-space:nowrap;
3385
+ background-image:none;
3386
+ transition:background-color var(--t-duration-300) var(--t-ease-in-out), border-color var(--t-duration-300) var(--t-ease-in-out), outline-color var(--t-duration-300) var(--t-ease-in-out), outline-offset var(--t-duration-300) var(--t-ease-in-out), transform var(--t-duration-100) var(--t-ease-in-out);
3387
+ -webkit-tap-highlight-color:transparent;
3482
3388
  }
3483
3389
 
3484
- .tds-sidenav-scroll-container{
3485
- --webkit-overflow-scrolling:touch;
3486
- display:block;
3487
- width:100%;
3488
- height:-moz-fit-content;
3489
- height:fit-content;
3490
- padding:var(--t-spacing-2);
3491
- overflow-y:auto;
3390
+ :is(.tds-select:has( > button) > button)::after{
3391
+ position:absolute;
3392
+ inset-block:0;
3393
+ inset-inline-end:var(--tds-select-caret-inline-offset);
3394
+ width:var(--tds-select-caret-size);
3395
+ height:var(--tds-select-caret-size);
3396
+ margin-block:auto;
3397
+ line-height:1;
3398
+ pointer-events:none;
3399
+ content:var(--tds-select-background-image);
3400
+ transform:rotate(0);
3401
+ transition:var(--tds-select-caret-transition);
3402
+ }
3403
+
3404
+ .tds-select:has( > button):has([role="option"][aria-selected="true"]) > button{
3405
+ color:var(--tds-select-color);
3492
3406
  }
3493
3407
 
3494
- .tds-sidenav-item :is(a, button) :is(.prefix){
3495
- display:none;
3408
+ .tds-select:has( > button) [popover]{
3409
+ inset:auto;
3410
+ inline-size:-moz-max-content;
3411
+ inline-size:max-content;
3412
+ min-inline-size:anchor-size(width);
3413
+ max-inline-size:100vi;
3414
+ max-block-size:min(50vh, 20rem);
3415
+ padding:var(--tds-select-dropdown-padding);
3416
+ margin-block:var(--tds-select-dropdown-margin-block);
3417
+ position-area:block-end span-inline-start;
3418
+ position-anchor:--tds-select-anchor;
3419
+ position-try-fallbacks:flip-block, flip-inline;
3420
+ overflow:auto;
3421
+ overflow-x:hidden;
3422
+ overscroll-behavior:none;
3423
+ -webkit-user-select:none;
3424
+ -moz-user-select:none;
3425
+ user-select:none;
3426
+ scrollbar-color:var(--tds-select-dropdown-scrollbar-color);
3427
+ scrollbar-width:var(--tds-select-dropdown-scrollbar-width);
3428
+ background:var(--tds-select-dropdown-background-color);
3429
+ border:var(--tds-select-dropdown-border);
3430
+ border-radius:var(--tds-select-dropdown-border-radius);
3431
+ box-shadow:var(--tds-select-dropdown-box-shadow);
3432
+ opacity:var(--tds-select-dropdown-open-opacity);
3433
+ translate:var(--tds-select-dropdown-open-translate);
3434
+ transition:var(--tds-select-dropdown-transition);
3496
3435
  }
3497
- @supports selector(:popover-open){
3498
- .tds-sidenav-collapse:popover-open{
3499
- display:flex;
3436
+
3437
+ :is(.tds-select:has( > button) [popover]):not(:popover-open){
3438
+ opacity:var(--tds-select-dropdown-closed-opacity);
3439
+ translate:var(--tds-select-dropdown-closed-translate);
3500
3440
  }
3501
3441
 
3502
- .tds-sidenav-collapse:not(:popover-open){
3503
- opacity:var(--tds-sidenav-collapse-closed-opacity);
3504
- transition:var(--tds-sidenav-collapse-transition-exit);
3442
+ :is(.tds-select:has( > button) [popover]) ul{
3443
+ padding:0;
3444
+ margin:0;
3445
+ list-style:none;
3505
3446
  }
3506
3447
 
3507
- @starting-style{
3508
- .tds-sidenav-collapse:popover-open{
3509
- opacity:var(--tds-sidenav-collapse-closed-opacity);
3510
- transform:var(--tds-sidenav-collapse-closed-transform);
3448
+ @starting-style{
3449
+ :is(.tds-select:has( > button) [popover]):popover-open{
3450
+ opacity:var(--tds-select-dropdown-closed-opacity);
3451
+ translate:var(--tds-select-dropdown-closed-translate);
3511
3452
  }
3512
3453
  }
3454
+
3455
+ @supports ((-webkit-appearance: base-select) or (-moz-appearance: base-select) or (appearance: base-select)){
3456
+ .tds-select select:has(> button){
3457
+ padding-inline-end:0;
3458
+ background-image:none;
3513
3459
  }
3514
- @supports not selector(:popover-open){
3515
- .tds-sidenav-collapse.\:popover-open{
3516
- display:flex;
3460
+ @media (hover) and (pointer: fine){
3461
+ :is(.tds-select select:has( > button)),:is(.tds-select select:has( > button))::picker(select){
3462
+ padding-block:0;
3463
+ -webkit-appearance:base-select;
3464
+ -moz-appearance:base-select;
3465
+ appearance:base-select;
3466
+ }
3517
3467
  }
3518
-
3519
- .tds-sidenav-collapse:not(.\:popover-open){
3520
- opacity:var(--tds-sidenav-collapse-closed-opacity);
3521
- transition:var(--tds-sidenav-collapse-transition-exit);
3468
+ :is(.tds-select select:has( > button))::picker-icon{
3469
+ flex-shrink:0;
3470
+ width:var(--tds-select-caret-size);
3471
+ height:var(--tds-select-caret-size);
3472
+ margin-inline-end:var(--tds-select-caret-inline-offset);
3473
+ line-height:1;
3474
+ content:var(--tds-select-background-image);
3475
+ transition:var(--tds-select-caret-transition);
3522
3476
  }
3523
- }
3524
- }
3525
3477
 
3526
- @media (min-width: 720px){
3527
- .tds-sidenav-responsive-header{
3528
- display:none;
3529
- }
3530
- }
3478
+ :is(.tds-select select:has( > button))::picker(select):not(:popover-open){
3479
+ opacity:var(--tds-select-dropdown-closed-opacity);
3480
+ translate:var(--tds-select-dropdown-closed-translate);
3481
+ }
3531
3482
 
3532
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > :not([slot="ssr"]){
3533
- display:none;
3483
+ :is(.tds-select select:has( > button)):open,:is(.tds-select select:has( > button)):focus-within{
3484
+ outline-color:var(--t-focus-ring-color);
3485
+ outline-offset:var(--t-focus-ring-offset);
3486
+ border-color:var(--tds-select-border-color-active);
3534
3487
  }
3535
3488
 
3536
- :is(tds-sidenav,tds-sidenav-section,tds-sidenav-item):not(.hydrated) > [slot="ssr"]{
3537
- display:block;
3489
+ :is(.tds-select select:has( > button)):open::picker-icon{
3490
+ opacity:1;
3491
+ transform:rotate(.5turn);
3538
3492
  }
3539
3493
 
3540
- tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
3541
- display:flex;
3542
- flex-direction:column;
3494
+ :is(.tds-select select:has( > button)) selectedcontent{
3495
+ overflow:hidden;
3496
+ text-overflow:ellipsis;
3497
+ line-height:calc(var(--tds-select-min-height) - 2px);
3498
+ white-space:nowrap;
3543
3499
  }
3544
3500
 
3545
- .tds-loading-spinner{
3546
- --tds-loading-spinner-size:1.25em;
3501
+ :is(.tds-select select:has( > button)):has(option[hidden][disabled][value=""]:checked) > button{
3502
+ color:var(--tds-select-placeholder-color);
3503
+ }
3547
3504
 
3548
- position:absolute;
3549
- right:0;
3550
- left:0;
3551
- visibility:var(--tds-loading-spinner-visibility, hidden);
3552
- width:var(--tds-loading-spinner-size);
3553
- height:var(--tds-loading-spinner-size);
3554
- margin:auto;
3555
- border:var(--tds-loading-spinner-track-width, 4px) solid var(--tds-loading-spinner-track-color, var(--t-fill-color-transparency-dark-020));
3556
- border-top-color:var(--tds-loading-spinner-color, currentcolor);
3557
- border-radius:50%;
3558
- animation:spinner-rotate 500ms infinite linear;
3559
- animation-play-state:var(--tds-loading-spinner-animation-play-state, paused);
3560
- }
3505
+ :is(.tds-select select:has( > button))::picker(select){
3506
+ inset:auto;
3507
+ inline-size:-moz-max-content;
3508
+ inline-size:max-content;
3509
+ min-inline-size:anchor-size(width);
3510
+ max-inline-size:100vi;
3511
+ padding:var(--tds-select-dropdown-padding);
3512
+ margin-block:var(--tds-select-dropdown-margin-block);
3513
+ position-area:block-end span-inline-start;
3514
+ position-try-fallbacks:flip-block, flip-inline;
3515
+ overflow:auto;
3516
+ overflow-x:hidden;
3517
+ scroll-behavior:auto;
3518
+ overscroll-behavior:none;
3519
+ -webkit-user-select:none;
3520
+ -moz-user-select:none;
3521
+ user-select:none;
3522
+ scrollbar-color:var(--tds-select-dropdown-scrollbar-color);
3523
+ scrollbar-width:var(--tds-select-dropdown-scrollbar-width);
3524
+ background:var(--tds-select-dropdown-background-color);
3525
+ border:var(--tds-select-dropdown-border);
3526
+ border-radius:var(--tds-select-dropdown-border-radius);
3527
+ box-shadow:var(--tds-select-dropdown-box-shadow);
3528
+ opacity:var(--tds-select-dropdown-open-opacity);
3529
+ translate:var(--tds-select-dropdown-open-translate);
3530
+ transition:var(--tds-select-dropdown-transition);
3531
+ }
3561
3532
 
3562
- @keyframes spinner-rotate{
3563
- to{
3564
- transform:rotate(360deg);
3565
- }
3566
- }
3533
+ :is(.tds-select select:has( > button)) option::checkmark{
3534
+ display:none;
3535
+ }
3567
3536
 
3568
- @media (prefers-reduced-motion: reduce){
3569
- [class*="--loading"] .tds-loading-spinner{
3570
- --tds-loading-spinner-animation-play-state:paused;
3571
- }
3537
+ @starting-style{
3538
+ :is(.tds-select select:has( > button))::picker(select):popover-open{
3539
+ opacity:var(--tds-select-dropdown-closed-opacity);
3540
+ translate:var(--tds-select-dropdown-closed-translate);
3541
+ }
3542
+ }
3572
3543
  }
3573
3544
 
3574
3545
  .tds-input{
@@ -3708,6 +3679,35 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
3708
3679
  line-height:1.35;
3709
3680
  }
3710
3681
 
3682
+ .tds-loading-spinner{
3683
+ --tds-loading-spinner-size:1.25em;
3684
+
3685
+ position:absolute;
3686
+ right:0;
3687
+ left:0;
3688
+ visibility:var(--tds-loading-spinner-visibility, hidden);
3689
+ width:var(--tds-loading-spinner-size);
3690
+ height:var(--tds-loading-spinner-size);
3691
+ margin:auto;
3692
+ border:var(--tds-loading-spinner-track-width, 4px) solid var(--tds-loading-spinner-track-color, var(--t-fill-color-transparency-dark-020));
3693
+ border-top-color:var(--tds-loading-spinner-color, currentcolor);
3694
+ border-radius:50%;
3695
+ animation:spinner-rotate 500ms infinite linear;
3696
+ animation-play-state:var(--tds-loading-spinner-animation-play-state, paused);
3697
+ }
3698
+
3699
+ @keyframes spinner-rotate{
3700
+ to{
3701
+ transform:rotate(360deg);
3702
+ }
3703
+ }
3704
+
3705
+ @media (prefers-reduced-motion: reduce){
3706
+ [class*="--loading"] .tds-loading-spinner{
3707
+ --tds-loading-spinner-animation-play-state:paused;
3708
+ }
3709
+ }
3710
+
3711
3711
  .symbol{
3712
3712
  display:inline-block;
3713
3713
  vertical-align:text-top;
@@ -5909,6 +5909,37 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
5909
5909
  [data-padding-inline-xl="7"]{ padding-inline:var(--t-spacing-7); }
5910
5910
  }
5911
5911
 
5912
+ .tds-data-table-wrapper{
5913
+ overflow-x:auto;
5914
+ }
5915
+
5916
+ .tds-data-table{
5917
+ width:100%;
5918
+ font-size:var(--t-font-size-md);
5919
+ color:var(--t-text-color);
5920
+ border-collapse:collapse;
5921
+ }
5922
+
5923
+ .tds-data-table th,.tds-data-table td{
5924
+ padding:var(--t-spacing-1);
5925
+ text-align:start;
5926
+ white-space:nowrap;
5927
+ border-bottom:1px solid var(--t-border-color);
5928
+ }
5929
+
5930
+ .tds-data-table th{
5931
+ font-weight:var(--t-font-weight-semibold);
5932
+ }
5933
+
5934
+ .tds-data-table-column-label--hidden{
5935
+ position:absolute;
5936
+ width:1px;
5937
+ height:1px;
5938
+ overflow:hidden;
5939
+ white-space:nowrap;
5940
+ clip-path:inset(50%);
5941
+ }
5942
+
5912
5943
  .t-banner{
5913
5944
  --t-banner-font-size:var(--t-font-size-md);
5914
5945
  --t-banner-font-color:var(--t-text-color);