.employee-directory-tools { display:flex; flex-wrap:wrap; gap:10px; padding:14px 0; }
.employee-directory-tools input { flex:1; min-width:0; min-height:44px; padding:10px; border:1px solid var(--border); border-radius:8px; font:inherit; }
.employee-directory-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr)); gap:12px; }
.employee-directory-card { min-width:0; border:1px solid var(--border); border-radius:12px; padding:16px; display:grid; gap:8px; overflow-wrap:anywhere; }
.employee-directory-card .btn { min-height:44px; }
.employee-card-dialog { width:900px; max-width:96vw; display:flex; flex-direction:column; overflow:hidden; }
.employee-card-dialog form { display:flex; flex-direction:column; min-height:0; }
.employee-card-dialog .modal-body { padding:16px; min-height:0; overflow-y:auto; }
.employee-card-dialog :is(.modal-head,.modal-foot) { flex-shrink:0; }
.employee-card-dialog details { margin-bottom:12px; border:1px solid var(--border); border-radius:12px; }
.employee-card-dialog summary { padding:14px; min-height:48px; cursor:pointer; font-weight:700; }
.employee-card-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:0 14px 14px; }
.employee-card-field { display:grid; align-content:start; gap:6px; min-width:0; }
.employee-card-field input, .employee-card-field select, .employee-card-field textarea { width:100%; min-width:0; min-height:44px; padding:10px; border:1px solid var(--border); border-radius:8px; color:var(--text); background:#fff; font:inherit; }
.employee-card-field textarea { resize:vertical; }
.employee-card-help { padding:0 14px 14px; color:var(--muted); line-height:1.6; overflow-wrap:anywhere; }
.employee-card-dialog .modal-foot { flex-wrap:wrap; }
.employee-card-dialog .modal-foot .btn { min-height:44px; }
.employee-card-dialog :disabled { opacity:.6; cursor:not-allowed; }
.employee-card-notice { line-height:1.6; padding:12px; background:#eff6ff; border-radius:8px; margin-bottom:12px; }
.employee-card-notice.error { background:#fef2f2; color:#991b1b; }
@media(max-width:600px) { .employee-card-fields { grid-template-columns:minmax(0,1fr); } .employee-card-dialog .modal-head { gap:10px; } }
