.immersive-reader.svelte-1e3s7hu{--reader-bg:#fffdf8;--reader-text:#1f2926;--reader-muted:#51605b;--reader-border:#1f292633;--reader-subtle:#f0f3ef;--reader-font-family:var(--font-serif);--reader-text-scale:100%;padding:clamp(1.25rem,4vw,3rem);box-sizing:border-box;background:var(--reader-bg);width:100%;min-width:0;color:var(--reader-text);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding-inline:max(clamp(1.25rem,4vw,3rem),50% - 23rem)}.immersive-reader[data-reading-theme=sepia].svelte-1e3s7hu{--reader-bg:#f4ecd8;--reader-text:#453b2a;--reader-muted:#74644a;--reader-border:#453b2a40;--reader-subtle:#eadfc5;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.immersive-reader[data-reading-theme=oled-dark].svelte-1e3s7hu{--reader-bg:#000;--reader-text:#8a9b95;--reader-muted:#64736e;--reader-border:#8a9b9557;--reader-subtle:#111615;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.immersive-reader[data-reading-theme=oled-day].svelte-1e3s7hu{--reader-bg:#000;--reader-text:#f4f6f5;--reader-muted:#b9c5c1;--reader-border:#f4f6f552;--reader-subtle:#141817;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.immersive-reader[data-reading-theme=light].svelte-1e3s7hu{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.immersive-heading-row.svelte-1e3s7hu{border-bottom:1px solid var(--reader-border);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:clamp(1.5rem,4vw,3rem);padding-bottom:1.25rem;display:flex}.immersive-heading-copy.svelte-1e3s7hu{min-width:0}.immersive-heading-actions.svelte-1e3s7hu{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:.65rem;display:flex}.immersive-heading-row.svelte-1e3s7hu .immersive-header{border:0;margin:0;padding:0}.immersive-header.svelte-1e3s7hu{border-bottom:1px solid var(--reader-border);break-inside:avoid;margin-bottom:clamp(1.5rem,4vw,3rem);padding-bottom:1.25rem}.immersive-kicker.svelte-1e3s7hu,.immersive-progress.svelte-1e3s7hu{color:var(--reader-muted);margin:0;font-size:.875rem}.immersive-header.svelte-1e3s7hu h2:where(.svelte-1e3s7hu){color:var(--reader-text);font-family:var(--reader-font-family);margin:.5rem 0;font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.15}.enter-fullscreen.svelte-1e3s7hu,.exit-fullscreen.svelte-1e3s7hu,.fullscreen-mode-switch.svelte-1e3s7hu button:where(.svelte-1e3s7hu),.reading-settings-toggle.svelte-1e3s7hu{border:1px solid var(--reader-border);border-radius:var(--radius-md);background:var(--reader-subtle);color:var(--reader-text);font-weight:650}.enter-fullscreen.svelte-1e3s7hu{flex:none;padding:.7rem .9rem}.reading-settings-toggle.svelte-1e3s7hu{white-space:nowrap;flex:none;padding:.7rem .9rem}.enter-fullscreen.svelte-1e3s7hu:hover,.exit-fullscreen.svelte-1e3s7hu:hover,.fullscreen-mode-switch.svelte-1e3s7hu button:where(.svelte-1e3s7hu):hover,.reading-settings-toggle.svelte-1e3s7hu:hover{border-color:var(--c-primary);color:var(--c-primary)}.fullscreen-error.svelte-1e3s7hu{color:var(--c-danger,#b42318);margin:-1rem 0 1.5rem}.immersive-content.svelte-1e3s7hu{color:var(--reader-text);font-family:var(--reader-font-family);overflow-wrap:anywhere;outline-offset:.35rem;font-size:clamp(1.1rem,2vw,1.35rem)}.reading-align-left.svelte-1e3s7hu .immersive-content:where(.svelte-1e3s7hu){text-align:left}.reading-align-center.svelte-1e3s7hu .immersive-content:where(.svelte-1e3s7hu){text-align:center}.reading-align-justify.svelte-1e3s7hu .immersive-content:where(.svelte-1e3s7hu){text-align:justify}.immersive-content.svelte-1e3s7hu p:where(.svelte-1e3s7hu){color:var(--reader-text);font-family:var(--reader-font-family);font-size:var(--reader-text-scale);orphans:3;widows:3;margin:0 0 1.35em;line-height:1.8}.immersive-content.svelte-1e3s7hu p:where(.svelte-1e3s7hu):last-child{margin-bottom:0}.immersive-navigation.svelte-1e3s7hu{border-top:1px solid var(--reader-border);color:var(--reader-muted);justify-content:space-between;align-items:center;gap:1rem;margin-top:clamp(1.5rem,4vw,3rem);padding-top:1.25rem;font-size:.875rem;display:flex}.immersive-navigation.svelte-1e3s7hu button:where(.svelte-1e3s7hu){border:1px solid var(--reader-border);border-radius:var(--radius-md);background:var(--reader-subtle);color:var(--reader-text);padding:.65rem .85rem;font-weight:600}.immersive-navigation.svelte-1e3s7hu button:where(.svelte-1e3s7hu):hover:not(:disabled){border-color:var(--c-primary);color:var(--c-primary)}.immersive-navigation.svelte-1e3s7hu button:where(.svelte-1e3s7hu):disabled{cursor:not-allowed;opacity:.5}:-webkit-any(.immersive-reader.svelte-1e3s7hu:fullscreen,.immersive-reader.svelte-1e3s7hu:-webkit-full-screen){background:var(--reader-bg);width:100%;max-width:none;height:100%;box-shadow:none;border-radius:0;margin:0;padding:0;overflow:hidden}:is(.immersive-reader.svelte-1e3s7hu:fullscreen,.immersive-reader.svelte-1e3s7hu:fullscreen){background:var(--reader-bg);width:100%;max-width:none;height:100%;box-shadow:none;border-radius:0;margin:0;padding:0;overflow:hidden}.immersive-reader.fullscreen-active.svelte-1e3s7hu{z-index:1000;background:var(--reader-bg);width:100dvw;max-width:none;height:100dvh;box-shadow:none;border-radius:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.fullscreen-reader.svelte-1e3s7hu{background:var(--reader-bg);width:100%;height:100%;min-height:0;color:var(--reader-text);flex-direction:column;display:flex}.fullscreen-toolbar.svelte-1e3s7hu{z-index:2;border-bottom:1px solid var(--reader-border);background:color-mix(in srgb, var(--reader-bg) 94%, transparent);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;padding:.75rem clamp(.75rem,2.5vw,2rem);display:grid}.fullscreen-book-position.svelte-1e3s7hu{flex-direction:column;min-width:0;display:flex}.fullscreen-book-position.svelte-1e3s7hu strong:where(.svelte-1e3s7hu){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fullscreen-book-position.svelte-1e3s7hu span:where(.svelte-1e3s7hu),.page-position.svelte-1e3s7hu{color:var(--reader-muted);font-size:.8rem}.fullscreen-mode-switch.svelte-1e3s7hu{border:1px solid var(--reader-border);border-radius:var(--radius-md);background:var(--reader-subtle);padding:.2rem;display:flex}.fullscreen-mode-switch.svelte-1e3s7hu button:where(.svelte-1e3s7hu){background:0 0;border-color:#0000;padding:.5rem .75rem}.fullscreen-mode-switch.svelte-1e3s7hu button.active:where(.svelte-1e3s7hu){border-color:var(--reader-border);background:var(--reader-bg);color:var(--c-primary);box-shadow:var(--shadow-sm)}.fullscreen-toolbar-actions.svelte-1e3s7hu{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.8rem;min-width:0;display:flex}.fullscreen-toolbar-error.svelte-1e3s7hu{max-width:16rem;color:var(--c-danger,#b42318);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.exit-fullscreen.svelte-1e3s7hu{padding:.55rem .75rem}.reading-settings.svelte-1e3s7hu{box-sizing:border-box;border:1px solid var(--reader-border);background:var(--reader-subtle);width:100%;min-width:0;color:var(--reader-text);margin:0 0 clamp(1.5rem,4vw,3rem);padding:1rem;overflow-x:hidden}.fullscreen-reader.svelte-1e3s7hu>.reading-settings:where(.svelte-1e3s7hu){border-width:0 0 1px;flex:none;min-height:0;max-height:min(55dvh,28rem);margin:0;overflow-y:auto}.reading-settings-grid.svelte-1e3s7hu{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-width:0;display:grid}.reading-setting-group.svelte-1e3s7hu{min-width:0;border:0;min-inline-size:0;margin:0;padding:0}.reading-setting-group.svelte-1e3s7hu>label:where(.svelte-1e3s7hu),.reading-setting-group.svelte-1e3s7hu>legend:where(.svelte-1e3s7hu){box-sizing:border-box;width:100%;color:var(--reader-muted);justify-content:space-between;align-items:baseline;gap:.5rem;margin:0 0 .45rem;padding:0;font-size:.8rem;font-weight:750;display:flex}.reading-setting-options.svelte-1e3s7hu{flex-wrap:wrap;gap:.35rem;min-width:0;display:flex}.reading-setting-options.svelte-1e3s7hu button:where(.svelte-1e3s7hu){border:1px solid var(--reader-border);border-radius:var(--radius-sm);background:var(--reader-bg);min-width:0;color:var(--reader-text);font:inherit;overflow-wrap:anywhere;flex:4.5rem;padding:.45rem .55rem;font-size:.8rem;font-weight:650}.reading-setting-options.svelte-1e3s7hu button:where(.svelte-1e3s7hu):hover,.reading-setting-options.svelte-1e3s7hu button.active:where(.svelte-1e3s7hu){border-color:var(--c-primary);color:var(--c-primary)}.reading-setting-options.svelte-1e3s7hu button.active:where(.svelte-1e3s7hu){background:color-mix(in srgb, var(--c-primary) 10%, var(--reader-bg))}.reading-setting-group.svelte-1e3s7hu select:where(.svelte-1e3s7hu),.reading-setting-group.svelte-1e3s7hu input[type=range]:where(.svelte-1e3s7hu){box-sizing:border-box;width:100%;max-width:100%;display:block}.reading-setting-group.svelte-1e3s7hu select:where(.svelte-1e3s7hu){border:1px solid var(--reader-border);border-radius:var(--radius-sm);background:var(--reader-bg);min-height:2.35rem;color:var(--reader-text);font:inherit;padding:.4rem .55rem;font-size:.85rem}.reading-setting-group.svelte-1e3s7hu input[type=range]:where(.svelte-1e3s7hu){accent-color:var(--c-primary)}.reading-setting-group.svelte-1e3s7hu small:where(.svelte-1e3s7hu){color:var(--reader-muted);margin-top:.35rem;font-size:.7rem;line-height:1.35;display:block}.paged-frame.svelte-1e3s7hu{flex:auto;min-width:0;min-height:0;padding:clamp(1rem,3vw,2.5rem) clamp(2rem,6vw,6rem) 0;overflow:hidden}.paged-viewport.svelte-1e3s7hu{touch-action:pan-y pinch-zoom;cursor:pointer;outline-offset:.25rem;-webkit-user-select:text;user-select:text;width:100%;height:100%;position:relative;overflow:hidden}.paged-content.svelte-1e3s7hu{width:var(--page-width);column-width:var(--page-width);column-fill:auto;overflow-wrap:anywhere;column-gap:0;height:100%}.paged-content.svelte-1e3s7hu .immersive-header,.paged-content.svelte-1e3s7hu .immersive-content{padding:0 clamp(.25rem,1vw,1rem)}.continuous-viewport.svelte-1e3s7hu{overscroll-behavior:contain;touch-action:pan-y pinch-zoom;scrollbar-gutter:stable;flex:auto;min-width:0;min-height:0;overflow:hidden auto}.continuous-content.svelte-1e3s7hu{box-sizing:border-box;width:min(100%,52rem);min-width:0;margin:0 auto;padding:clamp(1.5rem,5vw,4rem) clamp(1.25rem,5vw,3rem)}@media screen and (width<=760px){.fullscreen-toolbar.svelte-1e3s7hu{grid-template-columns:minmax(0,1fr) auto}.fullscreen-mode-switch.svelte-1e3s7hu{grid-area:2/1/auto/-1;justify-self:center}.page-position.svelte-1e3s7hu{display:none}.fullscreen-toolbar-actions.svelte-1e3s7hu{gap:.35rem}.paged-frame.svelte-1e3s7hu{padding-left:2.25rem;padding-right:2.25rem}}@media screen and (width<=576px){.immersive-reader.svelte-1e3s7hu{padding:.75rem}.immersive-heading-row.svelte-1e3s7hu{flex-direction:column;align-items:stretch}.enter-fullscreen.svelte-1e3s7hu{align-self:flex-start}.immersive-navigation.svelte-1e3s7hu{text-align:center;flex-direction:column;align-items:stretch}.fullscreen-book-position.svelte-1e3s7hu span:where(.svelte-1e3s7hu){display:none}.immersive-heading-actions.svelte-1e3s7hu{flex-direction:column;align-items:stretch}.fullscreen-toolbar.svelte-1e3s7hu{gap:.5rem;padding:.55rem .65rem}.fullscreen-mode-switch.svelte-1e3s7hu{width:100%}.fullscreen-mode-switch.svelte-1e3s7hu button:where(.svelte-1e3s7hu){flex:1}.continuous-content.svelte-1e3s7hu{padding:1rem .75rem}.reading-settings.svelte-1e3s7hu{padding:.75rem}.reading-settings-grid.svelte-1e3s7hu{grid-template-columns:1fr;gap:.75rem}.fullscreen-toolbar-actions.svelte-1e3s7hu .reading-settings-toggle:where(.svelte-1e3s7hu),.fullscreen-toolbar-actions.svelte-1e3s7hu .exit-fullscreen:where(.svelte-1e3s7hu){padding:.45rem .5rem;font-size:.72rem}.paged-frame.svelte-1e3s7hu{padding-top:1rem}}.app-container.svelte-13g7fma{font-family:var(--font-sans);color:var(--c-text);box-sizing:border-box;flex-direction:column;align-items:center;width:100%;min-height:100vh;padding:2rem 1rem;display:flex}@media screen and (width<=576px){.app-container.svelte-13g7fma{padding-left:0;padding-right:0}}button.svelte-13g7fma{cursor:pointer;background:0 0;border:none;font-family:inherit}input.svelte-13g7fma{color:var(--c-text);font-family:inherit}h1.svelte-13g7fma,h2.svelte-13g7fma,h3.svelte-13g7fma,h4.svelte-13g7fma{font-family:var(--font-serif);color:var(--c-text);margin:0}.library-view.svelte-13g7fma{width:100%}.library-header.svelte-13g7fma{text-align:center;margin-bottom:3rem}.logo-circle.svelte-13g7fma{background-color:var(--c-primary);width:4rem;height:4rem;color:var(--c-on-primary);border-radius:var(--radius-full);box-shadow:var(--shadow-md);justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.library-header.svelte-13g7fma h1:where(.svelte-13g7fma){color:var(--c-text);margin-bottom:.5rem;font-size:2rem}.library-header.svelte-13g7fma p:where(.svelte-13g7fma){color:var(--c-text-light);font-size:1.125rem}.built-on.svelte-13g7fma{color:var(--c-text-light);margin-top:.75rem;font-size:.95rem}.built-on.svelte-13g7fma a:where(.svelte-13g7fma){color:var(--c-primary);border-bottom:1px dashed var(--c-border);text-decoration:none;transition:color .2s,border-color .2s}.built-on.svelte-13g7fma a:where(.svelte-13g7fma):hover{color:var(--c-primary-dark);border-color:var(--c-primary)}.upload-card.svelte-13g7fma{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--c-border-light);margin-bottom:2rem;padding:2rem}.file-input-wrapper.svelte-13g7fma{border:2px dashed var(--c-border-dashed);border-radius:var(--radius-md);background:var(--c-bg-subtle);justify-content:center;align-items:center;height:150px;transition:all .2s;display:flex;position:relative}.file-input-wrapper.svelte-13g7fma:hover{border-color:var(--c-primary);background:var(--c-primary-hover-bg)}.file-input-wrapper.svelte-13g7fma:focus-within{outline:2px solid var(--c-primary);outline-offset:3px}.file-input.svelte-13g7fma{opacity:0;cursor:pointer;z-index:10;width:100%;height:100%;position:absolute}.upload-placeholder.svelte-13g7fma{color:var(--c-text-light);pointer-events:none;text-align:center;flex-direction:column;align-items:center;display:flex}.status-message.svelte-13g7fma{border-radius:var(--radius-md);align-items:center;gap:.75rem;margin-top:1rem;padding:1rem;display:flex}.status-message.loading.svelte-13g7fma{background:var(--c-primary-light);color:var(--c-primary-dark)}.status-message.error.svelte-13g7fma{background:var(--c-danger-bg);color:var(--c-danger);border:1px solid var(--c-danger-border)}.spinner.svelte-13g7fma{border:2px solid;border-right-color:#0000;border-radius:50%;width:1.25rem;height:1.25rem;animation:.75s linear infinite svelte-13g7fma-spin}@keyframes svelte-13g7fma-spin{to{transform:rotate(360deg)}}.tip-card.svelte-13g7fma{background:var(--c-info-bg);border:1px solid var(--c-info-border);border-radius:var(--radius-md);color:var(--c-info-text);gap:1rem;margin-bottom:3rem;padding:1rem;display:flex}.tip-card.svelte-13g7fma a:where(.svelte-13g7fma){color:var(--c-info-link);font-weight:600;text-decoration:underline}.tip-header-container.svelte-13g7fma{flex-direction:row;align-items:center;gap:1rem;display:flex}.library-header-row.svelte-13g7fma{margin-bottom:1.5rem}.library-header-row.svelte-13g7fma h2:where(.svelte-13g7fma){letter-spacing:.04em;font-size:1.1rem;font-weight:800}.library-header-row.svelte-13g7fma h2:where(.svelte-13g7fma) span:where(.svelte-13g7fma){color:var(--c-text-muted);font-weight:500}.book-grid.svelte-13g7fma{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.book-card.svelte-13g7fma{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--c-border-light);flex-direction:column;gap:1rem;padding:1.5rem;transition:all .2s;display:flex;position:relative}.book-card.svelte-13g7fma:hover{box-shadow:var(--shadow-lg);border-color:var(--c-primary-light);transform:translateY(-4px)}.book-open.svelte-13g7fma{text-align:left;width:100%;color:inherit;flex-direction:column;flex:1;gap:1rem;padding:0;display:flex}.book-open.svelte-13g7fma:focus-visible{outline:2px solid var(--c-primary);outline-offset:3px}.book-title.svelte-13g7fma{-webkit-line-clamp:2;line-clamp:2;color:var(--c-text);-webkit-box-orient:vertical;margin-bottom:.25rem;font-size:1.1rem;line-height:1.4;display:-webkit-box;overflow:hidden}.book-author.svelte-13g7fma{color:var(--c-text-light);margin:0;font-size:.875rem}.progress-labels.svelte-13g7fma{color:var(--c-text-light);justify-content:space-between;margin-bottom:.25rem;font-size:.75rem;font-weight:500;display:flex}.progress-track.svelte-13g7fma{background:var(--c-progress-track);border-radius:var(--radius-full);height:.5rem;overflow:hidden}.progress-fill.svelte-13g7fma{background:linear-gradient(90deg, var(--c-primary), var(--c-primary-gradient-to));height:100%;transition:width .3s}.book-meta.svelte-13g7fma{color:var(--c-text-muted);justify-content:space-between;margin-top:auto;font-size:.75rem;display:flex}.book-badge.svelte-13g7fma{border-radius:var(--radius-full);background:var(--c-success);color:var(--c-on-primary);text-transform:uppercase;letter-spacing:.05em;padding:.2rem .6rem;font-size:.7rem;font-weight:700;position:absolute;top:-.6rem;left:1rem}.delete-btn.svelte-13g7fma{color:var(--c-text-muted);border-radius:var(--radius-full);opacity:0;padding:.25rem;transition:all .2s;position:absolute;top:.75rem;right:.75rem}.book-card.svelte-13g7fma:hover .delete-btn:where(.svelte-13g7fma),.delete-btn.svelte-13g7fma:focus-visible{opacity:1}@media (hover:none){.delete-btn.svelte-13g7fma{opacity:1}}.delete-btn.svelte-13g7fma:hover{background:var(--c-danger-bg);color:var(--c-danger)}.empty-library.svelte-13g7fma{text-align:center;color:var(--c-text-light);padding:4rem 0}.reader-view.svelte-13g7fma{flex-direction:column;gap:2rem;width:100%;display:flex}.reader-topbar.svelte-13g7fma{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;min-width:0;display:flex}.reader-book-title.svelte-13g7fma{min-width:0;max-width:none;color:var(--c-text);text-overflow:ellipsis;white-space:nowrap;flex:12rem;margin:0;font-weight:700;overflow:hidden}.reader-book-title.svelte-13g7fma span:where(.svelte-13g7fma){color:var(--c-text-muted);font-weight:400}.mode-toggle.svelte-13g7fma{justify-content:center;gap:.5rem;display:flex}.mode-toggle.svelte-13g7fma button:where(.svelte-13g7fma){border:1px solid var(--c-border);border-radius:var(--radius-full);color:var(--c-text-light);padding:.65rem 1rem;font-weight:600}.mode-toggle.svelte-13g7fma button:where(.svelte-13g7fma):hover,.mode-toggle.svelte-13g7fma button.active:where(.svelte-13g7fma){border-color:var(--c-primary);background:var(--c-primary-light);color:var(--c-primary-dark)}.reader-stage.svelte-13g7fma{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg), inset 0 0 0 1px var(--c-border-light);justify-content:center;align-items:center;height:min(660px,55svh);padding:2rem;display:flex;position:relative;overflow:hidden}@media screen and (orientation:landscape){.reader-stage.svelte-13g7fma{height:300px}}@media screen and (display-mode:fullscreen){.reader-stage.svelte-13g7fma{border-radius:0}}:is(.reader-stage.svelte-13g7fma:fullscreen,.reader-stage.fullscreen-fallback.svelte-13g7fma){touch-action:none}.reader-stage.fullscreen-fallback.svelte-13g7fma{z-index:1000;box-sizing:border-box;border-radius:0;width:100dvw;height:100dvh;position:fixed;inset:0}.control-btn.rewind.svelte-13g7fma,.fs-btn.rewind.svelte-13g7fma{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.word-display.svelte-13g7fma{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.context-words.svelte-13g7fma{color:var(--c-context-text);font-family:var(--font-mono);opacity:.6;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;height:12rem;font-size:1.5rem;display:flex}.current-word-container.svelte-13g7fma{align-items:center;min-height:5rem;margin:2rem 0;display:flex}.current-word.svelte-13g7fma{font-family:var(--font-mono);color:var(--c-text);font-size:4rem;font-weight:700;line-height:1}.chapter-progress-bar.svelte-13g7fma{background:var(--c-border-light);width:100%;height:4px;position:absolute;bottom:0;left:0}.chapter-fill.svelte-13g7fma{background:var(--c-accent);transform-origin:0;height:100%;transition:transform .2s linear}.chapter-time.svelte-13g7fma{color:#fff;pointer-events:none;background:#0009;border-radius:4px;padding:.2rem .5rem;font-size:.75rem;position:absolute;bottom:.75rem;left:.75rem}.reader-overlay.svelte-13g7fma{pointer-events:none;position:absolute;inset:0}.fs-toggle.svelte-13g7fma{pointer-events:auto;background:var(--c-bg-input);width:2.5rem;height:2.5rem;box-shadow:var(--shadow-sm);color:var(--c-text);border:1px solid var(--c-border-light);border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:flex;position:absolute;bottom:.75rem;right:.75rem}.fs-toggle.svelte-13g7fma:hover{background:var(--c-bg-subtle);transform:scale(1.1)}.fs-controls-rewind.svelte-13g7fma{left:.75rem}.fs-controls-play-pause.svelte-13g7fma{right:.75rem}.fs-controls.svelte-13g7fma{pointer-events:auto;flex-direction:column;justify-content:center;height:100%;display:flex;position:absolute;right:.75rem}.fs-btn.svelte-13g7fma{background:var(--c-surface);color:var(--c-text);box-shadow:var(--shadow-lg);border:1px solid var(--c-border-light);border-radius:50%;justify-content:center;align-items:center;transition:transform .1s;display:flex}.fs-btn.play.svelte-13g7fma{width:4rem;height:4rem;color:var(--c-primary)}.fs-btn.rewind.svelte-13g7fma{width:3rem;height:3rem;color:var(--c-accent)}.fs-btn.svelte-13g7fma:hover{background:var(--c-bg-subtle);transform:scale(1.1)}.reader-controls-container.svelte-13g7fma{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem}.speech-section.svelte-13g7fma{border-top:1px solid var(--c-border);margin-top:1.5rem;padding-top:1.5rem}.speech-heading-row.svelte-13g7fma,.speech-options.svelte-13g7fma,.speech-actions.svelte-13g7fma{align-items:center;gap:.75rem;display:flex}.speech-heading-row.svelte-13g7fma{justify-content:space-between;margin-bottom:1rem}.speech-heading-row.svelte-13g7fma h3:where(.svelte-13g7fma){font-size:1rem}.speech-status.svelte-13g7fma,.speech-message.svelte-13g7fma{color:var(--c-text-light);font-size:.875rem}.speech-message.svelte-13g7fma{margin:0}.speech-message.error.svelte-13g7fma{color:var(--c-danger);margin-top:.75rem}.speech-options.svelte-13g7fma{flex-wrap:wrap;margin-bottom:1rem}.speech-option.svelte-13g7fma{align-items:center;gap:.5rem;display:flex}.speech-option.svelte-13g7fma label:where(.svelte-13g7fma){color:var(--c-text-light);font-size:.8rem;font-weight:600}.speech-option.svelte-13g7fma select:where(.svelte-13g7fma){border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-bg-input);max-width:15rem;color:var(--c-text);padding:.35rem}.speech-rate-option.svelte-13g7fma input:where(.svelte-13g7fma){width:8rem}.speech-rate-option.svelte-13g7fma output:where(.svelte-13g7fma){min-width:2.5rem;color:var(--c-text-light);font-variant-numeric:tabular-nums}.speech-actions.svelte-13g7fma button:where(.svelte-13g7fma){border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-bg-subtle);color:var(--c-text);padding:.55rem .85rem;font-weight:600}.speech-actions.svelte-13g7fma button:where(.svelte-13g7fma):first-child{border-color:var(--c-primary);background:var(--c-primary);color:var(--c-on-primary)}.speech-actions.svelte-13g7fma button:where(.svelte-13g7fma):hover:not(:disabled){border-color:var(--c-primary)}.speech-actions.svelte-13g7fma button:where(.svelte-13g7fma):disabled{cursor:not-allowed;opacity:.5}.progress-stats.svelte-13g7fma{color:var(--c-text-light);justify-content:space-between;margin-bottom:.5rem;font-size:.875rem;display:flex}.main-stat.svelte-13g7fma{color:var(--c-primary);font-size:1.1rem;font-weight:700}.main-progress-track.svelte-13g7fma{background:var(--c-progress-track);border-radius:var(--radius-full);height:.75rem;margin-bottom:2rem;overflow:hidden}.reader-stage.svelte-13g7fma:focus-visible{outline:2px solid var(--c-primary);outline-offset:3px}.main-progress-fill.svelte-13g7fma{background:var(--c-primary);transform-origin:0;height:100%;transition:transform .3s}.primary-controls.svelte-13g7fma{justify-content:center;align-items:center;gap:2rem;margin-bottom:2rem;display:flex}.control-btn.svelte-13g7fma{box-shadow:var(--shadow-md);border-radius:50%;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:flex}.control-btn.svelte-13g7fma:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.control-btn.svelte-13g7fma:active:not(:disabled){transform:scale(.95)}.control-btn.rewind.svelte-13g7fma{background:var(--c-accent-light);width:3.5rem;height:3.5rem;color:var(--c-accent);border:2px solid var(--c-accent-border)}.control-btn.rewind.svelte-13g7fma:hover:not(:disabled){background:var(--c-accent);color:var(--c-on-primary);border-color:var(--c-accent)}.control-btn.play-pause.svelte-13g7fma{background:var(--c-primary);width:5rem;height:5rem;color:var(--c-on-primary);box-shadow:0 10px 25px -5px var(--c-shadow-primary)}.control-btn.play-pause.svelte-13g7fma:hover:not(:disabled){background:var(--c-primary-dark);transform:scale(1.05)}.settings-row.svelte-13g7fma{justify-content:center;gap:1.5rem;margin-bottom:1.5rem;display:flex}@media screen and (width<=576px){.settings-row.svelte-13g7fma{flex-direction:column;width:10rem;margin:2rem auto}}.setting-group.svelte-13g7fma{background:var(--c-bg-subtle);border-radius:var(--radius-full);border:1px solid var(--c-border);align-items:center;padding:.25rem .75rem;display:flex}.setting-group.svelte-13g7fma input:where(.svelte-13g7fma){width:4rem;color:var(--c-text);text-align:center;background:0 0;border:none;font-size:1rem;font-weight:700}.setting-group.svelte-13g7fma input:where(.svelte-13g7fma):focus{outline:none}.setting-group.svelte-13g7fma label:where(.svelte-13g7fma){color:var(--c-text-light);text-transform:uppercase;margin-left:.25rem;font-size:.75rem;font-weight:600}.presets-row.svelte-13g7fma{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2rem;display:flex}.preset-btn.svelte-13g7fma{border-radius:var(--radius-full);background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-light);padding:.4rem 1rem;font-size:.875rem;font-weight:600;transition:all .2s}.preset-btn.svelte-13g7fma:hover{border-color:var(--c-primary);color:var(--c-primary)}.preset-btn.active.svelte-13g7fma{background:var(--c-primary);color:var(--c-on-primary);border-color:var(--c-primary)}.extra-settings-section.svelte-13g7fma{border-top:1px solid var(--c-border);margin-bottom:1.5rem;padding-top:1.5rem}.toggle-extras.svelte-13g7fma{width:100%;color:var(--c-text-light);justify-content:center;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.extras-panel.svelte-13g7fma{background:var(--c-bg-subtle);border-radius:var(--radius-md);margin-top:1.5rem;padding:1.5rem}.extras-panel.svelte-13g7fma h4:where(.svelte-13g7fma){text-align:center;color:var(--c-text);margin-bottom:1rem;font-size:.9rem}.multipliers-grid.svelte-13g7fma{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.mult-group.svelte-13g7fma{flex-direction:column;align-items:center;display:flex}.mult-group.svelte-13g7fma input:where(.svelte-13g7fma){text-align:center;border:1px solid var(--c-border);background:var(--c-bg-input);width:3.5rem;color:var(--c-text);border-radius:.25rem;margin-bottom:.25rem;padding:.25rem}.mult-group.svelte-13g7fma label:where(.svelte-13g7fma){color:var(--c-text-light);font-size:.7rem}.extras-actions.svelte-13g7fma{justify-content:center;margin-top:1.5rem;display:flex}.reset-btn.svelte-13g7fma{color:var(--c-danger);border-radius:var(--radius-md);align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;display:flex}.reset-btn.svelte-13g7fma:hover{background:var(--c-danger-bg)}.toc-section.svelte-13g7fma{border-top:1px solid var(--c-border);padding-top:1.5rem}.toc-toggle.svelte-13g7fma{width:100%;color:var(--c-text);align-items:center;gap:.75rem;margin-bottom:1rem;font-size:1.1rem;font-weight:700;display:flex}.toc-list.svelte-13g7fma{flex-direction:column;gap:.5rem;max-height:400px;padding-right:.5rem;display:flex;overflow-y:auto}.toc-item.svelte-13g7fma{border-radius:var(--radius-md);text-align:left;align-items:center;gap:1rem;padding:.75rem;transition:background .2s;display:flex}.toc-item.svelte-13g7fma:hover{background:var(--c-bg-subtle)}.toc-item.active.svelte-13g7fma{background:var(--c-primary-light)}.chapter-num.svelte-13g7fma{background:var(--c-border);width:1.75rem;height:1.75rem;color:var(--c-text-light);border-radius:.25rem;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.toc-item.active.svelte-13g7fma .chapter-num:where(.svelte-13g7fma){background:var(--c-primary);color:var(--c-on-primary)}.chapter-info.svelte-13g7fma{flex:1;min-width:0}.chapter-title.svelte-13g7fma{white-space:nowrap;text-overflow:ellipsis;color:var(--c-text);font-size:.95rem;font-weight:500;display:block;overflow:hidden}.toc-item.active.svelte-13g7fma .chapter-title:where(.svelte-13g7fma){color:var(--c-primary)}.chapter-meta.svelte-13g7fma{color:var(--c-text-light);font-size:.75rem}.toc-item.svelte-13g7fma .arrow{color:var(--c-text-muted)}.back-link.svelte-13g7fma{border:1px solid var(--c-border);border-radius:var(--radius-md);color:var(--c-text-light);flex:none;align-items:center;gap:.5rem;padding:.55rem .85rem;font-weight:600;transition:border-color .2s,color .2s;display:flex}.back-link.svelte-13g7fma:hover{border-color:var(--c-primary);color:var(--c-primary)}.modal-overlay.svelte-13g7fma{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card.svelte-13g7fma{background:var(--c-surface);border-radius:var(--radius-lg);width:100%;max-width:24rem;box-shadow:var(--shadow-lg);padding:2rem}.modal-header.svelte-13g7fma{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.icon-danger.svelte-13g7fma{color:var(--c-danger);background:var(--c-danger-bg);border-radius:50%;padding:.5rem}.modal-actions.svelte-13g7fma{gap:1rem;margin-top:2rem;display:flex}.btn-secondary.svelte-13g7fma,.btn-danger.svelte-13g7fma{border-radius:var(--radius-md);flex:1;padding:.75rem;font-weight:600}.btn-secondary.svelte-13g7fma{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text)}.btn-danger.svelte-13g7fma{background:var(--c-danger);color:var(--c-on-primary)}
