/* Client list pagination */
.list-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:15px 22px;border-top:1px solid #e9ecf3}
.list-toolbar{min-height:62px;padding-top:11px;padding-bottom:11px;border-top:0;border-bottom:1px solid #e9ecf3;background:#fbfcff}
.list-footer>label{display:flex;align-items:center;gap:10px;color:#69758d;font-size:12px;font-weight:700;white-space:nowrap}
.list-footer select{width:78px;min-height:36px;padding:7px 28px 7px 10px;border-color:#d8deed;border-radius:8px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%235364a6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 8px center;appearance:none;color:#34446b;font-weight:750}
.pagination{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px}
.pagination a,.pagination-gap{min-width:35px;min-height:35px;display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:8px;font-size:12px;font-weight:750;color:#65718d}
.pagination a:hover{background:#f0f2ff;color:#4256ad}
.pagination a[aria-current]{background:#4b5fba;color:#fff;box-shadow:0 3px 8px #4b5fba2e}
.pagination-gap{min-width:22px;padding:0;color:#9ca4b6}
@media(max-width:700px){.list-footer{align-items:flex-start;flex-direction:column;gap:13px}.pagination{justify-content:flex-start}.pagination a,.pagination-gap{min-width:32px;min-height:32px;padding:6px 8px}}

/* Client profile overview and section status */
.profile-heading{margin-bottom:20px}
.profile-summary{margin-bottom:22px;padding:24px 27px;background:linear-gradient(135deg,#fff 0%,#fbfaff 100%);border:1px solid #e5e7f0;border-radius:17px;box-shadow:0 7px 24px #3541780b}
.profile-summary-head{display:flex;justify-content:space-between;align-items:start;gap:18px}
.profile-summary-head h1{margin:7px 0 5px;color:#24314d;font-size:32px;line-height:1.1;letter-spacing:-.05em}
.profile-summary-head p{margin:0;color:#748198;font-size:13px;line-height:1.45}
.profile-new{padding-top:30px;padding-bottom:30px}
.profile-updated{color:#8892a6;font-size:11px;font-weight:650;white-space:nowrap}
.profile-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:19px;padding-top:18px;border-top:1px solid #e9ebf3}
.profile-fact{min-width:0;padding:0 20px;border-left:1px solid #e9ebf3}
.profile-fact:first-child{padding-left:0;border-left:0}
.profile-fact>span{display:block;margin-bottom:7px;color:#8490a5;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.profile-fact strong,.profile-fact a{display:block;overflow-wrap:anywhere;color:#273957;font-size:13px;font-weight:750;line-height:1.45}
.profile-fact a:hover{color:#4b5fba;text-decoration:underline}
.profile-fact small{display:block;margin-top:4px;color:#8b96a8;font-size:11px;line-height:1.35}
.section-nav a{display:flex;align-items:center;justify-content:space-between;gap:9px}
.section-nav .nav-disabled,.section-nav a[aria-disabled="true"]{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:10px 12px;border-radius:8px;color:#a6afc0;font-size:12px;font-weight:650;line-height:1.25;cursor:not-allowed}
.section-nav a[aria-disabled="true"]:hover{background:transparent;color:#a6afc0}
.nav-label{min-width:0}
.section-status{width:21px;height:21px;flex:none;display:grid;place-items:center;border-radius:7px;background:#f1f3f7;color:#9ca7b7;font-size:11px;font-weight:850;line-height:1}
.section-status.has-records{background:#e9edff;color:#5064b6}
.section-status.is-profile{background:#e9edff;color:#5064b6;font-size:19px}
.field.has-error{scroll-margin-top:110px}
.field.has-error .input-wrap>input:not(.native-date),.field.has-error>input{border-color:#d65757;background:#fff9f8;box-shadow:0 0 0 3px #d657571c}
.field-error{display:block;margin-top:6px;color:#b33e3e;font-size:11px;font-weight:700;line-height:1.4}
.field-error[hidden]{display:none}
.file-type-date.has-error{scroll-margin-top:110px}
.file-type-date.has-error .format-date{border-color:#d65757;background:#fff9f8;box-shadow:0 0 0 3px #d657571c}

/* Per-section activity tracker */
.activity-tracker{border-top:1px solid #e9ecf3;padding:27px 30px 30px;background:#fcfcff;border-radius:0 0 16px 16px;scroll-margin-top:96px}
.activity-head{display:flex;align-items:start;justify-content:space-between;gap:18px}
.activity-head h3{margin:6px 0;color:#273149;font-size:20px;letter-spacing:-.035em}
.activity-head p{margin:0;color:#7a859a;font-size:12px;line-height:1.5}
.activity-add{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:7px 12px;border:1px solid #cfd8f4;border-radius:9px;background:#edf0ff;color:#4357a8;font-size:12px;font-weight:800;white-space:nowrap}
.activity-add:hover{background:#e1e7ff}
.activity-add>span{font-size:19px;line-height:1}
.activity-add:disabled{opacity:.5;cursor:not-allowed}
.activity-empty{margin:22px 0 0;padding:18px;border:1px dashed #dce2f0;border-radius:10px;color:#8994a9;font-size:12px;text-align:center}
.activity-history{display:grid;gap:10px;margin-top:21px;max-height:380px;overflow:auto}
.activity-entry{padding:14px 16px;border:1px solid #e5e9f2;border-radius:10px;background:#fff}
.activity-entry-meta{display:flex;align-items:center;gap:9px;color:#596991;font-size:11px;font-weight:800}
.activity-initials{padding:4px 7px;border-radius:6px;background:#edf0ff;color:#4b5fba}
.activity-entry p{margin:9px 0 0;color:#37445e;font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.activity-form{display:grid;gap:12px;margin-top:19px}
.activity-form[hidden]{display:none}
.activity-rows{display:grid;gap:12px}
.activity-row{padding:16px;border:1px solid #dce3f3;border-radius:12px;background:#fff}
.activity-row-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;color:#5264a1;font-size:12px}
.activity-remove{width:28px;height:28px;border:0;border-radius:7px;background:#f3f4f8;color:#8390aa;font-size:21px;line-height:1}
.activity-remove:hover{background:#fff0ed;color:#aa5548}
.activity-fields{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,1fr);gap:14px}
.activity-fields .field label{font-size:11px}
.activity-fields input,.activity-fields textarea{font-size:13px}
.activity-note-field{grid-column:1/-1}
.activity-note{display:block;width:100%;min-height:94px;resize:vertical;padding:11px 12px;border:1px solid #cfddda;border-radius:9px;background:#fff;color:#17353a;font:inherit;outline:none}
.activity-note:focus{border-color:#5367bb;box-shadow:0 0 0 3px #5367bb24}
.activity-actions{display:flex;justify-content:flex-end;gap:9px}
@media(max-width:760px){.activity-tracker{padding:22px 20px}.activity-head{align-items:start}.activity-add{font-size:0;padding:6px 10px}.activity-add>span{font-size:23px}.activity-fields{grid-template-columns:1fr}}
@media(max-width:760px){.profile-summary{padding:20px;margin-bottom:16px}.profile-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.profile-fact{padding:0;border:0}.profile-fact:first-child{grid-column:1/-1;padding-bottom:12px;border-bottom:1px solid #e9ebf3}}
.editor-head-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px}
.client-form-section-heading{grid-column:1/-1;display:flex;align-items:center;gap:13px;min-width:0;margin:0 0 2px}
.client-form-section-heading.is-separated{margin-top:16px;padding-top:28px;border-top:1px solid #e3e9f0}
.client-form-section-number{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:11px;background:#e9edff;color:#4d60b6;font-size:12px;font-weight:850;letter-spacing:.04em}
.client-form-section-heading.is-separated .client-form-section-number{background:#fff1de;color:#a46e20}
.client-form-section-heading h3{margin:0;color:#26334b;font-size:18px;line-height:1.3;letter-spacing:-.025em}
.client-form-section-heading p{margin:3px 0 0;color:#7c899b;font-size:12px;line-height:1.45}
.editor-dirty-status{color:#b36c42;font-size:11px;font-weight:750;white-space:nowrap}
@media(max-width:760px){.editor-head-actions{margin-top:14px;justify-content:flex-start}.editor-head-actions .button{margin-top:0}}
.profile-amounts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:17px}
.profile-amounts>div{min-width:0;padding:14px 15px;border-radius:11px;background:#f0f3ff}
.profile-amounts>div:nth-child(2){background:#f4efff}
.profile-amounts>div:nth-child(3){background:#fff1f4}
.profile-amounts>div:nth-child(4){background:#fff5e9}
.profile-amounts span{display:block;color:#6e7894;font-size:10px;font-weight:750;margin-bottom:5px}
.profile-amounts strong{display:block;color:#2c3b64;font-size:17px;letter-spacing:-.025em;white-space:nowrap}
.profile-amounts .profile-file-type-card strong{font-size:13px;line-height:1.4;letter-spacing:0;white-space:normal;overflow-wrap:anywhere}
.profile-amount-note{margin:10px 0 0;color:#8791a4;font-size:10px;line-height:1.45}
@media(max-width:1100px){.profile-amounts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.profile-amounts>div{padding:12px}.profile-amounts strong{font-size:15px}}
@media(max-width:760px){.profile-summary-head h1{font-size:27px}.profile-summary-head{gap:12px}.profile-updated{font-size:10px}.profile-new{padding-top:24px;padding-bottom:24px}}

/* Keep the profile form wide enough to edit comfortably on iPad in portrait. */
@media(max-width:900px){
  .profile-layout{display:block}
  .section-nav{display:none}
  .mobile-section-picker{display:block;margin-bottom:15px}
  .mobile-section-picker label{display:block;margin-bottom:7px;color:#647a7d;font-size:11px;font-weight:800}
}

/* Let file actions and dialogs fit narrow phones without sideways scrolling. */
@media(max-width:560px){
  .editor-form input:not([type="hidden"]):not([type="checkbox"]),
  .editor-form select,
  .mobile-section-picker select,
  .choice-trigger{min-height:46px}
  .calendar-button{width:38px;height:38px;top:4px;right:5px}
  .pdf-action-buttons{gap:6px}
  .pdf-action{min-height:40px;padding:8px 9px}
  .pdf-delete-button{width:40px;height:40px}
  .pdf-file-name span:last-child{overflow-wrap:anywhere;white-space:normal}
  .nav-guard-actions .button{min-width:100%}
}
