@car-cutter/react-webplayer 3.2.4 → 3.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.js +117 -104
- package/dist/legacy.cjs +1 -1
- package/dist/legacy.js +2 -2
- package/dist/shared-CiiFL5oT.cjs +6 -0
- package/dist/{shared-4nfP-R6L.js → shared-zi1amD4C.js} +2442 -2479
- package/package.json +5 -5
- package/dist/shared-BUcu6Hvu.cjs +0 -6
package/dist/shared-BUcu6Hvu.cjs
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";const r=require("react/jsx-runtime"),a=require("react"),Ct="cc-webplayer",_t="cc-webplayer-custom-media",Tt="cc-webplayer-icon",St="composition-loading",Rt="composition-loaded",Pt="composition-load-error",Nt="item-change",jt="extend-mode-on",At="extend-mode-off",xt="hotspots-on",wt="hotspots-off",zt="gallery-open",Dt="gallery-close",rr="analytics-load",nr="analytics-display",or="analytics-interaction",sr="analytics-error",Dr=!1,Or=!1,Fr=!1,Hr="quality",Ur=0,Br=1/0,Wr=1,Vr=!1,Xr=!1,Yr="*",Zr="full_screen",Ot="cc-webplayer:",Gr=!0,qr=!1,Ft="ew-resize",Kr=!1,ar=1,ir="cc-analytics:",$r="",Jr="",Qr=!1,en=!1,tn=!1;function Ht(){if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID();if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function"){const t=new Uint8Array(16);crypto.getRandomValues(t),t[6]=t[6]&15|64,t[8]=t[8]&63|128;const s=Array.from(t,i=>i.toString(16).padStart(2,"0")).join("");return`${s.slice(0,8)}-${s.slice(8,12)}-${s.slice(12,16)}-${s.slice(16,20)}-${s.slice(20)}`}return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const s=Math.random()*16|0;return(t==="x"?s:s&3|8).toString(16)})}function rn(t,s){return`https://cdn.car-cutter.com/gallery/${t}/${s}/composition_v3.json`}function nn(t,s){const i=t.split("/"),f=i.pop();return[i.join("/"),s,f].join("/")}function on(){const t="car-cutter-webplayer-browser-id",s=typeof window<"u"?window.localStorage.getItem(t):null;if(s)return s;const i=Ht();return typeof window<"u"&&window.localStorage.setItem(t,i),i}function sn(){const t="car-cutter-webplayer-session-id",s=typeof window<"u"?window.sessionStorage.getItem(t):null;if(s)return s;const i=Ht();return typeof window<"u"&&window.sessionStorage.setItem(t,i),i}function an(){return Ht()}function ln(){return!!customElements.get(Ct)&&!!customElements.get(_t)&&!!customElements.get(Tt)}async function cn(t){const s=await fetch(t);if(!s.ok)throw new Error(`Failed to fetch composition: ${s.statusText}`);return await s.json()}const ct=new Map,un=t=>{const[s,i]=a.useState({status:"pending",isSuccess:!1});return a.useEffect(()=>{const f=d=>i({status:"success",data:d,isSuccess:!0}),u=ct.get(t);if(u&&!(u instanceof Promise)){f(u);return}i({status:"fetching",isSuccess:!1}),(async function(){try{let d;if(u)try{d=await u}catch(x){throw ct.delete(t),x}else{const x=cn(t);ct.set(t,x);try{d=await x}catch(e){throw ct.delete(t),e}ct.set(t,d)}f(d)}catch(d){i({status:"error",isSuccess:!1,error:d})}})()},[t]),s},lr=a.createContext(null),We=()=>{const t=a.useContext(lr);if(!t)throw new Error("useGlobalContext must be used within a GlobalContextProvider");return t},dn=({children:t,...s})=>r.jsx(lr.Provider,{value:s,children:t}),cr=a.createContext(null),rt=()=>{const t=a.useContext(cr);if(!t)throw new Error("useCompositionContext must be used within a CompositionContextProvider");return t},fn=({composition:t,children:s})=>{const{aspectRatio:i,categories:f,imageHdWidth:u,imageSubWidths:d}=t,{minMediaWidth:x,maxMediaWidth:e,categoriesFilter:M}=We(),_=a.useMemo(()=>{if(M==="*")return f;function o(E){return M.split("|").some(P=>new RegExp(`^${P.replace(/\*/g,".*")}$`).test(E))}return f.filter(({id:E})=>o(E))},[f,M]),N=a.useMemo(()=>_.flatMap(({items:o})=>o),[_]),L={aspectRatio:i.replace(":"," / ")},h=a.useMemo(()=>{const o=d.concat(u),E=o.sort((T,w)=>T-w),P=E.filter(T=>T>=x&&T<=e);if(P.length===0){const T=(x+e)/2,w=o.reduce((y,C)=>Math.abs(C-T)<Math.abs(y-T)?C:y,u);return console.warn(`None of available media widths (${E.join("|")}) match the given constraints (${x>0?`${x} ≤ `:""}width${e<1/0?` ≤ ${e}`:""}).`,`Using the closest width instead (${w}).`),[w]}return P},[d,u,x,e]);return r.jsx(cr.Provider,{value:{...t,categories:_,items:N,aspectRatioStyle:L,usedMediaWidths:h},children:s})},ur=500,st=.75,tt=1+st*2,dr=()=>{const{isFullScreen:t,maxItemsShown:s,integration:i}=We();return{effectiveMaxItemsShown:i&&t?ar:s}};function Ke(t,s,i){return Math.min(Math.max(t,s),i)}const vt=(t,s,i)=>t+(s-t)*i,$t=(t,s,i,f,u,d=!1)=>{const x=Ke(t,s,i);if(x===(d?i:s))return f;if(x===(d?s:i))return 1;const e=(x-s)/(i-s),_=1+(d?e:1-e)*(f-1),L=1+Math.round((_-1)/u)*u;return Ke(L,1,f)},hn=(t,s)=>{if(s.includes(t))return t;let i=s[0],f=Math.abs(t-i);for(let u=1;u<s.length;u++){const d=Math.abs(t-s[u]);d<f&&(f=d,i=s[u])}return i},fr=a.createContext(null),Ut=()=>a.useContext(fr),dt=()=>{const t=Ut();if(!t)throw new Error("useCustomizationContext must be used within a CustomizationContextProvider");return t},Jt="*:size-full",Qt="*:object-cover *:size-full",pn=({children:t})=>{const{compositionUrl:s}=We(),i=a.useCallback(()=>document.querySelector(`${Ct}[composition-url="${s}"]`),[s]),f=a.useCallback(E=>{const P=E.querySelectorAll(Tt),T=new Map;for(const w of P){const y=w.getAttribute("name");if(!y){console.warn("Icon element is missing a name attribute");continue}const C=w.innerHTML,m=C?r.jsx("div",{className:Jt,dangerouslySetInnerHTML:{__html:C}}):void 0;if(!m){console.warn(`Icon "${y}" customization is empty.`);continue}T.set(y,{Icon:m})}return T},[]),[u,d]=a.useState(()=>{const E=i();return E?f(E):new Map});a.useEffect(()=>{const E=i();if(!E)return;const P=new MutationObserver(()=>{d(f(E))});return P.observe(E,{childList:!0,subtree:!0}),()=>P.disconnect()},[f,i]);const x=a.useCallback(E=>u.get(E),[u]),e=a.useCallback((E,P)=>{d(T=>{const{Icon:w,...y}=P;return new Map(T.set(E,{...y,Icon:r.jsx("div",{className:Jt,children:w})}))})},[]),M=a.useCallback(E=>{d(P=>(P.delete(E),new Map(P)))},[]),_=a.useCallback(E=>{const P=E.querySelectorAll(_t),T=new Array;for(const w of P){const y=w.innerHTML;if(!y){console.warn("Custom media element is empty");continue}const C=Number(w.getAttribute("index"));if(Number.isNaN(C)){console.warn("Custom media element is missing the 'index' attribute");continue}const m=w.getAttribute("thumbnail-src")??void 0,b=JSON.stringify({index:C,thumbnailSrc:m});T.push({id:b,Media:r.jsx("div",{className:Qt,dangerouslySetInnerHTML:{__html:y}}),index:C,thumbnailSrc:m})}return T},[]),[N,L]=a.useState(()=>{const E=i();return E?_(E):[]});a.useEffect(()=>{const E=i();if(!E)return;const P=new MutationObserver(()=>{L(_(E))});return P.observe(E,{childList:!0,subtree:!0}),()=>P.disconnect()},[_,i]);const h=a.useCallback(E=>{const{Media:P,...T}=E,w=r.jsx("div",{className:Qt,children:P}),y=JSON.stringify(T);return L(C=>[...C,{id:y,Media:w,...T}]),y},[]),o=a.useCallback(E=>{L(P=>P.filter(T=>T.id!==E))},[]);return r.jsx(fr.Provider,{value:{getIconConfig:x,registerIconConfig:e,unregisterIconConfig:M,customMediaList:N,registerCustomMedia:h,unregisterCustomMedia:o},children:t})},hr=a.createContext(null),Xe=()=>{const t=a.useContext(hr);if(!t)throw new Error("useControlsContext must be used within a ControlsContextProvider");return t},mn=({children:t})=>{const{infiniteCarrousel:s,extendBehavior:i,integration:f,emitEvent:u,emitAnalyticsEvent:d,isFullScreen:x,requestFullscreen:e,exitFullscreen:M}=We(),{customMediaList:_}=dt(),{categories:N,items:L}=rt(),h=a.useMemo(()=>{const F=new Array(...L),ie=_.slice().sort((z,pe)=>z.index<0&&pe.index<0?pe.index-z.index:z.index<0?1:pe.index<0?-1:z.index-pe.index);for(const z of ie){let pe=z.index;pe<0&&(pe=F.length+pe+1),F.splice(pe,0,{type:"custom",...z})}return F},[L,_]),[o,E]=a.useState(h.map(()=>null));a.useEffect(()=>{E(h.map(()=>null))},[h]);const P=a.useCallback((F,ie)=>{E(z=>z.map((pe,Le)=>Le===F?ie:pe))},[]),[T,w]=a.useState(0),[y,C]=a.useState(null),m=y??T,b=h[m],S=o[m],[$,I]=a.useState(null),V=!!$,Y=a.useCallback(()=>I(null),[]),{effectiveMaxItemsShown:A}=dr(),H=a.useCallback(F=>{const ie=Math.min(T,F),z=Math.max(T,F);o.slice(ie,z+1).filter(Le=>Le===null).length>2&&I("instant"),C(F)},[T,o]),j=a.useMemo(()=>{let F;if(b.type==="custom"){const ie=h.slice(0,m).reverse().find(z=>z.type!=="custom")??h.slice(m+1).find(z=>z.type!=="custom");if(!ie)throw new Error("No non-custom item found");F=ie}else F=b;for(const ie of N)if(ie.items.includes(F))return ie.id;throw new Error("Current item not found in any category")},[N,b,h,m]),q=a.useMemo(()=>N.find(({id:F})=>F===j)?.title??"Unnamed Category",[N,j]),ce=a.useMemo(()=>h.length,[h]),U=a.useCallback(F=>{const ie=N.find(({id:pe})=>pe===F)?.items[0];if(ie===void 0)throw new Error("Failed to find target category");const z=h.findIndex(pe=>pe===ie);H(z)},[N,h,H]),D=a.useCallback(()=>{if(V||y!==null)return;const F=T-1;if(F>=0)C(F);else if(s){I("first_to_last");const ie=Math.ceil(A),z=h.length+(f&&!s&&A%1!==0?1:0),pe=A>1?Math.max(0,z-ie):h.length-1;C(pe)}d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Item Navigation",field:"item_navigation",value:"prev"}})},[V,y,T,s,d,j,q,b.type,A,h.length,f]),J=a.useCallback(()=>{if(V||y!==null)return;const F=T+1,ie=Math.ceil(A),z=h.length+(f&&!s&&A%1!==0?1:0),pe=A>1?Math.max(0,z-ie):h.length-1;F<=pe?C(F):s&&(I("last_to_first"),C(0)),d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Item Navigation",field:"item_navigation",value:"next"}})},[V,y,T,A,h.length,f,s,d,j,q,b.type]);a.useEffect(()=>{u(Nt,{index:m,item:b})},[b,u,m]),a.useEffect(()=>{if(V||y!==null)return;const F={type:"display",item:{category_id:j,category_name:q,item_type:b.type,item_position:T,items_count:ce}},ie=setTimeout(()=>d(F),0);return()=>clearTimeout(ie)},[j,q,ce,b.type,T,d,V,y]);const R=a.useMemo(()=>{if(f&&!x)return h.some(F=>{switch(F.type){case"image":return!!F.hotspots?.length;case"360":return F.images.some(ie=>!!ie.hotspots?.length);case"next360":return F.images.some(ie=>!!ie.hotspots?.length);default:return!1}});switch(b.type){case"image":return!!b.hotspots?.length;case"360":return S==="running"&&b.images.some(F=>!!F.hotspots?.length);case"next360":return S==="running"&&b.images.some(F=>!!F.hotspots?.length);default:return!1}},[b,S,f,h,x]),[B,ae]=a.useState(!0),[O,te]=a.useState({}),K=a.useMemo(()=>f&&x?O[m]??!0:B,[f,x,O,m,B]),ne=a.useCallback(()=>{if(f&&x){const ie=!(O[m]??!0);te(z=>({...z,[m]:ie})),u(ie?xt:wt),d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Hotspots Toggled",field:"hotspots_toggle_state",value:ie}})}else{const F=!B;ae(F),u(F?xt:wt),d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Hotspots Toggled",field:"hotspots_toggle_state",value:F}})}},[f,x,O,m,u,d,j,q,b.type,T,B]),k=a.useMemo(()=>{switch(b.type){case"video":return S!=="running";default:return!0}},[b,S]),[le,G]=a.useState(!1),Me=a.useCallback(()=>{const F=!le;G(F),u(F?zt:Dt),d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Gallery Toggled",field:"gallery_toggle_state",value:F}})},[le,u,d,j,q,b.type,T]),[Ue,He]=a.useState(null),ge=a.useCallback(()=>He(null),[]),c=!!Ue,p=a.useMemo(()=>{switch(b.type){case"image":return!0;case"interior-360":return S==="running";case"360":case"next360":return S==="running";default:return!1}},[b.type,S]),[Q,oe]=a.useState(1),ee=a.useCallback(F=>{const ie=typeof F=="function"?F(Q):F;Q!==ie&&(oe(ie),d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Zoom Changed",field:"zoom_level",value:ie}}))},[Q,d,j,q,b.type,T]),v=Q!==1,se=Q<tt,re=Q>1,ve=a.useCallback(F=>{ee(ie=>Ke(ie+F,1,tt))},[ee]),fe=a.useCallback(()=>ee(1),[ee]),Be=a.useCallback(()=>ve(st),[ve]),Ae=a.useCallback(()=>ve(-st),[ve]),me=a.useCallback(()=>{fe(),ge()},[fe,ge]),[xe,we]=a.useState(!1),[Ie,_e]=a.useState(),[ze,De]=a.useState(!1),Ee=a.useCallback(async F=>{me(),we(F),u(F?jt:At),d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Fake Fullscreen Toggled",field:"fake_fullscreen_toggle_state",value:F}})},[me,u,d,j,q,b.type,T]),ke=a.useCallback(()=>{clearTimeout(Ie);const F=setTimeout(()=>{_e(void 0)},ur);_e(F)},[Ie]),Oe=a.useCallback(async()=>{const F=await e();return F&&d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Fullscreen Toggled",field:"fullscreen_toggle_state",value:!0}}),F},[e,d,j,q,b.type,T]),Pe=a.useCallback(async()=>{const F=await M();return F&&d({type:"interaction",current:{category_id:j,category_name:q,item_type:b.type,item_position:T},action:{name:"Fullscreen Toggled",field:"fullscreen_toggle_state",value:!1}}),F},[M,d,j,q,b.type,T]),Fe=a.useCallback(async()=>{if(ke(),i==="full_screen"){const F=await Oe();if(De(!F),F)return}Ee(!0)},[i,Ee,Oe,ke]),Re=a.useCallback(async()=>{ke(),!(i==="full_screen"&&(De(!1),await Pe()))&&Ee(!1)},[i,Ee,Pe,ke]),Te=a.useCallback(()=>{xe?Re():Fe()},[Re,Fe,xe]);return a.useEffect(()=>{i==="full_screen"&&(ze&&xe||x!==xe&&(ke(),Ee(x)))},[i,Ee,xe,ze,x,ke]),r.jsx(hr.Provider,{value:{items:h,setItemInteraction:P,slidable:h.length>1,carrouselItemIndex:T,setCarrouselItemIndex:w,itemIndexCommand:y,setItemIndexCommand:C,masterItemIndex:m,specialCommand:$,isRunningSpecialCommand:V,finishSpecialCommand:Y,prevItem:D,nextItem:J,scrollToItemIndex:H,displayedCategoryId:j,displayedCategoryName:q,changeCategory:U,enableHotspotsControl:R,showHotspots:B,currentItemHotspotsVisible:K,toggleHotspots:ne,showGalleryControls:k,showGallery:le,toggleGallery:Me,shownDetails:Ue,isShowingDetails:c,setShownDetails:He,resetShownDetails:ge,showZoomControls:p,zoom:Q,isZooming:v,setZoom:ee,resetZoom:fe,canZoomIn:se,zoomIn:Be,canZoomOut:re,zoomOut:Ae,resetView:me,extendMode:xe,enableExtendMode:Fe,disableExtendMode:Re,toggleExtendMode:Te,extendTransition:!!Ie,fakeFullScreen:ze},children:t})},pr=["left","center","right","fullW"],mr=["top","middle","bottom","fullH"],gn=[...pr,...mr,"top-left","top-center","top-right","top-fullW","middle-left","middle-center","middle-right","middle-fullW","bottom-left","bottom-center","bottom-right","bottom-fullW","fullH-left","fullH-center","fullH-right","fullW-fullW"];function vn(t){return pr.includes(t)}function xn(t){return mr.includes(t)}function wn(t){return gn.includes(t)}function Cn(t){if(!wn(t))throw new Error(`Invalid position: ${t}`);return xn(t)?[t,void 0]:vn(t)?[void 0,t]:t.split("-")}function ue(...t){return t.filter(s=>!!s).map(s=>s.trim()).join(" ")}function bn(t){switch(t){case"left":return"left-1 small:left-2";case"right":return"right-1 small:right-2";case"center":return"left-1/2 -translate-x-1/2";case"fullW":return"inset-x-1 small:inset-x-2"}}function gr(t){switch(t){case"top":return"top-1 small:top-2";case"bottom":return"bottom-1 small:bottom-2";case"middle":return"top-1/2 -translate-y-1/2";case"fullH":return"inset-y-1 small:inset-y-2"}}function yn({positionX:t,positionY:s}){const i=new Array;return t&&i.push(bn(t)),s&&i.push(gr(s)),i.join(" ")}function at(t){const[s,i]=Cn(t);return yn({positionX:i,positionY:s})}const Ve=({customizationKey:t,className:s,children:i})=>{const{getIconConfig:f}=dt(),d=f(t)?.Icon;return d?s?r.jsx("div",{className:s,children:d}):d:i},En=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_CLOSE",children:r.jsx("svg",{className:t,viewBox:"0 0 12 12",fill:"none",children:r.jsx("path",{d:"M10.5209 0.520752L0.520874 10.5208M0.520874 0.520752L10.5209 10.5208",stroke:"currentColor",strokeWidth:"1.04167",strokeLinecap:"round",strokeLinejoin:"round"})})}),Ln={fill:{primary:"bg-primary text-primary-foreground hover:opacity-80",neutral:"bg-background text-neutral-foreground hover:opacity-80"},ghost:{primary:"bg-transparent text-foreground hover:bg-primary/25",neutral:"bg-transparent text-background hover:bg-foreground/25"}},Mn={button:"h-8 px-2",icon:"size-8 p-2"},Ge=({variant:t="fill",shape:s="button",color:i="primary",className:f,children:u,...d})=>{const x=Ln[t][i],e=Mn[s];return r.jsx("button",{className:ue("flex items-center justify-center rounded-ui text-sm transition-all disabled:opacity-60",x,e,f),...d,children:u})},kt=t=>r.jsx(Ge,{color:"neutral",shape:"icon",...t,children:r.jsx(En,{className:"size-full"})}),kn="data:image/svg+xml,%3csvg%20width='84'%20height='44'%20viewBox='0%200%2084%2044'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%20shape-rendering='geometricPrecision'%3e%3crect%20width='84'%20height='44'%20rx='22'%20fill='white'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M27.7657%2015.2278C28.0781%2015.5315%2028.0781%2016.024%2027.7657%2016.3277L21.9314%2022L27.7657%2027.6723C28.0781%2027.976%2028.0781%2028.4685%2027.7657%2028.7722C27.4533%2029.0759%2026.9467%2029.0759%2026.6343%2028.7722L20.2343%2022.55C19.9219%2022.2462%2019.9219%2021.7538%2020.2343%2021.45L26.6343%2015.2278C26.9467%2014.9241%2027.4533%2014.9241%2027.7657%2015.2278Z'%20fill='%230F0F0F'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M56.2343%2015.2278C56.5467%2014.9241%2057.0533%2014.9241%2057.3657%2015.2278L63.7657%2021.45C64.0781%2021.7538%2064.0781%2022.2462%2063.7657%2022.55L57.3657%2028.7722C57.0533%2029.0759%2056.5467%2029.0759%2056.2343%2028.7722C55.9219%2028.4685%2055.9219%2027.976%2056.2343%2027.6723L62.0686%2022L56.2343%2016.3277C55.9219%2016.024%2055.9219%2015.5315%2056.2343%2015.2278Z'%20fill='%230F0F0F'/%3e%3c/svg%3e",In="data:image/svg+xml,%3csvg%20width='84'%20height='44'%20viewBox='0%200%2084%2044'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%20shape-rendering='geometricPrecision'%3e%3crect%20width='84'%20height='44'%20rx='22'%20fill='white'/%3e%3cpath%20d='M0%2022C0%209.84974%209.84974%200%2022%200H42V44H22C9.84974%2044%200%2034.1503%200%2022Z'%20fill='%23F5F5F5'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M27.7657%2015.2278C28.0781%2015.5315%2028.0781%2016.024%2027.7657%2016.3277L21.9314%2022L27.7657%2027.6723C28.0781%2027.976%2028.0781%2028.4685%2027.7657%2028.7722C27.4533%2029.0759%2026.9467%2029.0759%2026.6343%2028.7722L20.2343%2022.55C19.9219%2022.2462%2019.9219%2021.7538%2020.2343%2021.45L26.6343%2015.2278C26.9467%2014.9241%2027.4533%2014.9241%2027.7657%2015.2278Z'%20fill='%230F0F0F'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M56.2343%2015.2278C56.5467%2014.9241%2057.0533%2014.9241%2057.3657%2015.2278L63.7657%2021.45C64.0781%2021.7538%2064.0781%2022.2462%2063.7657%2022.55L57.3657%2028.7722C57.0533%2029.0759%2056.5467%2029.0759%2056.2343%2028.7722C55.9219%2028.4685%2055.9219%2027.976%2056.2343%2027.6723L62.0686%2022L56.2343%2016.3277C55.9219%2016.024%2055.9219%2015.5315%2056.2343%2015.2278Z'%20fill='%230F0F0F'/%3e%3c/svg%3e",_n="data:image/svg+xml,%3csvg%20width='78'%20height='78'%20viewBox='0%200%2078%2078'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M1.36035%2038.4241C1.36035%2017.9895%2017.9258%201.42407%2038.3604%201.42407C58.7949%201.42407%2075.3604%2017.9895%2075.3604%2038.4241C75.3604%2058.8586%2058.7949%2075.4241%2038.3604%2075.4241C17.9258%2075.4241%201.36035%2058.8586%201.36035%2038.4241Z'%20fill='black'%20fill-opacity='0.5'/%3e%3cpath%20d='M63.6101%2047.2044L66.7877%2048.587L66.5803%2049.0636L63.8703%2047.8845L63.181%2049.4687L62.7134%2049.2653L63.6101%2047.2044ZM61.5503%2054.7756C61.7117%2054.8903%2061.8699%2054.9725%2062.025%2055.022C62.1809%2055.0762%2062.3281%2055.0999%2062.4666%2055.093C62.6077%2055.0881%2062.7369%2055.0545%2062.8542%2054.9921C62.9696%2054.9324%2063.0674%2054.8461%2063.1478%2054.7331C63.2281%2054.6201%2063.2775%2054.4994%2063.2961%2054.3708C63.3154%2054.2469%2063.3045%2054.1197%2063.2636%2053.9893C63.2227%2053.859%2063.151%2053.7291%2063.0487%2053.5996C62.9491%2053.4721%2062.8186%2053.3509%2062.6572%2053.2361C62.4958%2053.1214%2062.3372%2053.0369%2062.1813%2052.9828C62.0262%2052.9332%2061.8791%2052.9095%2061.7398%2052.9117C61.6013%2052.9185%2061.4744%2052.9518%2061.359%2053.0115C61.2418%2053.0739%2061.143%2053.1616%2061.0626%2053.2745C60.9823%2053.3875%2060.9325%2053.506%2060.9132%2053.6299C60.8946%2053.7585%2060.9058%2053.888%2060.9468%2054.0183C60.9858%2054.1514%2061.0551%2054.2817%2061.1548%2054.4092C61.2571%2054.5387%2061.3889%2054.6608%2061.5503%2054.7756ZM61.2514%2055.213C61.0308%2055.0561%2060.8515%2054.884%2060.7134%2054.6967C60.5779%2054.5113%2060.4839%2054.3189%2060.4313%2054.1195C60.3795%2053.9247%2060.3713%2053.7285%2060.4065%2053.5308C60.4418%2053.3332%2060.5235%2053.1443%2060.6517%2052.9641C60.7779%2052.7866%2060.9272%2052.6477%2061.0997%2052.5476C61.2748%2052.4494%2061.4629%2052.3928%2061.6639%2052.3778C61.8649%2052.3629%2062.0752%2052.3889%2062.2948%2052.456C62.5151%2052.5276%2062.7356%2052.6419%2062.9561%2052.7987C63.1767%2052.9556%2063.3547%2053.1267%2063.4901%2053.3121C63.6282%2053.4994%2063.7232%2053.6905%2063.775%2053.8853C63.8276%2054.0847%2063.8363%2054.2832%2063.801%2054.4808C63.7657%2054.6785%2063.685%2054.8661%2063.5587%2055.0436C63.4306%2055.2238%2063.2789%2055.363%2063.1038%2055.4612C62.9314%2055.5613%2062.7446%2055.6188%2062.5436%2055.6338C62.3426%2055.6488%2062.1319%2055.6205%2061.9116%2055.5488C61.692%2055.4818%2061.4719%2055.3698%2061.2514%2055.213ZM58.2673%2059.1725C58.324%2059.2057%2058.3876%2059.2416%2058.4581%2059.2803C58.5286%2059.3189%2058.5991%2059.3575%2058.6696%2059.3961C58.7376%2059.437%2058.8012%2059.4729%2058.8604%2059.5039C58.9193%2059.5396%2058.9647%2059.5676%2058.9963%2059.5879C58.9793%2059.5544%2058.9561%2059.5064%2058.9265%2059.4442C58.8992%2059.3844%2058.8686%2059.3186%2058.8349%2059.2468C58.8033%2059.1774%2058.7708%2059.1045%2058.7373%2059.028C58.7013%2058.9538%2058.6709%2058.8856%2058.646%2058.8236L58.3207%2058.0501L57.5273%2058.7669L58.2673%2059.1725ZM56.3301%2058.1139L57.0977%2058.5279L58.1262%2057.5986L57.7883%2056.7963L58.1887%2056.4346L59.5863%2059.8421L59.1786%2060.2105L55.9187%2058.4857L56.3301%2058.1139ZM52.6993%2062.9259C52.7889%2063.0838%2052.8889%2063.2168%2052.9995%2063.3248C53.1117%2063.4357%2053.2363%2063.515%2053.3732%2063.5625C53.5073%2063.6117%2053.6536%2063.6255%2053.8121%2063.6039C53.9677%2063.584%2054.1346%2063.5235%2054.3126%2063.4226L54.6829%2063.2127L53.4719%2061.0766L53.1016%2061.2866C52.9236%2061.3875%2052.7861%2061.4996%2052.689%2061.6229C52.5891%2061.7478%2052.5258%2061.8804%2052.4992%2062.0208C52.4696%2062.1627%2052.4728%2062.3089%2052.5087%2062.4592C52.5463%2062.6124%2052.6098%2062.768%2052.6993%2062.9259ZM52.2385%2063.1872C52.0872%2062.9202%2051.998%2062.6691%2051.9709%2062.4341C51.941%2062.2006%2051.9585%2061.9839%2052.0235%2061.784C52.0901%2061.5869%2052.1961%2061.4092%2052.3415%2061.2508C52.4841%2061.0941%2052.6544%2060.9596%2052.8525%2060.8473L53.6751%2060.381L55.3842%2063.3956L54.5616%2063.8619C54.3606%2063.9758%2054.1549%2064.0546%2053.9443%2064.098C53.7309%2064.1432%2053.5231%2064.1414%2053.3211%2064.0929C53.1206%2064.0471%2052.928%2063.9515%2052.743%2063.806C52.5581%2063.6604%2052.3899%2063.4542%2052.2385%2063.1872ZM43.3091%2065.6047C43.2474%2065.2537%2043.3126%2064.9674%2043.5049%2064.7459C43.6977%2064.5277%2043.9956%2064.3831%2044.3987%2064.3122C44.5189%2064.291%2044.6415%2064.2829%2044.7663%2064.2877C44.8912%2064.2926%2045.0131%2064.3097%2045.1322%2064.339C45.2481%2064.3688%2045.3575%2064.4099%2045.4605%2064.4622C45.5641%2064.5177%2045.6529%2064.5841%2045.7268%2064.6616L45.3951%2065.0618C45.2677%2064.9468%2045.1234%2064.87%2044.9625%2064.8313C44.8021%2064.7958%2044.6439%2064.7918%2044.4879%2064.8193C44.2148%2064.8673%2044.0317%2064.9498%2043.9383%2065.0668C43.8423%2065.1875%2043.8097%2065.3357%2043.8406%2065.5112C43.8714%2065.6867%2043.9525%2065.8048%2044.0839%2065.8655C44.2157%2065.9294%2044.3711%2065.9457%2044.5498%2065.9142L44.8668%2065.8584L44.9543%2066.3558L44.6422%2066.4107C44.4829%2066.4387%2044.3707%2066.5053%2044.3054%2066.6107C44.2402%2066.716%2044.219%2066.8336%2044.2419%2066.9636C44.2505%2067.0124%2044.2694%2067.0627%2044.2986%2067.1145C44.3278%2067.1663%2044.3708%2067.2107%2044.4276%2067.2476C44.4843%2067.2846%2044.5575%2067.3102%2044.6472%2067.3246C44.7342%2067.3428%2044.8411%2067.3408%2044.9678%2067.3185C45.1043%2067.2944%2045.223%2067.2451%2045.3238%2067.1704C45.4213%2067.0963%2045.5084%2067.0005%2045.5849%2066.8832L46.0287%2067.1771C45.9087%2067.3523%2045.7695%2067.4941%2045.6109%2067.6024C45.4497%2067.7146%2045.2618%2067.7895%2045.0473%2067.8272C44.888%2067.8553%2044.7332%2067.8607%2044.5827%2067.8436C44.4328%2067.8298%2044.299%2067.793%2044.1813%2067.7333C44.0635%2067.6736%2043.9635%2067.5907%2043.8811%2067.4845C43.7994%2067.3816%2043.7453%2067.2554%2043.719%2067.1059C43.683%2066.9011%2043.6956%2066.7347%2043.7568%2066.6067C43.8148%2066.4792%2043.8966%2066.3726%2044.0022%2066.287C43.8317%2066.2701%2043.683%2066.2058%2043.5561%2066.0941C43.4292%2065.9824%2043.3469%2065.8192%2043.3091%2065.6047ZM38.1161%2066.0627C38.1101%2066.2706%2038.1749%2066.4243%2038.3107%2066.524C38.4464%2066.627%2038.6379%2066.6822%2038.8853%2066.6894C39.1394%2066.6968%2039.3404%2066.6514%2039.4886%2066.5534C39.6366%2066.4587%2039.7136%2066.309%2039.7196%2066.1045C39.7221%2066.0187%2039.7079%2065.9374%2039.6772%2065.8606C39.6464%2065.7838%2039.5989%2065.7147%2039.5346%2065.6534C39.467%2065.5953%2039.3842%2065.5466%2039.2863%2065.5075C39.1883%2065.4716%2039.0749%2065.4518%2038.9463%2065.448C38.6824%2065.4403%2038.4795%2065.4906%2038.3377%2065.5987C38.1958%2065.7101%2038.1219%2065.8648%2038.1161%2066.0627ZM37.5913%2066.0573C37.5968%2065.8693%2037.6363%2065.7037%2037.7098%2065.5606C37.7833%2065.4174%2037.8825%2065.2998%2038.0073%2065.2077C38.1322%2065.1156%2038.2778%2065.0472%2038.4442%2065.0025C38.6106%2064.9579%2038.7895%2064.9383%2038.9808%2064.9439C39.1622%2064.9492%2039.3314%2064.9789%2039.4883%2065.033C39.6451%2065.0904%2039.7813%2065.1769%2039.8968%2065.2925C40.009%2065.408%2040.0971%2065.5542%2040.1613%2065.7311C40.2222%2065.9078%2040.2491%2066.1183%2040.242%2066.3624C40.2376%2066.5142%2040.2181%2066.6721%2040.1836%2066.8362C40.1491%2067.0002%2040.0966%2067.1605%2040.026%2067.3169C39.9521%2067.4732%2039.8586%2067.6224%2039.7455%2067.7644C39.6291%2067.9063%2039.4901%2068.031%2039.3285%2068.1385C39.1668%2068.2461%2038.9795%2068.3314%2038.7663%2068.3945C38.5499%2068.4576%2038.3046%2068.49%2038.0305%2068.492L38.0448%2068.0021C38.4444%2067.9972%2038.7805%2067.9063%2039.0531%2067.7293C39.3224%2067.5523%2039.5185%2067.284%2039.6412%2066.9244C39.5164%2067.0165%2039.3857%2067.082%2039.2492%2067.1209C39.1093%2067.1631%2038.9337%2067.1811%2038.7226%2067.1749C38.5643%2067.1703%2038.4165%2067.1429%2038.2793%2067.0927C38.1387%2067.0457%2038.0169%2066.9761%2037.9139%2066.8839C37.811%2066.7918%2037.7301%2066.6772%2037.6714%2066.5401C37.6126%2066.403%2037.5859%2066.2421%2037.5913%2066.0573ZM32.327%2065.9829C32.2844%2066.1594%2032.2608%2066.3269%2032.2565%2066.4854C32.2481%2066.6463%2032.264%2066.7911%2032.3042%2066.9197C32.3413%2067.0475%2032.4049%2067.1562%2032.4953%2067.246C32.5824%2067.335%2032.6998%2067.3973%2032.8473%2067.433C32.9949%2067.4687%2033.1278%2067.4668%2033.2459%2067.4275C33.3633%2067.3914%2033.4693%2067.3253%2033.5638%2067.2293C33.6543%2067.1358%2033.7326%2067.0155%2033.7987%2066.8685C33.8641%2066.7247%2033.9181%2066.5646%2033.9607%2066.3882C34.0034%2066.2117%2034.0289%2066.043%2034.0373%2065.8821C34.0416%2065.7235%2034.0253%2065.5804%2033.9883%2065.4526C33.9481%2065.324%2033.8844%2065.2153%2033.7973%2065.1263C33.7069%2065.0365%2033.588%2064.9738%2033.4404%2064.9381C33.2928%2064.9024%2033.1604%2064.9027%2033.043%2064.9388C32.9248%2064.9781%2032.8205%2065.0446%2032.7299%2065.1381C32.6354%2065.2341%2032.5555%2065.354%2032.4902%2065.4978C32.4241%2065.6448%2032.3697%2065.8065%2032.327%2065.9829ZM31.8146%2065.8692C31.8767%2065.6126%2031.9626%2065.3838%2032.0723%2065.1828C32.1812%2064.9851%2032.3105%2064.8228%2032.46%2064.696C32.6095%2064.5691%2032.7781%2064.4826%2032.9659%2064.4363C33.1496%2064.3924%2033.3506%2064.3969%2033.5687%2064.4496C33.7868%2064.5024%2033.9692%2064.5906%2034.1159%2064.7144C34.2585%2064.8405%2034.3678%2064.9926%2034.4436%2065.1705C34.5154%2065.3509%2034.5546%2065.5539%2034.5612%2065.7796C34.5645%2066.0045%2034.5352%2066.2452%2034.4731%2066.5019C34.4118%2066.7553%2034.3267%2066.9809%2034.2178%2067.1786C34.1081%2067.3796%2033.9785%2067.5435%2033.8289%2067.6703C33.6794%2067.7972%2033.5124%2067.8841%2033.3279%2067.9312C33.1401%2067.9774%2032.9372%2067.9742%2032.719%2067.9215C32.5009%2067.8687%2032.3205%2067.7793%2032.1778%2067.6531C32.0312%2067.5293%2031.922%2067.3773%2031.8501%2067.1969C31.7743%2067.019%2031.7351%2066.816%2031.7325%2066.5879C31.726%2066.3622%2031.7534%2066.1227%2031.8146%2065.8692ZM27.1159%2065.1708C27.0856%2065.2367%2027.0708%2065.3044%2027.0716%2065.3738C27.0681%2065.4448%2027.0784%2065.5131%2027.1027%2065.5788C27.1241%2065.6431%2027.1592%2065.701%2027.2082%2065.7525C27.2527%2065.8057%2027.3095%2065.8481%2027.3785%2065.8798C27.4475%2065.9115%2027.5181%2065.9276%2027.5905%2065.9282C27.6585%2065.9304%2027.7254%2065.9193%2027.791%2065.895C27.8537%2065.8693%2027.9123%2065.8327%2027.9668%2065.7851C28.017%2065.7391%2028.0572%2065.6832%2028.0875%2065.6172C28.1192%2065.5482%2028.1368%2065.4782%2028.1404%2065.4072C28.141%2065.3349%2028.1306%2065.2665%2028.1093%2065.2022C28.085%2065.1366%2028.0505%2065.0772%2028.0059%2065.024C27.957%2064.9725%2027.898%2064.9308%2027.829%2064.8992C27.7601%2064.8675%2027.6916%2064.8505%2027.6236%2064.8483C27.5512%2064.8478%2027.4837%2064.8603%2027.421%2064.886C27.3554%2064.9103%2027.2968%2064.947%2027.2452%2064.9959C27.1907%2065.0435%2027.1476%2065.1018%2027.1159%2065.1708ZM26.711%2064.9848C26.7689%2064.8588%2026.8458%2064.7507%2026.9418%2064.6604C27.0364%2064.5731%2027.1427%2064.5076%2027.2609%2064.4638C27.3791%2064.42%2027.5025%2064.4004%2027.6311%2064.4051C27.7597%2064.4097%2027.887%2064.4409%2028.013%2064.4988C28.139%2064.5567%2028.2456%2064.6329%2028.3329%2064.7275C28.4202%2064.8221%2028.4857%2064.9285%2028.5295%2065.0466C28.5702%2065.1634%2028.5898%2065.2868%2028.5882%2065.4168C28.5822%2065.5485%2028.5503%2065.6773%2028.4924%2065.8032C28.4359%2065.9262%2028.3604%2066.0313%2028.2658%2066.1186C28.1682%2066.2045%2028.0625%2066.2685%2027.9487%2066.3107C27.8305%2066.3544%2027.7071%2066.374%2027.5785%2066.3694C27.4485%2066.3678%2027.3205%2066.338%2027.1945%2066.2802C27.0686%2066.2223%2026.9627%2066.1446%2026.8767%2066.047C26.7894%2065.9524%2026.7239%2065.846%2026.6801%2065.7278C26.635%2065.6127%2026.6147%2065.4908%2026.6193%2065.3621C26.624%2065.2335%2026.6545%2065.1077%2026.711%2064.9848ZM21.0589%2058.281L21.4547%2058.6622L19.9168%2061.9925L19.5104%2061.601L20.5217%2059.5094C20.5441%2059.4623%2020.57%2059.4093%2020.5992%2059.3504C20.6262%2059.2939%2020.6543%2059.2385%2020.6836%2059.1843C20.7106%2059.1278%2020.7376%2059.0759%2020.7648%2059.0287C20.7872%2058.9816%2020.8064%2058.9451%2020.8222%2058.9191C20.7969%2058.9359%2020.7623%2058.9576%2020.7184%2058.9841C20.6699%2059.0107%2020.6191%2059.0396%2020.566%2059.0709C20.5105%2059.1%2020.4539%2059.1302%2020.3961%2059.1616C20.3384%2059.1931%2020.2864%2059.2209%2020.2401%2059.2451L18.1984%2060.3371L17.7991%2059.9524L21.0589%2058.281ZM18.1215%2055.3391L15.3278%2057.3893L15.0202%2056.9702L17.814%2054.92L18.1215%2055.3391ZM15.9886%2052.3007L12.8819%2053.836L11.8927%2051.8344L12.3454%2051.6107L13.1043%2053.1463L13.8721%2052.7668L13.4312%2051.8748L13.8839%2051.6511L14.3248%2052.5431L15.3056%2052.0584L14.5138%2050.4562L14.9665%2050.2325L15.9886%2052.3007ZM13.0654%2044.7145L13.187%2045.225L11.1353%2046.2685C11.108%2046.2818%2011.0745%2046.2982%2011.0351%2046.3178C10.9925%2046.3381%2010.9514%2046.3581%2010.912%2046.3777C10.8693%2046.398%2010.8299%2046.4176%2010.7936%2046.4364C10.7566%2046.452%2010.7289%2046.4637%2010.7104%2046.4715C10.7304%2046.4701%2010.7609%2046.4697%2010.8017%2046.4701C10.8417%2046.4674%2010.8854%2046.4654%2010.9326%2046.4644C10.9766%2046.464%2011.0223%2046.4634%2011.0695%2046.4623C11.1136%2046.462%2011.1508%2046.4616%2011.1812%2046.4611L13.4887%2046.4915L13.608%2046.9924L10.4011%2048.4841L10.2795%2047.9736L12.3116%2047.062C12.3366%2047.0527%2012.3675%2047.0402%2012.4045%2047.0246C12.4407%2047.0058%2012.479%2046.9882%2012.5192%2046.9719C12.5586%2046.9523%2012.5984%2046.9343%2012.6386%2046.918C12.6756%2046.9024%2012.7082%2046.8895%2012.7363%2046.8794C12.7067%2046.8831%2012.6718%2046.8863%2012.6318%2046.8891C12.5909%2046.8886%2012.5485%2046.8885%2012.5045%2046.8889C12.4605%2046.8892%2012.4184%2046.8907%2012.3784%2046.8935C12.3375%2046.893%2012.3035%2046.8926%2012.2763%2046.8923L10.0144%2046.8612L9.91119%2046.4278L11.9619%2045.3591C12.0038%2045.3355%2012.0614%2045.3066%2012.1346%2045.2722C12.2078%2045.2377%2012.2738%2045.2085%2012.3325%2045.1843C12.2652%2045.1867%2012.1915%2045.1907%2012.1114%2045.1962C12.0281%2045.2025%2011.9648%2045.2074%2011.9215%2045.2109L9.64731%2045.3202L9.53029%2044.829L13.0654%2044.7145ZM10.5555%2035.995C10.6605%2036.0061%2010.7553%2036.036%2010.8397%2036.0847C10.9246%2036.1302%2010.9978%2036.191%2011.0594%2036.2672C11.1182%2036.3397%2011.1624%2036.424%2011.1921%2036.5201C11.2188%2036.6125%2011.2269%2036.7096%2011.2161%2036.8113C11.2051%2036.9164%2011.1768%2037.0113%2011.1314%2037.0961C11.0826%2037.1806%2011.0218%2037.2538%2010.9489%2037.3158C10.8731%2037.3742%2010.7888%2037.4184%2010.696%2037.4485C10.6036%2037.4752%2010.5049%2037.4831%2010.3998%2037.472C10.2981%2037.4613%2010.2032%2037.433%2010.1151%2037.3872C10.0273%2037.3382%209.95408%2037.2773%209.89535%2037.2048C9.83369%2037.1286%209.78784%2037.0441%209.75779%2036.9513C9.72775%2036.8586%209.71826%2036.7597%209.72933%2036.6546C9.74005%2036.5529%209.76978%2036.4598%209.8185%2036.3753C9.86758%2036.2876%209.93003%2036.2145%2010.0059%2036.1561C10.0788%2036.0941%2010.1631%2036.0499%2010.2588%2036.0235C10.3548%2035.9938%2010.4537%2035.9843%2010.5555%2035.995ZM13.7648%2029.7157L10.6128%2028.2756L10.8288%2027.8028L13.517%2029.031L14.235%2027.4595L14.6988%2027.6714L13.7648%2029.7157ZM15.9499%2022.181C15.7902%2022.064%2015.6332%2021.9796%2015.4788%2021.9278C15.3237%2021.8714%2015.1769%2021.8456%2015.0383%2021.8505C14.8971%2021.8534%2014.7674%2021.8852%2014.6492%2021.9459C14.5331%2022.0039%2014.434%2022.0888%2014.352%2022.2006C14.2701%2022.3124%2014.2189%2022.4325%2014.1986%2022.5608C14.1775%2022.6844%2014.1865%2022.8117%2014.2256%2022.9427C14.2646%2023.0736%2014.3344%2023.2045%2014.4349%2023.3354C14.5327%2023.4644%2014.6614%2023.5874%2014.8211%2023.7045C14.9809%2023.8215%2015.1383%2023.9082%2015.2933%2023.9646C15.4477%2024.0164%2015.5945%2024.0422%2015.7338%2024.0419C15.8724%2024.0371%2015.9998%2024.0057%2016.116%2023.9476C16.2341%2023.8869%2016.3342%2023.8007%2016.4161%2023.6889C16.4981%2023.5771%2016.5496%2023.4593%2016.5706%2023.3356C16.591%2023.2074%2016.5817%2023.0777%2016.5426%2022.9468C16.5055%2022.8132%2016.438%2022.6819%2016.3402%2022.553C16.2397%2022.4221%2016.1097%2022.2981%2015.9499%2022.181ZM16.2551%2021.7479C16.4734%2021.9079%2016.6502%2022.0825%2016.7856%2022.2718C16.9184%2022.4591%2017.0097%2022.6529%2017.0594%2022.853C17.1084%2023.0485%2017.1139%2023.2448%2017.0758%2023.442C17.0377%2023.6391%2016.9533%2023.8268%2016.8226%2024.0052C16.6938%2024.1809%2016.5425%2024.3175%2016.3687%2024.4152C16.1922%2024.5108%2016.0033%2024.5647%2015.8021%2024.5769C15.6009%2024.589%2015.391%2024.56%2015.1724%2024.4898C14.9531%2024.4149%2014.7343%2024.2975%2014.516%2024.1376C14.2977%2023.9776%2014.1222%2023.8039%2013.9894%2023.6166C13.854%2023.4273%2013.7618%2023.2349%2013.7127%2023.0394C13.663%2022.8393%2013.6572%2022.6407%2013.6953%2022.4435C13.7334%2022.2464%2013.8168%2022.06%2013.9456%2021.8843C14.0763%2021.706%2014.2299%2021.5689%2014.4064%2021.4733C14.5802%2021.3756%2014.7678%2021.3208%2014.969%2021.3086C15.1702%2021.2965%2015.3804%2021.3279%2015.5998%2021.4027C15.8184%2021.4729%2016.0368%2021.588%2016.2551%2021.7479ZM19.3021%2017.8311C19.2459%2017.797%2019.1829%2017.76%2019.1131%2017.7202C19.0432%2017.6804%2018.9734%2017.6407%2018.9035%2017.6009C18.8362%2017.559%2018.7732%2017.522%2018.7145%2017.49C18.6562%2017.4533%2018.6113%2017.4246%2018.58%2017.4038C18.5964%2017.4376%2018.6189%2017.4859%2018.6474%2017.5486C18.6738%2017.6089%2018.7033%2017.6752%2018.7358%2017.7475C18.7662%2017.8174%2018.7975%2017.8908%2018.8298%2017.9678C18.8645%2018.0427%2018.8938%2018.1113%2018.9177%2018.1737L19.2303%2018.9525L20.0354%2018.2488L19.3021%2017.8311ZM21.2217%2018.9213L20.4609%2018.4949L19.4173%2019.4071L19.742%2020.2148L19.3357%2020.57L17.9942%2017.1399L18.408%2016.7782L21.6391%2018.5564L21.2217%2018.9213ZM24.9375%2014.1721C24.8509%2014.0126%2024.7534%2013.8778%2024.6448%2013.7677C24.5347%2013.6547%2024.4116%2013.5732%2024.2755%2013.5231C24.1424%2013.4715%2023.9964%2013.455%2023.8375%2013.4736C23.6815%2013.4906%2023.5136%2013.5479%2023.3338%2013.6455L22.9596%2013.8486L24.1307%2016.0068L24.5049%2015.8037C24.6847%2015.7061%2024.8243%2015.5966%2024.9236%2015.4751C25.0258%2015.3521%2025.0915%2015.2206%2025.1208%2015.0808C25.153%2014.9395%2025.1525%2014.7933%2025.1194%2014.6423C25.0847%2014.4884%2025.0241%2014.3317%2024.9375%2014.1721ZM25.4031%2013.9195C25.5495%2014.1893%2025.634%2014.4419%2025.6567%2014.6774C25.6822%2014.9114%2025.6607%2015.1277%2025.592%2015.3264C25.5218%2015.5222%2025.4125%2015.698%2025.2641%2015.8536C25.1187%2016.0076%2024.9459%2016.1389%2024.7457%2016.2475L23.9146%2016.6985L22.2619%2013.6527L23.0929%2013.2017C23.296%2013.0915%2023.5032%2013.0167%2023.7145%2012.9771C23.9287%2012.9359%2024.1364%2012.9415%2024.3375%2012.9938C24.5371%2013.0433%2024.728%2013.1425%2024.9102%2013.2914C25.0924%2013.4404%2025.2567%2013.6497%2025.4031%2013.9195ZM34.3617%2011.6339C34.4181%2011.9858%2034.3486%2012.2711%2034.153%2012.4896C33.9569%2012.7049%2033.6568%2012.845%2033.2527%2012.9098C33.1322%2012.9291%2033.0095%2012.9354%2032.8847%2012.9287C32.76%2012.922%2032.6383%2012.9031%2032.5197%2012.872C32.4043%2012.8403%2032.2955%2012.7976%2032.1933%2012.7438C32.0905%2012.6868%2032.0028%2012.619%2031.93%2012.5404L32.2677%2012.1453C32.3934%2012.2621%2032.5365%2012.3411%2032.6968%2012.3823C32.8566%2012.4201%2033.0148%2012.4265%2033.1712%2012.4014C33.4449%2012.3575%2033.6293%2012.2778%2033.7244%2012.1623C33.8223%2012.043%2033.8571%2011.8953%2033.8289%2011.7194C33.8007%2011.5434%2033.7214%2011.4241%2033.591%2011.3614C33.4601%2011.2955%2033.305%2011.2769%2033.1258%2011.3057L32.8081%2011.3567L32.7281%2010.8581L33.0409%2010.8079C33.2006%2010.7823%2033.3138%2010.7173%2033.3807%2010.613C33.4475%2010.5087%2033.4705%2010.3914%2033.4496%2010.261C33.4417%2010.2122%2033.4236%2010.1616%2033.3951%2010.1093C33.3667%2010.0571%2033.3244%2010.012%2033.2682%209.97426C33.212%209.93648%2033.1392%209.90972%2033.0497%209.89398C32.963%209.87446%2032.8562%209.8749%2032.7291%209.89528C32.5922%209.91724%2032.4728%209.9648%2032.3709%2010.038C32.2723%2010.1106%2032.1838%2010.205%2032.1055%2010.3212L31.6662%2010.0206C31.7888%209.84723%2031.9302%209.70756%2032.0903%209.60165C32.2532%209.49196%2032.4422%209.41986%2032.6573%209.38536C32.817%209.35975%2032.9719%209.35662%2033.1221%209.37599C33.2717%209.39209%2033.405%209.43088%2033.5218%209.49236C33.6386%209.55385%2033.7374%209.63828%2033.8181%209.74566C33.8983%209.84978%2033.9505%209.97679%2033.9745%2010.1267C34.0074%2010.332%2033.9923%2010.4982%2033.9291%2010.6253C33.8692%2010.7519%2033.7858%2010.8572%2033.679%2010.9412C33.8492%2010.9607%2033.997%2011.0272%2034.1221%2011.1409C34.2473%2011.2545%2034.3272%2011.4188%2034.3617%2011.6339ZM39.5621%2011.2542C39.5713%2011.0465%2039.5088%2010.8918%2039.3745%2010.79C39.2404%2010.685%2039.0497%2010.627%2038.8024%2010.616C38.5486%2010.6048%2038.3468%2010.6471%2038.1972%2010.7429C38.0478%2010.8353%2037.9685%2010.9838%2037.9595%2011.1882C37.9557%2011.2739%2037.9686%2011.3555%2037.9982%2011.4327C38.0278%2011.51%2038.0743%2011.5798%2038.1376%2011.6421C38.2044%2011.7012%2038.2864%2011.7511%2038.3837%2011.7917C38.4812%2011.8291%2038.5942%2011.8506%2038.7228%2011.8563C38.9865%2011.868%2039.1901%2011.8208%2039.3336%2011.7148C39.4772%2011.6056%2039.5533%2011.452%2039.5621%2011.2542ZM40.0868%2011.2675C40.0785%2011.4555%2040.0365%2011.6204%2039.9608%2011.7624C39.8851%2011.9044%2039.7842%2012.0206%2039.658%2012.1108C39.5318%2012.201%2039.3851%2012.2672%2039.2181%2012.3093C39.051%2012.3515%2038.8719%2012.3683%2038.6807%2012.3599C38.4993%2012.3518%2038.3306%2012.3196%2038.1745%2012.2631C38.0186%2012.2034%2037.8838%2012.1148%2037.77%2011.9975C37.6596%2011.8803%2037.5736%2011.7327%2037.5121%2011.5549C37.4539%2011.3773%2037.4302%2011.1664%2037.441%2010.9225C37.4477%2010.7708%2037.4696%2010.6132%2037.5066%2010.4496C37.5435%2010.2861%2037.5985%2010.1267%2037.6714%209.97132C37.7477%209.81613%2037.8434%209.6684%2037.9586%209.52815C38.0772%209.38803%2038.218%209.26543%2038.3813%209.16034C38.5445%209.05524%2038.7331%208.97274%2038.9472%208.91284C39.1646%208.85309%2039.4103%208.82432%2039.6844%208.82655L39.6627%209.31617C39.2631%209.31499%2038.9256%209.40081%2038.6504%209.57363C38.3784%209.74659%2038.1784%2010.0119%2038.0502%2010.3697C38.1765%2010.2794%2038.3081%2010.2159%2038.4452%2010.179C38.5857%2010.139%2038.7615%2010.1236%2038.9725%2010.133C39.1307%2010.14%2039.2781%2010.1696%2039.4145%2010.2219C39.5544%2010.2711%2039.6751%2010.3425%2039.7767%2010.4362C39.8783%2010.5299%2039.9574%2010.6457%2040.014%2010.7836C40.0707%2010.9216%2040.0949%2011.0829%2040.0868%2011.2675ZM45.3511%2011.4213C45.3964%2011.2455%2045.4225%2011.0784%2045.4292%2010.92C45.44%2010.7592%2045.4262%2010.6142%2045.388%2010.485C45.3529%2010.3567%2045.2908%2010.247%2045.2019%2010.1559C45.1161%2010.0656%2044.9997%2010.0015%2044.8527%209.9636C44.7057%209.9257%2044.5728%209.92553%2044.454%209.96309C44.3361%209.99745%2044.2292%2010.0619%2044.1332%2010.1565C44.0413%2010.2486%2043.9612%2010.3677%2043.8929%2010.5137C43.8254%2010.6565%2043.769%2010.8158%2043.7237%2010.9916C43.6784%2011.1673%2043.6503%2011.3356%2043.6396%2011.4964C43.6328%2011.6549%2043.647%2011.7983%2043.682%2011.9266C43.7203%2012.0558%2043.7824%2012.1655%2043.8682%2012.2558C43.9571%2012.3469%2044.0751%2012.4114%2044.2221%2012.4493C44.3692%2012.4871%2044.5016%2012.4889%2044.6195%2012.4546C44.7383%2012.417%2044.8436%2012.3521%2044.9355%2012.2599C45.0315%2012.1654%2045.1132%2012.0467%2045.1807%2011.9039C45.249%2011.7579%2045.3058%2011.5971%2045.3511%2011.4213ZM45.8617%2011.5427C45.7958%2011.7984%2045.7065%2012.0258%2045.5938%2012.2251C45.4819%2012.4212%2045.3502%2012.5816%2045.1988%2012.7061C45.0474%2012.8307%2044.8775%2012.9147%2044.6891%2012.9582C44.5047%2012.9992%2044.3038%2012.9918%2044.0865%2012.9357C43.8692%2012.8797%2043.6882%2012.7888%2043.5434%2012.6628C43.4026%2012.5345%2043.2957%2012.3808%2043.2226%2012.2018C43.1534%2012.0204%2043.1173%2011.8168%2043.1142%2011.5911C43.1142%2011.3661%2043.1472%2011.1258%2043.2131%2010.8702C43.2782%2010.6177%2043.3667%2010.3934%2043.4785%2010.1973C43.5913%209.99801%2043.7233%209.83608%2043.8747%209.71151C44.0261%209.58694%2044.1944%209.50252%2044.3797%209.45825C44.5681%209.4148%2044.771%209.42108%2044.9883%209.4771C45.2056%209.53312%2045.3846%209.62528%2045.5254%209.75359C45.6702%209.87952%2045.7771%2010.0332%2045.8462%2010.2146C45.9193%2010.3936%2045.9555%2010.5972%2045.9546%2010.8253C45.9578%2011.0511%2045.9268%2011.2902%2045.8617%2011.5427ZM50.5577%2012.3223C50.5892%2012.2569%2050.6052%2012.1895%2050.6057%2012.1201C50.6106%2012.0492%2050.6015%2011.9807%2050.5785%2011.9146C50.5584%2011.8499%2050.5243%2011.7913%2050.4763%2011.7389C50.4328%2011.6849%2050.3768%2011.6414%2050.3084%2011.6084C50.24%2011.5755%2050.1697%2011.558%2050.0973%2011.5561C50.0294%2011.5526%2049.9624%2011.5624%2049.8963%2011.5855C49.8331%2011.61%2049.7739%2011.6455%2049.7184%2011.6921C49.6674%2011.7371%2049.6261%2011.7923%2049.5946%2011.8577C49.5616%2011.9261%2049.5427%2011.9957%2049.5378%2012.0666C49.5358%2012.139%2049.5449%2012.2075%2049.565%2012.2722C49.5881%2012.3383%2049.6214%2012.3983%2049.665%2012.4523C49.713%2012.5048%2049.7712%2012.5475%2049.8395%2012.5805C49.9079%2012.6134%2049.9761%2012.6317%2050.044%2012.6351C50.1164%2012.637%2050.1841%2012.6258%2050.2472%2012.6012C50.3133%2012.5782%2050.3726%2012.5426%2050.4251%2012.4946C50.4805%2012.4481%2050.5247%2012.3906%2050.5577%2012.3223ZM50.959%2012.5158C50.8988%2012.6407%2050.8198%2012.7474%2050.7222%2012.8358C50.626%2012.9213%2050.5184%2012.9849%2050.3994%2013.0264C50.2804%2013.068%2050.1567%2013.0852%2050.0282%2013.0782C49.8997%2013.0712%2049.773%2013.0375%2049.6481%2012.9773C49.5233%2012.9171%2049.4181%2012.8389%2049.3326%2012.7427C49.2471%2012.6465%2049.1836%2012.5389%2049.142%2012.4199C49.1034%2012.3023%2049.0862%2012.1786%2049.0902%2012.0486C49.0987%2011.9172%2049.133%2011.789%2049.1933%2011.6641C49.2521%2011.5423%2049.3296%2011.4386%2049.4258%2011.3531C49.5249%2011.269%2049.6318%2011.207%2049.7464%2011.1669C49.8654%2011.1254%2049.9891%2011.1081%2050.1176%2011.1152C50.2476%2011.1192%2050.375%2011.1514%2050.4998%2011.2116C50.6247%2011.2718%2050.7291%2011.3515%2050.8132%2011.4507C50.8987%2011.5469%2050.9622%2011.6545%2051.0038%2011.7735C51.0468%2011.8895%2051.0647%2012.0117%2051.0577%2012.1402C51.0507%2012.2688%2051.0178%2012.394%2050.959%2012.5158ZM56.4961%2019.3123L56.1061%2018.9252L57.6939%2015.6184L58.0944%2016.016L57.0517%2018.0921C57.0286%2018.1389%2057.0019%2018.1915%2056.9718%2018.25C56.944%2018.3061%2056.915%2018.361%2056.8849%2018.4148C56.8571%2018.4709%2056.8293%2018.5223%2056.8014%2018.5691C56.7783%2018.6159%2056.7586%2018.6521%2056.7423%2018.6779C56.7679%2018.6614%2056.8029%2018.6403%2056.8471%2018.6145C56.896%2018.5886%2056.9473%2018.5604%2057.0008%2018.5299C57.0567%2018.5017%2057.1138%2018.4723%2057.172%2018.4418C57.2303%2018.4112%2057.2827%2018.3842%2057.3293%2018.3607L59.3872%2017.2996L59.7807%2017.6902L56.4961%2019.3123ZM59.3871%2022.2996L62.2211%2020.3055L62.5202%2020.7306L59.6862%2022.7247L59.3871%2022.2996ZM61.4608%2025.3785L64.59%2023.8895L65.5493%2025.9055L65.0934%2026.1225L64.3574%2024.5758L63.584%2024.9438L64.0116%2025.8423L63.5556%2026.0593L63.1281%2025.1608L62.1402%2025.6309L62.9081%2027.2446L62.4521%2027.4616L61.4608%2025.3785ZM64.2671%2033.0066L64.1536%2032.4942L66.2216%2031.4834C66.2491%2031.4706%2066.2828%2031.4547%2066.3226%2031.4357C66.3655%2031.4161%2066.4069%2031.3968%2066.4466%2031.3778C66.4896%2031.3582%2066.5293%2031.3392%2066.5659%2031.321C66.6031%2031.306%2066.631%2031.2947%2066.6497%2031.2872C66.6296%2031.2883%2066.5992%2031.2883%2066.5584%2031.2872C66.5183%2031.2893%2066.4746%2031.2905%2066.4274%2031.2908C66.3833%2031.2904%2066.3377%2031.2904%2066.2904%2031.2907C66.2464%2031.2903%2066.2092%2031.2901%2066.1787%2031.2901L63.872%2031.2231L63.7607%2030.7204L66.9909%2029.2798L67.1044%2029.7921L65.058%2030.6713C65.0329%2030.6803%2065.0018%2030.6922%2064.9645%2030.7072C64.928%2030.7255%2064.8895%2030.7424%2064.8491%2030.7582C64.8093%2030.7771%2064.7692%2030.7944%2064.7287%2030.8102C64.6915%2030.8252%2064.6587%2030.8375%2064.6305%2030.8472C64.6602%2030.844%2064.6951%2030.8413%2064.7352%2030.8392C64.776%2030.8403%2064.8184%2030.841%2064.8624%2030.8414C64.9065%2030.8418%2064.9485%2030.8409%2064.9886%2030.8388C65.0294%2030.8399%2065.0634%2030.8408%2065.0906%2030.8416L67.3517%2030.9086L67.4481%2031.3436L65.3806%2032.3796C65.3384%2032.4025%2065.2804%2032.4305%2065.2066%2032.4638C65.1328%2032.497%2065.0664%2032.5253%2065.0073%2032.5485C65.0746%2032.5471%2065.1484%2032.5443%2065.2286%2032.54C65.312%2032.5351%2065.3753%2032.5312%2065.4187%2032.5284L67.6943%2032.4553L67.8035%2032.9483L64.2671%2033.0066ZM66.6349%2041.7727C66.5302%2041.7592%2066.4362%2041.7272%2066.3528%2041.6765C66.2691%2041.6292%2066.1972%2041.5667%2066.1373%2041.4891C66.0803%2041.4153%2066.038%2041.33%2066.0105%2041.2333C65.9858%2041.1403%2065.98%2041.043%2065.993%2040.9415C66.0065%2040.8368%2066.0369%2040.7425%2066.0843%2040.6588C66.1349%2040.5754%2066.1974%2040.5036%2066.2717%2040.4433C66.3488%2040.3866%2066.4341%2040.3443%2066.5275%2040.3164C66.6205%2040.2918%2066.7194%2040.2862%2066.8242%2040.2996C66.9256%2040.3127%2067.0199%2040.3431%2067.1069%2040.3908C67.1935%2040.4419%2067.2654%2040.5044%2067.3224%2040.5782C67.3823%2040.6558%2067.4263%2040.7413%2067.4542%2040.8347C67.4821%2040.9282%2067.4894%2041.0273%2067.4759%2041.132C67.4629%2041.2335%2067.431%2041.3259%2067.3804%2041.4092C67.3293%2041.4958%2067.2652%2041.5675%2067.1881%2041.6241C67.1138%2041.6844%2067.0285%2041.7267%2066.9322%2041.751C66.8355%2041.7785%2066.7364%2041.7857%2066.6349%2041.7727Z'%20fill='white'/%3e%3crect%20x='18.6079'%20y='18.6716'%20width='39.505'%20height='39.505'%20rx='19.7525'%20stroke='white'%20stroke-opacity='0.1'%20stroke-width='0.49505'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M33.085%2032.379C33.0851%2031.5988%2033.9392%2031.1196%2034.6055%2031.5255L45.1846%2037.9718C45.8238%2038.3615%2045.8237%2039.29%2045.1846%2039.6798L34.6055%2046.1271C33.9392%2046.5327%2033.085%2046.0528%2033.085%2045.2726V32.379Z'%20fill='white'/%3e%3c/svg%3e",Tn="data:image/svg+xml,%3csvg%20width='84'%20height='44'%20viewBox='0%200%2084%2044'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%20shape-rendering='geometricPrecision'%3e%3crect%20width='84'%20height='44'%20rx='22'%20fill='white'/%3e%3cg%20opacity='0.5'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M27.7657%2015.2278C28.0781%2015.5315%2028.0781%2016.024%2027.7657%2016.3277L21.9314%2022L27.7657%2027.6723C28.0781%2027.976%2028.0781%2028.4685%2027.7657%2028.7722C27.4533%2029.0759%2026.9467%2029.0759%2026.6343%2028.7722L20.2343%2022.55C19.9219%2022.2462%2019.9219%2021.7538%2020.2343%2021.45L26.6343%2015.2278C26.9467%2014.9241%2027.4533%2014.9241%2027.7657%2015.2278Z'%20fill='%230F0F0F'/%3e%3c/g%3e%3cpath%20d='M42%200H62C74.1503%200%2084%209.84974%2084%2022C84%2034.1503%2074.1503%2044%2062%2044H42V0Z'%20fill='%23F5F5F5'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M56.2343%2015.2278C56.5467%2014.9241%2057.0533%2014.9241%2057.3657%2015.2278L63.7657%2021.45C64.0781%2021.7538%2064.0781%2022.2462%2063.7657%2022.55L57.3657%2028.7722C57.0533%2029.0759%2056.5467%2029.0759%2056.2343%2028.7722C55.9219%2028.4685%2055.9219%2027.976%2056.2343%2027.6723L62.0686%2022L56.2343%2016.3277C55.9219%2016.024%2055.9219%2015.5315%2056.2343%2015.2278Z'%20fill='%230F0F0F'/%3e%3c/svg%3e",Sn={playButton:{default:_n},cursor:{default:{url:kn,hotspot:{x:42,y:22}},leftSpin:{url:In,hotspot:{x:42,y:22}},rightSpin:{url:Tn,hotspot:{x:42,y:22}}},threeSixtyIcon:!1,errorImage:"https://cdn.car-cutter.com/libs/web-player/v3/assets/autonation-fallback.svg"},Rn={autonation:Sn},ft=t=>{if(t)return Rn[t]},Pn=()=>{let t="https://cdn.car-cutter.com/libs/web-player/v3/assets/car_placeholder.png";const{themeConfig:s}=We(),i=a.useMemo(()=>ft(s),[s]);i?.errorImage&&(t=i.errorImage);const f={className:i?.errorImage?void 0:"h-20 small:h-28",style:i?.errorImage?{height:"12rem",width:"auto"}:void 0};return r.jsx("img",{...f,alt:"",src:t})},bt=({text:t,className:s})=>r.jsxs("div",{className:ue("flex size-full flex-col items-center justify-center gap-y-4",s),children:[r.jsx(Pn,{}),r.jsx("div",{className:"text-2xl font-bold",children:t})]}),Nn={primary:"border-primary",foreground:"border-foreground",background:"border-background"},jn={sm:"size-4 border",md:"size-8 border-2",lg:"size-12 border-4"},vr=({color:t="foreground",size:s="md"})=>{const i=Nn[t],f=jn[s];return r.jsx("div",{className:ue("inline-block animate-rotation rounded-full border-b-transparent",f,i)})},$e=a.forwardRef(({src:t,className:s,onLoad:i,imgInPlayerWidthRatio:f=1,onlyThumbnail:u,fadeIn:d,...x},e)=>{const{mediaLoadStrategy:M,playerInViewportWidthRatio:_}=We(),{imageHdWidth:N,usedMediaWidths:L}=rt(),[h,o]=a.useMemo(()=>{const T=L.map(y=>`${y!==N?nn(t,y):t} ${y}w`);let w;if(u)w=[`${L[0]}px`];else{const y=1/(f*_);switch(M){case"quality":{const C=[...L],m=C.pop();w=C.map(b=>`(max-width: ${y*b}px) ${b}px`),w.push(`${m}px`);break}case"balanced":{w=[];for(let C=0;C<L.length-1;C++){const m=L[C],b=L[C+1],S=Math.round((m+b)/2);w.push(`(max-width: ${y*S}px) ${m}px`)}w.push(`${L[L.length-1]}px`);break}case"speed":{const C=[...L],m=C.shift();w=C.reverse().map(b=>`(min-width: ${y*b}px) ${b}px`),w.push(`${m}px`);break}}}return[T.join(", "),w.join(", ")]},[N,f,M,u,_,t,L]),[E,P]=a.useState();return a.useEffect(()=>{if(E===!0)return;const T=setTimeout(()=>{P(w=>w??!1)},30);return()=>clearTimeout(T)},[E]),r.jsx("img",{ref:e,src:t,srcSet:h,sizes:o,className:ue(s,d&&ue(E!==void 0&&"transition-opacity duration-200",E===!1&&"opacity-0",E===!0&&"opacity-100")),onLoad:T=>{P(!0),i?.(T)},...x})});$e.displayName="CdnImage";const xr=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_IMAGE",children:r.jsx("svg",{className:t,viewBox:"0 0 14 14",fill:"none",children:r.jsx("path",{d:"M12.25 8.74997L10.4498 6.9498C10.2311 6.73108 9.93436 6.60822 9.625 6.60822C9.31564 6.60822 9.01895 6.73108 8.80017 6.9498L3.5 12.25M2.91667 1.75H11.0833C11.7277 1.75 12.25 2.27233 12.25 2.91667V11.0833C12.25 11.7277 11.7277 12.25 11.0833 12.25H2.91667C2.27233 12.25 1.75 11.7277 1.75 11.0833V2.91667C1.75 2.27233 2.27233 1.75 2.91667 1.75ZM6.41667 5.25C6.41667 5.89433 5.89433 6.41667 5.25 6.41667C4.60567 6.41667 4.08333 5.89433 4.08333 5.25C4.08333 4.60567 4.60567 4.08333 5.25 4.08333C5.89433 4.08333 6.41667 4.60567 6.41667 5.25Z",stroke:"currentColor",strokeWidth:"0.729167",strokeLinecap:"round",strokeLinejoin:"round"})})}),wr=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"INTERIOR_UI_360",children:r.jsxs("svg",{className:t,viewBox:"0 0 98 98",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[r.jsx("path",{d:"M30.9343 48C26.8559 48 24.3496 46.2454 23.3411 44.1517C23.1038 43.6651 23 43.1933 23 42.7509C23 41.6008 23.7415 40.8784 24.9725 40.8784C25.8623 40.8784 26.4259 41.2322 26.8708 42.0432C27.6271 43.5324 28.7839 44.4171 31.0085 44.4171C33.2034 44.4171 34.7161 43.149 34.7161 41.3797C34.731 39.3154 33.2034 38.1653 30.6081 38.1653H29.6737C28.5911 38.1653 27.9682 37.5313 27.9682 36.5729C27.9682 35.644 28.5911 34.9952 29.6737 34.9952H30.5488C32.7882 34.9952 34.2416 33.7862 34.2416 32.0463C34.2416 30.336 33.0848 29.2006 30.9195 29.2006C29.1102 29.2006 28.0127 29.9526 27.3157 31.4565C26.8263 32.4592 26.3072 32.8278 25.2987 32.8278C24.053 32.8278 23.4153 32.1053 23.4153 31.0289C23.4153 30.5276 23.5191 30.1 23.7415 29.5987C24.6907 27.5197 27.1229 25.7799 30.9047 25.7799C35.428 25.7799 38.4831 28.0063 38.4831 31.4123C38.4831 34.1106 36.5403 35.8799 34.0191 36.396V36.4845C37.2077 36.7793 39.2691 38.6372 39.2691 41.5713C39.2691 45.4344 35.9026 48 30.9343 48Z",fill:"white"}),r.jsx("path",{d:"M50.5032 48C47.107 48 44.4079 46.4223 42.8358 43.2965C42.0201 41.6451 41.5752 39.5366 41.5752 37.0595C41.5752 30.0116 44.9566 25.7651 50.5181 25.7651C54.0626 25.7651 56.6134 27.2543 57.6219 29.2448C57.8295 29.6577 57.9333 30.0411 57.9333 30.4392C57.9333 31.4271 57.2363 32.1938 56.0647 32.1938C55.1749 32.1938 54.641 31.8104 53.9884 31.0584C53.0096 29.8346 51.9715 29.2891 50.5032 29.2891C47.4481 29.2891 45.8909 32.179 45.8613 36.7204V36.9415H45.9502C46.7808 34.9658 48.8867 33.5208 51.7787 33.5208C55.9164 33.5208 58.749 36.455 58.749 40.4508C58.749 44.8594 55.2787 48 50.5032 48ZM50.4439 44.4613C52.6388 44.4613 54.374 42.7804 54.3888 40.6424C54.3888 38.4013 52.7426 36.8088 50.4884 36.8088C48.2193 36.8088 46.5286 38.3865 46.5286 40.554C46.5286 42.7509 48.249 44.4613 50.4439 44.4613Z",fill:"white"}),r.jsx("path",{d:"M68.9374 48C63.5094 48 60.2022 43.7388 60.2022 36.8531C60.2022 29.9821 63.5391 25.7651 68.9374 25.7651C74.3357 25.7651 77.6577 29.9673 77.6577 36.8383C77.6577 43.7093 74.3654 48 68.9374 48ZM68.9374 44.4318C71.5772 44.4318 73.1048 41.7335 73.1048 36.8531C73.1048 32.0021 71.5624 29.3333 68.9374 29.3333C66.3272 29.3333 64.7552 32.0168 64.7552 36.8531C64.7552 41.7335 66.2975 44.4318 68.9374 44.4318Z",fill:"white"}),r.jsx("path",{d:"M81.6758 28.4244C78.6504 28.4244 76.3665 26.1685 76.3665 23.2048C76.3665 20.2559 78.6504 18 81.6758 18C84.6864 18 87 20.2559 87 23.2048C87 26.1685 84.6864 28.4244 81.6758 28.4244ZM81.6758 25.4755C82.9364 25.4755 83.9152 24.4581 83.9152 23.2048C83.9152 21.9368 82.9216 20.9489 81.6758 20.9489C80.4597 20.9489 79.4364 21.9368 79.4364 23.2048C79.4364 24.4581 80.4449 25.4755 81.6758 25.4755Z",fill:"white"}),r.jsx("path",{d:"M37.3915 79.7285C36.5538 79.7285 36.0601 79.2171 36.0601 78.3442V68.0541C36.0601 67.1724 36.5538 66.661 37.3915 66.661C38.2292 66.661 38.7229 67.1724 38.7229 68.0541V78.3442C38.7229 79.2171 38.2292 79.7285 37.3915 79.7285Z",fill:"white"}),r.jsx("path",{d:"M43.7429 79.7285C42.9405 79.7285 42.4644 79.2436 42.4644 78.3971V67.9924C42.4644 67.1459 42.9582 66.661 43.8047 66.661C44.3513 66.661 44.7217 66.8814 45.1273 67.4369L50.6294 75.1258H50.6999V68.0012C50.6999 67.1459 51.1761 66.661 51.9785 66.661C52.7809 66.661 53.2482 67.1459 53.2482 68.0012V78.4324C53.2482 79.2612 52.7809 79.7285 51.9432 79.7285C51.3701 79.7285 51.0174 79.5257 50.6118 78.9614L45.092 71.2284H45.0126V78.3971C45.0126 79.2436 44.5365 79.7285 43.7429 79.7285Z",fill:"white"}),r.jsx("path",{d:"M61.3719 79.7285C60.5343 79.7285 60.0405 79.2171 60.0405 78.3442V69.0417H57.4129C56.6898 69.0417 56.2049 68.6273 56.2049 67.9395C56.2049 67.2518 56.681 66.8373 57.4129 66.8373H65.3398C66.0629 66.8373 66.539 67.2518 66.539 67.9395C66.539 68.6273 66.054 69.0417 65.3398 69.0417H62.7034V78.3442C62.7034 79.2171 62.2096 79.7285 61.3719 79.7285Z",fill:"white"}),r.jsx("path",{d:"M11.5291 40.7269C5.85358 44.3944 2.5 48.9252 2.5 53.8286C2.5 62.4095 12.77 69.8493 27.7816 73.5179M86.4709 40.7269C92.1464 44.3944 95.5 48.9252 95.5 53.8286C95.5 61.8751 86.4695 68.9181 72.967 72.7891M27.7816 73.5179L23.267 65.1144M27.7816 73.5179L19.6553 77.7552",stroke:"currentColor",strokeWidth:"4.51456",strokeLinecap:"round"})]})}),Cr=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_PLAY",children:r.jsx("svg",{className:t,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:r.jsx("polygon",{points:"6 3 20 12 6 21 6 3"})})}),Bt=({className:t,isVisible:s=!0})=>s?r.jsx(Ve,{className:t,customizationKey:"UI_360",children:r.jsxs("svg",{className:t,viewBox:"0 0 98 98",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[r.jsx("path",{d:"M30.9343 48C26.8559 48 24.3496 46.2454 23.3411 44.1517C23.1038 43.6651 23 43.1933 23 42.7509C23 41.6008 23.7415 40.8784 24.9725 40.8784C25.8623 40.8784 26.4259 41.2322 26.8708 42.0432C27.6271 43.5324 28.7839 44.4171 31.0085 44.4171C33.2034 44.4171 34.7161 43.149 34.7161 41.3797C34.731 39.3154 33.2034 38.1653 30.6081 38.1653H29.6737C28.5911 38.1653 27.9682 37.5313 27.9682 36.5729C27.9682 35.644 28.5911 34.9952 29.6737 34.9952H30.5488C32.7882 34.9952 34.2416 33.7862 34.2416 32.0463C34.2416 30.336 33.0848 29.2006 30.9195 29.2006C29.1102 29.2006 28.0127 29.9526 27.3157 31.4565C26.8263 32.4592 26.3072 32.8278 25.2987 32.8278C24.053 32.8278 23.4153 32.1053 23.4153 31.0289C23.4153 30.5276 23.5191 30.1 23.7415 29.5987C24.6907 27.5197 27.1229 25.7799 30.9047 25.7799C35.428 25.7799 38.4831 28.0063 38.4831 31.4123C38.4831 34.1106 36.5403 35.8799 34.0191 36.396V36.4845C37.2077 36.7793 39.2691 38.6372 39.2691 41.5713C39.2691 45.4344 35.9026 48 30.9343 48Z",fill:"white"}),r.jsx("path",{d:"M50.5032 48C47.107 48 44.4079 46.4223 42.8358 43.2965C42.0201 41.6451 41.5752 39.5366 41.5752 37.0595C41.5752 30.0116 44.9566 25.7651 50.5181 25.7651C54.0626 25.7651 56.6134 27.2543 57.6219 29.2448C57.8295 29.6577 57.9333 30.0411 57.9333 30.4392C57.9333 31.4271 57.2363 32.1938 56.0647 32.1938C55.1749 32.1938 54.641 31.8104 53.9884 31.0584C53.0096 29.8346 51.9715 29.2891 50.5032 29.2891C47.4481 29.2891 45.8909 32.179 45.8613 36.7204V36.9415H45.9502C46.7808 34.9658 48.8867 33.5208 51.7787 33.5208C55.9164 33.5208 58.749 36.455 58.749 40.4508C58.749 44.8594 55.2787 48 50.5032 48ZM50.4439 44.4613C52.6388 44.4613 54.374 42.7804 54.3888 40.6424C54.3888 38.4013 52.7426 36.8088 50.4884 36.8088C48.2193 36.8088 46.5286 38.3865 46.5286 40.554C46.5286 42.7509 48.249 44.4613 50.4439 44.4613Z",fill:"white"}),r.jsx("path",{d:"M68.9374 48C63.5094 48 60.2022 43.7388 60.2022 36.8531C60.2022 29.9821 63.5391 25.7651 68.9374 25.7651C74.3357 25.7651 77.6577 29.9673 77.6577 36.8383C77.6577 43.7093 74.3654 48 68.9374 48ZM68.9374 44.4318C71.5772 44.4318 73.1048 41.7335 73.1048 36.8531C73.1048 32.0021 71.5624 29.3333 68.9374 29.3333C66.3272 29.3333 64.7552 32.0168 64.7552 36.8531C64.7552 41.7335 66.2975 44.4318 68.9374 44.4318Z",fill:"white"}),r.jsx("path",{d:"M81.6758 28.4244C78.6504 28.4244 76.3665 26.1685 76.3665 23.2048C76.3665 20.2559 78.6504 18 81.6758 18C84.6864 18 87 20.2559 87 23.2048C87 26.1685 84.6864 28.4244 81.6758 28.4244ZM81.6758 25.4755C82.9364 25.4755 83.9152 24.4581 83.9152 23.2048C83.9152 21.9368 82.9216 20.9489 81.6758 20.9489C80.4597 20.9489 79.4364 21.9368 79.4364 23.2048C79.4364 24.4581 80.4449 25.4755 81.6758 25.4755Z",fill:"white"}),r.jsx("path",{d:"M34.6814 79.561C33.8438 79.561 33.35 79.0496 33.35 78.1678V68.2217C33.35 67.3487 33.8438 66.8373 34.6814 66.8373H40.7302C41.4621 66.8373 41.9382 67.2518 41.9382 67.9395C41.9382 68.6273 41.4533 69.0417 40.7302 69.0417H36.0129V72.1014H40.501C41.1623 72.1014 41.612 72.4894 41.612 73.1242C41.612 73.7591 41.1711 74.147 40.501 74.147H36.0129V77.3566H40.7302C41.4533 77.3566 41.9382 77.771 41.9382 78.4588C41.9382 79.1466 41.4621 79.561 40.7302 79.561H34.6814Z",fill:"white"}),r.jsx("path",{d:"M46.4115 79.7285C45.7061 79.7285 45.1506 79.2171 45.1506 78.5734C45.1506 78.2472 45.2564 77.965 45.5121 77.6123L48.6864 73.1859V73.1154L45.6179 68.9359C45.327 68.5479 45.23 68.2569 45.23 67.9131C45.23 67.19 45.8031 66.661 46.5791 66.661C47.0817 66.661 47.4344 66.8814 47.7782 67.4017L50.5028 71.4224H50.5734L53.3862 67.3135C53.6948 66.855 53.9593 66.661 54.4707 66.661C55.1673 66.661 55.7669 67.1636 55.7669 67.7984C55.7669 68.1423 55.6699 68.4245 55.4142 68.7507L52.1076 73.1683V73.23L55.3172 77.5594C55.5641 77.8768 55.6699 78.1766 55.6699 78.5293C55.6699 79.2259 55.132 79.7285 54.3914 79.7285C53.9064 79.7285 53.5802 79.5345 53.2363 79.0672L50.397 75.1082H50.3265L47.5313 79.076C47.1963 79.561 46.9141 79.7285 46.4115 79.7285Z",fill:"white"}),r.jsx("path",{d:"M63.7055 79.7285C62.8678 79.7285 62.374 79.2171 62.374 78.3442V69.0417H59.7464C59.0234 69.0417 58.5384 68.6273 58.5384 67.9395C58.5384 67.2518 59.0146 66.8373 59.7464 66.8373H67.6734C68.3964 66.8373 68.8725 67.2518 68.8725 67.9395C68.8725 68.6273 68.3876 69.0417 67.6734 69.0417H65.0369V78.3442C65.0369 79.2171 64.5431 79.7285 63.7055 79.7285Z",fill:"white"}),r.jsx("path",{d:"M11.5291 40.7263C5.85358 44.3937 2.5 48.9245 2.5 53.828C2.5 62.4089 12.77 69.8486 27.7816 73.5172M86.4709 40.7263C92.1464 44.3937 95.5 48.9245 95.5 53.828C95.5 61.8744 86.4695 68.9174 72.967 72.7885M27.7816 73.5172L23.267 65.1137M27.7816 73.5172L19.6553 77.7545",stroke:"currentColor",strokeWidth:"4.51456",strokeLinecap:"round"})]})}):null,An=({src:t,withCdn:s})=>{const{permanentGallery:i}=We();if(!t)return null;const f="size-full object-cover";return s?r.jsx($e,{className:f,src:t,onlyThumbnail:!0,fadeIn:!i}):r.jsx("img",{className:f,src:t})},gt=({children:t})=>{const{extendMode:s}=Xe();return r.jsx("div",{className:ue("flex aspect-square h-3/4 items-center justify-center rounded-full bg-foreground/50 p-1",s&&"large:h-3/5 large:p-2"),children:t})},zn=({item:t})=>{const{aspectRatioStyle:s}=rt(),{type:i}=t;let f,u;switch(i){case"360":f=t.images[0].src,u=!0;break;case"next360":f=t.images[0].src,u=!0;break;case"interior-360":f=t.poster,u=!0;break;case"image":f=t.src,u=!0;break;case"video":f=t.poster,u=!0;break;case"custom":f=t.thumbnailSrc,u=!1;break;default:u=!1}const d=r.jsx(An,{src:f,withCdn:u});let x;switch(i){case"360":x=r.jsx(gt,{children:r.jsx(Bt,{className:"size-full"})});break;case"interior-360":x=r.jsx(gt,{children:r.jsx(wr,{className:"size-full"})});break;case"video":x=r.jsx(gt,{children:r.jsx(Cr,{className:"size-full p-0.5 text-background"})});break;case"custom":x=f?null:r.jsx(gt,{children:r.jsx(xr,{className:"size-full p-0.5 text-background"})});break}return r.jsxs("div",{className:"relative bg-foreground/30",style:s,children:[d,x&&r.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-foreground/25",children:x})]})},Dn={primary:"bg-primary/50",neutral:"bg-neutral/50",background:"bg-background/50",foreground:"bg-foreground/50"},br=({color:t="neutral",orientation:s="horizontal"})=>{const i=Dn[t],f=s==="horizontal"?"h-px w-full":"w-px h-full";return r.jsx("div",{className:ue(i,f)})},yr=({className:t="",containerClassName:s=""})=>{const{hideCategoriesNav:i,infiniteCarrousel:f,permanentGallery:u,isFullScreen:d,maxItemsShown:x}=We(),{categories:e,aspectRatioStyle:M}=rt(),{emitAnalyticsEvent:_}=We(),{items:N,extendMode:L,extendTransition:h,masterItemIndex:o,prevItem:E,nextItem:P,scrollToItemIndex:T,resetView:w,displayedCategoryId:y,displayedCategoryName:C}=Xe(),m=a.useMemo(()=>N[o].type,[N,o]),b=a.useMemo(()=>{if(i)return[];const D=new Array;let J=e[0];const R=B=>e.find(ae=>ae.items.some(O=>O===B));for(let B=0;B<N.length;B++){const ae=N[B],O=R(ae);O&&O!==J&&(D.push(B),J=O)}return D},[e,i,N]),S=a.useRef(null),$=a.useCallback(()=>{if(!S.current)throw new Error("slider.current is null");return S.current},[]),I=a.useRef(!1),V=a.useRef(null),[Y,A]=a.useState(!1),H=a.useCallback((D,J)=>{const R=$(),B=R.clientWidth,ae=R.scrollWidth/N.length,O=(D+1/2)*ae-B/2,te=R.scrollWidth-R.clientWidth;R.scrollTo({left:Ke(O,0,te),behavior:J})},[N.length,$]);a.useEffect(()=>{const D=S.current;if(!D)return;const J=ae=>{ae.preventDefault(),I.current=!0,V.current={x:ae.pageX-D.offsetLeft,scrollLeft:D.scrollLeft}},R=ae=>{if(!I.current)return;if(V.current===null)throw new Error("[onMouseMove] scrollStart is null");const te=ae.pageX-D.offsetLeft-V.current.x;if(!Y&&Math.abs(te)<5)return;const K=V.current.scrollLeft-te;A(!0),requestAnimationFrame(()=>{D.scrollLeft=K})},B=()=>{I.current&&(I.current=!1,requestAnimationFrame(()=>{A(!1)}))};return D.addEventListener("mousedown",J),document.addEventListener("mousemove",R),document.addEventListener("mouseleave",B),document.addEventListener("mouseup",B),document.addEventListener("contextmenu",B),()=>{D.removeEventListener("mousedown",J),document.removeEventListener("mousemove",R),document.removeEventListener("mouseleave",B),document.removeEventListener("mouseup",B),document.removeEventListener("contextmenu",B)}},[Y]);const j=a.useRef(o);a.useEffect(()=>{S.current&&(H(o,"smooth"),j.current=o)},[o,H]),a.useEffect(()=>{S.current&&H(j.current,"instant")},[H,d,L,h]);const q=a.useCallback(D=>{_({type:"interaction",current:{category_id:y,category_name:C,item_type:m,item_position:o},action:{name:"Gallery Item Clicked",field:"gallery_item_clicked",value:D}})},[_,y,C,m,o]),ce=a.useCallback(D=>{if(!Y){if(q(D),f&&D===N.length-1&&o===0)E();else if(f&&D===0&&o===N.length-1)P();else if(!d&&x!==1&&D===N.length-1){const J=Math.ceil(x),R=N.length+1,B=Math.max(0,R-J);T(B)}else T(D);w()}},[Y,q,f,N.length,o,w,E,P,d,x,T]),U=a.useCallback((D,J)=>x!==1?"after:opacity-0 hover:after:opacity-70":D===J?"after:opacity-100":"after:opacity-0 hover:after:opacity-70",[x]);return r.jsx("div",{ref:S,className:ue("relative w-full overflow-x-auto no-scrollbar",Y?"cursor-grab":"cursor-grabbing",t),children:r.jsx("div",{className:ue("flex h-10 w-fit gap-1 small:h-12 small:gap-2",L&&"large:h-20 large:gap-4",s),children:N.map((D,J)=>r.jsxs(a.Fragment,{children:[b.includes(J)&&r.jsx("div",{className:"my-2",children:r.jsx(br,{color:u&&!d?"neutral":"background",orientation:"vertical"})}),r.jsx("div",{className:ue("relative h-full overflow-hidden rounded-gallery transition-radius",!Y&&"cursor-pointer","after:absolute after:inset-0 after:rounded-gallery after:border-2 after:border-primary after:transition-all",U(J,o)),style:M,onClick:()=>ce(J),children:r.jsx(zn,{item:D})})]},J))})})},Er=t=>1-Math.pow(1-t,2),On=({Media:t,itemIndex:s})=>{const{setItemInteraction:i}=Xe();return a.useEffect(()=>{i(s,"ready")},[s,i]),t},er=(t,s)=>Math.sqrt((t.clientX-s.clientX)**2+(t.clientY-s.clientY)**2),Fn=({onlyPreload:t,...s})=>{const{zoom:i,isZooming:f,setZoom:u}=Xe(),d=a.useRef(null),x=a.useRef(null),e=a.useCallback(C=>{if(!x.current)throw new Error(`[${C??"getTransformElementOrThrow"}] transformElementRef.current is null`);return x.current},[]),M=a.useRef(!1),_=a.useRef(null),N=a.useRef(new Map),L=a.useRef({x:0,y:0,scale:1}),h=a.useRef(null),o=a.useCallback(C=>{const m=e("setTransformStyle"),{x:b,y:S,scale:$}={...L.current,...C},I=Ke($,1,tt),V=m.clientWidth,Y=m.clientHeight,A=V*I,H=Y*I,j=Ke(b,-(A-V),0),q=Ke(S,-(H-Y),0);L.current={x:j,y:q,scale:I},m.style.transform=`translate(${j}px, ${q}px) scale(${I})`},[e]),E=a.useCallback((C,m)=>{const{x:b,y:S,scale:$}=L.current,{x:I,y:V,scale:Y}={...L.current,...C};h.current&&(cancelAnimationFrame(h.current),h.current=null);const A=()=>{o({x:I,y:V,scale:Y}),u(Y)},H=Math.abs(I-b)<1&&Math.abs(V-S)<1&&Math.abs(Y-$)<.005;if(!m||H){A();return}const j=new Date().getTime(),q=()=>{const ce=()=>{const D=new Date().getTime()-j;if(D>=m){A(),h.current=null;return}const J=Math.min(D/m,1),R=Er(J),B=vt(b,I,R),ae=vt(S,V,R),O=vt($,Y,R);o({x:B,y:ae,scale:O}),q()};h.current=requestAnimationFrame(ce)};q()},[o,u]),P=a.useCallback((C,m)=>{let{x:b,y:S}=L.current;C.x&&(b+=C.x),C.y&&(S+=C.y),E({x:b,y:S},m)},[E]),T=a.useCallback((C,m,b)=>{const S=L.current.scale,$=Ke(C,1,tt),I=$/S,{x:V,y:Y}=L.current,{x:A,y:H}=m,j=-V+A,q=-Y+H,ce=j*I,U=q*I,D=ce-A,J=U-H,R=-D,B=-J;E({x:R,y:B,scale:$},b)},[E]),w=a.useCallback(C=>{const m=e("shiftZoomFromButton"),b=m.clientWidth,S=m.clientHeight;T(C,{x:b/2,y:S/2},200)},[e,T]),y=a.useCallback((C,m,b)=>{const{scale:S}=L.current;T(S+C,m,b)},[T]);return a.useEffect(()=>{t||x.current&&w(i)},[t,w,i]),a.useEffect(()=>{if(t||!f)return;const C=x.current;if(!C)return;const m=$=>{$.preventDefault(),$.stopPropagation(),M.current=!0,_.current={x:$.clientX,y:$.clientY}},b=$=>{if(!M.current)return;if(!_.current)throw new Error("mouseStartXY.current is null");$.stopPropagation();const I=$.clientX-_.current.x,V=$.clientY-_.current.y;P({x:I,y:V}),_.current={x:$.clientX,y:$.clientY}},S=()=>{M.current=!1};return C.addEventListener("mousedown",m),document.addEventListener("mousemove",b),document.addEventListener("mouseleave",S),document.addEventListener("mouseup",S),document.addEventListener("contextmenu",S),()=>{C.removeEventListener("mousedown",m),document.removeEventListener("mousemove",b),document.removeEventListener("mouseleave",S),document.removeEventListener("mouseup",S),document.removeEventListener("contextmenu",S)}},[f,P,t]),a.useEffect(()=>{if(t)return;const C=d.current;if(!C)return;const m=b=>{const{ctrlKey:S,clientX:$,clientY:I,deltaX:V,deltaY:Y}=b;if(S){if(!f&&Y>=0)return;const{left:A,top:H}=C.getBoundingClientRect(),j=$-A,q=I-H;y(-.01*Y,{x:j,y:q})}else{if(!f)return;P({x:-2*V,y:-2*Y})}b.preventDefault()};return C.addEventListener("wheel",m),()=>{C.removeEventListener("wheel",m)}},[f,P,y,t]),a.useEffect(()=>{const C=d.current,m=x.current;if(!C||!m)return;const b=N.current,S=V=>{for(let Y=0;Y<V.changedTouches.length;Y++){const A=V.changedTouches[Y];b.set(A.identifier,A)}},$=V=>{for(let Y=0;Y<V.changedTouches.length;Y++){const A=V.changedTouches[Y];b.delete(A.identifier)}},I=V=>{const Y=V.touches.length;if(Y===1){if(!f)return;V.preventDefault();const A=V.touches[0],H=b.get(A.identifier);if(!H)throw new Error("touchStart is null");const j=A.clientX-H.clientX,q=A.clientY-H.clientY;P({x:j,y:q}),b.set(A.identifier,A)}else if(Y===2){V.preventDefault();const[A,H]=V.touches,j=b.get(A.identifier),q=b.get(H.identifier);if(!j||!q)throw new Error("initialTouch1 or initialTouch2 is null");const ce=er(j,q),D=er(A,H)/ce,{left:J,top:R}=C.getBoundingClientRect();y(D-1,{x:(A.clientX+H.clientX)/2-J,y:(A.clientY+H.clientY)/2-R}),b.set(A.identifier,A),b.set(H.identifier,H)}};return m.addEventListener("touchstart",S),m.addEventListener("touchmove",I),m.addEventListener("touchend",$),m.addEventListener("touchcancel",$),()=>{m.removeEventListener("touchstart",S),m.removeEventListener("touchmove",I),m.removeEventListener("touchend",$),m.removeEventListener("touchcancel",$)}},[f,P,y]),r.jsx("div",{ref:d,className:`relative size-full overflow-hidden ${f?"z-zoomed-image cursor-move":""}`,children:r.jsx("div",{ref:x,className:"origin-top-left",children:r.jsx($e,{...s,imgInPlayerWidthRatio:t?1:i})})})},It=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_ARROW_RIGHT",children:r.jsx("svg",{className:t,viewBox:"0 0 20 20",fill:"none",children:r.jsx("path",{d:"M7.5 15L12.5 10L7.5 5",stroke:"currentColor",strokeWidth:"1.04167",strokeLinecap:"round",strokeLinejoin:"round"})})}),Hn=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_WARNING",children:r.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[r.jsx("circle",{cx:"12",cy:"12",r:"10"}),r.jsx("line",{x1:"12",x2:"12",y1:"8",y2:"12"}),r.jsx("line",{x1:"12",x2:"12.01",y1:"16",y2:"16"})]})}),Un=({hotspot:t,item:s,analyticsValue:i})=>{const{title:f,icon:u,description:d,detail:x,type:e}=t,{emitAnalyticsEvent:M}=We(),{extendMode:_,setShownDetails:N,displayedCategoryId:L,displayedCategoryName:h}=Xe(),o=a.useCallback(ne=>{const k=ne==="click"?"Hotspot Clicked":"Hotspot Hovered",le=ne==="click"?"hotspot_clicked":"hotspot_hovered";M({type:"interaction",current:{category_id:L,category_name:h,item_type:s.item_type,item_position:s.item_position},action:{name:k,field:le,value:i}})},[M,L,h,s,i]),E=a.useCallback(()=>{o("click")},[o]),P=a.useCallback(()=>{o("hover")},[o]),{getIconConfig:T}=dt(),w=u?T(u):void 0,y=!!x?.src?.trim(),C=x?.type==="image"&&y,m=x?.type==="link"&&y,b=x?.type==="pdf"&&y,S=C||m||b,$=!!d||S,I=!!f,V=a.useRef(null),Y=a.useRef(null),A=a.useRef(null),[H,j]=a.useState(!1),q=S?e==="damage"?r.jsx(Hn,{className:"size-4"}):r.jsx(xr,{className:"size-4"}):r.jsx("div",{className:"size-1"}),ce=()=>{$&&(E(),!(m||b)&&N({src:C?x.src:void 0,title:f,text:d}))},[U,D]=a.useState(!1),J=a.useCallback(()=>{U||(D(!0),P())},[U,D,P]),R=a.useCallback(()=>{U&&D(!1)},[U,D]),ae=a.useCallback(()=>e==="damage"?"var(--hotspot-damage-color)":"var(--hotspot-feature-color)",[e])();a.useEffect(()=>{if(!I)return;const ne=V.current||Y.current,k=A.current;if(!ne||!k)return;const le=ne.offsetParent||ne.parentElement;if(!le)return;let G=null;const Me=()=>{G!==null&&cancelAnimationFrame(G),G=requestAnimationFrame(()=>{G=null;const He=le.getBoundingClientRect(),ge=ne.getBoundingClientRect(),c=k.getBoundingClientRect(),p=He.right-ge.left,Q=ge.right-He.left,oe=c.width;let ee=!1;p>=oe?ee=!1:Q>=oe?ee=!0:ee=Q>=p,j(v=>v===ee?v:ee)})};if(Me(),typeof ResizeObserver>"u")return window.addEventListener("resize",Me),()=>{G!==null&&cancelAnimationFrame(G),window.removeEventListener("resize",Me)};const Ue=new ResizeObserver(Me);return Ue.observe(le),()=>{G!==null&&cancelAnimationFrame(G),Ue.disconnect()}},[I,f,$,_,S]);const O=ue("group absolute z-hotspot -translate-x-1/2 -translate-y-1/2 hover:z-hotspot-hover",$?"cursor-pointer":"cursor-default"),te={top:`${100*t.position.y}%`,left:`${100*t.position.x}%`},K=r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:ue("relative top-px flex shrink-0 items-center justify-center rounded-full border-2 border-background bg-primary text-primary-foreground",S?H?"right-[-5px] size-7":"left-[-5px] size-7":H?"-right-px size-4":"-left-px size-4"),style:{backgroundColor:ae},children:[r.jsx("div",{className:"pointer-events-none absolute -z-20 size-8 animate-hotspot-ping rounded-full border-0 bg-primary",style:{backgroundColor:ae}}),r.jsx("div",{className:ue(S?"size-4 [&_*]:size-4":"size-1"),children:w?.Icon?w.Icon:q})]}),I&&r.jsxs("div",{className:ue("absolute bottom-0 -z-10 flex w-max max-w-60 items-center gap-1.5 rounded-t-full bg-foreground py-1.5 text-background transition-[opacity,transform] duration-200 small:max-w-64",_&&"large:max-w-72",H?"right-0 rounded-bl-full group-hover:-translate-x-1":"left-0 rounded-br-full group-hover:translate-x-1",S?H?"rounded-br-[10px] pl-2.5 pr-6 small:pl-3 small:pr-7":"rounded-bl-[10px] pl-6 pr-2.5 small:pl-7 small:pr-3":H?"rounded-br-[8px] pl-2.5 pr-5 small:pl-3 small:pr-6":"rounded-bl-[8px] pl-5 pr-2.5 small:pl-6 small:pr-3","pointer-events-none opacity-0 group-hover:pointer-events-auto group-hover:opacity-100"),ref:A,children:[r.jsx("div",{className:"truncate text-xs font-normal",children:f}),$&&r.jsx(It,{className:"size-5 shrink-0"})]})]});return m||b?r.jsx("a",{className:O,style:te,ref:V,href:x.src,target:"_blank",rel:"noopener noreferrer","aria-label":f||"Open link",onClick:ce,onMouseEnter:J,onMouseLeave:R,children:K}):r.jsx("div",{className:O,style:te,ref:Y,onClick:ce,onMouseEnter:J,onMouseLeave:R,role:$?"button":void 0,tabIndex:$?0:void 0,"aria-label":$?f||"View details":void 0,children:K})},Lr=({hotspot:t,item:s})=>{const{detail:i,title:f,description:u,position:d}=t,x=a.useMemo(()=>f||u?{...f?{title:f}:{},...u?{description:u}:{}}:void 0,[f,u]),e=a.useMemo(()=>x||d?{...x?{text:x}:{},...d?{position:d}:{}}:void 0,[x,d]),M=a.useMemo(()=>({...e?{hotspot:e}:{},...i?{detail:i}:{}}),[e,i]);return r.jsx(Un,{hotspot:t,item:s,analyticsValue:M})},Mr=({hotspots:t,itemIndex:s,className:i,onLoad:f,...u})=>{const{isShowingDetails:d,currentItemHotspotsVisible:x,setItemInteraction:e}=Xe();return r.jsx("div",{className:ue("relative size-full overflow-hidden",i),children:r.jsxs("div",{className:ue("size-full duration-details",d?"scale-105":"scale-100"),children:[r.jsx(Fn,{className:"size-full object-cover",onLoad:M=>{s!==void 0&&s>=0&&e(s,"ready"),f?.(M)},...u}),x&&t?.map((M,_)=>r.jsx(Lr,{hotspot:M,item:{item_type:"image",item_position:s}},_))]})})},Bn=100,it=100,ut=50,Wn=0,Vn=0,Xn=t=>{const[s,i]=a.useState(0),[f,u]=a.useState(!1);return a.useEffect(()=>{const d=XMLHttpRequest.prototype.open,x=XMLHttpRequest.prototype.send;let e=!1;return XMLHttpRequest.prototype.open=function(M,_,N=!0,L,h){return _.toString().includes(t)&&(e=!0,u(!0)),d.call(this,M,_,N,L||null,h||null)},XMLHttpRequest.prototype.send=function(M){return e&&(this.addEventListener("progress",_=>{if(_.lengthComputable){const N=Math.round(_.loaded/_.total*100);i(N)}}),this.addEventListener("loadend",()=>{e=!1,i(100),u(!1)})),x.call(this,M)},()=>{XMLHttpRequest.prototype.open=d,XMLHttpRequest.prototype.send=x}},[t]),[s,f]};window.libpannellum=(function(t,s,i){function f(N){var L=s.createElement("canvas");L.style.width=L.style.height="100%",N.appendChild(L);var h,o,E,P,T,w,y,C,m,b,S,$,I,V,Y,A;this.init=function(c,p,Q,oe,ee,v,se,re){if(p===i&&(p="equirectangular"),p!="equirectangular"&&p!="cubemap"&&p!="multires")throw console.log("Error: invalid image type specified!"),{type:"config error"};if(b=p,m=c,S=Q,A=re||{},h){if(E&&(o.detachShader(h,E),o.deleteShader(E)),P&&(o.detachShader(h,P),o.deleteShader(P)),o.bindBuffer(o.ARRAY_BUFFER,null),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,null),h.texture&&o.deleteTexture(h.texture),h.nodeCache)for(var ve=0;ve<h.nodeCache.length;ve++)o.deleteTexture(h.nodeCache[ve].texture);o.deleteProgram(h),h=i}C=i;var fe,Be=!1,Ae;if(b=="cubemap")for(fe=0;fe<6;fe++)m[fe].width>0?(Ae===i&&(Ae=m[fe].width),Ae!=m[fe].width&&console.log("Cube faces have inconsistent widths: "+Ae+" vs. "+m[fe].width)):Be=!0;function me(ie){if(Be){var z=ie*ie*4,pe=new Uint8ClampedArray(z),Le=re.backgroundColor?re.backgroundColor:[0,0,0];Le[0]*=255,Le[1]*=255,Le[2]*=255;for(var be=0;be<z;be++)pe[be++]=Le[0],pe[be++]=Le[1],pe[be++]=Le[2];var Ne=new ImageData(pe,ie,ie);for(fe=0;fe<6;fe++)m[fe].width==0&&(m[fe]=Ne)}}if(b=="cubemap"&&(Ae&Ae-1)!==0&&(navigator.userAgent.toLowerCase().match(/(iphone|ipod|ipad).* os 8_/)||navigator.userAgent.toLowerCase().match(/(iphone|ipod|ipad).* os 9_/)||navigator.userAgent.toLowerCase().match(/(iphone|ipod|ipad).* os 10_/)||navigator.userAgent.match(/Trident.*rv[ :]*11\./))||(o||(o=L.getContext("experimental-webgl",{alpha:!1,depth:!1})),o&&o.getError()==1286&&ge()),!o&&(b=="multires"&&m.hasOwnProperty("fallbackPath")||b=="cubemap")&&("WebkitAppearance"in s.documentElement.style||navigator.userAgent.match(/Trident.*rv[ :]*11\./)||navigator.appVersion.indexOf("MSIE 10")!==-1)){w&&N.removeChild(w),w=s.createElement("div"),w.className="pnlm-world";var xe;m.basePath?xe=m.basePath+m.fallbackPath:xe=m.fallbackPath;var we=["f","r","b","l","u","d"],Ie=0,_e=function(){var z=s.createElement("canvas");z.className="pnlm-face pnlm-"+we[this.side]+"face",w.appendChild(z);var pe=z.getContext("2d");z.style.width=this.width+4+"px",z.style.height=this.height+4+"px",z.width=this.width+4,z.height=this.height+4,pe.drawImage(this,2,2);var Le=pe.getImageData(0,0,z.width,z.height),be=Le.data,Ne,de;for(Ne=2;Ne<z.width-2;Ne++)for(de=0;de<4;de++)be[(Ne+z.width)*4+de]=be[(Ne+z.width*2)*4+de],be[(Ne+z.width*(z.height-2))*4+de]=be[(Ne+z.width*(z.height-3))*4+de];for(Ne=2;Ne<z.height-2;Ne++)for(de=0;de<4;de++)be[(Ne*z.width+1)*4+de]=be[(Ne*z.width+2)*4+de],be[((Ne+1)*z.width-2)*4+de]=be[((Ne+1)*z.width-3)*4+de];for(de=0;de<4;de++)be[(z.width+1)*4+de]=be[(z.width*2+2)*4+de],be[(z.width*2-2)*4+de]=be[(z.width*3-3)*4+de],be[(z.width*(z.height-2)+1)*4+de]=be[(z.width*(z.height-3)+2)*4+de],be[(z.width*(z.height-1)-2)*4+de]=be[(z.width*(z.height-2)-3)*4+de];for(Ne=1;Ne<z.width-1;Ne++)for(de=0;de<4;de++)be[Ne*4+de]=be[(Ne+z.width)*4+de],be[(Ne+z.width*(z.height-1))*4+de]=be[(Ne+z.width*(z.height-2))*4+de];for(Ne=1;Ne<z.height-1;Ne++)for(de=0;de<4;de++)be[Ne*z.width*4+de]=be[(Ne*z.width+1)*4+de],be[((Ne+1)*z.width-1)*4+de]=be[((Ne+1)*z.width-2)*4+de];for(de=0;de<4;de++)be[de]=be[(z.width+1)*4+de],be[(z.width-1)*4+de]=be[(z.width*2-2)*4+de],be[z.width*(z.height-1)*4+de]=be[(z.width*(z.height-2)+1)*4+de],be[(z.width*z.height-1)*4+de]=be[(z.width*(z.height-1)-2)*4+de];pe.putImageData(Le,0,0),ze.call(this)},ze=function(){this.width>0?(T===i&&(T=this.width),T!=this.width&&console.log("Fallback faces have inconsistent widths: "+T+" vs. "+this.width)):Be=!0,Ie++,Ie==6&&(T=this.width,N.appendChild(w),se())};for(Be=!1,fe=0;fe<6;fe++){var De=new Image;De.crossOrigin=A.crossOrigin?A.crossOrigin:"anonymous",De.side=fe,De.onload=_e,De.onerror=ze,b=="multires"?De.src=encodeURI(xe.replace("%s",we[fe])+"."+m.extension):De.src=encodeURI(m[fe].src)}me(T);return}else if(!o)throw console.log("Error: no WebGL support detected!"),{type:"no webgl"};b=="cubemap"&&me(Ae),m.basePath?m.fullpath=m.basePath+m.path:m.fullpath=m.path,m.invTileResolution=1/m.tileResolution;var Ee=D();for(y=[],fe=0;fe<6;fe++)y[fe]=Ee.slice(fe*12,fe*12+12),Ee=D();var ke=0,Oe=0;if(b=="equirectangular"?(ke=Math.max(m.width,m.height),Oe=o.getParameter(o.MAX_TEXTURE_SIZE)):b=="cubemap"&&(ke=Ae,Oe=o.getParameter(o.MAX_CUBE_MAP_TEXTURE_SIZE)),ke>Oe)throw console.log("Error: The image is too big; it's "+ke+"px wide, but this device's maximum supported size is "+Oe+"px."),{type:"webgl size error",width:ke,maxWidth:Oe};re!==i&&(re.horizonPitch!==i||re.horizonRoll!==i)&&(C=[re.horizonPitch==i?0:re.horizonPitch,re.horizonRoll==i?0:re.horizonRoll]);var Pe=o.TEXTURE_2D;o.viewport(0,0,o.drawingBufferWidth,o.drawingBufferHeight),E=o.createShader(o.VERTEX_SHADER);var Fe=u;b=="multires"&&(Fe=d),o.shaderSource(E,Fe),o.compileShader(E),P=o.createShader(o.FRAGMENT_SHADER);var Re=M;b=="cubemap"?(Pe=o.TEXTURE_CUBE_MAP,Re=e):b=="multires"&&(Re=_),o.shaderSource(P,Re),o.compileShader(P),h=o.createProgram(),o.attachShader(h,E),o.attachShader(h,P),o.linkProgram(h),o.getShaderParameter(E,o.COMPILE_STATUS)||console.log(o.getShaderInfoLog(E)),o.getShaderParameter(P,o.COMPILE_STATUS)||console.log(o.getShaderInfoLog(P)),o.getProgramParameter(h,o.LINK_STATUS)||console.log(o.getProgramInfoLog(h)),o.useProgram(h),h.drawInProgress=!1;var Te=re.backgroundColor?re.backgroundColor:[0,0,0];o.clearColor(Te[0],Te[1],Te[2],1),o.clear(o.COLOR_BUFFER_BIT),h.texCoordLocation=o.getAttribLocation(h,"a_texCoord"),o.enableVertexAttribArray(h.texCoordLocation),b!="multires"?($||($=o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,$),o.bufferData(o.ARRAY_BUFFER,new Float32Array([-1,1,1,1,1,-1,-1,1,1,-1,-1,-1]),o.STATIC_DRAW),o.vertexAttribPointer(h.texCoordLocation,2,o.FLOAT,!1,0,0),h.aspectRatio=o.getUniformLocation(h,"u_aspectRatio"),o.uniform1f(h.aspectRatio,o.drawingBufferWidth/o.drawingBufferHeight),h.psi=o.getUniformLocation(h,"u_psi"),h.theta=o.getUniformLocation(h,"u_theta"),h.f=o.getUniformLocation(h,"u_f"),h.h=o.getUniformLocation(h,"u_h"),h.v=o.getUniformLocation(h,"u_v"),h.vo=o.getUniformLocation(h,"u_vo"),h.rot=o.getUniformLocation(h,"u_rot"),o.uniform1f(h.h,oe/(Math.PI*2)),o.uniform1f(h.v,ee/Math.PI),o.uniform1f(h.vo,v/Math.PI*2),b=="equirectangular"&&(h.backgroundColor=o.getUniformLocation(h,"u_backgroundColor"),o.uniform4fv(h.backgroundColor,Te.concat([1]))),h.texture=o.createTexture(),o.bindTexture(Pe,h.texture),b=="cubemap"?(o.texImage2D(o.TEXTURE_CUBE_MAP_POSITIVE_X,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,m[1]),o.texImage2D(o.TEXTURE_CUBE_MAP_NEGATIVE_X,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,m[3]),o.texImage2D(o.TEXTURE_CUBE_MAP_POSITIVE_Y,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,m[4]),o.texImage2D(o.TEXTURE_CUBE_MAP_NEGATIVE_Y,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,m[5]),o.texImage2D(o.TEXTURE_CUBE_MAP_POSITIVE_Z,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,m[0]),o.texImage2D(o.TEXTURE_CUBE_MAP_NEGATIVE_Z,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,m[2])):o.texImage2D(Pe,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,m),o.texParameteri(Pe,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(Pe,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.texParameteri(Pe,o.TEXTURE_MIN_FILTER,o.LINEAR),o.texParameteri(Pe,o.TEXTURE_MAG_FILTER,o.LINEAR)):(h.vertPosLocation=o.getAttribLocation(h,"a_vertCoord"),o.enableVertexAttribArray(h.vertPosLocation),I||(I=o.createBuffer()),V||(V=o.createBuffer()),Y||(Y=o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,V),o.bufferData(o.ARRAY_BUFFER,new Float32Array([0,0,1,0,1,1,0,1]),o.STATIC_DRAW),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,Y),o.bufferData(o.ELEMENT_ARRAY_BUFFER,new Uint16Array([0,1,2,0,2,3]),o.STATIC_DRAW),h.perspUniform=o.getUniformLocation(h,"u_perspMatrix"),h.cubeUniform=o.getUniformLocation(h,"u_cubeMatrix"),h.level=-1,h.currentNodes=[],h.nodeCache=[],h.nodeCacheTimestamp=0);var F=o.getError();if(F!==0)throw console.log("Error: Something went wrong with WebGL!",F),{type:"webgl error"};se()},this.destroy=function(){if(N!==i&&(L!==i&&N.contains(L)&&N.removeChild(L),w!==i&&N.contains(w)&&N.removeChild(w)),o){var c=o.getExtension("WEBGL_lose_context");c&&c.loseContext()}},this.resize=function(){var c=t.devicePixelRatio||1;L.width=L.clientWidth*c,L.height=L.clientHeight*c,o&&(o.getError()==1286&&ge(),o.viewport(0,0,o.drawingBufferWidth,o.drawingBufferHeight),b!="multires"&&o.uniform1f(h.aspectRatio,L.clientWidth/L.clientHeight))},this.resize(),this.setPose=function(c,p){C=[c,p]},this.render=function(c,p,Q,oe){var ee,v,se,re=0;if(oe===i&&(oe={}),oe.roll&&(re=oe.roll),C!==i){var ve=C[0],fe=C[1],Be=c,Ae=p,me=Math.cos(fe)*Math.sin(c)*Math.sin(ve)+Math.cos(c)*(Math.cos(ve)*Math.cos(p)+Math.sin(fe)*Math.sin(ve)*Math.sin(p)),xe=-Math.sin(c)*Math.sin(fe)+Math.cos(c)*Math.cos(fe)*Math.sin(p),we=Math.cos(fe)*Math.cos(ve)*Math.sin(c)+Math.cos(c)*(-Math.cos(p)*Math.sin(ve)+Math.cos(ve)*Math.sin(fe)*Math.sin(p));c=Math.asin(Math.max(Math.min(we,1),-1)),p=Math.atan2(xe,me);var Ie=[Math.cos(Be)*(Math.sin(fe)*Math.sin(ve)*Math.cos(Ae)-Math.cos(ve)*Math.sin(Ae)),Math.cos(Be)*Math.cos(fe)*Math.cos(Ae),Math.cos(Be)*(Math.cos(ve)*Math.sin(fe)*Math.cos(Ae)+Math.sin(Ae)*Math.sin(ve))],_e=[-Math.cos(c)*Math.sin(p),Math.cos(c)*Math.cos(p)],ze=Math.acos(Math.max(Math.min((Ie[0]*_e[0]+Ie[1]*_e[1])/(Math.sqrt(Ie[0]*Ie[0]+Ie[1]*Ie[1]+Ie[2]*Ie[2])*Math.sqrt(_e[0]*_e[0]+_e[1]*_e[1])),1),-1));Ie[2]<0&&(ze=2*Math.PI-ze),re+=ze}if(!o&&(b=="multires"||b=="cubemap")){se=T/2;var De={f:"translate3d(-"+(se+2)+"px, -"+(se+2)+"px, -"+se+"px)",b:"translate3d("+(se+2)+"px, -"+(se+2)+"px, "+se+"px) rotateX(180deg) rotateZ(180deg)",u:"translate3d(-"+(se+2)+"px, -"+se+"px, "+(se+2)+"px) rotateX(270deg)",d:"translate3d(-"+(se+2)+"px, "+se+"px, -"+(se+2)+"px) rotateX(90deg)",l:"translate3d(-"+se+"px, -"+(se+2)+"px, "+(se+2)+"px) rotateX(180deg) rotateY(90deg) rotateZ(180deg)",r:"translate3d("+se+"px, -"+(se+2)+"px, -"+(se+2)+"px) rotateY(270deg)"};ee=1/Math.tan(Q/2);var Ee=ee*L.clientWidth/2+"px",ke="perspective("+Ee+") translateZ("+Ee+") rotateX("+c+"rad) rotateY("+p+"rad) ",Oe=Object.keys(De);for(v=0;v<6;v++){var Pe=w.querySelector(".pnlm-"+Oe[v]+"face");Pe&&(Pe.style.webkitTransform=ke+De[Oe[v]],Pe.style.transform=ke+De[Oe[v]])}return}if(b!="multires"){var Fe=2*Math.atan(Math.tan(Q*.5)/(o.drawingBufferWidth/o.drawingBufferHeight));ee=1/Math.tan(Fe*.5),o.uniform1f(h.psi,p),o.uniform1f(h.theta,c),o.uniform1f(h.rot,re),o.uniform1f(h.f,ee),S===!0&&b=="equirectangular"&&(o.bindTexture(o.TEXTURE_2D,h.texture),o.texImage2D(o.TEXTURE_2D,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,m)),o.drawArrays(o.TRIANGLES,0,6)}else{var Re=O(Q,o.drawingBufferWidth/o.drawingBufferHeight,.1,100);le(Q);var Te=J();Te=R(Te,-re,"z"),Te=R(Te,-c,"x"),Te=R(Te,p,"y"),Te=B(Te),o.uniformMatrix4fv(h.perspUniform,!1,new Float32Array(ae(Re))),o.uniformMatrix4fv(h.cubeUniform,!1,new Float32Array(ae(Te)));var F=G(Re,Te);if(h.nodeCache.sort(H),h.nodeCache.length>200&&h.nodeCache.length>h.currentNodes.length+50)for(var ie=h.nodeCache.splice(200,h.nodeCache.length-200),v=0;v<ie.length;v++)o.deleteTexture(ie[v].texture);h.currentNodes=[];var z=["f","b","u","d","l","r"];for(se=0;se<6;se++){var pe=new ce(y[se],z[se],1,0,0,m.fullpath);U(F,pe,c,p)}for(h.currentNodes.sort(j),v=K.length-1;v>=0;v--)h.currentNodes.indexOf(K[v].node)===-1&&(K[v].node.textureLoad=!1,K.splice(v,1));if(K.length===0)for(v=0;v<h.currentNodes.length;v++){var Le=h.currentNodes[v];if(!Le.texture&&!Le.textureLoad){Le.textureLoad=!0,setTimeout(k,0,Le);break}}q()}if(oe.returnImage!==i)return L.toDataURL("image/png")},this.isLoading=function(){if(o&&b=="multires"){for(var c=0;c<h.currentNodes.length;c++)if(!h.currentNodes[c].textureLoaded)return!0}return!1},this.getCanvas=function(){return L};function H(c,p){return c.level==1&&p.level!=1?-1:p.level==1&&c.level!=1?1:p.timestamp-c.timestamp}function j(c,p){return c.level!=p.level?c.level-p.level:c.diff-p.diff}function q(){if(!h.drawInProgress){h.drawInProgress=!0,o.clear(o.COLOR_BUFFER_BIT);for(var c=0;c<h.currentNodes.length;c++)h.currentNodes[c].textureLoaded>1&&(o.bindBuffer(o.ARRAY_BUFFER,I),o.bufferData(o.ARRAY_BUFFER,new Float32Array(h.currentNodes[c].vertices),o.STATIC_DRAW),o.vertexAttribPointer(h.vertPosLocation,3,o.FLOAT,!1,0,0),o.bindBuffer(o.ARRAY_BUFFER,V),o.vertexAttribPointer(h.texCoordLocation,2,o.FLOAT,!1,0,0),o.bindTexture(o.TEXTURE_2D,h.currentNodes[c].texture),o.drawElements(o.TRIANGLES,6,o.UNSIGNED_SHORT,0));h.drawInProgress=!1}}function ce(c,p,Q,oe,ee,v){this.vertices=c,this.side=p,this.level=Q,this.x=oe,this.y=ee,this.path=v.replace("%s",p).replace("%l",Q).replace("%x",oe).replace("%y",ee)}function U(c,p,Q,oe,ee){if(He(c,p.vertices)){var v=p.vertices,se=v[0]+v[3]+v[6]+v[9],re=v[1]+v[4]+v[7]+v[10],ve=v[2]+v[5]+v[8]+v[11],fe=Math.sqrt(se*se+re*re+ve*ve),Be=Math.asin(ve/fe),Ae=Math.atan2(re,se),me=Ae-oe;me+=me>Math.PI?-2*Math.PI:me<-Math.PI?2*Math.PI:0,me=Math.abs(me),p.diff=Math.acos(Math.sin(Q)*Math.sin(Be)+Math.cos(Q)*Math.cos(Be)*Math.cos(me));for(var xe=!1,we=0;we<h.nodeCache.length;we++)if(h.nodeCache[we].path==p.path){xe=!0,h.nodeCache[we].timestamp=h.nodeCacheTimestamp++,h.nodeCache[we].diff=p.diff,h.currentNodes.push(h.nodeCache[we]);break}if(xe||(p.timestamp=h.nodeCacheTimestamp++,h.currentNodes.push(p),h.nodeCache.push(p)),p.level<h.level){var Ie=m.cubeResolution*Math.pow(2,p.level-m.maxLevel),_e=Math.ceil(Ie*m.invTileResolution)-1,ze=Ie%m.tileResolution*2,De=Ie*2%m.tileResolution;De===0&&(De=m.tileResolution),ze===0&&(ze=m.tileResolution*2);var Ee=.5;(p.x==_e||p.y==_e)&&(Ee=1-m.tileResolution/(m.tileResolution+De));var ke=1-Ee,Oe=[],Pe,Fe,Re=Ee,Te=Ee,F=Ee,ie=ke,z=ke,pe=ke;De<m.tileResolution&&(p.x==_e&&p.y!=_e?(Te=.5,z=.5,(p.side=="d"||p.side=="u")&&(F=.5,pe=.5)):p.x!=_e&&p.y==_e&&(Re=.5,ie=.5,(p.side=="l"||p.side=="r")&&(F=.5,pe=.5))),ze<=m.tileResolution&&(p.x==_e&&(Re=0,ie=1,(p.side=="l"||p.side=="r")&&(F=0,pe=1)),p.y==_e&&(Te=0,z=1,(p.side=="d"||p.side=="u")&&(F=0,pe=1))),Pe=[v[0],v[1],v[2],v[0]*Re+v[3]*ie,v[1]*Ee+v[4]*ke,v[2]*F+v[5]*pe,v[0]*Re+v[6]*ie,v[1]*Te+v[7]*z,v[2]*F+v[8]*pe,v[0]*Ee+v[9]*ke,v[1]*Te+v[10]*z,v[2]*F+v[11]*pe],Fe=new ce(Pe,p.side,p.level+1,p.x*2,p.y*2,m.fullpath),Oe.push(Fe),p.x==_e&&ze<=m.tileResolution||(Pe=[v[0]*Re+v[3]*ie,v[1]*Ee+v[4]*ke,v[2]*F+v[5]*pe,v[3],v[4],v[5],v[3]*Ee+v[6]*ke,v[4]*Te+v[7]*z,v[5]*F+v[8]*pe,v[0]*Re+v[6]*ie,v[1]*Te+v[7]*z,v[2]*F+v[8]*pe],Fe=new ce(Pe,p.side,p.level+1,p.x*2+1,p.y*2,m.fullpath),Oe.push(Fe)),!(p.x==_e&&ze<=m.tileResolution)&&!(p.y==_e&&ze<=m.tileResolution)&&(Pe=[v[0]*Re+v[6]*ie,v[1]*Te+v[7]*z,v[2]*F+v[8]*pe,v[3]*Ee+v[6]*ke,v[4]*Te+v[7]*z,v[5]*F+v[8]*pe,v[6],v[7],v[8],v[9]*Re+v[6]*ie,v[10]*Ee+v[7]*ke,v[11]*F+v[8]*pe],Fe=new ce(Pe,p.side,p.level+1,p.x*2+1,p.y*2+1,m.fullpath),Oe.push(Fe)),p.y==_e&&ze<=m.tileResolution||(Pe=[v[0]*Ee+v[9]*ke,v[1]*Te+v[10]*z,v[2]*F+v[11]*pe,v[0]*Re+v[6]*ie,v[1]*Te+v[7]*z,v[2]*F+v[8]*pe,v[9]*Re+v[6]*ie,v[10]*Ee+v[7]*ke,v[11]*F+v[8]*pe,v[9],v[10],v[11]],Fe=new ce(Pe,p.side,p.level+1,p.x*2,p.y*2+1,m.fullpath),Oe.push(Fe));for(var Le=0;Le<Oe.length;Le++)U(c,Oe[Le],Q,oe)}}}function D(){return[-1,1,-1,1,1,-1,1,-1,-1,-1,-1,-1,1,1,1,-1,1,1,-1,-1,1,1,-1,1,-1,1,1,1,1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,-1,-1,-1,1,1,1,-1,1,1,1,1,-1,1,1,-1,-1]}function J(){return[1,0,0,0,1,0,0,0,1]}function R(c,p,Q){var oe=Math.sin(p),ee=Math.cos(p);if(Q=="x")return[c[0],ee*c[1]+oe*c[2],ee*c[2]-oe*c[1],c[3],ee*c[4]+oe*c[5],ee*c[5]-oe*c[4],c[6],ee*c[7]+oe*c[8],ee*c[8]-oe*c[7]];if(Q=="y")return[ee*c[0]-oe*c[2],c[1],ee*c[2]+oe*c[0],ee*c[3]-oe*c[5],c[4],ee*c[5]+oe*c[3],ee*c[6]-oe*c[8],c[7],ee*c[8]+oe*c[6]];if(Q=="z")return[ee*c[0]+oe*c[1],ee*c[1]-oe*c[0],c[2],ee*c[3]+oe*c[4],ee*c[4]-oe*c[3],c[5],ee*c[6]+oe*c[7],ee*c[7]-oe*c[6],c[8]]}function B(c){return[c[0],c[1],c[2],0,c[3],c[4],c[5],0,c[6],c[7],c[8],0,0,0,0,1]}function ae(c){return[c[0],c[4],c[8],c[12],c[1],c[5],c[9],c[13],c[2],c[6],c[10],c[14],c[3],c[7],c[11],c[15]]}function O(c,p,Q,oe){var ee=2*Math.atan(Math.tan(c/2)*o.drawingBufferHeight/o.drawingBufferWidth),v=1/Math.tan(ee/2);return[v/p,0,0,0,0,v,0,0,0,0,(oe+Q)/(Q-oe),2*oe*Q/(Q-oe),0,0,-1,0]}function te(c,p){o.bindTexture(o.TEXTURE_2D,p),o.texImage2D(o.TEXTURE_2D,0,o.RGB,o.RGB,o.UNSIGNED_BYTE,c),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MAG_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.bindTexture(o.TEXTURE_2D,null)}var K=[],ne=(function(){var c=4,p={},Q;function oe(){var re=this;this.texture=this.callback=null,this.image=new Image,this.image.crossOrigin=Q||"anonymous";var ve=function(){re.image.width>0&&re.image.height>0?(te(re.image,re.texture),re.callback(re.texture,!0)):re.callback(re.texture,!1),v(re)};this.image.addEventListener("load",ve),this.image.addEventListener("error",ve)}oe.prototype.loadTexture=function(re,ve,fe){this.texture=ve,this.callback=fe,this.image.src=re};function ee(re,ve,fe,Be){this.node=re,this.src=ve,this.texture=fe,this.callback=Be}function v(re){if(K.length){var ve=K.shift();re.loadTexture(ve.src,ve.texture,ve.callback)}else p[c++]=re}for(var se=0;se<c;se++)p[se]=new oe;return function(re,ve,fe,Be){Q=Be;var Ae=o.createTexture();return c?p[--c].loadTexture(ve,Ae,fe):K.push(new ee(re,ve,Ae,fe)),Ae}})();function k(c){ne(c,encodeURI(c.path+"."+m.extension),function(p,Q){c.texture=p,c.textureLoaded=Q?2:1},A.crossOrigin)}function le(c){for(var p=1;p<m.maxLevel&&o.drawingBufferWidth>m.tileResolution*Math.pow(2,p-1)*Math.tan(c/2)*.707;)p++;h.level=p}function G(c,p){return[c[0]*p[0],c[0]*p[1],c[0]*p[2],0,c[5]*p[4],c[5]*p[5],c[5]*p[6],0,c[10]*p[8],c[10]*p[9],c[10]*p[10],c[11],-p[8],-p[9],-p[10],0]}function Me(c,p){return[c[0]*p[0]+c[1]*p[1]+c[2]*p[2],c[4]*p[0]+c[5]*p[1]+c[6]*p[2],c[11]+c[8]*p[0]+c[9]*p[1]+c[10]*p[2],1/(c[12]*p[0]+c[13]*p[1]+c[14]*p[2])]}function Ue(c,p){var Q=Me(c,p),oe=Q[0]*Q[3],ee=Q[1]*Q[3],v=Q[2]*Q[3],se=[0,0,0];return oe<-1&&(se[0]=-1),oe>1&&(se[0]=1),ee<-1&&(se[1]=-1),ee>1&&(se[1]=1),(v<-1||v>1)&&(se[2]=1),se}function He(c,p){var Q=Ue(c,p.slice(0,3)),oe=Ue(c,p.slice(3,6)),ee=Ue(c,p.slice(6,9)),v=Ue(c,p.slice(9,12)),se=Q[0]+oe[0]+ee[0]+v[0];if(se==-4||se==4)return!1;var re=Q[1]+oe[1]+ee[1]+v[1];if(re==-4||re==4)return!1;var ve=Q[2]+oe[2]+ee[2]+v[2];return ve!=4}function ge(){console.log("Reducing canvas size due to error 1286!"),L.width=Math.round(L.width/2),L.height=Math.round(L.height/2)}}var u=["attribute vec2 a_texCoord;","varying vec2 v_texCoord;","void main() {","gl_Position = vec4(a_texCoord, 0.0, 1.0);","v_texCoord = a_texCoord;","}"].join(""),d=["attribute vec3 a_vertCoord;","attribute vec2 a_texCoord;","uniform mat4 u_cubeMatrix;","uniform mat4 u_perspMatrix;","varying mediump vec2 v_texCoord;","void main(void) {","gl_Position = u_perspMatrix * u_cubeMatrix * vec4(a_vertCoord, 1.0);","v_texCoord = a_texCoord;","}"].join(""),x=["precision mediump float;","uniform float u_aspectRatio;","uniform float u_psi;","uniform float u_theta;","uniform float u_f;","uniform float u_h;","uniform float u_v;","uniform float u_vo;","uniform float u_rot;","const float PI = 3.14159265358979323846264;","uniform sampler2D u_image;","uniform samplerCube u_imageCube;","varying vec2 v_texCoord;","uniform vec4 u_backgroundColor;","void main() {","float x = v_texCoord.x * u_aspectRatio;","float y = v_texCoord.y;","float sinrot = sin(u_rot);","float cosrot = cos(u_rot);","float rot_x = x * cosrot - y * sinrot;","float rot_y = x * sinrot + y * cosrot;","float sintheta = sin(u_theta);","float costheta = cos(u_theta);","float a = u_f * costheta - rot_y * sintheta;","float root = sqrt(rot_x * rot_x + a * a);","float lambda = atan(rot_x / root, a / root) + u_psi;","float phi = atan((rot_y * costheta + u_f * sintheta) / root);"].join(`
|
|
2
|
-
`),e=x+["float cosphi = cos(phi);","gl_FragColor = textureCube(u_imageCube, vec3(cosphi*sin(lambda), sin(phi), cosphi*cos(lambda)));","}"].join(`
|
|
3
|
-
`),M=x+["lambda = mod(lambda + PI, PI * 2.0) - PI;","vec2 coord = vec2(lambda / PI, phi / (PI / 2.0));","if(coord.x < -u_h || coord.x > u_h || coord.y < -u_v + u_vo || coord.y > u_v + u_vo)","gl_FragColor = u_backgroundColor;","else","gl_FragColor = texture2D(u_image, vec2((coord.x + u_h) / (u_h * 2.0), (-coord.y + u_v + u_vo) / (u_v * 2.0)));","}"].join(`
|
|
4
|
-
`),_=["varying mediump vec2 v_texCoord;","uniform sampler2D u_sampler;","void main(void) {","gl_FragColor = texture2D(u_sampler, v_texCoord);","}"].join("");return{renderer:function(L,h,o,E){return new f(L)}}})(window,document);window.pannellum=(function(t,s,i){function f(u,d){var x=this,e,M,_,N=!1,L=Date.now(),h=0,o=0,E=-1,P=0,T=0,w=new Array(10),y=!1,C,m=!1,b=!1,S,$,I={yaw:0,pitch:0,hfov:0},V=!1,Y=!1,A=0,H,j=0,q,ce,U={},D={},J=[],R=!1,B=!1,ae={hfov:100,minHfov:50,maxHfov:120,pitch:0,minPitch:i,maxPitch:i,yaw:0,minYaw:-180,maxYaw:180,roll:0,haov:360,vaov:180,vOffset:0,autoRotate:!1,autoRotateInactivityDelay:-1,autoRotateStopDelay:i,type:"equirectangular",northOffset:0,showFullscreenCtrl:!0,dynamic:!1,doubleClickZoom:!0,keyboardZoom:!0,mouseZoom:!0,showZoomCtrl:!0,autoLoad:!1,showControls:!0,orientationOnByDefault:!1,hotSpotDebug:!1,backgroundColor:[0,0,0],avoidShowingBackground:!1,animationTimingFunction:z,draggable:!0,disableKeyboardCtrl:!1,crossOrigin:"anonymous",touchPanSpeedCoeffFactor:1,capturedKeyNumbers:[16,17,27,37,38,39,40,61,65,68,83,87,107,109,173,187,189]};ae.strings={loadButtonLabel:"Click to<br>Load<br>Panorama",loadingLabel:"Loading...",bylineLabel:"by %s",noPanoramaError:"No panorama image was specified.",fileAccessError:"The file %s could not be accessed.",malformedURLError:"There is something wrong with the panorama URL.",iOS8WebGLError:"Due to iOS 8's broken WebGL implementation, only progressive encoded JPEGs work for your device (this panorama uses standard encoding).",genericWebGLError:"Your browser does not have the necessary WebGL support to display this panorama.",textureSizeError:"This panorama is too big for your device! It's %spx wide, but your device only supports images up to %spx wide. Try another device. (If you're the author, try scaling down the image.)",unknownError:"Unknown error. Check developer console."},u=typeof u=="string"?s.getElementById(u):u,u.classList.add("pnlm-container"),u.tabIndex=0;var O=s.createElement("div");O.className="pnlm-ui",u.appendChild(O);var te=s.createElement("div");te.className="pnlm-render-container",u.appendChild(te);var K=s.createElement("div");K.className="pnlm-dragfix",O.appendChild(K);var ne=s.createElement("span");ne.className="pnlm-about-msg",ne.innerHTML='<a href="https://pannellum.org/" target="_blank">Pannellum</a>',O.appendChild(ne),K.addEventListener("contextmenu",se);var k={},le=s.createElement("div");le.className="pnlm-sprite pnlm-hot-spot-debug-indicator",O.appendChild(le),k.container=s.createElement("div"),k.container.className="pnlm-panorama-info",k.title=s.createElement("div"),k.title.className="pnlm-title-box",k.container.appendChild(k.title),k.author=s.createElement("div"),k.author.className="pnlm-author-box",k.container.appendChild(k.author),O.appendChild(k.container),k.load={},k.load.box=s.createElement("div"),k.load.box.className="pnlm-load-box",k.load.boxp=s.createElement("p"),k.load.box.appendChild(k.load.boxp),k.load.lbox=s.createElement("div"),k.load.lbox.className="pnlm-lbox",k.load.lbox.innerHTML='<div class="pnlm-loading"></div>',k.load.box.appendChild(k.load.lbox),k.load.lbar=s.createElement("div"),k.load.lbar.className="pnlm-lbar",k.load.lbarFill=s.createElement("div"),k.load.lbarFill.className="pnlm-lbar-fill",k.load.lbar.appendChild(k.load.lbarFill),k.load.box.appendChild(k.load.lbar),k.load.msg=s.createElement("p"),k.load.msg.className="pnlm-lmsg",k.load.box.appendChild(k.load.msg),O.appendChild(k.load.box),k.errorMsg=s.createElement("div"),k.errorMsg.className="pnlm-error-msg pnlm-info-box",O.appendChild(k.errorMsg);var G={};G.container=s.createElement("div"),G.container.className="pnlm-controls-container",O.appendChild(G.container),G.load=s.createElement("div"),G.load.className="pnlm-load-button",G.load.addEventListener("click",function(){yt(),qt()}),O.appendChild(G.load),G.zoom=s.createElement("div"),G.zoom.className="pnlm-zoom-controls pnlm-controls",G.zoomIn=s.createElement("div"),G.zoomIn.className="pnlm-zoom-in pnlm-sprite pnlm-control",G.zoomIn.addEventListener("click",jr),G.zoom.appendChild(G.zoomIn),G.zoomOut=s.createElement("div"),G.zoomOut.className="pnlm-zoom-out pnlm-sprite pnlm-control",G.zoomOut.addEventListener("click",Ar),G.zoom.appendChild(G.zoomOut),G.container.appendChild(G.zoom),G.fullscreen=s.createElement("div"),G.fullscreen.addEventListener("click",Et),G.fullscreen.className="pnlm-fullscreen-toggle-button pnlm-sprite pnlm-fullscreen-toggle-button-inactive pnlm-controls pnlm-control",(s.fullscreenEnabled||s.mozFullScreenEnabled||s.webkitFullscreenEnabled||s.msFullscreenEnabled)&&G.container.appendChild(G.fullscreen),G.orientation=s.createElement("div"),G.orientation.addEventListener("click",function(n){Y?lt():mt()}),G.orientation.addEventListener("mousedown",function(n){n.stopPropagation()}),G.orientation.addEventListener("touchstart",function(n){n.stopPropagation()}),G.orientation.addEventListener("pointerdown",function(n){n.stopPropagation()}),G.orientation.className="pnlm-orientation-button pnlm-orientation-button-inactive pnlm-sprite pnlm-controls pnlm-control";var Me,Ue=!1;function He(n){t.removeEventListener("deviceorientation",He),n&&n.alpha!==null&&n.beta!==null&&n.gamma!==null?(G.container.appendChild(G.orientation),Me=!0,Ue&&mt()):Me=!1}t.DeviceOrientationEvent?t.addEventListener("deviceorientation",He):Me=!1;var ge=s.createElement("div");ge.className="pnlm-compass pnlm-controls pnlm-control",O.appendChild(ge),d.firstScene?ht(d.firstScene):d.default&&d.default.firstScene?ht(d.default.firstScene):ht(null),yt(!0);function c(){var n=s.createElement("div");if(n.innerHTML="<!--[if lte IE 9]><i></i><![endif]-->",n.getElementsByTagName("i").length==1){ee();return}q=e.hfov,ce=e.pitch;var l,g;if(e.type=="cubemap"){for(S=[],l=0;l<6;l++)S.push(new Image),S[l].crossOrigin=e.crossOrigin;k.load.lbox.style.display="block",k.load.lbar.style.display="none"}else if(e.type=="multires"){var W=JSON.parse(JSON.stringify(e.multiRes));e.basePath&&e.multiRes.basePath&&!/^(?:[a-z]+:)?\/\//i.test(e.multiRes.basePath)?W.basePath=e.basePath+e.multiRes.basePath:e.multiRes.basePath?W.basePath=e.multiRes.basePath:e.basePath&&(W.basePath=e.basePath),S=W}else if(e.dynamic===!0)S=e.panorama;else{if(e.panorama===i){ee(e.strings.noPanoramaError);return}S=new Image}if(e.type=="cubemap"){var Z=6,X=function(){Z--,Z===0&&Q()},Ce=function(je){var Se=s.createElement("a");Se.href=je.target.src,Se.textContent=Se.href,ee(e.strings.fileAccessError.replace("%s",Se.outerHTML))};for(l=0;l<S.length;l++)g=e.cubeMap[l],g=="null"?(console.log("Will use background instead of missing cubemap face "+l),X()):(e.basePath&&!p(g)&&(g=e.basePath+g),S[l].onload=X,S[l].onerror=Ce,S[l].src=ot(g))}else if(e.type=="multires")Q();else if(g="",e.basePath&&(g=e.basePath),e.dynamic!==!0){g=p(e.panorama)?e.panorama:g+e.panorama,S.onload=function(){t.URL.revokeObjectURL(this.src),Q()};var he=new XMLHttpRequest;he.onloadend=function(){if(he.status!=200){var ye=s.createElement("a");ye.href=g,ye.textContent=ye.href,ee(e.strings.fileAccessError.replace("%s",ye.outerHTML))}var je=this.response;oe(je),k.load.msg.innerHTML=""},he.onprogress=function(ye){if(ye.lengthComputable){var je=ye.loaded/ye.total*100;k.load.lbarFill.style.width=je+"%";var Se,Ze,Ye;ye.total>1e6?(Se="MB",Ze=(ye.loaded/1e6).toFixed(2),Ye=(ye.total/1e6).toFixed(2)):ye.total>1e3?(Se="kB",Ze=(ye.loaded/1e3).toFixed(1),Ye=(ye.total/1e3).toFixed(1)):(Se="B",Ze=ye.loaded,Ye=ye.total),k.load.msg.innerHTML=Ze+" / "+Ye+" "+Se}else k.load.lbox.style.display="block",k.load.lbar.style.display="none"};try{he.open("GET",g,!0)}catch{ee(e.strings.malformedURLError)}he.responseType="blob",he.setRequestHeader("Accept","image/*,*/*;q=0.9"),he.withCredentials=e.crossOrigin==="use-credentials",he.send()}e.draggable&&O.classList.add("pnlm-grab"),O.classList.remove("pnlm-grabbing")}function p(n){return new RegExp("^(?:[a-z]+:)?//","i").test(n)||n[0]=="/"||n.slice(0,5)=="blob:"}function Q(){M||(M=new libpannellum.renderer(te)),b||(b=!0,K.addEventListener("mousedown",ve,!1),s.addEventListener("mousemove",Ae,!1),s.addEventListener("mouseup",me,!1),e.mouseZoom&&(O.addEventListener("mousewheel",Oe,!1),O.addEventListener("DOMMouseScroll",Oe,!1)),e.doubleClickZoom&&K.addEventListener("dblclick",fe,!1),O.addEventListener("mozfullscreenchange",Je,!1),O.addEventListener("webkitfullscreenchange",Je,!1),O.addEventListener("msfullscreenchange",Je,!1),O.addEventListener("fullscreenchange",Je,!1),t.addEventListener("resize",pe,!1),t.addEventListener("orientationchange",pe,!1),e.disableKeyboardCtrl||(u.addEventListener("keydown",Pe,!1),u.addEventListener("keyup",Re,!1),u.addEventListener("blur",Fe,!1)),s.addEventListener("mouseleave",me,!1),s.documentElement.style.pointerAction===""&&s.documentElement.style.touchAction===""?(K.addEventListener("pointerdown",De,!1),K.addEventListener("pointermove",Ee,!1),K.addEventListener("pointerup",ke,!1),K.addEventListener("pointerleave",ke,!1)):(K.addEventListener("touchstart",xe,!1),K.addEventListener("touchmove",we,!1),K.addEventListener("touchend",Ie,!1)),t.navigator.pointerEnabled&&(u.style.touchAction="none")),Sr(),qe(e.hfov),setTimeout(function(){},500)}function oe(n){var l=new FileReader;l.addEventListener("loadend",function(){var g=l.result;if(navigator.userAgent.toLowerCase().match(/(iphone|ipod|ipad).* os 8_/)){var W=g.indexOf("ÿÂ");(W<0||W>65536)&&ee(e.strings.iOS8WebGLError)}var Z=g.indexOf("<x:xmpmeta");if(Z>-1&&e.ignoreGPanoXMP!==!0){var X=g.substring(Z,g.indexOf("</x:xmpmeta>")+12),Ce=function(je){var Se;return X.indexOf(je+'="')>=0?(Se=X.substring(X.indexOf(je+'="')+je.length+2),Se=Se.substring(0,Se.indexOf('"'))):X.indexOf(je+">")>=0&&(Se=X.substring(X.indexOf(je+">")+je.length+1),Se=Se.substring(0,Se.indexOf("<"))),Se!==i?Number(Se):null},he={fullWidth:Ce("GPano:FullPanoWidthPixels"),croppedWidth:Ce("GPano:CroppedAreaImageWidthPixels"),fullHeight:Ce("GPano:FullPanoHeightPixels"),croppedHeight:Ce("GPano:CroppedAreaImageHeightPixels"),topPixels:Ce("GPano:CroppedAreaTopPixels"),heading:Ce("GPano:PoseHeadingDegrees"),horizonPitch:Ce("GPano:PosePitchDegrees"),horizonRoll:Ce("GPano:PoseRollDegrees")};he.fullWidth!==null&&he.croppedWidth!==null&&he.fullHeight!==null&&he.croppedHeight!==null&&he.topPixels!==null&&(J.indexOf("haov")<0&&(e.haov=he.croppedWidth/he.fullWidth*360),J.indexOf("vaov")<0&&(e.vaov=he.croppedHeight/he.fullHeight*180),J.indexOf("vOffset")<0&&(e.vOffset=((he.topPixels+he.croppedHeight/2)/he.fullHeight-.5)*-180),he.heading!==null&&J.indexOf("northOffset")<0&&(e.northOffset=he.heading,e.compass!==!1&&(e.compass=!0)),he.horizonPitch!==null&&he.horizonRoll!==null&&(J.indexOf("horizonPitch")<0&&(e.horizonPitch=he.horizonPitch),J.indexOf("horizonRoll")<0&&(e.horizonRoll=he.horizonRoll)))}S.src=t.URL.createObjectURL(n)}),l.readAsBinaryString!==i?l.readAsBinaryString(n):l.readAsText(n)}function ee(n){n===i&&(n=e.strings.genericWebGLError),k.errorMsg.innerHTML="<p>"+n+"</p>",G.load.style.display="none",k.load.box.style.display="none",k.errorMsg.style.display="table",m=!0,te.style.display="none",Qe("error",n)}function v(){m&&(k.load.box.style.display="none",k.errorMsg.style.display="none",m=!1,Qe("errorcleared"))}function se(n){var l=re(n);ne.style.left=l.x+"px",ne.style.top=l.y+"px",clearTimeout(se.t1),clearTimeout(se.t2),ne.style.display="block",ne.style.opacity=1,se.t1=setTimeout(function(){ne.style.opacity=0},2e3),se.t2=setTimeout(function(){ne.style.display="none"},2500),n.preventDefault()}function re(n){var l=u.getBoundingClientRect(),g={};return g.x=n.clientX-l.left,g.y=n.clientY-l.top,g}function ve(n){if(n.preventDefault(),u.focus(),!(!C||!e.draggable)){var l=re(n);if(e.hotSpotDebug){var g=Be(n);console.log("Pitch: "+g[0]+", Yaw: "+g[1]+", Center Pitch: "+e.pitch+", Center Yaw: "+e.yaw+", HFOV: "+e.hfov)}pt(),lt(),e.roll=0,I.hfov=0,N=!0,L=Date.now(),h=l.x,o=l.y,P=e.yaw,T=e.pitch,O.classList.add("pnlm-grabbing"),O.classList.remove("pnlm-grab"),Qe("mousedown",n),Le()}}function fe(n){if(e.minHfov===e.hfov)x.setHfov(q,1e3);else{var l=Be(n);x.lookAt(l[0],l[1],e.minHfov,1e3)}}function Be(n){var l=re(n),g=M.getCanvas(),W=g.clientWidth,Z=g.clientHeight,X=l.x/W*2-1,Ce=(1-l.y/Z*2)*Z/W,he=1/Math.tan(e.hfov*Math.PI/360),ye=Math.sin(e.pitch*Math.PI/180),je=Math.cos(e.pitch*Math.PI/180),Se=he*je-Ce*ye,Ze=Math.sqrt(X*X+Se*Se),Ye=Math.atan((Ce*je+he*ye)/Ze)*180/Math.PI,et=Math.atan2(X/Ze,Se/Ze)*180/Math.PI+e.yaw;return et<-180&&(et+=360),et>180&&(et-=360),[Ye,et]}function Ae(n){if(N&&C){L=Date.now();var l=M.getCanvas(),g=l.clientWidth,W=l.clientHeight,Z=re(n),X=(Math.atan(h/g*2-1)-Math.atan(Z.x/g*2-1))*180/Math.PI*e.hfov/90+P;I.yaw=(X-e.yaw)%360*.2,e.yaw=X;var Ce=2*Math.atan(Math.tan(e.hfov/360*Math.PI)*W/g)*180/Math.PI,he=(Math.atan(Z.y/W*2-1)-Math.atan(o/W*2-1))*180/Math.PI*Ce/90+T;I.pitch=(he-e.pitch)*.2,e.pitch=he}}function me(n){N&&(N=!1,Date.now()-L>15&&(I.pitch=I.yaw=0),O.classList.add("pnlm-grab"),O.classList.remove("pnlm-grabbing"),L=Date.now(),Qe("mouseup",n))}function xe(n){if(!(!C||!e.draggable)){pt(),lt(),e.roll=0,I.hfov=0;var l=re(n.targetTouches[0]);if(h=l.x,o=l.y,n.targetTouches.length==2){var g=re(n.targetTouches[1]);h+=(g.x-l.x)*.5,o+=(g.y-l.y)*.5,E=Math.sqrt((l.x-g.x)*(l.x-g.x)+(l.y-g.y)*(l.y-g.y))}N=!0,L=Date.now(),P=e.yaw,T=e.pitch,Qe("touchstart",n),Le()}}function we(n){if(e.draggable&&(n.preventDefault(),C&&(L=Date.now()),N&&C)){var l=re(n.targetTouches[0]),g=l.x,W=l.y;if(n.targetTouches.length==2&&E!=-1){var Z=re(n.targetTouches[1]);g+=(Z.x-l.x)*.5,W+=(Z.y-l.y)*.5;var X=Math.sqrt((l.x-Z.x)*(l.x-Z.x)+(l.y-Z.y)*(l.y-Z.y));qe(e.hfov+(E-X)*.1),E=X}var Ce=e.hfov/360*e.touchPanSpeedCoeffFactor,he=(h-g)*Ce+P;I.yaw=(he-e.yaw)%360*.2,e.yaw=he;var ye=(W-o)*Ce+T;I.pitch=(ye-e.pitch)*.2,e.pitch=ye}}function Ie(){N=!1,Date.now()-L>150&&(I.pitch=I.yaw=0),E=-1,L=Date.now(),Qe("touchend",event)}var _e=[],ze=[];function De(n){n.pointerType=="touch"&&(_e.push(n.pointerId),ze.push({clientX:n.clientX,clientY:n.clientY}),n.targetTouches=ze,xe(n),n.preventDefault())}function Ee(n){if(n.pointerType=="touch"){for(var l=0;l<_e.length;l++)if(n.pointerId==_e[l]){ze[l].clientX=n.clientX,ze[l].clientY=n.clientY,n.targetTouches=ze,we(n),n.preventDefault();return}}}function ke(n){if(n.pointerType=="touch"){for(var l=!1,g=0;g<_e.length;g++)n.pointerId==_e[g]&&(_e[g]=i),_e[g]&&(l=!0);l||(_e=[],ze=[],Ie()),n.preventDefault()}}function Oe(n){!C||e.mouseZoom=="fullscreenonly"&&!y||(n.preventDefault(),pt(),L=Date.now(),n.wheelDeltaY?(qe(e.hfov-n.wheelDeltaY*.05),I.hfov=n.wheelDelta<0?1:-1):n.wheelDelta?(qe(e.hfov-n.wheelDelta*.05),I.hfov=n.wheelDelta<0?1:-1):n.detail&&(qe(e.hfov+n.detail*1.5),I.hfov=n.detail>0?1:-1),Le())}function Pe(n){pt(),L=Date.now(),lt(),e.roll=0;var l=n.which||n.keycode;e.capturedKeyNumbers.indexOf(l)<0||(n.preventDefault(),l==27?y&&Et():Te(l,!0))}function Fe(){for(var n=0;n<10;n++)w[n]=!1}function Re(n){var l=n.which||n.keycode;e.capturedKeyNumbers.indexOf(l)<0||(n.preventDefault(),Te(l,!1))}function Te(n,l){var g=!1;switch(n){case 109:case 189:case 17:case 173:w[0]!=l&&(g=!0),w[0]=l;break;case 107:case 187:case 16:case 61:w[1]!=l&&(g=!0),w[1]=l;break;case 38:w[2]!=l&&(g=!0),w[2]=l;break;case 87:w[6]!=l&&(g=!0),w[6]=l;break;case 40:w[3]!=l&&(g=!0),w[3]=l;break;case 83:w[7]!=l&&(g=!0),w[7]=l;break;case 37:w[4]!=l&&(g=!0),w[4]=l;break;case 65:w[8]!=l&&(g=!0),w[8]=l;break;case 39:w[5]!=l&&(g=!0),w[5]=l;break;case 68:w[9]!=l&&(g=!0),w[9]=l}g&&l&&(typeof performance<"u"&&performance.now()?$=performance.now():$=Date.now(),Le())}function F(){if(C){var n=!1,l=e.pitch,g=e.yaw,W=e.hfov,Z;typeof performance<"u"&&performance.now()?Z=performance.now():Z=Date.now(),$===i&&($=Z);var X=(Z-$)*e.hfov/1700;if(X=Math.min(X,1),w[0]&&e.keyboardZoom===!0&&(qe(e.hfov+(I.hfov*.8+.5)*X),n=!0),w[1]&&e.keyboardZoom===!0&&(qe(e.hfov+(I.hfov*.8-.2)*X),n=!0),(w[2]||w[6])&&(e.pitch+=(I.pitch*.8+.2)*X,n=!0),(w[3]||w[7])&&(e.pitch+=(I.pitch*.8-.2)*X,n=!0),(w[4]||w[8])&&(e.yaw+=(I.yaw*.8-.2)*X,n=!0),(w[5]||w[9])&&(e.yaw+=(I.yaw*.8+.2)*X,n=!0),n&&(L=Date.now()),e.autoRotate){if(Z-$>.001){var Ce=(Z-$)/1e3,he=(I.yaw/Ce*X-e.autoRotate*.2)*Ce;he=(-e.autoRotate>0?1:-1)*Math.min(Math.abs(e.autoRotate*Ce),Math.abs(he)),e.yaw+=he}e.autoRotateStopDelay&&(e.autoRotateStopDelay-=Z-$,e.autoRotateStopDelay<=0&&(e.autoRotateStopDelay=!1,j=e.autoRotate,e.autoRotate=0))}if(U.pitch&&(ie("pitch"),l=e.pitch),U.yaw&&(ie("yaw"),g=e.yaw),U.hfov&&(ie("hfov"),W=e.hfov),X>0&&!e.autoRotate){var ye=.85;!w[4]&&!w[5]&&!w[8]&&!w[9]&&!U.yaw&&(e.yaw+=I.yaw*X*ye),!w[2]&&!w[3]&&!w[6]&&!w[7]&&!U.pitch&&(e.pitch+=I.pitch*X*ye),!w[0]&&!w[1]&&!U.hfov&&qe(e.hfov+I.hfov*X*ye)}if($=Z,X>0){I.yaw=I.yaw*.8+(e.yaw-g)/X*.2,I.pitch=I.pitch*.8+(e.pitch-l)/X*.2,I.hfov=I.hfov*.8+(e.hfov-W)/X*.2;var je=e.autoRotate?Math.abs(e.autoRotate):5;I.yaw=Math.min(je,Math.max(I.yaw,-je)),I.pitch=Math.min(je,Math.max(I.pitch,-je)),I.hfov=Math.min(je,Math.max(I.hfov,-je))}w[0]&&w[1]&&(I.hfov=0),(w[2]||w[6])&&(w[3]||w[7])&&(I.pitch=0),(w[4]||w[8])&&(w[5]||w[9])&&(I.yaw=0)}}function ie(n){var l=U[n],g=Math.min(1,Math.max((Date.now()-l.startTime)/1e3/(l.duration/1e3),0)),W=l.startPosition+e.animationTimingFunction(g)*(l.endPosition-l.startPosition);if(l.endPosition>l.startPosition&&W>=l.endPosition||l.endPosition<l.startPosition&&W<=l.endPosition||l.endPosition===l.startPosition){W=l.endPosition,I[n]=0;var Z=U[n].callback,X=U[n].callbackArgs;delete U[n],typeof Z=="function"&&Z(X)}e[n]=W}function z(n){return n<.5?2*n*n:-1+(4-2*n)*n}function pe(){Je()}function Le(){V||(V=!0,be())}function be(){if(Ne(),H&&clearTimeout(H),N||Y===!0)requestAnimationFrame(be);else if(w[0]||w[1]||w[2]||w[3]||w[4]||w[5]||w[6]||w[7]||w[8]||w[9]||e.autoRotate||U.pitch||U.yaw||U.hfov||Math.abs(I.yaw)>.01||Math.abs(I.pitch)>.01||Math.abs(I.hfov)>.01)F(),e.autoRotateInactivityDelay>=0&&j&&Date.now()-L>e.autoRotateInactivityDelay&&!e.autoRotate&&(e.autoRotate=j,x.lookAt(ce,i,q,3e3)),requestAnimationFrame(be);else if(M&&(M.isLoading()||e.dynamic===!0&&R))requestAnimationFrame(be);else{V=!1,$=i;var n=e.autoRotateInactivityDelay-(Date.now()-L);n>0?H=setTimeout(function(){e.autoRotate=j,x.lookAt(ce,i,q,3e3),Le()},n):e.autoRotateInactivityDelay>=0&&j&&(e.autoRotate=j,x.lookAt(ce,i,q,3e3),Le())}}function Ne(){var n;if(C){e.yaw>180?e.yaw-=360:e.yaw<-180&&(e.yaw+=360),n=e.yaw;var l=0;if(e.avoidShowingBackground){var ye=M.getCanvas(),g=e.hfov/2,W=Math.atan2(Math.tan(g/180*Math.PI),ye.width/ye.height)*180/Math.PI,Z=e.vaov>e.haov;Z?W*(1-Math.min(Math.cos((e.pitch-g)/180*Math.PI),Math.cos((e.pitch+g)/180*Math.PI))):l=g*(1-Math.min(Math.cos((e.pitch-W)/180*Math.PI),Math.cos((e.pitch+W)/180*Math.PI)))}var X=e.maxYaw-e.minYaw,Ce=-180,he=180;X<360&&(Ce=e.minYaw+e.hfov/2+l,he=e.maxYaw-e.hfov/2-l,X<e.hfov&&(Ce=he=(Ce+he)/2),e.yaw=Math.max(Ce,Math.min(he,e.yaw))),e.autoRotate!==!1&&n!=e.yaw&&$!==i&&(e.autoRotate*=-1);var ye=M.getCanvas(),je=2*Math.atan(Math.tan(e.hfov/180*Math.PI*.5)/(ye.width/ye.height))/Math.PI*180,Se=e.minPitch+je/2,Ze=e.maxPitch-je/2,Ye=e.maxPitch-e.minPitch;Ye<je&&(Se=Ze=(Se+Ze)/2),isNaN(Se)&&(Se=-90),isNaN(Ze)&&(Ze=90),e.pitch=Math.max(Se,Math.min(Ze,e.pitch)),M.render(e.pitch*Math.PI/180,e.yaw*Math.PI/180,e.hfov*Math.PI/180,{roll:e.roll*Math.PI/180}),Zt(),e.compass&&(ge.style.transform="rotate("+(-e.yaw-e.northOffset)+"deg)",ge.style.webkitTransform="rotate("+(-e.yaw-e.northOffset)+"deg)"),e.onRender&&e.onRender()}}function de(n,l,g,W){this.w=n,this.x=l,this.y=g,this.z=W}de.prototype.multiply=function(n){return new de(this.w*n.w-this.x*n.x-this.y*n.y-this.z*n.z,this.x*n.w+this.w*n.x+this.y*n.z-this.z*n.y,this.y*n.w+this.w*n.y+this.z*n.x-this.x*n.z,this.z*n.w+this.w*n.z+this.x*n.y-this.y*n.x)},de.prototype.toEulerAngles=function(){var n=Math.atan2(2*(this.w*this.x+this.y*this.z),1-2*(this.x*this.x+this.y*this.y)),l=Math.asin(2*(this.w*this.y-this.z*this.x)),g=Math.atan2(2*(this.w*this.z+this.x*this.y),1-2*(this.y*this.y+this.z*this.z));return[n,l,g]};function _r(n,l,g){var W=[l?l*Math.PI/180/2:0,g?g*Math.PI/180/2:0,n?n*Math.PI/180/2:0],Z=[Math.cos(W[0]),Math.cos(W[1]),Math.cos(W[2])],X=[Math.sin(W[0]),Math.sin(W[1]),Math.sin(W[2])];return new de(Z[0]*Z[1]*Z[2]-X[0]*X[1]*X[2],X[0]*Z[1]*Z[2]-Z[0]*X[1]*X[2],Z[0]*X[1]*Z[2]+X[0]*Z[1]*X[2],Z[0]*Z[1]*X[2]+X[0]*X[1]*Z[2])}function Tr(n,l,g){var W=_r(n,l,g);W=W.multiply(new de(Math.sqrt(.5),-Math.sqrt(.5),0,0));var Z=t.orientation?-t.orientation*Math.PI/180/2:0;return W.multiply(new de(Math.cos(Z),0,-Math.sin(Z),0))}function Vt(n){var l=Tr(n.alpha,n.beta,n.gamma).toEulerAngles();typeof Y=="number"&&Y<10?Y+=1:Y===10?(A=l[2]/Math.PI*180+e.yaw,Y=!0,requestAnimationFrame(be)):(e.pitch=l[0]/Math.PI*180,e.roll=-l[1]/Math.PI*180,e.yaw=-l[2]/Math.PI*180+A)}function Sr(){try{var n={};e.horizonPitch!==i&&(n.horizonPitch=e.horizonPitch*Math.PI/180),e.horizonRoll!==i&&(n.horizonRoll=e.horizonRoll*Math.PI/180),e.backgroundColor!==i&&(n.backgroundColor=e.backgroundColor),M.init(S,e.type,e.dynamic,e.haov*Math.PI/180,e.vaov*Math.PI/180,e.vOffset*Math.PI/180,Rr,n),e.dynamic!==!0&&(S=i)}catch(l){if(l.type=="webgl error"||l.type=="no webgl")ee();else if(l.type=="webgl size error")ee(e.strings.textureSizeError.replace("%s",l.width).replace("%s",l.maxWidth));else throw ee(e.strings.unknownError),l}}function Rr(){if(e.sceneFadeDuration&&M.fadeImg!==i){M.fadeImg.style.opacity=0;var n=M.fadeImg;delete M.fadeImg,setTimeout(function(){te.removeChild(n),Qe("scenechangefadedone")},e.sceneFadeDuration)}e.compass?ge.style.display="inline":ge.style.display="none",Pr(),k.load.box.style.display="none",_!==i&&(te.removeChild(_),_=i),C=!0,Qe("load"),Le()}function Xt(n){n.pitch=Number(n.pitch)||0,n.yaw=Number(n.yaw)||0;var l=s.createElement("div");l.className="pnlm-hotspot-base",n.cssClass?l.className+=" "+n.cssClass:l.className+=" pnlm-hotspot pnlm-sprite pnlm-"+nt(n.type);var g=s.createElement("span");n.text&&(g.innerHTML=nt(n.text));var W;if(n.video){var Z=s.createElement("video"),X=n.video;e.basePath&&!p(X)&&(X=e.basePath+X),Z.src=ot(X),Z.controls=!0,Z.style.width=n.width+"px",te.appendChild(l),g.appendChild(Z)}else if(n.image){var X=n.image;e.basePath&&!p(X)&&(X=e.basePath+X),W=s.createElement("a"),W.href=ot(n.URL?n.URL:X),W.target="_blank",g.appendChild(W);var Ce=s.createElement("img");Ce.src=ot(X),Ce.style.width=n.width+"px",Ce.style.paddingTop="5px",te.appendChild(l),W.appendChild(Ce),g.style.maxWidth="initial"}else n.URL?(W=s.createElement("a"),W.href=ot(n.URL),W.target="_blank",te.appendChild(W),l.className+=" pnlm-pointer",g.className+=" pnlm-pointer",W.appendChild(l)):(n.sceneId&&(l.onclick=l.ontouchend=function(){return l.clicked||(l.clicked=!0,Lt(n.sceneId,n.targetPitch,n.targetYaw,n.targetHfov)),!1},l.className+=" pnlm-pointer",g.className+=" pnlm-pointer"),te.appendChild(l));n.createTooltipFunc?n.createTooltipFunc(l,n.createTooltipArgs):(n.text||n.video||n.image)&&(l.classList.add("pnlm-tooltip"),l.appendChild(g),g.style.width=g.scrollWidth-20+"px",g.style.marginLeft=-(g.scrollWidth-l.offsetWidth)/2+"px",g.style.marginTop=-g.scrollHeight-12+"px"),n.clickHandlerFunc&&(l.addEventListener("click",function(he){n.clickHandlerFunc(he,n.clickHandlerArgs)},"false"),l.className+=" pnlm-pointer",g.className+=" pnlm-pointer"),n.div=l}function Pr(){B||(e.hotSpots?(e.hotSpots=e.hotSpots.sort(function(n,l){return n.pitch<l.pitch}),e.hotSpots.forEach(Xt)):e.hotSpots=[],B=!0,Zt())}function Nr(){var n=e.hotSpots;if(B=!1,delete e.hotSpots,n)for(var l=0;l<n.length;l++){for(var g=n[l].div;g.parentNode!=te;)g=g.parentNode;te.removeChild(g),delete n[l].div}}function Yt(n){var l=Math.sin(n.pitch*Math.PI/180),g=Math.cos(n.pitch*Math.PI/180),W=Math.sin(e.pitch*Math.PI/180),Z=Math.cos(e.pitch*Math.PI/180),X=Math.cos((-n.yaw+e.yaw)*Math.PI/180),Ce=l*W+g*X*Z;if(n.yaw<=90&&n.yaw>-90&&Ce<=0||(n.yaw>90||n.yaw<=-90)&&Ce<=0)n.div.style.visibility="hidden";else{var he=Math.sin((-n.yaw+e.yaw)*Math.PI/180),ye=Math.tan(e.hfov*Math.PI/360);n.div.style.visibility="visible";var je=M.getCanvas(),Se=je.clientWidth,Ze=je.clientHeight,Ye=[-Se/ye*he*g/Ce/2,-Se/ye*(l*Z-g*X*W)/Ce/2],et=Math.sin(e.roll*Math.PI/180),Kt=Math.cos(e.roll*Math.PI/180);Ye=[Ye[0]*Kt-Ye[1]*et,Ye[0]*et+Ye[1]*Kt],Ye[0]+=(Se-n.div.offsetWidth)/2,Ye[1]+=(Ze-n.div.offsetHeight)/2;var Mt="translate("+Ye[0]+"px, "+Ye[1]+"px) translateZ(9999px) rotate("+e.roll+"deg)";n.div.style.webkitTransform=Mt,n.div.style.MozTransform=Mt,n.div.style.transform=Mt}}function Zt(){e.hotSpots.forEach(Yt)}function ht(n){e={};var l,g,W=["haov","vaov","vOffset","northOffset","horizonPitch","horizonRoll"];J=[];for(l in ae)ae.hasOwnProperty(l)&&(e[l]=ae[l]);for(l in d.default)if(d.default.hasOwnProperty(l))if(l=="strings")for(g in d.default.strings)d.default.strings.hasOwnProperty(g)&&(e.strings[g]=nt(d.default.strings[g]));else e[l]=d.default[l],W.indexOf(l)>=0&&J.push(l);if(n!==null&&n!==""&&d.scenes&&d.scenes[n]){var Z=d.scenes[n];for(l in Z)if(Z.hasOwnProperty(l))if(l=="strings")for(g in Z.strings)Z.strings.hasOwnProperty(g)&&(e.strings[g]=nt(Z.strings[g]));else e[l]=Z[l],W.indexOf(l)>=0&&J.push(l);e.scene=n}for(l in d)if(d.hasOwnProperty(l))if(l=="strings")for(g in d.strings)d.strings.hasOwnProperty(g)&&(e.strings[g]=nt(d.strings[g]));else e[l]=d[l],W.indexOf(l)>=0&&J.push(l)}function yt(n){if(n=n||!1,n&&"preview"in e){var l=e.preview;e.basePath&&!p(l)&&(l=e.basePath+l),_=s.createElement("div"),_.className="pnlm-preview-img",_.style.backgroundImage="url('"+zr(l)+"')",te.appendChild(_)}var g=e.title,W=e.author;n&&("previewTitle"in e&&(e.title=e.previewTitle),"previewAuthor"in e&&(e.author=e.previewAuthor)),e.hasOwnProperty("title")||(k.title.innerHTML=""),e.hasOwnProperty("author")||(k.author.innerHTML=""),!e.hasOwnProperty("title")&&!e.hasOwnProperty("author")&&(k.container.style.display="none"),G.load.innerHTML="<p>"+e.strings.loadButtonLabel+"</p>",k.load.boxp.innerHTML=e.strings.loadingLabel;for(var Z in e)if(e.hasOwnProperty(Z))switch(Z){case"title":k.title.innerHTML=nt(e[Z]),k.container.style.display="inline";break;case"author":k.author.innerHTML=e.strings.bylineLabel.replace("%s",nt(e[Z])),k.container.style.display="inline";break;case"fallback":var X=s.createElement("a");X.href=ot(e[Z]),X.target="_blank",X.textContent="Click here to view this panorama in an alternative viewer.";var Ce=s.createElement("p");Ce.textContent="Your browser does not support WebGL.",Ce.appendChild(s.createElement("br")),Ce.appendChild(X),k.errorMsg.innerHTML="",k.errorMsg.appendChild(Ce);break;case"hfov":qe(Number(e[Z]));break;case"autoLoad":e[Z]===!0&&M===i&&(k.load.box.style.display="inline",G.load.style.display="none",c());break;case"showZoomCtrl":e[Z]&&e.showControls!=!1?G.zoom.style.display="block":G.zoom.style.display="none";break;case"showFullscreenCtrl":e[Z]&&e.showControls!=!1&&("fullscreen"in s||"mozFullScreen"in s||"webkitIsFullScreen"in s||"msFullscreenElement"in s)?G.fullscreen.style.display="block":G.fullscreen.style.display="none";break;case"hotSpotDebug":e[Z]?le.style.display="block":le.style.display="none";break;case"showControls":e[Z]||(G.orientation.style.display="none",G.zoom.style.display="none",G.fullscreen.style.display="none");break;case"orientationOnByDefault":e[Z]&&(Me===i?Ue=!0:Me===!0&&mt());break}n&&(g?e.title=g:delete e.title,W?e.author=W:delete e.author)}function Et(){if(C&&!m)if(y)s.exitFullscreen?s.exitFullscreen():s.mozCancelFullScreen?s.mozCancelFullScreen():s.webkitCancelFullScreen?s.webkitCancelFullScreen():s.msExitFullscreen&&s.msExitFullscreen();else try{u.requestFullscreen?u.requestFullscreen():u.mozRequestFullScreen?u.mozRequestFullScreen():u.msRequestFullscreen?u.msRequestFullscreen():u.webkitRequestFullScreen()}catch{}}function Je(){var n=t.innerWidth==screen.width&&t.innerHeight==screen.height;s.fullscreen||s.mozFullScreen||s.webkitIsFullScreen||s.msFullscreenElement||n?(G.fullscreen.classList.add("pnlm-fullscreen-toggle-button-active"),y=!0):(G.fullscreen.classList.remove("pnlm-fullscreen-toggle-button-active"),y=!1),M.resize(),qe(e.hfov),Le()}function jr(){C&&(qe(e.hfov-5),Le())}function Ar(){C&&(qe(e.hfov+5),Le())}function Gt(n){var l=e.minHfov;if(e.type=="multires"&&M&&(l=Math.min(l,M.getCanvas().width/(e.multiRes.cubeResolution/90*.9))),l>e.maxHfov)return console.log("HFOV bounds do not make sense (minHfov > maxHfov)."),e.hfov;var g=e.hfov;if(n<l?g=l:n>e.maxHfov?g=e.maxHfov:g=n,e.avoidShowingBackground&&M){var W=M.getCanvas();g=Math.min(g,Math.atan(Math.tan((e.maxPitch-e.minPitch)/360*Math.PI)/W.height*W.width)*360/Math.PI)}return g}function qe(n){e.hfov=Gt(n)}function pt(){U={},j=e.autoRotate?e.autoRotate:j,e.autoRotate=!1}function qt(){v(),C=!1,G.load.style.display="none",k.load.box.style.display="inline",c()}function Lt(n,l,g,W,Z){C=!1,U={};var X,Ce,he,ye;if(e.sceneFadeDuration&&!Z){var je=M.render(e.pitch*Math.PI/180,e.yaw*Math.PI/180,e.hfov*Math.PI/180,{returnImage:!0});if(je!==i){X=new Image,X.className="pnlm-fade-img",X.style.transition="opacity "+e.sceneFadeDuration/1e3+"s",X.style.width="100%",X.style.height="100%",X.onload=function(){Lt(n,l,g,W,!0)},X.src=je,te.appendChild(X),M.fadeImg=X;return}}l==="same"?Ce=e.pitch:Ce=l,g==="same"?he=e.yaw:g==="sameAzimuth"?he=e.yaw+(e.northOffset||0)-(d.scenes[n].northOffset||0):he=g,W==="same"?ye=e.hfov:ye=W,Nr(),ht(n),I.yaw=I.pitch=I.hfov=0,yt(),Ce!==i&&(e.pitch=Ce),he!==i&&(e.yaw=he),ye!==i&&(e.hfov=ye),Qe("scenechange",n),qt()}function lt(){t.removeEventListener("deviceorientation",Vt),G.orientation.classList.remove("pnlm-orientation-button-active"),Y=!1}function mt(){Y=1,t.addEventListener("deviceorientation",Vt),G.orientation.classList.add("pnlm-orientation-button-active")}function nt(n){return d.escapeHTML?String(n).split(/&/g).join("&").split('"').join(""").split("'").join("'").split("<").join("<").split(">").join(">").split("/").join("/").split(`
|
|
5
|
-
`).join("<br>"):String(n).split(`
|
|
6
|
-
`).join("<br>")}function ot(n){return n.trim().toLowerCase().indexOf("javascript:")===0?"about:blank":n}function zr(n){return ot(n).replace(/"/g,"%22").replace(/'/g,"%27")}this.isLoaded=function(){return!!C},this.getPitch=function(){return e.pitch},this.setPitch=function(n,l,g,W){return l=l==i?1e3:Number(l),l?U.pitch={startTime:Date.now(),startPosition:e.pitch,endPosition:n,duration:l,callback:g,callbackArgs:W}:e.pitch=n,Le(),this},this.getPitchBounds=function(){return[e.minPitch,e.maxPitch]},this.setPitchBounds=function(n){return e.minPitch=Math.max(-90,Math.min(n[0],90)),e.maxPitch=Math.max(-90,Math.min(n[1],90)),this},this.getYaw=function(){return e.yaw},this.setYaw=function(n,l,g,W){return l=l==i?1e3:Number(l),n=(n+180)%360-180,l?(e.yaw-n>180?n+=360:n-e.yaw>180&&(n-=360),U.yaw={startTime:Date.now(),startPosition:e.yaw,endPosition:n,duration:l,callback:g,callbackArgs:W}):e.yaw=n,Le(),this},this.getYawBounds=function(){return[e.minYaw,e.maxYaw]},this.setYawBounds=function(n){return e.minYaw=Math.max(-180,Math.min(n[0],180)),e.maxYaw=Math.max(-180,Math.min(n[1],180)),this},this.getHfov=function(){return e.hfov},this.setHfov=function(n,l,g,W){return l=l==i?1e3:Number(l),l?U.hfov={startTime:Date.now(),startPosition:e.hfov,endPosition:Gt(n),duration:l,callback:g,callbackArgs:W}:qe(n),Le(),this},this.getHfovBounds=function(){return[e.minHfov,e.maxHfov]},this.setHfovBounds=function(n){return e.minHfov=Math.max(0,n[0]),e.maxHfov=Math.max(0,n[1]),this},this.lookAt=function(n,l,g,W,Z,X){return W=W==i?1e3:Number(W),n!==i&&(this.setPitch(n,W,Z,X),Z=i),l!==i&&(this.setYaw(l,W,Z,X),Z=i),g!==i&&this.setHfov(g,W,Z,X),this},this.getNorthOffset=function(){return e.northOffset},this.setNorthOffset=function(n){return e.northOffset=Math.min(360,Math.max(0,n)),Le(),this},this.getHorizonRoll=function(){return e.horizonRoll},this.setHorizonRoll=function(n){return e.horizonRoll=Math.min(90,Math.max(-90,n)),M.setPose(e.horizonPitch*Math.PI/180,e.horizonRoll*Math.PI/180),Le(),this},this.getHorizonPitch=function(){return e.horizonPitch},this.setHorizonPitch=function(n){return e.horizonPitch=Math.min(90,Math.max(-90,n)),M.setPose(e.horizonPitch*Math.PI/180,e.horizonRoll*Math.PI/180),Le(),this},this.startAutoRotate=function(n){return n=n||j||1,e.autoRotate=n,x.lookAt(ce,i,q,3e3),Le(),this},this.stopAutoRotate=function(){return j=e.autoRotate?e.autoRotate:j,e.autoRotate=!1,e.autoRotateInactivityDelay=-1,this},this.getRenderer=function(){return M},this.setUpdate=function(n){return R=n===!0,M===i?Q():Le(),this},this.mouseEventToCoords=function(n){return Be(n)},this.loadScene=function(n,l,g,W){return C!==!1&&Lt(n,l,g,W),this},this.getScene=function(){return e.scene},this.addScene=function(n,l){return d.scenes[n]=l,this},this.removeScene=function(n){return e.scene===n||!d.scenes.hasOwnProperty(n)?!1:(delete d.scenes[n],!0)},this.toggleFullscreen=function(){return Et(),this},this.getConfig=function(){return e},this.getContainer=function(){return u},this.addHotSpot=function(n,l){if(l===i&&e.scene===i)e.hotSpots.push(n);else{var g=l!==i?l:e.scene;if(d.scenes.hasOwnProperty(g))d.scenes[g].hasOwnProperty("hotSpots")||(d.scenes[g].hotSpots=[],g==e.scene&&(e.hotSpots=d.scenes[g].hotSpots)),d.scenes[g].hotSpots.push(n);else throw"Invalid scene ID!"}return(l===i||e.scene==l)&&(Xt(n),C&&Yt(n)),this},this.removeHotSpot=function(n,l){if(l===i||e.scene==l){if(!e.hotSpots)return!1;for(var g=0;g<e.hotSpots.length;g++)if(e.hotSpots[g].hasOwnProperty("id")&&e.hotSpots[g].id===n){for(var W=e.hotSpots[g].div;W.parentNode!=te;)W=W.parentNode;return te.removeChild(W),delete e.hotSpots[g].div,e.hotSpots.splice(g,1),!0}}else if(d.scenes.hasOwnProperty(l)){if(!d.scenes[l].hasOwnProperty("hotSpots"))return!1;for(var g=0;g<d.scenes[l].hotSpots.length;g++)if(d.scenes[l].hotSpots[g].hasOwnProperty("id")&&d.scenes[l].hotSpots[g].id===n)return d.scenes[l].hotSpots.splice(g,1),!0}else return!1},this.resize=function(){M&&pe()},this.isLoaded=function(){return C},this.isOrientationSupported=function(){return Me||!1},this.stopOrientation=function(){lt()},this.startOrientation=function(){Me&&mt()},this.isOrientationActive=function(){return!!Y},this.on=function(n,l){return D[n]=D[n]||[],D[n].push(l),this},this.off=function(n,l){if(!n)return D={},this;if(l){var g=D[n].indexOf(l);g>=0&&D[n].splice(g,1),D[n].length==0&&delete D[n]}else delete D[n];return this};function Qe(n){if(n in D)for(var l=D[n].length;l>0;l--)D[n][D[n].length-l].apply(null,[].slice.call(arguments,1))}this.destroy=function(){M&&M.destroy(),b&&(K.removeEventListener("mousedown",ve,!1),K.removeEventListener("dblclick",fe,!1),s.removeEventListener("mousemove",Ae,!1),s.removeEventListener("mouseup",me,!1),u.removeEventListener("mousewheel",Oe,!1),u.removeEventListener("DOMMouseScroll",Oe,!1),u.removeEventListener("mozfullscreenchange",Je,!1),u.removeEventListener("webkitfullscreenchange",Je,!1),u.removeEventListener("msfullscreenchange",Je,!1),u.removeEventListener("fullscreenchange",Je,!1),t.removeEventListener("resize",pe,!1),t.removeEventListener("orientationchange",pe,!1),u.removeEventListener("keydown",Pe,!1),u.removeEventListener("keyup",Re,!1),u.removeEventListener("blur",Fe,!1),s.removeEventListener("mouseleave",me,!1),K.removeEventListener("touchstart",xe,!1),K.removeEventListener("touchmove",we,!1),K.removeEventListener("touchend",Ie,!1),K.removeEventListener("pointerdown",De,!1),K.removeEventListener("pointermove",Ee,!1),K.removeEventListener("pointerup",ke,!1),K.removeEventListener("pointerleave",ke,!1)),u.innerHTML="",u.classList.remove("pnlm-container"),O.classList.remove("pnlm-grab"),O.classList.remove("pnlm-grabbing")}}return{viewer:function(d,x){return new f(d,x)}}})(window,document);window.requestAnimationFrame||(window.requestAnimationFrame=(function(){return window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t,s){window.setTimeout(t,1e3/60)}})());function Yn(t,s,i){const f=a.useRef(null),u=a.useRef(i);return u.current=i,a.useEffect(()=>{const d=t.current;if(!d)return;const x=window.pannellum;if(!x){console.error("[InteriorThreeSixty] pannellum global not available"),u.current.onError?.();return}const e=x.viewer(d,{type:"equirectangular",panorama:s.image,preview:s.preview,pitch:Wn,yaw:Vn,hfov:Bn,maxHfov:it,minHfov:ut,compass:!1,showControls:!1,keyboardZoom:!1,autoLoad:s.autoLoad});return f.current=e,e.on("load",()=>u.current.onLoad?.()),e.on("error",()=>u.current.onError?.()),e.on("mousedown",(...M)=>u.current.onMousedown?.(M[0])),e.on("mouseup",(...M)=>u.current.onMouseup?.(M[0])),e.on("touchstart",(...M)=>u.current.onTouchstart?.(M[0])),e.on("touchend",(...M)=>u.current.onTouchend?.(M[0])),()=>{f.current=null,e.destroy()}},[s.image,s.preview,s.autoLoad]),f}function Zn(t,s=50,i=200){let f=null,u=0;return(...d)=>{const x=Date.now();f&&(clearTimeout(f),f=null),x-u>=s&&(t(...d),u=x),f=setTimeout(()=>{t(...d)},i)}}const Gn=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_INTERIOR_360_PLAY",children:r.jsx("svg",{className:t,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:r.jsx("polygon",{points:"6 3 20 12 6 21 6 3"})})}),qn=({itemIndex:t,isPannellumLoaded:s,isLoading:i,progress:f,autoloadInterior360:u,loadScene:d})=>{const{emitAnalyticsEvent:x}=We(),{displayedCategoryId:e,displayedCategoryName:M}=Xe(),_=a.useCallback(L=>{x({type:"interaction",current:{category_id:e,category_name:M,item_type:"interior-360",item_position:t},action:{name:"Interior 360 Play",field:"interior_360_play",value:L}})},[x,e,M,t]),N=a.useCallback(()=>{d(),_("click")},[d,_]);return a.useEffect(()=>{u&&(d(),_("auto"))},[u,d,_]),s?null:r.jsx("div",{className:"pointer-events-auto absolute inset-0 flex flex-col items-center justify-center gap-y-4",children:r.jsxs("div",{className:"pointer-events-auto absolute inset-0 flex flex-col items-center justify-center gap-y-4 bg-foreground/35",children:[r.jsx(wr,{className:"size-20"}),r.jsx(Ge,{color:"neutral",shape:"icon",onClick:N,children:r.jsx(Gn,{className:"size-full"})}),r.jsx("div",{className:ue("relative h-1 w-3/5 overflow-hidden rounded-full bg-background",!i&&"invisible"),children:r.jsx("div",{className:"h-full bg-primary transition-[width]",style:{width:`${f}%`}})})]})})},Kn=t=>{const{itemIndex:s,src:i,poster:f,onLoaded:u,onError:d,onlyPreload:x}=t,{autoLoadInterior360:e}=We(),{isShowingDetails:M,zoom:_,setZoom:N}=Xe(),[L,h]=Xn(i),o=a.useRef(null),[E,P]=a.useState(!1),[T,w]=a.useState(e);a.useEffect(()=>{e&&w(!0)},[e]);const y=a.useCallback(()=>{u?.(),P(!0)},[u]),C=a.useCallback(S=>{S instanceof MouseEvent&&S.button!==0||(S.preventDefault(),S.stopPropagation(),S.stopImmediatePropagation())},[]),m=a.useCallback(()=>{w(!0)},[]),b=Yn(o,{image:i,preview:f,autoLoad:T},{onLoad:y,onError:d,onMousedown:C,onMouseup:C,onTouchstart:C,onTouchend:C});return a.useEffect(()=>{if(x)return;const S=b.current;if(!S||!E)return;const $=1,I=Ke((_-$)/(tt-$),0,1),V=Ke(it-I*(it-ut),ut,it);S.setHfov(V)},[_,E,b,x]),a.useEffect(()=>{if(x)return;const S=o.current;if(!S||!E)return;const I=Zn(Y=>{Y.preventDefault();const A=b.current;if(!A)return;const H=$t(A.getHfov(),ut,it,tt,st),q=(Y.deltaY<0?"zoom-in":"zoom-out")==="zoom-in"?Math.min(H+st,tt):Math.max(H-st,1);N(q)},100,150),V=Y=>{Y.preventDefault();const A=b.current;if(!A)return;const H=$t(A.getHfov(),ut,it,tt,st,!0);N(H)};return S.addEventListener("wheel",I),S.addEventListener("dblclick",V),()=>{S.removeEventListener("wheel",I),S.removeEventListener("dblclick",V)}},[E,N,b,x]),r.jsx("div",{className:ue("relative aspect-[4/3] w-full overflow-hidden bg-transparent"),children:r.jsxs("div",{className:ue("size-full",M?"scale-105":"scale-100"),children:[r.jsx("div",{ref:o,className:"size-full"}),r.jsx(qn,{isPannellumLoaded:E,isLoading:h,progress:L,autoloadInterior360:e,loadScene:m,itemIndex:s})]})})},$n=t=>{const{itemIndex:s}=t,{setItemInteraction:i}=Xe(),[f,u]=a.useState(),d=a.useCallback(()=>{u("spin")},[]),x=a.useCallback(()=>{u("error")},[]);return a.useEffect(()=>{f===null||f==="error"||i(s,f==="spin"?"running":"ready")},[s,i,f]),f==="error"?r.jsx(bt,{className:"text-background",text:"Interior Spin could not be loaded"}):r.jsx(Kn,{...t,onLoaded:d,onError:x})},kr="data:image/svg+xml,%3csvg%20width='90'%20height='57'%20viewBox='0%200%20138%2048'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20width='137.164'%20height='48'%20rx='24'%20fill='white'%20fill-opacity='0.65'/%3e%3cpath%20d='M31%2030L25%2024L31%2018'%20stroke='%231B5DF5'%20stroke-width='1.25'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M51.1368%2034C47.4684%2034%2045.2139%2032.4218%2044.3068%2030.5385C44.0934%2030.1008%2044%2029.6764%2044%2029.2785C44%2028.244%2044.667%2027.5942%2045.7742%2027.5942C46.5746%2027.5942%2047.0815%2027.9125%2047.4817%2028.6419C48.162%2029.9814%2049.2026%2030.7772%2051.2035%2030.7772C53.1779%2030.7772%2054.5385%2029.6366%2054.5385%2028.0451C54.5519%2026.1883%2053.1779%2025.1538%2050.8434%2025.1538H50.003C49.0291%2025.1538%2048.4689%2024.5836%2048.4689%2023.7215C48.4689%2022.8859%2049.0291%2022.3024%2050.003%2022.3024H50.79C52.8043%2022.3024%2054.1116%2021.2149%2054.1116%2019.6499C54.1116%2018.1114%2053.0711%2017.0902%2051.1235%2017.0902C49.496%2017.0902%2048.5089%2017.7666%2047.8819%2019.1194C47.4417%2020.0212%2046.9748%2020.3528%2046.0677%2020.3528C44.9471%2020.3528%2044.3735%2019.7029%2044.3735%2018.7347C44.3735%2018.2838%2044.4669%2017.8992%2044.667%2017.4483C45.5207%2015.5782%2047.7085%2014.0133%2051.1102%2014.0133C55.1788%2014.0133%2057.9269%2016.0159%2057.9269%2019.0796C57.9269%2021.5066%2056.1793%2023.0981%2053.9115%2023.5623V23.6419C56.7796%2023.9072%2058.6339%2025.5782%2058.6339%2028.2175C58.6339%2031.6923%2055.6057%2034%2051.1368%2034Z'%20fill='%231B5DF5'/%3e%3cpath%20d='M68.7388%2034C65.684%2034%2063.2561%2032.5809%2061.8421%2029.7692C61.1084%2028.2838%2060.7082%2026.3873%2060.7082%2024.1592C60.7082%2017.8196%2063.7497%2014%2068.7522%2014C71.9404%2014%2074.2349%2015.3395%2075.142%2017.13C75.3287%2017.5013%2075.4221%2017.8462%2075.4221%2018.2042C75.4221%2019.0928%2074.7951%2019.7825%2073.7413%2019.7825C72.9409%2019.7825%2072.4606%2019.4377%2071.8737%2018.7613C70.9933%2017.6605%2070.0595%2017.1698%2068.7388%2017.1698C65.9908%2017.1698%2064.5901%2019.7692%2064.5634%2023.8541V24.0531H64.6435C65.3905%2022.2759%2067.2848%2020.9761%2069.886%2020.9761C73.6079%2020.9761%2076.1558%2023.6154%2076.1558%2027.2095C76.1558%2031.1751%2073.0343%2034%2068.7388%2034ZM68.6855%2030.817C70.6598%2030.817%2072.2205%2029.305%2072.2339%2027.382C72.2339%2025.366%2070.7531%2023.9337%2068.7255%2023.9337C66.6845%2023.9337%2065.1637%2025.3528%2065.1637%2027.3024C65.1637%2029.2785%2066.7111%2030.817%2068.6855%2030.817Z'%20fill='%231B5DF5'/%3e%3cpath%20d='M85.3201%2034C80.4377%2034%2077.4629%2030.1671%2077.4629%2023.9735C77.4629%2017.7931%2080.4644%2014%2085.3201%2014C90.1758%2014%2093.164%2017.7798%2093.164%2023.9602C93.164%2030.1406%2090.2025%2034%2085.3201%2034ZM85.3201%2030.7905C87.6946%2030.7905%2089.0686%2028.3634%2089.0686%2023.9735C89.0686%2019.6101%2087.6813%2017.2095%2085.3201%2017.2095C82.9723%2017.2095%2081.5583%2019.6233%2081.5583%2023.9735C81.5583%2028.3634%2082.9456%2030.7905%2085.3201%2030.7905Z'%20fill='%231B5DF5'/%3e%3cpath%20d='M106.164%2030L112.164%2024L106.164%2018'%20stroke='%231B5DF5'%20stroke-width='1.25'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",Ir=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_360_PLAY",children:r.jsx("svg",{className:t,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:r.jsx("polygon",{points:"6 3 20 12 6 21 6 3"})})}),Jn=750,Qn=1250,eo=360,to=480,ro=(t,s,i)=>({cursor:`url("${t}") ${s.x} ${s.y}, ${i}`}),no=({images:t,itemIndex:s,onlyPreload:i})=>{const{demoSpin:f,reverse360:u,spinCursor:d,themeConfig:x}=We(),{currentItemHotspotsVisible:e,isShowingDetails:M,isZooming:_}=Xe(),N=a.useMemo(()=>ft(x),[x]),L=_||M,h=a.useRef(null),o=a.useRef(null),[E,P]=a.useState(!1),[T,w]=a.useState("default"),y=d==="grab"&&E?"grabbing":d,C=N?.cursor?(()=>{const te=T==="left"?"leftSpin":T==="right"?"rightSpin":"default",K=N.cursor[te];return ro(K.url,K.hotspot,y)})():y===Ft?{cursor:`url("${kr}") 45 28, ew-resize`}:{cursor:y},m=a.useRef(0),b=a.useRef(null),[S,$]=a.useState(0),I=a.useRef(null),V=a.useRef(null),Y=a.useRef(null),A=a.useRef(0),H=16,j=a.useRef({timestamps:new Float64Array(10),values:new Float64Array(10),index:0,count:0}),q=a.useRef(f),ce=a.useRef(null),U=a.useCallback(()=>{ce.current&&(clearTimeout(ce.current),ce.current=null)},[]),D=a.useRef(null),J=()=>{D.current&&(cancelAnimationFrame(D.current),D.current=null)},R=t.length,B=a.useCallback(te=>{const K=m.current;if(K===te)return;const ne=b.current;ne&&(ne.src=t[te].src),m.current=te;const k=!!t[K]?.hotspots?.length,le=!!t[te]?.hotspots?.length;(k||le)&&$(te)},[t]),ae=a.useCallback(()=>{const te=(m.current+1)%R;B(te)},[R,B]),O=a.useCallback(()=>{const te=(m.current-1+R)%R;B(te)},[R,B]);return a.useEffect(()=>{if(L){U();return}const te=h.current,K=o.current;if(!te||!K)return;q.current&&(q.current=!1,ce.current=setTimeout(()=>{const me=Date.now(),xe=()=>{const we=()=>{const _e=(Date.now()-me)/Qn,De=Math.round((ke=>ke*(2-ke))(_e)*R),Ee=Ke(De%R,0,R-1);B(Ee),!(De>=R)&&xe()};D.current=requestAnimationFrame(we)};xe()},Jn));const ne=eo/R;let k=null;const le=j.current,G=()=>{le.index=0,le.count=0},Me=(me,xe)=>{const we=le.index;le.timestamps[we]=me,le.values[we]=xe,le.index=(we+1)%10,le.count<10&&le.count++},Ue=()=>{const me=(()=>{const De=Date.now(),{timestamps:Ee,values:ke,index:Oe,count:Pe}=le;if(Pe<2)return 0;let Fe=-1,Re=-1;for(let F=0;F<Pe;F++){const ie=(Oe-1-F+10)%10;De-Ee[ie]<50&&(Re===-1&&(Re=ie),Fe=ie)}if(Fe===-1||Re===-1||Fe===Re)return 0;const Te=Ee[Re]-Ee[Fe];return Te<=0?0:(ke[Re]-ke[Fe])/(Te/1e3)})(),xe=Date.now();let we=0,Ie=xe,_e=xe;const ze=()=>{const De=()=>{const Ee=Date.now(),ke=(Ee-xe)/1e3,Oe=Math.pow(.05,ke),Pe=me*Oe,Fe=(Ee-Ie)/1e3;if(we+=Pe*Fe,Math.abs(Pe)<5*ne&&Math.abs(we)<ne){D.current=null;return}const Re=Ee-_e;Math.abs(we)>=ne&&Re>=H&&(we>0!==u?ae():O(),we=0,_e=Ee),Ie=Ee,ze()};D.current=requestAnimationFrame(De)};ze()},He=()=>{U(),J()};P(!1);const ge=me=>{if(me.button!==0)return;me.preventDefault(),me.stopPropagation(),He(),P(!0),w("default");const xe=me.clientX;k=xe,G(),Me(Date.now(),xe)},c=me=>{if(k===null)return;me.stopPropagation();const{clientX:xe}=me;Me(Date.now(),xe);const we=xe-k;we!==0&&N?.cursor&&w(we<0?"left":"right"),!(Math.abs(we)<ne)&&(we>0!==u?ae():O(),k=xe)},p=()=>{k!==null&&(k=null,P(!1),w("default"),Ue())};te.addEventListener("mousedown",ge),document.addEventListener("mousemove",c),document.addEventListener("mouseleave",p),document.addEventListener("mouseup",p),document.addEventListener("contextmenu",p);const Q=to/R,oe=()=>K.getBoundingClientRect().width,ee=()=>K.scrollWidth/2-oe()/2,v=()=>{const me=ee();K.scrollLeft=me};v();const se=()=>{const me=K.scrollLeft-ee();Math.abs(me)<Q||(me<0!==u?ae():O(),v())};K.addEventListener("scroll",se);let re=null;const ve=()=>{I.current=null;const me=performance.now();if(me-A.current<H){I.current=requestAnimationFrame(ve);return}A.current=me;const xe=V.current,we=Y.current;if(xe===null||we===null)return;const Ie=xe-we;Ie!==0&&N?.cursor&&w(Ie<0?"left":"right"),!(Math.abs(Ie)<ne)&&(Ie>0!==u?ae():O(),Y.current=xe,k=xe)},fe=me=>{if(re!==null||me.changedTouches.length!==1)return;He(),P(!0),w("default"),I.current!==null&&(cancelAnimationFrame(I.current),I.current=null);const xe=me.changedTouches[0];re=xe.identifier;const we=xe.clientX;k=we,Y.current=we,V.current=we,G(),Me(Date.now(),we)},Be=me=>{if(k===null)return;let xe=null;for(let Ie=0;Ie<me.changedTouches.length;Ie++)if(me.changedTouches[Ie].identifier===re){xe=me.changedTouches[Ie];break}if(!xe)return;me.preventDefault();const we=xe.clientX;Me(Date.now(),we),V.current=we,I.current===null&&(I.current=requestAnimationFrame(ve))},Ae=me=>{if(k===null)return;let xe=!1;for(let we=0;we<me.changedTouches.length;we++)if(me.changedTouches[we].identifier===re){xe=!0;break}xe&&(I.current!==null&&(cancelAnimationFrame(I.current),I.current=null),re=null,k=null,Y.current=null,V.current=null,P(!1),w("default"),Ue())};return K.addEventListener("touchstart",fe,{passive:!1}),K.addEventListener("touchmove",Be,{passive:!1}),K.addEventListener("touchend",Ae),K.addEventListener("touchcancel",Ae),()=>{J(),P(!1),I.current!==null&&(cancelAnimationFrame(I.current),I.current=null),te.removeEventListener("mousedown",ge),document.removeEventListener("mousemove",c),document.removeEventListener("mouseleave",p),document.removeEventListener("mouseup",p),document.removeEventListener("contextmenu",p),K.removeEventListener("scroll",se),K.removeEventListener("touchstart",fe),K.removeEventListener("touchmove",Be),K.removeEventListener("touchend",Ae),K.removeEventListener("touchcancel",Ae)}},[U,ae,O,L,u,N,R,B]),r.jsx("div",{ref:h,style:C,children:r.jsxs("div",{ref:o,className:" overflow-x-scroll",children:[r.jsx("div",{className:"sticky left-0 top-0",children:r.jsxs("div",{className:"relative",children:[r.jsx("img",{ref:b,src:t[0].src,className:"pointer-events-none size-full object-cover",alt:""}),e&&t[S]?.hotspots?.map((te,K)=>r.jsx(Lr,{hotspot:te,item:{item_type:"next360",item_position:s}},`${S}-${K}`))]})}),r.jsx("div",{className:"pointer-events-none -mt-px h-px w-[calc(100%+1024px)]"})]})})},oo=({itemIndex:t,images:s,onPlaceholderImageLoaded:i,onSpinImagesLoaded:f,onError:u})=>{const{autoLoad360:d,emitAnalyticsEvent:x,themeConfig:e}=We(),{displayedCategoryId:M,displayedCategoryName:_}=Xe(),N=a.useMemo(()=>ft(e),[e]),L=a.useMemo(()=>s.map(({src:y})=>y),[s]),[h,o]=a.useState(null),E=h?[...h.values()].filter(y=>y).length/s.length*100:null,P=a.useCallback(y=>{E===null&&(o(new Map(L.map(C=>[C,!1]))),x({type:"interaction",current:{category_id:M,category_name:_,item_type:"next360",item_position:t},action:{name:"Next 360 Play",field:"next360_play",value:y}}))},[E,L,x,M,_,t]),T=a.useCallback(()=>{P("click")},[P]),w=a.useCallback(y=>{o(C=>{const m=new Map(C);return m.set(y,!0),m})},[]);return a.useEffect(()=>{d&&P("auto")},[d,P]),a.useEffect(()=>{E===100&&f()},[E,f]),r.jsxs("div",{className:"relative aspect-[4/3] w-full",children:[E!==null&&E!==100&&r.jsx("div",{className:"hidden",children:L.map(y=>r.jsx($e,{src:y,onLoad:()=>w(y),onError:u},y))}),r.jsx($e,{className:"size-full",src:L[0],onLoad:i}),r.jsxs("div",{className:"absolute inset-0 flex flex-col items-center justify-center gap-y-4 bg-foreground/35",children:[r.jsx(Bt,{className:"size-20",isVisible:N?.threeSixtyIcon}),r.jsx(Ge,{"aria-label":"Play 360 view",className:N?.playButton?"border-0 bg-transparent p-0 shadow-none hover:bg-transparent":void 0,style:N?.playButton?{width:74,height:74,padding:0}:void 0,color:"neutral",shape:"icon",onClick:T,children:N?.playButton?r.jsx("img",{className:"size-full",src:N.playButton.default,alt:""}):r.jsx(Ir,{className:"size-full"})}),r.jsx("div",{className:ue("relative h-1 w-3/5 overflow-hidden rounded-full bg-background",E===null&&"invisible"),children:r.jsx("div",{className:"h-full bg-primary transition-[width]",style:{width:`${E??0}%`}})})]})]})},so=t=>{const{itemIndex:s}=t,{setItemInteraction:i}=Xe(),[f,u]=a.useState(null);return a.useEffect(()=>{f===null||f==="error"||i(s,f==="spin"?"running":"ready")},[s,i,f]),f==="error"?r.jsx(bt,{className:"text-background",text:"Spin could not be loaded"}):f!=="spin"?r.jsx(oo,{...t,onPlaceholderImageLoaded:()=>u(d=>d===null?"placeholder":d),onSpinImagesLoaded:()=>u("spin"),onError:()=>u("error")}):r.jsx(no,{...t})},ao=750,io=1250,lo=360,co=480,uo=(t,s,i)=>({cursor:`url("${t}") ${s.x} ${s.y}, ${i}`}),fo=({images:t,onlyPreload:s})=>{const{demoSpin:i,reverse360:f,spinCursor:u,themeConfig:d}=We(),{isShowingDetails:x,isZooming:e}=Xe(),M=a.useMemo(()=>ft(d),[d]),_=e||x,N=a.useRef(null),L=a.useRef(null),[h,o]=a.useState(!1),[E,P]=a.useState("default"),T=u==="grab"&&h?"grabbing":u,w=M?.cursor?(()=>{const H=E==="left"?"leftSpin":E==="right"?"rightSpin":"default",j=M.cursor[H];return uo(j.url,j.hotspot,T)})():T===Ft?{cursor:`url("${kr}") 45 28, ew-resize`}:{cursor:T},y=a.useRef(i),C=a.useRef(null),m=a.useCallback(()=>{C.current&&(clearTimeout(C.current),C.current=null)},[]),b=a.useRef(null),S=()=>{b.current&&(cancelAnimationFrame(b.current),b.current=null)},[$,I]=a.useState(0),V=t.length,Y=a.useCallback(()=>{I(H=>(H-1+V)%V)},[V]),A=a.useCallback(()=>{I(H=>(H+1)%V)},[V]);return a.useEffect(()=>{if(_){m();return}const H=N.current,j=L.current;if(!H||!j)return;y.current&&(y.current=!1,C.current=setTimeout(()=>{const ge=Date.now(),c=()=>{const p=()=>{const oe=(Date.now()-ge)/io,v=Math.round((re=>re*(2-re))(oe)*V),se=Ke(v%V,0,V-1);I(se),!(v>=V)&&c()};b.current=requestAnimationFrame(p)};c()},ao));const q=lo/V;let ce=null,U=[];const D=ge=>{U.push(ge),U.length>20&&U.shift()},J=()=>{const ge=(()=>{const ee=Date.now(),v=U.filter(ve=>ee-ve.timestamp<50);if(v.length<2)return 0;const se=v[0],re=v[v.length-1];return(re.value-se.value)/(.001*Math.max(re.timestamp-se.timestamp,1))})(),c=Date.now();let p=0,Q=c;const oe=()=>{const ee=()=>{const v=Date.now(),se=(v-c)/1e3,re=Math.pow(.05,se),ve=ge*re,fe=(v-Q)/1e3;if(p+=ve*fe,Math.abs(ve)<5*q&&Math.abs(p)<q){b.current=null;return}Math.abs(p)>=q&&(p>0!==f?A():Y(),p=0),Q=v,oe()};b.current=requestAnimationFrame(ee)};oe()},R=()=>{m(),S()};o(!1);const B=ge=>{if(ge.button!==0)return;ge.preventDefault(),ge.stopPropagation(),R(),o(!0),P("default");const c=ge.clientX;ce=c,U=[{timestamp:Date.now(),value:c}]},ae=ge=>{if(ce===null)return;ge.stopPropagation();const{clientX:c}=ge;D({timestamp:Date.now(),value:c});const p=c-ce;p!==0&&M?.cursor&&P(p<0?"left":"right"),!(Math.abs(p)<q)&&(p>0!==f?A():Y(),ce=c)},O=()=>{ce!==null&&(ce=null,o(!1),P("default"),J())};H.addEventListener("mousedown",B),document.addEventListener("mousemove",ae),document.addEventListener("mouseleave",O),document.addEventListener("mouseup",O),document.addEventListener("contextmenu",O);const te=co/V,K=()=>j.getBoundingClientRect().width,ne=()=>j.scrollWidth/2-K()/2,k=()=>{const ge=ne();j.scrollLeft=ge};k();const le=()=>{const ge=j.scrollLeft-ne();Math.abs(ge)<te||(ge<0!==f?A():Y(),k())};j.addEventListener("scroll",le);let G=null;const Me=ge=>{if(G!==null||ge.changedTouches.length!==1)return;R(),o(!0),P("default");const{identifier:c,clientX:p}=ge.changedTouches[0];G=c,ce=p,U=[{timestamp:Date.now(),value:p}]},Ue=ge=>{if(!ce)return;const c=Array.from(ge.changedTouches).find(({identifier:oe})=>oe===G);if(!c)return;ge.preventDefault();const{clientX:p}=c;D({timestamp:Date.now(),value:p});const Q=p-ce;Q!==0&&M?.cursor&&P(Q<0?"left":"right"),!(Math.abs(Q)<q)&&(Q>0!==f?A():Y(),ce=p)},He=ge=>{!ce||!Array.from(ge.changedTouches).some(({identifier:p})=>p===G)||(G=null,ce=null,o(!1),P("default"),J())};return j.addEventListener("touchstart",Me),j.addEventListener("touchmove",Ue),j.addEventListener("touchend",He),j.addEventListener("touchcancel",He),()=>{o(!1),H.removeEventListener("mousedown",B),document.removeEventListener("mousemove",ae),document.removeEventListener("mouseleave",O),document.removeEventListener("mouseup",O),document.removeEventListener("contextmenu",O),j.removeEventListener("scroll",le),j.removeEventListener("touchstart",Me),j.removeEventListener("touchmove",Ue),j.removeEventListener("touchend",He),j.removeEventListener("touchcancel",He)}},[m,A,Y,_,f,M,V]),r.jsx("div",{ref:N,style:w,children:r.jsxs("div",{ref:L,className:"overflow-x-scroll",children:[r.jsxs("div",{className:"sticky left-0 top-0",children:[t.map(H=>r.jsx($e,{src:H.src,className:"pointer-events-none !absolute left-0 top-0 -z-10"},H.src)),r.jsx(Mr,{...t[$],onlyPreload:s,itemIndex:-1})]}),r.jsx("div",{className:"pointer-events-none -mt-px h-px w-[calc(100%+1024px)]"})]})})},ho=({itemIndex:t,images:s,onPlaceholderImageLoaded:i,onSpinImagesLoaded:f,onError:u})=>{const{autoLoad360:d,emitAnalyticsEvent:x,themeConfig:e}=We(),{displayedCategoryId:M,displayedCategoryName:_}=Xe(),N=a.useMemo(()=>ft(e),[e]),L=a.useMemo(()=>s.map(({src:y})=>y),[s]),[h,o]=a.useState(null),E=h?[...h.values()].filter(y=>y).length/s.length*100:null,P=a.useCallback(y=>{E===null&&(o(new Map(L.map(C=>[C,!1]))),x({type:"interaction",current:{category_id:M,category_name:_,item_type:"exterior-360",item_position:t},action:{name:"Exterior 360 Play",field:"exterior_360_play",value:y}}))},[E,L,x,M,_,t]),T=a.useCallback(()=>{P("click")},[P]),w=a.useCallback(y=>{o(C=>{const m=new Map(C);return m.set(y,!0),m})},[]);return a.useEffect(()=>{d&&P("auto")},[d,P]),a.useEffect(()=>{E===100&&f()},[E,f]),r.jsxs("div",{className:"relative aspect-[4/3] w-full",children:[E!==null&&E!==100&&r.jsx("div",{className:"hidden",children:L.map(y=>r.jsx($e,{src:y,onLoad:()=>w(y),onError:u},y))}),r.jsx($e,{className:"size-full",src:L[0],onLoad:i}),r.jsxs("div",{className:"absolute inset-0 flex flex-col items-center justify-center gap-y-4 bg-foreground/35",children:[r.jsx(Bt,{className:"size-20"}),r.jsx(Ge,{"aria-label":"Play 360 view",className:N?.playButton?"border-0 bg-transparent p-0 shadow-none hover:bg-transparent":void 0,style:N?.playButton?{width:74,height:74,padding:0}:void 0,color:"neutral",shape:"icon",onClick:T,children:N?.playButton?r.jsx("img",{className:"size-full",src:N.playButton.default,alt:""}):r.jsx(Ir,{className:"size-full"})}),r.jsx("div",{className:ue("relative h-1 w-3/5 overflow-hidden rounded-full bg-background",E===null&&"invisible"),children:r.jsx("div",{className:"h-full bg-primary transition-[width]",style:{width:`${E??0}%`}})})]})]})},po=t=>{const{itemIndex:s}=t,{setItemInteraction:i}=Xe(),[f,u]=a.useState();return a.useEffect(()=>{f===null||f==="error"||i(s,f==="spin"?"running":"ready")},[s,i,f]),f==="error"?r.jsx(bt,{className:"text-background",text:"Spin could not be loaded"}):f!=="spin"?r.jsx(ho,{...t,onPlaceholderImageLoaded:()=>u(d=>d===null?"placeholder":d),onSpinImagesLoaded:()=>u("spin"),onError:()=>u("error")}):r.jsx(fo,{...t})},mo=t=>r.jsx(Ge,{color:"neutral",shape:"icon",...t,children:r.jsx(Cr,{className:"size-full"})}),go=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_PAUSE",children:r.jsx("svg",{className:t,width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:r.jsx("path",{d:"M4 12.6667H6.66667V3.33333H4V12.6667ZM9.33333 3.33333V12.6667H12V3.33333H9.33333Z",fill:"currentColor"})})}),vo=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_VOLUME",children:r.jsx("svg",{className:t,width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:r.jsx("path",{d:"M2 6V10H4.66667L8 13.3333V2.66667L4.66667 6H2ZM11 8C11 6.82 10.32 5.80667 9.33333 5.31334V10.68C10.32 10.1933 11 9.18 11 8ZM9.33333 2.15334V3.52667C11.26 4.1 12.6667 5.88667 12.6667 8C12.6667 10.1133 11.26 11.9 9.33333 12.4733V13.8467C12.0067 13.24 14 10.8533 14 8C14 5.14667 12.0067 2.76 9.33333 2.15334Z",fill:"currentColor"})})}),xo=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_VOLUME_OFF",children:r.jsx("svg",{className:t,width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:r.jsx("path",{d:"M11 8C11 6.82 10.32 5.80667 9.33333 5.31333V6.78667L10.9667 8.42C10.9867 8.28667 11 8.14667 11 8ZM12.6667 8C12.6667 8.62667 12.5333 9.21333 12.3067 9.76L13.3133 10.7667C13.7533 9.94 14 9 14 8C14 5.14667 12.0067 2.76 9.33333 2.15333V3.52667C11.26 4.1 12.6667 5.88667 12.6667 8ZM2.84667 2L2 2.84667L5.15333 6H2V10H4.66667L8 13.3333V8.84667L10.8333 11.68C10.3867 12.0267 9.88667 12.3 9.33333 12.4667V13.84C10.2533 13.6333 11.0867 13.2067 11.7933 12.6333L13.1533 14L14 13.1533L2.84667 2ZM8 2.66667L6.60667 4.06L8 5.45333V2.66667Z",fill:"currentColor"})})}),tr=({progress:t})=>r.jsx("div",{className:"h-1 w-full overflow-hidden rounded-ui-sm bg-background/25",children:r.jsx("div",{className:"size-full rounded-ui-sm bg-background transition-transform",style:{transform:`translateX(-${100*(1-t)}%)`}})}),wo=3e3,Co=({src:t,poster:s,itemIndex:i})=>{const{carrouselItemIndex:f,setItemInteraction:u}=Xe(),d=a.useRef(null),x=a.useRef(null),e=a.useCallback(()=>{if(!x.current)throw new Error("videoRef.current is null");return x.current},[]);a.useEffect(()=>{u(i,"ready")},[i,u]);const M=a.useCallback(()=>{e().play()},[e]),_=a.useCallback(()=>{e().pause()},[e]);a.useEffect(()=>{f===i||_()},[f,i,_]);const[N,L]=a.useState(!1),[h,o]=a.useState(!0),E=()=>{L(!0),u(i,"running")},P=()=>{L(!1),u(i,"ready")},T=()=>{o(!1)},w=()=>{o(!0)},[y,C]=a.useState(null),m=U=>{const D=e(),J=U.currentTarget.getBoundingClientRect(),B=(U.clientX-J.left)/J.width,ae=Math.min(1,Math.max(0,B));D.volume=ae,D.muted=!1},b=U=>{const D=e();D.muted=U};a.useEffect(()=>{const U=x.current;if(!U)return;const D=()=>{C({volume:U.volume,isMuted:U.muted})};return D(),U.addEventListener("volumechange",D),()=>{U.removeEventListener("volumechange",D)}},[]);const[S,$]=a.useState(null),I=S?S.currentTime/S.duration:0;a.useEffect(()=>{const U=x.current;if(!U)return;const D=()=>{const J=U.currentTime,R=U.duration;isNaN(J)||isNaN(R)||$({currentTime:J,duration:R})};return D(),U.addEventListener("timeupdate",D),()=>{U.removeEventListener("timeupdate",D)}},[]);const V=U=>{const D=e(),J=U.currentTarget.getBoundingClientRect(),B=(U.clientX-J.left)/J.width,ae=D.duration*B;D.currentTime=ae},Y=U=>{const D=Math.floor(U%3600/60),J=Math.floor(U%60);return`${D}:${J.toString().padStart(2,"0")}`},[A,H]=a.useState(!1),j=a.useRef(void 0),q=a.useCallback(()=>clearTimeout(j.current),[]),ce=a.useCallback(()=>{q(),j.current=setTimeout(()=>{H(!1)},wo)},[q]);return a.useEffect(()=>{const U=d.current,D=x.current;if(!U||!D)return;const J=()=>{ce(),H(!0)},R=()=>{q(),H(!1)};let B=!1;const ae=()=>{B=!0},O=()=>{B&&(B=!1,_())},te=()=>{B=!1,J()},K=ne=>{ne.preventDefault(),ne.touches.length===1&&(ce(),H(le=>!le))};return U.addEventListener("mousedown",ae),U.addEventListener("mouseup",O),U.addEventListener("mouseenter",J),U.addEventListener("mousemove",te),U.addEventListener("mouseleave",R),D.addEventListener("touchstart",K,{passive:!0}),()=>{U.removeEventListener("mousedown",ae),U.removeEventListener("mouseup",O),U.removeEventListener("mouseenter",J),U.removeEventListener("mousemove",J),U.removeEventListener("mouseleave",R),D.removeEventListener("touchstart",K)}},[q,_,ce]),r.jsxs("div",{ref:d,className:"relative aspect-[4/3] w-full",children:[r.jsx("video",{ref:x,className:"size-full",src:t,poster:s,disablePictureInPicture:!0,playsInline:!0,onPlay:E,onPause:P,onEnded:P,onCanPlay:T,onWaiting:w}),N?r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:ue("absolute inset-x-0 bottom-0 cursor-auto space-y-2 bg-gradient-to-t from-foreground to-transparent p-4 pr-12 pt-8 transition-opacity duration-300",A?"pointer-events-auto opacity-100":"pointer-events-none opacity-0"),onMouseDownCapture:U=>U.stopPropagation(),children:[r.jsxs("div",{className:"flex items-center justify-between text-background",children:[r.jsxs("div",{className:"flex items-center gap-x-4",children:[r.jsx(Ge,{shape:"icon",variant:"ghost",color:"neutral",onClick:_,children:r.jsx(go,{className:"size-full"})}),S&&r.jsxs("span",{className:"text-sm",children:[Y(S.currentTime)," /"," ",Y(S.duration)]})]}),y&&r.jsxs("div",{className:"group/volume flex items-center gap-x-4 rounded-ui-md p-2 transition-colors hover:bg-foreground/25",children:[r.jsx("div",{className:`w-12 cursor-pointer py-1 opacity-0 transition-opacity ${y.isMuted?"group-hover/volume:opacity-50":"group-hover/volume:opacity-100"}`,onClick:m,children:r.jsx(tr,{progress:y.volume})}),r.jsx("div",{className:"size-5 cursor-pointer",onClick:()=>b(!y.isMuted),children:y.isMuted?r.jsx(xo,{className:"size-full"}):r.jsx(vo,{className:"size-full"})})]})]}),r.jsx("div",{className:"cursor-pointer py-1",onClick:V,children:r.jsx(tr,{progress:I})})]}),h&&r.jsx("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center bg-foreground/25",children:r.jsx(vr,{size:"lg",color:"background"})})]}):r.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-foreground/25",children:r.jsx(mo,{onClick:M})})]})},bo=({index:t,item:s,isShown:i})=>{const{type:f}=s;let u;switch(f){case"image":u=r.jsx(Mr,{itemIndex:t,onlyPreload:!i,...s});break;case"video":u=r.jsx(Co,{itemIndex:t,...s});break;case"360":u=r.jsx(po,{itemIndex:t,onlyPreload:!i,...s});break;case"next360":u=r.jsx(so,{itemIndex:t,onlyPreload:!i,...s});break;case"interior-360":u=r.jsx($n,{itemIndex:t,onlyPreload:!i,...s});break;case"custom":u=r.jsx(On,{itemIndex:t,...s})}return u=r.jsx("div",{className:"grid grid-cols-[repeat(var(--max-items),1fr)]",children:u}),u},yo=t=>{a.useEffect(()=>{const s=i=>{i.key==="Escape"&&t()};return addEventListener("keydown",s),()=>{removeEventListener("keydown",s)}},[t])};function Eo(t){return t.target===t.currentTarget}const Lo=({className:t,children:s,isVisible:i,url:f,title:u,description:d,clickHandler:x,extendMode:e,variant:M,aspectRatioStyle:_,maxItemsShown:N=1})=>{const{isFullScreen:L,integration:h}=We(),o=()=>M||(!h||L?"centered":"aside"),E=()=>!!(u||d),P=()=>!!f,T=()=>P()&&!E(),w=o(),y=C=>{if(!_)return{};switch(C){case"centered":return{..._,aspectRatio:"4 / 3",maxHeight:E()?"50%":"100%"};case"aside":return{..._,minHeight:0,flex:"1 1 auto"};case"fullwidth":return{..._,height:"85%"};default:return _}};return T()?r.jsxs("div",{className:ue(t,"absolute inset-0 z-overlay flex items-center justify-center overflow-hidden bg-foreground/60 transition-opacity duration-details",i?"opacity-100":"pointer-events-none opacity-0"),onClick:x,children:[s,i&&r.jsx($e,{className:"size-full bg-foreground/65 object-contain",src:f||"",style:_,imgInPlayerWidthRatio:1})]}):w==="centered"?r.jsx("div",{className:ue(t,"absolute inset-0 z-overlay flex justify-end overflow-hidden bg-foreground/10 transition-opacity duration-details",i?"opacity-100":"pointer-events-none opacity-0"),onClick:x,children:r.jsxs("div",{className:ue("flex h-full flex-col bg-navy text-white transition-transform duration-details",i?"translate-x-0":"translate-x-full","w-3/5"),style:{containerType:"inline-size"},children:[s,i&&r.jsxs(r.Fragment,{children:[P()&&r.jsx($e,{className:ue(E()?"max-h-[50%]":"h-full","w-full bg-foreground/65 object-cover"),src:f||"",style:y("centered"),imgInPlayerWidthRatio:.6}),E()&&r.jsxs("div",{className:ue("flex flex-1 flex-col gap-4 overflow-y-auto p-4 small:p-3",e&&"large:p-4"),children:[u&&r.jsx("h3",{className:ue("text-[clamp(0.875rem,0.6rem+1.6cqw,1.125rem)] font-semibold text-white small:font-bold",e&&"large:text-lg"),children:u}),d&&r.jsx("p",{className:ue("text-[clamp(0.75rem,0.55rem+1.3cqw,0.875rem)] text-white",e&&"large:text-sm"),children:d})]})]})]})}):w==="aside"?r.jsx("div",{className:ue(t,"absolute inset-0 z-overlay flex items-center justify-center overflow-hidden bg-foreground/60 transition-opacity duration-details",i?"opacity-100":"pointer-events-none opacity-0"),onClick:x,children:r.jsxs("div",{className:ue("relative flex h-full flex-col bg-background transition-transform duration-details",i?"translate-y-0":"translate-y-full"),style:{containerType:"inline-size",width:h?`${100/(L?1:N)}%`:`${100/N}%`},children:[s,i&&r.jsxs(r.Fragment,{children:[P()&&r.jsx($e,{className:"min-h-0 w-full flex-1 bg-foreground/65 object-contain",src:f||"",style:y("aside"),imgInPlayerWidthRatio:.6}),r.jsxs("div",{className:ue("space-y-1 p-2 small:p-3",P()?"min-h-[15%] shrink-0":"flex-1 overflow-y-auto"),children:[u&&r.jsx("span",{className:ue("block text-[clamp(0.75rem,0.45rem+1.8cqw,1.125rem)] font-semibold leading-tight small:font-bold",e&&"large:text-lg"),children:u}),d&&r.jsx("p",{className:ue("text-[clamp(0.625rem,0.4rem+1.5cqw,0.875rem)] leading-tight text-foreground/65",e&&"large:text-sm"),children:d})]})]})]})}):r.jsx("div",{className:ue(t,"absolute inset-0 z-overlay flex items-center justify-center overflow-hidden bg-foreground/60 transition-opacity duration-details",i?"opacity-100":"pointer-events-none opacity-0"),onClick:x,children:r.jsxs("div",{className:ue("relative flex aspect-[4/3] flex-col bg-background transition-transform duration-details",i?"translate-y-0":"translate-y-full"),style:{containerType:"inline-size",width:h?`${100/(L?1:N)}%`:`${100/N}%`},children:[s,i&&f&&r.jsxs(r.Fragment,{children:[r.jsx($e,{className:"h-[85%] w-full bg-foreground/65 object-contain",src:f,style:y("fullwidth"),imgInPlayerWidthRatio:.6}),r.jsxs("div",{className:"h-[15%] space-y-1 overflow-y-auto px-2 py-1 small:p-3",children:[u&&r.jsx("span",{className:ue("text-[clamp(0.75rem,0.45rem+1.8cqw,1.125rem)] font-semibold small:font-bold",e&&"large:text-lg"),children:u}),d&&r.jsx("p",{className:ue("text-[clamp(0.625rem,0.4rem+1.5cqw,0.875rem)] text-foreground/65",e&&"large:text-sm"),children:d})]})]})]})})},Mo=({currentIndex:t,maxIndex:s})=>r.jsxs("div",{className:"space-x-0.5 rounded-ui bg-foreground/40 px-1.5 py-0.5 text-xs text-background/75 transition-radius small:space-x-1 small:px-2 small:py-1 small:text-sm",children:[r.jsx("span",{children:t+1}),r.jsx("span",{children:"/"}),r.jsx("span",{children:s+1})]}),ko=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_EXTEND",children:r.jsx("svg",{className:t,viewBox:"0 0 20 20",fill:"none",children:r.jsx("path",{d:"M2.5 5.83333V4.16667C2.5 3.72464 2.67559 3.30072 2.98816 2.98816C3.30072 2.67559 3.72464 2.5 4.16667 2.5H5.83333M14.1667 2.5H15.8333C16.2754 2.5 16.6993 2.67559 17.0118 2.98816C17.3244 3.30072 17.5 3.72464 17.5 4.16667V5.83333M17.5 14.1667V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H14.1667M5.83333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V14.1667M6.66667 6.66667H13.3333C13.7936 6.66667 14.1667 7.03976 14.1667 7.5V12.5C14.1667 12.9602 13.7936 13.3333 13.3333 13.3333H6.66667C6.20643 13.3333 5.83333 12.9602 5.83333 12.5V7.5C5.83333 7.03976 6.20643 6.66667 6.66667 6.66667Z",stroke:"currentColor",strokeWidth:"1.04167",strokeLinecap:"round",strokeLinejoin:"round"})})}),Io=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_GALLERY",children:r.jsx("svg",{className:t,viewBox:"0 0 20 20",fill:"none",children:r.jsx("path",{d:"M15 18.3334H3.33335C2.89133 18.3334 2.4674 18.1578 2.15484 17.8453C1.84228 17.5327 1.66669 17.1088 1.66669 16.6667V5.00008M18.3334 10.8334L17.2534 9.75345C16.8767 9.37688 16.3659 9.16532 15.8334 9.16532C15.3008 9.16532 14.79 9.37688 14.4134 9.75345L9.16669 15.0001M11.6667 6.66675C11.6667 7.58722 10.9205 8.33342 10 8.33342C9.07955 8.33342 8.33335 7.58722 8.33335 6.66675C8.33335 5.74627 9.07955 5.00008 10 5.00008C10.9205 5.00008 11.6667 5.74627 11.6667 6.66675ZM6.66669 1.66675H16.6667C17.5872 1.66675 18.3334 2.41294 18.3334 3.33341V13.3334C18.3334 14.2539 17.5872 15.0001 16.6667 15.0001H6.66669C5.74621 15.0001 5.00002 14.2539 5.00002 13.3334V3.33341C5.00002 2.41294 5.74621 1.66675 6.66669 1.66675Z",stroke:"currentColor",strokeWidth:"1.04167",strokeLinecap:"round",strokeLinejoin:"round"})})}),_o=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_HOTSPOTS",children:r.jsx("svg",{className:t,viewBox:"0 0 11 11",fill:"none",children:r.jsx("path",{d:"M0.400024 5.3999H1.90002M1.90002 5.3999C1.90002 7.3329 3.46703 8.8999 5.40002 8.8999M1.90002 5.3999C1.90002 3.46691 3.46703 1.8999 5.40002 1.8999M8.90002 5.3999H10.4M8.90002 5.3999C8.90002 7.3329 7.33302 8.8999 5.40002 8.8999M8.90002 5.3999C8.90002 3.46691 7.33302 1.8999 5.40002 1.8999M5.40002 0.399902V1.8999M5.40002 8.8999V10.3999M6.90002 5.3999C6.90002 6.22833 6.22845 6.8999 5.40002 6.8999C4.5716 6.8999 3.90002 6.22833 3.90002 5.3999C3.90002 4.57148 4.5716 3.8999 5.40002 3.8999C6.22845 3.8999 6.90002 4.57148 6.90002 5.3999Z",stroke:"currentColor",strokeWidth:"0.8",strokeLinecap:"round",strokeLinejoin:"round"})})}),To=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_MINUS",children:r.jsx("svg",{className:t,viewBox:"0 0 13 2",fill:"none",children:r.jsx("path",{d:"M0.520874 0.520752H12.1875",stroke:"currentColor",strokeWidth:"1.04167",strokeLinecap:"round",strokeLinejoin:"round"})})}),So=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_PLUS",children:r.jsx("svg",{className:t,viewBox:"0 0 13 13",fill:"none",children:r.jsx("path",{d:"M0.520874 6.35409H12.1875M6.35421 0.520752V12.1874",stroke:"currentColor",strokeWidth:"1.04167",strokeLinecap:"round",strokeLinejoin:"round"})})}),Ro=({enabled:t,onToggle:s,label:i,className:f,children:u})=>r.jsxs("label",{className:ue("flex cursor-pointer items-center justify-center gap-x-2",f),children:[r.jsx("input",{type:"checkbox",className:"sr-only",checked:t,onChange:s}),i&&r.jsx("div",{className:"text-xs text-background",children:i}),r.jsx("div",{className:ue("flex h-5 w-8 items-center justify-center rounded-full transition-colors",t?"bg-primary":"bg-background/60"),children:r.jsx("div",{className:ue("flex size-4 items-center justify-center rounded-full p-0.5 transition",t?"translate-x-1.5 bg-primary-foreground text-primary":"-translate-x-1.5 bg-background text-foreground"),children:u})})]}),Po=({className:t})=>r.jsx(Ve,{className:t,customizationKey:"UI_BURGER",children:r.jsx("svg",{className:t,width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:r.jsx("path",{d:"M2 12H14V10.6667H2V12ZM2 8.66667H14V7.33333H2V8.66667ZM2 4V5.33333H14V4H2Z",fill:"currentColor"})})}),No=({sharedClassName:t})=>{const{categories:s}=rt(),{displayedCategoryId:i,changeCategory:f}=Xe(),[u,d]=a.useState(!1),x=()=>{d(!u)},e=()=>{d(!1)};return r.jsxs(r.Fragment,{children:[u&&r.jsx("div",{className:ue(t,"inset-0 small:hidden"),onClick:e}),r.jsxs("div",{className:ue(t,at("top-left"),"flex gap-x-2 small:hidden"),children:[r.jsx(Ge,{shape:"icon",color:u?"primary":"neutral",onClick:x,children:r.jsx(Po,{})}),u&&r.jsx("div",{className:"rounded-ui-md bg-background transition-radius",children:r.jsx("ul",{className:"space-y-0.5 p-1",children:s.map(({id:M,title:_})=>r.jsx("li",{className:ue("cursor-pointer rounded-ui px-2 py-1 text-sm font-bold transition-all hover:bg-primary/30",M===i&&"bg-primary/50"),onClick:()=>{f(M),d(!1)},children:_},M))})})]}),r.jsx("div",{className:ue(t,gr("top"),"w-full overflow-x-auto max-small:hidden"),children:r.jsx("div",{className:"mx-auto flex w-fit gap-x-1 rounded-ui-md bg-background p-1 shadow",children:s.map(({id:M,title:_})=>r.jsx(Ge,{variant:M===i?"fill":"ghost",onClick:()=>f(M),children:_},M))})})]})},jo=()=>{const{hideCategoriesNav:t,infiniteCarrousel:s,permanentGallery:i,extendBehavior:f,maxItemsShown:u,isFullScreen:d,integration:x}=We(),{aspectRatioStyle:e,categories:{length:M}}=rt(),{items:{length:_},slidable:N,carrouselItemIndex:L,masterItemIndex:h,prevItem:o,nextItem:E,showGalleryControls:P,enableHotspotsControl:T,currentItemHotspotsVisible:w,toggleHotspots:y,showGallery:C,toggleGallery:m,extendMode:b,toggleExtendMode:S,shownDetails:$,isShowingDetails:I,resetShownDetails:V,showZoomControls:Y,isZooming:A,canZoomIn:H,zoomIn:j,canZoomOut:q,zoomOut:ce,resetView:U}=Xe(),D=a.useCallback(ae=>{Eo(ae)&&V()},[V]);yo(V);const J="absolute z-overlay",R=()=>{if(u===1)return L;const O=Math.floor(u)-1;return L+O},B=()=>{if(!x)return h;const O=Math.floor(u)-1;return h+O};return r.jsxs(r.Fragment,{children:[!t&&M>1&&r.jsx(No,{sharedClassName:ue(J,"transition-opacity",A?"!pointer-events-none opacity-0":"opacity-100")}),N&&!A&&r.jsx("div",{className:ue(J,at("top-right")),children:r.jsx(Mo,{currentIndex:!x||d?L:R(),maxIndex:_-1})}),N&&r.jsxs(r.Fragment,{children:[r.jsx(Ge,{shape:"icon",color:"neutral",className:ue(J,at("middle-left"),A?"!pointer-events-none opacity-0":"opacity-100"),onClick:o,disabled:!s&&h<=0,children:r.jsx(Ve,{customizationKey:"CONTROLS_PREV",children:r.jsx(It,{className:"size-full -scale-x-100"})})}),r.jsx(Ge,{shape:"icon",color:"neutral",className:ue(J,at("middle-right"),A?"!pointer-events-none opacity-0":"opacity-100"),onClick:E,disabled:!s&&B()>=_-1,children:r.jsx(Ve,{customizationKey:"CONTROLS_NEXT",children:r.jsx(It,{className:"size-full"})})})]}),r.jsxs("div",{className:ue(J,at("bottom-fullW"),"pointer-events-none grid grid-cols-[auto,1fr,auto] items-end *:pointer-events-auto small:gap-x-2"),children:[!i&&N&&r.jsxs(r.Fragment,{children:[r.jsx(Ge,{className:P&&!A?"opacity-100":"!pointer-events-none opacity-0",variant:"fill",color:C?"primary":"neutral",shape:"icon",onClick:m,children:r.jsx(Io,{className:"size-full"})}),C&&r.jsx(yr,{className:ue("transition-opacity",P&&!A?"opacity-100":"!pointer-events-none opacity-0","[mask-image:linear-gradient(to_left,transparent_0px,black_4px,black_calc(100%-4px),transparent_100%)]"),containerClassName:"mx-1"})]}),r.jsxs("div",{className:"col-start-3 flex flex-col items-end gap-y-1 small:gap-y-2",children:[T&&r.jsx(Ro,{className:ue("transition-opacity",A?"!pointer-events-none opacity-0":"opacity-100"),enabled:w,onToggle:y,children:r.jsx(_o,{className:"size-full"})}),Y&&(!x||d)&&r.jsxs("div",{className:"max-small:hidden",children:[r.jsx(Ge,{className:"rounded-b-none",color:"neutral",shape:"icon",disabled:!H,onClick:j,children:r.jsx(So,{className:"size-full"})}),r.jsx(br,{color:"background"}),r.jsx(Ge,{className:"rounded-t-none",color:"neutral",shape:"icon",disabled:!q,onClick:ce,children:r.jsx(To,{className:"size-full"})})]}),f!=="none"&&r.jsx(Ge,{variant:"fill",color:b?"primary":"neutral",shape:"icon",onClick:S,children:r.jsx(ko,{className:"size-full"})})]})]}),r.jsx(Lo,{isVisible:I,className:J,url:$?.src,title:$?.title,description:$?.text,clickHandler:D,extendMode:b,maxItemsShown:u,aspectRatioStyle:e,children:r.jsx(kt,{className:"absolute right-2 top-2 z-10",onClick:V})}),A&&r.jsx(kt,{className:ue(J,at("top-right")),onClick:U})]})},Ao=({className:t=""})=>{const{infiniteCarrousel:s,preloadRange:i,isFullScreen:f,maxItemsShown:u,integration:d}=We(),{aspectRatioStyle:x}=rt(),{items:e,slidable:M,carrouselItemIndex:_,setCarrouselItemIndex:N,itemIndexCommand:L,setItemIndexCommand:h,specialCommand:o,isRunningSpecialCommand:E,finishSpecialCommand:P,extendMode:T,extendTransition:w}=Xe(),{effectiveMaxItemsShown:y}=dr(),C=a.useRef(null),m=a.useCallback(R=>{if(!C.current)throw new Error(`[${R??"sliderOrThrow"}] slider.current is null`);return C.current},[]),b=a.useRef(!1),S=a.useRef(null),$=a.useRef(null),I=a.useRef(null),V=a.useCallback(()=>{I.current&&cancelAnimationFrame(I.current)},[]),Y=a.useCallback(()=>{const R=m("computeClosestSnapIndex"),B=Array.from(R.children),ae=R.scrollLeft;let O=0,te=1/0;if(B.forEach((K,ne)=>{const k=K.offsetLeft,le=Math.abs(k-ae);le<te&&(te=le,O=ne)}),y>1){const K=Math.ceil(y),ne=e.length+(d&&!s&&y%1!==0?1:0),k=Math.max(0,ne-K);if(O=Math.min(O,k),d&&!s&&y%1!==0){const le=e.length-1;O=Math.min(O,le)}}return O},[m,y,e.length,s,d]),A=a.useCallback(R=>{const B=m("setStyleCursor");B.style.cursor=R},[m]),H=a.useCallback(R=>{const B=m("setStyleSnapState");R==="mandatory"?B.style.scrollSnapType="x mandatory":B.style.scrollSnapType="none"},[m]),j=a.useCallback((R,B,ae)=>{V();const O=m("scrollToIndex"),te=Array.from(O.children),K=O.scrollLeft;let ne=te[R].offsetLeft;const k=O.clientWidth,le=O.scrollWidth-k;if(y>1){const p=Math.ceil(y),Q=e.length+(d&&!s&&y%1!==0?1:0);R>=Q-p&&(ne=Math.min(ne,le))}const G=p=>{O.scrollTo({left:p,behavior:"instant"})},Me=()=>{G(ne),H("mandatory"),ae?.()},Ue=Math.abs(K-ne);if(Ue<1||B==="instant"){Me();return}const He=Ke(Ue/2.5,300,1e3),ge=new Date().getTime();H("none");const c=()=>{const p=()=>{const oe=new Date().getTime()-ge;if(oe>=He){Me();return}const ee=Math.min(oe/He,1),v=Er(ee),se=vt(K,ne,v);G(se),c()};I.current=requestAnimationFrame(p)};c()},[V,m,y,H,e.length,d,s]),[q,ce]=a.useState(),U=!!q;a.useEffect(()=>{const R=()=>{clearTimeout(q);const B=setTimeout(()=>{ce(void 0)},ur);ce(B)};return addEventListener("resize",R),document.addEventListener("fullscreenchange",R),()=>{removeEventListener("resize",R),document.removeEventListener("fullscreenchange",R)}},[q]),a.useEffect(()=>{if(o)return;const R=Y();Number.isNaN(R)||R!==_&&j(_,"instant")},[_,Y,j,o,e,q,f,T,w]),a.useEffect(()=>{if(!M||E){A("auto");return}const R=C.current;if(!R)return;A("grab"),H("mandatory");const B=te=>{te.button===0&&(te.preventDefault(),te.stopPropagation(),V(),b.current=!0,S.current=te.pageX-R.offsetLeft,$.current=R.scrollLeft,A("grabbing"))},ae=te=>{if(!b.current)return;if(S.current===null)throw new Error("[onMouseMove] startX is null");H("none");const ne=te.pageX-R.offsetLeft-S.current;requestAnimationFrame(()=>{if($.current===null)throw new Error("[onMouseMove] scrollLeft is null");let k=$.current-ne;if(!s){const le=R.scrollWidth-R.clientWidth;k>le&&(k=le)}R.scrollLeft=k})},O=()=>{if(!b.current)return;b.current=!1,A("grab");const te=Y();j(te,"smooth")};return R.addEventListener("mousedown",B),document.addEventListener("mousemove",ae),document.addEventListener("mouseleave",O),document.addEventListener("mouseup",O),document.addEventListener("contextmenu",O),()=>{R.removeEventListener("mousedown",B),document.removeEventListener("mousemove",ae),document.removeEventListener("mouseleave",O),document.removeEventListener("mouseup",O),document.removeEventListener("contextmenu",O)}},[V,Y,s,E,j,A,H,M]),a.useEffect(()=>{if(w||U)return;const R=C.current;if(!R)return;const B=()=>{const ae=Y();Number.isNaN(ae)||(N(ae),ae===L&&h(null))};return R.addEventListener("scroll",B),()=>{R.removeEventListener("scroll",B)}},[Y,w,U,L,u,N,h]),a.useEffect(()=>{if(L===null)return;const R=()=>{setTimeout(()=>{h(null),P()},75)};switch(o){case"first_to_last":{const B=Math.ceil(y),ae=e.length+(d&&!s&&y%1!==0?1:0),O=y>1?Math.max(0,ae-B):e.length-1;j(O,"instant",R);break}case"last_to_first":j(0,"instant",R);break;case"instant":j(L,"instant",R);break;default:j(L,"smooth");break}},[o,P,L,e.length,j,h,y,s,d]);const D=a.useMemo(()=>!d||f?x:{aspectRatio:"auto"},[d,f,x]),J=a.useMemo(()=>({...x,minWidth:`${100/y}%`,width:`${100/y}%`,flexShrink:0}),[x,y]);return r.jsxs("div",{className:ue("relative overflow-hidden rounded-carrousel transition-radius",t),style:D,children:[r.jsxs("div",{ref:C,className:`flex size-full ${M?"overflow-x-auto no-scrollbar *:snap-start *:snap-always":"justify-center"}`,children:[e.map((R,B)=>{const ae=B===_,O=B===0,te=B===e.length-1,K=(()=>{const Me=Math.ceil(y);if(o==="first_to_last"&&O)return{transform:`translateX(${100*e.length/Me}%)`};if(o==="last_to_first"&&te)return{transform:`translateX(-${100*e.length/Me}%)`}})(),ne=Math.ceil(y),k=Math.max(i,ne);let le=Math.abs(B-_)<=k;le||=B===L,le||=B>=_&&B<_+ne,s&&(le||=_<k&&e.length-B<=k-_,le||=_>=e.length-k&&B<=k-(e.length-_));const G=(()=>{let Me;switch(R.type){case"360":Me=R.images[0].src;break;case"interior-360":Me=R.poster??"interior-360";break;case"image":Me=R.src;break;case"video":Me=R.poster??"video";break;case"custom":Me="custom";break;default:Me="unknown"}return`${B}_${Me}`})();return r.jsx("div",{className:ue("h-full bg-foreground/35",_===B&&"z-1"),style:{...J,...K},children:le&&r.jsx(bo,{index:B,item:R,isShown:ae})},G)}),d&&!s&&!f&&u%1!==0&&r.jsx("div",{className:"h-full",style:J},"empty-slide")]}),r.jsx(jo,{})]})},zo=()=>{const{permanentGallery:t,integration:s}=We(),{aspectRatioStyle:i}=rt(),{isShowingDetails:f,resetShownDetails:u,extendMode:d,disableExtendMode:x,isZooming:e,resetZoom:M,fakeFullScreen:_}=Xe(),N=a.useRef(null),L=a.useRef(null),h=a.useRef(null);return a.useEffect(()=>{if(!d)return;const o=N.current,E=L.current,P=h.current;if(!o||!E||!P)return;let T=!1;const w=m=>[o,E,P].includes(m.target),y=m=>{T=w(m)},C=m=>{T&&(w(m)&&x(),T=!1)};return o.addEventListener("mousedown",y),o.addEventListener("mouseup",C),()=>{o.removeEventListener("mousedown",y),o.removeEventListener("mouseup",C)}},[x,d]),a.useEffect(()=>{const o=E=>{E.key==="Escape"&&(e?M():f?u():x())};return addEventListener("keydown",o),()=>{removeEventListener("keydown",o)}},[x,f,e,u,M]),r.jsxs("div",{ref:N,className:ue("relative",d&&"flex size-full items-center justify-center",_&&"fixed inset-0 z-overlay bg-foreground/75"),children:[r.jsxs("div",{ref:L,className:d?"flex size-full flex-col justify-center gap-y-2 small:gap-y-4":"space-y-2",children:[r.jsx("div",{ref:h,className:ue(d&&"mx-auto flex min-h-0 w-full max-w-[1600px] justify-center"),style:s?{}:i,children:r.jsx(Ao,{className:ue(d&&"h-full min-w-0")})}),t&&r.jsx(yr,{className:ue(d&&"my-2 shrink-0 small:my-4")})]}),d&&r.jsx(kt,{className:"absolute right-2 top-2 small:right-4 small:top-4",onClick:x})]})},Do=()=>{const{emitEvent:t,emitAnalyticsEvent:s,compositionUrl:i}=We(),{data:f,status:u,isSuccess:d,error:x}=un(i);return a.useEffect(()=>{if(x){t(Pt,x);const e={type:"error",error:x instanceof Error?{name:x.name||"CompositionLoadError",message:x.message,stack:x.stack}:{name:"NonError",message:(()=>{try{return JSON.stringify(x)}catch{return String(x)}})()}};s(e)}else u==="fetching"?t(St,i):d&&t(Rt,f)},[f,i,t,s,x,d,u]),x?r.jsx(bt,{className:"aspect-square text-foreground/70",text:"Player could not be loaded"}):d?r.jsx(fn,{composition:f,children:r.jsx(mn,{children:r.jsx(zo,{})})}):r.jsxs("div",{className:"flex aspect-square size-full flex-col items-center justify-center gap-y-4",children:[r.jsx("div",{className:"animate-pulse text-xl",children:"Loading Player"}),r.jsx(vr,{color:"foreground"})]})},Oo={hideCategoriesNav:!0,infiniteCarrousel:!1,permanentGallery:!1},Fo=[1,1.5,2,2.5],Ho=()=>a.useMemo(()=>on(),[]),Uo=()=>a.useMemo(()=>sn(),[]),Bo=()=>a.useMemo(()=>an(),[]),Wo="https://analytics.eu.car-cutter.com",Vo={load:"/webplayer/load",display:"/webplayer/display",interaction:"/webplayer/interaction",error:"/webplayer/error"},Xo=t=>{const s=Vo[t];return new URL(s,Wo).toString()},Yo=t=>{const s=new Headers;return s.append("Content-Type","application/json"),s.append("Authorization",`Bearer ${t}`),s},Zo=t=>{const{type:s,...i}=t;return JSON.stringify(i)},Go=1e4,qo=async(t,s=Go)=>{const{payload:i,compositionUrl:f}=t,u=Yo(f),d=Zo(i),x=Xo(i.type),e=new AbortController,M=setTimeout(()=>e.abort(),s);try{const _=await fetch(x,{method:"POST",headers:u,body:d,signal:e.signal});if(!_.ok)throw new Error(`Monitoring request failed: ${_.status} ${_.statusText} (${x})`)}finally{clearTimeout(M)}},Ko=({compositionUrl:t,integration:s=Kr,maxItemsShown:i=ar,hideCategoriesNav:f=Dr,infiniteCarrousel:u=Or,permanentGallery:d=Fr,mediaLoadStrategy:x=Hr,minMediaWidth:e=Ur,maxMediaWidth:M=Br,preloadRange:_=Wr,autoLoad360:N=Vr,autoLoadInterior360:L=Xr,categoriesFilter:h=Yr,extendBehavior:o=Zr,eventPrefix:E=Ot,demoSpin:P=Gr,reverse360:T=qr,analyticsEventPrefix:w=ir,analyticsUrl:y=$r,analyticsBearer:C=Jr,analyticsSimpleRequestsOnly:m=Qr,analyticsDryRun:b=en,analyticsDebug:S=tn,spinCursor:$=Ft,monitoring:I,themeConfig:V,children:Y})=>{const A=I!==void 0?I:!y;i=hn(i,Fo);const H=a.useRef(null),[j,q]=a.useState(.5),[ce,U]=a.useState(!1),D=a.useCallback((ne,k)=>{const le=E+ne,G=new CustomEvent(le,{detail:k});document.dispatchEvent(G)},[E]),J=Ho(),R=Uo(),B=Bo(),ae=a.useCallback(async ne=>{try{const k={instance_id:B,browser_id:J,session_id:R,from_url:window.location.href},le={...ne,timestamp:new Date().toISOString(),instance:k};if(b){console.log("[DRY RUN] AnalyticsEvent:",le);return}const G=w+ne.type,Me=new CustomEvent(G,{detail:le});if(document.dispatchEvent(Me),y||A){const Ue="POST",He=new Headers;m||(He.append("Content-Type","application/json"),He.append("Cache-Control","no-cache"),C&&He.append("Authorization",`Bearer ${C}`));const ge=JSON.stringify(le),c=[];y&&c.push(fetch(y,{method:Ue,headers:He,body:ge})),A&&c.push(qo({payload:le,compositionUrl:t}));const p=await Promise.allSettled(c);if(S)for(const Q of p)Q.status==="rejected"&&console.error("Analytics request failed:",Q.reason)}}catch(k){if(!S)return;console.error("Error while sending analytics event:",k)}},[w,y,C,m,b,S,B,J,R,t,A]),[O]=a.useState({type:"load",config:{composition_url:t,integration:s,max_items_shown:i,hide_categories_nav:f,infinite_carrousel:u,permanent_gallery:d,media_load_strategy:x,min_media_width:e,preload_range:_,auto_load_360:N,auto_load_interior_360:L,categories_filter:h,extend_behavior:o,event_prefix:E,demo_spin:P,reverse_360:T}});a.useEffect(()=>{const ne=setTimeout(()=>ae(O),0);return()=>clearTimeout(ne)},[ae,O]),a.useEffect(()=>{if(ce){q(1);return}if(!H.current)return;const ne=H.current,k=()=>{const le=window.innerWidth,G=ne.clientWidth;q(G/le)};return k(),addEventListener("resize",k),()=>{removeEventListener("resize",k)}},[ce]),a.useEffect(()=>{if(o!=="full_screen")return;const ne=H.current;if(!ne)throw new Error("Wrapper not found");const k=()=>{const{fullscreenElement:le}=document;U(le===ne||le?.localName===Ct)};return document.addEventListener("fullscreenchange",k),()=>{document.removeEventListener("fullscreenchange",k)}},[o]);const te=a.useCallback(async()=>{const ne=H.current;if(!ne)throw new Error("Wrapper not found");try{return await ne.requestFullscreen(),!0}catch{return!1}},[]),K=a.useCallback(async()=>{try{return await document.exitFullscreen(),!0}catch{return!1}},[]);return r.jsx(dn,{compositionUrl:t,integration:s,hideCategoriesNav:f,infiniteCarrousel:u,permanentGallery:d,maxItemsShown:i,mediaLoadStrategy:x,minMediaWidth:e,maxMediaWidth:M,preloadRange:_,categoriesFilter:h,autoLoad360:N,autoLoadInterior360:L,extendBehavior:o,demoSpin:P,reverse360:T,spinCursor:$,themeConfig:V,emitEvent:D,emitAnalyticsEvent:ae,playerInViewportWidthRatio:j,isFullScreen:ce,requestFullscreen:te,exitFullscreen:K,...s?Oo:{},children:r.jsxs(pn,{children:[r.jsx("div",{ref:H,className:"select-none text-foreground",style:{"--background":"var(--cc-webplayer-background, 0 0% 100%)","--details-background":"var(--cc-webplayer-details-background, 216 47% 11%)","--details-text":"var(--cc-webplayer-details-text, 0 0% 100%)","--foreground":"var(--cc-webplayer-foreground, 240 10% 3.9%)","--primary":"var(--cc-webplayer-primary, 216 100% 52%)","--primary-foreground":"var(--cc-webplayer-primary-foreground, var(--background))","--primary-light":"var(--cc-webplayer-primary-light, var(--primary))","--neutral":"var(--cc-webplayer-neutral, 0 0% 39%)","--neutral-foreground":"var(--cc-webplayer-neutral-foreground, var(--foreground))","--radius-ui":"var(--cc-webplayer-radius-ui, 16px)","--radius-carrousel":"var(--cc-webplayer-radius-carrousel, 0)","--radius-gallery":"var(--cc-webplayer-radius-gallery, 0)","--hotspot-damage-color":"hsl(var(--cc-webplayer-hotspot-damage-color, 37 89% 52%))","--hotspot-feature-color":"hsl(var(--cc-webplayer-hotspot-feature-color, var(--primary)))"},children:r.jsx(Do,{})}),Y]})})},$o=({children:t,index:s,thumbnailSrc:i})=>{const{registerCustomMedia:f,unregisterCustomMedia:u}=dt();return a.useEffect(()=>{if(!t)return;const d=f({Media:t,index:s,thumbnailSrc:i});return()=>{u(d)}},[t,u,s,f,i]),null},Jo=t=>Ut()?r.jsx($o,{...t}):r.jsx("slot",{}),Qo=({name:t,children:s})=>{const{registerIconConfig:i,unregisterIconConfig:f}=dt();return a.useEffect(()=>{if(s)return i(t,{Icon:s}),()=>{f(t)}},[s,t,i,f]),null},e2=t=>Ut()?r.jsx(Qo,{...t}):r.jsx("slot",{}),t2=`*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\\!container{width:100%!important}.container{width:100%}@media(min-width:1280px){.\\!container{max-width:1280px!important}.container{max-width:1280px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\\!pointer-events-none{pointer-events:none!important}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.\\!absolute{position:absolute!important}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-x-1{left:4px;right:4px}.inset-y-1{top:4px;bottom:4px}.-left-px{left:-1px}.-right-px{right:-1px}.bottom-0{bottom:0}.bottom-1{bottom:4px}.left-0{left:0}.left-1{left:4px}.left-1\\/2{left:50%}.left-\\[-5px\\]{left:-5px}.right-0{right:0}.right-1{right:4px}.right-2{right:8px}.right-\\[-5px\\]{right:-5px}.top-0{top:0}.top-1{top:4px}.top-1\\/2{top:50%}.top-2{top:8px}.top-px{top:1px}.-z-10{z-index:-10}.-z-20{z-index:-20}.z-1{z-index:1}.z-10,.z-hotspot{z-index:10}.z-overlay{z-index:30}.z-zoomed-image{z-index:20}.col-start-3{grid-column-start:3}.mx-1{margin-left:4px;margin-right:4px}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:8px;margin-bottom:8px}.-ml-px{margin-left:-1px}.-mt-px{margin-top:-1px}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-\\[4\\/3\\]{aspect-ratio:4/3}.aspect-square{aspect-ratio:1 / 1}.size-1{width:4px;height:4px}.size-12{width:48px;height:48px}.size-20{width:80px;height:80px}.size-4{width:16px;height:16px}.size-5{width:20px;height:20px}.size-7{width:28px;height:28px}.size-8{width:32px;height:32px}.size-full{width:100%;height:100%}.h-1{height:4px}.h-10{height:40px}.h-20{height:80px}.h-3\\/4{height:75%}.h-5{height:20px}.h-8{height:32px}.h-\\[15\\%\\]{height:15%}.h-\\[85\\%\\]{height:85%}.h-full{height:100%}.h-px{height:1px}.max-h-\\[50\\%\\]{max-height:50%}.min-h-0{min-height:0}.min-h-\\[15\\%\\]{min-height:15%}.w-12{width:48px}.w-3\\/5{width:60%}.w-8{width:32px}.w-\\[calc\\(100\\%\\+1024px\\)\\]{width:calc(100% + 1024px)}.w-\\[calc\\(100\\%\\+2px\\)\\]{width:calc(100% + 2px)}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0}.max-w-60{max-width:240px}.max-w-\\[1600px\\]{max-width:1600px}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.origin-top-left{transform-origin:top left}.-translate-x-1\\.5{--tw-translate-x: -6px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\\.5{--tw-translate-x: 6px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-scale-x-100{--tw-scale-x: -1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes hotspot-ping{0%{transform:scale(0)}25%{opacity:1}75%,to{transform:scale(1.5);opacity:0}}.animate-hotspot-ping{animation:hotspot-ping 3s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:1}0%,to{opacity:0}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-rotation{animation:rotation 1s linear infinite}.cursor-auto{cursor:auto}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-move{cursor:move}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-\\[auto\\,1fr\\,auto\\]{grid-template-columns:auto 1fr auto}.grid-cols-\\[repeat\\(var\\(--max-items\\)\\,1fr\\)\\]{grid-template-columns:repeat(var(--max-items),1fr)}.flex-col{flex-direction:column}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-1\\.5{gap:6px}.gap-4{gap:16px}.gap-x-1{-moz-column-gap:4px;column-gap:4px}.gap-x-2{-moz-column-gap:8px;column-gap:8px}.gap-x-4{-moz-column-gap:16px;column-gap:16px}.gap-y-1{row-gap:4px}.gap-y-2{row-gap:8px}.gap-y-4{row-gap:16px}.space-x-0\\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2px * var(--tw-space-x-reverse));margin-left:calc(2px * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(4px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4px * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(8px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(8px * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-scroll{overflow-x:scroll}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-carrousel{border-radius:var(--radius-carrousel)}.rounded-full{border-radius:9999px}.rounded-gallery{border-radius:var(--radius-gallery)}.rounded-ui{border-radius:var(--radius-ui)}.rounded-ui-md{border-radius:calc(var(--radius-ui) + 2px)}.rounded-ui-sm{border-radius:calc(var(--radius-ui) - 2px)}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-t-full{border-top-left-radius:9999px;border-top-right-radius:9999px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-bl-\\[10px\\]{border-bottom-left-radius:10px}.rounded-bl-\\[8px\\]{border-bottom-left-radius:8px}.rounded-bl-full{border-bottom-left-radius:9999px}.rounded-br-\\[10px\\]{border-bottom-right-radius:10px}.rounded-br-\\[8px\\]{border-bottom-right-radius:8px}.rounded-br-full{border-bottom-right-radius:9999px}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-background{border-color:hsl(var(--background))}.border-foreground{border-color:hsl(var(--foreground))}.border-primary{border-color:hsl(var(--primary))}.border-b-transparent{border-bottom-color:transparent}.bg-background{background-color:hsl(var(--background))}.bg-background\\/25{background-color:hsl(var(--background) / .25)}.bg-background\\/50{background-color:hsl(var(--background) / .5)}.bg-background\\/60{background-color:hsl(var(--background) / .6)}.bg-foreground{background-color:hsl(var(--foreground))}.bg-foreground\\/10{background-color:hsl(var(--foreground) / .1)}.bg-foreground\\/25{background-color:hsl(var(--foreground) / .25)}.bg-foreground\\/30{background-color:hsl(var(--foreground) / .3)}.bg-foreground\\/35{background-color:hsl(var(--foreground) / .35)}.bg-foreground\\/40{background-color:hsl(var(--foreground) / .4)}.bg-foreground\\/50{background-color:hsl(var(--foreground) / .5)}.bg-foreground\\/60{background-color:hsl(var(--foreground) / .6)}.bg-foreground\\/65{background-color:hsl(var(--foreground) / .65)}.bg-foreground\\/75{background-color:hsl(var(--foreground) / .75)}.bg-navy{background-color:hsl(var(--details-background))}.bg-neutral\\/50{background-color:hsl(var(--neutral) / .5)}.bg-primary{background-color:hsl(var(--primary))}.bg-primary-foreground{background-color:hsl(var(--primary-foreground))}.bg-primary\\/50{background-color:hsl(var(--primary) / .5)}.bg-transparent{background-color:transparent}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-foreground{--tw-gradient-from: hsl(var(--foreground)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--foreground) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\\.5{padding:2px}.p-1{padding:4px}.p-2{padding:8px}.p-4{padding:16px}.px-1\\.5{padding-left:6px;padding-right:6px}.px-2{padding-left:8px;padding-right:8px}.py-0\\.5{padding-top:2px;padding-bottom:2px}.py-1{padding-top:4px;padding-bottom:4px}.py-1\\.5{padding-top:6px;padding-bottom:6px}.pl-2\\.5{padding-left:10px}.pl-5{padding-left:20px}.pl-6{padding-left:24px}.pr-12{padding-right:48px}.pr-2\\.5{padding-right:10px}.pr-5{padding-right:20px}.pr-6{padding-right:24px}.pt-8{padding-top:32px}.text-2xl{font-size:24px;line-height:32px}.text-\\[clamp\\(0\\.625rem\\,0\\.4rem\\+1\\.5cqw\\,0\\.875rem\\)\\]{font-size:clamp(.625rem,.4rem + 1.5cqw,.875rem)}.text-\\[clamp\\(0\\.75rem\\,0\\.45rem\\+1\\.8cqw\\,1\\.125rem\\)\\]{font-size:clamp(.75rem,.45rem + 1.8cqw,1.125rem)}.text-\\[clamp\\(0\\.75rem\\,0\\.55rem\\+1\\.3cqw\\,0\\.875rem\\)\\]{font-size:clamp(.75rem,.55rem + 1.3cqw,.875rem)}.text-\\[clamp\\(0\\.875rem\\,0\\.6rem\\+1\\.6cqw\\,1\\.125rem\\)\\]{font-size:clamp(.875rem,.6rem + 1.6cqw,1.125rem)}.text-sm{font-size:14px;line-height:20px}.text-xl{font-size:20px;line-height:28px}.text-xs{font-size:12px;line-height:16px}.font-bold{font-weight:700}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-tight{line-height:1.25}.text-background{color:hsl(var(--background))}.text-background\\/75{color:hsl(var(--background) / .75)}.text-foreground{color:hsl(var(--foreground))}.text-foreground\\/65{color:hsl(var(--foreground) / .65)}.text-foreground\\/70{color:hsl(var(--foreground) / .7)}.text-neutral-foreground{color:hsl(var(--neutral-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-white{color:hsl(var(--details-text))}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[width\\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-radius{transition-property:border-radius;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-details{transition-duration:.35s}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}.\\[mask-image\\:linear-gradient\\(to_left\\,transparent_0px\\,black_4px\\,black_calc\\(100\\%-4px\\)\\,transparent_100\\%\\)\\]{-webkit-mask-image:linear-gradient(to left,transparent 0px,black 4px,black calc(100% - 4px),transparent 100%);mask-image:linear-gradient(to left,transparent 0px,black 4px,black calc(100% - 4px),transparent 100%)}.pnlm-load-button,.pnlm-load-box{display:none!important}.pnlm-container{background-image:none!important}.pnlm-about-msg{width:0;height:0;padding:0;visibility:hidden}.pnlm-about-msg a{display:none;visibility:hidden}.\\*\\:pointer-events-auto>*{pointer-events:auto}.\\*\\:size-full>*{width:100%;height:100%}.\\*\\:snap-start>*{scroll-snap-align:start}.\\*\\:snap-always>*{scroll-snap-stop:always}.\\*\\:object-cover>*{-o-object-fit:cover;object-fit:cover}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:inset-0:after{content:var(--tw-content);inset:0}.after\\:rounded-gallery:after{content:var(--tw-content);border-radius:var(--radius-gallery)}.after\\:border-2:after{content:var(--tw-content);border-width:2px}.after\\:border-primary:after{content:var(--tw-content);border-color:hsl(var(--primary))}.after\\:opacity-0:after{content:var(--tw-content);opacity:0}.after\\:opacity-100:after{content:var(--tw-content);opacity:1}.after\\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\\:z-hotspot-hover:hover{z-index:11}.hover\\:bg-foreground\\/25:hover{background-color:hsl(var(--foreground) / .25)}.hover\\:bg-primary\\/25:hover{background-color:hsl(var(--primary) / .25)}.hover\\:bg-primary\\/30:hover{background-color:hsl(var(--primary) / .3)}.hover\\:bg-transparent:hover{background-color:transparent}.hover\\:opacity-80:hover{opacity:.8}.hover\\:after\\:opacity-70:hover:after{content:var(--tw-content);opacity:.7}.disabled\\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\\:pointer-events-auto{pointer-events:auto}.group:hover .group-hover\\:-translate-x-1{--tw-translate-x: -4px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\\:translate-x-1{--tw-translate-x: 4px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\\/volume:hover .group-hover\\/volume\\:opacity-100{opacity:1}.group\\/volume:hover .group-hover\\/volume\\:opacity-50{opacity:.5}.group:hover .group-hover\\:opacity-100{opacity:1}@media((orientation:portrait)and (max-width:767px))or ((orientation:landscape)and (max-width:1023px)){.max-small\\:hidden{display:none}}@media((orientation:portrait)and (min-width:768px))or ((orientation:landscape)and (min-width:1024px)){.small\\:inset-x-2{left:8px;right:8px}.small\\:inset-y-2{top:8px;bottom:8px}.small\\:bottom-2{bottom:8px}.small\\:left-2{left:8px}.small\\:right-2{right:8px}.small\\:right-4{right:16px}.small\\:top-2{top:8px}.small\\:top-4{top:16px}.small\\:my-4{margin-top:16px;margin-bottom:16px}.small\\:hidden{display:none}.small\\:h-12{height:48px}.small\\:h-28{height:112px}.small\\:max-w-64{max-width:256px}.small\\:gap-2{gap:8px}.small\\:gap-x-2{-moz-column-gap:8px;column-gap:8px}.small\\:gap-y-2{row-gap:8px}.small\\:gap-y-4{row-gap:16px}.small\\:space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(4px * var(--tw-space-x-reverse));margin-left:calc(4px * calc(1 - var(--tw-space-x-reverse)))}.small\\:p-3{padding:12px}.small\\:px-2{padding-left:8px;padding-right:8px}.small\\:py-1{padding-top:4px;padding-bottom:4px}.small\\:pl-3{padding-left:12px}.small\\:pl-6{padding-left:24px}.small\\:pl-7{padding-left:28px}.small\\:pr-3{padding-right:12px}.small\\:pr-6{padding-right:24px}.small\\:pr-7{padding-right:28px}.small\\:text-sm{font-size:14px;line-height:20px}.small\\:font-bold{font-weight:700}}@media(min-width:1280px){.large\\:h-20{height:80px}.large\\:h-3\\/5{height:60%}.large\\:max-w-72{max-width:288px}.large\\:gap-4{gap:16px}.large\\:p-2{padding:8px}.large\\:p-4{padding:16px}.large\\:text-lg{font-size:18px;line-height:28px}.large\\:text-sm{font-size:14px;line-height:20px}}.\\[\\&_\\*\\]\\:size-4 *{width:16px;height:16px}.pnlm-container{margin:0;padding:0;overflow:hidden;position:relative;cursor:default;width:100%;height:100%;font-family:Helvetica,Nimbus Sans L,Liberation Sans,Arial,sans-serif;background:#f4f4f4 url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='67'%20height='100'%20viewBox='0%200%2067%20100'%3e%3cpath%20stroke='%23ccc'%20fill='none'%20d='M33.5,50,0,63,33.5,75,67,63,33.5,50m-33.5-50,67,25m-0.5,0,0,75m-66.5-75,67-25m-33.5,75,0,25m0-100,0,50'/%3e%3c/svg%3e") repeat;-webkit-user-select:none;-moz-user-select:none;-o-user-select:none;user-select:none;outline:0;line-height:1.4;contain:content;touch-action:none}.pnlm-container *{box-sizing:content-box}.pnlm-ui{position:absolute;width:100%;height:100%;z-index:1}.pnlm-grab{cursor:grab;cursor:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20height='26'%20width='26'%3e%3cpath%20stroke='%23000'%20stroke-width='1px'%20fill='%23fff'%20d='m15.3%2020.5s6.38-6.73%204.64-8.24-3.47%201.01-3.47%201.01%203.61-5.72%201.41-6.49c-2.2-0.769-3.33%204.36-3.33%204.36s0.873-5.76-1.06-5.76-1.58%205.39-1.58%205.39-0.574-4.59-2.18-4.12c-1.61%200.468-0.572%205.51-0.572%205.51s-1.58-4.89-2.93-3.79c-1.35%201.11%200.258%205.25%200.572%206.62%200.836%202.43%202.03%202.94%202.17%205.55'/%3e%3c/svg%3e") 12 8,default}.pnlm-grabbing{cursor:grabbing;cursor:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20height='26'%20width='26'%3e%3cpath%20stroke='%23000'%20stroke-width='1px'%20fill='%23fff'%20d='m15.3%2020.5s5.07-5.29%203.77-6.74c-1.31-1.45-2.53%200.14-2.53%200.14s2.74-3.29%200.535-4.06c-2.2-0.769-2.52%201.3-2.52%201.3s0.81-2.13-1.12-2.13-1.52%201.77-1.52%201.77-0.261-1.59-1.87-1.12c-1.61%200.468-0.874%202.17-0.874%202.17s-0.651-1.55-2-0.445c-1.35%201.11-0.68%202.25-0.365%203.62%200.836%202.43%202.03%202.94%202.17%205.55'/%3e%3c/svg%3e") 12 8,default}.pnlm-sprite{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='26'%20height='208'%3e%3ccircle%20fill-opacity='.78'%20cy='117'%20cx='13'%20r='11'%20fill='%23fff'/%3e%3ccircle%20fill-opacity='.78'%20cy='143'%20cx='13'%20r='11'%20fill='%23fff'/%3e%3ccircle%20cy='169'%20cx='13'%20r='7'%20fill='none'%20stroke='%23000'%20stroke-width='2'/%3e%3ccircle%20cy='195'%20cx='13'%20r='7'%20fill='none'%20stroke='%23000'%20stroke-width='2'/%3e%3ccircle%20cx='13'%20cy='195'%20r='2.5'/%3e%3cpath%20d='m5%2083v6h2v-4h4v-2zm10%200v2h4v4h2v-6zm-5%205v6h6v-6zm-5%205v6h6v-2h-4v-4zm14%200v4h-4v2h6v-6z'/%3e%3cpath%20d='m13%20110a7%207%200%200%200%20-7%207%207%207%200%200%200%207%207%207%207%200%200%200%207%20-7%207%207%200%200%200%20-7%20-7zm-1%203h2v2h-2zm0%203h2v5h-2z'/%3e%3cpath%20d='m5%2057v6h2v-4h4v-2zm10%200v2h4v4h2v-6zm-10%2010v6h6v-2h-4v-4zm14%200v4h-4v2h6v-6z'/%3e%3cpath%20d='m17%2038v2h-8v-2z'/%3e%3cpath%20d='m12%209v3h-3v2h3v3h2v-3h3v-2h-3v-3z'/%3e%3cpath%20d='m13%20136-6.125%206.125h4.375v7.875h3.5v-7.875h4.375z'/%3e%3cpath%20d='m10.428%20173.33v-5.77l5-2.89v5.77zm1-1.73%203-1.73-3.001-1.74z'/%3e%3c/svg%3e")}.pnlm-container:fullscreen{height:100%!important;width:100%!important;position:static!important}.pnlm-render-container{cursor:inherit;position:absolute;height:100%;width:100%}.pnlm-controls{margin-top:4px;background-color:#fff;border:1px solid #999;border-color:#0006;border-radius:3px;cursor:pointer;z-index:2;transform:translateZ(9999px)}.pnlm-control:hover{background-color:#f8f8f8}.pnlm-controls-container{position:absolute;top:0;left:4px;z-index:1}.pnlm-zoom-controls{width:26px;height:52px}.pnlm-zoom-in{width:100%;height:50%;position:absolute;top:0;border-radius:3px 3px 0 0}.pnlm-zoom-out{width:100%;height:50%;position:absolute;bottom:0;background-position:0 -26px;border-top:1px solid #ddd;border-top-color:#0000001a;border-radius:0 0 3px 3px}.pnlm-fullscreen-toggle-button,.pnlm-orientation-button,.pnlm-hot-spot-debug-indicator{width:26px;height:26px}.pnlm-hot-spot-debug-indicator{position:absolute;top:50%;left:50%;width:26px;height:26px;margin:-13px 0 0 -13px;background-color:#ffffff80;border-radius:13px;display:none}.pnlm-orientation-button-inactive{background-position:0 -156px}.pnlm-orientation-button-active{background-position:0 -182px}.pnlm-fullscreen-toggle-button-inactive{background-position:0 -52px}.pnlm-fullscreen-toggle-button-active{background-position:0 -78px}.pnlm-panorama-info{position:absolute;bottom:4px;background-color:#000000b3;border-radius:0 3px 3px 0;padding-right:10px;color:#fff;text-align:left;display:none;z-index:2;transform:translateZ(9999px)}.pnlm-title-box{position:relative;font-size:20px;display:table;padding-left:5px;margin-bottom:3px}.pnlm-author-box{position:relative;font-size:12px;display:table;padding-left:5px}.pnlm-load-box{position:absolute;top:50%;left:50%;width:200px;height:150px;margin:-75px 0 0 -100px;background-color:#000000b3;border-radius:3px;text-align:center;font-size:20px;display:none;color:#fff}.pnlm-load-box p{margin:20px 0}.pnlm-lbox{position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;display:none}.pnlm-loading{animation-duration:1.5s;-webkit-animation-duration:1.5s;animation-name:pnlm-mv;-webkit-animation-name:pnlm-mv;animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite;animation-timing-function:linear;-webkit-animation-timing-function:linear;height:10px;width:10px;background-color:#fff;position:relative}@keyframes pnlm-mv{0%{left:0;top:0}25%{left:10px;top:0}50%{left:10px;top:10px}75%{left:0;top:10px}to{left:0;top:0}}.pnlm-load-button{position:absolute;top:50%;left:50%;width:200px;height:100px;margin:-50px 0 0 -100px;background-color:#000000b3;border-radius:3px;text-align:center;font-size:20px;display:table;color:#fff;cursor:pointer}.pnlm-load-button:hover{background-color:#000c}.pnlm-load-button p{display:table-cell;vertical-align:middle}.pnlm-info-box{font-size:15px;position:absolute;top:50%;left:50%;width:200px;height:150px;margin:-75px 0 0 -100px;background-color:#000;border-radius:3px;display:table;text-align:center;color:#fff;table-layout:fixed}.pnlm-info-box a{color:#fff;word-wrap:break-word;overflow-wrap:break-word}.pnlm-info-box p{display:table-cell;vertical-align:middle;padding:0 5px}.pnlm-error-msg{display:none}.pnlm-about-msg{font-size:11px;line-height:11px;color:#fff;padding:5px 8px;background:#000000b3;border-radius:3px;position:absolute;top:50px;left:50px;display:none;opacity:0;transition:opacity .3s ease-in-out;z-index:1}.pnlm-about-msg a:link,.pnlm-about-msg a:visited{color:#fff}.pnlm-about-msg a:hover,.pnlm-about-msg a:active{color:#eee}.pnlm-hotspot-base{position:absolute;visibility:hidden;cursor:default;vertical-align:middle;top:0;z-index:1}.pnlm-hotspot{height:26px;width:26px;border-radius:13px}.pnlm-hotspot:hover{background-color:#fff3}.pnlm-hotspot.pnlm-info{background-position:0 -104px}.pnlm-hotspot.pnlm-scene{background-position:0 -130px}div.pnlm-tooltip span{visibility:hidden;position:absolute;border-radius:3px;background-color:#000000b3;color:#fff;text-align:center;max-width:200px;padding:5px 10px;margin-left:-220px;cursor:default}div.pnlm-tooltip:hover span{visibility:visible}div.pnlm-tooltip:hover span:after{content:"";position:absolute;width:0;height:0;border-width:10px;border-style:solid;border-color:rgba(0,0,0,.7) transparent transparent transparent;bottom:-20px;left:-10px;margin:0 50%}.pnlm-compass{position:absolute;width:50px;height:50px;right:4px;bottom:4px;border-radius:25px;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20height='50'%20width='50'%3e%3cpath%20d='m24.5078%206-3.2578%2018h7.5l-3.25781-18h-0.984376zm-3.2578%2020%203.2578%2018h0.9844l3.2578-18h-7.5zm1.19531%200.9941h5.10938l-2.5547%2014.1075-2.5547-14.1075z'/%3e%3c/svg%3e");cursor:default;display:none}.pnlm-world{position:absolute;left:50%;top:50%}.pnlm-face{position:absolute;transform-origin:0 0 0}.pnlm-dragfix,.pnlm-preview-img{position:absolute;height:100%;width:100%}.pnlm-preview-img{background-size:cover;background-position:center}.pnlm-lbar{width:150px;margin:0 auto;border:#fff 1px solid;height:6px}.pnlm-lbar-fill{background:#fff;height:100%;width:0}.pnlm-lmsg{font-size:12px}.pnlm-fade-img{position:absolute;top:0;left:0}.pnlm-pointer{cursor:pointer}#textInfo .tooltip-content{font-size:1.6em;position:absolute;left:-70px;bottom:80px;width:200px;pointer-events:none;background-color:#333;color:#fff;line-height:1.2em;padding:.8em;opacity:0;transform-origin:50% calc(100% + 6em);transform:rotate3d(0,0,1,15deg);transition:opacity .5s,transform .5s;transition-timing-function:ease,cubic-bezier(.17,.67,.4,1.39)}#textInfo:hover{z-index:3}#textInfo:hover .tooltip-content{opacity:1;pointer-events:all;transform:translateZ(0) rotate3d(0,0,0,0)}#textInfo .hotspot{cursor:pointer;box-sizing:border-box}#textInfo .hotspot .out:before{speak:none;font-size:48px;line-height:90px;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;display:block;-webkit-font-smoothing:antialiased}#textInfo .hotspot .out{width:60px;height:60px;border-radius:50%;border:5px solid rgba(255,255,255,.8);transition:transform ease-out .1s,border .2s;box-sizing:border-box}#textInfo .hotspot .in{width:40px;height:40px;position:absolute;top:10px;left:10px;background-color:#fffc;border-radius:50%;transition:transform ease-out .1s,background .2s}#textInfo .hotspot .out:after{top:0;left:0;padding:0;z-index:-1;box-shadow:0 0 0 2px #ffffff1a;opacity:0;pointer-events:none;position:absolute;width:100%;height:100%;border-radius:50%;content:"";box-sizing:content-box;transform:scale(.9)}#textInfo .hotspot:hover .out{border:5px solid rgba(255,255,255,1);transform:scale(.9);color:#fff}#textInfo .hotspot:hover .in{background-color:#fff;transform:scale(.8)}#textInfo .hotspot:hover .out:after{animation:sonarEffect 1.2s ease-out}@keyframes sonarEffect{0%{opacity:.5}20%{opacity:.8;box-shadow:0 0 0 2px #ffffff1a,0 0 10px 10px #25aae1cc,0 0 0 10px #ffffff80}to{box-shadow:0 0 0 2px #ffffff1a,0 0 10px 10px #25aae1cc,0 0 0 10px #ffffff80;transform:scale(1.5);opacity:0}}`;function r2(t){return t.replace(/([a-z0-9])([A-Z])/g,(s,i,f)=>`${i}-${f.toLowerCase()}`)}function Wt(t){return Object.entries(t).reduce((s,[i,f])=>{if(f!==void 0){const u=r2(i);s[u]=f.toString()}return s},{})}const n2=t=>r.jsxs(r.Fragment,{children:[r.jsx("style",{children:t2}),r.jsx(Ko,{...t})]}),o2=t=>Wt(t),s2=t=>Wt(t),a2=t=>Wt(t),i2=({onCompositionLoading:t,onCompositionLoaded:s,onCompositionLoadError:i,onItemChange:f,onExtendModeOn:u,onExtendModeOff:d,onHotspotsOn:x,onHotspotsOff:e,onGalleryOpen:M,onGalleryClose:_,onAnalyticsLoad:N,onAnalyticsDisplay:L,onAnalyticsInteraction:h,onAnalyticsError:o,className:E,style:P={},children:T,...w})=>{const y=a.useMemo(()=>{const C=o2(w);return E&&Object.assign(C,{class:E}),C},[E,w]);return a.useEffect(()=>{const C=w.eventPrefix??Ot,m=w.analyticsEventPrefix??ir,b=A=>`${C}${A}`,S=A=>`${m}${A}`,$={[St]:t,[Rt]:s,[Pt]:i,[Nt]:f,[jt]:u,[At]:d,[xt]:x,[wt]:e,[zt]:M,[Dt]:_},I={[rr]:N,[nr]:L,[or]:h,[sr]:o},V=new Map,Y=new Map;return Object.entries($).forEach(([A,H])=>{if(!H)return;const j=b(A),q=ce=>H(ce.detail);V.set(j,q),document.addEventListener(j,q)}),Object.entries(I).forEach(([A,H])=>{if(!H)return;const j=S(A),q=ce=>H(ce.detail);Y.set(j,q),document.addEventListener(j,q)}),()=>{V.forEach((A,H)=>{document.removeEventListener(H,A)}),Y.forEach((A,H)=>{document.removeEventListener(H,A)})}},[w.eventPrefix,t,s,i,f,u,d,x,e,M,_,w.analyticsEventPrefix,N,L,h,o]),r.jsx("cc-webplayer",{style:{display:"block",...P},...y,children:T})},l2=({children:t,...s})=>{const i=s2(s);return r.jsx("cc-webplayer-custom-media",{...i,children:t})},c2=({children:t,...s})=>{const i=a2(s);return r.jsx("cc-webplayer-icon",{...i,children:t})};exports.ANALYTICS_EVENT_DISPLAY=nr;exports.ANALYTICS_EVENT_ERROR=sr;exports.ANALYTICS_EVENT_INTERACTION=or;exports.ANALYTICS_EVENT_LOAD=rr;exports.DEFAULT_EVENT_PREFIX=Ot;exports.EVENT_COMPOSITION_LOADED=Rt;exports.EVENT_COMPOSITION_LOADING=St;exports.EVENT_COMPOSITION_LOAD_ERROR=Pt;exports.EVENT_EXTEND_MODE_OFF=At;exports.EVENT_EXTEND_MODE_ON=jt;exports.EVENT_GALLERY_CLOSE=Dt;exports.EVENT_GALLERY_OPEN=zt;exports.EVENT_HOTSPOTS_OFF=wt;exports.EVENT_HOTSPOTS_ON=xt;exports.EVENT_ITEM_CHANGE=Nt;exports.WEB_PLAYER_CUSTOM_MEDIA_WC_TAG=_t;exports.WEB_PLAYER_ICON_WC_TAG=Tt;exports.WEB_PLAYER_WC_TAG=Ct;exports.WebPlayer=i2;exports.WebPlayerCustomMedia=Jo;exports.WebPlayerCustomMedia$1=l2;exports.WebPlayerIcon=e2;exports.WebPlayerIcon$1=c2;exports.WebPlayerWithInjectedStyles=n2;exports.checkCustomElementsDefinition=ln;exports.generateCompositionUrl=rn;
|