1"use strict";(globalThis.webpackChunkfrontend||=[]).push([[4477],{34320(e,t,s){var a=s(65043),r=s(37719),n=s(28646),l=s(75088),i=s(81990),c=s(51419),o=s(7118),d=s(40614),x=s(81243),m=s(70579);const u=e=>{const t=Math.max(0,Math.floor(e/1e3));return`${Math.floor(t/60)}:${String(t%60).padStart(2,"0")}`},h=e=>{if(!e)return"";const[t,s,a]=e.split("-").map(Number);return new Date(t,s-1,a).toLocaleDateString("en-US",{weekday:"short",month:"short",day:"numeric"})},p=()=>{const[e,t]=(0,a.useState)((0,x.y2)()),[s,p]=(0,a.useState)(!1),[g,f]=(0,a.useState)(!1),[b,j]=(0,a.useState)(""),[N,y]=(0,a.useState)(!1),[,w]=(0,a.useState)(0),v=(0,a.useCallback)(()=>t((0,x.y2)()),[]);(0,a.useEffect)(()=>(window.addEventListener("bf-itinerary-changed",v),window.addEventListener("storage",v),()=>{window.removeEventListener("bf-itinerary-changed",v),window.removeEventListener("storage",v)}),[v]),(0,a.useEffect)(()=>{const e=new URLSearchParams(window.location.search);if("1"===e.get("cart_added")){y(!0),e.delete("cart_added");const t=e.toString();window.history.replaceState({},"",window.location.pathname+(t?`?${t}`:""))}},[]),(0,a.useEffect)(()=>{if(!N)return;const e=setTimeout(()=>y(!1),4e3);return()=>clearTimeout(e)},[N]),(0,a.useEffect)(()=>{N&&0===e.length&&y(!1)},[N,e.length]),(0,a.useEffect)(()=>{if(0===e.length)return;const t=setInterval(()=>{w(e=>e+1),v()},1e3);return()=>clearInterval(t)},[e.length,v]);const k=(0,x.sU)(e),A=e.length?Math.min(...e.map(x.Pw)):0,C=e.reduce((e,t)=>{var s,a;const r=(null===(s=t.display)||void 0===s?void 0:s.symbol)||"$";return e[r]=(e[r]||0)+(Number(null===(a=t.display)||void 0===a?void 0:a.total)||0),e},{}),S=Object.entries(C).map(e=>{let[t,s]=e;return`${t}${s.toFixed(2)}`}).join(" + ");return(0,m.jsxs)(m.Fragment,{children:[N&&(0,m.jsxs)("div",{"data-testid":"cart-added-toast",className:"fixed top-5 left-1/2 -translate-x-1/2 z-[60] flex items-center gap-2.5 px-5 py-3 rounded-full bg-gray-900 text-white text-sm font-medium shadow-modal animate-in fade-in slide-in-from-top-3 duration-300",children:[(0,m.jsx)(c.A,{className:"w-4 h-4 text-blue-300"}),"Added to your cart \u2014 held for 10 minutes"]}),e.length>0&&(0,m.jsxs)("button",{onClick:()=>p(!0),"data-testid":"itinerary-float-btn",className:"fixed bottom-6 right-6 z-50 flex items-center gap-2 px-5 py-3 rounded-full bg-blue-600 text-white font-medium shadow-modal hover:bg-blue-700 transition-all duration-200",children:[(0,m.jsx)(c.A,{className:"w-4 h-4"}),(0,m.jsx)("span",{children:"Cart"}),(0,m.jsx)("span",{className:"flex items-center justify-center min-w-[22px] h-[22px] px-1.5 rounded-full bg-white text-blue-600 text-xs font-bold","data-testid":"itinerary-count",children:e.length}),(0,m.jsx)("span",{className:"text-xs text-blue-100 font-mono","data-testid":"cart-countdown",children:u(A)})]}),s&&(0,m.jsxs)("div",{className:"fixed inset-0 z-[70]","data-testid":"cart-drawer",children:[(0,m.jsx)("div",{className:"absolute inset-0 bg-black/40",onClick:()=>p(!1)}),(0,m.jsxs)("div",{className:"absolute right-0 top-0 h-full w-full max-w-md bg-white shadow-raised flex flex-col",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between px-5 py-4",children:[(0,m.jsxs)("div",{children:[(0,m.jsx)("h2",{className:"text-lg font-semibold tracking-tight text-gray-900",children:"Your Cart"}),(0,m.jsx)("p",{className:"text-xs text-gray-500",children:"Held for 10 minutes \xb7 no payment yet"})]}),(0,m.jsx)("button",{onClick:()=>p(!1),"data-testid":"cart-drawer-close",className:"p-2 rounded-full hover:bg-gray-100 transition-colors",children:(0,m.jsx)(d.A,{className:"w-5 h-5 text-gray-500"})})]}),(0,m.jsxs)("div",{className:"flex-1 overflow-y-auto px-5 py-4 space-y-3",children:[e.map((e,t)=>{const s=e.display||{};return(0,m.jsxs)("div",{"data-testid":`cart-item-${t}`,className:"bg-gray-50 rounded-2xl p-3.5 flex gap-3",children:[s.image?(0,m.jsx)("img",{src:s.image,alt:s.serviceName,className:"w-16 h-16 rounded-xl object-cover flex-shrink-0"}):(0,m.jsx)("div",{className:"w-16 h-16 rounded-xl bg-gray-100 flex items-center justify-center flex-shrink-0",children:(0,m.jsx)(n.A,{className:"w-6 h-6 text-gray-400"})}),(0,m.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,m.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,m.jsxs)("div",{className:"min-w-0",children:[(0,m.jsx)("p",{className:"text-sm font-semibold text-gray-900 truncate",children:s.serviceName}),(0,m.jsx)("p",{className:"text-xs text-gray-500 truncate",children:s.orgName}),s.isPackage&&(0,m.jsxs)("span",{className:"inline-flex items-center gap-1 mt-1 rounded-full bg-primary-soft text-primary-soft-foreground text-[11px] font-bold px-2 py-0.5","data-testid":`cart-item-package-chip-${t}`,children:[(0,m.jsx)(i.A,{className:"w-2.5 h-2.5"})," Package \xb7 ",s.itemCount," experiences"]}
1)]}),(0,m.jsx)("button",{onClick:()=>{(0,x.K7)(e.id)},"data-testid":`cart-item-remove-${t}`,className:"p-1 rounded-full hover:bg-gray-100 text-gray-400 hover:text-gray-600 flex-shrink-0",title:"Remove",children:(0,m.jsx)(d.A,{className:"w-4 h-4"})})]}),(0,m.jsxs)("div",{className:"flex items-center gap-3 mt-1.5 text-xs text-gray-600",children:[(0,m.jsxs)("span",{children:[h(s.date)," \xb7 ",s.displayTime]}),(0,m.jsxs)("span",{className:"flex items-center gap-1",children:[(0,m.jsx)(o.A,{className:"w-3 h-3"}),s.guests]})]}),(0,m.jsxs)("div",{className:"flex items-center justify-between mt-1.5",children:[(0,m.jsxs)("span",{className:"flex items-center gap-1 text-xs text-amber-600 font-medium",children:[(0,m.jsx)(l.A,{className:"w-3 h-3"}),u((0,x.Pw)(e))]}),(0,m.jsxs)("span",{className:"text-sm font-bold text-gray-900",children:[s.symbol,Number(s.total||0).toFixed(2)]})]}),k.has(e.id)&&(0,m.jsxs)("p",{className:"flex items-center gap-1 mt-1.5 text-[11px] bg-warning-soft text-warning-soft-foreground rounded-lg px-2 py-1",children:[(0,m.jsx)(r.A,{className:"w-3 h-3 flex-shrink-0"})," Overlaps with another booking \u2014 that's fine if intentional"]})]})]},e.id)}),0===e.length&&(0,m.jsx)("p",{className:"text-sm text-gray-500 text-center py-10",children:"Your cart is empty."})]}),e.length>0&&(0,m.jsxs)("div",{className:"px-5 py-4 space-y-3 bg-gray-50/60",children:[b&&(0,m.jsx)("p",{"data-testid":"cart-checkout-error",className:"text-xs bg-danger-soft text-danger-soft-foreground rounded-lg px-3 py-2",children:b}),(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsxs)("span",{className:"text-sm text-gray-600",children:["Total (",e.length," ",1===e.length?"experience":"experiences",")"]}),(0,m.jsx)("span",{className:"text-lg font-semibold text-gray-900","data-testid":"cart-total",children:S})]}),(0,m.jsx)("button",{onClick:async()=>{if(e.length&&!g){f(!0),j("");try{await(0,x.Dc)(e[0])}catch(t){j(t.message||"Something went wrong. Please try again."),f(!1)}}},disabled:g,"data-testid":"cart-complete-booking-btn",className:"w-full py-3.5 rounded-xl bg-blue-600 text-white font-semibold hover:bg-blue-700 transition-colors disabled:opacity-60",children:g?"Starting secure checkout\u2026":1===e.length?"Complete Booking":`Complete Booking \u2014 pay 1 of ${e.length}`}),(0,m.jsx)("p",{className:"text-[11px] text-gray-400 text-center leading-relaxed",children:"Each experience is paid securely to its operator. After each payment you'll be brought right back to pay the next one."})]})]})]})]})};s.d(t,["A",0,p])},47357(e,t,s){s(65043);var a=s(53217),r=s(75088),n=s(55731),l=s(28006),i=s(63944),c=s(74621),o=s(70579);const d=e=>{var t;let{service:s,featured:d=!1,showDistance:x=!1,testId:m,imgSrc:u,eager:h=!1,badge:p}=e;const g=(0,a.Zp)();if(!s)return null;const f=u||s.mainImage||s.images&&s.images[0],b=s.operator||{},j=b.reviewCount>0&&b.rating;return(0,o.jsxs)("article",{onClick:()=>g(`/experience/${s.id}`),className:"group flex h-full cursor-pointer flex-col rounded-3xl bg-white p-3 shadow-soft transition-[box-shadow,transform] duration-300 hover:shadow-raised","data-testid":m||`experience-card-${s.id}`,children:[(0,o.jsxs)("div",{className:"relative aspect-[5/4] overflow-hidden rounded-2xl bg-gray-100",children:[f?(0,o.jsx)("img",{src:f,alt:s.name,loading:h?"eager":"lazy",fetchPriority:h?"high":"auto",className:"h-full w-full object-cover transition-transform duration-500 group-hover:scale-105"}):(0,o.jsx)("div",{className:"flex h-full w-full items-center justify-center bg-[#04091B]",children:(0,o.jsx)(n.A,{className:"h-10 w-10 text-slate-600"})}),d?(0,o.jsxs)("span",{className:"absolute left-2 top-2 inline-flex items-center gap-1 rounded-full bg-white/90 px-2.5 py-1 text-[11px] font-bold text-gray-900 backdrop-blur",children:[(0,o.jsx)(i.A,{className:"h-3 w-3 fill-amber-400 text-amber-400"}),"Featured"]}):p?(0,o.jsx)("span",{className:"absolute left-2 top-2 rounded-full bg-white/90 px-2.5 py-1 text-[11px] font-semibold text-gray-700 backdrop-blur",children:p}):null]}),(0,o.jsxs)("div",{className:"flex flex-1 flex-col px-1.5 pb-1.5 pt-3.5","data-testid":"experience-card-body",children:[(0,o.jsxs)("div",{className:"flex items-center justify-between gap-2 text-sm text-gray-500",children:[(0,o.jsxs)("span",{className:"flex min-w-0 items-center gap-1",children:[(0,o.jsx)(l.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,o.jsx)("span",{className:"truncate",children:s.city||"Location TBD"})]}),null!==(t=b.googleReviews)&&void 0!==t&&t.count?(0,o.jsx)(c.A,{reviews:b.googleReviews}):j?(0,o.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-0.5 text-xs font-bold text-gray-900",children:[(0,o.jsx)(i.A,{className:"h-3.5 w-3.5 fill-amber-400 text-amber-400"}),Number(b.rating).toFixed(1),(0,o.jsxs)("span",{className:"font-medium text-gray-400",children:["(",b.reviewCount,")"]})]}):null]}),(0,o.jsx)("h3",{className:"mt-1.5 line-clamp-2 text-lg font-semibold leading-snug text-gray-900 transition-colors group-hover:text-blue-600",children:s.name}),b.name&&(0,o.jsxs)("p",{className:"mt-1 truncate text-sm text-gray-500",children:["by ",b.name]}),(0,o.jsx)("div",{className:"mt-auto pt-3",children:(0,o.jsxs)("div",{className:"flex items-center justify-between gap-2 border-t border-gray-100 pt-2.5",children:[(0,o.jsxs)("span",{className:"flex min-w-0 items-center gap-1 text-sm text-gray-500",children:[(0,o.jsx)(r.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,o.jsx)("span",{className:"truncate",children:(e=>{if(!e)return"\u2014";if(e>=1440){const t=Math.floor(e/1440);return`${t} day${t>1?"s":""}`}if(e>=60){const t=Math.floor(e/60),s=e%60;return s>0?`${t}h ${s}m`:`${t} hour${t>1?"s":""}`}return`${e}m`})(s.durationMinutes)}),x&&s.distance&&(0,o.jsxs)("span",{className:"shrink-0 text-emerald-600",children:["\xb7 ",Math.round(s.distance)," mi"]})]}),(0,o.jsxs)("div",{className:"shrink-0 text-right",children:[(0,o.jsx)("span",{className:"text-xl font-extrabold tabular-nums text-blue-600",children:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"USD";return new Intl.NumberFormat("en-US",{style:"currency",currency:t,minimumFractionDigits:0,maximumFractionDigits:0}).format(e||0)}(s.price,s.currency)}),"per_person"===s.priceType&&(0,o.jsx)("span",{className:"text-xs text-gray-400",children:" /pers
1on"})]})]})})]})]})};s.d(t,["A",0,d])},74621(e,t,s){s(65043);var a=s(63944),r=s(70579);const n=e=>{let{className:t="w-3.5 h-3.5"}=e;return(0,r.jsxs)("svg",{className:t,viewBox:"0 0 48 48","aria-hidden":"true",children:[(0,r.jsx)("path",{fill:"#FFC107",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"}),(0,r.jsx)("path",{fill:"#FF3D00",d:"M6.306 14.691l6.571 4.819C14.655 15.108 18.961 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"}),(0,r.jsx)("path",{fill:"#4CAF50",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"}),(0,r.jsx)("path",{fill:"#1976D2",d:"M43.611 20.083H42V20H24v8h11.303c-.792 2.237-2.231 4.166-4.087 5.571l6.19 5.238C36.971 39.205 44 34 44 24c0-1.341-.138-2.65-.389-3.917z"})]})},l=e=>{let{reviews:t,size:s="sm",className:l=""}=e;if(null===t||void 0===t||!t.count)return null;const i=Number(t.count).toLocaleString("en-US"),c="lg"===s;return(0,r.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),e.preventDefault(),t.url&&window.open(t.url,"_blank","noopener,noreferrer")},title:`${i}+ Google reviews`,className:`inline-flex items-center ${c?"gap-1.5":"gap-1"} hover:opacity-75 transition-opacity cursor-pointer ${l}`,"data-testid":"google-review-badge",children:[(0,r.jsx)(n,{className:c?"w-5 h-5":"w-3.5 h-3.5"}),(0,r.jsx)("span",{className:"flex items-center gap-0.5",children:[1,2,3,4,5].map(e=>(0,r.jsx)(a.A,{className:(c?"w-4 h-4":"w-3 h-3")+" text-amber-400 fill-amber-400"},e))}),(0,r.jsxs)("span",{className:(c?"text-sm text-gray-600":"text-xs text-gray-500")+" font-medium whitespace-nowrap",children:[i,"+",c?" Google reviews":""]})]})};s.d(t,["A",0,l,"J",0,n])},68358(e,t,s){s.d(t,{J9:()=>a.A,tY:()=>o.A,h:()=>m,mQ:()=>g,vE:()=>h});var a=s(47357),r=(s(65043),s(53217)),n=s(81990),l=s(28006),i=s(63944),c=s(91140),o=s(74621),d=s(70579);const x=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"USD";return new Intl.NumberFormat("en-US",{style:"currency",currency:t,minimumFractionDigits:0,maximumFractionDigits:0}).format(e||0)},m=e=>{var t;let{pkg:s,testId:a}=e;const m=(0,r.Zp)();if(!s)return null;const u=s.operator||{},h=s.imageUrl||s.images&&s.images[0],p=Math.round(s.discountPercent||0),g=u.reviewCount>0&&u.rating;return(0,d.jsxs)(c.Zp,{onClick:()=>m(`/package/${s.id}`),className:"group cursor-pointer border-0 rounded-3xl bg-white p-3 shadow-soft hover:shadow-raised transition-[box-shadow,transform] duration-300","data-testid":a||`marketplace-package-card-${s.id}`,children:[(0,d.jsxs)("div",{className:"aspect-[5/4] relative overflow-hidden rounded-2xl bg-gray-100",children:[h?(0,d.jsx)("img",{src:h,alt:s.name,loading:"lazy",className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-500"}):(0,d.jsx)("div",{className:"w-full h-full bg-[#04091B] flex items-center justify-center",children:(0,d.jsx)(n.A,{className:"w-10 h-10 text-slate-600"})}),(0,d.jsxs)("span",{className:"absolute top-2 left-2 inline-flex items-center gap-1 rounded-full bg-white/90 backdrop-blur px-2.5 py-1 text-[11px] font-bold text-gray-900",children:[(0,d.jsx)(n.A,{className:"w-3 h-3 text-blue-600"}),"Package"]}),p>0&&(0,d.jsxs)("span",{className:"absolute top-2 right-2 rounded-full bg-blue-600 px-2.5 py-1 text-[11px] font-extrabold text-white","data-testid":"package-card-save-badge",children:["Save ",p,"%"]})]}),(0,d.jsxs)(c.Wu,{className:"px-1.5 pt-3.5 pb-1.5",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2 text-sm text-gray-500",children:[(0,d.jsxs)("span",{className:"flex items-center gap-1 min-w-0",children:[(0,d.jsx)(l.A,{className:"w-3.5 h-3.5 shrink-0"}),(0,d.jsx)("span",{className:"truncate",children:u.city||"Location TBD"})]}),null!==(t=u.googleReviews)&&void 0!==t&&t.count?(0,d.jsx)(o.A,{reviews:u.googleReviews}):g?(0,d.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-0.5 text-xs font-bold text-gray-900",children:[(0,d.jsx)(i.A,{className:"w-3.5 h-3.5 fill-amber-400 text-amber-400"}),Number(u.rating).toFixed(1),(0,d.jsxs)("span",{className:"font-medium text-gray-400",children:["(",u.reviewCount,")"]})]}):null]}),(0,d.jsx)("h3",{className:"mt-1.5 text-lg font-semibold leading-snug text-gray-900 line-clamp-2 group-hover:text-blue-600 transition-colors",children:s.name}),u.name&&(0,d.jsxs)("p",{className:"mt-1 text-sm text-gray-500 truncate",children:["by ",u.name]}),(0,d.jsx)("p",{className:"mt-1 text-xs text-gray-400 line-clamp-1",children:(s.services||[]).map(e=>e.name).join(" + ")}),(0,d.jsxs)("div",{className:"mt-3 flex items-center justify-between gap-2 border-t border-gray-100 pt-2.5",children:[(0,d.jsxs)("span",{className:"text-sm text-gray-500",children:[(s.services||[]).length," experiences"]}
1),(0,d.jsxs)("div",{className:"shrink-0 text-right",children:[p>0&&(0,d.jsx)("span",{className:"text-xs text-gray-400 line-through mr-1.5 tabular-nums",children:x(s.combinedFromPrice,s.currency)}),(0,d.jsx)("span",{className:"text-xl font-extrabold tabular-nums text-blue-600",children:x(s.packageFromPrice,s.currency)})]})]})]})]})};var u=s(36210);const h=e=>{var t,s;let{review:a}=e;if(!a)return null;return(0,d.jsxs)("div",{className:"bg-gray-50 rounded-xl p-5",children:[(0,d.jsxs)("div",{className:"flex items-start justify-between mb-3",children:[(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[a.customerAvatar?(0,d.jsx)("img",{src:a.customerAvatar,alt:a.customerName,className:"w-10 h-10 rounded-full object-cover flex-shrink-0"}):(0,d.jsx)("div",{className:"w-10 h-10 rounded-full bg-gray-800 flex items-center justify-center flex-shrink-0",children:(0,d.jsx)("span",{className:"text-white font-medium text-sm",children:(null===(t=a.customerName)||void 0===t||null===(s=t.charAt(0))||void 0===s?void 0:s.toUpperCase())||"G"})}),(0,d.jsx)("p",{className:"font-medium text-gray-900 text-sm",children:a.customerName||"Guest"})]}),(0,d.jsx)("div",{className:"flex items-center gap-0.5",children:[...Array(5)].map((e,t)=>(0,d.jsx)(i.A,{className:"w-3.5 h-3.5 "+(t<a.rating?"text-amber-400 fill-amber-400":"text-gray-300")},t))})]}),a.title&&(0,d.jsx)("p",{className:"font-medium text-gray-900 mb-1 text-sm",children:a.title}),a.comment&&(0,d.jsx)("p",{className:"text-gray-600 text-sm line-clamp-4",children:a.comment}),a.ownerResponse&&(0,d.jsxs)("div",{className:"mt-3 pt-3 border-t border-gray-200",children:[(0,d.jsx)("p",{className:"text-xs font-medium text-gray-500 mb-1",children:"Response from owner"}),(0,d.jsx)("p",{className:"text-sm text-gray-600 line-clamp-2",children:a.ownerResponse})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between mt-3",children:[(0,d.jsx)("span",{className:"text-xs text-gray-400",children:(r=a.createdAt,r?new Date(r).toLocaleDateString("en-US",{month:"short",year:"numeric"}):"")}),a.isVerified&&(0,d.jsxs)("span",{className:"text-xs text-blue-600 flex items-center gap-1",children:[(0,d.jsx)(u.A,{className:"w-3 h-3"}),"Verified trip"]})]})]});var r};var p=s(81876);const g=e=>{let{bfRating:t,bfCount:s,googleReviews:a,onBfClick:r,bfTestId:n="rating-stack-bf"}=e;const l=Number(s)>0,c=Boolean(null===a||void 0===a?void 0:a.count);if(!l&&!c)return null;return(0,d.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"rating-stack",children:[l&&(0,d.jsxs)("button",{type:"button",onClick:r,"data-testid":n,className:"flex w-fit items-center gap-2 hover:opacity-75 transition-opacity",children:[(0,d.jsx)("span",{className:"flex h-5 w-5 items-center justify-center rounded-full bg-blue-600",children:(0,d.jsx)(p.A,{className:"h-3 w-3 text-white",strokeWidth:2.5})}),(0,d.jsx)("span",{className:"text-xs font-bold text-gray-900",children:"BookingFlows"}),(0,d.jsxs)("span",{className:"flex items-center gap-1 text-xs",children:[(0,d.jsx)(i.A,{className:"w-3.5 h-3.5 fill-amber-400 text-amber-400"}),(0,d.jsx)("span",{className:"font-bold text-gray-900 tabular-nums",children:Number(t||0).toFixed(1)}),(0,d.jsxs)("span",{className:"text-gray-400",children:["\xb7 ",s," review",1!==Number(s)?"s":""]})]})]}),c&&(0,d.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),null!==a&&void 0!==a&&a.url&&window.open(a.url,"_blank","noopener,noreferrer")},"data-testid":"rating-stack-google",className:"flex w-fit items-center gap-2 hover:opacity-75 transition-opacity",children:[(0,d.jsx)("span",{className:"flex h-5 w-5 items-center justify-center rounded-full bg-gray-50",children:(0,d.jsx)(o.J,{className:"w-3 h-3"})}),(0,d.jsx)("span",{className:"text-xs font-bold text-gray-900",children:"Google"}),(0,d.jsxs)("span",{className:"flex items-center gap-1 text-xs",children:[(0,d.jsx)(i.A,{className:"w-3.5 h-3.5 fill-amber-400 text-amber-400"}),(0,d.jsxs)("span",{className:"text-gray-400",children:[Number(a.count).toLocaleString("en-US"),"+ reviews"]})]})]})]})}},91140(e,t,s){var a=s(65043),r=s(99766),n=s(70579);const l=a.forwardRef((e,t)=>
1{let{className:s,...a}=e;return(0,n.jsx)("div",{ref:t,className:(0,r.cn)("rounded-2xl bg-surface text-card-foreground shadow-soft",s),...a})});l.displayName="Card";const i=a.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,n.jsx)("div",{ref:t,className:(0,r.cn)("flex flex-col space-y-1 p-5 sm:p-6",s),...a})});i.displayName="CardHeader";const c=a.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,n.jsx)("div",{ref:t,className:(0,r.cn)("text-base font-semibold leading-tight tracking-tight text-foreground",s),...a})});c.displayName="CardTitle";a.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,n.jsx)("div",{ref:t,className:(0,r.cn)("text-sm text-foreground-muted",s),...a})}).displayName="CardDescription";const o=a.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,n.jsx)("div",{ref:t,className:(0,r.cn)("p-5 pt-0 sm:p-6 sm:pt-0",s),...a})});o.displayName="CardContent";a.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,n.jsx)("div",{ref:t,className:(0,r.cn)("flex items-center p-5 pt-0 sm:p-6 sm:pt-0",s),...a}
1)}).displayName="CardFooter",s.d(t,["Wu",0,o,"ZB",0,c,"Zp",0,l,"aR",0,i])}}]); 2//# sourceMappingURL=4477.9f2735af.chunk.js.map
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.