@utrecht/component-library-css 1.0.0-alpha.49 → 1.0.0-alpha.490

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.
package/dist/html.css CHANGED
@@ -12,20 +12,17 @@
12
12
  * @license EUPL-1.2
13
13
  * Copyright (c) 2021 Robbert Broersma
14
14
  */
15
- /* stylelint-disable-next-line block-no-empty */
16
- /* stylelint-disable-next-line block-no-empty */
15
+ /* Collection of all semantic HTML styles in the component library */
17
16
  /**
18
17
  * @license EUPL-1.2
19
- * Copyright (c) 2021 Robbert Broersma
18
+ * Copyright (c) 2020-2022 Gemeente Utrecht
19
+ * Copyright (c) 2020-2022 Frameless B.V.
20
20
  */
21
21
  /**
22
22
  * @license EUPL-1.2
23
- * Copyright (c) 2021 Robbert Broersma
23
+ * Copyright (c) 2020-2022 Gemeente Utrecht
24
+ * Copyright (c) 2020-2022 Frameless B.V.
24
25
  */
25
- .utrecht-article, .utrecht-html article {
26
- max-inline-size: var(--utrecht-article-max-inline-size);
27
- }
28
-
29
26
  /**
30
27
  * @license EUPL-1.2
31
28
  * Copyright (c) 2021 Robbert Broersma
@@ -34,30 +31,6 @@
34
31
  * @license EUPL-1.2
35
32
  * Copyright (c) 2021 Robbert Broersma
36
33
  */
37
- .utrecht-blockquote, .utrecht-html blockquote {
38
- font-family: var(--utrecht-document-font-family);
39
- font-size: var(--utrecht-blockquote-font-size);
40
- margin-inline-start: var(--utrecht-blockquote-margin-inline-start);
41
- margin-inline-end: var(--utrecht-blockquote-margin-inline-end);
42
- }
43
-
44
- .utrecht-blockquote__attribution {
45
- color: var(--utrecht-blockquote-attribution-color, inherit);
46
- font-size: var(--utrecht-blockquote-attribution-font-size, inherit);
47
- }
48
-
49
- .utrecht-blockquote__content, .utrecht-html blockquote {
50
- --utrecht-document-color: var(--utrecht-blockquote-content-color, inherit);
51
- --utrecht-paragraph-font-size: var(--utrecht-blockquote-content-font-size, inherit);
52
- color: var(--utrecht-blockquote-content-color, inherit);
53
- font-size: var(--utrecht-blockquote-content-font-size, inherit);
54
- }
55
-
56
- .utrecht-blockquote--distanced, .utrecht-html blockquote {
57
- margin-block-start: var(--utrecht-blockquote-margin-block-start);
58
- margin-block-end: var(--utrecht-blockquote-margin-block-end);
59
- }
60
-
61
34
  /**
62
35
  * @license EUPL-1.2
63
36
  * Copyright (c) 2021 Robbert Broersma
@@ -67,272 +40,107 @@
67
40
  * Copyright (c) 2021 The Knights Who Say NIH! B.V.
68
41
  * Copyright (c) 2021 Gemeente Utrecht
69
42
  */
70
- .utrecht-button, .utrecht-html button {
71
- color: var(--utrecht-button-primary-action-color);
72
- font-size: var(--utrecht-button-font-size, var(--utrecht-document-font-family));
73
- font-family: var(--utrecht-button-font-family, var(--utrecht-document-font-family));
74
- font-weight: var(--utrecht-button-font-weight);
75
- background-color: var(--utrecht-button-primary-action-background-color);
76
- border-radius: var(--utrecht-button-border-radius);
77
- border-width: var(--utrecht-button-border-width);
78
- letter-spacing: var(--utrecht-button-letter-spacing);
79
- padding-inline-start: var(--utrecht-button-padding-inline-start);
80
- padding-inline-end: var(--utrecht-button-padding-inline-end);
81
- padding-block-start: var(--utrecht-button-padding-block-start);
82
- padding-block-end: var(--utrecht-button-padding-block-end);
83
- text-transform: var(--utrecht-button-text-transform);
84
- }
85
-
86
- .utrecht-button--distanced, .utrecht-html button {
87
- margin-inline-start: var(--utrecht-button-margin-inline-start);
88
- margin-inline-end: var(--utrecht-button-margin-inline-end);
89
- margin-block-start: var(--utrecht-button-margin-block-start);
90
- margin-block-end: var(--utrecht-button-margin-block-end);
91
- }
92
-
93
- .utrecht-button:disabled, .utrecht-html button:disabled,
94
- .utrecht-button--disabled {
95
- color: var(--utrecht-button-disabled-color);
96
- background-color: var(--utrecht-button-disabled-background-color);
97
- }
98
-
99
- .utrecht-button--focus, .utrecht-html button:focus,
100
- .utrecht-button:not(.utrecht-button--disabled):focus {
101
- outline-width: var(--utrecht-focus-outline-width, 0);
102
- outline-style: var(--utrecht-focus-outline-style, solid);
103
- outline-color: var(--utrecht-focus-outline-color, transparent);
104
- color: var(--utrecht-focus-color, inherit);
105
- box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
106
- outline-offset: 0;
107
- background-color: var(--utrecht-focus-background-color);
108
- }
109
-
110
- .utrecht-button--hover:not(:disabled), .utrecht-html button:not(:disabled):hover,
111
- .utrecht-button:hover:not(:disabled):not(.utrecht-button--disabled) {
112
- color: var(--utrecht-button-primary-action-color);
113
- background-color: var(--utrecht-button-primary-action-hover-background-color);
114
- transform: scale(var(--utrecht-button-focus-transform-scale, 1));
115
- }
116
-
117
43
  /**
118
44
  * @license EUPL-1.2
45
+ * Copyright (c) 2021 Gemeente Utrecht
119
46
  * Copyright (c) 2021 Robbert Broersma
120
47
  */
48
+ /* stylelint-disable-next-line block-no-empty */
121
49
  /**
122
50
  * @license EUPL-1.2
123
51
  * Copyright (c) 2021 Robbert Broersma
124
52
  */
125
- .utrecht-checkbox, .utrecht-html input[type=checkbox] {
126
- /* reset native margin for input[type="checkbox"] */
127
- margin-block-start: 0;
128
- margin-block-end: 0;
129
- margin-inline-start: 0;
130
- margin-inline-end: 0;
131
- }
132
-
133
53
  /**
134
54
  * @license EUPL-1.2
135
55
  * Copyright (c) 2021 Robbert Broersma
136
56
  */
137
57
  /**
138
58
  * @license EUPL-1.2
59
+ * Copyright (c) 2021 Gemeente Utrecht
139
60
  * Copyright (c) 2021 Robbert Broersma
140
61
  */
141
- .utrecht-emphasis--stressed, .utrecht-html em {
142
- font-style: var(--utrecht-emphasis-stressed-font-style, italic);
143
- }
144
-
145
- .utrecht-emphasis--strong, .utrecht-html strong {
146
- font-weight: var(--utrecht-emphasis-strong-font-weight, bold);
147
- }
148
-
62
+ /* stylelint-disable-next-line block-no-empty */
63
+ /* stylelint-disable-next-line block-no-empty */
149
64
  /**
150
65
  * @license EUPL-1.2
151
- * Copyright (c) 2021 Robbert Broersma
66
+ * Copyright (c) 2020-2022 Gemeente Utrecht
67
+ * Copyright (c) 2020-2022 Frameless B.V.
152
68
  */
153
69
  /**
154
70
  * @license EUPL-1.2
155
- * Copyright (c) 2021 Robbert Broersma
71
+ * Copyright (c) 2020-2022 Gemeente Utrecht
72
+ * Copyright (c) 2020-2022 Frameless B.V.
156
73
  */
157
- .utrecht-form-fieldset--distanced, .utrecht-html fieldset {
158
- margin-block-start: var(--utrecht-form-fieldset-margin-block-start, 0);
159
- margin-block-end: var(--utrecht-form-fieldset-margin-block-end, 0);
160
- }
161
-
162
- .utrecht-form-fieldset__legend, .utrecht-html legend {
163
- font-family: var(--utrecht-form-fieldset-legend-font-family, var(--utrecht-document-font-family));
164
- font-size: var(--utrecht-form-fieldset-legend-font-size);
165
- font-weight: var(--utrecht-form-fieldset-legend-font-weight);
166
- line-height: var(--utrecht-form-fieldset-legend-line-height);
167
- color: var(--utrecht-form-fieldset-legend-color, var(--utrecht-document-color, inherit));
168
- }
169
-
170
- .utrecht-form-fieldset__legend--distanced, .utrecht-html legend {
171
- margin-block-start: var(--utrecht-form-fieldset-legend-margin-block-start);
172
- margin-block-end: var(--utrecht-form-fieldset-legend-margin-block-end);
173
- }
174
-
175
- .utrecht-html fieldset {
176
- border: 0;
177
- margin: 0;
178
- min-width: 0;
179
- padding-block-end: 0;
180
- padding-block-start: 0.01em;
181
- padding-inline-end: 0;
182
- padding-inline-start: 0;
183
- }
184
-
185
- .utrecht-html legend {
186
- padding-inline-end: 0;
187
- padding-inline-start: 0;
188
- }
189
-
190
74
  /**
191
75
  * @license EUPL-1.2
192
- * Copyright (c) 2021 Robbert Broersma
76
+ * Copyright (c) 2020-2022 Gemeente Utrecht
77
+ * Copyright (c) 2020-2022 Frameless B.V.
78
+ */
79
+ /**
80
+ * @license EUPL-1.2
81
+ * Copyright (c) 2020-2022 Gemeente Utrecht
82
+ * Copyright (c) 2020-2022 Frameless B.V.
83
+ */
84
+ /**
85
+ * @license EUPL-1.2
86
+ * Copyright (c) 2020-2022 Gemeente Utrecht
87
+ * Copyright (c) 2020-2022 Frameless B.V.
193
88
  */
194
89
  /**
195
90
  * @license EUPL-1.2
196
91
  * Copyright (c) 2021 Robbert Broersma
197
92
  */
198
- .utrecht-form-label, .utrecht-html label {
199
- font-weight: var(--utrecht-form-label-font-weight);
200
- font-size: var(--utrecht-form-label-font-size);
201
- }
202
-
203
- .utrecht-form-label--checkbox, .utrecht-html input[type=checkbox] ~ label {
204
- font-weight: var(--utrecht-form-label-checkbox-font-weight, var(--utrecht-form-label-font-weight));
205
- }
206
-
207
- .utrecht-form-label--radio, .utrecht-html input[type=radio] ~ label {
208
- font-weight: var(--utrecht-form-label-radio-font-weight, var(--utrecht-form-label-font-weight));
209
- }
210
-
211
93
  /**
212
94
  * @license EUPL-1.2
213
95
  * Copyright (c) 2021 Robbert Broersma
214
96
  */
215
97
  /**
216
98
  * @license EUPL-1.2
217
- * Copyright (c) 2021 Gemeente Utrecht
218
99
  * Copyright (c) 2021 Robbert Broersma
219
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
220
100
  */
221
- .utrecht-heading-1, .utrecht-html h1 {
222
- font-family: var(--utrecht-heading-1-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
223
- font-size: var(--utrecht-heading-1-font-size);
224
- font-weight: var(--utrecht-heading-1-font-weight, var(--utrecht-heading-font-weight, bold));
225
- letter-spacing: var(--utrecht-heading-1-letter-spacing);
226
- line-height: var(--utrecht-heading-1-line-height);
227
- text-transform: var(--utrecht-heading-1-text-transform, inherit);
228
- color: var(--utrecht-heading-1-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
229
- }
230
-
231
- .utrecht-heading-1--distanced, .utrecht-html h1 {
232
- margin-block-start: var(--utrecht-heading-1-margin-block-start);
233
- margin-block-end: var(--utrecht-heading-1-margin-block-end);
234
- }
235
-
236
101
  /**
237
102
  * @license EUPL-1.2
238
103
  * Copyright (c) 2021 Robbert Broersma
239
104
  */
240
105
  /**
241
106
  * @license EUPL-1.2
242
- * Copyright (c) 2021 Gemeente Utrecht
243
107
  * Copyright (c) 2021 Robbert Broersma
244
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
245
108
  */
246
- .utrecht-heading-2, .utrecht-html h2 {
247
- font-family: var(--utrecht-heading-2-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
248
- font-size: var(--utrecht-heading-2-font-size);
249
- font-weight: var(--utrecht-heading-2-font-weight, var(--utrecht-heading-font-weight, bold));
250
- letter-spacing: var(--utrecht-heading-2-letter-spacing);
251
- line-height: var(--utrecht-heading-2-line-height);
252
- text-transform: var(--utrecht-heading-2-text-transform, inherit);
253
- color: var(--utrecht-heading-2-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
254
- }
255
-
256
- .utrecht-heading-2--distanced, .utrecht-html h2 {
257
- margin-block-start: var(--utrecht-heading-2-margin-block-start);
258
- margin-block-end: var(--utrecht-heading-2-margin-block-end);
259
- }
260
-
261
109
  /**
262
110
  * @license EUPL-1.2
263
111
  * Copyright (c) 2021 Robbert Broersma
264
112
  */
265
113
  /**
266
114
  * @license EUPL-1.2
267
- * Copyright (c) 2021 Gemeente Utrecht
115
+ * Copyright (c) 2020-2022 Gemeente Utrecht
116
+ * Copyright (c) 2020-2022 Frameless B.V.
117
+ */
118
+ /**
119
+ * @license EUPL-1.2
120
+ * Copyright (c) 2020-2022 Gemeente Utrecht
121
+ * Copyright (c) 2020-2022 Frameless B.V.
122
+ */
123
+ /**
124
+ * @license EUPL-1.2
268
125
  * Copyright (c) 2021 Robbert Broersma
269
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
270
126
  */
271
- .utrecht-heading-3, .utrecht-html h3 {
272
- font-family: var(--utrecht-heading-3-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
273
- font-size: var(--utrecht-heading-3-font-size);
274
- font-weight: var(--utrecht-heading-3-font-weight, var(--utrecht-heading-font-weight, bold));
275
- letter-spacing: var(--utrecht-heading-3-letter-spacing);
276
- line-height: var(--utrecht-heading-3-line-height);
277
- text-transform: var(--utrecht-heading-3-text-transform, inherit);
278
- color: var(--utrecht-heading-3-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
279
- }
280
-
281
- .utrecht-heading-3--distanced, .utrecht-html h3 {
282
- margin-block-start: var(--utrecht-heading-3-margin-block-start);
283
- margin-block-end: var(--utrecht-heading-3-margin-block-end);
284
- }
285
-
286
127
  /**
287
128
  * @license EUPL-1.2
288
129
  * Copyright (c) 2021 Robbert Broersma
289
130
  */
290
131
  /**
291
132
  * @license EUPL-1.2
292
- * Copyright (c) 2021 Gemeente Utrecht
293
133
  * Copyright (c) 2021 Robbert Broersma
294
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
295
134
  */
296
- .utrecht-heading-4, .utrecht-html h4 {
297
- font-family: var(--utrecht-heading-4-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
298
- font-size: var(--utrecht-heading-4-font-size);
299
- font-weight: var(--utrecht-heading-4-font-weight, var(--utrecht-heading-font-weight, bold));
300
- letter-spacing: var(--utrecht-heading-4-letter-spacing);
301
- line-height: var(--utrecht-heading-4-line-height);
302
- text-transform: var(--utrecht-heading-4-text-transform, inherit);
303
- color: var(--utrecht-heading-4-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
304
- }
305
-
306
- .utrecht-heading-4--distanced, .utrecht-html h4 {
307
- margin-block-start: var(--utrecht-heading-4-margin-block-start);
308
- margin-block-end: var(--utrecht-heading-4-margin-block-end);
309
- }
310
-
135
+ /* stylelint-disable-next-line block-no-empty */
311
136
  /**
312
137
  * @license EUPL-1.2
313
138
  * Copyright (c) 2021 Robbert Broersma
314
139
  */
315
140
  /**
316
141
  * @license EUPL-1.2
317
- * Copyright (c) 2021 Gemeente Utrecht
318
142
  * Copyright (c) 2021 Robbert Broersma
319
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
320
143
  */
321
- .utrecht-heading-5, .utrecht-html h5 {
322
- font-family: var(--utrecht-heading-5-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
323
- font-size: var(--utrecht-heading-5-font-size);
324
- font-weight: var(--utrecht-heading-5-font-weight, var(--utrecht-heading-font-weight, bold));
325
- letter-spacing: var(--utrecht-heading-5-letter-spacing);
326
- line-height: var(--utrecht-heading-5-line-height);
327
- text-transform: var(--utrecht-heading-5-text-transform, inherit);
328
- color: var(--utrecht-heading-5-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
329
- }
330
-
331
- .utrecht-heading-5--distanced, .utrecht-html h5 {
332
- margin-block-start: var(--utrecht-heading-5-margin-block-start);
333
- margin-block-end: var(--utrecht-heading-5-margin-block-end);
334
- }
335
-
336
144
  /**
337
145
  * @license EUPL-1.2
338
146
  * Copyright (c) 2021 Robbert Broersma
@@ -343,280 +151,170 @@
343
151
  * Copyright (c) 2021 Robbert Broersma
344
152
  * Copyright (c) 2021 The Knights Who Say NIH! B.V.
345
153
  */
346
- .utrecht-heading-6, .utrecht-html h6 {
347
- font-family: var(--utrecht-heading-6-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
348
- font-size: var(--utrecht-heading-6-font-size);
349
- font-weight: var(--utrecht-heading-6-font-weight, var(--utrecht-heading-font-weight, bold));
350
- letter-spacing: var(--utrecht-heading-6-letter-spacing);
351
- line-height: var(--utrecht-heading-6-line-height);
352
- text-transform: var(--utrecht-heading-6-text-transform, inherit);
353
- color: var(--utrecht-heading-6-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
354
- }
355
-
356
- .utrecht-heading-6--distanced, .utrecht-html h6 {
357
- margin-block-start: var(--utrecht-heading-6-margin-block-start);
358
- margin-block-end: var(--utrecht-heading-6-margin-block-end);
359
- }
360
-
361
154
  /**
362
155
  * @license EUPL-1.2
363
- * Copyright (c) 2021 Robbert Broersma
156
+ * Copyright (c) 2021-2022 Frameless B.V.
364
157
  */
365
- /* Collection of all semantic HTML styles in the component library */
366
158
  /**
367
159
  * @license EUPL-1.2
368
160
  * Copyright (c) 2021 Robbert Broersma
369
161
  */
370
162
  /**
371
163
  * @license EUPL-1.2
164
+ * Copyright (c) 2021 Gemeente Utrecht
372
165
  * Copyright (c) 2021 Robbert Broersma
166
+ * Copyright (c) 2021 The Knights Who Say NIH! B.V.
373
167
  */
374
- /* stylelint-disable-next-line block-no-empty */
375
- /* stylelint-disable-next-line block-no-empty */
376
168
  /**
377
169
  * @license EUPL-1.2
378
- * Copyright (c) 2021 Robbert Broersma
170
+ * Copyright (c) 2021-2022 Frameless B.V.
379
171
  */
380
172
  /**
381
173
  * @license EUPL-1.2
382
174
  * Copyright (c) 2021 Robbert Broersma
383
175
  */
384
- .utrecht-article, .utrecht-html article {
385
- max-inline-size: var(--utrecht-article-max-inline-size);
386
- }
387
-
388
176
  /**
389
177
  * @license EUPL-1.2
178
+ * Copyright (c) 2021 Gemeente Utrecht
390
179
  * Copyright (c) 2021 Robbert Broersma
180
+ * Copyright (c) 2021 The Knights Who Say NIH! B.V.
391
181
  */
392
182
  /**
393
183
  * @license EUPL-1.2
394
- * Copyright (c) 2021 Robbert Broersma
184
+ * Copyright (c) 2021-2022 Frameless B.V.
395
185
  */
396
- .utrecht-blockquote, .utrecht-html blockquote {
397
- font-family: var(--utrecht-document-font-family);
398
- font-size: var(--utrecht-blockquote-font-size);
399
- margin-inline-start: var(--utrecht-blockquote-margin-inline-start);
400
- margin-inline-end: var(--utrecht-blockquote-margin-inline-end);
401
- }
402
-
403
- .utrecht-blockquote__attribution {
404
- color: var(--utrecht-blockquote-attribution-color, inherit);
405
- font-size: var(--utrecht-blockquote-attribution-font-size, inherit);
406
- }
407
-
408
- .utrecht-blockquote__content, .utrecht-html blockquote {
409
- --utrecht-document-color: var(--utrecht-blockquote-content-color, inherit);
410
- --utrecht-paragraph-font-size: var(--utrecht-blockquote-content-font-size, inherit);
411
- color: var(--utrecht-blockquote-content-color, inherit);
412
- font-size: var(--utrecht-blockquote-content-font-size, inherit);
413
- }
414
-
415
- .utrecht-blockquote--distanced, .utrecht-html blockquote {
416
- margin-block-start: var(--utrecht-blockquote-margin-block-start);
417
- margin-block-end: var(--utrecht-blockquote-margin-block-end);
418
- }
419
-
420
186
  /**
421
187
  * @license EUPL-1.2
422
188
  * Copyright (c) 2021 Robbert Broersma
423
189
  */
424
190
  /**
425
191
  * @license EUPL-1.2
426
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
427
192
  * Copyright (c) 2021 Gemeente Utrecht
193
+ * Copyright (c) 2021 Robbert Broersma
194
+ * Copyright (c) 2021 The Knights Who Say NIH! B.V.
428
195
  */
429
- .utrecht-button, .utrecht-html button {
430
- color: var(--utrecht-button-primary-action-color);
431
- font-size: var(--utrecht-button-font-size, var(--utrecht-document-font-family));
432
- font-family: var(--utrecht-button-font-family, var(--utrecht-document-font-family));
433
- font-weight: var(--utrecht-button-font-weight);
434
- background-color: var(--utrecht-button-primary-action-background-color);
435
- border-radius: var(--utrecht-button-border-radius);
436
- border-width: var(--utrecht-button-border-width);
437
- letter-spacing: var(--utrecht-button-letter-spacing);
438
- padding-inline-start: var(--utrecht-button-padding-inline-start);
439
- padding-inline-end: var(--utrecht-button-padding-inline-end);
440
- padding-block-start: var(--utrecht-button-padding-block-start);
441
- padding-block-end: var(--utrecht-button-padding-block-end);
442
- text-transform: var(--utrecht-button-text-transform);
443
- }
444
-
445
- .utrecht-button--distanced, .utrecht-html button {
446
- margin-inline-start: var(--utrecht-button-margin-inline-start);
447
- margin-inline-end: var(--utrecht-button-margin-inline-end);
448
- margin-block-start: var(--utrecht-button-margin-block-start);
449
- margin-block-end: var(--utrecht-button-margin-block-end);
450
- }
451
-
452
- .utrecht-button:disabled, .utrecht-html button:disabled,
453
- .utrecht-button--disabled {
454
- color: var(--utrecht-button-disabled-color);
455
- background-color: var(--utrecht-button-disabled-background-color);
456
- }
457
-
458
- .utrecht-button--focus, .utrecht-html button:focus,
459
- .utrecht-button:not(.utrecht-button--disabled):focus {
460
- outline-width: var(--utrecht-focus-outline-width, 0);
461
- outline-style: var(--utrecht-focus-outline-style, solid);
462
- outline-color: var(--utrecht-focus-outline-color, transparent);
463
- color: var(--utrecht-focus-color, inherit);
464
- box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
465
- outline-offset: 0;
466
- background-color: var(--utrecht-focus-background-color);
467
- }
468
-
469
- .utrecht-button--hover:not(:disabled), .utrecht-html button:not(:disabled):hover,
470
- .utrecht-button:hover:not(:disabled):not(.utrecht-button--disabled) {
471
- color: var(--utrecht-button-primary-action-color);
472
- background-color: var(--utrecht-button-primary-action-hover-background-color);
473
- transform: scale(var(--utrecht-button-focus-transform-scale, 1));
474
- }
475
-
476
196
  /**
477
197
  * @license EUPL-1.2
478
- * Copyright (c) 2021 Robbert Broersma
198
+ * Copyright (c) 2021-2022 Frameless B.V.
479
199
  */
480
200
  /**
481
201
  * @license EUPL-1.2
482
202
  * Copyright (c) 2021 Robbert Broersma
483
203
  */
484
- .utrecht-checkbox, .utrecht-html input[type=checkbox] {
485
- /* reset native margin for input[type="checkbox"] */
486
- margin-block-start: 0;
487
- margin-block-end: 0;
488
- margin-inline-start: 0;
489
- margin-inline-end: 0;
490
- }
491
-
492
204
  /**
493
205
  * @license EUPL-1.2
206
+ * Copyright (c) 2021 Gemeente Utrecht
494
207
  * Copyright (c) 2021 Robbert Broersma
208
+ * Copyright (c) 2021 The Knights Who Say NIH! B.V.
495
209
  */
496
210
  /**
497
211
  * @license EUPL-1.2
498
- * Copyright (c) 2021 Robbert Broersma
212
+ * Copyright (c) 2021-2022 Frameless B.V.
499
213
  */
500
- .utrecht-emphasis--stressed, .utrecht-html em {
501
- font-style: var(--utrecht-emphasis-stressed-font-style, italic);
502
- }
503
-
504
- .utrecht-emphasis--strong, .utrecht-html strong {
505
- font-weight: var(--utrecht-emphasis-strong-font-weight, bold);
506
- }
507
-
508
214
  /**
509
215
  * @license EUPL-1.2
510
216
  * Copyright (c) 2021 Robbert Broersma
511
217
  */
512
218
  /**
513
219
  * @license EUPL-1.2
220
+ * Copyright (c) 2021 Gemeente Utrecht
514
221
  * Copyright (c) 2021 Robbert Broersma
222
+ * Copyright (c) 2021 The Knights Who Say NIH! B.V.
515
223
  */
516
- .utrecht-form-fieldset--distanced, .utrecht-html fieldset {
517
- margin-block-start: var(--utrecht-form-fieldset-margin-block-start, 0);
518
- margin-block-end: var(--utrecht-form-fieldset-margin-block-end, 0);
519
- }
520
-
521
- .utrecht-form-fieldset__legend, .utrecht-html legend {
522
- font-family: var(--utrecht-form-fieldset-legend-font-family, var(--utrecht-document-font-family));
523
- font-size: var(--utrecht-form-fieldset-legend-font-size);
524
- font-weight: var(--utrecht-form-fieldset-legend-font-weight);
525
- line-height: var(--utrecht-form-fieldset-legend-line-height);
526
- color: var(--utrecht-form-fieldset-legend-color, var(--utrecht-document-color, inherit));
527
- }
528
-
529
- .utrecht-form-fieldset__legend--distanced, .utrecht-html legend {
530
- margin-block-start: var(--utrecht-form-fieldset-legend-margin-block-start);
531
- margin-block-end: var(--utrecht-form-fieldset-legend-margin-block-end);
532
- }
533
-
534
- .utrecht-html fieldset {
535
- border: 0;
536
- margin: 0;
537
- min-width: 0;
538
- padding-block-end: 0;
539
- padding-block-start: 0.01em;
540
- padding-inline-end: 0;
541
- padding-inline-start: 0;
542
- }
543
-
544
- .utrecht-html legend {
545
- padding-inline-end: 0;
546
- padding-inline-start: 0;
547
- }
548
-
549
224
  /**
550
225
  * @license EUPL-1.2
551
- * Copyright (c) 2021 Robbert Broersma
226
+ * Copyright (c) 2021-2022 Frameless B.V.
552
227
  */
553
228
  /**
554
229
  * @license EUPL-1.2
555
230
  * Copyright (c) 2021 Robbert Broersma
556
231
  */
557
- .utrecht-form-label, .utrecht-html label {
558
- font-weight: var(--utrecht-form-label-font-weight);
559
- font-size: var(--utrecht-form-label-font-size);
560
- }
561
-
562
- .utrecht-form-label--checkbox, .utrecht-html input[type=checkbox] ~ label {
563
- font-weight: var(--utrecht-form-label-checkbox-font-weight, var(--utrecht-form-label-font-weight));
564
- }
565
-
566
- .utrecht-form-label--radio, .utrecht-html input[type=radio] ~ label {
567
- font-weight: var(--utrecht-form-label-radio-font-weight, var(--utrecht-form-label-font-weight));
568
- }
569
-
570
232
  /**
571
233
  * @license EUPL-1.2
572
- * Copyright (c) 2021 Robbert Broersma
234
+ * Copyright (c) 2022 Gemeente Utrecht
235
+ * Copyright (c) 2022 Robbert Broersma
236
+ * Copyright (c) 2022 The Knights Who Say NIH! B.V.
573
237
  */
574
238
  /**
575
239
  * @license EUPL-1.2
576
- * Copyright (c) 2021 Gemeente Utrecht
577
240
  * Copyright (c) 2021 Robbert Broersma
578
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
579
241
  */
580
- .utrecht-heading-1, .utrecht-html h1 {
581
- font-family: var(--utrecht-heading-1-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
582
- font-size: var(--utrecht-heading-1-font-size);
583
- font-weight: var(--utrecht-heading-1-font-weight, var(--utrecht-heading-font-weight, bold));
584
- letter-spacing: var(--utrecht-heading-1-letter-spacing);
585
- line-height: var(--utrecht-heading-1-line-height);
586
- text-transform: var(--utrecht-heading-1-text-transform, inherit);
587
- color: var(--utrecht-heading-1-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
588
- }
589
-
590
- .utrecht-heading-1--distanced, .utrecht-html h1 {
591
- margin-block-start: var(--utrecht-heading-1-margin-block-start);
592
- margin-block-end: var(--utrecht-heading-1-margin-block-end);
593
- }
594
-
595
242
  /**
596
243
  * @license EUPL-1.2
597
- * Copyright (c) 2021 Robbert Broersma
244
+ * Copyright (c) 2021 The Knights Who Say NIH! B.V.
245
+ * Copyright (c) 2021 Gemeente Utrecht
598
246
  */
247
+ /* stylelint-disable scss/no-global-function-names */
599
248
  /**
600
249
  * @license EUPL-1.2
601
250
  * Copyright (c) 2021 Gemeente Utrecht
602
251
  * Copyright (c) 2021 Robbert Broersma
603
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
604
252
  */
605
- .utrecht-heading-2, .utrecht-html h2 {
606
- font-family: var(--utrecht-heading-2-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
607
- font-size: var(--utrecht-heading-2-font-size);
608
- font-weight: var(--utrecht-heading-2-font-weight, var(--utrecht-heading-font-weight, bold));
609
- letter-spacing: var(--utrecht-heading-2-letter-spacing);
610
- line-height: var(--utrecht-heading-2-line-height);
611
- text-transform: var(--utrecht-heading-2-text-transform, inherit);
612
- color: var(--utrecht-heading-2-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
613
- }
253
+ /* stylelint-disable-next-line block-no-empty */
254
+ /*
614
255
 
615
- .utrecht-heading-2--distanced, .utrecht-html h2 {
616
- margin-block-start: var(--utrecht-heading-2-margin-block-start);
617
- margin-block-end: var(--utrecht-heading-2-margin-block-end);
618
- }
256
+ # CSS implementation
619
257
 
258
+ ## `text-decoration-skip`
259
+
260
+ `text-decoration-skip` can be helpful to avoid making some texts unreadable.
261
+ For example by obscuring Arabic diacritics.
262
+
263
+ However, the combination of a greater thickness and skipping this thick underline
264
+ leads to a very unappealing rendering of the underline. To avoid this,
265
+ `text-decoration-skip` is disabled for interactive states.
266
+
267
+ For design token configurations that have identical thickness for normal and interactive
268
+ states, this will lead to the (undesirable) effect that the focus/hover effect is switching
269
+ from an interrupted to an uninterrupted underline (for some texts).
270
+
271
+ Apart from making `skip-ink` configurable for normal/focus/hover, there is no good solution yet.
272
+
273
+ ---
274
+
275
+ Disabling `text-decoration-skip` for interactive states obscures some texts, and we assume for now
276
+ that moving the pointer away from a link or having focus elsewhere first is simple enough to
277
+ not make this too inconvenient.
278
+
279
+ ---
280
+
281
+ Some folks implement the underline of links using `border-bottom` or even using a finely crafted
282
+ `linear-gradient()` with a solid color at the bottom and transparent behind the text. These approaches
283
+ would unfortunately not be able to provide the improved readability of `text-decoration-skip`.
284
+
285
+ ## `text-decoration-thickness`
286
+
287
+ Varying `text-decoration-thickness` can be used to distinguish interactive states.
288
+
289
+ ---
290
+
291
+ `text-decoration-thickness` appears to have rendering differences between Chrome and Safari.
292
+ In Safari the line becomes thicker with extra pixels added to the bottom, while in Chrome
293
+ the underline offset also seems to increase along with the thickness, which effectively means
294
+ the underline is closer to the next line than in Safari.
295
+
296
+ ---
297
+
298
+ It might be nice to use font-relative units for `text-decoration-thickness`, and that is why we
299
+ use the `max()` function to ensure the underline remains visible for every font size.
300
+
301
+ ## `transition`
302
+
303
+ `text-decoration-thickness` could be a candidate for animating between interactive states,
304
+ however browsers don't seem to have implemented great looking supixel tweening yet.
305
+
306
+ `text-decoration-skip` also makes the transition more challenging to implement.
307
+
308
+ */
309
+ /* stylelint-disable-next-line block-no-empty */
310
+ /* stylelint-disable-next-line block-no-empty */
311
+ /* stylelint-disable-next-line block-no-empty */
312
+ /* stylelint-disable-next-line block-no-empty */
313
+ /**
314
+ * Link for elements such as `<img>` or `<article>`, that are not inline elements or plain text.
315
+ *
316
+ * Changing `display: inline` to `inline-block` ensures the focus outline is rendered around the entire box.
317
+ */
620
318
  /**
621
319
  * @license EUPL-1.2
622
320
  * Copyright (c) 2021 Robbert Broersma
@@ -625,48 +323,28 @@
625
323
  * @license EUPL-1.2
626
324
  * Copyright (c) 2021 Gemeente Utrecht
627
325
  * Copyright (c) 2021 Robbert Broersma
628
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
629
326
  */
630
- .utrecht-heading-3, .utrecht-html h3 {
631
- font-family: var(--utrecht-heading-3-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
632
- font-size: var(--utrecht-heading-3-font-size);
633
- font-weight: var(--utrecht-heading-3-font-weight, var(--utrecht-heading-font-weight, bold));
634
- letter-spacing: var(--utrecht-heading-3-letter-spacing);
635
- line-height: var(--utrecht-heading-3-line-height);
636
- text-transform: var(--utrecht-heading-3-text-transform, inherit);
637
- color: var(--utrecht-heading-3-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
638
- }
639
-
640
- .utrecht-heading-3--distanced, .utrecht-html h3 {
641
- margin-block-start: var(--utrecht-heading-3-margin-block-start);
642
- margin-block-end: var(--utrecht-heading-3-margin-block-end);
643
- }
644
-
645
327
  /**
646
328
  * @license EUPL-1.2
647
329
  * Copyright (c) 2021 Robbert Broersma
648
330
  */
649
331
  /**
650
332
  * @license EUPL-1.2
333
+ * Copyright (c) 2021 Robbert Broersma
651
334
  * Copyright (c) 2021 Gemeente Utrecht
335
+ */
336
+ /**
337
+ * @license EUPL-1.2
652
338
  * Copyright (c) 2021 Robbert Broersma
339
+ */
340
+ /**
341
+ * @license EUPL-1.2
653
342
  * Copyright (c) 2021 The Knights Who Say NIH! B.V.
654
343
  */
655
- .utrecht-heading-4, .utrecht-html h4 {
656
- font-family: var(--utrecht-heading-4-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
657
- font-size: var(--utrecht-heading-4-font-size);
658
- font-weight: var(--utrecht-heading-4-font-weight, var(--utrecht-heading-font-weight, bold));
659
- letter-spacing: var(--utrecht-heading-4-letter-spacing);
660
- line-height: var(--utrecht-heading-4-line-height);
661
- text-transform: var(--utrecht-heading-4-text-transform, inherit);
662
- color: var(--utrecht-heading-4-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
663
- }
664
-
665
- .utrecht-heading-4--distanced, .utrecht-html h4 {
666
- margin-block-start: var(--utrecht-heading-4-margin-block-start);
667
- margin-block-end: var(--utrecht-heading-4-margin-block-end);
668
- }
669
-
344
+ /**
345
+ * @license EUPL-1.2
346
+ * Copyright (c) 2021 Gemeente Utrecht
347
+ */
670
348
  /**
671
349
  * @license EUPL-1.2
672
350
  * Copyright (c) 2021 Robbert Broersma
@@ -675,23 +353,13 @@
675
353
  * @license EUPL-1.2
676
354
  * Copyright (c) 2021 Gemeente Utrecht
677
355
  * Copyright (c) 2021 Robbert Broersma
678
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
679
356
  */
680
- .utrecht-heading-5, .utrecht-html h5 {
681
- font-family: var(--utrecht-heading-5-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
682
- font-size: var(--utrecht-heading-5-font-size);
683
- font-weight: var(--utrecht-heading-5-font-weight, var(--utrecht-heading-font-weight, bold));
684
- letter-spacing: var(--utrecht-heading-5-letter-spacing);
685
- line-height: var(--utrecht-heading-5-line-height);
686
- text-transform: var(--utrecht-heading-5-text-transform, inherit);
687
- color: var(--utrecht-heading-5-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
688
- }
689
-
690
- .utrecht-heading-5--distanced, .utrecht-html h5 {
691
- margin-block-start: var(--utrecht-heading-5-margin-block-start);
692
- margin-block-end: var(--utrecht-heading-5-margin-block-end);
693
- }
694
-
357
+ /* stylelint-disable-next-line block-no-empty */
358
+ /* stylelint-disable-next-line block-no-empty */
359
+ /**
360
+ * @license EUPL-1.2
361
+ * Copyright (c) 2021 Robbert Broersma
362
+ */
695
363
  /**
696
364
  * @license EUPL-1.2
697
365
  * Copyright (c) 2021 Robbert Broersma
@@ -700,75 +368,19 @@
700
368
  * @license EUPL-1.2
701
369
  * Copyright (c) 2021 Gemeente Utrecht
702
370
  * Copyright (c) 2021 Robbert Broersma
703
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
704
371
  */
705
- .utrecht-heading-6, .utrecht-html h6 {
706
- font-family: var(--utrecht-heading-6-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
707
- font-size: var(--utrecht-heading-6-font-size);
708
- font-weight: var(--utrecht-heading-6-font-weight, var(--utrecht-heading-font-weight, bold));
709
- letter-spacing: var(--utrecht-heading-6-letter-spacing);
710
- line-height: var(--utrecht-heading-6-line-height);
711
- text-transform: var(--utrecht-heading-6-text-transform, inherit);
712
- color: var(--utrecht-heading-6-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
713
- }
714
-
715
- .utrecht-heading-6--distanced, .utrecht-html h6 {
716
- margin-block-start: var(--utrecht-heading-6-margin-block-start);
717
- margin-block-end: var(--utrecht-heading-6-margin-block-end);
718
- }
719
-
372
+ /* stylelint-disable-next-line block-no-empty */
373
+ /* stylelint-disable-next-line block-no-empty */
720
374
  /**
721
375
  * @license EUPL-1.2
722
376
  * Copyright (c) 2021 Robbert Broersma
723
377
  */
724
378
  /**
725
379
  * @license EUPL-1.2
726
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
727
380
  * Copyright (c) 2021 Gemeente Utrecht
381
+ * Copyright (c) 2021 Robbert Broersma
382
+ * Copyright (c) 2021 The Knights Who Say NIH! B.V.
728
383
  */
729
- .utrecht-link, .utrecht-html a:link {
730
- text-decoration: var(--utrecht-link-text-decoration, underline);
731
- color: var(--utrecht-link-color, blue);
732
- }
733
-
734
- .utrecht-link:visited,
735
- .utrecht-link--visited,
736
- .utrecht-html a:visited {
737
- color: var(--utrecht-link-visited-color, var(--utrecht-link-color));
738
- }
739
-
740
- .utrecht-link:hover,
741
- .utrecht-link--hover,
742
- .utrecht-html a:hover {
743
- color: var(--utrecht-link-hover-color, var(--utrecht-link-color));
744
- text-decoration: var(--utrecht-link-hover-text-decoration, var(--utrecht-link-text-decoration, underline));
745
- }
746
-
747
- .utrecht-link:active,
748
- .utrecht-link--active,
749
- .utrecht-html a:active {
750
- color: var(--utrecht-link-active-color, var(--utrecht-link-color));
751
- }
752
-
753
- .utrecht-link:focus,
754
- .utrecht-link--focus,
755
- .utrecht-html a:focus {
756
- color: var(--utrecht-link-focus-color, var(--utrecht-link-color));
757
- text-decoration: var(--utrecht-link-focus-text-decoration, var(--utrecht-link-text-decoration, underline));
758
- outline-width: var(--utrecht-focus-outline-width, 0);
759
- outline-style: var(--utrecht-focus-outline-style, solid);
760
- outline-color: var(--utrecht-focus-outline-color, transparent);
761
- color: var(--utrecht-focus-color, inherit);
762
- box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
763
- outline-offset: 0;
764
- background-color: var(--utrecht-focus-background-color);
765
- }
766
-
767
- /* stylelint-disable-next-line block-no-empty */
768
- .utrecht-link--telephone, .utrecht-html a[href^="tel:" i] {
769
- white-space: nowrap;
770
- }
771
-
772
384
  /**
773
385
  * @license EUPL-1.2
774
386
  * Copyright (c) 2021 Robbert Broersma
@@ -776,65 +388,28 @@
776
388
  /**
777
389
  * @license EUPL-1.2
778
390
  * Copyright (c) 2021 Robbert Broersma
779
- * Copyright (c) 2021 Gemeente Utrecht
780
391
  */
781
- .utrecht-ordered-list, .utrecht-html ol {
782
- font-family: var(--utrecht-document-font-family, inherit);
783
- }
784
-
785
- .utrecht-ordered-list--distanced, .utrecht-html ol {
786
- margin-block-end: var(--utrecht-ordered-list-margin-block-end);
787
- margin-block-start: var(--utrecht-ordered-list-margin-block-start);
788
- }
789
-
790
- .utrecht-ordered-list__item, .utrecht-html ol > li {
791
- margin-block-end: var(--utrecht-ordered-list-item-margin-block-end);
792
- margin-block-start: var(--utrecht-ordered-list-item-margin-block-start);
793
- }
794
-
392
+ /* stylelint-disable-next-line block-no-empty */
393
+ /* stylelint-disable-next-line block-no-empty */
394
+ /* stylelint-disable selector-class-pattern */
795
395
  /**
796
396
  * @license EUPL-1.2
797
397
  * Copyright (c) 2021 Robbert Broersma
798
398
  */
799
399
  /**
800
400
  * @license EUPL-1.2
801
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
401
+ * Copyright (c) 2021 Robbert Broersma
802
402
  */
803
- .utrecht-paragraph, .utrecht-html p {
804
- color: var(--utrecht-document-color, inherit);
805
- font-family: var(--utrecht-paragraph-font-family, var(--utrecht-document-font-family, inherit));
806
- font-size: var(--utrecht-paragraph-font-size, var(--utrecht-document-font-size, inherit));
807
- font-weight: var(--utrecht-paragraph-font-weight, inherit);
808
- line-height: var(--utrecht-paragraph-line-height, var(--utrecht-document-line-height, inherit));
809
- }
810
-
811
- .utrecht-paragraph--lead, .utrecht-html p.lead {
812
- font-size: var(--utrecht-paragraph-lead-font-size, inherit);
813
- font-weight: var(--utrecht-paragraph-lead-font-weight, inherit);
814
- line-height: var(--utrecht-paragraph-lead-line-height, inherit);
815
- }
816
-
817
- .utrecht-paragraph--distanced, .utrecht-html * ~ p {
818
- margin-block-start: var(--utrecht-paragraph-margin-block-start);
819
- margin-block-end: var(--utrecht-paragraph-margin-block-end);
820
- }
821
-
822
403
  /**
823
404
  * @license EUPL-1.2
824
405
  * Copyright (c) 2021 Gemeente Utrecht
406
+ * Copyright (c) 2021 Robbert Broersma
825
407
  */
408
+ /* stylelint-disable-next-line block-no-empty */
826
409
  /**
827
410
  * @license EUPL-1.2
828
- * Copyright (c) 2021 Gemeente Utrecht
411
+ * Copyright (c) 2021 Robbert Broersma
829
412
  */
830
- .utrecht-radio-button, .utrecht-html input[type=radio] {
831
- /* reset native margin for input[type="radio"] */
832
- margin-block-start: 0;
833
- margin-block-end: 0;
834
- margin-inline-start: 0;
835
- margin-inline-end: 0;
836
- }
837
-
838
413
  /**
839
414
  * @license EUPL-1.2
840
415
  * Copyright (c) 2021 Robbert Broersma
@@ -843,16 +418,8 @@
843
418
  * @license EUPL-1.2
844
419
  * Copyright (c) 2021 Gemeente Utrecht
845
420
  * Copyright (c) 2021 Robbert Broersma
846
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
847
421
  */
848
- .utrecht-separator, .utrecht-html hr {
849
- border-style: solid;
850
- border-color: var(--utrecht-separator-color);
851
- border-width: 0 0 var(--utrecht-separator-width) 0;
852
- margin-block-start: var(--utrecht-separator-margin-block-start);
853
- margin-block-end: var(--utrecht-separator-margin-block-end);
854
- }
855
-
422
+ /* stylelint-disable-next-line block-no-empty */
856
423
  /**
857
424
  * @license EUPL-1.2
858
425
  * Copyright (c) 2021 Robbert Broersma
@@ -860,649 +427,1193 @@
860
427
  /**
861
428
  * @license EUPL-1.2
862
429
  * Copyright (c) 2021 Robbert Broersma
430
+ * Copyright (c) 2021 Gemeente Utrecht
863
431
  */
864
- .utrecht-table, .utrecht-html table {
865
- border-collapse: collapse;
866
- width: 100%;
432
+ /* Collection of all semantic HTML styles in the component library */
433
+ .utrecht-html {
434
+ /* override the `:focus` selector above */
435
+ /* stylelint-disable-next-line no-descending-specificity */
436
+ /* stylelint-disable selector-class-pattern */
437
+ --utrecht-space-around: 1;
867
438
  }
868
-
869
- .utrecht-table--distanced, .utrecht-html table {
870
- margin-block-end: var(--utrecht-table-margin-block-end);
871
- margin-block-start: var(--utrecht-table-margin-block-start);
439
+ .utrecht-html article {
440
+ max-inline-size: var(--utrecht-article-max-inline-size);
872
441
  }
873
-
874
- .utrecht-table__caption, .utrecht-html caption {
875
- font-weight: var(--utrecht-table-caption-font-weight);
876
- font-family: var(--utrecht-table-caption-font-family);
877
- font-size: var(--utrecht-table-caption-font-size);
878
- color: var(--utrecht-table-caption-color);
879
- line-height: var(--utrecht-table-caption-line-height);
880
- margin-block-end: var(--utrecht-table-caption-margin-block-end);
881
- text-align: var(--utrecht-table-caption-text-align, center);
442
+ .utrecht-html blockquote {
443
+ background-color: var(--utrecht-blockquote-background-color);
444
+ color: var(--utrecht-blockquote-color);
445
+ font-family: var(--utrecht-document-font-family);
446
+ font-size: var(--utrecht-blockquote-font-size);
447
+ font-style: var(--utrecht-blockquote-font-style);
448
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-blockquote-margin-block-end, 0));
449
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-blockquote-margin-block-start, 0));
450
+ margin-inline-end: var(--utrecht-blockquote-margin-inline-end);
451
+ margin-inline-start: var(--utrecht-blockquote-margin-inline-start);
452
+ padding-block-end: var(--utrecht-blockquote-padding-block-end);
453
+ padding-block-start: var(--utrecht-blockquote-padding-block-start);
454
+ padding-inline-end: var(--utrecht-blockquote-padding-inline-end);
455
+ padding-inline-start: var(--utrecht-blockquote-padding-inline-start);
456
+ --utrecht-document-color: var(--utrecht-blockquote-content-color, inherit);
457
+ --utrecht-paragraph-font-size: var(--utrecht-blockquote-content-font-size, inherit);
458
+ color: var(--utrecht-blockquote-content-color, inherit);
459
+ font-size: var(--utrecht-blockquote-content-font-size, inherit);
460
+ --utrecht-space-around: 1;
461
+ }
462
+ .utrecht-html input[type=button i],
463
+ .utrecht-html input[type=reset i],
464
+ .utrecht-html input[type=submit i],
465
+ .utrecht-html button {
466
+ /*
467
+ `--_utrecht-button-hint` is the internal prefix for the applied optional hint, it is not an API.
468
+ The hint color takes priority over the appearance color.
469
+
470
+ `--_utrecht-button-appearance` is the internal prefix for the appearance
471
+ (primary-action, secondary-action or subtle), it is not an API.
472
+ */
473
+ --_utrecht-button-background-color: var(
474
+ --_utrecht-button-hint-background-color,
475
+ var(--_utrecht-button-appearance-background-color, var(--utrecht-button-background-color))
476
+ );
477
+ --_utrecht-button-color: var(
478
+ --_utrecht-button-hint-color,
479
+ var(--_utrecht-button-appearance-color, var(--utrecht-button-color))
480
+ );
481
+ --_utrecht-button-border-color: var(
482
+ --_utrecht-button-hint-border-color,
483
+ var(--_utrecht-button-appearance-border-color, var(--utrecht-button-border-color, transparent))
484
+ );
485
+ --_utrecht-button-border-bottom-color: var(
486
+ --_utrecht-button-hint-border-bottom-color,
487
+ var(
488
+ --_utrecht-button-hint-border-color,
489
+ var(
490
+ --_utrecht-button-appearance-border-bottom-color,
491
+ var(
492
+ --_utrecht-button-appearance-border-color,
493
+ var(--utrecht-button-border-bottom-color, var(--utrecht-button-border-color, transparent))
494
+ )
495
+ )
496
+ )
497
+ );
498
+ --_utrecht-button-disabled-background-color: var(
499
+ --_utrecht-button-hint-disabled-background-color,
500
+ var(
501
+ --_utrecht-button-appearance-disabled-background-color,
502
+ var(--utrecht-button-disabled-background-color, var(--utrecht-button-background-color))
503
+ )
504
+ );
505
+ --_utrecht-button-disabled-border-color: var(
506
+ --_utrecht-button-hint-disabled-border-color,
507
+ var(
508
+ --_utrecht-button-appearance-disabled-border-color,
509
+ var(--utrecht-button-disabled-border-color, var(--utrecht-button-border-color))
510
+ )
511
+ );
512
+ --_utrecht-button-disabled-color: var(
513
+ --_utrecht-button-hint-disabled-color,
514
+ var(--_utrecht-button-appearance-disabled-color, var(--utrecht-button-disabled-color, var(--utrecht-button-color)))
515
+ );
516
+ --_utrecht-button-focus-background-color: var(
517
+ --_utrecht-button-hint-focus-background-color,
518
+ var(
519
+ --_utrecht-button-hint-background-color,
520
+ var(
521
+ --_utrecht-button-appearance-focus-background-color,
522
+ var(
523
+ --_utrecht-button-appearance-background-color,
524
+ var(--utrecht-button-focus-background-color, var(--utrecht-button-background-color))
525
+ )
526
+ )
527
+ )
528
+ );
529
+ --_utrecht-button-focus-border-color: var(
530
+ --_utrecht-button-hint-focus-border-color,
531
+ var(
532
+ --_utrecht-button-hint-border-color,
533
+ var(
534
+ --_utrecht-button-appearance-focus-border-color,
535
+ var(
536
+ --_utrecht-button-appearance-border-color,
537
+ var(--utrecht-button-focus-border-color, var(--utrecht-button-border-color))
538
+ )
539
+ )
540
+ )
541
+ );
542
+ --_utrecht-button-focus-color: var(
543
+ --_utrecht-button-hint-focus-color,
544
+ var(
545
+ --_utrecht-button-hint-color,
546
+ var(
547
+ --_utrecht-button-appearance-focus-color,
548
+ var(--_utrecht-button-appearance-color, var(--utrecht-button-focus-color, var(--utrecht-button-color)))
549
+ )
550
+ )
551
+ );
552
+ --_utrecht-button-hover-background-color: var(
553
+ --_utrecht-button-hint-hover-background-color,
554
+ var(
555
+ --_utrecht-button-hint-background-color,
556
+ var(
557
+ --_utrecht-button-appearance-hover-background-color,
558
+ var(
559
+ --_utrecht-button-appearance-background-color,
560
+ var(--utrecht-button-hover-background-color, var(--utrecht-button-background-color))
561
+ )
562
+ )
563
+ )
564
+ );
565
+ --_utrecht-button-hover-border-color: var(
566
+ --_utrecht-button-hint-hover-border-color,
567
+ var(
568
+ --_utrecht-button-hint-border-color,
569
+ var(
570
+ --_utrecht-button-appearance-hover-border-color,
571
+ var(
572
+ --_utrecht-button-appearance-border-color,
573
+ var(--utrecht-button-hover-border-color, var(--utrecht-button-border-color))
574
+ )
575
+ )
576
+ )
577
+ );
578
+ --_utrecht-button-hover-color: var(
579
+ --_utrecht-button-hint-hover-color,
580
+ var(
581
+ --_utrecht-button-hint-color,
582
+ var(
583
+ --_utrecht-button-appearance-hover-color,
584
+ var(--_utrecht-button-appearance-color, var(--utrecht-button-hover-color, var(--utrecht-button-color)))
585
+ )
586
+ )
587
+ );
588
+ --_utrecht-button-active-background-color: var(
589
+ --_utrecht-button-hint-active-background-color,
590
+ var(
591
+ --_utrecht-button-hint-background-color,
592
+ var(
593
+ --_utrecht-button-appearance-active-background-color,
594
+ var(
595
+ --_utrecht-button-appearance-background-color,
596
+ var(--utrecht-button-active-background-color, var(--utrecht-button-background-color))
597
+ )
598
+ )
599
+ )
600
+ );
601
+ --_utrecht-button-active-border-color: var(
602
+ --_utrecht-button-hint-active-border-color,
603
+ var(
604
+ --_utrecht-button-hint-border-color,
605
+ var(
606
+ --_utrecht-button-appearance-active-border-color,
607
+ var(
608
+ --_utrecht-button-appearance-border-color,
609
+ var(--utrecht-button-active-border-color, var(--utrecht-button-border-color))
610
+ )
611
+ )
612
+ )
613
+ );
614
+ --_utrecht-button-active-color: var(
615
+ --_utrecht-button-hint-active-color,
616
+ var(
617
+ --_utrecht-button-hint-color,
618
+ var(
619
+ --_utrecht-button-appearance-active-color,
620
+ var(--_utrecht-button-appearance-color, var(--utrecht-button-active-color, var(--utrecht-button-color)))
621
+ )
622
+ )
623
+ );
624
+ --_utrecht-button-border-width: var(--_utrecht-button-appearance-border-width, var(--utrecht-button-border-width, 0));
625
+ --_utrecht-button-border-bottom-width: var(
626
+ --utrecht-button-border-bottom-width,
627
+ var(--_utrecht-button-border-width, 0)
628
+ );
629
+ --utrecht-icon-size: var(--utrecht-button-icon-size, 1em);
630
+ align-items: center;
631
+ background-color: var(--_utrecht-button-background-color);
632
+ border-color: var(--_utrecht-button-border-color);
633
+ border-bottom-color: var(--_utrecht-button-border-bottom-color);
634
+ border-radius: var(--utrecht-button-border-radius);
635
+ border-style: solid;
636
+ border-width: var(--_utrecht-button-border-width);
637
+ border-bottom-width: var(--_utrecht-button-border-bottom-width);
638
+ box-sizing: border-box;
639
+ color: var(--_utrecht-button-color);
640
+ cursor: var(--utrecht-action-activate-cursor);
641
+ display: inline-flex;
642
+ font-family: var(--utrecht-button-font-family, var(--utrecht-document-font-family));
643
+ font-size: var(--utrecht-button-font-size, var(--utrecht-document-font-family));
644
+ font-weight: var(--_utrecht-button-appearance-font-weight, var(--utrecht-button-font-weight));
645
+ gap: var(--utrecht-button-icon-gap);
646
+ inline-size: var(--utrecht-button-inline-size, auto);
647
+ justify-content: center;
648
+ letter-spacing: var(--utrecht-button-letter-spacing);
649
+ line-height: var(--utrecht-button-line-height);
650
+ min-block-size: var(--utrecht-button-min-block-size, 44px);
651
+ min-inline-size: var(--utrecht-button-min-inline-size, 44px);
652
+ padding-block-end: var(--utrecht-button-padding-block-end);
653
+ padding-block-start: var(--utrecht-button-padding-block-start);
654
+ padding-inline-end: var(--utrecht-button-padding-inline-end);
655
+ padding-inline-start: var(--utrecht-button-padding-inline-start);
656
+ text-transform: var(--utrecht-button-text-transform);
657
+ user-select: none;
658
+ margin-block-end: var(--utrecht-button-margin-block-end);
659
+ margin-block-start: var(--utrecht-button-margin-block-start);
660
+ margin-inline-end: var(--utrecht-button-margin-inline-end);
661
+ margin-inline-start: var(--utrecht-button-margin-inline-start);
882
662
  }
883
-
884
- .utrecht-table__header, .utrecht-html thead {
885
- font-weight: var(--utrecht-table-header-font-weight);
886
- color: var(--utrecht-table-header-color);
887
- text-transform: var(--utrecht-table-header-text-transform);
888
- vertical-align: bottom;
889
- }
890
-
891
- .utrecht-table__cell--last-header-row, .utrecht-html thead tr:last-child th {
892
- border-block-end-style: solid;
893
- border-block-end-color: var(--utrecht-table-header-border-block-end-color, transparent);
894
- border-block-end-width: var(--utrecht-table-header-border-block-end-width, 0);
895
- }
896
-
897
- .utrecht-table__body, .utrecht-html tbody {
898
- vertical-align: baseline;
899
- }
900
-
901
- .utrecht-table__heading, .utrecht-html th {
902
- font-weight: var(--utrecht-table-heading-font-weight);
903
- color: var(--utrecht-table-heading-color);
904
- text-transform: var(--utrecht-table-heading-text-transform);
905
- }
906
-
907
- .utrecht-table__cell, .utrecht-html th,
908
- .utrecht-html td {
909
- border-block-end-style: solid;
910
- border-block-end-color: var(--utrecht-table-row-border-block-end-color, transparent);
911
- border-block-end-width: var(--utrecht-table-row-border-block-end-width, 0);
912
- line-height: var(--utrecht-table-cell-line-height, inherit);
913
- padding-inline-start: var(--utrecht-table-cell-padding-inline-start, 0);
914
- padding-inline-end: var(--utrecht-table-cell-padding-inline-end, 0);
915
- padding-block-start: var(--utrecht-table-cell-padding-block-start, 0);
916
- padding-block-end: var(--utrecht-table-cell-padding-block-end, 0);
917
- text-align: start;
918
- }
919
-
920
- .utrecht-table__cell--first, .utrecht-html td:first-child,
921
- .utrecht-html th:first-child {
922
- padding-inline-start: var(--utrecht-table-row-padding-inline-start, var(--utrecht-table-cell-padding-inline-start, 0));
923
- }
924
-
925
- .utrecht-table__cell--last, .utrecht-html td:last-child,
926
- .utrecht-html th:last-child {
927
- padding-inline-end: var(--utrecht-table-row-padding-inline-end, var(--utrecht-table-cell-padding-inline-end, 0));
663
+ .utrecht-html button[type=submit i],
664
+ .utrecht-html input[type=submit i] {
665
+ cursor: var(--utrecht-action-submit-cursor);
666
+ }
667
+ .utrecht-html button:disabled,
668
+ .utrecht-html button[aria-disabled=true] {
669
+ background-color: var(--_utrecht-button-disabled-background-color);
670
+ border-color: var(--_utrecht-button-disabled-border-color);
671
+ color: var(--_utrecht-button-disabled-color);
672
+ cursor: var(--utrecht-action-disabled-cursor);
673
+ }
674
+ .utrecht-html button[aria-busy=true],
675
+ .utrecht-html button[aria-disabled=true][aria-busy=true],
676
+ .utrecht-html button:disabled[aria-busy=true] {
677
+ cursor: var(--utrecht-action-busy-cursor);
678
+ }
679
+ .utrecht-html button:active:not([aria-disabled=true], :disabled) {
680
+ background-color: var(--_utrecht-button-active-background-color);
681
+ border-color: var(--_utrecht-button-active-border-color);
682
+ color: var(--_utrecht-button-active-color);
683
+ }
684
+ .utrecht-html button:hover:not([aria-disabled=true], :disabled) {
685
+ background-color: var(--_utrecht-button-hover-background-color);
686
+ border-color: var(--_utrecht-button-hover-border-color);
687
+ color: var(--_utrecht-button-hover-color);
688
+ scale: var(--utrecht-button-hover-scale, 1);
689
+ }
690
+ .utrecht-html button:focus:not([aria-disabled=true], :disabled) {
691
+ background-color: var(--_utrecht-button-focus-background-color);
692
+ border-color: var(--_utrecht-button-focus-border-color);
693
+ color: var(--_utrecht-button-focus-color);
694
+ scale: var(--utrecht-button-focus-scale, 1);
695
+ }
696
+ .utrecht-html button:focus-visible {
697
+ /* the pseudo-class for `:focus-visible` is implemented via the mixin */
698
+ /* - The browser default focus ring should apply when these CSS custom properties are not set.
699
+ * - Make the `box-shadow` value available, so components that have their own `box-shadow`
700
+ * can combine it with the focus ring box shadow.
701
+ */
702
+ --_utrecht-focus-ring-box-shadow: 0 0 0 var(--utrecht-focus-outline-width, 0)
703
+ var(--utrecht-focus-inverse-outline-color, transparent);
704
+ box-shadow: var(--_utrecht-focus-ring-box-shadow);
705
+ outline-color: var(--utrecht-focus-outline-color, revert);
706
+ outline-offset: var(--utrecht-focus-outline-offset, revert);
707
+ outline-style: var(--utrecht-focus-outline-style, revert);
708
+ outline-width: var(--utrecht-focus-outline-width, revert);
709
+ }
710
+ .utrecht-html input[type=checkbox i] {
711
+ margin-block-end: 0; /* reset native margin for input[type="checkbox"] */
712
+ margin-block-start: 0;
713
+ margin-inline-end: 0;
714
+ margin-inline-start: 0;
715
+ cursor: var(--utrecht-action-activate-cursor, revert);
716
+ }
717
+ .utrecht-html input[type=checkbox i]:disabled {
718
+ cursor: var(--utrecht-action-disabled-cursor, revert);
719
+ }
720
+ .utrecht-html input[type=checkbox i]:focus {
721
+ /* - The browser default focus ring should apply when these CSS custom properties are not set.
722
+ * - Make the `box-shadow` value available, so components that have their own `box-shadow`
723
+ * can combine it with the focus ring box shadow.
724
+ */
725
+ --_utrecht-focus-ring-box-shadow: 0 0 0 var(--utrecht-focus-outline-width, 0)
726
+ var(--utrecht-focus-inverse-outline-color, transparent);
727
+ box-shadow: var(--_utrecht-focus-ring-box-shadow);
728
+ outline-color: var(--utrecht-focus-outline-color, revert);
729
+ outline-offset: var(--utrecht-focus-outline-offset, revert);
730
+ outline-style: var(--utrecht-focus-outline-style, revert);
731
+ outline-width: var(--utrecht-focus-outline-width, revert);
732
+ }
733
+ .utrecht-html input[type=checkbox i]:focus:not(:focus-visible) {
734
+ /* undo focus ring */
735
+ box-shadow: none;
736
+ outline-style: revert;
737
+ }
738
+ .utrecht-html body {
739
+ /* reset `font-smoothing: antialiasing`, prefer automatic (`subpixel-antialiasing`) behavior for high-dpi screens */
740
+ color: var(--utrecht-document-color, inherit);
741
+ font-family: var(--utrecht-document-font-family, inherit);
742
+ font-size: var(--utrecht-document-font-size, inherit);
743
+ font-weight: var(--utrecht-document-font-weight, inherit);
744
+ line-height: var(--utrecht-document-line-height, inherit);
745
+ text-rendering: optimizeLegibility;
746
+ background-color: var(--utrecht-document-background-color, inherit);
747
+ }
748
+ .utrecht-html body :lang(ar) {
749
+ /* `letter-spacing` design tokens break Arabic text rendering, avoid that */
750
+ letter-spacing: 0 !important;
751
+ }
752
+ .utrecht-html code {
753
+ /* Use `monospace` as fallback both when the custom property isn't set and when the font is not available */
754
+ background-color: var(--utrecht-code-background-color);
755
+ color: var(--utrecht-code-color);
756
+ font-family: var(--utrecht-code-font-family, monospace), monospace;
757
+ font-size: var(--utrecht-code-font-size);
758
+ font-variant-ligatures: none;
759
+ line-height: var(--utrecht-code-line-height);
760
+ }
761
+ .utrecht-html em {
762
+ font-style: var(--utrecht-emphasis-stressed-font-style, italic);
928
763
  }
929
-
930
- .utrecht-table__cell--numeric, .utrecht-html th.numeric,
931
- .utrecht-html td.numeric {
932
- /* stylelint-disable-next-line declaration-property-value-disallowed-list */
933
- text-align: right;
764
+ .utrecht-html strong {
765
+ font-weight: var(--utrecht-emphasis-strong-font-weight, bold);
934
766
  }
935
-
936
- .utrecht-table__row--alternate-odd, .utrecht-html table.alternate-row-color > tr:nth-child(odd) > td, .utrecht-html table.alternate-row-color > tr:nth-child(odd) > th, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(odd) > td, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(odd) > th {
937
- background-color: var(--utrecht-table-row-alternate-odd-background-color);
938
- color: var(--utrecht-table-row-alternate-odd-color);
767
+ .utrecht-html fieldset {
768
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-form-fieldset-margin-block-end, 0));
769
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-form-fieldset-margin-block-start, 0));
770
+ all: revert;
771
+ border: 0;
772
+ margin-inline-end: 0;
773
+ margin-inline-start: 0;
774
+ min-width: 0;
775
+ padding-block-end: 0;
776
+ padding-block-start: 0.01em;
777
+ padding-inline-end: 0;
778
+ padding-inline-start: 0;
779
+ --utrecht-space-around: 1;
939
780
  }
940
-
941
- .utrecht-table__row--alternate-even, .utrecht-html table.alternate-row-color > tr:nth-child(even) > td, .utrecht-html table.alternate-row-color > tr:nth-child(even) > th, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(even) > td, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(even) > th {
942
- background-color: var(--utrecht-table-row-alternate-even-background-color);
943
- color: var(--utrecht-table-row-alternate-even-color);
781
+ .utrecht-html figure {
782
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-figure-margin-block-end, 0));
783
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-figure-margin-block-start, 0));
944
784
  }
945
-
946
- /**
947
- * @license EUPL-1.2
948
- * Copyright (c) 2021 Robbert Broersma
949
- */
950
- /**
951
- * @license EUPL-1.2
952
- * Copyright (c) 2021 Robbert Broersma
953
- */
954
- .utrecht-textarea, .utrecht-html textarea {
955
- border-width: var(--utrecht-textarea-border-width);
956
- border-bottom-width: var(--utrecht-textarea-border-bottom-width, var(--utrecht-textarea-border-width));
957
- border-color: var(--utrecht-textarea-border-color);
958
- border-radius: var(--utrecht-textarea-border-radius, 0);
959
- border-style: solid;
960
- color: var(--utrecht-textarea-color);
961
- font-family: var(--utrecht-textarea-font-family);
962
- font-size: var(--utrecht-textarea-font-size, 1em);
963
- max-width: var(--utrecht-textarea-max-width);
964
- padding-block-end: var(--utrecht-textarea-padding-block-end);
965
- padding-block-start: var(--utrecht-textarea-padding-block-start);
966
- padding-inline-end: var(--utrecht-textarea-padding-inline-end);
967
- padding-inline-start: var(--utrecht-textarea-padding-inline-start);
968
- width: 100%;
785
+ .utrecht-html figcaption {
786
+ color: var(--utrecht-figure-caption-color);
787
+ font-size: var(--utrecht-figure-caption-font-size);
788
+ line-height: var(--utrecht-figure-caption-line-height);
969
789
  }
970
-
971
- .utrecht-textarea--invalid, .utrecht-textarea--html-textarea:invalid, .utrecht-html textarea:invalid, .utrecht-textarea--html-textarea[aria-invalid=true], .utrecht-html textarea[aria-invalid=true] {
972
- border-color: var(--utrecht-textarea-invalid-border-color);
973
- border-width: var(--utrecht-textarea-invalid-border-width);
790
+ .utrecht-html form {
791
+ max-inline-size: var(--utrecht-form-max-inline-size);
974
792
  }
975
-
976
- .utrecht-textarea--disabled, .utrecht-textarea--html-textarea:disabled, .utrecht-html textarea:disabled {
977
- border-color: var(--utrecht-textarea-disabled-border-color);
978
- color: var(--utrecht-textarea-disabled-color);
793
+ .utrecht-html legend {
794
+ color: var(--utrecht-form-fieldset-legend-color, var(--utrecht-document-color, inherit));
795
+ font-family: var(--utrecht-form-fieldset-legend-font-family, var(--utrecht-document-font-family));
796
+ font-size: var(--utrecht-form-fieldset-legend-font-size);
797
+ font-weight: var(--utrecht-form-fieldset-legend-font-weight);
798
+ line-height: var(--utrecht-form-fieldset-legend-line-height);
799
+ page-break-after: avoid;
800
+ page-break-inside: avoid;
801
+ text-transform: var(--utrecht-form-fieldset-legend-text-transform);
802
+ display: table;
803
+ inline-size: 100%;
804
+ padding-inline-end: 0;
805
+ padding-inline-start: 0;
806
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-form-fieldset-legend-margin-block-end, 0));
807
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-form-fieldset-legend-margin-block-start, 0));
979
808
  }
980
-
981
- .utrecht-textarea--focus, .utrecht-textarea--html-textarea:focus, .utrecht-html textarea:focus {
982
- outline-width: var(--utrecht-focus-outline-width, 0);
983
- outline-style: var(--utrecht-focus-outline-style, solid);
984
- outline-color: var(--utrecht-focus-outline-color, transparent);
985
- color: var(--utrecht-focus-color, inherit);
986
- box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
987
- outline-offset: 0;
988
- background-color: var(--utrecht-focus-background-color);
809
+ .utrecht-html fieldset:disabled > legend {
810
+ color: var(--utrecht-form-fieldset-legend-disabled-color, var(--utrecht-form-fieldset-legend-color, var(--utrecht-document-color, inherit)));
989
811
  }
990
-
991
- .utrecht-textarea--read-only, .utrecht-textarea--html-textarea:read-only, .utrecht-html textarea:read-only {
992
- border-color: var(--utrecht-textarea-read-only-border-color);
993
- color: var(--utrecht-textarea-read-only-color);
812
+ .utrecht-html label {
813
+ color: var(--utrecht-form-label-color);
814
+ font-size: var(--utrecht-form-label-font-size);
815
+ font-weight: var(--utrecht-form-label-font-weight);
994
816
  }
995
-
996
- /**
997
- * @license EUPL-1.2
998
- * Copyright (c) 2021 Robbert Broersma
999
- */
1000
- /**
1001
- * @license EUPL-1.2
1002
- * Copyright (c) 2021 Robbert Broersma
1003
- */
1004
- .utrecht-textbox, .utrecht-html input[type=text],
1005
- .utrecht-html input[type=email],
1006
- .utrecht-html input[type=password],
1007
- .utrecht-html input[type=search],
1008
- .utrecht-html input[type=tel],
1009
- .utrecht-html input[type=url] {
1010
- border-width: var(--utrecht-textbox-border-width);
1011
- border-bottom-width: var(--utrecht-textbox-border-bottom-width, var(--utrecht-textbox-border-width));
1012
- border-color: var(--utrecht-textbox-border-color);
1013
- border-radius: var(--utrecht-textbox-border-radius, 0);
1014
- border-style: solid;
1015
- color: var(--utrecht-textbox-color);
1016
- font-family: var(--utrecht-textbox-font-family);
1017
- font-size: var(--utrecht-textbox-font-size, 1em);
1018
- max-width: var(--utrecht-textbox-max-width);
1019
- padding-block-end: var(--utrecht-textbox-padding-block-end);
1020
- padding-block-start: var(--utrecht-textbox-padding-block-start);
1021
- padding-inline-end: var(--utrecht-textbox-padding-inline-end);
1022
- padding-inline-start: var(--utrecht-textbox-padding-inline-start);
1023
- box-sizing: border-box;
1024
- width: 100%;
817
+ .utrecht-html input[type=checkbox i] ~ label {
818
+ color: var(--utrecht-form-label-checkbox-color, var(--utrecht-form-label-color));
819
+ cursor: var(--utrecht-action-activate-cursor, revert);
820
+ font-weight: var(--utrecht-form-label-checkbox-font-weight, var(--utrecht-form-label-font-weight));
1025
821
  }
1026
-
1027
- .utrecht-textbox--invalid, .utrecht-textbox--html-input:invalid, .utrecht-html input[type=text]:invalid,
1028
- .utrecht-html input[type=email]:invalid,
1029
- .utrecht-html input[type=password]:invalid,
1030
- .utrecht-html input[type=search]:invalid,
1031
- .utrecht-html input[type=tel]:invalid,
1032
- .utrecht-html input[type=url]:invalid, .utrecht-textbox--html-input[aria-invalid=true], .utrecht-html input[aria-invalid=true][type=text],
1033
- .utrecht-html input[aria-invalid=true][type=email],
1034
- .utrecht-html input[aria-invalid=true][type=password],
1035
- .utrecht-html input[aria-invalid=true][type=search],
1036
- .utrecht-html input[aria-invalid=true][type=tel],
1037
- .utrecht-html input[aria-invalid=true][type=url] {
1038
- border-color: var(--utrecht-textbox-invalid-border-color);
1039
- border-width: var(--utrecht-textbox-invalid-border-width);
822
+ .utrecht-html input[type=radio i] ~ label {
823
+ color: var(--utrecht-form-label-checkbox-color, var(--utrecht-form-label-color));
824
+ cursor: var(--utrecht-action-activate-cursor, revert);
825
+ font-weight: var(--utrecht-form-label-radio-font-weight, var(--utrecht-form-label-font-weight));
1040
826
  }
1041
-
1042
- .utrecht-textbox--disabled, .utrecht-textbox--html-input:disabled, .utrecht-html input[type=text]:disabled,
1043
- .utrecht-html input[type=email]:disabled,
1044
- .utrecht-html input[type=password]:disabled,
1045
- .utrecht-html input[type=search]:disabled,
1046
- .utrecht-html input[type=tel]:disabled,
1047
- .utrecht-html input[type=url]:disabled {
1048
- border-color: var(--utrecht-textbox-disabled-border-color);
1049
- color: var(--utrecht-textbox-disabled-color);
827
+ .utrecht-html mark {
828
+ background-color: var(--utrecht-mark-background-color, revert);
829
+ color: var(--utrecht-mark-color, revert);
830
+ }
831
+ @media print {
832
+ .utrecht-html mark {
833
+ outline-color: currentColor;
834
+ outline-style: dotted;
835
+ outline-width: 0.1em;
836
+ }
837
+ }
838
+ @media screen and (-ms-high-contrast: active) {
839
+ .utrecht-html mark {
840
+ background-color: Highlight;
841
+ color: HighlightText;
842
+ }
843
+ }
844
+ .utrecht-html h1 {
845
+ page-break-after: avoid;
846
+ page-break-inside: avoid;
847
+ color: var(--utrecht-heading-1-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
848
+ font-family: var(--utrecht-heading-1-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
849
+ font-size: var(--utrecht-heading-1-font-size, revert);
850
+ font-weight: var(--utrecht-heading-1-font-weight, var(--utrecht-heading-font-weight, bold));
851
+ letter-spacing: var(--utrecht-heading-1-letter-spacing);
852
+ line-height: var(--utrecht-heading-1-line-height);
853
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-1-margin-block-end, 0));
854
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-1-margin-block-start, 0));
855
+ page-break-after: avoid;
856
+ text-transform: var(--utrecht-heading-1-text-transform, inherit);
857
+ --utrecht-space-around: 1;
1050
858
  }
1051
-
1052
- .utrecht-textbox--focus, .utrecht-textbox--html-input:focus, .utrecht-html input[type=text]:focus,
1053
- .utrecht-html input[type=email]:focus,
1054
- .utrecht-html input[type=password]:focus,
1055
- .utrecht-html input[type=search]:focus,
1056
- .utrecht-html input[type=tel]:focus,
1057
- .utrecht-html input[type=url]:focus {
1058
- outline-width: var(--utrecht-focus-outline-width, 0);
1059
- outline-style: var(--utrecht-focus-outline-style, solid);
1060
- outline-color: var(--utrecht-focus-outline-color, transparent);
1061
- color: var(--utrecht-focus-color, inherit);
1062
- box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
1063
- outline-offset: 0;
1064
- background-color: var(--utrecht-focus-background-color);
859
+ .utrecht-html h2 {
860
+ page-break-after: avoid;
861
+ page-break-inside: avoid;
862
+ color: var(--utrecht-heading-2-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
863
+ font-family: var(--utrecht-heading-2-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
864
+ font-size: var(--utrecht-heading-2-font-size, revert);
865
+ font-weight: var(--utrecht-heading-2-font-weight, var(--utrecht-heading-font-weight, bold));
866
+ letter-spacing: var(--utrecht-heading-2-letter-spacing);
867
+ line-height: var(--utrecht-heading-2-line-height);
868
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-2-margin-block-end, 0));
869
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-2-margin-block-start, 0));
870
+ page-break-after: avoid;
871
+ text-transform: var(--utrecht-heading-2-text-transform, inherit);
872
+ --utrecht-space-around: 1;
1065
873
  }
1066
-
1067
- .utrecht-textbox--read-only, .utrecht-textbox--html-input:read-only, .utrecht-html input[type=text]:read-only,
1068
- .utrecht-html input[type=email]:read-only,
1069
- .utrecht-html input[type=password]:read-only,
1070
- .utrecht-html input[type=search]:read-only,
1071
- .utrecht-html input[type=tel]:read-only,
1072
- .utrecht-html input[type=url]:read-only {
1073
- border-color: var(--utrecht-textbox-read-only-border-color);
1074
- color: var(--utrecht-textbox-read-only-color);
874
+ .utrecht-html h3 {
875
+ page-break-after: avoid;
876
+ page-break-inside: avoid;
877
+ color: var(--utrecht-heading-3-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
878
+ font-family: var(--utrecht-heading-3-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
879
+ font-size: var(--utrecht-heading-3-font-size, revert);
880
+ font-weight: var(--utrecht-heading-3-font-weight, var(--utrecht-heading-font-weight, bold));
881
+ letter-spacing: var(--utrecht-heading-3-letter-spacing);
882
+ line-height: var(--utrecht-heading-3-line-height);
883
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-3-margin-block-end, 0));
884
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-3-margin-block-start, 0));
885
+ page-break-after: avoid;
886
+ text-transform: var(--utrecht-heading-3-text-transform, inherit);
887
+ --utrecht-space-around: 1;
1075
888
  }
1076
-
1077
- /**
1078
- * @license EUPL-1.2
1079
- * Copyright (c) 2021 Robbert Broersma
1080
- */
1081
- /**
1082
- * @license EUPL-1.2
1083
- * Copyright (c) 2021 Robbert Broersma
1084
- * Copyright (c) 2021 Gemeente Utrecht
1085
- */
1086
- .utrecht-unordered-list, .utrecht-html ul {
1087
- font-family: var(--utrecht-document-font-family, inherit);
1088
- font-size: var(--utrecht-document-font-size, inherit);
1089
- line-height: var(--utrecht-document-line-height, inherit);
1090
- padding-inline-start: 2ch;
889
+ .utrecht-html h4 {
890
+ page-break-after: avoid;
891
+ page-break-inside: avoid;
892
+ color: var(--utrecht-heading-4-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
893
+ font-family: var(--utrecht-heading-4-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
894
+ font-size: var(--utrecht-heading-4-font-size, revert);
895
+ font-weight: var(--utrecht-heading-4-font-weight, var(--utrecht-heading-font-weight, bold));
896
+ letter-spacing: var(--utrecht-heading-4-letter-spacing);
897
+ line-height: var(--utrecht-heading-4-line-height);
898
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-4-margin-block-end, 0));
899
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-4-margin-block-start, 0));
900
+ page-break-after: avoid;
901
+ text-transform: var(--utrecht-heading-4-text-transform, inherit);
902
+ --utrecht-space-around: 1;
1091
903
  }
1092
-
1093
- .utrecht-unordered-list--distanced, .utrecht-html ul {
1094
- margin-block-start: var(--utrecht-unordered-list-margin-block-start, var(--utrecht-paragraph-margin-block-start));
1095
- margin-block-end: var(--utrecht-unordered-list-margin-block-end, var(--utrecht-paragraph-margin-block-end));
904
+ .utrecht-html h5 {
905
+ page-break-after: avoid;
906
+ page-break-inside: avoid;
907
+ color: var(--utrecht-heading-5-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
908
+ font-family: var(--utrecht-heading-5-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
909
+ font-size: var(--utrecht-heading-5-font-size, revert);
910
+ font-weight: var(--utrecht-heading-5-font-weight, var(--utrecht-heading-font-weight, bold));
911
+ letter-spacing: var(--utrecht-heading-5-letter-spacing);
912
+ line-height: var(--utrecht-heading-5-line-height);
913
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-5-margin-block-end, 0));
914
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-5-margin-block-start, 0));
915
+ page-break-after: avoid;
916
+ text-transform: var(--utrecht-heading-5-text-transform, inherit);
917
+ --utrecht-space-around: 1;
1096
918
  }
1097
-
1098
- .utrecht-unordered-list--nested {
1099
- margin-inline-start: 2ch;
1100
- margin-block-end: 0;
919
+ .utrecht-html h6 {
920
+ page-break-after: avoid;
921
+ page-break-inside: avoid;
922
+ color: var(--utrecht-heading-6-color, var(--utrecht-heading-color, var(--utrecht-document-color, inherit)));
923
+ font-family: var(--utrecht-heading-6-font-family, var(--utrecht-heading-font-family, var(--utrecht-document-font-family)));
924
+ font-size: var(--utrecht-heading-6-font-size, revert);
925
+ font-weight: var(--utrecht-heading-6-font-weight, var(--utrecht-heading-font-weight, bold));
926
+ letter-spacing: var(--utrecht-heading-6-letter-spacing);
927
+ line-height: var(--utrecht-heading-6-line-height);
928
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-6-margin-block-end, 0));
929
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-6-margin-block-start, 0));
930
+ page-break-after: avoid;
931
+ text-transform: var(--utrecht-heading-6-text-transform, inherit);
932
+ --utrecht-space-around: 1;
1101
933
  }
1102
-
1103
- .utrecht-unordered-list__item, .utrecht-html ul > li {
1104
- padding-inline-start: 1ch;
1105
- margin-block-start: var(--utrecht-unordered-list-item-margin-block-start);
1106
- margin-block-end: var(--utrecht-unordered-list-item-margin-block-end);
934
+ .utrecht-html hgroup {
935
+ --utrecht-pre-heading-order: -1;
936
+ display: flex;
937
+ flex-direction: column;
938
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-group-margin-block-end, 0));
939
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-heading-group-margin-block-start, 0));
940
+ --utrecht-space-around: 1;
1107
941
  }
1108
-
1109
- .utrecht-unordered-list__item::marker, .utrecht-html ul > li::marker,
1110
- .utrecht-unordered-list__marker {
1111
- color: var(--utrecht-unordered-list-marker-color);
1112
- content: "●";
942
+ .utrecht-html hgroup > * {
943
+ --utrecht-space-around: 0;
1113
944
  }
1114
-
1115
- /**
1116
- * @license EUPL-1.2
1117
- * Copyright (c) 2021 Robbert Broersma
1118
- */
1119
- /**
1120
- * @license EUPL-1.2
1121
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
1122
- * Copyright (c) 2021 Gemeente Utrecht
1123
- */
1124
- .utrecht-link, .utrecht-html a:link {
1125
- text-decoration: var(--utrecht-link-text-decoration, underline);
945
+ .utrecht-html a:link {
946
+ --utrecht-icon-size: var(--utrecht-link-icon-size, 1em);
1126
947
  color: var(--utrecht-link-color, blue);
948
+ text-decoration: var(--utrecht-link-text-decoration, underline);
949
+ text-decoration-color: var(--utrecht-link-text-decoration-color, currentColor);
950
+ text-decoration-skip-ink: all;
951
+ text-decoration-thickness: max(var(--utrecht-link-text-decoration-thickness), 1px);
952
+ text-underline-offset: var(--utrecht-link-text-underline-offset);
1127
953
  }
1128
-
1129
- .utrecht-link:visited,
1130
- .utrecht-link--visited,
1131
954
  .utrecht-html a:visited {
1132
955
  color: var(--utrecht-link-visited-color, var(--utrecht-link-color));
1133
956
  }
1134
-
1135
- .utrecht-link:hover,
1136
- .utrecht-link--hover,
1137
957
  .utrecht-html a:hover {
1138
958
  color: var(--utrecht-link-hover-color, var(--utrecht-link-color));
1139
959
  text-decoration: var(--utrecht-link-hover-text-decoration, var(--utrecht-link-text-decoration, underline));
960
+ text-decoration-skip: none;
961
+ text-decoration-skip-ink: none;
962
+ text-decoration-thickness: max(var(--utrecht-link-hover-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
1140
963
  }
1141
-
1142
- .utrecht-link:active,
1143
- .utrecht-link--active,
1144
964
  .utrecht-html a:active {
1145
965
  color: var(--utrecht-link-active-color, var(--utrecht-link-color));
1146
966
  }
1147
-
1148
- .utrecht-link:focus,
1149
- .utrecht-link--focus,
1150
967
  .utrecht-html a:focus {
968
+ background-color: var(--utrecht-link-focus-background-color, transparent);
1151
969
  color: var(--utrecht-link-focus-color, var(--utrecht-link-color));
1152
970
  text-decoration: var(--utrecht-link-focus-text-decoration, var(--utrecht-link-text-decoration, underline));
1153
- outline-width: var(--utrecht-focus-outline-width, 0);
1154
- outline-style: var(--utrecht-focus-outline-style, solid);
1155
- outline-color: var(--utrecht-focus-outline-color, transparent);
1156
- color: var(--utrecht-focus-color, inherit);
1157
- box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
1158
- outline-offset: 0;
1159
- background-color: var(--utrecht-focus-background-color);
1160
- }
1161
-
1162
- /* stylelint-disable-next-line block-no-empty */
1163
- .utrecht-link--telephone, .utrecht-html a[href^="tel:" i] {
971
+ text-decoration-skip: none;
972
+ text-decoration-skip-ink: none;
973
+ text-decoration-thickness: max(var(--utrecht-link-focus-text-decoration-thickness, var(--utrecht-link-text-decoration-thickness)), 1px);
974
+ /* - The browser default focus ring should apply when these CSS custom properties are not set.
975
+ * - Make the `box-shadow` value available, so components that have their own `box-shadow`
976
+ * can combine it with the focus ring box shadow.
977
+ */
978
+ --_utrecht-focus-ring-box-shadow: 0 0 0 var(--utrecht-focus-outline-width, 0)
979
+ var(--utrecht-focus-inverse-outline-color, transparent);
980
+ box-shadow: var(--_utrecht-focus-ring-box-shadow);
981
+ outline-color: var(--utrecht-focus-outline-color, revert);
982
+ outline-offset: var(--utrecht-focus-outline-offset, revert);
983
+ outline-style: var(--utrecht-focus-outline-style, revert);
984
+ outline-width: var(--utrecht-focus-outline-width, revert);
985
+ }
986
+ .utrecht-html a:focus:not(:focus-visible) {
987
+ /* undo focus ring */
988
+ box-shadow: none;
989
+ outline-style: revert;
990
+ }
991
+ .utrecht-html a[href^="tel:" i] {
1164
992
  white-space: nowrap;
1165
993
  }
1166
-
1167
- /**
1168
- * @license EUPL-1.2
1169
- * Copyright (c) 2021 Robbert Broersma
1170
- */
1171
- /**
1172
- * @license EUPL-1.2
1173
- * Copyright (c) 2021 Robbert Broersma
1174
- * Copyright (c) 2021 Gemeente Utrecht
1175
- */
1176
- .utrecht-ordered-list, .utrecht-html ol {
994
+ .utrecht-html ol {
995
+ /* Configure `width` and `text-align` for `--center` */
1177
996
  font-family: var(--utrecht-document-font-family, inherit);
997
+ font-size: var(--utrecht-ordered-list-font-size, var(--utrecht-unordered-list-font-size, var(--utrecht-document-font-size, inherit)));
998
+ line-height: var(--utrecht-ordered-list-font-size, var(--utrecht-unordered-list-line-height, var(--utrecht-document-line-height, inherit)));
999
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-ordered-list-margin-block-end, var(--utrecht-unordered-list-margin-block-end, 0)));
1000
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-ordered-list-margin-block-start, var(--utrecht-unordered-list-margin-block-start, 0)));
1001
+ padding-inline-start: var(--utrecht-ordered-list-padding-inline-start, var(--utrecht-unordered-list-padding-inline-start, 2ch));
1002
+ text-align: start;
1003
+ width: max-content;
1004
+ --utrecht-space-around: 1;
1178
1005
  }
1179
-
1180
- .utrecht-ordered-list--distanced, .utrecht-html ol {
1181
- margin-block-end: var(--utrecht-ordered-list-margin-block-end);
1182
- margin-block-start: var(--utrecht-ordered-list-margin-block-start);
1006
+ .utrecht-html ol > li {
1007
+ margin-block-end: var(--utrecht-ordered-list-item-margin-block-end, var(--utrecht-unordered-list-item-margin-block-end));
1008
+ margin-block-start: var(--utrecht-ordered-list-item-margin-block-start, var(--utrecht-unordered-list-item-margin-block-start));
1009
+ padding-inline-start: var(--utrecht-ordered-list-item-padding-inline-start, var(--utrecht-unordered-list-item-padding-inline-start, 1ch));
1183
1010
  }
1184
-
1185
- .utrecht-ordered-list__item, .utrecht-html ol > li {
1186
- margin-block-end: var(--utrecht-ordered-list-item-margin-block-end);
1187
- margin-block-start: var(--utrecht-ordered-list-item-margin-block-start);
1011
+ .utrecht-html ol:lang(ar) {
1012
+ list-style: arabic-indic;
1188
1013
  }
1189
-
1190
- /**
1191
- * @license EUPL-1.2
1192
- * Copyright (c) 2021 Robbert Broersma
1193
- */
1194
- /**
1195
- * @license EUPL-1.2
1196
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
1197
- */
1198
- .utrecht-paragraph, .utrecht-html p {
1199
- color: var(--utrecht-document-color, inherit);
1014
+ .utrecht-html p {
1015
+ color: var(--utrecht-paragraph-color, var(--utrecht-document-color, inherit));
1200
1016
  font-family: var(--utrecht-paragraph-font-family, var(--utrecht-document-font-family, inherit));
1201
1017
  font-size: var(--utrecht-paragraph-font-size, var(--utrecht-document-font-size, inherit));
1202
1018
  font-weight: var(--utrecht-paragraph-font-weight, inherit);
1203
1019
  line-height: var(--utrecht-paragraph-line-height, var(--utrecht-document-line-height, inherit));
1204
- }
1205
-
1206
- .utrecht-paragraph--lead, .utrecht-html p.lead {
1207
- font-size: var(--utrecht-paragraph-lead-font-size, inherit);
1208
- font-weight: var(--utrecht-paragraph-lead-font-weight, inherit);
1209
- line-height: var(--utrecht-paragraph-lead-line-height, inherit);
1210
- }
1211
-
1212
- .utrecht-paragraph--distanced, .utrecht-html * ~ p {
1213
- margin-block-start: var(--utrecht-paragraph-margin-block-start);
1214
- margin-block-end: var(--utrecht-paragraph-margin-block-end);
1215
- }
1216
-
1217
- /**
1218
- * @license EUPL-1.2
1219
- * Copyright (c) 2021 Gemeente Utrecht
1220
- */
1221
- /**
1222
- * @license EUPL-1.2
1223
- * Copyright (c) 2021 Gemeente Utrecht
1224
- */
1225
- .utrecht-radio-button, .utrecht-html input[type=radio] {
1226
- /* reset native margin for input[type="radio"] */
1227
- margin-block-start: 0;
1020
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-paragraph-margin-block-end, 0));
1021
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-paragraph-margin-block-start, 0));
1022
+ }
1023
+ .utrecht-html p.lead {
1024
+ color: var(--utrecht-paragraph-lead-color, var(--utrecht-paragraph-color, var(--utrecht-document-color, inherit)));
1025
+ font-size: var(--utrecht-paragraph-lead-font-size, var(--utrecht-paragraph-font-size, inherit));
1026
+ font-weight: var(--utrecht-paragraph-lead-font-weight, var(--utrecht-paragraph-font-weight, inherit));
1027
+ line-height: var(--utrecht-paragraph-lead-line-height, var(--utrecht-paragraph-line-height, inherit));
1028
+ }
1029
+ .utrecht-html * ~ p {
1030
+ --utrecht-space-around: 1;
1031
+ }
1032
+ .utrecht-html p:has(> small:only-child) {
1033
+ color: var(--utrecht-paragraph-small-color, var(--utrecht-paragraph-color, var(--utrecht-document-color, inherit)));
1034
+ font-size: var(--utrecht-paragraph-small-font-size, var(--utrecht-paragraph-font-size, inherit));
1035
+ font-weight: var(--utrecht-paragraph-small-font-weight, var(--utrecht-paragraph-font-weight, inherit));
1036
+ line-height: var(--utrecht-paragraph-small-line-height, var(--utrecht-paragraph-line-height, inherit));
1037
+ }
1038
+ .utrecht-html p > small:only-child {
1039
+ font-size: inherit;
1040
+ }
1041
+ .utrecht-html pre:has(> code:only-child) {
1042
+ /* Use `monospace` as fallback both when the custom property isn't set and when the font is not available */
1043
+ background-color: var(--utrecht-code-background-color);
1044
+ color: var(--utrecht-code-color);
1045
+ font-family: var(--utrecht-code-font-family, monospace), monospace;
1046
+ font-size: var(--utrecht-code-font-size);
1047
+ font-variant-ligatures: none;
1048
+ line-height: var(--utrecht-code-line-height);
1049
+ --utrecht-code-color: var(--utrecht-code-block-color, inherit);
1050
+ --utrecht-code-background-color: var(--utrecht-code-block-background-color, inherit);
1051
+ --utrecht-code-font-weight: var(--utrecht-code-block-font-weight, inherit);
1052
+ --utrecht-code-font-size: var(--utrecht-code-block-font-size, inherit);
1053
+ --utrecht-code-font-family: var(--utrecht-code-block-font-family, monospace);
1054
+ background-color: var(--utrecht-code-block-background-color);
1055
+ display: block;
1056
+ font-size: var(--utrecht-code-block-font-size, var(--utrecht-code-font-size));
1057
+ line-height: var(--utrecht-code-block-line-height, var(--utrecht-code-line-height));
1058
+ margin-block-end: var(--utrecht-code-block-margin-block-end);
1059
+ margin-block-start: var(--utrecht-code-block-margin-block-start);
1060
+ margin-inline-end: var(--utrecht-code-block-margin-inline-end);
1061
+ margin-inline-start: var(--utrecht-code-block-margin-inline-start);
1062
+ padding-block-end: var(--utrecht-code-block-padding-block-end);
1063
+ padding-block-start: var(--utrecht-code-block-padding-block-start);
1064
+ padding-inline-end: var(--utrecht-code-block-padding-inline-end);
1065
+ padding-inline-start: var(--utrecht-code-block-padding-inline-start);
1066
+ white-space: pre;
1067
+ }
1068
+ .utrecht-html pre:has(> code:only-child) > code {
1069
+ display: contents;
1070
+ }
1071
+ .utrecht-html input[type=radio i] {
1072
+ -webkit-appearance: none;
1073
+ -moz-appearance: none;
1074
+ appearance: none;
1228
1075
  margin-block-end: 0;
1229
- margin-inline-start: 0;
1076
+ margin-block-start: 0;
1230
1077
  margin-inline-end: 0;
1231
- }
1232
-
1233
- /**
1234
- * @license EUPL-1.2
1235
- * Copyright (c) 2021 Robbert Broersma
1236
- */
1237
- /**
1238
- * @license EUPL-1.2
1239
- * Copyright (c) 2021 Gemeente Utrecht
1240
- * Copyright (c) 2021 Robbert Broersma
1241
- * Copyright (c) 2021 The Knights Who Say NIH! B.V.
1242
- */
1243
- .utrecht-separator, .utrecht-html hr {
1078
+ margin-inline-start: 0;
1079
+ background-color: var(--utrecht-radio-button-background-color);
1080
+ background-position: center;
1081
+ background-repeat: no-repeat;
1082
+ background-size: contain;
1083
+ border-color: var(--utrecht-radio-button-border-color);
1084
+ border-radius: 50%;
1244
1085
  border-style: solid;
1086
+ border-width: var(--utrecht-radio-button-border-width);
1087
+ cursor: var(--utrecht-action-activate-cursor);
1088
+ height: var(--utrecht-radio-button-size);
1089
+ margin-inline-end: var(--utrecht-radio-button-margin-inline-end);
1090
+ -webkit-print-color-adjust: exact;
1091
+ print-color-adjust: exact;
1092
+ vertical-align: top;
1093
+ width: var(--utrecht-radio-button-size);
1094
+ }
1095
+ .utrecht-html input[type=radio i]:disabled {
1096
+ border-color: var(--utrecht-radio-button-disabled-border-color, var(--utrecht-radio-button-border-color));
1097
+ border-width: var(--utrecht-radio-button-disabled-border-width, var(--utrecht-radio-button-border-width));
1098
+ color: var(--utrecht-radio-button-disabled-color, var(--utrecht-radio-button-color));
1099
+ cursor: var(--utrecht-action-disabled-cursor);
1100
+ }
1101
+ .utrecht-html input[type=radio i]:disabled:checked {
1102
+ background-color: var(--utrecht-radio-button-disabled-background-color, var(--utrecht-radio-button-background-color));
1103
+ border-color: var(--utrecht-radio-button-disabled-border-color, var(--utrecht-radio-button-border-color));
1104
+ }
1105
+ .utrecht-html input[type=radio i]:disabled:active {
1106
+ border-color: var(--utrecht-radio-button-disabled-border-color, var(--utrecht-radio-button-border-color));
1107
+ }
1108
+ .utrecht-html input[type=radio i]:hover {
1109
+ background-color: var(--utrecht-radio-button-hover-background-color, var(--utrecht-radio-button-background-color));
1110
+ border-color: var(--utrecht-radio-button-hover-border-color, var(--utrecht-radio-button-border-color));
1111
+ border-width: var(--utrecht-radio-button-hover-border-width, var(--utrecht-radio-button-border-width));
1112
+ color: var(--utrecht-radio-button-hover-color, var(--utrecht-radio-button-color));
1113
+ }
1114
+ .utrecht-html input[type=radio i]:focus {
1115
+ background-color: var(--utrecht-radio-button-focus-background-color, var(--utrecht-radio-button-background-color));
1116
+ background-image: url("data:image/svg+xml,%3Csvg viewBox='-4 -4 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
1117
+ border-color: var(--utrecht-radio-button-focus-border-color, var(--utrecht-radio-button-border-color));
1118
+ border-width: var(--utrecht-radio-button-focus-border-width, var(--utrecht-radio-button-border-width));
1119
+ color: var(--utrecht-radio-button-focus-color, var(--utrecht-radio-button-color));
1120
+ }
1121
+ .utrecht-html input[type=radio i]:focus-visible {
1122
+ /* - The browser default focus ring should apply when these CSS custom properties are not set.
1123
+ * - Make the `box-shadow` value available, so components that have their own `box-shadow`
1124
+ * can combine it with the focus ring box shadow.
1125
+ */
1126
+ --_utrecht-focus-ring-box-shadow: 0 0 0 var(--utrecht-focus-outline-width, 0)
1127
+ var(--utrecht-focus-inverse-outline-color, transparent);
1128
+ box-shadow: var(--_utrecht-focus-ring-box-shadow);
1129
+ outline-color: var(--utrecht-focus-outline-color, revert);
1130
+ outline-offset: var(--utrecht-focus-outline-offset, revert);
1131
+ outline-style: var(--utrecht-focus-outline-style, revert);
1132
+ outline-width: var(--utrecht-focus-outline-width, revert);
1133
+ }
1134
+ .utrecht-html input[type=radio i]:invalid, .utrecht-html input[type=radio i][aria-invalid=true] {
1135
+ border-color: var(--utrecht-radio-button-invalid-border-color, var(--utrecht-radio-button-border-color));
1136
+ border-width: var(--utrecht-radio-button-invalid-border-width, var(--utrecht-radio-button-border-width));
1137
+ color: var(--utrecht-radio-button-invalid-color, var(--utrecht-radio-button-color));
1138
+ }
1139
+ .utrecht-html input[type=radio i]:active {
1140
+ background-color: var(--utrecht-radio-button-active-background-color, var(--utrecht-radio-button-background-color));
1141
+ background-image: url("data:image/svg+xml,%3Csvg viewBox='-4 -4 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
1142
+ border-color: var(--utrecht-radio-button-active-border-color, var(--utrecht-radio-button-border-color));
1143
+ border-width: var(--utrecht-radio-button-active-border-width, var(--utrecht-radio-button-border-width));
1144
+ color: var(--utrecht-radio-button-active-color, var(--utrecht-radio-button-color));
1145
+ }
1146
+ .utrecht-html input[type=radio i]:checked {
1147
+ background-color: var(--utrecht-radio-button-checked-background-color, var(--utrecht-radio-button-background-color));
1148
+ background-image: url("data:image/svg+xml,%3Csvg viewBox='-4 -4 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
1149
+ border-color: var(--utrecht-radio-button-checked-border-color, var(--utrecht-radio-button-border-color));
1150
+ border-width: var(--utrecht-radio-button-checked-border-width, var(--utrecht-radio-button-border-width));
1151
+ color: var(--utrecht-radio-button-checked-color, var(--utrecht-radio-button-color));
1152
+ }
1153
+ .utrecht-html select {
1154
+ -moz-appearance: none;
1155
+ -webkit-appearance: none;
1156
+ appearance: none;
1157
+ background-color: var(--utrecht-select-background-color, var(--utrecht-form-control-background-color));
1158
+ background-image: var(--utrecht-select-background-image);
1159
+ background-position: 100%;
1160
+ background-repeat: no-repeat;
1161
+ background-size: 1.4em;
1162
+ border-block-end-width: var(--utrecht-select-border-block-end-width, var(--utrecht-select-border-width, var(--utrecht-form-control-border-width)));
1163
+ border-block-start-width: var(--utrecht-select-border-width, var(--utrecht-form-control-border-width));
1164
+ border-color: var(--utrecht-select-border-color, var(--utrecht-form-control-border-color));
1165
+ border-inline-end-width: var(--utrecht-select-border-width, var(--utrecht-form-control-border-width));
1166
+ border-inline-start-width: var(--utrecht-select-border-width, var(--utrecht-form-control-border-width));
1167
+ border-radius: var(--utrecht-select-border-radius, var(--utrecht-form-control-border-radius, 0));
1168
+ border-style: solid;
1169
+ color: var(--utrecht-select-color, var(--utrecht-form-control-color));
1170
+ font-family: var(--utrecht-select-font-family, var(--utrecht-form-control-font-family));
1171
+ font-size: var(--utrecht-select-font-size, var(--utrecht-form-control-font-size));
1172
+ max-inline-size: var(--utrecht-select-max-inline-size, var(--utrecht-form-control-max-inline-size));
1173
+ padding-block-end: var(--utrecht-select-padding-block-end, var(--utrecht-form-control-padding-block-end));
1174
+ padding-block-start: var(--utrecht-select-padding-block-start, var(--utrecht-form-control-padding-block-start));
1175
+ padding-inline-end: var(--utrecht-select-padding-inline-end, var(--utrecht-form-control-padding-inline-end));
1176
+ padding-inline-start: var(--utrecht-select-padding-inline-start, var(--utrecht-form-control-padding-inline-start));
1177
+ width: 100%;
1178
+ /* <select> does not support :read-only */
1179
+ }
1180
+ .utrecht-html select:disabled {
1181
+ background-color: var(--utrecht-select-disabled-background-color, var(--utrecht-form-control-disabled-background-color, var(--utrecht-select-background-color, var(--utrecht-form-control-background-color))));
1182
+ border-color: var(--utrecht-select-disabled-border-color, var(--utrecht-form-control-disabled-border-color, var(--utrecht-select-border-color, var(--utrecht-form-control-border-color))));
1183
+ color: var(--utrecht-select-disabled-color, var(--utrecht-form-control-disabled-color, var(--utrecht-select-color, var(--utrecht-form-control-color))));
1184
+ cursor: var(--utrecht-action-disabled-cursor);
1185
+ }
1186
+ .utrecht-html select:focus {
1187
+ background-color: var(--utrecht-select-focus-background-color, var(--utrecht-form-control-focus-background-color, var(--utrecht-select-background-color, var(--utrecht-form-control-background-color))));
1188
+ border-color: var(--utrecht-select-focus-border-color, var(--utrecht-form-control-focus-border-color, var(--utrecht-select-border-color, var(--utrecht-form-control-border-color))));
1189
+ color: var(--utrecht-select-focus-color, var(--utrecht-form-control-focus-color, var(--utrecht-select-color, var(--utrecht-form-control-color))));
1190
+ /* - The browser default focus ring should apply when these CSS custom properties are not set.
1191
+ * - Make the `box-shadow` value available, so components that have their own `box-shadow`
1192
+ * can combine it with the focus ring box shadow.
1193
+ */
1194
+ --_utrecht-focus-ring-box-shadow: 0 0 0 var(--utrecht-focus-outline-width, 0)
1195
+ var(--utrecht-focus-inverse-outline-color, transparent);
1196
+ box-shadow: var(--_utrecht-focus-ring-box-shadow);
1197
+ outline-color: var(--utrecht-focus-outline-color, revert);
1198
+ outline-offset: var(--utrecht-focus-outline-offset, revert);
1199
+ outline-style: var(--utrecht-focus-outline-style, revert);
1200
+ outline-width: var(--utrecht-focus-outline-width, revert);
1201
+ }
1202
+ .utrecht-html select:focus:not(:focus-visible) {
1203
+ /* undo focus ring */
1204
+ box-shadow: none;
1205
+ outline-style: revert;
1206
+ }
1207
+ .utrecht-html select[aria-invalid=true] {
1208
+ --_utrecht-select-border-width: var(
1209
+ --utrecht-select-invalid-border-width,
1210
+ var(
1211
+ --utrecht-form-control-invalid-border-width,
1212
+ var(--utrecht-select-border-width, var(--utrecht-form-control-border-width))
1213
+ )
1214
+ );
1215
+ background-color: var(--utrecht-select-invalid-background-color, var(--utrecht-form-control-invalid-background-color, var(--utrecht-select-background-color, var(--utrecht-form-control-background-color))));
1216
+ border-color: var(--utrecht-select-invalid-border-color, var(--utrecht-form-control-invalid-border-color, var(--utrecht-select-border-color, var(--utrecht-form-control-border-color))));
1217
+ border-width: var(--_utrecht-select-border-width);
1218
+ border-bottom-width: var(--utrecht-select-invalid-border-block-end-width, var(--utrecht-form-control-invalid-border-block-end-width, var(--utrecht-select-border-block-end-width, var(--utrecht-form-control-border-block-end-width, var(--_utrecht-select-border-width)))));
1219
+ }
1220
+ .utrecht-html hr {
1245
1221
  border-color: var(--utrecht-separator-color);
1246
- border-width: 0 0 var(--utrecht-separator-width) 0;
1247
- margin-block-start: var(--utrecht-separator-margin-block-start);
1248
- margin-block-end: var(--utrecht-separator-margin-block-end);
1222
+ border-style: solid;
1223
+ border-width: 0 0 var(--utrecht-separator-block-size) 0;
1224
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-separator-margin-block-end, 0));
1225
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-separator-margin-block-start, 0));
1226
+ --utrecht-space-around: 1;
1249
1227
  }
1250
-
1251
- /**
1252
- * @license EUPL-1.2
1253
- * Copyright (c) 2021 Robbert Broersma
1254
- */
1255
- /**
1256
- * @license EUPL-1.2
1257
- * Copyright (c) 2021 Robbert Broersma
1258
- */
1259
- .utrecht-table, .utrecht-html table {
1228
+ .utrecht-html table {
1260
1229
  border-collapse: collapse;
1230
+ border-color: var(--utrecht-table-border-color, 0);
1231
+ border-style: solid;
1232
+ border-width: var(--utrecht-table-border-width, 0);
1233
+ font-family: var(--utrecht-table-font-family, var(--utrecht-document-font-family));
1234
+ font-size: var(--utrecht-table-font-size, inherit);
1235
+ line-height: var(--utrecht-table-line-height, inherit);
1236
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-table-margin-block-end, 0));
1237
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-table-margin-block-start, 0));
1261
1238
  width: 100%;
1239
+ --utrecht-space-around: 1;
1262
1240
  }
1263
-
1264
- .utrecht-table--distanced, .utrecht-html table {
1265
- margin-block-end: var(--utrecht-table-margin-block-end);
1266
- margin-block-start: var(--utrecht-table-margin-block-start);
1267
- }
1268
-
1269
- .utrecht-table__caption, .utrecht-html caption {
1270
- font-weight: var(--utrecht-table-caption-font-weight);
1241
+ .utrecht-html caption {
1242
+ color: var(--utrecht-table-caption-color);
1271
1243
  font-family: var(--utrecht-table-caption-font-family);
1272
1244
  font-size: var(--utrecht-table-caption-font-size);
1273
- color: var(--utrecht-table-caption-color);
1245
+ font-weight: var(--utrecht-table-caption-font-weight);
1274
1246
  line-height: var(--utrecht-table-caption-line-height);
1275
1247
  margin-block-end: var(--utrecht-table-caption-margin-block-end);
1248
+ page-break-after: avoid;
1276
1249
  text-align: var(--utrecht-table-caption-text-align, center);
1277
1250
  }
1278
-
1279
- .utrecht-table__header, .utrecht-html thead {
1280
- font-weight: var(--utrecht-table-header-font-weight);
1251
+ .utrecht-html thead {
1252
+ --_utrecht-table-header-cell-vertical-align: bottom;
1253
+ background-color: var(--utrecht-table-header-background-color);
1281
1254
  color: var(--utrecht-table-header-color);
1255
+ font-weight: var(--utrecht-table-header-font-weight);
1256
+ page-break-inside: avoid;
1282
1257
  text-transform: var(--utrecht-table-header-text-transform);
1283
- vertical-align: bottom;
1284
- }
1285
-
1286
- .utrecht-table__cell--last-header-row, .utrecht-html thead tr:last-child th {
1287
- border-block-end-style: solid;
1288
- border-block-end-color: var(--utrecht-table-header-border-block-end-color, transparent);
1289
- border-block-end-width: var(--utrecht-table-header-border-block-end-width, 0);
1290
- }
1291
-
1292
- .utrecht-table__body, .utrecht-html tbody {
1293
- vertical-align: baseline;
1294
1258
  }
1295
-
1296
- .utrecht-table__heading, .utrecht-html th {
1297
- font-weight: var(--utrecht-table-heading-font-weight);
1298
- color: var(--utrecht-table-heading-color);
1299
- text-transform: var(--utrecht-table-heading-text-transform);
1259
+ .utrecht-html th {
1260
+ color: var(--utrecht-table-header-cell-color);
1261
+ font-size: var(--utrecht-table-header-cell-font-size);
1262
+ font-weight: var(--utrecht-table-header-cell-font-weight);
1263
+ text-align: start;
1264
+ text-transform: var(--utrecht-table-header-cell-text-transform);
1265
+ vertical-align: var(--_utrecht-table-header-cell-vertical-align, top);
1300
1266
  }
1301
-
1302
- .utrecht-table__cell, .utrecht-html th,
1267
+ .utrecht-html th,
1303
1268
  .utrecht-html td {
1304
- border-block-end-style: solid;
1305
1269
  border-block-end-color: var(--utrecht-table-row-border-block-end-color, transparent);
1270
+ border-block-end-style: solid;
1306
1271
  border-block-end-width: var(--utrecht-table-row-border-block-end-width, 0);
1307
1272
  line-height: var(--utrecht-table-cell-line-height, inherit);
1308
- padding-inline-start: var(--utrecht-table-cell-padding-inline-start, 0);
1309
- padding-inline-end: var(--utrecht-table-cell-padding-inline-end, 0);
1310
- padding-block-start: var(--utrecht-table-cell-padding-block-start, 0);
1311
1273
  padding-block-end: var(--utrecht-table-cell-padding-block-end, 0);
1274
+ padding-block-start: var(--utrecht-table-cell-padding-block-start, 0);
1275
+ padding-inline-end: var(--utrecht-table-cell-padding-inline-end, 0);
1276
+ padding-inline-start: var(--utrecht-table-cell-padding-inline-start, 0);
1312
1277
  text-align: start;
1278
+ vertical-align: top;
1313
1279
  }
1314
-
1315
- .utrecht-table__cell--first, .utrecht-html td:first-child,
1280
+ .utrecht-html td:first-child,
1316
1281
  .utrecht-html th:first-child {
1317
1282
  padding-inline-start: var(--utrecht-table-row-padding-inline-start, var(--utrecht-table-cell-padding-inline-start, 0));
1318
1283
  }
1319
-
1320
- .utrecht-table__cell--last, .utrecht-html td:last-child,
1284
+ .utrecht-html td:last-child,
1321
1285
  .utrecht-html th:last-child {
1322
1286
  padding-inline-end: var(--utrecht-table-row-padding-inline-end, var(--utrecht-table-cell-padding-inline-end, 0));
1323
1287
  }
1324
-
1325
- .utrecht-table__cell--numeric, .utrecht-html th.numeric,
1288
+ .utrecht-html thead tr:last-child th {
1289
+ border-block-end-color: var(--utrecht-table-header-border-block-end-color, transparent);
1290
+ border-block-end-style: solid;
1291
+ border-block-end-width: var(--utrecht-table-header-border-block-end-width, 0);
1292
+ }
1293
+ .utrecht-html thead > tr > th.numeric,
1294
+ .utrecht-html tfoot > tr > th.numeric,
1295
+ .utrecht-html th[scope=column].numeric {
1296
+ /* stylelint-disable-next-line declaration-property-value-disallowed-list */
1297
+ text-align: right;
1298
+ }
1326
1299
  .utrecht-html td.numeric {
1327
1300
  /* stylelint-disable-next-line declaration-property-value-disallowed-list */
1328
1301
  text-align: right;
1302
+ font-variant-numeric: lining-nums tabular-nums;
1329
1303
  }
1330
-
1331
- .utrecht-table__row--alternate-odd, .utrecht-html table.alternate-row-color > tr:nth-child(odd) > td, .utrecht-html table.alternate-row-color > tr:nth-child(odd) > th, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(odd) > td, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(odd) > th {
1304
+ .utrecht-html table.alternate-row-color > tr:nth-child(even) > td, .utrecht-html table.alternate-row-color > tr:nth-child(even) > th {
1305
+ background-color: var(--utrecht-table-row-alternate-even-background-color);
1306
+ color: var(--utrecht-table-row-alternate-even-color);
1307
+ }
1308
+ .utrecht-html table.alternate-row-color > tr:nth-child(odd) > td, .utrecht-html table.alternate-row-color > tr:nth-child(odd) > th {
1332
1309
  background-color: var(--utrecht-table-row-alternate-odd-background-color);
1333
1310
  color: var(--utrecht-table-row-alternate-odd-color);
1334
1311
  }
1335
-
1336
- .utrecht-table__row--alternate-even, .utrecht-html table.alternate-row-color > tr:nth-child(even) > td, .utrecht-html table.alternate-row-color > tr:nth-child(even) > th, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(even) > td, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(even) > th {
1312
+ .utrecht-html table.alternate-row-color > tbody > tr:nth-child(even) > td, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(even) > th {
1337
1313
  background-color: var(--utrecht-table-row-alternate-even-background-color);
1338
1314
  color: var(--utrecht-table-row-alternate-even-color);
1339
1315
  }
1340
-
1341
- /**
1342
- * @license EUPL-1.2
1343
- * Copyright (c) 2021 Robbert Broersma
1344
- */
1345
- /**
1346
- * @license EUPL-1.2
1347
- * Copyright (c) 2021 Robbert Broersma
1348
- */
1349
- .utrecht-textarea, .utrecht-html textarea {
1350
- border-width: var(--utrecht-textarea-border-width);
1351
- border-bottom-width: var(--utrecht-textarea-border-bottom-width, var(--utrecht-textarea-border-width));
1352
- border-color: var(--utrecht-textarea-border-color);
1353
- border-radius: var(--utrecht-textarea-border-radius, 0);
1316
+ .utrecht-html table.alternate-row-color > tbody > tr:nth-child(odd) > td, .utrecht-html table.alternate-row-color > tbody > tr:nth-child(odd) > th {
1317
+ background-color: var(--utrecht-table-row-alternate-odd-background-color);
1318
+ color: var(--utrecht-table-row-alternate-odd-color);
1319
+ }
1320
+ .utrecht-html textarea {
1321
+ background-color: var(--utrecht-textarea-background-color, var(--utrecht-form-control-background-color));
1322
+ border-width: var(--utrecht-textarea-border-width, var(--utrecht-form-control-border-width));
1323
+ border-bottom-width: var(--utrecht-textarea-border-bottom-width, var(--utrecht-textarea-border-width, var(--utrecht-form-control-border-width)));
1324
+ border-color: var(--utrecht-textarea-border-color, var(--utrecht-form-control-border-color));
1325
+ border-radius: var(--utrecht-textarea-border-radius, var(--utrecht-form-control-border-radius, 0));
1354
1326
  border-style: solid;
1355
- color: var(--utrecht-textarea-color);
1356
- font-family: var(--utrecht-textarea-font-family);
1357
- font-size: var(--utrecht-textarea-font-size, 1em);
1358
- max-width: var(--utrecht-textarea-max-width);
1359
- padding-block-end: var(--utrecht-textarea-padding-block-end);
1360
- padding-block-start: var(--utrecht-textarea-padding-block-start);
1361
- padding-inline-end: var(--utrecht-textarea-padding-inline-end);
1362
- padding-inline-start: var(--utrecht-textarea-padding-inline-start);
1327
+ box-sizing: border-box;
1328
+ color: var(--utrecht-textarea-color, var(--utrecht-form-control-color));
1329
+ font-family: var(--utrecht-textarea-font-family, var(--utrecht-form-control-font-family));
1330
+ font-size: var(--utrecht-textarea-font-size, var(--utrecht-form-control-font-size, 1em));
1331
+ font-weight: initial; /* harden */
1332
+ height: initial; /* harden */
1333
+ line-height: var(--utrecht-textarea-line-height, initial);
1334
+ max-inline-size: var(--utrecht-textarea-max-inline-size, var(--utrecht-form-control-max-inline-size));
1335
+ min-block-size: var(--utrecht-textarea-min-block-size);
1336
+ padding-block-end: var(--utrecht-textarea-padding-block-end, var(--utrecht-form-control-padding-block-end, 0));
1337
+ padding-block-start: var(--utrecht-textarea-padding-block-start, var(--utrecht-form-control-padding-block-start, 0));
1338
+ padding-inline-end: var(--utrecht-textarea-padding-inline-end, var(--utrecht-form-control-padding-inline-end, initial));
1339
+ padding-inline-start: var(--utrecht-textarea-padding-inline-start, var(--utrecht-form-control-padding-inline-start, initial));
1340
+ resize: vertical;
1363
1341
  width: 100%;
1364
1342
  }
1365
-
1366
- .utrecht-textarea--invalid, .utrecht-textarea--html-textarea:invalid, .utrecht-textarea--html-textarea[aria-invalid=true], .utrecht-html textarea:invalid, .utrecht-html textarea[aria-invalid=true] {
1367
- border-color: var(--utrecht-textarea-invalid-border-color);
1368
- border-width: var(--utrecht-textarea-invalid-border-width);
1369
- }
1370
-
1371
- .utrecht-textarea--disabled, .utrecht-textarea--html-textarea:disabled, .utrecht-html textarea:disabled {
1372
- border-color: var(--utrecht-textarea-disabled-border-color);
1373
- color: var(--utrecht-textarea-disabled-color);
1374
- }
1375
-
1376
- .utrecht-textarea--focus, .utrecht-textarea--html-textarea:focus, .utrecht-html textarea:focus {
1377
- outline-width: var(--utrecht-focus-outline-width, 0);
1378
- outline-style: var(--utrecht-focus-outline-style, solid);
1379
- outline-color: var(--utrecht-focus-outline-color, transparent);
1380
- color: var(--utrecht-focus-color, inherit);
1381
- box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
1382
- outline-offset: 0;
1383
- background-color: var(--utrecht-focus-background-color);
1384
- }
1385
-
1386
- .utrecht-textarea--read-only, .utrecht-textarea--html-textarea:read-only, .utrecht-html textarea:read-only {
1387
- border-color: var(--utrecht-textarea-read-only-border-color);
1388
- color: var(--utrecht-textarea-read-only-color);
1389
- }
1390
-
1391
- /**
1392
- * @license EUPL-1.2
1393
- * Copyright (c) 2021 Robbert Broersma
1394
- */
1395
- /**
1396
- * @license EUPL-1.2
1397
- * Copyright (c) 2021 Robbert Broersma
1398
- */
1399
- .utrecht-textbox, .utrecht-html input[type=text],
1400
- .utrecht-html input[type=email],
1401
- .utrecht-html input[type=password],
1402
- .utrecht-html input[type=search],
1403
- .utrecht-html input[type=tel],
1404
- .utrecht-html input[type=url] {
1405
- border-width: var(--utrecht-textbox-border-width);
1406
- border-bottom-width: var(--utrecht-textbox-border-bottom-width, var(--utrecht-textbox-border-width));
1407
- border-color: var(--utrecht-textbox-border-color);
1408
- border-radius: var(--utrecht-textbox-border-radius, 0);
1343
+ .utrecht-html textarea:disabled {
1344
+ background-color: var(--utrecht-textarea-disabled-background-color, var(--utrecht-form-control-disabled-background-color, var(--utrecht-textarea-background-color, var(--utrecht-form-control-background-color))));
1345
+ border-color: var(--utrecht-textarea-disabled-border-color, var(--utrecht-form-control-disabled-border-color, var(--utrecht-textarea-border-color, var(--utrecht-form-control-border-color))));
1346
+ color: var(--utrecht-textarea-disabled-color, var(--utrecht-form-control-disabled-color, var(--utrecht-textarea-color, var(--utrecht-form-control-color))));
1347
+ cursor: var(--utrecht-action-disabled-cursor);
1348
+ }
1349
+ .utrecht-html textarea:focus {
1350
+ background-color: var(--utrecht-textarea-focus-background-color, var(--utrecht-form-control-focus-background-color, var(--utrecht-textarea-background-color, var(--utrecht-form-control-background-color))));
1351
+ border-color: var(--utrecht-textarea-focus-border-color, var(--utrecht-form-control-focus-border-color, var(--utrecht-textarea-border-color, var(--utrecht-form-control-border-color))));
1352
+ color: var(--utrecht-textarea-focus-color, var(--utrecht-form-control-focus-color, var(--utrecht-textarea-color, var(--utrecht-form-control-color))));
1353
+ /* - The browser default focus ring should apply when these CSS custom properties are not set.
1354
+ * - Make the `box-shadow` value available, so components that have their own `box-shadow`
1355
+ * can combine it with the focus ring box shadow.
1356
+ */
1357
+ --_utrecht-focus-ring-box-shadow: 0 0 0 var(--utrecht-focus-outline-width, 0)
1358
+ var(--utrecht-focus-inverse-outline-color, transparent);
1359
+ box-shadow: var(--_utrecht-focus-ring-box-shadow);
1360
+ outline-color: var(--utrecht-focus-outline-color, revert);
1361
+ outline-offset: var(--utrecht-focus-outline-offset, revert);
1362
+ outline-style: var(--utrecht-focus-outline-style, revert);
1363
+ outline-width: var(--utrecht-focus-outline-width, revert);
1364
+ }
1365
+ .utrecht-html textarea:focus:not(:focus-visible) {
1366
+ /* undo focus ring */
1367
+ box-shadow: none;
1368
+ outline-style: revert;
1369
+ }
1370
+ .utrecht-html textarea:invalid, .utrecht-html textarea[aria-invalid=true] {
1371
+ --_utrecht-textarea-border-width: var(
1372
+ --utrecht-textarea-invalid-border-width,
1373
+ var(
1374
+ --utrecht-form-control-invalid-border-width,
1375
+ var(--utrecht-textarea-border-width, var(--utrecht-form-control-border-width))
1376
+ )
1377
+ );
1378
+ background-color: var(--utrecht-textarea-invalid-background-color, var(--utrecht-form-control-invalid-background-color, var(--utrecht-textarea-background-color, var(--utrecht-form-control-background-color))));
1379
+ border-color: var(--utrecht-textarea-invalid-border-color, var(--utrecht-form-control-invalid-border-color, var(--utrecht-textarea-border-color, var(--utrecht-form-control-border-color))));
1380
+ border-width: var(--_utrecht-textarea-border-width);
1381
+ border-bottom-width: var(--utrecht-textarea-invalid-border-bottom-width, var(--utrecht-form-control-invalid-border-bottom-width, var(--utrecht-textarea-border-bottom-width, var(--utrecht-form-control-border-bottom-width, var(--_utrecht-textarea-border-width)))));
1382
+ color: var(--utrecht-textarea-invalid-color, var(--utrecht-form-control-invalid-color, var(--utrecht-textarea-color, var(--utrecht-form-control-color))));
1383
+ }
1384
+ .utrecht-html textarea:read-only {
1385
+ background-color: var(--utrecht-textarea-read-only-border, var(--utrecht-form-control-read-only-background-color, var(--utrecht-textarea-border, var(--utrecht-form-control-background-color))));
1386
+ border-color: var(--utrecht-textarea-read-only-border, var(--utrecht-form-control-read-only-border-color, var(--utrecht-textarea-border, var(--utrecht-form-control-border-color))));
1387
+ color: var(--utrecht-textarea-read-only-color, var(--utrecht-form-control-read-only-color, var(--utrecht-textarea-color, var(--utrecht-form-control-color))));
1388
+ }
1389
+ .utrecht-html textarea::placeholder {
1390
+ color: var(--utrecht-textarea-placeholder-color, var(--utrecht-form-control-placeholder-color, var(--utrecht-textarea-color, var(--utrecht-form-control-color))));
1391
+ font-style: var(--utrecht-form-control-placeholder-font-style);
1392
+ opacity: 100%;
1393
+ }
1394
+ .utrecht-html input:not([type]),
1395
+ .utrecht-html input[type=date i],
1396
+ .utrecht-html input[type=datetime-local i],
1397
+ .utrecht-html input[type=email i],
1398
+ .utrecht-html input[type=month i],
1399
+ .utrecht-html input[type=number i],
1400
+ .utrecht-html input[type=password i],
1401
+ .utrecht-html input[type=search i],
1402
+ .utrecht-html input[type=tel i],
1403
+ .utrecht-html input[type=text i],
1404
+ .utrecht-html input[type=time i],
1405
+ .utrecht-html input[type=url i],
1406
+ .utrecht-html input[type=week i] {
1407
+ background-color: var(--utrecht-textbox-background-color, var(--utrecht-form-control-background-color));
1408
+ border-width: var(--utrecht-textbox-border-width, var(--utrecht-form-control-border-width));
1409
+ border-bottom-width: var(--utrecht-textbox-border-bottom-width, var(--utrecht-textbox-border-width, var(--utrecht-form-control-border-width)));
1410
+ border-color: var(--utrecht-textbox-border-color, var(--utrecht-form-control-border-color));
1411
+ border-radius: var(--utrecht-textbox-border-radius, var(--utrecht-form-control-border-radius, 0));
1409
1412
  border-style: solid;
1410
- color: var(--utrecht-textbox-color);
1411
- font-family: var(--utrecht-textbox-font-family);
1412
- font-size: var(--utrecht-textbox-font-size, 1em);
1413
- max-width: var(--utrecht-textbox-max-width);
1414
- padding-block-end: var(--utrecht-textbox-padding-block-end);
1415
- padding-block-start: var(--utrecht-textbox-padding-block-start);
1416
- padding-inline-end: var(--utrecht-textbox-padding-inline-end);
1417
- padding-inline-start: var(--utrecht-textbox-padding-inline-start);
1418
1413
  box-sizing: border-box;
1414
+ color: var(--utrecht-textbox-color, var(--utrecht-form-control-color));
1415
+ font-family: var(--utrecht-textbox-font-family, var(--utrecht-form-control-font-family));
1416
+ font-size: var(--utrecht-textbox-font-size, var(--utrecht-form-control-font-size, 1em));
1417
+ font-weight: initial; /* harden */
1418
+ height: initial; /* harden */
1419
+ line-height: initial; /* harden */
1420
+ max-inline-size: var(--utrecht-textbox-max-inline-size, var(--utrecht-form-control-max-inline-size));
1421
+ padding-block-end: var(--utrecht-textbox-padding-block-end, var(--utrecht-form-control-padding-block-end, 0));
1422
+ padding-block-start: var(--utrecht-textbox-padding-block-start, var(--utrecht-form-control-padding-block-start, 0));
1423
+ padding-inline-end: var(--utrecht-textbox-padding-inline-end, var(--utrecht-form-control-padding-inline-end, initial));
1424
+ padding-inline-start: var(--utrecht-textbox-padding-inline-start, var(--utrecht-form-control-padding-inline-start, initial));
1419
1425
  width: 100%;
1420
1426
  }
1421
-
1422
- .utrecht-textbox--invalid, .utrecht-textbox--html-input:invalid, .utrecht-textbox--html-input[aria-invalid=true], .utrecht-html input[type=text]:invalid,
1423
- .utrecht-html input[type=email]:invalid,
1424
- .utrecht-html input[type=password]:invalid,
1425
- .utrecht-html input[type=search]:invalid,
1426
- .utrecht-html input[type=tel]:invalid,
1427
- .utrecht-html input[type=url]:invalid, .utrecht-html input[aria-invalid=true][type=text],
1428
- .utrecht-html input[aria-invalid=true][type=email],
1429
- .utrecht-html input[aria-invalid=true][type=password],
1430
- .utrecht-html input[aria-invalid=true][type=search],
1431
- .utrecht-html input[aria-invalid=true][type=tel],
1432
- .utrecht-html input[aria-invalid=true][type=url] {
1433
- border-color: var(--utrecht-textbox-invalid-border-color);
1434
- border-width: var(--utrecht-textbox-invalid-border-width);
1435
- }
1436
-
1437
- .utrecht-textbox--disabled, .utrecht-textbox--html-input:disabled, .utrecht-html input[type=text]:disabled,
1438
- .utrecht-html input[type=email]:disabled,
1439
- .utrecht-html input[type=password]:disabled,
1440
- .utrecht-html input[type=search]:disabled,
1441
- .utrecht-html input[type=tel]:disabled,
1442
- .utrecht-html input[type=url]:disabled {
1443
- border-color: var(--utrecht-textbox-disabled-border-color);
1444
- color: var(--utrecht-textbox-disabled-color);
1445
- }
1446
-
1447
- .utrecht-textbox--focus, .utrecht-textbox--html-input:focus, .utrecht-html input[type=text]:focus,
1448
- .utrecht-html input[type=email]:focus,
1449
- .utrecht-html input[type=password]:focus,
1450
- .utrecht-html input[type=search]:focus,
1451
- .utrecht-html input[type=tel]:focus,
1452
- .utrecht-html input[type=url]:focus {
1453
- outline-width: var(--utrecht-focus-outline-width, 0);
1454
- outline-style: var(--utrecht-focus-outline-style, solid);
1455
- outline-color: var(--utrecht-focus-outline-color, transparent);
1456
- color: var(--utrecht-focus-color, inherit);
1457
- box-shadow: 0 0 0 var(--utrecht-focus-box-shadow-spread-radius, 0) var(--utrecht-focus-box-shadow-color, transparent);
1458
- outline-offset: 0;
1459
- background-color: var(--utrecht-focus-background-color);
1460
- }
1461
-
1462
- .utrecht-textbox--read-only, .utrecht-textbox--html-input:read-only, .utrecht-html input[type=text]:read-only,
1463
- .utrecht-html input[type=email]:read-only,
1464
- .utrecht-html input[type=password]:read-only,
1465
- .utrecht-html input[type=search]:read-only,
1466
- .utrecht-html input[type=tel]:read-only,
1467
- .utrecht-html input[type=url]:read-only {
1468
- border-color: var(--utrecht-textbox-read-only-border-color);
1469
- color: var(--utrecht-textbox-read-only-color);
1470
- }
1471
-
1472
- /**
1473
- * @license EUPL-1.2
1474
- * Copyright (c) 2021 Robbert Broersma
1475
- */
1476
- /**
1477
- * @license EUPL-1.2
1478
- * Copyright (c) 2021 Robbert Broersma
1479
- * Copyright (c) 2021 Gemeente Utrecht
1480
- */
1481
- .utrecht-unordered-list, .utrecht-html ul {
1427
+ .utrecht-html input:not([type]):disabled,
1428
+ .utrecht-html input[type=date i]:disabled,
1429
+ .utrecht-html input[type=datetime-local i]:disabled,
1430
+ .utrecht-html input[type=email i]:disabled,
1431
+ .utrecht-html input[type=month i]:disabled,
1432
+ .utrecht-html input[type=number i]:disabled,
1433
+ .utrecht-html input[type=password i]:disabled,
1434
+ .utrecht-html input[type=search i]:disabled,
1435
+ .utrecht-html input[type=tel i]:disabled,
1436
+ .utrecht-html input[type=text i]:disabled,
1437
+ .utrecht-html input[type=time i]:disabled,
1438
+ .utrecht-html input[type=url i]:disabled,
1439
+ .utrecht-html input[type=week i]:disabled {
1440
+ background-color: var(--utrecht-textbox-disabled-background-color, var(--utrecht-form-control-disabled-background-color, var(--utrecht-textarea-background-color, var(--utrecht-form-control-background-color))));
1441
+ border-color: var(--utrecht-textbox-disabled-border-color, var(--utrecht-form-control-disabled-border-color, var(--utrecht-textarea-border-color, var(--utrecht-form-control-border-color))));
1442
+ color: var(--utrecht-textbox-disabled-color, var(--utrecht-form-control-disabled-color, var(--utrecht-textarea-color, var(--utrecht-form-control-color))));
1443
+ cursor: var(--utrecht-action-disabled-cursor);
1444
+ }
1445
+ .utrecht-html input:not([type]):focus,
1446
+ .utrecht-html input[type=date i]:focus,
1447
+ .utrecht-html input[type=datetime-local i]:focus,
1448
+ .utrecht-html input[type=email i]:focus,
1449
+ .utrecht-html input[type=month i]:focus,
1450
+ .utrecht-html input[type=number i]:focus,
1451
+ .utrecht-html input[type=password i]:focus,
1452
+ .utrecht-html input[type=search i]:focus,
1453
+ .utrecht-html input[type=tel i]:focus,
1454
+ .utrecht-html input[type=text i]:focus,
1455
+ .utrecht-html input[type=time i]:focus,
1456
+ .utrecht-html input[type=url i]:focus,
1457
+ .utrecht-html input[type=week i]:focus {
1458
+ background-color: var(--utrecht-textbox-focus-background-color, var(--utrecht-form-control-focus-background-color, var(--utrecht-textarea-background-color, var(--utrecht-form-control-background-color))));
1459
+ border-color: var(--utrecht-textbox-focus-border-color, var(--utrecht-form-control-focus-border-color, var(--utrecht-textarea-border-color, var(--utrecht-form-control-border-color))));
1460
+ color: var(--utrecht-textbox-focus-color, var(--utrecht-form-control-focus-color, var(--utrecht-textarea-color, var(--utrecht-form-control-color))));
1461
+ /* - The browser default focus ring should apply when these CSS custom properties are not set.
1462
+ * - Make the `box-shadow` value available, so components that have their own `box-shadow`
1463
+ * can combine it with the focus ring box shadow.
1464
+ */
1465
+ --_utrecht-focus-ring-box-shadow: 0 0 0 var(--utrecht-focus-outline-width, 0)
1466
+ var(--utrecht-focus-inverse-outline-color, transparent);
1467
+ box-shadow: var(--_utrecht-focus-ring-box-shadow);
1468
+ outline-color: var(--utrecht-focus-outline-color, revert);
1469
+ outline-offset: var(--utrecht-focus-outline-offset, revert);
1470
+ outline-style: var(--utrecht-focus-outline-style, revert);
1471
+ outline-width: var(--utrecht-focus-outline-width, revert);
1472
+ }
1473
+ .utrecht-html input:not([type]):focus:not(:focus-visible),
1474
+ .utrecht-html input[type=date i]:focus:not(:focus-visible),
1475
+ .utrecht-html input[type=datetime-local i]:focus:not(:focus-visible),
1476
+ .utrecht-html input[type=email i]:focus:not(:focus-visible),
1477
+ .utrecht-html input[type=month i]:focus:not(:focus-visible),
1478
+ .utrecht-html input[type=number i]:focus:not(:focus-visible),
1479
+ .utrecht-html input[type=password i]:focus:not(:focus-visible),
1480
+ .utrecht-html input[type=search i]:focus:not(:focus-visible),
1481
+ .utrecht-html input[type=tel i]:focus:not(:focus-visible),
1482
+ .utrecht-html input[type=text i]:focus:not(:focus-visible),
1483
+ .utrecht-html input[type=time i]:focus:not(:focus-visible),
1484
+ .utrecht-html input[type=url i]:focus:not(:focus-visible),
1485
+ .utrecht-html input[type=week i]:focus:not(:focus-visible) {
1486
+ /* undo focus ring */
1487
+ box-shadow: none;
1488
+ outline-style: revert;
1489
+ }
1490
+ .utrecht-html input:not([type]):invalid, .utrecht-html input:not([type])[aria-invalid=true],
1491
+ .utrecht-html input[type=date i]:invalid,
1492
+ .utrecht-html input[type=date i][aria-invalid=true],
1493
+ .utrecht-html input[type=datetime-local i]:invalid,
1494
+ .utrecht-html input[type=datetime-local i][aria-invalid=true],
1495
+ .utrecht-html input[type=email i]:invalid,
1496
+ .utrecht-html input[type=email i][aria-invalid=true],
1497
+ .utrecht-html input[type=month i]:invalid,
1498
+ .utrecht-html input[type=month i][aria-invalid=true],
1499
+ .utrecht-html input[type=number i]:invalid,
1500
+ .utrecht-html input[type=number i][aria-invalid=true],
1501
+ .utrecht-html input[type=password i]:invalid,
1502
+ .utrecht-html input[type=password i][aria-invalid=true],
1503
+ .utrecht-html input[type=search i]:invalid,
1504
+ .utrecht-html input[type=search i][aria-invalid=true],
1505
+ .utrecht-html input[type=tel i]:invalid,
1506
+ .utrecht-html input[type=tel i][aria-invalid=true],
1507
+ .utrecht-html input[type=text i]:invalid,
1508
+ .utrecht-html input[type=text i][aria-invalid=true],
1509
+ .utrecht-html input[type=time i]:invalid,
1510
+ .utrecht-html input[type=time i][aria-invalid=true],
1511
+ .utrecht-html input[type=url i]:invalid,
1512
+ .utrecht-html input[type=url i][aria-invalid=true],
1513
+ .utrecht-html input[type=week i]:invalid,
1514
+ .utrecht-html input[type=week i][aria-invalid=true] {
1515
+ --_utrecht-textbox-border-width: var(
1516
+ --utrecht-textbox-invalid-border-width,
1517
+ var(
1518
+ --utrecht-form-control-invalid-border-width,
1519
+ var(--utrecht-textbox-border-width, var(--utrecht-form-control-border-width))
1520
+ )
1521
+ );
1522
+ background-color: var(--utrecht-textbox-invalid-background-color, var(--utrecht-form-control-invalid-background-color, var(--utrecht-textbox-background-color, var(--utrecht-form-control-background-color))));
1523
+ border-color: var(--utrecht-textbox-invalid-border-color, var(--utrecht-form-control-invalid-border-color, var(--utrecht-textbox-border-color, var(--utrecht-form-control-border-color))));
1524
+ border-width: var(--_utrecht-textbox-border-width);
1525
+ border-bottom-width: var(--utrecht-textbox-invalid-border-bottom-width, var(--utrecht-form-control-invalid-border-bottom-width, var(--utrecht-textbox-border-bottom-width, var(--utrecht-form-control-border-bottom-width, var(--_utrecht-textbox-border-width)))));
1526
+ color: var(--utrecht-textbox-invalid-color, var(--utrecht-form-control-invalid-color, var(--utrecht-textbox-color, var(--utrecht-form-control-color))));
1527
+ }
1528
+ .utrecht-html input:not([type]):read-only,
1529
+ .utrecht-html input[type=date i]:read-only,
1530
+ .utrecht-html input[type=datetime-local i]:read-only,
1531
+ .utrecht-html input[type=email i]:read-only,
1532
+ .utrecht-html input[type=month i]:read-only,
1533
+ .utrecht-html input[type=number i]:read-only,
1534
+ .utrecht-html input[type=password i]:read-only,
1535
+ .utrecht-html input[type=search i]:read-only,
1536
+ .utrecht-html input[type=tel i]:read-only,
1537
+ .utrecht-html input[type=text i]:read-only,
1538
+ .utrecht-html input[type=time i]:read-only,
1539
+ .utrecht-html input[type=url i]:read-only,
1540
+ .utrecht-html input[type=week i]:read-only {
1541
+ background-color: var(--utrecht-textbox-read-only-background-color, var(--utrecht-form-control-read-only-background-color, var(--utrecht-textbox-background-color, var(--utrecht-form-control-background-color))));
1542
+ border-color: var(--utrecht-textbox-read-only-border-color, var(--utrecht-form-control-read-only-border-color, var(--utrecht-textbox-border-color, var(--utrecht-form-control-border-color))));
1543
+ color: var(--utrecht-textbox-read-only-color, var(--utrecht-form-control-read-only-color, var(--utrecht-textbox-color, var(--utrecht-form-control-color))));
1544
+ }
1545
+ .utrecht-html input:not([type])::placeholder,
1546
+ .utrecht-html input[type=date i]::placeholder,
1547
+ .utrecht-html input[type=datetime-local i]::placeholder,
1548
+ .utrecht-html input[type=email i]::placeholder,
1549
+ .utrecht-html input[type=month i]::placeholder,
1550
+ .utrecht-html input[type=number i]::placeholder,
1551
+ .utrecht-html input[type=password i]::placeholder,
1552
+ .utrecht-html input[type=search i]::placeholder,
1553
+ .utrecht-html input[type=tel i]::placeholder,
1554
+ .utrecht-html input[type=text i]::placeholder,
1555
+ .utrecht-html input[type=time i]::placeholder,
1556
+ .utrecht-html input[type=url i]::placeholder,
1557
+ .utrecht-html input[type=week i]::placeholder {
1558
+ color: var(--utrecht-textbox-placeholder-color, var(--utrecht-form-control-placeholder-color, var(--utrecht-textbox-color, var(--utrecht-form-control-color))));
1559
+ font-style: var(--utrecht-form-control-placeholder-font-style);
1560
+ opacity: 100%;
1561
+ }
1562
+ .utrecht-html input[autocomplete~=current-password i],
1563
+ .utrecht-html input[autocomplete~=new-password i],
1564
+ .utrecht-html input[type=password i] {
1565
+ font-variant-ligatures: none;
1566
+ font-variant-numeric: slashed-zero;
1567
+ }
1568
+ .utrecht-html input[autocomplete~=bday i],
1569
+ .utrecht-html input[autocomplete~=bday-day i],
1570
+ .utrecht-html input[autocomplete~=bday-month i],
1571
+ .utrecht-html input[autocomplete~=bday-year i],
1572
+ .utrecht-html input[autocomplete~=cc-csc i],
1573
+ .utrecht-html input[autocomplete~=cc-exp i],
1574
+ .utrecht-html input[autocomplete~=cc-exp-month i],
1575
+ .utrecht-html input[autocomplete~=cc-exp-year i],
1576
+ .utrecht-html input[autocomplete~=cc-number i],
1577
+ .utrecht-html input[autocomplete~=one-time-code i],
1578
+ .utrecht-html input[autocomplete~=postal-code i],
1579
+ .utrecht-html input[autocomplete~=tel i],
1580
+ .utrecht-html input[autocomplete~=tel-area-code i],
1581
+ .utrecht-html input[autocomplete~=tel-country-code i],
1582
+ .utrecht-html input[autocomplete~=tel-extension i],
1583
+ .utrecht-html input[autocomplete~=tel-local i],
1584
+ .utrecht-html input[autocomplete~=tel-national i],
1585
+ .utrecht-html input[autocomplete~=transaction-amount i],
1586
+ .utrecht-html input[inputmode=decimal i],
1587
+ .utrecht-html input[inputmode=numeric i],
1588
+ .utrecht-html input[inputmode=tel i],
1589
+ .utrecht-html input[type=number i],
1590
+ .utrecht-html input[type=tel i] {
1591
+ -moz-appearance: textfield; /* avoid spinner input in Firefox */
1592
+ font-variant-numeric: lining-nums tabular-nums;
1593
+ }
1594
+ .utrecht-html input[inputmode=email i],
1595
+ .utrecht-html input[inputmode=url i],
1596
+ .utrecht-html input[type=email i],
1597
+ .utrecht-html input[type=url i] {
1598
+ font-variant-ligatures: none;
1599
+ }
1600
+ .utrecht-html ul {
1482
1601
  font-family: var(--utrecht-document-font-family, inherit);
1483
- font-size: var(--utrecht-document-font-size, inherit);
1484
- line-height: var(--utrecht-document-line-height, inherit);
1485
- padding-inline-start: 2ch;
1486
- }
1487
-
1488
- .utrecht-unordered-list--distanced, .utrecht-html ul {
1489
- margin-block-start: var(--utrecht-unordered-list-margin-block-start, var(--utrecht-paragraph-margin-block-start));
1490
- margin-block-end: var(--utrecht-unordered-list-margin-block-end, var(--utrecht-paragraph-margin-block-end));
1491
- }
1492
-
1493
- .utrecht-unordered-list--nested {
1494
- margin-inline-start: 2ch;
1495
- margin-block-end: 0;
1602
+ font-size: var(--utrecht-unordered-list-font-size, var(--utrecht-document-font-size, inherit));
1603
+ line-height: var(--utrecht-unordered-list-line-height, var(--utrecht-document-line-height, inherit));
1604
+ margin-block-end: calc(var(--utrecht-space-around, 0) * var(--utrecht-unordered-list-margin-block-end, var(--utrecht-paragraph-margin-block-end, 0)));
1605
+ margin-block-start: calc(var(--utrecht-space-around, 0) * var(--utrecht-unordered-list-margin-block-start, var(--utrecht-paragraph-margin-block-start, 0)));
1606
+ padding-inline-start: var(--utrecht-unordered-list-padding-inline-start, 2ch);
1607
+ text-align: start;
1608
+ width: max-content;
1609
+ --utrecht-space-around: 1;
1496
1610
  }
1497
-
1498
- .utrecht-unordered-list__item, .utrecht-html ul > li {
1499
- padding-inline-start: 1ch;
1500
- margin-block-start: var(--utrecht-unordered-list-item-margin-block-start);
1611
+ .utrecht-html ul > li {
1501
1612
  margin-block-end: var(--utrecht-unordered-list-item-margin-block-end);
1613
+ margin-block-start: var(--utrecht-unordered-list-item-margin-block-start);
1614
+ padding-inline-start: var(--utrecht-unordered-list-item-padding-inline-start, 1ch);
1502
1615
  }
1503
-
1504
- .utrecht-unordered-list__item::marker, .utrecht-html ul > li::marker,
1505
- .utrecht-unordered-list__marker {
1616
+ .utrecht-html ul > li::marker {
1506
1617
  color: var(--utrecht-unordered-list-marker-color);
1507
1618
  content: "●";
1508
1619
  }