@undrr/undrr-mangrove 1.8.2 → 2.0.0-alpha.2

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 (145) hide show
  1. package/components/BookCard.js +2 -2
  2. package/components/BookCard.js.LICENSE.txt +1 -1
  3. package/components/Breadcrumbs.js +3 -2
  4. package/components/Checkbox.js +3 -2
  5. package/components/Chips.js +3 -2
  6. package/components/CtaButton.js +3 -2
  7. package/components/EmbedContainer.js +3 -2
  8. package/components/Footer.js +2 -2
  9. package/components/Footer.js.LICENSE.txt +1 -1
  10. package/components/FormAction.js +6 -0
  11. package/components/FormAction.js.LICENSE.txt +9 -0
  12. package/components/FormErrorSummary.js +3 -2
  13. package/components/FormGroup.js +3 -2
  14. package/components/FullWidth.js +3 -2
  15. package/components/Gallery.js +2 -2
  16. package/components/Gallery.js.LICENSE.txt +1 -1
  17. package/components/Hero.js +2 -2
  18. package/components/Hero.js.LICENSE.txt +1 -1
  19. package/components/HighlightBox.js +3 -2
  20. package/components/HorizontalBookCard.js +2 -2
  21. package/components/HorizontalBookCard.js.LICENSE.txt +1 -1
  22. package/components/HorizontalCard.js +2 -2
  23. package/components/HorizontalCard.js.LICENSE.txt +1 -1
  24. package/components/IconCard.js +2 -2
  25. package/components/IconCard.js.LICENSE.txt +1 -1
  26. package/components/Loader.js +3 -2
  27. package/components/MegaMenu.js +2 -2
  28. package/components/MegaMenu.js.LICENSE.txt +1 -1
  29. package/components/PageHeader.js +3 -2
  30. package/components/Pager.js +2 -2
  31. package/components/Pager.js.LICENSE.txt +1 -1
  32. package/components/QuoteHighlight.js +3 -2
  33. package/components/Radio.js +3 -2
  34. package/components/ScrollContainer.js +3 -2
  35. package/components/Select.js +3 -2
  36. package/components/ShareButtons.js +2 -2
  37. package/components/ShareButtons.js.LICENSE.txt +1 -1
  38. package/components/ShowMore.js +3 -2
  39. package/components/StatsCard.js +2 -2
  40. package/components/StatsCard.js.LICENSE.txt +10 -0
  41. package/components/SyndicationSearchWidget.js +2 -2
  42. package/components/SyndicationSearchWidget.js.LICENSE.txt +1 -1
  43. package/components/Tab.js +3 -2
  44. package/components/TextCta.js +2 -2
  45. package/components/TextCta.js.LICENSE.txt +10 -0
  46. package/components/TextInput.js +3 -2
  47. package/components/Textarea.js +3 -2
  48. package/components/UserFeedback.js +6 -0
  49. package/components/UserFeedback.js.LICENSE.txt +9 -0
  50. package/components/VerticalCard.js +2 -2
  51. package/components/VerticalCard.js.LICENSE.txt +1 -1
  52. package/components/hydrate.js +1 -1
  53. package/css/style-all.css +422 -0
  54. package/css/style-all.css.map +1 -0
  55. package/css/style-delta.css +122 -171
  56. package/css/style-delta.css.map +1 -1
  57. package/css/style-gutenberg.css +55 -89
  58. package/css/style-gutenberg.css.map +1 -1
  59. package/css/style-irp.css +122 -161
  60. package/css/style-irp.css.map +1 -1
  61. package/css/style-mcr.css +122 -161
  62. package/css/style-mcr.css.map +1 -1
  63. package/css/style-preventionweb.css +122 -161
  64. package/css/style-preventionweb.css.map +1 -1
  65. package/css/style.css +121 -154
  66. package/css/style.css.map +1 -1
  67. package/package.json +2 -2
  68. package/scss/Atom/BaseTypography/Abbr/abbr.scss +1 -1
  69. package/scss/Atom/BaseTypography/Code/code.scss +41 -36
  70. package/scss/Atom/BaseTypography/Mark/mark.scss +2 -2
  71. package/scss/Atom/Images/AuthorImage/author-image.scss +8 -8
  72. package/scss/Atom/Images/ImageCaptionCredit/image-caption-credit.scss +9 -9
  73. package/scss/Atom/Layout/Container/container.scss +2 -4
  74. package/scss/Atom/Layout/Grid/grid.scss +15 -15
  75. package/scss/Atom/Navigation/MenuItems/menu-items.scss +10 -3
  76. package/scss/Atom/ReachElement/Details/details.scss +44 -39
  77. package/scss/Atom/Table/table.scss +22 -10
  78. package/scss/Atom/Tag/tag.scss +32 -32
  79. package/scss/Components/Boilerplate/boilerplate.scss +7 -7
  80. package/scss/Components/Breadcrumbs/breadcrumbs.scss +9 -9
  81. package/scss/Components/Buttons/Chips/chips.scss +63 -23
  82. package/scss/Components/Buttons/CtaButton/cta-button.scss +142 -20
  83. package/scss/Components/Buttons/ShareButtons/share-buttons.scss +16 -16
  84. package/scss/Components/Cards/Card/card.scss +77 -50
  85. package/scss/Components/Cards/StatsCard/stats-card.scss +32 -34
  86. package/scss/Components/CookieConsentBanner/cookie-consent-banner.scss +75 -74
  87. package/scss/Components/ErrorPages/error-pages.scss +9 -9
  88. package/scss/Components/Footer/footer.scss +12 -12
  89. package/scss/Components/Forms/FormAction/form-action.scss +50 -0
  90. package/scss/Components/Forms/FormGroup/form-group.scss +18 -7
  91. package/scss/Components/Forms/Select/select.scss +1 -1
  92. package/scss/Components/Forms/TextInput/text-input.scss +1 -1
  93. package/scss/Components/Forms/_form-base.scss +68 -61
  94. package/scss/Components/Gallery/gallery.scss +71 -70
  95. package/scss/Components/Hero/hero.scss +241 -74
  96. package/scss/Components/HighlightBox/highlight-box.scss +3 -3
  97. package/scss/Components/MegaMenu/mega-menu.scss +73 -76
  98. package/scss/Components/OnThisPageNav/on-this-page-nav.scss +36 -37
  99. package/scss/Components/PageHeader/page-header.scss +7 -7
  100. package/scss/Components/Pager/pager.scss +85 -62
  101. package/scss/Components/PreviewAccess/preview-access.scss +35 -35
  102. package/scss/Components/QuoteHighlight/quote-highlight.scss +32 -32
  103. package/scss/Components/ScrollContainer/scroll-container.scss +52 -32
  104. package/scss/Components/Snackbar/snackbar.scss +24 -31
  105. package/scss/Components/SyndicationSearchWidget/syndication-search-widget.scss +147 -139
  106. package/scss/Components/Tab/tab.scss +215 -34
  107. package/scss/Components/TableOfContents/table-of-contents.scss +6 -6
  108. package/scss/Components/TextCta/text-cta.scss +69 -23
  109. package/scss/Components/UserFeedback/user-feedback.scss +69 -0
  110. package/scss/Molecules/ImageCaption/image-caption.scss +16 -16
  111. package/scss/Molecules/SectionHeader/section-header.scss +1 -1
  112. package/scss/Utilities/FullWidth/full-width.scss +1 -1
  113. package/scss/Utilities/Loader/loader.scss +4 -4
  114. package/scss/assets/scss/_components.scss +3 -2
  115. package/scss/assets/scss/_foundational.scss +44 -26
  116. package/scss/assets/scss/_mixins.scss +34 -1
  117. package/scss/assets/scss/_theme-delta.scss +68 -0
  118. package/scss/assets/scss/_theme-irp.scss +39 -0
  119. package/scss/assets/scss/_theme-mcr.scss +56 -0
  120. package/scss/assets/scss/_theme-preventionweb.scss +37 -0
  121. package/scss/assets/scss/_utility.scss +112 -112
  122. package/scss/assets/scss/_variables.scss +358 -354
  123. package/scss/assets/scss/style-all.scss +19 -0
  124. package/scss/assets/scss/style-delta.scss +1 -1
  125. package/scss/assets/scss/style-irp.scss +1 -1
  126. package/scss/assets/scss/style-mcr.scss +1 -1
  127. package/scss/assets/scss/style-preventionweb.scss +1 -1
  128. package/css/style-irp-legacy.css +0 -476
  129. package/css/style-irp-legacy.css.map +0 -1
  130. package/css/style-legacy.css +0 -469
  131. package/css/style-legacy.css.map +0 -1
  132. package/css/style-mcr-legacy.css +0 -476
  133. package/css/style-mcr-legacy.css.map +0 -1
  134. package/css/style-preventionweb-legacy.css +0 -476
  135. package/css/style-preventionweb-legacy.css.map +0 -1
  136. package/scss/Components/Forms/_form-legacy.scss +0 -152
  137. package/scss/Components/Pagination/pagination.scss +0 -112
  138. package/scss/assets/scss/_variables-delta.scss +0 -110
  139. package/scss/assets/scss/_variables-irp.scss +0 -50
  140. package/scss/assets/scss/_variables-mcr.scss +0 -65
  141. package/scss/assets/scss/_variables-preventionweb.scss +0 -48
  142. package/scss/assets/scss/style-irp-legacy.scss +0 -20
  143. package/scss/assets/scss/style-legacy.scss +0 -20
  144. package/scss/assets/scss/style-mcr-legacy.scss +0 -20
  145. package/scss/assets/scss/style-preventionweb-legacy.scss +0 -20
@@ -5,24 +5,24 @@
5
5
 
6
6
  /* Individual Stat Item - extends mg-card base */
7
7
  .mg-stats-card-item {
8
- background-color: $mg-color-white;
9
- border: 1px solid $mg-color-neutral-200;
10
- padding: $mg-spacing-400;
8
+ background-color: rgb(var(--mg-color-white));
9
+ border: 1px solid rgb(var(--mg-color-neutral-200));
10
+ padding: var(--mg-spacing-400);
11
11
  display: flex;
12
12
  flex-direction: column;
13
13
  align-items: flex-start;
14
- gap: $mg-spacing-100;
14
+ gap: var(--mg-spacing-100);
15
15
  position: relative;
16
16
  overflow: hidden;
17
17
 
18
18
  @include devicebreak(small) {
19
- padding: $mg-spacing-300;
19
+ padding: var(--mg-spacing-300);
20
20
  }
21
21
 
22
22
  &__icon {
23
23
  font-size: $mg-font-size-600;
24
- color: $mg-color-interactive;
25
- margin-bottom: $mg-spacing-100;
24
+ color: rgb(var(--mg-color-interactive));
25
+ margin-bottom: var(--mg-spacing-100);
26
26
  line-height: 1;
27
27
 
28
28
  i {
@@ -34,7 +34,7 @@
34
34
  font-family: $mg-font-family-headings;
35
35
  font-size: $mg-font-size-200;
36
36
  font-weight: 600;
37
- color: $mg-color-tag;
37
+ color: rgb(var(--mg-color-tag));
38
38
  text-transform: uppercase;
39
39
  letter-spacing: 0.05em;
40
40
  line-height: 1.2;
@@ -48,9 +48,9 @@
48
48
  font-variant-numeric: tabular-nums lining-nums;
49
49
  font-size: $mg-font-size-900;
50
50
  font-weight: 700;
51
- color: $mg-color-interactive;
51
+ color: rgb(var(--mg-color-interactive));
52
52
  line-height: 1;
53
- margin: $mg-spacing-100 0;
53
+ margin: var(--mg-spacing-100) 0;
54
54
  overflow-wrap: break-word;
55
55
  text-decoration: none;
56
56
 
@@ -76,8 +76,7 @@
76
76
  outline: none;
77
77
 
78
78
  &::after {
79
- outline: 2px solid $mg-color-interactive;
80
- outline-offset: 2px;
79
+ @include mg-focus-ring;
81
80
  }
82
81
  }
83
82
 
@@ -85,9 +84,9 @@
85
84
  font-family: $mg-font-family-headings;
86
85
  font-size: $mg-font-size-500;
87
86
  font-weight: 600;
88
- color: $mg-color-text;
87
+ color: rgb(var(--mg-color-text));
89
88
  line-height: 1.3;
90
- margin-bottom: $mg-spacing-50;
89
+ margin-bottom: var(--mg-spacing-50);
91
90
 
92
91
  @include devicebreak(small) {
93
92
  font-size: $mg-font-size-400;
@@ -96,7 +95,7 @@
96
95
 
97
96
  &__summary {
98
97
  font-size: $mg-font-size-400;
99
- color: $mg-color-neutral-800;
98
+ color: rgb(var(--mg-color-neutral-800));
100
99
  line-height: 1.5;
101
100
 
102
101
  p {
@@ -109,7 +108,7 @@
109
108
 
110
109
  // Inline links sit above the stretched link
111
110
  a {
112
- color: $mg-color-interactive;
111
+ color: rgb(var(--mg-color-interactive));
113
112
  text-decoration: underline;
114
113
  position: relative;
115
114
  z-index: 2; // above stretched-link cover — local to stats-card stacking context
@@ -120,8 +119,7 @@
120
119
  }
121
120
 
122
121
  &:focus {
123
- outline: 2px solid $mg-color-interactive;
124
- outline-offset: 2px;
122
+ @include mg-focus-ring;
125
123
  }
126
124
  }
127
125
  }
@@ -135,10 +133,10 @@
135
133
  /* Variant: Compact */
136
134
  .mg-stats-card--compact {
137
135
  .mg-stats-card-item {
138
- padding: $mg-spacing-300;
136
+ padding: var(--mg-spacing-300);
139
137
 
140
138
  @include devicebreak(small) {
141
- padding: $mg-spacing-200;
139
+ padding: var(--mg-spacing-200);
142
140
  }
143
141
 
144
142
  &__value {
@@ -166,11 +164,11 @@
166
164
  /* Variant: Highlighted */
167
165
  .mg-stats-card--highlighted {
168
166
  .mg-stats-card-item {
169
- background-color: rgba($mg-color-interactive, 0.05);
170
- border-left: 4px solid $mg-color-interactive;
167
+ background-color: rgb(var(--mg-color-blue-900) / 0.05);
168
+ border-left: 4px solid rgb(var(--mg-color-interactive));
171
169
 
172
170
  &:hover {
173
- background-color: rgba($mg-color-interactive, 0.08);
171
+ background-color: rgb(var(--mg-color-blue-900) / 0.08);
174
172
  }
175
173
  }
176
174
  }
@@ -178,38 +176,38 @@
178
176
  /* Variant: Negative (for dark backgrounds) */
179
177
  .mg-stats-card--negative {
180
178
  h2 {
181
- color: $mg-color-white;
179
+ color: rgb(var(--mg-color-white));
182
180
  }
183
181
 
184
182
  .mg-stats-card-item {
185
183
  background-color: transparent;
186
184
  border-width: 2px;
187
- border-color: rgba($mg-color-white, 0.5);
185
+ border-color: rgb(var(--mg-color-neutral-0) / 0.5);
188
186
 
189
187
  &__icon {
190
- color: $mg-color-white;
188
+ color: rgb(var(--mg-color-white));
191
189
  }
192
190
 
193
191
  &__label {
194
- color: rgba($mg-color-white, 0.8);
192
+ color: rgb(var(--mg-color-neutral-0) / 0.8);
195
193
  }
196
194
 
197
195
  &__value {
198
- color: $mg-color-white;
196
+ color: rgb(var(--mg-color-white));
199
197
  }
200
198
 
201
199
  &__bottom-label {
202
- color: $mg-color-white;
200
+ color: rgb(var(--mg-color-white));
203
201
  }
204
202
 
205
203
  &__summary {
206
- color: rgba($mg-color-white, 0.8);
204
+ color: rgb(var(--mg-color-neutral-0) / 0.8);
207
205
 
208
206
  a {
209
- color: $mg-color-white;
207
+ color: rgb(var(--mg-color-white));
210
208
 
211
209
  &:focus {
212
- outline-color: $mg-color-white;
210
+ outline-color: rgb(var(--mg-color-white));
213
211
  }
214
212
  }
215
213
  }
@@ -217,7 +215,7 @@
217
215
 
218
216
  // Focus styles for linked cards
219
217
  .mg-stats-card-item a.mg-stats-card-item__value:focus-visible::after {
220
- outline-color: $mg-color-white;
218
+ outline-color: rgb(var(--mg-color-white));
221
219
  }
222
220
  }
223
221
 
@@ -226,7 +224,7 @@
226
224
  .mg-stats-card--highlighted {
227
225
  .mg-stats-card-item {
228
226
  border-left: none;
229
- border-right: 4px solid $mg-color-interactive;
227
+ border-right: 4px solid rgb(var(--mg-color-interactive));
230
228
  }
231
229
  }
232
230
  }
@@ -1,81 +1,82 @@
1
- // Commented out until we decide if we want to use the cascade or fork the classes
2
- // #cc-main {
3
- // // CSS Variables used by vanilla-cookieconsent
4
- // --cc-bg: #fff;
5
- // --cc-primary-color: #{$mg-color-text};
6
- // --cc-secondary-color: #{$mg-color-neutral-600};
7
- // --cc-btn-primary-bg: #{$mg-color-interactive};
8
- // --cc-btn-primary-color: #fff;
9
- // --cc-btn-primary-border-color: #{$mg-color-interactive};
10
- // --cc-btn-primary-hover-bg: #{$mg-color-interactive-active};
11
- // --cc-btn-primary-hover-color: #fff;
12
- // --cc-btn-secondary-bg: #{$mg-color-neutral-50};
13
- // --cc-btn-secondary-color: #{$mg-color-text};
14
- // --cc-btn-secondary-border-color: #{$mg-color-neutral-100};
15
- // --cc-btn-secondary-hover-bg: #{$mg-color-neutral-100};
16
- // --cc-btn-secondary-hover-color: #{$mg-color-text};
17
- // --cc-toggle-on-bg: #{$mg-color-interactive};
18
- // --cc-toggle-off-bg: #{$mg-color-neutral-400};
19
- // --cc-toggle-readonly-bg: #{$mg-color-neutral-200};
20
- // --cc-toggle-on-knob-bg: #fff;
21
- // --cc-toggle-off-knob-bg: #fff;
22
- // --cc-toggle-readonly-knob-bg: #fff;
23
- // --cc-cookie-category-block-bg: #{$mg-color-blue-50};
24
- // --cc-cookie-category-block-hover-bg: #{$mg-color-blue-100};
25
- // --cc-section-border: #{$mg-color-neutral-50};
26
- // --cc-cookie-table-border: #{$mg-color-neutral-100};
27
- // --cc-separator-border-color: #{$mg-color-neutral-100};
28
- // --cc-overlay-bg: rgb(4 6 8 / 0.85);
29
- // --cc-webkit-scrollbar-bg: #{$mg-color-neutral-200};
30
- // --cc-webkit-scrollbar-hover-bg: #{$mg-color-interactive};
31
- // --cc-font-family: #{$mg-font-family};
32
- // --cc-modal-border-radius: 0;
33
- // --cc-btn-border-radius: 0;
34
- // --cc-pm-toggle-border-radius: 4em;
1
+ // Mangrove theme bridge for the externally loaded vanilla-cookieconsent UI.
2
+ // The CDN stylesheet is appended after the local bundle and declares the same
3
+ // custom properties, so these token mappings intentionally carry importance.
4
+ #cc-main {
5
+ --cc-bg: var(--mg-surface-raised) !important;
6
+ --cc-primary-color: rgb(var(--mg-color-text)) !important;
7
+ --cc-secondary-color: rgb(var(--mg-color-neutral-600)) !important;
8
+ --cc-btn-primary-bg: rgb(var(--mg-color-interactive)) !important;
9
+ --cc-btn-primary-color: rgb(var(--mg-color-neutral-0)) !important;
10
+ --cc-btn-primary-border-color: rgb(var(--mg-color-interactive)) !important;
11
+ --cc-btn-primary-hover-bg: rgb(var(--mg-color-interactive-active)) !important;
12
+ --cc-btn-primary-hover-color: rgb(var(--mg-color-neutral-0)) !important;
13
+ --cc-btn-secondary-bg: rgb(var(--mg-color-neutral-50)) !important;
14
+ --cc-btn-secondary-color: rgb(var(--mg-color-text)) !important;
15
+ --cc-btn-secondary-border-color: rgb(var(--mg-color-neutral-200)) !important;
16
+ --cc-btn-secondary-hover-bg: rgb(var(--mg-color-neutral-100)) !important;
17
+ --cc-btn-secondary-hover-color: rgb(var(--mg-color-text)) !important;
18
+ --cc-toggle-on-bg: rgb(var(--mg-color-interactive)) !important;
19
+ --cc-toggle-off-bg: rgb(var(--mg-color-neutral-400)) !important;
20
+ --cc-toggle-readonly-bg: rgb(var(--mg-color-neutral-200)) !important;
21
+ --cc-cookie-category-block-bg: rgb(var(--mg-color-neutral-50)) !important;
22
+ --cc-cookie-category-block-hover-bg: rgb(
23
+ var(--mg-color-neutral-100)
24
+ ) !important;
25
+ --cc-section-border: rgb(var(--mg-color-neutral-200)) !important;
26
+ --cc-cookie-table-border: rgb(var(--mg-color-neutral-200)) !important;
27
+ --cc-separator-border-color: rgb(var(--mg-color-neutral-200)) !important;
28
+ --cc-overlay-bg: rgb(var(--mg-color-neutral-900) / 0.82) !important;
29
+ --cc-font-family: #{$mg-font-family} !important;
30
+ --cc-modal-border-radius: var(--mg-card-border-radius) !important;
31
+ --cc-btn-border-radius: var(--mg-radius-button) !important;
35
32
 
36
- // // Custom link styles
37
- // .cc__link,
38
- // a {
39
- // color: #{$mg-color-interactive};
40
- // text-decoration: underline;
33
+ .cc__link,
34
+ a {
35
+ color: rgb(var(--mg-color-interactive));
36
+ text-decoration: underline;
37
+ text-underline-offset: 0.16em;
41
38
 
42
- // &:hover {
43
- // color: #{$mg-color-interactive-active};
44
- // }
45
- // }
39
+ &:hover {
40
+ color: rgb(var(--mg-color-interactive-active));
41
+ }
42
+ }
46
43
 
47
- // // Bottom bar consent modal customization
48
- // #cm.bar {
49
- // border-top: 1px solid #{$mg-color-neutral-100};
50
- // box-shadow: 0 -2px 10px rgb(0 0 0 / 0.1);
44
+ .c-bn,
45
+ .cm__btn,
46
+ .pm__btn {
47
+ font-family: $mg-font-family;
48
+ font-weight: 600;
51
49
 
52
- // .c-bn {
53
- // font-weight: 500;
54
- // }
55
- // }
50
+ @media (prefers-reduced-motion: no-preference) {
51
+ transition:
52
+ background-color var(--mg-motion-duration-fast)
53
+ var(--mg-motion-easing-standard),
54
+ border-color var(--mg-motion-duration-fast)
55
+ var(--mg-motion-easing-standard),
56
+ color var(--mg-motion-duration-fast) var(--mg-motion-easing-standard),
57
+ scale var(--mg-motion-duration-fast) var(--mg-motion-easing-standard);
58
+ }
56
59
 
57
- // // Preferences modal customization
58
- // #s-cnt {
59
- // .b-bn {
60
- // font-weight: 500;
61
- // }
60
+ &:active {
61
+ scale: 0.96;
62
+ }
62
63
 
63
- // .pm__badge {
64
- // padding: #{$mg-spacing-25} #{$mg-spacing-50};
65
- // background: #{$mg-color-interactive};
66
- // color: #fff;
67
- // font-size: 0.8rem;
68
- // border-radius: 2px;
69
- // margin-left: #{$mg-spacing-50};
70
- // }
71
- // }
64
+ &:focus-visible {
65
+ @include mg-focus-ring;
66
+ }
67
+ }
72
68
 
73
- // // Toggle switches
74
- // .c-tgl {
75
- // &:checked {
76
- // + .c-tgl-btn {
77
- // background-color: var(--cc-toggle-on-bg);
78
- // }
79
- // }
80
- // }
81
- // }
69
+ #cm.bar,
70
+ .cm--bar {
71
+ border-block-start: 1px solid rgb(var(--mg-color-neutral-600) / 0.2);
72
+ box-shadow: 0 -8px 24px rgb(var(--mg-color-neutral-900) / 0.08);
73
+ }
74
+ }
75
+
76
+ :lang(ar) #cc-main {
77
+ .c-bn,
78
+ .cm__btn,
79
+ .pm__btn {
80
+ font-family: $mg-font-family-arabic-body;
81
+ }
82
+ }
@@ -1,11 +1,11 @@
1
1
  .mg-error-page {
2
2
  min-height: 100vh;
3
- background-color: $mg-color-blue-900;
4
- color: $mg-color-text;
3
+ background-color: rgb(var(--mg-color-blue-900));
4
+ color: rgb(var(--mg-color-text));
5
5
  padding-bottom: mg-rem(20);
6
6
 
7
7
  h1 {
8
- color: $mg-color-blue-900;
8
+ color: rgb(var(--mg-color-blue-900));
9
9
  font-size: mg-rem(14);
10
10
  padding: 0;
11
11
  margin: 0;
@@ -18,13 +18,13 @@
18
18
  align-items: center;
19
19
 
20
20
  input[type="search"] {
21
- border: 1px solid $mg-color-neutral-100;
21
+ border: 1px solid rgb(var(--mg-color-neutral-100));
22
22
  max-width: 300px;
23
23
  }
24
24
  }
25
25
 
26
26
  &__container {
27
- background: $mg-color-neutral-0;
27
+ background: rgb(var(--mg-color-neutral-0));
28
28
  padding: mg-rem(20) mg-rem(15) mg-rem(10);
29
29
  max-width: 900px;
30
30
  margin: mg-rem(20) auto;
@@ -40,15 +40,15 @@
40
40
  }
41
41
 
42
42
  &--challenge {
43
- background-color: $mg-color-neutral-25;
43
+ background-color: rgb(var(--mg-color-neutral-25));
44
44
 
45
45
  .mg-error-page__container {
46
46
  text-align: center;
47
47
  padding: mg-rem(30) mg-rem(25) mg-rem(20);
48
48
  margin-top: mg-rem(40);
49
49
  max-width: 540px;
50
- border-radius: 8px;
51
- box-shadow: 0 2px 12px rgb(0 0 0 / 0.08);
50
+ border-radius: var(--mg-card-border-radius);
51
+ box-shadow: var(--mg-card-shadow);
52
52
  }
53
53
 
54
54
  .undrr-logo {
@@ -61,7 +61,7 @@
61
61
  h1 {
62
62
  font-size: mg-rem(23);
63
63
  font-weight: 600;
64
- color: $mg-color-text;
64
+ color: rgb(var(--mg-color-text));
65
65
  margin: 0 0 mg-rem(5);
66
66
  }
67
67
  }
@@ -4,13 +4,13 @@
4
4
 
5
5
  .mg-footer--about-footer {
6
6
  text-wrap: balance;
7
- color: $mg-color-white;
8
- padding-bottom: $mg-spacing-200;
9
- padding-top: $mg-spacing-200;
7
+ color: rgb(var(--mg-color-white));
8
+ padding-bottom: var(--mg-spacing-200);
9
+ padding-top: var(--mg-spacing-200);
10
10
 
11
11
  a,
12
12
  a:hover {
13
- color: $mg-color-white;
13
+ color: rgb(var(--mg-color-white));
14
14
  }
15
15
 
16
16
  .container {
@@ -40,26 +40,26 @@
40
40
  // Utility footer bar — secondary navigation below the main footer
41
41
  // Used by sub-branded sites (e.g. DELTA) for product-level links
42
42
  .mg-footer-bar {
43
- border-top: 1px solid $mg-color-neutral-200;
44
- padding: $mg-spacing-150 0;
43
+ border-top: 1px solid rgb(var(--mg-color-neutral-200));
44
+ padding: var(--mg-spacing-150) 0;
45
45
  font-size: $mg-font-size-300;
46
- color: $mg-color-neutral-600;
46
+ color: rgb(var(--mg-color-neutral-600));
47
47
 
48
48
  &__row {
49
49
  display: flex;
50
50
  flex-wrap: wrap;
51
51
  justify-content: space-between;
52
52
  align-items: center;
53
- gap: $mg-spacing-100;
53
+ gap: var(--mg-spacing-100);
54
54
  }
55
55
 
56
56
  &__links {
57
57
  display: flex;
58
58
  flex-wrap: wrap;
59
- gap: $mg-spacing-50 $mg-spacing-200;
59
+ gap: var(--mg-spacing-50) var(--mg-spacing-200);
60
60
 
61
61
  a {
62
- color: $mg-color-interactive;
62
+ color: rgb(var(--mg-color-interactive));
63
63
  }
64
64
  }
65
65
 
@@ -70,8 +70,8 @@
70
70
 
71
71
  &__divider {
72
72
  border: 0;
73
- border-top: 1px solid $mg-color-neutral-200;
74
- margin: $mg-spacing-100 0;
73
+ border-top: 1px solid rgb(var(--mg-color-neutral-200));
74
+ margin: var(--mg-spacing-100) 0;
75
75
  }
76
76
  }
77
77
 
@@ -0,0 +1,50 @@
1
+ .mg-form-action {
2
+ align-items: stretch;
3
+ display: flex;
4
+ margin-top: var(--mg-spacing-25);
5
+ max-width: 100%;
6
+
7
+ &__control {
8
+ border-end-end-radius: 0;
9
+ border-start-end-radius: 0;
10
+ flex: 1 1 auto;
11
+ margin-top: 0;
12
+ min-width: 0;
13
+ }
14
+
15
+ > .mg-button.mg-form-action__action,
16
+ &__action {
17
+ align-self: stretch;
18
+ border-end-start-radius: 0;
19
+ border-start-start-radius: 0;
20
+ flex: 0 0 auto;
21
+ margin-inline-start: -1px;
22
+ min-height: mg-rem(46);
23
+ position: relative;
24
+ }
25
+
26
+ &__control:focus-visible,
27
+ &__action:focus-visible {
28
+ z-index: 1;
29
+ }
30
+
31
+ &--stack-mobile {
32
+ @media (width <= $mg-breakpoint-mobile) {
33
+ flex-direction: column;
34
+ gap: var(--mg-spacing-50);
35
+
36
+ .mg-form-action__control {
37
+ border-radius: var(--mg-radius-form-input);
38
+ margin-inline-start: 0;
39
+ width: 100%;
40
+ }
41
+
42
+ > .mg-button.mg-form-action__action,
43
+ .mg-form-action__action {
44
+ border-radius: var(--mg-radius-button);
45
+ margin-inline-start: 0;
46
+ width: 100%;
47
+ }
48
+ }
49
+ }
50
+ }
@@ -1,24 +1,35 @@
1
1
  // FormGroup — styled fieldset/legend for grouping related form controls.
2
2
 
3
3
  .mg-form-group {
4
- border: 0;
5
- margin: 0;
4
+ background: rgb(var(--mg-color-neutral-50) / 0.65);
5
+ border: 1px solid rgb(var(--mg-color-neutral-600) / 0.18);
6
+ border-radius: var(--mg-radius-form-input);
7
+ margin: 0 0 var(--mg-spacing-100);
6
8
  min-width: 0;
7
- padding: 0;
9
+ padding: var(--mg-spacing-100);
8
10
 
9
11
  &__legend {
10
12
  @extend %paragraph-font-300;
11
13
 
12
14
  display: block;
13
- margin-bottom: $mg-spacing-50;
14
- padding: 0;
15
+ margin-bottom: var(--mg-spacing-25);
16
+ padding: 0 var(--mg-spacing-25);
15
17
  }
16
18
 
17
19
  &--disabled &__legend {
18
- color: $mg-color-neutral-400;
20
+ color: rgb(var(--mg-color-neutral-400));
21
+ }
22
+
23
+ &--disabled {
24
+ background: rgb(var(--mg-color-neutral-50) / 0.35);
25
+ border-color: rgb(var(--mg-color-neutral-400) / 0.35);
19
26
  }
20
27
 
21
28
  &--error &__legend {
22
- color: $mg-color-red-900;
29
+ color: rgb(var(--mg-color-red-900));
30
+ }
31
+
32
+ &--error {
33
+ border-color: rgb(var(--mg-color-red-900));
23
34
  }
24
35
  }
@@ -4,7 +4,7 @@
4
4
  [dir="rtl"] {
5
5
  .mg-form-select {
6
6
  background-position: left mg-rem(6.25) center;
7
- padding-left: $mg-spacing-200;
7
+ padding-left: var(--mg-spacing-200);
8
8
  padding-right: mg-rem(6.25);
9
9
  }
10
10
  }
@@ -2,7 +2,7 @@
2
2
  // Shared form styles live in _form-base.scss.
3
3
 
4
4
  .mg-form-input[type="date"] {
5
- color: $mg-color-neutral-500;
5
+ color: rgb(var(--mg-color-neutral-500));
6
6
 
7
7
  &::-webkit-calendar-picker-indicator {
8
8
  appearance: none;