1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/OutreachPage-BVPobThk.js","assets/vendor-feOCaMQ1.js","assets/outreachSettings-Cz5HzJEP.js","assets/OutreachSettingsPage-CPRHcVgG.js","assets/OutreachSettingsPage-1HfqzNRA.css","assets/OutreachTeamPage-BG63ovSq.js","assets/AuditLogTab-CXIUVG0l.js","assets/DashboardPage-BD-gyp9G.js","assets/useWorkspaceRefresh-B_BiACS1.js","assets/ProductsPage-DzkWbgel.js","assets/CompetitorsPage-CGPd-tYM.js","assets/SocialPage-CKDee21q.js","assets/PlatformIcon-DPhb3wkB.js","assets/AlertsPage-CrHdzdZA.js","assets/ReportsPage-CLW-IDx9.js","assets/CampaignPage-B9G3Z4bV.js","assets/TextModelSelector-CG_ufL2z.js","assets/richText-CpK_RmW4.js","assets/ComposerPage-DLyCnWff.js","assets/CalendarPage-DIibIoHd.js","assets/AnalyticsPage-BexJuSvz.js","assets/InboxPage-hRGwLnsm.js","assets/AssetsPage-ORzFvGAe.js","assets/clipboard-Bvwy4yJ4.js","assets/AdGenerationPage-DhoT6N_x.js","assets/AgentFlowPage-D-2nDQxa.js","assets/HRDashboardPage-CAN8m2QA.js","assets/http-BvY171ik.js","assets/http-BaU-u3GF.css","assets/index-CPAsyLhj.js","assets/regularization-api-DMSVuRS2.js","assets/api-BQcEJ4bf.js","assets/format-B7vrMeKZ.js","assets/HREmployeesPage-CHCdNeOV.js","assets/operators-CImCmnPV.js","assets/HRAttendancePage-YKNZVD7t.js","assets/HRLeavePage-Cg02JwTy.js","assets/HRPayrollPage-DazlRq4c.js","assets/HRPerformancePage-BbOxal-f.js","assets/HROnboardingPage-DXAKve7Q.js","assets/HRDocumentsPage-3IBOvXOp.js","assets/HRRecruitingPage-Huc1xL5p.js","assets/HRSettingsPage-B8VVVAnp.js","assets/HRTeamPage-M8d0domy.js","assets/MyHRPage-BZhJP6Nk.js","assets/api-CyA8PGIP.js","assets/MyPayslipsPage-CJd19fuf.js","assets/MyDocumentsPage-BVKms7bK.js","assets/OrgTreePage-C6bVVWXl.js","assets/ApprovalsPage-CtHEbfZX.js","assets/BeetlBooksDashboardPage-CePndvVQ.js","assets/BeetlBooksPageShell-KDuXmUBS.js","assets/BeetlBooksPageShell-CaJO13Wu.css","assets/JournalPage-BCsch1e4.js","assets/ColumnHeaderFilterIcon-Cysa2_n2.js","assets/useColumnFilters-BHSdxQJl.js","assets/_listShell-BzLt7hyp.js","assets/InvoicesPage-BPQm4ikm.js","assets/BillsPage-CG1R5YZP.js","assets/PaymentsPage-CYnmq4zC.js","assets/BankingPage-DXZd3BeM.js","assets/AccountsPage-7fgmQc_k.js","assets/ReportsPage-BmBB8jxI.js","assets/CustomersPage-CHrf2RsA.js","assets/VendorsPage-CsSPH8cE.js","assets/BeetlBooksTeamPage-Ca61HHIl.js","assets/CRMDashboardPage-B1ABVcG7.js","assets/BeetlCRMPageShell-BM3QcAxI.js","assets/BeetlCRMPageShell-B5i9_eIh.css","assets/mock-DPjaIcRi.js","assets/ContactsPage-W
11KkXlQS.js","assets/CompaniesPage-BFvFZYwO.js","assets/LeadsPage-CyVPrS8b.js","assets/DealsPage-DY6cRNkS.js","assets/ActivitiesPage-CpKdhRlp.js","assets/ReportsPage-C1RQWAG8.js","assets/CRMTeamPage-CxD2AB3_.js","assets/CRMSettingsPage-Bz4yKNyr.js","assets/PMDashboardPage-BIzq0j7e.js","assets/index-B48rNwjt.js","assets/index-Cjq82l5g.css","assets/PMWorkspacesPage-BP1K1Ot_.js","assets/format-xZY8HryR.js","assets/PMProjectsPage-DbiSK9o1.js","assets/PMTasksPage-D-njkv2Y.js","assets/PMBoardPage-CxGaMaIc.js","assets/PMAutomationsPage-C9mKCU-O.js","assets/PMTimePage-BnM4eWLS.js","assets/PMProofingPage-CsgVRXxm.js","assets/PMDashboardsPage-4AcXU-sJ.js","assets/PMSettingsPage-Cbr0XqwJ.js","assets/PMTeamPage-Dq25J02e.js","assets/SupplyDashboardPage-CA-cHVgs.js","assets/index-BTjCIs00.js","assets/index-CTqOGp21.css","assets/SupplyItemsPage-ByMTVzkt.js","assets/SupplySuppliersPage-COC984nG.js","assets/SupplyWarehousesPage-CiOgCl7Z.js","assets/SupplyInventoryPage-BY16NvWX.js","assets/SupplyDemandPage-DUqbli_E.js","assets/SupplyPlanPage-BcZuhrNz.js","assets/SupplySOPPage-DeYV98ig.js","assets/SupplyProcurementPage-gP6-ESwm.js","assets/SupplyShipmentsPage-CsLkR_-L.js","assets/SupplyOrdersPage-HmBsoMfI.js","assets/SupplyScenariosPage-Bkxpu7p_.js","assets/SupplyAlertsPage-CyJ2Btzb.js","assets/SupplyTeamPage-BD8HOc-t.js","assets/SupplySettingsPage-g6JU6rLz.js","assets/VideoDashboardPage-CwA67r23.js","assets/VideoPageShell-CDKBxKkw.js","assets/api-DK9QzHxR.js","assets/api-Btb_Uh4U.css","assets/RoomsPage-CmdH3Hez.js","assets/RecordingsPage-CJEOR11w.js","assets/VideoTeamPage-DjT9iysq.js","assets/MeetingPage-BsmUchNm.js","assets/MeetingRoom-RBrtm3k6.js","assets/MeetingRoom-DlEZDDdR.css","assets/ProductPage-ebOD_jw-.js","assets/ContactPage-DUz1rW0N.js","assets/PrivacyPolicyPage-BodxhnPO.js","assets/SignupPage-DOSekjLJ.js","assets/PaymentPage-qOURW0xb.js","assets/SocialConnectPage-g3GaiiEG.js","assets/OutreachConnectPage-D7z1m26-.js","assets/VerifyEmailPage-j-LkufWu.js","assets/ForgotPasswordPage-BZ4r7s_J.js","assets/ResetPasswordPage-DTN4HzCq.js","assets/JoinPage-BlWDtFcX.js","assets/SettingsPage-uwIFaYzF.js","assets/UpgradePage-DJEcswiY.js"])))=>i.map(i=>d[i]); 2var Or=Object.defineProperty;var Dr=(t,r,o)=>r in t?Or(t,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[r]=o;var _t=(t,r,o)=>Dr(t,typeof r!="symbol"?r+"":r,o);import{e as i,r as Wr,u as Ie,f as Ye,L as q,N as Nr,i as $r,a as ge,c as Fr,b as W,O as Hr,R as ir,B as Vr}from"./vendor-feOCaMQ1.js";(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))n(s);new MutationObserver(s=>{for(const a of s)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&n(l)}).observe(document,{childList:!0,subtree:!0});function o(s){const a={};return s.integrity&&(a.integrity=s.integrity),s.referrerPolicy&&(a.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?a.credentials="include":s.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(s){if(s.ep)return;s.ep=!0;const a=o(s);fetch(s.href,a)}})();var ar={exports:{}},Ke={};/** 3 * @license React 4 * react-jsx-runtime.production.min.js 5 * 6 * Copyright (c) Facebook, Inc. and its affiliates. 7 * 8 * This source code is licensed under the MIT license found in the 9 * LICENSE file in the root directory of this source tree. 10 */var Ur=i,qr=Symbol.for("react.element"),Gr=Symbol.for("react.fragment"),Yr=Object.prototype.hasOwnProperty,Kr=Ur.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Jr={key:!0,ref:!0,__self:!0,__source:!0};function sr(t,r,o){var n,s={},a=null,l=null;o!==void 0&&(a=""+o),r.key!==void 0&&(a=""+r.key),r.ref!==void 0&&(l=r.ref);for(n in r)Yr.call(r,n)&&!Jr.hasOwnProperty(n)&&(s[n]=r[n]);if(t&&t.defaultProps)for(n in r=t.defaultProps,r)s[n]===void 0&&(s[n]=r[n]);return{$$typeof:qr,type:t,key:a,ref:l,props:s,_owner:Kr.current}}Ke.Fragment=Gr;Ke.jsx=sr;Ke.jsxs=sr;ar.exports=Ke;var e=ar.exports,gt={},Ct=Wr;gt.createRoot=Ct.createRoot,gt.hydrateRoot=Ct.hydrateRoot;const Xr="modulepreload",Zr=function(t){return"/"+t},At={},m=function(r,o,n){let s=Promise.resolve();if(o&&o.length>0){document.getElementsByTagName("link");const l=document.querySelector("meta[property=csp-nonce]"),d=(l==null?void 0:l.nonce)||(l==null?void 0:l.getAttribute("nonce"));s=Promise.allSettled(o.map(c=>{if(c=Zr(c),c in At)return;At[c]=!0;const f=c.endsWith(".css"),p=f?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${p}`))return;const u=document.createElement("link");if(u.rel=f?"stylesheet":Xr,f||(u.as="script"),u.crossOrigin="",u.href=c,d&&u.setAttribute("nonce",d),document.head.appendChild(u),f)return new Promise((v,h)=>{u.addEventListener("load",v),u.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${c}`)))})}))}function a(l){const d=new Event("vite:preloadError",{cancelable:!0});if(d.payload=l,window.dispatchEvent(d),!d.defaultPrevented)throw l}return s.then(l=>{for(const d of l||[])d.status==="rejected"&&a(d.reason);return r().catch(a)})},Qr=new Set(["co.uk","co.in","co.jp","co.nz","co.za","com.au","com.br","com.cn","com.mx","com.sg","ac.uk","ac.in"]);function eo(t){if(!t)return"";const r=String(t).toLowerCase();if(r==="localhost"||r.endsWith(".localhost"))return"localhost";if(/^\d+\.\d+\.\d+\.\d+$/.test(r))return r;
10const o=r.split(".").filter(Boolean);if(o.length<=2)return o.join(".");const n=o.slice(-2).join(".");return Qr.has(n)?o.slice(-3).join("."):o.slice(-2).join(".")}function Je(){var r,o;if(typeof window<"u"&&((r=window.location)!=null&&r.hostname)){const n=String(window.location.hostname||"").toLowerCase();if(n==="localhost"||n.endsWith(".localhost"))return"localhost"}const t="beetlai.com".trim().toLowerCase();if(t)return t;if(typeof window<"u"&&((o=window.location)!=null&&o.hostname)){const n=eo(window.location.hostname);if(n)return n}return"localhost"}function lr(t){const r=String(t||"").toLowerCase();return r==="localhost"||r.endsWith(".localhost")}function Xe(){if(typeof window>"u")return null;const t=String(window.location.hostname||"").toLowerCase();if(!t)return null;const r=Je(),o=new Set(["www","api","admin","mail","smtp",""]);if(lr(r)){if(t==="localhost")return null;if(t.endsWith(".localhost")){const n=t.slice(0,-10);return o.has(n)?null:n}return null}if(t===r)return null;if(t.endsWith("."+r)){const n=t.slice(0,-(r.length+1)).split(".").pop();return o.has(n)?null:n}return null}function to(t,r="/login"){var c;const o=Je(),n=lr(o),s=n&&typeof window<"u"&&((c=window.location)!=null&&c.port)?`:${window.location.port}`:"",a=n?"http":"https",l=String(t||"").trim().toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/^-+|-+$/g,""),d=r&&r.startsWith("/")?r:`/${r||""}`;return`${a}://${l}.${o}${s}${d}`}function ro(t){const r=String(t||"").trim().toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/^-+|-+$/g,"");return r?`${r}.${Je()}`:""}const cr="";function Ue(){return sessionStorage.getItem("mav_workspace_id")||null}function ot(t){t?sessionStorage.setItem("mav_workspace_id",t):sessionStorage.removeItem("mav_workspace_id"),window.dispatchEvent(new CustomEvent("workspace-changed",{detail:{id:t}}))}function Pt(t){t?sessionStorage.setItem("mav_product_id",t):sessionStorage.removeItem("mav_product_id"),window.dispatchEvent(new CustomEvent("product-changed",{detail:{id:t}}))}function dr({path:t,method:r="GET",payload:o=null,extra:n={}}={}){const s=String(r||"GET").toUpperCase();if(s==="GET")return;const a={path:t,method:s,payload:o,...n},l=t.includes("/api/campaign-posts/")||/\/api\/campaigns\/[^/]+\/posts$/.test(t),d=t.includes("/api/agents/"),c=/\/api\/outreach\/workflows\/[^/]+\/contacts/.test(t)||/\/api\/outreach\/workflows\/[^/]+\/bulk-send/.test(t);l&&window.dispatchEvent(new CustomEvent("campaign-posts-mutated",{detail:a})),d&&window.dispatchEvent(new CustomEvent("agent-flows-mutated",{detail:a})),c&&window.dispatchEvent(new CustomEvent("outreach-contacts-mutated",{detail:a}))}async function $(t,{headers:r,emitEvents:o=!0,...n}={}){const s=Ue(),a=Xe(),l={"Content-Type":"application/json",...s?{"X-Workspace-Id":s}:{},...a?{"X-Org-Slug":a}:{},...r||{}};n.body instanceof FormData&&delete l["Content-Type"];const d=await fetch(`${cr}${t}`,{...n,headers:l,credentials:"include"}),c=d.headers.get("content-type")||"",f=c.includes("application/json")?await d.json().catch(()=>null):await d.text().catch(()=>"");if(!d.ok){let u;if(f&&typeof f=="object"?Array.isArray(f.detail)?u=f.detail.map(E=>E.msg||JSON.stringify(E)).join("; "):f.detail&&typeof f.detail=="object"?u=f.detail.error||JSON.stringify(f.detail):u=f.detail||`Request failed (${d.status})`:typeof f=="string"&&f?/^\s*</.test(f)||c.includes("text/html")?d.status===502||d.status===503||d.status===504?u="The server is temporarily unreachable. Please try again in a moment.":d.status===500?u="Something went wrong on our end. Please try again.":u=`Request failed (${d.status})`:u=f:u=`Request failed (${d.status})`,d.status===401){const E=t.startsWith("/api/auth/"),A=window.location.pathname==="/login";!E&&!A&&window.dispatchEvent(new CustomEvent("auth-expired"))}const v=new Error(u);v.status=d.status,v.response={status:d.status,payload:f};const h=window.location.hostname||"",x=h.startsWith("www.")?h.slice(4):h,b=x==="beetlai.com"||x==="localhost"||x==="127.0.0.1";if(!(d.status===401||b))try{window.dispatchEvent(new CustomEvent("api-error",{detail:{title:d.status>=500?"Something went wrong":"Request failed",body:u,status:d.status}}))}catch{}throw v}const p=String(n.method||"GET").toUpperCase();return o&&p!=="GET"&&dr({path:t,method:p,payload:f}),f}function Da(t,r,{onProgress:o,headers:n}={}){return new Promise((s,a)=>{const l=new XMLHttpRequest;l.open("POST",`${cr}${t}`,!0),l.withCredentials=!0;const d=Ue(),c=Xe();if(d&&l.setRequestHeader("X-Workspace-Id",d),c&&l.setRequestHeader("X-Org-Slug",c),n)for(const[f,p]of Object.entries(n))l.setRequestHeader(f,p);l.upload.addEventListener("progress",f=>{f.lengthComputable&&typeof o=="function"&&o(Math.round(f.loaded/f.total*100))}),l.addEventListener("load",()=>{const f=l.getResponseHeader("content-type")||"",p=l.responseText||"",u=f.includes("application/json")?(()=>{try{return JSON.parse(p)}catch{return null}})():p;if(l.status>=200&&l.status<300){typeof o=="function"&&o(100);try{dr({path:t,method:"POST",payload:u})}catch{}s(u)}else{let v;if(u&&typeof u=="object"?v=(Array.isArray(u.detail)?u.detail.map(h=>h.msg||JSON.stringify(h)).join("; "):u.detail)||`Upload failed (${l.status})`:v=typeof u=="string"&&u||`Upload failed (${l.status})`,l.status===401){const h=t.startsWith("/api/auth/"),x=window.location.pathname==="/login";!h&&!x&&window.dispatchEvent(new CustomEvent("auth-expired"))}a(new Error(v))}}),l.addEventListener("error",()=>
10a(new Error("Network error during upload"))),l.addEventListener("abort",()=>a(new Error("Upload cancelled"))),l.send(r)})}const pr=i.createContext(null);function oo(t,r){switch(r.type){case"LOADING":return{...t,loading:!0};case"READY":return{user:r.user,loading:!1};case"LOGOUT":return{user:null,loading:!1};default:return t}}function no({children:t}){var p,u,v;const r=Xe(),[o,n]=i.useReducer(oo,{user:null,loading:!0});i.useEffect(()=>{$("/api/auth/me").then(x=>{if(r&&x.org&&x.org!==r){n({type:"LOGOUT"});return}n({type:"READY",user:x})}).catch(()=>n({type:"LOGOUT"}));function h(){n({type:"LOGOUT"}),window.location.href="/login"}return window.addEventListener("auth-expired",h),()=>window.removeEventListener("auth-expired",h)},[]);const s=i.useCallback(h=>{var x;return Array.isArray((x=o.user)==null?void 0:x.permissions)&&o.user.permissions.includes(h)},[o.user]);async function a(h,x){n({type:"LOADING"});try{const b=await $("/api/auth/login",{method:"POST",body:JSON.stringify({email:h,password:x})});if(b!=null&&b.requires_otp)return n({type:"LOGOUT"}),b;const j=await $("/api/auth/me");return n({type:"READY",user:j}),j}catch(b){throw n({type:"LOGOUT"}),b}}async function l(h,x){n({type:"LOADING"});try{await $("/api/auth/verify-otp",{method:"POST",body:JSON.stringify({email:h,otp:x})});const b=await $("/api/auth/me");return n({type:"READY",user:b}),b}catch(b){throw n({type:"LOGOUT"}),b}}async function d(h){return $("/api/auth/resend-otp",{method:"POST",body:JSON.stringify({email:h})})}async function c(){try{await $("/api/auth/logout",{method:"POST"})}catch{}n({type:"LOGOUT"})}const f={user:o.user,loading:o.loading,orgSlug:r,isAuthenticated:!!o.user,hasPermission:s,permissions:((p=o.user)==null?void 0:p.permissions)||[],orgPrivileges:((u=o.user)==null?void 0:u.org_privileges)||null,enabledProducts:((v=o.user)==null?void 0:v.enabled_products)||["social_media_management"],login:a,verifyOtp:l,resendOtp:d,logout:c};return e.jsx(pr.Provider,{value:f,children:t})}function Me(){const t=i.useContext(pr);if(!t)throw new Error("useAuth must be inside AuthProvider");return t}const qe=new Set;let oe=null,nt=null,it=0;function io(t){let r;try{r=JSON.parse(t.data||"{}")}catch{r={}}for(const o of Array.from(qe))try{o(r)}catch(n){console.error("[workspaceEvents] subscriber threw:",n)}}function ur(){if(!oe){try{oe=new EventSource("/api/events",{withCredentials:!0})}catch{oe=null;return}oe.onopen=()=>{it=0},oe.onmessage=io,oe.onerror=()=>{try{oe==null||oe.close()}catch{}if(oe=null,nt)return;it+=1;const r=Math.min(3e4,2e3*Math.pow(2,Math.min(4,it-1)))*(.75+Math.random()*.5);nt=setTimeout(()=>{nt=null,qe.size>0&&ur()},r)}}}function Ze(t){return typeof t!="function"?()=>{}:(qe.add(t),ur(),()=>{qe.delete(t)})}const hr=[{value:"outreach",label:"Workflow Board"},{value:"outreach_settings",label:"BeetlOutreach Settings"},{value:"settings",label:"Account Settings"},{value:"other",label:"Other / Not listed"}],gr=[{value:"smm_dashboard",label:"Dashboard"},{value:"campaigns",label:"Campaigns"},{value:"products",label:"Products"},{value:"social",label:"Social Accounts"},{value:"alerts",label:"Alerts"},{value:"reports",label:"Reports"},{value:"settings",label:"Account Settings"},{value:"other",label:"Other / Not listed"}],ao=[...hr,...gr].filter((t,r,o)=>o.findIndex(n=>n.value===t.value)===r);function Rt(t){return t.includes("/outreach")?hr:gr}const so=[{value:"bug",label:"ð Bug report"},{value:"feature",label:"ð¡ Feature request"},{value:"ux",label:"ð¨ UI / UX issue"},{value:"performance",label:"â¡ Performance issue"},{value:"question",label:"â Question / How-to"},{value:"other",label:"ð¬ Other"}],Ge={open:{label:"Open",bg:"#eff6ff",color:"#1d4ed8"},acknowledged:{label:"Acknowledged",bg:"#fefce8",color:"#b45309"},in_progress:{label:"In progress",bg:"#faf5ff",color:"#7c3aed"},resolved:{label:"Resolved",bg:"#f0fdf4",color:"#15803d"},reopened:{label:"Reopened",bg:"#fff7ed",color:"#ea580c"},closed:{label:"Closed",bg:"#f1f5f9",color:"#64748b"}},fr={bug:"Bug",feature:"Feature request",ux:"UI/UX",performance:"Performance",question:"Question",other:"Other"};function Et(t){return t?t.includes("/outreach/settings")?"outreach_settings":t.includes("/outreach")?"outreach":t.includes("/campaigns")?"campaigns":t.includes("/products")?"products":t.includes("/social")?"social":t.includes("/alerts")?"alerts":t.includes("/reports")?"reports":t.includes("/settings")?"settings":t.includes("/dashboard")?"smm_dashboard":"other":"other"}function xr(t){var r;return((r=ao.find(o=>o.value===t))==null?void 0:r.label)||t||"â"}function ke(t){if(!t)return"";try{return new Date(t).toLocaleDateString(void 0,{day:"numeric",month:"short",year:"numeric"})}catch{return t}}const C={overlay:{position:"fixed",inset:0,background:"rgba(15,23,42,.30)",zIndex:9e3,backdropFilter:"blur(2px)"},drawer:{position:"fixed",top:0,right:0,bottom:0,width:"min(500px, calc(100vw - 12px))",background:"#fff",zIndex:9001,boxShadow:"-24px 0 60px rgba(0,0,0,.18)",display:"flex",flexDirection:"column",fontFamily:"'Sora','DM Sans',system-ui,sans-serif"},hdr:{padding:"16px 20px 0",borderBottom:"1px solid rgba(0,0,0,.08)",flexShrink:0}
10,hdrTop:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",marginBottom:14},hdrLeft:{display:"flex",alignItems:"center",gap:10},hdrIcon:{width:36,height:36,borderRadius:10,flexShrink:0,background:"linear-gradient(135deg,#6366f1,#8b5cf6)",display:"flex",alignItems:"center",justifyContent:"center",color:"#fff",fontSize:16},hdrTitle:{fontSize:14,fontWeight:700,color:"#111",letterSpacing:"-.01em"},hdrSub:{fontSize:11,color:"#94a3b8",marginTop:2},closeBtn:{width:28,height:28,borderRadius:7,border:"1px solid rgba(0,0,0,.10)",background:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",color:"#666",fontSize:14,flexShrink:0},tabs:{display:"flex",gap:0},tab:t=>({flex:1,padding:"9px 0",background:"none",border:"none",borderBottom:t?"2px solid #6366f1":"2px solid transparent",color:t?"#4f46e5":"#94a3b8",fontFamily:"inherit",fontSize:12,fontWeight:t?700:500,cursor:"pointer",transition:"all .15s"}),body:{flex:1,overflowY:"auto",padding:"20px"},ftr:{padding:"14px 20px",borderTop:"1px solid rgba(0,0,0,.08)",display:"flex",gap:8,justifyContent:"flex-end",flexShrink:0},label:{display:"block",fontSize:11,fontWeight:700,color:"#64748b",textTransform:"uppercase",letterSpacing:".06em",marginBottom:5},field:{marginBottom:16},input:{width:"100%",border:"1px solid rgba(0,0,0,.12)",borderRadius:9,padding:"9px 12px",fontFamily:"inherit",fontSize:13,background:"#fff",color:"#111",outline:"none",boxSizing:"border-box"},select:{width:"100%",border:"1px solid rgba(0,0,0,.12)",borderRadius:9,padding:"9px 12px",fontFamily:"inherit",fontSize:13,background:"#fff",color:"#111",outline:"none",cursor:"pointer"},textarea:{width:"100%",border:"1px solid rgba(0,0,0,.12)",borderRadius:9,padding:"9px 12px",fontFamily:"inherit",fontSize:13,background:"#fff",color:"#111",outline:"none",resize:"vertical",minHeight:110,lineHeight:1.5,boxSizing:"border-box"},uploadArea:{border:"2px dashed rgba(99,102,241,.35)",borderRadius:10,padding:"16px",textAlign:"center",cursor:"pointer",background:"#fafbff"},uploadTxt:{fontSize:12,color:"#64748b",marginTop:6},thumbGrid:{display:"flex",flexWrap:"wrap",gap:8,marginTop:10},thumb:{position:"relative",width:70,height:70,borderRadius:8,overflow:"hidden",border:"1px solid rgba(0,0,0,.10)",background:"#f1f5f9",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},thumbImg:{width:"100%",height:"100%",objectFit:"cover"},thumbName:{fontSize:9,color:"#666",textAlign:"center",padding:"2px 4px",wordBreak:"break-all",lineHeight:1.3},thumbDel:{position:"absolute",top:2,right:2,width:16,height:16,borderRadius:"50%",background:"rgba(0,0,0,.5)",color:"#fff",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:9,lineHeight:1},errBox:{background:"#fef2f2",border:"1px solid rgba(239,68,68,.18)",borderRadius:8,padding:"10px 12px",fontSize:12,color:"#dc2626",marginBottom:14},successBox:{background:"#f0fdf4",border:"1px solid rgba(34,197,94,.25)",borderRadius:10,padding:"24px",textAlign:"center"},btnPrimary:{background:"linear-gradient(135deg,#4f46e5,#7c3aed)",color:"#fff",border:"none",borderRadius:9,padding:"9px 20px",fontSize:13,fontWeight:700,cursor:"pointer",fontFamily:"inherit"},btnSecondary:{background:"#f1f5f9",color:"#475569",border:"1px solid rgba(0,0,0,.10)",borderRadius:9,padding:"9px 16px",fontSize:13,fontWeight:500,cursor:"pointer",fontFamily:"inherit"},btnLink:{background:"none",border:"none",color:"#6366f1",fontSize:12,fontWeight:600,cursor:"pointer",fontFamily:"inherit",padding:0},requestCard:{border:"1px solid rgba(0,0,0,.08)",borderRadius:10,padding:"12px 14px",marginBottom:10,cursor:"pointer",background:"#fafbff",transition:"border-color .12s"},requestCardTop:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:8,marginBottom:6},requestSubject:{fontSize:13,fontWeight:700,color:"#111",lineHeight:1.3,flex:1,minWidth:0,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},requestMeta:{fontSize:11,color:"#94a3b8",marginBottom:6},requestBody:{fontSize:12,color:"#475569",lineHeight:1.5,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},statusPill:t=>{const r=Ge[t]||Ge.open;return{display:"inline-flex",alignItems:"center",padding:"2px 8px",borderRadius:999,fontSize:10,fontWeight:700,background:r.bg,color:r.color,flexShrink:0,whiteSpace:"nowrap"}},detailHdr:{display:"flex",alignItems:"center",gap:8,marginBottom:16},detailSubject:{fontSize:15,fontWeight:700,color:"#111",marginBottom:4},detailMeta:{fontSize:11,color:"#94a3b8",lineHeight:1.8},detailBody:{fontSize:13,color:"#334155",lineHeight:1.7,background:"#f8fafc",borderRadius:8,padding:"12px 14px",marginTop:12,whiteSpace:"pre-wrap"},attachRow:{display:"flex",alignItems:"center",gap:8,padding:"7px 10px",borderRadius:7,border:"1px solid rgba(0,0,0,.08)",background:"#f8fafc",marginTop:6},attachIcon:{fontSize:16,flexShrink:0},attachName:{flex:1,minWidth:0,fontSize:12,color:"#334155",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},attachLink:{fontSize:11,color:"#6366f1",fontWeight:600,textDecoration:"none",flexShrink:0},emptyState:{textAlign:"center",padding:"40px 20px"},emptyIcon:{fontSize:36,marginBottom:10},emptyTxt:{fontSize:13,color:"#94a3b8",lineHeight:1.6}};function mr({status:t}){const r=Ge[t]||Ge.open;return e.jsx("span",{style:C.statusPill(t),children:r.label})}function lo({att:t,onRemove:r}){var n,s;const o=(s=(n=t.file)==null?void 0:n.type)==null?void 0:s.startsWith("image/");return e.jsxs("div",{style:C.thumb,children:[o&&t.preview?e.jsx("img",{src:t.preview,alt:t.name,style:C.thumbImg}):e.jsx("span",{style:C.thumbName,children:t.name}),e.jsx("button",{style:C.thumbDel,onClick:r,title:"Remove",children:"â"}),t.uploading&&e.jsx("div",{style:{position:"absolute",inset:0,background:"rgba(255,255,255,.7)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:10,
10color:"#6366f1",fontWeight:700},children:"â¦"})]})}function co({feedbackId:t,onBack:r,fallbackItem:o}){const[n,s]=i.useState(o||null),[a,l]=i.useState(!0),[d,c]=i.useState(""),[f,p]=i.useState(!1),[u,v]=i.useState(""),[h,x]=i.useState([]),b=i.useRef(null),j=i.useCallback(async()=>{try{const g=await $(`/api/feedback/${t}`);s((g==null?void 0:g.feedback)||null)}catch(g){v(g.message||"Failed to load ticket.")}finally{l(!1)}},[t]);i.useEffect(()=>{j()},[j]),i.useEffect(()=>Ze(g=>{var k;(g==null?void 0:g.event)==="feedback-updated"&&((k=g.payload)==null?void 0:k.feedback_id)===t&&j()}),[t,j]);async function E(g){const k=Array.from(g.target.files||[]);if(g.target.value="",!k.length)return;const P=k.map(M=>({id:Math.random().toString(36).slice(2),name:M.name,content_type:M.type||"application/octet-stream",size:M.size,uploading:!0,uploaded:null,error:null,preview:M.type.startsWith("image/")?URL.createObjectURL(M):null,_file:M}));x(M=>[...M,...P]);const y=await Promise.all(P.map(async M=>{const B=new FormData;B.append("file",M._file);try{const I=await $("/api/feedback/upload",{method:"POST",body:B});return{...M,uploading:!1,uploaded:I}}catch{return{...M,uploading:!1,error:"Upload failed"}}}));x(M=>{const B=Object.fromEntries(y.map(I=>[I.id,I]));return M.map(I=>B[I.id]?{...I,...B[I.id]}:I)})}async function A(){const g=d.trim(),k=h.filter(P=>P.uploaded);if(!(!g&&!k.length)){p(!0),v("");try{const P=await $(`/api/feedback/${t}/comments`,{method:"POST",body:JSON.stringify({body:d.trim(),attachments:k.map(y=>y.uploaded)})});s((P==null?void 0:P.feedback)||n),c(""),x([])}catch(P){v(P.message||"Couldn't send reply.")}finally{p(!1)}}}if(a&&!n)return e.jsx("div",{style:{textAlign:"center",padding:"40px 0",color:"#94a3b8",fontSize:13},children:"Loading threadâ¦"});if(!n)return e.jsxs("div",{children:[e.jsx("button",{style:{...C.btnLink,marginBottom:14},onClick:r,children:"â Back"}),e.jsx("div",{style:C.emptyState,children:"Ticket not found."})]});const z=xr(n.page),L=fr[n.category]||n.category||"â",R=Array.isArray(n.comments)?n.comments:[],w=n.status==="resolved";return e.jsxs("div",{children:[e.jsx("button",{style:{...C.btnLink,marginBottom:14,display:"flex",alignItems:"center",gap:4},onClick:r,children:"â Back to all requests"}),e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:8,marginBottom:8},children:[e.jsx("div",{style:C.detailSubject,children:n.subject}),e.jsx(mr,{status:n.status})]}),e.jsxs("div",{style:C.detailMeta,children:[L," · ",z,e.jsx("br",{}),"Submitted ",ke(n.created_at),n.last_activity_at&&n.last_activity_at!==n.created_at?` · Last activity ${ke(n.last_activity_at)}`:""]}),w&&e.jsx("div",{style:{marginTop:12,padding:"10px 12px",background:"rgba(34,197,94,.07)",border:"1px solid rgba(34,197,94,.2)",borderRadius:10,color:"#15803d",fontSize:12,lineHeight:1.55},children:"â
This ticket has been marked resolved. If the issue isn't fixed, reply below to reopen the conversation."}),e.jsxs("div",{style:{marginTop:16,padding:"12px 14px",border:"1px solid #e2e8f0",borderRadius:10,background:"#fff"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:11,color:"#64748b",marginBottom:6},children:[e.jsx("span",{style:{fontWeight:700,color:"#1e293b"},children:n.user_name||"You"}),e.jsx("span",{children:ke(n.created_at)})]}),e.jsx("div",{style:{fontSize:13,color:"#1e293b",lineHeight:1.6,whiteSpace:"pre-wrap"},children:n.body}),Array.isArray(n.attachments)&&n.attachments.length>0&&e.jsx("div",{style:{marginTop:8},children:n.attachments.map((g,k)=>e.jsxs("div",{style:C.attachRow,children:[e.jsx("span",{style:C.attachIcon,children:(g.content_type||"").startsWith("image/")?"ð¼ï¸":"ð"}),e.jsx("span",{style:C.attachName,children:g.filename||"file"}),e.jsx("a",{href:g.url,target:"_blank",rel:"noreferrer",style:C.attachLink,children:"View"})]},k))})]}),R.map(g=>{const k=g.from_role==="admin";return e.jsxs("div",{style:{marginTop:10,padding:"12px 14px",border:"1px solid",borderColor:k?"rgba(99,102,241,.25)":"#e2e8f0",borderRadius:10,background:k?"rgba(99,102,241,.05)":"#fff",marginLeft:k?0:24,marginRight:k?24:0},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:11,color:"#64748b",marginBottom:6},children:[e.jsx("span",{style:{fontWeight:700,color:k?"#4338ca":"#1e293b"},children:k?"ð¡ï¸ Support team":g.from_user_name||"You"}),e.jsx("span",{children:ke(g.created_at)})]}),e.jsx("div",{style:{fontSize:13,color:"#1e293b",lineHeight:1.6,whiteSpace:"pre-wrap"},children:g.body}),Array.isArray(g.attachments)&&g.attachments.length>0&&e.jsx("div",{style:{marginTop:8},children:g.attachments.map((P,y)=>e.jsxs("div",{style:C.attachRow,children:[e.jsx("span",{style:C.attachIcon,children:(P.content_type||"").startsWith("image/")?"ð¼ï¸":(P.content_type||"").startsWith("video/")?"ð¬":(P.content_type||"").startsWith("audio/")?"ðµ":"ð"}),e.jsx("span",{style:C.attachName,children:P.filename||"file"}),e.jsx("a",{href:P.url,target:"_blank",rel:"noreferrer",style:C.attachLink,children:"View"})]},y))})]},g.id)}),e.jsxs("div",{style:{marginTop:16},children:[e.jsx("div",{style:{...C.label,marginBottom:6},children:"Reply"}),e.jsx("textarea",{value:d,onChange:g=>c(g.target.value),placeholder:w?"Reply to reopen this ticketâ¦":"Add more information or reply to supportâ¦",rows:4,style:{width:"100%",padding:"10px 12px",border:"1px solid #e2e8f0",borderRadius:8,fontSize:13,fontFamily:"inherit",resize:"vertical",boxSizing:"border-box"}}),h.length>0&&e.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginTop:6},children:h.map(g=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:5,padding:"4px 8px",borderRadius:6,border:`1px solid ${g.error?"rgba(220,38,38,.3)":"#e2e8f0"}`,background:g.error?"rgba(220,38,38,.04)":"#f8fafc",maxWidth:200},children:[g.preview?e.jsx("img",{src:g.preview,alt:"",style:{width:22,height:22,objectFit:"cover",borderRadius:3,flexShrink:0}}):e.jsx("span",{style:{fontSize:14},children:(g.content_type||"").startsWith("video/")?"ð¬":(g.content_type||"").startsWith("audio/")?"ðµ":"ð"}),e.jsx("span",{style:{fontSize:11,color:"#475569",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},children:g.uploading?"Uploadingâ¦":g.error||g.name}),e.jsx("button",{type:"button",onClick:()=>x(k=>k.filter(P=>P.id!==g.id)),style:{background:"none",border:"none",cursor:"pointer",color:"#94a3b8",fontSize:14,padding:0,lineHeight:1},children:"Ã"})]},g.id))}),u&&e.jsx("div",{style:{marginTop:6,fontSize:12,color:"#dc2626"},children:u}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginTop:8,gap:8},children:[e.jsx("button",{type:"button",onClick:()=>{var g;return(g=b.current)==null?void 0:g.click()},disabled:f,style:{display:"flex",alignItems:"center",gap:5,padding:"6px 10px",borderRadius:7,fontSize:11,fontWeight:600,border:"1px solid #e2e8f0",background:"#f8fafc",color:"#475569",cursor:"pointer",fontFamily:"inherit"},children:"ð Attach"}),e.jsx("input",{ref:b,type:"file",multiple:!0,accept:"image/*,video/*,audio/*,.pdf,.doc,.docx,.txt,.csv,.zip",style:{display:"none"},onChange:E}),e.jsx("button",{type:"button",onClick:A,disabled:f||h.some(g=>g.uploading)||!d.trim()&&!h.some(g=>g.uploaded),style:{padding:"7px 16px",borderRadius:8,fontSize:12,fontWeight:700,border:"none",background:f||h.some(g=>g.uploading)||!d.trim()&&!h.some(g=>g.uploaded)?"#cbd5e1":"#4f46e5",color:"#fff",cursor:f||h.some(g=>g.uploading)||!d.trim()&&!h.some(g=>g.uploaded)?"not-allowed":"pointer"}
10,children:f?"Sendingâ¦":h.some(g=>g.uploading)?"Uploadingâ¦":"Send reply"})]})]})]})}function po({onNewRequest:t}){const[r,o]=i.useState([]),[n,s]=i.useState(!0),[a,l]=i.useState(null),d=i.useCallback(async()=>{s(!0);try{const c=await $("/api/feedback/mine");o(Array.isArray(c==null?void 0:c.items)?c.items:[])}catch{o([])}finally{s(!1)}},[]);return i.useEffect(()=>{d()},[d]),i.useEffect(()=>{if(!a)return Ze(c=>{((c==null?void 0:c.event)==="feedback-updated"||(c==null?void 0:c.event)==="feedback-read")&&d()})},[d,a]),n?e.jsx("div",{style:{textAlign:"center",padding:"40px 0",color:"#94a3b8",fontSize:13},children:"Loading your requestsâ¦"}):r.length===0?e.jsxs("div",{style:C.emptyState,children:[e.jsx("div",{style:C.emptyIcon,children:"ð"}),e.jsxs("div",{style:C.emptyTxt,children:["You haven't submitted any feedback yet.",e.jsx("br",{}),e.jsx("button",{style:{...C.btnLink,marginTop:10},onClick:t,children:"Send your first request â"})]})]}):a?e.jsx(co,{feedbackId:a,onBack:()=>{l(null),d()},fallbackItem:r.find(c=>c.id===a)}):e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:14},children:[e.jsxs("div",{style:{fontSize:12,color:"#94a3b8"},children:[r.length," request",r.length!==1?"s":""]}),e.jsx("button",{style:{...C.btnLink,fontSize:11},onClick:d,children:"â» Refresh"})]}),r.map(c=>{const f=fr[c.category]||c.category||"",p=xr(c.page),u=!!c.unread_for_tenant,v=Array.isArray(c.comments)?c.comments.length:0;return e.jsxs("div",{style:{...C.requestCard,...u?{borderLeft:"3px solid #ef4444",paddingLeft:13}:{}},onClick:()=>l(c.id),children:[e.jsxs("div",{style:C.requestCardTop,children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[u&&e.jsx("span",{style:{width:8,height:8,borderRadius:999,background:"#ef4444",display:"inline-block",flexShrink:0},title:"New reply from support"}),e.jsx("div",{style:C.requestSubject,children:c.subject})]}),e.jsx(mr,{status:c.status})]}),e.jsxs("div",{style:C.requestMeta,children:[[f,p,ke(c.last_activity_at||c.created_at)].filter(Boolean).join(" · "),v>0&&` · ${v} repl${v===1?"y":"ies"}`]}),e.jsx("div",{style:C.requestBody,children:c.body}),Array.isArray(c.attachments)&&c.attachments.length>0&&e.jsxs("div",{style:{marginTop:6,fontSize:11,color:"#6366f1"},children:["ð ",c.attachments.length," attachment",c.attachments.length!==1?"s":""]})]},c.id)})]})}function uo({onSubmitted:t}){const r=Ie(),o=i.useRef(null),n=Rt(r.pathname),[s,a]=i.useState("bug"),[l,d]=i.useState(()=>Et(r.pathname)),[c,f]=i.useState(""),[p,u]=i.useState(""),[v,h]=i.useState(""),[x,b]=i.useState([]),[j,E]=i.useState(!1),[A,z]=i.useState(!1),[L,R]=i.useState(""),[w,g]=i.useState(!1);i.useEffect(()=>{const y=Et(r.pathname),M=Rt(r.pathname);d(M.some(B=>B.value===y)?y:M[0].value)},[r.pathname]);async function k(y){const M=Array.from(y.target.files||[]);if(y.target.value="",!M.length)return;const B=M.map(D=>({id:Math.random().toString(36).slice(2),file:D,name:D.name,preview:D.type.startsWith("image/")?URL.createObjectURL(D):null,uploading:!0,uploaded:null,error:null}));b(D=>[...D,...B]),E(!0);const I=await Promise.all(B.map(async D=>{const G=new FormData;G.append("file",D.file);try{const _=await $("/api/feedback/upload",{method:"POST",body:G});return{...D,uploading:!1,uploaded:_}}catch{return{...D,uploading:!1,error:"Upload failed"}}}));b(D=>{const G=Object.fromEntries(I.map(_=>[_.id,_]));return D.map(_=>G[_.id]?{..._,...G[_.id]}:_)}),E(!1)}async function P(){if(R(""),!p.trim()){R("Please enter a subject.");return}if(!v.trim()){R("Please describe the issue or request.");return}if(j){R("Please wait for attachments to finish uploading.");return}z(!0);try{await $("/api/feedback",{method:"POST",body:JSON.stringify({category:s,page:l,page_other:l==="other"?c:"",subject:p.trim(),body:v.trim(),attachments:x.filter(y=>y.uploaded).map(y=>y.uploaded)})}),g(!0),t==null||t()}catch(y){R(y.message||"Failed to submit. Please try again.")}finally{z(!1)}}return w?e.jsxs("div",{style:C.successBox,children:[e.jsx("div",{style:{fontSize:36,marginBottom:10},children:"â
"}),e.jsx("div",{style:{fontSize:15,fontWeight:700,color:"#111",marginBottom:6},children:"Feedback received!"}),e.jsxs("div",{style:{fontSize:12,color:"#64748b",lineHeight:1.7,marginBottom:16},children:["Thanks for writing in. Switch to the ",e.jsx("strong",{children:"My Requests"})," tab to track the status of this and all your previous submissions."]}),e.jsx("button",{style:C.btnSecondary,onClick:()=>{g(!1),u(""),h(""),b([]),R("")},children:"Submit another"})]}):e.jsxs(e.Fragment,{children:[L&&e.jsx("div",{style:C.errBox,children:L}),e.jsxs("div",{style:C.field,children:[e.jsx("label",{style:C.label,children:"Type of feedback"}),e.jsx("select",{style:C.select,value:s,onChange:y=>a(y.target.value),children:so.map(y=>e.jsx("option",{value:y.value,children:y.label},y.value))})]}),e.jsxs("div",{style:C.field,children:[e.jsx("label",{style:C.label,children:"Relevant page or area"}
10),e.jsx("select",{style:C.select,value:l,onChange:y=>d(y.target.value),children:n.map(y=>e.jsx("option",{value:y.value,children:y.label},y.value))}),l==="other"&&e.jsx("input",{style:{...C.input,marginTop:8},value:c,onChange:y=>f(y.target.value),placeholder:"Describe the page or areaâ¦"})]}),e.jsxs("div",{style:C.field,children:[e.jsx("label",{style:C.label,children:"Subject"}),e.jsx("input",{style:C.input,value:p,onChange:y=>u(y.target.value),placeholder:"Brief summary of the issue or request",maxLength:200})]}),e.jsxs("div",{style:C.field,children:[e.jsx("label",{style:C.label,children:"Details"}),e.jsx("textarea",{style:C.textarea,value:v,onChange:y=>h(y.target.value),placeholder:"Describe the problem or idea in as much detail as possible. For bugs, include steps to reproduce.",rows:5})]}),e.jsxs("div",{style:C.field,children:[e.jsxs("label",{style:C.label,children:["Attachments ",e.jsx("span",{style:{fontWeight:400,textTransform:"none",letterSpacing:0},children:"(optional)"})]}),e.jsxs("div",{style:C.uploadArea,onClick:()=>{var y;return(y=o.current)==null?void 0:y.click()},onDragOver:y=>{y.preventDefault(),y.stopPropagation()},onDrop:y=>{var B;y.preventDefault();const M=Array.from(((B=y.dataTransfer)==null?void 0:B.files)||[]);M.length&&k({target:{files:M,value:""}})},children:[e.jsx("div",{style:{fontSize:20},children:"ð"}),e.jsxs("div",{style:C.uploadTxt,children:["Click or drag & drop screenshots / videos",e.jsx("br",{}),e.jsx("span",{style:{color:"#94a3b8"},children:"Max 25 MB per file"})]}),j&&e.jsx("div",{style:{fontSize:11,color:"#6366f1",marginTop:6,fontWeight:600},children:"Uploadingâ¦"})]}),e.jsx("input",{ref:o,type:"file",accept:"image/*,video/*",multiple:!0,style:{display:"none"},onChange:k}),x.length>0&&e.jsx("div",{style:C.thumbGrid,children:x.map(y=>e.jsx(lo,{att:y,onRemove:()=>b(M=>M.filter(B=>B.id!==y.id))},y.id))}),x.some(y=>y.error)&&e.jsx("div",{style:{fontSize:11,color:"#dc2626",marginTop:6},children:"Some files failed to upload and will be skipped."})]}),e.jsx("div",{style:{display:"flex",gap:8,justifyContent:"flex-end",paddingTop:4},children:e.jsx("button",{style:{...C.btnPrimary,opacity:A||j?.6:1,cursor:A||j?"not-allowed":"pointer"},onClick:P,disabled:A||j,children:A?"Sendingâ¦":"Send feedback"})})]})}function ho({open:t,onClose:r}){const[o,n]=i.useState("new"),[s,a]=i.useState(0);i.useEffect(()=>{t&&n("new")},[t]),i.useEffect(()=>{if(!t)return;function d(c){c.key==="Escape"&&r()}return document.addEventListener("keydown",d),()=>document.removeEventListener("keydown",d)},[t,r]);function l(){setTimeout(()=>{n("mine"),a(d=>d+1)},1200)}return t?e.jsxs(e.Fragment,{children:[e.jsx("div",{style:C.overlay,onClick:r}),e.jsxs("div",{style:C.drawer,children:[e.jsxs("div",{style:C.hdr,children:[e.jsxs("div",{style:C.hdrTop,children:[e.jsxs("div",{style:C.hdrLeft,children:[e.jsx("div",{style:C.hdrIcon,children:"ð¬"}),e.jsxs("div",{children:[e.jsx("div",{style:C.hdrTitle,children:"Support & Feedback"}),e.jsx("div",{style:C.hdrSub,children:"Report issues · Request features · Track your submissions"})]})]}),e.jsx("button",{style:C.closeBtn,onClick:r,children:"â"})]}),e.jsxs("div",{style:C.tabs,children:[e.jsx("button",{style:C.tab(o==="new"),onClick:()=>n("new"),children:"âï¸Â New request"}),e.jsx("button",{style:C.tab(o==="mine"),onClick:()=>n("mine"),children:"ð My requests"})]})]}),e.jsx("div",{style:C.body,children:o==="new"?e.jsx(uo,{onSubmitted:l},"new-form"):e.jsx(po,{onNewRequest:()=>n("new")},s)})]})]}):null}function go(t){return t.startsWith("/dashboard/outreach")?"outreach":"smm"}function at(t){return t==="outreach"?"BeetlOutreach":"BeetlSocial"}function st({size:t=24,spinning:r=!1}){return e.jsxs("svg",{width:t,height:t,viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:r?{animation:"ai-spin-slow 8s linear infinite"}:{},children:[e.jsxs("defs",{children:[e.jsxs("linearGradient",{id:"gm1",x1:"0",y1:"0",x2:"48",y2:"48",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{offset:"0%",stopColor:"#4285F4"}),e.jsx("stop",{offset:"33%",stopColor:"#9B72F4"}),e.jsx("stop",{offset:"66%",stopColor:"#EA4335"}),e.jsx("stop",{offset:"100%",stopColor:"#FBBC05"})]}),e.jsxs("linearGradient",{id:"gm2",x1:"48",y1:"0",x2:"0",y2:"48",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{offset:"0%",stopColor:"#34A853"}),e.jsx("stop",{offset:"50%",stopColor:"#4285F4"}),e.jsx("stop",{offset:"100%",stopColor:"#9B72F4"})]})]}),e.jsx("path",{d:"M24 4 C24 4 26.5 14 24 24 C21.5 14 24 4 24 4Z",fill:"url(#gm1)"}),e.jsx("path",{d:"M24 44 C24 44 21.5 34 24 24 C26.5 34 24 44 24 44Z",fill:"url(#gm1)"}),e.jsx("path",{d:"M44 24 C44 24 34 26.5 24 24 C34 21.5 44 24 44 24Z",fill:"url(#gm2)"}),e.jsx("path",{d:"M4 24 C4 24 14 21.5 24 24 C14 26.5 4 24 4 24Z",fill:"url(#gm2)"})]})}function lt({size:t=16}){return e.jsxs("svg",{width:t,height:t,viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsxs("defs",{children:[e.jsxs("linearGradient",{id:"gms1",x1:"0",y1:"0",x2:"48",y2:"48",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{offset:"0%",stopColor:"#4285F4"}),e.jsx("stop",{offset:"50%",stopColor:"#9B72F4"}),e.jsx("stop",{offset:"100%",stopColor:"#EA4335"})]}),e.jsxs("linearGradient",{id:"gms2",x1:"48",y1:"0",x2:"0",y2:"48",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{offset:"0%",stopColor:"#34A853"}),e.jsx("stop",{offset:"100%",stopColor:"#4285F4"})]})]}),e.jsx("path",{d:"M24 4 C24 4 26.5 14 24 24 C21.5 14 24 4 24 4Z",fill:"url(#gms1)"}),e.jsx("path",{d:"M24 44 C24 44 21.5 34 24 24 C26.5 34 24 44 24 44Z",fill:"url(#gms1)"}),e.jsx("path",{d:"M44 24 C44 24 34 26.5 24 24 C34 21.5 44 24 44 24Z",fill:"url(#gms2)"}),e.jsx("path",{d:"M4 24 C4 24 14 21.5 24 24 C14 26.5 4 24 4 24Z",fill:"url(#gms2)"})]})}function fo(t){var s;if(!t)return null;const r=t.split(` 11`),o=[];let n=0;for(;n<r.length;){const a=r[n];if(a.trim().startsWith("|")&&((s=r[n+1])!=null&&s.trim().startsWith("|---"))){const c=a.trim().split("|").filter(
11Boolean).map(p=>p.trim());n+=2;const f=[];for(;n<r.length&&r[n].trim().startsWith("|");)f.push(r[n].trim().split("|").filter(Boolean).map(p=>p.trim())),n++;o.push(e.jsx("div",{style:{overflowX:"auto",margin:"8px 0"},children:e.jsxs("table",{style:{borderCollapse:"collapse",width:"100%",fontSize:12},children:[e.jsx("thead",{children:e.jsx("tr",{children:c.map((p,u)=>e.jsx("th",{style:{padding:"5px 10px",background:"rgba(66,133,244,.08)",borderBottom:"2px solid rgba(66,133,244,.2)",textAlign:"left",fontWeight:700,color:"#4285F4",whiteSpace:"nowrap"},children:p},u))})}),e.jsx("tbody",{children:f.map((p,u)=>e.jsx("tr",{style:{background:u%2===0?"transparent":"rgba(66,133,244,.03)"},children:p.map((v,h)=>e.jsx("td",{style:{padding:"5px 10px",borderBottom:"1px solid #f0f0f0",fontSize:12,color:"#333"},children:Oe(v)},h))},u))})]})},`t${n}`));continue}if(a.match(/^(\d+)\.\s+(.+)/)){const c=[];for(;n<r.length&&r[n].match(/^(\d+)\.\s+(.+)/);)c.push(r[n].match(/^(\d+)\.\s+(.+)/)[2]),n++;o.push(e.jsx("ol",{style:{margin:"6px 0",paddingLeft:18},children:c.map((f,p)=>e.jsx("li",{style:{marginBottom:3,lineHeight:1.55,color:"#333"},children:Oe(f)},p))},`ol${n}`));continue}if(a.match(/^[-*]\s+(.+)/)){const c=[];for(;n<r.length&&r[n].match(/^[-*]\s+(.+)/);)c.push(r[n].match(/^[-*]\s+(.+)/)[1]),n++;o.push(e.jsx("ul",{style:{margin:"6px 0",paddingLeft:16},children:c.map((f,p)=>e.jsx("li",{style:{marginBottom:3,lineHeight:1.55,color:"#333",listStyleType:"disc"},children:Oe(f)},p))},`ul${n}`));continue}const l=a.match(/^###\s+(.+)/);if(l){o.push(e.jsx("div",{style:{fontWeight:700,fontSize:12.5,color:"#4285F4",margin:"10px 0 3px",textTransform:"uppercase",letterSpacing:".04em"},children:l[1]},`h3${n}`)),n++;continue}const d=a.match(/^##\s+(.+)/);if(d){o.push(e.jsx("div",{style:{fontWeight:700,fontSize:13.5,color:"#1a1a2e",margin:"12px 0 4px",borderBottom:"1px solid #e8eaf6",paddingBottom:3},children:d[1]},`h2${n}`)),n++;continue}if(a.trim()==="---"){o.push(e.jsx("hr",{style:{border:"none",borderTop:"1px solid #eee",margin:"8px 0"}},`hr${n}`)),n++;continue}if(!a.trim()){n++;continue}o.push(e.jsx("p",{style:{margin:"3px 0",lineHeight:1.6,color:"#333"},children:Oe(a)},`p${n}`)),n++}return o}function Oe(t){const r=[],o=/\*\*(.+?)\*\*|`(.+?)`/g;let n=0,s;for(;(s=o.exec(t))!==null;)s.index>n&&r.push(t.slice(n,s.index)),s[1]&&r.push(e.jsx("strong",{style:{color:"#1a1a2e"},children:s[1]},s.index)),s[2]&&r.push(e.jsx("code",{style:{background:"rgba(66,133,244,.1)",color:"#4285F4",padding:"1px 4px",borderRadius:3,fontSize:"0.88em",fontFamily:"monospace"},children:s[2]},s.index)),n=o.lastIndex;return n<t.length&&r.push(t.slice(n)),r.length?r:t}const zt=()=>typeof window<"u"&&!!(window.SpeechRecognition||window.webkitSpeechRecognition),Fe=()=>typeof window<"u"&&!!window.speechSynthesis;function xo(t){if(!Fe())return;window.speechSynthesis.cancel();const r=t.replace(/\*\*(.*?)\*\*/g,"$1").replace(/`(.*?)`/g,"$1").replace(/#{1,3}\s+/g,"").replace(/\|.*\|/g,"").replace(/[-*]\s+/g,"").replace(/\n+/g," ").trim(),o=new SpeechSynthesisUtterance(r);o.rate=1.05,window.speechSynthesis.speak(o)}function mo(){return e.jsx("div",{style:{display:"flex",gap:4,alignItems:"center",padding:"4px 2px"},children:[0,1,2].map(t=>e.jsx("div",{style:{width:6,height:6,borderRadius:"50%",background:"#9B72F4",animation:`ai-dot-bounce 1.2s ease-in-out ${t*.2}s infinite`}},t))})}const bo=["How do I create a campaign?","How do I connect my Instagram?","How does AI caption generation work?","What analytics can I track?","How do workspaces work?"],yo=["How do I create a workflow?","What workflow types are available?","How do I set up an AI Voice Agent?","What delivery channels are supported?","Excel vs Excel + Sanitize?"];function vo(){const t=Ie(),r=go(t.pathname),o=r==="outreach"?yo:bo,[n,s]=i.useState(!1),[a,l]=i.useState([]),[d,c]=i.useState(""),[f,p]=i.useState(!1),[u,v]=i.useState(!1),[h,x]=i.useState(!1),[b,j]=i.useState(()=>{try{return localStorage.getItem("maverick_bubble_dismissed")!=="1"}catch{return!0}}),[E,A]=i.useState(!1),[z,L]=i.useState(()=>{try{return localStorage.getItem("maverick_fab_hidden")==="1"}catch{return!1}});function R(_){L(_);try{localStorage.setItem("maverick_fab_hidden",_?"1":"0")}catch{}_&&(s(!1),j(!1))}const w=i.useRef(null),g=i.useRef(null),k=i.useRef(null),P=i.useRef(r);function y(){j(!1);try{localStorage.setItem("maverick_bubble_dismissed","1")}catch{}}i.useEffect(()=>{n&&j(!1)},[n]),i.useEffect(()=>{P.current!==r&&(P.current=r,l([]))},[r]),i.useEffect(()=>{var _;(_=w.current)==null||_.scrollIntoView({behavior:"smooth"})},[a,f]),i.useEffect(()=>{n&&setTimeout(()=>{var _;return(_=g.current)==null?void 0:_.focus()},120)},[n]),i.useEffect(()=>{const _=N=>{N.key==="Escape"&&s(!1)};return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)},[]);const M=i.useCallback(async _=>{const N=(_||d).trim();if(!N||f)return;c(""),l(Y=>[...Y,{role:"user",content:N}]),p(!0);const be=a.slice(-10).map(Y=>({role:Y.role,content:Y.content}));try{const Y=await $("/api/ai-assistant/chat",{method:"POST",body:JSON.stringify({message:N,product:r,history:be})}),ue=(Y==null?void 0:Y.reply)||"Sorry, I couldn't process that. Please try again.";l(ye=>[...ye,{role:"assistant",content:ue}]),h&&xo(ue)}catch{l(Y=>[...Y,{role:"assistant",content:"I'm having trouble connecting right now. Please try again in a moment.",error:!0}])}finally{p(!1)}},[d,f,a,r,h]),B=i.useCallback(()=>
11{if(!zt())return;const _=window.SpeechRecognition||window.webkitSpeechRecognition,N=new _;N.lang="en-US",N.interimResults=!1,N.onresult=be=>{c(be.results[0][0].transcript),v(!1)},N.onerror=()=>v(!1),N.onend=()=>v(!1),k.current=N,N.start(),v(!0)},[]),I=i.useCallback(()=>{var _;(_=k.current)==null||_.stop(),v(!1)},[]),D=()=>{l([]),Fe()&&window.speechSynthesis.cancel()},G=_=>{_.key==="Enter"&&!_.shiftKey&&(_.preventDefault(),M())};return z?e.jsxs("button",{onClick:()=>R(!1),title:"Restore Maverick AI assistant",style:{position:"fixed",bottom:14,left:14,zIndex:9999,padding:"7px 14px",borderRadius:999,background:"linear-gradient(135deg, #4285F4, #9b72f4)",color:"#fff",border:"none",fontSize:12,fontWeight:700,cursor:"pointer",fontFamily:"inherit",boxShadow:"0 4px 14px rgba(66,133,244,.35), 0 1px 4px rgba(0,0,0,.1)",display:"inline-flex",alignItems:"center",gap:6},children:[e.jsx("span",{style:{fontSize:14},children:"â¦"})," Show Maverick"]}):e.jsxs(e.Fragment,{children:[e.jsx("style",{children:` 12 @keyframes ai-dot-bounce { 13 0%,60%,100% { transform:translateY(0); } 14 30% { transform:translateY(-5px); } 15 } 16 @keyframes ai-panel-in { 17 from { opacity:0; transform:translateY(18px) scale(.95); } 18 to { opacity:1; transform:translateY(0) scale(1); } 19 } 20 @keyframes ai-bubble-in { 21 from { opacity:0; transform:translateX(14px); } 22 to { opacity:1; transform:translateX(0); } 23 } 24 @keyframes ai-fab-appear { 25 from { opacity:0; transform:scale(.5) rotate(-20deg); } 26 to { opacity:1; transform:scale(1) rotate(0deg); } 27 } 28 @keyframes ai-spin-slow { 29 from { transform:rotate(0deg); } 30 to { transform:rotate(360deg); } 31 } 32 @keyframes ai-float { 33 0%,100% { transform:translateY(0px) rotate(0deg); } 34 33% { transform:translateY(-4px) rotate(4deg); } 35 66% { transform:translateY(-2px) rotate(-3deg); } 36 } 37 @keyframes ai-shimmer { 38 0% { box-shadow: 0 4px 24px rgba(66,133,244,.35), 0 0 0 0 rgba(155,114,244,.3); } 39 50% { box-shadow: 0 8px 32px rgba(155,114,244,.45), 0 0 0 6px rgba(155,114,244,.0); } 40 100% { box-shadow: 0 4px 24px rgba(66,133,244,.35), 0 0 0 0 rgba(155,114,244,.0); } 41 } 42 .ai-scroll::-webkit-scrollbar { width:4px; } 43 .ai-scroll::-webkit-scrollbar-track { background:transparent; } 44 .ai-scroll::-webkit-scrollbar-thumb { background:rgba(0,0,0,.1); border-radius:4px; } 45 .ai-chip:hover { background:rgba(66,133,244,.12) !important; border-color:rgba(66,133,244,.4) !important; transform:translateY(-1px); } 46 .ai-chip { transition: all .15s; } 47 .ai-send:hover:not(:disabled) { filter:brightness(1.1); transform:scale(1.05); } 48 .ai-send { transition: all .15s; } 49 .ai-icon-btn:hover { background:rgba(0,0,0,.06) !important; } 50 .ai-input:focus { outline:none; } 51 .ai-input::placeholder { color:#bbb; } 52 `}),b&&!n&&e.jsxs("div",{onClick:()=>s(!0),style:{position:"fixed",bottom:96,right:22,zIndex:9999,background:"#fff",border:"1px solid rgba(66,133,244,.25)",borderRadius:14,padding:"11px 16px 11px 13px",fontSize:13,color:"#333",cursor:"pointer",maxWidth:230,boxShadow:"0 8px 32px rgba(66,133,244,.18), 0 2px 8px rgba(0,0,0,.08)",animation:"ai-bubble-in .4s cubic-bezier(.34,1.56,.64,1)"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:4},children:[e.jsx(lt,{size:18}),e.jsx("span",{style:{fontWeight:700,color:"#1a1a2e",fontSize:13},children:"Hey, I'm Maverick!"})]}),e.jsxs("div",{style:{color:"#666",fontSize:12,lineHeight:1.4},children:["Ask me anything about",e.jsx("br",{}),at(r)," â¨"]}),e.jsx("button",{type:"button","aria-label":"Dismiss Maverick greeting",onClick:_=>{_.stopPropagation(),y()},style:{position:"absolute",top:2,right:2,width:28,height:28,display:"flex",alignItems:"center",justifyContent:"center",background:"none",border:"none",color:"#64748b",cursor:"pointer",fontSize:18,lineHeight:1,padding:0,borderRadius:6},children:"Ã"}),e.jsx("div",{style:{position:"absolute",bottom:-7,right:28,width:13,height:13,background:"#fff",border:"1px solid rgba(66,133,244,.25)",transform:"rotate(45deg)",borderTop:"none",borderLeft:"none"}})]}),!n&&e.jsx("div",{onMouseEnter:()=>A(!0),onMouseLeave:()=>A(!1),style:{position:"fixed",bottom:70,right:12,zIndex:1e4,width:88,height:40,pointerEvents:E?"auto":"none"},children:E&&e.jsx("button",{type:"button","aria-label":"Hide Maverick (restore from the bottom-left corner)",onClick:_=>{_.stopPropagation(),R(!0)},title:"Hide Maverick (restore from the bottom-left corner)",style:{position:"absolute",top:0,right:14,width:28,height:28,borderRadius:"50%",background:"#fff",border:"1px solid rgba(0,0,0,.15)",color:"#444",fontSize:14,fontWeight:700,lineHeight:1,cursor:"pointer",boxShadow:"0 4px 12px rgba(0,0,0,.18)",display:"flex",alignItems:"center",justifyContent:"center",padding:0,fontFamily:"inherit"},children:"Ã"})}),e.jsx("button",{onClick:()=>s(_=>!_),onMouseEnter:()=>A(!0),onMouseLeave:()=>A(!1),title:"Ask Maverick AI",style:{position:"fixed",bottom:22,right:22,zIndex:9999,width:58,height:58,borderRadius:"50%",background:n?"linear-gradient(135deg, #1a1a2e, #2d1b69)":"linear-gradient(135deg, #fff, #f8f9ff)",border:n?"2px solid rgba(155,114,244,.3)":"2px solid rgba(66,133,244,.2)",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",boxShadow:E||n?"0 8px 32px rgba(155,114,244,.4), 0 2px 12px rgba(0,0,0,.12)":"0 4px 20px rgba(66,133,244,.25), 0 2px 8px rgba(0,0,0,.08)",transition:"box-shadow .25s, border-color .25s, background .25s",animation:n?"ai-fab-appear .3s cubic-bezier(.34,1.56,.64,1)":"ai-fab-appear .5s cubic-bezier(.34,1.56,.64,1), ai-float 4s ease-in-out 1s infinite, ai-shimmer 3s ease-in-out 1s infinite"},children:n?e.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",children:[e.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]}):e.jsx(st,{size:34,spinning:!1})}),n&&e.jsxs("div",{style:{position:"fixed",bottom:92,right:22,zIndex:9998,width:520,maxWidth:"calc(100vw - 28px)",height:720,maxHeight:"calc(100vh - 108px)",background:"#fff",border:"1px solid rgba(66,133,244,.18)",borderRadius:18,display:"flex",flexDirection:"column",boxShadow:"0 24px 80px rgba(66,133,244,.15), 0 8px 32px rgba(0,0,0,.1), 0 0 0 1px rgba(66,133,244,.08)",animation:"ai-panel-in .28s cubic-bezier(.34,1.56,.64,1)",overflow:"hidden"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"13px 14px",background:"linear-gradient(135deg, #fafbff 0%, #f3f4ff 100%)",borderBottom:"1px solid rgba(66,133,244,.12)",flexShrink:0},children:[e.jsxs("div",{style:{position:"relative",width:36,height:36,flexShrink:0},children:[e.jsx("div",{style:{width:36,height:36,borderRadius:"50%",background:"linear-gradient(135deg, #f0f4ff, #e8ecff)",border:"1.5px solid rgba(66,133,244,.2)",display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(st,{size:22})}),e.jsx("div",{style:{position:"absolute",bottom:0,right:0,width:9,height:9,borderRadius:"50%",background:"#34A853",border:"2px s
52olid #fff"}})]}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsxs("div",{style:{fontWeight:800,fontSize:14,color:"#1a1a2e",letterSpacing:"-.02em"},children:["Maverick ",e.jsx("span",{style:{background:"linear-gradient(90deg,#4285F4,#9B72F4)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",fontSize:10,fontWeight:700,letterSpacing:".04em",textTransform:"uppercase"},children:"AI"})]}),e.jsxs("div",{style:{fontSize:10.5,color:"#888",marginTop:1},children:[at(r)," · Always ready"]})]}),e.jsxs("div",{style:{display:"flex",gap:2,alignItems:"center"},children:[Fe()&&e.jsx("button",{className:"ai-icon-btn",onClick:()=>{h&&Fe()&&window.speechSynthesis.cancel(),x(_=>!_)},title:h?"Mute voice":"Enable voice",style:{background:h?"rgba(66,133,244,.1)":"transparent",border:h?"1px solid rgba(66,133,244,.3)":"1px solid transparent",borderRadius:7,padding:"5px 6px",cursor:"pointer",color:h?"#4285F4":"#bbb",transition:"all .15s"},children:e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[e.jsx("polygon",{points:"11 5 6 9 2 9 2 15 6 15 11 19 11 5"}),e.jsx("path",{d:"M15.54 8.46a5 5 0 0 1 0 7.07"}),e.jsx("path",{d:"M19.07 4.93a10 10 0 0 1 0 14.14"})]})}),a.length>0&&e.jsx("button",{className:"ai-icon-btn",onClick:D,title:"Clear chat",style:{background:"transparent",border:"1px solid transparent",cursor:"pointer",color:"#ccc",padding:"5px 6px",borderRadius:7,transition:"all .15s"},children:e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[e.jsx("polyline",{points:"3 6 5 6 21 6"}),e.jsx("path",{d:"M19 6l-1 14H6L5 6"}),e.jsx("path",{d:"M10 11v6"}),e.jsx("path",{d:"M14 11v6"}),e.jsx("path",{d:"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"})]})}),e.jsx("button",{className:"ai-icon-btn",title:"Hide assistant",onClick:()=>R(!0),style:{background:"transparent",border:"1px solid transparent",cursor:"pointer",color:"#bbb",padding:"5px 6px",borderRadius:7,transition:"all .15s",fontSize:11,fontWeight:600},children:"Hide"}),e.jsx("button",{className:"ai-icon-btn",onClick:()=>s(!1),style:{background:"transparent",border:"1px solid transparent",cursor:"pointer",color:"#bbb",padding:"5px 6px",borderRadius:7,transition:"all .15s"},children:e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",children:[e.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]})]}),e.jsxs("div",{className:"ai-scroll",style:{flex:1,overflowY:"auto",padding:"14px 14px 4px",background:"#fff"},children:[a.length===0&&e.jsxs("div",{style:{textAlign:"center",marginTop:16},children:[e.jsx("div",{style:{width:64,height:64,borderRadius:"50%",background:"linear-gradient(135deg, #f0f4ff, #e8ecff)",border:"1.5px solid rgba(66,133,244,.18)",display:"flex",alignItems:"center",justifyContent:"center",margin:"0 auto 12px",boxShadow:"0 4px 16px rgba(66,133,244,.12)"},children:e.jsx(st,{size:36})}),e.jsx("div",{style:{fontWeight:800,fontSize:15,color:"#1a1a2e",marginBottom:5},children:"Hi, I'm Maverick!"}),e.jsxs("div",{style:{color:"#888",fontSize:12.5,marginBottom:20,lineHeight:1.5},children:["Your AI guide for ",at(r),".",e.jsx("br",{}),"Ask me anything â features, how-tos, best practices."]}),e.jsx("div",{style:{fontSize:10.5,color:"#bbb",marginBottom:10,textTransform:"uppercase",letterSpacing:".06em",fontWeight:600},children:"Try asking"}),e.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,justifyContent:"center"},children:o.map(_=>e.jsx("button",{className:"ai-chip",onClick:()=>M(_),style:{background:"rgba(66,133,244,.07)",border:"1px solid rgba(66,133,244,.2)",borderRadius:20,padding:"5px 11px",fontSize:11.5,color:"#4285F4",cursor:"pointer"},children:_},_))})]}),a.map((_,N)=>e.jsxs("div",{style:{marginBottom:14,display:"flex",flexDirection:_.role==="user"?"row-reverse":"row",alignItems:"flex-start",gap:8},children:[e.jsx("div",{style:{width:28,height:28,borderRadius:"50%",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",background:_.role==="user"?"linear-gradient(135deg, #4285F4, #9B72F4)":"linear-gradient(135deg, #f0f4ff, #e8ecff)",border:_.role==="assistant"?"1px solid rgba(66,133,244,.18)":"none",fontSize:11,fontWeight:700,color:"white"},children:_.role==="user"?"U":e.jsx(lt,{size:15})}),e.jsx("div",{style:{maxWidth:"80%",background:_.role==="user"?"linear-gradient(135deg, #4285F4, #6366f1)":_.error?"#fff5f5":"#f8f9ff",border:_.role==="user"?"none":_.error?"1px solid #fecaca":"1px solid rgba(66,133,244,.12)",borderRadius:_.role==="user"?"16px 4px 16px 16px":"4px 16px 16px 16px",padding:"9px 13px",fontSize:13,color:_.role==="user"?"#fff":"#333",boxShadow:_.role==="user"?"0 2px 10px rgba(66,133,244,.25)":"0 1px 4px rgba(0,0,0,.05)"},children:_.role==="assistant"?fo(_.content):e.jsx("p",{style:{margin:0,lineHeight:1.5},children:_.content})})]},N)),f&&e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",ga
52p:8,marginBottom:12},children:[e.jsx("div",{style:{width:28,height:28,borderRadius:"50%",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",background:"linear-gradient(135deg, #f0f4ff, #e8ecff)",border:"1px solid rgba(66,133,244,.18)"},children:e.jsx(lt,{size:15})}),e.jsx("div",{style:{background:"#f8f9ff",border:"1px solid rgba(66,133,244,.12)",borderRadius:"4px 16px 16px 16px",padding:"9px 14px",boxShadow:"0 1px 4px rgba(0,0,0,.05)"},children:e.jsx(mo,{})})]}),e.jsx("div",{ref:w})]}),e.jsxs("div",{style:{padding:"10px 12px 12px",borderTop:"1px solid rgba(66,133,244,.1)",background:"#fafbff",flexShrink:0},children:[e.jsxs("div",{style:{display:"flex",gap:6,alignItems:"flex-end",background:"#fff",border:`1.5px solid ${u?"rgba(234,67,53,.4)":"rgba(66,133,244,.25)"}`,borderRadius:13,padding:"7px 8px 7px 13px",boxShadow:"0 1px 4px rgba(0,0,0,.04)",transition:"border-color .15s"},children:[e.jsx("textarea",{ref:g,className:"ai-input",value:d,onChange:_=>c(_.target.value),onKeyDown:G,placeholder:u?"Listeningâ¦":"Ask me anythingâ¦",rows:1,style:{flex:1,background:"transparent",border:"none",color:"#1a1a2e",fontSize:13,resize:"none",lineHeight:1.5,maxHeight:90,overflow:"auto",fontFamily:"inherit"},disabled:f||u}),e.jsxs("div",{style:{display:"flex",gap:4,alignItems:"center",flexShrink:0},children:[zt()&&e.jsx("button",{className:"ai-icon-btn",onClick:u?I:B,title:u?"Stop":"Voice input",style:{background:u?"rgba(234,67,53,.08)":"transparent",border:u?"1px solid rgba(234,67,53,.3)":"1px solid transparent",borderRadius:8,padding:"5px 6px",cursor:"pointer",color:u?"#EA4335":"#ccc",transition:"all .15s"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[e.jsx("path",{d:"M12 2a3 3 0 0 1 3 3v7a3 3 0 0 1-6 0V5a3 3 0 0 1 3-3z"}),e.jsx("path",{d:"M19 10v2a7 7 0 0 1-14 0v-2"}),e.jsx("line",{x1:"12",y1:"19",x2:"12",y2:"23"}),e.jsx("line",{x1:"8",y1:"23",x2:"16",y2:"23"})]})}),e.jsx("button",{className:"ai-send",onClick:()=>M(),disabled:!d.trim()||f,title:"Send (Enter)",style:{background:d.trim()&&!f?"linear-gradient(135deg, #4285F4, #9B72F4)":"rgba(66,133,244,.1)",border:"none",borderRadius:9,width:32,height:32,display:"flex",alignItems:"center",justifyContent:"center",cursor:d.trim()&&!f?"pointer":"default"},children:e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:d.trim()&&!f?"white":"rgba(66,133,244,.4)",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("line",{x1:"22",y1:"2",x2:"11",y2:"13"}),e.jsx("polygon",{points:"22 2 15 22 11 13 2 9 22 2"})]})})]})]}),e.jsx("div",{style:{fontSize:10,color:"#ccc",marginTop:5,textAlign:"center"},children:"Powered by GPT-4o-mini · Enter to send"})]})]})]})}const fe={intelligence:{slug:"intelligence",title:"Product Intelligence",tagline:"Board-ready briefs",icon:"intel",accent:"violet",flow:"intel",short:"Hand-ready briefs on your market, customers, and growth opportunities.",long:"BeetlAI's Product Intelligence pulls live signal from across the web and turns it into briefs on your market, customers, competitors, growth opportunities, and risk â written in plain English, ready to hand off.",teams:["Product","Strategy","Executive"],capabilities:["Five built-in perspectives â market, customer, strategy, growth, risk","Source-linked briefs you can share with non-technical stakeholders","Refresh on a schedule or on-demand whenever something changes","Custom prompts for the questions that matter to your business"]},"competitor-watch":{slug:"competitor-watch",title:"Competitor Watch",tagline:"Never miss a move",icon:"tracker",accent:"cyan",flow:"intel",short:"Know the moment a competitor changes pricing, repositions, or launches.",long:"Watches the competitor websites you choose to track. When they change pricing, copy, or layout, you get a plain-English summary of what shifted, why it might matter, and where to look next.",teams:["Product","Sales","Marketing"],capabilities:["Scheduled monitoring of the competitor websites you track","Before/after diff with AI-written explanations","Subscribe to specific pages â pricing, careers, blog, product","Alerts feed integrated
52with your daily workflow"]},"social-listening":{slug:"social-listening",title:"Social Listening",tagline:"Every channel that matters",icon:"listen",accent:"pink",short:"Hear what customers and prospects are saying about you and the market.",long:"Track brand mentions, competitor chatter, and category conversations across the channels you connect. Sentiment, themes, and signals at a glance.",teams:["Marketing","Customer Success","Product"],capabilities:["Brand and competitor mention streams across major social platforms","Sentiment and theme analysis on every conversation","Workspace-isolated streams â keep client data separated","AI-summarised digests so the team isn't drinking from a firehose"]},"campaign-manager":{slug:"campaign-manager",title:"Campaign Manager",tagline:"Idea to published, in one place",icon:"campaign",accent:"amber",flow:"content",short:"Plan, draft, approve, schedule, and report on every campaign.",long:"One connected workflow from idea to published post across the channels you connect. Composer, calendar, approval gates, analytics, and inbox â sharing the same workspace, the same data, the same AI.",teams:["Marketing","Communications","Brand"],capabilities:["AI-assisted drafting tuned for each platform","Approval gates and reviewer comments built in","Visual calendar â drag, schedule, and re-time without leaving the page","Engagement and reach metrics tied back to the original brief"]},"ad-studio":{slug:"ad-studio",title:"Ad Studio + Creative",tagline:"Generate, edit, boost",icon:"ads",accent:"lime",flow:"ads",short:"Built-in image and video generators + editors. Boost the winners as paid ads.",long:"A creative suite with AI generators and editors for image, video, and audio. Trim, overlay, voiceover, and brand-tune in one preview. Boost an organic post into a paid campaign on the supported networks without leaving BeetlAI.",teams:["Marketing","Growth","Brand"],capabilities:["In-built image and video generators â brief in, on-brand creative out","Full image, video, and audio editor with live preview","Boost any organic post into a paid ad on the major networks","Track spend and engagement back inside the workspace"]},inbox:{slug:"inbox",title:"Unified Inbox",tagline:"Every comment, every DM, one place",icon:"inbox",accent:"indigo",short:"Every comment, DM, and review across all your social accounts in one inbox.",long:"Comments, direct messages, and reviews from your connected social accounts land in one unified inbox â segregated by channel, by post, by type. Reply once, log it everywhere. Filter by 'needs reply', drill into a specific post's conversation, or sweep through unread.",teams:["Community","Marketing","Customer Success"],capabilities:["Single inbox for comments, DMs, and reviews across every connected channel","Drill into a specific post to see the conversation it triggered","Reply, hide, or escalate without leaving the workspace","Filters for type, channel, post, and 'needs reply' â find what matters fast"]},analytics:{slug:"analytics",title:"Analytics",tagline:"From metric to contributor",icon:"chart",accent:"cyan",short:"Likes, comments, reach, subscribers â and the posts that drove them.",long:"Every metric your team reports on, plus the drill-down that explains it. Click a number â see exactly which posts contributed. Account-level deep dives include best time to post, posting cadence, content decay, and audience demographics, powered by your connected platforms.",teams:["Marketing","Brand","Executive"],capabilities:["Top-line metrics: impressions, reach, likes, comments, shares, saves, subscribers","Drill into any metric to see the posts that contributed and their share","Best-time-to-post heatmap, posting cadence, and content-decay curves per account","Audience demographics â age, gender, top countries â for every account"]},outreach:{slug:"outreach",title:"Omnichannel Outreach",tagline:"Email · SMS · WhatsApp · Voice",icon:"outreach",accent:"rose",flow:"outreach",short:"Research contacts, then reach them on the channels you connect â coordinated by one AI.",long:"Find the right prospects, then reach them on whichever channel they actually answer â email, SMS, WhatsApp, or AI voice calls. One AI conductor runs the multi-step sequence, auto-follows up when there's no reply, and summarises every conversation back into your inbox s
52o nothing falls through.",teams:["Sales","Customer Success","Revenue Ops"],capabilities:["Contact research that surfaces the right prospects at scale","AI voice agent that dials, qualifies, and books meetings autonomously","Email, SMS, WhatsApp, and voice in one coordinated sequence","Auto follow-ups + per-conversation summaries for fast triage"],subFeatures:[{id:"contact-research",title:"Contact Research",tagline:"Find the right prospects at scale",icon:"tracker",bullets:["ICP filters + bulk lookup","Verified emails and phone","Auto-skip prior touches"]},{id:"ai-voice-agent",title:"AI Voice Agent",tagline:"Dials, qualifies, books meetings",icon:"outreach",bullets:["20+ languages, sub-second latency","Live human handoff on intent","Transcript + summary in CRM"]},{id:"email-sms-whatsapp",title:"Email · SMS · WhatsApp",tagline:"Multi-channel coordinated reach",icon:"campaign",bullets:["Branching multi-channel sequences","Reply detection + auto-pause","Domain warm-up built in"]},{id:"auto-follow-ups",title:"Auto Follow-ups",tagline:"Smart sequences with AI summaries",icon:"rocket",bullets:["AI-drafted follow-ups","One-line conversation summaries","Stop-on-reply rules"]}]},"workflow-studio":{slug:"workflow-studio",title:"Agent Flows",tagline:"Orchestrate end-to-end work",icon:"agents",accent:"indigo",short:"Stitch agents into reusable workflows that run a process end to end.",long:"Chain research, reasoning, drafting, formatting, and delivery into reusable agentic flows. The team writes a one-line brief; the flow runs the whole pipeline â pulling data, calling the right model at each step, handing off between agents â and returns a polished deliverable. Save it, share it, run it on a schedule.",teams:["Marketing","Operations","Product"],capabilities:["Drag-to-build multi-agent pipelines that run end-to-end","Pick the right model and tool for every step","Save and share flows across the workspace, run on demand or schedule","Audit-ready logs of every agent run"]},reports:{slug:"reports",title:"Enterprise Reports",tagline:"Board-ready, on a schedule",icon:"doc",accent:"teal",short:"Pre-built and custom reports for marketing, ops, and the board.",long:"Pre-built report templates for the most-asked enterprise questions â campaign performance, channel mix, outreach pipeline, executive snapshots â and a builder for the custom ones. Schedule them, share them, ship them to stakeholders without anyone copying numbers between tabs.",teams:["Executive","Operations","Finance"],capabilities:["Pre-built templates for marketing, outreach, and executive readouts","Custom report builder that pulls from any workspace metric","Scheduled delivery to email or Slack, audit-trail included","Export to PDF, CSV, or push into your data warehouse"]},maverick:{slug:"maverick",title:"Maverick AI",tagline:"Your in-product assistant",icon:"assistant",accent:"teal",short:"Your in-product assistant. Reads your workspace data and answers your questions.",long:"An always-available AI assistant that knows every product, every workspace, and your data. Ask anything â about a campaign, a customer, a competitor, a number â and get a clear, sourced answer without leaving the page you're on.",team
52s:["Anyone on your team"],capabilities:["Floats on every page â one shortcut away","Reads your workspace data â campaigns, accounts, briefs","Cites sources so answers are auditable","Hands off to the right product when you want to take action"]},"hr-recruiting":{slug:"hr-recruiting",title:"Recruiting & ATS",tagline:"Structured hiring, in one place",icon:"briefcase",accent:"violet",short:"Pipelines, candidate tracking, and structured interviews â all in one place.",long:"Run every requisition in BeetlHR. Source candidates, build hiring pipelines per role, schedule interviews, capture structured feedback, and keep stakeholders aligned â all without juggling spreadsheets and inbox threads.",teams:["Recruiting","Hiring Managers","People Ops"],capabilities:["Per-role pipelines with stage-based candidate tracking","Structured interview kits and scorecards for fairer hiring","Calendar integration for one-click interview scheduling","Audit-ready hiring records with exportable reports"]},"hr-onboarding":{slug:"hr-onboarding",title:"Onboarding",tagline:"First day, every time, automated",icon:"rocket",accent:"amber",short:"First-day checklists, document workflows, and welcome flows that run themselves.",long:"Give every new hire a polished first day. Pre-built onboarding flows trigger document signing, equipment requests, training assignments, and intro meetings â role-by-role. Track completion as steps are finished.",teams:["People Ops","Hiring Managers","IT"],capabilities:["Pre-built onboarding templates by role and department","Document signing and storage built in","Equipment, software, and training request workflows","Real-time completion tracking and reminders"]},"hr-people":{slug:"hr-people",title:"People & Org Chart",tagline:"One source of truth for everyone",icon:"hierarchy",accent:"indigo",short:"Employee directory, org chart, and reporting lines â always up to date.",long:"Keep every employee record in one place: contact info, role, manager, team, location, employment dates. Visualise the org as a live tree, search across the directory, and let everyone see who reports to whom without IT pinging back and forth.",teams:["People Ops","Managers","Anyone on your team"],capabilities:["Searchable employee directory with profile photos and contact info","Live org chart that reshapes itself as roles change","Self-service profile updates with manager approval gates","Custom fields for the data your business actually tracks"]},"hr-attendance":{slug:"hr-attendance",title:"Attendance",tagline:"Time tracking that respects everyone",icon:"calendar",accent:"cyan",short:"Clock-in, geo-fenced, and shift-aware â without micromanagement vibes.",long:"Track attendance through the channel that fits your team â web check-in, mobile clock-in with geo-fence, or auto-detected from working hours. Generate timesheets, approve overtime, and feed payroll the right hours every cycle.",teams:["People Ops","Managers","Payroll"],capabilities:["Web, mobile, and geo-fenced clock-in for hybrid teams","Shift schedules and overtime detection","Manager-approved timesheets that flow into payroll","Configurable for office, remote, and frontline workforces"]},"hr-leave":{slug:"hr-leave",title:"Leave & Time-off",tagline:"Balances, requests, approvals â done",icon:"calendar",accent:"lime",short:"Leave requests, balances, holiday calendars, and approvals in one place.",long:"Set leave policies once â annual, sick, casual, parental, sabbatical â and let employees request time off from the workspace. Managers approve from the inbox; balances update automatically; holiday calendars stay in sync across the team.",teams:["People Ops","Managers","Anyone on your team"],capabilities:["Configurable leave policies per region or team","Auto-calculated balances and carry-forward rules","One
52-tap manager approvals from the inbox","Team and company calendars to spot coverage gaps"]},"hr-performance":{slug:"hr-performance",title:"Performance",tagline:"Reviews and goals, without the dread",icon:"gauge",accent:"rose",short:"Reviews, goals, 1:1s, and feedback loops â structured and on-cadence.",long:"Run review cycles that people actually finish. Pre-built templates for quarterly, annual, and 360 reviews. Set objectives and key results, log 1:1s, capture continuous feedback, and surface ratings â all without exporting to spreadsheets.",teams:["People Ops","Managers","Executive"],capabilities:["Pre-built quarterly, annual, and 360 review templates","OKR / goal tracking with quarterly check-ins","1:1 agendas, shared notes, and action items","Calibration views and ratings exports for finance and equity"]},"hr-payroll":{slug:"hr-payroll",title:"Payroll",tagline:"Pay everyone, every cycle, on time",icon:"spend",accent:"teal",short:"Salary, deductions, pay slips â and a clean handoff to your accountant.",long:"Run payroll every cycle without juggling files. BeetlHR pulls hours from attendance, applies your salary structures, computes statutory deductions, generates pay slips, and produces the reports your accountant or finance team needs â month after month.",teams:["Payroll","Finance","People Ops"],capabilities:["Salary structures with allowances, deductions, and bonuses","Statutory compliance for the regions you operate in","Pay slip generation and self-serve employee access","Exports for accounting software and bank disbursements"]},"hr-documents":{slug:"hr-documents",title:"HR Documents",tagline:"One source of truth for every doc",icon:"doc",accent:"indigo",short:"Offer letters, contracts, IDs, policies â signed, stored, and audit-ready.",long:"Every HR document â offer letters, contracts, ID proofs, signed policies, training certificates â lives in BeetlHR with the right access controls. Generate from templates, send for signature, file automatically against the right employee, and produce audit packs in one click.",teams:["People Ops","Compliance","Legal"],capabilities:["Template-driven document generation","Built-in e-signature, no third-party round-trip","Per-employee filing with role-based access controls","One-click audit packs for compliance reviews"]},beetlbooks:{slug:"beetlbooks",title:"BeetlBooks",tagline:"Books that close themselves",icon:"spend",accent:"emerald",short:"Invoices, bills, banking, and a full general ledger â without the spreadsheet sprawl.",long:"BeetlBooks runs the day-to-day finance side of the business: raise invoices, capture vendor bills, record payments, reconcile bank feeds, and post to a real double-entry ledger. Reports â P&L, balance sheet, journal â are always one click away, audit-ready, and tied to the same workspace as your campaigns, payroll, and orders.",teams:["Finance","Founder","Accountant"],capabilities:["Invoices, bills, and payments with reminders and partial-payment tracking","Bank feed import and reconciliation against the journal","Chart of accounts and double-entry ledger with audit trail","P&L, balance sheet, and journal reports exportable for filing"],subFeatures:[{id:"invoices-bills",title:"Invoices & Bills",tagline:"Reminders + partial-payment tracking",icon:"doc",bullets:["Branded PDFs and pay-in-place links","OCR for incoming bills","Recurring schedules"]},{id:"payments",title:"Payments",tagline:"Record, match, reconcile",icon:"spend",bullets:["Multi-currency with per-txn FX","Auto-match to invoices and bills","Refunds and credit notes inline"]},{id:"banking",title:"Banking",tagline:"Bank feeds + reconciliation",icon:"briefcase",bullets:["Live bank feeds + CSV import","AI category suggestions","Multi-entity, multi-currency"]},{id:"reports-ledger",title:"Reports & Ledger",tagline:"P&L, balance sheet, journal",icon:"chart",bullets:["Real-time P&L and balance sheet","Drill from cell to transaction","Period-lock + audit trail"]}]},crm:{slug:"crm",title:"BeetlCRM",tagline:"Pipeline, contacts, and the next conversation",icon:"tracker",accent:"orange",short:"Contacts, companies, leads, and deals â
52connected to the rest of your AI workspace.",long:"Track every contact, company, and deal in one place. Move leads through a customisable pipeline, log activities (calls, emails, meetings), and see stage-level conversion at a glance. Tied into BeetlOutreach for sequences, BeetlBooks for invoicing won deals, and BeetlPM for delivery handoff.",teams:["Sales","Account Management","Customer Success"],capabilities:["Contacts and companies with custom fields and tagging","Drag-and-drop deal pipeline with stage probabilities and forecasts","Activity timeline â calls, emails, meetings, notes â per record","Reports on stage conversion, lost reasons, and pipeline velocity"],subFeatures:[{id:"contacts-companies",title:"Contacts & Companies",tagline:"Custom fields, tags, timeline",icon:"tracker",bullets:["Custom fields per object","CSV / Google Contacts import","Tag-based segments"]},{id:"deal-pipeline",title:"Deal Pipeline",tagline:"Stages with weighted forecasts",icon:"chart",bullets:["Multiple pipelines per team","Stage-probability forecast","Win/loss reasons captured at close"]},{id:"leads-activities",title:"Leads & Activities",tagline:"Calls, emails, meetings on record",icon:"campaign",bullets:["Two-way email sync","AI meeting summaries","Auto-routing rules"]},{id:"pipeline-reports",title:"Pipeline Reports",tagline:"Conversion, velocity, lost reasons",icon:"gauge",bullets:["Stage-conversion funnels","Lost-reason breakdown","Pipeline velocity by rep"]}]},beetlsupply:{slug:"beetlsupply",title:"BeetlSupply",tagline:"Inventory, demand, and procurement in one workspace",icon:"briefcase",accent:"cyan",short:"Items, suppliers, warehouses, demand plans, and procurement â wired together.",long:"Run the full supply chain from items to shipments: stock on hand across warehouses, demand forecasts, supply plans, sales-and-operations planning, purchase orders, and shipment tracking. Alerts catch stock-outs and lead-time slippage before they hit the customer.",teams:["Operations","Supply Chain","Procurement"],
52capabilities:["Items, suppliers, and warehouses with multi-location stock visibility","Demand forecasts and S&OP scenarios you can compare side-by-side","Procurement, purchase orders, and shipment tracking with lead times","Alerts for low stock, late shipments, and supplier-risk signals"],subFeatures:[{id:"items-inventory",title:"Items & Inventory",tagline:"Multi-warehouse stock",icon:"briefcase",bullets:["SKUs, variants, BOMs","Per-warehouse stock + in-transit","Lot / serial / batch tracking"]},{id:"suppliers-procurement",title:"Suppliers & Procurement",tagline:"POs, lead times, risk",icon:"tracker",bullets:["Supplier scorecards","Multi-step PO approvals","Risk flags on credit + geography"]},{id:"demand-sop",title:"Demand & S&OP",tagline:"Forecasts + scenarios",icon:"chart",bullets:["Statistical forecasts (ARIMA / Prophet)","Scenario compare side-by-side","S&OP sign-off workflow"]},{id:"shipments-alerts",title:"Shipments & Alerts",tagline:"Track in transit, catch slippage",icon:"rocket",bullets:["Carrier ETAs","Customer tracking links","Alerts on stock-outs + late inbound"]}]},"project-management":{slug:"project-management",title:"BeetlPM",tagline:"Projects, tasks, and time â without the tab-switching",icon:"calendar",accent:"violet",short:"Workspaces, projects, tasks, boards, time tracking, and proofing in one tool.",long:"Plan work in workspaces, break it into projects and tasks, run them on Kanban boards, track time, automate routing, and review creative through inline proofing â all in the same workspace your campaigns, deals, and HR live in. Dashboards roll up status without anyone exporting a spreadsheet.",teams:["Project Management","Operations","Creative"],capabilities:["Workspaces, projects, and tasks with custom statuses and dependencies","Kanban boards, automations, and routing rules","Built-in time tracking and timesheets","Proofing for creative review with frame-accurate comments"],subFeatures:[{id:"projects-tasks",title:"Projects & Tasks",tagline:"Workspaces, dependencies, statuses",icon:"calendar",bullets:["Custom task types and fields","Dependencies + cascade reschedule","Recurring tasks and templates"]},{id:"kanban-boards",title:"Kanban Boards",tagline:"Drag-and-drop with automations",icon:"hierarchy",bullets:["Group by any field","WIP limits with visible blockers","Auto-assign + auto-status rules"]},{id:"time-tracking",title:"Time Tracking",tagline:"Timers, timesheets, approvals",icon:"gauge",bullets:["Click-to-start timers","Weekly timesheets","Billable hours flow to invoices"]},{id:"proofing-review",title:"Proofing & Review",tagline:"Frame-accurate creative comments",icon:"doc",bullets:["Pixel-accurate image annotation","Frame-accurate video comments","Version history + sign-offs"]}]},notesy:{slug:"notesy",title:"Notesy",tagline:"AI notes for every meeting",icon:"doc",accent:"amber",short:"Captures both sides of your meeting and writes the recap, action items, and decisions.",long:"Notesy listens to your meetings â both your voice and the system audio so it catches the other side of any Zoom, Meet, or FaceTime call â and writes a clean recap with key points, action items, owners, due dates, and decisions. Native Mac app records without a tab-share dialog; review and search everything in the browser.",teams:["Anyone in a meeting","Sales","Customer Success","Executive"],capabilities:["Native Mac app captures system audio + microphone together â both sides of any call, no tab-share dialog","Floating recording pill sits in the corner across all spaces â close the window, switch apps, recording keeps going","AI summary in seconds: abstract, key points, action items with owners and due dates, decisions","Search across every meeting you've ever recorded â find what someone said three weeks ago in two clicks"],externalUrl:"https://notesy.beetlai.com"},lumara:{slug:"lumara",title:"Lumara",tagline:"Send a gift in under a minute",icon:"doc",accent:"pink",short:"Pick a brand, generate an on-brand card with AI, and the recipient gets it in their inbox.",long:"Lumara turns any moment into a sendable gift card. Browse hundreds of brands across the markets you ship to, generate a one-off card design with AI in seconds, write your note, and the recipient receives a tap-to-redeem link in their inbox. Multi-currency by design â pay in your currency, the card lands in theirs â with card or UPI checkout depending on the market.",teams:["Customer Success","People Ops","Sales","Anyone sending a thank-you"],capabilities:["Hundreds of brands across the markets you ship to â aggregated across vendors so the picker is one list, not a maze","AI-generated card designs y
52ou can preview live before sending â what the recipient sees is what you saw","Email delivery with redemption code or one-tap link â recipient never has to copy-paste","Pay via card or UPI; settle in the recipient's currency without a separate FX step"],externalUrl:"https://lumara.beetlai.com"},video:{slug:"video",title:"BeetlVideo",tagline:"Meetings, rooms, recording â built in",icon:"campaign",accent:"teal",short:"Host meetings, share screens, record, livestream â without leaving your workspace.",long:"Run video meetings without sending people to a third-party tool. Room links, calendar invites, in-meeting chat, polls, reactions, breakout rooms, recordings, livestreams, host moderation â all integrated with the rest of your BeetlAI workspace so every meeting is one click from a CRM record, an outreach contact, or a project task.",teams:["Sales","Customer Success","Hiring","All-hands"],capabilities:["Browser-based meetings with HD video, screen share, and chat","Recordings stored in your workspace with share + delete controls","Host moderation â mute, request unmute, remove, end meeting","Breakout rooms, polls, reactions, and livestream out to RTMP"],subFeatures:[{id:"rooms",title:"Rooms",tagline:"Persistent links per team or topic",icon:"calendar",bullets:["One-click join from any product","Calendar-friendly room links","Public + private room policies"]},{id:"moderation",title:"Host Moderation",tagline:"Mute, remove, end meeting",icon:"tracker",bullets:["Per-participant mute / stop video","Ask-to-unmute / ask-for-video prompts","End meeting for everyone"]},{id:"recordings",title:"Recordings",tagline:"Capture, watch, share",icon:"doc",bullets:["Server-side recording to your workspace","Per-recording share + delete controls","Searchable from inbox / CRM"]},{id:"engagement",title:"Engagement",tagline:"Polls, reactions, breakouts",icon:"chart",bullets:["Live polls + raised-hand queue","Breakout rooms with auto-assign","Emoji reactions overlay"]}]}},wo=["intelligence","competitor-watch","social-listening","campaign-manager","ad-studio","inbox","analytics","workflow-studio","reports","outreach","crm","project-management","beetlbooks","beetlsupply","video","notesy","lumara","hr-recruiting","hr-onboarding","hr-people","hr-attendance","hr-leave","hr-performance","hr-payroll","hr-documents","maverick"].map(t=>fe[t]),Te=[{id:"notesy",title:"Notesy",tagline:"AI notes for every meeting",description:"Captures both sides of your meeting â your voice and the system audio together â and writes a clean recap with key points, action items, owners, and decisions. Native Mac app records without any tab-share dialog; review and search everything in the browser.",icon:"doc",features:["notesy"],externalUrl:"https://notesy.beetlai.com"},{id:"lumara",title:"Lumara",tagline:"Send a gift in under a minute",description:"Pick a brand, generate an on-brand card with AI, write a note, and the recipient gets a tap-to-redeem link in their inbox. Hundreds of brands across the markets you ship to, multi-currency by design, card or UPI at checkout.",icon:"doc",features:["lumara"],externalUrl:"https://lumara.beetlai.com"},{id:"beetlsocial",title:"BeetlSocial",tagline:"Marketing, content, social media",description:"Plan campaigns, generate creative, monitor competitors, listen to category conversations, manage every comment and DM, and report on the impact â all from one workspace, with an AI assistant on every page.",icon:"campaign",features:["intelligence","competitor-watch","social-listening","campaign-manager","ad-studio","inbox","analytics","workflow-studio","reports","maverick"]},{id:"beetloutreach",title:"BeetlOutreach",tagline:"Email · SMS · WhatsApp · AI voice",description:"Research the right contacts, then run coordinated email, SMS, WhatsApp, and AI voice sequences. One AI conductor handles follow-ups, summarises every conversation, and books the meeting.",icon:"outreach",features:["outreach"]},{id:"beetlhr",title:"BeetlHR",tagline:"Recruiting through payroll",description:"End-to-end people operations: recruiting, onboarding, employee directory, org chart, attendance, leave, performance reviews, payroll, and HR documents â one source of truth for the whole employee lifecycle.",icon:"briefcase",features:["hr-recruiting","hr-onboarding","hr-people","hr-attendance","hr-leave","hr-performance","hr-payroll","hr-documents"]},{id:"beetlcrm",title:"BeetlCRM",tagline:"Pipeline, contacts, and the next conversation",description:"Track contacts, companies, leads, and deals through a customisable pipeline. Activity timelines, stage-level forecasts, and tight integration with BeetlOutreach (sequences), BeetlBooks (invoicing won deals), and BeetlPM (delivery handoff).",icon:"tracker",features:["crm"]},{id:"beetlpm",title:"BeetlPM",tagline:"Projects, tasks, and time â in one tool",description:"Plan work in workspaces, break it into projects and tasks, run them on Kanban boards, track time, automate routing, and review creative through inline proofing. Dashboards roll up status across the whole org without exporting a spreadsheet.",icon:"calendar",features:["project-management"]},{id:"beetlbooks",title:"BeetlBooks",tagline:"Invoices, bills, and a real ledger",description:"Day-to-day finance ops: invoices, bills, payments, bank reconciliation, and a double-entry general ledger. P&L, balance sheet, and j
52ournal exports â audit-ready, tied to the same workspace as your campaigns, payroll, and orders.",icon:"spend",features:["beetlbooks"]},{id:"beetlsupply",title:"BeetlSupply",tagline:"Inventory, demand, procurement",description:"Run the full supply chain from items to shipments: stock visibility across warehouses, demand forecasts, supply and S&OP plans, purchase orders, and shipment tracking. Alerts catch stock-outs and lead-time slippage before they hit customers.",icon:"briefcase",features:["beetlsupply"]},{id:"beetlvideo",title:"BeetlVideo",tagline:"Meetings, rooms, recordings â built in",description:"Host video meetings without leaving your workspace. Persistent room links, calendar invites, in-meeting chat, polls, breakouts, host moderation, recordings, and livestream â one click from a CRM record, an outreach contact, or a project task.",icon:"campaign",features:["video"]}],ko="https://beetlai.com",De="BeetlAI",jo="https://beetlai.com/og.png";function Z(t,r,o,n){if(typeof document>"u")return;let s=document.head.querySelector(t);s||(s=document.createElement("meta"),s.setAttribute(r,o),s.setAttribute("data-seo","dyn"),document.head.appendChild(s)),n==null?s.removeAttribute("content"):s.setAttribute("content",String(n))}function So(t,r){if(typeof document>"u")return;let o=document.head.querySelector(`link[rel="${t}"]`);o||(o=document.createElement("link"),o.setAttribute("rel",t),o.setAttribute("data-seo","dyn"),document.head.appendChild(o)),o.setAttribute("href",r)}function _o(t,r){if(typeof document>"u"||!r)return;const o=document.head.querySelector(`script[data-seo-jsonld="${t}"]`);o&&o.remove();const n=document.createElement("script");n.type="application/ld+json",n.setAttribute("data-seo-jsonld",t),n.setAttribute("data-seo","dyn"),n.text=JSON.stringify(r),document.head.appendChild(n)}function Co({title:t,description:r,path:o="/",ogTitle:n,ogDescription:s,ogImage:a=jo,noindex:l=!1,jsonLd:d}={}){i.useEffect(()=>{if(typeof document>"u")return;const c=t?t.includes(De)?t:`${t} â ${De}`:De,f=ko+o,p=n||c,u=s||r;return document.title=c,r&&Z('meta[name="description"]',"name","description",r),Z('meta[property="og:title"]',"property","og:title",p),u&&Z('meta[property="og:description"]',"property","og:description",u),Z('meta[property="og:url"]',"property","og:url",f),Z('meta[property="og:image"]',"property","og:image",a),Z('meta[property="og:type"]',"property","og:type","website"),Z('meta[property="og:site_name"]',"property","og:site_name",De),Z('meta[name="twitter:title"]',"name","twitter:title",p),u&&Z('meta[name="twitter:description"]',"name","twitter:description",u),Z('meta[name="twitter:image"]',"name","twitter:image",a),Z('meta[name="twitter:card"]',"name","twitter:card","summary_large_image"),Z('meta[name="robots"]',"name","robots",l?"noindex, nofollow":"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"),So("canonical",f),d&&(Array.isArray(d)?d:[d]).forEach((h,x)=>_o(`route-${x}`,h)),()=>{document.head.querySelectorAll('script[data-seo-jsonld^="route-"]').forEach(v=>v.remove())}},[t,r,o,n,s,a,l,JSON.stringify(d)])}wo.map(t=>({label:t.title,desc:t.short,href:`/products/${t.slug}`}));const br={notesy:[{slug:"notesy",title:"macOS app",tagline:"Native Mac app â system audio + mic, no tab-share",icon:"calendar",href:"https://notesy.beetlai.com/download",external:!0},{slug:"notesy",title:"iOS app",tagline:"Capture meetings on the go",icon:"rocket",href:"https://notesy.beetlai.com/download",external:!0},{slug:"notesy",title:"Windows app",tagline:"Same native capture experience on PC",icon:"briefcase",href:"https://notesy.beetlai.com/download",external:!0},{slug:"notesy",title:"Android app",tagline:"Pocket-sized notetaker for any call",icon:"chart",href:"https://notesy.beetlai.com/download",external:!0}],beetloutreach:[{slug:"outreach",title:"Contact Research",tagline:"Find the right prospects at scale",icon:"tracker",href:"/products/outreach#contact-research"},{slug:"outreach",title:"AI Voice Agent",tagline:"Dials, qualifies, books meetings",icon:"outreach",href:"/products/outreach#ai-voice-agent"},{slug:"outreach",title:"Email · SMS · WhatsApp",tagline:"Multi-channel coordinated reach",icon:"campaign",href:"/products/outreach#email-sms-whatsapp"},{slug:"outreach",title:"Auto Follow-ups",tagline:"Smart sequences with AI summaries",icon:"rocket",href:"/products/outreach#auto-follow-ups"}],beetlcrm:[{slug:"crm",title:"Contacts & Companies",tagline:"Custom fields, tags, activity timeline",icon:"tracker",href:"/products/crm#contacts-companies"},{slug:"crm",title:"Deal Pipeline",tagline:"Drag-and-drop stages with forecasts",icon:"chart",href:"/products/crm#deal-pipeline"},{slug:"crm",title:"Leads & Activities",tagline:"Calls, emails, meetings on one record",icon:"campaign",href:"/products/crm#leads-activities"},{slug:"crm",title:"Pipeline Reports",tagline:"Stage conversion, lost reasons, velocity",icon:"gauge",href:"/products/crm#pipeline-reports"}],beetlpm:[{slug:"project-management",title:"Projects & Tasks",tagline:"Workspaces, dependencies, statuses",icon:"calendar",href:"/products/project-management#projects-tasks"},{slug:"project-management",title:"Kanban Boards",tagline:"Drag-and-drop with automations",icon:"hierarchy",href:"/products/project-management#kanban-boards"},{slug:"project-management",title:"Time Tracking",tagline:"Timers, timesheets, approvals",icon:"gauge",href:"/products/project-management#time-tracking"},{slug:"project-management",title:"Proofing & Review",tagline:"Frame-accurate creative comments",icon:"doc",href:"/products/project-management#proofing-review"}],beetlbooks:[{slug:"beetlbooks",title:"Invoices & Bills",tagline:"Reminders and partial-payment tracking",icon:"doc",href:"/products/beetlbooks#invoices-bills"},{slug:"beetlbooks",title:"Payments",tagline:"Record, match, reconcile",icon:"spend",href:"/products/beetlbooks#payments"},{slug:"beetlbooks",title:"Banking",tagline:"Bank feed import + reconciliation",icon:"briefcase",href:"/products/beetlbooks#banking"},{slug:"beetlbooks",title:"Reports & Ledger",tagline:"P&L, balance sheet, journal exports",icon:"chart",href:"/products/beetlbooks#reports-ledger"}],beetlsupply:[{slug:"beetlsupply",title:"Items & Inventory",tagline:"Multi-warehouse stock visibility",icon:"briefcase",href:"/products/beetlsupply#items-inventory"},{slug:"beetlsupply",title:"Suppliers & Procurement",tagline:"POs, lead times, supplier risk",icon:"tracker",href:"/products/beetlsupply#suppliers-procurement"},{slug:"beetlsupply",title:"Demand & S&OP",tagline:"Forecasts and side-by-side scenarios",icon:"chart",href:"/products/beetlsupply#demand-sop"},{slug:"beetlsupply",title:"Shipments & Alerts",tagline:"Track in transit, catch slippage",icon:"rocket",href:"/products/beetlsupply#shipments-alerts"}],beetlvideo:[{slug:"video",title:"Rooms",tagline:"Persistent links per team or topic",icon:"calendar",href:"/products/video#rooms"},{slug:"video",title:"Host Moderation",tagline:"Mute, remove, end meeting",icon:"tracker",href:"/products/video#moderation"},{slug:"video",title:"Recordings",tagline:"Capture, watch, share",icon:"doc",href:"/products/video#recordings"},{slug:"video",title:"Engagement",tagline:"Polls, reactions, breakouts",icon:"chart",href:"/products/video#engagement"}]},yt={beetlsocial:"amber",beetloutreach:"rose",beetlhr:"indigo",beetlcrm:"orange",beetlpm:"violet",beetlbooks:"emerald",beetlsupply:"cyan",beetlvideo:"teal"},Ao=Te.map(t=>{var a;
52const r=t.features.map(l=>{const d=fe[l];if(!d)return null;const c=d.externalUrl||t.externalUrl||null;return{slug:d.slug,title:d.title,tagline:d.tagline,short:d.short,icon:d.icon,href:c||`/products/${d.slug}`,external:!!c}}).filter(Boolean),o=br[t.id],n=r[0]&&((a=fe[r[0].slug])==null?void 0:a.accent),s=t.externalUrl?o||[]:r.length<=2&&o?o:r;return{id:t.id,title:t.title,tagline:t.tagline,icon:t.icon,accent:n||yt[t.id]||"teal",features:s,externalUrl:t.externalUrl||null}}),Po=[{label:"Product",navSuites:Ao},{label:"Solutions",dropdown:[{label:"Marketing teams",desc:"Plan, draft, schedule, and report on campaigns across every channel.",href:"/products/campaign-manager"},{label:"Sales teams",desc:"Research prospects then reach them via email, SMS, WhatsApp, or AI voice.",href:"/products/outreach"},{label:"Customer Success",desc:"Every comment, DM, and review from every channel in one inbox.",href:"/products/inbox"},{label:"People & HR",desc:"Recruiting, onboarding, attendance, leave, performance reviews, and payroll.",href:"/products/hr-recruiting"},{label:"Product & Strategy",desc:"Competitor watch and market intelligence in one workspace.",href:"/products/intelligence"},{label:"Founders & Operators",desc:"Run the full go-to-market motion with agent flows that work end-to-end.",href:"/products/workflow-studio"},{label:"Agencies",desc:"Per-client workspaces, role-based access, and white-label-ready reporting.",href:"/products/reports"},{label:"Enterprise",desc:"Scheduled reports, governance, RBAC, audit trails, and SSO.",href:"/#pricing"}]},{label:"Pricing",href:"#pricing",dropdown:null},{label:"Contact",href:"/contact",dropdown:null}],Lt={free:{tagline:"For evaluation and your first workspace.",cta:"Start free",highlighted:!1,badge:null},pro:{tagline:"For fast-moving GTM and intelligence teams.",cta:"Upgrade to Pro",highlighted:!0,badge:"Most popular"},max:{tagline:"Heavier monitoring + content operations.",cta:"Upgrade to Max",highlighted:!1,badge:null},enterprise:{tagline:"Larger orgs needing governance and scale.",cta:"Talk to sales",highlighted:!1,badge:null}};function It(t){const r={free:{plan_id:"free",name:"Free",price:0,seats:2,limits:{products_count:1,competitors_count:1,social_brands_count:1,ai_text_enhancements:20}},pro:{plan_id:"pro",name:"Mav Pro",price:23,seats:4,limits:{products_count:5,competitors_count:5,social_brands_count:5,ai_text_enhancements:500}},max:{plan_id:"max",name:"Mav Max",price:50,seats:10,limits:{products_count:10,competitors_count:10,social_brands_count:10,ai_text_enhancements:1500}},enterprise:{plan_id:"enterprise",name:"Mav Enterprise",price:null,seats:null,limits:{}}};return r[t]||r.pro}function Mt(t){const r=(t==null?void 0:t.limits)||{},o=(n,s)=>n==null||n===""?`Unlimited ${s}`:`${n} ${s}`;return[t.seats?`${t.seats} workspace seat${t.seats>1?"s":""}`:"Custom seats",o(r.products_count,"tracked products"),o(r.competitors_count,"competitor trackers"),o(r.social_brands_count,"social brands"),o(r.ai_text_enhancements,"AI text enhancements"),"Campaign OS â composer, calendar, analytics, inbox","Ad Studio + Product Intelligence + Outreach",t.plan_id==="enterprise"?"Custom security, deployment, support":"Quota governance + RBAC"]}const ft=[{id:"intel",title:"Product Intelligence",caption:"Generating market briefâ¦"},{id:"tracker",title:"Competitor Tracker",caption:"Diff detected on /pricing"},{id:"campaign",title:"Campaign Composer",caption:"AI drafting LinkedIn postâ¦"},{id:"outreach",title:"Outreach Conductor",caption:"Voice agent dialing 3 prospects"}],Ro={intel:[e.jsx("path",{d:"M4 4h6v6H4zM14 4h6v6h-6zM4 14h6v6H4zM14 14a4 4 0 1 0 0 .01"},"0"),e.jsx("path",{d:"M19 19l3 3"},"1")],tracker:[e.jsx("circle",{cx:"12",cy:"12",r:"9"},"0"),e.jsx("circle",{cx:"12",cy:"12",r:"5"},"1"),e.jsx("circle",{cx:"12",cy:"12",r:"1.6",fill:"currentColor",stroke:"none"},"2")],listen:[e.jsx("path",{d:"M21 15a2 2 0 0 1-2 2H8l-4 4V5a2 2 0 0 1 2-2h13a2 2 0 0 1 2 2z"},"0"),e.jsx("path",{d:"M8 10v3M12 8v5M16 11v2"},"1")],campaign:[e.jsx("rect",{x:"3.5",y:"4",width:"17",height:"6",rx:"1.6"},"0"),e.jsx("rect",{x:"3.5",y:"14",width:"9",height:"6",rx:"1.6"},"1"),e.jsx("rect",{x:"14.5",y:"14",width:"6",height:"6",rx:"1.6"},"2")],ads:[e.jsx("path",{d:"M5 14l3-3 4 4 7-7"},"0"),e.jsx("path",{d:"M14 8h5v5"}
52,"1"),e.jsx("circle",{cx:"5",cy:"14",r:"1.4",fill:"currentColor",stroke:"none"},"2")],outreach:[e.jsx("path",{d:"M22 3 11 14M22 3l-7 18-4-7-7-4z"},"0")],agents:[e.jsx("circle",{cx:"6",cy:"6",r:"2.4"},"0"),e.jsx("circle",{cx:"18",cy:"6",r:"2.4"},"1"),e.jsx("circle",{cx:"12",cy:"18",r:"2.4"},"2"),e.jsx("path",{d:"M7.7 7.6l3 9M16.3 7.6l-3 9M8.4 6h7.2"},"3")],assistant:[e.jsx("path",{d:"M21 12a9 9 0 1 1-3.7-7.3"},"0"),e.jsx("circle",{cx:"9.5",cy:"11.5",r:"1.1",fill:"currentColor",stroke:"none"},"1"),e.jsx("circle",{cx:"14.5",cy:"11.5",r:"1.1",fill:"currentColor",stroke:"none"},"2"),e.jsx("path",{d:"M9 15.5c.9 1 2 1.5 3 1.5s2.1-.5 3-1.5"},"3"),e.jsx("path",{d:"M19 3l1.2 2.4L22.6 6.6 20.2 7.8 19 10.2 17.8 7.8 15.4 6.6 17.8 5.4z"},"4")],scan:[e.jsx("circle",{cx:"11",cy:"11",r:"6.5"},"0"),e.jsx("path",{d:"M16 16l4 4"},"1")],compare:[e.jsx("path",{d:"M3 6h13M3 6l3-3M3 6l3 3"},"0"),e.jsx("path",{d:"M21 18H8M21 18l-3-3M21 18l-3 3"},"1")],brain:[e.jsx("path",{d:"M9 4.5a3 3 0 0 0-3 3 3 3 0 0 0-3 3 3 3 0 0 0 1.4 2.5A3 3 0 0 0 6 18a3 3 0 0 0 3 3V4.5z"},"0"),e.jsx("path",{d:"M15 4.5a3 3 0 0 1 3 3 3 3 0 0 1 3 3 3 3 0 0 1-1.4 2.5A3 3 0 0 1 18 18a3 3 0 0 1-3 3V4.5z"},"1")],bell:[e.jsx("path",{d:"M18 8a6 6 0 0 0-12 0c0 7-3 9-3 9h18s-3-2-3-9"},"0"),e.jsx("path",{d:"M14 21a2 2 0 0 1-4 0"},"1")],doc:[e.jsx("path",{d:"M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"},"0"),e.jsx("path",{d:"M14 3v6h6M8 13h8M8 17h6"},"1")],bulb:[e.jsx("path",{d:"M9 18h6M10 21h4"},"0"),e.jsx("path",{d:"M12 3a6 6 0 0 0-3.7 10.7c.7.6 1.2 1.5 1.2 2.4V17h5v-.9c0-.9.4-1.8 1.1-2.4A6 6 0 0 0 12 3z"},"1")],pencil:[e.jsx("path",{d:"M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z"},"0")],eye:[e.jsx("path",{d:"M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z"},"0"),e.jsx("circle",{cx:"12",cy:"12",r:"3"},"1")],calendar:[e.jsx("rect",{x:"3.5",y:"4.5",width:"17",height:"16",rx:"2"},"0"),e.jsx("path",{d:"M3.5 9h17M8 3v3M16 3v3M8 14h2M14 14h2M8 18h2"},"1")],send:[e.jsx("path",{d:"M22 2 11 13"},"0"),e.jsx("path",{d:"M22 2l-7 20-4-9-9-4z"},"1")],rocket:[e.jsx("path",{d:"M5 19c-1 1-2 4-2 4s3-1 4-2"},"0"),e.jsx("path",{d:"M14 4l-2 2-7 7 5 5 7-7 2-2c2-2 2-5 0-7-2-2-5-2-5 2z"},"1"),e.jsx("circle",{cx:"14.5",cy:"9.5",r:"1.4",fill:"currentColor",stroke:"none"},"2")],chart:[e.jsx("path",{d:"M3 21h18"},"0"),e.jsx("path",{d:"M5 17v-4M10 17V9M15 17v-7M20 17V5"},"1")],target:[e.jsx("circle",{cx:"12",cy:"12",r:"9"},"0"),e.jsx("circle",{cx:"12",cy:"12",r:"5"},"1"),e.jsx("circle",{cx:"12",cy:"12",r:"1.6",fill:"currentColor",stroke:"none"},"2")],sparkle:[e.jsx("path",{d:"M12 3l1.8 5.2L19 10l-5.2 1.8L12 17l-1.8-5.2L5 10l5.2-1.8z"},"0"),e.jsx("path",{d:"M19 16l.9 1.8 1.8.9-1.8.9-.9 1.8-.9-1.8-1.8-.9 1.8-.9z"},"1")],envelope:[e.jsx("rect",{x:"3",y:"5",width:"18",height:"14",rx:"2"},"0"),e.jsx("path",{d:"M3.5 6.5L12 13l8.5-6.5"},"1")],phone:[e.jsx("path",{d:"M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.7.7 2.5a2 2 0 0 1-.5 2.1L8 9.6a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.5c.8.3 1.6.6 2.5.7a2 2 0 0 1 1.7 2z"},"0")],chat:[e.jsx("path",{d:"M21 12a8 8 0 0 1-12 7l-5 1.5L5.5 16A8 8 0 1 1 21 12z"},"0")],inbox:[e.jsx("path",{d:"M22 12h-6l-2 3h-4l-2-3H2"},"0"),e.jsx("path",{d:"M5.5 5.5L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.5-6.5A2 2 0 0 0 16.7 4H7.3a2 2 0 0 0-1.8 1.5z"},"1")],pin:[e.jsx("path",{d:"M12 22s7-7 7-12a7 7 0 1 0-14 0c0 5 7 12 7 12z"},"0"),e.jsx("circle",{cx:"12",cy:"10",r:"2.5"},"1")],spend:[e.jsx("circle",{cx:"12",cy:"12",r:"9"},"0"),e.jsx("path",{d:"M12 7v10M14.5 9.5c0-1.1-1.1-2-2.5-2s-2.5.9-2.5 2 1.1 2 2.5 2 2.5.9 2.5 2-1.1 2-2.5 2-2.5-.9-2.5-2"},"1")],gauge:[e.jsx("path",{d:"M12 21a9 9 0 1 0-9-9"},"0"),e.jsx("path",{d:"M12 12l5-5"},"1"),e.jsx("circle",{cx:"12",cy:"12",r:"1.6",fill:"currentColor",stroke:"none"},"2")],briefcase:[e.jsx("rect",{x:"3",y:"7.5",width:"18",height:"12",rx:"1.8"},"0"),e.jsx("path",{d:"M9 7.5V6a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v1.5"},"1"),e.jsx("path",{d:"M3 13h18"},"2")],hierarchy:[e.jsx("rect",{x:"9.5",y:"3.5",width:"5",height:"4",rx:"0.8"},"0"),e.jsx("rect",{x:"3.5",y:"14.5",width:"5",height:"4",rx:"0.8"},"1"),e.jsx("rect",{x:"9.5",y:"14.5",width:"5",height:"4",rx:"0.8"},"2"),e.jsx("rect",{x:"15.5",y:"14.5",width:"5",height:"4",rx:"0.8"},"3"),e.jsx("path",{d:"M12 7.5V11M6 14.5V11h12v3.5"},"4")]};function me({size:t=18}){return e.jsx("svg",{width:t,height:t,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:e.jsx("path",{d:"M6 3.5h7.2c2.65 0 4.6 1.85 4.6 4.3 0 1.35-.6 2.5-1.65 3.25 1.65.65 2.85 2.15 2.85 4.05 0 2.7-2.15 4.7-5.05 4.7H6V3.5zm3.4 3v3.7h3.5c1.35 0 2.2-.75 2.2-1.85S14.25 6.5 12.9 6.5H9.4zm0 6.7v3.95h3.85c1.5 0 2.45-.8 2.45-2 0-1.2-.95-1.95-2.45-1.95H9.4z",fill:"#04070f"})})}function ce({name:t,size:r=22,strokeWidth:o=1.6,...n}){const s=Ro[t];return s?e.jsx("svg",{width:r,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:o,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...n,children:s}):null}const yr={dark:{bg:"#04070f",bgSoft:"#0a0f1c",surface:"rgba(255,255,255,0.04)",surfaceSolid:"#0a0f1c",border:"rgba(255,255,255,0.08)",borderStrong:"rgba(255,255,255,0.16)",text:"#e8edf5",text2:"#94a3b8",text3:"#47
525569",accent1:"#2dd4bf",accent2:"#818cf8",accent3:"#f472b6",glow:"rgba(45,212,191,0.18)",inverseText:"#04070f",code:"#0d1424"},light:{bg:"#fcfcfd",bgSoft:"#f5f6f9",surface:"rgba(0,0,0,0.025)",surfaceSolid:"#ffffff",border:"rgba(15,23,42,0.10)",borderStrong:"rgba(15,23,42,0.22)",text:"#0f172a",text2:"#475569",text3:"#94a3b8",accent1:"#0ea5a3",accent2:"#6366f1",accent3:"#db2777",glow:"rgba(14,165,163,0.14)",inverseText:"#ffffff",code:"#1e293b"}},de={violet:["#a78bfa","#7c3aed"],cyan:["#22d3ee","#0891b2"],pink:["#f472b6","#db2777"],amber:["#fbbf24","#d97706"],lime:["#a3e635","#65a30d"],rose:["#fb7185","#e11d48"],indigo:["#818cf8","#4f46e5"],teal:["#2dd4bf","#0d9488"],emerald:["#34d399","#059669"],orange:["#fb923c","#ea580c"],blue:["#60a5fa","#2563eb"],fuchsia:["#e879f9","#c026d3"]};function Eo(){const t=Ye(),r=Ie(),o=i.useRef(null),[n,s]=i.useState(null);Co({title:"BeetlAI â One AI workspace for marketing, sales, HR, finance & ops",description:"BeetlAI is the AI-native operating system for modern teams. Eight integrated products in one workspace â BeetlSocial (marketing & social), BeetlOutreach (email/SMS/WhatsApp/AI voice), BeetlCRM (pipeline & deals), BeetlHR (recruiting through payroll), BeetlPM (projects, tasks & time tracking), BeetlBooks (invoices, bills & ledger), BeetlSupply (inventory, demand & shipments), and BeetlVideo (meetings, rooms & recordings). One login, one bill, one AI.",path:"/",ogTitle:"BeetlAI â Run marketing, sales, HR, finance & ops on one AI workspace",ogDescription:"BeetlSocial · BeetlOutreach · BeetlCRM · BeetlHR · BeetlPM · BeetlBooks · BeetlSupply · BeetlVideo â eight integrated AI products sharing one workspace, one login, and one bill."}),i.useEffect(()=>{var P;const w=(P=r.hash)==null?void 0:P.replace(/^#/,"");if(!w)return;let g=0;const k=()=>{const y=document.getElementById(w);if(y){y.scrollIntoView({behavior:"smooth",block:"start"});return}g++<20&&requestAnimationFrame(k)};requestAnimationFrame(k)},[r.pathname,r.hash,r.key]);const[a,l]=i.useState(!1),[d,c]=i.useState("monthly"),[f,p]=i.useState([]),[u,v]=i.useState(()=>typeof window>"u"?"light":localStorage.getItem("beetlai.landing.theme")||localStorage.getItem("mav.landing.theme")||"light"),[h,x]=i.useState(0),b=yr[u];i.useEffect(()=>{Xe()&&(window.location.href="/login")},[]),i.useEffect(()=>{localStorage.setItem("beetlai.landing.theme",u);const w=u==="dark"?"#04070f":"#fcfcfd";typeof document<"u"&&(document.documentElement.style.background=w,document.documentElement.style.colorScheme=u,document.body.style.background=w)},[u]),i.useEffect(()=>{const w=()=>l(window.scrollY>24);return window.addEventListener("scroll",w),()=>window.removeEventListener("scroll",w)},[]),i.useEffect(()=>{const w=o.current;if(!w)return;const g=k=>{const P=w.getBoundingClientRect();w.style.setProperty("--mx",`${(k.clientX-P.left)/P.width*100}%`),w.style.setProperty("--my",`${(k.clientY-P.top)/P.height*100}%`)};return w.addEventListener("mousemove",g),()=>w.removeEventListener("mousemove",g)},[]),i.useEffect(()=>{const w=setInterval(()=>x(g=>(g+1)%ft.length),4400);return()=>clearInterval(w)},[]),i.useEffect(()=>{let w=!1;return fetch("/public/pricing",{credentials:"include"}).then(g=>g.json()).then(g=>{if(w||!Array.isArray(g))return;const k=g.map(P=>{const y=Lt[P.plan_id]||{};return{...P,id:P.plan_id,tagline:y.tagline||"",cta:y.cta||"Choose plan",highlighted:!!y.highlighted,badge:y.badge||null,features:Mt(P)}});k.length&&p(k)}).catch(()=>{}),()=>{w=!0}},[]);const[j,E]=i.useState(null);function A(w="contact"){E(w)}function z(w){if(w.id==="enterprise"){t("/contact?kind=enterprise");return}if(w.id==="free"){t("/signup?plan=free");return}t(`/payment?plan=${w.id}`)}function L(w){var y,M;if(w.price===null)return null;if(w.price===0)return"$0";const g=w.checkout&&Object.keys(w.checkout),k=g&&g[0],P=(M=(y=w.checkout)==null?void 0:y[k])==null?void 0:M[d];if(P&&typeof P.amount_major=="number"){const B=new Intl.NumberFormat("en-US",{style:"currency",currency:P.currency||"USD",maximumFractionDigits:0}),I=d==="annual"?P.amount_major/12:P.amount_major;return B.format(Math.round(I))}return`$${w.price}`}const R=f.length?f:Object.entries(Lt).map(([w,g])=>({...It(w),...g,id:w,features:Mt(It(w))}));return e.jsxs("div",{style:{background:b.bg,color:b.text,minHeight:"100vh",overflowX:"hidden",fontFamily:"'Inter','DM Sans',system-ui,sans-serif"},children:[e.jsx(vr,{theme:u,t:b}),e.jsx(wr,{navigate:t,t:b,theme:u,setTheme:v,scrolled:a,openNav:n,setOpenNav:s,openContact:A}),e.jsx(Lo,{heroRef:o,navigate:t,t:b,theme:u,heroIdx:h,setHeroIdx:x}),e.jsx(Bo,{t:b,theme:u}),e.jsx(No,{t:b,theme:u,navigate:t}),e.jsx(Do,{t:b,theme:u}),e.jsx($o,{t:b,plans:R,billing:d,setBilling:c,displayPrice:L,handlePlanClick:z}),e.jsx(Fo,{t:b,navigate:t,openContact:A}),j?e.jsx(Ho,{kind:j,onClose:()=>E(null),t:b,theme:u}):null,e.jsx(kr,{t:b})]})}function Wa({theme:t,setTheme:r,children:o}){const n=yr[t],s=Ye(),[a,l]=i.useState(null),[d,c]=i.useState(!1);return i.useEffect(()=>{const f=()=>c(window.scrollY>24);return window.addEventListener("scroll",f),()=>window.removeEventListener("scroll",f)},[]),e.jsxs("div",{style:{background:n.bg,color:n.text,minHeight:"100vh",overflowX:"hidden",fontFamily:"'Inter','DM Sans',system-ui,sans-serif"},children:[e.jsx(vr,{theme:t,t:n}),e.jsx(wr,{navigate:s,t:n,theme:t,setTheme:r,scrolled:d,openNav:a,setOpenNav:l}),o,e.jsx(kr,{t:n})]})}function vr({theme:t,t:r}){return e.jsx("style",{children:` 53 @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;
53800&family=DM+Serif+Display:ital@0;1&family=JetBrains+Mono:wght@400;600&display=swap'); 54 *,*::before,*::after{box-sizing:border-box;margin:0;padding:0} 55 a{color:inherit;text-decoration:none} 56 html{scroll-behavior:smooth} 57 :root{ 58 --t-bg:${r.bg}; 59 --t-bgSoft:${r.bgSoft}; 60 --t-surface:${r.surface}; 61 --t-surfaceSolid:${r.surfaceSolid}; 62 --t-border:${r.border}; 63 --t-borderStrong:${r.borderStrong}; 64 --t-text:${r.text}; 65 --t-text2:${r.text2}; 66 --t-text3:${r.text3}; 67 --t-accent1:${r.accent1}; 68 --t-accent2:${r.accent2}; 69 --t-accent3:${r.accent3}; 70 --t-glow:${r.glow}; 71 --t-inverse:${r.inverseText}; 72 --t-code:${r.code}; 73 } 74 75 /* Hero */ 76 .hero-bg{ 77 --mx:50%;--my:40%; 78 position:relative; 79 background: 80 radial-gradient(ellipse 60% 50% at var(--mx) var(--my), var(--t-glow) 0%, transparent 70%), 81 radial-gradient(ellipse 80% 60% at 18% 90%, ${t==="dark"?"rgba(129,140,248,0.10)":"rgba(99,102,241,0.10)"} 0%, transparent 65%), 82 radial-gradient(ellipse 70% 50% at 88% 12%, ${t==="dark"?"rgba(244,114,182,0.06)":"rgba(219,39,119,0.05)"} 0%, transparent 60%), 83 var(--t-bg); 84 } 85 .grid-lines{ 86 position:absolute;inset:0;pointer-events:none; 87 background-image: 88 linear-gradient(${t==="dark"?"rgba(255,255,255,.025)":"rgba(15,23,42,.04)"} 1px, transparent 1px), 89 linear-gradient(90deg, ${t==="dark"?"rgba(255,255,255,.025)":"rgba(15,23,42,.04)"} 1px, transparent 1px); 90 background-size:64px 64px; 91 mask-image:radial-gradient(ellipse 80% 60% at 50% 30%, black 30%, transparent 80%); 92 } 93 94 /* Drifting orbs */ 95 .orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.6;pointer-events:none;animation:drift 18s ease-in-out infinite} 96 @keyframes drift{ 97 0%,100%{transform:translate(0,0) scale(1)} 98 33%{transform:translate(60px,-40px) scale(1.1)} 99 66%{transform:translate(-50px,40px) scale(0.95)} 100 } 101 102 /* Nav */ 103 .nav-root{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .3s,border-color .3s} 104 .nav-root.sc{background:${t==="dark"?"rgba(4,7,15,0.85)":"rgba(252,252,253,0.85)"};backdrop-filter:blur(24px) saturate(1.2);border-bottom:1px solid var(--t-border)} 105 .nav-in{max-width:1240px;margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px} 106 .lmark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--t-accent1),var(--t-accent2));display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 6px 18px var(--t-glow), inset 0 -1px 0 rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.18);position:relative;overflow:hidden} 107 .lmark::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 140% 80% at 50% -20%, rgba(255,255,255,.35) 0%, transparent 60%);pointer-events:none} 108 .lmark svg{position:relative;z-index:1} 109 .nbtn{background:none;border:none;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:5px;padding:8px 14px;color:var(--t-text2);font-size:14px;font-weight:500;border-radius:8px;transition:color .15s,background .15s} 110 .nbtn:hover,.nbtn.act{color:var(--t-text);background:var(--t-surface)} 111 .chev{width:13px;height:13px;transition:transform .2s;opacity:.6} 112 .chev.op{transform:rotate(180deg)} 113 .nitem{position:relative} 114 .drop{position:absolute;top:calc(100% - 2px);left:50%;transform:translateX(-50%);background:var(--t-surfaceSolid);border:1px solid var(--t-border);border-radius:14px;padding:10px;min-width:320px;z-index:200;backdrop-filter:blur(20px);box-shadow:0 24px 64px ${t==="dark"?"rgba(0,0,0,.5)":"rgba(15,23,42,0.10)"};animation:di .15s ease;margin-top:8px} 115 .drop::before{content:'';position:absolute;left:0;right:0;top:-12px;height:14px;background:transparent} 116 @keyframes di{from{opacity:0;transform:translateX(-50%) translateY(-6px)}to{opacity:1;transform:translateX(-50%) translateY(0)}} 117 .ditem{display:block;padding:10px 14px;border-radius:10px;cursor:pointer;transition:background .15s} 118 .ditem:hover{background:var(--t-surface)} 119 .dlabel{font-size:13.5px;font-weight:600;color:var(--t-text);margin-bottom:2px} 120 .ddesc{font-size:12px;color:var(--t-text3);line-height:1.4} 121 .btnghost{background:none;border:1px solid var(--t-border);border-radius:8px;padding:8px 16px;color:var(--t-text2);font-size:13.5px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s} 122 .btnghost:hover{border-color:var(--t-borderStrong);color:var(--t-text)} 123 .btncta{background:linear-gradient(135deg,var(--t-accent1),var(--t-accent2));border:none;border-radius:8px;padding:9px 18px;color:${t==="dark"?"#04070f":"#ffffff"};font-size:13.5px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .15s} 124 .btncta:hover{transform:translateY(-1px);box-shadow:0 10px 24px var(--t-glow)} 125 126 /* Theme toggle */ 127 .ttoggle{display:flex;align-items:center;gap:0;background:var(--t-surface);border:1px solid var(--t-border);border-radius:999px;padding:3px;
127cursor:pointer} 128 .tswatch{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--t-text2);font-size:13px;transition:all .2s} 129 .tswatch.active{background:var(--t-surfaceSolid);color:var(--t-text);box-shadow:0 2px 6px ${t==="dark"?"rgba(0,0,0,.3)":"rgba(15,23,42,.08)"}} 130 131 /* Hero â centered, quso.ai-style */ 132 .hcenter{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:880px;margin:0 auto} 133 .h1-center{max-width:920px;margin-left:auto;margin-right:auto} 134 .hsub-center{margin-left:auto;margin-right:auto;max-width:680px} 135 .hcta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center} 136 .htrust{margin-top:22px;display:flex;gap:24px;flex-wrap:wrap;justify-content:center} 137 .hmock-wrap{margin-top:64px;max-width:920px;margin-left:auto;margin-right:auto} 138 139 /* Hero typography */ 140 .eyebrow{display:inline-flex;align-items:center;gap:8px;background:${t==="dark"?"rgba(45,212,191,.10)":"rgba(14,165,163,0.08)"};border:1px solid ${t==="dark"?"rgba(45,212,191,.22)":"rgba(14,165,163,0.18)"};color:var(--t-accent1);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:6px 14px;border-radius:100px;margin-bottom:28px} 141 .edot{width:6px;height:6px;border-radius:50%;background:var(--t-accent1);animation:pu 2s infinite} 142 @keyframes pu{0%,100%{opacity:1;box-shadow:0 0 0 0 var(--t-glow)}50%{opacity:.4;box-shadow:0 0 0 6px transparent}} 143 .h1{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(46px,6vw,80px);line-height:1.14;letter-spacing:-.035em;margin-bottom:24px;color:var(--t-text);text-wrap:balance;padding-bottom:.08em} 144 .grad{background:linear-gradient(135deg,var(--t-accent1) 0%,var(--t-accent2) 50%,var(--t-accent3) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:italic;display:inline-block;padding-bottom:.06em;line-height:inherit} 145 .hsub{font-size:18px;line-height:1.65;color:var(--t-text2);max-width:520px;margin-bottom:36px} 146 .btnp{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--t-accent1),var(--t-accent2));color:${t==="dark"?"#04070f":"#ffffff"};border:none;border-radius:10px;padding:14px 26px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s} 147 .btnp:hover{transform:translateY(-2px);box-shadow:0 18px 40px var(--t-glow)} 148 .btng{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--t-border);color:var(--t-text2);border-radius:10px;padding:13px 26px;font-size:15px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s} 149 .btng:hover{border-color:var(--t-borderStrong);color:var(--t-text)} 150 151 152 /* Hero mockup */ 153 .mockwrap{position:relative;border-radius:18px;overflow:hidden;background:var(--t-surfaceSolid);border:1px solid var(--t-border);box-shadow:0 30px 80px ${t==="dark"?"rgba(0,0,0,0.6)":"rgba(15,23,42,0.10)"}} 154 .mockbar{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--t-border);background:var(--t-surface)} 155 .mdot{width:11px;height:11px;border-radius:50%} 156 .mockbody{padding:24px;min-height:340px;font-family:'JetBrains Mono','Fira Code',monospace} 157 .mocksurface{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--t-text3);font-weight:600;letter-spacing:.06em;text-transform:uppercase} 158 .surfacechip{padding:3px 8px;border-radius:5px;font-size:10px;font-weight:800;letter-spacing:.05em;background:var(--t-surface);color:var(--t-text2);border:1px solid var(--t-border)} 159 160 /* Sections */ 161 .section{max-width:1180px;margin:0 auto;padding:120px 28px} 162 .slabel{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--t-accent1);margin-bottom:14px} 163 .sh2{font-family:'DM Serif Display',serif;font-size:clamp(34px,4.5vw,52px);letter-spacing:-.03em;line-height:1.06;color:var(--t-text);margin-bottom:24px;max-width:980px;text-wrap:balance} 164 .ssub{font-size:17px;color:var(--t-text2);line-height:1.6;max-width:720px;margin-bottom:32px} 165 166 /* Logo marquee */ 167 .marquee{position:relative;overflow:hidden;padding:50px 0;border-top:1px solid var(--t-border);border-bottom:1px solid var(--t-border)} 168 .marquee::before,.marquee::after{content:'';position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none} 169 .marquee::before{left:0;background:linear-gradient(90deg,var(--t-bg),transparent)} 170 .marquee::after{right:0;background:linear-gradient(-90deg,var(--t-bg),transparent)} 171 .mtrack{display:flex;gap:64px;width:max-content;animation:scrollx 36s linear infinite;align-items:center} 172 .mtrack > span{font-size:18px;color:var(--t-text3);font-weight:600;letter-spacing:-.01em;white-space:nowrap} 173 @keyframes scrollx{from{transform:translateX(0)}to{transform:translateX(-50%)}} 174 175 /* Three-suite accordion dropdown for Product nav. Compact b
175y default â 176 visitors see only BeetlSocial / BeetlOutreach / BeetlHR. Click a suite 177 header to reveal its features inline. Mirrors the homepage mosaic UX 178 so navigation feels consistent. */ 179 .ditem-glyph{flex-shrink:0;width:30px;height:30px;border-radius:8px;background:var(--t-surface);border:1px solid var(--t-border);display:inline-flex;align-items:center;justify-content:center;color:var(--t-text2);transition:all .15s;margin-top:2px} 180 .drop-suites{ 181 min-width:380px; 182 max-width:440px; 183 padding:8px; 184 display:flex; 185 flex-direction:column; 186 gap:2px; 187 } 188 .navsuite{border-radius:12px;transition:background .15s} 189 .navsuite.is-open{background:${t==="dark"?"rgba(255,255,255,.025)":"rgba(15,23,42,.025)"}} 190 .navsuite-head{ 191 display:flex;align-items:center;gap:12px; 192 width:100%; 193 padding:12px 14px; 194 background:transparent;border:0; 195 text-align:left;font-family:inherit;color:inherit;cursor:pointer; 196 border-radius:10px; 197 transition:background .15s; 198 } 199 .navsuite-head:hover{background:${t==="dark"?"rgba(255,255,255,.04)":"rgba(15,23,42,.04)"}} 200 .navsuite-glyph{ 201 width:32px;height:32px;border-radius:9px; 202 display:flex;align-items:center;justify-content:center; 203 background:${t==="dark"?"rgba(255,255,255,.05)":"rgba(15,23,42,.04)"}; 204 border:1px solid var(--t-border); 205 color:var(--t-text2); 206 flex:none; 207 transition:color .2s, background .2s, border-color .2s; 208 } 209 .navsuite.is-open .navsuite-glyph, 210 .navsuite-head:hover .navsuite-glyph{ 211 color:var(--t-accent1); 212 border-color:${t==="dark"?"rgba(45,212,191,.35)":"rgba(14,165,163,.30)"}; 213 background:${t==="dark"?"rgba(45,212,191,.10)":"rgba(14,165,163,.06)"}; 214 } 215 .navsuite-meta{display:flex;flex-direction:column;flex:1;min-width:0;gap:2px} 216 .navsuite-title{font-size:14px;font-weight:600;color:var(--t-text);letter-spacing:-.005em} 217 .navsuite-tag{font-size:11.5px;color:var(--t-text3);line-height:1.35} 218 .navsuite-chev{color:var(--t-text3);transition:transform .2s, color .2s;flex:none} 219 .navsuite-chev.op{transform:rotate(180deg);color:var(--t-accent1)} 220 .navsuite-features{ 221 display:flex;flex-direction:column;gap:1px; 222 padding:4px 6px 8px 50px; 223 animation:navsuitein .2s ease; 224 } 225 @keyframes navsuitein{from{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}} 226 .navsuite-feature{padding:8px 10px;border-radius:8px;display:flex;gap:10px;align-items:flex-start;text-decoration:none;color:inherit;transition:background .15s} 227 .navsuite-feature:hover{background:${t==="dark"?"rgba(255,255,255,.04)":"rgba(15,23,42,.04)"}} 228 .navsuite-feature .ditem-glyph{ 229 width:24px;height:24px;border-radius:7px;margin-top:0; 230 background:${t==="dark"?"rgba(255,255,255,.04)":"rgba(15,23,42,.035)"}; 231 } 232 .navsuite-feature:hover .ditem-glyph{ 233 color:var(--t-accent1); 234 border-color:${t==="dark"?"rgba(45,212,191,.35)":"rgba(14,165,163,.30)"}; 235 background:${t==="dark"?"rgba(45,212,191,.10)":"rgba(14,165,163,.06)"}; 236 } 237 .navsuite-feature .dlabel{font-size:12.5px;font-weight:600;margin-bottom:2px;color:var(--t-text)} 238 .navsuite-feature .ddesc{font-size:11px;line-height:1.4;color:var(--t-text3)} 239 .navsuite-feature:hover .dlabel{color:var(--t-accent1)} 240 @media(max-width:880px){.drop-suites{min-width:auto;max-width:none}} 241 242 /* Mega-menu (legacy two-column with sidebar) */ 243 .drop-mega{ 244 min-width:680px; 245 padding:14px; 246 display:grid; 247 grid-template-columns:240px 1fr; 248 gap:14px; 249 } 250 .drop-col-label{ 251 font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase; 252 color:var(--t-text3);padding:6px 12px 8px; 253 } 254 .drop-col-left{border-right:1px solid var(--t-border);padding-right:10px} 255 .drop-col-right{display:grid;grid-template-columns:1fr 1fr;gap:2px} 256 .drop-col-right .drop-col-label{grid-column:1/-1} 257 .ditem-active{background:var(--t-surface);border:1px solid var(--t-borderStrong);border-radius:10px;cursor:default} 258 @media(max-width:880px){.drop-mega{min-width:auto;grid-template-columns:1fr!important}.drop-col-left{border-right:none;border-bottom:1px solid var(--t-border);padding-right:0;padding-bottom:8px;margin-bottom:8px}.drop-col-right{grid-template-columns:1fr!important}} 259 260 /* Legacy cascading flyout â kept for any non-mega use */ 261 .flyout-wrap{position:relative} 262 .flyout{ 263 position:absolute; 264 top:-8px; 265 left:calc(100% + 12px); 266 background:var(--t-surfaceSolid); 267 border:1px solid var(--t-border); 268 border-radius:14px; 269 padding:6px; 270 min-width:340px; 271 backdrop-filter:blur(20px); 272 box-shadow:0 24px 64px ${t==="dark"?"rgba(0,0,0,0.5)":"rgba(15,23,42,0.10)"}; 273 animation:flyoutin .15s ease; 274 z-index:1; 275 } 276 @keyframes flyoutin{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:translateX(0)}} 277 278 /* HowItFlows â animated flow cards */ 279 .flowcard{ 280 background:var(--t-surfaceSolid); 281 border:1px solid var(--t-border); 282 border-radius:18px;
283 padding:24px 26px; 284 position:relative; 285 overflow:hidden; 286 transition:border-color .25s; 287 } 288 .flowcard::before{ 289 content:'';position:absolute;top:0;left:0;right:0;height:1px; 290 background:linear-gradient(90deg,transparent,var(--flow-c1) 30%,var(--flow-c2) 70%,transparent); 291 opacity:.7; 292 } 293 .flowcard:hover{border-color:var(--t-borderStrong)} 294 .flowcard-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px} 295 .flowtitle{font-family:'DM Serif Display',serif;font-size:22px;color:var(--t-text);letter-spacing:-.02em;display:flex;align-items:center;gap:10px} 296 .flowdot{width:9px;height:9px;border-radius:50%} 297 .flowsub{font-size:13.5px;color:var(--t-text2);margin-top:6px;line-height:1.5;max-width:560px} 298 .flowprogress{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;letter-spacing:.05em;flex-shrink:0;padding:5px 11px;border-radius:6px;background:var(--t-surface);border:1px solid var(--t-border)} 299 .flowtrack{display:flex;align-items:flex-start;gap:0;width:100%} 300 .flowstep{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;min-width:0} 301 .flownode{ 302 width:54px;height:54px;border-radius:14px; 303 background:var(--t-surface); 304 border:1.5px solid var(--t-border); 305 display:flex;align-items:center;justify-content:center; 306 margin-bottom:10px;flex-shrink:0; 307 transition:all .35s cubic-bezier(.2,.8,.3,1.2); 308 position:relative;z-index:2; 309 } 310 .flownode.vis{ 311 background:var(--flow-glow); 312 border-color:var(--flow-c1); 313 } 314 .flownode.on{ 315 background:linear-gradient(135deg,var(--flow-c1),var(--flow-c2)); 316 border-color:transparent; 317 transform:scale(1.12); 318 } 319 .flownode.on span{filter:saturate(1.3) brightness(1.05)} 320 .flowlabel{font-size:11.5px;font-weight:700;color:var(--t-text2);letter-spacing:.02em;transition:all .25s;margin-bottom:4px} 321 .flownote{font-size:10.5px;color:var(--t-text3);opacity:.55;line-height:1.45;max-width:130px;transition:all .25s} 322 .flowarrow{ 323 position:absolute; 324 top:24px; 325 left:calc(50% + 27px); 326 right:calc(-50% + 27px); 327 height:2px; 328 z-index:1; 329 } 330 .flowarrow-track{width:100%;height:100%;background:var(--t-border);border-radius:2px;overflow:hidden} 331 .flowarrow-fill{height:100%;border-radius:2px} 332 @media(max-width:780px){ 333 .flowtrack{flex-direction:column;align-items:flex-start;gap:18px} 334 .flowstep{flex-direction:row;align-items:center;gap:14px;width:100%;text-align:left} 335 .flownode{margin-bottom:0} 336 .flowarrow{display:none} 337 .flownote{max-width:none} 338 } 339 340 /* Capability mosaic â minimalist, single neutral palette across all cards. 341 Color is reserved for the brand accent on hover only. */ 342 .capgrid-clean{display:grid;grid-template-columns:repeat(4,1fr);gap:14px} 343 .cap-clean{ 344 background:var(--t-surfaceSolid); 345 border:1px solid var(--t-border); 346 border-radius:18px; 347 padding:26px 24px 22px; 348 position:relative; 349 overflow:hidden; 350 transition:border-color .2s, transform .2s, box-shadow .2s; 351 display:flex;flex-direction:column; 352 min-height:172px; 353 text-decoration:none; 354 cursor:pointer; 355 } 356 .cap-clean:hover{ 357 transform:translateY(-2px); 358 border-color:var(--t-borderStrong); 359 box-shadow:0 18px 36px ${t==="dark"?"rgba(0,0,0,0.35)":"rgba(15,23,42,0.06)"}; 360 } 361 .capglyph-mono{ 362 width:40px;height:40px;border-radius:11px; 363 display:flex;align-items:center;justify-content:center; 364 background:${t==="dark"?"rgba(255,255,255,0.04)":"rgba(15,23,42,0.04)"}; 365 border:1px solid var(--t-border); 366 color:var(--t-text2); 367 margin-bottom:18px; 368 transition:color .2s, border-color .2s, background .2s; 369 } 370 .cap-clean:hover .capglyph-mono{ 371 color:var(--t-accent1); 372 border-color:${t==="dark"?"rgba(45,212,191,.35)":"rgba(14,165,163,.30)"}; 373 background:${t==="dark"?"rgba(45,212,191,.10)":"rgba(14,165,163,.06)"}; 374 }
375 .captitle-clean{font-family:'DM Serif Display',serif;font-size:22px;letter-spacing:-.02em;color:var(--t-text);line-height:1.15;margin-bottom:6px} 376 .captagline{font-size:13.5px;color:var(--t-text2);letter-spacing:-.005em;flex:1} 377 .cap-arrow{position:absolute;top:26px;right:24px;color:var(--t-text3);transition:color .2s, transform .2s;display:flex} 378 .cap-clean:hover .cap-arrow{color:var(--t-accent1);transform:translate(2px,-2px)} 379 380 /* Three-suite cards (BeetlSocial · BeetlOutreach · BeetlHR) */ 381 .suiterow{ 382 display:grid; 383 grid-template-columns:repeat(3,1fr); 384 gap:18px; 385 } 386 .suitecard{ 387 background:var(--t-surfaceSolid); 388 border:1px solid var(--t-border); 389 border-radius:18px; 390 padding:32px 28px 26px; 391 text-align:left; 392 font-family:inherit; 393 cursor:pointer; 394 transition:border-color .2s, transform .2s, box-shadow .2s; 395 display:flex;flex-direction:column; 396 min-height:210px; 397 color:inherit; 398 } 399 .suitecard:hover, .suitecard.is-open{ 400 transform:translateY(-2px); 401 border-color:var(--t-borderStrong); 402 box-shadow:0 18px 36px ${t==="dark"?"rgba(0,0,0,0.35)":"rgba(15,23,42,0.06)"}; 403 } 404 .suitecard.is-open .capglyph-mono, 405 .suitecard:hover .capglyph-mono{ 406 color:var(--t-accent1); 407 border-color:${t==="dark"?"rgba(45,212,191,.35)":"rgba(14,165,163,.30)"}; 408 background:${t==="dark"?"rgba(45,212,191,.10)":"rgba(14,165,163,.06)"}; 409 } 410 .suitecard-glyph{width:48px;height:48px;margin-bottom:22px} 411 .suitecard-title{font-size:26px;margin-bottom:8px} 412 .suitecard .captagline{font-size:14.5px;flex:1;margin-bottom:18px} 413 .suitecue{ 414 font-size:12px; 415 font-weight:600; 416 letter-spacing:.005em; 417 color:var(--t-accent1); 418 margin-top:auto; 419 } 420 .suitecard.is-open .suitecue{color:var(--t-text2)} 421 422 /* Expanded suite features panel */ 423 .suitefeats{ 424 margin-top:22px; 425 padding:26px; 426 background:var(--t-surface); 427 border:1px solid var(--t-border); 428 border-radius:18px; 429 animation:suitein .25s ease; 430 } 431 @keyframes suitein{ 432 from{opacity:0;transform:translateY(-4px)} 433 to{opacity:1;transform:translateY(0)} 434 } 435 .suitefeats-desc{ 436 margin:0 0 22px; 437 font-size:15px; 438 color:var(--t-text2); 439 line-height:1.55; 440 max-width:760px; 441 } 442 .suitefeats-grid{ 443 display:grid; 444 grid-template-columns:repeat(4,1fr); 445 gap:12px; 446 } 447 .suitefeats-card{ 448 background:var(--t-surfaceSolid); 449 border:1px solid var(--t-border); 450 border-radius:14px; 451 padding:18px 18px 16px; 452 text-decoration:none; 453 color:inherit; 454 display:flex;flex-direction:column; 455 position:relative; 456 min-height:130px; 457 transition:border-color .2s, transform .2s; 458 } 459 .suitefeats-card:hover{ 460 border-color:var(--t-borderStrong); 461 transform:translateY(-1px); 462 } 463 .suitefeats-glyph{width:32px;height:32px;margin-bottom:12px} 464 .suitefeats-card:hover .suitefeats-glyph{ 465 color:var(--t-accent1); 466 border-color:${t==="dark"?"rgba(45,212,191,.35)":"rgba(14,165,163,.30)"}; 467 background:${t==="dark"?"rgba(45,212,191,.10)":"rgba(14,165,163,.06)"}; 468 } 469 .suitefeats-title{font-family:'DM Serif Display',serif;font-size:16px;line-height:1.2;margin-bottom:4px;color:var(--t-text)} 470 .suitefeats-tag{font-size:12.5px;color:var(--t-text3);flex:1;line-height:1.4} 471 .suitefeats-arrow{position:absolute;top:18px;right:16px;color:var(--t-text3);display:flex;transition:color .2s, transform .2s} 472 .suitefeats-card:hover .suitefeats-arrow{color:var(--t-accent1);transform:translate(2px,-2px)} 473 474 /* Capability mosaic (legacy â used by FlowCard which still imports it) */ 475 .capgrid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px} 476 .cap{background:var(--t-surfaceSolid);border:1px solid var(--t-border);border-radius:18px;padding:28px 26px;position:relative;overflow:hidden;transition:all .25s;display:flex;flex-direction:column;min-height:230px} 477 .cap:hover{transform:translateY(-3px);border-color:var(--t-borderStrong);box-shadow:0 24px 48px ${t==="dark"?"rgba(0,0,0,0.4)":"rgba(15,23,42,0.06)"}} 478 .cap::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 80% at 100% 0%, var(--cap-glow,transparent) 0%, transparent 60%);opacity:.5;pointer-events:none;transition:opacity .25s} 479 .cap:hover::before{opacity:1} 480 .capglyph{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--cap-c1);background:var(--cap-tint);border:1px solid var(--cap-tint-border);margin-bottom:18px}
481 .captitle{font-family:'DM Serif Display',serif;font-size:22px;letter-spacing:-.02em;color:var(--t-text);margin-bottom:8px;line-height:1.15} 482 .capblurb{font-size:14px;color:var(--t-text2);line-height:1.55;flex:1} 483 .capstat{margin-top:18px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cap-c1)} 484 485 /* Live demo strip */ 486 .liverow{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px} 487 .demo{background:var(--t-surfaceSolid);border:1px solid var(--t-border);border-radius:18px;padding:22px;min-height:300px;display:flex;flex-direction:column;position:relative;overflow:hidden} 488 .demoH{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--t-text3);margin-bottom:14px;display:flex;align-items:center;gap:8px} 489 .pulsedot{width:7px;height:7px;border-radius:50%;background:var(--t-accent1);animation:pu 1.5s infinite} 490 491 /* Chat demo */ 492 .chat{flex:1;display:flex;flex-direction:column;gap:8px;font-family:'Inter',sans-serif} 493 .bubble{padding:9px 12px;border-radius:12px;font-size:12.5px;line-height:1.45;max-width:85%;animation:bubblein .35s ease forwards;opacity:0;transform:translateY(6px)} 494 .bubble.u{align-self:flex-end;background:linear-gradient(135deg,var(--t-accent1),var(--t-accent2));color:${t==="dark"?"#04070f":"#ffffff"};font-weight:600;border-bottom-right-radius:4px} 495 .bubble.a{align-self:flex-start;background:var(--t-surface);color:var(--t-text);border:1px solid var(--t-border);border-bottom-left-radius:4px} 496 .bubble:nth-child(1){animation-delay:.4s} 497 .bubble:nth-child(2){animation-delay:1.2s} 498 .bubble:nth-child(3){animation-delay:2.0s} 499 .bubble:nth-child(4){animation-delay:3.0s} 500 @keyframes bubblein{to{opacity:1;transform:translateY(0)}} 501 502 /* Agent flow nodes */ 503 .flow{flex:1;display:flex;align-items:center;justify-content:space-around;padding:20px 0;font-family:'Inter',sans-serif} 504 .node{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px} 505 .nbox{width:44px;height:44px;border-radius:11px;background:var(--t-surface);border:1px solid var(--t-border);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--t-text2);transition:all .35s} 506 .node.on .nbox{background:linear-gradient(135deg,var(--t-accent1),var(--t-accent2));color:${t==="dark"?"#04070f":"#ffffff"};border-color:transparent;box-shadow:0 0 20px var(--t-glow);transform:scale(1.08)} 507 .nlabel{font-size:10px;color:var(--t-text3);font-weight:600;letter-spacing:.04em;text-transform:uppercase} 508 .narrow{flex:1;height:1.5px;background:linear-gradient(90deg,var(--t-border),var(--t-accent1),var(--t-border));background-size:200% 100%;animation:flowarr 2s linear infinite;align-self:center;max-width:36px} 509 @keyframes flowarr{from{background-position:200% 0}to{background-position:-200% 0}} 510 511 /* Calendar tick demo */ 512 .calgrid{flex:1;display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding-top:8px} 513 .cell{aspect-ratio:1;border-radius:7px;background:var(--t-surface);border:1px solid var(--t-border);display:flex;align-items:flex-start;justify-content:flex-end;padding:5px 6px;font-size:10px;color:var(--t-text3);position:relative} 514 .cell.on{background:linear-gradient(135deg,var(--t-accent1) 0%,var(--t-accent2) 100%);color:${t==="dark"?"#04070f":"#ffffff"};border-color:transparent;animation:cellpop .4s ease} 515 .cell .post-tick{position:absolute;left:5px;bottom:5px;width:5px;height:5px;border-radius:50%;background:var(--t-accent3)} 516 @keyframes cellpop{from{transform:scale(.85);opacity:.5}to{transform:scale(1);opacity:1}} 517 518 /* Pricing */ 519 .ptoggle{display:inline-flex;background:var(--t-surface);border:1px solid var(--t-border);border-radius:10px;padding:4px;margin-bottom:48px} 520 .ptbtn{background:none;border:none;font-family:inherit;cursor:pointer;padding:8px 18px;border-radius:7px;font-size:13px;font-weight:600;color:var(--t-text2);transition:all .15s} 521 .ptbtn.act{background:var(--t-surfaceSolid);color:var(--t-text);box-shadow:0 2px 6px ${t==="dark"?"rgba(0,0,0,.4)":"rgba(15,23,42,.06)"}} 522 .save{font-size:10px;background:${t==="dark"?"rgba(45,212,191,.18)":"rgba(14,165,163,0.12)"};color:var(--t-accent1);border-radius:4px;padding:2px 6px;font-weight:800;margin-left:4px} 523 .pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px} 524 .pcard{background:var(--t-surfaceSolid);border:1px solid var(--t-border);border-radius:18px;
524padding:32px 26px;position:relative;display:flex;flex-direction:column;transition:transform .2s,border-color .2s} 525 .pcard:hover{transform:translateY(-3px);border-color:var(--t-borderStrong)} 526 .pcard.hl{border-color:var(--t-accent1);background:linear-gradient(180deg, ${t==="dark"?"rgba(45,212,191,0.05)":"rgba(14,165,163,0.025)"} 0%, var(--t-surfaceSolid) 60%)} 527 .pbadge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--t-accent1),var(--t-accent2));color:${t==="dark"?"#04070f":"#ffffff"};font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:100px;white-space:nowrap} 528 .pname{font-size:13px;font-weight:800;color:var(--t-accent1);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px} 529 .ptag{font-size:13px;color:var(--t-text3);margin-bottom:22px;line-height:1.4;min-height:36px} 530 .ppr{margin-bottom:24px} 531 .ppv{font-family:'DM Serif Display',serif;font-size:48px;color:var(--t-text);letter-spacing:-.04em;line-height:1} 532 .ppp{font-size:14px;color:var(--t-text3);margin-left:2px} 533 .ppb{font-size:11px;color:var(--t-text3);margin-top:4px} 534 .pcta{width:100%;padding:11px;border-radius:10px;border:none;font-family:inherit;font-size:13.5px;font-weight:700;cursor:pointer;margin-bottom:24px;transition:all .2s} 535 .pcta.pri{background:linear-gradient(135deg,var(--t-accent1),var(--t-accent2));color:${t==="dark"?"#04070f":"#ffffff"}} 536 .pcta.pri:hover{transform:translateY(-1px);box-shadow:0 8px 24px var(--t-glow)} 537 .pcta.out{background:transparent;border:1px solid var(--t-border);color:var(--t-text2)} 538 .pcta.out:hover{border-color:var(--t-borderStrong);color:var(--t-text)} 539 .pdiv{border:none;border-top:1px solid var(--t-border);margin-bottom:20px} 540 .pfl{list-style:none;flex:1} 541 .pfi{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--t-text2);padding:5px 0;line-height:1.5} 542 .chk{width:16px;height:16px;border-radius:50%;background:${t==="dark"?"rgba(45,212,191,.12)":"rgba(14,165,163,0.10)"};border:1px solid ${t==="dark"?"rgba(45,212,191,.30)":"rgba(14,165,163,0.20)"};display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;color:var(--t-accent1)} 543 .chk svg{width:9px;height:9px} 544 545 /* Closing CTA */ 546 .ctasec{padding:120px 28px;text-align:center;position:relative;border-top:1px solid var(--t-border)} 547 .ctagl{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 60% at 50% 100%, var(--t-glow) 0%,transparent 70%)} 548 .ctah2{font-family:'DM Serif Display',serif;font-size:clamp(36px,5vw,68px);letter-spacing:-.035em;color:var(--t-text);margin-bottom:18px;line-height:1.05;text-wrap:balance} 549 .ctasg{color:var(--t-text2);font-size:18px;margin-bottom:38px;line-height:1.5;max-width:560px;margin-left:auto;margin-right:auto} 550 551 /* Footer */ 552 .ftr{border-top:1px solid var(--t-border);padding:48px 28px 28px} 553 .fin-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:36px;align-items:start} 554 .fin-bottom{max-width:1180px;margin:32px auto 0;padding-top:18px;border-top:1px solid var(--t-border);display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--t-text3)} 555 .flink{font-size:13px;color:var(--t-text3);transition:color .15s;text-decoration:none;display:block} 556 .flink:hover{color:var(--t-accent1)} 557 @media(max-width:880px){.fin-grid{grid-template-columns:1fr 1fr;gap:24px}.fin-bottom{flex-direction:column;align-items:flex-start;gap:6px}} 558 559 /* âââ Product Showcase (4-up grid; last row centers when card count 560 isn't divisible by 4 â avoids the visual "orphan empty cell" 561 on rows of 3 with 7 total products) âââ */ 562 .showrow{ 563 display:flex; 564 flex-wrap:wrap; 565 justify-content:center; 566 gap:18px; 567 } 568 .showcard{ 569 flex:0 0 calc((100% - 3*18px) / 4); 570 max-width:calc((100% - 3*18px) / 4); 571 position:relative; 572 border:1px solid var(--t-border); 573 border-radius:20px; 574 padding:18px 18px 16px; 575 text-decoration:none; 576 color:inherit; 577 display:flex;flex-direction:column; 578 min-height:220px; 579 overflow:hidden; 580 transition:border-color .25s, transform .25s, box-shadow .25s; 581 } 582 .showcard:hover{ 583 transform:translateY(-3px); 584 border-color:var(--t-borderStrong); 585 box-shadow:0 24px 48px ${t==="dark"?"rgba(0,0,0,0.40)":"rgba(15,23,42,0.08)"}; 586 } 587 .showcard-meta{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px} 588 .showcard-glyph{ 589 width:34px;height:34px;border-radius:10px;flex:none; 590 display:flex;align-items:center;justify-content:center; 591 background:${t==="dark"?"rgba(255,255,255,.06)":"rgba(255,255,255,.85)"}; 592 border:1px solid var(--t-border); 593 color:var(--t-text); 594 backdrop-filter:blur(4px); 595 } 596 .showcard:hover .showcard-glyph{color:var(--t-accent1);border-color:${t==="dark"?"rgba(45,212,191,.35)":"rgba(14,165,163,.30)"}} 597 .showcard-titlewrap{flex:1;min-width:0}
598 .showcard-title{font-family:'DM Serif Display',serif;font-size:18px;line-height:1.15;letter-spacing:-.015em;color:var(--t-text);margin-bottom:3px} 599 .showcard-tag{font-size:12px;color:var(--t-text2);line-height:1.4;min-height:2.8em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden} 600 .showcard-arrow{color:var(--t-text3);transition:color .2s, transform .2s;flex:none;margin-top:2px} 601 .showcard:hover .showcard-arrow{color:var(--t-accent1);transform:translate(2px,-2px)} 602 .showcard-mock{flex:1;display:flex;align-items:flex-end;padding:0 0 22px;min-height:170px} 603 .showcard-mock > *{width:100%} 604 .showcard-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto} 605 .showcard-chip{ 606 display:inline-block;padding:4px 8px;border-radius:99px; 607 font-size:10.5px;font-weight:600;letter-spacing:.005em; 608 background:${t==="dark"?"rgba(255,255,255,.06)":"rgba(255,255,255,.65)"}; 609 border:1px solid ${t==="dark"?"rgba(255,255,255,.08)":"rgba(15,23,42,.06)"}; 610 color:var(--t-text2); 611 transition:background .2s, color .2s, border-color .2s; 612 } 613 .showcard:hover .showcard-chip{ 614 background:${t==="dark"?"rgba(255,255,255,.08)":"rgba(255,255,255,.85)"}; 615 border-color:${t==="dark"?"rgba(255,255,255,.14)":"rgba(15,23,42,.10)"}; 616 } 617 .showcard-chip-more{ 618 color:var(--suite-c1, var(--t-accent1)); 619 font-weight:700; 620 } 621 622 /* Mockup primitives shared across showcase cards */ 623 .sm-box{border-radius:11px;padding:13px;font-family:'Inter',sans-serif} 624 .sm-row{display:flex;align-items:center;gap:8px} 625 .sm-row-between{justify-content:space-between;margin-bottom:10px} 626 .sm-chip{padding:3px 7px;border-radius:5px;font-size:9.5px;font-weight:800;letter-spacing:.05em;border:1px solid currentColor;background:transparent} 627 .sm-meta{font-size:10.5px;color:var(--t-text3);font-family:'JetBrains Mono',monospace} 628 .sm-text{font-size:11.5px;color:var(--t-text2);line-height:1.5} 629 .sm-cur{display:inline-block;width:5px;height:11px;animation:pu 1.1s step-end infinite;margin-left:2px;vertical-align:middle} 630 .sm-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px} 631 .sm-tag{font-size:10px;padding:3px 7px;border-radius:99px;font-weight:600;font-family:'Inter',sans-serif} 632 633 /* Ad Studio 2x2 image grid */ 634 .sm-grid2x2{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;aspect-ratio:1.4;width:100%} 635 .sm-tile{border-radius:9px;position:relative;overflow:hidden} 636 .sm-tile-glow{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 30% 25%, rgba(255,255,255,.45), transparent 60%);pointer-events:none} 637 .sm-tile-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:transparent} 638 639 /* Competitor diff */ 640 .sm-diff{font-family:'JetBrains Mono',monospace;font-size:11px} 641 .sm-diff-label{font-size:9.5px;color:var(--t-text3);letter-spacing:.06em;margin-bottom:3px;font-weight:700} 642 .sm-diff-old{color:#fb7185;text-decoration:line-through;margin-bottom:9px} 643 .sm-diff-new{font-weight:700} 644 645 /* Social listening mentions */ 646 .sm-listen{display:flex;flex-direction:column;gap:7px} 647 .sm-mention{display:flex;align-items:flex-start;gap:9px;padding:9px 11px;border-radius:10px} 648 .sm-dot{width:8px;height:8px;border-radius:50%;flex:none;margin-top:5px} 649 .sm-mention-body{flex:1;min-width:0} 650 .sm-mention-who{font-size:11px;font-weight:700;color:var(--t-text);margin-bottom:2px;font-family:'Inter',sans-serif} 651 .sm-mention-text{font-size:11px;color:var(--t-text2);line-height:1.4;font-family:'Inter',sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 652 653 /* Inbox messages */ 654 .sm-inbox{display:flex;flex-direction:column;gap:6px} 655 .sm-msg{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;position:relative} 656 .sm-platform{width:24px;height:24px;border-radius:7px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:9.5px;font-weight:800;letter-spacing:-.02em;flex:none;font-family:'Inter',sans-serif} 657 .sm-msg-body{flex:1;min-width:0;font-family:'Inter',sans-serif} 658 .sm-msg-who{font-size:11px;font-weight:700;color:var(--t-text);margin-bottom:1px} 659 .sm-msg-text{font-size:11px;color:var(--t-text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 660 .sm-badge{min-width:18px;height:18px;border-radius:99px;color:${t==="dark"?"#04070f":"#ffffff"};font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 5px;flex:none} 661 662 /* Intelligence brief rows */ 663 .sm-intel{display:flex;flex-direction:column;gap:9px} 664 .sm-intel-row{display:flex;align-items:flex-start;gap:9px} 665 .sm-intel-tag{font-size:9.5px;font-weight:800;letter-spacing:.05em;padding:3px 7px;border-radius:4px;flex:none;font-family:'Inter',sans-serif} 666 .sm-intel-text{font-size:11.5px;color:var(--t-text2);line-height:1.45;font-family:'Inter',sans-serif} 667 668 /* Reports chart */ 669 .sm-chart{padding:13px;border-radius:11px} 670 .sm-chart-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px} 671 .sm-bars{display:flex;align-items:flex-end;
671gap:6px;height:80px} 672 .sm-bar-wrap{flex:1;display:flex;align-items:flex-end;height:100%} 673 .sm-bar{width:100%;border-radius:4px 4px 0 0;min-height:8px;animation:sm-bar-rise .8s ease forwards;transform-origin:bottom;transform:scaleY(.4)} 674 @keyframes sm-bar-rise{to{transform:scaleY(1)}} 675 676 /* Maverick chat */ 677 .sm-chat{display:flex;flex-direction:column;gap:7px;font-family:'Inter',sans-serif} 678 .sm-bub{padding:9px 12px;border-radius:13px;font-size:11.5px;line-height:1.45;max-width:88%} 679 .sm-bub-u{align-self:flex-end;font-weight:600;border-bottom-right-radius:5px} 680 .sm-bub-a{align-self:flex-start;border-bottom-left-radius:5px} 681 682 /* âââ Three-suite mega menu (Product nav dropdown) âââ */ 683 .drop-tri{ 684 min-width:920px; 685 max-width:1080px; 686 padding:18px; 687 display:grid; 688 grid-template-columns:repeat(4, minmax(0, 1fr)); 689 gap:10px 14px; 690 } 691 .trisuite{ 692 position:relative; 693 display:flex;flex-direction:column; 694 padding:8px 10px 10px 14px; 695 border-radius:12px; 696 background:${t==="dark"?"rgba(255,255,255,.015)":"rgba(15,23,42,.018)"}; 697 border:1px solid ${t==="dark"?"rgba(255,255,255,.04)":"rgba(15,23,42,.05)"}; 698 transition:transform .18s ease, border-color .18s ease, background .18s ease; 699 } 700 .trisuite::before{ 701 content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:2px; 702 background:linear-gradient(180deg, var(--suite-c1, var(--t-accent1)), var(--suite-c2, var(--t-accent2))); 703 opacity:.85; 704 } 705 .trisuite:hover{ 706 transform:translateY(-1px); 707 border-color:${t==="dark"?"rgba(255,255,255,.10)":"rgba(15,23,42,.10)"}; 708 background:${t==="dark"?"rgba(255,255,255,.035)":"rgba(15,23,42,.035)"}; 709 } 710 .trisuite-head{ 711 display:flex;align-items:center;gap:10px; 712 padding:6px 6px 8px 6px;border-radius:8px; 713 text-decoration:none;color:inherit; 714 transition:opacity .15s; 715 } 716 .trisuite-head:hover{opacity:.92} 717 .trisuite-glyph{ 718 width:30px;height:30px;border-radius:9px;flex:none; 719 display:flex;align-items:center;justify-content:center; 720 background:linear-gradient(135deg, color-mix(in srgb, var(--suite-c1, var(--t-accent1)) 18%, transparent), color-mix(in srgb, var(--suite-c2, var(--t-accent2)) 14%, transparent)); 721 border:1px solid color-mix(in srgb, var(--suite-c1, var(--t-accent1)) 32%, transparent); 722 color:var(--suite-c1, var(--t-accent1)); 723 box-shadow:0 0 0 0 color-mix(in srgb, var(--suite-c1, var(--t-accent1)) 30%, transparent); 724 transition:box-shadow .2s; 725 } 726 .trisuite:hover .trisuite-glyph{ 727 box-shadow:0 0 0 4px color-mix(in srgb, var(--suite-c1, var(--t-accent1)) 12%, transparent); 728 } 729 .trisuite-meta{display:flex;flex-direction:column;gap:2px;min-width:0} 730 .trisuite-title{font-size:13.5px;font-weight:700;color:var(--t-text);letter-spacing:-.01em} 731 .trisuite-tag{font-size:11px;color:var(--t-text3);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 732 .trisuite-features{display:flex;flex-direction:column;gap:1px;padding-left:2px} 733 .trisuite-feature{ 734 display:flex;align-items:center;gap:9px; 735 padding:6px 10px;border-radius:7px; 736 text-decoration:none;color:var(--t-text2); 737 transition:background .15s, color .15s, padding-left .15s; 738 } 739 .trisuite-feature:hover{ 740 background:color-mix(in srgb, var(--suite-c1, var(--t-accent1)) 8%, transparent); 741 color:var(--suite-c1, var(--t-accent1)); 742 padding-left:13px; 743 } 744 .trisuite-feature-glyph{ 745 width:20px;height:20px;border-radius:6px;flex:none; 746 display:flex;align-items:center;justify-content:center; 747 background:${t==="dark"?"rgba(255,255,255,.04)":"rgba(15,23,42,.04)"}; 748 color:var(--t-text3); 749 transition:color .15s, background .15s; 750 } 751 .trisuite-feature:hover .trisuite-feature-glyph{ 752 color:var(--suite-c1, var(--t-accent1)); 753 background:color-mix(in srgb, var(--suite-c1, var(--t-accent1)) 14%, transparent); 754 } 755 .trisuite-feature-title{font-size:12.5px;font-weight:500;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 756 .trisuite-more{padding-left:30px;font-size:11.5px;font-weight:600;color:var(--suite-c1, var(--t-accent1));margin-top:2px} 757 .trisuite-more .trisuite-feature-title{font-weight:600;color:var(--suite-c1, var(--t-accent1))} 758 .trisuite-more:hover{padding-left:33px} 759 @media(max-width:1180px){ 760 .drop-tri{min-width:760px;max-width:880px;grid-template-columns:repeat(3, minmax(0, 1fr))} 761 } 762 @media(max-width:880px){ 763 .drop-tri{min-width:auto;max-width:none;grid-template-columns:repeat(2, minmax(0, 1fr))} 764 } 765 @media(max-width:540px){ 766 .drop-tri{grid-template-columns:1fr} 767 } 768 769 /* âââ Suite deep-dive sections (BeetlSocial / BeetlOutreach / BeetlHR) âââ */ 770 .suite-deep{padding-top:80px;padding-bottom:80px} 771 .suite-deep-head{ 772 border:1px solid; 773 border-radius:24px; 774 padding:48px 52px; 775 margin-bottom:24px; 776 position:relative; 777 overflow:hidden; 778 } 779 .suite-deep-eyebrow{ 780 display:inline-flex;align-items:center;gap:8px; 781 font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase; 782 padding:6px 14px;border:1px solid;border-radius:100px; 783 background:${t==="dark"?"rgba(255,255,255,.04)":"rgba(255,255,255,.7)"}; 784 backdrop-filter:blur(4px); 785 margin-bottom:22px; 786 } 787 .suite-deep-h2{
788 font-family:'DM Serif Display',serif; 789 font-size:clamp(30px,3.6vw,44px); 790 line-height:1.1;letter-spacing:-.025em; 791 color:var(--t-text); 792 margin-bottom:18px; 793 max-width:760px; 794 text-wrap:balance; 795 } 796 .suite-deep-sub{ 797 font-size:16px;line-height:1.6;color:var(--t-text2); 798 max-width:680px;margin-bottom:28px; 799 } 800 .suite-deep-cta{font-size:14px;padding:11px 22px} 801 .suite-deep-grid{ 802 display:grid;grid-template-columns:repeat(4,1fr);gap:12px; 803 } 804 .suite-feat{ 805 position:relative; 806 background:var(--t-surfaceSolid); 807 border:1px solid var(--t-border); 808 border-radius:16px; 809 padding:22px 22px 20px; 810 text-decoration:none;color:inherit; 811 display:flex;flex-direction:column; 812 min-height:160px; 813 transition:border-color .2s, transform .2s, box-shadow .2s; 814 } 815 .suite-feat:hover{ 816 transform:translateY(-2px); 817 border-color:var(--t-borderStrong); 818 box-shadow:0 16px 32px ${t==="dark"?"rgba(0,0,0,.30)":"rgba(15,23,42,.06)"}; 819 } 820 .suite-feat-glyph{ 821 width:34px;height:34px;border-radius:10px; 822 display:flex;align-items:center;justify-content:center; 823 background:${t==="dark"?"rgba(255,255,255,.04)":"rgba(15,23,42,.04)"}; 824 border:1px solid var(--t-border); 825 color:var(--t-text2); 826 margin-bottom:14px; 827 transition:color .2s, border-color .2s, background .2s; 828 } 829 .suite-feat:hover .suite-feat-glyph{ 830 color:var(--t-accent1); 831 border-color:${t==="dark"?"rgba(45,212,191,.35)":"rgba(14,165,163,.30)"}; 832 background:${t==="dark"?"rgba(45,212,191,.10)":"rgba(14,165,163,.06)"}; 833 } 834 .suite-feat-title{font-family:'DM Serif Display',serif;font-size:17px;line-height:1.2;letter-spacing:-.015em;color:var(--t-text);margin-bottom:4px} 835 .suite-feat-tag{font-size:12.5px;color:var(--t-text3);line-height:1.4;flex:1} 836 .suite-feat-arrow{ 837 position:absolute;top:22px;right:20px; 838 color:var(--t-text3); 839 transition:color .2s, transform .2s; 840 } 841 .suite-feat:hover .suite-feat-arrow{color:var(--t-accent1);transform:translate(2px,-2px)} 842 843 /* âââ Comparison: Replaces these tools âââ */ 844 .cmp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:36px} 845 .cmp-card{ 846 background:var(--t-surfaceSolid); 847 border:1px solid var(--t-border); 848 border-radius:16px; 849 padding:22px 22px 20px; 850 display:flex;flex-direction:column;gap:8px; 851 transition:border-color .2s, transform .2s; 852 } 853 .cmp-card:hover{transform:translateY(-2px);border-color:var(--t-borderStrong)} 854 .cmp-cat{font-family:'DM Serif Display',serif;font-size:18px;letter-spacing:-.015em;color:var(--t-text)} 855 .cmp-tools{font-size:12.5px;color:var(--t-text3);line-height:1.4} 856 .cmp-cost-row{margin-top:auto;padding-top:14px;border-top:1px solid var(--t-border);display:flex;justify-content:space-between;align-items:baseline} 857 .cmp-cost-label{font-size:11px;color:var(--t-text3);text-transform:uppercase;letter-spacing:.08em;font-weight:700} 858 .cmp-cost{font-family:'DM Serif Display',serif;font-size:22px;color:var(--t-text);letter-spacing:-.02em} 859 .cmp-cost-suffix{font-size:12px;color:var(--t-text3);font-family:'Inter',sans-serif;font-weight:500;margin-left:1px} 860 861 .cmp-foot{ 862 background:linear-gradient(135deg, ${t==="dark"?"rgba(45,212,191,.06)":"rgba(14,165,163,.04)"}, ${t==="dark"?"rgba(99,102,241,.06)":"rgba(99,102,241,.04)"}); 863 border:1px solid var(--t-border); 864 border-radius:18px; 865 padding:24px 30px; 866 display:flex;align-items:center;gap:30px;flex-wrap:wrap; 867 } 868 .cmp-foot-text{display:flex;flex-direction:column;gap:4px} 869 .cmp-foot-label{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--t-text3)} 870 .cmp-foot-amt{font-family:'DM Serif Display',serif;font-size:32px;color:var(--t-text);letter-spacing:-.025em;line-height:1} 871 .cmp-foot-amt-strong{color:var(--t-accent1)} 872 .cmp-foot-divider{width:1px;align-self:stretch;background:var(--t-border)} 873 .cmp-foot .btnp{margin-left:auto} 874 875 @media(max-width:1000px){ 876 .hgrid{grid-template-columns:1fr!important} 877 .stats{grid-template-columns:1fr!important} 878 .capgrid-clean{grid-template-columns:repeat(2,1fr)!important} 879 .capgrid{grid-template-columns:repeat(6,1fr)!important} 880 .liverow{grid-template-columns:1fr!important} 881 .suiterow{grid-template-columns:1fr!important} 882 .suitefeats-grid{grid-template-columns:repeat(2,1fr)!important} 883 .showcard{flex:0 0 calc((100% - 18px) / 2)!important;max-width:calc((100% - 18px) / 2)!important} 884 .suite-deep-grid{grid-template-columns:repeat(2,1fr)!important} 885 .cmp-grid{grid-template-columns:repeat(2,1fr)!important} 886 .cmp-foot{flex-direction:column;align-items:flex-start;gap:18px} 887 .cmp-foot-divider{display:none} 888 .cmp-foot .btnp{margin-left:0} 889 } 890 @media(max-width:680px){ 891 .capgrid-clean{grid-template-columns:1fr!important} 892 .capgrid{grid-template-columns:1fr!important} 893 .pgrid{grid-template-columns:1fr!important} 894 .nlinks{display:none!important} 895 .section{padding:80px 22px} 896 .suitefeats-grid{grid-template-columns:1fr!important} 897 .showcard{flex:0 0 100%!important;max-width:100%!important} 898 .suite-deep-grid{grid-template-columns:1fr!important} 899 .suite-deep-head{padding:32px 24px} 900 .cmp-grid{grid-template-columns:1fr!important} 901 } 902 `})}function wr({navigate:t,t:r,theme:o,setTheme:n,scrolled:s,openNav:a,setOpenNav:l,openContact:d}){const c=i.useRef(null),[f,p]=i.useState({});i.useEffect(()=>{a!=="Product"&&p({})},[a]);const u=()=>{c.current&&(clearTimeout(c.current),c.current=null)},v=()=>{u(),c.current=setTimeout(()=>l(null),500)},h=(x,b)=>{if(x==="#contact"&&d)return b==null||b.preventDefault(),l(null),d("contact"),!0;if(x&&x.startsWith("#")){const j=x.slice(1);if(window.location.pathname==="/"){b==null||b.preventDefault();const E=document.getElementById(j);return E&&(E.scrollIntoView({behavior:"smooth",block:"start"}),history.replaceState(null,"",`#${j}`)),l(null),!0}return b==null||b.preventDefault(),l(null),t(`/#${j}`),!0}return!1};return e.jsx("nav",{className:`nav-root ${s?"sc":""}`,onMouseEnter:u,onMouseLeave:v,children:e.jsxs("div",{className:"nav-in",children:[e.jsxs(q,{to:"/",style:{display:"flex",alignItems:"center",gap:10,textDecoration:"none",cursor:"pointer"},onClick:x=>{window.location.pathname==="/"&&(x.preventDefault(),window.scrollTo({top:0,behavior:"smooth"}))},children:[e.jsx("div",{className:"lmark",children:e.jsx(me,{size:18})}),e.jsxs("span",{style:{fontSize:17.5,fontWeight:800,color:r.text,letterSpacing:"-.025em",display:"inline-flex",alignItems:"baseline",gap:0},children:["Beetl",e.jsx("span",{style:{color:r.accent1,fontWeight:800,letterSpacing:"-.02em"},children:"AI"})]})]}),e.jsx("div",{className:"nlinks",style:{display:"flex",alignItems:"center",gap:2},children:Po.map(x=>{const b=!!(x.dropdown||x.navSuites);return e.jsxs("div",{className:"nitem",onMouseEnter:()=>{u(),b&&l(x.label)},children:[x.href&&!b?x.href.startsWith("/")?e.jsx(q,{to:x.href,className:`nbtn ${a===x.label?"act":""}`,onClick:()=>l(null),children:x.label}):e.jsx("a",{href:x.href,className:`nbtn ${a===x.label?"act":""}`,onClick:j=>{h(x.href,j)||l(null)},children:x.label}):e.jsxs("button",{className:`nbtn ${a===x.label?"act":""}`,onClick:()=>l(j=>j===x.label?null:x.label),children:[x.label,b&&e.jsx("svg",{className:`chev ${a===x.label?"op":""}`,viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M4 6l4 4 4-4"})})]}),x.navSuites&&a===x.label&&e.jsx("div",{className:"drop drop-tri",onMouseEnter:u,onMouseLeave:v,children:x.navSuites.map(j=>{const[E,A]=de[j.accent]||de.teal,z=4,L=!!f[j.id],R=L?j.features:j.features.slice(0,z),w=j.features.length-z;return e.jsxs("div",{className:"trisuite",style:{"--suite-c1":E,"
902--suite-c2":A},children:[j.externalUrl?e.jsxs("a",{href:j.externalUrl,target:"_blank",rel:"noreferrer",className:"trisuite-head",onClick:()=>l(null),children:[e.jsx("span",{className:"trisuite-glyph",children:e.jsx(ce,{name:j.icon,size:18,strokeWidth:1.7})}),e.jsxs("span",{className:"trisuite-meta",children:[e.jsx("span",{className:"trisuite-title",children:j.title}),e.jsx("span",{className:"trisuite-tag",children:j.tagline})]})]}):e.jsxs(q,{to:`/#${j.id}`,className:"trisuite-head",onClick:g=>{h(`#${j.id}`,g),l(null)},children:[e.jsx("span",{className:"trisuite-glyph",children:e.jsx(ce,{name:j.icon,size:18,strokeWidth:1.7})}),e.jsxs("span",{className:"trisuite-meta",children:[e.jsx("span",{className:"trisuite-title",children:j.title}),e.jsx("span",{className:"trisuite-tag",children:j.tagline})]})]}),e.jsxs("div",{className:"trisuite-features",children:[R.map((g,k)=>g.external?e.jsxs("a",{href:g.href,target:"_blank",rel:"noreferrer",className:"trisuite-feature",onClick:()=>l(null),children:[e.jsx("span",{className:"trisuite-feature-glyph",children:e.jsx(ce,{name:g.icon,size:13,strokeWidth:1.7})}),e.jsx("span",{className:"trisuite-feature-title",children:g.title})]},`${g.slug}-${k}`):e.jsxs(q,{to:g.href,className:"trisuite-feature",onClick:()=>l(null),children:[e.jsx("span",{className:"trisuite-feature-glyph",children:e.jsx(ce,{name:g.icon,size:13,strokeWidth:1.7})}),e.jsx("span",{className:"trisuite-feature-title",children:g.title})]},`${g.slug}-${k}`)),w>0&&e.jsx("button",{type:"button",className:"trisuite-feature trisuite-more",onClick:g=>{g.preventDefault(),g.stopPropagation(),p(k=>({...k,[j.id]:!k[j.id]}))},style:{background:"transparent",border:0,cursor:"pointer",textAlign:"left",font:"inherit",width:"100%"},"aria-expanded":L,children:e.jsx("span",{className:"trisuite-feature-title",children:L?"â Show less":`+ ${w} more`})})]})]},j.id)})}),x.dropdown&&a===x.label&&(()=>{const j=x.dropdown.find(A=>A.flyout),E=x.dropdown.filter(A=>!A.flyout);return j?e.jsxs("div",{className:"drop drop-mega",onMouseEnter:u,onMouseLeave:v,children:[e.jsxs("div",{className:"drop-col drop-col-left",children:[e.jsx("div",{className:"drop-col-label",children:"Browse"}),e.jsxs("div",{className:"ditem ditem-active",children:[e.jsx("div",{className:"dlabel",children:j.label}),e.jsx("div",{className:"ddesc",children:j.desc})]}),E.map(A=>{const z=(A.href||"").startsWith("/"),L=z?q:"a",R=z?{to:A.href}:{href:A.href};return e.jsxs(L,{...R,className:"ditem",onClick:w=>{h(A.href,w)||l(null)},children:[e.jsx("div",{className:"dlabel",children:A.label}),e.jsx("div",{className:"ddesc",children:A.desc})]},A.label)})]}),e.jsxs("div",{className:"drop-col drop-col-right",children:[e.jsx("div",{className:"drop-col-label",children:j.label}),j.flyout.map(A=>{const z=(A.href||"").startsWith("/"),L=z?q:"a",R=z?{to:A.href}:{href:A.href};return e.jsxs(L,{...R,className:"ditem",onClick:()=>l(null),children:[e.jsx("div",{className:"dlabel",children:A.label}),e.jsx("div",{className:"ddesc",children:A.desc})]},A.label)})]})]}):e.jsx("div",{className:"drop",onMouseEnter:u,onMouseLeave:v,children:x.dropdown.map(A=>{const z=(A.href||"").startsWith("/"),L=z?q:"a",R=z?{to:A.href}:{href:A.href};return e.jsxs(L,{...R,className:"ditem",onClick:w=>{h(A.href,w)||l(null)},children:[e.jsx("div",{className:"dlabel",children:A.label}),e.jsx("div",{className:"ddesc",children:A.desc})]},A.label)})})})()]},x.label)})}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[e.jsx(zo,{theme:o,setTheme:n}),e.jsx("button",{className:"btnghost",onClick:()=>t("/signin"),children:"Sign in"}),e.jsx("button",{className:"btncta",onClick:()=>t("/signup?plan=free"),children:"Start free â"})]})]})})}function zo({theme:t,setTheme:r}){return e.jsxs("div",{className:"ttoggle",role:"group","aria-label":"Theme",children:[e.jsx("button",{className:`tswatch ${t==="light"?"active":""}`,onClick:()=>r("light"),title:"Light mode","aria-label":"Light mode",style:{background:"transparent",border:"none",cursor:"pointer",fontFamily:"inherit"},children:"â"}),e.jsx("button",{className:`tswatch ${t==="dark"?"active":""}`,onClick:()=>r("dark"),title:"Dark mode","aria-label":"Dark mode",style:{background:"transparent",border:"none",cursor:"pointer",fontFamily:"inherit"},children:"â¾"})]})}function Lo({heroRef:t,navigate:r,t:o,theme:n,heroIdx:s,setHeroIdx:a}){return e.jsxs("div",{ref:t,className:"hero-bg",style:{position:"relative",padding:"140px 28px 100px"},children:[e.jsx("div",{className:"grid-lines"}),e.jsx("div",{className:"orb",style:{width:500,height:500,top:-100,left:"8%",background:`radial-gradient(circle, ${o.accent1}33, transparent 60%)`}}),e.jsx("div",{className:"orb",style:{width:600,height:600,bottom:-200,right:"5%",background:`radial-gradient(circle, ${o.accent2}26, transparent 65%)`,animationDelay:"5s"}}),e.jsxs("div",{style:{maxWidth:1180,margin:"0 auto",position:"relative"},children:[e.jsxs("div",{className:"hcenter",children:[e.jsxs("div",{style:{display:"inline-flex",alignItems:"center",gap:8,padding:"6px 16px",borderRadius:999,background:`linear-gradient(135deg, ${o.accent1}1c, ${o.accent2}14)`,border:`1px solid ${o.accent1}33`,color:o.accent1,fontSize:11,fontWeight:800,letterSpacing:".14em",textTransform:"uppercase",marginBottom:24,boxShadow:`0 4px 14px ${o.accent1}1a`},children:[e.jsx("span",{style:{width:6,height:6,borderRadius:"50%",background:o.accent1,boxSh
902adow:`0 0 0 4px ${o.accent1}22`}}),"ModernOS · 8 suites · 1 AI"]}),e.jsxs("h1",{className:"h1 h1-center",style:{lineHeight:1.14,marginBottom:18},children:["The ",e.jsx("span",{className:"grad",children:"ModernOS"})," that gives you",e.jsx("br",{}),"an ",e.jsx("span",{className:"grad",children:"unfair advantage"}),"."]}),e.jsx("p",{className:"hsub hsub-center",style:{maxWidth:720,margin:"0 auto 26px"},children:"Stop juggling tools. BeetlAI brings social media, outreach, HR, finance, and ops into one unified AI platform â so you move faster, smarter, and in sync."}),e.jsxs("div",{className:"hcta",children:[e.jsx("button",{className:"btnp",onClick:()=>r("/signup?plan=free"),children:"Start free â"}),e.jsx("button",{className:"btng",onClick:()=>{var l;(l=document.getElementById("flows"))==null||l.scrollIntoView({behavior:"smooth"})},children:"See how it works"})]}),e.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,justifyContent:"center",marginTop:22,maxWidth:880,marginInline:"auto"},children:Te.map(l=>{var v;const d=(v=l.features)==null?void 0:v[0],c=d?fe[d]:null,f=(c==null?void 0:c.accent)||yt[l.id]||"teal",[p]=de[f]||de.teal,u=!!l.externalUrl;return e.jsxs("a",{href:u?l.externalUrl:`#${l.id}`,target:u?"_blank":void 0,rel:u?"noreferrer":void 0,onClick:h=>{if(u)return;h.preventDefault();const x=document.getElementById(l.id);x&&x.scrollIntoView({behavior:"smooth",block:"start"})},style:{display:"inline-flex",alignItems:"center",gap:6,padding:"5px 11px 5px 7px",borderRadius:999,background:n==="dark"?"rgba(255,255,255,.04)":"rgba(255,255,255,.72)",border:`1px solid ${p}33`,color:o.text2,fontSize:11.5,fontWeight:600,whiteSpace:"nowrap",textDecoration:"none",transition:"transform .15s, border-color .15s, background .15s"},onMouseEnter:h=>{h.currentTarget.style.transform="translateY(-1px)",h.currentTarget.style.borderColor=`${p}80`},onMouseLeave:h=>{h.currentTarget.style.transform="translateY(0)",h.currentTarget.style.borderColor=`${p}33`},children:[e.jsx("span",{style:{width:16,height:16,borderRadius:4,background:`${p}1c`,color:p,display:"inline-flex",alignItems:"center",justifyContent:"center",flex:"none"},children:e.jsx(ce,{name:l.icon,size:10,strokeWidth:2})}),l.title]},l.id)})}),e.jsx("div",{className:"htrust",children:["No credit card","Cancel anytime","Built for growing teams"].map(l=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:7},children:[e.jsx(Io,{color:o.accent1}),e.jsx("span",{style:{fontSize:12.5,color:o.text3},children:l})]},l))})]}),e.jsx("div",{className:"hmock-wrap",children:e.jsx(Mo,{t:o,theme:n,heroIdx:s,setHeroIdx:a})})]})]})}function Io({color:t}){return e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:t,strokeOpacity:".4"}),e.jsx("path",{d:"M4.5 7l1.8 1.8L9.5 5",stroke:t,strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})]})}function Mo({t,theme:r,heroIdx:o,setHeroIdx:n}){const s=ft[o];return e.jsxs("div",{className:"mockwrap",children:[e.jsxs("div",{className:"mockbar",children:[e.jsx("div",{className:"mdot",style:{background:"#ef4444"}}),e.jsx("div",{className:"mdot",style:{background:"#f59e0b"}}),e.jsx("div",{className:"mdot",style:{background:"#22c55e"}}),e.jsxs("div",{style:{marginLeft:12,fontSize:11,color:t.text3,fontFamily:"'JetBrains Mono', monospace",display:"flex",alignItems:"center",gap:8},children:[e.jsx("span",{children:"app.beetlai.com"}),e.jsx("span",{style:{color:t.text2,fontSize:9},children:"·"}),e.jsx("span",{style:{color:t.accent1,fontWeight:700},children:s.title})]}),e.jsx("div",{style:{marginLeft:"auto",display:"flex",gap:4},children:ft.map((a,l)=>e.jsx("button",{onClick:()=>n(l),style:{width:6,height:6,borderRadius:3,border:"none",cursor:"pointer",padding:0,background:l===o?t.accent1:t.text3,opacity:l===o?1:.35,transition:"all .25s",width:l===o?18:6},"aria-label":`Show ${a.title}`},a.id))})]}),e.jsx("div",{className:"mockbody",children:e.jsx(To,{id:s.id,t,theme:r,caption:s.caption})})]})}function To({id:t,t:r,theme:o,caption:n}){const s={animation:"bubblein .5s ease forwards",opacity:0,transform:"translateY(8px)"};return t==="intel"?e.jsxs("div",{style:s,children:[e.jsxs("div",{className:"mocksurface",style:{marginBottom:16},children:[e.jsx("span",{className:"surfacechip",style:{color:r.accent2,borderColor:`${r.accent2}55`}
902,children:"PRODUCT INTEL"}),e.jsx("span",{style:{color:r.text3},children:"Q3 launch â 30s ago"})]}),[{tag:"MARKET",text:"Mid-market growth signals â review the trend.",c:r.accent2},{tag:"STRATEGY",text:"Position against a tracked competitor's bundling pivot.",c:r.accent3},{tag:"GROWTH",text:"ICPs not yet covered by tracked competitors.",c:r.accent1},{tag:"RISK",text:"Compliance gating to track quarterly.",c:"#f59e0b"}].map((a,l)=>e.jsxs("div",{style:{display:"flex",gap:12,marginBottom:10,alignItems:"flex-start"},children:[e.jsx("span",{style:{fontSize:10,fontWeight:800,padding:"3px 7px",borderRadius:4,background:`${a.c}1a`,color:a.c,letterSpacing:".05em"},children:a.tag}),e.jsx("span",{style:{fontSize:12.5,color:r.text2,lineHeight:1.5,fontFamily:"'Inter', sans-serif"},children:a.text})]},l)),e.jsxs("div",{style:{marginTop:18,display:"flex",alignItems:"center",gap:8,fontSize:11.5,color:r.text3},children:[e.jsx("span",{style:{color:r.accent1},children:"â¸"}),e.jsx("span",{children:n}),e.jsx("span",{style:{display:"inline-block",width:6,height:12,background:r.accent1,animation:"pu 1.1s step-end infinite",marginLeft:4}})]})]}):t==="tracker"?e.jsxs("div",{style:s,children:[e.jsxs("div",{className:"mocksurface",style:{marginBottom:16},children:[e.jsx("span",{className:"surfacechip",style:{color:r.accent1,borderColor:`${r.accent1}55`},children:"COMPETITOR DIFF"}),e.jsx("span",{style:{color:r.text3},children:"tracked competitor · pricing page"})]}),e.jsxs("div",{style:{background:r.surface,border:`1px solid ${r.border}`,borderRadius:10,padding:14,fontSize:12,fontFamily:"'JetBrains Mono', monospace"},children:[e.jsx("div",{style:{display:"flex",gap:8,marginBottom:8,color:r.text3,fontSize:10,letterSpacing:".05em"},children:"BEFORE"}),e.jsx("div",{style:{color:"#fb7185",textDecoration:"line-through",marginBottom:12},children:"Pro plan â fewer seats included"}),e.jsx("div",{style:{display:"flex",gap:8,marginBottom:8,color:r.text3,fontSize:10,letterSpacing:".05em"},children:"AFTER"}),e.jsx("div",{style:{color:r.accent1},children:"Pro plan â more seats, lower per-seat rate"})]}),e.jsxs("div",{style:{marginTop:16,fontSize:12,color:r.text2,fontFamily:"'Inter', sans-serif",lineHeight:1.5},children:[e.jsx("strong",{style:{color:r.text},children:"AI summary:"})," A tracked competitor restructured their Pro tier with lower pricing and higher seat counts â flagged for your team to review."]})]}):t==="campaign"?e.jsxs("div",{style:s,children:[e.jsxs("div",{className:"mocksurface",style:{marginBottom:14},children:[e.jsx("span",{className:"surfacechip",style:{color:r.accent3,borderColor:`${r.accent3}55`},children:"COMPOSER"}),e.jsx("span",{style:{color:r.text3},children:"LinkedIn · drafting"})]}),e.jsxs("div",{style:{background:r.surface,border:`1px solid ${r.border}`,borderRadius:10,padding:16,fontSize:13,fontFamily:"'Inter', sans-serif",color:r.text2,lineHeight:1.55},children:[e.jsx("span",{style:{color:r.text},children:"Just shipped a major upgrade to our AI marketing OS. "}),e.jsx("span",{style:{background:`${r.accent1}25`,color:r.accent1,padding:"0 4px",borderRadius:3},children:"Three things changed"}),e.jsx("span",{children:" that matter to anyone running multi-channel content"}),e.jsx("span",{style:{display:"inline-block",width:5,height:12,background:r.accent1,animation:"pu 1.1s step-end infinite",marginLeft:2,verticalAlign:"middle"}})]}),e.jsx("div",{style:{marginTop:12,display:"flex",gap:6,flexWrap:"wrap"},children:["#AIMarketing","#GTM","#StartupTools"].map(a=>e.jsx("span",{style:{fontSize:11,padding:"4px 9px",borderRadius:100,background:`${r.accent2}18`,color:r.accent2,fontWeight:600},children:a},a))}),e.jsxs("div",{style:{marginTop:14,display:"flex",gap:8,alignItems:"center",fontSize:11,color:r.text3},children:[e.jsx("span",{style:{color:r.accent1},children:"â"})," AI tone: assertive · ",n]})]}):e.jsxs("div",{style:s,children:[e.jsxs("div",{className:"mocksurface",style:{marginBottom:14},children:[e.jsx("span",{className:"surfacechip",style:{color:"#f472b6",borderColor:"#f472b655"},children:"OUTREACH"}),e.jsx("span",{style:{color:r.text3},children:"3 active sequences"})]}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:8,fontFamily:"'Inter', sans-serif"},children:[{c:"envelope",line:"Cold email sent to 12 prospects",state:"delivered",color:r.accent1},{c:"phone",line:"AI voice agent dialing prospect 3 of 7",state:"live",color:r.accent3},{c:"chat",line:"Follow-up message scheduled in 2h",state:"queued",color:"#f59e0b"},{c:"inbox",line:"Reply detected â summarising for you",state:"thinking",color:r.accent2}].map((a,l)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"9px 12px",background:r.surface,border:`1px solid ${r.border}`,borderRadius:9},children:[e.jsx("span",{style:{color:a.color,display:"flex"},children:e.jsx(ce,{name:a.c,size:16,strokeWidth:1.8})}),e.jsx("span",{style:{fontSize:12.5,color:r.text2,flex:1},children:a.line}),e.jsx("span",{style:{fontSize:10,fontWeight:700,color:a.color,letterSpacing:".06em",textTransform:"uppercase"},children:a.state})]},l))})]})}const Tt=["Instagram","TikTok","Facebook","YouTube","X / Twitter","LinkedIn","Reddit","Threads","Pinterest","Telegram","Mastodon","Snapchat","Bluesky","Twitch","RedNote","Google Reviews","Quora","Medium","GitHub","Steam","Ask.fm","NewsAPI","Google News"];function Bo({t,theme:r}){const o=[...Tt,...Tt];return e.jsxs("div",{className:"marquee",children:[e.jsx("div",{style:{textAlign:"center",fontSize:11,color:t.text3,fontWeight:700,letterSpacing:".15em",textTransform:"uppercase",marginBottom:28},children:"Connects to every channel your customers are on"}),e.jsx("div",{className:"mtrack",children:o.map((n,s)=>e.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:8},children:[e.jsx("span",{style:{width:6,height:6,borderRadius:3,background:`linear-gradient(135deg,${t.accent1},${t.accent2})`,opacity:.65}}),n]},s))})]})}const Oo=[{id:"content",suiteId:"beetlsocial",title:"Content lifecycle",sub:"Idea to live post â composer, calendar, approvals, analytics, in one workspace.",accent:"violet",nodes:[{glyph:"bulb",label:"Idea",note:"Start with a simple brief"}
902,{glyph:"pencil",label:"Draft",note:"AI writes for each platform"},{glyph:"eye",label:"Review",note:"Teammate approves the post"},{glyph:"calendar",label:"Schedule",note:"Picks the right time slot"},{glyph:"send",label:"Publish",note:"Goes live on every channel"},{glyph:"chart",label:"Analyze",note:"Engagement comes back in"}]},{id:"outreach",suiteId:"beetloutreach",title:"Multi-channel outreach",sub:"Email, voice, WhatsApp, SMS â coordinated by one AI conductor.",accent:"rose",nodes:[{glyph:"target",label:"Find",note:"Identify the right prospects"},{glyph:"sparkle",label:"Personalize",note:"AI tailors every message"},{glyph:"envelope",label:"Email",note:"First touch via inbox"},{glyph:"phone",label:"Voice",note:"AI voice agent dials"},{glyph:"chat",label:"WhatsApp",note:"Follow up on chat platforms"},{glyph:"inbox",label:"Triage",note:"Replies summarized for you"}]},{id:"crm",suiteId:"beetlcrm",title:"Deal lifecycle",sub:"Lead in, deal closed â every touchpoint logged on one record.",accent:"orange",nodes:[{glyph:"target",label:"Lead",note:"Inbound or sourced contact"},{glyph:"scan",label:"Qualify",note:"Score against your ICP"},{glyph:"eye",label:"Demo",note:"Notes auto-attach to record"},{glyph:"compare",label:"Negotiate",note:"Pipeline stage updates"},{glyph:"rocket",label:"Won",note:"Hand off to PM + Books"}]},{id:"pm",suiteId:"beetlpm",title:"Project lifecycle",sub:"Brief to ship â projects, tasks, time, and review under one roof.",accent:"violet",nodes:[{glyph:"doc",label:"Brief",note:"Captured from CRM or sales"},{glyph:"calendar",label:"Plan",note:"Tasks, owners, dependencies"},{glyph:"pencil",label:"Execute",note:"Kanban + automations move work"},{glyph:"eye",label:"Review",note:"Frame-accurate proofing"},{glyph:"send",label:"Ship",note:"Hours roll up to invoices"}]},{id:"hr",suiteId:"beetlhr",title:"Hire to retire",sub:"Recruiting through payroll â one employee record, end to end.",accent:"indigo",nodes:[{glyph:"target",label:"Source",note:"Roles posted to job boards"},{glyph:"compare",label:"Interview",note:"ATS pipeline + scorecards"},{glyph:"doc",label:"Onboard",note:"Offer letter to first day"},{glyph:"calendar",label:"Operate",note:"Attendance + leave + perf"},{glyph:"spend",label:"Pay",note:"Payroll flows to Books"}]},{id:"books",suiteId:"beetlbooks",title:"Invoice to ledger",sub:"Issue, collect, reconcile, report â every transaction posts to a real GL.",accent:"emerald",nodes:[{glyph:"doc",label:"Invoice",note:"Branded PDFs + payment links"},{glyph:"send",label:"Sent",note:"Reminders fire automatically"},{glyph:"spend",label:"Paid",note:"Auto-match to bank feed"},{glyph:"compare",label:"Reconcile",note:"Period-lock + audit trail"},{glyph:"chart",label:"Report",note:"P&L, balance sheet, journal"}]},{id:"supply",suiteId:"beetlsupply",title:"Forecast to fulfilment",sub:"Demand signal to delivery â POs, shipments, and stock in one view.",accent:"cyan",nodes:[{glyph:"chart",label:"Forecast",note:"Statistical + S&OP scenarios"},{glyph:"doc",label:"PO",note:"Approved against suppliers"},{glyph:"rocket",label:"Shipment",note:"Carrier tracking + ETAs"},{glyph:"inbox",label:"Receive",note:"Lot / serial captured"},{glyph:"gauge",label:"Stock",note:"Multi-warehouse visibility"}]},{id:"video",suiteId:"beetlvideo",title:"Meet in your workspace",sub:"Room to recording â no third-party tab, no copy-paste links.",accent:"teal",nodes:[{glyph:"calendar",label:"Schedule",note:"Room link in the calendar invite"},{glyph:"phone",label:"Join",note:"One-click from CRM / Outreach / PM"},{glyph:"eye",label:"Moderate",note:"Mute / remove / end as host"},{glyph:"doc",label:"Record",note:"Saved to your workspace"},{glyph:"send",label:"Share",note:"Send recording to attendees"}]}];function Do({t,theme:r}){const o=Te.map(n=>{const s=Oo.find(a=>a.suiteId===n.id);return s?{suite:n,flow:s}:null}).filter(Boolean);return e.jsxs("div",{className:"section",style:{paddingBottom:0},children:[e.jsx("div",{id:"flows",className:"slabel",children:"ModernOS · How it works"}),e.jsx("h2",{className:"sh2",children:"A workflow for every function."}),e.jsx("p",{className:"ssub",children:"One AI platform covers the seven functions modern teams run on â each suite handles its end-to-e
902nd flow without a single context handoff."}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:22},children:o.map(({suite:n,flow:s})=>{var a;return e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"baseline",gap:10,marginBottom:8,paddingLeft:6},children:[e.jsx("span",{style:{fontSize:12,fontWeight:800,letterSpacing:".08em",textTransform:"uppercase",color:((a=de[s.accent])==null?void 0:a[0])||t.accent1},children:n.title}),e.jsx("span",{style:{fontSize:11,color:t.text3},children:n.tagline})]}),e.jsx(Wo,{flow:s,t,theme:r})]},n.id)})})]})}function Wo({flow:t,t:r,theme:o}){const[n,s]=i.useState(0),[a,l]=de[t.accent];return i.useEffect(()=>{const d=setInterval(()=>s(c=>(c+1)%t.nodes.length),1300);return()=>clearInterval(d)},[t.nodes.length]),e.jsxs("div",{className:"flowcard",style:{"--flow-c1":a,"--flow-c2":l,"--flow-glow":`${a}1a`},children:[e.jsxs("div",{className:"flowcard-head",children:[e.jsxs("div",{children:[e.jsxs("div",{className:"flowtitle",children:[e.jsx("span",{className:"flowdot",style:{background:`linear-gradient(135deg,${a},${l})`}}),t.title]}),e.jsx("div",{className:"flowsub",children:t.sub})]}),e.jsxs("div",{className:"flowprogress",children:[e.jsx("span",{style:{color:a},children:n+1}),e.jsxs("span",{style:{color:r.text3},children:[" / ",t.nodes.length]})]})]}
902),e.jsx("div",{className:"flowtrack",children:t.nodes.map((d,c)=>{const f=c===n,p=c<n;return e.jsxs("div",{className:"flowstep",children:[e.jsx("div",{className:`flownode ${f?"on":""} ${p?"vis":""}`,style:f?{boxShadow:`0 0 32px ${a}55, 0 0 0 4px ${a}22`}:{},children:e.jsx(ce,{name:d.glyph,size:22,strokeWidth:1.7})}),e.jsx("div",{className:"flowlabel",style:f?{color:a,fontWeight:800}:{},children:d.label}),e.jsx("div",{className:"flownote",style:f?{opacity:1,color:r.text2}:{},children:d.note}),c<t.nodes.length-1&&e.jsx("div",{className:"flowarrow",children:e.jsx("div",{className:"flowarrow-track",children:e.jsx("div",{className:"flowarrow-fill",style:{width:c<n||c===n?"100%":"0%",background:`linear-gradient(90deg,${a},${l})`,transition:c===n?"width 1.2s linear":"width .25s"}})})})]},d.label)})})]})}function No({t,theme:r,navigate:o}){return e.jsxs("div",{className:"section",id:"products",children:[e.jsx("div",{className:"slabel",children:"What's inside"}),e.jsx("h2",{className:"sh2",children:"Every surface, one workspace."}),e.jsx("p",{className:"ssub",children:"Purpose-built tools for every step â from first post to last paystub."}),e.jsx("div",{className:"showrow",children:Te.map(n=>{var h;const s=(h=n.features)==null?void 0:h[0],a=s?fe[s]:null,l=(a==null?void 0:a.accent)||yt[n.id]||"teal",[d,c]=de[l]||de.teal,f=r==="dark"?`linear-gradient(135deg, ${d}10, ${c}06)`:`linear-gradient(135deg, ${d}0d, ${c}05)`,p=(()=>{const x=(n.features||[]).map(E=>fe[E]).filter(Boolean),b=br[n.id]||[];return(x.length<=2&&b.length?b:x).slice(0,4).map(E=>E.title)})(),u=!!n.externalUrl,v=e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"showcard-meta",children:[e.jsx("div",{className:"showcard-glyph",style:{background:`linear-gradient(135deg, ${d}26, ${c}18)`,border:`1px solid ${d}40`,color:d},children:e.jsx(ce,{name:n.icon,size:16,strokeWidth:1.7})}),e.jsxs("div",{className:"showcard-titlewrap",children:[e.jsx("div",{className:"showcard-title",children:n.title}),e.jsx("div",{className:"showcard-tag",children:n.tagline})]}),e.jsx("div",{className:"showcard-arrow","aria-hidden":"true",children:e.jsx("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M7 17L17 7M9 7h8v8"})})})]}),e.jsxs("div",{className:"showcard-chips",children:[p.map(x=>e.jsx("span",{className:"showcard-chip",children:x},x)),(n.features||[]).length>p.length&&e.jsxs("span",{className:"showcard-chip showcard-chip-more",children:["+ ",Math.max(0,(n.features||[]).length-p.length)," more"]})]})]});return u?e.jsx("a",{href:n.externalUrl,target:"_blank",rel:"noreferrer",className:"showcard",style:{background:f,"--suite-c1":d,"--suite-c2":c},children:v},n.id):e.jsx(q,{to:`/#${n.id}`,className:"showcard",style:{background:f,"--suite-c1":d,"--suite-c2":c},onClick:x=>
902{if(window.location.pathname==="/"){x.preventDefault();const b=document.getElementById(n.id);b&&b.scrollIntoView({behavior:"smooth",block:"start"}),window.history.replaceState(null,"",`/#${n.id}`)}},children:v},n.id)})})]})}function $o({t,plans:r,billing:o,setBilling:n,displayPrice:s,handlePlanClick:a}){return e.jsxs("div",{className:"section",children:[e.jsx("div",{id:"pricing",className:"slabel",children:"Pricing"}),e.jsx("h2",{className:"sh2",children:"Start free. Scale when you're ready."}),e.jsx("p",{className:"ssub",children:"Every plan includes every product."}),e.jsxs("div",{className:"ptoggle",children:[e.jsx("button",{className:`ptbtn ${o==="monthly"?"act":""}`,onClick:()=>n("monthly"),children:"Monthly"}),e.jsx("button",{className:`ptbtn ${o==="annual"?"act":""}`,onClick:()=>n("annual"),children:"Annual"})]}),e.jsx("div",{className:"pgrid",children:r.map(l=>e.jsxs("div",{className:`pcard ${l.highlighted?"hl":""}`,children:[l.badge&&e.jsx("div",{className:"pbadge",children:l.badge}),e.jsx("div",{className:"pname",children:l.name}),e.jsx("div",{className:"ptag",children:l.tagline}),e.jsx("div",{className:"ppr",children:l.price===null?e.jsx("div",{className:"ppv",style:{fontSize:28,paddingTop:8},children:"Contact us"}):e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"ppv",children:s(l)}),l.price>0&&e.jsx("span",{className:"ppp",children:"/ mo"}),l.price>0&&e.jsxs("div",{className:"ppb",children:["billed ",o]})]})}),e.jsx("button",{className:`pcta ${l.highlighted?"pri":"out"}`,onClick:()=>a(l),children:l.cta}),e.jsx("hr",{className:"pdiv"}),e.jsx("ul",{className:"pfl",children:l.features.map(d=>e.jsxs("li",{className:"pfi",children:[e.jsx("span",{className:"chk",children:e.jsx("svg",{viewBox:"0 0 8 8",fill:"none",children:e.jsx("path",{d:"M1.5 4l1.8 1.8L6.5 2",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})})}),e.jsx("span",{children:d})]},d))})]},l.id))})]})}function Fo({t,navigate:r,openContact:o}){return e.jsxs("div",{id:"about",className:"ctasec",children:[e.jsx("div",{className:"ctagl"}),e.jsxs("div",{style:{position:"relative",maxWidth:780,margin:"0 auto"},children:[e.jsxs("h2",{className:"ctah2",children:["Stop stitching tools. ",e.jsx("br",{}),e.jsx("span",{className:"grad",children:"Start shipping."})]}),e.jsx("p",{className:"ctasg",children:"One workspace, one AI, every product your customer-facing teams need."}),e.jsxs("div",{style:{display:"flex",justifyContent:"center",gap:12,flexWrap:"wrap"},children:[e.jsx("button",{className:"btnp",onClick:()=>r("/signup?plan=free"),children:"Start free â"}),e.jsx("button",{className:"btng",onClick:()=>r("/contact?kind=demo"),children:"Book a demo"})]})]})]})}function Ho({kind:t="contact",onClose:r,t:o,theme:n}){const[s,a]=i.useState(""),[l,d]=i.useState(""),[c,f]=i.useState(""),[p,u]=i.useState(""),[v,h]=i.useState(!1),[x,b]=i.useState(""),[j,E]=i.useState(!1),A={contact:{eyebrow:"Contact us",h:"Let's talk."},demo:{eyebrow:"Book a demo",h:"See BeetlAI in action."},enterprise:{eyebrow:"Enterprise",h:"Built for your scale."}},z=A[t]||A.contact;i.useEffect(()=>{const w=g=>{g.key==="Escape"&&(r==null||r())};return window.addEventListener("keydown",w),()=>window.removeEventListener("keydown",w)},[r]);async function L(w){w.preventDefault(),b(""),h(!0);try{const g=await fetch("/public/contact",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:s,email:l,company:c,message:p,kind:t})}),k=await g.json().catch(()=>({}));if(!g.ok)throw new Error((k==null?void 0:k.detail)||"Could not send your message. Please try again.");E(!0)}catch(g){b(g.message||"Something went wrong.")}finally{h(!1)}}const R=n==="dark"?"#04070f":"#ffffff";return e.jsxs("div",{role:"dialog","aria-modal":"true",style:{position:"fixed",inset:0,zIndex:1e3,display:"flex",alignItems:"center",justifyContent:"center",padding:20,background:n==="dark"?"rgba(0,0,0,0.7)":"rgba(15,23,42,0.55)",backdropFilter:"blur(8px)",animation:"cm-fade .25s ease"},onClick:w=>{w.target===w.currentTarget&&(r==null||r())},children:[e.jsx("style",{children:` 903 @keyframes cm-fade{from{opacity:0}
903to{opacity:1}} 904 @keyframes cm-pop{from{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}} 905 `}),e.jsxs("div",{style:{width:"100%",maxWidth:480,background:o.surfaceSolid,borderRadius:18,border:`1px solid ${o.border}`,padding:"30px 28px",color:o.text,fontFamily:"'Inter', system-ui, sans-serif",boxShadow:n==="dark"?"0 40px 100px rgba(0,0,0,0.6)":"0 30px 80px rgba(15,23,42,0.18)",animation:"cm-pop .25s cubic-bezier(.2,.8,.3,1.1)",position:"relative"},children:[e.jsx("button",{"aria-label":"Close",onClick:r,style:{position:"absolute",top:12,right:12,width:30,height:30,borderRadius:8,background:"transparent",border:"none",color:o.text3,cursor:"pointer",fontSize:20,lineHeight:1},children:"Ã"}),j?e.jsxs("div",{style:{textAlign:"center",padding:"20px 0 8px"},children:[e.jsx("div",{style:{width:56,height:56,borderRadius:14,background:`linear-gradient(135deg, ${o.accent1}, ${o.accent2})`,color:R,display:"inline-flex",alignItems:"center",justifyContent:"center",marginBottom:18,boxShadow:`0 16px 40px ${o.accent1}40`},children:e.jsx("svg",{width:"28",height:"28",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M5 12l5 5L20 7"})})}),e.jsx("h3",{style:{fontFamily:"'DM Serif Display', serif",fontSize:28,letterSpacing:"-.02em",marginBottom:10},children:"Got it â talk soon."}),e.jsx("p",{style:{fontSize:14,color:o.text2,lineHeight:1.55,marginBottom:22},children:"We've received your message and someone from our team will reach out within one business day."}),e.jsx("button",{onClick:r,style:{padding:"11px 22px",borderRadius:10,border:`1px solid ${o.border}`,background:"transparent",color:o.text2,cursor:"pointer",fontFamily:"inherit",fontSize:14,fontWeight:600},children:"Close"})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{fontSize:11,fontWeight:800,letterSpacing:".12em",textTransform:"uppercase",color:o.accent1,marginBottom:6},children:z.eyebrow}),e.jsx("h3",{style:{fontFamily:"'DM Serif Display', serif",fontSize:28,letterSpacing:"-.02em",marginBottom:22,lineHeight:1.15},children:z.h}),e.jsxs("form",{onSubmit:L,style:{display:"flex",flexDirection:"column",gap:12},children:[e.jsx(ct,{label:"Your name",value:s,onChange:a,t:o,required:!0,autoFocus:!0}),e.jsx(ct,{label:"Email",type:"email",value:l,onChange:d,t:o,required:!0}),e.jsx(ct,{label:"Company",value:c,onChange:f,t:o,placeholder:"Optional"}),e.jsx(Vo,{label:t==="demo"?"What would you like to see?":"How can we help?",value:p,onChange:u,t:o,required:!0}),x?e.jsx("div",{style:{fontSize:12.5,color:"#fca5a5",padding:"8px 11px",borderRadius:8,background:"rgba(220,38,38,.10)",border:"1px solid rgba(220,38,38,.32)"},children:x}):null,e.jsx("button",{type:"submit",disabled:v,style:{marginTop:6,padding:"13px 22px",borderRadius:10,border:"none",background:`linear-gradient(135deg, ${o.accent1}, ${o.accent2})`,color:R,fontFamily:"inherit",fontSize:14.5,fontWeight:700,cursor:v?"wait":"pointer",opacity:v?.7:1,boxShadow:`0 12px 28px ${o.accent1}40`},children:v?"Sendingâ¦":"Send â"}),e.jsx("div",{style:{fontSize:11.5,color:o.text3,textAlign:"center",marginTop:4},children:"We'll never share your details. Replies usually within one business day."})]})]})]})]})}function ct({label:t,value:r,onChange:o,type:n="text",required:s,placeholder:a,t:l,autoFocus:d}){return e.jsxs("label",{style:{display:"block"},children:[e.jsx("div",{style:{fontSize:11,fontWeight:700,color:l.text2,letterSpacing:".04em",textTransform:"uppercase",marginBottom:5},children:t}),e.jsx("input",{type:n,value:r,onChange:c=>o(c.target.value),required:s,placeholder:a,autoFocus:d,style:{width:"100%",padding:"11px 14px",borderRadius:9,background:l.surface,color:l.text,border:`1px solid ${l.border}`,fontSize:14,fontFamily:"inherit",outline:"none",transition:"border-color .15s"},onFocus:c=>{c.target.style.borderColor=l.accent1},onBlur:c=>{c.target.style.borderColor=l.border}})]})}function Vo({label:t,value:r,onChange:o,required:n,t:s}){return e.jsxs("label",{style:{display:"block"},children:[e.jsx("div",{style:{fontSize:11,fontWeight:700,color:s.text2,letterSpacing:".04em",textTransform:"uppercase",marginBottom:5},children:t}),e.jsx("textarea",{value:r,onChange:a=>o(a.target.value),required:n,rows:4,style:{width:"100%",padding:"11px 14px",borderRadius:9,background:s.surface,color:s.text,border:`1px solid ${s.border}`,fontSize:14,fontFamily:"inherit",outline:"none",resize:"vertical",minHeight:96,transition:"border-color .15s"},onFocus:a=>{a.target.style.borderColor=s.accent1},onBlur:a=>{a.target.style.borderColor=s.border}})]})}function kr({t}){const r=Ye(),o=(d,c)=>{if(!d.startsWith("#"))return;const f=d.slice(1);if(window.location.pathname==="/"){c==null||c.preventDefault();const p=document.getElementById(f);p&&(p.scrollIntoView({behavior:"smooth",block:"start"}),history.replaceState(null,"",`#${f}`))}else c==null||c.preventDefault(),r(`/#${f}`)},n=Te.map(d=>{const c=d.features[0];return[d.externalUrl||`/products/${c}`,d.title]}),s=[["/products/campaign-manager","Marketing"],["/products/outreach","Sales"],["/products/inbox","Customer Success"],["/products/hr-recruiting","People & HR"],["/products/intelligence","Product & Strategy"],["/products/workflow-studio","Founders & Operators"],["/products/reports","Agencies"],["/#pricing","Enterprise"]],a=[["/contact","Contact"],["#pricing","Pricing"],["/contact?kind=security","Security"],["/privacy","Privacy"],["/contact?kind=demo","Book a demo"]],l=({title:d,links:c})=>e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[e.jsx("div",{style:{fontSize:11,fontWeight:800,color:t.text3,textTransform:"uppercase",letterSpacing:".1em",marginBottom:4},children:d}),c.map(([f,p])=>f.startsWith("/")?e.jsx(q,{to:f,className:"flink",children:p},p):/^https?:\/\//.test(f)?e.jsx("a",{href:f,target:"_blank",rel:"noreferrer",className:"flink",children:p},p):e.jsx("a",{href:f,className:"flink",onClick:u=>o(f,u),children:p},p))]});return e.jsxs("footer",{className:"ftr",children:[e.jsxs("div",{className:"fin-grid",children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12,maxWidth:280},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[e.jsx("div",{className:"lmark",style:{width:28,height:28,borderRadius:8},children:e.jsx(me,{size:16})}),e.jsxs("span",{style:{fontSize:15,fontWeight:800,color:t.text},children:["Beetl",e.jsx("span",{style:{color:t.accent1},children:"AI"})]})]}),e.jsx("div",{style:{fontSize:12.5,color:t.text3,lineHeight:1.55},children:"Three AI suites for the whole business â marketing, outreach, and HR. One workspace, one login, one AI."})]}),e.jsx(l,{title:"Suites",links:n}),e.jsx(l,{title:"Solutions",links:s}),e.jsx(l,{title:"Company",links:a})]}),e.jsxs("div",{className:"fin-bottom",children:[e.jsxs("span",{children:["© ",new Date().getFullYear()," BeetlAI · All rights reserved."]}),e.jsxs("span",{style:{color:t.text3},children:["Built for go-to-market teams. ·"," ",e.jsx("a",{href:"mailto:[email protected]",style:{color:t.accent1,textDecoration:"none",fontWeight:600},children:"[email protected]"})]})]})]})}const se="social_media_management",_e="outreach_automation",Ce="hr_management",Ae="beetlbooks",Pe="crm",Re="beetlsupply",Ee="project_management",ze="video",xt={[se]:{id:se,label:"BeetlSocial",shortLabel:"SMM",homePath:"/dashboard",pathPrefix:"/dashboard"},[_e]:{id:_e,label:"BeetlOutreach",shortLabel:"Outreach",homePath:"/dashboard/outreach",pathPrefix:"/dashboard/outreach"},[Ce]:{id:Ce,label:"BeetlHR",shortLabel:"HR",homePath:"/dashboard/hr",pathPrefix:"/dashboard/hr"},[Ae]:{id:Ae,label:"BeetlBooks",shortLabel:"Books",homePath:"/dashboard/books",pathPrefix:"/dashboard/books"},[Pe]:{id:Pe,label:"BeetlCRM",shortLabel:"CRM",homePath:"/dashboard/crm",pathPrefix:"/dashboard/crm"},[Re]:{id:Re,label:"BeetlSupply",shortLabel:"Supply",homePath:"/dashboard/supply",pathPrefix:"/dashboard/supply"},[Ee]:{id:Ee,label:"BeetlPM",shortLabel:"PM",homePath:"/dashboard/pm",pathPrefix:"/dashboard/pm"},[ze]:{id:ze,label:"BeetlVideo",shortLabel:"Video",homePath:"/dashboard/video",pathPrefix:"/dashboard/video"}};function Bt(t){return xt[t]||xt[se]}function Uo(t){return typeof t!="string"?se:t.startsWith("/dashboard/books")?Ae:t.startsWith("/dashboard/crm")?Pe:t.startsWith("/dashboard/hr")?Ce:t.startsWith("/dashboard/supply")?Re:t.startsWith("/dashboard/pm")?Ee:t.startsWith("/dashboard/video")?ze:t.startsWith("/dashboard/outreach")?_e:se}const V=se,Ot={id:V,description:"Listening, campaigns, creative, and reports."},qo=[{product:V,to:"/dashboard",label:"Dashboard",icon:"Dashboard",perm:"view:dashboard"},{product:V,to:"/dashboard/products",label:"Products",icon:"Products",perm:"view:products"},{product:V,to:"/dashboard/competitors",label:"Competitors",icon:"Competitors",perm:"view:competitors"},{product:V,to:"/dashboard/social",label:"Social",icon:"Social",perm:"view:social"},{product:V,to:"/dashboard/composer",label:"Composer",icon:"Composer",perm:"view:campaigns"},{product:V,to:"/dashboard/campaigns",label:"Campaign",icon:"Campaign",perm:"view:campaigns"},{product:V,to:"/dashboard/calendar",label:"Calendar",icon:"CalendarIcon",perm:"view:campaigns"},{product:V,to:"/dashboard/analytics",label:"Analytics",icon:"Analytics",perm:"view:campaigns"},{product:V,to:"/dashboard/inbox",label:"Inbox",icon:"Inbox",perm:"view:social"},{product:V,to:"/dashboard/assets",label:"Assets",icon:"Assets",perm:"view:campaigns"},{product:V,to:"/dashboard/ads",label:"Ad Studio",icon:"Ads",perm:"view:ads"},{product:V,to:"/dashboard/agents",label:"Agent Flows",icon:"Agent",perm:"view:agents"},{product:V,to:"/dashboard/alerts",label:"Alerts",icon:"Alerts",perm:"view:alerts"},{product:V,to:"/dashboard/reports",label:"Reports",icon:"Reports",perm:"view:reports"},{product:V,to:"/dashboard/settings",label:"Team & Roles",icon:"Settings",perm:"manage:users"}],He=_e,Dt={id:He,description:"Ingestion, research, and omnichannel outreach."},Go=[{product:He,to:"/dashboard/outreach/workflows",label:"Workflows",icon:"WorkflowBoard",perm:"view:outreach"},{product:He,to:"/dashboard/outreach/team",label:"Team & RBAC",icon:"User",perm:"view:outreach"},{product:He,to:"/dashboard/outreach",label:"Settings",icon:"Settings",perm:"view:outreach"}],K=Ce,Wt={id:K,description:"Self-service HR · employees · payroll · hiring · org tree."},Yo=[{product:K,to:"/dashboard/hr/me",label:"My HR",icon:"HRMe"},{product:K,to:"/dashboard/hr/org",label:"Org Tree",icon:"HROrgTree"},{product:K,to:"/dashboard/hr/approvals",label:"Approvals",icon:"HRApprovals"},{product:K,to:"/dashboard/hr",label:"Dashboard",icon:"Dashboard",perm:"view:hr:employees"},{product:K,to:"/dashboard/hr/employees",label:"Employees",icon:"HRPeople",perm:"view:hr:employees"},{product:K,to:"/dashboard/hr/onboarding",label:"Onboarding",icon:"HROnboarding",perm:"view:hr:onboarding"},{product:K,to:"/dashboard/hr/documents",label:"Documents",icon:"HRDocuments",perm:"view:hr:documents"},{product:K,to:"/dashboard/hr/attendance",label:"Attendance",icon:"HRClock",perm:"view:hr:attendance"},{product:K,to:"/dashboard/hr/leave",label:"Leave",icon:"HRCalendar",perm:"view:hr:leave"},{product:K,to:"/dashboard/hr/payroll",label:"Payroll",icon:"HRPayroll",perm:"view:hr:payroll"},{product:K,to:"/dashboard/hr/performance",label:"Performance",icon:"HRPerformance",perm:"view:hr:performance"},{product:K,to:"/dashboard/hr/recruiting",label:"Recruiting",icon:"HRRecruiting",perm:"view:hr:recruiting"},{product:K,to:"/dashboard/hr/team",label:"Team & RBAC",icon:"User",perm:"manage:users"},{product:K,to:"/dashboard/hr/settings",label:"Settings",icon:"Settings",perm:"manage:hr:settings"}],Q=Ae,Nt={id:Q,description:"Accounting · journal · invoices · bills · payments · reports."},Ko=[{product:Q,to:"/dashboard/books",label:"Dashboard",icon:"Dashboard",perm:"view:books"},{product:Q,to:"/dashboard/books/customers",label:"Customers",icon:"User",perm:"view:books:customers"},{product:Q,to:"/dashboard/books/vendors",label:"Vendors",icon:"User",perm:"view:books:vendors"},{product:Q,to:"/dashboard/books/invoices",label:"Invoices",icon:"Invoice",perm:"view:books:invoices"},{product:Q,to:"/dashboard/books/bills",label:"Bills",icon:"Bill",perm:"view:books:bills"},{product:Q,to:"/dashboard/books/payments",label:"Payments",icon:"Payments",perm:"view:books:payments"},{product:Q,to:"/dashboard/books/banking",label:"Banking",icon:"Banking",perm:"view:books:banking"},{product:Q,to:"/dashboard/books/accounts",label:"Accounts",icon:"Accounts",perm:"view:books:accounts"},{product:Q,to:"/dashboard/books/journal",label:"Journal",icon:"BookOpen",perm:"view:books:journal"},{product:Q,to:"/dashboard/books/reports",label:"Reports",icon:"Reports",perm:"view:books:reports"},{product:Q,to:"/dashboard/books/team",label:"Team & RBAC",icon:"User",perm:"manage:users"}],ie=Pe,$t={id:ie,description:"Customer relationships · contacts · companies · leads · pipeline · activities."},Jo=[{product:ie,to:"/dashboard/crm",label:"Dashboard",icon:"Dashboard",perm:"view:crm"},{product:ie,to:"/dashboard/crm/contacts",label:"Contacts",icon:"CRMContacts",perm:"view:crm:contacts"},{product:ie,to:"/dashboard/crm/companies",label:"Companies",icon:"CRMCompanies",perm:"view:crm:companies"},{product:ie,to:"/dashboard/crm/leads",label:"Leads",icon:"CRMLeads",perm:"view:crm:leads"},{product:ie,to:"/dashboard/crm/deals",label:"Deals",icon:"CRMDeals",perm:"view:crm:deals"},{product:ie,to:"/dashboard/crm/activities",label:"Activities",icon:"CRMActivities",perm:"view:crm:activities"},{product:ie,to:"/dashboard/crm/reports",label:"Reports",icon:"Reports",perm:"view:crm:reports"},{product:ie,to:"/dashboard/crm/team",label:"Team & RBAC",icon:"User",perm:"manage:users"},{product:ie,to:"/dashboard/crm/settings",label:"Settings",icon:"Settings",perm:"manage:crm:settings"}],ee=Ee,Ft={id:ee,description:"Project management surface â Asana / Monday / ClickUp shape, with proofing and time tracking."},Xo=[{product:ee,to:"/dashboard/pm",label:"Dashboard",icon:"Dashboard",perm:"view:pm"},{product:ee,to:"/dashboard/pm/workspaces",label:"Workspaces",icon:"Folder",perm:"view:pm:workspaces"},{product:ee,to:"/dashboard/pm/projects",label:"Projects",icon:"Project",perm:"view:pm:projects"},{product:ee,to:"/dashboard/pm/tasks",label:"Tasks",icon:"List",perm:"view:pm:tasks"},{product:ee,to:"/dashboard/pm/board",label:"Board",icon:"Board",perm:"view:pm:tasks"},{product:ee,to:"/dashboard/pm/automations",label:"Automations",icon:"Automation",perm:"view:pm:automations"},{product:ee,to:"/dashboard/pm/time",label:"Time",icon:"Clock",perm:"view:pm:time"},{product:ee,to:"/dashboard/pm/proofing",label:"Proofing",icon:"Approve",perm:"view:pm:proofing"},{product:ee,to:"/dashboard/pm/dashboards",label:"Dashboards",icon:"Chart",perm:"view:pm:dashboards"},{product:ee,to:"/dashboard/pm/team",label:"Team & RBAC",icon:"User",perm:"manage:users"},{product:ee,to:"/dashboard/pm/settings",label:"Settings",icon:"Settings",perm:"manage:pm:settings"}],U=Re,Ht={id:U,description:"Plan demand, supply, S&OP. Run procurement, inventory, shipments and what-ifs."},Zo=[{product:U,to:"/dashboard/supply",label:"Dashboard",icon:"Dashboard",perm:"view:supply"},{product:U,to:"/dashboard/supply/items",label:"Items",icon:"Box",perm:"view:supply:items"},{product:U,to:"/dashboard/supply/suppliers",label:"Suppliers",icon:"Truck",perm:"view:supply:suppliers"},{product:U,to:"/dashboard/supply/warehouses",label:"Warehouses",icon:"Warehouse",perm:"view:supply:warehouses"},{product:U,to:"/dashboard/supply/inventory",label:"Inventory",icon:"Layers",perm:"view:supply:inventory"},{product:U,to:"/dashboard/supply/demand",label:"Demand",icon:"TrendingUp",perm:"view:supply:demand"},{product:U,to:"/dashboard/supply/plan",label:"Supply",icon:"Cog",perm:"view:supply:plan"},{product:U,to:"/dashboard/supply/sop",label:"S&OP",icon:"Calendar",perm:"view:supply:sop"},{product:U,to:"/dashboard/supply/procurement",label:"Procurement",icon:"ShoppingCart",perm:"view:supply:procurement"},{product:U,to:"/dashboard/supply/shipments",label:"Shipments",icon:"Send",perm:"view:supply:shipments"},{product:U,to:"/dashboard/supply/orders",label:"Sales Orders",icon:"FileText",perm:"view:supply:orders"},{product:U,to:"/dashboard/supply/scenarios",label:"Scenarios",icon:"GitBranch",perm:"view:supply:scenari
905os"},{product:U,to:"/dashboard/supply/alerts",label:"Alerts",icon:"AlertTriangle",perm:"view:supply:alerts"},{product:U,to:"/dashboard/supply/team",label:"Team & RBAC",icon:"User",perm:"manage:users"},{product:U,to:"/dashboard/supply/settings",label:"Settings",icon:"Settings",perm:"manage:supply:settings"}],je=ze,Vt={id:je,description:"Video conferencing · meetings · invites · recordings."},Qo=[{product:je,to:"/dashboard/video",label:"Dashboard",icon:"Dashboard",perm:"view:video"},{product:je,to:"/dashboard/video/rooms",label:"Rooms",icon:"Calendar",perm:"view:video:rooms"},{product:je,to:"/dashboard/video/recordings",label:"Recordings",icon:"Reports",perm:"view:video:recordings"},{product:je,to:"/dashboard/video/team",label:"Team & RBAC",icon:"User",perm:"manage:users"}],en=[...qo,...Go,...Yo,...Ko,...Jo,...Xo,...Zo,...Qo],tn={[Ot.id]:Ot,[Dt.id]:Dt,[Wt.id]:Wt,[Nt.id]:Nt,[$t.id]:$t,[Ft.id]:Ft,[Ht.id]:Ht,[Vt.id]:Vt};function rn(t){var r;return((r=tn[t])==null?void 0:r.description)||""}const on=Object.keys(xt),jr=i.createContext({workspaceId:null,workspaceName:"All Clients",setWorkspace:()=>{}}),nn=()=>i.useContext(jr);function an({children:t}){const[r,o]=i.useState(()=>Ue()),[n,s]=i.useState("All Clients"),[a,l]=i.useState([]),{isAuthenticated:d}=Me(),c=i.useCallback(()=>{$("/api/workspaces",{}).then(p=>{if(Array.isArray(p)){l(p);const u=Ue();if(u){const v=p.find(h=>h.id===u);v?s(v.name):(o(null),ot(null))}}}).catch(()=>{})},[]);i.useEffect(()=>{if(!d){l([]);return}c();function p(){c()}return window.addEventListener("workspace-changed",p),()=>window.removeEventListener("workspace-changed",p)},[d,c]);const f=i.useCallback(p=>{p?(o(p.id),s(p.name),ot(p.id)):(o(null),s("All Clients"),ot(null))},[]);return e.jsx(jr.Provider,{value:{workspaceId:r,workspaceName:n,workspaces:a,setWorkspace:f},children:t})}const Sr=i.createContext({dark:!1,toggle:()=>{}}),sn=()=>i.useContext(Sr);function ln({children:t}){const[r,o]=i.useState(()=>localStorage.getItem("ci_theme")==="dark");function n(){o(s=>{const a=!s;return localStorage.setItem("ci_theme",a?"dark":"light"),a})}return e.jsx(Sr.Provider,{value:{dark:r,toggle:n},children:t})}function We({name:t,size:r=28}){const o=(t||"M")[0].toUpperCase(),n=[["#0d9488","#6366f1"],["#2563eb","#7c3aed"],["#dc2626","#f59e0b"],["#059669","#0284c7"],["#7c3aed","#ec4899"]],s=(t||"").split("").reduce((d,c)=>d+c.charCodeAt(0),0)%n.length,[a,l]=n[s];return e.jsx("div",{style:{width:r,height:r,borderRadius:Math.floor(r*.28),background:`linear-gradient(135deg, ${a}, ${l})`,color:"#fff",fontWeight:800,fontSize:Math.floor(r*.45),display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:o})}const ae={Dashboard:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"3",width:"7",height:"7",rx:"1"}),e.jsx("rect",{x:"14",y:"3",width:"7",height:"7",rx:"1"}),e.jsx("rect",{x:"3",y:"14",width:"7",height:"7",rx:"1"}),e.jsx("rect",{x:"14",y:"14",width:"7",height:"7",rx:"1"})]}),Products:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"}),e.jsx("polyline",{points:"3.27 6.96 12 12.01 20.73 6.96"}),e.jsx("line",{x1:"12",y1:"22.08",x2:"12",y2:"12"})]}),Competitors:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("circle",{cx:"12",cy:"12",r:"4"}),e.jsx("line",{x1:"4.93",y1:"4.93",x2:"9.17",y2:"9.17"}),e.jsx("line",{x1:"14.83",y1:"14.83",x2:"19.07",y2:"19.07"}),e.jsx("line",{x1:"14.83",y1:"9.17",x2:"19.07",y2:"4.93"}),e.jsx("line",{x1:"4.93",y1:"19.07",x2:"9.17",y2:"14.83"})]}),Social:()=>e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"})}),Campaign:()=>e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M22 12h-4l-3 9L9 3l-3 9H2"})}),OutreachSettings:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"7"}),e.jsx("circle",{cx:"12",cy:"12",r:"2.5"})]}),WorkflowBoard:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"4",width:"7",height:"16",rx:"1.5"}),e.jsx("rect",{x:"14",y:"4",width:"7",height:"8",rx:"1.5"}),e.jsx("rect",{x:"14",y:"15",width:"7",height:"5",rx:"1.5"})]}),Alerts:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"}),e.jsx("path",{d:"M13.73 21a2 2 0 0 1-3.46 0"})]}),Reports:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M3 3v18h18"}),e.jsx("rect",{x:"7",y:"11",width:"3",height:"7",rx:"0.5"}),e.jsx("rect",{x:"12",y:"7",width:"3",height:"11",rx:"0.5"}),e.jsx("rect",{x:"17",y:"14",width:"3",height:"4",rx:"0.5"})]}),Settings:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"3"}),e.jsx("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09a1.65 1.65 0 0 0-1-1.51 1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2
9050 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09a1.65 1.65 0 0 0 1.51-1 1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33h0a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51h0a1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82v0a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"})]}),Sun:()=>e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"5"}),e.jsx("line",{x1:"12",y1:"1",x2:"12",y2:"3"}),e.jsx("line",{x1:"12",y1:"21",x2:"12",y2:"23"}),e.jsx("line",{x1:"4.22",y1:"4.22",x2:"5.64",y2:"5.64"}),e.jsx("line",{x1:"18.36",y1:"18.36",x2:"19.78",y2:"19.78"}),e.jsx("line",{x1:"1",y1:"12",x2:"3",y2:"12"}),e.jsx("line",{x1:"21",y1:"12",x2:"23",y2:"12"}),e.jsx("line",{x1:"4.22",y1:"19.78",x2:"5.64",y2:"18.36"}),e.jsx("line",{x1:"18.36",y1:"5.64",x2:"19.78",y2:"4.22"})]}),Moon:()=>e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})}),Chevron:()=>e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",children:e.jsx("polyline",{points:"6 9 12 15 18 9"})}),SignOut:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),e.jsx("polyline",{points:"16 17 21 12 16 7"}),e.jsx("line",{x1:"21",y1:"12",x2:"9",y2:"12"})]}),Lock:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"11",width:"18",height:"11",rx:"2"}),e.jsx("path",{d:"M7 11V7a5 5 0 0 1 10 0v4"})]}),User:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),e.jsx("circle",{cx:"12",cy:"7",r:"4"})]}),Composer:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M12 20h9"}),e.jsx("path",{d:"M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"})]}),CalendarIcon:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),e.jsx("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),e.jsx("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),e.jsx("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]}),Analytics:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("line",{x1:"18",y1:"20",x2:"18",y2:"10"}),e.jsx("line",{x1:"12",y1:"20",x2:"12",y2:"4"}),e.jsx("line",{x1:"6",y1:"20",x2:"6",y2:"14"}),e.jsx("line",{x1:"2",y1:"20",x2:"22",y2:"20"})]}),Inbox:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12"}),e.jsx("path",{d:"M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"})]}),Automations:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M12 2v4"}),e.jsx("path",{d:"M12 18v4"}),e.jsx("path",{d:"M4.93 4.93l2.83 2.83"}),e.jsx("path",{d:"M16.24 16.24l2.83 2.83"}),e.jsx("path",{d:"M2 12h4"}),e.jsx("path",{d:"M18 12h4"}),e.jsx("path",{d:"M4.93 19.07l2.83-2.83"}),e.jsx("path",{d:"M16.24 7.76l2.83-2.83"}),e.jsx("circle",{cx:"12",cy:"12",r:"3"})]}),Assets:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),e.jsx("circle",{cx:"8.5",cy:"8.5",r:"1.5"}),e.jsx("polyline",{points:"21 15 16 10 5 21"})]}),Ads:()=>e.jsx("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})}),Agent:()=>e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M12 2a5 5 0 0 1 5 5v3a5 5 0 0 1-10 0V7a5 5 0 0 1 5-5z"}),e.jsx("path",{d:"M9 17v1a3 3 0 0 0 6 0v-1"}),e.jsx("path",{d:"M3 12h1m16 0h1M12 22v-2"}),e.jsx("circle",{cx:"9",cy:"9",r:"1",fill:"currentColor"}),e.jsx("circle",{cx:"15",cy:"9",r:"1",fill:"currentColor"})]}),HRPeople:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"}),e.jsx("circle",{cx:"9",cy:"7",r:"4"}),e.jsx("path",{d:"M23 21v-2a4 4 0 0 0-3-3.87"}),e.jsx("path",{d:"M16 3.13a4 4 0 0 1 0 7.75"})]}),HRClock:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("polyline",{points:"12 6 12 12 16 14"})]}),HRCalendar:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),e.jsx("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),e.jsx("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),e.jsx("line",{x1:"3",y1:"10",x2:"21",y2:"10"}),e.jsx("path",{d:"M8 14h2v2H8zm4 0h2v2h-2zm4 0h2v2h-2z"})]}),HRPayroll:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("line",{x1:"12",y1:"1",x2:"12",y2:"23"}),e.jsx("path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"})]}),HRPerformance:()=>e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"})}),HROnboarding:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M9 11l3 3L22 4"}),e.jsx("path",{d:"M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"})]}),HRDocuments:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),e.jsx("polyline",{points:"14 2 14 8 20 8"}),e.jsx("line",{x1:"16",y1:"13",x2:"8",y2:"13"}),e.jsx("line",{x1:"16",y1:"17",x2:"8",y2:"17"}),e.jsx("line",{x1:"10",y1:"9",x2:"8",y2:"9"})]}),HRRecruiting:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"}),e.jsx("circle",{cx:"9",cy:"7",r:"4"}),e.jsx("line",{x1:"19",y1:"8",x2:"19",y2:"14"}),e.jsx("line",{x1:"22",y1:"11",x2:"16",y2:"11"})]}),HRMe:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),e.jsx("polyline",{points:"9 22 9 12 15 12 15 22"})]}),HROrgTree:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"9",y:"2",width:"6",height:"6",rx:"1"}),e.jsx("rect",{x:"2",y:"16",width:"6",height:"6",rx:"1"}),e.jsx("rect",{x:"16",y:"16",width:"6",height:"6",rx:"1"}),e.jsx("path",{d:"M12 8v4M5 16v-2h14v2"})]}),HRApprovals:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("polyline",{points:"20 6 9 17 4 12"}),e.jsx("path",{d:"M22 12c0 5.5-4.5 10-10 10S2 17.5 2 12 6.5 2 12 2"})]}),BookOpen:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"}),e.jsx("path",{d:"M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"})]}),Invoice:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),e.jsx("polyline",{points:"14 2 14 8 20 8"}),e.jsx("path",{d:"M14 13.5h-3.25a1.25 1.25 0 0 0 0 2.5h2a1.25 1.25 0 0 1 0 2.5H9.5"}),e.jsx("line",{x1:"11.75",y1:"12.5",x2:"11.75",y2:"13.5"}),e.jsx("line",{x1:"11.75",y1:"18.5",x2:"11.75",y2:"19.5"})]}),Bill:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M5 2v20l3-2 3 2 3-2 3 2 3-2V2"}),e.jsx("line",{x1:"9",y1:"8",x2:"15",y2:"8"}),e.jsx("line",{x1:"9",y1:"12",x2:"15",y2:"12"}),e.jsx("line",{x1:"9",y1:"16",x2:"13",y2:"16"})]}),Payments:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"2",y:"6",width:"20",height:"12",rx:"2"}),e.jsx("line",{x1:"2",y1:"10",x2:"22",y2:"10"}),e.jsx("line",{x1:"6",y1:"14",x2:"10",y2:"14"})]}),Banking:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("polygon",{points:"12 2 22 8 2 8 12 2"}),e.jsx("line",{x1:"5",y1:"11",x2:"5",y2:"18"}),e.jsx("line",{x1:"10",y1:"11",x2:"10",y2:"18"}),e.jsx("line",{x1:"14",y1:"11",x2:"14",y2:"18"}),e.jsx("line",{x1:"19",y1:"11",x2:"19",y2:"18"}),e.jsx("line",{x1:"2",y1:"21",x2:"22",y2:"21"})]}),Accounts:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),e.jsx("line",{x1:"3",y1:"9",x2:"21",y2:"9"}),e.jsx("line",{x1:"9",y1:"9",x2:"9",y2:"20"})]}),CRMContacts:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"}),e.jsx("circle",{cx:"9",cy:"7",r:"4"}),e.jsx("path",{d:"M22 21v-2a4 4 0 0 0-3-3.87"}),e.jsx("path",{d:"M16 3.13a4 4 0 0 1 0 7.75"})]}),CRMCompanies:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"4",y:"3",width:"16",height:"18",rx:"2"}),e.jsx("line",{x1:"9",y1:"8",x2:"15",y2:"8"}),e.jsx("line",{x1:"9",y1:"12",x2:"15",y2:"12"}),e.jsx("line",{x1:"9",y1:"16",x2:"13",y2:"16"})]}),CRMLeads:()=>e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M12 2l2.39 4.84L20 8l-4 3.9.94 5.5L12 14.77 7.06 17.4 8 11.9 4 8l5.61-1.16L12 2z"})}),CRMDeals:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M3 3v18h18"}),e.jsx("path",{d:"M7 14l4-4 3 3 5-5"}),e.jsx("polyline",{points:"14 8 19 8 19 13"})]}),CRMActivities:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("polyline",{points:"12 6 12 12 16 14"})]}),Folder:()=>e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"})}),Project:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),e.jsx("line",{x1:"3",y1:"9",x2:"21",y2:"9"}),e.jsx("rect",{x:"6",y:"12",width:"9",height:"2.2",rx:"1"}),e.jsx("rect",{x:"6",y:"16",width:"6",height:"2.2",rx:"1"})]}),List:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("line",{x1:"8",y1:"6",x2:"21",y2:"6"}),e.jsx("line",{x1:"8",y1:"12",x2:"21",y2:"12"}),e.jsx("line",{x1:"8",y1:"18",x2:"21",y2:"18"}),e.jsx("circle",{cx:"4",cy:"6",r:"1.4"}),e.jsx("circle",{cx:"4",cy:"12",r:"1.4"}),e.jsx("circle",{cx:"4",cy:"18",r:"1.4"})]}),Board:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"4",width:"6",height:"16",rx:"1.5"}),e.jsx("rect",{x:"11",y:"4",width:"6",height:"10",rx:"1.5"}),e.jsx("rect",{x:"19",y:"4",width:"2",height:"6",rx:"1"})]}),Automation:()=>e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M13 2L4 14h7l-1 8 9-12h-7z"})}),Clock:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"9"}),e.jsx("polyline",{points:"12 7 12 12 15.5 14"})]}),Approve:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M21 11.5a8.5 8.5 0 1 1-3.5-6.85"}),e.jsx("polyline",{points:"9 11 12 14 21 5"})]}),Chart:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M3 3v18h18"}),e.jsx("path",{d:"M7 15l4-4 3 3 6-7"})]}),Box:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"}),e.jsx("polyline",{points:"3.27 6.96 12 12.01 20.73 6.96"}),e.jsx("line",{x1:"12",y1:"22.08",x2:"12",y2:"12"})]}),Truck:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"1",y:"6",
905width:"14",height:"11",rx:"1"}),e.jsx("path",{d:"M15 9h4l3 3v5h-7z"}),e.jsx("circle",{cx:"6",cy:"19",r:"2"}),e.jsx("circle",{cx:"18",cy:"19",r:"2"})]}),Warehouse:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M3 21V9l9-5 9 5v12"}),e.jsx("path",{d:"M7 21v-7h10v7"}),e.jsx("line",{x1:"7",y1:"17",x2:"17",y2:"17"})]}),Layers:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("polygon",{points:"12 2 2 7 12 12 22 7 12 2"}),e.jsx("polyline",{points:"2 17 12 22 22 17"}),e.jsx("polyline",{points:"2 12 12 17 22 12"})]}),TrendingUp:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("polyline",{points:"23 6 13.5 15.5 8.5 10.5 1 18"}),e.jsx("polyline",{points:"17 6 23 6 23 12"})]}),Cog:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"3"}),e.jsx("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"})]}),Calendar:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),e.jsx("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),e.jsx("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),e.jsx("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]}),ShoppingCart:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"9",cy:"21",r:"1"}),e.jsx("circle",{cx:"20",cy:"21",r:"1"}),e.jsx("path",{d:"M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"})]}),Send:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("line",{x1:"22",y1:"2",x2:"11",y2:"13"}),e.jsx("polygon",{points:"22 2 15 22 11 13 2 9 22 2"})]}),FileText:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),e.jsx("polyline",{points:"14 2 14 8 20 8"}),e.jsx("line",{x1:"16",y1:"13",x2:"8",y2:"13"}),e.jsx("line",{x1:"16",y1:"17",x2:"8",y2:"17"}),e.jsx("polyline",{points:"10 9 9 9 8 9"})]}),GitBranch:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("line",{x1:"6",y1:"3",x2:"6",y2:"15"}),e.jsx("circle",{cx:"18",cy:"6",r:"3"}),e.jsx("circle",{cx:"6",cy:"18",r:"3"}),e.jsx("path",{d:"M18 9a9 9 0 0 1-9 9"})]}),AlertTriangle:()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"}),e.jsx("line",{x1:"12",y1:"9",x2:"12",y2:"13"}),e.jsx("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})]})},dt=en.map(t=>({...t,Icon:ae[t.icon]||ae.Dashboard}));function cn(t=""){return t.split(/\s+/).slice(0,2).map(r=>r[0]||"").join("").toUpperCase()||"U"}const Ut=i.createContext(!1),qt=i.createContext(()=>{});function dn({title:t,children:r}){var jt,St;const{user:o,logout:n,hasPermission:s,orgSlug:a,permissions:l,enabledProducts:d}=Me(),{dark:c,toggle:f}=sn(),{workspaceId:p,workspaceName:u,workspaces:v,setWorkspace:h}=nn(),x=Ie(),b=Ye(),[j,E]=i.useState(!1),[A,z]=i.useState(!1),[L,R]=i.useState(!1),[w,g]=i.useState(!1),[k,P]=i.useState(!1),[y,M]=i.useState(0),[B,I]=i.useState({current:"",next:"",confirm:""}),[D,G]=i.useState(""),[_,N]=i.useState(!1),[be,Y]=i.useState(!1),ue=i.useRef(null),ye=i.useRef(null),Qe=i.useRef(null);i.useEffect(()=>{function S(T){ye.current&&!ye.current.contains(T.target)&&z(!1)}
905return document.addEventListener("mousedown",S),()=>document.removeEventListener("mousedown",S)},[]),i.useEffect(()=>{let S=!1;return fetch("/api/feedback/unread-count",{credentials:"include"}).then(T=>T.ok?T.json():{count:0}).then(T=>{S||M(Number((T==null?void 0:T.count)||0))}).catch(()=>{}),()=>{S=!0}},[]),i.useEffect(()=>{function S(){fetch("/api/feedback/unread-count",{credentials:"include"}).then(T=>T.ok?T.json():{count:0}).then(T=>M(Number((T==null?void 0:T.count)||0))).catch(()=>{})}return Ze(T=>{((T==null?void 0:T.event)==="feedback-updated"||(T==null?void 0:T.event)==="feedback-read")&&S()})},[]),i.useEffect(()=>{k||fetch("/api/feedback/unread-count",{credentials:"include"}).then(S=>S.ok?S.json():{count:0}).then(S=>M(Number((S==null?void 0:S.count)||0))).catch(()=>{})},[k]),i.useEffect(()=>{function S(T){Qe.current&&!Qe.current.contains(T.target)&&R(!1)}return document.addEventListener("mousedown",S),()=>document.removeEventListener("mousedown",S)},[]);const ve=i.useMemo(()=>Uo(x.pathname),[x.pathname]),wt=i.useMemo(()=>(d||[]).filter(S=>on.includes(S)?dt.some(T=>T.product===S&&(!T.perm||s(T.perm))):!1),[d,s]),Mr=i.useMemo(()=>wt.map(S=>Bt(S)),[wt]);i.useEffect(()=>{Pt(ve)},[ve]);const et=dt.filter(({perm:S,product:T})=>T===ve&&(!S||s(S))),tt=(o==null?void 0:o.display_name)||(o==null?void 0:o.name)||((jt=o==null?void 0:o.email)==null?void 0:jt.split("@")[0])||"User",kt=cn(tt),Tr=et.length>0?et[0].to:"/dashboard/settings",rt=Bt(ve),Br=c?{"--bg":"#04070f","--bg2":"#080c18","--surface":"rgba(255,255,255,0.03)","--surface2":"rgba(255,255,255,0.06)","--border":"rgba(255,255,255,0.07)","--input-bg":"rgba(255,255,255,0.08)","--input-border":"rgba(255,255,255,0.15)","--text":"#dde6f0","--text2":"#94a3b8","--text3":"#8090a4","--accent":"#2dd4bf","--accent2":"#818cf8","--active-bg":"rgba(45,212,191,0.1)","--card":"rgba(255,255,255,0.025)","--card-hover":"rgba(255,255,255,0.04)"}:{"--bg":"#f4f5f7","--bg2":"#f8fafc","--surface":"#ffffff","--surface2":"#f1f5f9","--border":"rgba(0,0,0,0.08)","--input-bg":"#ffffff","--input-border":"rgba(0,0,0,0.12)","--text":"#0f172a","--text2":"#475569","--text3":"#5b6776","--accent":"#4f46e5","--accent2":"#818cf8","--active-bg":"rgba(79,70,229,0.08)","--card":"#ffffff","--card-hover":"#f8fafc"};return i.useEffect(()=>{function S(T){ue.current&&!ue.current.contains(T.target)&&E(!1)}return document.addEventListener("mousedown",S),()=>document.removeEventListener("mousedown",S)},[]),e.jsxs(e.Fragment,{children:[e.jsx("a",{href:"#al-content",className:"skip-to-content",children:"Skip to content"}),e.jsxs("div",{style:{...Br,display:"flex",height:"100vh",overflow:"hidden",background:"var(--bg)",color:"var(--text)",fontFamily:"'Sora','DM Sans',system-ui,sans-serif",fontSize:14,transition:"background .3s, color .3s"},children:[e.jsx("style",{children:` 906 @import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700&display=swap'); 907 @keyframes al-spin { to { transform: rotate(360deg); } }
908 /* Used by tables/lists (Settings, Users, Workspaces, etc.) to render 909 shimmering skeleton rows during initial fetch instead of flashing 910 a misleading "no data yet" empty state. */ 911 @keyframes skel-pulse { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } } 912 *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } 913 ::-webkit-scrollbar { width: 5px; height: 5px; } 914 ::-webkit-scrollbar-track { background: transparent; } 915 ::-webkit-scrollbar-thumb { background: var(--border); border-radius: 10px; } 916 917 .al-nav-btn { 918 width: 44px; height: 44px; border-radius: 9px; 919 display: flex; align-items: center; justify-content: center; 920 cursor: pointer; transition: all .15s; 921 color: #475569; border: none; background: none; 922 text-decoration: none; position: relative; 923 } 924 .al-nav-btn:hover { background: var(--surface2); color: var(--text); } 925 .al-nav-btn.active { background: var(--active-bg); color: var(--accent); } 926 /* Narrow icon rail. Intentionally NOT overflow: hidden/clip â 927 those clip the hover tooltip (.al-tip) that pops out to the 928 right of each icon. The rail has a fixed 56px width and its 929 icons stack vertically inside, so no scrollbars appear in
930 practice. overscroll-behavior: none + touch-action: none 931 still kill mobile scroll bounce without needing overflow. */ 932 .al-side-rail { overflow: visible; overscroll-behavior: none; touch-action: none; } 933 .al-side-rail, .al-side-rail * { scrollbar-width: none; -ms-overflow-style: none; } 934 .al-side-rail::-webkit-scrollbar, 935 .al-side-rail *::-webkit-scrollbar { display: none; width: 0 !important; height: 0 !important; } 936 .al-side-nav-list { overflow: visible; overscroll-behavior: none; } 937 938 .al-nav-btn .al-tip { 939 position: absolute; left: calc(100% + 12px); top: 50%; 940 transform: translateY(-50%) translateX(-4px); 941 background: #1e293b; color: #f8fafc; 942 font-size: 11.5px; font-weight: 600; padding: 6px 11px; 943 border-radius: 6px; white-space: nowrap; 944 pointer-events: none; opacity: 0; 945 transition: opacity .14s ease, transform .14s ease; 946 transition-delay: .04s; 947 z-index: 9999; 948 box-shadow: 0 6px 18px rgba(15,23,42,.18); 949 } 950 .al-nav-btn .al-tip::before { 951 content: ''; position: absolute; right: 100%; top: 50%; 952 transform: translateY(-50%); 953 border: 5px solid transparent; border-right-color: #1e293b; 954 } 955 .al-nav-btn:hover .al-tip, 956 .al-nav-btn:focus-visible .al-tip { opacity: 1; transform: translateY(-50%) translateX(0); } 957 958 .al-icon-btn { 959 width: 36px; height: 36px; border-radius: 8px; 960 border: 1px solid var(--border); background: none; cursor: pointer; 961 display: flex; align-items: center; justify-content: center; 962 color: #475569; transition: all .12s; 963 } 964 .al-icon-btn:hover { background: var(--surface2); } 965 966 .al-user-btn { 967 display: flex; align-items: center; gap: 7px; 968 padding: 6px 12px 6px 7px; min-height: 36px; 969 border: 1px solid var(--border); border-radius: 8px; 970 background: none; cursor: pointer; font-family: inherit; 971 transition: all .12s; 972 } 973 .al-user-btn:hover { background: var(--surface2); border-color: #cbd5e1; } 974 975 .al-dd-item { 976 display: flex; align-items: center; gap: 9px; 977 width: 100%; padding: 9px 14px; 978 border: none; background: none; 979 font-family: inherit; font-size: 12px; font-weight: 500; 980 color: var(--text2); cursor: pointer; 981 transition: background .1s; text-align: left; 982 } 983 .al-dd-item:hover { background: var(--surface2); color: var(--text); } 984 .al-dd-danger { color: #dc2626 !important; } 985 .al-dd-danger:hover { background: #fef2f2 !important; color: #dc2626 !important; } 986 987 .al-page-body { flex: 1; overflow-y: auto; padding: 0; } 988 .al-page-body::-webkit-scrollbar { width: 5px; } 989 .al-page-body::-webkit-scrollbar-thumb { background: var(--border); border-radius: 10px; } 990 991 /* ââ Legacy utility classes ââ */ 992 .card { background: var(--card); border: 1px solid var(--border); border-radius: 14px; transition: background .2s, border-color .2s; } 993 .stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 24px; } 994 .stat-card { background: var(--card); border: 1px solid var(--border); border-radius: 14px; padding: 20px 24px; } 995 .stat-label { font-size: 12px; color: var(--text3); font-weight: 500; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 8px; } 996 .stat-value { font-size: 36px; font-weight: 700; color: var(--text); letter-spacing: -.03em; line-height: 1; } 997 .stat-change { font-size: 11px; color: var(--accent); margin-top: 6px; font-weight: 500; } 998 999 .form-input { width: 100%; background: var(--input-bg); border: 1px solid var(--input-border); border-radius: 9px; padding: 10px 14px; color: var(--text); font-size: 14px; font-family: inherit; outline: none; transition: border-color .2s; } 1000 .form-input:focus { border-color: var(--accent); } 1001 .form-input::placeholder { color: var(--text3); } 1002 .form-label { font-size: 11px; font-weight: 600; color: var(--text3); text-transform: uppercase; letter-spacing: .06em; margin-bottom: 6px; display: block; } 1003 .form-select { width: 100%; background: var(--surface); border: 1px solid var(--border); border-radius: 9px; padding: 10px 14px; color: var(--text); font-size: 14px; font-family: inherit; outline: none; cursor: pointer; } 1004 1005 .btn-primary { display: inline-flex; align-items: center; gap: 6px; background: linear-gradient(135deg, var(--accent), var(--accent2)); color: #fff; border: none; border-radius: 9px; padding: 10px 20px; font-size: 13.5px; font-weight: 700; font-family: inherit; cursor: pointer; transition: all .2s; letter-spacing: -.01em; } 1006 .btn-primary:hover { opacity: .9; transform: translateY(-1px); } 1007 .btn-primary:disabled { opacity: .5;
1007 cursor: not-allowed; transform: none; } 1008 .btn-secondary { display: inline-flex; align-items: center; gap: 6px; background: var(--surface2); color: var(--text2); border: 1px solid var(--border); border-radius: 9px; padding: 9px 18px; font-size: 13.5px; font-weight: 500; font-family: inherit; cursor: pointer; transition: all .15s; } 1009 .btn-secondary:hover { background: var(--surface); color: var(--text); } 1010 .btn-danger { display: inline-flex; align-items: center; gap: 6px; background: rgba(239,68,68,.1); color: #f87171; border: 1px solid rgba(239,68,68,.2); border-radius: 9px; padding: 7px 14px; font-size: 12.5px; font-weight: 500; font-family: inherit; cursor: pointer; transition: all .15s; } 1011 .btn-danger:hover { background: rgba(239,68,68,.18); } 1012 1013 .table { width: 100%; border-collapse: collapse; font-size: 13.5px; } 1014 .th { text-align: left; padding: 12px 16px; font-size: 11px; font-weight: 600; color: var(--text3); text-transform: uppercase; letter-spacing: .06em; border-bottom: 1px solid var(--border); } 1015 .td { padding: 14px 16px; border-bottom: 1px solid var(--border); color: var(--text); vertical-align: middle; } 1016 .tr:last-child .td { border-bottom: none; } 1017 .tr:hover .td { background: var(--surface2); } 1018 1019 .pill { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 100px; font-size: 11px; font-weight: 600; } 1020 .pill-green { background: rgba(34,197,94,.1); color: #22c55e; } 1021 .pill-red { background: rgba(239,68,68,.1); color: #f87171; } 1022 .pill-yellow { background: rgba(234,179,8,.1); color: #eab308; } 1023 .pill-blue { background: rgba(99,102,241,.1); color: #818cf8; } 1024 .pill-gray { background: var(--surface2); color: var(--text3); } 1025 1026 .alert-error { background: rgba(239,68,68,.08); border: 1px solid rgba(239,68,68,.18); border-radius: 10px; padding: 12px 16px; font-size: 13px; color: #f87171; } 1027 .alert-success { background: rgba(34,197,94,.08); border: 1px solid rgba(34,197,94,.18); border-radius: 10px; padding: 12px 16px; font-size: 13px; color: #4ade80; } 1028 1029 .section-title { font-size: 16px; font-weight: 700; color: var(--text); letter-spacing: -.02em; margin-bottom: 4px; } 1030 .section-sub { font-size: 13px; color: var(--text3); margin-bottom: 20px; } 1031 1032 .tabs { display: flex; gap: 4px; border-bottom: 1px solid var(--border); padding-bottom: 0; margin-bottom: 24px; } 1033 .tab-btn { background: none; border: none; border-bottom: 2px solid transparent; padding: 8px 16px; font-family: inherit; font-size: 13.5px; font-weight: 500; color: var(--text3); cursor: pointer; transition: all .15s; margin-bottom: -1px; } 1034 .tab-btn:hover { color: var(--text); } 1035 .tab-btn.active { color: var(--accent); border-bottom-color: var(--accent); font-weight: 600; } 1036 1037 @media(max-width: 768px) { .al-page-body { padding: 0; } } 1038 `}),e.jsxs("nav",{className:"al-side-rail",style:{width:64,flexShrink:0,background:c?"#080c18":"#f8fafc",borderRight:"1px solid var(--border)",display:"flex",flexDirection:"column",alignItems:"center",height:"100vh",zIndex:10},children:[e.jsx(q,{to:Tr,style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 0",borderBottom:"1px solid var(--border)",minHeight:64,textDecoration:"none"},children:e.jsx("div",{style:{width:32,height:32,borderRadius:9,background:"linear-gradient(135deg, #0d9488, #6366f1)",display:"flex",alignItems:"center",justifyContent:"center",boxShadow:"0 6px 16px rgba(13,148,136,.30), inset 0 -1px 0 rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.18)"},children:e.jsx(me,{size:19})})}),e.jsx("div",{className:"al-side-nav-list",style:{flex:1,padding:"12px 8px",minHeight:0,display:"flex",flexDirection:"column",gap:2,width:"100%",alignItems:"center"},children:et.map(({to:S,label:T,Icon:le})=>e.jsxs(Nr,{to:S,end:S==="/dashboard"||S==="/dashboard/outreach",className:({isActive:X})=>`al-nav-btn${X?" active":""}`,children:[e.jsx(le,{}),e.jsx("span",{className:"al-tip",children:T})]},S))}),e.jsx("div",{style:{padding:"12px 8px",borderTop:"1px solid var(--border)",width:"100%",display:"flex",flexDirection:"column",alignItems:"center",gap:6},children:e.jsx("button",{className:"al-icon-btn",onClick:f,title:c?"Switch to light mode":"Switch to dark mode","aria-label":c?"Switch to light mode":"Switch to dark mode",children:c?e.jsx(ae.Sun,{}):e.jsx(ae.Moon,{})})})]}),e.jsxs("div",{id:"al-content",style:{flex:1,display:"flex",flexDirection:"column",minWidth:0,height:"100vh",overflow:"hidden"},children:[e.jsxs("header",{style:{height:50,flexShrink:0,background:"var(--surface)",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 24px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:14},children:[e.jsxs("div",{ref:Qe,style:{position:"relative"},children:[e.jsxs("button",{onClick:()=>R(S=>!S),style:{display:"flex",alignItems:"center",gap:8,padding:"6px 10px",borderRadius:10,border:"1px solid var(--border)",background:"var(--surface2)",color:"var(--text)",cursor:"pointer",fontFamily:"inherit",fontSize:12,fontWeight:700},children:[e.jsx(We,{name:rt.shortLabel||rt.label,size:24}),e.jsx("span",{children:rt.label}),e.jsx("svg",{width:"9",height:"9",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",style:{transform:L?"rotate(180deg)":"none",transition:"transform .15s"},children:e.jsx("polyline",{points:"6 9 12 15 18 9"})})]}),L&&e.jsxs("div",{style:{position:"absolute",top:"calc(100% + 8px)",left:0,minWidth:260,background:"var(--surface)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 12px 28px rgba(0,0,0,.14)",zIndex:300,overflow:"hidden"},children:[e.jsx("div",{style:{padding:"10px 14px 6px",fontSize:9,fontWeight:700,color:"var(--text3)",textTransform:"uppercase",letterSpacing:".08em"},children:"Products"}),Mr.map(S=>{const T=S.id===ve,le=dt.find(X=>X.product===S.id&&(!X.perm||s(X.perm)));return e.jsxs("button",{onClick:()=>{le&&(Pt(S.id),R(!1),b(le.to))},style:{width:"100%",padding:"10px 14px",textAlign:"left",background:T?"rgba(99,102,241,.08)":"none",border:"none",cursor:le?"pointer":"not-allowed",fontSize:12,fontFamily:"inherit",color:T?"var(--accent)":"var(--text)",display:"flex",alignItems:"center",gap:10,opacity:le?1:.5},children:[e.jsx(We,{name:S.shortLabel||S.label,size:26}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx("div",{style:{fontWeight:700},children:S.label}
1038),e.jsx("div",{style:{fontSize:10,color:"var(--text3)",marginTop:1},children:rn(S.id)})]})]},S.id)}),e.jsxs("div",{style:{borderTop:"1px solid var(--border)",marginTop:4},children:[e.jsx("div",{style:{padding:"10px 14px 6px",fontSize:9,fontWeight:700,color:"var(--text3)",textTransform:"uppercase",letterSpacing:".08em"},children:"Productivity · external"}),e.jsxs("a",{href:`https://notesy.beetlai.com/login${o!=null&&o.email?`?email_hint=${encodeURIComponent(o.email)}`:""}`,target:"_blank",rel:"noopener noreferrer",onClick:()=>R(!1),style:{width:"100%",padding:"10px 14px",textAlign:"left",background:"none",border:"none",cursor:"pointer",fontSize:12,fontFamily:"inherit",color:"var(--text)",textDecoration:"none",display:"flex",alignItems:"center",gap:10},children:[e.jsx(We,{name:"Notesy",size:26}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsxs("div",{style:{fontWeight:700,display:"flex",alignItems:"center",gap:6},children:["Notesy",e.jsx("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5","aria-hidden":"true",children:e.jsx("path",{d:"M7 17L17 7M9 7h8v8"})})]}),e.jsx("div",{style:{fontSize:10,color:"var(--text3)",marginTop:1},children:"AI notes for every meeting â separate signup"})]})]})]})]})]}),t&&e.jsx("h1",{style:{fontSize:15,fontWeight:700,color:"var(--text)",letterSpacing:"-.02em",margin:0},children:t})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[v.length>0&&e.jsxs("div",{ref:ye,style:{position:"relative"},children:[e.jsxs("button",{onClick:()=>z(S=>!S),"aria-haspopup":"menu","aria-expanded":A,style:{display:"flex",alignItems:"center",gap:6,padding:"8px 12px 8px 10px",minHeight:36,borderRadius:8,fontSize:12,fontWeight:600,background:p?"rgba(99,102,241,.1)":"var(--surface2)",border:p?"1px solid rgba(99,102,241,.3)":"1px solid var(--border)",color:p?"var(--accent)":"var(--text2)",cursor:"pointer",fontFamily:"inherit",transition:"all .12s"},children:[p&&e.jsx("div",{style:{width:8,height:8,borderRadius:"50%",background:((St=v.find(S=>S.id===p))==null?void 0:St.color)||"var(--accent)",flexShrink:0}}),!p&&e.jsxs("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[e.jsx("path",{d:"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),e.jsx("polyline",{points:"9 22 9 12 15 12 15 22"})]}),e.jsx("span",{children:p?u:"All Clients"}),e.jsx("svg",{width:"9",height:"9",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",style:{transform:A?"rotate(180deg)":"none",transition:"transform .15s",marginLeft:1},children:e.jsx("polyline",{points:"6 9 12 15 18 9"})})]}),A&&e.jsxs("div",{style:{position:"absolute",top:"calc(100% + 6px)",left:0,minWidth:220,background:"var(--surface)",border:"1px solid var(--border)",borderRadius:10,boxShadow:"0 8px 24px rgba(0,0,0,.14)",zIndex:300,overflow:"hidden"},children:[e.jsx("div",{style:{padding:"10px 14px 6px",fontSize:9,fontWeight:700,color:"var(--text3)",textTransform:"uppercase",letterSpacing:".08em"},children:"Switch Organization"}),e.jsxs("button",{onClick:()=>{h(null),z(!1)},style:{width:"100%",padding:"9px 14px",textAlign:"left",background:p?"none":"rgba(99,102,241,.08)",border:"none",cursor:"pointer",fontSize:12,fontWeight:p?400:700,color:p?"var(--text2)":"var(--accent)",fontFamily:"inherit",display:"flex",alignItems:"center",gap:8},children:[e.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[e.jsx("path",{d:"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),e.jsx("polyline",{points:"9 22 9 12 15 12 15 22"})]}),"All Clients",!p&&e.jsx("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",style:{marginLeft:"auto"},children:e.jsx("polyline",{points:"20 6 9 17 4 12"})})]}),e.jsx("div",{style:{height:1,background:"var(--border)",margin:"2px 0"}}),v.map(S=>e.jsxs("button",{onClick:()=>{h(S),z(!1)},style:{width:"100%",padding:"9px 14px",textAlign:"left",background:p===S.id?"rgba(99,102,241,.08)":"none",border:"none",cursor:"pointer",fontSize:12,fontWeight:p===S.id?700:400,color:p===S.id?"var(--accent)":"var(--text)",fontFamily:"inherit",display:"flex",alignItems:"center",gap:8},children:[e.jsx("div",{style:{width:8,height:8,borderRadius:"50%",background:S.color||"var(--accent)",flexShrink:0}}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:S.name}
1038),S.client_name&&e.jsx("div",{style:{fontSize:10,color:"var(--text3)",marginTop:1},children:S.client_name})]}),p===S.id&&e.jsx("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",style:{flexShrink:0},children:e.jsx("polyline",{points:"20 6 9 17 4 12"})})]},S.id)),e.jsx("div",{style:{height:1,background:"var(--border)",margin:"4px 0"}}),e.jsx(q,{to:"/dashboard/settings?tab=workspaces",onClick:()=>z(!1),style:{textDecoration:"none"},children:e.jsx("button",{style:{width:"100%",padding:"8px 14px",textAlign:"left",background:"none",border:"none",cursor:"pointer",fontSize:11,color:"var(--accent)",fontFamily:"inherit",fontWeight:600},children:"+ Manage workspaces"})})]})]}),e.jsxs("button",{onClick:()=>P(!0),title:y>0?`Support â ${y} new repl${y===1?"y":"ies"}`:"Send feedback or report a bug",style:{position:"relative",display:"inline-flex",alignItems:"center",gap:5,padding:"8px 12px",minHeight:36,borderRadius:8,border:y>0?"1px solid #ef4444":"1px solid rgba(99,102,241,.35)",background:y>0?"rgba(239,68,68,.08)":"rgba(99,102,241,.08)",color:y>0?"#dc2626":"#4f46e5",cursor:"pointer",fontFamily:"inherit",fontSize:12,fontWeight:600,transition:"all .12s"},children:[e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"})}),"Support",y>0&&e.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:18,height:16,padding:"0 5px",borderRadius:10,background:"#ef4444",color:"#fff",fontSize:10,fontWeight:800,marginLeft:2},children:y>99?"99+":y})]}),e.jsxs("div",{ref:ue,style:{position:"relative"},children:[e.jsxs("button",{className:"al-user-btn",onClick:()=>E(S=>!S),children:[e.jsx("div",{style:{width:26,height:26,borderRadius:7,background:"linear-gradient(135deg, #0d9488, #6366f1)",color:"#fff",fontWeight:700,fontSize:11,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:kt}),e.jsx("span",{style:{fontSize:12,fontWeight:600,color:"var(--text)"},children:tt}),e.jsx("div",{style:{color:"var(--text3)",transform:j?"rotate(180deg)":"none",transition:"transform .15s"},children:e.jsx(ae.Chevron,{})})]}),j&&e.jsxs("div",{style:{position:"absolute",top:"calc(100% + 8px)",right:0,width:240,background:"var(--surface)",border:"1px solid var(--border)",borderRadius:10,boxShadow:"0 8px 24px rgba(0,0,0,.12)",zIndex:200,overflow:"hidden"},children:[e.jsxs("div",{style:{padding:"10px 14px 8px",borderBottom:"1px solid var(--border)",background:"var(--surface2)"},children:[e.jsx("div",{style:{fontSize:9,fontWeight:700,color:"var(--text3)",textTransform:"uppercase",letterSpacing:".07em",marginBottom:7},children:"Organization"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(We,{name:(o==null?void 0:o.org_name)||(o==null?void 0:o.org)||a||"BeetlAI",size:30}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx("div",{style:{fontSize:12,fontWeight:700,color:"var(--text)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:(o==null?void 0:o.org_name)||(o==null?void 0:o.org)||a||"My Workspace"}),e.jsx("div",{style:{fontSize:10,color:"var(--accent)",fontWeight:600,marginTop:1},children:o!=null&&o.plan?`${o.plan} Plan`:"Active"})]})]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"10px 14px"},children:[e.jsx("div",{style:{width:34,height:34,borderRadius:8,background:"linear-gradient(135deg, #0d9488, #6366f1)",color:"#fff",fontWeight:700,fontSize:13,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:kt}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx("div",{style:{fontSize:13,fontWeight:700,color:"var(--text)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:tt}),e.jsx("div",{style:{fontSize:11,color:"var(--text3)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:(o==null?void 0:o.email)||""})]})]}),e.jsx("div",{style:{height:1,background:"var(--border)",margin:"2px 0"}}),e.jsx(q,{to:"/dashboard/settings",style:{textDecoration:"none"},onClick:()=>E(!1),children:e.jsxs("button",{className:"al-dd-item",children:[e.jsx(ae.User,{})," Account settings"]})}),e.jsxs("button",{className:"al-dd-item",onClick:()=>{g(!0),E(!1),I({current:"",next:"",confirm:""}),G(""),Y(!1)},children:[e.jsx(ae.Lock,{})," Change password"]}),(o==null?void 0:o.plan)!=="max"&&e.jsx(q,{to:"/dashboard/upgrade",style:{textDecoration:"none"},onClick:()=>E(!1),children:e.jsx("button",{className:"al-dd-item",style:{color:"var(--accent)"},children:"⬠Upgrade plan"})}),e.jsx("div",{style:{height:1,background:"var(--border)",margin:"2px 0"}}),e.jsxs("button",{className:"al-dd-item al-dd-danger",onClick:n,children:[e.jsx(ae.SignOut,{})," Sign out"]})]})]})]})]}),e.jsx("div",{className:"al-page-body",children:r})]})]}),w&&e.jsx("div",{onClick:S=>{S.target===S.currentTarget&&g(!1)},style:{position:"fixed",inset:0,zIndex:9999,background:"rgba(0,0,0,0.55)",backdropFilter:"blur(3px)",display:"flex",alignItems:"center",justifyContent:"center",padding:16},children:e.jsxs("div",{style:{background:"var(--surface)",borderRadius:14,border:"1px solid var(--border)",width:"100%",maxWidth:380,boxSh
1038adow:"0 24px 60px rgba(0,0,0,.25)",overflow:"hidden"},children:[e.jsxs("div",{style:{padding:"18px 20px 14px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",gap:10},children:[e.jsx("div",{style:{width:32,height:32,borderRadius:8,flexShrink:0,background:"var(--accent-lt, #eef2ff)",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--accent)"},children:e.jsx(ae.Lock,{})}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:700,color:"var(--text)"},children:"Change Password"}),e.jsx("div",{style:{fontSize:11,color:"var(--text3)",marginTop:1},children:"Update your account password"})]}),e.jsx("button",{onClick:()=>g(!1),style:{marginLeft:"auto",width:28,height:28,borderRadius:7,border:"1px solid var(--border)",background:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:14,color:"var(--text3)",flexShrink:0},children:"â"})]}),e.jsxs("div",{style:{padding:"20px 20px 0"},children:[D&&e.jsxs("div",{style:{background:"#fef2f2",border:"1px solid #fecaca",borderRadius:8,padding:"9px 12px",marginBottom:14,display:"flex",alignItems:"center",gap:8,fontSize:12,color:"#dc2626"},children:[e.jsx("span",{style:{fontSize:14},children:"â "})," ",D]}),be&&e.jsxs("div",{style:{background:"#f0fdf4",border:"1px solid #bbf7d0",borderRadius:8,padding:"9px 12px",marginBottom:14,display:"flex",alignItems:"center",gap:8,fontSize:12,color:"#16a34a"},children:[e.jsx("span",{style:{fontSize:14},children:"â"})," Password updated successfully!"]}),[{field:"current",label:"Current password",placeholder:"Enter your current password"},{field:"next",label:"New password",placeholder:"Min 8 characters"},{field:"confirm",label:"Confirm new password",placeholder:"Re-enter new password"}].map(({field:S,label:T,placeholder:le})=>e.jsxs("div",{style:{marginBottom:14},children:[e.jsx("label",{style:{display:"block",fontSize:11,fontWeight:700,color:"var(--text3)",textTransform:"uppercase",letterSpacing:".06em",marginBottom:5},children:T}),e.jsx("input",{type:"password",placeholder:le,value:B[S],onChange:X=>{I(Be=>({...Be,[S]:X.target.value})),G(""),Y(!1)},onKeyDown:X=>{var Be;X.key==="Enter"&&((Be=document.getElementById("al-pw-submit"))==null||Be.click())},style:{width:"100%",padding:"9px 11px",border:"1.5px solid var(--input-border)",borderRadius:8,fontFamily:"inherit",fontSize:13,color:"var(--text)",background:"var(--input-bg)",outline:"none",boxSizing:"border-box",transition:"border-color .15s"},onFocus:X=>X.target.style.borderColor="var(--accent)",onBlur:X=>X.target.style.borderColor="var(--input-border)"})]},S))]}),e.jsxs("div",{style:{padding:"16px 20px 20px",display:"flex",gap:8,justifyContent:"flex-end"},children:[e.jsx("button",{onClick:()=>g(!1),style:{padding:"8px 16px",borderRadius:8,border:"1px solid var(--border)",background:"none",color:"var(--text2)",cursor:"pointer",fontFamily:"inherit",fontSize:13,fontWeight:500},children:"Cancel"}),e.jsx("button",{id:"al-pw-submit",disabled:_,onClick:async()=>{if(G(""),Y(!1),!B.current.trim()){G("Enter your current password.");return}if(B.next.length<8){G("New password must be at least 8 characters.");return}if(B.next!==B.confirm){G("New passwords don't match.");return}N(!0);try{await $("/api/auth/change-password",{method:"POST",body:JSON.stringify({current_password:B.current,new_password:B.next})}),Y(!0),I({current:"",next:"",confirm:""}),setTimeout(()=>g(!1),1800)}catch(S){G((S==null?void 0:S.message)||"Failed to update password. Please try again.")}finally{N(!1)}},style:{padding:"8px 20px",borderRadius:8,border:"none",background:"var(--accent)",color:"#fff",cursor:_?"not-allowed":"pointer",fontFamily:"inherit",fontSize:13,fontWeight:600,opacity:_?.65:1,transition:"opacity .15s",display:"flex",alignItems:"center",gap:6},children:_?e.jsxs(e.Fragment,{children:[e.jsx("span",{style:{width:12,height:12,borderRadius:"50%",border:"2px solid rgba(255,255,255,.3)",borderTopColor:"#fff",animation:"al-spin .6s linear infinite",display:"inline-block"}}),"Updating..."]}):"Update Password"})]})]})}),e.jsx(ho,{open:k,onClose:()=>P(!1)}),e.jsx(vo,{})]})}function pn({title:t,children:r}){const o=i.useContext(Ut),n=i.useContext(qt),[s,a]=i.useState(t||"");return i.useEffect(()=>{o&&t!=null&&n(t)},[o,t,n]),o?e.jsx(e.Fragment,{children:r}):e.jsx(Ut.Provider,{value:!0,children:e.jsx(qt.Provider,{value:a,children:e.jsx(dn,{title:t||s,children:r})})})}const Gt="bai_sid",Yt="/public/track";let he=null,mt=0,Le=0,pe="",Kt=!1;function _r(){return he||(he=sessionStorage.getItem(Gt),he||(he=typeof crypto<"u"&&crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).slice(2)+Date.now().toString(36),sessionStorage.setItem(Gt,he))),he}function un(){const t=new URLSearchParams(window.location.search);return{utm_source:t.get("utm_source")||"",utm_medium:t.get("utm_medium")||"",utm_campaign:t.get("utm_campaign")||""}}const Jt="/public/track-error";function Xt(t,r,o){try{const n=JSON.stringify({session_id:_r(),page:(t==null?void 0:t.page)||pe||"",reason:String(r||"unknown").slice(0,64),detail:String(o||"").slice(0,500)});navigator.sendBeacon?navigator.sendBeacon(Jt,new Blob([n],{type:"application/json"})):fetch(Jt,{method:"POST",body:n,headers:{"Content-Type":"application/json"},keepalive:!0}
1038).catch(()=>{})}catch{}}function bt(t){const r=JSON.stringify({session_id:_r(),...t});let o=!1;try{navigator.sendBeacon&&(o=navigator.sendBeacon(Yt,new Blob([r],{type:"application/json"})))}catch{o=!1}if(!o)try{fetch(Yt,{method:"POST",body:r,headers:{"Content-Type":"application/json"},keepalive:!0}).catch(n=>{Xt(t,"fetch_failed",n&&n.message)})}catch(n){Xt(t,"send_threw",n&&n.message)}}function hn(){const t=window.scrollY+window.innerHeight,r=document.documentElement.scrollHeight;r>0&&(Le=Math.max(Le,Math.round(t/r*100)))}function gn(){Kt||(Kt=!0,window.addEventListener("scroll",hn,{passive:!0}))}function fn(t){var r,o,n,s;pe&&pe!==t&&bt({event:"exit",page:pe,scroll_depth:Le,duration_s:Math.round((Date.now()-mt)/1e3)}),pe=t,mt=Date.now(),Le=0,bt({event:"page_view",page:t,referrer:document.referrer||"",screen:`${((r=window.screen)==null?void 0:r.width)||0}x${((o=window.screen)==null?void 0:o.height)||0}`,tz:((s=(n=Intl==null?void 0:Intl.DateTimeFormat())==null?void 0:n.resolvedOptions())==null?void 0:s.timeZone)||"",...un()})}function Zt(){pe&&bt({event:"exit",page:pe,scroll_depth:Le,duration_s:Math.round((Date.now()-mt)/1e3)})}const Se=[{text:"Beetles are the most successful animal group on Earth â over 350,000 known species and counting.",tag:"diversity"},{text:"Beetles existed long before dinosaurs walked the planet â about 300 million years ago.",tag:"history"},{text:"A dung beetle can pull 1,141 times its own body weight. That's a human dragging six double-decker buses.",tag:"strength"},{text:"The bombardier beetle defends itself by spraying boiling-hot chemicals from its rear. Nature's own pressure cooker.",tag:"defense"},{text:"Dung beetles navigate by the Milky Way. They're the only known insect that uses the galaxy as a compass.",tag:"navigation"},{text:"Ladybugs are beetles. So are fireflies. Once you know, you can't unsee it.",tag:"trivia"},{text:"The Goliath beetle can weigh up to 100 grams â heavier than a stick of butter.",tag:"size"},{text:"Some beetles can survive being run over by a car. Their armored shells are rated to withstand 39,000Ã their body weight.",tag:"resilience"},{text:"Ancient Egyptians revered the scarab beetle as a symbol of rebirth and the sun's daily journey across the sky.",tag:"history"},{text:"Fireflies (yes, beetles) flash in patterns to find mates. Each species has its own signature flash.",tag:"communication"},{text:"Some beetle larvae take seven years to mature. Talk about playing the long game.",tag:"patience"},{text:"Whirligig beetles can swim and fly â and they have two pairs of eyes, one for each medium.",tag:"evolution"},{text:"About one in every four animals on Earth is a beetle. They're nature's quiet majority.",tag:"diversity"},{text:"The titan beetle of the Amazon can grow over 16 cm long â bigger than your hand.",tag:"size"},{text:"Beetles can be found on every continent except Antarctica. Even underwater, deserts, and the Arctic tundra.",tag:"ubiquity"},{text:"Diving beetles carry a personal air bubble underwater â like a built-in scuba tank.",tag:"ingenuity"},{text:"Some species can hibernate frozen solid through winter and wake up perfectly fine in spring.",tag:"resilience"},{text:"Charles Darwin was so obsessed with beetles he once held three live ones in his mouth to free a hand for a fourth.",tag:"history"}];function pt(t){return Se.length?Se[Math.floor(Math.random()*Se.length)]:{text:"",tag:""}}function Cr({size:t=96,color:r="#dc2626",color2:o="#0a0a0a"}){const n=i.useMemo(()=>`b-${Math.random().toString(36).slice(2,10)}`,[]),s=r,a=o;return e.jsxs("svg",{width:t,height:t,viewBox:"0 0 120 120","aria-label":"Loading",children:[e.jsxs("defs",{children:[e.jsxs("radialGradient",{id:`${n}-body`,cx:"0.4",cy:"0.35",children:[e.jsx("stop",{offset:"0%",stopColor:"#ef4444"}),e.jsx("stop",{offset:"100%",stopColor:s})]}),e.jsx("clipPath",{id:`${n}-clip`,children:e.jsxs("rect",{x:"0",width:"120",y:"120",height:"0",children:[e.jsx("animate",{attributeName:"y",from:"120",to:"0",dur:"2.4s",repeatCount:"indefinite"}),e.jsx("animate",{attributeName:"height",from:"0",to:"120",dur:"2.4s",repeatCount:"indef
1038inite"})]})})]}),e.jsxs("g",{stroke:a,strokeWidth:"2.2",strokeLinecap:"round",fill:"none",children:[e.jsx("path",{d:"M50 18 q-4 -6 -10 -8"}),e.jsx("path",{d:"M70 18 q4 -6 10 -8"})]}),e.jsx("circle",{cx:"40",cy:"10",r:"2.6",fill:a}),e.jsx("circle",{cx:"80",cy:"10",r:"2.6",fill:a}),e.jsxs("g",{stroke:a,strokeWidth:"2.2",strokeLinecap:"round",fill:"none",children:[e.jsx("path",{d:"M34 50 L18 44"}),e.jsx("path",{d:"M32 66 L14 66"}),e.jsx("path",{d:"M34 84 L18 92"}),e.jsx("path",{d:"M86 50 L102 44"}),e.jsx("path",{d:"M88 66 L106 66"}),e.jsx("path",{d:"M86 84 L102 92"})]}),e.jsx("ellipse",{cx:"60",cy:"66",rx:"32",ry:"38",fill:`url(#${n}-body)`}),e.jsx("line",{x1:"60",y1:"32",x2:"60",y2:"103",stroke:a,strokeWidth:"2.4"}),e.jsx("ellipse",{cx:"60",cy:"26",rx:"14",ry:"10",fill:a}),e.jsx("circle",{cx:"55",cy:"25",r:"1.6",fill:"#ffffff"}),e.jsx("circle",{cx:"65",cy:"25",r:"1.6",fill:"#ffffff"}),e.jsx("circle",{cx:"46",cy:"52",r:"4.5",fill:a}),e.jsx("circle",{cx:"74",cy:"52",r:"4.5",fill:a}),e.jsx("circle",{cx:"44",cy:"74",r:"4",fill:a}),e.jsx("circle",{cx:"76",cy:"74",r:"4",fill:a}),e.jsx("circle",{cx:"50",cy:"92",r:"3.4",fill:a}),e.jsx("circle",{cx:"70",cy:"92",r:"3.4",fill:a}),e.jsx("ellipse",{cx:"48",cy:"48",rx:"4.5",ry:"3",fill:"#ffffff",opacity:"0.22"}),e.jsxs("g",{clipPath:`url(#${n}-clip)`,style:{mixBlendMode:"screen",opacity:.55},children:[e.jsx("ellipse",{cx:"60",cy:"66",rx:"32",ry:"38",fill:"none",stroke:"#ffffff",strokeWidth:"2.4"}),e.jsx("ellipse",{cx:"60",cy:"26",rx:"14",ry:"10",fill:"none",stroke:"#ffffff",strokeWidth:"2"})]})]})}function xn({message:t="Loadingâ¦",showFact:r=!0,theme:o="light"}){const[n,s]=i.useState(()=>pt()),[a,l]=i.useState(!0);i.useEffect(()=>{if(!r||Se.length<=1)return;const f=setInterval(()=>{l(!1),setTimeout(()=>{s(p=>{let u=pt();for(;Se.length>1&&u===p;)u=pt();return u}),l(!0)},280)},7e3);return()=>clearInterval(f)},[r]);const c=o==="dark"?{bg:"#04070f",text:"#e8edf5",text2:"#94a3b8",text3:"#475569",c1:"#ef4444",c2:"#0a0a0a"}:{bg:"#fcfcfd",text:"#0f172a",text2:"#475569",text3:"#94a3b8",c1:"#dc2626",c2:"#0a0a0a"};return e.jsxs("div",{style:{position:"fixed",inset:0,background:c.bg,color:c.text2,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",zIndex:9999,fontFamily:"'Inter', system-ui, sans-serif",padding:"24px",textAlign:"center"},children:[e.jsx("div",{"aria-hidden":"true",style:{position:"absolute",inset:0,background:`radial-gradient(ellipse 50% 40% at 50% 45%, ${c.c1}1a 0%, transparent 70%)`,pointerEvents:"none"}}),e.jsx("div",{style:{position:"relative",color:c.text,marginBottom:28},children:e.jsx(Cr,{size:108,color:c.c1,color2:c.c2})}),e.jsx("div",{style:{position:"relative",fontSize:13,fontWeight:700,letterSpacing:".18em",textTransform:"uppercase",color:c.c1,marginBottom:14},children:t}),r&&e.jsxs("div",{style:{position:"relative",maxWidth:440,minHeight:56,opacity:a?1:0,transform:a?"translateY(0)":"translateY(4px)",transition:"opacity .28s ease, transform .28s ease"},children:[e.jsx("div",{style:{fontSize:10,fontWeight:800,letterSpacing:".12em",textTransform:"uppercase",color:c.text3,marginBottom:6},children:"Did you know?"}),e.jsx("div",{style:{fontSize:14.5,color:c.text2,lineHeight:1.55},children:n.text})]})]})}function mn({size:t=28,color:r="currentColor",color2:o="currentColor"}){return e.jsx(Cr,{size:t,color:r,color2:o})}function bn(){return e.jsx("div",{"data-testid":"content-loader",style:{minHeight:"60vh",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--fg-muted, #94a3b8)"},children:e.jsx(mn,{size:32})})}const yn=i.lazy(()=>m(()=>import("./OutreachPage-BVPobThk.js"),__vite__mapDeps([0,1,2]))),vn=i.lazy(()=>m(()=>import("./OutreachSettingsPage-CPRHcVgG.js"),__vite__mapDeps([3,1,2,4]))),Qt=i.lazy(()=>m(()=>import("./OutreachTeamPage-BG63ovSq.js"),__vite__mapDeps([5,1,6]))),Ne=_e,wn=[{product:Ne,perm:"view:outreach",path:"/dashboard/outreach",Component:vn,firstAllowed:!0},{product:Ne,perm:"view:outreach",path:"/dashboard/outreach/team",Component:Qt,firstAllowed:!0},{product:Ne,perm:"view:outreach",path:"/dashboard/outreach/rbac",Component:Qt},{product:Ne,perm:"view:outreach",path:"/dashboard/outreach/workflows",Component:yn}],kn=i.lazy(()=>m(()=>import("./DashboardPage-BD-gyp9G.js"),__vite__mapDeps([7,1,8]))),jn=i.lazy(()=>m(()=>import("./ProductsPage-DzkWbgel.js"),__vite__mapDeps([9,1,8]))),Sn=i.lazy(()=>m(()=>import("./CompetitorsPage-CGPd-tYM.js"),__vite__mapDeps([10,1,8]))),_n=i.lazy(()=>m(()=>import("./SocialPage-CKDee21q.js"),__vite__mapDeps([11,1,8,12]))),Cn=i.lazy(()=>m(()=>import("./AlertsPage-CrHdzdZA.js"),__vite__mapDeps([13,1,8,12]))),An=i.lazy(()=>m(()=>import("./ReportsPage-CLW-IDx9.js"),__vite__mapDeps([14,1,8]))),Pn=i.lazy(()=>m(()=>import("./CampaignPage-B9G3Z4bV.js"),__vite__mapDeps([15,1,8,16,17]))),Rn=i.lazy(()=>m(()=>import("./ComposerPage-DLyCnWff.js"),__vite__mapDeps([18,1,16,17,8]))),En=i.lazy(()=>m(()=>import("./CalendarPage-DIibIoHd.js"),__vite__mapDeps([19,1,12,8]))),zn=i.lazy(()=>m(()=>import("./AnalyticsPage-BexJuSvz.js"),__vite__mapDeps([20,1,8,12]))),Ln=i.lazy(()=>m(()=>import("./InboxPage-hRGwLnsm.js"),__vite__mapDeps([21,1,12,8]))),In=i.lazy(()=>m(()=>import("./AssetsPage-ORzFvGAe.js"),__vite__mapDeps([22,1,12,23,8]))),Mn=i.lazy(()=>m(()=>import("./AdGenerationPage-DhoT6N_x.js"),__vite__mapDeps([24,1,16,8,23]))),Tn=i.lazy(()=>m(()=>import("./AgentFlowPage-D-2nDQxa.js"),__vite__mapDeps([25,1,16,15,8,17]))),J=se,Bn=[{product:J,perm:"view:dashboard",path:"/dashboard",Component:kn,firstAllowed:!0},{product:J,perm:"view:campaigns",path:"/dashboard/campaigns",Component:Pn,firstAllowed:!0},{product:J,perm:"view:products",path:"/dashboard/products",Component:jn,firstAllowed:!0},{product:J,perm:"view:competitors",path:"/dashboard/competitors",Component:Sn,firstAllowed:!0},{product:J,perm:"view:social",path:"/dashboard/social",Component:_n,firstAllowed:!0},{product:J,perm:"view:alerts",path:"/dashboard/alerts",Component:Cn,firstAllowed:!0},{product:J,perm:"view:reports",path:"/dashboard/reports",Component:An,firstAllowed:!0},{product:J,perm:"view:agents",path:"/dashboard/agents",Component:Tn,firstAllowed:!0},{product:J,perm:"view:campaigns",path:"/dashboard/composer",Component:Rn},{product:J,perm:"view:campaigns",path:"/dashboard/calendar",Component:En},{product:J,perm:"view:campaigns",path:"/dashboard/analytics",Component:zn},{product:J,perm:"view:social",path:"/dashboard/inbox",Component:Ln},{product:J,perm:"view:campaigns",path:"/dashboard/assets",Component:In},{product:J,perm:"view:ads",path:"/dashboard/ads",Component:Mn}],On=i.lazy(()=>m(()=>import("./HRDashboardPage-CAN8m2QA.js"),__vite__mapDeps([26,1,27,28,29,30,31,32]))),Dn=i.lazy(()=>m(()=>import("./HREmployeesPage-CHCdNeOV.js"),__vite__mapDeps([33,1,27,28,34,29,30,31,32]))),Wn=i.lazy(()=>m(()=>import("./HRAttendancePage-YKNZVD7t.js"),__vite__mapDeps([35,1,27,28,29,30,31,32]))),Nn=i.lazy(()=>m(()=>import("./HRLeavePage-Cg02JwTy.js"),__vite__mapDeps([36,1,27,28,29,30,31,32]))),$n=i.lazy(()=>m(()=>import("./HRPayrollPage-DazlRq4c.js"),__vite__mapDeps([37,1,27,28,29,30,31,32]))),Fn=i.lazy(()=>m(()=>import("./HRPerformancePage-BbOxal-f.js"),__vite__mapDeps([38,1,27,28,29,30,31,32]))),Hn=i.lazy(()=>m(()=>import("./HROnboardingPage-DXAKve7Q.js"),__vite__mapDeps([39,1,27,28,29,30,31,32]))),Vn=i.lazy(()=>m(()=>import("./HRDocumentsPage-3IBOvXOp.js"),__vite__mapDeps([40,1,27,28,29,30,31,32]))),Un=i.lazy(()=>m(()=>import("./HRRecruitingPage-Huc1xL5p.js"),__vite__mapDeps([41,1,27,28,29,30,31,32]))),qn=i.lazy(()=>m(()=>import("./HRSettingsPage-B8VVVAnp.js"),__vite__mapDeps([42,1,27,28,29,30,31,32]))),Gn=i.lazy(()=>m(()=>import("./HRTeamPage-M8d0domy.js"),__vite__mapDeps([43,1,6]))),Yn=i.lazy(()=>m(()=>import("./MyHRPage-BZhJP6Nk.js"),__vite__mapDeps([44,1,27,28,30,31,32,45]))),Kn=i.lazy(()=>m(()=>import("./MyPayslipsPage-CJd19fuf.js"),__vite__mapDeps([46,1,27,28,32,45]))),Jn=i.lazy(()=>m(()=>import("./MyDocumentsPage-BVKms7bK.js"),__vite__mapDeps([47,1,27,28,31,32,45]))),Xn=i.lazy(()=>m(()=>import("./OrgTreePage-C6bVVWXl.js"),__vite__mapDeps([48,1,27,28,45]))),Zn=i.lazy(()=>m(()=>import("./ApprovalsPage-CtHEbfZX.js"),__vite__mapDeps([49,1,27,28,30,32,45]))),F=Ce,Qn=[{product:F,path:"/dashboard/hr/me",Component:Yn,firstAllowed:!0},{product:F,path:"/dashboard/hr/me/payslips",Component:Kn,firstAllowed:!1},{product:F,path:"/dashboard/hr/me/documents",Component:Jn,firstAllowed:!1},{product:F,path:"/dashboard/hr/org",Component:Xn,firstAllowed:!0},{product:F,path:"/dashboard/hr/approvals",Component:Zn,firstAllowed:!0},{product:F,perm:"view:hr",path:"/dashboard/hr",Component:On,firstAllowed:!0},{product:F,perm:"view:hr:employees",path:"/dashboard/hr/employees",Component:Dn,firstAllowed:!0},{product:F,perm:"view:hr:onboarding",path:"/dashboard/hr/onboarding",Component:Hn,firstAllowed:!0},{product:F,perm:"view:hr:documents",path:"/dashboard/hr/documents",Component:Vn,firstAllowed:!0},{product:F,perm:"view:hr:attendance",path:"/dashboard/hr/attendance",Component:Wn,firstAllowed:!0},{product:F,perm:"view:hr:leave",path:"/dashboard/hr/leave",Component:Nn,firstAllowed:!0},{product:F,perm:"view:hr:payroll",path:"/dashboard/hr/payroll",Component:$n,firstAllowed:!0},{product:F,perm:"view:hr:performance",path:"/dashboard/hr/performance",Component:Fn,firstAllowed:!0},{product:F,perm:"view:hr:recruiting",path:"/dashboard/hr/recruiting",Component:Un,firstAllowed:!0},{product:F,perm:"view:hr",path:"/dashboard/hr/settings",Component:qn,firstAllowed:!1},{product:F,perm:"manage:users",path:"/dashboard/hr/team",Component:Gn,firstAllowed:!1}],ei=i.lazy(()=>m(()=>import("./BeetlBooksDashboardPage-CePndvVQ.js"),__vite__mapDeps([50,1,51,52]))),ti=i.lazy(()=>m(()=>import("./JournalPage-BCsch1e4.js"),__vite__mapDeps([53,1,51,52,54,34,55,56]))),ri=i.lazy(()=>m(()=>import("./InvoicesPage-BPQm4ikm.js"),__vite__mapDeps([57,1,51,52,54,34,55,56]))),oi=i.lazy(()=>m(()=>import("./BillsPage-CG1R5YZP.js"),__vite__mapDeps([58,1,51,52,54,34,55,56]))),ni=i.lazy(()=>m(()=>import("./PaymentsPage-CYnmq4zC.js"),__vite__mapDeps([59,1,51,52,54,34,55,56]))),ii=i.lazy(()=>m(()=>import("./BankingPage-DXZd3BeM.js"),__vite__mapDeps([60,1,51,52,54,34,55,56]))),ai=i.lazy(()=>m(()=>import("./AccountsPage-7fgmQc_k.js"),__vite__mapDeps([61,1,51,52,54,34,55,56]))),si=i.lazy(()=>m(()=>import("./ReportsPage-BmBB8jxI.js"),__vite__mapDeps([62,1,51,52]))),li=i.lazy(()=>m(()=>import("./CustomersPage-CHrf2RsA.js"),__vite__mapDeps([63,1,51,52,54,34,55,56]))),ci=i.lazy(()=>m(()=>import("./VendorsPage-CsSPH8cE.js"),__vite__mapDeps([64,1,51,52,54,34,55,56]))),di=i.lazy(()=>m(()=>import("./BeetlBooksTeamPage-Ca61HHIl.js"),__vite__mapDeps([65,1,6,51,52]))),te=Ae,pi=[{product:te,perm:"view:books",path:"/dashboard/books",Component:ei,firstAllowed:!0},{product:te,perm:"view:books:customers",path:"/dashboard/books/customers",Component:li,firstAllowed:!1},{product:te,perm:"view:books:vendors",path:"/dashboard/books/vendors",Component:ci,firstAllowed:!1},{product:te,perm:"view:books:invoices",path:"/dashboard/books/invoices",Component:ri,firstAllowed:!1},{product:te,perm:"view:books:bills",path:"/dashboard/books/bills",Component:oi,firstAllowed:!1},{product:te,perm:"view:books:payments",path:"/dashboard/books/payments",Component:ni,firstAllowed:!1},{product:te,perm:"view:books:banking",path:"/dashboard/books/banking",Component:ii,firstAllowed:!1},{product:te,perm:"view:books:accounts",path:"/dashboard/books/accounts",Component:ai,firstAllowed:!1},{product:te,perm:"view:books:journal",path:"/dashboard/books/journal",Component:ti,firstAllowed:!1},{product:te,perm:"view:books:reports",path:"/dashboard/books/reports",Component:si,firstAllowed:!1},{product:te,perm:"manage:users",path:"/dashboard/books/team",Component:di,firstAllowed:!1}],ui=i.lazy(()=>m(()=>import("./CRMDashboardPage-B1ABVcG7.js"),__vite__mapDeps([66,1,67,68,69]))),hi=i.lazy(()=>m(()=>
1038import("./ContactsPage-W1KkXlQS.js"),__vite__mapDeps([70,1,67,68,54,34,55,56]))),gi=i.lazy(()=>m(()=>import("./CompaniesPage-BFvFZYwO.js"),__vite__mapDeps([71,1,67,68,54,34,55,56]))),fi=i.lazy(()=>m(()=>import("./LeadsPage-CyVPrS8b.js"),__vite__mapDeps([72,1,67,68,69]))),xi=i.lazy(()=>m(()=>import("./DealsPage-DY6cRNkS.js"),__vite__mapDeps([73,1,67,68,69]))),mi=i.lazy(()=>m(()=>import("./ActivitiesPage-CpKdhRlp.js"),__vite__mapDeps([74,1,67,68,69]))),bi=i.lazy(()=>m(()=>import("./ReportsPage-C1RQWAG8.js"),__vite__mapDeps([75,1,67,68,69]))),er=i.lazy(()=>m(()=>import("./CRMTeamPage-CxD2AB3_.js"),__vite__mapDeps([76,1,6]))),yi=i.lazy(()=>m(()=>import("./CRMSettingsPage-Bz4yKNyr.js"),__vite__mapDeps([77,67,68,69,1]))),ne=Pe,vi=[{product:ne,perm:"view:crm",path:"/dashboard/crm",Component:ui,firstAllowed:!0},{product:ne,perm:"view:crm:contacts",path:"/dashboard/crm/contacts",Component:hi,firstAllowed:!1},{product:ne,perm:"view:crm:companies",path:"/dashboard/crm/companies",Component:gi,firstAllowed:!1},{product:ne,perm:"view:crm:leads",path:"/dashboard/crm/leads",Component:fi,firstAllowed:!1},{product:ne,perm:"view:crm:deals",path:"/dashboard/crm/deals",Component:xi,firstAllowed:!1},{product:ne,perm:"view:crm:activities",path:"/dashboard/crm/activities",Component:mi,firstAllowed:!1},{product:ne,perm:"view:crm:reports",path:"/dashboard/crm/reports",Component:bi,firstAllowed:!1},{product:ne,perm:"manage:users",path:"/dashboard/crm/team",Component:er,firstAllowed:!1},{product:ne,perm:"manage:users",path:"/dashboard/crm/rbac",Component:er,firstAllowed:!1},{product:ne,perm:"manage:crm:settings",path:"/dashboard/crm/settings",Component:yi,firstAllowed:!1}],wi=i.lazy(()=>m(()=>import("./PMDashboardPage-BIzq0j7e.js"),__vite__mapDeps([78,1,79,80]))),ki=i.lazy(()=>m(()=>import("./PMWorkspacesPage-BP1K1Ot_.js"),__vite__mapDeps([81,1,79,80,82]))),ji=i.lazy(()=>m(()=>import("./PMProjectsPage-DbiSK9o1.js"),__vite__mapDeps([83,1,79,80,82]))),Si=i.lazy(()=>m(()=>import("./PMTasksPage-D-njkv2Y.js"),__vite__mapDeps([84,1,79,80,82]))),_i=i.lazy(()=>m(()=>import("./PMBoardPage-CxGaMaIc.js"),__vite__mapDeps([85,1,79,80,82]))),Ci=i.lazy(()=>m(()=>import("./PMAutomationsPage-C9mKCU-O.js"),__vite__mapDeps([86,1,79,80,82]))),Ai=i.lazy(()=>m(()=>import("./PMTimePage-BnM4eWLS.js"),__vite__mapDeps([87,1,79,80,82]))),Pi=i.lazy(()=>m(()=>import("./PMProofingPage-CsgVRXxm.js"),__vite__mapDeps([88,1,79,80,82]))),Ri=i.lazy(()=>m(()=>import("./PMDashboardsPage-4AcXU-sJ.js"),__vite__mapDeps([89,1,79,80,82]))),Ei=i.lazy(()=>m(()=>import("./PMSettingsPage-Cbr0XqwJ.js"),__vite__mapDeps([90,1,79,80]))),zi=i.lazy(()=>m(()=>import("./PMTeamPage-Dq25J02e.js"),__vite__mapDeps([91,1,6]))),re=Ee,Li=[{product:re,perm:"view:pm",path:"/dashboard/pm",Component:wi,firstAllowed:!0},{product:re,perm:"view:pm:workspaces",path:"/dashboard/pm/workspaces",Component:ki,firstAllowed:!0},{product:re,perm:"view:pm:projects",path:"/dashboard/pm/projects",Component:ji,firstAllowed:!0},{product:re,perm:"view:pm:tasks",path:"/dashboard/pm/tasks",Component:Si,firstAllowed:!0},{product:re,perm:"view:pm:tasks",path:"/dashboard/pm/board",Component:_i,firstAllowed:!1},{product:re,perm:"view:pm:automations",path:"/dashboard/pm/automations",Component:Ci,firstAllowed:!1},{product:re,perm:"view:pm:time",path:"/dashboard/pm/time",Component:Ai,firstAllowed:!1},{product:re,perm:"view:pm:proofing",path:"/dashboard/pm/proofing",Component:Pi,firstAllowed:!1},{product:re,perm:"view:pm:dashboards",path:"/dashboard/pm/dashboards",Component:Ri,firstAllowed:!1},{product:re,perm:"manage:users",path:"/dashboard/pm/team",Component:zi,firstAllowed:!1},{product:re,perm:"view:pm",path:"/dashboard/pm/settings",Component:Ei,firstAllowed:!1}],Ii=i.lazy(()=>m(()=>import("./SupplyDashboardPage-CA-cHVgs.js"),__vite__mapDeps([92,1,93,94]))),Mi=i.lazy(()=>m(()=>import("./SupplyItemsPage-ByMTVzkt.js"),__vite__mapDeps([95,1,93,94,54,34,55,56]))),Ti=i.lazy(()=>m(()=>import("./SupplySuppliersPage-COC984nG.js"),__vite__mapDeps([96,1,93,94,54,34,55,56]))),Bi=i.lazy(()=>m(()=>import("./SupplyWarehousesPage-CiOgCl7Z.js"),__vite__mapDeps([97,1,93,94,54,34,55,56]))),Oi=i.lazy(()=>m(()=>import("./SupplyInventoryPage-BY16NvWX.js"),__vite__mapDeps([98,1,93,94,54,34,55,56]))),Di=i.lazy(()=>m(()=>import("./SupplyDemandPage-DUqbli_E.js"),__vite__mapDeps([99,1,93,94,54,34,55,56]))),Wi=i.lazy(()=>m(()=>
1038import("./SupplyPlanPage-BcZuhrNz.js"),__vite__mapDeps([100,1,93,94,56]))),Ni=i.lazy(()=>m(()=>import("./SupplySOPPage-DeYV98ig.js"),__vite__mapDeps([101,1,93,94,54,34,55,56]))),$i=i.lazy(()=>m(()=>import("./SupplyProcurementPage-gP6-ESwm.js"),__vite__mapDeps([102,1,93,94,54,34,55,56]))),Fi=i.lazy(()=>m(()=>import("./SupplyShipmentsPage-CsLkR_-L.js"),__vite__mapDeps([103,1,93,94,54,34,55,56]))),Hi=i.lazy(()=>m(()=>import("./SupplyOrdersPage-HmBsoMfI.js"),__vite__mapDeps([104,1,93,94,54,34,55,56]))),Vi=i.lazy(()=>m(()=>import("./SupplyScenariosPage-Bkxpu7p_.js"),__vite__mapDeps([105,1,93,94,54,34,55,56]))),Ui=i.lazy(()=>m(()=>import("./SupplyAlertsPage-CyJ2Btzb.js"),__vite__mapDeps([106,1,93,94,34,55,56]))),tr=i.lazy(()=>m(()=>import("./SupplyTeamPage-BD8HOc-t.js"),__vite__mapDeps([107,1,6]))),qi=i.lazy(()=>m(()=>import("./SupplySettingsPage-g6JU6rLz.js"),__vite__mapDeps([108,1,93,94,56]))),H=Re,Gi=[{product:H,perm:"view:supply",path:"/dashboard/supply",Component:Ii,firstAllowed:!0},{product:H,perm:"view:supply:items",path:"/dashboard/supply/items",Component:Mi,firstAllowed:!0},{product:H,perm:"view:supply:suppliers",path:"/dashboard/supply/suppliers",Component:Ti,firstAllowed:!0},{product:H,perm:"view:supply:warehouses",path:"/dashboard/supply/warehouses",Component:Bi,firstAllowed:!0},{product:H,perm:"view:supply:inventory",path:"/dashboard/supply/inventory",Component:Oi,firstAllowed:!0},{product:H,perm:"view:supply:demand",path:"/dashboard/supply/demand",Component:Di,firstAllowed:!0},{product:H,perm:"view:supply:plan",path:"/dashboard/supply/plan",Component:Wi,firstAllowed:!0},{product:H,perm:"view:supply:sop",path:"/dashboard/supply/sop",Component:Ni,firstAllowed:!0},{product:H,perm:"view:supply:procurement",path:"/dashboard/supply/procurement",Component:$i,firstAllowed:!0},{product:H,perm:"view:supply:shipments",path:"/dashboard/supply/shipments",Component:Fi,firstAllowed:!0},{product:H,perm:"view:supply:orders",path:"/dashboard/supply/orders",Component:Hi,firstAllowed:!0},{product:H,perm:"view:supply:scenarios",path:"/dashboard/supply/scenarios",Component:Vi,firstAllowed:!0},{product:H,perm:"view:supply:alerts",path:"/dashboard/supply/alerts",Component:Ui,firstAllowed:!0},{product:H,perm:"manage:users",path:"/dashboard/supply/team",Component:tr,firstAllowed:!1},{product:H,perm:"manage:users",path:"/dashboard/supply/rbac",Component:tr,firstAllowed:!1},{product:H,perm:"manage:supply:settings",path:"/dashboard/supply/settings",Component:qi,firstAllowed:!1}],Yi=i.lazy(()=>m(()=>import("./VideoDashboardPage-CwA67r23.js"),__vite__mapDeps([109,1,110,111,112]))),Ki=i.lazy(()=>m(()=>import("./RoomsPage-CmdH3Hez.js"),__vite__mapDeps([113,1,110,111,112]))),Ji=i.lazy(()=>m(()=>import("./RecordingsPage-CJEOR11w.js"),__vite__mapDeps([114,1,110,111,112]))),Xi=i.lazy(()=>m(()=>import("./VideoTeamPage-DjT9iysq.js"),__vite__mapDeps([115,1,6]))),Zi=i.lazy(()=>m(()=>import("./MeetingPage-BsmUchNm.js"),__vite__mapDeps([116,1,117,111,112,118,110]))),we=ze,Qi=[{product:we,perm:"view:video",path:"/dashboard/video",Component:Yi,firstAllowed:!0},{product:we,perm:"view:video:rooms",path:"/dashboard/video/rooms",Component:Ki,firstAllowed:!1},{product:we,perm:"view:video:rooms",path:"/dashboard/video/rooms/:slug",Component:Zi,firstAllowed:!1},{product:we,perm:"view:video:recordings",path:"/dashboard/video/recordings",Component:Ji,firstAllowed:!1},{product:we,perm:"manage:users",path:"/dashboard/video/team",Component:Xi,firstAllowed:!1}],Ar=[...Bn,...wn,...Qn,...pi,...vi,...Li,...Gi,...Qi],Pr=Ar.filter(t=>t.firstAllowed);function Ve(){var r;if(typeof window<"u"&&((r=window.location)!=null&&r.hostname)){const o=String(window.location.hostname||"").toLowerCase();if(o==="localhost"||o.endsWith(".localhost"))return`http://localhost${window.location.port?`:${window.location.port}`:""}`}return String("https://beetlai.com").replace(/\/$/,"")}const ea=[{perm:"view:dashboard",path:"/dashboard"},{perm:"view:campaigns",path:"/dashboard/campaigns"},{perm:"view:products",path:"/dashboard/products"},{perm:"view:competitors",path:"/dashboard/competitors"},{perm:"view:social",path:"/dashboard/social"},{perm:"view:alerts",path:"/dashboard/alerts"},{perm:"view:reports",path:"/dashboard/reports"}];function ta(t,r){const o=new Set(t||[]),n=new Set(r||[]);for(const{product:s,perm:a,path:l}of Pr)if(!(s&&!n.has(s))&&o.has(a))return l;for(const{perm:s,path:a}of ea)if(o.has(s))return a;return"/dashboard/settings"}const ra={google_not_configured:"Google sign-in is not set up for this workspace.",google_no_org:"Workspace not found. Please try again.",google_expired:"Sign-in session expired. Please try again.",google_state_mismatch:"Security check failed. Please try again.",google_no_account:"No account found for that Google address. Ask your admin to invite you.",google_account_inactive:"Your account is disabled. Contact your administrator.",google_token_failed:"Couldn't connect to Google. Please try again.",google_userinfo_failed:"Couldn't fetch your Google profile. Please try again.",google_request_failed:"Connection to Google failed. Please try again.",google_no_email:"Google didn't share your email address. Please try again.",google_access_de
1038nied:"Google sign-in was cancelled."};function oa(){const{login:t,verifyOtp:r,resendOtp:o,isAuthenticated:n,loading:s,orgSlug:a,permissions:l,enabledProducts:d}=Me(),[c]=$r(),[f,p]=i.useState(""),[u,v]=i.useState(""),[h,x]=i.useState(""),[b,j]=i.useState(()=>{const I=c.get("error")||"";return ra[I]||(I?"Sign-in failed. Please try again.":"")}),[E,A]=i.useState(()=>c.get("welcome")==="google"?"Workspace created! Sign in to get started.":""),[z,L]=i.useState(!1),[R,w]=i.useState(!1),[g,k]=i.useState(!1),[P,y]=i.useState(()=>a?"checking":"found");if(i.useEffect(()=>{if(!a){y("found");return}let I=!1;return $(`/api/health?org_slug=${encodeURIComponent(a)}`).then(D=>{I||y(D&&D.org?"found":"not-found")}).catch(()=>{I||y("found")}),()=>{I=!0}},[a]),!s&&n)return e.jsx(ge,{to:ta(l,d),replace:!0});if(!s&&!a)return e.jsx(ge,{to:"/signin",replace:!0});if(P==="not-found")return e.jsx(na,{slug:a});async function M(I){I.preventDefault(),L(!0),j(""),A("");try{if(R)await r(f,h);else{const D=await t(f,u);D!=null&&D.requires_otp&&(w(!0),x(""),A(D.message||"Verification code sent."))}}catch(D){j(D instanceof Error?D.message:"We couldn't complete sign-in.")}finally{L(!1)}}async function B(){k(!0),j(""),A("");try{const I=await o(f);A((I==null?void 0:I.message)||"Verification code sent.")}catch(I){j(I instanceof Error?I.message:"We couldn't send another code.")}finally{k(!1)}}return s||P==="checking"?e.jsx("div",{style:{minHeight:"100vh",background:"#fcfcfd",display:"flex",alignItems:"center",justifyContent:"center",color:"#94a3b8"},children:"Signing inâ¦"}):e.jsxs("div",{style:{minHeight:"100vh",background:"#fcfcfd",display:"flex",alignItems:"center",justifyContent:"center",padding:24,fontFamily:"'Sora',system-ui,sans-serif",color:"#0f172a"},children:[e.jsx("style",{children:` 1039 @import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700&display=swap'); 1040 .l-box{background:rgba(15,23,42,.04);border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:40px;width:100%;max-width:420px} 1041 .l-org{display:inline-flex;align-items:center;gap:6px;background:rgba(45,212,191,.08);border:1px solid rgba(45,212,191,.15);color:#0d9488;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:100px;margin-bottom:20px} 1042 .l-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;display:block} 1043 .l-input{width:100%;background:rgba(15,23,42,.04);border:1px solid rgba(15,23,42,.10);border-radius:10px;padding:12px 16px;color:#0f172a;font-size:14px;font-family:inherit;outline:none;transition:border-color .2s;margin-bottom:20px} 1044 .l-input:focus{border-color:#0ea5a3} 1045 .l-input::placeholder{color:#94a3b8} 1046 .l-error{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);border-radius:10px;padding:12px 16px;font-size:13px;font-weight:500;color:#b91c1c;margin-bottom:20px} 1047 .l-info{background:rgba(13,148,136,.08);border:1px solid rgba(13,148,136,.25);border-radius:10px;padding:12px 16px;font-size:13px;font-weight:500;color:#0f766e;margin-bottom:20px} 1048 .l-btn{width:100%;padding:14px;background:linear-gradient(135deg,#0ea5a3,#6366f1);border:none;border-radius:10px;color:#fcfcfd;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s} 1049 .l-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)} 1050 .l-btn:disabled{opacity:.5;cursor:not-allowed} 1051 .l-linkbtn{width:100%;padding:12px;background:none;border:1px solid rgba(15,23,42,.10);border-radius:10px;color:#475569;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s} 1052 .l-linkbtn:hover:not(:disabled){border-color:rgba(255,255,255,.2);color:#0f172a} 1053 .l-linkbtn:disabled{opacity:.5;cursor:not-allowed} 1054 .l-foot{text-align:center;margin-top:24px;font-size:13px;color:#94a3b8} 1055 .l-foot a{color:#0ea5a3;text-decoration:none} 1056 .l-divider{display:flex;align-items:center;gap:10px;margin:20px 0;color:#94a3b8;font-size:12px} 1057 .l-divider::before,.l-divider::after{content:"";flex:1;height:1px;background:rgba(15,23,42,.08)} 1058 .l-gbtn{width:100%;padding:12px;background:#fff;border:1px solid rgba(15,23,42,.12);border-radius:10px;color:#0f172a;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .2s;text-decoration:none} 1059 .l-gbtn:hover{border-color:rgba(15,23,42,.25);box-shadow:0 2px 8px rgba(15,23,42,.06)} 1060 `}),e.jsxs("div",{style:{width:"100%",maxWidth:420},children:[e.jsxs("a",{href:Ve(),style:{display:"flex",alignItems:"center",gap:10,justifyContent:"center",marginBottom:40,textDecoration:"none"},children:[e.jsx("div",{style:{width:32,height:32,borderRadius:9,background:"linear-gradient(135deg,#0ea5a3,#6366f1)",display:"flex",alignItems:"center",justifyContent:"center",boxShadow:"0 6px 18px rgba(45,212,191,.25)"},children:e.jsx(me,{size:19})}),e.jsxs("span",{style:{fontSize:17,fontWeight:700,color:"#0f172a"},children:["Beetl",e.jsx("span",{style:{color:"#0ea5a3",fontWeight:800},children:"AI"})]})]}),e.jsxs("div",{className:"l-box",children:[a&&e.jsxs("div",{className:"l-org",children:[e.jsx("span",{style:{width:5,height:5,borderRadius:"50%",background:"#0ea5a3",dis
1060play:"inline-block"}}),a]}),e.jsx("h1",{style:{fontSize:24,fontWeight:700,color:"#0f172a",marginBottom:6},children:R?"Verify your code":"Sign in"}),e.jsx("p",{style:{fontSize:14,color:"#94a3b8",marginBottom:32},children:R?"Enter the 6-digit code we emailed to finish signing in.":"Access your competitive intelligence workspace."}),e.jsxs("form",{onSubmit:M,children:[e.jsx("label",{className:"l-label",children:"Email address"}),e.jsx("input",{className:"l-input",type:"email",required:!0,placeholder:"[email protected]",value:f,onChange:I=>p(I.target.value),disabled:R,autoComplete:"email"}),R?e.jsxs(e.Fragment,{children:[e.jsx("label",{className:"l-label",children:"Verification code"}),e.jsx("input",{className:"l-input",inputMode:"numeric",pattern:"[0-9]*",maxLength:6,required:!0,placeholder:"123456",value:h,onChange:I=>x(I.target.value.replace(/\D/g,"").slice(0,6))})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:8},children:[e.jsx("label",{className:"l-label",style:{margin:0},children:"Password"}),e.jsx("a",{href:"/forgot-password",style:{fontSize:12,color:"#0ea5a3",textDecoration:"none",fontWeight:500},children:"Forgot password?"})]}),e.jsx("input",{className:"l-input",type:"password",required:!0,placeholder:"â¢â¢â¢â¢â¢â¢â¢â¢",value:u,onChange:I=>v(I.target.value),autoComplete:"current-password"})]}),E&&e.jsx("div",{className:"l-info",children:E}),b&&e.jsx("div",{className:"l-error",children:b}),e.jsx("button",{type:"submit",disabled:z,className:"l-btn",children:z?R?"Verifyingâ¦":"Signing inâ¦":R?"Verify code â":"Sign in â"}),R&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10,marginTop:12},children:[e.jsx("button",{type:"button",className:"l-linkbtn",onClick:B,disabled:g,children:g?"Sending another codeâ¦":"Resend code"}),e.jsx("button",{type:"button",className:"l-linkbtn",onClick:()=>{w(!1),x(""),A(""),j("")},children:"Use a different account"})]})]}),e.jsx("p",{style:{marginTop:16,fontSize:12,color:"#94a3b8",textAlign:"center"},children:R?"Codes expire after 10 minutes and lock after 3 failed attempts.":"Credentials were emailed to you by your administrator."}),!R&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"l-divider",children:"or"}),e.jsxs("a",{href:"/auth/google",className:"l-gbtn",children:[e.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsx("path",{d:"M43.611 20.083H42V20H24v8h11.303c-1.649 4.657-6.08 8-11.303 8-6.627 0-12-5.373-12-12s5.373-12 12-12c3.059 0 5.842 1.154 7.961 3.039l5.657-5.657C34.046 6.053 29.268 4 24 4 12.955 4 4 12.955 4 24s8.955 20 20 20 20-8.955 20-20c0-1.341-.138-2.65-.389-3.917z",fill:"#FFC107"}),e.jsx("path",{d:"M6.306 14.691l6.571 4.819C14.655 15.108 19.002 12 24 12c3.059 0 5.842 1.154 7.961 3.039l5.657-5.657C34.046 6.053 29.268 4 24 4 16.318 4 9.656 8.337 6.306 14.691z",fill:"#FF3D00"}),e.jsx("path",{d:"M24 44c5.166 0 9.86-1.977 13.409-5.192l-6.19-5.238C29.211 35.091 26.715 36 24 36c-5.202 0-9.619-3.317-11.283-7.946l-6.522 5.025C9.505 39.556 16.227 44 24 44z",fill:"#4CAF50"}),e.jsx("path",{d:"M43.611 20.083H42V20H24v8h11.303c-.792 2.237-2.231 4.166-4.087 5.571l6.19 5.238C43.021 36.251 44 30.448 44 24c0-1.341-.138-2.65-.389-3.917z",fill:"#1976D2"})]}),"Continue with Google"]})]})]}),e.jsxs("div",{className:"l-foot",children:["Wrong workspace? ",e.jsx("a",{href:`${Ve()}/signin`,style:{color:"#0ea5a3",textDecoration:"none"},children:"Switch workspace"})," · ",e.jsx("a",{href:Ve(),style:{color:"#0ea5a3",textDecoration:"none"},children:"Home"})]})]})]})}function na({slug:t}){const r=Ve();return e.jsxs("div",{style:{minHeight:"100vh",background:"#fcfcfd",display:"flex",alignItems:"center",justifyContent:"center",padding:24,fontFamily:"'Sora',system-ui,sans-serif",color:"#0f172a"},children:[e.jsx("style",{children:` 1061 @import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700&display=swap'); 1062 @import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&display=swap'); 1063 .nf-box{background:rgba(15,23,42,.04);border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:40px;width:100%;max-width:480px;text-align:center} 1064 .nf-chip{display:inline-flex;align-items:center;gap:6px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.20);color:#b91c1c;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:100px;margin-bottom:20px} 1065 .nf-title{font-family:'DM Serif Display',Georgia,serif;font-size:32px;line-height:1.1;letter-spacing:-.02em;color:#0f172a;margin-bottom:12px} 1066 .nf-sub{font-size:14.5px;color:#64748b;line-height:1.6;margin-bottom:8px} 1067 .nf-slug{font-family:'JetBrains Mono',ui-monospace,monospace;display:inline-block;background:rgba(15,23,42,.06);border:1px solid rgba(15,23,42,.10);color:#0f172a;font-weight:600;padding:4px 10px;border-radius:8px;font-size:13px;margin:6px 4px 16px} 1068 .nf-actions{display:flex;flex-direction:column;gap:10px;margin-top:24px} 1069 .nf-btn-primary{padding:13px 18px;background:linear-gradient(135deg,#0ea5a3,#6366f1);border:none;border-radius:10px;color:#fff;font-size:14.5px;font-weight:700;font-family:inherit;cursor:pointer;text-decoration:none;display:inline-block;transition:transform .15s,opacity .15s} 1070 .nf-btn-primary:hover{transform:translateY(-1px);opacity:.95} 1071 .nf-btn-ghost{padding:12px 18px;background:none;border:1px solid rgba(15,23,42,.10);border-radius:10px;color:#0f172a;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;text-decoration:none;display:inline-block;transition:border-color .2s} 1072 .nf-btn-ghost:hover{border-color:rgba(15,23,42,.25)} 1073 `}),e.jsxs("div",{style:{width:"100%",maxWidth:480},children:[e.jsxs("a",{href:r,style:{display:"flex",alignItems:"center",gap:10,justifyContent:"center",marginBottom:32,textDecoration:"none"},children:[e.jsx("div",{style:{width:32,height:32,borderRadius:9,background:"linear-gradient(135deg,#0ea5a3,#6366f1)",display:"flex",alignItems:"center",justifyContent:"center",boxShadow:"0 6px 18px rgba(45,212,191,.25)"},children:e.jsx(me,{size:19})}),e.jsxs("span",{style:{fontSize:17,fontWeight:700,color:"#0f172a"},children:["Beetl",e.jsx("span",{style:{color:"#0ea5a3",fontWeight:800},children:"AI"})]})]}),e.jsxs("div",{className:"nf-box",children:[e.jsxs("div",{className:"nf-chip",children:[e.jsx("span",{style:{width:5,height:5,borderRadius:"50%",background:"#dc2626",display:"inline-block"}}),"Workspace not found"]}
1073),e.jsx("h1",{className:"nf-title",children:"This workspace doesn't exist."}),e.jsx("p",{className:"nf-sub",children:"We couldn't find a BeetlAI workspace at"}),e.jsx("span",{className:"nf-slug",children:t?`${t}.${Je()}`:"this address"}),e.jsx("p",{className:"nf-sub",children:"Double-check the address with your admin, or pick a different option below."}),e.jsxs("div",{className:"nf-actions",children:[e.jsx("a",{href:r,className:"nf-btn-primary",children:"â Back to home"}),e.jsx("a",{href:`${r}/signin`,className:"nf-btn-ghost",children:"Switch workspace"})]})]})]})]})}function ia(){const[t,r]=i.useState(""),[o,n]=i.useState(""),[s,a]=i.useState(!1);async function l(c){c.preventDefault(),n("");const f=t.trim().toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/^-+|-+$/g,"");if(!f){n("Please enter your workspace name.");return}a(!0);try{const p=await fetch(`/api/health?org_slug=${encodeURIComponent(f)}`,{credentials:"include"}),u=await p.json().catch(()=>({}));if(!p.ok||!u.org)throw new Error("Workspace not found. Check your workspace name.");window.location.href=to(f,"/login")}catch(p){n(p.message||"Could not reach that workspace. Check your workspace name.")}finally{a(!1)}}const d=t.trim().toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/^-+|-+$/g,"");return e.jsxs("div",{style:{minHeight:"100vh",background:"#fcfcfd",display:"flex",alignItems:"center",justifyContent:"center",padding:24,fontFamily:"'Inter','DM Sans',system-ui,sans-serif",color:"#0f172a"},children:[e.jsx("style",{children:` 1074 @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap'); 1075 *,*::before,*::after{box-sizing:border-box;margin:0;padding:0} 1076 .si-box{background:#ffffff;border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:40px;width:100%;max-width:440px;box-shadow:0 24px 60px rgba(15,23,42,.06)} 1077 .si-label{font-size:12px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;display:block} 1078 .si-input{width:100%;background:#ffffff;border:1px solid rgba(15,23,42,.12);border-radius:10px;padding:12px 16px;color:#0f172a;font-size:14px;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s;margin-bottom:20px} 1079 .si-input:focus{border-color:#0ea5a3;box-shadow:0 0 0 3px rgba(14,165,163,.10)} 1080 .si-input::placeholder{color:#94a3b8} 1081 .si-preview{font-size:11px;color:#0ea5a3;font-family:'JetBrains Mono',monospace;margin-top:-14px;margin-bottom:20px;padding:0 4px} 1082 .si-error{background:rgba(239,68,68,.06);border:1px solid rgba(239,68,68,.18);border-radius:10px;padding:12px 16px;font-size:13px;color:#b91c1c;margin-bottom:20px} 1083 .si-btn{width:100%;padding:14px;background:linear-gradient(135deg,#0ea5a3,#6366f1);border:none;border-radius:10px;color:#ffffff;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s;box-shadow:0 12px 28px rgba(14,165,163,.20)} 1084 .si-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 36px rgba(14,165,163,.28)} 1085 .si-btn:disabled{opacity:.5;cursor:not-allowed} 1086 .si-foot{text-align:center;margin-top:24px;font-size:13px;color:#64748b} 1087 .si-foot a{color:#0ea5a3;text-decoration:none;font-weight:600} 1088 `}),e.jsxs("div",{style:{width:"100%",maxWidth:440},children:[e.jsxs(q,{to:"/",style:{display:"flex",alignItems:"center",gap:10,justifyContent:"center",marginBottom:40,textDecoration:"none"},children:[e.jsx("div",{style:{width:34,height:34,borderRadius:10,background:"linear-gradient(135deg,#0ea5a3,#6366f1)",display:"flex",alignItems:"center",justifyContent:"center",boxShadow:"0 6px 18px rgba(14,165,163,.25)"},children:e.jsx(me,{size:20})}),e.jsxs("span",{style:{fontSize:18,fontWeight:700,color:"#0f172a",letterSpacing:"-.02em"},children:["Beetl",e.jsx("span",{style:{color:"#0ea5a3",fontWeight:800},children:"AI"})]})]}),e.jsxs("div",{className:"si-box",children:[e.jsx("h1",{style:{fontSize:24,fontWeight:700,color:"#0f172a",letterSpacing:"-.02em",marginBottom:6},children:"Welcome back"}),e.jsx("p",{style:{fontSize:14,color:"#64748b",marginBottom:32,lineHeight:1.5},children:"Enter your workspace name to continue."}),e.jsxs("form",{onSubmit:l,children:[e.jsx("label",{className:"si-label",children:"Worksp
1088ace name"}),e.jsx("input",{className:"si-input",placeholder:"e.g. acme",value:t,onChange:c=>r(c.target.value),autoFocus:!0,autoCapitalize:"none",autoCorrect:"off",spellCheck:!1}),d&&e.jsxs("div",{className:"si-preview",children:["â ",ro(d)]}),o&&e.jsx("div",{className:"si-error",children:o}),e.jsx("button",{className:"si-btn",type:"submit",disabled:s,children:s?"Checkingâ¦":"Go to workspace â"})]}),e.jsx("p",{style:{marginTop:16,fontSize:12,color:"#94a3b8",textAlign:"center"},children:"Your workspace name was included in your welcome email."})]}),e.jsxs("div",{className:"si-foot",children:["Don't have an account?"," ",e.jsx(q,{to:"/signup?plan=free",children:"Start for free"})," · ",e.jsx(q,{to:"/",children:"Home"})]})]})]})}const aa=i.lazy(()=>m(()=>import("./ProductPage-ebOD_jw-.js"),__vite__mapDeps([119,1]))),sa=i.lazy(()=>m(()=>import("./ContactPage-DUz1rW0N.js"),__vite__mapDeps([120,1]))),la=i.lazy(()=>m(()=>import("./PrivacyPolicyPage-BodxhnPO.js"),__vite__mapDeps([121,1]))),ca=i.lazy(()=>m(()=>import("./SignupPage-DOSekjLJ.js"),__vite__mapDeps([122,1]))),da=i.lazy(()=>m(()=>import("./PaymentPage-qOURW0xb.js"),__vite__mapDeps([123,1]))),pa=i.lazy(()=>m(()=>import("./SocialConnectPage-g3GaiiEG.js"),__vite__mapDeps([124,1]))),ua=i.lazy(()=>m(()=>import("./OutreachConnectPage-D7z1m26-.js"),__vite__mapDeps([125,1]))),ha=i.lazy(()=>m(()=>import("./VerifyEmailPage-j-LkufWu.js"),__vite__mapDeps([126,1]))),ga=i.lazy(()=>m(()=>import("./ForgotPasswordPage-BZ4r7s_J.js"),__vite__mapDeps([127,1]))),fa=i.lazy(()=>m(()=>import("./ResetPasswordPage-DTN4HzCq.js"),__vite__mapDeps([128,1]))),xa=i.lazy(()=>m(()=>import("./JoinPage-BlWDtFcX.js"),__vite__mapDeps([129,1,117,111,112,118]))),ma=i.lazy(()=>m(()=>import("./SettingsPage-uwIFaYzF.js"),__vite__mapDeps([130,1,6]))),ba=i.lazy(()=>m(()=>import("./UpgradePage-DJEcswiY.js"),__vite__mapDeps([131,1])));function Rr(){const t=typeof window<"u"&&(localStorage.getItem("beetlai.landing.theme")||localStorage.getItem("mav.landing.theme"))||"light";return e.jsx(xn,{theme:t,message:"Loading your workspace",showFact:!0})}function rr(t,r){const o=new Set(t||[]),n=new Set(r||[]);for(const{product:s,perm:a,path:l}of Pr)if(!(s&&!n.has(s))&&(!a||o.has(a)))return l;return"/dashboard/settings"}function ut({children:t,perm:r,product:o}){const{isAuthenticated:n,loading:s,hasPermission:a,permissions:l,enabledProducts:d}=Me();return s?e.jsx(Rr,{}):n?o&&!(d||[]).includes(o)?e.jsx(ge,{to:rr(l,d),replace:!0}):r&&!a(r)?e.jsx(ge,{to:rr(l,d),replace:!0}):t:e.jsx(ge,{to:"/login",replace:!0})}function ya(){const{pathname:t}=Ie();return i.useEffect(()=>{gn()},[]),i.useEffect(()=>(fn(t),()=>Zt()),[t]),i.useEffect(()=>{const r=()=>Zt();return window.addEventListener("beforeunload",r),()=>window.removeEventListener("beforeunload",r)},[]),null}function va(){return e.jsxs(e.Fragment,{children:[e.jsx(ya,{}),e.jsx(i.Suspense,{fallback:e.jsx(Rr,{}),children:e.jsxs(Fr,{children:[e.jsx(W,{path:"/",element:e.jsx(Eo,{})}),e.jsx(W,{path:"/products/:slug",element:e.jsx(aa,{})}),e.jsx(W,{path:"/contact",element:e.jsx(sa,{})}),e.jsx(W,{path:"/privacy",element:e.jsx(la,{})}),e.jsx(W,{path:"/signin",element:e.jsx(ia,{})}),e.jsx(W,{path:"/login",element:e.jsx(oa,{})}),e.jsx(W,{path:"/signup",element:e.jsx(ca,{})}),e.jsx(W,{path:"/payment",element:e.jsx(da,{})}),e.jsx(W,{path:"/social-connect",element:e.jsx(pa,{})}),e.jsx(W,{path:"/outreach-connect",element:e.jsx(ua,{})}),e.jsx(W,{path:"/verify-email",element:e.jsx(ha,{})}),e.jsx(W,{path:"/forgot-password",element:e.jsx(ga,{})}),e.jsx(W,{path:"/reset-password",element:e.jsx(fa,{})}),e.jsx(W,{path:"/dashboard/video/join/:token",element:e.jsx(xa,{})}),e.jsxs(W,{element:e.jsx(pn,{children:e.jsx(i.Suspense,{fallback:e.jsx(bn,{}),children:e.jsx(Hr,{})})}),children:[Ar.map(({path:t,product:r,perm:o,Component:n})=>e.jsx(W,{path:t,element:e.jsx(ut,{product:r,perm:o,children:e.jsx(n,{})})},t)),e.jsx(W,{path:"/dashboard/settings",element:e.jsxs(ut,{product:se,children:[" ",e.jsx(ma,{})]})}),e.jsx(W,{path:"/dashboard/upgrade",element:e.jsxs(ut,{product:se,children:[" ",e.jsx(ba,{})]})})]}),e.jsx(W,{path:"*",element:e.jsx(ge,{to:"/",replace:!0})})]})})]})}const Er=i.createContext({notify:()=>{}}),zr=24*60*60*1e3,Lr="mav_seen_job_notifications",xe=new Map;let or=!1;const wa=new Set(["completed","failed"]),ka=new Set(["completed","failed"]),ja=new Set(["completed","failed"]);function O(t,r=""){return String(t||"").trim()||r}function ht(t){return O(t).replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,r=>r.toUpperCase())}function Sa(t){const r=O(t==null?void 0:t.status).toLowerCase();return r!=="ready"&&r!=="failed"?null:{key:`report:${O((t==null?void 0:t.job_id)||(t==null?void 0:t.id)||(t==null?void 0:t.report_id))}`,type:r==="failed"?"error":"success",title:r==="failed"?"Report failed":"Report ready",body:r==="failed"?O(t==null?void 0:t.error,O(t==null?void 0:t.t
1088itle,"The report could not be generated.")):O(t==null?void 0:t.title,"Your report is ready to download.")}}function _a(t){var s;const r=O(t==null?void 0:t.status).toLowerCase();if(!ka.has(r))return null;const o=O((s=t==null?void 0:t.product)==null?void 0:s.name,"Product Intelligence");return{key:`product:${O((t==null?void 0:t.latest_job_id)||(t==null?void 0:t.current_job_id)||(t==null?void 0:t.product_id))}`,type:r==="failed"?"error":"success",title:r==="failed"?"Product intelligence failed":"Product intelligence ready",body:r==="failed"?O(t==null?void 0:t.error,`${o} could not be refreshed.`):`${o} has fresh intelligence ready.`}}function Ca(t){var s,a,l;const r=O((t==null?void 0:t.crawl_status)||((s=t==null?void 0:t.active_run)==null?void 0:s.status)).toLowerCase();if(!ja.has(r))return null;const o=O(t==null?void 0:t.name,"Competitor");return{key:`competitor:${O((t==null?void 0:t.current_run_id)||((a=t==null?void 0:t.active_run)==null?void 0:a.job_id)||(t==null?void 0:t.id))}`,type:r==="failed"?"error":"success",title:r==="failed"?"Competitor refresh failed":"Competitor refresh ready",body:r==="failed"?O((t==null?void 0:t.last_error)||((l=t==null?void 0:t.active_run)==null?void 0:l.error),`${o} could not be refreshed.`):`${o} has fresh crawl insights ready.`}}function Aa(t){const r=(t==null?void 0:t.preview)||{},o=O(r.status||(t==null?void 0:t.status)).toLowerCase();if(!o||!["ready","failed"].includes(o)&&!wa.has(o))return null;const n=O((t==null?void 0:t.name)||(t==null?void 0:t.product_name),"Ad Studio");return{key:`creative:${O(r.job_id||(t==null?void 0:t.current_job_id)||(t==null?void 0:t.id))}`,type:o==="failed"?"error":"success",title:o==="failed"?"Ad render failed":"Ad render ready",body:o==="failed"?O(t==null?void 0:t.error,`${n} could not be rendered.`):`${n} has a new render ready in the gallery.`}}function Pa(t){const r=O(t==null?void 0:t.status).toLowerCase(),o=r==="done"?"completed":r,n=O(t==null?void 0:t.kind).toLowerCase();if(!n||n==="report"||!["completed","failed"].includes(o))return null;const a=O(t!=null&&t.video_url?"video":t!=null&&t.image_url?"image":t!=null&&t.audio_url?"audio":"").toLowerCase()||(n.includes("video")?"video":n.includes("image")?"image":n.includes("audio")?"audio":"");if(t!=null&&t.post_id||a){const l=a?ht(a):"Media",d=O((t==null?void 0:t.campaign_name)||(t==null?void 0:t.platform)||(t==null?void 0:t.title),"the current post");return{key:`media:${O((t==null?void 0:t.external_media_job_id)||(t==null?void 0:t.job_id))}`,type:o==="failed"?"error":"success",title:o==="failed"?`${l} generation failed`:`${l} ready`,body:o==="failed"?O(t==null?void 0:t.error,`${d} could not be rendered.`):`${l} generation finished for ${d}.`}}return{key:`job:${(t==null?void 0:t.job_id)||n||"background"}`,type:o==="failed"?"error":"success",title:o==="failed"?"Background job failed":"Background job completed",body:o==="failed"?O(t==null?void 0:t.error,`${ht(n)} could not be completed.`):`${ht(n)} finished successfully.`}}function Ra(t){const r=O(t==null?void 0:t.event);return!r||r==="connected"||r==="heartbeat"?null:r==="report-updated"?Sa(t.payload||{}):r==="product-intel-updated"?_a(t.payload||{}):r==="competitor-updated"?Ca(t.payload||{}):r==="ad-creative-updated"?Aa(t.payload||{}):r==="job-updated"?Pa(t.payload||{}):r==="bulk-send-complete"?Ea(t.payload||{}):null}function Ea(t){const r=Number(t.total)||0,o=Number(t.sent)||0,n=Number(t.failed)||0,s=String(t.channel||"email"),a=n>0;return{key:`bulk-send-${t.job_id}`,type:a?"warning":"success",title:`Bulk ${s} send finished`,body:a?`${o} sent, ${n} failed of ${r}. Open the workflow's Lane 4 to retry the failures.`:`${o} message${o!==1?"s":""} delivered.`}}function vt(t=Date.now()){for(const[r,o]of xe.entries())t-o>zr&&xe.delete(r)}function za(){if(!(typeof window>"u"))try{const t=window.localStorage.getItem(Lr);if(!t)return;const r=JSON.parse(t);if(!r||typeof r!="object")return;const o=Date.now();for(const[n,s]of Object.entries(r)){const a=Number(s);Number.isFinite(a)&&o-a<=zr&&xe.set(n,a)}vt(o)}catch{}}function nr(){or||(za(),or=!0)}function La(){if(!(typeof window>"u"))try{vt(),window.localStorage.setItem(Lr,JSON.stringify(Object.fromEntries(xe.entries())))}catch{}}function Ia({children:t}){nr();const{isAuthenticated:r,loading:o}=Me(),[n,s]=i.useState([]),a=i.useRef(new Map),l=i.useRef(new Set),d=i.useCallback(p=>{s(v=>v.filter(h=>h.id!==p));const u=a.current.get(p);u&&(clearTimeout(u),a.current.delete(p))},[]),c=i.useCallback(p=>{if(!p||!p.title)return;nr();const u=O(p.key||p.id||`${p.title}:${p.body||""}`);if(u){const b=Date.now();if(vt(b),l.current.has(u)||xe.has(u))return;l.current.add(u),xe.set(u,b),La()}const v=`${Date.now()}-${Math.random().toString(16).slice(2)}`,h={id:v,type:p.type==="error"?"error":p.type==="warning"?"warning":"success",title:O(p.title),body:O(p.body)};s(b=>[...b,h].slice(-4));const x=setTimeout(()=>
1088d(v),6200);a.current.set(v,x)},[d]);i.useEffect(()=>()=>{for(const p of a.current.values())clearTimeout(p);a.current.clear()},[]),i.useEffect(()=>{function p(u){const v=(u==null?void 0:u.detail)||{},h=O(v.title,"Request failed"),x=O(v.body);h&&c({key:`api-error:${v.status||""}:${h}:${x}:${Math.floor(Date.now()/4e3)}`,type:"error",title:h,body:x})}return window.addEventListener("api-error",p),()=>window.removeEventListener("api-error",p)},[c]),i.useEffect(()=>{if(!(o||!r))return Ze(p=>{if((p==null?void 0:p.event)==="inbox-updated")try{window.dispatchEvent(new CustomEvent("inbox-updated",{detail:p.payload||{}}))}catch{}const u=Ra(p);u&&c(u)})},[r,o,c]);const f=i.useMemo(()=>({notify:c,dismiss:d}),[c,d]);return e.jsxs(Er.Provider,{value:f,children:[t,e.jsx("div",{style:{position:"fixed",top:20,right:20,zIndex:12e3,display:"flex",flexDirection:"column",gap:10,pointerEvents:"none"},children:n.map(p=>e.jsx("div",{style:{minWidth:300,maxWidth:380,padding:"13px 16px",borderRadius:14,boxShadow:"0 12px 36px rgba(15,23,42,0.22)",border:p.type==="error"?"1px solid rgba(248,113,113,0.28)":p.type==="warning"?"1px solid rgba(245,158,11,0.28)":"1px solid rgba(34,197,94,0.24)",background:p.type==="error"?"rgba(127,29,29,0.96)":p.type==="warning"?"rgba(120,53,15,0.96)":"rgba(6,78,59,0.96)",color:"#fff",pointerEvents:"auto",animation:"job-toast-in .18s ease",backdropFilter:"blur(10px)"},children:e.jsxs("div",{style:{display:"flex",alignItems:"start",gap:12},children:[e.jsx("div",{style:{fontSize:18,lineHeight:"20px"},children:p.type==="error"?"â":p.type==="warning"?"!":"â"}),e.jsxs("div",{style:{flex:1},children:[e.jsx("div",{style:{fontSize:13,fontWeight:700,marginBottom:3},children:p.title}),p.body&&e.jsx("div",{style:{fontSize:12,lineHeight:1.5,color:"rgba(255,255,255,0.84)"},children:p.body})]}),e.jsx("button",{type:"button",onClick:()=>d(p.id),style:{appearance:"none",border:"none",background:"transparent",color:"rgba(255,255,255,0.72)",cursor:"pointer",fontSize:16,lineHeight:1},children:"Ã"})]})},p.id))}),e.jsx("style",{children:` 1089 @keyframes job-toast-in { 1090 from { opacity: 0; transform: translateY(-8px) scale(.98); } 1091 to { opacity: 1; transform: translateY(0) scale(1); } 1092 } 1093 `})]})}function Na(){return i.useContext(Er)}const $e="",Ir=i.createContext(null);function Ma({children:t}){const r=i.useRef({}),[o,n]=i.useState(new Set),[s,a]=i.useState(new Set),[l,d]=i.useState({}),c=i.useCallback((h,x,b=[])=>{if(r.current[h])return;b.length>0&&d(k=>({...k,[h]:Object.fromEntries(b.map(P=>[P,{status:"scraping",count:0}]))}));const j=`${$e}/api/social/${h}/stream`,E=new EventSource(j,{withCredentials:!0}),A=()=>{E.close(),delete r.current[h],n(k=>{const P=new Set(k);return P.delete(h),P})};let z=null,L=0;const R=5,w=()=>{z&&clearTimeout(z),A()},g=k=>{if(k.event!=="connected"){if(k.event==="platform_done"){const{platform:P,count:y}=k,M=y>0?"done":"empty";d(B=>({...B,[h]:{...B[h]||{},[P]:{status:M,count:y}}}));return}(k.event==="done"||k.event==="timeout")&&(w(),a(P=>new Set([...P,h])),x==null||x(h))}};E.onerror=()=>{E.close(),delete r.current[h],fetch(`${$e}/api/social/${h}/stream`,{method:"GET",credentials:"include",headers:{Accept:"text/event-stream","Cache-Control":"no-store"},signal:AbortSignal.timeout(5e3)}).then(k=>{var y;if(k.status===401||k.status===403){fetch(`${$e}/api/social/${h}/clear-runs`,{method:"POST",credentials:"include"}).catch(()=>{}),w();return}if((y=k.body)==null||y.cancel().catch(()=>{}),L>=R){w();return}const P=Math.min(3e3*Math.pow(2,L),3e4);L++,z=setTimeout(()=>{r.current[h]||c(h,x,b)},P)}).catch(()=>{if(L>=R){w();return}const k=Math.min(3e3*Math.pow(2,L),3e4);L++,z=setTimeout(()=>{r.current[h]||c(h,x,b)},k)})},E.onmessage=k=>{try{g(JSON.parse(k.data))}catch{}},r.current[h]=E,n(k=>new Set([...k,h]))},[]),f=i.useCallback((h,x)=>{h.forEach(b=>{const j=b.apify_runs||{},E=b.run_status||{};if(Object.values(j).some(Boolean)){const z={};for(const[L,R]of Object.entries(j))R&&(z[L]={status:"scraping",count:0});for(const[L,R]of Object.entries(E))if(R==="scraping")z[L]={status:"scraping",count:0};else if(R==="failed")z[L]={status:"failed",count:0};
1093else if(typeof R=="string"&&R.startsWith("done:")){const w=parseInt(R.split(":")[1],10)||0;z[L]={status:w>0?"done":"empty",count:w}}Object.keys(z).length>0&&d(L=>({...L,[b.id]:{...L[b.id]||{},...z}})),c(b.id,x)}})},[c]),p=i.useCallback(h=>{a(x=>{const b=new Set(x);return b.delete(h),b})},[]),u=i.useCallback(async h=>{r.current[h]&&(r.current[h].close(),delete r.current[h]),n(x=>{const b=new Set(x);return b.delete(h),b}),d(x=>{const b={...x};return delete b[h],b});try{await fetch(`${$e}/api/social/${h}/cancel`,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json"}})}catch{}},[]),v={fetchingIds:o,completedIds:s,platformStatus:l,subscribeSSE:c,clearCompleted:p,reconnectForFetching:f,cancelScrape:u};return e.jsx(Ir.Provider,{value:v,children:t})}function $a(){const t=i.useContext(Ir);if(!t)throw new Error("useSocial must be used inside SocialProvider");return t}class Ta extends ir.Component{constructor(o){super(o);_t(this,"handleReload",()=>{window.location.reload()});this.state={hasError:!1,message:""}}static getDerivedStateFromError(o){return{hasError:!0,message:String((o==null?void 0:o.message)||"Something went wrong while rendering this page.")}}componentDidCatch(o,n){console.error("frontend.error_boundary",o,n)}render(){return this.state.hasError?e.jsx("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",padding:24,background:"#04070f",color:"#dde6f0",fontFamily:"'Sora','DM Sans',system-ui,sans-serif"},children:e.jsxs("div",{style:{width:"min(520px, 100%)",borderRadius:20,border:"1px solid rgba(255,255,255,.08)",background:"rgba(15,23,42,.96)",padding:28,boxShadow:"0 20px 60px rgba(2,6,23,.42)"},children:[e.jsx("div",{style:{fontSize:13,fontWeight:800,letterSpacing:".08em",textTransform:"uppercase",color:"#818cf8",marginBottom:10},children:"Interface Recovery"}),e.jsx("div",{style:{fontSize:30,fontWeight:800,lineHeight:1.12,marginBottom:12},children:"This page hit an unexpected rendering error."}),e.jsx("div",{style:{fontSize:15,lineHeight:1.65,color:"#94a3b8",marginBottom:20},children:"The app is still running, but this screen needs a clean reload to recover safely."}),e.jsx("div",{style:{padding:"12px 14px",borderRadius:12,background:"rgba(239,68,68,.08)",border:"1px solid rgba(239,68,68,.18)",color:"#fecaca",fontSize:13,lineHeight:1.5,marginBottom:20},children:this.state.message}),e.jsx("button",{type:"button",onClick:this.handleReload,style:{border:"none",borderRadius:12,padding:"11px 16px",background:"linear-gradient(135deg,#2dd4bf,#6366f1)",color:"#fff",fontWeight:700,cursor:"pointer",fontFamily:"inherit"},children:"Reload App"})]})}):this.props.children}}gt.createRoot(document.getElementById("root")).render(e.jsx(ir.StrictMode,{children:e.jsx(Vr,{children:e.jsx(no,{children:e.jsx(Ma,{children:e.jsx(ln,{children:e.jsx(an,{children:e.jsx(Ia,{children:e.jsx(Ta,{children:e.jsx(va,{})})})})})})})})}));export{de as A,me as B,Oo as F,ce as I,Wa as L,fe as P,Te as S,yr as T,m as _,pn as a,Wo as b,Ae as c,Re as d,Pe as e,Ce as f,wo as g,_e as h,Ee as i,se as j,ze as k,$ as l,to as m,dr as n,Ue as o,Xe as p,e as q,Me as r,Ze as s,Na as t,Da as u,Co as v,$a as w,sn as x,nn as y};
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.