2024-08-15 18:52:53 +03:00
|
|
|
|
|
|
|
|
@supports (-webkit-appearance: none) or (-moz-appearance: none) {
|
|
|
|
|
.checkbox-wrapper input[type=checkbox] {
|
2024-08-17 19:23:19 +03:00
|
|
|
--active-inner: var(--p10);
|
|
|
|
|
--focus: 2px var(--p30);
|
|
|
|
|
--border-hover: var(--p30);
|
2024-08-15 18:52:53 +03:00
|
|
|
--disabled: #F6F8FF;
|
|
|
|
|
--disabled-inner: #E1E6F9;
|
|
|
|
|
-webkit-appearance: none;
|
|
|
|
|
-moz-appearance: none;
|
|
|
|
|
height: 21px;
|
|
|
|
|
outline: none;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: top;
|
|
|
|
|
position: relative;
|
|
|
|
|
margin: 0;
|
|
|
|
|
cursor: pointer;
|
2024-08-17 19:23:19 +03:00
|
|
|
border: 1px solid var(--bc, var(--p30));
|
|
|
|
|
background: var(--b, var(--p10));
|
2024-08-15 18:52:53 +03:00
|
|
|
transition: background 0.3s, border-color 0.3s, box-shadow 0.2s;
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:after {
|
|
|
|
|
content: "";
|
|
|
|
|
display: block;
|
|
|
|
|
left: 0;
|
|
|
|
|
top: 0;
|
|
|
|
|
position: absolute;
|
|
|
|
|
transition: transform var(--d-t, 0.3s) var(--d-t-e, ease), opacity var(--d-o, 0.2s);
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:checked {
|
2024-08-17 19:23:19 +03:00
|
|
|
--b: var(--p40);
|
|
|
|
|
--bc: var(--p40);
|
2024-08-15 18:52:53 +03:00
|
|
|
--d-o: .3s;
|
|
|
|
|
--d-t: .6s;
|
|
|
|
|
--d-t-e: cubic-bezier(.2, .85, .32, 1.2);
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:disabled {
|
|
|
|
|
--b: var(--disabled);
|
|
|
|
|
cursor: not-allowed;
|
|
|
|
|
opacity: 0.9;
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:disabled:checked {
|
|
|
|
|
--b: var(--disabled-inner);
|
2024-08-17 19:23:19 +03:00
|
|
|
--bc: var(--p40);
|
2024-08-15 18:52:53 +03:00
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:disabled + label {
|
|
|
|
|
cursor: not-allowed;
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:hover:not(:checked):not(:disabled) {
|
|
|
|
|
--bc: var(--border-hover);
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:focus {
|
|
|
|
|
box-shadow: 0 0 0 var(--focus);
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:not(.switch) {
|
|
|
|
|
width: 21px;
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:not(.switch):after {
|
|
|
|
|
opacity: var(--o, 0);
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:not(.switch):checked {
|
|
|
|
|
--o: 1;
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox] + label {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: middle;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
margin-left: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:not(.switch) {
|
|
|
|
|
border-radius: 7px;
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:not(.switch):after {
|
|
|
|
|
width: 5px;
|
|
|
|
|
height: 9px;
|
|
|
|
|
border: 2px solid var(--active-inner);
|
|
|
|
|
border-top: 0;
|
|
|
|
|
border-left: 0;
|
|
|
|
|
left: 7px;
|
|
|
|
|
top: 4px;
|
|
|
|
|
transform: rotate(var(--r, 20deg));
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:not(.switch):checked {
|
|
|
|
|
--r: 43deg;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.checkbox-wrapper * {
|
|
|
|
|
box-sizing: inherit;
|
|
|
|
|
}
|
|
|
|
|
.checkbox-wrapper *:before,
|
|
|
|
|
.checkbox-wrapper *:after {
|
|
|
|
|
box-sizing: inherit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.checkbox-wrapper input[type=checkbox]:indeterminate {
|
2024-08-17 19:23:19 +03:00
|
|
|
--b: var(--p40);
|
|
|
|
|
--bc: var(--p40);
|
2024-08-15 18:52:53 +03:00
|
|
|
--d-o: .3s;
|
|
|
|
|
--d-t: .6s;
|
|
|
|
|
--d-t-e: cubic-bezier(.2, .85, .32, 1.2);
|
|
|
|
|
}
|
|
|
|
|
|