:root{--primary: #667eea;--primary-dark: #764ba2;--accent: #764ba2;--text-dark: #333;--text-light: #666;--text-muted: #888;--bg-light: #f5f7fa;--white: #ffffff;--shadow: 0 4px 20px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .1);--radius: 12px;--radius-lg: 20px;--success: #10b981;--error: #ef4444;--warning: #f59e0b}.text-success{color:var(--success)}.text-error{color:var(--error)}.text-primary{color:var(--primary)}.card{background:var(--white);padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:all .3s ease}.card-elevated{box-shadow:var(--shadow-lg)}.card-interactive:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);cursor:pointer}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.animate-shake{animation:shake .3s ease-in-out}@keyframes flash{0%{background:transparent}50%{background:#10b9811a}to{background:transparent}}.animate-flash-success{animation:flash .5s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-light);color:var(--text-dark);line-height:1.6}@media(max-width:768px){html,body{height:100%;overflow-x:hidden}html.learn-no-scroll,body.learn-no-scroll{overflow:hidden}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;border-radius:10px;font-weight:500;font-size:.9rem;text-decoration:none;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 68%,var(--accent) 100%);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-outline{background:#fff;color:var(--primary);border:2px solid var(--primary)}.btn-outline:hover{background:#f8fafc;border-color:var(--primary-dark);color:var(--primary-dark)}.btn-outline:disabled{color:#a0aec0;border-color:#e2e8f0;background:#f7fafc;cursor:not-allowed;opacity:1}.btn-lg{padding:1rem 2rem;font-size:1.1rem;border-radius:12px}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-enter-active{animation:fadeIn .3s ease}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:#667eea33}.page-shell{max-width:1100px;margin:0 auto;display:grid;gap:1.25rem}.page-hero{padding:2.2rem 2rem;border-radius:24px;background:linear-gradient(135deg,#ffffffeb,#f5f6ffe6),linear-gradient(135deg,#667eeaeb,#764ba2eb);border:1px solid rgba(102,126,234,.08);box-shadow:var(--shadow)}.page-hero.compact{padding:1.5rem 1.75rem}.page-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;color:var(--primary-dark);font-weight:700}.page-hero h1{margin-top:.35rem;font-size:clamp(2rem,5vw,3.4rem);line-height:1.05}.page-hero p:last-child{margin-top:.55rem;color:var(--text-light);max-width:720px}.panel{display:grid;gap:1rem}.panel-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center}.panel-header p{color:var(--text-light)}.form-group{display:grid;gap:.45rem}.form-group label{font-weight:700;color:var(--text-dark)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.9rem 1rem;border:1px solid rgba(31,58,95,.16);border-radius:14px;font-size:1rem;background:#fff;color:var(--text-dark)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3a7ca599;box-shadow:0 0 0 4px #3a7ca51f}.helper-text{color:var(--text-light);font-size:.95rem}.notice{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.95rem 1rem;border-radius:16px;background:#3a7ca514;color:var(--text-dark)}.notice-warning{background:#f59e0b1f}.empty-state{text-align:center;color:var(--text-light);padding:2.5rem 1rem}.bullet-list{display:grid;gap:.6rem;padding-left:1.25rem}.status-chip{display:inline-flex;align-items:center;padding:.35rem .7rem;border-radius:999px;font-size:.88rem;font-weight:700;background:#eef2f6;color:var(--primary)}.status-completed{background:#10b98124;color:#0f766e}.status-failed{background:#ef44441f;color:#b91c1c}.status-analyzing,.status-ocr_processing,.status-audio_generating,.status-image_processing,.status-uploaded{background:#3a7ca524;color:var(--primary)}@media(max-width:768px){.page-hero{padding:1.5rem 1.1rem}}.app[data-v-79fab840]{min-height:100vh;display:flex;flex-direction:column}.header[data-v-79fab840]{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a}.logo[data-v-79fab840]{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#fff}.logo-icon[data-v-79fab840]{font-size:1.5rem}.logo-text[data-v-79fab840]{font-size:1.25rem;font-weight:600}.nav[data-v-79fab840]{display:flex;align-items:center;gap:1rem}.nav-link[data-v-79fab840]{color:#ffffffe6;text-decoration:none;padding:.5rem 1rem;border-radius:8px;transition:background .2s}.nav-link[data-v-79fab840]:hover{background:#ffffff1a}.nav-link.router-link-active[data-v-79fab840]{background:#fff3}.menu-toggle[data-v-79fab840]{display:none}.main[data-v-79fab840]{flex:1;padding:2rem;background:#f5f7fa}@media(max-width:768px){.header[data-v-79fab840]{padding:.75rem 1rem;position:sticky;top:0;z-index:10}.menu-toggle[data-v-79fab840]{display:inline-flex;margin-left:auto;background:#fff3;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:8px;font-size:1.1rem;padding:.35rem .6rem;cursor:pointer}.nav[data-v-79fab840]{position:absolute;top:100%;right:1rem;left:1rem;flex-direction:column;gap:.5rem;padding:.9rem;border-radius:12px;background:linear-gradient(180deg,#fffffffa,#f5f6ff);border:1px solid rgba(102,126,234,.15);box-shadow:0 12px 32px #3c488c2e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}.header.mobile-menu-open .nav[data-v-79fab840]{display:flex;opacity:1;transform:translateY(0);pointer-events:auto}.nav-link[data-v-79fab840]{color:#4c51bf;background:#fff;border:1px solid rgba(102,126,234,.2);border-radius:10px;font-weight:600;width:100%;text-align:center}.nav-link.router-link-active[data-v-79fab840]{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent}.nav .btn[data-v-79fab840]{width:100%;justify-content:center;border-radius:10px}.main[data-v-79fab840]{padding:1rem}}.home[data-v-0c13faf4]{max-width:1200px;margin:0 auto}.hero[data-v-0c13faf4]{text-align:center;padding:3rem 1rem}.hero h1[data-v-0c13faf4]{font-size:3rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}.subtitle[data-v-0c13faf4]{font-size:1.25rem;color:#666;margin-bottom:3rem}.features[data-v-0c13faf4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:3rem}.feature-card[data-v-0c13faf4]{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #00000014;transition:transform .3s,box-shadow .3s}.feature-card[data-v-0c13faf4]:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.feature-icon[data-v-0c13faf4]{font-size:2.5rem;display:block;margin-bottom:1rem}.feature-card h3[data-v-0c13faf4]{font-size:1.25rem;margin-bottom:.5rem;color:#333}.feature-card p[data-v-0c13faf4]{color:#666;font-size:.9rem}.cta[data-v-0c13faf4]{display:flex;gap:1rem;justify-content:center}.btn-lg[data-v-0c13faf4]{padding:1rem 2rem;font-size:1.1rem}.auth-page[data-v-e52a2842]{display:flex;justify-content:center;align-items:center;min-height:60vh}.auth-card[data-v-e52a2842]{background:#fff;padding:2.5rem;border-radius:20px;box-shadow:0 10px 40px #0000001a;width:100%;max-width:400px}.auth-header[data-v-e52a2842]{text-align:center;margin-bottom:2rem}.auth-icon[data-v-e52a2842]{font-size:3rem;display:block;margin-bottom:1rem}.auth-header h2[data-v-e52a2842]{color:#333;font-size:1.5rem}.auth-form[data-v-e52a2842]{display:flex;flex-direction:column;gap:1.25rem}.form-group[data-v-e52a2842]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-e52a2842]{font-weight:500;color:#555}.form-group input[data-v-e52a2842]{padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;transition:border-color .2s}.form-group input[data-v-e52a2842]:focus{outline:none;border-color:#667eea}.error[data-v-e52a2842]{color:#e74c3c;font-size:.9rem;margin:0}.btn-block[data-v-e52a2842]{width:100%;padding:1rem;font-size:1rem}.auth-footer[data-v-e52a2842]{text-align:center;margin-top:1.5rem;color:#666}.auth-footer a[data-v-e52a2842]{color:#667eea;text-decoration:none;font-weight:500}.auth-page[data-v-a18aa93f]{display:flex;justify-content:center;align-items:center;min-height:60vh}.auth-card[data-v-a18aa93f]{background:#fff;padding:2.5rem;border-radius:20px;box-shadow:0 10px 40px #0000001a;width:100%;max-width:400px}.auth-header[data-v-a18aa93f]{text-align:center;margin-bottom:2rem}.auth-icon[data-v-a18aa93f]{font-size:3rem;display:block;margin-bottom:1rem}.auth-header h2[data-v-a18aa93f]{color:#333;font-size:1.5rem}.auth-form[data-v-a18aa93f]{display:flex;flex-direction:column;gap:1.25rem}.form-group[data-v-a18aa93f]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-a18aa93f]{font-weight:500;color:#555}.form-group input[data-v-a18aa93f]{padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;transition:border-color .2s}.form-group input[data-v-a18aa93f]:focus{outline:none;border-color:#667eea}.error[data-v-a18aa93f]{color:#e74c3c;font-size:.9rem;margin:0}.btn-block[data-v-a18aa93f]{width:100%;padding:1rem;font-size:1rem}.auth-footer[data-v-a18aa93f]{text-align:center;margin-top:1.5rem;color:#666}.auth-footer a[data-v-a18aa93f]{color:#667eea;text-decoration:none;font-weight:500}.learn-page[data-v-b7a7a615]{max-width:800px;margin:0 auto}.word-learning[data-v-b7a7a615]{display:flex;flex-direction:column;min-height:calc(100vh - 180px)}.word-stack[data-v-b7a7a615]{position:relative}.book-selection h2[data-v-b7a7a615]{text-align:center;margin-bottom:2rem;color:#333}.book-grid[data-v-b7a7a615]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.book-card[data-v-b7a7a615]{background:#fff;padding:2rem;border-radius:16px;text-align:center;cursor:pointer;box-shadow:0 4px 20px #00000014;transition:transform .2s,box-shadow .2s}.book-card[data-v-b7a7a615]:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.book-icon[data-v-b7a7a615]{font-size:3rem;display:block;margin-bottom:1rem}.book-card h3[data-v-b7a7a615]{color:#333;margin-bottom:.5rem}.book-card p[data-v-b7a7a615]{color:#666;font-size:.9rem}.back-btn[data-v-b7a7a615]{background:none;border:none;color:#667eea;cursor:pointer;font-size:1rem;margin-bottom:1.5rem}.word-card[data-v-b7a7a615]{background:#fff;padding:3rem;border-radius:20px;text-align:center;box-shadow:0 10px 40px #0000001a;cursor:pointer;height:540px;max-height:540px;display:flex;flex-direction:column;justify-content:center;touch-action:pan-y;will-change:transform;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.word-card.back[data-v-b7a7a615]{position:absolute;inset:0;transform:scale(.98);opacity:.85;z-index:1;pointer-events:none}.word-card.front[data-v-b7a7a615]{position:relative;z-index:2}.word[data-v-b7a7a615]{font-size:3rem;color:#333;margin-bottom:.5rem}.phonetic-container[data-v-b7a7a615]{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:2rem}.phonetic[data-v-b7a7a615]{color:#888;font-size:1.25rem;margin:0}.audio-btn[data-v-b7a7a615]{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:background .2s}.audio-btn[data-v-b7a7a615]:hover{background:#f0f0f0}.word-answer[data-v-b7a7a615]{opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s;max-height:none;overflow:visible}.word-answer.visible[data-v-b7a7a615]{opacity:1;transform:translateY(0)}.definition[data-v-b7a7a615]{font-size:1.5rem;color:#667eea;margin-bottom:1rem}.example[data-v-b7a7a615]{color:#666;font-style:italic}.hint[data-v-b7a7a615]{color:#aaa;font-size:.9rem;margin-top:2rem}.word-nav[data-v-b7a7a615]{display:flex;justify-content:center;align-items:center;gap:2rem;margin-top:2rem;margin-top:auto}.progress[data-v-b7a7a615]{color:#666}.learn-header[data-v-b7a7a615]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.filter-toggle[data-v-b7a7a615]{display:flex;align-items:center;gap:.5rem;background:#eef4ff;padding:.5rem 1rem;border-radius:20px;cursor:pointer;box-shadow:0 2px 10px #667eea1f;font-size:.9rem;color:#3c4b6a;transition:all .2s;width:100%;justify-content:space-between}.filter-toggle[data-v-b7a7a615]:hover{box-shadow:0 4px 12px #0000001a}.filters-container[data-v-b7a7a615]{position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;width:min(560px,92vw);border-radius:20px;background:linear-gradient(180deg,#eef4fff2,#f8fafff2)}.filters-container.expanded .filter-toggle[data-v-b7a7a615]{border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:none}.filters-panel[data-v-b7a7a615]{position:absolute;top:100%;right:0;z-index:5;width:100%;padding:1.25rem;padding-bottom:0;background:#f7f9ff;max-height:var(--filters-panel-max-height, min(60vh, 420px));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-top-left-radius:0;border-top-right-radius:0;border:1px solid #e1e8ff;box-shadow:0 12px 24px #667eea1f;transform-origin:top;scrollbar-width:none}.filters-panel[data-v-b7a7a615]::-webkit-scrollbar{width:0;height:0}.filters-handle[data-v-b7a7a615]{position:sticky;bottom:0;display:flex;justify-content:center;align-items:center;padding:.9rem 0 1rem;cursor:pointer;background:#f7f9ff;border-top:1px solid #e1e8ff}.filters-handle-bar[data-v-b7a7a615]{width:140px;height:5px;border-radius:999px;background:#d6dbea;box-shadow:inset 0 1px 1px #ffffffb3}.filter-section[data-v-b7a7a615]{margin-top:1rem}.filter-section label[data-v-b7a7a615]{display:block;font-size:.85rem;font-weight:600;color:#888;margin-bottom:.5rem}.filter-row[data-v-b7a7a615]{display:flex;gap:1.5rem;margin-top:1rem}.toggle-group[data-v-b7a7a615]{display:flex;flex-wrap:wrap;gap:.5rem}.toggle-btn[data-v-b7a7a615]{padding:.4rem .8rem;border:1px solid #e2e8f0;background:#fff;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s}.toggle-btn.active[data-v-b7a7a615]{background:#667eea;color:#fff;border-color:#667eea}.checkbox-container[data-v-b7a7a615]{display:flex;align-items:center;gap:.5rem;font-size:.9rem;cursor:pointer}.ab-inputs[data-v-b7a7a615]{display:flex;gap:.75rem;margin-top:.75rem;margin-bottom:2rem}.ab-input[data-v-b7a7a615]{flex:1;padding:.45rem .6rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem}.btn-small[data-v-b7a7a615]{padding:.35rem .7rem;font-size:.85rem}.no-words[data-v-b7a7a615]{text-align:center;padding:3rem;background:#f9fafb;border-radius:16px;margin:2rem 0}.slide-enter-active[data-v-b7a7a615],.slide-leave-active[data-v-b7a7a615]{transition:max-height .25s ease,opacity .2s ease,transform .25s ease;overflow:hidden}.slide-enter-from[data-v-b7a7a615],.slide-leave-to[data-v-b7a7a615]{opacity:0;transform:translateY(-6px);max-height:0}.slide-enter-to[data-v-b7a7a615],.slide-leave-from[data-v-b7a7a615]{max-height:var(--filters-panel-max-height)}.loading[data-v-b7a7a615]{text-align:center;color:#666}@media(max-width:768px){.learn-page[data-v-b7a7a615]{padding:0 .75rem}.learn-header[data-v-b7a7a615]{flex-direction:column;align-items:flex-start;gap:.75rem}.filter-toggle[data-v-b7a7a615]{width:100%;justify-content:space-between}.filters-container[data-v-b7a7a615]{width:100%}.filters-panel[data-v-b7a7a615]{left:0;right:0;width:auto}.word-card[data-v-b7a7a615]{padding:1.5rem;height:390px;max-height:390px}.word[data-v-b7a7a615]{font-size:2.2rem}.definition[data-v-b7a7a615]{font-size:1.2rem}.phonetic-container[data-v-b7a7a615]{gap:.5rem;margin-bottom:1.25rem}.word-nav[data-v-b7a7a615]{flex-wrap:wrap;gap:1rem}.filter-row[data-v-b7a7a615]{flex-direction:column;gap:.75rem}.ab-inputs[data-v-b7a7a615]{flex-direction:column}}.review-page[data-v-8cfd527b]{max-width:800px;margin:0 auto}.page-title[data-v-8cfd527b]{text-align:center;margin-bottom:2rem;color:var(--text-dark)}.stats-grid[data-v-8cfd527b]{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.stat-card[data-v-8cfd527b]{text-align:center;padding:1.5rem}.stat-card .label[data-v-8cfd527b]{display:block;font-size:.9rem;color:var(--text-light);margin-bottom:.5rem}.stat-card .value[data-v-8cfd527b]{font-size:1.75rem;font-weight:700;color:var(--primary)}.settings-card[data-v-8cfd527b]{padding:2rem}.settings-card h3[data-v-8cfd527b]{margin-bottom:1.5rem;border-bottom:1px solid #eee;padding-bottom:.75rem}.setting-group[data-v-8cfd527b]{margin-bottom:2rem}.setting-group label[data-v-8cfd527b]{display:block;font-weight:600;margin-bottom:.75rem;color:var(--text-light)}.mode-options[data-v-8cfd527b]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.mode-item[data-v-8cfd527b]{border:2px solid #e2e8f0;padding:1.25rem;border-radius:var(--radius);cursor:pointer;transition:all .2s}.mode-item[data-v-8cfd527b]:hover{border-color:var(--primary);background:#f8fafc}.mode-item.active[data-v-8cfd527b]{border-color:var(--primary);background:#eff6ff;box-shadow:0 4px 12px #667eea1a}.mode-item h4[data-v-8cfd527b]{margin-bottom:.5rem;color:var(--text-dark)}.mode-item p[data-v-8cfd527b]{font-size:.85rem;color:var(--text-light);line-height:1.4}.count-selector[data-v-8cfd527b]{display:flex;gap:1rem}.count-btn[data-v-8cfd527b]{flex:1;padding:.75rem;border:1px solid #e2e8f0;background:#fff;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.count-btn.active[data-v-8cfd527b]{background:var(--primary);color:#fff;border-color:var(--primary)}.start-btn[data-v-8cfd527b]{width:100%;margin-top:1rem}.loading[data-v-8cfd527b]{text-align:center;padding:5rem;color:var(--text-light)}.practice-container[data-v-3af868d4]{max-width:600px;margin:0 auto;padding:1rem}.settings-container[data-v-3af868d4]{position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;margin:0 auto 1.5rem;border-radius:18px;background:linear-gradient(180deg,#eef4fff2,#f8fafff2)}.settings-toggle[data-v-3af868d4]{padding:1rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;background:#eef4ff;transition:all .2s;box-shadow:0 2px 10px #667eea1f}.settings-toggle[data-v-3af868d4]:hover{background:#e5eeff}.settings-container.expanded .settings-toggle[data-v-3af868d4]{border-bottom-left-radius:0;border-bottom-right-radius:0}.header-left[data-v-3af868d4]{display:flex;align-items:center;gap:.5rem}.header-left .icon[data-v-3af868d4]{font-size:1.2rem}.header-left .title[data-v-3af868d4]{font-weight:700;color:var(--text-dark)}.header-right[data-v-3af868d4]{display:flex;align-items:center;gap:.75rem}.status-chip[data-v-3af868d4]{background:#fff;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;color:var(--primary);border:1px solid #e2e8f0}.settings-panel[data-v-3af868d4]{position:absolute;top:100%;right:0;z-index:5;width:100%;padding:1.25rem;padding-bottom:0;background:#f7f9ff;max-height:var(--settings-panel-max-height, min(60vh, 420px));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-top-left-radius:0;border-top-right-radius:0;border:1px solid #e1e8ff;box-shadow:0 12px 24px #667eea1f;transform-origin:top;scrollbar-width:none}.settings-panel[data-v-3af868d4]::-webkit-scrollbar{width:0;height:0}.settings-body[data-v-3af868d4]{padding:0}.settings-section[data-v-3af868d4]{margin-bottom:1.25rem}.settings-summary[data-v-3af868d4]{font-size:.85rem;color:var(--text-muted);background:#eef4ff;border:1px dashed #d7e3ff;padding:.5rem .75rem;border-radius:8px;margin-bottom:1rem}.settings-handle[data-v-3af868d4]{position:sticky;bottom:0;display:flex;justify-content:center;align-items:center;padding:.9rem 0 1rem;cursor:pointer;background:#f7f9ff;border-top:1px solid #e1e8ff}.settings-handle-bar[data-v-3af868d4]{width:140px;height:5px;border-radius:999px;background:#d6dbea;box-shadow:inset 0 1px 1px #ffffffb3}.settings-section label[data-v-3af868d4]{display:block;font-size:.85rem;font-weight:600;color:var(--text-light);margin-bottom:.5rem}.toggle-group[data-v-3af868d4]{display:flex;flex-wrap:wrap;gap:.5rem}.toggle-btn[data-v-3af868d4]{padding:.4rem .8rem;border:1px solid #e2e8f0;background:#fff;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s}.toggle-btn[data-v-3af868d4]:hover{border-color:var(--primary);color:var(--primary)}.toggle-btn.active[data-v-3af868d4]{background:var(--primary);color:#fff;border-color:var(--primary)}.settings-row[data-v-3af868d4]{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem}.checkbox-container[data-v-3af868d4]{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-dark);cursor:pointer}.start-session-btn[data-v-3af868d4]{display:block;width:300px;margin:0 auto;margin-bottom:2rem}.session-header[data-v-3af868d4]{margin-bottom:2rem}.progress-bar[data-v-3af868d4]{background:#e2e8f0;height:10px;border-radius:5px;overflow:hidden;margin-bottom:.5rem}.progress-fill[data-v-3af868d4]{background:linear-gradient(90deg,var(--primary) 0%,var(--primary-dark) 100%);height:100%;transition:width .3s ease}.stats-row[data-v-3af868d4]{display:flex;justify-content:space-between;font-size:.9rem;color:var(--text-light)}.practice-card[data-v-3af868d4]{position:relative;min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}.mode-badge[data-v-3af868d4]{position:absolute;top:1rem;right:1rem;background:#f1f5f9;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;color:var(--primary);font-weight:700}.prompt[data-v-3af868d4]{font-size:1rem;color:var(--text-muted);margin-bottom:1.5rem}.definition[data-v-3af868d4]{font-size:1.5rem;margin-bottom:1rem;color:var(--text-dark)}.target-word[data-v-3af868d4]{font-size:3rem;color:var(--primary);margin-bottom:2rem}.cloze-hint[data-v-3af868d4]{font-style:italic;color:var(--text-light);font-size:.9rem;margin-top:1rem;max-width:80%}.audio-play-btn[data-v-3af868d4]{background:#fff;border:2px solid var(--primary);padding:1rem 2rem;border-radius:50px;color:var(--primary);display:flex;align-items:center;gap:.5rem;font-size:1.1rem;cursor:pointer;transition:all .2s;margin:2rem 0}.audio-play-btn[data-v-3af868d4]:hover{background:#eff6ff}.audio-play-btn.playing[data-v-3af868d4]{animation:pulse-3af868d4 1s infinite}@keyframes pulse-3af868d4{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.answer-area[data-v-3af868d4]{width:100%;margin-top:2rem}.options-grid[data-v-3af868d4]{display:grid;gap:.75rem;width:100%}.option-btn[data-v-3af868d4]{background:#fff;border:1px solid #e2e8f0;padding:1rem;border-radius:var(--radius);text-align:left;font-size:1.1rem;cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center}.option-btn[data-v-3af868d4]:hover:not(:disabled){border-color:var(--primary);background:#f8fafc}.option-btn.selected[data-v-3af868d4]{border-color:var(--primary);background:#eff6ff}.option-btn.correct[data-v-3af868d4]{background:#ecfdf5;border-color:var(--success);color:var(--success)}.option-btn.incorrect[data-v-3af868d4]{background:#fef2f2;border-color:var(--error);color:var(--error)}.status-icon[data-v-3af868d4]{font-weight:700;font-size:1.25rem}.input-group[data-v-3af868d4]{display:flex;flex-direction:column;gap:1rem}.text-input[data-v-3af868d4]{width:100%;padding:1rem;border:2px solid #e2e8f0;border-radius:var(--radius);font-size:1.2rem;text-align:center;transition:border-color .2s}.text-input[data-v-3af868d4]:focus{border-color:var(--primary);outline:none}.feedback-toast[data-v-3af868d4]{position:absolute;bottom:0;left:0;right:0;padding:1rem;font-weight:600;color:#fff;text-align:center}.feedback-toast.success[data-v-3af868d4]{background-color:var(--success)}.feedback-toast.error[data-v-3af868d4]{background-color:var(--error)}.summary-overlay[data-v-3af868d4]{padding:3rem;text-align:center}.crown[data-v-3af868d4]{font-size:4rem;display:block;margin-bottom:1rem}.summary-stats[data-v-3af868d4]{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0}.stat-box[data-v-3af868d4]{display:flex;flex-direction:column}.stat-box .label[data-v-3af868d4]{color:var(--text-light);font-size:.9rem}.stat-box .value[data-v-3af868d4]{font-size:2rem;font-weight:700;color:var(--primary)}.summary-actions[data-v-3af868d4]{display:flex;flex-direction:column;gap:1rem}.loading-state[data-v-3af868d4]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem}.spinner[data-v-3af868d4]{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid var(--primary);border-radius:50%;animation:spin-3af868d4 1s linear infinite;margin-bottom:1rem}@keyframes spin-3af868d4{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.slide-enter-active[data-v-3af868d4],.slide-leave-active[data-v-3af868d4]{transition:max-height .25s ease,opacity .2s ease,transform .25s ease;overflow:hidden}.slide-enter-from[data-v-3af868d4],.slide-leave-to[data-v-3af868d4]{opacity:0;transform:translateY(-6px);max-height:0}.slide-enter-to[data-v-3af868d4],.slide-leave-from[data-v-3af868d4]{max-height:var(--settings-panel-max-height)}@media(max-width:768px){.practice-container[data-v-3af868d4]{padding:1rem .75rem}.settings-container[data-v-3af868d4]{width:100%}.settings-panel[data-v-3af868d4]{left:0;right:0;width:auto}.practice-card[data-v-3af868d4]{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}.stats-page[data-v-b46dae9d]{max-width:900px;margin:0 auto}.stats-page h2[data-v-b46dae9d]{text-align:center;margin-bottom:2rem}.summary-grid[data-v-b46dae9d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.summary-card[data-v-b46dae9d]{background:#fff;padding:1.5rem;border-radius:16px;display:flex;align-items:center;gap:1rem;box-shadow:0 4px 20px #00000014}.summary-icon[data-v-b46dae9d]{font-size:2rem}.summary-data[data-v-b46dae9d]{display:flex;flex-direction:column}.summary-value[data-v-b46dae9d]{font-size:1.75rem;font-weight:600;color:#333}.summary-label[data-v-b46dae9d]{color:#888;font-size:.85rem}.chart-card[data-v-b46dae9d],.activity-card[data-v-b46dae9d]{background:#fff;padding:1.5rem;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:1.5rem}.chart-card h3[data-v-b46dae9d],.activity-card h3[data-v-b46dae9d]{margin-bottom:1.5rem;color:#333}.empty-state[data-v-b46dae9d]{text-align:center;color:#888;padding:1rem 0}.bar-chart[data-v-b46dae9d]{display:flex;justify-content:space-around;align-items:flex-end;height:200px;padding:1rem 0}.bar-item[data-v-b46dae9d]{display:flex;flex-direction:column;align-items:center;flex:1}.bar-wrapper[data-v-b46dae9d]{width:30px;height:150px;background:#f0f0f0;border-radius:8px;display:flex;align-items:flex-end;overflow:hidden}.bar[data-v-b46dae9d]{width:100%;background:linear-gradient(180deg,#667eea,#764ba2);border-radius:8px;transition:height .5s ease;min-height:4px}.bar-label[data-v-b46dae9d]{margin-top:.5rem;font-size:.8rem;color:#888}.bar-value[data-v-b46dae9d]{font-size:.75rem;color:#667eea;font-weight:600}.activity-list[data-v-b46dae9d]{display:flex;flex-direction:column;gap:1rem}.activity-item[data-v-b46dae9d]{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f8f9fa;border-radius:12px}.activity-icon[data-v-b46dae9d]{font-size:1.5rem}.activity-content[data-v-b46dae9d]{flex:1}.activity-title[data-v-b46dae9d]{color:#333;margin-bottom:.25rem}.activity-time[data-v-b46dae9d]{color:#888;font-size:.85rem}.admin-page[data-v-4023af96]{max-width:1100px;margin:0 auto}.admin-header[data-v-4023af96]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.subtitle[data-v-4023af96]{color:var(--text-light);font-size:.9rem}.tabs[data-v-4023af96]{display:flex;gap:1rem;margin-bottom:1.5rem;border-bottom:1px solid #e2e8f0}.tab-item[data-v-4023af96]{padding:.5rem 1rem;cursor:pointer;color:var(--text-light);border-bottom:2px solid transparent}.tab-item.active[data-v-4023af96]{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.admin-filters[data-v-4023af96]{display:flex;gap:.75rem;margin-bottom:1rem}.text-input[data-v-4023af96]{flex:1;padding:.6rem .8rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem}.text-input[data-v-4023af96]:focus{outline:none;border-color:var(--primary)}.admin-error[data-v-4023af96]{color:var(--error);margin-bottom:1rem}.admin-success[data-v-4023af96]{color:var(--success);margin-bottom:1rem}.admin-loading[data-v-4023af96]{padding:1rem 0}.admin-table-wrap[data-v-4023af96]{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e2e8f0}.admin-table[data-v-4023af96]{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th[data-v-4023af96],.admin-table td[data-v-4023af96]{padding:.75rem;border-bottom:1px solid #edf2f7;text-align:left}.admin-table th[data-v-4023af96]{background:#f8fafc;color:var(--text-light);font-weight:600}.actions[data-v-4023af96]{display:flex;gap:.5rem;flex-wrap:wrap}.btn-sm[data-v-4023af96]{padding:.3rem .6rem;font-size:.8rem}.status-pill[data-v-4023af96]{display:inline-flex;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600}.status-pill.active[data-v-4023af96]{background:#ecfdf5;color:#0f766e}.status-pill.disabled[data-v-4023af96]{background:#fef2f2;color:#b91c1c}.pagination[data-v-4023af96]{display:flex;justify-content:center;align-items:center;gap:1rem;margin:1rem 0}.stats-panel[data-v-4023af96]{margin-top:2rem;background:#fff;border-radius:12px;padding:1rem;border:1px solid #e2e8f0}.stats-grid[data-v-4023af96]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:.75rem}.stat-card[data-v-4023af96]{background:#f8fafc;border-radius:10px;padding:.75rem}.stat-card .label[data-v-4023af96]{font-size:.75rem;color:var(--text-light)}.stat-card .value[data-v-4023af96]{font-size:1.1rem;font-weight:600}.empty[data-v-4023af96]{text-align:center;color:var(--text-light)}.text-green[data-v-4023af96]{color:#0f766e}.admin-card[data-v-4023af96]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}.ai-subtitle[data-v-4023af96]{color:var(--text-light);margin:.4rem 0 1rem}.ai-form[data-v-4023af96]{display:grid;gap:1rem;max-width:760px}.form-section[data-v-4023af96]{padding-top:.5rem;border-top:1px solid rgba(102,126,234,.14)}.form-section h4[data-v-4023af96]{margin:0 0 .35rem;color:var(--primary-dark)}.inline-hint[data-v-4023af96]{color:var(--text-light);font-size:.85rem}.checkbox-row[data-v-4023af96]{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;font-size:.9rem;color:var(--text-dark);width:fit-content;max-width:100%}.checkbox-row input[data-v-4023af96]{margin:0;flex:0 0 auto;width:18px;height:18px}.checkbox-row label[data-v-4023af96]{margin:0;font-weight:500;display:inline-block;white-space:nowrap}.book-upload-card[data-v-4023af96]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;margin-bottom:1rem}.book-upload-card h3[data-v-4023af96]{font-size:1rem;margin-bottom:.5rem;color:var(--primary)}.upload-desc[data-v-4023af96]{font-size:.85rem;color:var(--text-light);margin-bottom:.75rem}.book-upload-form[data-v-4023af96]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.book-upload-form .form-group[data-v-4023af96]{display:flex;flex-direction:column;gap:4px}.book-upload-form label[data-v-4023af96]{font-size:.8rem;color:var(--text-light);font-weight:500}.book-drop-zone[data-v-4023af96]{border:2px dashed #e2e8f0;border-radius:10px;padding:1.5rem;text-align:center;cursor:pointer;transition:all .25s;margin-bottom:.75rem}.book-drop-zone[data-v-4023af96]:hover,.book-drop-zone.drag-over[data-v-4023af96]{border-color:var(--primary);background:#4f46e50a}.book-drop-zone.has-file[data-v-4023af96]{border-color:#10b981;background:#10b9810a}.drop-icon[data-v-4023af96]{font-size:1.75rem;margin-bottom:4px}.drop-file[data-v-4023af96]{color:#10b981;font-size:.85rem;font-weight:500}.drop-hint[data-v-4023af96]{color:var(--text-light);font-size:.85rem}@media(max-width:640px){.book-upload-form[data-v-4023af96]{grid-template-columns:1fr}}.books-tools[data-v-4023af96]{margin-bottom:1rem}.video-tools[data-v-4023af96]{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;align-items:center}.video-import-form[data-v-4023af96]{display:flex;flex-wrap:wrap;gap:.5rem;flex:1}.video-import-form .text-input[data-v-4023af96]{min-width:200px}.video-import-form .title-input[data-v-4023af96]{max-width:200px}.video-upload label[data-v-4023af96]{cursor:pointer}.video-upload label.disabled[data-v-4023af96]{opacity:.6;cursor:not-allowed}.video-grid[data-v-4023af96]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.video-card[data-v-4023af96]{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;transition:box-shadow .2s}.video-card[data-v-4023af96]:hover{box-shadow:0 4px 12px #0000001a}.video-thumbnail[data-v-4023af96]{position:relative;aspect-ratio:16 / 9;background:#1a1a2e;display:flex;align-items:center;justify-content:center}.video-thumbnail img[data-v-4023af96]{width:100%;height:100%;object-fit:cover}.video-thumbnail .no-thumbnail[data-v-4023af96]{font-size:3rem;color:#666}.duration-badge[data-v-4023af96]{position:absolute;bottom:8px;right:8px;background:#000000bf;color:#fff;padding:2px 6px;border-radius:4px;font-size:.75rem;font-weight:500}.status-overlay[data-v-4023af96]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000000b3;color:#fff;font-weight:600}.status-overlay.downloading[data-v-4023af96]{background:#3b82f6cc}.status-overlay.pending[data-v-4023af96]{background:#f59e0bcc}.status-overlay.error[data-v-4023af96]{background:#ef4444cc}.video-info[data-v-4023af96]{padding:.75rem}.video-title[data-v-4023af96]{font-size:.95rem;font-weight:600;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-meta[data-v-4023af96]{font-size:.8rem;color:var(--text-light);margin:0}.video-actions[data-v-4023af96]{padding:0 .75rem .75rem;display:flex;gap:.5rem}.btn.danger[data-v-4023af96]{color:#dc2626;border-color:#fecaca}.btn.danger[data-v-4023af96]:hover{background:#fef2f2}.empty-state[data-v-4023af96]{text-align:center;padding:3rem;color:var(--text-light)}.upload-progress[data-v-4023af96]{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.progress-bar[data-v-4023af96]{flex:1;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.progress-fill[data-v-4023af96]{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .3s ease}.progress-text[data-v-4023af96]{font-size:.85rem;color:#3b82f6;font-weight:500;min-width:40px}.upload-modal[data-v-4023af96]{width:480px;max-width:90vw}.upload-modal .modal-body[data-v-4023af96]{padding:1.5rem}.upload-modal .form-group[data-v-4023af96]{margin-bottom:1rem}.upload-modal .form-group label[data-v-4023af96]{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-dark)}.upload-modal .required[data-v-4023af96]{color:#ef4444}.upload-modal .file-name[data-v-4023af96]{margin:0;padding:.75rem;background:#f3f4f6;border-radius:6px;font-family:monospace;font-size:.9rem;word-break:break-all}.upload-modal textarea.text-input[data-v-4023af96]{resize:vertical;min-height:80px}.thumbnail-upload[data-v-4023af96]{display:flex;align-items:center;gap:.5rem}.thumbnail-upload input[type=file][data-v-4023af96]{display:none}.thumbnail-upload .clear-thumb[data-v-4023af96]{cursor:pointer;color:#9ca3af;padding:.25rem}.thumbnail-upload .clear-thumb[data-v-4023af96]:hover{color:#ef4444}.upload-modal .hint[data-v-4023af96]{font-size:.75rem;color:#9ca3af;margin:.25rem 0 0}.profile-form[data-v-c248d695]{display:grid;gap:1.15rem;max-width:940px}.form-row[data-v-c248d695]{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.usage-card[data-v-c248d695]{display:grid;gap:.35rem;padding:1.1rem 1.2rem;border:1px solid rgba(102,126,234,.14);border-radius:18px;background:linear-gradient(135deg,#667eea14,#764ba21f);max-width:320px}.usage-card strong[data-v-c248d695]{font-size:2rem;line-height:1;color:var(--primary-dark)}.usage-card span[data-v-c248d695]{color:var(--text-light);font-weight:600}.helper-text[data-v-c248d695]{color:var(--text-light)}.voice-section[data-v-c248d695]{display:grid;gap:.9rem;padding:1rem 1.1rem;border:1px solid rgba(102,126,234,.12);border-radius:20px;background:linear-gradient(180deg,#fffffffa,#f7f9fff5)}.voice-section-header[data-v-c248d695]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;flex-wrap:wrap}.voice-section-header h3[data-v-c248d695]{margin:0;color:var(--primary-dark)}.voice-section-header p[data-v-c248d695]{margin:.3rem 0 0;color:var(--text-light)}.voice-pill[data-v-c248d695],.speed-pill[data-v-c248d695]{display:inline-flex;align-items:center;padding:.45rem .75rem;border-radius:999px;background:#667eea1a;color:var(--primary-dark);font-weight:700;white-space:nowrap}.voice-grid[data-v-c248d695]{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.voice-tag[data-v-c248d695]{display:grid;gap:.65rem;text-align:left;padding:.95rem 1rem;border-radius:18px;border:1px solid rgba(31,58,95,.1);background:#fff;color:var(--text-dark);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.voice-tag[data-v-c248d695]:hover{transform:translateY(-2px);box-shadow:0 12px 28px #667eea1f}.voice-tag.active[data-v-c248d695]{border-color:#667eea59;background:linear-gradient(135deg,#667eea1f,#764ba21a);box-shadow:0 14px 30px #667eea1f}.voice-tag.playing[data-v-c248d695]{border-color:#f59e0b52;box-shadow:0 16px 32px #f59e0b29}.voice-tag-top[data-v-c248d695]{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.voice-tag-top strong[data-v-c248d695]{font-size:1rem;color:var(--primary-dark)}.voice-tag-top span[data-v-c248d695]{color:var(--text-light);font-size:.9rem;white-space:nowrap}.voice-tag-desc[data-v-c248d695]{color:var(--text-light);font-size:.94rem;line-height:1.6}.voice-preview-state[data-v-c248d695]{color:var(--primary-dark);font-size:.9rem;font-weight:700}.speed-section[data-v-c248d695]{background:linear-gradient(135deg,#667eea14,#764ba214)}.speed-slider-card[data-v-c248d695]{display:grid;gap:.9rem;padding:1rem;border-radius:18px;background:#ffffffe6;border:1px solid rgba(102,126,234,.12)}.speed-slider[data-v-c248d695]{-webkit-appearance:none;appearance:none;width:100%;height:14px;border-radius:999px;background:linear-gradient(90deg,#764ba238,#667eea8c,#f59e0b66);outline:none}.speed-slider[data-v-c248d695]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:28px;height:28px;border-radius:999px;border:4px solid white;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 8px 20px #667eea3d;cursor:pointer}.speed-slider[data-v-c248d695]::-moz-range-thumb{width:28px;height:28px;border-radius:999px;border:4px solid white;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 8px 20px #667eea3d;cursor:pointer}.speed-slider[data-v-c248d695]::-moz-range-track{height:14px;border-radius:999px;background:linear-gradient(90deg,#764ba238,#667eea8c,#f59e0b66)}.speed-marks[data-v-c248d695]{display:flex;justify-content:space-between;gap:.5rem;color:var(--text-light);font-size:.85rem}.speed-summary[data-v-c248d695]{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap}.speed-summary strong[data-v-c248d695]{color:var(--primary-dark)}.speed-summary span[data-v-c248d695]{color:var(--text-light)}.speed-actions[data-v-c248d695]{display:inline-flex;align-items:center;gap:.75rem;flex-wrap:wrap}@media(max-width:720px){.form-row[data-v-c248d695],.voice-grid[data-v-c248d695]{grid-template-columns:1fr}.speed-marks[data-v-c248d695]{font-size:.78rem}}.essay-layout[data-v-334871f6]{display:grid;gap:1.5rem;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr)}.upload-box[data-v-334871f6]{border:1px dashed rgba(31,58,95,.25);border-radius:18px;padding:1rem;background:linear-gradient(135deg,#3a7ca514,#f59e0b14)}.upload-trigger[data-v-334871f6]{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:88px;border-radius:14px;cursor:pointer;background:#fff;color:var(--primary);font-weight:700}.upload-trigger input[data-v-334871f6]{display:none}.upload-hint[data-v-334871f6]{margin-top:.75rem;color:var(--text-light);font-size:.95rem}.image-list[data-v-334871f6]{display:grid;gap:1rem;margin-top:1rem}.image-card[data-v-334871f6]{display:grid;gap:.75rem;padding:1rem;border:1px solid rgba(31,58,95,.12);border-radius:16px;background:#fff}.image-card img[data-v-334871f6]{width:100%;aspect-ratio:3 / 4;object-fit:contain;border-radius:12px;background:linear-gradient(180deg,#f8fafff5,#eff3ffe6);border:1px solid rgba(102,126,234,.12)}.image-meta[data-v-334871f6]{display:flex;flex-wrap:wrap;gap:.75rem;color:var(--text-light)}.image-actions[data-v-334871f6]{display:flex;gap:.5rem;flex-wrap:wrap}.submit-row[data-v-334871f6]{margin-top:1.25rem;display:grid;gap:.75rem}.tips-card[data-v-334871f6]{align-self:start}@media(max-width:960px){.essay-layout[data-v-334871f6]{grid-template-columns:1fr}}.history-list[data-v-bef18bfe]{display:grid;gap:1rem}.history-item[data-v-bef18bfe]{display:grid;gap:.75rem;border:1px solid rgba(31,58,95,.12);border-radius:18px;padding:1rem;text-decoration:none;color:inherit;background:linear-gradient(135deg,#fffffff5,#f3f8fcf5);transition:transform .2s ease,box-shadow .2s ease}.history-item[data-v-bef18bfe]:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.history-top[data-v-bef18bfe]{display:flex;gap:1rem;justify-content:space-between}.history-top p[data-v-bef18bfe]{margin-top:.35rem;color:var(--text-light)}.history-meta[data-v-bef18bfe]{display:flex;gap:.75rem;flex-wrap:wrap;color:var(--text-light);font-size:.92rem}.toast-stack[data-v-55127168]{position:fixed;top:84px;right:20px;z-index:60;display:grid;gap:.7rem;pointer-events:none}.task-toast[data-v-55127168]{display:inline-flex;align-items:center;gap:.65rem;max-width:min(420px,calc(100vw - 32px));padding:.85rem 1rem;border-radius:16px;background:#1c1c2beb;color:#fff;box-shadow:0 14px 32px #1c1c2b33}.task-toast-dot[data-v-55127168]{width:10px;height:10px;border-radius:999px;background:linear-gradient(135deg,#667eea,#764ba2);flex:0 0 auto}.toast-stack-enter-active[data-v-55127168],.toast-stack-leave-active[data-v-55127168]{transition:all .28s ease}.toast-stack-enter-from[data-v-55127168],.toast-stack-leave-to[data-v-55127168]{opacity:0;transform:translateY(-8px)}.detail-summary[data-v-55127168]{margin-bottom:1.25rem}.summary-row[data-v-55127168]{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.summary-actions[data-v-55127168]{display:flex;gap:.75rem;flex-wrap:wrap}.detail-grid[data-v-55127168]{display:grid;gap:1.25rem}.processing-card[data-v-55127168]{overflow:hidden}.processing-stage-hero[data-v-55127168]{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:1.5rem;align-items:center;padding:1rem 1.1rem 1.2rem;border-radius:22px;background:linear-gradient(135deg,#667eea1a,#764ba21f);border:1px solid rgba(102,126,234,.12)}.stage-visual[data-v-55127168]{position:relative;min-height:170px;border-radius:24px;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.88),transparent 26%),linear-gradient(160deg,#667eea2e,#764ba242);overflow:hidden}.audio-stage-visual[data-v-55127168]{background:radial-gradient(circle at 26% 26%,rgba(255,255,255,.84),transparent 24%),linear-gradient(160deg,#667eea33,#764ba24d)}.orb[data-v-55127168]{position:absolute;border-radius:999px;animation:float-orb-55127168 4s ease-in-out infinite}.orb-a[data-v-55127168]{width:72px;height:72px;top:18px;left:18px;background:#667eea57}.orb-b[data-v-55127168]{width:48px;height:48px;right:22px;top:28px;background:#764ba252;animation-delay:.8s}.orb-c[data-v-55127168]{width:92px;height:92px;right:28px;bottom:16px;background:#667eea33;animation-delay:1.4s}.stage-paper[data-v-55127168]{position:absolute;left:50%;top:50%;width:92px;height:118px;transform:translate(-50%,-50%) rotate(-6deg);background:#fffffff5;border-radius:18px;box-shadow:0 14px 30px #58428a2e;display:grid;align-content:center;gap:.7rem;padding:1rem .9rem}.stage-paper span[data-v-55127168]{height:10px;border-radius:999px;background:linear-gradient(90deg,#667eea2e,#764ba23d)}.stage-paper span[data-v-55127168]:nth-child(2){width:78%}.stage-paper span[data-v-55127168]:nth-child(3){width:58%}.speaker-backdrop[data-v-55127168]{position:absolute;border-radius:999px;filter:blur(.4px)}.speaker-backdrop-a[data-v-55127168]{width:92px;height:92px;left:22px;top:26px;background:#667eea2e}.speaker-backdrop-b[data-v-55127168]{width:120px;height:120px;right:18px;bottom:12px;background:#764ba229}.speaker-shell[data-v-55127168]{position:absolute;left:44%;top:50%;width:110px;height:110px;transform:translate(-50%,-50%)}.speaker-mouth[data-v-55127168]{position:absolute;left:0;top:50%;width:48px;height:44px;transform:translateY(-50%);clip-path:polygon(0 50%,62% 0,100% 0,100% 100%,62% 100%);background:#fffffff5;box-shadow:0 8px 20px #58428a24}.speaker-body[data-v-55127168]{position:absolute;left:28px;top:50%;width:24px;height:72px;transform:translateY(-50%);border-radius:12px;background:#fffffffa;box-shadow:0 8px 20px #58428a24}.sound-wave[data-v-55127168]{position:absolute;top:50%;left:calc(44% + 26px);border:4px solid rgba(255,255,255,.78);border-left-color:transparent;border-bottom-color:transparent;border-radius:999px;transform:translateY(-50%) rotate(45deg);animation:sound-wave-55127168 1.8s ease-out infinite}.sound-wave-1[data-v-55127168]{width:34px;height:34px}.sound-wave-2[data-v-55127168]{width:56px;height:56px;animation-delay:.28s}.sound-wave-3[data-v-55127168]{width:78px;height:78px;animation-delay:.56s}.audio-chip[data-v-55127168]{position:absolute;right:18px;top:18px;display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .7rem;border-radius:999px;background:#ffffffd1;color:var(--primary-dark);font-weight:700;letter-spacing:.08em;font-size:.82rem}.audio-chip-dot[data-v-55127168]{width:8px;height:8px;border-radius:999px;background:linear-gradient(135deg,#667eea,#764ba2);animation:pulse-ring-55127168 1.5s infinite}.processing-metrics[data-v-55127168]{margin-top:.95rem;display:flex;gap:.75rem;flex-wrap:wrap}.processing-summary[data-v-55127168]{margin-top:.85rem;color:var(--text-light);max-width:720px}.processing-stage-note[data-v-55127168]{margin-top:.65rem;color:var(--primary-dark);font-size:.96rem;font-weight:600}.metric-pill[data-v-55127168]{display:inline-flex;align-items:center;padding:.55rem .85rem;border-radius:999px;background:#ffffffb8;color:var(--primary-dark);font-size:.92rem;font-weight:600}.metric-pill.accent[data-v-55127168]{background:#667eea1f}.processing-top[data-v-55127168]{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:start}.processing-helper[data-v-55127168]{margin-top:.4rem;color:var(--text-light)}.refresh-badge[data-v-55127168]{display:inline-flex;align-items:center;gap:.6rem;padding:.7rem .9rem;border-radius:999px;background:#667eea14;color:var(--primary-dark);font-size:.92rem}.refresh-dot[data-v-55127168]{width:10px;height:10px;border-radius:999px;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 0 #667eea66;animation:pulse-ring-55127168 1.5s infinite;flex:0 0 auto}.stage-track[data-v-55127168]{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.9rem}.stage-node[data-v-55127168]{display:grid;gap:.45rem;padding:.9rem;border-radius:16px;border:1px solid rgba(102,126,234,.12);background:#fcfcff;color:var(--text-light)}.stage-node.done[data-v-55127168]{background:#667eea14;color:var(--primary-dark)}.stage-node.active[data-v-55127168]{background:linear-gradient(135deg,#667eea24,#764ba21f);border-color:#667eea4d;color:var(--text-dark)}.stage-pill[data-v-55127168]{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#fff;border:1px solid rgba(102,126,234,.2);font-weight:700}.pending-preview[data-v-55127168]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.pending-block[data-v-55127168]{padding:1rem;border-radius:18px;background:linear-gradient(180deg,#fff,#f8f8ff);border:1px solid rgba(102,126,234,.1)}.result-placeholder[data-v-55127168]{display:grid;gap:.75rem}.result-block-highlight[data-v-55127168]{animation:card-highlight-55127168 2.2s ease}.skeleton[data-v-55127168]{position:relative;overflow:hidden;background:linear-gradient(90deg,#eef1f7,#f9fbff 45%,#eef1f7);background-size:200% 100%;animation:skeleton-wave-55127168 1.4s linear infinite;border-radius:12px}.skeleton-title[data-v-55127168]{height:20px;width:42%}.skeleton-line[data-v-55127168]{height:16px;width:100%}.skeleton-line.short[data-v-55127168]{width:48%}.skeleton-line.mid[data-v-55127168]{width:72%}.detail-images[data-v-55127168]{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.detail-image-card[data-v-55127168]{display:grid;gap:.5rem}.detail-image-link[data-v-55127168]{display:block;border-radius:14px;overflow:hidden;background:linear-gradient(180deg,#f8fafff5,#eff3ffe6);border:1px solid rgba(102,126,234,.12)}.detail-image-card img[data-v-55127168]{width:100%;aspect-ratio:3 / 4;object-fit:contain;border-radius:14px;transition:transform .2s ease}.detail-image-link:hover img[data-v-55127168]{transform:scale(1.01)}.detail-image-card figcaption[data-v-55127168]{color:var(--text-light);font-size:.92rem}.result-text[data-v-55127168]{white-space:pre-wrap;font-family:SFMono-Regular,Consolas,monospace;background:#f8fbfd;padding:1rem;border-radius:14px;color:#234}.reading-text[data-v-55127168]{white-space:pre-wrap}.issue-list[data-v-55127168]{display:grid;gap:.85rem}.issue-item[data-v-55127168]{border:1px solid rgba(31,58,95,.12);border-radius:14px;padding:.9rem;background:#fcfdff}.issue-item span[data-v-55127168]{font-weight:700}.audio-btn[data-v-55127168]{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border:none;border-radius:999px;padding:.8rem 1.1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;cursor:pointer;min-width:132px}.audio-btn[data-v-55127168]:disabled{opacity:.6;cursor:not-allowed}.audio-btn.loading[data-v-55127168]{box-shadow:0 10px 24px #667eea38}.audio-btn-loader[data-v-55127168]{display:inline-flex;align-items:center;gap:.22rem}.audio-btn-loader span[data-v-55127168]{width:6px;height:6px;border-radius:999px;background:#ffffffeb;animation:audio-dot-55127168 1s ease-in-out infinite}.audio-btn-loader span[data-v-55127168]:nth-child(2){animation-delay:.15s}.audio-btn-loader span[data-v-55127168]:nth-child(3){animation-delay:.3s}.sample-essay[data-v-55127168]{white-space:pre-wrap;font-size:1.05rem;line-height:1.9;padding:1rem;border-radius:16px;background:linear-gradient(135deg,#fffdf6,#f7fbff);border:1px solid rgba(245,158,11,.18);-webkit-user-select:text;user-select:text}.selection-tip-banner[data-v-55127168]{display:flex;gap:.75rem;align-items:flex-start;padding:.9rem 1rem;border-radius:16px;background:linear-gradient(135deg,#667eea14,#764ba214);border:1px solid rgba(102,126,234,.14);color:var(--text-dark)}.selection-tip-banner strong[data-v-55127168]{color:var(--primary-dark);white-space:nowrap}.selection-toolbar[data-v-55127168]{margin-top:1rem;display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.selection-chip[data-v-55127168]{display:inline-flex;align-items:center;max-width:100%;padding:.45rem .75rem;border-radius:999px;background:#667eea1a;color:var(--primary-dark);font-weight:600;word-break:break-word}.selection-chip.inline[data-v-55127168]{width:fit-content}.selection-empty[data-v-55127168]{margin-top:1rem;color:var(--text-light);font-size:.95rem}.floating-explain-btn[data-v-55127168]{position:absolute;z-index:55;border:none;border-radius:999px;padding:.7rem .95rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 14px 28px #667eea47;cursor:pointer;white-space:nowrap}.floating-explain-btn[data-v-55127168]:disabled{opacity:.7;cursor:wait}.explanation-grid[data-v-55127168]{display:grid;gap:.75rem}.explanation-state-card[data-v-55127168]{border:1px solid rgba(102,126,234,.16)}.explanation-loading[data-v-55127168]{display:inline-flex;align-items:center;gap:.6rem;color:var(--primary-dark);margin:.25rem 0 .85rem}@keyframes skeleton-wave-55127168{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse-ring-55127168{0%{transform:scale(.9);box-shadow:0 0 #667eea59}70%{transform:scale(1);box-shadow:0 0 0 10px #667eea00}to{transform:scale(.9);box-shadow:0 0 #667eea00}}@keyframes float-orb-55127168{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes sound-wave-55127168{0%{opacity:.18;transform:translateY(-50%) rotate(45deg) scale(.9)}45%{opacity:.85}to{opacity:0;transform:translateY(-50%) rotate(45deg) scale(1.18)}}@keyframes audio-dot-55127168{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-3px);opacity:1}}@keyframes card-highlight-55127168{0%{box-shadow:0 0 #667eea00;transform:translateY(0)}20%{box-shadow:0 0 0 4px #667eea24;transform:translateY(-2px)}to{box-shadow:0 0 #667eea00;transform:translateY(0)}}@media(max-width:768px){.toast-stack[data-v-55127168]{top:72px;right:12px;left:12px}.task-toast[data-v-55127168]{max-width:100%}.processing-stage-hero[data-v-55127168]{grid-template-columns:1fr}.speaker-shell[data-v-55127168]{left:40%}.sound-wave[data-v-55127168]{left:calc(40% + 26px)}.stage-visual[data-v-55127168]{min-height:150px}.selection-tip-banner[data-v-55127168]{flex-direction:column}.refresh-badge[data-v-55127168]{width:100%;border-radius:16px}.stage-track[data-v-55127168]{grid-template-columns:repeat(2,minmax(0,1fr))}.floating-explain-btn[data-v-55127168]{max-width:calc(100vw - 24px)}}
