@chinggis.systems/collection-ui 1.0.4 → 1.0.6

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.
package/dist/styles.css CHANGED
@@ -221,6 +221,10 @@
221
221
  padding: 0 16px 28px;
222
222
  }
223
223
 
224
+ .collection-ui-grid-double__track {
225
+ height: 328px;
226
+ }
227
+
224
228
  .collection-ui-grid-double__slide,
225
229
  .collection-ui-grid-special__slide {
226
230
  height: auto;
@@ -228,19 +232,44 @@
228
232
  width: max-content !important;
229
233
  }
230
234
 
235
+ .collection-ui-grid-double__track .swiper-wrapper {
236
+ overflow-y: hidden;
237
+ }
238
+
231
239
  .collection-ui-grid-double__panel {
240
+ align-items: flex-start;
241
+ display: flex;
242
+ gap: 16px;
243
+ padding-block: 6px 16px;
244
+ }
245
+
246
+ .collection-ui-grid-double__column {
247
+ align-items: end;
232
248
  display: grid;
233
- gap: 12px 8px;
234
- grid-auto-flow: column;
235
- grid-auto-columns: max-content;
236
- grid-template-rows: repeat(2, minmax(0, auto));
249
+ flex: 0 0 auto;
250
+ gap: 14px;
251
+ grid-template-rows: repeat(2, max-content);
252
+ justify-items: center;
253
+ width: max-content;
237
254
  }
238
255
 
239
256
  .collection-ui-grid-double__item,
240
257
  .collection-ui-grid-special__item {
258
+ display: flex;
259
+ justify-content: center;
260
+ justify-self: center;
241
261
  min-width: 0;
242
262
  }
243
263
 
264
+ .collection-ui-grid-double__item {
265
+ justify-self: center;
266
+ width: auto;
267
+ }
268
+
269
+ .collection-ui-grid-double__mobile-scroll {
270
+ display: none;
271
+ }
272
+
244
273
  .collection-ui-grid-special__panel {
245
274
  align-items: stretch;
246
275
  display: flex;
@@ -375,28 +404,42 @@
375
404
  width: 100%;
376
405
  }
377
406
 
407
+ .collection-ui-grid__view-all {
408
+ align-self: start;
409
+ height: 180px;
410
+ justify-self: center;
411
+ max-width: 190px;
412
+ min-height: 0;
413
+ padding: 16px;
414
+ }
415
+
416
+ .collection-ui-grid__view-all .collection-ui-view-all__icon {
417
+ font-size: 1.25rem;
418
+ height: 44px;
419
+ margin-bottom: 10px;
420
+ width: 44px;
421
+ }
422
+
378
423
  .collection-ui-grid__item .we-lockup {
379
424
  max-width: min(100%, 190px);
380
425
  width: 190px;
381
426
  }
382
427
 
383
- .collection-ui-grid__item .we-book-overlay {
428
+ .collection-ui-grid__item .collection-ui-book-media {
384
429
  margin-inline: auto;
385
430
  max-width: 100%;
386
431
  }
387
432
 
388
- .collection-detail-page .collection-ui-grid__item .we-book-overlay {
389
- width: var(--spine-width, 180px);
390
- }
391
-
392
- .collection-detail-page .collection-ui-grid__item .we-artwork__image {
433
+ .collection-detail-page
434
+ .collection-ui-grid__item
435
+ .collection-ui-book-media
436
+ img {
393
437
  height: var(--spine-height, 266px) !important;
394
- object-fit: cover;
395
- width: 100% !important;
438
+ object-fit: contain;
439
+ width: auto !important;
396
440
  }
397
441
 
398
- .collection-ui-grid__item .collection-ui-card__media,
399
- .collection-ui-grid__view-all {
442
+ .collection-ui-grid__item .collection-ui-card__media {
400
443
  min-height: 168px;
401
444
  }
402
445
 
@@ -451,9 +494,12 @@
451
494
  width: 112px;
452
495
  }
453
496
 
497
+ .collection-ui-card:has(.collection-ui-book-media) {
498
+ width: max-content;
499
+ }
500
+
454
501
  .collection-ui-card--image-only {
455
502
  justify-content: flex-end;
456
- width: 88px;
457
503
  }
458
504
 
459
505
  .collection-ui-grid-special
@@ -465,15 +511,62 @@
465
511
  min-height: 0;
466
512
  }
467
513
 
468
- .collection-ui-card--image-only .we-book-overlay {
514
+ .collection-ui-card--image-only .collection-ui-book-media {
469
515
  margin-bottom: 0;
470
516
  }
471
517
 
472
- .collection-ui-grid-double .we-book-overlay,
473
- .collection-ui-grid-special .we-book-overlay {
518
+ .collection-ui-grid-double .collection-ui-book-media,
519
+ .collection-ui-grid-special .collection-ui-book-media {
474
520
  margin-bottom: 0;
475
521
  }
476
522
 
523
+ .collection-ui-grid-double .collection-ui-book-media {
524
+ height: var(--spine-height, 132px) !important;
525
+ --book-depth: clamp(2px, calc(var(--spine-height, 132px) * 0.012), 4px);
526
+ --book-page-line: 1px;
527
+ --book-spine-left: clamp(4px, calc(var(--spine-height, 132px) * 0.026), 7px);
528
+ --book-spine-width: clamp(
529
+ 8px,
530
+ calc(var(--spine-height, 132px) * 0.065),
531
+ 14px
532
+ );
533
+ --book-spine-hover-width: clamp(
534
+ 14px,
535
+ calc(var(--spine-height, 132px) * 0.1),
536
+ 22px
537
+ );
538
+ overflow: visible;
539
+ padding-right: var(--book-depth);
540
+ width: var(--spine-measured-width, var(--spine-width, auto));
541
+ }
542
+
543
+ .collection-ui-grid-double .collection-ui-book-media__cover img {
544
+ height: var(--spine-height, 132px);
545
+ max-height: none;
546
+ max-width: none;
547
+ object-fit: contain;
548
+ object-position: center;
549
+ width: auto;
550
+ }
551
+
552
+ .collection-ui-grid-double .collection-ui-product-media,
553
+ .collection-ui-grid-double .collection-ui-audio-media {
554
+ background: #fff;
555
+ border-radius: 6px;
556
+ height: 96px !important;
557
+ overflow: hidden;
558
+ width: 96px !important;
559
+ }
560
+
561
+ .collection-ui-grid-double .collection-ui-product-media img,
562
+ .collection-ui-grid-double .collection-ui-audio-media img {
563
+ height: 100% !important;
564
+ max-height: none;
565
+ max-width: none;
566
+ object-fit: contain;
567
+ width: 100% !important;
568
+ }
569
+
477
570
  .collection-ui-card--featured {
478
571
  width: auto;
479
572
  }
@@ -529,126 +622,136 @@
529
622
  }
530
623
 
531
624
  .collection-ui-book-media {
532
- align-items: center;
533
- display: flex;
534
- justify-content: center;
535
- overflow: visible;
536
- }
537
-
538
- .collection-ui-book-media__artwork {
625
+ --book-depth: clamp(3px, calc(var(--spine-height, 266px) * 0.018), 7px);
626
+ --book-page-line: clamp(1px, calc(var(--spine-height, 266px) * 0.006), 2px);
627
+ --book-spine-left: clamp(5px, calc(var(--spine-height, 266px) * 0.03), 10px);
628
+ --book-spine-width: clamp(
629
+ 12px,
630
+ calc(var(--spine-height, 266px) * 0.09),
631
+ 24px
632
+ );
633
+ --book-spine-hover-width: clamp(
634
+ 20px,
635
+ calc(var(--spine-height, 266px) * 0.14),
636
+ 38px
637
+ );
638
+ --book-shadow-x: clamp(10px, calc(var(--spine-height, 266px) * 0.08), 22px);
639
+ --book-shadow-y: clamp(16px, calc(var(--spine-height, 266px) * 0.14), 36px);
640
+ --book-shadow-blur: clamp(
641
+ 18px,
642
+ calc(var(--spine-height, 266px) * 0.16),
643
+ 42px
644
+ );
539
645
  display: block;
540
646
  flex: 0 0 auto;
541
647
  overflow: visible;
648
+ perspective: 1600px;
542
649
  position: relative;
543
- z-index: 1;
544
- }
545
-
546
- .collection-ui-book-media__artwork::before {
547
- background-image: url("./assets/spine/FlatShadow.webp");
548
- background-size: 100% 100%;
549
- content: "";
550
- display: block;
551
- height: 115%;
552
- left: -10%;
553
- opacity: 0.6;
650
+ width: var(--spine-measured-width, var(--spine-width, 150px));
651
+ }
652
+
653
+ .collection-ui-book-media__pages {
654
+ background: #fff;
655
+ border: 1px solid rgb(128 128 128 / 76%);
656
+ border-radius: 3px;
657
+ box-shadow:
658
+ var(--book-shadow-x) var(--book-shadow-y) var(--book-shadow-blur)
659
+ calc(var(--book-shadow-blur) * -0.43) rgb(0 0 0 / 24%),
660
+ inset calc(var(--book-page-line) * -1) 0 0 #7f7f7f,
661
+ inset calc(var(--book-page-line) * -1.5) 0 0 #dbdbdb,
662
+ inset calc(var(--book-page-line) * -2) 0 0 #fff,
663
+ inset calc(var(--book-page-line) * -2.5) 0 0 #d7d7d7,
664
+ inset calc(var(--book-page-line) * -3) 0 0 #fff,
665
+ inset calc(var(--book-page-line) * -3.5) 0 0 #d7d7d7,
666
+ inset calc(var(--book-page-line) * -4) 0 0 #fff,
667
+ inset calc(var(--book-page-line) * -4.5) 0 0 #d7d7d7,
668
+ inset calc(var(--book-page-line) * -5) 0 0 #fff;
669
+ height: 96%;
670
+ left: var(--book-depth);
554
671
  position: absolute;
555
- top: -4%;
556
- width: 120%;
557
- z-index: 1;
672
+ top: 2%;
673
+ width: 100%;
558
674
  }
559
675
 
560
- .collection-ui-book-media__lighting {
561
- inset: 0;
676
+ .collection-ui-book-media__cover {
677
+ background: #111;
678
+ border-radius: 3px;
679
+ box-shadow:
680
+ inset 4px 1px 3px rgb(255 255 255 / 38%),
681
+ inset 0 -1px 2px rgb(0 0 0 / 50%),
682
+ 8px 14px 22px -10px rgb(0 0 0 / 28%);
683
+ height: var(--spine-height, 266px);
684
+ overflow: hidden;
562
685
  position: relative;
563
- z-index: 2;
564
- }
565
-
566
- .collection-ui-book-media__background {
567
- filter: blur(8px);
568
- inset: 0;
569
- left: 50%;
570
- margin: 0;
571
- opacity: 0.25;
572
- position: absolute;
573
- top: 50%;
574
- transform: translate(-50%, -50%);
686
+ transform-origin: 0 50%;
687
+ transition:
688
+ box-shadow 0.25s ease,
689
+ transform 0.25s ease;
690
+ width: 100%;
575
691
  z-index: 1;
576
692
  }
577
693
 
578
- @supports (mix-blend-mode: multiply) {
579
- .collection-ui-book-media__background {
580
- mix-blend-mode: multiply;
581
- }
694
+ .collection-ui-book-media:hover .collection-ui-book-media__cover {
695
+ box-shadow:
696
+ inset 4px 1px 3px rgb(255 255 255 / 38%),
697
+ inset 0 -1px 2px rgb(0 0 0 / 50%),
698
+ 18px 10px 18px -10px rgb(0 0 0 / 26%);
699
+ transform: rotateY(-18deg);
700
+ transform-style: preserve-3d;
582
701
  }
583
702
 
584
- @supports (mix-blend-mode: multiply) {
585
- .collection-ui-book-media__lighting::after {
586
- background-image: url("./assets/spine/BurnBlend.png");
587
- background-size: 100% 100%;
588
- border-radius: 2.5px;
589
- content: "";
590
- display: block;
591
- height: 100%;
592
- inset: 0;
593
- mix-blend-mode: multiply;
594
- position: absolute;
595
- z-index: 1;
596
- }
597
- }
598
-
599
- .collection-ui-book-media__foreground {
600
- inset: 0;
601
- position: relative;
602
- z-index: 2;
603
- }
604
-
605
- .collection-ui-book-media__foreground::before {
606
- background-image: url("./assets/spine/NormalBlend.webp");
607
- background-size: 100% 100%;
608
- border-radius: 2.5px;
609
- content: "";
703
+ .collection-ui-book-media__cover img {
610
704
  display: block;
611
- height: 100%;
612
- inset: 0;
613
- position: absolute;
705
+ height: var(--spine-height, 266px);
706
+ max-width: none;
707
+ object-fit: fill;
708
+ width: 100%;
614
709
  z-index: 1;
615
710
  }
616
711
 
617
- @supports (mix-blend-mode: soft-light) {
618
- .collection-ui-book-media__foreground::after {
619
- background-color: transparent;
620
- background-image: url("./assets/spine/SoftLightBlend.webp");
621
- background-size: 100% 100%;
622
- border-radius: 2.5px;
623
- content: "";
624
- display: block;
625
- height: 100%;
626
- inset: 0;
627
- mix-blend-mode: soft-light;
628
- position: absolute;
629
- z-index: 1;
630
- }
712
+ .collection-ui-book-media__spine {
713
+ background-image: linear-gradient(
714
+ 90deg,
715
+ rgb(255 255 255 / 24%) 0,
716
+ rgb(255 255 255 / 0%) 100%
717
+ );
718
+ border-left: clamp(1px, calc(var(--spine-height, 266px) * 0.008), 2px) solid
719
+ rgb(0 0 0 / 8%);
720
+ height: 100%;
721
+ left: var(--book-spine-left);
722
+ position: absolute;
723
+ top: 0;
724
+ transition: width 0.25s ease;
725
+ width: var(--book-spine-width);
726
+ z-index: 2;
631
727
  }
632
728
 
633
- .collection-ui-book-media__background img,
634
- .collection-ui-book-media__foreground img {
635
- border-radius: 2.5px;
636
- display: block;
637
- object-fit: cover;
638
- position: relative;
639
- z-index: 0;
729
+ .collection-ui-book-media:hover .collection-ui-book-media__spine {
730
+ width: var(--book-spine-hover-width);
640
731
  }
641
732
 
642
- .collection-ui-book-media__artwork::after {
643
- background-image: url("./assets/spine/FlatEdges.webp");
644
- background-size: 100% 100%;
645
- border-radius: 2.5px;
646
- content: "";
647
- display: block;
733
+ .collection-ui-book-media__light {
734
+ background-image: linear-gradient(
735
+ 90deg,
736
+ rgb(255 255 255 / 0%) 0,
737
+ rgb(255 255 255 / 20%) 100%
738
+ );
739
+ border-radius: 3px;
648
740
  height: 100%;
649
- inset: 0;
741
+ opacity: 0.14;
650
742
  position: absolute;
651
- z-index: 3;
743
+ right: 0;
744
+ top: 0;
745
+ transition:
746
+ opacity 0.25s ease,
747
+ width 0.25s ease;
748
+ width: 90%;
749
+ z-index: 2;
750
+ }
751
+
752
+ .collection-ui-book-media:hover .collection-ui-book-media__light {
753
+ opacity: 1;
754
+ width: 70%;
652
755
  }
653
756
 
654
757
  .collection-ui-audio-media,
@@ -764,12 +867,12 @@
764
867
 
765
868
  .collection-ui-special-item__media > *,
766
869
  .collection-ui-special-item__media img,
767
- .collection-ui-special-item__media .we-book-overlay {
870
+ .collection-ui-special-item__media .collection-ui-book-media {
768
871
  max-height: calc(100% + 44px);
769
872
  max-width: 100%;
770
873
  }
771
874
 
772
- .collection-ui-special-item__media .we-book-overlay {
875
+ .collection-ui-special-item__media .collection-ui-book-media {
773
876
  margin-bottom: 0;
774
877
  }
775
878
 
@@ -1373,6 +1476,134 @@
1373
1476
  }
1374
1477
 
1375
1478
  @media (max-width: 767px) {
1479
+ .collection-ui-container,
1480
+ .collection-ui-container--wide {
1481
+ padding-inline: 16px;
1482
+ }
1483
+
1484
+ .collection-ui-title {
1485
+ margin-bottom: 8px;
1486
+ }
1487
+
1488
+ .collection-ui-title__row {
1489
+ align-items: flex-start;
1490
+ gap: 8px;
1491
+ }
1492
+
1493
+ .collection-ui-title__heading {
1494
+ font-size: 1rem;
1495
+ min-width: 0;
1496
+ }
1497
+
1498
+ .collection-ui-title__description {
1499
+ display: -webkit-box;
1500
+ overflow: hidden;
1501
+ -webkit-box-orient: vertical;
1502
+ -webkit-line-clamp: 3;
1503
+ }
1504
+
1505
+ .collection-ui-new-layout-carousel {
1506
+ margin-top: 12px;
1507
+ padding-bottom: 12px;
1508
+ }
1509
+
1510
+ .collection-ui-grid-double__track,
1511
+ .collection-ui-grid-special__track {
1512
+ overscroll-behavior-y: none;
1513
+ overflow-x: hidden;
1514
+ overflow-y: hidden;
1515
+ padding-bottom: 14px;
1516
+ scrollbar-width: none;
1517
+ touch-action: pan-x;
1518
+ }
1519
+
1520
+ .collection-ui-grid-special__track {
1521
+ margin-inline: 0;
1522
+ padding-inline: 0;
1523
+ }
1524
+
1525
+ .collection-ui-grid-double__track::-webkit-scrollbar,
1526
+ .collection-ui-grid-special__track::-webkit-scrollbar {
1527
+ display: none;
1528
+ }
1529
+
1530
+ .collection-ui-grid-special__track .swiper-wrapper,
1531
+ .collection-ui-grid-special__slide {
1532
+ scrollbar-width: none;
1533
+ }
1534
+
1535
+ .collection-ui-grid-special__track .swiper-wrapper::-webkit-scrollbar,
1536
+ .collection-ui-grid-special__slide::-webkit-scrollbar {
1537
+ display: none;
1538
+ }
1539
+
1540
+ .collection-ui-grid-special__track .swiper-wrapper,
1541
+ .collection-ui-grid-special__slide {
1542
+ overflow-x: hidden;
1543
+ overflow-y: hidden;
1544
+ }
1545
+
1546
+ .collection-ui-grid-special,
1547
+ .collection-ui-grid-special * {
1548
+ scrollbar-width: none;
1549
+ }
1550
+
1551
+ .collection-ui-grid-special *::-webkit-scrollbar {
1552
+ display: none;
1553
+ height: 0;
1554
+ width: 0;
1555
+ }
1556
+
1557
+ .collection-ui-grid-double .collection-ui-new-layout-carousel {
1558
+ display: none;
1559
+ }
1560
+
1561
+ .collection-ui-grid-double__mobile-scroll {
1562
+ display: grid;
1563
+ gap: 12px 10px;
1564
+ grid-auto-columns: 96px;
1565
+ grid-auto-flow: column;
1566
+ grid-template-rows: repeat(2, minmax(0, auto));
1567
+ margin-inline: -16px;
1568
+ overscroll-behavior-y: none;
1569
+ overflow-x: auto;
1570
+ overflow-y: hidden;
1571
+ padding: 12px 16px 16px;
1572
+ scroll-snap-type: x proximity;
1573
+ scrollbar-width: none;
1574
+ touch-action: pan-x;
1575
+ -webkit-overflow-scrolling: touch;
1576
+ }
1577
+
1578
+ .collection-ui-grid-double__mobile-scroll::-webkit-scrollbar {
1579
+ display: none;
1580
+ }
1581
+
1582
+ .collection-ui-grid-double__mobile-item {
1583
+ display: flex;
1584
+ justify-content: center;
1585
+ min-width: 0;
1586
+ scroll-snap-align: start;
1587
+ }
1588
+
1589
+ .collection-ui-grid-double__panel {
1590
+ gap: 12px 10px;
1591
+ grid-auto-columns: minmax(96px, 96px);
1592
+ }
1593
+
1594
+ .collection-ui-grid-double .collection-ui-card--image-only {
1595
+ height: 96px;
1596
+ width: 96px;
1597
+ }
1598
+
1599
+ .collection-ui-grid-double__item .collection-ui-book-media img,
1600
+ .collection-ui-grid-double__mobile-item .collection-ui-book-media img {
1601
+ height: var(--spine-height, 132px) !important;
1602
+ max-height: none;
1603
+ max-width: none;
1604
+ width: auto !important;
1605
+ }
1606
+
1376
1607
  .collection-ui-slide__slide {
1377
1608
  width: min(90dvw, calc(100% - 32px));
1378
1609
  }
@@ -1404,20 +1635,247 @@
1404
1635
  }
1405
1636
 
1406
1637
  .collection-ui-grid-special__panel {
1407
- gap: 18px;
1408
- grid-template-columns: minmax(116px, auto) minmax(104px, auto);
1638
+ --collection-ui-grid-special-featured-width: clamp(136px, 38dvw, 156px);
1639
+ --collection-ui-grid-special-featured-height: clamp(204px, 57dvw, 234px);
1640
+ --collection-ui-grid-special-item-width: clamp(68px, 18dvw, 76px);
1641
+ --collection-ui-grid-special-item-height: clamp(100px, 28dvw, 112px);
1642
+ align-items: end;
1643
+ display: grid;
1644
+ gap: 12px;
1645
+ grid-template-columns:
1646
+ var(--collection-ui-grid-special-featured-width)
1647
+ minmax(0, 1fr);
1648
+ overflow: hidden;
1649
+ width: clamp(300px, calc(100dvw - 72px), 340px);
1650
+ }
1651
+
1652
+ .collection-ui-grid-special__featured {
1653
+ align-items: center;
1654
+ align-self: stretch;
1655
+ min-height: var(--collection-ui-grid-special-featured-height);
1656
+ overflow: hidden;
1409
1657
  }
1410
1658
 
1411
1659
  .collection-ui-grid-special__items {
1412
- grid-template-columns: minmax(104px, auto);
1660
+ align-items: end;
1661
+ gap: 10px 8px;
1662
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1663
+ min-width: 0;
1664
+ overflow: hidden;
1665
+ }
1666
+
1667
+ .collection-ui-grid-special__item {
1668
+ align-items: end;
1669
+ display: flex;
1670
+ height: var(--collection-ui-grid-special-item-height);
1671
+ justify-content: center;
1672
+ overflow: hidden;
1673
+ }
1674
+
1675
+ .collection-ui-grid-special__featured .collection-ui-book-media {
1676
+ --spine-height: var(
1677
+ --collection-ui-grid-special-featured-height
1678
+ ) !important;
1679
+ --spine-width: var(--collection-ui-grid-special-featured-width) !important;
1680
+ }
1681
+
1682
+ .collection-ui-grid-special__item .collection-ui-book-media {
1683
+ --spine-height: var(--collection-ui-grid-special-item-height) !important;
1684
+ --spine-width: var(--collection-ui-grid-special-item-width) !important;
1685
+ }
1686
+
1687
+ .collection-ui-grid-special__featured .collection-ui-book-media img,
1688
+ .collection-ui-grid-special__item .collection-ui-book-media img {
1689
+ height: var(--spine-height) !important;
1690
+ width: auto !important;
1413
1691
  }
1414
1692
 
1415
1693
  .collection-ui-card--featured {
1416
- width: 136px;
1694
+ width: var(--collection-ui-grid-special-featured-width);
1417
1695
  }
1418
1696
 
1419
1697
  .collection-ui-card__media--featured {
1420
- min-height: 204px;
1698
+ min-height: var(--collection-ui-grid-special-featured-height);
1699
+ }
1700
+
1701
+ .collection-ui-banner__copy {
1702
+ order: 2;
1703
+ padding: 0 0 14px;
1704
+ }
1705
+
1706
+ .collection-ui-banner__eyebrow {
1707
+ font-size: 0.875rem;
1708
+ margin-bottom: 12px;
1709
+ }
1710
+
1711
+ .collection-ui-banner__title {
1712
+ font-size: 1.375rem;
1713
+ line-height: 1.2;
1714
+ }
1715
+
1716
+ .collection-ui-banner__description {
1717
+ display: -webkit-box;
1718
+ overflow: hidden;
1719
+ text-align: left;
1720
+ -webkit-box-orient: vertical;
1721
+ -webkit-line-clamp: 4;
1722
+ }
1723
+
1724
+ .collection-ui .collection-ui-button {
1725
+ margin-bottom: 16px;
1726
+ min-height: 40px;
1727
+ min-width: 0;
1728
+ padding-inline: 18px;
1729
+ white-space: normal;
1730
+ }
1731
+
1732
+ .collection-ui-banner__media-link {
1733
+ max-height: none;
1734
+ order: 1;
1735
+ }
1736
+
1737
+ .collection-ui-special-item {
1738
+ gap: 12px;
1739
+ min-height: 0;
1740
+ padding-block: 0 22px;
1741
+ }
1742
+
1743
+ .collection-ui-special-item__media {
1744
+ height: min(64dvw, 238px);
1745
+ margin-bottom: -12px;
1746
+ transform: translateY(-30px);
1747
+ width: min(54dvw, 176px);
1748
+ }
1749
+
1750
+ .collection-ui-special-item__media .collection-ui-book-media {
1751
+ --spine-height: min(64dvw, 238px) !important;
1752
+ --spine-width: min(46dvw, 162px) !important;
1753
+ }
1754
+
1755
+ .collection-ui-special-item__media .collection-ui-book-media img {
1756
+ height: var(--spine-height) !important;
1757
+ width: auto !important;
1758
+ }
1759
+
1760
+ .collection-ui-special-item__content {
1761
+ min-width: 0;
1762
+ }
1763
+
1764
+ .collection-ui-special-item__content h3 {
1765
+ font-size: 1.125rem;
1766
+ margin-bottom: 10px;
1767
+ }
1768
+
1769
+ .collection-ui-special-item__description {
1770
+ display: -webkit-box;
1771
+ font-size: 0.875rem;
1772
+ overflow: hidden;
1773
+ -webkit-box-orient: vertical;
1774
+ -webkit-line-clamp: 4;
1775
+ }
1776
+
1777
+ .collection-ui-special-item__aside {
1778
+ align-items: center;
1779
+ gap: 10px;
1780
+ }
1781
+
1782
+ .collection-ui-grid-title {
1783
+ gap: 18px;
1784
+ }
1785
+
1786
+ .collection-ui-row-item {
1787
+ gap: 14px;
1788
+ max-width: 100%;
1789
+ }
1790
+
1791
+ .collection-ui-row-item__media .collection-ui-book-media {
1792
+ --spine-height: 168px !important;
1793
+ --spine-width: 112px !important;
1794
+ }
1795
+
1796
+ .collection-ui-row-item__media .collection-ui-book-media img {
1797
+ height: var(--spine-height) !important;
1798
+ width: auto !important;
1799
+ }
1800
+
1801
+ .collection-ui-image-grid .collection-ui-title {
1802
+ margin-bottom: 22px;
1803
+ }
1804
+
1805
+ .collection-ui-image-grid__items {
1806
+ gap: 16px 12px;
1807
+ margin-top: 20px;
1808
+ }
1809
+
1810
+ .collection-ui-image-grid--block .collection-ui-image-grid__items {
1811
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1812
+ }
1813
+
1814
+ .collection-ui-image-grid--block .collection-ui-image-grid__item {
1815
+ min-height: 64px;
1816
+ }
1817
+
1818
+ .collection-ui-image-grid__image {
1819
+ height: auto;
1820
+ max-height: 88px;
1821
+ width: min(100%, 150px);
1822
+ }
1823
+
1824
+ .collection-ui-image-grid--block .collection-ui-image-grid__image {
1825
+ background: var(--color-fg-main, #fff);
1826
+ height: 64px;
1827
+ object-fit: contain;
1828
+ padding: 10px;
1829
+ width: 100%;
1830
+ }
1831
+
1832
+ .collection-ui-image-grid--circle .collection-ui-image-grid__image {
1833
+ aspect-ratio: 1 / 1;
1834
+ border-radius: 999px;
1835
+ height: 128px !important;
1836
+ object-fit: cover;
1837
+ object-position: center top;
1838
+ transform: scale(1.48);
1839
+ width: 128px !important;
1840
+ }
1841
+
1842
+ .collection-ui-image-grid--circle .collection-ui-image-grid__items {
1843
+ gap: 28px 34px;
1844
+ grid-template-columns: repeat(2, minmax(0, 128px));
1845
+ justify-content: center;
1846
+ }
1847
+
1848
+ .collection-ui-image-grid--circle .collection-ui-image-grid__item {
1849
+ min-height: 128px;
1850
+ }
1851
+
1852
+ .collection-ui-image-grid--circle .collection-ui-image-grid__item a {
1853
+ align-items: center;
1854
+ aspect-ratio: 1 / 1;
1855
+ border-radius: 999px;
1856
+ clip-path: circle(50%);
1857
+ display: flex;
1858
+ height: 128px;
1859
+ justify-content: center;
1860
+ overflow: hidden;
1861
+ width: 128px;
1862
+ }
1863
+
1864
+ .collection-ui-image-grid--circle .collection-ui-image-grid__item a img {
1865
+ border-radius: 999px !important;
1866
+ clip-path: circle(50%);
1867
+ height: 128px !important;
1868
+ max-height: none;
1869
+ max-width: none;
1870
+ min-height: 128px;
1871
+ min-width: 128px;
1872
+ object-fit: cover;
1873
+ width: 128px !important;
1874
+ }
1875
+
1876
+ .collection-ui-image-grid__image--square {
1877
+ height: 132px;
1878
+ width: 132px;
1421
1879
  }
1422
1880
  }
1423
1881
 
@@ -1546,7 +2004,10 @@
1546
2004
 
1547
2005
  @media (min-width: 1200px) {
1548
2006
  .collection-ui-grid__items {
1549
- grid-template-columns: repeat(5, minmax(0, 1fr));
2007
+ grid-template-columns: repeat(
2008
+ var(--collection-ui-columns, 5),
2009
+ minmax(0, 1fr)
2010
+ );
1550
2011
  }
1551
2012
 
1552
2013
  .collection-ui-vertical__grid {