m3-svelte 5.15.4 → 6.0.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 (73) hide show
  1. package/package/buttons/Button.svelte +137 -131
  2. package/package/buttons/ConnectedButtons.svelte +1 -1
  3. package/package/buttons/FAB.svelte +30 -21
  4. package/package/buttons/SplitButton.svelte +30 -21
  5. package/package/containers/BottomSheet.svelte +10 -8
  6. package/package/containers/Card.svelte +15 -13
  7. package/package/containers/Dialog.svelte +36 -45
  8. package/package/containers/Dialog.svelte.d.ts +0 -8
  9. package/package/containers/ListItem.svelte +43 -11
  10. package/package/containers/Menu.svelte +6 -4
  11. package/package/containers/MenuItem.svelte +13 -6
  12. package/package/containers/Snackbar.svelte +49 -45
  13. package/package/containers/Snackbar.svelte.d.ts +4 -17
  14. package/package/containers/SnackbarItem.svelte +9 -7
  15. package/package/containers/StandardSideSheet.svelte +11 -2
  16. package/package/forms/Checkbox.svelte +12 -12
  17. package/package/forms/Chip.svelte +31 -19
  18. package/package/forms/CircularProgress.svelte +3 -3
  19. package/package/forms/CircularProgressEstimate.svelte +2 -2
  20. package/package/forms/DateField.svelte +33 -19
  21. package/package/forms/DateFieldOutlined.svelte +42 -28
  22. package/package/forms/DatePickerDocked.svelte +5 -3
  23. package/package/forms/LinearProgress.svelte +5 -5
  24. package/package/forms/LinearProgressEstimate.svelte +4 -4
  25. package/package/forms/LoadingIndicator.svelte +4 -4
  26. package/package/forms/RadioAnim1.svelte +9 -9
  27. package/package/forms/RadioAnim2.svelte +9 -9
  28. package/package/forms/RadioAnim3.svelte +9 -9
  29. package/package/forms/Select.svelte +46 -36
  30. package/package/forms/SelectOutlined.svelte +47 -37
  31. package/package/forms/Slider.svelte +40 -33
  32. package/package/forms/Switch.svelte +30 -29
  33. package/package/forms/TextField.svelte +44 -27
  34. package/package/forms/TextFieldMultiline.svelte +44 -27
  35. package/package/forms/TextFieldOutlined.svelte +44 -30
  36. package/package/forms/TextFieldOutlinedMultiline.svelte +44 -30
  37. package/package/forms/WavyLinearProgress.svelte +2 -7
  38. package/package/forms/WavyLinearProgressEstimate.svelte +2 -7
  39. package/package/forms/_picker/CalendarPicker.svelte +9 -2
  40. package/package/forms/_picker/FocusPicker.svelte +9 -7
  41. package/package/forms/_picker/Header.svelte +12 -5
  42. package/package/forms/_picker/Item.svelte +15 -8
  43. package/package/index.d.ts +4 -8
  44. package/package/index.js +4 -7
  45. package/package/{utils → misc}/Divider.svelte +1 -1
  46. package/package/misc/Icon.svelte +0 -4
  47. package/package/misc/Layer.svelte +1 -1
  48. package/package/{utils → misc}/badge.js +8 -5
  49. package/package/misc/recommended-styles.css +12 -10
  50. package/package/misc/styles.css +183 -250
  51. package/package/misc/tailwind-styles.css +199 -107
  52. package/package/misc/utils.js +2 -4
  53. package/package/nav/NavCMLX.svelte +65 -29
  54. package/package/nav/NavCMLX.svelte.d.ts +1 -1
  55. package/package/nav/NavCMLXItem.svelte +359 -188
  56. package/package/nav/NavCMLXItem.svelte.d.ts +4 -7
  57. package/package/nav/Tabs.svelte +19 -10
  58. package/package/nav/TabsLink.svelte +19 -10
  59. package/package/nav/VariableTabs.svelte +18 -9
  60. package/package/nav/VariableTabsLink.svelte +18 -9
  61. package/package.json +16 -13
  62. package/package/containers/NewSnackbar.svelte +0 -113
  63. package/package/containers/NewSnackbar.svelte.d.ts +0 -7
  64. package/package/forms/CircularProgressIndeterminate.svelte +0 -62
  65. package/package/forms/CircularProgressIndeterminate.svelte.d.ts +0 -5
  66. package/package/forms/LinearProgressIndeterminate.svelte +0 -55
  67. package/package/forms/LinearProgressIndeterminate.svelte.d.ts +0 -5
  68. package/package/forms/SliderTicks.svelte +0 -12
  69. package/package/forms/SliderTicks.svelte.d.ts +0 -18
  70. /package/package/{utils → misc}/ChipChooser.svelte +0 -0
  71. /package/package/{utils → misc}/ChipChooser.svelte.d.ts +0 -0
  72. /package/package/{utils → misc}/Divider.svelte.d.ts +0 -0
  73. /package/package/{utils → misc}/badge.d.ts +0 -0
@@ -55,84 +55,143 @@
55
55
 
56
56
  <style>
57
57
  .m3-container.xs {
58
- height: calc(2rem + var(--m3-util-density-term));
58
+
59
+ font-family: var(--m3-font);
60
+ font-size: 0.875rem;
61
+ line-height: 1.429;
62
+ letter-spacing: 0.006rem;
63
+ font-weight: 500;
64
+
65
+ height: calc(2rem + (var(--m3v-density) * 0.25rem));
59
66
  padding: 0 0.75rem;
60
67
  gap: 0.5rem;
61
- --m3-button-shape: 1rem;
62
- --m3-button-square-shape: var(--m3-util-rounding-medium);
63
- --m3-button-pressed-shape: var(--m3-util-rounding-small);
64
- font-family: var(--m3-font-label);
65
- font-size: var(--m3-font-label-large-size);
66
- line-height: var(--m3-font-label-large-height);
67
- letter-spacing: var(--m3-font-label-large-tracking);
68
- font-weight: var(--m3-font-label-large-weight);
68
+ --shape: 1rem;
69
+ --square-shape: var(--m3-shape-medium);
70
+ --pressed-shape: var(--m3-shape-small);
71
+
72
+ &.icon-full {
73
+ width: 2rem;
74
+ padding: 0;
75
+ }
69
76
  }
70
77
 
71
78
  .m3-container.s {
72
- height: calc(2.5rem + var(--m3-util-density-term));
79
+
80
+ font-family: var(--m3-font);
81
+ font-size: 0.875rem;
82
+ line-height: 1.429;
83
+ letter-spacing: 0.006rem;
84
+ font-weight: 500;
85
+
86
+ height: calc(2.5rem + (var(--m3v-density) * 0.25rem));
73
87
  padding: 0 1rem;
74
88
  gap: 0.5rem;
75
- --m3-button-shape: 1.25rem;
76
- --m3-button-square-shape: var(--m3-util-rounding-medium);
77
- --m3-button-pressed-shape: var(--m3-util-rounding-small);
78
- font-family: var(--m3-font-label);
79
- font-size: var(--m3-font-label-large-size);
80
- line-height: var(--m3-font-label-large-height);
81
- letter-spacing: var(--m3-font-label-large-tracking);
82
- font-weight: var(--m3-font-label-large-weight);
89
+ --shape: 1.25rem;
90
+ --square-shape: var(--m3-shape-medium);
91
+ --pressed-shape: var(--m3-shape-small);
92
+
93
+ &.icon-full {
94
+ width: 2.5rem;
95
+ padding: 0;
96
+ }
83
97
  }
84
98
 
85
99
  .m3-container.m {
86
- height: calc(3.5rem + var(--m3-util-density-term));
100
+
101
+ font-family: var(--m3-font);
102
+ font-size: 1rem;
103
+ line-height: 1.5;
104
+ letter-spacing: 0;
105
+ font-weight: 500;
106
+
107
+ height: calc(3.5rem + (var(--m3v-density) * 0.25rem));
87
108
  padding: 0 1.5rem;
88
109
  gap: 0.5rem;
89
- --m3-button-shape: 1.75rem;
90
- --m3-button-square-shape: var(--m3-util-rounding-large);
91
- --m3-button-pressed-shape: var(--m3-util-rounding-medium);
92
- font-family: var(--m3-font-title);
93
- font-size: var(--m3-font-title-medium-size);
94
- line-height: var(--m3-font-title-medium-height);
95
- letter-spacing: var(--m3-font-title-medium-tracking);
96
- font-weight: var(--m3-font-title-medium-weight);
110
+ --shape: 1.75rem;
111
+ --square-shape: var(--m3-shape-large);
112
+ --pressed-shape: var(--m3-shape-medium);
113
+
114
+ &.icon-left > :global(svg) {
115
+ width: 1.5rem;
116
+ height: 1.5rem;
117
+ }
118
+ &.icon-full {
119
+ width: 3.5rem;
120
+ padding: 0;
121
+ > :global(svg) {
122
+ width: 1.5rem;
123
+ height: 1.5rem;
124
+ }
125
+ }
97
126
  }
98
127
 
99
128
  .m3-container.l {
100
- height: calc(6rem + var(--m3-util-density-term));
129
+
130
+ font-family: var(--m3-font);
131
+ font-size: 1.5rem;
132
+ line-height: 1.333;
133
+ letter-spacing: 0;
134
+ font-weight: 400;
135
+
136
+ height: calc(6rem + (var(--m3v-density) * 0.25rem));
101
137
  padding: 0 3rem;
102
138
  gap: 0.75rem;
103
- --m3-button-shape: 3rem;
104
- --m3-button-square-shape: var(--m3-util-rounding-extra-large);
105
- --m3-button-pressed-shape: var(--m3-util-rounding-large);
106
- font-family: var(--m3-font-headline);
107
- font-size: var(--m3-font-headline-small-size);
108
- line-height: var(--m3-font-headline-small-height);
109
- letter-spacing: var(--m3-font-headline-small-tracking);
110
- font-weight: var(--m3-font-headline-small-weight);
139
+ --shape: 3rem;
140
+ --square-shape: var(--m3-shape-extra-large);
141
+ --pressed-shape: var(--m3-shape-large);
142
+
143
+ &.icon-left > :global(svg) {
144
+ width: 2rem;
145
+ height: 2rem;
146
+ }
147
+ &.icon-full {
148
+ width: 6rem;
149
+ padding: 0;
150
+ > :global(svg) {
151
+ width: 2rem;
152
+ height: 2rem;
153
+ }
154
+ }
111
155
  }
112
156
 
113
157
  .m3-container.xl {
114
- height: calc(8.5rem + var(--m3-util-density-term));
158
+
159
+ font-family: var(--m3-font);
160
+ font-size: 2rem;
161
+ line-height: 1.25;
162
+ letter-spacing: 0;
163
+ font-weight: 400;
164
+
165
+ height: calc(8.5rem + (var(--m3v-density) * 0.25rem));
115
166
  padding: 0 4rem;
116
167
  gap: 1rem;
117
- --m3-button-shape: 4.25rem;
118
- --m3-button-square-shape: var(--m3-util-rounding-extra-large);
119
- --m3-button-pressed-shape: var(--m3-util-rounding-large);
120
- font-family: var(--m3-font-headline);
121
- font-size: var(--m3-font-headline-large-size);
122
- line-height: var(--m3-font-headline-large-height);
123
- letter-spacing: var(--m3-font-headline-large-tracking);
124
- font-weight: var(--m3-font-headline-large-weight);
168
+ --shape: 4.25rem;
169
+ --square-shape: var(--m3-shape-extra-large);
170
+ --pressed-shape: var(--m3-shape-large);
171
+
172
+ &.icon-left > :global(svg) {
173
+ width: 2.5rem;
174
+ height: 2.5rem;
175
+ }
176
+ &.icon-full {
177
+ width: 8.5rem;
178
+ padding: 0;
179
+ > :global(svg) {
180
+ width: 2.5rem;
181
+ height: 2.5rem;
182
+ }
183
+ }
125
184
  }
126
185
 
127
186
  .m3-container {
128
187
  display: inline-flex;
129
188
  border: none;
130
- border-radius: var(--m3-button-shape);
189
+ border-radius: var(--shape);
131
190
  transition:
132
- border-radius var(--m3-util-easing-fast-spatial),
133
- box-shadow var(--m3-util-easing-fast),
134
- background-color var(--m3-util-easing-fast),
135
- color var(--m3-util-easing-fast);
191
+ border-radius var(--m3-easing-fast-spatial),
192
+ box-shadow var(--m3-easing-fast),
193
+ background-color var(--m3-easing-fast),
194
+ color var(--m3-easing-fast);
136
195
 
137
196
  align-items: center;
138
197
  justify-content: center;
@@ -143,43 +202,43 @@
143
202
 
144
203
  &:disabled,
145
204
  &:is(:global(input:disabled) + label) {
146
- background-color: rgb(var(--m3-scheme-on-surface) / 0.12);
147
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
205
+ background-color: oklab(from var(--m3c-on-surface) l a b / 0.12);
206
+ color: oklab(from var(--m3c-on-surface) l a b / 0.38);
148
207
  cursor: auto;
149
208
  }
150
209
 
151
210
  &.elevated:not(:disabled, :global(input:disabled) + label) {
152
- background-color: rgb(var(--m3-scheme-surface-container-low));
153
- color: rgb(var(--m3-scheme-primary));
154
- box-shadow: var(--m3-util-elevation-1);
211
+ background-color: var(--m3c-surface-container-low);
212
+ color: var(--m3c-primary);
213
+ box-shadow: var(--m3-elevation-1);
155
214
  &:is(:global(input:checked) + .m3-container) {
156
- background-color: rgb(var(--m3-scheme-primary));
157
- color: rgb(var(--m3-scheme-on-primary));
215
+ background-color: var(--m3c-primary);
216
+ color: var(--m3c-on-primary);
158
217
  }
159
218
  @media (hover: hover) {
160
219
  &:hover {
161
- box-shadow: var(--m3-util-elevation-2);
220
+ box-shadow: var(--m3-elevation-2);
162
221
  }
163
222
  }
164
223
  }
165
224
  &.filled:not(:disabled, :global(input:disabled) + label) {
166
- background-color: rgb(var(--m3-scheme-primary));
167
- color: rgb(var(--m3-scheme-on-primary));
225
+ background-color: var(--m3c-primary);
226
+ color: var(--m3c-on-primary);
168
227
  &:is(:global(input:is([type="checkbox"], [type="radio"]):not(:checked)) + label) {
169
- background-color: rgb(var(--m3-scheme-surface-container));
170
- color: rgb(var(--m3-scheme-on-surface-variant));
228
+ background-color: var(--m3c-surface-container);
229
+ color: var(--m3c-on-surface-variant);
171
230
  }
172
231
  }
173
232
  &.tonal:not(:disabled, :global(input:disabled) + label) {
174
- background-color: rgb(var(--m3-scheme-secondary-container));
175
- color: rgb(var(--m3-scheme-on-secondary-container));
233
+ background-color: var(--m3c-secondary-container);
234
+ color: var(--m3c-on-secondary-container);
176
235
  &:is(:global(input:checked) + label) {
177
- background-color: rgb(var(--m3-scheme-secondary));
178
- color: rgb(var(--m3-scheme-on-secondary));
236
+ background-color: var(--m3c-secondary);
237
+ color: var(--m3c-on-secondary);
179
238
  }
180
239
  }
181
240
  &.outlined {
182
- outline: 1px solid rgb(var(--m3-scheme-outline-variant));
241
+ outline: 1px solid var(--m3c-outline-variant);
183
242
  outline-offset: -1px;
184
243
  }
185
244
  &.outlined.l {
@@ -191,96 +250,43 @@
191
250
  outline-offset: -3px;
192
251
  }
193
252
  &.outlined:not(:disabled, :global(input:disabled) + label) {
194
- outline-color: rgb(var(--m3-scheme-outline-variant));
195
- color: rgb(var(--m3-scheme-on-surface-variant));
253
+ outline-color: var(--m3c-outline-variant);
254
+ color: var(--m3c-on-surface-variant);
196
255
  &:is(:global(input:checked) + label) {
197
- outline-color: rgb(var(--m3-scheme-inverse-surface));
198
- background-color: rgb(var(--m3-scheme-inverse-surface));
199
- color: rgb(var(--m3-scheme-inverse-on-surface));
256
+ outline-color: var(--m3c-inverse-surface);
257
+ background-color: var(--m3c-inverse-surface);
258
+ color: var(--m3c-inverse-on-surface);
200
259
  }
201
260
  }
202
261
  &.outlined:is(:disabled, :global(input:disabled) + label) {
203
- outline-color: rgb(var(--m3-scheme-on-surface) / 0.12);
262
+ outline-color: oklab(from var(--m3c-on-surface) l a b / 0.12);
204
263
  background-color: transparent;
205
264
  }
206
265
  &.text:not(:disabled, :global(input:disabled) + label) {
207
- color: rgb(var(--m3-scheme-primary));
266
+ color: var(--m3c-primary);
208
267
  }
209
268
  @media (hover: hover) {
210
269
  &:is(.filled, .tonal):not(:disabled, label):hover {
211
- box-shadow: var(--m3-util-elevation-1);
270
+ box-shadow: var(--m3-elevation-1);
212
271
  }
213
272
  }
214
273
 
215
274
  &.square:not(:is(:global(input:checked) + label, :global(:open) > summary)),
216
275
  &:is(:global(input:checked) + label, :global(:open) > summary):not(.square) {
217
- border-radius: var(--m3-button-square-shape);
276
+ border-radius: var(--square-shape);
218
277
  }
219
278
  &:active:not(:disabled, :global(input:disabled) + label) {
220
- border-radius: var(--m3-button-pressed-shape) !important;
279
+ border-radius: var(--pressed-shape) !important;
221
280
  }
222
281
  }
223
282
 
224
283
  .m3-container > :global(*) {
225
284
  flex-shrink: 0;
226
285
  }
227
-
228
- .xs.icon-left > :global(svg),
229
- .s.icon-left > :global(svg) {
286
+ .m3-container > :global(svg) {
230
287
  width: 1.25rem;
231
288
  height: 1.25rem;
232
289
  }
233
- .m.icon-left > :global(svg) {
234
- width: 1.5rem;
235
- height: 1.5rem;
236
- }
237
- .l.icon-left > :global(svg) {
238
- width: 2rem;
239
- height: 2rem;
240
- }
241
- .xl.icon-left > :global(svg) {
242
- width: 2.5rem;
243
- height: 2.5rem;
244
- }
245
-
246
- .xs.icon-full {
247
- width: 2rem;
248
- padding: 0;
249
- }
250
- .s.icon-full {
251
- width: 2.5rem;
252
- padding: 0;
253
- }
254
- .m.icon-full {
255
- width: 3.5rem;
256
- padding: 0;
257
- }
258
- .l.icon-full {
259
- width: 6rem;
260
- padding: 0;
261
- }
262
- .xl.icon-full {
263
- width: 8.5rem;
264
- padding: 0;
265
- }
266
-
267
- .xs.icon-full > :global(svg),
268
- .s.icon-full > :global(svg) {
269
- width: 1.25rem;
270
- height: 1.25rem;
271
- }
272
- .m.icon-full > :global(svg) {
273
- width: 1.5rem;
274
- height: 1.5rem;
275
- }
276
- .l.icon-full > :global(svg) {
277
- width: 2rem;
278
- height: 2rem;
279
- }
280
- .xl.icon-full > :global(svg) {
281
- width: 2.5rem;
282
- height: 2.5rem;
283
- }
284
290
 
285
291
  .m3-container {
286
292
  print-color-adjust: exact;
@@ -14,7 +14,7 @@
14
14
  grid-auto-flow: column;
15
15
  grid-auto-columns: 1fr;
16
16
  gap: 0.125rem;
17
- border-radius: var(--m3-util-rounding-full);
17
+ border-radius: var(--m3-shape-full);
18
18
  overflow: hidden;
19
19
 
20
20
  > :global(input) {
@@ -38,7 +38,7 @@
38
38
 
39
39
  <button
40
40
  type="button"
41
- class="m3-container m3-font-label-large color-{color} size-{size} elevation-{elevation}"
41
+ class="m3-container color-{color} size-{size} elevation-{elevation}"
42
42
  {...extra}
43
43
  >
44
44
  <Layer />
@@ -51,12 +51,21 @@
51
51
  </button>
52
52
 
53
53
  <style>
54
- :root {
55
- --m3-fab-small-shape: var(--m3-util-rounding-small);
56
- --m3-fab-normal-shape: var(--m3-util-rounding-large);
57
- --m3-fab-large-shape: var(--m3-util-rounding-extra-large);
54
+ @layer tokens {
55
+ :root {
56
+ --m3-fab-small-shape: var(--m3-shape-small);
57
+ --m3-fab-normal-shape: var(--m3-shape-large);
58
+ --m3-fab-large-shape: var(--m3-shape-extra-large);
59
+ }
58
60
  }
59
61
  button {
62
+
63
+ font-family: var(--m3-font);
64
+ font-size: 0.875rem;
65
+ line-height: 1.429;
66
+ letter-spacing: 0.006rem;
67
+ font-weight: 500;
68
+
60
69
  display: inline-flex;
61
70
  border: none;
62
71
  position: relative;
@@ -68,10 +77,10 @@
68
77
  }
69
78
 
70
79
  .elevation-normal {
71
- box-shadow: var(--m3-util-elevation-3);
80
+ box-shadow: var(--m3-elevation-3);
72
81
  }
73
82
  .elevation-lowered {
74
- box-shadow: var(--m3-util-elevation-1);
83
+ box-shadow: var(--m3-elevation-1);
75
84
  }
76
85
 
77
86
  .size-small {
@@ -103,36 +112,36 @@
103
112
  }
104
113
 
105
114
  .color-primary {
106
- background-color: rgb(var(--m3-scheme-primary));
107
- color: rgb(var(--m3-scheme-on-primary));
115
+ background-color: var(--m3c-primary);
116
+ color: var(--m3c-on-primary);
108
117
  }
109
118
  .color-secondary {
110
- background-color: rgb(var(--m3-scheme-secondary));
111
- color: rgb(var(--m3-scheme-on-secondary));
119
+ background-color: var(--m3c-secondary);
120
+ color: var(--m3c-on-secondary);
112
121
  }
113
122
  .color-tertiary {
114
- background-color: rgb(var(--m3-scheme-tertiary));
115
- color: rgb(var(--m3-scheme-on-tertiary));
123
+ background-color: var(--m3c-tertiary);
124
+ color: var(--m3c-on-tertiary);
116
125
  }
117
126
  .color-primary-container {
118
- background-color: rgb(var(--m3-scheme-primary-container));
119
- color: rgb(var(--m3-scheme-on-primary-container));
127
+ background-color: var(--m3c-primary-container);
128
+ color: var(--m3c-on-primary-container);
120
129
  }
121
130
  .color-secondary-container {
122
- background-color: rgb(var(--m3-scheme-secondary-container));
123
- color: rgb(var(--m3-scheme-on-secondary-container));
131
+ background-color: var(--m3c-secondary-container);
132
+ color: var(--m3c-on-secondary-container);
124
133
  }
125
134
  .color-tertiary-container {
126
- background-color: rgb(var(--m3-scheme-tertiary-container));
127
- color: rgb(var(--m3-scheme-on-tertiary-container));
135
+ background-color: var(--m3c-tertiary-container);
136
+ color: var(--m3c-on-tertiary-container);
128
137
  }
129
138
 
130
139
  @media (hover: hover) {
131
140
  .elevation-normal:hover {
132
- box-shadow: var(--m3-util-elevation-4);
141
+ box-shadow: var(--m3-elevation-4);
133
142
  }
134
143
  .elevation-lowered:hover {
135
- box-shadow: var(--m3-util-elevation-2);
144
+ box-shadow: var(--m3-elevation-2);
136
145
  }
137
146
  }
138
147
 
@@ -36,7 +36,7 @@
36
36
  </script>
37
37
 
38
38
  <div class="m3-container {variant}">
39
- <button type="button" class="split m3-font-label-large" {...extra}>
39
+ <button type="button" class="split" {...extra}>
40
40
  <Layer />
41
41
  {@render children()}
42
42
  </button>
@@ -50,10 +50,12 @@
50
50
  </div>
51
51
 
52
52
  <style>
53
- :root {
54
- --m3-split-button-outer-shape: 1.25rem;
55
- --m3-split-button-half-shape: var(--m3-util-rounding-medium);
56
- --m3-split-button-inner-shape: var(--m3-util-rounding-extra-small);
53
+ @layer tokens {
54
+ :root {
55
+ --m3-split-button-outer-shape: 1.25rem;
56
+ --m3-split-button-half-shape: var(--m3-shape-medium);
57
+ --m3-split-button-inner-shape: var(--m3-shape-extra-small);
58
+ }
57
59
  }
58
60
 
59
61
  .m3-container {
@@ -62,28 +64,28 @@
62
64
  gap: 0.125rem;
63
65
 
64
66
  &.elevated .split {
65
- background-color: rgb(var(--m3-scheme-surface-container-low));
66
- color: rgb(var(--m3-scheme-primary));
67
- box-shadow: var(--m3-util-elevation-1);
67
+ background-color: var(--m3c-surface-container-low);
68
+ color: var(--m3c-primary);
69
+ box-shadow: var(--m3-elevation-1);
68
70
  &:hover {
69
- box-shadow: var(--m3-util-elevation-2);
71
+ box-shadow: var(--m3-elevation-2);
70
72
  }
71
73
  }
72
74
 
73
75
  &.filled .split {
74
- background-color: rgb(var(--m3-scheme-primary));
75
- color: rgb(var(--m3-scheme-on-primary));
76
+ background-color: var(--m3c-primary);
77
+ color: var(--m3c-on-primary);
76
78
  }
77
79
 
78
80
  &.tonal .split {
79
- background-color: rgb(var(--m3-scheme-secondary-container));
80
- color: rgb(var(--m3-scheme-on-secondary-container));
81
+ background-color: var(--m3c-secondary-container);
82
+ color: var(--m3c-on-secondary-container);
81
83
  }
82
84
 
83
85
  &.outlined .split {
84
- outline: 1px solid rgb(var(--m3-scheme-outline-variant));
86
+ outline: 1px solid var(--m3c-outline-variant);
85
87
  outline-offset: -1px;
86
- color: rgb(var(--m3-scheme-on-surface-variant));
88
+ color: var(--m3c-on-surface-variant);
87
89
  }
88
90
  }
89
91
 
@@ -91,7 +93,7 @@
91
93
  display: flex;
92
94
  align-items: center;
93
95
  justify-content: center;
94
- height: calc(2.5rem + var(--m3-util-density-term));
96
+ height: calc(2.5rem + (var(--m3v-density) * 0.25rem));
95
97
  gap: 0.5rem;
96
98
 
97
99
  cursor: pointer;
@@ -100,11 +102,18 @@
100
102
 
101
103
  position: relative;
102
104
  transition:
103
- box-shadow var(--m3-util-easing-fast),
104
- border-radius var(--m3-util-easing-fast);
105
+ box-shadow var(--m3-easing-fast),
106
+ border-radius var(--m3-easing-fast);
105
107
  }
106
108
 
107
109
  button {
110
+
111
+ font-family: var(--m3-font);
112
+ font-size: 0.875rem;
113
+ line-height: 1.429;
114
+ letter-spacing: 0.006rem;
115
+ font-weight: 500;
116
+
108
117
  padding-inline-start: 1rem;
109
118
  padding-inline-end: 0.75rem;
110
119
  border-start-start-radius: var(--m3-split-button-outer-shape);
@@ -153,11 +162,11 @@
153
162
  > :global(svg) {
154
163
  /* Push away from the most rounded side */
155
164
  --shape-delta: calc(var(--inner-shape) - var(--outer-shape));
156
- --correction: calc(var(--m3-util-optical-centering-coefficient) * var(--shape-delta));
165
+ --correction: calc(var(--m3-optical-centering-coefficient) * var(--shape-delta));
157
166
  translate: var(--correction) 0;
158
167
  transition:
159
- rotate var(--m3-util-easing-fast),
160
- translate var(--m3-util-easing-fast);
168
+ rotate var(--m3-easing-fast),
169
+ translate var(--m3-easing-fast);
161
170
  }
162
171
  }
163
172
  details > :global(:not(summary)) :global {
@@ -90,8 +90,10 @@
90
90
  </dialog>
91
91
 
92
92
  <style>
93
- :root {
94
- --m3-bottom-sheet-shape: var(--m3-util-rounding-extra-large);
93
+ @layer tokens {
94
+ :root {
95
+ --m3-bottom-sheet-shape: var(--m3-shape-extra-large);
96
+ }
95
97
  }
96
98
 
97
99
  .m3-container {
@@ -101,14 +103,14 @@
101
103
  overflow: hidden;
102
104
  touch-action: none;
103
105
 
104
- background-color: rgb(var(--m3-scheme-surface-container-low));
105
- color: rgb(var(--m3-scheme-on-surface));
106
+ background-color: var(--m3c-surface-container-low);
107
+ color: var(--m3c-on-surface);
106
108
  border-radius: var(--m3-bottom-sheet-shape) var(--m3-bottom-sheet-shape) 0 0;
107
109
  border: none;
108
110
  padding: 0;
109
111
  }
110
112
  dialog::backdrop {
111
- background-color: rgb(var(--m3-scheme-scrim) / 0.5);
113
+ background-color: oklab(from var(--m3c-scrim) l a b / 0.5);
112
114
  animation: backdrop 400ms;
113
115
  }
114
116
  dialog:global(.leaving)::backdrop {
@@ -127,7 +129,7 @@
127
129
  cursor: grab;
128
130
  }
129
131
  .handle {
130
- background-color: rgb(var(--m3-scheme-on-surface-variant) / 0.4);
132
+ background-color: oklab(from var(--m3c-on-surface-variant) l a b / 0.4);
131
133
  width: 2rem;
132
134
  height: 0.25rem;
133
135
  border-radius: 0.25rem;
@@ -137,12 +139,12 @@
137
139
  background-color: transparent;
138
140
  }
139
141
  100% {
140
- background-color: rgb(var(--m3-scheme-scrim) / 0.5);
142
+ background-color: oklab(from var(--m3c-scrim) l a b / 0.5);
141
143
  }
142
144
  }
143
145
  @keyframes backdropReverse {
144
146
  0% {
145
- background-color: rgb(var(--m3-scheme-scrim) / 0.5);
147
+ background-color: oklab(from var(--m3c-scrim) l a b / 0.5);
146
148
  }
147
149
  100% {
148
150
  background-color: transparent;