.groups-list[data-v-b8c3aa41]{display:flex;flex-direction:column;gap:.75rem}.group-section[data-v-b8c3aa41]{background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow)}.group-header[data-v-b8c3aa41]{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.group-header[data-v-b8c3aa41]:hover{background:#f8f7f2}.group-header-left[data-v-b8c3aa41]{display:flex;align-items:center;gap:.5rem}.group-label[data-v-b8c3aa41]{font-size:.78rem;color:var(--color-muted);margin-left:.3rem}.group-header-right[data-v-b8c3aa41]{display:flex;align-items:center;gap:.6rem}.group-progress-wrap[data-v-b8c3aa41]{width:80px;height:8px;background:#f0efe8;border:1.5px solid var(--color-border);overflow:hidden}.group-progress-fill[data-v-b8c3aa41]{height:100%;transition:width .5s ease;background:repeating-linear-gradient(45deg,#111,#111 3px,#555 3px,#555 6px)}.group-progress-fill.fill-n1[data-v-b8c3aa41]{background:repeating-linear-gradient(45deg,#1e3a5f,#1e3a5f 3px,#3b6ea5 3px,#3b6ea5 6px)}.group-progress-fill.fill-n2[data-v-b8c3aa41]{background:repeating-linear-gradient(45deg,#1a5c2a,#1a5c2a 3px,#3a9952 3px,#3a9952 6px)}.group-progress-fill.fill-read[data-v-b8c3aa41]{background:repeating-linear-gradient(45deg,#6b21a8,#6b21a8 3px,#a855f7 3px,#a855f7 6px)}.group-progress-fill.fill-grammar[data-v-b8c3aa41]{background:repeating-linear-gradient(45deg,#854d0e,#854d0e 3px,#ca8a04 3px,#ca8a04 6px)}.group-pct[data-v-b8c3aa41]{font-size:.75rem;font-weight:600;color:var(--color-muted);min-width:2.5em;text-align:right}.group-count[data-v-b8c3aa41]{font-size:.75rem;font-weight:600;color:var(--color-text);min-width:4.5em;text-align:right}.group-toggle[data-v-b8c3aa41]{font-size:.6rem;color:var(--color-muted);transition:transform .2s;display:inline-block}.group-toggle.open[data-v-b8c3aa41]{transform:rotate(90deg)}.badge[data-v-b8c3aa41]{font-size:.7rem;font-weight:700;padding:.15rem .5rem;border-radius:0;border:1.5px solid #111}.badge-n1[data-v-b8c3aa41]{background:#111;color:#fff}.badge-n2[data-v-b8c3aa41]{background:#fff;color:#111}.cat-badge[data-v-b8c3aa41]{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:0;border:1.5px solid #111}.cat-vocab[data-v-b8c3aa41]{background:#fffbe8;color:#111}.cat-read[data-v-b8c3aa41]{background:#eaf0ff;color:#111}.cat-grammar[data-v-b8c3aa41]{background:#f0fdf4;color:#14532d}.stats-dashboard[data-v-b8c3aa41]{background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow);padding:.9rem 1rem;margin-bottom:1.25rem}.stats-dashboard-header[data-v-b8c3aa41]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem}.stats-title[data-v-b8c3aa41]{font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.btn-sm[data-v-b8c3aa41]{padding:.25rem .8rem;font-size:.8rem}.stats-rows[data-v-b8c3aa41]{display:flex;flex-direction:column;gap:.45rem}.stats-row[data-v-b8c3aa41]{display:grid;grid-template-columns:5.5em 1fr auto;align-items:center;gap:.6rem}.stats-lbl[data-v-b8c3aa41]{font-size:.78rem;font-weight:600;letter-spacing:.06em;color:var(--color-text);white-space:nowrap}.stats-bar-wrap[data-v-b8c3aa41]{height:10px;background:#f0efe8;border:1.5px solid var(--color-border);overflow:hidden}.stats-bar-fill[data-v-b8c3aa41]{height:100%;background:repeating-linear-gradient(45deg,#111,#111 3px,#555 3px,#555 6px);transition:width .5s ease}.stats-bar-fill.fill-n1[data-v-b8c3aa41]{background:repeating-linear-gradient(45deg,#1e3a5f,#1e3a5f 3px,#3b6ea5 3px,#3b6ea5 6px)}.stats-bar-fill.fill-n2[data-v-b8c3aa41]{background:repeating-linear-gradient(45deg,#1a5c2a,#1a5c2a 3px,#3a9952 3px,#3a9952 6px)}.stats-bar-fill.fill-read[data-v-b8c3aa41]{background:repeating-linear-gradient(45deg,#6b21a8,#6b21a8 3px,#a855f7 3px,#a855f7 6px)}.stats-bar-fill.fill-grammar[data-v-b8c3aa41]{background:repeating-linear-gradient(45deg,#854d0e,#854d0e 3px,#ca8a04 3px,#ca8a04 6px)}.stats-count[data-v-b8c3aa41]{font-size:.8rem;font-weight:600;color:var(--color-text);white-space:nowrap;min-width:6.5em;text-align:right}.stats-sep[data-v-b8c3aa41]{color:var(--color-muted);margin:0 .15em}.stats-pct[data-v-b8c3aa41]{margin-left:.4em;color:var(--color-muted);font-weight:400;font-size:.75em}.stats-footer[data-v-b8c3aa41]{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:.75rem;padding-top:.6rem;border-top:1.5px dashed var(--color-border)}.stats-meta[data-v-b8c3aa41]{font-size:.78rem;color:var(--color-muted)}.stats-meta b[data-v-b8c3aa41]{color:var(--color-text)}.weak-val[data-v-b8c3aa41]{color:#92400e}.rounds-grid[data-v-b8c3aa41]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.7rem;padding:.7rem 1rem 1rem;border-top:1.5px dashed var(--color-border)}.round-card[data-v-b8c3aa41]{background:#fafaf6;border:1.5px solid var(--color-border);padding:.7rem;display:flex;flex-direction:column;gap:.4rem;transition:transform .18s,box-shadow .18s}.round-card[data-v-b8c3aa41]:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #111}.round-card.done[data-v-b8c3aa41]{border-left:4px solid #111;background:#f5f5f0}.card-title[data-v-b8c3aa41]{font-size:.85rem;font-weight:600;margin:0;line-height:1.3}.progress-bar[data-v-b8c3aa41]{height:8px;background:#f0efe8;border:1.5px solid var(--color-border);overflow:hidden}.progress-fill[data-v-b8c3aa41]{height:100%;background:repeating-linear-gradient(45deg,#111,#111 3px,#555 3px,#555 6px);transition:width .4s ease}.stat-row[data-v-b8c3aa41]{display:flex;justify-content:space-between;font-size:.8rem;color:var(--color-muted)}.weak-count[data-v-b8c3aa41]{color:#92400e;font-weight:600}.card-btn[data-v-b8c3aa41]{width:100%;margin-top:auto;font-size:.82rem;padding:.35rem .8rem}.btn[data-v-b8c3aa41]{padding:.5rem 1.2rem;border:2px solid var(--color-border);border-radius:0;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s,transform .12s}.btn[data-v-b8c3aa41]:hover{transform:translate(-1px,-1px)}.btn-primary[data-v-b8c3aa41]{background:var(--color-text);color:#fff}.btn-warn[data-v-b8c3aa41]{background:#fff;color:#111}.btn-warn[data-v-b8c3aa41]:hover{background:#fef3c7}.loading-box[data-v-b8c3aa41],.error-box[data-v-b8c3aa41]{text-align:center;padding:3rem;color:var(--color-muted);font-size:1rem;border:2px dashed var(--color-border)}.error-box[data-v-b8c3aa41]{color:#7f1d1d;border-color:#7f1d1d}.spinner[data-v-b8c3aa41]{display:inline-block;width:16px;height:16px;border:2px solid #ccc;border-top-color:#111;border-radius:0;animation:spin-b8c3aa41 .7s linear infinite;vertical-align:middle;margin-right:.4rem}@keyframes spin-b8c3aa41{to{transform:rotate(360deg)}}.empty-msg[data-v-b8c3aa41]{text-align:center;padding:3rem;color:var(--color-muted);border:2px dashed var(--color-border)}@media (max-width: 600px){.stats-dashboard[data-v-b8c3aa41]{padding:.7rem .75rem}.stats-dashboard-header[data-v-b8c3aa41]{flex-direction:column;align-items:flex-start;gap:.4rem}.stats-row[data-v-b8c3aa41]{grid-template-columns:4.5em 1fr auto;gap:.4rem}.stats-lbl[data-v-b8c3aa41]{font-size:.72rem}.stats-count[data-v-b8c3aa41]{font-size:.72rem;min-width:5.5em}.stats-footer[data-v-b8c3aa41]{gap:.8rem}.stats-meta[data-v-b8c3aa41]{font-size:.72rem}.group-header[data-v-b8c3aa41]{padding:.6rem .75rem;flex-wrap:wrap;gap:.4rem}.group-header-right[data-v-b8c3aa41]{gap:.4rem}.group-progress-wrap[data-v-b8c3aa41]{width:50px}.group-label[data-v-b8c3aa41]{font-size:.72rem}.rounds-grid[data-v-b8c3aa41]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem;padding:.5rem .75rem .75rem}.round-card[data-v-b8c3aa41]{padding:.6rem}.card-title[data-v-b8c3aa41]{font-size:.8rem}.card-btn[data-v-b8c3aa41]{font-size:.78rem;padding:.3rem .6rem}}@media (max-width: 400px){.rounds-grid[data-v-b8c3aa41]{grid-template-columns:1fr}}.quiz-view[data-v-a6748793]{max-width:680px;margin:0 auto}.quiz-header[data-v-a6748793]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.quiz-meta[data-v-a6748793]{display:flex;align-items:center;gap:.5rem}.round-label[data-v-a6748793],.progress-text[data-v-a6748793]{font-size:.9rem;color:var(--color-muted);font-weight:600}.badge[data-v-a6748793]{font-size:.7rem;font-weight:700;padding:.15rem .5rem;border-radius:0;border:1.5px solid #111}.badge-n1[data-v-a6748793]{background:#111;color:#fff}.badge-n2[data-v-a6748793]{background:#fff;color:#111}.progress-bar[data-v-a6748793]{height:8px;background:#f0efe8;border:1.5px solid var(--color-border);margin-bottom:1.2rem;overflow:hidden}.progress-fill[data-v-a6748793]{height:100%;background:repeating-linear-gradient(45deg,#111,#111 3px,#555 3px,#555 6px);transition:width .4s ease}.question-card[data-v-a6748793]{background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow);padding:1.5rem}.type-badge[data-v-a6748793]{display:inline-block;font-size:.72rem;font-weight:700;padding:.2rem .6rem;background:#fff;color:#111;border:1.5px solid #111;margin-bottom:.8rem}.question-text[data-v-a6748793]{font-size:1rem;line-height:1.8;margin-bottom:1.25rem}.question-text[data-v-a6748793] b{color:#111;text-decoration:underline;text-underline-offset:3px}.question-text[data-v-a6748793] ruby{ruby-align:center}.question-text[data-v-a6748793] rt{font-size:.6em;color:#555;letter-spacing:.02em}.question-text[data-v-a6748793] blockquote{background:#f8f7f2;border-left:4px solid #111;padding:.8rem 1rem;margin:0 0 .8rem;font-size:.95rem;line-height:1.8}.question-text[data-v-a6748793] p{margin:.4rem 0}.options[data-v-a6748793]{display:flex;flex-direction:column;gap:.6rem}.option-btn[data-v-a6748793]{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;border:2px solid var(--color-border);background:transparent;text-align:left;cursor:pointer;font-size:.93rem;line-height:1.55;transition:background .15s}.option-btn[data-v-a6748793]:not(:disabled):hover{background:#f5f4ee}.option-btn.correct[data-v-a6748793]{background:#dcfce7;border-color:#111}.option-btn.wrong[data-v-a6748793]{background:#fee2e2;border-color:#111}.option-btn[data-v-a6748793]:disabled{cursor:default}.opt-num[data-v-a6748793]{font-weight:700;font-size:.85rem;min-width:1.5em;height:1.5em;line-height:1.5em;text-align:center;border:1.5px solid #111;background:#f5f4ee;color:#111;flex-shrink:0}.option-btn.correct .opt-num[data-v-a6748793]{background:#166534;color:#fff;border-color:#166534}.option-btn.wrong .opt-num[data-v-a6748793]{background:#991b1b;color:#fff;border-color:#991b1b}.explanation[data-v-a6748793]{margin-top:1rem;overflow:hidden;border:2px solid var(--color-border)}.exp-head[data-v-a6748793]{padding:.6rem 1rem;font-weight:700;font-size:.95rem;border-bottom:2px solid var(--color-border)}.exp-head.correct[data-v-a6748793]{background:#dcfce7;color:#166534}.exp-head.wrong[data-v-a6748793]{background:#fee2e2;color:#991b1b}.exp-body[data-v-a6748793]{padding:.75rem 1rem;font-size:.9rem;line-height:1.7;background:#f8f7f2;margin:0}.exp-actions[data-v-a6748793]{padding:.5rem 1rem .75rem;background:#f8f7f2;border-top:1px dashed #aaa;display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.btn-ai[data-v-a6748793]{background:transparent;border:1.5px solid #111;color:#111;font-size:.82rem;padding:.3rem .8rem;border-radius:0;cursor:pointer;font-weight:600;transition:background .15s}.btn-ai[data-v-a6748793]:hover{background:#f0efe8}.btn-ai-stop[data-v-a6748793]{background:transparent;border:1.5px solid #111;color:#111;font-size:.82rem;padding:.3rem .8rem;border-radius:0;cursor:pointer;font-weight:600;transition:background .15s}.btn-ai-stop[data-v-a6748793]:hover{background:#f0efe8}.btn-ai-cfg[data-v-a6748793]{background:transparent;border:1.5px solid #aaa;color:var(--color-muted);font-size:.82rem;padding:.25rem .55rem;border-radius:0;cursor:pointer;line-height:1;transition:background .15s;display:inline-flex;align-items:center;gap:.3rem}.cfg-model-hint[data-v-a6748793]{font-size:.72rem;color:#555;max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-ai-cfg[data-v-a6748793]:hover{background:#f0efe8}.ai-cfg-panel[data-v-a6748793]{background:#fafaf6;border-top:1px dashed #aaa;padding:.65rem 1rem .75rem}.ai-cfg-label[data-v-a6748793]{font-size:.75rem;font-weight:700;color:var(--color-muted);display:block;margin-bottom:.4rem;letter-spacing:.04em}.ai-cfg-row[data-v-a6748793]{display:flex;gap:.4rem;align-items:center}.ai-cfg-input[data-v-a6748793]{flex:1;border:1.5px solid var(--color-border);border-radius:0;padding:.28rem .6rem;font-size:.83rem;background:#fff;color:#111;outline:none}.ai-cfg-input[data-v-a6748793]:focus{border-color:#111}.ai-cfg-hint[data-v-a6748793]{margin:.45rem 0 0;font-size:.74rem;color:var(--color-muted);line-height:1.6}.ai-cfg-hint code[data-v-a6748793]{background:#f0efe8;border:1px solid #ddd;padding:.05rem .3rem;font-size:.78em}.ai-cfg-presets[data-v-a6748793]{display:flex;flex-wrap:wrap;gap:.35rem}.btn-preset[data-v-a6748793]{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;background:#fff;border:1.5px solid var(--color-border);border-radius:0;padding:.3rem .65rem;cursor:pointer;transition:border-color .15s,background .15s}.btn-preset[data-v-a6748793]:hover{border-color:#111;background:#f0efe8}.btn-preset.active[data-v-a6748793]{border-color:#111;background:#111;color:#fff}.btn-preset.active .preset-brand[data-v-a6748793]{color:#aaa}.preset-brand[data-v-a6748793]{font-size:.68rem;color:var(--color-muted);line-height:1}.preset-id[data-v-a6748793]{font-size:.78rem;font-weight:600;line-height:1.2}.ai-panel[data-v-a6748793]{border-top:2px solid var(--color-border);background:#0f172a;color:#e2e8f0}.ai-panel-head[data-v-a6748793]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid #1e293b}.ai-badge[data-v-a6748793]{font-size:.75rem;font-weight:700;letter-spacing:.06em;color:#7dd3fc}.ai-done[data-v-a6748793]{font-size:.72rem;color:#86efac}.ai-loading[data-v-a6748793]{display:flex;gap:2px}.dot[data-v-a6748793]{font-size:1.2rem;color:#7dd3fc;animation:blink-a6748793 1.2s infinite}.dot[data-v-a6748793]:nth-child(2){animation-delay:.2s}.dot[data-v-a6748793]:nth-child(3){animation-delay:.4s}@keyframes blink-a6748793{0%,80%,to{opacity:.15}40%{opacity:1}}.ai-body[data-v-a6748793]{padding:.85rem 1rem;font-size:.88rem;line-height:1.85;white-space:pre-wrap;word-break:break-word;color:#e2e8f0;max-height:400px;overflow-y:auto}.ai-body[data-v-a6748793] br{display:block;content:"";margin:.1em 0}.chat-thread[data-v-a6748793]{border-top:1px solid #1e3a5f;padding:.6rem 1rem .2rem}.chat-msg[data-v-a6748793]{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.75rem}.chat-role[data-v-a6748793]{font-size:.7rem;font-weight:700;letter-spacing:.06em;color:#64748b}.chat-user .chat-role[data-v-a6748793]{color:#93c5fd}.chat-ai .chat-role[data-v-a6748793]{color:#6ee7b7}.chat-text[data-v-a6748793]{font-size:.85rem;line-height:1.75;color:#e2e8f0;white-space:pre-wrap;word-break:break-word}.chat-user .chat-text[data-v-a6748793]{background:#1e3a5f;border-radius:0 6px 6px;padding:.45rem .7rem;display:inline-block;max-width:92%}.chat-ai .chat-text[data-v-a6748793]{padding:.1rem 0}.chat-input-row[data-v-a6748793]{display:flex;gap:0;border-top:1px solid #1e3a5f;padding:.55rem .75rem}.chat-input[data-v-a6748793]{flex:1;background:#1e293b;border:1px solid #334155;border-right:none;color:#e2e8f0;padding:.4rem .7rem;font-size:.85rem;outline:none}.chat-input[data-v-a6748793]::placeholder{color:#475569}.chat-input[data-v-a6748793]:focus{border-color:#475569}.chat-send[data-v-a6748793]{background:#334155;border:1px solid #334155;color:#e2e8f0;padding:.4rem .9rem;font-size:.82rem;cursor:pointer;transition:background .15s}.chat-send[data-v-a6748793]:hover:not(:disabled){background:#475569}.chat-send[data-v-a6748793]:disabled{opacity:.4;cursor:default}.ai-error[data-v-a6748793]{padding:.75rem 1rem;font-size:.85rem;color:#fca5a5;background:#1e293b}.slide-enter-active[data-v-a6748793]{animation:slideDown-a6748793 .25s ease}@keyframes slideDown-a6748793{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.quiz-nav[data-v-a6748793]{margin-top:1rem;text-align:right}.btn-next[data-v-a6748793]{min-width:140px;font-size:1rem;padding:.65rem 1.5rem}.quit-row[data-v-a6748793]{margin-top:.8rem;text-align:center}.btn[data-v-a6748793]{padding:.5rem 1.2rem;border:2px solid var(--color-border);border-radius:0;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s,transform .12s}.btn[data-v-a6748793]:hover{transform:translate(-1px,-1px)}.btn-primary[data-v-a6748793]{background:var(--color-text);color:#fff}.btn-weak[data-v-a6748793]{background:transparent;border:1.5px solid #92400e;color:#92400e;font-size:.82rem;padding:.3rem .8rem;border-radius:0;cursor:pointer;font-weight:600;transition:background .15s}.btn-weak[data-v-a6748793]:hover{background:#fef3c7}.btn-ghost[data-v-a6748793]{background:transparent;border:1.5px solid #888;color:var(--color-muted);font-size:.82rem;padding:.3rem .9rem;border-radius:0}@media (max-width: 600px){.quiz-view[data-v-a6748793]{padding:0 .1rem}.question-card[data-v-a6748793]{padding:1rem .8rem}.question-text[data-v-a6748793]{font-size:.92rem;line-height:1.7;margin-bottom:1rem}.question-text[data-v-a6748793] blockquote{padding:.6rem .75rem;font-size:.88rem}.option-btn[data-v-a6748793]{padding:.6rem .75rem;font-size:.88rem;gap:.5rem}.opt-num[data-v-a6748793]{font-size:.78rem;min-width:1.4em;height:1.4em;line-height:1.4em}.exp-body[data-v-a6748793]{padding:.6rem .8rem;font-size:.85rem}.exp-actions[data-v-a6748793]{padding:.4rem .8rem .6rem;gap:.35rem}.btn-ai[data-v-a6748793],.btn-ai-stop[data-v-a6748793],.btn-weak[data-v-a6748793]{font-size:.78rem;padding:.25rem .6rem}.btn-ai-cfg[data-v-a6748793]{font-size:.78rem;padding:.2rem .45rem}.cfg-model-hint[data-v-a6748793]{max-width:6rem;font-size:.68rem}.ai-cfg-presets[data-v-a6748793]{gap:.25rem}.btn-preset[data-v-a6748793]{padding:.25rem .5rem}.preset-brand[data-v-a6748793]{font-size:.62rem}.preset-id[data-v-a6748793]{font-size:.72rem}.ai-body[data-v-a6748793]{padding:.6rem .8rem;font-size:.82rem;max-height:300px}.chat-input[data-v-a6748793]{font-size:.82rem;padding:.35rem .6rem}.chat-send[data-v-a6748793]{font-size:.78rem;padding:.35rem .7rem}.chat-text[data-v-a6748793]{font-size:.82rem}.chat-input-row[data-v-a6748793]{padding:.4rem .6rem}.btn-next[data-v-a6748793]{min-width:120px;font-size:.9rem;padding:.55rem 1rem}.quiz-nav[data-v-a6748793]{margin-top:.75rem}.quit-row[data-v-a6748793]{margin-top:.6rem}}.result-view[data-v-f69e57ea]{max-width:680px;margin:0 auto}.result-card[data-v-f69e57ea]{background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow);padding:2rem;text-align:center;margin-bottom:2rem}.result-round[data-v-f69e57ea]{font-size:.9rem;color:var(--color-muted);margin-bottom:1.2rem;text-transform:uppercase;letter-spacing:.06em}.score-circle[data-v-f69e57ea]{width:110px;height:110px;border:3px solid #111;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 1rem;box-shadow:4px 4px #111}.rank-letter[data-v-f69e57ea]{font-size:2.4rem;font-weight:800;color:#111;line-height:1}.score-text[data-v-f69e57ea]{font-size:.8rem;color:var(--color-muted)}.score-pct[data-v-f69e57ea]{font-size:1.4rem;font-weight:700;color:var(--color-text);margin-bottom:.3rem}.rank-msg[data-v-f69e57ea]{color:var(--color-muted);font-size:.95rem;margin-bottom:1.5rem}.result-actions[data-v-f69e57ea]{display:flex;gap:.75rem;justify-content:center}.btn[data-v-f69e57ea]{padding:.55rem 1.5rem;border:2px solid #111;border-radius:0;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s,transform .12s}.btn[data-v-f69e57ea]:hover{transform:translate(-1px,-1px)}.btn-primary[data-v-f69e57ea]{background:#111;color:#fff}.btn-outline[data-v-f69e57ea]{background:#fff;color:#111}.btn-outline[data-v-f69e57ea]:hover{background:#f5f4ee}.section-title[data-v-f69e57ea]{font-size:1.05rem;font-weight:700;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #111;padding-bottom:.35rem}.answer-row[data-v-f69e57ea]{background:var(--color-surface);padding:.9rem 1rem;margin-bottom:.65rem;border:2px solid #111;border-left:5px solid #111;box-shadow:2px 2px #111}.answer-row.correct[data-v-f69e57ea]{border-left-color:#166534}.answer-row.wrong[data-v-f69e57ea]{border-left-color:#991b1b}.ans-head[data-v-f69e57ea]{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.ans-num[data-v-f69e57ea]{font-size:.78rem;font-weight:700;background:#111;color:#fff;width:1.6em;height:1.6em;line-height:1.6em;text-align:center;border-radius:0}.ans-status[data-v-f69e57ea]{font-size:.85rem;font-weight:700}.answer-row.correct .ans-status[data-v-f69e57ea]{color:#166534}.answer-row.wrong .ans-status[data-v-f69e57ea]{color:#991b1b}.type-tag[data-v-f69e57ea]{font-size:.72rem;padding:.1rem .4rem;background:#fff;color:#111;border:1.5px solid #111;font-weight:600;margin-left:auto;border-radius:0}.weak-toggle[data-v-f69e57ea]{background:transparent;border:none;cursor:pointer;font-size:.82rem;color:#92400e;font-weight:700;padding:0 .2rem}.ans-question[data-v-f69e57ea]{font-size:.9rem;line-height:1.65;margin-bottom:.35rem}.ans-question[data-v-f69e57ea] b{text-decoration:underline;text-underline-offset:2px}.ans-question[data-v-f69e57ea] ruby{ruby-align:center}.ans-question[data-v-f69e57ea] rt{font-size:.6em;color:#555;letter-spacing:.02em}.ans-question[data-v-f69e57ea] blockquote{display:none}.ans-question[data-v-f69e57ea] p:not(:first-child){display:none}.ans-detail[data-v-f69e57ea]{font-size:.82rem;display:flex;gap:1rem;margin-bottom:.3rem}.ans-your[data-v-f69e57ea]{color:#991b1b}.ans-correct-val[data-v-f69e57ea]{color:#166534;font-weight:600}.ans-exp[data-v-f69e57ea]{font-size:.82rem;color:var(--color-muted);line-height:1.6}@media (max-width: 600px){.result-card[data-v-f69e57ea]{padding:1.2rem .8rem}.score-circle[data-v-f69e57ea]{width:90px;height:90px}.rank-letter[data-v-f69e57ea]{font-size:2rem}.score-pct[data-v-f69e57ea]{font-size:1.15rem}.rank-msg[data-v-f69e57ea]{font-size:.88rem}.result-actions[data-v-f69e57ea]{gap:.5rem}.result-actions .btn[data-v-f69e57ea]{padding:.45rem 1rem;font-size:.88rem}.section-title[data-v-f69e57ea]{font-size:.95rem}.answer-row[data-v-f69e57ea]{padding:.7rem .75rem}.ans-question[data-v-f69e57ea]{font-size:.85rem}.ans-detail[data-v-f69e57ea]{font-size:.78rem;gap:.6rem;flex-wrap:wrap}.ans-exp[data-v-f69e57ea]{font-size:.78rem}.ans-head[data-v-f69e57ea]{gap:.35rem;flex-wrap:wrap}}.weak-view[data-v-53be3e52]{max-width:680px;margin:0 auto}.weak-header[data-v-53be3e52]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:.5rem}.page-title[data-v-53be3e52]{font-size:1.15rem;font-weight:700;margin:0;text-transform:uppercase;letter-spacing:.05em}.weak-actions[data-v-53be3e52]{display:flex;gap:.5rem}.empty[data-v-53be3e52]{text-align:center;padding:3rem;color:var(--color-muted);border:2px dashed var(--color-border)}.empty p[data-v-53be3e52]{margin-bottom:1rem;font-size:1rem}.weak-list[data-v-53be3e52]{display:flex;flex-direction:column;gap:.9rem}.weak-card[data-v-53be3e52]{background:var(--color-surface);border:2px solid var(--color-border);border-left:5px solid #92400e;box-shadow:var(--shadow);padding:1rem}.card-meta[data-v-53be3e52]{display:flex;align-items:center;gap:.4rem;margin-bottom:.6rem;flex-wrap:wrap}.badge[data-v-53be3e52]{font-size:.68rem;font-weight:700;padding:.12rem .45rem;border-radius:0;border:1.5px solid #111}.badge-n1[data-v-53be3e52]{background:#111;color:#fff}.badge-n2[data-v-53be3e52]{background:#fff;color:#111}.round-tag[data-v-53be3e52]{font-size:.78rem;color:var(--color-muted);font-weight:600}.type-tag[data-v-53be3e52]{font-size:.7rem;padding:.1rem .4rem;background:#fff;color:#111;border:1.5px solid #111;font-weight:600;border-radius:0}.remove-btn[data-v-53be3e52]{margin-left:auto;background:transparent;border:1px solid #888;color:var(--color-muted);cursor:pointer;font-size:.85rem;padding:.1rem .4rem}.remove-btn[data-v-53be3e52]:hover{color:#991b1b;border-color:#991b1b}.q-text[data-v-53be3e52]{font-size:.9rem;line-height:1.7;margin-bottom:.6rem}.q-text[data-v-53be3e52] b{text-decoration:underline;text-underline-offset:2px}.q-text[data-v-53be3e52] ruby{ruby-align:center}.q-text[data-v-53be3e52] rt{font-size:.6em;color:#555;letter-spacing:.02em}.q-text[data-v-53be3e52] blockquote{background:#f8f7f2;border-left:3px solid #111;padding:.5rem .75rem;margin:0 0 .5rem;font-size:.88rem;line-height:1.7}.q-text[data-v-53be3e52] p{margin:.3rem 0}.q-options[data-v-53be3e52]{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem}.opt-chip[data-v-53be3e52]{font-size:.8rem;padding:.2rem .55rem;background:#f5f4ee;border:1.5px solid #111;border-radius:0}.opt-chip.correct[data-v-53be3e52]{background:#dcfce7;border-color:#166534;font-weight:700;color:#166534}.q-exp[data-v-53be3e52]{font-size:.82rem;color:var(--color-muted);line-height:1.65;padding-top:.5rem;border-top:1px dashed #aaa}.btn[data-v-53be3e52]{padding:.48rem 1.1rem;border:2px solid #111;border-radius:0;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s,transform .12s}.btn[data-v-53be3e52]:hover{transform:translate(-1px,-1px)}.btn-primary[data-v-53be3e52]{background:#111;color:#fff}.btn-warn[data-v-53be3e52]{background:#fff;color:#111}.btn-warn[data-v-53be3e52]:hover{background:#fef3c7}.btn-ghost[data-v-53be3e52]{background:transparent;border:1.5px solid #888;color:var(--color-muted)}@media (max-width: 600px){.weak-header[data-v-53be3e52]{flex-direction:column;align-items:flex-start;gap:.5rem}.page-title[data-v-53be3e52]{font-size:1rem}.weak-actions[data-v-53be3e52]{width:100%}.weak-actions .btn[data-v-53be3e52]{flex:1;text-align:center;font-size:.82rem;padding:.4rem .6rem}.weak-card[data-v-53be3e52]{padding:.8rem .7rem}.card-meta[data-v-53be3e52]{gap:.3rem}.q-text[data-v-53be3e52]{font-size:.85rem}.q-text[data-v-53be3e52] blockquote{padding:.4rem .6rem;font-size:.82rem}.q-options[data-v-53be3e52]{gap:.25rem}.opt-chip[data-v-53be3e52]{font-size:.75rem;padding:.15rem .4rem}.q-exp[data-v-53be3e52]{font-size:.78rem}}.doc-view[data-v-adf35f1b]{display:flex;height:calc(100vh - 56px);overflow:hidden}.doc-sidebar[data-v-adf35f1b]{width:280px;min-width:280px;background:var(--color-surface);border-right:2.5px solid var(--color-border);overflow-y:auto;display:flex;flex-direction:column;transition:transform .2s}.sidebar-header[data-v-adf35f1b]{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-bottom:2px solid var(--color-border)}.sidebar-title[data-v-adf35f1b]{font-weight:700;font-size:1rem}.sidebar-close[data-v-adf35f1b]{display:none;background:transparent;font-size:1.2rem;color:var(--color-text);padding:.2rem .5rem}.sidebar-section[data-v-adf35f1b]{border-bottom:1.5px solid #e8e7e0}.section-toggle[data-v-adf35f1b]{display:flex;align-items:center;gap:.6rem;width:100%;padding:.7rem 1rem;background:transparent;font-size:.95rem;font-weight:600;color:var(--color-text);text-align:left}.toggle-arrow[data-v-adf35f1b]{margin-left:auto;font-size:.8rem;color:var(--color-muted)}.section-body[data-v-adf35f1b]{padding:0 0 .3rem}.sub-section[data-v-adf35f1b]{margin:0}.sub-toggle[data-v-adf35f1b]{display:flex;align-items:center;gap:.4rem;width:100%;padding:.45rem 1rem .45rem 1.8rem;background:transparent;font-size:.88rem;font-weight:500;color:var(--color-text);text-align:left}.sub-toggle[data-v-adf35f1b]:hover{background:#f5f4ee}.toggle-arrow-sm[data-v-adf35f1b]{margin-left:auto;font-size:.75rem;color:var(--color-muted)}.file-count[data-v-adf35f1b]{color:var(--color-muted);font-weight:400}.file-list[data-v-adf35f1b]{list-style:none;margin:0;padding:0}.file-item[data-v-adf35f1b]{padding:.4rem 1rem .4rem 2.8rem;font-size:.82rem;color:var(--color-muted);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid transparent;transition:background .1s}.file-item[data-v-adf35f1b]:hover{background:#f0efe8;color:var(--color-text)}.file-item.active[data-v-adf35f1b]{background:#111;color:#fff;border-left-color:#111}.doc-main[data-v-adf35f1b]{flex:1;overflow-y:auto;display:flex;flex-direction:column}.doc-toolbar[data-v-adf35f1b]{display:flex;align-items:center;gap:.6rem;padding:.6rem 1rem;background:var(--color-surface);border-bottom:2px solid var(--color-border);position:sticky;top:0;z-index:10}.toolbar-btn[data-v-adf35f1b]{background:transparent;border:2px solid var(--color-border);color:var(--color-text);padding:.3rem .7rem;font-size:.85rem;cursor:pointer}.toolbar-btn[data-v-adf35f1b]:hover{background:#f0efe8}.toolbar-actions[data-v-adf35f1b]{margin-left:auto}.breadcrumb[data-v-adf35f1b]{font-size:.85rem;color:var(--color-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-welcome[data-v-adf35f1b]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.welcome-icon[data-v-adf35f1b]{font-size:3rem;margin-bottom:1rem}.doc-welcome h2[data-v-adf35f1b]{font-size:1.3rem;margin-bottom:.5rem}.doc-welcome p[data-v-adf35f1b]{color:var(--color-muted);margin-bottom:1.5rem}.welcome-grid[data-v-adf35f1b]{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;max-width:480px;width:100%}.welcome-card[data-v-adf35f1b]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:background .15s}.welcome-card[data-v-adf35f1b]:hover{background:#f0efe8}.wc-label[data-v-adf35f1b]{font-size:.85rem;color:var(--color-muted)}.doc-content[data-v-adf35f1b]{flex:1;padding:1.5rem 2rem 3rem;max-width:800px;width:100%;margin:0 auto;line-height:1.85}.doc-loading[data-v-adf35f1b]{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--color-muted)}.doc-content[data-v-adf35f1b] h1{font-size:1.5rem;font-weight:800;margin:0 0 .8rem;padding-bottom:.5rem;border-bottom:3px solid #111}.doc-content[data-v-adf35f1b] h2{font-size:1.2rem;font-weight:700;margin:2rem 0 .6rem;padding-bottom:.3rem;border-bottom:1.5px solid #ccc}.doc-content[data-v-adf35f1b] h3{font-size:1.05rem;font-weight:700;margin:1.5rem 0 .4rem}.doc-content[data-v-adf35f1b] h4{font-size:.95rem;font-weight:600;margin:1rem 0 .3rem}.doc-content[data-v-adf35f1b] p{margin:.6rem 0;line-height:2}.doc-content[data-v-adf35f1b] blockquote{margin:.8rem 0;padding:.6rem 1rem;border-left:4px solid #111;background:#f9f9f5;color:var(--color-muted);font-size:.92rem}.doc-content[data-v-adf35f1b] ul,.doc-content[data-v-adf35f1b] ol{margin:.5rem 0;padding-left:1.5rem}.doc-content[data-v-adf35f1b] li{margin:.25rem 0;line-height:2}.doc-content[data-v-adf35f1b] code{background:#f0efe8;padding:.15rem .4rem;font-size:.88rem;border:1px solid #ddd}.doc-content[data-v-adf35f1b] pre{background:#1a1a1a;color:#f5f5f5;padding:1rem;overflow-x:auto;margin:.8rem 0;border:2px solid #111}.doc-content[data-v-adf35f1b] pre code{background:transparent;border:none;padding:0;color:inherit}.doc-content[data-v-adf35f1b] table{width:100%;border-collapse:collapse;margin:.8rem 0;font-size:.88rem}.doc-content[data-v-adf35f1b] th,.doc-content[data-v-adf35f1b] td{border:1.5px solid #111;padding:.45rem .7rem;text-align:left}.doc-content[data-v-adf35f1b] th{background:#111;color:#fff;font-weight:600}.doc-content[data-v-adf35f1b] tr:nth-child(2n){background:#f9f9f5}.doc-content[data-v-adf35f1b] hr{border:none;border-top:2px solid #111;margin:1.5rem 0}.doc-content[data-v-adf35f1b] strong{font-weight:700}.doc-content[data-v-adf35f1b] ruby{ruby-align:center}.doc-content[data-v-adf35f1b] rt{font-size:.55em;color:#888;font-weight:400}.doc-content[data-v-adf35f1b] rp{display:none}.doc-content[data-v-adf35f1b] .col-action{width:60px;text-align:center;white-space:nowrap}.doc-content[data-v-adf35f1b] .memorize-btn{background:transparent;border:1.5px solid #bbb;color:var(--color-muted);padding:.2rem .5rem;font-size:.75rem;cursor:pointer;border-radius:3px;transition:all .15s}.doc-content[data-v-adf35f1b] .memorize-btn:hover{background:#111;color:#fff;border-color:#111}.doc-content[data-v-adf35f1b] .vocab-row{transition:opacity .3s,transform .3s}.doc-content[data-v-adf35f1b] .memorized-hiding{opacity:0;transform:translate(20px)}.doc-content[data-v-adf35f1b] .memorized-hidden{display:none}.test-btn[data-v-adf35f1b]{background:#e8f5e9!important;border-color:#a5d6a7!important;font-size:.8rem!important}.test-btn[data-v-adf35f1b]:hover{background:#2e7d32!important;color:#fff!important;border-color:#2e7d32!important}.restore-btn[data-v-adf35f1b]{background:#f5f0e0!important;border-color:#d4c9a8!important;font-size:.8rem!important}.restore-btn[data-v-adf35f1b]:hover{background:#111!important;color:#fff!important}.doc-content.hide-answers[data-v-adf35f1b] .answer-block{filter:blur(6px);-webkit-user-select:none;user-select:none;cursor:pointer;transition:filter .2s}.doc-content.hide-answers[data-v-adf35f1b] .answer-block:hover{filter:blur(0)}.doc-content.hide-answers.content-vocab[data-v-adf35f1b] table td:nth-child(4){filter:blur(6px);-webkit-user-select:none;user-select:none;cursor:pointer;transition:filter .2s}.doc-content.hide-answers.content-vocab[data-v-adf35f1b] table td:nth-child(4):hover{filter:blur(0)}.doc-content.hide-answers.content-grammar[data-v-adf35f1b] p:has(>strong:first-child){filter:blur(6px);-webkit-user-select:none;user-select:none;cursor:pointer;transition:filter .2s}.doc-content.hide-answers.content-grammar[data-v-adf35f1b] p:has(>strong:first-child):hover{filter:blur(0)}.doc-nav[data-v-adf35f1b]{display:flex;justify-content:space-between;padding:1rem 2rem 2rem;max-width:800px;width:100%;margin:0 auto}.nav-arrow[data-v-adf35f1b]{background:var(--color-surface);border:2px solid var(--color-border);color:var(--color-text);padding:.5rem 1.2rem;font-size:.9rem;cursor:pointer;transition:background .15s}.nav-arrow[data-v-adf35f1b]:hover:not(:disabled){background:#111;color:#fff}.nav-arrow[data-v-adf35f1b]:disabled{opacity:.3;cursor:not-allowed}.sidebar-overlay[data-v-adf35f1b]{display:none}@media (max-width: 768px){.doc-sidebar[data-v-adf35f1b]{position:fixed;top:56px;left:0;height:calc(100vh - 56px);z-index:200;transform:translate(-100%)}.doc-sidebar.open[data-v-adf35f1b]{transform:translate(0)}.sidebar-close[data-v-adf35f1b]{display:block}.sidebar-overlay[data-v-adf35f1b]{display:block;position:fixed;right:0;bottom:0;left:0;top:56px;background:#0000004d;z-index:199}.doc-content[data-v-adf35f1b],.doc-nav[data-v-adf35f1b]{padding:1rem .8rem 2rem}.welcome-grid[data-v-adf35f1b]{grid-template-columns:repeat(2,1fr);max-width:320px}.doc-content[data-v-adf35f1b] table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;font-size:.82rem}.doc-content[data-v-adf35f1b] th,.doc-content[data-v-adf35f1b] td{padding:.35rem .5rem}.doc-content[data-v-adf35f1b] h1{font-size:1.2rem}.doc-content[data-v-adf35f1b] h2{font-size:1.05rem}.doc-content[data-v-adf35f1b] blockquote{padding:.5rem .75rem;font-size:.85rem}.toolbar-btn[data-v-adf35f1b]{padding:.25rem .5rem;font-size:.78rem}.breadcrumb[data-v-adf35f1b]{font-size:.78rem}}@media (max-width: 480px){.doc-view[data-v-adf35f1b]{height:calc(100vh - 48px)}.doc-sidebar[data-v-adf35f1b]{top:48px;height:calc(100vh - 48px);width:260px;min-width:260px}.sidebar-overlay[data-v-adf35f1b]{top:48px}.doc-content[data-v-adf35f1b]{padding:.8rem .6rem 1.5rem;line-height:1.7}.doc-nav[data-v-adf35f1b]{padding:.8rem .6rem 1.5rem}.nav-arrow[data-v-adf35f1b]{padding:.4rem .8rem;font-size:.82rem}.welcome-grid[data-v-adf35f1b]{grid-template-columns:1fr 1fr;gap:.5rem;max-width:100%}.welcome-card[data-v-adf35f1b]{padding:.7rem .5rem}.wc-label[data-v-adf35f1b]{font-size:.78rem}.doc-welcome h2[data-v-adf35f1b]{font-size:1.1rem}.doc-welcome p[data-v-adf35f1b]{font-size:.88rem}.doc-content[data-v-adf35f1b] h1{font-size:1.1rem}.doc-content[data-v-adf35f1b] h2{font-size:1rem;margin:1.5rem 0 .5rem}.doc-content[data-v-adf35f1b] table{font-size:.78rem}.doc-content[data-v-adf35f1b] th,.doc-content[data-v-adf35f1b] td{padding:.3rem .4rem}}.test-overlay[data-v-adf35f1b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.test-modal[data-v-adf35f1b]{background:#fff;border:3px solid #111;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.test-header[data-v-adf35f1b]{display:flex;align-items:center;gap:.6rem;padding:.8rem 1rem;border-bottom:2px solid #111;background:#fafaf5}.test-title[data-v-adf35f1b]{font-weight:700;font-size:1rem}.test-progress[data-v-adf35f1b]{margin-left:auto;font-size:.85rem;color:var(--color-muted)}.test-close[data-v-adf35f1b]{background:transparent;border:none;font-size:1.2rem;cursor:pointer;padding:.2rem .4rem;color:var(--color-muted)}.test-close[data-v-adf35f1b]:hover{color:#111}.test-progress-bar[data-v-adf35f1b]{height:4px;background:#e8e7e0}.test-progress-fill[data-v-adf35f1b]{height:100%;background:#111;transition:width .3s}.test-mode-tabs[data-v-adf35f1b]{display:flex;gap:0;border-bottom:2px solid #e8e7e0}.mode-tab[data-v-adf35f1b]{flex:1;padding:.5rem;background:transparent;border:none;border-bottom:3px solid transparent;font-size:.82rem;cursor:pointer;color:var(--color-muted);transition:all .15s}.mode-tab.active[data-v-adf35f1b]{color:#111;font-weight:700;border-bottom-color:#111}.mode-tab[data-v-adf35f1b]:hover{background:#f5f4ee}.test-question[data-v-adf35f1b]{padding:2rem 1.5rem;text-align:center}.test-prompt-label[data-v-adf35f1b]{font-size:.82rem;color:var(--color-muted);margin-bottom:.5rem}.test-prompt[data-v-adf35f1b]{font-size:2rem;font-weight:800;letter-spacing:.05em}.test-options[data-v-adf35f1b]{padding:0 1rem 1.5rem;display:flex;flex-direction:column;gap:.5rem}.test-opt-btn[data-v-adf35f1b]{padding:.7rem 1rem;text-align:left;font-size:.95rem;border:2px solid var(--color-border);background:#fff;cursor:pointer;transition:all .15s}.test-opt-btn[data-v-adf35f1b]:hover{background:#111;color:#fff;border-color:#111}.test-answer-result[data-v-adf35f1b]{padding:1rem 1.5rem 1.5rem;text-align:center}.test-verdict[data-v-adf35f1b]{font-size:1.3rem;font-weight:800;margin-bottom:1rem}.verdict-correct[data-v-adf35f1b]{color:#2e7d32}.verdict-wrong[data-v-adf35f1b]{color:#c62828}.test-full-info[data-v-adf35f1b]{font-size:1rem;margin-bottom:1rem;line-height:1.6}.test-meaning[data-v-adf35f1b]{color:var(--color-muted);font-size:.92rem}.btn-test-next[data-v-adf35f1b]{padding:.6rem 2rem;font-size:.95rem;font-weight:600;background:#111;color:#fff;border:2px solid #111;cursor:pointer}.btn-test-next[data-v-adf35f1b]:hover{background:#333}.test-result[data-v-adf35f1b]{padding:2rem 1.5rem;text-align:center}.result-icon[data-v-adf35f1b]{font-size:2.5rem;margin-bottom:.5rem}.test-result h3[data-v-adf35f1b]{font-size:1.3rem;margin-bottom:1rem}.result-stats[data-v-adf35f1b]{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1.5rem}.stat-item[data-v-adf35f1b]{text-align:center}.stat-num[data-v-adf35f1b]{display:block;font-size:1.8rem;font-weight:800}.stat-label[data-v-adf35f1b]{font-size:.78rem;color:var(--color-muted)}.stat-correct .stat-num[data-v-adf35f1b]{color:#2e7d32}.stat-wrong .stat-num[data-v-adf35f1b]{color:#c62828}.result-actions[data-v-adf35f1b]{display:flex;gap:.6rem;justify-content:center;margin-bottom:1rem}.btn-test-action[data-v-adf35f1b]{padding:.5rem 1.2rem;font-size:.9rem;background:#111;color:#fff;border:2px solid #111;cursor:pointer}.btn-test-action[data-v-adf35f1b]:hover{background:#333}.btn-secondary[data-v-adf35f1b]{background:#fff;color:#111}.btn-secondary[data-v-adf35f1b]:hover{background:#f0efe8}.wrong-list[data-v-adf35f1b]{text-align:left;margin-top:1rem;border-top:2px solid #e8e7e0;padding-top:.8rem}.wrong-list h4[data-v-adf35f1b]{font-size:.88rem;margin-bottom:.5rem;color:#c62828}.wrong-item[data-v-adf35f1b]{display:flex;gap:.8rem;padding:.35rem 0;font-size:.88rem;border-bottom:1px solid #f0efe8}.wrong-word[data-v-adf35f1b]{font-weight:700;min-width:60px}.wrong-reading[data-v-adf35f1b]{color:var(--color-muted);min-width:80px}.wrong-meaning[data-v-adf35f1b]{color:var(--color-muted)}.grammar-heading[data-v-adf35f1b]{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.grammar-mem-btn[data-v-adf35f1b]{font-size:.7rem!important;padding:.2rem .6rem!important;margin-left:auto;white-space:nowrap}.grammar-mem-btn.memorized[data-v-adf35f1b]{background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important}.test-connection[data-v-adf35f1b]{font-size:.85rem;color:var(--color-muted);margin-top:.25rem}.test-example[data-v-adf35f1b]{margin-top:.5rem;padding:.5rem .75rem;background:#00000008;border-radius:6px;font-size:.85rem}.example-label[data-v-adf35f1b]{font-size:.75rem;color:var(--color-muted);margin-bottom:.2rem}.example-text[data-v-adf35f1b]{line-height:1.5}@media (max-width: 480px){.test-modal[data-v-adf35f1b]{max-width:100%}.test-prompt[data-v-adf35f1b]{font-size:1.5rem}.test-opt-btn[data-v-adf35f1b]{font-size:.88rem;padding:.6rem .8rem}}.translate-root[data-v-8a5fbcd7]{max-width:720px;margin:0 auto;padding:1rem}.section-title[data-v-8a5fbcd7]{font-size:1.35rem;font-weight:700;margin-bottom:.3rem}.desc[data-v-8a5fbcd7]{color:var(--color-muted);font-size:.88rem;margin-bottom:1.2rem;line-height:1.6}.cat-grid[data-v-8a5fbcd7]{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;margin-bottom:1rem}.cat-card[data-v-8a5fbcd7]{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.8rem .5rem;background:var(--color-surface);border:2px solid var(--color-border);cursor:pointer;transition:all .15s;font-family:inherit}.cat-card[data-v-8a5fbcd7]:hover{background:#f0efe8}.cat-card.selected[data-v-8a5fbcd7]{background:var(--color-text);color:#fff}.cat-icon[data-v-8a5fbcd7]{font-size:1.5rem}.cat-label[data-v-8a5fbcd7]{font-size:.9rem;font-weight:600}.cat-count[data-v-8a5fbcd7]{font-size:.75rem;opacity:.7}.count-row[data-v-8a5fbcd7]{display:flex;align-items:center;gap:.6rem;margin-bottom:.8rem;font-size:.9rem}.count-row label[data-v-8a5fbcd7]{font-weight:600}.count-row select[data-v-8a5fbcd7]{padding:.3rem .6rem;border:2px solid var(--color-border);background:var(--color-surface);font-family:inherit;font-size:.9rem}.pool-info[data-v-8a5fbcd7]{color:var(--color-muted);font-size:.82rem}.stats-row[data-v-8a5fbcd7]{display:flex;gap:1rem;font-size:.85rem;color:var(--color-muted);margin-bottom:.8rem;padding:.5rem .7rem;background:#f0efe8;border:1px solid var(--color-border)}.start-btn[data-v-8a5fbcd7]{width:100%;padding:.75rem;background:var(--color-text);color:#fff;font-size:1rem;font-weight:700;border:2px solid var(--color-border);cursor:pointer;transition:opacity .15s}.start-btn[data-v-8a5fbcd7]:hover{opacity:.85}.start-btn[data-v-8a5fbcd7]:disabled{opacity:.35;cursor:not-allowed}.quiz-panel[data-v-8a5fbcd7]{display:flex;flex-direction:column;gap:.8rem}.progress-bar-wrap[data-v-8a5fbcd7]{height:6px;background:#e8e7e0;border:1px solid var(--color-border);overflow:hidden}.progress-bar[data-v-8a5fbcd7]{height:100%;background:var(--color-text);transition:width .3s}.progress-text[data-v-8a5fbcd7]{text-align:center;font-size:.8rem;color:var(--color-muted);font-weight:600}.sentence-card[data-v-8a5fbcd7]{background:var(--color-surface);border:2px solid var(--color-border);padding:1.2rem;box-shadow:var(--shadow)}.cat-badge[data-v-8a5fbcd7]{display:inline-block;font-size:.75rem;font-weight:600;padding:.15rem .5rem;border:1.5px solid var(--color-border);margin-bottom:.6rem}.zh-text[data-v-8a5fbcd7]{font-size:1.3rem;font-weight:600;line-height:1.6;margin-bottom:.5rem}.hint-text[data-v-8a5fbcd7]{font-size:.82rem;color:var(--color-muted);background:#f9f8f2;padding:.4rem .6rem;border-left:3px solid var(--color-border)}.hint-btn[data-v-8a5fbcd7]{font-size:.82rem;color:var(--color-muted);background:none;border:1px dashed var(--color-border);padding:.3rem .6rem;cursor:pointer;font-family:inherit}.hint-btn[data-v-8a5fbcd7]:hover{background:#f0efe8}.input-area[data-v-8a5fbcd7]{display:flex;flex-direction:column;gap:.5rem}.input-area textarea[data-v-8a5fbcd7]{width:100%;padding:.75rem;font-size:1rem;font-family:inherit;border:2px solid var(--color-border);background:var(--color-surface);resize:vertical;line-height:1.6}.input-area textarea[data-v-8a5fbcd7]:focus{outline:none;box-shadow:0 0 0 2px #11111126}.input-actions[data-v-8a5fbcd7]{display:flex;gap:.5rem;justify-content:flex-end}.skip-btn[data-v-8a5fbcd7]{padding:.5rem 1rem;background:var(--color-surface);border:2px solid var(--color-border);font-size:.88rem;font-family:inherit;color:var(--color-muted)}.skip-btn[data-v-8a5fbcd7]:hover{background:#f0efe8}.skip-btn[data-v-8a5fbcd7]:disabled{opacity:.4}.submit-btn[data-v-8a5fbcd7]{padding:.5rem 1.2rem;background:var(--color-text);color:#fff;border:2px solid var(--color-border);font-size:.88rem;font-weight:600;font-family:inherit}.submit-btn[data-v-8a5fbcd7]:hover{opacity:.85}.submit-btn[data-v-8a5fbcd7]:disabled{opacity:.4;cursor:not-allowed}.user-answer-display[data-v-8a5fbcd7]{background:#f9f8f2;border:2px solid var(--color-border);padding:.75rem 1rem}.user-answer-label[data-v-8a5fbcd7]{font-size:.78rem;font-weight:600;color:var(--color-muted);margin-bottom:.3rem}.user-answer-text[data-v-8a5fbcd7]{font-size:1.05rem;line-height:1.7;white-space:pre-wrap;word-break:break-word}.eval-area[data-v-8a5fbcd7]{background:var(--color-surface);border:2px solid var(--color-border);padding:1rem}.eval-header[data-v-8a5fbcd7]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem;padding-bottom:.4rem;border-bottom:1px solid #e8e7e0}.eval-title[data-v-8a5fbcd7]{font-weight:700;font-size:.95rem}.eval-score[data-v-8a5fbcd7]{font-size:1.1rem;font-weight:800;padding:.15rem .6rem;border:2px solid}.score-high[data-v-8a5fbcd7]{color:var(--color-success);border-color:var(--color-success)}.score-mid[data-v-8a5fbcd7]{color:var(--color-warning);border-color:var(--color-warning)}.score-low[data-v-8a5fbcd7]{color:var(--color-danger);border-color:var(--color-danger)}.score-skip[data-v-8a5fbcd7]{color:var(--color-muted);border-color:var(--color-muted)}.eval-body[data-v-8a5fbcd7]{max-height:300px;overflow-y:auto;margin-bottom:.6rem}.eval-text[data-v-8a5fbcd7]{font-size:.88rem;line-height:2.2;white-space:pre-wrap;word-break:break-word}.eval-text[data-v-8a5fbcd7] ruby{ruby-align:center}.eval-text[data-v-8a5fbcd7] rt{font-size:.6em;color:var(--color-muted)}.eval-text[data-v-8a5fbcd7] rp{display:none}.next-btn[data-v-8a5fbcd7]{width:100%;padding:.6rem;background:var(--color-text);color:#fff;font-size:.95rem;font-weight:700;border:2px solid var(--color-border);font-family:inherit}.next-btn[data-v-8a5fbcd7]:hover{opacity:.85}.result-panel[data-v-8a5fbcd7]{display:flex;flex-direction:column;gap:1rem}.result-title[data-v-8a5fbcd7]{font-size:1.3rem;font-weight:700;text-align:center}.result-summary[data-v-8a5fbcd7]{display:flex;justify-content:center;gap:1.2rem;padding:1rem;background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow)}.result-stat[data-v-8a5fbcd7]{display:flex;flex-direction:column;align-items:center;gap:.15rem}.stat-value[data-v-8a5fbcd7]{font-size:1.6rem;font-weight:800}.stat-label[data-v-8a5fbcd7]{font-size:.75rem;color:var(--color-muted)}.review-list[data-v-8a5fbcd7]{display:flex;flex-direction:column;gap:.4rem}.review-item[data-v-8a5fbcd7]{background:var(--color-surface);border:1.5px solid var(--color-border)}.review-item summary[data-v-8a5fbcd7]{display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;cursor:pointer;font-size:.88rem;-webkit-user-select:none;user-select:none}.review-item summary[data-v-8a5fbcd7]:hover{background:#f0efe8}.review-idx[data-v-8a5fbcd7]{font-weight:700;font-size:.82rem;min-width:2rem}.review-score[data-v-8a5fbcd7]{font-size:.78rem;font-weight:700;padding:.1rem .4rem;border:1.5px solid;min-width:3.5rem;text-align:center}.review-zh[data-v-8a5fbcd7]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-detail[data-v-8a5fbcd7]{padding:.6rem .8rem;border-top:1px solid #e8e7e0;font-size:.85rem;line-height:1.7}.review-eval[data-v-8a5fbcd7]{margin-top:.4rem;line-height:2.2}.review-eval[data-v-8a5fbcd7] ruby{ruby-align:center}.review-eval[data-v-8a5fbcd7] rt{font-size:.6em;color:var(--color-muted)}.review-eval[data-v-8a5fbcd7] rp{display:none}.result-actions[data-v-8a5fbcd7]{display:flex;justify-content:center;padding-top:.5rem}.result-actions .start-btn[data-v-8a5fbcd7]{max-width:300px}@media (max-width: 600px){.translate-root[data-v-8a5fbcd7]{padding:.6rem}.section-title[data-v-8a5fbcd7]{font-size:1.1rem}.cat-grid[data-v-8a5fbcd7]{grid-template-columns:repeat(2,1fr);gap:.4rem}.cat-card[data-v-8a5fbcd7]{padding:.6rem .4rem}.cat-icon[data-v-8a5fbcd7]{font-size:1.2rem}.zh-text[data-v-8a5fbcd7]{font-size:1.1rem}.result-summary[data-v-8a5fbcd7]{gap:.8rem;padding:.7rem}.stat-value[data-v-8a5fbcd7]{font-size:1.3rem}.review-item summary[data-v-8a5fbcd7]{padding:.5rem .6rem;font-size:.82rem}}.app-header[data-v-525ed443]{background:var(--color-surface);color:var(--color-text);padding:0 1rem;border-bottom:2.5px solid var(--color-border);position:sticky;top:0;z-index:100}.header-inner[data-v-525ed443]{max-width:960px;margin:0 auto;height:56px;display:flex;align-items:center;justify-content:space-between}.logo[data-v-525ed443]{font-size:1.1rem;font-weight:700;letter-spacing:.5px}.header-nav[data-v-525ed443]{display:flex;gap:.5rem}.nav-btn[data-v-525ed443]{background:transparent;border:2px solid var(--color-border);color:var(--color-text);padding:.35rem .9rem;border-radius:0;font-size:.9rem;cursor:pointer;transition:background .15s}.nav-btn[data-v-525ed443]:hover{background:#f0efe8}.nav-btn.active[data-v-525ed443]{background:var(--color-text);color:#fff}.nav-btn[data-v-525ed443]:disabled{opacity:.35;cursor:not-allowed}.main-content[data-v-525ed443]{max-width:960px;margin:0 auto;padding:1.5rem 1rem 3rem}.main-content.no-padding[data-v-525ed443]{max-width:100%;padding:0}@media (max-width: 600px){.app-header[data-v-525ed443]{padding:0 .5rem}.header-inner[data-v-525ed443]{height:48px}.logo[data-v-525ed443]{font-size:.92rem}.header-nav[data-v-525ed443]{gap:.3rem}.nav-btn[data-v-525ed443]{padding:.25rem .55rem;font-size:.78rem;border-width:1.5px}.main-content[data-v-525ed443]{padding:1rem .6rem 2rem}}:root{--color-primary: #111111;--color-primary-dark: #000000;--color-success: #166534;--color-danger: #991b1b;--color-warning: #92400e;--color-bg: #f5f4ee;--color-surface: #ffffff;--color-text: #111111;--color-muted: #555555;--color-border: #111111;--radius-md: 0px;--radius-lg: 0px;--shadow: 3px 3px 0 #111111;--font-ja: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", Meiryo, sans-serif;--primary: var(--color-primary);--bg: var(--color-bg);--card: var(--color-surface);--text: var(--color-text);--border: var(--color-border);--radius: var(--radius-lg)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-ja);background:var(--bg);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;outline:none;font-family:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#e8e7e0}::-webkit-scrollbar-thumb{background:#888;border-radius:0}.badge-n1{display:inline-block;background:#111;color:#fff;font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:0;letter-spacing:.05em;border:1.5px solid #111}.badge-n2{display:inline-block;background:#fff;color:#111;font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:0;letter-spacing:.05em;border:1.5px solid #111}.fade-enter-active,.fade-leave-active{transition:opacity .2s,transform .2s}.fade-enter-from,.fade-leave-to{opacity:0;transform:translateY(8px)}@media (max-width: 600px){html{font-size:15px}:root{--shadow: 2px 2px 0 #111111}body{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}}
