:root{color-scheme:dark;--night:#201737;--gold:#ffda8b;--paper:#fffcf4;--ink:#352b40;--text-size:1.07rem}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 50% 34%,#553b79 0,#2e2047 47%,#1b142c 100%);color:#f8efff;font-family:Arial,Helvetica,sans-serif;min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}button:disabled{opacity:.35;cursor:default}[hidden]{display:none!important}a{color:inherit;text-decoration:none}.toolbar{max-width:1392px;padding:24px 36px 18px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{display:flex;align-items:center;gap:12px;font-size:1.2rem;font-weight:700;flex-shrink:0}.brand-star{color:var(--gold);font-size:2rem}.wordmark small{display:block;font-size:.69rem;letter-spacing:.17em;margin-top:6px;font-weight:400;color:#d1bedf}.tools{display:flex;gap:10px;align-items:center}.tools button,.tools a{border:1px solid #ffffff2d;background:#ffffff08;color:#f5eafb;border-radius:100px;padding:12px 17px;min-height:44px;font-size:.88rem}.tools button:hover,.tools a:hover{background:#ffffff19}.tools #font-button{font-family:Georgia,serif;min-width:48px;padding:10px 12px}.plus{font-family:Arial,sans-serif;font-size:.82em;margin-left:2px}.download span{margin-left:5px}#reader{width:min(1240px,calc(100% - 80px));margin:15px auto 24px;perspective:2000px}.cover-view{display:flex;flex-direction:column;align-items:center;gap:25px;padding:9px 0 12px}.cover-button{display:block;padding:0;background:none;border:0;position:relative;width:min(350px,70vw);box-shadow:18px 25px 56px #09050b88;transform:rotateY(-8deg);transform-style:preserve-3d;border-radius:3px 7px 7px 3px;transition:transform .4s ease}.cover-button:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0e092938,#ffffff20 3%,transparent 7%,transparent 96%,#08000b22);z-index:1;pointer-events:none}.cover-button:after{content:"";position:absolute;top:5px;bottom:4px;right:-7px;width:8px;border-radius:0 5px 5px 0;background:repeating-linear-gradient(0deg,#ddceda,#ddceda 1px,#f7eaf3 1px,#f7eaf3 3px);transform:translateZ(-1px)}.cover-button img{width:100%;height:auto;display:block;border-radius:3px 7px 7px 3px}.cover-button:hover{transform:rotateY(-2deg) translateY(-4px)}.primary-button{border:0;border-radius:100px;background:var(--gold);color:#2f2039;font-weight:700;padding:15px 29px;box-shadow:0 8px 24px #07021235;font-size:1rem}.primary-button span{margin-left:20px}.primary-button:hover{background:#ffe6ad}.spread{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:595px;position:relative;box-shadow:0 24px 60px #08021270,5px 5px 0 #e4d8c7,9px 9px 0 #b9aaca;border-radius:7px;transform-origin:50% 50%;background:var(--paper);color:var(--ink);transition:transform .2s ease,opacity .2s ease;transform-style:preserve-3d}.spread.turn-next{transform:rotateY(-7deg) translateX(-8px);opacity:.3}.spread.turn-previous{transform:rotateY(7deg) translateX(8px);opacity:.3}.picture-page{margin:0;min-width:0;background:linear-gradient(155deg,#d2bde2,#f3e5e5 70%,#e7d8ee);border-radius:7px 0 0 7px;display:flex;flex-direction:column;justify-content:center;position:relative;padding:68px 0 42px;box-shadow:inset -18px 0 28px -23px #534060}.picture-page img{display:block;width:100%;height:auto;object-fit:contain;mix-blend-mode:normal}.picture-label{position:absolute;left:30px;top:30px;letter-spacing:.19em;font-size:.74rem;font-weight:700;color:#61477c}.picture-page figcaption{text-align:center;font-family:Georgia,'Times New Roman',serif;font-style:italic;line-height:1.3;font-size:1.1rem;padding:24px 35px 0;color:#745981}.picture-page.portrait img{max-height:480px;width:auto;max-width:85%;align-self:center;border-radius:6px}.text-page{padding:41px 43px 28px;min-width:0;display:flex;flex-direction:column;box-shadow:inset 20px 0 28px -28px #665066;border-radius:0 7px 7px 0;background:linear-gradient(90deg,#ede7dd 0,#fffcf4 5%,#fffcf4 98%,#f7efe2 100%)}.eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.18em;color:#906193;margin:0 0 16px}.text-page h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(1.85rem,2.5vw,2.4rem);line-height:1.13;color:#583965;margin:0 0 26px;text-wrap:balance}.story-text{font-family:Georgia,'Times New Roman',serif;font-size:var(--text-size);line-height:1.58;letter-spacing:.005em}.story-text p{margin:0 0 .85em}.story-text p:last-child{margin-bottom:0}.speaker{display:block;font-family:Arial,sans-serif;font-size:.71em;font-weight:700;letter-spacing:.01em;margin:1.25em 0 .28em;color:#935378}.story-text p:first-child .speaker{margin-top:0}.page-ornament{color:#b995c1;text-align:center;font-size:1.1rem;margin-top:auto;padding-top:20px}.story-text .signature{font-weight:700;color:#765082;margin-top:1.3em}.story-text .logos{display:block;max-width:210px;width:90%;height:auto;margin:25px auto 8px}.page-controls{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:29px 2px 8px}.page-controls button{background:transparent;border:1px solid #ffffff40;border-radius:100px;padding:11px 21px;color:#f8f1ff;min-height:46px;font-size:.94rem;min-width:128px}.page-controls button:hover{background:#ffffff12}.page-controls button span{padding:0 7px}.page-status{text-align:center;font-size:.87rem;color:#decdeb;min-width:130px}.track{height:3px;background:#ffffff25;border-radius:5px;width:120px;margin:11px auto 0;overflow:hidden}.track div{height:100%;background:var(--gold);border-radius:5px;transition:width .3s ease}.credits{font-size:.76rem;line-height:1.6;color:#bca9cf;text-align:center;margin:0 auto;padding:0 20px 24px}.credits span{padding:0 7px}dialog{background:var(--paper);color:var(--ink);border:none;border-radius:16px;padding:25px;width:min(510px,calc(100% - 28px));max-height:85vh;box-shadow:0 24px 100px #0008;color-scheme:light}dialog::backdrop{background:#110b26ba;backdrop-filter:blur(6px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.dialog-heading h2{font-family:Georgia,serif;font-weight:400;font-size:1.8rem;margin:0}.dialog-heading button{border:0;background:#eee5f0;color:#654c74;border-radius:50%;width:44px;height:44px;font-size:1.7rem}#chapter-list{list-style:none;padding:0;margin:0}#chapter-list li+li{border-top:1px solid #e9e0e9}#chapter-list button{width:100%;display:flex;gap:18px;text-align:left;padding:13px 7px;border:0;background:transparent;color:#49394f;line-height:1.4;font-size:.96rem;border-radius:5px}#chapter-list button:hover,#chapter-list button[aria-current=true]{background:#e9dbef}#chapter-list button span:first-child{min-width:23px;color:#996ab2;font-size:.8rem;padding-top:2px}.large-text{--text-size:1.2rem}.larger-text{--text-size:1.37rem}
@media(min-width:1450px){#reader{margin-top:32px}.cover-button{width:390px}.spread{min-height:675px}.text-page{padding:52px 50px 32px}.story-text{line-height:1.65}}
@media(max-width:900px){.toolbar{padding:20px 22px 15px}.toolbar .download{padding:12px}.toolbar .wordmark{font-size:1rem}.wordmark small{font-size:.6rem}#reader{width:calc(100% - 40px)}.text-page{padding:28px 29px}.story-text{font-size:calc(var(--text-size) * .96)}.picture-label{left:20px;top:23px}.picture-page figcaption{padding:20px 22px 0;font-size:1rem}.page-controls{padding-top:24px}}
@media(max-width:680px){.toolbar{padding:17px 15px 10px;gap:12px;flex-wrap:wrap}.wordmark{gap:8px}.brand-star{font-size:1.65rem}.wordmark small{font-size:.54rem;letter-spacing:.12em}.tools{gap:6px;margin-left:auto}.tools button,.tools a{font-size:.78rem;padding:9px 11px;min-height:44px}.tools .download{font-size:.78rem;padding:9px 10px}.tools #font-button{min-width:39px;padding:9px}.tools{flex-wrap:wrap}#reader{width:calc(100% - 24px);margin-top:10px}.cover-view{padding:16px 0 9px;gap:26px}.cover-button{width:min(325px,75vw)}.spread{display:flex;flex-direction:column;min-height:0;border-radius:8px;box-shadow:0 17px 38px #0d07184d,3px 4px 0 #c9b8d5}.picture-page{border-radius:8px 8px 0 0;padding:39px 0 0;box-shadow:none}.picture-label{left:22px;top:16px;font-size:.63rem}.picture-page img{width:100%;height:auto;max-height:none}.picture-page figcaption{display:none}.picture-page.portrait{padding:45px 0 20px}.picture-page.portrait img{height:240px;width:auto;max-height:240px}.text-page{padding:28px 25px 24px;border-radius:0 0 8px 8px;box-shadow:none;background:var(--paper)}.eyebrow{font-size:.66rem;margin-bottom:11px}.text-page h1{font-size:1.9rem;margin-bottom:21px}.story-text{font-size:var(--text-size);line-height:1.65}.page-ornament{padding-top:17px}.page-controls{gap:9px;padding:21px 0 1px}.page-controls button{min-width:99px;padding:11px 12px;font-size:.84rem}.page-controls button span{padding:0 2px}.page-status{min-width:89px;font-size:.76rem}.track{width:74px}.credits{font-size:.68rem;padding-bottom:22px}.credits span{padding:0 4px}.large-text{--text-size:1.2rem}.larger-text{--text-size:1.4rem}}
@media(max-width:390px){.toolbar{justify-content:center}.tools{margin-left:0;width:100%;justify-content:center}.toolbar .wordmark{margin-right:auto}.tools .download{margin-left:auto}.page-controls button{min-width:89px;padding:11px 9px}.text-page{padding-left:22px;padding-right:22px}.credits span{display:none}.credits{max-width:260px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.cover-button,.cover-button:hover{transform:none}}

.audio-controls{width:min(1240px,calc(100% - 72px));margin:0 auto 24px;padding:13px 16px;border:1px solid #ffffff24;border-radius:17px;background:#ffffff09;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.audio-controls button{min-height:44px;padding:10px 15px;color:#f8efff;border:1px solid #ffffff30;border-radius:100px;background:transparent;font-size:.88rem}.audio-controls .narration-toggle{background:var(--gold);color:#35253e;border-color:var(--gold);font-weight:700;min-width:140px}.music-volume{display:flex;align-items:center;gap:8px;font-size:.78rem;color:#e1d1ee}.music-volume input{width:75px;accent-color:var(--gold);min-height:30px}.narration-time{font-variant-numeric:tabular-nums;font-size:.78rem;color:#e1d1ee;min-width:48px}.narration-message{font-size:.75rem;color:#cab6dc;margin-left:auto}.audio-controls button:hover{filter:brightness(1.09)}@media(max-width:680px){.audio-controls{width:calc(100% - 24px);padding:11px;gap:8px;margin:8px auto 18px}.audio-controls button{font-size:.79rem;padding:10px 12px}.audio-controls .narration-toggle{min-width:121px}.music-volume{margin-right:auto}.narration-message{width:100%;margin-left:0;text-align:center;padding-top:2px}}

.voice-choice{display:flex;align-items:center;gap:8px;font-size:.875rem;max-width:100%}.voice-choice select{min-height:42px;max-width:230px;min-width:90px;border:1px solid #ffffff40;border-radius:10px;padding:6px 9px;background:#352448;color:#fff;font:inherit}.narration-message{font-size:.875rem;line-height:1.5;width:100%;margin:0}.music-volume,.narration-time{font-size:.875rem}.audio-controls select:focus-visible,.audio-controls input:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:680px){.voice-choice{flex-wrap:wrap}.voice-choice select{max-width:200px}.narration-message{text-align:left}.audio-controls button{font-size:.875rem}}
