#auto-practice { padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid var(--line); }
#auto-practice h2,#mistake-review h2 { margin:0; }
#auto-practice .panel-heading,#mistake-review .panel-heading { flex-wrap:wrap; gap:12px; }
.auto-question,.mistake-card { padding:20px; margin:16px 0; border:1px solid var(--line); border-radius:20px; background:rgba(var(--palette-rgb),.045); }
.practice-question-heading { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; color:var(--ink-soft); font-size:.8rem; }
.question-prompt { white-space:pre-wrap; font-size:1rem; line-height:1.8; color:var(--ink); }
.auto-question>.text-input { margin-bottom:12px; }
.answer-options { border:0; padding:0; margin:0 0 14px; display:grid; gap:8px; min-width:0; }
.answer-options label { display:flex; align-items:baseline; gap:12px; padding:12px; border-radius:12px; background:var(--surface); cursor:pointer; }
.answer-options label:has(input:checked) { outline:2px solid var(--accent); }
.answer-options input { flex:0 0 auto; }
.answer-feedback:not(:empty) { padding:16px; margin-top:14px; border-radius:14px; background:var(--accent-soft); animation:immersive-page-in .4s ease-out; }
.answer-feedback blockquote,.mistake-reference blockquote { margin:12px 0; padding-inline-start:12px; border-inline-start:2px solid var(--accent); white-space:pre-wrap; }
.expression-correction,.review-method { padding:14px 0; margin-bottom:18px; }
.expression-correction form,.mistake-plan form,.mistake-recall form,.manual-plan-fields { display:grid; gap:12px; padding-top:14px; }
.expression-correction label,.mistake-plan label { display:grid; gap:6px; }
#mistake-review { margin-bottom:24px; }
.mistake-card details { margin:14px 0; }
.mistake-card summary,.expression-correction summary,.review-method summary { cursor:pointer; }
.manual-plan-fields[hidden] { display:none; }
.mistake-card .text-input { min-width:0; width:100%; }
@media(max-width:550px){ .auto-question,.mistake-card { padding:14px; } .practice-question-heading .text-button { padding:4px 0; } }
