/* UnitDime reusable show/hide password field. */
.password-input-shell {
    position: relative;
    width: 100%;
    min-width: 0;
}

.password-input-shell > input {
    width: 100% !important;
    padding-right: 46px !important;
}

.password-visibility-toggle {
    position: absolute;
    top: 50%;
    right: 8px;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    transform: translateY(-50%);
    padding: 0;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #7b8191;
    cursor: pointer;
    transition: color .18s ease, background .18s ease, transform .18s ease;
}

.password-visibility-toggle:hover {
    color: #554de0;
    background: rgba(99, 91, 255, .08);
}

.password-visibility-toggle:active {
    transform: translateY(-50%) scale(.94);
}

.password-visibility-toggle:focus-visible {
    outline: 2px solid rgba(99, 91, 255, .48);
    outline-offset: 1px;
}

.password-visibility-toggle svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (prefers-reduced-motion: reduce) {
    .password-visibility-toggle { transition: none; }
}
