.page-help{margin:0 0 18px;padding:12px 16px;border:1px solid var(--border,#30343d);border-radius:10px;background:#13161c;color:#c6cbd4}
.page-help summary,.permission-section summary,.advanced-role summary{cursor:pointer;font-weight:650;min-height:28px}
.page-help p{max-width:85ch;line-height:1.6;margin:10px 0 0}
.field-help{display:block;color:#aeb7c5;font-size:.82rem;line-height:1.5;font-weight:400;margin:6px 0;white-space:normal;overflow-wrap:anywhere}
.help-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;padding:3px 8px;margin:2px 0;background:#202632;color:#e1e7f0;border:1px solid #424b5c;border-radius:50%;font-size:1rem;cursor:pointer}
.help-anchor{display:block;position:relative;min-width:0;max-width:100%}
.help-popover{display:block;position:absolute;top:100%;left:0;z-index:30;width:min(100%,55ch);box-sizing:border-box;padding:10px;background:#252e3d;color:#fff;border:1px solid #61708b;border-radius:8px;white-space:normal;overflow-wrap:anywhere;font-size:.85rem;line-height:1.5;pointer-events:none}
.help-popover[hidden]{display:none}
.help-toggle:focus-visible,summary:focus-visible{outline:2px solid #b8c9e8;outline-offset:3px}
.role-filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:18px}
.role-filters label{display:grid;gap:6px;flex:1;min-width:180px}
.role-layout{display:grid;grid-template-columns:minmax(210px,290px) minmax(0,1fr);gap:18px;align-items:start}
.role-list{display:grid;gap:8px;max-height:75vh;overflow:auto}
.role-list button{text-align:left;white-space:normal;overflow-wrap:anywhere;padding:12px;width:100%}
.role-list button small{display:block;margin-top:6px;color:#b6becb}
.role-list button[aria-pressed=true]{background:#422129;border-color:#c52d3e}
.role-workspace label{display:grid;gap:6px;margin-top:8px;min-width:0}
.role-workspace input,.role-workspace select{max-width:100%;min-width:0}
.role-workspace select{display:block;width:100%;box-sizing:border-box}
.template-controls{display:flex;gap:12px;align-items:end;margin:20px 0 8px;flex-wrap:wrap}
.template-controls label{flex:1;min-width:180px}
.permission-section{border:1px solid #343944;border-radius:9px;padding:14px;margin:12px 0;min-width:0}
.permission-fields{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}
.permission-field,.permission-result{min-width:0;padding:12px;background:#171b23;border-radius:8px;overflow-wrap:anywhere}
.permission-field>label{font-weight:650;margin:0 0 8px}
.permission-field select{width:100%}
.technical-info{font-size:.76rem;color:#a4aebf;margin-top:6px}
.technical-info code{white-space:normal;overflow-wrap:anywhere}
.role-warning{border-left:3px solid #e6b467;background:#30291d;padding:10px;line-height:1.5}
.role-save{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:15px 0}
.advanced-role{border-top:1px solid #414650;margin-top:20px;padding-top:15px;line-height:1.5}
.permission-result h3{margin-top:0}.permission-result.allow>strong{color:#9ed1b2}.permission-result.deny>strong{color:#f2b3b3}
#permission-member-search{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
#permission-member-search label{flex:1}#permission-member{max-width:100%;width:100%}
#role-editor h2{overflow-wrap:anywhere}
@media(max-width:1000px){.role-layout{grid-template-columns:220px minmax(0,1fr)}.permission-fields{grid-template-columns:1fr}}
@media(max-width:650px){.role-layout{grid-template-columns:1fr}.role-list{max-height:240px}.role-filters{display:grid;grid-template-columns:1fr}.role-filters label{min-width:0}.role-workspace .card{padding:14px}.template-controls{display:grid;grid-template-columns:1fr}.template-controls label{min-width:0}.role-save{display:grid}.role-workspace button{white-space:normal}.page-help{padding:10px;font-size:.9rem}.permission-section{padding:10px}.help-toggle{min-width:44px;min-height:44px}}
