.bh-password-tools{display:flex;align-items:stretch;position:relative;flex:1 1 auto;min-width:0;width:100%;gap:0}
.bh-password-tools>input.form-control{flex:1 1 12rem;width:100%;min-width:0;border-top-right-radius:0;border-bottom-right-radius:0;padding-right:.75rem}
.bh-password-tools>button{flex:0 0 34px;border:1px solid var(--bs-border-color,#cbd5e1);border-left:0;background:var(--bs-body-bg,#fff);color:var(--bs-body-color,#334155);padding:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.bh-password-tools>button:last-child{border-radius:0 6px 6px 0}
.bh-password-tools>button:hover{background:var(--bs-tertiary-bg,#edf2f7)}
.bh-password-tools>button:focus-visible{outline:2px solid #2876d7;outline-offset:1px;z-index:1}
.bh-password-tools>button:disabled{opacity:.5;cursor:default}
.bh-password-tools svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.bh-password-tools__status{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
/* Validation messages remain visible after the input receives its toolbar. */
.bh-password-tools:has(>.is-invalid)~.invalid-feedback{display:block}
