/* Keep the existing colourful search design; make its controls and results usable. */
.sr-filter { min-height: 44px; }
.sr-filter[data-f="adv"].active,.sr-filter[data-f="ext1"].active { background: #6d28d9; }
.sr-filter[data-f="ext2"].active { background: #4338ca; }
.sr-filter[data-f="juniorMath"].active { background: #9f4960; }
.sr-filter[data-f="hms"].active { background: #0e4132; }
.sr-selects { display:flex; flex-wrap:wrap; gap:16px; margin:0 0 20px; }
.sr-selects label { display:flex; flex:1 1 180px; flex-direction:column; gap:6px; font-size:14px; font-weight:600; }
.sr-selects select { width:100%; min-height:44px; padding:8px 12px; border:1.5px solid #cbd5e1; border-radius:10px; background:white; color:#1e293b; font:inherit; }
.sr-row { flex-wrap:wrap; min-height:72px; }
.sr-row-info { flex:1 1 200px; }
.sr-row-title { white-space:normal; overflow-wrap:anywhere; line-height:1.5; }
.sr-row-sub { overflow-wrap:anywhere; line-height:1.5; }
.sr-badge { white-space:normal; max-width:100%; }
.sr-complete { color:#047857; font-size:12px; font-weight:600; }
.sr-row mark { background:#fef08a; color:#1e293b; border-radius:2px; }
.sr-more { width:100%; min-height:44px; margin-top:16px; padding:10px 18px; border:1.5px solid #4f46e5; border-radius:10px; background:white; color:#4338ca; font:inherit; cursor:pointer; }
.sr-start:not([hidden]),.sr-empty:not([hidden]) { display:block; }
.sr-clear { min-width:44px; min-height:44px; right:24px; }
.sr-search { padding-right:60px; }
:is(.sr-row,.sr-filter,.sr-more,.sr-clear,.sr-selects select):focus-visible { outline:3px solid #4338ca; outline-offset:3px; }
[hidden] { display:none !important; }
@media(max-width:480px) { .sr-row-info { flex-basis:100%; } .sr-hero { padding-top:32px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { transition:none !important; } }
