[hidden]{display:none!important}
.practice-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:32px 0 0;padding:26px 30px;border:1px solid #6d875c;border-radius:10px;background:linear-gradient(115deg,#293c2a,#1b2420)}
.practice-banner h3{margin:0 0 8px;font-size:23px}.practice-banner p{margin:0;color:var(--muted);font-size:14px}.practice-banner .actions{flex-shrink:0}
.exam-intro{padding:28px;border:1px solid #637a52;border-radius:12px;background:var(--surface)}
.exam-meta{display:flex;gap:12px 30px;flex-wrap:wrap;margin-bottom:20px;font-size:14px;color:var(--accent)}
.exam-meta b{color:var(--ink);font-size:24px;margin-right:5px}.exam-intro .note{margin-top:16px}
.exam-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}.timer-choice{font-size:14px;display:flex;align-items:center;gap:8px}
.exam-reference{padding:20px 24px;background:#1b291e;border:1px solid var(--line);border-radius:8px;margin:24px 0;font-size:14px}.exam-reference p:last-child{margin-bottom:0}
.exam-bar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--accent);margin:24px 0}
.exam-question{border:1px solid var(--line);border-radius:10px;padding:28px;margin:18px 0;background:var(--surface);min-width:0;overflow-wrap:anywhere}
.exam-heading{display:flex;justify-content:space-between;gap:14px;align-items:baseline;margin-bottom:18px}.exam-heading h3{font-size:21px;margin:0}.exam-points{white-space:nowrap;color:var(--accent);font-size:13px}.exam-index{color:var(--accent);font-size:13px;margin-right:12px}
.exam-question label:not(.rubric-item):not(.exam-option){display:block;font-size:13px;color:var(--muted);margin:16px 0 7px}
.exam-question textarea,.exam-question input[type=text]{width:100%;font:15px/1.6 var(--font);color:var(--ink);background:var(--bg);border:1px solid #647563;border-radius:6px;padding:12px;resize:vertical}
.exam-question textarea{min-height:118px}.exam-question input[type=text]{max-width:330px}.exam-question textarea:focus-visible,.exam-question input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.exam-question :disabled{opacity:1;color:var(--ink);-webkit-text-fill-color:var(--ink)}
.exam-options{display:flex;gap:12px;flex-wrap:wrap;border:0;margin:16px 0;padding:0}.exam-options legend{font-size:13px;color:var(--muted);margin-bottom:8px}.exam-option{display:flex;align-items:center;gap:10px;padding:10px 18px;background:var(--bg);border:1px solid var(--line);border-radius:6px;cursor:pointer;min-height:44px}
input[type=checkbox],input[type=radio]{accent-color:#b7d39e;width:18px;height:18px;flex-shrink:0}
.exam-solution{border-top:1px solid #59734d;margin-top:22px;padding-top:22px}.exam-solution h4{margin-top:0;color:var(--accent)}.rubric-item{display:flex;align-items:flex-start;gap:10px;margin:10px 0;font-size:14px;cursor:pointer}.rubric-item input{margin-top:4px}.auto-feedback{padding:12px 16px;background:#30412a;color:#d6edc6;border-radius:6px;font-size:14px}.auto-feedback.incorrect{background:#483729;color:#f4d2b4}
.exam-bonus{padding:18px;border-left:2px solid var(--warm);margin-top:22px;background:#dbc09a08}.exam-bonus p{font-size:14px}
.exam-review{padding:24px;border:1px solid var(--accent);border-radius:8px;margin-top:24px;background:#233424}.exam-review h3{margin-bottom:14px;font-size:22px}.exam-review:focus{outline:2px solid var(--accent);outline-offset:5px}#practice-score{font-size:21px;font-weight:600;color:var(--accent)}
.challenge{border:1px solid var(--line);border-radius:10px;margin:18px 0;padding:28px;background:var(--surface)}.challenge h3{font-size:21px;margin:0 0 16px}.challenge .label{display:block;margin-bottom:12px}.challenge details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.challenge summary{cursor:pointer;color:var(--accent);min-height:36px}.challenge details p,.challenge details ol{margin-top:16px}.challenge li{padding-left:6px}.challenge li+li{margin-top:14px}
.print-answer-space{display:none}
@media(max-width:700px){.practice-banner{align-items:flex-start;flex-direction:column;padding:22px}.practice-banner .actions{flex-shrink:1}.exam-intro,.exam-question,.challenge{padding:20px}.exam-heading h3{font-size:19px}.exam-reference{padding:18px}.exam-meta{gap:10px 20px}.exam-question p,.challenge p{font-size:15px}}
@media print{.practice-banner,.exam-controls,.exam-bar,.exam-review,.exam-solution,.exam-feedback,.auto-feedback,#practice-reset-confirm{display:none!important}.exam-intro,.exam-question,.challenge,.exam-reference{background:white!important;color:#111!important;border-color:#aaa}.exam-question{break-inside:avoid;padding:16px;margin:12px 0}.exam-heading h3{font-size:13pt}.exam-question textarea,.exam-question input[type=text]{display:none}.exam-question label:not(.exam-option){display:none!important}.exam-options{display:flex}.exam-option{background:white;color:black}.print-answer-space{display:block;min-height:85px;border-bottom:1px dotted #888}.exam-question p{font-size:10pt}.exam-bonus{background:none}.exam-question .note{display:none}.print-practice .header,.print-practice main>*:not(#test){display:none!important}.print-practice #test{padding:0}.print-practice #practice-form[hidden]{display:block!important}.print-practice #practice-start{display:none!important}.print-practice .exam-intro{padding:14px}.print-practice .exam-intro .note{display:none}.print-practice .section-title h2{font-size:23pt}.print-practice .section-title{margin-bottom:16px}.challenge details{display:block}.challenge details>*{display:block}.challenge{break-inside:avoid}.challenge summary{font-size:11pt}}
