/* Teacher permission manager — compact dropdown + independent scroll areas. */
.metro-clean-system[data-route="admin"] .teacher-permission-manager-toolbar{
  width:100%;min-width:0;padding:22px;display:grid;grid-template-columns:minmax(280px,.82fr) minmax(520px,1.18fr);gap:24px;align-items:end;
  border:1px solid #dfe3e7;border-radius:24px;background:linear-gradient(135deg,#fff 0%,#f8fbff 60%,#eef5ff 100%);box-shadow:0 1px 2px rgba(60,64,67,.08);
}
.metro-clean-system[data-route="admin"] .teacher-permission-toolbar-copy{min-width:0;display:grid;gap:6px}
.metro-clean-system[data-route="admin"] .teacher-permission-toolbar-copy>span{color:#0b57d0;font-size:11px;font-weight:800;letter-spacing:.09em}
.metro-clean-system[data-route="admin"] .teacher-permission-toolbar-copy h2{margin:0;color:#1f1f1f;font-size:clamp(25px,2.5vw,36px);font-weight:650;line-height:1.08;letter-spacing:-.035em}
.metro-clean-system[data-route="admin"] .teacher-permission-toolbar-copy p{max-width:620px;margin:2px 0 0;color:#5f6368;font-size:13.5px;line-height:1.5}
.metro-clean-system[data-route="admin"] .teacher-permission-toolbar-controls{min-width:0;display:grid;grid-template-columns:minmax(190px,1fr) minmax(210px,1.12fr) minmax(170px,.82fr);gap:10px;align-items:end}
.metro-clean-system[data-route="admin"] :is(.teacher-permission-search,.teacher-permission-select-wrap,.teacher-permission-status-wrap){min-width:0;display:grid;gap:6px;color:#5f6368;font-size:11px;font-weight:700}
.metro-clean-system[data-route="admin"] :is(.teacher-permission-search input,.teacher-permission-select-wrap select,.teacher-permission-status-wrap select){width:100%;min-width:0;height:46px;padding:0 14px;border:1px solid #dadce0;border-radius:14px;background:#fff;color:#202124;outline:0;font:inherit;font-size:13px;box-shadow:none}
.metro-clean-system[data-route="admin"] :is(.teacher-permission-search input,.teacher-permission-select-wrap select,.teacher-permission-status-wrap select):focus{border-color:#0b57d0;box-shadow:0 0 0 3px rgba(11,87,208,.12)}
.metro-clean-system[data-route="admin"] .teacher-permission-toolbar-actions{grid-column:1/-1;min-height:40px;display:flex;align-items:center;justify-content:flex-end;gap:10px}
.metro-clean-system[data-route="admin"] .teacher-permission-result-count{min-height:32px;padding:0 11px;display:inline-flex;align-items:center;border-radius:999px;background:#d3e3fd;color:#0842a0;font-size:11.5px;font-weight:760}
.metro-clean-system[data-route="admin"] .teacher-permission-collapse-all{min-height:38px;padding:0 14px;border:1px solid #dadce0;border-radius:999px;background:#fff;color:#0b57d0;box-shadow:none;font-size:12px;font-weight:720;cursor:pointer}
.metro-clean-system[data-route="admin"] .teacher-permission-collapse-all:hover{background:#eaf2ff}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager{
  width:100%;min-width:0;max-height:min(76vh,860px);margin:0;padding:8px;display:flex!important;flex-direction:column!important;gap:8px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;
  border:1px solid #dfe3e7;border-radius:24px;background:#f8fafd;box-shadow:inset 0 1px 0 rgba(255,255,255,.8);scrollbar-gutter:stable;
}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager::-webkit-scrollbar,
.metro-clean-system[data-route="admin"] .permission-groups::-webkit-scrollbar{width:11px;height:11px}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager::-webkit-scrollbar-track,
.metro-clean-system[data-route="admin"] .permission-groups::-webkit-scrollbar-track{margin:7px;border-radius:999px;background:#edf1f5}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager::-webkit-scrollbar-thumb,
.metro-clean-system[data-route="admin"] .permission-groups::-webkit-scrollbar-thumb{border:3px solid #edf1f5;border-radius:999px;background:#9aa7b8}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager::-webkit-scrollbar-thumb:hover,
.metro-clean-system[data-route="admin"] .permission-groups::-webkit-scrollbar-thumb:hover{background:#6f7f93}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager{scrollbar-width:thin;scrollbar-color:#9aa7b8 #edf1f5}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager>.admin-user-card{
  width:100%!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;display:block!important;overflow:hidden!important;
  border:1px solid #dfe3e7!important;border-radius:19px!important;background:#fff!important;box-shadow:none!important;transform:none!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager>.admin-user-card:hover{border-color:#c4cfdd!important;background:#fff!important;box-shadow:0 1px 3px rgba(60,64,67,.08)!important}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager>.admin-user-card.is-permission-open{border-color:#a8c7fa!important;box-shadow:0 2px 8px rgba(60,64,67,.10)!important}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager>.admin-user-card[hidden]{display:none!important}
.metro-clean-system[data-route="admin"] .teacher-permission-row-head{
  min-height:76px!important;margin:0!important;padding:12px 14px!important;display:grid!important;grid-template-columns:44px minmax(170px,1fr) auto minmax(190px,.7fr) auto!important;gap:12px!important;align-items:center!important;border:0!important;background:#fff!important;position:sticky;top:0;z-index:3;
}
.metro-clean-system[data-route="admin"] .is-permission-open>.teacher-permission-row-head{border-bottom:1px solid #e8eaed!important;background:#f8fbff!important}
.metro-clean-system[data-route="admin"] .teacher-permission-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#d3e3fd;color:#0b57d0;font-size:12px;font-weight:800;letter-spacing:.02em}
.metro-clean-system[data-route="admin"] .admin-tile .teacher-permission-avatar{background:#f3e8fd;color:#7627bb}
.metro-clean-system[data-route="admin"] .teacher-permission-row-head>div{min-width:0}
.metro-clean-system[data-route="admin"] .teacher-permission-row-head h3{margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#202124!important;font-size:15px!important;font-weight:680!important;line-height:1.25!important}
.metro-clean-system[data-route="admin"] .teacher-permission-row-head p{margin:4px 0 0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7a8088!important;font-size:11px!important;line-height:1.3!important}
.metro-clean-system[data-route="admin"] .teacher-permission-row-head .status-badge{min-height:28px!important;padding:0 9px!important;display:inline-flex!important;align-items:center!important;border:0!important;border-radius:999px!important;background:#e6f4ea!important;color:#137333!important;font-size:10px!important;font-weight:760!important;text-transform:capitalize!important}
.metro-clean-system[data-route="admin"] .admin-tile .teacher-permission-row-head .status-badge{background:#f3e8fd!important;color:#7627bb!important}
.metro-clean-system[data-route="admin"] .teacher-permission-summary{min-width:0;display:grid;gap:4px;justify-items:start}
.metro-clean-system[data-route="admin"] .teacher-permission-summary small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px!important;line-height:1.25!important}
.metro-clean-system[data-route="admin"] .teacher-permission-state{color:#137333!important;font-weight:720!important}
.metro-clean-system[data-route="admin"] .teacher-permission-access{color:#5f6368!important}
.metro-clean-system[data-route="admin"] .teacher-permission-toggle{min-height:40px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #dadce0;border-radius:999px;background:#fff;color:#0b57d0;box-shadow:none;font-size:11.5px;font-weight:730;cursor:pointer;white-space:nowrap}
.metro-clean-system[data-route="admin"] .teacher-permission-toggle:hover{border-color:#a8c7fa;background:#eaf2ff}
.metro-clean-system[data-route="admin"] .teacher-permission-chevron{display:inline-block;font-size:17px;line-height:1;transition:transform .18s ease}
.metro-clean-system[data-route="admin"] .is-permission-open .teacher-permission-chevron{transform:rotate(180deg)}
.metro-clean-system[data-route="admin"] .teacher-permission-row:not(.is-permission-open)>.admin-user-meta,
.metro-clean-system[data-route="admin"] .teacher-permission-row:not(.is-permission-open)>.admin-user-actions,
.metro-clean-system[data-route="admin"] .teacher-permission-row:not(.is-permission-open)>.permission-box{display:none!important}
.metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.admin-user-meta{
  margin:0!important;padding:13px 16px!important;display:grid!important;grid-template-columns:minmax(190px,1.2fr) repeat(3,minmax(135px,.8fr))!important;gap:9px!important;border:0!important;border-bottom:1px solid #e8eaed!important;background:#fff!important;
}
.metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.admin-user-meta>span{min-width:0;min-height:42px;padding:9px 11px;display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid #e8eaed;border-radius:12px;background:#f8fafd;color:#4d5156;font-size:11px!important}
.metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.admin-user-actions{margin:0!important;padding:12px 16px 0!important;display:flex!important;justify-content:flex-end!important;gap:8px!important;background:#fff!important}
.metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.permission-box{margin:0!important;padding:14px 16px 16px!important;display:block!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
.metro-clean-system[data-route="admin"] .permission-headline{margin:0 0 10px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important}
.metro-clean-system[data-route="admin"] .permission-headline strong{color:#202124!important;font-size:15px!important;font-weight:680!important}
.metro-clean-system[data-route="admin"] .permission-headline span{display:block!important;margin-top:3px!important;color:#5f6368!important;font-size:11.5px!important}
.metro-clean-system[data-route="admin"] .permission-mode-row{position:sticky!important;top:0!important;z-index:5!important;margin:0 0 10px!important;padding:10px!important;display:flex!important;flex-wrap:wrap!important;gap:7px!important;border:1px solid #e1e6ec!important;border-radius:15px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 3px 10px rgba(60,64,67,.07)!important;backdrop-filter:blur(10px)}
.metro-clean-system[data-route="admin"] .permission-all-note{min-height:68px!important;padding:15px!important;display:flex!important;align-items:center!important;border:0!important;border-radius:15px!important;background:#e9f7ee!important;color:#315c3f!important;font-size:12.5px!important;line-height:1.5!important}
.metro-clean-system[data-route="admin"] .permission-groups{max-height:min(48vh,480px)!important;padding:2px 8px 4px 0!important;display:flex!important;flex-direction:column!important;gap:10px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important}
.metro-clean-system[data-route="admin"] .permission-group{margin:0!important;padding:13px!important;border:1px solid #dfe3e7!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important}
.metro-clean-system[data-route="admin"] .permission-group-title{min-height:34px!important;margin:0 0 10px!important;padding:0 2px 9px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border-bottom:1px solid #e8eaed!important}
.metro-clean-system[data-route="admin"] .permission-group-title label{display:flex!important;align-items:center!important;gap:9px!important;color:#202124!important;font-size:12.5px!important;font-weight:720!important}
.metro-clean-system[data-route="admin"] .permission-group-title input,.metro-clean-system[data-route="admin"] .permission-chip input{width:17px!important;height:17px!important;accent-color:#0b57d0!important}
.metro-clean-system[data-route="admin"] .permission-group-title small{min-height:25px;padding:0 8px;display:inline-flex;align-items:center;border-radius:999px;background:#eaf2ff;color:#0b57d0;font-size:10px!important;font-weight:760!important}
.metro-clean-system[data-route="admin"] .permission-chip-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.metro-clean-system[data-route="admin"] .permission-chip{min-width:0!important;min-height:66px!important;margin:0!important;padding:10px!important;display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;gap:9px!important;align-items:start!important;border:1px solid #e0e4e9!important;border-radius:13px!important;background:#fff!important;box-shadow:none!important;cursor:pointer!important}
.metro-clean-system[data-route="admin"] .permission-chip:hover{border-color:#a8c7fa!important;background:#f8fbff!important}
.metro-clean-system[data-route="admin"] .permission-chip.checked{border-color:#a8c7fa!important;background:#eaf2ff!important}
.metro-clean-system[data-route="admin"] .permission-chip span{min-width:0!important;display:grid!important;gap:3px!important}
.metro-clean-system[data-route="admin"] .permission-chip b{overflow:hidden;text-overflow:ellipsis;color:#202124!important;font-size:11.5px!important;line-height:1.25!important}
.metro-clean-system[data-route="admin"] .permission-chip small{display:-webkit-box!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;color:#6b7078!important;font-size:9.5px!important;line-height:1.35!important}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager.is-single-teacher{max-height:min(82vh,930px)}
.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager.is-single-teacher>.admin-user-card:not([hidden]){border-color:#a8c7fa!important}
@media(max-width:1180px){
  .metro-clean-system[data-route="admin"] .teacher-permission-manager-toolbar{grid-template-columns:1fr}
  .metro-clean-system[data-route="admin"] .teacher-permission-toolbar-controls{grid-template-columns:repeat(3,minmax(0,1fr))}
  .metro-clean-system[data-route="admin"] .teacher-permission-row-head{grid-template-columns:44px minmax(150px,1fr) auto auto!important}
  .metro-clean-system[data-route="admin"] .teacher-permission-summary{display:none}
  .metro-clean-system[data-route="admin"] .permission-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .metro-clean-system[data-route="admin"] .teacher-permission-manager-toolbar{padding:17px;border-radius:20px}
  .metro-clean-system[data-route="admin"] .teacher-permission-toolbar-controls{grid-template-columns:1fr}
  .metro-clean-system[data-route="admin"] .teacher-permission-toolbar-actions{grid-column:auto;justify-content:space-between}
  .metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager{max-height:72vh;padding:5px;border-radius:20px}
  .metro-clean-system[data-route="admin"] .teacher-permission-row-head{grid-template-columns:40px minmax(0,1fr) auto!important;gap:9px!important;padding:11px!important}
  .metro-clean-system[data-route="admin"] .teacher-permission-avatar{width:40px;height:40px}
  .metro-clean-system[data-route="admin"] .teacher-permission-row-head .status-badge{display:none!important}
  .metro-clean-system[data-route="admin"] .teacher-permission-toggle-label{display:none}
  .metro-clean-system[data-route="admin"] .teacher-permission-toggle{width:40px;min-width:40px;padding:0}
  .metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.admin-user-meta{grid-template-columns:1fr!important;padding:11px!important}
  .metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.admin-user-actions{padding:11px 11px 0!important;justify-content:flex-start!important}
  .metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.permission-box{padding:12px 11px 13px!important}
  .metro-clean-system[data-route="admin"] .permission-chip-grid{grid-template-columns:1fr!important}
  .metro-clean-system[data-route="admin"] .permission-groups{max-height:52vh!important}
}
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .teacher-permission-manager-toolbar,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager>.admin-user-card,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .teacher-permission-row-head,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.permission-box,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .teacher-permission-row.is-permission-open>.admin-user-actions,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .permission-group,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .permission-chip{background:#202124!important;color:#e8eaed!important;border-color:#3c4043!important}
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .teacher-permission-toolbar-copy h2,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .teacher-permission-row-head h3,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .permission-headline strong,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .permission-group-title label,
html[data-theme="dark"] .metro-clean-system[data-route="admin"] .permission-chip b{color:#e8eaed!important}
@media(prefers-reduced-motion:reduce){.metro-clean-system[data-route="admin"] .teacher-permission-chevron{transition:none!important}.metro-clean-system[data-route="admin"] .permission-admin-grid.admin-permission-manager{scroll-behavior:auto!important}}
