:root{font-family:'Noto Sans SC','Microsoft YaHei',sans-serif;color:#263d36;background:#f9f6ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.site-header{height:84px;max-width:1240px;margin:auto;padding:0 32px;display:flex;align-items:center;gap:40px}.brand{display:flex;align-items:center;gap:12px;color:#285848;text-decoration:none;font-size:23px;font-weight:800;letter-spacing:.04em;white-space:nowrap}.brand small{display:block;font-size:10px;letter-spacing:.15em;color:#92a49a;font-weight:600}.brand-icon,.login-badge{display:grid;place-items:center;color:#fff;background:#2d755c;border-radius:14px;width:42px;height:42px;font-size:30px;line-height:1}nav{display:flex;gap:6px;margin-left:auto}nav button,.header-logout{border:0;background:transparent;color:#71827a;padding:10px 15px;border-radius:12px;font-size:13px;font-weight:700}nav button:hover,nav .nav-active{color:#287056;background:#e6f1e8}.header-logout{padding:9px 12px}.content{max-width:1180px;margin:auto;padding:25px 32px 85px;min-height:calc(100vh - 154px)}.eyebrow{font-weight:800;font-size:11px;letter-spacing:.23em;color:#dc9f63;margin:0 0 14px}.hero{position:relative;display:grid;grid-template-columns:1.2fr .8fr;min-height:430px;border-radius:28px;overflow:hidden;background:#e5efe5}.hero:before{content:'';position:absolute;width:520px;height:520px;border-radius:50%;background:#d5e8d8;right:-110px;top:-100px}.hero-copy{position:relative;z-index:2;padding:61px 10px 52px 65px}.hero h1{font-size:47px;line-height:1.28;letter-spacing:.02em;margin:0 0 15px;color:#245a49}.hero h1 em{font-style:normal;color:#e9986e}.hero .intro{font-size:15px;color:#70897b;line-height:1.9;max-width:450px;margin:0 0 27px}.hero-actions{display:flex;gap:12px;align-items:center}.primary-btn{background:#27765a;color:white;border:0;border-radius:14px;padding:15px 25px;font-weight:800;box-shadow:0 10px 24px #28745831;display:inline-flex;justify-content:center;align-items:center;gap:18px}.primary-btn:hover{background:#195d46}.outline-btn{border:1px solid #bdd2c3;color:#2d6d56;background:#fff9;border-radius:14px;padding:14px 21px;font-weight:700}.hero-visual{position:relative;display:grid;place-items:center}.moon{position:absolute;right:18%;top:10%;font-size:85px;filter:drop-shadow(0 8px 7px #8fab9860)}.book{font-size:180px;position:relative;z-index:1;transform:rotate(-10deg);filter:drop-shadow(0 24px 18px #66917c55)}.spark{position:absolute;font-size:30px}.spark.one{top:22%;left:20%}.spark.two{right:18%;bottom:18%}.float-note{position:absolute;bottom:40px;left:10%;z-index:2;background:white;padding:14px 17px;border-radius:13px;box-shadow:0 10px 25px #48735622;font-size:12px;color:#47715f;font-weight:700}.section-head{display:flex;justify-content:space-between;align-items:end;margin:49px 0 19px}.section-head h2,.page-head h1{font-size:26px;color:#294e40;margin:0 0 5px}.section-head p,.page-head p{color:#90a096;margin:0;font-size:13px}.text-link{border:0;background:none;color:#2e795b;font-size:13px;font-weight:800}.grid{display:grid;grid-template-columns:1.4fr .8fr;gap:22px}.story-card,.side-card,.stat-card,.history-card,.record-card,.settings-card,.player-card{background:#fff;border:1px solid #eeeae2;border-radius:20px;box-shadow:0 10px 24px #453b2410}.story-card{padding:28px;display:flex;gap:25px;min-height:225px}.cover{width:160px;min-width:160px;display:grid;place-items:center;border-radius:15px;font-size:75px}.cover.lavender{background:#eae5f5}.cover.mint{background:#e0f1e5}.cover.sky{background:#e5f0f6}.cover.peach{background:#fff0e6}.cover.yellow{background:#fcf0cf}.story-info{display:flex;flex-direction:column;align-items:start}.tag{font-size:11px;font-weight:800;letter-spacing:.04em;color:#658e76;background:#edf5ee;padding:5px 10px;border-radius:30px}.story-info h3{font-size:25px;color:#2d493f;margin:12px 0 8px}.story-info p{font-size:13px;color:#9aa69c;line-height:1.75;margin:0 0 auto}.story-info button{margin-top:17px}.side-card{padding:27px;display:flex;flex-direction:column;justify-content:space-between;background:#fff9f2}.side-icon{font-size:42px}.side-card h3{font-size:20px;margin:8px 0}.side-card p{color:#9a9486;font-size:13px;line-height:1.8;margin:0}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}.stat-card{padding:20px 23px;display:flex;align-items:center;gap:14px}.stat-icon{font-size:27px;background:#f1f5ea;border-radius:13px;padding:9px}.stat-card strong{display:block;color:#315746;font-size:23px}.stat-card small{color:#9aab9f;font-size:11px}.page-head{margin-bottom:24px}.page-head h1{font-size:36px}.story-stage{display:grid;grid-template-columns:1fr 300px;gap:23px}.player-card{padding:30px}.player-top{display:flex;align-items:center;gap:20px}.player-art{width:96px;height:96px;min-width:96px;border-radius:20px;display:grid;place-items:center;font-size:56px}.player-top h2{font-size:25px;margin:8px 0 3px}.player-top p{font-size:13px;color:#9ba79e;margin:0}.step-line{margin:34px 0 12px;display:flex;justify-content:space-between;color:#7f9788;font-size:12px;font-weight:700}.progress-track{height:8px;background:#edf1e9;border-radius:9px;overflow:hidden}.progress-fill{height:100%;background:#71ae86;transition:width .3s}.story-text{margin:33px 0;min-height:156px;color:#45584e;font-size:21px;line-height:2.05;letter-spacing:.03em}.player-controls{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap}.round-btn{border:1px solid #dce9df;background:white;color:#327456;width:48px;height:48px;border-radius:50%;font-size:19px}.play-btn{width:64px;height:64px;border:0;border-radius:50%;background:#2d795e;color:white;font-size:24px;box-shadow:0 8px 18px #21765a40}.player-side{display:flex;flex-direction:column;gap:16px}.tip-card,.question-card{background:#eef4e9;border-radius:19px;padding:24px}.tip-card h3,.question-card h3{margin:8px 0;color:#315c48}.tip-card p,.question-card p{font-size:13px;color:#688376;line-height:1.8}.tip-card .side-icon{font-size:33px}.question-card{background:#fff3e6}.question-card h3{color:#ad6e43}.question-card p{color:#977a66}.question-card input,.settings-card input,.settings-card select{width:100%;border:1px solid #e0e7dd;border-radius:11px;padding:12px 13px;background:white;color:#395548;outline:0}.question-card input:focus,.settings-card input:focus{border-color:#67ad80}.question-card button{margin-top:11px}.answer-reply{background:#fff;border-radius:12px;padding:13px;margin-top:13px!important;color:#498161!important}.voice-btn{font-size:12px!important}.muted{color:#9aab9f;font-size:12px}.history-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.history-card{padding:17px;cursor:pointer;text-align:left;border:1px solid #eeeae2}.history-card .cover{width:100%;height:150px;font-size:64px}.history-card h3{font-size:18px;color:#314e40;margin:14px 2px 6px}.history-card p{font-size:12px;color:#9ba69c;margin:0 2px 9px}.empty{padding:60px 20px;text-align:center;border:1px dashed #d9e4d6;border-radius:20px;color:#8c9e90}.empty strong{display:block;color:#395c46;font-size:20px;margin:9px}.growth-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;margin:20px 0 30px}.growth-summary .stat-card{min-height:100px}.record-list{display:grid;gap:14px}.record-card{padding:20px;display:flex;gap:18px;align-items:start}.record-mark{font-size:28px}.record-card h3{margin:0 0 7px;color:#3b5848}.record-card p{margin:4px 0;color:#7c8e80;font-size:13px;line-height:1.7}.record-card small{color:#a8afa5}.settings-card{padding:30px;max-width:650px}.field{margin-bottom:20px}.field label{display:block;font-size:13px;font-weight:700;color:#496150;margin-bottom:8px}.field small{display:block;color:#9daa9c;margin-top:7px}.settings-card .primary-btn{margin-top:6px}.login-overlay{position:fixed;inset:0;background:#f6f6ee;z-index:9;display:grid;place-items:center;padding:20px}.login-overlay.hidden{display:none}.login-card{width:min(100%,420px);background:white;border:1px solid #e7ede4;border-radius:25px;padding:40px;box-shadow:0 30px 80px #48604720}.login-badge{width:50px;height:50px;margin-bottom:25px}.login-card h1{color:#2f5d49;font-size:32px;margin:0 0 8px}.login-card p:not(.eyebrow){color:#8fa195;line-height:1.7;font-size:14px}.login-card label{font-weight:700;font-size:13px;display:block;margin:25px 0 7px}.login-card input{width:100%;padding:14px;border:1px solid #dbe5dc;border-radius:12px}.login-card .primary-btn{width:100%;margin-top:15px}.error{color:#bf5d51!important;min-height:20px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#2e624f;color:white;border-radius:12px;padding:12px 20px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:10;font-size:13px}.toast.show{opacity:1}footer{max-width:1180px;margin:auto;padding:25px 32px;border-top:1px solid #e8e8dd;color:#a3aea4;font-size:12px;display:flex;justify-content:space-between}@media(max-width:850px){.site-header{height:auto;padding:19px 20px;flex-wrap:wrap;gap:13px}.brand{font-size:20px}nav{order:3;width:100%;overflow:auto;margin:0}.header-logout{margin-left:auto}.content{padding:18px 19px 55px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 33px 25px}.hero h1{font-size:34px}.hero-visual{height:220px}.book{font-size:130px}.moon{font-size:64px;top:0;right:21%}.float-note{bottom:12px}.grid,.story-stage{grid-template-columns:1fr}.history-grid{grid-template-columns:repeat(2,1fr)}.mini-stats{gap:8px}.stat-card{padding:13px}.stat-card strong{font-size:18px}.stat-icon{font-size:20px}.side-card{gap:10px}.player-side{display:grid;grid-template-columns:1fr 1fr}}@media(max-width:580px){nav{gap:2px}nav button{font-size:11px;padding:9px 8px}.hero h1{font-size:31px}.hero-copy{padding:34px 25px 22px}.hero-actions{flex-wrap:wrap}.section-head{margin-top:36px}.story-card{padding:16px;gap:15px;min-height:170px}.cover{width:95px;min-width:95px;font-size:50px}.story-info h3{font-size:19px}.story-info p{font-size:11px}.story-info .text-link{margin-top:9px}.mini-stats{grid-template-columns:repeat(3,1fr)}.stat-card{display:block;text-align:center}.stat-icon{display:block;width:fit-content;margin:0 auto 6px}.player-side{display:block}.player-side>*{margin-bottom:14px}.player-card{padding:21px}.story-text{font-size:18px;min-height:140px}.history-grid{gap:11px}.history-card .cover{height:105px}.history-card h3{font-size:15px}.growth-summary{gap:9px}footer{padding:20px;display:block}footer span{display:block;margin-top:5px}}
.ai-settings{margin-top:20px;background:#f3f8ef}.ai-settings h2{margin:0 0 8px;color:#315746;font-size:21px}.ai-settings p:not(.eyebrow){color:#788d7d;font-size:13px;line-height:1.8;margin:0 0 18px}
