@font-face{font-family:Round;src:local('Avenir Next')}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{font-family:Round,'Avenir Next','PingFang SC',sans-serif;color:#342c4b;background:#e8e3f2}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:0;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #627b40;outline-offset:5px}button:disabled{cursor:wait;opacity:.6}button:hover:not(:disabled){filter:brightness(1.035);transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(1px)}button{transition:transform .18s,background .18s}[hidden]{display:none!important}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none;outline:none}header{position:fixed;top:28px;left:34px;right:32px;display:flex;align-items:center;justify-content:space-between;z-index:4;pointer-events:none}header>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#352a49;font-size:10px;line-height:1.35;letter-spacing:2px}.brand strong{font-size:12px;letter-spacing:1.2px}.brand-mark{font-family:Georgia,serif;line-height:1;font-style:italic;font-weight:bold;font-size:38px;background:#fff8e6;border:1px solid #d4c9b8;width:50px;height:50px;border-radius:18px;text-align:center}.topright{display:flex;gap:10px;align-items:center}.topright button{background:#fffaf1e8;border:1px solid #d6cbd5;border-radius:50%;width:44px;height:44px;font-size:23px}.topright #book-btn{border-radius:30px;width:auto;padding:0 18px;font-size:14px;display:flex;gap:8px;align-items:center}.welcome{position:absolute;left:6%;top:26%;width:43%;max-width:620px;z-index:3;pointer-events:none}.welcome button{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:2.6px;font-weight:800;color:#706281;display:flex;align-items:center;gap:9px}.eyebrow>span{width:6px;height:6px;background:#658947;border-radius:50%}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(37px,4.6vw,73px);letter-spacing:-2.5px;line-height:1.08;font-weight:400;margin:22px 0}h1 em{font-weight:400;color:#98692e;position:relative}h1 em:after{content:'';position:absolute;left:0;right:0;bottom:0;height:5px;background:#e7b84955;transform:rotate(-3deg)}.intro-cn{font-size:16px;color:#655971;line-height:1.8}.start-actions{display:flex;align-items:center;gap:16px;margin-top:28px}.primary{background:#455c37;color:#fffcee;padding:14px 23px;border-radius:15px;font-weight:700;font-size:14px;box-shadow:0 4px 0 #304525}.secondary{background:#eee9db;padding:12px 17px;border-radius:12px;font-weight:700;font-size:13px;border:1px solid #dcd3c2}.text-button{background:transparent;padding:12px 8px;font-size:13px;color:#796787}.chapter-preview{display:flex;align-items:center;gap:16px;border-top:1px solid #c9bed3;width:325px;margin-top:30px;padding-top:22px}.chapter-preview div{display:grid;gap:5px}.chapter-preview small{font-size:8px;letter-spacing:2px;color:#84728b}.chapter-preview b{font-size:13px;font-weight:600}.chapter-preview div>span{font-size:11px;color:#796c81}.egg-icon{font-size:34px;color:#b58a3b;background:#f4dfb2;border-radius:50% 50% 45% 45%;width:42px;height:52px;text-align:center}#load-status{font-size:11px;color:#87798e;min-height:15px;margin-top:14px}.bottom-controls{position:absolute;bottom:20px;left:32px;right:32px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#71697a;z-index:3;pointer-events:none}.bottom-controls button{pointer-events:auto;background:#fffaf1d9;border:1px solid #d9d0db;border-radius:22px;padding:10px 15px}.movement{display:flex;align-items:center;gap:8px;background:#f8f2f3b8;padding:9px 12px;border-radius:12px;backdrop-filter:blur(8px)}kbd{font:inherit;letter-spacing:2px;color:#51455b}.movement i{width:1px;height:11px;background:#b3aab9;margin:0 5px}#journey{position:absolute;top:120px;left:33px;width:210px;padding:20px 21px;background:#fffbf2ed;border:1px solid #e1d5cc;border-radius:21px;z-index:3;box-shadow:0 7px 25px #594a7220}#journey>small{font-size:8px;letter-spacing:2px;color:#928373}.journey-heading{display:flex;justify-content:space-between;align-items:center;margin:10px 0 15px;font-size:13px}#step-count{font-size:10px;color:#907c90}.step{display:flex;gap:10px;align-items:center;font-size:11px;color:#9b8d9d;margin:12px 0}.step:last-child{margin-bottom:0}.step i{font-size:9px;font-style:normal;border:1px solid #d6ccd8;width:19px;height:19px;border-radius:50%;display:grid;place-items:center}.step.active{color:#4f663c;font-weight:800}.step.active i{background:#526b41;color:white;border-color:#526b41}.step.done{color:#6d785d}.step.done i{border-color:#b9c4a7;background:#edf1e5}.mission{position:absolute;bottom:64px;left:50%;transform:translateX(-50%);width:min(590px,calc(100% - 36px));background:#fffaf0;border:1px solid #e2d2bb;border-radius:24px;padding:20px 26px 16px;z-index:5;box-shadow:0 12px 35px #54426720}.mission-top{display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:1.4px;color:#958578}#saved-note{letter-spacing:0;font-size:9px;color:#99907f}.mission h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(23px,2.4vw,34px);margin:11px 0 7px;letter-spacing:-.4px}.mission #feedback{font-size:12px;line-height:1.55;color:#837482;margin:0 0 12px;min-height:18px}.mission-actions{display:flex;align-items:center;gap:10px}.mission-actions .primary{margin-left:auto;padding:11px 17px}.mission.solved{border-color:#abc493}.mission.solved #feedback{color:#4b7340}#speech-status{font-size:10px;color:#92663c;margin:8px 0 0;min-height:0}#speech-status:empty{display:none}#explore-banner{position:absolute;bottom:73px;left:50%;transform:translateX(-50%);z-index:5;border-radius:20px;background:#fff9ef;padding:12px 15px 12px 23px;display:flex;align-items:center;gap:24px;white-space:nowrap;font-size:10px;letter-spacing:1px}#tooltip{position:absolute;pointer-events:none;background:#fff9eb;border:1px solid #dccdb9;border-radius:12px;padding:8px 14px;z-index:3;font-size:13px;box-shadow:0 5px 15px #35294d18}#toast{position:absolute;left:50%;top:100px;transform:translateX(-50%);z-index:8;background:#443650ed;color:#fff7e7;padding:12px 22px;border-radius:25px;font-size:13px;text-align:center;max-width:80%}dialog{border:1px solid #ded1c3;border-radius:26px;background:#fffaf0;padding:38px;color:#42314f;max-width:min(800px,90vw);max-height:88vh;overflow:auto;box-shadow:0 25px 100px #30213b40}dialog::backdrop{background:#3d315c60;backdrop-filter:blur(7px)}dialog h2{font-family:Georgia,'PingFang SC',serif;font-size:30px;font-weight:500}dialog p{font-size:14px;color:#77637d;line-height:1.9}.close{position:absolute;right:17px;top:13px;background:transparent;font-size:26px}.about-grid{display:grid;grid-template-columns:230px 1fr;gap:32px;align-items:center}.about-grid img{width:100%;border-radius:15px;transform:rotate(-3deg)}.about-grid small{font-size:11px;color:#998a92;line-height:1.8;display:block}.about-grid .eyebrow{font-size:8px;letter-spacing:1.5px}#finish-dialog{text-align:center;width:510px}.big-star{font-size:70px;color:#c49d44;margin:20px 0 0}#finish-dialog .eyebrow{justify-content:center}#results{display:flex;justify-content:center;gap:35px;padding:20px 0;margin:16px 0;border-block:1px solid #e4d8c4}#results strong{display:block;font-family:Georgia,serif;font-size:30px;color:#527041}#results span{font-size:11px;color:#817285}.result-note{font-size:10px!important}.finish-actions{display:flex;justify-content:center;gap:12px;margin-top:23px}#touch-pad{display:none;position:fixed;left:15px;bottom:225px;z-index:6;text-align:center;touch-action:none}#touch-pad button{background:#fff8eddb;border:1px solid #cabed6;width:38px;height:38px;border-radius:12px;margin:2px;font-size:18px}.answer-row{display:flex;gap:9px;margin:13px 0}.answer-row button{flex:1;background:#f0e9db;border:1px solid #daccb7;border-radius:12px;padding:12px 8px;font-size:13px}.answer-row button.selected{background:#dce9ce;border-color:#90ac79}body.playing .welcome{display:none}body.playing .movement{opacity:.8}
@media(max-width:900px){header{top:18px;left:20px;right:20px}.welcome{left:5%;width:49%;top:24%}h1{font-size:45px}.intro-cn{font-size:13px}.chapter-preview{width:280px}.topright #book-btn span{display:none}.topright #book-btn{padding:0;width:42px;justify-content:center}#journey{left:18px;top:95px;width:178px;padding:16px}.mission{bottom:63px}.movement{display:none}.bottom-controls{justify-content:flex-end;bottom:14px;right:18px}.topright{gap:7px}.topright button{width:39px;height:39px}.brand-mark{width:43px;height:43px;font-size:34px}}
@media(max-width:600px){header{top:14px;left:16px;right:14px}.brand{font-size:8px;gap:8px}.brand strong{font-size:10px}.brand-mark{width:38px;height:38px;border-radius:13px;font-size:30px}.topright button{width:34px;height:34px;font-size:19px}.topright #book-btn{width:34px}.welcome{left:24px;right:24px;top:auto;bottom:48px;width:auto;pointer-events:none;background:linear-gradient(0deg,#eae4f3 65%,#eae4f3e8 85%,#eae4f300);padding-top:35px}.eyebrow{font-size:8px;letter-spacing:1.8px}h1{font-size:37px;line-height:1.05;letter-spacing:-1.2px;margin:13px 0}.intro-cn{font-size:12px;margin:10px 0}.start-actions{margin-top:16px;gap:12px}.chapter-preview{display:none}#load-status{font-size:10px}.bottom-controls{bottom:8px}.bottom-controls button{font-size:10px;padding:8px 12px}#journey{top:73px;left:14px;right:14px;width:auto;padding:11px 14px;border-radius:16px}#journey>small{display:none}.journey-heading{margin:0 0 9px;font-size:11px}#steps{display:flex;justify-content:space-between;gap:7px}.step{margin:0;font-size:0}.step i{width:24px;height:24px;font-size:10px}#saved-note{display:none}.mission{bottom:47px;padding:17px 19px 14px;border-radius:21px}.mission h2{font-size:25px}.mission-actions{gap:7px}.mission-actions .secondary{padding:11px;font-size:12px}.mission-actions .text-button{font-size:11px;padding:8px 3px}.mission-actions .primary{font-size:12px;padding:11px 13px}.mission #feedback{font-size:11px}.mission-top{font-size:8px}#explore-banner{white-space:normal;width:calc(100% - 30px);bottom:48px;gap:10px;padding:12px 15px}#explore-banner>span{font-size:9px}#explore-banner button{font-size:11px;white-space:nowrap;padding:12px}dialog{padding:28px 24px}.about-grid{grid-template-columns:1fr;gap:12px}.about-grid img{width:145px;justify-self:center}.about-grid h2{font-size:24px}.about-grid p{font-size:12px}#toast{top:160px;font-size:11px;width:max-content}#help-dialog p{font-size:12px}}
@media(pointer:coarse){body.playing #touch-pad{display:block}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

.story-intro{max-width:600px;bottom:65px}.story-intro #intro-caption{font-family:Georgia,serif;font-size:23px;line-height:1.5;margin:10px 0;color:#493951}.story-cn{font-size:12px;color:#837482}.voice-status{font-size:10px;color:#92663c;margin:10px 0 0}#narration-caption{font-size:14px;line-height:1.5;color:#56445f;border-top:1px solid #e8ddcd;padding-top:10px;margin:12px 0 0}#narration-caption:empty{display:none}@media(max-width:600px){.story-intro{bottom:48px;padding:20px;max-height:65vh;overflow:auto}.story-intro #intro-caption{font-size:19px;line-height:1.5}.topright{gap:5px}.topright button{width:31px;height:31px}#narration-caption{font-size:12px}.voice-status{font-size:9px}}
/* Story-led edition: one continuous passage, then a short activity. */
.mission{width:min(570px,calc(100% - 36px));max-height:calc(100dvh - 170px);overflow:auto;padding:21px 25px 13px}.mission h2{font-size:28px;margin:12px 0}.mission #story-text{font-family:Georgia,serif;font-size:18px;line-height:1.6;color:#59475e;margin:0 0 14px}.mission.active-task #story-text{font-size:14px;line-height:1.5;max-height:90px;overflow:auto;color:#8b7b8a}.mission.active-task h2{font-size:22px;margin:10px 0}.activity-heading{display:flex;justify-content:space-between;font-size:9px;font-weight:bold;letter-spacing:1.5px;color:#718359;border-top:1px solid #e4d8c6;padding-top:12px}#instruction{font-size:20px;font-weight:600;line-height:1.35;margin:10px 0 7px}.mission #feedback{font-size:12px;min-height:18px;margin:8px 0}.story-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e9dfce;margin-top:12px}.story-footer button{padding:9px 0;color:#62784e}.story-footer #speech-status{font-size:9px;text-align:right;color:#8f7e8c;margin:0;max-width:260px}#reading-actions{display:flex;align-items:center;gap:16px}#reading-status{font-size:11px;color:#847385}.mission-actions{justify-content:flex-end}.mission-actions #hint-btn{margin-right:auto}.preview-option{font-size:12px;line-height:1.6;display:flex;gap:10px;align-items:flex-start}.preview-option input{margin-top:4px}.step{font-size:10px}.step.active{font-size:11px}#touch-pad{bottom:330px!important}.mission.solved #feedback{color:#4b7340}@media(min-width:901px){.mission{left:auto;right:30px;bottom:66px;transform:none;width:460px}.welcome{width:45%}}@media(max-width:600px){.mission{bottom:45px;max-height:50dvh;padding:15px 18px 10px}.mission h2{font-size:23px}.mission #story-text{font-size:16px;line-height:1.5}.mission.active-task #story-text{display:none}.mission.active-task h2{font-size:19px;margin:8px 0}#instruction{font-size:18px}.story-footer #speech-status{max-width:170px;font-size:8px}.story-footer .text-button{font-size:11px}.step,.step.active{font-size:0}#touch-pad{bottom:52dvh!important}#journey{top:65px}.brand strong{font-size:9px}.brand{font-size:7px;gap:5px}.topright{gap:4px}.topright button{width:30px;height:30px}#reading-status{font-size:10px}.story-footer{margin-top:8px}#story-text{margin-bottom:10px!important}}
/* A loose book page beside the story; activity controls always start below it. */
.story-page-wrap{display:flow-root}.book-peek{float:right;width:152px;margin:3px 5px 15px 17px;padding:5px 5px 7px;background:#fffdf5;border-radius:2px;box-shadow:0 3px 0 #e8ddcd,0 6px 0 #f9f1df,2px 10px 16px #69534c24;transform:rotate(5deg);transform-origin:center;position:relative}.book-peek:before{content:'';position:absolute;width:42px;height:13px;left:calc(50% - 21px);top:-6px;background:#e6cea688;transform:rotate(-12deg);pointer-events:none}.book-peek img{display:block;width:100%;aspect-ratio:1.5;object-fit:contain;background:#fff9e9}.book-peek span{display:block;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:10px;color:#8c7a64;margin:5px 0 0}.book-peek:hover:not(:disabled){transform:rotate(2deg) translateY(-2px)}.mission.active-task .book-peek{width:132px}.story-page-wrap+#reading-actions,.story-page-wrap~#activity{clear:both}.bottom-controls{gap:9px}.bottom-controls #music-btn{margin-left:auto}.bottom-controls #home-view{margin-left:0}#storybook-dialog{width:min(1100px,94vw);max-width:94vw;padding:27px 28px 18px;overflow:auto}#storybook-dialog>.eyebrow{margin-bottom:18px}#book-full-page{display:block;width:100%;height:min(65vh,680px);object-fit:contain;background:#fff9ed;border-radius:3px}.book-navigation{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px}#book-page-number{font-size:12px;color:#8c7b83}.book-navigation button:disabled{cursor:default}@media(max-width:600px){.book-peek{width:100px;margin:3px 3px 12px 12px;padding:3px 3px 4px}.book-peek span{font-size:8px;margin-top:3px}.mission.active-task .book-peek{position:absolute;right:20px;top:22px;width:85px;margin:0;transform:rotate(5deg)}.mission.active-task h2{padding-right:100px;min-height:62px;display:flex;align-items:center}.mission.active-task .mission-top{padding-right:90px}.mission.active-task .story-page-wrap{height:0}.mission.active-task #activity{margin-top:0}.bottom-controls #music-btn{font-size:10px}#storybook-dialog{padding:23px 13px 14px}#book-full-page{height:auto;max-height:66vh}.book-navigation .secondary{padding:10px;font-size:11px}#storybook-dialog>.eyebrow{font-size:8px;padding-right:20px}}
#world-prompts,#prompt-lines{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}#prompt-lines{overflow:visible;z-index:3}#prompt-lines line{stroke:#fff8db;stroke-width:2;stroke-dasharray:3 4;filter:drop-shadow(0 1px 1px #77634866)}.world-prompt{position:absolute;max-width:240px;background:#fffbeceF;border:1px solid #d9c999;border-radius:18px;padding:10px 15px;font-size:13px;font-weight:700;color:#56663d;box-shadow:0 4px 0 #d6c69e,0 6px 18px #53416220;line-height:1.3;text-align:center;white-space:nowrap}.world-prompt.actionable{pointer-events:auto;background:#fff3c5;color:#655321;cursor:pointer}.world-prompt.actionable:hover{background:#ffedac}.world-prompt.actionable:focus-visible{outline:3px solid #63864b;outline-offset:4px}@media(max-width:600px){.world-prompt{font-size:11px;padding:9px 12px;max-width:210px;border-radius:15px}}

.world-prompt.beside-bobo{width:158px;white-space:normal;text-wrap:balance;line-height:1.45}
@media(max-width:650px){.world-prompt.beside-bobo{width:104px;padding:9px 8px;font-size:11px}}

.brand .back-library{display:block;font-size:10px;letter-spacing:0;margin-top:4px;font-weight:500}.brand:focus-visible{outline:3px solid #63864b;outline-offset:5px;border-radius:8px}
