html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}.modal-overlay[data-v-eb692776]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-eb692776]{background:#fff;border-radius:12px;width:90%;max-width:480px;box-shadow:0 10px 40px #0003}.modal-header[data-v-eb692776]{padding:18px 24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.modal-title[data-v-eb692776]{margin:0;font-size:20px;font-weight:800;color:#1f2937}.modal-close[data-v-eb692776]{border:none;background:none;font-size:28px;color:#6b7280;cursor:pointer;line-height:1}.modal-body[data-v-eb692776]{padding:24px}.modal-footer[data-v-eb692776]{padding:18px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px}.form-group[data-v-6250a148]{margin-bottom:18px}.form-label[data-v-6250a148]{display:block;font-weight:700;color:#374151;margin-bottom:8px;font-size:15px}.form-input[data-v-6250a148]{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;box-sizing:border-box}.form-input[data-v-6250a148]:focus{outline:none;border-color:#1890ff;box-shadow:0 0 0 4px #1890ff1a}.btn-primary[data-v-6250a148]{padding:12px 24px;border-radius:8px;border:none;background:#1890ff;color:#fff;font-weight:700;cursor:pointer;transition:.2s;font-size:15px}.btn-primary[data-v-6250a148]:hover:not(:disabled){background:#096dd9}.btn-primary[data-v-6250a148]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-6250a148]{padding:12px 24px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;font-weight:600;cursor:pointer;transition:.2s;font-size:15px}.btn-secondary[data-v-6250a148]:hover{background:#f3f4f6}.form-group[data-v-6c409a07]{margin-bottom:18px}.form-label[data-v-6c409a07]{display:block;font-weight:700;color:#374151;margin-bottom:8px;font-size:15px}.form-input[data-v-6c409a07]{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;box-sizing:border-box}.form-input[data-v-6c409a07]:focus{outline:none;border-color:#1890ff;box-shadow:0 0 0 4px #1890ff1a}.btn-primary[data-v-6c409a07]{padding:12px 24px;border-radius:8px;border:none;background:#1890ff;color:#fff;font-weight:700;cursor:pointer;transition:.2s;font-size:15px}.btn-primary[data-v-6c409a07]:hover:not(:disabled){background:#096dd9}.btn-primary[data-v-6c409a07]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-6c409a07]{padding:12px 24px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;font-weight:600;cursor:pointer;transition:.2s;font-size:15px}.btn-secondary[data-v-6c409a07]:hover{background:#f3f4f6}.header[data-v-c189655f]{background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:100}.header[data-v-c189655f],.header[data-v-c189655f] *{box-sizing:border-box}.header-inner[data-v-c189655f]{max-width:1400px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:16px}.brand[data-v-c189655f]{display:flex;align-items:center;gap:8px;font-size:22px;font-weight:900;color:#1890ff;text-decoration:none;white-space:nowrap;letter-spacing:0}.brand-icon[data-v-c189655f]{font-size:28px;line-height:1;transition:transform .2s}.brand:hover .brand-icon[data-v-c189655f]{transform:scale(1.1)}.nav[data-v-c189655f]{display:flex;gap:4px;flex-wrap:nowrap;flex:1;justify-content:center}.nav-link[data-v-c189655f]{padding:8px 12px;border-radius:6px;color:#4b5563;font-weight:600;font-size:15px;text-decoration:none;white-space:nowrap}.nav-link[data-v-c189655f]:hover,.nav-link.router-link-active[data-v-c189655f]{background:#e6f7ff;color:#1890ff}.user-section[data-v-c189655f]{display:flex;align-items:center;gap:8px;margin-left:auto}.user-avatar[data-v-c189655f]{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#1890ff,#36cfc9);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:14px;box-shadow:0 2px 8px #1890ff33}.auth-form[data-v-c189655f]{display:flex;gap:8px;align-items:center}.auth-input[data-v-c189655f]{padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:15px;height:40px;line-height:20px;width:130px;-moz-appearance:none;appearance:none;-webkit-appearance:none}.auth-input[data-v-c189655f]:focus{outline:none;border-color:#1890ff;box-shadow:0 0 0 4px #1890ff1a}.btn-primary[data-v-c189655f]{padding:8px 16px;border-radius:6px;border:none;background:#1890ff;color:#fff;font-weight:700;cursor:pointer;transition:.2s;font-size:15px;white-space:nowrap}.btn-primary[data-v-c189655f]:hover{background:#096dd9}.btn-secondary[data-v-c189655f]{padding:8px 16px;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#374151;font-weight:600;cursor:pointer;transition:.2s;font-size:15px;white-space:nowrap}.btn-secondary[data-v-c189655f]:hover{background:#f3f4f6}.btn-logout[data-v-c189655f]{padding:8px 14px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#4b5563;font-weight:600;cursor:pointer;transition:.2s;font-size:14px;white-space:nowrap}.btn-logout[data-v-c189655f]:hover{border-color:#d97706;background:#fffbeb;color:#d97706}@media (max-width: 768px){.header-inner[data-v-c189655f]{align-items:flex-start;flex-wrap:wrap;gap:8px;padding:8px}.brand[data-v-c189655f]{font-size:18px;max-width:100%;overflow:hidden}.brand-icon[data-v-c189655f]{font-size:24px}.nav[data-v-c189655f]{flex:1 1 100%;justify-content:flex-start;order:3;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:2px;touch-action:pan-x;scrollbar-width:none;-webkit-overflow-scrolling:touch;max-width:100%;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:12px;padding-right:12px}.nav[data-v-c189655f]::-webkit-scrollbar{display:none}.nav-link[data-v-c189655f]{font-size:13px;padding:6px 9px}.user-section[data-v-c189655f]{flex:1 1 100%;margin-left:0;max-width:100%;min-width:0}.auth-form[data-v-c189655f]{display:grid;gap:6px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;width:100%}.auth-input[data-v-c189655f]{min-width:0;width:100%}.btn-primary[data-v-c189655f],.btn-secondary[data-v-c189655f]{padding-inline:12px}.header.is-authenticated .header-inner[data-v-c189655f]{align-items:center;flex-direction:row;flex-wrap:wrap;gap:6px;padding:6px 8px}.header.is-authenticated .brand[data-v-c189655f]{flex:0 0 auto;font-size:0;gap:0;justify-content:center;overflow:hidden;width:28px}.header.is-authenticated .brand-icon[data-v-c189655f]{font-size:22px}.header.is-authenticated .nav[data-v-c189655f]{flex:1 0 100%;gap:4px;min-width:0;order:2;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding:0 12px 2px;scrollbar-width:none;touch-action:pan-x;width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);-webkit-overflow-scrolling:touch}.header.is-authenticated .nav[data-v-c189655f]::-webkit-scrollbar{display:none}.header.is-authenticated .nav-link[data-v-c189655f]{border-radius:6px;font-size:13px;min-height:32px;padding:5px 9px}.header.is-authenticated .user-section[data-v-c189655f]{flex:0 0 auto;gap:4px;justify-content:flex-end;margin-left:0;order:0;padding:0;width:auto}.header.is-authenticated .user-avatar[data-v-c189655f]{font-size:12px;height:30px;width:30px}.header.is-authenticated .btn-secondary[data-v-c189655f],.header.is-authenticated .btn-logout[data-v-c189655f]{font-size:13px;min-height:32px;padding:5px 8px}}@media (max-width: 480px){.auth-form[data-v-c189655f]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.auth-form .btn-primary[data-v-c189655f],.auth-form .btn-secondary[data-v-c189655f]{min-height:34px}.header.is-authenticated .header-inner[data-v-c189655f]{gap:4px;padding:5px 6px}.header.is-authenticated .btn-secondary[data-v-c189655f],.header.is-authenticated .btn-logout[data-v-c189655f]{padding-inline:7px}}.app[data-v-b0f60cb9]{min-height:100vh}.main[data-v-b0f60cb9]{max-width:1200px;margin:0 auto;padding:40px 24px}.quiz-container[data-v-ef571229]{max-width:1000px;margin:0 auto;padding:40px 24px}.quiz-card[data-v-ef571229]{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.quiz-card-header[data-v-ef571229]{padding:24px 28px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.quiz-card-title[data-v-ef571229]{margin:0;font-size:24px;font-weight:900;color:#1f2937}.quiz-controls[data-v-ef571229]{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.quiz-filter[data-v-ef571229]{padding:10px 16px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;font-size:14px}.directory-filter-summary[data-v-ef571229]{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#334155;display:flex;flex:1 1 100%;gap:10px;min-width:0;padding:8px 12px}.directory-label[data-v-ef571229]{color:#64748b;flex:0 0 auto;font-size:13px;font-weight:800}.directory-path[data-v-ef571229]{color:#0f172a;flex:1 1 auto;font-size:14px;font-weight:900;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.directory-clear[data-v-ef571229]{border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#2563eb;cursor:pointer;flex:0 0 auto;font-size:13px;font-weight:800;padding:4px 10px}.module-practice[data-v-ef571229]{padding:16px 20px 14px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.module-practice-head[data-v-ef571229]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:#111827;font-weight:900}.category-empty[data-v-ef571229]{border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;font-size:14px;padding:14px;text-align:center}.category-levels[data-v-ef571229]{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.category-level[data-v-ef571229]{display:grid;gap:8px;min-width:0}.category-tree-node[data-v-ef571229]{border:1px solid #dbeafe;border-radius:8px;background:#fff;color:#334155;cursor:pointer;min-height:58px;padding:10px 12px;text-align:left;transition:border-color .2s,background .2s,box-shadow .2s}.category-tree-node[data-v-ef571229]:hover,.category-tree-node.active[data-v-ef571229]{background:#eff6ff;border-color:#1890ff;box-shadow:0 8px 20px #1890ff14}.category-node-main[data-v-ef571229]{align-items:center;display:flex;gap:8px;justify-content:space-between}.category-node-label[data-v-ef571229]{color:#0f172a;font-size:14px;font-weight:900;line-height:1.35}.category-node-arrow[data-v-ef571229]{color:#94a3b8;flex:0 0 auto;font-size:20px;line-height:1}.category-node-meta[data-v-ef571229]{display:flex;gap:10px;margin-top:6px;color:#64748b;font-size:12px;font-weight:800}.module-grid[data-v-ef571229]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.module-card[data-v-ef571229]{min-height:92px;border:1px solid #e2e8f0;border-top:3px solid var(--module-accent);border-radius:8px;padding:10px;background:#fff;color:#334155;text-align:left;cursor:pointer}.module-card.active[data-v-ef571229],.module-card[data-v-ef571229]:hover{border-color:var(--module-accent);background:#f8fafc}.module-label[data-v-ef571229]{display:block;color:#0f172a;font-weight:900;font-size:14px}.module-count[data-v-ef571229]{display:block;margin-top:3px;color:#64748b;font-size:12px}.module-desc[data-v-ef571229]{display:-webkit-box;margin-top:6px;color:#64748b;font-size:12px;line-height:1.35;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.submodule-row[data-v-ef571229]{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.submodule-chip[data-v-ef571229]{border:1px solid #dbeafe;border-radius:999px;padding:7px 11px;background:#fff;color:#2563eb;font-size:13px;font-weight:700;cursor:pointer}.submodule-chip.active[data-v-ef571229],.submodule-chip[data-v-ef571229]:hover{background:#2563eb;color:#fff}.mode-tabs[data-v-ef571229]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:#e5e7eb;border-bottom:1px solid #e5e7eb}.mode-tab[data-v-ef571229]{border:none;background:#fff;padding:14px 10px;cursor:pointer;transition:.2s;color:#4b5563}.mode-tab span[data-v-ef571229]{display:block;font-weight:900;font-size:14px}.mode-tab small[data-v-ef571229]{display:block;margin-top:4px;font-size:12px;color:#9ca3af}.mode-tab[data-v-ef571229]:hover:not(:disabled),.mode-tab.active[data-v-ef571229]{background:#eff6ff;color:#1890ff}.mode-tab.active small[data-v-ef571229]{color:#2563eb}.progress-bar[data-v-ef571229]{height:8px;background:#e5e7eb}.progress-bar-fill[data-v-ef571229]{height:100%;background:linear-gradient(90deg,#1890ff,#36cfc9);width:0%;transition:width .3s}.progress-summary[data-v-ef571229]{display:flex;justify-content:space-between;gap:12px;padding:12px 28px;background:#f8fafc;color:#4b5563;font-size:14px;font-weight:800;border-bottom:1px solid #e5e7eb}.question-wrapper[data-v-ef571229]{padding:32px 28px}.message-box[data-v-ef571229]{margin-bottom:16px;padding:14px 18px;border-radius:8px;background:#fef3c7;border:1px solid #f59e0b;color:#92400e;font-weight:700}.review-reminder[data-v-ef571229]{align-items:center;background:linear-gradient(135deg,#eef6ff,#f0fdfa);border:1px solid #bfdbfe;border-radius:12px;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px;padding:12px 14px}.review-reminder b[data-v-ef571229]{color:#1f2937;display:block;font-size:15px}.review-reminder span[data-v-ef571229]{color:#64748b;display:block;font-size:13px;margin-top:3px}.review-reminder-link[data-v-ef571229]{background:#1890ff;border-radius:8px;color:#fff;flex:0 0 auto;font-size:14px;font-weight:800;padding:8px 12px;text-decoration:none}.question-top[data-v-ef571229]{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;flex-wrap:wrap;gap:12px}.question-counter[data-v-ef571229]{font-size:16px;font-weight:800;color:#6b7280}.score[data-v-ef571229]{font-size:16px;font-weight:800;color:#374151}.timer[data-v-ef571229]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fef3c7;border-radius:20px;color:#92400e;font-weight:700;font-size:14px}.mode-hint[data-v-ef571229]{margin-bottom:16px;color:#2563eb;font-weight:800;font-size:14px}.timer-icon[data-v-ef571229]{font-size:16px}.question-header[data-v-ef571229]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.question-source[data-v-ef571229]{font-size:13px;color:#6b7280;font-weight:800}.question-tags[data-v-ef571229]{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.question-tags span[data-v-ef571229]{background:#eff6ff;border-radius:999px;color:#2563eb;font-size:12px;font-weight:800;padding:4px 8px}.collection-btn[data-v-ef571229]{display:flex;align-items:center;gap:6px;padding:8px 16px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.collection-btn[data-v-ef571229]:hover:not(:disabled){border-color:#ef4444;color:#ef4444}.collection-btn.collected[data-v-ef571229]{border-color:#ef4444;background:#fef2f2;color:#ef4444}.collection-btn svg[data-v-ef571229]{width:18px;height:18px}.collection-btn.collected svg[data-v-ef571229]{fill:#ef4444;stroke:#ef4444}.question-stem[data-v-ef571229]{font-size:20px;line-height:1.7;font-weight:600;color:#1f2937}.question-stem .blank[data-v-ef571229]{color:#1890ff;font-weight:900;text-decoration:underline;text-underline-offset:3px}.question-stem[data-v-ef571229] img[flag=tex],.result-analysis[data-v-ef571229] img[flag=tex]{display:inline!important;vertical-align:middle;max-width:100%;height:auto}.options[data-v-ef571229]{display:flex;flex-direction:column;gap:16px;margin-top:28px}.option[data-v-ef571229]{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;transition:.2s}.option[data-v-ef571229]:hover:not(.review):not(:disabled){border-color:#93c5fd;background:#eff6ff}.option.selected[data-v-ef571229]{border-color:#1890ff;background:#e6f7ff}.option.correct[data-v-ef571229]{border-color:#10b981;background:#f0fdf4}.option.wrong[data-v-ef571229]{border-color:#ef4444;background:#fef2f2}.option.review[data-v-ef571229]{cursor:default}.option-key[data-v-ef571229]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#f3f4f6;color:#374151;font-weight:900;font-size:16px;flex-shrink:0}.option.selected .option-key[data-v-ef571229]{background:#1890ff;color:#fff}.option.correct .option-key[data-v-ef571229]{background:#10b981;color:#fff}.option.wrong .option-key[data-v-ef571229]{background:#ef4444;color:#fff}.option-text[data-v-ef571229]{flex:1;margin-top:2px;line-height:1.6;font-size:15px;overflow-wrap:anywhere;word-break:break-word}.option-content[data-v-ef571229]{display:flex;flex:1;min-width:0;flex-direction:column;gap:10px}.question-media[data-v-ef571229]{margin-top:14px}.question-media img[data-v-ef571229],.option-image[data-v-ef571229]{display:block;max-width:100%;max-height:420px;object-fit:contain;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.option-image[data-v-ef571229]{max-height:240px}.analysis-media[data-v-ef571229]{margin-top:12px}.hint-text[data-v-ef571229]{margin-top:16px;padding:10px 16px;background:#e6f7ff;border-radius:8px;color:#1890ff;font-weight:600;font-size:14px;text-align:center}.note-section[data-v-ef571229]{margin-top:24px;border-radius:12px;background:#f8fafc;overflow:hidden}.note-header[data-v-ef571229]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;cursor:pointer;background:#f1f5f9;transition:background .2s}.note-header[data-v-ef571229]:hover{background:#e2e8f0}.note-title[data-v-ef571229]{font-weight:700;color:#374151}.note-toggle[data-v-ef571229]{font-size:14px;color:#6b7280}.note-content[data-v-ef571229]{padding:20px}.note-content textarea[data-v-ef571229]{width:100%;padding:12px 16px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s,box-shadow .2s}.note-content textarea[data-v-ef571229]:focus{outline:none;border-color:#1890ff;box-shadow:0 0 0 4px #1890ff1a}.nav-btns[data-v-ef571229]{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.nav-btn[data-v-ef571229]{padding:14px 28px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#374151;font-weight:800;cursor:pointer;transition:.2s;font-size:15px}.nav-btn[data-v-ef571229]:hover:not(:disabled){background:#f3f4f6}.nav-btn[data-v-ef571229]:disabled{opacity:.5;cursor:not-allowed}.nav-btn.primary[data-v-ef571229]{border:none;background:#1890ff;color:#fff}.nav-btn.primary[data-v-ef571229]:hover:not(:disabled){background:#096dd9}.btn-primary[data-v-ef571229]{padding:10px 20px;border-radius:8px;border:none;background:#1890ff;color:#fff;font-weight:700;cursor:pointer;transition:.2s;font-size:15px}.btn-primary[data-v-ef571229]:hover{background:#096dd9}.btn-secondary[data-v-ef571229]{padding:10px 20px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;font-weight:600;cursor:pointer;transition:.2s;font-size:15px;text-decoration:none;display:inline-block}.btn-secondary[data-v-ef571229]:hover{background:#f3f4f6}.empty-box[data-v-ef571229]{text-align:center;padding:60px 20px;color:#6b7280}.empty-action[data-v-ef571229]{border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#2563eb;cursor:pointer;font-weight:900;margin-top:14px;min-height:40px;padding:0 16px}.review-header[data-v-ef571229]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.review-tag[data-v-ef571229]{padding:4px 12px;border-radius:6px;font-size:13px;font-weight:700}.review-tag.correct[data-v-ef571229]{background:#f0fdf4;color:#10b981}.review-tag.wrong[data-v-ef571229]{background:#fef2f2;color:#ef4444}.review-tag.unanswered[data-v-ef571229]{background:#fef3c7;color:#92400e}.review-progress[data-v-ef571229]{font-size:15px;font-weight:700;color:#6b7280}.result-box[data-v-ef571229]{margin-top:32px;padding:22px 24px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0}.result-answer[data-v-ef571229]{margin-top:10px;color:#4b5563;font-weight:700;font-size:15px}.analysis-toolbar[data-v-ef571229]{margin-top:14px}.analysis-toggle[data-v-ef571229]{border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#2563eb;padding:6px 12px;font-weight:800;cursor:pointer}.result-analysis[data-v-ef571229]{margin-top:14px;color:#374151;line-height:1.7;font-size:15px}.result-analysis.collapsed[data-v-ef571229]{max-height:96px;overflow:hidden}.correction-section[data-v-ef571229]{margin-top:16px;border-top:1px solid #e5e7eb;padding-top:14px}.correction-toggle[data-v-ef571229]{border:1px solid #fed7aa;border-radius:999px;background:#fff7ed;color:#c2410c;padding:8px 14px;font-weight:800;cursor:pointer}.correction-form[data-v-ef571229]{display:grid;gap:10px;margin-top:12px}.correction-form select[data-v-ef571229],.correction-form textarea[data-v-ef571229]{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:10px 12px;font:inherit}.correction-form textarea[data-v-ef571229]{resize:vertical;line-height:1.6}.review-summary[data-v-ef571229]{margin-top:32px;padding:24px;background:linear-gradient(135deg,#e6f7ff,#f0f5ff);border-radius:12px;text-align:center}.review-summary h3[data-v-ef571229]{margin:0 0 12px;font-size:22px;color:#1f2937}.review-summary p[data-v-ef571229]{font-size:18px;color:#374151;font-weight:700}.round-report[data-v-ef571229]{background:#ffffffc7;border:1px solid rgba(147,197,253,.7);border-radius:12px;margin:18px auto 0;max-width:620px;padding:16px;text-align:left}.report-heading[data-v-ef571229]{align-items:baseline;display:flex;gap:10px;justify-content:space-between}.report-heading span[data-v-ef571229]{color:#1f2937;font-size:18px;font-weight:900}.report-heading small[data-v-ef571229]{color:#64748b;font-weight:800}.report-metrics[data-v-ef571229]{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}.report-metrics span[data-v-ef571229]{background:#fff;border-radius:10px;color:#64748b;display:grid;font-size:12px;font-weight:800;gap:4px;min-height:62px;place-items:center;text-align:center}.report-metrics b[data-v-ef571229]{color:#1890ff;font-size:20px}.report-insight[data-v-ef571229]{color:#475569!important;font-size:14px!important;font-weight:700!important;line-height:1.6;margin:14px 0 0}.summary-btns[data-v-ef571229]{display:flex;justify-content:center;gap:16px;margin-top:20px}.modal-overlay[data-v-ef571229]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-ef571229]{background:#fff;border-radius:16px;padding:32px;max-width:420px;width:90%;box-shadow:0 20px 60px #0003}.modal-title[data-v-ef571229]{margin:0 0 16px;font-size:20px;font-weight:900;color:#1f2937}.modal-text[data-v-ef571229]{font-size:16px;color:#374151;margin:0 0 8px}.modal-hint[data-v-ef571229]{font-size:14px;color:#9ca3af;margin:0 0 24px}.modal-btns[data-v-ef571229]{display:flex;justify-content:flex-end;gap:12px}@media (max-width: 768px){.quiz-container[data-v-ef571229]{padding:12px 12px 24px}.quiz-card-header[data-v-ef571229]{align-items:stretch;flex-direction:column;gap:10px;padding:14px}.quiz-card-title[data-v-ef571229]{font-size:22px;line-height:1.2}.quiz-controls[data-v-ef571229]{flex-wrap:nowrap;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:2px;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch}.quiz-controls[data-v-ef571229]::-webkit-scrollbar{display:none}.quiz-filter[data-v-ef571229]{flex:0 0 132px;min-height:38px;padding:8px 12px}.module-practice[data-v-ef571229]{padding:12px}.category-levels[data-v-ef571229]{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch}.category-levels[data-v-ef571229]::-webkit-scrollbar{display:none}.category-level[data-v-ef571229]{flex:0 0 188px}.category-tree-node[data-v-ef571229]{min-height:54px;padding:9px 10px}.category-node-label[data-v-ef571229]{font-size:13px}.category-node-meta[data-v-ef571229]{font-size:11px}.module-grid[data-v-ef571229]{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.module-grid[data-v-ef571229]::-webkit-scrollbar{display:none}.module-card[data-v-ef571229]{flex:0 0 154px;min-height:84px;padding:9px;scroll-snap-align:start}.submodule-row[data-v-ef571229]{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:2px;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch}.submodule-row[data-v-ef571229]::-webkit-scrollbar{display:none}.submodule-chip[data-v-ef571229]{flex:0 0 auto;padding:7px 10px}.mode-tabs[data-v-ef571229]{display:flex;gap:1px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x;width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);-webkit-overflow-scrolling:touch}.mode-tabs[data-v-ef571229]::-webkit-scrollbar{display:none}.mode-tab[data-v-ef571229]{flex:0 0 112px;min-height:54px;padding:9px 10px}.mode-tab span[data-v-ef571229]{font-size:13px}.mode-tab small[data-v-ef571229]{font-size:11px}.question-media img[data-v-ef571229],.option-image[data-v-ef571229]{width:100%;max-height:320px}.option-image[data-v-ef571229]{max-height:220px}.progress-summary[data-v-ef571229]{flex-direction:row;gap:12px;overflow-x:auto;overflow-y:hidden;padding:9px 14px;scrollbar-width:none;white-space:nowrap;-webkit-overflow-scrolling:touch}.progress-summary[data-v-ef571229]::-webkit-scrollbar{display:none}.question-wrapper[data-v-ef571229]{padding:16px}.nav-btns[data-v-ef571229]{gap:8px;margin-top:22px;padding-top:16px}.nav-btn[data-v-ef571229]{flex:1 1 0;min-height:42px;padding:10px 8px}.review-reminder[data-v-ef571229]{margin-bottom:12px;padding:10px 12px}.question-top[data-v-ef571229]{margin-bottom:16px}.timer[data-v-ef571229]{padding:6px 12px}.report-metrics[data-v-ef571229]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.quiz-container[data-v-ef571229]{padding:8px 8px 18px}.quiz-card[data-v-ef571229]{border-radius:12px}.quiz-card-header[data-v-ef571229],.question-wrapper[data-v-ef571229]{padding:12px}.review-reminder[data-v-ef571229]{align-items:stretch;flex-direction:column;gap:8px}.review-reminder-link[data-v-ef571229]{text-align:center}.round-report[data-v-ef571229]{padding:12px}.report-heading[data-v-ef571229]{align-items:flex-start;flex-direction:column;gap:4px}.quiz-filter[data-v-ef571229]{flex-basis:124px}.nav-btn[data-v-ef571229]{font-size:14px}.mode-tab[data-v-ef571229]{flex-basis:104px}}.stats-container[data-v-0c777ad6]{max-width:1120px;margin:0 auto;padding:32px 20px}.page-header[data-v-0c777ad6]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.page-title[data-v-0c777ad6]{margin:0;font-size:28px;font-weight:900;color:#1f2937}.btn-primary[data-v-0c777ad6]{padding:10px 20px;border-radius:8px;border:none;background:#1890ff;color:#fff;font-weight:700;cursor:pointer;transition:.2s;font-size:15px;text-decoration:none;display:inline-block}.btn-primary[data-v-0c777ad6]:hover{background:#096dd9}.stats-grid[data-v-0c777ad6]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-card[data-v-0c777ad6]{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 12px #0000000f}.stat-label[data-v-0c777ad6]{color:#6b7280;font-size:13px;font-weight:700;margin-bottom:6px}.stat-value[data-v-0c777ad6]{color:#1890ff;font-size:30px;font-weight:900}.review-panels[data-v-0c777ad6]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.review-completion[data-v-0c777ad6],.learning-goal[data-v-0c777ad6]{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 12px #0000000f}.panel-label[data-v-0c777ad6]{margin:0 0 6px;color:#6b7280;font-size:13px;font-weight:800}.review-completion h3[data-v-0c777ad6],.learning-goal h3[data-v-0c777ad6]{margin:0;color:#1f2937;font-size:22px}.review-metrics[data-v-0c777ad6]{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0;color:#4b5563;font-size:13px;font-weight:800}.panel-action[data-v-0c777ad6]{display:inline-block;color:#1890ff;font-weight:900;text-decoration:none}.goal-track[data-v-0c777ad6]{height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin:16px 0}.goal-track-fill[data-v-0c777ad6]{height:100%;background:linear-gradient(90deg,#1890ff,#36cfc9)}.goal-input[data-v-0c777ad6]{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#4b5563;font-weight:800;font-size:13px}.goal-input input[data-v-0c777ad6]{width:88px;border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px;font:inherit}.panel-note[data-v-0c777ad6]{color:#6b7280;line-height:1.6;margin:14px 0}.learning-loop-grid[data-v-0c777ad6]{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);margin-bottom:24px}.learning-recommend-card[data-v-0c777ad6],.module-trend-card[data-v-0c777ad6]{border-radius:12px;box-shadow:0 2px 12px #0000000f}.learning-recommend-list[data-v-0c777ad6]{width:100%}.learning-recommend-item[data-v-0c777ad6]{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.learning-recommend-head[data-v-0c777ad6]{align-items:center;display:flex;gap:8px;margin-bottom:8px}.learning-recommend-head strong[data-v-0c777ad6],.module-trend-meta strong[data-v-0c777ad6]{color:#1f2937;font-weight:900}.learning-recommend-item p[data-v-0c777ad6]{color:#64748b;line-height:1.6;margin:0 0 12px}.module-trend-list[data-v-0c777ad6]{display:grid;gap:14px}.module-trend-row[data-v-0c777ad6]{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.module-trend-meta[data-v-0c777ad6],.module-trend-detail[data-v-0c777ad6]{align-items:center;display:flex;gap:10px;justify-content:space-between}.module-trend-meta[data-v-0c777ad6]{margin-bottom:6px}.module-trend-change[data-v-0c777ad6]{border-radius:999px;font-size:12px;font-weight:900;padding:2px 8px}.module-trend-change.declining[data-v-0c777ad6]{background:#fff7ed;color:#f97316}.module-trend-change.improving[data-v-0c777ad6]{background:#ecfdf5;color:#059669}.module-trend-change.new[data-v-0c777ad6]{background:#eff6ff;color:#1890ff}.module-trend-change.stable[data-v-0c777ad6]{background:#f1f5f9;color:#64748b}.module-trend-detail[data-v-0c777ad6],.module-trend-empty[data-v-0c777ad6]{color:#64748b;font-size:12px;font-weight:800}.long-term-plan-grid[data-v-0c777ad6]{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-bottom:24px}.learning-plan-card[data-v-0c777ad6],.period-review-card[data-v-0c777ad6]{border-radius:12px;box-shadow:0 2px 12px #0000000f}.learning-plan-list[data-v-0c777ad6],.period-review-list[data-v-0c777ad6]{display:grid;gap:12px}.learning-plan-item[data-v-0c777ad6],.period-review-item[data-v-0c777ad6]{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.learning-plan-head[data-v-0c777ad6],.period-review-head[data-v-0c777ad6],.learning-plan-meta[data-v-0c777ad6],.period-review-metrics[data-v-0c777ad6]{align-items:center;display:flex;gap:8px;justify-content:space-between}.learning-plan-head[data-v-0c777ad6],.period-review-head[data-v-0c777ad6]{justify-content:flex-start;margin-bottom:8px}.learning-plan-head strong[data-v-0c777ad6],.period-review-head strong[data-v-0c777ad6]{color:#1f2937;font-weight:900}.learning-plan-item p[data-v-0c777ad6],.period-review-item p[data-v-0c777ad6]{color:#64748b;line-height:1.6;margin:0 0 12px}.learning-plan-meta[data-v-0c777ad6],.period-review-metrics[data-v-0c777ad6]{color:#64748b;flex-wrap:wrap;font-size:12px;font-weight:800;justify-content:flex-start;margin-bottom:12px}.learning-report[data-v-0c777ad6]{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000000f;margin-bottom:24px;padding:24px}.report-header[data-v-0c777ad6]{align-items:flex-start;display:flex;gap:18px;justify-content:space-between;margin-bottom:20px}.report-header h2[data-v-0c777ad6]{color:#1f2937;font-size:24px;font-weight:900;margin:0}.report-range[data-v-0c777ad6]{color:#6b7280;font-size:13px;font-weight:700;margin:8px 0 0}.report-actions[data-v-0c777ad6]{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.report-tabs[data-v-0c777ad6]{background:#f3f4f6;border-radius:10px;display:flex;padding:4px}.report-tab[data-v-0c777ad6],.report-export[data-v-0c777ad6]{border:none;cursor:pointer;font:inherit;font-weight:900}.report-tab[data-v-0c777ad6]{background:transparent;border-radius:8px;color:#4b5563;min-width:64px;padding:8px 12px}.report-tab.active[data-v-0c777ad6]{background:#fff;color:#1890ff;box-shadow:0 1px 6px #0f172a1a}.report-export[data-v-0c777ad6]{background:#111827;border-radius:8px;color:#fff;padding:10px 14px}.report-export.image[data-v-0c777ad6]{background:#1890ff}.report-export[data-v-0c777ad6]:disabled{cursor:wait;opacity:.68}.report-summary-grid[data-v-0c777ad6]{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.report-metric[data-v-0c777ad6]{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:16px}.report-metric span[data-v-0c777ad6]{color:#64748b;display:block;font-size:13px;font-weight:800;margin-bottom:6px}.report-metric b[data-v-0c777ad6]{color:#1f2937;font-size:24px;font-weight:900}.report-body[data-v-0c777ad6]{display:grid;gap:16px;grid-template-columns:minmax(0,1.8fr) minmax(260px,.8fr)}.report-trend[data-v-0c777ad6],.report-insight-panel[data-v-0c777ad6]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:18px}.trend-heading[data-v-0c777ad6]{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.trend-heading h3[data-v-0c777ad6],.report-insight-panel h3[data-v-0c777ad6]{color:#1f2937;font-size:17px;font-weight:900;margin:0}.trend-heading span[data-v-0c777ad6]{color:#6b7280;font-size:13px;font-weight:800}.trend-chart[data-v-0c777ad6]{align-items:end;display:flex;gap:7px;min-height:150px;overflow-x:auto;padding-top:8px}.trend-chart.empty[data-v-0c777ad6]{align-items:center}.trend-item[data-v-0c777ad6]{align-items:center;display:flex;flex:1 0 24px;flex-direction:column;gap:8px;min-width:22px}.trend-bar-wrap[data-v-0c777ad6]{align-items:end;background:#e5e7eb;border-radius:999px;display:flex;height:118px;justify-content:center;overflow:hidden;width:100%}.trend-bar[data-v-0c777ad6]{background:linear-gradient(180deg,#36cfc9,#1890ff);border-radius:999px 999px 0 0;min-height:0;transition:height .2s;width:100%}.trend-item span[data-v-0c777ad6]{color:#64748b;font-size:11px;font-weight:800;white-space:nowrap}.report-insight-panel[data-v-0c777ad6]{display:flex;flex-direction:column}.report-insight-panel p[data-v-0c777ad6]{color:#4b5563;line-height:1.7;margin:12px 0}.report-inline-metrics[data-v-0c777ad6]{display:flex;flex-wrap:wrap;gap:8px;margin:auto 0 14px}.report-inline-metrics span[data-v-0c777ad6]{background:#fff;border:1px solid #e5e7eb;border-radius:999px;color:#475569;font-size:12px;font-weight:800;padding:6px 10px}.category-stats[data-v-0c777ad6]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #0000000f}.category-stats h3[data-v-0c777ad6]{margin:0 0 18px;font-size:18px;font-weight:800}.category-item[data-v-0c777ad6]{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #e5e7eb}.category-item[data-v-0c777ad6]:last-child{border-bottom:none}.category-label[data-v-0c777ad6]{width:160px;font-weight:700;color:#374151}.category-count[data-v-0c777ad6]{width:70px;font-size:13px;color:#6b7280;text-align:right}.category-bar[data-v-0c777ad6]{flex:1;height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden}.category-bar-fill[data-v-0c777ad6]{height:100%;background:linear-gradient(90deg,#1890ff,#36cfc9);border-radius:999px}.category-accuracy[data-v-0c777ad6]{width:50px;text-align:right;font-weight:700;color:#374151;font-size:14px}.weak-section[data-v-0c777ad6]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #0000000f;margin-bottom:24px}.weak-section h3[data-v-0c777ad6]{margin:0 0 6px;font-size:18px;font-weight:800;color:#1f2937}.weak-hint[data-v-0c777ad6]{margin:0 0 18px;font-size:13px;color:#9ca3af}.weak-grid[data-v-0c777ad6]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.weak-card[data-v-0c777ad6]{background:#f9fafb;border-radius:10px;padding:16px;border:1px solid #e5e7eb;transition:.2s}.weak-card.weak[data-v-0c777ad6]{border-color:#fca5a5;background:#fef2f2}.weak-header[data-v-0c777ad6]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.weak-category[data-v-0c777ad6]{font-weight:700;color:#374151;font-size:14px}.weak-difficulty[data-v-0c777ad6]{font-size:12px;padding:2px 8px;border-radius:4px;background:#e5e7eb;color:#6b7280;font-weight:600}.weak-accuracy[data-v-0c777ad6]{font-size:24px;font-weight:900;color:#1890ff}.weak-accuracy.danger[data-v-0c777ad6]{color:#ef4444}.weak-detail[data-v-0c777ad6]{font-size:12px;color:#9ca3af;margin-top:4px}.weak-bar[data-v-0c777ad6]{height:6px;background:#e5e7eb;border-radius:999px;margin-top:10px;overflow:hidden}.weak-bar-fill[data-v-0c777ad6]{height:100%;background:linear-gradient(90deg,#1890ff,#36cfc9);border-radius:999px}.weak-bar-fill.danger[data-v-0c777ad6]{background:linear-gradient(90deg,#ef4444,#f87171)}.empty[data-v-0c777ad6]{text-align:center;padding:60px;color:#6b7280}@media (max-width: 768px){.stats-container[data-v-0c777ad6]{padding:18px 12px}.page-header[data-v-0c777ad6]{align-items:stretch;flex-direction:column;gap:12px;margin-bottom:18px}.stats-grid[data-v-0c777ad6],.report-summary-grid[data-v-0c777ad6]{grid-template-columns:repeat(2,minmax(0,1fr))}.review-panels[data-v-0c777ad6],.learning-loop-grid[data-v-0c777ad6],.long-term-plan-grid[data-v-0c777ad6]{grid-template-columns:1fr}.learning-report[data-v-0c777ad6]{padding:18px}.report-header[data-v-0c777ad6],.report-actions[data-v-0c777ad6]{align-items:stretch;flex-direction:column}.report-body[data-v-0c777ad6]{grid-template-columns:1fr}.report-tabs[data-v-0c777ad6]{overflow-x:auto}.report-tab[data-v-0c777ad6]{flex:1}.trend-chart[data-v-0c777ad6]{padding-bottom:4px}.category-item[data-v-0c777ad6]{align-items:flex-start;flex-direction:column;gap:8px}.category-label[data-v-0c777ad6],.category-count[data-v-0c777ad6],.category-accuracy[data-v-0c777ad6]{text-align:left;width:auto}.category-bar[data-v-0c777ad6]{width:100%}}@media (max-width: 480px){.stats-grid[data-v-0c777ad6],.report-summary-grid[data-v-0c777ad6]{grid-template-columns:1fr}.stat-card[data-v-0c777ad6],.review-completion[data-v-0c777ad6],.learning-goal[data-v-0c777ad6],.learning-recommend-card[data-v-0c777ad6],.module-trend-card[data-v-0c777ad6],.learning-plan-card[data-v-0c777ad6],.period-review-card[data-v-0c777ad6],.learning-report[data-v-0c777ad6],.weak-section[data-v-0c777ad6],.category-stats[data-v-0c777ad6]{border-radius:10px;padding:16px}.trend-item[data-v-0c777ad6]{flex-basis:28px}}@media print{.page-header[data-v-0c777ad6],.stats-grid[data-v-0c777ad6],.review-panels[data-v-0c777ad6],.weak-section[data-v-0c777ad6],.category-stats[data-v-0c777ad6],.report-actions[data-v-0c777ad6]{display:none!important}.stats-container[data-v-0c777ad6]{max-width:none;padding:0}.learning-report[data-v-0c777ad6]{box-shadow:none;margin:0}}.wrong-container[data-v-f429b840]{max-width:1000px;margin:0 auto;padding:40px 24px}.review-card[data-v-f429b840]{background:linear-gradient(135deg,#e6f7ff,#f0f5ff);border-radius:16px;padding:24px 28px;margin-bottom:28px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 16px #1890ff1f;flex-wrap:wrap;gap:16px}.review-card.mastered[data-v-f429b840]{background:linear-gradient(135deg,#f0fdf4,#ecfdf5)}.review-card-left[data-v-f429b840]{display:flex;align-items:center;gap:16px}.review-card-icon[data-v-f429b840]{font-size:36px}.review-card-title[data-v-f429b840]{font-size:18px;font-weight:800;color:#1f2937}.review-card-count[data-v-f429b840]{font-size:28px;font-weight:900;color:#1890ff;margin-top:4px}.review-card-sub[data-v-f429b840]{font-size:14px;color:#6b7280;margin-top:4px}.review-card-right[data-v-f429b840]{display:flex;align-items:center;gap:20px}.review-card-stats[data-v-f429b840]{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#6b7280}.btn-review[data-v-f429b840]{padding:12px 28px;border-radius:10px;border:none;background:linear-gradient(135deg,#1890ff,#36cfc9);color:#fff;font-weight:800;font-size:16px;cursor:pointer;transition:.2s}.btn-review[data-v-f429b840]:hover{opacity:.9;transform:translateY(-1px)}.btn-review[data-v-f429b840]:disabled{opacity:.5;cursor:not-allowed;transform:none}.review-mastered-info[data-v-f429b840]{margin-top:8px}.review-mastered-info p[data-v-f429b840]{font-size:15px;color:#10b981;font-weight:700}.page-header[data-v-f429b840]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;flex-wrap:wrap;gap:12px}.page-title[data-v-f429b840]{margin:0;font-size:28px;font-weight:900;color:#1f2937}.header-actions[data-v-f429b840]{display:flex;gap:12px;align-items:center}.quiz-filter[data-v-f429b840]{padding:10px 16px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;font-size:14px}.btn-primary[data-v-f429b840]{padding:10px 20px;border-radius:8px;border:none;background:#1890ff;color:#fff;font-weight:700;cursor:pointer;transition:.2s;font-size:15px;text-decoration:none;display:inline-block}.btn-primary[data-v-f429b840]:hover{background:#096dd9}.btn-primary[data-v-f429b840]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-f429b840]{padding:10px 16px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#4b5563;font-weight:600;cursor:pointer;transition:.2s;font-size:15px;display:flex;align-items:center;gap:8px}.btn-secondary[data-v-f429b840]:hover{background:#f3f4f6;border-color:#ef4444;color:#ef4444}.empty[data-v-f429b840]{text-align:center;padding:60px;color:#6b7280}.list[data-v-f429b840]{display:flex;flex-direction:column;gap:18px}.item[data-v-f429b840]{background:#fff;border-radius:14px;padding:24px;box-shadow:0 4px 20px #00000014;display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.item-content[data-v-f429b840]{flex:1}.item-source[data-v-f429b840]{font-size:13px;color:#6b7280;font-weight:800;margin-bottom:10px}.item-title[data-v-f429b840]{margin:0;font-size:18px;font-weight:700;line-height:1.6}.item-answer[data-v-f429b840]{margin-top:12px;color:#4b5563;font-size:15px}.item-answer b[data-v-f429b840]{color:#ef4444}.item-actions[data-v-f429b840]{display:flex;flex-direction:column;gap:12px;align-items:flex-end;min-width:248px}.reason-tags[data-v-f429b840]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.reason-tag[data-v-f429b840]{border:1px solid #e5e7eb;background:#fff;color:#4b5563;border-radius:8px;padding:7px 10px;font-size:13px;font-weight:700;cursor:pointer;transition:.2s}.reason-tag[data-v-f429b840]:hover{border-color:#93c5fd;color:#096dd9;background:#eff6ff}.reason-tag.active[data-v-f429b840]{border-color:#1890ff;color:#096dd9;background:#e6f7ff}.remove-btn[data-v-f429b840]{justify-content:center;min-width:112px}.practice-view[data-v-f429b840]{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.practice-header[data-v-f429b840]{padding:24px 28px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.progress-bar[data-v-f429b840]{height:8px;background:#e5e7eb}.progress-bar-fill[data-v-f429b840]{height:100%;background:linear-gradient(90deg,#1890ff,#36cfc9);transition:width .3s}.practice-body[data-v-f429b840]{padding:32px 28px}.review-plan-card[data-v-f429b840]{margin-bottom:18px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;display:flex;justify-content:space-between;gap:12px;align-items:center;color:#1f2937}.review-plan-card b[data-v-f429b840]{display:block;font-size:15px;color:#1d4ed8}.review-plan-card span[data-v-f429b840]{display:block;margin-top:4px;color:#475569;font-size:13px;line-height:1.5}.review-plan-card small[data-v-f429b840]{flex:0 0 auto;color:#2563eb;font-size:13px;font-weight:800}.question-top[data-v-f429b840]{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.question-counter[data-v-f429b840]{font-size:16px;font-weight:800;color:#6b7280}.timer[data-v-f429b840]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fef3c7;border-radius:20px;color:#92400e;font-weight:700;font-size:14px}.timer-icon[data-v-f429b840]{font-size:16px}.question-source[data-v-f429b840]{font-size:13px;color:#6b7280;font-weight:800;margin-bottom:12px}.question-stem[data-v-f429b840]{font-size:20px;line-height:1.7;font-weight:600;color:#1f2937}.question-stem .blank[data-v-f429b840]{color:#1890ff;font-weight:900;text-decoration:underline;text-underline-offset:3px}.question-stem[data-v-f429b840] img[flag=tex],.result-analysis[data-v-f429b840] img[flag=tex]{display:inline!important;vertical-align:middle;max-width:100%;height:auto}.options[data-v-f429b840]{display:flex;flex-direction:column;gap:16px;margin-top:28px}.option[data-v-f429b840]{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;transition:.2s}.option[data-v-f429b840]:hover:not(.review){border-color:#93c5fd;background:#eff6ff}.option.selected[data-v-f429b840]{border-color:#1890ff;background:#e6f7ff}.option.correct[data-v-f429b840]{border-color:#10b981;background:#f0fdf4}.option.wrong[data-v-f429b840]{border-color:#ef4444;background:#fef2f2}.option.review[data-v-f429b840]{cursor:default}.option-key[data-v-f429b840]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#f3f4f6;color:#374151;font-weight:900;font-size:16px;flex-shrink:0}.option.selected .option-key[data-v-f429b840]{background:#1890ff;color:#fff}.option.correct .option-key[data-v-f429b840]{background:#10b981;color:#fff}.option.wrong .option-key[data-v-f429b840]{background:#ef4444;color:#fff}.option-text[data-v-f429b840]{flex:1;margin-top:2px;line-height:1.6;font-size:15px}.option-content[data-v-f429b840]{display:flex;flex:1;min-width:0;flex-direction:column;gap:10px}.question-media[data-v-f429b840]{margin-top:14px}.question-media img[data-v-f429b840],.option-image[data-v-f429b840]{display:block;max-width:100%;max-height:420px;object-fit:contain;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.option-image[data-v-f429b840]{max-height:240px}.analysis-media[data-v-f429b840]{margin-top:12px}.hint-text[data-v-f429b840]{margin-top:16px;padding:10px 16px;background:#e6f7ff;border-radius:8px;color:#1890ff;font-weight:600;font-size:14px;text-align:center}.nav-btns[data-v-f429b840]{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.nav-btn[data-v-f429b840]{padding:14px 28px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#374151;font-weight:800;cursor:pointer;transition:.2s;font-size:15px}.nav-btn[data-v-f429b840]:hover:not(:disabled){background:#f3f4f6}.nav-btn[data-v-f429b840]:disabled{opacity:.5;cursor:not-allowed}.nav-btn.primary[data-v-f429b840]{border:none;background:#1890ff;color:#fff}.nav-btn.primary[data-v-f429b840]:hover:not(:disabled){background:#096dd9}.review-header[data-v-f429b840]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.review-tag[data-v-f429b840]{padding:4px 12px;border-radius:6px;font-size:13px;font-weight:700}.review-tag.correct[data-v-f429b840]{background:#f0fdf4;color:#10b981}.review-tag.wrong[data-v-f429b840]{background:#fef2f2;color:#ef4444}.review-tag.unanswered[data-v-f429b840]{background:#fef3c7;color:#92400e}.review-progress[data-v-f429b840]{font-size:15px;font-weight:700;color:#6b7280}.result-box[data-v-f429b840]{margin-top:32px;padding:22px 24px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0}.result-answer[data-v-f429b840]{margin-top:10px;color:#4b5563;font-weight:700;font-size:15px}.result-analysis[data-v-f429b840]{margin-top:14px;color:#374151;line-height:1.7;font-size:15px}.review-summary[data-v-f429b840]{margin-top:32px;padding:24px;background:linear-gradient(135deg,#e6f7ff,#f0f5ff);border-radius:12px;text-align:center}.review-summary h3[data-v-f429b840]{margin:0 0 12px;font-size:22px;color:#1f2937}.review-summary p[data-v-f429b840]{font-size:18px;color:#374151;font-weight:700}.summary-btns[data-v-f429b840]{display:flex;justify-content:center;gap:16px;margin-top:20px}.modal-overlay[data-v-f429b840]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-f429b840]{background:#fff;border-radius:16px;padding:32px;max-width:420px;width:90%;box-shadow:0 20px 60px #0003}.modal-title[data-v-f429b840]{margin:0 0 16px;font-size:20px;font-weight:900;color:#1f2937}.modal-text[data-v-f429b840]{font-size:16px;color:#374151;margin:0 0 8px}.modal-hint[data-v-f429b840]{font-size:14px;color:#9ca3af;margin:0 0 24px}.modal-btns[data-v-f429b840]{display:flex;justify-content:flex-end;gap:12px}@media (max-width: 640px){.practice-body[data-v-f429b840]{padding:20px 14px}.review-plan-card[data-v-f429b840]{align-items:flex-start;flex-direction:column;gap:8px}.review-plan-card small[data-v-f429b840]{flex:auto}.question-media img[data-v-f429b840],.option-image[data-v-f429b840]{width:100%;max-height:320px}.option-image[data-v-f429b840]{max-height:220px}}.collections-container[data-v-7750d48b]{max-width:1000px;margin:0 auto;padding:40px 24px}.page-header[data-v-7750d48b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;flex-wrap:wrap;gap:12px}.page-title[data-v-7750d48b]{margin:0;font-size:28px;font-weight:900;color:#1f2937}.header-actions[data-v-7750d48b]{display:flex;gap:12px;align-items:center}.quiz-filter[data-v-7750d48b]{padding:10px 16px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;font-size:14px}.btn-primary[data-v-7750d48b]{padding:10px 20px;border-radius:8px;border:none;background:#1890ff;color:#fff;font-weight:700;cursor:pointer;transition:.2s;font-size:15px;text-decoration:none;display:inline-block}.btn-primary[data-v-7750d48b]:hover{background:#096dd9}.btn-primary[data-v-7750d48b]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-7750d48b]{padding:10px 16px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#4b5563;font-weight:600;cursor:pointer;transition:.2s;font-size:15px;display:flex;align-items:center;gap:8px}.btn-secondary[data-v-7750d48b]:hover{background:#f3f4f6;border-color:#ef4444;color:#ef4444}.empty[data-v-7750d48b]{text-align:center;padding:60px;color:#6b7280}.list[data-v-7750d48b]{display:flex;flex-direction:column;gap:18px}.item[data-v-7750d48b]{background:#fff;border-radius:14px;padding:24px;box-shadow:0 4px 20px #00000014;display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.item-content[data-v-7750d48b]{flex:1}.item-source[data-v-7750d48b]{font-size:13px;color:#6b7280;font-weight:800;margin-bottom:10px}.item-title[data-v-7750d48b]{margin:0;font-size:18px;font-weight:700;line-height:1.6}.item-time[data-v-7750d48b]{margin-top:12px;color:#9ca3af;font-size:13px}.item-actions[data-v-7750d48b]{display:flex;gap:12px}.practice-view[data-v-7750d48b]{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.practice-header[data-v-7750d48b]{padding:24px 28px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.progress-bar[data-v-7750d48b]{height:8px;background:#e5e7eb}.progress-bar-fill[data-v-7750d48b]{height:100%;background:linear-gradient(90deg,#1890ff,#36cfc9);transition:width .3s}.practice-body[data-v-7750d48b]{padding:32px 28px}.question-top[data-v-7750d48b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.question-counter[data-v-7750d48b]{font-size:16px;font-weight:800;color:#6b7280}.timer[data-v-7750d48b]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fef3c7;border-radius:20px;color:#92400e;font-weight:700;font-size:14px}.timer-icon[data-v-7750d48b]{font-size:16px}.question-source[data-v-7750d48b]{font-size:13px;color:#6b7280;font-weight:800;margin-bottom:12px}.question-stem[data-v-7750d48b]{font-size:20px;line-height:1.7;font-weight:600;color:#1f2937}.question-stem .blank[data-v-7750d48b]{color:#1890ff;font-weight:900;text-decoration:underline;text-underline-offset:3px}.options[data-v-7750d48b]{display:flex;flex-direction:column;gap:16px;margin-top:28px}.option[data-v-7750d48b]{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;transition:.2s}.option[data-v-7750d48b]:hover:not(.review){border-color:#93c5fd;background:#eff6ff}.option.selected[data-v-7750d48b]{border-color:#1890ff;background:#e6f7ff}.option.correct[data-v-7750d48b]{border-color:#10b981;background:#f0fdf4}.option.wrong[data-v-7750d48b]{border-color:#ef4444;background:#fef2f2}.option.review[data-v-7750d48b]{cursor:default}.option-key[data-v-7750d48b]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#f3f4f6;color:#374151;font-weight:900;font-size:16px;flex-shrink:0}.option.selected .option-key[data-v-7750d48b]{background:#1890ff;color:#fff}.option.correct .option-key[data-v-7750d48b]{background:#10b981;color:#fff}.option.wrong .option-key[data-v-7750d48b]{background:#ef4444;color:#fff}.option-text[data-v-7750d48b]{flex:1;margin-top:2px;line-height:1.6;font-size:15px}.hint-text[data-v-7750d48b]{margin-top:16px;padding:10px 16px;background:#e6f7ff;border-radius:8px;color:#1890ff;font-weight:600;font-size:14px;text-align:center}.nav-btns[data-v-7750d48b]{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.nav-btn[data-v-7750d48b]{padding:14px 28px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#374151;font-weight:800;cursor:pointer;transition:.2s;font-size:15px}.nav-btn[data-v-7750d48b]:hover:not(:disabled){background:#f3f4f6}.nav-btn[data-v-7750d48b]:disabled{opacity:.5;cursor:not-allowed}.nav-btn.primary[data-v-7750d48b]{border:none;background:#1890ff;color:#fff}.nav-btn.primary[data-v-7750d48b]:hover:not(:disabled){background:#096dd9}.review-header[data-v-7750d48b]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.review-tag[data-v-7750d48b]{padding:4px 12px;border-radius:6px;font-size:13px;font-weight:700}.review-tag.correct[data-v-7750d48b]{background:#f0fdf4;color:#10b981}.review-tag.wrong[data-v-7750d48b]{background:#fef2f2;color:#ef4444}.review-tag.unanswered[data-v-7750d48b]{background:#fef3c7;color:#92400e}.review-progress[data-v-7750d48b]{font-size:15px;font-weight:700;color:#6b7280}.result-box[data-v-7750d48b]{margin-top:32px;padding:22px 24px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0}.result-answer[data-v-7750d48b]{margin-top:10px;color:#4b5563;font-weight:700;font-size:15px}.result-analysis[data-v-7750d48b]{margin-top:14px;color:#374151;line-height:1.7;font-size:15px}.review-summary[data-v-7750d48b]{margin-top:32px;padding:24px;background:linear-gradient(135deg,#e6f7ff,#f0f5ff);border-radius:12px;text-align:center}.review-summary h3[data-v-7750d48b]{margin:0 0 12px;font-size:22px;color:#1f2937}.review-summary p[data-v-7750d48b]{font-size:18px;color:#374151;font-weight:700}.summary-btns[data-v-7750d48b]{display:flex;justify-content:center;gap:16px;margin-top:20px}.modal-overlay[data-v-7750d48b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-7750d48b]{background:#fff;border-radius:16px;padding:32px;max-width:420px;width:90%;box-shadow:0 20px 60px #0003}.modal-title[data-v-7750d48b]{margin:0 0 16px;font-size:20px;font-weight:900;color:#1f2937}.modal-text[data-v-7750d48b]{font-size:16px;color:#374151;margin:0 0 8px}.modal-hint[data-v-7750d48b]{font-size:14px;color:#9ca3af;margin:0 0 24px}.modal-btns[data-v-7750d48b]{display:flex;justify-content:flex-end;gap:12px}.history-container[data-v-9783a1ef]{max-width:1000px;margin:0 auto;padding:40px 24px}.page-header[data-v-9783a1ef]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.page-title[data-v-9783a1ef]{margin:0;font-size:28px;font-weight:900;color:#1f2937}.btn-primary[data-v-9783a1ef]{padding:10px 20px;border-radius:8px;border:none;background:#1890ff;color:#fff;font-weight:700;cursor:pointer;transition:.2s;font-size:15px;text-decoration:none;display:inline-block}.btn-primary[data-v-9783a1ef]:hover{background:#096dd9}.empty[data-v-9783a1ef]{text-align:center;padding:60px;color:#6b7280}.list[data-v-9783a1ef]{display:flex;flex-direction:column;gap:18px}.item[data-v-9783a1ef]{background:#fff;border-radius:14px;padding:24px;box-shadow:0 4px 20px #00000014;display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.item-content[data-v-9783a1ef]{flex:1}.item-meta[data-v-9783a1ef]{display:flex;gap:12px;align-items:center;margin-bottom:10px}.item-source[data-v-9783a1ef]{font-size:13px;color:#6b7280;font-weight:800}.item-date[data-v-9783a1ef]{font-size:13px;color:#9ca3af}.item-title[data-v-9783a1ef]{margin:0;font-size:18px;font-weight:700;line-height:1.6}.item-result[data-v-9783a1ef]{margin-top:12px;display:flex;flex-wrap:wrap;gap:16px;align-items:center}.result-badge[data-v-9783a1ef]{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:800}.result-badge.correct[data-v-9783a1ef]{background:#dcfce7;color:#166534}.result-badge.wrong[data-v-9783a1ef]{background:#fee2e2;color:#991b1b}.answer-info[data-v-9783a1ef]{color:#4b5563;font-size:14px}.answer-info b[data-v-9783a1ef]{color:#ef4444}.answer-info .correct-answer[data-v-9783a1ef]{color:#10b981}.time-spent[data-v-9783a1ef]{color:#6b7280;font-size:13px}.item-actions[data-v-9783a1ef]{display:flex;gap:12px}.checkin-container[data-v-14597020]{max-width:860px;margin:0 auto;padding:32px 24px 48px}.checkin-heading[data-v-14597020]{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.page-kicker[data-v-14597020]{margin:0 0 4px;color:#1677ff;font-size:14px;font-weight:700}.page-title[data-v-14597020]{margin:0;color:#111827;font-size:32px;font-weight:900}.today-date[data-v-14597020]{color:#667085;font-size:14px;white-space:nowrap}.checkin-alert[data-v-14597020],.checkin-loading-card[data-v-14597020],.checkin-hero-card[data-v-14597020],.checkin-stat-card[data-v-14597020],.streak-milestone-card[data-v-14597020],.checkin-tips-card[data-v-14597020]{border-radius:12px;box-shadow:0 8px 24px #0f172a14}.checkin-loading-card[data-v-14597020] .ant-card-body{display:flex;align-items:center;justify-content:center;gap:12px;min-height:180px;color:#667085}.checkin-hero-card[data-v-14597020]{margin-bottom:16px;background:linear-gradient(135deg,#f0f7ff,#f6ffed)}.hero-content[data-v-14597020]{width:100%}.checkin-hero-card h2[data-v-14597020]{margin:0 0 8px;color:#101828;font-size:26px;font-weight:900}.checkin-hero-card p[data-v-14597020]{margin:0;color:#475467;line-height:1.7}.checkin-btn[data-v-14597020]{max-width:280px;font-weight:800}.checkin-grid[data-v-14597020]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.checkin-stat-card[data-v-14597020] .ant-statistic-title{color:#667085;font-weight:700}.checkin-stat-card[data-v-14597020] .ant-statistic-content{color:#1677ff;font-weight:900}.streak-milestone-card[data-v-14597020]{margin-bottom:16px}.milestone-header[data-v-14597020]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:#101828}.milestone-header span[data-v-14597020]{color:#1677ff;font-weight:800}.milestone-copy[data-v-14597020]{margin:12px 0 0;color:#475467;line-height:1.7}.milestone-tags[data-v-14597020]{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.checkin-tips-card[data-v-14597020] .ant-card-head-title{color:#101828;font-weight:900}.checkin-tips-card span[data-v-14597020]{color:#475467;line-height:1.7}.dark{color:#f8fafc}.dark{color:#cbd5e1}.dark{background:linear-gradient(135deg,#111827,#102a43)}.dark{background:#111827}@media (max-width: 640px){.checkin-container[data-v-14597020]{padding:20px 12px 32px}.checkin-heading[data-v-14597020]{align-items:flex-start;flex-direction:column}.page-title[data-v-14597020]{font-size:26px}.today-date[data-v-14597020]{white-space:normal}.checkin-grid[data-v-14597020]{grid-template-columns:1fr}.checkin-btn[data-v-14597020]{max-width:none}}@media (max-width: 768px){html{-webkit-text-size-adjust:100%}body{overflow-x:hidden}body .app .main,body .header .header-inner,body .header .nav,body .header .user-section,body .header .auth-form,body .header .auth-input,body .quiz-container,body .wrong-container,body .collections-container,body .history-container,body .stats-container,body .search-container,body .checkin-container{box-sizing:border-box;max-width:100%}body .app .main{width:100%;max-width:none;padding:16px 12px 28px}body .header .header-inner{align-items:stretch;flex-direction:column;gap:6px;padding:8px 0 7px}body .header .brand{justify-content:center;font-size:18px;line-height:1.15}body .header .brand-icon{font-size:23px}body .header .nav{display:flex;flex-wrap:nowrap;gap:6px;flex:none;justify-content:flex-start;margin:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding:0 10px 2px;scroll-snap-type:x proximity;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}body .header .nav::-webkit-scrollbar{display:none}body .header .nav-link{align-items:center;display:flex;flex:none;justify-content:center;min-height:34px;min-width:max-content;padding:7px 11px;scroll-snap-align:start;font-size:14px;text-align:center;white-space:nowrap}body .header .user-section{justify-content:center;margin-left:0;padding:0 10px;width:100%}body .header .auth-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%}body .header .auth-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;height:40px;line-height:20px;min-width:0;width:100%}body .header .btn-primary,body .header .btn-secondary,body .header .btn-logout{min-height:36px;justify-content:center}body .quiz-container,body .wrong-container,body .collections-container,body .history-container,body .stats-container,body .search-container,body .checkin-container{max-width:none;padding:0}body .quiz-card,body .checkin-card,body .practice-view{border-radius:12px}body .quiz-card-header,body .page-header,body .practice-header,body .card-header{align-items:stretch;flex-direction:column;gap:14px;padding:18px}body .quiz-card-title,body .page-title{font-size:22px;line-height:1.25}body .quiz-controls,body .header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}body .quiz-controls .quiz-filter,body .header-actions .quiz-filter,body .quiz-controls .btn-primary,body .quiz-controls .btn-secondary,body .header-actions .btn-primary{min-height:42px;min-width:0;width:100%}body .question-wrapper,body .practice-body,body .content{padding:18px}body .question-top,body .question-header,body .review-header{align-items:flex-start;flex-direction:column;gap:10px}body .question-counter,body .score,body .timer,body .question-source,body .review-progress{max-width:100%}body .question-stem{font-size:17px;line-height:1.65;overflow-wrap:anywhere}body .options{gap:12px;margin-top:20px}body .option{min-height:54px;padding:14px}body .option-key{height:32px;width:32px}body .option-text,body .result-analysis,body .detail-analysis{overflow-wrap:anywhere}body .collection-btn{min-height:40px}body .nav-btns,body .summary-btns,body .modal-btns{align-items:stretch;flex-wrap:wrap;gap:10px}body .nav-btn,body .summary-btns .btn-primary,body .summary-btns .btn-secondary,body .modal-btns .btn-primary,body .modal-btns .btn-secondary{flex:1 1 calc(50% - 10px);min-height:44px;text-align:center}body .nav-btn.primary,body .review-progress{flex-basis:100%;order:-1}body .note-content textarea{max-width:100%}body .review-summary,body .result-box{margin-top:22px;padding:18px}body .review-card{align-items:stretch;border-radius:12px;flex-direction:column;padding:18px}body .review-card-left,body .review-card-right{align-items:stretch;width:100%}body .review-card-right{flex-direction:column;gap:12px}body .review-card-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}body .btn-review{min-height:44px;width:100%}body .list{gap:12px}body .item{align-items:stretch;border-radius:12px;flex-direction:column;gap:14px;padding:18px}body .item-title{font-size:16px;overflow-wrap:anywhere}body .item-meta,body .item-result,body .answer-info{align-items:flex-start;flex-direction:column;gap:6px}body .item-actions,body .item-actions .btn-secondary{width:100%}body .item-actions{align-items:stretch;min-width:0}body .reason-tags{justify-content:flex-start}body .reason-tag{min-height:36px}body .item-actions .btn-secondary{justify-content:center;min-height:42px}body .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body .stat-card,body .weak-section,body .category-stats,body .result-card{border-radius:12px;padding:18px}body .stat-value{font-size:26px}body .weak-grid{grid-template-columns:minmax(0,1fr)}body .category-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}body .category-bar{grid-column:1 / -1;order:3;width:100%}body .category-accuracy{justify-self:end}body .search-box{display:grid;grid-template-columns:minmax(0,1fr) auto}body .search-input{min-width:0}body .filter-tabs{justify-content:flex-start;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}body .filter-tabs::-webkit-scrollbar{display:none}body .filter-tab{flex:0 0 auto}body .result-meta,body .detail-options,body .pagination{flex-wrap:wrap}body .progress-bar{width:100%}body .empty,body .empty-state{border-radius:12px;padding:28px 16px}body .result-list{gap:12px}body .result-info{align-items:flex-start;flex-direction:column;gap:8px}body .result-title,body .result-desc,body .detail-stem,body .detail-answer,body .question-detail,body .idiom-meaning,body .idiom-detail{overflow-wrap:anywhere}body .weak-card{border-radius:12px;padding:16px}body .weak-header{align-items:flex-start;flex-direction:column;gap:8px}body .weak-bar{width:100%}body .weak-detail{overflow-wrap:anywhere}body .result-badge,body .time-spent{max-width:100%}body .review-card-info{min-width:0}body .review-card-title,body .review-mastered-info{overflow-wrap:anywhere}body .tips-section{border-radius:12px;padding:18px}body .page-btn{min-height:40px;min-width:40px}body .stats-section{gap:16px}body .stat-item{min-width:0}body .checkin-btn{min-height:48px;width:100%}body .tips-list{padding-left:18px}body .modal-overlay{align-items:flex-end;padding:12px}body .modal-box{max-height:calc(100vh - 24px);overflow-y:auto;padding:22px;width:100%}body .modal{border-radius:14px 14px 0 0;max-height:calc(100vh - 24px);overflow:hidden;width:100%}body .modal-header,body .modal-body,body .modal-footer{padding-left:18px;padding-right:18px}body .modal-body{max-height:calc(100vh - 180px);overflow-y:auto}body .modal-footer{align-items:stretch;flex-direction:column-reverse}body .modal-footer .btn-primary,body .modal-footer .btn-secondary{min-height:44px;width:100%}}@media (max-width: 480px){body .app .main{padding:10px 8px 24px}body .header .header-inner{padding-inline:0}body .header .nav{padding-inline:8px}body .header .auth-form,body .quiz-controls,body .header-actions,body .search-box,body .stats-grid,body .review-card-stats{grid-template-columns:minmax(0,1fr)}body .quiz-card-header,body .page-header,body .practice-header,body .question-wrapper,body .practice-body,body .content,body .card-header{padding:14px}body .quiz-card-title,body .page-title{font-size:20px}body .question-stem{font-size:16px}body .option{gap:10px;padding:12px}body .nav-btn,body .summary-btns .btn-primary,body .summary-btns .btn-secondary,body .modal-btns .btn-primary,body .modal-btns .btn-secondary{flex-basis:100%}body .review-card-icon{font-size:30px}body .review-card-count,body .stat-value{font-size:24px}body .item,body .stat-card,body .weak-section,body .category-stats,body .result-card{padding:14px}body .category-item{grid-template-columns:minmax(0,1fr)}body .category-count,body .category-accuracy{justify-self:start}body .stats-section{align-items:stretch;flex-direction:column}body .btn-search,body .result-actions,body .result-actions .btn-secondary{width:100%}body .btn-search{min-height:44px}body .stat-divider{display:none}body .modal-box{border-radius:14px 14px 0 0;padding:18px}}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--gk-bg: #0b1120;--gk-surface: #111827;--gk-surface-2: #182235;--gk-surface-3: #1f2937;--gk-border: #334155;--gk-border-soft: #253044;--gk-text: #e5e7eb;--gk-text-strong: #f8fafc;--gk-text-muted: #94a3b8;--gk-primary: #60a5fa;--gk-primary-bg: rgba(37, 99, 235, .18);--gk-success-bg: rgba(16, 185, 129, .14);--gk-success-border: rgba(16, 185, 129, .45);--gk-danger-bg: rgba(239, 68, 68, .14);--gk-danger-border: rgba(239, 68, 68, .45);--gk-warning-bg: rgba(245, 158, 11, .14);--gk-warning-border: rgba(245, 158, 11, .45);--gk-shadow: 0 14px 42px rgba(0, 0, 0, .38)}html,body,body #app,body .app{background:var(--gk-bg)!important;color:var(--gk-text)!important}body .main{background:transparent!important}body .header{background:#111827f5!important;border-bottom-color:var(--gk-border-soft)!important;box-shadow:0 10px 30px #00000038!important}body .brand,body .nav-link.router-link-active,body .nav-link:hover,body .panel-action,body .mode-hint,body .analysis-toggle,body .empty-action,body .submodule-chip,body .question-tags span{color:var(--gk-primary)!important}body .nav-link{color:var(--gk-text-muted)!important}body .nav-link.router-link-active,body .nav-link:hover,body .question-tags span,body .hint-text,body .empty-action,body .analysis-toggle,body .submodule-chip{background:var(--gk-primary-bg)!important}body .quiz-card,body .checkin-card,body .history-card,body .stat-card,body .review-completion,body .learning-goal,body .learning-recommend-card,body .module-trend-card,body .learning-report,body .category-stats,body .weak-section,body .item,body .practice-view,body .result-box,body .note-section,body .review-card,body .search-box,body .search-panel,body .result-item,body .modal,body .modal-box{background:var(--gk-surface)!important;border-color:var(--gk-border-soft)!important;box-shadow:var(--gk-shadow)!important;color:var(--gk-text)!important}body .module-practice,body .progress-summary,body .learning-recommend-item,body .module-trend-row,body .report-tabs,body .report-metric,body .report-trend,body .report-insight-panel,body .weak-card,body .round-report,body .note-header{background:var(--gk-surface-2)!important;border-color:var(--gk-border-soft)!important;color:var(--gk-text)!important}body .module-card,body .mode-tab,body .option,body .report-inline-metrics span,body .report-metrics span,body .reason-tag,body .review-filter,body .quiz-filter,body .btn-secondary,body .btn-logout,body .nav-btn,body .collection-btn{background:var(--gk-surface-2)!important;border-color:var(--gk-border)!important;color:var(--gk-text)!important}body .module-card:hover,body .module-card.active,body .mode-tab:hover:not(:disabled),body .mode-tab.active,body .option:hover:not(.review):not(:disabled),body .option.selected,body .btn-secondary:hover,body .btn-logout:hover,body .nav-btn:hover:not(:disabled),body .collection-btn:hover:not(:disabled){background:#2563eb29!important;border-color:var(--gk-primary)!important;color:var(--gk-primary)!important}body .option.correct,body .review-tag.correct{background:var(--gk-success-bg)!important;border-color:var(--gk-success-border)!important}body .option.wrong,body .review-tag.wrong,body .weak-card.weak,body .collection-btn.collected{background:var(--gk-danger-bg)!important;border-color:var(--gk-danger-border)!important}body .message-box,body .timer,body .review-tag.unanswered,body .correction-toggle{background:var(--gk-warning-bg)!important;border-color:var(--gk-warning-border)!important}body .review-reminder,body .review-summary{background:linear-gradient(135deg,#2563eb33,#14b8a624)!important;border-color:#60a5fa52!important}body .quiz-card-header,body .mode-tabs,body .progress-bar,body .progress-summary,body .nav-btns,body .correction-section,body .modal-header,body .modal-footer,body .category-item,body .report-metric,body .report-inline-metrics span,body .question-media img,body .option-image{border-color:var(--gk-border-soft)!important}body .progress-bar,body .goal-track,body .trend-bar-wrap,body .category-bar,body .weak-bar{background:#263244!important}body .page-title,body .quiz-card-title,body .question-stem,body .review-reminder b,body .module-practice-head,body .module-label,body .review-completion h3,body .learning-goal h3,body .report-header h2,body .trend-heading h3,body .report-insight-panel h3,body .category-stats h3,body .weak-section h3,body .learning-recommend-head strong,body .module-trend-meta strong,body .modal-title,body .report-heading span,body .report-metric b,body .review-summary h3,body .review-summary p{color:var(--gk-text-strong)!important}body .question-counter,body .score,body .question-source,body .module-count,body .module-desc,body .mode-tab small,body .review-reminder span,body .result-answer,body .result-analysis,body .modal-text,body .panel-label,body .review-metrics,body .goal-input,body .panel-note,body .report-range,body .trend-heading span,body .report-insight-panel p,body .learning-recommend-item p,body .module-trend-detail,body .module-trend-empty,body .category-label,body .category-count,body .category-accuracy,body .weak-category,body .weak-detail,body .empty,body .empty-box,body .form-label{color:var(--gk-text-muted)!important}body input,body textarea,body select,body .auth-input,body .form-input,body .note-content textarea,body .correction-form select,body .correction-form textarea{background:#0f172a!important;border-color:var(--gk-border)!important;color:var(--gk-text)!important}body input::placeholder,body textarea::placeholder{color:#64748b!important}body .option-key,body .weak-difficulty{background:var(--gk-surface-3)!important;color:var(--gk-text)!important}body .question-media img,body .option-image{background:#0f172a!important}body .modal-overlay{background:#000000ad!important}body .search-container .ant-card,body .stats-container .ant-card,body .search-container .ant-card-body,body .stats-container .ant-card-body,body .search-container .ant-empty,body .search-container .ant-alert,body .search-container .ant-pagination-item,body .search-container .ant-pagination-prev .ant-pagination-item-link,body .search-container .ant-pagination-next .ant-pagination-item-link,body .search-container .ant-segmented{background:var(--gk-surface)!important;border-color:var(--gk-border-soft)!important;color:var(--gk-text)!important}body .stats-container .ant-card-head{background:var(--gk-surface)!important;border-color:var(--gk-border-soft)!important;color:var(--gk-text-strong)!important}body .stats-container .ant-card-head-title,body .stats-container .ant-progress-text{color:var(--gk-text)!important}body .search-container .ant-input,body .search-container .ant-input-search-button,body .search-container .ant-segmented-item{border-color:var(--gk-border)!important}body .search-container .ant-input,body .search-container .ant-input-group-addon{background:#0f172a!important;color:var(--gk-text)!important}body .search-container .ant-card-head,body .search-container .ant-card-type-inner .ant-card-body,body .search-container .detail-option{background:var(--gk-surface-2)!important;border-color:var(--gk-border-soft)!important;color:var(--gk-text)!important}body .search-container .result-title,body .search-container .ant-empty-description,body .search-container .ant-typography,body .search-container .ant-pagination-item a,body .search-container .ant-pagination-prev button,body .search-container .ant-pagination-next button{color:var(--gk-text)!important}body .search-container .result-desc,body .search-container .idiom-detail,body .search-container .ant-typography-secondary{color:var(--gk-text-muted)!important}body .search-container .detail-analysis{background:var(--gk-success-bg)!important;color:var(--gk-text)!important}}
