/* ============================================================
   login.css — Login screen + user-management permissions grid
   ============================================================ */

.login-screen{
  position:fixed;inset:0;z-index:1000;
  display:flex;align-items:center;justify-content:center;
  background:var(--sidebar-bg);
  background-image:
    radial-gradient(ellipse 70% 50% at 50% -20%,rgba(196,77,40,.25),transparent),
    linear-gradient(180deg,#161412 0%,#0a0908 100%);
}
.login-card{
  width:100%;max-width:400px;margin:20px;
  background:#fff;border-radius:var(--radius);
  padding:36px 32px 32px;box-shadow:var(--shadow-lg);
}
.login-brand{
  font-size:26px;font-weight:800;letter-spacing:-.03em;
  text-align:center;margin-bottom:4px;
}
.login-tag{
  font-size:10px;text-transform:uppercase;letter-spacing:.2em;
  color:var(--ink3);text-align:center;margin-bottom:28px;font-weight:600;
}
.login-err{
  margin-top:12px;padding:10px 12px;border-radius:var(--radius-sm);
  background:rgba(196,77,40,.1);color:var(--accent);font-size:12px;display:none;
}
.login-err.show{display:block;}

/* User management */
.perm-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;
}
.perm-item{
  display:flex;align-items:center;gap:8px;padding:10px 12px;
  border:1px solid var(--border);border-radius:var(--radius-sm);
  background:var(--bg);cursor:pointer;font-size:12px;font-weight:600;
}
.perm-item:has(input:checked){
  border-color:var(--accent);background:var(--accent-soft);color:var(--accent);
}
.perm-item input{width:16px;height:16px;accent-color:var(--accent);}

.user-table td,.user-table th{padding:10px 12px;font-size:12px;}
.badge-admin{
  background:#1e4d7a22;color:var(--blue);
  padding:3px 8px;border-radius:4px;font-size:10px;font-weight:700;
}
.badge-user{
  background:var(--bg2);color:var(--ink2);
  padding:3px 8px;border-radius:4px;font-size:10px;font-weight:700;
}
