.catalogue-control,.difficulty-control{gap:.55rem;display:grid}.catalogue-control>label,.difficulty-heading label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.76rem}.catalogue-control select,.catalogue-control input,.difficulty-range{box-sizing:border-box;width:100%}.catalogue-help{color:var(--muted);line-height:1.45}.topic-picker{border:0;min-width:0;padding:0}.topic-picker legend{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.15rem;font-size:.76rem}.catalogue-option{border:1px solid color-mix(in srgb,var(--line) 75%,transparent);background:color-mix(in srgb,var(--surface) 92%,transparent);border-radius:12px;align-items:flex-start;gap:.7rem;margin-top:.45rem;padding:.65rem .75rem;display:flex}.catalogue-option:has(input:checked){border-color:var(--gold,#d9aa55);box-shadow:0 0 0 2px color-mix(in srgb,var(--gold,#d9aa55) 20%,transparent)}.catalogue-option input{accent-color:var(--gold,#d9aa55);margin-top:.25rem}.catalogue-option span{gap:.15rem;display:grid}.catalogue-option small{color:var(--muted);line-height:1.35}.difficulty-heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.difficulty-heading span{gap:.15rem;display:grid}.difficulty-heading strong{font-size:1.15rem}.difficulty-heading small{color:var(--muted);text-align:right;max-width:22rem;line-height:1.35}.difficulty-track{touch-action:pan-y;padding:.75rem 0;position:relative}.difficulty-range{z-index:2;accent-color:var(--gold,#d9aa55);background:0 0;height:2rem;margin:0;position:relative}.difficulty-stops{pointer-events:none;justify-content:space-between;display:flex;position:absolute;inset:calc(50% - 5px) 0 auto}.difficulty-stops span{background:var(--surface,#fff);border:2px solid var(--gold,#d9aa55);box-sizing:border-box;border-radius:50%;width:10px;height:10px}.difficulty-stops span.selected{background:var(--gold,#d9aa55);width:16px;height:16px;box-shadow:0 0 0 4px color-mix(in srgb,var(--gold,#d9aa55) 22%,transparent);margin-top:-3px}.difficulty-labels{grid-template-columns:repeat(4,1fr);gap:.25rem;display:grid}.difficulty-labels button{color:var(--muted);font:inherit;background:0 0;border:0;border-radius:8px;padding:.35rem .1rem;font-size:.82rem}.difficulty-labels button.selected{color:var(--text);background:color-mix(in srgb,var(--gold,#d9aa55) 12%,transparent);font-weight:700}@media (prefers-reduced-motion:reduce){.difficulty-stops span{transition:none}}@media (max-width:600px){.difficulty-heading{display:grid}.difficulty-heading small{text-align:left}.catalogue-option{min-height:2.9rem}}
