.account-password-card-content { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-left: 58px; }
.account-password-card-content p { flex: 1 1 300px; margin: 0; color: #596474; font-size: 13px; line-height: 1.7; }
.account-password-card-content button { flex-shrink: 0; }
.account-password-card-content button svg { width: 16px; height: 16px; }
.account-password-dialog { width: min(520px, calc(100% - 32px)); max-height: calc(100dvh - 32px); padding: 0; border: 1px solid #e7eaf0; border-radius: 20px; background: #fff; color: #17202d; box-shadow: 0 24px 80px #14243a30; overflow: auto; overscroll-behavior: contain; }
.account-password-dialog::backdrop { background: #17202d66; backdrop-filter: blur(4px); }
.account-password-form { display: block; margin: 0; }
.account-password-header { display: flex; align-items: center; gap: 13px; padding: 24px 26px 18px; }
.account-password-title-icon { display: grid; flex: 0 0 42px; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: #f0f5fa; color: #285988; }
.account-password-title-icon svg { width: 23px; height: 23px; }
.account-password-header p { margin: 0 0 5px; color: #6b7585; font-size: 11px; }
.account-password-header h2 { margin: 0; font-size: 21px; letter-spacing: -.025em; }
.account-password-dialog .account-password-close { display: grid; align-self: flex-start; flex: 0 0 36px; width: 36px; height: 36px; min-height: 0; margin-left: auto; padding: 0; border: 1px solid #e5e9ee; border-radius: 10px; background: #fff; color: #596474; font: 24px/1 sans-serif; place-items: center; }
.account-password-body { display: grid; gap: 17px; padding: 0 26px 22px; }
.account-password-notice { margin: 0 0 3px; padding: 13px 14px; border-radius: 10px; background: #f5f7fa; color: #506176; font-size: 12px; line-height: 1.7; }
.account-password-dialog .account-password-field { display: grid; gap: 8px; min-width: 0; color: #354153; font-size: 13px; font-weight: 600; }
.account-password-dialog .account-password-field[hidden], .account-password-dialog [hidden] { display: none; }
.account-password-input { position: relative; display: block; }
.account-password-dialog input { display: block; box-sizing: border-box; width: 100%; min-width: 0; min-height: 46px; margin: 0; padding: 11px 13px; border: 1px solid #dce2e9; border-radius: 10px; outline: none; background: #fff; color: #17202d; font: inherit; font-weight: 400; transition: box-shadow .15s, border-color .15s; }
.account-password-dialog .account-password-input input { padding-right: 48px; }
.account-password-dialog input:focus { border-color: #6999c7; box-shadow: 0 0 0 3px #eaf2fa; }
.account-password-dialog input[aria-invalid="true"] { border-color: #d96058; }
.account-password-dialog input:disabled { opacity: .6; }
.account-password-dialog .account-password-toggle { display: grid; position: absolute; top: 1px; right: 2px; width: 43px; height: calc(100% - 2px); min-height: 0; padding: 0; border: 0; border-radius: 9px; background: transparent; color: #748194; place-items: center; }
.account-password-toggle svg { width: 19px; height: 19px; }
.account-password-toggle .account-password-eye-slash { display: none; }
.account-password-toggle[aria-pressed="true"] .account-password-eye-slash { display: block; }
.account-password-help, .account-password-field small, .account-password-loading { margin: 0; color: #687486; font-size: 12px; font-weight: 400; line-height: 1.65; }
#account-password-rules { margin-top: -9px; }
.account-password-oauth { padding-top: 1px; font-size: 11px; }
.account-password-error { margin: 0; padding: 11px 13px; border-radius: 8px; background: #fff2f1; color: #a52b22; font-size: 12px; line-height: 1.6; }
.account-password-retry { justify-self: start; }
.account-password-footer { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; padding: 18px 26px; border-top: 1px solid #eef0f3; background: #fff; }
.account-password-footer button { min-height: 44px; }
.account-password-dialog button, .account-password-card-content button { cursor: pointer; }
.account-password-dialog button:disabled { cursor: not-allowed; opacity: .6; }
.account-password-dialog button:focus-visible, .account-password-card-content button:focus-visible { outline: 3px solid #b4d3ef; outline-offset: 3px; }
.account-password-dialog .account-password-close:hover, .account-password-dialog .account-password-toggle:hover { background: #f3f5f8; }
@media (max-width: 600px) {
  .account-password-card-content { margin-left: 0; }
  .account-password-dialog { width: calc(100% - 20px); max-height: calc(100dvh - 20px); border-radius: 16px; }
  .account-password-header { padding: 20px 18px 16px; }
  .account-password-body { padding: 0 18px 18px; }
  .account-password-footer { padding: 16px 18px; }
  .account-password-footer button { flex: 1; }
  .account-password-dialog input { font-size: 16px; }
}
.account-password-dialog { border-color: #e5e7eb; border-radius: 16px; color: #171717; box-shadow: 0 24px 70px -20px rgba(15,23,42,.3); }
.account-password-dialog::backdrop { background: rgba(15,23,42,.28); backdrop-filter: blur(4px); }
.account-password-header { padding: 22px 24px 18px; border-bottom: 1px solid #ededed; }
.account-password-title-icon { width: 40px; height: 40px; flex-basis: 40px; border: 1px solid #e5e7eb; border-radius: 10px; background: #fafafa; color: #525252; }
.account-password-title-icon svg { width: 20px; height: 20px; stroke-width: 1.7; }
.account-password-header p { color: #737373; }
.account-password-header h2 { font-size: 20px; font-weight: 650; }
.account-password-dialog .account-password-close { border-color: #e5e7eb; border-radius: 9px; color: #737373; }
.account-password-body { padding: 20px 24px 22px; }
.account-password-notice { border: 1px solid #ededed; border-radius: 10px; background: #fafafa; color: #525252; }
.account-password-dialog .account-password-field { color: #525252; }
.account-password-dialog input { border-color: #dfe3e8; border-radius: 9px; color: #171717; }
.account-password-dialog input:focus { border-color: #adb5e5; box-shadow: 0 0 0 3px rgba(99,102,241,.12); }
.account-password-help,.account-password-field small,.account-password-loading { color: #737373; }
.account-password-footer { padding: 16px 24px; border-top-color: #ededed; }
.account-password-footer button { border-radius: 9px; }
.account-password-dialog button:focus-visible,.account-password-card-content button:focus-visible { outline: 2px solid #5968ce; outline-offset: 3px; }
@media(max-width:600px) {
  .account-password-dialog { border-radius: 14px; }
  .account-password-header { padding: 18px; }
  .account-password-body { padding: 18px; }
  .account-password-footer { padding: 16px 18px; }
}
