.assignment-sdk-shell[data-v-996e9000]{display:grid;grid-template-rows:52px minmax(0,1fr);width:100%;height:100%;min-width:0;min-height:0;background:var(--page)}.assignment-sdk-header[data-v-996e9000]{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 22px;border-bottom:1px solid var(--border);background:#fffffff5}.assignment-sdk-brand[data-v-996e9000]{display:flex;align-items:center;gap:10px}.assignment-sdk-brand>div[data-v-996e9000]{display:grid}.assignment-sdk-brand strong[data-v-996e9000]{color:var(--text);font-size:14px}.assignment-sdk-brand small[data-v-996e9000]{margin-top:2px;color:var(--muted);font-size:13px}.assignment-hardware-button[data-v-996e9000]{position:relative;display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--muted);transition:border-color .18s ease,background .18s ease,color .18s ease}.assignment-hardware-button[data-v-996e9000]:hover{border-color:var(--success-border);background:var(--success-bg);color:var(--primary-hover)}.assignment-hardware-button i[data-v-996e9000]{position:absolute;top:5px;right:5px;width:7px;height:7px;border:2px solid #fff;border-radius:50%;background:var(--warning)}.assignment-hardware-button i.ready[data-v-996e9000]{background:var(--primary)}.assignment-sdk-stage[data-v-996e9000]{min-width:0;min-height:0;overflow:auto}.assignment-sdk-standalone[data-v-721caf26]{height:100dvh}:root{color:#333;background:#fafafa;font-family:Microsoft YaHei,Helvetica,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--primary: #4cbd74;--primary-hover: #3daa63;--primary-soft: #dbfce6;--action: #ff9800;--action-hover: #ff6f00;--action-pressed: #e68a00;--action-soft: #ffefd9;--secondary: #31abfc;--blue: #31abfc;--orange: #ff9800;--success: #56c179;--success-text: #2b6f43;--success-border: #bfe4bf;--success-bg: #f6fff9;--info-text: #0b6fae;--info-border: #a7dcff;--info-bg: #f5fbff;--danger: #fc303a;--danger-text: #b4232c;--danger-border: #ffa39e;--danger-bg: #fff1f0;--warning: #fc9d30;--warning-text: #8a5200;--warning-border: #ffe9a7;--warning-bg: #fffaeb;--text: #333333;--muted: #666666;--faint: #999999;--border: #eeeeee;--border-strong: #e2e2e2;--neutral-hover: #f8f8f8;--tag-bg: #f2f2f2;--surface: #ffffff;--surface-soft: #fafafa;--page: #fafafa;--shadow: 0 8px 24px rgba(51, 51, 51, .08);--sidebar-width: 244px;font-variant-numeric:tabular-nums}*{box-sizing:border-box}html,body,#app{width:100%;min-width:320px;height:100%;margin:0}body{overflow:hidden;background:var(--page)}button,input,textarea,select{font:inherit;letter-spacing:0}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid rgba(255,152,0,.3);outline-offset:2px}h1,h2,h3,p{margin:0}h1,h2,h3,strong{letter-spacing:0}.brand-mark{display:inline-flex;align-items:center;gap:11px;min-width:0;color:var(--primary)}.brand-symbol{position:relative;display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:8px;background:var(--primary);color:#fff;box-shadow:0 5px 12px #4cbd7433}.brand-symbol:after{position:absolute;right:-2px;bottom:-2px;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:var(--action);content:""}.brand-symbol svg{width:32px;height:32px}.brand-copy{display:grid;min-width:0}.brand-copy strong{color:var(--text);font-size:22px;line-height:1.2}.brand-copy small{margin-top:3px;color:var(--muted);font-size:13px}.brand-mark.compact .brand-symbol{width:38px;height:38px}.login-page{display:grid;grid-template-columns:minmax(520px,1.15fr) minmax(420px,.85fr);width:100%;height:100%;min-height:0;background:var(--surface-soft)}.login-visual{position:relative;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:46px 56px;background:#f6fff9}.login-visual>*{position:relative;z-index:1}.login-visual-copy{margin-top:clamp(70px,12vh,132px)}.eyebrow,.section-kicker{display:inline-block;color:var(--primary-hover);font-size:13px;font-weight:700;letter-spacing:0;text-transform:uppercase}.login-visual-copy h1{margin-top:16px;color:var(--text);font-size:clamp(42px,4vw,64px);line-height:1.2}.login-visual-copy p{max-width:560px;margin-top:20px;color:var(--muted);font-size:17px;line-height:1.8}.paper-scene{position:relative;width:min(560px,86%);height:270px;margin:auto auto 20px}.scanner-body{position:absolute;left:3%;bottom:0;width:82%;height:94px;border:1px solid rgba(37,92,58,.18);border-radius:8px;background:#34443b;box-shadow:0 24px 42px #28523a33}.scanner-body:before{position:absolute;top:16px;left:8%;width:65%;height:11px;border-radius:8px;background:#17231c;content:""}.scanner-body:after{position:absolute;top:15px;right:8%;width:11px;height:11px;border-radius:50%;background:#5fe795;box-shadow:0 0 12px #5fe795b3;content:""}.scanner-body span{position:absolute;bottom:-8px;left:7%;width:86%;height:14px;border-radius:50%;background:#162e2033;filter:blur(8px)}.paper-sheet{position:absolute;right:4%;bottom:34px;width:230px;height:285px;padding:28px 24px;border:1px solid var(--border-strong);border-radius:4px;background:#fff;box-shadow:0 18px 35px #365f462b;transform:rotate(5deg)}.paper-title{width:70%;height:8px;margin:0 auto 22px;background:#536159}.paper-line{width:100%;height:5px;margin-top:18px;border-radius:2px;background:#dce4df}.paper-line.short{width:62%}.grading-check{position:absolute;right:38px;bottom:78px;color:var(--danger);font-family:KaiTi,serif;font-size:62px;font-weight:700;transform:rotate(-9deg)}.grading-score{position:absolute;right:24px;bottom:42px;color:var(--danger);font-family:KaiTi,serif;font-size:25px;transform:rotate(-7deg)}.device-ready-row{display:flex;flex-wrap:wrap;gap:10px}.device-ready-row span{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--success-border);border-radius:8px;background:#ffffffa6;color:var(--success-text);font-size:13px}.device-ready-row svg{color:var(--primary)}.login-panel{display:grid;place-items:center;min-height:0;padding:48px;background:#fff}.login-form-wrap{width:min(390px,100%)}.mobile-brand{display:none;margin-bottom:44px}.login-kicker{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:6px;background:var(--primary-soft);color:var(--primary-hover);font-size:13px;font-weight:700}.login-form-wrap h2{margin-top:18px;color:#17231c;font-size:32px}.login-subtitle{margin-top:9px;color:var(--muted);font-size:14px}.login-form{display:grid;gap:20px;margin-top:34px}.login-form label{display:grid;gap:8px;color:#34443b;font-size:14px;font-weight:600}.login-options{display:flex;align-items:center;justify-content:space-between}.text-button{border:0;background:transparent;color:var(--action);font-size:14px}.text-button:hover{color:var(--action-hover)}.login-footnote{margin-top:36px;color:var(--faint);font-size:13px;text-align:center}.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);width:100%;height:100%;background:var(--page);transition:grid-template-columns .18s ease}.app-shell.nav-collapsed{--sidebar-width: 76px}.sidebar{position:relative;z-index:20;display:flex;flex-direction:column;min-width:0;padding:20px 14px 14px;border-right:1px solid var(--border);background:#fff;box-shadow:5px 0 20px #2a493708}.sidebar-brand{display:flex;min-height:52px;align-items:center;padding:0 8px 18px;overflow:hidden}.main-nav{display:grid;gap:5px;margin-top:12px}.nav-item,.collapse-button{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:0 13px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:14px;font-weight:600;text-align:left;transition:color .16s ease,background .16s ease,border-color .16s ease}.nav-item svg,.collapse-button svg{flex:0 0 auto}.nav-item:hover{background:var(--neutral-hover);color:var(--success-text)}.nav-item.active{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.nav-item.active:before{position:absolute;left:0;width:3px;height:24px;border-radius:0 3px 3px 0;background:var(--primary);content:""}.nav-collapsed .nav-item{justify-content:center;padding:0}.nav-collapsed .nav-item span,.nav-collapsed .collapse-button span{display:none}.sidebar-status{display:flex;gap:10px;align-items:center;min-height:60px;margin-top:auto;padding:10px;border:1px solid var(--success-border);border-radius:8px;background:var(--success-bg);overflow:hidden}.status-orb{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--primary-hover)}.sidebar-status>div:last-child{display:grid;min-width:0}.sidebar-status strong{overflow:hidden;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.sidebar-status span{margin-top:2px;color:var(--muted);font-size:13px}.nav-collapsed .sidebar-status{justify-content:center;padding:8px}.collapse-button{min-height:38px;margin-top:8px;color:var(--muted);font-size:13px}.collapse-button:hover{background:var(--surface-soft);color:var(--muted)}.nav-collapsed .collapse-button{justify-content:center;padding:0}.app-main{display:grid;grid-template-rows:68px minmax(0,1fr);min-width:0;min-height:0}.topbar{display:flex;z-index:10;align-items:center;justify-content:space-between;gap:20px;min-width:0;padding:0 24px;border-bottom:1px solid var(--border);background:#ffffffeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar-title{display:flex;align-items:center;gap:10px;min-width:0}.topbar-title>div{display:flex;align-items:baseline;gap:7px;min-width:0}.topbar-title h1{overflow:hidden;color:var(--text);font-size:18px;text-overflow:ellipsis;white-space:nowrap}.breadcrumb{color:var(--faint);font-size:13px}.mobile-menu{display:none}.topbar-actions{display:flex;align-items:center;gap:8px;min-width:0}.top-status{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:7px;background:var(--surface-soft);color:var(--muted);font-size:13px;white-space:nowrap}.top-status:first-child svg{color:var(--primary)}.account-button{display:flex;align-items:center;gap:8px;min-width:0;padding:4px 7px 4px 4px;border:0;border-radius:8px;background:transparent;color:var(--text)}.account-button:hover{background:var(--surface-soft)}.avatar,.mini-avatar{display:grid;place-items:center;flex:0 0 auto;border-radius:8px;background:var(--primary-soft);color:var(--success-text);font-weight:700}.avatar{width:36px;height:36px}.account-copy{display:grid;text-align:left}.account-copy strong{font-size:13px}.account-copy small{color:var(--muted);font-size:13px}.page-stage{min-width:0;min-height:0;overflow:auto;background:var(--page)}.page-content{width:min(1480px,100%);min-height:100%;margin:0 auto;padding:26px 28px 40px}.surface-panel{border:1px solid var(--border);border-radius:8px;background:#fffffff5;box-shadow:0 4px 18px #254f370b}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.compact-intro{margin-bottom:20px}.page-intro h2,.exam-detail-head h2,.profile-main h2{margin-top:7px;color:var(--text);font-size:27px}.page-intro p,.exam-detail-head p,.profile-main p{margin-top:7px;color:var(--muted);font-size:14px;line-height:1.6}.summary-pills{display:flex;gap:8px}.summary-pills span{padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--muted);font-size:13px}.summary-pills strong{color:var(--text);font-size:17px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading h3{margin-top:4px;color:var(--text);font-size:17px}.section-heading>span{color:var(--muted);font-size:13px}.welcome-band{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:148px;padding:26px 30px;overflow:hidden;border:1px solid #bfe4bf;border-radius:8px;background:#fff;box-shadow:var(--shadow)}.welcome-band h2{margin-top:7px;color:var(--text);font-size:28px}.welcome-band p{margin-top:8px;color:var(--muted);font-size:14px}.welcome-stat{position:relative;z-index:1;display:grid;grid-template-columns:auto auto;align-items:baseline;min-width:150px;padding:14px 18px;border:1px solid rgba(54,173,106,.18);border-radius:8px;background:#ffffffc7}.welcome-stat span{grid-column:1 / -1;color:var(--muted);font-size:13px}.welcome-stat strong{margin-top:2px;color:var(--primary-hover);font-size:38px}.welcome-stat small{margin-left:6px;color:var(--muted)}.quick-entry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.feature-entry{display:grid;grid-template-columns:44px minmax(0,1fr) 20px;gap:12px;align-items:center;min-height:102px;padding:16px;border:1px solid;border-radius:8px;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.feature-entry:hover{box-shadow:0 9px 22px #274a351a}.feature-entry>span:nth-child(2){display:grid;min-width:0}.feature-entry strong{color:var(--text);font-size:16px}.feature-entry small{margin-top:5px;color:var(--muted);font-size:13px;line-height:1.5}.entry-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:8px;color:#fff}.entry-primary{border-color:var(--success-border);background:var(--success-bg)}.entry-primary .entry-icon{background:var(--primary)}.entry-blue{border-color:var(--info-border);background:var(--info-bg)}.entry-blue .entry-icon{background:var(--blue)}.entry-orange{border-color:var(--warning-border);background:var(--warning-bg)}.entry-orange .entry-icon{background:var(--orange)}.entry-neutral{border-color:var(--border-strong);background:var(--surface-soft)}.entry-neutral .entry-icon{background:var(--muted)}.home-lower-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.75fr);gap:16px;margin-top:16px}.recent-exams-panel,.device-summary-panel{padding:20px}.recent-exam-list{display:grid;gap:4px;margin-top:13px}.recent-exam{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:center;width:100%;min-height:78px;padding:10px 4px;border:0;border-top:1px solid var(--neutral-hover);background:transparent;color:var(--text);text-align:left}.recent-exam:hover{background:var(--surface-soft)}.date-tile{display:grid;width:44px;height:48px;place-items:center;border-radius:7px;background:var(--success-bg);color:var(--success-text)}.date-tile strong{align-self:end;font-size:17px}.date-tile small{align-self:start;font-size:13px}.recent-exam-main{display:grid;min-width:0}.recent-exam-main>strong{font-size:14px}.recent-exam-main>small{margin-top:3px;color:var(--muted);font-size:13px}.subject-tags{display:flex;gap:5px;margin-top:7px}.subject-tags i,.soft-tag{padding:3px 6px;border-radius:5px;background:var(--neutral-hover);color:var(--muted);font-size:13px;font-style:normal}.recent-exam-meta{display:flex;align-items:center;gap:8px;color:var(--muted)}.recent-exam-meta small{font-size:13px}.online-pill,.health-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:6px;background:var(--success-bg);color:var(--success-text);font-size:13px;font-weight:700;white-space:nowrap}.online-pill i{width:6px;height:6px;border-radius:50%;background:var(--primary)}.device-mini-list{display:grid;gap:7px;margin-top:14px}.device-mini-item{display:grid;grid-template-columns:36px minmax(0,1fr) 8px;gap:9px;align-items:center;padding:9px;border-radius:7px;background:var(--surface-soft)}.device-mini-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:7px;background:#fff;color:var(--secondary)}.device-mini-item>span:nth-child(2){display:grid;min-width:0}.device-mini-item strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.device-mini-item small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.online-dot{width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.inline-action{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:10px;padding:9px 2px 0;border:0;background:transparent;color:var(--action);font-size:13px;font-weight:600}.filter-panel{display:grid;grid-template-columns:minmax(260px,1.2fr) 180px 210px auto auto;gap:10px;align-items:center;padding:13px}.filter-result{justify-self:end;color:var(--muted);font-size:13px;white-space:nowrap}.student-groups{display:grid;gap:14px;margin-top:14px}.grade-group{overflow:hidden}.grade-group-head{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--border);background:var(--surface-soft)}.grade-group-head>div{display:flex;align-items:center;gap:11px}.group-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:7px;background:var(--primary-soft);color:var(--primary-hover)}.grade-group-head h3{font-size:16px}.grade-group-head p{margin-top:3px;color:var(--muted);font-size:13px}.class-group{padding:15px 18px 18px}.class-group+.class-group{border-top:1px solid var(--neutral-hover)}.class-group-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.class-group-head strong{font-size:14px}.class-group-head span{padding:2px 6px;border-radius:4px;background:var(--tag-bg);color:var(--muted);font-size:13px}.student-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.student-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto 18px;gap:10px;align-items:center;min-height:78px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);text-align:left;transition:border-color .17s ease,background .17s ease,box-shadow .17s ease}.student-card:hover{border-color:var(--success-border);background:var(--success-bg);box-shadow:0 5px 13px #2b4f3712}.student-avatar{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;background:var(--success-bg);color:var(--success-text);font-size:15px;font-weight:700}.student-card-copy{display:grid;min-width:0}.student-card-copy strong{font-size:14px}.student-card-copy small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.student-score{display:grid;text-align:right}.student-score strong{color:var(--primary-hover);font-size:18px}.student-score small{color:var(--faint);font-size:13px}.empty-state{display:grid;min-height:300px;margin-top:14px;place-items:center;align-content:center;gap:8px;border:1px dashed var(--border);border-radius:8px;color:var(--muted)}.empty-state strong{color:var(--text)}.empty-state p{font-size:13px}.exam-filter{grid-template-columns:minmax(280px,1fr) 180px 180px auto}.exam-list{display:grid;gap:10px;margin-top:14px}.exam-card{display:grid;grid-template-columns:86px minmax(0,1fr) 130px;gap:18px;align-items:stretch;padding:16px;transition:border-color .18s ease,box-shadow .18s ease}.exam-card:hover{border-color:var(--success-border);box-shadow:var(--shadow)}.exam-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;border-radius:8px;background:var(--success-bg);color:var(--success-text)}.exam-date strong{margin-top:7px;font-size:29px}.exam-date span{margin-top:2px;color:var(--muted);font-size:13px}.exam-card-main{min-width:0}.exam-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.exam-card-title h3{font-size:17px}.exam-card-title p{margin-top:3px;color:var(--faint);font-size:13px}.exam-facts{display:flex;flex-wrap:wrap;gap:20px;margin-top:8px;color:var(--muted);font-size:13px}.exam-facts span{display:inline-flex;align-items:center;gap:5px}.subject-progress-list{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px;margin-top:13px}.subject-progress{padding:9px;border:1px solid var(--border);border-radius:7px;background:var(--surface-soft)}.subject-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.subject-progress strong{font-size:13px}.subject-progress small{display:block;margin-top:5px;color:var(--muted);font-size:13px}.status-label,.subject-progress .status-label{display:inline-flex;padding:3px 6px;border-radius:5px;font-size:13px;font-style:normal;font-weight:700;white-space:nowrap}.status-已发布{background:var(--success-bg)!important;color:var(--success-text)!important}.status-待复核{background:var(--warning-bg)!important;color:var(--warning-text)!important}.status-批阅中,.status-待扫描{background:var(--info-bg)!important;color:var(--info-text)!important}.exam-card-actions{display:flex;flex-direction:column;justify-content:center;gap:8px}.settings-panel{padding:8px 18px 20px}.device-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:10px}.device-detail-card{position:relative;display:grid;gap:13px;padding:17px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.device-detail-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--success-text)}.device-detail-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.device-detail-title span:first-child{color:var(--muted);font-size:13px}.device-detail-title h3{margin-top:3px;font-size:14px}.device-detail-card dl{display:grid;gap:8px;margin:0}.device-detail-card dl div{padding-top:8px;border-top:1px solid var(--border)}.device-detail-card dt{color:var(--muted);font-size:13px}.device-detail-card dd{margin:3px 0 0;color:var(--text);font-size:13px;line-height:1.5}.device-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:10px}.settings-info-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding:18px;border:1px solid var(--border);border-radius:8px}.settings-info-card>span{display:grid;width:46px;height:46px;place-items:center;border-radius:8px;background:var(--neutral-hover);color:var(--primary-hover)}.settings-info-card small,.settings-info-card p{color:var(--muted);font-size:13px}.settings-info-card h3{margin:3px 0;font-size:15px}.setting-list{display:grid;padding-top:8px}.setting-list>div{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px;padding:11px 4px;border-bottom:1px solid var(--border)}.setting-list>div>span{display:grid}.setting-list strong{font-size:14px}.setting-list small{margin-top:4px;color:var(--muted);font-size:13px}.detail-page{padding-top:18px}.back-link{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0;border:0;background:transparent;color:var(--action);font-size:13px;font-weight:600}.back-link:hover{color:var(--action-hover)}.student-profile-band,.exam-detail-head{display:flex;align-items:center;gap:16px;margin-top:10px;padding:20px 22px;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 4px 16px #294c360d}.profile-avatar{display:grid;flex:0 0 64px;width:64px;height:64px;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--success-text);font-size:25px;font-weight:800}.profile-main{min-width:0;margin-right:auto}.profile-main h2{font-size:23px}.profile-stat{display:grid;grid-template-columns:auto auto;align-items:baseline;min-width:106px;padding-left:18px;border-left:1px solid var(--border)}.profile-stat small{grid-column:1/-1;color:var(--muted);font-size:13px}.profile-stat strong{margin-top:3px;color:var(--text);font-size:25px}.profile-stat span{margin-left:4px;color:var(--muted);font-size:13px}.student-detail-panel{margin-top:14px;padding:8px 18px 20px}.record-timeline{display:grid;gap:10px;padding:8px 0 0 22px;border-left:1px solid var(--border)}.record-card{position:relative;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.timeline-dot{position:absolute;top:22px;left:-29px;width:12px;height:12px;border:3px solid #fff;border-radius:50%;background:var(--primary);box-shadow:0 0 0 1px var(--primary)}.record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.record-head small,.record-head p{color:var(--muted);font-size:13px}.record-head h3{margin:4px 0;font-size:15px}.record-total{display:grid;text-align:right}.record-total strong{color:var(--primary-hover);font-size:24px}.record-total small{font-size:13px}.record-subjects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px}.record-subjects button{display:grid;grid-template-columns:minmax(0,1fr) auto auto 16px;gap:8px;align-items:center;min-height:54px;padding:9px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text)}.record-subjects button:hover{border-color:var(--success-border);background:var(--surface-soft)}.record-subjects span{display:flex;align-items:center;gap:6px;font-size:13px}.record-subjects strong{font-size:16px}.record-subjects strong small{font-size:13px;font-weight:400}.record-subjects i{color:var(--primary-hover);font-size:13px;font-style:normal}.record-actions{margin-top:10px}.trend-toolbar,.report-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-top:8px}.trend-toolbar h3,.report-toolbar h3{font-size:16px}.trend-toolbar p,.report-toolbar p{margin-top:4px;color:var(--muted);font-size:13px}.trend-toolbar .n-select{width:150px}.trend-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px;margin-top:14px}.trend-chart-wrap{min-width:0;padding:16px;border:1px solid var(--border);border-radius:8px}.score-chart{display:block;width:100%;max-height:320px}.chart-grid line{stroke:var(--border);stroke-dasharray:4 5}.student-trend-line,.class-line{fill:none;stroke-linejoin:round;stroke-linecap:round;stroke-width:3}.student-trend-line{stroke:var(--primary)}.class-line{stroke:var(--secondary);stroke-dasharray:6 5;opacity:.7}.score-chart circle{fill:#fff;stroke:var(--primary);stroke-width:3}.chart-x-labels{fill:var(--muted);font-size:13px}.chart-legend{display:flex;justify-content:flex-end;gap:18px;color:var(--muted);font-size:13px}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{width:20px;height:3px}.legend-student{background:var(--primary)}.legend-class{background:var(--secondary)}.trend-insights{padding:17px;border:1px solid var(--success-border);border-radius:8px;background:var(--success-bg)}.trend-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--primary-hover)}.trend-insights>small{display:block;margin-top:18px;color:var(--muted);font-size:13px}.trend-insights>strong{display:block;margin-top:3px;color:var(--primary-hover);font-size:30px}.trend-insights>p{margin-top:7px;color:var(--muted);font-size:13px;line-height:1.7}.trend-insights dl{display:grid;gap:7px;margin:16px 0 0;padding-top:12px;border-top:1px solid var(--success-border)}.trend-insights dl div{display:flex;justify-content:space-between}.trend-insights dt{color:var(--muted);font-size:13px}.trend-insights dd{margin:0;font-size:13px;font-weight:700}.exam-detail-head{justify-content:space-between}.exam-detail-head>div:first-child{min-width:0}.detail-actions{display:flex;gap:8px}.subject-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.subject-switcher>button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;min-height:78px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fffc;color:var(--text);text-align:left}.subject-switcher>button:hover{border-color:var(--success-border)}.subject-switcher>button.active{border-color:var(--success-border);background:var(--success-bg);box-shadow:inset 0 0 0 1px #56c1791f}.subject-switcher>button>span{display:grid}.subject-switcher strong{font-size:14px}.subject-switcher small{margin-top:2px;color:var(--muted);font-size:13px}.subject-switcher i{padding:3px 6px;border-radius:5px;font-size:13px;font-style:normal;font-weight:700}.subject-switcher .n-progress{grid-column:1/-1}.exam-detail-grid{display:grid;grid-template-columns:310px minmax(0,1fr);gap:12px;margin-top:12px;align-items:stretch}.workflow-panel,.subject-overview-panel,.roster-summary-panel{padding:17px}.subject-overview-panel{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.workflow-list{display:grid;margin:14px 0}.workflow-item{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;width:100%;min-height:58px;padding:4px 6px;border:0;border-radius:7px;background:transparent;color:var(--muted);text-align:left;cursor:pointer;transition:background-color .2s ease,color .2s ease}.workflow-item:hover{background:var(--neutral-hover);color:var(--text)}.workflow-item:before{position:absolute;top:46px;bottom:-12px;left:16px;width:1px;background:var(--border);content:""}.workflow-item:last-child:before{display:none}.workflow-index{z-index:1;display:grid;width:33px;height:33px;place-items:center;border:1px solid var(--border-strong);border-radius:50%;background:#fff;font-size:13px;font-weight:700}.workflow-item>span:nth-child(2){display:grid}.workflow-item strong{font-size:13px}.workflow-item small{margin-top:3px;font-size:13px}.workflow-item.done{color:var(--success-text)}.workflow-item.done .workflow-index{border-color:var(--success-border);background:var(--primary-soft);color:var(--success-text)}.workflow-item.current{color:var(--text)}.workflow-item.current .workflow-index{border-color:var(--primary);background:var(--primary);color:#fff}.workflow-count{padding:4px 6px;border-radius:5px;background:var(--warning-bg);color:var(--warning-text);font-size:13px}.workflow-edit{color:var(--action);font-size:13px;font-weight:700}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.subject-overview-panel .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(118px,1fr));height:100%}.metric-grid>button{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;padding:11px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--text);text-align:left;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.metric-grid>button:hover{border-color:var(--success-border);background:var(--success-bg)}.metric-grid>button>svg{grid-column:3;grid-row:1 / span 2;align-self:center;color:var(--primary-hover)}.subject-overview-panel .metric-grid>button{align-content:center;min-height:118px;padding:18px}.metric-icon{display:grid;grid-row:span 2;width:36px;height:36px;place-items:center;border-radius:7px}.metric-icon.green{background:var(--primary-soft);color:var(--primary-hover)}.metric-icon.blue{background:var(--info-bg);color:var(--blue)}.metric-icon.orange{background:var(--warning-bg);color:var(--orange)}.metric-icon.violet{background:var(--info-bg);color:var(--info-text)}.metric-grid small{color:var(--muted);font-size:13px}.metric-grid strong{font-size:18px}.metric-grid strong i{margin-left:3px;color:var(--muted);font-size:13px;font-style:normal;font-weight:400}.attention-list{display:grid;margin-top:14px}.attention-head{display:flex;justify-content:space-between;margin-bottom:5px;font-size:13px}.attention-head span{color:var(--muted)}.attention-list>button{display:grid;grid-template-columns:45px minmax(0,1fr) auto 18px;gap:9px;align-items:center;min-height:56px;padding:7px 2px;border:0;border-top:1px solid var(--tag-bg);background:transparent;color:var(--text);text-align:left}.attention-list>button:hover{background:var(--surface-soft)}.attention-list>button>span:nth-child(2){display:grid;min-width:0}.attention-list>button strong{font-size:13px}.attention-list>button small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.question-no{display:grid;place-items:center;width:40px;min-height:30px;padding:3px;border-radius:6px;background:var(--neutral-hover);color:var(--success-text);font-size:13px;font-weight:700}.attention-list i,.question-list i{padding:3px 5px;border-radius:4px;font-size:13px;font-style:normal;white-space:nowrap}.question-待确认,.question-低置信度{background:var(--warning-bg);color:var(--warning-text)}.question-识别失败{background:var(--danger-bg);color:var(--danger)}.question-已确认{background:var(--success-bg);color:var(--success-text)}.roster-summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:12px}.roster-summary-list button{display:grid;grid-template-columns:34px minmax(0,1fr) auto 16px;gap:8px;align-items:center;min-height:50px;padding:7px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text);text-align:left}.roster-summary-list button:hover{border-color:var(--success-border);background:var(--success-bg)}.mini-avatar{width:32px;height:32px;font-size:13px}.roster-summary-list button>span:nth-child(2){display:grid;min-width:0}.roster-summary-list strong{font-size:13px}.roster-summary-list small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.student-state{color:var(--primary-hover);font-size:13px}.report-headline{margin-top:10px}.report-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}.report-metrics>div{display:grid;grid-template-columns:auto auto;align-items:baseline;padding:13px 15px;border:1px solid var(--border);border-radius:8px;background:#fff}.report-metrics small{grid-column:1/-1;color:var(--muted);font-size:13px}.report-metrics strong{margin-top:5px;color:var(--text);font-size:23px}.report-metrics span{margin-left:5px;color:var(--muted);font-size:13px}.report-table-panel{margin-top:12px;padding:17px}.report-toolbar>div:last-child{display:flex;gap:8px}.report-toolbar .n-select{width:150px}.table-scroll{margin-top:14px;overflow:auto;border:1px solid var(--border);border-radius:8px}.score-table{width:100%;min-width:850px;border-collapse:collapse;font-size:13px}.score-table th,.score-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.score-table th{background:var(--surface-soft);color:var(--muted);font-size:13px}.score-table th small{display:block;margin-top:2px;color:var(--muted);font-size:13px;font-weight:400}.score-table tbody tr:hover{background:var(--surface-soft)}.table-student{display:flex;align-items:center;gap:8px}.table-student>i{display:grid;width:28px;height:28px;place-items:center;border-radius:6px;background:var(--primary-soft);color:var(--success-text);font-style:normal;font-weight:700}.table-student>span{display:grid}.table-student small{color:var(--muted);font-size:13px}.unpublished{color:var(--warning-text);font-size:13px}.workbench-overlay{position:absolute;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:62px minmax(0,1fr);background:var(--neutral-hover);color:var(--text)}.workbench-topbar{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:18px;align-items:center;padding:0 16px;border-bottom:1px solid var(--border);background:#fff;box-shadow:0 2px 10px #24412f0d}.workbench-back{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 11px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text);font-size:13px;font-weight:600}.workbench-back:hover{border-color:var(--success-border);background:var(--success-bg);color:var(--primary-hover)}.workbench-context{display:flex;align-items:center;justify-content:center;gap:12px;min-width:0}.workbench-context>span{display:grid;min-width:0}.workbench-context small{color:var(--muted);font-size:13px}.workbench-context strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.workbench-context>i{width:1px;height:26px;background:var(--border)}.workbench-context .context-detail{display:block;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.focus-mode-context strong{color:var(--primary-hover)}.workbench-score{display:flex;align-items:baseline;gap:4px;white-space:nowrap}.workbench-score>small{color:var(--muted);font-size:13px}.workbench-score>strong{color:var(--primary-hover);font-size:20px}.workbench-score>span{margin-right:7px;color:var(--muted);font-size:13px}.workbench-body{display:grid;grid-template-columns:254px minmax(540px,1fr) 330px;min-width:0;min-height:0}.workbench-nav{display:grid;grid-template-rows:minmax(300px,1fr) minmax(260px,.9fr);min-width:0;min-height:0;border-right:1px solid var(--border-strong);background:var(--surface-soft)}.workbench-students,.workbench-questions{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);min-height:0;padding:12px}.workbench-questions{grid-template-rows:auto auto minmax(0,1fr);border-top:1px solid var(--border)}.workbench-section-title{display:flex;align-items:center;justify-content:space-between;min-height:34px}.workbench-section-title>div{display:flex;align-items:center;gap:7px}.workbench-section-title strong{font-size:13px}.workbench-section-title span{padding:2px 5px;border-radius:4px;background:var(--success-bg);color:var(--success-text);font-size:13px}.workbench-section-title>small{color:var(--muted);font-size:13px}.workbench-section-title>button{border:0;background:transparent;color:var(--muted)}.compact-filter-row{display:flex;gap:4px;padding:8px 0;overflow:hidden}.compact-filter-row button{flex:1;min-width:0;height:26px;padding:0 4px;border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--muted);font-size:13px;white-space:nowrap}.compact-filter-row button:hover,.compact-filter-row button.active{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.workbench-student-list,.question-list{min-height:0;overflow:auto}.workbench-student-list>button{display:grid;grid-template-columns:32px minmax(0,1fr) 19px;gap:7px;align-items:center;width:100%;min-height:45px;padding:6px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);text-align:left}.workbench-student-list>button:hover{background:var(--neutral-hover)}.workbench-student-list>button.active{border-color:var(--success-border);background:var(--success-bg)}.workbench-student-list button>span:nth-child(2){display:grid;min-width:0}.workbench-student-list strong{font-size:13px}.workbench-student-list small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.workbench-student-list i{display:grid;width:18px;height:18px;place-items:center;border-radius:50%;background:var(--primary);color:#fff}.workbench-student-list em{width:6px;height:6px;justify-self:center;border-radius:50%;background:var(--border-strong)}.question-list button{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:7px;align-items:center;width:100%;min-height:43px;padding:5px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);text-align:left}.question-list button:hover{background:var(--neutral-hover)}.question-list button.active{border-color:var(--success-border);background:var(--success-bg)}.question-list button>span:nth-child(2){display:grid}.question-list strong{font-size:13px}.question-list small{margin-top:2px;color:var(--muted);font-size:13px}.paper-workspace{display:grid;grid-template-rows:52px minmax(0,1fr) 34px;min-width:0;min-height:0;background:var(--neutral-hover)}.paper-toolbar{display:grid;grid-template-columns:minmax(160px,1fr) auto minmax(280px,1fr);gap:10px;align-items:center;padding:0 12px;border-bottom:1px solid var(--border);background:#fff}.question-context{display:flex;align-items:center;gap:8px;min-width:0}.question-context strong{font-size:13px}.question-context span{overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.segmented-control{display:flex;padding:3px;border-radius:7px;background:var(--neutral-hover)}.segmented-control button{min-width:64px;height:28px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:13px}.segmented-control button.active{background:#fff;color:var(--success-text);font-weight:700;box-shadow:0 2px 5px #253d2e14}.paper-tools{display:flex;justify-content:flex-end;gap:3px}.paper-tools button{display:grid;width:29px;height:29px;place-items:center;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted)}.paper-tools button:hover{border-color:var(--border);background:var(--neutral-hover);color:var(--primary-hover)}.tool-divider{width:1px;margin:4px 2px;background:var(--border)}.half-mark-toggle{display:inline-flex;align-items:center;gap:4px;margin-left:3px;color:var(--muted);font-size:13px;white-space:nowrap}.paper-canvas-stage{position:relative;min-height:0;overflow:auto;padding:32px;background:var(--neutral-hover)}.zoom-indicator{position:sticky;z-index:2;top:0;left:0;width:fit-content;padding:5px 7px;border-radius:5px;background:#28352ebf;color:#fff;font-size:13px}.answer-paper{position:relative;width:650px;min-height:760px;margin:0 auto;padding:42px 48px;border:1px solid var(--border);border-radius:3px;background:#fff;box-shadow:0 14px 30px #28362e24;transform-origin:top center;transition:transform .16s ease}.answer-paper-head{padding-bottom:22px;border-bottom:2px solid var(--text);text-align:center}.answer-paper-head span{color:var(--text);font-size:13px}.answer-paper-head h2{margin-top:9px;font-family:SimSun,serif;font-size:22px}.answer-paper-head p{margin-top:11px;font-size:13px}.paper-question-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;margin-top:30px;font-family:SimSun,serif;font-size:14px;line-height:1.8}.paper-question-title i{font-size:13px;font-style:normal}.geometry-answer{position:relative;min-height:330px;margin-top:22px;padding:20px;border:1px solid var(--border)}.geometry-figure{position:relative;width:170px;height:110px;margin:10px auto 30px}.geometry-figure .line-a,.geometry-figure .line-b{position:absolute;top:52px;left:8px;width:155px;height:2px;background:var(--text);transform:rotate(24deg)}.geometry-figure .line-b{transform:rotate(-24deg)}.geometry-figure i{position:absolute;top:43px;left:80px;font-style:normal}.geometry-figure b{position:absolute;font-size:13px}.geometry-figure b:nth-of-type(1){top:10px;left:8px}.geometry-figure b:nth-of-type(2){right:6px;bottom:7px}.geometry-figure b:nth-of-type(3){right:8px;top:7px}.geometry-figure b:nth-of-type(4){left:5px;bottom:7px}.handwriting{color:var(--text);font-family:KaiTi,STKaiti,serif;font-size:17px;line-height:1.55;transform:rotate(-.4deg)}.handwriting p+p{margin-top:5px}.grading-mark{position:absolute;right:68px;bottom:58px;color:var(--danger);font-family:KaiTi,serif;font-size:66px;font-weight:700;transform:rotate(-8deg)}.grading-mark span{display:block;margin-top:-18px;margin-left:32px;font-size:18px}.grading-mark.cross{font-size:58px}.grading-mark.half{font-size:52px}.grading-note{position:absolute;right:18px;top:112px;color:var(--danger);font-family:KaiTi,serif;font-size:15px;line-height:1.4;transform:rotate(-6deg)}.paper-answer-section{margin-top:25px;padding:13px;border-left:3px solid var(--faint);background:var(--surface-soft);font-family:SimSun,serif}.paper-answer-section strong{font-size:13px}.paper-answer-section p{margin-top:7px;font-size:13px;line-height:1.7}.reference-panel{width:650px;margin:12px auto 120px;border:1px solid var(--border);border-radius:6px;background:#fff;transform-origin:top center}.reference-panel>header{display:flex;align-items:center;justify-content:space-between;padding:6px}.reference-panel>header>div{display:flex;gap:4px}.reference-panel button{min-height:26px;padding:0 8px;border:0;border-radius:4px;background:transparent;color:var(--muted);font-size:13px}.reference-panel button.active{background:var(--success-bg);color:var(--primary-hover)}.reference-panel>header>button{display:inline-flex;align-items:center;gap:4px}.reference-panel>div{max-height:150px;padding:10px 12px;overflow:auto;border-top:1px solid var(--border);color:var(--text);font-size:13px;line-height:1.7}.paper-footer{display:grid;grid-template-columns:auto minmax(100px,180px) 40px;gap:10px;align-items:center;justify-content:center;padding:0 14px;border-top:1px solid var(--border);background:#fff;color:var(--muted);font-size:13px}.scoring-panel{display:grid;grid-template-rows:minmax(0,1fr) 58px;min-width:0;min-height:0;border-left:1px solid var(--border);background:#fff}.scoring-scroll{min-height:0;overflow:auto}.scoring-block{padding:14px;border-bottom:1px solid var(--border)}.scoring-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.scoring-title strong{display:inline-flex;align-items:center;gap:6px;font-size:13px}.scoring-title>span{color:var(--muted);font-size:13px}.question-info dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}.question-info dl div{padding:8px;border-radius:6px;background:var(--surface-soft)}.question-info dt{color:var(--muted);font-size:13px}.question-info dd{margin:3px 0 0;font-size:13px;font-weight:700}.ai-suggestion{background:var(--success-bg)}.ai-suggestion .scoring-title strong{color:var(--primary-hover)}.ai-suggestion .scoring-title>span{padding:4px 7px;border-radius:5px;background:var(--primary-soft);color:var(--success-text);font-weight:700}.ai-suggestion>p{color:var(--text);font-size:13px;line-height:1.7}.rubric-list{display:grid;gap:5px;margin-top:10px}.rubric-list span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.rubric-list svg{color:var(--primary)}.rubric-list .rubric-warning{color:var(--warning-text)}.score-editor{display:flex;align-items:center;gap:8px}.score-editor .n-input-number{flex:1}.score-editor>span{color:var(--muted);font-size:13px}.quick-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:7px}.quick-scores button,.comment-chips button{min-height:27px;border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--muted);font-size:13px}.quick-scores button:hover,.comment-chips button:hover{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.comment-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.comment-chips button{min-height:25px;padding:0 7px}.scoring-actions{display:grid;grid-template-columns:.75fr 1.25fr;gap:7px;align-items:center;padding:9px 12px;border-top:1px solid var(--border);box-shadow:0 -4px 12px #2741310a}@media (max-width: 1260px){.quick-entry-grid,.student-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.device-detail-grid{grid-template-columns:1fr}.workbench-body{grid-template-columns:220px minmax(480px,1fr) 300px}.workbench-context .context-detail{display:none}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1024px){:root{--sidebar-width: 76px}.sidebar .brand-copy,.sidebar .nav-item span,.sidebar .collapse-button span{display:none}.sidebar .nav-item,.sidebar .collapse-button{justify-content:center;padding:0}.sidebar-status{justify-content:center;padding:8px}.sidebar-status>div:last-child{display:none}.page-content{padding:22px 20px 34px}.top-status:nth-child(2){display:none}.filter-panel,.exam-filter{grid-template-columns:minmax(220px,1fr) 160px 180px}.filter-panel .filter-result,.exam-filter .filter-result{grid-column:1/-1;justify-self:start}.home-lower-grid{grid-template-columns:1fr}.subject-progress-list,.record-subjects{grid-template-columns:repeat(2,minmax(0,1fr))}.exam-detail-grid{grid-template-columns:260px minmax(0,1fr)}.roster-summary-list{grid-template-columns:1fr}.workbench-topbar{grid-template-columns:150px minmax(0,1fr) auto}.workbench-score>small,.workbench-score>strong,.workbench-score>span{display:none}.workbench-body{grid-template-columns:200px minmax(430px,1fr) 280px}.paper-toolbar{grid-template-columns:140px auto 1fr}.paper-tools button:nth-child(-n+2){display:none}}@media (max-width: 820px){body{overflow:auto}.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100%}.mobile-brand{display:block}.app-shell{grid-template-columns:1fr;height:100%;min-height:0}.sidebar{display:none}.app-main{grid-template-rows:62px minmax(0,1fr);min-height:0}.page-stage{overflow:visible}.mobile-menu{display:block}.topbar{padding:0 14px}.top-status,.account-copy{display:none}.welcome-band,.student-profile-band,.exam-detail-head,.page-intro{align-items:flex-start;flex-direction:column}.welcome-stat{align-self:stretch}.quick-entry-grid,.filter-panel,.exam-filter{grid-template-columns:1fr}.filter-panel .filter-result,.exam-filter .filter-result{grid-column:auto}.student-card-grid,.settings-form-grid,.subject-switcher,.report-metrics{grid-template-columns:1fr}.exam-card{grid-template-columns:64px minmax(0,1fr)}.exam-date{min-height:130px}.exam-card-actions{grid-column:1/-1;flex-direction:row}.subject-progress-list{grid-template-columns:1fr}.profile-stat{width:100%;padding:8px 0 0;border-top:1px solid var(--border);border-left:0}.trend-layout,.exam-detail-grid{grid-template-columns:1fr}.workflow-panel{grid-row:auto}.record-subjects,.roster-summary-list{grid-template-columns:1fr}.report-toolbar{flex-direction:column}.report-toolbar>div:last-child{width:100%}.report-toolbar .n-select{flex:1;width:auto}.workbench-overlay{position:absolute;min-width:760px}.workbench-body{grid-template-columns:190px minmax(400px,1fr)}.scoring-panel{position:absolute;z-index:1010;top:62px;right:0;bottom:0;width:290px;box-shadow:-8px 0 24px #20342829}.paper-workspace{margin-right:290px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.editor-heading{margin-top:10px}.draft-state{padding:7px 10px;border-radius:6px;background:var(--surface-soft);color:var(--primary-hover);font-size:13px}.editor-layout{display:grid;gap:12px}.editor-section{padding:18px}.editor-section-head{display:flex;align-items:center;gap:11px;margin-bottom:16px}.editor-section-head>span{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:var(--primary-soft);color:var(--primary-hover);font-size:13px;font-weight:800}.editor-section-head>div{min-width:0;margin-right:auto}.editor-section-head h3{font-size:15px}.editor-section-head p{margin-top:3px;color:var(--muted);font-size:13px}.editor-section-head>strong{color:var(--primary-hover);font-size:13px}.form-grid,.template-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid label,.template-form-grid label,.property-panel label,.print-settings label,.export-dialog-content label{display:grid;gap:6px;min-width:0}.form-grid label>span,.template-form-grid label>span,.property-panel label>span,.print-settings label>span,.export-dialog-content label>span{color:var(--text);font-size:13px;font-weight:700}.form-grid label i,.property-panel label i{color:var(--danger);font-style:normal}.subject-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.subject-choice-grid button{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 14px;border:1px solid var(--border-strong);border-radius:7px;background:#fff;color:var(--text)}.subject-choice-grid button:hover{border-color:var(--success-border)}.subject-choice-grid button.active{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text);font-weight:700}.subject-choice-grid i,.class-choice-grid i,.candidate-list i,.print-roster i{display:grid;width:20px;height:20px;place-items:center;border:1px solid var(--border-strong);border-radius:50%;color:transparent}.subject-choice-grid button.active i,.class-choice-grid button.active i,.candidate-list button.active i,.print-roster button.active i{border-color:var(--primary);background:var(--primary);color:#fff}.class-choice-toolbar{display:flex;gap:8px;margin-bottom:10px}.class-choice-toolbar .n-input{max-width:300px}.class-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.class-choice-grid button{display:grid;grid-template-columns:28px minmax(0,1fr) 20px;gap:8px;align-items:center;min-height:60px;padding:9px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text);text-align:left}.class-choice-grid button:hover,.class-choice-grid button.active{border-color:var(--success-border);background:var(--success-bg)}.class-choice-grid span{display:grid}.class-choice-grid strong{font-size:13px}.class-choice-grid small{margin-top:3px;color:var(--muted);font-size:13px}.page-action-footer{position:sticky;z-index:5;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:64px;margin:18px -28px -40px;padding:10px 28px;border-top:1px solid var(--border-strong);background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.page-action-footer>span{margin-right:auto;color:var(--muted);font-size:13px}.roster-filter{display:grid;grid-template-columns:150px 150px minmax(260px,1fr) auto;gap:8px;padding:12px}.roster-editor-layout{display:grid;grid-template-columns:220px minmax(420px,1fr) 290px;gap:10px;height:calc(100dvh - 285px);min-height:500px;margin-top:10px}.roster-tree,.roster-candidates,.selected-roster{min-height:0;overflow:hidden;padding:12px}.roster-tree,.roster-candidates{display:grid;grid-template-rows:auto minmax(0,1fr)}.roster-tree{display:block;overflow:auto}.roster-column-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px;padding-bottom:9px;border-bottom:1px solid var(--border)}.roster-column-head>div{display:grid}.roster-column-head strong{font-size:13px}.roster-column-head small{margin-top:2px;color:var(--muted);font-size:13px}.roster-column-head>span{color:var(--muted);font-size:13px}.grade-tree-root{display:grid;grid-template-columns:24px minmax(0,1fr);gap:7px;align-items:center;margin-top:10px;padding:8px;border-radius:6px;background:var(--surface-soft);color:var(--success-text)}.grade-tree-root span{display:grid}.grade-tree-root strong{font-size:13px}.grade-tree-root small{color:var(--muted);font-size:13px}.roster-tree>button{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;min-height:48px;padding:7px 8px 7px 28px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left}.roster-tree>button:hover,.roster-tree>button.active{background:var(--success-bg)}.roster-tree>button span{display:grid}.roster-tree>button strong{font-size:13px}.roster-tree>button small{margin-top:2px;color:var(--muted);font-size:13px}.all-students-node{justify-content:flex-start!important;color:var(--primary-hover)!important;font-size:13px}.candidate-list{min-height:0;overflow:auto;padding-top:8px}.candidate-list>button{display:grid;grid-template-columns:34px minmax(0,1fr) 20px;gap:8px;align-items:center;width:100%;min-height:58px;padding:7px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text);text-align:left}.candidate-list>button:hover,.candidate-list>button.active{border-color:var(--success-border);background:var(--success-bg)}.candidate-list>button>span:nth-child(2){display:grid;min-width:0}.candidate-list strong{font-size:13px}.candidate-list small{margin-top:2px;color:var(--muted);font-size:13px}.selected-roster{display:grid;grid-template-rows:auto minmax(0,1fr)}.selected-roster-scroll{min-height:0;overflow:auto;padding-top:7px}.selected-roster-scroll section{margin-bottom:9px;border:1px solid var(--border);border-radius:7px;overflow:hidden}.selected-roster-scroll header{display:flex;align-items:center;justify-content:space-between;padding:7px 8px;background:var(--surface-soft)}.selected-roster-scroll header span{display:flex;align-items:center;gap:6px}.selected-roster-scroll header strong{font-size:13px}.selected-roster-scroll header small{color:var(--muted);font-size:13px}.selected-roster-scroll header button{border:0;background:transparent;color:var(--danger)}.selected-roster-scroll section>div{padding:4px 7px}.selected-roster-scroll section>div button{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;gap:6px;align-items:center;width:100%;min-height:32px;border:0;border-top:1px solid var(--neutral-hover);background:transparent;color:var(--text);text-align:left}.selected-roster-scroll section>div span{font-size:13px}.selected-roster-scroll section>div small{color:var(--muted);font-size:13px}.selected-roster-scroll section>div svg{color:var(--danger)}.exam-filter-complete{display:grid;grid-template-columns:minmax(220px,1fr) 260px repeat(4,140px) auto;gap:8px;align-items:center;padding:12px}.exam-card-complete{overflow:hidden}.exam-card-complete.archived{opacity:.72}.exam-pagination{display:flex;justify-content:center;margin-top:14px}.exam-main-row{display:grid;grid-template-columns:86px minmax(0,1fr) 132px;gap:16px;padding:14px}.title-with-status{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.exam-status{padding:3px 6px;border-radius:5px;font-size:13px;font-weight:700}.exam-status-草稿{background:var(--info-bg);color:var(--info-text)}.exam-status-进行中{background:var(--success-bg);color:var(--success-text)}.exam-status-已结束{background:var(--info-bg);color:var(--info-text)}.exam-status-已归档{background:var(--tag-bg);color:var(--muted)}.exam-quick-actions{display:flex;flex-direction:column;justify-content:center;gap:7px}.rotated{transform:rotate(180deg)}.exam-secondary-actions{display:flex;flex-wrap:wrap;gap:4px;padding:8px 14px;border-top:1px solid var(--neutral-hover);background:var(--surface-soft)}.exam-secondary-actions button,.detail-secondary-bar button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 9px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:13px}.exam-secondary-actions button:hover,.detail-secondary-bar button:hover{background:var(--action-soft);color:var(--action-hover)}.expanded-subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 14px 14px;border-top:1px solid var(--border);background:var(--surface-soft)}.expanded-subject-card{padding:12px;border:1px solid var(--border);border-radius:7px;background:#fff}.expanded-subject-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.expanded-subject-card header>div{display:grid}.expanded-subject-card header strong{font-size:13px}.expanded-subject-card header span{margin-top:3px;color:var(--muted);font-size:13px}.expanded-subject-card header i{padding:3px 6px;border-radius:5px;font-size:13px;font-style:normal}.subject-state-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0}.subject-state-grid span{display:grid;padding:7px;border-radius:6px;background:var(--surface-soft)}.subject-state-grid small{color:var(--muted);font-size:13px}.subject-state-grid strong{margin-top:2px;font-size:13px}.expanded-subject-card footer{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.detail-actions-wrap{flex-wrap:wrap;justify-content:flex-end}.detail-secondary-bar{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}.subject-class-bar{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:#fff}.subject-class-bar strong{margin-right:5px;font-size:13px}.subject-class-bar button{min-height:28px;padding:0 9px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted);font-size:13px}.subject-class-bar button.active{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.subject-class-bar>span{margin-left:auto;color:var(--muted);font-size:13px}.subject-operation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}.subject-operation-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px 12px;padding:14px}.operation-icon{display:grid;grid-row:span 2;width:44px;height:44px;place-items:center;border-radius:8px}.operation-icon.green{background:var(--primary-soft);color:var(--success-text)}.operation-icon.blue,.operation-icon.violet{background:var(--info-bg);color:var(--info-text)}.subject-operation-card small{color:var(--muted);font-size:13px}.subject-operation-card h3{margin-top:2px;font-size:20px}.subject-operation-card p{margin-top:3px;color:var(--muted);font-size:13px}.subject-operation-card>.n-progress{grid-column:1/-1}.subject-operation-card footer{display:flex;gap:5px;grid-column:1/-1}.subject-tabs-panel{margin-top:10px;padding:8px 15px 15px}.subject-tab-toolbar{display:grid;grid-template-columns:170px minmax(260px,1fr) auto auto;gap:9px;align-items:center;padding-top:8px}.candidate-table .table-actions{display:flex;flex-wrap:wrap;gap:4px}.table-actions button,.table-name,.matrix-score{border:0;background:transparent;color:var(--action);font-size:13px}.table-name{font-weight:700}.match-success,.match-warning{padding:3px 5px;border-radius:4px;font-size:13px}.match-success{background:var(--success-bg);color:var(--success-text)}.match-warning{background:var(--warning-bg);color:var(--warning-text)}.overall-progress{padding:12px;border-radius:7px;background:var(--surface-soft)}.overall-progress>div{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px}.overall-progress span{color:var(--muted)}.progress-list{display:grid;margin-top:9px}.progress-list>div{display:grid;grid-template-columns:34px 100px minmax(120px,1fr) repeat(5,minmax(90px,.7fr));gap:8px;align-items:center;min-height:49px;border-bottom:1px solid var(--border);font-size:13px}.progress-list>div>span{color:var(--muted)}.progress-list i{display:inline-flex;align-items:center;gap:4px;font-style:normal}.progress-list i.done{color:var(--success-text)}.progress-list i.warning{color:var(--warning-text)}.progress-list i.pending{color:var(--muted)}.score-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-top:8px}.score-summary-grid>div{display:grid;padding:11px;border:1px solid var(--border);border-radius:7px;background:var(--surface-soft)}.score-summary-grid small{color:var(--muted);font-size:13px}.score-summary-grid strong{margin-top:3px;font-size:20px}.score-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.matrix-score{min-width:45px;padding:4px;border-radius:4px}.matrix-score:hover{background:var(--success-bg)}.report-subject-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.report-subject-status button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:10px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text);text-align:left}.report-subject-status button:hover,.report-subject-status button.active{border-color:var(--success-border);background:var(--success-bg)}.report-subject-status strong{font-size:13px}.report-subject-status span{color:var(--primary-hover);font-size:13px}.report-subject-status i{grid-column:1/-1;color:var(--muted);font-size:13px;font-style:normal}.report-score-cell{display:grid}.report-score-cell small{margin-top:2px;color:var(--muted);font-size:13px}.global-dialog-card{width:min(560px,calc(100vw - 32px));border-radius:8px!important}.confirm-dialog-content{display:grid;grid-template-columns:46px minmax(0,1fr);gap:13px;align-items:start;padding:4px 0 12px}.confirm-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:8px;background:var(--warning-bg);color:var(--warning)}.confirm-dialog-content strong{font-size:14px}.confirm-dialog-content p{margin-top:7px;color:var(--muted);font-size:13px;line-height:1.65}.dialog-footer{display:flex;justify-content:flex-end;gap:7px}.import-dialog-content,.export-dialog-content,.match-dialog-content{display:grid;gap:12px}.template-download{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:7px;background:var(--success-bg)}.template-download>span{display:grid}.template-download strong{font-size:13px}.template-download small{margin-top:2px;color:var(--muted);font-size:13px}.file-dropzone{display:grid;min-height:150px;place-items:center;align-content:center;gap:7px;border:1px dashed var(--success-border);border-radius:8px;background:var(--success-bg);color:var(--success-text);cursor:pointer}.file-dropzone:hover{background:var(--success-bg)}.file-dropzone strong{font-size:13px}.file-dropzone small{color:var(--muted);font-size:13px}.file-dropzone input{display:none}.validation-result{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px;border-radius:7px;background:var(--success-bg);color:var(--success-text)}.validation-result>span{display:grid}.validation-result strong{font-size:13px}.validation-result small{margin-top:2px;font-size:13px}.export-dialog-content>div{display:flex;flex-wrap:wrap;gap:8px}.export-dialog-content>div>span{flex-basis:100%;font-size:13px;font-weight:700}.export-progress{display:grid!important}.export-progress small{color:var(--muted);font-size:13px}.diagnostic-content{display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px}.diagnostic-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--success-text)}.diagnostic-content p{margin-top:5px;color:var(--muted);font-size:13px}.diagnostic-content dl{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,1fr);gap:7px;margin:5px 0 0}.diagnostic-content dl div{padding:8px;border-radius:6px;background:var(--surface-soft)}.diagnostic-content dt{color:var(--muted);font-size:13px}.diagnostic-content dd{margin:2px 0 0;font-size:13px;font-weight:700}.recognized-number{display:flex;align-items:center;gap:9px;padding:10px;border-radius:7px;background:var(--surface-soft)}.recognized-number span{display:grid}.recognized-number small{color:var(--muted);font-size:13px}.recognized-number strong{margin-top:2px;font-size:15px}.match-dialog-content p{color:var(--muted);font-size:13px;line-height:1.6}@media (max-width: 1200px){.exam-filter-complete{grid-template-columns:repeat(3,minmax(160px,1fr))}.roster-editor-layout{grid-template-columns:190px minmax(360px,1fr) 250px}.subject-choice-grid,.class-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.activation-page{height:100%;min-height:0;padding:24px 32px;overflow:auto;background:var(--page)}.activation-page>header{display:flex;align-items:center;justify-content:space-between;max-width:1220px;margin:0 auto}.activation-page>header>span{color:var(--muted);font-size:13px}.activation-shell{display:grid;grid-template-columns:320px minmax(560px,1fr);max-width:1120px;min-height:680px;margin:28px auto 0;border:1px solid var(--border-strong);border-radius:8px;background:#fff;box-shadow:0 18px 45px #294c371a;overflow:hidden}.activation-shell>aside{display:flex;flex-direction:column;padding:38px 30px;background:var(--success-bg)}.activation-shell>aside h1{margin-top:8px;font-size:30px;line-height:1.25}.activation-shell>aside>p{margin-top:11px;color:var(--muted);font-size:13px;line-height:1.7}.activation-steps{display:grid;gap:0;margin-top:35px}.activation-steps>span{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;min-height:72px;color:var(--muted)}.activation-steps>span:after{position:absolute;top:52px;bottom:-20px;left:16px;width:1px;background:var(--border);content:""}.activation-steps>span:last-child:after{display:none}.activation-steps i{z-index:1;display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--border-strong);border-radius:50%;background:#fff;font-size:13px;font-style:normal}.activation-steps b{font-size:13px}.activation-steps .done{color:var(--success-text)}.activation-steps .done i{border-color:var(--success-border);background:var(--primary-soft);color:var(--success-text)}.activation-steps .active{color:var(--success-text)}.activation-steps .active i{border-color:var(--primary);background:var(--primary);color:#fff}.sdk-entry{margin-top:auto;border:0;background:transparent;color:var(--success-text);font-size:13px;text-align:left}.activation-content{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:22px;padding:36px}.activation-title{display:flex;align-items:center;gap:12px}.activation-title>span{display:grid;width:48px;height:48px;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--primary-hover)}.activation-title h2{font-size:19px}.activation-title p{margin-top:3px;color:var(--muted);font-size:13px}.activation-form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.activation-form label{display:grid;gap:6px}.activation-form label>span{font-size:13px;font-weight:700}.activation-form label i{color:var(--danger);font-style:normal}.activation-detection{padding:16px;border:1px solid var(--border);border-radius:8px}.activation-detection>header{display:flex;align-items:center;justify-content:space-between}.activation-detection h3{font-size:14px}.activation-detection p{margin-top:3px;color:var(--muted);font-size:13px}.activation-detection>.n-progress{margin-top:10px}.activation-detection>div{display:grid;gap:6px;margin-top:12px}.activation-detection article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:52px;padding:7px;border-radius:7px;background:var(--surface-soft)}.activation-detection article>span{display:grid;width:34px;height:34px;place-items:center;border-radius:6px;background:#fff;color:var(--secondary)}.activation-detection article>div{display:grid}.activation-detection strong{font-size:13px}.activation-detection small{margin-top:2px;color:var(--muted);font-size:13px}.activation-detection article i{padding:4px 6px;border-radius:4px;background:var(--tag-bg);color:var(--muted);font-size:13px;font-style:normal}.activation-detection article i.ready{background:var(--primary-soft);color:var(--success-text)}.activation-content>footer{display:flex;align-items:center;justify-content:space-between;gap:15px}.activation-content>footer>span{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:13px}.setting-device-hero{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:center;padding:18px 4px}.setting-device-hero>div{display:grid}.setting-device-hero small{color:var(--muted);font-size:13px}.setting-device-hero h3{margin-top:3px;font-size:17px}.setting-device-hero p{margin-top:3px;color:var(--muted);font-size:13px}.device-detail-icon.blue{background:var(--info-bg);color:var(--secondary)}.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.capability-grid span{display:grid;padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--surface-soft)}.capability-grid small{color:var(--muted);font-size:13px}.capability-grid strong{margin-top:4px;font-size:13px}.setting-action-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.account-actions{justify-content:flex-end}.school-settings-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 4px}.school-settings-head>div{display:flex;align-items:center;gap:9px}.school-settings-head>div>span:last-child{display:grid}.school-settings-head small{color:var(--muted);font-size:13px}.school-settings-head strong{margin-top:3px;font-size:14px}.school-settings-head label{display:flex;align-items:center;gap:8px;font-size:13px}.school-settings-head .n-select,.setting-list .n-select{width:180px}.student-detail-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:10px;margin-top:14px;align-items:start}.student-detail-layout .student-detail-panel{margin-top:0}.student-detail-nav{position:sticky;top:0;display:grid;gap:7px;max-height:calc(100dvh - 220px);padding:11px;overflow:auto}.student-detail-nav>header{display:flex;align-items:center;justify-content:space-between;min-height:34px;border-bottom:1px solid var(--border)}.student-detail-nav>header strong{font-size:13px}.student-detail-nav>header small{color:var(--muted);font-size:13px}.student-detail-nav>div{display:grid;gap:6px}.student-detail-nav>div>section>strong{display:block;padding:6px;border-radius:5px;background:var(--neutral-hover);color:var(--success-text);font-size:13px}.student-detail-nav>div>section>div>span{display:block;padding:6px 7px 3px;color:var(--muted);font-size:13px}.student-detail-nav>div button{display:grid;grid-template-columns:28px minmax(0,1fr) 14px;gap:6px;align-items:center;width:100%;min-height:38px;padding:5px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text);text-align:left}.student-detail-nav>div button:hover,.student-detail-nav>div button.active{border-color:var(--success-border);background:var(--success-bg)}.student-detail-nav>div button>i{display:grid;width:26px;height:26px;place-items:center;border-radius:5px;background:var(--primary-soft);color:var(--success-text);font-size:13px;font-style:normal}.student-detail-nav>div button>span{display:grid}.student-detail-nav>div button strong{font-size:13px}.student-detail-nav>div button small{color:var(--muted);font-size:13px}.student-detail-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:4px 0}.student-detail-toolbar>span{margin-right:auto;color:var(--muted);font-size:13px}.student-detail-toolbar .n-select{width:150px}.record-actions{display:flex;flex-wrap:wrap;gap:5px}.class-group-head{width:100%;border:0;background:transparent;color:var(--text);text-align:left}.class-group-head svg{margin-left:auto}.load-more-button{width:min(280px,100%);margin:0 auto}.device-summary-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (max-width: 900px){.activation-page{padding:18px}.activation-shell{grid-template-columns:1fr}.activation-shell>aside{display:none}.activation-content{padding:24px}.activation-form,.capability-grid,.student-detail-layout{grid-template-columns:1fr}.student-detail-nav{position:static;max-height:340px}}@media (max-width: 900px){.form-grid,.subject-choice-grid,.class-choice-grid,.expanded-subject-grid,.subject-operation-grid,.score-summary-grid{grid-template-columns:1fr}.exam-main-row{grid-template-columns:64px minmax(0,1fr)}.exam-quick-actions{grid-column:1/-1;flex-direction:row}.roster-filter,.subject-tab-toolbar{grid-template-columns:1fr}.roster-editor-layout{grid-template-columns:1fr;height:auto}.roster-tree,.roster-candidates,.selected-roster{min-height:340px}.progress-list>div{grid-template-columns:34px 1fr 1fr}.progress-list i{grid-column:span 1}.page-action-footer{margin-right:-20px;margin-left:-20px;padding-right:20px;padding-left:20px}}.focus-overlay{position:absolute;z-index:950;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:62px minmax(0,1fr);min-width:1024px;min-height:0;background:var(--surface-soft);color:var(--text)}.focus-topbar{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:16px;align-items:center;padding:0 16px;border-bottom:1px solid var(--border);background:#fff}.focus-context{display:grid;justify-items:center;min-width:0}.focus-context strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.focus-context span{margin-top:3px;color:var(--muted);font-size:13px}.autosave-state{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:5px;background:var(--success-bg);color:var(--primary-hover);font-size:13px}.focus-layout{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:0}.stage-sidebar{display:flex;flex-direction:column;min-height:0;padding:16px 12px;border-right:1px solid var(--border);background:var(--surface-soft)}.stage-brand{display:grid;padding:2px 8px 14px}.stage-brand strong{font-size:14px}.stage-brand small{margin-top:3px;color:var(--muted);font-size:13px}.stage-sidebar>button{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;min-height:64px;padding:7px 8px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);text-align:left}.stage-sidebar>button:after{position:absolute;top:50px;bottom:-17px;left:24px;width:1px;background:var(--border);content:""}.stage-sidebar>button:nth-of-type(5):after{display:none}.stage-sidebar>button>span{z-index:1;display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--border-strong);border-radius:50%;background:#fff;font-size:13px;font-weight:700}.stage-sidebar>button>div{display:grid}.stage-sidebar>button strong{font-size:13px}.stage-sidebar>button small{margin-top:3px;font-size:13px}.stage-sidebar>button:hover{background:var(--neutral-hover)}.stage-sidebar>button.active{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.stage-sidebar>button.active>span{border-color:var(--primary);background:var(--primary);color:#fff}.stage-sidebar>button.done{color:var(--success-text)}.stage-sidebar>button.done>span{border-color:var(--success-border);background:var(--primary-soft);color:var(--primary-hover)}.stage-summary{display:grid;grid-template-columns:1fr auto;gap:5px;margin-top:auto;padding:11px;border-radius:7px;background:var(--tag-bg)}.stage-summary span{color:var(--muted);font-size:13px}.stage-summary strong{font-size:13px}.stage-summary .n-progress{grid-column:1/-1}.focus-main{display:grid;grid-template-rows:76px minmax(0,1fr) 58px;min-width:0;min-height:0}.focus-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-bottom:1px solid var(--border);background:#fff}.focus-section-head>div:first-child{display:grid}.focus-section-head span{color:var(--primary-hover);font-size:13px;font-weight:700}.focus-section-head h2{margin-top:2px;font-size:18px}.focus-section-head p{margin-top:3px;color:var(--muted);font-size:13px}.substep-control,.identity-substeps{display:flex;padding:3px;border-radius:7px;background:var(--neutral-hover)}.substep-control button,.identity-substeps button{min-height:29px;padding:0 11px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:13px}.substep-control button.active,.identity-substeps button.active{background:#fff;color:var(--success-text);font-weight:700;box-shadow:0 2px 5px #23422f12}.focus-scroll{min-height:0;overflow:auto;padding:16px 20px 24px}.focus-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-top:1px solid var(--border);background:#fff}.focus-footer>div{display:flex;align-items:center;gap:7px}.focus-footer>div>span{color:var(--muted);font-size:13px}.prototype-section{padding:16px;border:1px solid var(--border);border-radius:8px;background:#fff}.prototype-section-title{display:flex;align-items:center;gap:9px;margin-bottom:14px}.prototype-section-title>span{display:grid;width:30px;height:30px;place-items:center;border-radius:7px;background:var(--primary-soft);color:var(--primary-hover);font-size:13px;font-weight:800}.prototype-section-title>div{display:grid;margin-right:auto}.prototype-section-title h3{font-size:14px}.prototype-section-title p{margin-top:2px;color:var(--muted);font-size:13px}.prototype-section-title>strong{color:var(--primary-hover);font-size:13px}.paper-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.paper-source footer{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.paper-thumb-row{display:grid;grid-template-columns:repeat(5,minmax(70px,1fr));gap:6px}.mini-paper,.add-paper{position:relative;min-height:105px;padding:8px;border:1px solid var(--border);border-radius:5px;background:#fff;overflow:hidden}.mini-paper>span{color:var(--muted);font-size:13px}.mini-paper i{display:block;width:85%;height:3px;margin-top:12px;background:var(--border)}.mini-paper button{position:absolute;inset:auto 4px 4px;width:calc(100% - 8px);height:22px;border:0;border-radius:4px;background:#233028c2;color:#fff;font-size:13px;opacity:0}.mini-paper:hover button{opacity:1}.mini-paper.answer b{position:absolute;right:5px;bottom:5px;color:var(--danger);font-family:KaiTi,serif;font-size:13px}.add-paper{display:grid;place-items:center;align-content:center;gap:5px;border-style:dashed;color:var(--primary-hover);font-size:13px}.precheck-strip{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:center;margin-top:10px;padding:11px;border:1px solid var(--warning-border);border-radius:7px;background:var(--warning-bg);color:var(--warning-text)}.precheck-strip.valid{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.precheck-strip span{display:grid}.precheck-strip strong{font-size:13px}.precheck-strip small{margin-top:2px;font-size:13px}.stage-sidebar>button.locked{opacity:.55;cursor:not-allowed}.stage-sidebar>button.locked:hover{background:transparent}.visually-hidden-file{position:fixed;width:1px;height:1px;opacity:0;pointer-events:none}.paper-source.complete{border-color:var(--success-border);background:var(--success-bg)}.material-empty{display:grid;min-height:130px;place-items:center;align-content:center;gap:6px;border:1px dashed var(--border-strong);border-radius:7px;background:var(--surface-soft);color:var(--muted);text-align:center}.material-empty strong{color:var(--text);font-size:13px}.material-empty small{max-width:300px;font-size:13px;line-height:1.6}.mini-paper{display:grid;align-content:start}.mini-paper img{position:absolute;top:4px;right:4px;bottom:4px;left:4px;width:calc(100% - 8px);height:calc(100% - 8px);object-fit:cover;opacity:.45}.mini-paper em{position:absolute;right:4px;bottom:4px;padding:2px 4px;border-radius:3px;background:var(--success-bg);color:var(--success-text);font-size:13px;font-style:normal}.mini-paper.pending{border-color:var(--warning-border);background:var(--warning-bg)}.mini-paper.pending em{background:var(--warning-bg);color:var(--warning-text)}.material-acquisition{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:calc(100% - 4px);border:1px solid var(--border);border-radius:8px;background:#fff;overflow:hidden}.acquisition-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border)}.acquisition-heading h3{margin-top:5px;font-size:20px}.acquisition-heading p{max-width:720px;margin-top:6px;color:var(--muted);font-size:13px;line-height:1.6}.acquisition-target{flex:0 0 auto;padding:8px 10px;border-radius:6px;background:var(--success-bg);color:var(--success-text);font-size:13px;font-weight:700}.placement-workspace{display:grid;grid-template-columns:280px minmax(420px,1fr) 260px;gap:24px;align-items:center;min-height:440px;padding:30px;background:var(--surface-soft)}.scanner-illustration{position:relative;display:grid;min-height:300px;place-items:center;align-content:center;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--primary-hover)}.scanner-illustration>svg{margin-bottom:24px}.scanner-illustration strong{margin-top:22px;color:var(--text);font-size:14px}.scanner-illustration small{margin-top:4px;color:var(--muted);font-size:13px}.paper-stack{position:absolute;top:105px;display:grid;width:112px}.paper-stack i{grid-area:1/1;height:72px;border:1px solid #b8c9bf;border-radius:3px;background:#fff;transform:translateY(-8px) rotate(-3deg)}.paper-stack i:nth-child(2){transform:translateY(-3px) rotate(2deg)}.paper-stack i:nth-child(3){transform:translateY(3px)}.placement-checklist{display:grid;gap:12px;margin:0;padding:0;list-style:none}.placement-checklist li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-height:88px;padding:14px;border:1px solid var(--border);border-radius:8px;background:#fff}.placement-checklist li>span{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:var(--primary-soft);color:var(--primary-hover);font-size:14px;font-weight:800}.placement-checklist li div{display:grid}.placement-checklist strong{font-size:13px}.placement-checklist small{margin-top:5px;color:var(--muted);font-size:13px;line-height:1.55}.placement-warning{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:16px;border:1px solid var(--warning-border);border-radius:8px;background:var(--warning-bg);color:var(--warning-text)}.placement-warning strong{font-size:13px}.placement-warning p{margin-top:5px;font-size:13px;line-height:1.6}.material-scanning{display:grid;grid-template-columns:300px minmax(420px,620px);justify-content:center;align-items:center;gap:48px;min-height:460px;padding:36px;background:var(--surface-soft)}.scan-device-live{position:relative;display:grid;width:260px;height:260px;place-items:center;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--primary-hover);overflow:hidden}.scan-device-live svg{animation:scan-spin 1.2s linear infinite}.scan-paper-motion{position:absolute;right:58px;bottom:-90px;width:140px;height:190px;border:1px solid var(--border-strong);background:#fff;animation:material-feed 1.6s ease-in-out infinite}.material-scanning h3{margin:6px 0 14px;color:var(--primary-hover);font-size:36px;font-variant-numeric:tabular-nums}.material-scanning p{margin-top:10px;color:var(--muted);font-size:13px}.material-review-workspace{min-height:420px;padding:20px 22px;background:var(--surface-soft)}.material-review-workspace>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.material-review-workspace h3{margin-top:4px;font-size:17px}.material-review-workspace>header>span{padding:7px 9px;border-radius:5px;background:var(--success-bg);color:var(--success-text);font-size:13px;font-weight:700}.material-review-workspace>header>span.warning{background:var(--warning-bg);color:var(--warning-text)}.material-page-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px}.material-page-grid article,.material-add-page{min-height:220px;border:1px solid var(--border-strong);border-radius:7px;background:#fff;overflow:hidden}.material-page-preview{position:relative;height:145px;padding:12px;background:var(--neutral-hover);overflow:hidden}.material-page-preview img,.material-page-preview>div{width:100%;height:100%;border:1px solid var(--border-strong);background:#fff;object-fit:cover;transition:transform .2s ease}.material-page-preview>div{display:grid;align-content:center;gap:12px;padding:18px}.material-page-preview>div strong{text-align:center}.material-page-preview>div i{height:3px;background:var(--border-strong)}.material-page-preview>span{position:absolute;right:5px;bottom:5px;display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:#263c30;color:#fff;font-size:13px;font-weight:700}.material-page-meta{display:grid;padding:8px 9px 5px}.material-page-meta strong{font-size:13px}.material-page-meta small{margin-top:2px;color:var(--muted);font-size:13px}.page-tool-row{display:grid;grid-template-columns:repeat(5,1fr);padding:5px}.page-tool-row button{display:grid;height:30px;place-items:center;border:0;border-radius:4px;background:transparent;color:var(--muted)}.page-tool-row button:hover{background:var(--tag-bg)}.page-tool-row button:disabled{opacity:.3;cursor:not-allowed}.page-tool-row button.danger{color:var(--danger)}.material-add-page{display:grid;place-items:center;align-content:center;gap:6px;border-style:dashed;color:var(--primary-hover);font-size:13px}.acquisition-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid var(--border);background:#fff}.acquisition-actions>div{display:flex;gap:7px}@keyframes scan-spin{to{transform:rotate(360deg)}}@keyframes material-feed{0%{transform:translateY(0)}50%{transform:translateY(-150px)}to{transform:translateY(0)}}.exam-wizard-scroll{background:var(--surface-soft)}.exam-wizard-sidebar .exam-wizard-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}.exam-wizard-summary span{display:grid;padding:8px 5px;border-radius:6px;background:var(--tag-bg);text-align:center}.exam-wizard-summary small{color:var(--muted);font-size:13px}.exam-wizard-summary strong{margin-top:3px;font-size:14px;font-variant-numeric:tabular-nums}.wizard-step-card{max-width:980px;min-height:430px;margin:0 auto;padding:24px}.wizard-step-card .template-form-grid{margin-top:28px}.field-wide{grid-column:1/-1}.wizard-subject-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px}.wizard-subject-grid button{display:grid;grid-template-columns:30px minmax(0,1fr) 22px;gap:8px;align-items:center;min-height:68px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);text-align:left}.wizard-subject-grid button:hover,.wizard-subject-grid button.active{border-color:var(--success-border);background:var(--success-bg)}.wizard-roster-step{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;max-width:1100px;min-height:540px;margin:0 auto;padding:20px;border:1px solid var(--border);border-radius:8px;background:#fff}.wizard-roster-step>header{display:flex;justify-content:space-between;gap:20px}.wizard-roster-step h3{margin-top:4px;font-size:18px}.wizard-roster-step p{margin-top:5px;color:var(--muted);font-size:13px}.wizard-roster-step>header>div:last-child{display:grid;min-width:86px;place-items:center;align-content:center;border-radius:7px;background:var(--success-bg);color:var(--success-text)}.wizard-roster-step>header>div:last-child strong{font-size:24px}.wizard-roster-step>header>div:last-child small{font-size:13px}.wizard-roster-toolbar{display:flex;gap:8px;margin:16px 0 10px}.wizard-roster-toolbar .n-input{max-width:420px}.wizard-roster-list{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;align-content:start;min-height:0;overflow:auto}.wizard-roster-list button{display:grid;grid-template-columns:34px minmax(0,1fr) 22px;gap:8px;align-items:center;min-height:72px;padding:8px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text);text-align:left}.wizard-roster-list button.active{border-color:var(--success-border);background:var(--success-bg)}.wizard-roster-list button>span:nth-child(2){display:grid}.wizard-roster-list strong{font-size:13px}.wizard-roster-list small{margin-top:2px;color:var(--muted);font-size:13px}.wizard-roster-list i{display:grid;width:20px;height:20px;place-items:center;border:1px solid var(--border-strong);border-radius:50%;color:transparent}.wizard-roster-list button.active i{border-color:var(--primary);background:var(--primary);color:#fff}.wizard-roster-step>footer{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px;border-radius:6px;background:var(--success-bg);color:var(--success-text);font-size:13px}.wizard-subject-setup{max-width:1050px;margin:0 auto}.wizard-subject-setup>header{display:flex;align-items:center;gap:16px;margin-bottom:14px;padding:18px;border:1px solid var(--border);border-radius:8px;background:#fff}.wizard-subject-setup>header .finalize-icon{flex:0 0 auto;width:52px;height:52px;margin:0}.wizard-subject-setup h3{margin-top:4px;font-size:19px}.wizard-subject-setup p{margin-top:5px;color:var(--muted);font-size:13px}.wizard-subject-setup>div{display:grid;gap:8px}.wizard-subject-setup article{display:grid;grid-template-columns:40px minmax(0,1fr) 80px 160px;gap:12px;align-items:center;min-height:78px;padding:11px 14px;border:1px solid var(--border);border-radius:8px;background:#fff}.wizard-subject-setup article.ready{border-color:var(--success-border);background:var(--success-bg)}.subject-order{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--neutral-hover);color:var(--muted);font-weight:800}.wizard-subject-setup article.ready .subject-order{background:var(--primary-soft);color:var(--success-text)}.wizard-subject-setup article>div{display:grid}.wizard-subject-setup article strong{font-size:13px}.wizard-subject-setup article small{margin-top:4px;color:var(--muted);font-size:13px}.wizard-subject-setup article>i{color:var(--warning-text);font-size:13px;font-style:normal}.wizard-subject-setup article.ready>i{color:var(--success-text)}.wizard-ready-strip{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:center;margin-top:12px;padding:13px;border:1px solid var(--warning-border);border-radius:8px;background:var(--warning-bg);color:var(--warning-text)}.wizard-ready-strip.ready{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.wizard-ready-strip span{display:grid}.wizard-ready-strip strong{font-size:13px}.wizard-ready-strip small{margin-top:3px;font-size:13px}.identity-substeps{width:fit-content;margin-bottom:10px}.identity-substeps button{display:inline-flex;align-items:center;gap:5px}.identity-editor-layout{display:grid;grid-template-columns:minmax(520px,1fr) 290px;gap:10px;min-height:620px}.paper-editor{display:grid;grid-template-rows:44px minmax(0,1fr);min-height:0;border:1px solid var(--border);border-radius:8px;background:var(--neutral-hover);overflow:hidden}.paper-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 11px;background:#fff;color:var(--muted);font-size:13px}.paper-editor-toolbar>div{display:flex;gap:3px}.paper-editor-toolbar button{display:grid;min-width:28px;height:28px;place-items:center;padding:0 6px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted);font-size:13px}.paper-editor-toolbar button:hover{border-color:var(--border-strong);background:var(--surface-soft)}.identity-paper-canvas,.cut-paper-canvas{position:relative;width:560px;min-height:720px;margin:22px auto;padding:35px;border:1px solid var(--border-strong);background:#fff;box-shadow:0 12px 24px #25372c1f}.identity-paper-canvas>header,.cut-paper-canvas>header{padding-bottom:16px;border-bottom:2px solid var(--text);font-family:SimSun,serif;font-size:17px;text-align:center}.identity-region{position:absolute;z-index:2;display:grid;gap:3px;min-width:110px;min-height:42px;padding:7px;border:2px dashed var(--secondary);border-radius:5px;background:#259fc117;color:var(--info-text);font-size:13px;font-weight:700;resize:both;overflow:auto}.identity-region span{font-size:13px;font-weight:400}.position-region{top:18px;left:18px}.number-region{top:90px;right:34px;width:190px}.absent-region{top:158px;right:34px;width:130px;border-color:var(--primary);background:#36ad6a14;color:var(--success-text)}.fake-question-lines{display:grid;gap:22px;margin-top:105px}.fake-question-lines i{display:block;height:4px;background:linear-gradient(90deg,var(--border-strong) 0 20%,transparent 20% 25%,#dce2de 25% 85%,transparent 85%)}.property-panel{min-width:0;padding:15px;border:1px solid var(--border);border-radius:8px;background:#fff;overflow:auto}.property-panel h3{margin-bottom:13px;font-size:14px}.property-panel label{margin-bottom:11px}.region-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.region-actions.vertical{display:grid}.roster-check{display:grid;grid-template-columns:24px minmax(0,1fr);gap:7px;margin-top:14px;padding:9px;border-radius:7px;background:var(--success-bg);color:var(--success-text)}.roster-check span{display:grid}.roster-check strong{font-size:13px}.roster-check small{margin-top:2px;font-size:13px}.auto-cut-hero{display:grid;grid-template-columns:170px minmax(0,1fr);gap:26px;align-items:center;max-width:920px;margin:20px auto 18px}.cut-progress-ring{display:grid;width:150px;height:150px;place-items:center;align-content:center;border:10px solid var(--border-strong);border-top-color:var(--primary);border-radius:50%}.cut-progress-ring strong{color:var(--primary-hover);font-size:30px}.cut-progress-ring span{margin-top:2px;color:var(--muted);font-size:13px}.auto-cut-hero h3{margin-top:7px;font-size:20px}.auto-cut-hero p{margin-top:7px;color:var(--muted);font-size:13px;line-height:1.6}.auto-cut-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:14px}.auto-cut-stats span{display:grid;padding:9px;border-radius:6px;background:var(--surface-soft)}.auto-cut-stats small{color:var(--muted);font-size:13px}.auto-cut-stats strong{margin-top:2px;font-size:15px}.processing-step-list{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:16px}.processing-step-list>div{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:7px;background:#fff}.processing-step-list>div>span{display:grid;grid-row:span 2;width:28px;height:28px;place-items:center;border-radius:50%;background:var(--neutral-hover);color:var(--muted);font-size:13px}.processing-step-list strong{font-size:13px}.processing-step-list small{color:var(--muted);font-size:13px}.processing-step-list .done{border-color:var(--success-border)}.processing-step-list .done>span{background:var(--success-bg);color:var(--primary-hover)}.processing-step-list .active{border-color:var(--info-border);background:var(--info-bg)}.inline-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:16px}.cut-editor-layout{display:grid;grid-template-columns:190px minmax(520px,1fr) 260px;gap:8px;height:calc(100dvh - 254px);min-height:520px}.cut-question-list,.rule-question-list{min-height:0;padding:9px;border:1px solid var(--border);border-radius:7px;background:#fff;overflow:auto}.cut-question-list header,.rule-question-list header{display:flex;align-items:center;justify-content:space-between;min-height:35px;padding-bottom:7px;border-bottom:1px solid var(--border)}.cut-question-list header strong,.rule-question-list header strong{font-size:13px}.cut-question-list header button{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--action);font-size:13px}.cut-question-list>button{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:5px;align-items:center;width:100%;min-height:45px;padding:6px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text);text-align:left}.cut-question-list>button:hover,.cut-question-list>button.active{border-color:var(--success-border);background:var(--success-bg)}.cut-question-list>button.warning{background:var(--warning-bg)}.cut-question-list>button span{display:grid}.cut-question-list strong{font-size:13px}.cut-question-list small{color:var(--muted);font-size:13px}.cut-question-list i{color:var(--muted);font-size:13px;font-style:normal}.cut-paper-editor{height:100%}.cut-paper-canvas{min-height:780px}.editable-cut-box{position:absolute;z-index:2;min-width:70px;min-height:45px;border:2px solid var(--primary);background:#36ad6a14;resize:both;overflow:auto;cursor:move}.editable-cut-box.active{outline:3px solid rgba(37,159,193,.24)}.editable-cut-box.warning{border-color:var(--warning);background:#f59e0b14}.editable-cut-box span,.editable-cut-box i,.editable-cut-box b{position:absolute;top:3px;padding:2px 4px;border-radius:3px;background:#fff;font-size:13px}.editable-cut-box span{left:3px;color:var(--success-text);font-weight:700}.editable-cut-box i{right:3px;font-style:normal}.editable-cut-box b{top:auto;right:3px;bottom:3px;color:var(--warning)}.cut-properties{height:100%}.confirm-question-table{display:grid;margin-top:12px;border:1px solid var(--border);border-radius:7px;overflow:hidden}.confirm-question-table>header,.confirm-question-table>button{display:grid;grid-template-columns:repeat(6,minmax(90px,1fr));gap:8px;align-items:center;min-height:43px;padding:7px 10px}.confirm-question-table>header{background:var(--neutral-hover);color:var(--muted);font-size:13px}.confirm-question-table>button{border:0;border-top:1px solid var(--border);background:#fff;color:var(--text);text-align:left}.confirm-question-table>button.warning{background:var(--warning-bg)}.confirm-question-table strong,.confirm-question-table span{font-size:13px}.confirm-question-table i{color:var(--warning);font-size:13px;font-style:normal}.paper-total-field>small{color:var(--muted);font-size:13px;line-height:1.5}.score-validation{display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-top:10px;padding:10px;border-radius:7px;background:var(--surface-soft);color:var(--muted);font-size:13px}.score-validation strong{color:var(--text);font-size:15px}.score-validation i{color:var(--warning);font-size:13px;font-style:normal}.score-validation i.valid{color:var(--primary-hover)}.paper-total-source{display:grid;grid-template-columns:auto auto auto;gap:5px;align-items:baseline}.paper-total-source small{grid-column:1/-1;color:var(--primary-hover);font-size:13px;font-weight:700}.scoring-rule-layout{display:grid;grid-template-columns:190px minmax(480px,1fr) 300px;gap:8px;height:calc(100dvh - 254px);min-height:520px}.rule-question-list>button{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:6px;align-items:center;width:100%;min-height:48px;padding:6px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);text-align:left}.rule-question-list>button.active{border-color:var(--success-border);background:var(--success-bg)}.rule-question-list>button>span:nth-child(2){display:grid}.rule-question-list strong{font-size:13px}.rule-question-list small{color:var(--muted);font-size:13px}.rule-question-list i{font-size:13px;font-style:normal}.rule-preview{display:grid;grid-template-rows:42px minmax(0,1fr);border:1px solid var(--border);border-radius:7px;background:var(--neutral-hover);overflow:hidden}.rule-preview>header{display:flex;align-items:center;justify-content:center;gap:4px;background:#fff}.rule-preview>header button{min-height:27px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:13px}.rule-preview>header button.active{background:var(--surface-soft);color:var(--primary-hover)}.cropped-question{position:relative;width:82%;min-height:400px;margin:30px auto;padding:28px;background:#fff;box-shadow:0 10px 22px #2a38301f;font-family:SimSun,serif}.cropped-question p{margin-top:12px;font-size:13px;line-height:1.7}.answer-lines{display:grid;gap:25px;margin-top:35px}.answer-lines i{height:1px;background:var(--border-strong)}.cropped-question>span{position:absolute;right:8px;bottom:8px;color:var(--secondary);font-size:13px}.scoring-rule-panel{height:100%}.rule-point-editor{display:grid;gap:6px;margin-bottom:11px}.rule-point-editor>span{font-size:13px;font-weight:700}.rule-point-editor>div{display:grid;grid-template-columns:minmax(0,1fr) 72px 26px;gap:5px}.rule-point-editor>div:last-child{grid-template-columns:minmax(0,1fr) auto}.rule-point-editor button{display:grid;place-items:center;border:0;background:transparent;color:var(--danger)}.finalize-layout{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(520px,1.2fr);gap:12px;max-width:1050px;margin:10px auto}.finalize-summary,.final-checklist{padding:24px;border:1px solid var(--border);border-radius:8px;background:#fff}.finalize-icon{display:grid;width:64px;height:64px;margin-bottom:18px;place-items:center;border-radius:50%;background:var(--primary-soft);color:var(--primary-hover)}.finalize-summary h3{margin-top:8px;font-size:22px}.finalize-summary p{margin-top:8px;color:var(--muted);font-size:13px;line-height:1.7}.final-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:20px}.final-metrics span{display:grid;padding:10px;border-radius:6px;background:var(--surface-soft)}.final-metrics strong{font-size:18px}.final-metrics small{margin-top:2px;color:var(--muted);font-size:13px}.final-checklist{display:grid;align-content:start}.final-checklist>div{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:7px;align-items:center;min-height:60px;border-bottom:1px solid var(--border);color:var(--primary-hover)}.final-checklist>div>span{display:grid;color:var(--text)}.final-checklist strong{font-size:13px}.final-checklist small{margin-top:2px;color:var(--primary-hover);font-size:13px}.final-checklist button{border:0;background:transparent;color:var(--action);font-size:13px}.scan-layout{display:grid;grid-template-columns:minmax(520px,1fr) 270px;min-height:0}.scan-status-panel{min-height:0;overflow:auto;padding:16px;border-left:1px solid var(--border);background:#fff}.scan-canvas-panel{display:grid;grid-template-rows:44px minmax(0,1fr) 90px;min-width:0;min-height:0;background:var(--neutral-hover)}.scan-canvas-panel>header{display:flex;align-items:center;justify-content:space-between;padding:0 12px;background:#fff;font-size:13px}.scan-canvas-panel>header div{display:flex;gap:4px}.scan-canvas-panel>header button{display:grid;min-width:28px;height:28px;place-items:center;padding:0 6px;border:0;border-radius:5px;background:var(--neutral-hover);color:var(--muted);font-size:13px}.scan-paper-stage{min-height:0;overflow:auto;padding:24px}.scanned-paper{position:relative;width:540px;min-height:680px;margin:0 auto;padding:34px;background:#fff;box-shadow:0 12px 28px #25332a26;overflow:hidden}.scanned-paper>span{position:absolute;top:8px;right:10px;color:var(--muted);font-size:13px}.scanned-paper>header{padding:12px 0;border-bottom:2px solid #434a46;font-family:SimSun,serif;font-size:17px;text-align:center}.scan-identity-line{margin-top:18px;font-size:13px}.scanned-paper .fake-question-lines{margin-top:40px}.scan-line{position:absolute;z-index:2;top:0;left:0;width:100%;height:3px;background:#4edb8a;box-shadow:0 0 18px 4px #4edb8a80;animation:scan-move 1.8s linear infinite}@keyframes scan-move{to{transform:translateY(680px)}}.scan-thumbnails{display:flex;gap:5px;min-width:0;padding:8px;overflow-x:auto;border-top:1px solid var(--border);background:var(--surface-soft)}.scan-thumbnails button,.scanning-thumb{position:relative;display:grid;flex:0 0 62px;height:70px;place-items:center;align-content:center;border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--muted)}.scan-thumbnails button.active{border-color:var(--primary)}.scan-thumbnails button.warning{border-color:var(--warning)}.scan-thumbnails button span{color:var(--text);font-size:14px}.scan-thumbnails button i{font-size:13px;font-style:normal}.scan-thumbnails button b{position:absolute;right:2px;bottom:2px;color:var(--warning);font-size:13px}.scanning-thumb{color:var(--primary-hover);font-size:13px}.scanner-live{display:flex;align-items:center;gap:9px}.scanner-live>span{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:var(--surface-soft);color:var(--primary-hover)}.scanner-live>span.active{background:var(--primary-soft);box-shadow:0 0 0 5px #36ad6a14}.scanner-live>div{display:grid}.scanner-live small{color:var(--muted);font-size:13px}.scanner-live strong{margin-top:2px;font-size:13px}.scan-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:16px 0 10px}.scan-stat-grid span{display:grid;padding:8px;border-radius:6px;background:var(--surface-soft)}.scan-stat-grid small{color:var(--muted);font-size:13px}.scan-stat-grid strong{margin-top:2px;font-size:17px}.scan-stat-grid .warning{background:var(--warning-bg);color:var(--warning)}.scan-event-list{display:grid;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.scan-event-list strong{font-size:13px}.scan-event-list span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.scan-event-list svg{color:var(--primary)}.scan-event-list span:last-child svg{color:var(--warning)}.scan-main-actions{display:grid;gap:6px;margin-top:18px}.scan-result-page{display:grid;grid-template-rows:112px 48px minmax(0,1fr) 58px;min-height:0;padding:0 16px}.result-summary{display:flex;align-items:center;justify-content:space-between;gap:20px}.result-summary h2{margin-top:4px;font-size:19px}.result-summary p{margin-top:5px;color:var(--muted);font-size:13px}.result-summary-stats{display:grid;grid-template-columns:repeat(5,minmax(80px,1fr));gap:6px}.result-summary-stats span{display:grid;padding:8px 10px;border-radius:6px;background:#fff}.result-summary-stats small{color:var(--muted);font-size:13px}.result-summary-stats strong{margin-top:2px;font-size:17px}.result-mode-bar{display:flex;align-items:center;justify-content:space-between;gap:10px}.result-mode-bar>div{display:flex;gap:5px}.scan-result-layout{display:grid;grid-template-columns:260px minmax(480px,1fr) 260px;gap:8px;min-height:0;padding-bottom:8px}.result-page-list{min-height:0;padding:8px;overflow:auto}.result-page-list button{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:7px;align-items:center;width:100%;min-height:52px;padding:6px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);text-align:left}.result-page-list button.active{border-color:var(--success-border);background:var(--success-bg)}.result-page-list button.warning{background:var(--warning-bg)}.mini-paper-result{display:grid;width:34px;height:40px;place-items:center;border:1px solid var(--border);background:#fff;font-size:13px}.result-page-list button>span:nth-child(2){display:grid}.result-page-list strong{font-size:13px}.result-page-list small{color:var(--muted);font-size:13px}.result-page-list i{color:var(--warning);font-size:13px;font-style:normal}.result-preview{min-height:0;overflow:auto;padding:20px;background:var(--neutral-hover)}.result-preview .scanned-paper{width:500px;min-height:650px}.result-properties{padding:14px;overflow:auto}.result-properties h3{font-size:13px}.result-properties dl{display:grid;gap:6px;margin:12px 0}.result-properties dl div{padding:8px;border-radius:6px;background:var(--surface-soft)}.result-properties dt{color:var(--muted);font-size:13px}.result-properties dd{margin:2px 0 0;font-size:13px;font-weight:700}.result-action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.ai-main{display:grid;grid-template-rows:auto auto minmax(0,1fr) 62px;min-height:0;padding:22px 32px 0;overflow:auto}.ai-progress-hero{display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px;align-items:center;max-width:980px;width:100%;margin:0 auto}.ai-progress-ring{position:relative;width:170px;height:170px}.ai-progress-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ai-progress-ring circle{fill:none;stroke:var(--border-strong);stroke-width:9}.ai-progress-ring circle:last-child{stroke:var(--primary);stroke-linecap:round;stroke-dasharray:314;transition:stroke-dashoffset .2s ease}.ai-progress-ring>span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center}.ai-progress-ring strong{color:var(--primary-hover);font-size:32px}.ai-progress-ring small{color:var(--muted);font-size:13px}.ai-progress-hero h2{margin-top:7px;font-size:23px}.ai-progress-hero p{max-width:620px;margin-top:8px;color:var(--muted);font-size:13px;line-height:1.7}.ai-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:16px}.ai-stats span{display:grid;padding:9px;border-radius:6px;background:#fff}.ai-stats small{color:var(--muted);font-size:13px}.ai-stats strong{margin-top:2px;font-size:18px}.ai-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:1100px;width:100%;margin:24px auto 12px}.ai-step-grid article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;padding:13px;border:1px solid var(--border);border-radius:7px;background:#fff}.ai-step-grid article>span{display:grid;grid-row:span 2;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--neutral-hover);color:var(--faint)}.ai-step-grid article>div{display:grid}.ai-step-grid small{color:var(--muted);font-size:13px}.ai-step-grid strong{margin-top:2px;font-size:13px}.ai-step-grid p{margin-top:2px;color:var(--muted);font-size:13px}.ai-step-grid .n-progress{grid-column:1/-1;margin-top:8px}.ai-step-grid article.done{border-color:var(--success-border)}.ai-step-grid article.done>span{background:var(--primary-soft);color:var(--primary-hover)}.ai-step-grid article.active{border-color:var(--info-border);background:var(--info-bg)}.ai-step-grid article.active>span{background:var(--info-bg);color:var(--secondary)}.ai-detail-panel{max-width:1100px;width:100%;margin:0 auto;padding:13px;overflow:auto}.ai-detail-panel>header{display:flex;align-items:center;justify-content:space-between}.ai-detail-panel h3{margin-top:2px;font-size:13px}.ai-detail-panel>div{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-top:9px}.ai-detail-panel>div>span{display:grid;grid-template-columns:42px 80px minmax(0,1fr) auto;gap:6px;align-items:center;min-height:38px;padding:5px;border-radius:5px;background:var(--surface-soft)}.ai-detail-panel i{padding:3px 5px;border-radius:4px;font-size:13px;font-style:normal}.ai-detail-panel i.done{background:var(--success-bg);color:var(--success-text)}.ai-detail-panel i.failed{background:var(--danger-bg);color:var(--danger)}.ai-detail-panel strong{font-size:13px}.ai-detail-panel small{color:var(--muted);font-size:13px}.ai-actions{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:auto -32px 0;padding:10px 32px;border-top:1px solid var(--border);background:#fff}.ai-actions>div{display:flex;gap:6px}.print-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto 58px;min-height:0;padding:16px 20px 0;overflow:auto}.print-mode-section{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1250px;width:100%;margin:0 auto 12px}.print-mode-section h2{margin-top:4px;font-size:19px}.print-mode-section p{margin-top:5px;color:var(--muted);font-size:13px}.print-mode-section .n-radio-group{display:flex}.print-mode-section .n-radio-button{min-height:42px}.print-layout{display:grid;grid-template-columns:minmax(480px,1fr) 250px 260px;gap:8px;max-width:1250px;width:100%;min-height:0;margin:0 auto 10px}.print-preview,.print-settings,.print-roster{min-height:0;padding:13px;overflow:auto}.print-preview>header,.print-roster>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.print-preview h3,.print-roster h3{margin-top:2px;font-size:13px}.print-preview>header>span{color:var(--muted);font-size:13px}.print-paper{position:relative;width:430px;min-height:550px;margin:16px auto;padding:30px;border:1px solid var(--border);background:#fff;box-shadow:0 10px 22px #27362c1a;text-align:center}.print-paper>span,.print-paper>p{font-size:13px}.print-paper h2{margin:8px 0;font-family:SimSun,serif;font-size:16px}.print-paper .fake-question-lines{margin-top:50px;text-align:left}.print-paper footer{position:absolute;right:20px;bottom:15px;left:20px;color:var(--muted);font-size:13px}.print-mark{position:absolute;right:50px;bottom:130px;color:var(--danger);font-family:KaiTi,serif;font-size:60px;transform:rotate(-8deg)}.print-mark small{display:block;margin-top:-18px;margin-left:28px;font-size:16px}.print-settings h3{margin-bottom:12px;font-size:13px}.print-settings label{margin-bottom:10px}.print-content-options{display:grid;gap:6px;margin:12px 0}.print-content-options>span{font-size:13px;font-weight:700}.print-settings>.n-button{margin-top:6px}.print-roster>header>div:last-child{display:flex;gap:5px}.print-roster>div{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-top:10px}.print-roster>div button{display:grid;grid-template-columns:32px minmax(0,1fr) 18px;gap:6px;align-items:center;min-height:48px;padding:6px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);text-align:left}.print-roster>div button.active{border-color:var(--success-border);background:var(--success-bg)}.print-roster>div button>span:nth-child(2){display:grid}.print-roster strong{font-size:13px}.print-roster small{color:var(--muted);font-size:13px}.print-progress-bar{display:grid;grid-template-columns:210px minmax(260px,1fr) auto;gap:14px;align-items:center;max-width:1250px;width:100%;margin:0 auto 9px;padding:10px 13px;border:1px solid var(--border);border-radius:7px;background:#fff}.print-progress-bar>span{display:flex;align-items:center;gap:8px}.print-progress-bar>span>span{display:grid}.print-progress-bar strong{font-size:13px}.print-progress-bar small{color:var(--muted);font-size:13px}.print-progress-bar>div{display:flex;gap:5px}.print-main>.focus-footer{margin:0 -20px}@media (max-width: 1200px){.focus-layout{grid-template-columns:185px minmax(0,1fr)}.identity-editor-layout{grid-template-columns:minmax(500px,1fr) 260px}.cut-editor-layout{grid-template-columns:170px minmax(480px,1fr) 240px}.scoring-rule-layout{grid-template-columns:170px minmax(440px,1fr) 270px}.scan-layout{grid-template-columns:minmax(500px,1fr) 245px}.scan-result-layout{grid-template-columns:220px minmax(460px,1fr) 235px}.print-layout{grid-template-columns:minmax(450px,1fr) 230px 240px}}@media (prefers-reduced-motion: reduce){.scan-line{animation:none}}.assignment-filter{display:grid;grid-template-columns:minmax(220px,1.25fr) 180px 150px 150px minmax(260px,1fr) auto;gap:10px;align-items:center;padding:14px}.assignment-filter>span{color:var(--muted);font-size:13px;white-space:nowrap}.assignment-list{display:grid;gap:8px;margin-top:14px}.assignment-card{display:grid;grid-template-columns:72px minmax(0,1fr) 190px;gap:16px;align-items:center;min-height:108px;padding:14px;transition:border-color .18s ease,box-shadow .18s ease}.assignment-card:hover{border-color:var(--success-border);box-shadow:var(--shadow)}.assignment-date{display:grid;min-height:80px;place-items:center;align-content:center;border-radius:8px;background:var(--success-bg);color:var(--primary-hover)}.assignment-date strong{margin-top:3px;font-size:26px;line-height:1;font-variant-numeric:tabular-nums}.assignment-date span{margin-top:5px;color:var(--muted);font-size:13px}.assignment-card-main{min-width:0}.assignment-card-main>header{display:grid;grid-template-columns:44px minmax(0,1fr);gap:11px;align-items:center}.assignment-card-main h3{overflow:hidden;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.assignment-card-main p{margin-top:4px;color:var(--muted);font-size:13px}.assignment-subject-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:7px;background:var(--primary-soft);color:var(--primary-hover)}.assignment-status{padding:5px 8px;border-radius:6px;font-size:13px;font-style:normal;font-weight:700;white-space:nowrap}.assignment-status-设置中,.assignment-status-批阅中{background:var(--info-bg);color:var(--info-text)}.assignment-status-待复核{background:var(--warning-bg);color:var(--warning-text)}.assignment-status-setup,.assignment-status-scan,.assignment-status-ai{background:var(--info-bg);color:var(--info-text)}.assignment-status-review{background:var(--warning-bg);color:var(--warning-text)}.assignment-status-report,.assignment-status-已完成{background:var(--success-bg);color:var(--success-text)}.assignment-facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:13px;color:var(--muted);font-size:13px}.assignment-facts span{display:inline-flex;align-items:center;gap:5px}.assignment-card-actions{display:grid;gap:10px;justify-items:end;align-content:center}.assignment-card-actions>div{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.assignment-card-actions .n-button{min-width:88px}.assignment-empty{display:grid;min-height:280px;margin-top:14px;place-items:center;align-content:center;gap:8px;color:var(--muted)}.assignment-empty strong{color:var(--text);font-size:15px}.assignment-empty span{font-size:13px}.assignment-material-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:12px;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--border)}.assignment-material-summary>span{display:grid;min-height:72px;padding:13px 16px;background:#fff}.assignment-material-summary small{color:var(--muted);font-size:13px}.assignment-material-summary strong{margin-top:5px;color:var(--text);font-size:15px}.assignment-operation-grid{margin-top:12px}.assignment-report-workbench{grid-template-rows:62px minmax(0,1fr)}.assignment-report-main{min-height:0;padding:22px 28px 34px;overflow:auto}.assignment-report-head{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1320px;margin:0 auto}.assignment-report-head h2{margin-top:5px;font-size:25px}.assignment-report-head p{margin-top:6px;color:var(--muted);font-size:13px}.assignment-report-head>div:last-child{display:flex;gap:8px}.assignment-report-metrics{max-width:1320px;margin:18px auto 12px}.assignment-report-table{max-width:1320px;margin:0 auto;padding:16px}.assignment-report-table>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.assignment-report-table h3{margin-top:3px;font-size:15px}.assignment-report-table>header>span{color:var(--muted);font-size:13px}.assignment-creation-workbench.focus-overlay{grid-template-rows:52px minmax(0,1fr)}.assignment-creation-workbench .focus-topbar{grid-template-columns:40px minmax(0,1fr) auto;gap:12px;padding:0 20px;border-bottom-color:var(--neutral-hover);background:#fafafa}.assignment-creation-workbench .focus-context{display:flex;justify-content:flex-start;gap:8px}.assignment-creation-workbench .focus-context span{margin-top:0}.assignment-creation-workbench .workbench-back{width:36px;height:36px;justify-content:center;padding:0;border-color:transparent;border-radius:50%;background:transparent}.assignment-creation-workbench .workbench-back span{display:none}.assignment-creation-workbench .workbench-back:hover{border-color:var(--border);background:#fff;color:var(--action)}.assignment-flow-shell{display:grid;grid-template-rows:72px minmax(0,1fr) auto;min-width:0;min-height:0;background:var(--surface-soft)}.assignment-three-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;width:min(860px,calc(100% - 48px));margin:0 auto;padding:10px 0}.assignment-three-stage>div{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;padding:0 22px;color:var(--muted)}.assignment-three-stage>div>span{z-index:1;display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--border-strong);border-radius:50%;background:#fff;font-size:14px;font-weight:700}.assignment-three-stage>div>div{display:grid;min-width:0}.assignment-three-stage strong{color:var(--muted);font-size:14px}.assignment-three-stage small{margin-top:3px;font-size:13px}.assignment-three-stage i{position:absolute;top:16px;right:-18px;width:44px;height:1px;background:var(--border-strong)}.assignment-three-stage>div.active>span{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 0 0 4px #36ad6a1f}.assignment-three-stage>div.active strong,.assignment-three-stage>div.done strong{color:var(--success-text)}.assignment-three-stage>div.done>span{border-color:var(--success-border);background:var(--primary-soft);color:var(--primary-hover)}.assignment-three-stage>div.done i{background:var(--success-border)}.assignment-flow-content{min-height:0;overflow:auto;padding:24px 28px 28px;border-top:1px solid var(--border)}.assignment-create-stage{display:grid;width:min(1240px,100%);min-height:0;margin:0 auto;align-content:start}.assignment-select-panel{display:grid;gap:24px;width:min(1040px,100%);min-height:400px;margin:0 auto;padding:30px 42px;border:1px solid var(--border);border-radius:8px;background:#fff;align-content:center}.assignment-select-panel>header{text-align:center}.assignment-select-panel h2{margin-top:4px;font-size:22px}.assignment-select-panel p{margin-top:5px;color:var(--muted);font-size:13px}.assignment-selection-rows{display:grid;gap:14px}.assignment-selection-rows>div{display:grid;grid-template-columns:118px minmax(0,1fr);gap:14px;align-items:center}.assignment-selection-rows>div>strong{color:var(--muted);font-size:13px}.assignment-selection-rows>div>strong small{margin-left:5px;color:var(--muted);font-size:13px;font-weight:400}.assignment-pill-group{display:flex;flex-wrap:wrap;gap:8px}.assignment-pill-group button{display:inline-flex;min-width:86px;min-height:34px;align-items:center;justify-content:center;gap:5px;padding:6px 14px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--muted);font-size:13px;transition:border-color .18s ease,background .18s ease,color .18s ease}.assignment-pill-group button:hover{border-color:var(--success-border);background:var(--success-bg)}.assignment-pill-group button.active{border-color:var(--primary);background:var(--primary-soft);color:var(--success-text);font-weight:700}.assignment-scope-inline{display:inline-flex;align-items:center;justify-self:center;gap:7px;color:var(--muted);font-size:13px}.assignment-select-actions{display:flex;justify-content:center}.assignment-select-actions .n-button{min-width:180px}.assignment-setup-panel{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;width:100%;min-height:0;padding:22px 24px;border:1px solid var(--border);border-radius:8px;background:#fff}.assignment-scanner-guide{display:grid;place-items:center;align-content:center;gap:8px;padding-right:28px;border-right:1px solid var(--border);text-align:center}.assignment-scanner-scene{width:300px;height:238px;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.assignment-scanner-scene img{display:block;width:100%;height:100%;object-fit:cover}.assignment-scanner-guide>strong{margin-top:4px;font-size:13px}.assignment-scanner-guide>small{color:var(--muted);font-size:13px}.assignment-setup-form{display:grid;gap:15px;min-width:0;align-content:center}.assignment-name-field,.assignment-spec-grid>label{display:grid;gap:7px}.assignment-name-field>span,.assignment-spec-grid>label>span{color:var(--muted);font-size:13px;font-weight:700}.assignment-name-field>small{color:var(--muted);font-size:13px}.assignment-spec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-top:2px}.assignment-spec-grid .n-input-number{width:100%}.assignment-material-pickers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.assignment-material-pickers article{display:grid;grid-template-rows:auto minmax(62px,1fr) auto;gap:9px;min-width:0;padding:12px;border:1px solid var(--border-strong);border-radius:7px;background:var(--surface-soft)}.assignment-material-pickers article.ready{border-color:var(--success-border);background:var(--success-bg)}.assignment-material-pickers article>header{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center}.assignment-material-pickers article>header>span{display:grid;width:34px;height:34px;place-items:center;border-radius:6px;background:var(--neutral-hover);color:var(--muted)}.assignment-material-pickers article.ready>header>span{background:var(--primary-soft);color:var(--primary-hover)}.assignment-material-pickers article>header>div{display:grid}.assignment-material-pickers article>header strong{font-size:13px}.assignment-material-pickers article>header small{margin-top:2px;color:var(--muted);font-size:13px}.assignment-material-pickers article>header em{color:var(--primary-hover);font-size:13px;font-style:normal;font-weight:700;font-variant-numeric:tabular-nums}.assignment-material-drop{display:grid;place-items:center;align-content:center;gap:4px;border:1px dashed var(--border-strong);border-radius:6px;color:var(--muted);font-size:13px}.assignment-material-pickers article>footer{display:flex;gap:6px}.material-ready-strip{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--warning-border);border-radius:7px;background:var(--warning-bg);color:var(--warning-text)}.material-ready-strip.ready{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.material-ready-strip>span{display:grid}.material-ready-strip strong{font-size:13px}.material-ready-strip small{margin-top:3px;color:var(--muted);font-size:13px}.assignment-flow-footer{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px;border-top:1px solid var(--border);background:#fff}.assignment-flow-footer>div{display:flex;gap:8px}.assignment-stage-1{grid-template-rows:72px auto auto;align-content:start}.assignment-stage-1 .assignment-flow-content{padding-bottom:0}.assignment-stage-1 .assignment-flow-footer{width:min(1240px,calc(100% - 56px));min-height:40px;margin:12px auto 28px;padding:0;border:0;background:transparent}.assignment-intake-stage{display:grid;width:min(1180px,100%);min-height:100%;margin:0 auto;align-content:center}.student-matching-loading{display:grid;width:min(720px,100%);margin:0 auto;place-items:center;gap:10px;padding:50px 60px;border:1px solid var(--border);border-radius:8px;background:#fff;text-align:center}.student-matching-loading .matching-orbit{display:grid;width:92px;height:92px;place-items:center;border-radius:50%;background:var(--success-bg);color:var(--primary)}.student-matching-loading .matching-orbit svg,.modal-scanning-state>svg{animation:assignment-spin 1.1s linear infinite}.student-matching-loading h2{font-size:23px}.student-matching-loading p{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.student-matching-loading .n-progress{width:100%;margin-top:8px}.student-intake-result{display:grid;gap:20px;width:min(920px,100%);margin:0 auto;padding:30px;border:1px solid var(--border);border-radius:8px;background:#fff}.student-intake-result>header{text-align:center}.student-intake-result h2{margin-top:5px;font-size:24px}.student-intake-result p{margin-top:6px;color:var(--muted);font-size:13px}.intake-result-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.intake-result-metrics article{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;min-height:106px;padding:16px;border:1px solid var(--border);border-radius:7px;background:var(--surface-soft);color:var(--muted)}.intake-result-metrics article.matched{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.intake-result-metrics article.warning{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-text)}.intake-result-metrics article>span{display:grid;grid-template-columns:auto auto;align-items:baseline;justify-content:start;column-gap:4px}.intake-result-metrics small{grid-column:1 / -1;color:var(--muted);font-size:13px}.intake-result-metrics strong{margin-top:2px;font-size:26px;font-variant-numeric:tabular-nums}.intake-result-metrics em{font-size:13px;font-style:normal}.intake-result-actions{display:flex;justify-content:center;gap:10px}.manual-match-workspace{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:620px}.manual-match-workspace>header{display:grid;grid-template-columns:180px minmax(0,1fr) 180px;align-items:center;padding-bottom:14px}.manual-match-workspace>header>button{display:inline-flex;align-items:center;gap:5px;justify-self:start;border:0;background:transparent;color:var(--success-text)}.manual-match-workspace>header>div{text-align:center}.manual-match-workspace>header h2{margin-top:3px;font-size:20px}.manual-match-workspace>header>span{justify-self:end;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.manual-match-layout{display:grid;grid-template-columns:minmax(440px,1.05fr) minmax(360px,.95fr);gap:12px;min-height:0}.unmatched-paper-preview{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:500px;padding:28px 34px 18px;border:1px solid var(--border-strong);border-radius:4px;background:#fff;box-shadow:0 8px 20px #2d433514}.paper-preview-head{display:flex;justify-content:space-between;padding-bottom:14px;border-bottom:2px solid var(--text);font-family:SimSun,serif;font-size:13px}.paper-question-lines{position:relative;padding:28px 16px;font-family:SimSun,serif}.paper-question-lines p{margin:12px 0 8px;font-size:14px}.paper-question-lines i{display:block;height:1px;margin:16px 0;background:var(--border-strong)}.paper-question-lines b{position:absolute;right:10px;bottom:10px;padding:4px 7px;border:1px solid var(--faint);font-size:13px;font-weight:400}.unmatched-paper-preview>footer{color:var(--muted);font-size:13px;text-align:center}.student-match-panel{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;border:1px solid var(--border);border-radius:8px;background:#fff;overflow:hidden}.student-match-panel>header{display:grid;gap:10px;padding:14px;border-bottom:1px solid var(--border)}.student-match-panel>header>div{display:grid}.student-match-panel>header strong{font-size:13px}.student-match-panel>header small{margin-top:3px;color:var(--muted);font-size:13px}.student-match-panel>div{min-height:0;overflow:auto;padding:8px}.student-match-panel>div>button{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;gap:9px;align-items:center;width:100%;min-height:52px;padding:7px 9px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);text-align:left}.student-match-panel>div>button:hover,.student-match-panel>div>button.active{border-color:var(--success-border);background:var(--success-bg)}.student-match-panel>div>button>span:nth-child(2){display:grid}.student-match-panel>div>button strong{font-size:13px}.student-match-panel>div>button small{margin-top:3px;color:var(--muted);font-size:13px}.manual-match-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px}.manual-match-actions>div{display:flex;gap:8px}.assignment-ai-submitted{display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;width:min(820px,100%);margin:auto;padding:32px;border:1px solid var(--success-border);border-radius:8px;background:#fff}.assignment-ai-submitted>span{display:grid;width:64px;height:64px;place-items:center;border-radius:50%;background:var(--primary-soft);color:var(--primary-hover)}.assignment-ai-submitted h2{margin-top:5px;font-size:24px}.assignment-ai-submitted p{margin-top:7px;color:var(--muted);font-size:13px}.assignment-ai-submitted dl{display:grid;grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));margin:2px 0 0;border:1px solid var(--border);border-radius:7px;overflow:hidden}.assignment-ai-submitted dl>div{display:grid;gap:4px;padding:12px 14px;border-right:1px solid var(--border)}.assignment-ai-submitted dl>div:last-child{border-right:0}.assignment-ai-submitted dt{color:var(--muted);font-size:13px}.assignment-ai-submitted dd{margin:0;font-size:13px;font-weight:700}.assignment-scan-modal,.assignment-confirm-modal,.assignment-ai-notice{overflow:hidden;border:1px solid var(--border-strong);border-radius:8px;background:#fff;box-shadow:0 18px 46px #22362a33}.assignment-scan-modal{width:min(760px,calc(100vw - 32px))}.assignment-scan-modal>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--border)}.assignment-scan-modal>header h2{margin-top:3px;font-size:21px}.assignment-scan-modal>header>span{color:var(--muted);font-size:13px}.scan-placement-content{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:center;padding:28px}.scanner-visual{display:grid;min-height:220px;overflow:hidden;place-items:center;align-content:start;gap:12px;padding-bottom:13px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--primary-hover)}.scanner-visual img{display:block;width:100%;height:176px;object-fit:cover;border-bottom:1px solid var(--border)}.scanner-visual strong{font-size:13px}.scan-placement-content ol{display:grid;gap:15px;margin:0;padding:0;list-style:none}.scan-placement-content li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:center}.scan-placement-content li>span{display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--success-border);border-radius:50%;color:var(--success-text);font-size:13px;font-weight:700}.scan-placement-content li>div{display:grid}.scan-placement-content li strong{font-size:13px}.scan-placement-content li small{margin-top:3px;color:var(--muted);font-size:13px}.modal-scanning-state,.modal-scan-complete{display:grid;min-height:320px;padding:48px;place-items:center;align-content:center;gap:12px}.modal-scanning-state{color:var(--primary)}.modal-scanning-state strong{font-size:28px;font-variant-numeric:tabular-nums}.modal-scanning-state .n-progress{width:min(520px,100%)}.modal-scanning-state small,.modal-scan-complete small{color:var(--muted);font-size:13px}.modal-scan-complete{color:var(--primary-hover)}.modal-scan-complete strong{font-size:20px}.assignment-scan-modal>footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border);background:var(--surface-soft)}.assignment-confirm-modal{display:grid;width:min(460px,calc(100vw - 32px));padding:28px;place-items:center;text-align:center}.assignment-confirm-modal>span{display:grid;width:62px;height:62px;place-items:center;border-radius:50%;background:var(--success-bg);color:var(--primary-hover)}.assignment-confirm-modal h2{margin-top:14px;font-size:21px}.assignment-confirm-modal p{margin-top:8px;color:var(--muted);font-size:13px;line-height:1.7}.assignment-confirm-modal>div{display:flex;gap:8px;margin-top:18px}.assignment-ai-notice{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;width:min(620px,calc(100vw - 32px));padding:24px}.assignment-ai-notice>span{display:grid;width:54px;height:54px;place-items:center;border-radius:50%;background:var(--success-bg);color:var(--primary-hover)}.assignment-ai-notice h2{font-size:19px}.assignment-ai-notice p{margin-top:7px;color:var(--muted);font-size:13px}.assignment-ai-notice footer{display:flex;grid-column:1 / -1;justify-content:flex-end;gap:8px;padding-top:8px}.assignment-admin-shell{display:grid;grid-template-columns:244px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0}.assignment-admin-tabs{display:flex;grid-row:1 / -1;flex-direction:column;gap:8px;padding:14px 12px;border-right:1px solid var(--border);background:var(--surface-soft)}.assignment-admin-purpose{display:grid;gap:5px;margin-bottom:4px;padding:12px;border:1px solid var(--border-strong);border-radius:7px;background:#fff}.assignment-admin-purpose strong{color:var(--text);font-size:13px}.assignment-admin-purpose small{color:var(--muted);font-size:13px;line-height:1.6}.assignment-admin-tabs>button{display:grid;grid-template-columns:24px minmax(0,1fr) 18px;gap:8px;align-items:center;min-height:68px;padding:10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);text-align:left}.assignment-admin-tabs>button:hover{background:var(--neutral-hover)}.assignment-admin-tabs>button.active{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.assignment-admin-tabs>button>span{display:grid}.assignment-admin-tabs>button strong{font-size:13px}.assignment-admin-tabs>button small{margin-top:4px;font-size:13px}.assignment-admin-content{min-width:0;min-height:0;padding:14px 16px;overflow:auto}.assignment-admin-content>.shared-auto-cut-panel{display:grid;gap:12px;min-height:100%}.assignment-admin-content .cut-editor-layout,.assignment-admin-content .scoring-rule-layout{height:calc(100dvh - 190px);min-height:520px}.assignment-admin-footer{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:14px;align-items:end;padding:12px 16px;border-top:1px solid var(--border);background:#fff}.assignment-admin-footer label{display:grid;gap:6px}.assignment-admin-footer label>span{color:var(--muted);font-size:13px;font-weight:700}.visually-hidden-file{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@keyframes assignment-spin{to{transform:rotate(360deg)}}@media (max-width: 1260px){.assignment-filter{grid-template-columns:minmax(220px,1fr) repeat(3,140px)}.assignment-filter .n-date-picker{grid-column:1 / 4}.assignment-filter>span{justify-self:end}.assignment-card{grid-template-columns:78px minmax(0,1fr) 180px}.assignment-setup-panel{grid-template-columns:320px minmax(0,1fr)}.assignment-scanner-scene{width:250px}.assignment-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.assignment-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-filter .n-date-picker{grid-column:1 / -1}.assignment-card{grid-template-columns:68px minmax(0,1fr)}.assignment-card-actions{grid-column:1 / -1;grid-template-columns:auto minmax(0,1fr);align-items:center;justify-items:start}.assignment-card-actions>div{justify-self:end}.assignment-material-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-report-head{align-items:flex-start;flex-direction:column}.assignment-setup-panel,.manual-match-layout{grid-template-columns:1fr}.assignment-scanner-guide{padding:0 0 18px;border-right:0;border-bottom:1px solid var(--border)}.assignment-selection-rows>div{grid-template-columns:1fr}.assignment-three-stage small{display:none}.assignment-admin-shell{grid-template-columns:200px minmax(0,1fr)}}@media (prefers-reduced-motion: reduce){.assignment-card,.assignment-pill-group button{transition:none}.student-matching-loading .matching-orbit svg,.modal-scanning-state>svg{animation:none}}.prototype-root{display:grid;grid-template-rows:44px minmax(0,1fr);width:100%;height:100dvh;min-width:1024px;overflow:hidden;background:#e6eeea}.prototype-toolbar{position:relative;z-index:2100;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 16px;border-bottom:1px solid var(--border);background:var(--surface-soft)}.prototype-toolbar>div:first-child{display:flex;align-items:baseline;gap:8px}.prototype-toolbar strong{color:var(--text);font-size:13px}.prototype-toolbar span{color:var(--muted);font-size:13px}.prototype-controls{display:flex;align-items:center;gap:7px}.page-index-trigger{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--muted);font-size:13px}.page-index-trigger:hover,.page-index-trigger.active{border-color:var(--success-border);background:var(--success-bg);color:var(--primary-hover)}.page-index-panel{position:absolute;z-index:2300;top:38px;right:16px;display:grid;grid-template-rows:48px minmax(0,1fr);width:min(820px,calc(100vw - 32px));max-height:calc(100dvh - 62px);border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 18px 46px #1f37282e;overflow:hidden}.page-index-panel>header{display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--border);background:var(--surface-soft)}.page-index-panel>header>div{display:grid}.page-index-panel>header strong{color:var(--text);font-size:13px}.page-index-panel>header span{margin-top:2px;font-size:13px}.page-index-panel>header button{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:5px;background:transparent;color:var(--muted)}.page-index-panel>header button:hover{background:var(--neutral-hover);color:var(--text)}.page-index-panel>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;overflow:auto}.page-index-panel section{min-width:0}.page-index-panel h3{margin-bottom:6px;color:var(--muted);font-size:13px}.page-index-panel section>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.page-index-panel section button{min-height:34px;padding:0 8px;border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--text);font-size:13px;text-align:left}.page-index-panel section button:hover{border-color:var(--success-border);background:var(--success-bg);color:var(--primary-hover)}.delivery-segment{display:flex;gap:3px;padding:3px;border-radius:7px;background:var(--neutral-hover)}.delivery-segment button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 10px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:13px}.delivery-segment button:hover{color:var(--success-text)}.delivery-segment button.active{background:#fff;color:var(--primary-hover);font-weight:700;box-shadow:0 2px 6px #253e2f14}.business-root{position:relative;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;transform:translateZ(0);isolation:isolate}.client-mount{background:var(--page)}.assignment-sdk-mount{min-width:0;background:var(--surface-soft)}.sdk-host-preview{display:grid;grid-template-rows:52px minmax(0,1fr);min-height:0;background:var(--neutral-hover)}.sdk-host-header{display:grid;grid-template-columns:220px minmax(0,1fr) auto;align-items:center;padding:0 18px;background:#253a31;color:#fff}.host-brand{display:flex;align-items:center;gap:9px}.host-brand>span{display:grid;width:30px;height:30px;place-items:center;border-radius:6px;background:var(--primary);color:#fff;font-size:13px;font-weight:800}.host-brand strong{font-size:13px}.sdk-host-header nav{display:flex;align-items:stretch;justify-content:center;height:100%;gap:6px}.sdk-host-header nav span{display:flex;align-items:center;padding:0 12px;color:#b9c7bf;font-size:13px}.sdk-host-header nav span.active{background:#ffffff14;color:#fff}.host-tools{display:flex;align-items:center;gap:12px;color:#c8d3cd}.host-tools span{color:#fff;font-size:13px}.sdk-host-content{display:grid;grid-template-columns:140px minmax(0,1fr);min-height:0}.sdk-host-content>aside{display:flex;flex-direction:column;gap:4px;padding:14px 9px;border-right:1px solid var(--border);background:#fff}.sdk-host-content>aside span{padding:9px 10px;border-radius:5px;color:var(--muted);font-size:13px}.sdk-host-content>aside span.active{background:var(--success-bg);color:var(--primary-hover);font-weight:700}.sdk-work-area{display:grid;grid-template-rows:34px minmax(0,1fr);min-width:0;min-height:0;padding:0 14px 14px}.sdk-context-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.sdk-context-bar span{color:var(--muted);font-size:13px}.sdk-context-bar i{color:var(--muted);font-size:13px;font-style:normal}.sdk-mount{border:1px solid var(--border-strong);border-radius:8px;background:#fff;box-shadow:0 8px 24px #26403014}.business-root .focus-overlay{position:absolute;min-width:1024px;min-height:0}.business-root .workbench-overlay{position:absolute}.business-root .focus-context .focus-mode-badge{margin:0 0 2px;padding:2px 7px;border-radius:4px;background:var(--primary-soft);color:var(--success-text);font-size:13px;font-weight:800}.business-root .cut-editor-layout,.business-root .scoring-rule-layout{height:100%}.sdk-mount .focus-overlay,.sdk-mount .workbench-overlay{min-width:0;border-radius:8px}.assignment-sdk-mount .focus-overlay,.assignment-sdk-mount .workbench-overlay{min-width:0}.student-detail-focus-main{min-width:0;min-height:0;overflow:auto;background:var(--page)}.student-detail-workbench .student-detail-inner-back{display:none}.student-detail-workbench .student-detail-focus-main>.page-content{max-width:none;min-height:100%;padding-top:20px}.sdk-mount .sidebar{box-shadow:none}.sdk-mount .topbar{padding-right:18px;padding-left:18px}.sdk-mount .page-content{padding:20px 22px 34px}.assignment-sdk-mount .page-content{width:min(1560px,100%);padding:24px 28px 40px}.sdk-mount .focus-topbar,.sdk-mount .workbench-topbar{border-radius:8px 8px 0 0}@media (max-width: 1180px){.prototype-root{min-width:768px}.sdk-host-content{grid-template-columns:110px minmax(0,1fr)}.sdk-host-header{grid-template-columns:180px minmax(0,1fr) auto}.sdk-host-header nav span{padding:0 7px}.sdk-mount .top-status{display:none}}
