/* Client-only layout: the document helper never overlays the workspace. */
.portal-client-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start;width:calc(100% - 32px);max-width:1720px;margin:24px auto 60px}
.portal-client-layout>.portal-client-content{margin:0;width:100%;max-width:none;min-width:0}
.portal-client-layout .practice-main{margin-right:0!important;min-width:0}
.portal-client-layout>.document-helper{position:sticky;top:16px;right:auto;bottom:auto;width:100%;max-width:none;min-width:0;z-index:1;align-self:start;box-shadow:0 4px 16px #16333f12}
.portal-client-layout .helper-content{max-height:calc(100dvh - 100px);overflow:auto;overscroll-behavior:contain}
.portal-client-layout .helper-content .btn{display:flex;width:100%;margin:8px 0;overflow-wrap:anywhere}
.portal-client-layout .helper-toggle{font:600 17px/1.4 Arial,Helvetica,sans-serif;min-height:52px}
.practice-main .sidebar{position:sticky;top:16px;max-height:calc(100dvh - 32px);overflow:auto;z-index:2}
.practice-main .personal-form :is(input,select,textarea,button){scroll-margin-top:150px;scroll-margin-bottom:28px}
@media(max-width:1400px){
  .portal-client-layout .practice-main .split{grid-template-columns:minmax(0,1fr);gap:0}
  .portal-client-layout .practice-main .sidebar{top:0;padding:12px;margin:0;box-shadow:0 3px 10px #102e4614;max-height:180px}
  .portal-client-layout .sidebar nav{display:flex;gap:8px;overflow-x:auto}
  .portal-client-layout .sidebar .step{flex:0 0 auto;width:auto;max-width:245px;margin:0;font-size:15px}
  .portal-client-layout .sidebar .eyebrow{display:none}
  .portal-client-layout .sidebar #saved{margin:6px 0 0;font-size:13px}
  .portal-client-layout .personal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1100px){
  .portal-client-layout{display:flex;flex-direction:column;gap:16px}
  .portal-client-layout>.document-helper{position:static;order:-1;width:100%;z-index:auto}
  .portal-client-layout .helper-content{max-height:50dvh}
}
@media(max-width:850px){
  .portal-client-layout .personal-grid{grid-template-columns:minmax(0,1fr)}
  .portal-client-layout .sidebar .step{font-size:14px;max-width:185px;padding:10px}
}
@media(max-width:420px){
  .portal-client-layout{width:calc(100% - 16px);margin-top:12px}
  .portal-client-layout .practice-main .panel{padding:12px}
  .portal-client-layout .person-card{padding:10px}
}
@media print{.portal-client-layout{display:block}.portal-client-layout>.document-helper,.practice-main .sidebar{display:none}}
/* In-flow address suggestions cannot obscure private organizer fields. */
.practice-main .mailing-address-row {display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px;align-items:start;}
.mailing-address-row>div {min-width:0;}
.practice-main .personal-grid .mailing-address-row label small {display:inline;}
.practice-main .mailing-address-row input {height:44px;min-height:44px;padding:10px 12px;font-size:16px;line-height:22px;}
@media(max-width:600px){.practice-main .mailing-address-row {grid-template-columns:minmax(0,1fr);gap:0;}}
.practice-main textarea.mailing-address {display:block;height:44px;min-height:44px;padding:10px 12px;line-height:22px;font-size:16px;resize:vertical;}
.address-suggestions {border:1px solid #b9cad4;border-radius:8px;padding:4px;margin:4px 0 0;background:white;}
.address-suggestions[hidden] {display:none;}
.practice-main button.address-suggestion {display:block;width:100%;text-align:left;white-space:normal;overflow-wrap:anywhere;margin:0;border:0;border-radius:4px;padding:10px 12px;line-height:1.5;min-height:44px;font-size:14px;font-weight:400;}
.practice-main button.address-suggestion:hover {background:#edf4fa;}
.practice-main .address-status,.practice-main .address-privacy {font-size:13px;line-height:1.4;margin:6px 0 0;}
.address-status:empty {display:none;}
.maps-attribution {font-family:Arial,sans-serif;font-style:normal;font-weight:400;font-size:14px;letter-spacing:normal;color:#5e5e5e;white-space:nowrap;margin:4px 12px;}
.address-privacy a {color:#174b67;text-decoration:underline;}
