:root{--ink:#182230;--muted:#667085;--line:#dce3ec;--soft-line:#edf1f6;--surface:#fff;--canvas:#f4f6f8;--navy:#173b66;--navy-strong:#102f55;--blue:#2463a7;--emerald:#087f5b;--emerald-soft:#eaf8f2;--amber:#b05b08;--amber-soft:#fff6e5;--red:#b42318;--red-soft:#fff0ee;--shadow:0 12px 30px #18223014}*{box-sizing:border-box}html{background:var(--canvas)}body{color:var(--ink);background:var(--canvas);letter-spacing:0;margin:0;font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,Arial,sans-serif}button,input,textarea,select{font:inherit;letter-spacing:0}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:1px;outline:3px solid #2463a733}.access-shell{background:#f3f6f8;grid-template-rows:64px minmax(0,1fr) 44px;min-height:100vh;display:grid}.access-header{border-bottom:1px solid var(--line);background:#fff;align-items:center;padding:0 28px;display:flex}.access-main{place-items:center;padding:36px 20px;display:grid}.access-panel{background:#fff;border:1px solid #d6dee8;border-radius:8px;width:min(420px,100%);padding:32px;display:grid;box-shadow:0 18px 44px #1822301a}.access-lock{width:46px;height:46px;color:var(--emerald);background:var(--emerald-soft);border:1px solid #b9d8cd;border-radius:7px;place-items:center;margin-bottom:20px;display:grid}.access-title h1{color:var(--navy-strong);margin:0;font-size:24px;line-height:1.25}.access-title p{color:var(--muted);margin:7px 0 24px;font-size:13px}.access-field{color:#344054;gap:8px;font-size:12px;font-weight:800;display:grid}.access-input{background:#fff;border:1px solid #cbd5e1;border-radius:6px;grid-template-columns:minmax(0,1fr) 42px;min-height:44px;display:grid;overflow:hidden}.access-input:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2463a71f}.access-input input{min-width:0;color:var(--ink);border:0;outline:0;padding:0 13px;font-size:14px}.access-input button{border:0;border-left:1px solid var(--soft-line);color:#667085;cursor:pointer;background:#f8fafc;place-items:center;display:grid}.access-error{color:#8c251d;background:var(--red-soft);border:1px solid #f0b8b2;border-radius:6px;align-items:flex-start;gap:8px;margin-top:13px;padding:10px 11px;font-size:12px;line-height:1.5;display:flex}.access-error svg{flex:none;margin-top:1px}.access-submit{border:1px solid var(--navy);color:#fff;background:var(--navy);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:44px;margin-top:18px;font-weight:800;display:flex}.access-submit:hover:not(:disabled){background:#0d3158}.access-submit:disabled{opacity:.55;cursor:default}.access-footer{border-top:1px solid var(--line);color:var(--muted);background:#fff;place-items:center;font-size:10px;display:grid}.app-shell{grid-template-rows:64px minmax(0,1fr);grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.topbar{z-index:30;border-bottom:1px solid var(--line);background:#fffffff7;grid-column:1/-1;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.product-mark{align-items:center;gap:11px;min-width:0;display:flex}.product-mark>span{color:#fff;background:var(--navy);border-radius:6px;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.product-mark div,.topbar-status div{gap:2px;min-width:0;display:grid}.product-mark strong{color:var(--navy-strong);font-size:15px}.product-mark small,.topbar-status small{color:var(--muted);font-size:10px}.topbar-status{text-align:right;align-items:center;gap:9px;display:flex}.topbar-status .icon-button{flex:none;margin-left:4px}.topbar-status strong{font-size:12px}.status-dot{background:#c5cbd3;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #eef1f4}.status-dot.ok{background:var(--emerald);box-shadow:0 0 0 4px var(--emerald-soft)}.status-dot.warn{box-shadow:0 0 0 4px var(--amber-soft);background:#e68a18}.sidebar{border-right:1px solid var(--line);background:#fbfcfd;height:calc(100vh - 64px);padding:22px 16px;position:sticky;top:64px;overflow:auto}.sidebar-head{color:var(--muted);text-transform:uppercase;justify-content:space-between;align-items:center;margin:0 6px 14px;font-size:11px;font-weight:800;display:flex}.sidebar-close,.mobile-menu{display:none!important}.step-nav{gap:4px;display:grid}.step-nav>div{color:#6b7280;border-radius:6px;align-items:center;gap:10px;min-height:42px;padding:8px 10px;font-size:13px;font-weight:700;display:flex}.step-nav b{border:1px solid #cfd6df;border-radius:50%;flex:0 0 26px;place-items:center;height:26px;font-size:11px;display:grid}.step-nav .active{color:var(--navy-strong);background:#eaf0f7}.step-nav .active b{color:#fff;border-color:var(--navy);background:var(--navy)}.step-nav .done b{color:var(--emerald);background:var(--emerald-soft);border-color:#a5d8c8}.new-task-button{width:100%;min-height:40px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #b9c9da;border-radius:6px;justify-content:center;align-items:center;gap:8px;margin:18px 0 24px;font-weight:800;display:flex}.new-task-button:hover{border-color:var(--navy);background:#f3f7fb}.history-heading{color:var(--muted);align-items:center;gap:7px;margin:0 6px 10px;font-size:11px;font-weight:800;display:flex}.history-list{gap:5px;display:grid}.history-row{border:1px solid #0000;border-radius:6px;grid-template-columns:minmax(0,1fr) 28px;align-items:center;display:grid}.history-row:hover,.history-row.selected{background:#fff;border-color:#cbd7e4}.history-row.selected{box-shadow:inset 3px 0 0 var(--blue)}.history-row>button:first-child{text-align:left;cursor:pointer;background:0 0;border:0;min-width:0;padding:9px 7px 9px 10px}.history-row strong,.history-row span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.history-row strong{font-size:12px}.history-row span{color:var(--muted);margin-top:4px;font-size:10px}.history-empty{color:#98a2b3;margin:16px 6px;font-size:12px}.storage-note{color:#526173;border-top:1px solid var(--soft-line);gap:8px;margin-top:24px;padding:11px;font-size:10px;line-height:1.6;display:flex}.storage-note svg{color:var(--emerald);flex:none;margin-top:1px}.main-content{min-width:0;padding:28px 32px 60px}.workflow-page{width:min(1180px,100%);margin:0 auto}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.page-heading>div:first-child{min-width:0}.page-heading>div:first-child>span,.report-toolbar>div:first-child>span{color:var(--emerald);font-size:11px;font-weight:900}.page-heading h1,.report-toolbar h1{color:#172b43;margin:5px 0 8px;font-size:28px;line-height:1.2}.page-heading p,.report-toolbar p{max-width:720px;color:var(--muted);margin:0;font-size:13px;line-height:1.7}.trust-strip{color:#116149;background:var(--emerald-soft);border:1px solid #b9dfd1;border-radius:6px;flex:none;align-items:center;gap:8px;padding:10px 12px;font-size:11px;font-weight:800;display:flex}.form-band,.upload-band,.review-student-band,.evidence-band,.ability-band,.confirmation-band,.report-editor{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-bottom:18px;padding:22px;box-shadow:0 3px 10px #18223008}.section-title{align-items:flex-start;gap:10px;margin-bottom:18px;display:flex}.section-title svg{color:var(--blue);flex:none}.section-title div{min-width:0}.section-title h2{color:#223a57;margin:0 0 4px;font-size:15px}.section-title p{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.compact-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}label{min-width:0}label>span{color:#42526a;margin-bottom:6px;font-size:11px;font-weight:800;display:block}input,textarea,select{width:100%;min-height:38px;color:var(--ink);background:#fff;border:1px solid #cfd7e2;border-radius:5px;padding:8px 10px;font-size:12px}textarea{resize:vertical;min-height:76px;line-height:1.6}input::placeholder,textarea::placeholder{color:#9aa4b2}.wide-field{grid-column:span 2}.score-pair{grid-template-columns:1fr 1fr;gap:7px;display:grid}.mode-control,.style-switch{background:#f3f5f8;border:1px solid #d5dde7;border-radius:6px;grid-auto-flow:column;gap:2px;margin-top:16px;padding:3px;display:inline-grid}.mode-control button,.style-switch button{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:4px;min-height:32px;padding:0 14px;font-size:11px;font-weight:800}.mode-control button.selected,.style-switch button.selected{color:var(--navy);background:#fff;box-shadow:0 1px 4px #1822301a}.drop-zone{width:100%;min-height:158px;color:var(--navy);cursor:pointer;background:#f8fbfd;border:1px dashed #9db2c8;border-radius:7px;justify-items:center;gap:8px;padding:24px;display:grid}.drop-zone:hover{border-color:var(--blue);background:#f2f7fb}.drop-zone span{color:var(--muted);font-size:11px}.page-thumbs{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.page-thumbs figure{border:1px solid var(--line);background:#f5f7f9;border-radius:6px;min-width:0;margin:0;position:relative;overflow:hidden}.page-thumb-media{aspect-ratio:3/4;background:#e9edf2;width:100%;position:relative;overflow:hidden}.page-thumbs img{object-fit:cover;display:block;width:100%!important;height:100%!important}.page-thumbs figcaption{gap:3px;padding:7px;font-size:10px;display:grid}.page-thumbs figcaption small{color:var(--muted)}.page-order-controls{gap:3px;display:flex;position:absolute;top:5px;left:5px}.page-order-controls .icon-button,.page-thumbs .page-delete{background:#fffffff5;border:1px solid #cfd7e2e6;width:28px;height:28px;box-shadow:0 1px 4px #1822301f}.page-order-controls .icon-button:disabled{opacity:.42;cursor:default}.page-thumbs .page-delete{color:var(--red);position:absolute;top:5px;right:5px}.authorization-row{border:1px solid #c9ded6;border-left:3px solid var(--emerald);background:#f4fbf8;border-radius:6px;align-items:center;min-height:46px;margin-top:16px;padding:11px 13px;display:flex}.authorization-row .check-label{align-items:center}.authorization-row .check-label input{margin-top:0}.authorization-row .check-label span{color:#294f44;font-size:11px;font-weight:800}.primary-action-row{justify-content:space-between;align-items:center;gap:20px;margin-top:18px;display:flex}.primary-action-row>div{color:var(--muted);align-items:center;gap:7px;font-size:11px;display:flex}.primary-action-row>div svg{color:var(--emerald)}.primary-button,.secondary-button,.error-banner>button:not(.icon-button){cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 15px;font-size:12px;font-weight:800;display:inline-flex}.primary-button{color:#fff;border:1px solid var(--navy);background:var(--navy)}.primary-button:hover{background:var(--navy-strong)}.primary-button:disabled{opacity:.45;cursor:not-allowed}.secondary-button{color:var(--navy);background:#fff;border:1px solid #b9c8d8}.secondary-button:hover{border-color:var(--navy);background:#f6f9fc}.icon-button{color:#6b7788;cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;width:28px;height:28px;padding:0;display:grid}.icon-button:hover{color:var(--navy);background:#edf2f7}.error-banner,.success-banner{z-index:20;width:min(1180px,100%);box-shadow:var(--shadow);border-radius:6px;align-items:center;gap:10px;margin:0 auto 16px;padding:11px 13px;font-size:12px;display:flex;position:sticky;top:74px}.error-banner{color:#8c251d;background:var(--red-soft);border:1px solid #f0b8b2}.success-banner{color:#116149;background:var(--emerald-soft);border:1px solid #b9dfd1}.error-banner>span,.success-banner>span{flex:1;min-width:0;line-height:1.5}.error-banner>button:not(.icon-button){color:#8c251d;background:#fff;border:1px solid #e2a29b;min-height:30px;padding:0 10px}.busy-overlay{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#111e2d75;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.busy-dialog{text-align:center;background:#fff;border-radius:8px;width:min(410px,100%);padding:28px;box-shadow:0 24px 70px #0f1f3147}.busy-dialog svg{color:var(--blue)}.busy-dialog h2{margin:15px 0 7px;font-size:17px}.busy-dialog p{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.elapsed-time{color:var(--navy);margin-top:12px;font-size:12px;display:block}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.progress-track{background:#e7ecf2;border-radius:4px;height:7px;margin-top:18px;overflow:hidden}.progress-track b{border-radius:inherit;background:var(--emerald);height:100%;transition:width .35s;display:block}.progress-track.indeterminate b{animation:1.35s ease-in-out infinite progress-slide;width:32%!important}@keyframes progress-slide{0%{transform:translate(-115%)}to{transform:translate(330%)}}.processing-page{text-align:center;justify-items:center;gap:10px;padding:14vh 20px;display:grid}.processing-page h1{margin:8px 0 0;font-size:24px}.processing-page p{color:var(--muted);font-size:13px}.processing-page>strong{color:var(--navy);font-size:13px}.processing-page>small{color:var(--amber);font-size:11px}.processing-page .secondary-button{margin-top:8px}.resume-report-page{width:min(900px,100%)}.resume-report-card{background:#fff;border:1px solid #cfdbe8;border-radius:8px;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:16px;margin-bottom:18px;padding:20px 22px;display:grid;box-shadow:0 5px 16px #182e480d}.resume-report-card>svg{box-sizing:content-box;color:var(--blue);background:#eaf1f9;border-radius:6px;padding:10px}.resume-report-card div{min-width:0}.resume-report-card strong{color:#1f3b5b;font-size:15px;line-height:1.4;display:block}.resume-report-card p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.65}.quality-badge{border:1px solid var(--line);background:#fff;border-radius:6px;flex:none;min-width:110px;padding:10px 12px}.quality-badge span,.quality-badge strong{display:block}.quality-badge span{color:var(--muted);font-size:10px}.quality-badge strong{margin-top:4px;font-size:14px}.quality-badge.clear strong{color:var(--emerald)}.quality-badge.usable strong{color:var(--amber)}.quality-badge.poor strong{color:var(--red)}.warning-list{color:#7b4a06;background:var(--amber-soft);border:1px solid #ecd3a4;border-radius:6px;gap:10px;margin-bottom:18px;padding:13px 15px;display:flex}.warning-list svg{flex:none}.warning-list p{margin:0 0 4px;font-size:11px;line-height:1.5}.evidence-list{gap:11px;display:grid}.evidence-list article{border:1px solid var(--line);background:#fcfdfe;border-radius:6px;padding:15px}.evidence-list article.needs-review{border-left:3px solid #e29424}.evidence-list article.excluded{opacity:.48}.evidence-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.check-label{cursor:pointer;align-items:flex-start;gap:8px;display:flex}.check-label input{width:16px;min-height:16px;accent-color:var(--emerald);flex:none;margin:1px 0 0}.check-label span{color:#31445c;margin:0;font-size:12px;line-height:1.5}.confidence{color:var(--muted);font-size:10px}.evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.evidence-grid .wide-field{grid-column:span 3}.evidence-grid textarea{min-height:60px}.ability-inputs{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.confirmation-band{gap:14px;display:grid}.confirmation-band .primary-button{justify-self:end;margin-top:4px}.report-toolbar{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.report-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.report-actions .style-switch{margin:0 4px 0 0}.report-editor{grid-template-columns:1fr 1fr;gap:13px;display:grid}.report-editor .section-title,.report-editor>label:nth-of-type(2),.report-editor>label:nth-of-type(3){grid-column:1/-1}.report-editor .section-title{margin-bottom:0}.report-editor .section-title .icon-button{margin-left:auto}.report-editor .primary-button{grid-column:2;justify-self:end}.evidence-audit-panel{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:18px;padding:20px;box-shadow:0 3px 10px #18223008}.evidence-audit-panel .section-title{margin-bottom:14px}.evidence-audit-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.evidence-audit-grid article{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fbfcfe;align-content:start;gap:8px;min-width:0;padding:14px 15px;display:grid}.evidence-audit-grid article.uncertain{background:var(--amber-soft);box-shadow:inset 3px 0 #d88918}.evidence-audit-grid article>div{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.evidence-audit-grid article strong{color:#253f5d;overflow-wrap:anywhere;min-width:0;font-size:11px;line-height:1.45}.evidence-audit-grid article span{color:#64758a;text-align:right;flex:none;font-size:9px;font-weight:800;line-height:1.45}.evidence-audit-grid article.uncertain span{color:#8a5207}.evidence-audit-grid article p{color:#52647a;overflow-wrap:anywhere;margin:0;font-size:10px;line-height:1.6}.evidence-audit-grid article small{color:var(--emerald);overflow-wrap:anywhere;font-size:9px;font-weight:800;line-height:1.5}.report-preview-stage{border:1px solid var(--line);background:#e8edf2;border-radius:8px;padding:22px;overflow:auto}.report-canvas{width:fit-content;min-width:100%;margin:0 auto}.score-ring-wrap{place-items:center;width:132px;height:132px;display:grid;position:relative}.score-ring{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.score-ring circle{fill:none;stroke-width:9px}.score-ring-track{stroke:#dfe7ef}.score-ring-value{stroke:var(--emerald);stroke-linecap:round}.score-ring-label{justify-items:center;gap:3px;display:grid;position:relative}.score-ring-label strong{color:#17324f;font-size:25px}.score-ring-label span{color:#697789;font-size:10px}.ability-radar{width:100%;max-height:69mm;display:block}.radar-grid{fill:none;stroke:#d8e0e8;stroke-width:1px}.radar-axis{stroke:#e1e7ed;stroke-width:1px}.radar-value{fill:#087f5b29;stroke:var(--emerald);stroke-width:2px}.ability-radar text{fill:#405269;font-size:9px;font-weight:800}.report-empty{color:#81510d;background:var(--amber-soft);border-left:.8mm solid #d88a1e;padding:8mm 4mm;font-size:8.5pt;line-height:1.65}.formal-report{color:#27364a;justify-content:center;gap:24px;display:grid}.formal-report,.formal-report *{letter-spacing:0}.formal-page{color:#26384e;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fbfdff;width:210mm;height:297mm;padding:18mm 17mm 17mm;position:relative;overflow:hidden;box-shadow:0 15px 40px #1f2d3d24}.formal-page:before{content:"";background:#173b66;height:4.5mm;position:absolute;inset:0 0 auto}.formal-header,.formal-footer{z-index:2;color:#69788d;justify-content:space-between;align-items:center;font-size:8pt;font-weight:800;display:flex;position:absolute;left:17mm;right:17mm}.formal-header{border-bottom:.25mm solid #d9e3ee;padding-bottom:3mm;top:8mm}.formal-header strong,.formal-footer strong{color:#173455}.formal-footer{border-top:.25mm solid #d9e3ee;padding-top:3mm;bottom:6mm}.formal-body{z-index:1;align-content:start;gap:4.5mm;min-height:0;padding-top:4mm;display:grid;position:relative}.formal-kicker{color:#2463a7;text-transform:uppercase;margin:0;font-size:8pt;font-weight:900}.formal-body h2{color:#10263f;margin:0;font-size:21pt;line-height:1.2}.formal-body h3{color:#1d3a5b;margin:0;font-size:11pt;line-height:1.3}.formal-body p,.formal-body li,.formal-body td,.formal-body th,.formal-body small,.formal-body dd{font-size:8.7pt;line-height:1.55}.formal-section-heading{justify-content:space-between;align-items:center;gap:4mm;margin-bottom:3mm;display:flex}.formal-section-heading span{color:#7b899a;text-transform:uppercase;font-size:7pt;font-weight:800}.formal-cover{background:#f5f9fe;padding:15mm 16mm 17mm}.formal-cover:before{background:#173b66;height:5mm}.cover-brand{z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.cover-brand>p{color:#5e7189;margin:0;font-size:8.5pt;font-weight:800}.formal-brand{color:#173455;align-items:center;gap:9px;font-size:10pt;display:inline-flex}.formal-brand span{color:#fff;background:#173b66;border-radius:6px;place-items:center;width:12mm;height:12mm;font-weight:900;display:grid;box-shadow:inset 0 -2.5mm #087f5b}.cover-main{z-index:1;grid-template-columns:1.18fr .82fr;align-items:center;gap:9mm;min-height:151mm;margin-top:5mm;display:grid;position:relative}.cover-title-block h1{color:#0b1f36;max-width:118mm;margin:5mm 0 3mm;font-size:29pt;line-height:1.13}.cover-subtitle{color:#465b75;max-width:118mm;margin:0 0 8mm;font-size:12.5pt;font-weight:800;line-height:1.45}.student-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:3mm;margin:0;display:grid}.student-facts div{background:#fff;border:.25mm solid #d4e0ed;border-left:.9mm solid #2463a7;min-width:0;min-height:18mm;padding:3mm 3.5mm}.student-facts dt{color:#718197;font-size:7.5pt;font-weight:900}.student-facts dd{color:#132b48;text-overflow:ellipsis;white-space:nowrap;margin:1.7mm 0 0;font-size:10.5pt;font-weight:900;line-height:1.2;overflow:hidden}.cover-score-stage{background:#eaf2fb;border:.3mm solid #cbdced;place-items:center;min-height:124mm;display:grid;position:relative}.cover-ai-chip{color:#fff;background:#2458d3;place-items:center;width:20mm;height:20mm;font-size:17pt;font-weight:900;display:grid;position:absolute;top:10mm;right:10mm}.cover-score-stage .formal-gauge{width:53mm;height:53mm}.cover-score-lines{gap:2.6mm;display:grid;position:absolute;bottom:12mm;left:10mm;right:10mm}.cover-score-lines i{background:#a6c3e7;width:100%;height:2.5mm;display:block}.cover-score-lines i:first-child{background:#2458d3;width:72%}.cover-score-lines i:last-child{background:#087f5b;width:84%}.cover-bottom{z-index:1;grid-template-columns:1fr 1fr;gap:5mm;margin-top:3mm;display:grid;position:relative}.cover-bottom article{background:#fff;border:.25mm solid #d4e0ed;border-top:.9mm solid #087f5b;min-height:34mm;padding:4.5mm}.cover-bottom span{color:#718197;font-size:7.5pt;font-weight:900;display:block}.cover-bottom strong{color:#173455;margin:1.7mm 0;font-size:16pt;line-height:1.15;display:block}.cover-bottom p{color:#53667d;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:8.5pt;line-height:1.5;display:-webkit-box;overflow:hidden}.cover-basis{z-index:1;color:#37526f;background:#e8f1fc;border-left:1mm solid #2463a7;grid-template-columns:25mm 1fr;gap:3mm;margin-top:5mm;padding:3.5mm 4mm;font-size:8pt;line-height:1.5;display:grid;position:relative}.formal-cover .formal-footer{left:16mm;right:16mm}.formal-gauge{place-items:center;width:42mm;height:42mm;display:grid;position:relative}.formal-gauge svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.formal-gauge circle{fill:none;stroke-width:9px}.formal-gauge-track{stroke:#d5e4f6}.formal-gauge-value{stroke:#2458d3;stroke-linecap:round}.formal-gauge-green .formal-gauge-value{stroke:#087f5b}.formal-gauge-amber .formal-gauge-value{stroke:#d48712}.formal-gauge.is-empty .formal-gauge-value{stroke:#aebccd;stroke-dasharray:3 5}.formal-gauge>div{justify-items:center;gap:1mm;display:grid;position:relative}.formal-gauge strong{color:#10223a;font-size:18pt;line-height:1}.formal-gauge span{color:#687991;font-size:7.5pt;font-weight:900}.formal-narrative-band{background:#eaf2fd;border-left:1mm solid #2463a7;padding:5mm 5.5mm}.formal-narrative-band p{color:#334b66;margin:2mm 0 1.5mm;font-size:9.6pt}.formal-narrative-band small{color:#61748b;display:block}.literacy-layout{grid-template-columns:.9fr 1.1fr;align-items:stretch;gap:5mm;display:grid}.formal-visual-section,.literacy-observations,.competency-chart{background:#fff;border:.25mm solid #d4dfeb;min-width:0;padding:4.5mm}.formal-visual-section .ability-radar{height:66mm;max-height:66mm}.literacy-observations>div:not(.formal-section-heading){border-top:.25mm solid #e2e8ef;grid-template-columns:29mm 10mm 1fr;align-items:center;gap:3mm;min-height:13mm;padding:2.4mm 0;display:grid}.literacy-observations>div:not(.formal-section-heading) strong{color:#233d5a;font-size:8.5pt}.literacy-observations>div:not(.formal-section-heading) b{color:#2463a7;font-size:10pt}.literacy-observations>div:not(.formal-section-heading) span{color:#5f7085;font-size:7.6pt;line-height:1.45}.formal-note-band{color:#1e5c49;background:#e5f6ef;border-left:.9mm solid #087f5b;padding:4mm 5mm;font-size:8.7pt;line-height:1.55}.formal-evidence-profile{gap:4mm;min-width:0;display:grid}.evidence-profile-summary{border-bottom:.25mm solid #e1e8f0;grid-template-columns:28mm 1fr;align-items:center;gap:4mm;padding-bottom:3mm;display:grid}.evidence-profile-summary div{justify-items:center;display:grid}.evidence-profile-summary strong{color:#173455;font-size:22pt;line-height:1}.evidence-profile-summary span{color:#718197;margin-top:1mm;font-size:7pt;font-weight:800}.evidence-profile-summary p{color:#596c83;margin:0;font-size:8pt;line-height:1.55}.evidence-status-bars{gap:3mm;display:grid}.evidence-status-bars>div{grid-template-columns:28mm 8mm 1fr;align-items:center;gap:3mm;display:grid}.evidence-status-bars span{color:#334c68;align-items:center;gap:2mm;font-size:7.8pt;font-weight:800;display:flex}.evidence-status-bars span>i{width:2.3mm;height:2.3mm}.evidence-status-bars b{color:#173455;text-align:right;font-size:9pt}.evidence-status-bars em{background:#e7edf4;height:2.5mm;font-style:normal;overflow:hidden}.evidence-status-bars em i{height:100%;display:block}.evidence-status-bars .good{background:#087f5b}.evidence-status-bars .partial{background:#d48712}.evidence-status-bars .risk{background:#b43a32}.evidence-status-bars .pending{background:#8492a4}.formal-evidence-profile.compact .evidence-profile-summary{grid-template-columns:23mm 1fr}.formal-evidence-profile.compact .evidence-profile-summary strong{font-size:18pt}.formal-evidence-profile.compact .evidence-status-bars>div{grid-template-columns:24mm 6mm 1fr;gap:2mm}.competency-metrics{grid-template-columns:repeat(3,1fr);gap:4mm;display:grid}.competency-metrics>section{background:#fff;border:.25mm solid #d4dfeb;align-content:start;justify-items:center;gap:2mm;min-height:58mm;padding:3.5mm;display:grid}.competency-metrics p{color:#5e7086;text-align:center;margin:0;font-size:7.7pt}.formal-count-metric{color:#8b5208;border:2.6mm solid #f1d9aa;border-radius:50%;align-content:center;place-items:center;width:36mm;height:36mm;display:grid}.formal-count-metric strong{font-size:21pt;line-height:1}.formal-count-metric span{margin-top:1mm;font-size:7.5pt;font-weight:900}.competency-chart{padding:4.5mm 5mm}.formal-ability-bars{gap:3.2mm;display:grid}.formal-ability-bars>div{grid-template-columns:30mm 1fr 10mm;align-items:center;gap:4mm;display:grid}.formal-ability-bars span,.formal-ability-bars strong{color:#1e3a59;font-size:8.6pt;font-weight:900}.formal-ability-bars strong{text-align:right}.formal-ability-bars>div>i{background:#dce8f5;border-radius:4px;height:2.8mm;overflow:hidden}.formal-ability-bars>div>i b{background:#d48712;height:100%;display:block}.formal-ability-bars>div>i b.good{background:#087f5b}.formal-ability-bars>div>i b.risk{background:#b43a32}.formal-stage-callout{background:#e5f6ef;border-left:.9mm solid #087f5b;padding:4mm 5mm}.formal-stage-callout strong{color:#175440;font-size:9pt}.formal-stage-callout p{color:#315f52;margin:1mm 0 0}.performance-layout{grid-template-columns:.78fr 1.22fr;gap:5mm;display:grid}.performance-score{background:#fff;border:.25mm solid #d4dfeb;min-height:66mm;padding:5mm}.performance-score>span,.performance-metrics span{color:#718197;font-size:7.5pt;font-weight:900;display:block}.performance-score>strong{color:#173455;margin:5mm 0 3mm;font-size:25pt;line-height:1;display:block}.performance-score p{color:#51657d;margin:0 0 5mm}.performance-score small{color:#087f5b;font-weight:800}.performance-metrics{grid-template-columns:repeat(2,1fr);gap:3mm;display:grid}.performance-metrics article{background:#fff;border:.25mm solid #d4dfeb;min-height:31.5mm;padding:4mm}.performance-metrics strong{color:#142e4d;text-overflow:ellipsis;white-space:nowrap;margin:1.6mm 0;font-size:13pt;line-height:1.2;display:block;overflow:hidden}.performance-metrics p{color:#64758a;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:7.4pt;display:-webkit-box;overflow:hidden}.performance-diagnosis{grid-template-columns:repeat(3,1fr);gap:4mm;display:grid}.performance-diagnosis article{background:#fff;border-top:.8mm solid #2463a7;min-height:39mm;padding:4.5mm;box-shadow:inset 0 0 0 .25mm #d4dfeb}.performance-diagnosis article:nth-child(2){border-top-color:#c9740c}.performance-diagnosis article:nth-child(3){border-top-color:#087f5b}.performance-diagnosis strong{color:#1b3859;font-size:10pt}.performance-diagnosis p{color:#52657d;-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:2mm 0 0;display:-webkit-box;overflow:hidden}.performance-summary-band{background:#eaf2fd;border-left:.9mm solid #2463a7;grid-template-columns:24mm 1fr;gap:4mm;padding:4mm 5mm;display:grid}.performance-summary-band strong{color:#1d4774;font-size:9pt}.performance-summary-band p{color:#46627f;margin:0}.mastery-band{border:.25mm solid #d8e1ea;grid-template-columns:repeat(3,1fr);display:grid}.mastery-band div{background:#f3f7fb;border-right:.25mm solid #d8e1ea;padding:3.5mm 5mm}.mastery-band div:last-child{border:0}.mastery-band strong,.mastery-band span{display:block}.mastery-band strong{color:#163956;font-size:17pt}.mastery-band span{color:#718095;font-size:7.5pt}.knowledge-map-grid{grid-template-columns:repeat(2,1fr);gap:3mm;display:grid}.knowledge-map-grid article{color:#fff;background:#2463a7;min-height:26mm;padding:3.5mm 4mm}.knowledge-map-grid article.warn{background:#256fa4}.knowledge-map-grid article.risk{background:#a84a3d}.knowledge-map-grid article.good{background:#087f5b}.knowledge-map-grid span{opacity:.9;font-size:7pt;font-weight:900;display:block}.knowledge-map-grid strong{margin:1.2mm 0;font-size:10.5pt;display:block}.knowledge-map-grid p{color:#fff;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:7.5pt;display:-webkit-box;overflow:hidden}.formal-table{border-collapse:collapse;table-layout:fixed;width:100%}.formal-table th,.formal-table td{text-align:left;vertical-align:top;border:.25mm solid #d9e1e9;padding:2.3mm 2.5mm}.formal-table th{color:#fff;background:#173455;font-size:7.4pt}.formal-table th:first-child{width:20%}.formal-table th:nth-child(2){width:13%}.formal-table th:nth-child(3){width:43%}.formal-table th:nth-child(4){width:24%}.formal-table td{color:#3c4e64;background:#fff;font-size:7.1pt;line-height:1.45}.formal-table td strong{color:#1d3652}.status-label{border-radius:3px;padding:.8mm 1.5mm;font-size:6.7pt;font-weight:900;display:inline-block}.status-label.good{color:#116149;background:#e3f5ee}.status-label.warn{color:#88520a;background:#fff3d8}.status-label.risk{color:#96281f;background:#ffebe8}.formal-reading-note{color:#4d5d70;background:#fff6e5;border-left:.8mm solid #d48712;gap:4mm;padding:3mm 4mm;font-size:7.6pt;line-height:1.5;display:flex}.formal-empty-state{color:#7b4a06;background:#fff6e5;border-left:1mm solid #d48712;padding:6mm;font-size:8.5pt;line-height:1.65}.question-evidence-list{display:grid}.question-evidence-list article{border-bottom:.25mm solid #d9e3ee;grid-template-columns:29mm 1fr;gap:5mm;min-height:41mm;padding:4.5mm 0;display:grid}.question-evidence-list article:first-child{border-top:.25mm solid #d9e3ee}.question-evidence-meta{border-right:.7mm solid #2463a7;padding-right:3.5mm}.question-evidence-meta strong{color:#2458d3;font-size:11pt;line-height:1.25;display:block}.question-evidence-meta span{color:#718197;margin-top:2mm;font-size:6.8pt;line-height:1.45;display:block}.question-evidence-content h3{margin-bottom:1.2mm}.question-evidence-content>p{color:#4e6178;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.question-evidence-content>small{color:#1e5f4b;background:#e8f7f1;grid-template-columns:24mm 1fr;gap:3mm;margin-top:2mm;padding:2mm 3mm;display:grid}.question-evidence-content>small b{color:#087f5b}.question-tags{flex-wrap:wrap;gap:1.5mm;margin-top:1.5mm;display:flex}.question-tags span{color:#345979;background:#edf3fa;border-radius:2px;padding:.5mm 1.5mm;font-size:6.5pt;font-weight:800}.four-week-plan{display:grid}.four-week-plan article{border-bottom:.25mm solid #d9e3ee;grid-template-columns:27mm 1fr;gap:5mm;min-height:43mm;padding:4mm 0;display:grid}.four-week-plan article:first-child{border-top:.25mm solid #d9e3ee}.week-index{border-right:.8mm solid #2463a7;align-content:start;gap:1mm;padding-right:4mm;display:grid}.week-index b{color:#c0cbd7;font-size:20pt;line-height:1}.week-index span{color:#2458d3;font-size:8pt;font-weight:900}.week-content h3{margin-bottom:1mm}.week-content>p{color:#50637a;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 2mm;display:-webkit-box;overflow:hidden}.week-content dl{grid-template-columns:1fr 1fr;gap:4mm;margin:0;display:grid}.week-content dl div{border-left:.6mm solid #c9d6e3;min-width:0;padding-left:3mm}.week-content dt{color:#087f5b;font-size:6.8pt;font-weight:900}.week-content dd{color:#64758a;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.7mm 0 0;font-size:7.2pt;display:-webkit-box;overflow:hidden}.parent-action-band{background:#fff;border:.25mm solid #d4dfeb;padding:4mm 5mm}.parent-action-band h3{margin-bottom:2mm}.parent-action-band ol{counter-reset:parent-action;grid-template-columns:repeat(3,1fr);gap:4mm;margin:0;padding:0;list-style:none;display:grid}.parent-action-band li{color:#52657d;counter-increment:parent-action;padding-left:8mm;position:relative}.parent-action-band li:before{content:counter(parent-action);color:#fff;background:#087f5b;border-radius:50%;place-items:center;width:5mm;height:5mm;font-size:6.5pt;font-weight:900;display:grid;position:absolute;top:0;left:0}.improvement-paths{border-top:.25mm solid #d4dfeb}.improvement-paths>.formal-section-heading{border-bottom:.25mm solid #d4dfeb;margin:0;padding:3mm 0}.improvement-paths>article{border-bottom:.25mm solid #d4dfeb;grid-template-columns:9mm 1fr 57mm;gap:4mm;min-height:31mm;padding:3.5mm 0;display:grid}.improvement-paths>article>b{color:#2458d3;font-size:12pt}.improvement-paths>article>div>span{color:#087f5b;font-size:7pt;font-weight:900}.improvement-paths>article h3{margin:.7mm 0;font-size:10pt}.improvement-paths>article p{color:#51647b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.improvement-paths dl{align-content:start;gap:2mm;margin:0;display:grid}.improvement-paths dl div{grid-template-columns:17mm 1fr;gap:2mm;display:grid}.improvement-paths dt{color:#718197;font-size:6.7pt;font-weight:900}.improvement-paths dd{color:#334d69;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:7.1pt;display:-webkit-box;overflow:hidden}.service-review-grid{grid-template-columns:1fr 1fr;gap:5mm;display:grid}.service-review-grid>section{background:#fff;border:.25mm solid #d4dfeb;min-height:55mm;padding:4.5mm}.service-review-grid ul{gap:2mm;margin:2.5mm 0 0;padding-left:5mm;display:grid}.service-review-grid li{color:#4f6279}.review-checklist{list-style:none;padding-left:0!important}.review-checklist li{grid-template-columns:4mm 1fr;gap:2mm;display:grid}.review-checklist i{border:.35mm solid #7d8c9f;width:3.4mm;height:3.4mm;margin-top:1mm}.signature-box{grid-template-columns:1fr 1fr;gap:8mm;display:grid}.signature-box span{color:#173455;border-bottom:.35mm solid #c6d1dc;padding:3mm 0 2mm;font-size:8.5pt;font-weight:900}.formal-disclaimer{color:#80500e;background:#fff6e5;border-left:.9mm solid #d48712;margin:0;padding:3.5mm 4mm;font-weight:800;line-height:1.55;font-size:7.2pt!important}.workspace-report{width:min(1060px,100%);box-shadow:var(--shadow);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f8fafb;margin:0 auto;padding:34px}.workspace-report-header{color:#fff;background:var(--navy);justify-content:space-between;align-items:center;gap:30px;padding:28px;display:flex}.workspace-report-header>div:first-child{min-width:0}.workspace-report-header span{color:#a9d9cc;font-size:11px;font-weight:900}.workspace-report-header h1{margin:7px 0;font-size:27px}.workspace-report-header p{color:#dbe6ef;max-width:650px;margin:0;font-size:12px;line-height:1.6}.workspace-report-header .score-ring-track{stroke:#fff3}.workspace-report-header .score-ring-value{stroke:#56c7a5}.workspace-report-header .score-ring-label strong,.workspace-report-header .score-ring-label span{color:#fff}.workspace-metrics{background:#d7e0e8;grid-template-columns:repeat(4,1fr);gap:1px;margin:1px 0 18px;display:grid}.workspace-metrics article{background:#fff;padding:18px}.workspace-metrics span,.workspace-metrics strong,.workspace-metrics small{display:block}.workspace-metrics span{color:var(--muted);font-size:10px;font-weight:800}.workspace-metrics strong{color:#1b3855;margin:5px 0;font-size:19px}.workspace-metrics small{color:#7b8795;font-size:9px;line-height:1.4}.workspace-grid{grid-template-columns:1.35fr .65fr;gap:16px;margin-bottom:16px;display:grid}.workspace-panel{background:#fff;border:1px solid #dce3ea;padding:22px}.workspace-panel>span,.section-heading span{color:var(--emerald);font-size:10px;font-weight:900}.workspace-panel h2,.section-heading h2{color:#1d3854;margin:6px 0 10px;font-size:19px}.workspace-insight p{color:#4d5f74;font-size:13px;line-height:1.8}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.section-heading strong{color:var(--amber);font-size:12px}.knowledge-bars{gap:15px;display:grid}.knowledge-bars>div{grid-template-columns:200px 1fr;gap:4px 20px;display:grid}.knowledge-bars>div>div{grid-row:span 2}.knowledge-bars strong,.knowledge-bars span{display:block}.knowledge-bars strong{color:#293f58;font-size:12px}.knowledge-bars span{color:#7a8796;margin-top:4px;font-size:9px}.knowledge-bars i{background:#e6ebf0;border-radius:4px;height:8px;overflow:hidden}.knowledge-bars i b{background:#d99128;height:100%;display:block}.knowledge-bars i b.good{background:var(--emerald)}.knowledge-bars i b.risk{background:#c34a3d}.knowledge-bars p{color:#526278;margin:0;font-size:10px;line-height:1.5}.workspace-questions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.workspace-questions article{border:1px solid #e0e6ec;grid-template-columns:42px 1fr;gap:12px;padding:15px;display:grid}.workspace-questions>article>b{color:var(--blue);font-size:17px}.workspace-questions h3{color:#243e5a;margin:0 0 6px;font-size:12px}.workspace-questions p{color:#596a7e;margin:0 0 8px;font-size:10px;line-height:1.6}.workspace-questions small{color:#245d4d;background:#edf8f4;padding:7px 8px;font-size:9px;line-height:1.5;display:block}.workspace-plan{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.workspace-plan article{border-top:3px solid var(--navy);background:#f5f8fa;padding:15px}.workspace-plan>article>b{color:#b8c5d1;font-size:23px}.workspace-plan span{color:var(--emerald);margin-top:7px;font-size:9px;font-weight:900;display:block}.workspace-plan h3{color:#273f59;margin:5px 0;font-size:12px}.workspace-plan p{color:#58697d;font-size:10px;line-height:1.6}.workspace-plan small{color:#6d7b8c;font-size:9px;line-height:1.5}.workspace-footer{color:#6f7c8c;background:#eef2f5;border-left:3px solid #c0cad4;margin-top:16px;padding:14px 18px;font-size:10px;line-height:1.6}@media (max-width:1100px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}.ability-inputs{grid-template-columns:repeat(3,minmax(0,1fr))}.report-toolbar{flex-direction:column;align-items:flex-start}.report-actions{justify-content:flex-start}}@media (max-width:760px){.access-shell{grid-template-rows:58px minmax(0,1fr) 38px}.access-header{padding:0 14px}.access-main{padding:24px 14px}.access-panel{padding:24px 20px}.access-title h1{font-size:21px}.app-shell{display:block}.topbar{height:58px;padding:0 12px}.product-mark>span{width:32px;height:32px}.product-mark strong{font-size:13px}.product-mark small{display:none}.topbar-status strong{font-size:10px}.topbar-status small{text-overflow:ellipsis;white-space:nowrap;max-width:90px;overflow:hidden}.mobile-menu,.sidebar-close{display:grid!important}.sidebar{z-index:80;width:min(300px,86vw);height:100vh;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%);box-shadow:12px 0 40px #111e2d3d}.sidebar.open{transform:translate(0)}.main-content{padding:20px 12px 40px}.page-heading{flex-direction:column;align-items:flex-start;gap:14px}.page-heading h1,.report-toolbar h1{font-size:23px}.trust-strip{width:100%}.form-band,.upload-band,.review-student-band,.evidence-band,.ability-band,.confirmation-band,.report-editor,.evidence-audit-panel{padding:16px}.form-grid,.compact-form-grid,.evidence-grid,.ability-inputs,.report-editor{grid-template-columns:1fr}.wide-field,.evidence-grid .wide-field,.report-editor .section-title,.report-editor>label:nth-of-type(2),.report-editor>label:nth-of-type(3),.report-editor .primary-button{grid-column:1}.page-thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}.authorization-row{align-items:flex-start}.primary-action-row{flex-direction:column;align-items:stretch}.primary-action-row .primary-button{width:100%}.confirmation-band .primary-button{justify-self:stretch;width:100%}.resume-report-card{grid-template-columns:46px minmax(0,1fr);gap:13px;padding:17px}.resume-report-card>svg{width:24px;height:24px;padding:9px}.evidence-audit-grid{grid-template-columns:1fr}.evidence-audit-grid article>div{flex-direction:column;align-items:flex-start;gap:4px}.evidence-audit-grid article span{text-align:left}.report-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.report-actions .style-switch{grid-column:1/-1;grid-template-columns:1fr 1fr;display:grid}.report-actions .primary-button{grid-column:1/-1}.report-preview-stage{padding:8px}.formal-report{transform-origin:0 0}.formal-page{box-shadow:none}.report-canvas{zoom:.46}.report-canvas:has(.formal-report){zoom:.82}.workspace-report{width:760px}.error-banner{top:64px}}@media (max-width:640px){.report-canvas:has(.formal-report){zoom:.7}}@media (max-width:520px){.report-canvas:has(.formal-report){zoom:.56}}@media (max-width:420px){.report-canvas:has(.formal-report){zoom:.45}}@media print{@page{size:A4;margin:0}.evidence-audit-panel{display:none!important}body.printing-report{background:#fff!important}body.printing-report *{visibility:hidden!important}body.printing-report .report-canvas,body.printing-report .report-canvas *{visibility:visible!important}body.printing-report .report-canvas{zoom:1;width:100%;min-width:0;margin:0;position:absolute;inset:0}body.printing-report .formal-report{gap:0;display:block}body.printing-report .formal-page{width:210mm;height:297mm;box-shadow:none;break-inside:avoid;break-after:page;page-break-inside:avoid;page-break-after:always;margin:0;overflow:hidden}body.printing-report .formal-page:last-child{break-after:auto;page-break-after:auto}body.printing-report .workspace-report{width:210mm;box-shadow:none;margin:0;padding:10mm}body.printing-report .workspace-panel,body.printing-report .workspace-report-header,body.printing-report .workspace-metrics{break-inside:avoid;page-break-inside:avoid}}
