*{box-sizing:border-box}body{color:#233d46;background:#f6f8f8;margin:0;font-family:Arial,Microsoft YaHei,sans-serif}button,input,select{font:inherit}button{cursor:pointer;color:#31545d;background:#fff;border:1px solid #dae6e5;border-radius:9px;padding:10px 15px;transition:all .15s}button:hover{background:#f0faf7;border-color:#23958d}button:disabled{opacity:.5;cursor:wait}button.primary{color:#fff;background:#168b80;border-color:#168b80;box-shadow:0 4px 10px #168b8015}button.primary:hover{background:#11766e}h1,h2,h3,p{margin-top:0}input,select{color:#233d46;background:#fbfdfd;border:1px solid #d8e2e2;border-radius:9px;width:100%;padding:13px}input:focus,select:focus{outline-offset:1px;outline:2px solid #80cfc3}label{font-size:14px;font-weight:600;line-height:1.7;display:block}label input,label select{margin-top:6px;margin-bottom:17px;display:block}form>.primary{width:100%;margin-top:10px}form p{color:#798b90;font-size:13px;line-height:1.7}.eyebrow{letter-spacing:2px;color:#258e83;font-size:12px;font-weight:700}.login-shell{background:#fff;grid-template-columns:57% 43%;min-height:100vh;display:grid}.brand-story{background:radial-gradient(at 85% 15%,#dceecb,#0000 45%),radial-gradient(at 15% 85%,#dceee9,#0000 60%),#eaf5ee;flex-direction:column;justify-content:space-between;padding:55px 7vw;display:flex;position:relative;overflow:hidden}.brand-story:after{content:"✧";color:#fff8;font-size:330px;position:absolute;bottom:15%;right:-70px;transform:rotate(20deg)}.brand-top{align-items:center;gap:15px;font-size:23px;font-weight:700;display:flex}.brand-top img{object-fit:cover;border-radius:18px;width:70px;height:70px}.subline{letter-spacing:2px;color:#5a8178;margin-top:6px;font-size:9px;display:block}.story-copy{z-index:1;margin:65px 0;position:relative}.story-copy h1{letter-spacing:-2px;color:#234f46;margin:24px 0;font-size:clamp(32px,3.7vw,60px);line-height:1.45}.story-copy p{color:#628279;font-size:17px;line-height:1.9}.pill-row{gap:12px;margin-top:33px;display:flex}.pill-row span{color:#477a6d;background:#fffa;border:1px solid #fff;border-radius:20px;padding:8px 15px;font-size:13px}.story-bottom{color:#6b8c83;font-size:13px}.story-bottom b{color:#276a5b;margin-right:4px;font-size:26px}.login-panel{align-self:center;padding:60px max(35px,6vw)}.login-panel h2{margin:20px 0 10px;font-size:31px}.login-panel p{color:#85959a;margin-bottom:35px}.login-panel small{color:#98a5a9;margin-top:20px;font-size:12px;line-height:1.8;display:block}.login-panel footer{color:#abb5b7;margin-top:65px;font-size:11px}.error{color:#b65d4d;white-space:pre-wrap;margin:12px 0;font-size:14px;line-height:1.6}.workspace{min-height:100vh;display:flex}.workspace aside{background:#fff;border-right:1px solid #e7eeee;flex-direction:column;flex-shrink:0;width:245px;height:100vh;padding:30px 21px;display:flex;position:fixed}.side-brand{align-items:center;gap:9px;display:flex}.side-brand img{object-fit:cover;border-radius:12px;width:45px;height:45px}.side-brand strong{font-size:17px}.side-brand small{color:#9ca8ab;margin-top:4px;font-size:11px;font-weight:400;display:block}.role-label{color:#39877b;background:#e9f7ef;border-radius:5px;align-self:flex-start;margin:30px 10px 20px;padding:5px 9px;font-size:12px;display:inline-block}nav{gap:9px;display:grid}nav button{text-align:left;color:#7e9297;background:0 0;border:0;padding:14px 18px;font-weight:700}nav button span{margin-right:12px;font-size:20px}nav button.selected{color:#168b80;background:#e9f6f1}.side-bottom{border-top:1px solid #edf0ef;margin-top:auto;padding:25px 12px 0}.side-bottom small{color:#93a3a8;margin:6px 0 15px;display:block}.work-main{width:calc(100% - 245px);margin-left:245px;padding:0 42px 30px}.work-main header{color:#8a9b9e;border-bottom:1px solid #e5ebea;justify-content:space-between;align-items:center;height:85px;font-size:13px;display:flex}.work-main header button{background:0 0;border:0}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin:37px 0 22px;display:flex}.page-heading h1{letter-spacing:-.5px;margin:12px 0;font-size:29px}.page-heading p{color:#8a9b9e;margin:0;font-size:14px;line-height:1.7}.overview{grid-template-columns:repeat(4,1fr);gap:18px;margin:25px 0;display:grid}.overview article{background:#fff;border:1px solid #e8eeee;border-radius:15px;padding:23px}.overview article>span{color:#8b9fa3;font-size:12px;display:block}.overview strong{margin-top:15px;font-size:34px;font-weight:600;display:block}.overview small{color:#8b9fa3;margin-left:8px;font-size:12px;font-weight:400}.overview .overview-tip{background:#e9f4ee;border-color:#e1efe6;flex-direction:column;justify-content:center;display:flex}.overview-tip b{margin:14px 0 9px;font-size:15px}.overview-tip small{margin:0}.surface{background:#fff;border:1px solid #e7eeed;border-radius:16px;padding:24px;overflow:auto}.surface-head{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.surface h2{margin:5px 0 20px;font-size:19px}.surface-head h2{margin:0}.surface-head small{color:#97a9ab;margin-left:10px;font-size:12px}.surface-head input{width:230px;padding:10px;font-size:13px}.surface table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:13px}.surface th{color:#8d9da2;text-align:left;background:#f7f9f9;padding:15px 12px;font-size:12px;font-weight:500}.surface td{border-bottom:1px solid #f0f3f2;padding:19px 12px}.surface td small{color:#9babae;margin-top:8px;font-size:11px;display:block}.avatar{color:#4d9b87;background:#e9f4f0;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;margin-right:12px;font-size:12px;display:inline-flex}.row-actions{gap:8px;display:flex}.surface button{padding:8px 10px;font-size:12px}.badge{color:#b99752;background:#fff2d8;border-radius:6px;padding:6px 10px;font-size:11px}.empty{text-align:center;color:#91a6a8;padding:60px 20px;font-size:14px}.work-main footer{color:#9cafb0;text-align:center;padding:30px 0 0;font-size:11px}.log-target{text-overflow:ellipsis;max-width:260px;font-size:11px;overflow:hidden}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:20;background:#15352e66;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:20px;width:520px;max-height:90vh;padding:36px;position:relative;overflow:auto;box-shadow:0 25px 100px #133b3a44}.modal.wide{width:850px}.modal h2{margin:15px 0 22px;font-size:25px}.modal>p{color:#8d9fa1;font-size:14px;line-height:1.8}.close{background:0 0;border:0;padding:2px 9px;font-size:25px;position:absolute;top:15px;right:17px}.checkboxes{max-height:180px;padding:10px 0;overflow:auto}.checkboxes label{margin:7px 0;font-size:13px;font-weight:400}.checkboxes input{width:auto;margin:0 9px 0 0;display:inline}.track-options{grid-template-columns:1fr 1fr;gap:13px;margin:25px 0;display:grid}.track-options button{text-align:left;padding:24px 15px}.track-options .chosen{background:#eff9f3;border:2px solid #198d80}.track-options b{margin-bottom:13px;font-size:18px;display:block}.track-options span{color:#7e9894;font-size:12px;line-height:1.9}.lesson-host{flex-direction:column;height:100vh;display:flex}.lesson-bar{background:#e9f4ed;border-bottom:1px solid #d9e8df;flex-wrap:wrap;align-items:center;gap:18px;padding:12px 25px;font-size:13px;display:flex}.lesson-bar span{color:#6a8a80}.lesson-bar button{padding:7px 12px;font-size:12px}.lesson-host iframe{background:#fafbf9;border:0;flex:1;width:100%}.report-numbers{background:#edf7f0;border-radius:13px;grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0;padding:25px;display:grid}.report-numbers div{color:#689487;font-size:12px}.report-numbers b{color:#288373;margin-bottom:8px;font-size:32px;display:block}.student-report>p{color:#8a9b9c;font-size:13px;line-height:1.8}.student-report h3{margin-top:28px;font-size:17px}.weak{border-bottom:1px solid #edf1ef;justify-content:space-between;padding:13px 0;font-size:13px;display:flex}.weak span{color:#bc8d51}.student-report details{border-bottom:1px solid #edf1ef;padding:14px 0;font-size:13px}.student-report details p{color:#74908d;line-height:1.8}.hint{background:#faf6e9;margin:24px 0;padding:12px}.student-report summary{cursor:pointer}@media (width<=1050px){.workspace aside{width:190px;padding:25px 13px}.work-main{width:calc(100% - 190px);margin-left:190px;padding:0 20px 25px}.side-brand strong{font-size:14px}.overview{gap:9px}.overview article{padding:15px}.page-heading h1{font-size:25px}}@media (width<=700px){.login-shell{grid-template-columns:1fr}.brand-story{padding:25px}.story-copy{margin:30px 0}.story-copy h1{font-size:32px}.story-bottom{display:none}.login-panel{padding:35px}.workspace aside{width:100%;height:auto;position:static}.workspace{display:block}.side-brand{display:none}nav{flex-wrap:wrap;display:flex}.role-label{margin:0 0 10px}.side-bottom{align-items:center;gap:15px;margin:10px 0 0;padding:10px;display:flex}.side-bottom small{margin:0}.work-main{width:100%;margin:0;padding:0 15px}.overview{grid-template-columns:1fr 1fr}.page-heading{align-items:start}.page-heading h1{font-size:23px}.page-heading>.primary{font-size:12px}.surface{padding:15px}.track-options{grid-template-columns:1fr}.modal{padding:26px}}@media print{.workspace>aside,.work-main,.modal .close,.student-report button{display:none!important}.modal-backdrop{background:#fff;padding:0;display:block;position:static}.modal{max-height:none;box-shadow:none;border-radius:0;padding:0;overflow:visible;width:100%!important}.student-report details{break-inside:avoid}.student-report details>*{display:block}.report-numbers{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.duration-options{flex-wrap:wrap;gap:10px;margin:15px 0 25px;display:flex}.duration-options button.chosen{color:#126d63;background:#e8f6ed;border:2px solid #168b80}.timer-display{align-items:center;gap:14px;margin-left:auto;display:flex}.timer-display strong{font-variant-numeric:tabular-nums;color:#195d50;letter-spacing:2px;font-size:34px;line-height:1}.timer-display small{color:#72988a;font-size:11px}.lesson-bar{z-index:3;flex-shrink:0;position:relative}.countdown-track{background:#e3ece5;flex-shrink:0;height:7px}.countdown-track i{background:#57b09a;height:100%;transition:width .4s linear;display:block}.countdown-track.near-end i{background:#f1b44c}.volume-control{white-space:nowrap;align-items:center;gap:8px;font-size:11px;display:flex}.volume-control input{accent-color:#248f7d;width:90px;margin:0;padding:0}.warning-popup{z-index:10;background:#fff9df;border:1px solid #e5cc7e;border-radius:18px;padding:25px;position:fixed;top:105px;right:25px;box-shadow:0 12px 45px #4d653933}.warning-popup>b{color:#b47c2d;font-size:25px}.warning-popup p{color:#8f855e;margin:14px 0;font-size:13px}.legacy-clock{max-width:600px;margin:90px auto;padding:30px;line-height:1.8}.end-feedback{text-align:center;border-radius:16px;margin-bottom:28px;padding:25px}.end-feedback.reward{color:#9c7624;background:#fff3cf}.end-feedback.encourage{color:#3b8b74;background:#e8f6ed}.end-feedback>span{letter-spacing:10px;font-size:34px;display:block}.end-feedback h2{margin:16px 0;font-size:24px}.end-feedback p{margin:0;font-size:13px;line-height:1.8}.review-card{border-bottom:1px solid #edf1ef;padding:15px 0;font-size:14px}.review-card p{color:#7c9290;font-size:13px;line-height:1.9}.student-report .hint{line-height:1.8}.author-tabs{flex-wrap:wrap;gap:10px;margin:0 0 25px;display:flex}.authoring>p{color:#8b9e9b;font-size:13px;line-height:1.9}.authoring textarea{font:inherit;resize:vertical;color:#35534e;background:#fbfdfd;border:1px solid #d8e2e2;border-radius:9px;width:100%;margin:6px 0 18px;padding:12px;line-height:1.7}.question-editor{border:1px solid #e3eee8;border-radius:12px;margin:18px 0;padding:20px}.choice-editor{grid-template-columns:1fr 1fr;gap:15px;display:grid}.authoring details{border:1px solid #e4eee8;border-radius:10px;margin:12px 0;padding:15px}.authoring summary{cursor:pointer;font-size:14px;line-height:1.8}.review-check{align-items:center;gap:12px;margin:25px 0;display:flex}.review-check input{width:auto;margin:0}.question-pool{max-height:440px;margin:20px 0;overflow:auto}.question-pool>label{border-bottom:1px solid #e9f0ec;align-items:center;gap:12px;padding:15px;font-size:13px;font-weight:400;display:flex}.question-pool input{width:auto;margin:0}.question-pool span{flex:1}.authoring hr{border:0;border-top:1px solid #e4ece7;margin:35px 0}.lesson-bar .error{margin:0}.dialog-actions{justify-content:flex-end;gap:12px;margin-top:25px;display:flex}.student-report>p{overflow-wrap:anywhere}@media (width<=900px){.timer-display{order:1;margin:0}.volume-control{order:2}.lesson-bar{gap:12px}.timer-display small{display:none}.choice-editor{grid-template-columns:1fr}.timer-display strong{font-size:28px}}button.back-large,.work-main header button.back-large{color:#246f61;background:#fff;border:1px solid #b9d6ca;border-radius:12px;min-width:164px;min-height:52px;padding:12px 22px;font-size:17px;font-weight:700}.modal-back{margin-bottom:22px}.lesson-preparation{background:radial-gradient(circle at 80% 25%,#dbeacb,#0000 35%),#edf5ef;min-height:100vh;padding:35px 5vw}.lesson-preparation section{background:#ffffffd9;border:1px solid #fff;border-radius:28px;max-width:780px;margin:10vh auto;padding:55px;box-shadow:0 25px 80px #295b3b0d}.lesson-preparation h1{margin:20px 0;font-size:34px;line-height:1.5}.lesson-preparation p{color:#71897e;line-height:1.8}.lesson-preparation .duration-options{grid-template-columns:repeat(4,1fr);gap:15px;margin:35px 0;display:grid}.lesson-preparation .duration-options button{border-radius:18px;padding:26px 10px}.lesson-preparation .duration-options b{margin-bottom:8px;font-size:36px;display:block}.lesson-preparation .primary{width:100%;min-height:54px;font-size:18px}.countdown-track{height:12px}.timer-display small{font-size:13px}.lesson-bar button.primary{min-height:45px;font-size:15px}.operator-log{border:1px solid #e3ede7;border-radius:12px;margin:18px 0;overflow:auto}.operator-log summary{cursor:pointer;background:#f0f7f1;justify-content:space-between;padding:20px;font-size:16px;display:flex}.operator-log summary span{color:#729184;font-size:13px}.end-feedback{text-align:left;grid-template-columns:180px 1fr;column-gap:20px;min-height:240px;padding:28px;display:grid;position:relative;overflow:hidden}.end-feedback h2{align-self:end;margin:0 0 15px}.end-feedback>p{grid-column:2}.feedback-art{grid-row:1/3;align-self:center;min-width:0;position:relative}.feedback-art img{object-fit:contain;z-index:1;filter:drop-shadow(0 10px 15px #49795018);width:180px;height:210px;position:relative}.fireworks{pointer-events:none;position:absolute;inset:-30px -500px -20px 0}.fireworks i{color:#e3a529;border-radius:50%;width:8px;height:8px;animation:2.5s ease-out infinite celebrate;position:absolute;top:30%;box-shadow:0 -48px,34px -34px,48px 0,34px 34px,0 48px,-34px 34px,-48px 0,-34px -34px}.fireworks i:nth-child(2n){color:#65b8aa;top:65%}@keyframes celebrate{0%{opacity:0;transform:scale(.05)}20%{opacity:1}85%,to{opacity:0;transform:scale(1.3)}}.download-area{background:#f0f7f2;border:1px solid #cce2d4;border-radius:15px;flex-wrap:wrap;gap:14px;margin:25px 0;padding:25px;display:flex}.download-area>div,.download-area>small{width:100%}.download-area h3{margin:0 0 10px}.download-area p,.download-area small{color:#739283;font-size:12px;line-height:1.8}.download-area button{min-height:50px;font-size:15px}.ai-status{color:#90743b;background:#fff7df;border-radius:12px;padding:15px;font-size:13px;line-height:1.8}.scan-drop{background:#f1f8f2;border:2px dashed #b6d9c8;border-radius:18px;margin:24px 0;padding:35px;display:block}.scan-drop input{background:#fff;margin-top:16px}.scan-step{letter-spacing:1px;color:#45917d;font-size:12px}.scan-preview{border:1px solid #deebe3;border-radius:14px;margin:18px 0;padding:20px;line-height:1.9}.scan-preview h3{margin:0 0 15px}.scan-preview ol{padding-left:25px}.scan-preview .answer-key{color:#1b8b75}.scan-preview .needs-review{color:#ac7539}.scan-preview details{border:0;margin:0;padding:10px 0}.review-check input{min-width:20px;min-height:20px}@media (prefers-reduced-motion:reduce){.fireworks i{opacity:.5;animation:none}}@media (width<=700px){.lesson-preparation section{margin:40px auto;padding:25px}.lesson-preparation .duration-options{grid-template-columns:1fr 1fr}.end-feedback{text-align:center;display:block}.feedback-art img{height:160px}.work-main header{flex-wrap:wrap;gap:10px;height:auto;padding:15px 0}}.feedback-sound{flex-wrap:wrap;align-items:center;gap:12px;margin:-12px 0 28px;display:flex}.feedback-sound button{font-size:12px}.feedback-sound .volume-control input{width:130px}.download-button{color:#fff;background:#168b80;border:1px solid #168b80;border-radius:9px;justify-content:center;align-items:center;min-height:50px;padding:10px 18px;font-size:15px;text-decoration:none;display:inline-flex}.download-button:hover{background:#11766e}.download-button:focus-visible{outline-offset:3px;outline:3px solid #7ccbb4}.operation-notice{color:#197361;min-height:22px;font-size:14px}.log-year{border-left:2px solid #dbebe6;margin:12px 0 12px 18px;padding-left:16px}.log-month{margin:10px 0 10px 12px}.log-year>summary,.log-month>summary{cursor:pointer;color:#35685c;padding:12px 8px;font-weight:650}button[aria-busy=true]{cursor:progress}.download-area button{min-height:52px}.download-area small{grid-column:1/-1;display:block}.distribution-success{color:#195e4b;background:#eefaf3;border:2px solid #71bca1;border-radius:18px;margin:20px 0;padding:24px}.distribution-success h3{margin:0 0 12px;font-size:24px}.distribution-success button{margin-top:12px}.reinforce-lessons{border:1px solid #d6e5de;border-radius:12px;max-height:260px;margin:18px 0;padding:12px;overflow:auto}.reinforce-lessons label{border-bottom:1px solid #e3ece7;align-items:start;gap:12px;padding:12px;display:flex}.reinforce-lessons input[type=checkbox],.reinforcement input[type=checkbox]{flex-shrink:0;width:22px;height:22px;margin:3px 10px 3px 0}.reinforce-lessons small{margin-top:8px;display:block}.reinforce-sources{max-height:220px;margin:15px 0;overflow:auto}.reinforce-sources details{border-bottom:1px solid #d9e5df;padding:12px}.reinforce-controls{flex-wrap:wrap;align-items:end;gap:15px;display:flex}.reinforcement .review-card h4{white-space:pre-wrap}.student-report .weak{flex-wrap:wrap;gap:12px}
