@expressivecss/expressive 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +1 -1
  2. package/dist/css/expressive.css +1011 -1339
  3. package/dist/css/expressive.css.map +1 -1
  4. package/dist/css/expressive.min.css +1 -1
  5. package/dist/css/expressive.min.css.map +1 -1
  6. package/dist/js/expressive.cjs +701 -853
  7. package/dist/js/expressive.cjs.map +4 -4
  8. package/dist/js/expressive.js +701 -853
  9. package/dist/js/expressive.js.map +4 -4
  10. package/dist/js/expressive.min.js +10 -20
  11. package/dist/js/expressive.min.js.map +4 -4
  12. package/dist/js/expressive.mjs +701 -854
  13. package/dist/js/expressive.mjs.map +4 -4
  14. package/dist/types/components/autocomplete.d.ts +2 -9
  15. package/dist/types/components/buttons.d.ts +2 -2
  16. package/dist/types/components/cards.d.ts +3 -6
  17. package/dist/types/components/carousel.d.ts +3 -3
  18. package/dist/types/components/characterCounter.d.ts +3 -5
  19. package/dist/types/components/chips.d.ts +2 -2
  20. package/dist/types/components/collapsible.d.ts +6 -23
  21. package/dist/types/components/datepicker.d.ts +2 -8
  22. package/dist/types/components/dropdown.d.ts +11 -2
  23. package/dist/types/components/index.d.ts +0 -1
  24. package/dist/types/components/lightbox.d.ts +2 -2
  25. package/dist/types/components/parallax.d.ts +2 -8
  26. package/dist/types/components/pushpin.d.ts +2 -2
  27. package/dist/types/components/range.d.ts +2 -2
  28. package/dist/types/components/registry.d.ts +0 -4
  29. package/dist/types/components/scrollspy.d.ts +26 -50
  30. package/dist/types/components/select.d.ts +20 -6
  31. package/dist/types/components/sidenav.d.ts +40 -55
  32. package/dist/types/components/slider.d.ts +2 -2
  33. package/dist/types/components/tabs.d.ts +2 -2
  34. package/dist/types/components/tapTarget.d.ts +2 -2
  35. package/dist/types/components/timepicker.d.ts +2 -4
  36. package/dist/types/components/tooltip.d.ts +2 -2
  37. package/dist/types/core/component.d.ts +4 -4
  38. package/dist/types/index.d.ts +1 -1
  39. package/package.json +2 -2
  40. package/src/sass/README.md +2 -6
  41. package/src/sass/abstracts/_breakpoints.scss +0 -16
  42. package/src/sass/abstracts/_variables.scss +0 -21
  43. package/src/sass/base/_grid.scss +0 -19
  44. package/src/sass/components/_badges.scss +1 -1
  45. package/src/sass/components/_buttons.scss +22 -54
  46. package/src/sass/components/_cards.scss +50 -123
  47. package/src/sass/components/_carousel.scss +4 -6
  48. package/src/sass/components/_collapsible.scss +13 -15
  49. package/src/sass/components/_collection.scss +9 -27
  50. package/src/sass/components/_datepicker.scss +1 -15
  51. package/src/sass/components/_dropdown.scss +110 -14
  52. package/src/sass/components/_index.scss +1 -0
  53. package/src/sass/components/_modal.scss +13 -31
  54. package/src/sass/components/_navbar.scss +9 -6
  55. package/src/sass/components/_page-footer.scss +134 -15
  56. package/src/sass/components/_parallax.scss +7 -28
  57. package/src/sass/components/_preloader.scss +145 -300
  58. package/src/sass/components/_scrollspy.scss +18 -0
  59. package/src/sass/components/_sidenav.scss +226 -120
  60. package/src/sass/components/_table_of_contents.scss +30 -14
  61. package/src/sass/components/_tabs.scss +54 -35
  62. package/src/sass/components/_tapTarget.scss +2 -6
  63. package/src/sass/components/_toast.scss +10 -11
  64. package/src/sass/components/_toolbar.scss +2 -2
  65. package/src/sass/components/_tooltip.scss +4 -9
  66. package/src/sass/components/_transitions.scss +0 -5
  67. package/src/sass/components/forms/_index.scss +0 -5
  68. package/src/sass/components/forms/_input-fields.scss +49 -52
  69. package/src/sass/components/forms/_select.scss +175 -60
  70. package/src/sass/components/forms/_switches.scss +21 -8
  71. package/src/sass/utilities/_helpers.scss +1 -3
  72. package/src/sass/utilities/_typescale.scss +0 -5
  73. package/src/sass/utilities/_visibility.scss +2 -2
  74. package/dist/types/components/modal.d.ts +0 -45
@@ -1179,7 +1179,7 @@
1179
1179
  --md-comp-filled-button-icon-size: 18px;
1180
1180
  --md-comp-filled-button-icon-label-space: 8px;
1181
1181
  }
1182
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small) {
1182
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button) {
1183
1183
  box-sizing: border-box;
1184
1184
  display: inline-flex;
1185
1185
  align-items: center;
@@ -1204,7 +1204,7 @@
1204
1204
  -webkit-tap-highlight-color: transparent;
1205
1205
  transition: background-color 0.2s ease-out, box-shadow 0.2s ease-out;
1206
1206
  }
1207
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small) > i {
1207
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button) > i {
1208
1208
  flex: 0 0 auto;
1209
1209
  font-size: var(--md-comp-filled-button-icon-size);
1210
1210
  width: var(--md-comp-filled-button-icon-size);
@@ -1212,119 +1212,100 @@
1212
1212
  line-height: var(--md-comp-filled-button-icon-size);
1213
1213
  overflow: hidden;
1214
1214
  }
1215
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small):has(> i + span) {
1215
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button):has(> i + span) {
1216
1216
  padding-inline-start: var(--md-comp-filled-button-with-icon-leading-space);
1217
1217
  }
1218
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small):has(> span + i) {
1218
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button):has(> span + i) {
1219
1219
  padding-inline-end: var(--md-comp-filled-button-with-icon-leading-space);
1220
1220
  }
1221
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).circle {
1221
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).circle {
1222
1222
  width: var(--md-comp-filled-button-container-height);
1223
1223
  padding: 0;
1224
1224
  border-radius: 50%;
1225
1225
  }
1226
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).circle > i {
1226
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).circle > i {
1227
1227
  font-size: 24px;
1228
1228
  width: 24px;
1229
1229
  height: 24px;
1230
1230
  line-height: 24px;
1231
1231
  }
1232
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small):not(.tonal, .outlined, .border, .elevated, .text, .transparent, .btn-flat) {
1232
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button):not(.tonal, .outlined, .elevated, .text) {
1233
1233
  color: var(--md-comp-filled-button-label-text-color, var(--md-sys-color-on-primary));
1234
1234
  background-color: var(--md-comp-filled-button-container-color, var(--md-sys-color-primary));
1235
1235
  }
1236
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small):not(.tonal, .outlined, .border, .elevated, .text, .transparent, .btn-flat):hover {
1236
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button):not(.tonal, .outlined, .elevated, .text):hover {
1237
1237
  background-color: color-mix(in oklab, var(--md-sys-color-on-primary) 8%, var(--md-sys-color-primary));
1238
1238
  }
1239
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small):not(.tonal, .outlined, .border, .elevated, .text, .transparent, .btn-flat):active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small):not(.tonal, .outlined, .border, .elevated, .text, .transparent, .btn-flat):focus {
1239
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button):not(.tonal, .outlined, .elevated, .text):active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button):not(.tonal, .outlined, .elevated, .text):focus {
1240
1240
  background-color: color-mix(in oklab, var(--md-sys-color-on-primary) 10%, var(--md-sys-color-primary));
1241
1241
  }
1242
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small):not(.tonal, .outlined, .border, .elevated, .text, .transparent, .btn-flat):focus-visible {
1242
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button):not(.tonal, .outlined, .elevated, .text):focus-visible {
1243
1243
  outline: 3px solid var(--md-sys-color-secondary);
1244
1244
  outline-offset: 2px;
1245
1245
  }
1246
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).tonal {
1246
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).tonal {
1247
1247
  color: var(--md-sys-color-on-secondary-container);
1248
1248
  background-color: var(--md-sys-color-secondary-container);
1249
1249
  }
1250
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).tonal:hover {
1250
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).tonal:hover {
1251
1251
  background-color: color-mix(in oklab, var(--md-sys-color-on-secondary-container) 8%, var(--md-sys-color-secondary-container));
1252
1252
  }
1253
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).tonal:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).tonal:focus {
1253
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).tonal:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).tonal:focus {
1254
1254
  background-color: color-mix(in oklab, var(--md-sys-color-on-secondary-container) 10%, var(--md-sys-color-secondary-container));
1255
1255
  }
1256
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).tonal:focus-visible {
1256
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).tonal:focus-visible {
1257
1257
  outline: 3px solid var(--md-sys-color-secondary);
1258
1258
  outline-offset: 2px;
1259
1259
  }
1260
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).outlined,
1261
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).border {
1260
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).outlined {
1262
1261
  background-color: transparent;
1263
1262
  color: var(--md-sys-color-primary);
1264
1263
  border: 1px solid var(--md-sys-color-outline);
1265
1264
  }
1266
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).outlined:hover,
1267
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).border:hover {
1265
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).outlined:hover {
1268
1266
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 8%, transparent);
1269
1267
  }
1270
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).outlined:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).outlined:focus,
1271
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).border:active,
1272
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).border:focus {
1268
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).outlined:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).outlined:focus {
1273
1269
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 10%, transparent);
1274
1270
  }
1275
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).outlined:focus-visible,
1276
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).border:focus-visible {
1271
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).outlined:focus-visible {
1277
1272
  outline: 3px solid var(--md-sys-color-secondary);
1278
1273
  outline-offset: 2px;
1279
1274
  }
1280
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).elevated {
1275
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).elevated {
1281
1276
  color: var(--md-sys-color-primary);
1282
1277
  background-color: var(--md-sys-color-surface);
1283
1278
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
1284
1279
  }
1285
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).elevated:hover {
1280
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).elevated:hover {
1286
1281
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
1287
1282
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 8%, var(--md-sys-color-surface));
1288
1283
  }
1289
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).elevated:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).elevated:focus {
1284
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).elevated:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).elevated:focus {
1290
1285
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
1291
1286
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 10%, var(--md-sys-color-surface));
1292
1287
  }
1293
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).elevated:focus-visible {
1288
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).elevated:focus-visible {
1294
1289
  outline: 3px solid var(--md-sys-color-secondary);
1295
1290
  outline-offset: 2px;
1296
1291
  }
1297
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).text,
1298
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).transparent,
1299
- .btn-flat {
1292
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).text {
1300
1293
  box-shadow: none !important;
1301
1294
  color: var(--md-sys-color-primary);
1302
1295
  background-color: transparent;
1303
1296
  border-color: transparent;
1304
1297
  }
1305
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).text:hover,
1306
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).transparent:hover,
1307
- .btn-flat:hover {
1298
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).text:hover {
1308
1299
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 8%, transparent);
1309
1300
  }
1310
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).text:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).text:focus,
1311
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).transparent:active,
1312
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).transparent:focus,
1313
- .btn-flat:active,
1314
- .btn-flat:focus {
1301
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).text:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).text:focus {
1315
1302
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 10%, transparent);
1316
1303
  }
1317
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).text:focus-visible,
1318
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).transparent:focus-visible,
1319
- .btn-flat:focus-visible {
1304
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).text:focus-visible {
1320
1305
  outline: 3px solid var(--md-sys-color-secondary);
1321
1306
  outline-offset: 2px;
1322
1307
  }
1323
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).icon-right {
1324
- flex-direction: row-reverse;
1325
- }
1326
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).small,
1327
- .btn-small {
1308
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).small {
1328
1309
  --md-comp-filled-button-container-height: 32px;
1329
1310
  --md-comp-filled-button-container-shape: 16px;
1330
1311
  --md-comp-filled-button-leading-space: 16px;
@@ -1334,9 +1315,8 @@
1334
1315
  height: 32px;
1335
1316
  font-size: var(--md-sys-typescale-label-medium-font-size);
1336
1317
  }
1337
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large,
1338
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra,
1339
- .btn-large {
1318
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large,
1319
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra {
1340
1320
  --md-comp-filled-button-container-height: 56px;
1341
1321
  --md-comp-filled-button-container-shape: 28px;
1342
1322
  --md-comp-filled-button-leading-space: 24px;
@@ -1345,14 +1325,10 @@
1345
1325
  --md-comp-filled-button-icon-size: 24px;
1346
1326
  height: 56px;
1347
1327
  }
1348
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).rounded {
1328
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).rounded {
1349
1329
  border-radius: 9999px;
1350
1330
  }
1351
- .btn-block {
1352
- display: flex;
1353
- width: 100%;
1354
- }
1355
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extend {
1331
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extend {
1356
1332
  height: 56px;
1357
1333
  padding-inline: 16px 20px;
1358
1334
  border-radius: 16px;
@@ -1360,27 +1336,25 @@
1360
1336
  background-color: var(--md-sys-color-primary-container);
1361
1337
  box-shadow: 0 8px 17px 2px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
1362
1338
  }
1363
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extend:hover {
1339
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extend:hover {
1364
1340
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -7px rgba(0, 0, 0, 0.2);
1365
1341
  background-color: color-mix(in oklab, var(--md-sys-color-on-primary-container) 8%, var(--md-sys-color-primary-container));
1366
1342
  }
1367
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extend:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extend:focus {
1343
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extend:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extend:focus {
1368
1344
  background-color: color-mix(in oklab, var(--md-sys-color-on-primary-container) 10%, var(--md-sys-color-primary-container));
1369
1345
  }
1370
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extend:focus-visible {
1346
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extend:focus-visible {
1371
1347
  outline: 3px solid var(--md-sys-color-secondary);
1372
1348
  outline-offset: 2px;
1373
1349
  }
1374
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extend > i {
1350
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extend > i {
1375
1351
  font-size: 24px;
1376
1352
  width: 24px;
1377
1353
  height: 24px;
1378
1354
  line-height: 24px;
1379
1355
  }
1380
- .btn-floating,
1381
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle,
1382
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle,
1383
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle {
1356
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle,
1357
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle {
1384
1358
  display: inline-flex;
1385
1359
  align-items: center;
1386
1360
  justify-content: center;
@@ -1397,94 +1371,53 @@
1397
1371
  vertical-align: middle;
1398
1372
  box-shadow: 0 8px 17px 2px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
1399
1373
  }
1400
- .btn-floating:focus-visible,
1401
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle:focus-visible,
1402
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle:focus-visible,
1403
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle:focus-visible {
1374
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle:focus-visible,
1375
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle:focus-visible {
1404
1376
  outline: 3px solid var(--md-sys-color-secondary);
1405
1377
  outline-offset: 2px;
1406
1378
  }
1407
- .btn-floating,
1408
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle,
1409
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle,
1410
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle {
1411
- transition: background-color 0.2s ease-out, box-shadow 0.2s ease-out;
1412
- }
1413
- .btn-floating > i,
1414
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle > i,
1415
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle > i,
1416
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle > i {
1379
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle > i,
1380
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle > i {
1417
1381
  font-size: 24px;
1418
1382
  width: 24px;
1419
1383
  height: 24px;
1420
1384
  line-height: 24px;
1421
1385
  color: inherit;
1422
1386
  }
1423
- .btn-floating:hover,
1424
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle:hover,
1425
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle:hover,
1426
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle:hover {
1387
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle:hover,
1388
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle:hover {
1427
1389
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -7px rgba(0, 0, 0, 0.2);
1428
1390
  background-color: color-mix(in oklab, var(--md-sys-color-on-primary-container) 8%, var(--md-sys-color-primary-container));
1429
1391
  }
1430
- .btn-floating:active, .btn-floating:focus,
1431
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle:active,
1432
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle:focus,
1433
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle:active,
1434
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle:focus,
1435
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle:active,
1436
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle:focus {
1392
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle:active, :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle:focus,
1393
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle:active,
1394
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle:focus {
1437
1395
  background-color: color-mix(in oklab, var(--md-sys-color-on-primary-container) 10%, var(--md-sys-color-primary-container));
1438
1396
  }
1439
- .btn-floating.small, .btn-floating.btn-small,
1440
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle.small,
1441
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle.btn-small,
1442
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle.small,
1443
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle.btn-small,
1444
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle.small,
1445
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle.btn-small {
1397
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle.small,
1398
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle.small {
1446
1399
  width: 40px;
1447
1400
  height: 40px;
1448
1401
  border-radius: 12px;
1449
1402
  }
1450
- .btn-floating.small > i, .btn-floating.btn-small > i,
1451
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle.small > i,
1452
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle.btn-small > i,
1453
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle.small > i,
1454
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle.btn-small > i,
1455
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle.small > i,
1456
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle.btn-small > i {
1403
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle.small > i,
1404
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle.small > i {
1457
1405
  font-size: 24px;
1458
1406
  }
1459
- .btn-floating.halfway-fab,
1460
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle.halfway-fab,
1461
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle.halfway-fab,
1462
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle.halfway-fab {
1407
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle.halfway-fab,
1408
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle.halfway-fab {
1463
1409
  position: absolute;
1464
1410
  inset-inline-end: 24px;
1465
1411
  bottom: -28px;
1466
1412
  }
1467
- .btn-floating.halfway-fab.left,
1468
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).extra.circle.halfway-fab.left,
1469
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).large.circle.halfway-fab.left,
1470
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).btn-large.circle.halfway-fab.left {
1413
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).extra.circle.halfway-fab.left,
1414
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).large.circle.halfway-fab.left {
1471
1415
  inset-inline-end: auto;
1472
1416
  inset-inline-start: 24px;
1473
1417
  }
1474
- .btn-floating:not(.large, .btn-large, .extra, .small, .btn-small) {
1475
- width: 40px;
1476
- height: 40px;
1477
- border-radius: 12px;
1478
- }
1479
- .btn-floating:not(.large, .btn-large, .extra, .small, .btn-small).halfway-fab {
1480
- bottom: -20px;
1481
- }
1482
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small):disabled,
1483
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small)[disabled],
1484
- :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button, .btn, .btn-flat, .btn-large, .btn-small).disabled,
1485
- .btn-floating:disabled,
1486
- .btn-floating[disabled],
1487
- .btn-floating.disabled {
1418
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button):disabled,
1419
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button)[disabled],
1420
+ :where(button:not(.datepicker-day-button, .month-prev, .month-next, .indicator-item-btn), a.button).disabled {
1488
1421
  box-shadow: none !important;
1489
1422
  color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
1490
1423
  background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 12%, transparent);
@@ -1576,17 +1509,17 @@
1576
1509
  .fixed-action-btn :is(ul, menu) li:nth-last-child(8) {
1577
1510
  --i: 7;
1578
1511
  }
1579
- .fixed-action-btn :is(ul, menu) :is(a, button) {
1512
+ .fixed-action-btn :is(ul, menu) > li > :is(a, button) {
1580
1513
  opacity: 0;
1581
1514
  transform: var(--md-comp-fab-hidden-transform);
1582
- transition: opacity var(--md-comp-fab-duration) var(--md-comp-fab-easing), transform var(--md-comp-fab-duration) var(--md-comp-fab-easing);
1515
+ transition: opacity var(--md-comp-fab-duration) var(--md-comp-fab-easing), transform var(--md-comp-fab-duration) var(--md-comp-fab-easing), background-color 0.2s ease-out, box-shadow 0.2s ease-out;
1583
1516
  transition-delay: calc(var(--md-comp-fab-stagger) * (var(--n) - 1 - var(--i, 0)));
1584
1517
  }
1585
1518
  .fixed-action-btn.active :is(ul, menu) {
1586
1519
  visibility: visible;
1587
1520
  transition-delay: 0s;
1588
1521
  }
1589
- .fixed-action-btn.active :is(ul, menu) :is(a, button) {
1522
+ .fixed-action-btn.active :is(ul, menu) > li > :is(a, button) {
1590
1523
  opacity: 1;
1591
1524
  transform: none;
1592
1525
  transition-delay: calc(var(--md-comp-fab-stagger) * var(--i, 0));
@@ -1658,7 +1591,7 @@
1658
1591
  padding: 0;
1659
1592
  height: 56px;
1660
1593
  }
1661
- .fixed-action-btn.toolbar :is(ul, menu) :is(a, button) {
1594
+ .fixed-action-btn.toolbar :is(ul, menu) > li > :is(a, button) {
1662
1595
  opacity: 1;
1663
1596
  transform: none;
1664
1597
  transition: opacity var(--md-comp-fab-duration);
@@ -1710,7 +1643,7 @@
1710
1643
  visibility: visible;
1711
1644
  transition-delay: 0s;
1712
1645
  }
1713
- .fixed-action-btn:not(.click-to-toggle):hover :is(ul, menu) :is(a, button) {
1646
+ .fixed-action-btn:not(.click-to-toggle):hover :is(ul, menu) > li > :is(a, button) {
1714
1647
  opacity: 1;
1715
1648
  transform: none;
1716
1649
  transition-delay: calc(var(--md-comp-fab-stagger) * var(--i, 0));
@@ -1742,7 +1675,7 @@
1742
1675
  .collection > * + * {
1743
1676
  border-top: 1px solid var(--md-comp-collection-outline-color);
1744
1677
  }
1745
- .collection > :is(li, a, .collection-item, .collection-header) {
1678
+ .collection > :is(li, a) {
1746
1679
  display: grid;
1747
1680
  grid-template-columns: auto 1fr auto;
1748
1681
  grid-template-rows: auto auto;
@@ -1757,7 +1690,7 @@
1757
1690
  text-decoration: none;
1758
1691
  transition: background-color 0.2s ease-out;
1759
1692
  }
1760
- .collection > :is(li, a, .collection-item, .collection-header) > :is(img, i).circle {
1693
+ .collection > :is(li, a) > :is(img, i).circle {
1761
1694
  grid-column: 1;
1762
1695
  grid-row: 1/-1;
1763
1696
  box-sizing: border-box;
@@ -1766,7 +1699,7 @@
1766
1699
  overflow: hidden;
1767
1700
  object-fit: cover;
1768
1701
  }
1769
- .collection > :is(li, a, .collection-item, .collection-header) > i.circle {
1702
+ .collection > :is(li, a) > i.circle {
1770
1703
  display: inline-flex;
1771
1704
  align-items: center;
1772
1705
  justify-content: center;
@@ -1776,7 +1709,7 @@
1776
1709
  background-color: var(--md-sys-color-primary-container);
1777
1710
  text-align: center;
1778
1711
  }
1779
- .collection > :is(li, a, .collection-item, .collection-header) > .title {
1712
+ .collection > :is(li, a) > .title {
1780
1713
  grid-column: 2;
1781
1714
  grid-row: 1;
1782
1715
  min-width: 0;
@@ -1786,7 +1719,7 @@
1786
1719
  line-height: var(--md-sys-typescale-title-medium-line-height);
1787
1720
  letter-spacing: var(--md-sys-typescale-title-medium-letter-spacing);
1788
1721
  }
1789
- .collection > :is(li, a, .collection-item, .collection-header) > p {
1722
+ .collection > :is(li, a) > p {
1790
1723
  grid-column: 2;
1791
1724
  grid-row: 1;
1792
1725
  min-width: 0;
@@ -1798,16 +1731,16 @@
1798
1731
  line-height: var(--md-sys-typescale-body-medium-line-height);
1799
1732
  letter-spacing: var(--md-sys-typescale-body-medium-letter-spacing);
1800
1733
  }
1801
- .collection > :is(li, a, .collection-item, .collection-header) > .title ~ p {
1734
+ .collection > :is(li, a) > .title ~ p {
1802
1735
  grid-row: 2;
1803
1736
  }
1804
- .collection > :is(li, a, .collection-item, .collection-header) > :is(.secondary-content, .badge) {
1737
+ .collection > :is(li, a) > :is(a:last-child, .badge) {
1805
1738
  grid-column: 3;
1806
1739
  grid-row: 1/-1;
1807
1740
  align-self: center;
1808
1741
  justify-self: end;
1809
1742
  }
1810
- .collection > :is(li, a, .collection-item, .collection-header) > a:not(.secondary-content, .btn, .btn-floating, .badge) {
1743
+ .collection > :is(li, a) > a:not(.badge) {
1811
1744
  grid-column: 1/-1;
1812
1745
  display: flex;
1813
1746
  align-items: center;
@@ -1816,18 +1749,17 @@
1816
1749
  color: inherit;
1817
1750
  text-decoration: none;
1818
1751
  }
1819
- .collection > :is(li, a, .collection-item, .collection-header) > a:not(.secondary-content, .btn, .btn-floating, .badge) > .badge {
1752
+ .collection > :is(li, a) > a:not(.badge) > .badge {
1820
1753
  margin-inline-start: auto;
1821
1754
  }
1822
- .collection > :is(li, .collection-item):is(.avatar, :has(> .circle)),
1823
- .collection > a:has(> .circle) {
1755
+ .collection > :is(li, a):has(> .circle) {
1824
1756
  min-height: 72px;
1825
1757
  }
1826
- .collection > :is(.collection-header, li:has(> :is(h1, h2, h3, h4, h5, h6))) {
1758
+ .collection > li:has(> :is(h1, h2, h3, h4, h5, h6)) {
1827
1759
  min-height: 0;
1828
1760
  padding-block: 12px;
1829
1761
  }
1830
- .collection > :is(.collection-header, li:has(> :is(h1, h2, h3, h4, h5, h6))) > :is(h1, h2, h3, h4, h5, h6) {
1762
+ .collection > li:has(> :is(h1, h2, h3, h4, h5, h6)) > :is(h1, h2, h3, h4, h5, h6) {
1831
1763
  grid-column: 1/-1;
1832
1764
  margin: 0;
1833
1765
  font-family: var(--md-sys-typescale-title-medium-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
@@ -1837,12 +1769,12 @@
1837
1769
  letter-spacing: var(--md-sys-typescale-title-medium-letter-spacing);
1838
1770
  }
1839
1771
  .collection > a:focus-visible,
1840
- .collection > li > a:not(.secondary-content, .btn, .btn-floating):focus-visible {
1772
+ .collection > li > a:focus-visible {
1841
1773
  outline: 3px solid var(--md-sys-color-secondary);
1842
1774
  outline-offset: 2px;
1843
1775
  }
1844
1776
  .collection > a:hover,
1845
- .collection > li:has(> a:not(.secondary-content, .btn, .btn-floating):hover) {
1777
+ .collection > li:has(> a:hover) {
1846
1778
  background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 8%, transparent);
1847
1779
  }
1848
1780
  .collection > :is(.active, [aria-current=page]),
@@ -1850,8 +1782,8 @@
1850
1782
  background-color: var(--md-sys-color-secondary-container);
1851
1783
  color: var(--md-sys-color-on-secondary-container);
1852
1784
  }
1853
- .collection > :is(.active, [aria-current=page]) .secondary-content:not(.btn, .btn-floating),
1854
- .collection > li:has(> [aria-current=page]) .secondary-content:not(.btn, .btn-floating) {
1785
+ .collection > :is(.active, [aria-current=page]) > a:last-child,
1786
+ .collection > li:has(> [aria-current=page]) > a:last-child {
1855
1787
  color: var(--md-sys-color-on-secondary-container);
1856
1788
  }
1857
1789
  .collection > :is(.active, [aria-current=page]) span.badge:not(.new),
@@ -1862,17 +1794,6 @@
1862
1794
  pointer-events: none;
1863
1795
  color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
1864
1796
  }
1865
- .collection .secondary-content {
1866
- float: none;
1867
- margin-inline-start: auto;
1868
- }
1869
- .collection .secondary-content:focus-visible {
1870
- outline: 3px solid var(--md-sys-color-secondary);
1871
- outline-offset: 2px;
1872
- }
1873
- .collection .secondary-content:not(.btn, .btn-floating) {
1874
- color: var(--md-sys-color-primary);
1875
- }
1876
1797
  .collection span.badge {
1877
1798
  float: none;
1878
1799
  margin-block: 0;
@@ -1882,9 +1803,6 @@
1882
1803
  border: 0;
1883
1804
  border-radius: 0;
1884
1805
  }
1885
- .secondary-content:not(.btn, .btn-floating) {
1886
- color: var(--md-sys-color-primary);
1887
- }
1888
1806
  .collapsible .collection {
1889
1807
  margin: 0;
1890
1808
  border: none;
@@ -1945,7 +1863,7 @@
1945
1863
  color: var(--md-sys-color-on-surface-variant);
1946
1864
  }
1947
1865
  .sidenav span.badge {
1948
- margin-top: calc(var(--sidenav-line-height) * 0.5 - 11px);
1866
+ margin-top: calc(var(--md-comp-nav-drawer-line-height) * 0.5 - 11px);
1949
1867
  }
1950
1868
  table span.badge {
1951
1869
  display: inline-block;
@@ -2059,7 +1977,7 @@
2059
1977
  line-height: var(--md-sys-typescale-title-large-line-height);
2060
1978
  letter-spacing: var(--md-sys-typescale-title-large-letter-spacing);
2061
1979
  }
2062
- header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child) {
1980
+ header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child) {
2063
1981
  display: inline-flex;
2064
1982
  flex: 0 0 auto;
2065
1983
  align-items: center;
@@ -2077,21 +1995,21 @@
2077
1995
  font: inherit;
2078
1996
  text-decoration: none;
2079
1997
  }
2080
- header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child):focus-visible {
1998
+ header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child):focus-visible {
2081
1999
  outline: 3px solid var(--md-sys-color-secondary);
2082
2000
  outline-offset: 2px;
2083
2001
  }
2084
- header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child) > i {
2002
+ header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child) > i {
2085
2003
  display: block;
2086
2004
  font-size: var(--md-comp-top-app-bar-leading-icon-size);
2087
2005
  width: var(--md-comp-top-app-bar-leading-icon-size);
2088
2006
  height: var(--md-comp-top-app-bar-leading-icon-size);
2089
2007
  line-height: var(--md-comp-top-app-bar-leading-icon-size);
2090
2008
  }
2091
- header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child):hover {
2009
+ header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child):hover {
2092
2010
  background-color: color-mix(in oklab, currentColor 8%, transparent);
2093
2011
  }
2094
- header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child):active {
2012
+ header:has(> nav) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child):active {
2095
2013
  background-color: color-mix(in oklab, currentColor 10%, transparent);
2096
2014
  }
2097
2015
  header:has(> nav) > nav:not(.tabs) > :is(menu, ul) {
@@ -2157,7 +2075,7 @@
2157
2075
  padding-inline-start: 12px;
2158
2076
  }
2159
2077
  }
2160
- header:has(> nav) > nav:not(.tabs) > a:not(:has(> i:only-child)):not(.btn):not(.button):not(.btn-floating):not(.breadcrumb), header:has(> nav) > nav:not(.tabs) > :is(menu, ul) a {
2078
+ header:has(> nav) > nav:not(.tabs) > a:not(:has(> i:only-child)):not(.button):not(.circle):not(.breadcrumb), header:has(> nav) > nav:not(.tabs) > :is(menu, ul) > li > a {
2161
2079
  display: inline-flex;
2162
2080
  align-items: center;
2163
2081
  padding: 0 12px;
@@ -2169,14 +2087,14 @@
2169
2087
  line-height: var(--md-sys-typescale-label-large-line-height);
2170
2088
  letter-spacing: var(--md-sys-typescale-label-large-letter-spacing);
2171
2089
  }
2172
- header:has(> nav) > nav:not(.tabs) > a:focus-visible:not(:has(> i:only-child)):not(.btn):not(.button):not(.btn-floating):not(.breadcrumb), header:has(> nav) > nav:not(.tabs) > :is(menu, ul) a:focus-visible {
2090
+ header:has(> nav) > nav:not(.tabs) > a:focus-visible:not(:has(> i:only-child)):not(.button):not(.circle):not(.breadcrumb), header:has(> nav) > nav:not(.tabs) > :is(menu, ul) > li > a:focus-visible {
2173
2091
  outline: 3px solid var(--md-sys-color-secondary);
2174
2092
  outline-offset: 2px;
2175
2093
  }
2176
- header:has(> nav) > nav:not(.tabs) > a:hover:not(.active):not(:has(> i:only-child)):not(.btn):not(.button):not(.btn-floating):not(.breadcrumb), header:has(> nav) > nav:not(.tabs) > :is(menu, ul) a:hover:not(.active) {
2094
+ header:has(> nav) > nav:not(.tabs) > a:hover:not(.active):not(:has(> i:only-child)):not(.button):not(.circle):not(.breadcrumb), header:has(> nav) > nav:not(.tabs) > :is(menu, ul) > li > a:hover:not(.active) {
2177
2095
  background-color: color-mix(in oklab, currentColor 8%, transparent);
2178
2096
  }
2179
- header:has(> nav) > nav:not(.tabs) > a.active:not(:has(> i:only-child)):not(.btn):not(.button):not(.btn-floating):not(.breadcrumb), header:has(> nav) > nav:not(.tabs) > :is(menu, ul) a.active {
2097
+ header:has(> nav) > nav:not(.tabs) > a.active:not(:has(> i:only-child)):not(.button):not(.circle):not(.breadcrumb), header:has(> nav) > nav:not(.tabs) > :is(menu, ul) > li > a.active {
2180
2098
  background-color: color-mix(in oklab, currentColor 10%, transparent);
2181
2099
  }
2182
2100
  header.center:has(> nav) > nav:not(.tabs) {
@@ -2244,7 +2162,7 @@
2244
2162
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
2245
2163
  }
2246
2164
  }
2247
- footer:not(.page-footer):has(> nav) {
2165
+ footer:has(> nav:only-child) {
2248
2166
  --md-comp-bottom-app-bar-container-color: var(--md-sys-color-surface);
2249
2167
  --md-comp-bottom-app-bar-container-height: 80px;
2250
2168
  background-color: var(--md-comp-bottom-app-bar-container-color);
@@ -2252,7 +2170,7 @@
2252
2170
  width: 100%;
2253
2171
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
2254
2172
  }
2255
- footer:not(.page-footer):has(> nav) > nav:not(.tabs) {
2173
+ footer:has(> nav:only-child) > nav:not(.tabs) {
2256
2174
  display: flex;
2257
2175
  align-items: center;
2258
2176
  box-sizing: border-box;
@@ -2261,7 +2179,7 @@
2261
2179
  padding: 12px 4px;
2262
2180
  margin: 0;
2263
2181
  }
2264
- footer:not(.page-footer):has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child) {
2182
+ footer:has(> nav:only-child) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child) {
2265
2183
  display: inline-flex;
2266
2184
  flex: 0 0 auto;
2267
2185
  align-items: center;
@@ -2279,27 +2197,27 @@
2279
2197
  font: inherit;
2280
2198
  text-decoration: none;
2281
2199
  }
2282
- footer:not(.page-footer):has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child):focus-visible {
2200
+ footer:has(> nav:only-child) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child):focus-visible {
2283
2201
  outline: 3px solid var(--md-sys-color-secondary);
2284
2202
  outline-offset: 2px;
2285
2203
  }
2286
- footer:not(.page-footer):has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child) > i {
2204
+ footer:has(> nav:only-child) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child) > i {
2287
2205
  display: block;
2288
2206
  font-size: 24px;
2289
2207
  width: 24px;
2290
2208
  height: 24px;
2291
2209
  line-height: 24px;
2292
2210
  }
2293
- footer:not(.page-footer):has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child):hover {
2211
+ footer:has(> nav:only-child) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child):hover {
2294
2212
  background-color: color-mix(in oklab, currentColor 8%, transparent);
2295
2213
  }
2296
- footer:not(.page-footer):has(> nav) > nav:not(.tabs) > :is(a, button):not(.btn):not(.button):not(.btn-floating):not(.btn-large):not(.btn-small):has(> i:only-child):active {
2214
+ footer:has(> nav:only-child) > nav:not(.tabs) > :is(a, button):not(.button):not(.circle):not(.extra):has(> i:only-child):active {
2297
2215
  background-color: color-mix(in oklab, currentColor 10%, transparent);
2298
2216
  }
2299
- footer:not(.page-footer):has(> nav) > nav:not(.tabs) > :is(.btn, .btn-floating, .btn-large) {
2217
+ footer:has(> nav:only-child) > nav:not(.tabs) > :is(.button, .circle, .extra) {
2300
2218
  margin-inline-start: auto;
2301
2219
  }
2302
- footer:not(.page-footer):has(> nav).fixed {
2220
+ footer:has(> nav:only-child).fixed {
2303
2221
  position: sticky;
2304
2222
  bottom: 0;
2305
2223
  z-index: 997;
@@ -2329,7 +2247,7 @@
2329
2247
  nav.toolbar + nav.toolbar {
2330
2248
  margin-block-start: 16px;
2331
2249
  }
2332
- nav.toolbar > :is(a, button):not(.btn-floating, .extra) {
2250
+ nav.toolbar > :is(a, button):not(.extra) {
2333
2251
  box-sizing: border-box;
2334
2252
  display: inline-flex;
2335
2253
  flex: 0 0 auto;
@@ -2356,34 +2274,34 @@
2356
2274
  letter-spacing: var(--md-sys-typescale-label-large-letter-spacing);
2357
2275
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
2358
2276
  }
2359
- nav.toolbar > :is(a, button):not(.btn-floating, .extra):focus-visible {
2277
+ nav.toolbar > :is(a, button):not(.extra):focus-visible {
2360
2278
  outline: 3px solid var(--md-sys-color-secondary);
2361
2279
  outline-offset: 2px;
2362
2280
  }
2363
- nav.toolbar > :is(a, button):not(.btn-floating, .extra) > i {
2281
+ nav.toolbar > :is(a, button):not(.extra) > i {
2364
2282
  flex: 0 0 auto;
2365
2283
  font-size: var(--md-comp-toolbar-icon-size);
2366
2284
  width: var(--md-comp-toolbar-icon-size);
2367
2285
  height: var(--md-comp-toolbar-icon-size);
2368
2286
  line-height: var(--md-comp-toolbar-icon-size);
2369
2287
  }
2370
- nav.toolbar > :is(a, button):not(.btn-floating, .extra):hover:not(.active) {
2288
+ nav.toolbar > :is(a, button):not(.extra):hover:not(.active) {
2371
2289
  background-color: color-mix(in oklab, currentColor 8%, transparent);
2372
2290
  }
2373
- nav.toolbar > :is(a, button):not(.btn-floating, .extra):active:not(.active) {
2291
+ nav.toolbar > :is(a, button):not(.extra):active:not(.active) {
2374
2292
  background-color: color-mix(in oklab, currentColor 10%, transparent);
2375
2293
  }
2376
- nav.toolbar > :is(a, button):not(.btn-floating, .extra).active {
2294
+ nav.toolbar > :is(a, button):not(.extra).active {
2377
2295
  background-color: var(--md-sys-color-secondary-container);
2378
2296
  color: var(--md-sys-color-on-secondary-container);
2379
2297
  }
2380
- nav.toolbar > :is(a, button):not(.btn-floating, .extra):disabled {
2298
+ nav.toolbar > :is(a, button):not(.extra):disabled {
2381
2299
  color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
2382
2300
  background-color: transparent;
2383
2301
  box-shadow: none;
2384
2302
  cursor: default;
2385
2303
  }
2386
- nav.toolbar > :is(a, button):not(.btn-floating, .extra):is(.circle, :has(> i):not(:has(> span))) {
2304
+ nav.toolbar > :is(a, button):not(.extra):is(.circle, :has(> i):not(:has(> span))) {
2387
2305
  width: var(--md-comp-toolbar-action-size);
2388
2306
  padding: 0;
2389
2307
  border-radius: 50%;
@@ -2449,13 +2367,6 @@
2449
2367
  inset: 0 0 auto 0;
2450
2368
  transform: none;
2451
2369
  }
2452
- ul.staggered-list li {
2453
- opacity: 0;
2454
- }
2455
- .fade-in {
2456
- opacity: 0;
2457
- transform-origin: 0 50%;
2458
- }
2459
2370
  .scale-transition {
2460
2371
  transition: transform 0.3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important;
2461
2372
  }
@@ -2466,7 +2377,7 @@
2466
2377
  .scale-transition.scale-in {
2467
2378
  transform: scale(1);
2468
2379
  }
2469
- :where(article, .card, .card-panel) {
2380
+ :where(article) {
2470
2381
  --md-comp-elevated-card-container-color: var(--md-sys-color-surface);
2471
2382
  --md-comp-elevated-card-container-shape: 12px;
2472
2383
  position: relative;
@@ -2477,18 +2388,18 @@
2477
2388
  overflow: hidden;
2478
2389
  transition: box-shadow 0.2s ease-out;
2479
2390
  }
2480
- :where(article, .card, .card-panel):not(.filled, .outlined, .border) {
2391
+ :where(article):not(.filled, .outlined, .border) {
2481
2392
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
2482
2393
  }
2483
- :where(article, .card, .card-panel):not(.filled, .outlined, .border):hover {
2394
+ :where(article):not(.filled, .outlined, .border):hover {
2484
2395
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
2485
2396
  }
2486
- :where(article, .card, .card-panel).filled {
2397
+ :where(article).filled {
2487
2398
  box-shadow: none !important;
2488
2399
  background-color: var(--md-sys-color-surface-variant);
2489
2400
  }
2490
- :where(article, .card, .card-panel).outlined,
2491
- :where(article, .card, .card-panel).border {
2401
+ :where(article).outlined,
2402
+ :where(article).border {
2492
2403
  box-shadow: none !important;
2493
2404
  border: 1px solid var(--md-sys-color-outline-variant);
2494
2405
  }
@@ -2523,7 +2434,7 @@
2523
2434
  background: none;
2524
2435
  color: inherit;
2525
2436
  }
2526
- article > nav {
2437
+ article > nav:not(.tabs) {
2527
2438
  display: flex;
2528
2439
  flex-wrap: wrap;
2529
2440
  align-items: center;
@@ -2561,8 +2472,7 @@
2561
2472
  font-weight: var(--md-sys-typescale-title-medium-font-weight);
2562
2473
  line-height: var(--md-sys-typescale-title-medium-line-height);
2563
2474
  }
2564
- article.horizontal,
2565
- .card.horizontal {
2475
+ article.horizontal {
2566
2476
  display: flex;
2567
2477
  flex-direction: row;
2568
2478
  align-items: stretch;
@@ -2570,12 +2480,7 @@
2570
2480
  }
2571
2481
  article.horizontal > img,
2572
2482
  article.horizontal > picture,
2573
- article.horizontal > figure,
2574
- article.horizontal > .card-image,
2575
- .card.horizontal > img,
2576
- .card.horizontal > picture,
2577
- .card.horizontal > figure,
2578
- .card.horizontal > .card-image {
2483
+ article.horizontal > figure {
2579
2484
  flex: 0 0 40%;
2580
2485
  max-width: 40%;
2581
2486
  width: 40%;
@@ -2583,98 +2488,63 @@
2583
2488
  }
2584
2489
  article.horizontal > img,
2585
2490
  article.horizontal > picture img,
2586
- article.horizontal > figure img,
2587
- article.horizontal > .card-image img,
2588
- .card.horizontal > img,
2589
- .card.horizontal > picture img,
2590
- .card.horizontal > figure img,
2591
- .card.horizontal > .card-image img {
2491
+ article.horizontal > figure img {
2592
2492
  height: 100%;
2593
2493
  object-fit: cover;
2594
2494
  }
2595
- article.horizontal > div,
2596
- .card.horizontal > div {
2495
+ article.horizontal > div {
2597
2496
  flex: 1 1 auto;
2598
2497
  min-width: 0;
2599
2498
  display: flex;
2600
2499
  flex-direction: column;
2601
2500
  }
2602
- article.small, .card.small {
2501
+ article.small {
2603
2502
  height: 300px;
2604
2503
  }
2605
- article.medium, .card.medium {
2504
+ article.medium {
2606
2505
  height: 400px;
2607
2506
  }
2608
- article.large, .card.large {
2507
+ article.large {
2609
2508
  height: 500px;
2610
2509
  }
2611
- article.small, article.medium, article.large,
2612
- .card.small, .card.medium, .card.large {
2510
+ article.small, article.medium, article.large {
2613
2511
  display: flex;
2614
2512
  flex-direction: column;
2615
2513
  }
2616
- article.small > img, article.small > picture, article.small > figure, article.small > .card-image, article.medium > img, article.medium > picture, article.medium > figure, article.medium > .card-image, article.large > img, article.large > picture, article.large > figure, article.large > .card-image,
2617
- .card.small > img,
2618
- .card.small > picture,
2619
- .card.small > figure,
2620
- .card.small > .card-image, .card.medium > img, .card.medium > picture, .card.medium > figure, .card.medium > .card-image, .card.large > img, .card.large > picture, .card.large > figure, .card.large > .card-image {
2514
+ article.small > img, article.small > picture, article.small > figure, article.medium > img, article.medium > picture, article.medium > figure, article.large > img, article.large > picture, article.large > figure {
2621
2515
  flex: 0 1 60%;
2622
2516
  min-height: 0;
2623
2517
  overflow: hidden;
2624
2518
  }
2625
- article.small > img, article.small > figure img, article.small > .card-image img, article.medium > img, article.medium > figure img, article.medium > .card-image img, article.large > img, article.large > figure img, article.large > .card-image img,
2626
- .card.small > img,
2627
- .card.small > figure img,
2628
- .card.small > .card-image img, .card.medium > img, .card.medium > figure img, .card.medium > .card-image img, .card.large > img, .card.large > figure img, .card.large > .card-image img {
2519
+ article.small > img, article.small > figure img, article.medium > img, article.medium > figure img, article.large > img, article.large > figure img {
2629
2520
  height: 100%;
2630
2521
  }
2631
- article.small > p, article.small > .card-content, article.medium > p, article.medium > .card-content, article.large > p, article.large > .card-content,
2632
- .card.small > p,
2633
- .card.small > .card-content, .card.medium > p, .card.medium > .card-content, .card.large > p, .card.large > .card-content {
2522
+ article.small > p, article.medium > p, article.large > p {
2634
2523
  flex: 1 1 auto;
2635
2524
  min-height: 0;
2636
2525
  overflow: hidden;
2637
2526
  }
2638
- article.small > nav, article.small > .card-action, article.medium > nav, article.medium > .card-action, article.large > nav, article.large > .card-action,
2639
- .card.small > nav,
2640
- .card.small > .card-action, .card.medium > nav, .card.medium > .card-action, .card.large > nav, .card.large > .card-action {
2527
+ article.small > nav:not(.tabs), article.medium > nav:not(.tabs), article.large > nav:not(.tabs) {
2641
2528
  margin-top: auto;
2642
2529
  }
2643
2530
  article.horizontal.small,
2644
2531
  article.horizontal.medium,
2645
- article.horizontal.large,
2646
- .card.horizontal.small,
2647
- .card.horizontal.medium,
2648
- .card.horizontal.large {
2532
+ article.horizontal.large {
2649
2533
  flex-direction: row;
2650
2534
  }
2651
- article.horizontal.small > img, article.horizontal.small > picture, article.horizontal.small > figure, article.horizontal.small > .card-image,
2535
+ article.horizontal.small > img, article.horizontal.small > picture, article.horizontal.small > figure,
2652
2536
  article.horizontal.medium > img,
2653
2537
  article.horizontal.medium > picture,
2654
2538
  article.horizontal.medium > figure,
2655
- article.horizontal.medium > .card-image,
2656
2539
  article.horizontal.large > img,
2657
2540
  article.horizontal.large > picture,
2658
- article.horizontal.large > figure,
2659
- article.horizontal.large > .card-image,
2660
- .card.horizontal.small > img,
2661
- .card.horizontal.small > picture,
2662
- .card.horizontal.small > figure,
2663
- .card.horizontal.small > .card-image,
2664
- .card.horizontal.medium > img,
2665
- .card.horizontal.medium > picture,
2666
- .card.horizontal.medium > figure,
2667
- .card.horizontal.medium > .card-image,
2668
- .card.horizontal.large > img,
2669
- .card.horizontal.large > picture,
2670
- .card.horizontal.large > figure,
2671
- .card.horizontal.large > .card-image {
2541
+ article.horizontal.large > figure {
2672
2542
  flex: 0 0 40%;
2673
2543
  max-height: none;
2674
2544
  }
2675
- article > aside,
2676
- .card-reveal {
2677
- display: none;
2545
+ article > aside {
2546
+ --md-comp-card-reveal-duration: 300ms;
2547
+ --md-comp-card-reveal-easing: ease;
2678
2548
  position: absolute;
2679
2549
  inset: 0;
2680
2550
  z-index: 3;
@@ -2683,111 +2553,31 @@
2683
2553
  overflow-y: auto;
2684
2554
  background-color: var(--md-sys-color-surface);
2685
2555
  color: var(--md-sys-color-on-surface);
2556
+ transform: translateY(100%);
2557
+ visibility: hidden;
2558
+ pointer-events: none;
2559
+ transition: transform var(--md-comp-card-reveal-duration) var(--md-comp-card-reveal-easing), visibility 0s var(--md-comp-card-reveal-duration);
2560
+ }
2561
+ article > aside[aria-expanded=true] {
2562
+ transform: translateY(0);
2563
+ visibility: visible;
2564
+ pointer-events: auto;
2565
+ transition: transform var(--md-comp-card-reveal-duration) var(--md-comp-card-reveal-easing);
2686
2566
  }
2687
- article.sticky > nav,
2688
- .card.sticky-action > .card-action {
2567
+ @media (prefers-reduced-motion: reduce) {
2568
+ article > aside {
2569
+ transition: none;
2570
+ }
2571
+ }
2572
+ article.sticky > nav {
2689
2573
  position: relative;
2690
2574
  z-index: 4;
2691
2575
  background-color: inherit;
2692
2576
  }
2693
- article.sticky > aside,
2694
- .card.sticky-action > .card-reveal {
2577
+ article.sticky > aside {
2695
2578
  bottom: auto;
2696
2579
  height: calc(100% - 52px);
2697
2580
  }
2698
- .card-panel {
2699
- padding: 16px;
2700
- margin: 0.5rem 0 1rem 0;
2701
- }
2702
- .card-title {
2703
- font-family: var(--md-sys-typescale-title-medium-font-family-name);
2704
- font-size: var(--md-sys-typescale-title-medium-font-size);
2705
- font-weight: var(--md-sys-typescale-title-medium-font-weight);
2706
- line-height: var(--md-sys-typescale-title-medium-line-height);
2707
- letter-spacing: var(--md-sys-typescale-title-medium-letter-spacing);
2708
- }
2709
- .card .card-image {
2710
- position: relative;
2711
- }
2712
- .card .card-image img {
2713
- display: block;
2714
- width: 100%;
2715
- object-fit: cover;
2716
- }
2717
- .card .card-image .card-title {
2718
- position: absolute;
2719
- bottom: 0;
2720
- left: 0;
2721
- max-width: 100%;
2722
- padding: 16px;
2723
- color: var(--md-sys-color-on-surface);
2724
- background: color-mix(in oklab, var(--md-sys-color-surface) 72%, transparent);
2725
- }
2726
- .card .card-image .activator {
2727
- position: absolute;
2728
- inset: 0;
2729
- cursor: pointer;
2730
- }
2731
- .card .card-image img.activator {
2732
- position: relative;
2733
- }
2734
- .card .card-content {
2735
- padding: 16px;
2736
- border-radius: 0;
2737
- }
2738
- .card .card-content p {
2739
- margin: 0;
2740
- }
2741
- .card .card-content .card-title {
2742
- display: block;
2743
- margin-bottom: 8px;
2744
- }
2745
- .card .card-content .card-title.activator {
2746
- cursor: pointer;
2747
- }
2748
- .card .card-action {
2749
- display: flex;
2750
- flex-wrap: wrap;
2751
- align-items: center;
2752
- gap: 8px;
2753
- padding: 4px 8px 8px;
2754
- }
2755
- .card .card-action a:not(.button):not(.btn):not(.btn-floating) {
2756
- box-shadow: none !important;
2757
- color: var(--md-sys-color-primary);
2758
- background-color: transparent;
2759
- border-color: transparent;
2760
- }
2761
- .card .card-action a:not(.button):not(.btn):not(.btn-floating):hover {
2762
- background-color: color-mix(in oklab, var(--md-sys-color-primary) 8%, transparent);
2763
- }
2764
- .card .card-action a:not(.button):not(.btn):not(.btn-floating):active, .card .card-action a:not(.button):not(.btn):not(.btn-floating):focus {
2765
- background-color: color-mix(in oklab, var(--md-sys-color-primary) 10%, transparent);
2766
- }
2767
- .card .card-action a:not(.button):not(.btn):not(.btn-floating):focus-visible {
2768
- outline: 3px solid var(--md-sys-color-secondary);
2769
- outline-offset: 2px;
2770
- }
2771
- .card .card-action a:not(.button):not(.btn):not(.btn-floating) {
2772
- height: auto;
2773
- padding: 8px 12px;
2774
- min-height: 40px;
2775
- }
2776
- .card .card-stacked {
2777
- display: flex;
2778
- flex-direction: column;
2779
- flex: 1;
2780
- min-width: 0;
2781
- }
2782
- .card .card-stacked .card-content {
2783
- flex-grow: 1;
2784
- }
2785
- .card .card-image .activator {
2786
- cursor: pointer;
2787
- }
2788
- .no-padding {
2789
- padding: 0 !important;
2790
- }
2791
2581
  #toast-container {
2792
2582
  --md-comp-snackbar-container-margin-leading: 8px;
2793
2583
  --md-comp-snackbar-container-margin-trailing: 8px;
@@ -2827,7 +2617,7 @@
2827
2617
  right: auto;
2828
2618
  transform: translateX(-50%);
2829
2619
  }
2830
- :is(.toast, .snackbar) {
2620
+ .snackbar {
2831
2621
  --md-comp-snackbar-container-color: var(--md-sys-color-inverse-surface);
2832
2622
  --md-comp-snackbar-container-shape: 4px;
2833
2623
  --md-comp-snackbar-supporting-text-color: var(--md-sys-color-inverse-on-surface);
@@ -2856,13 +2646,13 @@
2856
2646
  cursor: default;
2857
2647
  }
2858
2648
  @media (width >= 601px) {
2859
- :is(.toast, .snackbar) {
2649
+ .snackbar {
2860
2650
  width: max-content;
2861
2651
  min-width: min(344px, 100%);
2862
2652
  }
2863
2653
  }
2864
- :is(.toast, .snackbar) > p,
2865
- :is(.toast, .snackbar) > span {
2654
+ .snackbar > p,
2655
+ .snackbar > span {
2866
2656
  flex: 1 1 auto;
2867
2657
  min-width: 0;
2868
2658
  margin: 0;
@@ -2878,7 +2668,7 @@
2878
2668
  -webkit-line-clamp: 2;
2879
2669
  overflow: hidden;
2880
2670
  }
2881
- :is(.toast, .snackbar) > i:first-child {
2671
+ .snackbar > i:first-child {
2882
2672
  flex: 0 0 auto;
2883
2673
  font-size: 24px;
2884
2674
  width: 24px;
@@ -2886,10 +2676,10 @@
2886
2676
  line-height: 24px;
2887
2677
  color: var(--md-comp-snackbar-icon-color);
2888
2678
  }
2889
- :is(.toast, .snackbar) a:not(.button, .toast-action) {
2679
+ .snackbar a:not(.button) {
2890
2680
  color: var(--md-comp-snackbar-action-label-text-color);
2891
2681
  }
2892
- :is(.toast, .snackbar) > nav {
2682
+ .snackbar > nav {
2893
2683
  display: flex;
2894
2684
  flex: 0 0 auto;
2895
2685
  align-items: center;
@@ -2901,8 +2691,8 @@
2901
2691
  background: none;
2902
2692
  box-shadow: none;
2903
2693
  }
2904
- :is(.toast, .snackbar) > :is(button, a.button, a.toast-action, .toast-action):not(.circle),
2905
- :is(.toast, .snackbar) > nav > :is(button, a.button, a.toast-action, .toast-action):not(.circle) {
2694
+ .snackbar > :is(button, a.button):not(.circle),
2695
+ .snackbar > nav > :is(button, a.button):not(.circle) {
2906
2696
  flex: 0 0 auto;
2907
2697
  height: 40px;
2908
2698
  min-width: 48px;
@@ -2918,22 +2708,22 @@
2918
2708
  line-height: var(--md-sys-typescale-label-large-line-height);
2919
2709
  letter-spacing: var(--md-sys-typescale-label-large-letter-spacing);
2920
2710
  }
2921
- :is(.toast, .snackbar) > :is(button, a.button, a.toast-action, .toast-action):not(.circle):hover,
2922
- :is(.toast, .snackbar) > nav > :is(button, a.button, a.toast-action, .toast-action):not(.circle):hover {
2711
+ .snackbar > :is(button, a.button):not(.circle):hover,
2712
+ .snackbar > nav > :is(button, a.button):not(.circle):hover {
2923
2713
  background-color: color-mix(in oklab, var(--md-sys-color-inverse-primary) 8%, transparent);
2924
2714
  }
2925
- :is(.toast, .snackbar) > :is(button, a.button, a.toast-action, .toast-action):not(.circle):active, :is(.toast, .snackbar) > :is(button, a.button, a.toast-action, .toast-action):not(.circle):focus,
2926
- :is(.toast, .snackbar) > nav > :is(button, a.button, a.toast-action, .toast-action):not(.circle):active,
2927
- :is(.toast, .snackbar) > nav > :is(button, a.button, a.toast-action, .toast-action):not(.circle):focus {
2715
+ .snackbar > :is(button, a.button):not(.circle):active, .snackbar > :is(button, a.button):not(.circle):focus,
2716
+ .snackbar > nav > :is(button, a.button):not(.circle):active,
2717
+ .snackbar > nav > :is(button, a.button):not(.circle):focus {
2928
2718
  background-color: color-mix(in oklab, var(--md-sys-color-inverse-primary) 10%, transparent);
2929
2719
  }
2930
- :is(.toast, .snackbar) > :is(button, a.button, a.toast-action, .toast-action):not(.circle):focus-visible,
2931
- :is(.toast, .snackbar) > nav > :is(button, a.button, a.toast-action, .toast-action):not(.circle):focus-visible {
2720
+ .snackbar > :is(button, a.button):not(.circle):focus-visible,
2721
+ .snackbar > nav > :is(button, a.button):not(.circle):focus-visible {
2932
2722
  outline: 3px solid var(--md-sys-color-inverse-primary);
2933
2723
  outline-offset: 2px;
2934
2724
  }
2935
- :is(.toast, .snackbar) > :is(button, a).circle,
2936
- :is(.toast, .snackbar) > nav > :is(button, a).circle {
2725
+ .snackbar > :is(button, a).circle,
2726
+ .snackbar > nav > :is(button, a).circle {
2937
2727
  flex: 0 0 auto;
2938
2728
  width: 40px;
2939
2729
  height: 40px;
@@ -2944,39 +2734,39 @@
2944
2734
  color: var(--md-comp-snackbar-icon-color);
2945
2735
  box-shadow: none;
2946
2736
  }
2947
- :is(.toast, .snackbar) > :is(button, a).circle > i,
2948
- :is(.toast, .snackbar) > nav > :is(button, a).circle > i {
2737
+ .snackbar > :is(button, a).circle > i,
2738
+ .snackbar > nav > :is(button, a).circle > i {
2949
2739
  font-size: 24px;
2950
2740
  width: 24px;
2951
2741
  height: 24px;
2952
2742
  line-height: 24px;
2953
2743
  }
2954
- :is(.toast, .snackbar) > :is(button, a).circle:hover,
2955
- :is(.toast, .snackbar) > nav > :is(button, a).circle:hover {
2744
+ .snackbar > :is(button, a).circle:hover,
2745
+ .snackbar > nav > :is(button, a).circle:hover {
2956
2746
  background-color: color-mix(in oklab, var(--md-sys-color-inverse-on-surface) 8%, transparent);
2957
2747
  }
2958
- :is(.toast, .snackbar) > :is(button, a).circle:active, :is(.toast, .snackbar) > :is(button, a).circle:focus,
2959
- :is(.toast, .snackbar) > nav > :is(button, a).circle:active,
2960
- :is(.toast, .snackbar) > nav > :is(button, a).circle:focus {
2748
+ .snackbar > :is(button, a).circle:active, .snackbar > :is(button, a).circle:focus,
2749
+ .snackbar > nav > :is(button, a).circle:active,
2750
+ .snackbar > nav > :is(button, a).circle:focus {
2961
2751
  background-color: color-mix(in oklab, var(--md-sys-color-inverse-on-surface) 10%, transparent);
2962
2752
  }
2963
- :is(.toast, .snackbar) > :is(button, a).circle:focus-visible,
2964
- :is(.toast, .snackbar) > nav > :is(button, a).circle:focus-visible {
2753
+ .snackbar > :is(button, a).circle:focus-visible,
2754
+ .snackbar > nav > :is(button, a).circle:focus-visible {
2965
2755
  outline: 3px solid var(--md-sys-color-inverse-on-surface);
2966
2756
  outline-offset: 2px;
2967
2757
  }
2968
- :is(.toast, .snackbar).rounded {
2758
+ .snackbar.rounded {
2969
2759
  border-radius: 24px;
2970
2760
  }
2971
- :is(.toast, .snackbar) + :is(.toast, .snackbar) {
2761
+ .snackbar + .snackbar {
2972
2762
  margin-top: 8px;
2973
2763
  }
2974
- #toast-container :is(.toast, .snackbar) {
2764
+ #toast-container .snackbar {
2975
2765
  position: relative;
2976
2766
  top: 35px;
2977
2767
  margin-top: 0;
2978
2768
  }
2979
- :is(.toast, .snackbar).active {
2769
+ .snackbar.active {
2980
2770
  position: fixed;
2981
2771
  z-index: 10000;
2982
2772
  inset: auto auto 16px 16px;
@@ -2985,21 +2775,21 @@
2985
2775
  max-width: min(672px, 100% - 32px);
2986
2776
  }
2987
2777
  @media (width < 601px) {
2988
- :is(.toast, .snackbar).active {
2778
+ .snackbar.active {
2989
2779
  inset: auto 8px 8px 8px;
2990
2780
  width: auto;
2991
2781
  max-width: none;
2992
2782
  }
2993
2783
  }
2994
- :is(.toast, .snackbar).active.top {
2784
+ .snackbar.active.top {
2995
2785
  inset: 16px auto auto 16px;
2996
2786
  }
2997
2787
  @media (width < 601px) {
2998
- :is(.toast, .snackbar).active.top {
2788
+ .snackbar.active.top {
2999
2789
  inset: 8px 8px auto 8px;
3000
2790
  }
3001
2791
  }
3002
- :is(.toast, .snackbar).active.center {
2792
+ .snackbar.active.center {
3003
2793
  left: 50%;
3004
2794
  right: auto;
3005
2795
  transform: translateX(-50%);
@@ -3031,14 +2821,14 @@
3031
2821
  .tabs::-webkit-scrollbar {
3032
2822
  display: none;
3033
2823
  }
3034
- .tabs > :is(.tab, li.tab) {
2824
+ .tabs > .tab {
3035
2825
  display: flex;
3036
2826
  flex: 0 0 auto;
3037
2827
  list-style: none;
3038
2828
  margin: 0;
3039
2829
  padding: 0;
3040
2830
  }
3041
- .tabs > :is(a, .tab > a, li.tab > a) {
2831
+ .tabs > a, .tabs > .tab > a {
3042
2832
  box-sizing: border-box;
3043
2833
  position: relative;
3044
2834
  display: inline-flex;
@@ -3066,7 +2856,7 @@
3066
2856
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
3067
2857
  transition: color 0.2s ease, background-color 0.2s ease;
3068
2858
  }
3069
- .tabs > :is(a, .tab > a, li.tab > a) > i {
2859
+ .tabs > a > i, .tabs > .tab > a > i {
3070
2860
  flex: 0 0 auto;
3071
2861
  font-size: var(--md-comp-primary-tab-icon-size);
3072
2862
  width: var(--md-comp-primary-tab-icon-size);
@@ -3074,30 +2864,36 @@
3074
2864
  line-height: var(--md-comp-primary-tab-icon-size);
3075
2865
  color: inherit;
3076
2866
  }
3077
- .tabs > :is(a, .tab > a, li.tab > a):hover {
2867
+ .tabs > a:hover, .tabs > .tab > a:hover {
3078
2868
  color: var(--md-sys-color-on-surface);
3079
2869
  background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 8%, transparent);
3080
2870
  }
3081
- .tabs > :is(a, .tab > a, li.tab > a):focus-visible, .tabs > :is(a, .tab > a, li.tab > a):focus {
2871
+ .tabs > a:focus-visible, .tabs > a:focus, .tabs > .tab > a:focus-visible, .tabs > .tab > a:focus {
3082
2872
  color: var(--md-sys-color-on-surface);
3083
2873
  background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 10%, transparent);
3084
2874
  outline: none;
3085
2875
  }
3086
- .tabs > :is(a, .tab > a, li.tab > a).active {
2876
+ .tabs > a.active, .tabs > .tab > a.active {
3087
2877
  color: var(--md-comp-primary-tab-active-label-text-color);
3088
2878
  background-color: transparent;
3089
2879
  }
3090
- .tabs > :is(a, .tab > a, li.tab > a).active:hover {
2880
+ .tabs > a.active:hover, .tabs > .tab > a.active:hover {
3091
2881
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 8%, transparent);
3092
2882
  }
3093
- .tabs > :is(a, .tab > a, li.tab > a).active:focus-visible, .tabs > :is(a, .tab > a, li.tab > a).active:focus {
2883
+ .tabs > a.active:focus-visible, .tabs > a.active:focus, .tabs > .tab > a.active:focus-visible, .tabs > .tab > a.active:focus {
3094
2884
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 10%, transparent);
3095
2885
  }
3096
- .tabs:not(.horizontal, .tabs-horizontal) > :is(a, .tab > a, li.tab > a):has(> i) {
2886
+ .tabs > a.disabled, .tabs > a[aria-disabled=true], .tabs > .tab > a.disabled, .tabs > .tab > a[aria-disabled=true] {
2887
+ color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
2888
+ background-color: transparent;
2889
+ cursor: default;
2890
+ pointer-events: none;
2891
+ }
2892
+ .tabs:not(.horizontal) > a:has(> i), .tabs:not(.horizontal) > .tab > a:has(> i) {
3097
2893
  min-height: var(--md-comp-primary-tab-with-icon-container-height);
3098
2894
  padding-block: 8px;
3099
2895
  }
3100
- .tabs:not(:has(> .indicator)) > :is(a, .tab > a, li.tab > a).active::after {
2896
+ .tabs:not(:has(> .indicator)) > a.active::after, .tabs:not(:has(> .indicator)) > .tab > a.active::after {
3101
2897
  content: "";
3102
2898
  position: absolute;
3103
2899
  inset: auto 0 0 0;
@@ -3116,9 +2912,7 @@
3116
2912
  padding: 0;
3117
2913
  margin: 0;
3118
2914
  }
3119
- .tabs > :is(a, .tab > a, li.tab > a).disabled,
3120
- .tabs > :is(a, .tab > a, li.tab > a)[aria-disabled=true],
3121
- .tabs > :is(.tab, li.tab).disabled > a {
2915
+ .tabs > .tab.disabled > a {
3122
2916
  color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
3123
2917
  background-color: transparent;
3124
2918
  cursor: default;
@@ -3128,38 +2922,34 @@
3128
2922
  --md-comp-primary-tab-active-indicator-height: 2px;
3129
2923
  --md-comp-primary-tab-with-icon-container-height: 48px;
3130
2924
  }
3131
- .tabs.tabs-secondary > :is(a, .tab > a, li.tab > a) {
2925
+ .tabs.tabs-secondary > a, .tabs.tabs-secondary > .tab > a {
3132
2926
  flex-direction: row;
3133
2927
  gap: 8px;
3134
2928
  }
3135
- .tabs.horizontal > :is(a, .tab > a, li.tab > a),
3136
- .tabs.tabs-horizontal > :is(a, .tab > a, li.tab > a) {
2929
+ .tabs.horizontal > a, .tabs.horizontal > .tab > a {
3137
2930
  flex-direction: row;
3138
2931
  gap: 8px;
3139
2932
  min-height: var(--md-comp-primary-tab-container-height);
3140
2933
  padding-block: 0;
3141
2934
  }
3142
- .tabs.max > :is(a, .tab, li.tab),
3143
- .tabs.tabs-fixed-width > :is(a, .tab, li.tab) {
2935
+ .tabs.max > :is(a, .tab) {
3144
2936
  flex: 1 1 0;
3145
2937
  min-width: 0;
3146
2938
  }
3147
- .tabs.max > :is(a, .tab > a, li.tab > a),
3148
- .tabs.tabs-fixed-width > :is(a, .tab > a, li.tab > a) {
2939
+ .tabs.max > a, .tabs.max > .tab > a {
3149
2940
  width: 100%;
3150
2941
  }
3151
2942
  @media (width < 993px) {
3152
- .tabs > :is(a, .tab, li.tab) {
2943
+ .tabs > :is(a, .tab) {
3153
2944
  flex: 1 1 0;
3154
2945
  min-width: 0;
3155
2946
  }
3156
- .tabs > :is(a, .tab > a, li.tab > a) {
2947
+ .tabs > a, .tabs > .tab > a {
3157
2948
  width: 100%;
3158
2949
  padding-inline: 12px;
3159
2950
  }
3160
2951
  }
3161
- .tabs.transparent,
3162
- .tabs.tabs-transparent {
2952
+ .tabs.transparent {
3163
2953
  --md-comp-primary-tab-container-color: transparent;
3164
2954
  --md-comp-primary-tab-label-text-color: color-mix(
3165
2955
  in oklab,
@@ -3170,21 +2960,14 @@
3170
2960
  --md-comp-primary-tab-active-indicator-color: var(--md-sys-color-on-primary);
3171
2961
  border-block-end-color: color-mix(in oklab, var(--md-sys-color-on-primary) 20%, transparent);
3172
2962
  }
3173
- .tabs.transparent > :is(a, .tab > a, li.tab > a):hover,
3174
- .tabs.transparent > :is(a, .tab > a, li.tab > a):focus,
3175
- .tabs.tabs-transparent > :is(a, .tab > a, li.tab > a):hover,
3176
- .tabs.tabs-transparent > :is(a, .tab > a, li.tab > a):focus {
2963
+ .tabs.transparent > a:hover, .tabs.transparent > a:focus, .tabs.transparent > .tab > a:hover, .tabs.transparent > .tab > a:focus {
3177
2964
  color: var(--md-sys-color-on-primary);
3178
2965
  background-color: color-mix(in oklab, var(--md-sys-color-on-primary) 8%, transparent);
3179
2966
  }
3180
- .tabs.transparent > :is(a, .tab > a, li.tab > a).active:hover,
3181
- .tabs.transparent > :is(a, .tab > a, li.tab > a).active:focus,
3182
- .tabs.tabs-transparent > :is(a, .tab > a, li.tab > a).active:hover,
3183
- .tabs.tabs-transparent > :is(a, .tab > a, li.tab > a).active:focus {
2967
+ .tabs.transparent > a.active:hover, .tabs.transparent > a.active:focus, .tabs.transparent > .tab > a.active:hover, .tabs.transparent > .tab > a.active:focus {
3184
2968
  background-color: color-mix(in oklab, var(--md-sys-color-on-primary) 10%, transparent);
3185
2969
  }
3186
- .tooltip,
3187
- .material-tooltip {
2970
+ .tooltip {
3188
2971
  --md-comp-plain-tooltip-container-color: var(--md-sys-color-inverse-surface);
3189
2972
  --md-comp-plain-tooltip-supporting-text-color: var(--md-sys-color-inverse-on-surface);
3190
2973
  --md-comp-plain-tooltip-container-shape: 4px;
@@ -3260,8 +3043,7 @@
3260
3043
  :not(body) > .tooltip.right:hover {
3261
3044
  transform: translate(calc(100% + var(--md-comp-tooltip-anchor-gap)), -50%) scale(1);
3262
3045
  }
3263
- body > .tooltip,
3264
- .material-tooltip {
3046
+ body > .tooltip {
3265
3047
  position: absolute;
3266
3048
  left: 0;
3267
3049
  top: 0;
@@ -3270,9 +3052,7 @@
3270
3052
  overflow: hidden;
3271
3053
  }
3272
3054
  .tooltip.rich,
3273
- .tooltip.max,
3274
- .material-tooltip.rich,
3275
- .material-tooltip.max {
3055
+ .tooltip.max {
3276
3056
  --md-comp-rich-tooltip-container-color: var(--md-sys-color-surface);
3277
3057
  --md-comp-rich-tooltip-container-shape: 12px;
3278
3058
  display: flex;
@@ -3291,9 +3071,7 @@
3291
3071
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
3292
3072
  }
3293
3073
  .tooltip.rich > :is(h1, h2, h3, h4, h5, h6),
3294
- .tooltip.max > :is(h1, h2, h3, h4, h5, h6),
3295
- .material-tooltip.rich > :is(h1, h2, h3, h4, h5, h6),
3296
- .material-tooltip.max > :is(h1, h2, h3, h4, h5, h6) {
3074
+ .tooltip.max > :is(h1, h2, h3, h4, h5, h6) {
3297
3075
  margin: 0;
3298
3076
  color: var(--md-sys-color-on-surface);
3299
3077
  font-family: var(--md-sys-typescale-title-small-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
@@ -3303,9 +3081,7 @@
3303
3081
  letter-spacing: var(--md-sys-typescale-title-small-letter-spacing);
3304
3082
  }
3305
3083
  .tooltip.rich > p,
3306
- .tooltip.max > p,
3307
- .material-tooltip.rich > p,
3308
- .material-tooltip.max > p {
3084
+ .tooltip.max > p {
3309
3085
  margin: 0;
3310
3086
  color: var(--md-sys-color-on-surface-variant);
3311
3087
  font-family: var(--md-sys-typescale-body-medium-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
@@ -3315,9 +3091,7 @@
3315
3091
  letter-spacing: var(--md-sys-typescale-body-medium-letter-spacing);
3316
3092
  }
3317
3093
  .tooltip.rich > :is(nav, form),
3318
- .tooltip.max > :is(nav, form),
3319
- .material-tooltip.rich > :is(nav, form),
3320
- .material-tooltip.max > :is(nav, form) {
3094
+ .tooltip.max > :is(nav, form) {
3321
3095
  display: flex;
3322
3096
  justify-content: flex-end;
3323
3097
  gap: 8px;
@@ -3331,10 +3105,9 @@
3331
3105
  padding: 0;
3332
3106
  border: none;
3333
3107
  }
3334
- .dropdown-content,
3335
3108
  menu[id] {
3336
3109
  --md-comp-menu-container-color: var(--md-sys-color-surface);
3337
- --md-comp-menu-container-shape: 4px;
3110
+ --md-comp-menu-container-shape: 1rem;
3338
3111
  --md-comp-menu-item-container-height: 48px;
3339
3112
  box-sizing: border-box;
3340
3113
  display: none;
@@ -3355,8 +3128,8 @@
3355
3128
  color: var(--md-sys-color-on-surface);
3356
3129
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
3357
3130
  }
3358
- .dropdown-content > li,
3359
3131
  menu[id] > li {
3132
+ box-sizing: border-box;
3360
3133
  margin: 0;
3361
3134
  padding: 0;
3362
3135
  width: 100%;
@@ -3364,9 +3137,6 @@
3364
3137
  cursor: pointer;
3365
3138
  text-align: left;
3366
3139
  }
3367
- .dropdown-content > li > a,
3368
- .dropdown-content > li > button,
3369
- .dropdown-content > li > span,
3370
3140
  menu[id] > li > a,
3371
3141
  menu[id] > li > button,
3372
3142
  menu[id] > li > span {
@@ -3383,6 +3153,17 @@
3383
3153
  color: var(--md-sys-color-on-surface);
3384
3154
  text-decoration: none;
3385
3155
  cursor: pointer;
3156
+ }
3157
+ menu[id] > li > a:hover, menu[id] > li > a:focus,
3158
+ menu[id] > li > button:hover,
3159
+ menu[id] > li > button:focus,
3160
+ menu[id] > li > span:hover,
3161
+ menu[id] > li > span:focus {
3162
+ background: none;
3163
+ }
3164
+ menu[id] > li > a,
3165
+ menu[id] > li > button,
3166
+ menu[id] > li > span {
3386
3167
  font-family: var(--md-sys-typescale-label-large-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
3387
3168
  font-size: var(--md-sys-typescale-label-large-font-size);
3388
3169
  font-weight: var(--md-sys-typescale-label-large-font-weight);
@@ -3390,9 +3171,6 @@
3390
3171
  letter-spacing: var(--md-sys-typescale-label-large-letter-spacing);
3391
3172
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
3392
3173
  }
3393
- .dropdown-content > li > a > i,
3394
- .dropdown-content > li > button > i,
3395
- .dropdown-content > li > i,
3396
3174
  menu[id] > li > a > i,
3397
3175
  menu[id] > li > button > i,
3398
3176
  menu[id] > li > i {
@@ -3403,19 +3181,19 @@
3403
3181
  line-height: 24px;
3404
3182
  color: var(--md-sys-color-on-surface-variant);
3405
3183
  }
3406
- .dropdown-content > li:not(.disabled, .divider):hover,
3407
- .dropdown-content > li.active,
3184
+ menu[id] > li:not(.disabled, .divider, .optgroup) {
3185
+ width: calc(100% - 16px);
3186
+ margin-inline: 8px;
3187
+ border-radius: 2rem;
3188
+ }
3408
3189
  menu[id] > li:not(.disabled, .divider):hover,
3409
3190
  menu[id] > li.active {
3410
3191
  background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 8%, transparent);
3411
3192
  }
3412
- .dropdown-content > li.disabled,
3413
3193
  menu[id] > li.disabled {
3414
3194
  pointer-events: none;
3415
3195
  opacity: 0.38;
3416
3196
  }
3417
- .dropdown-content > hr,
3418
- .dropdown-content > li.divider,
3419
3197
  menu[id] > hr,
3420
3198
  menu[id] > li.divider {
3421
3199
  display: block;
@@ -3428,21 +3206,92 @@
3428
3206
  background-color: var(--md-sys-color-outline-variant);
3429
3207
  cursor: default;
3430
3208
  }
3431
- body.keyboard-focused .dropdown-content > li:focus,
3432
- body.keyboard-focused menu[id] > li:focus {
3433
- background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 10%, transparent);
3209
+ menu[id]:has(> li > menu) {
3210
+ overflow: visible;
3434
3211
  }
3435
- .input-field.col .dropdown-content [type=checkbox] + label {
3436
- top: 1px;
3437
- left: 0;
3438
- height: 18px;
3212
+ menu[id] li:has(> menu) {
3213
+ position: relative;
3214
+ }
3215
+ menu[id] li:has(> menu) > :is(a, button, span)::after {
3216
+ content: "";
3217
+ flex: 0 0 24px;
3218
+ width: 24px;
3219
+ height: 24px;
3220
+ margin-inline-start: auto;
3221
+ background-color: var(--md-sys-color-on-surface-variant);
3222
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 6l6 6-6 6'/%3E%3C/svg%3E") center/24px no-repeat;
3223
+ }
3224
+ menu[id] li > menu {
3225
+ --md-comp-menu-container-color: var(--md-sys-color-surface);
3226
+ --md-comp-menu-container-shape: 1rem;
3227
+ --md-comp-menu-item-container-height: 48px;
3228
+ box-sizing: border-box;
3229
+ display: none;
3230
+ position: absolute;
3231
+ inset-block-start: 0;
3232
+ inset-inline-start: 100%;
3233
+ z-index: 1;
3234
+ min-width: 112px;
3235
+ margin: 0;
3236
+ padding: 8px 0;
3237
+ list-style: none;
3238
+ overflow: visible;
3239
+ opacity: 1;
3439
3240
  transform: none;
3241
+ background-color: var(--md-comp-menu-container-color);
3242
+ border-radius: var(--md-comp-menu-container-shape);
3243
+ color: var(--md-sys-color-on-surface);
3244
+ box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
3245
+ }
3246
+ menu[id] li > menu > li {
3247
+ box-sizing: border-box;
3248
+ min-height: var(--md-comp-menu-item-container-height);
3249
+ }
3250
+ menu[id] li > menu > li:not(.disabled, .divider, .optgroup) {
3251
+ width: calc(100% - 16px);
3252
+ margin-inline: 8px;
3253
+ border-radius: 2rem;
3254
+ }
3255
+ menu[id] li > menu > li:not(.disabled, .divider):hover,
3256
+ menu[id] li > menu > li.active {
3257
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 8%, transparent);
3258
+ }
3259
+ menu[id] li > menu > li > :is(a, button, span) {
3260
+ display: flex;
3261
+ align-items: center;
3262
+ gap: 12px;
3263
+ box-sizing: border-box;
3264
+ width: 100%;
3265
+ min-height: var(--md-comp-menu-item-container-height);
3266
+ padding: 0 12px;
3267
+ color: var(--md-sys-color-on-surface);
3268
+ text-decoration: none;
3269
+ font-family: var(--md-sys-typescale-label-large-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
3270
+ font-size: var(--md-sys-typescale-label-large-font-size);
3271
+ font-weight: var(--md-sys-typescale-label-large-font-weight);
3272
+ line-height: var(--md-sys-typescale-label-large-line-height);
3273
+ letter-spacing: var(--md-sys-typescale-label-large-letter-spacing);
3274
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
3275
+ }
3276
+ @media (hover: hover) and (pointer: fine) {
3277
+ menu[id] li:is(:hover, :focus-within) > menu {
3278
+ display: block;
3279
+ }
3280
+ }
3281
+ menu[id] li.open > menu {
3282
+ display: block;
3283
+ }
3284
+ menu[id] li.submenu-start > menu {
3285
+ inset-inline-start: auto;
3286
+ inset-inline-end: 100%;
3287
+ }
3288
+ body.keyboard-focused menu[id] > li:focus {
3289
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 10%, transparent);
3440
3290
  }
3441
3291
  .dropdown-trigger {
3442
3292
  cursor: pointer;
3443
3293
  }
3444
- dialog,
3445
- .modal {
3294
+ dialog {
3446
3295
  --md-comp-basic-dialog-container-color: var(--md-sys-color-surface);
3447
3296
  --md-comp-basic-dialog-container-shape: 28px;
3448
3297
  --md-comp-basic-dialog-container-min-width: 280px;
@@ -3462,16 +3311,14 @@
3462
3311
  outline: none;
3463
3312
  box-shadow: 0 8px 17px 2px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
3464
3313
  }
3465
- dialog::backdrop,
3466
- .modal::backdrop {
3314
+ dialog::backdrop {
3467
3315
  background-color: color-mix(in oklab, var(--md-sys-color-scrim) 32%, transparent);
3468
3316
  backdrop-filter: blur(var(--md-comp-basic-dialog-scrim-blur));
3469
3317
  }
3470
3318
  html:has(dialog:modal) {
3471
3319
  overflow: hidden;
3472
3320
  }
3473
- dialog[open],
3474
- .modal[open] {
3321
+ dialog[open] {
3475
3322
  display: flex;
3476
3323
  flex-direction: column;
3477
3324
  overflow: hidden;
@@ -3487,8 +3334,7 @@
3487
3334
  line-height: 24px;
3488
3335
  color: var(--md-sys-color-secondary);
3489
3336
  }
3490
- dialog > :is(h1, h2, h3, h4, h5, h6),
3491
- .modal-header {
3337
+ dialog > :is(h1, h2, h3, h4, h5, h6) {
3492
3338
  flex: 0 0 auto;
3493
3339
  margin: 0;
3494
3340
  padding: 24px 24px 16px;
@@ -3504,8 +3350,7 @@
3504
3350
  text-align: center;
3505
3351
  }
3506
3352
  dialog > p,
3507
- dialog > div,
3508
- .modal-content {
3353
+ dialog > div {
3509
3354
  flex: 1 1 auto;
3510
3355
  min-height: 0;
3511
3356
  overflow: auto;
@@ -3519,12 +3364,10 @@
3519
3364
  letter-spacing: var(--md-sys-typescale-body-medium-letter-spacing);
3520
3365
  color: color-mix(in oklab, currentColor 72%, transparent);
3521
3366
  }
3522
- dialog > :is(h1, h2, h3, h4, h5, h6) + p,
3523
- .modal-header + .modal-content {
3367
+ dialog > :is(h1, h2, h3, h4, h5, h6) + p {
3524
3368
  padding-top: 0;
3525
3369
  }
3526
- dialog > :is(form, nav):last-child,
3527
- .modal-footer {
3370
+ dialog > :is(form, nav):last-child {
3528
3371
  display: flex;
3529
3372
  flex-wrap: wrap;
3530
3373
  justify-content: flex-end;
@@ -3536,11 +3379,7 @@
3536
3379
  border: 0;
3537
3380
  background: none;
3538
3381
  }
3539
- .modal-close {
3540
- cursor: pointer;
3541
- }
3542
- dialog.max,
3543
- .modal.max {
3382
+ dialog.max {
3544
3383
  width: 100%;
3545
3384
  max-width: none;
3546
3385
  height: 100%;
@@ -3550,8 +3389,7 @@
3550
3389
  border-radius: 0;
3551
3390
  }
3552
3391
  dialog.bottom,
3553
- dialog.bottom-sheet,
3554
- .modal.bottom-sheet {
3392
+ dialog.bottom-sheet {
3555
3393
  width: 100%;
3556
3394
  min-width: 0;
3557
3395
  max-width: none;
@@ -3560,8 +3398,7 @@
3560
3398
  border-radius: var(--md-comp-basic-dialog-container-shape) var(--md-comp-basic-dialog-container-shape) 0 0;
3561
3399
  }
3562
3400
  dialog.top,
3563
- dialog.top-sheet,
3564
- .modal.top-sheet {
3401
+ dialog.top-sheet {
3565
3402
  width: 100%;
3566
3403
  min-width: 0;
3567
3404
  max-width: none;
@@ -3571,10 +3408,8 @@
3571
3408
  }
3572
3409
  dialog.left,
3573
3410
  dialog.left-sheet,
3574
- .modal.left-sheet,
3575
3411
  dialog.right,
3576
- dialog.right-sheet,
3577
- .modal.right-sheet {
3412
+ dialog.right-sheet {
3578
3413
  float: none !important;
3579
3414
  width: min(var(--md-comp-basic-dialog-sheet-width), 85%);
3580
3415
  max-width: none;
@@ -3586,15 +3421,13 @@
3586
3421
  inset-block: 0;
3587
3422
  }
3588
3423
  dialog.left,
3589
- dialog.left-sheet,
3590
- .modal.left-sheet {
3424
+ dialog.left-sheet {
3591
3425
  inset-inline-start: 0;
3592
3426
  inset-inline-end: auto;
3593
3427
  border-radius: 0 var(--md-comp-basic-dialog-container-shape) var(--md-comp-basic-dialog-container-shape) 0;
3594
3428
  }
3595
3429
  dialog.right,
3596
- dialog.right-sheet,
3597
- .modal.right-sheet {
3430
+ dialog.right-sheet {
3598
3431
  inset-inline-start: auto;
3599
3432
  inset-inline-end: 0;
3600
3433
  border-radius: var(--md-comp-basic-dialog-container-shape) 0 0 var(--md-comp-basic-dialog-container-shape);
@@ -3622,10 +3455,10 @@
3622
3455
  color: var(--md-sys-color-on-surface);
3623
3456
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
3624
3457
  }
3625
- .collapsible > :is(details, li) + :is(details, li) {
3458
+ .collapsible > details + details {
3626
3459
  border-top: 1px solid var(--md-comp-collapsible-outline-color);
3627
3460
  }
3628
- .collapsible :is(summary, .collapsible-header) {
3461
+ .collapsible summary {
3629
3462
  display: flex;
3630
3463
  align-items: center;
3631
3464
  box-sizing: border-box;
@@ -3643,21 +3476,21 @@
3643
3476
  cursor: pointer;
3644
3477
  -webkit-tap-highlight-color: transparent;
3645
3478
  }
3646
- .collapsible :is(summary, .collapsible-header)::-webkit-details-marker {
3479
+ .collapsible summary::-webkit-details-marker {
3647
3480
  display: none;
3648
3481
  }
3649
- .collapsible :is(summary, .collapsible-header):focus-visible {
3482
+ .collapsible summary:focus-visible {
3650
3483
  outline: 3px solid var(--md-sys-color-secondary);
3651
3484
  outline-offset: 2px;
3652
3485
  }
3653
- .collapsible :is(summary, .collapsible-header) > i {
3486
+ .collapsible summary > i {
3654
3487
  width: 2rem;
3655
3488
  margin-right: 1rem;
3656
3489
  font-size: 1.6rem;
3657
3490
  line-height: 1;
3658
3491
  text-align: center;
3659
3492
  }
3660
- .collapsible :is(summary, .collapsible-header)::after {
3493
+ .collapsible summary::after {
3661
3494
  content: "expand_more";
3662
3495
  flex-shrink: 0;
3663
3496
  margin-inline-start: auto;
@@ -3668,14 +3501,14 @@
3668
3501
  -webkit-font-smoothing: antialiased;
3669
3502
  transition: transform var(--md-comp-collapsible-duration) var(--md-comp-collapsible-easing-close);
3670
3503
  }
3671
- .collapsible :is(details[open] > summary, .active > .collapsible-header)::after {
3504
+ .collapsible details[open] > summary::after {
3672
3505
  transform: rotate(180deg);
3673
3506
  transition-timing-function: var(--md-comp-collapsible-easing-open);
3674
3507
  }
3675
3508
  .collapsible .collapsible-header-content {
3676
3509
  flex-grow: 1;
3677
3510
  }
3678
- .collapsible .collapsible-body {
3511
+ .collapsible details > :not(summary) {
3679
3512
  display: grid;
3680
3513
  grid-template-rows: 0fr;
3681
3514
  box-sizing: border-box;
@@ -3683,19 +3516,18 @@
3683
3516
  overflow: hidden;
3684
3517
  transition: grid-template-rows var(--md-comp-collapsible-duration) var(--md-comp-collapsible-easing-close);
3685
3518
  }
3686
- .collapsible .collapsible-body > * {
3519
+ .collapsible details > :not(summary) > * {
3687
3520
  min-height: 0;
3688
3521
  overflow: hidden;
3689
3522
  }
3690
- .collapsible .active > .collapsible-body,
3691
- .collapsible details[open] > .collapsible-body {
3523
+ .collapsible details[open] > :not(summary) {
3692
3524
  grid-template-rows: 1fr;
3693
3525
  transition-timing-function: var(--md-comp-collapsible-easing-open);
3694
3526
  }
3695
- .collapsible details:not([open]) > .collapsible-body {
3527
+ .collapsible details:not([open]) > :not(summary) {
3696
3528
  display: grid;
3697
3529
  }
3698
- .collapsible.no-icon :is(summary, .collapsible-header)::after {
3530
+ .collapsible.no-icon summary::after {
3699
3531
  content: none;
3700
3532
  }
3701
3533
  .collapsible.popout {
@@ -3704,7 +3536,7 @@
3704
3536
  background: transparent;
3705
3537
  box-shadow: none !important;
3706
3538
  }
3707
- .collapsible.popout > :is(details, li) {
3539
+ .collapsible.popout > details {
3708
3540
  margin-inline: var(--md-comp-collapsible-popout-inset);
3709
3541
  overflow: hidden;
3710
3542
  border: 0;
@@ -3713,10 +3545,10 @@
3713
3545
  transition: margin var(--md-comp-collapsible-duration) var(--md-comp-collapsible-easing-close);
3714
3546
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
3715
3547
  }
3716
- .collapsible.popout > :is(details, li) + :is(details, li) {
3548
+ .collapsible.popout > details + details {
3717
3549
  border-top: 0;
3718
3550
  }
3719
- .collapsible.popout > :is(details[open], li.active) {
3551
+ .collapsible.popout > details[open] {
3720
3552
  margin-block: var(--md-comp-collapsible-popout-gap);
3721
3553
  margin-inline: 0;
3722
3554
  transition-timing-function: var(--md-comp-collapsible-easing-open);
@@ -3880,8 +3712,7 @@
3880
3712
  z-index: 1000;
3881
3713
  -webkit-font-smoothing: antialiased;
3882
3714
  }
3883
- .parallax,
3884
- .parallax-container {
3715
+ .parallax {
3885
3716
  --md-comp-parallax-height: 500px;
3886
3717
  --md-comp-parallax-travel: 120px;
3887
3718
  --md-comp-parallax-shape: 12px;
@@ -3895,19 +3726,8 @@
3895
3726
  view-timeline-name: --parallax;
3896
3727
  view-timeline-axis: block;
3897
3728
  }
3898
- .parallax-container > .parallax {
3899
- position: absolute;
3900
- inset: 0;
3901
- height: auto;
3902
- margin: 0;
3903
- border-radius: 0;
3904
- overflow: visible;
3905
- view-timeline-name: none;
3906
- }
3907
3729
  .parallax > :is(img, video),
3908
- .parallax > picture,
3909
- .parallax-container .parallax > :is(img, video),
3910
- .parallax-container .parallax > picture {
3730
+ .parallax > picture {
3911
3731
  position: absolute;
3912
3732
  inset: 0;
3913
3733
  display: block;
@@ -3915,17 +3735,14 @@
3915
3735
  height: 100%;
3916
3736
  border: 0;
3917
3737
  }
3918
- .parallax > picture img,
3919
- .parallax-container .parallax > picture img {
3738
+ .parallax > picture img {
3920
3739
  display: block;
3921
3740
  width: 100%;
3922
3741
  height: 100%;
3923
3742
  border: 0;
3924
3743
  }
3925
3744
  .parallax > :is(img, video),
3926
- .parallax > picture img,
3927
- .parallax-container .parallax > :is(img, video),
3928
- .parallax-container .parallax > picture img {
3745
+ .parallax > picture img {
3929
3746
  object-fit: cover;
3930
3747
  object-position: center;
3931
3748
  }
@@ -3950,8 +3767,7 @@
3950
3767
  color: var(--md-sys-color-on-surface);
3951
3768
  background: color-mix(in oklab, var(--md-sys-color-surface) 72%, transparent);
3952
3769
  }
3953
- .parallax.max,
3954
- .parallax-container.max {
3770
+ .parallax.max {
3955
3771
  height: 100vh;
3956
3772
  height: 100dvh;
3957
3773
  border-radius: 0;
@@ -3959,9 +3775,7 @@
3959
3775
  @supports (animation-timeline: view()) {
3960
3776
  @media (prefers-reduced-motion: no-preference) {
3961
3777
  .parallax > :is(img, video),
3962
- .parallax > picture img,
3963
- .parallax-container .parallax > :is(img, video),
3964
- .parallax-container .parallax > picture img {
3778
+ .parallax > picture img {
3965
3779
  height: calc(100% + 2 * var(--md-comp-parallax-travel));
3966
3780
  inset: calc(-1 * var(--md-comp-parallax-travel)) 0 auto;
3967
3781
  animation: parallax-shift linear both;
@@ -3990,186 +3804,240 @@
3990
3804
  z-index: 9999;
3991
3805
  visibility: hidden;
3992
3806
  }
3993
- .page-footer {
3807
+ footer:not(:has(> nav:only-child)) {
3808
+ --md-comp-footer-padding-block: 3rem;
3809
+ --md-comp-footer-padding-inline: 1rem;
3810
+ --md-comp-footer-gap: 2rem;
3811
+ --md-comp-footer-legal-height: 48px;
3812
+ box-sizing: border-box;
3994
3813
  margin-top: 5rem;
3995
- padding-top: 3rem;
3814
+ padding: var(--md-comp-footer-padding-block) var(--md-comp-footer-padding-inline) 1rem;
3996
3815
  border-top: 1px dashed var(--md-sys-color-outline-variant);
3816
+ color: var(--md-sys-color-on-surface);
3997
3817
  }
3998
- .page-footer p {
3999
- color: var(--md-sys-color-outline);
3818
+ footer:not(:has(> nav:only-child)) p {
3819
+ margin: 0 0 8px;
3820
+ color: var(--md-sys-color-on-surface-variant);
3821
+ font-family: var(--md-sys-typescale-body-medium-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
3822
+ font-size: var(--md-sys-typescale-body-medium-font-size);
3823
+ font-weight: var(--md-sys-typescale-body-medium-font-weight);
3824
+ line-height: var(--md-sys-typescale-body-medium-line-height);
3825
+ letter-spacing: var(--md-sys-typescale-body-medium-letter-spacing);
3826
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
4000
3827
  }
4001
- .page-footer a {
3828
+ footer:not(:has(> nav:only-child)) a:not(.button, .circle, .extra) {
4002
3829
  color: var(--md-sys-color-primary);
3830
+ text-decoration: none;
4003
3831
  }
4004
- .page-footer .footer-copyright,
4005
- .page-footer .footer-copyright a {
4006
- overflow: hidden;
4007
- min-height: 50px;
4008
- display: flex;
4009
- align-items: center;
4010
- justify-content: space-between;
4011
- padding: 10px 0px;
4012
- }
4013
- .page-footer ul {
4014
- padding-left: 0;
4015
- list-style-type: none;
4016
- }
4017
- ::placeholder {
4018
- color: var(--md-sys-color-on-surface-variant);
3832
+ footer:not(:has(> nav:only-child)) a:not(.button, .circle, .extra):focus-visible {
3833
+ outline: 3px solid var(--md-sys-color-secondary);
3834
+ outline-offset: 2px;
4019
3835
  }
4020
- input:not([type]):not(.browser-default), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=month]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.expressive-textarea {
4021
- outline: none;
3836
+ footer:not(:has(> nav:only-child)) :is(h1, h2, h3, h4, h5, h6) {
3837
+ margin: 0 0 8px;
4022
3838
  color: var(--md-sys-color-on-surface);
4023
- width: 100%;
4024
- height: 56px;
4025
- background-color: transparent;
4026
- font-family: var(--md-sys-typescale-body-large-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
4027
- font-size: var(--md-sys-typescale-body-large-font-size);
4028
- font-weight: var(--md-sys-typescale-body-large-font-weight);
4029
- line-height: var(--md-sys-typescale-body-large-line-height);
4030
- letter-spacing: var(--md-sys-typescale-body-large-letter-spacing);
3839
+ font-family: var(--md-sys-typescale-title-small-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
3840
+ font-size: var(--md-sys-typescale-title-small-font-size);
3841
+ font-weight: var(--md-sys-typescale-title-small-font-weight);
3842
+ line-height: var(--md-sys-typescale-title-small-line-height);
3843
+ letter-spacing: var(--md-sys-typescale-title-small-letter-spacing);
4031
3844
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
4032
3845
  }
4033
- .field,
4034
- .input-field {
4035
- --md-comp-filled-text-field-container-color: var(--md-sys-color-surface-variant);
4036
- --md-comp-filled-text-field-caret-color: var(--md-sys-color-primary);
4037
- --input-color: var(--md-comp-filled-text-field-caret-color);
4038
- position: relative;
4039
- clear: both;
3846
+ footer:not(:has(> nav:only-child)) ul {
3847
+ margin: 0;
3848
+ padding: 0;
3849
+ list-style: none;
4040
3850
  }
4041
- .field input:not([type=range]),
4042
- .field textarea,
4043
- .input-field input:not([type=range]),
4044
- .input-field textarea {
4045
- box-sizing: border-box;
4046
- padding: 20px 16px 8px;
4047
- border: none;
4048
- border-radius: 4px 4px 0 0;
4049
- border-bottom: 1px solid var(--md-sys-color-on-surface-variant);
4050
- background-color: var(--md-comp-filled-text-field-container-color);
4051
- caret-color: var(--input-color);
3851
+ footer:not(:has(> nav:only-child)).filled,
3852
+ footer:not(:has(> nav:only-child)).surface {
3853
+ background-color: var(--md-sys-color-surface-container);
3854
+ border-top: 1px solid var(--md-sys-color-outline-variant);
4052
3855
  }
4053
- .field input:not([type=range]):focus:not([readonly]),
4054
- .field textarea:focus:not([readonly]),
4055
- .input-field input:not([type=range]):focus:not([readonly]),
4056
- .input-field textarea:focus:not([readonly]) {
4057
- border-bottom-width: 2px;
4058
- border-bottom-color: var(--input-color);
4059
- padding-bottom: 7px;
3856
+ footer:not(:has(> nav:only-child)) > .container,
3857
+ footer:not(:has(> nav:only-child)):not(:has(> .container)) {
3858
+ display: grid;
3859
+ gap: var(--md-comp-footer-gap);
3860
+ grid-template-columns: 1fr;
4060
3861
  }
4061
- .field input:not([type=range]):disabled, .field input:not([type=range])[readonly=readonly],
4062
- .field textarea:disabled,
4063
- .field textarea[readonly=readonly],
4064
- .input-field input:not([type=range]):disabled,
4065
- .input-field input:not([type=range])[readonly=readonly],
4066
- .input-field textarea:disabled,
4067
- .input-field textarea[readonly=readonly] {
4068
- color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
4069
- border-color: color-mix(in oklab, var(--md-sys-color-on-surface) 12%, transparent);
4070
- background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 4%, transparent);
3862
+ @media (width >= 601px) {
3863
+ footer:not(:has(> nav:only-child)) > .container,
3864
+ footer:not(:has(> nav:only-child)):not(:has(> .container)) {
3865
+ grid-template-columns: repeat(2, 1fr);
3866
+ }
4071
3867
  }
4072
- .field input:not([type=range]):focus:not([readonly]) + label, .field input:not([type=range]):focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4073
- .field textarea:focus:not([readonly]) + label,
4074
- .field textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4075
- .input-field input:not([type=range]):focus:not([readonly]) + label,
4076
- .input-field input:not([type=range]):focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4077
- .input-field textarea:focus:not([readonly]) + label,
4078
- .input-field textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter) {
4079
- color: var(--input-color);
3868
+ @media (width >= 993px) {
3869
+ footer:not(:has(> nav:only-child)) > .container,
3870
+ footer:not(:has(> nav:only-child)):not(:has(> .container)) {
3871
+ grid-template-columns: repeat(4, 1fr);
3872
+ }
4080
3873
  }
4081
- .field input:not([type=range]):focus:not([readonly]) + label, .field input:not([type=range]):not([placeholder=" "]) + label, .field input:not([type=range]):not(:placeholder-shown) + label, .field input:not([type=range]):focus:not([readonly]) + span:not(.supporting-text, .character-counter), .field input:not([type=range]):not([placeholder=" "]) + span:not(.supporting-text, .character-counter), .field input:not([type=range]):not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
3874
+ @media (width >= 1201px) {
3875
+ footer:not(:has(> nav:only-child)) > .container,
3876
+ footer:not(:has(> nav:only-child)):not(:has(> .container)) {
3877
+ grid-template-columns: repeat(5, 1fr);
3878
+ }
3879
+ }
3880
+ footer:not(:has(> nav:only-child)) > .container > .row,
3881
+ footer:not(:has(> nav:only-child)) > .row {
3882
+ grid-column: 1/-1;
3883
+ }
3884
+ footer:not(:has(> nav:only-child)) nav {
3885
+ display: flex;
3886
+ flex-direction: column;
3887
+ align-items: flex-start;
3888
+ gap: 0;
3889
+ min-width: 0;
3890
+ }
3891
+ footer:not(:has(> nav:only-child)) nav > a:not(.button, .circle, .extra),
3892
+ footer:not(:has(> nav:only-child)) ul a:not(.button, .circle, .extra) {
3893
+ display: inline-flex;
3894
+ align-items: center;
3895
+ box-sizing: border-box;
3896
+ min-height: 48px;
3897
+ padding: 0 12px;
3898
+ margin-inline-start: -12px;
3899
+ border-radius: 2rem;
3900
+ font-family: var(--md-sys-typescale-label-large-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
3901
+ font-size: var(--md-sys-typescale-label-large-font-size);
3902
+ font-weight: var(--md-sys-typescale-label-large-font-weight);
3903
+ line-height: var(--md-sys-typescale-label-large-line-height);
3904
+ letter-spacing: var(--md-sys-typescale-label-large-letter-spacing);
3905
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
3906
+ }
3907
+ footer:not(:has(> nav:only-child)) nav > a:not(.button, .circle, .extra):hover,
3908
+ footer:not(:has(> nav:only-child)) ul a:not(.button, .circle, .extra):hover {
3909
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 8%, transparent);
3910
+ }
3911
+ footer:not(:has(> nav:only-child)) > small:last-child {
3912
+ display: flex;
3913
+ flex-wrap: wrap;
3914
+ align-items: center;
3915
+ justify-content: space-between;
3916
+ gap: 8px 16px;
3917
+ box-sizing: border-box;
3918
+ min-height: var(--md-comp-footer-legal-height);
3919
+ margin: 0;
3920
+ padding-block: 12px;
3921
+ grid-column: 1/-1;
3922
+ border-top: 1px solid var(--md-sys-color-outline-variant);
3923
+ color: var(--md-sys-color-on-surface-variant);
3924
+ font-family: var(--md-sys-typescale-body-small-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
3925
+ font-size: var(--md-sys-typescale-body-small-font-size);
3926
+ font-weight: var(--md-sys-typescale-body-small-font-weight);
3927
+ line-height: var(--md-sys-typescale-body-small-line-height);
3928
+ letter-spacing: var(--md-sys-typescale-body-small-letter-spacing);
3929
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
3930
+ }
3931
+ footer:not(:has(> nav:only-child)) > small:last-child a:not(.button) {
3932
+ color: var(--md-sys-color-primary);
3933
+ }
3934
+ body:has(> footer:not(:has(> nav:only-child))) {
3935
+ min-height: 100dvh;
3936
+ display: flex;
3937
+ flex-direction: column;
3938
+ }
3939
+ body:has(> footer:not(:has(> nav:only-child))) > main {
3940
+ flex: 1 0 auto;
3941
+ }
3942
+ ::placeholder {
3943
+ color: var(--md-sys-color-on-surface-variant);
3944
+ }
3945
+ input:not([type]):not(.browser-default), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=month]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.expressive-textarea {
3946
+ outline: none;
3947
+ color: var(--md-sys-color-on-surface);
3948
+ width: 100%;
3949
+ height: 56px;
3950
+ background-color: transparent;
3951
+ font-family: var(--md-sys-typescale-body-large-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
3952
+ font-size: var(--md-sys-typescale-body-large-font-size);
3953
+ font-weight: var(--md-sys-typescale-body-large-font-weight);
3954
+ line-height: var(--md-sys-typescale-body-large-line-height);
3955
+ letter-spacing: var(--md-sys-typescale-body-large-letter-spacing);
3956
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
3957
+ }
3958
+ .field {
3959
+ --md-comp-filled-text-field-container-color: var(--md-sys-color-surface-variant);
3960
+ --md-comp-filled-text-field-container-shape: 1rem;
3961
+ --md-comp-filled-text-field-caret-color: var(--md-sys-color-primary);
3962
+ --input-color: var(--md-comp-filled-text-field-caret-color);
3963
+ position: relative;
3964
+ clear: both;
3965
+ }
3966
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]),
3967
+ .field textarea {
3968
+ box-sizing: border-box;
3969
+ padding: 20px 16px 8px;
3970
+ border: none;
3971
+ border-radius: var(--md-comp-filled-text-field-container-shape);
3972
+ border-bottom: 1px solid var(--md-sys-color-on-surface-variant);
3973
+ background-color: var(--md-comp-filled-text-field-container-color);
3974
+ caret-color: var(--input-color);
3975
+ }
3976
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):focus:not([readonly]),
3977
+ .field textarea:focus:not([readonly]) {
3978
+ border-bottom-width: 2px;
3979
+ border-bottom-color: var(--input-color);
3980
+ padding-bottom: 7px;
3981
+ }
3982
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):disabled, .field input:not([type=range], [type=checkbox], [type=radio], [type=file])[readonly=readonly],
3983
+ .field textarea:disabled,
3984
+ .field textarea[readonly=readonly] {
3985
+ color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
3986
+ border-color: color-mix(in oklab, var(--md-sys-color-on-surface) 12%, transparent);
3987
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 4%, transparent);
3988
+ }
3989
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):focus:not([readonly]) + label, .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):focus:not([readonly]) + span:not(.supporting-text, .character-counter, .caret),
3990
+ .field textarea:focus:not([readonly]) + label,
3991
+ .field textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter, .caret) {
3992
+ color: var(--input-color);
3993
+ }
3994
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):focus:not([readonly]) + label, .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):not([placeholder=" "]) + label, .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):not(:placeholder-shown) + label, .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):focus:not([readonly]) + span:not(.supporting-text, .character-counter, .caret), .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):not([placeholder=" "]) + span:not(.supporting-text, .character-counter, .caret), .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):not(:placeholder-shown) + span:not(.supporting-text, .character-counter, .caret),
4082
3995
  .field textarea:focus:not([readonly]) + label,
4083
3996
  .field textarea:not([placeholder=" "]) + label,
4084
3997
  .field textarea:not(:placeholder-shown) + label,
4085
- .field textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4086
- .field textarea:not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4087
- .field textarea:not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
4088
- .input-field input:not([type=range]):focus:not([readonly]) + label,
4089
- .input-field input:not([type=range]):not([placeholder=" "]) + label,
4090
- .input-field input:not([type=range]):not(:placeholder-shown) + label,
4091
- .input-field input:not([type=range]):focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4092
- .input-field input:not([type=range]):not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4093
- .input-field input:not([type=range]):not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
4094
- .input-field textarea:focus:not([readonly]) + label,
4095
- .input-field textarea:not([placeholder=" "]) + label,
4096
- .input-field textarea:not(:placeholder-shown) + label,
4097
- .input-field textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4098
- .input-field textarea:not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4099
- .input-field textarea:not(:placeholder-shown) + span:not(.supporting-text, .character-counter) {
3998
+ .field textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter, .caret),
3999
+ .field textarea:not([placeholder=" "]) + span:not(.supporting-text, .character-counter, .caret),
4000
+ .field textarea:not(:placeholder-shown) + span:not(.supporting-text, .character-counter, .caret) {
4100
4001
  transform: scale(0.75);
4101
4002
  top: 8px;
4102
4003
  }
4103
- .field input:not([type=range]):disabled + label, .field input:not([type=range])[readonly=readonly] + label,
4004
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):disabled + label, .field input:not([type=range], [type=checkbox], [type=radio], [type=file])[readonly=readonly] + label,
4104
4005
  .field textarea:disabled + label,
4105
- .field textarea[readonly=readonly] + label,
4106
- .input-field input:not([type=range]):disabled + label,
4107
- .input-field input:not([type=range])[readonly=readonly] + label,
4108
- .input-field textarea:disabled + label,
4109
- .input-field textarea[readonly=readonly] + label {
4006
+ .field textarea[readonly=readonly] + label {
4110
4007
  color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
4111
4008
  }
4112
- .field input:not([type=range]).invalid ~ .supporting-text[data-error] > span, .field input:not([type=range])[aria-invalid=true] ~ .supporting-text[data-error] > span, .field input:not([type=range]).invalid ~ small[data-error] > span, .field input:not([type=range])[aria-invalid=true] ~ small[data-error] > span,
4009
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]).invalid ~ .supporting-text[data-error] > span, .field input:not([type=range], [type=checkbox], [type=radio], [type=file])[aria-invalid=true] ~ .supporting-text[data-error] > span, .field input:not([type=range], [type=checkbox], [type=radio], [type=file]).invalid ~ small[data-error] > span, .field input:not([type=range], [type=checkbox], [type=radio], [type=file])[aria-invalid=true] ~ small[data-error] > span,
4113
4010
  .field textarea.invalid ~ .supporting-text[data-error] > span,
4114
4011
  .field textarea[aria-invalid=true] ~ .supporting-text[data-error] > span,
4115
4012
  .field textarea.invalid ~ small[data-error] > span,
4116
- .field textarea[aria-invalid=true] ~ small[data-error] > span,
4117
- .input-field input:not([type=range]).invalid ~ .supporting-text[data-error] > span,
4118
- .input-field input:not([type=range])[aria-invalid=true] ~ .supporting-text[data-error] > span,
4119
- .input-field input:not([type=range]).invalid ~ small[data-error] > span,
4120
- .input-field input:not([type=range])[aria-invalid=true] ~ small[data-error] > span,
4121
- .input-field textarea.invalid ~ .supporting-text[data-error] > span,
4122
- .input-field textarea[aria-invalid=true] ~ .supporting-text[data-error] > span,
4123
- .input-field textarea.invalid ~ small[data-error] > span,
4124
- .input-field textarea[aria-invalid=true] ~ small[data-error] > span {
4013
+ .field textarea[aria-invalid=true] ~ small[data-error] > span {
4125
4014
  display: none;
4126
4015
  }
4127
- .field input:not([type=range]).invalid, .field input:not([type=range])[aria-invalid=true],
4016
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]).invalid, .field input:not([type=range], [type=checkbox], [type=radio], [type=file])[aria-invalid=true],
4128
4017
  .field textarea.invalid,
4129
- .field textarea[aria-invalid=true],
4130
- .input-field input:not([type=range]).invalid,
4131
- .input-field input:not([type=range])[aria-invalid=true],
4132
- .input-field textarea.invalid,
4133
- .input-field textarea[aria-invalid=true] {
4018
+ .field textarea[aria-invalid=true] {
4134
4019
  border-bottom-color: var(--md-sys-color-error);
4135
4020
  box-shadow: 0 1px 0 0 var(--md-sys-color-error);
4136
4021
  }
4137
- .field input:not([type=range]).invalid ~ .supporting-text::after, .field input:not([type=range])[aria-invalid=true] ~ .supporting-text::after, .field input:not([type=range]).invalid ~ small::after, .field input:not([type=range])[aria-invalid=true] ~ small::after,
4022
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]).invalid ~ .supporting-text::after, .field input:not([type=range], [type=checkbox], [type=radio], [type=file])[aria-invalid=true] ~ .supporting-text::after, .field input:not([type=range], [type=checkbox], [type=radio], [type=file]).invalid ~ small::after, .field input:not([type=range], [type=checkbox], [type=radio], [type=file])[aria-invalid=true] ~ small::after,
4138
4023
  .field textarea.invalid ~ .supporting-text::after,
4139
4024
  .field textarea[aria-invalid=true] ~ .supporting-text::after,
4140
4025
  .field textarea.invalid ~ small::after,
4141
- .field textarea[aria-invalid=true] ~ small::after,
4142
- .input-field input:not([type=range]).invalid ~ .supporting-text::after,
4143
- .input-field input:not([type=range])[aria-invalid=true] ~ .supporting-text::after,
4144
- .input-field input:not([type=range]).invalid ~ small::after,
4145
- .input-field input:not([type=range])[aria-invalid=true] ~ small::after,
4146
- .input-field textarea.invalid ~ .supporting-text::after,
4147
- .input-field textarea[aria-invalid=true] ~ .supporting-text::after,
4148
- .input-field textarea.invalid ~ small::after,
4149
- .input-field textarea[aria-invalid=true] ~ small::after {
4026
+ .field textarea[aria-invalid=true] ~ small::after {
4150
4027
  content: attr(data-error);
4151
4028
  color: var(--md-sys-color-error);
4152
4029
  }
4153
- .field input:not([type=range]).invalid ~ label, .field input:not([type=range]):focus.invalid ~ label, .field input:not([type=range])[aria-invalid=true] ~ label,
4030
+ .field input:not([type=range], [type=checkbox], [type=radio], [type=file]).invalid ~ label, .field input:not([type=range], [type=checkbox], [type=radio], [type=file]):focus.invalid ~ label, .field input:not([type=range], [type=checkbox], [type=radio], [type=file])[aria-invalid=true] ~ label,
4154
4031
  .field textarea.invalid ~ label,
4155
4032
  .field textarea:focus.invalid ~ label,
4156
- .field textarea[aria-invalid=true] ~ label,
4157
- .input-field input:not([type=range]).invalid ~ label,
4158
- .input-field input:not([type=range]):focus.invalid ~ label,
4159
- .input-field input:not([type=range])[aria-invalid=true] ~ label,
4160
- .input-field textarea.invalid ~ label,
4161
- .input-field textarea:focus.invalid ~ label,
4162
- .input-field textarea[aria-invalid=true] ~ label {
4033
+ .field textarea[aria-invalid=true] ~ label {
4163
4034
  color: var(--md-sys-color-error);
4164
4035
  }
4165
- .field input::placeholder,
4166
- .input-field input::placeholder {
4036
+ .field input::placeholder {
4167
4037
  user-select: none;
4168
4038
  }
4169
4039
  .field > label,
4170
- .field > span:not(.supporting-text, .character-counter, .file-path),
4171
- .input-field > label,
4172
- .input-field > span:not(.supporting-text, .character-counter, .file-path) {
4040
+ .field > span:not(.supporting-text, .character-counter, .file-path, .caret) {
4173
4041
  color: var(--md-sys-color-on-surface-variant);
4174
4042
  user-select: none;
4175
4043
  position: absolute;
@@ -4187,9 +4055,7 @@
4187
4055
  transition: left 0.2s ease-out, top 0.2s ease-out, transform 0.2s ease-out, color 0.2s ease-out;
4188
4056
  }
4189
4057
  .field > small,
4190
- .field > .supporting-text,
4191
- .input-field > small,
4192
- .input-field > .supporting-text {
4058
+ .field > .supporting-text {
4193
4059
  display: block;
4194
4060
  margin-top: 4px;
4195
4061
  padding: 0 16px;
@@ -4201,8 +4067,7 @@
4201
4067
  letter-spacing: var(--md-sys-typescale-body-small-letter-spacing);
4202
4068
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
4203
4069
  }
4204
- .field > .character-counter,
4205
- .input-field > .character-counter {
4070
+ .field > .character-counter {
4206
4071
  float: right;
4207
4072
  margin-top: 4px;
4208
4073
  padding: 0 16px;
@@ -4214,12 +4079,8 @@
4214
4079
  letter-spacing: var(--md-sys-typescale-body-small-letter-spacing);
4215
4080
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
4216
4081
  }
4217
- .field > i:first-child:not(.suffix),
4218
- .field > .prefix,
4219
- .input-field > i:first-child:not(.suffix),
4220
- .input-field > .prefix {
4082
+ .field > i:is(.prefix, .suffix, :first-of-type, :last-of-type, :last-child) {
4221
4083
  position: absolute;
4222
- left: 12px;
4223
4084
  top: 16px;
4224
4085
  display: flex;
4225
4086
  align-items: center;
@@ -4229,114 +4090,48 @@
4229
4090
  line-height: 24px;
4230
4091
  color: var(--md-sys-color-on-surface-variant);
4231
4092
  user-select: none;
4093
+ }
4094
+ .field > i:first-of-type:not(.suffix):not(:last-child),
4095
+ .field > i.prefix {
4096
+ left: 12px;
4232
4097
  pointer-events: none;
4233
4098
  }
4234
- .field > .suffix,
4235
4099
  .field > i.suffix,
4236
- .input-field > .suffix,
4237
- .input-field > i.suffix {
4238
- position: absolute;
4100
+ .field > i:last-of-type:not(:first-of-type),
4101
+ .field > i:last-child:not(:first-child):not(.prefix) {
4239
4102
  right: 12px;
4240
- top: 16px;
4241
- display: flex;
4242
- align-items: center;
4243
- font-size: 24px;
4244
- width: 24px;
4245
- height: 24px;
4246
- line-height: 24px;
4247
- color: var(--md-sys-color-on-surface-variant);
4248
- user-select: none;
4249
4103
  }
4250
- .field > i:first-child:not(.suffix) ~ input,
4251
- .field > i:first-child:not(.suffix) ~ textarea,
4252
- .field > .prefix ~ input,
4253
- .field > .prefix ~ textarea,
4254
- .input-field > i:first-child:not(.suffix) ~ input,
4255
- .input-field > i:first-child:not(.suffix) ~ textarea,
4256
- .input-field > .prefix ~ input,
4257
- .input-field > .prefix ~ textarea {
4104
+ .field:has(> i:first-of-type:not(.suffix):not(:last-child), > i.prefix) > :is(input, textarea) {
4258
4105
  padding-left: 52px;
4259
4106
  }
4260
- .field > .suffix ~ input,
4261
- .field > .suffix ~ textarea,
4262
- .field > i.suffix ~ input,
4263
- .field > i.suffix ~ textarea,
4264
- .input-field > .suffix ~ input,
4265
- .input-field > .suffix ~ textarea,
4266
- .input-field > i.suffix ~ input,
4267
- .input-field > i.suffix ~ textarea {
4268
- padding-right: 52px;
4269
- }
4270
- .field > i:first-child:not(.suffix) ~ label,
4271
- .field > i:first-child:not(.suffix) ~ span:not(.supporting-text, .character-counter),
4272
- .field > .prefix ~ label,
4273
- .input-field > i:first-child:not(.suffix) ~ label,
4274
- .input-field > i:first-child:not(.suffix) ~ span:not(.supporting-text, .character-counter),
4275
- .input-field > .prefix ~ label {
4107
+ .field:has(> i:first-of-type:not(.suffix):not(:last-child), > i.prefix) > :is(label, span:not(.supporting-text, .character-counter, .file-path, .caret)) {
4276
4108
  left: 52px;
4277
4109
  }
4110
+ .field:has(> i.suffix, > i:last-of-type:not(:first-of-type), > i:last-child:not(:first-child):not(.prefix)) > :is(input, textarea) {
4111
+ padding-right: 52px;
4112
+ }
4278
4113
  .field.outlined > input,
4279
- .field.outlined > textarea, .field.border > input,
4280
- .field.border > textarea,
4281
- .input-field.outlined > input,
4282
- .input-field.outlined > textarea,
4283
- .input-field.border > input,
4284
- .input-field.border > textarea {
4114
+ .field.outlined > textarea {
4285
4115
  padding-top: 8px;
4286
4116
  padding-bottom: 8px;
4287
4117
  background-color: transparent;
4288
4118
  border: 1px solid var(--md-sys-color-outline);
4289
- border-radius: 4px;
4119
+ border-radius: var(--md-comp-filled-text-field-container-shape);
4290
4120
  }
4291
4121
  .field.outlined > input:focus:not([readonly]),
4292
- .field.outlined > textarea:focus:not([readonly]), .field.border > input:focus:not([readonly]),
4293
- .field.border > textarea:focus:not([readonly]),
4294
- .input-field.outlined > input:focus:not([readonly]),
4295
- .input-field.outlined > textarea:focus:not([readonly]),
4296
- .input-field.border > input:focus:not([readonly]),
4297
- .input-field.border > textarea:focus:not([readonly]) {
4122
+ .field.outlined > textarea:focus:not([readonly]) {
4298
4123
  border-width: 2px;
4299
4124
  border-color: var(--input-color);
4300
4125
  padding-top: 7px;
4301
4126
  padding-bottom: 7px;
4302
4127
  }
4303
- .field.outlined > input:focus:not([readonly]) + label, .field.outlined > input:not([placeholder=" "]) + label, .field.outlined > input:not(:placeholder-shown) + label, .field.outlined > input:focus:not([readonly]) + span:not(.supporting-text, .character-counter), .field.outlined > input:not([placeholder=" "]) + span:not(.supporting-text, .character-counter), .field.outlined > input:not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
4128
+ .field.outlined > input:focus:not([readonly]) + label, .field.outlined > input:not([placeholder=" "]) + label, .field.outlined > input:not(:placeholder-shown) + label, .field.outlined > input:focus:not([readonly]) + span:not(.supporting-text, .character-counter, .caret), .field.outlined > input:not([placeholder=" "]) + span:not(.supporting-text, .character-counter, .caret), .field.outlined > input:not(:placeholder-shown) + span:not(.supporting-text, .character-counter, .caret),
4304
4129
  .field.outlined > textarea:focus:not([readonly]) + label,
4305
4130
  .field.outlined > textarea:not([placeholder=" "]) + label,
4306
4131
  .field.outlined > textarea:not(:placeholder-shown) + label,
4307
- .field.outlined > textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4308
- .field.outlined > textarea:not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4309
- .field.outlined > textarea:not(:placeholder-shown) + span:not(.supporting-text, .character-counter), .field.border > input:focus:not([readonly]) + label, .field.border > input:not([placeholder=" "]) + label, .field.border > input:not(:placeholder-shown) + label, .field.border > input:focus:not([readonly]) + span:not(.supporting-text, .character-counter), .field.border > input:not([placeholder=" "]) + span:not(.supporting-text, .character-counter), .field.border > input:not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
4310
- .field.border > textarea:focus:not([readonly]) + label,
4311
- .field.border > textarea:not([placeholder=" "]) + label,
4312
- .field.border > textarea:not(:placeholder-shown) + label,
4313
- .field.border > textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4314
- .field.border > textarea:not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4315
- .field.border > textarea:not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
4316
- .input-field.outlined > input:focus:not([readonly]) + label,
4317
- .input-field.outlined > input:not([placeholder=" "]) + label,
4318
- .input-field.outlined > input:not(:placeholder-shown) + label,
4319
- .input-field.outlined > input:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4320
- .input-field.outlined > input:not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4321
- .input-field.outlined > input:not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
4322
- .input-field.outlined > textarea:focus:not([readonly]) + label,
4323
- .input-field.outlined > textarea:not([placeholder=" "]) + label,
4324
- .input-field.outlined > textarea:not(:placeholder-shown) + label,
4325
- .input-field.outlined > textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4326
- .input-field.outlined > textarea:not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4327
- .input-field.outlined > textarea:not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
4328
- .input-field.border > input:focus:not([readonly]) + label,
4329
- .input-field.border > input:not([placeholder=" "]) + label,
4330
- .input-field.border > input:not(:placeholder-shown) + label,
4331
- .input-field.border > input:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4332
- .input-field.border > input:not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4333
- .input-field.border > input:not(:placeholder-shown) + span:not(.supporting-text, .character-counter),
4334
- .input-field.border > textarea:focus:not([readonly]) + label,
4335
- .input-field.border > textarea:not([placeholder=" "]) + label,
4336
- .input-field.border > textarea:not(:placeholder-shown) + label,
4337
- .input-field.border > textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter),
4338
- .input-field.border > textarea:not([placeholder=" "]) + span:not(.supporting-text, .character-counter),
4339
- .input-field.border > textarea:not(:placeholder-shown) + span:not(.supporting-text, .character-counter) {
4132
+ .field.outlined > textarea:focus:not([readonly]) + span:not(.supporting-text, .character-counter, .caret),
4133
+ .field.outlined > textarea:not([placeholder=" "]) + span:not(.supporting-text, .character-counter, .caret),
4134
+ .field.outlined > textarea:not(:placeholder-shown) + span:not(.supporting-text, .character-counter, .caret) {
4340
4135
  top: -8px;
4341
4136
  left: 16px;
4342
4137
  margin-left: -4px;
@@ -4345,40 +4140,20 @@
4345
4140
  }
4346
4141
  .field.outlined > input:disabled, .field.outlined > input[readonly=readonly],
4347
4142
  .field.outlined > textarea:disabled,
4348
- .field.outlined > textarea[readonly=readonly], .field.border > input:disabled, .field.border > input[readonly=readonly],
4349
- .field.border > textarea:disabled,
4350
- .field.border > textarea[readonly=readonly],
4351
- .input-field.outlined > input:disabled,
4352
- .input-field.outlined > input[readonly=readonly],
4353
- .input-field.outlined > textarea:disabled,
4354
- .input-field.outlined > textarea[readonly=readonly],
4355
- .input-field.border > input:disabled,
4356
- .input-field.border > input[readonly=readonly],
4357
- .input-field.border > textarea:disabled,
4358
- .input-field.border > textarea[readonly=readonly] {
4143
+ .field.outlined > textarea[readonly=readonly] {
4359
4144
  border-color: color-mix(in oklab, var(--md-sys-color-on-surface) 12%, transparent);
4360
4145
  background-color: transparent;
4361
4146
  }
4362
4147
  .field.outlined > input.invalid, .field.outlined > input[aria-invalid=true],
4363
4148
  .field.outlined > textarea.invalid,
4364
- .field.outlined > textarea[aria-invalid=true], .field.border > input.invalid, .field.border > input[aria-invalid=true],
4365
- .field.border > textarea.invalid,
4366
- .field.border > textarea[aria-invalid=true],
4367
- .input-field.outlined > input.invalid,
4368
- .input-field.outlined > input[aria-invalid=true],
4369
- .input-field.outlined > textarea.invalid,
4370
- .input-field.outlined > textarea[aria-invalid=true],
4371
- .input-field.border > input.invalid,
4372
- .input-field.border > input[aria-invalid=true],
4373
- .input-field.border > textarea.invalid,
4374
- .input-field.border > textarea[aria-invalid=true] {
4149
+ .field.outlined > textarea[aria-invalid=true] {
4375
4150
  border-color: var(--md-sys-color-error);
4376
4151
  box-shadow: none;
4377
4152
  }
4378
4153
  .inline {
4379
4154
  display: inline-block;
4380
4155
  }
4381
- .searchbar .prefix {
4156
+ .searchbar > i:first-child {
4382
4157
  position: absolute;
4383
4158
  padding-left: 1rem;
4384
4159
  top: 0;
@@ -4868,17 +4643,20 @@
4868
4643
  border: 2px solid var(--md-sys-color-outline);
4869
4644
  border-radius: 16px;
4870
4645
  background-color: var(--md-sys-color-surface-variant);
4871
- background-image: radial-gradient(circle, var(--md-sys-color-outline) 0 8px, transparent 8.5px);
4646
+ background-image: radial-gradient(circle closest-side, var(--md-sys-color-outline) 100%, transparent 101%);
4872
4647
  background-repeat: no-repeat;
4873
- background-position: 8px center;
4648
+ background-origin: padding-box;
4649
+ background-size: var(--md-comp-switch-handle-unselected) var(--md-comp-switch-handle-unselected);
4650
+ background-position: 6px 50%;
4874
4651
  cursor: pointer;
4875
4652
  transition: background-color 0.2s ease, background-position 0.2s ease, background-size 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
4876
4653
  }
4877
4654
  .switch [type=checkbox]:not(:has(+ .lever)):not(:has(+ span)):checked {
4878
4655
  border-color: var(--md-sys-color-primary);
4879
4656
  background-color: var(--md-sys-color-primary);
4880
- background-image: radial-gradient(circle, var(--md-sys-color-on-primary) 0 12px, transparent 12.5px);
4881
- background-position: calc(100% - 14px) center;
4657
+ background-image: radial-gradient(circle closest-side, var(--md-sys-color-on-primary) 100%, transparent 101%);
4658
+ background-size: var(--md-comp-switch-handle-selected) var(--md-comp-switch-handle-selected);
4659
+ background-position: calc(var(--md-comp-switch-track-width) - 4px - 2px - var(--md-comp-switch-handle-selected)) 50%;
4882
4660
  }
4883
4661
  .switch [type=checkbox]:not(:has(+ .lever)):not(:has(+ span)):hover {
4884
4662
  box-shadow: 0 0 0 8px color-mix(in oklab, var(--md-sys-color-on-surface) 8%, transparent);
@@ -5006,82 +4784,166 @@
5006
4784
  top: 4px;
5007
4785
  left: 24px;
5008
4786
  }
5009
- select.browser-default {
5010
- opacity: 1;
5011
- color: var(--md-sys-color-on-background);
5012
- }
5013
4787
  select {
5014
- background-color: var(--md-sys-color-surface);
4788
+ --md-comp-filled-select-container-color: var(--md-sys-color-surface-variant);
4789
+ --md-comp-filled-select-container-shape: 1rem;
4790
+ --md-comp-filled-select-input-text-color: var(--md-sys-color-on-surface);
4791
+ box-sizing: border-box;
5015
4792
  width: 100%;
5016
- padding: 5px;
5017
- border: 1px solid var(--md-sys-color-outline-variant);
5018
- border-radius: 2px;
5019
- height: 3rem;
4793
+ height: 56px;
4794
+ margin: 0;
4795
+ padding: 16px 12px;
4796
+ border: 1px solid var(--md-sys-color-outline);
4797
+ border-radius: var(--md-comp-filled-select-container-shape);
4798
+ background-color: var(--md-comp-filled-select-container-color);
4799
+ color: var(--md-comp-filled-select-input-text-color);
4800
+ font-family: var(--md-sys-typescale-body-large-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
4801
+ font-size: var(--md-sys-typescale-body-large-font-size);
4802
+ font-weight: var(--md-sys-typescale-body-large-font-weight);
4803
+ line-height: var(--md-sys-typescale-body-large-line-height);
4804
+ letter-spacing: var(--md-sys-typescale-body-large-letter-spacing);
4805
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
5020
4806
  }
5021
- .select-wrapper:focus-within {
4807
+ select:focus {
5022
4808
  outline: 2px solid var(--md-sys-color-primary);
5023
- border-radius: 4px;
4809
+ outline-offset: 2px;
4810
+ border-color: var(--md-sys-color-primary);
4811
+ }
4812
+ select:disabled {
4813
+ color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
4814
+ border-color: color-mix(in oklab, var(--md-sys-color-on-surface) 12%, transparent);
4815
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 4%, transparent);
4816
+ }
4817
+ select.browser-default {
4818
+ opacity: 1;
4819
+ }
4820
+ @supports (appearance: base-select) {
4821
+ select.browser-default,
4822
+ select.browser-default::picker(select) {
4823
+ appearance: base-select;
4824
+ }
4825
+ select.browser-default::picker(select) {
4826
+ border: none;
4827
+ border-radius: var(--md-comp-menu-container-shape, 1rem);
4828
+ background-color: var(--md-sys-color-surface);
4829
+ color: var(--md-sys-color-on-surface);
4830
+ box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
4831
+ }
5024
4832
  }
5025
- .select-wrapper {
4833
+ .field:has(> .hide-select) {
4834
+ --md-comp-filled-select-container-shape: 1rem;
4835
+ --md-comp-menu-container-shape: 1rem;
4836
+ --md-comp-filled-select-trailing-icon-size: 24px;
4837
+ --md-comp-filled-select-trailing-icon-color: var(--md-sys-color-on-surface-variant);
4838
+ --md-comp-menu-item-leading-image-size: 40px;
5026
4839
  position: relative;
4840
+ border-radius: var(--md-comp-filled-select-container-shape);
4841
+ }
4842
+ .field:has(> .hide-select) > input.dropdown-trigger {
4843
+ border-radius: inherit;
5027
4844
  }
5028
- .select-wrapper .caret {
4845
+ .field:has(> .hide-select) > input.dropdown-trigger {
4846
+ padding-inline-end: 52px;
4847
+ }
4848
+ .field:has(> .hide-select) .caret {
5029
4849
  position: absolute;
5030
- right: 0;
5031
- top: 0;
5032
- bottom: 0;
5033
- margin: auto 0;
5034
- z-index: 0;
5035
- fill: var(--md-sys-color-on-background);
4850
+ inset-block-start: 16px;
4851
+ inset-inline-start: auto;
4852
+ left: auto;
4853
+ inset-inline-end: 12px;
4854
+ z-index: 1;
4855
+ width: var(--md-comp-filled-select-trailing-icon-size);
4856
+ height: var(--md-comp-filled-select-trailing-icon-size);
4857
+ margin: 0;
5036
4858
  pointer-events: none;
4859
+ background-color: var(--md-comp-filled-select-trailing-icon-color);
4860
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") center/24px no-repeat;
4861
+ transition: transform 0.2s ease;
5037
4862
  }
5038
- .select-wrapper .hide-select {
5039
- width: 0;
5040
- height: 0;
5041
- overflow: hidden;
4863
+ .field:has(> .hide-select):has(> input[aria-expanded=true]) .caret, .field:has(> .hide-select):has(> menu:popover-open) .caret {
4864
+ transform: rotate(180deg);
4865
+ }
4866
+ .field:has(> .hide-select) .hide-select {
5042
4867
  position: absolute;
5043
- top: 0;
4868
+ inset: 0;
4869
+ overflow: hidden;
4870
+ opacity: 0;
4871
+ pointer-events: none;
5044
4872
  z-index: -1;
5045
4873
  }
5046
- select:disabled {
5047
- color: var(--md-sys-color-on-surface);
4874
+ .field:has(> .hide-select) .hide-select select {
4875
+ width: 100%;
4876
+ height: 100%;
4877
+ margin: 0;
4878
+ padding: 0;
4879
+ border: 0;
5048
4880
  }
5049
- .select-wrapper.disabled + label {
5050
- color: var(--md-sys-color-on-surface);
4881
+ .field:has(> .hide-select).disabled .caret {
4882
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
5051
4883
  }
5052
- .select-wrapper.disabled .caret {
5053
- fill: var(--md-sys-color-on-surface);
4884
+ .field:has(> .hide-select).disabled + label,
4885
+ .field:has(> .hide-select).disabled > label {
4886
+ color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
5054
4887
  }
5055
- .select-wrapper input.select-dropdown:disabled {
5056
- color: var(--md-sys-color-on-surface);
4888
+ .field:has(> .hide-select) > input.dropdown-trigger:disabled {
5057
4889
  cursor: default;
5058
4890
  user-select: none;
5059
4891
  }
5060
- .select-wrapper i {
5061
- color: var(--md-sys-color-on-surface);
4892
+ menu[role=listbox] > li.disabled,
4893
+ menu[role=listbox] > li.disabled > span,
4894
+ menu[role=listbox] > li.optgroup {
4895
+ color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
5062
4896
  }
5063
- .select-dropdown li.disabled,
5064
- .select-dropdown li.disabled > span,
5065
- .select-dropdown li.optgroup {
5066
- color: var(--md-sys-color-on-surface);
4897
+ menu[role=listbox] > li:not(.optgroup, .divider) {
4898
+ display: flex;
4899
+ align-items: center;
5067
4900
  }
5068
- .select-dropdown li img {
5069
- height: 40px;
5070
- width: 40px;
5071
- margin: 5px 15px;
5072
- float: right;
4901
+ menu[role=listbox] > li.selected:not(.disabled, .optgroup) {
4902
+ background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 10%, transparent);
5073
4903
  }
5074
- .select-dropdown li.optgroup {
5075
- border-top: 1px solid rgba(0, 0, 0, 0.04);
4904
+ menu[role=listbox]:not(.multiple-select-dropdown) > li.selected:not(.disabled, .optgroup)::after {
4905
+ content: "";
4906
+ flex: 0 0 24px;
4907
+ width: 24px;
4908
+ height: 24px;
4909
+ margin-inline-start: auto;
4910
+ margin-inline-end: 12px;
4911
+ background-color: var(--md-sys-color-on-surface);
4912
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E") center/24px no-repeat;
5076
4913
  }
5077
- .select-dropdown li.optgroup.selected > span {
5078
- color: var(--md-sys-color-on-background);
4914
+ menu[role=listbox] li img {
4915
+ box-sizing: border-box;
4916
+ flex: 0 0 var(--md-comp-menu-item-leading-image-size);
4917
+ width: var(--md-comp-menu-item-leading-image-size);
4918
+ height: var(--md-comp-menu-item-leading-image-size);
4919
+ margin: 4px 12px;
4920
+ object-fit: cover;
4921
+ border-radius: 4px;
4922
+ order: 1;
4923
+ margin-inline-start: auto;
4924
+ }
4925
+ menu[role=listbox] li img.left {
4926
+ order: 0;
4927
+ margin-inline-start: 12px;
4928
+ margin-inline-end: 0;
4929
+ }
4930
+ menu[role=listbox] li.optgroup {
4931
+ cursor: default;
4932
+ pointer-events: none;
5079
4933
  }
5080
- .select-dropdown li.optgroup > span {
4934
+ menu[role=listbox] li.optgroup:not(:first-child) {
4935
+ border-top: 1px solid var(--md-sys-color-outline-variant);
4936
+ }
4937
+ menu[role=listbox] li.optgroup > span {
5081
4938
  color: var(--md-sys-color-on-surface-variant);
5082
4939
  }
5083
- .select-dropdown li.optgroup ~ li.optgroup-option {
5084
- padding-left: 1rem;
4940
+ menu[role=listbox] li.optgroup-option {
4941
+ padding-inline-start: 1rem;
4942
+ }
4943
+ @media (prefers-reduced-motion: reduce) {
4944
+ .field:has(> .hide-select) .caret {
4945
+ transition: none;
4946
+ }
5085
4947
  }
5086
4948
  .file-field {
5087
4949
  display: grid;
@@ -5469,15 +5331,17 @@
5469
5331
  transparent
5470
5332
  );
5471
5333
  }
5472
- select:focus {
5473
- outline: 1px solid var(--md-ref-palette-primary80);
5474
- }
5475
5334
  label {
5476
5335
  font-size: 0.8rem;
5477
5336
  color: var(--md-sys-color-on-surface-variant);
5478
5337
  }
5479
5338
  .table-of-contents {
5339
+ --md-comp-toc-label-color: var(--md-sys-color-on-surface-variant);
5340
+ --md-comp-toc-active-color: var(--md-sys-color-primary);
5341
+ --md-comp-toc-indicator: 2px;
5480
5342
  list-style: none;
5343
+ margin: 0;
5344
+ padding: 0;
5481
5345
  }
5482
5346
  .table-of-contents.fixed {
5483
5347
  position: fixed;
@@ -5486,129 +5350,212 @@
5486
5350
  padding: 0;
5487
5351
  }
5488
5352
  .table-of-contents a {
5489
- display: inline-block;
5490
- font-weight: 400;
5491
- color: var(--md-sys-color-secondary);
5492
- padding-left: 16px;
5493
- height: 2rem;
5494
- line-height: 2rem;
5495
- border-left: 1px solid var(--md-sys-color-outline-variant);
5353
+ display: inline-flex;
5354
+ align-items: center;
5355
+ box-sizing: border-box;
5356
+ min-height: 2rem;
5357
+ padding-inline-start: 16px;
5358
+ border-inline-start: var(--md-comp-toc-indicator) solid transparent;
5359
+ color: var(--md-comp-toc-label-color);
5360
+ text-decoration: none;
5361
+ font-family: var(--md-sys-typescale-label-large-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
5362
+ font-size: var(--md-sys-typescale-label-large-font-size);
5363
+ font-weight: var(--md-sys-typescale-label-large-font-weight);
5364
+ line-height: var(--md-sys-typescale-label-large-line-height);
5365
+ letter-spacing: var(--md-sys-typescale-label-large-letter-spacing);
5366
+ }
5367
+ .table-of-contents a:focus-visible {
5368
+ outline: 3px solid var(--md-sys-color-secondary);
5369
+ outline-offset: 2px;
5496
5370
  }
5497
5371
  .table-of-contents a:hover {
5498
- color: var(--md-sys-color-on-background);
5499
- padding-left: 15px;
5372
+ color: var(--md-comp-toc-active-color);
5500
5373
  }
5501
- .table-of-contents a.active {
5502
- color: var(--md-sys-color-primary);
5374
+ .table-of-contents a:is(.active, [aria-current=true]) {
5375
+ color: var(--md-comp-toc-active-color);
5503
5376
  font-weight: 500;
5504
- padding-left: 14px;
5505
- border-left: 2px solid var(--md-sys-color-primary);
5377
+ border-inline-start-color: var(--md-comp-toc-active-color);
5378
+ }
5379
+ .scrollspy {
5380
+ --md-comp-scrollspy-offset: 200px;
5381
+ scroll-margin-block-start: var(--md-comp-scrollspy-offset);
5382
+ }
5383
+ @media (prefers-reduced-motion: no-preference) {
5384
+ html:has(.scrollspy) {
5385
+ scroll-behavior: smooth;
5386
+ }
5387
+ }
5388
+ :root {
5389
+ --md-comp-nav-drawer-width: 300px;
5390
+ }
5391
+ dialog.sidenav-overlay,
5392
+ dialog.sidenav {
5393
+ --md-comp-nav-drawer-item-height: 48px;
5394
+ --md-comp-nav-drawer-duration: 250ms;
5395
+ --md-comp-nav-drawer-easing: ease;
5396
+ --md-comp-nav-drawer-shift: 0px;
5397
+ --md-comp-nav-drawer-open: 1;
5398
+ --md-comp-nav-drawer-font-size: 14px;
5399
+ --md-comp-nav-drawer-padding: 16px;
5400
+ --md-comp-nav-drawer-line-height: var(--md-comp-nav-drawer-item-height);
5401
+ box-sizing: border-box;
5402
+ width: var(--md-comp-nav-drawer-width);
5403
+ min-width: 0;
5404
+ max-width: none;
5405
+ max-height: none;
5406
+ height: 100dvh;
5407
+ margin: 0;
5408
+ padding: 0;
5409
+ border: none;
5410
+ border-radius: 0;
5411
+ inset: 0 auto 0 0;
5412
+ overflow: hidden;
5413
+ color: var(--md-sys-color-on-surface);
5414
+ background-color: var(--md-sys-color-surface);
5415
+ outline: none;
5416
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
5417
+ transform: translateX(calc(-100% + var(--md-comp-nav-drawer-shift)));
5418
+ transition: transform var(--md-comp-nav-drawer-duration) var(--md-comp-nav-drawer-easing), display var(--md-comp-nav-drawer-duration) allow-discrete, overlay var(--md-comp-nav-drawer-duration) allow-discrete;
5419
+ }
5420
+ dialog.sidenav-overlay:modal,
5421
+ dialog.sidenav:modal {
5422
+ display: flex;
5423
+ flex-direction: column;
5424
+ transform: translateX(var(--md-comp-nav-drawer-shift));
5425
+ }
5426
+ dialog.sidenav-overlay.right-aligned,
5427
+ dialog.sidenav.right-aligned {
5428
+ inset: 0 0 0 auto;
5429
+ transform: translateX(calc(100% - var(--md-comp-nav-drawer-shift)));
5430
+ }
5431
+ dialog.sidenav-overlay.right-aligned:modal,
5432
+ dialog.sidenav.right-aligned:modal {
5433
+ transform: translateX(calc(-1 * var(--md-comp-nav-drawer-shift)));
5434
+ }
5435
+ dialog.sidenav-overlay.dragging,
5436
+ dialog.sidenav.dragging {
5437
+ transition: none;
5438
+ }
5439
+ dialog.sidenav-overlay::backdrop,
5440
+ dialog.sidenav::backdrop {
5441
+ background-color: color-mix(in oklab, var(--md-sys-color-scrim) 32%, transparent);
5442
+ opacity: var(--md-comp-nav-drawer-open, 1);
5443
+ backdrop-filter: none;
5444
+ transition: opacity var(--md-comp-nav-drawer-duration) var(--md-comp-nav-drawer-easing), display var(--md-comp-nav-drawer-duration) allow-discrete, overlay var(--md-comp-nav-drawer-duration) allow-discrete;
5445
+ }
5446
+ @starting-style {
5447
+ :is(dialog.sidenav-overlay, dialog.sidenav):modal {
5448
+ transform: translateX(-100%);
5449
+ }
5450
+ :is(dialog.sidenav-overlay, dialog.sidenav).right-aligned:modal {
5451
+ transform: translateX(100%);
5452
+ }
5453
+ :is(dialog.sidenav-overlay, dialog.sidenav):modal::backdrop {
5454
+ opacity: 0;
5455
+ }
5456
+ }
5457
+ @media (prefers-reduced-motion: reduce) {
5458
+ dialog.sidenav-overlay,
5459
+ dialog.sidenav {
5460
+ transition: none;
5461
+ }
5462
+ dialog.sidenav-overlay::backdrop,
5463
+ dialog.sidenav::backdrop {
5464
+ transition: none;
5465
+ }
5466
+ }
5467
+ @media (width >= 993px) {
5468
+ dialog.sidenav-overlay:has(> .sidenav-fixed):not(:modal) {
5469
+ display: contents;
5470
+ }
5506
5471
  }
5507
5472
  .sidenav {
5508
- --sidenav-width: 300px;
5509
- --sidenav-font-size: 14px;
5510
- --sidenav-padding: 16px;
5511
- --sidenav-item-height: 48px;
5512
- --sidenav-line-height: var(--sidenav-item-height);
5473
+ --md-comp-nav-drawer-item-height: 48px;
5474
+ --md-comp-nav-drawer-font-size: 14px;
5475
+ --md-comp-nav-drawer-padding: 16px;
5476
+ --md-comp-nav-drawer-line-height: var(--md-comp-nav-drawer-item-height);
5477
+ box-sizing: border-box;
5513
5478
  position: fixed;
5514
- width: var(--sidenav-width);
5515
- left: 0;
5516
- top: 0;
5479
+ width: var(--md-comp-nav-drawer-width);
5480
+ inset: 0 auto 0 0;
5517
5481
  margin: 0;
5518
- transform: translateX(-100%);
5519
- height: 100vh;
5520
5482
  padding: 0;
5483
+ height: 100dvh;
5521
5484
  z-index: 999;
5522
5485
  overflow-y: auto;
5523
- will-change: transform;
5524
- backface-visibility: hidden;
5525
- transform: translateX(-105%);
5486
+ overscroll-behavior: contain;
5526
5487
  user-select: none;
5527
- color: var(--md-sys-color-on-secondary-container);
5488
+ color: var(--md-sys-color-on-surface);
5528
5489
  background-color: var(--md-sys-color-surface);
5490
+ transform: translateX(-100%);
5529
5491
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
5530
5492
  }
5531
5493
  .sidenav.right-aligned {
5532
- right: 0;
5533
- transform: translateX(105%);
5534
- left: auto;
5494
+ inset: 0 0 0 auto;
5535
5495
  transform: translateX(100%);
5536
5496
  }
5537
5497
  .sidenav .collapsible {
5538
5498
  margin: 0;
5539
5499
  }
5540
- .sidenav {
5541
- /* Hover only on top row */
5542
- /*a:hover {
5543
- //color: red;
5544
- //background-color: var(--md-sys-color-on-secondary-container);
5545
- //md.sys.color.on-secondary-container
5546
- }*/
5547
- }
5548
- .sidenav a:focus {
5549
- background-color: rgba(0, 0, 0, 0.12);
5550
- }
5551
- .sidenav li.active > a:not(.collapsible-header):not(.btn):not(.btn-large):not(.btn-small):not(.btn-flat):not(.btn-large):not(.btn-floating) {
5552
- background-color: color-mix(in oklab, var(--md-sys-color-secondary) 10%, transparent);
5553
- }
5554
- .sidenav .collapsible-body > ul {
5555
- padding-left: 10px;
5556
- }
5557
5500
  .sidenav li {
5558
5501
  list-style: none;
5559
5502
  display: grid;
5560
5503
  align-content: center;
5561
5504
  }
5562
- .sidenav li > a {
5563
- /* https://stackoverflow.com/questions/5848090/full-width-hover-background-for-nested-lists */
5564
- margin: 0 12px;
5565
- padding: 0 var(--sidenav-padding);
5566
- /*
5567
- min-width: 0;
5568
- white-space: nowrap;
5569
- overflow: hidden;
5570
- text-overflow: ellipsis;
5571
- */
5505
+ .sidenav li.active > a:not(.button, .circle, .extra) {
5506
+ background-color: color-mix(in oklab, var(--md-sys-color-secondary) 10%, transparent);
5507
+ }
5508
+ .sidenav details > div > ul {
5509
+ padding-left: 10px;
5510
+ }
5511
+ .sidenav li > a {
5572
5512
  display: flex;
5573
- height: var(--sidenav-item-height);
5574
- font-size: var(--sidenav-font-size);
5575
- font-weight: 500;
5576
5513
  align-items: center;
5514
+ margin: 0 12px;
5515
+ padding: 0 var(--md-comp-nav-drawer-padding);
5516
+ height: var(--md-comp-nav-drawer-item-height);
5577
5517
  overflow: hidden;
5578
5518
  border-radius: 100px;
5519
+ font-size: var(--md-comp-nav-drawer-font-size);
5520
+ font-weight: 500;
5579
5521
  }
5580
- .sidenav li > a:not(.btn):not(.button):not(.btn-flat):not(.btn-large):not(.btn-floating) {
5522
+ .sidenav li > a:not(.button, .circle, .extra) {
5581
5523
  color: var(--md-sys-color-on-secondary-container);
5582
5524
  }
5583
- .sidenav li > a:not(.btn):not(.button):not(.btn-flat):not(.btn-large):not(.btn-floating):hover {
5525
+ .sidenav li > a:not(.button, .circle, .extra):hover {
5584
5526
  background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 8%, transparent);
5585
5527
  }
5586
- .sidenav li > a.btn, .sidenav li > a.button, .sidenav li > a.btn-large, .sidenav li > a.btn-flat, .sidenav li > a.btn-floating {
5587
- margin: 10px 15px;
5528
+ .sidenav li > a:not(.button, .circle, .extra):focus-visible {
5529
+ outline: 3px solid var(--md-sys-color-secondary);
5530
+ outline-offset: 2px;
5588
5531
  }
5589
- .sidenav li > a {
5590
- /* TODO: Use special class in future like "mw-icon" */
5532
+ .sidenav li > a.button, .sidenav li > a.circle, .sidenav li > a.extra {
5533
+ margin: 10px 15px;
5591
5534
  }
5592
- .sidenav li > a > :is(.material-symbols, .material-symbols-outlined, .material-symbols-rounded, .material-symbols-sharp, .material-icons) {
5535
+ .sidenav li > a > :is(.material-symbols,
5536
+ .material-symbols-outlined,
5537
+ .material-symbols-rounded,
5538
+ .material-symbols-sharp,
5539
+ .material-icons) {
5593
5540
  display: inline-flex;
5594
- vertical-align: middle;
5541
+ flex-shrink: 0;
5595
5542
  margin-right: 12px;
5596
5543
  }
5597
5544
  .sidenav .divider {
5598
- margin: calc(var(--sidenav-padding) * 0.5) 0 0 0;
5545
+ margin: calc(var(--md-comp-nav-drawer-padding) * 0.5) 0 0;
5599
5546
  }
5600
5547
  .sidenav .subheader {
5601
5548
  cursor: initial;
5602
5549
  pointer-events: none;
5603
- color: red;
5604
- font-size: var(--sidenav-font-size);
5550
+ color: var(--md-sys-color-on-surface-variant);
5551
+ font-size: var(--md-comp-nav-drawer-font-size);
5605
5552
  font-weight: 500;
5606
- line-height: var(--sidenav-line-height);
5553
+ line-height: var(--md-comp-nav-drawer-line-height);
5607
5554
  }
5608
5555
  .sidenav .user-view {
5609
5556
  position: relative;
5610
- padding: calc(var(--sidenav-padding) * 2) calc(var(--sidenav-padding) * 2) 0;
5611
- margin-bottom: calc(var(--sidenav-padding) * 0.5);
5557
+ padding: calc(var(--md-comp-nav-drawer-padding) * 2) calc(var(--md-comp-nav-drawer-padding) * 2) 0;
5558
+ margin-bottom: calc(var(--md-comp-nav-drawer-padding) * 0.5);
5612
5559
  }
5613
5560
  .sidenav .user-view > a {
5614
5561
  height: auto;
@@ -5620,13 +5567,12 @@
5620
5567
  .sidenav .user-view .background {
5621
5568
  overflow: hidden;
5622
5569
  position: absolute;
5623
- top: 0;
5624
- right: 0;
5625
- bottom: 0;
5626
- left: 0;
5570
+ inset: 0;
5627
5571
  z-index: -1;
5628
5572
  }
5629
- .sidenav .user-view .circle, .sidenav .user-view .name, .sidenav .user-view .email {
5573
+ .sidenav .user-view .circle,
5574
+ .sidenav .user-view .name,
5575
+ .sidenav .user-view .email {
5630
5576
  display: block;
5631
5577
  }
5632
5578
  .sidenav .user-view .circle {
@@ -5635,8 +5581,8 @@
5635
5581
  }
5636
5582
  .sidenav .user-view .name,
5637
5583
  .sidenav .user-view .email {
5638
- font-size: var(--sidenav-font-size);
5639
- line-height: calc(var(--sidenav-line-height) * 0.5);
5584
+ font-size: var(--md-comp-nav-drawer-font-size);
5585
+ line-height: calc(var(--md-comp-nav-drawer-line-height) * 0.5);
5640
5586
  }
5641
5587
  .sidenav .user-view .name {
5642
5588
  margin-top: 16px;
@@ -5646,53 +5592,52 @@
5646
5592
  padding-bottom: 16px;
5647
5593
  font-weight: 400;
5648
5594
  }
5649
- .drag-target {
5595
+ dialog.sidenav-overlay:modal > .sidenav {
5596
+ position: static;
5597
+ inset: auto;
5598
+ width: 100%;
5650
5599
  height: 100%;
5651
- position: fixed;
5652
- top: 0;
5653
- left: 0;
5654
- z-index: 998;
5655
- }
5656
- .drag-target.right-aligned {
5657
- right: 0;
5600
+ transform: none;
5601
+ box-shadow: none;
5602
+ background-color: transparent;
5603
+ z-index: auto;
5658
5604
  }
5659
5605
  .sidenav.sidenav-fixed {
5660
- left: 0;
5661
- transform: translateX(0);
5662
- position: fixed;
5606
+ transform: none;
5663
5607
  }
5664
5608
  .sidenav.sidenav-fixed.right-aligned {
5665
- right: 0;
5666
- left: auto;
5609
+ transform: none;
5667
5610
  }
5668
5611
  @media (width < 993px) {
5669
5612
  .sidenav.sidenav-fixed {
5670
- transform: translateX(-105%);
5613
+ transform: translateX(-100%);
5671
5614
  }
5672
5615
  .sidenav.sidenav-fixed.right-aligned {
5673
- transform: translateX(105%);
5674
- }
5675
- .sidenav > a {
5676
- padding: 0 var(--sidenav-padding);
5616
+ transform: translateX(100%);
5677
5617
  }
5678
5618
  .sidenav .user-view {
5679
- padding: var(--sidenav-padding) var(--sidenav-padding) 0;
5619
+ padding: var(--md-comp-nav-drawer-padding) var(--md-comp-nav-drawer-padding) 0;
5680
5620
  }
5681
5621
  }
5682
- .sidenav .collapsible-body,
5683
- .sidenav details::details-content {
5684
- padding: 0;
5685
- }
5686
- .sidenav-overlay {
5622
+ .drag-target {
5687
5623
  position: fixed;
5688
- top: 0;
5689
- left: 0;
5690
- right: 0;
5691
- opacity: 0;
5692
- height: 120vh;
5693
- background-color: rgba(0, 0, 0, 0.5);
5694
- z-index: 997;
5695
- display: none;
5624
+ inset: 0 auto 0 0;
5625
+ width: var(--md-comp-nav-drawer-drag-width, 10px);
5626
+ height: 100%;
5627
+ z-index: 998;
5628
+ touch-action: pan-y;
5629
+ }
5630
+ .drag-target.right-aligned {
5631
+ inset: 0 0 0 auto;
5632
+ }
5633
+ @media (width >= 993px) {
5634
+ .drag-target[data-fixed] {
5635
+ display: none;
5636
+ pointer-events: none;
5637
+ }
5638
+ }
5639
+ .sidenav details > :not(summary) {
5640
+ padding: 0;
5696
5641
  }
5697
5642
  .sidenav .collapsible,
5698
5643
  .sidenav.sidenav-fixed .collapsible {
@@ -5702,62 +5647,96 @@
5702
5647
  background: transparent;
5703
5648
  box-shadow: none;
5704
5649
  }
5705
- .sidenav .collapsible-header,
5706
5650
  .sidenav summary,
5707
- .sidenav.sidenav-fixed .collapsible-header,
5708
5651
  .sidenav.sidenav-fixed summary {
5709
5652
  border: none;
5710
5653
  }
5711
- .sidenav .collapsible-body,
5712
- .sidenav details::details-content,
5713
- .sidenav.sidenav-fixed .collapsible-body,
5714
- .sidenav.sidenav-fixed details::details-content {
5654
+ .sidenav details > :not(summary),
5655
+ .sidenav.sidenav-fixed details > :not(summary) {
5715
5656
  border: none;
5716
5657
  }
5658
+ .progress,
5659
+ .preloader {
5660
+ --md-comp-progress-track: var(--md-sys-color-secondary-container);
5661
+ --md-comp-progress-indicator: var(--md-sys-color-primary);
5662
+ --md-comp-progress-thickness: 4px;
5663
+ --md-comp-progress-shape: 4px;
5664
+ --md-comp-progress-circular-size: 48px;
5665
+ --md-comp-progress-circular-thickness: 4px;
5666
+ }
5717
5667
  .progress {
5668
+ box-sizing: border-box;
5718
5669
  position: relative;
5719
- height: 4px;
5720
5670
  display: block;
5721
5671
  width: 100%;
5722
- background-color: var(--md-sys-color-surface-variant);
5723
- border-radius: 4px;
5724
- margin: 0.5rem 0 1rem 0;
5672
+ height: var(--md-comp-progress-thickness);
5673
+ margin: 0.5rem 0 1rem;
5725
5674
  overflow: hidden;
5726
- background-color: var(--md-sys-color-secondary-container);
5675
+ border: 0;
5676
+ border-radius: var(--md-comp-progress-shape);
5677
+ background-color: var(--md-comp-progress-track);
5678
+ appearance: none;
5679
+ -webkit-appearance: none;
5680
+ }
5681
+ progress.progress {
5682
+ vertical-align: baseline;
5727
5683
  }
5728
- .progress .determinate {
5684
+ progress.progress::-webkit-progress-bar {
5685
+ background-color: var(--md-comp-progress-track);
5686
+ border-radius: var(--md-comp-progress-shape);
5687
+ }
5688
+ progress.progress::-webkit-progress-value {
5689
+ background-color: var(--md-comp-progress-indicator);
5690
+ border-radius: var(--md-comp-progress-shape);
5691
+ }
5692
+ progress.progress::-moz-progress-bar {
5693
+ background-color: var(--md-comp-progress-indicator);
5694
+ border-radius: var(--md-comp-progress-shape);
5695
+ }
5696
+ progress.progress:indeterminate::-webkit-progress-value, progress.progress:indeterminate::-moz-progress-bar {
5697
+ background-color: transparent;
5698
+ }
5699
+ .progress > .determinate {
5729
5700
  position: absolute;
5730
- top: 0;
5731
- left: 0;
5732
- bottom: 0;
5733
- background-color: var(--md-sys-color-primary);
5701
+ inset: 0 auto 0 0;
5702
+ width: var(--md-comp-progress-value, 0%);
5703
+ background-color: var(--md-comp-progress-indicator);
5734
5704
  transition: width 0.3s linear;
5735
5705
  }
5736
- .progress .indeterminate {
5737
- background-color: var(--md-sys-color-primary);
5738
- }
5739
- .progress .indeterminate:before {
5706
+ .progress:not(:is(progress)):not(:has(> .determinate, > .indeterminate))::after {
5740
5707
  content: "";
5741
5708
  position: absolute;
5742
- background-color: inherit;
5743
- top: 0;
5744
- left: 0;
5745
- bottom: 0;
5746
- will-change: left, right;
5747
- animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
5709
+ inset: 0 auto 0 0;
5710
+ width: var(--md-comp-progress-value, 0%);
5711
+ background-color: var(--md-comp-progress-indicator);
5712
+ transition: width 0.3s linear;
5748
5713
  }
5749
- .progress .indeterminate:after {
5714
+ .progress:not(:is(progress)):not(:has(> .determinate, > .indeterminate)):not([style*="--md-comp-progress-value"])::after {
5715
+ width: auto;
5716
+ animation: preloader-indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
5717
+ }
5718
+ .progress > .indeterminate,
5719
+ progress.progress:indeterminate {
5720
+ background-color: transparent;
5721
+ }
5722
+ .progress > .indeterminate::before, .progress > .indeterminate::after,
5723
+ progress.progress:indeterminate::before,
5724
+ progress.progress:indeterminate::after {
5750
5725
  content: "";
5751
5726
  position: absolute;
5752
- background-color: inherit;
5753
- top: 0;
5754
- left: 0;
5755
- bottom: 0;
5756
- will-change: left, right;
5757
- animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
5727
+ inset: 0 auto 0 0;
5728
+ background-color: var(--md-comp-progress-indicator);
5729
+ }
5730
+ .progress > .indeterminate::before,
5731
+ progress.progress:indeterminate::before {
5732
+ animation: preloader-indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
5733
+ }
5734
+ .progress > .indeterminate::after,
5735
+ progress.progress:indeterminate::after {
5736
+ animation: preloader-indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
5758
5737
  animation-delay: 1.15s;
5759
5738
  }
5760
- @keyframes indeterminate {
5739
+ @keyframes preloader-indeterminate {
5761
5740
  0% {
5762
5741
  left: -35%;
5763
5742
  right: 100%;
@@ -5771,7 +5750,7 @@
5771
5750
  right: -90%;
5772
5751
  }
5773
5752
  }
5774
- @keyframes indeterminate-short {
5753
+ @keyframes preloader-indeterminate-short {
5775
5754
  0% {
5776
5755
  left: -200%;
5777
5756
  right: 100%;
@@ -5785,303 +5764,42 @@
5785
5764
  right: -8%;
5786
5765
  }
5787
5766
  }
5788
- /*
5789
- @license
5790
- Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
5791
- This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
5792
- The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
5793
- The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
5794
- Code distributed by Google as part of the polymer project is also
5795
- subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
5796
- */
5797
- /**************************/
5798
- /* STYLES FOR THE SPINNER */
5799
- /**************************/
5800
- /*
5801
- * Constants:
5802
- * STROKEWIDTH = 3px
5803
- * ARCSIZE = 270 degrees (amount of circle the arc takes up)
5804
- * ARCTIME = 1333ms (time it takes to expand and contract arc)
5805
- * ARCSTARTROT = 216 degrees (how much the start location of the arc
5806
- * should rotate each time, 216 gives us a
5807
- * 5 pointed star shape (it's 360/5 * 3).
5808
- * For a 7 pointed star, we might do
5809
- * 360/7 * 3 = 154.286)
5810
- * CONTAINERWIDTH = 28px
5811
- * SHRINK_TIME = 400ms
5812
- */
5813
- .preloader-wrapper {
5814
- display: inline-block;
5815
- position: relative;
5816
- width: 50px;
5817
- height: 50px;
5818
- }
5819
- .preloader-wrapper.small {
5820
- width: 36px;
5821
- height: 36px;
5822
- }
5823
- .preloader-wrapper.big {
5824
- width: 64px;
5825
- height: 64px;
5826
- }
5827
- .preloader-wrapper.active {
5828
- /* duration: 360 * ARCTIME / (ARCSTARTROT + (360-ARCSIZE)) */
5829
- animation: container-rotate 1568ms linear infinite;
5830
- }
5831
- @keyframes container-rotate {
5832
- to {
5833
- transform: rotate(360deg);
5834
- }
5835
- }
5836
- .spinner-layer {
5837
- position: absolute;
5838
- width: 100%;
5839
- height: 100%;
5840
- opacity: 0;
5841
- border-color: var(--md-sys-color-primary);
5842
- }
5843
- .spinner-blue,
5844
- .spinner-blue-only {
5845
- border-color: #4285f4;
5846
- }
5847
- .spinner-red,
5848
- .spinner-red-only {
5849
- border-color: #db4437;
5850
- }
5851
- .spinner-yellow,
5852
- .spinner-yellow-only {
5853
- border-color: #f4b400;
5854
- }
5855
- .spinner-green,
5856
- .spinner-green-only {
5857
- border-color: #0f9d58;
5858
- }
5859
- /**
5860
- * NOTE ABOUT CSS ANIMATION PROPERTIES (keanulee):
5861
- *
5862
- * iOS Safari (tested on iOS 8.1) does not handle animation-delay very well - it doesn't
5863
- * guarantee that the animation will start _exactly_ after that value. So we avoid using
5864
- * animation-delay and instead set custom keyframes for each color (as redundant as it
5865
- * seems).
5866
- *
5867
- * The second half of this note explained why each animation is written as the
5868
- * `animation` shorthand rather than as separate animation-name/-duration
5869
- * longhands: the Web Animations polyfill on old Safari mistook the longhands
5870
- * for -webkit-animation. That polyfill is long gone, and the prefixed
5871
- * declarations it was about have been removed - the shorthand is kept only
5872
- * because it is shorter here. See github.com/Polymer/platform/issues/53.
5873
- */
5874
- .active .spinner-layer.spinner-blue {
5875
- /* durations: 4 * ARCTIME */
5876
- animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
5877
- }
5878
- .active .spinner-layer.spinner-red {
5879
- /* durations: 4 * ARCTIME */
5880
- animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
5881
- }
5882
- .active .spinner-layer.spinner-yellow {
5883
- /* durations: 4 * ARCTIME */
5884
- animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
5885
- }
5886
- .active .spinner-layer.spinner-green {
5887
- /* durations: 4 * ARCTIME */
5888
- animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
5889
- }
5890
- .active .spinner-layer,
5891
- .active .spinner-layer.spinner-blue-only,
5892
- .active .spinner-layer.spinner-red-only,
5893
- .active .spinner-layer.spinner-yellow-only,
5894
- .active .spinner-layer.spinner-green-only {
5895
- /* durations: 4 * ARCTIME */
5896
- opacity: 1;
5897
- animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
5898
- }
5899
- @keyframes fill-unfill-rotate {
5900
- 12.5% {
5901
- transform: rotate(135deg);
5902
- } /* 0.5 * ARCSIZE */
5903
- 25% {
5904
- transform: rotate(270deg);
5905
- } /* 1 * ARCSIZE */
5906
- 37.5% {
5907
- transform: rotate(405deg);
5908
- } /* 1.5 * ARCSIZE */
5909
- 50% {
5910
- transform: rotate(540deg);
5911
- } /* 2 * ARCSIZE */
5912
- 62.5% {
5913
- transform: rotate(675deg);
5914
- } /* 2.5 * ARCSIZE */
5915
- 75% {
5916
- transform: rotate(810deg);
5917
- } /* 3 * ARCSIZE */
5918
- 87.5% {
5919
- transform: rotate(945deg);
5920
- } /* 3.5 * ARCSIZE */
5921
- to {
5922
- transform: rotate(1080deg);
5923
- } /* 4 * ARCSIZE */
5924
- }
5925
- @keyframes blue-fade-in-out {
5926
- from {
5927
- opacity: 1;
5928
- }
5929
- 25% {
5930
- opacity: 1;
5931
- }
5932
- 26% {
5933
- opacity: 0;
5934
- }
5935
- 89% {
5936
- opacity: 0;
5937
- }
5938
- 90% {
5939
- opacity: 1;
5940
- }
5941
- 100% {
5942
- opacity: 1;
5943
- }
5944
- }
5945
- @keyframes red-fade-in-out {
5946
- from {
5947
- opacity: 0;
5948
- }
5949
- 15% {
5950
- opacity: 0;
5951
- }
5952
- 25% {
5953
- opacity: 1;
5954
- }
5955
- 50% {
5956
- opacity: 1;
5957
- }
5958
- 51% {
5959
- opacity: 0;
5960
- }
5961
- }
5962
- @keyframes yellow-fade-in-out {
5963
- from {
5964
- opacity: 0;
5965
- }
5966
- 40% {
5967
- opacity: 0;
5968
- }
5969
- 50% {
5970
- opacity: 1;
5971
- }
5972
- 75% {
5973
- opacity: 1;
5974
- }
5975
- 76% {
5976
- opacity: 0;
5977
- }
5978
- }
5979
- @keyframes green-fade-in-out {
5980
- from {
5981
- opacity: 0;
5982
- }
5983
- 65% {
5984
- opacity: 0;
5985
- }
5986
- 75% {
5987
- opacity: 1;
5988
- }
5989
- 90% {
5990
- opacity: 1;
5991
- }
5992
- 100% {
5993
- opacity: 0;
5994
- }
5995
- }
5996
- /**
5997
- * Patch the gap that appear between the two adjacent div.circle-clipper while the
5998
- * spinner is rotating (appears on Chrome 38, Safari 7.1, and IE 11).
5999
- */
6000
- .gap-patch {
6001
- position: absolute;
6002
- top: 0;
6003
- left: 45%;
6004
- width: 10%;
6005
- height: 100%;
6006
- overflow: hidden;
6007
- border-color: inherit;
6008
- }
6009
- .gap-patch .circle {
6010
- width: 1000%;
6011
- left: -450%;
6012
- }
6013
- .circle-clipper {
5767
+ .preloader {
5768
+ box-sizing: border-box;
6014
5769
  display: inline-block;
6015
- position: relative;
6016
- width: 50%;
6017
- height: 100%;
6018
- overflow: hidden;
6019
- border-color: inherit;
6020
- }
6021
- .circle-clipper .circle {
6022
- width: 200%;
6023
- height: 100%;
6024
- border-width: 3px; /* STROKEWIDTH */
6025
- border-style: solid;
6026
- border-color: inherit;
6027
- border-bottom-color: transparent !important;
5770
+ width: var(--md-comp-progress-circular-size);
5771
+ height: var(--md-comp-progress-circular-size);
6028
5772
  border-radius: 50%;
6029
- animation: none;
6030
- position: absolute;
6031
- top: 0;
6032
- right: 0;
6033
- bottom: 0;
6034
- }
6035
- .circle-clipper.left .circle {
6036
- left: 0;
6037
- border-right-color: transparent !important;
6038
- transform: rotate(129deg);
6039
- }
6040
- .circle-clipper.right .circle {
6041
- left: -100%;
6042
- border-left-color: transparent !important;
6043
- transform: rotate(-129deg);
5773
+ background: conic-gradient(from 0turn, var(--md-comp-progress-indicator) 0 90deg, transparent 90deg 360deg);
5774
+ mask: radial-gradient(farthest-side, transparent calc(100% - var(--md-comp-progress-circular-thickness)), #000 0);
5775
+ -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--md-comp-progress-circular-thickness)), #000 0);
5776
+ animation: preloader-rotate 1.4s linear infinite;
5777
+ vertical-align: middle;
6044
5778
  }
6045
- .active .circle-clipper.left .circle {
6046
- /* duration: ARCTIME */
6047
- animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
5779
+ .preloader.small {
5780
+ --md-comp-progress-circular-size: 36px;
6048
5781
  }
6049
- .active .circle-clipper.right .circle {
6050
- /* duration: ARCTIME */
6051
- animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
5782
+ .preloader.big {
5783
+ --md-comp-progress-circular-size: 64px;
6052
5784
  }
6053
- @keyframes left-spin {
6054
- from {
6055
- transform: rotate(130deg);
6056
- }
6057
- 50% {
6058
- transform: rotate(-5deg);
6059
- }
6060
- to {
6061
- transform: rotate(130deg);
6062
- }
5785
+ .preloader.determinate {
5786
+ animation: none;
5787
+ background: conic-gradient(from 0turn, var(--md-comp-progress-indicator) 0 var(--md-comp-progress-value, 0%), color-mix(in oklab, var(--md-comp-progress-indicator) 20%, transparent) var(--md-comp-progress-value, 0%));
6063
5788
  }
6064
- @keyframes right-spin {
6065
- from {
6066
- transform: rotate(-130deg);
6067
- }
6068
- 50% {
6069
- transform: rotate(5deg);
6070
- }
5789
+ @keyframes preloader-rotate {
6071
5790
  to {
6072
- transform: rotate(-130deg);
5791
+ transform: rotate(1turn);
6073
5792
  }
6074
5793
  }
6075
- #spinnerContainer.cooldown {
6076
- /* duration: SHRINK_TIME */
6077
- animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
6078
- }
6079
- @keyframes fade-out {
6080
- from {
6081
- opacity: 1;
5794
+ @media (prefers-reduced-motion: reduce) {
5795
+ .progress > .indeterminate,
5796
+ progress.progress:indeterminate,
5797
+ .progress:not(:is(progress)):not(:has(> .determinate, > .indeterminate)):not([style*="--md-comp-progress-value"]),
5798
+ .preloader {
5799
+ animation: none;
6082
5800
  }
6083
- to {
6084
- opacity: 0;
5801
+ .preloader {
5802
+ transform: none;
6085
5803
  }
6086
5804
  }
6087
5805
  .slider {
@@ -6241,13 +5959,13 @@
6241
5959
  outline: 3px solid var(--md-sys-color-secondary);
6242
5960
  outline-offset: 2px;
6243
5961
  }
6244
- .carousel:not(.flat):not(.carousel-slider) {
5962
+ .carousel:not(.flat) {
6245
5963
  perspective: 500px;
6246
5964
  transform-style: preserve-3d;
6247
5965
  transform-origin: 0% 50%;
6248
5966
  touch-action: pan-y;
6249
5967
  }
6250
- .carousel:not(.flat):not(.carousel-slider) > .carousel-item {
5968
+ .carousel:not(.flat) > .carousel-item {
6251
5969
  visibility: hidden;
6252
5970
  position: absolute;
6253
5971
  top: 0;
@@ -6257,14 +5975,12 @@
6257
5975
  overflow: hidden;
6258
5976
  border-radius: var(--md-comp-carousel-shape);
6259
5977
  }
6260
- .carousel.flat,
6261
- .carousel.carousel-slider {
5978
+ .carousel.flat {
6262
5979
  overflow: hidden;
6263
5980
  perspective: none;
6264
5981
  transform: none;
6265
5982
  }
6266
- .carousel.flat > .carousel-track,
6267
- .carousel.carousel-slider > .carousel-track {
5983
+ .carousel.flat > .carousel-track {
6268
5984
  display: flex;
6269
5985
  gap: var(--md-comp-carousel-gap);
6270
5986
  box-sizing: border-box;
@@ -6277,12 +5993,10 @@
6277
5993
  touch-action: pan-x;
6278
5994
  scrollbar-width: none;
6279
5995
  }
6280
- .carousel.flat > .carousel-track::-webkit-scrollbar,
6281
- .carousel.carousel-slider > .carousel-track::-webkit-scrollbar {
5996
+ .carousel.flat > .carousel-track::-webkit-scrollbar {
6282
5997
  display: none;
6283
5998
  }
6284
- .carousel.flat .carousel-track > .carousel-item,
6285
- .carousel.carousel-slider .carousel-track > .carousel-item {
5999
+ .carousel.flat .carousel-track > .carousel-item {
6286
6000
  flex: 0 0 100%;
6287
6001
  width: 100%;
6288
6002
  height: 100%;
@@ -6292,18 +6006,15 @@
6292
6006
  scroll-snap-align: start;
6293
6007
  scroll-snap-stop: always;
6294
6008
  }
6295
- .carousel.flat .carousel-fixed-item,
6296
- .carousel.carousel-slider .carousel-fixed-item {
6009
+ .carousel.flat .carousel-fixed-item {
6297
6010
  position: absolute;
6298
6011
  inset: auto 0 20px;
6299
6012
  z-index: 1;
6300
6013
  }
6301
- .carousel.flat .carousel-fixed-item.with-indicators,
6302
- .carousel.carousel-slider .carousel-fixed-item.with-indicators {
6014
+ .carousel.flat .carousel-fixed-item.with-indicators {
6303
6015
  bottom: 68px;
6304
6016
  }
6305
- .carousel.flat .carousel-item h2,
6306
- .carousel.carousel-slider .carousel-item h2 {
6017
+ .carousel.flat .carousel-item h2 {
6307
6018
  font-family: var(--md-sys-typescale-headline-small-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
6308
6019
  font-size: var(--md-sys-typescale-headline-small-font-size);
6309
6020
  font-weight: var(--md-sys-typescale-headline-small-font-weight);
@@ -6311,8 +6022,7 @@
6311
6022
  letter-spacing: var(--md-sys-typescale-headline-small-letter-spacing);
6312
6023
  margin: 0 0 8px;
6313
6024
  }
6314
- .carousel.flat .carousel-item p,
6315
- .carousel.carousel-slider .carousel-item p {
6025
+ .carousel.flat .carousel-item p {
6316
6026
  font-family: var(--md-sys-typescale-body-medium-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
6317
6027
  font-size: var(--md-sys-typescale-body-medium-font-size);
6318
6028
  font-weight: var(--md-sys-typescale-body-medium-font-weight);
@@ -6321,8 +6031,7 @@
6321
6031
  margin: 0;
6322
6032
  }
6323
6033
  @media (prefers-reduced-motion: reduce) {
6324
- .carousel.flat > .carousel-track,
6325
- .carousel.carousel-slider > .carousel-track {
6034
+ .carousel.flat > .carousel-track {
6326
6035
  scroll-behavior: auto;
6327
6036
  }
6328
6037
  }
@@ -6364,8 +6073,7 @@
6364
6073
  pointer-events: none;
6365
6074
  transition-delay: 0s;
6366
6075
  }
6367
- .tap-target-wrapper:is(.open, :popover-open) .tap-target,
6368
- .tap-target-wrapper:is(.open, :popover-open) .feature-discovery {
6076
+ .tap-target-wrapper:is(.open, :popover-open) .tap-target {
6369
6077
  transform: scale(1);
6370
6078
  opacity: 1;
6371
6079
  }
@@ -6376,8 +6084,7 @@
6376
6084
  visibility: visible;
6377
6085
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
6378
6086
  }
6379
- .tap-target,
6380
- .feature-discovery {
6087
+ .tap-target {
6381
6088
  position: absolute;
6382
6089
  inset: 0;
6383
6090
  display: grid;
@@ -6515,13 +6222,6 @@
6515
6222
  transform: scale(1.5);
6516
6223
  }
6517
6224
  }
6518
- /* Modal */
6519
- /*.datepicker-modal {
6520
- max-width: 325px;
6521
- // @removed since v2.2.1-dev regarding Material M3 standards
6522
- min-width: 300px;
6523
- max-height: none;
6524
- }*/
6525
6225
  .datepicker-container {
6526
6226
  display: flex;
6527
6227
  flex-direction: column;
@@ -6538,27 +6238,23 @@
6538
6238
  .datepicker-controls .selects-container {
6539
6239
  display: flex;
6540
6240
  }
6541
- .datepicker-controls .select-wrapper input {
6241
+ .datepicker-controls .field:has(> .hide-select) input {
6542
6242
  height: 49px;
6543
6243
  margin: 4px 0 0 0;
6544
6244
  border-bottom: none;
6545
6245
  border-radius: 4px;
6546
6246
  text-align: center;
6547
6247
  }
6548
- .datepicker-controls .select-wrapper input:focus {
6248
+ .datepicker-controls .field:has(> .hide-select) input:focus {
6549
6249
  border-bottom: none;
6550
6250
  background-color: var(--md-sys-color-primary-container);
6551
6251
  }
6552
- .datepicker-controls .select-wrapper input::selection {
6252
+ .datepicker-controls .field:has(> .hide-select) input::selection {
6553
6253
  background-color: transparent;
6554
6254
  }
6555
- .datepicker-controls .select-wrapper .caret {
6255
+ .datepicker-controls .field:has(> .hide-select) .caret {
6556
6256
  display: none;
6557
6257
  }
6558
- .datepicker-controls .select-dropdown {
6559
- padding: 0;
6560
- vertical-align: middle;
6561
- }
6562
6258
  .datepicker-controls .select-year input,
6563
6259
  .datepicker-controls .select-month input {
6564
6260
  background-color: transparent;
@@ -7496,27 +7192,6 @@
7496
7192
  .capitalize {
7497
7193
  text-transform: capitalize;
7498
7194
  }
7499
- .large-text {
7500
- font-family: var(--md-sys-typescale-body-large-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
7501
- font-size: var(--md-sys-typescale-body-large-font-size);
7502
- font-weight: var(--md-sys-typescale-body-large-font-weight);
7503
- line-height: var(--md-sys-typescale-body-large-line-height);
7504
- letter-spacing: var(--md-sys-typescale-body-large-letter-spacing);
7505
- }
7506
- .medium-text {
7507
- font-family: var(--md-sys-typescale-body-medium-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
7508
- font-size: var(--md-sys-typescale-body-medium-font-size);
7509
- font-weight: var(--md-sys-typescale-body-medium-font-weight);
7510
- line-height: var(--md-sys-typescale-body-medium-line-height);
7511
- letter-spacing: var(--md-sys-typescale-body-medium-letter-spacing);
7512
- }
7513
- .small-text {
7514
- font-family: var(--md-sys-typescale-body-small-font-family-name), -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
7515
- font-size: var(--md-sys-typescale-body-small-font-size);
7516
- font-weight: var(--md-sys-typescale-body-small-font-weight);
7517
- line-height: var(--md-sys-typescale-body-small-line-height);
7518
- letter-spacing: var(--md-sys-typescale-body-small-letter-spacing);
7519
- }
7520
7195
  .z-depth-0 {
7521
7196
  box-shadow: none !important;
7522
7197
  }
@@ -7916,7 +7591,7 @@
7916
7591
  display: none !important;
7917
7592
  }
7918
7593
  @media (width < 601px) {
7919
- .hide-on-small-only, .hide-on-small-and-down {
7594
+ .hide-on-small-only {
7920
7595
  display: none !important;
7921
7596
  }
7922
7597
  }
@@ -7984,16 +7659,13 @@
7984
7659
  display: flex;
7985
7660
  align-items: center;
7986
7661
  }
7987
- .clearfix {
7988
- clear: both;
7989
- }
7990
7662
  .left-align {
7991
7663
  text-align: left;
7992
7664
  }
7993
7665
  .right-align {
7994
7666
  text-align: right;
7995
7667
  }
7996
- .center, .center-align {
7668
+ .center-align {
7997
7669
  text-align: center;
7998
7670
  }
7999
7671
  .left {