.report-studio{border:1px solid var(--line);border-top:0;background:#fff;padding:26px 22px}.report-studio>header{display:flex;align-items:end;justify-content:space-between;gap:30px}.report-studio>header span{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.06em}.report-studio h2{margin:5px 0 0;font-size:20px}.report-studio>header p{max-width:650px;margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.6}.report-authority{display:grid;text-align:right}.report-authority strong{color:var(--blue);font-size:10px}.report-authority small{margin-top:4px;color:var(--muted);font-size:9px}.report-gates{display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px;border-block:1px solid var(--line)}.report-gates article{display:flex;align-items:center;gap:12px;border-right:1px solid var(--line);padding:14px}.report-gates article:last-child{border-right:0}.report-gates b{display:grid;place-items:center;width:28px;height:28px;border:1px solid #b9c9d8;border-radius:50%;color:var(--blue);font-size:9px}.report-gates div{display:grid}.report-gates small{color:var(--muted);font-size:9px}.report-gates strong{margin-top:3px;font-size:10px}.report-gates article.ready b{border-color:var(--green);background:var(--green);color:#fff}.report-gates article.ready strong{color:#237355}.report-gates article.fail b{border-color:#d85b5b;color:#b43f3f}.report-gates article.fail strong{color:#9b4040}.report-gates article.locked{background:var(--soft)}.report-body{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);border-bottom:1px solid var(--line)}#report-form{border-right:1px solid var(--line);padding:22px}#report-form fieldset{margin:0;border:0;padding:0}#report-form fieldset+fieldset{margin-top:22px}#report-form legend{margin-bottom:10px;font-size:11px;font-weight:800}#report-form legend small{margin-left:6px;color:var(--muted);font-size:9px;font-weight:500}#report-form label{display:flex;align-items:flex-start;gap:9px;border-top:1px solid var(--line);padding:12px 0;color:#354d67;font-size:10px;line-height:1.5}#report-form input{margin-top:2px;accent-color:var(--blue)}.student-notes label{position:relative;display:grid!important;grid-template-columns:96px minmax(0,1fr);gap:10px!important}.student-notes label>span{display:grid}.student-notes label b{color:var(--navy);font-size:10px}.student-notes label small{margin-top:4px;color:var(--muted);font-size:9px}.student-notes textarea{min-height:76px;resize:vertical;border:1px solid #b9c9d8;border-radius:2px;background:#fbfdff;padding:10px;color:var(--navy);font:10px/1.6 "Segoe UI","Microsoft YaHei",sans-serif}.student-notes textarea:focus{outline:2px solid #87b8f4;outline-offset:1px;border-color:var(--blue)}.student-notes textarea.valid{border-color:var(--green);background:#f7fcfa}.student-notes output{position:absolute;right:7px;bottom:3px;color:var(--muted);font-size:8px}.student-notes output.ready{color:var(--green);font-weight:800}.report-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}.report-actions button{min-height:44px;border:1px solid #9fbce0;background:#fff;color:var(--blue);font:800 10px "Segoe UI","Microsoft YaHei",sans-serif;cursor:pointer}.report-actions .report-build{border-color:var(--blue);background:var(--blue);color:#fff}.report-actions button:disabled{border-color:#d7e1ea;background:#eef2f5;color:#8b9baa;cursor:not-allowed}#report-status{margin:13px 0 0;border-left:3px solid #a7b9ca;background:var(--soft);padding:10px;color:var(--muted);font-size:10px;line-height:1.5}#report-status.pass{border-left-color:var(--green);background:#eef8f4;color:#356453}#report-status.fail{border-left-color:#d85b5b;background:#fff2f2;color:#8c4141}.report-preview{min-width:0;background:var(--navy);padding:22px}.report-preview header{display:flex;justify-content:space-between;border-bottom:1px solid #526b86;padding-bottom:12px}.report-preview small{color:#8ebafd;font-size:9px}.report-preview strong{color:#fff;font-size:9px}.report-preview pre{max-height:620px;overflow:auto;margin:15px 0 0;white-space:pre-wrap;color:#e6eef8;font:10px/1.75 Consolas,"Microsoft YaHei",monospace}.report-studio>footer{display:flex;gap:10px;padding:14px 0 0;color:var(--muted);font-size:10px;line-height:1.6}.report-studio>footer strong{color:var(--navy);white-space:nowrap}@media(max-width:960px){.report-body{grid-template-columns:1fr}.report-body #report-form{border-right:0;border-bottom:1px solid var(--line)}.report-preview pre{max-height:460px}}@media(max-width:620px){.report-studio{margin-inline:-16px;border-inline:0;padding:22px 16px}.report-studio>header{display:block}.report-authority{margin-top:10px;text-align:left}.report-gates{display:block}.report-gates article{border-right:0;border-bottom:1px solid var(--line);padding-inline:0}.report-gates article:last-child{border-bottom:0}#report-form{padding:20px 0}.student-notes label{grid-template-columns:1fr}.student-notes textarea{min-height:92px}.report-actions{grid-template-columns:1fr}.report-preview{margin-inline:-16px;padding:20px 16px}.report-preview pre{max-height:none;overflow:visible}.report-studio>footer{display:block}.report-studio>footer strong{display:block;margin-bottom:5px}}.mastery-map{margin-top:20px;border:1px solid var(--line);background:#f8fbff}.mastery-map>header{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:18px 20px}.mastery-map>header small{color:var(--blue);font-size:9px;font-weight:850;letter-spacing:.06em}.mastery-map h3{margin:5px 0 0;font-size:16px}.mastery-map>header p{max-width:460px;margin:0;color:var(--muted);font-size:9px;line-height:1.6}.mastery-map ol{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.mastery-map li{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;min-height:72px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px}.mastery-map li:nth-child(3n){border-right:0}.mastery-map li:nth-last-child(-n+3){border-bottom:0}.mastery-map li>b{display:grid;place-items:center;width:28px;height:28px;border:1px solid #9fbce0;border-radius:50%;color:var(--blue);font-size:8px}.mastery-map li div{display:grid;gap:3px}.mastery-map li strong{font-size:10px}.mastery-map li span{color:var(--muted);font-size:8px;line-height:1.4}.mastery-map li em{color:var(--blue);font-size:8px;font-style:normal;font-weight:800}.knowledge-check{border-top:1px solid var(--line)!important;padding-top:18px!important}.knowledge-item{margin-top:14px;border:1px solid var(--line);background:#f8fbfe;padding:12px}.knowledge-item>strong{display:block;margin-bottom:6px;color:var(--navy);font-size:11px}.knowledge-item label{padding:9px 0!important}.report-body{align-items:start;background:linear-gradient(90deg,#fff 0 41%,#f3f6f9 41%)}.report-preview{align-self:start;min-height:660px}.report-preview pre{max-height:590px}@media(max-width:960px){.mastery-map ol{grid-template-columns:repeat(2,1fr)}.mastery-map li:nth-child(3n){border-right:1px solid var(--line)}.mastery-map li:nth-child(2n){border-right:0}.mastery-map li:nth-last-child(-n+3){border-bottom:1px solid var(--line)}.mastery-map li:nth-last-child(-n+2){border-bottom:0}.report-body{background:#fff}.report-preview{min-height:0}.report-preview pre{max-height:560px}}@media(max-width:620px){.mastery-map>header{display:block;padding:16px}.mastery-map>header p{margin-top:7px}.mastery-map ol{grid-template-columns:1fr}.mastery-map li,.mastery-map li:nth-child(3n),.mastery-map li:nth-child(2n),.mastery-map li:nth-last-child(-n+3){border-right:0;border-bottom:1px solid var(--line)}.mastery-map li:last-child{border-bottom:0}.knowledge-item{padding:11px 10px}.knowledge-item>strong{font-size:13px}.report-preview pre{max-height:none}}.knowledge-item label{min-height:44px;align-items:center!important}