body{font-family:system-ui,-apple-system,'Microsoft YaHei',sans-serif}button,input,textarea,select{font-family:inherit}button{cursor:pointer}a.primary-btn{display:inline-block;text-decoration:none}.main>#connection{margin:0 0 20px;border-radius:12px}.main p{line-height:1.7}.toolbar{flex-wrap:wrap}.exam-card footer{flex-wrap:wrap;gap:12px}.exam-card button{min-height:40px}.exam-card h3,.result-entry h3{overflow-wrap:anywhere}#qr{display:block;margin:16px auto;max-width:100%;height:auto}.result-row{padding:20px 0;border-bottom:1px solid var(--line)}.result-row p{overflow-wrap:anywhere}.result-row summary{font-size:14px;padding:12px 0;cursor:pointer}.badge{display:inline-block;background:#fff1d9;color:#835700;border-radius:8px;padding:4px 8px;font-size:12px}.error-banner{background:#ffeded!important;color:#a52b2b!important}#auth{margin-top:20px}#adminBody[hidden],#auth[hidden]{display:none}.question-meta span{font-size:12px}.question-item h3{font-size:15px}.question-item p{font-size:13px}.candidate{max-width:760px;margin:24px auto;padding:0 16px 30px}.candidate .panel{margin-top:18px}.candidate h1{font-size:26px}.candidate header{display:flex;justify-content:space-between;align-items:center}.candidate .options{margin:20px 0}.candidate .option{font-size:16px}.candidate .actions{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-top:20px}.candidate #clock{font-size:22px;font-weight:700;color:var(--teal)}.candidate details{margin:12px 0}.candidate #saveState{font-size:13px;color:var(--muted)}.candidate #submitPanel{margin-top:20px;padding:16px;background:#fff1d9;border-radius:12px}.candidate #answerArea{user-select:none;-webkit-user-select:none}.candidate #recovery{padding:12px;background:#ffeded;color:#922}.candidate #reviewList p{font-size:14px;line-height:1.8}.candidate input[type=checkbox]{width:20px;height:20px;accent-color:var(--teal)}.candidate .rule{display:flex;align-items:flex-start;gap:10px;font-size:14px}.candidate #deviceBlock{padding:16px;background:#fff1d9;border-radius:12px;line-height:1.8}.candidate #examView[hidden],.candidate #resultView[hidden],.candidate #joinView[hidden],.candidate #submitPanel[hidden]{display:none}.candidate .guard-notice{margin:14px 0;border-radius:10px}
.candidate .option{text-align:left;background:white;min-height:48px;width:100%;overflow-wrap:anywhere}.candidate .option.selected{background:#eff8f5}.candidate .ghost-btn{padding:10px 16px;background:white;border:1px solid var(--line);border-radius:10px;color:var(--teal)}.candidate input[type=text],.candidate input:not([type]){display:block;width:100%;margin:10px 0;padding:14px;border:1px solid var(--line);border-radius:10px;font-size:16px}.candidate button:disabled{opacity:.5;cursor:not-allowed}.candidate h2,.candidate p{overflow-wrap:anywhere}.candidate button:focus-visible{outline:3px solid #e6ab40;outline-offset:3px}
.legal{text-align:center;padding:24px 16px 90px;color:#586b66;font-size:13px;line-height:1.8}.legal img{max-width:100%;height:auto}.legal summary{cursor:pointer;color:var(--teal)}.legal a{color:var(--teal)}body:has(.app-shell)>.legal{margin-left:248px}.candidate textarea{display:block;width:100%;font:16px inherit;padding:12px;border:1px solid var(--line);border-radius:8px;resize:vertical}.candidate #answerArea:has(textarea){user-select:auto;-webkit-user-select:auto}.modal-card label{line-height:1.8}.modal-card{overflow-y:auto;max-height:90dvh}#aiPreview h3{font-size:16px}#aiPreview p,#gradeFields p{white-space:pre-wrap;overflow-wrap:anywhere}
.candidate #answerArea:not(.anti-cheat){user-select:auto;-webkit-user-select:auto}
@media(max-width:720px){body:has(.app-shell)>.legal{margin-left:0}.toolbar>*{min-width:0}.toolbar{display:flex}.search{width:100%;flex-basis:100%}.toolbar button{font-size:12px}.candidate{margin-top:16px}.candidate .panel{padding:18px}.candidate .actions button{min-height:46px}.main{padding-top:78px}.page-head{flex-wrap:wrap}}
