body{margin:0;font-family:system-ui,sans-serif}.disclaimer{font-size:.7rem;color:#888;text-align:center;padding:.5rem 1rem}.home[data-v-ee61e332]{max-width:40rem;margin:0 auto;padding:1rem}.top[data-v-ee61e332]{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}.who[data-v-ee61e332]{font-size:.85rem;color:#555;display:flex;gap:.6rem;align-items:center}.who button[data-v-ee61e332]{border:1px solid #ccc;background:none;border-radius:6px;padding:.25rem .6rem;cursor:pointer}ul[data-v-ee61e332]{list-style:none;padding:0}li[data-v-ee61e332]{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #eee}.chip[data-v-ee61e332]{font-size:.7rem;background:#ffe9b3;border-radius:999px;padding:.1rem .5rem;font-style:normal}.chip.marked[data-v-ee61e332]{background:#bbf7d0}.chip.submitted[data-v-ee61e332]{background:#fde68a}.brand[data-v-ee61e332]{margin:0;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#345;font-weight:700}.past-title[data-v-ee61e332]{margin-top:1.6rem}.date[data-v-ee61e332]{color:#888;margin-left:.3rem}.entry[data-v-90a4a0fe]{max-width:22rem;margin:14vh auto;text-align:center;padding:1rem}.error[data-v-90a4a0fe]{color:#c00}.login[data-v-5f55288b]{max-width:22rem;margin:8vh auto;padding:1rem;display:flex;flex-direction:column}form[data-v-5f55288b]{display:flex;flex-direction:column;gap:.9rem}.field[data-v-5f55288b]{display:flex;flex-direction:column;gap:.25rem}.field span[data-v-5f55288b]{font-weight:600;font-size:.9rem}input[data-v-5f55288b],button[data-v-5f55288b]{padding:.7rem;font-size:1rem}button[data-v-5f55288b]{background:#345;color:#fff;border:0;border-radius:8px;cursor:pointer}.hint[data-v-5f55288b]{color:#666;font-size:.8rem}.student-hint[data-v-5f55288b]{background:#eef3f8;border-radius:8px;padding:.6rem .8rem;font-size:.85rem;color:#345}.error[data-v-5f55288b]{color:#c00}.runner[data-v-4e53e441]{max-width:42rem;margin:0 auto;padding:1rem}.parts[data-v-4e53e441]{list-style:none;padding:0}.parts li[data-v-4e53e441]{padding:.5rem 0;border-bottom:1px solid #eee}.mode[data-v-4e53e441]{border:1px solid #ddd;border-radius:8px;padding:.8rem 1rem;margin:1rem 0}.mode-opt[data-v-4e53e441]{display:flex;align-items:center;gap:.5rem;padding:.3rem 0;cursor:pointer}.skill-picks[data-v-4e53e441]{margin:.4rem 0 0 1.4rem}.mins[data-v-4e53e441]{float:right;color:#666}.bar[data-v-4e53e441]{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;padding:.5rem 0;border-bottom:2px solid #345}.timer[data-v-4e53e441]{font-variant-numeric:tabular-nums;font-weight:600}.timer.low[data-v-4e53e441]{color:#c00}.instructions[data-v-4e53e441]{font-style:italic;color:#345}.matching-text[data-v-4e53e441]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.6rem .9rem;margin:.5rem 0}.matching-text h3[data-v-4e53e441]{margin:0 0 .3rem}.passage[data-v-4e53e441]{white-space:pre-wrap;font-family:inherit;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.8rem}.form-title[data-v-4e53e441]{font-weight:700;letter-spacing:.05em}.gap-input[data-v-4e53e441]{padding:.5rem;font-size:1rem;width:14rem;max-width:100%}.pictures[data-v-4e53e441]{display:flex;gap:.6rem;flex-wrap:wrap;margin:.8rem 0}.picture[data-v-4e53e441]{flex:1 1 30%;min-width:9rem}.picture[data-v-4e53e441] svg{width:100%;height:auto;border-radius:8px}.picture img[data-v-4e53e441]{width:100%;height:auto;border-radius:8px;border:1px solid #e2e8f0}.notice[data-v-4e53e441]{background:#f4f6f8;border:1px solid #d0d7de;border-radius:6px;padding:.6rem;font-family:inherit}.question[data-v-4e53e441]{margin:1rem 0}.option[data-v-4e53e441]{display:flex;gap:.5rem;padding:.45rem .6rem;border:1px solid #ddd;border-radius:6px;margin:.3rem 0;cursor:pointer}.option.selected[data-v-4e53e441]{border-color:#345;background:#eef3f8}textarea[data-v-4e53e441]{width:100%;box-sizing:border-box;padding:.6rem;font-size:1rem;font-family:inherit}.audio-box[data-v-4e53e441]{margin:1rem 0}audio[data-v-4e53e441]{width:100%}.speaking-box[data-v-4e53e441]{border:1px solid #ddd;border-radius:8px;padding:1rem;margin:1rem 0}.examiner-line[data-v-4e53e441]{background:#eef3f8;border-radius:8px;padding:.7rem}.examiner-label[data-v-4e53e441]{font-weight:700;color:#345}.status[data-v-4e53e441]{font-weight:600}.status.rec[data-v-4e53e441]{color:#c00}.nav[data-v-4e53e441]{margin:1.2rem 0;display:flex;justify-content:flex-end}button.primary[data-v-4e53e441]{background:#345;color:#fff;border:0;border-radius:8px;padding:.7rem 1.4rem;font-size:1rem;cursor:pointer}button.primary[data-v-4e53e441]:disabled{opacity:.5}.card[data-v-4e53e441]{border:1px solid #ddd;border-radius:8px;padding:1rem;margin:1rem 0}.big[data-v-4e53e441]{font-size:1.6rem;font-weight:700}.scale[data-v-4e53e441]{margin:.6rem 0}.scale p[data-v-4e53e441]{margin:.2rem 0;color:#444}.overall[data-v-4e53e441]{font-style:italic}.error[data-v-4e53e441]{color:#c00}.warn-box[data-v-4e53e441]{border:1px solid #f0c000;background:#fff8e1;border-radius:8px;padding:.6rem .9rem;margin-top:.6rem}.warn-box button[data-v-4e53e441]{border:1px solid #345;background:none;border-radius:6px;padding:.4rem .9rem;cursor:pointer}.hint[data-v-4e53e441]{color:#666;font-size:.9rem}pre[data-v-4e53e441]{white-space:pre-wrap}.practice[data-v-9ecfa239]{max-width:42rem;margin:0 auto;padding:1rem}.top[data-v-9ecfa239]{display:flex;justify-content:space-between;align-items:baseline}.hint[data-v-9ecfa239]{color:#666;font-size:.9rem}.ex-list[data-v-9ecfa239]{list-style:none;padding:0}.ex-list li[data-v-9ecfa239]{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;border-bottom:1px solid #eee}.ex-list small[data-v-9ecfa239]{display:block;color:#666}.instructions[data-v-9ecfa239]{font-style:italic;color:#345}.question[data-v-9ecfa239]{margin:1.2rem 0}.gap-input[data-v-9ecfa239]{padding:.5rem;font-size:1rem;width:14rem;max-width:100%}.option[data-v-9ecfa239]{display:flex;gap:.5rem;padding:.45rem .6rem;border:1px solid #ddd;border-radius:6px;margin:.3rem 0;cursor:pointer}.option.selected[data-v-9ecfa239]{border-color:#345;background:#eef3f8}.option.right[data-v-9ecfa239]{border-color:#15803d;background:#f0fdf4}.option.wrong[data-v-9ecfa239]{border-color:#b91c1c;background:#fef2f2}.feedback[data-v-9ecfa239]{border-radius:8px;padding:.6rem .9rem;margin-top:.4rem}.feedback.good[data-v-9ecfa239]{background:#f0fdf4;border:1px solid #bbf7d0}.feedback.bad[data-v-9ecfa239]{background:#fef2f2;border:1px solid #fecaca}.explain[data-v-9ecfa239]{color:#444;margin:.3rem 0 0}.check[data-v-9ecfa239]{border:1px solid #345;background:none;border-radius:6px;padding:.4rem .9rem;cursor:pointer;margin-top:.3rem}.nav[data-v-9ecfa239]{margin:1.2rem 0;display:flex;justify-content:flex-end}button.primary[data-v-9ecfa239]{background:#345;color:#fff;border:0;border-radius:8px;padding:.6rem 1.2rem;font-size:1rem;cursor:pointer}.score-chip[data-v-9ecfa239]{background:#fff3;border-radius:999px;padding:.1rem .5rem;margin-left:.4rem}.results[data-v-2cb70aab]{max-width:46rem;margin:0 auto;padding:1rem}.top[data-v-2cb70aab]{display:flex;justify-content:space-between;align-items:baseline}.card[data-v-2cb70aab]{border:1px solid #ddd;border-radius:8px;padding:1rem;margin:1rem 0}.big[data-v-2cb70aab]{font-size:1.6rem;font-weight:700}.scale[data-v-2cb70aab]{margin:.6rem 0}.scale p[data-v-2cb70aab]{margin:.2rem 0;color:#444}.overall[data-v-2cb70aab]{font-style:italic}.error[data-v-2cb70aab]{color:#c00}.hint[data-v-2cb70aab]{color:#666;font-size:.9rem}.partial-chip[data-v-2cb70aab]{display:inline-block;background:#ffe9b3;border-radius:999px;padding:.25rem .9rem;font-weight:600}.score[data-v-2cb70aab]{float:right;font-size:1rem;color:#345}.answers[data-v-2cb70aab]{width:100%;border-collapse:collapse}.answers th[data-v-2cb70aab]{text-align:left;font-size:.75rem;color:#888;font-weight:600;padding:.2rem .4rem}.answers td[data-v-2cb70aab]{padding:.3rem .4rem;border-bottom:1px solid #f1f5f9;vertical-align:top}.qn[data-v-2cb70aab]{color:#888}.qtext[data-v-2cb70aab]{width:45%}.given[data-v-2cb70aab]{font-weight:600}.ok .given[data-v-2cb70aab]{color:#15803d}.ko .given[data-v-2cb70aab]{color:#b91c1c}.mark[data-v-2cb70aab]{font-weight:700}.key[data-v-2cb70aab]{color:#64748b}.guide[data-v-2cb70aab]{background:#f8fafc}.guide-skill[data-v-2cb70aab]{margin:.8rem 0;padding-top:.5rem;border-top:1px solid #e2e8f0}.guide-skill h3[data-v-2cb70aab]{margin:.2rem 0}.practise-tip[data-v-2cb70aab]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem .8rem;margin:.4rem 0}.practise-tip p[data-v-2cb70aab]{margin:.2rem 0;color:#444}.practice-cta[data-v-2cb70aab]{margin:1.2rem 0}.btn-primary[data-v-2cb70aab]{display:inline-block;background:#345;color:#fff;border-radius:8px;padding:.7rem 1.4rem;text-decoration:none}pre[data-v-2cb70aab]{white-space:pre-wrap}details[data-v-2cb70aab]{margin-top:.5rem}.review[data-v-7aecb36c]{max-width:52rem;margin:0 auto;padding:1rem}.top[data-v-7aecb36c]{display:flex;justify-content:space-between;align-items:baseline}table[data-v-7aecb36c]{width:100%;border-collapse:collapse}th[data-v-7aecb36c],td[data-v-7aecb36c]{text-align:left;padding:.5rem .4rem;border-bottom:1px solid #eee;vertical-align:top}small[data-v-7aecb36c]{color:#777}.chip[data-v-7aecb36c]{border-radius:999px;padding:.15rem .6rem;font-size:.8rem;background:#e2e8f0}.chip.marked[data-v-7aecb36c]{background:#bbf7d0}.chip.submitted[data-v-7aecb36c]{background:#fde68a}.chip.partial[data-v-7aecb36c]{background:#dbeafe;margin-left:.3rem}.eval[data-v-b9907ef1]{border-top:2px dashed #cbd5e1;margin-top:.8rem;padding-top:.6rem}.reviewed-chip[data-v-b9907ef1]{background:#bbf7d0;border-radius:999px;padding:.15rem .6rem;font-size:.75rem;margin-left:.5rem}.scales[data-v-b9907ef1]{display:flex;gap:1rem;flex-wrap:wrap}.scale[data-v-b9907ef1]{flex:1 1 12rem}.scale label[data-v-b9907ef1]{font-weight:700;display:block}.ai-band[data-v-b9907ef1]{font-weight:400;color:#64748b;margin-left:.4rem}.scale input[data-v-b9907ef1]{width:4rem;padding:.3rem;font-size:1rem}.fb[data-v-b9907ef1]{font-size:.85rem;color:#444}.overall[data-v-b9907ef1]{font-style:italic}.comment-label[data-v-b9907ef1]{display:block;font-weight:600;margin-top:.5rem}textarea[data-v-b9907ef1]{width:100%;box-sizing:border-box;padding:.5rem;font-family:inherit}.actions[data-v-b9907ef1]{margin-top:.5rem;display:flex;align-items:center;gap:.8rem}button.primary[data-v-b9907ef1]{background:#345;color:#fff;border:0;border-radius:8px;padding:.5rem 1.1rem;cursor:pointer}.saved[data-v-b9907ef1]{color:#15803d;font-weight:600}.hint[data-v-b9907ef1]{color:#666;font-size:.85rem}pre[data-v-b9907ef1]{white-space:pre-wrap}.ra[data-v-72f3a7b8]{max-width:48rem;margin:0 auto;padding:1rem}.top[data-v-72f3a7b8]{display:flex;justify-content:space-between;align-items:baseline}.card[data-v-72f3a7b8]{border:1px solid #ddd;border-radius:8px;padding:1rem;margin:1rem 0}.score[data-v-72f3a7b8]{float:right;font-size:1rem;color:#345}.answers[data-v-72f3a7b8]{width:100%;border-collapse:collapse}.answers td[data-v-72f3a7b8]{padding:.3rem .4rem;border-bottom:1px solid #f1f5f9}.qn[data-v-72f3a7b8]{color:#888}.given[data-v-72f3a7b8]{font-weight:600}.ok .given[data-v-72f3a7b8]{color:#15803d}.ko .given[data-v-72f3a7b8]{color:#b91c1c}.key[data-v-72f3a7b8]{color:#64748b}.prompt[data-v-72f3a7b8]{font-style:italic;color:#345}.student-text[data-v-72f3a7b8]{background:#f8fafc;border-left:3px solid #345;margin:.5rem 0;padding:.6rem .9rem;white-space:pre-wrap}.rec[data-v-72f3a7b8]{margin:.6rem 0}.pictures[data-v-72f3a7b8]{display:flex;gap:.6rem;flex-wrap:wrap;margin:.6rem 0}.picture[data-v-72f3a7b8]{flex:1 1 30%;min-width:8rem}.picture[data-v-72f3a7b8] svg,.picture img[data-v-72f3a7b8]{width:100%;height:auto;border-radius:8px}.examiner-q[data-v-72f3a7b8]{margin:.2rem 0;color:#345;font-size:.9rem}audio[data-v-72f3a7b8]{width:100%}.chip.partial[data-v-72f3a7b8]{background:#dbeafe;border-radius:999px;padding:.15rem .6rem;font-size:.8rem;margin:0 .3rem}.guide[data-v-72f3a7b8]{background:#f8fafc}.guide-skill[data-v-72f3a7b8]{margin:.8rem 0;padding-top:.5rem;border-top:1px solid #e2e8f0}.guide-skill h3[data-v-72f3a7b8]{margin:.2rem 0}.practise-tip[data-v-72f3a7b8]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem .8rem;margin:.4rem 0}.practise-tip p[data-v-72f3a7b8]{margin:.2rem 0;color:#444}.overall[data-v-72f3a7b8]{font-style:italic}.students[data-v-3b69f6c9]{max-width:46rem;margin:0 auto;padding:1rem}.top[data-v-3b69f6c9]{display:flex;justify-content:space-between;align-items:baseline}.card[data-v-3b69f6c9]{border:1px solid #ddd;border-radius:8px;padding:1rem;margin:.8rem 0}.row[data-v-3b69f6c9]{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.8rem}.row input[data-v-3b69f6c9]{flex:1 1 10rem;padding:.55rem;font-size:1rem}textarea[data-v-3b69f6c9]{width:100%;box-sizing:border-box;padding:.55rem;font-family:inherit;font-size:1rem;margin-bottom:.5rem}button[data-v-3b69f6c9]{padding:.45rem .8rem;border-radius:6px;border:1px solid #cbd5e1;background:#fff;cursor:pointer}button.primary[data-v-3b69f6c9]{background:#345;color:#fff;border:0}button.danger[data-v-3b69f6c9]{color:#b91c1c;border-color:#fca5a5}.head[data-v-3b69f6c9]{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;align-items:baseline}.actions[data-v-3b69f6c9]{display:flex;gap:.4rem;flex-wrap:wrap}.link[data-v-3b69f6c9]{font-family:monospace;font-size:.78rem;word-break:break-all;background:#f8fafc;padding:.4rem .6rem;border-radius:6px}.chip.revoked[data-v-3b69f6c9]{background:#fecaca;border-radius:999px;padding:.1rem .5rem;font-size:.75rem;margin-left:.4rem}.used[data-v-3b69f6c9]{color:#64748b}.qr[data-v-3b69f6c9]{text-align:center}.hint[data-v-3b69f6c9]{color:#666}small[data-v-3b69f6c9]{color:#64748b}
