/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#243436;--forest:#173b31;--forest2:#0f2a23;--paper:#fffdf5;--parchment:#fff3cd;--cream:#f8edcb;--sky:#bfe8f6;--grass:#b8df73;--green:#149b68;--green2:#087452;--gold:#f6c646;--coral:#ee7057;--line:#2b3d3d;--shadow:8px 8px 0 #2434362e;--soft:0 18px 40px #3b45301f;--font-kai:"Kaiti SC","STKaiti","KaiTi","楷体","FZKai-Z03S","DFKai-SB","Noto Serif CJK SC","Source Han Serif SC","Songti SC","SimSun",serif;--font-rounded:"Avenir Next","SF Pro Rounded","Arial Rounded MT Bold","PingFang SC","Microsoft YaHei",system-ui,sans-serif}*{box-sizing:border-box}html{background:#f4e7be}body{color:var(--ink);font-family:var(--font-kai);letter-spacing:.015em;text-rendering:optimizelegibility;background:var(--cream);margin:0}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.app-shell{background:linear-gradient(90deg,var(--forest) 0 252px,var(--cream) 252px);grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--forest);color:#eef7df;flex-direction:column;gap:22px;height:100vh;padding:26px 22px;display:flex;position:sticky;top:0;overflow:auto}.brand{letter-spacing:.08em;align-items:center;gap:12px;font-size:17px;line-height:1.2;display:flex}.brand b{color:#ffda66;font-size:21px}.brand-cube{color:#173b31;background:#f6c646;border:3px solid #0b211a;place-items:center;width:47px;height:47px;font-size:23px;font-weight:900;display:grid;box-shadow:5px 5px #0b211a}.profile-card{background:#ffffff14;border:2px solid #ffffff29;grid-template-columns:46px 1fr auto;align-items:center;gap:10px;padding:16px;display:grid;position:relative;box-shadow:5px 5px #0b211a}.avatar{color:#173b31;background:#fff1bb;border:2px solid #0b211a;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.profile-card strong,.profile-card small{display:block}.profile-card small{opacity:.72;margin-top:3px;font-size:11px}.profile-card p{color:#bad6ca;grid-column:1/-1;margin:2px 0 0;font-size:11px;line-height:1.55}.level{color:#173b31;background:#f6c646;padding:5px 6px;font-size:10px;font-weight:900}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav>small{color:#8fb5a5;letter-spacing:.12em;margin:0 0 7px 8px}.sidebar nav button{color:#b9d4c8;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;padding:9px 10px;font-weight:700;display:flex}.sidebar nav button span{background:#ffffff14;border:1px solid #ffffff14;place-items:center;width:31px;height:31px;font-weight:900;display:grid}.sidebar nav button:hover,.sidebar nav button.active{color:#173b31;background:#fff4cf;transform:translate(3px)}.sidebar nav button.active{box-shadow:4px 4px #0b211a}.sidebar-tip{border-top:1px solid #ffffff21;margin-top:auto;padding-top:16px}.sidebar-tip span{color:#ffda66;font-size:12px;font-weight:800}.sidebar-tip p{color:#b9d4c8;margin:7px 0;font-size:12px;line-height:1.6}.workspace{min-width:0}.topbar{z-index:20;background:#fff9e8;border-bottom:2px solid #ddcfaa;justify-content:space-between;align-items:center;height:76px;padding:0 34px;display:flex;position:sticky;top:0}.breadcrumb{color:#687777;font-size:13px}.breadcrumb span{color:#b3a582;margin:0 9px}.breadcrumb b{color:var(--green2)}.top-actions{align-items:center;gap:14px;display:flex}.role-switch{background:#e9dfbf;border:1px solid #d0c29c;padding:3px;display:flex}.role-switch button{cursor:pointer;background:0 0;border:0;padding:7px 13px;font-size:12px;font-weight:800}.role-switch button.active{color:var(--green2);background:#fffdf5;box-shadow:2px 2px #2434362e}.gem-balance{border:2px solid var(--line);cursor:pointer;background:#fffdf5;padding:8px 14px;font-weight:900;box-shadow:3px 3px #c6b787}.gem-balance span{color:var(--green);margin-right:8px}.content{max-width:1500px;margin:0 auto;padding:30px 34px 90px}.hero{border:3px solid var(--line);min-height:320px;box-shadow:var(--shadow);background:linear-gradient(130deg,#fff7da 0 57%,#bfe8f6 57%);grid-template-columns:1.04fr .96fr;display:grid;overflow:hidden}.hero-copy{z-index:2;padding:46px 42px;position:relative}.eyebrow{letter-spacing:.18em;color:#c97720;margin-bottom:12px;font-size:11px;font-weight:900;display:block}.hero h1,.role-hero h1{letter-spacing:.02em;margin:0 0 16px;font-family:STKaiti,KaiTi,serif;font-size:clamp(36px,4vw,61px);line-height:1.04}.hero-copy>p{color:#536364;max-width:560px;font-size:16px;line-height:1.8}.hero-actions{align-items:center;gap:20px;margin-top:27px;display:flex}.primary{cursor:pointer;background:var(--gold)!important;border:2px solid var(--line)!important;padding:12px 18px!important;font-weight:900!important;box-shadow:4px 4px #93671c!important}.primary:hover{transform:translateY(-2px);box-shadow:6px 6px #93671c!important}.hero-actions span{color:#a94b2d;font-size:13px;font-weight:800}.pixel-scene{background:linear-gradient(#bfe8f6 0 60%,#9cce57 60%);min-height:320px;position:relative;overflow:hidden}.sun{background:#ffd866;width:54px;height:54px;position:absolute;top:27px;right:45px;box-shadow:0 0 0 9px #ffd86640}.hill{border-radius:50% 50% 0 0;position:absolute;bottom:0}.hill-a{background:#b8df73;width:520px;height:210px;right:-130px}.hill-b{background:#7dbd4b;width:420px;height:145px;left:-120px}.tree{background:#795332;width:22px;height:60px;position:absolute;bottom:60px}.tree:before{content:"";background:#3f9346;width:66px;height:66px;position:absolute;top:-40px;left:-22px;box-shadow:inset -10px -10px #0000001a}.t1{left:60px}.t2{right:105px;transform:scale(.8)}.path{background:#e0c57d;border:4px dashed #8a7135;width:340px;height:90px;position:absolute;bottom:-30px;left:60px;transform:rotate(-9deg)}.hero-character{border:3px solid var(--line);background:#286c59;width:41px;height:69px;position:absolute;bottom:58px;left:49%;box-shadow:14px 0 #f3c778}.hero-character:before{content:"";border:3px solid var(--line);background:#df9c5d;width:43px;height:35px;position:absolute;top:-30px;left:-4px}.hero-character i{font-style:normal;font-weight:900;position:absolute;top:-25px;left:9px}.sign{border:3px solid var(--line);background:#fff3cd;padding:10px 14px;font-weight:900;position:absolute;bottom:52px;right:28px;box-shadow:5px 5px #24343640}.section-heading{justify-content:space-between;align-items:end;margin:36px 0 18px;display:flex}.section-heading h2{margin:0;font-family:STKaiti,KaiTi,serif;font-size:30px}.section-heading p{color:#6a7674;font-size:12px}.child-grid{grid-template-columns:minmax(0,1fr) 360px;gap:25px;display:grid}.quest-map{border:3px solid var(--line);min-height:845px;box-shadow:var(--shadow);background:#b8df73;padding:25px;position:relative;overflow:hidden}.quest-map:before{content:"";background-color:#0000;background-image:linear-gradient(90deg,#0000 49%,#ffffff1f 50%),linear-gradient(#0000 49%,#ffffff1f 50%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:48px 48px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.map-path{opacity:.75;border:10px dashed #927637;border-color:#927637 #927637 #0000 #0000;border-radius:50%;width:63%;height:72%;position:absolute;top:14%;left:22%;transform:rotate(16deg)}.quest-card{background:var(--paper);border:3px solid var(--line);z-index:2;width:330px;transition:transform .18s;position:absolute;box-shadow:7px 7px #24343638}.quest-card:hover{transform:translateY(-4px)}.quest-card.q1{top:10%;left:4%}.quest-card.q2{top:36%;right:5%}.quest-card.q3{bottom:6%;left:13%}.quest-illustration{border-bottom:3px solid var(--line);place-items:center;height:107px;display:grid;position:relative;overflow:hidden}.mine .quest-illustration{background:#526c76}.ruin .quest-illustration{background:#e7bd65}.workshop .quest-illustration{background:#f0bd72}.quest-illustration .big-icon{color:#fff;z-index:2;border:3px solid var(--line);background:#2434369e;padding:7px 12px;font-size:36px;font-weight:900}.quest-illustration i{background:#ffffff2e;width:42px;height:42px;position:absolute;transform:rotate(7deg)}.quest-illustration i:nth-child(2){bottom:-9px;left:24px}.quest-illustration i:nth-child(3){top:18px;right:37px}.quest-illustration i:nth-child(4){top:-18px;left:110px}.quest-body{padding:19px}.quest-body small{font-weight:800}.quest-body h3{margin:6px 0 9px;font-size:24px}.quest-body p{color:#617071;min-height:42px;font-size:13px;line-height:1.65}.quest-meta{justify-content:space-between;margin:12px 0;font-size:12px;display:flex}.quest-meta span:first-child{color:var(--green2);font-weight:900}.quest-body button{border:2px solid var(--line);cursor:pointer;background:#fff6d7;width:100%;padding:10px;font-weight:900;box-shadow:3px 3px #aa9160}.quest-card.done{outline:6px solid #149b6847}.quest-card.done .quest-illustration{background:var(--green)}.right-rail{flex-direction:column;gap:18px;display:flex}.right-rail article{border:2px solid var(--line);background:var(--paper);box-shadow:var(--soft);padding:22px}.card-kicker{color:var(--green2);justify-content:space-between;align-items:center;font-size:11px;font-weight:900;display:flex}.card-kicker button{color:var(--green2);cursor:pointer;background:#e6f2dc;border:0;padding:6px 9px}.smart-card h3{margin:13px 0 7px;font-size:22px}.smart-card>p{color:#6b7877;font-size:13px;line-height:1.6}.smart-grid{grid-template-columns:1fr 1fr;gap:7px;margin:15px 0;display:grid}.smart-grid span{background:#edf1e5;padding:8px;font-size:11px}.smart-grid b{color:var(--green2);margin-right:5px}.progress-row{justify-content:space-between;align-items:end;margin-top:15px;font-size:11px;display:flex}.progress-row strong{color:var(--green2);font-size:24px}.progress{background:#e7e0ca;border:2px solid #85908b;height:10px;margin-top:8px}.progress span{background:linear-gradient(90deg,var(--green),#55bd66);height:100%;display:block}.reward-card{color:#f5f6e7;position:relative;overflow:hidden;background:var(--forest)!important}.reward-card:after{content:"◆";color:#ffffff09;font-size:170px;position:absolute;top:-42px;right:-20px}.reward-card h3{margin:0;font-family:STKaiti,KaiTi,serif;font-size:25px}.reward-card button{z-index:1;color:#fff;cursor:pointer;background:0 0;border:1px solid #71867c;margin:19px 0;padding:9px 12px;position:relative}.reward-shelf{grid-template-columns:1fr 1fr;gap:8px;display:grid}.reward-shelf span{background:#ffffff14;padding:10px;font-size:11px;line-height:1.6}.reward-shelf b{color:#8ee4b7}.agency-card{align-items:center;gap:13px;display:flex}.agency-number{background:var(--gold);border:2px solid var(--line);place-items:center;min-width:52px;height:52px;font-size:26px;font-weight:900;display:grid}.agency-card strong{font-size:14px}.agency-card p{color:#677;margin:4px 0;font-size:11px;line-height:1.5}.role-hero{border:3px solid var(--line);min-height:230px;box-shadow:var(--shadow);background:#d9ecc1;justify-content:space-between;align-items:center;padding:42px;display:flex;position:relative;overflow:hidden}.role-hero:after{content:"";border:55px solid #ffffff2e;border-radius:50%;width:330px;height:330px;position:absolute;bottom:-200px;right:-70px}.role-hero h1{font-size:47px}.role-hero p{max-width:730px;line-height:1.7}.permission-stamp{z-index:2;border:3px solid var(--line);background:#fff7da;align-content:center;place-items:center;width:120px;height:120px;display:grid;position:relative;box-shadow:6px 6px #8ca370}.permission-stamp b{font-size:40px}.permission-stamp span{font-size:12px}.teacher-hero{background:#bfe8f6}.teacher-hero .primary{z-index:2;position:relative}.summary-strip,.teacher-metrics{border:2px solid var(--line);background:#fffdf5;grid-template-columns:repeat(4,1fr);margin-top:26px;display:grid}.summary-strip>div{border-right:1px solid #d8d0b8;padding:19px}.summary-strip>div:last-child{border-right:0}.summary-strip small,.summary-strip strong{display:block}.summary-strip small{color:#6c7874;margin-bottom:7px}.summary-strip strong{font-size:20px}.summary-strip em{color:var(--green2);font-size:11px;font-style:normal}.two-col{grid-template-columns:minmax(0,1fr) 370px;gap:24px;margin-top:8px;display:grid}.review-list{gap:12px;display:grid}.review-list article{border:2px solid var(--line);background:#fffdf5;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;padding:16px;display:grid;box-shadow:4px 4px #d4c49c}.review-icon{border:2px solid var(--line);background:#c8e1b7;place-items:center;width:44px;height:44px;font-weight:900;display:grid}.review-icon.amber{background:#f6d793}.review-list small{color:#72807c}.review-list h3{margin:3px 0}.review-list p{color:#63706d;font-size:12px}.review-list button,.section-heading>button{border:2px solid var(--line);cursor:pointer;background:#fff3cd;padding:9px 12px;font-weight:800}.policy-card,.rubric-card{background:var(--forest);color:#f5f6e7;border:3px solid var(--line);box-shadow:var(--shadow);margin-top:36px;padding:28px}.policy-card h2,.rubric-card h2{font-family:STKaiti,KaiTi,serif;font-size:28px}.policy-card ul{padding:0;list-style:none}.policy-card li{margin:15px 0;font-size:13px}.policy-card li span{background:#4e6a5e;place-items:center;width:23px;height:23px;margin-right:8px;display:inline-grid}.policy-card button,.rubric-card button{width:100%;color:var(--ink);cursor:pointer;background:#f6c646;border:1px solid #71867c;padding:11px;font-weight:900}.starter-plan{border:3px solid var(--line);box-shadow:var(--shadow);background:#fffdf5;grid-template-columns:1.5fr repeat(7,1fr);align-items:stretch;gap:8px;margin-top:28px;padding:25px;display:grid}.starter-plan h2{margin:0;font-family:STKaiti,KaiTi,serif;font-size:26px}.starter-plan>span{border-left:1px solid #d6ccb2;padding:8px;font-size:11px;line-height:1.5}.starter-plan>span b{color:var(--green2);margin-bottom:6px;font-size:18px;display:block}.teacher-metrics{grid-template-columns:repeat(3,1fr)}.teacher-metrics article{border-right:1px solid #d8d0b8;padding:18px 22px}.teacher-metrics span,.teacher-metrics strong{display:block}.teacher-metrics span{color:#6d7875;font-size:12px}.teacher-metrics strong{margin:5px 0;font-size:24px}.teacher-grid{margin-top:24px}.class-board{border:2px solid var(--line);background:#fffdf5;padding:0 20px 20px}.class-board .section-heading{margin:22px 0}.student-row{text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #ddd4bc;grid-template-columns:1.2fr 1fr 1fr 1fr .8fr;align-items:center;gap:8px;width:100%;padding:13px 8px;display:grid}.student-row:not(.labels):hover{background:#f7efd9}.student-row.labels{color:#76817e;cursor:default;font-size:11px}.student-row span:not(:first-child){font-size:12px}.稳定{color:#187c59}.成长中{color:#a46a18}.需支架{color:#b04a36}.突出{color:#496da7}.rubric-card{margin:0}.feedback-example{background:#ffffff14;margin:17px 0;padding:15px}.feedback-example p{font-size:13px;line-height:1.6}.muted{text-align:center;color:#9fb5ab;margin-top:12px;display:block}.toast{z-index:50;background:var(--forest2);color:#fff9df;border:2px solid #6b8277;max-width:80vw;padding:12px 18px;font-size:12px;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:6px 6px #00000038}.toast span{color:#54d19d;margin-right:9px}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0e211dad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border:3px solid var(--line);background:#fffdf5;width:min(660px,100%);max-height:90vh;padding:34px;position:relative;overflow:auto;box-shadow:12px 12px #00000047}.close{border:2px solid var(--line);cursor:pointer;background:#fff3cd;width:35px;height:35px;font-size:22px;position:absolute;top:13px;right:16px}.modal h2{margin:7px 0;font-family:STKaiti,KaiTi,serif;font-size:34px}.modal-lead{color:#5f6e6b;line-height:1.7}.modal-icon{color:#fff;border:3px solid var(--line);background:#526c76;place-items:center;width:62px;height:62px;margin-bottom:20px;font-size:26px;font-weight:900;display:grid}.modal-icon.ruin{background:#c4912c}.modal-icon.workshop{background:#cc7337}.task-steps{grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0;display:grid}.task-steps span{background:#edf1e5;padding:12px;font-size:11px}.task-steps b{background:var(--green);color:#fff;place-items:center;width:23px;height:23px;margin-bottom:7px;display:grid}.modal label{font-size:12px;font-weight:900;display:block}.modal textarea{resize:vertical;background:#fffaf0;border:2px solid #a9aa98;width:100%;height:125px;margin-top:8px;padding:13px;line-height:1.7;display:block}.modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.modal-actions button{border:2px solid var(--line);cursor:pointer;background:#fff;padding:11px 15px;font-weight:800}.goal-fields{gap:9px;margin:20px 0;display:grid}.goal-fields label{background:#f0f1df;grid-template-columns:140px 1fr;align-items:center;padding:8px 12px;display:grid}.goal-fields label b{color:var(--green2)}.goal-fields input{background:0 0;border:0;border-bottom:1px solid #abb2a3;padding:8px}.goal-status{margin-top:18px}.goal-status>span{margin-top:7px;font-size:11px;display:block}.reward-options{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px;display:grid}.reward-options article{border:2px solid var(--line);background:#fff5d9;padding:17px}.reward-pixel{color:var(--green);font-size:28px}.reward-options h3{font-size:16px}.reward-options p{min-height:53px;font-size:11px;line-height:1.6}.reward-options button{border:2px solid var(--line);background:var(--gold);cursor:pointer;width:100%;padding:9px;font-size:11px;font-weight:900}.reward-options button:disabled{color:#8f8a7b;cursor:not-allowed;background:#ddd5be}.signed-account{border-right:1px solid #d5c9aa;align-items:center;gap:8px;padding-right:14px;display:flex}.signed-account>span{border:2px solid var(--line);background:#dcebd0;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.signed-account b,.signed-account small{display:block}.signed-account b{font-size:12px}.signed-account small{color:#77827e;font-size:9px}.logout-button{cursor:pointer;background:0 0;border:1px solid #aaa38f;padding:8px 10px;font-size:11px}.login-page{background:#fff9e8;grid-template-columns:minmax(420px,.9fr) minmax(560px,1.1fr);min-height:100vh;display:grid}.login-intro{border-right:3px solid var(--line);background:linear-gradient(145deg,#bfe8f6 0 43%,#b8df73 43% 100%);flex-direction:column;justify-content:center;padding:54px clamp(38px,6vw,88px);display:flex;position:relative;overflow:hidden}.login-intro:before{content:"";background:#9ed061;border:4px dashed #24343652;border-radius:50%;width:420px;height:220px;position:absolute;bottom:20px;right:-90px}.login-brand{align-items:center;gap:14px;font-size:18px;display:flex;position:absolute;top:38px;left:clamp(38px,6vw,88px)}.login-intro h1{z-index:2;margin:12px 0 22px;font-family:STKaiti,KaiTi,serif;font-size:clamp(44px,5.2vw,76px);line-height:1.08;position:relative}.login-intro>p{z-index:2;max-width:590px;font-size:16px;line-height:1.8;position:relative}.login-features{z-index:2;flex-wrap:wrap;gap:8px;display:flex;position:relative}.login-features span{border:2px solid var(--line);background:#fff8db;padding:8px 10px;font-size:11px;font-weight:800;box-shadow:3px 3px #24343633}.login-landscape{height:160px;margin-top:34px;position:relative}.login-landscape i{border:3px solid var(--line);background:#786042;width:70px;height:80px;position:absolute;bottom:0}.login-landscape i:before{content:"";border:3px solid var(--line);background:#398f4a;width:96px;height:70px;position:absolute;top:-55px;left:-16px}.login-landscape i:first-child{left:5%}.login-landscape i:nth-child(2){left:35%;transform:scale(.7)}.login-landscape i:nth-child(3){right:8%;transform:scale(.9)}.login-landscape b{border:3px solid var(--line);background:#fff3cd;padding:10px 14px;position:absolute;bottom:35px;left:48%;box-shadow:5px 5px #24343638}.login-panel{flex-direction:column;justify-content:center;padding:45px clamp(28px,5vw,78px);display:flex;overflow:auto}.login-heading{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.login-heading span{font-family:STKaiti,KaiTi,serif;font-size:31px;font-weight:800}.login-heading small{color:#71807b}.login-options{gap:10px;display:grid}.login-option{border:2px solid var(--line);background:#fffdf5;grid-template-columns:55px 1fr auto;align-items:center;gap:15px;padding:15px;transition:transform .18s;display:grid;box-shadow:4px 4px #d8c9a4}.login-option:hover{transform:translateY(-2px)}.login-avatar{border:2px solid var(--line);background:#dcedd5;place-items:center;width:50px;height:50px;font-size:18px;font-weight:900;display:grid}.login-option.parent .login-avatar{background:#ffe09a}.login-option.teacher .login-avatar{background:#cfe9f3}.login-option.admin .login-avatar{background:#d8d1e9}.login-option h2{margin:2px 0;font-size:17px}.login-option small{color:var(--green2);font-weight:900}.login-option p{margin:4px 0;font-size:11px}.login-option em{color:#74807d;font-size:10px;font-style:normal}.child-code,.demo-login{justify-self:end}.child-code{display:flex}.child-code input{border:2px solid var(--line);letter-spacing:.12em;background:#fff8dd;width:75px;padding:9px;font-weight:900}.child-code button,.demo-login{border:2px solid var(--line);background:var(--gold);cursor:pointer;padding:9px 12px;font-weight:900}.demo-login{min-width:82px}.login-security{border-left:4px solid var(--green2);background:#edf1e5;margin-top:20px;padding:12px 15px;font-size:10px;line-height:1.6}.login-security b,.login-security span{display:block}.login-security b{color:var(--green2)}.back-link{color:var(--green2);cursor:pointer;background:0 0;border:0;margin-bottom:28px;padding:0;font-size:12px;font-weight:800}.curriculum-header{border-bottom:3px solid var(--line);justify-content:space-between;align-items:end;padding-bottom:22px;display:flex}.curriculum-header h1,.ability-page>header h1{margin:0;font-family:STKaiti,KaiTi,serif;font-size:50px}.curriculum-header p,.ability-page>header p{color:#61716f}.study-mode{border:2px solid var(--line);background:#e6dcc0;padding:4px;display:flex}.study-mode button{text-align:left;cursor:pointer;background:0 0;border:0;padding:11px 16px;font-weight:900}.study-mode button span{border:1px solid var(--line);background:#fff4cf;place-items:center;width:27px;height:27px;margin-right:8px;display:inline-grid}.study-mode button small{color:#74817d;margin-left:38px;font-weight:400;display:block}.study-mode button.active{background:#fffdf5;box-shadow:3px 3px #24343633}.source-note{border-left:4px solid var(--green2);background:#edf3e6;gap:14px;margin:16px 0;padding:10px 13px;font-size:11px;display:flex}.source-note b{color:var(--green2);white-space:nowrap}.curriculum-layout{grid-template-columns:220px minmax(330px,1fr) minmax(380px,.9fr);align-items:start;gap:16px;display:grid}.unit-nav{background:var(--forest);color:#fff;border:2px solid var(--line);padding:17px}.unit-nav>span{color:#a8c9bb;letter-spacing:.12em;margin-bottom:10px;font-size:10px;display:block}.unit-nav button{color:#c5dcd2;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:35px 1fr;gap:9px;width:100%;padding:10px 7px;display:grid}.unit-nav button.active{color:var(--ink);background:#fff5d8;box-shadow:3px 3px #091e18}.unit-nav i{border:2px solid var(--line);color:#fff;place-items:center;width:31px;height:31px;font-style:normal;font-weight:900;display:grid}.unit-nav b,.unit-nav small{display:block}.unit-nav b{font-size:13px}.unit-nav small{opacity:.72;margin-top:3px;font-size:9px;line-height:1.45}.lesson-list{border:2px solid var(--line);background:#fffdf5;box-shadow:5px 5px #dac99c}.unit-title{border-bottom:2px solid var(--line);background:#fff3cd;justify-content:space-between;align-items:center;padding:20px;display:flex}.unit-title span{color:var(--green2);font-size:10px;font-weight:900}.unit-title h2{margin:3px 0;font-family:STKaiti,KaiTi,serif;font-size:27px}.unit-title p{margin:0;font-size:10px}.unit-title>strong{color:var(--green2);font-size:32px}.lesson-row{text-align:left;cursor:pointer;background:#fffdf5;border:0;border-bottom:1px solid #ded5bb;grid-template-columns:42px 1fr 30px;gap:12px;width:100%;padding:15px;display:grid}.lesson-row:hover,.lesson-row.active{background:#edf3e6}.lesson-row.active{box-shadow:inset 5px 0 0 var(--green)}.lesson-no{color:#9b7f48;font-family:monospace;font-weight:900}.lesson-row small{color:var(--green2);font-size:9px;font-weight:800}.lesson-row h3{margin:3px 0;font-size:16px}.lesson-row p{color:#6e7b78;margin:0;font-size:10px;line-height:1.5}.lesson-done{border:1px solid #b3b19f;place-items:center;width:26px;height:26px;display:grid}.lesson-done.done{background:var(--green);color:#fff;border-color:var(--green)}.lesson-workbench{background:var(--paper);border:3px solid var(--line);max-height:calc(100vh - 115px);box-shadow:var(--shadow);padding:24px;position:sticky;top:92px;overflow:auto}.lesson-workbench h2{margin:4px 0;font-family:STKaiti,KaiTi,serif;font-size:31px}.lesson-workbench>p{color:#566865;font-size:11px;line-height:1.7}.lesson-section{margin:18px 0}.lesson-section>small,.quick-check>small,.evidence-box>small{color:#b86b22;letter-spacing:.12em;margin-bottom:8px;font-size:9px;font-weight:900;display:block}.word-chips{flex-wrap:wrap;gap:5px;display:flex}.word-chips span{background:#edf1e5;border:1px solid #c9d2c2;padding:5px 7px;font-size:10px}.structure-list,.knowledge-list{margin:0;padding-left:20px}.structure-list li,.knowledge-list li{margin:4px 0;font-size:10px;line-height:1.6}.structure-list li::marker{color:var(--green2);font-weight:900}.public-text{background:#fff4d3;border:1px solid #d7c89c;margin:14px 0;padding:10px}.public-text summary{cursor:pointer;font-size:10px;font-weight:900}.public-text pre{white-space:pre-wrap;font-family:STKaiti,KaiTi,serif;font-size:14px;line-height:1.8}.public-text small{color:#7b827e;font-size:8px}.mission-steps{gap:8px;margin:20px 0;display:grid}.mission-steps span{background:#edf1e5;grid-template-columns:28px 1fr;align-items:center;padding:8px;font-size:11px;display:grid}.mission-steps b{background:var(--green);color:#fff;place-items:center;width:23px;height:23px;display:grid}.quick-check{border:2px solid var(--line);background:#fff9e8;margin:17px 0;padding:13px}.quick-check>strong{margin-bottom:9px;font-size:12px;line-height:1.6;display:block}.quick-check button{text-align:left;cursor:pointer;background:#fff;border:1px solid #c6c2ae;grid-template-columns:23px 1fr;gap:8px;width:100%;margin:5px 0;padding:7px;font-size:10px;display:grid}.quick-check button b{background:#e8eadc;place-items:center;display:grid}.quick-check button.correct{border-color:var(--green);background:#e4f4e8}.quick-check button.wrong{background:#fbe5df;border-color:#c55e49}.quick-check p{margin:8px 0 0;padding:8px;font-size:9px;line-height:1.5}.answer-right{color:#156d4f;background:#e4f4e8}.answer-wrong{color:#9e4231;background:#fbe5df}.evidence-box{border-left:4px solid var(--green);background:#e8f1df;padding:12px}.evidence-box strong{font-size:10px;line-height:1.6}.minecraft-prompt{background:var(--forest);color:#fff5d8;margin:18px 0;padding:15px}.minecraft-prompt small{color:#8fdfbb;margin-bottom:6px;display:block}.minecraft-prompt strong{font-size:12px;line-height:1.6}.lesson-workbench .primary{width:100%}.curriculum-sources{color:#77817f;border-top:1px solid #cfc4a5;flex-wrap:wrap;gap:12px;margin-top:20px;padding-top:15px;font-size:9px;display:flex}.curriculum-sources b{color:var(--ink)}.ability-page>header{border-bottom:3px solid var(--line);padding-bottom:22px}.ability-summary{border:2px solid var(--line);background:#fffdf5;grid-template-columns:repeat(4,1fr);margin:22px 0;display:grid}.ability-summary>div{border-right:1px solid #ddd2b4;padding:18px}.ability-summary>div:last-child{border-right:0}.ability-summary span,.ability-summary small,.ability-summary strong{display:block}.ability-summary span{color:#71807c;font-size:10px}.ability-summary strong{color:var(--green2);margin:4px 0;font-size:26px}.ability-summary small{font-size:9px}.ability-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.ability-grid article{border:2px solid var(--line);background:#fffdf5;grid-template-columns:58px 1fr;gap:15px;padding:20px;display:grid;box-shadow:4px 4px #dac99c}.ability-icon{border:2px solid var(--line);background:#dcebd0;place-items:center;width:54px;height:54px;font-size:20px;font-weight:900;display:grid}.ability-grid small{color:#ba6a1d;font-size:9px}.ability-grid h2{margin:2px 0;font-family:STKaiti,KaiTi,serif;font-size:23px}.ability-grid p{color:#677572;font-size:11px;line-height:1.6}.ability-progress{grid-template-columns:1fr 38px;align-items:center;gap:8px;display:grid}.ability-progress .progress{margin:0}.ability-progress b{color:var(--green2);font-size:11px}.ability-grid em{color:#87908e;margin-top:7px;font-size:9px;font-style:normal;display:block}.weekly-route{background:var(--forest);color:#fff8df;border:3px solid var(--line);grid-template-columns:320px 1fr;gap:30px;margin-top:22px;padding:25px;display:grid}.weekly-route h2{margin:0;font-family:STKaiti,KaiTi,serif;font-size:28px}.weekly-route ol{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;list-style:none;display:grid}.weekly-route li{background:#ffffff14;padding:12px;font-size:11px;line-height:1.6}.weekly-route li b{color:#86dfb7;margin-bottom:4px;display:block}.admin-hero{background:#ded6ed}.admin-shield{z-index:2;background:var(--forest);color:#fff4cf;border:3px solid var(--line);place-items:center;width:130px;height:130px;font-size:40px;font-weight:900;display:grid;position:relative;box-shadow:7px 7px #8f83a5}.admin-shield small{font-size:8px;display:block;position:absolute;bottom:13px}.admin-tabs{border-bottom:2px solid var(--line);margin:28px 0 18px;display:flex}.admin-tabs button{cursor:pointer;background:0 0;border:0;padding:11px 20px;font-weight:800}.admin-tabs button.active{background:var(--forest);color:#fff}.admin-grid{grid-template-columns:minmax(0,1fr) 330px;gap:20px;display:grid}.admin-main,.audit-panel{border:2px solid var(--line);background:#fffdf5;padding:0 22px 22px}.account-table{border:1px solid #d6ccb1}.account-row{border-bottom:1px solid #ded6bf;grid-template-columns:1.1fr .7fr 1.4fr .7fr .5fr;align-items:center;gap:8px;padding:12px;font-size:11px;display:grid}.account-row.labels{color:#75807d;background:#ede8d8;font-size:9px;font-weight:800}.account-row button,.content-units button{cursor:pointer;background:#fff3cd;border:1px solid #a8a692;padding:5px 8px;font-size:10px}.admin-side{background:var(--forest);color:#fff8df;border:2px solid var(--line);box-shadow:var(--shadow);padding:23px}.admin-side h2{font-family:STKaiti,KaiTi,serif;font-size:26px}.admin-side ul{padding-left:18px}.admin-side li{margin:9px 0;font-size:11px;line-height:1.6}.admin-side button{background:var(--gold);border:2px solid var(--line);cursor:pointer;width:100%;padding:10px;font-weight:900}.admin-side.light{color:var(--ink);background:#fff3cd}.admin-side.light p{font-size:11px;line-height:1.7}.admin-side label{margin:18px 0;font-size:10px;display:block}.admin-side select{border:2px solid var(--line);background:#fff;width:100%;margin-top:6px;padding:9px;display:block}.pack-summary{border:1px solid #d5cbb0;grid-template-columns:repeat(4,1fr);margin-bottom:14px;display:grid}.pack-summary span{border-right:1px solid #ddd3b8;padding:13px;font-size:9px}.pack-summary b{color:var(--green2);font-size:22px;display:block}.content-units{gap:7px;display:grid}.content-units article{border:1px solid #d8cfb7;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;padding:9px;display:grid}.content-units i{border:2px solid var(--line);color:#fff;place-items:center;width:31px;height:31px;font-style:normal;font-weight:900;display:grid}.content-units b,.content-units small{display:block}.content-units b{font-size:12px}.content-units small{color:#7a8481;font-size:8px;line-height:1.5}.permission-panel{border:2px solid var(--line);background:#fffdf5;padding:25px}.permission-panel>div:first-child{max-width:760px}.permission-panel h2{margin:0;font-family:STKaiti,KaiTi,serif;font-size:29px}.permission-panel p{color:#687673;font-size:11px}.permission-table{border:1px solid #d5cbb0;margin-top:20px}.permission-row{border-bottom:1px solid #ddd3ba;grid-template-columns:1.7fr repeat(4,1fr);display:grid}.permission-row span{border-right:1px solid #e3dcc8;padding:12px;font-size:11px}.permission-row.labels{background:var(--forest);color:#fff;font-weight:900}.permission-row .yes{color:var(--green2);font-weight:900}.permission-row .no{color:#aaa}.permission-row .scoped{background:#edf1e5}.audit-panel{padding-bottom:22px}.audit-row{border-top:1px solid #ddd4bc;grid-template-columns:1fr 1fr 2fr .7fr;padding:13px;font-size:11px;display:grid}.audit-row span:last-child{color:var(--green2);font-weight:800}@media (width<=1180px){.child-grid,.two-col,.admin-grid{grid-template-columns:1fr}.right-rail{grid-template-columns:1fr 1fr;display:grid}.agency-card{grid-column:1/-1}.policy-card,.rubric-card{margin-top:0}.starter-plan{grid-template-columns:repeat(4,1fr)}.starter-plan>div{grid-column:1/-1}.hero{grid-template-columns:1fr}.pixel-scene{min-height:230px}.quest-map{min-height:900px}.curriculum-layout{grid-template-columns:220px 1fr}.lesson-workbench{grid-column:1/-1;position:relative;top:auto}.login-page{grid-template-columns:1fr}.login-intro{border-right:0;border-bottom:3px solid var(--line);min-height:540px}.admin-side{margin-top:0}}@media (width<=800px){.app-shell{background:var(--cream);display:block}.sidebar{width:100%;height:auto;padding:16px;position:relative}.sidebar nav{grid-template-columns:repeat(3,1fr);display:grid}.sidebar nav>small,.sidebar-tip,.profile-card{display:none}.brand{margin-bottom:4px}.topbar{align-items:flex-start;gap:10px;height:auto;padding:10px 14px;top:0}.breadcrumb{display:none}.top-actions{justify-content:space-between;width:100%}.signed-account small{display:none}.content{padding:18px 14px 80px}.hero-copy{padding:31px 25px}.hero h1,.role-hero h1{font-size:36px}.hero-actions{flex-direction:column;align-items:flex-start}.child-grid{display:block}.quest-map{background:#b8df73;min-height:auto;padding:14px}.map-path{display:none}.quest-card{width:100%;margin-bottom:18px;position:relative!important;inset:auto!important}.right-rail{display:block}.right-rail article{margin-top:15px}.role-hero{padding:28px;display:block}.permission-stamp,.admin-shield{margin-top:20px}.summary-strip,.teacher-metrics,.ability-summary{grid-template-columns:1fr 1fr}.two-col{display:block}.review-list article{grid-template-columns:42px 1fr}.review-list button{grid-column:1/-1}.starter-plan,.student-row{grid-template-columns:1fr 1fr}.student-row span:nth-child(3),.student-row span:nth-child(4){display:none}.reward-options,.task-steps,.ability-grid,.goal-fields label{grid-template-columns:1fr}.modal{padding:27px 20px}.toast{text-align:center;width:calc(100% - 28px);max-width:none}.reward-shelf{grid-template-columns:1fr}.login-intro{min-height:560px;padding:100px 28px 35px}.login-brand{left:28px}.login-panel{padding:30px 18px}.login-option{grid-template-columns:48px 1fr}.child-code,.demo-login{grid-column:1/-1;width:100%}.child-code input{flex:1}.child-code button,.demo-login{width:100%}.curriculum-header{display:block}.study-mode{margin-top:18px}.curriculum-layout{grid-template-columns:1fr}.unit-nav{display:flex;overflow:auto}.unit-nav>span{display:none}.unit-nav button{min-width:170px}.lesson-workbench{grid-column:auto}.curriculum-header h1,.ability-page>header h1{font-size:39px}.weekly-route,.weekly-route ol{grid-template-columns:1fr}.admin-tabs{overflow:auto}.admin-tabs button{white-space:nowrap}.account-row{grid-template-columns:1fr 1fr}.account-row span:nth-child(3),.account-row span:nth-child(4){display:none}.pack-summary{grid-template-columns:1fr 1fr}.permission-table{overflow:auto}.permission-row{min-width:700px}.audit-row{grid-template-columns:1fr 1fr}.audit-row span:nth-child(3),.audit-row span:nth-child(4){grid-column:1/-1}}.current-plan-band{border:3px solid var(--line);background:#fff8db;grid-template-columns:1.7fr 1fr auto;align-items:center;gap:18px;margin:20px 0;padding:16px 18px;display:grid;box-shadow:5px 5px #d5c18a}.current-plan-band span,.current-plan-band small,.current-plan-band strong{display:block}.current-plan-band span{color:var(--green2);letter-spacing:.1em;font-size:9px;font-weight:900}.current-plan-band strong{margin:3px 0;font-family:STKaiti,KaiTi,serif;font-size:20px}.current-plan-band small{color:#66736f;font-size:10px}.current-plan-band .progress{margin:7px 0 0}.current-plan-band button{border:2px solid var(--line);background:var(--gold);cursor:pointer;padding:10px 14px;font-weight:900}.quest-skill{border-left:3px solid var(--green2);background:#edf1e5;margin:10px 0;padding:7px 9px;font-size:9px;font-weight:800}.adventure-loading{text-align:center;border:3px solid var(--line);background:#dcefb1;place-content:center;justify-items:center;min-height:520px;display:grid}.adventure-loading h1{margin:15px 0 4px;font-family:STKaiti,KaiTi,serif;font-size:36px}.adventure-loading p{color:#61716f}.child-subpage>header{border:3px solid var(--line);background:#fff8dc;padding:30px;box-shadow:6px 6px #d8c697}.child-subpage>header h1{margin:2px 0;font-family:STKaiti,KaiTi,serif;font-size:45px}.child-subpage>header p{color:#60716d;margin:0}.task-backpack{gap:15px;margin-top:22px;display:grid}.task-backpack article{border:3px solid var(--line);background:#fffdf5;grid-template-columns:72px 1fr auto;align-items:center;gap:18px;padding:20px;display:grid;box-shadow:5px 5px #d7caab}.task-backpack article>span{color:#fff;border:3px solid var(--line);background:#35515a;place-items:center;width:64px;height:64px;font-size:28px;font-weight:900;display:grid}.task-backpack article.completed>span{background:var(--green)}.task-backpack small,.task-backpack em{color:var(--green2);font-size:9px;font-style:normal;font-weight:800}.task-backpack h2{margin:3px 0;font-family:STKaiti,KaiTi,serif;font-size:25px}.task-backpack p{color:#62716e;font-size:11px;line-height:1.6}.task-backpack button,.works-grid button{border:2px solid var(--line);background:var(--gold);cursor:pointer;padding:11px 15px;font-weight:900}.works-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px;display:grid}.works-grid article{border:3px solid var(--line);background:#fffdf5;padding:20px;box-shadow:5px 5px #d7caab}.works-grid small{color:var(--green2);margin-top:12px;font-size:9px;display:block}.works-grid h2{font-family:STKaiti,KaiTi,serif;font-size:24px}.works-grid blockquote{border-left:4px solid var(--gold);white-space:pre-wrap;background:#f3eedf;min-height:115px;margin:12px 0;padding:13px;font-size:11px;line-height:1.7}.works-grid article>div{justify-content:space-between;margin:12px 0;font-size:10px;display:flex}.works-grid em{color:var(--green2);font-style:normal}.empty-shelf{text-align:center;background:#fffdf5;border:3px dashed #a49c83;grid-column:1/-1;padding:70px}.empty-shelf>span{font-size:50px}.reward-dashboard{grid-template-columns:repeat(3,1fr);gap:15px;margin:22px 0;display:grid}.reward-dashboard article{background:var(--forest);color:#fff8df;border:3px solid var(--line);padding:22px;box-shadow:5px 5px #98a273}.reward-dashboard small,.reward-dashboard strong{display:block}.reward-dashboard strong{margin:8px 0;font-size:27px}.reward-dashboard p{color:#bbd3c8;font-size:10px}.reward-dashboard button{border:2px solid var(--line);background:var(--gold);cursor:pointer;padding:9px 12px;font-weight:900}.reward-ledger{border:3px solid var(--line);background:#fffdf5;padding:20px}.reward-ledger h2{font-family:STKaiti,KaiTi,serif;font-size:26px}.reward-ledger>div{border-top:1px solid #ddd3b8;grid-template-columns:70px 1fr auto;gap:12px;padding:12px 0;font-size:10px;display:grid}.reward-ledger>div span{color:var(--green2);font-weight:900}.reward-ledger>div em{font-style:normal}.plan-assignment{border:3px solid var(--line);background:#e8f1df;grid-template-columns:minmax(250px,1.5fr) repeat(4,minmax(120px,.75fr)) auto;align-items:end;gap:10px;margin:20px 0;padding:18px;display:grid;box-shadow:5px 5px #b5c89d}.plan-assignment>div h2{margin:2px 0;font-family:STKaiti,KaiTi,serif;font-size:24px}.plan-assignment>div p{margin:0;font-size:10px;line-height:1.55}.plan-assignment label{font-size:9px;font-weight:900}.plan-assignment select{border:2px solid var(--line);width:100%;min-width:0;font:inherit;background:#fffdf5;margin-top:5px;padding:9px;font-size:10px;display:block}.plan-assignment>button{border:2px solid var(--line);background:var(--gold);cursor:pointer;padding:10px 12px;font-weight:900}.plan-assignment>button:disabled{opacity:.5;cursor:not-allowed}.task-focus{border-left:5px solid var(--green2);background:#edf3e6;margin:16px 0;padding:14px}.task-focus small,.task-focus strong,.task-focus span{display:block}.task-focus small{color:var(--green2);font-size:9px;font-weight:900}.task-focus strong{margin:5px 0;font-size:13px;line-height:1.65}.task-focus span{color:#65736f;font-size:9px}.task-options{gap:7px;margin:15px 0;display:grid}.task-options>small{color:#b86b22;font-size:9px;font-weight:900}.task-options button{text-align:left;cursor:pointer;background:#fffdf5;border:2px solid #bbb6a1;grid-template-columns:28px 1fr;gap:8px;padding:9px;display:grid}.task-options button.selected{border-color:var(--green);background:#e0f0d7}.task-options button b{background:#e9e5d7;place-items:center;display:grid}.task-feedback{color:#7c531e;background:#fff0d0;border-left:4px solid #b86b22;padding:10px 12px;font-size:10px}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}.reward-celebration-backdrop{background:#0d251cd9}.reward-celebration{text-align:center;background:#fff3c9;max-width:560px}.reward-chest{background:var(--gold);border:5px solid var(--line);place-items:center;width:92px;height:72px;margin:0 auto 15px;font-size:42px;display:grid;box-shadow:7px 7px #9a7435}.earned-grid{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;display:grid}.earned-grid strong{background:var(--forest);color:#fff5d8;border:3px solid var(--line);padding:20px;font-size:25px}.earned-grid small{color:#9bd7b8;margin-top:5px;font-size:9px;display:block}.chest-bonus{border:2px solid var(--green);background:#e3f0d5;padding:14px}.chest-bonus b,.chest-bonus span{display:block}.chest-bonus span{color:var(--green2);margin-top:5px;font-size:11px}@media (width<=1100px){.plan-assignment{grid-template-columns:1fr 1fr 1fr}.plan-assignment>div{grid-column:1/-1}.works-grid{grid-template-columns:1fr 1fr}}@media (width<=800px){.current-plan-band,.task-backpack article,.reward-ledger>div{grid-template-columns:1fr}.current-plan-band button,.task-backpack button{width:100%}.works-grid,.reward-dashboard,.plan-assignment{grid-template-columns:1fr}.plan-assignment>div{grid-column:auto}.child-subpage>header h1{font-size:36px}.earned-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.source-note em{color:#66736f;font-style:normal;line-height:1.55}.child-code{gap:6px}.child-code input{text-align:center;width:112px}.child-code button:disabled{cursor:not-allowed;opacity:.55}.phone-login{background:#f2f5e9;border:1px solid #bdc7b7;grid-column:1/-1;grid-template-columns:minmax(180px,1fr) auto;gap:8px;padding:12px;display:grid}.phone-login span{color:var(--green2);grid-column:1/-1;font-size:10px;font-weight:900}.phone-login input{border:2px solid var(--line);background:#fffdf5;min-width:0;padding:10px 12px;font-weight:800}.phone-login button{border:2px solid var(--line);background:var(--gold);cursor:pointer;padding:10px 13px;font-weight:900}.phone-login button:disabled{cursor:not-allowed;opacity:.55}.phone-login .phone-back{color:#65746f;text-align:left;background:0 0;border:0;grid-column:1/-1;padding:2px;font-size:10px}.admin-login{background:#f1eef7;border:1px solid #c4bcd6;grid-column:1/-1;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto;gap:8px;padding:12px;display:grid}.admin-login input{border:2px solid var(--line);background:#fffdf5;min-width:0;padding:10px 12px;font-weight:800}.admin-login button{border:2px solid var(--line);cursor:pointer;background:#d8d1e9;padding:10px 13px;font-weight:900}.admin-login button:disabled{cursor:not-allowed;opacity:.55}.account-login{background:#f2f5e9;border:1px solid #bdc7b7;grid-column:1/-1;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto;gap:8px;padding:12px;display:grid}.account-login input{border:2px solid var(--line);background:#fffdf5;min-width:0;padding:10px 12px;font-weight:800}.account-login button{border:2px solid var(--line);background:var(--gold);cursor:pointer;padding:10px 13px;font-weight:900}.account-login button:disabled{cursor:not-allowed;opacity:.55}.demo-login{color:var(--ink);text-align:center;place-items:center;text-decoration:none;display:inline-grid}.account-create{background:#edf1e5;border:1px solid #c9c4ae;grid-template-columns:1.1fr .75fr 1.2fr 1.2fr auto;align-items:end;gap:8px;margin:18px 0;padding:14px;display:grid}.account-create label{font-size:9px;font-weight:900}.account-create input,.account-create select{border:2px solid var(--line);min-width:0;font:inherit;background:#fffdf5;padding:9px;font-size:11px}.account-create button{border:2px solid var(--line);background:var(--gold);cursor:pointer;padding:9px 12px;font-weight:900}.account-create button:disabled{cursor:not-allowed;opacity:.55}.one-time-code{background:#fff3cd;border-left:4px solid #b86b22;margin:12px 0;padding:13px 15px;font-size:11px;line-height:1.65}.one-time-code b{letter-spacing:.18em;color:var(--green2);font-family:monospace;font-size:20px}.account-row small{color:#78827e;margin-top:3px;display:block}.account-row button:disabled{cursor:not-allowed;opacity:.45}.credential-note{border-left:4px solid var(--green2);background:#fff3cd;align-items:center;gap:10px;margin:12px 0;padding:12px 14px;font-size:10px;line-height:1.6;display:flex}.credential-note b{white-space:nowrap;color:var(--green2)}.credential-reset{background:#f1eef7;border:1px solid #c4bcd6;grid-template-columns:minmax(150px,1.2fr) minmax(150px,1fr) minmax(160px,1.2fr) auto;align-items:end;gap:8px;margin-top:16px;padding:14px;display:grid}.credential-reset h3{grid-column:1/-1;margin:0;font-family:STKaiti,KaiTi,serif;font-size:21px}.credential-reset label{font-size:9px;font-weight:900}.credential-reset input,.credential-reset select{border:2px solid var(--line);width:100%;min-width:0;font:inherit;background:#fffdf5;margin-top:4px;padding:8px;font-size:10px;display:block}.credential-reset button{border:2px solid var(--line);cursor:pointer;background:#d8d1e9;padding:9px 12px;font-weight:900}.credential-reset button:disabled{cursor:not-allowed;opacity:.5}.structure-tools{border-top:2px solid var(--line);margin-top:22px;padding-top:18px}.structure-tools h3{margin:0 0 12px;font-family:STKaiti,KaiTi,serif;font-size:23px}.structure-form{background:#f3eedf;border:1px solid #d5ccb6;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));align-items:end;gap:7px;margin:8px 0;padding:10px;display:grid}.structure-form label{font-size:9px;font-weight:900}.structure-form input,.structure-form select{width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #aaa58f;margin-top:4px;padding:7px;font-size:10px;display:block}.structure-form button{border:2px solid var(--line);cursor:pointer;background:#fff3cd;padding:8px;font-weight:900}.structure-counts{color:#687571;font-size:9px}@media (width<=800px){.account-create,.credential-reset{grid-template-columns:1fr}.account-create button,.credential-reset button{width:100%}.credential-reset h3{grid-column:1}.child-code{flex-wrap:wrap}.child-code input{width:100%}.phone-login,.admin-login,.account-login{grid-template-columns:1fr}.phone-login button,.phone-login span,.phone-login .phone-back,.admin-login button,.account-login button{grid-column:1}}.reward-hud{align-items:stretch;gap:8px;display:flex}.xp-balance{border:2px solid var(--line);background:var(--forest);color:#fff9df;cursor:pointer;text-align:left;width:136px;padding:6px 8px;box-shadow:3px 3px #9aa576}.xp-balance>span{justify-content:space-between;align-items:center;gap:8px;display:flex}.xp-balance b{color:#8ee4b7;font-size:11px}.xp-balance small{color:#fff3c9;font-size:8px}.xp-balance i{background:#0d281f;border:1px solid #8da298;height:7px;margin-top:5px;display:block}.xp-balance em{background:linear-gradient(90deg,#54d19d,#f6c646);height:100%;transition:width .25s;display:block}.quest-map{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:28px;min-height:0;padding:30px;display:grid}.quest-map .quest-card{flex-direction:column;width:auto;min-width:0;display:flex;position:relative;inset:auto}.quest-map .quest-card.q3{grid-column:1/-1;justify-self:center;width:calc(50% - 14px)}.quest-card .quest-body{flex-direction:column;flex:1;display:flex}.quest-card .quest-body p{min-height:0}.quest-card .quest-body button{margin-top:auto}.quest-card .quest-meta{align-items:flex-end;gap:12px}.quest-card .quest-meta span:last-child{white-space:nowrap}.map-path{pointer-events:none;width:54%;height:58%;top:18%;left:24%}.practice-score-result{border:2px solid var(--green);background:#e2f1d8;grid-template-columns:1fr auto;gap:5px 12px;margin:15px 0;padding:13px;display:grid;box-shadow:3px 3px #9db985}.practice-score-result span{font-size:11px}.practice-score-result span b{color:var(--green2);font-size:19px}.practice-score-result>strong{color:var(--green2);align-self:center;font-size:16px}.practice-score-result small{color:#5d6f68;grid-column:1/-1;font-size:9px}.practice-submit{width:100%;margin-top:12px}.reward-source{color:#61716d;margin:-5px 0 14px;font-weight:800}.score-xp-link{text-align:left;background:#eef1e3;border:2px solid #a9ad98;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:12px 16px;display:grid}.score-xp-link span{color:#68746f;font-size:10px;font-weight:900}.score-xp-link strong{color:var(--green2);font-size:32px}.score-xp-link strong small{margin-left:3px;font-size:10px}.score-xp-link i{color:#b57b20;font-size:24px;font-style:normal}.xp-rule-note{border-left:4px solid var(--gold);color:#6c715f;text-align:left;background:#fff9e8;margin:10px 0;padding:9px 12px;font-size:10px}@media (width<=1320px){.child-grid{grid-template-columns:1fr}.right-rail{grid-template-columns:1fr 1fr;display:grid}.agency-card{grid-column:1/-1}}@media (width<=900px){.quest-map{grid-template-columns:1fr}.quest-map .quest-card.q3{grid-column:auto;width:100%}.map-path{display:none}}@media (width<=800px){.signed-account{display:none}.reward-hud{flex:1}.xp-balance{flex:1;max-width:160px}.gem-balance{min-width:58px}.quest-map{padding:14px;display:grid}.quest-card{margin-bottom:0}.score-xp-link{grid-template-columns:1fr auto}.score-xp-link i{display:none}}body,body *{font-family:var(--font-kai)!important}.eyebrow,.level,.xp-balance,.gem-balance,.lesson-no,.one-time-code b,.child-code input,input[inputmode=numeric],.score-xp-link strong,.practice-score-result b,.practice-score-result>strong{font-variant-numeric:tabular-nums;font-family:var(--font-rounded)!important}.admin-loading{padding:30px}.pack-status{border:2px solid var(--line);padding:7px 10px;font-size:11px;font-weight:900}.pack-status.published{color:var(--green2);background:#dff2d0}.pack-status.draft{color:#8a5a0b;background:#fff0b7}.curriculum-editor-layout{grid-template-columns:260px minmax(0,1fr);gap:16px;display:grid}.editor-unit-list{flex-direction:column;gap:7px;display:flex}.editor-unit-list button{text-align:left;cursor:pointer;background:#fffaf0;border:1px solid #d8cfb7;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;padding:9px;display:grid}.editor-unit-list button.active{border:2px solid var(--line);background:#fff0b7;box-shadow:3px 3px #c7b47d}.editor-unit-list i{border:2px solid var(--line);color:#fff;place-items:center;width:34px;height:34px;font-style:normal;font-weight:900;display:grid}.editor-unit-list b,.editor-unit-list small{display:block}.editor-unit-list small{color:#687673;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;line-height:1.45;overflow:hidden}.editor-forms{gap:14px;display:grid}.editor-card{background:#fffdf5;border:2px solid #d7ceb4;padding:17px}.editor-card h3{margin:2px 0 13px;font-size:22px}.editor-card label,.publish-panel label{margin:10px 0;font-size:11px;font-weight:800;display:block}.editor-card input,.editor-card select,.editor-card textarea,.publish-panel input{border:2px solid var(--line);background:#fff;width:100%;margin-top:5px;padding:10px;display:block}.editor-card textarea{resize:vertical;line-height:1.6}.editor-card button{border:2px solid var(--line);background:var(--gold);cursor:pointer;width:100%;margin-top:8px;padding:10px;font-weight:900}.editor-card button:disabled,.publish-panel button:disabled,.permission-heading button:disabled{cursor:not-allowed;opacity:.45}.publish-panel{align-self:start;position:sticky;top:96px}.publish-checks{gap:8px;margin:18px 0;display:grid}.publish-checks span{border-left:4px solid var(--green2);background:#ffffff80;padding:8px;font-size:10px}.publish-panel small{color:#687673;margin-top:12px;line-height:1.5;display:block}.permission-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.permission-heading>div:first-child{max-width:760px}.permission-heading>div:last-child{align-items:center;gap:10px;display:flex}.permission-heading button{border:2px solid var(--line);background:var(--gold);cursor:pointer;white-space:nowrap;padding:10px 14px;font-weight:900}.unsaved-count{color:#687673;font-size:10px}.permission-row>span:first-child b,.permission-row>span:first-child small{display:block}.permission-row>span:first-child small{color:#71807c;margin-top:4px;font-size:9px;line-height:1.45}.permission-table.editable .permission-row{align-items:stretch}.permission-table.editable .permission-row>span:not(:first-child){place-items:center;display:grid}.permission-toggle{border:2px solid var(--line);cursor:pointer;min-width:72px;padding:7px 8px;font-size:10px;font-weight:900}.permission-toggle.on{color:#0b5c41;background:#cce9b8}.permission-toggle.off{color:#8a5a0b;background:#fff0bf}.permission-toggle.locked{color:#777;cursor:not-allowed;background:#e8e4d8;border-color:#aaa}.permission-legend{color:#687673;flex-wrap:wrap;gap:16px;margin-top:14px;font-size:10px;display:flex}.permission-legend span{align-items:center;gap:6px;display:flex}.permission-legend i{border:2px solid var(--line);background:#cce9b8;width:16px;height:16px}.permission-legend i.locked{background:#e8e4d8;border-color:#aaa}@media (width<=1000px){.curriculum-editor-layout{grid-template-columns:1fr}.editor-unit-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.publish-panel{position:static}.permission-heading{flex-direction:column;align-items:flex-start}.permission-heading>div:last-child{justify-content:space-between;width:100%}}@media (width<=650px){.editor-unit-list{grid-template-columns:1fr}.permission-heading>div:last-child{flex-direction:column;align-items:stretch}.permission-heading button{width:100%}}.permission-disabled{color:#675c45;background:#f1ead8;border:2px solid #9d8b65;justify-content:space-between;gap:18px;margin:18px 0;padding:15px 18px;display:flex}.permission-disabled b,.permission-disabled span{font-size:11px}
