body[data-auth-role="viewer"] [data-role-required],body[data-auth-role="operator"] [data-role-required="admin"],body:not([data-auth-role]) [data-role-required],[data-portal-users-link][hidden] {display:none!important;}
.portal-role-badge {font-size:12px;font-weight:700;padding:7px 12px;border-radius:20px;background:#edf5ff;color:#245981;}
.roles-page {width:min(1100px,calc(100% - 32px));margin:40px auto;}
.roles-page-head {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;}
.roles-page-head h1 {margin:6px 0;font-size:28px;}.roles-panel {padding:24px;}
.roles-summary {display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0;}
.roles-summary p {background:#f3f7fc;border-radius:12px;padding:14px;line-height:1.6;}
.roles-table-wrap {overflow:auto;}.roles-table {width:100%;border-collapse:collapse;min-width:580px;}
.roles-table th,.roles-table td {padding:12px 10px;text-align:left;border-bottom:1px solid var(--color-border);}
.roles-table select {padding:9px;border:1px solid var(--color-border);border-radius:8px;font:inherit;background:#fff;}
.roles-note {font-size:13px;color:var(--color-muted);margin-top:20px;}
@media(max-width:700px){.roles-summary{grid-template-columns:1fr;gap:0;}.roles-page-head{align-items:flex-start;flex-direction:column;}.roles-panel{padding:16px;}}

.account-editor{margin:20px 0;padding:20px;border:1px solid var(--color-border);border-radius:12px;background:#f8fbff;}.account-editor[hidden]{display:none;}.account-editor .field{margin-bottom:14px;}.account-editor .check-field{display:flex;gap:10px;align-items:center;margin:16px 0;}.account-actions{display:flex;gap:12px;flex-wrap:wrap;}.account-editor small{font-size:12px;color:var(--color-muted);}

.smtp-settings{margin:22px 0;padding:18px;border:1px solid var(--color-border);border-radius:12px;background:#f8fbff;}.smtp-settings summary{font-weight:700;cursor:pointer;}.smtp-settings .field{margin:14px 0;}.smtp-settings small{font-size:12px;color:var(--color-muted);}.login-form[hidden]{display:none!important;}
