 /* checkboxes and radiobuttons */
label[for] {cursor: pointer;}
.checkbox-control,.radio-control{display: none;}
.checkbox-control + label,.radio-control + label {
    margin-top: 5px;
    min-width: 20px;
    height: 20px;
    transition: box-shadow .15s ease-in;
    transition: background-color .2s ease-in,box-shadow .15s ease-in,border-color .15s ease-in;
    background-color: transparent;
    border: 2px solid  #000;
    user-select: none;
}
.checkbox-control-white + label { border: 2px solid  #fff; }

.checkbox-control + label{border-radius: 0px;}
.radio-control + label{border-radius: 50%;}

.checkbox-control + label + label, .radio-control + label + label {margin-left: .5rem;}
.checkbox-control + label:hover, .checkbox-control + label:focus,.radio-control + label:hover, .radio-control + label:focus {
    box-shadow: 0 0 3px 0  #000;
    border-color:  #000;
}

.checkbox-control-white + label:hover, .checkbox-control-white + label:focus{
    box-shadow: 0 0 3px 0  #fff;
    border-color:  #fff;
}

.checkbox-control.black + label:hover, .checkbox-control.black + label:focus,.radio-control.black + label:hover, .radio-control.black + label:focus {
    box-shadow: 0 0 3px 0  #333;
    border-color:  #000;
}
.checkbox-control:checked + label {
    border-color:  #000;
    background-color:  #fff;
}
.checkbox-control-white:checked + label {
    border-color:  #fff;
    background-color:  #000;
}
.checkbox-control.black:checked + label {
    border-color:  #000;
    background-color:  #000;
}
.radio-control:checked + label {
    border-color:  #000;
    background-color: transparent;
}
.checkbox-control:checked:disabled + label {
    border-color: #888;
    background-color: #979eb9;
}
.checkbox-control-white:checked:disabled + label {
    border-color: #888;
    background-color: transparent;
}
.radio-control:checked:disabled + label {
    border-color: #888;
    background-color: #fff;
}

.checkbox-control:checked + label:after {
    font-family: 'feather';
    content: "\e83f";
    margin-left: 1px;
    margin-top: -1.5px;
    color: #000;
    display: block;
    font-size: 14px;
    font-weight: 900;
}

.checkbox-control-white:checked + label:after {
    color: #fff;
}

.radio-control:checked + label:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    margin-left: 3px;
    margin-top: 3px;
    background-color:  #ffed00;
    border-radius: 50%;
    border: 2px solid #000;
}

.radio-control:checked:disabled + label:after {
    background-color: #979eb9;

}

.checkbox-control:disabled + label, .checkbox-control:disabled + label + label, .radio-control:disabled + label, .radio-control:disabled + label + label{ opacity: .5; cursor: not-allowed;}
.checkbox-control:disabled + label:hover, .radio-control:disabled + label:hover{ box-shadow: none; border: 1px solid #abb4cd;}

.checkbox-control-white:disabled + label, .checkbox-control-white:disabled + label + label { opacity: .75; cursor: not-allowed;}
.checkbox-control-white:disabled + label:hover { box-shadow: none; border: 1px solid #abb4cd;}
