1import{u as Y,f as A,a as B,r as $,c as W,d as N,b as a,j as t}from"./index-bdjzodSF.js";import{G as j}from"./GlassActionButton-7aowJsk4.js";import{u as _}from"./useCursorShift-BwWGaqDv.js";const b="Let's Build",F="Something",w=`${b} ${F}`,I="Before we begin, I need clarity. This onboarding form helps define your vision, scope, and readiness so we build something thoughtful and aligned.".split(" "),u=20,R=80;function O(){const E=Y(),e=A(),{colors:d,previewTheme:S}=B(),p=$(S);$(S,"edge");const o=W(),r=N(),[s,f]=a.useState("intro"),[h,z]=a.useState(0),[m,C]=a.useState(0);a.useEffect(()=>{if(s!=="intro")return;const n=setTimeout(()=>f("animating"),1400);return()=>clearTimeout(n)},[s]),a.useEffect(()=>{if(s==="animating")if(h<w.length){const i=setTimeout(()=>z(c=>c+1),h===0?400:55);return()=>clearTimeout(i)}else{const n=setTimeout(()=>f("body"),600);return()=>clearTimeout(n)}},[s,h]),a.useEffect(()=>{if(s==="body")if(m<I.length){const i=setTimeout(()=>C(c=>c+1),m===0?100:40);return()=>clearTimeout(i)}else{const n=setTimeout(()=>f("button"),400);return()=>clearTimeout(n)}},[s,m]),a.useEffect(()=>{if(s!=="button")return;const n=setTimeout(()=>f("done"),600);return()=>clearTimeout(n)},[s]);const y=["body","button","done"].includes(s),k=y,l=["button","done"].includes(s),v=w.slice(0,h),T=_(8,s!=="intro"),L=(n,i)=>(i-1-n)*R,x=(n,i)=>{const c=L(n,i);return`transform 0.5s cubic-bezier(0.4, 0, 0.6, 1) ${c}ms, opacity 0.35s ease ${c}ms`},g=4;return t.jsxs("div",{className:"h-full w-full overflow-hidden relative",children:[t.jsxs("div",{style:{position:"absolute",top:"50%",left:"50%",transform:y?`translate(-50%, calc(-50% - 3vh)) ${T.transform}`:`translate(-50%, -50%) ${T.transform}`,transition:"transform 1s cubic-bezier(0.25, 1, 0.5, 1)",zIndex:2,width:"90vw",maxWidth:"900px",textAlign:"center",willChange:"transform"},children:[t.jsx("h1",{style:{fontSize:r?"clamp(2rem, 5vh, 3rem)":o?"clamp(3.2rem, 11vw, 4.5rem)":"clamp(3rem, 7vw, 7.5rem)",lineHeight:"0.95",letterSpacing:"-0.035em",textAlign:"center",marginBottom:y?"1.5rem":"0",transform:e?`translateY(${u}px)`:"translateY(0)",opacity:e?0:1,transition:e?x(0,g):"margin-bottom 1s cubic-bezier(0.25, 1, 0.5, 1)",...e?{pointerEvents:"none"}:{}},children:t.jsxs("span",{className:"block",style:{whiteSpace:o?"normal":"nowrap"},children:[t.jsx("span",{style:{fontFamily:"meno-display-condensed, serif",fontWeight:700,color:d.darkest,transition:`color ${p}`},children:v.slice(0,b.length)}),v.length>b.length&&t.jsxs(t.Fragment,{children:[" ",t.jsx("span",{style:{fontFamily:"'Source Serif 4', serif",fontStyle:"italic",fontWeight:400,color:d.dark,transition:`color ${p}`},children:v.slice(b.length+1)})]}),s==="animating"&&t.jsx("span",{style:{display:"inline-block",width:"2px",height:"0.75em",backgroundColor:d.cursorColor,marginLeft:"3px",verticalAlign:"baseline",animation:"cursorBlink 0.8s step-end infinite",transition:`background-color ${p}`}})]})}),t.jsx("div",{style:{maxHeight:k?"200px":"0",overflow:"hidden",transform:e?`translateY(${u}px)`:"translateY(0)",opacity:e?0:1,transition:e?x(1,g):"max-height 1s cubic-bezier(0.25, 1, 0.5, 1)",...e?{pointerEvents:"none"}:{}},children:t.jsx("p",{className:"mx-auto",style:{color:d.body,lineHeight:"1.6",letterSpacing:0,fontFamily:"'Helvetica Neue', Helvetica, Arial, sans-serif",fontWeight:300,fontSize:"clamp(15px, 1.4vw, 22px)",paddingTop:"0.5rem",maxWidth:"560px",textAlign:"center",transition:`color ${p}`},children:I.map((n,i)=>t.jsx("span",{className:"inline-block",style:{marginRight:"0.28em",transform:i<m?"translateY(0)":"translateY(6px)",opacity:i<m?1:0,transition:"transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.2s ease"},children:n},i))})})]}),t.jsx("div",{style:{position:"absolute",top:"50%",left:"50%",transform:e?`translate(-50%, calc(${r?"6vh":o?"10vh":"12vh"} + ${u}px)) scale(0.92)`:l?`translate(-50%, calc(${r?"6vh":o?"10vh":"12vh"})) scale(1) ${T.transform}`:`translate(-50%, calc(${r?"6vh":o?"10vh":"12vh"})) scale(0.85)`,opacity:e?0:l?1:0,transition:e?x(2,g):"transform 0.6s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease",zIndex:30,willChange:"transform",pointerEvents:e?"none":"auto"},children:t.jsx(j,{label:"Start Onboarding",onClick:()=>E("/onboarding"),ripplePosition:"center",size:o?48:64})}),t.jsx("div",{style:{position:"fixed",...o&&!r?{bottom:"calc(1.25rem + env(safe-area-inset-bottom, 0px))",left:"calc(1rem + env(safe-area-inset-left, 0px))",transform:e?`translateY(${u}px)`:l?"scale(1)":"scale(0.85)"}:{top:"50%",left:r?"max(0.75rem, env(safe-area-inset-left, 0px))":"
11.5rem",transform:e?`translateY(calc(-50% + ${u}px))`:l?"translateY(-50%) scale(1)":"translateY(-50%) scale(0.85)"},opacity:l&&!e?1:0,transition:e?x(3,g):"transform 0.6s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease",zIndex:30,pointerEvents:l&&!e?"auto":"none"},children:t.jsx(j,{label:"Change Color",direction:"left",onClick:()=>E("/"),size:o?48:64})}),t.jsx("style",{children:` 2 @keyframes cursorBlink { 3 0%, 100% { opacity: 1; } 4 50% { opacity: 0; } 5 } 6 `})]})}export{O as Landing};
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.