.role-panel{display:grid;gap:24px}.panel-card{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:18px;padding:22px}.panel-card h2{margin:0 0 16px}.panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.panel-grid label,.permission-list label{display:grid;gap:7px;font-weight:650}.panel-grid input,.panel-grid select,.panel-inline input,.panel-inline select,.admin-row select{min-height:42px;border:1px solid var(--border,#d8dee8);border-radius:10px;padding:8px 10px;background:var(--surface,#fff);color:inherit}.panel-inline{display:flex;gap:10px;flex-wrap:wrap}.panel-inline input{flex:1;min-width:220px}.panel-title,.member-row,.admin-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.member-row,.admin-row{padding:14px 0;border-top:1px solid var(--border,#e5e7eb)}.member-who,.admin-row>div,.audit-list div{display:grid;gap:4px}.member-who span,.admin-row span,.audit-list span{font-size:.86rem;color:var(--muted,#667085)}.member-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.btn-small{padding:7px 10px;font-size:.82rem}.btn-danger{color:#b42318;background:#fff;border:1px solid #f0b8b3}.panel-alert{padding:12px 15px;border-radius:12px;background:#fff1f0;color:#912018}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.admin-stats article{display:grid;padding:20px;border-radius:16px;background:#17213c;color:white}.admin-stats strong{font-size:1.8rem}.admin-stats span{opacity:.72}.admin-user{display:grid;grid-template-columns:minmax(210px,1fr) repeat(4,minmax(110px,auto)) auto}.permission-list{display:grid;gap:12px}.permission-list label{grid-template-columns:auto 1fr;justify-content:start}.course-readonly .subject-add,.course-readonly .subject-desktop-actions,.course-readonly .subject-action,.course-readonly [data-suite-add],.course-readonly [data-add-item]{display:none!important}@media(max-width:900px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-user{grid-template-columns:1fr 1fr}.admin-user>div{grid-column:1/-1}.member-row{align-items:flex-start;flex-direction:column}.member-actions{justify-content:flex-start}}

.representer-panel-entry{width:100%;min-height:74px;margin:0 0 24px;padding:12px 14px;display:grid;grid-template-columns:48px minmax(0,1fr) 38px;align-items:center;gap:13px;border:1px solid color-mix(in srgb,var(--accent,#2f76e8) 22%,var(--line,#d8dee8));border-radius:22px;background:color-mix(in srgb,var(--accent,#2f76e8) 7%,var(--surface,#fff));color:var(--text,#172033);font:inherit;text-align:start;box-shadow:0 10px 26px #0000000d;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .18s cubic-bezier(.2,.8,.2,1),border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.representer-panel-entry-icon,.representer-panel-entry-arrow{display:grid;place-items:center;border-radius:17px}.representer-panel-entry-icon{width:48px;height:48px;background:color-mix(in srgb,var(--accent,#2f76e8) 14%,transparent);color:var(--accent,#2f76e8)}.representer-panel-entry-icon .ui-icon{width:25px;height:25px;stroke-width:1.8}.representer-panel-entry-copy{min-width:0;display:grid;gap:3px}.representer-panel-entry-copy strong{font-size:1rem;line-height:1.2}.representer-panel-entry-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted,#667085);font-size:.82rem}.representer-panel-entry-arrow{width:38px;height:38px;color:var(--accent,#2f76e8);transition:transform .18s ease}.representer-panel-entry-arrow .ui-icon{width:20px;height:20px}[dir=rtl] .representer-panel-entry-arrow{transform:scaleX(-1)}.representer-panel-entry:active{transform:scale(.98)}.representer-panel-entry:focus-visible{outline:3px solid color-mix(in srgb,var(--accent,#2f76e8) 36%,transparent);outline-offset:3px}@media(hover:hover){.representer-panel-entry:hover{border-color:color-mix(in srgb,var(--accent,#2f76e8) 40%,var(--line,#d8dee8));background:color-mix(in srgb,var(--accent,#2f76e8) 10%,var(--surface,#fff));box-shadow:0 14px 32px #00000014}.representer-panel-entry:hover .representer-panel-entry-arrow{transform:translateX(3px)}[dir=rtl] .representer-panel-entry:hover .representer-panel-entry-arrow{transform:scaleX(-1) translateX(3px)}}