body.view-random-practice #randomPracticeView { display:block; }
#randomPracticeView { max-width:1040px; margin:0 auto; }
.random-practice-heading { display:flex; justify-content:space-between; align-items:start; gap:16px; margin-bottom:10px; }
.random-practice-heading h2 { margin:0; }
#randomPracticeDescription,.random-practice-help { color:var(--muted); line-height:1.6; }
#randomPracticeFields { display:grid; gap:20px; margin:22px 0; }
#randomPracticeFields fieldset { min-width:0; border:1px solid var(--line); border-radius:18px; background:var(--panel); padding:20px; margin:0; }
#randomPracticeFields legend { padding:0 8px; font-weight:700; }
.random-practice-scopes { display:flex; flex-wrap:wrap; gap:12px; }
.random-practice-check { display:flex; align-items:center; gap:12px; padding:14px; cursor:pointer; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.random-practice-check:has(input:checked) { border-color:var(--green); }
.random-practice-check input { width:20px; height:20px; margin:0; flex-shrink:0; accent-color:var(--green); }
.random-practice-check small { display:block; color:var(--muted); margin-top:4px; }
.random-practice-topic-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:14px; }
.random-practice-topic-list span { overflow-wrap:anywhere; }
.random-practice-all { padding:10px 18px; }
.random-practice-all[aria-pressed="true"] { border-color:var(--green); }
.random-practice-percentage { display:flex; align-items:center; gap:20px; }
.random-practice-percentage output { min-width:48px; font-weight:700; }
.random-practice-percentage input { width:100%; min-height:44px; accent-color:var(--green); }
.random-practice-footer { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:24px 0; }
#randomPracticeStatus { flex:1 1 220px; color:var(--muted); margin:0; }
#randomPracticeStart { min-height:50px; border-radius:16px; padding:12px 26px; color:#173d31; background:#a7e6b2; font-weight:650; }
#randomPracticeRetry { padding:10px 20px; }
#randomPracticeBack { padding:8px 16px; white-space:nowrap; }
#randomPracticeView :focus-visible { outline:3px solid var(--green); outline-offset:3px; }
@media(max-width:650px) { .random-practice-topic-list { grid-template-columns:1fr; } #randomPracticeStart { width:100%; } #randomPracticeFields fieldset {padding:16px;} }
#randomPracticeBack,#randomPracticeRetry,.random-practice-all { border-radius:12px; font-weight:650; }

.random-practice-heading a { display:inline-flex; align-items:center; min-height:44px; border:1px solid var(--line); background:var(--panel); color:var(--text); text-decoration:none; }
.random-practice-help { margin:0 0 12px; }
