.password-control{position:relative;display:flex;align-items:center;width:100%}.password-control>input{flex:1;min-width:0;padding-right:4.5rem!important}.password-toggle{position:absolute;right:.45rem;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.35rem}.password-toggle:focus-visible{outline:2px solid currentColor;outline-offset:2px}.password-requirements{font-size:.82rem;line-height:1.45;margin:.45rem 0 1rem;color:#687384}.password-requirements strong{display:block;color:inherit;margin-bottom:.2rem}.password-requirements ul{list-style:none;padding:0;margin:0}.password-requirements li::before{content:'○';display:inline-block;width:1.2em}.password-requirements li.is-valid{color:#177245}.password-requirements li.is-valid::before{content:'✓'}.password-requirements li.is-invalid{color:#a33b3b}
.password-toggle{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%}.password-toggle svg{display:block;width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-toggle:hover{background:rgba(132,164,198,.16)}
