/* HAVAL LAWYER — accessible client account onboarding and personal profile. */
#portalView .accountpanel #accountProfileBtn { display:flex; align-items:center; gap:10px; }
#portalView .accountpanel #accountProfileBtn svg { width:16px; height:16px; }
.hv-account-modal .modalbody { padding-block:23px; }
.hv-account-modal .modalhead h3 { font-weight:800; letter-spacing:-.01em; }
.hv-account-modal .field label { font-weight:750; font-size:13px; }
.hv-account-modal .field input { width:100%; min-height:48px; border-radius:11px; }
.hv-account-modal .small.muted { line-height:1.8; margin-top:7px; }
.hv-account-modal .modalfoot { flex-wrap:wrap; gap:10px; }
.hv-account-modal .modalfoot .btn { min-height:44px; }
.hv-onboarding-step{
 display:inline-flex;align-items:center;gap:8px;
 border-radius:999px;border:1px solid #bddcc6;
 background:#eaf5ed;color:#225e42;
 font-size:11px;font-weight:800;padding:6px 12px;margin-bottom:12px;
}
.hv-account-alert{
 padding:12px 14px;margin:0 0 15px;border-radius:11px;
 border:1px solid #efb4a8;background:#fff0ec;
 color:#933526;font-size:12px;line-height:1.9;font-weight:720;
 overflow-wrap:anywhere;
}
.hv-account-alert.hidden{display:none!important}
.hv-password-field{display:flex;align-items:center;position:relative;min-width:0}
.hv-password-field input{width:100%; min-height:50px;padding-inline-end:52px!important;box-sizing:border-box}
.hv-password-field .hv-password-visibility{
 position:absolute;inset-inline-end:5px;top:50%;transform:translateY(-50%);
 display:flex;align-items:center;justify-content:center;
 height:39px;width:40px;border:0;border-radius:9px;
 background:transparent;color:#527567;cursor:pointer;
}
.hv-password-field .hv-password-visibility:hover,
.hv-password-field .hv-password-visibility:focus-visible{
 background:#e4f2e8;color:#0b5139;outline-offset:2px;
}
.hv-password-field .hv-password-visibility svg{height:19px;width:19px}
#forcePasswordModal .modalbox{
 border:1px solid #d9e7dd;border-radius:17px;
 box-shadow:0 25px 80px rgba(4,35,25,.26);overflow:hidden;
}
#forcePasswordModal .modalhead{
 background:linear-gradient(110deg,#fff,#f2f8f4);
 border-bottom:1px solid #e0ebe1;
}
#forcePasswordModal .modalhead h3{color:#143e30;font-weight:850}
#forcePasswordModal .modalbody{padding:22px 23px}
#forcePasswordModal #forcePasswordNotice{
 border:1px solid #bfdccb;background:#eaf6ee;
 color:#1d563c;padding:13px;border-radius:11px;line-height:1.9;
}
#forcePasswordModal .field label{font-weight:800;font-size:13px;color:#1f4335}
#forcePasswordModal .modalfoot{
 background:#f8faf8;border-top:1px solid #e1e9e4;
}
#forcePasswordModal .hv-wide-submit{
 min-height:48px;padding-inline:24px;background:#14563e;border-color:#14563e;
 color:#fff;font-weight:800;
}
#forcePasswordModal .hv-wide-submit:hover{background:#1d7452}
#forcePasswordModal .hv-password-help{font-size:11px;line-height:1.9;margin:10px 0 0}
@media (max-width:600px){
 #forcePasswordModal .modalbox,.hv-account-modal{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 28px);overflow-y:auto;}
 #forcePasswordModal .modalbody,.hv-account-modal .modalbody{padding:17px}
 #forcePasswordModal .modalfoot .btn,.hv-account-modal .modalfoot .btn{flex:1 1 auto}
}
@media(prefers-reduced-motion:reduce){
 .hv-password-visibility,.hv-wide-submit{transition:none}
}
