body.ecommerce input[data-event="password-strenght"][type="password"] ,
body.ecommerce input[data-event="password-strenght"][type="pwd"] {
    -webkit-text-security: disc !important;
    /*
    font-size: 1.8em !important;
    line-height: .5em !important;
    letter-spacing: 2px !important;
    */
    letter-spacing: 2px !important;
}
body.ecommerce input[data-event="password-strenght"][type="password"]::placeholder ,
body.ecommerce input[data-event="password-strenght"][type="pwd"]::placeholder {
    letter-spacing: normal;
}



.password-strenght-wrapper .pwds-strenght-data {
    overflow: hidden;
    transition: max-height .5s;
    max-height: 60px;
}
.password-strenght-wrapper:not([data-focus="true"]) .pwds-strenght-data {
    max-height: 0;
}
.password-strenght-wrapper .pwds-strenght-line {
    height: 5px;
    width: 100%;
    background-color: #ddd;
    margin: 3px 0 8px 0;
}
.password-strenght-wrapper .pwds-strenght-line::before {
    content: "";
    display: block;
    height: 5px;
    width: 0%;
    transition: width .3s;
}
.password-strenght-wrapper.level-error {
    --pwds-background-color: #555;
    --pwds-width: 100%;
    --pwds-color: #fff;
}
.password-strenght-wrapper.level-0 {
    --pwds-background-color: #ff4a00;
    --pwds-width: 20%;
    --pwds-color: #fff;
}
.password-strenght-wrapper.level-1 {
    --pwds-background-color: #ff8800;
    --pwds-width: 40%;
    --pwds-color: #fff;
}
.password-strenght-wrapper.level-2 {
    --pwds-background-color: #dbff00;
    --pwds-width: 60%;
    --pwds-color: inerhit;
}
.password-strenght-wrapper.level-3 {
    --pwds-background-color: #3ad24b;
    --pwds-width: 80%;
    --pwds-color: #fff;
}
.password-strenght-wrapper.level-4 {
    --pwds-background-color: #3ab04b;
    --pwds-width: 100%;
    --pwds-color: #fff;
}

.password-strenght-wrapper .pwds-strenght-line::before {
    background-color: var(--pwds-background-color);
    width: var(--pwds-width);
}

.password-strenght-wrapper .pwds-strenght-label {
    background-color: var(--pwds-background-color);
    color: var(--pwds-color) !important;
    text-align: center;
    line-height: 1.5;
    padding: 3px .5rem 3px .5rem;
    border: solid 1px rgba(0,0,0,.1);
    margin: 0 0 0 0;
    transition: background-color .3s, color .3s;
    user-select: none;
}

.password-strenght-content {
    --icon-color: #00ff00;
    position: relative;
    display: flex;
}
.password-strenght-content>input[data-event="password-strenght"] {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.password-strenght-content>.pwd-info {
    display: flex;
    justify-content: center;
}
.password-strenght-content>.pwd-info>button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    flex: 0 0 35px;
    background-color: #eee;
    border: solid 1px #aaa;
    border-left: 0;
    cursor: pointer;
}
.password-strenght-content>.pwd-info>button>svg {
    width: 16px;
    height: 16px;
    fill: #999;
    transition: all .3s;
}
.password-strenght-content>.pwd-show {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    flex: 0 0 35px;
    background-color: #eee;
    border: solid 1px #aaa;
    border-left: 0;
    cursor: pointer;
}
.password-strenght-content>.pwd-show>svg {
    width: 18px;
    height: 18px;
    fill: #999;
    transition: all .3s;
}
.password-strenght-content>.pwd-info>button:hover>svg ,
.password-strenght-content>.pwd-show:hover>svg {
    fill: #555;
}

.password-strenght-content>.pwd-info.active>button ,
.password-strenght-content>.pwd-show.active {
    background-color: #555;
}
.password-strenght-content>.pwd-info.active>button>svg ,
.password-strenght-content>.pwd-show.active>svg {
    fill: #fff;
}
.password-strenght-content>.pwd-show>svg.pwd-icon {
    display: block;
}
.password-strenght-content>.pwd-show>svg.pwd-icon-active {
    display: none;
}
.password-strenght-content>.pwd-show.active>svg.pwd-icon {
    display: none;
}
.password-strenght-content>.pwd-show.active>svg.pwd-icon-active {
    display: block;
}


.password-strenght-content>.pwd-info>.pwd-info-layer {
    display: none;
    position: absolute;
    bottom: 100%;
    width: 350px;
    background: #555;
    color: #fff;
    z-index: 50;
    padding: 1.5rem;
    border-radius: 1rem !important;
    box-shadow: 0 5px 10px rgba(0,0,0,.3);
    margin: 0 0 10px 0;
    border: solid 1px rgba(0,0,0,.1);
    user-select: none;
    font-weight: normal;
}
.password-strenght-content>.pwd-info>.pwd-info-layer.position-bottom {
    top: 100%;
    bottom: auto;
    margin: 10px 0 0 0;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer {
    display: block;
}

.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice-title ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    font-weight: bold;
    padding: 0 0 0 0;
    margin: 0 0 .2rem 0;
    color: #fff !important;
    min-height: 22px;
    box-sizing: border-box;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice-title.margin-top {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: solid 1px rgba(255,255,255,.5);
    min-height: calc(22px + 1px + 1rem);
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice-title>button.close-pwd-info-layer ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-title>button.close-pwd-info-layer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 22px;
    height: 22px;
    background-color: transparent;
    border: 0;
    fill: rgba(255,255,255,.5);
    transition: fill .3s;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice-title>button.close-pwd-info-layer:hover ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-title>button.close-pwd-info-layer:hover {
    fill: #fff;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice-title>button.close-pwd-info-layer>svg ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-title>button.close-pwd-info-layer>svg {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-criteri {
    margin: 0 0 0 0 !important;
    padding: 0 0 0 20px !important;
    font-weight: normal;
    font-size: .875em;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice>li ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-criteri>li {
    margin: 0 0 5px 0;
    padding: 0 0 0 0;
    font-weight: normal;
    color: rgba(255,255,255,.7) !important;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice>li strong ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-criteri>li strong {
    font-weight: 700;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-criteri>li strong {
    color: rgba(255,255,255,1) !important;
}
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice span.special-characters ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-criteri span.special-characters {
    font-weight: normal;
    font-family: monospace, 'Courier New', Courier;
    letter-spacing: -2px;
}

.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice ,
.password-strenght-content>.pwd-info.active>.pwd-info-layer .pwd-info-advice-title {
    opacity: .6;
}


@media (max-width: 991px) {
    .password-strenght-content>.pwd-info>.pwd-info-layer {
        inset: auto -35px 100% auto;
    }
    
}
@media (min-width: 600px) {
    .password-strenght-content>.pwd-info>.pwd-info-layer {
        text-align: left;
        width: 550px;
    }
}
