.legal-directory-filters { display:grid; grid-template-columns:minmax(180px,2fr) minmax(170px,1fr); gap:18px; margin-bottom:18px; }
.legal-directory { border:1px solid var(--border); border-radius:18px; overflow:hidden; background:var(--surface,#fff); }
.legal-directory-head,.legal-directory-row { display:grid; grid-template-columns:minmax(160px,1.2fr) minmax(150px,1fr) minmax(210px,1.3fr) auto; gap:22px; padding:20px; align-items:center; }
.legal-directory-head { color:var(--muted); background:var(--bg,#f7f8f4); font-size:14px; font-weight:650; }
.legal-directory-row { border-top:1px solid var(--border); }
.legal-directory-row small { display:block; margin-top:8px; color:var(--muted); font-size:14px; line-height:1.5; }
.legal-directory-row strong { font-size:17px; line-height:1.45; }
.legal-directory-row .document-counts { margin:0; gap:6px; }
.doc-count.na { color:#6a626c; background:#eae6ec; }
.doc-count.unknown { color:#866525; background:#f8efd8; }
.legal-checklist-dialog { width:min(760px,calc(100vw - 24px)); max-width:760px; }
.legal-checklist-dialog .document-checklist { box-shadow:none; }
.legal-checklist-dialog .document-mark { border-radius:8px; }
.legal-checklist-dialog .contract-summary .team-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:1050px) { .legal-directory-head { display:none; } .legal-directory-row { grid-template-columns:minmax(150px,1fr) minmax(160px,1fr); } }
@media(max-width:600px) { .legal-directory-filters,.legal-directory-row { grid-template-columns:1fr; gap:14px; } .legal-directory-row { padding:18px; } .legal-checklist-dialog .contract-summary .team-facts { grid-template-columns:1fr; } }

@media(max-width:600px) {
 .legal-checklist-dialog { max-height:calc(100dvh - 24px); padding:20px; }
 .legal-checklist-dialog .document-line { display:grid; grid-template-columns:30px minmax(0,1fr) 36px; gap:10px; }
 .legal-checklist-dialog .document-line > button { margin:0; padding:0; width:36px; height:36px; font-size:0; }
 .legal-checklist-dialog .document-line > button::before { content:'✎'; font-size:18px; }
}
