.pretty_checkbox[type="checkbox"]:not(:checked),
.pretty_checkbox[type="checkbox"]:checked {
    position: absolute;
    left: -9999px;
    transition: all 0.2s ease-in-out
}
.pretty_checkbox[type="checkbox"]:not(:checked)+label,
.pretty_checkbox[type="checkbox"]:checked+label {
    position: relative;
    display: block;
    padding-left: 30px;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    font-weight: 400;
}
.pretty_checkbox[type="checkbox"]:not(:checked)+label:before,
.pretty_checkbox[type="checkbox"]:checked+label:before {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: 2px;
    width: 17px;
    height: 17px;
    font-size: 17px;
    border: 2px solid #fff;
    background: #fff;
    border-radius: 2px;
    box-shadow: none;
    background-repeat: no-repeat;
    background-position: 0px 14px
}
.pretty_checkbox[type="checkbox"]:checked+label:before {
    transition: border-color 0.2s;
    border: 2px solid #fff
}
.pretty_checkbox[type="checkbox"]:not(:checked)+label:after,
.pretty_checkbox[type="checkbox"]:checked+label:after {
    content: "";
    position: absolute;
    display: block;
    top: 2px;
    left: 1px;
    width: 17px;
    height: 17px;
    transition: all 0.2s;
    background-color: #fff;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAJCAYAAADpeqZqAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDQzNEREQjY3MUREMTFFNjhGQkI5QzA2N0ExRjI5QjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDQzNEREQjc3MUREMTFFNjhGQkI5QzA2N0ExRjI5QjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowNDM0RERCNDcxREQxMUU2OEZCQjlDMDY3QTFGMjlCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowNDM0RERCNTcxREQxMUU2OEZCQjlDMDY3QTFGMjlCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PpD1h/0AAAB1SURBVHjaYpSXkmIgEtRD6UYWEjQ0APFfIF7LRKKGaCC+woQkUU+EhpUgQZDzdIC4FoiZYW7GoiEKiFfBTGIW4OV9BaRvAnEgEDtBxR1waQABRqTQCwfipUg2YtUAcx4MrITSS6E0Vg3ompA1MuDSAAIAAQYAOvwbpUrQg5AAAAAASUVORK5CYII=);
    background-repeat: no-repeat;
    background-position: 1px 4px;
    border-radius: 2px
}
.pretty_checkbox[type="checkbox"]:not(:checked)+label:after {
    opacity: 0;
    transform: scale(0)
}
.pretty_checkbox[type="checkbox"]:checked+label:after {
    opacity: 1;
    transform: scale(1);
    animation-duration: 0.2s
}
.pretty_checkbox[type="checkbox"]:disabled:not(:checked)+label:before {
    box-shadow: none;
    border-color: transparent;
    background-color: rgba(255,255,255,0.42);
}
.pretty_checkbox[type="checkbox"]:disabled:checked+label:before {
    box-shadow: none;
    border-color: transparent;
    background-color: rgba(255,255,255,0.42);
}
.pretty_checkbox[type="checkbox"]:disabled:checked+label:after {
    color: #999
}
.pretty_checkbox[type="checkbox"]:disabled+label {
    color: #b6b3ad!important;
}
.pretty_radio:before,
.pretty_radio:after {
    content: " ";
    display: table
}
.pretty_radio:after {
    clear: both
}
.pretty_radio[type="radio"]+label {
    color: #6D6B69
}
.pretty_radio[type="radio"]:not(:checked),
.pretty_radio[type="radio"]:checked {
    position: absolute;
    left: -9999px;
    transition: all 0.2s ease-in-out
}
.pretty_radio[type="radio"]:not(:checked)+label,
.pretty_radio[type="radio"]:checked+label {
    position: relative;
    display: block;
    padding-left: 30px;
    line-height: 32px;
    font-size: 18px;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    font-weight: normal
}
.pretty_radio[type="radio"]:not(:checked)+label:before {
    content: "";
    position: absolute;
    left: 0px;
    top: 4px;
    width: 17px;
    height: 17px;
    border: 2px solid #C7C7C7;
    background: #fff;
    border-radius: 30px;
    box-shadow: none;
    background-repeat: no-repeat;
    background-position: 0px 12px;
    animation-duration: 0.2s
}
.pretty_radio[type="radio"]:checked+label {
    color: #575757
}
.pretty_radio[type="radio"]:checked+label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 17px;
    height: 17px;
    border: 2px solid #575757;
    transition: border cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.2s;
    color: #575757;
    background: #fff;
    border-radius: 30px;
    box-shadow: none;
    background-repeat: no-repeat;
    background-position: 0px 12px;
    animation-duration: 0.2s
}
.pretty_radio[type="radio"]:not(:checked)+label:after,
.pretty_radio[type="radio"]:checked+label:after {
    content: "";
    position: absolute;
    display: block;
    top: 10px;
    left: 6px;
    font-size: 18px;
    width: 12px;
    height: 12px;
    border: none;
    background: #575757;
    border-radius: 30px;
    transition: all 0.2s
}
.pretty_radio[type="radio"]:not(:checked)+label:after {
    opacity: 0;
    transform: scale(0)
}
.pretty_radio[type="radio"]:checked+label:after {
    opacity: 1;
    color: #111111;
    transform: scale(1);
    animation-duration: 0.2s
}
.pretty_radio[type="radio"]:disabled:not(:checked)+label:before {
    box-shadow: none;
    border-color: #bbb;
    background-color: #ddd
}
.pretty_radio[type="radio"]:disabled:checked+label:before {
    box-shadow: none;
    border-color: #bbb;
    background-color: #ddd
}
.pretty_radio[type="radio"]:disabled:checked+label:after {
    color: #999
}
.pretty_radio[type="radio"]:disabled+label {
    color: #aaa
}