@clayui/css 3.133.0 → 3.134.0

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 (36) hide show
  1. package/lib/css/atlas.css +63 -8
  2. package/lib/css/atlas.css.map +1 -1
  3. package/lib/css/base.css +64 -8
  4. package/lib/css/base.css.map +1 -1
  5. package/lib/css/cadmin.css +38 -9
  6. package/lib/css/cadmin.css.map +1 -1
  7. package/lib/images/icons/flags-en-IE.svg +12 -0
  8. package/lib/images/icons/flags-en-LV.svg +11 -0
  9. package/lib/images/icons/flags-my-MM.svg +13 -0
  10. package/lib/images/icons/icons.svg +1 -1
  11. package/package.json +2 -2
  12. package/src/images/icons/flags-en-IE.svg +12 -0
  13. package/src/images/icons/flags-en-LV.svg +11 -0
  14. package/src/images/icons/flags-my-MM.svg +13 -0
  15. package/src/scss/_license-text.scss +1 -1
  16. package/src/scss/atlas/variables/_labels.scss +1 -0
  17. package/src/scss/atlas/variables/_modals.scss +1 -0
  18. package/src/scss/cadmin/variables/_labels.scss +4 -5
  19. package/src/scss/cadmin/variables/_modals.scss +18 -2
  20. package/src/scss/cadmin/variables/_utilities.scss +7 -0
  21. package/src/scss/functions/_lx-icons-generated.scss +6 -0
  22. package/src/scss/mixins/_forms.scss +690 -432
  23. package/src/scss/mixins/_input-groups.scss +222 -107
  24. package/src/scss/mixins/_labels.scss +100 -48
  25. package/src/scss/mixins/_menubar.scss +131 -60
  26. package/src/scss/mixins/_modals.scss +36 -20
  27. package/src/scss/mixins/_nav.scss +86 -34
  28. package/src/scss/mixins/_pagination.scss +241 -151
  29. package/src/scss/mixins/_panels.scss +86 -51
  30. package/src/scss/mixins/_popovers.scss +82 -32
  31. package/src/scss/mixins/_sheet.scss +19 -7
  32. package/src/scss/mixins/_sidebar.scss +195 -89
  33. package/src/scss/mixins/_slideout.scss +96 -46
  34. package/src/scss/variables/_labels.scss +4 -5
  35. package/src/scss/variables/_modals.scss +18 -2
  36. package/src/scss/variables/_utilities.scss +6 -0
@@ -526,66 +526,106 @@
526
526
  );
527
527
 
528
528
  @if ($enabled) {
529
- @include clay-css($base);
529
+ @if (length($base) != 0) {
530
+ @include clay-css($base);
531
+ }
530
532
 
531
- &::placeholder {
532
- // opacity: 1, override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526.
533
+ @if (length($placeholder) != 0) {
534
+ &::placeholder {
535
+ // opacity: 1, override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526.
533
536
 
534
- @include clay-css($placeholder);
537
+ @include clay-css($placeholder);
538
+ }
535
539
  }
536
540
 
537
- &::-moz-selection,
538
- &::selection {
539
- @include clay-css($selection);
541
+ @if (length($selection) != 0) {
542
+ &::-moz-selection,
543
+ &::selection {
544
+ @include clay-css($selection);
545
+ }
540
546
  }
541
547
 
542
- ~ .input-group-inset-item {
543
- @include clay-css(map-deep-get($map, input-group-inset-item));
548
+ $_input-group-inset-item: map-get($map, input-group-inset-item);
549
+
550
+ @if ($_input-group-inset-item) {
551
+ ~ .input-group-inset-item {
552
+ @include clay-css($_input-group-inset-item);
553
+ }
544
554
  }
545
555
 
546
- &:hover,
547
- &.hover {
548
- @include clay-css($hover);
556
+ @if (length($hover) != 0) {
557
+ &:hover,
558
+ &.hover {
559
+ @include clay-css($hover);
549
560
 
550
- &::placeholder {
551
- @include clay-css($hover-placeholder);
552
- }
561
+ @if (length($hover-placeholder) != 0) {
562
+ &::placeholder {
563
+ @include clay-css($hover-placeholder);
564
+ }
565
+ }
553
566
 
554
- ~ .input-group-inset-item {
555
- @include clay-css(
556
- map-deep-get($map, hover, input-group-inset-item)
567
+ $_input-group-inset-item: map-get(
568
+ $hover,
569
+ input-group-inset-item
557
570
  );
571
+
572
+ @if ($_input-group-inset-item) {
573
+ ~ .input-group-inset-item {
574
+ @include clay-css($_input-group-inset-item);
575
+ }
576
+ }
558
577
  }
559
578
  }
560
579
 
561
- @at-root {
562
- &.focus,
563
- #{$focus-visible-selector},
564
- #{if($c-prefers-focus-selector,$c-prefers-focus-selector,clay-insert-before('.cadmin', '.c-prefers-focus ', '&:focus'))} {
565
- @include clay-css($focus);
580
+ @if (length($focus) != 0) {
581
+ @at-root {
582
+ &.focus,
583
+ #{$focus-visible-selector},
584
+ #{if($c-prefers-focus-selector,$c-prefers-focus-selector,clay-insert-before('.cadmin', '.c-prefers-focus ', '&:focus'))} {
585
+ @include clay-css($focus);
566
586
 
567
- &::placeholder {
568
- @include clay-css($focus-placeholder);
569
- }
587
+ @if (length($focus-placeholder) != 0) {
588
+ &::placeholder {
589
+ @include clay-css($focus-placeholder);
590
+ }
591
+ }
570
592
 
571
- ~ .input-group-inset-item {
572
- @include clay-css(
573
- map-deep-get($map, focus, input-group-inset-item)
593
+ $_input-group-inset-item: map-get(
594
+ $focus,
595
+ input-group-inset-item
574
596
  );
597
+
598
+ @if ($_input-group-inset-item) {
599
+ ~ .input-group-inset-item {
600
+ @include clay-css($_input-group-inset-item);
601
+ }
602
+ }
575
603
  }
576
604
  }
577
605
  }
578
606
 
579
- &:focus-within:has(input:focus) {
580
- @include clay-form-control-variant(map-get($map, focus-within));
607
+ $_focus-within: map-get($map, focus-within);
608
+
609
+ @if ($_focus-within) {
610
+ &:focus-within:has(input:focus) {
611
+ @include clay-form-control-variant($_focus-within);
612
+ }
581
613
  }
582
614
 
583
- &:active {
584
- @include clay-css(map-get($map, active));
615
+ $_active: map-get($map, active);
616
+
617
+ @if ($_active) {
618
+ &:active {
619
+ @include clay-css($_active);
620
+ }
585
621
  }
586
622
 
587
- &.active {
588
- @include clay-css(map-get($map, active-class));
623
+ $_active-class: map-get($map, active-class);
624
+
625
+ @if ($_active-class) {
626
+ &.active {
627
+ @include clay-css($_active-class);
628
+ }
589
629
  }
590
630
 
591
631
  // @deprecated after v2.18.0 [readonly] can have hover focus styles, declare a separate selector and use `clay-form-control-variant` mixin (e.g., `.form-control[readonly] { @include clay-form-control-variant($the-readonly-map); }`).
@@ -609,36 +649,55 @@
609
649
  // disabled if the fieldset is disabled. Due to implementation difficulty, we
610
650
  // don't honor that edge case; we style them as disabled anyway.
611
651
 
612
- &:disabled,
613
- &.disabled {
614
- // `opacity: 1;` iOS fix for unreadable disabled content;
615
- // see https://github.com/twbs/bootstrap/issues/11655.
652
+ @if (length($disabled) != 0) {
653
+ &:disabled,
654
+ &.disabled {
655
+ // `opacity: 1;` iOS fix for unreadable disabled content;
656
+ // see https://github.com/twbs/bootstrap/issues/11655.
616
657
 
617
- @include clay-css($disabled);
658
+ @include clay-css($disabled);
618
659
 
619
- &::placeholder {
620
- @include clay-css($disabled-placeholder);
621
- }
660
+ @if (length($disabled-placeholder) != 0) {
661
+ &::placeholder {
662
+ @include clay-css($disabled-placeholder);
663
+ }
664
+ }
622
665
 
623
- ~ .input-group-inset-item {
624
- @include clay-css(
625
- map-deep-get($map, disabled, input-group-inset-item)
666
+ $_input-group-inset-item: map-get(
667
+ $disabled,
668
+ input-group-inset-item
626
669
  );
670
+
671
+ @if ($_input-group-inset-item) {
672
+ ~ .input-group-inset-item {
673
+ @include clay-css($_input-group-inset-item);
674
+ }
675
+ }
627
676
  }
628
677
  }
629
678
 
630
- .inline-item {
631
- @include clay-css(map-get($map, inline-item));
679
+ $_inline-item: map-get($map, inline-item);
680
+
681
+ @if ($_inline-item) {
682
+ .inline-item {
683
+ @include clay-css($_inline-item);
684
+ }
632
685
  }
633
686
 
634
- .label {
635
- @include clay-css(map-get($map, label));
687
+ $_label: map-get($map, label);
688
+
689
+ @if ($_label) {
690
+ .label {
691
+ @include clay-css($_label);
692
+ }
636
693
  }
637
694
 
638
- .form-control-inset {
639
- @include clay-form-control-variant(
640
- map-get($map, form-control-inset)
641
- );
695
+ $_form-control-inset: map-get($map, form-control-inset);
696
+
697
+ @if ($_form-control-inset) {
698
+ .form-control-inset {
699
+ @include clay-form-control-variant($_form-control-inset);
700
+ }
642
701
  }
643
702
 
644
703
  @include clay-generate-media-breakpoints($map);
@@ -866,7 +925,9 @@
866
925
  $mobile: setter(map-get($map, mobile), ());
867
926
 
868
927
  @if ($enabled) {
869
- @include clay-css($base);
928
+ @if (length($base) != 0) {
929
+ @include clay-css($base);
930
+ }
870
931
 
871
932
  @if ($_media-breakpoint-down) or ($_media-breakpoint-up) {
872
933
  @include clay-generate-media-breakpoints(
@@ -875,238 +936,354 @@
875
936
  );
876
937
  }
877
938
 
878
- &:hover,
879
- &.hover {
880
- @include clay-css($hover);
939
+ @if (length($hover) != 0) {
940
+ &:hover,
941
+ &.hover {
942
+ @include clay-css($hover);
943
+
944
+ $_hover-option: map-get($hover, option);
881
945
 
882
- > option {
883
- $hover-option: setter(map-get($hover, option), ());
946
+ @if ($_hover-option) {
947
+ > option {
948
+ @include clay-css($_hover-option);
884
949
 
885
- @include clay-css($hover-option);
950
+ $_hover: map-get($_hover-option, hover);
886
951
 
887
- &:hover {
888
- @include clay-css(map-get($hover-option, hover));
889
- }
952
+ @if ($_hover) {
953
+ &:hover {
954
+ @include clay-css($_hover);
955
+ }
956
+ }
890
957
 
891
- &:checked {
892
- @include clay-css(map-get($hover-option, checked));
958
+ $_checked: map-get($_hover-option, checked);
959
+
960
+ @if ($_checked) {
961
+ &:checked {
962
+ @include clay-css($_checked);
963
+ }
964
+ }
965
+ }
893
966
  }
894
967
  }
895
968
  }
896
969
 
897
- @at-root {
898
- &.focus,
899
- #{$focus-visible-selector},
900
- #{if($c-prefers-focus-selector,$c-prefers-focus-selector,clay-insert-before('.cadmin', '.c-prefers-focus ', '&:focus'))} {
901
- @include clay-css($focus);
970
+ @if (length($focus) != 0) {
971
+ @at-root {
972
+ &.focus,
973
+ #{$focus-visible-selector},
974
+ #{if($c-prefers-focus-selector,$c-prefers-focus-selector,clay-insert-before('.cadmin', '.c-prefers-focus ', '&:focus'))} {
975
+ @include clay-css($focus);
976
+
977
+ $_focus-option: map-get($focus, option);
902
978
 
903
- > option {
904
- $focus-option: setter(map-get($focus, option), ());
979
+ @if ($_focus-option) {
980
+ > option {
981
+ @include clay-css($_focus-option);
905
982
 
906
- @include clay-css($focus-option);
983
+ $_hover: map-get($_focus-option, hover);
907
984
 
908
- &:hover {
909
- @include clay-css(map-get($focus-option, hover));
910
- }
985
+ @if ($_hover) {
986
+ &:hover {
987
+ @include clay-css($_hover);
988
+ }
989
+ }
911
990
 
912
- &:checked {
913
- @include clay-css(map-get($focus-option, checked));
991
+ $_checked: map-get($_focus-option, checked);
992
+
993
+ @if ($_checked) {
994
+ &:checked {
995
+ @include clay-css($_checked);
996
+ }
997
+ }
998
+ }
914
999
  }
915
1000
  }
916
1001
  }
917
1002
  }
918
1003
 
919
- &:active {
920
- $active: setter(map-get($map, active), ());
1004
+ $_active: map-get($map, active);
1005
+
1006
+ @if ($_active) {
1007
+ &:active {
1008
+ @include clay-css($_active);
921
1009
 
922
- @include clay-css($active);
1010
+ $_option: map-get($_active, option);
923
1011
 
924
- > option {
925
- $option: setter(map-get($active, option), ());
1012
+ @if ($_option) {
1013
+ > option {
1014
+ @include clay-css($_option);
926
1015
 
927
- @include clay-css($option);
1016
+ $_checked: map-get($_option, checked);
928
1017
 
929
- &:checked {
930
- @include clay-css(map-get($option, checked));
1018
+ @if ($_checked) {
1019
+ &:checked {
1020
+ @include clay-css($_checked);
1021
+ }
1022
+ }
1023
+ }
931
1024
  }
932
1025
  }
933
1026
  }
934
1027
 
935
- &.active {
936
- $active-class: setter(map-get($map, active-class), ());
1028
+ $_active-class: map-get($map, active-class);
937
1029
 
938
- @include clay-css($active-class);
1030
+ @if ($_active-class) {
1031
+ &.active {
1032
+ @include clay-css($_active-class);
939
1033
 
940
- > option {
941
- $option: setter(map-get($active-class, option), ());
1034
+ $_option: map-get($_active-class, option);
942
1035
 
943
- @include clay-css($option);
1036
+ @if ($_option) {
1037
+ > option {
1038
+ @include clay-css($_option);
944
1039
 
945
- &:checked {
946
- @include clay-css(map-get($option, checked));
1040
+ $_checked: map-get($_option, checked);
1041
+
1042
+ @if ($_checked) {
1043
+ &:checked {
1044
+ @include clay-css($_checked);
1045
+ }
1046
+ }
1047
+ }
947
1048
  }
948
1049
  }
949
1050
  }
950
1051
 
951
- &.show {
952
- $show: setter(map-get($map, show), ());
1052
+ $_show: map-get($map, show);
953
1053
 
954
- @include clay-css($show);
1054
+ @if ($_show) {
1055
+ &.show {
1056
+ @include clay-css($_show);
955
1057
 
956
- > option {
957
- $option: setter(map-get($show, option), ());
1058
+ $_option: map-get($_show, option);
958
1059
 
959
- @include clay-css($option);
1060
+ @if ($_option) {
1061
+ > option {
1062
+ @include clay-css($_option);
1063
+
1064
+ $_checked: map-get($_option, checked);
960
1065
 
961
- &:checked {
962
- @include clay-css(map-get($option, checked));
1066
+ @if ($_checked) {
1067
+ &:checked {
1068
+ @include clay-css($_checked);
1069
+ }
1070
+ }
1071
+ }
963
1072
  }
964
1073
  }
965
1074
  }
966
1075
 
967
- &:disabled,
968
- &.disabled {
969
- @include clay-css($disabled);
1076
+ @if (length($disabled) != 0) {
1077
+ &:disabled,
1078
+ &.disabled {
1079
+ @include clay-css($disabled);
970
1080
 
971
- > option {
972
- @include clay-css($disabled-option);
1081
+ @if (length($disabled-option) != 0) {
1082
+ > option {
1083
+ @include clay-css($disabled-option);
973
1084
 
974
- &:hover {
975
- @include clay-css(map-get($disabled-option, hover));
976
- }
1085
+ $_hover: map-get($disabled-option, hover);
977
1086
 
978
- &:checked {
979
- @include clay-css(map-get($disabled-option, checked));
1087
+ @if ($_hover) {
1088
+ &:hover {
1089
+ @include clay-css($_hover);
1090
+ }
1091
+ }
1092
+
1093
+ $_checked: map-get($disabled-option, checked);
1094
+
1095
+ @if ($_checked) {
1096
+ &:checked {
1097
+ @include clay-css($_checked);
1098
+ }
1099
+ }
1100
+ }
980
1101
  }
981
1102
  }
982
1103
  }
983
1104
 
984
- option {
985
- $option: setter(map-get($map, option), ());
1105
+ $_option: map-get($map, option);
986
1106
 
987
- @include clay-css($option);
1107
+ @if ($_option) {
1108
+ option {
1109
+ @include clay-css($_option);
988
1110
 
989
- &:hover {
990
- @include clay-css(map-get($option, hover));
991
- }
1111
+ $_hover: map-get($_option, hover);
992
1112
 
993
- &:checked {
994
- @include clay-css(map-get($option, checked));
1113
+ @if ($_hover) {
1114
+ &:hover {
1115
+ @include clay-css($_hover);
1116
+ }
1117
+ }
1118
+
1119
+ $_checked: map-get($_option, checked);
1120
+
1121
+ @if ($_checked) {
1122
+ &:checked {
1123
+ @include clay-css($_checked);
1124
+ }
1125
+ }
995
1126
  }
996
1127
  }
997
1128
 
998
- @if (map-get($map, firefox-only)) {
999
- @-moz-document url-prefix() {
1000
- $ff-only: setter(map-get($map, firefox-only), ());
1129
+ $ff-only: map-get($map, firefox-only);
1001
1130
 
1131
+ @if ($ff-only) {
1132
+ @-moz-document url-prefix() {
1002
1133
  @include clay-css($ff-only);
1003
1134
 
1004
- &:hover,
1005
- &.hover {
1006
- $ff-only-hover: setter(map-get($ff-only, hover), ());
1135
+ $ff-only-hover: map-get($ff-only, hover);
1007
1136
 
1008
- @include clay-css($ff-only-hover);
1137
+ @if ($ff-only-hover) {
1138
+ &:hover,
1139
+ &.hover {
1140
+ @include clay-css($ff-only-hover);
1009
1141
 
1010
- > option {
1011
- $ff-only-hover-option: setter(
1012
- map-get($ff-only-hover, option),
1013
- ()
1142
+ $ff-only-hover-option: map-get(
1143
+ $ff-only-hover,
1144
+ option
1014
1145
  );
1015
1146
 
1016
- @include clay-css($ff-only-hover-option);
1147
+ @if ($ff-only-hover-option) {
1148
+ > option {
1149
+ @include clay-css($ff-only-hover-option);
1017
1150
 
1018
- &:hover {
1019
- @include clay-css(
1020
- map-get($ff-only-hover-option, hover)
1021
- );
1022
- }
1151
+ $_hover: map-get(
1152
+ $ff-only-hover-option,
1153
+ hover
1154
+ );
1023
1155
 
1024
- &:checked {
1025
- @include clay-css(
1026
- map-get($ff-only-hover-option, checked)
1027
- );
1156
+ @if ($_hover) {
1157
+ &:hover {
1158
+ @include clay-css($_hover);
1159
+ }
1160
+ }
1161
+
1162
+ $_checked: map-get(
1163
+ $ff-only-hover-option,
1164
+ checked
1165
+ );
1166
+
1167
+ @if ($_checked) {
1168
+ &:checked {
1169
+ @include clay-css($_checked);
1170
+ }
1171
+ }
1172
+ }
1028
1173
  }
1029
1174
  }
1030
1175
  }
1031
1176
 
1032
- @at-root {
1033
- &.focus,
1034
- #{$focus-visible-selector},
1035
- #{if($c-prefers-focus-selector,$c-prefers-focus-selector,clay-insert-before('.cadmin', '.c-prefers-focus ', '&:focus'))} {
1036
- $ff-only-focus: setter(
1037
- map-get($ff-only, focus),
1038
- ()
1039
- );
1177
+ $ff-only-focus: map-get($ff-only, focus);
1040
1178
 
1041
- @include clay-css($ff-only-focus);
1179
+ @if ($ff-only-focus) {
1180
+ @at-root {
1181
+ &.focus,
1182
+ #{$focus-visible-selector},
1183
+ #{if($c-prefers-focus-selector,$c-prefers-focus-selector,clay-insert-before('.cadmin', '.c-prefers-focus ', '&:focus'))} {
1184
+ @include clay-css($ff-only-focus);
1042
1185
 
1043
- > option {
1044
- $ff-only-focus-option: setter(
1045
- map-get($ff-only-focus, option),
1046
- ()
1186
+ $ff-only-focus-option: map-get(
1187
+ $ff-only-focus,
1188
+ option
1047
1189
  );
1048
1190
 
1049
- @include clay-css($ff-only-focus-option);
1050
-
1051
- &:hover {
1052
- @include clay-css(
1053
- map-get($ff-only-focus-option, hover)
1054
- );
1055
- }
1056
-
1057
- &:checked {
1058
- @include clay-css(
1059
- map-get($ff-only-focus-option, checked)
1060
- );
1191
+ @if ($ff-only-focus-option) {
1192
+ > option {
1193
+ @include clay-css(
1194
+ $ff-only-focus-option
1195
+ );
1196
+
1197
+ $_hover: map-get(
1198
+ $ff-only-focus-option,
1199
+ hover
1200
+ );
1201
+
1202
+ @if ($_hover) {
1203
+ &:hover {
1204
+ @include clay-css($_hover);
1205
+ }
1206
+ }
1207
+
1208
+ $_checked: map-get(
1209
+ $ff-only-focus-option,
1210
+ checked
1211
+ );
1212
+
1213
+ @if ($_checked) {
1214
+ &:checked {
1215
+ @include clay-css($_checked);
1216
+ }
1217
+ }
1218
+ }
1061
1219
  }
1062
1220
  }
1063
1221
  }
1064
1222
  }
1065
1223
 
1066
- &:disabled,
1067
- &.disabled {
1068
- $ff-only-disabled: setter(
1069
- map-get($ff-only, disabled),
1070
- ()
1071
- );
1224
+ $ff-only-disabled: map-get($ff-only, disabled);
1072
1225
 
1073
- @include clay-css($ff-only-disabled);
1226
+ @if ($ff-only-disabled) {
1227
+ &:disabled,
1228
+ &.disabled {
1229
+ @include clay-css($ff-only-disabled);
1074
1230
 
1075
- > option {
1076
- $ff-only-disabled-option: setter(
1077
- map-get($ff-only-disabled, option),
1078
- ()
1231
+ $ff-only-disabled-option: map-get(
1232
+ $ff-only-disabled,
1233
+ option
1079
1234
  );
1080
1235
 
1081
- @include clay-css($ff-only-disabled-option);
1236
+ @if ($ff-only-disabled-option) {
1237
+ > option {
1238
+ @include clay-css($ff-only-disabled-option);
1082
1239
 
1083
- &:hover {
1084
- @include clay-css(
1085
- map-get($ff-only-disabled-option, hover)
1086
- );
1087
- }
1240
+ $_hover: map-get(
1241
+ $ff-only-disabled-option,
1242
+ hover
1243
+ );
1088
1244
 
1089
- &:checked {
1090
- @include clay-css(
1091
- map-get($ff-only-disabled-option, checked)
1092
- );
1245
+ @if ($_hover) {
1246
+ &:hover {
1247
+ @include clay-css($_hover);
1248
+ }
1249
+ }
1250
+
1251
+ $_checked: map-get(
1252
+ $ff-only-disabled-option,
1253
+ checked
1254
+ );
1255
+
1256
+ @if ($_checked) {
1257
+ &:checked {
1258
+ @include clay-css($_checked);
1259
+ }
1260
+ }
1261
+ }
1093
1262
  }
1094
1263
  }
1095
1264
  }
1096
1265
 
1097
- option {
1098
- $ff-only-option: setter(map-get($ff-only, option), ());
1266
+ $ff-only-option: map-get($ff-only, option);
1099
1267
 
1100
- @include clay-css($ff-only-option);
1268
+ @if ($ff-only-option) {
1269
+ option {
1270
+ @include clay-css($ff-only-option);
1101
1271
 
1102
- &:hover {
1103
- @include clay-css(map-get($ff-only-option, hover));
1104
- }
1272
+ $_hover: map-get($ff-only-option, hover);
1105
1273
 
1106
- &:checked {
1107
- @include clay-css(
1108
- map-get($ff-only-option, checked)
1109
- );
1274
+ @if ($_hover) {
1275
+ &:hover {
1276
+ @include clay-css($_hover);
1277
+ }
1278
+ }
1279
+
1280
+ $_checked: map-get($ff-only-option, checked);
1281
+
1282
+ @if ($_checked) {
1283
+ &:checked {
1284
+ @include clay-css($_checked);
1285
+ }
1286
+ }
1110
1287
  }
1111
1288
  }
1112
1289
  }
@@ -1202,177 +1379,228 @@
1202
1379
  $enabled: setter(map-get($map, enabled), true);
1203
1380
 
1204
1381
  @if ($enabled) {
1205
- @include clay-css($map);
1206
-
1207
- label {
1208
- @include clay-css(map-get($map, label));
1382
+ @if (length($map) != 0) {
1383
+ @include clay-css($map);
1209
1384
  }
1210
1385
 
1211
- .custom-control-label,
1212
- .form-check-label {
1213
- @include clay-css(map-get($map, custom-control-label));
1214
- }
1386
+ $_label: map-get($map, label);
1215
1387
 
1216
- .form-control {
1217
- @include clay-form-control-variant(map-get($map, form-control));
1388
+ @if ($_label) {
1389
+ label {
1390
+ @include clay-css($_label);
1391
+ }
1218
1392
  }
1219
1393
 
1220
- .form-control[readonly] {
1221
- @include clay-form-control-variant(
1222
- map-deep-get($map, form-control, readonly)
1223
- );
1394
+ $_custom-control-label: map-get($map, custom-control-label);
1395
+
1396
+ @if ($_custom-control-label) {
1397
+ .custom-control-label,
1398
+ .form-check-label {
1399
+ @include clay-css($_custom-control-label);
1400
+ }
1224
1401
  }
1225
1402
 
1226
- .form-feedback-group {
1227
- @include clay-css(map-get($map, form-feedback-group));
1403
+ $_form-control: map-get($map, form-control);
1404
+
1405
+ @if ($_form-control) {
1406
+ .form-control {
1407
+ @include clay-form-control-variant($_form-control);
1408
+ }
1228
1409
  }
1229
1410
 
1230
- .form-feedback-item {
1231
- @include clay-css(map-get($map, form-feedback-item));
1411
+ $_form-control-readonly: map-get($_form-control, readonly);
1412
+
1413
+ @if ($_form-control-readonly) {
1414
+ .form-control[readonly] {
1415
+ @include clay-form-control-variant($_form-control-readonly);
1416
+ }
1232
1417
  }
1233
1418
 
1234
- .form-feedback-indicator {
1235
- @include clay-css(map-get($map, form-feedback-indicator));
1419
+ $_form-feedback-group: map-get($map, form-feedback-group);
1420
+
1421
+ @if ($_form-feedback-group) {
1422
+ .form-feedback-group {
1423
+ @include clay-css($_form-feedback-group);
1424
+ }
1236
1425
  }
1237
1426
 
1238
- .form-feedback-text {
1239
- @include clay-css(map-get($map, form-feedback-text));
1427
+ $_form-feedback-item: map-get($map, form-feedback-item);
1428
+
1429
+ @if ($_form-feedback-item) {
1430
+ .form-feedback-item {
1431
+ @include clay-css($_form-feedback-item);
1432
+ }
1240
1433
  }
1241
1434
 
1242
- select.form-control {
1243
- @include clay-select-variant(
1244
- map-deep-get($map, select, form-control)
1245
- );
1435
+ $_form-feedback-indicator: map-get($map, form-feedback-indicator);
1246
1436
 
1247
- &[size] {
1248
- @include clay-select-variant(
1249
- map-deep-get($map, select, form-control, size)
1250
- );
1437
+ @if ($_form-feedback-indicator) {
1438
+ .form-feedback-indicator {
1439
+ @include clay-css($_form-feedback-indicator);
1251
1440
  }
1441
+ }
1252
1442
 
1253
- &[multiple] {
1254
- @include clay-select-variant(
1255
- map-deep-get($map, select, form-control, multiple)
1256
- );
1443
+ $_form-feedback-text: map-get($map, form-feedback-text);
1444
+
1445
+ @if ($_form-feedback-text) {
1446
+ .form-feedback-text {
1447
+ @include clay-css($_form-feedback-text);
1257
1448
  }
1258
1449
  }
1259
1450
 
1260
- .input-group-item {
1261
- @include clay-css(map-get($map, input-group-item));
1451
+ $_select-form-control: map-deep-get($map, select, form-control);
1262
1452
 
1263
- &:hover {
1264
- .input-group-inset {
1265
- @include clay-css(
1266
- map-deep-get(
1267
- $map,
1268
- input-group-item,
1269
- hover,
1270
- input-group-inset
1271
- )
1272
- );
1453
+ @if ($_select-form-control) {
1454
+ select.form-control {
1455
+ @include clay-select-variant($_select-form-control);
1273
1456
 
1274
- ~ .input-group-inset-item {
1275
- @include clay-css(
1276
- map-deep-get(
1277
- $map,
1278
- input-group-item,
1279
- hover,
1280
- input-group-inset,
1281
- input-group-inset-item
1282
- )
1283
- );
1457
+ $_size: map-get($_select-form-control, size);
1458
+
1459
+ @if ($_size) {
1460
+ &[size] {
1461
+ @include clay-select-variant($_size);
1284
1462
  }
1285
1463
  }
1286
- }
1287
1464
 
1288
- &.focus {
1289
- @include clay-css(
1290
- map-deep-get($map, input-group-item, focus)
1291
- );
1292
-
1293
- .input-group-inset {
1294
- @include clay-css(
1295
- map-deep-get(
1296
- $map,
1297
- input-group-item,
1298
- focus,
1299
- input-group-inset
1300
- )
1301
- );
1465
+ $_multiple: map-get($_select-form-control, multiple);
1302
1466
 
1303
- ~ .input-group-inset-item {
1304
- @include clay-css(
1305
- map-deep-get(
1306
- $map,
1307
- input-group-item,
1308
- focus,
1309
- input-group-inset,
1310
- input-group-inset-item
1311
- )
1312
- );
1467
+ @if ($_multiple) {
1468
+ &[multiple] {
1469
+ @include clay-select-variant($_multiple);
1313
1470
  }
1314
1471
  }
1315
1472
  }
1473
+ }
1316
1474
 
1317
- .input-group-inset {
1318
- @include clay-css(
1319
- map-deep-get($map, input-group-item, input-group-inset)
1320
- );
1475
+ $_input-group-item: map-get($map, input-group-item);
1321
1476
 
1322
- ~ .input-group-inset-item {
1323
- @include clay-css(
1324
- map-deep-get(
1325
- $map,
1326
- input-group-item,
1327
- input-group-inset,
1328
- input-group-inset-item
1329
- )
1330
- );
1477
+ @if ($_input-group-item) {
1478
+ .input-group-item {
1479
+ @include clay-css($_input-group-item);
1480
+
1481
+ $_hover: map-get($_input-group-item, hover);
1482
+
1483
+ @if ($_hover) {
1484
+ &:hover {
1485
+ $_input-group-inset: map-get(
1486
+ $_hover,
1487
+ input-group-inset
1488
+ );
1489
+
1490
+ @if ($_input-group-inset) {
1491
+ .input-group-inset {
1492
+ @include clay-css($_input-group-inset);
1493
+
1494
+ $_input-group-inset-item: map-get(
1495
+ $_input-group-inset,
1496
+ input-group-inset-item
1497
+ );
1498
+
1499
+ @if ($_input-group-inset-item) {
1500
+ ~ .input-group-inset-item {
1501
+ @include clay-css(
1502
+ $_input-group-inset-item
1503
+ );
1504
+ }
1505
+ }
1506
+ }
1507
+ }
1508
+ }
1331
1509
  }
1332
1510
 
1333
- &:hover {
1334
- @include clay-css(
1335
- map-deep-get(
1336
- $map,
1337
- input-group-item,
1338
- input-group-inset,
1339
- hover
1340
- )
1341
- );
1511
+ $_focus: map-get($_input-group-item, focus);
1342
1512
 
1343
- ~ .input-group-inset-item {
1344
- @include clay-css(
1345
- map-deep-get(
1346
- $map,
1347
- input-group-item,
1348
- input-group-inset,
1349
- hover,
1350
- input-group-inset-item
1351
- )
1513
+ @if ($_focus) {
1514
+ &.focus {
1515
+ @include clay-css($_focus);
1516
+
1517
+ $_input-group-inset: map-get(
1518
+ $_focus,
1519
+ input-group-inset
1352
1520
  );
1521
+
1522
+ @if ($_input-group-inset) {
1523
+ .input-group-inset {
1524
+ @include clay-css($_input-group-inset);
1525
+
1526
+ $_input-group-inset-item: map-get(
1527
+ $_input-group-inset,
1528
+ input-group-inset-item
1529
+ );
1530
+
1531
+ @if ($_input-group-inset-item) {
1532
+ ~ .input-group-inset-item {
1533
+ @include clay-css(
1534
+ $_input-group-inset-item
1535
+ );
1536
+ }
1537
+ }
1538
+ }
1539
+ }
1353
1540
  }
1354
1541
  }
1355
1542
 
1356
- &:focus {
1357
- @include clay-css(
1358
- map-deep-get(
1359
- $map,
1360
- input-group-item,
1361
- input-group-inset,
1362
- focus
1363
- )
1364
- );
1543
+ $_input-group-inset: map-get(
1544
+ $_input-group-item,
1545
+ input-group-inset
1546
+ );
1365
1547
 
1366
- ~ .input-group-inset-item {
1367
- @include clay-css(
1368
- map-deep-get(
1369
- $map,
1370
- input-group-item,
1371
- input-group-inset,
1372
- focus,
1373
- input-group-inset-item
1374
- )
1548
+ @if ($_input-group-inset) {
1549
+ .input-group-inset {
1550
+ @include clay-css($_input-group-inset);
1551
+
1552
+ $_input-group-inset-item: map-get(
1553
+ $_input-group-inset,
1554
+ input-group-inset-item
1375
1555
  );
1556
+
1557
+ @if ($_input-group-inset-item) {
1558
+ ~ .input-group-inset-item {
1559
+ @include clay-css($_input-group-inset-item);
1560
+ }
1561
+ }
1562
+
1563
+ $_hover: map-get($_input-group-inset, hover);
1564
+
1565
+ @if ($_hover) {
1566
+ &:hover {
1567
+ @include clay-css($_hover);
1568
+
1569
+ $_input-group-inset-item: map-get(
1570
+ $_hover,
1571
+ input-group-inset-item
1572
+ );
1573
+
1574
+ @if ($_input-group-inset-item) {
1575
+ ~ .input-group-inset-item {
1576
+ @include clay-css(
1577
+ $_input-group-inset-item
1578
+ );
1579
+ }
1580
+ }
1581
+ }
1582
+ }
1583
+
1584
+ $_focus: map-get($_input-group-inset, focus);
1585
+
1586
+ @if ($_focus) {
1587
+ &:focus {
1588
+ @include clay-css($_focus);
1589
+
1590
+ $_input-group-inset-item: map-get(
1591
+ $_focus,
1592
+ input-group-inset-item
1593
+ );
1594
+
1595
+ @if ($_input-group-inset-item) {
1596
+ ~ .input-group-inset-item {
1597
+ @include clay-css(
1598
+ $_input-group-inset-item
1599
+ );
1600
+ }
1601
+ }
1602
+ }
1603
+ }
1376
1604
  }
1377
1605
  }
1378
1606
  }
@@ -2035,7 +2263,7 @@
2035
2263
  );
2036
2264
 
2037
2265
  $form-control-range: setter(map-get($map, form-control-range), ());
2038
- $form-control-range: map-merge(
2266
+ $form-control-range: map-deep-merge(
2039
2267
  $form-control-range,
2040
2268
  (
2041
2269
  appearance:
@@ -2171,7 +2399,7 @@
2171
2399
  );
2172
2400
 
2173
2401
  $hover: setter(map-deep-get($map, form-control-range, hover), ());
2174
- $hover: map-merge(
2402
+ $hover: map-deep-merge(
2175
2403
  $hover,
2176
2404
  (
2177
2405
  cursor:
@@ -2197,7 +2425,7 @@
2197
2425
  )
2198
2426
  );
2199
2427
  $focus: setter(map-deep-get($map, form-control-range, focus), ());
2200
- $focus: map-merge(
2428
+ $focus: map-deep-merge(
2201
2429
  $focus,
2202
2430
  (
2203
2431
  outline:
@@ -2228,7 +2456,7 @@
2228
2456
  );
2229
2457
 
2230
2458
  $disabled: setter(map-deep-get($map, form-control-range, disabled), ());
2231
- $disabled: map-merge(
2459
+ $disabled: map-deep-merge(
2232
2460
  $disabled,
2233
2461
  (
2234
2462
  color:
@@ -2248,7 +2476,7 @@
2248
2476
  map-deep-get($map, disabled, clay-range-thumb),
2249
2477
  setter(map-get($disabled, clay-range-thumb), ())
2250
2478
  );
2251
- $disabled-clay-range-thumb: map-merge(
2479
+ $disabled-clay-range-thumb: map-deep-merge(
2252
2480
  setter(map-get($disabled, clay-range-thumb), ()),
2253
2481
  (
2254
2482
  background-color:
@@ -2300,46 +2528,70 @@
2300
2528
  );
2301
2529
 
2302
2530
  @if ($enabled) {
2303
- @include clay-css($map);
2531
+ @if (length($map) != 0) {
2532
+ @include clay-css($map);
2533
+ }
2304
2534
 
2305
- .tooltip {
2306
- @include clay-css($tooltip);
2535
+ @if (length($tooltip) != 0) {
2536
+ .tooltip {
2537
+ @include clay-css($tooltip);
2538
+ }
2307
2539
  }
2308
2540
 
2309
- .tooltip-inner {
2310
- @include clay-css($tooltip-inner);
2541
+ @if (length($tooltip-inner) != 0) {
2542
+ .tooltip-inner {
2543
+ @include clay-css($tooltip-inner);
2544
+ }
2311
2545
  }
2312
2546
 
2313
- .tooltip-arrow {
2314
- @include clay-css($tooltip-arrow);
2547
+ @if (length($tooltip-arrow) != 0) {
2548
+ .tooltip-arrow {
2549
+ @include clay-css($tooltip-arrow);
2550
+ }
2315
2551
  }
2316
2552
 
2317
- .clay-tooltip-bottom {
2318
- @include clay-css($clay-tooltip-bottom);
2553
+ @if (length($clay-tooltip-bottom) != 0) {
2554
+ .clay-tooltip-bottom {
2555
+ @include clay-css($clay-tooltip-bottom);
2319
2556
 
2320
- .tooltip-arrow {
2321
- @include clay-css($clay-tooltip-bottom-tooltip-arrow);
2557
+ @if (length($clay-tooltip-bottom-tooltip-arrow) != 0) {
2558
+ .tooltip-arrow {
2559
+ @include clay-css(
2560
+ $clay-tooltip-bottom-tooltip-arrow
2561
+ );
2562
+ }
2563
+ }
2322
2564
  }
2323
2565
  }
2324
2566
 
2325
- .clay-tooltip-top {
2326
- @include clay-css($clay-tooltip-top);
2567
+ @if (length($clay-tooltip-top) != 0) {
2568
+ .clay-tooltip-top {
2569
+ @include clay-css($clay-tooltip-top);
2327
2570
 
2328
- .tooltip-arrow {
2329
- @include clay-css($clay-tooltip-top-tooltip-arrow);
2571
+ @if (length($clay-tooltip-top-tooltip-arrow) != 0) {
2572
+ .tooltip-arrow {
2573
+ @include clay-css($clay-tooltip-top-tooltip-arrow);
2574
+ }
2575
+ }
2330
2576
  }
2331
2577
  }
2332
2578
 
2333
- .clay-range-track {
2334
- @include clay-css($clay-range-track);
2579
+ @if (length($clay-range-track) != 0) {
2580
+ .clay-range-track {
2581
+ @include clay-css($clay-range-track);
2582
+ }
2335
2583
  }
2336
2584
 
2337
- .clay-range-progress {
2338
- @include clay-css($clay-range-progress);
2585
+ @if (length($clay-range-progress) != 0) {
2586
+ .clay-range-progress {
2587
+ @include clay-css($clay-range-progress);
2588
+ }
2339
2589
  }
2340
2590
 
2341
- .clay-range-thumb {
2342
- @include clay-css($clay-range-thumb);
2591
+ @if (length($clay-range-thumb) != 0) {
2592
+ .clay-range-thumb {
2593
+ @include clay-css($clay-range-thumb);
2594
+ }
2343
2595
  }
2344
2596
 
2345
2597
  .form-control-range {
@@ -2353,8 +2605,10 @@
2353
2605
  }
2354
2606
  }
2355
2607
 
2356
- &::-moz-range-thumb {
2357
- @include clay-css($moz-range-thumb);
2608
+ @if (length($moz-range-thumb) != 0) {
2609
+ &::-moz-range-thumb {
2610
+ @include clay-css($moz-range-thumb);
2611
+ }
2358
2612
  }
2359
2613
 
2360
2614
  &::-moz-range-track {
@@ -2391,23 +2645,19 @@
2391
2645
  }
2392
2646
 
2393
2647
  // Webkit
2648
+
2394
2649
  &::-webkit-slider-container {
2395
2650
  @include clay-css(
2396
- map-deep-get(
2397
- $map,
2398
- form-control-range,
2399
- webkit-slider-container
2400
- )
2651
+ map-get($form-control-range, webkit-slider-container)
2401
2652
  );
2402
2653
  }
2403
2654
 
2404
- &::-webkit-slider-runnable-track {
2405
- $webkit-slider-runnable-track: map-deep-get(
2406
- $map,
2407
- form-control-range,
2408
- webkit-slider-runnable-track
2409
- );
2655
+ $webkit-slider-runnable-track: map-get(
2656
+ $form-control-range,
2657
+ webkit-slider-runnable-track
2658
+ );
2410
2659
 
2660
+ &::-webkit-slider-runnable-track {
2411
2661
  @if not($webkit-slider-runnable-track) {
2412
2662
  -webkit-appearance: none;
2413
2663
  appearance: none;
@@ -2424,26 +2674,16 @@
2424
2674
  &:hover {
2425
2675
  @include clay-css($hover);
2426
2676
 
2427
- ~ .clay-range-track {
2428
- @include clay-css(
2429
- map-deep-get(
2430
- $map,
2431
- form-control-range,
2432
- hover,
2433
- clay-range-track
2434
- )
2435
- );
2677
+ $_clay-range-track: map-get($hover, clay-range-track);
2678
+
2679
+ @if ($_clay-range-track) {
2680
+ ~ .clay-range-track {
2681
+ @include clay-css($_clay-range-track);
2682
+ }
2436
2683
  }
2437
2684
 
2438
2685
  ~ .clay-range-progress {
2439
- @include clay-css(
2440
- map-deep-get(
2441
- $map,
2442
- form-control-range,
2443
- hover,
2444
- clay-range-progress
2445
- )
2446
- );
2686
+ @include clay-css(map-get($hover, clay-range-progress));
2447
2687
 
2448
2688
  .clay-range-thumb {
2449
2689
  @include clay-css($hover-clay-range-thumb);
@@ -2474,29 +2714,23 @@
2474
2714
  #{if($c-prefers-focus-selector,$c-prefers-focus-selector,clay-insert-before('.cadmin', '.c-prefers-focus ', '&:focus'))} {
2475
2715
  @include clay-css($focus);
2476
2716
 
2477
- ~ .clay-range-track {
2478
- @include clay-css(
2479
- map-deep-get(
2480
- $map,
2481
- form-control-range,
2482
- focus,
2483
- clay-range-track
2484
- )
2485
- );
2717
+ $_clay-range-track: map-get($focus, clay-range-track);
2718
+
2719
+ @if ($_clay-range-track) {
2720
+ ~ .clay-range-track {
2721
+ @include clay-css($_clay-range-track);
2722
+ }
2486
2723
  }
2487
2724
 
2488
2725
  ~ .clay-range-progress {
2489
2726
  @include clay-css(
2490
- map-deep-get(
2491
- $map,
2492
- form-control-range,
2493
- focus,
2494
- clay-range-progress
2495
- )
2727
+ map-get($focus, clay-range-progress)
2496
2728
  );
2497
2729
 
2498
- .clay-range-thumb {
2499
- @include clay-css($focus-clay-range-thumb);
2730
+ @if (length($focus-clay-range-thumb) != 0) {
2731
+ .clay-range-thumb {
2732
+ @include clay-css($focus-clay-range-thumb);
2733
+ }
2500
2734
  }
2501
2735
 
2502
2736
  .tooltip {
@@ -2519,51 +2753,71 @@
2519
2753
  }
2520
2754
  }
2521
2755
 
2522
- &:disabled {
2523
- @include clay-css($disabled);
2756
+ @if (length($disabled) != 0) {
2757
+ &:disabled {
2758
+ @include clay-css($disabled);
2524
2759
 
2525
- ~ .clay-range-track {
2526
- @include clay-css($disabled-clay-range-track);
2527
- }
2760
+ @if (length($disabled-clay-range-track) != 0) {
2761
+ ~ .clay-range-track {
2762
+ @include clay-css($disabled-clay-range-track);
2763
+ }
2764
+ }
2528
2765
 
2529
- ~ .clay-range-progress {
2530
- @include clay-css($disabled-clay-range-progress);
2766
+ @if (length($disabled-clay-range-progress) != 0) {
2767
+ ~ .clay-range-progress {
2768
+ @include clay-css(
2769
+ $disabled-clay-range-progress
2770
+ );
2531
2771
 
2532
- .clay-range-thumb {
2533
- @include clay-css($disabled-clay-range-thumb);
2772
+ @if (length($disabled-clay-range-thumb) != 0) {
2773
+ .clay-range-thumb {
2774
+ @include clay-css(
2775
+ $disabled-clay-range-thumb
2776
+ );
2777
+ }
2778
+ }
2779
+ }
2534
2780
  }
2535
- }
2536
2781
 
2537
- &::-moz-range-thumb {
2538
- @include clay-css($disabled-clay-range-thumb);
2539
- }
2782
+ &::-moz-range-thumb {
2783
+ @include clay-css($disabled-clay-range-thumb);
2784
+ }
2540
2785
 
2541
- &::-ms-thumb {
2542
- @include clay-css($disabled-clay-range-thumb);
2543
- }
2786
+ &::-ms-thumb {
2787
+ @include clay-css($disabled-clay-range-thumb);
2788
+ }
2544
2789
 
2545
- &::-webkit-slider-thumb {
2546
- @include clay-css($disabled-clay-range-thumb);
2790
+ &::-webkit-slider-thumb {
2791
+ @include clay-css($disabled-clay-range-thumb);
2792
+ }
2547
2793
  }
2548
2794
  }
2549
2795
  }
2550
2796
 
2551
- &[data-label-min],
2552
- &[data-label-max] {
2553
- @include clay-css($data-label-min-max);
2797
+ @if (length($data-label-min-max) != 0) {
2798
+ &[data-label-min],
2799
+ &[data-label-max] {
2800
+ @include clay-css($data-label-min-max);
2801
+ }
2554
2802
  }
2555
2803
 
2556
- &[data-label-min]::before {
2557
- @include clay-css($data-label-min-before);
2804
+ @if (length($data-label-min-before) != 0) {
2805
+ &[data-label-min]::before {
2806
+ @include clay-css($data-label-min-before);
2807
+ }
2558
2808
  }
2559
2809
 
2560
- &[data-label-max]::after {
2561
- @include clay-css($data-label-max-after);
2810
+ @if (length($data-label-max-after) != 0) {
2811
+ &[data-label-max]::after {
2812
+ @include clay-css($data-label-max-after);
2813
+ }
2562
2814
  }
2563
2815
 
2564
- &::after,
2565
- &::before {
2566
- @include clay-css($before-after);
2816
+ @if (length($before-after) != 0) {
2817
+ &::after,
2818
+ &::before {
2819
+ @include clay-css($before-after);
2820
+ }
2567
2821
  }
2568
2822
  }
2569
2823
  }
@@ -2754,10 +3008,14 @@
2754
3008
  );
2755
3009
 
2756
3010
  @if ($enabled) {
2757
- @include clay-css($map);
3011
+ @if (length($map) != 0) {
3012
+ @include clay-css($map);
3013
+ }
2758
3014
 
2759
- .clay-range-input {
2760
- @include clay-range-input-variant($clay-range-input);
3015
+ @if (length($clay-range-input) != 0) {
3016
+ .clay-range-input {
3017
+ @include clay-range-input-variant($clay-range-input);
3018
+ }
2761
3019
  }
2762
3020
  }
2763
3021
  }