claritas-web-framework 8.5.8 → 8.5.9

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 (86) hide show
  1. package/.prettierrc +10 -10
  2. package/README.md +1 -1
  3. package/dist/index.css +1 -1
  4. package/index.html +20 -20
  5. package/index.js +2 -2
  6. package/package.json +33 -33
  7. package/sass/_functions.scss +55 -55
  8. package/sass/_helpers.scss +8 -8
  9. package/sass/_mixins.scss +12 -12
  10. package/sass/_modules.scss +30 -30
  11. package/sass/_reboot.scss +264 -264
  12. package/sass/_root.scss +56 -56
  13. package/sass/_utilities.scss +17 -17
  14. package/sass/_variables.scss +445 -445
  15. package/sass/helpers/_container.scss +11 -11
  16. package/sass/helpers/_embed.scss +36 -36
  17. package/sass/helpers/_grid.scss +53 -53
  18. package/sass/helpers/_image.scss +5 -5
  19. package/sass/helpers/_link.scss +15 -15
  20. package/sass/helpers/_rfs.scss +303 -303
  21. package/sass/helpers/_screenReader.scss +13 -13
  22. package/sass/helpers/_wrap.scss +5 -5
  23. package/sass/index.scss +12 -12
  24. package/sass/mixins/_breakpoints.scss +133 -133
  25. package/sass/mixins/_button.scss +116 -116
  26. package/sass/mixins/_caret.scss +41 -41
  27. package/sass/mixins/_clearfix.scss +7 -7
  28. package/sass/mixins/_colors.scss +23 -23
  29. package/sass/mixins/_container.scss +21 -21
  30. package/sass/mixins/_gradient.scss +55 -55
  31. package/sass/mixins/_grid.scss +156 -156
  32. package/sass/mixins/_group.scss +70 -70
  33. package/sass/mixins/_list.scss +18 -18
  34. package/sass/mixins/_screenReader.scss +22 -22
  35. package/sass/mixins/_wrap.scss +7 -7
  36. package/sass/modules/_alert.scss +60 -60
  37. package/sass/modules/_breadcrumbs.scss +43 -43
  38. package/sass/modules/_button.scss +170 -170
  39. package/sass/modules/_card.scss +107 -107
  40. package/sass/modules/_close.scss +59 -59
  41. package/sass/modules/_details.scss +48 -48
  42. package/sass/modules/_dialog.scss +47 -47
  43. package/sass/modules/_dropdown.scss +44 -43
  44. package/sass/modules/_form.scss +261 -261
  45. package/sass/modules/_list.scss +78 -78
  46. package/sass/modules/_loader.scss +183 -183
  47. package/sass/modules/_modal.scss +45 -45
  48. package/sass/modules/_nav.scss +136 -135
  49. package/sass/modules/_pill.scss +61 -61
  50. package/sass/modules/_table.scss +96 -96
  51. package/sass/modules/_tabs.scss +88 -93
  52. package/sass/modules/_tag.scss +72 -72
  53. package/sass/modules/_tile.scss +101 -101
  54. package/sass/modules/_tooltip.scss +108 -108
  55. package/sass/modules/form/_checkbox.scss +78 -78
  56. package/sass/modules/form/_file.scss +149 -149
  57. package/sass/modules/form/_formFieldGroup.scss +60 -60
  58. package/sass/modules/form/_output.scss +6 -6
  59. package/sass/modules/form/_progress.scss +55 -55
  60. package/sass/modules/form/_radio.scss +57 -57
  61. package/sass/modules/form/_range.scss +144 -144
  62. package/sass/modules/form/_select.scss +22 -22
  63. package/sass/modules/form/_text.scss +28 -28
  64. package/sass/modules/form/_textarea.scss +3 -3
  65. package/sass/modules/form/_toggle.scss +68 -68
  66. package/sass/utilities/_align.scss +25 -25
  67. package/sass/utilities/_border.scss +59 -59
  68. package/sass/utilities/_colors.scss +76 -76
  69. package/sass/utilities/_display.scss +25 -25
  70. package/sass/utilities/_flex.scss +65 -65
  71. package/sass/utilities/_float.scss +17 -17
  72. package/sass/utilities/_order.scss +23 -23
  73. package/sass/utilities/_overflow.scss +25 -25
  74. package/sass/utilities/_pointerEvents.scss +17 -17
  75. package/sass/utilities/_position.scss +59 -59
  76. package/sass/utilities/_shadow.scss +7 -7
  77. package/sass/utilities/_size.scss +118 -118
  78. package/sass/utilities/_spacing.scss +107 -107
  79. package/sass/utilities/_translate.scss +15 -15
  80. package/sass/utilities/_typography.scss +62 -62
  81. package/sass/utilities/_visibility.scss +17 -17
  82. package/sass/utilities/_zIndex.scss +15 -15
  83. package/tests.js +5 -5
  84. package/webpack.config.js +27 -27
  85. package/webpack.plugins.js +15 -15
  86. package/webpack.rules.js +8 -8
@@ -1,22 +1,22 @@
1
- @mixin make-screen-reader($focusable: true) {
2
- position: absolute;
3
- width: 1px;
4
- height: 1px;
5
- padding: 0;
6
- overflow: hidden;
7
- clip: rect(0, 0, 0, 0);
8
- white-space: nowrap;
9
- border: 0;
10
-
11
- &:active,
12
- &:focus {
13
- @if $focusable {
14
- position: static;
15
- width: auto;
16
- height: auto;
17
- overflow: visible;
18
- clip: auto;
19
- white-space: normal;
20
- }
21
- }
22
- }
1
+ @mixin make-screen-reader($focusable: true) {
2
+ position: absolute;
3
+ width: 1px;
4
+ height: 1px;
5
+ padding: 0;
6
+ overflow: hidden;
7
+ clip: rect(0, 0, 0, 0);
8
+ white-space: nowrap;
9
+ border: 0;
10
+
11
+ &:active,
12
+ &:focus {
13
+ @if $focusable {
14
+ position: static;
15
+ width: auto;
16
+ height: auto;
17
+ overflow: visible;
18
+ clip: auto;
19
+ white-space: normal;
20
+ }
21
+ }
22
+ }
@@ -1,7 +1,7 @@
1
- @mixin make-wrap-overflow() {
2
- display: block;
3
- width: 100%;
4
- overflow-x: auto;
5
- -webkit-overflow-scrolling: touch;
6
- position: static !important;
7
- }
1
+ @mixin make-wrap-overflow() {
2
+ display: block;
3
+ width: 100%;
4
+ overflow-x: auto;
5
+ -webkit-overflow-scrolling: touch;
6
+ position: static !important;
7
+ }
@@ -1,60 +1,60 @@
1
- @use "sass:color";
2
- @use "./../variables" as *;
3
-
4
- .alert {
5
- --alert-padding-x: var(--spacer);
6
- --alert-padding-y: var(--spacer);
7
- --alert-border-width: 1px;
8
- --alert-border-style: solid;
9
- --alert-border-color: var(--border-color-main);
10
- --alert-border-radius: var(--border-radius-default);
11
- --alert-background: color-mix(in oklab, var(--body-color), #fff #{$alert-background-l});
12
- --alert-color: color-mix(in oklab, var(--body-color), #000 #{$alert-color-l});
13
- --alert-link-color: color-mix(in oklab, var(--body-color), #000 #{$alert-color-l});
14
- --alert-link-hover-color: color-mix(in oklab, var(--body-color), #000 #{$alert-color-l + $link-shade-percentage});
15
-
16
- color: var(--alert-color);
17
- border: var(--alert-border-width) var(--alert-border-style) var(--alert-border-color);
18
- padding: var(--alert-padding-y) var(--alert-padding-x);
19
- border-radius: var(--alert-border-radius);
20
- background: var(--alert-background);
21
- position: relative;
22
-
23
- $alert-margin-fallback: if($enable-margins, var(--spacer), 0);
24
-
25
- margin-bottom: var(--alert-margin-bottom, #{$alert-margin-fallback});
26
-
27
- @each $key in (1, 2, 3, 4, 5, 6) {
28
- h#{$key},
29
- .h#{$key} {
30
- --color: var(--alert-color);
31
- }
32
- }
33
-
34
- & > * {
35
- &:last-child {
36
- margin-bottom: 0;
37
- }
38
- }
39
-
40
- & a:not(.button),
41
- & .button--unstyled {
42
- color: var(--alert-link-color);
43
- font-weight: 600;
44
-
45
- &:hover,
46
- &:focus {
47
- color: var(--alert-link-hover-color);
48
- }
49
- }
50
- }
51
-
52
- @each $key, $value in $all-colors {
53
- .alert--#{$key} {
54
- --alert-border-color: color-mix(in oklab, var(--#{$key}), #fff #{$alert-border-l});
55
- --alert-background: color-mix(in oklab, var(--#{$key}), #fff #{$alert-background-l});
56
- --alert-color: color-mix(in oklab, var(--#{$key}), #000 #{$alert-color-l});
57
- --alert-link-color: color-mix(in oklab, var(--#{$key}), #000 #{$alert-color-l});
58
- --alert-link-hover-color: color-mix(in oklab, var(--#{$key}), #000 #{$alert-color-l + $link-shade-percentage});
59
- }
60
- }
1
+ @use "sass:color";
2
+ @use "./../variables" as *;
3
+
4
+ .alert {
5
+ --alert-padding-x: var(--spacer);
6
+ --alert-padding-y: var(--spacer);
7
+ --alert-border-width: 1px;
8
+ --alert-border-style: solid;
9
+ --alert-border-color: var(--border-color-main);
10
+ --alert-border-radius: var(--border-radius-default);
11
+ --alert-background: color-mix(in oklab, var(--body-color), #fff #{$alert-background-l});
12
+ --alert-color: color-mix(in oklab, var(--body-color), #000 #{$alert-color-l});
13
+ --alert-link-color: color-mix(in oklab, var(--body-color), #000 #{$alert-color-l});
14
+ --alert-link-hover-color: color-mix(in oklab, var(--body-color), #000 #{$alert-color-l + $link-shade-percentage});
15
+
16
+ color: var(--alert-color);
17
+ border: var(--alert-border-width) var(--alert-border-style) var(--alert-border-color);
18
+ padding: var(--alert-padding-y) var(--alert-padding-x);
19
+ border-radius: var(--alert-border-radius);
20
+ background: var(--alert-background);
21
+ position: relative;
22
+
23
+ $alert-margin-fallback: if($enable-margins, var(--spacer), 0);
24
+
25
+ margin-bottom: var(--alert-margin-bottom, #{$alert-margin-fallback});
26
+
27
+ @each $key in (1, 2, 3, 4, 5, 6) {
28
+ h#{$key},
29
+ .h#{$key} {
30
+ --color: var(--alert-color);
31
+ }
32
+ }
33
+
34
+ & > * {
35
+ &:last-child {
36
+ margin-bottom: 0;
37
+ }
38
+ }
39
+
40
+ & a:not(.button),
41
+ & .button--unstyled {
42
+ color: var(--alert-link-color);
43
+ font-weight: 600;
44
+
45
+ &:hover,
46
+ &:focus {
47
+ color: var(--alert-link-hover-color);
48
+ }
49
+ }
50
+ }
51
+
52
+ @each $key, $value in $all-colors {
53
+ .alert--#{$key} {
54
+ --alert-border-color: color-mix(in oklab, var(--#{$key}), #fff #{$alert-border-l});
55
+ --alert-background: color-mix(in oklab, var(--#{$key}), #fff #{$alert-background-l});
56
+ --alert-color: color-mix(in oklab, var(--#{$key}), #000 #{$alert-color-l});
57
+ --alert-link-color: color-mix(in oklab, var(--#{$key}), #000 #{$alert-color-l});
58
+ --alert-link-hover-color: color-mix(in oklab, var(--#{$key}), #000 #{$alert-color-l + $link-shade-percentage});
59
+ }
60
+ }
@@ -1,43 +1,43 @@
1
- @use "./../variables" as *;
2
- @use "./../functions" as *;
3
- @use "./../mixins/list" as *;
4
-
5
- .breadcrumbs {
6
- --breadcrumb-color: var(--medium);
7
- --breadcrumb-hover-color: color-mix(in oklab, var(--medium), #000 #{$link-shade-percentage});
8
-
9
- @include make-list-unstyled;
10
-
11
- display: flex;
12
- flex-wrap: wrap;
13
- color: var(--breadcrumb-color);
14
-
15
- & li {
16
- padding-right: 1em;
17
- position: relative;
18
-
19
- &:not(:last-child) {
20
- &::after {
21
- content: "";
22
- position: absolute;
23
- width: 1em;
24
- height: 0.85em;
25
- background-image: escape-svg($breadcrumb-indicator);
26
- background-repeat: no-repeat;
27
- background-position: center;
28
- background-size: auto 100%;
29
- top: 50%;
30
- right: 0;
31
- transform: translateY(-50%);
32
- }
33
- }
34
-
35
- & a {
36
- color: var(--breadcrumb-color);
37
-
38
- &:hover {
39
- color: var(--breadcrumb-hover-color);
40
- }
41
- }
42
- }
43
- }
1
+ @use "./../variables" as *;
2
+ @use "./../functions" as *;
3
+ @use "./../mixins/list" as *;
4
+
5
+ .breadcrumbs {
6
+ --breadcrumb-color: var(--medium);
7
+ --breadcrumb-hover-color: color-mix(in oklab, var(--medium), #000 #{$link-shade-percentage});
8
+
9
+ @include make-list-unstyled;
10
+
11
+ display: flex;
12
+ flex-wrap: wrap;
13
+ color: var(--breadcrumb-color);
14
+
15
+ & li {
16
+ padding-right: 1em;
17
+ position: relative;
18
+
19
+ &:not(:last-child) {
20
+ &::after {
21
+ content: "";
22
+ position: absolute;
23
+ width: 1em;
24
+ height: 0.85em;
25
+ background-image: escape-svg($breadcrumb-indicator);
26
+ background-repeat: no-repeat;
27
+ background-position: center;
28
+ background-size: auto 100%;
29
+ top: 50%;
30
+ right: 0;
31
+ transform: translateY(-50%);
32
+ }
33
+ }
34
+
35
+ & a {
36
+ color: var(--breadcrumb-color);
37
+
38
+ &:hover {
39
+ color: var(--breadcrumb-hover-color);
40
+ }
41
+ }
42
+ }
43
+ }
@@ -1,170 +1,170 @@
1
- @use "./../helpers" as *;
2
- @use "./../variables" as *;
3
- @use "./../mixins" as *;
4
-
5
- .button {
6
- // Changing
7
- --button-color: var(--body-color);
8
- --button-hover-color: var(--body-color);
9
- --button-focus-color: color-mix(in oklab, var(--body-color), #000 #{$link-shade-percentage});
10
- --button-active-color: color-mix(in oklab, var(--body-color), #000 #{$link-shade-percentage});
11
- --button-disabled-color: hsl(from var(--body-color) h s l / #{$color-disabled-alpha});
12
- --button-border-color: var(--border-color-main);
13
- --button-hover-border-color: var(--border-color-hover-main);
14
- --button-focus-border-color: var(--border-color-focus-main);
15
- --button-active-border-color: var(--border-color-active-main);
16
- --button-disabled-border-color: var(--border-color-disabled-main);
17
- --button-background: var(--white);
18
- --button-hover-background: var(--white);
19
- --button-focus-background: var(--white);
20
- --button-active-background: color-mix(in oklab, var(--body-color), #fff 95%);
21
- --button-disabled-background: hsl(from var(--white) h s l / #{$color-disabled-alpha});
22
- --button-box-shadow: 0 0 0 0.125em transparent;
23
- --button-hover-box-shadow: 0 0 0 0.125em transparent;
24
- --button-focus-box-shadow: 0 0 0 0.125em hsl(from var(--body-color) h s l / 20%);
25
- --button-active-box-shadow: 0 0 0 0.125em hsl(from var(--body-color) h s l / 20%);
26
- --button-disabled-box-shadow: 0 0 0 0.125em transparent;
27
-
28
- // Static
29
- --button-padding-x: #{$button-padding-x};
30
- --button-padding-y: #{$button-padding-y};
31
- --button-small-padding-x: #{$button-small-padding-x};
32
- --button-small-padding-y: #{$button-small-padding-y};
33
- --button-large-padding-x: #{$button-large-padding-x};
34
- --button-large-padding-y: #{$button-large-padding-y};
35
- --button-border-width: 1px;
36
- --button-border-style: solid;
37
- --button-border-radius: #{$button-border-radius};
38
- --button-small-border-radius: #{$button-small-border-radius};
39
- --button-large-border-radius: #{$button-large-border-radius};
40
- --button-round-border-radius: #{$button-round-border-radius};
41
- --button-font-weight: #{$button-font-weight};
42
- --button-line-height: #{$button-line-height};
43
- --button-text-decoration: none;
44
- --button-hover-text-decoration: none;
45
- --button-white-space: #{$button-white-space};
46
-
47
- @include rfs($button-font-size, --button-font-size);
48
-
49
- @include font-size(var(--button-font-size));
50
-
51
- // Variable references
52
- background: var(--button-background);
53
- border-radius: var(--button-border-radius);
54
- border: var(--button-border-width) var(--button-border-style) var(--button-border-color);
55
- box-shadow: var(--button-box-shadow);
56
- color: var(--button-color);
57
- font-weight: var(--button-font-weight);
58
- line-height: var(--button-line-height);
59
- padding: var(--button-padding-y) var(--button-padding-x);
60
- text-decoration: var(--button-text-decoration);
61
- white-space: var(--button-white-space);
62
-
63
- // Defaults
64
- display: inline-flex;
65
- text-align: center;
66
- align-items: center;
67
- justify-content: center;
68
- vertical-align: middle;
69
- cursor: pointer;
70
- user-select: none;
71
- outline: 0;
72
- transition: $form-transition;
73
-
74
- &.button--rounded {
75
- border-radius: var(--button-round-border-radius);
76
- }
77
-
78
- &.button--large {
79
- padding: var(--button-large-padding-y) var(--button-large-padding-x);
80
-
81
- @include rfs($button-large-font-size, --button-font-size);
82
-
83
- @include font-size(var(--button-font-size));
84
-
85
- &:not(.button--rounded) {
86
- border-radius: var(--button-large-border-radius);
87
- }
88
- }
89
-
90
- &.button--small {
91
- padding: var(--button-small-padding-y) var(--button-small-padding-x);
92
-
93
- @include rfs($button-small-font-size, --button-font-size);
94
-
95
- @include font-size(var(--button-font-size));
96
-
97
- &:not(.button--rounded) {
98
- border-radius: var(--button-small-border-radius);
99
- }
100
- }
101
-
102
- &:hover {
103
- color: var(--button-hover-color);
104
- background: var(--button-hover-background);
105
- border-color: var(--button-hover-border-color);
106
- box-shadow: var(--button-hover-box-shadow);
107
- text-decoration: var(--button-hover-text-decoration);
108
- }
109
-
110
- &:focus-visible {
111
- color: var(--button-focus-color);
112
- background: var(--button-focus-background);
113
- border-color: var(--button-focus-border-color);
114
- box-shadow: var(--button-focus-box-shadow);
115
- z-index: 1;
116
- }
117
-
118
- &:first-child:active,
119
- &.active,
120
- &.show {
121
- color: var(--button-active-color);
122
- background: var(--button-active-background);
123
- border-color: var(--button-active-border-color);
124
- box-shadow: var(--button-active-box-shadow);
125
- }
126
-
127
- &.button--link {
128
- @include button-variant-link("primary");
129
- }
130
-
131
- &.button--unstyled {
132
- @include button-variant-unstyled("body-color");
133
- }
134
-
135
- &:disabled,
136
- &.disabled,
137
- fieldset:disabled & {
138
- color: var(--button-disabled-color);
139
- background: var(--button-disabled-background);
140
- border-color: var(--button-disabled-border-color);
141
- box-shadow: var(--button-disabled-box-shadow);
142
- pointer-events: none;
143
- }
144
- }
145
-
146
- .buttons {
147
- @include make-group-row;
148
-
149
- &.buttons--grouped {
150
- @include make-grouped-row(".button");
151
- }
152
- }
153
-
154
- @each $key, $value in $all-colors {
155
- .button--#{$key} {
156
- @include button-variant($key, $value);
157
-
158
- &.button--outline {
159
- @include button-variant-outline($key, $value);
160
- }
161
-
162
- &.button--link {
163
- @include button-variant-link($key);
164
- }
165
-
166
- &.button--unstyled {
167
- @include button-variant-unstyled($key);
168
- }
169
- }
170
- }
1
+ @use "./../helpers" as *;
2
+ @use "./../variables" as *;
3
+ @use "./../mixins" as *;
4
+
5
+ .button {
6
+ // Changing
7
+ --button-color: var(--body-color);
8
+ --button-hover-color: var(--body-color);
9
+ --button-focus-color: color-mix(in oklab, var(--body-color), #000 #{$link-shade-percentage});
10
+ --button-active-color: color-mix(in oklab, var(--body-color), #000 #{$link-shade-percentage});
11
+ --button-disabled-color: hsl(from var(--body-color) h s l / #{$color-disabled-alpha});
12
+ --button-border-color: var(--border-color-main);
13
+ --button-hover-border-color: var(--border-color-hover-main);
14
+ --button-focus-border-color: var(--border-color-focus-main);
15
+ --button-active-border-color: var(--border-color-active-main);
16
+ --button-disabled-border-color: var(--border-color-disabled-main);
17
+ --button-background: var(--white);
18
+ --button-hover-background: var(--white);
19
+ --button-focus-background: var(--white);
20
+ --button-active-background: color-mix(in oklab, var(--body-color), #fff 95%);
21
+ --button-disabled-background: hsl(from var(--white) h s l / #{$color-disabled-alpha});
22
+ --button-box-shadow: 0 0 0 0.125em transparent;
23
+ --button-hover-box-shadow: 0 0 0 0.125em transparent;
24
+ --button-focus-box-shadow: 0 0 0 0.125em hsl(from var(--body-color) h s l / 20%);
25
+ --button-active-box-shadow: 0 0 0 0.125em hsl(from var(--body-color) h s l / 20%);
26
+ --button-disabled-box-shadow: 0 0 0 0.125em transparent;
27
+
28
+ // Static
29
+ --button-padding-x: #{$button-padding-x};
30
+ --button-padding-y: #{$button-padding-y};
31
+ --button-small-padding-x: #{$button-small-padding-x};
32
+ --button-small-padding-y: #{$button-small-padding-y};
33
+ --button-large-padding-x: #{$button-large-padding-x};
34
+ --button-large-padding-y: #{$button-large-padding-y};
35
+ --button-border-width: 1px;
36
+ --button-border-style: solid;
37
+ --button-border-radius: #{$button-border-radius};
38
+ --button-small-border-radius: #{$button-small-border-radius};
39
+ --button-large-border-radius: #{$button-large-border-radius};
40
+ --button-round-border-radius: #{$button-round-border-radius};
41
+ --button-font-weight: #{$button-font-weight};
42
+ --button-line-height: #{$button-line-height};
43
+ --button-text-decoration: none;
44
+ --button-hover-text-decoration: none;
45
+ --button-white-space: #{$button-white-space};
46
+
47
+ @include rfs($button-font-size, --button-font-size);
48
+
49
+ @include font-size(var(--button-font-size));
50
+
51
+ // Variable references
52
+ background: var(--button-background);
53
+ border-radius: var(--button-border-radius);
54
+ border: var(--button-border-width) var(--button-border-style) var(--button-border-color);
55
+ box-shadow: var(--button-box-shadow);
56
+ color: var(--button-color);
57
+ font-weight: var(--button-font-weight);
58
+ line-height: var(--button-line-height);
59
+ padding: var(--button-padding-y) var(--button-padding-x);
60
+ text-decoration: var(--button-text-decoration);
61
+ white-space: var(--button-white-space);
62
+
63
+ // Defaults
64
+ display: inline-flex;
65
+ text-align: center;
66
+ align-items: center;
67
+ justify-content: center;
68
+ vertical-align: middle;
69
+ cursor: pointer;
70
+ user-select: none;
71
+ outline: 0;
72
+ transition: $form-transition;
73
+
74
+ &.button--rounded {
75
+ border-radius: var(--button-round-border-radius);
76
+ }
77
+
78
+ &.button--large {
79
+ padding: var(--button-large-padding-y) var(--button-large-padding-x);
80
+
81
+ @include rfs($button-large-font-size, --button-font-size);
82
+
83
+ @include font-size(var(--button-font-size));
84
+
85
+ &:not(.button--rounded) {
86
+ border-radius: var(--button-large-border-radius);
87
+ }
88
+ }
89
+
90
+ &.button--small {
91
+ padding: var(--button-small-padding-y) var(--button-small-padding-x);
92
+
93
+ @include rfs($button-small-font-size, --button-font-size);
94
+
95
+ @include font-size(var(--button-font-size));
96
+
97
+ &:not(.button--rounded) {
98
+ border-radius: var(--button-small-border-radius);
99
+ }
100
+ }
101
+
102
+ &:hover {
103
+ color: var(--button-hover-color);
104
+ background: var(--button-hover-background);
105
+ border-color: var(--button-hover-border-color);
106
+ box-shadow: var(--button-hover-box-shadow);
107
+ text-decoration: var(--button-hover-text-decoration);
108
+ }
109
+
110
+ &:focus-visible {
111
+ color: var(--button-focus-color);
112
+ background: var(--button-focus-background);
113
+ border-color: var(--button-focus-border-color);
114
+ box-shadow: var(--button-focus-box-shadow);
115
+ z-index: 1;
116
+ }
117
+
118
+ &:first-child:active,
119
+ &.active,
120
+ &.show {
121
+ color: var(--button-active-color);
122
+ background: var(--button-active-background);
123
+ border-color: var(--button-active-border-color);
124
+ box-shadow: var(--button-active-box-shadow);
125
+ }
126
+
127
+ &.button--link {
128
+ @include button-variant-link("primary");
129
+ }
130
+
131
+ &.button--unstyled {
132
+ @include button-variant-unstyled("body-color");
133
+ }
134
+
135
+ &:disabled,
136
+ &.disabled,
137
+ fieldset:disabled & {
138
+ color: var(--button-disabled-color);
139
+ background: var(--button-disabled-background);
140
+ border-color: var(--button-disabled-border-color);
141
+ box-shadow: var(--button-disabled-box-shadow);
142
+ pointer-events: none;
143
+ }
144
+ }
145
+
146
+ .buttons {
147
+ @include make-group-row;
148
+
149
+ &.buttons--grouped {
150
+ @include make-grouped-row(".button");
151
+ }
152
+ }
153
+
154
+ @each $key, $value in $all-colors {
155
+ .button--#{$key} {
156
+ @include button-variant($key, $value);
157
+
158
+ &.button--outline {
159
+ @include button-variant-outline($key, $value);
160
+ }
161
+
162
+ &.button--link {
163
+ @include button-variant-link($key);
164
+ }
165
+
166
+ &.button--unstyled {
167
+ @include button-variant-unstyled($key);
168
+ }
169
+ }
170
+ }