1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[191],{8151:function(e,t,r){Promise.resolve().then(r.bind(r,102))},102:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return l}});var s=r(7437),n=r(2265),a=r(4114),o=r(2834);let i=[{value:"professional",label:"Professional",icon:"\uD83C\uDFAF"},{value:"confident",label:"Confident",icon:"\uD83D\uDCAA"},{value:"friendly",label:"Friendly",icon:"\uD83D\uDE0A"}];function l(){let[e,t]=(0,n.useState)(""),[r,l]=(0,n.useState)(""),[c,d]=(0,n.useState)(""),[x,m]=(0,n.useState)("professional"),[u,h]=(0,n.useState)(""),[b,p]=(0,n.useState)(!1),[f,g]=(0,n.useState)(""),[j,v]=(0,n.useState)(!1),[w,N]=(0,n.useState)(!1),y=(0,n.useRef)(null),z=async()=>{if(!e.trim()){g("Please enter a project description.");return}g(""),p(!0),h("");try{let t=await fetch("/api/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({brief:e.trim(),services:r.trim(),rate:c.trim(),tone:x})});if(!t.ok){let e=await t.json();throw Error(e.error||"Failed to generate proposal")}let s=await t.json();h(s.proposal),fetch("/api/track",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({event:"proposal_generated",product:"proposalpilot"})}).catch(()=>{}),setTimeout(()=>{var e;null===(e=y.current)||void 0===e||e.scrollIntoView({behavior:"smooth",block:"start"})},200)}catch(e){g(e instanceof Error?e.message:"Something went wrong. Please try again.")}finally{p(!1)}},k=async()=>{try{await navigator.clipboard.writeText(u),v(!0),setTimeout(()=>v(!1),2e3)}catch(t){let e=document.createElement("textarea");e.value=u,document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e),v(!0),setTimeout(()=>v(!1),2e3)}};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.default,{}),(0,s.jsx)("main",{className:"pt-24 pb-16 min-h-screen",children:(0,s.jsxs)("div",{className:"max-w-4xl mx-auto px-6",children:[(0,s.jsxs)("div",{className:"mb-10",children:[(0,s.jsx)("h1",{className:"font-heading text-3xl md:text-4xl font-bold mb-2",children:"Generate Your Proposal"}),(0,s.jsx)("p",{className:"text-zinc-400 text-lg",children:"Paste the project details below and let AI craft your winning proposal."})]}),(0,s.jsx)("div",{className:"bg-surface border border-zinc-800/50 rounded-card p-6 md:p-8 mb-8",children:(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-sm font-medium text-zinc-300 mb-2",children:"Project Description / Job Brief *"}),(0,s.jsx)("textarea",{value:e,onChange:e=>t(e.target.value),placeholder:"Paste the project description, job posting, or client message here...",rows:6,className:"w-full bg-surface-dark border border-zinc-800 rounded-btn px-4 py-3 text-zinc-100 placeholder:text-zinc-600 focus:outline-none focus:border-brand-amber/50 transition-colors resize-y text-sm leading-relaxed"})]}),(0,s.jsxs)("div",{className:"grid md:grid-cols-2 gap-6",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-sm font-medium text-zinc-300 mb-2",children:"Your Services / Skills"}),(0,s.jsx)("textarea",{value:r,onChange:e=>l(e.target.value),placeholder:"e.g., Full-stack web development, React, Node.js, UI/UX design...",rows:3,className:"w-full bg-surface-dark border border-zinc-800 rounded-btn px-4 py-3 text-zinc-100 placeholder:text-zinc-600 focus:outline-none focus:border-brand-amber/50 transition-colors resize-y text-sm"})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-sm font-medium text-zinc-300 mb-2",children:"Your Hourly Rate"}),(0,s.jsx)("input",{type:"text",value:c,onChange:e=>d(e.target.value),placeholder:"e.g., $85/hr or $5,000 fixed",className:"w-full bg-surface-dark border border-zinc-800 rounded-btn px-4 py-3 text-zinc-100 placeholder:text-zinc-600 focus:outline-none focus:border-brand-amber/50 transition-colors text-sm"})]})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-sm font-medium text-zinc-300 mb-3",children:"Proposal Tone"}),(0,s.jsx)("div",{className:"flex flex-wrap gap-3",children:i.map(e=>(0,s.jsxs)("button",{onClick:()=>m(e.value),className:"flex items-center gap-2 px-4 py-2.5 rounded-btn text-sm font-medium transition-all ".concat(x===e.value?"bg-brand-amber/15 border-brand-amber/50 text-brand-amber-light border":"bg-surface-dark border border-zinc-800 text-zinc-400 hover:border-zinc-600"),children:[(0,s.jsx)("span",{children:e.icon}),e.label]},e.value))})]}),f&&(0,s.jsx)("div",{className:"bg-red-500/10 border border-red-500/30 rounded-btn px-4 py-3 text-sm text-red-400",children:f}),(0,s.jsx)("button",{onClick:z,disabled:b,className:"w-full bg-brand-amber hover:bg-brand-amber-light disabled:opacity-60 disabled:cursor-not-allowed text-zinc-950 font-semibold py-3.5 rounded-btn transition-all text-lg flex items-center justify-center gap-2",children:b?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("svg",{className:"animate-spin-slow w-5 h-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[(0,s.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,s.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),"Generating your proposal..."]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,s.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})}),"Generate Proposal"]})})]})}),u&&(0,s.jsxs)("div",{ref:y,className:"bg-surface border border-zinc-800/50 rounded-card overflow-hidden",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between px-6 py-4 border-b border-zinc-800/50",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("div",{className:"w-2 h-2 rounded-full bg-brand-amber"}),(0,s.jsx)("h2",{className:"font-heading text-lg font-semibold text-zinc-100",children:"Your Proposal"})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("button",{onClick:k,className:"flex items-center gap-1.5 px-3 py-1.5 rounded-btn text-sm font-medium bg-surface-light hover:bg-zinc-700 text-zinc-300 transition-colors border border-zinc-700",children:j?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"#22c55e",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,s.jsx)("polyline",{points:"20 6 9 17 4 12"})}),"Copied!"]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}),(0,s.jsx)("path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"})]}),"Copy"]})}),(0,s.jsxs)("button",{onClick:()=>N(!0),className:"flex items-center gap-1.5 px-3 py-1.5 rounded-btn text-sm font-medium bg-brand-amber hover:bg-brand-amber-light text-zinc-950 transition-colors",children:[(0,s.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),(0,s.jsx)("polyline",{points:"7 10 12 15 17 10"}),(0,s.jsx)("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]}),"Download PDF"]})]})]}),(0,s.jsx)("div",{className:"p-6 md:p-8",children:(0,s.jsx)("div",{className:"prose prose-invert prose-zinc max-w-none text-sm leading-relaxed whitespace-pre-wrap font-body",children:u})})]})]})}),(0,s.jsx)(o.default,{}),w&&(0,s.jsxs)("div",{className:"fixed inset-0 z-[100] flex items-center justify-center p-4",children:[(0,s.jsx)("div",{className:"absolute inset-0 bg-black/70 backdrop-blur-sm",onClick:()=>N(!1)}),(0,s.jsxs)("div",{className:"relative bg-surface border border-zinc-800 rounded-card p-8 max-w-sm w-full amber-glow text-center",children:[(0,s.jsx)("div",{className:"w-14 h-14 mx-auto mb-4 rounded-full bg-brand-amber/10 flex items-center justify-center",children:(0,s.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"#D97706",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z"}),(0,s.jsx)("polyline",{points:"14 2 14 8 20 8"})]})}),(0,s.jsx)("h3",{className:"font-heading text-xl font-bold text-zinc-100 mb-2",children:"PDF Export â Coming Soon"}),(0,s.jsx)("p",{className:"text-zinc-400 text-sm mb-6",children:"We're building beautiful PDF exp
1orts. For now, use the Copy button to grab your proposal."}),(0,s.jsx)("button",{onClick:()=>{N(!1),k()},className:"bg-brand-amber hover:bg-brand-amber-light text-zinc-950 font-medium px-6 py-2.5 rounded-btn transition-all text-sm",children:"Copy Proposal Instead"})]})]})]})}},2834:function(e,t,r){"use strict";r.d(t,{default:function(){return o}});var s=r(7437),n=r(7648),a=r(7577);function o(){return(0,s.jsx)("footer",{className:"border-t border-zinc-800/50 bg-surface-dark",children:(0,s.jsxs)("div",{className:"max-w-6xl mx-auto px-6 py-12",children:[(0,s.jsxs)("div",{className:"flex flex-col md:flex-row items-center justify-between gap-6",children:[(0,s.jsxs)("div",{className:"flex flex-col items-center md:items-start gap-2",children:[(0,s.jsx)(a.Z,{size:"small"}),(0,s.jsx)("p",{className:"text-sm text-zinc-500",children:"AI-powered proposals for freelancers"})]}),(0,s.jsxs)("div",{className:"flex items-center gap-6 text-sm text-zinc-500",children:[(0,s.jsx)(n.default,{href:"/privacy",className:"hover:text-zinc-300 transition-colors",children:"Privacy"}),(0,s.jsx)(n.default,{href:"/terms",className:"hover:text-zinc-300 transition-colors",children:"Terms"}),(0,s.jsx)("a",{href:"https://www.aitoolzdir.com",target:"_blank",rel:"noopener noreferrer",className:"hover:text-zinc-300 transition-colors",children:"AI Toolz Dir"}),(0,s.jsx)("a",{href:"https://automatik.studio",target:"_blank",rel:"noopener noreferrer",className:"hover:text-zinc-300 transition-colors",children:"Built by Automatik.studio"})]})]}),(0,s.jsx)("div",{className:"mt-8 pt-6 border-t border-zinc-800/30 text-center",children:(0,s.jsxs)("p",{className:"text-xs text-zinc-600",children:["\xa9 ",new Date().getFullYear()," ProposalPilot. All rights reserved."]})})]})})}},7577:function(e,t,r){"use strict";r.d(t,{Z:function(){return n}});var s=r(7437);function n(e){let{size:t="default"}=e;return(0,s.jsxs)("span",{className:"font-heading font-bold ".concat({small:"text-lg",default:"text-xl",large:"text-3xl"}[t]," text-zinc-100"),children:["Proposal",(0,s.jsx)("span",{className:"text-brand-amber",children:"Pilot"})]})}},4114:function(e,t,r){"use strict";r.d(t,{default:function(){return o}});var s=r(7437),n=r(7648),a=r(7577);function o(){return(0,s.jsx)("nav",{className:"fixed top-0 left-0 right-0 z-50 border-b border-zinc-800/50 bg-surface-dark/80 backdrop-blur-xl",children:(0,s.jsxs)("div",{className:"max-w-6xl mx-auto px-6 h-16 flex items-center justify-between",children:[(0,s.jsx)(n.default,{href:"/",children:(0,s.jsx)(a.Z,{})}),(0,s.jsxs)("div",{className:"flex items-center gap-6",children:[(0,s.jsx)(n.default,{href:"/templates",className:"text-sm text-zinc-400 hover:text-zinc-100 transition-colors",children:"Templates"}),(0,s.jsx)(n.default,{href:"/#pricing",className:"text-sm text-zinc-400 hover:text-zinc-100 transition-colors",children:"Pricing"}),(0,s.jsx)(n.default,{href:"/app",className:"text-sm font-medium bg-brand-amber hover:bg-brand-amber-light text-zinc-950 px-5 py-2 rounded-btn transition-all hover:shadow-lg hover:shadow-amber-900/20",children:"Launch App"})]})]})})}}},function(e){e.O(0,[648,971,117,744],function(){return e(e.s=8151)}),_N_E=e.O()}]);
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.