:root{--primary-color: #4a6fa5;--secondary-color: #f5efdc;--text-color: #000000;--background-color: #f7f3e3;--sidebar-width: 250px;--header-height: 60px;--font-size: 18px;--line-height: 1.6;--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--background-color);--color-background-soft: #eae0c8;--color-background-mute: #e6dcc5;--color-border: rgba(99, 83, 59, .12);--color-border-hover: rgba(99, 83, 59, .29);--color-heading: var(--text-color);--color-text: var(--text-color);--section-gap: 160px}body.dark-mode{--primary-color: #4a6fa5;--text-color: #e9ecef;--background-color: #212529;--secondary-color: #343a40;--color-background: var(--background-color);--color-background-soft: #2c3034;--color-background-mute: #343a40;--color-heading: var(--text-color);--color-text: var(--text-color);--color-border: rgba(255, 255, 255, .1);--color-border-hover: rgba(255, 255, 255, .2)}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:background-color .3s,color .3s;line-height:var(--line-height);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:var(--font-size);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.translation-icon{display:inline-block;width:16px;height:16px;background-color:var(--primary-color);border-radius:50%;color:#fff;font-size:12px;text-align:center;line-height:16px;cursor:pointer;margin:0 3px;vertical-align:middle}body.dark-mode .translation-icon{background-color:#8bb3e5;color:#212529}.translation{display:none;color:#4a6fa5;font-style:italic;margin-left:10px;padding:5px;border-left:2px solid var(--primary-color)}body.dark-mode .translation{color:#8bb3e5}#app{width:100%;margin:0;padding:0;font-weight:400}a{text-decoration:none;color:var(--primary-color);transition:.3s}a:hover{text-decoration:underline}@media (min-width: 1024px){body{display:block}#app{display:block;padding:0}}header[data-v-e15b33f9]{position:fixed;top:0;left:0;right:0;height:var(--header-height);background-color:var(--primary-color);color:#fff;display:flex;align-items:center;padding:0 10px;box-shadow:0 2px 5px #0003;z-index:10001}header h1[data-v-e15b33f9]{margin:0 40px 0 0;font-size:24px;flex-grow:1;text-align:center}.menu-toggle[data-v-e15b33f9]{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;margin-right:15px;width:40px;display:inline-block}.sidebar[data-v-cfe27e3b]{position:fixed;top:0;left:0;height:100vh;width:250px;background-color:var(--background-color);border-right:1px solid var(--color-border);transform:translate(-100%);transition:transform .3s ease;z-index:10001;overflow-y:auto}.sidebar.active[data-v-cfe27e3b]{transform:translate(0)}.sidebar-header[data-v-cfe27e3b]{display:flex;align-items:center;height:var(--header-height);padding:0 15px;border-bottom:1px solid var(--color-border);box-sizing:border-box}body.dark-mode .sidebar-header[data-v-cfe27e3b]{border-bottom-color:var(--color-border)}.app-icon[data-v-cfe27e3b]{width:32px;height:32px;margin-right:15px;background-color:transparent;text-align:center}.app-title[data-v-cfe27e3b]{font-size:1.1em;font-weight:500;color:var(--text-color)}.menu-list[data-v-cfe27e3b]{list-style:none;padding:10px 0 0}.menu-list li[data-v-cfe27e3b]{display:flex;align-items:center;padding:10px 12px;margin-bottom:5px;border-radius:8px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;border-left:4px solid transparent;color:var(--text-color)}.menu-list li[data-v-cfe27e3b]:hover{background-color:var(--hover-bg-color, rgba(74, 111, 165, .15));transform:translate(5px)}.menu-list li.active[data-v-cfe27e3b]{background-color:var(--primary-color);color:#fff;box-shadow:0 2px 5px #0000001a;border-left-color:var(--primary-color)}.menu-icon[data-v-cfe27e3b]{display:inline-block;width:24px;margin-right:10px;font-size:1.2em;text-align:center;font-style:normal}.menu-list li.visually-disabled[data-v-cfe27e3b]{opacity:.5;cursor:not-allowed;pointer-events:none;background-color:transparent;border-left-color:transparent}.error-notification[data-v-db20c1dc]{position:fixed;bottom:40px;left:50%;transform:translate(-50%);background-color:#4a4a4a;color:#fff;padding:16px 20px 16px 16px;border-radius:8px;box-shadow:0 4px 20px #00000080,0 0 0 1px #ffffff26;max-width:95%;width:540px;display:flex;align-items:center;justify-content:space-between;z-index:1000;animation:slide-up-db20c1dc .3s ease;border-left:none}.error-notification[data-v-db20c1dc]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:#e74c3c;border-top-left-radius:8px;border-bottom-left-radius:8px}.error-message[data-v-db20c1dc]{margin:0;font-size:15px;line-height:1.4;flex:1;padding-left:12px}.close-button[data-v-db20c1dc]{background:#ffffff1a;border:none;color:#fff;font-size:20px;cursor:pointer;margin-left:15px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border-radius:50%;transition:all .2s ease}.close-button[data-v-db20c1dc]:hover{background-color:#fff3;transform:scale(1.1)}.close-icon[data-v-db20c1dc]{line-height:1}body:not(.dark-mode){background-color:#fff;color:#333;box-shadow:0 4px 16px #0003;border-left:none}body:not(.dark-mode){background:#0000000d;color:#333}body:not(.dark-mode){background-color:#00000026}@keyframes slide-up-db20c1dc{0%{transform:translate(-50%,100%);opacity:0}to{transform:translate(-50%);opacity:1}}.page{bottom:50px}@media (max-width: 768px){.error-notification[data-v-db20c1dc]{width:90%;padding:14px 16px 14px 12px}.error-message[data-v-db20c1dc]{padding-left:8px}}.app-container{min-height:100vh}.main-content{width:100%;background-color:var(--background-color);flex:1;padding:20px;padding-top:calc(var(--header-height) + 20px);margin-left:0;max-width:800px;margin-right:auto;transition:margin-left .3s ease}@media (min-width: 769px){.main-content{margin-left:auto;margin-right:auto}}@media (max-width: 768px){.main-content{padding:15px;padding-top:calc(var(--header-height) + 10px);margin-left:0!important}}@media (min-width: 769px){.menu-toggle{display:none}}.translation-tooltip[data-v-be6f514f]{position:absolute;z-index:10000;background-color:var(--color-background-soft);border:1px solid var(--primary-color);border-radius:4px;padding:12px;box-shadow:0 2px 8px #0003;font-size:var(--font-size);line-height:var(--line-height);margin:0;width:250px;box-sizing:border-box}@media (min-width: 768px){.translation-tooltip[data-v-be6f514f]{width:300px}}.translation-pos-header span[data-v-be6f514f]:not(:last-child){margin-right:.5em}.translation-word[data-v-be6f514f]{display:inline;font-weight:700;font-size:1em}.translation-transcription[data-v-be6f514f]{color:var(--primary-color);font-style:italic;display:inline;font-size:1em;margin-left:5px;margin-right:5px}.translation-grammar[data-v-be6f514f]{color:var(--text-color);font-style:italic;display:inline;margin-left:4px}.translation-pos-group[data-v-be6f514f]{margin-top:12px}.translation-pos-group[data-v-be6f514f]:first-child{margin-top:8px}.translation-pos-header[data-v-be6f514f]{margin-bottom:4px}.translation-meanings[data-v-be6f514f]{counter-reset:meaning;display:block;margin-left:16px}.translation-item[data-v-be6f514f]{display:block;padding-left:1.5em;position:relative;line-height:1.4;margin-bottom:2px}.translation-item[data-v-be6f514f]:before{counter-increment:meaning;content:counter(meaning) ". ";color:var(--primary-color);font-weight:700;position:absolute;left:0}.tooltip-close[data-v-be6f514f]{position:absolute;top:2px;right:2px;background:none;border:none;color:var(--text-color);cursor:pointer;font-size:16px;padding:2px 6px;opacity:.6}.tooltip-close[data-v-be6f514f]:hover{opacity:1}.tooltip-add-word[data-v-be6f514f]{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:20px;line-height:1;padding:0 5px;margin-left:8px;opacity:.8;font-weight:700}.tooltip-add-word[data-v-be6f514f]:hover{opacity:1}.translation-services[data-v-be6f514f]{display:flex;gap:8px;margin-top:12px;padding-top:8px}.translation-service-btn[data-v-be6f514f]{flex:1;padding:6px 12px;border:1px solid var(--primary-color);border-radius:4px;background:none;color:var(--text-color);cursor:pointer;font-size:14px;transition:all .2s ease}.translation-service-btn[data-v-be6f514f]:hover{background-color:var(--primary-color);color:#fff}.tooltip-header[data-v-be6f514f]{display:flex;align-items:center;margin-bottom:8px}.llm-translation-section[data-v-be6f514f],.yandex-translation-section[data-v-be6f514f]{margin-bottom:12px}.llm-result[data-v-be6f514f]{white-space:pre-wrap;line-height:1.5}.error-message[data-v-be6f514f]{color:red;font-size:.9em}.special-case[data-v-be6f514f]{margin-top:6px;padding:6px;background-color:#00000008;border-left:3px solid var(--primary-color)}.llm-formatted-output .output-line[data-v-be6f514f]{margin-bottom:4px}.llm-formatted-output .output-line[data-v-be6f514f]:last-child{margin-bottom:0}.comment[data-v-be6f514f]{margin-top:6px;padding:4px 0;background-color:transparent;border:none;border-radius:0;font-weight:500;color:var(--primary-color, #4169e1);position:relative}.progress-indicator[data-v-dbe38421]{position:fixed;bottom:0;left:0;right:0;height:30px;background-color:var(--color-background-soft);border-top:1px solid var(--color-border);display:flex;align-items:center;padding:0;z-index:100;transition:left .3s ease}body.dark-mode .progress-indicator[data-v-dbe38421]{border-top:1px solid var(--color-border)}.progress-bar-container[data-v-dbe38421]{position:relative;flex-grow:1;height:100%;display:flex;align-items:center;cursor:pointer;padding:0 10px}.progress-background[data-v-dbe38421]{position:absolute;left:10px;right:10px;height:8px;background-color:#cecdc8;border-radius:4px}.progress-bar[data-v-dbe38421]{height:8px;width:0%;max-width:calc(100% - 20px);background-color:var(--primary-color);transition:width .1s linear;position:absolute;left:10px;border-radius:4px;z-index:1}.progress-bar-container[data-v-dbe38421]:before{content:none}body.dark-mode .progress-bar-container[data-v-dbe38421]:before{background-color:#555}body.dark-mode .progress-background[data-v-dbe38421]{background-color:#555}body.dark-mode .progress-bar[data-v-dbe38421]{background-color:#4a6fa5}.page-info[data-v-dbe38421]{font-size:14px;color:var(--text-color);white-space:nowrap;flex-shrink:0;position:relative;z-index:2;margin-right:10px}.process-chunk-btn[data-v-dbe38421]{background-color:var(--primary-color);color:var(--button-text-color, white);border:none;border-radius:4px;padding:4px 10px;font-size:14px;cursor:pointer;transition:background-color .3s ease;position:relative;overflow:hidden;min-width:80px;text-align:center;flex-shrink:0;z-index:2;margin-right:10px}.process-chunk-btn[data-v-dbe38421]:last-child{margin-right:10px}.process-chunk-btn .button-text[data-v-dbe38421]{display:inline-block;transition:opacity .2s ease}.process-chunk-btn.loading .button-text[data-v-dbe38421]{opacity:0}.process-chunk-btn.loading .button-loader[data-v-dbe38421]{opacity:1}.process-chunk-btn .button-loader[data-v-dbe38421]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:loading-animation-dbe38421 .8s linear infinite;opacity:0;transition:opacity .2s ease}@keyframes loading-animation-dbe38421{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.process-chunk-btn[data-v-dbe38421]:hover{background-color:#3a5f8a}.process-chunk-btn[data-v-dbe38421]:active{background-color:#2c4a6b}body.dark-mode .process-chunk-btn[data-v-dbe38421]{background-color:var(--primary-color);color:#fff}body.dark-mode .process-chunk-btn[data-v-dbe38421]:hover{background-color:#5a7aa0}body.dark-mode .process-chunk-btn[data-v-dbe38421]:active{background-color:#3d5a80}.process-chunk-btn[data-v-dbe38421]:disabled{background-color:#bbb;color:#555;cursor:not-allowed;opacity:.8}body.dark-mode .process-chunk-btn[data-v-dbe38421]:disabled{background-color:#666;opacity:.8}.page[data-v-04e0dbc1]{min-height:100vh;background-color:var(--background-color)}.book-title[data-v-04e0dbc1]{font-size:28px;margin:20px 0;text-align:center;color:var(--text-color)}.book-content[data-v-04e0dbc1]{font-size:var(--font-size);line-height:var(--line-height);text-align:justify;position:relative;color:var(--text-color);padding-bottom:40px;overflow-wrap:break-word}.book-content[data-v-04e0dbc1] p{text-indent:1.5em;margin:1em 0}.loading[data-v-04e0dbc1]{text-align:center;padding:20px;font-style:italic;color:var(--text-color);opacity:.7}.clicked-word-marker[data-v-04e0dbc1]{position:absolute;pointer-events:none;border-bottom:2px solid var(--primary-color);z-index:50}body,.page,.main-content,.book-content{background-color:var(--background-color)!important}.text-segment{border-radius:8px;padding:0;margin:2em 0;position:relative}html{overflow-y:scroll}.text-segment:not(:last-child):after{content:"";display:block;width:30%;height:1px;background-color:var(--primary-color);opacity:.3;margin:2em auto}.current-segment{padding-left:.5em;padding-right:.5em;margin-left:-.5em;margin-right:-.5em;transition:border-color .3s ease}.text-segment[data-segment-status=processed]{border-left:3px solid var(--accent-color)}.undo-processed-button{position:absolute;top:-30px;right:5px;background:#80808080;color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:16px;line-height:24px;text-align:center;cursor:pointer;opacity:1;transition:opacity .2s ease,background-color .2s ease;z-index:10}.text-segment:hover .undo-processed-button,.text-segment[data-segment-status=processed] .undo-processed-button,.text-segment[data-segment-status=error] .undo-processed-button{opacity:1}.text-segment[data-segment-status=processing] .undo-processed-button{display:none}.reader-container{padding:20px 20px 60px;line-height:1.8;max-width:800px;margin:0 auto;position:relative;font-size:var(--font-size)}.text-segment[data-segment-status=done]{border-left:3px solid var(--accent-color)}.text-segment[data-segment-status=error]{border:1px solid var(--error-color, #d9534f);background-color:#d9534f1a}.dark-mode .text-segment[data-segment-status=error]{border-color:var(--error-dark, #c9302c);background-color:#c9302c33}.text-segment:hover .undo-processed-button,.text-segment[data-segment-status=done] .undo-processed-button,.text-segment[data-segment-status=error] .undo-processed-button{opacity:1}.undo-processed-button:hover{background:#505050b3}.text-segment[data-segment-status=in-progress] .undo-processed-button,.text-segment[data-segment-status=in-progress] .segment-action-buttons{display:none}.page.mobile-layout .segment-action-buttons,.page.desktop-layout .footer-translate-button,.page.desktop-layout .footer-undo-button{display:none!important}.text-segment[data-segment-status=in-progress] .segment-action-buttons .button-translate-segment,.text-segment[data-segment-status=in-progress] .segment-action-buttons .button-undo-segment{display:none!important}.page:not(.mobile-layout) .text-segment[data-segment-status=in-progress] .segment-action-buttons{display:flex!important;opacity:1!important}.segment-action-buttons{position:absolute;top:-30px;right:5px;display:flex;gap:5px;z-index:10;opacity:1;transition:opacity .2s ease-in-out}.button-translate-segment,.button-undo-segment{background:#80808080;color:#fff;border:none;border-radius:4px;padding:3px 8px;font-size:14px;line-height:1.2;text-align:center;cursor:pointer;transition:background-color .2s ease}.button-translate-segment:hover,.button-undo-segment:hover{background:#505050b3}.segment-loader{display:inline-block;width:16px;height:16px;border:2px solid rgba(180,180,180,.5);border-top-color:var(--text-color, white);border-radius:50%;animation:segment-loading-animation .8s linear infinite;vertical-align:middle}@keyframes segment-loading-animation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.upload-area[data-v-9884f4d4]{border:2px dashed var(--primary-color);border-radius:10px;padding:40px;text-align:center;margin:20px 0;cursor:pointer;transition:background-color .3s}.upload-area[data-v-9884f4d4]:hover,.upload-area.highlight[data-v-9884f4d4]{background-color:#4a6fa51a}.upload-message[data-v-9884f4d4]{color:var(--text-color)}.upload-icon[data-v-9884f4d4]{font-size:48px;margin:20px 0;color:var(--primary-color)}.settings-container[data-v-375702ce]{max-width:600px;margin:20px auto;padding:0 20px;box-sizing:border-box}.setting-group[data-v-375702ce],.settings-section[data-v-375702ce]{background-color:var(--color-background-soft);border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 4px #63533b1a;box-sizing:border-box;width:100%}.setting-group h3[data-v-375702ce],.settings-section h3[data-v-375702ce]{margin:0 0 24px;padding-bottom:12px;border-bottom:1px solid rgba(0,0,0,.1);color:var(--text-color);font-size:18px;font-weight:600}.setting-item[data-v-375702ce]{margin-bottom:20px;width:100%;box-sizing:border-box}.setting-item[data-v-375702ce]:last-child{margin-bottom:0}.setting-item label[data-v-375702ce]{display:block;margin-bottom:8px;color:var(--text-color);font-weight:500;font-size:14px}.setting-input[data-v-375702ce],.setting-item select[data-v-375702ce],.setting-item input[type=range][data-v-375702ce]{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.1);border-radius:6px;background-color:var(--background-color);color:var(--text-color);font-size:14px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.setting-input[data-v-375702ce]:focus,.setting-item select[data-v-375702ce]:focus,.setting-item input[type=range][data-v-375702ce]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6fa51a}.setting-item input[type=range][data-v-375702ce]{padding:0;height:8px;cursor:pointer;accent-color:var(--primary-color)}.theme-toggle-label[data-v-375702ce]{display:flex;align-items:center;gap:12px;cursor:pointer}.theme-toggle-button[data-v-375702ce]{background:var(--color-background-soft);border:1px solid var(--color-border);border-radius:20px;padding:6px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease}.theme-toggle-button[data-v-375702ce]:hover{background-color:var(--color-background-mute)}.theme-icon[data-v-375702ce]{font-size:16px;transition:opacity .3s ease}body:not(.dark-mode) .dark-icon[data-v-375702ce],body.dark-mode .light-icon[data-v-375702ce]{opacity:.3}[data-v-375702ce] body.dark-mode .setting-input,[data-v-375702ce] body.dark-mode .setting-item select{border-color:var(--color-border);background-color:var(--color-background-mute)}[data-v-375702ce] body.dark-mode .setting-group,[data-v-375702ce] body.dark-mode .settings-section{background-color:var(--color-background-soft);box-shadow:0 2px 4px #0003}[data-v-375702ce] body.dark-mode .setting-group h3,[data-v-375702ce] body.dark-mode .settings-section h3{border-bottom-color:var(--color-border)}.setting-group:last-child .setting-item[data-v-375702ce]{padding-left:0;margin-top:8px}.checkbox-label[data-v-375702ce]{display:flex;align-items:center;gap:8px;cursor:pointer;margin:0}.checkbox-label input[type=checkbox][data-v-375702ce]{margin:0;width:18px;height:18px;vertical-align:middle}.checkbox-label span[data-v-375702ce]{color:var(--text-color);font-size:14px;margin:0 0 0 6px;line-height:1}
