:root{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;color:#25433e;background:#f4f3e7;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #ed8b47;outline-offset:3px}.app-shell{min-height:100vh;display:grid;grid-template-columns:210px 1fr}.rail{background:#285c4e;color:#f9f4dc;padding:30px 20px;display:flex;flex-direction:column;gap:24px}.brand{font-size:19px;font-weight:900;line-height:1.3;letter-spacing:.03em}.brand small{display:block;font-size:11px;opacity:.75;letter-spacing:.13em;margin-top:6px}.steps{display:grid;gap:5px}.step{border:0;background:transparent;color:#c5ded1;text-align:left;padding:10px 12px;border-radius:12px}.step.active{background:#f6e5a8;color:#294d42;font-weight:800}.step.done{color:white}.side-note{margin-top:auto;font-size:12px;line-height:1.6;opacity:.75}.main{min-width:0}.topbar{height:74px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7ded0;font-size:13px;color:#668278}.topbar strong{color:#2f5148;font-size:14px}.content{max-width:1190px;margin:auto;padding:42px 5% 64px}.eyebrow{color:#b76b36;font-size:12px;font-weight:900;letter-spacing:.16em}.title{font-size:clamp(28px,3.5vw,44px);line-height:1.16;letter-spacing:-.04em;margin:12px 0}.lead{font-size:16px;color:#617b70;max-width:700px}.hero{display:grid;grid-template-columns:1fr 0.9fr;gap:44px;align-items:center;min-height:550px}.hero-art{height:400px;position:relative;border-radius:46% 46% 18% 18%;background:#dbe8b7;overflow:hidden}.sun{position:absolute;right:45px;top:35px;width:88px;height:88px;border-radius:50%;background:#f3c76c}.hill{position:absolute;bottom:-80px;left:-40px;width:120%;height:210px;background:#86ad78;border-radius:50% 50% 0 0}.house{position:absolute;bottom:75px;left:23%;width:150px;height:125px;background:#edb979;border:5px solid #315e50;border-radius:8px}.house:before{content:'';position:absolute;left:-25px;top:-74px;border-left:95px solid transparent;border-right:95px solid transparent;border-bottom:72px solid #d86e4e}.house:after{content:'';position:absolute;bottom:0;left:56px;width:38px;height:70px;background:#faf0ce;border:4px solid #315e50;border-bottom:0;border-radius:25px 25px 0 0}.sign-art{position:absolute;bottom:68px;right:14%;font-size:45px;transform:rotate(-5deg)}.card{background:#fffef6;border:1px solid #d9e2d4;border-radius:22px;padding:26px;box-shadow:0 5px 0 rgba(53,87,68,.04)}.card h2,.card h3{margin-top:0}.columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,.7fr);gap:24px;align-items:start}.stack{display:grid;gap:18px}.options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.option{background:#fbfaf2;border:2px solid #e2e8db;border-radius:16px;padding:18px;text-align:left;color:#2c5046;min-height:92px}.option:hover{border-color:#99bea3}.option.selected{background:#edf5d7;border-color:#5f9574;box-shadow:0 3px 0 #b1cba3}.option strong{display:block;font-size:16px}.option span{display:block;font-size:12px;color:#7a9184;margin-top:5px}.field{display:grid;gap:8px;margin:17px 0;font-weight:750;font-size:14px}.field input,.field textarea{width:100%;border:1px solid #ccdacf;border-radius:12px;background:#fff;padding:12px 14px;color:#294b41}.field textarea{min-height:80px;resize:vertical}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.btn{border:0;border-radius:12px;padding:13px 20px;background:#285f4f;color:white;font-weight:800;box-shadow:0 4px 0 #17493b}.btn:hover{background:#39765f}.btn.secondary{background:#f1f4e9;color:#375e51;box-shadow:none;border:1px solid #d7e2d4}.btn.ghost{background:transparent;color:#3d7160;box-shadow:none;padding-left:0}.teacher{background:#f9e9b8;border:1px solid #eddb9f;border-radius:20px;padding:20px}.teacher-head{display:flex;align-items:center;gap:12px;font-weight:900}.chick{width:50px;height:50px;border-radius:50%;background:#f2c75e;display:grid;place-items:center;font-size:26px}.teacher p{margin:12px 0 0;font-size:14px}.tiny{font-size:12px;color:#758b7d}.flow-row{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #dbe5d8;border-radius:14px;background:#fbfcf6;margin:8px 0}.flow-row b{flex:1}.flow-row button{border:0;background:#e6efe1;border-radius:8px;width:34px;height:34px;color:#376251}.status{padding:12px 15px;background:#eef6dd;border-radius:12px;color:#416951;font-size:14px}.warning{background:#fff1df;color:#8b582d}.quiz{display:grid;gap:9px;margin-top:18px}.quiz button{text-align:left;padding:14px;border:1px solid #d8e4d5;border-radius:12px;background:white;color:#355c50}.quiz button:hover{background:#eff5e5}.editor-wrap{margin-top:20px}.review-list{padding-left:20px}.review-list li{margin:10px 0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.work-grid img{width:100%;background:white;border:1px solid #dce4d8;border-radius:14px}.tag{display:inline-block;font-size:12px;border-radius:20px;padding:4px 10px;background:#e7f0df;color:#4e7661}.footnote{font-size:12px;color:#748b7e;margin-top:28px}@media(max-width:800px){.app-shell{display:block}.rail{padding:14px 16px;gap:10px}.brand small,.side-note{display:none}.steps{display:flex;overflow:auto}.step{white-space:nowrap}.topbar{height:55px}.content{padding:30px 20px}.hero,.columns{grid-template-columns:1fr}.hero-art{height:260px;order:-1}.options{grid-template-columns:1fr}.option{min-height:0}.work-grid{grid-template-columns:1fr}}

.storage-warning { padding:16px 20px; margin-bottom:20px; border:3px solid #9c351c; border-radius:12px; background:#fff0db; color:#74220f; font-size:16px; font-weight:700; line-height:1.6; }
.storage-warning[hidden] { display:none; }
