input[type="checkbox"].toggle {
    opacity: 0;
    position: absolute;
    left: -9000px;
    top: -9000px;
}


input[type="checkbox"].toggle + label {
    position: relative;
    display: block;
    width: 100px;
    height: 100px;
    background-color: #ddd;
    content: "";
}

    


input[type="checkbox"].toggle:not(:checked) ~ label .line {
    position: absolute;
    width: 80%;
    height: 10%;
    background-color: black;
    left: 10%;
    border-radius: 20px;
}

input[type="checkbox"].toggle:not(:checked) ~ label #line1 {
    top: 25%;
    transition: all 0.5s ease-out;

}

input[type="checkbox"].toggle:not(:checked) ~ label #line2 {
    top: 45%;
    opacity: 1.0;
    transition: all 0.3s linear;

}

input[type="checkbox"].toggle:not(:checked) ~ label #line3 {
    top: 65%;
    transition: all 0.5s ease-out;

}


input[type="checkbox"].toggle:checked ~ label .line {
    position: absolute;
    width: 70%;
    height: 10%;
    background-color: red;
    left: 15%;
    border-radius: 20px;
}

input[type="checkbox"].toggle:checked ~ label #line1 {
    top: 45%;
    transform: rotate(-135deg);
    transition: all 0.5s ease-out;

}

input[type="checkbox"].toggle:checked ~ label #line2 {
    opacity: 0.0;
    height: 0%;
    width: 0%;
    left: 50%;

    top: 45%;
    transition: all 0.3s linear;

}

input[type="checkbox"].toggle:checked ~ label #line3 {
    top: 45%;
    transform: rotate(135deg);

    transition: all 0.5s ease-out;
}


