@undrr/undrr-mangrove 1.3.2 → 1.4.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 (156) hide show
  1. package/README.md +32 -25
  2. package/components/BarChart.js +2 -2
  3. package/components/BookCard.js +6 -0
  4. package/components/BookCard.js.LICENSE.txt +11 -0
  5. package/components/Breadcrumbs.js +6 -0
  6. package/components/Breadcrumbs.js.LICENSE.txt +9 -0
  7. package/components/Checkbox.js +6 -0
  8. package/components/Checkbox.js.LICENSE.txt +9 -0
  9. package/components/Chips.js +6 -0
  10. package/components/Chips.js.LICENSE.txt +9 -0
  11. package/components/CtaButton.js +6 -0
  12. package/components/CtaButton.js.LICENSE.txt +9 -0
  13. package/components/EmbedContainer.js +6 -0
  14. package/components/EmbedContainer.js.LICENSE.txt +9 -0
  15. package/components/Fetcher.js +2 -2
  16. package/components/Footer.js +6 -0
  17. package/components/Footer.js.LICENSE.txt +9 -0
  18. package/components/FormErrorSummary.js +6 -0
  19. package/components/FormErrorSummary.js.LICENSE.txt +9 -0
  20. package/components/FormGroup.js +6 -0
  21. package/components/FormGroup.js.LICENSE.txt +9 -0
  22. package/components/FullWidth.js +6 -0
  23. package/components/FullWidth.js.LICENSE.txt +9 -0
  24. package/components/Gallery.js +2 -2
  25. package/components/Hero.js +6 -0
  26. package/components/Hero.js.LICENSE.txt +9 -0
  27. package/components/HighlightBox.js +6 -0
  28. package/components/HighlightBox.js.LICENSE.txt +9 -0
  29. package/components/HorizontalBookCard.js +6 -0
  30. package/components/HorizontalBookCard.js.LICENSE.txt +11 -0
  31. package/components/HorizontalCard.js +6 -0
  32. package/components/HorizontalCard.js.LICENSE.txt +11 -0
  33. package/components/IconCard.js +2 -2
  34. package/components/IconCard.js.LICENSE.txt +1 -1
  35. package/components/Loader.js +6 -0
  36. package/components/Loader.js.LICENSE.txt +9 -0
  37. package/components/MapComponent.js +2 -2
  38. package/components/MegaMenu.js +2 -2
  39. package/components/PageHeader.js +6 -0
  40. package/components/PageHeader.js.LICENSE.txt +9 -0
  41. package/components/Pager.js +2 -2
  42. package/components/QuoteHighlight.js +2 -2
  43. package/components/Radio.js +6 -0
  44. package/components/Radio.js.LICENSE.txt +9 -0
  45. package/components/ScrollContainer.js +2 -2
  46. package/components/Select.js +6 -0
  47. package/components/Select.js.LICENSE.txt +9 -0
  48. package/components/ShareButtons.js +2 -2
  49. package/components/ShowMore.js +6 -0
  50. package/components/ShowMore.js.LICENSE.txt +9 -0
  51. package/components/StatsCard.js +2 -2
  52. package/components/SyndicationSearchWidget.js +2 -2
  53. package/components/Tab.js +6 -0
  54. package/components/Tab.js.LICENSE.txt +9 -0
  55. package/components/TextCta.js +6 -0
  56. package/components/TextCta.js.LICENSE.txt +11 -0
  57. package/components/TextInput.js +6 -0
  58. package/components/TextInput.js.LICENSE.txt +9 -0
  59. package/components/Textarea.js +6 -0
  60. package/components/Textarea.js.LICENSE.txt +9 -0
  61. package/components/VerticalCard.js +6 -0
  62. package/components/VerticalCard.js.LICENSE.txt +11 -0
  63. package/components/hydrate.js +5 -0
  64. package/css/style-delta.css +464 -0
  65. package/css/style-delta.css.map +1 -0
  66. package/css/style-gutenberg.css +19 -18
  67. package/css/style-gutenberg.css.map +1 -1
  68. package/css/style-irp-legacy.css +469 -0
  69. package/css/style-irp-legacy.css.map +1 -0
  70. package/css/style-irp.css +96 -103
  71. package/css/style-irp.css.map +1 -1
  72. package/css/style-legacy.css +462 -0
  73. package/css/style-legacy.css.map +1 -0
  74. package/css/style-mcr-legacy.css +469 -0
  75. package/css/style-mcr-legacy.css.map +1 -0
  76. package/css/style-mcr.css +96 -103
  77. package/css/style-mcr.css.map +1 -1
  78. package/css/style-preventionweb-legacy.css +469 -0
  79. package/css/style-preventionweb-legacy.css.map +1 -0
  80. package/css/style-preventionweb.css +96 -103
  81. package/css/style-preventionweb.css.map +1 -1
  82. package/css/style.css +96 -103
  83. package/css/style.css.map +1 -1
  84. package/error-pages/401.html +10 -11
  85. package/error-pages/403.html +11 -12
  86. package/error-pages/404.html +13 -14
  87. package/error-pages/429.html +12 -13
  88. package/error-pages/500.html +10 -11
  89. package/error-pages/502.html +12 -13
  90. package/error-pages/503.html +12 -13
  91. package/error-pages/504.html +10 -11
  92. package/error-pages/5xx.html +10 -11
  93. package/error-pages/challenge.html +12 -13
  94. package/error-pages/managed-challenge.html +12 -13
  95. package/js/tabs.js +427 -88
  96. package/package.json +1 -1
  97. package/scss/Atom/BaseTypography/Blockquote/blockquote.scss +1 -8
  98. package/scss/Atom/BaseTypography/Cite/cite.scss +2 -2
  99. package/scss/Atom/Images/AuthorImage/author-image.scss +4 -4
  100. package/scss/Atom/Images/ImageCaptionCredit/image-caption-credit.scss +24 -28
  101. package/scss/Atom/Images/ImageCredit/image-credit.scss +1 -1
  102. package/scss/Atom/Layout/Container/container.scss +2 -2
  103. package/scss/Atom/Layout/Grid/grid.scss +1 -1
  104. package/scss/Atom/ReachElement/Details/details.scss +6 -6
  105. package/scss/Atom/ReachElement/Figcaption/figcaption.scss +1 -1
  106. package/scss/Atom/Table/table.scss +0 -8
  107. package/scss/Components/Boilerplate/boilerplate.scss +2 -2
  108. package/scss/Components/Breadcrumbs/breadcrumbs.scss +2 -9
  109. package/scss/Components/Buttons/Chips/chips.scss +5 -19
  110. package/scss/Components/Buttons/CtaButton/buttons.scss +3 -124
  111. package/scss/Components/Buttons/CtaButton/cta-button.scss +124 -0
  112. package/scss/Components/Buttons/ShareButtons/share-buttons.scss +2 -2
  113. package/scss/Components/Cards/Card/card.scss +41 -2
  114. package/scss/Components/ErrorPages/error-pages.scss +12 -12
  115. package/scss/Components/Footer/footer.scss +72 -4
  116. package/scss/Components/Forms/Select/select.scss +2 -2
  117. package/scss/Components/Forms/_form-base.scss +5 -5
  118. package/scss/Components/Forms/_form-legacy.scss +1 -1
  119. package/scss/Components/Gallery/gallery.scss +4 -4
  120. package/scss/Components/Hero/hero.scss +18 -17
  121. package/scss/Components/HighlightBox/highlight-box.scss +5 -5
  122. package/scss/Components/MegaMenu/mega-menu.scss +750 -0
  123. package/scss/Components/MegaMenu/megamenu.scss +3 -659
  124. package/scss/Components/PageHeader/page-header.scss +4 -4
  125. package/scss/Components/Pagination/pagination.scss +2 -2
  126. package/scss/Components/SyndicationSearchWidget/SyndicationSearchWidget.scss +3 -1480
  127. package/scss/Components/SyndicationSearchWidget/syndication-search-widget.scss +1515 -0
  128. package/scss/Components/Tab/tab.scss +66 -7
  129. package/scss/Components/TextCta/text-cta.scss +129 -0
  130. package/scss/Components/TextCta/textcta.scss +3 -27
  131. package/scss/Molecules/ImageCaption/image-caption.scss +6 -16
  132. package/scss/Molecules/SectionHeader/section-header.scss +8 -0
  133. package/scss/Molecules/SectionHeader/sectionheader.scss +3 -8
  134. package/scss/Utilities/FullWidth/FullWidth.scss +3 -23
  135. package/scss/Utilities/FullWidth/full-width.scss +23 -0
  136. package/scss/Utilities/Loader/loader.scss +1 -1
  137. package/scss/Utilities/ShowMore/ShowMore.scss +3 -26
  138. package/scss/Utilities/ShowMore/show-more.scss +26 -0
  139. package/scss/assets/scss/_components.scss +14 -9
  140. package/scss/assets/scss/_foundational.scss +13 -7
  141. package/scss/assets/scss/_mixins.scss +9 -314
  142. package/scss/assets/scss/_utility.scss +19 -71
  143. package/scss/assets/scss/_variables-delta.scss +105 -0
  144. package/scss/assets/scss/_variables-irp.scss +1 -1
  145. package/scss/assets/scss/_variables-mcr.scss +1 -1
  146. package/scss/assets/scss/_variables-preventionweb.scss +1 -1
  147. package/scss/assets/scss/_variables.scss +68 -34
  148. package/scss/assets/scss/style-delta.scss +8 -0
  149. package/scss/assets/scss/style-gutenberg.scss +2 -2
  150. package/scss/assets/scss/style-irp-legacy.scss +20 -0
  151. package/scss/assets/scss/style-legacy.scss +20 -0
  152. package/scss/assets/scss/style-mcr-legacy.scss +20 -0
  153. package/scss/assets/scss/style-preventionweb-legacy.scss +20 -0
  154. package/scss/Components/BlockquoteComponent/blockquotecomp.scss +0 -31
  155. package/scss/Components/Buttons/CtaLink/cta-link.scss +0 -61
  156. /package/scss/Components/TableOfContents/{TableOfContents.scss → table-of-contents.scss} +0 -0
@@ -1,6 +1,6 @@
1
1
  /* author image */
2
2
 
3
- .author__img {
3
+ .mg-author-image {
4
4
  border-radius: $author-image-radius;
5
5
  height: 80px;
6
6
  min-width: 80px;
@@ -32,7 +32,7 @@
32
32
  }
33
33
 
34
34
  @each $name, $color in $colors {
35
- &.#{$name}::before {
35
+ &.mg-author-image--#{$name}::before {
36
36
  @include background-image(45deg, $mg-color-yellow, transparent 53%);
37
37
  }
38
38
  }
@@ -42,14 +42,14 @@
42
42
  @extend %img-cover;
43
43
  }
44
44
 
45
- &.large {
45
+ &.mg-author-image--large {
46
46
  height: 180px;
47
47
  width: 180px;
48
48
  }
49
49
  }
50
50
 
51
51
  [dir="rtl"] {
52
- .author__img {
52
+ .mg-author-image {
53
53
  &::before {
54
54
  @include transform(scaleX(-1));
55
55
  }
@@ -1,43 +1,41 @@
1
1
  // @import '../../../assets/scss/base';
2
2
 
3
3
  /* image with caption start */
4
- .image {
5
- &-figcaption {
6
- display: flex;
7
- flex-wrap: wrap;
8
- justify-content: center;
9
-
10
- .image__caption {
11
- margin: $mg-spacing-50 $mg-spacing-100 0;
12
-
13
- @include devicebreak(medium) {
14
- margin: $mg-spacing-150 0 0;
15
- width: 58.33333%;
16
- }
4
+ .mg-image-figcaption {
5
+ display: flex;
6
+ flex-wrap: wrap;
7
+ justify-content: center;
8
+
9
+ .mg-image-caption {
10
+ margin: $mg-spacing-50 $mg-spacing-100 0;
11
+
12
+ @include devicebreak(medium) {
13
+ margin: $mg-spacing-150 0 0;
14
+ width: 58.33333%;
17
15
  }
18
16
  }
19
17
  }
20
18
 
21
- .image-figcaption.medium {
19
+ .mg-image-figcaption.mg-image-figcaption--medium {
22
20
  @include devicebreak(medium) {
23
21
  margin: 0 auto;
24
22
  width: 58.3333%;
25
23
 
26
- .image__caption {
24
+ .mg-image-caption {
27
25
  width: 100%;
28
26
  }
29
27
  }
30
28
  }
31
29
 
32
- .image-figcaption.portrait {
30
+ .mg-image-figcaption.mg-image-figcaption--portrait {
33
31
  align-items: flex-end;
34
32
 
35
33
  @include devicebreak(medium) {
36
- .image-figcaption__cart {
34
+ .mg-image-figcaption__cart {
37
35
  width: 33.33333%;
38
36
  }
39
37
 
40
- .image__caption {
38
+ .mg-image-caption {
41
39
  display: block;
42
40
  margin: 0 0 0 $mg-spacing-100;
43
41
  padding-bottom: 0;
@@ -49,7 +47,7 @@
49
47
  margin-bottom: $mg-spacing-50;
50
48
  padding: 0;
51
49
 
52
- + .credits {
50
+ + .mg-credits {
53
51
  border-top: 1px solid $mg-color-neutral-500;
54
52
  margin-left: 0;
55
53
  padding: $mg-spacing-50 0 0 0;
@@ -58,19 +56,19 @@
58
56
  }
59
57
  }
60
58
 
61
- .credits {
59
+ .mg-credits {
62
60
  border-left: 0;
63
61
  border-right: 0;
64
62
  margin-bottom: $mg-spacing-50;
65
63
  }
66
64
 
67
- .author__caption {
65
+ .mg-author-caption {
68
66
  font-size: $mg-font-size-200;
69
67
  line-height: 1.5;
70
68
  }
71
69
  }
72
70
 
73
- .image-figcaption__cart {
71
+ .mg-image-figcaption__cart {
74
72
  img {
75
73
  @extend %img-cover;
76
74
 
@@ -80,14 +78,12 @@
80
78
 
81
79
  @include devicebreak(medium) {
82
80
  [dir="rtl"] {
83
- .image-figcaption.portrait {
84
- .image {
85
- &__caption {
86
- margin: 0 $mg-spacing-100 0 0;
87
- }
81
+ .mg-image-figcaption.mg-image-figcaption--portrait {
82
+ .mg-image-caption {
83
+ margin: 0 $mg-spacing-100 0 0;
88
84
  }
89
85
 
90
- .credits {
86
+ .mg-credits {
91
87
  border-right: 0;
92
88
  margin-right: 0;
93
89
  padding: $mg-spacing-50 0;
@@ -1,4 +1,4 @@
1
- .credits {
1
+ .mg-credits {
2
2
  font-size: $mg-font-size-200;
3
3
  line-height: 1.4;
4
4
 
@@ -5,8 +5,8 @@
5
5
  // $mg-breakpoint-desktop: 1440px;
6
6
 
7
7
  .mg-container {
8
- padding-right: 1rem;
9
- padding-left: 1rem;
8
+ padding-right: mg-rem(10);
9
+ padding-left: mg-rem(10);
10
10
  margin: 0 auto;
11
11
  max-width: 100%;
12
12
 
@@ -5,7 +5,7 @@ g-grid {
5
5
 
6
6
  .mg-grid > * {
7
7
  flex: 1;
8
- margin: $mg-spacing-0 $mg-spacing-0 1rem 1.2292%;
8
+ margin: $mg-spacing-0 $mg-spacing-0 $mg-spacing-100 1.2292%;
9
9
  }
10
10
 
11
11
  .mg-grid > *:first-child {
@@ -1,6 +1,6 @@
1
1
  /* details tag start */
2
2
  details {
3
- padding: 1rem;
3
+ padding: mg-rem(10);
4
4
  transition: all 0.2s ease-in-out;
5
5
 
6
6
  &:hover {
@@ -12,7 +12,7 @@ details {
12
12
 
13
13
  list-style-type: none;
14
14
  outline: 0;
15
- padding: 1rem 1rem 1rem 2.5rem;
15
+ padding: mg-rem(10) mg-rem(10) mg-rem(10) mg-rem(25);
16
16
  cursor: pointer;
17
17
  position: relative;
18
18
  transition: background-color 0.2s ease-in-out;
@@ -24,7 +24,7 @@ details {
24
24
  &::before {
25
25
  content: "";
26
26
  position: absolute;
27
- left: 1rem;
27
+ left: mg-rem(10);
28
28
  top: 50%;
29
29
  transform: translateY(-50%);
30
30
  width: 0;
@@ -39,7 +39,7 @@ details {
39
39
  p {
40
40
  @extend %paragraph-font-200;
41
41
 
42
- padding: 1rem;
42
+ padding: mg-rem(10);
43
43
  margin: 0;
44
44
  line-height: 1.6;
45
45
  }
@@ -58,12 +58,12 @@ details {
58
58
  [dir="rtl"] {
59
59
  details {
60
60
  summary {
61
- padding: 1rem 2.5rem 1rem 1rem;
61
+ padding: mg-rem(10) mg-rem(25) mg-rem(10) mg-rem(10);
62
62
  }
63
63
 
64
64
  summary::before {
65
65
  left: auto;
66
- right: 1rem;
66
+ right: mg-rem(10);
67
67
  transform: translateY(-50%) rotate(180deg);
68
68
  }
69
69
 
@@ -4,7 +4,7 @@ figure {
4
4
 
5
5
  img {
6
6
  max-width: 100%;
7
- padding-bottom: 0.875rem;
7
+ padding-bottom: mg-rem(8.75);
8
8
  }
9
9
 
10
10
  figcaption {
@@ -127,12 +127,4 @@
127
127
  }
128
128
  }
129
129
 
130
- // burmese lang
131
- // :lang(my) {
132
- // th,
133
- // td {
134
- // line-height: 1.7;
135
- // }
136
- // }
137
-
138
130
  /* table tag end */
@@ -9,8 +9,8 @@
9
9
  border-radius: $mg-radius-button;
10
10
 
11
11
  &__title {
12
- font-size: 1.5rem;
13
- margin-bottom: 1rem;
12
+ font-size: mg-rem(15);
13
+ margin-bottom: mg-rem(10);
14
14
 
15
15
  a {
16
16
  color: $mg-color-interactive;
@@ -1,7 +1,7 @@
1
1
  .mg-breadcrumb {
2
2
  font-family: $mg-font-family-condensed;
3
3
  font-weight: 600;
4
- margin: 1rem 0 0.5rem;
4
+ margin: mg-rem(10) 0 mg-rem(5);
5
5
  align-items: baseline;
6
6
  display: flex;
7
7
  flex-wrap: wrap;
@@ -22,7 +22,7 @@
22
22
  font-weight: 600;
23
23
  letter-spacing: 0.03em;
24
24
  margin-right: 0;
25
- max-width: calc(100vw - 2rem);
25
+ max-width: calc(100vw - mg-rem(20));
26
26
  }
27
27
 
28
28
  a {
@@ -105,13 +105,6 @@
105
105
  }
106
106
  }
107
107
 
108
- // burmese lang
109
- // :lang(my) {
110
- // .mg-breadcrumb li:last-of-type {
111
- // font-size: $mg-font-size-100;
112
- // }
113
- // }
114
-
115
108
  // Arabic
116
109
  :lang(ar) {
117
110
  .mg-breadcrumb {
@@ -1,17 +1,17 @@
1
- .chip {
1
+ .mg-chip {
2
2
  align-items: center;
3
3
  background: $mg-color-neutral-50;
4
4
  border-radius: 20px;
5
5
  box-shadow: 0 1px 2px rgb(0 0 0 / 0.2);
6
6
  display: inline-flex;
7
- min-height: 1.875rem;
7
+ min-height: $mg-spacing-250;
8
8
  padding: $mg-spacing-25 $mg-spacing-50;
9
9
 
10
10
  &:hover {
11
11
  background-color: $mg-color-neutral-300;
12
12
  }
13
13
 
14
- &.chip__cross {
14
+ &.mg-chip__cross {
15
15
  &::before {
16
16
  // background: url(#{$img-path-Iconfourback}/times-red.svg) no-repeat left;
17
17
  content: "";
@@ -19,7 +19,7 @@
19
19
  height: 22px;
20
20
  margin-left: -$mg-spacing-25;
21
21
  margin-right: $mg-spacing-25;
22
- padding-right: 1.375rem;
22
+ padding-right: mg-rem(14);
23
23
  position: relative;
24
24
  top: 0;
25
25
  width: auto;
@@ -28,22 +28,8 @@
28
28
  }
29
29
 
30
30
  [dir="rtl"] {
31
- .chip__cross::before {
31
+ .mg-chip__cross::before {
32
32
  margin-left: $mg-spacing-25;
33
33
  margin-right: -$mg-spacing-25;
34
34
  }
35
35
  }
36
-
37
- :lang(my) {
38
- .chip {
39
- align-items: flex-end;
40
-
41
- &__cross {
42
- align-items: baseline;
43
-
44
- &::before {
45
- top: 5px;
46
- }
47
- }
48
- }
49
- }
@@ -1,124 +1,3 @@
1
- // .mg-buttons {
2
- // margin-bottom: 1em;
3
- // //Media queries
4
-
5
- // @media (max-width: $mg-breakpoint-mobile) {
6
- // display: flex;
7
- // flex-direction: column;
8
- // }
9
-
10
- // @media (max-width: $mg-breakpoint-tablet) {
11
- // display: flex;
12
- // flex-direction: column;
13
- // }
14
- // }
15
-
16
- .mg-button {
17
- align-items: center;
18
- background: transparent;
19
- display: flex;
20
- font-size: $mg-font-size-button;
21
- font-weight: 600;
22
- line-height: 1;
23
- border-radius: $mg-radius-button;
24
- color: $mg-color-button;
25
- cursor: pointer;
26
- justify-content: center;
27
- padding: $mg-padding-button;
28
- border: $mg-border-width-button solid $mg-border-color-button;
29
-
30
- &:focus-visible {
31
- box-shadow: 0 0 4px $mg-color-button-background--hover;
32
- outline: 0;
33
- }
34
-
35
- @include devicebreak(medium) {
36
- display: inline-flex;
37
- }
38
- }
39
-
40
- .mg-button + .mg-button {
41
- margin-left: 1rem;
42
- }
43
-
44
- button {
45
- &:focus-visible {
46
- box-shadow: 0 0 4px $mg-color-button-background;
47
- outline: 0;
48
- }
49
- }
50
-
51
- .mg-button-primary {
52
- background-color: $mg-color-button-background;
53
-
54
- &:hover {
55
- color: $mg-color-button;
56
- background-color: $mg-color-button-background--hover;
57
- }
58
-
59
- // &.button-arrow {
60
- // &::after {
61
- // @include transition(0.2s ease);
62
-
63
- // background: url(#{$img-path-Iconfourback}/chevron-right-black.svg)
64
- // no-repeat left center;
65
- // content: '';
66
- // height: 20px;
67
- // margin-left: $mg-spacing-25;
68
- // width: 13px;
69
- // }
70
-
71
- // &:hover::after {
72
- // @include translate(70%, 0);
73
- // }
74
-
75
- // &.disabled {
76
- // &::after {
77
- // background: url(#{$img-path-Iconfourback}/chevron-right-white.svg)
78
- // no-repeat left center;
79
- // content: '';
80
- // }
81
- // }
82
- // }
83
- }
84
-
85
- .mg-button-secondary {
86
- background-color: $mg-color-blue-600;
87
-
88
- &:hover {
89
- color: $mg-color-button;
90
- background-color: $mg-color-blue-400;
91
- }
92
- }
93
-
94
- .mg-button.disabled {
95
- background-color: $mg-color-neutral-400;
96
- color: $mg-color-neutral-300;
97
- pointer-events: none;
98
- }
99
-
100
- // [dir='rtl'] {
101
- // .button {
102
- // &.button-primary {
103
- // &.button-arrow {
104
- // &::after {
105
- // @include transform(rotate(180deg));
106
-
107
- // margin-left: 0;
108
- // margin-right: $mg-spacing-25;
109
- // }
110
-
111
- // &:hover::after {
112
- // @include transform(translate(-50%, 0) rotate(180deg));
113
- // }
114
- // }
115
- // }
116
- // }
117
- // }
118
-
119
- // Arabic font override
120
- :lang(ar) {
121
- .mg-button {
122
- font-family: $mg-font-family-arabic-headings;
123
- }
124
- }
1
+ // buttons.scss — DEPRECATED, use cta-button.scss
2
+ @import "./cta-button";
3
+ @warn "buttons.scss is deprecated. Import cta-button.scss instead.";
@@ -0,0 +1,124 @@
1
+ // .mg-buttons {
2
+ // margin-bottom: 1em;
3
+ // //Media queries
4
+
5
+ // @media (max-width: $mg-breakpoint-mobile) {
6
+ // display: flex;
7
+ // flex-direction: column;
8
+ // }
9
+
10
+ // @media (max-width: $mg-breakpoint-tablet) {
11
+ // display: flex;
12
+ // flex-direction: column;
13
+ // }
14
+ // }
15
+
16
+ .mg-button {
17
+ align-items: center;
18
+ background: transparent;
19
+ display: flex;
20
+ font-size: $mg-font-size-button;
21
+ font-weight: 600;
22
+ line-height: 1;
23
+ border-radius: $mg-radius-button;
24
+ color: $mg-color-button;
25
+ cursor: pointer;
26
+ justify-content: center;
27
+ padding: $mg-padding-button;
28
+ border: $mg-border-width-button solid $mg-border-color-button;
29
+
30
+ &:focus-visible {
31
+ box-shadow: 0 0 4px $mg-color-button-background--hover;
32
+ outline: 0;
33
+ }
34
+
35
+ @include devicebreak(medium) {
36
+ display: inline-flex;
37
+ }
38
+ }
39
+
40
+ .mg-button + .mg-button {
41
+ margin-left: mg-rem(10);
42
+ }
43
+
44
+ button {
45
+ &:focus-visible {
46
+ box-shadow: 0 0 4px $mg-color-button-background;
47
+ outline: 0;
48
+ }
49
+ }
50
+
51
+ .mg-button-primary {
52
+ background-color: $mg-color-button-background;
53
+
54
+ &:hover {
55
+ color: $mg-color-button;
56
+ background-color: $mg-color-button-background--hover;
57
+ }
58
+
59
+ // &.button-arrow {
60
+ // &::after {
61
+ // @include transition(0.2s ease);
62
+
63
+ // background: url(#{$img-path-Iconfourback}/chevron-right-black.svg)
64
+ // no-repeat left center;
65
+ // content: '';
66
+ // height: 20px;
67
+ // margin-left: $mg-spacing-25;
68
+ // width: 13px;
69
+ // }
70
+
71
+ // &:hover::after {
72
+ // @include translate(70%, 0);
73
+ // }
74
+
75
+ // &.disabled {
76
+ // &::after {
77
+ // background: url(#{$img-path-Iconfourback}/chevron-right-white.svg)
78
+ // no-repeat left center;
79
+ // content: '';
80
+ // }
81
+ // }
82
+ // }
83
+ }
84
+
85
+ .mg-button-secondary {
86
+ background-color: $mg-color-blue-600;
87
+
88
+ &:hover {
89
+ color: $mg-color-button;
90
+ background-color: $mg-color-blue-400;
91
+ }
92
+ }
93
+
94
+ .mg-button.disabled {
95
+ background-color: $mg-color-neutral-400;
96
+ color: $mg-color-neutral-300;
97
+ pointer-events: none;
98
+ }
99
+
100
+ // [dir='rtl'] {
101
+ // .button {
102
+ // &.button-primary {
103
+ // &.button-arrow {
104
+ // &::after {
105
+ // @include transform(rotate(180deg));
106
+
107
+ // margin-left: 0;
108
+ // margin-right: $mg-spacing-25;
109
+ // }
110
+
111
+ // &:hover::after {
112
+ // @include transform(translate(-50%, 0) rotate(180deg));
113
+ // }
114
+ // }
115
+ // }
116
+ // }
117
+ // }
118
+
119
+ // Arabic font override
120
+ :lang(ar) {
121
+ .mg-button {
122
+ font-family: $mg-font-family-arabic-headings;
123
+ }
124
+ }
@@ -24,8 +24,8 @@
24
24
 
25
25
  .mg-share__button {
26
26
  font-size: $mg-font-size-400;
27
- width: 4rem;
28
- height: 4rem;
27
+ width: mg-rem(40);
28
+ height: mg-rem(40);
29
29
  padding: $mg-spacing-100;
30
30
  border-radius: $mg-radius-button;
31
31
  background-color: $mg-color-button-background;
@@ -5,6 +5,9 @@
5
5
  display: inline-block;
6
6
  position: relative;
7
7
  margin-bottom: $mg-spacing-100;
8
+ background: $mg-card-background;
9
+ padding: $mg-card-padding;
10
+ border-radius: $mg-card-border-radius;
8
11
 
9
12
  // Vertical CARD
10
13
  &__vc {
@@ -134,12 +137,12 @@
134
137
  z-index: 100;
135
138
  }
136
139
 
137
- // Inline chevron indicator (CSS border triangle — no Unicode dependency)
140
+ // Inline chevron indicator (CSS border triangle)
138
141
  &__title a::after {
139
142
  border-color: currentColor;
140
143
  border-style: solid;
141
144
  border-width: 0.15em 0.15em 0 0;
142
- content: "";
145
+ content: "\2060"; // Word joiner: prevents caret from orphaning on its own line
143
146
  display: inline-block;
144
147
  height: 0.35em;
145
148
  margin-inline-start: 0.25em;
@@ -227,6 +230,10 @@ $card-variant-colours: (
227
230
  z-index: 101;
228
231
  }
229
232
 
233
+ .mg-card__label {
234
+ font-weight: 700;
235
+ }
236
+
230
237
  .mg-card__summary a:hover,
231
238
  .mg-card__text-link:hover {
232
239
  text-decoration: underline;
@@ -272,11 +279,20 @@ $card-variant-colours: (
272
279
  max-width: 500px;
273
280
  }
274
281
 
282
+ // Classification label above the icon/image inside the visual area
283
+ .mg-card__visual-label {
284
+ font-size: $mg-font-tag;
285
+ font-weight: 700;
286
+ color: $mg-color-tag;
287
+ width: 100%;
288
+ }
289
+
275
290
  // Reuse shared visual container with icon-specific sizing
276
291
  .mg-card__visual {
277
292
  flex-shrink: 0;
278
293
  width: 100%;
279
294
  display: flex;
295
+ flex-direction: column;
280
296
  align-items: center;
281
297
  justify-content: flex-start;
282
298
  overflow: visible;
@@ -375,6 +391,23 @@ $card-variant-colours: (
375
391
  .mg-icon {
376
392
  margin: 0 auto;
377
393
  }
394
+
395
+ // Colored background behind icon (circle by default, rounded rect in Delta)
396
+ &--colored {
397
+ background-color: var(--mg-icon-bg);
398
+ border-radius: $mg-card-icon-badge-radius;
399
+ aspect-ratio: 1;
400
+ width: 72px;
401
+ min-width: 72px;
402
+ display: flex;
403
+ align-items: center;
404
+ justify-content: center;
405
+
406
+ .mg-icon {
407
+ font-size: 32px;
408
+ color: var(--mg-icon-fg, #{$mg-color-neutral-700});
409
+ }
410
+ }
378
411
  }
379
412
 
380
413
  // Visual link for logo cards (srOnlyTitle) - stretched link pattern
@@ -464,6 +497,12 @@ $card-variant-colours: (
464
497
  }
465
498
  }
466
499
 
500
+ // Bordered variant (colored border via CSS custom property)
501
+ &--bordered {
502
+ border: 2px solid var(--mg-card-border);
503
+ padding: max($mg-card-padding + 0rem, $mg-spacing-100);
504
+ }
505
+
467
506
  // Centered variant
468
507
  &--centered {
469
508
  align-items: center;