@import url('/map-layout.css');
:root{--bg:#f7f8f2;--paper:#fff;--green:#24594c;--green-dark:#173f35;--mint:#edf5ef;--yellow:#f4ce73;--ink:#243c33;--muted:#79857e;--line:#e8ece5;--coral:#d87b62;--radius:20px;--shadow:0 6px 22px #234b3610;font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.65;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button,a,input,select,textarea{outline-offset:4px}a{color:var(--green);text-decoration:none}h1,h2,h3,h4,p{margin-top:0}h1{font-size:29px;letter-spacing:-1px;line-height:1.35;margin-bottom:8px}h2{font-size:20px;margin-bottom:8px}h3{font-size:16px;margin-bottom:8px}p{margin-bottom:12px}svg{vertical-align:middle}button{border:0;background:none;color:inherit}button.primary,.primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--green);color:white;border:1px solid var(--green);border-radius:11px;padding:11px 19px;font-weight:600;transition:.2s}button.primary:hover{background:var(--green-dark);transform:translateY(-1px)}button.secondary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:white;border-radius:10px;padding:10px 16px;font-weight:500}button.secondary:hover{background:var(--mint);border-color:#c8dbce}.small{font-size:12px!important;padding:6px 11px!important}.danger{color:#ad4d45!important}.text-button{padding:5px 0;color:var(--green);font-weight:600}.muted{color:var(--muted)}.tiny{font-size:12px}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:2px;font-weight:700;color:#819789}.tag{display:inline-flex;align-items:center;gap:5px;border-radius:6px;font-size:11px;line-height:1.4;padding:5px 8px;background:var(--mint);color:var(--green);font-weight:500}.tag.yellow{background:#fff3d4;color:#9b7730}.tag.red{background:#fcf0ec;color:#b36953}.tag.gray{background:#f0f2ee;color:#778078}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;margin-right:5px}.status-mastered{color:#3b8863}.status-weak{color:#c68b30}.status-unassessed{color:#929e95}.status-review{color:#b57462}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1}.stack{display:grid;gap:18px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:23px;box-shadow:0 2px 8px #2c443803}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.card-title h2,.card-title h3{margin:0}.card-title .muted{font-size:12px}.divider{height:1px;background:var(--line);margin:20px 0}.empty{padding:38px 20px;text-align:center;color:var(--muted);border:1px dashed #d7e0d5;border-radius:14px;background:#fafbf8}.empty .empty-icon{font-size:30px;margin-bottom:8px}.empty h3{color:var(--ink)}.notice{background:#fff8e7;border:1px solid #f1e6c3;border-radius:11px;padding:12px 15px;color:#8c743e;font-size:12px;display:flex;align-items:flex-start;gap:9px}.notice.green{background:var(--mint);border-color:#dfece0;color:var(--green)}.notice.error{background:#fff0ec;border-color:#f2d4c9;color:#a1503a}.app-layout{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:#fbfcf8;border-right:1px solid var(--line);padding:32px 19px 22px;z-index:20;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 13px 32px}.brand-mark{width:39px;height:39px;border-radius:12px;background:var(--green);color:var(--yellow);display:flex;align-items:center;justify-content:center;font-size:29px;line-height:1}.brand-name{font-size:20px;letter-spacing:2px;font-weight:750;line-height:1.4}.brand-sub{font-size:9px;letter-spacing:2px;color:#91a094;line-height:1.7}.nav-caption{font-size:10px;letter-spacing:1.5px;color:#9ba69c;margin:12px 16px 8px}.nav-item{width:100%;display:flex;gap:13px;align-items:center;padding:11px 15px;margin:3px 0;border-radius:11px;color:#7e8b81;font-size:13px;text-align:left}.nav-item svg{width:19px;height:19px;opacity:.8}.nav-item.active{background:#e9f1e8;color:var(--green);font-weight:700}.nav-item.active:after{content:'';width:5px;height:5px;border-radius:50%;background:var(--green);margin-left:auto}.nav-item:hover{background:#f0f4ed;color:var(--green)}.sidebar-bottom{margin-top:auto;padding:27px 12px 0}.sidebar-note{border-radius:13px;padding:16px;background:#f0f2e8;font-size:11px;color:#82907d}.sidebar-note b{display:block;color:#51694f;font-size:12px;margin-bottom:4px}.version{text-align:center;font-size:10px;color:#a5ada2;margin-top:17px}.workspace{margin-left:238px;width:calc(100% - 238px)}.topbar{height:84px;background:#fffefd;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 40px;gap:15px}.breadcrumbs{font-size:12px;color:#879285;display:flex;gap:10px;align-items:center}.breadcrumbs strong{font-weight:500;color:#435d4b}.top-actions{display:flex;gap:20px;align-items:center}.student-select{border:1px solid var(--line);border-radius:9px;background:#fafbf7;padding:8px 30px 8px 11px;max-width:205px;color:var(--ink);font-size:12px}.identity{display:flex;align-items:center;gap:9px;padding-left:19px;border-left:1px solid var(--line)}.avatar{width:34px;height:34px;border-radius:50%;background:#f5e6c6;display:inline-flex;align-items:center;justify-content:center;color:#92784b;font-size:13px;font-weight:600}.identity-info{line-height:1.4;font-size:12px}.identity-info small{display:block;color:#98a18f;font-size:10px}.icon-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;color:#8b9689;border-radius:8px}.icon-btn:hover{background:var(--mint)}.content{max-width:1450px;margin:auto;padding:34px 40px 45px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:26px;gap:20px}.page-head p{color:var(--muted);font-size:12px;margin:0}.date-badge{font-size:11px;color:#8b958a;white-space:nowrap;display:flex;align-items:center;gap:7px}.hero{position:relative;overflow:hidden;background:#e9f0df;border:1px solid #e2e9d8;border-radius:21px;padding:28px 32px;display:flex;min-height:197px;align-items:center;margin-bottom:24px}.hero-content{z-index:2;max-width:68%}.hero .eyebrow{color:#7d9473;margin-bottom:7px}.hero h2{font-size:24px;color:#37593c;font-weight:650;margin-bottom:9px}.hero p{font-size:12px;color:#819279;max-width:520px}.hero .primary{font-size:12px;background:#3f6545;border-color:#3f6545;padding:9px 17px}.hero-art{position:absolute;right:5%;bottom:0;width:250px;height:190px;opacity:.95}.stats{margin-bottom:25px}.stat{display:flex;gap:16px;align-items:center;padding:21px}.stat-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:13px;color:#6b8d74;background:#edf4ec}.stat:nth-child(2) .stat-icon{color:#c7a056;background:#fff6df}.stat:nth-child(3) .stat-icon{color:#8c8fb4;background:#f0eff8}.stat:nth-child(4) .stat-icon{color:#ce927c;background:#fbefea}.stat-label{font-size:11px;color:#8f998d;margin-bottom:4px}.stat-number{font-size:25px;line-height:1.1;font-weight:650;color:#34533c;letter-spacing:-.5px}.stat-number span{font-size:10px;font-weight:400;color:#9fa796;margin-left:7px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:23px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px 8px;padding:7px 0}.step{text-align:center;position:relative}.step:not(:nth-child(4n)):after{content:'···';position:absolute;right:-12px;top:13px;letter-spacing:3px;color:#d8dece}.step-icon{height:39px;width:39px;margin:0 auto 8px;border:1px solid #e6ecdf;border-radius:12px;background:#f6f8f0;display:flex;align-items:center;justify-content:center;color:#89a07a}.step strong{font-size:11px;font-weight:500;display:block}.step small{font-size:9px;color:#a0aa97}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.feature{border:1px solid var(--line);border-radius:14px;padding:17px 14px;text-align:left;display:flex;flex-direction:column;min-height:150px;transition:.2s;background:#fff}.feature:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#c9dcc9}.feature .feature-icon{color:#87a17b;margin-bottom:13px;display:flex;align-items:center;gap:10px}.feature:nth-child(2) .feature-icon{color:#c4a35d}.feature:nth-child(3) .feature-icon{color:#93a6b8}.feature:nth-child(4) .feature-icon{color:#c28a79}.feature:nth-child(5) .feature-icon{color:#9d98b0}.feature h3{font-size:13px;font-weight:600;margin-bottom:5px}.feature p{font-size:10px;color:#99a290;line-height:1.7;margin:0}.feature .arrow{margin-left:auto;color:#b4bfaa;font-size:16px}.plan-card{background:#fbfcf7}.plan-title{font-size:16px}.progress-ring{display:flex;justify-content:center;padding:15px 0}.ring{width:120px;height:120px;border-radius:50%;background:conic-gradient(#779b71 var(--progress),#e9eddf 0);padding:9px;display:flex}.ring-inner{background:#fbfcf7;border-radius:50%;flex:1;display:flex;align-items:center;justify-content:center;flex-direction:column}.ring-number{font-size:26px;font-weight:650;color:#42663e}.ring-label{font-size:9px;color:#9aa68d}.legend{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:10px;color:#8d9884;padding:8px 10px}.legend span{display:flex;align-items:center;gap:5px}.legend b{margin-left:auto;color:#62775c;font-weight:500}.mini-line{display:flex;justify-content:space-between;font-size:11px;padding:9px 0;border-bottom:1px solid var(--line);color:#8f9b84}.mini-line strong{font-weight:500;color:#63755c}.activity-list{display:grid;gap:0}.activity{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.activity:last-child{border-bottom:0}.activity-dot{height:7px;width:7px;border-radius:50%;background:#bdcfaf;flex:none;margin-top:7px}.activity div{min-width:0}.activity p{font-size:11px;margin:0;color:#697d60}.activity small{font-size:9px;color:#a2ab99}.footer{font-size:10px;color:#a1aa98;display:flex;justify-content:space-between;margin-top:30px;padding-top:5px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field.full{grid-column:1/-1}.field label{font-size:12px;color:#6b7e66;font-weight:500}input:not([type=checkbox]):not([type=radio]),textarea,select{width:100%;border:1px solid #e0e7dc;border-radius:9px;background:#fdfefa;padding:10px 12px;color:var(--ink);transition:border .15s}textarea{resize:vertical;min-height:105px}input:focus,textarea:focus,select:focus{border-color:#8aaa7f;outline:2px solid #e9f0e4}input[type=checkbox],input[type=radio]{accent-color:var(--green)}input[type=file]{font-size:12px}label.checkbox{display:flex;align-items:center;gap:8px;font-size:12px;color:#718269;cursor:pointer}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.question{padding:21px 0;border-bottom:1px solid var(--line);break-inside:avoid}.question:first-child{padding-top:0}.question h3{font-size:14px;font-weight:500;margin-bottom:12px}.question-num{font-size:10px;background:#ecf3e7;color:#718968;padding:3px 7px;border-radius:5px;margin-right:8px}.options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.option{border:1px solid var(--line);border-radius:10px;padding:11px 13px;display:flex;align-items:flex-start;gap:9px;font-size:13px;cursor:pointer}.option:has(input:checked){border-color:#7fa174;background:#f0f6e9}.option-letter{color:#91a287;font-weight:600;font-size:11px}.quiz-meta{display:flex;justify-content:space-between;padding:15px 18px;background:#f4f7ee;border-radius:12px;font-size:12px;margin-bottom:20px}.trail{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin:15px 0}.trail-item{padding:9px 13px;border-radius:9px;font-size:11px;border:1px solid var(--line);background:white}.trail-item.pass{background:#eaf5e9;border-color:#cfe1c9;color:#4b7743}.trail-item.fail{background:#fcf1e9;border-color:#edddd0;color:#af815c}.upload-zone{border:2px dashed #dce6d4;border-radius:16px;background:#fbfdf7;padding:24px;text-align:center;position:relative}.upload-zone input{margin-top:14px}.upload-zone svg{color:#9ab18d;width:32px;height:32px;margin-bottom:10px}.upload-preview{width:100%;max-height:280px;object-fit:contain;margin:15px 0;background:#f2f3ec;border-radius:9px}.record{padding:16px 0;border-bottom:1px solid var(--line)}.record:last-child{border:0}.record h3{font-size:13px;margin-bottom:5px}.record p{font-size:12px;color:#88977e;white-space:pre-wrap;overflow-wrap:anywhere}.record-buttons{display:flex;gap:8px;flex-wrap:wrap}.review-grid{display:grid;grid-template-columns:1fr 150px;gap:8px;align-items:start}.map-canvas{overflow:auto;background:radial-gradient(#dce6d5 1px,transparent 1px);background-size:16px 16px;border-radius:14px;border:1px solid var(--line);padding:25px;min-height:300px}.map-root{border-radius:12px;background:var(--green);color:white;padding:15px;text-align:center;max-width:260px;margin:0 auto 23px;font-size:16px;font-weight:600}.map-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;min-width:600px}.map-branch{border-top:2px solid #afc3a7;padding-top:15px}.map-node{border:1px solid #d3dfc9;background:#fcfef8;border-radius:9px;padding:12px;font-size:12px;margin-bottom:9px;min-height:45px;overflow-wrap:anywhere}.map-node.branch-label{background:#e9f1df;font-weight:600;color:#637e54}.map-node[contenteditable=true]:focus{outline:2px solid #acc598}.correction{padding:14px;border:1px solid #ead9c9;background:#fffaf3;border-radius:10px;font-size:12px;margin-bottom:11px}.lesson-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.lesson-tab{padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:white;font-size:12px}.lesson-tab.active{background:var(--green);border-color:var(--green);color:white}.lesson-step{display:flex;gap:13px;margin:20px 0}.lesson-step-number{width:26px;height:26px;flex:none;border-radius:50%;background:#f0f4e8;color:#8ba076;display:flex;align-items:center;justify-content:center;font-size:11px}.lesson-step h3{font-size:13px}.lesson-step p{font-size:13px;color:#74856b;white-space:pre-wrap}.concept-visual{padding:25px;background:#f5f8ee;border-radius:16px;text-align:center;display:flex;align-items:center;justify-content:center;gap:25px;flex-wrap:wrap;min-height:190px}.decimal-grid{width:150px;height:150px;display:grid;grid-template-columns:repeat(10,1fr);gap:2px}.decimal-grid i{background:#e1e9d7;border-radius:1px;cursor:pointer}.decimal-grid i.filled{background:#85a87a}.visual-caption{font-size:11px;color:#8ca17c;margin-top:8px}.expression{font-size:23px;font-weight:600;letter-spacing:1px;color:#52754c;background:#eff4e6;padding:19px;text-align:center;border-radius:11px}.concept-bars{display:grid;gap:8px;width:min(320px,100%)}.concept-bar{display:flex;height:29px;gap:3px}.concept-bar i{flex:1;background:#b8cda3;border-radius:4px}.concept-bar i:nth-child(n+5){background:#e5eadb}.number-line{width:100%;max-width:480px;height:100px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{font-weight:500;color:#8c9b82;background:#f7f9f1;padding:12px}td{padding:13px 12px;border-bottom:1px solid var(--line)}.resource-name{max-width:560px;word-break:break-all}.resource-search{max-width:360px;margin-bottom:20px}.progress-bar{height:7px;background:#ecf0e4;border-radius:8px;overflow:hidden;display:flex;margin:13px 0}.progress-bar span{height:100%}.knowledge-row{padding:13px 0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:12px}.knowledge-row strong{font-size:12px;font-weight:500}.knowledge-row p{font-size:10px;color:#9aaa8e;margin:3px 0 0}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:#fbfcf7}.auth-art{background:#e7efdd;display:flex;flex-direction:column;justify-content:center;padding:10%;position:relative;overflow:hidden}.auth-art:after{content:'×';position:absolute;right:5%;bottom:5%;color:#cedcbd;font-size:240px;line-height:1;transform:rotate(15deg);font-weight:200}.auth-art .brand{padding-left:0;margin-bottom:50px}.auth-art h1{font-size:38px;line-height:1.55;letter-spacing:-1px}.auth-art>p{font-size:14px;color:#8c9e7e;max-width:340px}.auth-pill{font-size:11px;padding:6px 12px;border:1px solid #c8d7bb;border-radius:20px;align-self:flex-start;margin-bottom:17px;color:#839775}.auth-form-wrap{display:flex;align-items:center;justify-content:center;padding:40px}.auth-form{width:100%;max-width:340px}.auth-form h2{font-size:25px;margin-bottom:8px}.auth-form>p{color:#96a18c;font-size:12px;margin-bottom:30px}.auth-form .field{margin-bottom:16px}.auth-form button{width:100%;margin-top:15px}.auth-form .notice{margin-top:20px}.auth-foot{color:#a8b09f;font-size:10px;text-align:center;margin-top:25px}.initial-loading{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column}.initial-loading h2{margin:20px 0 5px}.initial-loading p{color:var(--muted);font-size:12px}.loading{padding:50px;text-align:center;color:#97a58b}.loading:before{content:'';display:inline-block;width:18px;height:18px;border:2px solid #e0e8d9;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite;margin-right:10px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(100px);background:#214d3e;color:white;border-radius:12px;padding:13px 22px;box-shadow:0 5px 20px #18342730;z-index:1000;transition:.25s;max-width:90vw;font-size:13px;pointer-events:none}#toast.show{transform:translateX(-50%) translateY(0)}#toast.error{background:#a15b44}.modal-backdrop{position:fixed;inset:0;background:#203b2d55;backdrop-filter:blur(3px);z-index:50;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#fff;border-radius:20px;width:100%;max-width:590px;max-height:90vh;overflow:auto;padding:27px;box-shadow:0 15px 50px #15332122}.modal.wide{max-width:850px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{margin:0;font-size:20px}.modal-close{font-size:25px;color:#98a78a}.mobile-nav-toggle{display:none}.mobile-backdrop{display:none}.paper-preview{font-family:"Microsoft YaHei",sans-serif;max-width:800px;margin:auto}.paper-header{text-align:center;border-bottom:2px solid #53684b;padding:10px 0 18px}.paper-header h2{font-size:22px}.paper-info{display:flex;justify-content:space-between;font-size:11px;color:#819377;margin-top:15px}.answer-space{height:45px;border-bottom:1px dotted #b2bea8;margin:12px 0}.write-area{border:1px dashed #d5dfcd;padding:10px 12px;font-size:11px;color:#98a68c;border-radius:7px;margin:12px 0;min-height:72px}.inline-error{color:#af6650;font-size:12px;margin-top:12px}.teacher-badge{border:1px solid #d59b79;background:#fff7ed;color:#ad7955;padding:7px 12px;border-radius:7px;font-size:12px}.report-summary{padding:23px;border-radius:16px;background:#edf3e5;border:1px solid #dde7d0;margin-bottom:24px}.report-summary h2{font-size:19px}.report-summary p{font-size:12px;color:#809374;margin:0}.result-score{font-size:35px;color:#537c49;font-weight:600}.form-subtitle{font-size:12px;color:#98a78c;margin-top:4px}.admin-features{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:17px 0}.content-approval{margin:20px 0;font-size:11px;color:#9b9f83}.pulse-marker{width:8px;height:8px;background:#b7cb9d;border-radius:50%;display:inline-block;margin-right:6px}.no-margin{margin:0!important}.mb-20{margin-bottom:20px}.mt-20{margin-top:20px}.mt-10{margin-top:10px}.align-start{align-items:flex-start}
@media(min-width:1600px){.content{padding-top:42px}.hero{min-height:210px}.dashboard-grid{grid-template-columns:1.85fr 1fr}.feature{min-height:163px}}
@media(max-width:1200px){.sidebar{width:210px;padding:28px 13px}.workspace{margin-left:210px;width:calc(100% - 210px)}.content{padding:28px}.topbar{padding:0 28px}.grid-4{gap:12px}.stat{padding:17px;gap:11px}.stat-icon{width:36px;height:36px}.stat-number{font-size:23px}.dashboard-grid{grid-template-columns:1.4fr 1fr}.feature-grid{grid-template-columns:1fr 1fr}.hero-art{right:1%;width:215px}.hero-content{max-width:70%}.identity-info{display:none}}
@media(max-width:980px){.grid-4{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr 1fr}.grid-2{gap:16px}.hero h2{font-size:22px}.hero-art{opacity:.7}.hero-content{max-width:75%}.feature-grid{grid-template-columns:repeat(3,1fr)}.top-actions{gap:12px}.date-badge{display:none}}
@media(max-width:720px){.sidebar{transform:translateX(-100%);transition:.2s;width:235px}.sidebar.open{transform:translateX(0)}.mobile-backdrop.open{display:block;position:fixed;inset:0;background:#17352344;z-index:19}.workspace{margin:0;width:100%}.topbar{padding:0 18px;height:68px}.mobile-nav-toggle{display:flex}.breadcrumbs{gap:7px}.breadcrumbs>span:first-child{display:none}.top-actions{gap:8px}.identity{padding-left:8px}.identity .avatar{display:none}.student-select{max-width:145px;font-size:11px;padding:7px 20px 7px 8px}.content{padding:24px 17px}.page-head{margin-bottom:20px;align-items:flex-start}.page-head h1{font-size:25px}.page-head p{font-size:11px}.page-head>button{font-size:11px;padding:9px 12px}.hero{padding:24px;min-height:220px}.hero h2{font-size:21px}.hero-content{max-width:100%}.hero p{max-width:260px}.hero-art{right:-30px;width:160px;height:130px;opacity:.4}.grid-2,.grid-3{grid-template-columns:1fr}.grid-4{gap:10px}.stat{padding:15px;gap:10px}.stat-icon{width:33px;height:33px}.stat-number{font-size:22px}.stat-label{font-size:10px}.stat-number span{font-size:9px}.card{padding:19px;border-radius:16px}.feature-grid{grid-template-columns:1fr 1fr}.feature{padding:15px 12px;min-height:145px}.step strong{font-size:10px}.step small{font-size:8px}.step:not(:nth-child(4n)):after{right:-10px}.footer{gap:15px;line-height:1.7}.footer span:last-child{display:none}.options{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.auth-page{grid-template-columns:1fr}.auth-art{padding:30px;min-height:240px}.auth-art .brand{margin-bottom:15px;padding-bottom:15px}.auth-art h1{font-size:25px;line-height:1.4}.auth-art>p{font-size:11px;margin-bottom:0}.auth-pill{display:none}.auth-art:after{font-size:140px}.auth-form-wrap{padding:30px 25px 40px}.auth-form h2{font-size:23px}.review-grid{grid-template-columns:1fr}.modal{padding:22px}.paper-info{flex-wrap:wrap;gap:8px}.admin-features{grid-template-columns:1fr}.map-branches{min-width:560px}.notice{font-size:11px}.quiz-meta{gap:10px;font-size:11px}.record-buttons .secondary{font-size:11px}}
@media print{.sidebar,.topbar,.page-head,.footer,.no-print,#toast,#modal-root{display:none!important}.workspace{margin:0;width:100%}.content{padding:0;max-width:none}.card{border:0;box-shadow:none;padding:0}.grid-2,.dashboard-grid{display:block}.map-canvas{background:white}.map-branches{min-width:0}.map-node{break-inside:avoid}.print-only{display:block}body{background:white;color:#111}.question{break-inside:avoid}h2,h3{break-after:avoid}a{color:#111}@page{size:A4;margin:15mm}}

/* Reference-aligned warm-white/orange horizontal workbench. */
:root{--bg:#faf9f6;--paper:#fff;--green:#b54a08;--green-dark:#943900;--mint:#fff4e9;--yellow:#e9bc70;--ink:#302c26;--muted:#8c8377;--line:#e6e2da;--coral:#ce805b;font-size:15px;line-height:1.75;color:var(--ink);background:var(--bg)}
body{background:var(--bg)}h1{font-size:32px;line-height:1.4;font-weight:750;letter-spacing:-1px;margin-bottom:12px}h2{font-size:23px;line-height:1.5}h3{font-size:17px}button.primary,.primary{padding:12px 20px;border-radius:12px;box-shadow:0 3px 7px #a9440815}button.secondary,.secondary{padding:11px 17px;border-color:#ddd8ce;border-radius:12px;font-weight:550}.secondary.selected,button.secondary:hover{background:#fff7ef;border-color:#cdaa92;color:#9c470e}.card{padding:27px;border-radius:21px;box-shadow:0 3px 12px #5c432108}.tag{border-radius:20px;background:#eef4ea;color:#64834d}.tag.yellow{background:#fff2df;color:#a9753a}.tag.red{background:#fbeee8;color:#b36e56}.tag.gray{background:#f1f0ea;color:#938979}.eyebrow{font-size:11px;letter-spacing:2px;color:#a14b16}.notice{background:#fff6e9;border-color:#efe1cb;border-radius:13px;padding:14px 17px;color:#9d7954}.notice.green{background:#f5f7f0;border-color:#e5e8d9;color:#818968}.notice.error{background:#fff0ea;border-color:#efd7ca;color:#a45c45}.empty{border-color:#ded8ca;background:#fcfbf8}.empty-icon{color:#bba68f}.site-layout{min-height:100vh}.site-header{border-bottom:1px solid #ebe7df;background:var(--bg)}.site-header-inner{max-width:1240px;margin:auto;padding:25px 32px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:13px;text-align:left;padding:0;flex:none}.brand-mark{width:46px;height:48px;background:#bd530d;border-radius:15px 15px 15px 4px;color:#fff8ea;font-size:26px;font-weight:750;box-shadow:0 3px 7px #9b470b14;flex:none}.brand-name{font-size:20px;line-height:1.45;font-weight:750;display:block;letter-spacing:-.5px}.brand-sub{font-size:11px;letter-spacing:0;font-weight:400;color:#948776;display:block;margin-top:2px;line-height:1.7}.header-controls{display:flex;align-items:center;justify-content:flex-end;gap:17px;flex-wrap:wrap}.student-switch{display:flex;align-items:center;gap:14px}.student-switch label{font-size:12px;color:#998c79;line-height:1.7;white-space:nowrap}.student-switch select{min-width:130px;max-width:185px;font-size:13px;padding:10px 31px 10px 14px;background:#fff;border-radius:12px}.header-text-button{font-size:13px;color:#968570;font-weight:650;padding:10px 2px;white-space:nowrap}.header-controls>.secondary{font-size:13px;white-space:nowrap}.top-menu{position:relative}.top-menu>summary{list-style:none;cursor:pointer;color:#a8947f;padding:7px;border-radius:9px;line-height:1}.top-menu>summary::-webkit-details-marker{display:none}.top-menu>summary:hover{background:#f2ece2}.top-menu-panel{position:absolute;right:0;top:35px;z-index:40;width:210px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:9px;box-shadow:0 9px 35px #6c482020}.top-menu-panel button{width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:9px 11px;font-size:13px;border-radius:8px;color:#766650}.top-menu-panel button:hover{background:#fcf4eb}.menu-identity{display:block;padding:8px 11px 11px;color:#b1a18a;font-size:11px;border-bottom:1px solid var(--line);margin-bottom:5px}.content{max-width:1240px;padding:35px 32px 30px;margin:auto}.back-link{font-size:13px;color:#9a836a;padding:0 0 20px;font-weight:650}.back-link:hover{color:var(--green)}.context-card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:24px;margin-bottom:30px;box-shadow:0 3px 12px #5c432108}.context-card h3{font-size:17px;margin-bottom:4px}.context-card h3 .tag{margin-left:5px;vertical-align:middle}.context-card p{font-size:12px;color:#a19789;margin:0 0 17px}.context-card .field label{font-size:12px}.context-card select{background:white}.page-head{align-items:flex-start;margin-bottom:29px;gap:22px}.page-head p{font-size:14px;color:#998b79;line-height:1.9;margin-bottom:0}.page-head h1{margin-bottom:10px}.home-hero{background:linear-gradient(110deg,#fff9f0,#fffcf8);border:1px solid #eddfce;border-radius:25px;padding:35px 37px 32px;box-shadow:0 0 0 1px #f5eee5;margin-bottom:35px}.home-hero h1{font-size:38px;color:#a2470c;line-height:1.3;letter-spacing:-1.5px;margin:20px 0}.home-hero .eyebrow{letter-spacing:1.5px;font-weight:750;font-size:12px}.hero-description{color:#a39179;font-size:15px;line-height:1.95;max-width:740px;margin-bottom:25px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}.hero-actions button{font-size:14px}.three-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.home-step{border:1px solid #eee9df;border-radius:18px;background:#fff;padding:18px 18px 17px;box-shadow:0 2px 7px #73553105;min-height:143px}.home-step>span{display:inline-flex;width:39px;height:38px;align-items:center;justify-content:center;background:#fff3e5;border-radius:12px;color:#b15b21;font-size:15px;font-weight:750;margin-bottom:9px}.home-step h3{font-size:14px;font-weight:650;margin-bottom:4px}.home-step p{font-size:12px;color:#a29686;line-height:1.7;margin:0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.section-heading h2{font-size:24px;margin:7px 0 0}.section-heading>p{font-size:12px;color:#a29888;margin:0 0 4px}.home-tools{margin-bottom:28px}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tool-card{background:white;border:1px solid var(--line);border-radius:20px;padding:24px;text-align:left;display:flex;flex-direction:column;min-height:223px;transition:.2s;box-shadow:0 3px 12px #5c432108}.tool-card:hover{border-color:#cead91;transform:translateY(-3px);box-shadow:0 8px 20px #8f5a1710}.tool-card .row{color:#b8a38b;margin-bottom:18px}.tool-number{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fff2e2;color:#b46a34;border-radius:11px;font-size:13px;font-weight:700}.tool-card h3{font-size:19px;margin:0 0 8px}.tool-card p{font-size:13px;color:#a09381;line-height:1.8;margin:0 0 20px}.tool-link{margin-top:auto;font-size:12px;color:#ad6c39;font-weight:600;display:flex;justify-content:space-between;align-items:center}.home-note{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f2efe7;padding:22px 26px;border-radius:17px;color:#8f816d}.home-note b{font-size:13px;color:#8f7352}.home-note p{font-size:11px;margin:5px 0 0;line-height:1.9}.home-note>span{font-size:12px;white-space:nowrap}.scope-footnote{font-size:11px;color:#b0a391;margin:25px 0;line-height:1.85}.footer{color:#b7aa98;font-size:11px;margin-top:35px;padding:20px 0;border-top:1px solid #ebe6dc}.footer button{color:#ac8f70;padding:0;font-size:11px}.history-list{display:grid;gap:25px}.history-card{border:1px solid var(--line);border-radius:18px;background:white;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:25px}.history-card h3{font-size:18px;margin:0 0 2px}.history-card p{font-size:12px;color:#a1988b;margin:0}.history-actions{display:flex;gap:9px;flex-shrink:0}.history-actions button{font-size:12px}.start-card{padding:30px;margin:40px 0 25px}.start-card .field{margin-bottom:24px}.field{gap:8px}.field label{font-size:13px;color:#8e7e67;font-weight:650}.field small{font-size:12px;color:#a29784}input:not([type=checkbox]):not([type=radio]),textarea,select{padding:12px 14px;border-color:#d9d3c7;border-radius:9px;background:#fff;color:#655b4b}input:focus,textarea:focus,select:focus{outline:2px solid #fcdfc4;border-color:#ba8a60}select:disabled{background:#f4f3ef;color:#aaa18f}label.checkbox{color:#9d8a71}.edition-note{font-size:11px;color:#b19c82;margin:-8px 0 20px}.start-rules{display:flex;gap:10px 20px;flex-wrap:wrap;padding:13px 16px;border-radius:10px;background:#faf6ef;color:#a08b6f;font-size:12px;margin-bottom:23px}.rule-details{padding:20px 25px;font-size:13px;color:#a3927c}.rule-details summary{cursor:pointer;font-weight:600;color:#907a5c}.rule-details p:last-child{margin:0}.form-actions.align-left{justify-content:flex-start}.quiz-meta{background:#faf6ed;color:#a28c6e}.question h3{font-size:16px}.question-num{color:#b77741;background:#fff2df}.option{border-color:#e7dfd0;padding:13px 15px;font-size:14px;background:white}.option:has(input:checked){border-color:#c88f59;background:#fff7ed}.option-letter{color:#ba9a76}.trail-item{border-color:#e1d8c7;padding:11px 15px;font-size:12px}.trail-item.pass{background:#f3f6eb;border-color:#d2dcbf;color:#7f925d}.trail-item.fail{background:#fff5e9;border-color:#e9d3b5;color:#af8554}.summary-main{padding:28px}.summary-student{margin-bottom:20px;font-size:14px}.summary-student span{font-size:12px;color:#a49886}.upload-zone{border:1px dashed #d9c5aa;border-radius:15px;background:#fffcf7;padding:26px;display:flex;flex-direction:column;align-items:center;gap:11px}.upload-zone>svg{color:#bb9467}.upload-zone strong{color:#987b56;font-size:15px}.upload-zone input{background:white;max-width:100%;margin:2px 0}.upload-zone p{font-size:12px;color:#b09b7e;margin:0}.text-supplement{border:1px solid #e7dfd1;border-radius:11px;padding:13px 16px;margin:20px 0;color:#a58d6d}.text-supplement>summary{cursor:pointer;font-size:13px;font-weight:600}.manual-note{font-size:12px;line-height:1.8;color:#ae9b81;margin:20px 0 0}.saved-summaries>summary{font-size:16px;font-weight:650;cursor:pointer;margin-bottom:15px}.record p{font-size:13px;color:#a0927d}.map-canvas{border-color:#eee0cc;background:radial-gradient(#eadcc7 1px,transparent 1px);background-size:16px 16px}.map-root{background:#b95b1c;font-size:18px}.map-branch{border-color:#d4b180}.map-node{border-color:#e1cfb3;background:#fffdf7;font-size:13px}.map-node.branch-label{background:#fff4df;color:#9c7949}.map-print-buttons{display:flex;gap:10px;flex-wrap:wrap}.lesson-tabs{overflow-x:auto;padding-bottom:7px}.lesson-tab{border-color:#ddd3c2;border-radius:11px;white-space:nowrap}.lesson-tab.active{border-color:#ba6c33;background:#fff1e2;color:#a95c23}.concept-visual{background:#faf7eb;min-height:220px;overflow:auto}.expression{font-size:18px;line-height:1.9;color:#aa7c44;background:#fff5df}.lesson-stage-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:23px}.lesson-stage-tab{padding:8px 12px;border:1px solid #eadcc6;border-radius:9px;font-size:12px;background:#fff}.lesson-stage-tab.active{background:#b96522;color:#fff;border-color:#b96522}.lesson-stage{min-height:280px;padding:28px;border:1px solid #eddfc7;border-radius:17px;background:#fffcf7}.lesson-stage h3{font-size:21px;margin-bottom:18px}.lesson-stage p{font-size:15px;line-height:2;color:#9c8669;white-space:pre-wrap}.lesson-stage-nav{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.lesson-stage-count{font-size:12px;color:#b9a484;align-self:center}.stat-label{font-size:12px;color:#a39279}.stat-number{font-size:30px;color:#574836}.stat-number span{color:#b6a184}.auth-art{background:#f5ead8}.auth-art h1{color:#a75d24}.auth-art>p{color:#b29673}.auth-art:after{color:#ead8b8}.auth-pill{border-color:#decaac;color:#b5966e}.auth-form>p{color:#ac977c}.auth-foot{color:#bba98d}.loading{color:#b59b78}.loading:before{border-color:#efdfc7;border-top-color:var(--green)}#toast{background:#9b5016}.modal-backdrop{background:#46311b55}.modal{background:#fffdf9}.modal-close{color:#b9a482}.paper-info,.form-subtitle{color:#aa9677}.write-area{border-color:#dccbac;color:#b3a17f}.activity p{color:#a48e6e}.activity small{color:#b4a184}th{color:#a2947d;background:#faf6ef}

.report-shell{border:1px solid #e6dfd1;border-radius:25px;padding:27px;background:#f7f5ef}.report-head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #e6dece;margin-bottom:25px;padding-bottom:23px}.report-head h1{font-size:29px;margin:6px 0 0}.report-head .eyebrow{color:#a89984}.report-summary{padding:30px;border-radius:20px;background:#f6ead6;border:1px solid #ebd8b9;margin-bottom:25px}.report-summary h2{font-size:26px;margin:10px 0}.report-summary p{font-size:13px;line-height:1.9;color:#a8895e}.report-summary.report-start{background:linear-gradient(110deg,#b14a07,#963b03);color:#fff3df;border:0;position:relative;overflow:hidden}.report-start:after{content:'';position:absolute;width:190px;height:190px;border:1px solid #cf8852;border-radius:50%;top:-95px;right:-80px;pointer-events:none}.report-start .eyebrow,.report-start p{color:#f4c89c}.report-start h2{color:#fff4df;font-size:27px}.report-start .report-footnote{border-top:1px solid #d88b51;margin-top:19px;padding-top:13px;font-size:12px}.report-stats .card{padding:20px;position:relative;overflow:hidden}.report-stats .card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:#d98c48}.report-stats .stat-number{font-size:32px}.report-stats .stat-label{font-size:11px;margin-bottom:12px}.report-stats small{display:block;color:#baa589;font-size:10px;margin-top:10px}.report-section{padding-top:30px;margin-top:15px;border-top:1px solid #e5dece}.report-section .eyebrow{font-size:10px;color:#b49570;letter-spacing:1px}.report-section h2{margin-top:8px}.report-book-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 27px}.report-book-tab{padding:11px 17px;border:1px solid #dfceb4;background:#fff;border-radius:11px;text-align:left;font-size:13px}.report-book-tab small{display:block;font-size:10px;color:#b4a07e}.report-book-tab.active{border-color:#b87939;background:#fff2df;color:#9f5a1b}.report-charts{display:grid;grid-template-columns:1.25fr 1fr;gap:18px}.report-chart{background:#fff;border:1px solid #e8dfd0;border-radius:19px;padding:24px;min-width:0}.report-chart h3{margin:5px 0 3px;font-size:20px}.report-chart>p{font-size:11px;color:#b49b78}.bar-chart{height:235px;display:flex;align-items:flex-end;justify-content:space-around;gap:18px;border-bottom:1px solid #e6ddcc;padding:25px 10px 0;margin-bottom:9px;background:repeating-linear-gradient(to top,transparent 0px,transparent 49px,#f0eade 50px);overflow:auto}.bar-column{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:70px;height:100%;position:relative;gap:7px}.bar-value{font-size:12px;color:#9c815b;white-space:nowrap}.bar-stack{width:43px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:6px 6px 0 0;overflow:hidden;min-height:1px}.bar-stack span{width:100%;display:block}.bar-caption{text-align:center;font-size:10px;line-height:1.6;color:#a89372;min-height:33px}.chart-legend{display:flex;gap:14px;font-size:10px;flex-wrap:wrap;color:#aa9475;margin-top:15px}.chart-legend i{display:inline-block;width:8px;height:8px;border-radius:3px;margin-right:4px}.answer-donut{width:150px;height:150px;border-radius:50%;padding:22px;display:flex;align-items:center;justify-content:center;margin:25px auto}.donut-inner{background:#fff;border-radius:50%;width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}.donut-inner strong{font-size:31px;line-height:1.3;color:#6f5d43}.donut-inner span{font-size:10px;color:#b6a183}.distribution-row{display:flex;justify-content:space-between;font-size:12px;padding:9px 0;border-bottom:1px solid #f0eade;color:#a68d69}.distribution-row b{font-weight:600;color:#89714d}.filter-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.filter-tabs button{font-size:12px;padding:8px 13px;border:1px solid #e1d4bd;border-radius:8px;background:#fff;color:#aa906b}.filter-tabs button.active{background:#b76a28;border-color:#b76a28;color:#fff}.knowledge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.knowledge-card{padding:18px;background:#fff;border:1px solid #e4d6c0;border-radius:13px}.knowledge-card h3{font-size:14px;margin:10px 0 7px}.knowledge-card p{font-size:11px;color:#b19977;margin:0;line-height:1.85;overflow-wrap:anywhere}.knowledge-card .tiny{font-size:10px}.question-evidence{background:#fff;border:1px solid #e7dfd0;border-radius:12px;padding:17px 20px;margin-bottom:12px;break-inside:avoid}.question-evidence h3{font-size:14px;margin:7px 0}.question-evidence p{font-size:12px;color:#aa9270;margin:0;line-height:1.9}.question-evidence .evidence-meta{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#b8a17f}.paper-mode-tabs{display:flex;gap:8px;margin-bottom:25px;flex-wrap:wrap}.paper-mode-tabs button{padding:11px 16px;border:1px solid #dfd1ba;border-radius:11px;background:#fff;color:#ab8e67;font-size:13px}.paper-mode-tabs button.active{background:#b5611e;color:#fff;border-color:#b5611e}.paper-generation{margin-bottom:25px}.paper-generation .count-field{max-width:200px;margin:20px 0}.paper-notice{font-size:12px;color:#aa9170;line-height:1.9}.map-generation-card{margin-bottom:25px}.map-generation-card textarea{margin:15px 0}.map-print-buttons{display:flex;gap:9px;flex-wrap:wrap}
@media(min-width:1500px){.content{padding-top:45px}.home-hero{padding:42px 43px 37px}.home-hero h1{font-size:44px}.hero-description{font-size:16px}.home-step{min-height:152px}.tool-card{min-height:240px}}
@media(max-width:1000px){.site-header-inner{gap:18px}.brand-name{font-size:18px}.brand-sub{font-size:10px}.header-controls{gap:12px}.student-switch{gap:10px}.student-switch select{min-width:120px}.tool-grid{grid-template-columns:repeat(2,1fr)}.report-charts{grid-template-columns:1fr 1fr}.knowledge-grid{grid-template-columns:1fr 1fr}.home-note>span{display:none}}
@media(max-width:850px){.site-header-inner{flex-wrap:wrap;padding:24px 27px;gap:22px}.brand{width:100%}.header-controls{width:100%;gap:20px}.content{padding:32px 27px}.brand-mark{width:44px;height:47px}.brand-name{font-size:18px}.brand-sub{font-size:11px}.home-hero{padding:31px 30px}.home-hero h1{font-size:32px}.home-hero .eyebrow{font-size:11px}.hero-description{font-size:14px}.three-steps{gap:10px}.home-step{padding:15px;min-height:145px}.home-step h3{font-size:13px}.home-step p{font-size:11px}.home-step>span{width:36px;height:37px}.page-head h1{font-size:29px}.section-heading{display:block}.section-heading>p{margin-top:10px}.report-shell{padding:23px}.report-head{align-items:flex-start}.report-head h1{font-size:25px}.report-charts{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr}.start-card{margin-top:48px;padding:27px}.summary-main{padding:26px}.context-card{padding:22px}.context-card h3{font-size:16px}}
@media(max-width:540px){:root{font-size:14px}.site-header-inner{padding:20px;gap:20px}.header-controls{justify-content:flex-start;gap:12px}.student-switch{flex:1;gap:9px}.student-switch select{width:100%;min-width:90px;max-width:none}.student-switch label{font-size:10px}.header-controls>.secondary{font-size:11px;padding:9px 11px}.header-text-button{font-size:11px}.top-menu>summary{padding:5px}.brand-name{font-size:18px}.brand-sub{font-size:10px}.brand-mark{width:41px;height:44px;font-size:24px}.brand{gap:11px}.content{padding:25px 19px}.home-hero{padding:27px 22px 23px;border-radius:22px}.home-hero h1{font-size:28px;line-height:1.35;margin:20px 0}.hero-description{font-size:12px;line-height:2}.desktop-break{display:none}.hero-actions{gap:9px}.hero-actions button{font-size:12px;padding:11px 14px}.three-steps{grid-template-columns:1fr}.home-step{display:grid;grid-template-columns:40px 1fr;column-gap:13px;min-height:0;padding:15px}.home-step>span{grid-row:1/3;margin:0}.home-step h3{margin:0;font-size:13px}.home-step p{font-size:10px;margin-top:1px}.section-heading h2{font-size:21px}.section-heading .eyebrow{font-size:9px;letter-spacing:1.4px}.section-heading>p{font-size:11px}.tool-grid{grid-template-columns:1fr;gap:14px}.tool-card{padding:23px;min-height:210px}.tool-card h3{font-size:19px}.tool-card p{font-size:13px}.home-note{padding:19px 21px}.home-note b{font-size:12px}.home-note p{font-size:10px}.scope-footnote{font-size:10px}.page-head{display:block;margin-bottom:24px}.page-head h1{font-size:27px;letter-spacing:-1px}.page-head p{font-size:12px}.page-head>button{margin-top:15px;font-size:12px}.card{padding:22px;border-radius:18px}.card-title{align-items:flex-start;gap:10px}.card-title h2{font-size:20px}.context-card{padding:20px;margin-bottom:27px}.context-card h3{font-size:15px}.context-card .tag{font-size:9px}.context-card p{font-size:10px}.start-card{padding:23px;margin-top:32px}.start-card .field{margin-bottom:23px}.start-card .field small{font-size:11px}.start-rules{gap:7px 13px;font-size:10px}.start-card button.primary{width:100%;font-size:13px}.rule-details{font-size:12px}.history-card{padding:20px;align-items:flex-start;flex-direction:column;gap:15px}.history-card h3{font-size:17px}.history-card p{font-size:11px}.history-actions{align-self:flex-end}.form-grid{grid-template-columns:1fr}.field label{font-size:12px}.notice{font-size:11px;padding:13px 14px}.options{grid-template-columns:1fr}.question{padding:22px 0}.question h3{font-size:15px}.option{font-size:13px;padding:12px}.quiz-meta{font-size:10px;gap:10px}.form-actions{flex-wrap:wrap}.summary-main{padding:22px}.summary-student{font-size:13px}.summary-student span{font-size:10px}.summary-main>.row .secondary{font-size:11px;padding:9px 12px}.upload-zone{padding:20px 15px}.upload-zone strong{font-size:13px}.upload-zone input{font-size:11px;padding:10px}.upload-zone p{font-size:10px}.record-buttons .secondary{font-size:10px}.report-shell{padding:18px;border-radius:20px}.report-head{display:block;margin-bottom:20px;padding-bottom:19px}.report-head h1{font-size:24px}.report-head .tag{margin-top:13px}.report-summary{padding:24px;border-radius:17px}.report-start h2{font-size:23px}.report-start .eyebrow{font-size:10px}.report-start p{font-size:11px}.report-start .report-footnote{font-size:10px}.report-stats{gap:10px}.report-stats .card{padding:15px}.report-stats .stat-label{font-size:10px}.report-stats .stat-number{font-size:28px}.report-stats .stat-number span{font-size:10px}.report-stats small{font-size:9px}.report-section h2{font-size:22px}.report-section{padding-top:25px}.report-chart{padding:19px}.report-book-tab{font-size:11px;padding:10px 13px}.knowledge-grid{grid-template-columns:1fr}.knowledge-card{padding:17px}.question-evidence{padding:16px}.question-evidence h3{font-size:13px}.question-evidence .evidence-meta{font-size:9px}.footer{font-size:9px;gap:15px;line-height:1.8}.footer button{font-size:9px}.lesson-tabs{gap:7px}.lesson-tab{font-size:11px;padding:9px 12px}.lesson-stage{padding:21px;min-height:270px}.lesson-stage h3{font-size:19px}.lesson-stage p{font-size:13px}.lesson-stage-tabs{gap:6px}.lesson-stage-tab{font-size:10px;padding:7px 9px}.concept-visual{padding:19px;min-height:210px}.expression{font-size:15px;padding:18px}.map-canvas{padding:19px}.map-branches{min-width:550px}.map-print-buttons .secondary{font-size:11px}.auth-art{padding:30px}.auth-art h1{font-size:27px}.auth-art>p{font-size:11px}.auth-art:after{font-size:140px}.modal{padding:23px;border-radius:19px}.modal-header h2{font-size:19px}.admin-features{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr}.paper-info{font-size:10px;flex-wrap:wrap}}
@media print{.site-header,.page-head,.footer,.back-link,.context-card,.no-print,#toast,#modal-root{display:none!important}.content{padding:0;max-width:none}.report-shell{padding:0;border:0;background:#fff}.question-evidence,.knowledge-card,.report-chart{break-inside:avoid}body{background:#fff;color:#111}}

/* Visible, isolated preview: no automatic native print dialog or hidden popup. */
.modal.print-preview-modal{width:min(1240px,96vw);max-width:1240px;height:94vh;max-height:94vh;padding:20px;display:flex;flex-direction:column;overflow:hidden;background:#f8f5ee}.print-preview-modal .modal-header{margin-bottom:13px;flex:none}.print-preview-modal .modal-header h2{font-size:17px;line-height:1.6;max-width:90%;overflow-wrap:anywhere}.print-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 15px;border:1px solid #e4d7bf;background:#fffaf0;border-radius:12px;margin-bottom:15px;flex:none}.print-preview-toolbar p{font-size:11px;color:#af9672;margin:7px 0 0}.print-preview-toolbar .row{flex-shrink:0}.print-preview-modal iframe{width:100%;flex:1;min-height:0;border:1px solid #e0d6c3;border-radius:9px;background:#fff}.print-preview-toolbar .teacher-badge{display:inline-block}.print-preview-toolbar .tag{font-size:11px}@media(max-width:720px){.modal.print-preview-modal{width:100%;height:95vh;max-height:95vh;padding:15px}.print-preview-toolbar{display:block;padding:12px}.print-preview-toolbar .row{margin-top:11px}.print-preview-toolbar p{font-size:10px}.print-preview-modal .modal-header h2{font-size:14px}.print-preview-toolbar .small{font-size:10px!important;padding:7px 10px!important}}

/* Multi-book, source-backed curriculum navigation. */
.context-selectors{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(240px,1.3fr);gap:17px}.unit-capabilities{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 5px}.unit-capabilities>span{font-size:10px;padding:4px 8px;border-radius:6px;border:1px solid #e7dfd2;color:#a4957f;background:#f7f5ef}.unit-capabilities>span.available{background:#f1f5e9;border-color:#dce5cb;color:#83956a}.unit-capabilities>span.pending{background:#faf2e6;border-color:#eee0ca;color:#b39a76}.unit-coverage{font-size:10px!important;color:#b6a082!important;margin:10px 0 0!important;line-height:1.8}.curriculum-controls{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:24px}.curriculum-unit{margin-bottom:20px}.curriculum-unit>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.curriculum-unit h2{font-size:22px;margin:8px 0 0}.curriculum-unit .eyebrow{font-size:10px;letter-spacing:1.4px}.curriculum-points{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:20px 0}.curriculum-point{border:1px solid #ebe1d0;border-radius:11px;background:#fffcf6;padding:15px 17px;min-width:0}.curriculum-point>strong{display:block;font-size:13px;font-weight:600;color:#917349}.curriculum-point>code{font-size:9px;color:#b6a17f;overflow-wrap:anywhere;display:block;margin:3px 0 6px}.source-reference{font-size:10px;border-top:1px dotted #e9ddc7;padding:7px 0;line-height:1.8;color:#ac9471;overflow-wrap:anywhere}.source-reference>a{font-size:10px;color:#a45f28;margin-left:12px;text-decoration:underline;text-underline-offset:3px}.source-reference>small{font-size:9px;color:#c0ad91;display:block;line-height:1.7;overflow-wrap:anywhere}.curriculum-sources{padding:12px 15px;border:1px solid #e9dfcf;border-radius:10px;background:#faf7f0}.curriculum-sources>summary{font-size:12px;font-weight:600;color:#ab8d65;cursor:pointer}.curriculum-unit>footer{display:flex;justify-content:space-between;align-items:center;gap:17px;margin-top:17px;padding-top:16px;border-top:1px solid #efe6d7}.unit-pending>p{font-size:13px;color:#ac9879;line-height:1.95}.unit-pending .source-reference{margin-top:18px}.curriculum-results>.tiny{margin:0 0 18px}.curriculum-point .source-reference:last-child{padding-bottom:0}@media(max-width:850px){.context-selectors{grid-template-columns:1fr 1fr}.curriculum-unit>header{display:block}.curriculum-unit>header .tag{margin-top:13px}.curriculum-unit h2{font-size:20px}.curriculum-point{padding:14px}}@media(max-width:540px){.context-selectors,.curriculum-controls,.curriculum-points{grid-template-columns:1fr}.context-selectors{gap:15px}.curriculum-controls{gap:17px}.curriculum-unit>footer{display:block}.curriculum-unit>footer>button{margin-top:13px}.curriculum-point>strong{font-size:12px}.unit-capabilities{gap:6px}.unit-capabilities>span{font-size:9px}.unit-coverage{font-size:9px!important}.curriculum-unit h2{font-size:19px}.source-reference>a{margin-left:0;display:block}}

.place-value-board{width:100%;max-width:620px}.board-view-tabs{display:flex;justify-content:center;gap:9px;margin-bottom:22px;flex-wrap:wrap}.board-view-tabs button{border:1px solid #dfc9a7;background:#fffaf0;padding:8px 13px;font-size:12px;border-radius:9px;color:#a78b61}.board-view-tabs button.active{background:#b77837;color:#fff;border-color:#b77837}.board-state[hidden]{display:none!important}.place-value-columns{display:flex;justify-content:center;gap:16px;align-items:stretch}.place-value-column{flex:1;max-width:230px;border:1px solid #dfd0b7;border-radius:13px;background:#fffdf4;overflow:hidden}.place-value-column h4{font-size:15px;color:#a8814e;background:#f5ead5;padding:12px;margin:0;border-bottom:1px solid #e8d6b9}.place-value-chips{min-height:132px;padding:17px 12px;display:grid;grid-template-columns:repeat(5,1fr);align-content:center;gap:6px}.place-value-chips i{font-style:normal;font-size:9px;background:#e9d2a6;border:1px solid #dbc28f;border-radius:7px;padding:7px 2px;color:#9d733f;min-width:0}.place-value-chips .zero-chips{grid-column:1/-1;font-size:12px;color:#c3b494}.place-value-column p{font-size:12px;color:#b19a74;border-top:1px solid #eee3d0;padding:9px;margin:0}.board-total{font-size:13px;color:#a38152;margin:18px 0 0}.large-number-visual{width:100%;max-width:600px}.large-number-line{width:100%;height:auto;min-height:160px;overflow:visible}@media(max-width:540px){.place-value-columns{gap:10px}.place-value-column h4{font-size:13px;padding:10px}.place-value-chips{padding:13px 8px;gap:4px;grid-template-columns:repeat(2,1fr);min-height:170px}.place-value-chips i{padding:5px 2px;font-size:9px}.board-view-tabs button{font-size:10px;padding:7px 10px}.board-total{font-size:11px}.large-number-line{min-height:140px}}

.point-source-details>summary{font-size:10px;color:#b2956d;cursor:pointer;margin-top:8px}.point-source-details[open]>summary{margin-bottom:8px}.point-source-details .source-reference{background:#fffef9;margin-top:4px;padding:8px;border-radius:6px}

/* Content-specific concept diagrams: paper-first and progressively revealed. */
.math-explore{width:100%;max-width:720px;text-align:center}.math-explore h4{font-size:18px;color:#81623c;margin:0 0 20px}.math-explore p{font-size:13px;line-height:1.9}.explore-panel{text-align:left;border:1px solid #e6d7bd;border-radius:10px;background:#fffdf7;margin:12px 0;padding:12px 15px}.explore-panel>summary{cursor:pointer;color:#956c37;font-size:13px;font-weight:600}.explore-panel[open]>summary{margin-bottom:14px}.explore-pair,.ordinal-row,.balance-panels,.operation-children{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap}.explore-pair>section{border:1px solid #e0d5bc;border-radius:12px;padding:15px;min-width:90px}.explore-dots{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;padding:12px}.explore-dot{display:inline-block;width:22px;height:22px;border:2px solid #b17d3e;border-radius:50%;background:#e5bd7f}.explore-dot.green{border-color:#759565;background:#b6d29e}.explore-dot.removed{background:#eee8dd;border-color:#d4c9b6;position:relative}.explore-dot.removed:after{content:'';position:absolute;left:-3px;right:-3px;top:8px;border-top:2px solid #ac6e60;transform:rotate(-45deg)}.ordinal-token{border:1px solid #ded3bc;border-radius:12px;padding:14px 18px;background:#fff}.ordinal-token b{display:block;font-size:22px;color:#9b773f}.ordinal-token small{display:block;margin-top:8px;font-size:11px;color:#a89677}.ordinal-token.highlight{outline:2px solid #bf8643;background:#faecd3}.ten-frame{display:grid;grid-template-columns:repeat(5,26px);gap:7px;justify-content:center;border:1px solid #d5c9ac;border-radius:9px;padding:12px;margin:12px auto;width:max-content}.part-bar{display:flex;min-height:76px;border:2px solid #a68a55;margin:24px 0}.part-bar>div{display:grid;place-items:center;background:#c8d9ae;min-width:20px;font-size:18px}.part-bar .unknown{background:#f3e3c1;border-left:2px dashed #a68a55;font-size:12px;padding:8px}.bar-cells{display:flex;gap:3px;flex-wrap:wrap}.bar-cells i{font-style:normal;border:1px solid #d7c7a7;padding:7px;color:#a17c49;flex:1}.bar-cells .known{background:#d6e1c1}.sort-items{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.sort-token{display:grid;place-items:center;width:62px}.sort-token svg{height:36px;width:36px}.sort-token small{font-size:10px;color:#8e7c60}.sort-bin{padding:14px;border-bottom:1px dotted #deceb1}.sort-bin h5{font-size:14px;margin:0 0 12px}.group-grid{display:flex;flex-wrap:wrap;gap:10px}.dot-group{flex:1;min-width:100px;border:1px solid #d9c79f;border-radius:12px;padding:10px}.dot-group small,.leftover small{font-size:12px}.leftover{margin-top:16px;border-top:1px dashed #c9b58e;padding-top:14px}.explore-expression{font-size:24px!important;font-family:serif;color:#9f743b}.operation-node{padding:10px;border:1px solid #dac6a2;border-radius:12px;background:#fffcf4;margin:8px;text-align:center;min-width:90px}.operation-node>.explore-panel{padding:6px 10px}.operation-children{align-items:flex-start;gap:7px}.tree-leaf,.tree-operator{display:inline-block;padding:10px;border-radius:8px;background:#e7edd9;font-size:19px}.tree-operator{background:#f2ddb5;margin:8px}.sharing-columns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.sharing-columns>section{flex:1;min-width:130px;border:1px solid #ddcba9;border-radius:10px;padding:12px;background:#fffdf8}.sharing-columns h5{margin:0;font-size:17px}.sharing-rows{border-top:1px dashed #d7c59f}.sharing-rows p{margin:5px}.balance-panels>section{border:1px solid #d8c7a9;border-radius:12px;padding:20px 28px;background:#fffdf7}.balance-panels>b{font-size:27px}.balance-panels .unknown{font-size:26px;border:2px dashed #c9b38e;padding:7px}.balance-beam{width:100%;height:40px}.factor-grid{display:grid;gap:5px;justify-content:center;margin:15px auto;max-width:100%;overflow-x:auto}.factor-grid i{width:100%;aspect-ratio:1;background:#d1dcba;border:1px solid #91aa73;border-radius:3px}.divisibility-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.divisibility-cards article{border:1px solid #ddcba9;border-radius:9px;padding:12px;text-align:center;background:#fff}.divisibility-cards strong{display:block;font-size:24px;color:#9e743f}.divisibility-cards small{font-size:10px}.divisibility-cards .explore-panel{padding:5px;font-size:10px}.divisibility-cards .explore-panel>summary{font-size:10px}.math-explore .visual-caption{font-size:12px!important}@media(max-width:540px){.math-explore h4{font-size:15px}.ordinal-row{gap:6px}.ordinal-token{padding:9px}.ordinal-token b{font-size:18px}.explore-pair{gap:8px}.explore-dot{width:18px;height:18px}.operation-children{gap:1px}.operation-node{padding:5px;margin:3px;min-width:60px}.divisibility-cards{grid-template-columns:repeat(2,1fr)}.part-bar{min-height:65px}}

/* 0.5 role-separated learning, calm legible surfaces and paper-first collaboration. */
:root{--bg:#f5f5f7;--green:#1469d8;--green-dark:#0752b0;--mint:#edf5ff;--ink:#1d1d1f;--muted:#68686e;--line:#e4e5e9;font-size:16px;line-height:1.7;color:var(--ink);background:var(--bg)}
body{background:var(--bg)}button,input,select,textarea{font-size:16px}button.primary,.primary{background:var(--green);border-color:var(--green);border-radius:13px;min-height:46px;padding:11px 20px}button.primary:hover{background:var(--green-dark)}button.secondary,.secondary{min-height:44px;background:#fff;color:#242428;border:1px solid #dedfe4;border-radius:12px;padding:10px 17px}.small{font-size:14px!important;min-height:44px!important;padding:9px 13px!important}button.text-button,.header-text-button{min-height:44px}.muted{color:#68686e}.tag{font-size:12px;line-height:1.5;padding:5px 9px;background:#edf5ff;color:#2464aa}.tag.gray{background:#f0f0f3;color:#67676d}.tag.yellow{background:#fff4dc;color:#8b5b0c}.tag.red{background:#fff0ed;color:#aa4938}.eyebrow{color:#687588;font-size:11px}.notice{font-size:14px;color:#71511c;background:#fff8e9;border-color:#eee1c5}.notice.green{background:#edf5ff;color:#305b88;border-color:#d5e4f6}.tiny{font-size:13px}.footer{font-size:12px;color:#74747c;gap:15px}.footer button{font-size:12px;min-height:44px}.field label{font-size:15px;color:#414149}input:not([type=checkbox]):not([type=radio]),textarea,select{background:#fff;border-color:#dadce2;border-radius:12px;min-height:46px;font-size:16px;color:#242428}input:focus,textarea:focus,select:focus{outline:3px solid #1469d822;border-color:#1469d8}input[type=checkbox],input[type=radio]{width:19px;height:19px;flex:none}label.checkbox{font-size:14px;min-height:40px;color:#494950}h1,h2,h3{color:#1d1d1f}.card{border-color:#e4e5e9;box-shadow:0 2px 9px #00000003;background:#fff}.page-head p{font-size:15px;color:#68686e}.page-head h1{font-size:30px;letter-spacing:-.8px}.scope-footnote{font-size:13px;color:#717178}.empty{background:#fafafc;border-color:#d5d7df;color:#72727a}.empty p{font-size:14px}.legacy-account-list{display:none}
.site-header{background:#fff;border-color:#e6e6eb}.site-header-inner{max-width:1480px;padding:22px 32px;gap:25px;flex-wrap:wrap}.brand{width:auto;flex:none;gap:10px}.brand-mark{background:#1469d8;color:#fff;width:40px;height:42px;font-size:24px;border-radius:12px;box-shadow:none}.brand-name{font-size:20px;letter-spacing:-.5px;color:#1d1d1f}.brand-sub{font-size:11px;color:#777780;letter-spacing:0}.role-nav{display:flex;gap:5px;align-items:center}.role-nav button{padding:10px 14px;min-height:44px;font-size:15px;border-radius:11px;color:#676770;font-weight:500}.role-nav button.active{background:#edf4ff;color:#1263cc}.header-controls{margin-left:auto;gap:13px}.student-switch{gap:9px}.student-switch label{font-size:12px;color:#73737c;line-height:1.5}.student-switch select{min-width:100px;max-width:170px;padding:8px 12px;background:#f7f7fa;color:#25252b;border-color:#e2e3e8}.identity-chip{font-size:12px;color:#707078;white-space:nowrap}.learner-identity{font-size:15px;font-weight:600}.top-menu>summary{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #e8e8ed;border-radius:12px;color:#65656c}.top-menu-panel{background:#fff;border-color:#e0e1e7;min-width:250px;box-shadow:0 12px 50px #1928491c}.top-menu-panel>button{font-size:14px;min-height:44px;color:#35353e}.menu-identity{font-size:13px;color:#71717a;padding:12px}.content{max-width:1250px;padding:35px 32px 55px}.assisting-bar{background:#edf4ff;border-bottom:1px solid #dfe9f8;display:flex;align-items:center;gap:20px;padding:9px max(32px,calc((100vw - 1186px)/2));font-size:13px;color:#46648a;flex-wrap:wrap}.assisting-bar>span:first-child{display:flex;align-items:center;gap:7px}.assisting-bar>button{margin-left:auto;min-height:36px;color:#1469d8;font-weight:600}.account-card{max-width:570px;margin:auto;padding:32px}.account-identity{display:flex;align-items:center;gap:15px;margin-bottom:25px}.account-identity h2{margin:0;font-size:22px}.account-identity p{margin:3px 0 0;color:#6b6b74;font-size:14px}.student-avatar{width:48px;height:48px;flex:none;display:grid;place-items:center;background:#edf4ff;color:#2368bd;border-radius:17px;font-size:20px;font-weight:650}
.learner-welcome{max-width:730px;margin:14px auto 30px}.learner-welcome h1{font-size:44px;line-height:1.25;letter-spacing:-1.3px;margin:18px 0}.learner-welcome>p{font-size:17px;color:#6b6b74}.today-card{max-width:820px;padding:38px 40px;border-radius:25px;background:#fff;border:1px solid #e4e5eb;box-shadow:0 8px 30px #1c345007;margin:0 auto 23px}.today-card h2{font-size:29px;letter-spacing:-.7px;line-height:1.35;margin:12px 0}.today-card p{font-size:16px;color:#73737b;line-height:1.9;max-width:650px}.today-card .primary{margin-top:10px;min-width:170px}.task-status{font-size:13px;color:#63738c;font-weight:500}.quiet-notice{max-width:820px;margin:20px auto;display:flex;align-items:flex-start;gap:10px;font-size:14px;color:#6a7280;padding:15px 18px;background:#edf1f7;border-radius:13px}.quiet-notice svg{flex:none;margin-top:2px}.learner-path{max-width:820px;margin:38px auto}.learner-path h2{font-size:19px;margin-bottom:19px}.learner-path>div{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.learner-path span{font-size:14px;display:flex;gap:10px;align-items:center;color:#65656e}.learner-path b{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#e7e9ee;color:#757982;font-size:12px;font-weight:500}.task-list{display:grid;gap:13px}.task-card{display:flex;align-items:center;gap:20px;border:1px solid #e1e3e9;border-radius:18px;background:#fff;padding:23px}.task-glyph{height:53px;width:53px;display:grid;place-items:center;border-radius:16px;background:#edf4ff;color:#3371bd;flex:none}.task-card h3{font-size:20px;margin:3px 0}.task-card p{font-size:14px;color:#75757e;margin:0}.task-card .secondary{font-size:14px;white-space:nowrap}.staff-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0 35px}.staff-overview>div{border:1px solid #e4e5eb;border-radius:18px;background:#fff;padding:23px;display:flex;align-items:center;gap:17px}.staff-overview strong{font-size:32px;color:#303a4a}.staff-overview span{font-size:14px;color:#71717b}.roster-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.roster-head h2{font-size:22px;margin:0}.roster-search{display:flex;align-items:center;gap:8px;max-width:290px;min-width:180px;color:#868b96}.roster-search input{background:#fff}.student-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.student-card{padding:23px;border:1px solid #e1e3e9;background:#fff;border-radius:20px;min-width:0}.student-card-top{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.student-card h3{font-size:20px;margin:0}.student-card p{font-size:12px;color:#7b7b84;margin:2px 0}.student-card .tag{margin-left:auto}.student-current{border-top:1px solid #f0f0f3;margin-top:20px;padding-top:16px}.student-current span{display:block;color:#82828a;font-size:12px}.student-current strong{display:block;margin:6px 0 18px;font-size:15px;font-weight:550}.student-card>.secondary{width:100%;justify-content:space-between;font-size:14px}.workspace-task-publish{background:#edf4ff;color:#35608c;padding:18px;border-radius:14px}.role-admin .home-hero,.role-assistant .home-hero{background:#fff;border-color:#e1e4eb;min-height:0}.role-admin .home-hero h1,.role-assistant .home-hero h1{font-size:31px;color:#222630}.role-admin .three-steps,.role-assistant .three-steps{display:none}.role-admin .hero-description,.role-assistant .hero-description{font-size:15px;color:#74747c}.home-hero .eyebrow,.home-tools .eyebrow{color:#7c8799}.tool-card{border-color:#e2e4eb;background:#fff;min-height:230px}.tool-card h3{color:#252a33;font-size:21px}.tool-card p{color:#737780;font-size:14px}.tool-card svg,.tool-link{color:#3e76bb}.tool-number{color:#9ca9bb}.home-note{background:#edf1f6;color:#66778d}.home-note b{color:#4b617b}.home-note p{color:#6b7d94}.context-card{background:#fff;border-color:#e2e4eb}.context-card h3{color:#313944}.context-card p{color:#737b86;font-size:13px}.unit-coverage{color:#717b89!important;font-size:12px!important}.unit-capabilities>span{font-size:12px;color:#737e8e}.unit-capabilities>span.available{background:#edf4fc;color:#486e9f;border-color:#dce7f4}.back-link{font-size:14px;min-height:44px;color:#276bc2}.record h3{font-size:16px}.record p{font-size:14px}.record .tiny{font-size:13px}table th,table td{font-size:14px}.question h3{font-size:17px;line-height:1.8}.question-num{font-size:13px;background:#edf4ff;color:#5f80ab}.option{font-size:16px;min-height:52px;border-color:#e1e4eb;padding:13px 15px}.option:has(input:checked){background:#edf5ff;border-color:#5890d4}.option-letter{font-size:14px;color:#6e83a0}.quiz-meta{background:#f1f4f9;color:#68758b;font-size:13px}.lesson-stage p{font-size:16px;color:#5b616c}.lesson-stage h3{color:#252c38}.lesson-story{font-size:16px;color:#666c78}.lesson-stage-tab,.lesson-tab{min-height:44px;font-size:14px;color:#65738a;border-color:#e0e5ed}.lesson-stage-tab.active,.lesson-tab.active{color:#1469d8;background:#edf4ff;border-color:#b4d0f2}.lesson-stage{background:#fafbfe;border-color:#e2e8f2}.expression{font-size:18px;background:#f1f6fd;color:#3f608a}.paper-notice{font-size:15px;color:#6d727c}.role-student .content{max-width:960px}.role-student .footer,.role-parent .footer{max-width:820px;margin:32px auto 0}.role-student .scope-footnote,.role-parent .scope-footnote{font-size:13px;color:#747b86}.role-student .lesson-tabs{display:none}.role-student .lesson-story{margin-bottom:24px}.role-student .report-stats .stat-label{font-size:14px}.role-student .report-stats small{font-size:12px}.family-published p{font-size:16px;white-space:pre-wrap}.family-published li{margin:12px 0;color:#5e6672}.learning-task-header{margin:0 0 25px}.learning-task-header h1{font-size:31px;margin:12px 0}.task-readonly{border-left:3px solid #81a8d7;padding:10px 16px;margin:15px 0;color:#5e7087}.modal{background:#fff;border-radius:22px}.modal-header h2{color:#242831;font-size:22px}.modal-close{width:44px;height:44px;color:#687386}.modal .notice{font-size:14px}.top-menu-panel button:hover{background:#edf4ff;color:#1469d8}.summary-main .summary-student{color:#313b4a}.summary-student span{color:#6d7786;font-size:14px}.upload-zone{background:#fafbfe;border-color:#d4deeb}.upload-zone strong{color:#3d5879}.upload-zone p{font-size:13px;color:#7a8290}.manual-note{font-size:13px;color:#747d8c}.modal .table-wrap td{white-space:normal}.task-review-controls{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
@media(max-width:1000px){.site-header-inner{padding:20px 25px;gap:16px}.identity-chip{display:none}.student-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.header-controls{width:auto}.brand{width:auto}.role-nav{margin-right:auto}.role-nav button{padding:9px 11px}}
@media(max-width:700px){.site-header-inner{padding:17px 20px;gap:13px}.brand-name{font-size:19px}.brand-sub{font-size:11px}.header-controls{margin-left:auto}.role-nav{order:3;width:100%;justify-content:center;border-top:1px solid #f0f0f4;padding-top:10px}.role-nav button{flex:1}.brand-mark{width:36px;height:39px;font-size:22px}.content{padding:27px 20px 40px}.student-switch{gap:5px}.student-switch label{display:none}.student-switch select{max-width:115px;min-width:85px;font-size:14px}.learner-identity{display:none}.assisting-bar{padding:9px 20px;font-size:12px;gap:5px 15px}.assisting-bar>span:nth-child(2){display:none}.assisting-bar>button{min-height:36px}.learner-welcome{margin:8px 0 27px}.learner-welcome h1{font-size:34px}.learner-welcome>p{font-size:15px}.today-card{padding:27px 25px;border-radius:21px}.today-card h2{font-size:25px}.today-card p{font-size:15px}.learner-path>div{grid-template-columns:1fr 1fr;gap:18px}.task-card{gap:13px;padding:19px;flex-wrap:wrap}.task-card h3{font-size:18px}.task-card>.secondary{margin-left:66px}.task-glyph{width:45px;height:48px;border-radius:14px}.staff-overview{gap:10px}.staff-overview>div{display:block;padding:17px}.staff-overview strong{display:block;font-size:27px}.staff-overview span{font-size:12px}.student-roster{grid-template-columns:1fr}.roster-head{align-items:flex-start;flex-direction:column;gap:15px}.roster-search{max-width:none;width:100%}.account-card{padding:25px}.page-head h1{font-size:28px}.page-head p{font-size:15px}.card{padding:23px}.lesson-stage-tab,.lesson-tab{font-size:13px;padding:9px 11px}.lesson-stage{padding:23px}.lesson-stage p{font-size:16px}.lesson-stage-count{font-size:12px}.lesson-stage-nav .small{font-size:14px!important}.task-card .task-status{font-size:12px}.footer{font-size:12px}.footer button{font-size:12px}.small{font-size:14px!important}.context-card .tag{font-size:11px}.context-card p{font-size:13px}.field label{font-size:15px}.option{font-size:16px}.question h3{font-size:17px}.notice{font-size:14px}.record-buttons .secondary{font-size:14px}.print-preview-toolbar .small{font-size:13px!important}.concept-visual{overflow:auto}.role-student .map-canvas{margin:0 -7px}.report-head h1{font-size:27px}.report-stats .stat-label{font-size:12px}.report-stats small{font-size:11px}}

/* 0.6 assessment: explicit round context, recovery and honest sample coverage. */
.assessment-current{margin-bottom:23px}.assessment-current h2{font-size:26px;margin:10px 0}.assessment-current>p{color:#687385;font-size:14px}.assessment-rule-chips{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0}.assessment-rule-chips>span{background:#f0f5fc;border:1px solid #dce7f6;border-radius:9px;padding:7px 11px;font-size:13px;color:#496b97}.assessment-result{background:#f5f8fc;border:1px solid #e0e8f3;border-radius:18px;padding:26px}.assessment-result h2{font-size:24px;line-height:1.45;margin:16px 0 10px}.assessment-result>p{font-size:15px;color:#647185}.assessment-result .row{margin-top:20px}.assessment-dispatch{display:flex;align-items:center;justify-content:space-between;gap:23px;padding:24px;background:#eaf3ff;border:1px solid #d7e7fc;border-radius:18px;margin:20px 0}.assessment-dispatch h2{font-size:21px;margin:0 0 6px}.assessment-dispatch p{font-size:14px;color:#627998;margin:0;max-width:680px}.assessment-dispatch>.primary{flex:none}.assessment-recovery{margin:20px 0}.assessment-recovery .record h3{font-size:16px}.assessment-recovery .record p{margin:4px 0;color:#748095;font-size:13px}.assessment-recovery .record:last-child{padding-bottom:0}.assessment-sheet .notice{display:block}.assessment-sheet .notice>.secondary{margin:12px 0 0 12px}.coverage-book>summary,.coverage-unit>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;min-height:44px}.coverage-book>summary{font-size:19px}.coverage-book>summary>span,.coverage-unit>summary>span{font-size:13px;color:#728098;font-weight:400}.coverage-unit{padding:14px 0;border-top:1px solid #eceef3}.coverage-unit>summary{font-size:16px}.coverage-unit ul{list-style:none;padding:0;margin:15px 0}.coverage-unit li{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px dotted #e3e7ef;font-size:14px}.coverage-unit li strong{font-size:13px;color:#6d85a6;font-weight:500}.coverage-unit li strong.coverage-missing{color:#9c7744}.assessment-sheet input:disabled+span{opacity:.7}.assessment-sheet .option:has(input:disabled){cursor:default}.assessment-sheet .form-actions{justify-content:flex-start}.assessment-result .tag{font-size:13px}
@media(max-width:700px){.assessment-dispatch{display:block;padding:22px}.assessment-dispatch>.primary{margin-top:18px;width:100%}.assessment-current h2{font-size:23px}.assessment-rule-chips>span{font-size:12px}.assessment-result{padding:22px}.assessment-result h2{font-size:22px}.assessment-result .row{display:grid}.assessment-recovery .card-title{display:block}.assessment-recovery .card-title>.secondary{margin-top:12px}.assessment-recovery .record{gap:10px}.coverage-book>summary,.coverage-unit>summary{display:block;padding:8px 0}.coverage-book>summary>span,.coverage-unit>summary>span{display:block;margin-top:7px}.coverage-unit li{align-items:flex-start}.coverage-unit li strong{flex:none;max-width:45%;text-align:right}.assessment-sheet .form-actions{display:grid;grid-template-columns:1fr}.assessment-sheet .notice>.secondary{margin-left:0}}

/* 0.7 self-service baseline and a real multi-student coaching overview. */
.latest-evaluation{max-width:820px;margin:22px auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.latest-evaluation h3{margin:7px 0 0;font-size:20px}.learner-assignments{max-width:820px;margin:35px auto}.learner-assignments .section-heading{margin-bottom:18px}.learner-assignments h2{font-size:22px}.self-start-card{max-width:720px;margin:15px auto 30px;padding:32px}.self-start-card h2{font-size:29px}.readonly-edition{font-size:15px;color:#636d7b;background:#f5f7fb;border:1px solid #e7ebf2;padding:13px 15px;border-radius:11px;margin:3px 0 20px}.self-start-card form>.primary{min-width:185px}.coaching-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.coaching-overview>div{display:block;padding:21px}.coaching-overview strong{display:block;font-size:30px}.coaching-overview span{font-size:13px}.coaching-toolbar{padding:20px 23px;margin-bottom:20px}.coaching-toolbar .roster-search{max-width:370px;flex:1}.coaching-toolbar .row>p{margin:0}.coaching-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.coaching-filters button{border:1px solid #dfe4ec;min-height:44px;padding:9px 15px;font-size:14px;border-radius:10px;background:#fff;color:#68788f}.coaching-filters button.active{background:#edf4ff;border-color:#b9d3f6;color:#1762bf;font-weight:600}.coaching-results{display:block}.coaching-table-wrap{border:1px solid #e0e5ed;background:#fff;border-radius:18px;overflow:auto}.coaching-table{table-layout:fixed;width:100%;min-width:1030px;margin:0}.coaching-table th{background:#f5f7fb;font-size:12px;color:#7a879a;white-space:nowrap;font-weight:550;padding:14px}.coaching-table td{font-size:13px;vertical-align:top;padding:18px 14px;white-space:normal;color:#46566f;border-bottom:1px solid #edf0f5}.coaching-table td:nth-child(1){width:15%}.coaching-table td strong{font-size:13px;font-weight:550;line-height:1.7;display:block}.coaching-table td p{font-size:12px;color:#8490a1;margin:6px 0 0;line-height:1.7;overflow-wrap:anywhere}.coaching-table th:nth-child(1){width:15%}.coaching-table th:nth-child(2){width:13%}.coaching-table th:nth-child(3){width:20%}.coaching-table th:nth-child(4){width:21%}.coaching-table th:nth-child(5){width:12%}.coaching-table th:nth-child(6){width:19%}.coaching-name{color:#253c5e;font-size:17px;font-weight:650;padding:0;min-height:34px;text-align:left}.coaching-name:hover{color:#1469d8;text-decoration:underline}.coaching-actions{display:flex;gap:7px;flex-wrap:wrap}.coaching-actions .small{font-size:12px!important;min-height:40px!important;padding:7px 10px!important}.coaching-table .tag{font-size:11px}.evaluation-hero{background:#fff;border:1px solid #e0e5ee;padding:32px;border-radius:23px}.evaluation-hero h2{font-size:30px;line-height:1.4;margin:10px 0 18px}.evaluation-hero>p{font-size:16px;color:#6d7888;white-space:pre-wrap}.evaluation-hero>.tiny{font-size:13px}.evaluation-next{margin-top:23px;padding:22px;background:#edf4ff;border:1px solid #d9e6f8;border-radius:15px}.evaluation-next>span{font-size:12px;color:#6985aa;display:block}.evaluation-next>strong{font-size:25px;color:#30557f;margin:8px 0;display:block}.evaluation-next>p{font-size:14px;color:#7b8da5;margin:0}.evaluation-rounds{display:grid;gap:13px}.evaluation-rounds article{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:16px;background:#f7f9fc;border-radius:12px}.evaluation-rounds strong{font-size:16px}.evaluation-rounds span{font-size:14px;color:#627a9a}.evaluation-rounds small{font-size:12px;color:#8996a8}.evaluation-steps{padding-left:25px;margin:16px 0 0}.evaluation-steps li{padding:7px 0;font-size:16px;line-height:1.85;color:#57667b}.evaluation-points{display:grid;gap:15px}.evaluation-points>details>summary{min-height:44px;cursor:pointer;font-size:18px;font-weight:550;color:#3e5677}.evaluation-points .record h3{font-size:16px}.evaluation-points .record p{font-size:14px;color:#7e8999}.evaluation-points>details>p{font-size:14px;margin-top:12px}.evaluation-points details details summary{cursor:pointer}.role-student .role-nav{gap:1px}.role-student .role-nav button{padding:10px 12px}
@media(max-width:800px){.coaching-overview{grid-template-columns:1fr 1fr;gap:12px}.coaching-overview>div{padding:17px}.coaching-overview strong{font-size:28px}.coaching-table-wrap{border:0;background:none;overflow:visible}.coaching-table{min-width:0;display:block}.coaching-table thead{display:none}.coaching-table tbody{display:grid;gap:15px}.coaching-table tr{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid #e0e5ee;border-radius:16px;padding:16px;gap:12px 16px}.coaching-table td{display:block;width:auto!important;padding:0;border:0;font-size:14px}.coaching-table td::before{content:attr(data-label);display:block;color:#95a0b1;font-size:11px;margin-bottom:5px}.coaching-table td:last-child{grid-column:1/-1;border-top:1px solid #edf0f5;padding-top:13px}.coaching-table td:nth-child(4){grid-column:1/-1}.coaching-name{font-size:19px;min-height:35px}.coaching-actions .small{font-size:14px!important;min-height:44px!important;flex:1}.coaching-toolbar{padding:18px}.coaching-toolbar .roster-search{max-width:none}.coaching-filters{gap:7px}.coaching-filters button{font-size:12px;padding:9px 11px}.evaluation-hero{padding:25px}.evaluation-hero h2{font-size:26px}.evaluation-rounds article{align-items:flex-start;flex-wrap:wrap;gap:8px 15px}.evaluation-rounds article small{width:100%}.evaluation-points>details>summary{font-size:16px}.latest-evaluation{display:block}.latest-evaluation>.secondary{margin-top:17px}.self-start-card{padding:24px}.self-start-card h2{font-size:26px}.role-student .role-nav button{font-size:14px;padding:10px 6px}}

/* Learning map: Google-inspired four-color semantics, scoped away from the other tools. */
.report-shell{--map-blue:#4285f4;--map-red:#ea4335;--map-yellow:#fbbc04;--map-green:#34a853;background:#f8fafd;border-color:#dce3ed;color:#202124}
.map-color-scope{--map-blue:#4285f4;--map-red:#ea4335;--map-yellow:#fbbc04;--map-green:#34a853}
.report-shell .report-tone-mastered,.map-color-scope .report-tone-mastered{--state-accent:var(--map-green);--state-ink:#137333;--state-wash:#e6f4ea;--state-line:#a8dab5}
.report-shell .report-tone-weak,.map-color-scope .report-tone-weak{--state-accent:var(--map-red);--state-ink:#b3261e;--state-wash:#fce8e6;--state-line:#f1b4ae}
.report-shell .report-tone-review,.map-color-scope .report-tone-review{--state-accent:var(--map-yellow);--state-ink:#7a4f00;--state-wash:#fef7e0;--state-line:#e5c770}
.report-shell .report-tone-unassessed,.map-color-scope .report-tone-unassessed{--state-accent:var(--map-blue);--state-ink:#174ea6;--state-wash:#e8f0fe;--state-line:#aecbfa}
.report-shell .report-head,.report-shell .report-section{border-color:#dce3ed}
.report-shell .eyebrow{color:#46688d}
.report-shell .report-start{background:#174ea6;border:1px solid #174ea6;color:#fff}
.report-shell .report-start:after{border-color:#85aff2}
.report-shell .report-start h2{color:#fff}
.report-shell .report-start p,.report-shell .report-start .eyebrow{color:#eef4ff}
.report-shell .report-start .report-footnote{border-color:#6995d8}
.report-shell .report-stats .card:before{width:4px;background:var(--map-blue)}
.report-shell .report-stats .card:nth-child(3):before{background:var(--map-red)}
.report-shell .report-stats .card:nth-child(3) .stat-number{color:#b3261e}
.report-shell .report-stats small,.report-shell .report-chart>p,.report-shell .bar-caption,.report-shell .chart-legend,.report-shell .distribution-row,.report-shell .question-evidence p,.report-shell .evidence-meta{color:#596579}
.report-shell .report-book-tab{border-color:#d7e0ec;color:#334155}
.report-shell .report-book-tab small{color:#596579}
.report-shell .report-book-tab.active{border-color:var(--map-blue);background:#e8f0fe;color:#174ea6;box-shadow:inset 0 0 0 1px var(--map-blue)}
.report-shell .report-chart,.report-shell .question-evidence{border-color:#dce3ed}
.report-shell .report-chart>p,.report-shell .bar-caption,.report-shell .chart-legend{font-size:12px}
.report-shell .bar-value,.report-shell .donut-inner strong,.report-shell .distribution-row b{color:#28354a}
.report-shell .bar-chart{background:repeating-linear-gradient(to top,transparent 0px,transparent 49px,#e8edf4 50px);border-color:#d3dce8}
.report-shell .bar-stack .bar-wrong{background-image:repeating-linear-gradient(135deg,transparent,transparent 5px,#ffffff66 5px,#ffffff66 7px)}
.report-shell .chart-legend i{width:11px;height:11px;border:1px solid #ffffff99}
.report-shell .donut-inner span{color:#596579}
.report-shell .report-knowledge-intro{font-size:15px;color:#4b5565;line-height:1.8;margin:10px 0 21px}
.report-state-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.report-shell .report-state-summary{display:flex;flex-direction:column;gap:13px;text-align:left;min-width:0;padding:20px 17px;background:var(--state-wash);border:1px solid var(--state-line);border-top:5px solid var(--state-accent);border-radius:16px;color:var(--state-ink);transition:box-shadow .15s,transform .15s;cursor:pointer}
.report-shell .report-state-summary:hover{transform:translateY(-2px);box-shadow:0 5px 16px #182c4810}
.report-shell .report-state-summary.selected{box-shadow:inset 0 0 0 2px var(--state-ink)}
.report-shell .report-state-summary:focus-visible,.report-shell .filter-tabs button:focus-visible{outline:3px solid #174ea6;outline-offset:4px}
.report-state-heading{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:650}
.report-state-heading svg{flex-shrink:0}
.report-state-count{display:flex;align-items:baseline;gap:8px;font-size:12px}
.report-state-count strong{font-size:34px;line-height:1.05;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.report-state-hint{font-size:12px;line-height:1.7}
.report-shell .report-range-note{font-size:12px;color:#596579;line-height:1.9;margin:14px 0 0}
.report-shell .filter-tabs{align-items:center;gap:10px;margin:19px 0}
.report-shell .filter-tabs button{min-height:41px;border-color:#ccd7e5;background:#fff;color:#42546c;font-size:13px;border-radius:10px}
.report-shell .filter-tabs button.active{background:#174ea6;border-color:#174ea6;color:white}
.report-filter-count{font-size:12px;color:#596579;margin-left:auto}
.report-filter-print{display:none}
.report-shell .knowledge-grid{gap:15px;align-items:stretch}
.report-shell .knowledge-card{background:linear-gradient(125deg,var(--state-wash),#fff 72%);border:1px solid var(--state-line);border-left:5px solid var(--state-accent);border-radius:15px;padding:20px;min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.report-shell .report-state-badge{display:inline-flex;align-items:center;gap:6px;background:var(--state-wash);color:var(--state-ink);border:1px solid var(--state-line);font-size:12px;font-weight:600;line-height:1.4;padding:6px 9px;border-radius:8px;white-space:nowrap}
.report-state-badge svg{flex-shrink:0}
.report-shell .knowledge-card h3{font-size:17px;line-height:1.6;color:#202124;margin:13px 0 9px;overflow-wrap:anywhere}
.report-shell .knowledge-card p{font-size:13px;line-height:1.9;color:#4b5565;margin:0 0 17px}
.report-shell .knowledge-card-footer{display:flex;align-items:flex-start;gap:6px;font-size:11px;line-height:1.8;color:#596579;margin-top:auto;padding-top:11px;border-top:1px solid #cbd5e180;width:100%}
.knowledge-card-footer svg{flex-shrink:0;margin-top:3px}
.report-shell .report-state-cell{display:inline-block;min-width:30px;text-align:center;background:var(--state-wash);color:var(--state-ink);border:1px solid var(--state-line);border-radius:7px;padding:3px 7px;font-weight:600}
.learning-state-stats>.card{background:linear-gradient(125deg,var(--state-wash),#fff);border-color:var(--state-line)}
.learning-state-stats>.card:before{width:5px;background:var(--state-accent)}
.learning-state-stats .stat-label{display:flex;align-items:center;gap:7px;color:var(--state-ink);font-weight:600}
.learning-state-stats .stat-number{color:var(--state-ink);font-variant-numeric:tabular-nums}
.learning-state-stats small{color:#596579}
@media(max-width:1050px){.report-state-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.report-shell .report-state-summary{padding:16px 12px;gap:10px}.report-state-heading{font-size:13px;gap:6px}.report-state-count strong{font-size:29px}.report-state-hint{font-size:11px}.report-shell .knowledge-card{padding:17px}.report-shell .knowledge-card h3{font-size:16px}.report-filter-count{margin-left:0;width:100%}}
@media(max-width:600px){.learning-state-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.report-shell .report-state-summary{transition:none}.report-shell .report-state-summary:hover{transform:none}}
@media print{.report-shell{background:#fff;padding:0;border:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.report-state-overview{grid-template-columns:repeat(4,minmax(0,1fr))}.report-shell .report-state-summary{padding:10px;break-inside:avoid;box-shadow:none}.report-shell .knowledge-card{background:#fff;break-inside:avoid}.report-state-summary:hover{transform:none}.report-range-note{color:#333!important}}
@media print{.report-filter-print{display:block;font-size:9pt}}

/* Unified application palette. Legacy --green is the primary BLUE, not a status. */
:root{--ui-blue:#4285f4;--ui-blue-action:#1a73e8;--ui-blue-hover:#185abc;--ui-blue-ink:#174ea6;--ui-blue-wash:#e8f0fe;--ui-green:#34a853;--ui-green-ink:#137333;--ui-green-wash:#e6f4ea;--ui-red:#ea4335;--ui-red-ink:#b3261e;--ui-red-wash:#fce8e6;--ui-yellow:#fbbc04;--ui-yellow-ink:#7a4f00;--ui-yellow-wash:#fef7e0;--ui-text:#202124;--ui-secondary:#5f6368;--ui-muted:#6b7280;--ui-border:#dadce0;--ui-surface:#fff;--ui-canvas:#f8fafd;--green:var(--ui-blue-action);--green-dark:var(--ui-blue-hover);--mint:var(--ui-blue-wash);--yellow:var(--ui-yellow);--coral:var(--ui-red);--ink:var(--ui-text);--muted:var(--ui-secondary);--line:var(--ui-border)}

/* State classes are supplied by safe status enums. Yellow drafts stay yellow. */
.tag.state-mastered{background:var(--ui-green-wash);color:var(--ui-green-ink);border:1px solid #a8dab5}
.tag.state-weak{background:var(--ui-red-wash);color:var(--ui-red-ink);border:1px solid #f1b4ae}
.tag.state-review{background:var(--ui-yellow-wash);color:var(--ui-yellow-ink);border:1px solid #e5c770}
.tag.state-unassessed{background:var(--ui-blue-wash);color:var(--ui-blue-ink);border:1px solid #aecbfa}
.status-mastered{color:var(--ui-green-ink)}.status-weak{color:var(--ui-red-ink)}.status-review{color:var(--ui-yellow-ink)}.status-unassessed{color:var(--ui-blue-ink)}

@media screen{
 /* One outer student column; narrow reading limits belong INSIDE its cards. */
 .role-student .content{width:100%;max-width:960px;min-width:0;padding-inline:32px}
 .role-student #page-content>.page-head,
 .role-student #page-content>.learner-welcome,
 .role-student #page-content>.today-card,
 .role-student #page-content>.self-start-card,
 .role-student #page-content>.latest-evaluation,
 .role-student #page-content>.learner-assignments,
 .role-student #page-content>.learner-path,
 .role-student #page-content>.quiet-notice,
 .role-student #page-content>.account-card,
 .role-student #page-content>.card,
 .role-student #page-content>.report-stats,
 .role-student #page-content>.task-list,
 .role-student #page-content>.evaluation-hero,
 .role-student #page-content>.evaluation-points,
 .role-student #page-content>.footer{width:100%;max-width:none;min-width:0;margin-inline:0}
 .role-student .learner-welcome h1{max-width:24ch}
 .role-student .today-card p{max-width:68ch}
 .role-student .account-card form{max-width:560px}
 .role-student .report-stats>*{min-width:0}

 /* Blue navigation, quiet surfaces and readable secondary text across roles. */
 body{background:var(--ui-canvas);color:var(--ui-text)}
 h1,h2,h3,h4{color:var(--ui-text)}
 a{color:var(--ui-blue-ink)}
 button.primary,.primary{background:var(--ui-blue-action);border-color:var(--ui-blue-action);color:#fff}
 button.primary:hover{background:var(--ui-blue-hover);border-color:var(--ui-blue-hover)}
 .brand-mark{background:var(--ui-blue-action);color:#fff}
 .brand-name{color:var(--ui-text)}.brand-sub,.menu-identity,.identity-chip{color:var(--ui-secondary)}
 .role-nav button.active,.top-menu-panel button:hover{background:var(--ui-blue-wash);color:var(--ui-blue-ink)}
 .coaching-filters button.active,.lesson-stage-tab.active,.lesson-tab.active{background:var(--ui-blue-wash);border-color:#aecbfa;color:var(--ui-blue-ink)}
 .filter-tabs button,.paper-mode-tabs button{background:#fff;border-color:var(--ui-border);color:var(--ui-secondary)}
 .filter-tabs button.active,.paper-mode-tabs button.active{background:var(--ui-blue-action);border-color:var(--ui-blue-action);color:#fff}
 .text-button,.back-link,.header-text-button{color:var(--ui-blue-ink)}
 .muted,.page-head p,.record p,.paper-info,.lesson-stage-count,.manual-note,.unit-pending>p{color:var(--ui-secondary)}
 .eyebrow,.report-head .eyebrow,.report-section .eyebrow{color:#5b6e88}
 .footer{border-color:var(--ui-border);color:var(--ui-secondary)}.footer button{color:var(--ui-blue-ink)}
 .start-rules{background:#f1f5fc;color:#455a76;border-radius:11px}
 .readonly-edition,.quiz-meta{background:#f1f5fc;color:#455a76;border-color:#d8e3f2}
 .option:has(input:checked){background:var(--ui-blue-wash);border-color:var(--ui-blue-action)}
 .option-letter{color:#526b8d}
 .danger{color:var(--ui-red-ink)!important}.inline-error{color:var(--ui-red-ink)}
 #toast{background:#303134;color:#fff}#toast.error{background:var(--ui-red-ink)}
 .tool-number{background:var(--ui-blue-wash);color:#5b7190}
 .tool-card .row{color:#667a94}.tool-card .tool-link{color:var(--ui-blue-ink)}
 .tool-card:hover{border-color:#a9c7f3;box-shadow:0 8px 24px #174ea610}
 .home-step{border-color:#dce5f2}.home-step>span{background:var(--ui-blue-wash);color:var(--ui-blue-ink)}
 .report-stats:not(.learning-state-stats)>.card:before{background:var(--ui-blue)}
 .report-stats small{color:var(--ui-secondary)}
 .coverage-unit li strong.coverage-missing{color:var(--ui-yellow-ink)}

 /* Neutral labels do not claim mastery; explicit state enums above take priority. */
 .tag:not([class*="state-"]){background:var(--ui-blue-wash);color:var(--ui-blue-ink)}
 .tag.yellow:not([class*="state-"]){background:var(--ui-yellow-wash);color:var(--ui-yellow-ink)}
 .tag.red:not([class*="state-"]){background:var(--ui-red-wash);color:var(--ui-red-ink)}
 .tag.gray:not([class*="state-"]){background:#f1f3f4;color:var(--ui-secondary)}
 .notice{background:var(--ui-yellow-wash);border-color:#e5c770;color:var(--ui-yellow-ink)}
 .notice.green{background:var(--ui-blue-wash);border-color:#aecbfa;color:var(--ui-blue-ink)}
 .notice.error{background:var(--ui-red-wash);border-color:#f1b4ae;color:var(--ui-red-ink)}
 .trail-item{background:#fff;border-color:var(--ui-border);color:var(--ui-secondary)}
 .trail-item.pass{background:var(--ui-green-wash);border-color:#a8dab5;color:var(--ui-green-ink)}
 .trail-item.fail{background:var(--ui-red-wash);border-color:#f1b4ae;color:var(--ui-red-ink)}

 /* Photo handling, source metadata and tool chrome; manipulative colors are kept. */
 .upload-zone{background:#f8fafd;border-color:#b9cce8}
 .upload-zone svg,.upload-zone>svg{color:var(--ui-blue-action)}
 .upload-preview{background:#f1f3f4}
 .lesson-step-number{background:var(--ui-blue-wash);color:var(--ui-blue-ink)}
 .lesson-stage-tab,.lesson-stage{border-color:#d8e3f2}
 .concept-visual{background:#f5f8fd;border-color:#d8e3f2}
 .expression{background:var(--ui-blue-wash);color:var(--ui-blue-ink)}
 .unit-capabilities>span{background:#f1f3f4;border-color:var(--ui-border);color:var(--ui-secondary)}
 .unit-capabilities>span.available{background:var(--ui-blue-wash);border-color:#aecbfa;color:var(--ui-blue-ink)}
 .unit-capabilities>span.pending{background:var(--ui-yellow-wash);border-color:#e5c770;color:var(--ui-yellow-ink)}
 .curriculum-point{background:#fbfcff;border-color:#d8e3f2}
 .curriculum-point>strong{color:#304f76}.curriculum-point>code{color:var(--ui-secondary)}
 .source-reference{border-color:#d8e3f2;color:var(--ui-secondary)}
 .source-reference>a{color:var(--ui-blue-ink)}.source-reference>small{color:var(--ui-secondary)}
 .curriculum-sources{background:#f4f7fc;border-color:#d8e3f2}
 .curriculum-sources>summary{color:#455f80}
 .curriculum-unit>footer{border-color:var(--ui-border)}
 .point-source-details>summary{color:#455f80}
 .point-source-details .source-reference{background:#fbfcff}
 .unit-coverage{color:var(--ui-secondary)!important}
 .coaching-table th,.coaching-table td p,.coaching-table td::before{color:var(--ui-secondary)}
 .evaluation-hero>p,.evaluation-rounds small,.evaluation-next>p,.evaluation-points .record p{color:var(--ui-secondary)}
 .paper-header{border-color:#9ebce4}
 .modal.print-preview-modal{background:#f1f5fb}
 .print-preview-toolbar{background:#f8fafd;border-color:#d8e3f2}
 .print-preview-toolbar p{color:var(--ui-secondary)}
 .print-preview-modal iframe{border-color:#ccd8e8;background:#fff}
 .modal-close{color:var(--ui-secondary)}

 /* The sign-in surface shares the product blue rather than the retired ochre. */
 .auth-art{background:linear-gradient(140deg,#edf4ff,#f8fafd);color:var(--ui-text)}
 .auth-art:after{color:#d2e3fc}
 .auth-art h1{color:#234b7e}.auth-art>p,.auth-form>p{color:var(--ui-secondary)}
 .auth-pill{background:#fff;border-color:#b9cdec;color:#3c5f89}
 .auth-foot{color:#69788b}
}
@media screen and (max-width:850px){.role-student .content{padding-inline:24px}}
@media screen and (max-width:540px){.role-student .content{padding-inline:20px}.role-student .learner-welcome h1{max-width:22ch}}

/* First-pass evaluation dialog: isolated from the normal page and print preview. */
.modal.evaluation-dialog{width:100%;max-width:960px;max-height:90vh;max-height:90dvh;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:28px;border:1px solid #d6e2f4;border-radius:26px;background:#f8fafd;box-shadow:0 24px 90px #17365c2b}
.evaluation-dialog>.modal-header{align-items:flex-start;gap:16px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid #dde5ef}
.evaluation-dialog>.modal-header h2{font-size:21px;line-height:1.5;letter-spacing:-.3px;margin:5px 0 0;color:#263b58}
.evaluation-dialog>.modal-header .modal-close{width:44px;height:44px;flex:none;border:1px solid #d8e1ed;border-radius:12px;background:#fff;color:#5f6368}
.evaluation-result{--map-blue:#4285f4;--map-red:#ea4335;--map-yellow:#fbbc04;--map-green:#34a853;width:100%;min-width:0;color:#202124}
.evaluation-result>.evaluation-result-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 20px;padding:0 2px 16px;border-bottom:1px solid #e0e6ef}
.evaluation-result-header h1,.evaluation-result-header h2,.evaluation-result-header h3{font-size:24px;line-height:1.45;letter-spacing:-.5px;text-align:left;margin:4px 0;color:#243b59;overflow-wrap:anywhere}
.evaluation-result-header p{font-size:14px;line-height:1.8;color:#5f6368;margin:5px 0 0}
.evaluation-result-header strong{font-weight:650;color:#202124}
.evaluation-result-header .eyebrow{color:#174ea6;letter-spacing:1px}
.evaluation-result .evaluation-hero{position:relative;overflow:hidden;padding:28px;border:1px solid #d5e3f7;border-radius:20px;background:linear-gradient(135deg,#f0f6ff,#fff 76%);box-shadow:0 3px 14px #21477204}
.evaluation-result .evaluation-hero:before{content:'';position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#4285f4 0 25%,#ea4335 25% 50%,#fbbc04 50% 75%,#34a853 75% 100%)}
.evaluation-result .evaluation-hero h2{font-size:28px;line-height:1.45;letter-spacing:-.6px;margin:12px 0 16px;color:#243c60}
.evaluation-result .evaluation-hero>p{max-width:70ch;font-size:16px;line-height:1.85;color:#5f6368}
.evaluation-result .evaluation-hero>.tiny{font-size:13px;line-height:1.8}
.evaluation-result .evaluation-next{background:#e8f0fe;border-color:#c5d7f7;padding:18px 20px}
.evaluation-result .evaluation-next>strong{font-size:24px;color:#174ea6}
.evaluation-result .report-tone-mastered{--state-accent:#34a853;--state-ink:#137333;--state-wash:#e6f4ea;--state-line:#a8dab5}
.evaluation-result .report-tone-weak{--state-accent:#ea4335;--state-ink:#b3261e;--state-wash:#fce8e6;--state-line:#f1b4ae}
.evaluation-result .report-tone-review{--state-accent:#fbbc04;--state-ink:#7a4f00;--state-wash:#fef7e0;--state-line:#e5c770}
.evaluation-result .report-tone-unassessed{--state-accent:#4285f4;--state-ink:#174ea6;--state-wash:#e8f0fe;--state-line:#aecbfa}
.evaluation-result .learning-state-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch;margin:20px 0}
.evaluation-result .learning-state-stats>.card{position:relative;min-width:0;overflow:hidden;margin:0;padding:20px 17px;border:1px solid var(--state-line);border-radius:15px;background:linear-gradient(125deg,var(--state-wash),#fff 90%);box-shadow:none}
.evaluation-result .learning-state-stats>.card:before{content:'';position:absolute;inset:0 auto 0 0;width:4px;background:var(--state-accent)}
.evaluation-result .learning-state-stats .stat-label{min-height:24px;font-size:13px;line-height:1.7;color:var(--state-ink)}
.evaluation-result .learning-state-stats .stat-label svg{flex-shrink:0}
.evaluation-result .learning-state-stats .stat-number{font-size:32px;line-height:1.25;color:var(--state-ink);font-variant-numeric:tabular-nums}
.evaluation-result .learning-state-stats small{font-size:11px;line-height:1.7;color:#596579}
.evaluation-result .evaluation-rounds{gap:10px}
.evaluation-result .evaluation-rounds article{gap:8px 16px;flex-wrap:wrap;padding:14px 16px;background:#fff;border:1px solid #e1e7f0;border-radius:12px}
.evaluation-result .evaluation-rounds strong{font-size:15px;line-height:1.7;color:#344968}
.evaluation-result .evaluation-rounds span{font-size:14px;line-height:1.7;color:#5f6368}
.evaluation-result .evaluation-rounds small{font-size:12px;line-height:1.7;color:#68758a}
.evaluation-result-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid #dce5f1}
.evaluation-result-actions.evaluation-result-toolbar{margin-top:0;margin-bottom:20px;padding-top:0;padding-bottom:18px;border-top:0;border-bottom:1px solid #dde5ef}
.evaluation-result-toolbar>.tag{justify-self:start}
.evaluation-print-button.primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 21px;border:1px solid #1a73e8;border-radius:12px;background:#1a73e8;color:#fff;font-size:16px;font-weight:650;line-height:1.5;box-shadow:0 3px 9px #1a73e81a}
.evaluation-print-button.primary:hover{background:#185abc;border-color:#185abc;color:#fff}
.evaluation-print-button.primary:focus-visible{outline:3px solid #174ea6;outline-offset:4px}
.evaluation-print-button svg{width:19px;height:19px;flex-shrink:0;stroke:currentColor}
.evaluation-print-report{width:100%;max-width:180mm;margin:0 auto;background:#fff;color:#202124}
.evaluation-print-report .evaluation-result-actions{display:none}

/* Decorative, single-run paper ribbons. The layer never receives interaction. */
.assessment-confetti{position:fixed;inset:0;z-index:10000;overflow:hidden;pointer-events:none;contain:layout paint}
.assessment-confetti .confetti-piece{position:absolute;left:var(--confetti-x,50%);top:-32px;width:8px;height:14px;border-radius:2px;background:var(--confetti-color,#4285f4);opacity:0;pointer-events:none;transform:translate3d(0,-3vh,0) rotate(var(--confetti-rotation,0deg));animation:assessment-confetti-fall var(--confetti-duration,2.8s) cubic-bezier(.2,.65,.35,1) var(--confetti-delay,0s) 1 both;will-change:transform,opacity}
.assessment-confetti .confetti-piece:nth-child(3n){width:6px;height:12px;border-radius:3px}
.assessment-confetti .confetti-piece:nth-child(4n){width:5px;height:18px}
@keyframes assessment-confetti-fall{0%{opacity:0;transform:translate3d(0,-3vh,0) rotate(var(--confetti-rotation,0deg))}8%{opacity:1}84%{opacity:1}100%{opacity:0;transform:translate3d(var(--confetti-drift,0px),calc(100vh + 64px),0) rotate(calc(var(--confetti-rotation,0deg) + 540deg))}}

@media(max-width:640px){.modal.evaluation-dialog{max-width:100%;padding:18px;border-radius:20px}.evaluation-dialog>.modal-header{gap:12px;margin-bottom:17px;padding-bottom:13px}.evaluation-dialog>.modal-header h2{font-size:18px}.evaluation-result>.evaluation-result-header{gap:9px;margin-bottom:16px;padding-bottom:14px}.evaluation-result-header h1,.evaluation-result-header h2,.evaluation-result-header h3{font-size:21px}.evaluation-result .evaluation-hero{padding:23px 20px;border-radius:16px}.evaluation-result .evaluation-hero h2{font-size:24px;letter-spacing:-.4px}.evaluation-result .evaluation-hero>p{font-size:15px}.evaluation-result .evaluation-hero>.tiny{font-size:12px}.evaluation-result .learning-state-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.evaluation-result .learning-state-stats>.card{padding:17px 14px}.evaluation-result .learning-state-stats .stat-label{font-size:12px}.evaluation-result .learning-state-stats .stat-number{font-size:29px}.evaluation-result .evaluation-rounds article{padding:12px 13px}.evaluation-result-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px;padding-top:17px}.evaluation-result-actions>button,.evaluation-result-actions>.primary,.evaluation-result-actions>.secondary{width:100%;min-height:46px}.evaluation-print-report{max-width:none}}
@media(prefers-reduced-motion:reduce){.assessment-confetti{display:none!important}.assessment-confetti .confetti-piece{animation:none!important;will-change:auto}}
@media print{.assessment-confetti,.assessment-confetti *{display:none!important;animation:none!important}.evaluation-result-actions,.evaluation-print-button{display:none!important}.evaluation-print-report{width:100%;max-width:none;margin:0;padding:0;background:#fff;color:#202124}.evaluation-print-report .evaluation-result{width:100%;max-width:none;margin:0;padding:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.evaluation-print-report .evaluation-result-header{margin:0 0 14px;padding:0 0 12px;break-inside:avoid}.evaluation-print-report .evaluation-result-header h1,.evaluation-print-report .evaluation-result-header h2,.evaluation-print-report .evaluation-result-header h3{font-size:18pt;line-height:1.45;text-align:left}.evaluation-print-report .evaluation-hero{padding:17px;border-radius:10px;border-color:#c7d5e9;background:#fff;box-shadow:none;break-inside:avoid}.evaluation-print-report .evaluation-hero h2{font-size:17pt;margin:9px 0 12px}.evaluation-print-report .evaluation-hero>p{font-size:10pt;line-height:1.8}.evaluation-print-report .evaluation-hero>.tiny{font-size:9pt}.evaluation-print-report .evaluation-next{padding:12px 15px}.evaluation-print-report .evaluation-next>strong{font-size:16pt}.evaluation-print-report .learning-state-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0}.evaluation-print-report .learning-state-stats>.card{padding:12px 10px;border:1px solid var(--state-line);border-radius:8px;background:var(--state-wash);box-shadow:none;break-inside:avoid}.evaluation-print-report .learning-state-stats .stat-label{font-size:9pt;min-height:0}.evaluation-print-report .learning-state-stats .stat-number{font-size:23pt}.evaluation-print-report .learning-state-stats small{font-size:8pt}.evaluation-print-report .evaluation-rounds{gap:8px}.evaluation-print-report .evaluation-rounds article{padding:9px 12px;border:1px solid #d9e0eb;border-radius:7px;background:#fff;break-inside:avoid}.evaluation-print-report .evaluation-rounds strong{font-size:10pt}.evaluation-print-report .evaluation-rounds span{font-size:9pt}.evaluation-print-report .evaluation-rounds small{font-size:8pt}}

/* The printable A4 evaluation uses one shared layout in preview AND on paper.
   Compact short summaries, but never force an arbitrary-length report onto one page. */
.print-document .evaluation-print-report{width:100%;max-width:180mm;margin:0 auto;padding:0;background:#fff;color:#202124}
.print-document .evaluation-print-report .evaluation-result{width:100%;max-width:none;margin:0;padding:0;overflow:visible}
.print-document .evaluation-print-report .evaluation-result-header{display:block;margin:0 0 10px;padding:0 0 9px;break-inside:avoid}
.print-document .evaluation-print-report .evaluation-result-header .eyebrow{font-size:8.5pt;line-height:1.35;letter-spacing:.6px}
.print-document .evaluation-print-report .evaluation-result-header h1,.print-document .evaluation-print-report .evaluation-result-header h2,.print-document .evaluation-print-report .evaluation-result-header h3{font-size:16pt;line-height:1.35;text-align:left;margin:3px 0 5px}
.print-document .evaluation-print-report .evaluation-result-header p{font-size:9.5pt;line-height:1.5;margin:3px 0 0}
.print-document .evaluation-print-report .evaluation-hero{padding:13px 16px;border:1px solid #c7d5e9;border-radius:10px;background:#fff;box-shadow:none;break-inside:avoid}
.print-document .evaluation-print-report .evaluation-hero>.tag{font-size:8.5pt;line-height:1.4;padding:3px 7px}
.print-document .evaluation-print-report .evaluation-hero>p{max-width:none;font-size:9.5pt;line-height:1.6;margin:5px 0}
.print-document .evaluation-print-report .evaluation-hero>.task-status{font-size:9pt;line-height:1.4;margin-top:7px!important;margin-bottom:3px}
.print-document .evaluation-print-report .evaluation-hero h2{font-size:15pt;line-height:1.35;margin:5px 0 8px}
.print-document .evaluation-print-report .evaluation-hero>.tiny{font-size:9pt;line-height:1.5}
.print-document .evaluation-print-report .evaluation-next{margin-top:10px;padding:9px 12px;border-radius:9px}
.print-document .evaluation-print-report .evaluation-next>span{font-size:8.5pt;line-height:1.4}
.print-document .evaluation-print-report .evaluation-next>strong{font-size:14pt;line-height:1.35;margin:4px 0}
.print-document .evaluation-print-report .evaluation-next>p{font-size:9.5pt;line-height:1.5;margin:0}
.print-document .evaluation-print-report .learning-state-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 12px;margin-top:10px!important;break-inside:avoid}
.print-document .evaluation-print-report .learning-state-stats>.card{padding:10px;border:1px solid var(--state-line);border-radius:8px;background:var(--state-wash);box-shadow:none;break-inside:avoid}
.print-document .evaluation-print-report .learning-state-stats .stat-label{min-height:0;font-size:9pt;line-height:1.35;margin:0 0 4px;gap:5px}
.print-document .evaluation-print-report .learning-state-stats .stat-label svg{width:11pt;height:11pt}
.print-document .evaluation-print-report .learning-state-stats .stat-number{font-size:22pt;line-height:1.15;margin:0}
.print-document .evaluation-print-report .learning-state-stats small{font-size:8.5pt;line-height:1.35;margin-top:4px}
.print-document .evaluation-print-report .evaluation-result>.card{padding:11px 12px;margin-top:10px!important;margin-bottom:10px;border:1px solid #d9e0eb;border-radius:9px;box-shadow:none;break-inside:auto}
.print-document .evaluation-print-report .evaluation-result>.card>h2{font-size:12pt;line-height:1.4;margin:0 0 9px;break-after:avoid}
.print-document .evaluation-print-report .evaluation-rounds{display:grid;gap:6px;break-inside:auto}
.print-document .evaluation-print-report .evaluation-rounds article{display:grid;grid-template-columns:minmax(0,1fr) minmax(135pt,auto) 74pt;align-items:center;gap:8pt;padding:8px 10px;border:1px solid #d9e0eb;border-radius:7px;background:#fff;break-inside:avoid;page-break-inside:avoid}
.print-document .evaluation-print-report .evaluation-rounds strong{min-width:0;font-size:9.5pt;line-height:1.45;overflow-wrap:anywhere}
.print-document .evaluation-print-report .evaluation-rounds span{width:auto;font-size:9pt;line-height:1.45;text-align:right;white-space:nowrap}
.print-document .evaluation-print-report .evaluation-rounds small{width:auto;font-size:8.5pt;line-height:1.45;text-align:right;white-space:nowrap}
.print-document .evaluation-print-report .evaluation-steps{margin:5px 0 0;padding-left:19px;break-inside:auto}
.print-document .evaluation-print-report .evaluation-steps li{font-size:9.5pt;line-height:1.55;padding:2px 0;break-inside:avoid}
.print-document .evaluation-print-report .scope-footnote{font-size:8.5pt;line-height:1.45;margin:8px 0}
