@utrecht/component-library-css 1.0.0-alpha.44 → 1.0.0-alpha.440

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