.client-parties { color:var(--heirlo-navy, #172033); }
.client-parties .pc-header { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.client-parties h2 { margin:0 0 6px; font-size:21px !important; }
.client-parties .pc-header p { margin:0; color:var(--heirlo-muted, #5d6b82); font-size:14px; }
.client-parties button,.client-parties input,.client-parties select { width:auto; min-height:38px; margin:0; padding:8px 12px; border:1px solid #dce3ec; border-radius:8px; background:white; color:var(--heirlo-text-secondary, #475569); font:inherit; font-size:13px; box-shadow:none; }
.client-parties button { cursor:pointer; }
.client-parties .pc-primary { background:var(--heirlo-primary, #a41f35); border-color:var(--heirlo-primary, #a41f35); color:#fff; }
.client-parties .pc-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
.client-parties [type=search] { width:260px; }
.client-parties [data-count] { margin-left:auto; color:var(--heirlo-muted, #5d6b82); font-size:13px; }
.client-parties .pc-status { color:var(--heirlo-primary, #a41f35); font-size:14px; }
.client-parties .pc-status:empty { display:none; }
.client-parties .pc-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; align-items:start; }
.client-parties .pc-card { min-width:0; background:#fff; border:1px solid var(--heirlo-border, #e2e7f0); border-radius:12px; padding:18px; }
.client-parties .pc-card header { display:flex; align-items:center; gap:12px; }
.client-parties .pc-card header > div { min-width:0; }
.client-parties .pc-avatar { display:grid; place-items:center; flex:0 0 40px; height:40px; border-radius:10px; background:#faf0f3; color:var(--heirlo-primary, #a41f35); font-size:14px; font-weight:600; }
.client-parties .pc-card h3 { margin:0 0 6px; font-size:15px !important; line-height:1.5; overflow-wrap:anywhere; }
.client-parties .pc-role { display:inline-block; font-size:12px; color:var(--heirlo-muted, #5d6b82); }
.client-parties .pc-relationship { margin:14px 0 0; font-size:13px; color:var(--heirlo-text-secondary, #475569); overflow-wrap:anywhere; }
.client-parties .pc-contact { display:grid; gap:8px; padding:16px 0 0; font-size:13px; color:var(--heirlo-muted, #5d6b82); }
.client-parties a { color:var(--heirlo-primary, #a41f35); text-decoration:none; overflow-wrap:anywhere; }
.client-parties a:hover { text-decoration:underline; }
.client-parties details { margin-top:16px; border-top:1px solid #eef2f6; padding-top:10px; }
.client-parties summary { cursor:pointer; color:var(--heirlo-muted, #5d6b82); font-size:13px; padding:4px 0; }
.client-parties details h4 { margin:12px 0 6px; font-size:12px !important; color:var(--heirlo-muted, #5d6b82); font-weight:500; }
.client-parties details p { margin:0; font-size:13px; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
.client-parties .pc-empty { grid-column:1 / -1; margin:0; padding:36px 20px; text-align:center; border:1px dashed #dce3ec; border-radius:12px; font-size:14px; color:var(--heirlo-muted, #5d6b82); }
.client-parties [hidden] { display:none !important; }
.client-parties :is(a,button,input,select,summary):focus-visible { outline:2px solid var(--heirlo-primary, #a41f35); outline-offset:3px; }
#matterTabContent:has(.client-parties) .tab-view-body { padding:20px; }
@media(max-width:1100px) { .client-parties .pc-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { .client-parties .pc-grid { grid-template-columns:minmax(0,1fr); } .client-parties .pc-header { flex-wrap:wrap; } .client-parties [type=search] { width:100%; } #matterTabContent:has(.client-parties) .tab-view-body { padding:14px; } }
