/* Account administration: roster filters, one person's page, the permanent
   delete dialog, the spreadsheet import and the activity log (users-admin.js). */
.users-admin-links { display: flex; flex-wrap: wrap; gap: .5rem; margin-block: 1rem 0; }
.users-admin-links .btn { min-height: 44px; display: inline-flex; align-items: center; }
.users-admin-links .btn, .account-roster .act-details, .ua-access a.btn, .ua-deleted a.btn:not(.primary) { color: var(--ink); text-decoration: none; }
.roster-filters { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; align-items: start; margin-top: 1rem; }
.roster-filters label { margin: 0; }
.roster-filters > div { display: grid; gap: .5rem; min-width: 0; flex: 1 1 14rem; max-width: 30rem; }
.roster-filters > div:last-child { flex: 0 1 14rem; }
.roster-filters input, .roster-filters select, .ua-import-form textarea, .ua-import-form input[type=file], .ua-path select, .ua-dialog input {
  font: inherit; color: var(--ink); background: var(--surface); border: 1px solid var(--edge); border-radius: .5rem;
  padding: .65rem .75rem; min-height: 44px; width: 100%; min-width: 0; box-sizing: border-box;
}
.account-roster .act-details { display: inline-flex; align-items: center; text-decoration: none; }

.user-admin { display: grid; gap: 1rem; }
.user-admin .panel { margin: 0; }
.ua-back { margin: 0 0 .75rem; }
.ua-back a { color: var(--accent-deep); font-weight: 650; }
.ua-head h1 { margin-block: 0 .35rem; overflow-wrap: anywhere; }
.ua-meta { display: flex; flex-wrap: wrap; gap: .4rem .75rem; align-items: center; margin: 0 0 .35rem; }
.ua-pill { display: inline-block; border: 1px solid var(--edge); border-radius: 999px; padding: .1rem .6rem; font-size: 13px; font-weight: 700; color: var(--ink-2); background: var(--raise); }
.ua-pill.is-active { border-color: var(--good); color: var(--good); background: var(--good-wash); }
.ua-pill.is-off, .ua-pill.is-error { border-color: var(--bad); color: var(--bad); background: var(--bad-wash); }
.ua-pill.is-note { border-color: var(--accent-deep); color: var(--accent-deep); background: var(--accent-wash); }
.ua-check { display: flex; gap: .6rem; align-items: center; min-height: 44px; margin-top: .6rem; }
.ua-check input { width: 1.25rem; height: 1.25rem; min-height: 0; accent-color: var(--accent-deep); }
.ua-path { display: grid; gap: .5rem; max-width: 36rem; }
.ua-path .btn, .ua-access .btn, .ua-danger .btn, .ua-import-form .btn, .ua-credentials .btn { min-height: 44px; justify-self: start; }
.ua-access h3 { margin-block: 1.25rem .35rem; font-size: 1.05rem; }
.ua-access .ua-reset h3 { margin-top: 0; }
.ua-reset .account-fields { margin-top: .75rem; }
.ua-deleted a.btn { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; }
.ua-status { border-top: 1px solid var(--edge); margin-top: 1rem; }

.ua-danger { border: 1.5px solid var(--bad); }
.ua-danger h2 { color: var(--bad); }
.btn.ua-danger-btn { border-color: var(--bad); color: var(--bad); background: var(--bad-wash); }
.btn.ua-danger-btn:hover { border-color: var(--bad); filter: brightness(.97); }
.ua-dialog .btn.ua-danger-btn:not(:disabled) { background: var(--bad); color: var(--surface); }
.ua-dialog { margin: auto; width: min(92vw, 34rem); max-height: 92vh; overflow: auto; padding: 1.25rem; border: 1px solid var(--edge); border-radius: 12px; background: var(--surface); color: var(--ink); box-sizing: border-box; }
.ua-dialog::backdrop { background: color-mix(in oklch, oklch(23.43% 0.044 257.38) 55%, transparent); }
.ua-dialog h2 { margin-top: 0; font-size: 1.25rem; overflow-wrap: anywhere; }
.ua-dialog ul { padding-left: 1.2rem; }
.ua-dialog li { margin-block: .3rem; }
.ua-dialog label { display: block; margin-block: .75rem .5rem; overflow-wrap: anywhere; }
.ua-dialog-buttons { margin-top: 1rem; flex-wrap: wrap; gap: .5rem; }
.ua-dialog-buttons .btn { min-height: 44px; }

.ua-events { list-style: none; padding: 0; margin: 0; }
.ua-events li { border-top: 1px solid var(--edge); padding-block: .6rem; }
.ua-events li p { margin: .15rem 0; overflow-wrap: anywhere; }

.ua-help { margin-block: 1rem; }
.ua-help summary { min-height: 44px; display: flex; align-items: center; font-weight: 650; cursor: pointer; }
.ua-help summary:focus-visible { outline: 3px solid var(--accent-deep); outline-offset: 3px; }
.ua-help code { overflow-wrap: anywhere; }
.ua-import-form { display: grid; gap: .5rem; max-width: 48rem; }
.ua-import-form label:not(:first-child) { margin-top: .5rem; }
.ua-import-form textarea { font-family: "IBM Plex Mono", monospace; font-size: 13px; resize: vertical; }
.ua-import-form .rowbtns { flex-wrap: wrap; gap: .5rem; margin-top: .5rem; justify-content: flex-start; align-items: center; }
.ua-plan { margin-top: 1rem; overflow-x: auto; }
.ua-plan-table td { overflow-wrap: anywhere; vertical-align: top; }
.ua-row-error td { background: var(--bad-wash); }
.ua-credentials { margin-top: 1rem; }
.ua-credentials h2 { margin-top: 0; font-size: 1.15rem; }
.ua-credentials .rowbtns { flex-wrap: wrap; gap: .5rem; }

.ua-audit .manager-table td { vertical-align: top; overflow-wrap: anywhere; }
.ua-line { display: block; }
.ua-more { min-height: 44px; }

@media (max-width: 600px) {
  .roster-filters > div, .roster-filters > div:last-child { flex-basis: 100%; max-width: none; }
  .ua-dialog { padding: 1rem; }
  .ua-dialog-buttons, .ua-credentials .rowbtns { flex-direction: column; align-items: stretch; }
}
