.floating-audio-controls[data-v-e57e17f8]{position:fixed;display:flex;align-items:center;gap:.75rem;background:#fff;padding:.75rem 1rem;border-radius:50px;box-shadow:0 4px 16px #00000026;z-index:1000;transition:box-shadow .2s}.floating-audio-controls.dragging[data-v-e57e17f8]{box-shadow:0 8px 32px #00000040;cursor:grabbing}.audio-drag-handle[data-v-e57e17f8]{display:flex;align-items:center;justify-content:center;width:24px;height:32px;cursor:grab;color:var(--text-muted);transition:color .15s;-webkit-user-select:none;user-select:none;margin-left:-.25rem}.audio-drag-handle[data-v-e57e17f8]:hover{color:var(--text)}.audio-drag-handle[data-v-e57e17f8]:active,.dragging .audio-drag-handle[data-v-e57e17f8]{cursor:grabbing}.slide-in-enter-active[data-v-e57e17f8],.slide-in-leave-active[data-v-e57e17f8]{transition:transform .3s ease,opacity .3s ease}.slide-in-enter-from[data-v-e57e17f8],.slide-in-leave-to[data-v-e57e17f8]{transform:translate(-20px);opacity:0}.audio-close-btn[data-v-e57e17f8]{width:32px;height:32px;min-width:32px;min-height:32px;border-radius:50%;background:var(--bg-alt);color:var(--text);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s}.audio-close-btn[data-v-e57e17f8]:hover{background:var(--border);transform:scale(1.05)}.audio-close-btn[data-v-e57e17f8]:active{transform:scale(.95)}.audio-btn[data-v-e57e17f8]{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:50%;background:var(--primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s}.audio-btn[data-v-e57e17f8]:hover{background:var(--primary-hover);transform:scale(1.05)}.audio-btn[data-v-e57e17f8]:active{transform:scale(.95)}.audio-btn svg[data-v-e57e17f8]{width:18px;height:18px}.audio-progress[data-v-e57e17f8]{width:150px;height:6px;background:var(--bg-alt);border-radius:3px;overflow:hidden;cursor:pointer}.audio-progress-bar[data-v-e57e17f8]{height:100%;background:var(--primary);border-radius:3px;transition:width .1s linear}.audio-time[data-v-e57e17f8]{font-size:.875rem;font-weight:500;color:var(--text);min-width:80px;text-align:center;font-family:var(--font-system)}.word-reading-toggle[data-v-e57e17f8]{background:var(--bg-alt);color:var(--text)}.word-reading-toggle[data-v-e57e17f8]:hover{background:var(--border)}.word-reading-toggle.active[data-v-e57e17f8]{background:var(--primary);color:#fff}.word-reading-toggle.active[data-v-e57e17f8]:hover{background:var(--primary-hover)}.word-highlight-toggle[data-v-e57e17f8]{background:var(--bg-alt);color:var(--text)}.word-highlight-toggle[data-v-e57e17f8]:hover{background:var(--border)}.word-highlight-toggle.active[data-v-e57e17f8]{background:var(--primary);color:#fff}.word-highlight-toggle.active[data-v-e57e17f8]:hover{background:var(--primary-hover)}@media (max-width: 800px){.floating-audio-controls[data-v-e57e17f8]{top:0!important;bottom:auto!important;left:0!important;right:0!important;width:100%;height:60px;gap:.5rem;padding:0 1rem;border-radius:0;box-shadow:0 2px 8px #0000000d;border-bottom:1px solid rgba(0,0,0,.1)}.audio-drag-handle[data-v-e57e17f8]{display:none}.audio-btn[data-v-e57e17f8]{width:36px;height:36px;min-width:36px;min-height:36px}.audio-btn svg[data-v-e57e17f8]{width:16px;height:16px}.audio-close-btn[data-v-e57e17f8]{width:32px;height:32px;min-width:32px;min-height:32px}.audio-progress[data-v-e57e17f8]{flex:1;min-width:60px;width:auto}.audio-time[data-v-e57e17f8]{font-size:.75rem;min-width:55px}}@media (max-width: 380px){.floating-audio-controls[data-v-e57e17f8]{gap:.25rem;padding:0 .5rem}.audio-time[data-v-e57e17f8]{font-size:.7rem;min-width:50px}.audio-btn[data-v-e57e17f8]{width:32px;height:32px;min-width:32px;min-height:32px}}.word-explanation-popover[data-v-7fde6fd0]{position:fixed;z-index:10000;background:var(--background, #fff);color:var(--text, #1a1a1a);border:1px solid var(--border, #e0e0e0);border-radius:8px;padding:12px 14px;box-shadow:0 4px 16px #0000001f;font-size:.95rem;line-height:1.5;max-width:280px;word-wrap:break-word}.popover-close[data-v-7fde6fd0]{position:absolute;top:6px;right:6px;background:none;border:none;cursor:pointer;color:var(--text, #1a1a1a);opacity:.5;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:4px}.popover-close[data-v-7fde6fd0]:hover{opacity:1;background:#0000000d}.popover-word[data-v-7fde6fd0]{font-weight:600;margin-bottom:4px;padding-right:18px}.popover-content[data-v-7fde6fd0]{font-size:.9rem;opacity:.9}.popover-content[data-v-7fde6fd0] p{margin:0}.popover-content[data-v-7fde6fd0] p+p{margin-top:.5em}.popover-arrow[data-v-7fde6fd0]{position:absolute;width:12px;height:12px;background:var(--background, #fff);border:1px solid var(--border, #e0e0e0);transform:rotate(45deg);pointer-events:none}.position-above .popover-arrow[data-v-7fde6fd0]{bottom:-7px;border-top:none;border-left:none}.word-explanation-popover:not(.position-above) .popover-arrow[data-v-7fde6fd0]{top:-7px;border-bottom:none;border-right:none}.popover-fade-enter-active[data-v-7fde6fd0],.popover-fade-leave-active[data-v-7fde6fd0]{transition:opacity .15s ease}.popover-fade-enter-from[data-v-7fde6fd0],.popover-fade-leave-to[data-v-7fde6fd0]{opacity:0}.two-page-spread[data-v-0fb4c0fd]{width:100%;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(to bottom,#f5f5f5,#e0e0e0);position:relative;overflow:hidden}.two-page-spread.fullscreen[data-v-0fb4c0fd]{align-items:stretch;justify-content:stretch;padding:0}.book-container-wrapper[data-v-0fb4c0fd]{width:min(90vw,1200px);height:min(75vh,800px);margin:0 auto;position:relative;opacity:1;transition:opacity .3s ease}.book-container-wrapper.is-transitioning[data-v-0fb4c0fd]{opacity:0}.book-container-wrapper.fullscreen[data-v-0fb4c0fd]{width:100vw;height:100vh;margin:0}.book-container[data-v-0fb4c0fd]{width:100%;height:100%;position:relative}.book-container[data-v-0fb4c0fd] .stf__wrapper{width:100%!important;height:100%!important}.two-page-spread.fullscreen .book-container[data-v-0fb4c0fd] .stf__wrapper{width:100vw!important;height:100vh!important}.book-container[data-v-0fb4c0fd] .page{background:var(--bg);box-shadow:0 0 20px #0000001a;overflow:hidden}.book-container[data-v-0fb4c0fd] .page-inner{width:100%;height:100%;display:flex;flex-direction:column;font-family:var(--font-reader);line-height:var(--line-spacing);letter-spacing:var(--letter-spacing);overflow:hidden;box-sizing:border-box;position:relative}.book-container[data-v-0fb4c0fd] .page-content{flex:1 1 auto;padding:2.5rem 3rem;font-size:calc(1.1rem * var(--text-size-multiplier, 1));color:var(--text);position:relative;letter-spacing:var(--letter-spacing);word-spacing:var(--word-spacing);box-sizing:border-box;overflow:hidden;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.two-page-spread.fullscreen .book-container[data-v-0fb4c0fd] .page-content{padding:4.5rem 3rem}.book-container[data-v-0fb4c0fd] .word-hover{display:inline;cursor:pointer;transition:border-bottom-color .15s ease,background-color .15s ease;border-bottom:2px solid transparent;padding-bottom:2px}.book-container[data-v-0fb4c0fd] .word-hover:hover{border-bottom-color:var(--primary);background-color:#0f2a9114;border-radius:2px}.book-container[data-v-0fb4c0fd] .word-hover.word-explainable{border-bottom-style:dotted;border-bottom-color:var(--text)}.book-container[data-v-0fb4c0fd] .word-hover.word-explainable:hover{border-bottom-style:dotted;border-bottom-color:var(--primary);background-color:#0f2a9114}.book-container[data-v-0fb4c0fd] .word-hover.word-highlight-active{border-bottom-color:var(--primary);border-bottom-style:solid;background-color:#0f2a9126;border-radius:2px}.book-container[data-v-0fb4c0fd] .word-hover.sentence-hover-active{border-bottom-color:var(--primary);background-color:#0f2a9114;border-radius:2px}.book-container[data-v-0fb4c0fd] .page-content p{margin-bottom:1rem}.book-container[data-v-0fb4c0fd] .page-content em,.book-container[data-v-0fb4c0fd] .page-content i{font-style:italic}.book-container[data-v-0fb4c0fd] .page-content strong,.book-container[data-v-0fb4c0fd] .page-content b{font-weight:700}.book-container[data-v-0fb4c0fd] .page-content h1{font-size:calc(1.8rem * var(--text-size-multiplier, 1));margin-top:1.5rem;margin-bottom:1rem;line-height:1.3;font-weight:600}.book-container[data-v-0fb4c0fd] .page-content h2{font-size:calc(1.5rem * var(--text-size-multiplier, 1));margin-top:1.5rem;margin-bottom:1rem;line-height:1.3;font-weight:600}.book-container[data-v-0fb4c0fd] .page-content h3{font-size:calc(1.25rem * var(--text-size-multiplier, 1));margin-top:1.5rem;margin-bottom:1rem;line-height:1.3;font-weight:600}.book-container[data-v-0fb4c0fd] .page-content h1:first-child,.book-container[data-v-0fb4c0fd] .page-content h2:first-child,.book-container[data-v-0fb4c0fd] .page-content h3:first-child,.book-container[data-v-0fb4c0fd] .page-content p:first-child{margin-top:0!important}.book-container[data-v-0fb4c0fd] .page-content h1:last-child,.book-container[data-v-0fb4c0fd] .page-content h2:last-child,.book-container[data-v-0fb4c0fd] .page-content h3:last-child,.book-container[data-v-0fb4c0fd] .page-content p:last-child{margin-bottom:0!important}.book-container[data-v-0fb4c0fd] .page-content h1[data-audio],.book-container[data-v-0fb4c0fd] .page-content h2[data-audio],.book-container[data-v-0fb4c0fd] .page-content h3[data-audio],.book-container[data-v-0fb4c0fd] .page-content p[data-audio]{position:relative}.book-container[data-v-0fb4c0fd] .page-image{width:100%;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative;box-sizing:border-box}.book-container[data-v-0fb4c0fd] .page-image img{width:100%;height:100%;object-fit:cover}.book-container[data-v-0fb4c0fd] .template-full-text .page-content{flex:1 1 auto}.book-container[data-v-0fb4c0fd] .template-image-page_top .page-image{order:-1;flex:1 1 auto;min-height:40%}.book-container[data-v-0fb4c0fd] .template-image-page_top .page-content,.book-container[data-v-0fb4c0fd] .template-image-page_bottom .page-content{flex:0 0 auto;min-height:0;order:0}.book-container[data-v-0fb4c0fd] .template-image-page_bottom .page-image{order:1;flex:1 1 auto;min-height:40%}.book-container[data-v-0fb4c0fd] .template-full-image .page-image{position:absolute;top:0;left:0;width:100%;height:100%;padding:0;margin:0;flex:none}.book-container[data-v-0fb4c0fd] .template-full-image .page-image img{width:100%;height:100%;object-fit:cover}.book-container[data-v-0fb4c0fd] .page-number{position:absolute;bottom:.5rem;left:0;right:0;text-align:center;font-size:calc(.75rem * var(--text-size-multiplier, 1));color:var(--text);font-family:var(--font-system);z-index:10;pointer-events:none}.book-container[data-v-0fb4c0fd] .page-number-on-image{color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.5)}.book-container[data-v-0fb4c0fd] .page-final-inner{display:flex;align-items:center;justify-content:center;padding:2rem}.book-container[data-v-0fb4c0fd] .page-final-content{text-align:center;font-size:calc(1.2rem * var(--text-size-multiplier, 1));color:var(--text);max-width:80%}.book-container[data-v-0fb4c0fd] .page-final-content p{margin:0;line-height:var(--line-spacing)}.mobile-footer-controls[data-v-0fb4c0fd]{display:none}.book-controls[data-v-0fb4c0fd]{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2rem;background:#fff;padding:1rem;border-radius:50px;box-shadow:0 4px 12px #00000026;z-index:100}.fade-enter-active[data-v-0fb4c0fd],.fade-leave-active[data-v-0fb4c0fd]{transition:opacity .2s ease}.fade-enter-from[data-v-0fb4c0fd],.fade-leave-to[data-v-0fb4c0fd]{opacity:0}.btn-nav[data-v-0fb4c0fd]{width:48px;height:48px;border-radius:50%;background:var(--primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s}.btn-nav[data-v-0fb4c0fd]:hover:not(:disabled){background:var(--primary-hover);transform:scale(1.05)}.btn-nav[data-v-0fb4c0fd]:disabled{opacity:.3;cursor:not-allowed}.btn-nav svg[data-v-0fb4c0fd]{width:24px;height:24px;stroke-width:2}.page-indicator[data-v-0fb4c0fd]{font-size:1rem;font-weight:500;color:var(--text);min-width:120px;text-align:center}@media (max-width: 800px){.book-container-wrapper[data-v-0fb4c0fd]{width:100vw;height:calc(100vh - 60px);margin:0}.book-container[data-v-0fb4c0fd]{width:100%;height:100%}.book-controls[data-v-0fb4c0fd]{display:none}.mobile-footer-controls[data-v-0fb4c0fd]{display:flex;position:fixed;bottom:0;left:0;right:0;height:60px;background:#fff;border-top:1px solid rgba(0,0,0,.1);align-items:center;justify-content:space-between;padding:0 1rem;z-index:1000;box-shadow:0 -2px 8px #0000000d}.footer-left-buttons[data-v-0fb4c0fd],.footer-right-buttons[data-v-0fb4c0fd]{display:flex;align-items:center;gap:.5rem}.footer-back-button[data-v-0fb4c0fd],.footer-feedback-button[data-v-0fb4c0fd],.footer-settings-button[data-v-0fb4c0fd],.footer-chapters-button[data-v-0fb4c0fd]{width:44px;height:44px;border-radius:50%;background:var(--bg-alt, #f5f5f5);color:var(--text);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;text-decoration:none;flex-shrink:0}.footer-back-button[data-v-0fb4c0fd]:hover,.footer-back-button[data-v-0fb4c0fd]:active,.footer-feedback-button[data-v-0fb4c0fd]:hover,.footer-feedback-button[data-v-0fb4c0fd]:active,.footer-settings-button[data-v-0fb4c0fd]:hover,.footer-settings-button[data-v-0fb4c0fd]:active,.footer-chapters-button[data-v-0fb4c0fd]:hover,.footer-chapters-button[data-v-0fb4c0fd]:active{background:var(--bg-hover, #e5e5e5)}.footer-back-button svg[data-v-0fb4c0fd],.footer-feedback-button svg[data-v-0fb4c0fd],.footer-settings-button svg[data-v-0fb4c0fd],.footer-chapters-button svg[data-v-0fb4c0fd]{stroke-width:2}.footer-page-nav[data-v-0fb4c0fd]{display:flex;align-items:center;gap:.5rem;flex:1;justify-content:center;max-width:240px}.btn-nav-footer[data-v-0fb4c0fd]{width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s;flex-shrink:0}.btn-nav-footer[data-v-0fb4c0fd]:active:not(:disabled){background:var(--primary-hover);transform:scale(.95)}.btn-nav-footer[data-v-0fb4c0fd]:disabled{opacity:.3;cursor:not-allowed}.btn-nav-footer svg[data-v-0fb4c0fd]{width:18px;height:18px;stroke-width:2.5}.footer-page-nav .page-indicator[data-v-0fb4c0fd]{font-size:.875rem;font-weight:500;color:var(--text);min-width:80px;text-align:center}.book-container[data-v-0fb4c0fd] .page-inner{overflow:visible}.book-container[data-v-0fb4c0fd] .page-content{padding:2.5rem 2.5rem 2rem}.book-container[data-v-0fb4c0fd] .page-number{bottom:5rem;margin-bottom:.5rem}}.book-container[data-v-0fb4c0fd] .page-audio-icon{position:absolute;top:0;left:-40px;width:32px;height:32px;visibility:hidden;pointer-events:none;z-index:10}.book-container[data-v-0fb4c0fd] p[data-audio],.book-container[data-v-0fb4c0fd] h1[data-audio],.book-container[data-v-0fb4c0fd] h2[data-audio],.book-container[data-v-0fb4c0fd] h3[data-audio]{cursor:pointer}.book-container[data-v-0fb4c0fd] .page-audio-icon:hover,.book-container[data-v-0fb4c0fd] .page-audio-icon.controls-visible{transform:scale(1.1);box-shadow:0 3px 10px #0f2a914d;background:#fff;border-color:#0f2a91}.book-container[data-v-0fb4c0fd] .page-audio-icon svg{width:18px;height:18px;color:var(--primary);transition:color .15s}.book-container[data-v-0fb4c0fd] .page-audio-icon:hover svg,.book-container[data-v-0fb4c0fd] .page-audio-icon.controls-visible svg{color:#0f2a91}.book-container[data-v-0fb4c0fd] .page-audio-icon.active{background:var(--primary);box-shadow:0 3px 10px #0f2a914d}.book-container[data-v-0fb4c0fd] .page-audio-icon.active svg{color:#fff}@media (max-width: 800px){.book-container[data-v-0fb4c0fd] .page-audio-icon{left:-32px;top:.4rem;width:28px;height:28px}.book-container[data-v-0fb4c0fd] .page-audio-icon svg{width:16px;height:16px}}.reading-marker{position:absolute;width:8px;height:8px;background-color:var(--primary, #10b981);border-radius:50%;opacity:0;transition:right .2s ease,top .2s ease,opacity .2s ease;pointer-events:none;z-index:10}.reading-marker.visible{opacity:.7}.word-highlighted{background-color:#0f2a914d!important;border-radius:2px}.settings-panel[data-v-39f45018]{position:fixed;top:1rem;right:1rem;z-index:1000;display:flex;gap:.5rem;flex-direction:row;align-items:flex-start}.fullscreen-toggle[data-v-39f45018]{width:48px;height:48px;border-radius:50%;background:var(--bg-alt);color:var(--text);border:2px solid var(--border);box-shadow:0 4px 12px var(--shadow);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:1;transition:background .15s,transform .15s,border-color .15s,opacity .15s}.fullscreen-toggle[data-v-39f45018]:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff;transform:scale(1.05)}.fullscreen-toggle.active[data-v-39f45018]{background:var(--primary);border-color:var(--primary);color:#fff}.fullscreen-toggle.active[data-v-39f45018]:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff}.settings-panel.in-fullscreen .fullscreen-toggle.active[data-v-39f45018]{opacity:.4}.settings-panel.in-fullscreen .fullscreen-toggle.active[data-v-39f45018]:hover{opacity:1}.fullscreen-toggle svg[data-v-39f45018]{width:24px;height:24px;stroke-width:2}.chapter-nav-toggle[data-v-39f45018]{width:48px;height:48px;border-radius:50%;background:var(--bg-alt);color:var(--text);border:2px solid var(--border);box-shadow:0 4px 12px var(--shadow);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:1;transition:background .15s,transform .15s,border-color .15s,opacity .15s}.chapter-nav-toggle[data-v-39f45018]:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff;transform:scale(1.05)}.chapter-nav-toggle.active[data-v-39f45018]{background:var(--primary);border-color:var(--primary);color:#fff}.chapter-nav-toggle.active[data-v-39f45018]:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff}.settings-panel.in-fullscreen .chapter-nav-toggle[data-v-39f45018]{opacity:.4}.settings-panel.in-fullscreen .chapter-nav-toggle[data-v-39f45018]:hover{opacity:1}.chapter-nav-toggle svg[data-v-39f45018]{width:24px;height:24px;stroke-width:2}.chapter-content[data-v-39f45018]{max-height:calc(100vh - 100px)}.chapter-list[data-v-39f45018]{display:flex;flex-direction:column}.chapter-item[data-v-39f45018]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 0;border:none;background:none;text-align:left;cursor:pointer;transition:background .15s;font-size:.9rem;border-bottom:1px solid var(--border)}.chapter-item[data-v-39f45018]:last-child{border-bottom:none}.chapter-item[data-v-39f45018]:hover{background:var(--bg-alt)}.chapter-name[data-v-39f45018]{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:1rem}.chapter-page[data-v-39f45018]{font-size:.75rem;color:var(--text-muted);background:var(--bg-alt);padding:.25rem .5rem;border-radius:4px;flex-shrink:0}.settings-toggle[data-v-39f45018]{width:48px;height:48px;border-radius:50%;background:var(--primary);color:#fff;border:none;box-shadow:0 4px 12px var(--shadow);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:1;transition:background .15s,transform .15s,opacity .15s}.settings-toggle[data-v-39f45018]:hover{background:var(--primary-hover);transform:scale(1.05)}.settings-panel.in-fullscreen .settings-toggle[data-v-39f45018]{opacity:.4}.settings-panel.in-fullscreen .settings-toggle[data-v-39f45018]:hover{opacity:1}.settings-toggle svg[data-v-39f45018]{width:24px;height:24px;stroke-width:2}.tour-hint[data-v-39f45018]{position:fixed;top:4.75rem;background:#1f2937eb;color:#fff;padding:.5rem .75rem;border-radius:8px;font-size:.8125rem;font-weight:500;line-height:1.3;box-shadow:0 4px 12px #0000001f;cursor:pointer;max-width:220px;z-index:999;animation:hint-bounce-39f45018 1.8s ease-in-out infinite}.tour-hint .hint-arrow[data-v-39f45018]{position:absolute;top:-6px;right:18px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid rgba(31,41,55,.92)}.settings-hint[data-v-39f45018]{right:1rem}.chapters-hint[data-v-39f45018]{right:4.5rem}.fullscreen-hint[data-v-39f45018]{right:8rem}.fullscreen-hint.no-chapters[data-v-39f45018]{right:4.5rem}@keyframes hint-bounce-39f45018{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.hint-enter-active[data-v-39f45018],.hint-leave-active[data-v-39f45018]{transition:opacity .2s ease,transform .2s ease}.hint-enter-from[data-v-39f45018],.hint-leave-to[data-v-39f45018]{opacity:0;transform:translateY(-6px)}@media (prefers-reduced-motion: reduce){.settings-hint[data-v-39f45018]{animation:none}}.settings-content[data-v-39f45018]{position:fixed;top:5rem;right:1rem;min-width:280px;max-width:400px;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;padding:1.5rem;max-height:calc(100vh - 100px);overflow-y:auto}.settings-title[data-v-39f45018]{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;color:var(--text)}.setting-group[data-v-39f45018]{margin-bottom:1.5rem}.setting-label[data-v-39f45018]{display:block;font-size:.9rem;font-weight:500;color:var(--text);margin-bottom:.5rem}.setting-hint[data-v-39f45018]{font-size:.75rem;color:var(--text-light);margin-top:.25rem}.button-group[data-v-39f45018]{display:flex;gap:.5rem}.button-group-levels[data-v-39f45018]{display:grid;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:.5rem}.btn-option[data-v-39f45018]{flex:1;min-height:44px;padding:.625rem 1rem;background:var(--bg-alt);border:2px solid var(--border);border-radius:8px;font-size:.875rem;font-weight:600;color:var(--text);cursor:pointer;transition:background .15s,border-color .15s}.btn-option[data-v-39f45018]:hover{background:#e5e7eb;border-color:var(--primary)}.btn-option.active[data-v-39f45018]{background:var(--primary);border-color:var(--primary);color:#fff}.slider[data-v-39f45018]{width:100%;height:6px;border-radius:3px;background:var(--bg-alt);outline:none;-webkit-appearance:none}.slider[data-v-39f45018]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:var(--primary);cursor:pointer;transition:transform .15s}.slider[data-v-39f45018]::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider[data-v-39f45018]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--primary);cursor:pointer;border:none;transition:transform .15s}.slider[data-v-39f45018]::-moz-range-thumb:hover{transform:scale(1.15)}.btn-reset[data-v-39f45018]{width:100%;min-height:44px;padding:.625rem 1rem;background:var(--bg-alt);border:2px solid var(--border);border-radius:8px;font-size:.875rem;font-weight:600;color:var(--text);cursor:pointer;transition:background .15s,border-color .15s}.btn-reset[data-v-39f45018]:hover{background:#e5e7eb;border-color:var(--primary)}.slide-enter-active[data-v-39f45018],.slide-leave-active[data-v-39f45018]{transition:opacity .2s ease,transform .2s ease}.slide-enter-from[data-v-39f45018],.slide-leave-to[data-v-39f45018]{opacity:0;transform:translateY(-10px)}@media (prefers-reduced-motion: reduce){.slide-enter-active[data-v-39f45018],.slide-leave-active[data-v-39f45018]{transition:none}}@media (max-width: 800px){.fullscreen-toggle[data-v-39f45018],.chapter-nav-toggle[data-v-39f45018],.settings-toggle[data-v-39f45018],.tour-hint[data-v-39f45018]{display:none}.settings-panel.mobile-fullscreen[data-v-39f45018]{position:fixed;top:0;right:0;left:0;bottom:0;width:100vw;height:100vh;background:#00000080;z-index:2000}.settings-panel.mobile-fullscreen .settings-content[data-v-39f45018]{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;height:100vh;max-height:100vh;background:#fff;border-radius:0;box-shadow:none;overflow:hidden;padding:0;transform:none;display:flex;flex-direction:column}.mobile-settings-header[data-v-39f45018]{position:fixed;top:0;left:0;right:0;height:70px;background:#fff;border-bottom:1px solid var(--border, #e5e7eb);display:flex;align-items:center;justify-content:center;padding:0 1.5rem;z-index:20;flex-shrink:0}.mobile-settings-header .settings-title[data-v-39f45018]{margin:0;font-size:1.25rem;font-weight:600;color:var(--text)}.mobile-close-button[data-v-39f45018]{position:absolute;top:50%;transform:translateY(-50%);right:1rem;width:44px;height:44px;border-radius:50%;background:var(--bg-alt, #f5f5f5);color:var(--text);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:10}.mobile-close-button[data-v-39f45018]:active{background:var(--bg-hover, #e5e5e5)}.mobile-close-button svg[data-v-39f45018]{stroke-width:2.5}.settings-body[data-v-39f45018]{flex:1;overflow-y:auto;overflow-x:hidden}.settings-body.with-header[data-v-39f45018]{padding-top:70px;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:1.5rem}.button-group[data-v-39f45018]{flex-direction:column}.settings-panel.mobile-fullscreen .slide-enter-active[data-v-39f45018],.settings-panel.mobile-fullscreen .slide-leave-active[data-v-39f45018]{transition:none!important}.settings-panel.mobile-fullscreen-chapters[data-v-39f45018]{position:fixed;top:0;right:0;left:0;bottom:0;width:100vw;height:100vh;background:#00000080;z-index:2000}.settings-panel.mobile-fullscreen-chapters .mobile-chapters-content[data-v-39f45018]{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;height:100vh;max-height:100vh;background:#fff;border-radius:0;box-shadow:none;overflow:hidden;padding:0;transform:none;display:flex;flex-direction:column}.settings-panel.mobile-fullscreen-chapters .slide-enter-active[data-v-39f45018],.settings-panel.mobile-fullscreen-chapters .slide-leave-active[data-v-39f45018]{transition:none!important}}.feedback-container[data-v-98bde19a]{position:fixed;bottom:1.5rem;right:1.5rem;z-index:900}.feedback-toggle[data-v-98bde19a]{width:48px;height:48px;border-radius:50%;background:var(--primary);color:#fff;border:none;box-shadow:0 4px 12px #00000026;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .2s,transform .2s,background .2s}.feedback-toggle[data-v-98bde19a]:hover{opacity:1;background:var(--primary-hover);transform:scale(1.05)}.feedback-toggle svg[data-v-98bde19a]{width:20px;height:20px}.feedback-hint[data-v-98bde19a]{position:absolute;bottom:12px;right:60px;background:#1f2937eb;color:#fff;padding:.5rem .75rem;border-radius:8px;font-size:.8125rem;font-weight:500;line-height:1.3;white-space:nowrap;box-shadow:0 4px 12px #0000001f;cursor:pointer;z-index:1;animation:feedback-hint-bounce-98bde19a 1.8s ease-in-out infinite}.feedback-hint .hint-arrow[data-v-98bde19a]{position:absolute;top:50%;right:-6px;transform:translateY(-50%);width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:6px solid rgba(31,41,55,.92)}@keyframes feedback-hint-bounce-98bde19a{0%,to{transform:translate(0)}50%{transform:translate(-4px)}}.hint-enter-active[data-v-98bde19a],.hint-leave-active[data-v-98bde19a]{transition:opacity .2s ease,transform .2s ease}.hint-enter-from[data-v-98bde19a],.hint-leave-to[data-v-98bde19a]{opacity:0;transform:translate(6px)}@media (prefers-reduced-motion: reduce){.feedback-hint[data-v-98bde19a]{animation:none}}.feedback-backdrop[data-v-98bde19a]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1999}.feedback-modal[data-v-98bde19a]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:90%;max-width:520px;max-height:90vh;overflow-y:auto;z-index:2000}.success-state[data-v-98bde19a]{padding:3rem 2rem;text-align:center}.success-icon[data-v-98bde19a]{color:#10b981;margin-bottom:1rem}.success-state h2[data-v-98bde19a]{font-size:1.5rem;font-weight:600;color:var(--text);margin:0 0 .5rem}.success-state p[data-v-98bde19a]{color:var(--text-light);font-size:.9rem;line-height:1.5;margin:0 0 1.5rem}.error-state[data-v-98bde19a]{padding:3rem 2rem;text-align:center}.error-icon[data-v-98bde19a]{color:#ef4444;margin-bottom:1rem}.error-state h2[data-v-98bde19a]{font-size:1.5rem;font-weight:600;color:var(--text);margin:0 0 .5rem}.error-state p[data-v-98bde19a]{color:var(--text-light);font-size:.9rem;line-height:1.5;margin:0 0 1.5rem}.form-state[data-v-98bde19a]{display:flex;flex-direction:column}.modal-header[data-v-98bde19a]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h2[data-v-98bde19a]{font-size:1.25rem;font-weight:600;color:var(--text);margin:0}.close-button[data-v-98bde19a]{width:36px;height:36px;border-radius:50%;background:var(--bg-alt);color:var(--text);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.close-button[data-v-98bde19a]:hover{background:#e5e7eb}.desktop-tabs[data-v-98bde19a]{display:flex;padding:0 1.5rem;border-bottom:1px solid var(--border)}.mobile-tabs[data-v-98bde19a]{display:none;padding:.75rem 1.5rem;border-bottom:1px solid var(--border)}.tab-select[data-v-98bde19a]{width:100%;padding:.75rem;border:2px solid var(--border);border-radius:8px;font-size:.9rem;font-weight:500;color:var(--text);background:#fff;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.tab-select[data-v-98bde19a]:focus{outline:none;border-color:var(--primary)}.tab[data-v-98bde19a]{flex:1;padding:.75rem .5rem;background:none;border:none;border-bottom:2px solid transparent;font-size:.8rem;font-weight:500;color:var(--text-light);cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;align-items:center;gap:.25rem}.tab-icon[data-v-98bde19a]{flex-shrink:0}.tab[data-v-98bde19a]:hover{color:var(--text)}.tab.active[data-v-98bde19a]{color:var(--primary);border-bottom-color:var(--primary)}.form-content[data-v-98bde19a]{padding:1.5rem}.welcome-text[data-v-98bde19a]{color:var(--text-light);font-size:.875rem;line-height:1.5;margin:0 0 1.5rem}.rating-group[data-v-98bde19a]{margin-bottom:1.5rem}.rating-group label[data-v-98bde19a]{display:block;font-size:.9rem;font-weight:500;color:var(--text);margin-bottom:.75rem}.stars[data-v-98bde19a]{display:flex;gap:.25rem;margin-bottom:.5rem}.star-button[data-v-98bde19a]{background:none;border:none;padding:.25rem;cursor:pointer;color:#fcd34d;transition:transform .15s}.star-button[data-v-98bde19a]:hover{transform:scale(1.1)}.star-button svg[data-v-98bde19a]{display:block}.star-button svg.filled[data-v-98bde19a]{filter:drop-shadow(0 2px 4px rgba(251,191,36,.4))}.hint[data-v-98bde19a]{font-size:.75rem;color:var(--text-muted)}.input-group[data-v-98bde19a]{margin-bottom:1rem}.label-row[data-v-98bde19a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.label-row label[data-v-98bde19a]{margin-bottom:0}.char-counter[data-v-98bde19a]{font-size:.75rem;font-weight:600}.char-counter.error[data-v-98bde19a]{color:#ef4444}.input-group label[data-v-98bde19a]{display:block;font-size:.9rem;font-weight:500;color:var(--text);margin-bottom:.5rem}.input-group textarea[data-v-98bde19a]{width:100%;padding:.75rem;border:2px solid var(--border);border-radius:8px;font-size:.9rem;font-family:inherit;resize:vertical;transition:border-color .15s;box-sizing:border-box}.input-group textarea[data-v-98bde19a]:focus{outline:none;border-color:var(--primary)}.input-group textarea[data-v-98bde19a]::placeholder{color:#9ca3af;opacity:.7}.modal-actions[data-v-98bde19a]{display:flex;gap:.75rem;padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--border)}.btn-primary[data-v-98bde19a],.btn-secondary[data-v-98bde19a]{flex:1;min-height:44px;padding:.75rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.btn-primary[data-v-98bde19a]{background:var(--primary);color:#fff;border:none}.btn-primary[data-v-98bde19a]:hover:not(:disabled){background:var(--primary-hover)}.btn-primary[data-v-98bde19a]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-98bde19a]{background:var(--bg-alt);color:var(--text);border:2px solid var(--border)}.btn-secondary[data-v-98bde19a]:hover{background:#e5e7eb}.fade-enter-active[data-v-98bde19a],.fade-leave-active[data-v-98bde19a]{transition:opacity .2s ease}.fade-enter-from[data-v-98bde19a],.fade-leave-to[data-v-98bde19a]{opacity:0}.modal-enter-active[data-v-98bde19a],.modal-leave-active[data-v-98bde19a]{transition:opacity .2s ease,transform .2s ease}.modal-enter-from[data-v-98bde19a],.modal-leave-to[data-v-98bde19a]{opacity:0;transform:translate(-50%,-50%) scale(.95)}@media (max-width: 800px){.feedback-container[data-v-98bde19a]{display:none}.feedback-toggle[data-v-98bde19a]{width:44px;height:44px}.feedback-modal[data-v-98bde19a]{width:100%;max-width:100%;height:100vh;max-height:100vh;border-radius:0;top:0;left:0;transform:none}.desktop-tabs[data-v-98bde19a]{display:none}.mobile-tabs[data-v-98bde19a]{display:block}.modal-enter-from[data-v-98bde19a],.modal-leave-to[data-v-98bde19a]{transform:translateY(100%)}.modal-enter-active[data-v-98bde19a],.modal-leave-active[data-v-98bde19a]{transition:opacity .2s ease,transform .2s ease}.modal-enter-to[data-v-98bde19a]{transform:translateY(0)}.form-content[data-v-98bde19a]{padding:1.5rem;padding-bottom:100px}.modal-actions[data-v-98bde19a]{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--border);padding:1rem}}@media (prefers-reduced-motion: reduce){.fade-enter-active[data-v-98bde19a],.fade-leave-active[data-v-98bde19a],.modal-enter-active[data-v-98bde19a],.modal-leave-active[data-v-98bde19a]{transition:none}.star-button[data-v-98bde19a]:hover,.feedback-toggle[data-v-98bde19a]:hover{transform:none}}.reader-view[data-v-60d0d3e5]{width:100%;min-height:100vh;position:relative}.loading-screen[data-v-60d0d3e5]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.loading-spinner[data-v-60d0d3e5]{width:48px;height:48px;border:4px solid var(--bg-alt);border-top-color:var(--primary);border-radius:50%;animation:spin-60d0d3e5 1s linear infinite}@keyframes spin-60d0d3e5{to{transform:rotate(360deg)}}.loading-screen p[data-v-60d0d3e5]{color:var(--text-light);font-size:1rem}.error-screen[data-v-60d0d3e5]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem;padding:2rem;text-align:center}.error-icon[data-v-60d0d3e5]{color:var(--text-light);margin-bottom:.5rem}.error-screen h2[data-v-60d0d3e5]{font-size:1.5rem;color:var(--text);margin:0}.error-screen p[data-v-60d0d3e5]{color:var(--text-light);max-width:500px;margin:0}.reader-content[data-v-60d0d3e5]{width:100%;height:100vh;position:relative;overflow:hidden}.back-button[data-v-60d0d3e5]{position:fixed;top:1rem;left:1rem;display:flex;align-items:center;gap:.5rem;min-height:44px;padding:.625rem 1rem;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;color:var(--text);text-decoration:none;font-size:.875rem;font-weight:600;transition:background .15s,box-shadow .15s,transform .15s;z-index:900}.back-button[data-v-60d0d3e5]:hover{background:var(--bg-alt);box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.back-button svg[data-v-60d0d3e5]{width:20px;height:20px;stroke-width:2}.book-title[data-v-60d0d3e5]{position:fixed;top:1rem;left:50%;transform:translate(-50%);text-align:center;z-index:900;max-width:500px}.book-title h1[data-v-60d0d3e5]{font-size:1.25rem;font-weight:600;color:var(--text);margin:0}.author-name[data-v-60d0d3e5]{font-size:.875rem;color:var(--text-light);margin:.25rem 0 0}.empty-state[data-v-60d0d3e5]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.empty-state p[data-v-60d0d3e5]{color:var(--text-light);font-size:1rem}.btn[data-v-60d0d3e5]{display:inline-block;min-height:44px;padding:.4rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;text-decoration:none;transition:background .15s}.btn[data-v-60d0d3e5]:hover{background:var(--primary-hover)}@media (max-width: 800px){.reader-content[data-v-60d0d3e5]{padding:0}.back-button[data-v-60d0d3e5],.book-title[data-v-60d0d3e5]{display:none}}#app[data-v-33eebf46]{min-height:100vh}@font-face{font-family:OpenDyslexic;src:url(/reader/fonts/OpenDyslexic/OpenDyslexic-Regular.woff2) format("woff2"),url(/reader/fonts/OpenDyslexic/OpenDyslexic-Regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:OpenDyslexic;src:url(/reader/fonts/OpenDyslexic/OpenDyslexic-Bold.woff2) format("woff2"),url(/reader/fonts/OpenDyslexic/OpenDyslexic-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:OpenDyslexic;src:url(/reader/fonts/OpenDyslexic/OpenDyslexic-Italic.woff2) format("woff2"),url(/reader/fonts/OpenDyslexic/OpenDyslexic-Italic.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Atkinson Hyperlegible;src:url(/reader/fonts/Atkinson_Hyperlegible/AtkinsonHyperlegible-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Atkinson Hyperlegible;src:url(/reader/fonts/Atkinson_Hyperlegible/AtkinsonHyperlegible-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Atkinson Hyperlegible;src:url(/reader/fonts/Atkinson_Hyperlegible/AtkinsonHyperlegible-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}:root{--primary: #0f2a91;--primary-hover: #0a1f6f;--accent: #ff512b;--text: #1f2937;--text-light: #4B5563;--bg: #FAFAF5;--bg-alt: #F2F5F7;--bg-cream: #faf8f0;--border: #e5e7eb;--shadow: rgba(0, 0, 0, .06);--font-system: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-serif: Georgia, "Times New Roman", Times, serif;--font-atkinson: "Atkinson Hyperlegible", var(--font-system);--font-opendyslexic: "OpenDyslexic", var(--font-system);--font-reader: var(--font-atkinson);--line-spacing: 1.7;--letter-spacing: .02em;--word-spacing: .08em}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-system);line-height:1.6;letter-spacing:var(--letter-spacing);word-spacing:var(--word-spacing);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.font-atkinson{--font-reader: var(--font-atkinson)}body.font-opendyslexic{--font-reader: var(--font-opendyslexic)}body.font-serif{--font-reader: var(--font-serif)}body.bg-cream{--bg: var(--bg-cream)}h1,h2,h3,h4,h5,h6{line-height:1.3;font-weight:600;word-spacing:normal}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.btn{display:inline-block;min-height:44px;padding:.4rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;transition:background .15s;text-align:center}.btn:hover{background:var(--primary-hover);text-decoration:none}.btn-secondary{background:var(--bg-alt);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:#e5e7eb}:focus-visible{outline:3px solid var(--primary);outline-offset:2px;border-radius:4px}a:focus-visible{text-decoration:underline}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
