/*
* Wire
* Copyright (C) 2018 Wire Swiss GmbH
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see http://www.gnu.org/licenses/.
*
*/
// Custom checkbox component using Wire icon font
// Checkbox can be style using 'accent-text'
// Example:
//
//
//
.checkbox {
display: inline-block;
padding-left: 2px;
input[type='checkbox'] {
position: absolute;
left: var(--offscreen-left);
opacity: 0;
&:focus-visible + label {
outline: 1px solid var(--accent-color);
outline-offset: 0.4rem;
}
&:checked + label {
&::after {
opacity: 1;
}
&::before {
border: 1.5px solid var(--accent-color-500);
background-color: var(--accent-color-500);
body.theme-dark & {
border: 1.5px solid var(--accent-color-600);
background-color: var(--accent-color-600);
}
}
}
}
label {
position: relative;
display: inline-block;
padding-left: 36px;
cursor: pointer;
line-height: 1.375rem;
text-transform: none;
user-select: none;
.text-light;
&::after,
&::before {
position: absolute;
top: 0;
left: 0;
width: 22px;
height: 22px;
border-radius: 3px;
content: '';
transition: all 0.15s ease-in-out;
}
&::after {
display: flex;
align-items: center;
justify-content: center;
color: var(--white);
content: '\e102';
font-family: 'Wire' !important;
font-size: var(--font-size-medium);
line-height: 1;
opacity: 0;
}
&::before {
border: 1.5px solid var(--checkbox-border);
background-color: var(--checkbox-background);
}
> div {
color: var(--main-color) !important;
line-height: var(--line-height-sm);
}
}
}