(function registerCrawlSummaryCards(global) {
  'use strict';

  function card(React, key, label, value, hint) {
    return React.createElement('article', { key: key, className: 'free-seo-summary-card' }, [
      React.createElement('strong', { key: 'value' }, value === undefined || value === null ? '0' : String(value)),
      React.createElement('span', { key: 'label' }, label),
      hint ? React.createElement('small', { key: 'hint' }, hint) : null
    ]);
  }

  function CrawlSummaryCards(props) {
    var React = global.React;
    var summary = props && props.summary || {};
    return React.createElement('section', { className: 'free-seo-summary-grid', 'aria-label': 'Technical crawl summary' }, [
      card(React, 'pages', 'Pages crawled', summary.pagesCrawled, 'Discovered: ' + (summary.pagesDiscovered || summary.pagesCrawled || 0)),
      card(React, 'score', 'Average technical score', summary.averageTechnicalScore, '0-100 deterministic score'),
      card(React, 'critical', 'Critical issues', summary.criticalIssues || summary.severityCounts && summary.severityCounts.critical, 'Fix first'),
      card(React, 'high', 'High issues', summary.highIssues || summary.severityCounts && summary.severityCounts.high, 'Important SEO risks'),
      card(React, 'schema', 'Schema gaps', summary.schemaIssues, 'Structured data opportunities'),
      card(React, 'broken', 'Broken internal links', summary.brokenInternalLinks, 'Internal link errors')
    ]);
  }

  global.FreeSeoCrawlSummaryCards = CrawlSummaryCards;
})(typeof window !== 'undefined' ? window : globalThis);
