@utrecht/component-library-css 1.0.0-alpha.39 → 1.0.0-alpha.390

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