
.sfr-form{margin:1rem 0;padding:1rem;background:#faf7fb;border:1px solid #eee}
.sfr-field{margin:1rem 0}
.sfr-grid{display:flex;flex-wrap:wrap;gap:.5rem}
.sfr-chip{display:inline-flex;align-items:center;padding:.3rem .6rem;border:1px solid #ddd;border-radius:1rem;background:#fff;cursor:pointer}
.sfr-chip input{margin-right:.35rem}
.sfr-btn{padding:.5rem 1rem;background:#f06292;color:#fff;border:none;border-radius:.25rem;cursor:pointer}
.sfr-clear{margin-left:.5rem}
.sfr-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:1rem}
.sfr-card{border:1px solid #eee;padding:.5rem;background:#fff}
.sfr-ttl{font-size:.95rem;margin:.5rem 0}
.sfr-pager{margin-top:1rem;text-align:center}
.sfr-debug{padding:.75rem;background:#111;color:#9ef;overflow:auto}


/* Phase 2 UI (RC2) */
.sfr-sort { display:flex; align-items:center; gap:.75rem; margin:.5rem 0 1rem; font-size:.9rem; }
.sfr-match-chips { display:flex; flex-wrap:wrap; gap:.35rem; margin:.35rem 0 .5rem; }
.sfr-chip.is-reason { display:inline-block; padding:.15rem .5rem; border-radius:999px; font-size:.75rem; line-height:1.6; border:1px solid rgba(0,0,0,.15); background: rgba(0,0,0,.03); }
.sfr-selected { display:flex; flex-direction:column; gap:.4rem; margin:.5rem 0 .75rem; }
.sfr-selected-row { display:flex; align-items:center; flex-wrap:wrap; gap:.35rem .5rem; }
.sfr-chip.is-selected { background: rgba(0,128,255,.06); border:1px solid rgba(0,128,255,.25); position:relative; padding-right:1.4rem; }
.sfr-chip.is-selected .sfr-chip-exclude { position:absolute; right:.25rem; top:50%; transform:translateY(-50%); border:none; background:transparent; cursor:pointer; font-weight:bold; line-height:1; }
.sfr-chip.is-excluded { background: rgba(255,0,0,.06); border:1px solid rgba(255,0,0,.25); }
