/* AUTH-2B2 — responsive, accessible, read-only users administration */
.users-admin-shell{place-items:start center;padding-inline:clamp(.75rem,2vw,1.5rem)}
.users-admin-card{width:min(1480px,100%);padding:clamp(1.25rem,3vw,2.5rem)}
.admin-breadcrumb{display:flex;align-items:center;gap:.55rem;margin-bottom:1.5rem;color:#667991;font-size:.82rem;font-weight:700}
.admin-breadcrumb a{color:#0879b6;text-decoration:none}.admin-breadcrumb a:focus-visible{outline:3px solid rgba(18,168,218,.35);outline-offset:4px;border-radius:.25rem}
.users-admin-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:end}
.users-admin-heading h1{margin:.65rem 0 .8rem}.users-admin-heading p{max-width:780px;margin:0;color:#52657f}
.read-only-seal{display:grid;gap:.18rem;max-width:270px;padding:.85rem 1rem;border:1px solid rgba(22,134,177,.24);border-radius:1rem;background:linear-gradient(145deg,#eefaff,#f7fbff);color:#4f657d}
.read-only-seal strong{color:#075b83}.read-only-seal span{font-size:.76rem}
.user-status-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin:2rem 0 1.25rem}
.status-summary-card{display:grid;gap:.25rem;min-height:92px;padding:1rem;border:1px solid rgba(12,92,146,.14);border-radius:1rem;background:#f8fbff;text-decoration:none;color:#60738b;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.status-summary-card strong{font-size:1.45rem;line-height:1;color:#081d3c}.status-summary-card span{font-size:.78rem;font-weight:800}
.status-summary-card:hover,.status-summary-card:focus-visible,.status-summary-card.active{border-color:rgba(10,151,204,.55);box-shadow:0 10px 30px rgba(6,62,103,.1);transform:translateY(-2px);outline:none}
.status-summary-card.active{background:linear-gradient(145deg,#eaf9ff,#f7f3ff)}
.user-directory-filters{display:grid;grid-template-columns:minmax(250px,1.5fr) minmax(180px,.7fr) minmax(140px,.45fr) auto auto;gap:.8rem;align-items:end;padding:1rem;border:1px solid rgba(10,91,145,.13);border-radius:1.15rem;background:#f7faff}
.user-directory-filters label{display:grid;gap:.38rem;color:#173b61;font-size:.78rem;font-weight:800}
.user-directory-filters input,.user-directory-filters select{width:100%;min-height:46px;border:1px solid rgba(13,95,151,.22);border-radius:.78rem;padding:.7rem .85rem;background:#fff;color:#0b1c36;font:inherit;outline:none}
.user-directory-filters input:focus,.user-directory-filters select:focus{border-color:#14a9da;box-shadow:0 0 0 4px rgba(20,169,218,.12)}
.user-directory-filters .button{min-height:46px;border:0;cursor:pointer;white-space:nowrap}.users-clear-filter{border:1px solid rgba(13,95,151,.18)!important}
.directory-result-bar{display:flex;justify-content:space-between;gap:1rem;margin:1.2rem .15rem .75rem;color:#60738b;font-size:.84rem}
.directory-result-bar strong{color:#102d50}
.user-table-wrap{overflow-x:auto;border:1px solid rgba(10,91,145,.14);border-radius:1rem;background:#fff}
.user-directory-table{width:100%;border-collapse:collapse;min-width:1040px}
.user-directory-table th{padding:.85rem 1rem;background:#0a2144;color:#eef8ff;text-align:left;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}
.user-directory-table td{padding:1rem;vertical-align:top;border-bottom:1px solid #e6edf5;color:#334c68;font-size:.82rem}
.user-directory-table tbody tr:last-child td{border-bottom:0}.user-directory-table tbody tr:hover{background:#f8fbff}
.user-primary,.user-secondary,.user-tertiary,.confirmation-note,.activity-value{display:block}
.user-primary{max-width:320px;overflow-wrap:anywhere;color:#071d3d;font-size:.9rem}.user-secondary{margin-top:.2rem;color:#58708a;overflow-wrap:anywhere}.user-tertiary{margin-top:.45rem;color:#7a8ca1;font-size:.72rem}
.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.35rem .65rem;font-size:.7rem;font-weight:900;letter-spacing:.02em}
.status-confirmed{background:#e4f8ef;color:#08724e}.status-pending{background:#fff4d9;color:#845c00}.status-locked{background:#ffeadf;color:#9a3d12}.status-disabled{background:#eef0f4;color:#4d5969}
.confirmation-note{margin-top:.4rem;color:#72849a;font-size:.7rem}
.identity-chip-list{display:flex;flex-wrap:wrap;gap:.38rem}.identity-chip{display:inline-flex;padding:.3rem .55rem;border-radius:.6rem;background:#edf5fb;color:#265575;font-size:.68rem;font-weight:800}
.identity-chip.role{background:#f0ebff;color:#51418c}.identity-chip.method{background:#e8f7fb;color:#066a88}.identity-chip.muted{background:#f0f2f5;color:#6b7581}
.activity-value{max-width:185px;color:#536b84;line-height:1.45}
.users-empty-state{display:grid;place-items:center;gap:.35rem;min-height:210px;padding:2rem;border:1px dashed rgba(12,100,157,.28);border-radius:1rem;background:#f9fcff;text-align:center;color:#697c91}.users-empty-state strong{color:#132f53;font-size:1.1rem}
.directory-pagination{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;margin-top:1.25rem}
.directory-pagination>:last-child{justify-self:end}.pagination-pages{display:flex;gap:.4rem;align-items:center}
.pagination-control,.pagination-page{display:inline-flex;min-height:40px;min-width:40px;align-items:center;justify-content:center;border:1px solid rgba(10,97,154,.18);border-radius:.72rem;background:#fff;color:#13577e;text-decoration:none;font-size:.78rem;font-weight:900}
.pagination-control{padding:.55rem .85rem}.pagination-page.current{background:#0b76ad;color:#fff;border-color:#0b76ad}.pagination-control.disabled{color:#9aa7b5;background:#f5f7fa}
.pagination-control:not(.disabled):hover,.pagination-control:not(.disabled):focus-visible,.pagination-page:not(.current):hover,.pagination-page:not(.current):focus-visible{border-color:#0a9bd0;box-shadow:0 0 0 3px rgba(10,155,208,.12);outline:none}
.users-security-note{display:grid;grid-template-columns:auto 1fr;gap:.8rem;margin-top:1.5rem;padding:1rem 1.1rem;border-left:4px solid #128dbb;border-radius:.75rem;background:#eef8fc;color:#557087;font-size:.8rem}.users-security-note strong{color:#0b3856}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:1100px){.users-admin-heading{grid-template-columns:1fr}.read-only-seal{max-width:none}.user-status-summary{grid-template-columns:repeat(3,1fr)}.user-directory-filters{grid-template-columns:1fr 1fr}.user-search-field{grid-column:1/-1}.user-directory-filters .button{width:100%}}
@media(max-width:760px){.users-admin-shell{padding-inline:.6rem}.users-admin-card{padding:1rem}.user-status-summary{grid-template-columns:1fr 1fr}.user-directory-filters{grid-template-columns:1fr}.user-search-field{grid-column:auto}.directory-result-bar{flex-direction:column}.user-table-wrap{overflow:visible;border:0;background:transparent}.user-directory-table{display:block;min-width:0}.user-directory-table thead{display:none}.user-directory-table tbody{display:grid;gap:.8rem}.user-directory-table tr{display:grid;border:1px solid rgba(10,91,145,.14);border-radius:1rem;background:#fff;overflow:hidden}.user-directory-table td{display:grid;grid-template-columns:minmax(105px,.38fr) minmax(0,1fr);gap:.8rem;padding:.8rem;border-bottom:1px solid #e6edf5}.user-directory-table td::before{content:attr(data-label);color:#60748c;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.user-directory-table td:last-child{border-bottom:0}.user-primary{max-width:100%}.directory-pagination{grid-template-columns:1fr 1fr}.pagination-pages{grid-column:1/-1;grid-row:1;justify-content:center}.directory-pagination>.pagination-control{grid-row:2}.users-security-note{grid-template-columns:1fr}.status-summary-card{min-height:78px}}
@media(max-width:430px){.user-status-summary{grid-template-columns:1fr}.user-directory-table td{grid-template-columns:1fr;gap:.3rem}.pagination-page{min-width:35px;min-height:35px}.directory-pagination{gap:.55rem}}
@media(prefers-reduced-motion:reduce){.status-summary-card{transition:none}.status-summary-card:hover,.status-summary-card:focus-visible,.status-summary-card.active{transform:none}}
