.admin-users { --au-accent: #6243c5; --au-border: #e5e1ed; --au-muted: #626575; color: #202231; max-width: 1160px; margin: 0 auto; padding: 28px; }
.admin-users * { box-sizing: border-box; }
.admin-users h1 { font-size: clamp(24px, 3vw, 32px); letter-spacing: -.025em; margin: 0 0 8px; }
.admin-users h2 { margin: 0 0 8px; font-size: 21px; }
.admin-users p { color: var(--au-muted); line-height: 1.6; }
.au-header { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 24px; }
.au-header p { margin: 0; }
.admin-users button, .admin-users input, .admin-users select { font: inherit; border: 1px solid var(--au-border); border-radius: 10px; min-height: 44px; }
.admin-users button { padding: 10px 16px; background: #fff; color: #343044; cursor: pointer; }
.admin-users button:hover:not(:disabled) { border-color: var(--au-accent); }
.admin-users button:disabled { opacity: .55; cursor: not-allowed; }
.admin-users .au-primary { background: var(--au-accent); color: #fff; border-color: var(--au-accent); font-weight: 600; }
.admin-users :is(button,input,select):focus-visible { outline: 3px solid #b4a4eb; outline-offset: 3px; }
.au-panel { background: #fff; border: 1px solid var(--au-border); padding: 24px; border-radius: 16px; margin-bottom: 24px; }
.admin-users label { display: flex; flex-direction: column; gap: 8px; font-size: 14px; font-weight: 600; min-width: 0; }
.admin-users input, .admin-users select { padding: 10px 12px; background: #fff; color: #202231; width: 100%; min-width: 0; }
.admin-users small { font-size: 12px; color: var(--au-muted); font-weight: 400; line-height: 1.6; }
.au-form fieldset { border: 0; margin: 20px 0 0; padding: 0; min-width: 0; }
.au-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.au-company { display: grid; gap: 16px; border-top: 1px solid var(--au-border); margin-top: 20px; padding-top: 20px; }
.au-hint { font-size: 14px; }
.au-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.au-filters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(180px, .6fr) auto; gap: 16px; align-items: end; }
.au-success, .au-error { padding: 14px 16px; border-radius: 10px; margin-bottom: 20px; line-height: 1.6; overflow-wrap: anywhere; }
.au-success { color: #166044; background: #ecf9f2; border: 1px solid #b8dfcb; }
.au-error { color: #9e2638; background: #fff1f2; border: 1px solid #f2c5cd; }
.au-error button { margin: 8px; }
.au-count { font-size: 13px; margin-top: 24px; }
.au-user-list { list-style: none; padding: 0; margin: 0; }
.au-user-list li { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) auto; gap: 20px; align-items: center; padding: 20px 0; border-top: 1px solid var(--au-border); overflow-wrap: anywhere; }
.au-identity { display: grid; gap: 6px; }
.au-identity span, .au-company-name { color: var(--au-muted); font-size: 14px; }
.au-badge { display: inline-block; background: #f1edfa; color: #59428b; padding: 5px 10px; border-radius: 6px; font-size: 12px; font-weight: 600; }
.au-company-name { display: block; margin-top: 8px; }
.au-active, .au-inactive { font-size: 13px; }
.au-active { color: #237252; }
.au-inactive { color: var(--au-muted); }
.au-pagination { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 16px; border-top: 1px solid var(--au-border); padding-top: 20px; margin-top: 12px; font-size: 13px; }
@media (max-width: 900px) { .au-filters { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 600px) {
  .admin-users { padding: 20px 12px; }
  .au-header { flex-direction: column; align-items: stretch; }
  .au-panel { padding: 18px 14px; }
  .au-form-grid, .au-user-list li { grid-template-columns: minmax(0, 1fr); }
  .au-user-list li { gap: 12px; }
  .au-pagination { justify-content: center; gap: 10px; }
}

.clients { max-width:1280px; }
.cl-eyebrow { font-size:11px; letter-spacing:.15em; font-weight:700; color:#7454ba!important; margin:0 0 10px!important; }
.cl-tabs { display:flex; gap:8px; border-bottom:1px solid var(--au-border); padding-bottom:16px; margin-bottom:24px; flex-wrap:wrap; }
.cl-tabs button[aria-current=page] { background:#eee8fa; border-color:#b5a0df; color:#4d2e96; font-weight:700; }
.cl-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:24px 0; }
.cl-metrics article { display:grid; gap:16px; background:white; border:1px solid var(--au-border); border-radius:16px; padding:24px; }
.cl-metrics article span { color:var(--au-muted); font-size:14px; }
.cl-metrics article strong { font-size:34px; letter-spacing:-.04em; color:#382654; }
.cl-name { color:#29233b; font-weight:700; text-decoration:none; }
.cl-name:hover { text-decoration:underline; }
.cl-link { color:#6243c5; font-weight:600; font-size:14px; display:inline-block; margin:8px 0; }
.cl-profile { margin-top:24px; display:grid; grid-template-columns:auto minmax(0,1fr); gap:24px; align-items:start; }
.cl-avatar { background:#efe9fa; color:#614198; width:64px; height:64px; border-radius:16px; display:grid; place-items:center; font-size:28px; font-weight:700; }
.cl-profile dl { grid-column:1/-1; display:grid; grid-template-columns:minmax(120px,.4fr) minmax(0,1fr); gap:14px 24px; margin:0; }
.cl-profile dt { color:var(--au-muted); font-size:14px; }
.cl-profile dd { margin:0; overflow-wrap:anywhere; }
.cl-profile-notes { grid-column:1/-1; white-space:pre-wrap; overflow-wrap:anywhere; }
.cl-notes { margin-top:20px; }
.clients textarea { border:1px solid var(--au-border); border-radius:10px; padding:12px; font:inherit; width:100%; resize:vertical; }
.cl-records { padding:0; margin:16px 0; list-style:none; }
.cl-records li { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 0; border-top:1px solid var(--au-border); flex-wrap:wrap; overflow-wrap:anywhere; }
.cl-records li div { display:grid; gap:6px; }
.cl-records li span,.cl-records time { font-size:14px; }
.cl-failure { color:#ab3e4b; }
@media(max-width:760px) { .cl-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .cl-metrics article { padding:18px 14px; } }
@media(max-width:480px) { .cl-profile { gap:16px; } .cl-profile dl { grid-template-columns:minmax(0,1fr); gap:8px; } .cl-profile dd { margin-bottom:12px; } }
