diff --git a/pitch-deck/app/pitch-print/[versionId]/_components/PrintIntroSlides.tsx b/pitch-deck/app/pitch-print/[versionId]/_components/PrintIntroSlides.tsx index eb531c7..f0f095e 100644 --- a/pitch-deck/app/pitch-print/[versionId]/_components/PrintIntroSlides.tsx +++ b/pitch-deck/app/pitch-print/[versionId]/_components/PrintIntroSlides.tsx @@ -1,5 +1,5 @@ import { Language, PitchCompany, PitchFunding, PitchMarket } from '@/lib/types' -import { Page, KpiRow, TwoCol, ThreeCol, FourCol, Panel, Bullets, Callout, COLORS, Divider } from './PrintLayout' +import { Page, KpiRow, TwoCol, ThreeCol, FourCol, Panel, Bullets, Callout, COLORS, Divider, ComplAI } from './PrintLayout' interface SlideBase { lang: Language; pageNum: number; totalPages: number; versionName: string } @@ -8,7 +8,7 @@ interface SlideBase { lang: Language; pageNum: number; totalPages: number; versi export function PrintCoverPage({ company, funding, lang, versionName }: { company: PitchCompany; funding: PitchFunding; lang: Language; versionName: string }) { const de = lang === 'de' const instrument = funding?.instrument || 'Pre-Seed' - const amount = funding?.amount_eur || 1_000_000 + const amount = funding?.amount_eur || 400_000 const tagline = de ? (company?.tagline_de || 'Kontinuierliche Compliance für europäische Unternehmen.') : (company?.tagline_en || 'Continuous compliance for European companies.') const amountLabel = amount >= 1_000_000 ? '€' + (amount / 1_000_000).toFixed(1).replace(/\.0$/, '') + 'M' @@ -128,7 +128,7 @@ export function PrintExecSummaryPage1({ market, lang, pageNum, totalPages, versi const fmt = (v?: number) => v ? (v >= 1e9 ? `${(v / 1e9).toFixed(1).replace('.', ',')} Mrd.` : `${(v / 1e6).toFixed(0)} Mio.`) : '—' return ( - + BreakPilot } subtitle={de ? 'DSGVO-konforme KI-Plattform, kontinuierliches Sicherheitsscanning und intelligente Compliance-Automatisierung. 25.000+ atomare Prüfaspekte, 380+ Regularien, EU-souverän gehostet.' : 'GDPR-compliant AI platform, continuous security scanning and intelligent compliance automation. 25,000+ atomic audit aspects, 380+ regulations, EU-sovereign hosted.'} pageNum={pageNum} totalPages={totalPages} versionName={versionName}> + {prefix && <>BreakPilot } + ComplAI + + ) +} + /* ===== PAGE WRAPPER ===== */ interface PageProps { kicker: string // "03" section: string // "DAS PROBLEM" - title: string // "Deutsche Unternehmen wollen KI ..." - subtitle?: string + title: React.ReactNode // string or JSX (e.g. usage) + subtitle?: React.ReactNode pageNum: number totalPages: number versionName: string @@ -236,12 +252,23 @@ export function Bullets({ items, dense, tone = 'neutral' }: BulletsProps) { : tone === 'negative' ? COLORS.red600 : tone === 'accent' ? COLORS.indigo600 : COLORS.slate500 + /** + * Em-dash marker uses display:flex to keep the rule vertically centered on + * the first line of text — previously the `top: 4pt` absolute positioning + * drifted relative to font size (looked off-center on the rendered PDF). + * The marker now sits in a fixed-width column at the line height of the text. + */ + const fontSize = dense ? '8.5pt' : '9pt' + const lineH = 1.5 return (
    {items.map((item, i) => ( -
  • - - {item} +
  • + {/* The dash sits on the first line: line-height pad above + 0.5pt rule */} + + + + {item}
  • ))}
diff --git a/pitch-deck/app/pitch-print/[versionId]/_components/PrintMarketSlides.tsx b/pitch-deck/app/pitch-print/[versionId]/_components/PrintMarketSlides.tsx index 0c5782e..5385cd7 100644 --- a/pitch-deck/app/pitch-print/[versionId]/_components/PrintMarketSlides.tsx +++ b/pitch-deck/app/pitch-print/[versionId]/_components/PrintMarketSlides.tsx @@ -238,7 +238,7 @@ function formatFunding(amount: number): string { export function PrintTheAskPage({ funding, lang, pageNum, totalPages, versionName }: SlideBase & { funding: PitchFunding }) { const de = lang === 'de' - const amount = funding?.amount_eur || 1_000_000 + const amount = funding?.amount_eur || 400_000 const instrument = funding?.instrument || (de ? 'Wandeldarlehen' : 'Convertible Loan') const isConvertible = (instrument || '').toLowerCase().includes('wandeldarlehen') || (instrument || '').toLowerCase().includes('convertible') ||