@maggioli-design-system/styles 17.4.0 → 17.6.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.
@@ -85,6 +85,26 @@
85
85
  --text-size-code-hack: 0.875rem;
86
86
  --text-size-code-hack--font-weight: 400;
87
87
  --text-size-code-hack--line-height: 1.25rem;
88
+ --text-size-title-page: var(--text-size-title-h3);
89
+ --text-size-title-page--font-weight: var(--text-size-title-h3--font-weight);
90
+ --text-size-title-page--letter-spacing: var(--text-size-title-h3--letter-spacing);
91
+ --text-size-title-page--line-height: var(--text-size-title-h3--line-height);
92
+ --text-size-title-section: var(--text-size-title-h5);
93
+ --text-size-title-section--font-weight: var(--text-size-title-h5--font-weight);
94
+ --text-size-title-section--letter-spacing: var(--text-size-title-h5--letter-spacing);
95
+ --text-size-title-section--line-height: var(--text-size-title-h5--line-height);
96
+ --text-size-title-dialog: var(--text-size-title-h5);
97
+ --text-size-title-dialog--font-weight: var(--text-size-title-h5--font-weight);
98
+ --text-size-title-dialog--letter-spacing: var(--text-size-title-h5--letter-spacing);
99
+ --text-size-title-dialog--line-height: var(--text-size-title-h5--line-height);
100
+ --text-size-title-part: var(--text-size-title-h6);
101
+ --text-size-title-part--font-weight: var(--text-size-title-h6--font-weight);
102
+ --text-size-title-part--letter-spacing: var(--text-size-title-h6--letter-spacing);
103
+ --text-size-title-part--line-height: var(--text-size-title-h6--line-height);
104
+ --text-size-title-group: var(--text-size-title-h6);
105
+ --text-size-title-group--font-weight: var(--text-size-title-h6--font-weight);
106
+ --text-size-title-group--letter-spacing: var(--text-size-title-h6--letter-spacing);
107
+ --text-size-title-group--line-height: var(--text-size-title-h6--line-height);
88
108
  --leading-2xs: 0.625rem;
89
109
  --leading-xs: 1rem;
90
110
  --leading-sm: 1.25rem;
@@ -106,7 +126,7 @@
106
126
  --spacing-4xl: 96px;
107
127
  --spacing-phrase: 50ch;
108
128
  --spacing-prose: 65ch;
109
- --spacing-text: 75ch;
129
+ --spacing-text: var(--magma-width-reading, 56ch);
110
130
  --spacing-title: 30ch;
111
131
  --container-4xs: 128px;
112
132
  --container-3xs: 192px;
@@ -122,6 +142,21 @@
122
142
  --container-5xl: 1024px;
123
143
  --container-6xl: 1152px;
124
144
  --container-7xl: 1280px;
145
+ --magma-rhythm-inline: 12px;
146
+ --magma-rhythm-title-content: 12px;
147
+ --magma-rhythm-label-control: 12px;
148
+ --magma-rhythm-between-containers: 16px;
149
+ --magma-rhythm-between-fields: 24px;
150
+ --magma-rhythm-content-actions: 24px;
151
+ --magma-rhythm-inset: 24px;
152
+ --magma-rhythm-between-groups: 40px;
153
+ --magma-rhythm-between-sections: 64px;
154
+ --magma-width-reading: 56ch;
155
+ --magma-width-form: var(--magma-width-reading);
156
+ --magma-width-page: 1280px;
157
+ --magma-width-page-gutter: 24px;
158
+ --magma-width-dialog: calc(var(--magma-width-form) + 2 * var(--magma-rhythm-inset));
159
+ --magma-container-actions: 23.75rem;
125
160
  --breakpoint-mobile: 480px;
126
161
  --breakpoint-tablet: 768px;
127
162
  --breakpoint-desktop: 1024px;
@@ -651,7 +686,7 @@
651
686
  --magma-tint-scale-09: var(--tone-neutral-09);
652
687
  --magma-tint-scale-10: var(--tone-neutral-10);
653
688
  --magma-surface-sunken: var(--magma-tint-sunken); /* Below the page: wells, insets, code blocks, tracks. */
654
- --magma-surface-muted: var(--magma-tint-muted); /* Same-plane grouping on the page: zebra rows, a subtle section. */
689
+ --magma-surface-muted: var(--magma-tint-muted); /* Same-plane grouping inside a component: zebra rows; never the background of a section. */
655
690
  --magma-surface-default: var(--magma-tint-default); /* The page canvas, the background of the body. */
656
691
  --magma-surface-raised: var(--magma-tint-raised); /* Above the page: cards, panels, sticky headers. */
657
692
  --magma-surface-overlay: var(--magma-tint-overlay); /* Floating above everything: modal, dropdown, popover, sheet. */
@@ -778,6 +813,18 @@
778
813
  --magma-accent-ai-surface-subtle: var(--magma-tint-accent-ai-surface-subtle); /* A background tinted with the AI accent, lighter. */
779
814
  --magma-accent-ai-on-emphasis: var(--magma-tint-text-on-emphasis); /* Text and icons on the solid fill of the AI accent. */
780
815
 
816
+ /* semantic: theme variants */
817
+ --magma-preview-business-wash: var(--tone-neutral-09);
818
+ --magma-preview-business-accent: var(--variant-primary-04);
819
+ --magma-preview-editorial-wash: var(--tone-bisque-09);
820
+ --magma-preview-editorial-accent: var(--variant-secondary-04);
821
+ --magma-preview-default-wash: var(--tone-neutral-09);
822
+ --magma-preview-default-accent: var(--variant-primary-04);
823
+ --magma-preview-cool-wash: var(--tone-porcelain-09);
824
+ --magma-preview-cool-accent: var(--variant-primary-04);
825
+ --magma-preview-warm-wash: var(--tone-bisque-09);
826
+ --magma-preview-warm-accent: var(--variant-primary-04);
827
+
781
828
  /* globals */
782
829
  --magma-pref-mode: light; /* The active mode preference, as the mds-pref components write it: read it, never set it. */
783
830
  --magma-pref-theme-scheme: light; /* The active theme-scheme preference, as the mds-pref components write it: read it, never set it. */
@@ -933,6 +980,7 @@
933
980
  --mds-book-color: rgb(36 103 231);
934
981
  --mds-book-paper-color: rgb(250 248 242);
935
982
  --mds-book-text-color: rgb(255 255 255);
983
+ --mds-book-publisher-color: rgb(255 255 255);
936
984
  --mds-book-page-weight-max: 0.05;
937
985
  --mds-book-page-weight-min: 0.1;
938
986
 
@@ -997,8 +1045,8 @@
997
1045
  --mds-calendar-cell-other-month-visibility: visible;
998
1046
 
999
1047
  /* component: mds-card */
1000
- --mds-card-gap: 0;
1001
- --mds-card-padding: 0;
1048
+ --mds-card-gap: 12px;
1049
+ --mds-card-padding: 24px;
1002
1050
  --mds-card-background: rgb(var(--magma-surface-raised));
1003
1051
 
1004
1052
  /* component: mds-chip */
@@ -1095,6 +1143,7 @@
1095
1143
  --mds-filter-items-padding: 8px;
1096
1144
  --mds-filter-items-radius: 1000px;
1097
1145
  --mds-filter-items-scroll-behavior: smooth;
1146
+ --mds-filter-label-gap: 12px;
1098
1147
  --mds-filter-label-padding: 0 24px;
1099
1148
  --mds-filter-wrapper-shadow-color: rgb(196 196 196);
1100
1149
  --mds-filter-wrapper-shadow-opacity: 0.1;
@@ -1407,6 +1456,8 @@
1407
1456
  --mds-notification-translate-offset-x: -1.75;
1408
1457
  --mds-notification-dot-transition-duration: var(--duration-300);
1409
1458
  --mds-notification-transition-timing-function: var(--ease-out-cubic);
1459
+ --mds-notification-pulse-duration: var(--duration-1000);
1460
+ --mds-notification-pulse-spread: --spacing(200);
1410
1461
 
1411
1462
  /* component: mds-paginator */
1412
1463
  --mds-paginator-background: rgb(225 225 225);
@@ -1,8 +1,8 @@
1
1
  /*
2
- @magma-design-system/design-tokens v15.3.0
2
+ @magma-design-system/design-tokens v15.5.0
3
3
  Generated by Style Dictionary
4
4
  Do not edit directly
5
- Generated at Sat, 24 Oct 2026 12:12:55 GMT
5
+ Generated at Wed, 04 Nov 2026 15:12:42 GMT
6
6
  */
7
7
 
8
8
  :root {
@@ -1,8 +1,8 @@
1
1
  /*
2
- @magma-design-system/design-tokens v15.3.0
2
+ @magma-design-system/design-tokens v15.5.0
3
3
  Generated by Style Dictionary
4
4
  Do not edit directly
5
- Generated at Sat, 24 Oct 2026 12:12:55 GMT
5
+ Generated at Wed, 04 Nov 2026 15:12:42 GMT
6
6
  */
7
7
 
8
8
  :root {
@@ -73,6 +73,27 @@ Generated at Sat, 24 Oct 2026 12:12:55 GMT
73
73
  --text-size-code-hack--font-weight: 400;
74
74
  --text-size-code-hack--line-height: 1.25rem;
75
75
 
76
+ --text-size-title-page: var(--text-size-title-h3);
77
+ --text-size-title-page--font-weight: var(--text-size-title-h3--font-weight);
78
+ --text-size-title-page--letter-spacing: var(--text-size-title-h3--letter-spacing);
79
+ --text-size-title-page--line-height: var(--text-size-title-h3--line-height);
80
+ --text-size-title-section: var(--text-size-title-h5);
81
+ --text-size-title-section--font-weight: var(--text-size-title-h5--font-weight);
82
+ --text-size-title-section--letter-spacing: var(--text-size-title-h5--letter-spacing);
83
+ --text-size-title-section--line-height: var(--text-size-title-h5--line-height);
84
+ --text-size-title-dialog: var(--text-size-title-h5);
85
+ --text-size-title-dialog--font-weight: var(--text-size-title-h5--font-weight);
86
+ --text-size-title-dialog--letter-spacing: var(--text-size-title-h5--letter-spacing);
87
+ --text-size-title-dialog--line-height: var(--text-size-title-h5--line-height);
88
+ --text-size-title-part: var(--text-size-title-h6);
89
+ --text-size-title-part--font-weight: var(--text-size-title-h6--font-weight);
90
+ --text-size-title-part--letter-spacing: var(--text-size-title-h6--letter-spacing);
91
+ --text-size-title-part--line-height: var(--text-size-title-h6--line-height);
92
+ --text-size-title-group: var(--text-size-title-h6);
93
+ --text-size-title-group--font-weight: var(--text-size-title-h6--font-weight);
94
+ --text-size-title-group--letter-spacing: var(--text-size-title-h6--letter-spacing);
95
+ --text-size-title-group--line-height: var(--text-size-title-h6--line-height);
96
+
76
97
  --leading-2xs: 0.625rem;
77
98
  --leading-xs: 1rem;
78
99
  --leading-sm: 1.25rem;
@@ -95,7 +116,7 @@ Generated at Sat, 24 Oct 2026 12:12:55 GMT
95
116
  --spacing-4xl: 96px;
96
117
  --spacing-phrase: 50ch;
97
118
  --spacing-prose: 65ch;
98
- --spacing-text: 75ch;
119
+ --spacing-text: var(--magma-width-reading, 56ch);
99
120
  --spacing-title: 30ch;
100
121
 
101
122
  --container-4xs: 128px;
@@ -113,6 +134,22 @@ Generated at Sat, 24 Oct 2026 12:12:55 GMT
113
134
  --container-6xl: 1152px;
114
135
  --container-7xl: 1280px;
115
136
 
137
+ --magma-rhythm-inline: 12px;
138
+ --magma-rhythm-title-content: 12px;
139
+ --magma-rhythm-label-control: 12px;
140
+ --magma-rhythm-between-containers: 16px;
141
+ --magma-rhythm-between-fields: 24px;
142
+ --magma-rhythm-content-actions: 24px;
143
+ --magma-rhythm-inset: 24px;
144
+ --magma-rhythm-between-groups: 40px;
145
+ --magma-rhythm-between-sections: 64px;
146
+ --magma-width-reading: 56ch;
147
+ --magma-width-form: var(--magma-width-reading);
148
+ --magma-width-page: 1280px;
149
+ --magma-width-page-gutter: 24px;
150
+ --magma-width-dialog: calc(var(--magma-width-form) + 2 * var(--magma-rhythm-inset));
151
+ --magma-container-actions: 23.75rem;
152
+
116
153
  --breakpoint-mobile: 480px;
117
154
  --breakpoint-tablet: 768px;
118
155
  --breakpoint-desktop: 1024px;
@@ -1,4 +1,4 @@
1
- /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
1
+ /*! tailwindcss v4.3.4 | MIT License | https://tailwindcss.com */
2
2
  @layer properties;
3
3
  @layer utilities {
4
4
  .focus-zoom {
@@ -23,6 +23,9 @@
23
23
  .typography-title-h1 {
24
24
  min-height: auto;
25
25
  text-box: trim-both text;
26
+ &:where(input) {
27
+ text-box: normal;
28
+ }
26
29
  font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
27
30
  font-size: var(--text-size-title-h1, 3rem);
28
31
  line-height: var(--tw-leading, var(--text-size-title-h1--line-height, 3rem));
@@ -36,6 +39,9 @@
36
39
  .typography-title-h2 {
37
40
  min-height: auto;
38
41
  text-box: trim-both text;
42
+ &:where(input) {
43
+ text-box: normal;
44
+ }
39
45
  font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
40
46
  font-size: var(--text-size-title-h2, 2.25rem);
41
47
  line-height: var(--tw-leading, var(--text-size-title-h2--line-height, 2.5rem));
@@ -49,6 +55,9 @@
49
55
  .typography-title-h3 {
50
56
  min-height: auto;
51
57
  text-box: trim-both text;
58
+ &:where(input) {
59
+ text-box: normal;
60
+ }
52
61
  font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
53
62
  font-size: var(--text-size-title-h3, 1.875rem);
54
63
  line-height: var(--tw-leading, var(--text-size-title-h3--line-height, 2.25rem));
@@ -62,6 +71,9 @@
62
71
  .typography-title-h4 {
63
72
  min-height: auto;
64
73
  text-box: trim-both text;
74
+ &:where(input) {
75
+ text-box: normal;
76
+ }
65
77
  font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
66
78
  font-size: var(--text-size-title-h4, 1.5rem);
67
79
  line-height: var(--tw-leading, var(--text-size-title-h4--line-height, 2rem));
@@ -75,6 +87,9 @@
75
87
  .typography-title-h5 {
76
88
  min-height: auto;
77
89
  text-box: trim-both text;
90
+ &:where(input) {
91
+ text-box: normal;
92
+ }
78
93
  font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
79
94
  font-size: var(--text-size-title-h5, 1.25rem);
80
95
  line-height: var(--tw-leading, var(--text-size-title-h5--line-height, 1.75rem));
@@ -88,6 +103,9 @@
88
103
  .typography-title-h6 {
89
104
  min-height: auto;
90
105
  text-box: trim-both text;
106
+ &:where(input) {
107
+ text-box: normal;
108
+ }
91
109
  font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
92
110
  font-size: var(--text-size-title-h6, 1rem);
93
111
  line-height: var(--tw-leading, var(--text-size-title-h6--line-height, 1.5rem));
@@ -101,6 +119,9 @@
101
119
  .typography-title-action {
102
120
  min-height: auto;
103
121
  text-box: trim-both text;
122
+ &:where(input) {
123
+ text-box: normal;
124
+ }
104
125
  font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
105
126
  font-size: var(--text-size-title-action, 0.875rem);
106
127
  line-height: var(--tw-leading, var(--text-size-title-action--line-height, 1.5rem));
@@ -110,9 +131,82 @@
110
131
  -webkit-font-smoothing: antialiased;
111
132
  -moz-osx-font-smoothing: grayscale;
112
133
  }
134
+ .typography-title-page {
135
+ min-height: auto;
136
+ text-box: trim-both text;
137
+ &:where(input) {
138
+ text-box: normal;
139
+ }
140
+ font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
141
+ font-size: var(--text-size-title-page, var(--text-size-title-h3, 1.875rem));
142
+ line-height: var(--tw-leading, var(--text-size-title-page--line-height, var(--text-size-title-h3--line-height, 2.25rem)));
143
+ letter-spacing: var(--tw-tracking, var(--text-size-title-page--letter-spacing, var(--text-size-title-h3--letter-spacing, -0.025em)));
144
+ font-weight: var(--tw-font-weight, var(--text-size-title-page--font-weight, var(--text-size-title-h3--font-weight, 900)));
145
+ -webkit-font-smoothing: antialiased;
146
+ -moz-osx-font-smoothing: grayscale;
147
+ }
148
+ .typography-title-section {
149
+ min-height: auto;
150
+ text-box: trim-both text;
151
+ &:where(input) {
152
+ text-box: normal;
153
+ }
154
+ font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
155
+ font-size: var(--text-size-title-section, var(--text-size-title-h5, 1.25rem));
156
+ line-height: var(--tw-leading, var(--text-size-title-section--line-height, var(--text-size-title-h5--line-height, 1.75rem)));
157
+ letter-spacing: var(--tw-tracking, var(--text-size-title-section--letter-spacing, var(--text-size-title-h5--letter-spacing, -0.025em)));
158
+ font-weight: var(--tw-font-weight, var(--text-size-title-section--font-weight, var(--text-size-title-h5--font-weight, 900)));
159
+ -webkit-font-smoothing: antialiased;
160
+ -moz-osx-font-smoothing: grayscale;
161
+ }
162
+ .typography-title-dialog {
163
+ min-height: auto;
164
+ text-box: trim-both text;
165
+ &:where(input) {
166
+ text-box: normal;
167
+ }
168
+ font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
169
+ font-size: var(--text-size-title-dialog, var(--text-size-title-h5, 1.25rem));
170
+ line-height: var(--tw-leading, var(--text-size-title-dialog--line-height, var(--text-size-title-h5--line-height, 1.75rem)));
171
+ letter-spacing: var(--tw-tracking, var(--text-size-title-dialog--letter-spacing, var(--text-size-title-h5--letter-spacing, -0.025em)));
172
+ font-weight: var(--tw-font-weight, var(--text-size-title-dialog--font-weight, var(--text-size-title-h5--font-weight, 900)));
173
+ -webkit-font-smoothing: antialiased;
174
+ -moz-osx-font-smoothing: grayscale;
175
+ }
176
+ .typography-title-part {
177
+ min-height: auto;
178
+ text-box: trim-both text;
179
+ &:where(input) {
180
+ text-box: normal;
181
+ }
182
+ font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
183
+ font-size: var(--text-size-title-part, var(--text-size-title-h6, 1rem));
184
+ line-height: var(--tw-leading, var(--text-size-title-part--line-height, var(--text-size-title-h6--line-height, 1.5rem)));
185
+ letter-spacing: var(--tw-tracking, var(--text-size-title-part--letter-spacing, var(--text-size-title-h6--letter-spacing, -0.025em)));
186
+ font-weight: var(--tw-font-weight, var(--text-size-title-part--font-weight, var(--text-size-title-h6--font-weight, 700)));
187
+ -webkit-font-smoothing: antialiased;
188
+ -moz-osx-font-smoothing: grayscale;
189
+ }
190
+ .typography-title-group {
191
+ min-height: auto;
192
+ text-box: trim-both text;
193
+ &:where(input) {
194
+ text-box: normal;
195
+ }
196
+ font-family: var(--font-title, Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
197
+ font-size: var(--text-size-title-group, var(--text-size-title-h6, 1rem));
198
+ line-height: var(--tw-leading, var(--text-size-title-group--line-height, var(--text-size-title-h6--line-height, 1.5rem)));
199
+ letter-spacing: var(--tw-tracking, var(--text-size-title-group--letter-spacing, var(--text-size-title-h6--letter-spacing, -0.025em)));
200
+ font-weight: var(--tw-font-weight, var(--text-size-title-group--font-weight, var(--text-size-title-h6--font-weight, 700)));
201
+ -webkit-font-smoothing: antialiased;
202
+ -moz-osx-font-smoothing: grayscale;
203
+ }
113
204
  .typography-info-paragraph {
114
205
  min-height: auto;
115
206
  text-box: trim-both text;
207
+ &:where(input) {
208
+ text-box: normal;
209
+ }
116
210
  font-family: var(--font-info, Karla, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
117
211
  font-size: var(--text-size-info-paragraph, 1.25rem);
118
212
  line-height: var(--tw-leading, var(--text-size-info-paragraph--line-height, 2rem));
@@ -123,6 +217,9 @@
123
217
  .typography-info-detail {
124
218
  min-height: auto;
125
219
  text-box: trim-both text;
220
+ &:where(input) {
221
+ text-box: normal;
222
+ }
126
223
  font-family: var(--font-info, Karla, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
127
224
  font-size: var(--text-size-info-detail, 1rem);
128
225
  line-height: var(--tw-leading, var(--text-size-info-detail--line-height, 1.5rem));
@@ -133,6 +230,9 @@
133
230
  .typography-info-caption {
134
231
  min-height: auto;
135
232
  text-box: trim-both text;
233
+ &:where(input) {
234
+ text-box: normal;
235
+ }
136
236
  font-family: var(--font-info, Karla, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
137
237
  font-size: var(--text-size-info-caption, 0.875rem);
138
238
  line-height: var(--tw-leading, var(--text-size-info-caption--line-height, 1.25rem));
@@ -143,6 +243,9 @@
143
243
  .typography-info-label {
144
244
  min-height: auto;
145
245
  text-box: trim-both cap alphabetic;
246
+ &:where(input) {
247
+ text-box: normal;
248
+ }
146
249
  font-family: var(--font-info, Karla, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
147
250
  font-size: var(--text-size-info-label, 0.75rem);
148
251
  line-height: var(--tw-leading, var(--text-size-info-label--line-height, 1rem));
@@ -156,6 +259,9 @@
156
259
  .typography-info-option {
157
260
  min-height: auto;
158
261
  text-box: trim-both cap alphabetic;
262
+ &:where(input) {
263
+ text-box: normal;
264
+ }
159
265
  font-family: var(--font-info, Karla, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
160
266
  font-size: var(--text-size-info-option, 0.625rem);
161
267
  line-height: var(--tw-leading, var(--text-size-info-option--line-height, 0.625rem));
@@ -170,6 +276,9 @@
170
276
  .typography-info-tip {
171
277
  min-height: auto;
172
278
  text-box: trim-both text;
279
+ &:where(input) {
280
+ text-box: normal;
281
+ }
173
282
  font-family: var(--font-info, Karla, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
174
283
  font-size: var(--text-size-info-tip, 0.75rem);
175
284
  line-height: var(--tw-leading, var(--text-size-info-tip--line-height, 1rem));
@@ -180,6 +289,9 @@
180
289
  .typography-read-paragraph {
181
290
  min-height: auto;
182
291
  text-box: trim-both text;
292
+ &:where(input) {
293
+ text-box: normal;
294
+ }
183
295
  font-family: var(--font-read, 'Merriweather', Times, 'Times New Roman', serif);
184
296
  font-size: var(--text-size-read-paragraph, 1.25rem);
185
297
  line-height: var(--tw-leading, var(--text-size-read-paragraph--line-height, 2rem));
@@ -192,6 +304,9 @@
192
304
  .typography-read-detail {
193
305
  min-height: auto;
194
306
  text-box: trim-both text;
307
+ &:where(input) {
308
+ text-box: normal;
309
+ }
195
310
  font-family: var(--font-read, 'Merriweather', Times, 'Times New Roman', serif);
196
311
  font-size: var(--text-size-read-detail, 1rem);
197
312
  line-height: var(--tw-leading, var(--text-size-read-detail--line-height, 1.5rem));
@@ -204,6 +319,9 @@
204
319
  .typography-read-caption {
205
320
  min-height: auto;
206
321
  text-box: trim-both text;
322
+ &:where(input) {
323
+ text-box: normal;
324
+ }
207
325
  font-family: var(--font-read, 'Merriweather', Times, 'Times New Roman', serif);
208
326
  font-size: var(--text-size-read-caption, 0.875rem);
209
327
  line-height: var(--tw-leading, var(--text-size-read-caption--line-height, 1.25rem));
@@ -214,6 +332,9 @@
214
332
  .typography-code-snippet {
215
333
  min-height: auto;
216
334
  text-box: trim-both text;
335
+ &:where(input) {
336
+ text-box: normal;
337
+ }
217
338
  font-family: var(--font-code, 'Roboto Mono', 'Courier New', monospace);
218
339
  font-size: var(--text-size-code-snippet, 1rem);
219
340
  line-height: var(--tw-leading, var(--text-size-code-snippet--line-height, 1.5rem));
@@ -224,6 +345,9 @@
224
345
  .typography-code-hack {
225
346
  min-height: auto;
226
347
  text-box: trim-both text;
348
+ &:where(input) {
349
+ text-box: normal;
350
+ }
227
351
  font-family: var(--font-code, 'Roboto Mono', 'Courier New', monospace);
228
352
  font-size: var(--text-size-code-hack, 0.875rem);
229
353
  line-height: var(--tw-leading, var(--text-size-code-hack--line-height, 1.25rem));
@@ -244,7 +368,7 @@
244
368
  inherits: false;
245
369
  }
246
370
  @layer properties {
247
- @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
371
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: block))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
248
372
  *, ::before, ::after, ::backdrop {
249
373
  --tw-duration: initial;
250
374
  --tw-ease: initial;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "magma": {
3
- "$description": "The semantic layer: the roles UI code paints with, which follow the mode, the named theme and the contrast preference.",
3
+ "$description": "The semantic layer: the roles UI code paints with. The colour roles follow the mode, the named theme and the contrast preference; rhythm and width are the spaces and the widths of the design language.",
4
4
  "pref": {
5
5
  "$description": "The preferences the mds-pref components write on the html element: read them to adapt, never set them by hand.",
6
6
  "$extensions": {
@@ -35,8 +35,30 @@
35
35
  "default": "light"
36
36
  },
37
37
  "theme": {
38
- "description": "Named theme (data-theme-name) and contrast preference (pref-contrast-more) together: under a theme the contrast promotions are restated in the theme family, so the two cannot be two modifiers.",
38
+ "description": "Named theme (data-theme-name) and contrast preference (pref-contrast-more) together: under a theme the contrast promotions are restated in the theme family, so the two cannot be two modifiers. Deprecated, removed in the next major: default (the old name of business: mds-pref-theme still writes it until the next major, when its default becomes business); cool (a worked example of the theme axis, not a product theme: use business or editorial); warm (a worked example of the theme axis, not a product theme: use editorial).",
39
39
  "contexts": {
40
+ "business": [],
41
+ "business-contrast-more": [
42
+ {
43
+ "$ref": "../../../design-tokens/dist/dtcg/contrast-more.tokens.json"
44
+ }
45
+ ],
46
+ "editorial": [
47
+ {
48
+ "$ref": "../../../design-tokens/dist/dtcg/theme-editorial.tokens.json"
49
+ }
50
+ ],
51
+ "editorial-contrast-more": [
52
+ {
53
+ "$ref": "../../../design-tokens/dist/dtcg/contrast-more.tokens.json"
54
+ },
55
+ {
56
+ "$ref": "../../../design-tokens/dist/dtcg/theme-editorial.tokens.json"
57
+ },
58
+ {
59
+ "$ref": "../../../design-tokens/dist/dtcg/theme-editorial-contrast-more.tokens.json"
60
+ }
61
+ ],
40
62
  "default": [],
41
63
  "default-contrast-more": [
42
64
  {
@@ -76,7 +98,7 @@
76
98
  }
77
99
  ]
78
100
  },
79
- "default": "default"
101
+ "default": "business"
80
102
  },
81
103
  "corner-shape": {
82
104
  "description": "The data-corner-shape attribute: [data-corner-shape='<context>']. The default is the value of the :root block.",
@@ -88,8 +88,81 @@
88
88
  @apply max-w-title;
89
89
  }
90
90
 
91
- p {
92
- @apply max-w-title;
91
+ /* p takes the cap of the reset, max-w-text (the reading measure, #1204): a cap written
92
+ * here, in a later layer, would win over it. */
93
+
94
+ /* The room of mds-status-bar (#1203): while a bar is visible at the end of the window, the page
95
+ * ends that far above it, and a field reached with Tab stops above it too (WCAG 2.4.11). No
96
+ * script measures the bar: the room is its tallest for its content, from its own sheet, plus
97
+ * rhythm/between-fields. It is a box after the body, not a padding of html: a page that zeroes
98
+ * the padding of html out of any layer, as many resets do, wins over every layer and would drop
99
+ * it. A page that scrolls in a box of its own reads the same room from --magma-status-bar-room.
100
+ * A shorter bar leaves the rest empty, never covered.
101
+ *
102
+ * The tallest bar: the margin of its area (800), the inset of the bar (600 twice), the
103
+ * description on a line of its own (one line of caption, the limit of its content), the gap to
104
+ * the actions (400) and their row (a button, 900). Up to 480px the bar takes the width of the
105
+ * window and its actions stack (actions/stacked): each action after the first adds a button and
106
+ * rhythm/inline, up to three (actions/at-most-three). */
107
+
108
+ html:has(mds-status-bar[visible]) {
109
+ --magma-status-bar-room: calc(
110
+ --spacing(800) + 2 * --spacing(600) + var(--text-size-info-caption--line-height) +
111
+ --spacing(400) + --spacing(900) + var(--magma-rhythm-between-fields)
112
+ );
113
+
114
+ scroll-padding-bottom: var(--magma-status-bar-room);
115
+ }
116
+
117
+ html:has(mds-status-bar[visible])::after {
118
+ content: '';
119
+ display: block;
120
+ height: var(--magma-status-bar-room);
121
+ }
122
+
123
+ @media (width <= 480px) {
124
+ html:has(mds-status-bar[visible] > :nth-child(2)) {
125
+ --magma-status-bar-room: calc(
126
+ --spacing(800) + 2 * --spacing(600) + var(--text-size-info-caption--line-height) +
127
+ --spacing(400) + 2 * --spacing(900) + var(--magma-rhythm-inline) +
128
+ var(--magma-rhythm-between-fields)
129
+ );
130
+ }
131
+
132
+ html:has(mds-status-bar[visible] > :nth-child(3)) {
133
+ --magma-status-bar-room: calc(
134
+ --spacing(800) + 2 * --spacing(600) + var(--text-size-info-caption--line-height) +
135
+ --spacing(400) + 3 * --spacing(900) + 2 * var(--magma-rhythm-inline) +
136
+ var(--magma-rhythm-between-fields)
137
+ );
138
+ }
139
+ }
140
+
141
+ /* The bar of mds-header (#1189, surfaces/band): the header stands in the flow, sticky, so the
142
+ * page starts under it by itself; while it stays put it covers the top of the window, and a
143
+ * field reached with Shift+Tab stops under it (WCAG 2.4.11), rhythm/between-fields lower, as at
144
+ * the bar of mds-status-bar. No script measures the bar: it is one row, its inset (400 twice) and
145
+ * a button (900); the floating bar (`inline`) stands its margin lower, 600, and 400 up to 767px
146
+ * (--mds-header-inline-margin, -mobile). */
147
+
148
+ html:has(mds-header) {
149
+ scroll-padding-top: calc(
150
+ 2 * --spacing(400) + --spacing(900) + var(--magma-rhythm-between-fields)
151
+ );
152
+ }
153
+
154
+ html:has(mds-header[appearance='inline']) {
155
+ scroll-padding-top: calc(
156
+ --spacing(600) + 2 * --spacing(400) + --spacing(900) + var(--magma-rhythm-between-fields)
157
+ );
158
+ }
159
+
160
+ @media (width <= 767px) {
161
+ html:has(mds-header[appearance='inline']) {
162
+ scroll-padding-top: calc(
163
+ --spacing(400) + 2 * --spacing(400) + --spacing(900) + var(--magma-rhythm-between-fields)
164
+ );
165
+ }
93
166
  }
94
167
 
95
168
  /* The box of the hydrated components (against Tailwind's preflight) is kept by