@sc-360-v2/storefront-cms-library 0.5.54 → 0.5.55

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 (106) hide show
  1. package/dist/add-products-tab-details.scss +3 -0
  2. package/dist/allocation-header-quota-details.scss +520 -0
  3. package/dist/allocationDetails.scss +608 -396
  4. package/dist/allocations-quota-details.scss +173 -170
  5. package/dist/allocations.scss +8 -112
  6. package/dist/amount-estimator.scss +1088 -1083
  7. package/dist/badge.scss +396 -388
  8. package/dist/breadcrumbs.scss +17 -0
  9. package/dist/builder.js +1 -1
  10. package/dist/bulk-variant-picker.scss +4 -0
  11. package/dist/bundle copy.scss +26 -0
  12. package/dist/bundle.scss +10 -0
  13. package/dist/bundleDetails.scss +14 -0
  14. package/dist/button copy.scss +2 -0
  15. package/dist/button.scss +2 -0
  16. package/dist/buyForHeaders.scss +19 -0
  17. package/dist/cart-details.scss +101 -18
  18. package/dist/cart-summary.scss +18 -0
  19. package/dist/cart.scss +2 -0
  20. package/dist/cartAttributes.scss +4 -0
  21. package/dist/category-groups-quota-details.scss +124 -38
  22. package/dist/checkout.scss +6 -0
  23. package/dist/countdown.scss +2 -0
  24. package/dist/coupon.scss +8 -0
  25. package/dist/embroidery.scss +2 -0
  26. package/dist/employee-bulk-order.scss +5 -0
  27. package/dist/faq.scss +9 -0
  28. package/dist/filters.scss +2 -0
  29. package/dist/form-zindex-module.scss +24 -24
  30. package/dist/gallery-slider-temp.scss +205 -14
  31. package/dist/hotspot.scss +4 -0
  32. package/dist/icon-list.scss +2 -0
  33. package/dist/kitDetails.scss +2 -0
  34. package/dist/kits.scss +2 -0
  35. package/dist/language-selector.scss +6 -4
  36. package/dist/last-x-orders.scss +5 -0
  37. package/dist/login.scss +14 -0
  38. package/dist/map.scss +6 -0
  39. package/dist/mega-menu.scss +41 -0
  40. package/dist/menu-v2.scss +83 -6
  41. package/dist/past-orders.scss +989 -975
  42. package/dist/pickup-locations.scss +1172 -1167
  43. package/dist/product-image-allocation.scss +59 -0
  44. package/dist/product-inventory.scss +1381 -1378
  45. package/dist/product-promotions.scss +2768 -2759
  46. package/dist/product-sizechart.scss +4 -0
  47. package/dist/profile.scss +8 -0
  48. package/dist/quantity-selector.scss +4 -0
  49. package/dist/quick-inventory-check.scss +5 -0
  50. package/dist/quick-order-pad.scss +5 -0
  51. package/dist/quota-details.scss +99 -15
  52. package/dist/repeater copy.scss +3 -0
  53. package/dist/repeater-grid-toggle.scss +2 -0
  54. package/dist/repeater-item.scss +2 -2
  55. package/dist/repeater.scss +2 -0
  56. package/dist/request-for-quotes.scss +1 -1
  57. package/dist/rfqs.scss +10 -0
  58. package/dist/scroll.scss +46 -0
  59. package/dist/search.scss +4 -0
  60. package/dist/shipping-payments.scss +4 -0
  61. package/dist/social.scss +5 -0
  62. package/dist/store-locations.scss +1402 -1398
  63. package/dist/tab-v2.scss +2 -0
  64. package/dist/table-common.scss +509 -506
  65. package/dist/table.scss +687 -685
  66. package/dist/types/builder/tools/element-edit/addProductsTab.d.ts +28 -0
  67. package/dist/types/builder/tools/element-edit/allocationDetails.d.ts +5 -0
  68. package/dist/types/builder/tools/element-edit/allocations.d.ts +1 -0
  69. package/dist/types/builder/tools/element-edit/breadcrumbs.d.ts +5 -0
  70. package/dist/types/builder/tools/element-edit/bundle.d.ts +40 -0
  71. package/dist/types/builder/tools/element-edit/bundleDetails.d.ts +20 -0
  72. package/dist/types/builder/tools/element-edit/buttonInstance.d.ts +18 -0
  73. package/dist/types/builder/tools/element-edit/buyForWithTab.d.ts +1 -0
  74. package/dist/types/builder/tools/element-edit/cartAttributes.d.ts +9 -0
  75. package/dist/types/builder/tools/element-edit/cartDetails.d.ts +79 -1
  76. package/dist/types/builder/tools/element-edit/cartSummary.d.ts +72 -0
  77. package/dist/types/builder/tools/element-edit/categoryGroups.d.ts +28 -0
  78. package/dist/types/builder/tools/element-edit/checkout.d.ts +1 -0
  79. package/dist/types/builder/tools/element-edit/common.d.ts +23 -0
  80. package/dist/types/builder/tools/element-edit/countdown.d.ts +1 -0
  81. package/dist/types/builder/tools/element-edit/coupon.d.ts +19 -0
  82. package/dist/types/builder/tools/element-edit/embroidery.d.ts +9 -0
  83. package/dist/types/builder/tools/element-edit/filterResults.d.ts +10 -0
  84. package/dist/types/builder/tools/element-edit/gallery-slider.d.ts +19 -0
  85. package/dist/types/builder/tools/element-edit/icon-list.d.ts +9 -0
  86. package/dist/types/builder/tools/element-edit/iconInstace.d.ts +1 -0
  87. package/dist/types/builder/tools/element-edit/iconLibrary.d.ts +2 -7
  88. package/dist/types/builder/tools/element-edit/kitDetails.d.ts +19 -0
  89. package/dist/types/builder/tools/element-edit/kits.d.ts +9 -0
  90. package/dist/types/builder/tools/element-edit/orderStatus.d.ts +19 -0
  91. package/dist/types/builder/tools/element-edit/quickLinks.d.ts +10 -0
  92. package/dist/types/builder/tools/element-edit/quotaDetails.d.ts +1 -0
  93. package/dist/types/builder/tools/element-edit/rfqs.d.ts +5 -0
  94. package/dist/types/builder/tools/element-edit/scroll.d.ts +1 -0
  95. package/dist/types/builder/tools/element-edit/shipping-payments.d.ts +2 -0
  96. package/dist/types/builder/tools/element-edit/social.d.ts +1 -0
  97. package/dist/types/builder/tools/element-edit/table.d.ts +1 -0
  98. package/dist/types/builder/tools/element-edit/tabs.d.ts +18 -0
  99. package/dist/types/builder/tools/element-edit/tabsV2.d.ts +17 -0
  100. package/dist/types/builder/tools/element-edit/userElements.d.ts +5 -0
  101. package/dist/types/builder/tools/element-edit/video.d.ts +2 -0
  102. package/dist/user-elements.scss +10 -0
  103. package/dist/variant-picker.scss +2 -0
  104. package/dist/video.scss +2 -0
  105. package/dist/volume-pricing.scss +3 -0
  106. package/package.json +1 -1
@@ -4,146 +4,195 @@
4
4
  // Allocations quotaDetails layout/design CSS-variable paths.
5
5
  // @imported inside allocationDetails.scss within the allocationDetails scope.
6
6
 
7
+ $overflowSelector: ".flex__overflow";
8
+
9
+ // Text Transform (with the word wrap/break pair the panel groups with it) and Text
10
+ // Overflow for one text node. $suffix is "-dc" for the Label blocks, which write the
11
+ // *Desc keys. Declared here rather than reusing the allocationDetails mixins so this
12
+ // file stays self-contained, matching how it already redeclares the rebound vars.
13
+ @mixin aqd-text-controls($base, $suffix: "", $clampVar: --_sf-line-clamp) {
14
+ text-transform: prepareMediaVariable(#{$base}-tt-tm#{$suffix}, none);
15
+ word-wrap: prepareMediaVariable(#{$base}-wd-wp#{$suffix}, normal);
16
+ word-break: prepareMediaVariable(#{$base}-wd-bk#{$suffix}, normal);
17
+
18
+ // The clamp needs the text to wrap first, so it undoes the `nowrap` above it.
19
+ &#{$overflowSelector} {
20
+ white-space: normal;
21
+ @include restrictToLinesShow(#{var($clampVar, 1)});
22
+ }
23
+ }
24
+
7
25
  .quota__details__element {
8
26
  background-color: var(
9
27
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-bd-cr,
10
- var(
11
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-bd-cr,
12
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-bd-cr)
13
- )
28
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-bd-cr, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-bd-cr))
14
29
  );
15
30
  padding: var(
16
31
  --_ctm-mob-dn-qa-ds-qa-ds-lt-pg,
17
- var(
18
- --_ctm-tab-dn-qa-ds-qa-ds-lt-pg,
19
- var(--_ctm-dn-qa-ds-qa-ds-lt-pg)
20
- )
32
+ var(--_ctm-tab-dn-qa-ds-qa-ds-lt-pg, var(--_ctm-dn-qa-ds-qa-ds-lt-pg))
21
33
  );
22
34
  display: flex;
23
35
  flex-direction: column;
24
36
  --_sf-gp: var(
25
37
  --_ctm-mob-dn-qa-ds-qa-ds-lt-im-sg,
26
- var(
27
- --_ctm-tab-dn-qa-ds-qa-ds-lt-im-sg,
28
- var(--_ctm-dn-qa-ds-qa-ds-lt-im-sg, 16px)
29
- )
38
+ var(--_ctm-tab-dn-qa-ds-qa-ds-lt-im-sg, var(--_ctm-dn-qa-ds-qa-ds-lt-im-sg, 16px))
30
39
  );
31
40
  row-gap: var(--_sf-gp);
32
- width: fit-content;
41
+ // Embedded in an allocation card, not free-standing like the Quota Details element
42
+ // itself: `fit-content` let the row size to its text and spill past the card, so it
43
+ // is pinned to the card instead and the row below reflows within it.
44
+ width: 100%;
45
+ max-width: 100%;
46
+ min-width: 0;
33
47
  height: auto;
34
48
  border-color: var(
35
49
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-br-cr,
36
- var(
37
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-br-cr,
38
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-br-cr)
39
- )
50
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-br-cr, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-br-cr))
40
51
  );
41
52
  border-style: var(
42
53
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-br-se,
43
- var(
44
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-br-se,
45
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-br-se)
46
- )
54
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-br-se, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-br-se))
47
55
  );
48
56
  border-width: var(
49
57
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-br-wh,
50
- var(
51
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-br-wh,
52
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-br-wh)
53
- )
58
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-br-wh, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-br-wh))
54
59
  );
55
60
  border-radius: var(
56
61
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-br-rs,
57
- var(
58
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-br-rs,
59
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-br-rs)
60
- )
62
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-br-rs, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-br-rs))
61
63
  );
62
64
  box-shadow: var(
63
65
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-sw-ae,
64
- var(
65
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-sw-ae,
66
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-sw-ae)
67
- )
66
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-sw-ae, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-sw-ae))
68
67
  )
69
68
  var(
70
69
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-sw-br,
71
- var(
72
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-sw-br,
73
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-sw-br)
74
- )
70
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-sw-br, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-sw-br))
75
71
  )
76
72
  var(
77
73
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-sw-sd,
78
- var(
79
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-sw-sd,
80
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-sw-sd)
81
- )
74
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-sw-sd, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-sw-sd))
82
75
  )
83
76
  var(
84
77
  --_ctm-mob-dn-qa-ds-qa-ds-dn-wt-se-sw-cr,
85
- var(
86
- --_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-sw-cr,
87
- var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-sw-cr)
88
- )
78
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-wt-se-sw-cr, var(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-sw-cr))
89
79
  );
90
80
 
91
81
  .product__hilights {
92
82
  display: flex;
93
83
  align-items: center;
94
- justify-content: var(
95
- --_ctm-mob-dn-qa-ds-qa-ds-lt-hl-at,
96
- var(
97
- --_ctm-tab-dn-qa-ds-qa-ds-lt-hl-at,
98
- var(--_ctm-dn-qa-ds-qa-ds-lt-hl-at)
99
- )
84
+ // Design > Widget Style > alignment, falling back to the Layout panel's own
85
+ // alignment so cards set up before the design control existed keep theirs.
86
+ justify-content: prepareMediaVariable(
87
+ --_ctm-dn-qa-ds-qa-ds-dn-wt-se-hl-at,
88
+ prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-lt-hl-at)
100
89
  );
101
90
  gap: var(--_sf-gp);
102
91
  width: 100%;
103
92
  height: 100%;
93
+ // Pinned to the card above, so the two stats wrap onto a second line when the
94
+ // card is too narrow for both instead of running past its edge.
95
+ flex-wrap: wrap;
96
+ min-width: 0;
104
97
 
105
98
  &[data-show-dividers="true"] {
99
+ // See quota-details.scss: Shape Size and Shape Color are the item's only two
100
+ // controls, Size measuring the marker's diameter or the rule's thickness. The
101
+ // `-dr-dr-` doubling is the `divider` node followed by the `divider…` property
102
+ // name — the shape vars were written with only one, which is why neither
103
+ // control did anything.
104
+ $shapeSize: prepareMediaVariable(
105
+ --_ctm-dn-qa-ds-qa-ds-dn-dr-dr-se-se,
106
+ prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-dr-wh, 1px)
107
+ );
108
+ $shapeColor: prepareMediaVariable(
109
+ --_ctm-dn-qa-ds-qa-ds-dn-dr-dr-se-cr,
110
+ prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-dr-cr, #e4e7ec)
111
+ );
112
+
106
113
  .product__list__item {
107
114
  position: relative;
108
115
  &:not(:last-child)::after {
109
116
  content: "";
110
- width: var(
111
- --_ctm-mob-dn-qa-ds-qa-ds-dn-dr-dr-wh,
112
- var(
113
- --_ctm-tab-dn-qa-ds-qa-ds-dn-dr-dr-wh,
114
- var(--_ctm-dn-qa-ds-qa-ds-dn-dr-dr-wh)
115
- )
116
- );
117
+ width: $shapeSize;
117
118
  height: 100%;
118
119
  position: absolute;
119
- right: calc(
120
- (-1 * var(--_sf-gp) / 2) -
121
- (
122
- var(
123
- --_ctm-mob-dn-qa-ds-qa-ds-dn-dr-dr-wh,
124
- var(
125
- --_ctm-tab-dn-qa-ds-qa-ds-dn-dr-dr-wh,
126
- var(--_ctm-dn-qa-ds-qa-ds-dn-dr-dr-wh)
127
- )
128
- ) /
129
- 2
130
- )
131
- );
132
- background-color: var(
133
- --_ctm-mob-dn-qa-ds-qa-ds-dn-dr-dr-cr,
134
- var(
135
- --_ctm-tab-dn-qa-ds-qa-ds-dn-dr-dr-cr,
136
- var(--_ctm-dn-qa-ds-qa-ds-dn-dr-dr-cr)
137
- )
138
- );
120
+ right: calc((-1 * var(--_sf-gp) / 2) - (#{$shapeSize} / 2));
121
+ background-color: $shapeColor;
122
+ }
123
+
124
+ // Divider item (Divider -> Item Style). Same geometry as the standalone
125
+ // element: the rule's centre sits at -(gap/2) from the item's right edge,
126
+ // so the marker is pinned there and translated half its own width back.
127
+ .divider__marker {
128
+ position: absolute;
129
+ top: 50%;
130
+ right: calc(-1 * var(--_sf-gp, 0px) / 2);
131
+ transform: translate(50%, -50%);
132
+ display: flex;
133
+ align-items: center;
134
+ justify-content: center;
135
+ z-index: 1;
136
+
137
+ // 8px rather than the rule's thickness when Shape Size is absent: a marker
138
+ // falling back to a hairline would read as missing.
139
+ &[data-shape="circle"],
140
+ &[data-shape="square"] {
141
+ width: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-dr-se-se, 8px);
142
+ height: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-dr-se-se, 8px);
143
+ background-color: $shapeColor;
144
+ }
145
+
146
+ &[data-shape="circle"] {
147
+ border-radius: 50%;
148
+ }
149
+
150
+ &[data-shape="icon"] {
151
+ padding-block: 2px;
152
+ background-color: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-wt-se-bd-cr, #ffffff);
153
+ }
154
+
155
+ .icon {
156
+ display: flex;
157
+
158
+ svg {
159
+ width: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-in-se, 12px);
160
+ height: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-in-se, 12px);
161
+
162
+ &[stroke]:not([stroke="none"]),
163
+ [stroke]:not([stroke="none"]) {
164
+ stroke: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-in-c1, #e4e7ec);
165
+ // Overrides the stroke-width presentation attribute baked into the icon markup.
166
+ stroke-width: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-se-wh, 1.25);
167
+ }
168
+ &[fill]:not([fill="none"]),
169
+ [fill]:not([fill="none"]) {
170
+ fill: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-dr-in-c1, #e4e7ec);
171
+ }
172
+ }
173
+ }
174
+ }
175
+
176
+ // Rendered inside every item; only the ones carrying a rule show it.
177
+ &:last-child .divider__marker {
178
+ display: none;
139
179
  }
140
180
  }
181
+
182
+ // A shape or icon marker REPLACES the rule rather than sitting on it, so the
183
+ // rule is drawn only while the separator is the plain "divider".
184
+ &:not([data-divider-item="divider"]) .product__list__item:not(:last-child)::after {
185
+ display: none;
186
+ }
141
187
  }
142
188
 
143
189
  .product__list__item {
144
190
  display: flex;
145
191
  align-items: center;
146
192
  gap: 4px;
193
+ // Flex items default to min-width:auto, so they refuse to shrink below their
194
+ // text width — the same guard the standalone element carries.
195
+ min-width: 0;
147
196
 
148
197
  .svg_icon {
149
198
  display: flex;
@@ -152,34 +201,25 @@
152
201
 
153
202
  .quota__left {
154
203
  .count {
155
- white-space: nowrap;
204
+ // No `white-space: nowrap` here: it stopped the text reflowing when the card
205
+ // is narrowed, which forced the two stats onto separate lines instead of
206
+ // letting them shrink and stay on one. Matches the standalone element.
207
+ min-width: 0;
156
208
  color: var(
157
209
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-cr,
158
- var(
159
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-cr,
160
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-cr)
161
- )
210
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-cr, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-cr))
162
211
  );
163
212
  font-family: var(
164
213
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-ft-fy,
165
- var(
166
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ft-fy,
167
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ft-fy)
168
- )
214
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ft-fy, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ft-fy))
169
215
  );
170
216
  font-size: var(
171
217
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-ft-se,
172
- var(
173
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ft-se,
174
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ft-se)
175
- )
218
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ft-se, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ft-se))
176
219
  );
177
220
  font-weight: var(
178
221
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-ft-wt,
179
- var(
180
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ft-wt,
181
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ft-wt)
182
- )
222
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ft-wt, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ft-wt))
183
223
  );
184
224
  font-style: var(
185
225
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-ft-se-ic,
@@ -190,34 +230,26 @@
190
230
  );
191
231
  letter-spacing: var(
192
232
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-lr-sg,
193
- var(
194
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-lr-sg,
195
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-lr-sg)
196
- )
233
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-lr-sg, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-lr-sg))
197
234
  );
198
235
  line-height: var(
199
236
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-le-ht,
200
- var(
201
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-le-ht,
202
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-le-ht)
203
- )
237
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-le-ht, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-le-ht))
204
238
  );
205
239
  text-decoration: var(
206
240
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-ue,
207
- var(
208
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ue,
209
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ue)
210
- )
241
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ue, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ue))
211
242
  );
243
+ @include aqd-text-controls(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt);
212
244
  }
213
245
  .label {
214
- white-space: nowrap;
246
+ // No `white-space: nowrap` here: it stopped the text reflowing when the card
247
+ // is narrowed, which forced the two stats onto separate lines instead of
248
+ // letting them shrink and stay on one. Matches the standalone element.
249
+ min-width: 0;
215
250
  color: var(
216
251
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-cr-dc,
217
- var(
218
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-cr-dc,
219
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-cr-dc)
220
- )
252
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-cr-dc, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-cr-dc))
221
253
  );
222
254
  font-family: var(
223
255
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-ft-fy-dc,
@@ -263,28 +295,20 @@
263
295
  );
264
296
  text-decoration: var(
265
297
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-ue-dc,
266
- var(
267
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ue-dc,
268
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ue-dc)
269
- )
298
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-ue-dc, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-ue-dc))
270
299
  );
300
+ @include aqd-text-controls(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt, "-dc", --_sf-line-clamp-desc);
271
301
  }
272
302
  .icon {
273
303
  display: flex;
274
304
  svg {
275
305
  width: var(
276
306
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-in-se,
277
- var(
278
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-in-se,
279
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-in-se)
280
- )
307
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-in-se, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-in-se))
281
308
  );
282
309
  height: var(
283
310
  --_ctm-mob-dn-qa-ds-qa-ds-dn-qa-lt-in-se,
284
- var(
285
- --_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-in-se,
286
- var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-in-se)
287
- )
311
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-qa-lt-in-se, var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-in-se))
288
312
  );
289
313
  path {
290
314
  stroke: var(
@@ -294,6 +318,8 @@
294
318
  var(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-in-c1)
295
319
  )
296
320
  );
321
+ // Overrides the stroke-width presentation attribute baked into the icon markup.
322
+ stroke-width: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-qa-lt-se-wh, 1.25);
297
323
  }
298
324
  }
299
325
  }
@@ -301,34 +327,25 @@
301
327
 
302
328
  .days__left {
303
329
  .count {
304
- white-space: nowrap;
330
+ // No `white-space: nowrap` here: it stopped the text reflowing when the card
331
+ // is narrowed, which forced the two stats onto separate lines instead of
332
+ // letting them shrink and stay on one. Matches the standalone element.
333
+ min-width: 0;
305
334
  color: var(
306
335
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-cr,
307
- var(
308
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-cr,
309
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-cr)
310
- )
336
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-cr, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-cr))
311
337
  );
312
338
  font-family: var(
313
339
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-ft-fy,
314
- var(
315
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ft-fy,
316
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ft-fy)
317
- )
340
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ft-fy, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ft-fy))
318
341
  );
319
342
  font-size: var(
320
343
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-ft-se,
321
- var(
322
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ft-se,
323
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ft-se)
324
- )
344
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ft-se, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ft-se))
325
345
  );
326
346
  font-weight: var(
327
347
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-ft-wt,
328
- var(
329
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ft-wt,
330
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ft-wt)
331
- )
348
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ft-wt, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ft-wt))
332
349
  );
333
350
  font-style: var(
334
351
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-ft-se-ic,
@@ -339,34 +356,26 @@
339
356
  );
340
357
  letter-spacing: var(
341
358
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-lr-sg,
342
- var(
343
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-lr-sg,
344
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-lr-sg)
345
- )
359
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-lr-sg, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-lr-sg))
346
360
  );
347
361
  line-height: var(
348
362
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-le-ht,
349
- var(
350
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-le-ht,
351
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-le-ht)
352
- )
363
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-le-ht, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-le-ht))
353
364
  );
354
365
  text-decoration: var(
355
366
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-ue,
356
- var(
357
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ue,
358
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ue)
359
- )
367
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ue, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ue))
360
368
  );
369
+ @include aqd-text-controls(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt);
361
370
  }
362
371
  .label {
363
- white-space: nowrap;
372
+ // No `white-space: nowrap` here: it stopped the text reflowing when the card
373
+ // is narrowed, which forced the two stats onto separate lines instead of
374
+ // letting them shrink and stay on one. Matches the standalone element.
375
+ min-width: 0;
364
376
  color: var(
365
377
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-cr-dc,
366
- var(
367
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-cr-dc,
368
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-cr-dc)
369
- )
378
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-cr-dc, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-cr-dc))
370
379
  );
371
380
  font-family: var(
372
381
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-ft-fy-dc,
@@ -412,28 +421,20 @@
412
421
  );
413
422
  text-decoration: var(
414
423
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-ue-dc,
415
- var(
416
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ue-dc,
417
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ue-dc)
418
- )
424
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-ue-dc, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-ue-dc))
419
425
  );
426
+ @include aqd-text-controls(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt, "-dc", --_sf-line-clamp-desc);
420
427
  }
421
428
  .icon {
422
429
  display: flex;
423
430
  svg {
424
431
  width: var(
425
432
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-in-se,
426
- var(
427
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-in-se,
428
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-in-se)
429
- )
433
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-in-se, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-in-se))
430
434
  );
431
435
  height: var(
432
436
  --_ctm-mob-dn-qa-ds-qa-ds-dn-ds-lt-in-se,
433
- var(
434
- --_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-in-se,
435
- var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-in-se)
436
- )
437
+ var(--_ctm-tab-dn-qa-ds-qa-ds-dn-ds-lt-in-se, var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-in-se))
437
438
  );
438
439
  path {
439
440
  stroke: var(
@@ -443,6 +444,8 @@
443
444
  var(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-in-c1)
444
445
  )
445
446
  );
447
+ // Overrides the stroke-width presentation attribute baked into the icon markup.
448
+ stroke-width: prepareMediaVariable(--_ctm-dn-qa-ds-qa-ds-dn-ds-lt-se-wh, 1.25);
446
449
  }
447
450
  }
448
451
  }