*{box-sizing:border-box}body{margin:0;font-family:system-ui,sans-serif;color:#1a1a2e;background:#f5f6fa}button{cursor:pointer;font:inherit}.btn{background:#4361ee;color:#fff;border:none;border-radius:8px;padding:.6rem 1.4rem;font-weight:600}.btn:disabled{background:#b8c0d8;cursor:default}.join[data-v-b4a5fde2]{max-width:30rem;margin:20vh auto;text-align:center}.error[data-v-b4a5fde2]{color:#c0392b}.body[data-v-9757ccb0]{line-height:1.65;margin:1rem 0 2rem}.body[data-v-9757ccb0] pre{background:#eef;padding:.8rem;border-radius:8px;overflow-x:auto}.question[data-v-d950516e]{margin:1.5rem 0}.option[data-v-d950516e]{display:flex;gap:.5rem;padding:.5rem .7rem;border-radius:8px;border:1px solid #ccd;margin:.4rem 0}.option.right[data-v-d950516e]{border-color:#2ecc71;background:#eafaf1}.option.wrong[data-v-d950516e]{border-color:#c0392b;background:#fdecea}.explanation[data-v-d950516e]{background:#fffbe6;border-left:3px solid #f1c40f;padding:.6rem .9rem}.score[data-v-d950516e]{font-weight:700}.body[data-v-cf923299]{line-height:1.65;margin:1rem 0}textarea[data-v-cf923299]{width:100%;padding:.8rem;border:1px solid #ccd;border-radius:8px;font:inherit}.score.pass[data-v-cf923299]{color:#27ae60}.score.fail[data-v-cf923299]{color:#c0392b}.feedback[data-v-cf923299]{background:#f0f2f8;padding:.8rem 1rem;border-radius:8px;margin:.8rem 0}.error[data-v-cf923299]{color:#c0392b}button[data-v-cf923299]{margin-right:.6rem}.canvas-pane[data-v-7b11b942]{border-top:1px solid #dde;display:flex;flex-direction:column;position:relative}.resize-h[data-v-7b11b942]{position:absolute;top:-4px;left:0;right:0;height:8px;cursor:row-resize;z-index:2}.resize-h[data-v-7b11b942]:hover{background:#4361ee33}.canvas-head[data-v-7b11b942]{display:flex;align-items:center;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#889;padding:.3rem .8rem}.spacer[data-v-7b11b942]{flex:1}.icon[data-v-7b11b942]{background:none;border:none;color:#667;font-size:1rem;padding:0 .3rem;line-height:1}.icon[data-v-7b11b942]:hover{color:#1a1a2e}iframe[data-v-7b11b942]{width:100%;flex:1;min-height:0;border:none;background:#fff}.canvas-pane.full[data-v-7b11b942]{position:fixed;top:1.5rem;right:1.5rem;bottom:1.5rem;left:1.5rem;z-index:50;height:auto!important;background:#fff;border:1px solid #ccd;border-radius:12px;box-shadow:0 12px 48px #1a1a2e59}.chat[data-v-11eddefe]{display:flex;flex-direction:column;height:100vh;background:#fff;border-left:1px solid #dde;position:sticky;top:0}.messages[data-v-11eddefe]{flex:1;overflow-y:auto;padding:1rem}.msg[data-v-11eddefe]{margin:.5rem 0;padding:.6rem .9rem;border-radius:10px;font-size:.92rem;line-height:1.5}.msg.user[data-v-11eddefe]{background:#4361ee;color:#fff;margin-left:2rem;white-space:pre-wrap}.msg.assistant[data-v-11eddefe]{background:#f0f2f8;margin-right:2rem}.composer[data-v-11eddefe]{display:flex;gap:.5rem;padding:.8rem;border-top:1px solid #dde}.composer input[data-v-11eddefe]{flex:1;padding:.55rem .8rem;border:1px solid #ccd;border-radius:8px}.player[data-v-68de1263]{display:grid;min-height:100vh}.col-resizer[data-v-68de1263]{cursor:col-resize;background:#dde;position:sticky;top:0;height:100vh}.col-resizer[data-v-68de1263]:hover{background:#4361ee}.sidebar[data-v-68de1263]{background:#1a1a2e;color:#eee;padding:1.5rem 1rem}.sidebar h2[data-v-68de1263]{font-size:1.1rem}.hello[data-v-68de1263]{color:#9aa;font-size:.9rem}.sidebar ol[data-v-68de1263]{list-style:none;padding:0}.sidebar li[data-v-68de1263]{padding:.45rem .6rem;border-radius:6px;cursor:pointer;font-size:.92rem}.sidebar li.active[data-v-68de1263]{background:#4361ee}.sidebar li.done .mark[data-v-68de1263]{color:#2ecc71}.mark[data-v-68de1263]{display:inline-block;width:1.2rem}.content[data-v-68de1263]{padding:2.5rem 3rem;max-width:52rem}.loading[data-v-68de1263]{padding:4rem;text-align:center}
