/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

.checkbox {
    display: inline-flex;
    align-items: flex-start;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Oxygen, Ubuntu,
        Cantarell, "Open Sans", "Helvetica Neue", "Roboto Rouble", sans-serif;
    font-weight: 400;
    line-height: 1;
}

.checkbox,
    .checkbox *,
    .checkbox *:before,
    .checkbox *:after {
        box-sizing: border-box;
    }

.checkbox__control {
        opacity: 0;
        position: absolute;
        margin: 0;
        z-index: -1;
    }

.checkbox__box {
        display: inline-flex;
        position: relative;
        margin-top: 0.05em;
        border: 1px solid;
        border-radius: 4px;
        flex: 0 0 auto;
        transition: all 0.05s 0.1s ease-out;
    }

.checkbox__box:after {
            content: "";
            display: block;
            position: absolute;
            background: transparent;
            border-radius: 4px;
            top: 50%;
            left: 50%;
            -webkit-transform: translate(-50%, -50%);
                    transform: translate(-50%, -50%);
        }

.checkbox__text {
        line-height: normal;
    }

.checkbox__icon {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, calc(-50% - 2px));
                transform: translate(-50%, calc(-50% - 2px));
        transition: all 0.1s 0s ease-out;
        opacity: 0;
    }

.checkbox_size_m {
        font-size: 16px;
    }

.checkbox_size_m .checkbox__box,
        .checkbox_size_m .checkbox__box:after {
            width: 16px;
            height: 16px;
        }

.checkbox_size_m .checkbox__text {
            padding-left: 10px;
        }

.checkbox_size_l {
        font-size: 22px;
    }

.checkbox_size_l .checkbox__box,
        .checkbox_size_l .checkbox__box:after {
            width: 24px;
            height: 24px;
        }

.checkbox_size_l .checkbox__icon {
            -webkit-transform: translate(-50%, calc(-50% - 3px));
                    transform: translate(-50%, calc(-50% - 3px));
        }

.checkbox_size_l .checkbox__text {
            padding-left: 12px;
        }

.checkbox_disabled {
        cursor: default;
    }

.checkbox_type_button {
    display: inline-block;
}

/* TODO remove? */

.checkbox_type_button.checkbox_checked .button__text {
            font-weight: 400;
        }

.checkbox_view_line.checkbox_size_m {
        margin-right: 12px;
    }

.checkbox_view_line.checkbox_size_l {
        margin-right: 16px;
    }

.checkbox_view_line:last-child {
        margin-right: 0;
    }

/* TODO remove? */

.checkbox_invalid .checkbox__box {
        border-color: rgba(255, 92, 92, 0.85);
    }

.checkbox_invalid.checkbox_focused .checkbox__box, .checkbox_invalid.checkbox_hovered .checkbox__box {
            border-color: rgba(255, 92, 92, 0.85);
        }

.checkbox_checked .checkbox__box {
        transition: all 0.05s 0s ease-out;
    }

.checkbox_checked .checkbox__icon {
        transition: all 0.1s 0.05s ease-out;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        opacity: 1;
    }

.checkbox_focused .checkbox__box:after {
            border: 2px solid;
        }

/*# sourceMappingURL=checkbox.css.map */
