.pwBlock {
    position: relative;
    margin-bottom: 40px;
}

.pwBlock .invalid-feedback {
    position: absolute
}

.pwswitch {
    color: #4e7586;
    background: #e7e7e7;
    border-left: 1px #bbb solid;
    width: 36px;
    font-size: 1em;
    max-height: 48px;
    height: 36px;
    cursor: pointer;
    position: absolute;
    right: 1px;
    bottom: 1px;
    border-radius: 0 .5rem .5rem 0;
    display: flex;
    justify-content: center;
    align-items: center
}

.form-control-lg+.pwswitch {
    top: 1px;
    height: 45px;
}

.pwValidator.validated li {
    color: #f00
}

.pwValidator.validated li:after {
    content: "✘";
    font-weight: bold;
    color: #f00;
    margin-left: 7px
}

.pwValidator ul {
    border: 1px solid #ccc;
    padding: 5px 0 5px 50px
}

.pwValidator ul li {
    text-align: left
}

.pwValidator.validated li.valid:after {
    content: "✓";
    font-weight: bold;
    color: #bccbd2;
    margin-left: 7px
}

.pwValidator.validated li.valid {
    color: #5bb755
}

.pwswitched:valid,
.pwswitched:invalid {
    background-position: right calc(.375em + .1875rem + 40px) center
}