.course-practice{border:1px solid var(--line,#244037);border-radius:20px;padding:clamp(16px,3vw,28px);margin-bottom:24px;background:var(--surface,#0e2019);color:var(--text,#effaf4)}
.course-practice header p,.course-practice .practice-status{line-height:1.8}.practice-status:empty{display:none}.practice-status{padding:12px;border-inline-start:3px solid #55cd94}
.practice-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.practice-actions .btn{min-height:44px;white-space:normal}
.practice-editor-question,.practice-question{min-width:0;border:1px solid #577567;border-radius:14px;padding:16px;margin:18px 0}.practice-editor-question legend,.practice-question legend{font-weight:800;padding:0 8px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
.practice-editor-question label{display:grid;gap:8px;margin:12px 0}.practice-editor-question input,.practice-editor-question textarea,.practice-editor-question select{width:100%;max-width:100%;box-sizing:border-box;border:1px solid #577567;border-radius:10px;padding:12px;background:var(--bg,#07130f);color:inherit;font:inherit}.practice-editor-question textarea{resize:vertical}
.practice-options-editor{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.practice-choice{display:flex;align-items:flex-start;gap:12px;padding:16px;margin:10px 0;border:1px solid #577567;border-radius:12px;min-height:48px;cursor:pointer}.practice-choice:has(input:checked){border-color:#55cd94;background:#16945b20}.practice-choice input{flex:0 0 auto;width:20px;height:20px;accent-color:#168653}.practice-choice span{overflow-wrap:anywhere;white-space:pre-wrap}
.course-practice progress{width:100%;height:8px;accent-color:#41b980}.practice-review article{border-top:1px solid #577567;padding:16px 0;overflow-wrap:anywhere}.practice-review p,.practice-review h4{white-space:pre-wrap}.course-practice :focus-visible{outline:3px solid #55cd94;outline-offset:3px}
html[data-theme="light"] .course-practice,body.light .course-practice{background:#f4fbf7;color:#173f2c}html[data-theme="light"] .practice-editor-question input,html[data-theme="light"] .practice-editor-question textarea,html[data-theme="light"] .practice-editor-question select{background:#fff}
@media(max-width:600px){.practice-options-editor{grid-template-columns:1fr}.practice-actions>.btn{flex:1 1 140px}.practice-editor-question,.practice-question{padding:12px}}

.practice-import-file{display:block;max-width:100%;min-width:0;margin-top:8px;font:inherit}.practice-actions label.btn{display:block;max-width:100%;box-sizing:border-box}

.practice-backup-text{display:block;width:100%;box-sizing:border-box;margin-top:10px;resize:vertical;background:var(--bg,#07130f);color:inherit;border:1px solid #577567;border-radius:10px;padding:12px;direction:ltr;text-align:left}

.practice-session-settings{border:1px solid #577567;border-radius:14px;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:0}.practice-session-settings legend{padding:0 8px;font-weight:700}.practice-session-settings label{display:grid;gap:8px}.practice-session-settings select{min-height:44px;max-width:100%;border:1px solid #577567;background:var(--bg,#07130f);color:inherit;border-radius:8px;padding:8px;font:inherit}.practice-session-settings .practice-shuffle-label{display:flex;align-items:center;gap:10px;min-height:44px}.practice-shuffle-label input{width:20px;height:20px;accent-color:#168653}.practice-session-settings small{grid-column:1/-1;line-height:1.7}@media(max-width:600px){.practice-session-settings{grid-template-columns:1fr}}
