/* AdminHub → General Directory. Lists reuse the Personnel and EDMS styles. */
#tab-contacts .sr-only,.dir-dialog .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#tab-contacts [hidden]{display:none!important}
#tab-contacts .card-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#tab-contacts .pe-add{margin-left:auto;height:38px;padding:0 16px;border-radius:12px;font-size:13px}
#tab-contacts .edms-tab span{font-weight:600;color:var(--muted)}
.dir-toolbar .pe-filter{flex:0 1 220px}
.dir-actions{display:flex;gap:8px;margin-left:auto}
.dir-actions .btn{display:inline-flex;align-items:center;gap:6px;height:38px}
.dir-actions .ui-icon{width:16px;height:16px}
.dir-table td{vertical-align:top}
.dir-table tr.is-inactive td{opacity:.6}
.dir-name{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}
.dir-name .edms-badge{margin-left:0}
.edms-chip small{font-weight:500;color:var(--muted)}
.dir-more{cursor:help}
.dir-contact{min-width:220px}
.dir-line{display:flex;align-items:center;gap:4px;margin-bottom:4px}
.dir-link{display:inline-flex;align-items:center;gap:6px;min-width:0;color:var(--blue);text-decoration:none;font-size:13px;font-weight:600}
.dir-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dir-link:hover span{text-decoration:underline}
.dir-link svg,.dir-copy svg{flex:0 0 auto;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dir-copy{display:grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}
.dir-copy:hover{background:var(--blue-lt);color:var(--blue)}
.dir-copy:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(79,107,246,.35)}
.dir-copy.is-copied{color:var(--green)}
.dir-groups-note{margin:0;padding:10px 14px;border-radius:12px;background:var(--blue-lt);color:var(--slate);font-size:13px;line-height:1.5}
#contacts-empty{padding:28px 0}
.dir-print{display:none}
@media (max-width:640px){
  .dir-actions{margin-left:0}
  .dir-table th:nth-child(3),.dir-table td:nth-child(3){display:none}
  .dir-contact{min-width:0}
}
@media print{
  body.dir-printing #tab-contacts>.card{display:none!important}
  body.dir-printing .dir-print{display:block!important;font-size:10.5px;color:#000}
  body.dir-printing #print-card{display:none!important}
  .dir-print h2{margin:0 0 4px;font-size:15px}
  .dir-print p{margin:0 0 10px;color:#444}
  .dir-print table{width:100%;border-collapse:collapse}
  .dir-print th,.dir-print td{padding:4px 6px;border:1px solid #ccc;text-align:left;vertical-align:top}
  .dir-print th{background:#eef2ff;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .dir-print tr{break-inside:avoid}
}
.dir-name-grid{grid-template-columns:minmax(0,.8fr) minmax(0,2fr) minmax(0,.7fr) minmax(0,2fr) minmax(0,.8fr)}
@media (max-width:640px){.dir-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dir-name-grid .pe-field:nth-child(2),.dir-name-grid .pe-field:nth-child(4){grid-column:span 2}}
