/* PIXOFT account sign-in and privileged user management.
 * Minimum readable body text 15px; fully responsive on 390px screens.
 */
.site-auth-locked .sidebar,.site-auth-locked .topbar,.site-auth-locked .app-footer{display:none!important}
.site-auth-locked .app-shell{margin-left:0!important;min-height:100vh}
.site-auth-locked .main-content{margin:0!important;min-height:100vh;padding:24px!important;display:flex;align-items:center;justify-content:center}
.site-login-layout{width:100%;display:flex;align-items:center;justify-content:center;padding:10px 0}
.site-login-card{display:flex;flex-direction:column;align-items:stretch;background:#fff;
 border:1px solid #e2eaf0;box-shadow:0 13px 50px rgba(21,48,70,.09);border-radius:18px;
 padding:38px 45px;max-width:560px;width:100%;gap:13px}
.site-login-logo{display:block;width:315px;max-width:100%;height:auto;object-fit:contain;align-self:center;margin-bottom:0}
.site-login-caption{font-size:15px;color:#497b92;text-align:center;font-weight:750}
.site-login-card h1{font-size:29px;font-weight:850;color:#1e3e54;line-height:1.25;margin:12px 0 0}
.site-login-card h2{font-size:25px;color:#23465e}
.site-login-intro{font-size:17px;line-height:1.55;color:#57778a;margin:0 0 5px}
.site-login-form{display:flex;flex-direction:column;gap:11px}
.site-login-form label{color:#2a4f65;font-size:16px;font-weight:800;margin-top:4px}
.site-login-form input{width:100%;font-size:18px;background:white;color:#1f4056;
 min-height:53px;border:1px solid #cbdde8;border-radius:10px;padding:12px 15px}
.site-login-form input:focus{outline:3px solid #bce7f3;outline-offset:0;border-color:#008eaa}
.site-login-form .btn{font-size:18px;font-weight:800;min-height:52px;margin-top:9px}
.site-login-footer{border-top:1px solid #e5edf2;margin:7px 0 0;padding-top:16px;
 color:#667f90;font-size:15px;line-height:1.55}
.site-auth-error{border:1px solid #edbdc7;background:#fff3f4;padding:13px 16px;
 border-radius:9px;color:#b53343;font-size:16px;line-height:1.5}
.site-login-icon{background:#e6f4f7;color:#137994;padding:12px 18px;
 border-radius:9px;font-weight:850;align-self:flex-start}
.site-account-page{max-width:750px;margin:0 auto;min-height:67vh}
.site-account-page .site-login-card{max-width:100%}
.site-logout-btn{margin-left:9px;font-size:15px!important;min-height:42px}
.site-side-logout{display:flex;align-items:center;justify-content:center;
 min-width:38px;min-height:38px;background:#294962;border:1px solid #365e74;
 border-radius:8px;color:#c0dfe9;cursor:pointer}
.site-side-logout svg{height:18px;width:18px}
.users-workspace{padding:24px 26px}
.users-summary{display:flex;gap:25px;flex-wrap:wrap;align-items:center;
 margin-bottom:20px;background:#f0f8fa;padding:17px 19px;border-radius:10px;
 border:1px solid #d7e7ef;color:#496d80;font-size:17px}
.users-summary strong{font-size:21px;color:#1d4a60;font-variant-numeric:tabular-nums}
.users-table{width:100%;min-width:825px}
.users-table td,.users-table th{font-size:16px;vertical-align:middle!important}
.users-table td strong{font-size:17px;color:#263f52;display:block}
.users-table td small{font-size:14px;color:#70899b;display:block;margin-top:5px}
.users-row-actions{display:flex;gap:7px;flex-wrap:wrap}
.users-row-actions .btn{font-size:14px;min-height:35px;padding:8px 9px}
.user-role{font-size:15px;font-weight:780;padding:7px 10px;border-radius:7px;display:inline-flex}
.user-role-admin{background:#def4f4;color:#0a7185}
.user-role-operator{background:#ecf2ff;color:#5268a8}
.user-role-viewer{background:#f1f4f7;color:#68788b}
.users-active,.users-inactive{font-size:15px;font-weight:800}
.users-active{color:#18816e}
.users-inactive{color:#ba4657}
.users-error{border:1px solid #f0c6ce;color:#a53446;background:#fff3f5;
 border-radius:9px;padding:13px 17px;margin-bottom:18px;font-size:16px}
.users-editor{padding:22px 24px;background:#f9fbfc;border:1px solid #d9e8ee;
 border-radius:11px;margin-bottom:21px}
.users-editor h3{font-size:22px;color:#26485f;margin:0 0 8px}
.users-editor p{font-size:16px;color:#5c7a89;line-height:1.5}
.users-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 19px;margin-top:17px}
.users-form label{display:flex;flex-direction:column;font-size:16px;font-weight:750;gap:8px;color:#34556c}
.users-form input:not([type=checkbox]),.users-form select{width:100%;min-width:0;
 font-size:17px;border:1px solid #ccdde7;background:white;min-height:48px;
 border-radius:8px;padding:10px 13px;color:#263f55}
.users-form .users-check{display:flex;flex-direction:row;gap:12px;align-items:center}
.users-check input{width:21px;height:21px}
.users-form-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;
 grid-column:1 / -1;margin-top:7px}
.users-form-actions .btn{min-height:44px;font-size:16px}
.users-empty{font-size:17px;padding:25px}
@media(max-width:720px){
 .site-auth-locked .main-content{padding:13px!important}
 .site-login-card{padding:26px 20px;border-radius:13px}
 .site-login-card h1{font-size:26px}
 .site-login-intro{font-size:16px}
 .users-workspace{padding:16px}
 .users-form{grid-template-columns:1fr}
 .site-logout-btn{font-size:14px!important}
}
