.Checkbox {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: auto;
    grid-gap: 12px;

    align-items: center;
    justify-content: start;
}

.Checkbox > div {
    position: relative; /* new stacking context */
    border: 1px solid transparent;
    border-radius: 8px;

    width: 28px;
    height: 28px;
}

.Checkbox > div > input {
    opacity: 0; /* invisible but with pointer events */

    position: relative;
    z-index: 2;

    width: 100%;
    height: 100%;
}

.Checkbox > div > svg {
    z-index: 1;

    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.Checkbox > label {
    color: #58606C;
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0em;
    text-align: left;
}

.Checkbox.Checkbox.Checkbox_unchecked > div {
    background: #FFFFFF;
    border: 1px solid #BFC9DB;
}

.Checkbox.Checkbox_unchecked > div > svg {
    visibility: hidden;
}

.Checkbox.Checkbox_checked > div {
    background: #C52F33;
}

.Checkbox.Checkbox_checked > div > svg * {
    fill: #FFFFFF;
}

.Checkbox.Checkbox_unchecked.Checkbox_disabled > div {
    background: #E9EEF5;
}

.Checkbox.Checkbox_checked.Checkbox_disabled > div {
    background: #58606C;
}

.Checkbox.Checkbox_disabled > label {
    font-family: 'Open Sans', sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 20px;
    color: #BFC9DB;
}