PageSourceSearch

https://scalingcfo.lovable.app/assets/FounderHireROI-BTLuHje4.js

js scalingcfo.lovable.app collected 2026-10-03 03:46:20 UTC 40,042 bytes, 11 lines download raw bytes

1import{c as Re,u as Ve,r as n,p as Qe,s as y,j as e,B as r,L as M,Q as Ke,I as p,C as Je,q as Xe}from"./index-CH1aB7Jc.js";import{T as P}from"./textarea-BJgTVKoS.js";import{C as g}from"./card-nOw3qIye.js";import{E as Ze}from"./jspdf.es.min-C6yFD8bK.js";import{A as be,a as je,b as Ne,c as ge,d as fe,e as ve,f as ye,g as Ce}from"./alert-dialog-BK0pSd22.js";import{A as z}from"./arrow-left-Ds2osJOu.js";import{L as R}from"./lock-iMYnfAdS.js";import{D as X}from"./download-B2VD89TQ.js";import{P as we}from"./pencil-gRHAE1RY.js";import{P as ke}from"./plus-CyatsDGv.js";import{E as es}from"./eye-C2ym_SIt.js";import{A as L}from"./arrow-right-BAcpXN4R.js";import{C as ss}from"./circle-help-3_uWO8Q2.js";import{C as B}from"./circle-check-big-CSttohIq.js";import{E as ts}from"./external-link-BIwwqjxv.js";import{T as Ae}from"./triangle-alert-BxUguvpS.js";import{C as Fe}from"./circle-x-DRItXrRw.js";import{D as as}from"./dollar-sign-dtLDiWKu.js";import"./index-gEQcrcc0.js";/**
2 * @license lucide-react v0.462.0 - ISC
3 *
4 * This source code is licensed under the ISC license.
5 * See the LICENSE file in the root directory of this source tree.
6 */const ls=Re("LockOpen",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 9.9-1",key:"1mm8w8"}]]);/**
7 * @license lucide-react v0.462.0 - ISC
8 *
9 * This source code is licensed under the ISC license.
10 * See the LICENSE file in the root directory of this source tree.
11 */const rs=Re("ShieldAlert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]),_e={role:"",salary:0,overheadMultiplier:30,startDate:"",hireType:null,tasks:"",thirtyDays:"",sixtyDays:"",ninetyDays:"",oneMetric:"",rampPeriod:90,monthlyRevenue:0,arrManaged:0,currentChurn:10,expectedChurnReduction:0,hourlyRate:0,hoursFreed:0,annualProblemCost:0,problemReduction:0},De=["Info","Type","Outcomes","Numbers","Results"],is=[{q:"What's the primary reason you're making this hire right now?",opts:["We need to grow revenue faster","We're losing customers we should be keeping","I'm overwhelmed and need to get things off my plate","Something keeps going wrong and it's costing us money","Honestly, I'm not sure"]},{q:"Will this person be directly responsible for closing new business or generating new revenue?",opts:["Yes, that's their main job","Partially, but that's not the core of the role","No"]},{q:"Will this hire free up a meaningful number of hours per week for you or your leadership team?",opts:["Yes — I'm doing things they'd take over","Somewhat","No, this is a net-new function"]},{q:"Is the main win here preventing a problem — cost, churn, mistakes, compliance — rather than adding something new?",opts:["Yes, we're plugging a hole","No, we're adding capacity or revenue"]}];function _s(){const{user:T}=Ve(),[Z,C]=n.useState("list"),[ee,Te]=n.useState([]),[Ee,se]=n.useState(!0),[E,te]=n.useState(null),[ae,le]=n.useState(null),[H,$]=n.useState(null),[q,O]=n.useState(null),[re,ie]=n.useState(!1),[j,b]=n.useState(0),[t,G]=n.useState(_e),[k,A]=n.useState(-1),[Oe,W]=n.useState([]),[F,Y]=n.useState(null),[Se,ne]=n.useState(!1),[S,U]=n.useState(""),[V,oe]=n.useState(!1),{toast:f}=Qe(),d=t.salary*(1+t.overheadMultiplier/100),i=(s,l)=>G(m=>({...m,[s]:l})),v=(()=>{if(d===0)return 0;switch(t.hireType){case"Revenue Generator":{const s=t.rampPeriod/30,l=Math.max(0,12-s);return t.monthlyRevenue*l/d}case"Revenue Protector":return t.arrManaged*(t.currentChurn/100)*(t.expectedChurnReduction/100)/d;case"Capacity Unlock":return t.hoursFreed*52*t.hourlyRate/d;case"Cost Avoider":return t.annualProblemCost*(t.problemReduction/100)/d;default:return 0}})(),c=v>=3?"GO":v>=1.5?"CONDITIONAL":"NO-GO",_=n.useCallback(async()=>{if(!T)return;se(!0);const{data:s}=await y.from("hire_roi_entries").select("*").order("created_at",{ascending:!1});Te(s||[]),se(!1)},[T]);n.useEffect(()=>{_()},[_]);const Ie=async()=>{if(!T)return;ie(!0);const s={user_id:T.id,role:t.role,salary:t.salary,overhead_multiplier:t.overheadMultiplier,start_date:t.startDate||null,hire_type:t.hireType,tasks:t.tasks,thirty_days:t.thirtyDays,sixty_days:t.sixtyDays,ninety_days:t.ninetyDays,one_metric:t.oneMetric,ramp_period:t.rampPeriod,monthly_revenue:t.monthlyRevenue,arr_managed:t.arrManaged,current_churn:t.currentChurn,expected_churn_reduction:t.expectedChurnReduction,hourly_rate:t.hourlyRate,hours_freed:t.hoursFreed,annual_problem_cost:t.annualProblem
11Cost,problem_reduction:t.problemReduction,fully_loaded_cost:d,roi_multiple:parseFloat(v.toFixed(2)),roi_status:c,recommendations:S};let l;E?{error:l}=await y.from("hire_roi_entries").update(s).eq("id",E):{error:l}=await y.from("hire_roi_entries").insert(s),ie(!1),l?f({title:"Save failed",description:l.message,variant:"destructive"}):(f({title:E?"Position updated":"Position saved"}),Q(),C("list"),_())},Me=async()=>{if(!H)return;const{error:s}=await y.from("hire_roi_entries").delete().eq("id",H);s?f({title:"Delete failed",description:s.message,variant:"destructive"}):(f({title:"Position deleted"}),_()),$(null)},Pe=async()=>{if(!q)return;const{error:s}=await y.from("hire_roi_entries").update({is_finalized:!0,finalized_at:new Date().toISOString()}).eq("id",q);s?f({title:"Finalize failed",description:s.message,variant:"destructive"}):(f({title:"Position locked",description:"This position can no longer be edited."}),_()),O(null)},ce=s=>{G({role:s.role,salary:Number(s.salary),overheadMultiplier:Number(s.overhead_multiplier),startDate:s.start_date||"",hireType:s.hire_type,tasks:s.tasks||"",thirtyDays:s.thirty_days||"",sixtyDays:s.sixty_days||"",ninetyDays:s.ninety_days||"",oneMetric:s.one_metric||"",rampPeriod:s.ramp_period||90,monthlyRevenue:Number(s.monthly_revenue||0),arrManaged:Number(s.arr_managed||0),currentChurn:Number(s.current_churn||10),expectedChurnReduction:Number(s.expected_churn_reduction||0),hourlyRate:Number(s.hourly_rate||0),hoursFreed:Number(s.hours_freed||0),annualProblemCost:Number(s.annual_problem_cost||0),problemReduction:Number(s.problem_reduction||0)}),U(s.recommendations||""),te(s.id),b(1),C("wizard")},Q=()=>{G(_e),b(0),U(""),Y(null),A(-1),W([]),te(null)},de=()=>{Q(),C("wizard")},ze=async s=>{const l=[...Oe,s];if(W(l),k<3)A(k+1);else{ne(!0);try{const{data:m,error:x}=await y.functions.invoke("hire-roi-advisor",{body:{type:"classify",data:{q1:l[0],q2:l[1],q3:l[2],q4:l[3]}}});if(x)throw x;const a=m.result.match(/\{[\s\S]*\}/);a&&Y(JSON.parse(a[0]))}catch(m){f({title:"Classification error",description:m.message,variant:"destructive"})}finally{ne(!1)}}},Le=()=>{F&&(i("hireType",F.category),A(-1),b(2))},Be=()=>{Y(null),A(-1)},He=n.useCallback(async()=>{oe(!0);try{const{data:s,error:l}=await y.functions.invoke("hire-roi-advisor",{body:{type:"recommendations",data:{role:t.role,hireType:t.hireType,fullyLoadedCost:d,roiMultiple:v.toFixed(1),status:c,oneMetric:t.oneMetric,ninetyDays:t.ninetyDays}}});if(l)throw l;U(s.result)}catch(s){f({title:"Error getting recommendations",description:s.message,variant:"destructive"})}finally{oe(!1)}},[t,d,v,c]),$e=()=>{b(4),He()},qe=t.salary>0&&t.role.trim().length>0,Ge=t.thirtyDays.trim()&&t.sixtyDays.trim()&&t.ninetyDays.trim()&&t.oneMetric.trim(),h=s=>new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",maximumFractionDigits:0}).format(s),me=(s=t,l=d,m=v,x=c,D=S)=>{const a=new Ze,u=a.internal.pageSize.getWidth();let o=20;a.setFillColor(10,15,30),a.rect(0,0,u,50,"F"),a.setTextColor(201,168,76),a.setFontSize(20),a.text("Hire ROI Report",u/2,25,{align:"center"}),a.setFontSize(11),a.setTextColor(255,255,255),a.text(`${s.role} | ${s.hireType}`,u/2,35,{align:"center"}),a.text(`Fully Loaded Cost: ${h(l)}`,u/2,43,{align:"center"}),o=60;const J=x==="GO"?[34,197,94]:x==="CONDITIONAL"?[245,158,11]:[239,68,68];if(a.setFillColor(J[0],J[1],J[2]),a.roundedRect(15,o,u-30,20,3,3,"F"),a.setTextColor(255,255,255),a.setFontSize(16),a.text(`${x} — ${m.toFixed(1)}x ROI`,u/2,o+13,{align:"center"}),o+=30,a.setTextColor(50,50,50),a.setFontSize(13),a.text("Success Scorecard",15,o),o+=10,a.setFontSize(10),[`The One Metric: ${s.oneMetric}`,`30-Day Target: ${s.thirtyDays}`,`60-Day Target: ${s.sixtyDays}`,`90-Day Target: ${s.ninetyDays}`].forEach(I=>{const pe=a.splitTextToSize(I,u-40);a.text(pe,20,o),o+=pe.length*5+3}),D){o+=5,a.setFontSize(13),a.text("CFO Recommendation",15,o),o+=8,a.setFontSize(10);const I=a.splitTextToSize(D,u-40);a.text(I,20,o),o+=I.length*5+5}o+=5,a.setFillColor(201,168,76),a.roundedRect(15,o,u-30,18,3,3,"F"),a.setTextColor(10,15,30),a.setFontSize(11),a.text("Take the CEO Score Assessment at scalingcfo.io/ceo-score",u/2,o+11,{align:"center"}),a.setTextColor(150,150,150),a.setFontSize(8),a.text("ScalingCFO.io",u/2,a.internal.pageSize.getHeight()-10,{align:"center"}),a.save(`Hire-ROI-${s.role.replace(/\s+/g,"-")}.pdf`)},xe=s=>{const l={role:s.role,salary:Number(s.salary),overheadMultiplier:Number(s.overhead_multiplier),startDate:s.start_date||"",hireType:s.hire_type,tasks:s.tasks||"",thirtyDays:s.thirty_days||"",sixtyDays:s.sixty_days||"",ninetyDays:s.ninety_days||"",oneMetric:s.one_metric||"",rampPeriod:s.ramp_period||90,monthlyRevenue:Number(s.monthly_revenue||0),arrManaged:Number(s.arr_managed||0),currentChurn:Number(s.current_churn||10),expectedChurnReduction:Number(s.expected_churn_reduction||0),hourlyRate:Number(s.hourly_rate||0),hoursFreed:Number(s.hours_freed||0),annualProblem
11Cost:Number(s.annual_problem_cost||0),problemReduction:Number(s.problem_reduction||0)};me(l,Number(s.fully_loaded_cost),Number(s.roi_multiple),s.roi_status,s.recommendations||"")},he=s=>{const l=s==="GO"?"bg-emerald-500/20 text-emerald-400 border-emerald-500/30":s==="CONDITIONAL"?"bg-amber-500/20 text-amber-400 border-amber-500/30":"bg-red-500/20 text-red-400 border-red-500/30";return e.jsx("span",{className:`inline-block px-2 py-0.5 rounded-full text-xs font-bold border ${l}`,children:s})};if(Z==="view"&&ae){const s=ae,l=Number(s.fully_loaded_cost),m=Number(s.roi_multiple),x=s.roi_status,D=x==="GO"?B:x==="CONDITIONAL"?Ae:Fe,a=x==="GO"?"text-[#22C55E]":x==="CONDITIONAL"?"text-[#F59E0B]":"text-[#EF4444]",u=x==="GO"?"bg-[#22C55E]/10 border-[#22C55E]/30":x==="CONDITIONAL"?"bg-[#F59E0B]/10 border-[#F59E0B]/30":"bg-[#EF4444]/10 border-[#EF4444]/30";return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-3xl mx-auto",children:[e.jsxs(r,{variant:"ghost",onClick:()=>{le(null),C("list")},className:"text-slate-400 hover:text-white mb-4",children:[e.jsx(z,{className:"w-4 h-4 mr-2"})," Back to All Positions"]}),e.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[e.jsx("h2",{className:"text-2xl font-bold text-white",children:s.role}),s.is_finalized&&e.jsxs("span",{className:"flex items-center gap-1 px-2 py-0.5 rounded bg-slate-700 text-slate-300 text-xs",children:[e.jsx(R,{className:"w-3 h-3"})," Finalized"]})]}),e.jsxs(g,{className:`p-6 mb-6 border ${u}`,children:[e.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[e.jsx(D,{className:`w-8 h-8 ${a}`}),e.jsxs("div",{children:[e.jsxs("p",{className:`text-3xl font-bold ${a}`,children:[m.toFixed(1),"x ROI"]}),e.jsxs("p",{className:"text-white text-sm",children:[h(m*l)," return on ",h(l)," cost"]})]})]}),he(x)]}),e.jsxs(g,{className:"p-6 mb-6 bg-slate-800/60 border-slate-700",children:[e.jsx("h3",{className:"text-lg font-semibold text-white mb-4",children:"Success Scorecard"}),e.jsxs("div",{className:"space-y-3 text-sm",children:[e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"Hire Type:"}),e.jsx("span",{className:"text-slate-300",children:s.hire_type})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"One Metric:"}),e.jsx("span",{className:"text-slate-300",children:s.one_metric})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"30-Day:"}),e.jsx("span",{className:"text-slate-300",children:s.thirty_days})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"60-Day:"}),e.jsx("span",{className:"text-slate-300",children:s.sixty_days})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"90-Day:"}),e.jsx("span",{className:"text-slate-300",children:s.ninety_days})]})]})]}),s.recommendations&&e.jsxs(g,{className:"p-6 mb-6 bg-slate-800/60 border-slate-700",children:[e.jsx("h3",{className:"text-lg font-semibold text-white mb-3",children:"CFO Recommendation"}),e.jsx("p",{className:"text-slate-300 text-sm leading-relaxed",children:s.recommendations})]}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsxs(r,{onClick:()=>xe(s),className:"bg-[#C9A84C] hover:bg-[#b8993f] text-[#0A0F1E] font-semibold",children:[e.jsx(X,{className:"w-4 h-4 mr-2"})," Download PDF"]}),!s.is_finalized&&e.jsxs(e.Fragment,{children:[e.jsxs(r,{variant:"outline",onClick:()=>ce(s),className:"border-slate-600 text-slate-300 hover:bg-slate-800",children:[e.jsx(we,{className:"w-4 h-4 mr-2"})," Edit"]}),e.jsxs(r,{variant:"outline",onClick:()=>O(s.id),className:"border-emerald-600 text-emerald-400 hover:bg-emerald-900/30",children:[e.jsx(R,{className:"w-4 h-4 mr-2"})," Finalize & Lock"]})]})]})]})})}if(Z==="list")return e.jsxs("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:[e.jsxs("div",{className:"max-w-4xl mx-auto",children:[e.jsxs("div",{className:"flex items-center justify-between mb-8",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-3xl font-bold text-white",children:"Hire ROI Calculator"}),e.jsx("p",{className:"text-slate-400 text-sm mt-1",children:"All budgeted positions and their ROI analysis."})]}),e.jsxs(r,{onClick:de,className:"bg-[#C9A84C] hover:bg-[#b8993f] text-[#0A0F1E] font-semibold",children:[e.jsx(ke,{className:"w-4 h-4 mr-2"})," New Position"]})]}),Ee?e.jsx("div",{className:"flex items-center justify-center py-20",children:e.jsx(M,{className:"w-6 h-6 animate-spin text-[#C9A84C]"})}):ee.length===0?e.jsxs(g,{className:"bg-slate-800/40 border-slate-700 p-12 text-center",children:[e.jsx("p",{className:"text-slate-400 mb-4",children:"No positions budgeted yet."}),e.jsxs(r,{onClick:de,className:"bg-[#C9A84C] hover:bg-[#b8993f] text-[#0A0F1E] font-semibold",children:[e.jsx(ke,{className:"w-4 h-4 mr-2"})," Add Your First Position"]})]}):e.jsx("div",{className:"space-y-3",children:ee.map(s=>e.jsx(g,{className:"bg-slate-800/40 border-slate-700 p-4 hover:border-slate-600 transition",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-4 flex-1 min-w-0",children:[e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[e.jsx("p",{className:"text-white font-medium truncate",children:s.role}),s.is_finalized&&e.jsx(R,{className:"w-3.5 h-3.5 text-slate-500 flex-shrink-0"})]}),e.jsxs("div",{className:"flex items-center gap-3 text-xs text-slate-400",children:[e.jsx("span",{children:s.hire_type}),e.jsx("span",{children:"|"}),e.jsxs("span",{children:[h(Number(s.fully_loaded_cost)),"/yr"]}),e.jsx("span",{children:"|"}),e.jsxs("span",{children:[Number(s.roi_multiple).toFixed(1),"x ROI"]})]})]}),e.jsx("div",{className:"flex-shrink-0",children:he(s.roi_status)})]}),e.jsxs("div",{className:"flex items-center gap-1 ml-4 flex-shrink-0",children:[e.jsx(r,{size:"icon",variant:"ghost",onClick:()=>{le(s),C("view")},className:"text-slate-400 hover:text-white h-8 w-8",children:e.jsx(es,{className:"w-4 h-4"})}),!s.is_finalized&&e.jsxs(e.Fragment,{children:[e.jsx(r,{size:"icon",variant:"ghost",onClick:()=>ce(s),className:"text-slate-400 hover:text-white h-8 w-8",children:e.jsx(we,{className:"w-4 h-4"})}),e.jsx(r,{size:"icon",variant:"ghost",onClick:()=>O(s.id),className:"text-slate-400 hover:text-emerald-400 h-8 w-8",children:e.jsx(R,{className:"w-4 h-4"})}),e.jsx(r,{size:"icon",variant:"ghost",onClick:()=>$(s.id),className:"text-slate-400 hover:text-red-400 h-8 w-8",children:e.jsx(Ke,{className:"w-4 h-4"})})]}),e.jsx(r,{size:"icon",variant:"ghost",onClick:()=>xe(s),className:"text-slate-400 hover:text-[#C9A84C] h-8 w-8",children:e.jsx(X,{className:"w-4 h-4"})})]})]})},s.id))})]}),e.jsx(be,{open:!!H,onOpenChange:()=>$(null),children:e.jsxs(je,{className:"bg-slate-900 border-slate-700",children:[e.jsxs(Ne,{children:[e.jsx(ge,{className:"text-white",children:"Delete this position?"}),e.jsx(fe,{className:"text-slate-400",children:"This action cannot be undone."})]}),e.jsxs(ve,{children:[e.jsx(ye,{className:"border-slate-700 text-slate-300",children:"Cancel"}),e.jsx(Ce,{onClick:Me,className:"bg-red-600 hover:bg-red-700 text-white",children:"Delete"})]})]})}),e.jsx(be,{open:!!q,onOpenChange:()=>O(null),children:e.jsxs(je,{className:"bg-slate-900 border-slate-700",children:[e.jsxs(Ne,{children:[e.jsx(ge,{className:"text-white",children:"Finalize this position?"}),e.jsx(fe,{className:"text-slate-400",children:"Once finalized, this position will be locked and can no longer be edited or deleted. This is typically done when the hire has been approved."})]}),e.jsxs(ve,{children:[e.jsx(ye,{className:"border-slate-700 text-slate-300",children:"Cancel"}),e.jsxs(Ce,{onClick:Pe,className:"bg-emerald-600 hover:bg-emerald-700 text-white",children:[e.jsx(R,{className:"w-4 h-4 mr-2"})," Finalize & Lock"]})]})]})})]});const N=()=>e.jsx("div",{className:"flex items-center justify-center gap-1 mb-8",children:De.map((s,l)=>e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsxs("div",{className:`flex items-center gap-1.5 px-3 py-1.5 rounded-full text-xs font-medium transition-all ${l===j?"bg-[#C9A84C] text-[#0A0F1E]":l<j?"bg-emerald-600/30 text-emerald-400":"bg-slate-800 text-slate-500"}`,children:[l<j?e.jsx(B,{className:"w-3 h-3"}):null,s]}),l<De.length-1&&e.jsx(Je,{className:"w-3 h-3 text-slate-600"})]},s))}),w=()=>j>=2?e.jsxs("div",{className:"flex items-center gap-4 mb-6 px-4 py-3 rounded-lg bg-slate-800/60 border border-slate-700/50 text-sm",children:[e.jsx("span",{className:"text-white font-medium",children:t.role}),e.jsx("span",{className:"text-slate-400",children:"|"}),e.jsxs("span",{className:"text-[#C9A84C]",children:[h(d),"/yr"]}),t.hireType&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-slate-400",children:"|"}),e.jsx("span",{className:"text-slate-300",children:t.hireType})]})]}):null,K=()=>{Q(),C("list")};if(j===0)return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-2xl mx-auto",children:[e.jsxs(r,{variant:"ghost",onClick:K,className:"text-slate-400 hover:text-white mb-4",children:[e.jsx(z,{className:"w-4 h-4 mr-2"})," Back to All Positions"]}),e.jsx(N,{}),e.jsxs("div",{className:"text-center space-y-6",children:[e.jsxs("h1",{className:"text-3xl md:text-4xl font-bold text-white leading-tight",children:["You're about to make a hire.",e.jsx("br",{}),e.jsx("span",{className:"text-[#C9A84C]",children:"Let's find out if it pencil
11s out."})]}),e.jsx("p",{className:"text-slate-400 text-lg max-w-xl mx-auto",children:"Most founders hire on gut. This tool runs the numbers and forces you to define what success actually looks like before you sign an offer letter."}),e.jsxs(r,{onClick:()=>b(1),className:"bg-[#C9A84C] hover:bg-[#b8993f] text-[#0A0F1E] font-semibold px-8 py-3 text-base",children:["Start the Calculator ",e.jsx(L,{className:"w-4 h-4 ml-2"})]})]})]})});if(j===1)return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-2xl mx-auto",children:[e.jsxs(r,{variant:"ghost",onClick:K,className:"text-slate-400 hover:text-white mb-4",children:[e.jsx(z,{className:"w-4 h-4 mr-2"})," Back to All Positions"]}),e.jsx(N,{}),e.jsx("h2",{className:"text-2xl font-bold text-white mb-1",children:"Tell us about the hire."}),e.jsx("p",{className:"text-slate-400 mb-8 text-sm",children:"Basic details so we can calculate the real cost."}),e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Role / Title"}),e.jsx(p,{value:t.role,onChange:s=>i("role",s.target.value),placeholder:'e.g. "VP of Sales", "Operations Manager"',className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Annual Base Salary"}),e.jsx(p,{type:"number",value:t.salary||"",onChange:s=>i("salary",Number(s.target.value)),placeholder:"e.g. 120000",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:["Benefits + Overhead Multiplier (%)",e.jsx("span",{className:"text-slate-500 text-xs ml-2",children:"Includes payroll taxes, health insurance, tools, onboarding. 30% is a safe estimate."})]}),e.jsx(p,{type:"number",value:t.overheadMultiplier,onChange:s=>i("overheadMultiplier",Number(s.target.value)),className:"bg-slate-800/60 border-slate-700 text-white"})]}),e.jsxs("div",{className:"p-4 rounded-lg bg-[#C9A84C]/10 border border-[#C9A84C]/30",children:[e.jsx("p",{className:"text-[#C9A84C] text-sm font-medium",children:"Fully Loaded Annual Cost"}),e.jsx("p",{className:"text-white text-2xl font-bold",children:h(d)}),e.jsx("p",{className:"text-slate-400 text-xs mt-1",children:"This is the real cost of this hire, not just salary."})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Target Start Date (optional)"}),e.jsx(p,{type:"date",value:t.startDate,onChange:s=>i("startDate",s.target.value),className:"bg-slate-800/60 border-slate-700 text-white"})]})]}),e.jsxs("div",{className:"flex justify-between mt-8",children:[e.jsx(r,{variant:"ghost",onClick:()=>b(0),className:"text-slate-400 hover:text-white",children:"Back"}),e.jsxs(r,{onClick:()=>b(2),disabled:!qe,className:"bg-[#C9A84C] hover:bg-[#b8993f] text-[#0A0F1E] font-semibold",children:["Next: What Kind of Hire? ",e.jsx(L,{className:"w-4 h-4 ml-2"})]})]})]})});if(j===2){const s=[{type:"Revenue Generator",icon:as,desc:"This person will directly bring in new customers or revenue. Sales, business development, account executives."},{type:"Revenue Protector",icon:Xe,desc:"This person protects revenue you already have. Customer success, account management, renewals."},{type:"Capacity Unlock",icon:ls,desc:"This hire takes work off your plate so you can focus on higher-value activities. Ops, EA, project managers."},{type:"Cost Avoider",icon:rs,desc:"This person prevents expensive mistakes, inefficiencies, or compliance issues. Finance, legal, QA, HR."}];if(k>=0){if(Se)return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-2xl mx-auto",children:[e.jsx(N,{}),e.jsx(w,{}),e.jsxs("div",{className:"flex flex-col items-center justify-center py-20 gap-4",children:[e.jsx(M,{className:"w-8 h-8 animate-spin text-[#C9A84C]"}),e.jsx("p",{className:"text-slate-400",children:"Analyzing your answers..."})]})]})});if(F)return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-2xl mx-auto",children:[e.jsx(N,{}),e.jsx(w,{}),e.jsxs(g,{className:"bg-slate-800/60 border-slate-700 p-6 text-center space-y-4",children:[e.jsx("p",{className:"text-slate-400 text-sm",children:"Based on your answers, this looks like a"}),e.jsx("p",{className:"text-2xl font-bold text-[#C9A84C]",children:F.category}),e.jsx("p",{className:"text-slate-300 text-sm",children:F.reason}),e.jsx("p",{className:"text-slate-400 text-sm",children:"Does that sound right?"}),e.jsxs("div",{className:"flex gap-3 justify-center",children:[e.jsx(r,{onClick:Le,className:"bg-emerald-600 hover:bg-emerald-700 text-white",children:"Yes, continue"}),e.jsx(r,{variant:"outline",onClick:Be,className:"border-slate-600 text-slate-300 hover:bg-slate-700",children:"No, let me pick manually"})]})]})]})});const l=is[k];return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-2xl mx-auto",children:[e.jsx(N,{}),e.jsx(w,{}),e.jsxs("p",{className:"text-slate-400 text-xs mb-2",children:["Question ",k+1," of 4"]}),e.jsx("h3",{className:"text-xl font-semibold text-white mb-6",children:l.q}),e.jsx("div",{className:"space-y-3",children:l.opts.map(m=>e.jsx("button",{onClick:()=>ze(m),className:"w-full text-left px-4 py-3 rounded-lg border border-slate-700 bg-slate-800/40 text-slate-300 hover:border-[#C9A84C] hover:text-white transition text-sm",children:m},m))})]})})}return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-2xl mx-auto",children:[e.jsx(N,{}),e.jsx(w,{}),e.jsx("h2",{className:"text-2xl font-bold text-white mb-1",children:"What is this hire supposed to do for your business?"}),e.jsx("p",{className:"text-slate-400 mb-6 text-sm",children:"Choose the one that fits best."}
11),e.jsxs("div",{className:"grid gap-3",children:[s.map(l=>e.jsxs("button",{onClick:()=>{i("hireType",l.type),b(3)},className:"flex items-start gap-4 p-4 rounded-lg border border-slate-700 bg-slate-800/40 hover:border-[#C9A84C] transition text-left group",children:[e.jsx("div",{className:"mt-0.5 w-10 h-10 rounded-lg bg-[#C9A84C]/10 flex items-center justify-center flex-shrink-0",children:e.jsx(l.icon,{className:"w-5 h-5 text-[#C9A84C]"})}),e.jsxs("div",{children:[e.jsx("p",{className:"text-white font-medium group-hover:text-[#C9A84C] transition",children:l.type}),e.jsx("p",{className:"text-slate-400 text-sm",children:l.desc})]})]},l.type)),e.jsxs("button",{onClick:()=>{A(0),W([])},className:"flex items-start gap-4 p-4 rounded-lg border border-dashed border-slate-600 bg-slate-800/20 hover:border-[#C9A84C] transition text-left group",children:[e.jsx("div",{className:"mt-0.5 w-10 h-10 rounded-lg bg-slate-700/50 flex items-center justify-center flex-shrink-0",children:e.jsx(ss,{className:"w-5 h-5 text-slate-400"})}),e.jsxs("div",{children:[e.jsx("p",{className:"text-white font-medium",children:"Help Me Figure It Out"}),e.jsx("p",{className:"text-slate-400 text-sm",children:"Answer 4 quick questions and we'll categorize this hire for you."})]})]})]}),e.jsx("div",{className:"flex justify-between mt-8",children:e.jsx(r,{variant:"ghost",onClick:()=>b(1),className:"text-slate-400 hover:text-white",children:"Back"})})]})})}if(j===3)return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-3xl mx-auto",children:[e.jsx(N,{}),e.jsx(w,{}),e.jsx("h2",{className:"text-2xl font-bold text-white mb-1",children:"Now define what success looks like."}),e.jsx("p",{className:"text-slate-400 mb-8 text-sm",children:"You can't calculate ROI on a role that hasn't been defined. Take 3 minutes here."}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"What will this person actually do day-to-day?"}),e.jsx(P,{value:t.tasks,onChange:s=>i("tasks",s.target.value),placeholder:"e.g. Own the full sales cycle from outbound to close. Manage a pipeline of 40+ prospects.",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500 min-h-[100px]"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-3 block",children:"Outcomes at 30 / 60 / 90 Days"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-[#C9A84C] text-xs font-semibold mb-1.5",children:"30 Days"}),e.jsx(P,{value:t.thirtyDays,onChange:s=>i("thirtyDays",s.target.value),placeholder:"Ramped on product. First 5 qualified meetings booked.",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500 min-h-[90px] text-sm"})]}),e.jsxs("div",{children:[e.jsx("p",{className:"text-[#C9A84C] text-xs font-semibold mb-1.5",children:"60 Days"}),e.jsx(P,{value:t.sixtyDays,onChange:s=>i("sixtyDays",s.target.value),placeholder:"First deal in pipeline. Conversion rate at or above 25%.",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500 min-h-[90px] text-sm"})]}),e.jsxs("div",{children:[e.jsx("p",{className:"text-[#C9A84C] text-xs font-semibold mb-1.5",children:"90 Days"}),e.jsx(P,{value:t.ninetyDays,onChange:s=>i("ninetyDays",s.target.value),placeholder:"First closed deal. Monthly pipeline at $150K+.",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500 min-h-[90px] text-sm"})]})]})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:["The One Metric",e.jsx("span",{className:"text-slate-500 text-xs ml-2",children:"If this number isn't moving in 90 days, you have a decision to make."})]}),e.jsx(p,{value:t.oneMetric,onChange:s=>i("oneMetric",s.target.value),placeholder:"e.g. Monthly revenue generated. Churn rate. Hours saved per week.",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]})]}),e.jsxs("div",{className:"flex justify-between mt-8",children:[e.jsx(r,{variant:"ghost",onClick:()=>b(2),className:"text-slate-400 hover:text-white",children:"Back"}),e.jsxs(r,{onClick:()=>b(4),disabled:!Ge,className:"bg-[#C9A84C] hover:bg-[#b8993f] text-[#0A0F1E] font-semibold",children:["Now Run the Numbers ",e.jsx(L,{className:"w-4 h-4 ml-2"})]})]})]})});if(j===4&&S===""&&!V)return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-2xl mx-auto",children:[e.jsx(N,{}),e.jsx(w,{}),e.jsxs("div",{className:"flex items-center gap-2 mb-6",children:[e.jsx("h2",{className:"text-2xl font-bold text-white",children:"Let's calculate the return."}),e.jsx("span",{className:"px-2 py-0.5 rounded text-xs font-semibold bg-[#C9A84C]/20 text-[#C9A84C]",children:t.hireType})]}),e.jsxs("div",{className:"space-y-5",children:[t.hireType==="Revenue Generator"&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Expected Ramp Period (days)"}),e.jsx("select",{value:t.rampPeriod,onChange:s=>i("rampPeriod",Number(s.target.value)),className:"w-full rounded-md bg-slate-800/60 border border-slate-700 text-white px-3 py-2 text-sm",children:[30,60,90,120].map(s=>e.jsxs("option",{value:s,children:[s," days"]},s))})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Expected Monthly Revenue at Full Ramp"}),e.jsx(p,{type:"number",value:t.monthlyRevenue||"",onChange:s=>i("monthlyRevenue",Number(s.target.value)),placeholder:"Conservative estimate",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{className:"p-3 rounded bg-slate-800/40 border border-slate-700/50 text-sm",children:[e.jsx("span",{className:"text-slate-400",children:"Expected Annual Revenue: "}),e.jsx("span",{className:"text-white font-medium",children:h(t.monthlyRevenue*Math.max(0,12-t.rampPeriod/30))})]})]}),t.hireType==="Revenue Protector"&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Annual Recurring Revenue They'll Manage"}),e.jsx(p,{type:"number",value:t.arrManaged||"",onChange:s=>i("arrManaged",Number(s.target.value)),className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Current Annual Churn Rate (%)"}),e.jsx(p,{type:"number",value:t.currentChurn,onChange:s=>i("currentChurn",Number(s.target.value)),className:"bg-slate-800/60 border-slate-700 text-white"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Expected Churn Reduction (%)"}),e.jsx(p,{type:"number",value:t.expectedChurnReduction||"",onChange:s=>i("expectedChurnReduction",Number(s.target.value)),className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{className:"p-3 rounded bg-slate-800/40 border border-slate-700/50 text-sm",children:[e.jsx("span",{className:"text-slate-400",children:"Revenue Protected: "}),e.jsx("span",{className:"text-white font-medium",children:h(t.arrManaged*(t.currentChurn/100)*(t.expectedChurnReduction/100))})]})]}),t.hireType==="Capacity Unlock"&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Your Effective Hourly Rate"}),e.jsx(p,{type:"number",value:t.hourlyRate||"",onChange:s=>i("hourlyRate",Number(s.target.value)),placeholder:"Target annual earnings / 2,000 hours",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Hours Per Week This Hire Frees Up"}),e.jsx(p,{type:"number",value:t.hoursFreed||"",onChange:s=>i("hoursFreed",Number(s.target.value)),placeholder:"Be honest. Not aspirational.",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{className:"p-3 rounded bg-slate-800/40 border border-slate-700/50 text-sm",children:[e.jsx("span",{className:"text-slate-400",children:"Annual 
11Value Unlocked: "}),e.jsx("span",{className:"text-white font-medium",children:h(t.hoursFreed*52*t.hourlyRate)})]})]}),t.hireType==="Cost Avoider"&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Annual Cost of Current Problem"}),e.jsx(p,{type:"number",value:t.annualProblemCost||"",onChange:s=>i("annualProblemCost",Number(s.target.value)),placeholder:"Mistakes, rework, penalties, inefficiencies",className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-slate-300 text-sm font-medium mb-1.5 block",children:"Expected Problem Reduction (%)"}),e.jsx(p,{type:"number",value:t.problemReduction||"",onChange:s=>i("problemReduction",Number(s.target.value)),className:"bg-slate-800/60 border-slate-700 text-white placeholder:text-slate-500"})]}),e.jsxs("div",{className:"p-3 rounded bg-slate-800/40 border border-slate-700/50 text-sm",children:[e.jsx("span",{className:"text-slate-400",children:"Annual Cost Avoided: "}),e.jsx("span",{className:"text-white font-medium",children:h(t.annualProblemCost*(t.problemReduction/100))})]})]}),e.jsxs("div",{className:"p-4 rounded-lg bg-slate-800/60 border border-slate-700 text-sm",children:[e.jsx("span",{className:"text-slate-400",children:"Fully Loaded Annual Cost: "}),e.jsx("span",{className:"text-white font-bold",children:h(d)})]})]}),e.jsxs("div",{className:"flex justify-between mt-8",children:[e.jsx(r,{variant:"ghost",onClick:()=>b(3),className:"text-slate-400 hover:text-white",children:"Back"}),e.jsxs(r,{onClick:$e,className:"bg-[#C9A84C] hover:bg-[#b8993f] text-[#0A0F1E] font-semibold",children:["Calculate ROI ",e.jsx(L,{className:"w-4 h-4 ml-2"})]})]})]})});const We=c==="GO"?B:c==="CONDITIONAL"?Ae:Fe,ue=c==="GO"?"text-[#22C55E]":c==="CONDITIONAL"?"text-[#F59E0B]":"text-[#EF4444]",Ye=c==="GO"?"bg-[#22C55E]/10 border-[#22C55E]/30":c==="CONDITIONAL"?"bg-[#F59E0B]/10 border-[#F59E0B]/30":"bg-[#EF4444]/10 border-[#EF4444]/30",Ue=c==="GO"?"This hire pencils out. At 3x+, the math supports moving forward if the qualitative outcomes are well-defined.":c==="CONDITIONAL"?"The numbers are close but not there yet. Revisit your revenue/value assumptions. Can you get to 3x with a different structure?":"The math doesn't support this hire right now. That doesn't mean never. It means not yet, or not at this salary, or not in this structure.";return e.jsx("div",{className:"min-h-screen bg-[#0A0F1E] p-6 md:p-12",children:e.jsxs("div",{className:"max-w-3xl mx-auto",children:[e.jsx(N,{}),e.jsx("h2",{className:"text-2xl font-bold text-white mb-6",children:"Here's your Hire ROI Report."}),e.jsxs(g,{className:`p-6 mb-6 border ${Ye}`,children:[e.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[e.jsx(We,{className:`w-8 h-8 ${ue}`}),e.jsxs("div",{children:[e.jsxs("p",{className:`text-3xl font-bold ${ue}`,children:[v.toFixed(1),"x ROI"]}),e.jsxs("p",{className:"text-white text-sm",children:["This hire is projected to return ",h(v*d)," for every ",h(d)," spent."]})]})]}),e.jsx("span",{className:`inline-block px-3 py-1 rounded-full text-xs font-bold ${c==="GO"?"bg-[#22C55E] text-white":c==="CONDITIONAL"?"bg-[#F59E0B] text-[#0A0F1E]":"bg-[#EF4444] text-white"}`,children:c}),e.jsx("p",{className:"text-slate-400 text-sm mt-3",children:Ue})]}),e.jsxs(g,{className:"p-6 mb-6 bg-slate-800/60 border-slate-700",children:[e.jsx("h3",{className:"text-lg font-semibold text-white mb-4",children:"What You're Buying and How You'll Know It's Working"}),e.jsxs("div",{className:"space-y-3 text-sm",children:[e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"Role:"}),e.jsx("span",{className:"text-slate-300",children:t.role})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"Hire Type:"}),e.jsx("span",{className:"text-slate-300",children:t.hireType})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"One Metric:"}),e.jsx("span",{className:"text-slate-300",children:t.oneMetric})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"30-Day:"}),e.jsx("span",{className:"text-slate-300",children:t.thirtyDays}
11)]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"60-Day:"}),e.jsx("span",{className:"text-slate-300",children:t.sixtyDays})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("span",{className:"text-[#C9A84C] font-medium min-w-[100px]",children:"90-Day:"}),e.jsx("span",{className:"text-slate-300",children:t.ninetyDays})]})]})]}),e.jsxs(g,{className:"p-6 mb-6 bg-slate-800/60 border-slate-700",children:[e.jsx("h3",{className:"text-lg font-semibold text-white mb-3",children:"CFO Recommendation"}),V?e.jsxs("div",{className:"flex items-center gap-2 text-slate-400",children:[e.jsx(M,{className:"w-4 h-4 animate-spin"})," Generating recommendation..."]}):e.jsx("p",{className:"text-slate-300 text-sm leading-relaxed",children:S})]}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsxs(r,{onClick:()=>Ie(),disabled:re||V,className:"bg-emerald-600 hover:bg-emerald-700 text-white font-semibold",children:[re?e.jsx(M,{className:"w-4 h-4 mr-2 animate-spin"}):e.jsx(B,{className:"w-4 h-4 mr-2"}),E?"Update Position":"Save Position"]}),e.jsxs(r,{onClick:()=>me(),className:"bg-[#C9A84C] hover:bg-[#b8993f] text-[#0A0F1E] font-semibold",children:[e.jsx(X,{className:"w-4 h-4 mr-2"})," Download PDF Report"]}),e.jsxs(r,{variant:"outline",onClick:K,className:"border-slate-600 text-slate-300 hover:bg-slate-800",children:[e.jsx(z,{className:"w-4 h-4 mr-2"})," All Positions"]}),e.jsxs(r,{variant:"outline",onClick:()=>window.open("https://app.ascendgrowthventures.com/widget/bookings/ascendgrowthowenh1","_blank"),className:"border-slate-600 text-slate-300 hover:bg-slate-800",children:[e.jsx(ts,{className:"w-4 h-4 mr-2"})," Talk to a CFO Advisor"]})]})]})})}export{_s as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.