.password-field {
    position: relative;
}

.password-field > input[type="password"],
.password-field > input[type="text"] {
    padding-right: 3rem;
}

.password-toggle {
    position: absolute;
    top: 50%;
    right: 0.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: #64748b;
    transform: translateY(-50%);
    cursor: pointer;
}

.password-toggle:hover,
.password-toggle:focus-visible {
    color: #15803d;
}

.password-toggle:focus-visible {
    outline: 2px solid #22c55e;
    outline-offset: 2px;
    border-radius: 0.35rem;
}

.password-toggle svg {
    width: 1.2rem;
    height: 1.2rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.password-toggle .icon-eye-off {
    display: none;
}
