.workspace .directory-links { margin: 0; padding-left: 1.25rem; }
.workspace .directory-links li { margin-block: .375rem; }
.workspace .directory-links p { margin-block: .25rem; }
.workspace .directory-details dt { margin-top: 1rem; font-weight: 700; }
.workspace .directory-details dd { margin: .25rem 0 1rem; }

/* Staff names and sortable headers use bold text and visible focus without underlines. */
.workspace .staff-table thead a { text-decoration: none; }
.workspace a.staff-name { display: inline-flex; align-items: center; gap: .875rem; min-height: 44px; color: var(--ink); font-weight: 700; text-decoration: none; border-radius: var(--radius); }
.workspace a.staff-name:hover { color: var(--ink); background: var(--selected); }
.workspace .staff-photo { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem; overflow: hidden; border-radius: 50%; color: var(--muted); background: var(--canvas); }
.workspace .staff-photo img { width: 100%; height: 100%; object-fit: cover; }
.workspace .staff-photo > .icon { width: 50%; height: 50%; }
.workspace .staff-photo-large { width: min(8rem, 100%); height: auto; aspect-ratio: 1; }
.workspace .staff-row-actions { gap: .375rem; }
.workspace .staff-icon-action { min-width: 44px; padding: .5rem .625rem; }
.workspace .staff-row-actions :is(.staff-icon-action, .row-edit) { color: var(--ink); border-color: var(--border); background: var(--surface); }
.workspace .staff-row-actions :is(.staff-icon-action, .row-edit):hover { color: var(--ink); background: var(--selected); }

/* The profile uses the existing card surfaces and adapts to one column. */
.workspace .staff-profile { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); align-items: start; gap: 1.5rem; }
.workspace .staff-profile-column { display: grid; gap: 1.5rem; min-width: 0; }
.workspace .staff-profile .card { margin: 0; }
.workspace .staff-identity-summary { text-align: center; }
.workspace .staff-identity-summary h2 { margin: 1rem 0 .25rem; font-size: 1.375rem; }
.workspace .staff-job-title { color: var(--muted); font-size: 1rem; }
.workspace .staff-contact { margin: 1.5rem 0 0; padding-top: 1rem; border-top: 1px solid var(--line); }
.workspace .staff-contact dd { display: flex; align-items: baseline; gap: .75rem; margin: 0; }
.workspace .staff-contact .icon { flex: none; color: var(--muted); }
.workspace .staff-contact a { min-width: 0; }
.workspace .staff-profile-card { padding: 0; }
.workspace .staff-card-heading { padding: 1rem 1.5rem; border-bottom: 1px solid var(--line); border-radius: var(--card-radius) var(--card-radius) 0 0; background: var(--canvas); }
.workspace .staff-card-heading h2 { margin: 0; }
.workspace .staff-card-body { padding: 1.5rem; }
.workspace .staff-card-body > :last-child { margin-bottom: 0; }
.workspace .staff-facts { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: 1rem; margin-bottom: 0; }
.workspace .staff-facts dt, .workspace .staff-facts dd { margin: 0; }
.workspace .staff-facts dt { color: var(--muted); font-weight: 400; }
.workspace .staff-badge { display: inline-block; padding: .125rem .75rem; border: 1px solid var(--line); border-radius: 1rem; color: var(--ink); background: var(--selected); font-weight: 600; }
.workspace .staff-team-list { list-style: none; margin: 0; padding: 0; }
.workspace .staff-team-list li { display: flex; align-items: baseline; gap: .75rem; padding-block: .75rem; }
.workspace .staff-team-list li + li { border-top: 1px solid var(--line); }
.workspace .staff-team-list .icon { flex: none; color: var(--muted); }
.workspace .staff-remove-access { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.workspace .staff-danger, .workspace .staff-danger:hover { color: var(--error); border-color: var(--error); background: var(--surface); }
@media (max-width: 55rem) {
  .workspace .staff-profile { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 35rem) {
  .workspace .staff-profile-card { padding: 0; }
  .workspace .staff-card-heading, .workspace .staff-card-body { padding: 1rem; }
  .workspace .staff-card-body button { flex-wrap: wrap; padding-inline: .625rem; }
  .workspace .staff-facts { grid-template-columns: minmax(0, 1fr); gap: .5rem; }
  .workspace .staff-facts dd + dt { margin-top: .5rem; }
}

.workspace .mimic-banner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 2rem; border-bottom: 2px solid var(--border); color: var(--ink); background: var(--selected); }
.workspace .mimic-banner p { margin: 0; }
.workspace .mimic-banner span { display: block; }
