@kitconcept/volto-light-theme 8.0.0-alpha.2 → 8.0.0-alpha.20

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 (103) hide show
  1. package/.changelog.draft +3 -4
  2. package/CHANGELOG.md +226 -0
  3. package/locales/de/LC_MESSAGES/volto.po +30 -115
  4. package/locales/en/LC_MESSAGES/volto.po +30 -115
  5. package/locales/es/LC_MESSAGES/volto.po +31 -116
  6. package/locales/eu/LC_MESSAGES/volto.po +58 -124
  7. package/locales/pt_BR/LC_MESSAGES/volto.po +38 -123
  8. package/locales/volto.pot +31 -116
  9. package/package.json +18 -15
  10. package/src/__mocks__/semantic-ui-react.ts +31 -0
  11. package/src/components/Blocks/Block/Edit.jsx +14 -6
  12. package/src/components/Blocks/Block/EditBlockWrapper.jsx +9 -3
  13. package/src/components/Blocks/Block/ErrorBoundary.test.tsx +55 -0
  14. package/src/components/Blocks/Block/ErrorBoundary.tsx +92 -0
  15. package/src/components/Blocks/Block/ErrorBoundaryMessage.tsx +66 -0
  16. package/src/components/Blocks/EventCalendar/Search/components/EventTemplate.tsx +1 -1
  17. package/src/components/Blocks/Image/Edit.jsx +1 -0
  18. package/src/components/Blocks/Listing/DefaultTemplate.jsx +12 -6
  19. package/src/components/Blocks/Listing/GridTemplate.jsx +16 -7
  20. package/src/components/Blocks/Listing/ListingBody.jsx +4 -1
  21. package/src/components/Blocks/Listing/SummaryTemplate.jsx +16 -7
  22. package/src/components/Blocks/Teaser/DefaultBody.tsx +25 -5
  23. package/src/components/Blocks/schema.ts +69 -0
  24. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +128 -0
  25. package/src/components/Breadcrumbs/Breadcrumbs.tsx +117 -0
  26. package/src/components/Caption/Caption.test.tsx +31 -0
  27. package/src/components/Caption/{Caption.jsx → Caption.tsx} +14 -21
  28. package/src/components/Footer/ColumnLinks.tsx +2 -2
  29. package/src/components/Footer/slots/Colophon.tsx +13 -1
  30. package/src/components/Footer/slots/CoreFooter.tsx +4 -2
  31. package/src/components/Header/Header.tsx +3 -3
  32. package/src/components/LanguageSelector/LanguageSelector.tsx +91 -0
  33. package/src/components/MobileNavigation/MobileNavigation.jsx +11 -9
  34. package/src/components/Navigation/Navigation.test.tsx +176 -0
  35. package/src/components/Navigation/{Navigation.jsx → Navigation.tsx} +77 -37
  36. package/src/components/StickyMenu/MobileCarouselArrowButton.tsx +81 -0
  37. package/src/components/StickyMenu/MobileStickyMenu.tsx +76 -0
  38. package/src/components/Summary/DefaultSummary.tsx +10 -3
  39. package/src/components/Summary/EventSummary.tsx +10 -3
  40. package/src/components/Summary/FileSummary.tsx +10 -3
  41. package/src/components/Summary/NewsItemSummary.tsx +10 -3
  42. package/src/components/Summary/PersonSummary.tsx +10 -3
  43. package/src/components/Summary/Summary.stories.tsx +46 -30
  44. package/src/components/Tags/Tags.test.tsx +71 -0
  45. package/src/components/Tags/{Tags.jsx → Tags.tsx} +9 -25
  46. package/src/components/Theme/EventView.jsx +4 -4
  47. package/src/components/Theme/NewsItemView.jsx +4 -4
  48. package/src/components/Theme/RenderBlocks.jsx +45 -37
  49. package/src/components/Theme/RenderBlocksV2.jsx +51 -20
  50. package/src/components/Widgets/ColorSwatch.stories.tsx +197 -0
  51. package/src/components/Widgets/ColorSwatch.test.tsx +188 -0
  52. package/src/components/Widgets/ColorSwatch.tsx +77 -39
  53. package/src/components/Widgets/SoftTextWidget.tsx +129 -0
  54. package/src/components/Widgets/SoftTextareaWidget.tsx +118 -0
  55. package/src/components/Widgets/ThemeColorSwatch.tsx +5 -9
  56. package/src/config/blocks.tsx +21 -29
  57. package/src/config/slots.ts +7 -0
  58. package/src/config/widgets.ts +5 -9
  59. package/src/customizations/volto/components/manage/DragDropList/DragDropList.jsx +263 -0
  60. package/src/customizations/volto/components/theme/LanguageSelector/LanguageSelector.tsx +10 -0
  61. package/src/helpers/styleDefinitions.test.tsx +30 -0
  62. package/src/helpers/styleDefinitions.ts +49 -0
  63. package/src/icons/block_icn_accordion.svg +0 -0
  64. package/src/icons/block_icn_grid.svg +0 -0
  65. package/src/internalChecks.test.ts +94 -0
  66. package/src/primitives/Card/Card.stories.tsx +4 -1
  67. package/src/primitives/Card/Card.test.tsx +11 -33
  68. package/src/primitives/Card/Card.tsx +33 -43
  69. package/src/primitives/IconLinkList.tsx +53 -52
  70. package/src/theme/_bgcolor-blocks-layout.scss +43 -45
  71. package/src/theme/_content.scss +12 -13
  72. package/src/theme/_export_import.scss +94 -0
  73. package/src/theme/_footer.scss +64 -19
  74. package/src/theme/_header.scss +21 -4
  75. package/src/theme/_insets.scss +1 -1
  76. package/src/theme/_layout.scss +34 -15
  77. package/src/theme/_mobile-sticky-menu.scss +92 -0
  78. package/src/theme/_search-page.scss +249 -0
  79. package/src/theme/_typo-custom.scss +16 -5
  80. package/src/theme/_variables.scss +19 -4
  81. package/src/theme/_widgets.scss +15 -27
  82. package/src/theme/blocks/_accordion.scss +11 -4
  83. package/src/theme/blocks/_grid.scss +9 -77
  84. package/src/theme/blocks/_listing.scss +60 -126
  85. package/src/theme/blocks/_search.scss +3 -4
  86. package/src/theme/blocks/_table.scss +1 -0
  87. package/src/theme/blocks/_teaser.scss +7 -117
  88. package/src/theme/blocks/error-boundary.scss +11 -0
  89. package/src/theme/card.scss +107 -70
  90. package/src/theme/main.scss +5 -0
  91. package/src/theme/notfound.scss +27 -0
  92. package/src/theme/person.scss +28 -12
  93. package/src/theme/sticky-menu.scss +7 -5
  94. package/src/types.d.ts +1 -0
  95. package/vitest.config.mjs +4 -0
  96. package/razzle.extend.js +0 -38
  97. package/src/components/Blocks/schema.js +0 -44
  98. package/src/components/Breadcrumbs/Breadcrumbs.jsx +0 -118
  99. package/src/components/Widgets/AlignWidget.tsx +0 -84
  100. package/src/components/Widgets/BlockAlignment.tsx +0 -88
  101. package/src/components/Widgets/BlockWidth.tsx +0 -101
  102. package/src/components/Widgets/Buttons.tsx +0 -144
  103. package/src/components/Widgets/Size.tsx +0 -78
@@ -0,0 +1,94 @@
1
+ #page-controlpanel-content-transfer .container {
2
+ .grid-container {
3
+ @include default-container-width();
4
+ @include adjustMarginsToContainer($default-container-width);
5
+ padding-top: $spacing-medium;
6
+ padding-bottom: $spacing-large;
7
+ gap: $spacing-small;
8
+ grid-template-columns: 1fr 1fr;
9
+
10
+ @container (max-width: #{$computer-breakpoint}) {
11
+ grid-template-columns: 1fr;
12
+ }
13
+ .grid-column {
14
+ position: relative;
15
+ display: flex;
16
+ height: 250px;
17
+ flex-wrap: wrap;
18
+ padding: $spacing-small;
19
+ border: 1px solid var(--primary-foreground-color);
20
+ gap: $spacing-small;
21
+
22
+ h2 {
23
+ width: 100%;
24
+ margin: 0;
25
+ @include text-heading-h3();
26
+ }
27
+
28
+ & > span {
29
+ position: absolute;
30
+ top: $spacing-small;
31
+ right: $spacing-small;
32
+
33
+ svg {
34
+ width: auto;
35
+ height: 30px;
36
+ }
37
+ }
38
+
39
+ .file-input-wrapper {
40
+ position: relative;
41
+ margin-top: auto;
42
+
43
+ .file-input-name {
44
+ position: absolute;
45
+ bottom: 100%;
46
+ left: 0;
47
+ margin-bottom: $spacing-small;
48
+ font-size: 18px;
49
+ font-weight: 300;
50
+ line-height: 24px;
51
+ white-space: nowrap;
52
+ }
53
+ }
54
+
55
+ button {
56
+ align-self: end;
57
+ padding: 8px 20px;
58
+ border: 1px solid var(--primary-foreground-color);
59
+ border-radius: unset;
60
+ margin: 0;
61
+ background: none;
62
+ color: var(--primary-foreground-color);
63
+ cursor: pointer;
64
+ text-decoration: none;
65
+
66
+ @include body-text-bold();
67
+
68
+ &:hover,
69
+ &:active,
70
+ &:focus {
71
+ border-color: var(--primary-foreground-color);
72
+ background-color: var(--primary-foreground-color);
73
+ color: var(--primary-color);
74
+ }
75
+
76
+ &[data-disabled='true'],
77
+ &[data-disabled='true']:hover {
78
+ border-color: color-mix(
79
+ in srgb,
80
+ var(--primary-color) 50%,
81
+ var(--primary-foreground-color)
82
+ );
83
+ background-color: var(--primary-color);
84
+ color: color-mix(
85
+ in srgb,
86
+ var(--primary-color) 50%,
87
+ var(--primary-foreground-color)
88
+ );
89
+ cursor: not-allowed;
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
@@ -13,7 +13,7 @@
13
13
  --footer-foreground: var(--primary-foreground-color, #{$black});
14
14
  }
15
15
 
16
- .container {
16
+ .container:not(> .container) {
17
17
  padding: 0 1rem;
18
18
  }
19
19
 
@@ -35,7 +35,10 @@
35
35
  --footer-background: var(--secondary-color, #{$white});
36
36
  --footer-foreground: var(--secondary-foreground-color, #{$black});
37
37
 
38
- padding: $spacing-xlarge 2rem;
38
+ padding: $spacing-xlarge 2rem 100px 2rem;
39
+ @media only screen and (max-width: $largest-mobile-screen) {
40
+ padding: $spacing-xlarge $spacing-small;
41
+ }
39
42
  background: var(--footer-background);
40
43
  color: var(--footer-foreground, $black);
41
44
 
@@ -94,13 +97,12 @@
94
97
 
95
98
  .logo {
96
99
  display: flex;
97
- justify-content: center;
98
- margin: 5rem 0 1.8rem 0;
99
-
100
+ max-width: 300px;
101
+ max-height: 90px;
102
+ margin-bottom: $spacing-medium;
100
103
  a {
101
104
  display: block;
102
- max-width: 200px;
103
- max-height: 80px;
105
+ max-width: 100%;
104
106
 
105
107
  img {
106
108
  max-width: 100%;
@@ -111,8 +113,10 @@
111
113
 
112
114
  .footer-grid {
113
115
  display: grid;
114
- gap: 1rem;
115
- grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
116
+ gap: $spacing-small;
117
+ grid-auto-columns: 1fr;
118
+ grid-auto-flow: column;
119
+ grid-template-columns: auto;
116
120
  text-align: left;
117
121
 
118
122
  h2 {
@@ -128,8 +132,8 @@
128
132
  list-style: none;
129
133
 
130
134
  li {
131
- padding: 0 7px;
132
135
  font-size: 18px;
136
+ line-height: 30px;
133
137
 
134
138
  a {
135
139
  text-decoration: underline;
@@ -141,34 +145,48 @@
141
145
  justify-self: start;
142
146
  @include body-text();
143
147
 
144
- img {
145
- margin-bottom: 38px;
148
+ &:has(~ div li),
149
+ &:has(~ div h2) {
150
+ width: 380px;
151
+ .logo ~ * {
152
+ padding-right: $spacing-xlarge;
153
+ }
146
154
  }
147
155
  }
148
156
 
149
- @media only screen and (max-width: $largest-mobile-screen) {
150
- gap: $spacing-xlarge;
157
+ .column-left,
158
+ .column-middle,
159
+ .column-right {
160
+ &:has(ul:empty):not(:has(h2)) {
161
+ display: none;
162
+ }
163
+ }
151
164
 
152
- text-align: center;
165
+ @media only screen and (max-width: $largest-mobile-screen) {
166
+ gap: $spacing-medium;
167
+ grid-auto-flow: row;
168
+ grid-template-columns: 1fr;
153
169
 
154
170
  .address-column {
155
171
  display: flex;
172
+ width: 100% !important;
156
173
  flex-direction: column;
157
- align-items: center;
174
+ align-items: flex-start;
175
+ margin-bottom: $spacing-medium;
158
176
  }
159
177
 
160
178
  .address-column,
161
179
  .column-left,
162
180
  .column-middle,
163
181
  .column-right {
164
- justify-self: center;
182
+ justify-self: start;
165
183
  }
166
184
  }
167
185
  }
168
186
  }
169
187
 
170
188
  .post-footer {
171
- padding: $spacing-xlarge 2rem;
189
+ padding: $spacing-xlarge $spacing-small;
172
190
  background: var(--footer-background);
173
191
  color: var(--footer-foreground, $black);
174
192
  font-size: 18px;
@@ -293,6 +311,7 @@
293
311
  @include add(size, xs);
294
312
  @include add(height, s);
295
313
  color: var(--footer-foreground);
314
+ text-decoration: underline;
296
315
  }
297
316
  }
298
317
  }
@@ -320,13 +339,35 @@
320
339
  @include add(size, xs);
321
340
  @include add(height, s);
322
341
 
323
- a {
342
+ .slate.widget {
343
+ width: fit-content;
344
+ margin-right: auto;
345
+ margin-left: auto;
324
346
  @include add(size, xs);
325
347
  @include add(height, s);
348
+ ul,
349
+ ol,
350
+ li,
351
+ p,
352
+ a {
353
+ margin-bottom: 0;
354
+ font: inherit;
355
+ line-height: inherit;
356
+ }
357
+ }
358
+
359
+ a {
326
360
  color: var(--footer-foreground);
361
+ font: inherit;
327
362
  text-decoration: underline;
328
363
  }
329
364
 
365
+ p {
366
+ @include add(size, xs);
367
+ @include add(height, s);
368
+ margin-bottom: 0;
369
+ }
370
+
330
371
  img {
331
372
  margin-top: 25px;
332
373
  }
@@ -338,11 +379,15 @@
338
379
  content: '';
339
380
  @include default-container-width();
340
381
  }
382
+ &:has(.slate p:only-child:empty) {
383
+ display: none;
384
+ }
341
385
  }
342
386
 
343
387
  .main-footer + .post-footer {
344
388
  background-color: var(--primary-color, $white);
345
389
  color: var(--primary-foreground-color, $black);
390
+ --social-network-icon-color-main: var(--primary-foreground-color, $black);
346
391
  }
347
392
  }
348
393
 
@@ -15,13 +15,14 @@
15
15
  max-height: 80px;
16
16
  flex: 1 1 0;
17
17
  align-self: center;
18
-
19
18
  a {
20
19
  display: block;
21
20
 
22
21
  img {
22
+ width: auto;
23
23
  max-width: 100%;
24
24
  height: auto;
25
+ max-height: 80px;
25
26
  }
26
27
  }
27
28
  }
@@ -238,7 +239,6 @@
238
239
  .tools-wrapper {
239
240
  display: flex;
240
241
  flex-direction: row-reverse;
241
- justify-content: space-between;
242
242
  padding-top: 16px;
243
243
 
244
244
  .intranet-flag {
@@ -272,6 +272,7 @@
272
272
  }
273
273
 
274
274
  .language-selector a {
275
+ color: $black;
275
276
  text-transform: uppercase;
276
277
  }
277
278
 
@@ -370,7 +371,7 @@
370
371
  flex: 3.5 1 0;
371
372
  align-self: center;
372
373
  justify-content: center;
373
- margin-bottom: 40px;
374
+ margin-bottom: 11px;
374
375
 
375
376
  @media only screen and (max-width: $largest-mobile-screen) {
376
377
  display: none;
@@ -410,6 +411,18 @@
410
411
  }
411
412
  }
412
413
  }
414
+ .desktop-menu {
415
+ .item {
416
+ padding-top: 15px;
417
+ &:hover::before,
418
+ &.active::before {
419
+ bottom: -20px;
420
+ }
421
+ }
422
+ .submenu-wrapper {
423
+ margin-top: 11px;
424
+ }
425
+ }
413
426
  }
414
427
 
415
428
  .complementary-logo {
@@ -418,6 +431,10 @@
418
431
  flex: 1 1 auto;
419
432
  flex-direction: row-reverse;
420
433
 
434
+ @media only screen and (max-width: $largest-mobile-screen) {
435
+ display: none;
436
+ }
437
+
421
438
  @media only screen and (max-width: $computer-breakpoint) {
422
439
  flex: 0 1 55px;
423
440
  }
@@ -587,7 +604,7 @@ body.has-toolbar.has-sidebar {
587
604
  }
588
605
  }
589
606
 
590
- & > li:first-child > button {
607
+ & > li:first-child > .item {
591
608
  margin-left: 0;
592
609
  }
593
610
 
@@ -6,7 +6,7 @@
6
6
  align-items: center;
7
7
  justify-content: center;
8
8
  border-radius: 100%;
9
- background-color: #ecebeb;
9
+ background-color: var(--theme-high-contrast-color);
10
10
  .day {
11
11
  font-size: 52px;
12
12
  font-style: normal;
@@ -54,6 +54,12 @@
54
54
  }
55
55
  }
56
56
 
57
+ @mixin adjustEditContainerFullWidth() {
58
+ max-width: calc(100% - 2 * $spacing-medium);
59
+ margin-right: auto;
60
+ margin-left: auto;
61
+ }
62
+
57
63
  // Container adjustments for dealing correctly with absolute positioned elements
58
64
  @mixin container-preference-order($zindex) {
59
65
  position: relative;
@@ -146,32 +152,40 @@ footer {
146
152
  @include default-container-width();
147
153
  @include adjustMarginsToContainer($default-container-width);
148
154
  }
149
- // External link Styling
155
+ // External & Mail link Styling
150
156
 
151
- // Slate Style External Links
157
+ // Slate Style External & Mail Links
152
158
  .content-area .ui.container,
153
159
  .content-area .q.container,
154
160
  .content-area .a.container {
155
- a.external:after,
156
- a.external:after {
161
+ a.external:not(.card-primary-link):after {
157
162
  @include external-link-icon();
158
163
  margin-top: -25px;
159
164
  margin-left: 3px;
160
165
  }
166
+ p a[href^='mailto:']:after {
167
+ @include mail-link-icon();
168
+ margin-top: -25px;
169
+ margin-left: 3px;
170
+ }
161
171
  }
162
172
  .content-area #page-edit .ui.container,
163
173
  .content-area .q.container,
164
174
  .content-area .a.container {
165
- a.external:after,
166
- a.external:after {
175
+ a.external:not(.card-primary-link):after {
167
176
  @include external-link-icon();
168
177
  margin-top: -25px;
169
178
  margin-left: 3px;
170
179
  }
180
+ p a[href^='mailto:']:after {
181
+ @include mail-link-icon();
182
+ margin-top: -25px;
183
+ margin-left: 3px;
184
+ }
171
185
  }
172
186
 
173
187
  /*
174
- External link removal for all the blocks.
188
+ External & Mail link removal for all the blocks.
175
189
  */
176
190
  .content-area #page-edit .ui.container,
177
191
  .content-area .q.container,
@@ -180,8 +194,10 @@ External link removal for all the blocks.
180
194
  .block.listing,
181
195
  .block.image,
182
196
  .block.teaser {
183
- a.external:after,
184
- a.external:after {
197
+ a.external:not(.card-primary-link):after {
198
+ display: none;
199
+ }
200
+ p a[href^='mailto:']:after {
185
201
  display: none;
186
202
  }
187
203
  }
@@ -241,21 +257,21 @@ External link removal for all the blocks.
241
257
  & > .block.search.grid,
242
258
  & > .block.rssBlock,
243
259
  & > .block.search .searchBlock-container,
244
- &> .block.eventsearch .search-block-event,
260
+ & > .block.eventsearch .search-block-event,
261
+ & > .block h2.block-title,
245
262
  & > .block h2.headline,
246
263
  & > .block.heading .heading-wrapper,
247
- & > .block.teaser .teaser-item.default,
248
- & > .block.teaser .card-inner, // deprecate when category is in place
264
+ & > .block.teaser,
249
265
  & > .block.highlight .teaser-description-title,
250
266
  & > table,
251
267
  & > .table-of-contents,
252
268
  & > .accordion-block,
253
- & > .slate blockquote {
269
+ & > .slate blockquote,
270
+ & > .block.banner.has--block-width--layout .banner-inner-container .text {
254
271
  @include default-container-width();
255
272
  @include adjustMarginsToContainer($default-container-width);
256
273
  }
257
274
 
258
- & > .block.teaser,
259
275
  & > .block.image.align.full,
260
276
  & > .block.video.align.full,
261
277
  & > .block.maps.align.full {
@@ -295,7 +311,7 @@ External link removal for all the blocks.
295
311
  @include adjustMarginsToContainer($default-container-width);
296
312
  }
297
313
 
298
- &.has--block-width--layout {
314
+ &:not(.banner).has--block-width--layout {
299
315
  @include adjustMarginsToContainer($layout-container-width);
300
316
  }
301
317
  }
@@ -314,6 +330,9 @@ External link removal for all the blocks.
314
330
  [class*='block-editor-']:not(.contained) {
315
331
  @include layout-container-width();
316
332
  @include adjustMarginsToEditContainer($layout-container-width);
333
+ &.has--block-width--full {
334
+ @include adjustEditContainerFullWidth();
335
+ }
317
336
  }
318
337
  }
319
338
 
@@ -0,0 +1,92 @@
1
+ .mobile-sticky-menu {
2
+ position: fixed;
3
+ z-index: 100;
4
+ bottom: 0;
5
+ display: flex;
6
+ display: none;
7
+ width: 100%;
8
+ height: 100px;
9
+ flex-direction: column;
10
+ background-color: var(--sticky-menu-color, #555);
11
+ @media only screen and (max-width: $largest-mobile-screen) {
12
+ display: block;
13
+ }
14
+
15
+ .embla {
16
+ position: relative;
17
+ --slide-size: 33%;
18
+
19
+ .embla__button {
20
+ display: flex;
21
+ height: 100px;
22
+ align-items: center;
23
+ padding: 0px;
24
+ border: none;
25
+ background-color: transparent;
26
+ color: var(--sticky-menu-foreground-color, #fff);
27
+ cursor: pointer;
28
+ font-size: 30px;
29
+ }
30
+ .embla__button--prev {
31
+ position: absolute;
32
+ top: 0px;
33
+ left: -5px;
34
+ }
35
+ .embla__button--next {
36
+ position: absolute;
37
+ top: 0px;
38
+ right: -5px;
39
+ }
40
+ .embla__viewport {
41
+ position: relative;
42
+ display: inline-block;
43
+ overflow: hidden;
44
+ width: 85%;
45
+
46
+ .embla__container {
47
+ display: flex;
48
+ height: 100px;
49
+ touch-action: pan-y pinch-zoom;
50
+ touch-action: pan-x;
51
+
52
+ .embla__slide {
53
+ min-width: 0;
54
+ flex: 0 0 var(--slide-size);
55
+ padding: 0px;
56
+ margin: 0px;
57
+ transform: translate3d(0, 0, 0);
58
+
59
+ .image-wrapper {
60
+ display: block;
61
+ width: 65px;
62
+ height: 65px;
63
+ img {
64
+ display: block;
65
+ width: 100%;
66
+ height: 100%;
67
+ }
68
+ }
69
+
70
+ li {
71
+ list-style: none;
72
+ }
73
+
74
+ span {
75
+ display: block;
76
+ color: var(--sticky-menu-foreground-color, #fff);
77
+ font-size: 10px;
78
+ font-weight: 700;
79
+ line-height: 12px;
80
+ }
81
+
82
+ a {
83
+ display: flex;
84
+ flex-flow: column;
85
+ align-items: center;
86
+ padding: 5px 10px 15px 10px;
87
+ }
88
+ }
89
+ }
90
+ }
91
+ }
92
+ }