@wwtdev/bsds-css 2.5.1 → 2.6.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.
- package/README.md +36 -8
- package/dist/components/_badge.scss +1 -1
- package/dist/components/_banner.scss +1 -1
- package/dist/components/_buttons.scss +85 -27
- package/dist/components/_circle-buttons.scss +108 -49
- package/dist/components/_dropdown-options.scss +1 -1
- package/dist/components/_dropdown.scss +1 -1
- package/dist/components/_filter-buttons.scss +15 -8
- package/dist/components/_form-booleans.scss +41 -76
- package/dist/components/_form-character-count.scss +1 -1
- package/dist/components/_form-hints.scss +7 -3
- package/dist/components/_form-input-composite.scss +1 -1
- package/dist/components/_form-text-fields.scss +1 -1
- package/dist/components/_modal.scss +2 -1
- package/dist/components/_timeline.scss +1 -1
- package/dist/components/badge.css +1 -1
- package/dist/components/banner.css +1 -1
- package/dist/components/buttons.css +84 -26
- package/dist/components/circle-buttons.css +108 -49
- package/dist/components/dropdown-options.css +1 -1
- package/dist/components/dropdown.css +1 -1
- package/dist/components/filter-buttons.css +15 -8
- package/dist/components/form-booleans.css +41 -76
- package/dist/components/form-character-count.css +1 -1
- package/dist/components/form-hints.css +7 -3
- package/dist/components/form-input-composite.css +1 -1
- package/dist/components/form-text-fields.css +1 -1
- package/dist/components/modal.css +2 -2
- package/dist/components/timeline.css +1 -1
- package/dist/wwt-bsds-preset.js +3 -0
- package/dist/wwt-bsds-wc-base.css +5 -2
- package/dist/wwt-bsds.css +280 -191
- package/dist/wwt-bsds.min.css +1 -1
- package/package.json +1 -1
package/dist/wwt-bsds.css
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
--bs-inherit: inherit;
|
|
7
7
|
--bs-current: currentColor;
|
|
8
8
|
--bs-white: #ffffff;
|
|
9
|
+
--bs-white-10: rgba(255, 255, 255, 0.1);
|
|
9
10
|
--bs-black: #0a0b19;
|
|
10
11
|
--bs-blue-10: rgba(0, 134, 234, 0.1);
|
|
11
12
|
--bs-blue-100: #99cff7;
|
|
@@ -24,6 +25,7 @@
|
|
|
24
25
|
--bs-plum-200: #7766b7;
|
|
25
26
|
--bs-plum-300: #49339f;
|
|
26
27
|
--bs-plum-400: #1c0087;
|
|
28
|
+
--bs-royal-10: rgba(22, 47, 180, 0.1);
|
|
27
29
|
--bs-royal-100: #c5cceb;
|
|
28
30
|
--bs-royal-200: #7585d1;
|
|
29
31
|
--bs-royal-300: #5365c4;
|
|
@@ -44,6 +46,7 @@
|
|
|
44
46
|
--bs-orange-300: #f97c4c;
|
|
45
47
|
--bs-orange-400: #fb550e;
|
|
46
48
|
--bs-orange-500: #c33d04;
|
|
49
|
+
--bs-pink-10: rgba(227, 28, 121, 0.1);
|
|
47
50
|
--bs-pink-100: #f6cbe0;
|
|
48
51
|
--bs-pink-200: #eb7eaf;
|
|
49
52
|
--bs-pink-300: #e45e9b;
|
|
@@ -290,7 +293,7 @@ button {
|
|
|
290
293
|
|
|
291
294
|
--bs-ink-accent: var(--bs-plum-400);
|
|
292
295
|
--bs-ink-base: var(--bs-black);
|
|
293
|
-
--bs-ink-disabled:
|
|
296
|
+
--bs-ink-disabled: rgba(78, 79, 95, 0.6); /* --bs-gray-400 at .6 */
|
|
294
297
|
--bs-ink-light: var(--bs-gray-400);
|
|
295
298
|
--bs-ink-invert-base: var(--bs-gray-100);
|
|
296
299
|
--bs-ink-invert-medium: var(--bs-gray-200);
|
|
@@ -394,7 +397,7 @@ button {
|
|
|
394
397
|
|
|
395
398
|
--bs-ink-accent: var(--bs-gray-100);
|
|
396
399
|
--bs-ink-base: var(--bs-gray-100);
|
|
397
|
-
--bs-ink-disabled:
|
|
400
|
+
--bs-ink-disabled: rgba(163, 164, 183, 0.6); /* --bs-gray-300 at .6 opacity */
|
|
398
401
|
--bs-ink-invert-base: var(--bs-black);
|
|
399
402
|
--bs-ink-invert-medium: var(--bs-gray-500);
|
|
400
403
|
--bs-ink-invert-light: var(--bs-gray-400);
|
|
@@ -956,7 +959,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
956
959
|
border-block-start-color: transparent;
|
|
957
960
|
}
|
|
958
961
|
.bs-badge {
|
|
959
|
-
--badge-bg: var(--bs-red-
|
|
962
|
+
--badge-bg: var(--bs-red-400);
|
|
960
963
|
--badge-text: var(--bs-white);
|
|
961
964
|
display: inline-block;
|
|
962
965
|
}
|
|
@@ -1061,7 +1064,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1061
1064
|
padding-right: 1.25rem;
|
|
1062
1065
|
}
|
|
1063
1066
|
.bs-banner :where(.bs-banner-content p a) {
|
|
1064
|
-
color: var(--bs-
|
|
1067
|
+
color: var(--bs-blue-lightest);
|
|
1065
1068
|
text-decoration: underline;
|
|
1066
1069
|
}
|
|
1067
1070
|
.bs-banner :where(.bs-banner-content button) {
|
|
@@ -1101,7 +1104,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1101
1104
|
--dropdown-width: 100%;
|
|
1102
1105
|
--dropdown-transform: translate(0, 100%);
|
|
1103
1106
|
|
|
1104
|
-
background-color: var(--bs-bg-base-
|
|
1107
|
+
background-color: var(--bs-bg-base-to-medium);
|
|
1105
1108
|
border-radius: 4px;
|
|
1106
1109
|
bottom: var(--dropdown-bottom);
|
|
1107
1110
|
box-shadow: var(--bs-shadow-contentMedium);
|
|
@@ -1296,7 +1299,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1296
1299
|
/* Hover or data-selected */
|
|
1297
1300
|
.bs-dropdown-options :where(li:not([role="separator"]):hover),
|
|
1298
1301
|
.bs-dropdown-options :where(li[data-selected]) {
|
|
1299
|
-
background-color: var(--bs-bg-medium);
|
|
1302
|
+
background-color: var(--bs-bg-medium-to-light);
|
|
1300
1303
|
border-left: 4px solid var(--bs-ink-blue);
|
|
1301
1304
|
color: var(--bs-ink-blue);
|
|
1302
1305
|
outline: none;
|
|
@@ -1414,32 +1417,6 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1414
1417
|
padding-left: 0.5rem;
|
|
1415
1418
|
}
|
|
1416
1419
|
}
|
|
1417
|
-
:where(label, legend),
|
|
1418
|
-
label:where(.bs-label) {
|
|
1419
|
-
display: inline-block;
|
|
1420
|
-
width: 100%;
|
|
1421
|
-
}
|
|
1422
|
-
.bs-label,
|
|
1423
|
-
:where(label, legend) {
|
|
1424
|
-
--label-color: var(--bs-ink-base);
|
|
1425
|
-
color: var(--label-color);
|
|
1426
|
-
font-size: var(--bs-text-sm);
|
|
1427
|
-
font-weight: 600;
|
|
1428
|
-
line-height: var(--bs-leading-base);
|
|
1429
|
-
}
|
|
1430
|
-
/* Required asterisk */
|
|
1431
|
-
:where(label, legend) :where([data-required]:not([data-required="false"])),
|
|
1432
|
-
.bs-label :where([data-required="true"]) {
|
|
1433
|
-
color: var(--label-asterisk-color, var(--bs-ink-red));
|
|
1434
|
-
}
|
|
1435
|
-
/* Disabled state */
|
|
1436
|
-
:where(label[data-disabled]:not([data-disabled="false"])),
|
|
1437
|
-
:where(label[data-disabled]:not([data-disabled="false"])) *,
|
|
1438
|
-
.bs-label:where([data-disabled="true"]),
|
|
1439
|
-
.bs-label:where([data-disabled="true"]) * {
|
|
1440
|
-
--label-asterisk-color: transparent;
|
|
1441
|
-
--label-color: var(--bs-ink-disabled);
|
|
1442
|
-
}
|
|
1443
1420
|
/* Generally applicable (all input types) */
|
|
1444
1421
|
:where([data-required]:not([data-required="false"])) {
|
|
1445
1422
|
color: var(--bs-ink-red);
|
|
@@ -1495,7 +1472,7 @@ select,
|
|
|
1495
1472
|
-webkit-appearance: none;
|
|
1496
1473
|
-moz-appearance: none;
|
|
1497
1474
|
appearance: none;
|
|
1498
|
-
background-color: var(--input-bg,
|
|
1475
|
+
background-color: var(--input-bg, transparent);
|
|
1499
1476
|
border-color: var(--input-border, var(--bs-violet-medium));
|
|
1500
1477
|
border-radius: 0.25rem;
|
|
1501
1478
|
border-style: solid;
|
|
@@ -1613,7 +1590,7 @@ select,
|
|
|
1613
1590
|
.bs-input-addon {
|
|
1614
1591
|
--input-border: var(--bs-violet-300);
|
|
1615
1592
|
align-items: center;
|
|
1616
|
-
background-color: var(--input-bg,
|
|
1593
|
+
background-color: var(--input-bg, transparent);
|
|
1617
1594
|
border-radius: .25rem;
|
|
1618
1595
|
color: var(--bs-ink-base);
|
|
1619
1596
|
display: flex;
|
|
@@ -1945,7 +1922,7 @@ data-autosize-icons="true" - see above
|
|
|
1945
1922
|
:where(:disabled, [data-disabled="true"]) + .bs-character-count,
|
|
1946
1923
|
:where(:disabled, [data-disabled="true"]) .bs-character-count,
|
|
1947
1924
|
.bs-character-count:where([data-disabled="true"]) {
|
|
1948
|
-
|
|
1925
|
+
visibility: hidden;
|
|
1949
1926
|
}
|
|
1950
1927
|
.bs-character-count:where([data-error="true"]) {
|
|
1951
1928
|
color: var(--bs-ink-red);
|
|
@@ -1959,8 +1936,8 @@ data-autosize-icons="true" - see above
|
|
|
1959
1936
|
line-height: 115%;
|
|
1960
1937
|
}
|
|
1961
1938
|
.bs-boolean:where([data-size='sm']) input {
|
|
1962
|
-
|
|
1963
|
-
|
|
1939
|
+
height: .75rem;
|
|
1940
|
+
width: .75rem;
|
|
1964
1941
|
}
|
|
1965
1942
|
.bs-boolean label {
|
|
1966
1943
|
font-size: var(--bs-text-base);
|
|
@@ -1982,15 +1959,10 @@ data-autosize-icons="true" - see above
|
|
|
1982
1959
|
/* Checkbox & Radio Input */
|
|
1983
1960
|
:where(input[type='checkbox'], input[type='radio']),
|
|
1984
1961
|
:is(.bs-boolean :where(input), .bs-checkbox) { /* .bs-checkbox added to accommodate 'fake' cbs */
|
|
1985
|
-
--box-shadow: var(--bs-ink-base);
|
|
1986
|
-
|
|
1987
1962
|
-webkit-appearance: none;
|
|
1988
|
-
|
|
1989
1963
|
-moz-appearance: none;
|
|
1990
|
-
|
|
1991
1964
|
appearance: none;
|
|
1992
|
-
|
|
1993
|
-
box-shadow: inset 0 0 0 0.125rem var(--box-shadow);
|
|
1965
|
+
box-shadow: inset 0 0 0 0.125rem var(--box-shadow, var(--bs-ink-base));
|
|
1994
1966
|
cursor: pointer;
|
|
1995
1967
|
display: grid;
|
|
1996
1968
|
height: 1rem;
|
|
@@ -2014,72 +1986,65 @@ data-autosize-icons="true" - see above
|
|
|
2014
1986
|
.bs-boolean :where([type='radio']) {
|
|
2015
1987
|
border-radius: 50%;
|
|
2016
1988
|
}
|
|
2017
|
-
/* Checkbox's checkmark */
|
|
1989
|
+
/* Checkbox's checkbox, checkmark. Checkmark is hidden unless checked/indeterminate. */
|
|
2018
1990
|
input:where([type='checkbox'])::before,
|
|
2019
1991
|
:is(.bs-boolean :where([type="checkbox"]), .bs-checkbox)::before {
|
|
2020
|
-
--filled-size: 1rem;
|
|
2021
|
-
--check-fill-color: var(--bs-blue-base);
|
|
2022
|
-
|
|
1992
|
+
--cb-filled-size: var(--filled-size, 1rem);
|
|
2023
1993
|
content: '';
|
|
2024
1994
|
border-radius: 0.125rem;
|
|
2025
|
-
box-shadow: inset var(--filled-size) var(--filled-size) var(--
|
|
2026
|
-
height: var(--filled-size);
|
|
1995
|
+
box-shadow: inset var(--cb-filled-size) var(--cb-filled-size) var(--fill-bg-color, var(--bs-blue-base));
|
|
1996
|
+
height: var(--cb-filled-size);
|
|
2027
1997
|
visibility: hidden;
|
|
2028
|
-
width: var(--filled-size);
|
|
1998
|
+
width: var(--cb-filled-size);
|
|
2029
1999
|
}
|
|
2030
2000
|
input:where([type='checkbox'])::after,
|
|
2031
2001
|
:is(.bs-boolean :where([type="checkbox"]), .bs-checkbox)::after {
|
|
2032
|
-
border: solid var(--bs-
|
|
2002
|
+
border: solid var(--bs-bg-base);
|
|
2033
2003
|
border-width: 0 0.125rem 0.125rem 0;
|
|
2034
2004
|
content: '';
|
|
2035
|
-
height: 0.75em;
|
|
2005
|
+
height: var(--inner-check-height, 0.75em);
|
|
2036
2006
|
left: 50%;
|
|
2037
2007
|
position: absolute;
|
|
2038
2008
|
top: 50%;
|
|
2039
2009
|
transform-origin: center;
|
|
2040
2010
|
transform: translate(-50%, -60%) rotate(45deg);
|
|
2041
2011
|
visibility: hidden;
|
|
2042
|
-
width: 0.375em;
|
|
2012
|
+
width: var(--inner-check-width, 0.375em);
|
|
2043
2013
|
}
|
|
2044
2014
|
input:where([type='checkbox']):where(:indeterminate)::after,
|
|
2045
2015
|
.bs-boolean :where([type="checkbox"]):where(:indeterminate)::after,
|
|
2046
2016
|
.bs-checkbox:where([data-indeterminate="true"], :indeterminate)::after {
|
|
2047
2017
|
border: none;
|
|
2048
|
-
background-color: var(--bs-
|
|
2049
|
-
height: 0.125rem;
|
|
2018
|
+
background-color: var(--bs-bg-base);
|
|
2019
|
+
height: var(--inner-dash-height, 0.125rem);
|
|
2050
2020
|
transform: translate(-50%, -0.0625rem) rotate(0deg);
|
|
2051
|
-
width: 0.625em;
|
|
2021
|
+
width: var(--inner-dash-width, 0.625em);
|
|
2052
2022
|
}
|
|
2053
|
-
/* Radio
|
|
2023
|
+
/* Radio outer circle, Radio dot. Dot is hidden unless checked. */
|
|
2054
2024
|
input:where([type='radio'])::before,
|
|
2055
2025
|
.bs-boolean :where([type="radio"])::before {
|
|
2056
|
-
--filled-size: 1rem;
|
|
2057
|
-
--
|
|
2058
|
-
|
|
2059
|
-
background-color: var(--radio-fill-color);
|
|
2026
|
+
--radio-filled-size: var(--filled-size, 1rem);
|
|
2027
|
+
background-color: var(--fill-bg-color, var(--bs-blue-base));
|
|
2060
2028
|
border-radius: 50%;
|
|
2061
2029
|
box-sizing: content-box;
|
|
2062
2030
|
content: '';
|
|
2063
|
-
height: var(--filled-size);
|
|
2031
|
+
height: var(--radio-filled-size);
|
|
2064
2032
|
visibility: hidden;
|
|
2065
|
-
width: var(--filled-size);
|
|
2033
|
+
width: var(--radio-filled-size);
|
|
2066
2034
|
}
|
|
2067
2035
|
input:where([type='radio'])::after,
|
|
2068
2036
|
.bs-boolean :where([type="radio"])::after {
|
|
2069
|
-
|
|
2070
|
-
--inner-fill-color: var(--bs-white);
|
|
2071
|
-
|
|
2072
|
-
background-color: var(--inner-fill-color);
|
|
2037
|
+
background-color: var(--bs-bg-base);
|
|
2073
2038
|
border-radius: 50%;
|
|
2074
2039
|
box-sizing: content-box;
|
|
2075
2040
|
content: '';
|
|
2076
|
-
height: var(--inner-size);
|
|
2041
|
+
height: var(--inner-dot-size, 0.375rem);
|
|
2077
2042
|
left: 50%;
|
|
2078
2043
|
position: absolute;
|
|
2079
2044
|
top: 50%;
|
|
2080
2045
|
transform: translate(-50%, -50%);
|
|
2081
2046
|
visibility: hidden;
|
|
2082
|
-
width: var(--inner-size);
|
|
2047
|
+
width: var(--inner-dot-size, 0.375rem);
|
|
2083
2048
|
}
|
|
2084
2049
|
/* Show checkmark, indeterminate mark, or radio dot */
|
|
2085
2050
|
.bs-checkbox:where([data-indeterminate="true"], [data-checked="true"], :checked, :indeterminate)::before,
|
|
@@ -2090,49 +2055,30 @@ input:where([type='checkbox']:checked, [type='checkbox']:indeterminate, [type='r
|
|
|
2090
2055
|
.bs-boolean :where([type='checkbox']:checked, [type='checkbox']:indeterminate, [type='radio']:checked)::after {
|
|
2091
2056
|
visibility: visible;
|
|
2092
2057
|
}
|
|
2093
|
-
|
|
2094
|
-
.bs-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
height: 0.
|
|
2100
|
-
width:
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2108
|
-
--
|
|
2109
|
-
}
|
|
2110
|
-
/* Disabled State */
|
|
2111
|
-
input:where([type='checkbox'], [type='radio']):disabled,
|
|
2112
|
-
.bs-boolean :where(input):disabled,
|
|
2113
|
-
.bs-checkbox:is([data-disabled="true"], :disabled) {
|
|
2114
|
-
--box-shadow: var(--bs-bg-disabled);
|
|
2058
|
+
/* ---------- Sizes ----------- */
|
|
2059
|
+
.bs-boolean:where([data-size="sm"]),
|
|
2060
|
+
.bs-checkbox:where([data-size="sm"]) {
|
|
2061
|
+
--filled-size: 0.75rem;
|
|
2062
|
+
--inner-check-height: 0.5625rem;
|
|
2063
|
+
--inner-check-width: 0.3125rem;
|
|
2064
|
+
--inner-dash-height: 0.125rem;
|
|
2065
|
+
--inner-dash-width: .75em;
|
|
2066
|
+
--inner-dot-size: 0.25rem;
|
|
2067
|
+
}
|
|
2068
|
+
/* ---------- Disabled State ----------- */
|
|
2069
|
+
:where(input[type="checkbox"], input[type="radio"]):disabled,
|
|
2070
|
+
.bs-boolean:where([data-disabled="true"]),
|
|
2071
|
+
.bs-checkbox:where([data-disabled="true"]) {
|
|
2072
|
+
--box-shadow: var(--bs-ink-disabled);
|
|
2073
|
+
--fill-bg-color: var(--bs-ink-disabled);
|
|
2115
2074
|
background-color: transparent;
|
|
2116
2075
|
cursor: default;
|
|
2117
|
-
}
|
|
2118
|
-
.bs-checkbox:where([data-disabled="true"]:not(input)) {
|
|
2119
2076
|
pointer-events: none;
|
|
2120
2077
|
}
|
|
2121
|
-
|
|
2122
|
-
input:where([type='checkbox']):indeterminate:disabled::before,
|
|
2123
|
-
.bs-boolean :where(input[type="checkbox"]):checked:disabled::before,
|
|
2124
|
-
.bs-boolean :where(input[type="checkbox"]):indeterminate:disabled::before,
|
|
2125
|
-
.bs-checkbox:where([data-checked="true"][data-disabled="true"], :checked:disabled)::before,
|
|
2126
|
-
.bs-checkbox:where([data-indeterminate="true"][data-disabled="true"], :indeterminate:disabled)::before {
|
|
2127
|
-
--check-fill-color: var(--bs-bg-disabled);
|
|
2128
|
-
}
|
|
2129
|
-
input:where([type='radio']):checked:disabled::before,
|
|
2130
|
-
.bs-boolean :where(input[type="radio"]):checked:disabled::before {
|
|
2131
|
-
--radio-fill-color: var(--bs-bg-disabled);
|
|
2132
|
-
}
|
|
2133
|
-
/* Error state */
|
|
2078
|
+
/* ---------- Error state ----------- */
|
|
2134
2079
|
input:where([type='checkbox'], [type='radio'])[data-error]:where(:not([data-error="false"])),
|
|
2135
|
-
.bs-boolean :where(input[data-error="true"]),
|
|
2080
|
+
.bs-boolean :where(input[data-error="true"]), /* deprecate this one in favor of next line */
|
|
2081
|
+
.bs-boolean:where([data-error="true"]),
|
|
2136
2082
|
.bs-checkbox:where([data-error="true"]) {
|
|
2137
2083
|
--box-shadow: var(--bs-red-base);
|
|
2138
2084
|
--outline-color: var(--bs-red-base);
|
|
@@ -2273,35 +2219,90 @@ input:where([type='checkbox'], [type='radio'])[data-error]:where(:not([data-erro
|
|
|
2273
2219
|
}
|
|
2274
2220
|
.bs-hint {
|
|
2275
2221
|
--hint-color: var(--bs-ink-light);
|
|
2276
|
-
min-width: 0;
|
|
2277
2222
|
color: var(--hint-color);
|
|
2278
2223
|
font-size: var(--bs-text-xs);
|
|
2279
|
-
padding: 0;
|
|
2280
|
-
margin: 0;
|
|
2281
2224
|
list-style: none;
|
|
2225
|
+
margin: 0;
|
|
2226
|
+
min-width: 0;
|
|
2282
2227
|
overflow-wrap: break-word;
|
|
2228
|
+
padding: 0;
|
|
2283
2229
|
}
|
|
2284
2230
|
.bs-hint:where([data-error]:not([data-error="false"])) {
|
|
2285
2231
|
--hint-color: var(--bs-ink-red);
|
|
2286
2232
|
}
|
|
2233
|
+
:where(:disabled, [data-disabled="true"]) .bs-hint {
|
|
2234
|
+
--hint-color: var(--bs-ink-disabled);
|
|
2235
|
+
}
|
|
2236
|
+
:where(label, legend),
|
|
2237
|
+
label:where(.bs-label) {
|
|
2238
|
+
display: inline-block;
|
|
2239
|
+
width: 100%;
|
|
2240
|
+
}
|
|
2241
|
+
.bs-label,
|
|
2242
|
+
:where(label, legend) {
|
|
2243
|
+
--label-color: var(--bs-ink-base);
|
|
2244
|
+
color: var(--label-color);
|
|
2245
|
+
font-size: var(--bs-text-sm);
|
|
2246
|
+
font-weight: 600;
|
|
2247
|
+
line-height: var(--bs-leading-base);
|
|
2248
|
+
}
|
|
2249
|
+
/* Required asterisk */
|
|
2250
|
+
:where(label, legend) :where([data-required]:not([data-required="false"])),
|
|
2251
|
+
.bs-label :where([data-required="true"]) {
|
|
2252
|
+
color: var(--label-asterisk-color, var(--bs-ink-red));
|
|
2253
|
+
}
|
|
2254
|
+
/* Disabled state */
|
|
2255
|
+
:where(label[data-disabled]:not([data-disabled="false"])),
|
|
2256
|
+
:where(label[data-disabled]:not([data-disabled="false"])) *,
|
|
2257
|
+
.bs-label:where([data-disabled="true"]),
|
|
2258
|
+
.bs-label:where([data-disabled="true"]) * {
|
|
2259
|
+
--label-asterisk-color: transparent;
|
|
2260
|
+
--label-color: var(--bs-ink-disabled);
|
|
2261
|
+
}
|
|
2262
|
+
/*
|
|
2263
|
+
--btn-main: (this is doing too much.. look into backwards-compatible way to break this up)
|
|
2264
|
+
background color (base)
|
|
2265
|
+
focus ring color
|
|
2266
|
+
|
|
2267
|
+
background colors:
|
|
2268
|
+
--btn-secondary: background color (active, hover)
|
|
2269
|
+
--btn-light: background color (ghost hover, ghost focus)
|
|
2270
|
+
|
|
2271
|
+
border / box-shadow:
|
|
2272
|
+
--btn-ghost-ink: the box shadow color for ghost buttons is synced to ink
|
|
2273
|
+
--btn-highlight: box shadow color (w/ --btn-main) (active)
|
|
2274
|
+
|
|
2275
|
+
padding:
|
|
2276
|
+
--btn-padding: padding (changes by size, and on text btns)
|
|
2277
|
+
|
|
2278
|
+
text color:
|
|
2279
|
+
--btn-ink: text color
|
|
2280
|
+
--btn-ghost-ink: text color (ghost)
|
|
2281
|
+
|
|
2282
|
+
*/
|
|
2287
2283
|
.bs-button {
|
|
2288
|
-
--btn-main: var(--bs-blue-400);
|
|
2289
|
-
--btn-secondary: var(--bs-blue-medium);
|
|
2290
|
-
--btn-highlight: var(--bs-blue-100);
|
|
2291
|
-
--btn-padding: .25rem .75rem;
|
|
2292
2284
|
--btn-focus-pseudo-width: calc(100% + 0.5rem);
|
|
2293
2285
|
--btn-ghost-ink: var(--bs-ink-blue);
|
|
2286
|
+
--btn-highlight: var(--bs-blue-100);
|
|
2294
2287
|
--btn-ink: var(--bs-white);
|
|
2288
|
+
--btn-main: var(--bs-blue-400);
|
|
2289
|
+
--btn-padding: .25rem .75rem;
|
|
2290
|
+
--btn-secondary: var(--bs-blue-medium);
|
|
2291
|
+
--btn-text-size: var(--bs-text-md);
|
|
2292
|
+
--btn-weight: 600;
|
|
2293
|
+
--btn-height: 2.5rem;
|
|
2295
2294
|
align-items: center;
|
|
2296
2295
|
background-color: var(--btn-main);
|
|
2297
2296
|
border: none;
|
|
2298
2297
|
border-radius: 0.25rem;
|
|
2299
2298
|
color: var(--btn-ink);
|
|
2299
|
+
-moz-column-gap: var(--bs-space-2);
|
|
2300
|
+
column-gap: var(--bs-space-2);
|
|
2300
2301
|
cursor: pointer;
|
|
2301
2302
|
display: inline-flex;
|
|
2302
|
-
font-size: var(--btn-text-size
|
|
2303
|
-
font-weight: var(--btn-weight
|
|
2304
|
-
height: var(--btn-height
|
|
2303
|
+
font-size: var(--btn-text-size);
|
|
2304
|
+
font-weight: var(--btn-weight);
|
|
2305
|
+
height: var(--btn-height);
|
|
2305
2306
|
justify-content: center;
|
|
2306
2307
|
line-height: 1.5;
|
|
2307
2308
|
outline: 2px solid transparent;
|
|
@@ -2316,9 +2317,9 @@ input:where([type='checkbox'], [type='radio'])[data-error]:where(:not([data-erro
|
|
|
2316
2317
|
}
|
|
2317
2318
|
.bs-button:active {
|
|
2318
2319
|
background-color: var(--btn-secondary);
|
|
2319
|
-
transform: scale(0.97);
|
|
2320
|
-
transform-origin: center;
|
|
2321
2320
|
box-shadow: inset 0px 0px 4px 1px var(--btn-main);
|
|
2321
|
+
transform-origin: center;
|
|
2322
|
+
transform: scale(0.97);
|
|
2322
2323
|
}
|
|
2323
2324
|
/* ------------ Focus Styles ------------ */
|
|
2324
2325
|
.bs-button::before {
|
|
@@ -2352,7 +2353,7 @@ input:where([type='checkbox'], [type='radio'])[data-error]:where(:not([data-erro
|
|
|
2352
2353
|
--btn-light: var(--bs-blue-10);
|
|
2353
2354
|
--btn-secondary: var(--bs-blue-10);
|
|
2354
2355
|
background-color: transparent;
|
|
2355
|
-
box-shadow: inset 0 0 0 1px var(--btn-
|
|
2356
|
+
box-shadow: inset 0 0 0 1px var(--btn-ghost-ink);
|
|
2356
2357
|
}
|
|
2357
2358
|
.bs-button:where([data-ghost]:not([data-ghost="false"]))::before {
|
|
2358
2359
|
border-radius: 0.4375rem;
|
|
@@ -2368,45 +2369,69 @@ input:where([type='checkbox'], [type='radio'])[data-error]:where(:not([data-erro
|
|
|
2368
2369
|
}
|
|
2369
2370
|
/* ------------ VARIANTS ------------ */
|
|
2370
2371
|
.bs-button:where([data-variant^='secondary']) {
|
|
2372
|
+
--btn-ghost-ink: var(--bs-ink-plum);
|
|
2373
|
+
--btn-highlight: var(--bs-plum-100);
|
|
2374
|
+
--btn-light: var(--bs-plum-10);
|
|
2371
2375
|
--btn-main: var(--bs-plum-400);
|
|
2372
2376
|
--btn-secondary: var(--bs-plum-medium);
|
|
2373
|
-
--btn-light: var(--bs-plum-10);
|
|
2374
|
-
--btn-highlight: var(--bs-plum-100);
|
|
2375
|
-
--btn-ghost-ink: var(--bs-ink-plum);
|
|
2376
2377
|
}
|
|
2377
2378
|
.dark .bs-button:where([data-variant^='secondary']) {
|
|
2379
|
+
--btn-highlight: var(--bs-plum-400);
|
|
2380
|
+
--btn-light: var(--bs-navy-400);
|
|
2378
2381
|
--btn-main: var(--bs-plum-200);
|
|
2379
2382
|
--btn-secondary: var(--bs-plum-300);
|
|
2380
|
-
--btn-light: var(--bs-navy-400);
|
|
2381
|
-
--btn-highlight: var(--bs-plum-400);
|
|
2382
2383
|
}
|
|
2383
2384
|
.bs-button:where([data-variant^='positive']) {
|
|
2385
|
+
--btn-ghost-ink: var(--bs-ink-purple);
|
|
2386
|
+
--btn-highlight: var(--bs-purple-100);
|
|
2387
|
+
--btn-light: var(--bs-purple-10);
|
|
2384
2388
|
--btn-main: var(--bs-purple-400);
|
|
2385
2389
|
--btn-secondary: var(--bs-purple-medium);
|
|
2386
|
-
--btn-light: var(--bs-purple-10);
|
|
2387
|
-
--btn-highlight: var(--bs-purple-100);
|
|
2388
|
-
--btn-ghost-ink: var(--bs-ink-purple);
|
|
2389
2390
|
}
|
|
2390
2391
|
.bs-button:where([data-variant^='warning']) {
|
|
2392
|
+
--btn-ghost-ink: var(--bs-ink-orange);
|
|
2393
|
+
--btn-highlight: var(--bs-orange-100);
|
|
2394
|
+
--btn-light: var(--bs-orange-10);
|
|
2391
2395
|
--btn-main: var(--bs-orange-warning);
|
|
2392
2396
|
--btn-secondary: var(--bs-orange-base);
|
|
2393
|
-
--btn-light: var(--bs-orange-10);
|
|
2394
|
-
--btn-highlight: var(--bs-orange-100);
|
|
2395
|
-
--btn-ghost-ink: var(--bs-ink-orange);
|
|
2396
2397
|
}
|
|
2397
2398
|
.bs-button:where([data-variant^='negative']) {
|
|
2399
|
+
--btn-ghost-ink: var(--bs-ink-red);
|
|
2400
|
+
--btn-highlight: var(--bs-red-100);
|
|
2401
|
+
--btn-light: var(--bs-red-10);
|
|
2398
2402
|
--btn-main: var(--bs-red-400);
|
|
2399
2403
|
--btn-secondary: var(--bs-red-medium);
|
|
2400
|
-
|
|
2401
|
-
|
|
2402
|
-
|
|
2404
|
+
}
|
|
2405
|
+
/* pink variant */
|
|
2406
|
+
.bs-button:where([data-variant^='pink']) {
|
|
2407
|
+
--btn-ghost-ink: var(--bs-ink-pink);
|
|
2408
|
+
--btn-highlight: var(--bs-pink-400);
|
|
2409
|
+
--btn-light: var(--bs-pink-10);
|
|
2410
|
+
--btn-main: var(--bs-pink-400);
|
|
2411
|
+
--btn-secondary: var(--bs-pink-300);
|
|
2412
|
+
}
|
|
2413
|
+
/* royal blue variant */
|
|
2414
|
+
.bs-button:where([data-variant^='royal']) {
|
|
2415
|
+
--btn-ghost-ink: var(--bs-ink-royal);
|
|
2416
|
+
--btn-highlight: var(--bs-royal-400);
|
|
2417
|
+
--btn-light: var(--bs-royal-10);
|
|
2418
|
+
--btn-main: var(--bs-royal-400);
|
|
2419
|
+
--btn-secondary: var(--bs-royal-300);
|
|
2420
|
+
}
|
|
2421
|
+
/* white variant - for dark backgrounds + ghost btn only */
|
|
2422
|
+
.bs-button:where([data-variant^='white'][data-ghost]:not([data-ghost="false"])) {
|
|
2423
|
+
--btn-ghost-ink: var(--bs-ink-white);
|
|
2424
|
+
--btn-highlight: var(--bs-ink-white);
|
|
2425
|
+
--btn-light: var(--bs-white-10);
|
|
2426
|
+
--btn-main: var(--bs-ink-white);
|
|
2403
2427
|
}
|
|
2404
2428
|
/* ------------ Text Button ------------ */
|
|
2405
2429
|
.bs-button:where([data-text]:not([data-text="false"])) {
|
|
2430
|
+
--btn-focus-pseudo-width: calc(100% + 1rem); /* text btns don't have side padding, but we do want focus outline to look padded */
|
|
2406
2431
|
--btn-height: auto;
|
|
2407
2432
|
--btn-ink: var(--bs-ink-blue);
|
|
2408
2433
|
--btn-padding: 0;
|
|
2409
|
-
--btn-
|
|
2434
|
+
--btn-secondary: transparent;
|
|
2410
2435
|
--btn-text-size: var(--bs-text-md);
|
|
2411
2436
|
--btn-weight: 400;
|
|
2412
2437
|
background-color: transparent;
|
|
@@ -2425,6 +2450,10 @@ input:where([type='checkbox'], [type='radio'])[data-error]:where(:not([data-erro
|
|
|
2425
2450
|
box-shadow: none;
|
|
2426
2451
|
transform: none;
|
|
2427
2452
|
}
|
|
2453
|
+
.bs-button:where([data-variant^='negative'][data-text]:not([data-text="false"])),
|
|
2454
|
+
.bs-button:where([data-variant^='negative'][data-text]:not([data-text="false"])):hover {
|
|
2455
|
+
--btn-ink: var(--bs-ink-red);
|
|
2456
|
+
}
|
|
2428
2457
|
/* ------------ Button Sizes, Media-based Text Sizing -------------- */
|
|
2429
2458
|
/* Std button: Mobile text size, DT text size */
|
|
2430
2459
|
.bs-button {
|
|
@@ -2471,7 +2500,7 @@ input:where([type='checkbox'], [type='radio'])[data-error]:where(:not([data-erro
|
|
|
2471
2500
|
}
|
|
2472
2501
|
.bs-button:where([data-ghost]:not([data-ghost="false"])):disabled,
|
|
2473
2502
|
.bs-button:where([data-ghost]:not([data-ghost="false"]))[aria-disabled="true"] {
|
|
2474
|
-
|
|
2503
|
+
--btn-ghost-ink: var(--bs-ink-disabled);
|
|
2475
2504
|
}
|
|
2476
2505
|
.bs-button:where([data-text]:not([data-text="false"])):disabled,
|
|
2477
2506
|
.bs-button:where([data-text]:not([data-text="false"]))[aria-disabled="true"] {
|
|
@@ -2484,26 +2513,49 @@ a.bs-button {
|
|
|
2484
2513
|
outline: none;
|
|
2485
2514
|
vertical-align: middle;
|
|
2486
2515
|
}
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
|
|
2490
|
-
|
|
2516
|
+
/*
|
|
2517
|
+
Properties : Defaults // Description
|
|
2518
|
+
====================================
|
|
2519
|
+
--btn-icon-bg-color: var(--btn-main); // icon bg color (base state)
|
|
2520
|
+
--btn-icon-padding: .75rem; // padding around icon svg
|
|
2521
|
+
--btn-icon-size: 1.5rem; // svg width and height
|
|
2522
|
+
--btn-icon-stroke-color: var(--bs-white);
|
|
2523
|
+
--btn-main: var(--bs-blue-base); // many things... should probably break this up
|
|
2524
|
+
--btn-text-color: var(--bs-ink-base);
|
|
2525
|
+
--btn-text-size: var(--bs-text-md);
|
|
2526
|
+
|
|
2527
|
+
--btn-border-color: transparent; // focus state outline color - transparent base state, --btn-main base focus state
|
|
2528
|
+
--btn-border-color-focused: var(--btn-main); // focus state ring color set on variants
|
|
2529
|
+
--btn-secondary: var(--bs-blue-medium); // hover state icon bg
|
|
2530
|
+
--btn-shadow-color-active: var(--btn-main); // active state shadow color (icon bg)
|
|
2531
|
+
--btn-text-color-hovered: var(--bs-ink-base); // hover state text color
|
|
2532
|
+
*/
|
|
2533
|
+
:where(.bs-circle-button) {
|
|
2534
|
+
--btn-border-color-focused: var(--btn-main);
|
|
2491
2535
|
--btn-border-color: transparent;
|
|
2492
|
-
--btn-
|
|
2536
|
+
--btn-focus-inset: -0.25rem;
|
|
2537
|
+
--btn-gap: .5rem;
|
|
2493
2538
|
--btn-icon-bg-color: var(--btn-main);
|
|
2494
2539
|
--btn-icon-padding: .75rem;
|
|
2495
2540
|
--btn-icon-size: 1.5rem;
|
|
2496
2541
|
--btn-icon-stroke-color: var(--bs-white);
|
|
2542
|
+
--btn-main: var(--bs-blue-base);
|
|
2543
|
+
--btn-secondary: var(--bs-blue-medium);
|
|
2544
|
+
--btn-shadow-color-active: var(--btn-main);
|
|
2545
|
+
--btn-text-color-hovered: var(--bs-ink-base);
|
|
2497
2546
|
--btn-text-color: var(--bs-ink-base);
|
|
2498
|
-
--btn-text-size:
|
|
2547
|
+
--btn-text-size: 1.125rem;
|
|
2548
|
+
--btn-text-weight: 400;
|
|
2549
|
+
}
|
|
2550
|
+
.bs-circle-button {
|
|
2499
2551
|
align-items: center;
|
|
2500
2552
|
background-color: transparent;
|
|
2501
|
-
border-radius: var(--btn-border-radius);
|
|
2502
2553
|
color: var(--btn-text-color);
|
|
2503
2554
|
cursor: pointer;
|
|
2504
2555
|
display: inline-flex;
|
|
2505
2556
|
font-size: var(--btn-text-size);
|
|
2506
|
-
|
|
2557
|
+
font-weight: var(--btn-text-weight);
|
|
2558
|
+
gap: var(--btn-gap);
|
|
2507
2559
|
outline: none;
|
|
2508
2560
|
position: relative;
|
|
2509
2561
|
vertical-align: middle;
|
|
@@ -2514,17 +2566,6 @@ a.bs-circle-button {
|
|
|
2514
2566
|
outline: none;
|
|
2515
2567
|
text-decoration: none;
|
|
2516
2568
|
}
|
|
2517
|
-
.bs-circle-button :where(.bs-circle-button-icon)::before {
|
|
2518
|
-
border-color: var(--btn-border-color);
|
|
2519
|
-
border-radius: var(--btn-border-radius);
|
|
2520
|
-
border-style: solid;
|
|
2521
|
-
border-width: 0.125rem;
|
|
2522
|
-
height: calc(100% + 0.5rem);
|
|
2523
|
-
inset: -0.25rem;
|
|
2524
|
-
position: absolute;
|
|
2525
|
-
transition: border-color 125ms ease-in-out, transform 100ms ease-in-out;
|
|
2526
|
-
width: calc(100% + 0.5rem);
|
|
2527
|
-
}
|
|
2528
2569
|
.bs-circle-button :where(.bs-circle-button-icon) {
|
|
2529
2570
|
align-items: center;
|
|
2530
2571
|
background-color: var(--btn-icon-bg-color);
|
|
@@ -2538,6 +2579,16 @@ a.bs-circle-button {
|
|
|
2538
2579
|
position: relative;
|
|
2539
2580
|
transition: all 100ms ease-in-out;
|
|
2540
2581
|
}
|
|
2582
|
+
.bs-circle-button :where(.bs-circle-button-icon)::before {
|
|
2583
|
+
border-color: var(--btn-border-color);
|
|
2584
|
+
border-radius: 50%;
|
|
2585
|
+
border-style: solid;
|
|
2586
|
+
border-width: 0.125rem;
|
|
2587
|
+
content: '';
|
|
2588
|
+
inset: var(--btn-focus-inset);
|
|
2589
|
+
position: absolute;
|
|
2590
|
+
transition: border-color 125ms ease-in-out, transform 100ms ease-in-out;
|
|
2591
|
+
}
|
|
2541
2592
|
.bs-circle-button :where(.bs-circle-button-icon) :where(.bs-icon) {
|
|
2542
2593
|
--icon-size: var(--btn-icon-size);
|
|
2543
2594
|
}
|
|
@@ -2554,26 +2605,20 @@ a.bs-circle-button {
|
|
|
2554
2605
|
}
|
|
2555
2606
|
/* Ghost Buttons */
|
|
2556
2607
|
.bs-circle-button:where([data-ghost]:not([data-ghost="false"])) {
|
|
2608
|
+
--btn-icon-bg-color: transparent;
|
|
2557
2609
|
--btn-icon-stroke-color: var(--btn-main);
|
|
2558
2610
|
--btn-light: var(--bs-blue-10);
|
|
2559
2611
|
--btn-secondary: var(--bs-blue-10);
|
|
2560
2612
|
}
|
|
2561
|
-
.bs-circle-button:where([data-ghost]:not([data-ghost="false"])) :where(.bs-circle-button-icon) {
|
|
2562
|
-
background-color: transparent;
|
|
2563
|
-
box-shadow: inset 0 0 0 1px transparent;
|
|
2564
|
-
color: var(--btn-icon-stroke-color);
|
|
2565
|
-
}
|
|
2566
|
-
.bs-circle-button:where([data-ghost]:not([data-ghost="false"])) :where(.bs-circle-button-icon)::before {
|
|
2567
|
-
border-radius: 50%;
|
|
2568
|
-
}
|
|
2569
2613
|
/* Active, Hover, Focus states */
|
|
2570
2614
|
.bs-circle-button:active, .bs-circle-button:hover {
|
|
2571
2615
|
--btn-icon-bg-color: var(--btn-secondary);
|
|
2616
|
+
--btn-text-color: var(--btn-text-color-hovered);
|
|
2572
2617
|
}
|
|
2573
2618
|
.bs-circle-button:active :where(.bs-circle-button-icon) {
|
|
2574
|
-
|
|
2619
|
+
box-shadow: inset 0px 0px 4px 1px var(--btn-shadow-color-active);
|
|
2575
2620
|
transform-origin: center;
|
|
2576
|
-
|
|
2621
|
+
transform: scale(0.97);
|
|
2577
2622
|
}
|
|
2578
2623
|
.bs-circle-button:where([data-direction="right"]):hover :where(.bs-circle-button-icon),
|
|
2579
2624
|
.bs-circle-button:where([data-direction="right"]):hover::before {
|
|
@@ -2583,19 +2628,11 @@ a.bs-circle-button {
|
|
|
2583
2628
|
.bs-circle-button:where([data-direction="left"]):hover::before {
|
|
2584
2629
|
transform: translateX(-.25rem);
|
|
2585
2630
|
}
|
|
2586
|
-
.bs-circle-button:where([data-ghost]:not([data-ghost="false"])):hover
|
|
2587
|
-
|
|
2588
|
-
}
|
|
2589
|
-
.bs-circle-button:where([data-ghost]:not([data-ghost="false"])):active {
|
|
2590
|
-
box-shadow:
|
|
2591
|
-
inset 0 0 0 1px var(--btn-main),
|
|
2592
|
-
inset 0px 0px 4px 1px var(--btn-highlight);
|
|
2631
|
+
.bs-circle-button:where([data-ghost]:not([data-ghost="false"])):hover {
|
|
2632
|
+
--btn-icon-bg-color: var(--btn-light);
|
|
2593
2633
|
}
|
|
2594
2634
|
.bs-circle-button:where(:focus-visible) {
|
|
2595
|
-
--btn-border-color: var(--btn-
|
|
2596
|
-
}
|
|
2597
|
-
.bs-circle-button:where(:focus-visible) :where(.bs-circle-button-icon)::before {
|
|
2598
|
-
content: '';
|
|
2635
|
+
--btn-border-color: var(--btn-border-color-focused);
|
|
2599
2636
|
}
|
|
2600
2637
|
/* Disabled State */
|
|
2601
2638
|
.bs-circle-button:where(:disabled, [aria-disabled]:not([aria-disabled="false"])) /* for links as buttons */ {
|
|
@@ -2603,24 +2640,69 @@ a.bs-circle-button {
|
|
|
2603
2640
|
--btn-text-color: var(--bs-ink-disabled);
|
|
2604
2641
|
pointer-events: none;
|
|
2605
2642
|
}
|
|
2606
|
-
.bs-circle-button:where(:disabled, [aria-disabled]:not([aria-disabled="false"]))
|
|
2607
|
-
|
|
2643
|
+
.bs-circle-button:where(:disabled, [aria-disabled]:not([aria-disabled="false"])) {
|
|
2644
|
+
--btn-icon-bg-color: var(--bs-bg-disabled);
|
|
2608
2645
|
}
|
|
2609
2646
|
/* Button Size */
|
|
2610
2647
|
.bs-circle-button:where([data-size^='sm']) {
|
|
2611
2648
|
--btn-icon-padding: .375rem;
|
|
2612
2649
|
--btn-icon-size: .75rem;
|
|
2613
|
-
--btn-text-size:
|
|
2650
|
+
--btn-text-size: .875rem;
|
|
2614
2651
|
}
|
|
2615
2652
|
.bs-circle-button:where([data-size^='sm'][data-text]:not([data-text="false"])) {
|
|
2616
2653
|
--btn-icon-padding: .3125rem;
|
|
2617
2654
|
--btn-icon-size: .625rem;
|
|
2618
|
-
--btn-text-size:
|
|
2655
|
+
--btn-text-size: 1rem;
|
|
2619
2656
|
}
|
|
2620
2657
|
.bs-circle-button:where([data-size='xs'][data-text]:not([data-text="false"])) {
|
|
2621
2658
|
--btn-icon-padding: .25rem;
|
|
2622
2659
|
--btn-icon-size: .5rem;
|
|
2623
|
-
--btn-text-size:
|
|
2660
|
+
--btn-text-size: .875rem;
|
|
2661
|
+
}
|
|
2662
|
+
/* Color Variants */
|
|
2663
|
+
.bs-circle-button:where([data-variant^="color"]) {
|
|
2664
|
+
--btn-focus-inset: .125rem;
|
|
2665
|
+
--btn-gap: 0;
|
|
2666
|
+
--btn-icon-bg-color: transparent;
|
|
2667
|
+
--btn-icon-padding: .5rem;
|
|
2668
|
+
--btn-icon-size: .75rem; /* stays the same for all sizes */
|
|
2669
|
+
--btn-icon-stroke-color: var(--btn-text-color);
|
|
2670
|
+
--btn-secondary: transparent;
|
|
2671
|
+
--btn-shadow-color-active: transparent;
|
|
2672
|
+
}
|
|
2673
|
+
.bs-circle-button:where([data-variant="color-blue"]) {
|
|
2674
|
+
--btn-border-color-focused: var(--bs-ink-blue);
|
|
2675
|
+
--btn-text-color: var(--bs-ink-blue);
|
|
2676
|
+
--btn-text-color-hovered: var(--bs-blue-base);
|
|
2677
|
+
}
|
|
2678
|
+
.bs-circle-button:where([data-variant="color-royal"]) {
|
|
2679
|
+
--btn-border-color-focused: var(--bs-ink-royal);
|
|
2680
|
+
--btn-text-color: var(--bs-ink-royal);
|
|
2681
|
+
--btn-text-color-hovered: var(--bs-royal-medium);
|
|
2682
|
+
}
|
|
2683
|
+
.bs-circle-button:where([data-variant="color-purple"]) {
|
|
2684
|
+
--btn-border-color-focused: var(--bs-purple-400);
|
|
2685
|
+
--btn-text-color: var(--bs-ink-purple);
|
|
2686
|
+
--btn-text-color-hovered: var(--bs-purple-medium);
|
|
2687
|
+
}
|
|
2688
|
+
.bs-circle-button:where([data-variant="color-pink"]) {
|
|
2689
|
+
--btn-border-color-focused: var(--bs-pink-400);
|
|
2690
|
+
--btn-text-color: var(--bs-ink-pink);
|
|
2691
|
+
--btn-text-color-hovered: var(--bs-pink-base);
|
|
2692
|
+
}
|
|
2693
|
+
.bs-circle-button:where([data-variant="color-red"]) {
|
|
2694
|
+
--btn-border-color-focused: var(--bs-ink-red);
|
|
2695
|
+
--btn-text-color: var(--bs-ink-red);
|
|
2696
|
+
--btn-text-color-hovered: var(--bs-red-base);
|
|
2697
|
+
}
|
|
2698
|
+
.bs-circle-button:where([data-variant^="color"]):where(:disabled, [aria-disabled]:not([aria-disabled="false"])) {
|
|
2699
|
+
--btn-icon-bg-color: transparent;
|
|
2700
|
+
--btn-text-color: var(--bs-ink-disabled);
|
|
2701
|
+
}
|
|
2702
|
+
/* size XXS only supported for color variants */
|
|
2703
|
+
.bs-circle-button:where([data-variant^="color"]):where([data-size='xxs'][data-text]:not([data-text="false"])) {
|
|
2704
|
+
--btn-text-size: .75rem;
|
|
2705
|
+
--btn-text-weight: 600;
|
|
2624
2706
|
}
|
|
2625
2707
|
/*
|
|
2626
2708
|
custom properties:
|
|
@@ -2633,26 +2715,33 @@ custom properties:
|
|
|
2633
2715
|
--filterbtn-weight
|
|
2634
2716
|
*/
|
|
2635
2717
|
button:where(.bs-filter-button) {
|
|
2718
|
+
--filterbtn-caret-size: 1rem;
|
|
2719
|
+
--filterbtn-caret-transform: rotate(0deg);
|
|
2720
|
+
--filterbtn-color: var(--bs-ink-blue);
|
|
2721
|
+
--filterbtn-focus-color: transparent;
|
|
2722
|
+
--filterbtn-height: 1.5rem;
|
|
2723
|
+
--filterbtn-text-size: var(--bs-text-base);
|
|
2724
|
+
--filterbtn-weight: 400;
|
|
2636
2725
|
flex-shrink: 0;
|
|
2637
2726
|
position: relative;
|
|
2638
2727
|
}
|
|
2639
2728
|
.bs-filter-button {
|
|
2640
2729
|
align-items: center;
|
|
2641
|
-
color: var(--filterbtn-color
|
|
2730
|
+
color: var(--filterbtn-color);
|
|
2642
2731
|
-moz-column-gap: 0.5rem;
|
|
2643
2732
|
column-gap: 0.5rem;
|
|
2644
2733
|
cursor: pointer;
|
|
2645
2734
|
display: inline-flex;
|
|
2646
|
-
font-size: var(--filterbtn-text-size
|
|
2647
|
-
font-weight: var(--filterbtn-weight
|
|
2648
|
-
height: var(--filterbtn-height
|
|
2735
|
+
font-size: var(--filterbtn-text-size);
|
|
2736
|
+
font-weight: var(--filterbtn-weight);
|
|
2737
|
+
height: var(--filterbtn-height);
|
|
2649
2738
|
line-height: 1.5;
|
|
2650
2739
|
transition: outline-color 100ms ease-in-out;
|
|
2651
2740
|
width: -moz-max-content;
|
|
2652
2741
|
width: max-content;
|
|
2653
2742
|
}
|
|
2654
2743
|
.bs-filter-button::after {
|
|
2655
|
-
border: solid var(--filterbtn-focus-color
|
|
2744
|
+
border: solid var(--filterbtn-focus-color) 2px;
|
|
2656
2745
|
border-radius: 0.25rem;
|
|
2657
2746
|
content: '';
|
|
2658
2747
|
display: block;
|
|
@@ -2664,12 +2753,12 @@ button:where(.bs-filter-button) {
|
|
|
2664
2753
|
.bs-filter-button :where(.bs-icon),
|
|
2665
2754
|
.bs-filter-button :where(span:has(svg:only-child)) {
|
|
2666
2755
|
display: block;
|
|
2667
|
-
height: var(--filterbtn-caret-size
|
|
2756
|
+
height: var(--filterbtn-caret-size);
|
|
2668
2757
|
line-height: 1;
|
|
2669
|
-
transform: var(--filterbtn-caret-transform
|
|
2758
|
+
transform: var(--filterbtn-caret-transform);
|
|
2670
2759
|
transform-origin: center;
|
|
2671
2760
|
transition: var(--bs-trans-rotate180);
|
|
2672
|
-
width: var(--filterbtn-caret-size
|
|
2761
|
+
width: var(--filterbtn-caret-size);
|
|
2673
2762
|
}
|
|
2674
2763
|
.bs-filter-button:where([data-size="sm"],[data-size="xs"]) {
|
|
2675
2764
|
|
|
@@ -2716,7 +2805,7 @@ button:where(.bs-filter-button) {
|
|
|
2716
2805
|
--badge-text: var(--bs-ink-disabled);
|
|
2717
2806
|
}
|
|
2718
2807
|
.bs-modal {
|
|
2719
|
-
background-color: var(--bs-bg-base-
|
|
2808
|
+
background-color: var(--bs-bg-base-to-medium);
|
|
2720
2809
|
border-radius: 4px;
|
|
2721
2810
|
box-shadow: var(--bs-shadow-contentHigh);
|
|
2722
2811
|
left: 1.5rem;
|
|
@@ -3551,7 +3640,7 @@ table:where([data-sticky^="left"]) :is(td:first-child, th:first-child) {
|
|
|
3551
3640
|
/* -- Step Items in Timeline -- */
|
|
3552
3641
|
.bs-timeline :where(.bs-step-item) {
|
|
3553
3642
|
align-items: center;
|
|
3554
|
-
color: var(--step-color, var(--bs-ink-
|
|
3643
|
+
color: var(--step-color, var(--bs-ink-light));
|
|
3555
3644
|
display: flex;
|
|
3556
3645
|
flex-direction: column;
|
|
3557
3646
|
padding-inline: 1rem;
|