(function () {
  'use strict';
  function CoveragePage() {
    const rows = window.Coverage.rows();
    const labels = { missing: 'חסר מודול ייעודי', partial: 'כיסוי חלקי', 'needs-review': 'קיים חומר — נדרשת בדיקת כיסוי' };
    return <section className="comparison-workspace">
      <h1>מפת כיסוי ובקרת איכות</h1>
      <div className="callout callout--warn">
        <strong>המערך עדיין אינו הכשרה רשמית מאושרת.</strong> בטבלה נכללים {rows.length} איברים ואזורים עיקריים. קיום מודול אינו מוכיח כיסוי של כל מחלה. לפני אישור נדרשים 2–3 נבדקי ביקורת מתועדים, מספר נבדקים בכל פתולוגיה, בדיקת סדרות ודוחות וחתימת בודק מוסמך.
      </div>
      <p>מספרי הנבדקים הם של המודולים המקושרים, שעשויים לכלול גם איברים סמוכים. אין להסיק מהם שכל הפתולוגיות המפורטות כבר מודגמות. ״מתנדב בריא״ מציין הגדרה של מקור הנתונים, ולא פענוח מקומי המאשר כל חתך.</p>
      <div className="table-scroll"><table className="report-table">
        <thead><tr><th>איבר / אזור</th><th>כיסוי</th><th>נבדקי ביקורת / מתוכם מתנדבים בריאים</th><th>נבדקי מחלה במודולים</th><th>נושאים שיש להשלים או לאמת</th><th>חומר קיים</th></tr></thead>
        <tbody>{rows.map(row => <tr key={row.id}>
          <td>{row.name}</td><td>{labels[row.status]}<br />אישור מקצועי: ממתין</td>
          <td>{row.normalSubjects} / {row.healthyVolunteers}</td><td>{row.diseaseSubjects}</td>
          <td>{row.pathologyTargets.join(' · ')}</td>
          <td>{row.regions.map(region => <p key={region.id}><a href={`#lesson/${encodeURIComponent(region.lessons[0].id)}`}>{region.title}</a></p>)}</td>
        </tr>)}</tbody>
      </table></div>
      <a href="docs/clinical-review.md" target="_blank" rel="noopener noreferrer">תיק בקרת התוכן והניקוד — ממצאים, מקורות ובדיקות שנותרו</a>
    </section>;
  }
  window.CoveragePage = CoveragePage;
})();
