@lockerverse/react 0.2.100 → 0.2.102

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 (42) hide show
  1. package/README.md +55 -18
  2. package/dist/auction-base.css +116 -0
  3. package/dist/auction-catalog.css +355 -0
  4. package/dist/auction-checkout.css +266 -0
  5. package/dist/auction-data.d.ts +16 -0
  6. package/dist/auction-data.d.ts.map +1 -0
  7. package/dist/auction-data.js +2 -0
  8. package/dist/auction-data.js.map +1 -0
  9. package/dist/auction-gallery.css +298 -0
  10. package/dist/auction-item-layout.css +298 -0
  11. package/dist/auction-item.css +4 -0
  12. package/dist/auction-item.d.ts +6 -0
  13. package/dist/auction-item.d.ts.map +1 -1
  14. package/dist/auction-item.js +1 -1
  15. package/dist/auction-item.js.map +1 -1
  16. package/dist/auction.css +2 -0
  17. package/dist/auction.d.ts +3 -0
  18. package/dist/auction.js +1 -0
  19. package/dist/auctions.css +5 -221
  20. package/dist/auctions.d.ts +6 -19
  21. package/dist/auctions.d.ts.map +1 -1
  22. package/dist/auctions.js +1 -1
  23. package/dist/auctions.js.map +1 -1
  24. package/dist/immutable-resource-identity.js.map +1 -1
  25. package/dist/lockerverse-auction-item-card.d.ts +47 -0
  26. package/dist/lockerverse-auction-item-card.d.ts.map +1 -0
  27. package/dist/lockerverse-auction.js +2 -0
  28. package/dist/lockerverse-auction.js.map +1 -0
  29. package/dist/lockerverse-payment.js +1 -1
  30. package/dist/lockerverse-payment.js.map +1 -1
  31. package/dist/phone.js +1 -1
  32. package/dist/signup.js +1 -1
  33. package/dist/signup.js.map +1 -1
  34. package/dist/use-auction-boundary.js +2 -0
  35. package/dist/use-auction-boundary.js.map +1 -0
  36. package/dist/use-lockerverse-auctions.d.ts +13 -0
  37. package/dist/use-lockerverse-auctions.d.ts.map +1 -0
  38. package/dist/use-lockerverse-auctions.js +2 -0
  39. package/dist/use-lockerverse-auctions.js.map +1 -0
  40. package/package.json +34 -3
  41. package/dist/format-money.js +0 -2
  42. package/dist/format-money.js.map +0 -1
package/README.md CHANGED
@@ -328,6 +328,14 @@ Malformed host selections and invalid custom tips render customer-safe validatio
328
328
 
329
329
  ## Auctions
330
330
 
331
+ For a page containing one auction, use `LockerverseAuction` from
332
+ `@lockerverse/react/auction` and `@lockerverse/react/auction.css`. Its header,
333
+ filters, and lineup can be hidden independently; `renderItem` can keep the
334
+ built-in card or supply a custom card. See the [auction composition reference](https://sdk.lockerverse.com/react/auctions)
335
+ and [complete example](https://sdk.lockerverse.com/examples/auctions).
336
+ The [State Lab](https://sdk.lockerverse.com/examples/state-lab) provides visibly
337
+ labelled local simulations of bid uncertainty and purchase recovery.
338
+
331
339
  Browse auctions and open the built-in item checkout. The catalog entry does not
332
340
  load Stripe. The checkout entry uses the optional Stripe peers listed above.
333
341
  Import `auctions.css` for both components. Built-in auction checkout accepts
@@ -347,27 +355,33 @@ export function AuctionPage() {
347
355
  auction: LockerverseAuction;
348
356
  itemId: string;
349
357
  } | null>(null);
350
-
351
- return selected ? (
352
- <LockerverseAuctionItem
358
+ const [locked, setLocked] = useState(false);
359
+ const [message, setMessage] = useState("");
360
+
361
+ return <>
362
+ <div hidden={Boolean(selected)}>
363
+ <LockerverseAuctions
364
+ auctions={auctions}
365
+ onSelectItem={(auction, item) => {
366
+ if (!locked) setSelected({ auction, itemId: item.id });
367
+ }}
368
+ theme="light"
369
+ />
370
+ </div>
371
+ {selected && <LockerverseAuctionItem
372
+ key={`${selected.auction.id}:${selected.itemId}`}
353
373
  auction={selected.auction}
354
374
  client={auctions.client}
355
375
  itemId={selected.itemId}
356
- onBidSubmitted={() => auctions.refresh()}
357
- onPurchaseComplete={() => auctions.refresh()}
358
- onUncertain={(kind) => {
359
- // Show an unresolved-result message. Do not retry a bid.
360
- console.info(`${kind} result is unknown`);
361
- }}
362
- theme="light"
363
- />
364
- ) : (
365
- <LockerverseAuctions
366
- auctions={auctions}
367
- onSelectItem={(auction, item) => setSelected({ auction, itemId: item.id })}
376
+ onBack={locked ? undefined : () => setSelected(null)}
377
+ onInteractionLockChange={setLocked}
378
+ onBidSubmitted={() => { setMessage("Bid submitted; this is not a winning bid."); auctions.refresh(); }}
379
+ onPurchaseComplete={() => { setMessage("Payment complete."); auctions.refresh(); }}
380
+ onUncertain={(kind) => setMessage(`The ${kind} result is unknown. Keep this page open; do not submit another bid.`)}
368
381
  theme="light"
369
- />
370
- );
382
+ />}
383
+ <p role="status">{message}</p>
384
+ </>;
371
385
  }
372
386
  ```
373
387
 
@@ -389,7 +403,12 @@ the backend can reconcile Stripe status and send the purchase notification.
389
403
  A `null` status lookup is not proof that an original in-flight request ended.
390
404
  Any retry must keep the original `clientRequestId` and purchase details.
391
405
  If a bid result is unknown, block a new bid and keep the support message visible.
392
- Do not navigate away or unmount checkout while submission is in progress.
406
+ Connect `onInteractionLockChange` to all host navigation, resource selectors, and
407
+ reset controls. A true lock covers submission and unresolved outcomes. Keep host
408
+ callback state above checkout. If checkout is unexpectedly removed after send,
409
+ known completion or uncertainty is still reported once for that operation;
410
+ no new Stripe action starts after unmount. Full page reload or browser shutdown
411
+ cannot guarantee callback delivery.
393
412
  Never automatically retry a bid: the backend has no public bid recovery API.
394
413
 
395
414
  For a host that needs recovery after navigation, connect
@@ -414,3 +433,21 @@ recovery in memory only and asks the customer to keep the page open.
414
433
 
415
434
  The raw receipt endpoint returns amounts, not payment status. Do not use a
416
435
  receipt response alone to show a payment as complete.
436
+
437
+ ### Direct auction pages
438
+
439
+ Import `useLockerverseAuction` from `@lockerverse/react/auction-data` and call
440
+ `useLockerverseAuction({ communitySlug }, auctionSlug)` to load one auction.
441
+ This uses the detail endpoint; it never fetches the full community list.
442
+ Render `LockerverseAuction` from `@lockerverse/react/auction` with the result,
443
+ and import `@lockerverse/react/auction.css`. Use `auction-item` and its stylesheet
444
+ when opening built-in item details and checkout.
445
+
446
+ The singular hook returns `client`, `auction`, `loading`, `error`, and `refresh`.
447
+ Refresh retains the last good data. Keep checkout mounted across refresh and
448
+ errors. The item component applies new same-ID data while idle and preserves
449
+ its payment snapshot while payment is open. Connect `onInteractionLockChange`
450
+ to host navigation. Resource identity changes require a new React key.
451
+
452
+ [Complete direct-auction example](https://sdk.lockerverse.com/examples/auctions?community=lckrvrs-internal&auction=auction).
453
+ Built-in styled UI is the default for Lovable. There is no automatic headless switch.
@@ -0,0 +1,116 @@
1
+ /* Reference: lockerverse-web-app-next auction pages at 8ead019. */
2
+ .lockerverse-auctions {
3
+ --lockerverse-accent: #6f8f6d;
4
+ --lockerverse-bg: #050505;
5
+ --lockerverse-border: rgb(255 255 255 / 10%);
6
+ --lockerverse-control: #111216;
7
+ --lockerverse-muted: #bbb7c2;
8
+ --lockerverse-radius: 24px;
9
+ --lockerverse-text: #fff;
10
+ --lockerverse-font-family: ui-sans-serif, system-ui, sans-serif;
11
+ box-sizing: border-box;
12
+ width: 100%;
13
+ max-width: 1520px;
14
+ padding: 40px 32px;
15
+ margin-inline: auto;
16
+ container-type: inline-size;
17
+ font: 14px / 1.5 var(--lockerverse-font-family);
18
+ color: var(--lockerverse-text);
19
+ background: var(--lockerverse-bg);
20
+ border-radius: 0;
21
+ }
22
+
23
+ .lockerverse-auctions[data-lockerverse-theme="light"] {
24
+ --lockerverse-bg: #fff;
25
+ --lockerverse-border: rgb(18 20 22 / 14%);
26
+ --lockerverse-control: #f5f6f7;
27
+ --lockerverse-muted: rgb(18 20 22 / 64%);
28
+ --lockerverse-text: #121416;
29
+ }
30
+
31
+ .lockerverse-auctions * {
32
+ box-sizing: border-box;
33
+ }
34
+ .lockerverse-auctions h2 {
35
+ margin: 0;
36
+ font-size: 24px;
37
+ line-height: 1.25;
38
+ text-wrap: balance;
39
+ }
40
+ .lockerverse-auctions h3 {
41
+ margin: 0;
42
+ font-size: 19px;
43
+ line-height: 1.3;
44
+ overflow-wrap: anywhere;
45
+ }
46
+ .lockerverse-auctions p {
47
+ margin: 8px 0;
48
+ color: var(--lockerverse-muted);
49
+ overflow-wrap: anywhere;
50
+ white-space: pre-line;
51
+ }
52
+ .lockerverse-auctions button {
53
+ font-family: inherit;
54
+ touch-action: manipulation;
55
+ cursor: pointer;
56
+ }
57
+ .lockerverse-auctions button:hover {
58
+ border-color: var(--lockerverse-text);
59
+ }
60
+ .lockerverse-auctions button:focus-visible,
61
+ .lockerverse-auctions h2:focus-visible {
62
+ outline: 2px solid var(--lockerverse-accent);
63
+ outline-offset: 3px;
64
+ }
65
+ .lockerverse-auctions__description {
66
+ line-height: 2;
67
+ overflow-wrap: anywhere;
68
+ }
69
+ .lockerverse-auctions__description p {
70
+ color: inherit;
71
+ }
72
+ .lockerverse-auctions__description ul {
73
+ padding-left: 20px;
74
+ list-style: disc;
75
+ }
76
+ .lockerverse-auctions__description ol {
77
+ padding-left: 20px;
78
+ list-style: decimal;
79
+ }
80
+ .lockerverse-auctions__description li {
81
+ margin-block: 4px;
82
+ }
83
+ .lockerverse-auctions__description a {
84
+ color: inherit;
85
+ text-decoration: underline;
86
+ }
87
+ .lockerverse-auctions__description blockquote {
88
+ padding-left: 16px;
89
+ margin-inline: 0;
90
+ border-left: 2px solid currentColor;
91
+ }
92
+ .lockerverse-auctions__description pre {
93
+ overflow-x: auto;
94
+ }
95
+ .lockerverse-auctions__description-clamped {
96
+ display: -webkit-box;
97
+ -webkit-box-orient: vertical;
98
+ overflow: hidden;
99
+ -webkit-line-clamp: 4;
100
+ }
101
+ .lockerverse-auctions .lockerverse-auctions__description-toggle {
102
+ display: inline-flex;
103
+ gap: 8px;
104
+ align-items: center;
105
+ min-height: 32px;
106
+ padding: 6px 12px;
107
+ margin-top: 12px;
108
+ font-size: 10px;
109
+ font-weight: 500;
110
+ color: var(--lockerverse-text);
111
+ text-transform: uppercase;
112
+ letter-spacing: 0.14em;
113
+ background: var(--lockerverse-control);
114
+ border: 1px solid var(--lockerverse-border);
115
+ border-radius: 999px;
116
+ }
@@ -0,0 +1,355 @@
1
+ .lockerverse-auctions--catalog {
2
+ max-width: 1600px;
3
+ padding: 48px 24px;
4
+ margin-inline: auto;
5
+ container-type: inline-size;
6
+ background: var(--lockerverse-bg, #050505);
7
+ border-radius: 0;
8
+ }
9
+ .lockerverse-auctions__catalog-header {
10
+ margin-bottom: 32px;
11
+ }
12
+ .lockerverse-auctions__catalog-header h2 {
13
+ font-size: 36px;
14
+ font-weight: 600;
15
+ letter-spacing: -0.04em;
16
+ }
17
+ .lockerverse-auctions__catalog-header > div {
18
+ max-width: 672px;
19
+ margin-top: 12px;
20
+ font-size: 14px;
21
+ line-height: 24px;
22
+ color: var(--lockerverse-muted, #b5b1bc);
23
+ }
24
+ .lockerverse-auctions button.lockerverse-auctions__catalog-back {
25
+ display: inline-flex;
26
+ gap: 8px;
27
+ align-items: center;
28
+ min-height: 38px;
29
+ padding: 8px 12px;
30
+ margin-bottom: 28px;
31
+ font-size: 14px;
32
+ font-weight: 500;
33
+ background: rgb(255 255 255 / 4%);
34
+ border-radius: 999px;
35
+ }
36
+ .lockerverse-auctions__catalog-lineup {
37
+ display: flex;
38
+ gap: 8px;
39
+ align-items: flex-end;
40
+ justify-content: space-between;
41
+ margin-bottom: 20px;
42
+ }
43
+ .lockerverse-auctions__catalog-lineup h3 {
44
+ font-size: 24px;
45
+ font-weight: 600;
46
+ }
47
+ .lockerverse-auctions__catalog-lineup p {
48
+ margin: 4px 0 0;
49
+ font-size: 14px;
50
+ line-height: 24px;
51
+ }
52
+ .lockerverse-auctions__catalog-lineup > span {
53
+ font-size: 14px;
54
+ color: var(--lockerverse-muted);
55
+ white-space: nowrap;
56
+ }
57
+ .lockerverse-auctions__catalog-filters {
58
+ display: flex;
59
+ flex-wrap: wrap;
60
+ gap: 8px;
61
+ min-width: 0;
62
+ padding: 0;
63
+ margin-bottom: 20px;
64
+ border: 0;
65
+ }
66
+ .lockerverse-auctions__catalog-filters button {
67
+ display: inline-flex;
68
+ gap: 8px;
69
+ align-items: center;
70
+ min-height: 40px;
71
+ padding: 8px 16px;
72
+ font-size: 14px;
73
+ font-weight: 500;
74
+ background: rgb(255 255 255 / 4%);
75
+ border-radius: 999px;
76
+ }
77
+ .lockerverse-auctions__catalog-filters button[aria-pressed="true"] {
78
+ color: var(--lockerverse-bg);
79
+ background: var(--lockerverse-text);
80
+ }
81
+ .lockerverse-auctions__catalog-filters button span {
82
+ padding: 2px 8px;
83
+ font-size: 12px;
84
+ background: rgb(127 127 127 / 16%);
85
+ border-radius: 999px;
86
+ }
87
+ .lockerverse-auctions__catalog-grid {
88
+ display: grid;
89
+ grid-template-columns: minmax(0, 1fr);
90
+ gap: 24px;
91
+ padding: 0;
92
+ margin: 0;
93
+ list-style: none;
94
+ }
95
+ .lockerverse-auctions__catalog-grid > li {
96
+ min-width: 0;
97
+ }
98
+ .lockerverse-auctions__catalog-card {
99
+ position: relative;
100
+ display: flex;
101
+ flex-direction: column;
102
+ height: 100%;
103
+ overflow: hidden;
104
+ background: var(--lockerverse-control, #0a0a0c);
105
+ border: 1px solid var(--lockerverse-border);
106
+ border-radius: 30px;
107
+ box-shadow: 0 28px 80px rgb(0 0 0 / 42%);
108
+ transition:
109
+ transform 0.3s,
110
+ border-color 0.3s;
111
+ }
112
+ .lockerverse-auctions__catalog-card:hover {
113
+ border-color: rgb(255 255 255 / 20%);
114
+ transform: translateY(-4px);
115
+ }
116
+ .lockerverse-auctions button.lockerverse-auctions__catalog-select {
117
+ position: absolute;
118
+ inset: 0;
119
+ z-index: 3;
120
+ width: 100%;
121
+ height: 100%;
122
+ padding: 0;
123
+ background: transparent;
124
+ border: 0;
125
+ border-radius: 30px;
126
+ }
127
+ .lockerverse-auctions
128
+ button.lockerverse-auctions__catalog-select:focus-visible {
129
+ outline-offset: -3px;
130
+ }
131
+ .lockerverse-auctions__catalog-media {
132
+ position: relative;
133
+ aspect-ratio: 1.28;
134
+ overflow: hidden;
135
+ color: #fff;
136
+ background: #131316;
137
+ }
138
+ .lockerverse-auctions__catalog-media::after {
139
+ position: absolute;
140
+ inset: 0;
141
+ pointer-events: none;
142
+ content: "";
143
+ background:
144
+ linear-gradient(to top, #000, rgb(0 0 0 / 35%), transparent),
145
+ linear-gradient(to bottom, rgb(0 0 0 / 60%), transparent 50%);
146
+ }
147
+ .lockerverse-auctions__catalog-images {
148
+ position: absolute;
149
+ inset: 0;
150
+ }
151
+ .lockerverse-auctions__catalog-photo {
152
+ position: absolute;
153
+ inset: 0;
154
+ width: 100%;
155
+ height: 100%;
156
+ object-fit: cover;
157
+ opacity: 0;
158
+ transition:
159
+ opacity 0.5s,
160
+ transform 0.5s;
161
+ }
162
+ .lockerverse-auctions__catalog-photo[data-visible="true"] {
163
+ opacity: 1;
164
+ }
165
+ .lockerverse-auctions__catalog-card:hover .lockerverse-auctions__catalog-photo {
166
+ transform: scale(1.03);
167
+ }
168
+ .lockerverse-auctions__catalog-chips {
169
+ position: absolute;
170
+ top: 16px;
171
+ right: 16px;
172
+ left: 16px;
173
+ z-index: 1;
174
+ display: flex;
175
+ gap: 12px;
176
+ align-items: flex-start;
177
+ justify-content: space-between;
178
+ }
179
+ .lockerverse-auctions__catalog-chip,
180
+ .lockerverse-auctions__catalog-timing {
181
+ padding: 6px 12px;
182
+ font-size: 11px;
183
+ line-height: 16px;
184
+ text-transform: uppercase;
185
+ letter-spacing: 0.24em;
186
+ background: rgb(0 0 0 / 55%);
187
+ border: 1px solid rgb(255 255 255 / 15%);
188
+ border-radius: 999px;
189
+ backdrop-filter: blur(8px);
190
+ }
191
+ .lockerverse-auctions__catalog-timing {
192
+ color: rgb(255 255 255 / 72%);
193
+ text-align: right;
194
+ background: rgb(255 255 255 / 8%);
195
+ }
196
+ .lockerverse-auctions__catalog-chip[data-live="true"] {
197
+ color: #d1fae5;
198
+ background: rgb(52 211 153 / 12%);
199
+ border-color: rgb(110 231 183 / 20%);
200
+ }
201
+ .lockerverse-auctions__catalog-metrics {
202
+ position: absolute;
203
+ inset: auto 16px 16px;
204
+ z-index: 1;
205
+ display: grid;
206
+ grid-template-columns: repeat(2, minmax(0, 1fr));
207
+ gap: 12px;
208
+ margin: 0;
209
+ }
210
+ .lockerverse-auctions__catalog-metric {
211
+ min-width: 0;
212
+ padding: 12px 16px;
213
+ background: rgb(0 0 0 / 55%);
214
+ border: 1px solid rgb(255 255 255 / 12%);
215
+ border-radius: 20px;
216
+ backdrop-filter: blur(8px);
217
+ }
218
+ .lockerverse-auctions__catalog-metric dt {
219
+ display: flex;
220
+ gap: 8px;
221
+ align-items: center;
222
+ font-size: 11px;
223
+ color: rgb(255 255 255 / 55%);
224
+ text-transform: uppercase;
225
+ letter-spacing: 0.22em;
226
+ }
227
+ .lockerverse-auctions__catalog-metric dt svg {
228
+ flex-shrink: 0;
229
+ }
230
+ .lockerverse-auctions__catalog-metric dd {
231
+ margin: 8px 0 0;
232
+ overflow: hidden;
233
+ text-overflow: ellipsis;
234
+ font-size: 16px;
235
+ font-weight: 600;
236
+ letter-spacing: -0.02em;
237
+ white-space: nowrap;
238
+ }
239
+ .lockerverse-auctions__catalog-body {
240
+ display: flex;
241
+ flex: 1;
242
+ flex-direction: column;
243
+ gap: 10px;
244
+ padding: 16px 20px 20px;
245
+ }
246
+ .lockerverse-auctions__catalog-body h3 {
247
+ display: -webkit-box;
248
+ -webkit-box-orient: vertical;
249
+ overflow: hidden;
250
+ -webkit-line-clamp: 2;
251
+ font-size: 22px;
252
+ font-weight: 600;
253
+ line-height: 1.25;
254
+ letter-spacing: -0.03em;
255
+ }
256
+ .lockerverse-auctions__catalog-description {
257
+ display: -webkit-box;
258
+ -webkit-box-orient: vertical;
259
+ overflow: hidden;
260
+ -webkit-line-clamp: 2;
261
+ font-size: 14px;
262
+ line-height: 24px;
263
+ color: var(--lockerverse-muted, #b5b1bc);
264
+ }
265
+ .lockerverse-auctions__catalog-description p {
266
+ margin: 0;
267
+ }
268
+ .lockerverse-auctions__catalog-footer {
269
+ display: flex;
270
+ gap: 16px;
271
+ align-items: center;
272
+ justify-content: space-between;
273
+ padding-top: 6px;
274
+ margin-top: auto;
275
+ }
276
+ .lockerverse-auctions__catalog-footer--item {
277
+ justify-content: flex-end;
278
+ }
279
+ .lockerverse-auctions__catalog-cta {
280
+ display: inline-flex;
281
+ gap: 8px;
282
+ align-items: center;
283
+ padding: 10px 20px;
284
+ font-size: 14px;
285
+ font-weight: 600;
286
+ text-transform: uppercase;
287
+ letter-spacing: 0.12em;
288
+ background: rgb(255 255 255 / 6%);
289
+ border: 1px solid var(--lockerverse-border);
290
+ border-radius: 999px;
291
+ transition:
292
+ background 0.2s,
293
+ color 0.2s;
294
+ }
295
+ .lockerverse-auctions__catalog-card:hover .lockerverse-auctions__catalog-cta {
296
+ color: var(--lockerverse-bg);
297
+ background: var(--lockerverse-text);
298
+ }
299
+ .lockerverse-auctions__catalog-arrow {
300
+ display: flex;
301
+ align-items: center;
302
+ justify-content: center;
303
+ width: 44px;
304
+ height: 44px;
305
+ border: 1px solid var(--lockerverse-border);
306
+ border-radius: 999px;
307
+ }
308
+ .lockerverse-auctions__catalog-empty {
309
+ padding: 32px;
310
+ text-align: center;
311
+ background: var(--lockerverse-control);
312
+ border: 1px solid var(--lockerverse-border);
313
+ border-radius: 8px;
314
+ }
315
+ @container (min-width: 720px) {
316
+ .lockerverse-auctions__catalog-grid {
317
+ grid-template-columns: repeat(2, minmax(0, 1fr));
318
+ }
319
+ }
320
+ @container (min-width: 1232px) {
321
+ .lockerverse-auctions__catalog-grid {
322
+ grid-template-columns: repeat(3, minmax(0, 1fr));
323
+ }
324
+ }
325
+ @container (max-width: 500px) {
326
+ .lockerverse-auctions__catalog-header h2 {
327
+ font-size: 30px;
328
+ }
329
+ .lockerverse-auctions__catalog-lineup {
330
+ flex-direction: column;
331
+ align-items: flex-start;
332
+ }
333
+ }
334
+ @media (max-width: 639px) {
335
+ .lockerverse-auctions--catalog {
336
+ padding: 48px 16px;
337
+ }
338
+ }
339
+ @media (prefers-reduced-motion: reduce) {
340
+ .lockerverse-auctions__catalog-card,
341
+ .lockerverse-auctions__catalog-photo,
342
+ .lockerverse-auctions__catalog-cta {
343
+ transition: none;
344
+ }
345
+ .lockerverse-auctions__catalog-card:hover {
346
+ transform: none;
347
+ }
348
+ }
349
+
350
+ .lockerverse-auctions.lockerverse-auctions--card {
351
+ width: 100%;
352
+ max-width: none;
353
+ padding: 0;
354
+ background: transparent;
355
+ }