
.fd-card{border:1px solid rgba(0,0,0,.1);border-radius:16px;padding:18px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.06);margin:16px 0;}
.fd-success{border-left:6px solid #2e7d32;}
.fd-error{border-left:6px solid #b00020;}
.fd-muted{opacity:.75;}
.fd-small{font-size:.92em;opacity:.9;}
.fd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.fd-span-2{grid-column:span 2;}
@media (max-width:880px){.fd-grid{grid-template-columns:1fr;}.fd-span-2{grid-column:auto;}}
.fd-field label{display:block;font-weight:600;margin-bottom:6px;}
.fd-field input,.fd-field select{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.18);border-radius:12px;background:#fff;}
.fd-hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:18px 0;}
.fd-actions{margin-top:16px;display:flex;gap:10px;}
.fd-btn{display:inline-block;border:none;border-radius:999px;padding:10px 14px;background:#101050;color:#fff;text-decoration:none;cursor:pointer;font-weight:600;}
.fd-btn:hover{opacity:.92;}
.fd-btn-secondary{background:#4E5BFF;}
.fd-hidden{display:none;}
.fd-dir-search{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 18px;}
.fd-dir-search input,.fd-dir-search select{padding:10px 12px;border:1px solid rgba(0,0,0,.18);border-radius:999px;}
.fd-dir-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
@media (max-width:1024px){.fd-dir-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.fd-dir-grid{grid-template-columns:1fr;}}
.fd-person-card{border:1px solid rgba(0,0,0,.1);border-radius:14px;padding:12px;background:#fff;}
.fd-person-name{font-weight:700;margin-bottom:4px;}
.fd-person-name a{text-decoration:none;}
.fd-profile-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;}
.fd-profile-grid{margin-top:10px;}
.fd-label{font-size:.9em;opacity:.75;margin-bottom:2px;}
.fd-value{font-weight:600;}
.fd-family-list{display:flex;flex-wrap:wrap;gap:10px;}
.fd-family-pill{display:flex;gap:8px;align-items:center;padding:8px 12px;border:1px solid rgba(0,0,0,.1);border-radius:999px;text-decoration:none;}
.fd-family-role{opacity:.75;font-size:.9em;}
