.mq[data-v-9ca8e51b]{align-items:center;display:flex;flex-direction:column;gap:.75rem}.mq-question[data-v-9ca8e51b]{color:#2c3e50;font-family:Quicksand,sans-serif;font-size:.88rem;margin:0;text-align:center}.mq-choices[data-v-9ca8e51b]{display:flex;flex-direction:column;gap:.4rem;max-width:400px;width:100%}.mq-choices--grid[data-v-9ca8e51b]{flex-direction:row;flex-wrap:wrap;gap:.5rem;justify-content:center}.mq-choice[data-v-9ca8e51b]{align-items:center;background:#fff;border:1px solid #e8e4df;border-radius:10px;cursor:pointer;display:flex;gap:.6rem;padding:.6rem 1rem;text-align:left;transition:all .2s}.mq-choice[data-v-9ca8e51b]:hover:not(.mq-choice--dim){background:#c0392b05;border-color:#c0392b}.mq-choice--correct[data-v-9ca8e51b]{background:#27ae6014;border-color:#27ae60}.mq-choice--wrong[data-v-9ca8e51b]{background:#c0392b0f;border-color:#c0392b}.mq-choice--dim[data-v-9ca8e51b]{cursor:default;opacity:.4}.mq-choice--hanzi[data-v-9ca8e51b]{align-items:center;flex-direction:column;gap:0;height:80px;justify-content:center;width:80px}.mq-hanzi-text[data-v-9ca8e51b]{color:#2c3e50;font-size:2rem;font-weight:700}.mq-choice--hanzi.mq-choice--correct .mq-hanzi-text[data-v-9ca8e51b]{color:#27ae60}.mq-choice--hanzi.mq-choice--wrong .mq-hanzi-text[data-v-9ca8e51b]{color:#c0392b}.mq-letter[data-v-9ca8e51b]{align-items:center;background:#f5f2ef;border-radius:50%;color:#7f8c8d;display:flex;flex-shrink:0;font-family:Quicksand,sans-serif;font-size:.68rem;font-weight:700;height:24px;justify-content:center;width:24px}.mq-choice--correct .mq-letter[data-v-9ca8e51b]{background:#27ae60;color:#fff}.mq-choice--wrong .mq-letter[data-v-9ca8e51b]{background:#c0392b;color:#fff}.mq-feedback[data-v-9ca8e51b]{border-radius:8px;font-family:Quicksand,sans-serif;font-size:.82rem;font-weight:600;line-height:1.5;margin:0;max-width:420px;padding:.4rem 1rem;text-align:center}.mq-feedback--correct[data-v-9ca8e51b]{background:#27ae6014;color:#1e8449}.mq-feedback--wrong[data-v-9ca8e51b]{background:#c0392b14;color:#922b21}.mp[data-v-ad3b0a98]{align-items:center;display:flex;flex-direction:column;gap:.75rem}.mp-prompt[data-v-ad3b0a98]{color:#2c3e50;font-size:.85rem;text-align:center}.mp-feedback[data-v-ad3b0a98],.mp-prompt[data-v-ad3b0a98]{font-family:Quicksand,sans-serif;margin:0}.mp-feedback[data-v-ad3b0a98]{background:#27ae6014;border-radius:8px;color:#1e8449;font-size:.82rem;font-weight:600;padding:.4rem 1rem}.mp-columns[data-v-ad3b0a98]{align-items:stretch;display:flex;gap:1rem;max-width:500px;width:100%}.mp-col[data-v-ad3b0a98]{display:flex;flex:1;flex-direction:column;gap:.4rem}.mp-item[data-v-ad3b0a98]{align-items:center;background:#fff;border:2px solid #e8e4df;border-radius:10px;color:#2c3e50;cursor:pointer;display:flex;font-family:Quicksand,sans-serif;font-size:.82rem;justify-content:center;min-height:48px;padding:.55rem .75rem;text-align:center;transition:all .2s}.mp-item--selected[data-v-ad3b0a98],.mp-item[data-v-ad3b0a98]:hover:not(.mp-item--matched){border-color:#c0392b}.mp-item--selected[data-v-ad3b0a98]{background:#c0392b0a}.mp-item--matched[data-v-ad3b0a98]{background:#27ae600f;border-color:#27ae60;color:#1e8449;cursor:default}.mp-item--wrong[data-v-ad3b0a98]{animation:shake-ad3b0a98 .3s;background:#c0392b0f;border-color:#c0392b}@keyframes shake-ad3b0a98{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.sc-prompt[data-v-c118d081]{color:#2c3e50;font-family:Quicksand,sans-serif;font-size:.85rem;margin:0;text-align:center}.sc[data-v-c118d081]{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:.5rem 0}.sc-character[data-v-c118d081]{align-items:baseline;display:flex;gap:.5rem;margin-bottom:.25rem}.sc-hanzi[data-v-c118d081]{color:#c0392b;font-size:3rem;font-weight:700;line-height:1}.sc-pinyin[data-v-c118d081]{color:#2c3e50;font-size:1.2rem;font-weight:600}.sc-pinyin[data-v-c118d081],.sc-tone-dot[data-v-c118d081]{font-family:Quicksand,sans-serif}.sc-tone-dot[data-v-c118d081]{border-radius:4px;color:#fff;font-size:.6rem;font-weight:700;padding:2px 6px}.sc-listen[data-v-c118d081]{align-items:center;background:#fff;border:1px solid #e8e4df;border-radius:20px;color:#7f8c8d;cursor:pointer;display:inline-flex;font-family:Quicksand,sans-serif;font-size:.75rem;font-weight:600;gap:.4rem;padding:.4rem 1rem;transition:all .2s}.sc-listen[data-v-c118d081]:hover{border-color:#c0392b;color:#c0392b}.sc-mic-area[data-v-c118d081]{flex-direction:column;gap:.5rem}.sc-mic-area[data-v-c118d081],.sc-mic-btn[data-v-c118d081]{align-items:center;display:flex}.sc-mic-btn[data-v-c118d081]{background:#c0392b;border:none;border-radius:50%;box-shadow:0 4px 16px #c0392b40;cursor:pointer;height:64px;justify-content:center;transition:transform .2s,background .2s;width:64px}.sc-mic-btn[data-v-c118d081]:hover{transform:scale(1.05)}.sc-mic-btn--starting[data-v-c118d081]{background:#d98880;box-shadow:none}.sc-mic-btn--active[data-v-c118d081]{box-shadow:0 0 0 calc(4px + var(--sc-level, 0)*18px) #c0392b33;transition:box-shadow 90ms linear}.sc-mic-label[data-v-c118d081]{color:#95a5a6;font-family:Quicksand,sans-serif;font-size:.72rem;font-weight:600;text-align:center}.sc-mic-label--active[data-v-c118d081]{color:#c0392b}.sc-processing[data-v-c118d081]{align-items:center;display:flex;flex-direction:column;gap:.5rem}.sc-spinner[data-v-c118d081]{animation:spin-c118d081 .8s linear infinite;border:3px solid #e8e4df;border-radius:50%;border-top-color:#c0392b;height:32px;width:32px}@keyframes spin-c118d081{to{transform:rotate(1turn)}}.sc-result[data-v-c118d081]{align-items:center;flex-direction:column}.sc-result[data-v-c118d081],.sc-verdict[data-v-c118d081]{display:flex;gap:.6rem;width:100%}.sc-verdict[data-v-c118d081]{align-items:flex-start;border-radius:10px;font-family:Quicksand,sans-serif;max-width:460px;padding:.7rem .9rem}.sc-verdict--good[data-v-c118d081]{background:#27ae6014;color:#1e8449}.sc-verdict--close[data-v-c118d081]{background:#e67e2217;color:#a0620a}.sc-verdict--none[data-v-c118d081]{background:#f5f2ef;color:#4a5b60}.sc-verdict-icon[data-v-c118d081]{flex-shrink:0;margin-top:1px}.sc-verdict-head[data-v-c118d081]{font-size:.9rem;font-weight:700;line-height:1.35;margin:0}.sc-verdict-sub[data-v-c118d081]{color:#4a5b60;font-size:.78rem;line-height:1.5;margin:.2rem 0 0}.sc-chars[data-v-c118d081]{display:flex;gap:.35rem}.sc-char[data-v-c118d081]{border-bottom:3px solid transparent;font-size:1.5rem;font-weight:700;padding:0 .15rem}.sc-char--heard[data-v-c118d081]{border-bottom-color:#27ae6066;color:#1e8449}.sc-char--missed[data-v-c118d081]{border-bottom-color:#e67e2280;color:#a0620a}.sc-pitch[data-v-c118d081]{max-width:560px;width:100%}.sc-actions[data-v-c118d081]{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.sc-btn[data-v-c118d081]{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-family:Quicksand,sans-serif;font-size:.75rem;font-weight:700;gap:.3rem;padding:.45rem 1rem;transition:all .2s}.sc-btn--primary[data-v-c118d081]{background:#c0392b;color:#fff}.sc-btn--primary[data-v-c118d081]:hover{background:#a93226}.sc-btn--secondary[data-v-c118d081]{background:#f5f2ef;color:#2c3e50}.sc-btn--secondary[data-v-c118d081]:hover{background:#ece8e3}.sc-unsupported[data-v-c118d081]{padding:1rem;text-align:center}.sc-unsupported p[data-v-c118d081]{color:#7f8c8d;font-family:Quicksand,sans-serif;font-size:.82rem;margin:0 0 .75rem}.lf[data-v-9f43fd34]{display:contents}.lf-label[data-v-9f43fd34]{font-variant-numeric:tabular-nums}.lf-spinner[data-v-9f43fd34]{animation:lf-spin-9f43fd34 .7s linear infinite;border:2px solid rgba(192,57,43,.25);border-radius:50%;border-top-color:#c0392b;height:17px;width:17px}.lf-wave[data-v-9f43fd34]{align-items:center;display:inline-flex;gap:2.5px;height:18px;justify-content:center;width:20px}.lf-wave i[data-v-9f43fd34]{animation:lf-wave-9f43fd34 .9s ease-in-out infinite;background:#c0392b;border-radius:2px;height:15px;transform-origin:center;width:3px}.lf-wave i[data-v-9f43fd34]:first-child{animation-delay:0s}.lf-wave i[data-v-9f43fd34]:nth-child(2){animation-delay:.18s}.lf-wave i[data-v-9f43fd34]:nth-child(3){animation-delay:.36s}@keyframes lf-spin-9f43fd34{to{transform:rotate(1turn)}}@keyframes lf-wave-9f43fd34{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.lf-spinner[data-v-9f43fd34],.lf-wave i[data-v-9f43fd34]{animation:none}.lf-wave i[data-v-9f43fd34]{transform:scaleY(.7)}}.ta[data-v-29ed3514]{display:flex;flex-direction:column;gap:.75rem}.ta[data-v-29ed3514],.ta-play[data-v-29ed3514]{align-items:center}.ta-play[data-v-29ed3514]{background:#fff;border:1px solid #e8e4df;border-radius:20px;color:#2c3e50;cursor:pointer;display:inline-flex;font-family:Quicksand,sans-serif;font-size:.78rem;font-weight:600;gap:.4rem;padding:.45rem 1rem;transition:all .2s}.ta-play--active[data-v-29ed3514],.ta-play[data-v-29ed3514]:hover{border-color:#c0392b}.ta-play--active[data-v-29ed3514]{color:#c0392b}.ta-play[data-v-29ed3514]:disabled{cursor:default}.ta-prompt[data-v-29ed3514]{color:#2c3e50;font-family:Quicksand,sans-serif;font-size:.88rem;margin:0;text-align:center}.ta-hanzi[data-v-29ed3514]{color:#c0392b;font-size:2.2rem;font-weight:700}.ta-input-row[data-v-29ed3514]{display:flex;gap:.4rem;max-width:320px;width:100%}.ta-input[data-v-29ed3514]{border:2px solid #e8e4df;border-radius:10px;color:#2c3e50;flex:1;font-family:Quicksand,sans-serif;font-size:.88rem;outline:none;padding:.55rem .75rem;transition:border-color .2s}.ta-input[data-v-29ed3514]:focus{border-color:#c0392b}.ta-input--correct[data-v-29ed3514]{background:#27ae600a;border-color:#27ae60}.ta-input--wrong[data-v-29ed3514]{background:#c0392b0a;border-color:#c0392b}.ta-submit[data-v-29ed3514]{align-items:center;background:#c0392b;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:background .2s;width:40px}.ta-submit[data-v-29ed3514]:hover{background:#a93226}.ta-submit[data-v-29ed3514]:disabled{background:#e8e4df;cursor:default}.ta-feedback[data-v-29ed3514]{border-radius:8px;font-family:Quicksand,sans-serif;font-size:.82rem;font-weight:600;padding:.4rem 1rem}.ta-feedback--correct[data-v-29ed3514]{background:#27ae6014;color:#1e8449}.ta-feedback--wrong[data-v-29ed3514]{background:#c0392b14;color:#922b21}.dr[data-v-2769491a]{align-items:center;display:flex;flex-direction:column;gap:.75rem;width:100%}.dr-hint[data-v-2769491a]{color:#7f8c8d;font-family:Quicksand,sans-serif;font-size:.82rem;font-style:italic;margin:0;text-align:center}.dr-sentence[data-v-2769491a]{align-items:center;border:2px dashed #e8e4df;border-radius:12px;display:flex;flex-wrap:wrap;gap:.3rem;justify-content:center;max-width:420px;min-height:48px;padding:.5rem;transition:all .2s;width:100%}.dr-sentence--correct[data-v-2769491a]{background:#27ae600a;border-color:#27ae60}.dr-sentence--wrong[data-v-2769491a]{background:#c0392b0a;border-color:#c0392b}.dr-placeholder[data-v-2769491a]{color:#bdc3c7;font-family:Quicksand,sans-serif;font-size:.75rem}.dr-pool[data-v-2769491a]{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;max-width:420px}.dr-token[data-v-2769491a]{background:#fff;border:1px solid #e8e4df;border-radius:8px;color:#2c3e50;cursor:pointer;font-size:1rem;padding:.4rem .65rem;transition:all .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dr-token[data-v-2769491a]:hover{border-color:#c0392b;transform:translateY(-1px)}.dr-token--selected[data-v-2769491a]{background:#c0392b0f;border-color:#c0392b}.dr-submit[data-v-2769491a]{background:#c0392b;border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:Quicksand,sans-serif;font-size:.82rem;font-weight:700;padding:.5rem 1.5rem;transition:background .2s}.dr-submit[data-v-2769491a]:hover{background:#a93226}.dr-submit[data-v-2769491a]:disabled{background:#e8e4df;cursor:default}.dr-feedback[data-v-2769491a]{border-radius:8px;font-family:Quicksand,sans-serif;font-size:.82rem;font-weight:600;padding:.4rem 1rem}.dr-feedback--correct[data-v-2769491a]{background:#27ae6014;color:#1e8449}.dr-feedback--wrong[data-v-2769491a]{background:#c0392b14;color:#922b21}.dr-correct-answer[data-v-2769491a]{display:inline-block;font-size:1.4rem;font-weight:400;letter-spacing:.02em;line-height:1.3;margin-left:.25rem;vertical-align:middle}
