div.checkbox {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;

    span.text {
        flex: 1;
        padding-top: 2px;
    }

    div {
        height: 22px;
        width: 22px;
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        border: solid 2px var(--color-grey);
        border-radius: 3px;
        padding-bottom: 2px;
        transition: 0.2s;

        span {
            display: none;
            height: 10px;
            width: 4px;
            border-right: solid 2px white;
            border-bottom: solid 2px white;
            transform: rotate(45deg);
        }
    }

    input {
        display: none;
    }
}

div.checkbox:hover {
    div {
        border-color: var(--color-primary);
    }
}

div.checkbox.active {
    div {
        background-color: var(--color-primary);
        border-color: var(--color-primary);

        span {
            display: block;
        }
    }
}