.erp-users-admin{
  --erp-admin-accent:#9c263a;
  --erp-admin-accent-soft:#f8edef;
  --erp-admin-border:#e5ded8;
  --erp-admin-text:#302b28;
  --erp-admin-muted:#8b817b;
  display:grid;
  gap:16px;
}
.erp-users-admin .page-header{margin-bottom:0}
.erp-users-toolbar{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto auto;
  gap:10px;
  align-items:center;
  padding:13px;
  border:1px solid var(--erp-admin-border);
  border-radius:13px;
  background:#fff;
  box-shadow:0 1px 3px rgba(62,42,34,.035);
}
.erp-users-search{position:relative;min-width:0}
.erp-users-search::before{
  content:'';
  position:absolute;
  z-index:1;
  left:14px;
  top:50%;
  width:11px;
  height:11px;
  border:2px solid #9c928c;
  border-radius:50%;
  transform:translateY(-60%);
  pointer-events:none;
}
.erp-users-search::after{
  content:'';
  position:absolute;
  z-index:1;
  left:25px;
  top:54%;
  width:7px;
  height:2px;
  border-radius:2px;
  background:#9c928c;
  transform:rotate(45deg);
  pointer-events:none;
}
.erp-users-search input,
.erp-users-filter{
  width:100%;
  min-height:42px;
  box-sizing:border-box;
  border:1px solid #ddd5cf;
  border-radius:10px;
  background:#fff;
  color:var(--erp-admin-text);
  font:600 13px/1.2 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  outline:none;
}
.erp-users-search input{padding:0 14px 0 43px}
.erp-users-filter{min-width:168px;padding:0 36px 0 12px}
.erp-users-search input:focus,
.erp-users-filter:focus{border-color:var(--erp-admin-accent);box-shadow:0 0 0 3px rgba(156,38,58,.08)}
.erp-users-summary{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--erp-admin-muted);font-size:11px}
.erp-users-summary b{color:#5d554f}
.erp-users-card{overflow:hidden;border:1px solid var(--erp-admin-border);border-radius:14px;background:#fff;box-shadow:0 1px 3px rgba(62,42,34,.035)}
.erp-users-card .table-scroll{max-height:none}
.erp-users-table{width:100%;min-width:1120px;border-collapse:collapse}
.erp-users-table th{height:44px;padding:0 16px;border-bottom:1px solid var(--erp-admin-border);background:#faf8f6;color:#756b65;font-size:10px;font-weight:850;letter-spacing:.055em;text-transform:uppercase;text-align:left}
.erp-users-table td{height:68px;padding:10px 16px;border-bottom:1px solid #eee8e3;color:#49423e;font-size:12px;vertical-align:middle}
.erp-users-table tbody tr:last-child td{border-bottom:0}
.erp-user-row{cursor:pointer;transition:background .15s,box-shadow .15s}
.erp-user-row:hover td{background:#fcf9f8}
.erp-user-row:focus-visible{outline:2px solid var(--erp-admin-accent);outline-offset:-2px}
.erp-user-row.is-archived{opacity:.76}
.erp-user-cell{display:flex;align-items:center;gap:11px;min-width:0}
.erp-user-list-avatar,
.erp-user-detail-avatar{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  overflow:hidden;
  border-radius:50%;
  background:linear-gradient(145deg,#a83145,#7f1e31);
  color:#fff;
  font-weight:850;
  letter-spacing:.025em;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
}
.erp-user-list-avatar{width:38px;height:38px;font-size:11px}
.erp-user-list-avatar img,
.erp-user-detail-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.erp-user-cell-copy{min-width:0}
.erp-user-cell-copy b{display:block;overflow:hidden;color:#302b28;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.erp-user-cell-copy span{display:block;overflow:hidden;margin-top:3px;color:#918881;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.erp-user-role-chips{display:flex;flex-wrap:wrap;gap:5px}
.erp-user-role-chip{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border:1px solid #ddd5cf;
  border-radius:999px;
  background:#f7f4f2;
  color:#665d57;
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
}
.erp-user-role-chip.is-admin{border-color:#dcbfc5;background:#faeff1;color:#8f2635}
.erp-user-role-chip.is-empty{border-style:dashed;background:#fff;color:#9a8f89}
.erp-user-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:26px;
  padding:0 9px;
  border:1px solid #c9e4d2;
  border-radius:999px;
  background:#eff8f2;
  color:#32784c;
  font-size:10px;
  font-weight:850;
  white-space:nowrap;
}
.erp-user-status::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}
.erp-user-status.is-archived{border-color:#ddd6d1;background:#f5f2ef;color:#7c726c}
.erp-user-status.is-warning{border-color:#ecd3a8;background:#fff8e9;color:#956520}
.erp-user-status.is-danger{border-color:#edc7cd;background:#fff2f3;color:#a12f40}
.erp-user-row-arrow{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #dfd7d1;border-radius:9px;background:#fff;color:#887e77;font-size:16px;transition:.15s}
.erp-user-row:hover .erp-user-row-arrow{border-color:#cfadb4;background:var(--erp-admin-accent-soft);color:var(--erp-admin-accent);transform:translateX(2px)}
.erp-user-inline-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}
.erp-user-inline-actions .btn{min-height:34px;padding:0 11px;font-size:10px}
.erp-user-empty{padding:52px 20px;text-align:center;color:#8d837d}
.erp-user-empty strong{display:block;color:#504944;font-size:15px}
.erp-user-empty span{display:block;margin-top:5px;font-size:12px}

.erp-user-detail-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:19px 21px;
  border:1px solid var(--erp-admin-border);
  border-radius:14px;
  background:linear-gradient(135deg,#fff 0%,#fbf7f5 100%);
  box-shadow:0 4px 16px rgba(67,42,35,.045);
}
.erp-user-detail-avatar{width:72px;height:72px;font-size:20px}
.erp-user-detail-identity{min-width:0}
.erp-user-detail-identity h2{overflow:hidden;margin:0;color:#2f2a27;font-size:22px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.erp-user-detail-identity p{overflow:hidden;margin:5px 0 0;color:#827873;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.erp-user-detail-identity .erp-user-role-chips{margin-top:10px}
.erp-user-detail-photo-actions{display:flex;flex-direction:column;gap:7px;align-items:stretch}
.erp-user-detail-photo-actions .btn{min-width:132px;min-height:36px;font-size:10px}
.erp-user-detail-tabs{display:flex;flex-wrap:wrap;gap:5px;padding:4px;border:1px solid var(--erp-admin-border);border-radius:12px;background:#f4f0ed}
.erp-user-detail-tabs button{min-height:38px;padding:0 15px;border:0;border-radius:9px;background:transparent;color:#786f69;font:750 11px/1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.erp-user-detail-tabs button:hover{color:var(--erp-admin-accent)}
.erp-user-detail-tabs button.active{background:#fff;color:var(--erp-admin-accent);box-shadow:0 1px 4px rgba(50,34,28,.08)}
.erp-user-detail-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:16px;align-items:start}
.erp-user-admin-card{overflow:hidden;border:1px solid var(--erp-admin-border);border-radius:13px;background:#fff;box-shadow:0 1px 3px rgba(62,42,34,.03)}
.erp-user-admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:17px 18px 13px;border-bottom:1px solid #eee8e3}
.erp-user-admin-card-head h3{margin:0;color:#342f2c;font-size:14px}
.erp-user-admin-card-head p{margin:4px 0 0;color:#8c827c;font-size:10px;line-height:1.4}
.erp-user-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.erp-user-fact{min-width:0;padding:14px 18px;border-bottom:1px solid #eee8e3}
.erp-user-fact:nth-child(odd){border-right:1px solid #eee8e3}
.erp-user-fact span{display:block;color:#938983;font-size:9px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.erp-user-fact b{display:block;overflow:hidden;margin-top:5px;color:#443d39;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.erp-user-admin-card-body{display:grid;gap:13px;padding:17px 18px}
.erp-user-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.erp-user-field{display:grid;gap:6px;min-width:0}
.erp-user-field.full{grid-column:1/-1}
.erp-user-field label{color:#645b56;font-size:10px;font-weight:800}
.erp-user-field input,
.erp-user-field select{
  width:100%;
  min-height:42px;
  box-sizing:border-box;
  padding:0 12px;
  border:1px solid #ddd5cf;
  border-radius:9px;
  background:#fff;
  color:#3f3935;
  font:600 12px/1.2 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  outline:none;
}
.erp-user-field input:focus,
.erp-user-field select:focus{border-color:var(--erp-admin-accent);box-shadow:0 0 0 3px rgba(156,38,58,.08)}
.erp-user-card-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:2px}
.erp-user-completeness{display:grid;gap:8px}
.erp-user-check{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid #e5ded8;border-radius:10px;background:#fcfaf9}
.erp-user-check-mark{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#e8f5ec;color:#2f7a4a;font-size:11px;font-weight:900}
.erp-user-check.is-warning .erp-user-check-mark{background:#fff1d7;color:#9a671b}
.erp-user-check b{display:block;color:#4b433f;font-size:11px}
.erp-user-check span{display:block;margin-top:2px;color:#918781;font-size:9px}
.erp-user-check strong{color:#7b716b;font-size:9px}
.erp-access-layout{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:16px;align-items:start}
.erp-access-contours{display:grid;gap:8px}
.erp-access-contour{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px;border:1px solid #e5ded8;border-radius:10px;background:#fcfaf9}
.erp-access-contour-number{display:flex;align-items:center;justify-content:center;width:40px;height:36px;border-radius:9px;background:#f1e7e9;color:var(--erp-admin-accent);font-size:12px;font-weight:900}
.erp-access-contour b{display:block;color:#453e3a;font-size:11px}
.erp-access-contour span{display:block;margin-top:3px;color:#918781;font-size:9px}
.erp-access-contour-state{color:#2f7a4a;font-size:9px;font-weight:850}
.erp-access-contour.is-closed{opacity:.58}
.erp-access-contour.is-closed .erp-access-contour-state{color:#8d827c}
.erp-access-contour-controls{display:flex;align-items:center;gap:9px;justify-content:flex-end}
.erp-access-contour-controls .sb-select-wrap{width:150px;min-width:150px}
.erp-access-contour-controls .sb-select-trigger{min-height:32px;padding:0 30px 0 10px;font-size:10px!important;font-weight:700}
.erp-access-contour-controls .sb-select-menu{min-width:150px}
.erp-access-admin-note,.erp-access-legend{padding:10px 11px;border:1px solid #e5ded8;border-radius:9px;background:#faf8f6;color:#817770;font-size:10px;line-height:1.45}
.erp-access-legend{display:grid;gap:4px}.erp-access-legend b{color:#5e554f}
.erp-security-stack{display:grid;gap:12px}
.erp-security-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 17px;border:1px solid var(--erp-admin-border);border-radius:11px;background:#fff}
.erp-security-action h3{margin:0;color:#3f3935;font-size:13px}
.erp-security-action p{max-width:680px;margin:4px 0 0;color:#8b817b;font-size:10px;line-height:1.45}
.erp-security-action-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.erp-security-action.is-danger{border-color:#e8c8cd;background:#fff8f8}
.erp-security-action.is-danger h3{color:#982f3d}
.erp-temp-password-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:7px;min-width:min(520px,55vw)}
.erp-temp-password-row input{min-height:38px;padding:0 11px;border:1px solid #ddd5cf;border-radius:9px;font:600 12px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;outline:none}
.erp-temp-password-row input:focus{border-color:var(--erp-admin-accent);box-shadow:0 0 0 3px rgba(156,38,58,.08)}
.erp-admin-preview-banner{display:flex;align-items:flex-start;gap:11px;padding:12px 14px;border:1px solid #d9c4c8;border-radius:11px;background:#fbf1f3;color:#7d3441}
.erp-admin-preview-banner strong{display:block;font-size:11px}
.erp-admin-preview-banner span{display:block;margin-top:3px;font-size:10px;line-height:1.4}
.erp-admin-preview-banner-mark{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex:0 0 26px;border-radius:8px;background:#9c263a;color:#fff;font-size:11px;font-weight:900}
.erp-user-photo-file{display:none}
.erp-admin-forced-password-note{display:none;margin:0;padding:10px 12px;border:1px solid #e4c98f;border-radius:9px;background:#fff8e8;color:#8c601d;font-size:11px;line-height:1.45}
.employee-password-modal.is-forced .erp-admin-forced-password-note{display:block}
.employee-password-modal.is-forced .modal-close,
.employee-password-modal.is-forced .modal-footer .btn-secondary{display:none}

@media(max-width:1100px){
  .erp-users-toolbar{grid-template-columns:minmax(240px,1fr) repeat(2,minmax(150px,.45fr))}
  .erp-user-detail-grid,.erp-access-layout{grid-template-columns:1fr}
}
@media(max-width:760px){
  .erp-users-admin{gap:12px}
  .erp-users-toolbar{grid-template-columns:1fr;padding:11px}
  .erp-users-filter{min-width:0}
  .erp-users-summary{padding:0 2px}
  .erp-user-detail-head{grid-template-columns:auto minmax(0,1fr);gap:13px;padding:15px}
  .erp-user-detail-avatar{width:58px;height:58px;font-size:16px}
  .erp-user-detail-identity h2{font-size:18px}
  .erp-user-detail-photo-actions{grid-column:1/-1;flex-direction:row}
  .erp-user-detail-photo-actions .btn{flex:1;min-width:0}
  .erp-user-detail-tabs{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
  .erp-user-detail-tabs::-webkit-scrollbar{display:none}
  .erp-user-detail-tabs button{flex:0 0 auto;white-space:nowrap}
  .erp-user-form-grid,.erp-user-facts{grid-template-columns:1fr}
  .erp-user-field.full{grid-column:auto}
  .erp-user-fact:nth-child(odd){border-right:0}
  .erp-access-contour{grid-template-columns:36px minmax(0,1fr);gap:9px}
  .erp-access-contour-controls{grid-column:2;justify-content:space-between}
  .erp-security-action{grid-template-columns:1fr;padding:14px}
  .erp-security-action-controls{justify-content:stretch}
  .erp-security-action-controls .btn{flex:1}
  .erp-temp-password-row{grid-template-columns:1fr 1fr;min-width:0}
  .erp-temp-password-row input{grid-column:1/-1}
}
