PageSourceSearch

https://hookology.ai/assets/features._slug-ezfeJgai.js

js hookology.ai collected 2026-10-05 14:01:54 UTC 99,956 bytes, 1 lines download raw bytes

1import{j as e}from"./radix-CrTWQvwI.js";import{B as K,L as w,v as d,eN as te,j as ye,eO as Ne,eP as ve,eQ as we,f as ke,eR as Se,eS as Ae,eT as Ce,eU as Te,eV as Re,eW as ie}from"./index-7JgiN7UR.js";import{M as me}from"./marketing-shell-CK3rNW_L.js";import{bd as Oe,by as p,L as Me,a as h,aB as Pe,k as We,aU as He,B as Le,c8 as ce,bO as Be,at as Ee,di as Ge,bu as _e,bx as Ie,P as De,h as xe,c6 as Fe,bD as ue,ae as pe,bT as $e,aH as q,s as V,ad as Ue,bE as qe}from"./ui-vendor-CuNlv4X9.js";import{M as Ve}from"./marketing-quote-DSCbLesM.js";import{B as J}from"./browser-frame-Cqr5QhZ7.js";import{u as R,C as O,H as M,L as ze,F as Ke}from"./feature-animations-pShHqa86.js";import{H as Ye}from"./hookology-logo-DCM4ISub.js";import"./supabase-CKMv-ZKk.js";import"./charts-Dvyflrfd.js";import"./site-nav-BlQ5Ejyi.js";import"./site-footer-uQfphqnY.js";import"./ask-hookology-cuoihocW.js";import"./index-BWr3NrrO.js";import"./index-DbdvNyIx.js";import"./prompt-jRa_aZRo.js";function Qe(){return e.jsx(me,{children:e.jsxs("section",{className:"mx-auto max-w-3xl px-5 py-16 sm:py-28 text-center sm:px-8",children:[e.jsx("h1",{className:"font-display text-4xl font-semibold tracking-tight",children:"We could not find that feature"}),e.jsx("p",{className:"mt-4 text-muted-foreground",children:"It may have been renamed. Browse the full platform instead."}),e.jsx(K,{asChild:!0,className:"mt-8 bg-primary text-primary-foreground hover:bg-primary/90",children:e.jsx(w,{to:"/features",children:"All features"})})]})})}const Je=[{name:"Meta - Prospecting",planned:"£12,400",pace:78,verdict:"On pace",tone:"emerald"},{name:"Google - Brand",planned:"£3,150",pace:41,verdict:"Underspending",tone:"amber"},{name:"Google - Shopping",planned:"£9,800",pace:96,verdict:"Held 4 more days",tone:"sky",held:!0},{name:"Pinterest - Retargeting",planned:"£1,900",pace:63,verdict:"On pace",tone:"emerald"}],Xe={emerald:{bar:"bg-emerald-500",text:"text-emerald-600 dark:text-emerald-400",ring:"border-emerald-500/35"},amber:{bar:"bg-amber-500",text:"text-amber-600 dark:text-amber-400",ring:"border-amber-500/35"},sky:{bar:"bg-sky-500",text:"text-sky-600 dark:text-sky-400",ring:"border-sky-500/35"}};function Ze(){const r=R();return e.jsxs(O,{children:[e.jsx(M,{kicker:"Budget Planner",label:"September plan, paced and protected",icon:Oe}),e.jsxs("div",{className:"mt-[0.9em] flex flex-1 flex-col justify-between gap-[0.5em]",children:[Je.map((t,s)=>{const a=Xe[t.tone];return e.jsxs(p.div,{className:d("rounded-lg border bg-card/70 px-[0.8em] py-[0.5em]",t.held?a.ring:"border-border"),initial:r?!1:{opacity:0,y:10},animate:{opacity:1,y:0},transition:{delay:.225+s*.24,duration:.675},children:[e.jsxs("div",{className:"flex items-baseline justify-between gap-[0.6em]",children:[e.jsx("span",{className:"truncate text-[0.85em] text-foreground",children:t.name}),e.jsx("span",{className:"shrink-0 text-[0.85em] font-semibold tabular-nums",children:t.planned})]}),e.jsxs("div",{className:"mt-[0.4em] flex items-center gap-[0.6em]",children:[e.jsx("div",{className:"h-[0.35em] flex-1 overflow-hidden rounded-full bg-border",children:e.jsx(p.div,{className:d("h-full rounded-full",a.bar),initial:r?!1:{width:0},animate:{width:`${t.pace}%`},transition:{delay:.45+s*.24,duration:1.5,ease:"easeOut"}})}),e.jsxs("span",{className:d("flex shrink-0 items-center gap-[0.3em] text-[0.72em] font-medium",a.text),children:[t.held?e.jsx(Me,{className:"h-[0.85em] w-[0.85em]"}):null,t.verdict]})]})]},t.name)}),e.jsx(p.p,{className:"rounded-lg border border-primary/25 bg-primary/8 px-[0.8em] py-[0.5em] text-[0.78em] text-foreground",initial:r?!1:{opacity:0},animate:{opacity:1},transition:{delay:1.95,duration:.75},children:"Track record: 11 of the last 14 budget moves beat their forecast."})]})]})}const X=[{when:"Mon 09:12",who:"Meta",what:"Budget raised on Autumn Layers",impact:"+£1,840 revenue",up:!0},{when:"Tue 14:40",who:"Google",what:"Shopping bid strategy switched",impact:"-9% ROAS",up:!1},{when:"Wed 08:05",who:"Site",what:"Delivery threshold changed to £40",impact:"+2.1% CVR",up:!0},{when:"Thu 16:22",who:"Meta",what:"Two ad sets paused",impact:"-£620 revenue",up:!1}];function et(){const r=R(),[t,s]=h.useState(r?X.length:0);return h.useEffect(()=>{if(r)return;s(0);const a=X.map((n,o)=>setTimeout(()=>s(o+1),800+o*1900));return()=>
1a.forEach(clearTimeout)},[r]),e.jsxs(O,{children:[e.jsx(M,{kicker:"Change Intelligence",label:"Every change, matched to its result",icon:Pe}),e.jsxs("div",{className:"relative mt-[0.9em] flex-1 pl-[1.4em]",children:[e.jsx("span",{"aria-hidden":!0,className:"absolute left-[0.45em] top-[0.4em] bottom-[0.4em] w-px bg-border"}),e.jsx("div",{className:"flex h-full flex-col justify-between gap-[0.45em]",children:X.map((a,n)=>e.jsxs(p.div,{className:"relative rounded-lg border border-border bg-card/70 px-[0.8em] py-[0.5em]",initial:r?!1:{opacity:0,x:14},animate:n<t?{opacity:1,x:0}:{opacity:.15,x:14},transition:{duration:.675,ease:"easeOut"},children:[e.jsx("span",{"aria-hidden":!0,className:d("absolute -left-[1.18em] top-[1.1em] h-[0.55em] w-[0.55em] rounded-full",a.up?"bg-emerald-500":"bg-rose-500")}),e.jsxs("div",{className:"flex items-baseline justify-between gap-[0.5em]",children:[e.jsxs("span",{className:"truncate text-[0.72em] uppercase tracking-[0.14em] text-muted-foreground",children:[a.when," - ",a.who]}),e.jsxs("span",{className:d("flex shrink-0 items-center gap-[0.25em] text-[0.78em] font-semibold tabular-nums",a.up?"text-emerald-600 dark:text-emerald-400":"text-rose-600 dar
1k:text-rose-400"),children:[a.up?e.jsx(We,{className:"h-[0.9em] w-[0.9em]"}):e.jsx(He,{className:"h-[0.9em] w-[0.9em]"}),a.impact]})]}),e.jsx("p",{className:"truncate text-[0.88em] text-foreground",children:a.what})]},a.what))})]})]})}const le=[{label:"Margin by product line",x:12,y:20},{label:"Last 14 budget moves",x:66,y:12},{label:"Creative winners",x:8,y:66},{label:"Seasonal demand",x:70,y:68}];function tt(){const r=R(),[t,s]=h.useState(r?3:0);return h.useEffect(()=>{if(r)return;s(0);const a=[1,2,3].map(n=>setTimeout(()=>s(n),1100*n));return()=>a.forEach(clearTimeout)},[r]),e.jsxs(O,{children:[e.jsx(M,{kicker:"Growth Brain",label:"Context remembered, then applied",icon:Le}),e.jsxs("div",{className:"relative mt-[0.8em] flex-1",children:[e.jsx("svg",{viewBox:"0 0 100 100",preserveAspectRatio:"none",className:"absolute inset-0 h-full w-full",children:le.map((a,n)=>e.jsx(p.line,{x1:a.x+8,y1:a.y+5,x2:50,y2:50,stroke:"currentColor",className:"text-primary/45",strokeWidth:"0.5",initial:r?!1:{pathLength:0,opacity:0},animate:t>=1?{pathLength:1,opacity:1}:{pathLength:0,opacity:0},transition:{delay:n*.18,duration:1.05}},a.label))}),le.map((a,n)=>e.jsx(p.span,{className:"absolute max-w-[42%] truncate rounded-full border border-border bg-card/85 px-[0.6em] py-[0.25em] text-[0.72em] text-muted-foreground",style:{left:`${a.x}%`,top:`${a.y}%`},initial:r?!1:{opacity:0,scale:.85},animate:{opacity:1,scale:1},transition:{delay:.225+n*.18,duration:.6},children:a.label},a.label)),e.jsxs(p.div,{className:"absolute left-1/2 top-1/2 w-[58%] -translate-x-1/2 -translate-y-1/2 rounded-lg border border-primary/35 bg-background/95 p-[0.7em] text-center shadow-sm",initial:r?!1:{opacity:0,scale:.9},animate:t>=2?{opacity:1,scale:1}:{opacity:0,scale:.9},transition:{duration:.75},children:[e.jsx("p",{className:"text-[0.7em] uppercase tracking-[0.16em] text-primary",children:"Recommendation"}),e.jsx("p",{className:"mt-[0.3em] text-[0.85em] font-medium leading-snug text-foreground",children:"Move £900 into Outerwear before the cold snap, margin holds at 61%."}),e.jsx(ce,{children:t>=3?e.jsx(p.p,{className:"mt-[0.4em] text-[0.72em] text-muted-foreground",initial:{opacity:0}
1,animate:{opacity:1},children:"Based on 4 remembered facts about Northwind Apparel"}):null})]})]})]})}const H=Array.from({length:18},(r,t)=>t),rt=new Set([4,11]);function st(){const r=R(),[t,s]=h.useState(r?H.length:0);h.useEffect(()=>{if(r)return;s(0);const n=setInterval(()=>s(o=>o>=H.length?o:o+1),330);return()=>clearInterval(n)},[r]);const a=Math.round(t/H.length*100);return e.jsxs(O,{children:[e.jsx(M,{kicker:"Hook Assist",label:"Every screen audited overnight",icon:Be}),e.jsxs("div",{className:"mt-[0.9em] flex flex-1 flex-col",children:[e.jsx("div",{className:"grid flex-1 grid-cols-6 gap-[0.4em]",children:H.map(n=>{const o=n<t,c=o&&rt.has(n);return e.jsx(p.span,{className:d("rounded-md border",c?"border-amber-500/50 bg-amber-500/15":o?"border-primary/35 bg-primary/10":"border-dashed border-border/70 bg-muted/25"),animate:o?{opacity:1}:{opacity:.55},transition:{duration:.375}},n)})}),e.jsxs("div",{className:"mt-[0.7em]",children:[e.jsxs("div",{className:"flex items-baseline justify-between text-[0.76em]",children:[e.jsxs("span",{className:"text-muted-foreground",children:[t," of ",H.length," screens captured"]}),e.jsxs("span",{className:"font-semibold tabular-nums text-primary",children:[a,"%"]})]}),e.jsx("div",{className:"mt-[0.35em] h-[0.35em] overflow-hidden rounded-full bg-border",children:e.jsx(p.div,{className:"h-full rounded-full bg-primary",animate:{width:`${a}%`},transition:{duration:.375}})}),e.jsx("p",{className:"mt-[0.5em] text-[0.74em] text-muted-foreground",children:"2 layout issues flagged: clipped KPI tile at 390px, low contrast on the offer badge."})]})]})]})}const Z=[{name:"GA4 - page_view",detail:"Fired on 100% of sessions",ok:!0},{name:"GA4 - view_item",detail:"Fired, product ID present",ok:!0},{name:"Meta Pixel - AddToCart",detail:"Duplicate fire from theme app",ok:!1},{name:"GA4 - purchase",detail:"Value and currency matched to Shopify",ok:!0}];function at(){const r=R(),[t,s]=h.useState(r?Z.length:0);return h.useEffect(()=>{if(r)return;s(0);const a=Z.map((n,o)=>setTimeout(()=>s(o+1),1e3+o*1800));return()=>a.forEach(clearTimeout)},[r]),e.jsxs(O,{children:[e.jsx(M,{kicker:"Tag & GTM Health",label:"Container checked, tag by tag",icon:Ee}),e.jsx("div",{className:"mt-[0.9em] flex flex-1 flex-col justify-between gap-[0.5em]",children:Z.map((a,n)=>{const o=n<t?a.ok?"ok":"bad":"pending";return e.jsxs("div",{className:d("flex items-center gap-[0.7em] rounded-lg border bg-card/70 px-[0.8em] py-[0.55em] transition-colors",o==="ok"?"border-emerald-500/35":o==="bad"?"border-rose-500/40":"border-border"),children:[e.jsx("span",{className:"relative grid h-[1.4em] w-[1.4em] shrink-0 place-items-center",children:o==="pending"?e.jsx(p.span,{className:"h-[0.6em] w-[0.6em] rounded-full bg-muted-foreground/50",animate:r?{}:{scale:[1,1.5,1],opacity:[.4,1,.4]},transition:{duration:1.8,repeat:1/0,delay:n*.3}}):e.jsx(p.span,{initial:r?!1:{scale:0},animate:{scale:1},className:d("h-[0.7em] w-[0.7em] rounded-full",o==="ok"?"bg-emerald-500":"bg-rose-500")})}),e.jsxs("span",{className:"min-w-0 flex-1",children:[e.jsx("span",{className:"block truncate text-[0.88em] text-foreground",children:a.name}),e.jsx("span",{className:"block truncate text-[0.74em] text-muted-foreground",children:o==="pending"?"Waiting for a live event":a.detail})]}),e.jsx(Ge,{className:d("h-[1em] w-[1em] shrink-0",o==="ok"?"text-emerald-500":o==="bad"?"text-rose-500":"text-muted-foreground/40")})]},a.name)})})]})}const z=[{title:"Meet your Command Centre",body:"Northwind Apparel opens on one score, three priorities and yesterday explained."},{title:"Read a decision",body:"Every card shows the evidence, the money at stake and how to implement it."},{title:"Approve a budget move",body:"Agree or disagree in one click. Hookology logs the outcome against the forecast."},{title:"Book your review",body:"Your account manager walks the same screens with you every fortnight."}];function nt(){const r=R(),[t,s]=h.useState(0);h.useEffect(()=>{if(r)return;const n=setInterval(()=>s(o=>(o+1)%z.length),3900);return()=>clearInterval(n)},[r]);const a=z[t];return e.jsxs(O,{children:[e.jsx(M,{kicker:"Onboarding & Training",label:"Guided from first login",icon:_e}),e.jsxs("div",{className:"mt-[0.9em] flex flex-1 flex-col",children:[e.jsx("div",{className:"relative flex-1 overflow-hidden rounded-lg border border-border bg-card/70",children:e.jsx(ce,{mode:"wait",children:e.jsxs(p.div,{className:"absolute inset-0 flex flex-col justify-center gap-[0.5em] p-[1.1em]",initial:r?!1:{opacity:0,x:24}
1,animate:{opacity:1,x:0},exit:r?{}:{opacity:0,x:-24},transition:{duration:.675,ease:"easeOut"},children:[e.jsxs("span",{className:"w-fit rounded-full border border-primary/30 bg-primary/10 px-[0.6em] py-[0.2em] text-[0.7em] font-medium text-primary",children:["Step ",t+1," of ",z.length]}),e.jsx("p",{className:"font-display text-[1.3em] font-semibold tracking-tight text-foreground",children:a.title}),e.jsx("p",{className:"max-w-[85%] text-[0.85em] leading-relaxed text-muted-foreground",children:a.body})]},a.title)})}),e.jsx("div",{className:"mt-[0.7em] flex items-center gap-[0.4em]",children:z.map((n,o)=>e.jsx("span",{className:"h-[0.3em] flex-1 overflow-hidden rounded-full bg-border",children:e.jsx(p.span,{className:"block h-full rounded-full bg-primary",animate:{width:o<=t?"100%":"0%"},transition:{duration:.75}})},n.title))})]})]})}const he={"budget-planner":Ze,"change-intelligence":et,"growth-brain":tt,"hook-assist":st,"gtm-health":at,"onboarding-training":nt};function ot(r){return r in he}function it({slug:r}){const t=he[r];return t?e.jsx(ze,{children:e.jsx(t,{})}):null}const lt=[{group:"Command",items:["Command Centre","Daily Brief","Decision Centre","Opportunities"]},{group:"Performance",items:["Campaigns","Budget Planner","Attribution","Forecasting"]},{group:"Creative",items:["Creative Library","Creative Intelligence","Ad Builder"]},{group:"Search & Site",items:["SEO Command Centre","Search Demand","Tracking Centre"]},{group:"Operations",items:["Data Sources","Watchtower","Team"]}];function dt({i:r}){const t=[e.jsx("circle",{cx:"6",cy:"6",r:"4"},"c"),e.jsx("rect",{x:"2",y:"2",width:"8",height:"8",rx:"2"},"r"),e.jsx("path",{d:"M2 9l3-4 3 3 2-5",fill:"none",stroke:"currentColor",strokeWidth:"1.6"},"p"),e.jsx("rect",{x:"2",y:"6",width:"2.4",height:"4",rx:"0.6"},"b")];return e.jsx("svg",{viewBox:"0 0 12 12",className:"h-[0.85em] w-[0.85em] shrink-0 fill-current opacity-70","aria-hidden":!0,children:t[r%t.length]})}function re({title:r,sub:t,section:s="Workspace",children:a}){const n=r.split(" - ")[0].trim(),o=lt.map(c=>({...c,items:c.items.filter(u=>u!==n)}));return o[0]={...o[0],items:[n,...o[0].items].slice(0,5)},e.jsxs("div",{className:"flex h-full w-full bg-muted/40 text-foreground",style:{containerType:"inline-size",fontSize:"clamp(7px, 1.75cqi, 12px)"},children:[e.jsxs("aside",{className:"hidden w-[19%] shrink-0 flex-col border-r border-border bg-background/80 px-[0.85em] py-[0.9em] sm:flex",children:[e.jsxs("div",{className:"flex items-center gap-[0.5em]",children:[e.jsx("span",{className:"grid h-[1.7em] w-[1.7em] shrink-0 place-items-center rounded-[0.45em] bg-primary/10 text-primary",children:e.jsx(Ye,{className:"h-[1.2em] w-[1.2em]"})}),e.jsx("span",{className:"truncate font-display text-[1em] font-semibold tracking-tight",children:"Hookology"})]}),e.jsxs("div",{className:"mt-[0.9em] rounded-[0.5em] border border-border bg-muted/40 px-[0.6em] py-[0.45em]",children:[e.jsx("p",{className:"truncate text-[0.62em] uppercase tracking-[0.16em] text-muted-foreground",children:"Client"}),e.jsx("p",{className:"truncate text-[0.82em] font-medium",children:"Northwind Apparel"})]}),e.jsx("nav",{className:"mt-[0.9em] min-h-0 flex-1 space-y-[0.75em] overflow-hidden [mask-image:linear-gradient(to_bottom,black_82%,transparent)]",children:o.map((c,u)=>e.jsxs("div",{children:[e.jsx("p",{className:"mb-[0.3em] truncate text-[0.6em] font-semibold uppercase tracking-[0.18em] text-muted-foreground/70",children:c.group}),e.jsx("ul",{className:"space-y-[0.15em]",children:c.items.map((i,W)=>e.jsxs("li",{className:d("flex items-center gap-[0.45em] rounded-[0.4em] px-[0.45em] py-[0.3em] text-[0.78em]",i===n?"bg-primary/12 font-medium text-primary ring-1 ring-inset ring-primary/25":"text-muted-foreground"),children:[e.jsx(dt,{i:u+W}),e.jsx("span",{className:"truncate",children:i})]},i))})]},c.group))}),e.jsxs("div",{className:"mt-[0.6em] flex items-center gap-[0.45em] rounded-[0.5em] border border-border bg-muted/30 px-[0.5em] py-[0.4em]",children:[e.jsxs("svg",{viewBox:"0 0 24 24",className:"h-[1.6em] w-[1.6em] shrink-0","aria-hidden":!0,
1children:[e.jsx("circle",{cx:"12",cy:"12",r:"12",className:"fill-primary/15"}),e.jsx("text",{x:"12.75",y:"12.5",textAnchor:"middle",dominantBaseline:"central",className:"fill-primary text-[9.5px] font-semibold",children:"AW"})]}),e.jsxs("span",{className:"min-w-0",children:[e.jsx("span",{className:"block truncate text-[0.75em] font-medium",children:"Amelia Wright"}),e.jsx("span",{className:"block truncate text-[0.65em] text-muted-foreground",children:"Account lead"})]})]})]}),e.jsxs("div",{className:"flex min-w-0 flex-1 flex-col",children:[e.jsxs("header",{className:"flex shrink-0 items-center gap-[0.7em] border-b border-border bg-background/80 px-[1em] py-[0.6em]",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsxs("p",{className:"truncate text-[0.62em] uppercase tracking-[0.18em] text-muted-foreground",children:[s," / ",n]}),e.jsx("p",{className:"truncate text-[0.82em] font-semibold tracking-tight",children:n})]}),e.jsxs("div",{className:"ml-auto hidden min-w-0 items-center gap-[0.4em] rounded-full border border-border bg-muted/40 px-[0.6em] py-[0.25em] text-[0.7em] text-muted-foreground md:flex",children:[e.jsxs("svg",{viewBox:"0 0 12 12",className:"h-[0.8em] w-[0.8em]","aria-hidden":!0,children:[e.jsx("circle",{cx:"5",cy:"5",r:"3.2",fill:"none",stroke:"currentColor",strokeWidth:"1.2"}),e.jsx("path",{d:"M7.5 7.5L10.5 10.5",stroke:"currentColor",strokeWidth:"1.2"})]}),e.jsx("span",{className:"truncate",children:"Search Northwind Apparel"})]}),e.jsx("span",{className:"hidden shrink-0 rounded-full border border-border bg-background px-[0.55em] py-[0.18em] text-[0.68em] text-muted-foreground sm:inline",children:"All platforms"}),e.jsxs("span",{className:"hidden shrink-0 items-center gap-[0.3em] rounded-full border border-emerald-500/35 bg-emerald-500/10 px-[0.55em] py-[0.18em] text-[0.68em] text-emerald-600 dark:text-emerald-400 sm:inline-flex",children:[e.jsx("span",{className:"h-[0.4em] w-[0.4em] rounded-full bg-emerald-500"})," Synced"]})]}),e.jsxs("div",{className:"min-h-0 flex-1 overflow-hidden bg-background px-[1.1em] py-[0.9em]",children:[e.jsxs("div",{className:"flex items-baseline justify-between gap-[1em] border-b border-border pb-[0.6em]",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate text-[0.66em] font-semibold uppercase tracking-[0.18em] text-primary",children:"Northwind Apparel"}),e.jsx("p",{className:"truncate font-display text-[1.15em] font-semibold tracking-tight",children:r})]}),e.jsx("p",{className:"shrink-0 text-[0.72em] text-muted-foreground",children:t})]}),e.jsx("div",{className:"mt-[0.8em]",children:a})]})]})]})}function y({title:r,sub:t,children:s}){return e.jsx(re,{title:r,sub:t,children:s})}function m({label:r,value:t,note:s,tone:a="default"}){return e.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 px-[0.8em] py-[0.6em]",children:[e.jsx("p",{className:"truncate text-[0.72em] uppercase tracking-[0.14em] text-muted-foreground",children:r}),e.jsx("p",{className:"mt-[0.2em] font-display text-[1.3em] font-semibold tracking-tight tabular-nums",children:t}),e.jsx("p",{className:d("mt-[0.15em] truncate text-[0.72em]",a==="up"?"text-emerald-600 dark:text-emerald-400":a==="down"?"text-rose-600 dar
1k:text-rose-400":"text-muted-foreground"),children:s})]})}function b({children:r,tone:t="muted"}){const s={muted:"border-border text-muted-foreground",good:"border-emerald-500/40 text-emerald-600 dark:text-emerald-400",warn:"border-amber-500/40 text-amber-600 dark:text-amber-400",bad:"border-rose-500/40 text-rose-600 dark:text-rose-400",primary:"border-primary/40 text-primary"};return e.jsx("span",{className:d("inline-flex shrink-0 items-center rounded-full border bg-background px-[0.55em] py-[0.15em] text-[0.7em] font-medium",s[t]),children:r})}function N({children:r}){return e.jsx("div",{className:"flex items-center gap-[0.6em] border-b border-border/60 py-[0.5em] last:border-0",children:r})}function mt({points:r,tone:t="primary"}){const s=Math.max(...r),a=Math.min(...r),n=r.map((o,c)=>`${c/(r.length-1)*100},${28-(o-a)/(s-a||1)*24}`).join(" ");return e.jsx("svg",{viewBox:"0 0 100 30",preserveAspectRatio:"none",className:"h-[2.2em] w-full",children:e.jsx("polyline",{points:n,fill:"none",strokeWidth:"2",stroke:"currentColor",className:t==="emerald"?"text-emerald-500":"text-primary",vectorEffect:"non-scaling-stroke"})})}function ct(){const r=[{term:"womens waterproof jacket",vol:"27,100",trend:"+34%",share:"8%",act:["Capture","primary"]},{term:"packable down coat",vol:"12,400",trend:"+61%",share:"3%",act:["Rising","good"]},{term:"merino base layer",vol:"9,900",trend:"+12%",share:"21%",act:["Holding","muted"]},{term:"insulated gilet womens",vol:"6,600",trend:"+48%",share:"1%",act:["Gap","warn"]},{term:"school coat waterproof",vol:"5,400",trend:"-8%",share:"14%",act:["Cooling","muted"]}];return e.jsxs(y,{title:"Untapped Demand",sub:"Last 30 days vs previous period",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(m,{label:"Category demand",value:"418k",note:"Monthly searches tracked"}),e.jsx(m,{label:"Captured",value:"14.6%",note:"Up 2.1 points",tone:"up"}),e.jsx(m,{label:"Untapped value",value:"£46,800",note:"Estimated monthly revenue",tone:"up"}),e.jsx(m,{label:"Rising terms",value:"23",note:"Growing faster than category"})]}),e.jsxs("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:[e.jsxs("div",{className:"flex items-center gap-[0.6em] border-b border-border py-[0.45em] text-[0.7em] uppercase tracking-[0.12em] text-muted-foreground",children:[e.jsx("span",{className:"min-w-0 flex-1",children:"Search term"}),e.jsx("span",{className:"w-[16%] text-right",children:"Volume"}),e.jsx("span",{className:"w-[14%] text-right",children:"Trend"}),e.jsx("span",{className:"w-[16%] text-right",children:"Your share"}),e.jsx("span",{className:"w-[18%] text-right",children:"Verdict"})]}),r.map(t=>e.jsxs(N,{children:[e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.85em]",children:t.term}),e.jsx("span",{className:"w-[16%] text-right text-[0.8em] tabular-nums text-muted-foreground",children:t.vol}),e.jsx("span",{className:d("w-[14%] text-right text-[0.8em] font-medium tabular-nums",t.trend.startsWith("+")?"text-emerald-600 dark:text-emerald-400":"text-muted-foreground"),children:t.trend}),e.jsx("span",{className:"w-[16%] text-right text-[0.8em] tabular-nums",children:t.share}),e.jsx("span",{className:"flex w-[18%] justify-end",children:e.jsx(b,{tone:t.act[1],children:t.act[0]})})]},t.term))]}),e.jsx("p",{className:"mt-[0.7em] rounded-lg border border-primary/25 bg-primary/8 px-[0.8em] py-[0.5em] text-[0.78em]",children:"Biggest gap: insulated gilets. 6,600 searches a month, 1% captured, and no landing page. Worth an estimated £7,200 a month at your current conversion rate and 61% outerwear margin."})]})}function xt(){const r=[{title:"Outerwear category page thin on content",value:"£4,100/mo",eff:"Medium",tone:"primary"},{title:"12 product pages missing structured data",value:"£1,850/mo",eff:"Low",tone:"good"},{title:"Waterproof jacket cluster ranks 11-14",value:"£6,400/mo",eff:"High",tone:"warn"},{title:"Duplicate titles across 8 size variants",value:"£980/mo",eff:"Low",tone:"good"}];return e.jsxs(y,{title:"SEO Command Centre",sub:"Last 30 days vs previous period",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(m,{label:"Organic sessions",value:"44,035",note:"+8.9% period on period",tone:"up"}),e.jsx(m,{label:"Organic revenue",value:"£112.9k",note:"+6.0%, GA4 attributed",tone:"up"}),e.jsx(m,{label:"Visibility score",value:"63",note:"+4 points, top 20 terms",tone:"up"}),e.jsx(m,{label:"Health score",value:"80",note:"Technical, content and indexation"})]}),e.jsxs("div",{className:"mt-[0.8em] grid grid-cols-12 gap-[0.7em]",children:[e.jsxs("div",{className:"col-span-5 rounded-lg border border-border p-[0.8em]",children:[e.jsx("p",{className:"text-[0.72em] uppercase tracking-[0.14em] text-muted-foreground",children:"Organic revenue, 12 weeks"}),e.jsx("div",{className:"mt-[0.3em] text-primary",children:e.jsx(mt,{points:[62,66,64,71,74,73,80,86,84,92,101,113]})}),e.jsxs("div",{className:"mt-[0.4em] grid grid-cols-2 gap-[0.5em]",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-[0.72em] text-muted-foreground",children:"Ranking terms"}),e.jsx("p",{className:"text-[1em] font-semibold tabular-nums",children:"2,418"})]}),e.jsxs("div",{children:[e.jsx("p",{className:"text-[0.72em] text-muted-foreground",children:"Top 3 positions"}),e.jsx("p",{className:"text-[1em] font-semibold tabular-nums",children:"186"})]})]})]}),e.jsx("div",{className:"col-span-7 rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(N,{children:[e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.85em]",children:t.title}),e.jsx("span",{className:"shrink-0 text-[0.82em] font-semibold tabular-nums",children:t.value}),e.jsxs(b,{tone:t.tone,children:[t.eff," effort"]})]},t.title))})]})]})}
1function ut(){const r=[{name:"Meta Ads",detail:"2 ad accounts, 14 campaigns",synced:"4 min ago",tone:"good",state:"Healthy"},{name:"Google Ads",detail:"Search, Shopping, Performance Max",synced:"6 min ago",tone:"good",state:"Healthy"},{name:"Shopify",detail:"Orders, products, margin",synced:"2 min ago",tone:"good",state:"Healthy"},{name:"GA4",detail:"Sessions, events, attribution",synced:"9 min ago",tone:"good",state:"Healthy"},{name:"Search Console",detail:"Queries, pages, indexation",synced:"31 min ago",tone:"good",state:"Healthy"},{name:"Pinterest Ads",detail:"1 ad account, 3 campaigns",synced:"12 min ago",tone:"good",state:"Healthy"}];return e.jsxs(y,{title:"Connected Data",sub:"6 sources connected, all current",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(m,{label:"Connected",value:"6",note:"Ads, store, analytics and search",tone:"up"}),e.jsx(m,{label:"Freshness",value:"24h",note:"Oldest section refreshed 31 min ago",tone:"up"}),e.jsx(m,{label:"Sync success",value:"100%",note:"Last 30 runs, no failures",tone:"up"}),e.jsx(m,{label:"Data quality",value:"98",note:"3,412 checks passed",tone:"up"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(N,{children:[e.jsx("span",{className:"w-[24%] shrink-0 truncate text-[0.87em] font-medium",children:t.name}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.8em] text-muted-foreground",children:t.detail}),e.jsxs("span",{className:"shrink-0 text-[0.76em] text-muted-foreground",children:["Synced ",t.synced]}),e.jsx(b,{tone:t.tone,children:t.state})]},t.name))}),e.jsx("p",{className:"mt-[0.7em] text-[0.78em] text-muted-foreground",children:"Everything is normalised into one data layer, so spend, orders, sessions and rankings line up on the same dates and the same client scope before any number reaches a dashboard."})]})}function pt(){const r=[{name:"Page view",vol:"128,410",cover:"100%",last:"12 seconds ago",tone:"good"},{name:"Product view",vol:"46,220",cover:"99%",last:"31 seconds ago",tone:"good"},{name:"Add to cart",vol:"9,180",cover:"97%",last:"2 minutes ago",tone:"good"},{name:"Checkout started",vol:"4,060",cover:"98%",last:"3 minutes ago",tone:"good"},{name:"Purchase",vol:"1,190",cover:"99%",last:"7 minutes ago",tone:"good"}];return e.jsxs(y,{title:"Tracking Centre",sub:"Live, first-party events, last 30 days",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(m,{label:"Events captured",value:"189k",note:"Across 5 tracked event types",tone:"up"}),e.jsx(m,{label:"Purchases matched",value:"1,190",note:"99% matched to Shopify orders",tone:"up"}),e.jsx(m,{label:"Revenue tracked",value:"£128.9k",note:"Within 1.2% of the store",tone:"up"}),e.jsx(m,{label:"Validation",value:"Passing",note:"All checks green for 21 days",tone:"up"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(N,{children:[e.jsx("span",{className:"w-[26%] shrink-0 truncate text-[0.87em]",children:t.name}),e.jsx("span",{className:"w-[18%] text-right text-[0.82em] font-medium tabular-nums",children:t.vol}),e.jsx("span",{className:"w-[14%] text-right text-[0.82em] tabular-nums",children:t.cover}),e.jsxs("span",{className:"min-w-0 flex-1 truncate text-right text-[0.76em] text-muted-foreground",children:["Last seen ",t.last]}),e.jsx(b,{tone:t.tone,children:"Healthy"})]},t.name))}),e.jsx("p",{className:"mt-[0.7em] rounded-lg border border-emerald-500/30 bg-emerald-500/10 px-[0.8em] py-[0.5em] text-[0.78em]",children:"Reconciliation: 1,190 first-party purchases against 1,204 platform-reported conversions and 1,188 Shopify orders for the same window. Measurement is trusted, so budget decisions run on it."})]})}function ht(){const r=[{page:"/collections/outerwear?sort=price",issue:"Parameter URL crawled, canonical set",tone:"good",state:"Resolved"},{page:"/products/aurora-parka-xs",issue:"Variant excluded by canonical",tone:"good",state:"Correct"},{page:"/blog/how-to-layer",issue:"Discovered, not yet indexed, 9 days",tone:"warn",state:"Watch"},{page:"/collections/sale",issue:"Crawled, low value, noindex applied",tone:"muted",state:"By design"}];return e.jsxs(y,{title:"Indexation Health",sub:"1,842 pages checked, updated today",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(m,{label:"Index coverage",value:"94%",note:"1,731 of 1,842 pages indexed",tone:"up"}
1),e.jsx(m,{label:"Revenue pages",value:"100%",note:"All 486 product pages indexed",tone:"up"}),e.jsx(m,{label:"Canonical conflicts",value:"2",note:"Down from 34 last month",tone:"up"}),e.jsx(m,{label:"Health score",value:"88",note:"+11 since the last crawl",tone:"up"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(N,{children:[e.jsx("span",{className:"w-[36%] shrink-0 truncate font-mono text-[0.76em] text-muted-foreground",children:t.page}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.83em]",children:t.issue}),e.jsx(b,{tone:t.tone,children:t.state})]},t.page))}),e.jsx("p",{className:"mt-[0.7em] text-[0.78em] text-muted-foreground",children:"Pages are weighted by the revenue they earn, so a de-indexed best seller outranks a hundred tag pages in the priority queue."})]})}function gt(){const r=[{name:"Rainy Commute - UGC 21s",pred:"3.4x",conf:"High",win:"78%",tone:"good"},{name:"Aurora Parka - Studio static",pred:"2.6x",conf:"High",win:"61%",tone:"good"},{name:"Layering guide - Carousel",pred:"1.9x",conf:"Medium",win:"38%",tone:"warn"},{name:"20% off banner - Static",pred:"1.2x",conf:"High",win:"14%",tone:"bad"}];return e.jsxs(y,{title:"Creative Predictor",sub:"Scored before launch, 214 historical ads",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(m,{label:"Model accuracy",value:"82%",note:"On the last 60 graded ads",tone:"up"}),e.jsx(m,{label:"ROAS error",value:"0.31x",note:"Mean absolute error"}),e.jsx(m,{label:"CTR error",value:"0.18%",note:"Mean absolute error"}),e.jsx(m,{label:"Wasted spend avoided",value:"£7,410",note:"Ads held back this quarter",tone:"up"})]}),e.jsxs("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:[e.jsxs("div",{className:"flex items-center gap-[0.6em] border-b border-border py-[0.45em] text-[0.7em] uppercase tracking-[0.12em] text-muted-foreground",children:[e.jsx("span",{className:"min-w-0 flex-1",children:"Creative"}),e.jsx("span",{className:"w-[16%] text-right",children:"Predicted ROAS"}),e.jsx("span",{className:"w-[16%] text-right",children:"Confidence"}),e.jsx("span",{className:"w-[18%] text-right",children:"Win probability"})]}),r.map(t=>e.jsxs(N,{children:[e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.85em]",children:t.name}),e.jsx("span",{className:"w-[16%] text-right text-[0.85em] font-semibold tabular-nums",children:t.pred}),e.jsx("span",{className:"w-[16%] text-right text-[0.8em] text-muted-foreground",children:t.conf}),e.jsx("span",{className:"flex w-[18%] justify-end",children:e.jsx(b,{tone:t.tone,children:t.win})})]},t.name))]}),e.jsx("p",{className:"mt-[0.7em] rounded-lg border border-primary/25 bg-primary/8 px-[0.8em] py-[0.5em] text-[0.78em]",children:"Recommendation: launch the UGC cut at £180 a day, hold the discount banner. Predictions are reconciled against actuals every week, so the model keeps learning your account."})]})}function bt(){return e.jsx(y,{title:"Ask Hooky",sub:"Strategy session - 23 September",children:e.jsxs("div",{className:"space-y-[0.6em]",children:[e.jsx("div",{className:"ml-auto w-[70%] rounded-lg rounded-br-sm border border-primary/30 bg-primary/10 px-[0.8em] py-[0.55em] text-[0.85em]",children:"Where should the extra £3,000 go this month?"}),e.jsxs("div",{className:"w-[88%] rounded-lg rounded-bl-sm border border-border bg-card/70 px-[0.8em] py-[0.6em]",children:[e.jsx("p",{className:"text-[0.85em] leading-snug",children:"Put £1,900 into Google Shopping on Outerwear and £1,100 into the Rainy Commute UGC ad set on Meta. Both are profit positive at your current margins and neither is inside a settling window."}),e.jsxs("div",{className:"mt-[0.5em] grid grid-cols-3 gap-[0.4em]",children:[e.jsxs("div",{className:"rounded-md border border-border bg-muted/40 px-[0.5em] py-[0.35em]",children:[e.jsx("p",{className:"text-[0.68em] uppercase tracking-[0.12em] text-muted-foreground",children:"Expected revenue"}),e.jsx("p",{className:"text-[0.95em] font-semibold tabular-nums",children:"+£8,900"})]}),e.jsxs("div",{className:"rounded-md border border-border bg-muted/40 px-[0.5em] py-[0.35em]",children:[e.jsx("p",{className:"text-[0.68em] uppercase tracking-[0.12em] text-muted-foreground",children:"Contribution profit"}),e.jsx("p",{className:"text-[0.95em] font-semibold tabular-nums",children:"+£3,120"})]}),e.jsxs("div",{className:"rounded-md border border-border bg-muted/40 px-[0.5em] py-[0.35em]",children:[e.jsx("p",{className:"text-[0.68em] uppercase tracking-[0.12em] text-muted-foreground",children:"Confidence"}),e.jsx("p",{className:"text-[0.95em] font-semibold",children:"High"})]})]}),e.jsx("p",{className:"mt-[0.5em] text-[0.74em] text-muted-foreground",children:"Based on 23 days of spend, Shopify margin by product line, and the last 14 budget moves on this account."}),e.jsxs("div",{className:"mt-[0.5em] flex flex-wrap gap-[0.35em]",children:[e.jsx(b,{tone:"primary",children:"Apply to Budget Planner"}),e.jsx(b,{tone:"muted",children:"Show the working"}),e.jsx(b,{tone:"muted",children:"Send to Adam"})]})]}),e.jsx("div",{className:"ml-auto w-[60%] rounded-lg rounded-br-sm border border-primary/30 bg-primary/10 px-[0.8em] py-[0.55em] text-[0.85em]",children:"What happens to blended ROAS if I do that?"}),e.jsx("div",{className:"w-[80%] rounded-lg rounded-bl-sm border border-border bg-card/70 px-[0.8em] py-[0.55em] text-[0.85em] leading-snug",children:"Blended ROAS dips from 3.91x to about 3.72x for a fortnight while the new spend matures, then recovers above 4.0x. Contribution profit is up throughout, which is the number your board tracks."})]})})}function ft(){const r=[{name:"Revenue Guard alert",who:"Adam, Sarah",channel:"Email, in-app",when:"Immediately",tone:"good"},{name:"Budget pacing off track",who:"Sarah",channel:"Email digest",when:"Daily 08:15",tone:"good"},{name:"Creative fatigue detected",who:"Ollie",channel:"In-app",when:"Weekly, Monday",tone:"good"},{name:"New opportunity found",who:"Whole team",channel:"Email digest",when:"Daily 08:15",tone:"good"},{name:"Tracking gap detected",who:"Adam",channel:"Email",when:"Immediately",tone:"good"}];return e.jsxs(y,{title:"Notification System",sub:"Last 24 hours",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(m,{label:"Events raised",value:"34",note:"Across 11 active rules"}),e.jsx(m,{label:"Emails sent",value:"12",note:"All delivered",tone:"up"}),e.jsx(m,{label:"Actioned",value:"9",note:"Within the working day",tone:"up"}),e.jsx(m,{label:"Muted as noise",value:"2",note:"Rules tuned automatically"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(N,{children:[e.jsx("span",{className:"w-[30%] shrink-0 truncate text-[0.86em]",children:t.name}),e.jsx("span",{className:"w-[20%] shrink-0 truncate text-[0.78em] text-muted-foreground",children:t.who}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.78em] text-muted-foreground",children:t.channel}),e.jsx("span",{className:"shrink-0 text-[0.78em] text-muted-foreground",children:t.when}),e.jsx(b,{tone:t.tone,children:"On"})]},t.name))}),e.jsx("p",{className:"mt-[0.7em] text-[0.78em] text-muted-foreground",children:"Digests are sent in your working timezone, on 15 minute intervals of your choosing, and every alert carries the evidence and the recommended fix rather than a bare number."})]})}function jt(){const r=[{name:"AI Watchtower",score:"0 alerts",note:"No anomalies in 14 days",tone:"good"},{name:"Sync reliability",score:"100",note:"Last 120 runs succeeded",tone:"good"},{name:"Connections",score:"6 of 6",note:"All authorised and current",tone:"good"},{name:"Tracking & GTM",score:"100",note:"All tags firing as expected",tone:"good"},{name:"Data quality",score:"98",note:"2 low-priority checks open",tone:"warn"}];return e.jsxs(y,{title:"Watchtower",sub:"Health scan completed 2 minutes ago",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(m,{label:"Health score",value:"97",note:"Weighted across five lanes",tone:"up"}),e.jsx(m,{label:"Anomalies caught",value:"6",note:"This quarter, all resolved",tone:"up"}),e.jsx(m,{label:"Mean time to detect",value:"18 min",note:"From first unusual reading",tone:"up"}),e.jsx(m,{label:"Spend protected",value:"£11,240",note:"Since the account went live",tone:"up"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(N,{children:[e.jsx("span",{className:"w-[26%] shrink-0 truncate text-[0.87em]",children:t.name}),e.jsx("span",{className:"w-[16%] shrink-0 text-[0.85em] font-semibold tabular-nums",children:t.score}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.78em] text-muted-foreground",children:t.note}),e.jsx(b,{tone:t.tone,children:t.tone==="good"?"Healthy":"Monitoring"})]},t.name))}),e.jsx("p",{className:"mt-[0.7em] text-[0.78em] text-muted-foreground",children:"Watchtower learns the normal shape of your account, so it flags a 22% drop in add to cart on a Tuesday morning before it becomes a bad month."})]})}const yt={"search-demand":ct,"seo-command-centre":xt,"data-sources":ut,"tracking-centre":pt,"indexation-health":ht,"predicted-roas":gt,"hook-ai":bt,notifications:ft,watchtower:jt};function Nt(r){let t=2166136261;for(let s=0;s<r.length;s++)t^=r.charCodeAt(s),t=Math.imul(t,16777619);return Math.abs(t)}function l(r,t,s=0){return r[(t+s*7919)%r.length]}const k=["£612,480","£184,500","£212,940","£94,310","£38,720","£61,240"],se=["3.32x","3.94x","2.81x","4.12x","3.05x"],ae=["+10.3%","+8.4%","+12.6%","+4.1%","+6.8%"],_=["1,284","412","96","38","212","24"],D=["On track","Improving","Approved","Watch","Actioned"],ge=["Amelia Wright","Sarah Whitfield","Tom Reeves","Priya Nair","Dan Osei"],ne=["Mon 02","Tue 03","Wed 04","Thu 05","Fri 06"],F=["good","primary","good","warn","good"],vt=[{name:"Google Ads",share:44},{name:"Meta",share:37},{name:"Pinterest",share:11}
1,{name:"TikTok",share:8}];function P({label:r,value:t,note:s,tone:a="default"}){return e.jsxs("div",{className:"min-w-0 rounded-lg border border-border bg-muted/30 px-[0.8em] py-[0.6em]",children:[e.jsx("p",{className:"truncate text-[0.7em] uppercase tracking-[0.14em] text-muted-foreground",children:r}),e.jsx("p",{className:"mt-[0.2em] truncate font-display text-[1.3em] font-semibold tracking-tight tabular-nums",children:t}),e.jsx("p",{className:d("mt-[0.15em] truncate text-[0.7em]",a==="up"?"text-emerald-600 dark:text-emerald-400":a==="down"?"text-rose-600 dark:text-rose-400":"text-muted-foreground"),children:s})]})}function f({children:r,tone:t="muted"}){const s={muted:"border-border text-muted-foreground",good:"border-emerald-500/40 text-emerald-600 dark:text-emerald-400",warn:"border-amber-500/40 text-amber-600 dark:text-amber-400",bad:"border-rose-500/40 text-rose-600 dark:text-rose-400",primary:"border-primary/40 text-primary"};return e.jsx("span",{className:d("inline-flex shrink-0 items-center rounded-full border bg-background px-[0.55em] py-[0.15em] text-[0.68em] font-medium",s[t]),children:r})}function Q({title:r,action:t,children:s,className:a}){return e.jsxs("div",{className:d("min-w-0 rounded-lg border border-border bg-background",a),children:[e.jsxs("div",{className:"flex items-center justify-between gap-[0.6em] border-b border-border px-[0.8em] py-[0.5em]",children:[e.jsx("p",{className:"truncate text-[0.82em] font-medium",children:r}),t?e.jsx(f,{tone:"primary",children:t}):null]}),e.jsx("div",{className:"px-[0.8em] py-[0.5em]",children:s})]})}function wt({seed:r,className:t}){const s=Array.from({length:14},(a,n)=>{const o=20+(r>>n)%13*4+n*1.6;return`${n/13*100},${72-Math.min(68,o)}`}).join(" ");return e.jsxs("svg",{viewBox:"0 0 100 72",preserveAspectRatio:"none",className:d("h-full w-full",t),"aria-hidden":!0,children:[e.jsx("polyline",{points:s,fill:"none",stroke:"currentColor",strokeWidth:"1.6",className:"text-primary"}),e.jsx("polyline",{points:`0,72 ${s} 100,72`,className:"fill-primary/10 stroke-none"})]})}function oe({d:r,count:t=4}){return e.jsx("div",{className:d("grid gap-[0.55em]",t===3?"grid-cols-3":"grid-cols-4"),children:r.tiles.slice(0,t).map(s=>e.jsx(P,{...s},s.label))})}function $({d:r}){return e.jsxs("div",{className:"rounded-lg border border-primary/25 bg-primary/8 px-[0.8em] py-[0.6em]",children:[e.jsx("p",{className:"text-[0.7em] font-semibold uppercase tracking-[0.14em] text-primary",children:r.second?.heading??"What Hookology suggests"}),e.jsx("p",{className:"mt-[0.3em] line-clamp-4 text-[0.78em] leading-relaxed text-foreground/90",children:r.second?.body??r.feature.summary})]})}function j(r){return e.jsxs(e.Fragment,{children:[e.jsx(oe,{d:r}),e.jsxs("div",{className:"mt-[0.8em] overflow-hidden rounded-lg border border-border",children:[e.jsxs("div",{className:"grid grid-cols-[2.4fr_1fr_1fr_0.9fr] gap-[0.6em] border-b border-border bg-muted/40 px-[0.8em] py-[0.45em] text-[0.68em] uppercase tracking-[0.12em] text-muted-foreground",children:[e.jsx("span",{children:r.feature.name}),e.jsx("span",{className:"text-right",children:"Spend"}),e.jsx("span",{className:"text-right",children:"ROAS"}),e.jsx("span",{className:"text-right",children:"Status"})]}),r.points.map((t,s)=>e.jsxs("div",{className:"grid grid-cols-[2.4fr_1fr_1fr_0.9fr] items-center gap-[0.6em] border-b border-border/60 px-[0.8em] py-[0.45em] text-[0.8em] last:border-0",children:[e.jsx("span",{className:"truncate",children:t}),e.jsx("span",{className:"text-right tabular-nums text-muted-foreground",children:l(k,r.seed,s+2)}),e.jsx("span",{className:"text-right tabular-nums text-muted-foreground",children:l(se,r.seed,s+5)}),e.jsx("span",{className:"flex justify-end",children:e.jsx(f,{tone:l(F,r.seed,s+9),children:l(D,r.seed,s+3)})})]},t))]})]})}function ee(r){const t=["Detected","In review","Actioned"];return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center justify-between gap-[0.6em]",children:[e.jsx("p",{className:"truncate text-[0.85em] font-medium",children:r.feature.blocks[0]?.heading??r.feature.tagline}),e.jsx(f,{tone:"primary",children:`${l(_,r.seed,1)} open`})]}),e.jsx("div",{className:"mt-[0.6em] grid grid-cols-3 gap-[0.6em]",children:t.map((s,a)=>e.jsxs("div",{className:"min-w-0 rounded-lg border border-border bg-muted/25 p-[0.5em]",children:[e.jsxs("p",{className:"mb-[0.4em] flex items-center justify-between text-[0.7em] uppercase tracking-[0.12em] text-muted-foreground",children:[s,e.jsx("span",{className:"tabular-nums",children:2+a})]}),e.jsx("div",{className:"space-y-[0.4em]",children:r.points.filter((n,o)=>o%3===a).concat(r.points.slice(0,1)).slice(0,2).map((n,o)=>e.jsxs("div",{className:"rounded-md border border-border bg-background px-[0.55em] py-[0.45em]",children:[e.jsx("p",{className:"line-clamp-2 text-[0.76em] leading-snug",children:n}),e.jsxs("div",{className:"mt-[0.35em] flex items-center justify-between",children:[e.jsx("span",{className:"text-[0.7em] tabular-nums text-muted-foreground",children:l(k,r.seed,a*3+o)}),e.jsx(f,{tone:l(F,r.seed,a+o),children:l(D,r.seed,a+o+2)})]})]},n+o))})]},s))}),e.jsx("div",{className:"mt-[0.7em]",children:e.jsx($,{d:r})})]})}function B(r){return e.jsxs("div",{className:"grid grid-cols-[1fr_1.25fr] gap-[0.7em]",children:[e.jsxs("div",{className:"min-w-0 rounded-lg border border-border",children:[e.jsx("div",{className:"border-b border-border px-[0.7em] py-[0.45em] text-[0.7em] uppercase tracking-[0.12em] text-muted-foreground",children:r.feature.heroKicker}),r.points.map((t,s)=>e.jsxs("div",{className:d("border-b border-border/60 px-[0.7em] py-[0.45em] last:border-0",s===0&&"bg-primary/8"),children:[e.jsx("p",{className:"truncate text-[0.8em]",children:t}),e.jsxs("p",{className:"text-[0.7em] tabular-nums text-muted-foreground",children:[l(k,r.seed,s)," - ",l(se,r.seed,s+2)]})]},t))]}),e.jsxs("div",{className:"min-w-0 space-y-[0.6em]",children:[e.jsx("div",{className:"grid grid-cols-2 gap-[0.55em]",children:r.tiles.slice(0,2).map(t=>e.jsx(P,{...t},t.label))}),e.jsx($,{d:r})]})]})}function C(r){return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"rounded-lg border border-border bg-background p-[0.7em]",children:[e.jsxs("div",{className:"flex items-start justify-between gap-[0.6em]",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate text-[0.82em] font-medium",children:r.feature.blocks[0]?.heading??r.feature.tagline}),e.jsx("p",{className:"font-display text-[1.5em] font-semibold tabular-nums",children:r.tiles[0].value})]}),e.jsx("div",{className:"flex gap-[0.35em]",children:["28d","90d","12m"].map((t,s)=>e.jsx(f,{tone:s===0?"primary":"muted",children:t},t))})]}),e.jsx("div",{className:"mt-[0.4em] h-[5.2em] w-full",children:e.jsx(wt,{seed:r.seed})})]}),e.jsxs("div",{className:"mt-[0.7em] grid grid-cols-[1.4fr_1fr] gap-[0.7em]",children:[e.jsx(Q,{title:"Drivers this period",children:r.points.slice(0,4).map((t,s)=>e.jsxs("div",{className:"flex items-center gap-[0.5em] border-b border-border/60 py-[0.35em] last:border-0",children:[e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.8em]",children:t}),e.jsx("span",{className:"text-[0.74em] tabular-nums text-emerald-600 dark:text-emerald-400",children:l(ae,r.seed,s)})]},t))}),e.jsx("div",{className:"space-y-[0.55em]",children:r.tiles.slice(1,3).map(t=>e.jsx(P,{...t},t.label))})]})]})}function T(r){return e.jsxs("div",{className:"grid grid-cols-[1.5fr_1fr] gap-[0.7em]",children:[e.jsx(Q,{title:r.feature.blocks[0]?.heading??"Activity",action:"Live",children:e.jsxs("div",{className:"relative pl-[0.9em]",children:[e.jsx("span",{className:"absolute left-[0.25em] top-[0.4em] bottom-[0.4em] w-px bg-border"}),r.points.map((t,s)=>e.jsxs("div",{className:"relative py-[0.4em]",children:[e.jsx("span",{className:"absolute -left-[0.68em] top-[0.75em] h-[0.4em] w-[0.4em] rounded-full bg-primary"}),e.jsxs("div",{className:"flex items-center justify-between gap-[0.5em]",children:[e.jsx("p",{className:"min-w-0 flex-1 truncate text-[0.8em]",children:t}),e.jsx(f,{tone:l(F,r.seed,s),children:l(D,r.seed,s+1)})]}),e.jsxs("p",{className:"text-[0.7em] text-muted-foreground",children:[l(ne,r.seed,s)," - ",l(ge,r.seed,s+2)]})]},t))]})}),e.jsxs("div",{className:"space-y-[0.55em]",children:[r.tiles.slice(0,2).map(t=>e.jsx(P,{...t},t.label)),e.jsx($,{d:r})]})]})}function I(r){const t=78+r.seed%15;return e.jsxs("div",{className:"grid grid-cols-[0.85fr_1.6fr] gap-[0.7em]",children:[e.jsxs("div",{className:"min-w-0 space-y-[0.55em]",children:[e.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 px-[0.8em] py-[0.7em] text-center",children:[e.jsx("p",{className:"text-[0.7em] uppercase tracking-[0.14em] text-muted-foreground",children:"Health score"}),e.jsx("p",{className:"font-display text-[2em] font-semibold tabular-nums text-primary",children:t}),e.jsx("span",{className:"mx-auto mt-[0.35em] block h-[0.35em] w-full overflow-hidden rounded-full bg-border",children:e.jsx("span",{className:"block h-full rounded-full bg-primary",style:{width:`${t}%`}})}),e.jsxs("p",{className:"mt-[0.3em] text-[0.7em] text-emerald-600 dark:text-emerald-400",children:[l(ae,r.seed,3)," vs last run"]})]}),r.tiles.slice(2,4).map(s=>e.jsx(P,{...s},s.label))]}),e.jsx(Q,{title:r.feature.blocks[0]?.heading??"Checks",action:"Passing",children:r.points.map((s,a)=>e.jsxs("div",{className:"flex items-center gap-[0.55em] border-b border-border/60 py-[0.42em] last:border-0",children:[e.jsx("span",{className:d("grid h-[1.2em] w-[1.2em] shrink-0 place-items-center rounded-full text-[0.6em] font-bold",a===2?"bg-amber-500/15 text-amber-600":"bg-emerald-500/15 text-emerald-600"),children:a===2?"!":"✓"}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.8em]",children:s}),e.jsx("span",{className:"text-[0.72em] tabular-nums text-muted-foreground",children:l(ne,r.seed,a)})]},s))})]})}function A(r){return e.jsxs(e.Fragment,{children:[e.jsx(oe,{d:r,count:3}),e.jsx("div",{className:"mt-[0.7em] grid grid-cols-2 gap-[0.6em]",children:r.points.slice(0,4).map((t,s)=>e.jsxs("div",{className:"min-w-0 rounded-lg border border-border bg-background p-[0.65em]",children:[e.jsxs("div",{className:"flex items-center justify-between gap-[0.5em]",children:[e.jsx("span",{className:"text-[0.68em] uppercase tracking-[0.12em] text-muted-foreground",children:l(["Opportunity","Risk","Test","Win"],r.seed,s)}),e.jsx(f,{tone:l(F,r.seed,s+4),children:l(D,r.seed,s)})]}),e.jsx("p",{className:"mt-[0.3em] line-clamp-2 text-[0.82em] font-medium leading-snug",children:t}),e.jsxs("div",{className:"mt-[0.45em] flex items-center justify-between text-[0.72em] tabular-nums text-muted-foreground",children:[e.jsxs("span",{children:[l(k,r.seed,s+1)," impact"]}),e.jsx("span",{children:l(ge,r.seed,s)})]})]},t))})]})}function E(r){return e.jsxs("div",{className:"grid grid-cols-[1.4fr_1fr] gap-[0.7em]",children:[e.jsxs("div",{className:"min-w-0 rounded-lg border border-border bg-background p-[0.7em]",children:[e.jsx("div",{className:"ml-auto w-[80%] rounded-lg rounded-br-none bg-primary/10 px-[0.65em] py-[0.45em] text-[0.8em]",children:r.feature.tagline}),e.jsxs("div",{className:"mt-[0.5em] w-[92%] rounded-lg rounded-bl-none border border-border bg-muted/30 px-[0.65em] py-[0.5em]",children:[e.jsx("p",{className:"text-[0.78em] leading-relaxed text-foreground
1/90",children:r.feature.blocks[0]?.body??r.feature.summary}),e.jsx("div",{className:"mt-[0.45em] space-y-[0.3em]",children:r.points.slice(0,3).map((t,s)=>e.jsxs("div",{className:"flex items-center gap-[0.45em]",children:[e.jsx("span",{className:"grid h-[1.1em] w-[1.1em] shrink-0 place-items-center rounded-[0.3em] bg-primary/15 text-[0.6em] font-semibold text-primary",children:s+1}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.76em]",children:t}),e.jsx("span",{className:"text-[0.7em] tabular-nums text-muted-foreground",children:l(k,r.seed,s)})]},t))})]}),e.jsxs("div",{className:"mt-[0.6em] flex items-center gap-[0.5em] rounded-full border border-border px-[0.7em] py-[0.4em] text-[0.75em] text-muted-foreground",children:["Ask about Northwind Apparel performance",e.jsx("span",{className:"ml-auto rounded-full bg-primary px-[0.6em] py-[0.15em] text-[0.9em] text-primary-foreground",children:"Send"})]})]}),e.jsxs("div",{className:"space-y-[0.55em]",children:[r.tiles.slice(0,2).map(t=>e.jsx(P,{...t},t.label)),e.jsx($,{d:r})]})]})}function Y(r){const t=r.points.slice(0,4);return e.jsxs(e.Fragment,{children:[e.jsx(oe,{d:r,count:3}),e.jsxs("div",{className:"mt-[0.7em] grid grid-cols-[1.3fr_1fr] gap-[0.7em]",children:[e.jsx(Q,{title:r.feature.blocks[0]?.heading??"Journey",children:e.jsx("div",{className:"space-y-[0.4em] py-[0.2em]",children:t.map((s,a)=>e.jsxs("div",{className:"flex items-center gap-[0.5em]",children:[e.jsx("span",{className:"w-[46%] shrink-0 text-[0.74em] leading-[1.25]",children:s}),e.jsx("span",{className:"h-[1.1em] flex-1 overflow-hidden rounded-[0.3em] bg-muted",children:e.jsx("span",{className:"block h-full rounded-[0.3em] bg-primary/70",style:{width:`${100-a*21}%`}})}),e.jsx("span",{className:"w-[3.6em] shrink-0 text-right text-[0.72em] tabular-nums text-muted-foreground",children:l(_,r.seed,a)})]},s))})}),e.jsx($,{d:r})]})]})}function G(r){const t=Array.from({length:21},(s,a)=>a);return e.jsxs("div",{className:"grid grid-cols-[1.5fr_1fr] gap-[0.7em]",children:[e.jsxs("div",{className:"min-w-0 rounded-lg border border-border bg-background p-[0.6em]",children:[e.jsxs("div",{className:"mb-[0.4em] flex items-center justify-between",children:[e.jsx("p",{className:"text-[0.82em] font-medium",children:"September - Northwind Apparel"}),e.jsx(f,{tone:"primary",children:`${l(_,r.seed,2)} scheduled`})]}),e.jsxs("div",{className:"grid grid-cols-7 gap-[0.25em]",children:[["M","T","W","T","F","S","S"].map((s,a)=>e.jsx("span",{className:"text-center text-[0.65em] uppercase text-muted-foreground",children:s},a)),t.map(s=>{const a=(r.seed+s*3)%5===0,n=(r.seed+s*7)%4===0;return e.jsxs("div",{className:d("h-[1.9em] rounded-[0.3em] border border-border/70 p-[0.2em] text-[0.6em] text-muted-foreground",a?"bg-primary/15 border-primary/30":n?"bg-muted/50":"bg-background"),children:[s+1,a&&e.jsx("span",{className:"mt-[0.15em] block h-[0.25em] w-full rounded-full bg-primary/60"})]},s)})]})]}),e.jsx("div",{className:"min-w-0 space-y-[0.5em]",children:r.points.slice(0,3).map((s,a)=>e.jsxs("div",{className:"rounded-lg border border-border bg-background px-[0.65em] py-[0.5em]",children:[e.jsxs("div",{className:"flex items-center justify-between gap-[0.5em]",children:[e.jsx("span",{className:"text-[0.7em] uppercase tracking-[0.12em] text-muted-foreground",children:l(ne,r.seed,a)}),e.jsx(f,{tone:l(F,r.seed,a),children:l(D,r.seed,a)})]}),e.jsx("p",{className:"mt-[0.2em] line-clamp-2 text-[0.8em] leading-snug",children:s})]},s))})]})}const kt={intelligence:[C,A,T,E,j],creative:[A,G,ee,B,j],search:[I,Y,j,C,B],growth:[C,j,Y,B,A],operations:[I,T,ee,j,A]},St={forecasting:C,"predicted-roas":C,"creative-calendar":G,"content-calendar":G,offers:G,"creative-library":A,audiences:B,competitors:j,"market-intelligence":T,"ask-hooky":E,"hook-ai":E,"growth-brain":E,campaigns:j,"budget-planner":j,attribution:Y,"tracking-centre":I,"revenue-guard":I,watchtower:T,notifications:T};function At({d:r}){const t=new Set(r.points),s=[...r.feature.outcomes,...r.second?.points??[],...r.points].filter((a,n,o)=>o.indexOf(a)===n&&!t.has(a)).slice(0,3);return s.length===0?null:e.jsxs("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-border bg-background",children:[e.jsxs("div",{className:"flex items-center justify-between border-b border-border px-[0.7em] py-[0.4em]",children:[e.jsx("p",{className:"text-[0.7em] uppercase tracking-[0.14em] text-muted-foreground",children:"Recent activity"}),e.jsx(f,{tone:"muted",children:"Auto logged"})]}),e.jsx("div",{className:"min-h-0 flex-1 divide-y divide-border/60 overflow-hidden",children:s.map((a,n)=>e.jsxs("div",{className:"flex items-center gap-[0.6em] px-[0.7em] py-[0.4em]",children:[e.jsx("span",{className:"w-[3.4em] 
1shrink-0 text-[0.68em] uppercase tracking-[0.1em] text-muted-foreground",children:["Today","Thu 05","Wed 04"][n]}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.78em]",children:a}),e.jsx("span",{className:"shrink-0 text-[0.72em] tabular-nums text-muted-foreground",children:l(k,r.seed,n)})]},a))})]})}function Ct(){return e.jsx("div",{className:"mt-auto grid grid-cols-4 gap-[0.5em] rounded-lg border border-border bg-muted/25 px-[0.7em] py-[0.45em]",children:vt.map(r=>e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate text-[0.68em] uppercase tracking-[0.1em] text-muted-foreground",children:r.name}),e.jsxs("div",{className:"mt-[0.2em] flex items-center gap-[0.4em]",children:[e.jsx("span",{className:"h-[0.3em] flex-1 overflow-hidden rounded-full bg-border",children:e.jsx("span",{className:"block h-full rounded-full bg-primary",style:{width:`${r.share}%`}})}),e.jsxs("span",{className:"text-[0.7em] tabular-nums text-muted-foreground",children:[r.share,"%"]})]})]},r.name))})}const Tt=new Map([[j,"table"],[ee,"board"],[B,"split"],[C,"chart"],[T,"feed"],[I,"audit"],[A,"cards"],[E,"assistant"],[Y,"funnel"],[G,"calendar"]]);function be(r){const t=te(r);if(!t)return;const s=kt[t.group],a=ye.filter(n=>n.group===t.group).findIndex(n=>n.slug===r);return St[r]??s[Math.max(a,0)%s.length]}function Rt(r){const t=be(r);return(t&&Tt.get(t))??"table"}function Ot({slug:r}){const t=te(r);if(!t)return null;const s=Nt(r),a=be(r),o=(t.blocks[0]?.points??t.outcomes).slice(0,5),c={feature:t,seed:s,points:o,second:t.blocks[1]??t.blocks[0],tiles:[{label:"Revenue (28d)",value:l(k,s),note:l(ae,s,1)+" vs prior",tone:"up"},{label:"Blended ROAS",value:l(se,s,2),note:"Profit adjusted",tone:"up"},{label:"Tracked items",value:l(_,s,3),note:"Reviewed this week",tone:"default"},{label:"Open actions",value:l(_,s,4),note:"Owned by the team",tone:"default"}]};return e.jsx(re,{title:t.name,sub:"Northwind Apparel - last 28 days",section:t.heroKicker,children:e.jsxs("div",{className:"flex h-full flex-col gap-[0.7em]",children:[e.jsx(a,{...c}),e.jsx(At,{d:c}),e.jsx(Ct,{})]})})}const L=1400,Mt=4200;function fe({stops:r,children:t}){const s=Ie(),[a,n]=h.useState(0),[o,c]=h.useState(!1);h.useEffect(()=>{if(s||r.length<2)return;let i;const W=setInterval(()=>{document.visibilityState==="visible"&&(c(!1),n(je=>(je+1)%r.length),i=setTimeout(()=>c(!0),L))},L+Mt),U=setTimeout(()=>c(!0),L);return()=>{clearInterval(W),clearTimeout(U),clearTimeout(i)}},[s,r.length]);const u=r[a]??r[0];return e.jsxs("div",{className:"relative h-full w-full",children:[typeof t=="function"?t({active:s?0:a,clicked:s?!0:o}):t,!s&&e.jsxs(p.div,{className:"pointer-events-none absolute z-30",initial:!1,animate:{left:`${u.x}%`,top:`${u.y}%`},transition:{duration:L/1e3,ease:[.22,.8,.2,1]},"aria-hidden":!0,children:[o&&e.jsx(p.span,{className:"absolute -left-[0.9em] -top-[0.9em] h-[1.8em] w-[1.8em] rounded-full border border-primary/60",initial:{opacity:.7,scale:.3},animate:{opacity:0,scale:1},transition:{duration:.65,ease:"easeOut"}},`ring-${a}`),e.jsx("svg",{viewBox:"0 0 24 24",className:"h-[1.5em] w-[1.5em] drop-shadow-[0_1px_2px_rgba(0,0,0,0.35)]",children:e.jsx("path",{d:"M5 3l13 9-5.5 1.1L9.6 19 5 3z",className:"fill-foreground stroke-background",strokeWidth:"1.4"})}),u.caption&&e.jsxs(p.span,{className:"absolute flex w-max max-w-[13em] items-start gap-[0.45em] rounded-lg border border-primary/25 bg-primary/[0.06] px-[0.6em] py-[0.4em] text-[0.66em] font-medium leading-[1.35] text-foreground shadow-[0_0.5em_1.2em_-0.5em_hsl(var(--primary)/0.45)] backdrop-blur-sm "+(u.x>58?"right-[0.5em] ":"left-[1.4em] ")+(u.y>74?"bottom-[1.2em] ":"top-[1.2em] "),initial:{opacity:0,y:5,scale:.97},animate:{opacity:1,y:0,scale:1},transition:{delay:L/1e3,duration:.28,ease:"easeOut"},children:[e.jsx("span",{className:"mt-[0.42em] h-[0.35em] w-[0.35em] shrink-0 rounded-full bg-primary"}),e.jsx("span",{className:"min-w-0 text-pretty",children:u.caption})]},`cap-${a}`)]})]})}function v({title:r,sub:t,children:s}){return e.jsx(re,{title:r,sub:t,children:s})}function x({label:r,value:t,note:s,tone:a="default"}){return e.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 px-[0.8em] py-[0.6em]",children:[e.jsx("p",{className:"truncate text-[0.72em] uppercase tracking-[0.14em] text-muted-foreground",children:r}),e.jsx("p",{className:"mt-[0.2em] font-display text-[1.35em] font-semibold tracking-tight tabular-nums",children:t}),e.jsx("p",{className:d("mt-[0.15em] truncate text-[0.72em]",a==="up"?"text-emerald-600 dark:text-emerald-400":a==="down"?"text-rose-600 dar
1k:text-rose-400":"text-muted-foreground"),children:s})]})}function g({children:r,tone:t="muted"}){const s={muted:"border-border text-muted-foreground",good:"border-emerald-500/40 text-emerald-600 dark:text-emerald-400",warn:"border-amber-500/40 text-amber-600 dark:text-amber-400",bad:"border-rose-500/40 text-rose-600 dark:text-rose-400",primary:"border-primary/40 text-primary"};return e.jsx("span",{className:d("inline-flex shrink-0 items-center rounded-full border bg-background px-[0.55em] py-[0.15em] text-[0.7em] font-medium",s[t]),children:r})}function S({children:r}){return e.jsx("div",{className:"flex items-center gap-[0.6em] border-b border-border/60 py-[0.5em] last:border-0",children:r})}function Pt(){const r=[{name:"Meta - Prospecting",plan:"£12,400",spent:"£9,670",pace:78,state:["On pace","good"]},{name:"Meta - Retargeting",plan:"£4,200",spent:"£4,090",pace:97,state:["Watch","warn"]},{name:"Google - Shopping",plan:"£9,800",spent:"£9,410",pace:96,state:["Held 4 days","primary"]},{name:"Google - Brand",plan:"£3,150",spent:"£1,290",pace:41,state:["Underspending","bad"]},{name:"Pinterest - Retargeting",plan:"£1,900",spent:"£1,200",pace:63,state:["On pace","good"]}];return e.jsxs(v,{title:"Budget Planner - September",sub:"Month to date, day 23 of 30",children:[e.jsxs("div",{className:"grid grid-cols-3 gap-[0.6em]",children:[e.jsx(x,{label:"Planned",value:"£31,450",note:"Across 5 active lines"}),e.jsx(x,{label:"Committed",value:"£25,660",note:"82% of plan, 77% of month",tone:"up"}),e.jsx(x,{label:"Forecast close",value:"£30,910",note:"£540 under plan",tone:"down"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border",children:e.jsx("div",{className:"px-[0.8em]",children:r.map(t=>e.jsxs(S,{children:[e.jsx("span",{className:"w-[38%] truncate text-[0.85em]",children:t.name}),e.jsx("span",{className:"w-[15%] shrink-0 text-right text-[0.8em] tabular-nums text-muted-foreground",children:t.plan}),e.jsx("span",{className:"w-[15%] shrink-0 text-right text-[0.8em] font-medium tabular-nums",children:t.spent}),e.jsx("span",{className:"h-[0.35em] flex-1 overflow-hidden rounded-full bg-border",children:e.jsx("span",{className:"block h-full rounded-full bg-primary",style:{width:`${t.pace}%`}})}),e.jsx(g,{tone:t.state[1],children:t.state[0]})]},t.name))})}),e.jsx("p",{className:"mt-[0.7em] rounded-lg border border-primary/25 bg-primary/8 px-[0.8em] py-[0.5em] text-[0.8em]",children:"Settling window: Google Shopping was raised on 18 Sep. No further change recommended until 25 Sep. Track record on the last 14 moves: 11 beat forecast, average +£1,120 revenue each."})]})}function Wt(){const r=[{when:"Mon 09:12",src:"Meta",what:"Daily budget 320 to 480 on Autumn Layers",impact:"+£1,840",up:!0},{when:"Tue 14:40",src:"Google",what:"Shopping switched to Target ROAS 420%",impact:"-9% ROAS",up:!1},{when:"Wed 08:05",src:"Shopify",what:"Free delivery threshold moved to £40",impact:"+2.1% CVR",up:!0},{when:"Thu 16:22",src:"Meta",what:"Paused 2 ad sets in Denim Restock",impact:"-£620",up:!1},{when:"Fri 11:03",src:"Hookology",what:"Approved shift of £900 to Outerwear",impact:"+£2,260",up:!0}];return e.jsxs(v,{title:"Change Intelligence - last 7 days",sub:"38 changes captured, 12 measurable",children:[e.jsxs("div",{className:"grid grid-cols-3 gap-[0.6em]",children:[e.jsx(x,{label:"Net revenue effect",value:"+£4,710",note:"Attributed to logged changes",tone:"up"}),e.jsx(x,{label:"Changes reverted",value:"2",note:"Both underperformed for 72h"}),e.jsx(x,{label:"Unexplained movement",value:"6%",note:"Left with market noise"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(S,{children:[e.jsxs("span",{className:"w-[22%] shrink-0 truncate text-[0.74em] uppercase tracking-[0.12em] text-muted-foreground",children:[t.when," ",t.src]}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.85em]",children:t.what}),e.jsx("span",{className:d("shrink-0 text-[0.82em] font-semibold tabular-nums",t.up?"text-emerald-600 dark:text-emerald-400":"text-rose-600 dar
1k:text-rose-400"),children:t.impact})]},t.what))}),e.jsx("p",{className:"mt-[0.7em] text-[0.78em] text-muted-foreground",children:"Replay view rebuilds any day of the account so you can see exactly what the numbers looked like before and after each change."})]})}function Ht(){const r=["Blended margin sits at 58%, Outerwear at 61%","Free delivery over £40 lifts CVR but costs 3.1 points of margin","Winning hooks lead with the problem, not the product","Cold snaps in week 42 pulled forward 18% of Q4 revenue last year"];return e.jsxs(v,{title:"Growth Brain",sub:"41 facts remembered, refreshed nightly at 02:00",children:[e.jsxs("div",{className:"grid grid-cols-12 gap-[0.7em]",children:[e.jsxs("div",{className:"col-span-7 rounded-lg border border-border p-[0.8em]",children:[e.jsx("p",{className:"text-[0.72em] uppercase tracking-[0.16em] text-muted-foreground",children:"What Hookology knows"}),e.jsx("ul",{className:"mt-[0.5em] space-y-[0.4em]",children:r.map(t=>e.jsxs("li",{className:"flex gap-[0.5em] text-[0.82em] leading-snug",children:[e.jsx("span",{className:"mt-[0.45em] h-[0.3em] w-[0.3em] shrink-0 rounded-full bg-primary"}),t]},t))})]}),e.jsxs("div",{className:"col-span-5 rounded-lg border border-primary/30 bg-primary/[0.07] p-[0.8em]",children:[e.jsx("p",{className:"text-[0.72em] uppercase tracking-[0.16em] text-primary",children:"Applied this morning"}),e.jsx("p",{className:"mt-[0.4em] text-[0.9em] font-medium leading-snug",children:"Move £900 from Brand search into Outerwear prospecting before the cold snap."}),e.jsx("p",{className:"mt-[0.4em] text-[0.78em] text-muted-foreground",children:"Margin holds at 61%, forecast payback in 6 days, no conflict with the settling window."}),e.jsxs("div",{className:"mt-[0.6em] flex flex-wrap gap-[0.35em]",children:[e.jsx(g,{tone:"good",children:"Agreed by Sarah"}),e.jsx(g,{tone:"muted",children:"Logged 08:14"})]})]})]}),e.jsx("p",{className:"mt-[0.7em] text-[0.78em] text-muted-foreground",children:"Every answer in Ask Hooky, the daily brief and the Decision Centre reads from this same memory, so the platform never contradicts itself between screens."})]})}function Lt(){const r=[{screen:"/dashboard",issue:"KPI tile clips at 390px width",sev:["Medium","warn"]},{screen:"/library",issue:"Thumbnail served at 240px, upscaled",sev:["High","bad"]},{screen:"/finance/budget",issue:"Offer badge contrast 3.1:1",sev:["Medium","warn"]},{screen:"/seo",issue:"No issues found",sev:["Pass","good"]}];return e.jsxs(v,{title:"Hook Assist - overnight visual audit",sub:"Run 03:10, 66 screens, 4m 12s",children:[e.jsxs("div",{className:"grid grid-cols-3 gap-[0.6em]",children:[e.jsx(x,{label:"Screens captured",value:"66 / 66",note:"Desktop, tablet and mobile",tone:"up"}),e.jsx(x,{label:"Issues found",value:"3",note:"1 high, 2 medium",tone:"down"}),e.jsx(x,{label:"Fixed since last run",value:"7",note:"Verified on re-capture",tone:"up"})]}),e.jsxs("div",{className:"mt-[0.8em] grid grid-cols-12 gap-[0.7em]",children:[e.jsx("div",{className:"col-span-5 grid grid-cols-4 gap-[0.35em]",children:Array.from({length:16},(t,s)=>e.jsx("span",{className:d("aspect-[4/3] rounded-md border",s===5||s===10?"border-amber-500/50 bg-amber-500/15":"border-border bg-muted/40")},s))}),e.jsx("div",{className:"col-span-7 rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(S,{children:[e.jsx("span",{className:"w-[32%] shrink-0 truncate font-mono text-[0.76em] text-muted-foreground",children:t.screen}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.83em]",children:t.issue}),e.jsx(g,{tone:t.sev[1],children:t.sev[0]})]},t.screen))})]})]})}function Bt(){const r=[{name:"GA4 - page_view",cover:"100%",note:"12,480 events in 24h",tone:"good"},{name:"GA4 - view_item",cover:"98%",note:"Item ID matches Shopify SKU",tone:"good"},{name:"GA4 - add_to_cart",cover:"61%",note:"Missing on quick-add drawer",tone:"warn"},{name:"Meta Pixel - AddToCart",cover:"142%",note:"Duplicate fire from theme app",tone:"bad"},{name:"GA4 - purchase",cover:"99%",note:"Value and currency verified",tone:"good"}];return e.jsxs(v,{title:"Tag & GTM Health",sub:"Container GTM-NWA9 - checked 14 minutes ago",children:[e.jsxs("div",{className:"grid grid-cols-3 gap-[0.6em]",children:[e.jsx(x,{label:"Tags monitored",value:"17",note:"Across GTM, GA4 and Meta"}),e.jsx(x,{label:"Site vs platform",value:"94%",note:"Purchases reconciled",tone:"up"}),e.jsx(x,{label:"Open issues",value:"2",note:"1 duplicate, 1 coverage gap",tone:"down"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(S,{children:[e.jsx("span",{className:"w-[40%] truncate text-[0.85em]",children:t.name}),e.jsx("span",{className:"w-[14%] shrink-0 text-right text-[0.85em] font-semibold tabular-nums",children:t.cover}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.78em] text-muted-foreground",children:t.note}),e.jsx(g,{tone:t.tone,children:t.tone==="good"?"Healthy":t.tone
1==="warn"?"Gap":"Duplicate"})]},t.name))}),e.jsx("p",{className:"mt-[0.7em] rounded-lg border border-amber-500/30 bg-amber-500/10 px-[0.8em] py-[0.5em] text-[0.8em]",children:"Fix first: the theme app fires AddToCart alongside GTM, inflating Meta conversions by 42%. Remove the app-level pixel and Meta reporting will realign with Shopify within 48 hours."})]})}function Et(){const r=[{name:"Welcome tour: Command Centre",len:"6 min",state:["Complete","good"]},{name:"Reading a decision card",len:"4 min",state:["Complete","good"]},{name:"Approving a budget move",len:"5 min",state:["In progress","primary"]},{name:"Creative scoring explained",len:"8 min",state:["Not started","muted"]},{name:"Setting targets and goals",len:"7 min",state:["Not started","muted"]}];return e.jsxs(v,{title:"Onboarding & Training",sub:"Sarah Whitfield - Head of Ecommerce",children:[e.jsxs("div",{className:"grid grid-cols-3 gap-[0.6em]",children:[e.jsx(x,{label:"Progress",value:"42%",note:"2 of 5 modules complete",tone:"up"}),e.jsx(x,{label:"Time to first decision",value:"1 day",note:"Against a 5 day target",tone:"up"}),e.jsx(x,{label:"Next session",value:"Thu 10:00",note:"With your account manager"})]}),e.jsxs("div",{className:"mt-[0.8em] grid grid-cols-12 gap-[0.7em]",children:[e.jsx("div",{className:"col-span-7 rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(S,{children:[e.jsx("span",{className:"min-w-0 flex-1 truncate text-[0.85em]",children:t.name}),e.jsx("span",{className:"shrink-0 text-[0.76em] text-muted-foreground",children:t.len}),e.jsx(g,{tone:t.state[1],children:t.state[0]})]},t.name))}),e.jsxs("div",{className:"col-span-5 rounded-lg border border-primary/30 bg-primary/[0.07] p-[0.8em]",children:[e.jsx("p",{className:"text-[0.72em] uppercase tracking-[0.16em] text-primary",children:"Practice safely"}),e.jsx("p",{className:"mt-[0.4em] text-[0.85em] leading-snug",children:"Every walkthrough runs on the Northwind Apparel demo account, with full example data, so new starters can click anything without touching your live workspace."}),e.jsxs("div",{className:"mt-[0.6em] flex flex-wrap gap-[0.35em]",children:[e.jsx(g,{tone:"muted",children:"Demo data"}),e.jsx(g,{tone:"muted",children:"Replayable"}),e.jsx(g,{tone:"muted",children:"Role specific"})]})]})]})]})}function Gt(){const r=[{name:"Meta - Prospecting",spend:"£9,670",platform:"£41,200",modelled:"£34,880",profit:"£12,410",proas:"2.4x",tone:"good"},{name:"Google - Shopping",spend:"£9,410",platform:"£46,900",modelled:"£44,120",profit:"£15,980",proas:"2.7x",tone:"good"},{name:"Google - Brand",spend:"£1,290",platform:"£18,300",modelled:"£6,240",profit:"£2,140",proas:"2.7x",tone:"warn"},{name:"Meta - Retargeting",spend:"£4,090",platform:"£16,740",modelled:"£9,880",profit:"£1,910",proas:"1.5x",tone:"warn"},{name:"Email & organic",spend:"£0",platform:"-",modelled:"£21,460",profit:"£12,980",proas:"-",tone:"muted"}],t=[{x:44,y:17,caption:"Platform is over-claiming"},{x:33,y:62,caption:"Brand search is the culprit"},{x:76,y:92,caption:"Take the move"}];return e.jsx(v,{title:"Attribution & Finance",sub:"1 - 23 September, blended view",children:e.jsx(fe,{stops:t,children:({active:s,clicked:a})=>e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(x,{label:"Store revenue",value:"£128,940",note:"Shopify, net of returns"}),e.jsx("div",{className:d("rounded-lg transition-all duration-300",s===0&&a&&"ring-2 ring-primary/50 ring-offset-2 ring-offset-background"),children:e.jsx(x,{label:"Platform reported",value:"£141,120",note:"9.4% above store",tone:"down"})}),e.jsx(x,{label:"Contribution profit",value:"£45,420",note:"35.2% margin",tone:"up"}),e.jsx(x,{label:"Profit ROAS",value:"2.3x",note:"Break-even at 1.7x",tone:"up"})]}),e.jsxs("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:[e.jsxs("div",{className:"flex items-center gap-[0.6em] border-b border-border py-[0.45em] text-[0.7em] uppercase tracking-[0.12em] text-muted-foreground",children:[e.jsx("span",{className:"w-[30%]",children:"Channel"}),e.jsx("span",{className:"w-[13%] text-right",children:"Spend"}),e.jsx("span",{className:"w-[15%] text-right",children:"Platform"}),e.jsx("span",{className:"w-[15%] text-right",children:"Modelled"}),e.jsx("span",{className:"w-[15%] text-right",children:"Profit"}),e.jsx("span",{className:"flex-1 text-right",children:"Profit ROAS"})]}),r.map(n=>{const o=s===1&&n.name==="Google - Brand";return e.jsx("div",{className:d("-mx-[0.4em] rounded-md px-[0.4em] transition-colors duration-300",o&&(a?"bg-primary/10":"bg-muted/60")),children:e.jsxs(S,{children:[e.jsx("span",{className:"w-[30%] truncate text-[0.85em]",children:n.name}),e.jsx("span",{className:"w-[13%] text-right text-[0.8em] tabular-nums text-muted-foreground",children:n.spend}),e.jsx("span",{className:"w-[15%] text-right text-[0.8em] tabular-nums text-muted-foreground",children:n.platform}),e.jsx("span",{className:"w-[15%] text-right text-[0.8em] font-medium tabular-nums",children:n.modelled}),e.jsx("span",{className:"w-[15%] text-right text-[0.8em] font-semibold tabular-nums",children:n.profit}),e.jsx("span",{className:"flex flex-1 justify-end",children:e.jsx(g,{tone:o&&a?"primary":n.tone,children:n.proas})})]})},n.name)})]}),e.jsxs("div",{className:"mt-[0.7em] grid grid-cols-2 gap-[0.6em]",children:[e.jsx("p",{className:d("rounded-lg border border-border bg-muted/30 px-[0.8em] py-[0.5em] text-[0.78em] transition-all duration-300",s===1&&a&&"border-primary/40 bg-primary/[0.06]"),children:"Variance explained: £12,180 of the platform figure is Brand search claiming orders that email touched first. Modelled view reweights it, store revenue is the tie breaker."}),e.jsx("p",{className:d("rounded-lg border border-primary/25 bg-primary/8 px-[0.8em] py-[0.5em] text-[0.78em] transition-all duration-300",s===2&&a&&"border-primary/60 shadow-[0_0_0_3px_color-mix(in_oklab,var(--primary)_18%,transparent)]"),children:"Next move: shift £900 from Brand search into Outerwear prospecting. Worth an estimated £2,260 contribution profit this month at a 61% product margin."})]})]})})})}function _t(){const r=[{date:"18 Sep 07:30",net:"Google Ads",what:"Shopping daily budget 280 to 340 on Outerwear",verdict:["Helped","good"],effect:"+£2,260 revenue, ROAS held at 4.1x"},{date:"16 Sep 14:02",net:"Meta",what:"Autumn Layers budget 320 to 480",verdict:["Helped","good"],effect:"+£1,840 revenue, CPA down 8%"},{date:"14 Sep 09:45",net:"Google Ads",what:"Brand switched to Target ROAS 420%",verdict:["Hurt","bad"],effect:"-9% ROAS, reverted after 4 days"},{date:"12 Sep 16:22",net:"Meta",what:"Paused 2 ad sets in Denim Restock",verdict:["No real change","muted"],effect:"Inside normal variance"},{date:"11 Sep 08:10",net:"Pinterest",what:"New carousel creative live",verdict:["Measuring","
1warn"],effect:"3 of 7 days of post-change data"}];return e.jsxs(v,{title:"PPC Change Log",sub:"Last 30 days - 24 meaningful edits",children:[e.jsxs("div",{className:"grid grid-cols-4 gap-[0.55em]",children:[e.jsx(x,{label:"Changes scored",value:"21",note:"3 still measuring"}),e.jsx(x,{label:"Helped",value:"14",note:"+£18,940 revenue effect",tone:"up"}),e.jsx(x,{label:"Hurt",value:"4",note:"All reverted within a week",tone:"down"}),e.jsx(x,{label:"Win rate",value:"67%",note:"Against the account baseline",tone:"up"})]}),e.jsx("div",{className:"mt-[0.8em] rounded-lg border border-border px-[0.8em]",children:r.map(t=>e.jsxs(S,{children:[e.jsx("span",{className:"w-[22%] shrink-0 truncate text-[0.74em] uppercase tracking-[0.1em] text-muted-foreground",children:t.date}),e.jsx("span",{className:"w-[14%] shrink-0 truncate text-[0.76em] text-muted-foreground",children:t.net}),e.jsxs("span",{className:"min-w-0 flex-1",children:[e.jsx("span",{className:"block truncate text-[0.85em]",children:t.what}),e.jsx("span",{className:"block truncate text-[0.74em] text-muted-foreground",children:t.effect})]}),e.jsx(g,{tone:t.verdict[1],children:t.verdict[0]})]},t.what))}),e.jsx("p",{className:"mt-[0.7em] text-[0.78em] text-muted-foreground",children:"Campaign Replay rebuilds the account as it looked either side of any edit, so a post-mortem takes minutes."})]})}const It={attribution:Gt,"ppc-change-log":_t,"budget-planner":Pt,"change-intelligence":Wt,"growth-brain":Ht,"hook-assist":Lt,"gtm-health":Bt,"onboarding-training":Et,...yt};function de(r){return!0}function Dt(r){const t=Rt(r),s=[{x:34,y:74,caption:"Recent activity, logged automatically"},{x:30,y:91,caption:"Contribution split by channel"}],a={table:[{x:30,y:27,caption:"Headline numbers, profit adjusted"},{x:46,y:48,caption:"Spend, ROAS and status per row"}],board:[{x:30,y:24,caption:"Everything open, in one board"},{x:48,y:44,caption:"Detected, in review, actioned"}],split:[{x:26,y:36,caption:"Ranked rows with spend and ROAS"},{x:76,y:30,caption:"Headline numbers, profit adjusted"}],chart:[{x:44,y:30,caption:"Trend across 28d, 90d and 12m"},{x:32,y:56,caption:"The drivers behind the move"}],feed:[{x:30,y:40,caption:"Live timeline with owner and status"},{x:78,y:28,caption:"Headline numbers, profit adjusted"}],audit:[{x:18,y:32,caption:"Health score, tracked run on run"},{x:60,y:44,caption:"Every check passed or flagged"}],cards:[{x:30,y:26,caption:"Headline numbers, profit adjusted"},{x:34,y:48,caption:"Impact and owner on every card"}],assistant:[{x:36,y:38,caption:"Ask in plain English"},{x:44,y:52,caption:"Answered from your own numbers"}],funnel:[{x:30,y:26,caption:"Headline numbers, profit adjusted"},{x:40,y:52,caption:"Drop-off at every step"}],calendar:[{x:32,y:42,caption:"Scheduled work across the month"},{x:78,y:36,caption:"What ships, and when"}]};return[...a[t]??a.table,...s]}const Ft={"budget-planner":[{x:50,y:22,caption:"Pace checked against the plan"},{x:55,y:58,caption:"Brand search is underspending"},{x:84,y:20,caption:"Forecast closes £540 under plan"}],"ppc-change-log":[{x:30,y:24,caption:"Every edit, logged automatically"},{x:46,y:52,caption:"Scored on consequence"},{x:60,y:82,caption:"Rollback is one click"}],"change-intelligence":[{x:28,y:26,caption:"Movement detected across accounts"},{x:48,y:54,caption:"Matched to the change that caused it"},{x:62,y:82,caption:"Post-mortem in minutes"}],"growth-brain":[{x:30,y:26,caption:"Reads every connected source"},{x:48,y:54,caption:"Ranks the next best move"},{x:60,y:82,caption:"Priced in contribution profit"}],"hook-assist":[{x:28,y:26,caption:"Hooks scored frame by frame"},{x:48,y:54,caption:"Fatigue flagged before it costs"},{x:60,y:82,caption:"Replacement briefs drafted"}],"gtm-health":[{x:30,y:26,caption:"Tags audited continuously"},{x:48,y:54,caption:"Drift caught the day it starts"},{x:60,y:82,caption:"Finance-safe numbers restored"}],"onboarding-training":[{x:30,y:26,caption:"Guided tour on real data"},{x:48,y:54,caption:"Each step explains itself"},{x:60,y:82,caption:"Live in the first session"}]};function $t({slug:r}){const t=It[r];if(r==="attribution"&&t)return e.jsx(t,{});const s=Ft[r]??Dt(r);return e.jsx(fe,{stops:s,children:t?e.jsx(t,{}):e.jsx(Ot,{slug:r})})}const Ut=[De,xe,Fe,ue];function qt({feature:r,faqs:t}){const s=Ne(r),a=t??ve(r),[n,o]=h.useState(a[0]?.question??null);return e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:e.jsxs("div",{className:"rounded-lg border border-border bg-muted/25 p-5 sm:p-10",children:[e.jsxs("div",{className:"max-w-2xl",children:[e.jsx("p",{className:"text-[12.5px] sm:text-[11px] font-semibold uppercase tracking-[0.22em] text-primary",children:"In practice"}),e.jsxs("h2",{className:"mt-3 font-display text-2xl font-semibold tracking-tight sm:text-3xl",children:["How ",r.name," works week to week"]}),e.jsx("p",{className:"mt-3 text-sm leading-relaxed text-muted-foreground",children:"From connecting your accounts to the review call, here is the shape of it, plus the questions teams ask us most before they start."})]}),e.jsxs("div",{className:"mt-8 grid grid-cols-1 gap-8 lg:grid-cols-12 lg:gap-x-14",children:[e.jsxs("ol",{className:"relative lg:col-span-7",children:[e.jsx("span",{"aria-hidden":!0,
1className:"absolute left-[19px] top-3 bottom-3 hidden w-px bg-gradient-to-b from-primary/40 via-border to-transparent sm:block"}),s.map((c,u)=>{const i=Ut[u]??xe;return e.jsxs("li",{className:"relative flex gap-4 pb-6 last:pb-0 sm:gap-5",children:[e.jsx("span",{className:"relative z-10 grid h-10 w-10 shrink-0 place-items-center rounded-lg border border-primary/25 bg-background text-primary shadow-sm",children:e.jsx(i,{className:"h-4 w-4"})}),e.jsxs("div",{className:"min-w-0 flex-1 rounded-lg border border-border/70 bg-background/50 p-3.5 sm:p-5",children:[e.jsx("p",{className:"text-[11px] font-semibold uppercase tracking-[0.18em] text-primary",children:c.label}),e.jsx("p",{className:"mt-1.5 font-display text-base font-semibold tracking-tight sm:text-lg",children:c.title}),e.jsx("p",{className:"mt-2 text-sm leading-relaxed text-muted-foreground",children:c.body})]})]},c.title)})]}),e.jsxs("div",{className:"lg:col-span-5",children:[e.jsx("p",{className:"text-[11px] font-semibold uppercase tracking-[0.18em] text-muted-foreground",children:"Common questions"}),e.jsx("div",{className:"mt-4 divide-y divide-border/70 overflow-hidden rounded-lg border border-border/70 bg-background/50",children:a.map(c=>{const u=n===c.question;return e.jsxs("div",{children:[e.jsxs("button",{type:"button",onClick:()=>o(u?null:c.question),"aria-expanded":u,className:"flex w-full items-start gap-3 px-4 py-3.5 text-left transition-colors hover:bg-muted/50 sm:px-5",children:[e.jsx("span",{className:"min-w-0 flex-1 text-sm font-medium text-foreground",children:c.question}),e.jsx(pe,{className:d("mt-0.5 h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200",u&&"rotate-180 text-primary")})]}),e.jsx("div",{className:d("grid transition-all duration-200 ease-out",u?"grid-rows-[1fr] opacity-100":"grid-rows-[0fr] opacity-0"),children:e.jsx("div",{className:"overflow-hidden",children:e.jsx("p",{className:"px-4 pb-4 text-sm leading-relaxed text-muted-foreground sm:px-5",children:c.answer})})})]},c.question)})})]})]})]})})}const Vt={good:"border-emerald-500/35 bg-emerald-500/[0.07] text-emerald-600 dark:text-emerald-400",warn:"border-amber-500/35 bg-amber-500/[0.07] text-amber-600 dark:text-amber-400",bad:"border-rose-500/35 bg-rose-500/[0.07] text-rose-600 dar
1k:text-rose-400",muted:"border-border bg-muted/40 text-muted-foreground"};function zt({deepDive:r}){const t=r.signalGroups??[],s=r.tiers??[],a=r.verdicts??[];return e.jsxs(e.Fragment,{children:[t.length>0&&e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:e.jsxs("div",{className:"grid grid-cols-1 gap-8 lg:grid-cols-12 lg:gap-x-16",children:[e.jsxs("div",{className:"lg:col-span-4",children:[e.jsx("p",{className:"text-[12.5px] sm:text-[11px] font-semibold uppercase tracking-[0.22em] text-primary",children:r.signalsKicker}),e.jsx("h2",{className:"mt-3 font-display text-2xl font-semibold tracking-tight",children:r.signalsHeading}),e.jsx("p",{className:"mt-3 text-sm leading-relaxed text-muted-foreground",children:r.signalsBody})]}),e.jsx("div",{className:d("grid grid-cols-1 gap-4 lg:col-span-8",t.length>=3?"sm:grid-cols-3":t.length===2?"sm:grid-cols-2":"sm:grid-cols-1"),children:t.map(n=>e.jsxs("div",{className:"flex h-full flex-col rounded-lg border border-border bg-muted/30 p-5",children:[e.jsx("p",{className:"font-display text-base font-semibold tracking-tight",children:n.title}),e.jsx("p",{className:"mt-1 flex-1 text-[13px] leading-relaxed text-muted-foreground",children:n.note}),e.jsx("ul",{className:"mt-4 flex flex-wrap gap-1.5",children:n.items.map(o=>e.jsx("li",{className:"rounded-full border border-border/80 bg-background/60 px-2.5 py-1 text-[12.5px] text-foreground/85",children:o},o))})]},n.title))})]})}),s.length>0&&e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:e.jsxs("div",{className:"rounded-lg border border-border bg-muted/25 p-5 sm:p-10",children:[e.jsxs("div",{className:"max-w-2xl",children:[e.jsx("p",{className:"text-[12.5px] sm:text-[11px] font-semibold uppercase tracking-[0.22em] text-primary",children:r.tiersKicker}),e.jsx("h2",{className:"mt-3 font-display text-2xl font-semibold tracking-tight sm:text-3xl",children:r.tiersHeading}),e.jsx("p",{className:"mt-3 text-sm leading-relaxed text-muted-foreground",children:r.tiersBody})]}),e.jsx("div",{className:"mt-8 grid grid-cols-1 items-stretch gap-4 md:grid-cols-3",children:s.map(n=>e.jsxs("div",{className:"flex flex-col rounded-lg border border-border bg-background/60 p-5",children:[e.jsx("p",{className:"font-display text-base font-semibold tracking-tight",children:n.name}),e.jsx("p",{className:"mt-1 text-[13px] text-muted-foreground",children:n.trigger}),e.jsx("p",{className:"mt-4 flex-1 text-sm leading-relaxed text-foreground/85",children:n.body}),e.jsxs("div",{className:"mt-5",children:[e.jsxs("div",{className:"flex items-center justify-between text-[12.5px] font-medium",children:[e.jsx("span",{className:"text-muted-foreground",children:n.confidence}),e.jsxs("span",{className:"tabular-nums text-primary",children:[n.strength,"%"]})]}),e.jsx("div",{className:"mt-2 h-1.5 overflow-hidden rounded-full bg-border",children:e.jsx("div",{className:"h-full rounded-full bg-primary/70",style:{width:`${n.strength}%`}})})]})]},n.name))})]})}),a.length>0&&e.jsxs("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:[e.jsx("h2",{className:"font-display text-2xl font-semibold tracking-tight",children:r.verdictsHeading}),e.jsx("div",{className:"mt-6 grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4",children:a.map(n=>e.jsxs("div",{className:"flex h-full flex-col rounded-lg border border-border bg-muted/30 p-5",children:[e.jsxs("span",{className:d("inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-[12.5px] font-semibold",Vt[n.tone]),children:[e.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-current"}),n.label]}),e.jsx("p",{className:"mt-4 text-[13px] uppercase tracking-[0.14em] text-muted-foreground",children:"When"}),e.jsx("p",{className:"mt-1 text-sm text-foreground/90",children:n.trigger}),e.jsx("p",{className:"mt-4 text-[13px] uppercase tracking-[0.14em] text-muted-foreground",children:"What happens"}),e.jsx("p",{className:"mt-1 text-sm leading-relaxed text-muted-foreground",children:n.action})]},n.label))})]})]})}function mr(){const{slug:r}=we.useParams(),t=te(r);if(!t)return e.jsx(Qe,{});const s=ke.find(i=>i.id===t.group),a=Se(t),n=Ae(t),o=Ce(t),c=Te(t),u=Re(t.slug);return e.jsx(me,{children:e.jsxs("article",{children:[e.jsxs("section",{className:"mx-auto max-w-7xl px-4 pb-8 pt-8 sm:px-8 sm:pt-16",children:[e.jsxs(w,{to:"/features",className:"inline-flex items-center gap-1.5 text-sm text-muted-foreground hover:text-foreground",children:[e.jsx($e,{className:"h-3.5 w-3.5"}),"All features"]}),e.jsxs("div",{className:"mt-7 grid min-w-0 grid-cols-1 gap-9 sm:mt-10 sm:gap-14 lg:grid-cols-12 lg:items-center lg:gap-x-16 xl:gap-x-20",children:[e.jsxs("div",{className:"min-w-0 lg:col-span-6",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"grid h-11 w-11 shrink-0 place-items-center rounded-lg bg-gradient-to-br from-primary/20 to-primary/5 ring-1 ring-primary/20",children:e.jsx(t.icon,{className:"h-5 w-5 text-primary"})}),e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-[12.5px] sm:text-[11px] font-semibold uppercase tracking-[0.22em] text-primary",children:t.heroKicker}),e.jsx("p",{className:"text-sm text-muted-foreground",children:s?.title})]})]}),e.jsx("h1",{className:"mt-6 break-words font-display text-[34px] font-semibold leading-[1.08] tracking-tight sm:text-5xl",children:t.name}),e.jsx("p",{className:"mt-4 font-display text-xl font-medium tracking-tight text-primary",children:t.tagline}),e.jsx("p",{className:"mt-5 max-w-xl text-base leading-relaxed text-muted-foreground",children:t.summary}),e.jsxs("div",{className:"mt-10 grid grid-cols-1 gap-3 sm:mt-12 sm:flex sm:flex-wrap sm:gap-4",children:[e.jsx(K,{asChild:!0,size:"lg",className:"w-full bg-primary text-primary-foreground hover:bg-primary/90 sm:w-auto",children:e.jsxs(w,{to:"/enquiry",children:["Book a discovery call ",e.jsx(q,{className:"ml-1 h-4 w-4"})]})}),e.jsx(K,{asChild:!0,size:"lg",variant:"outline",className:"w-full border-border bg-muted/40 text-foreground hover:bg-muted hover:text-foreground sm:w-auto",children:e.jsx(w,{to:"/features",children:"Explore the platform"})})]}),ie(t.slug)&&e.jsxs("p",{className:"mt-6 text-sm leading-relaxed text-muted-foreground sm:mt-7",children:["Already a customer?"," ",e.jsxs("a",{href:ie(t.slug),className:"font-medium text-primary underline-offset-4 hover:underline",children:["Open ",t.name," in your workspace"]})]}),e.jsx("dl",{className:"mt-12 grid grid-cols-1 gap-px overflow-hidden rounded-lg border border-border bg-border/70 min-[430px]:grid-cols-3 sm:mt-14",children:n.map(i=>e.jsxs("div",{className:"min-w-0 bg-background/70 px-4 py-4 sm:px-5",children:[e.jsx("dt",{className:"break-words font-display text-xl font-semibold tracking-tight text-foreground sm:text-2xl",children:i.value}),e.jsx("dd",{className:"mt-1 text-[13px] leading-snug text-muted-foreground",children:i.label})]},i.label))})]}),e.jsxs("div",{className:"min-w-0 lg:col-span-6",children:[e.jsx(J,{label:`hookology.ai / ${t.slug}`,eager:!0,children:ot(t.slug)?e.jsx(it,{slug:t.slug}):e.jsx(Ke,{slug:t.slug})}),e.jsx("ul",{className:"mt-8 grid grid-cols-1 gap-3 border-t border-border/60 pt-7 sm:mt-10 sm:grid-cols-2 sm:gap-x-6 sm:pt-8",children:t.outcomes.slice(0,4).map(i=>e.jsxs("li",{className:"flex items-start gap-2.5 text-sm text-foreground
1/90",children:[e.jsx("span",{className:"mt-0.5 grid h-4 w-4 shrink-0 place-items-center rounded-full border border-primary/45 bg-primary/15",children:e.jsx(V,{className:"h-2.5 w-2.5 text-primary",strokeWidth:3})}),i]},i))})]})]})]}),e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:e.jsx("div",{className:"grid grid-cols-1 gap-4 md:grid-cols-2",children:t.blocks.map((i,W)=>e.jsxs("div",{className:"group relative overflow-hidden rounded-lg border border-border bg-muted/30 p-5 transition-colors hover:border-primary/35 sm:p-7 md:row-span-3 md:grid md:grid-rows-subgrid md:gap-0",children:[e.jsx("span",{"aria-hidden":!0,className:"pointer-events-none absolute right-5 top-4 font-display text-[52px] font-semibold leading-none text-primary/[0.09]",children:String(W+1).padStart(2,"0")}),e.jsx("h2",{className:"relative pr-12 font-display text-xl font-semibold tracking-tight",children:i.heading}),e.jsx("p",{className:"relative mt-3 text-sm leading-relaxed text-muted-foreground",children:i.body}),e.jsx("ul",{className:"relative mt-5 space-y-2.5",children:i.points.map(U=>e.jsxs("li",{className:"flex items-start gap-2.5 text-sm text-foreground/90",children:[e.jsx("span",{className:"mt-0.5 grid h-4 w-4 shrink-0 place-items-center rounded-full border border-primary/45 bg-primary/15",children:e.jsx(V,{className:"h-2.5 w-2.5 text-primary",strokeWidth:3})}),U]},U))})]},i.heading))})}),e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:e.jsxs("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-12",children:[e.jsxs("div",{className:"lg:col-span-4",children:[e.jsx("p",{className:"text-[12.5px] sm:text-[11px] font-semibold uppercase tracking-[0.22em] text-primary",children:"The shift"}),e.jsxs("h2",{className:"mt-3 font-display text-2xl font-semibold tracking-tight",children:["What changes once ",t.name," is running"]}),e.jsx("p",{className:"mt-3 text-sm leading-relaxed text-muted-foreground",children:"Same team, same accounts. The difference is that the decision is already measured before anyone opens a spreadsheet."})]}),e.jsxs("div",{className:"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:col-span-8",children:[e.jsxs("div",{className:"relative rounded-lg border border-border bg-muted/20 p-6",children:[e.jsxs("span",{"aria-hidden":"true",className:"absolute -bottom-4 left-1/2 z-10 grid h-8 w-8 -translate-x-1/2 place-items-center rounded-full border border-primary/40 bg-background shadow-sm sm:-right-4 sm:bottom-auto sm:left-auto sm:top-1/2 sm:-translate-y-1/2 sm:translate-x-0",children:[e.jsx(pe,{className:"h-4 w-4 text-primary sm:hidden",strokeWidth:2.5}),e.jsx(Ue,{className:"hidden h-4 w-4 text-primary sm:block",strokeWidth:2.5})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"grid h-6 w-6 place-items-center rounded-full border border-border bg-background/60",children:e.jsx(qe,{className:"h-3 w-3 text-muted-foreground"})}),e.jsx("p",{className:"text-[12.5px] font-semibold uppercase tracking-[0.18em] text-muted-foreground",children:"Before"})]}),e.jsx("ul",{className:"mt-5 space-y-3",children:o.before.map(i=>e.jsx("li",{className:"text-sm leading-relaxed text-muted-foreground",children:i},i))})]}),e.jsxs("div",{className:"rounded-lg border border-primary/30 bg-gradient-to-b from-primary/[0.12] to-primary/[0.02] p-6",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"grid h-6 w-6 place-items-center rounded-full border border-primary/40 bg-primary/15",children:e.jsx(V,{className:"h-3 w-3 text-primary",strokeWidth:3})}),e.jsx("p",{className:"text-[12.5px] font-semibold uppercase tracking-[0.18em] text-primary",children:"With Hookology"})]}),e.jsx("ul",{className:"mt-5 space-y-3",children:o.after.map(i=>e.jsx("li",{className:"text-sm leading-relaxed text-foreground/90",children:i},i))})]})]})]})}),e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:e.jsx(Ve,{text:c.text,attribution:c.attribution})}),(de(t.slug)||t.detailImage||t.image)&&e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:e.jsxs("div",{className:"grid min-w-0 grid-cols-1 items-center gap-8 rounded-lg border border-border bg-muted/25 p-5 sm:p-10 lg:grid-cols-12 lg:gap-x-16",children:[e.jsxs("div",{className:"lg:col-span-4",children:[e.jsx("p",{className:"text-[12.5px] sm:text-[11px] font-semibold uppercase tracking-[0.22em] text-primary",children:"Inside the product"}),e.jsxs("h2",{className:"mt-3 font-display text-2xl font-semibold tracking-tight",children:["What ",t.name," looks like on live accounts"]}),e.jsx("p",{className:"mt-3 text-sm leading-relaxed text-muted-foreground",children:"This walkthrough uses our Northwind Apparel demo account so you can see the screen fully populated. On your workspace the same view is built from your connected platforms, so the first session already reflects your own numbers."}),e.jsx("ul",{className:"mt-5 space-y-2.5",children:t.outcomes.slice(0,3).map(i=>e.jsxs("li",{className:"flex items-start gap-2.5 text-sm text-foreground
1/90",children:[e.jsx("span",{className:"mt-0.5 grid h-4 w-4 shrink-0 place-items-center rounded-full border border-primary/45 bg-primary/15",children:e.jsx(V,{className:"h-2.5 w-2.5 text-primary",strokeWidth:3})}),i]},i))})]}),e.jsx("div",{className:"min-w-0 lg:col-span-8",children:de(t.slug)?e.jsx(J,{label:`hookology.ai / ${t.slug}`,glow:!1,children:e.jsx($t,{slug:t.slug})}):e.jsx(J,{label:`hookology.ai / ${t.slug}`,src:(t.detailImage??t.image)?.url,alt:`${t.name} detail view`,glow:!1})})]})}),u&&e.jsx(zt,{deepDive:u}),e.jsx(qt,{feature:t,faqs:u?.faqs}),e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:e.jsxs("div",{className:"grid grid-cols-1 gap-4 md:grid-cols-12",children:[e.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 p-7 md:col-span-7",children:[e.jsx("p",{className:"text-[12.5px] sm:text-[11px] font-semibold uppercase tracking-[0.22em] text-primary",children:"Why teams use it"}),e.jsx("ul",{className:"mt-5 grid grid-cols-1 gap-3 sm:grid-cols-2",children:t.outcomes.map(i=>e.jsx("li",{className:"rounded-lg border border-border/70 bg-background/40 p-4 text-sm text-foreground/90",children:i},i))})]}),e.jsxs("div",{className:"rounded-lg border border-primary/30 bg-gradient-to-b from-primary/[0.12] to-primary/[0.02] p-5 sm:p-7 md:col-span-5",children:[e.jsx(ue,{className:"h-5 w-5 text-primary"}),e.jsx("p",{className:"mt-4 font-display text-lg font-semibold tracking-tight",children:"How we set this up with you"}),e.jsx("p",{className:"mt-3 text-sm leading-relaxed text-foreground/80",children:t.managed}),e.jsxs(w,{to:"/how-it-works",className:"mt-5 inline-flex items-center gap-1.5 text-sm font-medium text-primary",children:["Our onboarding process ",e.jsx(q,{className:"h-3.5 w-3.5"})]})]})]})}),a.length>0&&e.jsxs("section",{className:"mx-auto max-w-7xl px-4 py-6 sm:px-8 sm:py-10",children:[e.jsx("h2",{className:"font-display text-2xl font-semibold tracking-tight",children:"Works alongside"}),e.jsx("div",{className:"mt-6 grid grid-cols-1 gap-3 md:grid-cols-3",children:a.map(i=>e.jsxs(w,{to:"/features/$slug",params:{slug:i.slug},className:"group rounded-lg border border-border bg-muted/30 p-6 transition-colors hover:border-violet-400/40",children:[e.jsx(i.icon,{className:"h-4 w-4 text-primary"}),e.jsx("p",{className:"mt-3 font-display text-base font-semibold tracking-tight",children:i.name}),e.jsx("p",{className:"mt-1.5 text-sm text-muted-foreground",children:i.tagline}),e.jsxs("span",{className:"mt-4 inline-flex items-center gap-1.5 text-sm font-medium text-primary",children:["View details ",e.jsx(q,{className:"h-3.5 w-3.5 transition-transform group-hover:translate-x-0.5"})]})]},i.slug))})]}),e.jsx("section",{className:"mx-auto max-w-7xl px-4 py-9 sm:px-8 sm:py-14",children:e.jsxs("div",{className:"relative overflow-hidden rounded-lg border border-border bg-gradient-to-br from-primary/15 via-primary-glow/10 to-background p-6 text-center sm:p-14",children:[e.jsxs("h2",{className:"break-words font-display text-2xl font-semibold tracking-tight sm:text-4xl",children:["See ",t.name," running on your own data"]}),e.jsx("p",{className:"mx-auto mt-4 max-w-xl text-foreground/75",children:"We build the workspace around your accounts and walk you through it together. No self-serve setup, no trial to configure on your own."}),e.jsx(K,{asChild:!0,size:"lg",className:"mt-7 w-full bg-primary text-primary-foreground hover:bg-primary/90 sm:w-auto",children:e.jsxs(w,{to:"/enquiry",children:["Book a discovery call ",e.jsx(q,{className:"ml-1 h-4 w-4"})]})})]})})]})})}export{mr as component};

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.