/* Listenise Admin Console — isolated from the learner-facing UI. */
.admin-app { --admin-ink:#142033; --admin-muted:#67768a; --admin-border:#e5eaf1; --admin-tint:#f5f8fc; --admin-blue:#295fe8; background:#f5f7fb; color:var(--admin-ink); min-height:100vh; font-size:14px; }
.admin-app .admin-symbols { position:absolute; width:0; height:0; overflow:hidden; }
.admin-app .admin-icon { flex:0 0 auto; display:inline-block; width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }
.admin-app .site-nav { position:relative; height:68px; border-bottom:1px solid var(--admin-border); background:#fff; z-index:40; }
.admin-app .site-nav-inner { min-height:68px; max-width:none; width:100%; padding:0 36px; }
.admin-top-label { border-left:1px solid #dce4ef; padding-left:17px; color:#66768b; font-size:13px; font-weight:700; }
.admin-top-actions { display:flex; gap:25px; align-items:center; margin-left:auto; }
.admin-top-actions a { text-decoration:none; font-weight:650; color:#52627b; }
.admin-top-actions a:last-child { color:var(--admin-blue); }
.admin-top-actions .admin-icon { width:15px; height:15px; }
.admin-top-actions a:hover { color:#1741ae; }
.admin-layout { min-height:calc(100vh - 68px); display:grid; grid-template-columns:230px minmax(0,1fr); }
.admin-sidebar { background:#fff; border-right:1px solid var(--admin-border); padding:30px 14px 22px; display:flex; flex-direction:column; gap:5px; }
.admin-sidebar-label { font-size:10px; font-weight:850; color:#9ba8b9; letter-spacing:.13em; padding:0 15px 14px; }
.admin-side-link { display:flex; align-items:center; gap:13px; padding:13px 15px; color:#617189; text-decoration:none; border-radius:10px; font-size:13px; font-weight:740; border:1px solid transparent; }
.admin-side-link .admin-icon { width:18px; height:18px; }
.admin-side-link:hover { background:#f4f7fe; color:#244db6; }
.admin-side-link.is-current { background:#edf3ff; color:#2456ca; }
.admin-sidebar-bottom { border-top:1px solid var(--admin-border); margin-top:auto; padding:25px 10px 0; display:flex; gap:11px; align-items:flex-start; color:#65748a; font-size:12px; font-weight:700; line-height:1.5; }
.admin-sidebar-bottom small { font-size:11px; color:#9aa6b4; font-weight:450; }
.admin-sidebar-bottom .admin-icon { color:#6c8ac9; width:19px; height:19px; }
.admin-main { width:100%; max-width:1580px; min-width:0; padding:36px clamp(22px,3.25vw,58px) 22px; }
.admin-page-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:14px; margin-bottom:29px; }
.admin-eyebrow { display:block; font-size:10px; font-weight:850; color:#5e7dbc; letter-spacing:.135em; margin-bottom:11px; }
.admin-page-heading h1 { font-size:clamp(27px,2.5vw,35px); font-weight:820; letter-spacing:-.045em; line-height:1.12; margin:0 0 10px; }
.admin-page-heading p { color:var(--admin-muted); font-size:14px; margin:0; }
.admin-help-link { white-space:nowrap; font-weight:720; color:#506a96; text-decoration:none; font-size:12px; margin-bottom:3px; }
.admin-help-link .admin-icon { width:14px; height:14px; }
.admin-help-link:hover { color:var(--admin-blue); }
.admin-alert { margin:0 0 22px; border-radius:10px; background:#ecf3ff; border:1px solid #d2e0ff; color:#315fb5; padding:12px 15px; font-size:12.5px; font-weight:600; }
.admin-alert[data-tone="error"] { background:#fff2f1; color:#b42318; border-color:#ffd1cf; }
.admin-alert[data-tone="success"] { background:#edfaf3; color:#187048; border-color:#c3efd8; }
.admin-alert-subtle { margin-top:15px; background:#f0f5fd; border-color:#e1eaf7; }
.admin-alert:empty { display:none; }
.admin-section-head { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; margin:0 0 17px; }
.admin-section-head h2 { font-size:17px; letter-spacing:-.027em; margin:0 0 4px; }
.admin-section-head p { color:#8792a4; font-size:12px; margin:0; }
.admin-spaced { margin-top:32px; }
.admin-stat-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:13px; }
.admin-stat { background:#fff; border:1px solid var(--admin-border); border-radius:13px; padding:19px 17px; min-width:0; box-shadow:0 6px 20px rgba(34,55,90,.018); }
.admin-stat .stat-icon { display:grid; place-items:center; width:32px; height:32px; background:#eef3ff; color:#4d70ca; border-radius:9px; margin-bottom:19px; }
.admin-stat .stat-icon .admin-icon { width:16px; height:16px; }
.admin-stat span { font-size:11px; color:#697b91; display:block; font-weight:620; }
.admin-stat strong { font-size:27px; font-weight:850; letter-spacing:-.05em; display:block; margin:5px 0 1px; line-height:1.2; }
.admin-stat small { color:#99a5b3; font-size:10px; display:block; margin-top:7px; }
.admin-skeleton { color:#7e8ba1; }
.admin-action-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
.admin-action-card { display:flex; flex-direction:column; align-items:flex-start; background:#fff; border:1px solid var(--admin-border); border-radius:16px; padding:26px 28px; text-decoration:none; min-height:227px; transition:box-shadow .15s,border-color .15s,transform .15s; }
.admin-action-card:hover { border-color:#b9caf4; box-shadow:0 12px 28px rgba(46,89,160,.075); transform:translateY(-2px); }
.admin-action-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; margin-bottom:19px; }
.admin-action-icon .admin-icon { width:23px; height:23px; }
.admin-blue { background:#eaf2ff; color:#2f67d8; }
.admin-purple { background:#f2edff; color:#7354c4; }
.admin-action-card strong { color:#26384d; font-size:16px; letter-spacing:-.025em; }
.admin-action-card p { color:#8190a4; line-height:1.6; font-size:12.5px; margin:6px 0 18px; }
.admin-action-link { margin-top:auto; color:#285bd4; font-weight:770; font-size:12.5px; display:flex; align-items:center; gap:7px; }
.admin-action-link .admin-icon { width:15px; height:15px; }
.admin-inline-note { display:flex; gap:11px; align-items:flex-start; font-size:12px; line-height:1.55; background:#f0f4fa; border:1px solid #e1e9f4; padding:16px 18px; border-radius:12px; margin-top:22px; color:#728196; }
.admin-inline-note .admin-icon { color:#7891b6; }
.admin-footer { color:#a0acb9; font-size:11px; margin-top:40px; padding:19px 0 0; border-top:1px solid #e7ebf2; }
.admin-footer span { margin:0 8px; }
.admin-btn { display:inline-flex; gap:8px; justify-content:center; align-items:center; text-decoration:none; padding:9px 14px; min-height:39px; border-radius:9px; font-size:12px; font-weight:750; cursor:pointer; transition:background .15s,border-color .15s; white-space:nowrap; }
.admin-btn .admin-icon { width:15px; height:15px; }
.admin-btn-light { border:1px solid #e0e6ee; color:#53657c; background:#fff; }
.admin-btn-light:hover { background:#f5f8fe; border-color:#cbd7e6; }
.admin-btn-primary { border:1px solid #275ce1; color:#fff; background:#295fe8; }
.admin-btn-primary:hover { background:#1848c4; }
.admin-btn-danger { color:#b42318; background:#fff; border:1px solid #f4c8c4; }
.admin-btn-danger:hover { background:#fff1f0; }
.admin-btn:disabled, .admin-icon-btn:disabled { cursor:default; opacity:.5; }
.admin-panel { min-width:0; background:#fff; border:1px solid var(--admin-border); border-radius:15px; box-shadow:0 5px 20px rgba(37,59,92,.017); }
.admin-panel-heading { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:21px 23px; }
.admin-panel-heading h2 { margin:0 0 3px; font-size:16px; letter-spacing:-.02em; }
.admin-panel-heading p { margin:0; color:#95a2b3; font-size:12px; }
.admin-mini-label { color:#a1aab9; font-size:11px; }
.admin-filter-bar { margin:0; padding:0 23px 19px; display:flex; align-items:flex-end; flex-wrap:wrap; gap:10px; }
.admin-input-with-icon { position:relative; display:flex; align-items:center; min-width:210px; flex:1; }
.admin-input-with-icon .admin-icon { position:absolute; left:13px; color:#a5b1c2; width:16px; height:16px; pointer-events:none; }
.admin-input-with-icon input { width:100%; min-width:0; outline:none; border:1px solid #e0e7ef; background:#fff; padding:10px 12px 10px 37px; font-size:12.5px; height:40px; border-radius:8px; }
.admin-input-with-icon input:focus, .admin-filter select:focus, .admin-field input:focus,.admin-field textarea:focus { border-color:#6b94ea; outline:3px solid rgba(43,104,229,.1); }
.admin-filter { display:flex; flex-direction:column; gap:5px; flex:0 0 auto; }
.admin-filter span { display:none; }
.admin-filter select { appearance:auto; min-width:115px; max-width:190px; height:40px; background:#fff; border:1px solid #e0e7ef; padding:0 10px; border-radius:8px; font-size:12px; color:#506075; }
.admin-table-scroller { overflow-x:auto; }
.admin-table { border-collapse:collapse; width:100%; text-align:left; }
.admin-table th { background:#f8fafe; color:#8290a3; text-transform:uppercase; letter-spacing:.06em; font-size:10px; font-weight:820; padding:13px 17px; white-space:nowrap; border-top:1px solid #edf1f6; border-bottom:1px solid #edf1f6; }
.admin-table td { border-bottom:1px solid #f0f3f7; padding:14px 17px; font-size:12px; color:#66758a; white-space:nowrap; }
.admin-table tbody tr:hover { background:#f9fbff; }
.admin-table tbody tr:last-child td { border-bottom:0; }
.admin-table td:first-child { color:#26384d; font-weight:750; }
.admin-table .member-link { border:0; background:transparent; padding:0; text-align:left; font:inherit; font-weight:780; color:#285bd4; cursor:pointer; }
.admin-table .member-link:hover { text-decoration:underline; }
.admin-status { display:inline-block; padding:5px 9px; border-radius:7px; font-size:10px; font-weight:760; background:#eff2f6; color:#65728a; }
.admin-status.is-active,.admin-status.is-published { background:#e7f7ee; color:#188454; }
.admin-status.is-suspended { background:#fff0ef; color:#be3b30; }
.admin-status.is-draft { background:#fff5e7; color:#a87326; }
.admin-pager { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:17px 23px; border-top:1px solid #edf1f5; color:#91a0ae; font-size:11px; }
.admin-pager > div { display:flex; align-items:center; gap:11px; }
.admin-pager #pageNumber { color:#687a91; font-weight:650; }
.admin-detail-drawer { position:fixed; z-index:100; right:0; top:0; height:100dvh; width:min(430px,100vw); overflow-y:auto; padding:30px 28px; background:#fff; border-left:1px solid var(--admin-border); box-shadow:-20px 0 90px rgba(14,33,59,.22); }
.admin-detail-drawer h2 { font-size:21px; margin:0 0 21px; letter-spacing:-.025em; }
.admin-detail-drawer dl { display:grid; grid-template-columns:110px minmax(0,1fr); gap:17px 10px; margin:0 0 28px; padding:19px 0; border-top:1px solid var(--admin-border); border-bottom:1px solid var(--admin-border); }
.admin-detail-drawer dt { color:#8995a7; font-size:12px; }
.admin-detail-drawer dd { margin:0; min-width:0; font-size:12px; font-weight:650; overflow-wrap:anywhere; }
.admin-detail-drawer > button { display:inline-flex; margin:0 8px 8px 0; padding:10px 14px; border-radius:9px; font-size:12px; cursor:pointer; }
.admin-detail-drawer > .btn-secondary { border:1px solid #e9bfc1; color:#ad2a37; background:#fff4f3; }
.admin-detail-drawer > .text-button { color:#5974a1; background:#fff; border:1px solid #e5eaf1; }
.admin-heading-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.admin-course-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.admin-kpi { background:#fff; border:1px solid var(--admin-border); padding:18px 22px; border-radius:12px; display:flex; justify-content:space-between; align-items:center; gap:10px; }
.admin-kpi span { color:#7f8ca0; font-size:12px; font-weight:650; }
.admin-kpi strong { font-size:23px; font-weight:830; letter-spacing:-.035em; }
.admin-course-layout { display:grid; grid-template-columns:270px minmax(0,1fr); align-items:start; gap:16px; min-width:0; }
.admin-course-sidebar { min-height:420px; overflow:hidden; }
.admin-course-sidebar .admin-panel-heading { padding-bottom:14px; }
.admin-course-search { margin:0 16px 13px; min-width:0; }
.admin-course-list { display:flex; flex-direction:column; gap:4px; padding:0 9px 12px; max-height:690px; overflow-y:auto; }
.admin-course-item { display:flex; flex-direction:column; gap:9px; padding:13px 14px; border:1px solid transparent; border-radius:10px; width:100%; text-align:left; background:#fff; cursor:pointer; }
.admin-course-item:hover { background:#f5f8ff; }
.admin-course-item[aria-selected="true"] { background:#edf4ff; border-color:#d8e5ff; }
.admin-course-item strong { display:block; font-size:12.5px; color:#263e5b; line-height:1.3; overflow-wrap:anywhere; }
.admin-course-item small { color:#8a9aaf; font-size:10.5px; }
.admin-course-item .admin-status { align-self:flex-start; }
.admin-course-editor { min-width:0; }
.admin-empty { padding:66px 22px; min-height:420px; display:flex; align-items:center; text-align:center; flex-direction:column; justify-content:center; }
.admin-empty-icon { display:grid; place-items:center; width:56px; height:56px; border-radius:17px; background:#eef3ff; color:#4268c7; }
.admin-empty-icon .admin-icon { height:27px; width:27px; }
.admin-empty h2 { margin:20px 0 7px; font-size:18px; }
.admin-empty p { font-size:12.5px; color:#8290a4; line-height:1.65; max-width:320px; margin:0 0 21px; }
.admin-editor-block { margin-bottom:16px; padding:24px 25px; }
.admin-editor-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; flex-wrap:wrap; margin-bottom:19px; }
.admin-editor-head h2 { font-size:18px; line-height:1.25; margin:0 0 4px; letter-spacing:-.025em; }
.admin-editor-head p { font-size:12px; color:#8896a7; margin:0; }
.admin-editor-head .admin-status { align-self:center; }
.admin-editor-block .admin-field { display:flex; flex-direction:column; margin-bottom:15px; }
.admin-field { display:flex; flex-direction:column; gap:7px; color:#485c75; font-size:12px; font-weight:740; }
.admin-field input,.admin-field textarea { border:1px solid #dee6f0; background:#fff; border-radius:9px; min-height:41px; padding:11px 12px; font-size:13px; font-weight:400; resize:vertical; color:#263e59; width:100%; }
.admin-field textarea { min-height:83px; }
.admin-editor-actions { display:flex; align-items:center; flex-wrap:wrap; gap:9px; padding-top:7px; }
.admin-editor-actions .admin-btn-danger { margin-left:auto; }
.admin-upload-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.admin-upload-tile { position:relative; display:flex; align-items:flex-start; gap:11px; border:1px dashed #cbd9ed; border-radius:11px; padding:20px 17px; background:#f9fbff; cursor:pointer; min-width:0; }
.admin-upload-tile:hover { border-color:#85a9ef; background:#f3f7ff; }
.admin-upload-tile > .admin-icon { color:#4973cc; width:22px; height:22px; }
.admin-upload-tile strong { color:#36506f; display:block; font-size:12px; margin-bottom:5px; }
.admin-upload-tile small { display:block; color:#8c9aad; font-size:11px; line-height:1.5; }
.admin-upload-tile input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.admin-upload-tile:focus-within { outline:3px solid rgba(37,99,235,.22); outline-offset:2px; }
.admin-editor-note { font-size:11.5px; color:#8392a7; margin:14px 0 0; line-height:1.6; }
.admin-lesson-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.admin-lesson-heading h3 { margin:0; font-size:15px; }
.admin-lesson-heading span { color:#7f8da2; font-size:11px; }
.admin-lesson-list { display:flex; flex-direction:column; gap:8px; }
.admin-lesson-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:15px; align-items:center; padding:14px 15px; background:#fbfcff; border:1px solid #e9edf4; border-radius:10px; }
.admin-lesson-name { display:flex; align-items:flex-start; gap:11px; min-width:0; }
.admin-lesson-number { flex:0 0 auto; width:28px; height:28px; border-radius:8px; display:grid; place-items:center; color:#6082bd; background:#eaf1fd; font-size:11px; font-weight:750; }
.admin-lesson-name strong { display:block; overflow-wrap:anywhere; color:#34475e; font-size:12px; }
.admin-lesson-name small { display:block; color:#98a5b5; font-size:10px; overflow-wrap:anywhere; margin-top:3px; }
.admin-lesson-files { display:flex; gap:5px; flex-wrap:wrap; margin-top:7px; }
.admin-file-chip { font-size:10px; color:#9a6e28; background:#fff4e3; border-radius:5px; padding:3px 7px; font-weight:760; }
.admin-file-chip.is-ready { background:#e7f7ee; color:#278052; }
.admin-lesson-controls { display:flex; gap:5px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.admin-icon-btn { background:#fff; color:#5d6f8a; border:1px solid #e5ebf4; width:32px; height:32px; display:grid; place-items:center; padding:0; border-radius:8px; cursor:pointer; }
.admin-icon-btn:hover { background:#eff5ff; color:#295fe8; }
.admin-icon-btn .admin-icon { height:15px; width:15px; }
.admin-lesson-controls .admin-btn { padding:7px 9px; min-height:32px; font-size:11px; }
.admin-lesson-controls label { position:relative; overflow:hidden; }
.admin-lesson-controls label input[type=file] { position:absolute; inset:0; opacity:0; width:100%; cursor:pointer; }
.admin-lesson-controls label:focus-within { outline:2px solid #6d98ef; }
.admin-dialog { width:min(460px,calc(100% - 24px)); border:1px solid #dbe4f1; border-radius:16px; box-shadow:0 26px 80px rgba(20,38,65,.26); padding:25px; color:#24354c; }
.admin-dialog::backdrop { background:rgba(17,31,53,.38); }
.admin-modal-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:8px; }
.admin-modal-heading h2 { font-size:20px; margin:0; }
.admin-dialog p { margin:0 0 22px; color:#73839a; font-size:12.5px; line-height:1.6; }
.admin-dialog-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:24px; }
.admin-upload-progress { height:5px; border-radius:99px; margin:12px 0 0; background:#e6ecf6; overflow:hidden; }
.admin-upload-progress > span { height:100%; width:0; background:#2c62df; display:block; transition:width .15s; }
@media(max-width:1280px) { .admin-stat-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .admin-main { padding:32px 27px; } .admin-course-layout { grid-template-columns:236px minmax(0,1fr); } }
@media(max-width:900px) { .admin-layout { grid-template-columns:1fr; } .admin-sidebar { padding:12px 20px; flex-direction:row; border-bottom:1px solid var(--admin-border); border-right:none; gap:8px; overflow-x:auto; } .admin-sidebar-label,.admin-sidebar-bottom { display:none; } .admin-side-link { white-space:nowrap; padding:11px 15px; } .admin-main { padding:28px 22px; } .admin-course-layout { grid-template-columns:1fr; } .admin-course-sidebar { min-height:0; } .admin-course-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); max-height:225px; } }
@media(max-width:650px) { .admin-app .site-nav-inner { padding:0 16px; } .admin-top-actions { gap:12px; font-size:11px; } .admin-top-actions a:first-child,.admin-top-label,.admin-help-link { display:none; } .admin-main { padding:24px 14px; } .admin-page-heading { margin-bottom:23px; } .admin-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; } .admin-stat { padding:15px 14px; } .admin-stat .stat-icon { margin-bottom:12px; } .admin-stat strong { font-size:24px; } .admin-action-grid,.admin-upload-grid { grid-template-columns:1fr; } .admin-action-card { padding:22px; min-height:202px; } .admin-filter-bar { padding:0 15px 18px; } .admin-filter { flex:1 1 110px; } .admin-filter select { min-width:0; max-width:none; width:100%; } .admin-filter-bar>.admin-btn { flex:1 1 100%; } .admin-filter-bar>.admin-input-with-icon { flex:1 1 100%; } .admin-panel-heading { padding:18px 16px; } .admin-editor-block { padding:19px 16px; } .admin-heading-actions { width:100%; } .admin-section-head > div { min-width:0; } .admin-course-kpis { gap:8px; } .admin-kpi { display:flex; flex-direction:column; align-items:flex-start; padding:12px 10px; } .admin-kpi strong { font-size:20px; } .admin-kpi span { font-size:10px; } .admin-lesson-row { grid-template-columns:1fr; } .admin-lesson-controls { justify-content:flex-start; padding-left:40px; } .admin-pager { padding:13px; } }

.admin-lesson-search { width:100%; border:1px solid #e0e7ef; background:#fff; border-radius:9px; padding:10px 12px; margin:0 0 13px; font-size:12px; }
.admin-lesson-search:focus { outline:3px solid rgba(43,104,229,.1); border-color:#6b94ea; }

.admin-checkbox-row { display:flex; align-items:center; gap:8px; margin-top:14px; font-size:11.5px; color:#64748b; cursor:pointer; }
.admin-checkbox-row input { accent-color:#295fe8; width:15px; height:15px; }

.admin-drawer-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:20px; }
.admin-drawer-heading h2 { margin:0; }

/* Courses v3 — Tests / bilingual lesson management */
.admin-test-upload-choice { display:flex; align-items:flex-end; flex-wrap:wrap; gap:12px; margin:3px 0 16px; }
.admin-test-upload-choice .admin-import-test { flex:1 1 230px; max-width:460px; margin:0; }
.admin-test-upload-choice .admin-field select,
.admin-test-toolbar select,.admin-bulk-move select { background:#fff; color:#334d6c; min-height:39px; border:1px solid #dce6f1; border-radius:9px; padding:9px 10px; font:inherit; font-size:12px; }
.admin-test-upload-choice .admin-field select { width:100%; }
.admin-test-upload-choice .admin-btn { min-height:39px; }
.admin-test-toolbar { display:flex; flex-wrap:wrap; gap:9px; align-items:center; margin-bottom:12px; }
.admin-test-toolbar .admin-lesson-search { flex:2 1 240px; width:auto; min-width:130px; margin:0; }
.admin-test-toolbar select { flex:1 1 150px; }
.admin-bulk-move { display:flex; flex-wrap:wrap; align-items:center; gap:9px; padding:12px 14px; border:1px solid #e4ebf4; background:#f8faff; border-radius:10px; margin-bottom:18px; }
.admin-bulk-move span { font-size:12px; font-weight:700; color:#526580; margin-right:auto; }
.admin-bulk-move select { min-width:175px; }
.admin-test-groups { display:flex; flex-direction:column; gap:20px; }
.admin-test-group { padding:13px; background:#f8fafd; border:1px solid #e1e9f4; border-radius:13px; }
.admin-test-group-head { display:flex; align-items:center; gap:10px; justify-content:space-between; flex-wrap:wrap; padding:2px 4px 11px; border-bottom:1px solid #e6ecf4; margin-bottom:11px; }
.admin-test-group-title { display:flex; align-items:center; gap:9px; min-width:0; }
.admin-test-group-title .admin-icon { width:17px; height:17px; color:#3769d0; }
.admin-test-group-title strong { font-size:14px; color:#2a4364; }
.admin-test-count { font-size:10.5px; border-radius:20px; background:#e7effd; color:#456b9d; font-weight:750; padding:4px 8px; }
.admin-test-auto { font-size:10px; color:#8a99ab; }
.admin-test-actions { display:flex; gap:7px; }
.admin-test-actions .admin-btn { min-height:30px; padding:6px 9px; font-size:11px; }
.admin-test-group .admin-lesson-list { gap:7px; }
.admin-test-group .admin-lesson-row { background:#fff; }
.admin-lesson-pick { flex:0 0 auto; width:15px; height:15px; margin:6px 0 0; accent-color:#3768dc; cursor:pointer; }
.admin-file-chip.is-optional { background:#f0f3f8; color:#8090a3; }
.admin-compatibility-note { padding:11px 13px; background:#fff8e9; border:1px solid #eedfbf; color:#856223; border-radius:9px; font-size:11.5px; line-height:1.6; }
.admin-btn:disabled { opacity:.52; cursor:not-allowed; }
@media(max-width:650px){ .admin-test-upload-choice .admin-import-test { max-width:none; } .admin-bulk-move select { flex:1 1 100%; } .admin-test-toolbar .admin-btn { flex:1; } .admin-test-group { padding:10px; } .admin-test-group-head { align-items:flex-start; } }

/* V5: expandable Test groups and account verification retry. */
.admin-test-collapse { width:30px; height:30px; padding:0; font-size:18px; color:#3769d0; flex:none; }
.admin-test-group .admin-lesson-list[hidden] { display:none!important; }
.admin-test-group-head:has(+ .admin-lesson-list[hidden]) { border-bottom:0; padding-bottom:0; margin-bottom:0; }
.admin-auth-retry { margin:-12px 0 22px; }
.admin-publish-note { margin:14px 0; display:flex; align-items:start; flex-direction:column; gap:4px; }
.admin-test-actions .admin-test-auto { align-self:center; font-size:11px; color:#7b8ba0; }
