:root{font-family:"Noto Serif SC",Songti SC,STSong,Georgia,serif;color:#38352e;background:#f8f2e7}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f8f2e7}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;padding:28px 3vw 32px;background:#f8f2e7}.workspace{max-width:1450px;margin:auto}header{min-height:166px;display:flex;align-items:center;justify-content:space-between;gap:24px}.welcome{display:flex;align-items:center;gap:20px}.welcome img{width:225px;height:146px;object-fit:cover;object-position:left center;mix-blend-mode:multiply;border-radius:18px}.welcome h1{margin:0 0 10px;font-size:28px;letter-spacing:.035em;color:#302d29}.welcome h1 svg,.welcome p svg{color:#768458}.welcome h1,.welcome p,.section-title h2,.week-strip h2,.week-stat small{display:flex;align-items:center;gap:7px}.welcome p{margin:0;color:#877c6d;font-size:15px}.header-meta{display:flex;gap:12px;align-items:center}.header-meta>span,.export-button,.soft-pill{display:flex;align-items:center;gap:7px;white-space:nowrap;border:1px solid #efe4d1;border-radius:14px;padding:12px 14px;color:#706756;background:#f4eddf;font-size:13px}.cloud-chip{color:#3f6b87!important;background:#eeeede!important}.export-button{border:1px solid #e5dbc9;background:#f8f4eb}.today-grid{display:grid;grid-template-columns:minmax(230px,.93fr) minmax(420px,1.52fr) minmax(230px,.93fr);gap:16px;align-items:start}.panel,.page-panel{background:#fffdf7b8;border:1px solid #e9d9bd;border-radius:24px;box-shadow:0 6px 23px #6f57320a}.panel{padding:24px 17px 14px}.section-title,.page-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.section-title h2,.garden h2,.page-heading h2{margin:0;font-size:21px}.section-title span{color:#c66b2a;background:#fbebd8;border-radius:10px;padding:7px 10px;font-size:12px}.review-list{display:grid;gap:8px;margin-top:18px}.review-row,.task-card{border:1px solid #eadfce;border-radius:13px;background:#fffdf8;width:100%;min-height:91px;padding:12px;display:flex;text-align:left;justify-content:space-between;align-items:center;gap:8px;transition:border-color .16s,transform .16s}.review-row:hover,.task-card:hover,.wide-row:hover,.memory-card:hover{border-color:#c7b188;transform:translateY(-1px)}.review-row b,.task-card b{display:block;margin:7px 0 4px;font-size:14px;font-weight:600}.review-row em,.task-card em{display:block;color:#988c79;font-size:11px;font-style:normal}.tag{display:inline-block;padding:3px 8px;border-radius:7px;color:#fff;font-size:10px;font-style:normal;line-height:1}.tag-语文{background:#879a67}.tag-数学{background:#db9136}.tag-英语{background:#7894a0}.tag-科学{background:#9585a9}.memory-circle{width:62px;height:62px;flex:0 0 auto;border-radius:50%;border:3px solid #d2d9c2;background:#fffefa;color:#525c46;display:grid;align-content:center;justify-items:center;gap:1px;line-height:1.05;text-align:center}.memory-circle strong{font-size:19px}.memory-circle span{font-size:9px}.memory-circle svg{margin-top:1px}.wave-3{border-color:#e98932;color:#a45d1e}.wave-7{border-color:#edb550;color:#8e6c2e}.wave-15{border-color:#ded7c9;color:#888174}.memory-circle.complete{background:#edf3e6}.text-action{width:100%;border:0;background:transparent;color:#857b6d;padding:11px 4px 0;font-size:13px;display:flex;align-items:center;justify-content:center;gap:6px}.garden{min-height:534px;overflow:hidden;padding:24px 18px 18px;text-align:center;position:relative}.garden-heading{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;gap:9px}.garden-heading svg{color:#ed902d}.garden-heading p{margin:4px 0 0;color:#918371;font-size:12px}.garden-art{min-height:333px;margin:9px -18px 10px;padding-top:96px;background-image:url(/assets/memory-garden-calico.png);background-size:cover;background-position:center bottom;position:relative}.garden-circles{position:relative;z-index:1;max-width:535px;margin:auto;display:flex;justify-content:space-between;gap:14px}.garden-circles .memory-circle{width:101px;height:101px;border-width:4px;background:#fffdf9;box-shadow:0 3px 12px #59472614}.garden-circles .memory-circle strong{font-size:27px}.garden-circles .memory-circle span{font-size:11px}.primary{border:0;border-radius:999px;padding:14px 35px;background:#7b9160;color:#fffef9;box-shadow:0 5px 12px #57673e33;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:18px}.primary:hover{background:#687e50}.compact{font-size:14px;padding:10px 16px;border-radius:12px}.homework{display:grid;gap:10px}.task-card{min-height:126px;align-items:flex-start}.task-card.done{opacity:.55}.task-card.done b{text-decoration:line-through}.task-date{text-align:right;color:#c94d25;display:grid;gap:3px;padding-top:2px}.task-date small{color:#8d8171;font-size:10px}.task-date b{margin:0;font-size:18px}.task-date em{color:#a8967d;white-space:nowrap;font-size:10px}.pending-status{display:inline-flex!important;align-items:center;justify-content:flex-end;gap:5px}.pending-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#cfaa6f}.week-strip{grid-column:1/-1;min-height:150px;padding:17px 22px;display:grid;grid-template-columns:1.55fr repeat(7,.7fr) 1fr 1fr 1fr;align-items:center;gap:8px}.week-strip h2{margin:0;align-self:start;font-size:18px}.week-day,.today-day{display:grid;place-items:center;gap:3px;color:#8f8171;font-size:12px}.week-day b,.today-day b{font-size:11px;font-weight:400}.week-day svg,.today-day svg{color:#d67b26}.week-day span,.today-day span{font-size:12px;color:#766c5c}.week-day span small,.today-day span small{font-size:9px}.today-day{min-height:105px;border-radius:13px;background:#eeead9;color:#697359}.today-day svg{color:#d9771f}.week-stat{min-height:78px;border-left:1px solid #e3d6c1;padding-left:15px;display:grid;align-content:center;gap:5px;border-top:0;border-right:0;border-bottom:0;background:transparent;text-align:left;font:inherit;cursor:pointer}.week-stat:hover b,.week-stat:focus-visible b{color:#65764f}.week-stat small{color:#948575;font-size:11px}.week-stat b{color:#2f312c;font-size:28px;font-weight:500}.week-stat b i{font-size:11px;font-style:normal}.progress-line{height:7px;max-width:110px;border:1px solid #cabfae;border-radius:99px;overflow:hidden}.progress-line i{display:block;height:100%;border-radius:99px;background:#819667}.page-panel{padding:28px;min-height:590px}.page-heading{margin-bottom:25px}.page-heading p{margin:5px 0 0;color:#8d806f;font-size:14px}.back-button{border:0;background:transparent;color:#7e745f;padding:0 0 8px;display:inline-flex;align-items:center;gap:5px;font-size:13px}.back-button:hover{color:#65764f}.table-list{overflow:hidden;border:1px solid #eadfcd;border-radius:16px}.wide-row{width:100%;padding:17px 18px;display:grid;grid-template-columns:80px 1fr 120px 100px;gap:15px;align-items:center;border:0;border-bottom:1px solid #eadfcd;background:#fffdf9;text-align:left}.wide-row:last-child{border-bottom:0}.wide-row .status{color:#b47a34}.memory-board{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.memory-card{text-align:left;border:1px solid #eadfcd;background:#fffdf9;border-radius:18px;padding:18px;display:grid;gap:10px}.memory-card b{font-size:16px}.memory-card p,.cat-card p{color:#8f8372;font-size:12px;margin:0}.memory-card.done{opacity:.6;background:#f3f6ed}.mistake-empty{text-align:center;padding:115px 0;color:#918473}.mistake-empty h3{color:#4d5542}.cat-card{background:#f5f0e3;border-radius:20px;min-height:360px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.cat-card>img{width:100%;height:360px;object-fit:cover;object-position:left}.cat-card>div{align-self:center;padding:34px}.cat-card h2{font-size:32px;margin:7px 0}.meter{height:10px;background:#e6dbc6;border-radius:99px;overflow:hidden;margin-top:25px}.meter span{display:block;height:100%;background:#819867}.cat-rewards{display:flex;gap:11px;margin-top:20px;flex-wrap:wrap}.cat-rewards span{background:#fffdf7;padding:9px 11px;border-radius:10px;font-size:12px;display:flex;align-items:center;gap:5px}.report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.report-grid div{padding:30px;background:#f5f0e3;border-radius:18px;display:grid;gap:8px}.report-grid b{font-size:34px;color:#556747}.report-grid span{color:#8d806e}.outline{border:1px solid #b9af9b;color:#665f55;background:transparent;padding:10px 14px;border-radius:12px;display:inline-flex;gap:6px;align-items:center}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;background:#2e2b2259;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{width:min(420px,calc(100vw - 36px));background:#fffdf8;border-radius:20px;padding:28px;display:grid;gap:15px;box-shadow:0 20px 60px #241f1840}.modal h2,.modal p{margin:0}.modal p{color:#887b6b;font-size:14px}.modal label{display:grid;gap:7px;font-size:13px;color:#635d51}.modal input,.modal select{border:1px solid #dbcfbb;border-radius:10px;padding:11px;background:#fffefa}.modal>div{display:flex;justify-content:flex-end;gap:8px}.form-message{color:#a95e2b;font-size:12px}.parent-agent{width:min(1040px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:auto;background:#fffdf7;border-radius:24px;padding:28px;box-shadow:0 20px 60px #241f1840}.agent-top{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-bottom:18px;border-bottom:1px solid #eadfcd}.agent-top-actions{display:flex;gap:8px}.agent-top-actions a{text-decoration:none}.agent-top small{color:#7c9064}.agent-top h2{margin:4px 0 0;font-size:24px}.agent-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:18px;padding-top:20px}.agent-chat,.material-form{display:grid;gap:12px;border:1px solid #eadfcd;border-radius:18px;padding:20px;background:#fffcf6}.agent-chat h3,.material-form h3{margin:0;font-size:18px}.agent-chat p,.material-form p{margin:0;color:#8d806e;font-size:13px;line-height:1.6}.agent-guide{margin:0;padding:12px 12px 12px 32px;border-radius:12px;background:#f5f0e3;color:#645d50;font-size:12px;line-height:1.8}.agent-response{min-height:126px;padding:15px;border-radius:14px;background:#f0f2e8;color:#505c43;font-size:14px;line-height:1.7;white-space:pre-wrap}.agent-actions{display:flex;gap:7px;flex-wrap:wrap}.agent-actions span{padding:6px 8px;border-radius:9px;background:#faead2;color:#a56827;font-size:12px}.agent-actions button{border:0;border-radius:9px;padding:7px 9px;color:#86521f;background:#faead2;text-align:left}.agent-actions button:disabled{color:#738068;background:#edf1e7}.voice-summary{border-top:1px solid #eadfcd;padding-top:12px}.voice-summary p{margin-top:6px}.agent-chat textarea,.material-form textarea,.material-form input{width:100%;border:1px solid #dbcfbb;border-radius:10px;padding:10px;background:#fffefa;resize:vertical}.agent-chat textarea{min-height:92px}.material-form label{display:grid;gap:6px;font-size:12px;color:#655f52}.material-form>form,.parent-quick-settings,.parent-quick-settings form{display:grid;gap:10px}.parent-quick-settings{margin-top:8px;padding-top:15px;border-top:1px solid #eadfcd}.parent-quick-settings form{grid-template-columns:1fr auto}.parent-quick-settings select{border:1px solid #dbcfbb;border-radius:10px;padding:10px;background:#fffefa}@media(max-width:850px){.app-shell{padding:20px}.today-grid{grid-template-columns:1fr 1fr}.garden{grid-column:1/-1;grid-row:1}.week-strip{grid-template-columns:repeat(5,1fr)}.week-strip h2{grid-column:1/-1}header{flex-wrap:wrap}.header-meta{width:100%;justify-content:flex-end}}@media(max-width:680px){.app-shell{padding:14px}.welcome img{width:116px;height:88px}.welcome{gap:9px}.welcome h1{font-size:20px}.welcome p{font-size:12px}.today-grid{grid-template-columns:1fr}.garden{grid-column:auto;grid-row:auto}.garden-art{min-height:286px;padding-top:64px}.garden-circles{gap:5px}.garden-circles .memory-circle{width:70px;height:70px}.garden-circles .memory-circle strong{font-size:18px}.garden-circles .memory-circle span{font-size:8px}.week-strip{grid-template-columns:repeat(3,1fr)}.week-stat{border-left:0}.wide-row{grid-template-columns:65px 1fr}.wide-row>span{display:none}.memory-board,.report-grid,.cat-card{grid-template-columns:1fr}.cat-card>img{height:220px}.page-panel{padding:20px}}@media(max-width:700px){.parent-agent{padding:18px}.agent-grid{grid-template-columns:1fr}.agent-top h2{font-size:18px}}
