/* Assure Wealth CRM V7.5.2 — customer/policy productivity + opaque searchable pickers */
:root{
  --v752-picker-menu-bg:#ffffff;
  --v752-picker-input-bg:#ffffff;
  --v752-family-bg:#f4f7ff;
  --v752-family-border:#8eaee8;
  --v752-master-muted-bg:#f7f8fb;
}
html[data-theme="dark"]{
  --v752-picker-menu-bg:#172033;
  --v752-picker-input-bg:#111827;
  --v752-family-bg:#18243b;
  --v752-family-border:#4f72b5;
  --v752-master-muted-bg:#171f2e;
}
.v75-record-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.v75-record-actions .btn{white-space:nowrap}
.v75-policy-card{padding:11px 12px;margin:0 -4px;border-radius:10px;border-left:3px solid transparent;transition:background .15s ease,border-color .15s ease}
.v75-policy-card + .v75-policy-card{border-top:1px solid var(--line)}
.v75-policy-primary{background:color-mix(in srgb,var(--gold,#c99b3b) 7%,transparent);border-left-color:color-mix(in srgb,var(--gold,#c99b3b) 55%,transparent)}
.v75-policy-family{background:color-mix(in srgb,var(--blue,#2e66d4) 4%,transparent);border-left-color:color-mix(in srgb,var(--blue,#2e66d4) 30%,transparent)}
.v75-holder-pill{display:inline-flex;align-items:center;gap:4px;margin-top:5px;padding:3px 7px;border-radius:999px;border:1px solid var(--line);font-size:11px;font-weight:700;color:var(--muted)}
.v75-policy-primary .v75-holder-pill{color:var(--text)}
.v75-doc-filters{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 12px}
.v75-doc-filter{border:1px solid var(--line);background:var(--surface2);color:var(--muted);border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;cursor:pointer}
.v75-doc-filter.active{background:var(--blue);border-color:var(--blue);color:#fff}
.v75-upload-limit{margin-top:6px;font-weight:700}
.v75-other-holder[hidden],.v752-policy-family-box[hidden]{display:none!important}
.v75-edit-head{gap:12px}
.customer-photo-stack .customer-photo,.customer-photo-stack .customer-photo-placeholder{width:74px!important;height:74px!important;border-radius:18px!important}
.customer-photo-stack .customer-photo-placeholder{font-size:26px!important}

/* Policy Holder > Other Name: one clear family-member box inside the policy form. */
.v752-policy-family-box{grid-column:1/-1;border:1px solid var(--v752-family-border);background:var(--v752-family-bg);border-radius:12px;padding:12px 13px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--v752-family-border) 15%,transparent)}
.v752-policy-family-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.v752-policy-family-box .formgrid{margin:0}
.v752-policy-family-box input,.v752-policy-family-box select{background:var(--v752-picker-input-bg)!important}

/* Compact custom searchable dropdown: same interaction for Policy Type, Insurer and Product. */
.v751-picker{position:relative;min-width:0}
.v751-picker-shell{position:relative;display:flex;align-items:center}
.v751-picker-search{width:100%;padding-right:38px!important;background:var(--v752-picker-input-bg)!important;color:var(--text)!important}
.v751-picker-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:18px;line-height:1;cursor:pointer}
.v751-picker-toggle:hover,.v751-picker.open .v751-picker-toggle{background:var(--surface2);color:var(--text)}
.v751-picker-menu{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 5px);max-height:230px;overflow:auto;border:1px solid var(--line);border-radius:11px;background:var(--v752-picker-menu-bg)!important;box-shadow:0 16px 38px rgba(0,0,0,.28);padding:5px;opacity:1!important;backdrop-filter:none!important}
.v751-picker-menu[hidden]{display:none!important}
.v751-picker-option{display:block;width:100%;border:0;background:transparent;color:var(--text);text-align:left;padding:8px 9px;border-radius:8px;cursor:pointer;font:inherit;font-size:13px}
.v751-picker-option:hover,.v751-picker-option:focus{background:var(--surface2);outline:none}
.v751-picker-option[hidden]{display:none!important}
.v751-picker-empty{padding:9px}
.v751-picker.open .v751-picker-search{border-color:color-mix(in srgb,var(--blue,#2e66d4) 70%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--blue,#2e66d4) 12%,transparent)}

/* Insurance Masters */
.v752-master-grid{align-items:start}
.v752-master-add{padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:10px}
.v752-master-search-row{margin:8px 0 12px}
.v752-master-search-row input{background:var(--v752-picker-input-bg)!important}
.v752-master-group{border:1px solid var(--line);border-radius:11px;margin:8px 0;background:var(--v752-master-muted-bg)}
.v752-master-group>summary{padding:10px 11px;cursor:pointer}
.v752-master-list{padding:0 9px 9px}
.v752-master-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 7px;border-top:1px solid var(--line)}
.v752-master-row:first-child{border-top:0}
.v752-master-row.is-hidden{opacity:.65}
.v752-master-row[hidden]{display:none!important}
.v752-master-empty{padding:8px 7px}

@media(max-width:560px){
  .customer-photo-stack .customer-photo,.customer-photo-stack .customer-photo-placeholder{width:62px!important;height:62px!important;border-radius:16px!important}
  .v75-record-actions{justify-content:flex-start}.v75-policy-card{padding:10px 8px}
  .v751-picker-menu{max-height:200px}
  .v752-policy-family-title{align-items:flex-start;flex-direction:column;gap:3px}
  .v752-master-row{align-items:flex-start;flex-direction:column}
}
