.form-control, input {
    width: 100%;
    padding: 1.2rem 1rem;
    border-radius: .5rem;
    border: var(--color-grey-light);
    border: 1px solid rgba(0,0,0,.1);
}

.form-control:focus {
    box-shadow: 0 0 0 .25rem rgba(3, 70, 201, 0.25);
}

textarea.form-control {
    box-shadow: unset !important;
    transition: border .15s ease;
}

textarea.form-control:focus {
    border-color: var(--color-primary) !important;
}

.btn {
    position: relative;
    border-radius: .5rem !important;
    box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;
}

.btn:focus {
    box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;
    outline: unset !important;
}

.btn img.end-0 {
    transform: translate(-1.5rem, -50%);
}

.btn img.start-0 {
    transform: translate(1.5rem, -50%);
}

.custom-checkbox {
    position: relative;
}

.custom-checkbox input {
    width: 0;
    height: 0;
    visibility: hidden;
    opacity: 0;
    position: absolute;
}

.custom-checkbox .custom-checkbox-input {
    width: 100%;
    padding: 1em 1.5em;
    border: 1px solid rgba(3, 70, 201, 0.4);
    background-color: #fff;
    transition: background-color .2s ease, opacity .2s ease, filter .2s ease;
    border-radius: .5rem;
    cursor: pointer;
}

.custom-checkbox input:disabled + .custom-checkbox-input {
    cursor: initial;
    opacity: .6;
    filter: grayscale(1);
}

.custom-checkbox input:checked + .custom-checkbox-input {
    background-color: rgba(3, 70, 201, .1);
}

.custom-checkbox.checkbox-danger .custom-checkbox-input {
    border: 1px solid rgb(194, 0, 0, .4);
}

.custom-checkbox.checkbox-success .custom-checkbox-input {
    border: 1px solid rgba(0, 100, 40, .6);
}

.custom-checkbox input:checked + .custom-checkbox-input {
    background-color: rgb(46, 255, 130, .1);
}

.custom-checkbox input:checked + .custom-checkbox-input {
    background-color: rgba(3, 70, 201, .1);
}

.custom-checkbox.checkbox-danger  input:checked + .custom-checkbox-input {
    background-color: rgb(194, 0, 0, .1) !important;
}

.custom-checkbox.checkbox-success  input:checked + .custom-checkbox-input {
    background-color: rgba(0, 178, 71, 0.1); !important;
}

.form-check {
    display: flex;
    align-items: center;
    margin-bottom: .75rem;
}

.form-check .form-check-input[type="checkbox"] {
    min-width: 2rem;
    width: 2rem;
    min-height: 2rem;
    height: 2rem;
    margin-right: .55rem !important;
    transform: translateY(-1px);
    padding: 1rem !important;
}

.form-check .form-check-input[type="checkbox"]:focus {
    box-shadow: unset !important;
    outline: unset  !important;
}

.form-check .form-check-input[type="checkbox"]:checked {
    background-color: var(--color-primary-light);
}

.password-input + img {
    width: 2.5rem;
    right: 1rem;
}

.custom-checkbox-2 {
    position: relative;
    display: inline-block;
    font-size: 1.4rem;
}

.custom-checkbox-2 input {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    visibility: hidden;
}

label.toggle-item {

}
label.toggle-item {
    min-width: 5em;
    background: var(--color-primary);
    height: 2em;
    display: inline-block;
    border-radius: 50px;
    position: relative;
    transition: all 0.3s ease;
    transform-origin: 20% center;
    cursor: pointer;
}

.checkcross .check {
    border-radius: 50%;
    width: 1.6em;
    height: 1.6em;
    position: absolute;
    background: #c34a4a;
    transition: 0.4s ease;
    top: .2em;
    left: .2em;
}

.checkcross .check:before, .checkcross .check:after {
    height: 4px;
    border-radius: 10px;
    background: #fff;
    transition: 0.4s ease;
}

.checkcross .check:before {
    content: '';
    display: block;
    width: 70%;
    transform: rotate(-45deg) translate(-.3em, .65em);
}

.checkcross .check:after {
    content: '';
    display: block;
    width: 70%;
    transform: rotate(45deg) translate(.45em, .1em);
}

.checkcross-input:checked + label .check {
    left: 3.2em;
    transform: rotate(360deg);
    background: #8BC34A;
}

.checkcross-input:checked + label .check:before {
    width: 60%;
    transform: rotate(-45deg) translate(-.2em, .85em);

}

.checkcross-input:checked + label .check:after {
    width: 30%;
    transform: rotate(45deg) translate(.65em, .18em);

}