.admin-login-shell{min-height:calc(100vh - 104px);display:grid;place-items:center;padding:42px 20px;background:radial-gradient(circle at top right,#fff0e8 0,transparent 38%),var(--canvas)}
.admin-login-card{width:min(100%,480px);padding:34px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 24px 70px rgba(42,41,38,.12)}
.admin-login-brand{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}
.admin-login-card h1{font-size:30px;margin:8px 0 10px}
.admin-demo-accounts{margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.admin-demo-accounts>strong,.admin-demo-accounts>p{grid-column:1/-1;margin:0}
.admin-demo-accounts>p{font-size:12px;color:var(--muted);margin-bottom:6px}
.admin-demo-accounts button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;text-align:left;cursor:pointer;color:var(--ink)}
.admin-demo-accounts button:hover{border-color:var(--orange)}
.admin-demo-accounts button span,.admin-demo-accounts button small{display:block}
.admin-demo-accounts button span{font-weight:700}
.admin-demo-accounts button small{color:var(--muted);margin-top:3px}
.admin-session{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.admin-workspace .workspace-header{flex-wrap:wrap;gap:12px}
.rbac-tabs{margin-bottom:22px}
.rbac-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.rbac-role-grid>.panel{margin-top:0;min-width:0}
.rbac-permissions{border:1px solid var(--line);border-radius:14px;padding:15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.rbac-permissions legend{padding:0 8px;font-weight:700}
.rbac-permission{display:flex!important;align-items:flex-start;gap:10px;padding:10px;border-radius:10px;background:var(--canvas)}
.rbac-permission input{width:auto;margin-top:3px}
.rbac-permission span,.rbac-permission small{display:block}
.rbac-permission small{color:var(--muted);font-weight:400;margin-top:3px;line-height:1.5}
.rbac-matrix th,.rbac-matrix td{text-align:center;min-width:110px}
.rbac-matrix th:first-child,.rbac-matrix td:first-child{text-align:left;min-width:190px;position:sticky;left:0;background:#fff;z-index:1}
.rbac-yes{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--green-light);color:var(--green);font-weight:800}
.rbac-readonly-notice{margin-bottom:20px}
.rbac-readonly-page [data-admin-action],.rbac-readonly-page [data-ai-action],.rbac-readonly-page [data-shoot="moderate-provider"],.rbac-readonly-page [data-shoot="moderate-review"],.rbac-readonly-page #admin-storage-form button,.rbac-readonly-page #ai-route-form button[type="submit"],.rbac-readonly-page #ai-membership-form button[type="submit"]{display:none!important}
.rbac-readonly-page #admin-storage-form input,.rbac-readonly-page #admin-storage-form select,.rbac-readonly-page #admin-storage-form textarea,.rbac-readonly-page #ai-route-form input,.rbac-readonly-page #ai-route-form select,.rbac-readonly-page #ai-route-form textarea,.rbac-readonly-page #ai-membership-form input,.rbac-readonly-page #ai-membership-form select,.rbac-readonly-page #ai-membership-form textarea{pointer-events:none;background:var(--canvas);color:var(--muted)}
@media(max-width:900px){.rbac-role-grid{grid-template-columns:1fr}.rbac-permissions{grid-template-columns:1fr}}
@media(max-width:600px){.admin-login-shell{padding:22px 14px}.admin-login-card{padding:24px 20px}.admin-login-card h1{font-size:25px}.admin-demo-accounts{grid-template-columns:1fr}.admin-session{gap:8px}.admin-session .avatar-inline strong{display:none}}
