:root{--navy:#10162b;--ink:#202941;--muted:#7d8497;--purple:#6656e8;--purple-soft:#eeebff;--cyan:#42c8cf;--orange:#f2a34f;--green:#39b87f;--red:#df6873;--bg:#f5f6fa;--line:#e8e9f0;--card:#fff;--shadow:0 15px 40px rgba(23,29,61,.07)}
*{box-sizing:border-box}.visually-hidden{width:1px!important;height:1px!important;padding:0!important;position:absolute!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}body{margin:0;min-width:320px;color:var(--ink);background:var(--bg);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(102,86,232,.18);outline-offset:2px}.teacher-sidebar{position:fixed;z-index:30;inset:0 auto 0 0;width:180px;padding:20px 12px 16px;display:flex;flex-direction:column;color:#e9ecfa;background:radial-gradient(circle at 20% 7%,rgba(102,86,232,.18),transparent 25%),linear-gradient(180deg,#141a32,#0d1226);box-shadow:8px 0 26px rgba(9,12,27,.1)}.teacher-brand{padding:3px 9px 14px;display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}.teacher-brand>span:last-child{display:flex;flex-direction:column}.teacher-brand strong{font-size:16px;letter-spacing:.06em}.brand-orbit{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(145deg,#7667ee,#5143c7);box-shadow:0 8px 18px rgba(86,69,207,.3);font-size:17px}.workspace-tag{margin-bottom:10px;padding:9px;display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.035)}.teacher-avatar{width:33px;height:33px;flex:0 0 auto;display:grid;place-items:center;border-radius:10px;color:#fff;background:linear-gradient(145deg,#55d0ca,#6556e7);font-size:11px;font-weight:800}.workspace-tag div,.teacher-profile div{display:flex;min-width:0;flex-direction:column}.workspace-tag small{color:#737b9b;font-size:7px}.workspace-tag strong{margin-top:3px;overflow:hidden;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.teacher-nav{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.teacher-nav::-webkit-scrollbar{width:5px}.teacher-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:3px}.teacher-nav>p{margin:0 11px 8px;color:#5e6688;font-size:8px;font-weight:800;letter-spacing:.14em}.teacher-nav button{width:100%;height:40px;margin:2px 0;padding:0 12px;display:flex;align-items:center;gap:11px;border-radius:10px;color:#9ea5c1;background:transparent;text-align:left;font-size:11px;transition:.18s}.teacher-nav button:hover{color:#fff;background:rgba(255,255,255,.05)}.teacher-nav button.active{color:#fff;background:linear-gradient(100deg,#6656e8,#5547cd);box-shadow:0 8px 20px rgba(70,55,178,.24)}.teacher-nav i{width:20px;text-align:center;font-style:normal;font-size:15px}.sidebar-bottom{display:flex;flex-direction:column;gap:4px}.sidebar-bottom a,.sidebar-bottom button{padding:9px 11px;border-radius:9px;color:#999;background:transparent;text-align:left;text-decoration:none;font-size:12px}.sidebar-bottom a:hover,.sidebar-bottom button:hover{color:#fff;background:rgba(255,255,255,.05)}
.teacher-main{min-height:100vh;margin-left:180px}.teacher-topbar{position:sticky;top:0;z-index:20;height:56px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(16px)}.teacher-topbar h1{margin:4px 0 0;font-size:16px}.topbar-actions{display:flex;align-items:center;gap:11px}.today{color:var(--muted);font-size:9px}.notification{position:relative;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff}.notification em{position:absolute;width:5px;height:5px;right:8px;top:7px;border-radius:50%;background:var(--red)}.teacher-profile{padding-left:10px;display:flex;align-items:center;gap:8px;border-left:1px solid var(--line)}.teacher-profile strong{font-size:9px}.teacher-profile small{margin-top:3px;color:var(--muted);font-size:7px}.mobile-menu{display:none}.teacher-content{padding:4px 18px 12px}.teacher-view{display:none;animation:viewIn .3s ease}.teacher-view.active{display:block}@keyframes viewIn{from{opacity:0;transform:translateY(5px)}}
.hero-banner{position:relative;min-height:216px;padding:31px 34px;display:flex;overflow:hidden;border-radius:20px;color:#fff;background:linear-gradient(115deg,#5d50d8,#6a58e8 58%,#4e77d1);box-shadow:0 18px 38px rgba(78,64,191,.2)}.hero-banner>div:first-child{position:relative;z-index:2}.hero-banner>div:first-child>span{color:#d3ceff;font-size:8px;font-weight:800;letter-spacing:.18em}.hero-banner h2{margin:10px 0 7px;font-size:29px;line-height:1.3;letter-spacing:-.03em}.hero-banner p{color:#d8d5f7;font-size:10px}.hero-banner button{margin-top:11px;padding:10px 14px;border-radius:9px;color:var(--purple);background:#fff;font-size:9px;font-weight:750}.hero-visual{position:absolute;width:330px;height:240px;right:20px;top:0}.hero-orb{position:absolute;width:110px;height:110px;right:85px;top:55px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#73ded8,#45adcf);box-shadow:inset -18px -12px 30px rgba(32,79,154,.2),0 18px 30px rgba(30,32,86,.25);font-size:32px}.hero-ring{position:absolute;border:1px dashed rgba(255,255,255,.16);border-radius:50%;transform:rotate(-18deg)}.hero-ring.one{width:230px;height:100px;right:27px;top:61px}.hero-ring.two{width:190px;height:190px;right:43px;top:20px}.floating-card{position:absolute;padding:7px 9px;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#dcd9ff;background:rgba(255,255,255,.1);font:9px ui-monospace,monospace;font-style:normal}.c1{left:28px;top:55px;transform:rotate(-8deg)}.c2{right:18px;top:38px;transform:rotate(7deg)}.c3{right:18px;bottom:28px;transform:rotate(-7deg)}
.metric-row{margin-top:15px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-row article{padding:16px;display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(29,34,65,.04)}.metric-icon{width:40px;height:40px;flex:0 0 auto;display:grid;place-items:center;border-radius:11px;font-size:15px}.metric-icon.purple{color:var(--purple);background:var(--purple-soft)}.metric-icon.cyan{color:#159e9d;background:#e4f9f7}.metric-icon.orange{color:#c77922;background:#fff1df}.metric-icon.green{color:#21855d;background:#e4f7ed}.metric-row article>div{display:flex;flex-direction:column}.metric-row small{color:var(--muted);font-size:7px}.metric-row strong{margin:2px 0;font-size:20px}.metric-row em{color:#9ca1b1;font-size:7px;font-style:normal}.teacher-card{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.overview-grid{margin-top:14px;display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.class-summary,.action-center,.recent-panel{padding:19px}.card-heading{display:flex;align-items:center;justify-content:space-between}.card-heading span,.page-actions>div>span{color:var(--purple);font-size:7px;font-weight:800;letter-spacing:.17em}.card-heading h2{margin:4px 0 0;font-size:14px}.card-heading>button{color:var(--purple);background:transparent;font-size:8px;font-weight:700}.summary-list{margin-top:13px;display:flex;flex-direction:column;gap:8px}.summary-item{padding:10px;display:flex;align-items:center;gap:9px;border:1px solid #efeff4;border-radius:10px}.class-color{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:var(--purple);background:var(--purple-soft);font-size:11px;font-weight:800}.summary-item>div{display:flex;flex-direction:column}.summary-item strong{font-size:9px}.summary-item small{margin-top:3px;color:var(--muted);font-size:7px}.summary-item>span{margin-left:auto;color:var(--muted);font-size:8px}.empty-state{padding:28px;text-align:center;color:var(--muted);font-size:9px}.quick-grid{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.quick-grid button{min-height:93px;padding:12px;display:flex;align-items:flex-start;flex-direction:column;border:1px solid #ededf3;border-radius:11px;background:#fafafd;text-align:left}.quick-grid button:hover{border-color:#d6d1fb;background:#f8f6ff}.quick-grid i{width:27px;height:27px;margin-bottom:8px;display:grid;place-items:center;border-radius:8px;font-style:normal}.quick-grid i.purple{color:var(--purple);background:var(--purple-soft)}.quick-grid i.orange{color:#c77922;background:#fff0dc}.quick-grid i.cyan{color:#188f92;background:#e1f7f6}.quick-grid i.green{color:#24835e;background:#e3f7ed}.quick-grid strong{font-size:8px}.quick-grid small{margin-top:3px;color:var(--muted);font-size:6px}.recent-panel{margin-top:14px}.data-table{margin-top:12px}.table-row{min-height:42px;padding:8px 4px;display:grid;grid-template-columns:minmax(180px,1.5fr) 1fr .7fr .8fr;align-items:center;gap:10px;border-bottom:1px solid #f0f0f4;font-size:8px}.table-row.header{min-height:27px;color:#9ca1b1;font-size:7px}.table-row:last-child{border:0}.table-row strong{font-size:9px}.status-badge{display:inline-flex;width:max-content;padding:4px 7px;border-radius:8px;color:#24795a;background:#e5f7ee;font-style:normal}.status-badge.draft{color:#8a6a31;background:#fff2da}.status-badge.closed{color:#6f7484;background:#eceef3}
.page-actions{display:flex;align-items:end;justify-content:space-between;margin-bottom:16px}.course-portal-head,.course-workspace-heading{margin-bottom:16px}.page-actions h2{margin:5px 0;font-size:25px}.page-actions p{margin:0;color:var(--muted);font-size:9px}.primary-action{padding:11px 15px;border-radius:9px;color:#fff;background:var(--purple);box-shadow:0 8px 18px rgba(86,71,203,.2);font-size:9px;font-weight:750}.filter-bar,.resource-toolbar{margin:18px 0 13px;padding:9px 12px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;background:#fff}.filter-bar label,.resource-toolbar>label{flex:1;color:#9da2b1;font-size:12px}.filter-bar input,.resource-toolbar input{width:90%;padding:7px;border:0;outline:0;font-size:9px}.filter-bar>span{margin-left:auto;color:var(--muted);font-size:8px}.filter-bar select{padding:7px;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:8px}.class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.class-card{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 9px 25px rgba(27,32,65,.045);transition:.2s}.class-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.class-card-top{height:72px;padding:14px;display:flex;justify-content:space-between;color:#fff;background:linear-gradient(120deg,#6656e8,#8878f2)}.class-card:nth-child(3n+2) .class-card-top{background:linear-gradient(120deg,#24aaa9,#5fd5cd)}.class-card:nth-child(3n+3) .class-card-top{background:linear-gradient(120deg,#e88c43,#f3bb64)}.class-card-top span{font-size:8px}.class-card-top b{font-size:18px}.class-card-body{padding:14px}.class-card h3{margin:0 0 4px;font-size:12px}.class-card p{margin:0;color:var(--muted);font-size:8px}.class-stats{margin:13px 0;display:grid;grid-template-columns:1fr 1fr}.class-stats div{display:flex;flex-direction:column}.class-stats div+div{padding-left:12px;border-left:1px solid var(--line)}.class-stats strong{font-size:15px}.class-stats small{color:var(--muted);font-size:7px}.class-card-foot{display:flex;align-items:center;justify-content:space-between}.invite-code{padding:5px 7px;border-radius:7px;color:var(--purple);background:var(--purple-soft);font:8px ui-monospace,monospace}.class-card-foot button{color:var(--purple);background:transparent;font-size:8px;font-weight:700}
.assignment-list{display:flex;flex-direction:column;gap:9px}.assignment-item{padding:14px 16px;display:grid;grid-template-columns:minmax(210px,1.4fr) .8fr .8fr .8fr auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:13px;background:#fff}.assignment-name{display:flex;align-items:center;gap:10px}.assignment-icon{width:37px;height:37px;display:grid;place-items:center;border-radius:10px;color:var(--purple);background:var(--purple-soft)}.assignment-name div{display:flex;min-width:0;flex-direction:column}.assignment-name strong{overflow:hidden;font-size:10px;white-space:nowrap;text-overflow:ellipsis}.assignment-name small,.assignment-cell small{margin-top:3px;color:var(--muted);font-size:7px}.assignment-cell{display:flex;flex-direction:column;font-size:8px}.assignment-progress{height:4px;margin-top:6px;overflow:hidden;border-radius:4px;background:#ececf2}.assignment-progress i{display:block;height:100%;border-radius:inherit;background:var(--cyan)}.item-menu{width:28px;height:28px;border-radius:8px;background:#f4f4f7}.item-menu:hover{color:var(--purple);background:var(--purple-soft)}
.resource-toolbar{justify-content:space-between}.resource-tabs{display:flex;gap:4px}.resource-tabs button{padding:7px 10px;border-radius:8px;color:var(--muted);background:transparent;font-size:8px}.resource-tabs button.active{color:var(--purple);background:var(--purple-soft)}.resource-toolbar>label{max-width:240px;padding-left:8px;border-left:1px solid var(--line)}.resource-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.resource-card{padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(29,34,66,.04)}.resource-cover{height:105px;margin-bottom:12px;display:grid;place-items:center;border-radius:10px;color:var(--purple);background:linear-gradient(145deg,#f0edff,#e5e0ff);font-size:26px}.resource-card:nth-child(4n+2) .resource-cover{color:#158c8e;background:linear-gradient(145deg,#e9fbf9,#d7f3f0)}.resource-card:nth-child(4n+3) .resource-cover{color:#bc7629;background:linear-gradient(145deg,#fff5e7,#ffe5c2)}.resource-card h3{margin:0;overflow:hidden;font-size:10px;white-space:nowrap;text-overflow:ellipsis}.resource-card p{height:28px;margin:5px 0;color:var(--muted);font-size:7px;line-height:1.5;overflow:hidden}.resource-tags{display:flex;gap:5px}.resource-tags span{padding:4px 6px;border-radius:7px;color:#6e7190;background:#f1f2f6;font-size:6px}.resource-meta{margin-top:11px;padding-top:9px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted);font-size:7px}.resource-meta button{color:var(--purple);background:transparent;font-size:7px}
.modal-backdrop{position:fixed;z-index:100;inset:0;display:none;place-items:center;padding:20px;background:rgba(13,17,37,.48);backdrop-filter:blur(5px)}.modal-backdrop.show{display:grid}.modal{width:min(560px,100%);max-height:90vh;overflow:auto;border-radius:17px;background:#fff;box-shadow:0 28px 70px rgba(11,14,34,.28);animation:modalIn .25s}@keyframes modalIn{from{opacity:0;transform:translateY(12px) scale(.98)}}.modal-head{padding:18px 20px 13px;display:flex;align-items:start;justify-content:space-between;border-bottom:1px solid var(--line)}.modal-head span{color:var(--purple);font-size:7px;font-weight:800;letter-spacing:.17em}.modal-head h2{margin:4px 0 0;font-size:18px}.modal-head button{width:31px;height:31px;border-radius:9px;color:var(--muted);background:#f2f3f6;font-size:18px}.modal-form{padding:18px 20px;display:flex;flex-direction:column;gap:12px}.modal-form label{display:flex;flex-direction:column;gap:6px;color:#596175;font-size:8px;font-weight:700}.modal-form input,.modal-form select,.modal-form textarea{width:100%;padding:10px 11px;border:1px solid #dedfe8;border-radius:9px;outline:0;color:var(--ink);background:#fff;font-size:9px}.modal-form textarea{min-height:80px;resize:vertical}.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{border-color:var(--purple)}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-actions{padding-top:5px;display:flex;justify-content:flex-end;gap:8px}.modal-actions button{padding:10px 14px;border-radius:9px;background:#eff0f4;font-size:9px}.modal-actions button.primary{color:#fff;background:var(--purple)}.member-list{display:flex;flex-direction:column;gap:7px}.member-row{padding:9px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px}.member-row .teacher-avatar{width:29px;height:29px}.member-row div{display:flex;flex-direction:column}.member-row strong{font-size:8px}.member-row small{margin-top:2px;color:var(--muted);font-size:7px}.member-row button{margin-left:auto;color:var(--red);background:transparent;font-size:7px}
.teacher-login{position:fixed;z-index:200;inset:0;display:none;grid-template-columns:1fr 1.05fr;background:#fff}.teacher-login.show{display:grid}.login-art{padding:50px;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;color:#fff;background:radial-gradient(circle at 70% 25%,rgba(73,203,207,.25),transparent 25%),linear-gradient(145deg,#13182f,#292759)}.login-art .brand-orbit{width:55px;height:55px;border-radius:17px;font-size:24px}.login-art h2{margin:24px 0 8px;font-size:35px}.login-art p{color:#aeb5d4;font-size:11px}.teacher-login form{width:min(390px,calc(100% - 50px));margin:auto;display:flex;flex-direction:column}.teacher-login h1{margin:9px 0 5px;font-size:28px}.teacher-login form>p{margin:0 0 23px;color:var(--muted);font-size:10px}.teacher-login label{margin-bottom:12px;display:flex;flex-direction:column;gap:6px;color:#5f6679;font-size:8px;font-weight:700}.teacher-login input{height:41px;padding:0 11px;border:1px solid #dedfe7;border-radius:9px;outline:0;font-size:10px}.teacher-login form>button{height:42px;margin-top:4px;border-radius:9px;color:#fff;background:var(--purple);font-size:10px;font-weight:750}.teacher-login form>small{min-height:20px;margin-top:8px;color:var(--red);font-size:8px}.teacher-login form>a{text-align:center;color:var(--purple);font-size:8px;text-decoration:none}.teacher-toast{position:fixed;z-index:300;left:50%;bottom:22px;padding:10px 14px;border-radius:9px;color:#fff;background:#22283f;box-shadow:0 12px 28px rgba(16,20,41,.24);font-size:9px;opacity:0;transform:translate(-50%,15px);pointer-events:none;transition:.2s}.teacher-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.metric-row{grid-template-columns:1fr 1fr}.overview-grid{grid-template-columns:1fr}.class-grid{grid-template-columns:1fr 1fr}.resource-grid{grid-template-columns:repeat(3,1fr)}.assignment-item{grid-template-columns:minmax(190px,1.4fr) .8fr .8fr auto}.assignment-item>.assignment-cell:nth-of-type(3){display:none}}
@media(max-width:760px){.teacher-sidebar{transform:translateX(-105%);transition:.23s}.teacher-sidebar.open{transform:translateX(0)}.teacher-main{margin-left:0}.mobile-menu{width:35px;height:35px;display:block;border-radius:9px;background:#f1f0fa}.teacher-topbar{padding:0 15px}.teacher-topbar>div:first-of-type{margin-right:auto;margin-left:10px}.today,.teacher-profile div{display:none}.teacher-content{padding:4px 12px 12px}.hero-banner{padding:25px 20px}.hero-visual{opacity:.5;right:-90px}.hero-banner h2{font-size:24px}.class-grid{grid-template-columns:1fr}.resource-grid{grid-template-columns:1fr 1fr}.page-actions{align-items:flex-start;gap:15px;flex-direction:column}.resource-toolbar{align-items:flex-start;flex-direction:column}.resource-tabs{max-width:100%;overflow:auto}.resource-toolbar>label{max-width:100%;width:100%;border:0}.assignment-item{grid-template-columns:1fr auto}.assignment-item>.assignment-cell{display:none}.teacher-login{grid-template-columns:1fr}.login-art{display:none}.form-two{grid-template-columns:1fr}}
@media(max-width:480px){.metric-row{grid-template-columns:1fr 1fr;gap:7px}.metric-row article{padding:11px;align-items:flex-start;flex-direction:column}.resource-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.table-row{grid-template-columns:1fr .6fr}.table-row>*:nth-child(2),.table-row>*:nth-child(4){display:none}}
.content-actions{display:flex;gap:8px}.primary-action.secondary{color:var(--purple);background:var(--purple-soft);box-shadow:none}.content-cms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.content-cms-card{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(29,34,66,.04)}.content-cms-card>span{display:inline-flex;padding:5px 7px;border-radius:8px;color:var(--purple);background:var(--purple-soft);font-size:7px;font-weight:750}.content-cms-card h3{margin:10px 0 5px;font-size:11px}.content-cms-card p{height:30px;margin:0;color:var(--muted);font-size:8px;line-height:1.6;overflow:hidden}.content-cms-meta{margin-top:13px;padding-top:10px;display:flex;align-items:center;gap:6px;border-top:1px solid var(--line)}.content-cms-meta small{margin-right:auto;color:var(--muted);font-size:7px}.content-cms-meta button{padding:5px 7px;border-radius:7px;color:var(--purple);background:var(--purple-soft);font-size:7px}.content-cms-meta button:disabled{color:#999;background:#f0f1f4;cursor:not-allowed}@media(max-width:1050px){.content-cms-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.content-cms-grid{grid-template-columns:1fr}.content-actions{flex-direction:column}}

/* Question bank workspace */
.question-bank-page{min-height:calc(100vh - 145px);padding:22px;border:1px solid #edf0f5;border-radius:17px;background:#fff;box-shadow:0 12px 34px rgba(28,39,64,.05)}
.question-bank-actions{display:flex;align-items:center;justify-content:space-between;gap:18px}.question-bank-primary-actions,.question-bank-tools{display:flex;align-items:center;gap:8px}.question-bank-actions button{height:34px;padding:0 13px;border:1px solid #dbe4f2;border-radius:9px;color:#4e7fd0;background:#fff;font-size:8px;font-weight:700;white-space:nowrap}.question-bank-actions .question-create-button{border:0;color:#fff;background:linear-gradient(100deg,#5397f6,#7667ef);box-shadow:0 7px 17px rgba(83,132,226,.25)}.question-create-button b{font-size:14px}.question-bank-primary-actions>span{width:1px;height:25px;margin:0 5px;background:#edf0f5}.question-bank-tools button{padding:0 7px;border:0;color:#7088ab;background:transparent}.question-bank-tools .ai-question-button{padding:0 12px;border:1px solid #dcecf5;border-radius:18px;color:#344153;background:#f4fbff}.ai-question-button i{margin-right:4px;color:#7066ee;font-style:normal}.question-search{width:185px;height:34px;padding:0 10px;display:flex;align-items:center;border:1px solid #dfe5ed;border-radius:18px;color:#a8b2c1;background:#fff}.question-search input{width:100%;padding:0 6px;border:0;outline:0;color:#465064;font-size:8px}
.question-bank-filters{margin-top:28px;display:grid;grid-template-columns:1.05fr 1.05fr 1.6fr 1.6fr 1fr;gap:12px}.question-bank-filters label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px;color:#354054;font-size:8px;font-weight:700}.question-bank-filters select{width:100%;height:35px;padding:0 10px;border:1px solid #dfe5ed;border-radius:6px;color:#596477;background:#fff;font-size:8px}.question-bank-summary{margin-top:24px;padding-bottom:9px;display:flex;align-items:center;color:#8791a2;font-size:8px}.question-bank-summary label{margin-left:auto;margin-right:17px}.question-bank-summary input{vertical-align:middle;accent-color:#5e8ff0}.question-bank-summary strong{font-weight:500}
.question-table{min-width:760px;border-top:1px solid #edf0f5}.question-table-row,.question-folder-row{min-height:45px;display:grid;grid-template-columns:30px 42px minmax(260px,1fr) 68px 65px 70px 80px 92px 60px;align-items:center;gap:6px;border-bottom:1px solid #edf0f5;color:#566174;font-size:8px}.question-table-head{min-height:36px;color:#8b96a9;background:#f5f7fa}.question-table-row>span:first-child,.question-folder-row>span:first-child{text-align:center}.question-table input[type=checkbox]{width:12px;height:12px;accent-color:#5d8fea}.question-folder-row{background:#fbfcfe}.question-folder-row>span:nth-child(3){display:flex;align-items:center;gap:8px}.question-folder-row i{color:#65b9ee;font-size:20px;font-style:normal}.question-folder-row b{color:#354052;font-size:9px}.question-folder-row em{padding:3px 6px;border:1px solid #dce1e8;border-radius:5px;color:#8c96a8;font-style:normal}.question-folder-row>button,.question-item-row>span:last-child button{color:#4c8ceb;background:transparent;font-size:8px}.question-item-row>span:nth-child(3){padding:9px 9px 9px 0}.question-item-row>span:nth-child(3)>b{display:block;color:#303a4d;font-size:8px;line-height:1.6}.question-item-row.inactive{opacity:.58}.question-item-row button:disabled{color:#adb4c0;cursor:not-allowed}.difficulty,.question-status{display:inline-flex;padding:4px 7px;border-radius:8px;color:#6b75a3;background:#eef1fa;font-style:normal}.difficulty-1,.difficulty-2{color:#288467;background:#e7f8f0}.difficulty-4,.difficulty-5{color:#b45e56;background:#fff0ee}.question-status{color:#8e6d31;background:#fff5df}.question-status.active{color:#287c5c;background:#e7f7ef}.question-row-detail{margin-top:7px;padding:8px;display:grid;grid-template-columns:1fr 1fr;gap:5px;border-radius:7px;background:#f7f8fb;color:#747d8e;font-weight:500}.question-row-detail span.correct{color:#25845f}.question-row-detail p{grid-column:1/-1;margin:2px 0 0}.question-empty{padding:60px;display:flex;align-items:center;flex-direction:column;color:#9aa3b2}.question-empty i{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#f0f2f6;font-size:18px;font-style:normal}.question-empty strong{margin-top:12px;font-size:10px}.question-empty span{margin-top:5px;font-size:8px}

/* Full question editor */
.question-editor-open .teacher-sidebar,.question-editor-open .teacher-topbar{display:none}.question-editor-open .teacher-main{margin-left:0}.question-editor-open .teacher-content{width:100%;padding:0}.question-editor-open .question-editor-page{min-height:100vh;margin:0}
.question-editor-page{min-height:calc(100vh - 124px);margin:-25px calc((1230px - 100vw + 238px + 52px)/2) -45px;background:#f4f6f9}.question-editor-top{height:58px;padding-left:18px;display:grid;grid-template-columns:160px 1fr 240px;align-items:center;color:#dfe8f3;background:#354c69}.question-editor-top>button{color:#dfe8f3;background:transparent;text-align:left;font-size:10px}.question-editor-top>strong{text-align:center;font-size:12px;font-weight:500}.question-editor-top>div{height:58px;display:grid;grid-template-columns:1fr 1.25fr}.question-editor-top>div button{border-left:1px solid rgba(15,26,43,.25);color:#edf4fc;background:#354c69;font-size:10px}.question-editor-top>div .continue{background:#3d88ed}.question-editor-top>div button:disabled{opacity:.55}.question-editor-typebar{margin:18px auto 0;width:min(1110px,calc(100% - 36px));height:64px;padding:0 28px;display:flex;align-items:center;gap:16px;border-radius:10px;background:#fff;box-shadow:0 6px 17px rgba(34,47,69,.04)}.question-editor-typebar>span{margin-right:4px;color:#8c96a5;font-size:9px}.question-editor-typebar button{height:34px;padding:0 16px;border:1px solid #dce3ee;border-radius:18px;color:#5b6474;background:#fff;font-size:9px}.question-editor-typebar button.active{border:0;color:#fff;background:linear-gradient(100deg,#5096f5,#7368ef);box-shadow:0 5px 13px rgba(82,133,231,.22)}.question-more-types{position:relative}.question-more-types>div{position:absolute;z-index:5;top:39px;left:0;width:118px;padding:6px;display:none;border:1px solid #e3e7ed;border-radius:9px;background:#fff;box-shadow:0 12px 25px rgba(39,51,74,.15)}.question-more-types>div.show{display:grid}.question-more-types>div button{border:0;border-radius:5px;text-align:left}.question-more-types>div button:hover{color:#4a83d9;background:#f1f6fc}
.question-editor-card{width:min(1110px,calc(100% - 36px));margin:18px auto;padding:28px 38px 38px;border-radius:10px;background:#fff;box-shadow:0 7px 20px rgba(35,48,70,.04)}.question-editor-heading{display:flex;justify-content:space-between;color:#646e7e;font-size:10px}.question-editor-heading small{color:#a3aab6;font-size:7px}.question-editor-card b{color:#ec6874}.question-stem-label{margin-top:18px;display:block;color:#606a7b;font-size:8px}.question-stem-label>span{display:block;margin-bottom:8px}.question-rich-editor{overflow:hidden;border:1px solid #d8e4f1;border-radius:5px}.question-rich-toolbar{min-height:38px;padding:0 9px;display:flex;align-items:center;gap:4px;border-bottom:1px solid #d8e4f1;color:#687282}.question-rich-toolbar button{width:27px;height:27px;padding:0;border-radius:5px;background:#fff}.question-rich-toolbar button:hover{background:#eef4fa}.question-rich-toolbar select{height:27px;border:0;color:#687282;background:#fff;font-size:8px}.question-rich-toolbar>span{padding:0 6px;font:12px Georgia,serif}.question-rich-content{min-height:120px;padding:13px;outline:0;color:#333e50;font-size:10px;line-height:1.7}.question-rich-content:empty:before{color:#b5bdc8;content:attr(data-placeholder)}
.question-options{margin-top:18px;display:grid;gap:10px}.question-option-row{display:grid;grid-template-columns:18px 28px 1fr 30px;align-items:center;gap:8px}.question-option-row>input[type=radio]{accent-color:#4c8fea}.question-option-row>span{width:28px;height:28px;display:grid;place-items:center;border:1px solid #d9e4f0;border-radius:50%;color:#657083;font-size:9px}.question-option-text{height:36px;padding:0 12px;border:1px solid #d9e4f0;border-radius:5px;outline:0;color:#3e485a;font-size:9px}.question-option-text:focus{border-color:#5c94e8}.question-option-row>button{width:28px;height:28px;border-radius:7px;color:#a3acb9;background:#f3f5f8}.question-add-option{margin:12px 0 0 54px;padding:7px 10px;border-radius:7px;color:#4a8be8;background:#edf5ff;font-size:8px}.question-editor-fields{margin-top:23px;padding-top:20px;display:grid;grid-template-columns:1.4fr .6fr;gap:15px;border-top:1px solid #eef0f4}.question-editor-fields label{display:flex;flex-direction:column;gap:7px;color:#626c7c;font-size:8px}.question-editor-fields .full{grid-column:1/-1}.question-editor-fields input,.question-editor-fields select,.question-editor-fields textarea{height:37px;padding:0 11px;border:1px solid #dbe3ed;border-radius:6px;outline:0;color:#424c5d;background:#fff;font-size:9px}.question-editor-fields textarea{height:70px;padding-top:10px;resize:vertical}.question-form-error{min-height:18px;margin:12px 0 0;color:#d74d5b;font-size:8px}
@media(max-width:1180px){.question-bank-actions{align-items:flex-start;flex-direction:column}.question-bank-tools{width:100%;overflow:auto}.question-bank-filters{grid-template-columns:repeat(3,1fr)}.question-editor-page{margin:-25px -26px -45px}.question-editor-typebar{overflow-x:auto}.question-editor-typebar button{white-space:nowrap}}
@media(max-width:760px){.question-bank-page{padding:13px;overflow:auto}.question-bank-primary-actions{width:max-content}.question-bank-filters{grid-template-columns:1fr}.question-bank-summary{min-width:760px}.question-editor-page{margin:-25px -11px -45px}.question-editor-top{grid-template-columns:90px 1fr 180px}.question-editor-top>button span{display:none}.question-editor-typebar{padding:0 14px;gap:7px}.question-editor-card{padding:20px 14px}.question-rich-toolbar{overflow:auto}.question-editor-fields{grid-template-columns:1fr}.question-editor-fields .full{grid-column:auto}}

/* Readable type scale for the question bank and question editor */
.teacher-main:has(#teacher-contents.active) .teacher-topbar>div:first-of-type>span{font-size:14px;line-height:1.6}.teacher-main:has(#teacher-contents.active) .teacher-topbar h1{font-size:28px;line-height:1.35}.teacher-main:has(#teacher-contents.active) .today,.teacher-main:has(#teacher-contents.active) .teacher-profile strong{font-size:16px;line-height:1.6}.teacher-main:has(#teacher-contents.active) .teacher-profile small{font-size:14px;line-height:1.6}
.question-bank-page,.question-editor-page{font-size:16px;line-height:1.6}.question-bank-page button,.question-bank-page input,.question-bank-page select,.question-editor-page button,.question-editor-page input,.question-editor-page select,.question-editor-page textarea{font-size:16px;line-height:1.6}.question-bank-page input::placeholder,.question-editor-page input::placeholder,.question-editor-page textarea::placeholder{font-size:14px}.question-bank-page{padding:32px}.question-bank-actions button{height:48px;padding:0 18px;font-size:16px}.question-create-button b{font-size:20px}.question-bank-primary-actions>span{height:34px}.question-bank-tools{gap:10px}.question-bank-tools button{padding:0 10px;font-size:16px}.question-bank-tools .ai-question-button{padding:0 18px}.question-search{width:260px;height:48px;padding:0 14px}.question-search input{font-size:16px}.question-bank-filters{margin-top:34px;gap:18px}.question-bank-filters label{gap:12px;font-size:16px;line-height:1.6}.question-bank-filters select{height:48px;padding:0 14px;font-size:16px}.question-bank-summary{margin-top:30px;padding-bottom:14px;font-size:16px;line-height:1.6}.question-bank-summary label{margin-right:24px}.question-bank-summary input,.question-table input[type=checkbox]{width:18px;height:18px}
.question-table{min-width:1200px}.question-table-row,.question-folder-row{min-height:64px;grid-template-columns:44px 56px minmax(360px,1fr) 90px 86px 96px 110px 130px 76px;gap:10px;font-size:16px;line-height:1.6}.question-table-head{min-height:54px;font-size:16px}.question-folder-row>span:nth-child(3){display:block}.question-folder-toggle{width:100%;padding:8px 0;display:flex;align-items:center;gap:12px;color:inherit;background:transparent;text-align:left}.question-folder-toggle i{width:34px;height:34px;display:block;flex:0 0 auto;background:url("24gf-folderMinus.svg") center/contain no-repeat;font-size:0;font-style:normal;transition:transform .2s}.question-folder-row.collapsed .question-folder-toggle i{transform:scale(.94)}.question-folder-toggle b{color:#29364a;font-size:18px;line-height:1.6}.question-folder-toggle em{padding:3px 8px;border:1px solid #dce1e8;border-radius:6px;color:#7f8a9b;font-size:14px;line-height:1.6;font-style:normal;font-weight:500}.question-folder-action,.question-item-row>span:last-child button{font-size:16px;line-height:1.6}.question-item-row>span:nth-child(3){padding:14px 12px 14px 0}.question-item-row>span:nth-child(3)>b{font-size:16px;line-height:1.6}.difficulty,.question-status{padding:5px 10px;font-size:14px;line-height:1.6}.question-row-detail{margin-top:10px;padding:12px;gap:8px;font-size:16px;line-height:1.6}.question-empty strong{font-size:18px;line-height:1.6}.question-empty span{font-size:14px;line-height:1.6}
.question-editor-top{height:72px;grid-template-columns:190px 1fr 310px}.question-editor-top>button{font-size:16px;line-height:1.6}.question-editor-top>strong{font-size:26px;line-height:1.35}.question-editor-top>div{height:72px}.question-editor-top>div button{font-size:16px}.question-editor-typebar{height:82px;gap:14px}.question-editor-typebar>span{font-size:16px;line-height:1.6}.question-editor-typebar button{height:44px;padding:0 20px;font-size:16px;line-height:1.6}.question-more-types>div{top:50px;width:150px}.question-editor-card{padding:34px 42px 42px}.question-editor-heading{font-size:20px;line-height:1.6}.question-editor-heading small{font-size:14px;line-height:1.6}.question-stem-label{font-size:16px;line-height:1.6}.question-stem-label>span{margin-bottom:10px}.question-rich-toolbar{min-height:50px}.question-rich-toolbar button{width:38px;height:38px;font-size:16px}.question-rich-toolbar select{height:38px;font-size:14px}.question-rich-toolbar>span{font-size:18px}.question-rich-content{min-height:180px;padding:16px;font-size:16px;line-height:1.6}.question-options{gap:14px}.question-option-row{grid-template-columns:22px 40px 1fr 40px;gap:10px}.question-option-row>span{width:38px;height:38px;font-size:16px}.question-option-text{height:48px;padding:0 14px;font-size:16px}.question-option-row>button{width:38px;height:38px;font-size:18px}.question-add-option{margin:14px 0 0 70px;padding:9px 14px;font-size:16px}.question-editor-fields{gap:20px}.question-editor-fields label{font-size:16px;line-height:1.6}.question-editor-fields input,.question-editor-fields select{height:48px;font-size:16px}.question-editor-fields textarea{height:96px;padding-top:12px;font-size:16px;line-height:1.6}.question-form-error{font-size:14px;line-height:1.6}
@media(max-width:1180px){.question-bank-page{overflow-x:auto}.question-bank-tools{padding-bottom:4px}.question-bank-filters{min-width:900px}.question-editor-top{grid-template-columns:140px 1fr 270px}}
.question-bank-breadcrumb{display:flex;align-items:center;gap:9px}.question-bank-breadcrumb button{height:auto;padding:0;border:0;color:#3f8fec;background:transparent;font-size:16px;line-height:1.6}.question-bank-breadcrumb i{color:#aab3c0;font-size:20px;font-style:normal}.question-bank-breadcrumb strong{color:#4d596b;font-size:16px;font-weight:600;line-height:1.6}
.question-direct-answer{display:flex;flex-direction:column;gap:10px;color:#626c7c;font-size:16px;line-height:1.6}.question-direct-answer textarea{min-height:64px;padding:14px;border:1px solid #d9e4f0;border-radius:6px;outline:0;color:#3e485a;background:#fff;font-size:16px;line-height:1.6;resize:vertical}.question-direct-answer textarea:focus{border-color:#5c94e8}.question-direct-answer textarea::placeholder{color:#b5bdc8;font-size:14px}.question-blank-answers{display:flex;flex-direction:column;gap:14px}.question-blank-row{display:grid;grid-template-columns:76px minmax(0,1fr) 40px;align-items:center;gap:14px;color:#596476;font-size:16px;line-height:1.6}.question-blank-row input{height:48px;padding:0 14px;border:1px solid #d9e4f0;border-radius:6px;outline:0;color:#3e485a;font-size:16px}.question-blank-row input:focus{border-color:#5c94e8}.question-blank-row button{width:38px;height:38px;border-radius:7px;color:#a3acb9;background:#f3f5f8;font-size:18px}.question-add-blank{width:max-content;margin-top:2px;padding:8px 0;color:#3f8fec;background:transparent;font-size:16px;line-height:1.6}.question-subjective{margin-top:20px;padding-top:20px;display:flex;align-items:flex-start;gap:14px;border-top:1px solid #edf0f4;color:#3e4858}.question-subjective>input{width:20px;height:20px;margin-top:3px;accent-color:#4d8ff0}.question-subjective>span{display:flex;flex-direction:column}.question-subjective b{color:#3e4858;font-size:16px;line-height:1.6}.question-subjective small{margin-top:3px;color:#929cab;font-size:14px;line-height:1.6}.question-blank-tips{margin-top:20px;color:#929cab;font-size:14px;line-height:1.8}.question-blank-tips p{margin:5px 0}
.question-import-modal{width:min(1000px,calc(100vw - 40px));max-height:94vh}.question-import-modal .modal-head{padding:24px 30px 18px}.question-import-modal .modal-head>div>span{font-size:14px;line-height:1.6}.question-import-modal .modal-head h2{font-size:28px;line-height:1.35}.question-import-modal .modal-head>button{width:42px;height:42px;font-size:24px}.question-import-dialog{padding:24px 30px 30px;font-size:16px;line-height:1.6}.question-import-meta{display:flex;align-items:center;justify-content:space-between;gap:20px}.question-import-meta>a{display:flex;align-items:center;gap:10px;color:#4a8de9;font-size:16px;line-height:1.6;text-decoration:none}.question-import-meta>a:first-letter{font-size:24px}.question-import-meta label{display:flex;align-items:center;gap:9px;color:#3f495a;font-size:16px}.question-import-meta input{width:20px;height:20px;accent-color:#4e93f2}.question-import-meta i{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#bdc8d8;font-size:14px;font-style:normal}.question-import-drop{min-height:390px;margin-top:22px;padding:28px;display:grid;place-items:center;border:2px dashed #8eb8ed;border-radius:10px;background:#fbfdff;transition:.2s}.question-import-drop.dragging{border-color:#5b6ff0;background:#f2f5ff;box-shadow:inset 0 0 0 3px rgba(91,111,240,.08)}.question-import-empty{display:flex;align-items:center;flex-direction:column;color:#9aa5b5}.question-import-empty>span{font-size:20px;line-height:1.6}.question-import-empty>em{margin:8px 0 20px;font-size:16px;font-style:normal}.question-import-empty>button{padding:13px 24px;border-radius:24px;color:#fff;background:linear-gradient(100deg,#5299f5,#6c64ef);box-shadow:0 8px 20px rgba(76,118,232,.25);font-size:16px}.question-import-empty>small{margin-top:16px;color:#9aa5b5;font-size:14px;line-height:1.6}.question-import-selected{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px}.question-import-selected>i{width:54px;height:54px;display:grid;grid-row:1/3;place-items:center;border-radius:13px;color:#398563;background:#e8f7ef;font-size:25px;font-style:normal}.question-import-selected strong{font-size:18px;line-height:1.6}.question-import-selected span{color:#8994a5;font-size:14px}.question-import-selected button{grid-column:3;grid-row:1/3;padding:9px 14px;border-radius:8px;color:#4b8ce8;background:#edf5ff;font-size:16px}.question-import-result{margin-top:16px}.question-import-success,.question-import-failure{padding:12px 15px;border-radius:8px;font-size:16px;line-height:1.6}.question-import-success{color:#267b59;background:#e8f7ef}.question-import-failure{color:#b84d58;background:#fff0f2}.question-import-errors{max-height:180px;margin-top:10px;padding:12px 15px;overflow:auto;border-radius:8px;color:#7b5560;background:#fff7f8}.question-import-errors strong{font-size:16px}.question-import-errors p{margin:5px 0;font-size:14px;line-height:1.6}.question-import-actions{margin-top:20px;display:flex;justify-content:flex-end;gap:10px}.question-import-actions button{padding:11px 20px;border-radius:9px;background:#eff1f5;font-size:16px}.question-import-actions button.primary{color:#fff;background:#578ff0}.question-import-actions button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:700px){.question-import-modal{width:calc(100vw - 20px)}.question-import-dialog{padding:18px}.question-import-meta{align-items:flex-start;flex-direction:column}.question-import-drop{min-height:300px}.question-import-selected{grid-template-columns:46px 1fr}.question-import-selected button{grid-column:1/-1;grid-row:auto}.question-import-actions button{flex:1}}
.question-knowledge-picker{grid-column:1/-1;margin:0;padding:14px;border:1px solid #dbe3ed;border-radius:8px}.question-knowledge-picker legend{padding:0 6px;color:#626c7c;font-size:16px}.question-knowledge-picker>p{margin:0 0 10px;color:#8b95a5;font-size:14px;line-height:1.6}.question-knowledge-picker .question-knowledge-picker-head{min-height:48px;padding:7px 12px;display:flex;align-items:center;gap:12px;border:1px solid #dbe3ed;border-radius:7px;background:#fff}.question-knowledge-picker-head>span{min-width:0;flex:1;color:#8a94a4;font-size:16px;line-height:1.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.question-knowledge-picker-head>span.selected{color:#397bd5}.question-knowledge-picker-head>button{padding:6px 11px;border-radius:7px;color:#4387e3;background:#edf5ff;font-size:16px}.question-knowledge-picker #questionKnowledgeChoices{margin-top:8px;padding:12px;display:flex;flex-wrap:wrap;gap:9px;border:1px solid #e3e8f0;border-radius:7px;background:#fafcff}.question-knowledge-picker #questionKnowledgeChoices[hidden]{display:none}.question-knowledge-picker label{display:block}.question-knowledge-picker label input{position:absolute;opacity:0;pointer-events:none}.question-knowledge-picker label span{padding:7px 12px;display:block;border:1px solid #dbe3ed;border-radius:16px;color:#687486;background:#fff;font-size:14px;line-height:1.6;cursor:pointer}.question-knowledge-picker label:has(input:checked) span{border-color:#568fe9;color:#397bd5;background:#edf5ff}.question-knowledge-picker>button{margin-top:12px;padding:6px 10px;border-radius:7px;color:#4387e3;background:#edf5ff;font-size:16px}.question-no-knowledge{color:#929cab;font-size:14px;line-height:1.6}.question-knowledge-manager{padding:20px;font-size:16px;line-height:1.6}.question-knowledge-manager>form{display:grid;grid-template-columns:1fr auto;gap:10px}.question-knowledge-manager>form input{height:46px;padding:0 13px;border:1px solid #dbe3ed;border-radius:8px;font-size:16px}.question-knowledge-manager>form button{padding:0 16px;border-radius:8px;color:#fff;background:#578ff0;font-size:16px}.question-knowledge-manager>p{color:#8b95a5;font-size:14px}.question-knowledge-list{max-height:330px;overflow:auto;border:1px solid #e4e8ef;border-radius:9px}.question-knowledge-list>div{min-height:50px;padding:8px 12px;display:flex;align-items:center;border-bottom:1px solid #edf0f4}.question-knowledge-list>div:last-child{border-bottom:0}.question-knowledge-list span{font-size:16px}.question-knowledge-list em{margin-left:8px;padding:2px 6px;border-radius:6px;color:#71809a;background:#edf0f5;font-size:14px;font-style:normal}.question-knowledge-list button{margin-left:auto;color:#d05b67;background:transparent;font-size:16px}

/* Keep the question-bank controls and operation column inside the visible card. */
.question-bank-actions{align-items:stretch;flex-direction:column}.question-bank-primary-actions{flex-wrap:wrap}.question-bank-tools{width:100%;display:flex;flex-wrap:wrap}.question-bank-tools .question-search{min-width:210px;margin-left:auto;flex:1 1 240px;max-width:320px}.question-table{width:100%;min-width:0}.question-table-row,.question-folder-row{width:100%;grid-template-columns:44px 44px minmax(220px,2fr) minmax(70px,.6fr) minmax(68px,.55fr) minmax(76px,.65fr) minmax(88px,.75fr) minmax(108px,.9fr) minmax(68px,.55fr);gap:8px}
@media(max-width:1050px){.question-table{overflow-x:auto}.question-table-row,.question-folder-row{min-width:980px}}

/* Hierarchical knowledge-point tree */
.question-knowledge-picker #questionKnowledgeChoices{max-height:360px;padding:10px;display:block;overflow:auto}.knowledge-tree-root,.knowledge-tree-root ul{margin:0;padding:0;list-style:none}.knowledge-tree-root>ul,.knowledge-tree-root li>ul{margin-left:19px;padding-left:20px;border-left:1px solid #d5dde8}.knowledge-tree-row{min-height:46px;padding:5px 8px;display:flex;align-items:center;gap:9px;border-radius:7px;color:#3e4858}.knowledge-tree-row:hover{background:#f4f7fa}.knowledge-tree-toggle,.knowledge-tree-toggle-placeholder{width:26px;height:32px;display:grid;flex:0 0 26px;place-items:center}.knowledge-tree-toggle{padding:0;color:#8a929d;background:transparent;font-size:25px;line-height:1}.knowledge-tree-toggle-placeholder{display:block}.knowledge-tree-icon{width:24px;height:24px;display:block;flex:0 0 24px;color:#2683f5}.knowledge-tree-icon svg{width:24px;height:24px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.knowledge-tree-row>strong{min-width:0;flex:1;color:#354052;font-size:16px;line-height:1.6}.knowledge-tree-root>.knowledge-tree-row>strong{font-size:18px}.knowledge-tree-row>em{padding:2px 7px;border-radius:6px;color:#71809a;background:#edf0f5;font-size:14px;line-height:1.6;font-style:normal}.question-knowledge-picker .knowledge-tree-row label{min-width:0;display:flex;align-items:center;flex:1;flex-direction:row;gap:9px}.question-knowledge-picker .knowledge-tree-row label input{position:static;width:18px;height:18px;flex:0 0 18px;opacity:1;pointer-events:auto;accent-color:#4f8fec}.question-knowledge-picker .knowledge-tree-row label span{min-width:0;padding:0;border:0;border-radius:0;color:#3e4858;background:transparent;font-size:16px;line-height:1.6}.question-knowledge-picker .knowledge-tree-row:has(input:checked){background:#edf5ff}.question-knowledge-picker .knowledge-tree-row label:has(input:checked) span{border:0;color:#397bd5;background:transparent}.question-knowledge-manager>form{grid-template-columns:1fr 1fr auto;align-items:end}.question-knowledge-manager>form label{display:flex;flex-direction:column;gap:6px;color:#626c7c;font-size:16px;line-height:1.6}.question-knowledge-manager>form select,.question-knowledge-manager>form input{width:100%;height:46px;padding:0 13px;border:1px solid #dbe3ed;border-radius:8px;background:#fff;font-size:16px}.question-knowledge-manager>form>button{height:46px}.question-knowledge-list{max-height:430px;padding:10px;overflow:auto}.question-knowledge-list>.knowledge-tree-root{display:block;min-height:0;padding:0;border:0}.question-knowledge-list .knowledge-tree-row{border:0}.question-knowledge-list .knowledge-tree-row>strong{font-size:16px}.question-knowledge-list .knowledge-tree-root>.knowledge-tree-row>strong{font-size:18px}.question-knowledge-list .knowledge-tree-delete{margin-left:auto;padding:5px 8px;color:#d05b67;background:transparent;font-size:16px}.question-knowledge-list .empty-state{font-size:16px;line-height:1.6}@media(max-width:720px){.question-knowledge-manager>form{grid-template-columns:1fr}.question-knowledge-manager>form>button{width:100%}.knowledge-tree-root>ul,.knowledge-tree-root li>ul{margin-left:12px;padding-left:12px}}
.resource-class-checks{padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:7px;border:1px solid #dedfe8;border-radius:9px;background:#fafafd}.resource-class-checks label{display:flex;align-items:center;flex-direction:row;gap:6px;font-weight:600}.resource-class-checks input{width:auto;margin:0}.resource-class-checks small{grid-column:1/-1;color:var(--muted)}.resource-meta{flex-wrap:wrap;gap:6px;justify-content:flex-start}.resource-meta>span{margin-right:auto}.modal-actions button:disabled{opacity:.55;cursor:wait}@media(max-width:480px){.resource-class-checks{grid-template-columns:1fr}}

/* course form validation and cover upload */
.form-required-note{margin-bottom:-3px;color:var(--muted);font-size:7px;text-align:right}.form-required-note span,.field-label b{color:#e24e5f}.field-label{display:flex;align-items:center;gap:3px}.field-label b{font-size:10px}.field-label em{margin-left:3px;color:#a2a6b3;font-size:7px;font-style:normal;font-weight:500}.modal-form .field-error{min-height:0;color:#d94355;font-size:7px;font-weight:600}.modal-form .field-error:not(:empty){min-height:10px}.modal-form input.invalid,.modal-form select.invalid,.modal-form textarea.invalid{border-color:#e45d6c;background:#fff8f9;box-shadow:0 0 0 2px rgba(228,93,108,.08)}.form-submit-error{min-height:0;padding:0;color:#cc3e50;font-size:8px;font-weight:650}.form-submit-error:not(:empty){padding:9px 10px;border-radius:8px;background:#fff0f2}.course-cover-picker{padding:9px;display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:12px;border:1px dashed #d7d9e3;border-radius:11px;background:#fafafd}.course-cover-preview{width:112px;aspect-ratio:16/9;display:grid;place-items:center;border-radius:8px;color:var(--purple);background:#eeebff center/cover no-repeat;font-size:20px}.course-cover-picker input{padding:7px;background:#fff}.course-cover-picker small{display:block;margin-top:6px;color:var(--muted);font-size:7px;font-weight:500}@media(max-width:480px){.course-cover-picker{grid-template-columns:1fr}.course-cover-preview{width:100%}}
#viewTitleWrap{display:flex;align-items:center;gap:12px}.topbar-breadcrumb{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.topbar-breadcrumb a{color:var(--muted);text-decoration:none;font-weight:600}.topbar-breadcrumb a:hover{color:var(--purple)}.topbar-breadcrumb i{font-style:normal;color:#c2c7d4;font-size:12px}.topbar-breadcrumb[hidden]{display:none}.topbar-title-edit{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:8px;color:var(--purple);background:transparent;font-size:10px;font-weight:700;white-space:nowrap}.topbar-title-edit:hover{background:var(--purple-soft)}.topbar-title-edit[hidden]{display:none}.switch-student{display:inline-flex;align-items:center;padding:7px 11px;border-radius:9px;color:var(--purple);background:transparent;font-size:10px;font-weight:700;text-decoration:none;white-space:nowrap}.switch-student:hover{background:var(--purple-soft)}.topbar-back{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:9px;color:var(--purple);background:transparent;font-size:10px;font-weight:700}.topbar-back:hover{background:var(--purple-soft)}.topbar-back i{font-style:normal}.topbar-back[hidden]{display:none}.teacher-nav .course-overview-item{height:43px;margin:3px 0 11px;padding:0 12px;display:flex;align-items:center;border-radius:10px;color:#fff;background:linear-gradient(100deg,#6656e8,#5547cd);box-shadow:0 8px 20px rgba(70,55,178,.24);font-size:11px;font-weight:700;letter-spacing:.02em}
