cats-ui-lib 2.2.6 → 2.2.8

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 (35) hide show
  1. package/README.md +780 -780
  2. package/assets/images/building-07.svg +3 -3
  3. package/assets/images/check-disabled.svg +3 -3
  4. package/assets/images/check-white.svg +3 -3
  5. package/assets/images/chevron-down-white.svg +3 -3
  6. package/assets/images/chevron-down.svg +3 -3
  7. package/assets/images/chevron-right-blue.svg +3 -3
  8. package/assets/images/chevron-right-red.svg +3 -3
  9. package/assets/images/chevron-up.svg +3 -3
  10. package/assets/images/clock-refresh.svg +3 -3
  11. package/assets/images/file-check-02.svg +3 -3
  12. package/assets/images/filled-dropdown.svg +3 -3
  13. package/assets/images/indeterminate.svg +3 -3
  14. package/assets/images/key-01.svg +3 -3
  15. package/assets/images/log-out-04.svg +3 -3
  16. package/assets/images/menu-collapsed.svg +4 -4
  17. package/assets/images/message-smile-square.svg +3 -3
  18. package/assets/images/settings-04.svg +3 -3
  19. package/assets/images/shuffle-01.svg +3 -3
  20. package/assets/images/spanish-flag.svg +72 -72
  21. package/assets/images/star-yellow.svg +3 -3
  22. package/assets/images/user-image.svg +9 -9
  23. package/assets/images/users-01.svg +3 -3
  24. package/assets/images/x-cancel-btn.svg +3 -3
  25. package/fesm2022/cats-ui-lib.mjs +153 -139
  26. package/fesm2022/cats-ui-lib.mjs.map +1 -1
  27. package/index.d.ts +2 -3
  28. package/package.json +1 -1
  29. package/styles/_fonts.scss +82 -82
  30. package/styles/_functions.scss +10 -10
  31. package/styles/_index.scss +6 -6
  32. package/styles/_mixins.scss +65 -65
  33. package/styles/_reset.scss +69 -69
  34. package/styles/_utilities.scss +971 -894
  35. package/styles/_variables.scss +126 -126
@@ -1,894 +1,971 @@
1
- @use "./functions" as *;
2
- @use "./mixins" as *;
3
-
4
- .pointer {
5
- cursor: pointer;
6
- }
7
-
8
- .d-none {
9
- display: none;
10
- }
11
-
12
- // ---------------------------- THREE DOTS TRUNCATE TEXT ------------------------
13
- .textTruncate {
14
- text-overflow: ellipsis;
15
- overflow: hidden;
16
- white-space: nowrap;
17
- }
18
-
19
- // ------------------Button Styles--------------------
20
- button.cats-btn {
21
- border: rem(1px) solid transparent;
22
- padding: 0 rem(28px);
23
- height: rem(56px);
24
- min-width: rem(142px);
25
- @include flex(center, center, rem(12px));
26
- border-radius: rem(8px);
27
- @include fontStyle(var(--fs-18), "", 600);
28
- cursor: pointer;
29
-
30
- &:focus-visible {
31
- outline: none;
32
- border: 0;
33
- }
34
-
35
- i-feather.icon {
36
- display: flex;
37
- }
38
-
39
- &.primary_btn {
40
- background-color: var(--text-link-default);
41
- color: var(--surface-background-canvas);
42
- }
43
-
44
- &.secondary_btn {
45
- background-color: var(--surface-background-subtle);
46
- color: var(--text-body-primary);
47
- }
48
-
49
- &.outline_btn {
50
- background-color: var(--surface-background-canvas);
51
- color: var(--text-body-primary);
52
- border: rem(1px) solid var(--border-core-strong);
53
- }
54
-
55
- &.disable {
56
- pointer-events: none;
57
- opacity: 0.6;
58
- }
59
-
60
- &.fill_lightBlue_btn {
61
- background-color: var(--surface-background-blue);
62
- color: var(--text-link-default);
63
- }
64
-
65
- &.disable_fill_lightBlue_btn {
66
- background-color: var(--surface-background-blue);
67
- color: var(--text-link-muted);
68
- pointer-events: none;
69
- }
70
-
71
- &.bg_logic_btn {
72
- background-color: var(--surface-background-canvas);
73
- color: var(--text-body-primary);
74
- border: rem(1px) solid var(--border-core-default);
75
- }
76
-
77
- &.no_outline_btn {
78
- background-color: var(--surface-background-blue);
79
- color: var(--text-link-default);
80
- outline: none;
81
- }
82
-
83
- .close_outline_btn {
84
- background-color: var(--surface-background-blue);
85
- border: rem(1px) solid var(--surface-background-blue);
86
- color: var(--text-link-default);
87
- }
88
- }
89
-
90
- // ------------------Custom Tooltip Styles--------------------
91
-
92
- .default-tooltip-class {
93
- position: relative;
94
- display: inline-block;
95
- padding: rem(8px) rem(12px);
96
- background: var(--surface-background-canvas);
97
- border-radius: rem(8px);
98
- @include fontStyle(var(--fs-14), rem(24px), 400);
99
- color: var(--text-body-primary);
100
- box-shadow: 0 rem(4px) rem(15px) rgba(0, 0, 0, 0.15);
101
-
102
- &::before {
103
- content: "";
104
- position: absolute;
105
- top: rem(-10px);
106
- left: 50%;
107
- @include box(rem(16px), rem(16px));
108
- background: var(--surface-background-canvas);
109
- transform: rotate(-135deg);
110
- box-shadow: rem(4px) rem(4px) rem(6px) rgba(0, 0, 0, 0.1);
111
- border-radius: rem(2px);
112
- border: rem(1px) solid var(--border-core-muted);
113
- border-top: 0;
114
- border-left: 0;
115
- }
116
- }
117
-
118
- /* Display Styles */
119
- .display-large {
120
- @include fontStyle(rem(56px), rem(80px), 500);
121
- }
122
-
123
- .display-large-emphasized {
124
- @include fontStyle(rem(56px), rem(80px), 600);
125
- }
126
-
127
- .display-medium {
128
- @include fontStyle(rem(48px), rem(56px), 500);
129
- }
130
-
131
- .display-medium-emphasized {
132
- @include fontStyle(rem(48px), rem(56px), 600);
133
- }
134
-
135
- /* Heading Styles */
136
- .heading-extra-large {
137
- @include fontStyle(rem(36px), rem(40px), 500);
138
- }
139
-
140
- .heading-extra-large-emphasized {
141
- @include fontStyle(rem(36px), rem(40px), 600);
142
- }
143
-
144
- .heading-large {
145
- @include fontStyle(rem(24px), rem(32px), 500);
146
- }
147
-
148
- .heading-large-emphasized {
149
- @include fontStyle(rem(24px), rem(32px), 600);
150
- }
151
-
152
- .heading-medium {
153
- @include fontStyle(rem(20px), rem(28px), 500);
154
- }
155
-
156
- .heading-medium-emphasized {
157
- @include fontStyle(rem(20px), rem(28px), 600);
158
- }
159
-
160
- .heading-small {
161
- @include fontStyle(rem(18px), rem(28px), 500);
162
- }
163
-
164
- .heading-small-emphasized {
165
- @include fontStyle(rem(18px), rem(28px), 600);
166
- }
167
-
168
- /* Body Styles */
169
- .body-large {
170
- @include fontStyle(rem(16px), rem(24px));
171
- }
172
-
173
- .body-large-emphasized {
174
- @include fontStyle(rem(16px), rem(24px), 500);
175
- }
176
-
177
- .body-medium {
178
- @include fontStyle(rem(14px), rem(20px));
179
- }
180
-
181
- .body-medium-emphasized {
182
- @include fontStyle(rem(14px), rem(20px), 500);
183
- }
184
-
185
- .body-small {
186
- @include fontStyle(rem(12px), rem(18px));
187
- }
188
-
189
- /* Meta Styles */
190
- .meta-regular {
191
- @include fontStyle(rem(14px), rem(20px), 500);
192
- }
193
-
194
- .meta-regular-emphasized {
195
- @include fontStyle(rem(14px), rem(20px), 600);
196
- }
197
-
198
- /* Interaction Styles */
199
- .interaction-medium {
200
- @include fontStyle(rem(14px), rem(20px), 500);
201
- }
202
-
203
- .interaction-small {
204
- @include fontStyle(rem(12px), rem(20px), 500);
205
- }
206
-
207
- /* System Utility Styles */
208
- .system-utility-regular {
209
- @include fontStyle(rem(12px), rem(18px), 500);
210
- }
211
-
212
- .system-utility-regular-emphasized {
213
- @include fontStyle(rem(12px), rem(18px), 600);
214
- }
215
-
216
- .system-utility-small {
217
- @include fontStyle(rem(10px), rem(12px), 500);
218
- }
219
-
220
- /* Font Weight Utility Classes */
221
- .font-weight-regular {
222
- font-weight: 400;
223
- }
224
-
225
- .font-weight-medium {
226
- font-weight: 500;
227
- }
228
-
229
- .font-weight-semibold {
230
- font-weight: 600;
231
- }
232
-
233
- /* Padding Classes (sp prefix) */
234
- .sp-0 {
235
- padding: rem(0px);
236
- }
237
-
238
- .sp-2 {
239
- padding: rem(2px);
240
- }
241
-
242
- .sp-4 {
243
- padding: rem(4px);
244
- }
245
-
246
- .sp-8 {
247
- padding: rem(8px);
248
- }
249
-
250
- .sp-12 {
251
- padding: rem(12px);
252
- }
253
-
254
- .sp-16 {
255
- padding: rem(16px);
256
- }
257
-
258
- .sp-24 {
259
- padding: rem(24px);
260
- }
261
-
262
- .sp-36 {
263
- padding: rem(36px);
264
- }
265
-
266
- .sp-40 {
267
- padding: rem(40px);
268
- }
269
-
270
- /* Margin Classes (sm prefix) */
271
- .sm-0 {
272
- margin: rem(0px);
273
- }
274
-
275
- .sm-2 {
276
- margin: rem(2px);
277
- }
278
-
279
- .sm-4 {
280
- margin: rem(4px);
281
- }
282
-
283
- .sm-8 {
284
- margin: rem(8px);
285
- }
286
-
287
- .sm-12 {
288
- margin: rem(12px);
289
- }
290
-
291
- .sm-16 {
292
- margin: rem(16px);
293
- }
294
-
295
- .sm-24 {
296
- margin: rem(24px);
297
- }
298
-
299
- .sm-36 {
300
- margin: rem(36px);
301
- }
302
-
303
- .sm-40 {
304
- margin: rem(40px);
305
- }
306
-
307
- /* Directional Padding */
308
- .sp-t-0 {
309
- padding-top: rem(0px);
310
- }
311
-
312
- .sp-t-2 {
313
- padding-top: rem(2px);
314
- }
315
-
316
- .sp-t-4 {
317
- padding-top: rem(4px);
318
- }
319
-
320
- .sp-t-8 {
321
- padding-top: rem(8px);
322
- }
323
-
324
- .sp-t-12 {
325
- padding-top: rem(12px);
326
- }
327
-
328
- .sp-t-16 {
329
- padding-top: rem(16px);
330
- }
331
-
332
- .sp-t-24 {
333
- padding-top: rem(24px);
334
- }
335
-
336
- .sp-t-36 {
337
- padding-top: rem(36px);
338
- }
339
-
340
- .sp-t-40 {
341
- padding-top: rem(40px);
342
- }
343
-
344
- .sp-b-0 {
345
- padding-bottom: rem(0px);
346
- }
347
-
348
- .sp-b-2 {
349
- padding-bottom: rem(2px);
350
- }
351
-
352
- .sp-b-4 {
353
- padding-bottom: rem(4px);
354
- }
355
-
356
- .sp-b-8 {
357
- padding-bottom: rem(8px);
358
- }
359
-
360
- .sp-b-12 {
361
- padding-bottom: rem(12px);
362
- }
363
-
364
- .sp-b-16 {
365
- padding-bottom: rem(16px);
366
- }
367
-
368
- .sp-b-24 {
369
- padding-bottom: rem(24px);
370
- }
371
-
372
- .sp-b-36 {
373
- padding-bottom: rem(36px);
374
- }
375
-
376
- .sp-b-40 {
377
- padding-bottom: rem(40px);
378
- }
379
-
380
- .sp-l-0 {
381
- padding-left: rem(0px);
382
- }
383
-
384
- .sp-l-2 {
385
- padding-left: rem(2px);
386
- }
387
-
388
- .sp-l-4 {
389
- padding-left: rem(4px);
390
- }
391
-
392
- .sp-l-8 {
393
- padding-left: rem(8px);
394
- }
395
-
396
- .sp-l-12 {
397
- padding-left: rem(12px);
398
- }
399
-
400
- .sp-l-16 {
401
- padding-left: rem(16px);
402
- }
403
-
404
- .sp-l-24 {
405
- padding-left: rem(24px);
406
- }
407
-
408
- .sp-l-36 {
409
- padding-left: rem(36px);
410
- }
411
-
412
- .sp-l-40 {
413
- padding-left: rem(40px);
414
- }
415
-
416
- .sp-r-0 {
417
- padding-right: rem(0px);
418
- }
419
-
420
- .sp-r-2 {
421
- padding-right: rem(2px);
422
- }
423
-
424
- .sp-r-4 {
425
- padding-right: rem(4px);
426
- }
427
-
428
- .sp-r-8 {
429
- padding-right: rem(8px);
430
- }
431
-
432
- .sp-r-12 {
433
- padding-right: rem(12px);
434
- }
435
-
436
- .sp-r-16 {
437
- padding-right: rem(16px);
438
- }
439
-
440
- .sp-r-24 {
441
- padding-right: rem(24px);
442
- }
443
-
444
- .sp-r-36 {
445
- padding-right: rem(36px);
446
- }
447
-
448
- .sp-r-40 {
449
- padding-right: rem(40px);
450
- }
451
-
452
- /* Directional Margin */
453
- .sm-t-0 {
454
- margin-top: rem(0px);
455
- }
456
-
457
- .sm-t-2 {
458
- margin-top: rem(2px);
459
- }
460
-
461
- .sm-t-4 {
462
- margin-top: rem(4px);
463
- }
464
-
465
- .sm-t-8 {
466
- margin-top: rem(8px);
467
- }
468
-
469
- .sm-t-12 {
470
- margin-top: rem(12px);
471
- }
472
-
473
- .sm-t-16 {
474
- margin-top: rem(16px);
475
- }
476
-
477
- .sm-t-24 {
478
- margin-top: rem(24px);
479
- }
480
-
481
- .sm-t-36 {
482
- margin-top: rem(36px);
483
- }
484
-
485
- .sm-t-40 {
486
- margin-top: rem(40px);
487
- }
488
-
489
- .sm-b-0 {
490
- margin-bottom: rem(0px);
491
- }
492
-
493
- .sm-b-2 {
494
- margin-bottom: rem(2px);
495
- }
496
-
497
- .sm-b-4 {
498
- margin-bottom: rem(4px);
499
- }
500
-
501
- .sm-b-8 {
502
- margin-bottom: rem(8px);
503
- }
504
-
505
- .sm-b-12 {
506
- margin-bottom: rem(12px);
507
- }
508
-
509
- .sm-b-16 {
510
- margin-bottom: rem(16px);
511
- }
512
-
513
- .sm-b-24 {
514
- margin-bottom: rem(24px);
515
- }
516
-
517
- .sm-b-36 {
518
- margin-bottom: rem(36px);
519
- }
520
-
521
- .sm-b-40 {
522
- margin-bottom: rem(40px);
523
- }
524
-
525
- .sm-l-0 {
526
- margin-left: rem(0px);
527
- }
528
-
529
- .sm-l-2 {
530
- margin-left: rem(2px);
531
- }
532
-
533
- .sm-l-4 {
534
- margin-left: rem(4px);
535
- }
536
-
537
- .sm-l-8 {
538
- margin-left: rem(8px);
539
- }
540
-
541
- .sm-l-12 {
542
- margin-left: rem(12px);
543
- }
544
-
545
- .sm-l-16 {
546
- margin-left: rem(16px);
547
- }
548
-
549
- .sm-l-24 {
550
- margin-left: rem(24px);
551
- }
552
-
553
- .sm-l-36 {
554
- margin-left: rem(36px);
555
- }
556
-
557
- .sm-l-40 {
558
- margin-left: rem(40px);
559
- }
560
-
561
- .sm-r-0 {
562
- margin-right: rem(0px);
563
- }
564
-
565
- .sm-r-2 {
566
- margin-right: rem(2px);
567
- }
568
-
569
- .sm-r-4 {
570
- margin-right: rem(4px);
571
- }
572
-
573
- .sm-r-8 {
574
- margin-right: rem(8px);
575
- }
576
-
577
- .sm-r-12 {
578
- margin-right: rem(12px);
579
- }
580
-
581
- .sm-r-16 {
582
- margin-right: rem(16px);
583
- }
584
-
585
- .sm-r-24 {
586
- margin-right: rem(24px);
587
- }
588
-
589
- .sm-r-36 {
590
- margin-right: rem(36px);
591
- }
592
-
593
- .sm-r-40 {
594
- margin-right: rem(40px);
595
- }
596
-
597
- /* Horizontal & Vertical Spacing */
598
- .sp-x-0 {
599
- padding-left: rem(0px);
600
- padding-right: rem(0px);
601
- }
602
-
603
- .sp-x-2 {
604
- padding-left: rem(2px);
605
- padding-right: rem(2px);
606
- }
607
-
608
- .sp-x-4 {
609
- padding-left: rem(4px);
610
- padding-right: rem(4px);
611
- }
612
-
613
- .sp-x-8 {
614
- padding-left: rem(8px);
615
- padding-right: rem(8px);
616
- }
617
-
618
- .sp-x-12 {
619
- padding-left: rem(12px);
620
- padding-right: rem(12px);
621
- }
622
-
623
- .sp-x-16 {
624
- padding-left: rem(16px);
625
- padding-right: rem(16px);
626
- }
627
-
628
- .sp-x-24 {
629
- padding-left: rem(24px);
630
- padding-right: rem(24px);
631
- }
632
-
633
- .sp-x-36 {
634
- padding-left: rem(36px);
635
- padding-right: rem(36px);
636
- }
637
-
638
- .sp-x-40 {
639
- padding-left: rem(40px);
640
- padding-right: rem(40px);
641
- }
642
-
643
- .sp-y-0 {
644
- padding-top: rem(0px);
645
- padding-bottom: rem(0px);
646
- }
647
-
648
- .sp-y-2 {
649
- padding-top: rem(2px);
650
- padding-bottom: rem(2px);
651
- }
652
-
653
- .sp-y-4 {
654
- padding-top: rem(4px);
655
- padding-bottom: rem(4px);
656
- }
657
-
658
- .sp-y-8 {
659
- padding-top: rem(8px);
660
- padding-bottom: rem(8px);
661
- }
662
-
663
- .sp-y-12 {
664
- padding-top: rem(12px);
665
- padding-bottom: rem(12px);
666
- }
667
-
668
- .sp-y-16 {
669
- padding-top: rem(16px);
670
- padding-bottom: rem(16px);
671
- }
672
-
673
- .sp-y-24 {
674
- padding-top: rem(24px);
675
- padding-bottom: rem(24px);
676
- }
677
-
678
- .sp-y-36 {
679
- padding-top: rem(36px);
680
- padding-bottom: rem(36px);
681
- }
682
-
683
- .sp-y-40 {
684
- padding-top: rem(40px);
685
- padding-bottom: rem(40px);
686
- }
687
-
688
- /* Horizontal & Vertical Margin */
689
- .sm-x-0 {
690
- margin-left: rem(0px);
691
- margin-right: rem(0px);
692
- }
693
-
694
- .sm-x-2 {
695
- margin-left: rem(2px);
696
- margin-right: rem(2px);
697
- }
698
-
699
- .sm-x-4 {
700
- margin-left: rem(4px);
701
- margin-right: rem(4px);
702
- }
703
-
704
- .sm-x-8 {
705
- margin-left: rem(8px);
706
- margin-right: rem(8px);
707
- }
708
-
709
- .sm-x-12 {
710
- margin-left: rem(12px);
711
- margin-right: rem(12px);
712
- }
713
-
714
- .sm-x-16 {
715
- margin-left: rem(16px);
716
- margin-right: rem(16px);
717
- }
718
-
719
- .sm-x-24 {
720
- margin-left: rem(24px);
721
- margin-right: rem(24px);
722
- }
723
-
724
- .sm-x-36 {
725
- margin-left: rem(36px);
726
- margin-right: rem(36px);
727
- }
728
-
729
- .sm-x-40 {
730
- margin-left: rem(40px);
731
- margin-right: rem(40px);
732
- }
733
-
734
- .sm-y-0 {
735
- margin-top: rem(0px);
736
- margin-bottom: rem(0px);
737
- }
738
-
739
- .sm-y-2 {
740
- margin-top: rem(2px);
741
- margin-bottom: rem(2px);
742
- }
743
-
744
- .sm-y-4 {
745
- margin-top: rem(4px);
746
- margin-bottom: rem(4px);
747
- }
748
-
749
- .sm-y-8 {
750
- margin-top: rem(8px);
751
- margin-bottom: rem(8px);
752
- }
753
-
754
- .sm-y-12 {
755
- margin-top: rem(12px);
756
- margin-bottom: rem(12px);
757
- }
758
-
759
- .sm-y-16 {
760
- margin-top: rem(16px);
761
- margin-bottom: rem(16px);
762
- }
763
-
764
- .sm-y-24 {
765
- margin-top: rem(24px);
766
- margin-bottom: rem(24px);
767
- }
768
-
769
- .sm-y-36 {
770
- margin-top: rem(36px);
771
- margin-bottom: rem(36px);
772
- }
773
-
774
- .sm-y-40 {
775
- margin-top: rem(40px);
776
- margin-bottom: rem(40px);
777
- }
778
-
779
- .br-0 {
780
- border-radius: rem(0px);
781
- }
782
-
783
- .br-4 {
784
- border-radius: rem(4px);
785
- }
786
-
787
- .br-8 {
788
- border-radius: rem(8px);
789
- }
790
-
791
- .br-16 {
792
- border-radius: rem(16px);
793
- }
794
-
795
- .br-24 {
796
- border-radius: rem(24px);
797
- }
798
-
799
- .br-36 {
800
- border-radius: rem(36px);
801
- }
802
-
803
- .br-200 {
804
- border-radius: rem(200px);
805
- }
806
-
807
- // ------------------Checkbox Styles--------------------
808
- .cats-checkbox-container,
809
- .cats-item,
810
- .cats-multiitem {
811
- @include flex(flex-start, center, rem(8px));
812
- @include fontStyle(var(--fs-16), rem(20px), 400);
813
- margin-bottom: rem(8px);
814
- color: var(--text-heading-primary);
815
- &.disabled-option {
816
- color: var(--text-body-muted);
817
- pointer-events: none;
818
- input[type="checkbox"]:checked {
819
- background-color: var(--surface-background-subtle);
820
- border-color: var(--border-core-default);
821
- &::after {
822
- background-image: url(/images/check-disabled.svg);
823
- }
824
- }
825
- &::selection {
826
- background-color: transparent;
827
- }
828
- }
829
-
830
- input[type="checkbox"] {
831
- appearance: none;
832
- -webkit-appearance: none;
833
- @include box(rem(16px), rem(16px));
834
- min-width: rem(16px);
835
- @include border();
836
- cursor: pointer;
837
- background-color: var(--surface-background-canvas);
838
- position: relative;
839
- transition: all 0.2s ease;
840
-
841
- // --- Default (unchecked) ---
842
- &::after {
843
- content: "";
844
- display: none;
845
- position: absolute;
846
- @include position(rem(-1px), rem(-1px));
847
- @include box(rem(16px), rem(16px));
848
- background-size: auto;
849
- background-repeat: no-repeat;
850
- background-position: center;
851
- }
852
- // --- Checked State ---
853
- &:checked {
854
- border-color: var(--border-interaction-focus);
855
- background-color: var(--surface-action-default);
856
- &::after {
857
- display: block;
858
- background-image: url("/images/check-white.svg");
859
- background-size: rem(8px) rem(6px);
860
- }
861
- }
862
- // --- Indeterminate (minus) state ---
863
- &:indeterminate {
864
- border-color: var(--border-interaction-focus);
865
- background-color: var(--surface-background-canvas);
866
- &::after {
867
- display: block;
868
- top: 0;
869
- background-image: url("/images/minus-blue.svg");
870
- background-size: rem(7px) rem(1px);
871
- }
872
- }
873
- // Disabled (unchecked)
874
- &:disabled {
875
- cursor: default;
876
- background-color: var(--surface-background-default);
877
- border-color: var(--border-core-muted);
878
- & + span {
879
- color: var(--text-body-muted);
880
- }
881
- }
882
-
883
- // Disabled + Checked (IMPORTANT)
884
- &:checked:disabled {
885
- background-color: var(--surface-background-default);
886
- border-color: var(--border-core-muted);
887
-
888
- &::after {
889
- display: block;
890
- background-image: url("/images/check-disabled.svg");
891
- }
892
- }
893
- }
894
- }
1
+ @use "./functions" as *;
2
+ @use "./mixins" as *;
3
+
4
+ .pointer {
5
+ cursor: pointer;
6
+ }
7
+
8
+ .d-none {
9
+ display: none;
10
+ }
11
+
12
+ // ---------------------------- THREE DOTS TRUNCATE TEXT ------------------------
13
+ .textTruncate {
14
+ text-overflow: ellipsis;
15
+ overflow: hidden;
16
+ white-space: nowrap;
17
+ }
18
+
19
+ // ------------------Button Styles--------------------
20
+ button.cats-btn {
21
+ border: rem(1px) solid transparent;
22
+ padding: rem(13px) rem(15px);
23
+ height: rem(48px);
24
+ min-width: rem(108px);
25
+ @include flex(center, center, rem(8px));
26
+ border-radius: rem(8px);
27
+ @include fontStyle(var(--fs-14), rem(20px));
28
+ cursor: pointer;
29
+ transition: all 0.5s ease;
30
+ &.only-icon {
31
+ min-width: rem(48px);
32
+ padding: rem(11px);
33
+ }
34
+ img.btn-icon {
35
+ @include box(rem(24px), rem(24px));
36
+ }
37
+ &.small {
38
+ height: rem(32px);
39
+ padding: rem(5px) rem(15px);
40
+ img.btn-icon {
41
+ @include box(rem(16px), rem(16px));
42
+ }
43
+ }
44
+ //for primary button
45
+ &.primary-btn {
46
+ background-color: var(--surface-action-default);
47
+ color: var(--surface-background-canvas);
48
+ border-color: var(--border-interaction-focus);
49
+ &:hover {
50
+ background-color: var(--surface-action-hover);
51
+ border-color: var(--surface-action-hover);
52
+ }
53
+ &:focus-visible,
54
+ &:focus,
55
+ &:focus-within {
56
+ outline: rem(2px) solid var(--text-link-muted);
57
+ border: 0;
58
+ }
59
+ }
60
+
61
+ //for Secondary button
62
+ &.secondary-btn {
63
+ background-color: var(--surface-background-canvas);
64
+ color: var(--text-body-primary);
65
+ border-color: var(--border-core-strong);
66
+ &:hover {
67
+ background-color: var(--surface-background-blue);
68
+ border-color: var(--border-interaction-focus);
69
+ color: var(--text-link-default);
70
+ }
71
+ &:focus-visible,
72
+ &:focus,
73
+ &:focus-within {
74
+ box-shadow: 0 0 0 rem(2px) var(--border-core-muted);
75
+ outline: 0;
76
+ border-color: var(--border-core-strong);
77
+ }
78
+ }
79
+
80
+ //for Tertiary button
81
+ &.tertiary-btn {
82
+ background-color: var(--surface-background-blue);
83
+ border-color: var(--border-interaction-focus);
84
+ color: var(--text-link-default);
85
+ &:hover {
86
+ background-color: var(--blue-100);
87
+ }
88
+ &:focus-visible,
89
+ &:focus,
90
+ &:focus-within {
91
+ box-shadow: 0 0 0 rem(2px) var(--text-link-muted);
92
+ outline: 0;
93
+ border-color: var(--border-interaction-focus);
94
+ }
95
+ }
96
+ //for Link button
97
+ &.link-btn {
98
+ background-color: var(--surface-background-canvas);
99
+ color: var(--text-link-default);
100
+ &:hover {
101
+ color: var(--text-link-hover);
102
+ }
103
+ &:focus-visible,
104
+ &:focus,
105
+ &:focus-within {
106
+ outline: 0;
107
+ border-color: 0;
108
+ background-color: var(--surface-background-blue);
109
+ }
110
+ &.disable,
111
+ &:disabled {
112
+ pointer-events: none;
113
+ background: var(--surface-background-canvas);
114
+ color: var(--text-body-muted);
115
+ border: rem(1px) solid transparent;
116
+ }
117
+ }
118
+
119
+ &.disable,
120
+ &:disabled {
121
+ pointer-events: none;
122
+ // opacity: 0.6;
123
+ background: var(--surface-background-default);
124
+ color: var(--text-body-muted);
125
+ border: rem(1px) solid var(--border-core-strong);
126
+ img.btn-icon {
127
+ opacity: 0.2;
128
+ }
129
+ }
130
+
131
+ // &.outline_btn {
132
+ // background-color: var(--surface-background-canvas);
133
+ // color: var(--text-body-primary);
134
+ // border: rem(1px) solid var(--border-core-strong);
135
+ // }
136
+
137
+ // &.fill_lightBlue_btn {
138
+ // background-color: var(--surface-background-blue);
139
+ // color: var(--text-link-default);
140
+ // }
141
+
142
+ // &.disable_fill_lightBlue_btn {
143
+ // background-color: var(--surface-background-blue);
144
+ // color: var(--text-link-muted);
145
+ // pointer-events: none;
146
+ // }
147
+
148
+ // &.bg_logic_btn {
149
+ // background-color: var(--surface-background-canvas);
150
+ // color: var(--text-body-primary);
151
+ // border: rem(1px) solid var(--border-core-default);
152
+ // }
153
+
154
+ // &.no_outline_btn {
155
+ // background-color: var(--surface-background-blue);
156
+ // color: var(--text-link-default);
157
+ // outline: none;
158
+ // }
159
+
160
+ // .close_outline_btn {
161
+ // background-color: var(--surface-background-blue);
162
+ // border: rem(1px) solid var(--surface-background-blue);
163
+ // color: var(--text-link-default);
164
+ // }
165
+ }
166
+
167
+ // ------------------Custom Tooltip Styles--------------------
168
+
169
+ .default-tooltip-class {
170
+ position: relative;
171
+ display: inline-block;
172
+ padding: rem(8px) rem(12px);
173
+ background: var(--surface-background-canvas);
174
+ border-radius: rem(8px);
175
+ @include fontStyle(var(--fs-14), rem(24px), 400);
176
+ color: var(--text-body-primary);
177
+ box-shadow: 0 rem(4px) rem(15px) rgba(0, 0, 0, 0.15);
178
+
179
+ &::before {
180
+ content: "";
181
+ position: absolute;
182
+ top: rem(-10px);
183
+ left: 50%;
184
+ @include box(rem(16px), rem(16px));
185
+ background: var(--surface-background-canvas);
186
+ transform: rotate(-135deg);
187
+ box-shadow: rem(4px) rem(4px) rem(6px) rgba(0, 0, 0, 0.1);
188
+ border-radius: rem(2px);
189
+ border: rem(1px) solid var(--border-core-muted);
190
+ border-top: 0;
191
+ border-left: 0;
192
+ }
193
+ }
194
+
195
+ /* Display Styles */
196
+ .display-large {
197
+ @include fontStyle(rem(56px), rem(80px), 500);
198
+ }
199
+
200
+ .display-large-emphasized {
201
+ @include fontStyle(rem(56px), rem(80px), 600);
202
+ }
203
+
204
+ .display-medium {
205
+ @include fontStyle(rem(48px), rem(56px), 500);
206
+ }
207
+
208
+ .display-medium-emphasized {
209
+ @include fontStyle(rem(48px), rem(56px), 600);
210
+ }
211
+
212
+ /* Heading Styles */
213
+ .heading-extra-large {
214
+ @include fontStyle(rem(36px), rem(40px), 500);
215
+ }
216
+
217
+ .heading-extra-large-emphasized {
218
+ @include fontStyle(rem(36px), rem(40px), 600);
219
+ }
220
+
221
+ .heading-large {
222
+ @include fontStyle(rem(24px), rem(32px), 500);
223
+ }
224
+
225
+ .heading-large-emphasized {
226
+ @include fontStyle(rem(24px), rem(32px), 600);
227
+ }
228
+
229
+ .heading-medium {
230
+ @include fontStyle(rem(20px), rem(28px), 500);
231
+ }
232
+
233
+ .heading-medium-emphasized {
234
+ @include fontStyle(rem(20px), rem(28px), 600);
235
+ }
236
+
237
+ .heading-small {
238
+ @include fontStyle(rem(18px), rem(28px), 500);
239
+ }
240
+
241
+ .heading-small-emphasized {
242
+ @include fontStyle(rem(18px), rem(28px), 600);
243
+ }
244
+
245
+ /* Body Styles */
246
+ .body-large {
247
+ @include fontStyle(rem(16px), rem(24px));
248
+ }
249
+
250
+ .body-large-emphasized {
251
+ @include fontStyle(rem(16px), rem(24px), 500);
252
+ }
253
+
254
+ .body-medium {
255
+ @include fontStyle(rem(14px), rem(20px));
256
+ }
257
+
258
+ .body-medium-emphasized {
259
+ @include fontStyle(rem(14px), rem(20px), 500);
260
+ }
261
+
262
+ .body-small {
263
+ @include fontStyle(rem(12px), rem(18px));
264
+ }
265
+
266
+ /* Meta Styles */
267
+ .meta-regular {
268
+ @include fontStyle(rem(14px), rem(20px), 500);
269
+ }
270
+
271
+ .meta-regular-emphasized {
272
+ @include fontStyle(rem(14px), rem(20px), 600);
273
+ }
274
+
275
+ /* Interaction Styles */
276
+ .interaction-medium {
277
+ @include fontStyle(rem(14px), rem(20px), 500);
278
+ }
279
+
280
+ .interaction-small {
281
+ @include fontStyle(rem(12px), rem(20px), 500);
282
+ }
283
+
284
+ /* System Utility Styles */
285
+ .system-utility-regular {
286
+ @include fontStyle(rem(12px), rem(18px), 500);
287
+ }
288
+
289
+ .system-utility-regular-emphasized {
290
+ @include fontStyle(rem(12px), rem(18px), 600);
291
+ }
292
+
293
+ .system-utility-small {
294
+ @include fontStyle(rem(10px), rem(12px), 500);
295
+ }
296
+
297
+ /* Font Weight Utility Classes */
298
+ .font-weight-regular {
299
+ font-weight: 400;
300
+ }
301
+
302
+ .font-weight-medium {
303
+ font-weight: 500;
304
+ }
305
+
306
+ .font-weight-semibold {
307
+ font-weight: 600;
308
+ }
309
+
310
+ /* Padding Classes (sp prefix) */
311
+ .sp-0 {
312
+ padding: rem(0px);
313
+ }
314
+
315
+ .sp-2 {
316
+ padding: rem(2px);
317
+ }
318
+
319
+ .sp-4 {
320
+ padding: rem(4px);
321
+ }
322
+
323
+ .sp-8 {
324
+ padding: rem(8px);
325
+ }
326
+
327
+ .sp-12 {
328
+ padding: rem(12px);
329
+ }
330
+
331
+ .sp-16 {
332
+ padding: rem(16px);
333
+ }
334
+
335
+ .sp-24 {
336
+ padding: rem(24px);
337
+ }
338
+
339
+ .sp-36 {
340
+ padding: rem(36px);
341
+ }
342
+
343
+ .sp-40 {
344
+ padding: rem(40px);
345
+ }
346
+
347
+ /* Margin Classes (sm prefix) */
348
+ .sm-0 {
349
+ margin: rem(0px);
350
+ }
351
+
352
+ .sm-2 {
353
+ margin: rem(2px);
354
+ }
355
+
356
+ .sm-4 {
357
+ margin: rem(4px);
358
+ }
359
+
360
+ .sm-8 {
361
+ margin: rem(8px);
362
+ }
363
+
364
+ .sm-12 {
365
+ margin: rem(12px);
366
+ }
367
+
368
+ .sm-16 {
369
+ margin: rem(16px);
370
+ }
371
+
372
+ .sm-24 {
373
+ margin: rem(24px);
374
+ }
375
+
376
+ .sm-36 {
377
+ margin: rem(36px);
378
+ }
379
+
380
+ .sm-40 {
381
+ margin: rem(40px);
382
+ }
383
+
384
+ /* Directional Padding */
385
+ .sp-t-0 {
386
+ padding-top: rem(0px);
387
+ }
388
+
389
+ .sp-t-2 {
390
+ padding-top: rem(2px);
391
+ }
392
+
393
+ .sp-t-4 {
394
+ padding-top: rem(4px);
395
+ }
396
+
397
+ .sp-t-8 {
398
+ padding-top: rem(8px);
399
+ }
400
+
401
+ .sp-t-12 {
402
+ padding-top: rem(12px);
403
+ }
404
+
405
+ .sp-t-16 {
406
+ padding-top: rem(16px);
407
+ }
408
+
409
+ .sp-t-24 {
410
+ padding-top: rem(24px);
411
+ }
412
+
413
+ .sp-t-36 {
414
+ padding-top: rem(36px);
415
+ }
416
+
417
+ .sp-t-40 {
418
+ padding-top: rem(40px);
419
+ }
420
+
421
+ .sp-b-0 {
422
+ padding-bottom: rem(0px);
423
+ }
424
+
425
+ .sp-b-2 {
426
+ padding-bottom: rem(2px);
427
+ }
428
+
429
+ .sp-b-4 {
430
+ padding-bottom: rem(4px);
431
+ }
432
+
433
+ .sp-b-8 {
434
+ padding-bottom: rem(8px);
435
+ }
436
+
437
+ .sp-b-12 {
438
+ padding-bottom: rem(12px);
439
+ }
440
+
441
+ .sp-b-16 {
442
+ padding-bottom: rem(16px);
443
+ }
444
+
445
+ .sp-b-24 {
446
+ padding-bottom: rem(24px);
447
+ }
448
+
449
+ .sp-b-36 {
450
+ padding-bottom: rem(36px);
451
+ }
452
+
453
+ .sp-b-40 {
454
+ padding-bottom: rem(40px);
455
+ }
456
+
457
+ .sp-l-0 {
458
+ padding-left: rem(0px);
459
+ }
460
+
461
+ .sp-l-2 {
462
+ padding-left: rem(2px);
463
+ }
464
+
465
+ .sp-l-4 {
466
+ padding-left: rem(4px);
467
+ }
468
+
469
+ .sp-l-8 {
470
+ padding-left: rem(8px);
471
+ }
472
+
473
+ .sp-l-12 {
474
+ padding-left: rem(12px);
475
+ }
476
+
477
+ .sp-l-16 {
478
+ padding-left: rem(16px);
479
+ }
480
+
481
+ .sp-l-24 {
482
+ padding-left: rem(24px);
483
+ }
484
+
485
+ .sp-l-36 {
486
+ padding-left: rem(36px);
487
+ }
488
+
489
+ .sp-l-40 {
490
+ padding-left: rem(40px);
491
+ }
492
+
493
+ .sp-r-0 {
494
+ padding-right: rem(0px);
495
+ }
496
+
497
+ .sp-r-2 {
498
+ padding-right: rem(2px);
499
+ }
500
+
501
+ .sp-r-4 {
502
+ padding-right: rem(4px);
503
+ }
504
+
505
+ .sp-r-8 {
506
+ padding-right: rem(8px);
507
+ }
508
+
509
+ .sp-r-12 {
510
+ padding-right: rem(12px);
511
+ }
512
+
513
+ .sp-r-16 {
514
+ padding-right: rem(16px);
515
+ }
516
+
517
+ .sp-r-24 {
518
+ padding-right: rem(24px);
519
+ }
520
+
521
+ .sp-r-36 {
522
+ padding-right: rem(36px);
523
+ }
524
+
525
+ .sp-r-40 {
526
+ padding-right: rem(40px);
527
+ }
528
+
529
+ /* Directional Margin */
530
+ .sm-t-0 {
531
+ margin-top: rem(0px);
532
+ }
533
+
534
+ .sm-t-2 {
535
+ margin-top: rem(2px);
536
+ }
537
+
538
+ .sm-t-4 {
539
+ margin-top: rem(4px);
540
+ }
541
+
542
+ .sm-t-8 {
543
+ margin-top: rem(8px);
544
+ }
545
+
546
+ .sm-t-12 {
547
+ margin-top: rem(12px);
548
+ }
549
+
550
+ .sm-t-16 {
551
+ margin-top: rem(16px);
552
+ }
553
+
554
+ .sm-t-24 {
555
+ margin-top: rem(24px);
556
+ }
557
+
558
+ .sm-t-36 {
559
+ margin-top: rem(36px);
560
+ }
561
+
562
+ .sm-t-40 {
563
+ margin-top: rem(40px);
564
+ }
565
+
566
+ .sm-b-0 {
567
+ margin-bottom: rem(0px);
568
+ }
569
+
570
+ .sm-b-2 {
571
+ margin-bottom: rem(2px);
572
+ }
573
+
574
+ .sm-b-4 {
575
+ margin-bottom: rem(4px);
576
+ }
577
+
578
+ .sm-b-8 {
579
+ margin-bottom: rem(8px);
580
+ }
581
+
582
+ .sm-b-12 {
583
+ margin-bottom: rem(12px);
584
+ }
585
+
586
+ .sm-b-16 {
587
+ margin-bottom: rem(16px);
588
+ }
589
+
590
+ .sm-b-24 {
591
+ margin-bottom: rem(24px);
592
+ }
593
+
594
+ .sm-b-36 {
595
+ margin-bottom: rem(36px);
596
+ }
597
+
598
+ .sm-b-40 {
599
+ margin-bottom: rem(40px);
600
+ }
601
+
602
+ .sm-l-0 {
603
+ margin-left: rem(0px);
604
+ }
605
+
606
+ .sm-l-2 {
607
+ margin-left: rem(2px);
608
+ }
609
+
610
+ .sm-l-4 {
611
+ margin-left: rem(4px);
612
+ }
613
+
614
+ .sm-l-8 {
615
+ margin-left: rem(8px);
616
+ }
617
+
618
+ .sm-l-12 {
619
+ margin-left: rem(12px);
620
+ }
621
+
622
+ .sm-l-16 {
623
+ margin-left: rem(16px);
624
+ }
625
+
626
+ .sm-l-24 {
627
+ margin-left: rem(24px);
628
+ }
629
+
630
+ .sm-l-36 {
631
+ margin-left: rem(36px);
632
+ }
633
+
634
+ .sm-l-40 {
635
+ margin-left: rem(40px);
636
+ }
637
+
638
+ .sm-r-0 {
639
+ margin-right: rem(0px);
640
+ }
641
+
642
+ .sm-r-2 {
643
+ margin-right: rem(2px);
644
+ }
645
+
646
+ .sm-r-4 {
647
+ margin-right: rem(4px);
648
+ }
649
+
650
+ .sm-r-8 {
651
+ margin-right: rem(8px);
652
+ }
653
+
654
+ .sm-r-12 {
655
+ margin-right: rem(12px);
656
+ }
657
+
658
+ .sm-r-16 {
659
+ margin-right: rem(16px);
660
+ }
661
+
662
+ .sm-r-24 {
663
+ margin-right: rem(24px);
664
+ }
665
+
666
+ .sm-r-36 {
667
+ margin-right: rem(36px);
668
+ }
669
+
670
+ .sm-r-40 {
671
+ margin-right: rem(40px);
672
+ }
673
+
674
+ /* Horizontal & Vertical Spacing */
675
+ .sp-x-0 {
676
+ padding-left: rem(0px);
677
+ padding-right: rem(0px);
678
+ }
679
+
680
+ .sp-x-2 {
681
+ padding-left: rem(2px);
682
+ padding-right: rem(2px);
683
+ }
684
+
685
+ .sp-x-4 {
686
+ padding-left: rem(4px);
687
+ padding-right: rem(4px);
688
+ }
689
+
690
+ .sp-x-8 {
691
+ padding-left: rem(8px);
692
+ padding-right: rem(8px);
693
+ }
694
+
695
+ .sp-x-12 {
696
+ padding-left: rem(12px);
697
+ padding-right: rem(12px);
698
+ }
699
+
700
+ .sp-x-16 {
701
+ padding-left: rem(16px);
702
+ padding-right: rem(16px);
703
+ }
704
+
705
+ .sp-x-24 {
706
+ padding-left: rem(24px);
707
+ padding-right: rem(24px);
708
+ }
709
+
710
+ .sp-x-36 {
711
+ padding-left: rem(36px);
712
+ padding-right: rem(36px);
713
+ }
714
+
715
+ .sp-x-40 {
716
+ padding-left: rem(40px);
717
+ padding-right: rem(40px);
718
+ }
719
+
720
+ .sp-y-0 {
721
+ padding-top: rem(0px);
722
+ padding-bottom: rem(0px);
723
+ }
724
+
725
+ .sp-y-2 {
726
+ padding-top: rem(2px);
727
+ padding-bottom: rem(2px);
728
+ }
729
+
730
+ .sp-y-4 {
731
+ padding-top: rem(4px);
732
+ padding-bottom: rem(4px);
733
+ }
734
+
735
+ .sp-y-8 {
736
+ padding-top: rem(8px);
737
+ padding-bottom: rem(8px);
738
+ }
739
+
740
+ .sp-y-12 {
741
+ padding-top: rem(12px);
742
+ padding-bottom: rem(12px);
743
+ }
744
+
745
+ .sp-y-16 {
746
+ padding-top: rem(16px);
747
+ padding-bottom: rem(16px);
748
+ }
749
+
750
+ .sp-y-24 {
751
+ padding-top: rem(24px);
752
+ padding-bottom: rem(24px);
753
+ }
754
+
755
+ .sp-y-36 {
756
+ padding-top: rem(36px);
757
+ padding-bottom: rem(36px);
758
+ }
759
+
760
+ .sp-y-40 {
761
+ padding-top: rem(40px);
762
+ padding-bottom: rem(40px);
763
+ }
764
+
765
+ /* Horizontal & Vertical Margin */
766
+ .sm-x-0 {
767
+ margin-left: rem(0px);
768
+ margin-right: rem(0px);
769
+ }
770
+
771
+ .sm-x-2 {
772
+ margin-left: rem(2px);
773
+ margin-right: rem(2px);
774
+ }
775
+
776
+ .sm-x-4 {
777
+ margin-left: rem(4px);
778
+ margin-right: rem(4px);
779
+ }
780
+
781
+ .sm-x-8 {
782
+ margin-left: rem(8px);
783
+ margin-right: rem(8px);
784
+ }
785
+
786
+ .sm-x-12 {
787
+ margin-left: rem(12px);
788
+ margin-right: rem(12px);
789
+ }
790
+
791
+ .sm-x-16 {
792
+ margin-left: rem(16px);
793
+ margin-right: rem(16px);
794
+ }
795
+
796
+ .sm-x-24 {
797
+ margin-left: rem(24px);
798
+ margin-right: rem(24px);
799
+ }
800
+
801
+ .sm-x-36 {
802
+ margin-left: rem(36px);
803
+ margin-right: rem(36px);
804
+ }
805
+
806
+ .sm-x-40 {
807
+ margin-left: rem(40px);
808
+ margin-right: rem(40px);
809
+ }
810
+
811
+ .sm-y-0 {
812
+ margin-top: rem(0px);
813
+ margin-bottom: rem(0px);
814
+ }
815
+
816
+ .sm-y-2 {
817
+ margin-top: rem(2px);
818
+ margin-bottom: rem(2px);
819
+ }
820
+
821
+ .sm-y-4 {
822
+ margin-top: rem(4px);
823
+ margin-bottom: rem(4px);
824
+ }
825
+
826
+ .sm-y-8 {
827
+ margin-top: rem(8px);
828
+ margin-bottom: rem(8px);
829
+ }
830
+
831
+ .sm-y-12 {
832
+ margin-top: rem(12px);
833
+ margin-bottom: rem(12px);
834
+ }
835
+
836
+ .sm-y-16 {
837
+ margin-top: rem(16px);
838
+ margin-bottom: rem(16px);
839
+ }
840
+
841
+ .sm-y-24 {
842
+ margin-top: rem(24px);
843
+ margin-bottom: rem(24px);
844
+ }
845
+
846
+ .sm-y-36 {
847
+ margin-top: rem(36px);
848
+ margin-bottom: rem(36px);
849
+ }
850
+
851
+ .sm-y-40 {
852
+ margin-top: rem(40px);
853
+ margin-bottom: rem(40px);
854
+ }
855
+
856
+ .br-0 {
857
+ border-radius: rem(0px);
858
+ }
859
+
860
+ .br-4 {
861
+ border-radius: rem(4px);
862
+ }
863
+
864
+ .br-8 {
865
+ border-radius: rem(8px);
866
+ }
867
+
868
+ .br-16 {
869
+ border-radius: rem(16px);
870
+ }
871
+
872
+ .br-24 {
873
+ border-radius: rem(24px);
874
+ }
875
+
876
+ .br-36 {
877
+ border-radius: rem(36px);
878
+ }
879
+
880
+ .br-200 {
881
+ border-radius: rem(200px);
882
+ }
883
+
884
+ // ------------------Checkbox Styles--------------------
885
+ .cats-checkbox-container,
886
+ .cats-item,
887
+ .cats-multiitem {
888
+ @include flex(flex-start, center, rem(8px));
889
+ @include fontStyle(var(--fs-16), rem(20px), 400);
890
+ margin-bottom: rem(8px);
891
+ color: var(--text-heading-primary);
892
+ &.disabled-option {
893
+ color: var(--text-body-muted);
894
+ pointer-events: none;
895
+ input[type="checkbox"]:checked {
896
+ background-color: var(--surface-background-subtle);
897
+ border-color: var(--border-core-default);
898
+ &::after {
899
+ background-image: url(/images/check-disabled.svg);
900
+ }
901
+ }
902
+ &::selection {
903
+ background-color: transparent;
904
+ }
905
+ }
906
+
907
+ input[type="checkbox"] {
908
+ appearance: none;
909
+ -webkit-appearance: none;
910
+ @include box(rem(16px), rem(16px));
911
+ min-width: rem(16px);
912
+ @include border();
913
+ cursor: pointer;
914
+ background-color: var(--surface-background-canvas);
915
+ position: relative;
916
+ transition: all 0.2s ease;
917
+
918
+ // --- Default (unchecked) ---
919
+ &::after {
920
+ content: "";
921
+ display: none;
922
+ position: absolute;
923
+ @include position(rem(-1px), rem(-1px));
924
+ @include box(rem(16px), rem(16px));
925
+ background-size: auto;
926
+ background-repeat: no-repeat;
927
+ background-position: center;
928
+ }
929
+ // --- Checked State ---
930
+ &:checked {
931
+ border-color: var(--border-interaction-focus);
932
+ background-color: var(--surface-action-default);
933
+ &::after {
934
+ display: block;
935
+ background-image: url("/images/check-white.svg");
936
+ background-size: rem(8px) rem(6px);
937
+ }
938
+ }
939
+ // --- Indeterminate (minus) state ---
940
+ &:indeterminate {
941
+ border-color: var(--border-interaction-focus);
942
+ background-color: var(--surface-background-canvas);
943
+ &::after {
944
+ display: block;
945
+ top: 0;
946
+ background-image: url("/images/minus-blue.svg");
947
+ background-size: rem(7px) rem(1px);
948
+ }
949
+ }
950
+ // Disabled (unchecked)
951
+ &:disabled {
952
+ cursor: default;
953
+ background-color: var(--surface-background-default);
954
+ border-color: var(--border-core-muted);
955
+ & + span {
956
+ color: var(--text-body-muted);
957
+ }
958
+ }
959
+
960
+ // Disabled + Checked (IMPORTANT)
961
+ &:checked:disabled {
962
+ background-color: var(--surface-background-default);
963
+ border-color: var(--border-core-muted);
964
+
965
+ &::after {
966
+ display: block;
967
+ background-image: url("/images/check-disabled.svg");
968
+ }
969
+ }
970
+ }
971
+ }