:root{--paper:#fff6e4;--ink:#4a3a2a;--soft:#8a7560;--line:#ecdcc0;--accent:#ff9f5a;--accent-ink:#7a3a08;--buddy:#d9620f;--card:#fffdf7;font-family:Nunito,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--paper);color:var(--ink)}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}button:disabled{opacity:.5;cursor:default}.center{text-align:center;place-items:center;height:100%;padding:24px;font-size:56px;display:grid}.card-page{max-width:440px;min-height:100%;padding:28px 22px calc(28px + env(safe-area-inset-bottom));flex-direction:column;gap:16px;margin:0 auto;display:flex}.cover-egg{text-align:center;font-size:84px;animation:2.4s ease-in-out infinite wobble}@keyframes wobble{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}h1{text-align:center;letter-spacing:1px;margin:0;font-size:28px}.lead{text-align:center;color:var(--soft);margin:0;line-height:1.6}.note{text-align:center;background:#fdebc8;border-radius:10px;margin:0;padding:8px 12px;font-size:13px}.field{flex-direction:column;gap:8px;display:flex}.field>span{color:var(--soft);font-size:14px}.field input{border:2px solid var(--line);background:var(--card);border-radius:14px;outline:none;padding:12px 14px;font-size:18px}.field input:focus{border-color:var(--accent)}.picks{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.picks.column{grid-template-columns:1fr}.pick{border:2px solid var(--line);background:var(--card);border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;transition:transform .15s,border-color .15s;display:flex}.pick.row{flex-direction:row;justify-content:space-between;padding:12px 16px}.pick small{color:var(--soft);font-size:13px}.pick-emoji{justify-content:center;align-items:flex-end;height:92px;font-size:42px;line-height:1.1;display:flex}.pick-emoji .buddy-art{filter:drop-shadow(0 3px 3px #5032142e);-webkit-user-select:none;user-select:none;width:auto;height:100%}.pick-emoji .buddy-emoji{font-size:42px}.pick.on{border-color:var(--accent);background:#fff0dc;transform:scale(1.03)}.primary{background:var(--accent);color:var(--accent-ink);border-radius:18px;width:100%;padding:15px 18px;font-size:19px;font-weight:700;box-shadow:0 4px #e0803c}.primary:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #e0803c}.ghost{color:var(--soft);padding:10px;font-size:15px}.error{color:#b3261e;text-align:center;margin:0;font-size:14px}.words{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.word-card{border:2px solid var(--line);background:var(--card);border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;display:flex}.word-card b{font-size:15px}.word-card small{color:var(--soft);font-size:12px}.ask{background:#fdebc8;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:12px 14px;display:flex}.ask>span{font-size:15px;font-weight:600}.ask-row{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;display:grid}.ask-btn{border:2px solid var(--line);background:var(--card);border-radius:14px;padding:9px 4px;font-size:16px;font-weight:600;transition:transform .15s,border-color .15s}.ask-btn.on{border-color:var(--accent);color:var(--accent-ink);background:#fff0dc;transform:scale(1.04)}.ask small{color:var(--soft);font-size:13px}.reader{flex-direction:column;max-width:520px;height:100%;margin:0 auto;display:flex}.bar{padding:calc(8px + env(safe-area-inset-top)) 16px 8px;color:var(--soft);justify-content:space-between;align-items:center;font-size:13px;display:flex}.bar select{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:4px 8px;font-size:13px}.scene{border-radius:24px;flex-shrink:0;place-items:center;height:31vh;min-height:150px;margin:0 16px;transition:height .3s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 -30px 40px #ffffff59}.reader.choosing .scene{height:25vh}.scene.has-art{box-shadow:0 2px 10px #7a501e26}@keyframes fade{0%{opacity:0}to{opacity:1}}.scene-art{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;animation:.5s fade;position:absolute;inset:0}.scene-props{letter-spacing:6px;opacity:.9;font-size:40px;animation:.5s fade;transform:translateY(-34px)}.scene-buddy{filter:drop-shadow(0 5px 4px #50321438);pointer-events:none;justify-content:center;align-items:flex-end;height:80%;animation:2s ease-in-out infinite bob;display:flex;position:absolute;bottom:3%;left:50%;transform:translate(-50%)}.scene-buddy .buddy-art{-webkit-user-select:none;user-select:none;width:auto;height:100%;animation:.4s fade}.scene-buddy .buddy-emoji{font-size:72px;line-height:1}.listen{z-index:2;background:var(--accent);color:var(--accent-ink);white-space:nowrap;border-radius:999px;padding:12px 22px;font-size:19px;font-weight:700;animation:1.2s ease-in-out infinite nudge;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 4px #e0803c,0 6px 16px #50280a40}@keyframes nudge{50%{transform:translate(-50%)scale(1.07)}}.spot-hatch{bottom:9%;left:47%}.spot-map{left:58%}.spot-shelter{left:40%}@keyframes bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-6px)}}.shot-garden{background:linear-gradient(#bfe8ff,#d9f5c2 60%,#a8dc8a)}.shot-hatch{background:linear-gradient(#ffe9b8,#ffd6a0 60%,#b9e39a)}.shot-eat{background:linear-gradient(#ffe2d0,#ffd0c0 60%,#c7e8a4)}.shot-map{background:linear-gradient(#f6e7c4,#ecd9a8 60%,#d8c48c)}.shot-forest{background:linear-gradient(#cfeccf,#a7d8b0 60%,#7fbf90)}.shot-shelter{background:linear-gradient(#b9c8dc,#9fb3cc 60%,#7f9a8c)}.text{flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px 22px 8px;display:flex;overflow-y:auto}.story-text{white-space:pre-wrap;margin:0;font-size:23px;font-weight:600;line-height:1.6}.seg{border-radius:8px;padding:2px 0;transition:background .2s}.seg.buddy{color:var(--buddy)}.seg.zh{color:var(--ink);font-size:19px;font-weight:400}.seg.reading{background:#ffe7a8;box-shadow:0 0 0 3px #ffe7a8}.w{cursor:pointer;border-radius:6px}.w.picked{background:#ffd08a;box-shadow:0 0 0 2px #ffd08a}.tip{background:var(--card);border:2px solid var(--line);border-radius:16px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.tip b{font-size:20px}.tip span{color:var(--soft);flex:1;font-size:17px}.tip button{background:#fdebc8;border-radius:12px;padding:6px 10px;font-size:14px}.tip .x{color:var(--soft);background:0 0}.zh-line{color:var(--soft);background:#f4ead4;border-radius:14px;margin:0;padding:10px 14px;font-size:16px;line-height:1.6}.tools{gap:10px;display:flex}.tools button{border:1px solid var(--line);background:var(--card);color:var(--soft);border-radius:999px;padding:6px 12px;font-size:14px}.actions{padding:10px 16px calc(14px + env(safe-area-inset-bottom));flex-direction:column;gap:8px;display:flex}.waiting{text-align:center;color:var(--soft);margin:0;padding:15px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.choices{flex-direction:column;gap:8px;display:flex}.choice{border:2px solid var(--accent);background:var(--card);text-align:left;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;padding:8px 14px;display:flex}.choice b{font-size:17px}.choice small{color:var(--soft);font-size:13px}.choice.own{border-style:dashed;border-color:var(--line);justify-content:center}.choice.own b{color:var(--soft);font-size:15px;font-weight:600}.idea{flex-direction:column;gap:8px;display:flex}.idea input{border:2px solid var(--accent);background:var(--card);border-radius:14px;outline:none;padding:12px 14px;font-size:17px}.back{padding:4px;font-size:13px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
