:root{--green:#2e6654;--ink:#293f37;--muted:#6c7c70;--paper:#fffefa;--line:#dfe5d9;--purple:#79648e}
body{background:#f6f7f1;color:var(--ink)}body,button,input,select,textarea{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans CJK SC","Microsoft YaHei",sans-serif;letter-spacing:0}button,a,label,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}main{max-width:1260px;padding:24px 32px 48px}.topbar{background:#fffefa;border-bottom:1px solid #e5e9df;box-shadow:none;padding:0 max(24px,calc((100vw - 1196px)/2));height:76px}.brand-label{color:#74816d}.user-tools{gap:4px}.topbar .text-button{min-height:44px}.student-nav{display:flex;gap:8px;padding:8px;background:#ebeFE6;border-radius:19px;max-width:600px;margin:0 0 32px}.student-nav button{flex:1;border:0;border-radius:13px;padding:12px 14px;background:transparent;color:#68796c;display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;min-height:48px;white-space:nowrap}.student-nav button>span{font-size:22px;line-height:1}.student-nav button.active{background:#fffefa;color:#2e6654;box-shadow:0 2px 7px #314b3910;font-weight:650}.student-heading{margin:8px 0 28px}.student-heading h1{font-size:34px;letter-spacing:-.7px;margin:8px 0 10px;line-height:1.4}.student-heading p{font-size:15px;color:#71806f;line-height:1.8;margin:0}.eyebrow{letter-spacing:2px;font-size:11px;color:#7a8c70}.today-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:22px;align-items:stretch}.student-card,.growth-card{padding:28px;border:1px solid #e1e7da;border-radius:24px;background:#fffefa;min-width:0}.student-card h2{font-size:20px;line-height:1.5;margin:0 0 12px;font-weight:650}.student-card p{line-height:1.85}.card-kicker{display:block;font-size:12px;color:#64765d;font-weight:600;margin-bottom:18px}.growth-card{background:#e7eedf;border:none;position:relative;overflow:hidden;margin:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:20px;min-height:248px}.growth-card>div{position:relative;z-index:1;max-width:85%}.growth-card .growth-name{gap:8px 16px;margin:16px 0 10px;display:block}.growth-card h2{font-size:28px;font-weight:700}.growth-card .growth-stars{display:block;font-size:19px;margin-top:8px}.growth-card .growth-state{font-size:12px;color:#786738}.growth-card p{line-height:1.75;max-width:390px}.growth-card a{font-size:13px;gap:12px;text-decoration:none;position:relative;z-index:1}.realm-decoration{position:absolute;right:20px;top:40px;font-size:100px;line-height:1;color:#b8a56a;opacity:.65;transform:rotate(12deg)}.next-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:#fcfcf5}.next-card h2{font-size:24px;margin:0 0 8px}.next-card p{font-size:14px;color:#6a7b6a;margin:0 0 20px}.next-card button{margin-top:auto}.primary,.secondary{border-radius:13px;min-height:48px}.soft-tag{font-size:11px;background:#edf2e6;color:#687c59;padding:5px 12px;border-radius:20px;display:inline-block;line-height:1.6}.student-muted{font-size:14px;color:#73806f;line-height:1.9}.student-footnote{font-size:11px;color:#768471;line-height:1.8}.ability-card>.section-title{margin-bottom:8px;align-items:center}.ability-card>.section-title h2{margin:0}.ability-card>.student-muted{margin:0}.ability-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(130px,1fr);gap:12px;align-items:center;margin:12px 0 0}#ability-chart svg{width:100%;height:auto;max-height:260px;display:block}#ability-chart>p{text-align:center;font-size:12px;margin:0 0 16px}.ability-list{display:flex;flex-direction:column;gap:3px}.ability-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border:0;background:transparent;border-radius:10px;text-align:left;padding:11px 8px;min-height:44px;color:#46614c;font-size:13px}.ability-row:hover{background:#edf3e7}.ability-row strong{font-weight:500}.ability-row span{font-size:11px;color:#7d8874}.ability-card details{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.ability-card summary{font-size:13px;cursor:pointer;line-height:1.8}.student-event{display:block;width:100%;text-align:left;padding:16px 0;background:transparent;border:0;border-bottom:1px solid #edf0e7;white-space:normal;overflow-wrap:anywhere;color:#354e3e}.student-event:last-child{border-bottom:none}.student-event strong{display:block;font-size:15px;line-height:1.6;margin:4px 0}.student-event small{font-size:11px;color:#8a937f;display:block}.student-event span{display:block;font-size:13px;line-height:1.75;color:#70806b}.student-event:hover strong{color:#2e7655}.student-empty{white-space:pre-line;padding:36px 0 44px;text-align:center;color:#7e8d75;font-size:14px;line-height:2}.today-shortcuts{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.today-shortcuts .secondary{flex:1;padding:10px;font-size:13px;background:#f8faf3}.recent-card .section-title{margin-bottom:8px}.recent-card h2{margin:0}.practice-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0 24px}.practice-options>button{position:relative;border:1px solid #e0e5d8;background:#fffefa;border-radius:22px;padding:24px;text-align:left;color:#344d3d;min-height:165px;transition:transform .15s,border-color .15s}.practice-options>button:hover{transform:translateY(-2px);border-color:#9bb08f}.practice-options>button.selected{border:2px solid #648463;padding:23px;background:#eef4e8}.practice-options>button:last-child{background:#f6efdb}.practice-options strong{display:block;font-size:22px;margin:12px 0 8px}.practice-options small{color:#7f8974;font-size:12px;line-height:1.7}.option-icon{font-size:25px;color:#809676}.practice-options>button>span:last-child{position:absolute;top:24px;right:22px;color:#9ca689}.practice-options>button:last-child .option-icon{color:#a28c47}#practice-start{margin-bottom:24px}#practice-start>p{font-size:14px;color:#74806b}#practice-recent{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}#challenge-history h3{font-size:16px;margin-top:25px}.test-layout{background:#fffefa;border:1px solid #e0e5d8;border-radius:24px;padding:24px;gap:24px;grid-template-columns:270px minmax(0,1fr)}.topic-sidebar{border-right:1px solid #e4e9dd}.topic-chapter summary{font-size:13px}.practice-settings{margin:18px 0;background:#f5f7ef;border-radius:14px;padding:14px 16px}.practice-settings summary{font-size:13px;cursor:pointer;color:#607454;min-height:32px;padding:4px 0}.test-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.test-modes{margin-top:16px}.test-modes button{font-size:12px!important}.test-builder .test-generate{align-items:center}#library-summary{font-size:11px!important;color:#809075}.library-browse{margin-top:15px}.paper-question img{max-height:380px}.paper-question .question-text{font-size:16px;line-height:2}.paper-preview{scroll-margin-top:20px}.paper-preview .topic-tags{font-size:11px}.workspace-grid{grid-template-columns:minmax(300px,.8fr) minmax(0,1.25fr);gap:24px}.card{border:1px solid #e0e5d9;border-radius:22px;background:#fffefa;box-shadow:none}.upload-card{padding:26px}.dropzone{background:#f3f6eb;border:1px dashed #c5d4b9;border-radius:18px;padding:26px 12px}.dropzone h3{font-size:15px;line-height:1.7}.dropzone .camera-icon{font-size:34px}.journal-capture .dropzone{background:#f2eef6;border-color:#d8cce4}.journal-capture .upload-card .primary{background:var(--purple)}.journal-capture .camera-icon{color:#8c77a0}.journal-capture .upload-card .section-title h2{color:#68587c}.upload-card .section-title{gap:8px}.upload-card .section-title h2{font-size:17px}.welcome{min-height:500px}.welcome-symbol{font-size:76px;color:#bcc9a9;font-weight:300;line-height:1.3;margin-bottom:24px}.journal-capture .welcome-symbol{color:#c7b8d6}.welcome h2{white-space:pre-line;font-size:29px;letter-spacing:0;line-height:1.75}.welcome p{white-space:pre-line;line-height:2.1;color:#88917b}.result-card{min-height:500px}.student-actions{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.student-actions button{font-size:13px}.assessment-score{background:#eaf0e2;border-radius:18px;padding:25px;margin:20px 0}.assessment-score strong{display:block;font-size:30px}.assessment-score span{font-size:12px;color:#748465;margin-top:8px;display:block}.graded-item{border-bottom:1px solid #dfe6d6;margin:24px 0;padding-bottom:16px}.graded-item>h3{font-size:17px}.graded-item .solution-section{border:0;padding:10px 0}.graded-item .solution-section h3{font-size:12px;margin-bottom:6px}#assessment-fields{border-radius:15px;padding:4px 12px;background:#f5f7ef;margin:12px 0}.record-dialog{max-width:600px;width:calc(100% - 32px);max-height:88dvh;overflow:auto;border:1px solid #dce4d6;border-radius:22px;padding:28px;color:#2d4737;background:#fffefa}.record-dialog::backdrop{background:#142b2259}.record-dialog label{font-size:13px;display:block;margin:14px 0}.record-dialog input,.record-dialog textarea{display:block;margin-top:6px}.record-dialog fieldset{border:1px solid #dfe5d9;border-radius:12px;margin:18px 0;padding:16px}.record-dialog legend{font-size:13px}.record-dialog details summary{font-size:13px;padding:10px 0;cursor:pointer}#record-topic-options{max-height:250px;overflow:auto}#record-topic-options label{display:flex;align-items:center;gap:9px;margin:0;min-height:42px}#record-topic-options input{width:18px;min-width:18px;margin:0;accent-color:#2e6654}.login-card{background:#fffefa}.login-card h1{font-size:25px}.insights-card{background:#fafbf5}.question-card[hidden]{display:none!important}.student-page .section-title{flex-wrap:wrap}#workspace [hidden]{display:none!important}:focus-visible{outline:3px solid #8ca577;outline-offset:4px}
@media(max-width:1050px){.practice-options{gap:12px}.practice-options>button{padding:19px;min-height:150px}.practice-options>button.selected{padding:18px}.practice-options strong{font-size:20px}.test-layout{grid-template-columns:220px minmax(0,1fr);padding:20px;gap:20px}.test-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.student-card,.growth-card{padding:24px}.ability-layout{grid-template-columns:1fr}.ability-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.ability-row{gap:5px}.ability-layout svg{max-height:235px}.workspace-grid{grid-template-columns:minmax(280px,.85fr) minmax(0,1fr);gap:18px}.upload-card{padding:20px}}
@media(max-width:760px){main{padding:22px 18px 110px}.topbar{padding:0 18px;height:auto;min-height:70px;flex-wrap:wrap;gap:5px 15px;padding-top:12px;padding-bottom:10px}.brand{font-size:21px}.brand-label{display:none}.user-tools{margin-left:auto;gap:0}.user-tools .text-button{font-size:11px;padding:8px}.user-tools #current-user{display:none!important}.student-nav{position:fixed;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));z-index:40;margin:0;max-width:none;background:#fffefaf5;border:1px solid #dfe5d8;box-shadow:0 -4px 24px #3048320a;border-radius:20px;padding:6px;backdrop-filter:blur(16px)}.student-nav button{flex-direction:column;gap:3px;font-size:11px;min-height:55px;padding:5px}.student-nav button>span{font-size:23px}.student-nav button.active{background:#eaf1e4;box-shadow:none}.student-heading{margin:4px 0 22px}.student-heading h1{font-size:29px}.student-heading p{font-size:13px}.today-grid{grid-template-columns:1fr;gap:16px}.student-card,.growth-card{padding:24px;border-radius:22px}.growth-card{min-height:215px}.growth-card h2{font-size:27px}.realm-decoration{font-size:96px;right:26px}.growth-card .growth-name{margin-top:8px}.next-card h2{font-size:22px}.next-card .primary{width:100%;margin-top:6px}.ability-layout{grid-template-columns:minmax(0,1.05fr) minmax(125px,1fr);gap:3px}.ability-list{display:flex}.ability-row{padding:10px 4px}.ability-row span{font-size:10px}.practice-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.practice-options>button{min-height:150px;padding:19px}.practice-options strong{font-size:21px}.practice-options small{font-size:11px}.practice-options>button>span:last-child{right:15px;top:20px}#practice-recent{grid-template-columns:1fr;gap:0}.test-layout{display:block;padding:20px;border-radius:20px}.topic-sidebar{position:static;border-right:0;border-bottom:1px solid #dfe5d9;padding:0 0 20px;margin:0 0 20px}#topic-tree{max-height:330px;overflow:auto}.test-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.test-modes{flex-wrap:wrap}.test-modes button{min-width:40%;padding:10px 4px}.workspace-grid{grid-template-columns:1fr}.input-column{display:contents}.upload-card{order:0;padding:23px}.result-card{order:1;min-height:0}.welcome{min-height:320px;padding:30px 20px}.welcome h2{font-size:25px}.welcome-symbol{font-size:56px;margin-bottom:18px}.history-card{order:2}.insights-card{order:3}#job-view{padding:22px}.previews img{height:85px}.student-actions{flex-direction:column}.student-actions button{width:100%}.record-dialog{padding:22px}.student-footnote{font-size:11px}.test-generate{flex-wrap:wrap}.test-generate p{flex-basis:100%}.test-generate button{width:100%}.paper-actions button{flex:1 1 45%;font-size:12px;padding:10px}.paper-actions #paper-submit{flex-basis:100%}.paper-question .question-text{font-size:15px}.paper-preview .page-heading{align-items:flex-start}.page-heading.student-heading{gap:10px}.page-heading.student-heading>button{padding:8px;flex-shrink:0}.capture-history-title{font-size:16px}}
@media(max-width:360px){main{padding-left:12px;padding-right:12px}.student-card,.growth-card{padding:20px}.student-heading h1{font-size:26px}.practice-options>button{padding:16px}.practice-options>button.selected{padding:15px}.practice-options strong{font-size:19px}.practice-options small{font-size:10px}.ability-layout{grid-template-columns:1fr}.ability-list{display:grid;grid-template-columns:1fr 1fr}.test-layout{padding:14px}.upload-card{padding:18px}.growth-card>div{max-width:90%}.realm-decoration{right:12px;opacity:.3}.topbar{padding-left:12px;padding-right:12px}.topbar .brand{font-size:19px}.user-tools .text-button{padding:6px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.practice-options>button{transition:none}.practice-options>button:hover{transform:none}html{scroll-behavior:auto}}
@media print{.student-nav,.practice-options,#practice-start,.upload-card,.student-actions{display:none!important}main{padding:0}.test-layout{display:block;border:none;padding:0}.topic-sidebar,.test-builder,.test-history-section,.library-browse,.paper-actions{display:none!important}}

.student-fold>summary{font-size:15px;color:#56714f;cursor:pointer;min-height:44px;padding:10px 0}.student-fold[open]>summary{margin-bottom:12px}.student-fold>summary .muted{margin-left:12px}

/* Study date and ordered multi-page photos share the existing capture form. */
.learning-date-fields{margin:0 0 16px}.learning-date-picker{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.learning-date-picker input{flex:1 1 140px;min-width:0;width:140px;min-height:44px}.learning-date-picker button{min-height:44px;padding:8px 12px}.learning-date-fields .student-footnote{margin:6px 0}.photo-order{display:flex;justify-content:space-around;gap:4px}.photo-order button{min-height:44px;min-width:44px;padding:4px}.photo-order button:disabled{opacity:.45}.learning-date-picker input:focus-visible,.photo-order button:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}

.journal-capture .previews{grid-template-columns:repeat(auto-fit,minmax(min(100%,100px),1fr))}.journal-capture .preview{min-width:0}

#photo-room[data-view=day] .workspace-grid{display:none}.daily-report-pane{max-width:850px;margin:0 auto}.daily-report-pane>.section-title{flex-wrap:wrap}.daily-workload-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.daily-workload-stats>div{display:flex;flex-direction:column;gap:5px;text-align:center;padding:12px 4px;background:var(--brand-soft,#f0f1fa);border-radius:12px}.daily-workload-stats strong{font-size:26px}.daily-workload-stats span{font-size:13px}.daily-settlement{margin:18px 0;padding:16px;border:1px solid var(--brand-line,#dedff2);border-radius:12px}.daily-settlement h3{margin-bottom:8px}.daily-evidence-links{display:flex;flex-wrap:wrap;gap:8px}.daily-evidence-links a{min-height:44px;display:inline-flex;align-items:center}.daily-question .math-text{overflow-wrap:anywhere}.daily-report-state{margin-top:16px}.daily-materials{margin-top:20px}.daily-materials>summary{cursor:pointer;min-height:44px}
.daily-document{padding:16px;border:1px solid var(--line,#ded8e5);border-radius:16px;background:var(--card,#fff);margin-bottom:16px;min-width:0}
.daily-document h2{margin:0 0 8px}
.daily-document .student-actions a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;padding:10px 16px}
.daily-document-preview{display:block;margin:16px 0;min-width:0}
.daily-document-preview img{display:block;width:100%;height:auto;border:1px solid #ddd6e2;border-radius:8px}
.daily-source-text>summary{padding:12px;cursor:pointer;min-height:44px}
.daily-generation,.daily-upload-option{padding:16px;border:1px solid #ded8e5;border-radius:16px;margin:12px 0;background:#fff;min-width:0}
.daily-generation h2{margin:0 0 8px}.daily-quiz{margin-top:18px;padding-top:12px;border-top:1px solid #ded8e5}
.daily-quiz a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;text-decoration:none}
.daily-document-preview img{aspect-ratio:210/297;object-fit:contain}
