(function registerFreeSeoEvidenceApplyPreview(global) {
  const React = global.React;
  if (!React) return;

  function EvidenceApplyPreview(props) {
    const record = props.record || {};
    const recommendations = record.recommendations || [];
    const applyResult = record.applyResult || null;
    return <section className="free-seo-card">
      <div className="free-seo-card-header"><div><h3>Apply preview</h3><p>Applying creates local dashboard evidence summaries and recommended actions. No provider API calls are made.</p></div>{props.onApply && <button type="button" onClick={props.onApply} disabled={props.loading || !record.normalizedRowCount}>{props.loading ? 'Applying...' : 'Apply evidence'}</button>}</div>
      {applyResult && <div className="free-seo-success">Applied {applyResult.summary && applyResult.summary.rowCount || record.normalizedRowCount || 0} rows. Artifact: {applyResult.artifactId || 'summary only'}.</div>}
      {recommendations.length ? <div className="free-seo-option-list">{recommendations.map((rec) => <article key={rec.id} className={`priority-${rec.priority || 'medium'}`}><strong>{rec.title}</strong><small>{rec.priority} · {rec.linkedFeature || 'manual review'}</small><p>{rec.detail}</p></article>)}</div> : <p>No recommended actions yet.</p>}
    </section>;
  }

  global.FreeSeoEvidenceApplyPreview = EvidenceApplyPreview;
})(window);
