:root{--font-serif:"Kiwi Maru", "Yu Mincho", serif;--font-sans:"Zen Maru Gothic", "Hiragino Maru Gothic ProN", -apple-system, BlinkMacSystemFont, sans-serif;--bg-parchment:#faf6ec;--text-dark:#2c221a;--text-muted:#7d6b5e;--gold-accent:#dfa938;--gold-glow:#dfa93866;--color-fox:#e86a23}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;margin:0;padding:0}html,body,#root{width:100%;height:100%;font-family:var(--font-sans);color:var(--text-dark);background-color:#120e0a;overflow:hidden}button{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}.picturebook-app{background:#14100c;width:100vw;height:100vh;position:relative;overflow:hidden}.webgl-container{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.bookshelf-hud-layer{pointer-events:none;z-index:10;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:2.5rem 3rem;display:flex;position:absolute;top:0;left:0}.bookshelf-header{pointer-events:auto;max-width:540px;animation:.8s cubic-bezier(.32,.72,0,1) fadeInDown}.brand-lockup{color:#fff4df;text-shadow:0 2px 12px #000000a6;align-items:center;gap:.62rem;width:fit-content;margin-bottom:1rem;display:flex}.brand-mark{filter:drop-shadow(0 3px 8px #00000059);width:2.45rem;height:2.45rem;display:block}.brand-name{font-family:var(--font-serif);letter-spacing:-.045em;font-size:1.55rem;font-weight:700}.brand-divider{background:#ffe6bc75;width:1px;height:1.45rem;margin-inline:.12rem}.brand-tagline{color:#ead5b8;letter-spacing:.075em;text-transform:uppercase;font-size:.76rem;font-weight:500}.bookshelf-main-title{font-family:var(--font-serif);color:#fff8eb;text-shadow:0 4px 16px #000000b3;letter-spacing:.02em;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.bookshelf-subtitle{color:#d1bda9;text-shadow:0 2px 8px #0009;font-size:.95rem;line-height:1.5}.book-card-container{pointer-events:auto;align-self:flex-start;max-width:350px;animation:.8s cubic-bezier(.32,.72,0,1) fadeInUp}.book-preview-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1a1410d1;border:1px solid #ffebc833;border-radius:1.75rem;padding:1.5rem;transition:all .4s cubic-bezier(.32,.72,0,1);box-shadow:0 16px 40px #00000080,inset 0 1px 1px #ffffff26}.book-preview-header{align-items:center;gap:1.1rem;margin-bottom:1rem;display:flex}.book-cover-mini{border:1px solid #fff3;border-radius:.6rem;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:78px;display:flex;overflow:hidden;box-shadow:0 6px 14px #0006}.book-cover-thumb{object-fit:cover;border-radius:.5rem;width:100%;height:100%}.book-meta-info{flex-direction:column;display:flex}.book-series-tag{letter-spacing:.05em;margin-bottom:.2rem;font-size:.75rem;font-weight:700}.book-card-title{font-family:var(--font-serif);color:#fff8f0;margin-bottom:.2rem;font-size:1.35rem;font-weight:700}.book-author-text{color:#b09f8e;font-size:.78rem}.book-card-desc{color:#dfcfc0;margin-bottom:1.35rem;font-size:.88rem;line-height:1.6}.book-action-row{align-items:center;display:flex}.btn-open-book{color:#fff;background:linear-gradient(135deg,#f27924,#d4590f);border-radius:9999px;align-items:center;gap:.85rem;padding:.65rem .85rem .65rem 1.4rem;font-size:.95rem;font-weight:700;transition:all .3s cubic-bezier(.32,.72,0,1);display:inline-flex;box-shadow:0 8px 24px #f2792466}.btn-open-book:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 12px 30px #f279248c}.btn-open-book:active{transform:scale(.98)}.btn-icon-circle{background:#ffffff40;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:transform .3s;display:flex}.btn-open-book:hover .btn-icon-circle{transform:rotate(-10deg)scale(1.1)}.book-unavailable-tag{color:#a69180;background:#ffffff0d;border-radius:9999px;padding:.5rem 1rem;font-size:.82rem}.desk-book-actions{flex-direction:column;align-items:center;gap:.55rem;width:100%;display:flex}.desk-book-card{align-self:center}.desk-book-actions .btn-open-book,.desk-return-button{justify-content:center;width:min(100%,245px);min-width:0;height:48px;min-height:48px;padding:.5rem 1rem;position:relative}.desk-book-actions .button-label-sprite{object-fit:contain;width:auto;max-width:190px;height:18px}.story-hud-overlay{pointer-events:none;z-index:10;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:1.8rem 2.2rem;display:flex;position:absolute;top:0;left:0}.story-top-bar{pointer-events:auto;justify-content:space-between;align-items:center;width:100%;display:flex}.story-nav-btn{color:#f7e6d2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#18120ebf;border:1px solid #ffffff26;border-radius:9999px;align-items:center;gap:.5rem;padding:.55rem 1.1rem;font-size:.88rem;font-weight:500;transition:all .25s;display:inline-flex}.story-nav-btn:hover{background:#2d2018e6;border-color:#dfa93866;transform:translateY(-1px)}.scene-progress-container{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#18120eb3;border:1px solid #ffffff1a;border-radius:9999px;align-items:center;gap:.65rem;padding:.4rem .85rem;display:flex}.story-page-progress{color:#f8e8d3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#18120ec7;border:1px solid #ffffff24;border-radius:999px;align-items:baseline;gap:.42rem;min-width:128px;padding:.45rem .7rem .6rem;display:flex;position:relative;overflow:hidden}.story-page-progress span{color:#d2b98d;letter-spacing:.1em;font-size:.55rem;font-weight:800}.story-page-progress strong{font-size:1rem}.story-page-progress small{color:#b9a891;font-size:.72rem}.story-page-progress i{transform-origin:0;background:#edbd6b;width:100%;height:2px;transition:transform .3s;position:absolute;inset:auto auto 0 0}.progress-bead{color:#a49182;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:.75rem;font-weight:700;transition:all .3s cubic-bezier(.32,.72,0,1);display:flex}.progress-bead.active{color:#fff;background:#f27924;transform:scale(1.15);box-shadow:0 0 12px #f27924b3}.progress-bead.completed{color:#1a1208;background:#dfa938}.story-top-actions{align-items:center;gap:.75rem;display:flex}.story-badge-btn{color:#ffd978;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#dfa93833;border:1px solid #dfa93880;border-radius:9999px;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.84rem;font-weight:700;transition:all .2s;animation:3s infinite pulseGlow;display:inline-flex}.story-badge-btn:hover{transform:scale(1.05)}.story-sound-btn{color:#f7e6d2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#18120ebf;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:all .25s;display:flex}.story-sound-btn:hover{color:#fff;background:#2d2018e6}.story-bottom-ribbon{pointer-events:auto;justify-content:center;width:100%;display:flex}.story-ribbon-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#faf6ecf0;border:2px solid #e0c8a6;border-radius:1.75rem;width:100%;max-width:820px;padding:1.35rem 1.8rem;animation:.5s cubic-bezier(.32,.72,0,1) fadeInUp;box-shadow:0 16px 40px #00000073,inset 0 1px 2px #fffc}.story-ribbon-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.65rem;display:flex}.scene-title-group{align-items:baseline;gap:.65rem;display:flex}.scene-number-label{color:#b07c3c;background:#dfa9382e;border-radius:6px;padding:.2rem .6rem;font-size:.75rem;font-weight:700}.scene-title-text{font-family:var(--font-serif);color:#3b281c;font-size:1.25rem;font-weight:700}.interaction-hint-tag{color:#8c5e18;background:#fdf1d6;border:1px dashed #dcb36b;border-radius:9999px;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.78rem;font-weight:500;transition:all .3s;display:inline-flex}.interaction-hint-tag.hint-success{color:#2b701a;background:#e4f5df;border-color:#6bbe56;font-weight:700;animation:.6s ease-out gentleBounce}.sparkle-spin{animation:6s linear infinite spinSlow}.story-text-body{align-items:flex-start;gap:.75rem;min-height:48px;margin-bottom:1.1rem;display:flex}.speaker-badge{color:#fff;background:#c86928;border-radius:6px;flex-shrink:0;margin-top:.2rem;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.narrative-paragraph{font-family:var(--font-serif);color:#2e231b;letter-spacing:.03em;font-size:1.05rem;line-height:1.7}.narrative-word{border-radius:.35em;transition:background-color .14s,color .14s,box-shadow .14s}.narrative-word.spoken{color:#876236}.narrative-word.speaking-now{color:#3a2614;background:#ffe08a;border-radius:.4em;margin:0 .03em;padding:.04em .16em;box-shadow:0 .12em #e2b84a}.narration-toolbar{color:#795a38;align-items:center;gap:.55rem;min-height:34px;margin:-.35rem 0 .8rem 3.8rem;display:flex}.narration-control,.narration-stop{color:#75451e;background:#f3e5c9;border:1px solid #dfc397;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:.25rem;min-height:32px;padding:.35rem .7rem;transition:background .2s,transform .2s;display:inline-flex}.narration-control:hover:not(:disabled),.narration-stop:hover{background:#ead5ad;transform:translateY(-1px)}.narration-control:disabled{opacity:.5;cursor:not-allowed}.narration-control .narration-label{object-fit:contain;width:auto;max-width:82px;height:15px}.narration-stop{width:32px;padding:0}.narration-progress{font:600 .72rem/1.2 var(--font-sans,sans-serif);white-space:nowrap}.narration-progress-track{background:#e4d6c1;border-radius:10px;flex:1;min-width:30px;max-width:110px;height:4px;overflow:hidden}.narration-progress-track i{transform-origin:0;background:#c87932;width:100%;height:100%;transition:transform .25s;display:block}.narration-voice-note{color:#8e7657;font:.67rem/1.35 var(--font-sans,sans-serif);margin:-.45rem 0 .75rem 3.8rem}.story-activity{background:#f2e7d1ad;border:1px solid #c797564d;border-radius:.8rem;margin:-.35rem 0 .8rem 3.8rem;padding:.65rem .8rem .55rem}.story-activity h3{color:#5a3c25;font:700 .82rem/1.3 var(--font-serif);margin-bottom:.45rem}.story-activity-options{flex-wrap:wrap;gap:.45rem;display:flex}.story-activity-option{background:#fffbf2c7;border:1px solid #9769344d;border-radius:.55rem;justify-content:center;align-items:center;max-width:100%;min-height:34px;padding:.3rem .55rem;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.story-activity-option:hover:not(:disabled){background:#fff8e8;border-color:#c4833b;transform:translateY(-1px)}.story-activity-option.choice-correct{background:#e5f1dc;border-color:#69a268}.story-activity-option.choice-incorrect{background:#f6ead5;border-color:#cd9b64}.story-activity-option:disabled{cursor:default}.activity-choice-label{width:auto;max-width:min(100%,250px);height:17px}.story-activity-feedback{color:#896742;font:600 .68rem/1.35 var(--font-sans,sans-serif);margin-top:.4rem}.story-controls-row{border-top:1px solid #bea08240;justify-content:space-between;align-items:center;padding-top:.85rem;display:flex}.page-turn-btn{border-radius:9999px;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.88rem;font-weight:700;transition:all .25s cubic-bezier(.32,.72,0,1);display:inline-flex}.prev-btn{color:#695341;background:#eee3d1}.prev-btn:hover:not(:disabled){background:#e2d2bb;transform:translate(-2px)}.prev-btn:disabled{opacity:.35;cursor:not-allowed}.next-btn{color:#fff;background:#3a281e;box-shadow:0 4px 14px #3a281e40}.next-btn:hover:not(:disabled){background:#4f3629;transform:translate(2px)}.next-btn.highlight-next{background:linear-gradient(135deg,#f27924,#d4590f);animation:2s infinite pulseButton;box-shadow:0 6px 20px #f2792466}.btn-quiz-trigger{color:#fff;background:linear-gradient(135deg,#dfa938,#b87b14);border-radius:9999px;align-items:center;gap:.5rem;padding:.6rem 1.35rem;font-size:.95rem;font-weight:700;transition:all .3s;display:inline-flex;box-shadow:0 8px 24px #dfa93873}.btn-quiz-trigger:hover{transform:translateY(-2px)scale(1.03);box-shadow:0 12px 30px #dfa93899}.modal-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background:#0e0a08bf;justify-content:center;align-items:center;padding:1.5rem;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.quiz-dialog-card,.reward-dialog-card{background:#faf6ed;border:2px solid #dfc7a7;border-radius:2rem;width:100%;max-width:580px;padding:2.2rem;animation:.35s cubic-bezier(.32,.72,0,1) scaleUp;position:relative;box-shadow:0 24px 60px #0009,inset 0 2px 2px #ffffffe6}.quiz-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.quiz-badge{color:#7a501a;background:#f7e6c9;border-radius:9999px;align-items:center;gap:.45rem;padding:.35rem .85rem;font-size:.82rem;font-weight:700;display:inline-flex}.quiz-close-btn{color:#695240;background:#ede0ce;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.quiz-close-btn:hover{color:#2b1f15;background:#dfcfba}.quiz-question-box{margin-bottom:1.4rem}.quiz-question-text{font-family:var(--font-serif);color:#2f2218;font-size:1.28rem;line-height:1.6}.quiz-options-list{flex-direction:column;gap:.75rem;margin-bottom:1.25rem;display:flex}.quiz-opt-btn{text-align:left;background:#fff;border:1.5px solid #e2d2be;border-radius:1.1rem;align-items:center;padding:.9rem 1.2rem;transition:all .25s;display:flex}.quiz-opt-btn:hover:not(:disabled){background:#fffbf4;border-color:#d89e43;transform:translate(4px)}.opt-number{color:#6e4e2a;background:#f2e4d0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;margin-right:.85rem;font-size:.8rem;font-weight:700;display:flex}.opt-label{color:#33251c;flex:1;font-size:.96rem;font-weight:500}.quiz-opt-btn.opt-correct{color:#1e6311;background:#ecf9e9;border-color:#55b33d}.quiz-opt-btn.opt-correct .opt-number{color:#fff;background:#55b33d}.check-icon{color:#43a32b;margin-left:.5rem}.quiz-opt-btn.opt-wrong{color:#922222;background:#fdf0f0;border-color:#df6464}.wrong-icon{color:#d13d3d;margin-left:.5rem}.quiz-feedback-box{border-radius:.9rem;margin-bottom:1.25rem;padding:.85rem 1.1rem;font-size:.9rem;line-height:1.5;animation:.3s ease-out fadeIn}.quiz-feedback-box.fb-correct{color:#246d14;background:#eef8eb;border:1px solid #a8df98}.quiz-feedback-box.fb-wrong{color:#9c2727;background:#fcf1f1;border:1px solid #f2aaaa}.quiz-footer{justify-content:flex-end;display:flex}.btn-quiz-next{color:#fff;background:linear-gradient(135deg,#f27924,#d4590f);border-radius:9999px;align-items:center;gap:.5rem;padding:.75rem 1.6rem;font-size:.95rem;font-weight:700;transition:all .25s;display:inline-flex;box-shadow:0 8px 24px #f2792466}.btn-quiz-next:hover{transform:translateY(-2px);box-shadow:0 12px 28px #f279248c}.btn-quiz-retry{color:#5c4532;background:#eee0cb;border-radius:9999px;padding:.65rem 1.3rem;font-size:.9rem;font-weight:700}.reward-dialog-card{text-align:center}.reward-dialog-card .quiz-close-btn{position:absolute;top:1.5rem;right:1.5rem}.reward-tag{color:#96660f;background:#dfa93833;border:1px solid #dfa93880;border-radius:9999px;align-items:center;gap:.4rem;margin-bottom:.75rem;padding:.35rem .9rem;font-size:.8rem;font-weight:700;display:inline-flex}.reward-title{font-family:var(--font-serif);color:#2b1f16;margin-bottom:.4rem;font-size:1.8rem;font-weight:700}.reward-subtitle{color:#796657;margin-bottom:1.8rem;font-size:.92rem}.badge-showcase{justify-content:center;align-items:center;width:180px;height:180px;margin:0 auto 1.5rem;display:flex;position:relative}.badge-rays{background:radial-gradient(circle,#f7d67280 0%,#f7d67200 70%);animation:20s linear infinite spinSlow;position:absolute;inset:-20px}.badge-disc{background:linear-gradient(135deg,#fae288,#d89e32,#f5d66d);border:4px solid #fff5cf;border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;animation:4s ease-in-out infinite floatSlow;display:flex;position:relative;box-shadow:0 12px 30px #d89e3280,inset 0 2px 4px #fffc}.badge-inner-glow{flex-direction:column;align-items:center;display:flex}.badge-star-icon{filter:drop-shadow(0 2px 4px #0003);font-size:1.8rem}.badge-ribbon{color:#fff;letter-spacing:.05em;white-space:nowrap;background:linear-gradient(135deg,#d44e28,#9e2b0b);border-radius:9999px;padding:.35rem 1.1rem;font-size:.85rem;font-weight:700;position:absolute;bottom:-6px;box-shadow:0 4px 12px #9e2b0b66}.certificate-box{background:#fff;border:1px dashed #d6bda4;border-radius:1rem;margin-bottom:1.8rem;padding:1.1rem 1.3rem}.cert-text{color:#574639;font-size:.88rem;line-height:1.65}.reward-actions{justify-content:center;align-items:center;gap:1rem;display:flex}.btn-secondary{color:#523f2f;background:#eee0cd;border-radius:9999px;align-items:center;gap:.5rem;padding:.75rem 1.35rem;font-size:.92rem;font-weight:700;transition:all .2s;display:inline-flex}.btn-secondary:hover{background:#e2ceb5}.btn-primary-shelf{color:#fff;background:linear-gradient(135deg,#f27924,#d4590f);border-radius:9999px;align-items:center;gap:.5rem;padding:.75rem 1.6rem;font-size:.92rem;font-weight:700;transition:all .25s;display:inline-flex;box-shadow:0 8px 20px #f2792459}.btn-primary-shelf:hover{transform:translateY(-2px);box-shadow:0 12px 26px #f2792480}.loading-screen-overlay{z-index:200;background:#191410 url(/loading-screen.webp) 50%/cover no-repeat;animation:.4s ease-out fadeIn;position:fixed;inset:0;overflow:hidden}.loading-screen-art,.loading-screen-shade{width:100%;height:100%;position:absolute;inset:0}.loading-screen-art{object-fit:cover;object-position:center;animation:1.2s ease-out both loadingArtReveal}.loading-screen-shade{background:linear-gradient(#100e1b0a 35%,#190f0b1a 59%,#190f0ba8 100%)}.loading-card{text-align:center;-webkit-backdrop-filter:blur(12px);background:#231611c7;border:1px solid #ffe0a13d;border-radius:22px;width:min(100% - 2rem,370px);padding:1.15rem 1.6rem 1.25rem;animation:.7s ease-out .12s both loadingCardRise;position:absolute;bottom:clamp(1.1rem,5vh,3.5rem);left:50%;transform:translate(-50%);box-shadow:0 18px 60px #0a070857,inset 0 1px #ffffff14}.loading-icon-wrap{margin-bottom:1.5rem;display:inline-block;position:relative}.loading-book-icon{color:#dfa938;animation:2s ease-in-out infinite bookRock}.loading-sparkle-1{color:#ffe685;animation:1.8s infinite sparkleTwinkle;position:absolute;top:-8px;right:-8px}.loading-sparkle-2{color:#f7af3e;animation:2.2s .5s infinite sparkleTwinkle;position:absolute;bottom:0;left:-10px}.loading-title{font-family:var(--font-serif);color:#fff6e8;margin-bottom:.4rem;font-size:1.35rem;font-weight:700}.loading-desc{color:#e3cdb6;margin-bottom:1rem;font-size:.85rem}.loading-progress-bar{background:#ffffff29;border-radius:9999px;width:100%;height:6px;overflow:hidden}.loading-progress-fill{background:linear-gradient(90deg,#dfa938,#f27924);width:100%;height:100%;animation:1.5s linear infinite progressIndeterminate}@keyframes loadingArtReveal{0%{opacity:.7;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes loadingCardRise{0%{opacity:0;translate:0 14px}to{opacity:1;translate:0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes sparkleTwinkle{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@keyframes gentleBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 12px #dfa9384d}50%{box-shadow:0 0 24px #dfa938a6}}@keyframes pulseButton{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes bookRock{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes floatSlow{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes progressIndeterminate{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (width<=768px){.bookshelf-hud-layer{padding:1.5rem 1.2rem}.bookshelf-main-title{font-size:1.8rem}.bookshelf-subtitle{font-size:.85rem}.book-preview-card{padding:1.1rem}.book-card-desc{display:none}.story-hud-overlay{padding:1rem}.story-bottom-ribbon{width:100%}.story-ribbon-card{border-radius:1.25rem;padding:1rem 1.2rem}.scene-title-text{font-size:1.05rem}.narrative-paragraph{font-size:.92rem;line-height:1.55}.story-controls-row{padding-top:.65rem}.page-turn-btn{padding:.45rem .85rem;font-size:.8rem}.btn-quiz-trigger{padding:.5rem .95rem;font-size:.82rem}.quiz-dialog-card,.reward-dialog-card{border-radius:1.5rem;padding:1.4rem}.quiz-question-text{font-size:1.05rem}}@media (width<=560px){.bookshelf-hud-layer{padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom))}.bookshelf-header{max-width:100%}.brand-lockup{gap:.48rem;margin-bottom:.65rem}.brand-mark{width:2rem;height:2rem}.brand-name{font-size:1.3rem}.brand-tagline{font-size:.64rem}.bookshelf-main-title{font-size:clamp(1.55rem,8vw,2rem)}.bookshelf-subtitle{max-width:24rem}.book-card-container{width:100%;max-width:100%}.book-preview-card{border-radius:1.2rem;padding:.9rem}.book-preview-header{gap:.75rem;margin-bottom:.75rem}.book-cover-mini{width:48px;height:64px}.book-card-title{font-size:1.08rem;line-height:1.25}.book-series-tag,.book-author-text{font-size:.7rem}.book-card-desc{display:none}.story-hud-overlay{padding:max(.75rem, env(safe-area-inset-top)) .75rem max(.75rem, env(safe-area-inset-bottom))}.story-top-bar{align-items:flex-start;gap:.4rem}.story-nav-btn{padding:.55rem .7rem;font-size:.78rem}.scene-progress-container{gap:.35rem;padding:.35rem .5rem}.story-page-progress{gap:.3rem;min-width:104px;padding:.4rem .55rem .55rem}.story-page-progress span{font-size:.48rem}.progress-bead{width:22px;height:22px;font-size:.68rem}.story-top-actions{gap:.4rem}.story-badge-btn{justify-content:center;width:38px;height:38px;padding:0}.story-badge-btn .button-label-sprite{display:none}.story-sound-btn{flex:none;width:38px;height:38px}.story-bottom-ribbon{align-items:flex-end}.story-ribbon-card{border-radius:1rem;max-height:min(54vh,390px);padding:.85rem;overflow-y:auto}.story-ribbon-header{align-items:flex-start;margin-bottom:.55rem}.scene-title-group{align-items:flex-start;gap:.45rem}.scene-number-label{flex:none;font-size:.66rem}.scene-title-text{font-size:.98rem;line-height:1.25}.interaction-hint-tag{padding:.25rem .55rem;font-size:.69rem;line-height:1.3}.story-text-body{gap:.5rem;min-height:0;margin-bottom:.7rem}.narration-toolbar{gap:.4rem;min-height:30px;margin:-.25rem 0 .65rem}.narration-control,.narration-stop{min-height:30px}.narration-progress{font-size:.66rem}.narration-voice-note{margin:-.35rem 0 .6rem}.story-activity{margin:-.2rem 0 .65rem;padding:.55rem .65rem}.story-activity h3{font-size:.76rem}.story-activity-option{min-height:31px;padding:.25rem .45rem}.activity-choice-label{height:15px}.story-activity-feedback{font-size:.63rem}.speaker-badge{font-size:.64rem}.narrative-paragraph{font-size:.88rem;line-height:1.48}.story-controls-row{gap:.5rem}.page-turn-btn{gap:.2rem;padding:.5rem .65rem;font-size:.72rem}.btn-quiz-trigger{gap:.35rem;padding:.55rem .7rem;font-size:.75rem}.modal-backdrop{align-items:flex-end;padding:.65rem}.quiz-dialog-card,.reward-dialog-card{border-radius:1.25rem;max-height:calc(100dvh - 1.3rem);padding:1.15rem;overflow-y:auto}.quiz-options-list{gap:.55rem}.quiz-opt-btn{padding:.75rem .85rem}.reward-title{font-size:1.45rem}.reward-subtitle{margin-bottom:1rem}.badge-showcase{width:140px;height:140px;margin-bottom:1rem}.badge-disc{width:100px;height:100px}.reward-actions{flex-direction:column;gap:.6rem}.reward-actions button{justify-content:center;width:100%}}@media (height<=650px) and (width>=561px){.bookshelf-hud-layer{padding-top:1rem;padding-bottom:1rem}.story-hud-overlay{padding-top:.8rem;padding-bottom:.8rem}.story-ribbon-card{padding:.8rem 1.2rem}.story-text-body{margin-bottom:.6rem}.narrative-paragraph{line-height:1.45}}@media (hover:none){.btn-open-book:hover,.btn-primary-shelf:hover,.btn-quiz-trigger:hover{transform:none}}.book-download-overlay{z-index:500;-webkit-backdrop-filter:blur(5px);background:#19100ca3;place-items:center;padding:1rem;animation:.25s ease-out fadeIn;display:grid;position:fixed;inset:0}.book-download-card{color:#432d21;background:#fbf5e9;border:2px solid #c89c54;border-radius:23px;width:min(100%,470px);animation:.38s ease-out both loadingCardRise;overflow:hidden;box-shadow:0 22px 70px #0c07057a,inset 0 0 0 4px #ffffffad}.book-download-art{background:#20182a;height:clamp(132px,25vh,190px);position:relative;overflow:hidden}.book-download-art:after{content:"";background:linear-gradient(#0000,#18100d7a);position:absolute;inset:35% 0 0}.book-download-art img{object-fit:cover;object-position:center 36%;width:100%;height:100%}.book-download-art-label{z-index:1;color:#fff1cf;font:700 .64rem/1 var(--font-sans,sans-serif);letter-spacing:.12em;text-shadow:0 1px 5px #140b07bf;align-items:center;gap:.35rem;display:inline-flex;position:absolute;bottom:.8rem;right:1rem}.book-download-content{text-align:center;padding:1.35rem clamp(1.1rem,5vw,1.8rem) 1.45rem}.book-download-kicker{color:#a66d26;font:800 .67rem/1 var(--font-sans,sans-serif);letter-spacing:.1em;justify-content:center;align-items:center;gap:.4rem;margin-bottom:.45rem;display:inline-flex}.book-download-content h2{color:#3d281e;font:700 clamp(1.25rem, 5vw, 1.65rem)/1.2 var(--font-serif,Georgia, serif);margin:0}.book-download-copy{color:#705948;min-height:2.6em;font:500 .87rem/1.5 var(--font-sans,sans-serif);margin:.55rem 0 1rem}.book-download-track{background:#e8ddc8;border:1px solid #d8c6a8;border-radius:999px;height:10px;overflow:hidden;box-shadow:inset 0 1px 3px #39261826}.book-download-track span{border-radius:inherit;background:linear-gradient(90deg,#d19e42,#e77b2b);height:100%;transition:width .18s ease-out;display:block;box-shadow:0 0 12px #e094355c}.book-download-track.is-error span{background:#b94b36}.book-download-stats{color:#896f54;font:700 .73rem/1.35 var(--font-sans,sans-serif);justify-content:space-between;gap:.75rem;margin-top:.55rem;display:flex}.book-download-actions{justify-content:center;gap:.6rem;margin-top:1.15rem;display:flex}.book-download-actions button{min-height:42px;font:700 .84rem/1 var(--font-sans,sans-serif);cursor:pointer;border:1px solid #d6c4a5;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1rem;transition:transform .18s,box-shadow .18s;display:inline-flex}.book-download-actions button:hover{transform:translateY(-1px);box-shadow:0 5px 12px #432d2124}.book-download-retry{color:#fff5e5;background:#412b20}.book-download-back{color:#644a37;background:#efe4d1}@media (width<=560px){.book-download-overlay{padding:.8rem}.book-download-card{border-radius:19px}.book-download-art{height:140px}.book-download-content{padding:1.1rem 1rem 1.15rem}.book-download-stats{font-size:.67rem}.book-download-actions button{min-height:40px;padding:.58rem .8rem;font-size:.76rem}}@media (prefers-reduced-motion:reduce){.book-download-overlay,.book-download-card{animation:none}.book-download-track span,.book-download-actions button{transition:none}}:is(.book-preview-card,.loading-card,.story-ribbon-card,.quiz-dialog-card,.reward-dialog-card){isolation:isolate;box-shadow:none;background:0 0;border:0;border-radius:0}.book-preview-card,.story-ribbon-card{position:relative}:is(.book-preview-card,.loading-card,.story-ribbon-card,.quiz-dialog-card,.reward-dialog-card):before{content:"";z-index:-1;pointer-events:none;border:var(--paper-edge,26px) solid transparent;border-image-slice:31% fill;border-image-width:var(--paper-edge,26px);filter:drop-shadow(0 14px 22px #140a065c);border-image-repeat:stretch;position:absolute;inset:0}:is(.book-preview-card,.loading-card){--paper-edge:25px}:is(.book-preview-card,.loading-card):before{border-image-source:url(/ui/panel-midnight.webp)}:is(.story-ribbon-card,.quiz-dialog-card,.reward-dialog-card){--paper-edge:27px}:is(.story-ribbon-card,.quiz-dialog-card,.reward-dialog-card):before{border-image-source:url(/ui/panel-parchment.webp)}:is(.btn-open-book,.story-nav-btn,.story-page-progress,.scene-progress-container,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.quiz-opt-btn,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf){--button-cap:22px;--button-edge:10px;isolation:isolate;box-shadow:none;background:0 0;border:0;border-radius:999px;position:relative}:is(.btn-open-book,.story-nav-btn,.story-page-progress,.scene-progress-container,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.quiz-opt-btn,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf):before{content:"";z-index:-1;pointer-events:none;border:0 solid #0000;border-top-width:var(--button-edge);border-bottom-width:var(--button-edge);border-left-width:var(--button-cap);border-right-width:var(--button-cap);border-image-slice:20% 16% fill;border-image-width:var(--button-edge) var(--button-cap) var(--button-edge) var(--button-cap);border-image-repeat:stretch;border-image-source:var(--button-sprite,url(/ui/button-parchment.webp));filter:drop-shadow(0 3px 5px #1e0f0738);position:absolute;inset:0}:is(.btn-open-book,.story-badge-btn,.btn-quiz-trigger,.btn-quiz-next,.btn-primary-shelf,.next-btn.highlight-next){--button-sprite:url(/ui/button-wood.webp);color:#4f3522;text-shadow:none}.next-btn.highlight-next{box-shadow:none;background:0 0}:is(.story-nav-btn,.story-page-progress,.scene-progress-container,.next-btn){--button-sprite:url(/ui/button-wood.webp);color:#4f3522}:is(.story-page-progress,.scene-progress-container){--button-sprite:url(/ui/button-walnut.webp);color:#fff2d8}:is(.prev-btn,.btn-quiz-retry,.btn-secondary,.quiz-opt-btn){--button-sprite:url(/ui/button-wood.webp);color:#4f3522}:is(.story-nav-btn,.story-page-progress,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf){min-height:42px}.quiz-opt-btn{min-height:54px}.quiz-opt-btn:hover:not(:disabled){background:0 0;border-color:#0000}.quiz-opt-btn:is(.opt-correct,.opt-wrong){background:0 0;border:0;border-radius:0}.quiz-opt-btn.opt-correct:before{filter:drop-shadow(0 0 5px #55b33db3)}.quiz-opt-btn.opt-wrong:before{filter:drop-shadow(0 0 5px #df6464b3)}:is(.story-nav-btn,.story-sound-btn,.quiz-close-btn,.prev-btn,.next-btn,.btn-secondary):hover:not(:disabled){background:0 0}:is(.story-sound-btn,.quiz-close-btn){color:#fff0d5;box-shadow:none;background:url(/ui/button-round.webp) 50%/100% 100% no-repeat;border:0;flex:none}:is(.story-sound-btn,.quiz-close-btn):hover{color:#fff;background:url(/ui/button-round.webp) 50%/100% 100% no-repeat;transform:translateY(-1px)}:is(.btn-open-book,.story-nav-btn,.story-sound-btn,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.quiz-opt-btn,.btn-quiz-next,.btn-quiz-retry,.quiz-close-btn,.btn-secondary,.btn-primary-shelf):focus-visible{outline-offset:3px;border-radius:999px;outline:3px solid #f3bd59}.reward-medallion{z-index:1;object-fit:contain;filter:drop-shadow(0 10px 12px #67410f47);width:144px;height:144px;animation:4s ease-in-out infinite floatSlow;display:block;position:relative}.badge-ribbon{box-shadow:none;background:url(/ui/button-amber.webp) 50%/100% 100% no-repeat;border-radius:0;padding:.5rem 1.25rem}.book-action-row{justify-content:center}.btn-open-book{justify-content:center;min-width:205px;height:52px;padding:.65rem 1rem}.btn-open-book>.button-label-sprite{white-space:nowrap;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.story-top-bar{position:relative}.story-top-bar>:is(.scene-progress-container,.story-page-progress){position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reward-actions :is(.btn-secondary,.btn-primary-shelf){justify-content:center;height:46px;position:relative}.reward-actions .btn-secondary{min-width:156px}.reward-actions .btn-primary-shelf{min-width:198px}.reward-actions :is(.btn-secondary,.btn-primary-shelf)>.button-label-sprite{white-space:nowrap;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reward-actions :is(.btn-secondary,.btn-primary-shelf)>svg{position:absolute;left:1rem}.btn-quiz-next{justify-content:center;width:190px;height:46px;position:relative}.btn-quiz-next>.button-label-sprite{white-space:nowrap;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn-quiz-next>svg{position:absolute;top:50%;right:1rem;transform:translateY(-50%)}:is(.btn-open-book,.story-nav-btn,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.quiz-opt-btn,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf){transition:transform .22s cubic-bezier(.2,1.15,.3,1),filter .18s}:is(.btn-open-book,.story-nav-btn,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.quiz-opt-btn,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf):hover:not(:disabled){filter:brightness(1.035);transform:translateY(-2px)}:is(.btn-open-book,.story-nav-btn,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.quiz-opt-btn,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf):active:not(:disabled){filter:brightness(.98);transition-duration:90ms;transform:translateY(1px)scale(.985)}:is(.btn-open-book,.story-nav-btn,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.quiz-opt-btn,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf):disabled{cursor:not-allowed;filter:saturate(.65)}.button-label-sprite{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;flex:0 auto;width:auto;max-width:100%;height:1.6em;display:block}.btn-quiz-trigger{justify-content:center;min-width:220px}.quiz-opt-btn{justify-content:center}.quiz-opt-btn>.button-label-sprite{height:1.5em}.quiz-opt-btn>:is(.check-icon,.wrong-icon){margin:0;position:absolute;right:1rem}.next-btn{justify-content:center;min-width:190px}@media (width<=560px){.button-label-sprite{height:1.45em}.btn-quiz-trigger,.next-btn{min-width:0}}@media (width<=768px){:is(.book-preview-card,.loading-card,.story-ribbon-card,.quiz-dialog-card,.reward-dialog-card){--paper-edge:18px}:is(.btn-open-book,.story-nav-btn,.story-page-progress,.scene-progress-container,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.quiz-opt-btn,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf){--button-cap:18px;--button-edge:8px}}@media (width<=560px){:is(.book-preview-card,.loading-card,.story-ribbon-card,.quiz-dialog-card,.reward-dialog-card){--paper-edge:15px}:is(.story-nav-btn,.story-page-progress,.story-badge-btn,.page-turn-btn,.btn-quiz-trigger,.btn-quiz-next,.btn-quiz-retry,.btn-secondary,.btn-primary-shelf){min-height:38px}.quiz-opt-btn{min-height:48px}.reward-medallion{width:112px;height:112px}}
