@sc-360-v2/storefront-cms-library 0.5.58 → 0.5.60

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 (211) hide show
  1. package/dist/add-existing-form.scss +13 -5
  2. package/dist/add-order.scss +141 -210
  3. package/dist/add-products-tab-details.scss +1121 -1920
  4. package/dist/add-products-tab-uom-details.scss +105 -0
  5. package/dist/add-products-tab.scss +682 -994
  6. package/dist/allocation-header-quota-details.scss +198 -327
  7. package/dist/allocationDetails.scss +1645 -2022
  8. package/dist/allocations-quota-details.scss +168 -261
  9. package/dist/allocations.scss +504 -715
  10. package/dist/amount-estimator.scss +414 -648
  11. package/dist/animation-control.scss +23 -23
  12. package/dist/badge.scss +55 -18
  13. package/dist/brand-basic-elements.scss +93 -124
  14. package/dist/brand.scss +28 -55
  15. package/dist/breadcrumbs.scss +372 -718
  16. package/dist/builder.js +1 -1
  17. package/dist/bulk-variant-picker.scss +1161 -1816
  18. package/dist/bundle copy.scss +235 -0
  19. package/dist/bundle.scss +2142 -2584
  20. package/dist/bundleDetails.scss +3808 -4802
  21. package/dist/button copy.scss +28 -0
  22. package/dist/button.scss +89 -102
  23. package/dist/buy-for-tab-container.scss +77 -106
  24. package/dist/buy-for-tab.scss +54 -0
  25. package/dist/buy-for-tabs-container-item.scss +80 -80
  26. package/dist/buyForHeaders.scss +1823 -2457
  27. package/dist/cart-details.scss +514 -718
  28. package/dist/cart-products-sidebar.scss +211 -211
  29. package/dist/cart-summary.scss +611 -1015
  30. package/dist/cart-wrapper.scss +85 -127
  31. package/dist/cart.scss +119 -211
  32. package/dist/cartAttributes.scss +377 -539
  33. package/dist/cartDropdownOverlay.scss +21 -0
  34. package/dist/cartGrouping.scss +89 -89
  35. package/dist/category-groups-element.scss +130 -96
  36. package/dist/category-groups-product-grid.scss +40 -79
  37. package/dist/category-groups-product-image.scss +457 -1306
  38. package/dist/category-groups-product-options.scss +224 -606
  39. package/dist/category-groups-product-price.scss +1366 -4199
  40. package/dist/category-groups-quota-details.scss +217 -382
  41. package/dist/category.scss +26 -50
  42. package/dist/categoryDetails.scss +61 -61
  43. package/dist/categoryWidget.scss +34 -34
  44. package/dist/checkbox-radio.scss +124 -124
  45. package/dist/checkout.scss +1915 -3309
  46. package/dist/common-element.scss +35 -35
  47. package/dist/confirm-modal.scss +22 -2
  48. package/dist/confirmationModal.scss +139 -139
  49. package/dist/container.scss +32 -54
  50. package/dist/countdown.scss +264 -371
  51. package/dist/coupon.scss +379 -600
  52. package/dist/custom-fonts.scss +100 -100
  53. package/dist/default-dropdown.scss +12 -1
  54. package/dist/embroider-preview-element.scss +94 -94
  55. package/dist/embroider-template-1-v2.scss +157 -172
  56. package/dist/embroider-template-1.scss +465 -482
  57. package/dist/embroidery.scss +37 -31
  58. package/dist/employee-bulk-order.scss +418 -142
  59. package/dist/emtpy-templates.scss +165 -165
  60. package/dist/faq.scss +239 -395
  61. package/dist/filter-results.scss +221 -323
  62. package/dist/filters.scss +843 -1406
  63. package/dist/flex-text-editor.scss +271 -271
  64. package/dist/functions.scss +36 -0
  65. package/dist/gallery-slider-temp.scss +428 -727
  66. package/dist/global-styles.scss +45 -6
  67. package/dist/grid.scss +25 -33
  68. package/dist/hotspot.scss +75 -115
  69. package/dist/icon-list.scss +33 -59
  70. package/dist/image-for-product.scss +21 -21
  71. package/dist/image-temp.scss +21 -20
  72. package/dist/item-stock.scss +15 -16
  73. package/dist/kitDetails.scss +2786 -4008
  74. package/dist/kits.scss +28 -19
  75. package/dist/language-selector.scss +241 -375
  76. package/dist/last-x-orders.scss +101 -163
  77. package/dist/layouter-item.scss +75 -103
  78. package/dist/layouter-pro-item.scss +89 -95
  79. package/dist/layouter-pro.scss +87 -92
  80. package/dist/layouter.scss +67 -117
  81. package/dist/light-box-v2.scss +89 -104
  82. package/dist/lightbox.scss +78 -78
  83. package/dist/line.scss +29 -70
  84. package/dist/loader.scss +37 -37
  85. package/dist/login.scss +316 -489
  86. package/dist/map.scss +233 -336
  87. package/dist/marchandiserSets.scss +95 -104
  88. package/dist/mega-menu-container.scss +96 -109
  89. package/dist/mega-menu.scss +627 -670
  90. package/dist/menu-item.scss +19 -19
  91. package/dist/menu-v2.scss +538 -528
  92. package/dist/menu.scss +12 -0
  93. package/dist/multi-select-dropdown.scss +27 -3
  94. package/dist/my-templates.scss +41 -9
  95. package/dist/myTemplates.scss +3 -0
  96. package/dist/option-bar.scss +229 -351
  97. package/dist/order-processing.scss +61 -61
  98. package/dist/order-status.scss +666 -1096
  99. package/dist/overflow-module.scss +62 -63
  100. package/dist/past-orders.scss +168 -149
  101. package/dist/payment-methods.scss +323 -289
  102. package/dist/pickup-locations.scss +568 -941
  103. package/dist/position-module.scss +98 -95
  104. package/dist/prefix-list.scss +97 -86
  105. package/dist/product-actions.scss +1262 -1620
  106. package/dist/product-basic-elements.scss +116 -169
  107. package/dist/product-customizations.scss +155 -149
  108. package/dist/product-highlights.scss +116 -145
  109. package/dist/product-image-allocation.scss +38 -0
  110. package/dist/product-image-bundles.scss +359 -638
  111. package/dist/product-image.scss +341 -676
  112. package/dist/product-inventory.scss +673 -1117
  113. package/dist/product-labels.scss +94 -101
  114. package/dist/product-options.scss +298 -438
  115. package/dist/product-price.scss +1325 -2182
  116. package/dist/product-promotions.scss +1388 -2374
  117. package/dist/product-sizechart.scss +523 -821
  118. package/dist/product.scss +28 -61
  119. package/dist/productDetails.scss +19 -38
  120. package/dist/profile.scss +242 -406
  121. package/dist/quantity-selector.scss +327 -502
  122. package/dist/quick-inventory-check.scss +101 -163
  123. package/dist/quick-links.scss +72 -133
  124. package/dist/quick-order-pad.scss +224 -206
  125. package/dist/quota-details.scss +163 -297
  126. package/dist/quotes.scss +727 -737
  127. package/dist/repeater copy.scss +24 -0
  128. package/dist/repeater-embla-controls.scss +34 -14
  129. package/dist/repeater-grid-toggle.scss +156 -166
  130. package/dist/repeater-item.scss +41 -64
  131. package/dist/repeater.scss +579 -669
  132. package/dist/request-for-quotes.scss +66 -16
  133. package/dist/responsive-behaviour.scss +31 -29
  134. package/dist/rfqs.scss +147 -181
  135. package/dist/scroll.scss +93 -167
  136. package/dist/search-results-heading.scss +36 -0
  137. package/dist/search.scss +186 -290
  138. package/dist/section.scss +27 -51
  139. package/dist/shareCartSideBar.scss +254 -254
  140. package/dist/shipping-estimator.scss +41 -41
  141. package/dist/shipping-payments.scss +246 -58
  142. package/dist/simple-list.scss +65 -123
  143. package/dist/social.scss +78 -131
  144. package/dist/sort.scss +89 -89
  145. package/dist/spotlight.scss +48 -0
  146. package/dist/stack.scss +23 -34
  147. package/dist/static-global.scss +44 -26
  148. package/dist/static-text.scss +52 -52
  149. package/dist/stockStatus.scss +14 -19
  150. package/dist/store-locations.scss +595 -933
  151. package/dist/sub-category.scss +74 -74
  152. package/dist/submit-quote.scss +275 -275
  153. package/dist/tab-container-item.scss +80 -80
  154. package/dist/tab-container.scss +81 -108
  155. package/dist/tab-v2.scss +277 -580
  156. package/dist/table-common.scss +218 -331
  157. package/dist/table.scss +273 -434
  158. package/dist/tabs.scss +440 -395
  159. package/dist/text-temp-v2.scss +12 -23
  160. package/dist/text-temp.scss +110 -109
  161. package/dist/theme-classes.scss +66 -13
  162. package/dist/toaster.scss +392 -350
  163. package/dist/toggle-button.scss +32 -32
  164. package/dist/transform-properties-module.scss +20 -20
  165. package/dist/types/builder/tools/element-edit/addProductsTab.d.ts +108 -0
  166. package/dist/types/builder/tools/element-edit/breadcrumbs.d.ts +6 -0
  167. package/dist/types/builder/tools/element-edit/bundle.d.ts +22 -0
  168. package/dist/types/builder/tools/element-edit/bundleDetails.d.ts +64 -0
  169. package/dist/types/builder/tools/element-edit/buttonInstance.d.ts +10 -0
  170. package/dist/types/builder/tools/element-edit/buyForWithTab.d.ts +84 -0
  171. package/dist/types/builder/tools/element-edit/cart.d.ts +6 -0
  172. package/dist/types/builder/tools/element-edit/cartAttributes.d.ts +60 -0
  173. package/dist/types/builder/tools/element-edit/cartDetails.d.ts +16 -0
  174. package/dist/types/builder/tools/element-edit/cartSummary.d.ts +202 -0
  175. package/dist/types/builder/tools/element-edit/categoryGroups.d.ts +158 -0
  176. package/dist/types/builder/tools/element-edit/checkout.d.ts +172 -0
  177. package/dist/types/builder/tools/element-edit/common.d.ts +2 -0
  178. package/dist/types/builder/tools/element-edit/countdown.d.ts +44 -0
  179. package/dist/types/builder/tools/element-edit/coupon.d.ts +28 -0
  180. package/dist/types/builder/tools/element-edit/embroidery.d.ts +37 -0
  181. package/dist/types/builder/tools/element-edit/filterResults.d.ts +4 -0
  182. package/dist/types/builder/tools/element-edit/icon-list.d.ts +11 -0
  183. package/dist/types/builder/tools/element-edit/itemStock.d.ts +2 -0
  184. package/dist/types/builder/tools/element-edit/kitDetails.d.ts +66 -0
  185. package/dist/types/builder/tools/element-edit/kits.d.ts +4 -0
  186. package/dist/types/builder/tools/element-edit/map.d.ts +5 -1
  187. package/dist/types/builder/tools/element-edit/marchandiserSets.d.ts +2 -0
  188. package/dist/types/builder/tools/element-edit/orderStatus.d.ts +17 -0
  189. package/dist/types/builder/tools/element-edit/paymentMethods.d.ts +6 -0
  190. package/dist/types/builder/tools/element-edit/productCustomizations.d.ts +14 -0
  191. package/dist/types/builder/tools/element-edit/quickLinks.d.ts +26 -0
  192. package/dist/types/builder/tools/element-edit/scroll.d.ts +2 -11
  193. package/dist/types/builder/tools/element-edit/search.d.ts +1 -0
  194. package/dist/types/builder/tools/element-edit/searchResultsHeading.d.ts +6 -0
  195. package/dist/types/builder/tools/element-edit/shipping-payments.d.ts +72 -0
  196. package/dist/types/builder/tools/element-edit/shippingEstimator.d.ts +4 -0
  197. package/dist/types/builder/tools/element-edit/social.d.ts +2 -0
  198. package/dist/types/builder/tools/element-edit/spotlight.d.ts +2 -0
  199. package/dist/types/builder/tools/element-edit/table.d.ts +10 -0
  200. package/dist/types/builder/tools/element-edit/tabs.d.ts +6 -0
  201. package/dist/types/builder/tools/element-edit/typographyInstance.d.ts +110 -0
  202. package/dist/types/builder/tools/element-edit/userElements.d.ts +50 -11
  203. package/dist/types/builder/tools/element-edit/variantPicker.d.ts +4 -0
  204. package/dist/types/builder/tools/element-edit/video.d.ts +22 -0
  205. package/dist/uom-selector.scss +499 -841
  206. package/dist/user-elements.scss +653 -774
  207. package/dist/variant-picker.scss +1298 -2358
  208. package/dist/video.scss +147 -325
  209. package/dist/volume-pricing.scss +545 -849
  210. package/dist/wishlist-overlay.scss +48 -48
  211. package/package.json +131 -131
@@ -77,11 +77,8 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
77
77
  border-style: prepareMediaVariable(#{$base}-br-se, solid);
78
78
  border-width: prepareMediaVariable(#{$base}-br-wh, 0);
79
79
  border-radius: prepareMediaVariable(#{$base}-br-rs, 0);
80
- box-shadow: var(
81
- --_show-shadow,
82
- prepareMediaVariable(#{$base}-sw-ae, 0 0) prepareMediaVariable(#{$base}-sw-br, 0)
83
- prepareMediaVariable(#{$base}-sw-sd, 0) prepareMediaVariable(#{$base}-sw-cr, transparent)
84
- );
80
+ box-shadow: var(--_show-shadow,
81
+ prepareMediaVariable(#{$base}-sw-ae, 0 0) prepareMediaVariable(#{$base}-sw-br, 0) prepareMediaVariable(#{$base}-sw-sd, 0) prepareMediaVariable(#{$base}-sw-cr, transparent));
85
82
  }
86
83
 
87
84
  // The icon a Brand / Code block can carry in front of its value. Sized and coloured
@@ -104,6 +101,7 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
104
101
  [stroke]:not([stroke="none"]) {
105
102
  stroke: prepareMediaVariable(#{$base}-in-c1, currentColor);
106
103
  }
104
+
107
105
  &[fill]:not([fill="none"]),
108
106
  [fill]:not([fill="none"]) {
109
107
  fill: prepareMediaVariable(#{$base}-in-c1, currentColor);
@@ -123,61 +121,36 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
123
121
  border-style: prepareMediaVariable(#{$base}-br-se, solid);
124
122
  border-width: prepareMediaVariable(#{$base}-br-wh, 0);
125
123
  border-radius: prepareMediaVariable(#{$base}-br-rs, 4px);
126
- box-shadow: prepareMediaVariable(#{$base}-sw-ae, 0 0) prepareMediaVariable(#{$base}-sw-br, 0)
127
- prepareMediaVariable(#{$base}-sw-sd, 0) prepareMediaVariable(#{$base}-sw-cr, transparent);
124
+ box-shadow: prepareMediaVariable(#{$base}-sw-ae, 0 0) prepareMediaVariable(#{$base}-sw-br, 0) prepareMediaVariable(#{$base}-sw-sd, 0) prepareMediaVariable(#{$base}-sw-cr, transparent);
128
125
  }
129
126
 
130
127
  // Interactive states ($state = "hr-se" | "sd-se") fall back to the DEFAULT
131
128
  // state, so editing the default cascades to hover and selected.
132
129
  @mixin ad-font-state($base, $state, $color, $size, $weight: 600) {
133
- color: prepareMediaVariable(
134
- #{$base}-#{$state}-cr,
135
- prepareMediaVariable(#{$base}-dt-se-cr, $color)
136
- );
137
- font-family: prepareMediaVariable(
138
- #{$base}-#{$state}-ft-fy,
139
- prepareMediaVariable(#{$base}-dt-se-ft-fy, ("Inter", sans-serif))
140
- );
141
- font-size: prepareMediaVariable(
142
- #{$base}-#{$state}-ft-se,
143
- prepareMediaVariable(#{$base}-dt-se-ft-se, $size)
144
- );
145
- font-weight: prepareMediaVariable(
146
- #{$base}-#{$state}-ft-wt,
147
- prepareMediaVariable(#{$base}-dt-se-ft-wt, $weight)
148
- );
149
- font-style: prepareMediaVariable(
150
- #{$base}-#{$state}-ft-se-ic,
151
- prepareMediaVariable(#{$base}-dt-se-ft-se-ic)
152
- );
153
- text-align: prepareMediaVariable(
154
- #{$base}-#{$state}-tt-an,
155
- prepareMediaVariable(#{$base}-dt-se-tt-an)
156
- );
157
- letter-spacing: prepareMediaVariable(
158
- #{$base}-#{$state}-lr-sg,
159
- prepareMediaVariable(#{$base}-dt-se-lr-sg)
160
- );
161
- line-height: prepareMediaVariable(
162
- #{$base}-#{$state}-le-ht,
163
- prepareMediaVariable(#{$base}-dt-se-le-ht)
164
- );
165
- text-decoration: prepareMediaVariable(
166
- #{$base}-#{$state}-ue,
167
- prepareMediaVariable(#{$base}-dt-se-ue)
168
- );
169
- text-transform: prepareMediaVariable(
170
- #{$base}-#{$state}-tt-tm,
171
- prepareMediaVariable(#{$base}-dt-se-tt-tm, none)
172
- );
173
- word-wrap: prepareMediaVariable(
174
- #{$base}-#{$state}-wd-wp,
175
- prepareMediaVariable(#{$base}-dt-se-wd-wp, normal)
176
- );
177
- word-break: prepareMediaVariable(
178
- #{$base}-#{$state}-wd-bk,
179
- prepareMediaVariable(#{$base}-dt-se-wd-bk, normal)
180
- );
130
+ color: prepareMediaVariable(#{$base}-#{$state}-cr,
131
+ prepareMediaVariable(#{$base}-dt-se-cr, $color));
132
+ font-family: prepareMediaVariable(#{$base}-#{$state}-ft-fy,
133
+ prepareMediaVariable(#{$base}-dt-se-ft-fy, ("Inter", sans-serif)));
134
+ font-size: prepareMediaVariable(#{$base}-#{$state}-ft-se,
135
+ prepareMediaVariable(#{$base}-dt-se-ft-se, $size));
136
+ font-weight: prepareMediaVariable(#{$base}-#{$state}-ft-wt,
137
+ prepareMediaVariable(#{$base}-dt-se-ft-wt, $weight));
138
+ font-style: prepareMediaVariable(#{$base}-#{$state}-ft-se-ic,
139
+ prepareMediaVariable(#{$base}-dt-se-ft-se-ic));
140
+ text-align: prepareMediaVariable(#{$base}-#{$state}-tt-an,
141
+ prepareMediaVariable(#{$base}-dt-se-tt-an));
142
+ letter-spacing: prepareMediaVariable(#{$base}-#{$state}-lr-sg,
143
+ prepareMediaVariable(#{$base}-dt-se-lr-sg));
144
+ line-height: prepareMediaVariable(#{$base}-#{$state}-le-ht,
145
+ prepareMediaVariable(#{$base}-dt-se-le-ht));
146
+ text-decoration: prepareMediaVariable(#{$base}-#{$state}-ue,
147
+ prepareMediaVariable(#{$base}-dt-se-ue));
148
+ text-transform: prepareMediaVariable(#{$base}-#{$state}-tt-tm,
149
+ prepareMediaVariable(#{$base}-dt-se-tt-tm, none));
150
+ word-wrap: prepareMediaVariable(#{$base}-#{$state}-wd-wp,
151
+ prepareMediaVariable(#{$base}-dt-se-wd-wp, normal));
152
+ word-break: prepareMediaVariable(#{$base}-#{$state}-wd-bk,
153
+ prepareMediaVariable(#{$base}-dt-se-wd-bk, normal));
181
154
  }
182
155
 
183
156
  // Padding, and the icon-to-label gap on the profile row, per interaction state.
@@ -185,15 +158,12 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
185
158
  // profile row has an item gap — the allocation row is a lone label with nothing to
186
159
  // space, so $gap is left out there rather than emitting a gap it never uses.
187
160
  @mixin ad-layout-state($base, $state, $padding, $gap: null) {
188
- padding: prepareMediaVariable(
189
- #{$base}-#{$state}-pg,
190
- prepareMediaVariable(#{$base}-dt-se-pg, $padding)
191
- );
192
- @if $gap != null {
193
- gap: prepareMediaVariable(
194
- #{$base}-#{$state}-im-gp,
195
- prepareMediaVariable(#{$base}-dt-se-im-gp, $gap)
196
- );
161
+ padding: prepareMediaVariable(#{$base}-#{$state}-pg,
162
+ prepareMediaVariable(#{$base}-dt-se-pg, $padding));
163
+
164
+ @if $gap !=null {
165
+ gap: prepareMediaVariable(#{$base}-#{$state}-im-gp,
166
+ prepareMediaVariable(#{$base}-dt-se-im-gp, $gap));
197
167
  }
198
168
  }
199
169
 
@@ -208,14 +178,12 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
208
178
  @function ad-tree-icon-var($state, $key, $fallback) {
209
179
  $legacy: prepareMediaVariable(#{$ad-tree-icon}-#{$key}, $fallback);
210
180
 
211
- @if $state == "dt-se" {
181
+ @if $state =="dt-se" {
212
182
  @return prepareMediaVariable(#{$ad-tree-icon}-dt-se-#{$key}, $legacy);
213
183
  }
214
184
 
215
- @return prepareMediaVariable(
216
- #{$ad-tree-icon}-#{$state}-#{$key},
217
- prepareMediaVariable(#{$ad-tree-icon}-dt-se-#{$key}, $legacy)
218
- );
185
+ @return prepareMediaVariable(#{$ad-tree-icon}-#{$state}-#{$key},
186
+ prepareMediaVariable(#{$ad-tree-icon}-dt-se-#{$key}, $legacy));
219
187
  }
220
188
 
221
189
  // Size + colour of the tree icon for one state. The colour is applied to the
@@ -235,6 +203,7 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
235
203
  [stroke]:not([stroke="none"]) {
236
204
  stroke: $color;
237
205
  }
206
+
238
207
  &[fill]:not([fill="none"]),
239
208
  [fill]:not([fill="none"]) {
240
209
  fill: $color;
@@ -243,71 +212,54 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
243
212
  }
244
213
 
245
214
  @mixin ad-design-state($base, $state) {
246
- background-color: prepareMediaVariable(
247
- #{$base}-#{$state}-bd-cr,
248
- prepareMediaVariable(#{$base}-dt-se-bd-cr, transparent)
249
- );
250
- border-color: prepareMediaVariable(
251
- #{$base}-#{$state}-br-cr,
252
- prepareMediaVariable(#{$base}-dt-se-br-cr, transparent)
253
- );
254
- border-style: prepareMediaVariable(
255
- #{$base}-#{$state}-br-se,
256
- prepareMediaVariable(#{$base}-dt-se-br-se, solid)
257
- );
258
- border-width: prepareMediaVariable(
259
- #{$base}-#{$state}-br-wh,
260
- prepareMediaVariable(#{$base}-dt-se-br-wh, 0)
261
- );
262
- border-radius: prepareMediaVariable(
263
- #{$base}-#{$state}-br-rs,
264
- prepareMediaVariable(#{$base}-dt-se-br-rs, 4px)
265
- );
266
- box-shadow: prepareMediaVariable(
267
- #{$base}-#{$state}-sw-ae,
268
- prepareMediaVariable(#{$base}-dt-se-sw-ae, 0 0)
269
- )
270
- prepareMediaVariable(#{$base}-#{$state}-sw-br, prepareMediaVariable(#{$base}-dt-se-sw-br, 0))
271
- prepareMediaVariable(#{$base}-#{$state}-sw-sd, prepareMediaVariable(#{$base}-dt-se-sw-sd, 0))
272
- prepareMediaVariable(
273
- #{$base}-#{$state}-sw-cr,
274
- prepareMediaVariable(#{$base}-dt-se-sw-cr, transparent)
275
- );
215
+ background-color: prepareMediaVariable(#{$base}-#{$state}-bd-cr,
216
+ prepareMediaVariable(#{$base}-dt-se-bd-cr, transparent));
217
+ border-color: prepareMediaVariable(#{$base}-#{$state}-br-cr,
218
+ prepareMediaVariable(#{$base}-dt-se-br-cr, transparent));
219
+ border-style: prepareMediaVariable(#{$base}-#{$state}-br-se,
220
+ prepareMediaVariable(#{$base}-dt-se-br-se, solid));
221
+ border-width: prepareMediaVariable(#{$base}-#{$state}-br-wh,
222
+ prepareMediaVariable(#{$base}-dt-se-br-wh, 0));
223
+ border-radius: prepareMediaVariable(#{$base}-#{$state}-br-rs,
224
+ prepareMediaVariable(#{$base}-dt-se-br-rs, 4px));
225
+ box-shadow: prepareMediaVariable(#{$base}-#{$state}-sw-ae,
226
+ prepareMediaVariable(#{$base}-dt-se-sw-ae, 0 0)) prepareMediaVariable(#{$base}-#{$state}-sw-br, prepareMediaVariable(#{$base}-dt-se-sw-br, 0)) prepareMediaVariable(#{$base}-#{$state}-sw-sd, prepareMediaVariable(#{$base}-dt-se-sw-sd, 0)) prepareMediaVariable(#{$base}-#{$state}-sw-cr,
227
+ prepareMediaVariable(#{$base}-dt-se-sw-cr, transparent));
276
228
  }
277
229
 
278
230
  [data-div-type="element"] {
279
231
  &[data-element-type="allocationDetails"] {
280
232
  // width: var(--_sf-el-wh-st-mx, calc(1% * var(--_ctm-ele-nw-wh-vl, var(--_sf-nw-wh))));
281
233
  @include prepareMediaQueries($defaultValues);
282
- width: var(
283
- --_sf-el-wh-st-mx,
284
- calc(
285
- 1% * var(--_ctm-mob-ele-nw-wh-vl, var(--_ctm-tab-ele-nw-wh-vl, var(--_ctm-ele-nw-wh-vl)))
286
- )
287
- );
234
+ width: var(--_sf-el-wh-st-mx,
235
+ calc(1% * var(--_ctm-mob-ele-nw-wh-vl, var(--_ctm-tab-ele-nw-wh-vl, var(--_ctm-ele-nw-wh-vl)))));
288
236
 
289
237
  margin: var(--_ctm-lt-mn, --_tst-lt-mn);
290
238
 
291
- & > div {
239
+ &>div {
292
240
  &.wrapper {
293
241
  width: 100%;
294
242
  }
295
243
  }
244
+
296
245
  .allocation_details_sklts {
297
246
  display: flex;
298
247
  gap: 24px;
299
248
  width: 100%;
249
+
300
250
  .allocation_details_sklts_item {
301
251
  display: flex;
302
252
  flex-direction: column;
303
253
  width: 100%;
304
254
  gap: 12px;
255
+
305
256
  .allocation_details_info {
306
257
  display: flex;
307
258
  gap: 8px;
308
259
  }
309
260
  }
310
261
  }
262
+
311
263
  .loading__container {
312
264
  width: 100%;
313
265
  height: 25vh;
@@ -315,114 +267,77 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
315
267
  align-items: center;
316
268
  justify-content: center;
317
269
  }
270
+
318
271
  .allocation_details {
319
- background-color: var(
320
- --_ctm-mob-dn-wt-se-bd-cr,
321
- var(--_ctm-tab-dn-wt-se-bd-cr, var(--_ctm-dn-wt-se-bd-cr))
322
- );
323
-
324
- border-color: var(
325
- --_ctm-mob-dn-wt-se-br-cr,
326
- var(--_ctm-tab-dn-wt-se-br-cr, var(--_ctm-dn-wt-se-br-cr))
327
- );
328
-
329
- border-style: var(
330
- --_ctm-mob-dn-wt-se-br-se,
331
- var(--_ctm-tab-dn-wt-se-br-se, var(--_ctm-dn-wt-se-br-se))
332
- );
333
-
334
- border-width: var(
335
- --_ctm-mob-dn-wt-se-br-wh,
336
- var(--_ctm-tab-dn-wt-se-br-wh, var(--_ctm-dn-wt-se-br-wh))
337
- );
338
-
339
- border-radius: var(
340
- --_ctm-mob-dn-wt-se-br-rs,
341
- var(--_ctm-tab-dn-wt-se-br-rs, var(--_ctm-dn-wt-se-br-rs))
342
- );
343
-
344
- box-shadow: var(
345
- --_show-shadow,
346
- var(--_ctm-mob-dn-wt-se-sw-ae, var(--_ctm-tab-dn-wt-se-sw-ae, var(--_ctm-dn-wt-se-sw-ae)))
347
- var(--_ctm-mob-dn-wt-se-sw-br, var(--_ctm-tab-dn-wt-se-sw-br, var(--_ctm-dn-wt-se-sw-br)))
348
- var(--_ctm-mob-dn-wt-se-sw-sd, var(--_ctm-tab-dn-wt-se-sw-sd, var(--_ctm-dn-wt-se-sw-sd)))
349
- var(--_ctm-mob-dn-wt-se-sw-cr, var(--_ctm-tab-dn-wt-se-sw-cr, var(--_ctm-dn-wt-se-sw-cr)))
350
- );
272
+ background-color: var(--_ctm-mob-dn-wt-se-bd-cr,
273
+ var(--_ctm-tab-dn-wt-se-bd-cr, var(--_ctm-dn-wt-se-bd-cr)));
274
+
275
+ border-color: var(--_ctm-mob-dn-wt-se-br-cr,
276
+ var(--_ctm-tab-dn-wt-se-br-cr, var(--_ctm-dn-wt-se-br-cr)));
277
+
278
+ border-style: var(--_ctm-mob-dn-wt-se-br-se,
279
+ var(--_ctm-tab-dn-wt-se-br-se, var(--_ctm-dn-wt-se-br-se)));
280
+
281
+ border-width: var(--_ctm-mob-dn-wt-se-br-wh,
282
+ var(--_ctm-tab-dn-wt-se-br-wh, var(--_ctm-dn-wt-se-br-wh)));
283
+
284
+ border-radius: var(--_ctm-mob-dn-wt-se-br-rs,
285
+ var(--_ctm-tab-dn-wt-se-br-rs, var(--_ctm-dn-wt-se-br-rs)));
286
+
287
+ box-shadow: var(--_show-shadow,
288
+ var(--_ctm-mob-dn-wt-se-sw-ae, var(--_ctm-tab-dn-wt-se-sw-ae, var(--_ctm-dn-wt-se-sw-ae))) var(--_ctm-mob-dn-wt-se-sw-br, var(--_ctm-tab-dn-wt-se-sw-br, var(--_ctm-dn-wt-se-sw-br))) var(--_ctm-mob-dn-wt-se-sw-sd, var(--_ctm-tab-dn-wt-se-sw-sd, var(--_ctm-dn-wt-se-sw-sd))) var(--_ctm-mob-dn-wt-se-sw-cr, var(--_ctm-tab-dn-wt-se-sw-cr, var(--_ctm-dn-wt-se-sw-cr))));
351
289
 
352
290
  padding: var(--_ctm-mob-lt-pg, var(--_ctm-tab-lt-pg, var(--_ctm-lt-pg)));
353
- gap: var(
354
- --_ctm-mob-lt-it-ad-mn-qy-sg,
355
- var(--_ctm-tab-lt-it-ad-mn-qy-sg, var(--_ctm-lt-it-ad-mn-qy-sg))
356
- );
291
+ gap: var(--_ctm-mob-lt-it-ad-mn-qy-sg,
292
+ var(--_ctm-tab-lt-it-ad-mn-qy-sg, var(--_ctm-lt-it-ad-mn-qy-sg)));
357
293
  display: flex;
358
294
  flex-direction: column;
295
+
359
296
  // text css
360
297
  .title__wraper {
361
- background-color: var(
362
- --_ctm-mob-dn-te-bd-cr,
363
- var(--_ctm-tab-dn-te-bd-cr, var(--_ctm-dn-te-bd-cr))
364
- );
365
-
366
- border-color: var(
367
- --_ctm-mob-dn-te-br-cr,
368
- var(--_ctm-tab-dn-te-br-cr, var(--_ctm-dn-te-br-cr))
369
- );
370
-
371
- border-style: var(
372
- --_ctm-mob-dn-te-br-se,
373
- var(--_ctm-tab-dn-te-br-se, var(--_ctm-dn-te-br-se))
374
- );
375
-
376
- border-width: var(
377
- --_ctm-mob-dn-te-br-wh,
378
- var(--_ctm-tab-dn-te-br-wh, var(--_ctm-dn-te-br-wh))
379
- );
380
-
381
- border-radius: var(
382
- --_ctm-mob-dn-te-br-rs,
383
- var(--_ctm-tab-dn-te-br-rs, var(--_ctm-dn-te-br-rs))
384
- );
385
-
386
- box-shadow: var(
387
- --_show-shadow,
388
- var(--_ctm-mob-dn-te-sw-ae, var(--_ctm-tab-dn-te-sw-ae, var(--_ctm-dn-te-sw-ae)))
389
- var(--_ctm-mob-dn-te-sw-br, var(--_ctm-tab-dn-te-sw-br, var(--_ctm-dn-te-sw-br)))
390
- var(--_ctm-mob-dn-te-sw-sd, var(--_ctm-tab-dn-te-sw-sd, var(--_ctm-dn-te-sw-sd)))
391
- var(--_ctm-mob-dn-te-sw-cr, var(--_ctm-tab-dn-te-sw-cr, var(--_ctm-dn-te-sw-cr)))
392
- );
298
+ background-color: var(--_ctm-mob-dn-te-bd-cr,
299
+ var(--_ctm-tab-dn-te-bd-cr, var(--_ctm-dn-te-bd-cr)));
300
+
301
+ border-color: var(--_ctm-mob-dn-te-br-cr,
302
+ var(--_ctm-tab-dn-te-br-cr, var(--_ctm-dn-te-br-cr)));
303
+
304
+ border-style: var(--_ctm-mob-dn-te-br-se,
305
+ var(--_ctm-tab-dn-te-br-se, var(--_ctm-dn-te-br-se)));
306
+
307
+ border-width: var(--_ctm-mob-dn-te-br-wh,
308
+ var(--_ctm-tab-dn-te-br-wh, var(--_ctm-dn-te-br-wh)));
309
+
310
+ border-radius: var(--_ctm-mob-dn-te-br-rs,
311
+ var(--_ctm-tab-dn-te-br-rs, var(--_ctm-dn-te-br-rs)));
312
+
313
+ box-shadow: var(--_show-shadow,
314
+ var(--_ctm-mob-dn-te-sw-ae, var(--_ctm-tab-dn-te-sw-ae, var(--_ctm-dn-te-sw-ae))) var(--_ctm-mob-dn-te-sw-br, var(--_ctm-tab-dn-te-sw-br, var(--_ctm-dn-te-sw-br))) var(--_ctm-mob-dn-te-sw-sd, var(--_ctm-tab-dn-te-sw-sd, var(--_ctm-dn-te-sw-sd))) var(--_ctm-mob-dn-te-sw-cr, var(--_ctm-tab-dn-te-sw-cr, var(--_ctm-dn-te-sw-cr))));
393
315
  white-space: nowrap;
394
316
 
395
317
  height: 100%;
318
+
396
319
  .title {
397
320
  color: var(--_ctm-mob-dn-te-cr, var(--_ctm-tab-dn-te-cr, var(--_ctm-dn-te-cr)));
398
- font-family: var(
399
- --_ctm-mob-dn-te-ft-fy,
400
- var(--_ctm-tab-dn-te-ft-fy, var(--_ctm-dn-te-ft-fy))
401
- );
402
- font-size: var(
403
- --_ctm-mob-dn-te-ft-se,
404
- var(--_ctm-tab-dn-te-ft-se, var(--_ctm-dn-te-ft-se))
405
- );
406
- font-weight: var(
407
- --_ctm-mob-dn-te-ft-wt,
408
- var(--_ctm-tab-dn-te-ft-wt, var(--_ctm-dn-te-ft-wt))
409
- );
410
- font-style: var(
411
- --_ctm-mob-dn-te-ft-se-ic,
412
- var(--_ctm-tab-dn-te-ft-se-ic, var(--_ctm-dn-te-ft-se-ic))
413
- );
414
- text-align: var(
415
- --_ctm-mob-dn-te-tt-an,
416
- var(--_ctm-tab-dn-te-tt-an, var(--_ctm-dn-te-tt-an))
417
- );
418
- letter-spacing: var(
419
- --_ctm-mob-dn-te-lr-sg,
420
- var(--_ctm-tab-dn-te-lr-sg, var(--_ctm-dn-te-lr-sg))
421
- );
422
- line-height: var(
423
- --_ctm-mob-dn-te-le-ht,
424
- var(--_ctm-tab-dn-te-le-ht, var(--_ctm-dn-te-le-ht))
425
- );
321
+ font-family: var(--_ctm-mob-dn-te-ft-fy,
322
+ var(--_ctm-tab-dn-te-ft-fy, var(--_ctm-dn-te-ft-fy)));
323
+ text-transform: var(--_ctm-mob-dn-te-tt-tm,
324
+ var(--_ctm-tab-dn-te-tt-tm, var(--_ctm-dn-te-tt-tm)));
325
+ word-wrap: var(--_ctm-mob-dn-te-wd-wp,
326
+ var(--_ctm-tab-dn-te-wd-wp, var(--_ctm-dn-te-wd-wp)));
327
+ word-break: var(--_ctm-mob-dn-te-wd-bk,
328
+ var(--_ctm-tab-dn-te-wd-bk, var(--_ctm-dn-te-wd-bk)));
329
+ font-size: var(--_ctm-mob-dn-te-ft-se,
330
+ var(--_ctm-tab-dn-te-ft-se, var(--_ctm-dn-te-ft-se)));
331
+ font-weight: var(--_ctm-mob-dn-te-ft-wt,
332
+ var(--_ctm-tab-dn-te-ft-wt, var(--_ctm-dn-te-ft-wt)));
333
+ font-style: var(--_ctm-mob-dn-te-ft-se-ic,
334
+ var(--_ctm-tab-dn-te-ft-se-ic, var(--_ctm-dn-te-ft-se-ic)));
335
+ text-align: var(--_ctm-mob-dn-te-tt-an,
336
+ var(--_ctm-tab-dn-te-tt-an, var(--_ctm-dn-te-tt-an)));
337
+ letter-spacing: var(--_ctm-mob-dn-te-lr-sg,
338
+ var(--_ctm-tab-dn-te-lr-sg, var(--_ctm-dn-te-lr-sg)));
339
+ line-height: var(--_ctm-mob-dn-te-le-ht,
340
+ var(--_ctm-tab-dn-te-le-ht, var(--_ctm-dn-te-le-ht)));
426
341
  text-decoration: var(--_ctm-mob-dn-te-ue, var(--_ctm-tab-dn-te-ue, var(--_ctm-dn-te-ue)));
427
342
  padding: prepareMediaVariable(--_ctm-dn-te-pg);
428
343
  @include ad-text-transform(--_ctm-dn-te);
@@ -432,15 +347,11 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
432
347
 
433
348
  &[data-show-dividers="true"] {
434
349
  .showcase__title {
435
- border-bottom-width: var(
436
- --_ctm-mob-dn-wt-se-dr-wh,
437
- var(--_ctm-tab-dn-wt-se-dr-wh, var(--_ctm-dn-wt-se-dr-wh, 1px))
438
- );
350
+ border-bottom-width: var(--_ctm-mob-dn-wt-se-dr-wh,
351
+ var(--_ctm-tab-dn-wt-se-dr-wh, var(--_ctm-dn-wt-se-dr-wh, 1px)));
439
352
  border-bottom-style: solid;
440
- border-bottom-color: var(
441
- --_ctm-mob-dn-wt-se-dr-cr,
442
- var(--_ctm-tab-dn-wt-se-dr-cr, var(--_ctm-dn-wt-se-dr-cr, #e4e7ec))
443
- );
353
+ border-bottom-color: var(--_ctm-mob-dn-wt-se-dr-cr,
354
+ var(--_ctm-tab-dn-wt-se-dr-cr, var(--_ctm-dn-wt-se-dr-cr, #e4e7ec)));
444
355
  padding-bottom: 10px;
445
356
  }
446
357
  }
@@ -474,54 +385,29 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
474
385
  // so name -> quota details -> cards keep one rhythm. 10px is what was
475
386
  // hardcoded here before, so an untouched element does not move.
476
387
  gap: prepareMediaVariable(--_ctm-dn-an-im-gp, 10px);
477
- background-color: var(
478
- --_ctm-mob-dn-an-an-im-bd-cr,
479
- var(--_ctm-tab-dn-an-an-im-bd-cr, var(--_ctm-dn-an-an-im-bd-cr))
480
- );
481
-
482
- border-color: var(
483
- --_ctm-mob-dn-an-an-im-br-cr,
484
- var(--_ctm-tab-dn-an-an-im-br-cr, var(--_ctm-dn-an-an-im-br-cr))
485
- );
486
-
487
- border-style: var(
488
- --_ctm-mob-dn-an-an-im-br-se,
489
- var(--_ctm-tab-dn-an-an-im-br-se, var(--_ctm-dn-an-an-im-br-se))
490
- );
491
-
492
- border-width: var(
493
- --_ctm-mob-dn-an-an-im-br-wh,
494
- var(--_ctm-tab-dn-an-an-im-br-wh, var(--_ctm-dn-an-an-im-br-wh))
495
- );
496
-
497
- border-radius: var(
498
- --_ctm-mob-dn-an-an-im-br-rs,
499
- var(--_ctm-tab-dn-an-an-im-br-rs, var(--_ctm-dn-an-an-im-br-rs))
500
- );
501
-
502
- box-shadow: var(
503
- --_show-shadow,
504
- var(
505
- --_ctm-mob-dn-an-an-im-sw-ae,
506
- var(--_ctm-tab-dn-an-an-im-sw-ae, var(--_ctm-dn-an-an-im-sw-ae))
507
- )
508
- var(
509
- --_ctm-mob-dn-an-an-im-sw-br,
510
- var(--_ctm-tab-dn-an-an-im-sw-br, var(--_ctm-dn-an-an-im-sw-br))
511
- )
512
- var(
513
- --_ctm-mob-dn-an-an-im-sw-sd,
514
- var(--_ctm-tab-dn-an-an-im-sw-sd, var(--_ctm-dn-an-an-im-sw-sd))
515
- )
516
- var(
517
- --_ctm-mob-dn-an-an-im-sw-cr,
518
- var(--_ctm-tab-dn-an-an-im-sw-cr, var(--_ctm-dn-an-an-im-sw-cr))
519
- )
520
- );
521
- padding: var(
522
- --_ctm-mob-dn-an-an-im-pg,
523
- var(--_ctm-tab-dn-an-an-im-pg, var(--_ctm-dn-an-an-im-pg))
524
- );
388
+ background-color: var(--_ctm-mob-dn-an-an-im-bd-cr,
389
+ var(--_ctm-tab-dn-an-an-im-bd-cr, var(--_ctm-dn-an-an-im-bd-cr)));
390
+
391
+ border-color: var(--_ctm-mob-dn-an-an-im-br-cr,
392
+ var(--_ctm-tab-dn-an-an-im-br-cr, var(--_ctm-dn-an-an-im-br-cr)));
393
+
394
+ border-style: var(--_ctm-mob-dn-an-an-im-br-se,
395
+ var(--_ctm-tab-dn-an-an-im-br-se, var(--_ctm-dn-an-an-im-br-se)));
396
+
397
+ border-width: var(--_ctm-mob-dn-an-an-im-br-wh,
398
+ var(--_ctm-tab-dn-an-an-im-br-wh, var(--_ctm-dn-an-an-im-br-wh)));
399
+
400
+ border-radius: var(--_ctm-mob-dn-an-an-im-br-rs,
401
+ var(--_ctm-tab-dn-an-an-im-br-rs, var(--_ctm-dn-an-an-im-br-rs)));
402
+
403
+ box-shadow: var(--_show-shadow,
404
+ var(--_ctm-mob-dn-an-an-im-sw-ae,
405
+ var(--_ctm-tab-dn-an-an-im-sw-ae, var(--_ctm-dn-an-an-im-sw-ae))) var(--_ctm-mob-dn-an-an-im-sw-br,
406
+ var(--_ctm-tab-dn-an-an-im-sw-br, var(--_ctm-dn-an-an-im-sw-br))) var(--_ctm-mob-dn-an-an-im-sw-sd,
407
+ var(--_ctm-tab-dn-an-an-im-sw-sd, var(--_ctm-dn-an-an-im-sw-sd))) var(--_ctm-mob-dn-an-an-im-sw-cr,
408
+ var(--_ctm-tab-dn-an-an-im-sw-cr, var(--_ctm-dn-an-an-im-sw-cr))));
409
+ padding: var(--_ctm-mob-dn-an-an-im-pg,
410
+ var(--_ctm-tab-dn-an-an-im-pg, var(--_ctm-dn-an-an-im-pg)));
525
411
 
526
412
  // Quota details in the allocation header. It renders the same embedded
527
413
  // Quota Details element the cards do, from its own copy of the settings,
@@ -552,88 +438,53 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
552
438
  }
553
439
 
554
440
  .allocation__name {
555
- background-color: var(
556
- --_ctm-mob-dn-an-an-ne-bd-cr,
557
- var(--_ctm-tab-dn-an-an-ne-bd-cr, var(--_ctm-dn-an-an-ne-bd-cr))
558
- );
559
-
560
- border-color: var(
561
- --_ctm-mob-dn-an-an-ne-br-cr,
562
- var(--_ctm-tab-dn-an-an-ne-br-cr, var(--_ctm-dn-an-an-ne-br-cr))
563
- );
564
-
565
- border-style: var(
566
- --_ctm-mob-dn-an-an-ne-br-se,
567
- var(--_ctm-tab-dn-an-an-ne-br-se, var(--_ctm-dn-an-an-ne-br-se))
568
- );
569
-
570
- border-width: var(
571
- --_ctm-mob-dn-an-an-ne-br-wh,
572
- var(--_ctm-tab-dn-an-an-ne-br-wh, var(--_ctm-dn-an-an-ne-br-wh))
573
- );
574
-
575
- border-radius: var(
576
- --_ctm-mob-dn-an-an-ne-br-rs,
577
- var(--_ctm-tab-dn-an-an-ne-br-rs, var(--_ctm-dn-an-an-ne-br-rs))
578
- );
579
-
580
- box-shadow: var(
581
- --_show-shadow,
582
- var(
583
- --_ctm-mob-dn-an-an-ne-sw-ae,
584
- var(--_ctm-tab-dn-an-an-ne-sw-ae, var(--_ctm-dn-an-an-ne-sw-ae))
585
- )
586
- var(
587
- --_ctm-mob-dn-an-an-ne-sw-br,
588
- var(--_ctm-tab-dn-an-an-ne-sw-br, var(--_ctm-dn-an-an-ne-sw-br))
589
- )
590
- var(
591
- --_ctm-mob-dn-an-an-ne-sw-sd,
592
- var(--_ctm-tab-dn-an-an-ne-sw-sd, var(--_ctm-dn-an-an-ne-sw-sd))
593
- )
594
- var(
595
- --_ctm-mob-dn-an-an-ne-sw-cr,
596
- var(--_ctm-tab-dn-an-an-ne-sw-cr, var(--_ctm-dn-an-an-ne-sw-cr))
597
- )
598
- );
441
+ background-color: var(--_ctm-mob-dn-an-an-ne-bd-cr,
442
+ var(--_ctm-tab-dn-an-an-ne-bd-cr, var(--_ctm-dn-an-an-ne-bd-cr)));
443
+
444
+ border-color: var(--_ctm-mob-dn-an-an-ne-br-cr,
445
+ var(--_ctm-tab-dn-an-an-ne-br-cr, var(--_ctm-dn-an-an-ne-br-cr)));
446
+
447
+ border-style: var(--_ctm-mob-dn-an-an-ne-br-se,
448
+ var(--_ctm-tab-dn-an-an-ne-br-se, var(--_ctm-dn-an-an-ne-br-se)));
449
+
450
+ border-width: var(--_ctm-mob-dn-an-an-ne-br-wh,
451
+ var(--_ctm-tab-dn-an-an-ne-br-wh, var(--_ctm-dn-an-an-ne-br-wh)));
452
+
453
+ border-radius: var(--_ctm-mob-dn-an-an-ne-br-rs,
454
+ var(--_ctm-tab-dn-an-an-ne-br-rs, var(--_ctm-dn-an-an-ne-br-rs)));
455
+
456
+ box-shadow: var(--_show-shadow,
457
+ var(--_ctm-mob-dn-an-an-ne-sw-ae,
458
+ var(--_ctm-tab-dn-an-an-ne-sw-ae, var(--_ctm-dn-an-an-ne-sw-ae))) var(--_ctm-mob-dn-an-an-ne-sw-br,
459
+ var(--_ctm-tab-dn-an-an-ne-sw-br, var(--_ctm-dn-an-an-ne-sw-br))) var(--_ctm-mob-dn-an-an-ne-sw-sd,
460
+ var(--_ctm-tab-dn-an-an-ne-sw-sd, var(--_ctm-dn-an-an-ne-sw-sd))) var(--_ctm-mob-dn-an-an-ne-sw-cr,
461
+ var(--_ctm-tab-dn-an-an-ne-sw-cr, var(--_ctm-dn-an-an-ne-sw-cr))));
599
462
  white-space: nowrap;
600
463
 
601
- color: var(
602
- --_ctm-mob-dn-an-an-ne-cr,
603
- var(--_ctm-tab-dn-an-an-ne-cr, var(--_ctm-dn-an-an-ne-cr))
604
- );
605
- font-family: var(
606
- --_ctm-mob-dn-an-an-ne-ft-fy,
607
- var(--_ctm-tab-dn-an-an-ne-ft-fy, var(--_ctm-dn-an-an-ne-ft-fy))
608
- );
609
- font-size: var(
610
- --_ctm-mob-dn-an-an-ne-ft-se,
611
- var(--_ctm-tab-dn-an-an-ne-ft-se, var(--_ctm-dn-an-an-ne-ft-se))
612
- );
613
- font-weight: var(
614
- --_ctm-mob-dn-an-an-ne-ft-wt,
615
- var(--_ctm-tab-dn-an-an-ne-ft-wt, var(--_ctm-dn-an-an-ne-ft-wt))
616
- );
617
- font-style: var(
618
- --_ctm-mob-dn-an-an-ne-ft-se-ic,
619
- var(--_ctm-tab-dn-an-an-ne-ft-se-ic, var(--_ctm-dn-an-an-ne-ft-se-ic))
620
- );
621
- text-align: var(
622
- --_ctm-mob-dn-an-an-ne-tt-an,
623
- var(--_ctm-tab-dn-an-an-ne-tt-an, var(--_ctm-dn-an-an-ne-tt-an))
624
- );
625
- letter-spacing: var(
626
- --_ctm-mob-dn-an-an-ne-lr-sg,
627
- var(--_ctm-tab-dn-an-an-ne-lr-sg, var(--_ctm-dn-an-an-ne-lr-sg))
628
- );
629
- line-height: var(
630
- --_ctm-mob-dn-an-an-ne-le-ht,
631
- var(--_ctm-tab-dn-an-an-ne-le-ht, var(--_ctm-dn-an-an-ne-le-ht))
632
- );
633
- text-decoration: var(
634
- --_ctm-mob-dn-an-an-ne-ue,
635
- var(--_ctm-tab-dn-an-an-ne-ue, var(--_ctm-dn-an-an-ne-ue))
636
- );
464
+ color: var(--_ctm-mob-dn-an-an-ne-cr,
465
+ var(--_ctm-tab-dn-an-an-ne-cr, var(--_ctm-dn-an-an-ne-cr)));
466
+ font-family: var(--_ctm-mob-dn-an-an-ne-ft-fy,
467
+ var(--_ctm-tab-dn-an-an-ne-ft-fy, var(--_ctm-dn-an-an-ne-ft-fy)));
468
+ text-transform: var(--_ctm-mob-dn-an-an-ne-tt-tm,
469
+ var(--_ctm-tab-dn-an-an-ne-tt-tm, var(--_ctm-dn-an-an-ne-tt-tm)));
470
+ word-wrap: var(--_ctm-mob-dn-an-an-ne-wd-wp,
471
+ var(--_ctm-tab-dn-an-an-ne-wd-wp, var(--_ctm-dn-an-an-ne-wd-wp)));
472
+ word-break: var(--_ctm-mob-dn-an-an-ne-wd-bk,
473
+ var(--_ctm-tab-dn-an-an-ne-wd-bk, var(--_ctm-dn-an-an-ne-wd-bk)));
474
+ font-size: var(--_ctm-mob-dn-an-an-ne-ft-se,
475
+ var(--_ctm-tab-dn-an-an-ne-ft-se, var(--_ctm-dn-an-an-ne-ft-se)));
476
+ font-weight: var(--_ctm-mob-dn-an-an-ne-ft-wt,
477
+ var(--_ctm-tab-dn-an-an-ne-ft-wt, var(--_ctm-dn-an-an-ne-ft-wt)));
478
+ font-style: var(--_ctm-mob-dn-an-an-ne-ft-se-ic,
479
+ var(--_ctm-tab-dn-an-an-ne-ft-se-ic, var(--_ctm-dn-an-an-ne-ft-se-ic)));
480
+ text-align: var(--_ctm-mob-dn-an-an-ne-tt-an,
481
+ var(--_ctm-tab-dn-an-an-ne-tt-an, var(--_ctm-dn-an-an-ne-tt-an)));
482
+ letter-spacing: var(--_ctm-mob-dn-an-an-ne-lr-sg,
483
+ var(--_ctm-tab-dn-an-an-ne-lr-sg, var(--_ctm-dn-an-an-ne-lr-sg)));
484
+ line-height: var(--_ctm-mob-dn-an-an-ne-le-ht,
485
+ var(--_ctm-tab-dn-an-an-ne-le-ht, var(--_ctm-dn-an-an-ne-le-ht)));
486
+ text-decoration: var(--_ctm-mob-dn-an-an-ne-ue,
487
+ var(--_ctm-tab-dn-an-an-ne-ue, var(--_ctm-dn-an-an-ne-ue)));
637
488
  padding: prepareMediaVariable(--_ctm-dn-an-an-ne-pg);
638
489
  @include ad-text-transform(--_ctm-dn-an-an-ne);
639
490
  @include ad-text-overflow;
@@ -656,10 +507,12 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
656
507
  font-weight: 700;
657
508
  line-height: 30px;
658
509
  margin: 0px;
510
+
659
511
  h3 {
660
512
  display: flex;
661
513
  align-items: center;
662
514
  font-size: 20px;
515
+
663
516
  .text__secondary {
664
517
  color: var(--Gray-iron-500, #70707b);
665
518
  font-size: 16px;
@@ -669,12 +522,14 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
669
522
  font-weight: 400;
670
523
  line-height: 18px;
671
524
  padding-left: 8px;
525
+
672
526
  .text__primary {
673
527
  color: #243dc6;
674
528
  font-size: 16px;
675
529
  }
676
530
  }
677
531
  }
532
+
678
533
  .section__desc {
679
534
  color: var(--Gray-iron-500, #70707b);
680
535
 
@@ -683,6 +538,7 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
683
538
  font-weight: 400;
684
539
  line-height: 18px;
685
540
  margin: 0px;
541
+
686
542
  span {
687
543
  color: var(--Gray-900, #101828);
688
544
 
@@ -707,16 +563,20 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
707
563
  // not align-self keywords, so the mapping is done here rather than
708
564
  // written into every saved element.
709
565
  align-self: center;
566
+
710
567
  &[data-vertical-align="top"] {
711
568
  align-self: flex-start;
712
569
  }
570
+
713
571
  &[data-vertical-align="center"] {
714
572
  align-self: center;
715
573
  }
574
+
716
575
  &[data-vertical-align="bottom"] {
717
576
  align-self: flex-end;
718
577
  }
719
578
  }
579
+
720
580
  .product__views {
721
581
  display: flex;
722
582
  // background-color: #fff;
@@ -725,1836 +585,1599 @@ $ad-slider-arrows: "--_ctm-dn-sr-pn-as"; // design.slider.paginationArrows
725
585
  border-style: prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-lt-se-br-se, solid);
726
586
  border-width: prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-lt-se-br-wh, 1px);
727
587
  border-color: prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-lt-se-br-cr, var(--_gray-200));
728
- background-color: prepareMediaVariable(
729
- --_ctm-dn-gd-vw-cl-se-lt-se-bd-cr,
730
- var(--_base-white)
731
- );
588
+ background-color: prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-lt-se-bd-cr,
589
+ var(--_base-white));
732
590
  // height: 40px;
733
591
  // overflow: hidden;
734
592
 
735
593
  // Hoisted out of `.btn` so the "Icon + Text" rules further down can size
736
594
  // themselves off the same icon measurement.
737
595
  $size: #{var(
738
- --_sf-at-btn-size,
739
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-in-se, var(--_width-20))}
740
- )};
741
-
742
- .btn {
743
- // display: inline-block;
744
- // // padding: 8px;
745
- // display: flex;
746
- // align-items: center;
747
- // justify-content: center;
748
-
749
- display: var(--_d-flex);
750
- --_width-20: 20px;
751
- // $size: var(--_width-40);
752
- // The 2x cell is now a floor rather than a fixed size: Padding is
753
- // configurable, so the button grows past it once the padding needs more
754
- // room than the icon left over. Untouched elements have no padding and
755
- // stay exactly 2x, as they always were.
756
- min-width: calc(#{$size} * 2);
757
- min-height: calc(#{$size} * 2);
758
- box-sizing: border-box;
759
- padding: var(
760
- --_sf-at-btn-pg,
761
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-pg, 0)}
762
- );
763
- align-items: center;
764
- justify-content: center;
765
- background: var(
766
- --_sf-at-btn-bd,
767
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-bd-cr)}
768
- );
769
- box-shadow: var(
770
- --_sf-at-btn-sw,
771
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-sw-ae, 0 0)}
772
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-sw-br, 0)}
773
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-sw-sd, 0)}
774
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-sw-cr, transparent)}
775
- );
776
-
777
- // The renderer reads Show Shadow off whichever state the button is in,
778
- // so one attribute covers both.
779
- &[data-show-shadow="false"] {
780
- box-shadow: none;
781
- }
782
-
783
- cursor: pointer;
784
- button {
785
- display: flex;
786
- // Until these are cleared the button keeps the browser's own
787
- // padding and border, which pushed the glyph off the centre of its
788
- // cell — that is what made the Grid and List icons sit unevenly
789
- // beside each other. Filling the cell and centring here keeps them
790
- // on one baseline at every icon size.
791
- align-items: center;
792
- justify-content: center;
793
- width: 100%;
794
- height: 100%;
795
- padding: 0;
796
- border: none;
797
- background: transparent;
798
- }
596
+ --_sf-at-btn-size,
597
+ #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-in-se, var(--_width-20))})
598
+ }
799
599
 
800
- // The glyph gets its own flex box so the svg sits centred without the
801
- // inline-baseline gap a bare `dangerouslySetInnerHTML` span would add.
802
- .btn__icon {
803
- display: flex;
804
- align-items: center;
805
- justify-content: center;
806
- flex-shrink: 0;
807
-
808
- // An uploaded icon comes through as an <img> sized to its box, so the
809
- // box needs a size of its own — the svg rule further down only reaches
810
- // library icons, and a percentage inside a shrink-to-fit parent would
811
- // otherwise resolve to nothing.
812
- img {
813
- width: calc(#{$size} * 1);
814
- height: calc(#{$size} * 1);
815
- object-fit: contain;
816
- }
817
- }
600
+ ;
601
+
602
+ .btn {
603
+ // display: inline-block;
604
+ // // padding: 8px;
605
+ // display: flex;
606
+ // align-items: center;
607
+ // justify-content: center;
608
+
609
+ display: var(--_d-flex);
610
+ --_width-20: 20px;
611
+ // $size: var(--_width-40);
612
+ // The 2x cell is now a floor rather than a fixed size: Padding is
613
+ // configurable, so the button grows past it once the padding needs more
614
+ // room than the icon left over. Untouched elements have no padding and
615
+ // stay exactly 2x, as they always were.
616
+ min-width: calc(#{$size} * 2);
617
+ min-height: calc(#{$size} * 2);
618
+ box-sizing: border-box;
619
+ padding: var(--_sf-at-btn-pg, #{prepareMediaVariable(
620
+ --_ctm-dn-gd-vw-cl-se-bn-dt-se-pg,
621
+ 0)
622
+ });
623
+ align-items: center;
624
+ justify-content: center;
625
+ background: var(--_sf-at-btn-bd,
626
+ #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-bd-cr)});
627
+ box-shadow: var(--_sf-at-btn-sw,
628
+ #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-sw-ae, 0 0)} #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-sw-br, 0)} #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-sw-sd, 0)} #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-sw-cr, transparent)});
629
+
630
+ // The renderer reads Show Shadow off whichever state the button is in,
631
+ // so one attribute covers both.
632
+ &[data-show-shadow="false"] {
633
+ box-shadow: none;
634
+ }
818
635
 
819
- // &:hover {
820
- // background-color: var(--_gray-100);
821
- // }
822
-
823
- &.active {
824
- // --_sf-at-pt-cl: var(--_gray-700);
825
- --_sf-at-btn-size: #{prepareMediaVariable(
826
- --_ctm-dn-gd-vw-cl-se-bn-sd-se-in-se,
827
- var(--_width-20)
828
- )};
829
- --_sf-at-pt-cl: #{prepareMediaVariable(
830
- --_ctm-dn-gd-vw-cl-se-bn-sd-se-in-c1,
831
- var(--_gray-700)
832
- )};
833
- --_sf-at-btn-bd: #{prepareMediaVariable(
834
- --_ctm-dn-gd-vw-cl-se-bn-sd-se-bd-cr,
835
- var(--_gray-200)
836
- )};
837
- // Same re-pointing trick as the icon vars above: the padding and
838
- // shadow declarations stay written once and simply re-resolve
839
- // against the selected state's values.
840
- --_sf-at-btn-pg: #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-pg, 0)};
841
- --_sf-at-btn-sw: #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-sw-ae, 0 0)}
842
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-sw-br, 0)}
843
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-sw-sd, 0)}
844
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-sw-cr, transparent)};
845
- // background: var(--_gray-200);
846
- }
847
- // &.active {
848
- // background-color: #ced4f6;
849
- // button {
850
- // svg {
851
- // path {
852
- // stroke: var(--_primary-500);
853
- // }
854
- // }
855
- // }
856
- // }
857
- // &:first-child {
858
- // border-right: 1px solid var(--_gray-200);
859
- // }
860
-
861
- svg {
862
- width: calc(#{$size} * 1);
863
- height: calc(#{$size} * 1);
864
-
865
- path {
866
- stroke: var(
867
- --_sf-at-pt-cl,
868
- #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-in-c1, var(--_gray-500))}
869
- );
870
- // Overrides the stroke-width presentation attribute baked into the icon markup.
871
- stroke-width: prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-se-wh, 1.25);
872
- }
873
- }
636
+ cursor: pointer;
874
637
 
875
- &:first-of-type {
876
- border-radius: 4px 0 0 4px;
877
- }
878
- &:last-of-type {
879
- border-radius: 0 4px 4px 0;
880
- }
881
- }
882
- }
883
- // products header styles
884
- .showcase__header {
638
+ button {
885
639
  display: flex;
886
- justify-content: space-between;
887
- padding: 16px 0;
888
- margin-bottom: 16px;
889
- border-bottom: var(--Gray-200, #eaecf0) 1px solid;
890
- .quota__details {
891
- display: flex;
892
- align-items: center;
893
- gap: 8px;
894
- }
895
-
896
- .button__group {
897
- display: flex;
898
- gap: 12px;
899
- }
900
- .product__views {
901
- display: flex;
902
- background-color: #fff;
903
- border: 1px solid var(--_gray-300);
904
- border-radius: 6px;
905
- height: 40px;
906
- overflow: hidden;
907
-
908
- .btn {
909
- display: inline-block;
910
- padding: 8px;
911
- display: flex;
912
- align-items: center;
913
- justify-content: center;
914
- cursor: pointer;
915
- button {
916
- display: flex;
917
- }
918
- &:hover {
919
- background-color: var(--_gray-100);
920
- }
921
- &.active {
922
- background-color: #ced4f6;
923
- button {
924
- svg {
925
- path {
926
- stroke: var(--_primary-500);
927
- }
928
- }
929
- }
930
- }
931
- &:first-child {
932
- border-right: 1px solid var(--_gray-200);
933
- }
934
- }
935
- }
640
+ // Until these are cleared the button keeps the browser's own
641
+ // padding and border, which pushed the glyph off the centre of its
642
+ // cell — that is what made the Grid and List icons sit unevenly
643
+ // beside each other. Filling the cell and centring here keeps them
644
+ // on one baseline at every icon size.
645
+ align-items: center;
646
+ justify-content: center;
647
+ width: 100%;
648
+ height: 100%;
649
+ padding: 0;
650
+ border: none;
651
+ background: transparent;
936
652
  }
937
653
 
938
- // add to cart button styles
939
- .primary__btn {
654
+ // The glyph gets its own flex box so the svg sits centred without the
655
+ // inline-baseline gap a bare `dangerouslySetInnerHTML` span would add.
656
+ .btn__icon {
940
657
  display: flex;
941
- gap: 8px;
942
- height: 44px;
943
- padding: 8px 14px;
944
- background-color: var(--_primary-500);
945
- border-radius: 6px;
946
- color: #fff;
947
- font-weight: 600;
948
- height: 40px;
949
- display: inline-flex;
950
- cursor: pointer;
951
- &:hover {
952
- background-color: var(--_primary-500);
953
- }
954
- &.disable__btn {
955
- cursor: not-allowed;
956
- opacity: 0.5;
658
+ align-items: center;
659
+ justify-content: center;
660
+ flex-shrink: 0;
661
+
662
+ // An uploaded icon comes through as an <img> sized to its box, so the
663
+ // box needs a size of its own — the svg rule further down only reaches
664
+ // library icons, and a percentage inside a shrink-to-fit parent would
665
+ // otherwise resolve to nothing.
666
+ img {
667
+ width: calc(#{$size} * 1);
668
+ height: calc(#{$size} * 1);
669
+ object-fit: contain;
957
670
  }
958
671
  }
959
672
 
960
- // product list styles
961
- .showcase__product__list {
962
- .product__card {
963
- .category__image {
964
- width: 100%;
965
- height: 100%;
966
- object-fit: cover;
967
- }
968
- }
969
- &[data-list-view="grid"] {
970
- // grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
971
- // grid-template-columns: repeat(
972
- // var(
973
- // --_ctm-mob-dn-an-an-im-is-pr-rw,
974
- // var(--_ctm-tab-dn-an-an-im-is-pr-rw, var(--_ctm-dn-an-an-im-is-pr-rw))
975
- // ),
976
- // 1fr
977
- // );
978
- --_sf-cl-count: #{prepareMediaVariable(--_ctm-dn-an-an-im-is-pr-rw, 1)};
979
- // The column width has to be worked out from the COLUMN gap alone — it is
980
- // the only one that eats into the row's width.
981
- --_sf-cl-gp: #{prepareMediaVariable(
982
- --_ctm-dn-an-an-im-cn-gp,
983
- prepareMediaVariable(--_ctm-dn-an-an-im-im-gp, 0px)
984
- )};
985
- grid-template-columns: getRepeatColWidth(--_sf-cl-count, --_sf-cl-gp);
986
- // gap: 24px;
987
- .product__card {
988
- flex-direction: column;
989
- .card__img__container {
990
- width: 100%;
991
- }
992
- }
993
- }
673
+ // &:hover {
674
+ // background-color: var(--_gray-100);
675
+ // }
994
676
 
995
- &[data-list-view="list"] {
996
- grid-template-columns: auto;
997
- .product__card {
998
- flex-direction: row;
999
- align-items: prepareMediaVariable(--_ctm-lt-an-is, start);
1000
- // gap: 24px;
1001
- .card__img__container {
1002
- width: 250px;
1003
- }
1004
- }
1005
- }
1006
- display: grid;
1007
- // Gap BETWEEN the item cards, now one control per axis. Both fall back to
1008
- // the single `itemGap` this section used to carry, so a grid spaced before
1009
- // the split keeps its spacing until either axis is touched.
1010
- row-gap: prepareMediaVariable(
1011
- --_ctm-dn-an-an-im-rw-gp,
1012
- prepareMediaVariable(--_ctm-dn-an-an-im-im-gp, 0px)
1013
- );
1014
- column-gap: prepareMediaVariable(
1015
- --_ctm-dn-an-an-im-cn-gp,
1016
- prepareMediaVariable(--_ctm-dn-an-an-im-im-gp, 0px)
1017
- );
1018
-
1019
- .product__card {
1020
- // product card styles
1021
- display: flex;
1022
- // Item Card > Item Gap: image container <-> details container. 12px is
1023
- // what was hardcoded here, so an untouched card does not move.
1024
- gap: prepareMediaVariable(--_ctm-dn-im-cd-im-gp, 12px);
1025
-
1026
- background-color: var(
1027
- --_ctm-mob-dn-im-cd-bd-cr,
1028
- var(--_ctm-tab-dn-im-cd-bd-cr, var(--_ctm-dn-im-cd-bd-cr))
1029
- );
1030
-
1031
- border-color: var(
1032
- --_ctm-mob-dn-im-cd-br-cr,
1033
- var(--_ctm-tab-dn-im-cd-br-cr, var(--_ctm-dn-im-cd-br-cr))
1034
- );
1035
-
1036
- border-style: var(
1037
- --_ctm-mob-dn-im-cd-br-se,
1038
- var(--_ctm-tab-dn-im-cd-br-se, var(--_ctm-dn-im-cd-br-se))
1039
- );
1040
-
1041
- border-width: var(
1042
- --_ctm-mob-dn-im-cd-br-wh,
1043
- var(--_ctm-tab-dn-im-cd-br-wh, var(--_ctm-dn-im-cd-br-wh))
1044
- );
1045
-
1046
- border-radius: var(
1047
- --_ctm-mob-dn-im-cd-br-rs,
1048
- var(--_ctm-tab-dn-im-cd-br-rs, var(--_ctm-dn-im-cd-br-rs))
1049
- );
1050
-
1051
- box-shadow: var(
1052
- --_show-shadow,
1053
- var(
1054
- --_ctm-mob-dn-im-cd-sw-ae,
1055
- var(--_ctm-tab-dn-im-cd-sw-ae, var(--_ctm-dn-im-cd-sw-ae))
1056
- )
1057
- var(
1058
- --_ctm-mob-dn-im-cd-sw-br,
1059
- var(--_ctm-tab-dn-im-cd-sw-br, var(--_ctm-dn-im-cd-sw-br))
1060
- )
1061
- var(
1062
- --_ctm-mob-dn-im-cd-sw-sd,
1063
- var(--_ctm-tab-dn-im-cd-sw-sd, var(--_ctm-dn-im-cd-sw-sd))
1064
- )
1065
- var(
1066
- --_ctm-mob-dn-im-cd-sw-cr,
1067
- var(--_ctm-tab-dn-im-cd-sw-cr, var(--_ctm-dn-im-cd-sw-cr))
1068
- )
1069
- );
1070
- padding: var(
1071
- --_ctm-mob-dn-im-cd-pg,
1072
- var(--_ctm-tab-dn-im-cd-pg, var(--_ctm-dn-im-cd-pg))
1073
- );
1074
- .card__img__container {
1075
- height: 300px;
1076
- background-color: #fff;
1077
- display: flex;
1078
- align-items: flex-start;
1079
- justify-content: center;
1080
- border-radius: 6px;
1081
- &[data-has-link="true"] {
1082
- cursor: pointer;
1083
- }
1084
- .placeholder__image {
1085
- width: 100%;
1086
- height: 100%;
1087
- object-fit: cover;
1088
- }
1089
- }
1090
- .price_details {
1091
- display: flex;
1092
- flex-direction: column;
1093
- gap: 8px;
1094
- align-items: prepareMediaVariable(--_ctm-lt-jy-ct, start);
1095
-
1096
- .product__name {
1097
- background-color: var(
1098
- --_ctm-mob-dn-ne-bd-cr,
1099
- var(--_ctm-tab-dn-ne-bd-cr, var(--_ctm-dn-ne-bd-cr))
1100
- );
1101
-
1102
- border-color: var(
1103
- --_ctm-mob-dn-ne-br-cr,
1104
- var(--_ctm-tab-dn-ne-br-cr, var(--_ctm-dn-ne-br-cr))
1105
- );
1106
-
1107
- border-style: var(
1108
- --_ctm-mob-dn-ne-br-se,
1109
- var(--_ctm-tab-dn-ne-br-se, var(--_ctm-dn-ne-br-se))
1110
- );
1111
-
1112
- border-width: var(
1113
- --_ctm-mob-dn-ne-br-wh,
1114
- var(--_ctm-tab-dn-ne-br-wh, var(--_ctm-dn-ne-br-wh))
1115
- );
1116
-
1117
- border-radius: var(
1118
- --_ctm-mob-dn-ne-br-rs,
1119
- var(--_ctm-tab-dn-ne-br-rs, var(--_ctm-dn-ne-br-rs))
1120
- );
1121
-
1122
- box-shadow: var(
1123
- --_show-shadow,
1124
- var(--_ctm-mob-dn-ne-sw-ae, var(--_ctm-tab-dn-ne-sw-ae, var(--_ctm-dn-ne-sw-ae)))
1125
- var(
1126
- --_ctm-mob-dn-ne-sw-br,
1127
- var(--_ctm-tab-dn-ne-sw-br, var(--_ctm-dn-ne-sw-br))
1128
- )
1129
- var(
1130
- --_ctm-mob-dn-ne-sw-sd,
1131
- var(--_ctm-tab-dn-ne-sw-sd, var(--_ctm-dn-ne-sw-sd))
1132
- )
1133
- var(
1134
- --_ctm-mob-dn-ne-sw-cr,
1135
- var(--_ctm-tab-dn-ne-sw-cr, var(--_ctm-dn-ne-sw-cr))
1136
- )
1137
- );
1138
- white-space: var(--_sf-sc-pt-lt-we-se, nowrap);
1139
-
1140
- height: 100%;
1141
-
1142
- color: var(--_ctm-mob-dn-ne-cr, var(--_ctm-tab-dn-ne-cr, var(--_ctm-dn-ne-cr)));
1143
- font-family: var(
1144
- --_ctm-mob-dn-ne-ft-fy,
1145
- var(--_ctm-tab-dn-ne-ft-fy, var(--_ctm-dn-ne-ft-fy))
1146
- );
1147
- font-size: var(
1148
- --_ctm-mob-dn-ne-ft-se,
1149
- var(--_ctm-tab-dn-ne-ft-se, var(--_ctm-dn-ne-ft-se))
1150
- );
1151
- font-weight: var(
1152
- --_ctm-mob-dn-ne-ft-wt,
1153
- var(--_ctm-tab-dn-ne-ft-wt, var(--_ctm-dn-ne-ft-wt))
1154
- );
1155
- font-style: var(
1156
- --_ctm-mob-dn-ne-ft-se-ic,
1157
- var(--_ctm-tab-dn-ne-ft-se-ic, var(--_ctm-dn-ne-ft-se-ic))
1158
- );
1159
- text-align: var(
1160
- --_ctm-mob-dn-ne-tt-an,
1161
- var(--_ctm-tab-dn-ne-tt-an, var(--_ctm-dn-ne-tt-an))
1162
- );
1163
- letter-spacing: var(
1164
- --_ctm-mob-dn-ne-lr-sg,
1165
- var(--_ctm-tab-dn-ne-lr-sg, var(--_ctm-dn-ne-lr-sg))
1166
- );
1167
- line-height: var(
1168
- --_ctm-mob-dn-ne-le-ht,
1169
- var(--_ctm-tab-dn-ne-le-ht, var(--_ctm-dn-ne-le-ht))
1170
- );
1171
- text-decoration: var(
1172
- --_ctm-mob-dn-ne-ue,
1173
- var(--_ctm-tab-dn-ne-ue, var(--_ctm-dn-ne-ue))
1174
- );
1175
- padding: prepareMediaVariable(--_ctm-dn-ne-pg);
1176
- @include ad-text-transform(--_ctm-dn-ne);
1177
-
1178
- & > span {
1179
- width: 100%;
1180
- @include ad-text-overflow;
1181
- }
1182
- &[data-has-link="true"] {
1183
- cursor: pointer;
1184
- &:hover {
1185
- color: var(--_primary-500);
1186
- }
1187
- }
1188
- }
1189
- .brand__container {
1190
- display: flex;
1191
- flex-wrap: wrap;
1192
- align-items: center;
1193
- gap: 8px;
1194
- color: var(--_gray-600);
1195
- font-weight: 500;
1196
-
1197
- // Item Card > Brand & Code Direction. Horizontal is the original
1198
- // side-by-side row; vertical stacks the two blocks and lets each
1199
- // start at the left rather than being centred against the other.
1200
- &[data-direction="vertical"] {
1201
- flex-direction: column;
1202
- align-items: flex-start;
1203
- flex-wrap: nowrap;
1204
- }
1205
- }
1206
- }
677
+ &.active {
678
+ // --_sf-at-pt-cl: var(--_gray-700);
679
+ --_sf-at-btn-size: #{prepareMediaVariable(
680
+ --_ctm-dn-gd-vw-cl-se-bn-sd-se-in-se,
681
+ var(--_width-20))
682
+ }
1207
683
 
1208
- .brand {
1209
- display: flex;
1210
- align-items: center;
1211
- gap: 6px;
1212
- @include ad-section-box(--_ctm-dn-bd);
684
+ ;
685
+ --_sf-at-pt-cl: #{prepareMediaVariable(
686
+ --_ctm-dn-gd-vw-cl-se-bn-sd-se-in-c1,
687
+ var(--_gray-700))
688
+ }
1213
689
 
1214
- .brand__icon {
1215
- @include ad-section-icon(--_ctm-dn-bd);
1216
- }
690
+ ;
691
+ --_sf-at-btn-bd: #{prepareMediaVariable(
692
+ --_ctm-dn-gd-vw-cl-se-bn-sd-se-bd-cr,
693
+ var(--_gray-200))
694
+ }
1217
695
 
1218
- .value {
1219
- // padding-block-end: var(--_sf-dc-pd-bt);
1220
-
1221
- color: var(
1222
- --_ctm-mob-dn-bd-cr-dc,
1223
- var(--_ctm-tab-dn-bd-cr-dc, var(--_ctm-dn-bd-cr-dc))
1224
- );
1225
- font-family: var(
1226
- --_ctm-mob-dn-bd-ft-fy-dc,
1227
- var(--_ctm-tab-dn-bd-ft-fy-dc, var(--_ctm-dn-bd-ft-fy-dc))
1228
- );
1229
- font-size: var(
1230
- --_ctm-mob-dn-bd-ft-se-dc,
1231
- var(--_ctm-tab-dn-bd-ft-se-dc, var(--_ctm-dn-bd-ft-se-dc))
1232
- );
1233
- font-weight: var(
1234
- --_ctm-mob-dn-bd-ft-wt-dc,
1235
- var(--_ctm-tab-dn-bd-ft-wt-dc, var(--_ctm-dn-bd-ft-wt-dc))
1236
- );
1237
- font-style: var(
1238
- --_ctm-mob-dn-bd-ft-se-ic-dc,
1239
- var(--_ctm-tab-dn-bd-ft-se-ic-dc, var(--_ctm-dn-bd-ft-se-ic-dc))
1240
- );
1241
- text-align: var(
1242
- --_ctm-mob-dn-bd-tt-an-dc,
1243
- var(--_ctm-tab-dn-bd-tt-an-dc, var(--_ctm-dn-bd-tt-an-dc))
1244
- );
1245
- letter-spacing: var(
1246
- --_ctm-mob-dn-bd-lr-sg-dc,
1247
- var(--_ctm-tab-dn-bd-lr-sg-dc, var(--_ctm-dn-bd-lr-sg-dc))
1248
- );
1249
- line-height: var(
1250
- --_ctm-mob-dn-bd-le-ht-dc,
1251
- var(--_ctm-tab-dn-bd-le-ht-dc, var(--_ctm-dn-bd-le-ht-dc))
1252
- );
1253
- text-decoration: var(
1254
- --_ctm-mob-dn-bd-ue-dc,
1255
- var(--_ctm-tab-dn-bd-ue-dc, var(--_ctm-dn-bd-ue-dc))
1256
- );
1257
- @include ad-text-transform(--_ctm-dn-bd, "-dc");
1258
- @include ad-text-overflow(--_sf-line-clamp-desc);
1259
- }
1260
- .label {
1261
- color: var(--_ctm-mob-dn-bd-cr, var(--_ctm-tab-dn-bd-cr, var(--_ctm-dn-bd-cr)));
1262
- font-family: var(
1263
- --_ctm-mob-dn-bd-ft-fy,
1264
- var(--_ctm-tab-dn-bd-ft-fy, var(--_ctm-dn-bd-ft-fy))
1265
- );
1266
- font-size: var(
1267
- --_ctm-mob-dn-bd-ft-se,
1268
- var(--_ctm-tab-dn-bd-ft-se, var(--_ctm-dn-bd-ft-se))
1269
- );
1270
- font-weight: var(
1271
- --_ctm-mob-dn-bd-ft-wt,
1272
- var(--_ctm-tab-dn-bd-ft-wt, var(--_ctm-dn-bd-ft-wt))
1273
- );
1274
- font-style: var(
1275
- --_ctm-mob-dn-bd-ft-se-ic,
1276
- var(--_ctm-tab-dn-bd-ft-se-ic, var(--_ctm-dn-bd-ft-se-ic))
1277
- );
1278
- text-align: var(
1279
- --_ctm-mob-dn-bd-tt-an,
1280
- var(--_ctm-tab-dn-bd-tt-an, var(--_ctm-dn-bd-tt-an))
1281
- );
1282
- letter-spacing: var(
1283
- --_ctm-mob-dn-bd-lr-sg,
1284
- var(--_ctm-tab-dn-bd-lr-sg, var(--_ctm-dn-bd-lr-sg))
1285
- );
1286
- line-height: var(
1287
- --_ctm-mob-dn-bd-le-ht,
1288
- var(--_ctm-tab-dn-bd-le-ht, var(--_ctm-dn-bd-le-ht))
1289
- );
1290
- text-decoration: var(
1291
- --_ctm-mob-dn-bd-ue,
1292
- var(--_ctm-tab-dn-bd-ue, var(--_ctm-dn-bd-ue))
1293
- );
1294
- @include ad-text-transform(--_ctm-dn-bd);
1295
- @include ad-text-overflow;
1296
- }
1297
- }
1298
- .code {
1299
- display: flex;
1300
- align-items: center;
1301
- gap: 6px;
1302
- @include ad-section-box(--_ctm-dn-ce);
696
+ ;
697
+ // Same re-pointing trick as the icon vars above: the padding and
698
+ // shadow declarations stay written once and simply re-resolve
699
+ // against the selected state's values.
700
+ --_sf-at-btn-pg: #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-pg, 0)};
701
+ --_sf-at-btn-sw: #{prepareMediaVariable(
702
+ --_ctm-dn-gd-vw-cl-se-bn-sd-se-sw-ae,
703
+ 0 0)
704
+ }
1303
705
 
1304
- .code__icon {
1305
- @include ad-section-icon(--_ctm-dn-ce);
1306
- }
706
+ #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-sw-br, 0)} #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-sw-sd, 0)} #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-sd-se-sw-cr, transparent)};
707
+ // background: var(--_gray-200);
708
+ }
1307
709
 
1308
- .value {
1309
- // padding-block-end: var(--_sf-dc-pd-bt);
1310
-
1311
- color: var(
1312
- --_ctm-mob-dn-ce-cr-dc,
1313
- var(--_ctm-tab-dn-ce-cr-dc, var(--_ctm-dn-ce-cr-dc))
1314
- );
1315
- font-family: var(
1316
- --_ctm-mob-dn-ce-ft-fy-dc,
1317
- var(--_ctm-tab-dn-ce-ft-fy-dc, var(--_ctm-dn-ce-ft-fy-dc))
1318
- );
1319
- font-size: var(
1320
- --_ctm-mob-dn-ce-ft-se-dc,
1321
- var(--_ctm-tab-dn-ce-ft-se-dc, var(--_ctm-dn-ce-ft-se-dc))
1322
- );
1323
- font-weight: var(
1324
- --_ctm-mob-dn-ce-ft-wt-dc,
1325
- var(--_ctm-tab-dn-ce-ft-wt-dc, var(--_ctm-dn-ce-ft-wt-dc))
1326
- );
1327
- font-style: var(
1328
- --_ctm-mob-dn-ce-ft-se-ic-dc,
1329
- var(--_ctm-tab-dn-ce-ft-se-ic-dc, var(--_ctm-dn-ce-ft-se-ic-dc))
1330
- );
1331
- text-align: var(
1332
- --_ctm-mob-dn-ce-tt-an-dc,
1333
- var(--_ctm-tab-dn-ce-tt-an-dc, var(--_ctm-dn-ce-tt-an-dc))
1334
- );
1335
- letter-spacing: var(
1336
- --_ctm-mob-dn-ce-lr-sg-dc,
1337
- var(--_ctm-tab-dn-ce-lr-sg-dc, var(--_ctm-dn-ce-lr-sg-dc))
1338
- );
1339
- line-height: var(
1340
- --_ctm-mob-dn-ce-le-ht-dc,
1341
- var(--_ctm-tab-dn-ce-le-ht-dc, var(--_ctm-dn-ce-le-ht-dc))
1342
- );
1343
- text-decoration: var(
1344
- --_ctm-mob-dn-ce-ue-dc,
1345
- var(--_ctm-tab-dn-ce-ue-dc, var(--_ctm-dn-ce-ue-dc))
1346
- );
1347
- @include ad-text-transform(--_ctm-dn-ce, "-dc");
1348
- @include ad-text-overflow(--_sf-line-clamp-desc);
1349
- }
1350
- .label {
1351
- color: var(--_ctm-mob-dn-ce-cr, var(--_ctm-tab-dn-ce-cr, var(--_ctm-dn-ce-cr)));
1352
- font-family: var(
1353
- --_ctm-mob-dn-ce-ft-fy,
1354
- var(--_ctm-tab-dn-ce-ft-fy, var(--_ctm-dn-ce-ft-fy))
1355
- );
1356
- font-size: var(
1357
- --_ctm-mob-dn-ce-ft-se,
1358
- var(--_ctm-tab-dn-ce-ft-se, var(--_ctm-dn-ce-ft-se))
1359
- );
1360
- font-weight: var(
1361
- --_ctm-mob-dn-ce-ft-wt,
1362
- var(--_ctm-tab-dn-ce-ft-wt, var(--_ctm-dn-ce-ft-wt))
1363
- );
1364
- font-style: var(
1365
- --_ctm-mob-dn-ce-ft-se-ic,
1366
- var(--_ctm-tab-dn-ce-ft-se-ic, var(--_ctm-dn-ce-ft-se-ic))
1367
- );
1368
- text-align: var(
1369
- --_ctm-mob-dn-ce-tt-an,
1370
- var(--_ctm-tab-dn-ce-tt-an, var(--_ctm-dn-ce-tt-an))
1371
- );
1372
- letter-spacing: var(
1373
- --_ctm-mob-dn-ce-lr-sg,
1374
- var(--_ctm-tab-dn-ce-lr-sg, var(--_ctm-dn-ce-lr-sg))
1375
- );
1376
- line-height: var(
1377
- --_ctm-mob-dn-ce-le-ht,
1378
- var(--_ctm-tab-dn-ce-le-ht, var(--_ctm-dn-ce-le-ht))
1379
- );
1380
- text-decoration: var(
1381
- --_ctm-mob-dn-ce-ue,
1382
- var(--_ctm-tab-dn-ce-ue, var(--_ctm-dn-ce-ue))
1383
- );
1384
- @include ad-text-transform(--_ctm-dn-ce);
1385
- @include ad-text-overflow;
1386
- }
1387
- }
1388
- .price {
1389
- background-color: var(
1390
- --_ctm-mob-dn-pe-bd-cr,
1391
- var(--_ctm-tab-dn-pe-bd-cr, var(--_ctm-dn-pe-bd-cr))
1392
- );
1393
-
1394
- border-color: var(
1395
- --_ctm-mob-dn-pe-br-cr,
1396
- var(--_ctm-tab-dn-pe-br-cr, var(--_ctm-dn-pe-br-cr))
1397
- );
1398
-
1399
- border-style: var(
1400
- --_ctm-mob-dn-pe-br-se,
1401
- var(--_ctm-tab-dn-pe-br-se, var(--_ctm-dn-pe-br-se))
1402
- );
1403
-
1404
- border-width: var(
1405
- --_ctm-mob-dn-pe-br-wh,
1406
- var(--_ctm-tab-dn-pe-br-wh, var(--_ctm-dn-pe-br-wh))
1407
- );
1408
-
1409
- border-radius: var(
1410
- --_ctm-mob-dn-pe-br-rs,
1411
- var(--_ctm-tab-dn-pe-br-rs, var(--_ctm-dn-pe-br-rs))
1412
- );
1413
-
1414
- box-shadow: var(
1415
- --_show-shadow,
1416
- var(--_ctm-mob-dn-pe-sw-ae, var(--_ctm-tab-dn-pe-sw-ae, var(--_ctm-dn-pe-sw-ae)))
1417
- var(--_ctm-mob-dn-pe-sw-br, var(--_ctm-tab-dn-pe-sw-br, var(--_ctm-dn-pe-sw-br)))
1418
- var(--_ctm-mob-dn-pe-sw-sd, var(--_ctm-tab-dn-pe-sw-sd, var(--_ctm-dn-pe-sw-sd)))
1419
- var(--_ctm-mob-dn-pe-sw-cr, var(--_ctm-tab-dn-pe-sw-cr, var(--_ctm-dn-pe-sw-cr)))
1420
- );
1421
- white-space: nowrap;
1422
-
1423
- height: 100%;
1424
-
1425
- color: var(--_ctm-mob-dn-pe-cr, var(--_ctm-tab-dn-pe-cr, var(--_ctm-dn-pe-cr)));
1426
- font-family: var(
1427
- --_ctm-mob-dn-pe-ft-fy,
1428
- var(--_ctm-tab-dn-pe-ft-fy, var(--_ctm-dn-pe-ft-fy))
1429
- );
1430
- font-size: var(
1431
- --_ctm-mob-dn-pe-ft-se,
1432
- var(--_ctm-tab-dn-pe-ft-se, var(--_ctm-dn-pe-ft-se))
1433
- );
1434
- font-weight: var(
1435
- --_ctm-mob-dn-pe-ft-wt,
1436
- var(--_ctm-tab-dn-pe-ft-wt, var(--_ctm-dn-pe-ft-wt))
1437
- );
1438
- font-style: var(
1439
- --_ctm-mob-dn-pe-ft-se-ic,
1440
- var(--_ctm-tab-dn-pe-ft-se-ic, var(--_ctm-dn-pe-ft-se-ic))
1441
- );
1442
- text-align: var(
1443
- --_ctm-mob-dn-pe-tt-an,
1444
- var(--_ctm-tab-dn-pe-tt-an, var(--_ctm-dn-pe-tt-an))
1445
- );
1446
- letter-spacing: var(
1447
- --_ctm-mob-dn-pe-lr-sg,
1448
- var(--_ctm-tab-dn-pe-lr-sg, var(--_ctm-dn-pe-lr-sg))
1449
- );
1450
- line-height: var(
1451
- --_ctm-mob-dn-pe-le-ht,
1452
- var(--_ctm-tab-dn-pe-le-ht, var(--_ctm-dn-pe-le-ht))
1453
- );
1454
- text-decoration: var(
1455
- --_ctm-mob-dn-pe-ue,
1456
- var(--_ctm-tab-dn-pe-ue, var(--_ctm-dn-pe-ue))
1457
- );
1458
- padding: prepareMediaVariable(--_ctm-dn-pe-pg);
1459
- @include ad-text-transform(--_ctm-dn-pe);
1460
- @include ad-text-overflow;
1461
- }
1462
- }
710
+ // &.active {
711
+ // background-color: #ced4f6;
712
+ // button {
713
+ // svg {
714
+ // path {
715
+ // stroke: var(--_primary-500);
716
+ // }
717
+ // }
718
+ // }
719
+ // }
720
+ // &:first-child {
721
+ // border-right: 1px solid var(--_gray-200);
722
+ // }
723
+
724
+ svg {
725
+ width: calc(#{$size} * 1);
726
+ height: calc(#{$size} * 1);
727
+
728
+ path {
729
+ stroke: var(--_sf-at-pt-cl,
730
+ #{prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-in-c1, var(--_gray-500))});
731
+ // Overrides the stroke-width presentation attribute baked into the icon markup.
732
+ stroke-width: prepareMediaVariable(--_ctm-dn-gd-vw-cl-se-bn-dt-se-se-wh, 1.25);
733
+ }
734
+ }
1463
735
 
1464
- // Quota details styling for the embedded QuotaDetailsContent, rebound to
1465
- // the Allocations quotaDetails CSS-variable paths.
1466
- @import "./allocations-quota-details.scss";
1467
- }
1468
- }
736
+ &:first-of-type {
737
+ border-radius: 4px 0 0 4px;
738
+ }
1469
739
 
1470
- .allocation__profile__tabs {
1471
- width: 100%;
1472
- background-color: var(
1473
- --_ctm-mob-dn-sr-wt-se-bd-cr,
1474
- var(--_ctm-tab-dn-sr-wt-se-bd-cr, var(--_ctm-dn-sr-wt-se-bd-cr))
1475
- );
1476
- // padding: var(--_ctm-mob-lt-pg, var(--_ctm-tab-lt-pg, var(--_ctm-lt-pg)));
740
+ &:last-of-type {
741
+ border-radius: 0 4px 4px 0;
742
+ }
743
+ }
744
+ }
745
+
746
+ // products header styles
747
+ .showcase__header {
748
+ display: flex;
749
+ justify-content: space-between;
750
+ padding: 16px 0;
751
+ margin-bottom: 16px;
752
+ border-bottom: var(--Gray-200, #eaecf0) 1px solid;
753
+
754
+ .quota__details {
755
+ display: flex;
756
+ align-items: center;
757
+ gap: 8px;
758
+ }
759
+
760
+ .button__group {
761
+ display: flex;
762
+ gap: 12px;
763
+ }
764
+
765
+ .product__views {
766
+ display: flex;
767
+ background-color: #fff;
768
+ border: 1px solid var(--_gray-300);
769
+ border-radius: 6px;
770
+ height: 40px;
771
+ overflow: hidden;
772
+
773
+ .btn {
774
+ display: inline-block;
775
+ padding: 8px;
776
+ display: flex;
777
+ align-items: center;
778
+ justify-content: center;
779
+ cursor: pointer;
780
+
781
+ button {
1477
782
  display: flex;
1478
- flex-direction: column;
1479
- --_sf-gp: var(
1480
- --_ctm-mob-lt-im-sg,
1481
- var(--_ctm-tab-lt-im-sg, var(--_ctm-lt-im-sg, var(--_ctm-lt-im-sg), 16px))
1482
- );
1483
- --_sf-cd-gp: calc(var(--_sf-gp) * 0.5);
1484
- row-gap: var(--_sf-gp);
1485
- width: 100%;
1486
- height: 100%;
1487
- border-color: var(
1488
- --_ctm-mob-dn-sr-wt-se-br-cr,
1489
- var(--_ctm-tab-dn-sr-wt-se-br-cr, var(--_ctm-dn-sr-wt-se-br-cr))
1490
- );
1491
- border-style: var(
1492
- --_ctm-mob-dn-sr-wt-se-br-se,
1493
- var(--_ctm-tab-dn-sr-wt-se-br-se, var(--_ctm-dn-sr-wt-se-br-se))
1494
- );
1495
- border-width: var(
1496
- --_ctm-mob-dn-sr-wt-se-br-wh,
1497
- var(--_ctm-tab-dn-sr-wt-se-br-wh, var(--_ctm-dn-sr-wt-se-br-wh))
1498
- );
1499
- border-radius: var(
1500
- --_ctm-mob-dn-sr-wt-se-br-rs,
1501
- var(--_ctm-tab-dn-sr-wt-se-br-rs, var(--_ctm-dn-sr-wt-se-br-rs))
1502
- );
1503
- box-shadow: var(
1504
- --_show-shadow,
1505
- var(
1506
- --_ctm-mob-dn-sr-wt-se-sw-ae,
1507
- var(--_ctm-tab-dn-sr-wt-se-sw-ae, var(--_ctm-dn-sr-wt-se-sw-ae))
1508
- )
1509
- var(
1510
- --_ctm-mob-dn-sr-wt-se-sw-br,
1511
- var(--_ctm-tab-dn-sr-wt-se-sw-br, var(--_ctm-dn-sr-wt-se-sw-br))
1512
- )
1513
- var(
1514
- --_ctm-mob-dn-sr-wt-se-sw-sd,
1515
- var(--_ctm-tab-dn-sr-wt-se-sw-sd, var(--_ctm-dn-sr-wt-se-sw-sd))
1516
- )
1517
- var(
1518
- --_ctm-mob-dn-sr-wt-se-sw-cr,
1519
- var(--_ctm-tab-dn-sr-wt-se-sw-cr, var(--_ctm-dn-sr-wt-se-sw-cr))
1520
- )
1521
- );
1522
- .profile__button {
1523
- &[data-show-shadow="false"] {
1524
- --_show-shadow: none;
1525
- }
1526
- &[data-icon-position="left"] {
1527
- --_sf-fd-bn: row;
1528
- }
1529
- &[data-icon-position="right"] {
1530
- --_sf-fd-bn: row-reverse;
1531
- }
1532
- &[data-icon-position="center"] {
1533
- --_sf-fd-bn: row;
1534
- }
783
+ }
1535
784
 
1536
- &:hover {
1537
- --_sf-hr-bd-cr: var(
1538
- --_ctm-mob-dn-sr-tb-hr-se-bd-cr,
1539
- var(--_ctm-tab-dn-sr-tb-hr-se-bd-cr, var(--_ctm-dn-sr-tb-hr-se-bd-cr))
1540
- );
1541
- --_sf-hr-br-cr: var(
1542
- --_ctm-mob-dn-sr-tb-hr-se-br-cr,
1543
- var(--_ctm-tab-dn-sr-tb-hr-se-br-cr, var(--_ctm-dn-sr-tb-hr-se-br-cr))
1544
- );
1545
- --_sf-hr-br-se: var(
1546
- --_ctm-mob-dn-sr-tb-hr-se-br-se,
1547
- var(--_ctm-tab-dn-sr-tb-hr-se-br-se, var(--_ctm-dn-sr-tb-hr-se-br-se))
1548
- );
1549
- --_sf-hr-br-wh: var(
1550
- --_ctm-mob-dn-sr-tb-hr-se-br-wh,
1551
- var(--_ctm-tab-dn-sr-tb-hr-se-br-wh, var(--_ctm-dn-sr-tb-hr-se-br-wh))
1552
- );
1553
- --_sf-hr-br-rs: var(
1554
- --_ctm-mob-dn-sr-tb-hr-se-br-rs,
1555
- var(--_ctm-tab-dn-sr-tb-hr-se-br-rs, var(--_ctm-dn-sr-tb-hr-se-br-rs))
1556
- );
1557
- --_sf-hr-at: var(
1558
- --_ctm-mob-dn-sr-tb-hr-se-at,
1559
- var(--_ctm-tab-dn-sr-tb-hr-se-at, var(--_ctm-dn-sr-tb-hr-se-at))
1560
- );
1561
- --_sf-hr-in-ad-tt-sg: var(
1562
- --_ctm-mob-dn-sr-tb-hr-se-in-ad-tt-sg,
1563
- var(--_ctm-tab-dn-sr-tb-hr-se-in-ad-tt-sg, var(--_ctm-dn-sr-tb-hr-se-in-ad-tt-sg))
1564
- );
1565
-
1566
- // for shadow
1567
- --_sf-hr-sw-ae: var(
1568
- --_ctm-mob-dn-sr-tb-hr-se-sw-ae,
1569
- var(--_ctm-tab-dn-sr-tb-hr-se-sw-ae, var(--_ctm-dn-sr-tb-hr-se-sw-ae))
1570
- );
1571
- --_sf-hr-sw-br: var(
1572
- --_ctm-mob-dn-sr-tb-hr-se-sw-br,
1573
- var(--_ctm-tab-dn-sr-tb-hr-se-sw-br, var(--_ctm-dn-sr-tb-hr-se-sw-br))
1574
- );
1575
- --_sf-hr-sw-hr: var(
1576
- --_ctm-mob-dn-sr-tb-hr-se-sw-hr,
1577
- var(--_ctm-tab-dn-sr-tb-hr-se-sw-hr, var(--_ctm-dn-sr-tb-hr-se-sw-hr))
1578
- );
1579
- --_sf-hr-sw-cr: var(
1580
- --_ctm-mob-dn-sr-tb-hr-se-sw-cr,
1581
- var(--_ctm-tab-dn-sr-tb-hr-se-sw-cr, var(--_ctm-dn-sr-tb-hr-se-sw-cr))
1582
- );
1583
-
1584
- // for font
1585
-
1586
- --_sf-hr-cr: var(
1587
- --_ctm-mob-dn-sr-tb-hr-se-cr,
1588
- var(--_ctm-tab-dn-sr-tb-hr-se-cr, var(--_ctm-dn-sr-tb-hr-se-cr))
1589
- );
1590
- --_sf-hr-ft-fy: var(
1591
- --_ctm-mob-dn-sr-tb-hr-se-ft-fy,
1592
- var(--_ctm-tab-dn-sr-tb-hr-se-ft-fy, var(--_ctm-dn-sr-tb-hr-se-ft-fy))
1593
- );
1594
- --_sf-hr-ft-se: var(
1595
- --_ctm-mob-dn-sr-tb-hr-se-ft-se,
1596
- var(--_ctm-tab-dn-sr-tb-hr-se-ft-se, var(--_ctm-dn-sr-tb-hr-se-ft-se))
1597
- );
1598
- --_sf-hr-ft-wt: var(
1599
- --_ctm-mob-dn-sr-tb-hr-se-ft-wt,
1600
- var(--_ctm-tab-dn-sr-tb-hr-se-ft-wt, var(--_ctm-dn-sr-tb-hr-se-ft-wt))
1601
- );
1602
- --_sf-hr-ft-se-ic: var(
1603
- --_ctm-mob-dn-sr-tb-hr-se-ft-se-ic,
1604
- var(--_ctm-tab-dn-sr-tb-hr-se-ft-se-ic, var(--_ctm-dn-sr-tb-hr-se-ft-se-ic))
1605
- );
1606
- --_sf-hr-tt-an: var(
1607
- --_ctm-mob-dn-sr-tb-hr-se-tt-an,
1608
- var(--_ctm-tab-dn-sr-tb-hr-se-tt-an, var(--_ctm-dn-sr-tb-hr-se-tt-an))
1609
- );
1610
- --_sf-hr-lr-sg: var(
1611
- --_ctm-mob-dn-sr-tb-hr-se-lr-sg,
1612
- var(--_ctm-tab-dn-sr-tb-hr-se-lr-sg, var(--_ctm-dn-sr-tb-hr-se-lr-sg))
1613
- );
1614
- --_sf-hr-le-ht: var(
1615
- --_ctm-mob-dn-sr-tb-hr-se-le-ht,
1616
- var(--_ctm-tab-dn-sr-tb-hr-se-le-ht, var(--_ctm-dn-sr-tb-hr-se-le-ht))
1617
- );
1618
- --_sf-hr-tt-tm: var(
1619
- --_ctm-mob-dn-sr-tb-hr-se-tt-tm,
1620
- var(--_ctm-tab-dn-sr-tb-hr-se-tt-tm, var(--_ctm-dn-sr-tb-hr-se-tt-tm))
1621
- );
1622
- --_sf-hr-wd-wp: var(
1623
- --_ctm-mob-dn-sr-tb-hr-se-wd-wp,
1624
- var(--_ctm-tab-dn-sr-tb-hr-se-wd-wp, var(--_ctm-dn-sr-tb-hr-se-wd-wp))
1625
- );
1626
- --_sf-hr-wd-bk: var(
1627
- --_ctm-mob-dn-sr-tb-hr-se-wd-bk,
1628
- var(--_ctm-tab-dn-sr-tb-hr-se-wd-bk, var(--_ctm-dn-sr-tb-hr-se-wd-bk))
1629
- );
1630
-
1631
- --_sf-hr-in-se: var(
1632
- --_ctm-mob-dn-sr-tb-hr-se-in-se,
1633
- var(--_ctm-tab-dn-sr-tb-hr-se-in-se, var(--_ctm-dn-sr-tb-hr-se-in-se))
1634
- );
1635
- --_sf-hr-in-se: var(
1636
- --_ctm-mob-dn-sr-tb-hr-se-in-se,
1637
- var(--_ctm-tab-dn-sr-tb-hr-se-in-se, var(--_ctm-dn-sr-tb-hr-se-in-se))
1638
- );
1639
- --_sf-hr-in-c1: var(
1640
- --_ctm-mob-dn-sr-tb-hr-se-in-c1,
1641
- var(--_ctm-tab-dn-sr-tb-hr-se-in-c1, var(--_ctm-dn-sr-tb-hr-se-in-c1))
1642
- );
1643
- --_sf-hr-ue: var(
1644
- --_ctm-mob-dn-sr-tb-hr-se-ue,
1645
- var(--_ctm-tab-dn-sr-tb-hr-se-ue, var(--_ctm-dn-sr-tb-hr-se-ue))
1646
- );
1647
-
1648
- // for pading and width
1649
- --_sf-hr-pg: var(
1650
- --_ctm-mob-dn-sr-tb-hr-se-pg,
1651
- var(--_ctm-tab-dn-sr-tb-hr-se-pg, var(--_ctm-dn-sr-tb-hr-se-pg))
1652
- );
1653
- --_sf-hr-wh: var(
1654
- --_ctm-mob-dn-sr-tb-hr-se-wh,
1655
- var(--_ctm-tab-dn-sr-tb-hr-se-wh, var(--_ctm-dn-sr-tb-hr-se-wh))
1656
- );
1657
-
1658
- &[data-hover-show-shadow="false"] {
1659
- --_hover-show-shadow: none;
1660
- }
1661
- &[data-hover-show-icon="false"] {
1662
- --_hover-show-icon: none;
785
+ &:hover {
786
+ background-color: var(--_gray-100);
787
+ }
788
+
789
+ &.active {
790
+ background-color: #ced4f6;
791
+
792
+ button {
793
+ svg {
794
+ path {
795
+ stroke: var(--_primary-500);
1663
796
  }
1664
797
  }
798
+ }
799
+ }
1665
800
 
1666
- background-color: var(--_sf-hr-bd-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-bd-cr));
801
+ &:first-child {
802
+ border-right: 1px solid var(--_gray-200);
803
+ }
804
+ }
805
+ }
806
+ }
1667
807
 
1668
- padding: var(--_sf-hr-pg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-pg));
1669
- display: flex;
1670
- flex-direction: var(--_sf-fd-bn);
1671
- align-items: center;
808
+ // add to cart button styles
809
+ .primary__btn {
810
+ display: flex;
811
+ gap: 8px;
812
+ height: 44px;
813
+ padding: 8px 14px;
814
+ background-color: var(--_primary-500);
815
+ border-radius: 6px;
816
+ color: #fff;
817
+ font-weight: 600;
818
+ height: 40px;
819
+ display: inline-flex;
820
+ cursor: pointer;
821
+
822
+ &:hover {
823
+ background-color: var(--_primary-500);
824
+ }
1672
825
 
1673
- justify-content: var(--_sf-hr-at, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-at));
1674
- gap: var(--_sf-hr-in-ad-tt-sg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-in-ad-tt-sg));
826
+ &.disable__btn {
827
+ cursor: not-allowed;
828
+ opacity: 0.5;
829
+ }
830
+ }
1675
831
 
1676
- border-radius: var(--_sf-hr-br-rs, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-rs));
832
+ // product list styles
833
+ .showcase__product__list {
834
+ .product__card {
835
+ .category__image {
836
+ width: 100%;
837
+ height: 100%;
838
+ object-fit: cover;
839
+ }
840
+ }
1677
841
 
1678
- box-shadow: var(--_sf-hr-sw-ae, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-ae))
1679
- var(--_sf-hr-sw-br, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-br))
1680
- var(--_sf-hr-sw-sd, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-sd))
1681
- var(--_sf-hr-sw-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-cr));
842
+ &[data-list-view="grid"] {
843
+ // grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
844
+ // grid-template-columns: repeat(
845
+ // var(
846
+ // --_ctm-mob-dn-an-an-im-is-pr-rw,
847
+ // var(--_ctm-tab-dn-an-an-im-is-pr-rw, var(--_ctm-dn-an-an-im-is-pr-rw))
848
+ // ),
849
+ // 1fr
850
+ // );
851
+ --_sf-cl-count: #{prepareMediaVariable(--_ctm-dn-an-an-im-is-pr-rw, 1)};
852
+ // The column width has to be worked out from the COLUMN gap alone — it is
853
+ // the only one that eats into the row's width.
854
+ --_sf-cl-gp: #{prepareMediaVariable(
855
+ --_ctm-dn-an-an-im-cn-gp,
856
+ prepareMediaVariable(--_ctm-dn-an-an-im-im-gp, 0px))
857
+ }
1682
858
 
1683
- &[data-show-border="true"] {
1684
- border-color: var(--_sf-hr-br-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-cr));
859
+ ;
860
+ grid-template-columns: getRepeatColWidth(--_sf-cl-count, --_sf-cl-gp);
1685
861
 
1686
- border-style: var(--_sf-hr-br-se, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-se));
862
+ // gap: 24px;
863
+ .product__card {
864
+ flex-direction: column;
1687
865
 
1688
- border-width: var(--_sf-hr-br-wh, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-wh));
1689
- }
866
+ .card__img__container {
867
+ width: 100%;
868
+ }
869
+ }
870
+ }
1690
871
 
1691
- // text styles
872
+ &[data-list-view="list"] {
873
+ grid-template-columns: auto;
1692
874
 
1693
- color: var(--_sf-hr-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-cr));
875
+ .product__card {
876
+ flex-direction: row;
877
+ align-items: prepareMediaVariable(--_ctm-lt-an-is, start);
1694
878
 
1695
- font-family: var(--_sf-hr-ft-fy, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-fy));
879
+ // gap: 24px;
880
+ .card__img__container {
881
+ width: 250px;
882
+ }
883
+ }
884
+ }
1696
885
 
1697
- font-size: var(--_sf-hr-ft-se, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-se));
886
+ display: grid;
887
+ // Gap BETWEEN the item cards, now one control per axis. Both fall back to
888
+ // the single `itemGap` this section used to carry, so a grid spaced before
889
+ // the split keeps its spacing until either axis is touched.
890
+ row-gap: prepareMediaVariable(--_ctm-dn-an-an-im-rw-gp,
891
+ prepareMediaVariable(--_ctm-dn-an-an-im-im-gp, 0px));
892
+ column-gap: prepareMediaVariable(--_ctm-dn-an-an-im-cn-gp,
893
+ prepareMediaVariable(--_ctm-dn-an-an-im-im-gp, 0px));
894
+
895
+ .product__card {
896
+ // product card styles
897
+ display: flex;
898
+ // Item Card > Item Gap: image container <-> details container. 12px is
899
+ // what was hardcoded here, so an untouched card does not move.
900
+ gap: prepareMediaVariable(--_ctm-dn-im-cd-im-gp, 12px);
901
+
902
+ background-color: var(--_ctm-mob-dn-im-cd-bd-cr,
903
+ var(--_ctm-tab-dn-im-cd-bd-cr, var(--_ctm-dn-im-cd-bd-cr)));
904
+
905
+ border-color: var(--_ctm-mob-dn-im-cd-br-cr,
906
+ var(--_ctm-tab-dn-im-cd-br-cr, var(--_ctm-dn-im-cd-br-cr)));
907
+
908
+ border-style: var(--_ctm-mob-dn-im-cd-br-se,
909
+ var(--_ctm-tab-dn-im-cd-br-se, var(--_ctm-dn-im-cd-br-se)));
910
+
911
+ border-width: var(--_ctm-mob-dn-im-cd-br-wh,
912
+ var(--_ctm-tab-dn-im-cd-br-wh, var(--_ctm-dn-im-cd-br-wh)));
913
+
914
+ border-radius: var(--_ctm-mob-dn-im-cd-br-rs,
915
+ var(--_ctm-tab-dn-im-cd-br-rs, var(--_ctm-dn-im-cd-br-rs)));
916
+
917
+ box-shadow: var(--_show-shadow,
918
+ var(--_ctm-mob-dn-im-cd-sw-ae,
919
+ var(--_ctm-tab-dn-im-cd-sw-ae, var(--_ctm-dn-im-cd-sw-ae))) var(--_ctm-mob-dn-im-cd-sw-br,
920
+ var(--_ctm-tab-dn-im-cd-sw-br, var(--_ctm-dn-im-cd-sw-br))) var(--_ctm-mob-dn-im-cd-sw-sd,
921
+ var(--_ctm-tab-dn-im-cd-sw-sd, var(--_ctm-dn-im-cd-sw-sd))) var(--_ctm-mob-dn-im-cd-sw-cr,
922
+ var(--_ctm-tab-dn-im-cd-sw-cr, var(--_ctm-dn-im-cd-sw-cr))));
923
+ padding: var(--_ctm-mob-dn-im-cd-pg,
924
+ var(--_ctm-tab-dn-im-cd-pg, var(--_ctm-dn-im-cd-pg)));
925
+
926
+ .card__img__container {
927
+ height: 300px;
928
+ background-color: #fff;
929
+ display: flex;
930
+ align-items: flex-start;
931
+ justify-content: center;
932
+ border-radius: 6px;
933
+
934
+ &[data-has-link="true"] {
935
+ cursor: pointer;
936
+ }
1698
937
 
1699
- font-weight: var(--_sf-hr-ft-wt, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-wt));
938
+ .placeholder__image {
939
+ width: 100%;
940
+ height: 100%;
941
+ object-fit: cover;
942
+ }
943
+ }
1700
944
 
1701
- font-style: var(--_sf-hr-ft-se-ic, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-se-ic));
945
+ .price_details {
946
+ display: flex;
947
+ flex-direction: column;
948
+ gap: 8px;
949
+ align-items: prepareMediaVariable(--_ctm-lt-jy-ct, start);
950
+
951
+ .product__name {
952
+ background-color: var(--_ctm-mob-dn-ne-bd-cr,
953
+ var(--_ctm-tab-dn-ne-bd-cr, var(--_ctm-dn-ne-bd-cr)));
954
+
955
+ border-color: var(--_ctm-mob-dn-ne-br-cr,
956
+ var(--_ctm-tab-dn-ne-br-cr, var(--_ctm-dn-ne-br-cr)));
957
+
958
+ border-style: var(--_ctm-mob-dn-ne-br-se,
959
+ var(--_ctm-tab-dn-ne-br-se, var(--_ctm-dn-ne-br-se)));
960
+
961
+ border-width: var(--_ctm-mob-dn-ne-br-wh,
962
+ var(--_ctm-tab-dn-ne-br-wh, var(--_ctm-dn-ne-br-wh)));
963
+
964
+ border-radius: var(--_ctm-mob-dn-ne-br-rs,
965
+ var(--_ctm-tab-dn-ne-br-rs, var(--_ctm-dn-ne-br-rs)));
966
+
967
+ box-shadow: var(--_show-shadow,
968
+ var(--_ctm-mob-dn-ne-sw-ae, var(--_ctm-tab-dn-ne-sw-ae, var(--_ctm-dn-ne-sw-ae))) var(--_ctm-mob-dn-ne-sw-br,
969
+ var(--_ctm-tab-dn-ne-sw-br, var(--_ctm-dn-ne-sw-br))) var(--_ctm-mob-dn-ne-sw-sd,
970
+ var(--_ctm-tab-dn-ne-sw-sd, var(--_ctm-dn-ne-sw-sd))) var(--_ctm-mob-dn-ne-sw-cr,
971
+ var(--_ctm-tab-dn-ne-sw-cr, var(--_ctm-dn-ne-sw-cr))));
972
+ white-space: var(--_sf-sc-pt-lt-we-se, nowrap);
973
+
974
+ height: 100%;
975
+
976
+ color: var(--_ctm-mob-dn-ne-cr, var(--_ctm-tab-dn-ne-cr, var(--_ctm-dn-ne-cr)));
977
+ font-family: var(--_ctm-mob-dn-ne-ft-fy,
978
+ var(--_ctm-tab-dn-ne-ft-fy, var(--_ctm-dn-ne-ft-fy)));
979
+ text-transform: var(--_ctm-mob-dn-ne-tt-tm,
980
+ var(--_ctm-tab-dn-ne-tt-tm, var(--_ctm-dn-ne-tt-tm)));
981
+ word-wrap: var(--_ctm-mob-dn-ne-wd-wp,
982
+ var(--_ctm-tab-dn-ne-wd-wp, var(--_ctm-dn-ne-wd-wp)));
983
+ word-break: var(--_ctm-mob-dn-ne-wd-bk,
984
+ var(--_ctm-tab-dn-ne-wd-bk, var(--_ctm-dn-ne-wd-bk)));
985
+ font-size: var(--_ctm-mob-dn-ne-ft-se,
986
+ var(--_ctm-tab-dn-ne-ft-se, var(--_ctm-dn-ne-ft-se)));
987
+ font-weight: var(--_ctm-mob-dn-ne-ft-wt,
988
+ var(--_ctm-tab-dn-ne-ft-wt, var(--_ctm-dn-ne-ft-wt)));
989
+ font-style: var(--_ctm-mob-dn-ne-ft-se-ic,
990
+ var(--_ctm-tab-dn-ne-ft-se-ic, var(--_ctm-dn-ne-ft-se-ic)));
991
+ text-align: var(--_ctm-mob-dn-ne-tt-an,
992
+ var(--_ctm-tab-dn-ne-tt-an, var(--_ctm-dn-ne-tt-an)));
993
+ letter-spacing: var(--_ctm-mob-dn-ne-lr-sg,
994
+ var(--_ctm-tab-dn-ne-lr-sg, var(--_ctm-dn-ne-lr-sg)));
995
+ line-height: var(--_ctm-mob-dn-ne-le-ht,
996
+ var(--_ctm-tab-dn-ne-le-ht, var(--_ctm-dn-ne-le-ht)));
997
+ text-decoration: var(--_ctm-mob-dn-ne-ue,
998
+ var(--_ctm-tab-dn-ne-ue, var(--_ctm-dn-ne-ue)));
999
+ padding: prepareMediaVariable(--_ctm-dn-ne-pg);
1000
+ @include ad-text-transform(--_ctm-dn-ne);
1001
+
1002
+ &>span {
1003
+ width: 100%;
1004
+ @include ad-text-overflow;
1005
+ }
1702
1006
 
1703
- text-align: var(--_sf-hr-tt-an, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-tt-an));
1007
+ &[data-has-link="true"] {
1008
+ cursor: pointer;
1704
1009
 
1705
- letter-spacing: var(--_sf-hr-lr-sg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-lr-sg));
1010
+ &:hover {
1011
+ color: var(--_primary-500);
1012
+ }
1013
+ }
1014
+ }
1706
1015
 
1707
- line-height: var(--_sf-hr-le-ht, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-le-ht));
1016
+ .brand__container {
1017
+ display: flex;
1018
+ flex-wrap: wrap;
1019
+ align-items: center;
1020
+ gap: 8px;
1021
+ color: var(--_gray-600);
1022
+ font-weight: 500;
1023
+
1024
+ // Item Card > Brand & Code Direction. Horizontal is the original
1025
+ // side-by-side row; vertical stacks the two blocks and lets each
1026
+ // start at the left rather than being centred against the other.
1027
+ &[data-direction="vertical"] {
1028
+ flex-direction: column;
1029
+ align-items: flex-start;
1030
+ flex-wrap: nowrap;
1031
+ }
1032
+ }
1033
+ }
1708
1034
 
1709
- text-decoration: var(--_sf-hr-ue, prepareMediaVariable(--_ctm-dn-dt-ue));
1035
+ .brand {
1036
+ display: flex;
1037
+ align-items: center;
1038
+ gap: 6px;
1039
+ @include ad-section-box(--_ctm-dn-bd);
1710
1040
 
1711
- // Same shape as the font rules above: the base value is the default
1712
- // state, and the `&:hover` block below re-points --_sf-hr-* at the hover
1713
- // state so this declaration re-resolves without being repeated.
1714
- text-transform: var(
1715
- --_sf-hr-tt-tm,
1716
- prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-tt-tm, none)
1717
- );
1041
+ .brand__icon {
1042
+ @include ad-section-icon(--_ctm-dn-bd);
1043
+ }
1718
1044
 
1719
- word-wrap: var(--_sf-hr-wd-wp, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-wd-wp, normal));
1045
+ .value {
1046
+ // padding-block-end: var(--_sf-dc-pd-bt);
1047
+
1048
+ color: var(--_ctm-mob-dn-bd-cr-dc,
1049
+ var(--_ctm-tab-dn-bd-cr-dc, var(--_ctm-dn-bd-cr-dc)));
1050
+ font-family: var(--_ctm-mob-dn-bd-ft-fy-dc,
1051
+ var(--_ctm-tab-dn-bd-ft-fy-dc, var(--_ctm-dn-bd-ft-fy-dc)));
1052
+ text-transform: var(--_ctm-mob-dn-bd-tt-tm-dc,
1053
+ var(--_ctm-tab-dn-bd-tt-tm-dc, var(--_ctm-dn-bd-tt-tm-dc)));
1054
+ word-wrap: var(--_ctm-mob-dn-bd-wd-wp-dc,
1055
+ var(--_ctm-tab-dn-bd-wd-wp-dc, var(--_ctm-dn-bd-wd-wp-dc)));
1056
+ word-break: var(--_ctm-mob-dn-bd-wd-bk-dc,
1057
+ var(--_ctm-tab-dn-bd-wd-bk-dc, var(--_ctm-dn-bd-wd-bk-dc)));
1058
+ font-size: var(--_ctm-mob-dn-bd-ft-se-dc,
1059
+ var(--_ctm-tab-dn-bd-ft-se-dc, var(--_ctm-dn-bd-ft-se-dc)));
1060
+ font-weight: var(--_ctm-mob-dn-bd-ft-wt-dc,
1061
+ var(--_ctm-tab-dn-bd-ft-wt-dc, var(--_ctm-dn-bd-ft-wt-dc)));
1062
+ font-style: var(--_ctm-mob-dn-bd-ft-se-ic-dc,
1063
+ var(--_ctm-tab-dn-bd-ft-se-ic-dc, var(--_ctm-dn-bd-ft-se-ic-dc)));
1064
+ text-align: var(--_ctm-mob-dn-bd-tt-an-dc,
1065
+ var(--_ctm-tab-dn-bd-tt-an-dc, var(--_ctm-dn-bd-tt-an-dc)));
1066
+ letter-spacing: var(--_ctm-mob-dn-bd-lr-sg-dc,
1067
+ var(--_ctm-tab-dn-bd-lr-sg-dc, var(--_ctm-dn-bd-lr-sg-dc)));
1068
+ line-height: var(--_ctm-mob-dn-bd-le-ht-dc,
1069
+ var(--_ctm-tab-dn-bd-le-ht-dc, var(--_ctm-dn-bd-le-ht-dc)));
1070
+ text-decoration: var(--_ctm-mob-dn-bd-ue-dc,
1071
+ var(--_ctm-tab-dn-bd-ue-dc, var(--_ctm-dn-bd-ue-dc)));
1072
+ @include ad-text-transform(--_ctm-dn-bd, "-dc");
1073
+ @include ad-text-overflow(--_sf-line-clamp-desc);
1074
+ }
1720
1075
 
1721
- word-break: var(
1722
- --_sf-hr-wd-bk,
1723
- prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-wd-bk, normal)
1724
- );
1076
+ .label {
1077
+ color: var(--_ctm-mob-dn-bd-cr, var(--_ctm-tab-dn-bd-cr, var(--_ctm-dn-bd-cr)));
1078
+ font-family: var(--_ctm-mob-dn-bd-ft-fy,
1079
+ var(--_ctm-tab-dn-bd-ft-fy, var(--_ctm-dn-bd-ft-fy)));
1080
+ text-transform: var(--_ctm-mob-dn-bd-tt-tm,
1081
+ var(--_ctm-tab-dn-bd-tt-tm, var(--_ctm-dn-bd-tt-tm)));
1082
+ word-wrap: var(--_ctm-mob-dn-bd-wd-wp,
1083
+ var(--_ctm-tab-dn-bd-wd-wp, var(--_ctm-dn-bd-wd-wp)));
1084
+ word-break: var(--_ctm-mob-dn-bd-wd-bk,
1085
+ var(--_ctm-tab-dn-bd-wd-bk, var(--_ctm-dn-bd-wd-bk)));
1086
+ font-size: var(--_ctm-mob-dn-bd-ft-se,
1087
+ var(--_ctm-tab-dn-bd-ft-se, var(--_ctm-dn-bd-ft-se)));
1088
+ font-weight: var(--_ctm-mob-dn-bd-ft-wt,
1089
+ var(--_ctm-tab-dn-bd-ft-wt, var(--_ctm-dn-bd-ft-wt)));
1090
+ font-style: var(--_ctm-mob-dn-bd-ft-se-ic,
1091
+ var(--_ctm-tab-dn-bd-ft-se-ic, var(--_ctm-dn-bd-ft-se-ic)));
1092
+ text-align: var(--_ctm-mob-dn-bd-tt-an,
1093
+ var(--_ctm-tab-dn-bd-tt-an, var(--_ctm-dn-bd-tt-an)));
1094
+ letter-spacing: var(--_ctm-mob-dn-bd-lr-sg,
1095
+ var(--_ctm-tab-dn-bd-lr-sg, var(--_ctm-dn-bd-lr-sg)));
1096
+ line-height: var(--_ctm-mob-dn-bd-le-ht,
1097
+ var(--_ctm-tab-dn-bd-le-ht, var(--_ctm-dn-bd-le-ht)));
1098
+ text-decoration: var(--_ctm-mob-dn-bd-ue,
1099
+ var(--_ctm-tab-dn-bd-ue, var(--_ctm-dn-bd-ue)));
1100
+ @include ad-text-transform(--_ctm-dn-bd);
1101
+ @include ad-text-overflow;
1102
+ }
1103
+ }
1725
1104
 
1726
- [data-element-style="Text"] {
1727
- display: inline-block;
1728
- width: 100%;
1729
- }
1105
+ .code {
1106
+ display: flex;
1107
+ align-items: center;
1108
+ gap: 6px;
1109
+ @include ad-section-box(--_ctm-dn-ce);
1730
1110
 
1731
- &[data-is-selected="true"] {
1732
- --_sf-sd-bd-cr: var(
1733
- --_ctm-mob-dn-me-sd-se-bd-cr,
1734
- var(--_ctm-tab-dn-sr-tb-sd-se-bd-cr, var(--_ctm-dn-sr-tb-sd-se-bd-cr))
1735
- );
1736
- --_sf-sd-br-cr: var(
1737
- --_ctm-mob-dn-sr-tb-sd-se-br-cr,
1738
- var(--_ctm-tab-dn-sr-tb-sd-se-br-cr, var(--_ctm-dn-sr-tb-sd-se-br-cr))
1739
- );
1740
- --_sf-sd-br-se: var(
1741
- --_ctm-mob-dn-sr-tb-sd-se-br-se,
1742
- var(--_ctm-tab-dn-sr-tb-sd-se-br-se, var(--_ctm-dn-sr-tb-sd-se-br-se))
1743
- );
1744
- --_sf-sd-br-wh: var(
1745
- --_ctm-mob-dn-sr-tb-sd-se-br-wh,
1746
- var(--_ctm-tab-dn-sr-tb-sd-se-br-wh, var(--_ctm-dn-sr-tb-sd-se-br-wh))
1747
- );
1748
- --_sf-sd-br-rs: var(
1749
- --_ctm-mob-dn-sr-tb-sd-se-br-rs,
1750
- var(--_ctm-tab-dn-sr-tb-sd-se-br-rs, var(--_ctm-dn-sr-tb-sd-se-br-rs))
1751
- );
1752
- --_sf-sd-at: var(
1753
- --_ctm-mob-dn-sr-tb-sd-se-at,
1754
- var(--_ctm-tab-dn-sr-tb-sd-se-at, var(--_ctm-dn-sr-tb-sd-se-at))
1755
- );
1756
- --_sf-sd-in-ad-tt-sg: var(
1757
- --_ctm-mob-dn-sr-tb-sd-se-in-ad-tt-sg,
1758
- var(--_ctm-tab-dn-sr-tb-sd-se-in-ad-tt-sg, var(--_ctm-dn-sr-tb-sd-se-in-ad-tt-sg))
1759
- );
1760
-
1761
- // for shadow
1762
- --_sf-sd-sw-ae: var(
1763
- --_ctm-mob-dn-sr-tb-sd-se-sw-ae,
1764
- var(--_ctm-tab-dn-sr-tb-sd-se-sw-ae, var(--_ctm-dn-sr-tb-sd-se-sw-ae))
1765
- );
1766
- --_sf-sd-sw-br: var(
1767
- --_ctm-mob-dn-sr-tb-sd-se-sw-br,
1768
- var(--_ctm-tab-dn-sr-tb-sd-se-sw-br, var(--_ctm-dn-sr-tb-sd-se-sw-br))
1769
- );
1770
- --_sf-sd-sw-hr: var(
1771
- --_ctm-mob-dn-sr-tb-sd-se-sw-hr,
1772
- var(--_ctm-tab-dn-sr-tb-sd-se-sw-hr, var(--_ctm-dn-sr-tb-sd-se-sw-hr))
1773
- );
1774
- --_sf-sd-sw-cr: var(
1775
- --_ctm-mob-dn-sr-tb-sd-se-sw-cr,
1776
- var(--_ctm-tab-dn-sr-tb-sd-se-sw-cr, var(--_ctm-dn-sr-tb-sd-se-sw-cr))
1777
- );
1778
-
1779
- // for font
1780
-
1781
- --_sf-sd-cr: var(
1782
- --_ctm-mob-dn-sr-tb-sd-se-cr,
1783
- var(--_ctm-tab-dn-sr-tb-sd-se-cr, var(--_ctm-dn-sr-tb-sd-se-cr))
1784
- );
1785
- --_sf-sd-ft-fy: var(
1786
- --_ctm-mob-dn-sr-tb-sd-se-ft-fy,
1787
- var(--_ctm-tab-dn-sr-tb-sd-se-ft-fy, var(--_ctm-dn-sr-tb-sd-se-ft-fy))
1788
- );
1789
- --_sf-sd-ft-se: var(
1790
- --_ctm-mob-dn-sr-tb-sd-se-ft-se,
1791
- var(--_ctm-tab-dn-sr-tb-sd-se-ft-se, var(--_ctm-dn-sr-tb-sd-se-ft-se))
1792
- );
1793
- --_sf-sd-ft-wt: var(
1794
- --_ctm-mob-dn-sr-tb-sd-se-ft-wt,
1795
- var(--_ctm-tab-dn-sr-tb-sd-se-ft-wt, var(--_ctm-dn-sr-tb-sd-se-ft-wt))
1796
- );
1797
- --_sf-sd-ft-se-ic: var(
1798
- --_ctm-mob-dn-sr-tb-sd-se-ft-se-ic,
1799
- var(--_ctm-tab-dn-sr-tb-sd-se-ft-se-ic, var(--_ctm-dn-sr-tb-sd-se-ft-se-ic))
1800
- );
1801
- --_sf-sd-tt-an: var(
1802
- --_ctm-mob-dn-sr-tb-sd-se-tt-an,
1803
- var(--_ctm-tab-dn-sr-tb-sd-se-tt-an, var(--_ctm-dn-sr-tb-sd-se-tt-an))
1804
- );
1805
- --_sf-sd-lr-sg: var(
1806
- --_ctm-mob-dn-sr-tb-sd-se-lr-sg,
1807
- var(--_ctm-tab-dn-sr-tb-sd-se-lr-sg, var(--_ctm-dn-sr-tb-sd-se-lr-sg))
1808
- );
1809
- --_sf-sd-le-ht: var(
1810
- --_ctm-mob-dn-sr-tb-sd-se-le-ht,
1811
- var(--_ctm-tab-dn-sr-tb-sd-se-le-ht, var(--_ctm-dn-sr-tb-sd-se-le-ht))
1812
- );
1813
- --_sf-sd-tt-tm: var(
1814
- --_ctm-mob-dn-sr-tb-sd-se-tt-tm,
1815
- var(--_ctm-tab-dn-sr-tb-sd-se-tt-tm, var(--_ctm-dn-sr-tb-sd-se-tt-tm))
1816
- );
1817
- --_sf-sd-wd-wp: var(
1818
- --_ctm-mob-dn-sr-tb-sd-se-wd-wp,
1819
- var(--_ctm-tab-dn-sr-tb-sd-se-wd-wp, var(--_ctm-dn-sr-tb-sd-se-wd-wp))
1820
- );
1821
- --_sf-sd-wd-bk: var(
1822
- --_ctm-mob-dn-sr-tb-sd-se-wd-bk,
1823
- var(--_ctm-tab-dn-sr-tb-sd-se-wd-bk, var(--_ctm-dn-sr-tb-sd-se-wd-bk))
1824
- );
1825
-
1826
- --_sf-sd-in-se: var(
1827
- --_ctm-mob-dn-sr-tb-sd-se-in-se,
1828
- var(--_ctm-tab-dn-sr-tb-sd-se-in-se, var(--_ctm-dn-sr-tb-sd-se-in-se))
1829
- );
1830
- --_sf-sd-in-se: var(
1831
- --_ctm-mob-dn-sr-tb-sd-se-in-se,
1832
- var(--_ctm-tab-dn-sr-tb-sd-se-in-se, var(--_ctm-dn-sr-tb-sd-se-in-se))
1833
- );
1834
- --_sf-sd-in-c1: var(
1835
- --_ctm-mob-dn-sr-tb-sd-se-in-c1,
1836
- var(--_ctm-tab-dn-sr-tb-sd-se-in-c1, var(--_ctm-dn-sr-tb-sd-se-in-c1))
1837
- );
1838
- --_sf-sd-ue: var(
1839
- --_ctm-mob-dn-sr-tb-hr-ue,
1840
- var(--_ctm-tab-dn-sr-tb-hr-ue, var(--_ctm-dn-sr-tb-hr-ue))
1841
- );
1842
-
1843
- // for pading and width
1844
- --_sf-sd-pg: var(
1845
- --_ctm-mob-dn-sr-tb-sd-se-pg,
1846
- var(--_ctm-tab-dn-sr-tb-sd-se-pg, var(--_ctm-dn-sr-tb-sd-se-pg))
1847
- );
1848
- --_sf-sd-wh: var(
1849
- --_ctm-mob-dn-sr-tb-sd-se-wh,
1850
- var(--_ctm-tab-dn-sr-tb-sd-se-wh, var(--_ctm-dn-sr-tb-sd-se-wh))
1851
- );
1852
-
1853
- &[data-hover-show-shadow="false"] {
1854
- --_hover-show-shadow: none;
1855
- }
1856
- &[data-hover-show-icon="false"] {
1857
- --_hover-show-icon: none;
1858
- }
1111
+ .code__icon {
1112
+ @include ad-section-icon(--_ctm-dn-ce);
1113
+ }
1859
1114
 
1860
- background-color: var(
1861
- --_sf-sd-bd-cr,
1862
- prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-bd-cr)
1863
- );
1115
+ .value {
1116
+ // padding-block-end: var(--_sf-dc-pd-bt);
1117
+
1118
+ color: var(--_ctm-mob-dn-ce-cr-dc,
1119
+ var(--_ctm-tab-dn-ce-cr-dc, var(--_ctm-dn-ce-cr-dc)));
1120
+ font-family: var(--_ctm-mob-dn-ce-ft-fy-dc,
1121
+ var(--_ctm-tab-dn-ce-ft-fy-dc, var(--_ctm-dn-ce-ft-fy-dc)));
1122
+ text-transform: var(--_ctm-mob-dn-ce-tt-tm-dc,
1123
+ var(--_ctm-tab-dn-ce-tt-tm-dc, var(--_ctm-dn-ce-tt-tm-dc)));
1124
+ word-wrap: var(--_ctm-mob-dn-ce-wd-wp-dc,
1125
+ var(--_ctm-tab-dn-ce-wd-wp-dc, var(--_ctm-dn-ce-wd-wp-dc)));
1126
+ word-break: var(--_ctm-mob-dn-ce-wd-bk-dc,
1127
+ var(--_ctm-tab-dn-ce-wd-bk-dc, var(--_ctm-dn-ce-wd-bk-dc)));
1128
+ font-size: var(--_ctm-mob-dn-ce-ft-se-dc,
1129
+ var(--_ctm-tab-dn-ce-ft-se-dc, var(--_ctm-dn-ce-ft-se-dc)));
1130
+ font-weight: var(--_ctm-mob-dn-ce-ft-wt-dc,
1131
+ var(--_ctm-tab-dn-ce-ft-wt-dc, var(--_ctm-dn-ce-ft-wt-dc)));
1132
+ font-style: var(--_ctm-mob-dn-ce-ft-se-ic-dc,
1133
+ var(--_ctm-tab-dn-ce-ft-se-ic-dc, var(--_ctm-dn-ce-ft-se-ic-dc)));
1134
+ text-align: var(--_ctm-mob-dn-ce-tt-an-dc,
1135
+ var(--_ctm-tab-dn-ce-tt-an-dc, var(--_ctm-dn-ce-tt-an-dc)));
1136
+ letter-spacing: var(--_ctm-mob-dn-ce-lr-sg-dc,
1137
+ var(--_ctm-tab-dn-ce-lr-sg-dc, var(--_ctm-dn-ce-lr-sg-dc)));
1138
+ line-height: var(--_ctm-mob-dn-ce-le-ht-dc,
1139
+ var(--_ctm-tab-dn-ce-le-ht-dc, var(--_ctm-dn-ce-le-ht-dc)));
1140
+ text-decoration: var(--_ctm-mob-dn-ce-ue-dc,
1141
+ var(--_ctm-tab-dn-ce-ue-dc, var(--_ctm-dn-ce-ue-dc)));
1142
+ @include ad-text-transform(--_ctm-dn-ce, "-dc");
1143
+ @include ad-text-overflow(--_sf-line-clamp-desc);
1144
+ }
1864
1145
 
1865
- padding: var(--_sf-sd-pg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-pg));
1866
- display: flex;
1867
- flex-direction: var(--_sf-fd-bn);
1868
- align-items: center;
1146
+ .label {
1147
+ color: var(--_ctm-mob-dn-ce-cr, var(--_ctm-tab-dn-ce-cr, var(--_ctm-dn-ce-cr)));
1148
+ font-family: var(--_ctm-mob-dn-ce-ft-fy,
1149
+ var(--_ctm-tab-dn-ce-ft-fy, var(--_ctm-dn-ce-ft-fy)));
1150
+ text-transform: var(--_ctm-mob-dn-ce-tt-tm,
1151
+ var(--_ctm-tab-dn-ce-tt-tm, var(--_ctm-dn-ce-tt-tm)));
1152
+ word-wrap: var(--_ctm-mob-dn-ce-wd-wp,
1153
+ var(--_ctm-tab-dn-ce-wd-wp, var(--_ctm-dn-ce-wd-wp)));
1154
+ word-break: var(--_ctm-mob-dn-ce-wd-bk,
1155
+ var(--_ctm-tab-dn-ce-wd-bk, var(--_ctm-dn-ce-wd-bk)));
1156
+ font-size: var(--_ctm-mob-dn-ce-ft-se,
1157
+ var(--_ctm-tab-dn-ce-ft-se, var(--_ctm-dn-ce-ft-se)));
1158
+ font-weight: var(--_ctm-mob-dn-ce-ft-wt,
1159
+ var(--_ctm-tab-dn-ce-ft-wt, var(--_ctm-dn-ce-ft-wt)));
1160
+ font-style: var(--_ctm-mob-dn-ce-ft-se-ic,
1161
+ var(--_ctm-tab-dn-ce-ft-se-ic, var(--_ctm-dn-ce-ft-se-ic)));
1162
+ text-align: var(--_ctm-mob-dn-ce-tt-an,
1163
+ var(--_ctm-tab-dn-ce-tt-an, var(--_ctm-dn-ce-tt-an)));
1164
+ letter-spacing: var(--_ctm-mob-dn-ce-lr-sg,
1165
+ var(--_ctm-tab-dn-ce-lr-sg, var(--_ctm-dn-ce-lr-sg)));
1166
+ line-height: var(--_ctm-mob-dn-ce-le-ht,
1167
+ var(--_ctm-tab-dn-ce-le-ht, var(--_ctm-dn-ce-le-ht)));
1168
+ text-decoration: var(--_ctm-mob-dn-ce-ue,
1169
+ var(--_ctm-tab-dn-ce-ue, var(--_ctm-dn-ce-ue)));
1170
+ @include ad-text-transform(--_ctm-dn-ce);
1171
+ @include ad-text-overflow;
1172
+ }
1173
+ }
1869
1174
 
1870
- justify-content: var(--_sf-sd-at, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-at));
1871
- gap: var(--_sf-sd-in-ad-tt-sg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-in-ad-tt-sg));
1175
+ .price {
1176
+ background-color: var(--_ctm-mob-dn-pe-bd-cr,
1177
+ var(--_ctm-tab-dn-pe-bd-cr, var(--_ctm-dn-pe-bd-cr)));
1178
+
1179
+ border-color: var(--_ctm-mob-dn-pe-br-cr,
1180
+ var(--_ctm-tab-dn-pe-br-cr, var(--_ctm-dn-pe-br-cr)));
1181
+
1182
+ border-style: var(--_ctm-mob-dn-pe-br-se,
1183
+ var(--_ctm-tab-dn-pe-br-se, var(--_ctm-dn-pe-br-se)));
1184
+
1185
+ border-width: var(--_ctm-mob-dn-pe-br-wh,
1186
+ var(--_ctm-tab-dn-pe-br-wh, var(--_ctm-dn-pe-br-wh)));
1187
+
1188
+ border-radius: var(--_ctm-mob-dn-pe-br-rs,
1189
+ var(--_ctm-tab-dn-pe-br-rs, var(--_ctm-dn-pe-br-rs)));
1190
+
1191
+ box-shadow: var(--_show-shadow,
1192
+ var(--_ctm-mob-dn-pe-sw-ae, var(--_ctm-tab-dn-pe-sw-ae, var(--_ctm-dn-pe-sw-ae))) var(--_ctm-mob-dn-pe-sw-br, var(--_ctm-tab-dn-pe-sw-br, var(--_ctm-dn-pe-sw-br))) var(--_ctm-mob-dn-pe-sw-sd, var(--_ctm-tab-dn-pe-sw-sd, var(--_ctm-dn-pe-sw-sd))) var(--_ctm-mob-dn-pe-sw-cr, var(--_ctm-tab-dn-pe-sw-cr, var(--_ctm-dn-pe-sw-cr))));
1193
+ white-space: nowrap;
1194
+
1195
+ height: 100%;
1196
+
1197
+ color: var(--_ctm-mob-dn-pe-cr, var(--_ctm-tab-dn-pe-cr, var(--_ctm-dn-pe-cr)));
1198
+ font-family: var(--_ctm-mob-dn-pe-ft-fy,
1199
+ var(--_ctm-tab-dn-pe-ft-fy, var(--_ctm-dn-pe-ft-fy)));
1200
+ text-transform: var(--_ctm-mob-dn-pe-tt-tm,
1201
+ var(--_ctm-tab-dn-pe-tt-tm, var(--_ctm-dn-pe-tt-tm)));
1202
+ word-wrap: var(--_ctm-mob-dn-pe-wd-wp,
1203
+ var(--_ctm-tab-dn-pe-wd-wp, var(--_ctm-dn-pe-wd-wp)));
1204
+ word-break: var(--_ctm-mob-dn-pe-wd-bk,
1205
+ var(--_ctm-tab-dn-pe-wd-bk, var(--_ctm-dn-pe-wd-bk)));
1206
+ font-size: var(--_ctm-mob-dn-pe-ft-se,
1207
+ var(--_ctm-tab-dn-pe-ft-se, var(--_ctm-dn-pe-ft-se)));
1208
+ font-weight: var(--_ctm-mob-dn-pe-ft-wt,
1209
+ var(--_ctm-tab-dn-pe-ft-wt, var(--_ctm-dn-pe-ft-wt)));
1210
+ font-style: var(--_ctm-mob-dn-pe-ft-se-ic,
1211
+ var(--_ctm-tab-dn-pe-ft-se-ic, var(--_ctm-dn-pe-ft-se-ic)));
1212
+ text-align: var(--_ctm-mob-dn-pe-tt-an,
1213
+ var(--_ctm-tab-dn-pe-tt-an, var(--_ctm-dn-pe-tt-an)));
1214
+ letter-spacing: var(--_ctm-mob-dn-pe-lr-sg,
1215
+ var(--_ctm-tab-dn-pe-lr-sg, var(--_ctm-dn-pe-lr-sg)));
1216
+ line-height: var(--_ctm-mob-dn-pe-le-ht,
1217
+ var(--_ctm-tab-dn-pe-le-ht, var(--_ctm-dn-pe-le-ht)));
1218
+ text-decoration: var(--_ctm-mob-dn-pe-ue,
1219
+ var(--_ctm-tab-dn-pe-ue, var(--_ctm-dn-pe-ue)));
1220
+ padding: prepareMediaVariable(--_ctm-dn-pe-pg);
1221
+ @include ad-text-transform(--_ctm-dn-pe);
1222
+ @include ad-text-overflow;
1223
+ }
1224
+ }
1872
1225
 
1873
- border-radius: var(--_sf-sd-br-rs, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-rs));
1226
+ // Quota details styling for the embedded QuotaDetailsContent, rebound to
1227
+ // the Allocations quotaDetails CSS-variable paths.
1228
+ @import "./allocations-quota-details.scss";
1229
+ }
1230
+ }
1874
1231
 
1875
- box-shadow: var(--_sf-sd-sw-ae, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-ae))
1876
- var(--_sf-sd-sw-br, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-br))
1877
- var(--_sf-sd-sw-sd, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-sd))
1878
- var(--_sf-sd-sw-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-cr));
1232
+ .allocation__profile__tabs {
1233
+ width: 100%;
1234
+ background-color: var(--_ctm-mob-dn-sr-wt-se-bd-cr,
1235
+ var(--_ctm-tab-dn-sr-wt-se-bd-cr, var(--_ctm-dn-sr-wt-se-bd-cr)));
1236
+ // padding: var(--_ctm-mob-lt-pg, var(--_ctm-tab-lt-pg, var(--_ctm-lt-pg)));
1237
+ display: flex;
1238
+ flex-direction: column;
1239
+ --_sf-gp: var(--_ctm-mob-lt-im-sg,
1240
+ var(--_ctm-tab-lt-im-sg, var(--_ctm-lt-im-sg, var(--_ctm-lt-im-sg), 16px)));
1241
+ --_sf-cd-gp: calc(var(--_sf-gp) * 0.5);
1242
+ row-gap: var(--_sf-gp);
1243
+ width: 100%;
1244
+ height: 100%;
1245
+ border-color: var(--_ctm-mob-dn-sr-wt-se-br-cr,
1246
+ var(--_ctm-tab-dn-sr-wt-se-br-cr, var(--_ctm-dn-sr-wt-se-br-cr)));
1247
+ border-style: var(--_ctm-mob-dn-sr-wt-se-br-se,
1248
+ var(--_ctm-tab-dn-sr-wt-se-br-se, var(--_ctm-dn-sr-wt-se-br-se)));
1249
+ border-width: var(--_ctm-mob-dn-sr-wt-se-br-wh,
1250
+ var(--_ctm-tab-dn-sr-wt-se-br-wh, var(--_ctm-dn-sr-wt-se-br-wh)));
1251
+ border-radius: var(--_ctm-mob-dn-sr-wt-se-br-rs,
1252
+ var(--_ctm-tab-dn-sr-wt-se-br-rs, var(--_ctm-dn-sr-wt-se-br-rs)));
1253
+ box-shadow: var(--_show-shadow,
1254
+ var(--_ctm-mob-dn-sr-wt-se-sw-ae,
1255
+ var(--_ctm-tab-dn-sr-wt-se-sw-ae, var(--_ctm-dn-sr-wt-se-sw-ae))) var(--_ctm-mob-dn-sr-wt-se-sw-br,
1256
+ var(--_ctm-tab-dn-sr-wt-se-sw-br, var(--_ctm-dn-sr-wt-se-sw-br))) var(--_ctm-mob-dn-sr-wt-se-sw-sd,
1257
+ var(--_ctm-tab-dn-sr-wt-se-sw-sd, var(--_ctm-dn-sr-wt-se-sw-sd))) var(--_ctm-mob-dn-sr-wt-se-sw-cr,
1258
+ var(--_ctm-tab-dn-sr-wt-se-sw-cr, var(--_ctm-dn-sr-wt-se-sw-cr))));
1259
+
1260
+ .profile__button {
1261
+ &[data-show-shadow="false"] {
1262
+ --_show-shadow: none;
1263
+ }
1879
1264
 
1880
- &[data-show-border="true"] {
1881
- border-color: var(--_sf-sd-br-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-cr));
1265
+ &[data-icon-position="left"] {
1266
+ --_sf-fd-bn: row;
1267
+ }
1882
1268
 
1883
- border-style: var(--_sf-sd-br-se, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-se));
1269
+ &[data-icon-position="right"] {
1270
+ --_sf-fd-bn: row-reverse;
1271
+ }
1884
1272
 
1885
- border-width: var(--_sf-sd-br-wh, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-wh));
1886
- }
1273
+ &[data-icon-position="center"] {
1274
+ --_sf-fd-bn: row;
1275
+ }
1887
1276
 
1888
- // text styles
1277
+ &:hover {
1278
+ --_sf-hr-bd-cr: var(--_ctm-mob-dn-sr-tb-hr-se-bd-cr,
1279
+ var(--_ctm-tab-dn-sr-tb-hr-se-bd-cr, var(--_ctm-dn-sr-tb-hr-se-bd-cr)));
1280
+ --_sf-hr-br-cr: var(--_ctm-mob-dn-sr-tb-hr-se-br-cr,
1281
+ var(--_ctm-tab-dn-sr-tb-hr-se-br-cr, var(--_ctm-dn-sr-tb-hr-se-br-cr)));
1282
+ --_sf-hr-br-se: var(--_ctm-mob-dn-sr-tb-hr-se-br-se,
1283
+ var(--_ctm-tab-dn-sr-tb-hr-se-br-se, var(--_ctm-dn-sr-tb-hr-se-br-se)));
1284
+ --_sf-hr-br-wh: var(--_ctm-mob-dn-sr-tb-hr-se-br-wh,
1285
+ var(--_ctm-tab-dn-sr-tb-hr-se-br-wh, var(--_ctm-dn-sr-tb-hr-se-br-wh)));
1286
+ --_sf-hr-br-rs: var(--_ctm-mob-dn-sr-tb-hr-se-br-rs,
1287
+ var(--_ctm-tab-dn-sr-tb-hr-se-br-rs, var(--_ctm-dn-sr-tb-hr-se-br-rs)));
1288
+ --_sf-hr-at: var(--_ctm-mob-dn-sr-tb-hr-se-at,
1289
+ var(--_ctm-tab-dn-sr-tb-hr-se-at, var(--_ctm-dn-sr-tb-hr-se-at)));
1290
+ --_sf-hr-in-ad-tt-sg: var(--_ctm-mob-dn-sr-tb-hr-se-in-ad-tt-sg,
1291
+ var(--_ctm-tab-dn-sr-tb-hr-se-in-ad-tt-sg, var(--_ctm-dn-sr-tb-hr-se-in-ad-tt-sg)));
1292
+
1293
+ // for shadow
1294
+ --_sf-hr-sw-ae: var(--_ctm-mob-dn-sr-tb-hr-se-sw-ae,
1295
+ var(--_ctm-tab-dn-sr-tb-hr-se-sw-ae, var(--_ctm-dn-sr-tb-hr-se-sw-ae)));
1296
+ --_sf-hr-sw-br: var(--_ctm-mob-dn-sr-tb-hr-se-sw-br,
1297
+ var(--_ctm-tab-dn-sr-tb-hr-se-sw-br, var(--_ctm-dn-sr-tb-hr-se-sw-br)));
1298
+ --_sf-hr-sw-hr: var(--_ctm-mob-dn-sr-tb-hr-se-sw-hr,
1299
+ var(--_ctm-tab-dn-sr-tb-hr-se-sw-hr, var(--_ctm-dn-sr-tb-hr-se-sw-hr)));
1300
+ --_sf-hr-sw-cr: var(--_ctm-mob-dn-sr-tb-hr-se-sw-cr,
1301
+ var(--_ctm-tab-dn-sr-tb-hr-se-sw-cr, var(--_ctm-dn-sr-tb-hr-se-sw-cr)));
1302
+
1303
+ // for font
1304
+
1305
+ --_sf-hr-cr: var(--_ctm-mob-dn-sr-tb-hr-se-cr,
1306
+ var(--_ctm-tab-dn-sr-tb-hr-se-cr, var(--_ctm-dn-sr-tb-hr-se-cr)));
1307
+ --_sf-hr-ft-fy: var(--_ctm-mob-dn-sr-tb-hr-se-ft-fy,
1308
+ var(--_ctm-tab-dn-sr-tb-hr-se-ft-fy, var(--_ctm-dn-sr-tb-hr-se-ft-fy)));
1309
+ --_sf-hr-ft-se: var(--_ctm-mob-dn-sr-tb-hr-se-ft-se,
1310
+ var(--_ctm-tab-dn-sr-tb-hr-se-ft-se, var(--_ctm-dn-sr-tb-hr-se-ft-se)));
1311
+ --_sf-hr-ft-wt: var(--_ctm-mob-dn-sr-tb-hr-se-ft-wt,
1312
+ var(--_ctm-tab-dn-sr-tb-hr-se-ft-wt, var(--_ctm-dn-sr-tb-hr-se-ft-wt)));
1313
+ --_sf-hr-ft-se-ic: var(--_ctm-mob-dn-sr-tb-hr-se-ft-se-ic,
1314
+ var(--_ctm-tab-dn-sr-tb-hr-se-ft-se-ic, var(--_ctm-dn-sr-tb-hr-se-ft-se-ic)));
1315
+ --_sf-hr-tt-an: var(--_ctm-mob-dn-sr-tb-hr-se-tt-an,
1316
+ var(--_ctm-tab-dn-sr-tb-hr-se-tt-an, var(--_ctm-dn-sr-tb-hr-se-tt-an)));
1317
+ --_sf-hr-lr-sg: var(--_ctm-mob-dn-sr-tb-hr-se-lr-sg,
1318
+ var(--_ctm-tab-dn-sr-tb-hr-se-lr-sg, var(--_ctm-dn-sr-tb-hr-se-lr-sg)));
1319
+ --_sf-hr-le-ht: var(--_ctm-mob-dn-sr-tb-hr-se-le-ht,
1320
+ var(--_ctm-tab-dn-sr-tb-hr-se-le-ht, var(--_ctm-dn-sr-tb-hr-se-le-ht)));
1321
+ --_sf-hr-tt-tm: var(--_ctm-mob-dn-sr-tb-hr-se-tt-tm,
1322
+ var(--_ctm-tab-dn-sr-tb-hr-se-tt-tm, var(--_ctm-dn-sr-tb-hr-se-tt-tm)));
1323
+ --_sf-hr-wd-wp: var(--_ctm-mob-dn-sr-tb-hr-se-wd-wp,
1324
+ var(--_ctm-tab-dn-sr-tb-hr-se-wd-wp, var(--_ctm-dn-sr-tb-hr-se-wd-wp)));
1325
+ --_sf-hr-wd-bk: var(--_ctm-mob-dn-sr-tb-hr-se-wd-bk,
1326
+ var(--_ctm-tab-dn-sr-tb-hr-se-wd-bk, var(--_ctm-dn-sr-tb-hr-se-wd-bk)));
1327
+
1328
+ --_sf-hr-in-se: var(--_ctm-mob-dn-sr-tb-hr-se-in-se,
1329
+ var(--_ctm-tab-dn-sr-tb-hr-se-in-se, var(--_ctm-dn-sr-tb-hr-se-in-se)));
1330
+ --_sf-hr-in-se: var(--_ctm-mob-dn-sr-tb-hr-se-in-se,
1331
+ var(--_ctm-tab-dn-sr-tb-hr-se-in-se, var(--_ctm-dn-sr-tb-hr-se-in-se)));
1332
+ --_sf-hr-in-c1: var(--_ctm-mob-dn-sr-tb-hr-se-in-c1,
1333
+ var(--_ctm-tab-dn-sr-tb-hr-se-in-c1, var(--_ctm-dn-sr-tb-hr-se-in-c1)));
1334
+ --_sf-hr-ue: var(--_ctm-mob-dn-sr-tb-hr-se-ue,
1335
+ var(--_ctm-tab-dn-sr-tb-hr-se-ue, var(--_ctm-dn-sr-tb-hr-se-ue)));
1336
+
1337
+ // for pading and width
1338
+ --_sf-hr-pg: var(--_ctm-mob-dn-sr-tb-hr-se-pg,
1339
+ var(--_ctm-tab-dn-sr-tb-hr-se-pg, var(--_ctm-dn-sr-tb-hr-se-pg)));
1340
+ --_sf-hr-wh: var(--_ctm-mob-dn-sr-tb-hr-se-wh,
1341
+ var(--_ctm-tab-dn-sr-tb-hr-se-wh, var(--_ctm-dn-sr-tb-hr-se-wh)));
1342
+
1343
+ &[data-hover-show-shadow="false"] {
1344
+ --_hover-show-shadow: none;
1345
+ }
1889
1346
 
1890
- color: var(--_sf-sd-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-cr));
1347
+ &[data-hover-show-icon="false"] {
1348
+ --_hover-show-icon: none;
1349
+ }
1350
+ }
1891
1351
 
1892
- font-family: var(--_sf-sd-ft-fy, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-fy));
1352
+ background-color: var(--_sf-hr-bd-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-bd-cr));
1893
1353
 
1894
- font-size: var(--_sf-sd-ft-se, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-se));
1354
+ padding: var(--_sf-hr-pg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-pg));
1355
+ display: flex;
1356
+ flex-direction: var(--_sf-fd-bn);
1357
+ align-items: center;
1895
1358
 
1896
- font-weight: var(--_sf-sd-ft-wt, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-wt));
1359
+ justify-content: var(--_sf-hr-at, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-at));
1360
+ gap: var(--_sf-hr-in-ad-tt-sg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-in-ad-tt-sg));
1897
1361
 
1898
- font-style: var(
1899
- --_sf-sd-ft-se-ic,
1900
- prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-se-ic)
1901
- );
1362
+ border-radius: var(--_sf-hr-br-rs, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-rs));
1902
1363
 
1903
- text-align: var(--_sf-sd-tt-an, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-tt-an));
1364
+ box-shadow: var(--_sf-hr-sw-ae, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-ae)) var(--_sf-hr-sw-br, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-br)) var(--_sf-hr-sw-sd, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-sd)) var(--_sf-hr-sw-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-cr));
1904
1365
 
1905
- letter-spacing: var(--_sf-sd-lr-sg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-lr-sg));
1366
+ &[data-show-border="true"] {
1367
+ border-color: var(--_sf-hr-br-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-cr));
1906
1368
 
1907
- line-height: var(--_sf-sd-le-ht, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-le-ht));
1369
+ border-style: var(--_sf-hr-br-se, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-se));
1908
1370
 
1909
- text-decoration: var(--_sf-sd-ue, prepareMediaVariable(--_ctm-dn-dt-ue));
1371
+ border-width: var(--_sf-hr-br-wh, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-wh));
1372
+ }
1910
1373
 
1911
- text-transform: var(
1912
- --_sf-sd-tt-tm,
1913
- prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-tt-tm, none)
1914
- );
1374
+ // text styles
1915
1375
 
1916
- word-wrap: var(
1917
- --_sf-sd-wd-wp,
1918
- prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-wd-wp, normal)
1919
- );
1376
+ color: var(--_sf-hr-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-cr));
1920
1377
 
1921
- word-break: var(
1922
- --_sf-sd-wd-bk,
1923
- prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-wd-bk, normal)
1924
- );
1378
+ font-family: var(--_sf-hr-ft-fy, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-fy));
1925
1379
 
1926
- [data-element-style="Text"] {
1927
- display: inline-block;
1928
- width: 100%;
1929
- }
1930
- }
1931
- }
1932
- .embla {
1933
- height: auto;
1934
- padding: var(--_sf-flex-embla-pd-daka-mobile, 10px);
1380
+ &.flex__overflow {
1381
+ white-space: normal;
1382
+ @include restrictToLinesShow(#{var(--_sf-line-clamp, 1)});
1383
+ }
1935
1384
 
1936
- .embla__viewport {
1937
- .embla__container {
1938
- display: flex;
1939
- gap: prepareMediaVariable(--_ctm-dn-sr-wt-se-im-gp);
1940
- .embla__slide {
1941
- width: unset;
1942
- }
1943
- }
1944
- }
1945
- }
1946
- }
1947
- .embla {
1948
- width: 100%;
1949
- height: 100%;
1950
- position: relative;
1951
- display: flex;
1952
- flex-direction: column;
1953
- // padding: 10px;
1954
- // overflow: hidden;
1385
+ font-size: var(--_sf-hr-ft-se, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-se));
1955
1386
 
1956
- .embla__viewport {
1957
- width: 100%;
1958
- height: 100%;
1959
- position: relative;
1960
- display: flex;
1961
- flex-direction: column;
1387
+ font-weight: var(--_sf-hr-ft-wt, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-wt));
1962
1388
 
1963
- overflow: hidden;
1389
+ font-style: var(--_sf-hr-ft-se-ic, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-se-ic));
1964
1390
 
1965
- .embla__container {
1966
- width: 100%;
1967
- height: 100%;
1968
- display: grid;
1969
- grid-template-rows: 100%;
1391
+ text-align: var(--_sf-hr-tt-an, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-tt-an));
1970
1392
 
1971
- grid-template-columns: repeat(
1972
- var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se))),
1973
- calc(
1974
- 100% /
1975
- var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se)))
1976
- )
1977
- );
1393
+ letter-spacing: var(--_sf-hr-lr-sg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-lr-sg));
1978
1394
 
1979
- grid-auto-flow: column;
1980
- gap: var(--_ctm-mob-lt-im-gp, var(--_ctm-tab-lt-im-gp, var(--_ctm-lt-im-gp)));
1395
+ line-height: var(--_sf-hr-le-ht, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-le-ht));
1981
1396
 
1982
- &[data-control-type="Bottom"][data-slider-control="Arrows"] {
1983
- height: calc(100% - calc(50px + 10px));
1984
- }
1397
+ text-decoration: var(--_sf-hr-ue, prepareMediaVariable(--_ctm-dn-dt-ue));
1985
1398
 
1986
- &[data-control-type="Bottom"][data-slider-control="Pagination Line"] {
1987
- height: calc(100% - calc(50px + 20px));
1988
- }
1399
+ // Same shape as the font rules above: the base value is the default
1400
+ // state, and the `&:hover` block below re-points --_sf-hr-* at the hover
1401
+ // state so this declaration re-resolves without being repeated.
1402
+ text-transform: var(--_sf-hr-tt-tm,
1403
+ prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-tt-tm, none));
1989
1404
 
1990
- &[data-control-type="Bottom"][data-slider-control="Dots"] {
1991
- height: calc(
1992
- 100% - calc(
1993
- var(
1994
- --_ctm-mob-dn-pn-ds-dt-se,
1995
- var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
1996
- ) +
1997
- 20px
1998
- )
1999
- );
2000
- }
1405
+ word-wrap: var(--_sf-hr-wd-wp, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-wd-wp, normal));
2001
1406
 
2002
- .embla__slide {
2003
- width: 100%;
2004
- height: 100%;
2005
- & > img {
2006
- width: 100%;
2007
- height: 100%;
2008
- }
2009
- }
2010
- }
2011
- }
2012
- &:not([data-display-style="Column"]) {
2013
- .embla__container {
2014
- grid-auto-columns: calc(
2015
- 100% /
2016
- var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se)))
2017
- );
2018
- }
2019
- }
1407
+ word-break: var(--_sf-hr-wd-bk,
1408
+ prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-wd-bk, normal));
2020
1409
 
2021
- .arrow-navigation {
2022
- display: flex;
2023
- position: absolute;
2024
- top: 50%;
2025
- left: 50%;
2026
- width: 100%;
2027
- justify-content: space-between;
2028
- transform: translate(-50%, -50%);
2029
- // padding-left: 20px;
2030
-
2031
- &[data-control-type="Bottom-Overflow"] {
2032
- transform: translateX(-50%);
2033
- width: 100%;
2034
- justify-content: center;
2035
- gap: 12px;
2036
- top: unset;
2037
- bottom: 6px;
2038
- }
2039
- &[data-control-type="Bottom"] {
2040
- transform: unset;
2041
- position: static;
2042
- width: 100%;
2043
- justify-content: center;
2044
- gap: 12px;
2045
- margin-top: 10px;
2046
- }
2047
- }
2048
- // Profiles Slider > Pagination Arrows. These rules used to read
2049
- // `--_ctm-dn-pn-as-*`, a `design.paginationArrows` node that does not exist
2050
- // on this element — so every one of them fell through to its hardcoded
2051
- // default and the panel could not reach the strip's arrows at all. They now
2052
- // read design.slider.paginationArrows, and each fallback is the value that
2053
- // was hardcoded, so an untouched strip renders exactly as before.
2054
- &[data-control-type="Side"] {
2055
- .left-button,
2056
- .right-button {
2057
- background-color: prepareMediaVariable(#{$ad-slider-arrows}-bd-cr, transparent);
2058
- }
2059
- }
2060
- &[data-background-shape="Round"] {
2061
- .left-button,
2062
- .right-button {
2063
- background-color: prepareMediaVariable(#{$ad-slider-arrows}-bd-cr, #f2f5f5);
2064
- box-sizing: 0 4px 8px rgba(0, 0, 0, 0.1);
2065
- }
2066
- }
2067
- .left-button,
2068
- .right-button {
2069
- padding: prepareMediaVariable(#{$ad-slider-arrows}-pg, 10px);
2070
- border-color: prepareMediaVariable(#{$ad-slider-arrows}-br-cr, transparent);
2071
- border-style: prepareMediaVariable(#{$ad-slider-arrows}-br-se, solid);
2072
- border-width: prepareMediaVariable(#{$ad-slider-arrows}-br-wh, 0);
2073
- // 50%, not prepareMediaVariable's `inherit` tail: an arrow with no
2074
- // configured radius has always been a circle.
2075
- border-radius: prepareMediaVariable(#{$ad-slider-arrows}-br-rs, 50%);
2076
- // 20px, not prepareMediaVariable's `inherit` tail — inheriting the strip's
2077
- // width here would blow the buttons out. 20 is also the schema default, so
2078
- // a strip saved before this node existed matches a fresh one.
2079
- width: prepareMediaVariable(#{$ad-slider-arrows}-aw-se, 20px);
2080
- height: prepareMediaVariable(#{$ad-slider-arrows}-aw-se, 20px);
2081
- // Opt-in, like the gallery's: these arrows have never cast a shadow.
2082
- box-shadow: none;
1410
+ [data-element-style="Text"] {
1411
+ display: inline-block;
1412
+ width: 100%;
1413
+ }
2083
1414
 
2084
- &[data-show-shadow="true"] {
2085
- box-shadow: prepareMediaVariable(#{$ad-slider-arrows}-sw-ae, 0 0)
2086
- prepareMediaVariable(#{$ad-slider-arrows}-sw-br, 0)
2087
- prepareMediaVariable(#{$ad-slider-arrows}-sw-sd, 0)
2088
- prepareMediaVariable(#{$ad-slider-arrows}-sw-cr, transparent);
2089
- }
1415
+ &[data-is-selected="true"] {
1416
+ --_sf-sd-bd-cr: var(--_ctm-mob-dn-me-sd-se-bd-cr,
1417
+ var(--_ctm-tab-dn-sr-tb-sd-se-bd-cr, var(--_ctm-dn-sr-tb-sd-se-bd-cr)));
1418
+ --_sf-sd-br-cr: var(--_ctm-mob-dn-sr-tb-sd-se-br-cr,
1419
+ var(--_ctm-tab-dn-sr-tb-sd-se-br-cr, var(--_ctm-dn-sr-tb-sd-se-br-cr)));
1420
+ --_sf-sd-br-se: var(--_ctm-mob-dn-sr-tb-sd-se-br-se,
1421
+ var(--_ctm-tab-dn-sr-tb-sd-se-br-se, var(--_ctm-dn-sr-tb-sd-se-br-se)));
1422
+ --_sf-sd-br-wh: var(--_ctm-mob-dn-sr-tb-sd-se-br-wh,
1423
+ var(--_ctm-tab-dn-sr-tb-sd-se-br-wh, var(--_ctm-dn-sr-tb-sd-se-br-wh)));
1424
+ --_sf-sd-br-rs: var(--_ctm-mob-dn-sr-tb-sd-se-br-rs,
1425
+ var(--_ctm-tab-dn-sr-tb-sd-se-br-rs, var(--_ctm-dn-sr-tb-sd-se-br-rs)));
1426
+ --_sf-sd-at: var(--_ctm-mob-dn-sr-tb-sd-se-at,
1427
+ var(--_ctm-tab-dn-sr-tb-sd-se-at, var(--_ctm-dn-sr-tb-sd-se-at)));
1428
+ --_sf-sd-in-ad-tt-sg: var(--_ctm-mob-dn-sr-tb-sd-se-in-ad-tt-sg,
1429
+ var(--_ctm-tab-dn-sr-tb-sd-se-in-ad-tt-sg, var(--_ctm-dn-sr-tb-sd-se-in-ad-tt-sg)));
1430
+
1431
+ // for shadow
1432
+ --_sf-sd-sw-ae: var(--_ctm-mob-dn-sr-tb-sd-se-sw-ae,
1433
+ var(--_ctm-tab-dn-sr-tb-sd-se-sw-ae, var(--_ctm-dn-sr-tb-sd-se-sw-ae)));
1434
+ --_sf-sd-sw-br: var(--_ctm-mob-dn-sr-tb-sd-se-sw-br,
1435
+ var(--_ctm-tab-dn-sr-tb-sd-se-sw-br, var(--_ctm-dn-sr-tb-sd-se-sw-br)));
1436
+ --_sf-sd-sw-hr: var(--_ctm-mob-dn-sr-tb-sd-se-sw-hr,
1437
+ var(--_ctm-tab-dn-sr-tb-sd-se-sw-hr, var(--_ctm-dn-sr-tb-sd-se-sw-hr)));
1438
+ --_sf-sd-sw-cr: var(--_ctm-mob-dn-sr-tb-sd-se-sw-cr,
1439
+ var(--_ctm-tab-dn-sr-tb-sd-se-sw-cr, var(--_ctm-dn-sr-tb-sd-se-sw-cr)));
1440
+
1441
+ // for font
1442
+
1443
+ --_sf-sd-cr: var(--_ctm-mob-dn-sr-tb-sd-se-cr,
1444
+ var(--_ctm-tab-dn-sr-tb-sd-se-cr, var(--_ctm-dn-sr-tb-sd-se-cr)));
1445
+ --_sf-sd-ft-fy: var(--_ctm-mob-dn-sr-tb-sd-se-ft-fy,
1446
+ var(--_ctm-tab-dn-sr-tb-sd-se-ft-fy, var(--_ctm-dn-sr-tb-sd-se-ft-fy)));
1447
+ --_sf-sd-ft-se: var(--_ctm-mob-dn-sr-tb-sd-se-ft-se,
1448
+ var(--_ctm-tab-dn-sr-tb-sd-se-ft-se, var(--_ctm-dn-sr-tb-sd-se-ft-se)));
1449
+ --_sf-sd-ft-wt: var(--_ctm-mob-dn-sr-tb-sd-se-ft-wt,
1450
+ var(--_ctm-tab-dn-sr-tb-sd-se-ft-wt, var(--_ctm-dn-sr-tb-sd-se-ft-wt)));
1451
+ --_sf-sd-ft-se-ic: var(--_ctm-mob-dn-sr-tb-sd-se-ft-se-ic,
1452
+ var(--_ctm-tab-dn-sr-tb-sd-se-ft-se-ic, var(--_ctm-dn-sr-tb-sd-se-ft-se-ic)));
1453
+ --_sf-sd-tt-an: var(--_ctm-mob-dn-sr-tb-sd-se-tt-an,
1454
+ var(--_ctm-tab-dn-sr-tb-sd-se-tt-an, var(--_ctm-dn-sr-tb-sd-se-tt-an)));
1455
+ --_sf-sd-lr-sg: var(--_ctm-mob-dn-sr-tb-sd-se-lr-sg,
1456
+ var(--_ctm-tab-dn-sr-tb-sd-se-lr-sg, var(--_ctm-dn-sr-tb-sd-se-lr-sg)));
1457
+ --_sf-sd-le-ht: var(--_ctm-mob-dn-sr-tb-sd-se-le-ht,
1458
+ var(--_ctm-tab-dn-sr-tb-sd-se-le-ht, var(--_ctm-dn-sr-tb-sd-se-le-ht)));
1459
+ --_sf-sd-tt-tm: var(--_ctm-mob-dn-sr-tb-sd-se-tt-tm,
1460
+ var(--_ctm-tab-dn-sr-tb-sd-se-tt-tm, var(--_ctm-dn-sr-tb-sd-se-tt-tm)));
1461
+ --_sf-sd-wd-wp: var(--_ctm-mob-dn-sr-tb-sd-se-wd-wp,
1462
+ var(--_ctm-tab-dn-sr-tb-sd-se-wd-wp, var(--_ctm-dn-sr-tb-sd-se-wd-wp)));
1463
+ --_sf-sd-wd-bk: var(--_ctm-mob-dn-sr-tb-sd-se-wd-bk,
1464
+ var(--_ctm-tab-dn-sr-tb-sd-se-wd-bk, var(--_ctm-dn-sr-tb-sd-se-wd-bk)));
1465
+
1466
+ --_sf-sd-in-se: var(--_ctm-mob-dn-sr-tb-sd-se-in-se,
1467
+ var(--_ctm-tab-dn-sr-tb-sd-se-in-se, var(--_ctm-dn-sr-tb-sd-se-in-se)));
1468
+ --_sf-sd-in-se: var(--_ctm-mob-dn-sr-tb-sd-se-in-se,
1469
+ var(--_ctm-tab-dn-sr-tb-sd-se-in-se, var(--_ctm-dn-sr-tb-sd-se-in-se)));
1470
+ --_sf-sd-in-c1: var(--_ctm-mob-dn-sr-tb-sd-se-in-c1,
1471
+ var(--_ctm-tab-dn-sr-tb-sd-se-in-c1, var(--_ctm-dn-sr-tb-sd-se-in-c1)));
1472
+ --_sf-sd-ue: var(--_ctm-mob-dn-sr-tb-hr-ue,
1473
+ var(--_ctm-tab-dn-sr-tb-hr-ue, var(--_ctm-dn-sr-tb-hr-ue)));
1474
+
1475
+ // for pading and width
1476
+ --_sf-sd-pg: var(--_ctm-mob-dn-sr-tb-sd-se-pg,
1477
+ var(--_ctm-tab-dn-sr-tb-sd-se-pg, var(--_ctm-dn-sr-tb-sd-se-pg)));
1478
+ --_sf-sd-wh: var(--_ctm-mob-dn-sr-tb-sd-se-wh,
1479
+ var(--_ctm-tab-dn-sr-tb-sd-se-wh, var(--_ctm-dn-sr-tb-sd-se-wh)));
1480
+
1481
+ &[data-hover-show-shadow="false"] {
1482
+ --_hover-show-shadow: none;
1483
+ }
2090
1484
 
2091
- display: flex;
2092
- align-items: center;
2093
- justify-content: center;
2094
- cursor: pointer;
2095
- outline: none;
1485
+ &[data-hover-show-icon="false"] {
1486
+ --_hover-show-icon: none;
1487
+ }
2096
1488
 
2097
- &[data-show-border="false"] {
2098
- border: none;
2099
- }
1489
+ background-color: var(--_sf-sd-bd-cr,
1490
+ prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-bd-cr));
2100
1491
 
2101
- // Background Shape overrides the configured radius when it names one;
2102
- // "None" leaves the radius alone.
2103
- &[data-background-shape="Round"] {
2104
- border-radius: 50%;
2105
- }
2106
- &[data-background-shape="Square"] {
2107
- border-radius: 0;
2108
- }
1492
+ padding: var(--_sf-sd-pg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-pg));
1493
+ display: flex;
1494
+ flex-direction: var(--_sf-fd-bn);
1495
+ align-items: center;
2109
1496
 
2110
- &:disabled {
2111
- & svg {
2112
- path {
2113
- stroke: #c3b7b7;
2114
- }
2115
- }
2116
- }
2117
- }
2118
- .left-button {
2119
- margin-left: 12px;
2120
- }
2121
- .right-button {
2122
- margin-right: 12px;
2123
- }
2124
- .icon {
2125
- display: flex;
1497
+ justify-content: var(--_sf-sd-at, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-at));
1498
+ gap: var(--_sf-sd-in-ad-tt-sg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-in-ad-tt-sg));
2126
1499
 
2127
- svg {
2128
- width: calc(#{prepareMediaVariable(#{$ad-slider-arrows}-aw-se, 20px)} * 0.5);
2129
- height: calc(#{prepareMediaVariable(#{$ad-slider-arrows}-aw-se, 20px)} * 0.5);
2130
-
2131
- // Arrow Color. `path { stroke }` alone was too narrow — it matched the
2132
- // built-in chevrons and nothing else. Cover the svg itself and any
2133
- // descendant carrying a stroke or a fill, leaving parts explicitly set
2134
- // to "none" alone so an unfilled shape stays unfilled.
2135
- &[stroke]:not([stroke="none"]),
2136
- [stroke]:not([stroke="none"]) {
2137
- stroke: prepareMediaVariable(#{$ad-slider-arrows}-aw-cr, #514949);
2138
- }
2139
- &[fill]:not([fill="none"]),
2140
- [fill]:not([fill="none"]) {
2141
- fill: prepareMediaVariable(#{$ad-slider-arrows}-aw-cr, #514949);
2142
- }
2143
- }
2144
- }
1500
+ border-radius: var(--_sf-sd-br-rs, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-rs));
2145
1501
 
2146
- &[data-control-type="Side"] {
2147
- .embla__viewport {
2148
- width: calc(100% - 85px);
2149
- margin-inline: auto;
2150
- }
2151
- .left-button {
2152
- position: absolute;
2153
- left: 0;
2154
- top: 50%;
2155
- transform: translateY(-50%);
2156
- }
2157
- .right-button {
2158
- position: absolute;
1502
+ box-shadow: var(--_sf-sd-sw-ae, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-ae)) var(--_sf-sd-sw-br, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-br)) var(--_sf-sd-sw-sd, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-sd)) var(--_sf-sd-sw-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-sw-cr));
2159
1503
 
2160
- right: 0;
2161
- top: 50%;
2162
- transform: translateY(-50%);
2163
- }
2164
- }
1504
+ &[data-show-border="true"] {
1505
+ border-color: var(--_sf-sd-br-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-cr));
2165
1506
 
2166
- &[data-thumbnail-placement="top"] {
2167
- flex-direction: column-reverse;
2168
- }
2169
- &[data-thumbnail-placement="bottom"] {
2170
- flex-direction: column;
2171
- }
2172
- &[data-thumbnail-placement="left"] {
2173
- flex-direction: row-reverse;
1507
+ border-style: var(--_sf-sd-br-se, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-se));
2174
1508
 
2175
- .embla__thumbs {
2176
- width: var(--_ctm-lt-tl-se);
2177
- height: 100%;
1509
+ border-width: var(--_sf-sd-br-wh, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-br-wh));
1510
+ }
2178
1511
 
2179
- & .embla__thumbs__container {
2180
- flex-direction: column;
2181
- height: 100%;
2182
- }
2183
- }
2184
- }
2185
- &[data-thumbnail-placement="right"] {
2186
- flex-direction: row;
2187
- .embla__thumbs {
2188
- width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1512
+ // text styles
2189
1513
 
2190
- height: 100%;
1514
+ color: var(--_sf-sd-cr, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-cr));
2191
1515
 
2192
- & .embla__thumbs__container {
2193
- flex-direction: column;
2194
- height: 100%;
2195
- }
2196
- }
2197
- }
2198
- .embla__dots {
2199
- display: flex;
2200
- flex-wrap: wrap;
2201
- justify-content: center;
2202
- align-items: center;
2203
- margin-right: calc((2.6rem - 1.4rem) / 2 * -1);
2204
- gap: 6px;
2205
-
2206
- &[data-control-type="Bottom-Overflow"] {
2207
- position: absolute;
2208
- bottom: 10px;
2209
- left: 50%;
2210
- transform: translateX(-50%);
2211
- width: 75%;
2212
- }
2213
- .embla__dot {
2214
- -webkit-tap-highlight-color: rgba(var(--text-high-contrast-rgb-value), 0.5);
2215
- -webkit-appearance: none;
2216
- appearance: none;
2217
- background-color: var(
2218
- --_ctm-mob-dn-pn-ds-or-dt-cr,
2219
- var(--_ctm-tab-dn-pn-ds-or-dt-cr, var(--_ctm-dn-pn-ds-or-dt-cr))
2220
- );
2221
-
2222
- touch-action: manipulation;
2223
- display: inline-flex;
2224
- text-decoration: none;
2225
- cursor: pointer;
2226
- border: 0;
2227
- padding: 0;
2228
- margin: 0;
2229
- // width: 0.6rem;
2230
- // height: 0.6rem;
2231
- width: var(
2232
- --_ctm-mob-dn-pn-ds-dt-se,
2233
- var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
2234
- );
2235
- height: var(
2236
- --_ctm-mob-dn-pn-ds-dt-se,
2237
- var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
2238
- );
1516
+ font-family: var(--_sf-sd-ft-fy, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-fy));
2239
1517
 
2240
- display: flex;
2241
- align-items: center;
2242
- justify-content: center;
2243
- border-radius: 50%;
2244
- }
2245
- .embla__dot:after {
2246
- // box-shadow: inset 0 0 0 0.2rem var(--detail-medium-contrast);
2247
- width: var(
2248
- --_ctm-mob-dn-pn-ds-dt-se,
2249
- var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
2250
- );
2251
- height: var(
2252
- --_ctm-mob-dn-pn-ds-dt-se,
2253
- var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
2254
- );
2255
-
2256
- border-radius: 50%;
2257
- display: flex;
2258
- align-items: center;
2259
- content: "";
2260
- }
2261
- .embla__dot--selected:after {
2262
- box-shadow: inset 0 0 0 1px var(--text-body);
2263
- background-color: var(
2264
- --_ctm-mob-dn-pn-ds-ct-dt-cr,
2265
- var(--_ctm-tab-dn-pn-ds-ct-dt-cr, var(--_ctm-dn-pn-ds-ct-dt-cr))
2266
- );
2267
- }
2268
- &[data-slider-control="Pagination Line"] {
2269
- .embla__dot {
2270
- width: var(
2271
- --_ctm-mob-dn-pn-le-le-wh,
2272
- var(--_ctm-tab-dn-pn-le-le-wh, var(--_ctm-dn-pn-le-le-wh))
2273
- );
2274
- height: var(
2275
- --_ctm-mob-dn-pn-le-le-ht,
2276
- var(--_ctm-tab-dn-pn-le-le-ht, var(--_ctm-dn-pn-le-le-ht))
2277
- );
2278
- background-color: var(
2279
- --_ctm-mob-dn-pn-le-or-le-cr,
2280
- var(--_ctm-tab-dn-pn-le-or-le-cr, var(--_ctm-dn-pn-le-or-le-cr))
2281
- );
2282
- border-radius: 6px;
2283
- }
1518
+ &.flex__overflow {
1519
+ white-space: normal;
1520
+ @include restrictToLinesShow(#{var(--_sf-line-clamp, 1)});
1521
+ }
2284
1522
 
2285
- .embla__dot--selected:after {
2286
- box-shadow: inset 0 0 0 1px var(--text-body);
2287
- border-radius: 6px;
2288
- width: var(
2289
- --_ctm-mob-dn-pn-le-le-wh,
2290
- var(--_ctm-tab-dn-pn-le-le-wh, var(--_ctm-dn-pn-le-le-wh))
2291
- );
2292
- height: var(
2293
- --_ctm-mob-dn-pn-le-le-ht,
2294
- var(--_ctm-tab-dn-pn-le-le-ht, var(--_ctm-dn-pn-le-le-ht))
2295
- );
2296
- background-color: var(
2297
- --_ctm-mob-dn-pn-le-ct-le-cr,
2298
- var(--_ctm-tab-dn-pn-le-ct-le-cr, var(--_ctm-dn-pn-le-ct-le-cr))
2299
- );
2300
- }
2301
- }
2302
- }
1523
+ font-size: var(--_sf-sd-ft-se, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-se));
2303
1524
 
2304
- .embla__thumbs {
2305
- width: 100%;
2306
- height: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
2307
-
2308
- position: relative;
2309
- display: grid;
2310
- grid-template-columns: 1fr;
2311
- overflow: hidden;
2312
- // margin: 10px;
2313
- padding: 10px;
2314
-
2315
- .embla__thumbs__viewport {
2316
- width: 100%;
2317
- height: 100%;
2318
- position: relative;
2319
- display: flex;
2320
- flex-direction: column;
1525
+ font-weight: var(--_sf-sd-ft-wt, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-wt));
2321
1526
 
2322
- overflow: hidden;
2323
- }
2324
- .embla__thumbs__container {
2325
- display: flex;
2326
- flex-direction: row;
2327
- margin-left: calc(var(--thumbs-slide-spacing) * -1);
2328
- gap: var(--_ctm-mob-lt-tl-sg, var(--_ctm-tab-lt-tl-sg, var(--_ctm-lt-tl-sg)));
2329
-
2330
- width: 100%;
2331
- // justify-content: center;
2332
- // height: 200px;
2333
-
2334
- .embla__thumbs__slide {
2335
- min-width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
2336
- max-width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
2337
- height: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
2338
-
2339
- & img {
2340
- width: 100%;
2341
- height: 100%;
2342
- }
2343
- }
2344
- }
2345
- }
1527
+ font-style: var(--_sf-sd-ft-se-ic,
1528
+ prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-ft-se-ic));
1529
+
1530
+ text-align: var(--_sf-sd-tt-an, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-tt-an));
1531
+
1532
+ letter-spacing: var(--_sf-sd-lr-sg, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-lr-sg));
1533
+
1534
+ line-height: var(--_sf-sd-le-ht, prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-le-ht));
1535
+
1536
+ text-decoration: var(--_sf-sd-ue, prepareMediaVariable(--_ctm-dn-dt-ue));
1537
+
1538
+ text-transform: var(--_sf-sd-tt-tm,
1539
+ prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-tt-tm, none));
1540
+
1541
+ word-wrap: var(--_sf-sd-wd-wp,
1542
+ prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-wd-wp, normal));
1543
+
1544
+ word-break: var(--_sf-sd-wd-bk,
1545
+ prepareMediaVariable(--_ctm-dn-sr-tb-dt-se-wd-bk, normal));
1546
+
1547
+ [data-element-style="Text"] {
1548
+ display: inline-block;
1549
+ width: 100%;
2346
1550
  }
2347
1551
  }
2348
- // ---- Tree view: profiles sidebar + allocation on the right ---------------
2349
- // Two columns, mirroring the Category Groups element. The gap between them is
2350
- // the element's own allocation item gap so it stays in the same layout panel.
2351
- .allocation_details_tree {
2352
- display: flex;
2353
- align-items: flex-start;
2354
- width: 100%;
2355
- gap: prepareMediaVariable(#{$ad-sidebar-design}-im-gp, 36px);
1552
+ }
1553
+
1554
+ .embla {
1555
+ height: auto;
1556
+ padding: var(--_sf-flex-embla-pd-daka-mobile, 10px);
2356
1557
 
2357
- .ad_main {
2358
- flex: 1;
2359
- min-width: 0;
1558
+ .embla__viewport {
1559
+ .embla__container {
1560
+ display: flex;
1561
+ gap: prepareMediaVariable(--_ctm-dn-sr-wt-se-im-gp);
1562
+
1563
+ .embla__slide {
1564
+ width: unset;
1565
+ }
2360
1566
  }
2361
1567
  }
1568
+ }
1569
+ }
2362
1570
 
2363
- .ad_sidebar {
2364
- display: flex;
2365
- flex-direction: column;
2366
- // Sidebar Container → gap (heading ↔ tree) + padding.
2367
- gap: prepareMediaVariable(#{$ad-sidebar}-im-gp, 12px);
2368
- padding: prepareMediaVariable(#{$ad-sidebar}-pg, 0);
2369
- width: 260px;
2370
- flex-shrink: 0;
2371
- @include ad-design($ad-sidebar);
2372
- border-radius: prepareMediaVariable(#{$ad-sidebar}-br-rs, 0);
2373
- }
1571
+ .embla {
1572
+ width: 100%;
1573
+ height: 100%;
1574
+ position: relative;
1575
+ display: flex;
1576
+ flex-direction: column;
1577
+ // padding: 10px;
1578
+ // overflow: hidden;
2374
1579
 
2375
- .ad_sidebar_heading {
2376
- white-space: nowrap;
2377
- margin: 0;
2378
- line-height: 1.25;
2379
- // `uppercase` is the fallback, not a hardcoded rule, so Text Transform can
2380
- // override it while untouched elements keep the look they always had.
2381
- @include ad-font($ad-heading, #002a4e, 16px, 400, uppercase);
2382
- @include ad-text-overflow;
2383
- }
1580
+ .embla__viewport {
1581
+ width: 100%;
1582
+ height: 100%;
1583
+ position: relative;
1584
+ display: flex;
1585
+ flex-direction: column;
2384
1586
 
2385
- .ad_allocation_tree {
2386
- display: flex;
2387
- flex-direction: column;
2388
- // Gap BETWEEN profile rows (Sidebar Container → Profile Gap).
2389
- gap: prepareMediaVariable(#{$ad-sidebar}-pe-gp, 8px);
1587
+ overflow: hidden;
1588
+
1589
+ .embla__container {
2390
1590
  width: 100%;
1591
+ height: 100%;
1592
+ display: grid;
1593
+ grid-template-rows: 100%;
1594
+
1595
+ grid-template-columns: repeat(var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se))),
1596
+ calc(100% / var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se)))));
1597
+
1598
+ grid-auto-flow: column;
1599
+ gap: var(--_ctm-mob-lt-im-gp, var(--_ctm-tab-lt-im-gp, var(--_ctm-lt-im-gp)));
1600
+
1601
+ &[data-control-type="Bottom"][data-slider-control="Arrows"] {
1602
+ height: calc(100% - calc(50px + 10px));
1603
+ }
1604
+
1605
+ &[data-control-type="Bottom"][data-slider-control="Pagination Line"] {
1606
+ height: calc(100% - calc(50px + 20px));
1607
+ }
1608
+
1609
+ &[data-control-type="Bottom"][data-slider-control="Dots"] {
1610
+ height: calc(100% - calc(var(--_ctm-mob-dn-pn-ds-dt-se,
1611
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))) + 20px));
1612
+ }
1613
+
1614
+ .embla__slide {
1615
+ width: 100%;
1616
+ height: 100%;
1617
+
1618
+ &>img {
1619
+ width: 100%;
1620
+ height: 100%;
1621
+ }
1622
+ }
2391
1623
  }
1624
+ }
2392
1625
 
2393
- .ad_tree_node {
2394
- display: flex;
2395
- align-items: center;
2396
- // Profile Row → item gap (icon ↔ label).
2397
- gap: prepareMediaVariable(#{$ad-tree}-dt-se-im-gp, 4px);
2398
- padding: prepareMediaVariable(#{$ad-tree}-dt-se-pg, 4px 0);
2399
- cursor: pointer;
2400
- @include ad-design(#{$ad-tree}-dt-se);
1626
+ &:not([data-display-style="Column"]) {
1627
+ .embla__container {
1628
+ grid-auto-columns: calc(100% / var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se))));
2401
1629
  }
1630
+ }
2402
1631
 
2403
- .ad_tree_node_icon {
2404
- display: flex;
2405
- align-items: center;
1632
+ .arrow-navigation {
1633
+ display: flex;
1634
+ position: absolute;
1635
+ top: 50%;
1636
+ left: 50%;
1637
+ width: 100%;
1638
+ justify-content: space-between;
1639
+ transform: translate(-50%, -50%);
1640
+ // padding-left: 20px;
1641
+
1642
+ &[data-control-type="Bottom-Overflow"] {
1643
+ transform: translateX(-50%);
1644
+ width: 100%;
2406
1645
  justify-content: center;
2407
- width: 24px;
2408
- height: 24px;
2409
- flex-shrink: 0;
2410
- color: ad-tree-icon-var("dt-se", "in-c1", #002a4e);
1646
+ gap: 12px;
1647
+ top: unset;
1648
+ bottom: 6px;
2411
1649
  }
2412
1650
 
2413
- .ad_chevron {
2414
- display: flex;
2415
- align-items: center;
1651
+ &[data-control-type="Bottom"] {
1652
+ transform: unset;
1653
+ position: static;
1654
+ width: 100%;
2416
1655
  justify-content: center;
2417
- transition: transform 0.15s ease;
2418
- @include ad-tree-icon("dt-se", "in-se", "in-c1");
1656
+ gap: 12px;
1657
+ margin-top: 10px;
2419
1658
  }
1659
+ }
2420
1660
 
2421
- .ad_chevron.is-open {
2422
- transform: rotate(90deg);
1661
+ // Profiles Slider > Pagination Arrows. These rules used to read
1662
+ // `--_ctm-dn-pn-as-*`, a `design.paginationArrows` node that does not exist
1663
+ // on this element — so every one of them fell through to its hardcoded
1664
+ // default and the panel could not reach the strip's arrows at all. They now
1665
+ // read design.slider.paginationArrows, and each fallback is the value that
1666
+ // was hardcoded, so an untouched strip renders exactly as before.
1667
+ &[data-control-type="Side"] {
1668
+
1669
+ .left-button,
1670
+ .right-button {
1671
+ background-color: prepareMediaVariable(#{$ad-slider-arrows}-bd-cr, transparent);
2423
1672
  }
1673
+ }
2424
1674
 
2425
- // Show / hide of the icon, per interaction state. `aria-expanded` picks which of
2426
- // the two switches applies: the Collapsed Icon's while the profile is closed,
2427
- // the Expanded Icon's while it is open.
2428
- //
2429
- // Each state emits BOTH outcomes, not just the hidden one — a state that shows
2430
- // the icon has to be able to bring it back when the state beneath it hid it
2431
- // (Default off, Hover on). Hover and Selected carry one extra selector each, so
2432
- // they already outrank Default; Selected is written last so it wins over Hover
2433
- // on a row that is both.
2434
- .ad_tree_node[aria-expanded="false"][data-show-icon="false"] .ad_tree_node_icon,
2435
- .ad_tree_node[aria-expanded="true"][data-show-icon-expanded="false"] .ad_tree_node_icon {
2436
- display: none;
2437
- }
1675
+ &[data-background-shape="Round"] {
2438
1676
 
2439
- .ad_tree_node[aria-expanded="false"]:hover[data-hover-show-icon="false"] .ad_tree_node_icon,
2440
- .ad_tree_node[aria-expanded="true"]:hover[data-hover-show-icon-expanded="false"]
2441
- .ad_tree_node_icon {
2442
- display: none;
2443
- }
2444
- .ad_tree_node[aria-expanded="false"]:hover[data-hover-show-icon="true"] .ad_tree_node_icon,
2445
- .ad_tree_node[aria-expanded="true"]:hover[data-hover-show-icon-expanded="true"]
2446
- .ad_tree_node_icon {
2447
- display: flex;
1677
+ .left-button,
1678
+ .right-button {
1679
+ background-color: prepareMediaVariable(#{$ad-slider-arrows}-bd-cr, #f2f5f5);
1680
+ box-sizing: 0 4px 8px rgba(0, 0, 0, 0.1);
2448
1681
  }
1682
+ }
2449
1683
 
2450
- .ad_tree_node[aria-expanded="false"].is-active[data-selected-show-icon="false"]
2451
- .ad_tree_node_icon,
2452
- .ad_tree_node[aria-expanded="true"].is-active[data-selected-show-icon-expanded="false"]
2453
- .ad_tree_node_icon {
2454
- display: none;
2455
- }
2456
- .ad_tree_node[aria-expanded="false"].is-active[data-selected-show-icon="true"]
2457
- .ad_tree_node_icon,
2458
- .ad_tree_node[aria-expanded="true"].is-active[data-selected-show-icon-expanded="true"]
2459
- .ad_tree_node_icon {
2460
- display: flex;
1684
+ .left-button,
1685
+ .right-button {
1686
+ padding: prepareMediaVariable(#{$ad-slider-arrows}-pg, 10px);
1687
+ border-color: prepareMediaVariable(#{$ad-slider-arrows}-br-cr, transparent);
1688
+ border-style: prepareMediaVariable(#{$ad-slider-arrows}-br-se, solid);
1689
+ border-width: prepareMediaVariable(#{$ad-slider-arrows}-br-wh, 0);
1690
+ // 50%, not prepareMediaVariable's `inherit` tail: an arrow with no
1691
+ // configured radius has always been a circle.
1692
+ border-radius: prepareMediaVariable(#{$ad-slider-arrows}-br-rs, 50%);
1693
+ // 20px, not prepareMediaVariable's `inherit` tail — inheriting the strip's
1694
+ // width here would blow the buttons out. 20 is also the schema default, so
1695
+ // a strip saved before this node existed matches a fresh one.
1696
+ width: prepareMediaVariable(#{$ad-slider-arrows}-aw-se, 20px);
1697
+ height: prepareMediaVariable(#{$ad-slider-arrows}-aw-se, 20px);
1698
+ // Opt-in, like the gallery's: these arrows have never cast a shadow.
1699
+ box-shadow: none;
1700
+
1701
+ &[data-show-shadow="true"] {
1702
+ box-shadow: prepareMediaVariable(#{$ad-slider-arrows}-sw-ae, 0 0) prepareMediaVariable(#{$ad-slider-arrows}-sw-br, 0) prepareMediaVariable(#{$ad-slider-arrows}-sw-sd, 0) prepareMediaVariable(#{$ad-slider-arrows}-sw-cr, transparent);
2461
1703
  }
2462
1704
 
2463
- // The expanded icon has its own size/colour vars so it is independent of the
2464
- // collapsed one.
2465
- .ad_chevron.is-expanded {
2466
- @include ad-tree-icon("dt-se", "in-se-ed", "in-cr-ed");
2467
- }
1705
+ display: flex;
1706
+ align-items: center;
1707
+ justify-content: center;
1708
+ cursor: pointer;
1709
+ outline: none;
2468
1710
 
2469
- .ad_tree_node_label {
2470
- flex: 1;
2471
- min-width: 0;
2472
- @include ad-font(#{$ad-tree}-dt-se, #002a4e, 14px, 600);
2473
- @include ad-text-overflow;
1711
+ &[data-show-border="false"] {
1712
+ border: none;
2474
1713
  }
2475
1714
 
2476
- .ad_tree_node:hover {
2477
- @include ad-design-state($ad-tree, hr-se);
2478
- @include ad-layout-state($ad-tree, hr-se, 4px 0, 4px);
2479
- }
2480
- .ad_tree_node:hover .ad_tree_node_label {
2481
- @include ad-font-state($ad-tree, hr-se, #002a4e, 14px, 600);
2482
- }
2483
- // The icon follows the row it sits in. `.is-expanded` is listed after the plain
2484
- // rule in each block on purpose: it is the more specific selector, so the
2485
- // expanded icon keeps its own size/colour instead of inheriting the collapsed
2486
- // one's while the row is hovered or active.
2487
- .ad_tree_node:hover .ad_tree_node_icon {
2488
- color: ad-tree-icon-var("hr-se", "in-c1", #002a4e);
2489
- }
2490
- .ad_tree_node:hover .ad_chevron {
2491
- @include ad-tree-icon("hr-se", "in-se", "in-c1");
2492
- }
2493
- .ad_tree_node:hover .ad_chevron.is-expanded {
2494
- @include ad-tree-icon("hr-se", "in-se-ed", "in-cr-ed");
1715
+ // Background Shape overrides the configured radius when it names one;
1716
+ // "None" leaves the radius alone.
1717
+ &[data-background-shape="Round"] {
1718
+ border-radius: 50%;
2495
1719
  }
2496
- .ad_tree_node.is-active {
2497
- @include ad-design-state($ad-tree, sd-se);
2498
- @include ad-layout-state($ad-tree, sd-se, 4px 0, 4px);
2499
- }
2500
- .ad_tree_node.is-active .ad_tree_node_label {
2501
- @include ad-font-state($ad-tree, sd-se, #002a4e, 14px, 600);
2502
- }
2503
- .ad_tree_node.is-active .ad_tree_node_icon {
2504
- color: ad-tree-icon-var("sd-se", "in-c1", #002a4e);
1720
+
1721
+ &[data-background-shape="Square"] {
1722
+ border-radius: 0;
2505
1723
  }
2506
- .ad_tree_node.is-active .ad_chevron {
2507
- @include ad-tree-icon("sd-se", "in-se", "in-c1");
1724
+
1725
+ &:disabled {
1726
+ & svg {
1727
+ path {
1728
+ stroke: #c3b7b7;
1729
+ }
1730
+ }
2508
1731
  }
2509
- .ad_tree_node.is-active .ad_chevron.is-expanded {
2510
- @include ad-tree-icon("sd-se", "in-se-ed", "in-cr-ed");
1732
+ }
1733
+
1734
+ .left-button {
1735
+ margin-left: 12px;
1736
+ }
1737
+
1738
+ .right-button {
1739
+ margin-right: 12px;
1740
+ }
1741
+
1742
+ .icon {
1743
+ display: flex;
1744
+
1745
+ svg {
1746
+ width: calc(#{prepareMediaVariable(#{$ad-slider-arrows}-aw-se, 20px)
2511
1747
  }
2512
1748
 
2513
- .ad_subtree {
2514
- display: flex;
1749
+ * 0.5);
1750
+ height: calc(#{prepareMediaVariable(#{$ad-slider-arrows}-aw-se, 20px)
1751
+ }
1752
+
1753
+ * 0.5);
1754
+
1755
+ // Arrow Color. `path { stroke }` alone was too narrow — it matched the
1756
+ // built-in chevrons and nothing else. Cover the svg itself and any
1757
+ // descendant carrying a stroke or a fill, leaving parts explicitly set
1758
+ // to "none" alone so an unfilled shape stays unfilled.
1759
+ &[stroke]:not([stroke="none"]),
1760
+ [stroke]:not([stroke="none"]) {
1761
+ stroke: prepareMediaVariable(#{$ad-slider-arrows}-aw-cr, #514949);
1762
+ }
1763
+
1764
+ &[fill]:not([fill="none"]),
1765
+ [fill]:not([fill="none"]) {
1766
+ fill: prepareMediaVariable(#{$ad-slider-arrows}-aw-cr, #514949);
1767
+ }
1768
+ }
1769
+ }
1770
+
1771
+ &[data-control-type="Side"] {
1772
+ .embla__viewport {
1773
+ width: calc(100% - 85px);
1774
+ margin-inline: auto;
1775
+ }
1776
+
1777
+ .left-button {
1778
+ position: absolute;
1779
+ left: 0;
1780
+ top: 50%;
1781
+ transform: translateY(-50%);
1782
+ }
1783
+
1784
+ .right-button {
1785
+ position: absolute;
1786
+
1787
+ right: 0;
1788
+ top: 50%;
1789
+ transform: translateY(-50%);
1790
+ }
1791
+ }
1792
+
1793
+ &[data-thumbnail-placement="top"] {
1794
+ flex-direction: column-reverse;
1795
+ }
1796
+
1797
+ &[data-thumbnail-placement="bottom"] {
1798
+ flex-direction: column;
1799
+ }
1800
+
1801
+ &[data-thumbnail-placement="left"] {
1802
+ flex-direction: row-reverse;
1803
+
1804
+ .embla__thumbs {
1805
+ width: var(--_ctm-lt-tl-se);
1806
+ height: 100%;
1807
+
1808
+ & .embla__thumbs__container {
2515
1809
  flex-direction: column;
2516
- // Gap BETWEEN allocation rows (Sidebar Container → Allocation Gap).
2517
- gap: prepareMediaVariable(#{$ad-sidebar}-an-gp, 8px);
2518
- padding-left: 31px;
2519
- width: 100%;
1810
+ height: 100%;
2520
1811
  }
1812
+ }
1813
+ }
2521
1814
 
2522
- .ad_subtree_node {
2523
- padding: prepareMediaVariable(#{$ad-subtree}-dt-se-pg, 4px 0);
2524
- cursor: pointer;
2525
- @include ad-design(#{$ad-subtree}-dt-se);
2526
- }
1815
+ &[data-thumbnail-placement="right"] {
1816
+ flex-direction: row;
2527
1817
 
2528
- .ad_subtree_node_label {
2529
- letter-spacing: -0.28px;
2530
- min-width: 0;
2531
- @include ad-font(#{$ad-subtree}-dt-se, #1d1b1c, 14px, 400);
2532
- @include ad-text-overflow;
2533
- }
1818
+ .embla__thumbs {
1819
+ width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
2534
1820
 
2535
- .ad_subtree_node:hover {
2536
- @include ad-design-state($ad-subtree, hr-se);
2537
- @include ad-layout-state($ad-subtree, hr-se, 4px 0);
2538
- }
2539
- .ad_subtree_node:hover .ad_subtree_node_label {
2540
- @include ad-font-state($ad-subtree, hr-se, #1d1b1c, 14px, 400);
1821
+ height: 100%;
1822
+
1823
+ & .embla__thumbs__container {
1824
+ flex-direction: column;
1825
+ height: 100%;
2541
1826
  }
2542
- .ad_subtree_node.is-active {
2543
- @include ad-design-state($ad-subtree, sd-se);
2544
- @include ad-layout-state($ad-subtree, sd-se, 4px 0);
1827
+ }
1828
+ }
1829
+
1830
+ .embla__dots {
1831
+ display: flex;
1832
+ flex-wrap: wrap;
1833
+ justify-content: center;
1834
+ align-items: center;
1835
+ margin-right: calc((2.6rem - 1.4rem) / 2 * -1);
1836
+ gap: 6px;
1837
+
1838
+ &[data-control-type="Bottom-Overflow"] {
1839
+ position: absolute;
1840
+ bottom: 10px;
1841
+ left: 50%;
1842
+ transform: translateX(-50%);
1843
+ width: 75%;
1844
+ }
1845
+
1846
+ .embla__dot {
1847
+ -webkit-tap-highlight-color: rgba(var(--text-high-contrast-rgb-value), 0.5);
1848
+ -webkit-appearance: none;
1849
+ appearance: none;
1850
+ background-color: var(--_ctm-mob-dn-pn-ds-or-dt-cr,
1851
+ var(--_ctm-tab-dn-pn-ds-or-dt-cr, var(--_ctm-dn-pn-ds-or-dt-cr)));
1852
+
1853
+ touch-action: manipulation;
1854
+ display: inline-flex;
1855
+ text-decoration: none;
1856
+ cursor: pointer;
1857
+ border: 0;
1858
+ padding: 0;
1859
+ margin: 0;
1860
+ // width: 0.6rem;
1861
+ // height: 0.6rem;
1862
+ width: var(--_ctm-mob-dn-pn-ds-dt-se,
1863
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se)));
1864
+ height: var(--_ctm-mob-dn-pn-ds-dt-se,
1865
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se)));
1866
+
1867
+ display: flex;
1868
+ align-items: center;
1869
+ justify-content: center;
1870
+ border-radius: 50%;
1871
+ }
1872
+
1873
+ .embla__dot:after {
1874
+ // box-shadow: inset 0 0 0 0.2rem var(--detail-medium-contrast);
1875
+ width: var(--_ctm-mob-dn-pn-ds-dt-se,
1876
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se)));
1877
+ height: var(--_ctm-mob-dn-pn-ds-dt-se,
1878
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se)));
1879
+
1880
+ border-radius: 50%;
1881
+ display: flex;
1882
+ align-items: center;
1883
+ content: "";
1884
+ }
1885
+
1886
+ .embla__dot--selected:after {
1887
+ box-shadow: inset 0 0 0 1px var(--text-body);
1888
+ background-color: var(--_ctm-mob-dn-pn-ds-ct-dt-cr,
1889
+ var(--_ctm-tab-dn-pn-ds-ct-dt-cr, var(--_ctm-dn-pn-ds-ct-dt-cr)));
1890
+ }
1891
+
1892
+ &[data-slider-control="Pagination Line"] {
1893
+ .embla__dot {
1894
+ width: var(--_ctm-mob-dn-pn-le-le-wh,
1895
+ var(--_ctm-tab-dn-pn-le-le-wh, var(--_ctm-dn-pn-le-le-wh)));
1896
+ height: var(--_ctm-mob-dn-pn-le-le-ht,
1897
+ var(--_ctm-tab-dn-pn-le-le-ht, var(--_ctm-dn-pn-le-le-ht)));
1898
+ background-color: var(--_ctm-mob-dn-pn-le-or-le-cr,
1899
+ var(--_ctm-tab-dn-pn-le-or-le-cr, var(--_ctm-dn-pn-le-or-le-cr)));
1900
+ border-radius: 6px;
2545
1901
  }
2546
- .ad_subtree_node.is-active .ad_subtree_node_label {
2547
- @include ad-font-state($ad-subtree, sd-se, #1d1b1c, 14px, 400);
1902
+
1903
+ .embla__dot--selected:after {
1904
+ box-shadow: inset 0 0 0 1px var(--text-body);
1905
+ border-radius: 6px;
1906
+ width: var(--_ctm-mob-dn-pn-le-le-wh,
1907
+ var(--_ctm-tab-dn-pn-le-le-wh, var(--_ctm-dn-pn-le-le-wh)));
1908
+ height: var(--_ctm-mob-dn-pn-le-le-ht,
1909
+ var(--_ctm-tab-dn-pn-le-le-ht, var(--_ctm-dn-pn-le-le-ht)));
1910
+ background-color: var(--_ctm-mob-dn-pn-le-ct-le-cr,
1911
+ var(--_ctm-tab-dn-pn-le-ct-le-cr, var(--_ctm-dn-pn-le-ct-le-cr)));
2548
1912
  }
1913
+ }
1914
+ }
2549
1915
 
2550
- // Narrow screens: the rail stops being a column and sits above the allocation.
2551
- @media only screen and (max-width: 767px) {
2552
- .allocation_details_tree {
2553
- flex-direction: column;
2554
- }
2555
- .ad_sidebar {
1916
+ .embla__thumbs {
1917
+ width: 100%;
1918
+ height: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1919
+
1920
+ position: relative;
1921
+ display: grid;
1922
+ grid-template-columns: 1fr;
1923
+ overflow: hidden;
1924
+ // margin: 10px;
1925
+ padding: 10px;
1926
+
1927
+ .embla__thumbs__viewport {
1928
+ width: 100%;
1929
+ height: 100%;
1930
+ position: relative;
1931
+ display: flex;
1932
+ flex-direction: column;
1933
+
1934
+ overflow: hidden;
1935
+ }
1936
+
1937
+ .embla__thumbs__container {
1938
+ display: flex;
1939
+ flex-direction: row;
1940
+ margin-left: calc(var(--thumbs-slide-spacing) * -1);
1941
+ gap: var(--_ctm-mob-lt-tl-sg, var(--_ctm-tab-lt-tl-sg, var(--_ctm-lt-tl-sg)));
1942
+
1943
+ width: 100%;
1944
+ // justify-content: center;
1945
+ // height: 200px;
1946
+
1947
+ .embla__thumbs__slide {
1948
+ min-width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1949
+ max-width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1950
+ height: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1951
+
1952
+ & img {
2556
1953
  width: 100%;
1954
+ height: 100%;
2557
1955
  }
2558
1956
  }
2559
1957
  }
2560
1958
  }
1959
+ }
1960
+ }
1961
+
1962
+ // ---- Tree view: profiles sidebar + allocation on the right ---------------
1963
+ // Two columns, mirroring the Category Groups element. The gap between them is
1964
+ // the element's own allocation item gap so it stays in the same layout panel.
1965
+ .allocation_details_tree {
1966
+ display: flex;
1967
+ align-items: flex-start;
1968
+ width: 100%;
1969
+ gap: prepareMediaVariable(#{$ad-sidebar-design}-im-gp, 36px);
1970
+
1971
+ .ad_main {
1972
+ flex: 1;
1973
+ min-width: 0;
1974
+ }
1975
+ }
1976
+
1977
+ .ad_sidebar {
1978
+ display: flex;
1979
+ flex-direction: column;
1980
+ // Sidebar Container → gap (heading ↔ tree) + padding.
1981
+ gap: prepareMediaVariable(#{$ad-sidebar}-im-gp, 12px);
1982
+ padding: prepareMediaVariable(#{$ad-sidebar}-pg, 0);
1983
+ width: 260px;
1984
+ flex-shrink: 0;
1985
+ @include ad-design($ad-sidebar);
1986
+ border-radius: prepareMediaVariable(#{$ad-sidebar}-br-rs, 0);
1987
+ }
1988
+
1989
+ .ad_sidebar_heading {
1990
+ white-space: nowrap;
1991
+ margin: 0;
1992
+ line-height: 1.25;
1993
+ // `uppercase` is the fallback, not a hardcoded rule, so Text Transform can
1994
+ // override it while untouched elements keep the look they always had.
1995
+ @include ad-font($ad-heading, #002a4e, 16px, 400, uppercase);
1996
+ @include ad-text-overflow;
1997
+ }
1998
+
1999
+ .ad_allocation_tree {
2000
+ display: flex;
2001
+ flex-direction: column;
2002
+ // Gap BETWEEN profile rows (Sidebar Container → Profile Gap).
2003
+ gap: prepareMediaVariable(#{$ad-sidebar}-pe-gp, 8px);
2004
+ width: 100%;
2005
+ }
2006
+
2007
+ .ad_tree_node {
2008
+ display: flex;
2009
+ align-items: center;
2010
+ // Profile Row → item gap (icon ↔ label).
2011
+ gap: prepareMediaVariable(#{$ad-tree}-dt-se-im-gp, 4px);
2012
+ padding: prepareMediaVariable(#{$ad-tree}-dt-se-pg, 4px 0);
2013
+ cursor: pointer;
2014
+ @include ad-design(#{$ad-tree}-dt-se);
2015
+ }
2016
+
2017
+ .ad_tree_node_icon {
2018
+ display: flex;
2019
+ align-items: center;
2020
+ justify-content: center;
2021
+ width: 24px;
2022
+ height: 24px;
2023
+ flex-shrink: 0;
2024
+ color: ad-tree-icon-var("dt-se", "in-c1", #002a4e);
2025
+ }
2026
+
2027
+ .ad_chevron {
2028
+ display: flex;
2029
+ align-items: center;
2030
+ justify-content: center;
2031
+ transition: transform 0.15s ease;
2032
+ @include ad-tree-icon("dt-se", "in-se", "in-c1");
2033
+ }
2034
+
2035
+ .ad_chevron.is-open {
2036
+ transform: rotate(90deg);
2037
+ }
2038
+
2039
+ // Show / hide of the icon, per interaction state. `aria-expanded` picks which of
2040
+ // the two switches applies: the Collapsed Icon's while the profile is closed,
2041
+ // the Expanded Icon's while it is open.
2042
+ //
2043
+ // Each state emits BOTH outcomes, not just the hidden one — a state that shows
2044
+ // the icon has to be able to bring it back when the state beneath it hid it
2045
+ // (Default off, Hover on). Hover and Selected carry one extra selector each, so
2046
+ // they already outrank Default; Selected is written last so it wins over Hover
2047
+ // on a row that is both.
2048
+ .ad_tree_node[aria-expanded="false"][data-show-icon="false"] .ad_tree_node_icon,
2049
+ .ad_tree_node[aria-expanded="true"][data-show-icon-expanded="false"] .ad_tree_node_icon {
2050
+ display: none;
2051
+ }
2052
+
2053
+ .ad_tree_node[aria-expanded="false"]:hover[data-hover-show-icon="false"] .ad_tree_node_icon,
2054
+ .ad_tree_node[aria-expanded="true"]:hover[data-hover-show-icon-expanded="false"] .ad_tree_node_icon {
2055
+ display: none;
2056
+ }
2057
+
2058
+ .ad_tree_node[aria-expanded="false"]:hover[data-hover-show-icon="true"] .ad_tree_node_icon,
2059
+ .ad_tree_node[aria-expanded="true"]:hover[data-hover-show-icon-expanded="true"] .ad_tree_node_icon {
2060
+ display: flex;
2061
+ }
2062
+
2063
+ .ad_tree_node[aria-expanded="false"].is-active[data-selected-show-icon="false"] .ad_tree_node_icon,
2064
+ .ad_tree_node[aria-expanded="true"].is-active[data-selected-show-icon-expanded="false"] .ad_tree_node_icon {
2065
+ display: none;
2066
+ }
2067
+
2068
+ .ad_tree_node[aria-expanded="false"].is-active[data-selected-show-icon="true"] .ad_tree_node_icon,
2069
+ .ad_tree_node[aria-expanded="true"].is-active[data-selected-show-icon-expanded="true"] .ad_tree_node_icon {
2070
+ display: flex;
2071
+ }
2072
+
2073
+ // The expanded icon has its own size/colour vars so it is independent of the
2074
+ // collapsed one.
2075
+ .ad_chevron.is-expanded {
2076
+ @include ad-tree-icon("dt-se", "in-se-ed", "in-cr-ed");
2077
+ }
2078
+
2079
+ .ad_tree_node_label {
2080
+ flex: 1;
2081
+ min-width: 0;
2082
+ @include ad-font(#{$ad-tree}-dt-se, #002a4e, 14px, 600);
2083
+ @include ad-text-overflow;
2084
+ }
2085
+
2086
+ .ad_tree_node:hover {
2087
+ @include ad-design-state($ad-tree, hr-se);
2088
+ @include ad-layout-state($ad-tree, hr-se, 4px 0, 4px);
2089
+ }
2090
+
2091
+ .ad_tree_node:hover .ad_tree_node_label {
2092
+ @include ad-font-state($ad-tree, hr-se, #002a4e, 14px, 600);
2093
+ }
2094
+
2095
+ // The icon follows the row it sits in. `.is-expanded` is listed after the plain
2096
+ // rule in each block on purpose: it is the more specific selector, so the
2097
+ // expanded icon keeps its own size/colour instead of inheriting the collapsed
2098
+ // one's while the row is hovered or active.
2099
+ .ad_tree_node:hover .ad_tree_node_icon {
2100
+ color: ad-tree-icon-var("hr-se", "in-c1", #002a4e);
2101
+ }
2102
+
2103
+ .ad_tree_node:hover .ad_chevron {
2104
+ @include ad-tree-icon("hr-se", "in-se", "in-c1");
2105
+ }
2106
+
2107
+ .ad_tree_node:hover .ad_chevron.is-expanded {
2108
+ @include ad-tree-icon("hr-se", "in-se-ed", "in-cr-ed");
2109
+ }
2110
+
2111
+ .ad_tree_node.is-active {
2112
+ @include ad-design-state($ad-tree, sd-se);
2113
+ @include ad-layout-state($ad-tree, sd-se, 4px 0, 4px);
2114
+ }
2115
+
2116
+ .ad_tree_node.is-active .ad_tree_node_label {
2117
+ @include ad-font-state($ad-tree, sd-se, #002a4e, 14px, 600);
2118
+ }
2119
+
2120
+ .ad_tree_node.is-active .ad_tree_node_icon {
2121
+ color: ad-tree-icon-var("sd-se", "in-c1", #002a4e);
2122
+ }
2123
+
2124
+ .ad_tree_node.is-active .ad_chevron {
2125
+ @include ad-tree-icon("sd-se", "in-se", "in-c1");
2126
+ }
2127
+
2128
+ .ad_tree_node.is-active .ad_chevron.is-expanded {
2129
+ @include ad-tree-icon("sd-se", "in-se-ed", "in-cr-ed");
2130
+ }
2131
+
2132
+ .ad_subtree {
2133
+ display: flex;
2134
+ flex-direction: column;
2135
+ // Gap BETWEEN allocation rows (Sidebar Container → Allocation Gap).
2136
+ gap: prepareMediaVariable(#{$ad-sidebar}-an-gp, 8px);
2137
+ padding-left: 31px;
2138
+ width: 100%;
2139
+ }
2140
+
2141
+ .ad_subtree_node {
2142
+ padding: prepareMediaVariable(#{$ad-subtree}-dt-se-pg, 4px 0);
2143
+ cursor: pointer;
2144
+ @include ad-design(#{$ad-subtree}-dt-se);
2145
+ }
2146
+
2147
+ .ad_subtree_node_label {
2148
+ letter-spacing: -0.28px;
2149
+ min-width: 0;
2150
+ @include ad-font(#{$ad-subtree}-dt-se, #1d1b1c, 14px, 400);
2151
+ @include ad-text-overflow;
2152
+ }
2153
+
2154
+ .ad_subtree_node:hover {
2155
+ @include ad-design-state($ad-subtree, hr-se);
2156
+ @include ad-layout-state($ad-subtree, hr-se, 4px 0);
2157
+ }
2158
+
2159
+ .ad_subtree_node:hover .ad_subtree_node_label {
2160
+ @include ad-font-state($ad-subtree, hr-se, #1d1b1c, 14px, 400);
2161
+ }
2162
+
2163
+ .ad_subtree_node.is-active {
2164
+ @include ad-design-state($ad-subtree, sd-se);
2165
+ @include ad-layout-state($ad-subtree, sd-se, 4px 0);
2166
+ }
2167
+
2168
+ .ad_subtree_node.is-active .ad_subtree_node_label {
2169
+ @include ad-font-state($ad-subtree, sd-se, #1d1b1c, 14px, 400);
2170
+ }
2171
+
2172
+ // Narrow screens: the rail stops being a column and sits above the allocation.
2173
+ @media only screen and (max-width: 767px) {
2174
+ .allocation_details_tree {
2175
+ flex-direction: column;
2176
+ }
2177
+
2178
+ .ad_sidebar {
2179
+ width: 100%;
2180
+ }
2181
+ }
2182
+ }
2183
+ }