/* Teacher UI only; embedded course slides keep their own typography. */
.admin-main,.admin-sidebar,.teacher-presenter{font-size:14px;line-height:1.5}
.admin-main :is(input,select,textarea,button),.admin-sidebar button,.teacher-presenter :is(input,select,button){font-size:14px}
.admin-main select option,.teacher-presenter select option,.cu-dialog select option{font-size:14px}
.admin-main h1{font-size:26px}.admin-main h2{font-size:20px}.admin-main h3{font-size:17px}
.admin-main .cu-resource-select{font-size:14px;line-height:1.45;min-height:38px;padding:8px 10px;border-radius:8px}
.admin-main .cu-resource-block{padding:14px;margin:10px 0}.admin-main .cu-resource-block h3{font-size:16px;margin-bottom:9px}.admin-main .cu-resource-block article{font-size:14px}.admin-main .cu-resource-block small{font-size:12px}.admin-main .cu-inline-button{font-size:14px;padding:7px 11px;min-height:36px}
.cu-dialog{font-size:14px;line-height:1.6}.cu-dialog h2{font-size:19px}.cu-dialog h3{font-size:17px}.cu-dialog :is(button,input,select){font-size:14px}.cu-dialog button{min-height:36px;padding:7px 11px}.cu-dialog .cu-confirm strong{font-size:24px}
.teacher-presenter>header{min-height:60px;height:60px;box-sizing:border-box;padding:8px 14px;gap:12px}.teacher-presenter>header strong{font-size:16px}.teacher-presenter>header small{font-size:11px}.teacher-presenter>header :is(select,button,a){font-size:14px;padding:7px 10px}.teacher-presenter>aside{top:60px;width:min(360px,34vw)}.teacher-presenter>.presenter-sidebar-toggle{right:min(360px,34vw)}.teacher-presenter>aside>header{padding:12px 14px;font-size:15px}.teacher-presenter>aside>nav{padding:10px;gap:6px}.teacher-presenter>aside>nav button{font-size:14px;padding:8px;min-height:38px}.teacher-presenter>aside>nav svg{width:18px;height:18px}
.cu-presenter-points{display:grid;gap:8px;padding:10px}.cu-presenter-tools{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:12px;color:#62746a}.cu-presenter-tools button{font-size:12px!important;padding:5px 8px;border:1px solid #cbd8d1;border-radius:7px;background:#f4f8f5;white-space:nowrap;cursor:pointer}
.cu-presenter-points article{display:flex;flex-direction:column;gap:9px;min-width:0;border:1px solid #dce4df;border-radius:10px;padding:11px;background:#fff}.cu-student-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:0}.cu-student-summary strong{font-size:15px;line-height:1.4;white-space:nowrap}.cu-student-summary span{font-size:13px;color:#526d5c;white-space:nowrap}.cu-student-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.teacher-presenter .cu-student-action select{font-size:13px;min-width:0;width:100%;height:36px;padding:6px;border:1px solid #c4d2ca;border-radius:7px}.teacher-presenter .cu-student-action button{font-size:12px;min-height:36px;padding:6px 9px;border:1px solid #377853;border-radius:7px;background:#e9f4ed;color:#245c3d;white-space:nowrap;cursor:pointer}.cu-student-action button:disabled{opacity:.5;cursor:default}
@media(max-width:760px){.teacher-presenter>aside{width:min(340px,88vw)}.teacher-presenter>.presenter-sidebar-toggle{right:min(340px,88vw)}.teacher-presenter>header{padding:6px 9px}.teacher-presenter>header strong{font-size:14px}}
.teacher-presenter:has(>aside.collapsed)>.presenter-sidebar-toggle{right:0}
.cu-challenge-fold>select{width:100%;padding:9px;margin-bottom:12px}.reward-admin-products{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}.cu-reward-fold{border:1px solid #dbe5df;border-radius:10px;background:white;overflow:hidden}.cu-reward-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;cursor:pointer}.cu-reward-fold>summary:before{content:'▸';color:#738779}.cu-reward-fold[open]>summary:before{content:'▾'}.cu-reward-fold>summary strong{flex:1;font-size:14px}.cu-reward-fold>summary span{font-size:13px;color:#718176}.cu-reward-fold>article{border-top:1px solid #e5ece7!important;border-radius:0!important}
.cu-roster-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;padding:16px;align-items:start}.cu-roster>input{width:100%;padding:10px 12px;margin-bottom:10px;border:1px solid #d4dfd8;border-radius:8px}.cu-roster-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:6px;max-height:420px;overflow:auto;padding:2px}.cu-roster-list>button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:10px;border:1px solid #dae4dd;border-radius:8px;background:#fff;cursor:pointer;text-align:left}.cu-roster-list>button strong{font-size:14px}.cu-roster-list>button span{font-size:12px;color:#78877d;white-space:nowrap}.cu-roster-list>button[aria-pressed=true]{background:#eaf4ec;border-color:#32805a;box-shadow:inset 0 0 0 1px #32805a}.cu-roster-action{border:1px solid #d6e3da;background:#f7faf7;border-radius:10px;position:sticky;top:16px}.cu-roster-empty{padding:28px 16px;color:#75847a;text-align:center}.cu-selected-more>article>.student-point-head,.cu-selected-more>article>.compact-quick-actions{display:none}.cu-selected-more{padding:0 12px 12px}.cu-selected-more article{border:0}.cu-selected-more summary{cursor:pointer;font-size:12px}.cu-student-action button{min-width:54px;min-height:36px;background:#eaf5ed;color:#25623e;border:1px solid #458561;border-radius:7px;cursor:pointer}.cu-student-action select{width:100%;min-width:0;padding:8px;border:1px solid #cddbd1;border-radius:7px}.cu-roster-action .cu-presenter-points{padding:12px}.cu-roster-action .cu-presenter-points article{padding:0;border:0;background:transparent}.compact-account-console .point-history{max-height:320px;overflow:auto}@media(max-width:850px){.cu-roster-layout{grid-template-columns:1fr}.cu-roster-action{position:static;grid-row:1}.cu-roster-list{max-height:320px}}
/* r21：授课台「学生积分」顶部快捷加减分框（序号 + 加减分项 + 确认），与每位学生旁边的按钮共用同一套后端。 */
.cu-quick-bar{display:grid;gap:8px;padding:11px;border:1px solid #cfe0d6;border-radius:10px;background:#f4faf6}
.cu-quick-bar>strong{font-size:14px;color:#22452f}
.cu-quick-hint{margin:0;font-size:12px;color:#62746a;line-height:1.5}
.cu-quick-bar label{display:grid;gap:4px;font-size:12px;color:#526d5c}
.cu-quick-bar select{width:100%;height:36px;padding:6px 8px;font-size:13px;border:1px solid #c4d2ca;border-radius:7px;background:#fff}
.cu-quick-ability{font-size:12px;color:#7a6018;background:#fdf6e3;border:1px solid #e9d9a5;border-radius:6px;padding:4px 7px;line-height:1.4}
.cu-quick-bar button{min-height:38px;font-size:14px;font-weight:bold;border:1px solid #377853;border-radius:8px;background:#23764e;color:#fff;cursor:pointer}
.cu-quick-bar button:disabled{opacity:.5;cursor:default}
.cu-quick-note{margin:0;font-size:12px;color:#2f6b4a;line-height:1.5}
.cu-quick-note:empty{display:none}
.cu-ability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px}
.cu-ability-cell{display:grid;gap:4px;font-size:12px;color:#526d5c}
.cu-ability-cell input{width:100%;padding:8px;font-size:14px;border:1px solid #a9c3b6;border-radius:8px;text-align:center;box-sizing:border-box}
