@threatcaptain/tc-reports 0.2.21 → 0.2.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -51740,9 +51740,9 @@ const MITRETacticsOverview = ({
51740
51740
  setSelectedTactic(null);
51741
51741
  };
51742
51742
  return /* @__PURE__ */ jsxs("div", { className: "bg-gray-50 p-4 rounded-lg", children: [
51743
- /* @__PURE__ */ jsx("h4", { className: "font-medium text-sm mb-3", children: "MITRE ATT&CK Kill Chain Coverage - 4 Attack Steps" }),
51744
- /* @__PURE__ */ jsx("p", { className: "text-xs text-gray-500 mb-4", children: "Click on any step to explore individual tactics" }),
51745
- /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 md:grid-cols-2 xl:grid-cols-4 gap-4 mb-6", children: ATTACK_STEPS.map((step) => {
51743
+ /* @__PURE__ */ jsx("h4", { className: "font-medium text-lg mb-3", children: "MITRE ATT&CK Kill Chain Coverage - 4 Attack Steps" }),
51744
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-gray-500 mb-4 print:hidden", children: "Click on any step to explore individual tactics" }),
51745
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 md:grid-cols-2 xl:grid-cols-4 print:grid-cols-2 gap-4 mb-6", children: ATTACK_STEPS.map((step) => {
51746
51746
  var _a2;
51747
51747
  const stepData = (_a2 = breachData.attackSteps) == null ? void 0 : _a2.find(
51748
51748
  (s2) => s2.stepId === step.stepId
@@ -51811,10 +51811,9 @@ const MITRETacticsOverview = ({
51811
51811
  "Individual Tactics for",
51812
51812
  " ",
51813
51813
  (_a = ATTACK_STEPS.find((s2) => s2.stepId === selectedStep)) == null ? void 0 : _a.stepName,
51814
- " ",
51815
- "(Click to view details)"
51814
+ /* @__PURE__ */ jsx("span", { className: "print:hidden", children: "(Click to view details)" })
51816
51815
  ] }),
51817
- /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 lg:grid-cols-4 gap-2", children: breachData.mitrePhases.filter((phase) => {
51816
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 lg:grid-cols-4 print:grid-cols-4 gap-2", children: breachData.mitrePhases.filter((phase) => {
51818
51817
  const step = getTacticStep(phase.phase);
51819
51818
  return (step == null ? void 0 : step.stepId) === selectedStep;
51820
51819
  }).sort((a2, b) => {
@@ -51948,7 +51947,7 @@ const BreachLikelihood = ({ reportData }) => {
51948
51947
  /* @__PURE__ */ jsx("h1", { className: "text-3xl font-bold text-slate-900", children: "Breach Likelihood Assessment" }),
51949
51948
  /* @__PURE__ */ jsx("p", { className: "text-slate-600 text-base", children: "Analyzing probability and impact of security incidents" })
51950
51949
  ] }),
51951
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-4 mb-4", children: [
51950
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 print:grid-cols-1 gap-4 mb-4", children: [
51952
51951
  /* @__PURE__ */ jsx("div", { className: "flex flex-col items-center p-4 text-center", children: breachData ? /* @__PURE__ */ jsx(
51953
51952
  MitreAttack,
51954
51953
  {
@@ -51956,7 +51955,7 @@ const BreachLikelihood = ({ reportData }) => {
51956
51955
  overallLikelihood: attackLikelihood
51957
51956
  }
51958
51957
  ) : /* @__PURE__ */ jsx("p", { children: "Getting breach data..." }) }),
51959
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col justify-center gap-4", children: [
51958
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col justify-center print:justify-normal gap-4", children: [
51960
51959
  /* @__PURE__ */ jsxs("div", { className: "flex items-center p-4 rounded-md bg-slate-50", children: [
51961
51960
  /* @__PURE__ */ jsx(CheckCircle, { className: "w-6 h-6 mr-4 text-green-600" }),
51962
51961
  /* @__PURE__ */ jsxs("span", { children: [
@@ -51977,28 +51976,9 @@ const BreachLikelihood = ({ reportData }) => {
51977
51976
  /* @__PURE__ */ jsx("span", { children: "Smart investments could reduce your risk to under $100,000" })
51978
51977
  ] })
51979
51978
  ] })
51980
- ] }),
51981
- /* @__PURE__ */ jsxs("div", { className: "p-3", children: [
51982
- /* @__PURE__ */ jsxs("div", { className: "flex items-center mb-2", children: [
51983
- /* @__PURE__ */ jsx(FileText, { className: "w-4 h-4 text-slate-600 mr-1" }),
51984
- /* @__PURE__ */ jsxs("h4", { className: "text-lg font-semibold text-slate-700 italic", children: [
51985
- "Your Current Estimated Risk = $",
51986
- realRiskExposure.toLocaleString()
51987
- ] })
51988
- ] }),
51989
- /* @__PURE__ */ jsxs("ul", { className: "text-slate-600 space-y-1", children: [
51990
- /* @__PURE__ */ jsx("li", { children: "• Cyber attacks increased 38% globally in 2023 compared to 2022" }),
51991
- /* @__PURE__ */ jsx("li", { children: "• Small businesses experience a cyberattack every 39 seconds on average" }),
51992
- /* @__PURE__ */ jsx("li", { children: "• 60% of small companies go out of business within 6 months of a cyber attack" }),
51993
- /* @__PURE__ */ jsx("li", { children: "• The average cost of cybercrime for businesses globally rose to $4.88 million in 2024" })
51994
- ] })
51995
51979
  ] })
51996
51980
  ] }),
51997
- /* @__PURE__ */ jsxs("section", { className: "report-page space-y-6 border-t border-slate-200 pt-8", children: [
51998
- /* @__PURE__ */ jsxs("div", { className: "text-center", children: [
51999
- /* @__PURE__ */ jsx("h2", { className: "text-2xl font-bold text-slate-900 mb-2", children: "Understanding Your Numbers" }),
52000
- /* @__PURE__ */ jsx("p", { className: "text-slate-600", children: "How We Calculate Your Risk" })
52001
- ] }),
51981
+ /* @__PURE__ */ jsxs("section", { className: "report-page space-y-6 border-b border-slate-200 pt-8", children: [
52002
51982
  /* @__PURE__ */ jsx(
52003
51983
  MITRETacticsOverview,
52004
51984
  {
@@ -52008,6 +51988,25 @@ const BreachLikelihood = ({ reportData }) => {
52008
51988
  onTacticClick: setSelectedTactic
52009
51989
  }
52010
51990
  ),
51991
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center mb-2", children: [
51992
+ /* @__PURE__ */ jsx(FileText, { className: "w-4 h-4 text-slate-600 mr-1" }),
51993
+ /* @__PURE__ */ jsxs("h4", { className: "text-lg font-semibold text-slate-700 italic", children: [
51994
+ "Your Current Estimated Risk = $",
51995
+ realRiskExposure.toLocaleString()
51996
+ ] })
51997
+ ] }),
51998
+ /* @__PURE__ */ jsxs("ul", { className: "text-slate-600 space-y-1", children: [
51999
+ /* @__PURE__ */ jsx("li", { children: "• Cyber attacks increased 38% globally in 2023 compared to 2022" }),
52000
+ /* @__PURE__ */ jsx("li", { children: "• Small businesses experience a cyberattack every 39 seconds on average" }),
52001
+ /* @__PURE__ */ jsx("li", { children: "• 60% of small companies go out of business within 6 months of a cyber attack" }),
52002
+ /* @__PURE__ */ jsx("li", { children: "• The average cost of cybercrime for businesses globally rose to $4.88 million in 2024" })
52003
+ ] })
52004
+ ] }),
52005
+ /* @__PURE__ */ jsxs("section", { className: "report-page space-y-6 border-b border-slate-200 pt-8", children: [
52006
+ /* @__PURE__ */ jsxs("div", { className: "text-center", children: [
52007
+ /* @__PURE__ */ jsx("h2", { className: "text-2xl font-bold text-slate-900 mb-2", children: "Understanding Your Numbers" }),
52008
+ /* @__PURE__ */ jsx("p", { className: "text-slate-600", children: "How We Calculate Your Risk" })
52009
+ ] }),
52011
52010
  /* @__PURE__ */ jsxs("div", { className: "bg-slate-50 rounded-lg p-6 mb-6", children: [
52012
52011
  /* @__PURE__ */ jsx("h3", { className: "text-xl font-bold mb-4", children: "Our Approach" }),
52013
52012
  /* @__PURE__ */ jsx("p", { className: "text-sm text-slate-700", children: "We use the same data sources that insurance companies and security professionals rely on. Our calculations are conservative - real attack costs are often higher than our estimates." })
@@ -52940,7 +52939,7 @@ const InsuranceImpactCards = ({
52940
52939
  if (score2 >= 450) return "Detailed review, additional requirements";
52941
52940
  return "Extensive review, may require risk mitigation plan";
52942
52941
  };
52943
- return /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-4", children: [
52942
+ return /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-3 print:grid-cols-3 gap-4", children: [
52944
52943
  /* @__PURE__ */ jsx(Card, { className: getCardClasses(score), children: /* @__PURE__ */ jsx(CardContent, { className: "pt-4", children: /* @__PURE__ */ jsxs("div", { className: "flex items-start space-x-3", children: [
52945
52944
  /* @__PURE__ */ jsx(Shield, { className: `h-5 w-5 mt-0.5 ${getIconClasses(score)}` }),
52946
52945
  /* @__PURE__ */ jsxs("div", { children: [
@@ -52974,74 +52973,72 @@ const InsuranceHealthScore = ({ reportData }) => {
52974
52973
  bgColor: "bg-blue-600"
52975
52974
  } : scoreCategory;
52976
52975
  return /* @__PURE__ */ jsxs(Fragment, { children: [
52977
- /* @__PURE__ */ jsx(
52976
+ /* @__PURE__ */ jsxs(
52978
52977
  "section",
52979
52978
  {
52980
52979
  id: "insurance-health-score",
52981
52980
  className: "report-page text-center space-y-6 pb-8 border-b border-slate-200",
52982
- children: /* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
52981
+ children: [
52983
52982
  /* @__PURE__ */ jsx("h1", { className: "text-4xl font-bold text-slate-900", children: "Cyber Insurance Health Score Report" }),
52984
- /* @__PURE__ */ jsx("p", { className: "text-xl text-slate-600", children: "Understanding How Insurance Companies View Your Organization" })
52985
- ] })
52986
- }
52987
- ),
52988
- /* @__PURE__ */ jsxs("section", { className: "report-page space-y-6", children: [
52989
- /* @__PURE__ */ jsxs(
52990
- "div",
52991
- {
52992
- className: `rounded-lg p-6 text-white text-center ${scoreCategoryData.bgColor}`,
52993
- children: [
52994
- /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center space-x-2 mb-2", children: [
52995
- /* @__PURE__ */ jsx("div", { className: "w-12 h-12 p-2 rounded-full bg-white/20 flex items-center justify-center", children: /* @__PURE__ */ jsx("span", { className: "text-lg font-bold", children: score }) }),
52996
- /* @__PURE__ */ jsx("h3", { className: "text-2xl font-bold", children: "INSURANCE HEALTH SCORE" })
52997
- ] }),
52998
- /* @__PURE__ */ jsx("p", { className: "text-4xl font-bold", children: `${score}/850` }),
52999
- /* @__PURE__ */ jsx("p", { className: "text-lg font-semibold mt-2", children: scoreCategoryData.category }),
53000
- /* @__PURE__ */ jsx("p", { className: "text-sm opacity-75 mt-1", children: scoreCategoryData.description })
53001
- ]
53002
- }
53003
- ),
53004
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6", children: [
53005
- /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
53006
- /* @__PURE__ */ jsx("h4", { className: "text-lg font-semibold text-slate-900", children: "Coverage Impact" }),
53007
- /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
53008
- /* @__PURE__ */ jsxs("div", { className: "flex items-start space-x-2", children: [
53009
- /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-blue-500 mt-1" }),
53010
- /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("p", { className: "font-medium text-sm", children: "Premium Rates" }) })
53011
- ] }),
53012
- /* @__PURE__ */ jsxs("div", { className: "flex items-start space-x-2", children: [
53013
- /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-blue-500 mt-1" }),
53014
- /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("p", { className: "font-medium text-sm", children: "Coverage Availability" }) })
53015
- ] }),
53016
- /* @__PURE__ */ jsxs("div", { className: "flex items-start space-x-2", children: [
53017
- /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-blue-500 mt-1" }),
53018
- /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("p", { className: "font-medium text-sm", children: "Risk Evaluation" }) })
53019
- ] })
53020
- ] })
53021
- ] }),
53022
- /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
53023
- /* @__PURE__ */ jsx("h4", { className: "text-lg font-semibold text-slate-900", children: "Things to Consider" }),
53024
- /* @__PURE__ */ jsxs("div", { className: "space-y-1", children: [
53025
- /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2", children: [
53026
- /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-amber-500" }),
53027
- /* @__PURE__ */ jsx("span", { className: "text-sm", children: "Cyber insurance rates are directly tied to your security posture" })
53028
- ] }),
53029
- /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2", children: [
53030
- /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-amber-500" }),
53031
- /* @__PURE__ */ jsx("span", { className: "text-sm", children: "Insurers are increasingly requiring security controls" })
52983
+ /* @__PURE__ */ jsx("p", { className: "text-xl text-slate-600", children: "Understanding How Insurance Companies View Your Organization" }),
52984
+ /* @__PURE__ */ jsxs(
52985
+ "div",
52986
+ {
52987
+ className: `rounded-lg p-6 text-white text-center ${scoreCategoryData.bgColor}`,
52988
+ children: [
52989
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center space-x-2 mb-2", children: [
52990
+ /* @__PURE__ */ jsx("div", { className: "w-12 h-12 p-2 rounded-full bg-white/20 flex items-center justify-center", children: /* @__PURE__ */ jsx("span", { className: "text-lg font-bold", children: score }) }),
52991
+ /* @__PURE__ */ jsx("h3", { className: "text-2xl font-bold", children: "INSURANCE HEALTH SCORE" })
52992
+ ] }),
52993
+ /* @__PURE__ */ jsx("p", { className: "text-4xl font-bold", children: `${score}/850` }),
52994
+ /* @__PURE__ */ jsx("p", { className: "text-lg font-semibold mt-2", children: scoreCategoryData.category }),
52995
+ /* @__PURE__ */ jsx("p", { className: "text-sm opacity-75 mt-1", children: scoreCategoryData.description })
52996
+ ]
52997
+ }
52998
+ ),
52999
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 print:grid-cols-2 gap-6", children: [
53000
+ /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
53001
+ /* @__PURE__ */ jsx("h4", { className: "text-lg font-semibold text-slate-900", children: "Coverage Impact" }),
53002
+ /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
53003
+ /* @__PURE__ */ jsxs("div", { className: "flex items-start space-x-2", children: [
53004
+ /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-blue-500 mt-1" }),
53005
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("p", { className: "font-medium text-sm", children: "Premium Rates" }) })
53006
+ ] }),
53007
+ /* @__PURE__ */ jsxs("div", { className: "flex items-start space-x-2", children: [
53008
+ /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-blue-500 mt-1" }),
53009
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("p", { className: "font-medium text-sm", children: "Coverage Availability" }) })
53010
+ ] }),
53011
+ /* @__PURE__ */ jsxs("div", { className: "flex items-start space-x-2", children: [
53012
+ /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-blue-500 mt-1" }),
53013
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("p", { className: "font-medium text-sm", children: "Risk Evaluation" }) })
53014
+ ] })
53015
+ ] })
53032
53016
  ] }),
53033
- /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2", children: [
53034
- /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-amber-500" }),
53035
- /* @__PURE__ */ jsx("span", { className: "text-sm", children: "Claims approval depends on documented security measures" })
53017
+ /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
53018
+ /* @__PURE__ */ jsx("h4", { className: "text-lg font-semibold text-slate-900", children: "Things to Consider" }),
53019
+ /* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
53020
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2", children: [
53021
+ /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-amber-500" }),
53022
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-left", children: "Cyber insurance rates are directly tied to your security posture" })
53023
+ ] }),
53024
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2", children: [
53025
+ /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-amber-500" }),
53026
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-left", children: "Insurers are increasingly requiring security controls" })
53027
+ ] }),
53028
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2", children: [
53029
+ /* @__PURE__ */ jsx(AlertTriangle, { className: "w-4 h-4 text-amber-500" }),
53030
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-left", children: "Claims approval depends on documented security measures" })
53031
+ ] })
53032
+ ] })
53036
53033
  ] })
53037
53034
  ] })
53038
- ] })
53039
- ] })
53040
- ] }),
53041
- /* @__PURE__ */ jsxs("section", { className: "report-page space-y-6 border-t border-slate-200 pt-8", children: [
53035
+ ]
53036
+ }
53037
+ ),
53038
+ /* @__PURE__ */ jsxs("section", { className: "report-page space-y-6 border-b border-slate-200 pt-8", children: [
53042
53039
  /* @__PURE__ */ jsx("h2", { className: "text-2xl font-bold text-slate-900 mb-2", children: "Your Insurance Health Score Results" }),
53043
53040
  /* @__PURE__ */ jsx("p", { className: "text-slate-600", children: "Assessment results and category breakdown" }),
53044
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-8", children: [
53041
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 print:grid-cols-2 gap-8", children: [
53045
53042
  /* @__PURE__ */ jsx("div", { className: "flex flex-col items-center space-y-4", children: /* @__PURE__ */ jsx(InsuranceHealthGauge, { score, size: 320 }) }),
53046
53043
  /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
53047
53044
  /* @__PURE__ */ jsx("h4", { className: "font-semibold text-slate-900", children: "Security Category Scores" }),
@@ -53100,7 +53097,7 @@ const InsuranceHealthScore = ({ reportData }) => {
53100
53097
  ] }),
53101
53098
  /* @__PURE__ */ jsx(InsuranceImpactCards, { score })
53102
53099
  ] }),
53103
- /* @__PURE__ */ jsxs("section", { className: "report-page space-y-6 border-t border-slate-200 pt-8", children: [
53100
+ /* @__PURE__ */ jsxs("section", { className: "report-page space-y-6 border-b border-slate-200 pt-8", children: [
53104
53101
  /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-3", children: [
53105
53102
  /* @__PURE__ */ jsx("div", { className: "w-8 h-8 bg-blue-600 rounded-lg flex items-center justify-center", children: /* @__PURE__ */ jsx("span", { className: "text-white text-lg", children: "?" }) }),
53106
53103
  /* @__PURE__ */ jsxs("div", { children: [
@@ -53165,7 +53162,7 @@ const InsuranceHealthScore = ({ reportData }) => {
53165
53162
  ] })
53166
53163
  ] })
53167
53164
  ] }),
53168
- /* @__PURE__ */ jsx("section", { className: "report-page space-y-6 border-t border-slate-200 pt-8", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 print:grid-cols-2 gap-6", children: [
53165
+ /* @__PURE__ */ jsx("section", { className: "report-page space-y-6 pt-8", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 print:grid-cols-2 gap-6", children: [
53169
53166
  /* @__PURE__ */ jsxs("div", { children: [
53170
53167
  /* @__PURE__ */ jsx("h4", { className: "font-semibold text-green-600 mb-3", children: "What This Report IS:" }),
53171
53168
  /* @__PURE__ */ jsxs("ul", { className: "text-slate-700 space-y-2 text-sm", children: [
@@ -53251,7 +53248,7 @@ const ReportBuilder = ({
53251
53248
  id: "print-report",
53252
53249
  className: "report-wrapper max-w-4xl mx-auto bg-white p-8 space-y-8 print:font-sans",
53253
53250
  children: [
53254
- /* @__PURE__ */ jsxs("section", { className: "report-page", children: [
53251
+ /* @__PURE__ */ jsxs("section", { className: "report-page flex flex-col justify-center h-full print:mt-24 print:gap-8", children: [
53255
53252
  /* @__PURE__ */ jsx("figure", { className: "bg-slate-200 max-w-40 print:max-w-40 flex object-contain rounded-lg items-center justify-center mx-auto", children: mspInfo.company_logo ? /* @__PURE__ */ jsx(
53256
53253
  "img",
53257
53254
  {
@@ -53278,21 +53275,23 @@ const ReportBuilder = ({
53278
53275
  /* @__PURE__ */ jsx("span", { className: "text-slate-900", children: (/* @__PURE__ */ new Date()).toLocaleDateString() })
53279
53276
  ] })
53280
53277
  ] }),
53281
- /* @__PURE__ */ jsx("h1", { className: "text-2xl font-bold text-slate-900 text-left mb-2", children: "Executive Summary" }),
53282
- /* @__PURE__ */ jsx("h3", { className: "text-base font-semibold text-slate-900", children: "Why This Assessment Matters" }),
53283
- editExecutiveSummary ? /* @__PURE__ */ jsxs(Fragment, { children: [
53284
- /* @__PURE__ */ jsx(
53285
- Textarea,
53286
- {
53287
- value: displayExecutiveSummary(clientData),
53288
- onChange: (e) => onConfigChange("executiveSummary", e.target.value),
53289
- placeholder: "Executive summary content...",
53290
- rows: 6,
53291
- className: "resize-none"
53292
- }
53293
- ),
53294
- /* @__PURE__ */ jsx(Button$1, { onClick: () => setEditExecutiveSummary(false), children: "Save" })
53295
- ] }) : /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("p", { className: "text-slate-700 leading-relaxed whitespace-pre-line text-sm", children: displayExecutiveSummary(clientData) }) })
53278
+ /* @__PURE__ */ jsxs("div", { className: "border-t border-slate-200 mt-6 pt-6", children: [
53279
+ /* @__PURE__ */ jsx("h1", { className: "text-2xl font-bold text-slate-900 text-left mb-2", children: "Executive Summary" }),
53280
+ /* @__PURE__ */ jsx("h3", { className: "text-base font-semibold text-slate-900", children: "Why This Assessment Matters" }),
53281
+ editExecutiveSummary ? /* @__PURE__ */ jsxs(Fragment, { children: [
53282
+ /* @__PURE__ */ jsx(
53283
+ Textarea,
53284
+ {
53285
+ value: displayExecutiveSummary(clientData),
53286
+ onChange: (e) => onConfigChange("executiveSummary", e.target.value),
53287
+ placeholder: "Executive summary content...",
53288
+ rows: 6,
53289
+ className: "resize-none"
53290
+ }
53291
+ ),
53292
+ /* @__PURE__ */ jsx(Button$1, { onClick: () => setEditExecutiveSummary(false), children: "Save" })
53293
+ ] }) : /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("p", { className: "text-slate-700 leading-relaxed whitespace-pre-line text-sm", children: displayExecutiveSummary(clientData) }) })
53294
+ ] })
53296
53295
  ] }),
53297
53296
  showFinancialImpact && /* @__PURE__ */ jsx(Fragment, { children: financialSimulationData && Object.keys(financialSimulationData).length > 0 ? /* @__PURE__ */ jsx(
53298
53297
  FinancialImpact,