:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#17324d;background:#f2f7fb;font-synthesis:none}.online-grading-section,.student-notifications,.ai-limit-form,.grading-template-form{border:1px solid #dce6f4;border-radius:22px;background:#fff;padding:22px}.online-start-box,.result-actions,.zip-import-row{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.online-start-box{background:#f2f7ff;border-radius:16px;padding:16px;margin:16px 0}.online-start-box label{min-width:min(360px,100%)}.online-start-box .temporary-instruction-field{flex:1 1 420px}.online-start-box textarea{width:100%;min-height:84px;padding:10px;border:1px solid #bfd1e4;border-radius:10px;resize:vertical}.list-more-actions{display:flex;justify-content:center;margin:14px 0}.grading-work-group{border-top:1px solid #e5ebf4;margin-top:14px;padding-top:14px}.grading-work-group>summary{cursor:pointer;font-weight:700;color:#102f58}.grading-work-group>article,.zip-import-row{border:1px solid #e4eaf3;border-radius:13px;padding:12px;margin-top:10px;display:flex;justify-content:space-between;gap:12px;align-items:center}.grading-work-group article div{display:grid;gap:4px}.grading-work-group article small{color:#6b7c92}.error-group{color:#a63025}.grading-selection-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:12px}.grading-selection-list label{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #dfe7f2;border-radius:12px}.grading-selection-list label span{display:grid;gap:4px}.grading-selection-list small{color:#6b7c92}.result-review-list{margin-top:22px}.result-review-list h4{font-size:18px;margin-bottom:12px}.result-review-card{border:1px solid #d8e4f5;border-radius:16px;padding:16px;margin-top:12px}.result-review-heading{display:flex;justify-content:space-between;gap:12px}.result-review-heading>div{display:grid;gap:4px}.feedback-summary{white-space:pre-wrap;max-height:240px;overflow:auto;background:#f7f9fc;padding:12px;border-radius:10px}.result-actions{margin-top:12px}.result-actions label{min-width:120px}.result-actions .comment-field{flex:1 1 320px}.published-result-box{background:#edf8f1;border:1px solid #bfe4cc;border-radius:15px;padding:15px;margin-top:14px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.published-result-box>div{display:grid;gap:3px;flex:1}.published-result-box>p,.published-result-box>details{flex-basis:100%}.student-question-box{margin-top:14px;border-top:1px solid #e4eaf1;padding-top:12px}.student-question-box textarea{width:100%;margin:10px 0}.message-thread article{background:#f6f8fb;border-radius:10px;padding:10px;margin:8px 0}.message-thread article p{margin:5px 0}.student-notifications{margin-bottom:22px}.student-notifications article{padding:10px 0;border-top:1px solid #edf0f5}.student-notifications article p{margin:4px 0}.unread-notification{border-left:4px solid #3478e5;padding-left:12px!important}.ai-policy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:18px;margin:24px 0}.ai-limit-form,.grading-template-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-limit-form .section-title-row,.grading-template-form .section-title-row,.template-list,.ai-policy-grid .wide-field{grid-column:1 / -1}.template-list{border-top:1px solid #e5ebf4;margin-top:6px;padding-top:8px}.template-list article{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #edf1f6}.template-summary-button,.model-summary-button{flex:1;display:grid;gap:4px;padding:9px;color:inherit!important;background:transparent!important;border:0!important;text-align:left;cursor:pointer}.template-summary-button span,.template-summary-button small{color:#6c7e95}@media(max-width:720px){.online-grading-section,.student-notifications,.ai-limit-form,.grading-template-form{padding:15px;border-radius:16px}.ai-policy-grid,.ai-limit-form,.grading-template-form{grid-template-columns:1fr}.ai-limit-form .section-title-row,.grading-template-form .section-title-row,.template-list,.ai-policy-grid .wide-field{grid-column:auto}.grading-work-group>article,.zip-import-row,.result-review-heading{align-items:stretch;flex-direction:column}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{color:inherit}.page-shell{min-height:100vh;padding:42px 20px 24px;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at 12% 12%,rgba(33,150,243,.15),transparent 30%),radial-gradient(circle at 88% 88%,rgba(25,118,210,.11),transparent 34%),#f5f9fc}.app-card{width:min(760px,100%);overflow:hidden;background:#fffffff7;border:1px solid rgba(22,119,255,.12);border-radius:28px;box-shadow:0 24px 70px #1f436821}.workspace-card{width:min(1120px,100%)}.brand-header{display:flex;align-items:center;gap:18px;padding:30px 38px;color:#fff;background:linear-gradient(135deg,#126fd1,#168af5)}.brand-mark{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;color:#146fcc;background:#fff;border-radius:18px;font-size:29px;font-weight:800;box-shadow:0 10px 22px #04356933}.eyebrow{margin:0 0 5px;color:#ffffffc7;font-size:13px;letter-spacing:.1em}h1{margin:0;font-size:clamp(27px,5vw,37px);line-height:1.2}h2{margin:0 0 9px;color:#132f4c;font-size:25px}h3{margin:6px 0}.content-panel{padding:34px 38px 38px}.narrow-panel{max-width:520px;margin:0 auto}.section-heading{margin-bottom:24px}.section-heading p,.muted{margin:0;color:#6b8094;line-height:1.7}.step-badge{display:inline-block;margin-bottom:10px;padding:5px 10px;color:#0e69c7;background:#eaf4ff;border-radius:999px;font-size:13px;font-weight:700}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:flex;flex-direction:column;gap:8px;color:#2c4b66;font-weight:650}.form-grid label:nth-of-type(n+3){grid-column:span 1}.form-grid input{width:100%;min-height:46px;padding:10px 13px;color:#17324d;background:#fbfdff;border:1px solid #cbd9e6;border-radius:11px;outline:none;transition:border-color .18s,box-shadow .18s}.form-grid input:focus{border-color:#1684f8;box-shadow:0 0 0 3px #1684f821}.form-grid small{color:#8293a3;font-size:12px;font-weight:400;line-height:1.5}.primary-button{grid-column:1 / -1;min-height:48px;margin-top:4px;color:#fff;background:linear-gradient(135deg,#126fd1,#168af5);border:0;border-radius:12px;font-weight:750;cursor:pointer;box-shadow:0 10px 22px #1677ff38}.primary-button:disabled{cursor:wait;opacity:.65}.app-download-link{display:block;margin-top:18px;padding:12px 16px;border:1px solid #b9d5f6;border-radius:12px;color:#1165c2;text-align:center;font-weight:700;text-decoration:none;background:#f4f9ff}.app-download-link:hover{background:#eaf4ff}.app-download-note{margin:8px 0 0;color:#77889b;text-align:center;font-size:12px}.app-download-options{display:grid;gap:8px;margin-top:18px}.app-download-options .app-download-link{margin-top:0}.app-download-link.secondary{color:#526b82;background:#f7f9fb;border-color:#d6e0e8}.tls-settings-panel{display:grid;gap:18px}.tls-config-list{padding:18px;border:1px solid #dbe6f2;border-radius:16px;background:#fff}.tls-config-list h3{margin:0 0 12px}.tls-config-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid #edf2f7}.tls-config-card:first-of-type{border-top:0}.tls-config-card div{display:grid;gap:4px}.tls-config-card span,.tls-config-card small{color:#6f8195}.tls-config-card a{color:#1165c2;font-size:13px}.tls-event-list{padding:14px 18px;border:1px solid #dbe6f2;border-radius:14px;background:#fff}.tls-event-list p{margin:10px 0;color:#61758a;font-size:13px}.status-ok{color:#16875c;font-weight:700}.status-error{color:#bd3428;font-weight:700}.form-error{grid-column:1 / -1;margin:0;padding:11px 13px;color:#a6221a;background:#fff2f0;border-radius:10px}.center-panel{min-height:250px;display:flex;align-items:center;justify-content:center;gap:10px;color:#60778d}.loading-dot{width:10px;height:10px;border-radius:50%;background:#1677ff;animation:pulse 1.3s infinite}.dashboard-topline{display:flex;align-items:center;justify-content:space-between;gap:20px}.welcome{margin:0 0 5px;color:#17324d;font-size:24px;font-weight:800}.text-button{padding:8px 12px;color:#526c83;background:transparent;border:1px solid #d2dee8;border-radius:10px;cursor:pointer}.notice-card{margin-top:26px;padding:20px;display:flex;gap:15px;background:#edf9f2;border-radius:16px}.notice-card p{margin:5px 0 0;color:#557164}.status-icon{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;color:#fff;background:#1c9b5f;border-radius:50%;font-weight:800}.feature-grid{margin-top:22px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.feature-grid article{padding:18px;background:#f6f9fc;border:1px solid #e8eff5;border-radius:15px}.feature-grid article>span{color:#1684f8;font-size:12px;font-weight:800}.feature-grid p{margin:0;color:#8596a6;font-size:13px}.footer-note{margin:16px 0 0;color:#8798a8;font-size:13px;text-align:center}.admin-workspace{min-height:590px;display:grid;grid-template-columns:220px 1fr}.admin-sidebar{padding:24px 16px;display:flex;flex-direction:column;gap:6px;background:#f7faff;border-right:1px solid #e5edf5}.admin-user-card{margin:0 4px 18px;padding-bottom:18px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #e0e9f1}.admin-avatar{width:40px;height:40px;display:grid;place-items:center;color:#fff;background:#1684f8;border-radius:12px;font-weight:800}.admin-user-card strong,.admin-user-card small{display:block}.admin-user-card small{margin-top:3px;color:#8092a3}.sidebar-link{width:100%;padding:11px 13px;text-align:left;background:transparent;border:0;border-radius:10px;cursor:pointer}.sidebar-link:hover{background:#edf5fd}.sidebar-link.active{color:#116fcf;background:#e6f2ff;font-weight:750}.logout-link{margin-top:auto;color:#728496}.admin-main{min-width:0;padding:30px 32px 36px}.admin-heading{margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-heading h2{margin:2px 0 0}.eyebrow-blue{margin:0;color:#1684f8;font-size:13px;font-weight:700}.environment-badge,.active-badge{padding:5px 10px;color:#13704a;background:#e7f7ef;border-radius:999px;font-size:12px;font-weight:700}.locked-badge{padding:5px 10px;color:#8f3c35;background:#fff0ee;border-radius:999px;font-size:12px;font-weight:700}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-card{padding:18px;text-align:left;background:#fff;border:1px solid #e1eaf2;border-radius:14px;cursor:pointer;transition:transform .15s,box-shadow .15s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px #2b527617}.stat-card strong{display:block;color:#126fd1;font-size:28px}.stat-card span{color:#70859a;font-size:13px}.section-title-row{margin:28px 0 14px;display:flex;align-items:center;justify-content:space-between;gap:18px}.section-title-row h3{margin:0 0 4px;font-size:18px}.section-title-row p{margin:0;color:#7b8fa2;font-size:13px}.section-actions{display:flex;align-items:center;gap:9px}.management-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.management-grid button{min-height:112px;padding:18px;display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:10px;text-align:left;background:#f8fbfe;border:1px solid #e5edf5;border-radius:14px;cursor:pointer}.management-grid button>span{grid-row:1 / 3;width:34px;height:34px;display:grid;place-items:center;color:#1684f8;background:#e7f3ff;border-radius:10px;font-size:12px;font-weight:800}.management-grid button>strong{align-self:end}.management-grid button>small{color:#8496a8}.primary-small{min-height:38px;padding:8px 14px;color:#fff;background:#167ff0;border:0;border-radius:10px;font-weight:700;cursor:pointer}.primary-small:disabled{opacity:.6;cursor:wait}.secondary-small{min-height:38px;padding:8px 13px;display:inline-flex;align-items:center;justify-content:center;color:#146fc9;background:#fff;border:1px solid #bcd4e9;border-radius:10px;font-weight:700;text-decoration:none;cursor:pointer}.secondary-small:disabled{opacity:.6;cursor:wait}.inline-create-form{margin-bottom:16px;padding:18px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px;background:#f3f8fd;border-radius:14px}.inline-create-form label{display:flex;flex-direction:column;gap:7px;color:#39556f;font-weight:650}.inline-create-form input{min-height:42px;padding:9px 12px;border:1px solid #c8d7e5;border-radius:10px;outline:none}.inline-create-form input:focus{border-color:#1684f8;box-shadow:0 0 0 3px #1684f81f}.inline-create-form .form-error{grid-column:1 / -1}.campus-list{display:grid;gap:10px}.campus-list article{padding:15px 16px;display:flex;align-items:center;gap:13px;border:1px solid #e3ebf3;border-radius:13px}.campus-list article.selected-record{border-color:#8fc4f4;background:#f4f9fe}.campus-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;color:#126fd1;background:#e9f4ff;border-radius:11px;font-weight:800}.campus-info{min-width:0;flex:1}.campus-info strong,.campus-info span{display:block}.campus-info span{margin-top:4px;color:#8495a5;font-size:12px}.empty-panel{min-height:330px;display:grid;place-content:center;text-align:center}.empty-panel>span{justify-self:center;padding:5px 10px;color:#1676d7;background:#e9f4ff;border-radius:999px;font-size:12px;font-weight:700}.empty-panel h3{margin:12px 0 7px;font-size:22px}.empty-panel p{max-width:450px;margin:0;color:#7b8da0;line-height:1.7}.record-form{margin-bottom:16px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#f3f8fd;border-radius:14px}.record-form label{display:flex;flex-direction:column;gap:7px;color:#39556f;font-weight:650}.record-form input,.record-form select{min-height:42px;padding:9px 12px;color:#17324d;background:#fff;border:1px solid #c8d7e5;border-radius:10px;outline:none}.record-form input:focus,.record-form select:focus{border-color:#1684f8;box-shadow:0 0 0 3px #1684f81f}.record-form .wide-field,.record-form .form-error,.record-form>button{grid-column:1 / -1}.password-result{margin-bottom:15px;padding:15px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#315f4c;background:#eaf8f1;border:1px solid #cdebdc;border-radius:13px}.password-result strong,.password-result span{display:block}.password-result span{margin-top:5px;font-size:13px}.password-result b{color:#123f2d;letter-spacing:.02em}.password-result button{padding:7px 11px;color:#176b49;background:#fff;border:1px solid #b9decf;border-radius:9px;cursor:pointer}.record-list{display:grid;gap:9px}.account-record-group{overflow:hidden;border:1px solid #e3ebf3;border-radius:13px}.record-list .account-record-group>article{border:0;border-radius:0}.record-list article{padding:13px 15px;display:flex;align-items:center;gap:12px;border:1px solid #e3ebf3;border-radius:13px}.record-list article>div:not(.record-avatar){min-width:0;flex:1}.record-list strong,.record-list small{display:block}.record-list small{margin-top:4px;color:#8193a5}.record-avatar{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;color:#166fc8;background:#eaf4ff;border-radius:50%;font-weight:800}.account-actions{display:flex;align-items:center;gap:5px}.account-actions button{padding:6px 8px;color:#536f87;background:#f5f8fb;border:0;border-radius:8px;font-size:11px;cursor:pointer}.account-actions .lock-action{color:#97473f;background:#fff2f0}.account-actions .unlock-action{color:#1f7654;background:#eaf8f1}.account-actions .delete-action{color:#fff;background:#b4433a}.assign-campus-form{padding:10px 12px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;background:#f4f9fd;border-top:1px solid #e1ebf3}.assign-campus-form>span{color:#698095;font-size:12px}.assign-campus-form select{min-height:36px;padding:7px 9px;color:#29475f;background:#fff;border:1px solid #cad9e5;border-radius:8px}.subsection-divider{height:1px;margin:28px 0 0;background:#e4ecf3}.class-avatar{border-radius:11px}.empty-row{margin:0;padding:28px;color:#8496a8;text-align:center;background:#fafcfe;border:1px dashed #d6e2ec;border-radius:13px}.manage-link{padding:7px 10px;flex:0 0 auto;color:#1472cc;background:#edf6ff;border:0;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer}.class-member-panel{margin:4px 0 18px;padding:17px;background:#f6faff;border:1px solid #cfe0ef;border-radius:15px}.panel-topline{display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-topline strong,.panel-topline span{display:block}.panel-topline span{margin-top:4px;color:#758a9e;font-size:12px}.panel-topline>button{padding:6px 10px;color:#61788d;background:#fff;border:1px solid #d1dfea;border-radius:8px;cursor:pointer}.class-member-panel>.form-error,.success-message{margin-top:12px}.success-message{padding:10px 12px;color:#27664a;background:#e7f7ef;border-radius:9px}.member-sections{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.member-sections section{padding:14px;background:#fff;border:1px solid #e0eaf2;border-radius:12px}.member-sections h4,.current-members h4{margin:0 0 5px;color:#284760}.member-sections p{margin:0 0 11px;color:#7b8fa2;font-size:12px;line-height:1.6}.source-import-row{display:grid;grid-template-columns:1fr auto;gap:8px}.source-import-row select,.student-search{width:100%;min-height:39px;padding:8px 10px;color:#284760;background:#fff;border:1px solid #cbd9e6;border-radius:9px;outline:none}.student-search{margin-bottom:8px}.student-picker{margin-bottom:9px;max-height:190px;overflow:auto;border:1px solid #e1e9f0;border-radius:9px}.student-picker>span{display:block;padding:20px;color:#8596a6;text-align:center;font-size:12px}.student-picker label{padding:8px 9px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #edf2f6;cursor:pointer}.student-picker label:last-child{border-bottom:0}.student-picker label>span{min-width:0}.student-picker strong,.student-picker small{display:block}.student-picker small{margin-top:2px;color:#8294a5;font-size:11px}.current-members{margin-top:14px}.current-members>div{padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-bottom:1px solid #e8eef3}.current-members>div:first-of-type{border-radius:9px 9px 0 0}.current-members>div:last-child{border-bottom:0;border-radius:0 0 9px 9px}.current-members strong,.current-members small{display:block}.current-members small{margin-top:3px;color:#8495a5}.current-members button{padding:6px 9px;color:#a3433b;background:#fff3f1;border:0;border-radius:8px;cursor:pointer}.import-box{margin:0 0 16px;overflow:hidden;border:1px solid #dbe7f1;border-radius:14px}.import-toggle{width:100%;padding:15px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;background:#f5f9fd;border:0;cursor:pointer}.import-toggle span{min-width:0}.import-toggle strong,.import-toggle small{display:block}.import-toggle small{margin-top:4px;color:#8295a7;font-weight:400}.import-toggle b{flex:0 0 auto;color:#1676d7;font-size:13px}.import-content{padding:16px;border-top:1px solid #dbe7f1}.import-content>p{margin:0 0 13px;color:#6f8497;font-size:13px;line-height:1.6}.upload-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.upload-row input[type=file]{min-width:0;padding:8px;color:#536f87;background:#fff;border:1px solid #cad9e6;border-radius:10px}.import-content .form-error{margin-top:12px}.import-errors{margin-top:13px;padding:14px 16px;color:#8a312a;background:#fff3f1;border-radius:11px}.import-errors ul{margin:9px 0 0;padding-left:20px;max-height:220px;overflow:auto;font-size:13px;line-height:1.7}.import-errors p{margin:8px 0 0;font-size:12px}.import-preview{margin-top:13px;padding:15px;background:#eef8f3;border-radius:12px}.import-preview>div:first-child strong,.import-preview>div:first-child span{display:block}.import-preview>div:first-child span{margin-top:4px;color:#648075;font-size:12px}.preview-table{margin:12px 0;max-height:230px;overflow:auto;background:#fff;border:1px solid #d6e9df;border-radius:9px}.preview-table p{margin:0;padding:8px 10px;display:grid;grid-template-columns:1fr 1.2fr 1fr .8fr;gap:8px;color:#48675a;font-size:12px;border-bottom:1px solid #e6f0eb}.preview-table p:last-child{border-bottom:0}.import-content>.password-result{margin:13px 0 0}.detail-editor{margin:14px 0 18px;padding:17px;background:#f5f9fd;border:1px solid #cfe0ee;border-radius:14px}.detail-stats{margin-top:13px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.detail-stats span{padding:12px;color:#6a8094;background:#fff;border-radius:10px;text-align:center;font-size:12px}.detail-stats b{display:block;color:#126fcf;font-size:21px}.campus-detail-lists,.account-affiliations{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.campus-detail-lists>div,.account-affiliations>div{padding:13px;background:#fff;border-radius:10px}.campus-detail-lists strong,.account-affiliations strong{color:#35536b}.campus-detail-lists p,.account-affiliations p{margin:7px 0 0;color:#71879a;font-size:12px;line-height:1.5}.detail-edit-form{margin-top:13px;display:grid;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:9px}.detail-edit-form label{display:flex;flex-direction:column;gap:6px;color:#3d5a72;font-size:13px;font-weight:650}.detail-edit-form input,.detail-edit-form select{min-height:39px;padding:8px 10px;color:#29485f;background:#fff;border:1px solid #c8d7e4;border-radius:9px}.danger-button{min-height:38px;padding:8px 12px;color:#9a443c;background:#fff1ef;border:1px solid #f0c8c3;border-radius:9px;font-weight:700;cursor:pointer}.danger-button:disabled{opacity:.55;cursor:wait}.shared-account-notice{margin:12px 0 0;padding:10px 12px;color:#775e2d;background:#fff8e6;border-radius:9px;font-size:12px}.historical-row{color:#9aa7b2!important}.class-edit-form{grid-template-columns:1fr 1fr}.class-edit-form button{align-self:end}.teacher-workspace{min-height:620px;background:#f8fbfe}.teacher-header{padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border-bottom:1px solid #e2ebf3}.teacher-header h2{margin:3px 0}.teacher-header p:last-child{margin:0;color:#71869a}.teacher-main{padding:8px 32px 36px;display:grid;gap:8px}.teacher-main>section{min-width:0}.teacher-tabbed-main{padding:0;gap:0}.teacher-tabs{display:flex;gap:6px;padding:12px 32px 0;overflow-x:auto;background:#fff;border-bottom:1px solid #e2ebf3;scrollbar-width:thin}.teacher-tabs button{flex:0 0 auto;min-height:42px;padding:9px 14px;color:#607991;background:transparent;border:0;border-bottom:3px solid transparent;border-radius:10px 10px 0 0;cursor:pointer;font:inherit;font-weight:650;white-space:nowrap}.teacher-tabs button:hover{color:#126fcf;background:#f3f8fd}.teacher-tabs button.active{color:#126fcf;background:#eef6ff;border-bottom-color:#1684f8;font-weight:800}.teacher-tab-panels{min-width:0;padding:8px 32px 36px}.teacher-tab-panel{min-width:0}.teacher-tab-panel[hidden]{display:none}.teacher-tab-panel>section{min-width:0}.teacher-class-picker{margin-bottom:15px;padding:13px 14px;display:flex;align-items:end;gap:14px;background:#f3f8fd;border:1px solid #dbe8f3;border-radius:13px}.teacher-class-picker label{min-width:min(380px,100%);display:grid;gap:6px;color:#3d5b73;font-size:13px;font-weight:700}.teacher-class-picker select{min-height:40px;padding:8px 10px;color:#294d6a;background:#fff;border:1px solid #cad9e5;border-radius:8px}.teacher-class-picker p{margin:0 0 3px;color:#7890a4;font-size:12px}.teacher-class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.teacher-class-grid article{padding:15px;display:flex;align-items:center;gap:11px;background:#fff;border:1px solid #e0e9f1;border-radius:13px}.teacher-class-grid article>span{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;color:#146fc9;background:#e9f4ff;border-radius:11px;font-weight:800}.teacher-class-grid strong,.teacher-class-grid small{display:block}.teacher-class-grid small{margin-top:4px;color:#7d90a2;font-size:12px;line-height:1.5}.assistant-form{margin-bottom:16px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#eef6fd;border:1px solid #dbe8f3;border-radius:15px}.assistant-form>label{display:flex;flex-direction:column;gap:7px;color:#39556f;font-weight:650}.assistant-form input[type=text],.assistant-form input:not([type]){min-height:42px;padding:9px 12px;border:1px solid #c8d7e5;border-radius:10px;outline:none}.assistant-form fieldset,.assistant-form .mode-switch,.assistant-form>.form-error,.assistant-form>button{grid-column:1 / -1}.assistant-form fieldset{margin:0;padding:14px;background:#fff;border:1px solid #d9e5ef;border-radius:11px}.assistant-form legend{padding:0 6px;color:#2d4d68;font-weight:750}.assistant-form fieldset>p{margin:10px 0 0;color:#7a8fa2;font-size:12px;line-height:1.6}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;background:#dfeefa;border-radius:11px}.mode-switch button{min-height:38px;color:#58748c;background:transparent;border:0;border-radius:8px;cursor:pointer}.mode-switch button.active{color:#126fcf;background:#fff;font-weight:750;box-shadow:0 3px 10px #2d5a8217}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.choice-grid label{padding:10px;display:flex;align-items:flex-start;gap:8px;background:#f7fafc;border-radius:9px;cursor:pointer}.choice-grid label>span,.choice-grid strong,.choice-grid small{display:block}.choice-grid small{margin-top:3px;color:#7f93a5;font-size:11px}.permission-grid{display:flex;flex-wrap:wrap;gap:8px}.permission-grid label,.permission-editor label{padding:7px 9px;display:flex;align-items:center;gap:6px;color:#405d75;background:#f2f7fb;border-radius:8px;font-size:12px;cursor:pointer}.permission-grid small{color:#8496a6}.assistant-list{display:grid;gap:10px}.assistant-list>article{padding:15px;background:#fff;border:1px solid #dfe8f0;border-radius:13px}.assistant-record-heading{display:flex;align-items:center;gap:10px}.assistant-record-heading>div{min-width:0;flex:1}.assistant-record-heading strong,.assistant-record-heading small{display:block}.assistant-record-heading small{margin-top:4px;color:#7e91a3}.assistant-record-heading button{padding:7px 9px;color:#176fc5;background:#eef6fd;border:0;border-radius:8px;font-size:12px;cursor:pointer}.assistant-record-heading .danger-light{color:#984940;background:#fff1ef}.permission-tags{margin-top:11px;display:flex;flex-wrap:wrap;gap:6px}.permission-tags span{padding:5px 8px;color:#356b53;background:#eaf7f1;border-radius:999px;font-size:11px}.authorization-meta{margin:10px 0 0;color:#8a9baa;font-size:11px}.permission-editor{margin-top:12px;padding:12px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;background:#f5f9fc;border-radius:10px}.assistant-history{margin-top:15px;padding:13px 15px;color:#667d91;background:#f3f7fa;border-radius:11px;font-size:12px}.assistant-history summary{cursor:pointer;font-weight:700}.assistant-history p{margin:10px 0 0}.assistant-class-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.assistant-class-grid>article{padding:18px;background:#fff;border:1px solid #dfe9f1;border-radius:14px}.assistant-class-grid strong,.assistant-class-grid small{display:block}.assistant-class-grid small{margin-top:5px;color:#7c90a3}.assistant-class-grid p{margin:10px 0 0;color:#5f778c;font-size:13px}.assignment-section{min-width:0}.assignment-form{margin-bottom:17px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#eef6fd;border:1px solid #d9e7f2;border-radius:15px}.assignment-form>label{display:flex;flex-direction:column;gap:7px;color:#39556f;font-weight:650}.assignment-form .wide-field,.assignment-form fieldset,.assignment-form>.form-error,.assignment-form>button{grid-column:1 / -1}.assignment-form input,.assignment-form select,.assignment-form textarea{width:100%;min-height:42px;padding:9px 11px;color:#24455f;background:#fff;border:1px solid #c7d7e4;border-radius:9px;outline:none}.assignment-form textarea{resize:vertical;line-height:1.6}.assignment-form fieldset{margin:0;padding:14px;background:#fff;border:1px solid #d8e4ee;border-radius:11px}.assignment-form legend{padding:0 6px;color:#2d4d68;font-weight:750}.assignment-form fieldset>p,.form-help{margin:8px 0 0;color:#7d90a2;font-size:12px;line-height:1.6}.file-fieldset>label,.private-files>label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#405f77;font-size:13px}.file-fieldset input,.private-files input{width:min(440px,100%)}.private-files{display:grid;gap:9px}.assignment-list{display:grid;gap:11px}.assignment-card{padding:17px;background:#fff;border:1px solid #dee8f0;border-radius:14px}.assignment-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.assignment-card-heading>div{min-width:0}.assignment-card-heading>div>span{display:inline-block;margin-bottom:7px;padding:4px 7px;color:#156fc8;background:#eaf4ff;border-radius:999px;font-size:10px;font-weight:750}.assignment-card-heading strong,.assignment-card-heading small{display:block}.assignment-card-heading strong{color:#203f59;font-size:17px}.assignment-card-heading small{margin-top:5px;color:#7f92a4;line-height:1.5}.assignment-card-heading>b{flex:0 0 auto;padding:5px 8px;color:#356b53;background:#e9f7f0;border-radius:8px;font-size:11px}.assignment-card>p{margin:12px 0 0;color:#506b81;line-height:1.7;white-space:pre-wrap}.class-tags{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}.class-tags span{padding:5px 8px;color:#4b6d87;background:#f0f5f9;border-radius:999px;font-size:11px}.assignment-meta{margin-top:11px;display:flex;flex-wrap:wrap;gap:12px;color:#8092a3;font-size:11px}.material-groups{margin-top:13px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.material-groups>div{padding:11px;background:#f7fafc;border-radius:9px}.material-groups strong,.material-groups a{display:block}.material-groups strong{margin-bottom:5px;color:#536e84;font-size:11px}.material-groups a{padding:4px 0;overflow:hidden;color:#126fcf;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.grading-instruction{margin-top:12px;padding:10px 12px;color:#60778b;background:#fff9e9;border-radius:9px;font-size:12px}.grading-instruction summary{cursor:pointer;font-weight:700}.grading-instruction p{margin:8px 0 0;line-height:1.7;white-space:pre-wrap}.student-workspace{min-height:620px;background:#f6fafe}.student-header{padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border-bottom:1px solid #e1eaf2}.student-header h2{margin:3px 0}.student-header p:last-child{margin:0;color:#71869a}.student-main{padding:8px 32px 38px;display:grid;gap:6px}.student-class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.student-class-grid article{padding:15px;display:flex;align-items:flex-start;gap:10px;background:#fff;border:1px solid #dfe9f1;border-radius:13px}.student-class-grid article>span{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;color:#146fc9;background:#e9f4ff;border-radius:11px;font-weight:800}.student-class-grid strong,.student-class-grid small{display:block}.student-class-grid small{margin-top:4px;color:#7d91a3}.student-class-grid p{margin:7px 0 0;color:#627b90;font-size:12px}.student-class-grid .historical-class{opacity:.7;background:#f4f6f8}.student-assignment-list{display:grid;gap:12px}.student-assignment-card{padding:17px;background:#fff;border:1px solid #dce7ef;border-radius:14px}.student-assignment-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.student-assignment-heading>div{min-width:0}.student-assignment-heading>div>span{display:inline-block;margin-bottom:7px;padding:4px 7px;color:#156fc8;background:#eaf4ff;border-radius:999px;font-size:10px;font-weight:750}.student-assignment-heading strong,.student-assignment-heading small{display:block}.student-assignment-heading strong{color:#213f59;font-size:17px}.student-assignment-heading small{margin-top:5px;color:#7f92a3;line-height:1.5}.student-assignment-heading>b{flex:0 0 auto;padding:5px 8px;border-radius:8px;font-size:11px}.submitted-status{color:#217151;background:#e7f7ef}.pending-status{color:#8b6530;background:#fff5dc}.student-assignment-meta{margin-top:11px;display:flex;flex-wrap:wrap;gap:12px;color:#758a9d;font-size:12px}.assignment-description{margin:12px 0 0;color:#4f6a80;line-height:1.7;white-space:pre-wrap}.student-materials{margin-top:12px;padding:11px;background:#f4f8fb;border-radius:9px}.student-materials strong,.student-materials a{display:block}.student-materials strong{margin-bottom:5px;color:#536f85;font-size:12px}.student-materials a{padding:4px 0;color:#126fcf;font-size:12px}.submission-versions{margin-top:13px;padding-top:12px;border-top:1px solid #e8eef3}.submission-versions>strong{color:#405f77;font-size:13px}.submission-versions details{margin-top:7px;padding:8px 10px;color:#60778b;background:#f7fafc;border-radius:8px;font-size:12px}.submission-versions summary{cursor:pointer;font-weight:700}.submission-versions details div{margin-top:7px;display:grid;gap:3px}.submission-versions a{color:#1471cc}.submission-versions p{margin:7px 0 0;color:#8595a3}.submit-homework-button{margin-top:13px}.submission-blocked{margin:12px 0 0;padding:9px 11px;color:#80633a;background:#fff7e4;border-radius:8px;font-size:12px}.student-upload-box{margin-top:12px;padding:14px;background:#eef6fd;border-radius:11px}.student-upload-box>label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#3f5e76;font-size:13px;font-weight:650}.student-upload-box input[type=file]{max-width:55%;padding:7px;color:#536e84;background:#fff;border:1px solid #cad9e5;border-radius:8px}.selected-file-order{margin:11px 0;overflow:hidden;background:#fff;border-radius:9px}.selected-file-order>strong{display:block;padding:9px 10px;color:#3e5d75;font-size:12px;border-bottom:1px solid #e8eef3}.selected-file-order>div{padding:7px 9px;display:flex;align-items:center;gap:5px;border-bottom:1px solid #edf2f6}.selected-file-order>div:last-child{border-bottom:0}.selected-file-order span{min-width:0;flex:1;overflow:hidden;color:#647b8f;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.selected-file-order button{padding:5px 7px;color:#4d6b83;background:#f0f5f9;border:0;border-radius:6px;font-size:11px;cursor:pointer}.account-name-button{padding:0;color:#153f66;background:transparent;border:0;font:inherit;font-weight:800;cursor:pointer}.account-name-button:hover{color:#1473d2;text-decoration:underline}.identity-picker .text-button{margin-top:18px}.identity-choice-list{display:grid;gap:10px}.identity-choice-list button{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#214a6d;background:#f3f8fc;border:1px solid #d8e6f1;border-radius:12px;cursor:pointer;text-align:left}.identity-choice-list button:hover{border-color:#79afe1;background:#edf6ff}.identity-choice-list strong,.identity-choice-list span{display:block}.identity-choice-list span{color:#73899c;font-size:12px}.identity-assignment-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.identity-assignment-row button{padding:5px 8px;color:#a64a3f;background:#fff0ed;border:0;border-radius:7px;cursor:pointer;font-size:11px}.identity-add-form{margin:14px 0;padding:13px;display:grid;grid-template-columns:1fr 1fr auto;gap:9px;background:#f1f7fc;border-radius:10px}.identity-add-form strong{grid-column:1 / -1;color:#365873;font-size:13px}.identity-add-form select{min-height:38px;padding:7px 9px;color:#36536c;background:#fff;border:1px solid #cad9e5;border-radius:8px}.offline-submit-section{padding:2px 0}.student-offline-form{padding:15px;display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#eef6fd;border:1px solid #d8e7f2;border-radius:13px}.student-offline-form label{display:flex;flex-direction:column;gap:6px;color:#405f77;font-size:13px;font-weight:650}.student-offline-form input,.student-offline-form select{width:100%;min-height:40px;padding:8px 10px;color:#36536c;background:#fff;border:1px solid #c7d7e4;border-radius:8px}.student-offline-form .wide-field{grid-column:1 / -1}.offline-confirm-box{margin-top:13px;padding:13px;display:grid;gap:11px;background:#fff8e8;border:1px solid #efdfb7;border-radius:10px}.offline-confirm-box strong{color:#77571f}.offline-confirm-box p{margin:4px 0 0;color:#846d43;font-size:12px;line-height:1.6}.offline-confirm-box details{padding:9px;background:#fff;border-radius:8px}.offline-confirm-box summary{color:#725b31;cursor:pointer;font-size:12px;font-weight:700}.submitted-student-list{display:flex;flex-wrap:wrap;gap:6px}.submitted-student-list span{padding:5px 8px;color:#44677f;background:#fff;border-radius:999px;font-size:11px}.confirm-mode-row label{display:flex;align-items:center;gap:10px;color:#5b6f7f;font-size:12px;font-weight:700}.confirm-mode-row select{min-height:36px;padding:6px 9px;color:#405d73;background:#fff;border:1px solid #d4c89e;border-radius:7px}.offline-student-checks{margin:8px 0;display:flex;flex-wrap:wrap;gap:7px}.offline-student-checks label{padding:6px 8px;color:#536d80;background:#fff;border:1px solid #dde7ed;border-radius:7px;font-size:11px}.offline-confirmed-note{margin:12px 0 0;padding:9px 11px;color:#287052;background:#e9f7f0;border-radius:8px;font-size:12px}.grading-status-grid{margin-bottom:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.grading-status-grid span{padding:12px;color:#657d90;background:#f5f9fc;border:1px solid #e0eaf1;border-radius:10px;font-size:12px}.grading-status-grid b{display:block;margin-bottom:3px;color:#1d5f98;font-size:21px}.grading-export-form{margin-bottom:14px;padding:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:#eef6fd;border:1px solid #d9e7f2;border-radius:13px}.grading-export-form>label{display:flex;flex-direction:column;gap:6px;color:#405e76;font-size:12px;font-weight:700}.grading-export-form input,.grading-export-form select,.grading-export-form textarea{width:100%;min-height:39px;padding:8px 10px;color:#36536b;background:#fff;border:1px solid #c8d8e4;border-radius:8px}.grading-export-form fieldset,.grading-export-form .wide-field{grid-column:1 / -1}.grading-export-form fieldset{padding:12px;background:#fff;border:1px solid #d8e4ed;border-radius:9px}.grading-queue-list{display:grid;gap:7px}.list-selection-actions{margin:10px 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.list-selection-actions span{color:#687f91;font-size:12px}.grading-queue-list article{padding:11px 12px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e0e9f0;border-radius:10px}.grading-queue-list article>div{min-width:0;flex:1}.grading-queue-list strong,.grading-queue-list small{display:block}.grading-queue-list small{margin-top:3px;overflow:hidden;color:#7d90a1;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.grading-queue-list a{color:#176fc7;font-size:12px;font-weight:700}.pdf-state{padding:5px 7px;border-radius:7px;font-size:10px;font-weight:750}.pdf-state.ready{color:#287052;background:#e8f7ef}.pdf-state.failed{color:#a34036;background:#fff0ed}.pdf-state.pending,.pdf-state.processing{color:#8a672e;background:#fff6df}.grading-queue-list .pdf-error{max-width:180px;color:#a34036;white-space:normal}.batch-download-list{margin-top:13px;padding:12px;display:grid;gap:7px;background:#f4f8fb;border-radius:10px}.batch-download-list strong{color:#49677f;font-size:12px}.batch-download-list a{color:#176fc7;font-size:12px}.ai-settings-panel{display:grid;gap:22px}.ai-connection-form,.ai-model-form{padding:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;background:#f7faff;border:1px solid #d8e4f3;border-radius:20px}.ai-connection-form label,.ai-model-form label{display:grid;gap:7px;color:#29405e;font-size:14px}.ai-connection-form input,.ai-connection-form select,.ai-model-form input,.ai-model-form select{width:100%;min-height:41px;padding:8px 10px;color:#314d68;background:#fff;border:1px solid #c7d7e4;border-radius:9px}.ai-connection-form .wide-field,.ai-model-form .wide-field{grid-column:1 / -1}.checkbox-line{display:flex!important;align-items:center}.checkbox-line input{width:auto;min-height:auto}.ai-connection-list{display:grid;gap:16px}.ai-connection-card{padding:20px;background:#fff;border:1px solid #dbe5f1;border-radius:22px}.ai-connection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.ai-connection-heading>div{display:grid;gap:5px}.ai-connection-heading strong{color:#092a55;font-size:19px}.ai-connection-heading small,.ai-connection-heading p,.ai-model-list small,.ai-model-list p,.teacher-ai-permissions small{color:#6c7e95}.ai-connection-heading p,.ai-model-list p{margin:0;overflow-wrap:anywhere}.status-pill.disabled{color:#667085;background:#eef1f5}.inline-actions{margin:16px 0;display:flex;flex-wrap:wrap;gap:9px}.inline-actions button{padding:9px 13px;color:#1b5fc1;background:#f1f6fd;border:0;border-radius:12px;cursor:pointer}.inline-actions .danger-text{color:#b42318;background:#fff1ef}.ai-model-form{margin:14px 0;background:#fbfcff}.ai-model-list{display:grid;gap:10px}.ai-model-list>div{padding:14px;display:flex;justify-content:space-between;gap:15px;background:#f7f9fc;border-radius:15px}.ai-model-list>div>div{display:grid;gap:4px}.ai-model-list .model-summary-button{align-self:stretch}.ai-model-list button{align-self:center;color:#1b5fc1;background:transparent;border:0;cursor:pointer}.teacher-ai-permissions{margin-top:8px;display:grid;gap:12px}.teacher-ai-permissions>article{padding:16px 18px;display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:center;gap:16px;background:#fff;border:1px solid #dbe5f1;border-radius:17px}.teacher-ai-permissions>article>div{display:grid;gap:3px}.teacher-ai-permissions label{display:flex;align-items:center;gap:7px;color:#334a68}.teacher-ai-permissions .form-error{grid-column:1 / -1}.brand-logo{width:64px;height:64px;flex:0 0 64px;object-fit:contain;border-radius:18px;background:#fff}.role-switch-slot{position:fixed;z-index:40;top:max(14px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));display:flex;align-items:flex-start;gap:8px}.password-change-control{position:relative;display:flex;align-items:center;gap:8px}.password-warning-button{min-height:36px;padding:7px 12px;color:#8a3c00;background:#fff3d6;border:1px solid #efbd65;border-radius:10px;font-weight:750}.password-change-popover{position:absolute;top:44px;right:0;width:min(360px,calc(100vw - 24px));padding:16px;display:grid;gap:11px;background:#fff;border:1px solid #c8d7e4;border-radius:14px;box-shadow:0 18px 50px #17345e33}.password-change-popover label{display:grid;gap:5px;color:#3d5a72;font-size:13px;font-weight:650}.password-change-popover input{min-height:40px;padding:8px 10px;border:1px solid #c8d7e4;border-radius:9px}.password-change-popover>div{display:flex;justify-content:flex-end;gap:8px}.password-change-message{max-width:220px;padding:7px 10px;color:#176047;background:#eaf8f1;border-radius:9px;font-size:12px}.password-direct-form{grid-template-columns:auto 1fr 1fr auto;padding-top:13px;border-top:1px solid #e2eaf1}.password-direct-form>small{grid-column:2 / -1;color:#6f8190}.global-role-switch{box-shadow:0 5px 18px #15497e2e}.teacher-class-grid>button,.student-class-grid>button{width:100%;padding:15px;display:flex;align-items:center;gap:12px;color:inherit;background:#fff;border:1px solid #dfe9f1;border-radius:13px;cursor:pointer;text-align:left;font:inherit}.teacher-class-grid>button>span,.student-class-grid>button>span{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;color:#146fc9;background:#e9f4ff;border-radius:11px;font-weight:800}.teacher-class-grid>button.selected-class,.student-class-grid>button.selected-class{outline:3px solid #5a9ee7;background:#eef7ff}.assignment-expand-button{margin-top:10px;padding:7px 10px;color:#1769b3;background:#edf6ff;border:0;border-radius:8px;cursor:pointer}.camera-guidance{display:block;color:#9a6521;font-weight:650}.camera-upload-label{margin-top:7px;display:inline-block;color:#1769b3;font-size:12px}.result-file-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.result-secondary-actions{margin-top:10px;padding:10px;display:flex;flex-wrap:wrap;gap:8px;background:#f5f8fb;border-radius:9px}.result-secondary-actions select,.result-secondary-actions button,.result-secondary-actions textarea{min-height:36px;padding:7px 9px;border:1px solid #cad8e4;border-radius:8px}.result-secondary-actions textarea{min-width:260px;flex:1;resize:vertical}.assignment-student-status{margin-top:12px;padding:10px 12px;background:#f6f9fc;border-radius:10px}.assignment-student-status summary{cursor:pointer;color:#315c80;font-weight:750}.assignment-student-status p{margin:7px 0 0;padding:7px;display:grid;grid-template-columns:1fr 1fr auto;gap:8px;background:#fff;border-radius:7px;font-size:12px}.job-progress-row{padding:9px 0;border-bottom:1px solid #e5edf4}.job-progress-row>p{margin:0 0 7px}.job-progress-preview>div{margin-top:8px;padding:10px;background:#f5f9fd;border-radius:9px}.job-progress-preview progress{width:min(320px,80%);margin-right:8px}.job-progress-preview p{margin:5px 0;color:#60788e;font-size:12px}.job-progress-preview .progress-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.job-progress-preview .progress-title-row small{color:#71869a}.job-progress-preview .progress-waiting{padding:8px 10px;color:#805b13;background:#fff7dd;border:1px solid #ead38d;border-radius:8px}.organization-ai-policy{display:grid;gap:18px}.organization-settings-form,.organization-ai-policy>.grading-template-form{padding:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:#fff;border:1px solid #dbe5f1;border-radius:18px}.organization-settings-form .section-title-row,.organization-ai-policy .section-title-row,.organization-settings-form .wide-field,.organization-ai-policy .wide-field{grid-column:1 / -1}.organization-settings-form label,.organization-ai-policy label{display:grid;gap:6px;color:#38546d;font-size:13px}.organization-settings-form input,.organization-settings-form select,.organization-settings-form textarea,.organization-ai-policy input,.organization-ai-policy select,.organization-ai-policy textarea{width:100%;min-height:40px;padding:8px 10px;border:1px solid #c9d8e4;border-radius:8px}.template-review-list{padding:18px;background:#fffaf0;border:1px solid #ead9b3;border-radius:16px}.template-review-list form{margin-top:10px;padding:12px;display:grid;gap:9px;background:#fff;border-radius:10px}.ai-chat-panel{display:grid;gap:13px}.ai-chat-loading,.ai-chat-empty{min-height:150px;display:grid;place-items:center;color:#7890a4;background:#f8fafc;border:1px dashed #d5e2ec;border-radius:12px}.ai-chat-toolbar{padding:13px 14px;display:flex;align-items:end;gap:14px;background:#f3f8fd;border-radius:13px}.ai-chat-toolbar label{min-width:min(360px,100%);display:grid;gap:6px;color:#3d5b73;font-size:13px;font-weight:700}.ai-chat-toolbar select{min-height:40px;padding:8px 10px;border:1px solid #cad9e5;border-radius:8px;background:#fff}.ai-chat-toolbar p{margin:0 0 3px;color:#7890a4;font-size:12px}.ai-chat-create,.ai-chat-send{padding:14px;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:9px;background:#f3f8fd;border-radius:13px}.ai-chat-create input,.ai-chat-create select,.ai-chat-send textarea,.ai-chat-send input{min-height:40px;padding:8px 10px;border:1px solid #cad9e5;border-radius:8px}.ai-chat-history-picker{align-items:end}.ai-chat-history-picker label{flex:1;min-width:min(360px,100%)}.ai-chat-history-actions{display:flex;align-items:center;gap:10px;margin-bottom:3px}.ai-chat-history-actions small{color:#7890a4;white-space:nowrap}.ai-chat-messages{min-height:360px;max-height:640px;padding:14px;display:grid;gap:10px;overflow-y:auto;background:#f8fafc;border-radius:12px}.ai-chat-messages article{max-width:88%;padding:10px 12px;background:#fff;border-radius:10px}.ai-chat-messages article.user{justify-self:end;background:#e8f3ff}.ai-chat-messages p{margin:5px 0 0;white-space:pre-wrap}.solution-explanation{margin-top:10px}.solution-explanation summary{cursor:pointer;color:#1b5fc1;font-weight:650}.solution-list{display:grid;gap:12px}.solution-record{padding:16px;background:#fff;border:1px solid #dce7f0;border-radius:14px}.solution-record>label{display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;color:#5f7898;font-size:12px}.solution-record .assistant>small{display:block;margin-top:3px;color:#7c90a3}.ai-chat-waiting{display:block;margin-top:8px;color:#1769e0;font-weight:700}.ai-chat-send{grid-template-columns:1fr auto}.ai-chat-send textarea{grid-column:1 / -1}.ai-chat-mode-note{margin:0;padding:9px 12px;color:#37556f;background:#eef6fc;border-radius:9px}.ai-chat-drop-zone{min-height:72px;padding:14px;display:grid;place-items:center;color:#3c607b;text-align:center;border:2px dashed #9fc3df;border-radius:10px;background:#fff;cursor:pointer}.ai-chat-drop-zone input{width:1px;height:1px;min-height:0;padding:0;opacity:0;position:absolute}.ai-chat-selected-files,.ai-chat-files{display:flex;flex-wrap:wrap;gap:7px}.ai-chat-selected-files{grid-column:1 / -1}.ai-chat-selected-files span,.ai-chat-files a{padding:6px 9px;color:#185fa8;background:#edf6ff;border-radius:8px;text-decoration:none}.ai-chat-selected-files button{margin-left:8px;padding:2px 5px;border:0;color:#a33324;background:transparent;cursor:pointer}.ai-chat-files{margin-top:9px}.ai-chat-files a:hover{text-decoration:underline}.ai-chat-progress{margin-top:9px;padding:8px 10px;color:#31536f;background:#f4f8fc;border-radius:9px}.ai-chat-progress summary{color:#1769e0;font-weight:800;cursor:pointer}.ai-chat-progress p{margin:7px 0 0;padding-left:15px;position:relative;font-size:13px}.ai-chat-progress p:before{content:"•";position:absolute;left:2px;color:#2c8b69}.collapsible-admin-section{padding:14px 16px;background:#f8fbfe;border:1px solid #dbe7f1;border-radius:15px}.collapsible-admin-section>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#163e69;cursor:pointer;font-size:17px;font-weight:800}.collapsible-admin-section>summary>span:first-child{display:grid;gap:3px}.collapsible-admin-section>summary small{color:#60788f;font-size:13px;font-weight:500}.collapsible-admin-section .summary-action{flex:0 0 auto;padding:7px 12px;color:#fff;background:#1769e0;border-radius:8px;font-size:13px;line-height:1}.collapsible-admin-section .summary-action:after{content:"修改"}.collapsible-admin-section[open] .summary-action:after{content:"收起"}.pdf-layout-editor{padding:18px;display:grid;gap:15px;background:#f8fbff;border:1px solid #cfe0f1;border-radius:18px}.pdf-layout-campus{max-width:420px;display:grid;gap:6px;color:#38546d;font-size:13px}.pdf-layout-campus select{min-height:42px;padding:8px 10px;border:1px solid #c9d8e4;border-radius:9px;background:#fff}.pdf-subject-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.pdf-subject-tabs button{min-height:68px;padding:10px 8px;display:grid;place-content:center;gap:4px;color:#245476;background:#fff;border:1px solid #cbddea;border-radius:11px;cursor:pointer}.pdf-subject-tabs button small{color:#71879a;font-size:11px;font-weight:500}.pdf-subject-tabs button.active{color:#fff;background:#1769e0;border-color:#1769e0;box-shadow:0 6px 16px #1769e02e}.pdf-subject-tabs button.active small{color:#e9f3ff}.pdf-layout-settings-form{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:13px}.pdf-layout-settings-form label{display:grid;gap:6px;color:#38546d;font-size:13px;font-weight:700}.pdf-layout-settings-form textarea{width:100%;min-height:220px;padding:11px 12px;border:1px solid #c9d8e4;border-radius:10px;resize:vertical;background:#fff;line-height:1.65}.pdf-layout-settings-form .form-help,.pdf-layout-settings-form .success-banner,.pdf-layout-settings-form>button{grid-column:1 / -1}.institution-template-page,.teacher-visible-templates,.account-all-permissions{display:grid;gap:13px}.institution-template-form{padding:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:#fff;border:1px solid #dbe5f1;border-radius:18px}.institution-template-form label{display:grid;gap:6px;color:#38546d;font-size:13px}.institution-template-form input,.institution-template-form select,.institution-template-form textarea{width:100%;min-height:40px;padding:8px 10px;border:1px solid #c9d8e4;border-radius:8px}.institution-template-form .wide-field{grid-column:1 / -1}.template-content-preview{margin:9px 0;padding:10px 12px;background:#f7fafc;border-radius:10px}.template-content-preview summary{color:#1b5fc1;cursor:pointer;font-weight:700}.template-content-preview p,.teacher-visible-templates p{white-space:pre-wrap;overflow-wrap:anywhere}.template-summary-button{display:grid;gap:4px;text-align:left}.directory-toolbar{margin-bottom:13px;display:flex;align-items:center;gap:10px}.directory-toolbar input{min-height:40px;flex:1;padding:8px 11px;border:1px solid #c9d8e4;border-radius:9px}.pagination{margin:15px 0 4px;display:flex;justify-content:center;align-items:center;gap:10px}.pagination button{min-height:36px;padding:7px 12px;color:#185fa8;background:#edf6ff;border:0;border-radius:8px;cursor:pointer}.pagination button:disabled{color:#98a6b5;background:#f1f3f5;cursor:default}.folded-list{margin-top:10px;padding:8px 11px;background:#f5f8fb;border-radius:9px}.folded-list summary{color:#315c80;cursor:pointer;font-weight:700}.account-all-permissions{margin-top:14px;padding:15px;background:#f6faff;border:1px solid #d7e6f3;border-radius:13px}.account-all-permissions fieldset{display:flex;flex-wrap:wrap;gap:10px 16px;border:1px solid #cfdeea;border-radius:10px}.account-all-permissions label{display:flex;align-items:center;gap:6px}@keyframes pulse{50%{opacity:.3;transform:scale(.8)}}@media(max-width:640px){.page-shell{padding:18px 12px;align-content:start}.app-card{border-radius:20px}.brand-header{padding:24px 20px}.brand-mark{width:52px;height:52px;flex-basis:52px;border-radius:16px}.content-panel{padding:26px 20px 30px}.form-grid{grid-template-columns:1fr}.form-grid label:nth-of-type(n){grid-column:1}.feature-grid{grid-template-columns:1fr}.dashboard-topline{align-items:flex-start}.admin-workspace{grid-template-columns:1fr}.admin-sidebar{padding:14px;display:grid;grid-template-columns:repeat(3,1fr);border-right:0;border-bottom:1px solid #e5edf5}.admin-user-card{grid-column:1 / -1;margin:0 0 5px;padding:0 0 12px}.sidebar-link{padding:9px 5px;text-align:center;font-size:12px}.logout-link{margin-top:0}.admin-main{padding:24px 18px 30px}.stat-grid{grid-template-columns:repeat(2,1fr)}.management-grid,.inline-create-form{grid-template-columns:1fr}.campus-list article{align-items:flex-start}.record-form{grid-template-columns:1fr}.record-form label,.record-form .wide-field{grid-column:1}.password-result{align-items:flex-start;flex-direction:column}.record-list article{align-items:flex-start}.account-record-group>article{flex-wrap:wrap}.account-actions{width:100%;padding-left:50px;flex-wrap:wrap}.assign-campus-form{grid-template-columns:1fr}.section-title-row{align-items:flex-start;flex-direction:column}.section-actions{width:100%;flex-wrap:wrap}.section-actions>*{flex:1}.upload-row{grid-template-columns:1fr}.preview-table p{grid-template-columns:1fr 1fr}.member-sections,.source-import-row{grid-template-columns:1fr}.detail-stats{grid-template-columns:repeat(3,1fr)}.campus-detail-lists,.account-affiliations,.detail-edit-form,.class-edit-form{grid-template-columns:1fr}.teacher-header{padding:22px 18px;align-items:flex-start}.teacher-main{padding:4px 18px 28px}.teacher-class-grid,.assistant-class-grid,.assistant-form{grid-template-columns:1fr}.assistant-form>label{grid-column:1}.choice-grid{grid-template-columns:1fr}.assistant-record-heading{align-items:flex-start;flex-wrap:wrap}.assistant-record-heading>div{flex-basis:calc(100% - 50px)}.assignment-form{grid-template-columns:1fr}.assignment-form>label{grid-column:1}.file-fieldset>label,.private-files>label{align-items:flex-start;flex-direction:column}.material-groups{grid-template-columns:1fr}.assignment-card-heading{flex-direction:column}.student-header{padding:22px 18px;align-items:flex-start}.student-main{padding:4px 18px 28px}.student-class-grid{grid-template-columns:1fr}.student-assignment-heading{flex-direction:column}.student-upload-box>label{align-items:flex-start;flex-direction:column}.student-upload-box input[type=file]{max-width:100%;width:100%}.selected-file-order>div{flex-wrap:wrap}.selected-file-order span{flex-basis:100%}.identity-add-form{grid-template-columns:1fr}.identity-add-form strong{grid-column:1}.student-offline-form{grid-template-columns:1fr}.student-offline-form .wide-field{grid-column:1}.grading-export-form{grid-template-columns:1fr}.grading-export-form fieldset,.grading-export-form .wide-field{grid-column:1}.grading-queue-list article{align-items:flex-start;flex-wrap:wrap}.ai-connection-form,.ai-model-form{grid-template-columns:1fr}.ai-connection-form .wide-field,.ai-model-form .wide-field{grid-column:1}.ai-connection-heading{display:grid}.teacher-ai-permissions>article{grid-template-columns:1fr;align-items:start}.organization-settings-form,.organization-ai-policy>.grading-template-form,.ai-chat-create,.ai-chat-send{grid-template-columns:1fr}.organization-settings-form .section-title-row,.organization-ai-policy .section-title-row,.organization-settings-form .wide-field,.organization-ai-policy .wide-field,.ai-chat-send textarea{grid-column:1}.ai-chat-toolbar{align-items:stretch;flex-direction:column}.ai-chat-toolbar label{min-width:0}.teacher-class-picker{align-items:stretch;flex-direction:column}.teacher-class-picker label{min-width:0}.ai-chat-history-picker{align-items:stretch}.ai-chat-history-picker label{min-width:0}.ai-chat-history-actions{justify-content:space-between;margin-bottom:0}.ai-chat-messages{min-height:300px;max-height:520px}.role-switch-slot{top:8px;right:8px}.institution-template-form{grid-template-columns:1fr}.institution-template-form .wide-field{grid-column:1}.directory-toolbar{align-items:stretch;flex-direction:column}.pdf-subject-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-layout-settings-form{grid-template-columns:1fr}.pdf-layout-settings-form .form-help,.pdf-layout-settings-form .success-banner,.pdf-layout-settings-form>button{grid-column:1}}
