.exam-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:22px 0}
.exam-card,.exam-summary,.exam-result{padding:28px}
.exam-card-head{display:flex;align-items:start;justify-content:space-between;gap:12px}
.exam-card-head h3{margin:0}.exam-card p{line-height:1.7}
.exam-workspace .exam-start-disabled:disabled,.exam-workspace .exam-start-disabled:disabled:hover{border-color:#d5dedf;background:#e7ebec;color:#637780;box-shadow:none;opacity:1;cursor:not-allowed;transform:none}
.exam-confirm-copy{display:grid;gap:12px;margin-bottom:24px;color:var(--ink);line-height:1.75}
.exam-confirm-copy p{margin:0}.exam-confirm-actions{padding-top:18px;border-top:1px solid var(--line)}
.exam-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.exam-facts dt{font-size:13px;color:var(--muted,#758e98)}.exam-facts dd{margin:5px 0;font-weight:700}
.exam-summary{margin-bottom:16px}
.exam-timer-bar{position:sticky;top:104px;z-index:7;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;margin:16px 0 24px;background:#eaf3f6;border:1px solid #cbdfe6;border-radius:16px}
.exam-timer-bar small{display:block;margin-top:6px;color:var(--muted,#758e98)}
.exam-timer-bar .urgent{color:#b33b32}.exam-clock{text-align:right;flex-shrink:0}
.exam-clock>span{font-size:13px;margin-right:10px}.exam-clock>strong{font-size:26px;font-variant-numeric:tabular-nums}
.exam-taking-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
.exam-question-panel{min-width:0}.exam-single-card{padding:30px}
.exam-question-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid #e3ecee;color:var(--muted,#758e98);font-size:14px}
.exam-question{border:0;padding:0;margin:0;min-width:0}
.exam-question legend{width:100%;padding:0;margin-bottom:22px;font-size:19px;font-weight:700;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.exam-question legend:focus{outline:none}
.exam-option{display:flex;align-items:start;gap:12px;padding:18px;border:1px solid #d7e5ea;border-radius:12px;margin:12px 0;cursor:pointer;white-space:pre-wrap;transition:background .15s,border-color .15s}
.exam-option:hover{background:#f6fafb;border-color:#92bbc8}.exam-option:has(input:checked){background:#edf6f9;border-color:#4f98b5}
.exam-option:has(input:focus-visible){outline:3px solid #9bcad9;outline-offset:2px}
.exam-option input{width:auto;margin-top:5px;flex:none;accent-color:#4f98b5}.exam-option span{overflow-wrap:anywhere;line-height:1.7}
.exam-question-navigation{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #e3ecee;margin-top:28px;padding-top:22px}
.exam-question-navigation span{font-size:13px;color:var(--muted,#758e98);text-align:center;line-height:1.6}
.exam-question-navigation button{flex-shrink:0}.exam-workspace button:disabled{opacity:.45;cursor:not-allowed}
.exam-instructions{font-size:13px;color:var(--muted,#758e98);line-height:1.8;white-space:pre-wrap;padding:0 4px}
.exam-progress-panel{position:sticky;top:218px;padding:24px;min-width:0}
.exam-progress-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.exam-progress-heading h3{margin:0;font-size:17px}
.exam-progress-heading strong{font-size:24px;color:#195653}.exam-progress-heading small{font-size:13px;font-weight:400;color:var(--muted,#758e98)}
.exam-progress-panel progress{width:100%;height:7px;border:0;border-radius:8px;overflow:hidden;margin-top:18px;accent-color:#4f98b5;background:#e5eef1}
.exam-progress-panel progress::-webkit-progress-bar{background:#e5eef1}.exam-progress-panel progress::-webkit-progress-value{background:#4f98b5;border-radius:8px}
#exam-save-state{font-size:13px;color:var(--muted,#758e98);line-height:1.7;margin:10px 0 18px}
.exam-answer-map{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:16px}
.exam-answer-map button{display:grid;place-items:center;width:100%;min-width:0;min-height:36px;padding:4px;border:1px solid #cbdfe6;border-radius:7px;background:#fff;color:#376f85;font-size:13px;box-shadow:none}
.exam-answer-map .answered,.exam-map-legend .answered{background:#376f85;border-color:#376f85;color:#fff}
.exam-answer-map .pending,.exam-map-legend .pending{background:#fff3d9;border-color:#d8ad54;color:#825c15}
.exam-answer-map [aria-current=step]{outline:2px solid #195653;outline-offset:2px;font-weight:700}
.exam-answer-map button:focus-visible{outline:3px solid #4f98b5;outline-offset:2px}
.exam-map-legend{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;font-size:12px;color:var(--muted,#758e98)}
.exam-map-legend span{display:flex;align-items:center;gap:7px}.exam-map-legend i{width:12px;height:12px;display:inline-block;border:1px solid #cbdfe6;border-radius:3px;background:#fff}
.exam-map-legend .current{outline:2px solid #195653;outline-offset:1px}
.exam-submit{border-top:1px solid #e3ecee;margin-top:22px;padding-top:20px}.exam-submit button{width:100%}
.exam-submit p{font-size:12px;line-height:1.8;color:var(--muted,#758e98);margin:12px 0 0}
.exam-score{display:block;font-size:64px;color:#195653;margin:20px 0}.exam-score small{font-size:20px}
.exam-workspace table{width:100%}.exam-workspace td,.exam-workspace th{text-align:left;padding:12px}.exam-workspace td small{display:block}
.exam-workspace .table-wrap{overflow-x:auto}.exam-workspace .card{margin-bottom:18px}.exam-workspace [hidden]{display:none!important}
@media(max-width:1200px){.exam-taking-layout{grid-template-columns:minmax(0,1fr) 260px;gap:18px}.exam-progress-panel{padding:20px}.exam-single-card{padding:24px}}
@media(max-width:960px){.exam-timer-bar{top:80px;position:static}.exam-list,.exam-taking-layout{grid-template-columns:1fr}.exam-card,.exam-summary,.exam-result,.exam-single-card{padding:20px}.exam-progress-panel{position:static}.exam-answer-map{grid-template-columns:repeat(10,minmax(0,1fr))}.exam-map-legend{grid-template-columns:repeat(4,max-content);justify-content:space-between}.exam-timer-bar{flex-direction:column;align-items:start}.exam-timer-bar strong{overflow-wrap:anywhere}.exam-clock{text-align:left}.exam-question-navigation span{display:none}}
@media(max-width:480px){.exam-answer-map{grid-template-columns:repeat(5,minmax(0,1fr))}.exam-map-legend{grid-template-columns:1fr 1fr}.exam-clock>strong{font-size:24px}.exam-question legend{font-size:17px}.exam-option{padding:14px}}
