/* LMS Al Binaa V930 — consolidated opt-in management design foundation.
   The original V922/V923 were each importing V924/V925, causing repeated
   cascading rules on mixed admin/catalog pages. Each source is included ONCE.
   V927, V928, V929 remain separate leaf CSS; all component selectors and
   exceptions for CBT, MathJax, rich content and print are preserved. */


/* ===== Preserved V924 scoped declarations ===== */
/* LMS Al Binaa V924 — final responsive consistency pass.
   Shared styles are only imported from opt-in V922/V923 stylesheets.
   Does not target CBT content, MathJax, rich-text editors, or AI HTML iframes. */

/* A. Dashboard headers: brand and actions can wrap without side scroll. */
body.lms-ui-v922 header.top .topin,
body.lms-ui-v922 .top .topin {
  width:min(100% - 24px, 1180px);
  max-width:100%; min-width:0;
  display:flex; align-items:center; justify-content:space-between;
  column-gap:12px; row-gap:8px;
}
body.lms-ui-v922 .topin > .brand,
body.lms-ui-v922 header.top .topin > strong {
  min-width:0; overflow-wrap:anywhere;
}
body.lms-ui-v922 .topin > .brand {display:flex;align-items:center;gap:9px;}
body.lms-ui-v922 .topin .brand img {flex-shrink:0;max-width:min(136px,36vw);height:auto;max-height:38px;object-fit:contain;}
body.lms-ui-v922 .topin .brand span {overflow-wrap:anywhere;line-height:1.3;font-size:clamp(12.5px,1.6vw,14.5px);}
body.lms-ui-v922 .topin > :is(.actions,div):last-child:not(.brand) {
  display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;max-width:100%;min-width:0;
}
body.lms-ui-v922 .topin :is(.btn,.logout) {display:inline-flex;align-items:center;justify-content:center;gap:5px;max-width:100%;min-height:33px;}
body.lms-ui-v922 .topin .logout {font-size:12.7px;white-space:normal;text-align:center;}
body.lms-ui-v922[data-page="exam_packages"] .v446-nav .container,
body.lms-ui-v922 .aff-nav .container {min-width:0;flex-wrap:wrap;column-gap:10px;row-gap:8px;}
body.lms-ui-v922[data-page="exam_packages"] .v446-nav .navbar-brand,
body.lms-ui-v922 .aff-nav .navbar-brand {white-space:normal;overflow-wrap:anywhere;font-size:16px;}
body.lms-ui-v922 .aff-nav .btn {max-width:100%;}

/* B. Actions inside management tables and package list remain compact and legible. */
body.lms-ui-v922 :is(.table-responsive,.tablewrap) {max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;}
body.lms-ui-v922 :is(.table,.tbl) :is(td,th) {vertical-align:middle;}
body.lms-ui-v922 :is(.table,.tbl) td :is(.btn,.btn-sm,a.btn,button.btn),
body.lms-ui-v922 .v908-actions :is(.btn,.btn-sm) {
  display:inline-flex;align-items:center;justify-content:center;text-align:center;
  font-size:12.3px!important;line-height:1.3;min-height:31px;padding:5px 9px;border-radius:8px;
  white-space:normal;max-width:100%;vertical-align:middle;
}
body.lms-ui-v922 .v908-actions > div {display:flex;flex-wrap:wrap;align-items:center;gap:6px!important;min-width:0;}
body.lms-ui-v922 .v908-actions form {display:inline-flex;align-items:stretch;max-width:100%;margin:0;}
body.lms-ui-v922 .v908-actions form .btn {height:100%;}
body.lms-ui-v922 .v908-summary {min-width:0;overflow-wrap:anywhere;}
body.lms-ui-v922 .v908-summary > div {min-width:0;flex:1 1 auto;}
body.lms-ui-v922 .v908-summary h5 {overflow-wrap:anywhere;}
body.lms-ui-v922 .v908-toolbar > * {min-width:0;}
body.lms-ui-v922 :is(.pages,.pagination,.v908-toolbar,.teacher-actions,.student-delete,.bulk) {gap:7px;}
body.lms-ui-v922 :is(.teacher-actions,.student-delete,.bulk) :is(button,a,.btn) {font-size:12.5px;min-height:32px;}

/* C. Management dialogs: scroll within popup and preserve footer/close control. */
body.lms-ui-v922 .modal-dialog:not(.modal-fullscreen-sm-down) {width:auto;max-width:min(900px,calc(100vw - 24px));}
body.lms-ui-v922 .modal-dialog.modal-sm:not(.modal-fullscreen-sm-down) {max-width:min(380px,calc(100vw - 24px));}
body.lms-ui-v922 .modal-dialog.modal-lg:not(.modal-fullscreen-sm-down) {max-width:min(800px,calc(100vw - 24px));}
body.lms-ui-v922 .modal-dialog.modal-xl:not(.modal-fullscreen-sm-down) {max-width:min(1100px,calc(100vw - 24px));}
body.lms-ui-v922 .modal-dialog .modal-content {min-width:0;overflow:hidden;border-radius:13px;}
body.lms-ui-v922 .modal-dialog .modal-header {display:flex;align-items:center;gap:8px;min-width:0;}
body.lms-ui-v922 .modal-dialog .modal-title {min-width:0;overflow-wrap:anywhere;font-size:16px!important;}
body.lms-ui-v922 .modal-dialog .btn-close {margin-left:auto;flex:0 0 auto;}
body.lms-ui-v922 .modal-dialog .modal-body {min-width:0;overflow-x:auto;overscroll-behavior-x:contain;}
body.lms-ui-v922 .modal-dialog .modal-footer {display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px;}
body.lms-ui-v922 .v905-modal-dialog :is(.row,.col,.form-group) {min-width:0;}
body.lms-ui-v922 :is(.v921-dialog,#v909GoogleAdsDialog) {
  box-sizing:border-box;max-height:min(90dvh,850px);max-width:calc(100vw - 20px);overflow:auto;border-radius:14px;
}
body.lms-ui-v922 .v921-dialog .p-4 {padding:17px!important;}
body.lms-ui-v922 :is(.v921-dialog,#v909GoogleAdsDialog) :is(input,select,textarea) {max-width:100%;min-width:0;}

/* D. Dedicated mentor dialogs inherit the same mobile rhythm. */
body.lms-ui-v923-mentor :is(#studentDialog,#newGroup,#v915GroupDialog) {
  box-sizing:border-box;max-width:calc(100vw - 18px);max-height:90dvh;overflow:auto;overscroll-behavior:contain;
}
body.lms-ui-v923-mentor :is(#studentDialog,#newGroup,#v915GroupDialog) > .rowline:first-child {gap:8px;}
body.lms-ui-v923-mentor .actions {gap:7px;}
body.lms-ui-v923-mentor :is(.v917-exam,.v916-question,.v916-fragment) {min-width:0;max-width:100%;overflow-wrap:anywhere;}

@media(max-width:640px){
  body.lms-ui-v922 header.top .topin,
  body.lms-ui-v922 .top .topin {width:calc(100% - 20px);flex-direction:column;align-items:stretch;gap:8px;padding-block:2px;}
  body.lms-ui-v922 .topin > .brand {justify-content:center;text-align:center;}
  body.lms-ui-v922 header.top .topin > strong {text-align:center;font-size:14px;}
  body.lms-ui-v922 .topin > :is(.actions,div):last-child:not(.brand) {justify-content:center;width:100%;}
  body.lms-ui-v922 .topin > :is(.actions,div):last-child:not(.brand) :is(.btn,.logout) {flex:0 1 auto;min-width:0;padding:6px 9px;line-height:1.3;font-size:12px!important;}
  body.lms-ui-v922[data-page="exam_packages"] .v446-nav .container,
  body.lms-ui-v922 .aff-nav .container {justify-content:center;text-align:center;}
  body.lms-ui-v922 .v908-package {padding:11px!important;}
  body.lms-ui-v922 .v908-summary {gap:7px!important;}
  body.lms-ui-v922 .v908-summary > div {gap:8px!important;}
  body.lms-ui-v922 .v908-chevron {flex-shrink:0;}
  body.lms-ui-v922 .v908-actions > div {align-items:stretch;gap:6px!important;}
  body.lms-ui-v922 .v908-actions :is(.btn,form) {flex:1 1 auto;max-width:100%;}
  body.lms-ui-v922 .v908-actions form > .btn {width:100%;}
  body.lms-ui-v922 :is(.modal-dialog,.modal-dialog.modal-lg,.modal-dialog.modal-xl):not(.modal-fullscreen-sm-down) {max-width:calc(100vw - 16px);margin:8px auto;}
  body.lms-ui-v922 .modal-dialog:not(.modal-fullscreen-sm-down) .modal-content {max-height:calc(100dvh - 16px);}
  body.lms-ui-v922 .modal-dialog .modal-header {padding:10px 12px;}
  body.lms-ui-v922 .modal-dialog .modal-body {padding:11px 12px;}
  body.lms-ui-v922 .modal-dialog .modal-footer {padding:9px 12px;}
  body.lms-ui-v922 .modal-dialog :is(input.form-control,select.form-select) {font-size:16px!important;}
  body.lms-ui-v922 :is(.v921-dialog,#v909GoogleAdsDialog) {width:calc(100vw - 18px);}
  body.lms-ui-v923-mentor :is(#studentDialog,#newGroup,#v915GroupDialog) {padding:12px;max-width:calc(100vw - 14px);}
  body.lms-ui-v923-mentor :is(#studentDialog,#newGroup,#v915GroupDialog) .rowline {gap:7px;}
}
@media(prefers-reduced-motion:reduce){
  body.lms-ui-v922 .topin :is(.btn,.logout),
  body.lms-ui-v922 .v908-actions .btn {transition:none;}
}


/* ===== Preserved V925 scoped declarations ===== */
/* LMS Al Binaa V925 — Search, filters, pagination, notifications, and control states.
   Scoped to V922/V923 opt-in management surfaces, never CBT/question content.
   Does not modify form submission, AJAX, scoring or permission behavior. */

/* Management search/filter tools: compact rhythm and no screen overflow. */
body.lms-ui-v922 .v908-toolbar,
body.lms-ui-v922 #v893Filters,
body.lms-ui-v923-mentor .v915-controls {
  min-width:0;max-width:100%;column-gap:9px;row-gap:9px;
}
body.lms-ui-v922 .v908-toolbar > :is(.v908-search,.v908-size),
body.lms-ui-v922 #v893Filters > div,
body.lms-ui-v923-mentor .v915-controls > label {min-width:0;}
body.lms-ui-v922 .v908-toolbar :is(input,select),
body.lms-ui-v922 #v893Filters :is(input,select),
body.lms-ui-v923-mentor .v915-controls :is(input,select) {
  box-sizing:border-box;max-width:100%;min-width:0;
}
body.lms-ui-v922 .v908-toolbar .form-label,
body.lms-ui-v922 #v893Filters .form-label,
body.lms-ui-v923-mentor .v915-controls label {font-size:12.5px;line-height:1.35;}
/* Search focus states are clear without applying to MathJax/editor or question inputs. */
body.lms-ui-v922 :is(.v908-toolbar,#v893Filters) :is(input,select):focus-visible,
body.lms-ui-v923-mentor .v915-controls :is(input,select):focus-visible,
#v887-inline-tryouts .v887-controls :is(input,select):focus-visible,
#v813-inline-catalog .v809-tools :is(input,select):focus-visible,
body.lms-ui-v923-catalog #v809-root .v809-tools :is(input,select):focus-visible {
  outline:2px solid #2563eb;outline-offset:1px;
}

/* Management pagination: consistent hit areas, state visibility and wrapping. */
body.lms-ui-v922 :is(.pagination,.v908-pagination,.pages),
body.lms-ui-v923-mentor :is(.pagination,.v916-page-nav),
#v887-inline-tryouts .v887-pages,
#v813-inline-catalog .v809-pages,
body.lms-ui-v923-catalog #v809-root .v809-pages {
  display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;min-width:0;max-width:100%;
}
body.lms-ui-v922 .pagination :is(.page-link,button),
body.lms-ui-v922 .pages :is(a,button),
body.lms-ui-v923-mentor .pagination :is(a,button),
body.lms-ui-v923-mentor .v916-page-nav :is(a,button),
#v887-inline-tryouts .v887-pages :is(button,a),
#v813-inline-catalog .v809-pages :is(button,a),
body.lms-ui-v923-catalog #v809-root .v809-pages :is(button,a) {
  box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;
  min-height:32px;min-width:32px;max-width:100%;padding:5px 10px;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:12.5px;
  line-height:1.3;text-align:center;border-radius:8px;text-decoration:none;
}
body.lms-ui-v922 .pagination .page-item.active .page-link,
body.lms-ui-v922 .pagination .page-link[aria-current="page"] {font-weight:750;}
body.lms-ui-v922 .pagination .page-item.disabled .page-link,
body.lms-ui-v923-mentor .pagination button:disabled,
#v887-inline-tryouts .v887-pages button:disabled,
#v813-inline-catalog .v809-pages button:disabled,
body.lms-ui-v923-catalog #v809-root .v809-pages button:disabled {
  opacity:.48;cursor:not-allowed;box-shadow:none;
}

/* Notifications: compact, readable and no long codes/URLs spilling sideways. */
body.lms-ui-v922 :is(.alert,.v908-feedback,.v905-feedback),
body.lms-ui-v923-mentor :is(.notice,#toast),
body.lms-ui-v923-auth :is(.alert,.success,.note),
body.lms-ui-v923-password .msg,
#v887-inline-tryouts .v887-empty,
#v813-inline-catalog :is(.v809-empty,.v809-warning),
body.lms-ui-v923-catalog #v809-root :is(.v809-empty,.v809-warning) {
  box-sizing:border-box;max-width:100%;overflow-wrap:anywhere;word-break:normal;
  font-size:12.8px;line-height:1.5;border-radius:10px;
}
body.lms-ui-v922 .alert {padding:10px 13px;margin-bottom:11px;}
body.lms-ui-v922 .alert:last-child {margin-bottom:0;}
body.lms-ui-v923-mentor #toast {max-width:min(420px,calc(100vw - 26px));line-height:1.45;}

/* Table headers and status tags: support consistent scanning without reflowing cells. */
body.lms-ui-v922 :is(.table,.tbl) thead :is(th,td),
body.lms-ui-v923-mentor .table-scroller table thead th {
  font-size:12px;line-height:1.35;font-weight:700;
}
body.lms-ui-v922 :is(.table,.tbl) td :is(.badge,.status-badge),
body.lms-ui-v923-mentor .table-scroller td .v916-status {
  display:inline-block;max-width:100%;overflow-wrap:anywhere;line-height:1.3;
}
body.lms-ui-v922 :is(.table-responsive,.tablewrap) table,
body.lms-ui-v923-mentor .table-scroller table {border-collapse:separate;border-spacing:0;}

/* Catalog search + pager: match management component scale, not quiz typography. */
#v887-inline-tryouts .v887-controls,
#v813-inline-catalog .v809-tools,
body.lms-ui-v923-catalog #v809-root .v809-tools {max-width:100%;min-width:0;gap:8px;}
#v887-inline-tryouts .v887-controls :is(input,select),
#v813-inline-catalog .v809-tools :is(input,select),
body.lms-ui-v923-catalog #v809-root .v809-tools :is(input,select) {
  box-sizing:border-box;min-width:0;max-width:100%;border-radius:9px;
}
#v887-inline-tryouts .v887-pages,
#v813-inline-catalog .v809-pages,
body.lms-ui-v923-catalog #v809-root .v809-pages {margin-top:16px;}

@media(max-width:640px){
  body.lms-ui-v922 .v908-toolbar > :is(.v908-search,.v908-size),
  body.lms-ui-v923-mentor .v915-controls > label {flex:1 1 100%;width:100%;}
  body.lms-ui-v922 .v908-toolbar > .v908-size select {width:100%;}
  body.lms-ui-v922 :is(.pagination,.v908-pagination,.pages) {gap:5px;}
  body.lms-ui-v923-mentor .v915-controls :is(input,select),
  #v887-inline-tryouts .v887-controls :is(input,select),
  #v813-inline-catalog .v809-tools :is(input,select),
  body.lms-ui-v923-catalog #v809-root .v809-tools :is(input,select) {
    font-size:16px; /* avoid unwanted mobile browser zoom */
  }
  body.lms-ui-v923-mentor #toast {right:13px;bottom:13px;}
}


/* ===== Preserved V922 scoped declarations ===== */
/* LMS Al Binaa V922 — shared compact administrative design system.
   Scoped opt-in: <body class="lms-ui-v922">. Never apply to CBT answers,
   MathJax, rich-text editors, slide/game canvases, or imported HTML iframes.
   Keep functional, color and visibility rules owned by each module. */
body.lms-ui-v922 {
  --lms-ui-font: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --lms-ui-text: #213047;
  --lms-ui-muted: #64748b;
  --lms-ui-line: #dfe6ef;
  --lms-ui-radius: 10px;
  --lms-ui-soft-shadow: 0 4px 18px rgba(15, 23, 42, .055);
  font-family: var(--lms-ui-font);
  font-size: 14px;
  line-height: 1.5;
}
/* Buttons: one rhythm, but preserve utility widths, colors and functionality. */
body.lms-ui-v922 :is(.btn, a.btn, button.btn, .btn-primary, .btn-secondary, .btn-outline-primary, .btn-outline-secondary),
body.lms-ui-v922 :is(.logout, .v809-back, .v809-login, .v809-detail-button, .v809-ref-share, .v887-btn) {
  font-family: var(--lms-ui-font) !important;
  font-size: 13px !important;
  font-weight: 650;
  line-height: 1.35;
  border-radius: 9px;
  padding: 7px 12px;
  min-height: 35px;
  max-width: 100%;
  text-decoration: none;
  vertical-align: middle;
  transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}
body.lms-ui-v922 :is(.btn-sm, a.btn-sm, button.btn-sm, .v905-action-row .btn, .v908-actions .btn) {
  font-size: 12.5px !important;
  line-height: 1.3;
  padding: 5px 9px;
  min-height: 31px;
}
body.lms-ui-v922 :is(.btn-lg, a.btn-lg, button.btn-lg) {
  font-size: 14px !important;
  padding: 9px 15px;
  min-height: 41px;
}
body.lms-ui-v922 :is(.btn, button, a, .menu, .logout):focus-visible {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
body.lms-ui-v922 :is(.btn, button)[disabled],
body.lms-ui-v922 :is(.btn, button):disabled { cursor: not-allowed; }
/* Fields, without shrinking textareas, file inputs, date widgets or editors. */
body.lms-ui-v922 :is(.form-control, .form-select, .input, .select),
body.lms-ui-v922 :is(.v809-tools input, .v809-tools select) {
  font-family: var(--lms-ui-font) !important;
  font-size: 13.5px !important;
  line-height: 1.4;
  border-radius: 9px;
  border-color: var(--lms-ui-line);
  max-width: 100%;
}
body.lms-ui-v922 :is(input.form-control:not([type="file"]):not([type="checkbox"]):not([type="radio"]),
  select.form-select, input.input, select.select, .v809-tools input, .v809-tools select) {
  min-height: 37px;
  padding: 7px 10px;
}
body.lms-ui-v922 :is(.form-control-sm, .form-select-sm) { font-size: 12.5px !important; min-height: 31px; padding: 5px 9px; }
body.lms-ui-v922 :is(.form-label, .field label, .qwen-field label) {
  font-family: var(--lms-ui-font) !important;
  font-size: 12.5px !important;
  font-weight: 650;
  margin-bottom: 5px;
}
body.lms-ui-v922 :is(.form-text, .small, small, .text-muted) { line-height: 1.45; }
body.lms-ui-v922 :is(.card-body > p, .modal-body > p, .alert, .nav-link, .form-check-label) {
  font-size: 13.5px !important;
  line-height: 1.5;
}
body.lms-ui-v922 :is(.form-text, .card .small, .panel .small, .modal .small) { font-size: 12.5px !important; }
/* Tidy content blocks; maintain existing grid sizing and Bootstrap display. */
body.lms-ui-v922 :is(.card, .panel, .v446-card) {
  border-radius: 13px;
  box-shadow: var(--lms-ui-soft-shadow);
}
body.lms-ui-v922 :is(.card-header, .modal-header) { padding: 11px 15px; }
body.lms-ui-v922 :is(.card-body, .panel, .modal-body, .offcanvas-body) {
  font-size: 14px;
  line-height: 1.5;
}
body.lms-ui-v922 .card-body { padding: 14px 16px; }
body.lms-ui-v922 :is(.card-title, h5.card-title, .modal-title, .offcanvas-title) {
  font-size: 16px !important;
  font-weight: 720;
  line-height: 1.35;
}
body.lms-ui-v922 :is(.modal-dialog, .v905-modal-dialog) { max-width: min(900px, calc(100vw - 24px)); }
body.lms-ui-v922 .modal-dialog.modal-sm { max-width: min(380px, calc(100vw - 24px)); }
body.lms-ui-v922 .modal-dialog.modal-lg { max-width: min(800px, calc(100vw - 24px)); }
body.lms-ui-v922 .modal-dialog.modal-xl { max-width: min(1100px, calc(100vw - 24px)); }
body.lms-ui-v922 .modal-content { border-radius: 14px; }
body.lms-ui-v922 .modal-footer { padding: 10px 15px; gap: 7px; }
body.lms-ui-v922 .btn-close { padding: 7px; min-height: 28px; min-width: 28px; }
/* Only Bootstrap management tables and native admin list; never CBT/rich text. */
body.lms-ui-v922 :is(.table, .tbl) { font-size: 13px; }
body.lms-ui-v922 .table :is(th,td) { font-size: 13px; }
body.lms-ui-v922 :is(.table, .tbl) > :not(caption) > * > * {
  padding: 7px 9px;
  line-height: 1.45;
  vertical-align: middle;
}
body.lms-ui-v922 .tbl :is(th, td) { padding: 7px 9px; font-size: 12.7px; line-height: 1.45; }
body.lms-ui-v922 :is(.table-responsive, .tablewrap) { max-width: 100%; -webkit-overflow-scrolling: touch; }
body.lms-ui-v922 :is(.badge, .v809-price) { font-size: 11px; font-weight: 680; line-height: 1.35; border-radius: 8px; }
body.lms-ui-v922 :is(.pagination .page-link, .pages a, .pages span) { font-size: 12.5px; padding: 6px 9px; }
/* Consistent shell typography without forcing all descendants to 14px. */
body.lms-ui-v922 :is(main, .wrap) > h1,
body.lms-ui-v922 :is(.container, .wrap) > h1 { font-size: clamp(20px, 2.3vw, 24px); line-height: 1.3; }
body.lms-ui-v922 :is(.section h2, .v809-head h1) { font-size: 18px; line-height: 1.35; }
body.lms-ui-v922 :is(.v908-summary h5, .v809-body h2) { font-size: 15px !important; line-height: 1.4; }
body.lms-ui-v922 :is(.v908-package, .v809-card) { border-radius: 12px; }
body.lms-ui-v922 :is(.v908-package, .v809-card) :is(.btn, .v809-detail-button, .v809-ref-share) { min-height: 34px; }
/* Standalone pages historically use bespoke component names. */
body.lms-ui-v922 .topin { min-height: 56px; }
body.lms-ui-v922 .top .actions { gap: 6px; }
body.lms-ui-v922 .top :is(.btn, .logout) { padding: 7px 11px; min-height: 34px; font-size: 12.8px !important; }
body.lms-ui-v922 .hero { border-radius: 14px; padding: 17px 19px; }
body.lms-ui-v922 .hero h1 { font-size: clamp(21px, 2.8vw, 27px); line-height: 1.3; }
body.lms-ui-v922 .stat { padding: 12px 14px; border-radius: 12px; }
body.lms-ui-v922 .stat b { font-size: 21px; }
body.lms-ui-v922 .menu .ico { width: 47px; height: 47px; font-size: 23px; border-radius: 13px; }
body.lms-ui-v922 .menu h3 { font-size: 12px; line-height: 1.3; }
body.lms-ui-v922 .grid > .card { border-radius: 13px; padding: 15px; }
body.lms-ui-v922 :is(.qwen-panel, .qwen-panel summary) { border-radius: 12px; }
body.lms-ui-v922 .qwen-panel summary { padding: 13px 15px; font-size: 14px; }
body.lms-ui-v922 .qwen-panel form { padding: 14px 16px; }
body.lms-ui-v922 :is(.qwen-save, .qwen-field input, .qwen-field select) { font-size: 13px; border-radius: 9px; }
body.lms-ui-v922 .qwen-save { padding: 8px 13px; min-height: 35px; }
body.lms-ui-v922 :is(.v809-detail-button, .v809-ref-share, .v809-back, .v809-login) { display:inline-flex; align-items:center; justify-content:center; }
body.lms-ui-v922 .v809-detail-button, body.lms-ui-v922 .v809-ref-share { display:flex; }
body.lms-ui-v922 .v809-tools { gap: 8px; }
body.lms-ui-v922 .v809-tools button { font-size: 13px; min-height: 37px; padding: 8px 12px; border-radius: 9px; }
body.lms-ui-v922 .v809-dialog { width:min(680px,calc(100% - 24px)); border-radius: 14px; }
body.lms-ui-v922 .v809-modal-body { padding: 16px; }
body.lms-ui-v922 .v809-modal-head { padding: 12px 16px; }
body.lms-ui-v922 .v809-modal-title { font-size: 19px; }
/* Deliberately no rules on .cbt-text, .option-label, mjx-container,
   .note-editable, .ql-editor, .tox, slides, or exam canvases. */
@media (max-width: 640px) {
  body.lms-ui-v922 .topin { gap: 8px; }
  body.lms-ui-v922 .actions { gap: 6px; }
  body.lms-ui-v922 :is(.btn, .logout) { overflow-wrap:anywhere; white-space:normal; }
  body.lms-ui-v922 :is(.modal-dialog, .modal-dialog.modal-sm, .modal-dialog.modal-lg, .modal-dialog.modal-xl) {
    max-width: calc(100vw - 16px);
    margin: 8px auto;
  }
  body.lms-ui-v922 :is(.modal-body, .card-body) { padding: 12px; }
  body.lms-ui-v922 .hero { padding: 14px; }
  body.lms-ui-v922 .hero h1 { font-size: 21px; }
  body.lms-ui-v922 .grid > .card { padding: 12px 8px; }
  body.lms-ui-v922 .v908-actions .btn { max-width:100%; }
  body.lms-ui-v922 .v809-tools input, body.lms-ui-v922 .v809-tools select { min-width:0; }
}
@media (prefers-reduced-motion: reduce) {
  body.lms-ui-v922 :is(.btn, .logout, .v809-detail-button) { transition: none; }
}


/* ===== Preserved V923 scoped declarations ===== */
/* LMS Al Binaa V923 — Second-phase compact polish for standalone and public modules.
   Only opt-in auth/mentor/password bodies and named catalog roots are styled.
   Protect CBT answers, imported AI homepage, MathJax, question/rich editors. */

/* Shared compact geometry for isolated admin-like pages */
body:is(.lms-ui-v923-auth,.lms-ui-v923-password,.lms-ui-v923-mentor) {
  --v923-border:#dfe7f1;
  --v923-muted:#64748b;
  --v923-shadow:0 5px 20px rgba(15,23,42,.07);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:14px;
  line-height:1.5;
}
body:is(.lms-ui-v923-auth,.lms-ui-v923-password,.lms-ui-v923-mentor) :is(button,a,input,select,summary):focus-visible,
#v887-inline-tryouts :is(button,a,input,select):focus-visible,
#v813-inline-catalog :is(button,a,input,select):focus-visible,
body.lms-ui-v923-catalog #v809-root :is(button,a,input,select):focus-visible {
  outline:2px solid #3b82f6;
  outline-offset:2px;
}
/* Auth: keep primary login action prominent, reduce excessive panel whitespace */
body.lms-ui-v923-auth .wrap {padding:16px;}
body.lms-ui-v923-auth .card {width:min(420px,100%);border:1px solid var(--v923-border);border-radius:15px;box-shadow:var(--v923-shadow);}
body.lms-ui-v923-auth .head {padding:21px 24px 17px;}
body.lms-ui-v923-auth .head h1 {font-size:19px;line-height:1.3;overflow-wrap:anywhere;}
body.lms-ui-v923-auth .head img {max-height:56px;max-width:170px;}
body.lms-ui-v923-auth .body {padding:21px 24px;}
body.lms-ui-v923-auth .field {margin-bottom:13px;}
body.lms-ui-v923-auth .field label {font-size:12.8px;margin-bottom:5px;}
body.lms-ui-v923-auth .field input {height:41px;min-height:41px;font-size:14px;border-radius:9px;padding:0 11px;}
body.lms-ui-v923-auth .password-wrap input {padding-right:96px;}
body.lms-ui-v923-auth .password-toggle {height:30px;min-width:78px;font-size:12px;}
body.lms-ui-v923-auth .btn {height:41px;min-height:41px;font-size:13.5px;border-radius:9px;}
body.lms-ui-v923-auth :is(.alert,.success,.note) {font-size:12.8px;padding:10px 12px;margin-bottom:13px;}
body.lms-ui-v923-auth .links {gap:9px;font-size:12.5px;margin-top:14px;flex-wrap:wrap;}
body.lms-ui-v923-auth dialog {border-radius:15px;max-width:calc(100vw - 20px);}
body.lms-ui-v923-auth .dlghead {padding:13px 18px;}
body.lms-ui-v923-auth .dlghead strong {font-size:15px;}
body.lms-ui-v923-auth .dlgbody {padding:17px 18px;}
body.lms-ui-v923-auth .x {min-width:32px;min-height:32px;font-size:23px;}
/* Change password standalone */
body.lms-ui-v923-password .wrap {max-width:500px;margin:27px auto;}
body.lms-ui-v923-password .card {border-radius:14px;padding:20px 21px;box-shadow:var(--v923-shadow);}
body.lms-ui-v923-password h1 {font-size:20px;}
body.lms-ui-v923-password .muted {font-size:12.8px;margin-bottom:15px;}
body.lms-ui-v923-password label {font-size:12.8px;margin:11px 0 5px;}
body.lms-ui-v923-password input {font-size:13.5px;min-height:39px;padding:8px 11px;border-radius:9px;}
body.lms-ui-v923-password .btn {font-size:13px;padding:9px 13px;min-height:36px;border-radius:9px;}
body.lms-ui-v923-password .row {gap:7px;margin-top:17px;}
body.lms-ui-v923-password .msg {font-size:13px;padding:10px 12px;}
/* Mentor monitoring: compact navigation, cards, dialog, controls and table.
   Only outer UI changed; question contents and MathJax output untouched. */
body.lms-ui-v923-mentor header {padding-top:11px;padding-bottom:11px;}
body.lms-ui-v923-mentor header h1 {font-size:19px;}
body.lms-ui-v923-mentor header a {font-size:12.7px;padding:7px 11px;border-radius:9px;}
body.lms-ui-v923-mentor main {margin:16px auto 32px;}
body.lms-ui-v923-mentor main > .card {padding:15px 17px;margin-bottom:12px;border-radius:12px;box-shadow:var(--v923-shadow);}
body.lms-ui-v923-mentor :is(main h2,dialog h2) {font-size:17px;line-height:1.3;}
body.lms-ui-v923-mentor :is(main h3,dialog h3) {font-size:15px;line-height:1.35;}
body.lms-ui-v923-mentor :is(.btn,button.btn,a.btn) {font-size:12.8px;line-height:1.35;padding:7px 11px;min-height:35px;border-radius:9px;vertical-align:middle;max-width:100%;}
body.lms-ui-v923-mentor .btn.small {font-size:12px;padding:5px 9px;min-height:30px;}
body.lms-ui-v923-mentor :is(input:not([type=checkbox]):not([type=radio]),select) {font-size:13.5px;min-height:37px;padding:7px 10px;border-radius:9px;}
body.lms-ui-v923-mentor :is(input[type=checkbox],input[type=radio]) {accent-color:#185fa8;}
body.lms-ui-v923-mentor .rowline {padding:8px 0;gap:9px;}
body.lms-ui-v923-mentor .actions {gap:7px;}
body.lms-ui-v923-mentor .notice {font-size:12.8px;padding:10px 12px;border-radius:9px;}
body.lms-ui-v923-mentor .table-scroller {max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;}
body.lms-ui-v923-mentor .table-scroller table {font-size:12.5px;}
body.lms-ui-v923-mentor .table-scroller :is(th,td) {padding:8px 9px;line-height:1.4;}
body.lms-ui-v923-mentor dialog {padding:16px 18px;border-radius:14px;box-shadow:0 16px 54px rgba(15,23,42,.20);}
body.lms-ui-v923-mentor #studentDialog {max-height:92dvh;max-width:calc(100vw - 16px);}
body.lms-ui-v923-mentor .v915-controls {gap:9px;}
body.lms-ui-v923-mentor .v915-controls label {font-size:12.7px;}
body.lms-ui-v923-mentor .v916-row {padding:8px 10px;}
body.lms-ui-v923-mentor .v917-exam {padding:10px;border-radius:10px;}
body.lms-ui-v923-mentor .v917-attempt {padding:8px 4px;}
body.lms-ui-v923-mentor .v916-question {padding:11px;border-radius:10px;}
body.lms-ui-v923-mentor :is(.v916-status,.v915-joined) {font-size:11.5px;}
body.lms-ui-v923-mentor #toast {font-size:12.7px;padding:9px 13px;}
/* Public Try Out catalog: restrain oversized cards and buttons without altering click logic */
#v887-inline-tryouts {margin-top:25px;margin-bottom:33px;padding-top:14px;padding-bottom:22px;}
#v887-inline-tryouts .v887-top {gap:11px;margin-bottom:13px;}
#v887-inline-tryouts .v887-top h2 {font-size:clamp(19px,2.1vw,23px);line-height:1.3;}
#v887-inline-tryouts .v887-hint {font-size:12.8px;}
#v887-inline-tryouts .v887-controls {gap:8px;}
#v887-inline-tryouts :is(.v887-search,.v887-payment) {font-size:13.5px;min-height:38px;padding:8px 11px;border-radius:9px;}
#v887-inline-tryouts .v887-grid {gap:12px;}
#v887-inline-tryouts .v887-item {border-radius:13px;box-shadow:0 4px 17px rgba(15,23,42,.055);}
#v887-inline-tryouts :is(.v887-cover,.v887-placeholder) {height:140px;}
#v887-inline-tryouts .v887-itembody {padding:13px;gap:7px;}
#v887-inline-tryouts .v887-itemtitle {font-size:15px;line-height:1.35;}
#v887-inline-tryouts .v887-brief {font-size:12.6px;}
#v887-inline-tryouts .v887-meta {font-size:12px;padding-top:3px;}
#v887-inline-tryouts .v887-chip {font-size:10.5px;padding:4px 8px;}
#v887-inline-tryouts .v887-btn {font-size:12.8px;min-height:35px;padding:7px 10px;border-radius:9px;line-height:1.35;}
#v887-inline-tryouts .v887-pages {gap:9px;margin-top:14px;font-size:12.5px;}
#v887-inline-tryouts .v887-dialog {border-radius:14px;}
#v887-inline-tryouts .v887-modal-head {padding:13px 16px;}
#v887-inline-tryouts .v887-modal-head h3 {font-size:17px;}
#v887-inline-tryouts .v887-modal-body {padding:15px 16px;}
#v887-inline-tryouts .v887-modal-desc {font-size:13px;line-height:1.6;}
#v887-inline-tryouts .v887-close {min-width:32px;min-height:32px;font-size:23px;}
#v887-inline-tryouts .v887-modal-tracks {font-size:12.8px;line-height:1.6;}
/* Course catalogs: same density as Try Out, scoped to the two catalog roots */
#v813-inline-catalog {margin-top:20px;margin-bottom:33px;}
#v813-inline-catalog .v813-head {margin-bottom:12px;}
#v813-inline-catalog .v813-head h2 {font-size:clamp(19px,2.1vw,23px);}
#v813-inline-catalog .v809-tools {gap:8px;margin-bottom:13px;}
#v813-inline-catalog .v809-tools :is(input,select,button) {font-size:13.5px;min-height:38px;padding:7px 11px;border-radius:9px;}
#v813-inline-catalog .v809-grid {gap:12px;}
#v813-inline-catalog .v809-card {border-radius:13px;box-shadow:0 4px 17px rgba(15,23,42,.055);}
#v813-inline-catalog .v809-cover {height:140px;}
#v813-inline-catalog .v809-body {padding:13px;}
#v813-inline-catalog .v809-body h2 {font-size:15px;line-height:1.35;}
#v813-inline-catalog .v809-teacher {font-size:12.5px;}
#v813-inline-catalog :is(.v809-detail-button,.v809-ref-share) {font-size:12.8px;min-height:35px;padding:7px 10px;border-radius:9px;}
#v813-inline-catalog .v809-price {font-size:10.5px;padding:4px 8px;}
#v813-inline-catalog .v809-modal-head {padding:13px 16px;}
#v813-inline-catalog .v809-modal-body {padding:15px 16px;}
#v813-inline-catalog .v809-modal-title {font-size:18px;}
#v813-inline-catalog .v809-pages :is(button,span) {font-size:12.8px;}
body.lms-ui-v923-catalog #v809-root .v809-head h1 {font-size:20px;}
body.lms-ui-v923-catalog #v809-root .v809-tools :is(input,select,button) {font-size:13.5px;min-height:38px;padding:8px 11px;border-radius:9px;}
body.lms-ui-v923-catalog #v809-root .v809-grid {gap:12px;}
body.lms-ui-v923-catalog #v809-root .v809-card {border-radius:13px;}
body.lms-ui-v923-catalog #v809-root .v809-body {padding:13px;}
body.lms-ui-v923-catalog #v809-root .v809-cover {height:140px;}
body.lms-ui-v923-catalog #v809-root .v809-body h2 {font-size:15px!important;}
body.lms-ui-v923-catalog #v809-root :is(.v809-detail-button,.v809-ref-share,.v809-pages button) {font-size:12.8px!important;min-height:35px;padding:7px 10px;border-radius:9px;}
body.lms-ui-v923-catalog #v809-root .v809-modal-head {padding:13px 16px;}
/* Modals are outside some catalog roots; style using their unique IDs. */
#v809-dialog {border-radius:14px;}
#v809-dialog .v809-modal-head {padding:13px 16px;}
#v809-dialog .v809-modal-body {padding:15px 16px;}
#v809-dialog .v809-modal-title {font-size:18px;}
@media(max-width:640px){
  body.lms-ui-v923-auth .wrap {padding:11px;}
  body.lms-ui-v923-auth .body {padding:17px 17px 19px;}
  body.lms-ui-v923-auth .head {padding:19px 17px 16px;}
  body.lms-ui-v923-password .wrap {margin:15px auto;}
  body.lms-ui-v923-password .card {padding:15px;}
  body.lms-ui-v923-mentor main {width:calc(100% - 18px);margin-top:10px;}
  body.lms-ui-v923-mentor main > .card {padding:12px;}
  body.lms-ui-v923-mentor dialog {padding:12px;max-width:calc(100vw - 12px);}
  body.lms-ui-v923-mentor header {padding:10px 12px;}
  body.lms-ui-v923-mentor header h1 {font-size:17px;}
  #v887-inline-tryouts .v887-grid,#v813-inline-catalog .v809-grid {grid-template-columns:minmax(0,1fr);}
  #v887-inline-tryouts .v887-controls {grid-template-columns:minmax(0,1fr);width:100%;}
  #v813-inline-catalog .v809-tools {grid-template-columns:minmax(0,1fr);}
  #v813-inline-catalog .v809-tools input {grid-column:auto;}
  #v813-inline-catalog .v809-tools button {width:100%;}
  /* Prevent automatic mobile zoom without enlarging buttons. */
  body.lms-ui-v923-auth .field input,
  body.lms-ui-v923-password input,
  body.lms-ui-v923-mentor :is(input:not([type=checkbox]):not([type=radio]),select),
  #v887-inline-tryouts :is(.v887-search,.v887-payment),
  #v813-inline-catalog .v809-tools :is(input,select),
  body.lms-ui-v923-catalog #v809-root .v809-tools :is(input,select) {font-size:16px;}
}
@media(prefers-reduced-motion:reduce){
  #v887-inline-tryouts .v887-btn,body.lms-ui-v923-mentor .btn {transition:none;}
}


/* ===== Preserved V926 scoped declarations ===== */
/* LMS Al Binaa V926 — management lists, compact action clusters, complex forms.
   Loaded AFTER V922–V925. Isolated to opted-in dashboard and mentor surfaces.
   IMPORTANT: Never target the exam player, question choices, rich text editors,
   MathJax, interactive course contents, iframe presentations or game canvases. */

/* Management card/list rhythm: keep summaries readable and actions contained. */
body.lms-ui-v922 .v908-package { border-color:#dce6f0!important; background:#fff; transition:border-color .16s ease,box-shadow .16s ease; }
body.lms-ui-v922 .v908-package:focus-within { border-color:#b0c9e8!important; }
body.lms-ui-v922 .v908-package[open] { box-shadow:0 5px 16px rgba(15,23,42,.065); }
body.lms-ui-v922 .v908-package .v908-summary { padding:0; gap:10px!important; min-width:0; line-height:1.45; }
body.lms-ui-v922 .v908-package .v908-summary h5 { margin-top:4px; margin-bottom:5px; font-size:15px!important; font-weight:740; }
body.lms-ui-v922 .v908-package .v908-summary .small { line-height:1.45; }
body.lms-ui-v922 .v908-package .v908-chevron { align-self:flex-start; min-height:30px; border-radius:8px; font-size:12px; }
body.lms-ui-v922 .v908-package .v908-actions { padding-top:12px!important; }
body.lms-ui-v922 .v908-package .v908-actions > div { gap:6px!important; }
body.lms-ui-v922 .v908-package .v908-actions :is(.btn,a.btn,button.btn) { min-height:32px; padding:6px 9px; white-space:normal!important; font-size:12.2px!important; }
body.lms-ui-v922 .v908-package .v908-actions form { max-width:100%; }
/* Do not force collapsed sections to expand or hide; their native details state wins. */

/* Exam package edit, arrangement and voucher: harmonize form grid at source. */
body.lms-ui-v922 :is(#v905EditModal,#v905ArrangeModal,#v906VoucherModal) .modal-header,
body.lms-ui-v922 :is(#v905CreateModal,#v905PackageModal) .modal-header { gap:8px; padding:12px 16px; }
body.lms-ui-v922 :is(#v905EditModal,#v905ArrangeModal,#v906VoucherModal,#v905CreateModal,#v905PackageModal) .modal-body {
  min-width:0; padding:14px 16px; overflow-x:auto;
}
body.lms-ui-v922 :is(#v905EditModal,#v905ArrangeModal,#v906VoucherModal,#v905CreateModal,#v905PackageModal) :is(.form-label,.form-check-label) {
  font-size:12.5px; font-weight:650; line-height:1.4; margin-bottom:5px;
}
body.lms-ui-v922 :is(#v905EditModal,#v905ArrangeModal,#v906VoucherModal,#v905CreateModal,#v905PackageModal) :is(.form-control,.form-select) {
  max-width:100%; min-width:0; border-radius:9px;
}
body.lms-ui-v922 :is(#v905ArrangeModal,#v906VoucherModal) .card-header {padding:10px 13px!important;}
body.lms-ui-v922 :is(#v905ArrangeModal,#v906VoucherModal) .v446-track {border-radius:11px; padding:12px!important;}
body.lms-ui-v922 :is(#v905ArrangeModal,#v906VoucherModal) .v446-track :is(.d-flex,.row) {min-width:0;}
body.lms-ui-v922 :is(#v905ArrangeModal,#v906VoucherModal) .v446-track h5 {font-size:14.5px!important;line-height:1.4;}
body.lms-ui-v922 :is(#v905ArrangeModal,#v906VoucherModal) .v446-track :is(.btn,.btn-sm) {
  min-height:31px; padding:5px 9px; font-size:12.3px!important; white-space:normal;
}
body.lms-ui-v922 :is(#v905ArrangeModal,#v906VoucherModal) .form-check-input {flex-shrink:0;}

/* Admin People: search panels, settings, bulk operations and editable rows. */
body.lms-ui-v922 .wrap > .panel { border-radius:13px; min-width:0; max-width:100%; }
body.lms-ui-v922 .filters { column-gap:10px; row-gap:10px; align-items:end; max-width:100%; }
body.lms-ui-v922 .filters > *,
body.lms-ui-v922 :is(.teacher-actions,.teacher-delete,.student-manage,.student-delete,.token-bulk) > * { min-width:0; }
body.lms-ui-v922 .filters :is(.field,.searchcol) { min-width:0; }
body.lms-ui-v922 .filters :is(input,select) { max-width:100%; }
body.lms-ui-v922 :is(.teacher-actions,.teacher-delete,.student-manage,.student-delete,.token-bulk) { max-width:100%; row-gap:9px; column-gap:9px; }
body.lms-ui-v922 :is(.teacher-actions,.teacher-delete,.student-manage,.student-delete,.token-bulk) :is(.btn,button) {
  font-size:12.7px!important; line-height:1.35; white-space:normal;
}
body.lms-ui-v922 .bulk { max-width:100%; border-radius:0 0 12px 12px; padding:11px; gap:9px; }
body.lms-ui-v922 .bulk.stickybar { max-height:min(45vh,340px); overflow-y:auto; overscroll-behavior-y:contain; }
body.lms-ui-v922 .bulk .confirm { max-width:100%; }
body.lms-ui-v922 .supervisor-picker { max-width:100%; }
body.lms-ui-v922 .supervisor-option { min-width:0; overflow-wrap:anywhere; }
body.lms-ui-v922 .check { flex-shrink:0; }

/* Affiliate dashboard: financial tables can scroll on mobile without stretching
   the entire page. Preserve numbers, colors and existing submit actions. */
body.lms-ui-v922 .aff-nav .container { gap:9px; }
body.lms-ui-v922 .aff-nav .navbar-brand { font-size:16px; line-height:1.35; }
body.lms-ui-v922 .input-group { max-width:100%; min-width:0; }
body.lms-ui-v922 .input-group .copybox {min-width:0; flex:1 1 155px; overflow:hidden; text-overflow:ellipsis;}
body.lms-ui-v922 .input-group .btn { flex:0 0 auto; }
body.lms-ui-v922 .card-header.fw-bold {font-size:14.5px; padding:11px 14px!important;}
body.lms-ui-v922 .card-body :is(.row,.col,.d-flex) { min-width:0; }
body.lms-ui-v922 .table-responsive { overflow-x:auto; -webkit-overflow-scrolling:touch; }
body.lms-ui-v922 .table-responsive .table { width:100%; margin-bottom:0; }
body.lms-ui-v922 .table-responsive .table th {white-space:nowrap;}
body.lms-ui-v922 .table-responsive .table td { max-width:360px; overflow-wrap:anywhere; }
body.lms-ui-v922 .table-responsive .table td > .d-flex {gap:6px!important; flex-wrap:wrap;}
body.lms-ui-v922 .table-responsive .table td form {max-width:100%;}
body.lms-ui-v922 .table-responsive .table td :is(button.btn,a.btn) {min-height:31px;font-size:12.3px!important;white-space:normal;}

/* Mentor mass assignment + student monitoring; never style question contents. */
body.lms-ui-v923-mentor .v915-controls { align-items:end; gap:9px; }
body.lms-ui-v923-mentor .v915-controls label { min-width:0; overflow-wrap:anywhere; }
body.lms-ui-v923-mentor .v915-controls :is(input,select) {width:100%;max-width:100%;min-width:0;box-sizing:border-box;}
body.lms-ui-v923-mentor .v915-bulk-actions { gap:8px; margin:13px 0; padding:12px; background:#f8fafc; border:1px solid #e3ebf4; border-radius:10px; }
body.lms-ui-v923-mentor .v915-bulk-actions label { line-height:1.45; font-size:12.8px; overflow-wrap:anywhere; }
body.lms-ui-v923-mentor .v915-bulk-actions input[type="radio"] {flex:0 0 auto; min-width:16px; width:16px; height:16px; margin-top:2px;}
body.lms-ui-v923-mentor #v915Roster { min-width:0; max-width:100%; }
body.lms-ui-v923-mentor #v915Roster .table-scroller { max-width:100%; overflow-x:auto; }
body.lms-ui-v923-mentor .v915-student-table th {white-space:nowrap;}
body.lms-ui-v923-mentor .v915-student-table td {overflow-wrap:anywhere;}
body.lms-ui-v923-mentor #v915Feedback {font-size:12.7px;line-height:1.45;}
body.lms-ui-v923-mentor #v915Assign {min-height:35px;max-width:100%;}
body.lms-ui-v923-mentor :is(#v915GroupDialog,#newGroup) form {max-width:100%;}

/* Accessible keyboard focus only where opt-in UI is used. */
body.lms-ui-v922 :is(.v908-summary,.v908-actions a,.v908-actions button,.filters input,.filters select):focus-visible,
body.lms-ui-v923-mentor :is(#v915Assign,#v915Roster input,#v915GroupDialog input):focus-visible {
  outline:2px solid #2563eb; outline-offset:2px;
}

@media(max-width:767px){
  body.lms-ui-v922 .v908-package {padding:11px!important;}
  body.lms-ui-v922 .v908-package .v908-summary {flex-wrap:wrap;}
  body.lms-ui-v922 .v908-package .v908-chevron {margin-left:auto;}
  body.lms-ui-v922 .v908-package .v908-actions > div {gap:7px!important;}
  body.lms-ui-v922 :is(#v905EditModal,#v905ArrangeModal,#v906VoucherModal,#v905CreateModal,#v905PackageModal) .modal-body {padding:11px 12px;}
  body.lms-ui-v922 :is(#v905ArrangeModal,#v906VoucherModal) .v446-track {padding:10px!important;}
  body.lms-ui-v922 :is(.teacher-actions,.teacher-delete,.student-manage,.student-delete,.token-bulk) {width:100%; min-width:0;}
  body.lms-ui-v922 .bulk.stickybar {max-height:min(40dvh,300px);}
  body.lms-ui-v922 .input-group:has(.copybox) {display:flex; flex-wrap:wrap; gap:7px;}
  body.lms-ui-v922 .input-group .copybox {flex:1 1 100%;width:100%;border-radius:9px!important;}
  body.lms-ui-v922 .input-group:has(.copybox) .btn {flex:1 1 auto; border-radius:9px!important;}
  body.lms-ui-v923-mentor .v915-controls {align-items:stretch;}
  body.lms-ui-v923-mentor .v915-controls label {flex:1 1 100%;}
  body.lms-ui-v923-mentor #v915Find {flex:1 1 auto;max-width:100%;}
}
@media(max-width:480px){
  body.lms-ui-v922 .v908-package .v908-actions :is(.btn,form) {flex:1 1 100%;}
  body.lms-ui-v922 .v908-package .v908-actions form .btn {width:100%;}
  body.lms-ui-v922 .filters {grid-template-columns:minmax(0,1fr);}
  body.lms-ui-v922 .student-delete {grid-template-columns:minmax(0,1fr);}
  body.lms-ui-v922 .token-bulk {grid-template-columns:minmax(0,1fr);}
  body.lms-ui-v923-mentor .v915-bulk-actions {padding:10px;}
}
@media(prefers-reduced-motion:reduce){
  body.lms-ui-v922 .v908-package {transition:none;}
}
