/* Admin page: user list, permission table and password controls. */

/* admin: user list */
.user-row-block{padding:10px 0; border-bottom:1px solid var(--line);}
.user-row-block:last-child{border-bottom:none;}
.user-row{display:flex; align-items:center; gap:10px;}
.user-row .u-name{font-weight:600; font-size:15px; flex:1;}
.user-row .u-role{font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.03em; color:var(--muted); background:var(--paper-2); padding:3px 8px; border-radius:999px;}
.user-row .u-role.admin{color:var(--pine); background:#e3ede9;}
.perm-table{border:1px solid var(--line); border-radius:10px; margin:10px 0; background:var(--white); overflow:hidden;}
.perm-row{display:grid; grid-template-columns:104px 1fr; align-items:center; gap:8px; padding:8px 12px; border-top:1px solid var(--line);}
.perm-row:first-child{border-top:none;}
.perm-row-title{font-size:12.5px; font-weight:700; color:var(--muted);}
.perm-row-boxes{display:flex; flex-wrap:wrap; gap:6px 16px;}
.perm-check{display:flex; align-items:center; gap:6px; font-size:13px; color:var(--ink); font-weight:600; margin:0;}
.perm-check input{width:15px; height:15px; accent-color:var(--pine); flex-shrink:0;}
.perm-check.locked{opacity:.4;}
.pw-row{display:flex; align-items:center; flex-wrap:wrap; gap:4px 12px; margin:4px 0 0;}
.pw-tag{font-size:12px; font-weight:700; color:var(--gold);}
.setpw-form{border:1px solid var(--line); border-radius:10px; background:var(--white); padding:10px 12px; margin:8px 0 4px;}
.setpw-form input[type=text]{width:100%; margin:0 0 8px;}
.setpw-form .perm-actions{margin:8px 0 0;}
.perm-actions{display:flex; align-items:center; gap:14px; margin:2px 0 6px;}
.perm-save-btn{
  padding:8px 16px; border:none; border-radius:9px; background:var(--pine); color:var(--white);
  font-size:13.5px; font-weight:700;
}
.perm-save-btn:disabled{background:var(--paper-2); color:var(--muted);}
.user-row-block.unsaved{background:#fdf6ea; margin:0 -16px; padding-left:16px; padding-right:16px; border-radius:8px;}
