.online-exam-page {
 background:radial-gradient(ellipse at 84% 5%,#3a305b 0%,transparent 45%),#111124;
}
.exam-topbar { align-items:center; }
.exam-brand { font-weight:700;letter-spacing:.13em;color:#f4ddff; }
.online-exam-page main {
 width:min(100%,1360px);max-width:none;margin:32px auto 0;padding-inline:clamp(16px,4vw,48px);
}
.online-exam-page h1 { margin:4px 0 24px; }
.online-exam-page h2 { font-size:clamp(22px,3.2vw,34px); }
.online-exam-page .exam-kicker { font-size:.76rem;color:#e5bdf7;letter-spacing:.12em;font-weight:700;margin:0; }
.online-exam-page .panel { background:#1c1a35e8;min-width:0;margin:0 0 16px; }
.exam-set-list,.exam-grid { display:grid;gap:14px;align-items:start; }
.exam-set-list { grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr)); }
.exam-grid { grid-template-columns:minmax(0,1fr) minmax(220px,285px); }
.exam-question legend { font-size:clamp(19px,2.5vw,28px);line-height:1.65; }
.exam-question .choice,.exam-answer { font-size:clamp(15px,1.45vw,18px);overflow-wrap:anywhere; }
.exam-question .choice input,.online-exam-page .choice input { flex:none;width:auto;margin:0; }
.exam-jumps { display:grid;grid-template-columns:repeat(auto-fit,minmax(38px,1fr));gap:6px; }
.exam-jumps button { padding:8px 4px;margin:0;text-align:center; }
.exam-jumps button.is-answered { background:#354a51;border-color:#719f98; }
.exam-jumps button[aria-current] { background:#d9c6fa;color:#221b3d;border-color:#eadcff; }
.online-exam-page .button { text-decoration:none; }
.exam-score-value { color:#f6d6ff;font-size:clamp(38px,7vw,78px);font-weight:700;line-height:1.1;margin:8px 0 16px; }
.exam-review { scroll-margin-top:20px; }
.exam-solution summary { font-weight:700;color:#e6c8f7; }
.exam-solution h3 { margin:12px 0;overflow-wrap:anywhere; }
.exam-answer { border:1px solid #7e71924a;padding:8px 12px;border-radius:9px;margin:8px 0; }
.exam-answer p,.exam-explanation p { margin:4px 0 0;white-space:pre-line; }
.exam-answer.correct { background:#263d3d; }
.exam-answer.incorrect { background:#483044; }
.exam-explanation { border-left:2px solid #c8a5f1;padding:6px 12px;margin-top:15px;overflow-wrap:anywhere; }
.online-exam-page #db-error:empty { display:none; }
@media(max-width:730px){
 .online-exam-page main { margin-top:22px; }
 .exam-grid { grid-template-columns:minmax(0,1fr); }
 .exam-jumps { grid-template-columns:repeat(auto-fit,minmax(40px,1fr)); }
}
