.wpvs-login-form {
    max-width: 450px;
    margin: 0 auto;
    padding: 0;
    border-radius: 5px;
    overflow: hidden;
}

.wpvs-login-form input {
    width: 100%;
    margin: 3px 0 10px;
    padding: 10px 5px;
    display: block;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.wpvs-login-form input[type="checkbox"] {
    display: inline-block;
    width: auto;
    margin: 0;
}

.wpvs-login-form input[type="submit"] {
    margin: 15px 0;
    max-width: none;
}

.wpvs-login-form p {
    margin: 0;
}

.wpvs-login-form p.rvs-error {
    margin: 0 0 20px;
}

.wpvs-login-form p.login-remember {
    text-align:right;
    margin: 0 2%;
}

a.rwpvs-forgot-password {
    display: block;
    margin: 10px 0 0;
    font-size: 14px;
}

.wpvs-login-labels {
    overflow: hidden;
    clear: both;
    text-align: center;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 0.5fr));
    align-items: center;
}

label.wpvs-login-label {
    display: block;
    padding: 10px 5px;
    opacity: 0.6;
    cursor: pointer;
}

label.wpvs-login-label.active {
    font-weight: bold;
    opacity: 1;
}

label.wpvs-login-label:hover {
    color: #27ae60;
    opacity: 1;
}

.wpvs-login-section {
    padding: 20px;
    display: none;
}

.wpvs-login-section.active {
    display: block;
}

input.wpvs-ca-disabled-recaptcha {
    display: none !important;
}

.wpvs-agreement-checkbox-container {
    overflow: hidden;
    margin: 25px auto;
    display: grid;
    grid-template-columns: 25px auto;
    grid-gap: 10px;
    align-items: center;
}

.wpvs-login-form .wpvs-agreement-checkbox-container input[type="checkbox"] {
    margin: 0 auto;
}

select.wpvs-update-user-plan-status,
.rwpp-membership-select {
    -webkit-appearance: menulist;
}
