@kitconcept/volto-light-theme 5.0.1 → 6.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/.changelog.draft +26 -6
  2. package/CHANGELOG.md +32 -0
  3. package/README.md +7 -367
  4. package/package.json +20 -7
  5. package/razzle.extend.js +38 -0
  6. package/src/components/Anontools/Anontools.jsx +1 -1
  7. package/src/components/Blocks/Button/schema.js +25 -5
  8. package/src/components/Blocks/EventMetadata/View.jsx +8 -7
  9. package/src/components/Blocks/Image/Edit.jsx +4 -6
  10. package/src/components/Blocks/Image/ImageSidebar.jsx +4 -2
  11. package/src/components/Blocks/Image/View.jsx +3 -6
  12. package/src/components/Blocks/Image/schema.js +37 -6
  13. package/src/components/Blocks/Listing/DefaultTemplate.jsx +3 -2
  14. package/src/components/Blocks/Listing/GridTemplate.jsx +4 -2
  15. package/src/components/Blocks/Listing/ImageGallery.jsx +2 -2
  16. package/src/components/Blocks/Listing/SummaryTemplate.jsx +3 -2
  17. package/src/components/Blocks/Search/components/SearchInput.jsx +1 -1
  18. package/src/components/Blocks/Separator/schema.js +59 -0
  19. package/src/components/Blocks/Slider/DefaultBody.jsx +4 -2
  20. package/src/components/Blocks/Teaser/schema.js +21 -1
  21. package/src/components/Blocks/schema.js +16 -15
  22. package/src/components/Breadcrumbs/Breadcrumbs.jsx +4 -3
  23. package/src/components/Footer/Footer.jsx +77 -27
  24. package/src/components/Header/Header.jsx +34 -29
  25. package/src/components/LanguageSelector/{LanguageSelector.js → LanguageSelector.jsx} +11 -7
  26. package/src/components/Logo/Logo.jsx +28 -22
  27. package/src/components/MobileNavigation/MobileNavigation.jsx +3 -2
  28. package/src/components/MobileNavigation/MobileToolsFooter.jsx +1 -1
  29. package/src/components/Navigation/Navigation.jsx +4 -3
  30. package/src/components/SearchWidget/IntranetSearchWidget.jsx +1 -1
  31. package/src/components/SearchWidget/SearchWidget.jsx +1 -1
  32. package/src/components/Theme/EventView.jsx +3 -2
  33. package/src/components/Theme/FileView.jsx +1 -1
  34. package/src/components/Theme/NewsItemView.jsx +1 -1
  35. package/src/components/Theming/Theming.tsx +52 -0
  36. package/src/components/Widgets/AlignWidget.jsx +2 -2
  37. package/src/components/Widgets/BackgroundColorWidget.tsx +18 -0
  38. package/src/components/Widgets/BlockAlignmentWidget.tsx +81 -0
  39. package/src/components/Widgets/BlockWidthWidget.tsx +94 -0
  40. package/src/components/Widgets/BlocksObjectWidget.tsx +333 -0
  41. package/src/components/Widgets/ButtonsWidget.tsx +68 -0
  42. package/src/components/Widgets/ColorPickerWidget.tsx +60 -0
  43. package/src/components/Widgets/FooterLinksWidget.tsx +106 -0
  44. package/src/components/Widgets/FooterLogosWidget.tsx +120 -0
  45. package/src/components/Widgets/ThemingColorPicker.tsx +33 -0
  46. package/src/config/blocks.tsx +352 -0
  47. package/src/config/classExtenders.ts +101 -0
  48. package/src/config/settings.ts +35 -0
  49. package/src/config/slots.ts +12 -0
  50. package/src/config/widgets.ts +31 -0
  51. package/src/customizations/volto/components/theme/View/RenderBlocks.jsx +97 -80
  52. package/src/customizations/volto/components/theme/View/RenderBlocks.test.jsx +16 -48
  53. package/src/helpers/helpers.test.ts +51 -0
  54. package/src/helpers/helpers.ts +48 -0
  55. package/src/index.ts +54 -0
  56. package/src/theme/_bgcolor-blocks-layout.scss +1127 -20
  57. package/src/theme/_footer.scss +8 -5
  58. package/src/theme/_header.scss +3 -8
  59. package/src/theme/_layout.scss +24 -7
  60. package/src/theme/_typo-custom.scss +1 -1
  61. package/src/theme/_variables.scss +95 -12
  62. package/src/theme/_widgets.scss +102 -0
  63. package/src/theme/blocks/_accordion.scss +2 -4
  64. package/src/theme/blocks/_button.scss +32 -31
  65. package/src/theme/blocks/_eventMetadata.scss +7 -0
  66. package/src/theme/blocks/_grid.scss +11 -36
  67. package/src/theme/blocks/_highlight.scss +1 -0
  68. package/src/theme/blocks/_image.scss +38 -17
  69. package/src/theme/blocks/_introduction.scss +16 -0
  70. package/src/theme/blocks/_listing.scss +1 -6
  71. package/src/theme/blocks/_search.scss +1 -23
  72. package/src/theme/blocks/_separator.scss +17 -20
  73. package/src/theme/blocks/_slider.scss +57 -56
  74. package/src/theme/blocks/_teaser.scss +3 -3
  75. package/src/theme/main.scss +1 -0
  76. package/src/transforms/to6.ts +94 -0
  77. package/tsconfig.json +33 -0
  78. package/.release-it.json +0 -31
  79. package/babel.config.js +0 -17
  80. package/build/messages/src/components/Anontools/Anontools.json +0 -10
  81. package/build/messages/src/components/Blocks/Button/schema.json +0 -6
  82. package/build/messages/src/components/Blocks/EventMetadata/View.json +0 -30
  83. package/build/messages/src/components/Blocks/Image/Edit.json +0 -10
  84. package/build/messages/src/components/Blocks/Image/ImageSidebar.json +0 -18
  85. package/build/messages/src/components/Blocks/Image/schema.json +0 -10
  86. package/build/messages/src/components/Blocks/Listing/ListingBody.json +0 -26
  87. package/build/messages/src/components/Blocks/Search/TopSideFacets.json +0 -10
  88. package/build/messages/src/components/Blocks/Search/components/SearchDetails.json +0 -10
  89. package/build/messages/src/components/Blocks/Search/components/SearchInput.json +0 -6
  90. package/build/messages/src/components/Blocks/Slider/DefaultBody.json +0 -18
  91. package/build/messages/src/components/Blocks/Slider/schema.json +0 -14
  92. package/build/messages/src/components/Blocks/schema.json +0 -6
  93. package/build/messages/src/components/Breadcrumbs/Breadcrumbs.json +0 -10
  94. package/build/messages/src/components/Footer/Footer.json +0 -30
  95. package/build/messages/src/components/Header/Header.json +0 -6
  96. package/build/messages/src/components/LanguageSelector/LanguageSelector.json +0 -6
  97. package/build/messages/src/components/Logo/Logo.json +0 -10
  98. package/build/messages/src/components/MobileNavigation/MobileNavigation.json +0 -26
  99. package/build/messages/src/components/Navigation/Navigation.json +0 -10
  100. package/build/messages/src/components/SearchWidget/IntranetSearchWidget.json +0 -14
  101. package/build/messages/src/components/SearchWidget/SearchWidget.json +0 -10
  102. package/build/messages/src/components/Theme/EventView.json +0 -6
  103. package/build/messages/src/components/Widgets/AlignWidget.json +0 -22
  104. package/build/messages/src/index.json +0 -10
  105. package/news/.gitkeep +0 -0
  106. package/src/components/Atoms/Container/Container.jsx +0 -32
  107. package/src/components/Atoms/README.md +0 -1
  108. package/src/components/Atoms/helpers.jsx +0 -9
  109. package/src/components/CQPolyfill.jsx +0 -9
  110. package/src/index.js +0 -367
  111. package/towncrier.toml +0 -33
  112. /package/src/components/Blocks/Slate/{ExtraAlignWrapper.js → ExtraAlignWrapper.jsx} +0 -0
@@ -1,19 +1,47 @@
1
1
  .blocks-group-wrapper {
2
+ background: var(--theme-color);
3
+ color: var(--theme-foreground-color);
2
4
  @include color-block-change-vertical-spacing();
3
- }
4
5
 
5
- .blocks-group-wrapper.grey {
6
- background-color: #ecebeb;
6
+ &:first-child {
7
+ padding-top: 0;
8
+ }
9
+
10
+ & > p,
11
+ & > span,
12
+ & > li,
13
+ & > ul,
14
+ & > ol,
15
+ & > strong,
16
+ & > em,
17
+ & > figcaption,
18
+ & > a:not(.item),
19
+ & > blockquote,
20
+ & > h2,
21
+ & > h3,
22
+ & > h1 {
23
+ color: var(--theme-foreground-color);
24
+ }
25
+
26
+ a:not(.item):not(
27
+ :has(> .teaser-item),
28
+ :has(> .listing-body),
29
+ :has(> .card-container)
30
+ ) {
31
+ color: var(--link-foreground-color, --theme-foreground-color);
32
+ text-decoration: underline;
33
+ }
34
+
35
+ &:first-child:has(> .documentFirstHeading) {
36
+ padding-top: 0;
37
+ }
7
38
  }
8
39
 
9
- .has--backgroundColor--grey {
10
- background: $lightgrey;
40
+ .block {
41
+ background-color: var(--theme-color);
11
42
  }
12
43
 
13
44
  #page-document .blocks-group-wrapper {
14
- &.transparent:first-child {
15
- padding-top: 0;
16
- }
17
45
  .block:first-child h2,
18
46
  .block:first-child h2.headline {
19
47
  margin-top: 0;
@@ -51,20 +79,1099 @@
51
79
  }
52
80
  }
53
81
 
54
- // Slider
55
- #page-document .blocks-group-wrapper.grey:has(.block.slider:first-child) {
56
- padding-top: 0;
57
- padding-bottom: 0px; // Adjust for the padding from the slider itself
58
- }
82
+ // Color map
83
+ @mixin use-theme-colors() {
84
+ // Page title
85
+ h1.documentFirstHeading {
86
+ color: var(--theme-foreground-color);
87
+ }
88
+
89
+ header.head-title span {
90
+ color: var(--theme-foreground-color);
91
+ }
92
+
93
+ // ToC
94
+ .table-of-contents {
95
+ h2 {
96
+ color: var(--theme-foreground-color);
97
+ }
98
+ }
99
+
100
+ // Blocks
101
+ .block {
102
+ // Button
103
+ &.__button {
104
+ & > .button.container {
105
+ & .ui.button {
106
+ border-color: var(--theme-foreground-color);
107
+ background-color: var(--theme-color);
108
+
109
+ color: var(--theme-foreground-color);
110
+
111
+ &:hover,
112
+ &:active,
113
+ &:focus {
114
+ border-color: var(--theme-foreground-color);
115
+ background-color: var(--theme-foreground-color);
116
+ color: var(--theme-color);
117
+ }
118
+ }
119
+ }
120
+ }
121
+
122
+ // Teaser
123
+ &.teaser {
124
+ .teaser-item {
125
+ border-bottom-color: var(--theme-foreground-color) !important;
126
+ }
127
+
128
+ h2,
129
+ p,
130
+ .headline {
131
+ color: var(--theme-foreground-color);
132
+ }
133
+ }
134
+
135
+ // Separator
136
+ &.separator {
137
+ .line:not(.inner)::after {
138
+ border-color: var(--theme-foreground-color);
139
+ }
140
+ }
141
+
142
+ // Introduction
143
+ &.introduction {
144
+ a,
145
+ strong,
146
+ li,
147
+ ul,
148
+ ol,
149
+ p,
150
+ h2,
151
+ h3 {
152
+ color: var(--theme-foreground-color);
153
+ }
154
+ }
155
+
156
+ // Listing
157
+ &.listing,
158
+ &.search {
159
+ h2.headline {
160
+ color: var(--theme-foreground-color);
161
+ }
162
+
163
+ .emptyListing {
164
+ color: var(--theme-foreground-color);
165
+ }
166
+
167
+ .listing-item {
168
+ border-bottom-color: var(--theme-foreground-color) !important;
169
+
170
+ a > .listing-body {
171
+ h3,
172
+ h2,
173
+ a,
174
+ p,
175
+ span {
176
+ color: var(--theme-foreground-color);
177
+ }
178
+ }
179
+
180
+ .head-title span,
181
+ .head-title {
182
+ color: var(--theme-foreground-color);
183
+ }
184
+
185
+ .card-container {
186
+ background-color: var(--theme-high-contrast-color);
187
+
188
+ .content,
189
+ .content p {
190
+ color: var(--theme-foreground-color);
191
+ }
192
+ }
193
+ }
194
+
195
+ &.imageGallery {
196
+ div > .ui.container {
197
+ background: none;
198
+ }
199
+ .image-wrapper {
200
+ .cookie-consent-overlay {
201
+ .cookie-consent-buttons {
202
+ background-color: black;
203
+
204
+ a {
205
+ color: var(--theme-foreground-color);
206
+ }
207
+ }
208
+ }
209
+ }
210
+
211
+ figcaption {
212
+ .credits {
213
+ p b {
214
+ color: var(--theme-foreground-color);
215
+ }
216
+ a {
217
+ text-decoration: underline;
218
+ }
219
+ }
220
+ }
221
+
222
+ .image-gallery-thumbnails-wrapper .image-gallery-thumbnails-container {
223
+ .image-gallery-thumbnail {
224
+ &:hover,
225
+ &.active {
226
+ border: 3px solid var(--theme-foreground-color);
227
+ }
228
+ }
229
+ }
230
+
231
+ .image-gallery-description {
232
+ color: var(--theme-low-contrast-foreground-color);
233
+
234
+ .download {
235
+ a {
236
+ color: var(--theme-low-contrast-foreground-color);
237
+ text-decoration: underline;
238
+ }
239
+ }
240
+ }
241
+ }
242
+
243
+ .image-gallery-content {
244
+ background: none !important;
245
+ figcaption {
246
+ .title,
247
+ .description,
248
+ .description > div,
249
+ .credits,
250
+ .credits a {
251
+ color: var(--theme-foreground-color);
252
+ }
253
+ }
254
+ }
255
+
256
+ .image-gallery .image-gallery-content .image-gallery-slide-wrapper {
257
+ button.primary.image-gallery-icon.image-gallery-fullscreen-button,
258
+ button.button.image-gallery-icon.image-gallery-play-button {
259
+ border-color: var(--theme-foreground-color);
260
+ svg path {
261
+ fill: var(--theme-foreground-color) !important;
262
+ }
263
+
264
+ &:hover,
265
+ &:active,
266
+ &:focus {
267
+ svg {
268
+ background: var(--theme-foreground-color) !important;
269
+
270
+ & path {
271
+ fill: var(--theme-color) !important;
272
+ }
273
+ }
274
+ }
275
+ }
276
+
277
+ button.ui.button.image-gallery-icon {
278
+ path {
279
+ stroke: var(--theme-foreground-color);
280
+ }
281
+ }
282
+ }
283
+ .pagination-wrapper {
284
+ .ui.pagination.desktop-pagination.menu {
285
+ display: flex;
286
+ background: none;
287
+
288
+ a {
289
+ max-height: 38px !important;
290
+ border-color: var(--theme-foreground-color);
291
+ color: var(--theme-foreground-color);
292
+
293
+ &:nth-child(n):not(:last-child) {
294
+ border-right: none;
295
+ }
296
+
297
+ &.disabled {
298
+ color: var(--theme-low-contrast-foreground-color) !important;
299
+ }
300
+
301
+ &.active {
302
+ background: var(--theme-foreground-color);
303
+ color: var(--theme-color);
304
+ }
305
+ }
306
+ }
307
+
308
+ .total {
309
+ color: var(--theme-foreground-color);
310
+ }
311
+ }
312
+
313
+ .pagination-wrapper {
314
+ .ui.pagination.menu {
315
+ display: flex;
316
+ background: none;
317
+
318
+ a {
319
+ max-height: 38px !important;
320
+ border-color: var(--theme-foreground-color);
321
+ color: var(--theme-foreground-color);
322
+
323
+ &.disabled {
324
+ color: var(--theme-low-contrast-foreground-color) !important;
325
+ }
326
+
327
+ &.active {
328
+ background: var(--theme-foreground-color);
329
+ color: var(--theme-color);
330
+ }
331
+ }
332
+ }
333
+
334
+ .total {
335
+ color: var(--theme-foreground-color);
336
+ }
337
+ }
338
+ }
339
+
340
+ // Slider
341
+ &.slider {
342
+ .slider-dots {
343
+ .slider-dot {
344
+ &::after {
345
+ background-color: var(--theme-high-contrast-color);
346
+ }
347
+ }
348
+ .slider-dot--selected {
349
+ &::after {
350
+ background: var(--theme-foreground-color);
351
+ }
352
+ }
353
+ }
354
+ }
355
+
356
+ // Quote
357
+ &.quote {
358
+ .line {
359
+ border-color: var(--theme-foreground-color);
360
+ }
361
+
362
+ footer {
363
+ color: var(--theme-foreground-color);
364
+ }
365
+ }
366
+
367
+ // Images & Audio
368
+ &.image,
369
+ &.audio,
370
+ &.video,
371
+ &.imageslider {
372
+ figcaption {
373
+ .title,
374
+ .description,
375
+ .description > div,
376
+ .credits,
377
+ .credits a {
378
+ color: var(--theme-foreground-color);
379
+ }
380
+
381
+ .credits div > a,
382
+ .credits > a {
383
+ text-decoration: underline !important;
384
+ }
385
+ }
386
+ }
387
+
388
+ // Search
389
+ &.search {
390
+ .search-input {
391
+ border: none !important;
392
+ background: var(--theme-high-contrast-color) !important;
393
+
394
+ .ui.input {
395
+ background-color: transparent !important;
396
+
397
+ input {
398
+ color: var(--theme-foreground-color);
399
+
400
+ &::placeholder {
401
+ color: var(--theme-low-contrast-foreground-color) !important;
402
+ }
403
+ }
404
+ }
405
+
406
+ button.search-input-clear-icon-button,
407
+ button.search-input-live-icon-button {
408
+ background-color: transparent !important;
409
+
410
+ svg path {
411
+ fill: var(--theme-foreground-color) !important;
412
+ }
413
+ }
414
+ }
415
+
416
+ .search-sort-wrapper {
417
+ border: 1px solid var(--theme-foreground-color);
418
+
419
+ .react-select__control {
420
+ background-color: transparent;
421
+
422
+ .react-select__single-value {
423
+ color: var(--theme-foreground-color);
424
+ }
425
+
426
+ .react-select__indicator svg {
427
+ &,
428
+ & path {
429
+ fill: var(--theme-foreground-color);
430
+ }
431
+ }
432
+ }
433
+
434
+ .ui.basic.compact.icon.button.active {
435
+ background: var(--theme-foreground-color);
436
+ svg > path {
437
+ fill: var(--theme-color);
438
+ &:first-child {
439
+ stroke: var(--theme-color);
440
+ }
441
+ }
442
+ }
443
+
444
+ .ui.basic.compact.icon.button {
445
+ border: none !important;
446
+ margin: 0 !important;
447
+ background-color: var(--theme-color);
448
+
449
+ &.active {
450
+ background: var(--theme-foreground-color) !important;
451
+
452
+ svg > path {
453
+ fill: var(--theme-color);
454
+ &:first-child {
455
+ stroke: var(--theme-color);
456
+ }
457
+ }
458
+ }
459
+ svg > path {
460
+ fill: var(--theme-foreground-color);
461
+ &:first-child {
462
+ stroke: var(--theme-foreground-color);
463
+ }
464
+ }
465
+
466
+ &:not(.active):hover {
467
+ background: var(--theme-color) !important;
468
+ }
469
+ }
470
+ }
471
+
472
+ .facets {
473
+ h4.header,
474
+ label {
475
+ color: var(--theme-low-contrast-foreground-color);
476
+ }
477
+
478
+ .react-select-container {
479
+ .react-select__menu {
480
+ background-color: var(--theme-high-contrast-color);
481
+
482
+ .react-select__option {
483
+ background-color: var(--theme-high-contrast-color);
484
+ color: var(--theme-foreground-color) !important;
485
+
486
+ &:hover {
487
+ background: var(--theme-color);
488
+ }
489
+ }
490
+ }
491
+ }
492
+
493
+ .react-select__control {
494
+ border-bottom: 1px solid var(--theme-foreground-color);
495
+ background-color: transparent;
496
+
497
+ .react-select__indicator svg path {
498
+ fill: var(--theme-foreground-color) !important;
499
+ }
500
+
501
+ .react-select__multi-value {
502
+ background-color: var(--theme-high-contrast-color) !important;
503
+
504
+ &,
505
+ .react-select__multi-value__label {
506
+ color: var(--theme-foreground-color);
507
+ }
508
+ }
509
+
510
+ .react-select__single-value {
511
+ color: var(--theme-foreground-color);
512
+ }
513
+
514
+ .date-input {
515
+ color: black !important;
516
+ }
517
+ .CalendarMonth_caption > strong {
518
+ color: black !important;
519
+ }
520
+ }
521
+
522
+ .react-select__placeholder {
523
+ color: var(--theme-foreground-color);
524
+ }
525
+
526
+ .DateRangePickerInput_arrow_svg {
527
+ fill: var(--theme-foreground-color);
528
+ }
529
+ }
530
+
531
+ .CalendarMonth_caption strong,
532
+ .CalendarDay__default:hover,
533
+ .DayPicker_weekHeader_li small {
534
+ color: #252525;
535
+ }
536
+
537
+ .DateRangePickerInput,
538
+ .DateInput input,
539
+ .DateInput {
540
+ border-color: var(--theme-foreground-color);
541
+ background: none !important;
542
+ color: var(--theme-foreground-color);
543
+
544
+ &::placeholder {
545
+ color: var(--theme-low-contrast-foreground-color) !important;
546
+ }
547
+ }
548
+
549
+ .DateRangePickerInput_clearDates svg {
550
+ color: var(--theme-foreground-color);
551
+ }
552
+
553
+ .ui.toggle.checkbox label::before {
554
+ border: 1px solid var(--theme-foreground-color);
555
+ }
556
+ .search-sort-on {
557
+ border: none !important;
558
+ .sorted-label {
559
+ color: var(--theme-foreground-color);
560
+
561
+ .sorted-label-value {
562
+ color: var(--theme-foreground-color);
563
+ }
564
+ }
565
+ .react-select__menu {
566
+ border-color: var(--theme-foreground-color) !important;
567
+
568
+ .react-select__menu-list {
569
+ background: var(--theme-color);
570
+
571
+ .react-select__option {
572
+ background-color: var(--theme-high-contrast-color);
573
+ color: var(--theme-foreground-color) !important;
574
+
575
+ svg {
576
+ fill: var(--theme-foreground-color) !important;
577
+ }
578
+
579
+ &:hover {
580
+ background: var(--theme-color);
581
+ }
582
+ }
583
+ }
584
+ }
585
+ }
586
+
587
+ .search-details {
588
+ h2,
589
+ span {
590
+ color: var(--theme-foreground-color);
591
+ }
592
+ }
593
+ }
594
+
595
+ // Heading
596
+ &.heading {
597
+ h2.heading {
598
+ color: var(--theme-foreground-color);
599
+ }
600
+ }
601
+
602
+ // Image slider
603
+ &.imageslider {
604
+ .image-gallery-thumbnails-wrapper .image-gallery-thumbnails-container {
605
+ .image-gallery-thumbnail {
606
+ &:hover,
607
+ &.active {
608
+ border-color: var(--theme-foreground-color) !important;
609
+ }
610
+ }
611
+ }
612
+ .image-gallery .image-gallery-content .image-gallery-slide-wrapper {
613
+ button.primary.image-gallery-icon.image-gallery-fullscreen-button,
614
+ button.button.image-gallery-icon.image-gallery-play-button {
615
+ svg path {
616
+ fill: var(--theme-foreground-color) !important;
617
+ }
618
+
619
+ &:hover,
620
+ &:active,
621
+ &:focus {
622
+ svg {
623
+ background: var(--theme-foreground-color) !important;
624
+
625
+ & path {
626
+ fill: var(--theme-color) !important;
627
+ }
628
+ }
629
+ }
630
+ }
631
+ }
632
+
633
+ figcaption {
634
+ padding-right: 2em;
635
+ padding-left: 2em;
636
+ }
637
+ }
638
+
639
+ // Grid
640
+ &.gridBlock {
641
+ .headline {
642
+ color: var(--theme-foreground-color);
643
+ }
644
+ .grid-block-slate .slate,
645
+ .slate-editor {
646
+ background: var(--theme-high-contrast-color);
647
+ color: var(--theme-foreground-color);
648
+
649
+ & > * {
650
+ color: var(--theme-foreground-color);
651
+ }
652
+ }
653
+
654
+ // Use values assigned to the parent Grid block
655
+ .block {
656
+ --theme-high-contrast-color: inherit !important;
657
+ --theme-color: inherit !important;
658
+ --theme-high-contrast-color: inherit !important;
659
+ --theme-foreground-color: inherit !important;
660
+ --theme-low-contrast-foreground-color: inherit !important;
661
+ }
662
+
663
+ .block.teaser {
664
+ padding-top: 0;
665
+ background: var(--theme-high-contrast-color);
666
+
667
+ .teaser-item {
668
+ background: var(--theme-high-contrast-color);
669
+ }
670
+ .grid-teaser-item {
671
+ background: var(--theme-high-contrast-color);
672
+
673
+ .download-file {
674
+ color: var(--theme-foreground-color);
675
+ }
676
+ &.hideImage {
677
+ justify-content: start;
678
+ }
679
+ }
680
+ }
681
+
682
+ .block.image {
683
+ figure figcaption {
684
+ .credits a {
685
+ text-decoration: underline !important;
686
+ }
687
+ }
688
+ }
689
+
690
+ .column > .slate,
691
+ .grid-items .slate:not(.inner) {
692
+ background-color: var(--theme-high-contrast-color);
693
+ & > * {
694
+ color: var(--theme-foreground-color);
695
+ }
696
+ }
697
+
698
+ h2.headline {
699
+ color: var(--theme-foreground-color);
700
+ }
701
+ .grid-teaser-item {
702
+ &.hideImage {
703
+ background: var(--theme-high-contrast-color);
704
+ }
705
+
706
+ h2,
707
+ a,
708
+ p,
709
+ strong,
710
+ .download-file {
711
+ color: var(--theme-foreground-color);
712
+ }
713
+ }
714
+
715
+ .grid-block-image .block.image {
716
+ figcaption {
717
+ .description,
718
+ .credits {
719
+ padding: 0 !important;
720
+ a {
721
+ text-decoration: underline;
722
+ }
723
+ }
724
+ }
725
+ }
726
+
727
+ .grid-block-slate {
728
+ .slate {
729
+ strong,
730
+ em {
731
+ color: var(--theme-foreground-color);
732
+ }
733
+ }
734
+ }
735
+ }
736
+
737
+ .cookie-consent-buttons {
738
+ button.button {
739
+ color: black;
740
+ }
741
+ a,
742
+ p {
743
+ color: $white !important;
744
+ }
745
+ }
746
+ }
747
+ // Accordion
748
+ .accordion-block,
749
+ .block-editor-accordion {
750
+ .ui.styled.accordion {
751
+ border-color: var(--theme-foreground-color);
752
+
753
+ .title.accordion-title {
754
+ background: var(--theme-color);
755
+
756
+ & > span {
757
+ color: var(--theme-low-contrast-foreground-color);
758
+ }
759
+
760
+ &.active > span {
761
+ color: var(--theme-foreground-color);
762
+ }
763
+
764
+ & > svg {
765
+ fill: var(--theme-low-contrast-foreground-color) !important;
766
+ }
767
+
768
+ &.active > svg {
769
+ fill: var(--theme-foreground-color) !important;
770
+ }
771
+ }
772
+
773
+ .rah-static {
774
+ background: var(--theme-color) !important;
775
+ }
776
+
777
+ &:last-child {
778
+ border-color: var(--theme-foreground-color);
779
+ }
780
+
781
+ figcaption .title,
782
+ figcaption .description {
783
+ color: var(--theme-foreground-color);
784
+ }
785
+ }
786
+ // Inherit colors from parent Accordion
787
+ .blocks-group-wrapper,
788
+ .block {
789
+ --theme-high-contrast-color: inherit !important;
790
+ --theme-color: inherit !important;
791
+ --theme-high-contrast-color: inherit !important;
792
+ --theme-foreground-color: inherit !important;
793
+ --theme-low-contrast-foreground-color: inherit !important;
794
+ }
795
+ }
796
+
797
+ table.ui.table.slate-table-block {
798
+ border-color: var(--theme-low-contrast-foreground-color);
799
+
800
+ tr td,
801
+ th {
802
+ border-color: var(--theme-low-contrast-foreground-color);
803
+ }
804
+
805
+ th {
806
+ background-color: var(--theme-high-contrast-color) !important;
807
+
808
+ p {
809
+ color: var(--theme-low-contrast-foreground-color) !important;
810
+ }
811
+ }
812
+
813
+ td {
814
+ color: var(--theme-foreground-color);
815
+ }
816
+
817
+ tr {
818
+ background: var(--theme-color);
819
+ }
820
+
821
+ &.striped tbody tr:nth-child(2n) {
822
+ background-color: var(--theme-high-contrast-color) !important;
823
+ }
824
+ }
825
+
826
+ //Edit mode
827
+ #page-edit,
828
+ #page-add {
829
+ .block {
830
+ & [data-slate-placeholder='true'] {
831
+ color: var(--theme-low-contrast-foreground-color) !important;
832
+ }
833
+ }
834
+
835
+ .block-editor-slateTable {
836
+ .slate-table-block-wrapper {
837
+ thead.hide-header-edit {
838
+ opacity: 1;
839
+
840
+ th span {
841
+ color: darkGrey !important;
842
+ }
843
+ }
844
+ }
845
+ }
846
+
847
+ [class^='block-editor-'] {
848
+ a.slate-editor-link {
849
+ color: var(--theme-foreground-color);
850
+ }
851
+
852
+ .block {
853
+ .text-slate-editor-inner {
854
+ span {
855
+ color: var(--theme-foreground-color) !important;
856
+ }
857
+ }
858
+
859
+ .heading {
860
+ h2.editable {
861
+ color: var(--theme-foreground-color);
862
+ }
863
+ }
864
+
865
+ .teaser {
866
+ h2,
867
+ p,
868
+ .headline {
869
+ color: var(--theme-foreground-color);
870
+ }
871
+ }
872
+
873
+ .title {
874
+ [data-slate-placeholder='true'] {
875
+ top: unset !important;
876
+ bottom: 0;
877
+ }
878
+ }
879
+
880
+ .listing,
881
+ .search {
882
+ h2,
883
+ p,
884
+ h3,
885
+ .react-select__placeholder {
886
+ color: var(--theme-foreground-color) !important;
887
+ }
888
+ }
889
+
890
+ .search {
891
+ .search-input-live-icon-button {
892
+ background: none !important;
893
+ }
894
+
895
+ .search-sort-wrapper {
896
+ .ui.basic.compact.icon.button:not(.active) {
897
+ background: $white !important;
898
+ }
899
+ }
900
+ }
901
+ .gridBlock {
902
+ .slate-editor {
903
+ a,
904
+ ul,
905
+ ol,
906
+ li {
907
+ color: var(--theme-foreground-color);
908
+ }
909
+ }
910
+
911
+ .renderer-wrapper.empty .uber-grid-default-item {
912
+ p {
913
+ color: black !important;
914
+ }
915
+ }
916
+ }
917
+ }
918
+ }
919
+ }
920
+
921
+ // Header
922
+ header.header-wrapper {
923
+ background: var(--header-background);
924
+ .header {
925
+ .tools-wrapper {
926
+ .tools {
927
+ a,
928
+ .anontools a,
929
+ .anontools::after {
930
+ color: var(--header-foreground);
931
+ }
932
+ }
933
+ }
934
+
935
+ // Navigation
936
+ nav.navigation {
937
+ button.item {
938
+ color: var(--header-foreground);
939
+ }
940
+ .submenu-wrapper {
941
+ .submenu.active {
942
+ background: var(--fatmenu-background);
943
+
944
+ .submenu-inner {
945
+ a,
946
+ h2 {
947
+ color: var(--fatmenu-foreground);
948
+ }
949
+
950
+ a span {
951
+ &:hover {
952
+ border-color: var(--fatmenu-foreground);
953
+ }
954
+ }
955
+
956
+ .subitem-wrapper {
957
+ border-color: var(--fatmenu-foreground);
958
+ }
959
+
960
+ button.close {
961
+ background: none;
962
+
963
+ &:hover,
964
+ &:focus {
965
+ outline: 1px solid var(--fatmenu-foreground);
966
+ }
967
+
968
+ svg path {
969
+ fill: var(--fatmenu-foreground);
970
+ }
971
+ }
972
+ }
973
+ }
974
+ }
975
+ }
976
+
977
+ // Search
978
+ .search-bar {
979
+ background-color: var(--search-background);
980
+
981
+ .searchbox {
982
+ border-bottom-color: var(--search-foreground) !important;
983
+ input {
984
+ background-color: var(--search-background);
985
+ color: var(--search-foreground);
986
+ &::placeholder {
987
+ color: var(--search-foreground);
988
+ }
989
+ }
990
+
991
+ & > button:not(:hover, :active, :focus) {
992
+ svg path {
993
+ fill: var(--secondary-foreground-color);
994
+ }
995
+ }
996
+ }
997
+ }
998
+
999
+ // Hamburger Menu
1000
+ .hamburger-wrapper {
1001
+ .hamburger,
1002
+ .hamburger-box,
1003
+ .hamburger-inner {
1004
+ &::before,
1005
+ &::after {
1006
+ background: var(--primary-foreground-color);
1007
+ }
1008
+
1009
+ .hamburger-box {
1010
+ &::after {
1011
+ background: var(--primary-foreground-color);
1012
+ }
1013
+ }
1014
+ }
1015
+ }
1016
+
1017
+ // Mobile Nav
1018
+ .mobile-nav {
1019
+ .search {
1020
+ .search-button {
1021
+ button:not(:hover, :active, :focus) {
1022
+ svg path {
1023
+ fill: var(--fatmenu-foreground);
1024
+ }
1025
+ }
1026
+ }
1027
+ }
1028
+
1029
+ .menu-drawer {
1030
+ background: var(--fatmenu-background);
1031
+ ul {
1032
+ li {
1033
+ border-color: var(--fatmenu-foreground);
1034
+ color: var(--fatmenu-foreground);
1035
+
1036
+ a {
1037
+ color: var(--fatmenu-foreground);
1038
+ }
1039
+ }
1040
+ }
1041
+
1042
+ .search-header {
1043
+ button {
1044
+ color: var(--fatmenu-foreground);
1045
+ }
1046
+ }
1047
+
1048
+ .searchbox > button:not(:hover, :active, :focus) {
1049
+ svg path {
1050
+ fill: var(--fatmenu-foreground);
1051
+ }
1052
+ }
1053
+ }
1054
+ }
1055
+
1056
+ .search {
1057
+ .search-button {
1058
+ button:not(:hover, :active, :focus) {
1059
+ svg path {
1060
+ fill: var(--header-foreground);
1061
+ }
1062
+ }
1063
+ }
1064
+ }
1065
+ }
1066
+
1067
+ .logo {
1068
+ a {
1069
+ img {
1070
+ fill: red !important;
1071
+
1072
+ * {
1073
+ fill: red !important;
1074
+ }
1075
+ }
1076
+ }
1077
+ }
1078
+ }
1079
+
1080
+ // Breadcrumbs
1081
+ #main > .breadcrumbs {
1082
+ background: var(--breadcrumbs-background);
1083
+
1084
+ .section.active,
1085
+ .divider::before {
1086
+ color: var(--breadcrumbs-foreground) !important;
1087
+ }
1088
+
1089
+ a.section {
1090
+ color: var(--link-foreground-color, --breadcrumbs-foreground);
1091
+ }
1092
+
1093
+ a.home {
1094
+ svg {
1095
+ fill: var(--link-foreground-color, --breadcrumbs-foreground) !important;
1096
+ }
1097
+ }
1098
+ }
1099
+
1100
+ // Footer
1101
+ #footer .footer {
1102
+ background: var(--footer-background);
1103
+
1104
+ .footer-message {
1105
+ color: var(--footer-foreground);
1106
+
1107
+ a {
1108
+ color: var(--link-foreground-color, --footer-foreground) !important;
1109
+ }
1110
+ }
1111
+
1112
+ a.item,
1113
+ .footer-branding {
1114
+ color: var(
1115
+ --link-foreground-color,
1116
+ --secondary-foreground-color
1117
+ ) !important;
1118
+ }
1119
+ li.item {
1120
+ border-right-color: var(
1121
+ --link-foreground-color,
1122
+ --secondary-foreground-color
1123
+ ) !important;
1124
+ color: var(
1125
+ --link-foreground-color,
1126
+ --secondary-foreground-color
1127
+ ) !important;
1128
+ }
1129
+ }
1130
+
1131
+ // Search results page
1132
+ &.section-search {
1133
+ .ui.basic.segment.content-area {
1134
+ margin-bottom: 0;
1135
+ main {
1136
+ padding-bottom: 1rem;
1137
+ background: var(--primary-color);
1138
+
1139
+ h1.documentFirstHeading,
1140
+ & > span,
1141
+ & > div {
1142
+ color: var(--primary-foreground-color);
1143
+ }
1144
+
1145
+ #content-core {
1146
+ article {
1147
+ a {
1148
+ color: var(--link-foreground-color, --primary-foreground-color);
1149
+ }
1150
+ }
1151
+ }
1152
+ }
1153
+
1154
+ .items_total {
1155
+ color: var(--primary-foreground-color);
1156
+
1157
+ .header {
1158
+ .header-content {
1159
+ .sort-by,
1160
+ button {
1161
+ z-index: 1;
1162
+ color: var(--primary-foreground-color);
59
1163
 
60
- #page-document .blocks-group-wrapper.grey .block.slider,
61
- .block-editor-slider.has--backgroundColor--grey {
62
- .slider-dot:not(.slider-dot--selected)::after {
63
- background: #fff;
1164
+ &::before {
1165
+ border-color: var(--primary-foreground-color);
1166
+ }
1167
+ }
1168
+ }
1169
+ }
1170
+ }
1171
+ }
64
1172
  }
65
1173
  }
66
1174
 
67
- // Edit mode adjustments
68
- .block-editor-gridBlock.has--backgroundColor--grey .block h2.headline {
69
- padding-top: $spacing-xlarge;
1175
+ body {
1176
+ @include use-theme-colors();
70
1177
  }