@sc-360-v2/storefront-cms-library 0.2.84 → 0.2.85

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.
@@ -0,0 +1,1312 @@
1
+ @use "sass:map";
2
+ @use "sass:list";
3
+
4
+ $resizerId: "[data-cms-tool='cms-element-resizer']";
5
+ $resizeActive: '[data-cms-element-resizer="true"]';
6
+ [data-div-type="element"] {
7
+ &[data-element-type="bundleDetails"] {
8
+ // width: var(--_sf-con-nw-wh);
9
+ width: var(
10
+ --_sf-mob-el-wh-st-mx,
11
+ var(
12
+ --_sf-tab-el-wh-st-mx,
13
+ var(
14
+ --_sf-el-wh-st-mx,
15
+ calc(
16
+ 1% *
17
+ var(
18
+ --_ctm-mob-bun-ele-nw-wh-vl,
19
+ var(--_ctm-tab-bun-ele-nw-wh-vl, var(--_ctm-bun-ele-nw-wh-vl, var(--_sf-nw-wh)))
20
+ )
21
+ )
22
+ )
23
+ )
24
+ );
25
+
26
+ height: auto;
27
+
28
+ margin: var(
29
+ --_ctm-mob-bun-lt-mn,
30
+ var(
31
+ --_ctm-tab-bun-lt-mn,
32
+ var(--_ctm-bun-lt-mn, var(--_ctm-mob-lt-mn, var(--_ctm-tab-lt-mn, var(--_ctm-lt-mn))))
33
+ )
34
+ );
35
+
36
+ background-color: var(
37
+ --_ctm-mob-bun-dn-bd-cr,
38
+ var(--_ctm-tab-bun-dn-bd-cr, var(--_ctm-bun-dn-bd-cr))
39
+ );
40
+ background-image: var(
41
+ --_ctm-mob-bun-dn-bd-ie,
42
+ var(--_ctm-tab-bun-dn-bd-ie, var(--_ctm-bun-dn-bd-ie))
43
+ );
44
+ background-attachment: var(
45
+ --_ctm-mob-bun-dn-bd-at,
46
+ var(--_ctm-tab-bun-dn-bd-at, var(--_ctm-bun-dn-bd-at))
47
+ );
48
+ background-position: var(
49
+ --_ctm-mob-bun-dn-bd-pn,
50
+ var(--_ctm-tab-bun-dn-bd-pn, var(--_ctm-bun-dn-bd-pn))
51
+ );
52
+ background-repeat: var(
53
+ --_ctm-mob-bun-dn-bd-rt,
54
+ var(--_ctm-tab-bun-dn-bd-rt, var(--_ctm-bun-dn-bd-rt))
55
+ );
56
+ background-size: var(
57
+ --_ctm-mob-bun-dn-bd-se,
58
+ var(--_ctm-tab-bun-dn-bd-se, var(--_ctm-bun-dn-bd-se))
59
+ );
60
+ padding: var(--_ctm-mob-bun-lt-pg, var(--_ctm-tab-bun-lt-pg, var(--_ctm-bun-lt-pg)));
61
+
62
+ border-color: var(
63
+ --_ctm-mob-bun-dn-br-cr,
64
+ var(--_ctm-tab-bun-dn-br-cr, var(--_ctm-bun-dn-br-cr))
65
+ );
66
+
67
+ border-style: var(
68
+ --_ctm-mob-bun-dn-br-se,
69
+ var(--_ctm-tab-bun-dn-br-se, var(--_ctm-bun-dn-br-se))
70
+ );
71
+
72
+ border-width: var(
73
+ --_ctm-mob-bun-dn-br-wh,
74
+ var(--_ctm-tab-bun-dn-br-wh, var(--_ctm-bun-dn-br-wh))
75
+ );
76
+
77
+ border-radius: var(
78
+ --_ctm-mob-bun-dn-br-rs,
79
+ var(--_ctm-tab-bun-dn-br-rs, var(--_ctm-bun-dn-br-rs))
80
+ );
81
+
82
+ box-shadow: var(
83
+ --_show-shadow,
84
+ var(--_ctm-mob-bun-dn-sw-ae, var(--_ctm-tab-bun-dn-sw-ae, var(--_ctm-bun-dn-sw-ae)))
85
+ var(--_ctm-mob-bun-dn-sw-br, var(--_ctm-tab-bun-dn-sw-br, var(--_ctm-bun-dn-sw-br)))
86
+ var(--_ctm-mob-bun-dn-sw-sd, var(--_ctm-tab-bun-dn-sw-sd, var(--_ctm-bun-dn-sw-sd)))
87
+ var(--_ctm-mob-bun-dn-sw-cr, var(--_ctm-tab-bun-dn-sw-cr, var(--_ctm-bun-dn-sw-cr)))
88
+ );
89
+
90
+ // &:not(:has(#{$resizerId}#{$resizeActive})) {
91
+ // min-height: 100px !important;
92
+ // }
93
+
94
+ & > div {
95
+ &.wrapper {
96
+ width: 100%;
97
+ // grid-template-rows: max(var(--_ctm-bun-lt-ht), auto) !important;
98
+ }
99
+ }
100
+ .bundle__details__element__container {
101
+ .template_1 {
102
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial,
103
+ sans-serif;
104
+ color: #374151;
105
+ padding: 24px 16px;
106
+ max-width: 1200px;
107
+ margin: 0 auto;
108
+
109
+ @media (min-width: 768px) {
110
+ padding: 32px;
111
+ }
112
+ .container {
113
+ display: flex;
114
+ flex-direction: column;
115
+
116
+ @media (min-width: 768px) {
117
+ flex-direction: row;
118
+ gap: 40px;
119
+ }
120
+ }
121
+
122
+ .gallerySection {
123
+ flex: 1;
124
+ margin-bottom: 24px;
125
+
126
+ @media (min-width: 768px) {
127
+ flex: 0 0 50%;
128
+ margin-bottom: 0;
129
+ }
130
+ }
131
+
132
+ .infoSection {
133
+ flex: 1;
134
+ }
135
+
136
+ .optionsSection {
137
+ display: flex;
138
+ flex-direction: column;
139
+ gap: 24px;
140
+ margin-top: 24px;
141
+ }
142
+
143
+ .actionSection {
144
+ display: flex;
145
+ flex-direction: column;
146
+ gap: 16px;
147
+ margin-top: 24px;
148
+
149
+ @media (min-width: 576px) {
150
+ flex-direction: row;
151
+ align-items: flex-start;
152
+ }
153
+ }
154
+
155
+ .selectButton {
156
+ display: flex;
157
+ align-items: center;
158
+ justify-content: center;
159
+ background-color: #2563eb;
160
+ color: white;
161
+ font-weight: 600;
162
+ font-size: 14px;
163
+ letter-spacing: 0.5px;
164
+ height: 48px;
165
+ border-radius: 6px;
166
+ padding: 0 24px;
167
+ border: none;
168
+ cursor: pointer;
169
+ transition:
170
+ background-color 0.2s ease-in-out,
171
+ transform 0.1s ease-in-out;
172
+ flex: 1;
173
+
174
+ @media (min-width: 576px) {
175
+ flex: 0 0 auto;
176
+ min-width: 120px;
177
+ }
178
+
179
+ &:hover {
180
+ background-color: #1d4ed8;
181
+ }
182
+
183
+ &:active {
184
+ transform: scale(0.98);
185
+ }
186
+
187
+ &:focus {
188
+ outline: none;
189
+ box-shadow: 0 0 0 2px #dbeafe;
190
+ }
191
+ }
192
+
193
+ .selectIcon {
194
+ display: flex;
195
+ align-items: center;
196
+ margin-right: 8px;
197
+ }
198
+ }
199
+ .sizeSelector {
200
+ display: flex;
201
+ flex-direction: column;
202
+ gap: 12px;
203
+
204
+ .header {
205
+ display: flex;
206
+ justify-content: space-between;
207
+ align-items: center;
208
+ }
209
+
210
+ .label {
211
+ font-size: 14px;
212
+ font-weight: 600;
213
+ color: #1f2937;
214
+ }
215
+
216
+ .sizeChartButton {
217
+ font-size: 13px;
218
+ font-weight: 500;
219
+ color: #2563eb;
220
+ background: none;
221
+ border: none;
222
+ padding: 0;
223
+ cursor: pointer;
224
+ text-decoration: underline;
225
+ transition: color 0.2s ease-in-out;
226
+
227
+ &:hover {
228
+ color: #1d4ed8;
229
+ }
230
+
231
+ &:focus {
232
+ outline: none;
233
+ color: #1d4ed8;
234
+ }
235
+ }
236
+
237
+ .options {
238
+ display: flex;
239
+ flex-wrap: wrap;
240
+ gap: 8px;
241
+ }
242
+
243
+ .sizeOption {
244
+ min-width: 44px;
245
+ padding: 8px 12px;
246
+ border: 1px solid #e5e7eb;
247
+ border-radius: 6px;
248
+ background-color: transparent;
249
+ font-size: 14px;
250
+ font-weight: 500;
251
+ color: #374151;
252
+ cursor: pointer;
253
+ transition: all 0.2s ease-in-out;
254
+ display: flex;
255
+ align-items: center;
256
+ justify-content: center;
257
+
258
+ &:hover {
259
+ background-color: #f3f4f6;
260
+ }
261
+
262
+ &.selected {
263
+ border-color: #2563eb;
264
+ background-color: #dbeafe;
265
+ color: #1d4ed8;
266
+ }
267
+
268
+ &:focus {
269
+ outline: none;
270
+ box-shadow: 0 0 0 2px #dbeafe;
271
+ }
272
+ }
273
+ }
274
+ .quantitySelector {
275
+ display: flex;
276
+ flex-direction: column;
277
+ gap: 12px;
278
+ flex: 1;
279
+
280
+ @media (min-width: 576px) {
281
+ flex-direction: row;
282
+ align-items: center;
283
+ flex-wrap: wrap;
284
+ }
285
+
286
+ .label {
287
+ font-size: 14px;
288
+ font-weight: 600;
289
+ color: #1f2937;
290
+
291
+ @media (min-width: 576px) {
292
+ flex: 0 0 auto;
293
+ margin-right: 12px;
294
+ }
295
+ }
296
+
297
+ .controls {
298
+ display: flex;
299
+ align-items: center;
300
+ height: 40px;
301
+
302
+ @media (min-width: 576px) {
303
+ flex: 0 0 auto;
304
+ }
305
+ }
306
+
307
+ .input {
308
+ width: 60px;
309
+ height: 100%;
310
+ border: 1px solid #e5e7eb;
311
+ border-left: none;
312
+ border-right: none;
313
+ text-align: center;
314
+ font-size: 14px;
315
+ font-weight: 500;
316
+ color: #1f2937;
317
+ padding: 0 8px;
318
+
319
+ &:focus {
320
+ outline: none;
321
+ }
322
+ }
323
+
324
+ .decreaseButton,
325
+ .increaseButton {
326
+ display: flex;
327
+ align-items: center;
328
+ justify-content: center;
329
+ width: 36px;
330
+ height: 100%;
331
+ background-color: #f9fafb;
332
+ border: 1px solid #e5e7eb;
333
+ cursor: pointer;
334
+ color: #1f2937;
335
+ transition: background-color 0.2s ease-in-out;
336
+
337
+ &:hover {
338
+ background-color: #f3f4f6;
339
+ }
340
+
341
+ &:focus {
342
+ outline: none;
343
+ box-shadow: 0 0 0 2px #dbeafe;
344
+ z-index: 1;
345
+ }
346
+
347
+ &:disabled {
348
+ opacity: 0.5;
349
+ cursor: not-allowed;
350
+ }
351
+ }
352
+
353
+ .decreaseButton {
354
+ border-radius: 6px 0 0 6px;
355
+ }
356
+
357
+ .increaseButton {
358
+ border-radius: 0 6px 6px 0;
359
+ }
360
+
361
+ .priceContainer {
362
+ display: flex;
363
+ align-items: center;
364
+ gap: 8px;
365
+
366
+ @media (min-width: 576px) {
367
+ flex: 1;
368
+ justify-content: flex-end;
369
+ }
370
+ }
371
+
372
+ .priceLabel {
373
+ font-size: 14px;
374
+ font-weight: 600;
375
+ color: #1f2937;
376
+ }
377
+
378
+ .price {
379
+ font-size: 16px;
380
+ font-weight: 700;
381
+ color: #1f2937;
382
+ }
383
+ }
384
+ .productInfo {
385
+ display: flex;
386
+ flex-direction: column;
387
+ gap: 16px;
388
+
389
+ .title {
390
+ font-size: 24px;
391
+ font-weight: 700;
392
+ line-height: 1.2;
393
+ color: #1f2937;
394
+ margin: 0;
395
+
396
+ @media (min-width: 768px) {
397
+ font-size: 28px;
398
+ }
399
+ }
400
+
401
+ .details {
402
+ display: flex;
403
+ flex-direction: column;
404
+ gap: 8px;
405
+ font-size: 14px;
406
+ color: #9ca3af;
407
+ }
408
+
409
+ .brand,
410
+ .itemNumber {
411
+ display: inline-block;
412
+ }
413
+
414
+ .brand {
415
+ font-weight: 500;
416
+ }
417
+
418
+ .rating {
419
+ display: flex;
420
+ align-items: center;
421
+ gap: 8px;
422
+ margin-top: 4px;
423
+ }
424
+
425
+ .stars {
426
+ display: flex;
427
+ align-items: center;
428
+ }
429
+
430
+ .star {
431
+ color: #f59e0b;
432
+ margin-right: 2px;
433
+
434
+ &.emptyStar {
435
+ color: #e5e7eb;
436
+ }
437
+ }
438
+
439
+ .reviewCount {
440
+ font-size: 14px;
441
+ color: #9ca3af;
442
+ }
443
+
444
+ .price {
445
+ font-size: 24px;
446
+ font-weight: 700;
447
+ color: #1f2937;
448
+ margin-top: 8px;
449
+ }
450
+ }
451
+ .gallery {
452
+ display: flex;
453
+ flex-direction: column;
454
+ gap: 16px;
455
+
456
+ .mainImage {
457
+ position: relative;
458
+ overflow: hidden;
459
+ border-radius: 8px;
460
+ background-color: #f9fafb;
461
+ aspect-ratio: 1 / 1;
462
+
463
+ &::before {
464
+ content: "";
465
+ display: block;
466
+ padding-top: 100%;
467
+ }
468
+ }
469
+
470
+ .image {
471
+ position: absolute;
472
+ top: 0;
473
+ left: 0;
474
+ width: 100%;
475
+ height: 100%;
476
+ object-fit: cover;
477
+ transition: transform 0.3s ease-in-out;
478
+
479
+ &:hover {
480
+ transform: scale(1.05);
481
+ }
482
+ }
483
+
484
+ .thumbnails {
485
+ display: flex;
486
+ gap: 8px;
487
+ }
488
+
489
+ .thumbnailButton {
490
+ width: 80px;
491
+ height: 80px;
492
+ padding: 0;
493
+ border: 2px solid transparent;
494
+ border-radius: 6px;
495
+ overflow: hidden;
496
+ cursor: pointer;
497
+ background: none;
498
+ transition: border-color 0.2s ease-in-out;
499
+
500
+ &:hover {
501
+ border-color: #dbeafe;
502
+ }
503
+
504
+ &.active {
505
+ border-color: #2563eb;
506
+ }
507
+
508
+ &:focus {
509
+ outline: none;
510
+ border-color: #2563eb;
511
+ box-shadow: 0 0 0 2px #dbeafe;
512
+ }
513
+ }
514
+
515
+ .thumbnailImage {
516
+ width: 100%;
517
+ height: 100%;
518
+ object-fit: cover;
519
+ }
520
+ }
521
+ .fitSelector {
522
+ display: flex;
523
+ flex-direction: column;
524
+ gap: 12px;
525
+
526
+ .label {
527
+ font-size: 14px;
528
+ font-weight: 600;
529
+ color: #1f2937;
530
+ }
531
+
532
+ .options {
533
+ display: flex;
534
+ gap: 8px;
535
+
536
+ @media (max-width: 480px) {
537
+ flex-wrap: wrap;
538
+ }
539
+ }
540
+
541
+ .fitOption {
542
+ padding: 8px 16px;
543
+ border: 1px solid #e5e7eb;
544
+ border-radius: 6px;
545
+ background-color: transparent;
546
+ font-size: 14px;
547
+ font-weight: 500;
548
+ color: #374151;
549
+ cursor: pointer;
550
+ transition: all 0.2s ease-in-out;
551
+
552
+ &:hover {
553
+ background-color: #f3f4f6;
554
+ }
555
+
556
+ &.selected {
557
+ border-color: #2563eb;
558
+ background-color: #dbeafe;
559
+ color: #1d4ed8;
560
+ }
561
+
562
+ &:focus {
563
+ outline: none;
564
+ box-shadow: 0 0 0 2px #dbeafe;
565
+ }
566
+ }
567
+ }
568
+ .customizationSection {
569
+ border-top: 1px solid #e5e7eb;
570
+ border-bottom: 1px solid #e5e7eb;
571
+ padding: 16px 0;
572
+
573
+ .header {
574
+ display: flex;
575
+ justify-content: space-between;
576
+ align-items: center;
577
+ width: 100%;
578
+ background: none;
579
+ border: none;
580
+ padding: 0;
581
+ cursor: pointer;
582
+ text-align: left;
583
+
584
+ &:focus {
585
+ outline: none;
586
+ }
587
+ }
588
+
589
+ .title {
590
+ font-size: 14px;
591
+ font-weight: 600;
592
+ color: #1f2937;
593
+ }
594
+
595
+ .expandIcon {
596
+ color: #9ca3af;
597
+ transition: transform 0.3s ease;
598
+ }
599
+
600
+ .content {
601
+ margin-top: 16px;
602
+ animation: fadeIn 0.3s ease-in-out;
603
+ }
604
+
605
+ @keyframes fadeIn {
606
+ from {
607
+ opacity: 0;
608
+ transform: translateY(-8px);
609
+ }
610
+ to {
611
+ opacity: 1;
612
+ transform: translateY(0);
613
+ }
614
+ }
615
+
616
+ .description {
617
+ font-size: 14px;
618
+ line-height: 1.5;
619
+ color: #374151;
620
+ margin-bottom: 16px;
621
+ }
622
+
623
+ .checkboxContainer {
624
+ display: flex;
625
+ align-items: center;
626
+ font-size: 14px;
627
+ color: #374151;
628
+ cursor: pointer;
629
+ user-select: none;
630
+ position: relative;
631
+ padding-left: 28px;
632
+ }
633
+
634
+ .checkbox {
635
+ position: absolute;
636
+ opacity: 0;
637
+ height: 0;
638
+ width: 0;
639
+
640
+ &:checked ~ .checkmark {
641
+ background-color: #2563eb;
642
+ border-color: #2563eb;
643
+
644
+ &::after {
645
+ display: block;
646
+ }
647
+ }
648
+
649
+ &:focus ~ .checkmark {
650
+ box-shadow: 0 0 0 2px #dbeafe;
651
+ }
652
+ }
653
+
654
+ .checkmark {
655
+ position: absolute;
656
+ top: 0;
657
+ left: 0;
658
+ height: 18px;
659
+ width: 18px;
660
+ background-color: white;
661
+ border: 1px solid #e5e7eb;
662
+ border-radius: 3px;
663
+ transition: all 0.2s ease-in-out;
664
+
665
+ &::after {
666
+ content: "";
667
+ position: absolute;
668
+ display: none;
669
+ left: 6px;
670
+ top: 2px;
671
+ width: 4px;
672
+ height: 9px;
673
+ border: solid white;
674
+ border-width: 0 2px 2px 0;
675
+ transform: rotate(45deg);
676
+ }
677
+ }
678
+
679
+ .customizationOptions {
680
+ margin-top: 16px;
681
+ padding-top: 16px;
682
+ border-top: 1px dashed #f3f4f6;
683
+ animation: fadeIn 0.3s ease-in-out;
684
+ }
685
+
686
+ .inputLabel {
687
+ display: flex;
688
+ flex-direction: column;
689
+ gap: 6px;
690
+ font-size: 14px;
691
+ font-weight: 500;
692
+ color: #1f2937;
693
+ }
694
+
695
+ .textInput {
696
+ padding: 10px 12px;
697
+ border: 1px solid #e5e7eb;
698
+ border-radius: 6px;
699
+ font-size: 14px;
700
+ transition:
701
+ border-color 0.2s ease-in-out,
702
+ box-shadow 0.2s ease-in-out;
703
+
704
+ &:hover {
705
+ border-color: #d1d5db;
706
+ }
707
+
708
+ &:focus {
709
+ outline: none;
710
+ border-color: #2563eb;
711
+ box-shadow: 0 0 0 3px #dbeafe;
712
+ }
713
+ }
714
+
715
+ .hint {
716
+ font-size: 12px;
717
+ color: #9ca3af;
718
+ font-weight: 400;
719
+ }
720
+ }
721
+ .colorSelector {
722
+ display: flex;
723
+ flex-direction: column;
724
+ gap: 12px;
725
+
726
+ .label {
727
+ font-size: 14px;
728
+ font-weight: 600;
729
+ color: #1f2937;
730
+ }
731
+
732
+ .swatches {
733
+ display: flex;
734
+ flex-wrap: wrap;
735
+ gap: 8px;
736
+ }
737
+
738
+ .colorSwatch {
739
+ width: 32px;
740
+ height: 32px;
741
+ border-radius: 50%;
742
+ border: 2px solid #e5e7eb;
743
+ cursor: pointer;
744
+ padding: 0;
745
+ transition:
746
+ transform 0.2s ease,
747
+ border-color 0.2s ease;
748
+ position: relative;
749
+
750
+ &:hover {
751
+ transform: scale(1.1);
752
+ }
753
+
754
+ &.selected {
755
+ border-color: #2563eb;
756
+
757
+ &::after {
758
+ content: "";
759
+ position: absolute;
760
+ top: 50%;
761
+ left: 50%;
762
+ transform: translate(-50%, -50%);
763
+ width: 12px;
764
+ height: 12px;
765
+ border-radius: 50%;
766
+ background-color: white;
767
+ box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
768
+ }
769
+ }
770
+
771
+ &:focus {
772
+ outline: none;
773
+ box-shadow: 0 0 0 2px #dbeafe;
774
+ }
775
+ }
776
+ }
777
+ }
778
+
779
+ .embla {
780
+ width: 100%;
781
+ height: 100%;
782
+ position: relative;
783
+ display: flex;
784
+ flex-direction: column;
785
+ // overflow: hidden;
786
+
787
+ .embla__viewport {
788
+ width: 100%;
789
+ height: 100%;
790
+ position: relative;
791
+ display: flex;
792
+ flex-direction: column;
793
+
794
+ overflow: hidden;
795
+
796
+ .embla__container {
797
+ width: 100%;
798
+ height: 100%;
799
+ display: grid;
800
+ grid-template-rows: 100%;
801
+
802
+ grid-template-columns: repeat(
803
+ var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se))),
804
+ calc(
805
+ 100% /
806
+ var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se)))
807
+ )
808
+ );
809
+
810
+ grid-auto-flow: column;
811
+ gap: var(--_ctm-mob-lt-im-gp, var(--_ctm-tab-lt-im-gp, var(--_ctm-lt-im-gp)));
812
+
813
+ &[data-control-type="Bottom"][data-slider-control="Arrows"] {
814
+ height: calc(
815
+ 100% - calc(
816
+ var(
817
+ --_ctm-mob-dn-pn-as-aw-se,
818
+ var(--_ctm-tab-dn-pn-as-aw-se, var(--_ctm-dn-pn-as-aw-se))
819
+ ) +
820
+ 10px
821
+ )
822
+ );
823
+ }
824
+
825
+ &[data-control-type="Bottom"][data-slider-control="Pagination Line"] {
826
+ height: calc(
827
+ 100% - calc(
828
+ var(
829
+ --_ctm-mob-dn-pn-le-le-ht,
830
+ var(--_ctm-tab-dn-pn-le-le-ht, var(--_ctm-dn-pn-le-le-ht))
831
+ ) +
832
+ 20px
833
+ )
834
+ );
835
+ }
836
+
837
+ &[data-control-type="Bottom"][data-slider-control="Dots"] {
838
+ height: calc(
839
+ 100% - calc(
840
+ var(
841
+ --_ctm-mob-dn-pn-ds-dt-se,
842
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
843
+ ) +
844
+ 20px
845
+ )
846
+ );
847
+ }
848
+
849
+ .embla__slide {
850
+ width: 100%;
851
+ height: 100%;
852
+ }
853
+ }
854
+ }
855
+ &:not([data-display-style="Column"]) {
856
+ .embla__container {
857
+ grid-auto-columns: calc(
858
+ 100% / var(--_ctm-mob-lt-is-pr-se, var(--_ctm-tab-lt-is-pr-se, var(--_ctm-lt-is-pr-se)))
859
+ );
860
+ }
861
+ }
862
+
863
+ &[data-display-style="Grid"][data-scroll-direction="Vertical"] {
864
+ // overflow: unset;
865
+
866
+ .embla__viewport {
867
+ overflow: unset;
868
+ height: 80%;
869
+ flex-grow: 1;
870
+ &:not([data-is-builder-type="true"]) {
871
+ height: var(--_ctm-mob-height, var(--_ctm-tab-height, var(--_ctm-height)));
872
+ }
873
+
874
+ .embla__container {
875
+ overflow: unset;
876
+ height: var(--_ctm-mob-height, var(--_ctm-tab-height, var(--_ctm-height)));
877
+ // min-height: var(--_ctm-mob-height, var(--_ctm-tab-height, var(--_ctm-height)));
878
+
879
+ grid-template-columns: repeat(var(--_ctm-lt-is-pr-rw), 1fr);
880
+ grid-template-rows: unset;
881
+
882
+ grid-auto-flow: row;
883
+
884
+ &[data-overflow-hidden="true"] {
885
+ overflow: hidden;
886
+ }
887
+ }
888
+ }
889
+ }
890
+
891
+ &[data-display-style="Grid"][data-scroll-direction="Horizontal"] {
892
+ .embla__viewport {
893
+ .embla__container {
894
+ grid-template-rows: repeat(
895
+ var(--_ctm-mob-lt-is-pr-cn, var(--_ctm-tab-lt-is-pr-cn, var(--_ctm-lt-is-pr-cn))),
896
+ calc(
897
+ 100% /
898
+ var(--_ctm-mob-lt-is-pr-cn, var(--_ctm-tab-lt-is-pr-cn, var(--_ctm-lt-is-pr-cn)))
899
+ )
900
+ );
901
+ }
902
+ }
903
+ }
904
+
905
+ &[data-display-style="Rows"] {
906
+ // overflow: unset;
907
+
908
+ .embla__viewport {
909
+ overflow: unset;
910
+ height: 80%;
911
+ flex-grow: 1;
912
+
913
+ &:not([data-is-builder-type="true"]) {
914
+ height: var(--_ctm-height);
915
+ }
916
+
917
+ .embla__container {
918
+ overflow: hidden;
919
+ height: var(--_ctm-height);
920
+ // min-height: var(--_ctm-height);
921
+
922
+ grid-template-columns: repeat(
923
+ var(--_ctm-mob-lt-is-pr-rw, var(--_ctm-tab-lt-is-pr-rw, var(--_ctm-lt-is-pr-rw))),
924
+ 1fr
925
+ );
926
+ grid-template-rows: unset;
927
+ grid-auto-flow: row;
928
+ }
929
+ }
930
+ }
931
+
932
+ &[data-display-style="Column"] {
933
+ // overflow: unset;
934
+
935
+ .embla__viewport {
936
+ .embla__container {
937
+ display: flex;
938
+ .embla__slide {
939
+ width: unset;
940
+ height: 100%;
941
+ aspect-ratio: 1 / 2;
942
+ }
943
+ }
944
+ }
945
+ }
946
+ &[data-display-style="Masonry"] {
947
+ // overflow: unset;
948
+
949
+ .embla__viewport {
950
+ overflow: hidden;
951
+ height: 80%;
952
+ flex-grow: 1;
953
+
954
+ &:not([data-is-builder-type="true"]) {
955
+ height: var(--_ctm-height);
956
+ }
957
+
958
+ .embla__container {
959
+ overflow: unset;
960
+ display: block;
961
+
962
+ column-count: var(
963
+ --_ctm-mob-lt-is-pr-rw,
964
+ var(--_ctm-tab-lt-is-pr-rw, var(--_ctm-lt-is-pr-rw))
965
+ );
966
+ gap: unset;
967
+
968
+ column-gap: var(--_ctm-mob-lt-im-gp, var(--_ctm-tab-lt-im-gp, var(--_ctm-lt-im-gp)));
969
+
970
+ height: auto;
971
+
972
+ .embla__slide {
973
+ margin-bottom: var(
974
+ --_ctm-mob-lt-im-gp,
975
+ var(--_ctm-tab-lt-im-gp, var(--_ctm-lt-im-gp))
976
+ );
977
+ height: unset;
978
+
979
+ .gallery__slide {
980
+ height: unset;
981
+ }
982
+ }
983
+ }
984
+ }
985
+ }
986
+
987
+ .arrow-navigation {
988
+ display: flex;
989
+ position: absolute;
990
+ top: 50%;
991
+ left: 50%;
992
+ width: 100%;
993
+ justify-content: space-between;
994
+ transform: translate(-50%, -50%);
995
+ // padding-left: 20px;
996
+ &[data-control-type="Side"] {
997
+ .left-button,
998
+ .right-button {
999
+ background-color: transparent;
1000
+ }
1001
+ }
1002
+ &[data-background-shape="Round"] {
1003
+ .left-button,
1004
+ .right-button {
1005
+ background-color: #f2f5f5;
1006
+ box-sizing: 0 4px 8px rgba(0, 0, 0, 0.1);
1007
+ }
1008
+ }
1009
+ &[data-control-type="Bottom-Overflow"] {
1010
+ transform: translateX(-50%);
1011
+ width: 100%;
1012
+ justify-content: center;
1013
+ gap: 12px;
1014
+ top: unset;
1015
+ bottom: 6px;
1016
+ }
1017
+ &[data-control-type="Bottom"] {
1018
+ transform: unset;
1019
+ position: static;
1020
+ width: 100%;
1021
+ justify-content: center;
1022
+ gap: 12px;
1023
+ margin-top: 10px;
1024
+ }
1025
+ .left-button {
1026
+ padding: 10px;
1027
+ border-radius: 50%;
1028
+ border: none;
1029
+ width: var(
1030
+ --_ctm-mob-dn-pn-as-aw-se,
1031
+ var(--_ctm-tab-dn-pn-as-aw-se, var(--_ctm-dn-pn-as-aw-se))
1032
+ );
1033
+ height: var(
1034
+ --_ctm-mob-dn-pn-as-aw-se,
1035
+ var(--_ctm-tab-dn-pn-as-aw-se, var(--_ctm-dn-pn-as-aw-se))
1036
+ );
1037
+
1038
+ display: flex;
1039
+ align-items: center;
1040
+ justify-content: center;
1041
+ cursor: pointer;
1042
+ outline: none;
1043
+ margin-left: 12px;
1044
+ &:disabled {
1045
+ & svg {
1046
+ path {
1047
+ stroke: rgb(192, 192, 192);
1048
+ }
1049
+ }
1050
+ }
1051
+ }
1052
+ .right-button {
1053
+ border-radius: 50%;
1054
+ border: none;
1055
+ width: var(
1056
+ --_ctm-mob-dn-pn-as-aw-se,
1057
+ var(--_ctm-tab-dn-pn-as-aw-se, var(--_ctm-dn-pn-as-aw-se))
1058
+ );
1059
+ height: var(
1060
+ --_ctm-mob-dn-pn-as-aw-se,
1061
+ var(--_ctm-tab-dn-pn-as-aw-se, var(--_ctm-dn-pn-as-aw-se))
1062
+ );
1063
+
1064
+ display: flex;
1065
+ align-items: center;
1066
+ justify-content: center;
1067
+ cursor: pointer;
1068
+ outline: none;
1069
+ margin-right: 12px;
1070
+ padding: 10px;
1071
+
1072
+ &:disabled {
1073
+ & svg {
1074
+ path {
1075
+ stroke: rgb(192, 192, 192);
1076
+ }
1077
+ }
1078
+ }
1079
+ }
1080
+ .icon {
1081
+ display: flex;
1082
+
1083
+ svg {
1084
+ width: calc(
1085
+ var(
1086
+ --_ctm-mob-dn-pn-as-aw-se,
1087
+ var(--_ctm-tab-dn-pn-as-aw-se, var(--_ctm-dn-pn-as-aw-se))
1088
+ ) *
1089
+ 0.5
1090
+ );
1091
+ height: calc(
1092
+ var(
1093
+ --_ctm-mob-dn-pn-as-aw-se,
1094
+ var(--_ctm-tab-dn-pn-as-aw-se, var(--_ctm-dn-pn-as-aw-se))
1095
+ ) *
1096
+ 0.5
1097
+ );
1098
+
1099
+ path {
1100
+ stroke: var(
1101
+ --_ctm-mob-dn-pn-as-aw-cr,
1102
+ var(--_ctm-tab-dn-pn-as-aw-cr, var(--_ctm-dn-pn-as-aw-cr))
1103
+ );
1104
+ }
1105
+ }
1106
+ }
1107
+ }
1108
+
1109
+ &[data-control-type="Side"] {
1110
+ .embla__viewport {
1111
+ width: calc(100% - 120px);
1112
+ margin-inline: auto;
1113
+ }
1114
+ .left-button {
1115
+ position: absolute;
1116
+ left: 0;
1117
+ top: 50%;
1118
+ transform: translateY(-50%);
1119
+ }
1120
+ .right-button {
1121
+ position: absolute;
1122
+
1123
+ right: 0;
1124
+ top: 50%;
1125
+ transform: translateY(-50%);
1126
+ }
1127
+ }
1128
+
1129
+ &[data-thumbnail-placement="top"] {
1130
+ flex-direction: column-reverse;
1131
+ }
1132
+ &[data-thumbnail-placement="bottom"] {
1133
+ flex-direction: column;
1134
+ }
1135
+ &[data-thumbnail-placement="left"] {
1136
+ flex-direction: row-reverse;
1137
+
1138
+ .embla__thumbs {
1139
+ width: var(--_ctm-lt-tl-se);
1140
+ height: 100%;
1141
+
1142
+ & .embla__thumbs__container {
1143
+ flex-direction: column;
1144
+ height: 100%;
1145
+ }
1146
+ }
1147
+ }
1148
+ &[data-thumbnail-placement="right"] {
1149
+ flex-direction: row;
1150
+ .embla__thumbs {
1151
+ width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1152
+
1153
+ height: 100%;
1154
+
1155
+ & .embla__thumbs__container {
1156
+ flex-direction: column;
1157
+ height: 100%;
1158
+ }
1159
+ }
1160
+ }
1161
+ .embla__dots {
1162
+ display: flex;
1163
+ flex-wrap: wrap;
1164
+ justify-content: center;
1165
+ align-items: center;
1166
+ margin-right: calc((2.6rem - 1.4rem) / 2 * -1);
1167
+ gap: 6px;
1168
+ margin-top: 16px;
1169
+
1170
+ &[data-control-type="Bottom-Overflow"] {
1171
+ position: absolute;
1172
+ bottom: 10px;
1173
+ left: 50%;
1174
+ transform: translateX(-50%);
1175
+ width: 75%;
1176
+ }
1177
+ .embla__dot {
1178
+ -webkit-tap-highlight-color: rgba(var(--text-high-contrast-rgb-value), 0.5);
1179
+ -webkit-appearance: none;
1180
+ appearance: none;
1181
+ background-color: var(
1182
+ --_ctm-mob-dn-pn-ds-or-dt-cr,
1183
+ var(--_ctm-tab-dn-pn-ds-or-dt-cr, var(--_ctm-dn-pn-ds-or-dt-cr))
1184
+ );
1185
+
1186
+ touch-action: manipulation;
1187
+ display: inline-flex;
1188
+ text-decoration: none;
1189
+ cursor: pointer;
1190
+ border: 0;
1191
+ padding: 0;
1192
+ margin: 0;
1193
+ // width: 0.6rem;
1194
+ // height: 0.6rem;
1195
+ width: var(
1196
+ --_ctm-mob-dn-pn-ds-dt-se,
1197
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
1198
+ );
1199
+ height: var(
1200
+ --_ctm-mob-dn-pn-ds-dt-se,
1201
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
1202
+ );
1203
+
1204
+ display: flex;
1205
+ align-items: center;
1206
+ justify-content: center;
1207
+ border-radius: 50%;
1208
+ }
1209
+ .embla__dot:after {
1210
+ // box-shadow: inset 0 0 0 0.2rem var(--detail-medium-contrast);
1211
+ width: var(
1212
+ --_ctm-mob-dn-pn-ds-dt-se,
1213
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
1214
+ );
1215
+ height: var(
1216
+ --_ctm-mob-dn-pn-ds-dt-se,
1217
+ var(--_ctm-tab-dn-pn-ds-dt-se, var(--_ctm-dn-pn-ds-dt-se))
1218
+ );
1219
+
1220
+ border-radius: 50%;
1221
+ display: flex;
1222
+ align-items: center;
1223
+ content: "";
1224
+ }
1225
+ .embla__dot--selected:after {
1226
+ box-shadow: inset 0 0 0 1px var(--text-body);
1227
+ background-color: var(
1228
+ --_ctm-mob-dn-pn-ds-ct-dt-cr,
1229
+ var(--_ctm-tab-dn-pn-ds-ct-dt-cr, var(--_ctm-dn-pn-ds-ct-dt-cr))
1230
+ );
1231
+ }
1232
+ &[data-slider-control="Pagination Line"] {
1233
+ .embla__dot {
1234
+ width: var(
1235
+ --_ctm-mob-dn-pn-le-le-wh,
1236
+ var(--_ctm-tab-dn-pn-le-le-wh, var(--_ctm-dn-pn-le-le-wh))
1237
+ );
1238
+ height: var(
1239
+ --_ctm-mob-dn-pn-le-le-ht,
1240
+ var(--_ctm-tab-dn-pn-le-le-ht, var(--_ctm-dn-pn-le-le-ht))
1241
+ );
1242
+ background-color: var(
1243
+ --_ctm-mob-dn-pn-le-or-le-cr,
1244
+ var(--_ctm-tab-dn-pn-le-or-le-cr, var(--_ctm-dn-pn-le-or-le-cr))
1245
+ );
1246
+ border-radius: 6px;
1247
+ }
1248
+
1249
+ .embla__dot--selected:after {
1250
+ box-shadow: inset 0 0 0 1px var(--text-body);
1251
+ border-radius: 6px;
1252
+ width: var(
1253
+ --_ctm-mob-dn-pn-le-le-wh,
1254
+ var(--_ctm-tab-dn-pn-le-le-wh, var(--_ctm-dn-pn-le-le-wh))
1255
+ );
1256
+ height: var(
1257
+ --_ctm-mob-dn-pn-le-le-ht,
1258
+ var(--_ctm-tab-dn-pn-le-le-ht, var(--_ctm-dn-pn-le-le-ht))
1259
+ );
1260
+ background-color: var(
1261
+ --_ctm-mob-dn-pn-le-ct-le-cr,
1262
+ var(--_ctm-tab-dn-pn-le-ct-le-cr, var(--_ctm-dn-pn-le-ct-le-cr))
1263
+ );
1264
+ }
1265
+ }
1266
+ }
1267
+
1268
+ .embla__thumbs {
1269
+ width: 100%;
1270
+ height: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1271
+
1272
+ position: relative;
1273
+ display: grid;
1274
+ grid-template-columns: 1fr;
1275
+ overflow: hidden;
1276
+ // margin: 10px;
1277
+ padding: 10px;
1278
+
1279
+ .embla__thumbs__viewport {
1280
+ width: 100%;
1281
+ height: 100%;
1282
+ position: relative;
1283
+ display: flex;
1284
+ flex-direction: column;
1285
+
1286
+ overflow: hidden;
1287
+ }
1288
+ .embla__thumbs__container {
1289
+ display: flex;
1290
+ flex-direction: row;
1291
+ margin-left: calc(var(--thumbs-slide-spacing) * -1);
1292
+ gap: var(--_ctm-mob-lt-tl-sg, var(--_ctm-tab-lt-tl-sg, var(--_ctm-lt-tl-sg)));
1293
+
1294
+ width: 100%;
1295
+ // justify-content: center;
1296
+ // height: 200px;
1297
+
1298
+ .embla__thumbs__slide {
1299
+ min-width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1300
+ max-width: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1301
+ height: var(--_ctm-mob-lt-tl-se, var(--_ctm-tab-lt-tl-se, var(--_ctm-lt-tl-se)));
1302
+
1303
+ & img {
1304
+ width: 100%;
1305
+ height: 100%;
1306
+ }
1307
+ }
1308
+ }
1309
+ }
1310
+ }
1311
+ }
1312
+ }