.password-entry { margin-block-start:12px; }
.password-hint { margin:12px 0;color:#486581;font-size:.85rem;line-height:1.9; }
.password-error { color:#a61b1b;font-size:.88rem;line-height:1.8;overflow-wrap:anywhere; }
.password-error:empty { display:none; }
.password-dialog { box-sizing:border-box;width:min(460px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #d9e2ec;border-radius:20px;padding:24px;color:#102a43;background:#fff;font-family:inherit;box-shadow:0 20px 80px #102a4326; }
.password-dialog::backdrop { background:#102a4380; }
.password-dialog h2 { margin:0 0 8px;font-size:1.22rem; }
.password-dialog form { display:grid;gap:12px; }
.password-dialog .field { display:grid;gap:6px;margin:0;min-width:0; }
.password-dialog input { box-sizing:border-box;width:100%;min-width:0;min-height:44px;border:1px solid #bcccdc;border-radius:10px;padding:10px 12px;font:inherit; }
.password-dialog [hidden] { display:none; }
.password-actions { display:flex;gap:10px;flex-wrap:wrap;margin-top:6px; }
.password-actions .btn { flex:1;min-height:44px; }
.password-status { font-size:.8rem;color:#11695d;overflow-wrap:anywhere; }
.password-status:empty { display:none; }
.password-dialog :focus-visible { outline:3px solid #188b7b;outline-offset:3px; }
@media(max-width:900px) { .topbar-actions{flex-wrap:wrap!important}#btn-account-password{min-height:36px;padding:0 9px;font-size:12px}.password-status{flex-basis:100%} }
@media(max-width:480px) { .password-dialog{padding:19px}.password-status{width:100%} }
