.kc-modal-overlay {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    min-width : 320px;
    height: 100%;
    background: rgba(48, 48, 61, 0.47);
    z-index: 5;
}

.kc-modal {
    overflow: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 270px;
    max-width: 90%;
    max-height: 90%;
    padding : 30px;
    border-radius: 4px;
    transform: translate(-50%, -50%);
    background: #ffffff;
    box-shadow: 0 1px 27px 0 rgba(138, 138, 138, 0.48);
}

.kc-modal-close {
    position: absolute;
    right: 0;
    top: 0;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: url('/i/icon-close_greyLight.svg') no-repeat center;
    background-size: 50%;
    cursor: pointer;
}
.kc-modal-close:hover {background-image: url('/i/icon-close_green.svg');}

.kc-modal-title {
    margin-top: 23px;
    margin-bottom: 15px;
}

.kc-modal-option:not(:last-child) {border-bottom: 1px solid #C5C5C5;}

.kc-modal-option {
    padding-top: 17px;
    padding-bottom: 18px;
}

.kc-modal-input {display: none;}
.kc-modal-input:checked + .kc-modal-label:before {
    content: url('/i/icon-check-green.svg');
    position: absolute;
    top: 2px;
    right: 0;
}
.kc-modal-label {
    position: relative;
    display: flex;
    align-items: center;
}
.kc-modal-text {padding-left: 15px;}

@media only screen and (max-width : 640px) {
    .kc-modal-overlay {overflow: auto;}
}

@media only screen and (max-width : 500px) {
    .kc-modal {transform: translate(-135px, -50%);}
}