@solid-design-system/styles 1.0.0-next.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/LICENSE.md +10 -0
  3. package/README.md +8 -0
  4. package/cdn/modules/chip.css +1 -0
  5. package/cdn/modules/container.css +1 -0
  6. package/cdn/modules/copyright.css +1 -0
  7. package/cdn/modules/display.css +1 -0
  8. package/cdn/modules/flag.css +1 -0
  9. package/cdn/modules/footnotes.css +1 -0
  10. package/cdn/modules/headline.css +1 -0
  11. package/cdn/modules/hidden-links.css +1 -0
  12. package/cdn/modules/interactive.css +1 -0
  13. package/cdn/modules/leadtext.css +1 -0
  14. package/cdn/modules/list.css +1 -0
  15. package/cdn/modules/mark.css +1 -0
  16. package/cdn/modules/media.css +1 -0
  17. package/cdn/modules/meta.css +1 -0
  18. package/cdn/modules/paragraph.css +1 -0
  19. package/cdn/modules/prose.css +1 -0
  20. package/cdn/modules/table-cell.css +1 -0
  21. package/cdn/modules/table.css +1 -0
  22. package/cdn/solid-styles.css +1 -0
  23. package/cdn-versioned/modules/chip.css +1 -0
  24. package/cdn-versioned/modules/container.css +1 -0
  25. package/cdn-versioned/modules/copyright.css +1 -0
  26. package/cdn-versioned/modules/display.css +1 -0
  27. package/cdn-versioned/modules/flag.css +1 -0
  28. package/cdn-versioned/modules/footnotes.css +1 -0
  29. package/cdn-versioned/modules/headline.css +1 -0
  30. package/cdn-versioned/modules/hidden-links.css +1 -0
  31. package/cdn-versioned/modules/interactive.css +1 -0
  32. package/cdn-versioned/modules/leadtext.css +1 -0
  33. package/cdn-versioned/modules/list.css +1 -0
  34. package/cdn-versioned/modules/mark.css +1 -0
  35. package/cdn-versioned/modules/media.css +1 -0
  36. package/cdn-versioned/modules/meta.css +1 -0
  37. package/cdn-versioned/modules/paragraph.css +1 -0
  38. package/cdn-versioned/modules/prose.css +1 -0
  39. package/cdn-versioned/modules/table-cell.css +1 -0
  40. package/cdn-versioned/modules/table.css +1 -0
  41. package/cdn-versioned/solid-styles.css +1 -0
  42. package/dist/modules/chip.css +61 -0
  43. package/dist/modules/container.css +184 -0
  44. package/dist/modules/copyright.css +63 -0
  45. package/dist/modules/display.css +70 -0
  46. package/dist/modules/flag.css +59 -0
  47. package/dist/modules/footnotes.css +42 -0
  48. package/dist/modules/headline.css +237 -0
  49. package/dist/modules/hidden-links.css +57 -0
  50. package/dist/modules/interactive.css +105 -0
  51. package/dist/modules/leadtext.css +43 -0
  52. package/dist/modules/list.css +152 -0
  53. package/dist/modules/mark.css +15 -0
  54. package/dist/modules/media.css +33 -0
  55. package/dist/modules/meta.css +49 -0
  56. package/dist/modules/paragraph.css +28 -0
  57. package/dist/modules/prose.css +852 -0
  58. package/dist/modules/table-cell.css +186 -0
  59. package/dist/modules/table.css +24 -0
  60. package/dist/solid-styles.css +1348 -0
  61. package/dist-versioned/modules/chip.css +61 -0
  62. package/dist-versioned/modules/container.css +184 -0
  63. package/dist-versioned/modules/copyright.css +63 -0
  64. package/dist-versioned/modules/display.css +70 -0
  65. package/dist-versioned/modules/flag.css +59 -0
  66. package/dist-versioned/modules/footnotes.css +42 -0
  67. package/dist-versioned/modules/headline.css +237 -0
  68. package/dist-versioned/modules/hidden-links.css +57 -0
  69. package/dist-versioned/modules/interactive.css +105 -0
  70. package/dist-versioned/modules/leadtext.css +43 -0
  71. package/dist-versioned/modules/list.css +152 -0
  72. package/dist-versioned/modules/mark.css +15 -0
  73. package/dist-versioned/modules/media.css +33 -0
  74. package/dist-versioned/modules/meta.css +49 -0
  75. package/dist-versioned/modules/paragraph.css +28 -0
  76. package/dist-versioned/modules/prose.css +852 -0
  77. package/dist-versioned/modules/table-cell.css +186 -0
  78. package/dist-versioned/modules/table.css +24 -0
  79. package/dist-versioned/solid-styles.css +1348 -0
  80. package/package.json +68 -0
@@ -0,0 +1,1348 @@
1
+ /**
2
+ * Generates basic styles for chip elements.
3
+ * @name sd-chip
4
+ * @status stable
5
+ * @since 1.30.0
6
+ * @variant { primary-300 | primary-500 | white } sd-chip--...
7
+ */
8
+
9
+ .sd-chip {
10
+ display: inline-flex;
11
+ height: var(--sd-spacing-6, 1.5rem) /* 24px */;
12
+ align-items: center;
13
+ overflow: hidden;
14
+ white-space: nowrap;
15
+ border-radius: var(--sd-border-radius-default, 0.25rem) /* 4px Default radius for buttons */;
16
+
17
+ background-color: rgb(var(--sd-color-primary-200, 224 233 243) / var(--tw-bg-opacity, 1)) /* Additional background color (light mode) on primary-100 */;
18
+ padding-left: var(--sd-spacing-2, 0.5rem) /* 8px */;
19
+ padding-right: var(--sd-spacing-2, 0.5rem) /* 8px */;
20
+ font-size: var(--sd-font-size-sm, 0.875rem) /* 14px */;
21
+
22
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
23
+ }
24
+
25
+ .sd-chip--primary-500 {
26
+
27
+ background-color: rgb(var(--sd-color-primary-500, 70 109 175) / var(--tw-bg-opacity, 1)) /* Used for hover interaction */;
28
+
29
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
30
+ }
31
+
32
+ .sd-chip--primary-300 {
33
+
34
+ background-color: rgb(var(--sd-color-primary-300, 200 213 231) / var(--tw-bg-opacity, 1)) /* Used for chip background */;
35
+ }
36
+
37
+ .sd-chip--white {
38
+
39
+ background-color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-bg-opacity, 1)) /* Default background color (light mode) 
Used for inverted button */;
40
+ }
41
+
42
+ /**
43
+ * Container lets users delimit and highlight a piece of content. The user has no interaction with it, it is merely a visual element that influences the flow of the page.
44
+ * @name sd-container
45
+ * @status stable
46
+ * @since 1.30.0
47
+ * @variant { primary-100 | primary | border-neutral-400 | white } sd-container--variant-... Defines the background color and border of sd-container.
48
+ * @variant { sm } sd-container--padding-... Defines the padding of sd-container. This makes it adaptable to both small and large screens.
49
+ * @variant { top | right | bottom | left } sd-container--triangle-... Defines an optional triangle cut-out for sd-container. This allows for an indentation resembling an arrow on any side of the container. CSS Property `triangle-background` defines the background color of the cut-out.
50
+ */
51
+
52
+ .sd-container {
53
+ position: relative;
54
+
55
+ background-color: rgb(var(--sd-color-neutral-100, 246 246 246) / var(--tw-bg-opacity, 1)) /* Additional background color (light mode) */;
56
+ padding-left: var(--sd-spacing-10, 2.5rem) /* 40px */;
57
+ padding-right: var(--sd-spacing-10, 2.5rem) /* 40px */;
58
+ padding-top: var(--sd-spacing-8, 2rem) /* 32px */;
59
+ padding-bottom: var(--sd-spacing-8, 2rem) /* 32px */;
60
+ }
61
+
62
+ .sd-container--variant-primary-100 {
63
+
64
+ background-color: rgb(var(--sd-color-primary-100, 236 240 249) / var(--tw-bg-opacity, 1)) /* Additional background color (light mode) */;
65
+ }
66
+
67
+ .sd-container--variant-primary {
68
+
69
+ background-color: rgb(var(--sd-color-primary, 0 53 142) / var(--tw-bg-opacity, 1)) /* Inverted background color (light mode)
70
+ Used for button */;
71
+ }
72
+
73
+ .sd-container--variant-border-neutral-400 {
74
+ border-style: solid;
75
+ --tw-border-opacity: 1;
76
+ border-color: rgb(var(--sd-color-neutral-400, 195 195 195) / var(--tw-border-opacity, 1)) /* Default border color.
77
+ Used for divider, teaser, container, ... */;
78
+
79
+ background-color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-bg-opacity, 1)) /* Default background color (light mode) 
Used for inverted button */;
80
+ border-width: 1px;
81
+ }
82
+
83
+ .sd-container--variant-white {
84
+
85
+ background-color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-bg-opacity, 1)) /* Default background color (light mode) 
Used for inverted button */;
86
+ }
87
+
88
+ .sd-container--padding-sm {
89
+ padding-left: var(--sd-spacing-6, 1.5rem) /* 24px */;
90
+ padding-right: var(--sd-spacing-6, 1.5rem) /* 24px */;
91
+ padding-top: var(--sd-spacing-4, 1rem) /* 16px */;
92
+ padding-bottom: var(--sd-spacing-4, 1rem) /* 16px */;
93
+ }
94
+
95
+ .sd-container {
96
+
97
+ --triangle-background: white;
98
+ }
99
+
100
+ .sd-container--triangle-top::before,
101
+ .sd-container--triangle-right::before,
102
+ .sd-container--triangle-bottom::before,
103
+ .sd-container--triangle-left::before {
104
+ position: absolute;
105
+ display: block;
106
+ border-style: solid;
107
+ border-color: transparent;
108
+ border-width: 14px;
109
+ content: '';
110
+ }
111
+
112
+ .sd-container--triangle-top::before {
113
+ top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
114
+ left: calc(50% - 14px);
115
+ border-top-color: var(--triangle-background);
116
+ }
117
+
118
+ .sd-container--triangle-right::before {
119
+ right: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
120
+ top: calc(50% - 14px);
121
+ border-right-color: var(--triangle-background);
122
+ }
123
+
124
+ .sd-container--triangle-bottom::before {
125
+ bottom: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
126
+ left: calc(50% - 14px);
127
+ border-bottom-color: var(--triangle-background);
128
+ }
129
+
130
+ .sd-container--triangle-left::before {
131
+ left: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
132
+ top: calc(50% - 14px);
133
+ border-left-color: var(--triangle-background);
134
+ }
135
+
136
+ .sd-container--triangle-top-border::after,
137
+ .sd-container--triangle-top-border::before,
138
+ .sd-container--triangle-right-border::after,
139
+ .sd-container--triangle-right-border::before,
140
+ .sd-container--triangle-bottom-border::after,
141
+ .sd-container--triangle-bottom-border::before,
142
+ .sd-container--triangle-left-border::after,
143
+ .sd-container--triangle-left-border::before {
144
+ position: absolute;
145
+ display: block;
146
+ border-style: solid;
147
+ border-color: transparent;
148
+ content: '';
149
+ }
150
+
151
+ .sd-container--triangle-top-border::after, .sd-container--triangle-right-border::after, .sd-container--triangle-bottom-border::after, .sd-container--triangle-left-border::after {
152
+ border-width: 14px;
153
+ }
154
+
155
+ .sd-container--triangle-top-border::before, .sd-container--triangle-right-border::before, .sd-container--triangle-bottom-border::before, .sd-container--triangle-left-border::before {
156
+ border-width: 15px;
157
+ }
158
+
159
+ .sd-container--triangle-top-border::after,
160
+ .sd-container--triangle-top-border::before {
161
+ top: -1px;
162
+ }
163
+
164
+ .sd-container--triangle-top-border::before {
165
+ --tw-border-opacity: 1;
166
+ border-top-color: rgb(var(--sd-color-neutral-400, 195 195 195) / var(--tw-border-opacity, 1)) /* Default border color.
167
+ Used for divider, teaser, container, ... */;
168
+ left: calc(50% - 15px);
169
+ }
170
+
171
+ .sd-container--triangle-top-border::after {
172
+ left: calc(50% - 14px);
173
+ border-top-color: var(--triangle-background);
174
+ }
175
+
176
+ .sd-container--triangle-right-border::after,
177
+ .sd-container--triangle-right-border::before {
178
+ right: -1px;
179
+ }
180
+
181
+ .sd-container--triangle-right-border::before {
182
+ --tw-border-opacity: 1;
183
+ border-right-color: rgb(var(--sd-color-neutral-400, 195 195 195) / var(--tw-border-opacity, 1)) /* Default border color.
184
+ Used for divider, teaser, container, ... */;
185
+ top: calc(50% - 15px);
186
+ }
187
+
188
+ .sd-container--triangle-right-border::after {
189
+ top: calc(50% - 14px);
190
+ border-right-color: var(--triangle-background);
191
+ }
192
+
193
+ .sd-container--triangle-bottom-border::after,
194
+ .sd-container--triangle-bottom-border::before {
195
+ bottom: -1px;
196
+ }
197
+
198
+ .sd-container--triangle-bottom-border::before {
199
+ --tw-border-opacity: 1;
200
+ border-bottom-color: rgb(var(--sd-color-neutral-400, 195 195 195) / var(--tw-border-opacity, 1)) /* Default border color.
201
+ Used for divider, teaser, container, ... */;
202
+ left: calc(50% - 15px);
203
+ }
204
+
205
+ .sd-container--triangle-bottom-border::after {
206
+ left: calc(50% - 14px);
207
+ border-bottom-color: var(--triangle-background);
208
+ }
209
+
210
+ .sd-container--triangle-left-border::after,
211
+ .sd-container--triangle-left-border::before {
212
+ left: -1px;
213
+ }
214
+
215
+ .sd-container--triangle-left-border::before {
216
+ --tw-border-opacity: 1;
217
+ border-left-color: rgb(var(--sd-color-neutral-400, 195 195 195) / var(--tw-border-opacity, 1)) /* Default border color.
218
+ Used for divider, teaser, container, ... */;
219
+ top: calc(50% - 15px);
220
+ }
221
+
222
+ .sd-container--triangle-left-border::after {
223
+ top: calc(50% - 14px);
224
+ border-left-color: var(--triangle-background);
225
+ }
226
+
227
+ /**
228
+ * Generates basic styles for copyright elements.
229
+ * @name sd-copyright
230
+ * @status stable
231
+ * @since 2.5.0
232
+ * @variant { vertical } sd-copyright--orientation-... The copyright's orientation.
233
+ * @variant { black } sd-copyright--color-... The copyright's text color.
234
+ * @boolean sd-copyright--... Removes the shadow.
235
+ * @variant { top } sd-copyright--placement-... The copyright's placement.
236
+ */
237
+
238
+ .sd-copyright {
239
+ position: relative;
240
+ }
241
+
242
+ .sd-copyright::after {
243
+ position: absolute;
244
+ bottom: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
245
+ left: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
246
+ display: block;
247
+ width: 100%;
248
+ padding-bottom: var(--sd-spacing-2, 0.5rem) /* 8px */;
249
+ padding-left: var(--sd-spacing-4, 1rem) /* 16px */;
250
+ font-size: var(--sd-font-size-sm, 0.875rem) /* 14px */;
251
+
252
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
253
+ --tw-drop-shadow: drop-shadow(var(--sd-shadow-sm, 0.5px 0.5px 1.5px rgb(81 81 81)));
254
+ filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
255
+ content: var(--copyright);
256
+ }
257
+
258
+ .sd-copyright--orientation-vertical::after {
259
+ width: -moz-max-content;
260
+ width: max-content;
261
+ padding-top: var(--sd-spacing-2, 0.5rem) /* 8px */;
262
+ padding-bottom: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
263
+ padding-right: var(--sd-spacing-1, 0.25rem) /* 4px */;
264
+ padding-left: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
265
+ writing-mode: vertical-rl;
266
+ text-orientation: sideways-right;
267
+ transform: rotate(180deg);
268
+ }
269
+
270
+ .sd-copyright--color-black::after {
271
+
272
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
273
+ filter: drop-shadow(0 0 transparent);
274
+ }
275
+
276
+ .sd-copyright--no-shadow::after {
277
+ filter: drop-shadow(0 0 transparent);
278
+ }
279
+
280
+ .sd-copyright--placement-top::after {
281
+ position: absolute;
282
+ top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
283
+ right: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
284
+ display: block;
285
+ max-height: -moz-fit-content;
286
+ max-height: fit-content;
287
+ padding-top: var(--sd-spacing-2, 0.5rem) /* 8px */;
288
+ padding-right: var(--sd-spacing-4, 1rem) /* 16px */;
289
+ }
290
+
291
+ /**
292
+ * Generates basic styles for flag elements.
293
+ * @name sd-flag
294
+ * @status stable
295
+ * @since 1.34.0
296
+ * @variant { neutral-300 | neutral-500 | white } sd-flag--...
297
+ */
298
+
299
+ .sd-flag {
300
+ display: inline-flex;
301
+ height: var(--sd-spacing-8, 2rem) /* 32px */;
302
+ align-items: center;
303
+ overflow: hidden;
304
+ white-space: nowrap;
305
+
306
+ background-color: rgb(var(--sd-color-neutral-200, 233 233 233) / var(--tw-bg-opacity, 1)) /* Used for hover interaction */;
307
+ padding-left: var(--sd-spacing-3, 0.75rem) /* 12px */;
308
+ padding-right: var(--sd-spacing-3, 0.75rem) /* 12px */;
309
+ font-size: var(--sd-font-size-sm, 0.875rem) /* 14px */;
310
+
311
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
312
+ }
313
+
314
+ .sd-flag--neutral-500 {
315
+
316
+ background-color: rgb(var(--sd-color-neutral-500, 174 174 174) / var(--tw-bg-opacity, 1)) /* Used for disabled state */;
317
+
318
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
319
+ }
320
+
321
+ .sd-flag--neutral-300 {
322
+
323
+ background-color: rgb(var(--sd-color-neutral-300, 218 218 218) / var(--tw-bg-opacity, 1)) /* Used for flag */;
324
+ }
325
+
326
+ .sd-flag--white {
327
+
328
+ background-color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-bg-opacity, 1)) /* Default background color (light mode) 
Used for inverted button */;
329
+ }
330
+
331
+ /**
332
+ * A footnote contains additional information/sources related to the content and usually appears at the bottom of a page or below the content it refers to.
333
+ * @name sd-footnotes
334
+ * @status stable
335
+ * @since 3.0.0
336
+ * @boolean sd-footnotes--inverted Inverts the footnote text.
337
+ */
338
+
339
+ .sd-footnotes {
340
+ margin-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
341
+ margin-bottom: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
342
+ padding: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
343
+ text-align: left;
344
+ font-size: var(--sd-font-size-sm, 0.875rem) /* 14px */;
345
+
346
+ color: rgb(var(--sd-color-neutral-700, 104 104 104) / var(--tw-text-opacity, 1)) /* Additional text color */;
347
+ }
348
+
349
+ .sd-footnotes:is(ol) li {
350
+ counter-increment: list-item;
351
+ display: flex;
352
+ gap: var(--sd-spacing-2, 0.5rem) /* 8px */;
353
+ }
354
+
355
+ .sd-footnotes:is(ol) li::before {
356
+ width: var(--sd-spacing-5, 1.25rem) /* 20px */;
357
+ flex-shrink: 0;
358
+ line-height: var(--sd-line-height-normal, 150%) /* Used for body copy and smaller titles */;
359
+ content: counter(list-item);
360
+ padding-top: 1px;
361
+ font-size: 10px;
362
+ }
363
+
364
+ .sd-footnotes:is(ul) {
365
+ list-style: '';
366
+ }
367
+
368
+ .sd-footnotes--inverted {
369
+
370
+ color: rgb(var(--sd-color-primary-400, 153 171 208) / var(--tw-text-opacity, 1)) /* Additional text inverted color
371
+ Used for inverted pressed interaction text link */;
372
+ }
373
+
374
+ /**
375
+ * Hidden links can be used to show links only for keyboard users.
376
+ * @name sd-hidden-links
377
+ * @status stable
378
+ * @since 3.15.0
379
+ * @boolean sd-hidden-links--multiple Adapts styling for multiple skip links.
380
+ * @boolean sd-hidden-links--debug Always show the links for debugging purposes.
381
+ */
382
+
383
+ :lang(en) {
384
+ --sd-hidden-links-title: 'Jump to';
385
+ }
386
+
387
+ :lang(de) {
388
+ --sd-hidden-links-title: 'Springe zu';
389
+ }
390
+
391
+ .sd-hidden-links:not(:focus-within):not(.sd-hidden-links--debug) {
392
+ position: absolute;
393
+ width: 1px;
394
+ height: 1px;
395
+ padding: 0;
396
+ margin: -1px;
397
+ overflow: hidden;
398
+ clip: rect(0, 0, 0, 0);
399
+ white-space: nowrap;
400
+ border-width: 0;
401
+ }
402
+
403
+ .sd-hidden-links {
404
+ position: absolute;
405
+ top: var(--sd-spacing-6, 1.5rem) /* 24px */;
406
+ left: var(--sd-spacing-6, 1.5rem) /* 24px */;
407
+ }
408
+
409
+ .sd-hidden-links--multiple {
410
+ display: flex;
411
+ flex-direction: column;
412
+
413
+ background-color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-bg-opacity, 1)) /* Default background color (light mode) 
Used for inverted button */;
414
+ padding-left: var(--sd-spacing-2, 0.5rem) /* 8px */;
415
+ padding-right: var(--sd-spacing-2, 0.5rem) /* 8px */;
416
+ padding-top: var(--sd-spacing-4, 1rem) /* 16px */;
417
+ padding-bottom: var(--sd-spacing-4, 1rem) /* 16px */;
418
+ --tw-shadow: var(--sd-shadow, 0px 1px 3px 0px rgb(81 81 81 / 75%));
419
+ --tw-shadow-colored: 0px 1px 3px 0px var(--tw-shadow-color);
420
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
421
+ }
422
+
423
+ .sd-hidden-links--multiple:before {
424
+ padding-left: var(--sd-spacing-4, 1rem) /* 16px */;
425
+ padding-right: var(--sd-spacing-4, 1rem) /* 16px */;
426
+ padding-top: var(--sd-spacing-2, 0.5rem) /* 8px */;
427
+ padding-bottom: var(--sd-spacing-2, 0.5rem) /* 8px */;
428
+ font-weight: 700;
429
+ content: var(--sd-hidden-links-title);
430
+ }
431
+
432
+ /**
433
+ * The green accent color can be used to highlight parts of the text.
434
+ * @name sd-mark
435
+ * @status stable
436
+ * @since 1.7
437
+ */
438
+
439
+ mark.sd-mark {
440
+ background-color: transparent;
441
+
442
+ color: rgb(var(--sd-color-accent, 45 157 0) / var(--tw-text-opacity, 1)) /* Used for inverted hover interaction button label */;
443
+ }
444
+
445
+ /**
446
+ * Meta information like file size, date, or whatever is needed.
447
+ * @name sd-meta
448
+ * @status stable
449
+ * @since 1.7
450
+ * @variant { sm } sd-meta--size-... The size. Small can be used as an alternative in tight spaces.
451
+ * @boolean sd-meta--inverted Inverts the meta element.
452
+ * @boolean sd-meta--pipe Adds a pipe right from the meta element.
453
+ * @boolean sd-meta--light Makes sd-meta light.
454
+ */
455
+
456
+ .sd-meta {
457
+ font-size: var(--sd-font-size-base, 1rem) /* 16px */;
458
+ font-weight: 400;
459
+ line-height: var(--sd-line-height-none, 100%) /* Used for buttons, input fields etc. */;
460
+
461
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
462
+ }
463
+
464
+ .sd-meta--size-sm {
465
+ font-size: var(--sd-font-size-sm, 0.875rem) /* 14px */;
466
+ }
467
+
468
+ .sd-meta--light {
469
+
470
+ color: rgb(var(--sd-color-neutral-700, 104 104 104) / var(--tw-text-opacity, 1)) /* Additional text color */;
471
+ }
472
+
473
+ .sd-meta--inverted {
474
+
475
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
476
+ }
477
+
478
+ .sd-meta--inverted.sd-meta--light {
479
+
480
+ color: rgb(var(--sd-color-primary-400, 153 171 208) / var(--tw-text-opacity, 1)) /* Additional text inverted color
481
+ Used for inverted pressed interaction text link */;
482
+ }
483
+
484
+ .sd-meta--pipe::after {
485
+ content: '|';
486
+ margin-left: var(--sd-spacing-1, 0.25rem) /* 4px */;
487
+ margin-right: var(--sd-spacing-1, 0.25rem) /* 4px */;
488
+ }
489
+
490
+ .sd-meta--pipe.sd-meta--size-sm::after {
491
+ margin-left: var(--sd-spacing-0-5, 0.125rem) /* 2px */;
492
+ margin-right: var(--sd-spacing-0-5, 0.125rem) /* 2px */;
493
+ }
494
+
495
+ /* plop:style */
496
+
497
+ /**
498
+ * Prose
499
+ * @name sd-prose
500
+ * @status stable
501
+ * @since 3.6.0
502
+ * @boolean sd-prose--inverted Inverts the content, but not tables.
503
+ * @boolean sd-prose--full-width Overrides the 80ch max-width and makes the prose full width.
504
+ */
505
+
506
+ /**
507
+ * Display provides larger text sizes that are not used as headlines. The different sizes allow for a more versatile styling of text elements. Display text should not be used as substitute for headlines.
508
+ * @name sd-display
509
+ * @status stable
510
+ * @since 1.7
511
+ * @variant { xl | 3xl } sd-display--size-... The display's size.
512
+ * @boolean sd-display--inverted Inverts the display text.
513
+ */
514
+
515
+ .sd-display {
516
+ font-size: var(--sd-font-size-3xl, 2rem) /* 32px */;
517
+ font-weight: 400;
518
+ line-height: var(--sd-line-height-tight, 120%) /* Used for display and large titles */;
519
+
520
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
521
+ }
522
+
523
+ @media (min-width: 1024px) {
524
+
525
+ .sd-display {
526
+ font-size: var(--sd-font-size-4xl, 2.5rem) /* 40px */;
527
+ }
528
+ }
529
+
530
+ .sd-display--size-xl {
531
+ font-size: var(--sd-font-size-xl, 1.5rem) /* 24px */;
532
+ font-weight: 400;
533
+ line-height: var(--sd-line-height-tight, 120%) /* Used for display and large titles */;
534
+
535
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
536
+ }
537
+
538
+ .sd-display--size-3xl {
539
+ font-size: var(--sd-font-size-2xl, 1.75rem) /* 28px */;
540
+ font-weight: 400;
541
+ line-height: var(--sd-line-height-tight, 120%) /* Used for display and large titles */;
542
+
543
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
544
+ }
545
+
546
+ @media (min-width: 1024px) {
547
+
548
+ .sd-display--size-3xl {
549
+ font-size: var(--sd-font-size-3xl, 2rem) /* 32px */;
550
+ }
551
+ }
552
+
553
+ .sd-display--inverted {
554
+
555
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
556
+ }
557
+
558
+ /**
559
+ * Headlines are vital for displaying content hierarchy and to improve accessibility. A headline can be additionally accompanied by an icon. The icon can be displayed on the left side or inline.
560
+ * @name sd-headline
561
+ * @status stable
562
+ * @since 1.16
563
+ * @variant { 3xl | xl | lg | base } sd-headline--size-... The headline's size.
564
+ * @boolean sd-headline--inverted Inverts the headline text.
565
+ * @boolean sd-headline--inline Sets inline behavior. Used exclusively when an sd-icon or other component is present. See usage <a href="#inline">here.</a>
566
+ */
567
+
568
+ .sd-headline,
569
+ .sd-prose :is(h1, h2, h3, h4, h5) {
570
+ display: flex;
571
+ font-weight: 700;
572
+
573
+ color: rgb(var(--sd-color-primary, 0 53 142) / var(--tw-text-opacity, 1)) /* Primary brand color for text */;
574
+ }
575
+
576
+ .sd-headline sd-icon, .sd-prose :is(h1, h2, h3, h4, h5) sd-icon {
577
+ flex-shrink: 0;
578
+ font-size: 3rem;
579
+
580
+ color: rgb(var(--sd-color-primary, 0 53 142) / var(--tw-text-opacity, 1)) /* Primary brand color for text */;
581
+ }
582
+
583
+ @media (min-width: 640px) {
584
+
585
+ .sd-headline sd-icon, .sd-prose :is(h1, h2, h3, h4, h5) sd-icon {
586
+ margin-top: var(--sd-spacing-2, 0.5rem) /* 8px */;
587
+ }
588
+ }
589
+
590
+ .sd-headline.sd-headline,
591
+ .sd-headline:is(h1):not(.sd-headline),
592
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline,
593
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h1):not(.sd-headline) {
594
+ gap: var(--sd-spacing-4, 1rem) /* 16px */;
595
+ font-size: var(--sd-font-size-3xl, 2rem) /* 32px */;
596
+ line-height: var(--sd-line-height-tight, 120%) /* Used for display and large titles */;
597
+ }
598
+
599
+ @media (min-width: 640px) {
600
+
601
+ .sd-headline.sd-headline,
602
+ .sd-headline:is(h1):not(.sd-headline),
603
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline,
604
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h1):not(.sd-headline) {
605
+ font-size: var(--sd-font-size-4xl, 2.5rem) /* 40px */;
606
+ }
607
+ }
608
+
609
+ .sd-headline.sd-headline sd-icon, .sd-headline:is(h1):not(.sd-headline) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h1):not(.sd-headline) sd-icon {
610
+ margin-top: calc(var(--sd-spacing-1, 0.25rem) /* 4px */ * -1);
611
+ }
612
+
613
+ @media (min-width: 640px) {
614
+
615
+ .sd-headline.sd-headline sd-icon, .sd-headline:is(h1):not(.sd-headline) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h1):not(.sd-headline) sd-icon {
616
+ margin-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
617
+ }
618
+ }
619
+
620
+ .sd-headline.sd-headline--size-3xl,
621
+ .sd-headline:is(h2):not(.sd-headline),
622
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-3xl,
623
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h2):not(.sd-headline) {
624
+ gap: var(--sd-spacing-4, 1rem) /* 16px */;
625
+ font-size: var(--sd-font-size-2xl, 1.75rem) /* 28px */;
626
+ line-height: var(--sd-line-height-tight, 120%) /* Used for display and large titles */;
627
+ }
628
+
629
+ @media (min-width: 640px) {
630
+
631
+ .sd-headline.sd-headline--size-3xl,
632
+ .sd-headline:is(h2):not(.sd-headline),
633
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-3xl,
634
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h2):not(.sd-headline) {
635
+ font-size: var(--sd-font-size-3xl, 2rem) /* 32px */;
636
+ }
637
+ }
638
+
639
+ .sd-headline.sd-headline--size-3xl sd-icon, .sd-headline:is(h2):not(.sd-headline) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-3xl sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h2):not(.sd-headline) sd-icon {
640
+ margin-top: calc(var(--sd-spacing-1, 0.25rem) /* 4px */ * -1);
641
+ }
642
+
643
+ @media (min-width: 640px) {
644
+
645
+ .sd-headline.sd-headline--size-3xl sd-icon, .sd-headline:is(h2):not(.sd-headline) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-3xl sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h2):not(.sd-headline) sd-icon {
646
+ margin-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
647
+ }
648
+ }
649
+
650
+ .sd-headline.sd-headline--size-xl,
651
+ .sd-headline.sd-headline--size-lg,
652
+ .sd-headline.sd-headline--size-base,
653
+ .sd-headline:is(h3, h4, h5):not(.sd-headline),
654
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-xl,
655
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-lg,
656
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-base,
657
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h3, h4, h5):not(.sd-headline) {
658
+ gap: var(--sd-spacing-2, 0.5rem) /* 8px */;
659
+
660
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
661
+ }
662
+
663
+ .sd-headline.sd-headline--size-xl sd-icon, .sd-headline.sd-headline--size-lg sd-icon, .sd-headline.sd-headline--size-base sd-icon, .sd-headline:is(h3, h4, h5):not(.sd-headline) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-xl sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-lg sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-base sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h3, h4, h5):not(.sd-headline) sd-icon {
664
+ font-size: 2rem;
665
+ }
666
+
667
+ .sd-headline.sd-headline--size-xl,
668
+ .sd-headline:is(h3):not(.sd-headline),
669
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-xl,
670
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h3):not(.sd-headline) {
671
+ font-size: var(--sd-font-size-xl, 1.5rem) /* 24px */;
672
+ }
673
+
674
+ .sd-headline.sd-headline--size-xl sd-icon, .sd-headline:is(h3):not(.sd-headline) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-xl sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h3):not(.sd-headline) sd-icon {
675
+ margin-top: var(--sd-spacing-0-5, 0.125rem) /* 2px */;
676
+ }
677
+
678
+ @media (min-width: 640px) {
679
+
680
+ .sd-headline.sd-headline--size-xl sd-icon, .sd-headline:is(h3):not(.sd-headline) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-xl sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h3):not(.sd-headline) sd-icon {
681
+ margin-top: var(--sd-spacing-0-5, 0.125rem) /* 2px */;
682
+ }
683
+ }
684
+
685
+ .sd-headline.sd-headline--size-lg,
686
+ .sd-headline.sd-headline--size-base,
687
+ .sd-headline:is(h4, h5):not(.sd-headline),
688
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-lg,
689
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-base,
690
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h4, h5):not(.sd-headline) {
691
+ line-height: var(--sd-line-height-normal, 150%) /* Used for body copy and smaller titles */;
692
+ }
693
+
694
+ .sd-headline.sd-headline--size-lg,
695
+ .sd-headline:is(h4),
696
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-lg,
697
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h4) {
698
+ font-size: var(--sd-font-size-lg, 1.25rem) /* 20px */;
699
+ }
700
+
701
+ .sd-headline.sd-headline--size-lg sd-icon, .sd-headline:is(h4) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-lg sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h4) sd-icon {
702
+ margin-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
703
+ }
704
+
705
+ @media (min-width: 640px) {
706
+
707
+ .sd-headline.sd-headline--size-lg sd-icon, .sd-headline:is(h4) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-lg sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h4) sd-icon {
708
+ margin-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
709
+ }
710
+ }
711
+
712
+ .sd-headline.sd-headline--size-base,
713
+ .sd-headline:is(h5):not(.sd-headline),
714
+ .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-base,
715
+ .sd-prose :is(h1, h2, h3, h4, h5):is(h5):not(.sd-headline) {
716
+ font-size: var(--sd-font-size-base, 1rem) /* 16px */;
717
+ }
718
+
719
+ .sd-headline.sd-headline--size-base sd-icon, .sd-headline:is(h5):not(.sd-headline) sd-icon, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-base sd-icon, .sd-prose :is(h1, h2, h3, h4, h5):is(h5):not(.sd-headline) sd-icon {
720
+ margin-top: calc(var(--sd-spacing-1, 0.25rem) /* 4px */ * -1);
721
+ }
722
+
723
+ .sd-headline.sd-headline--size-base mark, .sd-headline:is(h5):not(.sd-headline) mark, .sd-prose :is(h1, h2, h3, h4, h5).sd-headline--size-base mark, .sd-prose :is(h1, h2, h3, h4, h5):is(h5):not(.sd-headline) mark {
724
+ color: inherit;
725
+ }
726
+
727
+ .sd-headline--inline {
728
+ display: inline-block;
729
+ }
730
+
731
+ .sd-headline--inline sd-icon {
732
+ margin-right: var(--sd-spacing-2, 0.5rem) /* 8px */;
733
+ margin-top: calc(var(--sd-spacing-1, 0.25rem) /* 4px */ * -1);
734
+ vertical-align: middle;
735
+ }
736
+
737
+ .sd-headline--inline:is(.sd-headline--size-xl, .sd-headline--size-lg, .sd-headline--size-base) sd-icon {
738
+ margin-right: var(--sd-spacing-0-5, 0.125rem) /* 2px */;
739
+ }
740
+
741
+ .sd-headline--inverted:not(#_),
742
+ .sd-prose--inverted :is(h1, h2, h3, h4, h5):not(.sd-headline):not(#_) {
743
+
744
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
745
+ }
746
+
747
+ .sd-headline--inverted:not(#_) sd-icon, .sd-prose--inverted :is(h1, h2, h3, h4, h5):not(.sd-headline):not(#_) sd-icon {
748
+
749
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
750
+ }
751
+
752
+ /**
753
+ * Generates basic styles for interactive elements.
754
+ * @name sd-interactive
755
+ * @status stable
756
+ * @since 1.11
757
+ * @boolean sd-interactive--disabled Makes an element look disabled.
758
+ * @boolean sd-interactive--inverted Inverts the colors of an element.
759
+ * @boolean sd-interactive--reset Resets the default browser styles of e.g., a button.
760
+ */
761
+
762
+ .sd-prose a--reset, .sd-interactive--reset {
763
+ all: unset;
764
+ outline: revert;
765
+ }
766
+
767
+ .sd-prose a,
768
+ .sd-interactive {
769
+ cursor: pointer;
770
+
771
+ color: rgb(var(--sd-color-primary, 0 53 142) / var(--tw-text-opacity, 1)) /* Primary brand color for text */;
772
+ text-decoration-line: underline;
773
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
774
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
775
+ transition-duration: 150ms;
776
+ }
777
+
778
+ .sd-prose a:hover:not([disabled]),
779
+ .sd-interactive:hover:not([disabled]) {
780
+
781
+ color: rgb(var(--sd-color-primary-500, 70 109 175) / var(--tw-text-opacity, 1)) /* Used for hover interaction */;
782
+ }
783
+
784
+ .sd-prose a:active:not([disabled]),
785
+ .sd-interactive:active:not([disabled]) {
786
+
787
+ color: rgb(var(--sd-color-primary-800, 5 21 48) / var(--tw-text-opacity, 1)) /* Used for pressed interaction */;
788
+ }
789
+
790
+ .sd-prose a:is(.sd-interactive), .sd-interactive:is(.sd-interactive) {
791
+ text-decoration-line: none;
792
+ }
793
+
794
+ .sd-prose a:focus-visible, .sd-interactive:focus-visible {
795
+ outline-style: solid;
796
+ outline-width: 2px;
797
+ outline-offset: 2px;
798
+ outline-color: rgb(var(--sd-color-primary, 0 53 142) / 1) /* Used for buttons, select field, focus state */;
799
+ }
800
+
801
+ .sd-prose a--disabled,
802
+ .sd-prose a[disabled],
803
+ .sd-prose a[href=''],
804
+ .sd-interactive--disabled,
805
+ .sd-interactive[disabled],
806
+ .sd-interactive[href=''] {
807
+ cursor: not-allowed;
808
+
809
+ color: rgb(var(--sd-color-neutral-600, 136 136 136) / var(--tw-text-opacity, 1)) /* Used for inverted disabled state */;
810
+ }
811
+
812
+ .sd-prose a--disabled:hover:not([disabled]),
813
+ .sd-prose a[disabled]:hover:not([disabled]),
814
+ .sd-prose a[href='']:hover:not([disabled]),
815
+ .sd-interactive--disabled:hover:not([disabled]),
816
+ .sd-interactive[disabled]:hover:not([disabled]),
817
+ .sd-interactive[href='']:hover:not([disabled]) {
818
+
819
+ color: rgb(var(--sd-color-neutral-600, 136 136 136) / var(--tw-text-opacity, 1)) /* Used for inverted disabled state */;
820
+ }
821
+
822
+ .sd-prose a--disabled:active:not([disabled]),
823
+ .sd-prose a[disabled]:active:not([disabled]),
824
+ .sd-prose a[href='']:active:not([disabled]),
825
+ .sd-interactive--disabled:active:not([disabled]),
826
+ .sd-interactive[disabled]:active:not([disabled]),
827
+ .sd-interactive[href='']:active:not([disabled]) {
828
+
829
+ color: rgb(var(--sd-color-neutral-600, 136 136 136) / var(--tw-text-opacity, 1)) /* Used for inverted disabled state */;
830
+ }
831
+
832
+ .sd-prose--inverted a,
833
+ .sd-interactive--inverted {
834
+
835
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
836
+ }
837
+
838
+ .sd-prose--inverted a:hover:not([disabled]),
839
+ .sd-interactive--inverted:hover:not([disabled]) {
840
+
841
+ color: rgb(var(--sd-color-primary-200, 224 233 243) / var(--tw-text-opacity, 1)) /* Used for inverted hover interaction text link and inverted pressed interaction button label */;
842
+ }
843
+
844
+ .sd-prose--inverted a:active:not([disabled]),
845
+ .sd-interactive--inverted:active:not([disabled]) {
846
+
847
+ color: rgb(var(--sd-color-primary-400, 153 171 208) / var(--tw-text-opacity, 1)) /* Additional text inverted color
848
+ Used for inverted pressed interaction text link */;
849
+ }
850
+
851
+ .sd-prose--inverted a:focus-visible, .sd-interactive--inverted:focus-visible {
852
+ outline-style: solid;
853
+ outline-width: 2px;
854
+ outline-offset: 2px;
855
+ outline-color: rgb(var(--sd-color-white, 255 255 255) / 1) /* Used for buttons, inverted focus state */;
856
+ }
857
+
858
+ /**
859
+ * Leadtext is used for text that should be highlighted and a focal point of the page.
860
+ * @name sd-leadtext
861
+ * @status stable
862
+ * @since 1.7
863
+ * @variant { lg } sd-leadtext--size-... The leadtext's size.
864
+ * @boolean sd-leadtext--inverted Inverts the leadtext text.
865
+ */
866
+
867
+ .sd-prose > .sd-leadtext,
868
+ .sd-leadtext {
869
+ font-size: var(--sd-font-size-xl, 1.5rem) /* 24px */;
870
+ font-weight: 400;
871
+ line-height: var(--sd-line-height-normal, 150%) /* Used for body copy and smaller titles */;
872
+
873
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
874
+ }
875
+
876
+ .sd-prose > .sd-leadtext--size-lg, .sd-leadtext--size-lg {
877
+ font-size: var(--sd-font-size-lg, 1.25rem) /* 20px */;
878
+ font-weight: 400;
879
+ line-height: var(--sd-line-height-normal, 150%) /* Used for body copy and smaller titles */;
880
+
881
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
882
+ }
883
+
884
+ .sd-prose--inverted > .sd-leadtext,
885
+ .sd-leadtext--inverted {
886
+
887
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
888
+ }
889
+
890
+ /**
891
+ * Generates basic styles for list elements.
892
+ * @name sd-list
893
+ * @status stable
894
+ * @since 1.39.0
895
+ * @boolean sd-list--inverted Inverts the list text.
896
+ */
897
+
898
+ .sd-list:not(.sd-list--icon),
899
+ .sd-prose > :is(ol, ul) {
900
+ padding-top: var(--sd-spacing-4, 1rem) /* 16px */;
901
+ padding-bottom: var(--sd-spacing-4, 1rem) /* 16px */;
902
+ text-align: left;
903
+ }
904
+
905
+ .sd-list:not(.sd-list--icon) li:not(:first-child), .sd-prose > :is(ol, ul) li:not(:first-child) {
906
+ margin-top: var(--sd-spacing-3, 0.75rem) /* 12px */;
907
+ }
908
+
909
+ .sd-list:not(.sd-list--icon) ol,
910
+ .sd-list:not(.sd-list--icon) ul,
911
+ .sd-prose > :is(ol, ul) ol,
912
+ .sd-prose > :is(ol, ul) ul {
913
+ padding-top: var(--sd-spacing-3, 0.75rem) /* 12px */;
914
+ }
915
+
916
+ /* Counter handling for ordered lists. */
917
+
918
+ .sd-list:not(.sd-list--icon):is(ol) > li, .sd-list:not(.sd-list--icon) ol > li, .sd-prose > :is(ol, ul):is(ol) > li, .sd-prose > :is(ol, ul) ol > li {
919
+ counter-increment: item;
920
+ }
921
+
922
+ .sd-list:not(.sd-list--icon):is(ol) > li:before, .sd-list:not(.sd-list--icon) ol > li:before, .sd-prose > :is(ol, ul):is(ol) > li:before, .sd-prose > :is(ol, ul) ol > li:before {
923
+ content: counters(item, '.') '. ';
924
+ }
925
+
926
+ /* Add second level */
927
+
928
+ .sd-list:not(.sd-list--icon):is(ol),
929
+ .sd-list:not(.sd-list--icon):is(ol) > li > ol,
930
+ .sd-list:not(.sd-list--icon) ol > li > ol,
931
+ .sd-prose > :is(ol, ul):is(ol),
932
+ .sd-prose > :is(ol, ul):is(ol) > li > ol,
933
+ .sd-prose > :is(ol, ul) ol > li > ol {
934
+ counter-reset: item;
935
+ }
936
+
937
+ /* Ordered lists inside unordered lists. */
938
+
939
+ .sd-list:not(.sd-list--icon):is(ul) > li > ol,
940
+ .sd-list:not(.sd-list--icon) ul > li > ol,
941
+ .sd-prose > :is(ol, ul):is(ul) > li > ol,
942
+ .sd-prose > :is(ol, ul) ul > li > ol {
943
+ counter-set: item 0;
944
+ }
945
+
946
+ /* Styling */
947
+
948
+ .sd-list:not(.sd-list--icon) li, .sd-prose > :is(ol, ul) li {
949
+ display: table;
950
+ }
951
+
952
+ .sd-list:not(.sd-list--icon) li:before, .sd-prose > :is(ol, ul) li:before {
953
+ display: table-cell;
954
+ padding-right: var(--sd-spacing-2, 0.5rem) /* 8px */;
955
+ }
956
+
957
+ .sd-list:not(.sd-list--icon):is(ul),
958
+ .sd-list:not(.sd-list--icon) ul,
959
+ .sd-prose > :is(ol, ul):is(ul),
960
+ .sd-prose > :is(ol, ul) ul {
961
+ list-style-type: '';
962
+ }
963
+
964
+ .sd-list:not(.sd-list--icon):is(ul):not(.sd-list--icon) > li:before, .sd-list:not(.sd-list--icon) ul > li:before, .sd-prose > :is(ol, ul):is(ul):not(.sd-list--icon) > li:before, .sd-prose > :is(ol, ul) ul > li:before {
965
+ content: '\2022';
966
+ }
967
+
968
+ .sd-list:not(.sd-list--icon):is(ul):not(.sd-list--icon) > li > ul > li:before, .sd-list:not(.sd-list--icon) ul > li > ul > li:before, .sd-prose > :is(ol, ul):is(ul):not(.sd-list--icon) > li > ul > li:before, .sd-prose > :is(ol, ul) ul > li > ul > li:before {
969
+ content: '\002B1D';
970
+ }
971
+
972
+ .sd-list:not(.sd-list--icon):is(ul):not(.sd-list--icon) > li > ul > li > ul > li:before, .sd-list:not(.sd-list--icon) ul > li > ul > li > ul > li:before, .sd-prose > :is(ol, ul):is(ul):not(.sd-list--icon) > li > ul > li > ul > li:before, .sd-prose > :is(ol, ul) ul > li > ul > li > ul > li:before {
973
+ content: '\2010';
974
+ }
975
+
976
+ .sd-list--icon {
977
+ padding-top: var(--sd-spacing-4, 1rem) /* 16px */;
978
+ padding-bottom: var(--sd-spacing-4, 1rem) /* 16px */;
979
+ text-align: left;
980
+ }
981
+
982
+ .sd-list--icon li sd-icon:first-of-type,
983
+ .sd-list--icon li .sd-list--icon__icon:first-of-type {
984
+
985
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
986
+ }
987
+
988
+ .sd-list--icon {
989
+ list-style-type: '';
990
+ }
991
+
992
+ /* Safari removes list semantics of lists that don’t look like lists (list-style: none). The only way to remove list
993
+ styles without affecting semantics is to set list-style-type to an empty string.
994
+ https://www.matuzo.at/blog/2023/removing-list-styles-without-affecting-semantics */
995
+
996
+ .sd-list--icon > li:first-of-type {
997
+ padding-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
998
+ }
999
+
1000
+ .sd-list--icon li {
1001
+ position: relative;
1002
+ padding-top: var(--sd-spacing-3, 0.75rem) /* 12px */;
1003
+ padding-left: var(--sd-spacing-10, 2.5rem) /* 40px */;
1004
+ line-height: 32px;
1005
+ }
1006
+
1007
+ .sd-list--icon li > sd-icon:first-of-type,
1008
+ .sd-list--icon li > .sd-list--icon__icon:first-of-type {
1009
+ position: absolute;
1010
+ left: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1011
+ font-size: var(--sd-font-size-3xl, 2rem) /* 32px */;
1012
+
1013
+ color: rgb(var(--sd-color-primary, 0 53 142) / var(--tw-text-opacity, 1)) /* Primary brand color for text */;
1014
+ }
1015
+
1016
+ .sd-list--icon.sd-list--horizontal {
1017
+ display: flex;
1018
+ }
1019
+
1020
+ .sd-list--icon.sd-list--horizontal li {
1021
+ display: flex;
1022
+ padding-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1023
+ }
1024
+
1025
+ .sd-list--icon.sd-list--horizontal li:not(:last-child) {
1026
+ margin-right: var(--sd-spacing-8, 2rem) /* 32px */;
1027
+ }
1028
+
1029
+ .sd-list--inverted,
1030
+ .sd-prose--inverted > :is(ol, ul) {
1031
+
1032
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
1033
+ }
1034
+
1035
+ .sd-list--inverted li > sd-icon:first-of-type,
1036
+ .sd-list--inverted li > .sd-list--icon__icon:first-of-type,
1037
+ .sd-prose--inverted > :is(ol, ul) li > sd-icon:first-of-type,
1038
+ .sd-prose--inverted > :is(ol, ul) li > .sd-list--icon__icon:first-of-type {
1039
+
1040
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
1041
+ }
1042
+
1043
+ /**
1044
+ * A paragraph is used to display blocks of text. It uses the base font size and can contain bold and/or link styles.
1045
+ * @name sd-paragraph
1046
+ * @status stable
1047
+ * @since 1.7
1048
+ * @variant { sm } sd-paragraph--size-... The paragraph's font size.
1049
+ * @boolean sd-paragraph--inverted Inverts the paragraph text.
1050
+ */
1051
+
1052
+ .sd-paragraph,
1053
+ .sd-prose p {
1054
+ font-size: var(--sd-font-size-base, 1rem) /* 16px */;
1055
+ font-weight: 400;
1056
+ line-height: var(--sd-line-height-normal, 150%) /* Used for body copy and smaller titles */;
1057
+
1058
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
1059
+ }
1060
+
1061
+ .sd-paragraph--size-sm, .sd-prose p--size-sm {
1062
+ font-size: var(--sd-font-size-sm, 0.875rem) /* 14px */;
1063
+ font-weight: 400;
1064
+ line-height: var(--sd-line-height-normal, 150%) /* Used for body copy and smaller titles */;
1065
+
1066
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
1067
+ }
1068
+
1069
+ .sd-paragraph--inverted,
1070
+ .sd-prose--inverted p {
1071
+
1072
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
1073
+ }
1074
+
1075
+ /**
1076
+ * Generates basic styles for media elements.
1077
+ * @name sd-media
1078
+ * @status stable
1079
+ * @since 2.5.0
1080
+ * @boolean sd-media--inverted Inverts the figcaption text.
1081
+ */
1082
+
1083
+ .sd-prose figure,
1084
+ figure.sd-media {
1085
+ margin: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1086
+ }
1087
+
1088
+ .sd-prose figure figcaption, figure.sd-media figcaption {
1089
+
1090
+ color: rgb(var(--sd-color-neutral-700, 104 104 104) / var(--tw-text-opacity, 1)) /* Additional text color */;
1091
+ }
1092
+
1093
+ .sd-prose figure figcaption:last-child, figure.sd-media figcaption:last-child {
1094
+ margin-top: var(--sd-spacing-3, 0.75rem) /* 12px */;
1095
+ }
1096
+
1097
+ .sd-prose--inverted figure figcaption, figure.sd-media--inverted figcaption {
1098
+
1099
+ color: rgb(var(--sd-color-primary-400, 153 171 208) / var(--tw-text-opacity, 1)) /* Additional text inverted color
1100
+ Used for inverted pressed interaction text link */;
1101
+ }
1102
+
1103
+ /**
1104
+ * A table cell is a single cell inside a table, used to display discrete data elements.
1105
+ * @name sd-table-cell
1106
+ * @status stable
1107
+ * @since 1.13
1108
+ * @boolean sd-table-cell--divider Displays a divider to the right.
1109
+ * @variant { white | primary-100 | neutral-100 } sd-table-cell--bg-... Applies the selected background-color to the table cell. If not selected, a transparent background-color is used per default.
1110
+ * @boolean sd-table-cell--shadow-active Displays the table shadow.
1111
+ * @variant { top | left | right | bottom } sd-table-cell--shadow-... Applies the selected shadow to the table cell.
1112
+ */
1113
+
1114
+ .sd-prose td,
1115
+ .sd-prose th,
1116
+ .sd-table-cell {
1117
+ border-top-width: 1px;
1118
+ border-bottom-width: 1px;
1119
+ border-left-width: 0px;
1120
+ border-right-width: 0px;
1121
+ border-style: solid;
1122
+ --tw-border-opacity: 1;
1123
+ border-color: rgb(var(--sd-color-neutral-400, 195 195 195) / var(--tw-border-opacity, 1)) /* Default border color.
1124
+ Used for divider, teaser, container, ... */;
1125
+ background-color: transparent;
1126
+ padding: var(--sd-spacing-4, 1rem) /* 16px */;
1127
+ text-align: left;
1128
+ font-size: var(--sd-font-size-sm, 0.875rem) /* 14px */;
1129
+
1130
+ color: rgb(var(--sd-color-black, 24 24 24) / var(--tw-text-opacity, 1)) /* Default text color */;
1131
+ }
1132
+
1133
+ .sd-table-cell--divider {
1134
+ border-right-width: 1px;
1135
+ }
1136
+
1137
+ .sd-table-cell--shadow-top:after, .sd-table-cell--shadow-bottom:after, .sd-table-cell--shadow-left:after, .sd-table-cell--shadow-right:after {
1138
+ pointer-events: none;
1139
+ position: absolute;
1140
+ --tw-gradient-from: rgb(0 0 0 / var(--sd-opacity-10, 0.1)) var(--tw-gradient-from-position);
1141
+ --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
1142
+ --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
1143
+ --tw-gradient-to: transparent var(--tw-gradient-to-position);
1144
+ opacity: var(--sd-opacity-0, 0);
1145
+ transition-property: opacity;
1146
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1147
+ transition-duration: 300ms;
1148
+ --tw-content: '';
1149
+ content: var(--tw-content);
1150
+ }
1151
+
1152
+ .sd-table-cell--shadow-top:after, .sd-table-cell--shadow-bottom:after {
1153
+ left: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1154
+ right: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1155
+ height: var(--sd-spacing-2-5, 0.625rem) /* 10px */;
1156
+ }
1157
+
1158
+ /* fix that shows line on top of table-cell */
1159
+
1160
+ .sd-table-cell--shadow-top:before, .sd-table-cell--shadow-bottom:before {
1161
+ position: absolute;
1162
+ left: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1163
+ display: block;
1164
+ height: 1px;
1165
+ width: 100%;
1166
+ border-width: 0.5px;
1167
+ --tw-border-opacity: 1;
1168
+ border-color: rgb(var(--sd-color-neutral-400, 195 195 195) / var(--tw-border-opacity, 1)) /* Default border color.
1169
+ Used for divider, teaser, container, ... */;
1170
+ --tw-content: '';
1171
+ content: var(--tw-content);
1172
+ }
1173
+
1174
+ .sd-table-cell--shadow-left:after, .sd-table-cell--shadow-right:after {
1175
+ top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1176
+ bottom: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1177
+ width: var(--sd-spacing-2-5, 0.625rem) /* 10px */;
1178
+ }
1179
+
1180
+ .sd-table-cell.sd-table-cell--shadow-active:after {
1181
+ opacity: 100%;
1182
+ }
1183
+
1184
+ .sd-table-cell--shadow-top:after {
1185
+ top: -10px;
1186
+ background-image: linear-gradient(to top, var(--tw-gradient-stops));
1187
+ }
1188
+
1189
+ /* fix that shows line on top of table-cell */
1190
+
1191
+ .sd-table-cell--shadow-top:before {
1192
+ bottom: -1px;
1193
+ }
1194
+
1195
+ .sd-table-cell--shadow-bottom:after {
1196
+ bottom: -10px;
1197
+ background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
1198
+ }
1199
+
1200
+ /* fix that shows line on top of table-cell */
1201
+
1202
+ .sd-table-cell--shadow-bottom:before {
1203
+ top: -1px;
1204
+ }
1205
+
1206
+ .sd-table-cell--shadow-left:after {
1207
+ left: -10px;
1208
+ background-image: linear-gradient(to left, var(--tw-gradient-stops));
1209
+ }
1210
+
1211
+ .sd-table-cell--shadow-right:after {
1212
+ right: -10px;
1213
+ background-image: linear-gradient(to right, var(--tw-gradient-stops));
1214
+ }
1215
+
1216
+ .sd-table-cell--bg-white {
1217
+
1218
+ background-color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-bg-opacity, 1)) /* Default background color (light mode) 
Used for inverted button */;
1219
+ }
1220
+
1221
+ .sd-table-cell--bg-primary-100 {
1222
+
1223
+ background-color: rgb(var(--sd-color-primary-100, 236 240 249) / var(--tw-bg-opacity, 1)) /* Additional background color (light mode) */;
1224
+ }
1225
+
1226
+ .sd-table-cell--bg-neutral-100 {
1227
+
1228
+ background-color: rgb(var(--sd-color-neutral-100, 246 246 246) / var(--tw-bg-opacity, 1)) /* Additional background color (light mode) */;
1229
+ }
1230
+
1231
+ /**
1232
+ * A table is organized structured content, used for scanning, comparing, and analyzing the data.
1233
+ * @name sd-table
1234
+ * @status stable
1235
+ * @since 1.13
1236
+ */
1237
+
1238
+ /*
1239
+ * Remove inherited styles from table before applying our styles.
1240
+ */
1241
+
1242
+ .sd-table,
1243
+ .sd-prose table {
1244
+ all: unset;
1245
+ display: table;
1246
+ border-collapse: collapse;
1247
+ --tw-border-spacing-x: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1248
+ --tw-border-spacing-y: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1249
+ border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
1250
+ }
1251
+
1252
+ .sd-table thead tr:first-of-type, .sd-table tfoot tr:first-of-type, .sd-prose table thead tr:first-of-type, .sd-prose table tfoot tr:first-of-type {
1253
+ position: relative;
1254
+ }
1255
+
1256
+ /* plop:style */
1257
+
1258
+ .sd-prose {
1259
+ /* Optimize for reading. */
1260
+ max-width: 80ch;
1261
+ text-align: left;
1262
+ }
1263
+
1264
+ /* Add default spacings */
1265
+
1266
+ .sd-prose > *:not(:first-child) {
1267
+ margin-top: var(--sd-spacing-4, 1rem) /* 16px */;
1268
+ }
1269
+
1270
+ /* First element has no margin-top */
1271
+
1272
+ .sd-prose > *:first-child {
1273
+ margin-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1274
+ }
1275
+
1276
+ /* headings after a heading have a smaller margin-top */
1277
+
1278
+ .sd-prose > :is(h1, h2, h3, h4, h5):not(#_) + :is(h1, h2, h3, h4, h5) {
1279
+ /* :not(#_) is a hack to raise specifity, see https://stackoverflow.com/a/61781795 */
1280
+ margin-top: var(--sd-spacing-2, 0.5rem) /* 8px */;
1281
+ }
1282
+
1283
+ /* Headlines after other non-headlines have a larger margin-top */
1284
+
1285
+ .sd-prose > *:not(:is(h1, h2, h3, h4, h5)) + :is(h1, h2, h3, h4, h5):not(#_) {
1286
+ margin-top: var(--sd-spacing-8, 2rem) /* 32px */;
1287
+ }
1288
+
1289
+ /* Images and figures lead to a bigger margin-top for the next element */
1290
+
1291
+ .sd-prose > figure + *:not(#_),
1292
+ .sd-prose > img + *:not(#_) {
1293
+ margin-top: var(--sd-spacing-6, 1.5rem) /* 24px */;
1294
+ }
1295
+
1296
+ /* Add styles for elements that are not based on existing CSS styles */
1297
+
1298
+ .sd-prose hr {
1299
+ height: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1300
+ border-top-width: 1px;
1301
+ --tw-border-opacity: 1;
1302
+ border-color: rgb(var(--sd-color-neutral-500, 174 174 174) / var(--tw-border-opacity, 1)) /* Used for disabled state */;
1303
+ }
1304
+
1305
+ .sd-prose pre {
1306
+ overflow: auto;
1307
+ }
1308
+
1309
+ .sd-prose blockquote,
1310
+ .sd-prose blockquote > * {
1311
+ font-size: var(--sd-font-size-xl, 1.5rem) /* 24px */;
1312
+ }
1313
+
1314
+ .sd-prose blockquote:has(*) *:first-child::before, .sd-prose blockquote:not(:has(*))::before {
1315
+ content: open-quote;
1316
+ display: inline;
1317
+ }
1318
+
1319
+ .sd-prose blockquote:has(*) *:first-child::after, .sd-prose blockquote:not(:has(*))::after {
1320
+ content: close-quote;
1321
+ display: inline;
1322
+ }
1323
+
1324
+ /* Fixes for other elements */
1325
+
1326
+ .sd-prose > :is(ul, ol):not(#_) {
1327
+ /* ul and ol have padding that has to be reset */
1328
+ padding-top: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1329
+ padding-bottom: var(--sd-spacing-0, 0px) /* No spacing (manually added) */;
1330
+ }
1331
+
1332
+ /* Inverted styles */
1333
+
1334
+ .sd-prose--inverted hr {
1335
+ --tw-border-opacity: 1;
1336
+ border-color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-border-opacity, 1)) /* Used for buttons, inverted focus state */;
1337
+ }
1338
+
1339
+ .sd-prose--inverted pre {
1340
+
1341
+ color: rgb(var(--sd-color-white, 255 255 255) / var(--tw-text-opacity, 1)) /* Inverted text color */;
1342
+ }
1343
+
1344
+ /* Full width styles */
1345
+
1346
+ .sd-prose--full-width {
1347
+ max-width: unset;
1348
+ }