/** * ProofSlide.tsx * Slides 3 & 4: Achievement Proof. * Hero metric (large and prominent), story detail, source context. * Used for both Proof 1 and Proof 2 slides. */ import React from 'react'; import type { SlideContent } from '../../schema/carouselSchema'; import type { Theme } from '../themes'; interface ProofSlideProps { slide: SlideContent; theme: Theme; } export function ProofSlide({ slide, theme }: ProofSlideProps): React.ReactElement { const { bgColor, accentColor, textColor, subtextColor, fontFamily, cardBg, borderColor, metricColor } = theme; const slideLabel = slide.slideNumber === 3 ? 'Signature Achievement' : 'Supporting Achievement'; return (
{/* Top accent bar */}
{/* Slide number */}
{String(slide.slideNumber).padStart(2, '0')}
{/* Label */}
{slideLabel}
{/* Hero metric — large and dominant */} {slide.metric && (
{slide.metric}
)} {/* Title — achievement summary */}

{slide.title}

{/* Body — detail/context */} {slide.body && (

{slide.body}

)} {/* Source context pill */} {slide.subtitle && (
{slide.subtitle}
)} {/* Bottom rule */}
); } export default ProofSlide;