.demo__checkboxes-container {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin: 25px 0;
}

.checkbox__input {
    display: none;
}

.checkbox__label {
    font: var(--regular-text);
    padding-left: 26px;
    color: var(--dark-text);
    position: relative;
}

.checkbox__label::before {
    position: absolute;
    content: '';
    left: 2px;
    top: 0;
    width: 16px;
    height: 16px;
    background-color: var(--background);
    border: 1px solid #C2CEDC;
    border-radius: 3px;
    cursor: pointer;
}

.checkbox__input:checked + .checkbox__label::before {
    background-color: var(--primary);
    border: 1px solid var(--primary);
    background-image: url(../../icons/ic-ok.svg);
    background-repeat: no-repeat;
    background-position: center;
}

.checkbox__input:disabled + .checkbox__label::before {
    border: 1px solid #e7e7e7;
    cursor: auto;
}

.checkbox__input:checked:disabled + .checkbox__label::before {
    background-color: #BFC2C7;
    border: 1px solid #BFC2C7;
    background-image: url(../../icons/ic-ok.svg);
    background-repeat: no-repeat;
    background-position: center;
}

/* STEPS */

.step-hint {
    width: 24px;
    height: 24px;
    margin: 2px;
    border-radius: 100%;
    border: 1px solid var(--grey-icons);
    background-color: var(--background);
}

.step-hint--checked {
    border: 1px solid var(--primary);
    background-color: var(--primary);
    background-image: url(../../icons/ic-ok.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 55%;
}

.step-hint--current {
    border: 1px solid var(--primary);
    position: relative;
}

.step-hint--current::after {
    position: absolute;
    content: '';
    left: 3px;
    top: 3px;
    width: 16px;
    height: 16px;
    background-color: var(--primary);
    border-radius: 100%;
}