efficient-storefront-blocks 0.42.0 → 0.43.0

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.
@@ -0,0 +1,255 @@
1
+ import{A as $o,B as Rt,Ba as Ua,C as At,Ca as su,Da as iu,E as Kd,H as Or,J as Vd,K as ps,M as Yd,N as Xd,P as Zd,Q as ms,S as Qd,T as to,U as lt,V as Jd,W as Io,X as Ga,Z as eu,_ as xs,a as Md,ba as ou,c as Hd,ca as Is,d as no,e as Lt,ea as hs,f as Eo,g as Wa,h as Gd,ia as tu,l as Lr,n as ds,oa as st,qa as ru,s as Ud,sa as au,t as $d,u as us,ua as nu,v as Qe,w as qd,x as jd,y as Ot,ya as Z,z as xo,za as lu}from"./chunk-MRRGYKU2.js";import{a as Nd,c as ao,l as zd,m as Pr,n as Wd,q as fu,u as gs}from"./chunk-UBIWN5OB.js";var $a=null,hC="en",du=null;function LM(e,o,t){$a=e??null,hC=o||"en",du=t??null}function j(){return du}function uu(){return $a}function cu(e,o){return o?e.replace(/\{([A-Za-z][A-Za-z0-9_]*)\}/g,(t,r)=>Object.prototype.hasOwnProperty.call(o,r)?String(o[r]):t):e}function l(e,o){let t=$a?$a[e]:void 0;if(typeof t=="function"){try{let r=t(o??{});if(typeof r=="string"&&r)return r}catch{}return cu(e,o)}return cu(typeof t=="string"&&t?t:e,o)}function it(e,o,t,r){return l(t===1?e:o,{...r,n:t})}import{EaselSessionProvider as AM,useEaselSession as Ae}from"efficient-easel/screen/lib/session-context";import{hostLoadRefusalOf as gC,hostUnreachableMessage as bC,isBackendError as yC,provideHostFailures as SC,readHostFailure as CC,STATUS_UNREACHABLE as vC,WebsiteBackendError as bs}from"efficient-easel/screen/lib/backend-error";import{createEaselHost as zM,DETACHED_EASEL_HOST as WM,EaselHostContext as GM,EaselHostProvider as UM,useEaselHost as Bt}from"efficient-easel/screen/lib/host";function Me(e,o){if(typeof e=="string")return e||o;if(e&&typeof e=="object"&&"text"in e){let t=e.text;return typeof t=="string"&&t?t:o}return o}function pu(e,o){return typeof e=="number"&&Number.isFinite(e)?e:o}function mu(e,o){return typeof e=="boolean"?e:o}function qa(e,o){if(!Array.isArray(e))return o;let t=e.map(r=>typeof r=="string"?r:Me(r?.text,"")).map(r=>r.trim()).filter(Boolean);return t.length?t:o}var xu="cart-drawer",KM="cart-drawer";var wC={kickerBadge:"",kickerText:"Your order",titleLead:"Your",titleAccent:"cart.",subtitleEmpty:"Empty for now.",subtitleOne:"One set in your cart.",subtitleMany:"{count} sets in your cart.",leadTimeValue:"",shipsToFallback:"",promises:[],emptyKicker:"No wheels yet",emptyBody:"Your cart is empty. Pick a wheel to get started."};function VM(e,o){return o===0?e.subtitleEmpty:o===1?e.subtitleOne:e.subtitleMany.replace("{count}",String(o))}function YM(e){let o=e??{},t=wC;return{kickerBadge:Me(o.kickerBadge,t.kickerBadge),kickerText:Me(o.kickerText,t.kickerText),titleLead:Me(o.titleLead,t.titleLead),titleAccent:Me(o.titleAccent,t.titleAccent),subtitleEmpty:Me(o.subtitleEmpty,t.subtitleEmpty),subtitleOne:Me(o.subtitleOne,t.subtitleOne),subtitleMany:Me(o.subtitleMany,t.subtitleMany),leadTimeValue:Me(o.leadTimeValue,t.leadTimeValue),shipsToFallback:Me(o.shipsToFallback,t.shipsToFallback),promises:qa(o.promises,t.promises),emptyKicker:Me(o.emptyKicker,t.emptyKicker),emptyBody:Me(o.emptyBody,t.emptyBody)}}var kC=["meta","eyebrow","heading","body","statName","statValue","formEyebrow","formHeading","formIntro","fieldLabel","option","finePrint","dismiss","doneHeading","doneBody"],QM={meta:"Meta line",eyebrow:"Eyebrow",heading:"Heading",body:"Body",statName:"Stat name",statValue:"Stat value",formEyebrow:"Form eyebrow",formHeading:"Form heading",formIntro:"Form intro",fieldLabel:"Field label",option:"Option",finePrint:"Fine print",dismiss:"Dismiss link",doneHeading:"Success heading",doneBody:"Success message"},TC={meta:"styleMeta",eyebrow:"styleEyebrow",heading:"styleHeading",body:"styleBody",statName:"styleStatName",statValue:"styleStatValue",formEyebrow:"styleFormEyebrow",formHeading:"styleFormHeading",formIntro:"styleFormIntro",fieldLabel:"styleFieldLabel",option:"styleOption",finePrint:"styleFinePrint",dismiss:"styleDismiss",doneHeading:"styleDoneHeading",doneBody:"styleDoneBody"},JM={meta:{font:"--pp-meta-font",size:"--pp-meta-size"},eyebrow:{font:"--pp-eyebrow-font",size:"--pp-eyebrow-size"},heading:{font:"--pp-heading-font",size:"--pp-heading-size"},body:{font:"--pp-body-font",size:"--pp-body-size"},statName:{font:"--pp-statname-font",size:"--pp-statname-size"},statValue:{font:"--pp-statvalue-font",size:"--pp-statvalue-size"},formEyebrow:{font:"--pp-formeyebrow-font",size:"--pp-formeyebrow-size"},formHeading:{font:"--pp-formheading-font",size:"--pp-formheading-size"},formIntro:{font:"--pp-formintro-font",size:"--pp-formintro-size"},fieldLabel:{font:"--pp-fieldlabel-font",size:"--pp-fieldlabel-size"},option:{font:"--pp-option-font",size:"--pp-option-size"},finePrint:{font:"--pp-fineprint-font",size:"--pp-fineprint-size"},dismiss:{font:"--pp-dismiss-font",size:"--pp-dismiss-size"},doneHeading:{font:"--pp-doneheading-font",size:"--pp-doneheading-size"},doneBody:{font:"--pp-donebody-font",size:"--pp-donebody-size"}};function FC(e){return typeof e=="string"&&Eo.includes(e)?e:null}function Iu(e){let o={};for(let t of kC){let r=FC(e[TC[t]]);r&&(o[t]=r)}return o}var _t="site-footer";var o2=_t,t2={desktop:!0,tablet:!0,mobile:!0},r2={desktop:!1,tablet:!1,mobile:!1},ys=1,hu=6,a2=Array.from({length:hu-ys+1},(e,o)=>ys+o),ja={desktop:6,tablet:3,mobile:2},EC={2:{desktop:2,tablet:2,mobile:1},3:{desktop:3,tablet:3,mobile:1},4:{desktop:4,tablet:2,mobile:2},5:{desktop:5,tablet:3,mobile:2},6:{desktop:6,tablet:3,mobile:2}},ft=e=>Math.min(Math.max(Math.round(e),ys),hu);function n2(e){if(typeof e=="number")return EC[ft(e)]??{desktop:ft(e),tablet:ft(e),mobile:ft(e)};if(e&&typeof e=="object"){let o=e;return{desktop:ft(o.desktop??ja.desktop),tablet:ft(o.tablet??ja.tablet),mobile:ft(o.mobile??ja.mobile)}}return{...ja}}var PC="subscribe-popup",d2="subscribe-popup";var LC=[PC,_t,xu];function yu(e){return LC.includes(e)}var OC=["delay","scroll","exit"],RC=["all","chosen"],AC=["visit","days","never"],BC=["right","left"],_C={min:0,max:60},DC={min:10,max:90},NC={min:1,max:90},Cs={metaLabel:"Meta label",issueLabel:"Label",issueNumber:"00",kicker:"Kicker",heading:`Main heading
2
+ *Highlight line*`,deck:"Add a sentence or two of supporting copy.",stats:[{label:"Label",value:"Value"},{label:"Label",value:"Value"},{label:"Label",value:"Value"},{label:"Label",value:"Value"}],formLabel:"Section label",formHeading:"Main heading *highlight*",formIntro:"Add a sentence or two of supporting copy.",firstNameLabel:"Field label",firstNamePlaceholder:"Placeholder",emailLabel:"Field label",emailPlaceholder:"Placeholder",interestsLabel:"Field label",interests:["Option one","Option two","Option three"],frequencyLabel:"Field label",frequencies:["Option one","Option two","Option three"],submitText:"Button label",finePrint:"Fine print",dismissText:"Dismiss link",emailInvalidText:"Enter a valid email address.",submitErrorText:"Could not subscribe right now. Please try again.",successHeading:"Main heading *highlight*",successBody:"Add a sentence or two of supporting copy \u2014 the {email} and {issue} tokens are substituted here.",keepBrowsingText:"Button label",autoOpen:!1,autoOpenDelaySec:15,formSlug:"",trigger:"delay",scrollPercent:50,showOn:"all",showOnPages:[],hideAfter:"days",hideDays:7,formSide:"right",valuePanelOnPhone:!1,sectionAccent:void 0,sectionCorners:void 0,sectionCornerSides:void 0,textStyles:{}},he=Me,MC=pu,gu=mu,Su=qa;function Ka(e,o,t){return typeof o=="string"&&e.includes(o)?o:t}function Ss(e,o,t){let r=MC(e,t);return Math.min(o.max,Math.max(o.min,Math.round(r)))}function HC(e){return typeof e.hideAfter=="string"?Ka(AC,e.hideAfter,Cs.hideAfter):e.oncePerSession===!0?"visit":e.oncePerSession===!1?"never":Cs.hideAfter}function zC(e){return Array.isArray(e)?e.map(o=>typeof o=="string"?o.trim():"").filter(Boolean).map(o=>o.startsWith("/")?o:`/${o}`):[]}function bu(e,o){if(e==null)return o;let t=r=>r.trim()?r:"";if(typeof e=="string")return t(e);if(typeof e=="object"&&"text"in e){let r=e.text;return typeof r=="string"?t(r):""}return o}function WC(e,o){return Array.isArray(e)?Su(e,[]):o}function GC(e,o){return Array.isArray(e)?e.map(t=>{let r=t??{};return{label:he(r.label,""),value:he(r.value,"")}}).filter(t=>t.label||t.value):o}function u2(e){let o=e??{},t=Cs;return{metaLabel:he(o.metaLabel,t.metaLabel),issueLabel:bu(o.issueLabel,t.issueLabel),issueNumber:bu(o.issueNumber,t.issueNumber),kicker:he(o.kicker,t.kicker),heading:he(o.heading,t.heading),deck:he(o.deck,t.deck),stats:GC(o.stats,t.stats),formLabel:he(o.formLabel,t.formLabel),formHeading:he(o.formHeading,t.formHeading),formIntro:he(o.formIntro,t.formIntro),firstNameLabel:he(o.firstNameLabel,t.firstNameLabel),firstNamePlaceholder:he(o.firstNamePlaceholder,t.firstNamePlaceholder),emailLabel:he(o.emailLabel,t.emailLabel),emailPlaceholder:he(o.emailPlaceholder,t.emailPlaceholder),interestsLabel:he(o.interestsLabel,t.interestsLabel),interests:Su(o.interests,t.interests),frequencyLabel:he(o.frequencyLabel,t.frequencyLabel),frequencies:WC(o.frequencies,t.frequencies),submitText:he(o.submitText,t.submitText),finePrint:he(o.finePrint,t.finePrint),dismissText:he(o.dismissText,t.dismissText),emailInvalidText:he(o.emailInvalidText,t.emailInvalidText),submitErrorText:he(o.submitErrorText,t.submitErrorText),successHeading:he(o.successHeading,t.successHeading),successBody:he(o.successBody,t.successBody),keepBrowsingText:he(o.keepBrowsingText,t.keepBrowsingText),formSlug:typeof o.formSlug=="string"?o.formSlug.trim():t.formSlug,autoOpen:gu(o.autoOpen,t.autoOpen),autoOpenDelaySec:Ss(o.autoOpenDelaySec,_C,t.autoOpenDelaySec),trigger:Ka(OC,o.trigger,t.trigger),scrollPercent:Ss(o.scrollPercent,DC,t.scrollPercent),showOn:Ka(RC,o.showOn,t.showOn),showOnPages:zC(o.showOnPages),hideAfter:HC(o),hideDays:Ss(o.hideDays,NC,t.hideDays),formSide:Ka(BC,o.formSide,t.formSide),valuePanelOnPhone:gu(o.valuePanelOnPhone,t.valuePanelOnPhone),sectionAccent:o.sectionAccent,sectionCorners:o.sectionCorners,sectionCornerSides:o.sectionCornerSides,textStyles:Iu(o)}}import{jsx as vs,Fragment as UC,jsxs as $C}from"react/jsx-runtime";import{createContext as qC,useContext as jC}from"react";var KC={mirrorHostStyles:!0,css:null,fontHrefs:[]},Cu=qC(KC);function I2({value:e,children:o}){return vs(Cu.Provider,{value:e,children:o})}function ws(){return jC(Cu)}function vu(){let{css:e,fontHrefs:o}=ws();return $C(UC,{children:[o.map(t=>vs("link",{rel:"stylesheet",href:t},t)),e?vs("style",{"data-sf-canvas-css":"",children:e}):null]})}import{jsx as VC}from"react/jsx-runtime";import{createContext as YC,useContext as XC}from"react";var wu=YC(void 0);function y2({metadata:e,children:o}){return VC(wu.Provider,{value:e,children:o})}var ku=()=>XC(wu);import{jsx as ue,Fragment as iC,jsxs as Na}from"react/jsx-runtime";import{useCallback as Ma,useEffect as To,useRef as nM,useState as lM}from"react";import{Button as sM,Tooltip as iM}from"efficient-shell/ui";import{SettingsSwitch as fM}from"efficient-easel/panel";import{PagesIcon as cM,StylesIcon as dM}from"efficient-easel/rail";import{TemplateIcon as uM}from"efficient-easel/icons";import{Subtree as pM,TreeRow as fC}from"efficient-easel/tree";import{useEasel as mM}from"efficient-easel/easel";import{useEaselStrings as cC}from"efficient-easel/strings";import{createContext as ZC,useContext as QC}from"react";var ks=ZC(!1),v2=()=>QC(ks);import{jsx as fe,Fragment as ZI,jsxs as il}from"react/jsx-runtime";import{Fragment as KP,useEffect as VP,useId as YP,useMemo as QI,useState as ar}from"react";import{ScreenDocumentContext as Dt,ScreenDocumentProvider as T2,useScreenDocument as Se}from"efficient-easel/screen/components/ScreenDocumentContext";import{UiIcon as fl}from"efficient-easel/draw/client";import{default as Va,PanelHideButton as Ts,PanelModeExit as P2,PanelShowStrip as L2}from"efficient-easel/screen/components/SidePanelHead";import{jsx as J,jsxs as St,Fragment as tr}from"react/jsx-runtime";import{useEasel as $I}from"efficient-easel/easel";import{useState as Af}from"react";import{jsx as Xt,jsxs as Nx,Fragment as UF}from"react/jsx-runtime";import{useState as Mx}from"react";import{SettingsDefaultReset as $F,SettingsField as qF}from"efficient-easel/panel";import{useEaselStrings as jF}from"efficient-easel/strings";import{AddIcon as KF}from"efficient-easel/icons";import{jsx as I,jsxs as bt,Fragment as _o}from"react/jsx-runtime";import{cloneElement as Zm,useId as H0,useRef as Ri,useState as Fn}from"react";import{useEasel as Kr,useSelectedFields as Qm}from"efficient-easel/easel";import{readHidable as Qo,hidableText as z0}from"efficient-easel/draw";import{FOLD_FIELD_MARKER as Ai,LINK_FIELD_MARKER as W0,MEDIA_FIELD_MARKER as G0,SCAFFOLD_FIELD_MARKER as U0,TEXT_FIELD_MARKER as Bo,foldMetaOf as Do,textFieldIdentifier as pz}from"efficient-easel/draw";import{jsx as Ru}from"react/jsx-runtime";import{useCallback as rv,useEffect as av,useRef as nv,useState as lv}from"react";import{useEasel as sv}from"efficient-easel/easel";import{SettingsAction as iv}from"efficient-easel/panel";function Fs(e){return typeof e=="number"&&Number.isFinite(e)}function A2(e,o){if(!Fs(e))return;let t=Ga(Io(e));if(Object.keys(t).length===0)return;let r=t[Ya];if(typeof r!="string")return t;let a=Rr(o)?Ar(r,Po(o)??[]):r;return{...t,[JC]:a}}var JC="--sf-section-radius",Ya="--sf-card-radius",ct=["tl","tr","br","bl"];function Po(e){if(!Array.isArray(e))return null;let o=e.filter(t=>ct.includes(t));return ct.filter(t=>o.includes(t))}function Rr(e){let o=Po(e);return o!==null&&o.length<ct.length}function Ar(e,o){return ct.map(t=>o.includes(t)?e:"0").join(" ")}var Tu=[{value:"tl",label:"Top left"},{value:"tr",label:"Top right"},{value:"bl",label:"Bottom left"},{value:"br",label:"Bottom right"}];var ev="--sf-card-box-radius",ov="--sf-site-card-radius",N2="sf-section-bleeds";function Es(e){return typeof e=="number"&&Number.isFinite(e)}function M2(e,o){if(!Es(e))return;let t=Ga(Io(e))[Ya];if(typeof t!="string")return;let r=Rr(o)?Ar(t,Po(o)??[]):t;return{[ev]:r}}function H2(e){let o=e[Ya];return typeof o=="string"?{[ov]:o}:{}}function Fu(e,o){let t=e.find(n=>n?.props?.id===o);if(!t)return[...e];let r=t.props?.cardCorners,a=t.props?.cardCornerSides;return e.map(n=>n?.props?.id===o?n:{...n,props:{...n.props,cardCorners:r,cardCornerSides:a}})}import{locateNode as tv}from"efficient-easel/draw";function Br(e){if(!e)return null;let o=e.lastIndexOf(":");return o>0?{ownerId:e.slice(0,o),slot:e.slice(o+1)}:null}function Xa(e,o,t){let r=Br(t?.zone),a=r?tv(e,o,r.ownerId):null;return a&&r?{...a,slot:r.slot}:null}function Eu(e,o,t){let r=Xa(e,o,t),a=r?.slot??"",n=r&&Array.isArray(r.item.props[a])?r.item.props[a]:[],s=t?.index??-1,i=s>=0?n[s]:void 0,f=i?.props?.id?String(i.props.id):"",u=Math.max(n.length-1,0);return!r||!f?{can:!1,reason:"unreachable",others:0}:n.length<=1?{can:!1,reason:"alone",others:u}:Es(i?.props?.cardCorners)?{can:!0,others:u,zone:r.zone,index:r.index,data:{...r.item,props:{...r.item.props,[a]:Fu(n,f)}}}:{can:!1,reason:"unset",others:u}}function Pu(e){return e.can?it("Gives the other card this card's Corners.","Gives the other {n} cards this card's Corners.",e.others):e.reason==="alone"?l("This is the only card in the section."):e.reason==="unset"?l("Set this card's corners first."):l("This card is not in a section that can share corners.")}function Lu(e){return it("Applied to {n} card","Applied to {n} cards",e)}function Ou(e,o){e.can&&o(e.zone,e.index,e.data)}import{useSectionOps as qo}from"efficient-easel/screen/lib/puck/use-section-ops";var fv=2200,cv="apply-corners-to-siblings",dv="Apply to all cards";function uv({plan:e,doneCount:o,onPress:t}){return Ru(iv,{id:cv,label:l(dv),note:Pu(e),disabled:!e.can,done:o!==null,doneLabel:Lu(o??0),onPress:t})}function Au(){let{appState:e,config:o}=sv(f=>f),t=qo(),[r,a]=lv(null),n=nv(null);av(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=Eu(o,e.data.content??[],e.ui.itemSelector),i=rv(()=>{Ou(s,t.replaceComponent),s.can&&(a(s.others),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>a(null),fv))},[s,t]);return Ru(uv,{plan:s,doneCount:r,onPress:i})}var Bu=1;function pv(e){return Io(e)}function aH(e){let o=pv(e);return o===null?{}:{"--sf-card-image-radius":`${o}px`}}var _u=1,Du="Corners";function mv(e){return Io(e)}function iH(e,o){let t=mv(e);if(t===null)return null;let r=`${t}px`;return{borderRadius:Rr(o)?Ar(r,Po(o)??[]):r}}var Lo={twoAcross:{label:"Two across",across:2,acrossPhone:2,desktop:[[6,1],[6,1]],phone:[[3,1],[3,1]]},zigzag:{label:"Zigzag",across:2,acrossPhone:2,desktop:[[8,1],[4,1],[4,1],[8,1]],phone:[[4,1],[2,1],[2,1],[4,1]]},brick:{label:"Brick",across:2,acrossPhone:2,desktop:[[5,1],[7,1],[7,1],[5,1]],phone:[[2,1],[4,1],[4,1],[2,1]]},twoTall:{label:"Two tall",across:2,acrossPhone:2,desktop:[[6,2],[6,2]],phone:[[3,2],[3,2]]},offsetTall:{label:"Offset tall",across:2,acrossPhone:2,desktop:[[5,2],[7,1],[3,1],[4,1]],phone:[[3,2],[3,1],[3,1]]},ladder:{label:"Ladder",across:2,acrossPhone:2,desktop:[[3,2],[9,1],[5,1],[4,1]],phone:[[2,2],[4,1],[2,1],[2,1]]},threeAcross:{label:"Three across",across:3,acrossPhone:3,desktop:[[4,1],[4,1],[4,1]],phone:[[2,1],[2,1],[2,1]]},bigLeft:{label:"Big left",across:3,acrossPhone:3,desktop:[[6,1],[3,1],[3,1]],phone:[[4,1],[1,1],[1,1]]},bigRight:{label:"Big right",across:3,acrossPhone:3,desktop:[[3,1],[3,1],[6,1]],phone:[[1,1],[1,1],[4,1]]},threeStagger:{label:"Three stagger",across:3,acrossPhone:3,desktop:[[5,1],[4,1],[3,1],[3,1],[4,1],[5,1]],phone:[[3,1],[2,1],[1,1],[1,1],[2,1],[3,1]]},threeLadder:{label:"Three ladder",across:3,acrossPhone:3,desktop:[[3,1],[4,1],[5,1],[5,1],[4,1],[3,1]],phone:[[1,1],[2,1],[3,1],[3,1],[2,1],[1,1]]},tallMiddle:{label:"Tall middle",across:3,acrossPhone:3,desktop:[[4,1],[4,2],[4,1],[4,1],[4,1]],phone:[[2,1],[2,2],[2,1],[2,1],[2,1]]},fourAcross:{label:"Four across",across:4,acrossPhone:2,desktop:[[3,1],[3,1],[3,1],[3,1]],phone:[[3,1],[3,1]]},bigFirst:{label:"Big first",across:4,acrossPhone:2,desktop:[[6,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1]],phone:[[6,1],[3,1],[3,1]]},fourStagger:{label:"Four stagger",across:4,acrossPhone:2,desktop:[[4,1],[3,1],[2,1],[3,1],[2,1],[3,1],[4,1],[3,1]],phone:[[4,1],[2,1],[2,1],[4,1]]},tallFirst:{label:"Tall first",across:4,acrossPhone:2,desktop:[[3,2],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1]],phone:[[3,2],[3,1],[3,1]]},oneThenFour:{label:"One then four",across:4,acrossPhone:2,desktop:[[12,1],[3,1],[3,1],[3,1],[3,1]],phone:[[6,1],[3,1],[3,1]]},sixAcross:{label:"Six across",across:6,acrossPhone:3,desktop:[[2,1],[2,1],[2,1],[2,1],[2,1],[2,1]],phone:[[2,1],[2,1],[2,1]]},sixStagger:{label:"Six stagger",across:6,acrossPhone:6,desktop:[[3,1],[2,1],[1,1],[2,1],[1,1],[3,1],[1,1],[3,1],[2,1],[2,1],[1,1],[3,1]],phone:[[1,1],[1,1],[1,1],[1,1],[1,1],[1,1]]}},Ps=Object.keys(Lo),Mu=[2,3,4,6];function Hu(e){return typeof e!="string"||e===""?null:Lo[e]??null}function Nu(e,o){return o?6/e.acrossPhone:12/e.across}var xv="sf-wall--";function Iv(e){return`${xv}${e}`}function cH(e){let o=Lo[e],t=`.${Iv(e)}`,r=[],a=(n,s)=>{let i=[],f=n.length;n.forEach(([u,p],m)=>{i.push(`${t} > :nth-child(${f}n+${m+1}){grid-column:span ${u};grid-row:span ${p}}`)});for(let u=1;u<f;u+=1)i.push(`${t}:has(> :nth-child(${f}n+${u}):last-child) > :nth-last-child(-n+${u}){grid-column:span ${s};grid-row:span 1}`);return i};return r.push(`${t}{grid-template-columns:repeat(12,minmax(0,1fr))}`),r.push(...a(o.desktop,Nu(o,!1))),r.push("@media (max-width:800px){"),r.push(`${t}{grid-template-columns:repeat(6,minmax(0,1fr))}`),r.push(...a(o.phone,Nu(o,!0))),r.push("}"),r.join("")}var Za=12,zu=1,hv=3;var gv=3;function Ls(e,o,t){let r=typeof e=="number"?e:Number.parseInt(String(e??""),10);return Number.isFinite(r)?Math.min(t,Math.max(o,Math.trunc(r))):null}function bv(e){return Ls(e,1,Za)??gv}function pH(e,o){return Ls(e,zu,hv)??(bv(o)===4?2:zu)}function mH(e){return e==null||e===""?null:Ls(e,1,Za)}var xH="data-sf-span";function IH(e){if(!e)return!1;if(e.type==="Grid")return!0;if(e.type==="GalleryB"){if(Hu(e.props?.layout))return!1;let o=e.props?.columns;return o!=null&&o!==""}return!1}var ho=["top-left","top-center","top-right","left","center","right","bottom-left","bottom-center","bottom-right"],Qa="bottom-left";var Ja={"top-left":"Top left","top-center":"Top center","top-right":"Top right",left:"Left",center:"Center",right:"Right","bottom-left":"Bottom left","bottom-center":"Bottom center","bottom-right":"Bottom right"};function yv(e){let o=ho.indexOf(dt(e));return{band:Math.floor(o/3),column:["start","center","end"][o%3]}}function Sv(e){return 1+yv(e).band*6}function gH(e){return Sv(e)+1}function dt(e){return ho.includes(e)?e:Qa}function bH(e){let o=typeof e=="number"&&Number.isFinite(e)?e:0;return Math.max(-40,Math.min(40,Math.round(o)))}function yH(e,o=60){let t=typeof e=="number"&&Number.isFinite(e)?e:o;return Math.max(30,Math.min(100,Math.round(t)))}function Os(e,o){let t=dt(o);return e.filter(r=>dt(r?.props?.placement)===t).length}function Wu(e){return`${Ja[dt(e)]} already holds 4 boxes. Move one somewhere else first.`}function Rs(e,o){let t=e.filter(r=>r?.props?.id!==o);return ho.map(r=>{let a=Os(t,r)>=4,n=Ja[r];return a?{value:r,label:n,disabled:!0,title:Wu(r)}:{value:r,label:n}})}function en(e,o){let t=o===void 0?Qa:dt(o?.props?.placement);return Os(e,t)>=4?Wu(t):null}var on="HeroGroup";function Cv(e){return ho.map(o=>{let t=Os(e,o);return{anchor:o,total:t,hidden:t-4}}).filter(o=>o.hidden>0)}function As(e){let o=Cv(e);return o.length===0?null:o.map(({anchor:t,total:r,hidden:a})=>{let n=Ja[t],s=a===1?"1 is not shown":`${a} are not shown`;return`${n} holds ${r} boxes. The published page draws the first 4, so ${s}. ${a===1?"Move it":"Move them"} somewhere else.`}).join(" ")}function Gu(e,o){let t=o;if(t?.type!==on)return null;let r=t.props?.id===void 0?"":String(t.props.id);return r?en(Bs(e,r),t):null}function Bs(e,o){let t=$u(e,o);return t&&t.ownerType===wv?t.siblings:[]}function Uu(e,o){let t=$u(e,o);return t?t.ancestorTypes.filter(r=>r===on).length:vv}var vv=1,wv="HeroSlide";function $u(e,o){let t=a=>Array.isArray(a)&&a.length>0&&a.every(n=>!!n&&typeof n=="object"&&typeof n.type=="string"),r=(a,n,s)=>{if(n>12||!a||typeof a!="object")return null;if(t(a)){if(a.some(i=>i?.props?.id===o))return{siblings:a,ownerType:s.at(-1)??null,ancestorTypes:s};for(let i of a){let f=i.type,u=r(i,n+1,[...s,String(f)]);if(u)return u}return null}for(let i of Object.values(a)){let f=r(i,n+1,s);if(f)return f}return null};return r(e,0,[])}import{jsx as kv}from"react/jsx-runtime";var Tv="sf-hint-keep";function qu({children:e}){return kv("span",{className:Tv,children:e})}import{AdjustIcon as $0,AlignLeftIcon as q0,EyeIcon as j0,AlignSeparateIcon as K0,AnimationIcon as Jm,BackgroundIcon as V0,BorderAllIcon as Y0,BlockSectionIcon as X0,CartIcon as Z0,ColumnWidthsIcon as ex,ColumnsIcon as Q0,CornerIcon as J0,DirectionDownIcon as eT,DirectionLeftIcon as oT,DirectionRightIcon as tT,DirectionUpIcon as rT,DollarIcon as aT,FinishIcon as nT,GapIcon as ox,GridIcon as lT,GroundIcon as sT,HashIcon as tx,HeightIcon as iT,ImageIcon as fT,ListIcon as cT,LocationIcon as Oi,PaddingAllIcon as dT,PaddingBottomIcon as rx,PaddingLeftIcon as ax,PaddingRightIcon as nx,PaddingTopIcon as lx,PageIcon as sx,PhoneIcon as uT,PlacementIcon as pT,ProductSizeIcon as mT,StickyIcon as xT,RotateIcon as IT,SquareIcon as hT,TypeIcon as gT,WidthIcon as bT,WrapIcon as yT}from"efficient-easel/icons";import{jsx as Q,Fragment as go,jsxs as bo}from"react/jsx-runtime";import{TitleIcon as Fv,ButtonIcon as Ev,DollarIcon as Pv,HashIcon as Lv,LinkIcon as Ov,NoteIcon as Rv,TagIcon as Av,TextLinesIcon as Bv}from"efficient-easel/icons";var ju={body:Bv,button:Ev,link:Ov,label:Av,number:Lv,price:Pv,note:Rv,title:Fv},Ku={eyebrow:bo(go,{children:[Q("path",{d:"M5 6.5h5"}),Q("path",{d:"M5 12.5h14"}),Q("path",{d:"M5 18h11"})]}),heading:bo(go,{children:[Q("path",{d:"M6.5 5v14"}),Q("path",{d:"M17.5 5v14"}),Q("path",{d:"M6.5 12h11"})]}),intro:bo(go,{children:[Q("path",{d:"M4 5.5v13"}),Q("path",{d:"M8 7.5h12"}),Q("path",{d:"M8 12h12"}),Q("path",{d:"M8 16.5h8"})]}),value:bo(go,{children:[Q("rect",{x:"2.5",y:"7",width:"19",height:"10",rx:"2"}),Q("path",{d:"M6.5 12h7"})]}),name:bo(go,{children:[Q("path",{d:"M6 3.5v17"}),Q("path",{d:"M6 5h11.5l-2.6 3.6L17.5 12H6z"})]}),date:bo(go,{children:[Q("rect",{x:"4",y:"5.5",width:"16",height:"15",rx:"2"}),Q("path",{d:"M4 10.5h16"}),Q("path",{d:"M9 3.2v4.4"}),Q("path",{d:"M15 3.2v4.4"})]}),caption:bo(go,{children:[Q("rect",{x:"3.5",y:"4.5",width:"17",height:"11",rx:"2"}),Q("path",{d:"M3.5 12.8l4.2-3.2 3.6 2.8 3.4-2.4 5.8 4"}),Q("path",{d:"M6.5 19.5h11"})]}),quote:bo(go,{children:[Q("path",{d:"M9.5 5.5C7 7.2 5.5 9.7 5.5 12.8h4v5.7h-5v-5.7"}),Q("path",{d:"M19.5 5.5c-2.5 1.7-4 4.2-4 7.3h4v5.7h-5v-5.7"})]}),tag:bo(go,{children:[Q("rect",{x:"3",y:"5.5",width:"18",height:"13",rx:"2.5"}),Q("path",{d:"M8 9.5h8"}),Q("path",{d:"M12 9.5v5"})]}),meta:bo(go,{children:[Q("path",{d:"M4 7h16"}),Q("path",{d:"M4 14h3.5"}),Q("path",{d:"M10.5 14h3"}),Q("path",{d:"M17 14h3"})]})};function _s({noun:e,size:o=14,strokeWidth:t=1.8,className:r,style:a}){let n=ju[e];return n?Q("span",{className:r,style:{display:"inline-flex",...a},"aria-hidden":"true",children:Q(n,{size:o})}):Q("svg",{className:r,style:a,width:o,height:o,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:t,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:Ku[e]})}var TH=Object.keys(ju);var FH=Object.keys(Ku);var _v="#ffffff",Dv=/^#[0-9a-fA-F]{6}$/;function Ds(e){return Nv(e)?e:_v}function Nv(e){return typeof e=="string"&&Dv.test(e)}function PH(e){return{"--bg":Ds(e)}}var Ns=[{role:"bg",token:"--bg",ink:!1},{role:"fg",token:"--fg",ink:!0},{role:"surface",token:"--site-surface",ink:!1},{role:"surface-2",token:"--site-surface-2",ink:!1},{role:"line",token:"--site-line",ink:!0},{role:"muted",token:"--fg-dim",ink:!0}],Mv=Ns.filter(e=>e.ink);function Hv(e){let o={color:e.fg};for(let{role:t,token:r}of Mv)o[r]=e[t];return o}var zv={fg:"var(--overlay-fg)",line:"color-mix(in srgb, var(--overlay-fg) 24%, transparent)",muted:"color-mix(in srgb, var(--overlay-fg) 76%, transparent)"},Vu=Object.freeze(Hv(zv));var tn=-1,Wv="sf-section-accent",Yu="Color",Xu=new Set(["CategoryBar","DocTabs"]),AH=new Set(["Flex"]),Gv=0;function Ms(e){return e===tn?null:typeof e=="number"&&Number.isInteger(e)&&e>=0?e:Gv}function BH(e){return e??tn}function Uv(e){let o=`--theme-preset-${e}`,t={"--sf-sec-accent":`var(${o}-accent)`,"--sf-sec-accent-2":`var(${o}-accent-2)`,"--sf-sec-accent-ink":`var(${o}-accent-ink)`};for(let{role:r}of Ns)t[`--sf-sec-${r}`]=`var(${o}-${r}, var(--theme-${r}))`;return t}function _H(e){let o=Ms(e.sectionAccent);return o===null?null:{className:Wv,style:Uv(o)}}var $v=["fade","rise","scale"],Hs="none",Zu=[{label:"None",value:Hs},{label:"Fade",value:"fade"},{label:"Rise",value:"rise"},{label:"Scale",value:"scale"}];function MH(e){return $v.includes(e)?e:null}var Qu="data-sf-anim",_r="data-sf-anim-state";function HH(e){let o=()=>{};if(typeof IntersectionObserver>"u"||!e.getAttribute(Qu))return o;let t=window.innerHeight||document.documentElement.clientHeight;if(e.getBoundingClientRect().top<t)return o;e.setAttribute(_r,"armed");let r=new IntersectionObserver(a=>{for(let n of a)if(n.isIntersecting){r.disconnect(),qv(e);break}},{threshold:0});return r.observe(e),()=>{r.disconnect(),e.removeAttribute(_r)}}function qv(e){if(!e.getAttribute(Qu))return;e.removeAttribute(_r),e.offsetWidth,e.setAttribute(_r,"play");let o=t=>{t.target===e&&(e.removeAttribute(_r),e.removeEventListener("animationend",o))};e.addEventListener("animationend",o)}var zH=Xu;function Ws(e,o){let t=e?.content;if(!Array.isArray(t))return null;for(let r of t){if(!r||typeof r!="object")continue;let a=r.props;if(a?.id===o)return null;if(zs(r,o,0))return a??{}}return null}function zs(e,o,t){if(t>12||!e||typeof e!="object")return!1;if(Array.isArray(e))return e.some(a=>zs(a,o,t+1));let r=e.props;return r&&typeof r=="object"&&r.id===o?!0:Object.values(e).some(a=>zs(a,o,t+1))}import{SettingsDefaultReset as qe,SettingsField as ne,SettingsGroupHead as ST,SettingsGroupSub as CT,SettingsBorder as vT,SettingsSegmented as wT,SettingsSides as kT,SettingsSidesEach as ix,sidesStartEach as TT,SettingsSwitch as fx,borderSides as FT,borderStartEach as ET}from"efficient-easel/panel";import{FieldSelect as PT,ListField as LT}from"efficient-easel/fields";import{DisplayChips as OT}from"efficient-shell/ui";function Nt(e){if(!e||typeof e!="object"||Array.isArray(e))return{};let o={};for(let[t,r]of Object.entries(e))typeof r=="boolean"&&(o[t]=r);return o}function rn(e,o){return Nt(e)[o]!==!1}function Gs(e,o,t){let r=Nt(o)[t];return typeof r=="boolean"?r:rn(e,t)}function Ju(e){return Object.values(Nt(e)).some(o=>o===!1)}function ep(e){return Object.keys(Nt(e)).length>0}function op(e,o,t){let r={...Nt(e)};return t?delete r[o]:r[o]=!1,Object.keys(r).length?r:void 0}function tp(e,o,t){return{...Nt(e),[o]:t}}function UH(e,o,t){let r=rn(e,t),a=Gs(e,o,t);return r&&a?"":!r&&!a?"hidden":r?"max-[720px]:hidden":"min-[720px]:hidden"}import{AlignmentGrid as RT,Checkbox as Rz,CornersInput as AT,DateTimePicker as BT,FOCAL_DEFAULT as Az,PictureTiles as cx,Slider as _T,Tooltip as dx}from"efficient-shell/ui";import{jsx as Dr,jsxs as Kv}from"react/jsx-runtime";import{ColorPicker as Vv,HexInput as Yv}from"efficient-shell/ui";import{typedHex as Us}from"efficient-easel/pick";import{typedHex as jv}from"efficient-easel/pick";function rp(e){let o=new Set,t=[];return Qe(e).themes.forEach((r,a)=>{let n=[[l("Theme {n} main color",{n:a+1}),r.accent],[l("Theme {n} text color",{n:a+1}),r.text],[l("Theme {n} background",{n:a+1}),r.background]];for(let[s,i]of n){let f=i?jv(i):null;!f||o.has(f)||(o.add(f),t.push({name:s,value:f}))}}),t}function Je({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,after:s,ariaLabel:i}){return Dr(Zv,{value:e,onChange:o,label:l(i??t),id:r,caption:a,inherited:n,after:s})}function Xv(){let{theme:e}=Z();return rp(e).map(o=>({value:o.value,label:o.name}))}function Zv({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,after:s}){let i=Xv(),f=e?null:Us(n??""),u=a!==void 0&&(!e||Us(a)!==Us(e))?a:null,p=m=>{m!==e&&o(m)};return Kv("div",{className:"sf-colour",children:[Dr(Vv,{id:r,value:e,onChange:p,label:t,presets:i,fallback:f??void 0,size:"sm",align:"end"}),u!==null?Dr("span",{className:"sf-colour-caption",children:u}):Dr("span",{className:"sf-colour-hexwrap",children:Dr(Yv,{value:e||f||"",onChange:p,label:l("{label} hex code",{label:t}),placeholder:e||f?void 0:l("Not set"),className:f?"sf-colour-hex is-inherited":"sf-colour-hex",size:"sm"})}),s]})}import{jsx as Nr}from"react/jsx-runtime";import{useEffect as bw,useState as yw}from"react";import{markSelection as Sw,useCaretEdit as Cw}from"efficient-easel/copy";import{RevertIcon as vw}from"efficient-easel/icons";import{IconButton as ww,TextToolbar as kw,Tooltip as Tw}from"efficient-shell/ui";import{applyMark as s5,markupTools as i5,MARKUP_TOOLS as f5,COPY_FIELD_TOOLS as c5,STOREFRONT_MARKUP as d5,tokenizeInline as u5,stripInline as p5,isSafeLinkHref as m5}from"efficient-shell/markup";import{applyMark as fw,markedAt as cw,markupTools as dw,MARKUP_TOOLS as uw,parseMarkup as pw,RETIRED_MARKS as mw,STOREFRONT_MARKUP as xw,tokenizeInline as I5}from"efficient-shell/markup";var ut=["highlight","strong","quiet"],pt={highlight:"Highlight",strong:"Bold",quiet:"Quiet"},yo={highlight:{kind:"wordHighlight",delimiter:"@@"},strong:{kind:"wordStrong",delimiter:"++"},quiet:{kind:"wordQuiet",delimiter:"^^"}},sp=Object.fromEntries(ut.map(e=>[yo[e].kind,e])),ip="data-sf-ws",an=["accent","text","labels"],fp={accent:"Accent",text:"Text",labels:"Labels"},Oo={accent:"var(--accent)",text:"var(--fg)",labels:"var(--fg-dim)"},Qv=80,Jv=120,ew=100,ow=900,tw=.5,rw=3,aw=-.1,nw=.5,lw=3,$s={font:null,size:null,weight:null,bold:null,italic:null,lineGap:null,textGap:null,colour:null},sw={highlight:{...$s},strong:{...$s},quiet:{...$s}};function ap(e,o,t){return typeof e!="number"||!Number.isFinite(e)?null:Math.round(Math.min(Math.max(e,o),t))}function np(e,o,t){if(typeof e!="number"||!Number.isFinite(e))return null;let r=10**lw;return Math.round(Math.min(Math.max(e,o),t)*r)/r}function lp(e){return typeof e=="boolean"?e:null}function iw(e){let o=typeof e?.font=="string"&&no.some(r=>r.key===e.font)?e.font:null,t=typeof e?.colour=="string"&&an.includes(e.colour)?e.colour:null;return{font:o,size:ap(e?.size,Qv,Jv),weight:ap(e?.weight,ew,ow),bold:lp(e?.bold),italic:lp(e?.italic),lineGap:np(e?.lineGap,tw,rw),textGap:np(e?.textGap,aw,nw),colour:t}}function cp(e){let o={};for(let t of ut)o[t]=e&&t in e&&e[t]?iw(e[t]):{...sw[t]};return o}function r5(e){let o=cp(e),t={};for(let r of ut){let a=o[r],n=`--sf-ws-${r}`;if(a.font){let s=no.find(i=>i.key===a.font);s&&(t[`${n}-font`]=`var(${s.cssVar})`)}a.size!==null&&(t[`${n}-size`]=`${a.size/100}em`),a.weight!==null&&(t[`${n}-weight`]=String(a.weight)),a.bold!==null&&(t[`${n}-weight-bold`]=a.bold?"700":"400"),a.italic!==null&&(t[`${n}-style`]=a.italic?"italic":"normal"),a.lineGap!==null&&(t[`${n}-line`]=String(a.lineGap)),a.textGap!==null&&(t[`${n}-track`]=`${a.textGap}em`),a.colour!==null&&(t[`${n}-color`]=Oo[a.colour])}return t}function a5(e){let o=e?.word_styles??void 0,t={};for(let r of ut)o&&r in o&&(t[r]=o[r]??null);return cp(t)}var Iw=new Set(["strong"]),dp=ut.map(e=>({open:yo[e].delimiter,close:yo[e].delimiter,kind:yo[e].kind,...Iw.has(e)?{wordStart:!0}:{}})),g5=[{style:yo.highlight.kind,label:pt.highlight,title:`${pt.highlight} word style`},{style:yo.strong.kind,label:pt.strong,title:`${pt.strong} word style`},{style:yo.quiet.kind,label:pt.quiet,title:`${pt.quiet} word style`}],hw=new Set(dp.map(e=>e.open)),Mt=[...xw.filter(e=>!hw.has(e.open)),...dp];function qs(e){return e.bullet?"- ":e.number!=null?`${e.number}. `:""}function js(e){return pw(typeof e=="string"?e:"",Mt)}var gw=uw.map(e=>e.style).filter(e=>!mw.includes(e)).filter(e=>Mt.some(o=>o.kind===e));function up(){return dw(gw)}var pp=Object.fromEntries(ut.map(e=>[yo[e].kind,yo[e].delimiter]));function mp(e,o,t,r){let a=pp[r];if(!a)return fw(e,o,t,r);let n=e.slice(o,t),s=e.slice(Math.max(0,o-a.length),o),i=e.slice(t,t+a.length);if(s===a&&i===a)return{text:e.slice(0,o-a.length)+n+e.slice(t+a.length),selectionStart:o-a.length,selectionEnd:o-a.length+n.length};let f=n||"styled text";return{text:e.slice(0,o)+a+f+a+e.slice(t),selectionStart:o+a.length,selectionEnd:o+a.length+f.length}}function xp(e,o,t,r){let a=pp[r];return a?o>=a.length&&e.slice(o-a.length,o)===a&&e.slice(t,t+a.length)===a:cw(e,o,t,r)}function mt(e){return js(e).map(o=>qs(o)+Ip(o.children)).join(`
3
+ `)}function Ip(e){return e.map(o=>o.kind==="text"?o.text:Ip(o.children)).join("")}var hp="Clear formatting";function Fw(e,o,t){return Sw(e,o,t,mp)}function Ew(e){let[o,t]=yw(null);return bw(()=>{let r=e.current?.ownerDocument??(typeof document>"u"?null:document);if(!r)return;let a=()=>{let n=e.current;if(!n||r.activeElement!==n)return;let s=n.selectionStart??n.value.length,i=n.selectionEnd??s;t(f=>f&&f.start===s&&f.end===i?f:{start:s,end:i})};return r.addEventListener("selectionchange",a),()=>r.removeEventListener("selectionchange",a)},[e]),[o,t]}function Pw({target:e,value:o,onChange:t,disabled:r=!1,label:a="Formatting"}){let n=Cw({target:e,onChange:t}),[s,i]=Ew(e),f=x=>n(h=>{let b=Fw(o,x,h);return i({start:b.selectionStart,end:b.selectionEnd}),b}),u=up(),p={};if(s)for(let x of u)p[x.style]=xp(o,s.start,s.end,x.style);let m=mt(o);return Nr(kw,{offered:new Set(u.map(x=>x.style)),onMark:x=>f(x),pressed:p,disabled:r,"aria-label":l(a),className:"sf-markup-bar",last:Nr("span",{className:"sf-markup-clear",children:Nr(Tw,{content:l(hp),children:Nr(ww,{size:"sm",onMouseDown:x=>x.preventDefault(),onClick:()=>t(m),disabled:r||m===o,"aria-label":l(hp),children:Nr(vw,{size:14})})})})})}var Ks=Pw;import{DEVICE_FIELD_MARKER as P5,DEVICE_HIDDEN_ATTR as L5,DEVICE_NOTE as O5,deviceField as ve,deviceMetaOf as Vs,deviceNote as R5,shownTier as A5,withoutDeviceGate as B5}from"efficient-easel/screen/lib/puck/device-fields";import{NO_CONTROL_ATTR as N5,NO_CONTROL_FIELD as gp,noControlField as Mr,NoControlMark as Ht,noControlMetaOf as M5}from"efficient-easel/screen/lib/puck/panel-no-control-mark";var Ys="__ownBox";function bp(e){return!!e&&typeof e=="object"&&e[Ys]===!0}function Ro(e){return`${e}Phone`}function nn(e,o,t){return typeof e=="number"?e:typeof o=="number"?o:t}var ln=void 0;import{jsx as Zs,Fragment as Rw}from"react/jsx-runtime";import{createContext as Aw,useContext as Bw}from"react";var sn={ProductGrid:{source:{keep:["slug"]}},GalleryItem:{product:{keep:["code","finish"]}},FeaturedCover:{source:{keep:["slug"]}},LongRead:{source:{keep:["slug"]}}},fn={Events:["posts"],SubscribeBlogs:["posts"]};var Lw=["anchor"],Ow=/^href$|Href$|^url$|Url$|^link$|^mailto$|^tel$/;function Hr(e){return Lw.includes(e)||Ow.test(e)}var Xs={Gallery:{source:{verb:"snapshot",keep:[]}},ProductHero:{source:{verb:"snapshot",keep:[]}},SpecTable:{source:{verb:"snapshot",keep:[]},wheel:{verb:"reference"},finish:{verb:"reference"},size:{verb:"reference"}},CollectionCard:{collection:{verb:"snapshot",keep:[]}},FooterMenu:{menu:{verb:"snapshot",keep:[]}},MenuBlock:{menu:{verb:"snapshot",keep:[]}},BrandStrip:{picks:{verb:"reference"}},ProductGrid:{design_codes:{verb:"reference"}},ProductRef:{code:{verb:"reference"},finish:{verb:"reference"}},FitmentTable:{wheel:{verb:"reference"}},GalleryItem:{fromProduct:{verb:"reference"}},Footprint:{"offices[].group":{verb:"groupKey"},"offices[].lat":{verb:"pii"},"offices[].lng":{verb:"pii"},"offices[].geocode":{verb:"pii"}}};Xs.ContactLocations={"locations[].lat":{verb:"pii"},"locations[].lng":{verb:"pii"},"locations[].mapsUrl":{verb:"pii"},"locations[].geocode":{verb:"pii"}};var $5=Object.fromEntries(Object.entries(sn).map(([e,o])=>[e,Object.keys(o)])),q5=Object.fromEntries(Object.entries(fn).map(([e,o])=>[e,[...o]]));var yp=Aw(!1);function Sp({children:e}){return Zs(yp.Provider,{value:!0,children:e})}function _w(){return Bw(yp)}function Cp({name:e,children:o}){return!_w()||!e||Hr(e)?Zs(Rw,{children:o}):Zs(Ht,{})}function eo(e,o,t){return e.some(r=>(typeof r=="object"?r.value:r)===t)?t:o}var Qs="off",Js="none",ei=[{label:"None",value:"off"},{label:"1, 2, 3",value:"plain"},{label:"01, 02, 03",value:"padded"},{label:"N\xB001, N\xB002",value:"numero"}],oi=[{label:"None",value:"none"},{label:"Hairline",value:"hairline"}];function e3(e){return eo(ei,Qs,e)}function o3(e){return eo(oi,Js,e)}var vp="sf-card-index",zr="sf-card-index",t3="pointer-events-none absolute left-[18px] top-[18px] z-10 border border-line bg-bg/70 px-2 py-1 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.16em] text-fg-dim",Dw={plain:`counter(${zr})`,padded:`counter(${zr}, decimal-leading-zero)`,numero:`"N\xB0" counter(${zr}, decimal-leading-zero)`};function r3(e,o){return o==="off"?"":`.${e}{counter-reset:${zr}}.${e} .${vp}{counter-increment:${zr}}.${e} .${vp}::before{content:${Dw[o]}}`}function a3(e){return e==="hairline"?"border border-line hover:border-accent":""}var wp=[{value:"1",label:"1st rendering"},{value:"2",label:"2nd rendering"},{value:"3",label:"3rd rendering"},{value:"4",label:"4th rendering"},{value:"5",label:"5th rendering"}];import{SCALAR_TEXT_CONTROLS as DT}from"efficient-easel/draw";import{jsx as Ao}from"react/jsx-runtime";import{SettingsDefaultReset as Nw,SettingsField as Fp}from"efficient-easel/panel";import{useSelectedFields as Mw}from"efficient-easel/easel";import{FOCAL_DEFAULT as Hw}from"efficient-shell/format";import{ImageIcon as Ep,PlayIcon as Pp}from"efficient-easel/icons";import{ImageBox as zw}from"efficient-easel/pick";import{useEaselStrings as Ww}from"efficient-easel/strings";import{useContext as Gw}from"react";import{usePreviewDevice as Uw}from"efficient-easel/draw/client";import{requestMediaPick as kp,resolveMediaPick as i3}from"efficient-easel/screen/lib/media-picker";var Ue=Nd,Tp=e=>e.blocks;function $w(e,o){let t=null;try{t=Mw()}catch{t=null}let r=Uw()==="mobile";if(!e||!t||o&&!o(t.values??{}))return null;let a=typeof t.values?.[e]=="string"&&t.values[e]?String(t.values[e]):Hw,n=Ro(e),s=typeof t.values?.[n]=="string"&&t.values[n]?String(t.values[n]):void 0,i=t.onChange;return{phone:r,desktop:a,own:s,focus:r?s??a:a,set:f=>i(r?n:e,f),clear:()=>i(n,ln)}}function Lp({value:e,onChange:o,label:t,accept:r,placeholder:a,focusKey:n,focusWhen:s}){let i=Bt(),f=Ae(),u=Ww(),p=l(t),m=r.startsWith("video"),x=$w(m?void 0:n,s),h=Gw(Dt),b=k=>kp(i,{accept:r,title:p,...k?{file:k}:{}}).then(v=>v?.url??null);if(h&&!h.capabilities.mediaEditing)return Ao(Fp,{label:p,icon:m?Ao(Pp,{}):Ao(Ep,{}),children:Ao("div",{className:"sf-image-slot-inert",children:m?l("Templates don\u2019t store videos \u2014 this slot stays a placeholder. Each website picks its own after it\u2019s created."):l("Templates don\u2019t store images \u2014 this slot stays a placeholder. Each website picks its own after it\u2019s created.")})});let C=x?.phone&&e?Ao(Nw,{words:j()?.panel,label:l("Image focus"),changed:!!x.own,detail:l("{value} on desktop",{value:x.desktop}),onReset:x.clear}):void 0;return Ao(Fp,{label:p,icon:m?Ao(Pp,{}):Ao(Ep,{}),action:C,children:Ao(zw,{value:e,onChange:o,label:p,kind:m?"video":"image",placeholder:a===void 0?void 0:l(a),openLibrary:b,maxSizeBytes:Ue(f).media.maxUploadBytes,...x?{focus:x.focus,onFocusChange:x.set}:{},words:u.pick.image})})}import{jsx as Op}from"react/jsx-runtime";import{useId as qw}from"react";import{FieldSelect as jw}from"efficient-easel/fields";import{SettingsField as Kw}from"efficient-easel/panel";function Vw(e){return e.map(({value:o,label:t,note:r})=>({value:o,label:t,...r?{meta:r}:{}}))}function Rp({label:e,options:o,value:t,onChange:r,emptyLabel:a,icon:n,hint:s}){let i=qw(),f=`${i}-label`,u=`${i}-button`,p=Array.isArray(t)?t:[];return Op(Kw,{label:l(e),labelId:f,icon:n,hint:s,children:Op(jw,{id:u,multiple:!0,value:p,options:Vw(o),onChange:r,placeholder:a===void 0?l("None"):l(a),ariaLabelledBy:`${f} ${u}`,inline:!0})})}import{jsx as Te,jsxs as xt,Fragment as xk}from"react/jsx-runtime";import{useCallback as Ik,useContext as hk,useEffect as gk,useId as Gp,useRef as zp,useState as Wp}from"react";import{ThemeIcon as bk}from"efficient-easel/icons";import{SettingsField as yk}from"efficient-easel/panel";import{jsx as $,jsxs as Ko,Fragment as tk}from"react/jsx-runtime";import{SettingsField as ai,SettingsGroupSub as rk}from"efficient-easel/panel";import{Button as ri}from"efficient-shell/ui";import{jsx as jo,jsxs as Ap}from"react/jsx-runtime";import{SettingsField as Yw}from"efficient-easel/panel";import{AccentIcon as Xw}from"efficient-easel/icons";import{Tooltip as Zw}from"efficient-shell/ui";function ti(e){return xo(e).background}function Qw(e){let o=$o(e.accent,ti(e));return o===null?null:{ratio:o,grade:At(o)}}function Jw(e){let o=ti(e),t=$o(e.accent,o);return t===null?[]:Kd(e.accent).filter(r=>{let a=$o(r,o);return a!==null&&a>t&&At(a)==="good"})}var ek={good:"Easy to read","large-only":Rt["large-only"],hard:Rt.hard};function Bp({value:e,onChange:o}){let t=Qw(e),r=t?.grade,a=t&&t.grade!=="good"?Jw(e):[];return jo(Yw,{label:l("Main color"),icon:jo(Xw,{}),hint:t?l(ek[t.grade]):void 0,action:jo(Je,{value:e.accent,onChange:n=>o({...e,accent:n}),label:l("Main color")}),children:a.length>0?jo("div",{className:"w-full min-w-0",children:Ap("div",{className:"sf-readability",children:[jo("p",{className:"sf-readability-advice",children:ok(r,!0)}),jo("div",{className:"sf-readability-suggestions",children:a.map(n=>{let s=$o(n,ti(e));return jo(Zw,{content:l("Use {colour}",{colour:n.toUpperCase()}),children:Ap("button",{type:"button",className:"sf-readability-suggestion",onClick:()=>o({...e,accent:n}),children:[jo("span",{className:"sf-readability-chip",style:{background:n},"aria-hidden":!0}),s?`${s.toFixed(1)}:1`:n.toUpperCase()]})},n)})})]})}):null})}function ok(e,o){return e?e==="good"?l("This color reads clearly on your pages."):o?l("This color is hard to read on this theme's page. The buttons below are the same hue, darkened."):l("This color is hard to read on your page background. Pick one further from it \u2014 lighter if your pages are dark, deeper if they are light."):l("Pick a color to see how it reads.")}import{ButtonIcon as ak,GroundIcon as nk,LayoutIcon as lk,SquareIcon as sk,TextSmallIcon as ik,TypeIcon as _p}from"efficient-easel/icons";var Wr=e=>l("Theme {n}",{n:e+1});function Dp({colors:e}){let o=xo(e),t=Or(e)??o.accent;return Ko("span",{className:"sf-theme-page",style:{background:o.background,color:o.text},"aria-hidden":!0,children:[$("span",{className:"sf-theme-eyebrow",style:{color:o.muted},children:l("label")}),Ko("span",{className:"sf-theme-headline",children:[l("Heading")," ",$("span",{style:{color:o.accent},children:l("accent")})]}),$("span",{className:"sf-theme-body",children:l("body text")}),Ko("span",{className:"sf-theme-row",children:[$("span",{className:"sf-theme-btn",style:{background:t,color:ps(e,o.accent)},children:l("button")}),$("span",{className:"sf-theme-mini",style:{background:o.surface,borderColor:o.line},children:l("card")})]})]})}var ni={"Text color":$(_p,{}),"Label color":$(ik,{}),Background:$(nk,{}),"Panels & cards":$(lk,{}),Borders:$(sk,{}),"Button color":$(ak,{}),"Button text color":$(_p,{})};function fk({label:e,colorKey:o,value:t,onChange:r,idPrefix:a="sf-theme-ink"}){let n=`${a}-${o}`;return $(ai,{label:l(e),icon:ni[e],htmlFor:n,action:$(Je,{id:n,label:l(e),value:t,onChange:s=>r(o,s)})})}function ck({value:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button`,n=/^#[0-9a-fA-F]{6}$/.test(e??""),s=n?e:o;return $(ai,{label:l("Button color"),icon:ni["Button color"],htmlFor:a,action:$(Je,{id:a,label:l("Button color"),value:s,caption:n?s:l("Main"),onChange:t})})}function dk({colors:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button-ink`,n=Vd(e),s=ps(e,o),i=Or(e)??o,f=At($o(s,i)??0);return $(ai,{label:l("Button text color"),icon:ni["Button text color"],hint:n&&f!=="good"?l("{grade} on the button",{grade:l(Rt[f])}):void 0,htmlFor:a,action:$(Je,{id:a,label:l("Button text color"),value:s,caption:n?s:l("Auto"),onChange:t})})}var uk=[{colour:!0},{label:"Text color",key:"text"},{label:"Label color",key:"muted"},{button:!0},{buttonInk:!0},{group:"Surfaces"},{label:"Background",key:"background"},{label:"Panels & cards",key:"surface"},{label:"Borders",key:"line"}];function li({colors:e,onChange:o,idPrefix:t}){let r=xo(e);return $(tk,{children:uk.map(a=>"colour"in a?$(Bp,{value:e,onChange:o},"colour"):"group"in a?$(rk,{title:l(a.group)},a.group):"button"in a?$(ck,{value:e.button,accent:r.accent,onChange:n=>o({...e,button:n}),idPrefix:t},"button"):"buttonInk"in a?$(dk,{colors:e,accent:r.accent,onChange:n=>o({...e,buttonInk:n}),idPrefix:t},"buttonInk"):$(fk,{label:a.label,colorKey:a.key,value:r[a.key],onChange:(n,s)=>o({...e,[n]:s}),idPrefix:t},a.key))})}function cn({index:e,colors:o,selected:t,role:r="radio",open:a,editable:n=!0,onPick:s,onEdit:i,onChangeColors:f}){let u=xo(o),p=Wr(e),m=e<us.length&&!o.brandInk?us[e]:null,x=At($o(u.text,u.background)??0),h=m?JSON.stringify(o)!==JSON.stringify(m):!1,b=a!==void 0;return Ko("div",{className:`sf-theme-card${t?" is-selected":""}`,children:[$("button",{type:"button",role:r,"aria-checked":r==="radio"?t:void 0,"aria-selected":r==="option"?t:void 0,"aria-label":p,className:"sf-theme-pick",onClick:s,children:$(Dp,{colors:o})}),Ko("div",{className:"sf-theme-foot",children:[$("span",{className:"sf-theme-name",children:p}),x!=="good"&&$("span",{className:"sf-theme-warn",children:l(Rt[x])}),n&&i&&$(ri,{variant:a?"primary":"secondary",size:"sm",className:"sf-theme-edit","aria-expanded":b?a:void 0,"aria-controls":b?`sf-theme-colours-${e}`:void 0,"aria-label":a?l("Done {name}",{name:p}):l("Edit {name}",{name:p}),onClick:i,children:a?l("Done"):l("Edit")})]}),a&&Ko("div",{id:`sf-theme-colours-${e}`,className:"sf-theme-colours",children:[$(li,{colors:o,onChange:C=>f?.(C)}),m&&$(ri,{variant:"link",size:"sm",className:"sf-theme-reset",disabled:!h,onClick:()=>f?.({...m}),children:h?l("Reset {name} to the preset",{name:p}):l("Not changed")})]})]})}function Np({colors:e,name:o,nameId:t,open:r,menuId:a,labelId:n,buttonRef:s,onClick:i,onKeyDown:f,onEdit:u}){return Ko("div",{className:"sf-secttheme-btn",children:[$("button",{ref:s,type:"button",className:"sf-theme-pick","aria-expanded":r,"aria-controls":a,"aria-labelledby":`${n} ${t}`,onClick:i,onKeyDown:f,children:e?$(Dp,{colors:e}):$("span",{className:"sf-secttheme-nopreview","aria-hidden":"true"})}),Ko("div",{className:"sf-theme-foot",children:[$("span",{id:t,className:"sf-theme-name",children:o}),u&&$(ri,{variant:"secondary",size:"sm",className:"sf-theme-edit","aria-label":l("Edit {name}",{name:o}),onClick:u,children:l("Edit")}),$("button",{type:"button",className:"sf-secttheme-caret","aria-hidden":"true",tabIndex:-1,onClick:i,children:$("span",{className:"sf-multi-caret",children:"\u25BE"})})]})]})}import{useCallback as si,useEffect as pk,useRef as dn}from"react";function Mp(e=ao()){return(o,t,r)=>{let a=Ue(e).theme;return a?a.update(o,r?{siteId:r}:void 0):Promise.reject(new bs("invalid","This backend stores no site theme."))}}function Hp(e){return e.themeFromDocument?{status:"skipped",reason:"template"}:e.token?null:{status:"skipped",reason:"no-token"}}async function mk(e,o=Mp()){let{themeFromDocument:t,token:r,siteId:a,patch:n}=e,s=Hp({themeFromDocument:t,token:r});if(s)return s;if(Object.keys(n).length===0)return{status:"skipped",reason:"empty"};try{return await o(n,r,a??void 0),{status:"saved"}}catch(i){return{status:"failed",error:i}}}function zt({themeFromDocument:e,tokenRef:o,siteId:t,onResult:r}){let a=dn(null),n=dn({}),s=Ae(),i=dn(r);i.current=r;let f=dn(null),u=si(x=>{if(x.status==="skipped"){let h=`skipped:${x.reason}`;if(f.current===h)return;f.current=h}else f.current=null;i.current?.(x)},[]),p=si(async()=>{a.current&&(clearTimeout(a.current),a.current=null);let x=n.current;n.current={};let h=await mk({themeFromDocument:e,token:o?.current,siteId:t,patch:x},Mp(s));return u(h),h},[e,o,t,u,s]),m=si((x,h=!1)=>{let b=Hp({themeFromDocument:e,token:o?.current});if(b){u(b);return}n.current={...n.current,...x},a.current&&clearTimeout(a.current),h?p():a.current=setTimeout(()=>{p()},500)},[e,o,p,u]);return pk(()=>()=>{p()},[p]),{persist:m,flush:p}}var Sk="Follow the page",x4="Follow the slideshow",Ck=e=>l("Editing {name} changes it everywhere.",{name:e});function vk({colors:e}){if(!e)return Te("span",{className:"sf-secttheme-chip sf-secttheme-chip--none","aria-hidden":"true"});let o=xo(e);return xt("span",{className:"sf-secttheme-chip","aria-hidden":"true",children:[Te("i",{style:{background:o.background}}),Te("i",{className:"sf-secttheme-chip-accent",style:{background:o.accent}})]})}function wk({themes:e,value:o,onPick:t,onEdit:r,menuId:a,followLabel:n}){return xt("div",{className:"sf-multi-menu sf-secttheme-menu",id:a,role:"listbox",children:[n!==void 0&&xt(xk,{children:[xt("button",{type:"button",role:"option","aria-selected":o===null,className:`sf-secttheme-item${o===null?" is-active":""}`,onClick:()=>t(tn),children:[Te(vk,{}),Te("span",{className:"sf-secttheme-name",children:l(n)})]}),Te("div",{className:"sf-secttheme-sep",role:"presentation"})]}),o!==null&&e[o]&&Te("p",{className:"sf-secttheme-oncard",role:"presentation",children:l("{name} is on this section",{name:Wr(o)})}),e.map((s,i)=>i===o?null:Te(cn,{role:"option",index:i,colors:s,selected:!1,onPick:()=>t(i),onEdit:()=>r(i)},i))]})}function kk({index:e,colors:o,onChange:t,onDone:r}){let a=Wr(e),n=Gp();return xt("div",{className:"sf-secttheme-sheet",children:[xt("div",{className:"sf-secttheme-sheet-head",children:[Te("span",{children:a}),Te("button",{type:"button",className:"sf-secttheme-done",onClick:r,children:l("Done")})]}),Te("div",{className:"sf-secttheme-rows",children:Te(li,{colors:o,onChange:t,idPrefix:n})}),Te("p",{className:"sf-secttheme-warn",children:Ck(a)})]})}function Up({value:e,onChange:o,followLabel:t,hint:r}){let{theme:a,setTheme:n}=Z(),s=Qe(a),i=hk(Dt),f=i?.tokenRef,u=i?.siteId??null,p=!i?.capabilities?.hasSiteTheme,{persist:m,flush:x}=zt({themeFromDocument:p,tokenRef:f,siteId:u}),h=Qe(s),b=h.themes,C=Ms(e),k=C!==null?b[C]:void 0,v=k??(b.length?Ot(h):void 0),[w,g]=Wp(!1),[y,E]=Wp(null),F=zp(null),L=zp(null),B=Gp(),O=Ik(()=>{g(!1),E(null)},[]);gk(()=>{if(!w&&y===null)return;let H=W=>{F.current&&!F.current.contains(W.target)&&(x(),O())};return document.addEventListener("mousedown",H),()=>document.removeEventListener("mousedown",H)},[w,y,O,x]);let M=H=>{o(H),O()},re=H=>{if(y===null)return;let W=b.map((oe,Oe)=>Oe===y?H:oe),A={...h,themes:W};n(A),m({selected_preset:A.selected,theme_presets:A.themes})};return xt("div",{className:"sf-secttheme",ref:F,children:[Te(yk,{label:l("Theme"),icon:Te(bk,{}),labelId:`${B}-label`,hint:r,children:Te(Np,{colors:v,onEdit:C!==null?()=>{E(C),g(!1)}:void 0,name:k?Wr(C):l(t??Sk),nameId:`${B}-value`,labelId:`${B}-label`,open:w,menuId:B,buttonRef:L,onClick:()=>{E(null),g(H=>!H)},onKeyDown:H=>{H.key==="Escape"&&(w||y!==null)&&(H.preventDefault(),O())}})}),w&&y===null&&Te("div",{onKeyDown:H=>{H.key==="Escape"&&(H.preventDefault(),O(),L.current?.focus())},children:Te(wk,{themes:b,value:C,onPick:M,onEdit:H=>{E(H),g(!1)},menuId:B,followLabel:t})}),y!==null&&b[y]&&Te(kk,{index:y,colors:b[y],onChange:re,onDone:()=>{x(),O(),L.current?.focus()}})]})}import{jsx as $p}from"react/jsx-runtime";import{useId as Tk}from"react";import{FieldSelect as Fk}from"efficient-easel/fields";import{SettingsField as Ek}from"efficient-easel/panel";function Pk(e){return e.map(({value:o,label:t,group:r,thumb:a,meta:n})=>({value:o,label:t,...r!==void 0?{group:r}:{},...a!==void 0?{thumb:a}:{},...n!==void 0?{meta:n}:{}}))}function C4({label:e,options:o,fallback:t,value:r,onChange:a,placeholder:n,bare:s=!1,icon:i}){let f=Tk(),u=`${f}-label`,p=`${f}-button`,m=r??"",x=o.some(k=>k.value===m)?m:t,h=l(e),b=n===void 0?void 0:l(n),C=$p(Fk,{id:p,value:x,options:Pk(o),onChange:a,placeholder:b,searchPlaceholder:b,...s?{ariaLabel:h}:{ariaLabelledBy:`${u} ${p}`},searchable:!0,groupCount:!0,inline:!0});return s?C:$p(Ek,{label:h,labelId:u,icon:i,children:C})}import{jsx as It,jsxs as Ak}from"react/jsx-runtime";import{SettingsField as em}from"efficient-easel/panel";import{LinkIcon as Bk}from"efficient-easel/icons";import{LinkPicker as _k,TextLinkField as Dk}from"efficient-shell/ui";import{useEffect as Jp,useMemo as mn,useRef as Nk,useState as pn}from"react";function qp(){return ao().auth.token}var un="homepage";function jp(e){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}var Kp=[{value:"page",label:"Page"},{value:"anchor",label:"Anchor"},{value:"blog",label:"Blog post",needs:"service"},{value:"product",label:"Product",needs:"commerce"},{value:"custom",label:"Custom URL"}];function Vp(e){return e.offersCommerce&&e.offersService?Kp:Kp.filter(o=>!o.needs||(o.needs==="commerce"?e.offersCommerce:e.offersService))}function Gr(e){return e===un?"/":`/${e}`}function Yp(e){return`/journal/${e}`}function L4(e){return`/wheels/${e}`}function Xp(e,o){return`${Gr(e)}#${o}`}function Lk(e){return jp(e)}function Ok(e){return typeof e=="string"?e.trim():e&&typeof e=="object"&&typeof e.text=="string"?e.text.trim():""}function Zp(...e){let o=new Set,t=[];for(let r of e)for(let a of r?.content??[]){let n=Ok(a?.props?.anchor);if(!n)continue;let s=Lk(n);!s||o.has(s)||(o.add(s),t.push({slug:s,name:n}))}return t}function O4(e){let o=e.indexOf("#"),t=o===-1?e:e.slice(0,o),r=t.indexOf("?");return r===-1?t:t.slice(0,r)}var Rk=()=>({choosePage:l("Choose a page"),chooseSection:l("Choose a section"),noSections:l("No section anchors yet"),sectionHint:l("Jumps to a section on that page."),choosePost:l("Choose a post"),chooseProduct:l("Choose a product")});function Qp(e,o,t){if(!e)return"page";if(e.startsWith("/journal/"))return"blog";if(e.startsWith("/wheels/"))return"product";if(e.includes("#")){let r=e.slice(0,e.indexOf("#"));if(r===""||r==="/"||o.includes(r))return"anchor"}return e==="/"||o.includes(e)||t&&t.listingPaths.includes(t.targetOf(e))?"page":"custom"}function ii(e,o){let t=Rk(),r=e.pages.map(p=>({value:Gr(p.slug),label:p.title})),a=o?.pageOptions?o.pageOptions(r):r,n=a.map(p=>p.value),s=e.pages.map(p=>({label:p.title,options:Zp(...p.docs).map(m=>({value:Xp(p.slug,m.slug),label:m.name}))})).filter(p=>p.options.length>0),i=p=>{switch(p){case"page":return{type:"select",options:a,placeholder:t.choosePage};case"anchor":return{type:"groups",groups:s,placeholder:s.length?t.chooseSection:t.noSections};case"blog":return{type:"select",options:e.posts.map(m=>({value:Yp(m.slug),label:m.title||m.slug})),placeholder:t.choosePost};case"product":return{type:"select",options:e.products.map(m=>({value:m.href,label:m.name||m.href})),placeholder:t.chooseProduct};case"custom":return{type:"text"}}},f=Vp(e.offers).map(p=>({value:p.value,label:l(p.label),target:i(p.value),...p.value==="anchor"?{hint:t.sectionHint}:{},...p.value==="blog"||p.value==="product"?{hideWhenEmpty:!0}:{}}));if(!o)return{kinds:f,rules:{kindOf:p=>Qp(p,n),targetOf:p=>p,readFilter:()=>null,withFilter:p=>p}};let u=p=>{let m=o.withFilter(p,null);return o.listingPaths.includes(m)?m:p};return{kinds:f,rules:{kindOf:p=>Qp(p,n,{listingPaths:o.listingPaths,targetOf:u}),targetOf:u,readFilter:o.readFilter,withFilter:o.withFilter},filtersFor:p=>o.listingPaths.includes(p)?o.filtersFor(p):null}}function om(e){let o=new Map;return(t="")=>{let r=qp(),a=o.get(t);if(!a||a.token===null&&r!==null){let n=r||!ao().usesBridgedToken?e(r??"",t).catch(()=>[]):Promise.resolve([]);return o.set(t,{promise:n,token:r}),n}return a.promise}}var Mk=om(async(e,o)=>{let t=o?{siteId:o}:void 0,{pages:r}=Ue();return r.linkTargets?r.linkTargets(t):(await r.list(t)).map(a=>({id:a.id,slug:a.slug,label:a.label,layout:null}))}),Hk=om(async(e,o)=>await Ue().blog?.posts(o?{siteId:o}:void 0)??[]);function zk({value:e,onChange:o,label:t="Link",data:r,filters:a}){let n=mn(()=>ii(r,a),[r,a]),s=l(t);return It(em,{label:s,icon:It(Bk,{}),children:It(_k,{value:e,onChange:i=>o(i),kinds:n.kinds,rules:n.rules,filtersFor:n.filtersFor,label:s})})}function tm(){let{siteId:e,capabilities:o}=Se(),{offersCommerce:t,hasBlog:r}=o,[a,n]=pn([]),[s,i]=pn([]),[f,u]=pn([]),[p,m]=pn(null),x=Ae().chrome,h=x?.products?.list,b=x?.linkFilters,C=b?void 0:x?.linkRow,k=Nk(!0);Jp(()=>(k.current=!0,()=>{k.current=!1}),[]),Jp(()=>{let g=!0;return Mk(e??void 0).then(y=>g&&k.current&&n(y)),r&&Hk(e??void 0).then(y=>g&&k.current&&i(y)),t&&h?.().then(y=>g&&k.current&&u(y)),t&&b?b.load(e).catch(()=>null).then(y=>g&&k.current&&m(()=>y)):m(null),()=>{g=!1}},[e,t,r,h,b]);let v=mn(()=>({pages:a.filter(g=>!yu(g.slug)).map(g=>({slug:g.slug,title:g.label,docs:[g.layout]})),posts:r?s.map(g=>({slug:g.slug,title:g.title})):[],products:t?f.map(g=>({href:g.href,name:g.name})):[],offers:{offersCommerce:t,offersService:r}}),[a,s,f,t,r]),w=mn(()=>p?p(v.pages):null,[p,v]);return{data:v,filters:w,pages:a,offersCommerce:t,HostLinkRow:C}}function X4({label:e,icon:o,text:t,onTextChange:r,link:a,onLinkChange:n}){let{data:s,filters:i}=tm(),f=mn(()=>ii(s,i),[s,i]),u=l(e);return It(em,{label:u,icon:o,children:It(Dk,{label:u,text:t,onTextChange:r,link:a,onLinkChange:p=>n(p),kinds:f.kinds,rules:f.rules,filtersFor:f.filtersFor})})}function rm({value:e,onChange:o,label:t="Link"}){let r=typeof e=="string"?e:"",{data:a,filters:n,pages:s,offersCommerce:i,HostLinkRow:f}=tm(),u=a.pages.map(m=>Gr(m.slug)),p=i&&f&&(r==="/"||u.includes(r))?f:void 0;return Ak("div",{children:[It(zk,{value:r,onChange:o,label:t,data:a,filters:n}),p&&It(p,{value:r,onChange:o,pages:s})]})}import{UiIcon as jm}from"efficient-easel/draw/client";var lo={min:10,max:200,step:10};function am(e,o){let t=typeof e=="number"?e:void 0,r=typeof o=="number"?o:void 0;if(!(t===void 0&&r===void 0))return{paddingTop:t,paddingBottom:r}}var Wk="sf-pad-top-phone",Gk="sf-pad-bottom-phone",Uk="--sf-pad-t-phone",$k="--sf-pad-b-phone",qk="sf-pad-left-phone",jk="sf-pad-right-phone",Kk="--sf-pad-l-phone",Vk="--sf-pad-r-phone";function sm(e,o,t,r,a,n,s,i){let f=am(e,o)??{},u={},p=["sf-section-pad"];typeof t=="number"&&(p.push(Wk),u[Uk]=`${t}px`),typeof r=="number"&&(p.push(Gk),u[$k]=`${r}px`);let m={};return typeof a=="number"&&(m.paddingLeft=a),typeof n=="number"&&(m.paddingRight=n),typeof s=="number"&&(p.push(qk),u[Kk]=`${s}px`),typeof i=="number"&&(p.push(jk),u[Vk]=`${i}px`),p.length===1&&am(e,o)===void 0&&!Object.keys(m).length?null:{className:p.join(" "),style:{...f,...m,...u}}}var nm=e=>typeof e=="number"?e:void 0;function lm(e,o,t){let r=nm(e)??t,a=nm(o);return r===void 0?a:a===void 0?r:r+a}function Q4(e,o={}){return{top:lm(e.padTop,e.sectionPaddingTop,o.top),bottom:lm(e.padBottom,e.sectionPaddingBottom,o.bottom)}}function J4(e){return{top:e.sectionPaddingTop,bottom:e.sectionPaddingBottom,topPhone:e.sectionPaddingTopPhone,bottomPhone:e.sectionPaddingBottomPhone,left:e.sectionPaddingLeft,right:e.sectionPaddingRight,leftPhone:e.sectionPaddingLeftPhone,rightPhone:e.sectionPaddingRightPhone}}function e6(e){return sm(e.top,e.bottom,e.topPhone,e.bottomPhone,e.left,e.right,e.leftPhone,e.rightPhone)}function o6(e,o){let t=r=>typeof r=="number"?r+o:void 0;return sm(t(e.top),t(e.bottom),t(e.topPhone),t(e.bottomPhone),e.left,e.right,e.leftPhone,e.rightPhone)}var Yk=["auto","fixed","screen"],Xk=["px","%"];var Zk="var(--sf-header-h, 88px)",fi={min:40,max:2e3,step:10,fallback:600},ci={min:10,max:200,step:5,fallback:100},Qk="sf-section-minh",im={base:"--sf-section-minh",small:"--sf-section-minh-s"},cm=e=>typeof e=="string"&&Yk.includes(e),Jk=e=>typeof e=="string"&&Xk.includes(e);function xn(e){let o=cm(e.sectionHeightMode)?e.sectionHeightMode:"auto",t=o==="screen"?"%":Jk(e.sectionHeightUnit)?e.sectionHeightUnit:"px",r=o==="screen"?ci.fallback:fi.fallback,a=typeof e.sectionHeightValue=="number"?e.sectionHeightValue:r;return{mode:o,value:a,unit:t}}function dm(e){let{mode:o,value:t,unit:r}=xn(e);if(o==="auto")return;if(o==="fixed"&&r==="px")return[`${t}px`,null];let a=t/100,n=s=>o==="screen"?`(100${s} - ${Zk})`:`100${s}`;return[`calc(${n("vh")} * ${a})`,`calc(${n("svh")} * ${a})`]}function e0(e){let o=dm(e);if(!o)return;let[t,r]=o;return{display:"grid",[im.base]:t,...r?{[im.small]:r}:{}}}var r6=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),Wt="Height",o0="sf-section-minh-phone",fm={base:"--sf-section-minh-p",small:"--sf-section-minh-ps"};function di(e){return cm(e.sectionHeightModePhone)}function a6(e){return xn({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone})}function t0(e){let o=e0(e),t=di(e)?dm({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone}):void 0;if(!o&&!t)return null;let r=[Qk],a={...o??{}};return t&&(r.push(o0),a[fm.base]=t[0],t[1]&&(a[fm.small]=t[1])),{className:r.join(" "),style:a}}function n6(e){return t0(e)!==null}var In="Stick to top",Vo={min:0,max:200,step:4,fallback:0},r0="sf-section-stick",a0="sf-section-stick-phone-on",n0="sf-section-stick-phone-off",um={desktop:"--sf-stick-distance",phone:"--sf-stick-distance-phone"},s6=new Set(["CategoryBar","DocTabs","IntroBleed"]);function pm(e){let o=typeof e=="number"&&Number.isFinite(e)?e:Vo.fallback;return Math.min(Vo.max,Math.max(Vo.min,Math.round(o)))}function ui(e){return typeof e.stickTopPhone=="boolean"}function pi(e){let o=e.stickTop===!0,t=pm(e.stickTopDistance),r=ui(e),a=r?e.stickTopPhone===!0:o,n=r?pm(e.stickTopDistancePhone):t;return{desktop:o,desktopDistance:t,phone:a,phoneDistance:n,ownPhone:r}}function i6(e){let o=pi(e);if(!o.desktop&&!o.phone)return null;let t=[r0],r={};return o.desktop&&(r[um.desktop]=`${o.desktopDistance}px`),(o.ownPhone||o.phone!==o.desktop)&&(t.push(o.phone?a0:n0),o.phone&&(r[um.phone]=`${o.phoneDistance}px`)),o.desktop||t.push("sf-section-stick-desktop-off"),{className:t.join(" "),style:r}}var l0=["column","row","tabs"],mm="Direction",s0={column:"Stacked",row:"One row",tabs:"Tabs"},xm={Flex:l0,HeroGroup:["column","row"]},i0={Flex:"row",HeroGroup:"column"},f0={column:"flex-col",row:"flex-row",tabs:"flex-col"};function hn(e,o){return xm[e].includes(o)?o:i0[e]}function c6(e,o){return f0[hn(e,o)]}function Im(e){return xm[e].map(o=>({label:s0[o],value:o}))}var mi=[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"Space between",value:"between"},{label:"End",value:"end"}],bm=[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"Stretch",value:"stretch"}],ym="Wrap",xi=[{label:"Wrap",value:"wrap"},{label:"No wrap",value:"nowrap"}],hm={start:"justify-start",center:"justify-center",between:"justify-between",end:"justify-end"},gm={start:"items-start",center:"items-center",stretch:"items-stretch"};function u6(e,o){let t=typeof e=="string"&&e in hm?hm[e]:"",r=typeof o=="string"&&o in gm?gm[o]:"";return[t,r].filter(Boolean).join(" ")}function p6(e){return e===!0||e==="wrap"?"flex-wrap":""}var Ii="Block widths",gn=[{label:"Fit content",value:"content",weights:null},{label:"Equal",value:"equal",weights:[1,1]},{label:"Big left",value:"bigLeft",weights:[2,1]},{label:"Big right",value:"bigRight",weights:[1,2]},{label:"Bigger left",value:"biggerLeft",weights:[3,1]},{label:"Bigger right",value:"biggerRight",weights:[1,3]}],Ur="[&>*]:min-w-0 [&>*]:flex-1 [&>*]:basis-0",c0={equal:Ur,bigLeft:`${Ur} [&>*:first-child]:min-[800px]:grow-[2]`,bigRight:`${Ur} [&>*:last-child]:min-[800px]:grow-[2]`,biggerLeft:`${Ur} [&>*:first-child]:min-[800px]:grow-[3]`,biggerRight:`${Ur} [&>*:last-child]:min-[800px]:grow-[3]`};function m6(e){return typeof e=="string"?c0[e]??"":""}var Sm="Columns on phone",hi=1,Cm=3,d0={2:"max-[800px]:flex-wrap [&>*]:max-[800px]:min-w-0 [&>*]:max-[800px]:basis-[calc((100%_-_var(--sf-gap-len,0px))/2)]",3:"max-[800px]:flex-wrap [&>*]:max-[800px]:min-w-0 [&>*]:max-[800px]:basis-[calc((100%_-_var(--sf-gap-len,0px)_*_2)/3)]"};function x6(e){let o=Number(e);return d0[o]??"max-[800px]:flex-col"}var vm="Block spacing",gi=[{label:"Each block",value:"each"},{label:"Gap only",value:"gap"}],u0="sf-box-gap-only";function I6(e){return e==="gap"?u0:""}var p0=["solid","dashed","dotted"],m0=["top","right","bottom","left"],g6="sf-section-border",b6="sf-section-border-self",x0=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,wm=e=>typeof e=="number"&&Number.isFinite(e)?`${Math.min(20,Math.max(0,Math.round(e)))}px`:void 0;function km(e,{phone:o=!1}={}){if(!e||typeof e!="object")return;let t=o?"-phone":"",r={};for(let a of m0){let n=wm(e[a])??wm(e.width);n!==void 0&&(r[`--sf-border-${a}-width${t}`]=n)}return typeof e.style=="string"&&p0.includes(e.style)&&(r[`--sf-border-style${t}`]=e.style),typeof e.color=="string"&&x0.test(e.color)&&(r[`--sf-border-color${t}`]=e.color.toLowerCase()),Object.keys(r).length?r:void 0}function y6(e,o){let t=km(e),r=km(o,{phone:!0});return t||r?{...t,...r}:void 0}var Em="sf.gapContainer",Yo={min:-32,max:64,step:2},Pm={Grid:{sm:12,md:24,lg:40},Flex:{sm:12,md:24,lg:40},FooterGroup:{sm:8,md:16,lg:32},HeroGroup:null,Events:null,GalleryB:null,ProductGrid:null},Gt={Grid:24,Flex:24,FooterGroup:16,HeroGroup:0,Events:24,GalleryB:8,ProductGrid:2},I0=new Set(["Events","GalleryB"]);function bi(e,o,t){if(typeof o=="number"&&Number.isFinite(o)&&o>=Yo.min)return o;if(typeof o=="string"){let r=Pm[e]?.[o];if(typeof r=="number")return r}return typeof t=="number"&&Number.isFinite(t)?t:Gt[e]}var h0="sf-gap-overlap",g0="--sf-gap-overlap",Lm="--sf-block-gap",b0="--sf-block-gap-rem",ht={min:0,max:Yo.max,step:Yo.step};function y0(e){if(typeof e!="number"||!Number.isFinite(e))return null;let o=Math.min(Math.max(Math.round(e),ht.min),ht.max);return o-o%ht.step}function C6(e){let o=y0(e);return o===null?{}:{[Lm]:`${o}px`,[b0]:`${o/16}rem`}}var Tm="sf-gap-zone",Fm="--sf-gap-len";function yi(e,o){return typeof o=="number"&&Number.isFinite(o)&&o>=Yo.min?!0:typeof o=="string"&&typeof Pm[e]?.[o]=="number"}var S0={block:"sf-gap-overlap-block",inline:"sf-gap-overlap-inline",both:"sf-gap-overlap-both"};function v6(e,o,t){if(!yi(e,o)){let a=`${Gt[e]}px`,n=I0.has(e)?`var(--sf-card-gap, ${a})`:a;return{className:` ${Tm}`,style:{[Fm]:`var(${Lm}, ${n})`}}}let r=bi(e,o);return r>=0?{className:` ${Tm}`,style:{[Fm]:`${r}px`}}:{className:` ${h0} ${S0[t]}`,style:{gap:"0px",[g0]:`${-r/2}px`}}}var Om=["transparent","var(--section-bg)","var(--surface)","var(--surface-2)"],Rm={transparent:"No fill","var(--section-bg)":"Section band","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},bn="var(--section-bg)",yn="inherit";function k6(e,o){return e===yn?bn:e===void 0?o:Sn(e)}var C0=/var\(\s*--(surface-2|surface|line)\s*(?=[,)])/g;function Sn(e){return e.replace(C0,"var(--site-$1")}function Am(e,o){return e===yn?!0:e===void 0&&o===bn}var Bm=["transparent","var(--wheel-stage)","var(--surface)","var(--surface-2)"],_m={transparent:"No fill","var(--wheel-stage)":"Image stage","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},Ut="var(--wheel-stage)",Cn="transparent",$r="inherit";function E6(e,o){return Sn(Si(e,o))}function Si(e,o){return e===$r?Ut:e==null?o:e===!0?Ut:e===!1?Cn:e}function P6(e){return typeof e=="string"&&e!==$r?Sn(e):Ut}function L6(e){return e!==Cn&&e!=="none"&&e!==""}function Dm(e,o){return e===$r||e===!0?!0:e==null?o===Ut:!1}var Nm="inherit",vn="fixed",Mm=e=>typeof e!="number"&&e!==vn,v0="var(--sf-heading-max, 9999px)";function R6(e,o,t,r){if(typeof e=="number")return`${e}px`;if(e===vn)return o;let a=r?`var(--size-${r}, ${o})`:o;return t==="heading"?`min(${a}, ${v0})`:a}var Be={min:1e3,max:2e3,step:50,default:1600};function Hm(e){return{maxWidth:e,marginInline:"auto",width:"100%"}}function B6(e,o){if(e!==!1)return null;let t=typeof o=="number"?o:Be.default;return Hm(t)}var zm="--sf-site-width",wn=`var(${zm},${Be.default}px)`,_6=`max-w-[${wn}]`,D6=`max-w-[${Be.default}px]`;function w0(e){return typeof e!="number"||!Number.isFinite(e)?Be.default:Math.round(Math.min(Math.max(e,Be.min),Be.max))}function N6(e){let o=w0(e);return o===Be.default?{}:{[zm]:`${o}px`}}var So={min:0,max:80,step:4,default:40},Wm="--sf-site-gutter",$e=`var(${Wm},${So.default}px)`,k0=`px-[${$e}]`;var Xo={md:`min(24px,${$e})`,sm:`min(20px,${$e})`,frame:`min(24px,${$e})`,tabs:`min(16px,${$e})`},M6=[[`max-[1100px]:px-[${Xo.md}]`,"max-[1100px]:px-6"],[`max-[1100px]:px-[${Xo.tabs}]`,"max-[1100px]:px-4"],[`max-[960px]:px-[${Xo.frame}]`,"max-[960px]:px-6"],[`max-[900px]:px-[${Xo.md}]`,"max-[900px]:px-6"],[`max-[800px]:px-[${Xo.md}]`,"max-[800px]:px-6"],[`max-[720px]:px-[${Xo.sm}]`,"max-[720px]:px-5"],[`max-[800px]:px-[${Xo.sm}]`,"max-[800px]:px-5"],[`max-[640px]:px-[${Xo.sm}]`,"max-[640px]:px-5"],[`min-[800px]:px-[${$e}]`,"min-[800px]:px-10"],[`max-[720px]:px-[min(24px,${$e})]`,"max-[720px]:px-6"],[`max-[800px]:-mx-[min(20px,${$e})]`,"max-[800px]:-mx-5"],[`max-[720px]:-mx-[min(20px,${$e})]`,"max-[720px]:-mx-5"],[`-mx-[${$e}]`,"-mx-10"],[k0,"px-10"]];var H6="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]";function T0(e){return typeof e!="number"||!Number.isFinite(e)?So.default:Math.round(Math.min(Math.max(e,So.min),So.max))}function z6(e){let o=T0(e);return o===So.default?{}:{[Wm]:`${o}px`}}var kn=`min(var(--sf-page-cap,${wn}),${wn})`,W6=`max-w-[${kn}]`,G6=`max-w-[min(var(--sf-page-cap,${Be.default}px),${Be.default}px)]`,Gm="--sf-hero-cap",F0=`var(${Gm},none)`,U6=`max-w-[${F0}]`,Ci="--sf-hero-bleed-m",vi="--sf-hero-bleed-w",$6=`var(${Ci},calc(50% - 50vw))`,q6=`var(${vi},100vw)`,j6=`mx-[var(${Ci},calc(50%_-_50vw))]`,K6=`w-[var(${vi},100vw)]`,wi="--sf-hero-chrome-x",ki="--sf-hero-chrome-cap";function V6(e){return e===!0?{[Gm]:kn,[Ci]:"auto",[vi]:"100%",[wi]:"24px",[ki]:"none"}:{}}var Ti=`calc(${wn} - ${$e}*2)`,Y6=`max-w-[${Ti.replace(/ /g,"_")}]`;var E0="--sf-chrome-cap",P0=`var(${E0},${Ti})`,X6="data-page-width";function Z6(e){return e==="full"?"full":null}function Q6(e){return e==="full"?null:Hm(e==="content"?Ti:P0)}function J6(e){if(e==="full")return"full";if(e==="content")return"content"}var L0=["contained","page","full"],Um=["full","page"],qr={full:"Full width",page:"Content width"},Fi="inherit",O0=e=>typeof e=="string"&&L0.includes(e),R0=e=>e===Fi;function Ei(e,o){let t=typeof e.pageWidth=="number"?e.pageWidth:Be.default;return R0(e.widthMode)?{mode:"full",pageWidth:t,inherited:!0}:e.widthMode==="contained"?{mode:"page",pageWidth:t,inherited:!1}:O0(e.widthMode)?{mode:e.widthMode,pageWidth:t,inherited:!1}:e.contained===!0?{mode:"page",pageWidth:t,inherited:!1}:typeof e.fullWidth=="boolean"?{mode:e.fullWidth?"full":"page",pageWidth:t,inherited:!1}:e.contained===!1?{mode:"full",pageWidth:t,inherited:!1}:{mode:o,pageWidth:t,inherited:o==="full"}}function Pi(e){return Ei(e,"page").mode==="full"}import{jsx as A0}from"react/jsx-runtime";import{createContext as B0,useContext as _0}from"react";var D0=2,N0=D0+1,$m=B0(2);function qm({tier:e,children:o}){return A0($m.Provider,{value:e,children:o})}function Li(e){let o=_0($m);return N0+Math.max(0,e-o)}import{withStyleKind as NT}from"efficient-easel/style-clipboard";import{TEXT_CONTROL_KINDS as IW,SCALAR_TEXT_CONTROLS as hW}from"efficient-easel/draw";function jt(e){for(let[o,t]of Object.entries(e))t&&typeof t=="object"&&!Do(t)&&NT(t,`section:${o}`);return e}function ux(){return null}function Bi(e){if(!e.trim())throw new Error("noGlyph() needs a reason naming the ruling that decided it.");return I(ux,{},e)}function MT(e){return e.type===ux}function Co(e){return MT(e)?void 0:e}function qt(e,o){return l("{value} from {from}",{value:e,from:o})}function HT(){let{appState:e}=Kr(a=>a),o=e.data.root?.props??{},{mode:t,pageWidth:r}=Ei(o,"full");return t==="page"?qt(`${r}px`,l("the page")):t==="contained"?qt(l("Contained"),l("the page")):qt(l("Full"),l("the page"))}function zT(){let{blockGap:e}=Z();return e===null?l("this container's own spacing"):qt(`${e}px`,l("Site styles"))}function WT({inherited:e,onReset:o,label:t}){return I(qe,{words:j()?.panel,label:l(t),changed:!e,detail:zT(),onReset:o})}function GT({inherited:e,onReset:o,label:t}){return I(qe,{words:j()?.panel,label:l(t),changed:!e,detail:HT(),onReset:o})}function Kt({value:e,onChange:o,label:t,placeholder:r,hint:a,multiline:n,hideable:s=!0,markup:i=!0}){let{text:f,hidden:u}=Qo(e),p=Ri(null),m=Ri(null),x=w=>o(s?{text:w,hidden:u}:w),h=()=>o({text:f,hidden:!u}),b=s&&u,C=H0(),k=a?VT(a)?I("span",{className:"sf-hint-keep sf-hint-while-typing",children:l(a)}):I(qu,{children:l(a)}):void 0,v=u?l("Show {label} on the slide",{label:l(t)}):l("Hide {label} on the slide",{label:l(t)});return I(ne,{label:l(t),icon:I(gT,{}),htmlFor:C,className:b?"is-hidden":void 0,hint:k,action:s?I(dx,{content:v,children:I("button",{type:"button",className:"sf-field-eye","aria-pressed":u,"aria-label":v,onClick:h,children:u?I(jm,{name:"eye-off",size:14}):I(jm,{name:"eye",size:14})})}):void 0,children:bt("div",{className:"sf-copybox",children:[i&&I(Ks,{target:n?m:p,value:f,onChange:x}),n?I("textarea",{id:C,ref:m,value:f,placeholder:r===void 0?void 0:l(r),onChange:w=>x(w.target.value)}):I("input",{id:C,ref:p,type:"text",value:f,placeholder:r===void 0?void 0:l(r),onChange:w=>x(w.target.value)})]})})}function dW(e,o){return{...e,[U0]:o}}function uW(e){let o=e[Bo];if(!o)throw new Error("withOffPage: the field holds no authored text");return{...e,[Bo]:{...o,offPage:!0}}}function En(e){return!e||typeof e!="object"?!1:e[Bo]?.offPage===!0}var px="sfPanelOnly";function pW(e){if(!e[Bo])throw new Error("withPanelOnly: the field holds no authored text");return{...e,[px]:!0}}function mx(e){return!!e&&typeof e=="object"&&e[px]===!0}function mW(e){let o=e[Bo];if(!o)throw new Error("withIdentifier: the field holds no authored text");return{...e,[Bo]:{...o,identifier:!0}}}function gW(e,o){if(!e[Bo])throw new Error("inOwnBox: the field holds no authored text");let{[gp]:t,...r}=e;return{...r,[Ys]:!0,render:o}}var UT=new Set(DT),Vt=(e,o)=>{let t={...o,[Bo]:e};if(!UT.has(e.control))return t;let r=o.render;return{...Mr(t,"authored-copy"),render:a=>I(Cp,{name:a.name,children:r(a)})}},bW="Everything else on this block comes from the linked post. Unlink it to edit by hand.",$T={field:"source.slug",set:!0},yW={not:$T},qT="Select a word, then press the highlighter.",jT="A short name so a link can jump straight to this section, like yoursite.com/page#about.",KT=new Set([qT]),VT=e=>KT.has(e);function SW(e,o,t){return Vt({control:"text",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Kt,{value:r,onChange:a,label:e,placeholder:o,hint:t})})}function CW(e,o,t){return Vt({control:"textarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Kt,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0})})}function YT(e,o,t){return Vt({control:"plainText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Kt,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1,markup:!1})})}function vW(e,o,t){return Vt({control:"copyText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Kt,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1})})}function wW(e){return{type:"custom",[W0]:{label:e},render:({value:o,onChange:t})=>I(rm,{value:z0(o),onChange:t,label:e})}}function kW(e,o,t){return Vt({control:"plainTextarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Kt,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0,hideable:!1})})}var xx={Design:$0,Animation:Jm};function Ix(e,o){return e.includes("Design")?o!=="Design":null}function XT({label:e}){return I(ST,{title:l(e),level:Li(1)})}function ZT({level:e,label:o}){return e===1?I(XT,{label:o}):I(Yt,{label:o})}function hx(e,o){return{type:"custom",[Ai]:{label:e,level:o},render:()=>I(ZT,{level:o,label:e})}}function He(e){return hx(e,2)}function TW(e){return{type:"custom",render:()=>I(QT,{text:e})}}function QT({text:e}){return I("p",{className:"sf-note",children:l(e)})}function FW(e){return hx(e,1)}function EW(e){return Do(e)!==null&&e?.tabs!==void 0}var Km=new Map;function Pn(e,o){let t=`${e}\0${o?o.join(""):""}`,r=Km.get(t)??{type:"custom",tabs:o,[Ai]:{label:e,level:1},bucket:e,marker:!0,render:()=>I(_o,{})};return Km.set(t,r),r}var Vm=new Map;function _i(e){let o=Vm.get(e)??{type:"custom",[Ai]:{label:e,level:1},designGroup:e,marker:!0,...e==="Content"?{}:{fold:e},render:()=>I(_o,{})};return Vm.set(e,o),o}function JT(e){let o=e;return o?.marker===!0&&typeof o.fold=="string"?o.fold:null}function gx(e,o){return JT(e)===o?e:{...e,marker:!0,fold:o,render:()=>I(_o,{})}}function bx(e){let o=e;if(o.marker===!0&&o.fold===void 0)return e;let{fold:t,...r}=e;return{...r,marker:!0,render:()=>I(_o,{})}}function Yt({label:e}){return I(CT,{title:l(e),level:Li(2)})}function yx({swatches:e,current:o,onPick:t,names:r}){let a=e.find(i=>i.toLowerCase()===o.toLowerCase()),n=a?r?.[a]:void 0,s=n?l(n):o;return bt("div",{className:"sf-swatches",children:[e.map(i=>{let f=r?.[i]?l(r[i]):i;return I(dx,{content:f,children:I("button",{type:"button","aria-pressed":o.toLowerCase()===i.toLowerCase(),className:`sf-swatch ${o.toLowerCase()===i.toLowerCase()?"is-active":""}`,style:{background:i},onClick:()=>t(i),"aria-label":f})},i)}),I("span",{className:"sf-swatch-hex",children:s})]})}function PW(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=Am(t,o);return I(ne,{label:l(e),icon:I(V0,{}),changed:!a,action:I(qe,{words:j()?.panel,label:l(e),changed:!a,detail:l("the theme's section background"),onReset:()=>r(yn)}),children:yx({swatches:Om,current:a?bn:t??o??"",onPick:r,names:Rm})})}}}function eF(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=t,n=Dm(a,o);return I(ne,{label:l(e),icon:I(sT,{}),changed:!n,action:I(qe,{words:j()?.panel,label:l(e),changed:!n,detail:l("the theme's image stage"),onReset:()=>r($r)}),children:yx({swatches:Bm,current:n?Ut:Si(a,o),onPick:r,names:_m})})}}}function Ln(e=t=>t,o){return jt({_gSectionTheme:He(Yu),sectionAccent:{type:"custom",render:({value:t,onChange:r})=>I(Up,{value:e(t),onChange:r,followLabel:o})}})}function je({min:e,max:o,step:t,value:r,onChange:a,suffix:n="",readout:s=!0,notch:i,ariaLabel:f,disabled:u=!1}){let p=i!==void 0&&Number.isFinite(i)&&i>=e&&i<=o;return I("div",{className:p?"sf-slider has-notch":"sf-slider",style:p?{"--sf-notch":(i-e)/(o-e)}:void 0,children:I(_T,{min:e,max:o,step:t,value:r,suffix:n||void 0,showInput:s,label:f===void 0?void 0:l(f),disabled:u,size:"sm",className:"sf-slider-track",onChange:m=>{m!==null&&m!==r&&a(m)}})})}function $t(e,o,t,r,a,n,s="",i){return{type:"custom",render:f=>I(ne,{label:l(e),icon:Co(o),action:i?i("storedValue"in f?f.storedValue:f.value,f.onChange):void 0,children:je({min:t,max:r,step:a,value:typeof f.value=="number"?f.value:n,suffix:s,ariaLabel:e,onChange:f.onChange})})}}function Sx(e,o){let{min:t,max:r,step:a=1,unsetLabel:n,hint:s,restTrack:i,unsetMark:f,icon:u}=o;return{type:"custom",render:({value:p,onChange:m})=>{let x=typeof p=="number"?p:null,h=x===null;return I(ne,{label:l(e),icon:u?Co(u):void 0,value:h?f||n===void 0?void 0:l(n):`${x}px`,changed:!h,action:f?Zm(f,{changed:!h,onReset:()=>m(null)}):I(qe,{words:j()?.panel,label:l(e),changed:!h,onReset:()=>m(null)}),hint:typeof s=="string"?l(s):s,children:i?i({min:t,max:r,step:a,px:x,label:e,onChange:m}):je({min:t,max:r,step:a,value:x??t,readout:!1,ariaLabel:e,onChange:m})})}}}function LW(e){let o=$t("Gap",I(ox,{}),Yo.min,Yo.max,Yo.step,Gt[e],"px",(t,r)=>I(WT,{inherited:!yi(e,t),onReset:()=>r(void 0),label:"Gap"}));return{type:"custom",[Em]:e,render:t=>o.render({...t,value:bi(e,t.value,t.field?.siteGap),storedValue:t.value,onChange:r=>t.onChange(r)})}}var On="Corners";function Di(e){return{type:"custom",render:({value:o,onChange:t})=>{let r=typeof o=="number"&&Number.isFinite(o)?o:null,a=r!==null;return I(ne,{label:l(On),icon:I(J0,{}),changed:a,action:Zm(e.mark,{changed:a,onReset:()=>t(null)}),hint:e.hint,children:I(oF,{tier:e,px:r,onRadius:t})})}}}function Cx(e){let o=null;try{o=Qm()}catch{o=null}return[o?.values?.[e],t=>o?.onChange(e,t)]}function oF({tier:e,px:o,onRadius:t}){let r=e.useFollowed(),a=e.useClosedReason?e.useClosedReason():null,[n,s]=Cx(e.sidesKey),i=Po(n)??[...ct];return I(AT,{label:l(On),value:i,corners:Tu,onChange:f=>{let u=Po(f)??[];s(u.length===ct.length?null:u)},radius:o,onRadiusChange:t,radiusMin:to,radiusMax:lt,radiusStep:e.step??1,radiusPlaceholder:String(r),disabled:a!==null,disabledReason:a??void 0})}function vx(){return Mr({type:"custom",render:()=>I(Ht,{})},"always")}function tF({label:e,changed:o=!1,onReset:t=()=>{}}){let{cornerRadiusPx:r}=Z(),a=typeof r=="number"?`${r}px`:l("not set");return I(qe,{words:j()?.panel,label:l(e),changed:o,detail:r==null?l("the built-in corners"):qt(a,l("Site styles")),onReset:t})}function rF(){let{cornerRadiusPx:e}=Z();return typeof e=="number"?e:to}function aF(){return Di({sidesKey:"sectionCornerSides",useFollowed:rF,useClosedReason:()=>kx()?l(wx):null,mark:I(tF,{label:On}),hint:I(nF,{})})}var wx="This section runs edge to edge, so its corners sit off the page. Set Width to Content width to use them.";function kx(){return Pi(yt())}function nF(){return I(_o,{children:kx()?wx:"Follows Site styles \u25B8 Basics \u25B8 Corners until you set a number here."})}function Rn(){return jt({_gShape:He("Shape"),sectionCorners:aF(),sectionCornerSides:vx(),sectionBorder:Ym("desktop"),sectionBorderPhone:Ym("mobile")})}var lF=()=>({width:l("Border width"),sides:{top:l("Border top"),right:l("Border right"),bottom:l("Border bottom"),left:l("Border left")},style:l("Border style"),styles:{solid:l("Solid"),dashed:l("Dashed"),dotted:l("Dotted")},color:l("Border color"),unit:"px"});function sF(e){let o=Object.fromEntries(Object.entries(e).filter(([,t])=>t!=null&&t!==""));return Object.keys(o).length?o:void 0}function iF(){let e;try{let o=Qe(Z().theme);e=o.themes[o.selected]?.line}catch{e=void 0}return e||$d.line}function fF({value:e,onChange:o,tier:t}){let[r]=Cx("sectionBorder"),a=iF(),n=e&&typeof e=="object"?e:{},s=t==="mobile"?r&&typeof r=="object"?r:{}:{},[i,f]=Fn(()=>ET(n,s)),u=lF();return I(ne,{label:l("Border"),icon:I(Y0,{}),action:I(ix,{each:i,label:l("Each side"),onChange:f}),children:I(vT,{label:l("Border"),value:n,each:i,onChange:p=>o(sF(p)),placeholder:{sides:FT(s),style:s.style??"solid",color:s.color||a},presets:[a],words:u,max:20})})}function Ym(e){return ve(e,{type:"custom",render:({value:o,onChange:t})=>I(fF,{value:o,onChange:t,tier:e})})}function An(){return{_gMotion:He("Motion"),sectionAnimation:Hi("Entrance",I(Jm,{}),[...Zu],Hs)}}function Ni(){let e=null;try{let{appState:o,selectedItem:t}=Kr(a=>a),r=t?.props?.id?String(t.props.id):void 0;e=r?Ws(o?.data,r):null}catch{e=null}return e!==null&&Pi(e)}function Tx(e){let{cornerRadiusPx:o}=Z(),t=Ni(),r=typeof o=="number"?o:e,a=null;try{let{appState:s,selectedItem:i}=Kr(u=>u),f=i?.props?.id?String(i.props.id):void 0;a=f?Ws(s?.data,f):null}catch{a=null}if(t||!a)return r;let n=a.sectionCorners;return Fs(n)?n:r}function cF({label:e,changed:o=!1,onReset:t=()=>{}}){let r=Ni(),a=Tx(to),n=r?"Site":"Section";return I(qe,{words:j()?.panel,label:l(e),changed:o,detail:qt(`${a}px`,r?l("Site styles"):l("the section")),onReset:t})}function dF(){return I(_o,{children:Ni()?l("The section is full width, so this card follows Site styles \u25B8 Basics \u25B8 Corners."):l("Follows the section's Corners until you set a number here.")})}function uF(){return Di({sidesKey:"cardCornerSides",useFollowed:()=>Tx(to),mark:I(cF,{label:On}),hint:I(dF,{})})}function pF(){return{type:"custom",render:()=>I(Au,{})}}function OW(){return{_gShape:He("Shape"),cardCorners:uF(),cardCornerSides:vx(),cardCornersApplyAll:pF()}}function RW(){return Zo("Justify",I(K0,{}),mi,mi[0].value)}function AW(){return Zo("Item alignment",I(q0,{}),bm,"stretch")}function BW(){return Zo(ym,I(yT,{}),xi,xi[0].value)}function _W(){return{type:"custom",render:({value:e,onChange:o})=>{let t=gn.find(r=>r.value===e)??gn[0];return I(ne,{label:l(Ii),icon:I(ex,{}),value:l(t.label),children:I(cx,{className:"sf-gallery-layouts",label:l(Ii),value:t.value,onChange:o,options:gn.map(r=>({value:r.value,label:l(r.label),picture:I("span",{className:"sf-gallery-pic",children:mF(r.weights).map((a,n)=>I("i",{style:{gridColumn:`span ${a}`}},n))})}))})})}}}function mF(e){if(!e)return[3,4];let o=e.reduce((t,r)=>t+r,0);return e.map(t=>Math.round(t/o*12))}function DW(){return Zo(vm,I(ox,{}),gi,gi[0].value)}function NW(){return $t(Sm,I(uT,{}),hi,Cm,1,hi)}function MW(e){let o=Hi(mm,Bi("`Direction` names how a container's children run \u2014 a MODIFIER, not a thing. doc/naming.md N10.1 gives the idea a dash in its Glyph column; editor-shell's own `direction` meaning says the bare row is CORRECT and not an omission (SS seat, 2026-09-11)."),Im(e),hn(e,void 0));return{type:"custom",render:t=>o.render({...t,value:hn(e,t.value),onChange:r=>t.onChange(r)})}}function HW(e,o,t,r,a,n){return{type:"custom",render:({value:s,onChange:i})=>I(ne,{label:l(e),icon:I(_s,{noun:n}),action:I(qe,{words:j()?.panel,label:l(e),changed:!Mm(s),detail:l("the Text style in Site styles"),onReset:()=>i(Nm),defaultAction:{onPress:()=>i(vn),title:l("Keep this section's own built-in size"),icon:I(X0,{})}}),children:je({min:o,max:t,step:r,value:typeof s=="number"?s:a,suffix:"px",ariaLabel:e,onChange:i})})}}function zW(){return{_gCellWidth:He("Cell width"),gridSpan:Zo("Positions",I(ex,{}),[{label:"Auto",value:""},...Array.from({length:Za},(e,o)=>({label:o===0?"1 position":`${o+1} positions`,value:String(o+1)}))],"")}}function yt(){let e=null;try{e=Kr(o=>o).selectedItem}catch{e=null}return e?.props??{}}function xF({min:e,max:o,step:t,px:r,label:a,onChange:n,desktopKey:s,fallback:i}){let f=yt()[s],u=nn(void 0,f,i);return I(_o,{children:je({min:e,max:o,step:t,value:nn(r,f,i),readout:!1,ariaLabel:a,notch:u,onChange:n})})}function IF({label:e,desktopKey:o,fallback:t,changed:r=!1,onReset:a=()=>{}}){let n=yt()[o],s=nn(void 0,n,t);return I(qe,{words:j()?.panel,label:l(e),changed:r,detail:l("{value} on desktop",{value:`${s}px`}),onReset:a})}function hF(e){return Sx(e.label,{icon:e.icon,min:e.min,max:e.max,step:e.step,unsetLabel:"Follows Desktop",unsetMark:I(IF,{label:e.label,desktopKey:e.desktopKey,fallback:e.fallback}),restTrack:o=>I(xF,{...o,desktopKey:e.desktopKey,fallback:e.fallback})})}function WW(e){return{type:"custom",render:({value:o,onChange:t})=>I(bF,{...e,value:o,onChange:t})}}function gF({label:e,icon:o,options:t,value:r,resolved:a,restWord:n,onChange:s}){let i=t.some(f=>f.value===r);return I(ne,{label:l(e),icon:Co(o),action:I(qe,{words:j()?.panel,label:l(e),changed:i,detail:l("{value} on desktop",{value:l(n)}),onReset:()=>s(void 0)}),children:Mn({options:t,value:i?r:a,onChange:f=>s(f),ariaLabel:e})})}function bF({label:e,icon:o,options:t,desktopKey:r,resolve:a,value:n,onChange:s}){let i=yt()[r],f=a(void 0,i),u=t.find(p=>p.value===f)?.label??"";return I(gF,{label:e,icon:o,options:t,value:n,resolved:f,restWord:u,onChange:s})}var yF={Top:"Padding top",Bottom:"Padding bottom",Left:"Padding left",Right:"Padding right"},SF={Top:lx,Bottom:rx,Left:ax,Right:nx},CF=e=>{let o=SF[e];return I(o,{})};function GW(e={}){let o=e.keys?.top??"sectionPaddingTop",t=e.keys?.bottom??"sectionPaddingBottom",r=e.group!==!1,a=k=>yF[k],n=k=>$t(a("Top"),I(lx,{}),lo.min,lo.max,lo.step,k,"px"),s=(k,v,w,g=lo)=>ve("mobile",hF({label:a(k),icon:CF(k),desktopKey:v,min:g.min,max:g.max,step:g.step,fallback:w})),i=e.top??lo.min,f=e.bottom??lo.min,u="sectionPaddingLeft",p="sectionPaddingRight",m=e.sideBounds??lo,x=e.side??m.min,h=e.sidePhone??x,b=e.phone===!0,C=k=>b?ve("desktop",k):k;return jt({...r?{_gSpacing:He("Padding")}:{},[o]:C(n(i)),...b?{[Ro(o)]:s("Top",o,i)}:{},...e.only==="top"?{}:{[t]:C($t(a("Bottom"),I(rx,{}),lo.min,lo.max,lo.step,f,"px")),...b?{[Ro(t)]:s("Bottom",t,f)}:{}},...e.sides?{[u]:C($t(a("Left"),I(ax,{}),m.min,m.max,m.step,x,"px")),...b?{[Ro(u)]:s("Left",u,h,m)}:{},[p]:C($t(a("Right"),I(nx,{}),m.min,m.max,m.step,x,"px")),...b?{[Ro(p)]:s("Right",p,h,m)}:{}}:{}})}var jr=["top","right","bottom","left"],vF={top:"sectionPaddingTop",right:"sectionPaddingRight",bottom:"sectionPaddingBottom",left:"sectionPaddingLeft"},Xm=e=>typeof e=="number"?e:null;function wF(e,o,t){let r={};for(let a of jr)t[a]!==o[a]&&(r[e[a]]=t[a]??void 0);return r}function kF({tier:e,o}){let t=null;try{t=Qm()}catch{t=null}let r=t?.values??{},a=e==="mobile"?o.phoneKeys:o.keys,n=Object.fromEntries(jr.map(u=>[u,Xm(r[a[u]])])),s=Object.fromEntries(jr.map(u=>[u,String(e==="mobile"?Xm(r[o.keys[u]])??o.fallback[u]:o.fallback[u])])),[i,f]=Fn(()=>TT(n,s));return I(ne,{label:l("Padding"),icon:I(dT,{}),action:I(ix,{each:i,label:l("Each side"),onChange:f}),children:I(kT,{label:l("Padding"),each:i,value:n,placeholder:s,min:o.min,max:o.max,step:o.step,onChange:u=>{let p=wF(a,n,u);Object.keys(p).length&&t?.onChangeMany(p)},words:{sides:{top:l("Padding top"),right:l("Padding right"),bottom:l("Padding bottom"),left:l("Padding left")},vertical:l("Top and bottom"),horizontal:l("Left and right"),unit:"px"}})})}function Bn(e={}){let o={...vF,...e.keys},t={keys:o,phoneKeys:Object.fromEntries(jr.map(i=>[i,Ro(o[i])])),fallback:{top:0,right:0,bottom:0,left:0,...e.fallback},min:e.min??0,max:e.max??200,step:e.step??4},r=e.phone!==!1,a=i=>{let f={type:"custom",render:()=>I(kF,{tier:i,o:t})};return r?ve(i,f):f},n=()=>Mr({type:"custom",render:()=>I(Ht,{})},"always"),s=jr.filter(i=>i!=="top");return jt({...e.group===!1?{}:{_gSpacing:He("Padding")},[t.keys.top]:a("desktop"),...r?{[t.phoneKeys.top]:a("mobile")}:{},...Object.fromEntries(s.map(i=>[t.keys[i],{...n(),reachedBy:t.keys.top}])),...r?Object.fromEntries(s.map(i=>[t.phoneKeys[i],ve("mobile",n())])):{}})}var TF={contained:"Contained",page:"Page",full:"Full"},Tn="Width";function _n(e,o=Um,t=!0){let r=o.map(a=>({label:qr[a]??TF[a],value:a}));return jt({...t?{_gWidth:He(Tn)}:{},widthMode:{type:"custom",render:({onChange:a,field:n})=>I(ne,{label:l(Tn),icon:I(bT,{}),action:t?I(GT,{inherited:n?.inherited??!1,onReset:()=>a(Fi),label:Tn}):void 0,children:Mn({options:r,value:n?.currentValue||e,onChange:a,ariaLabel:Tn})})}})}function Dn(){let e=r=>({type:"custom",render:({value:a,onChange:n})=>I(ne,{label:Wt,icon:Co(I(iT,{})),action:r?r(n):void 0,children:Mn({options:[{label:"Auto",value:"auto"},{label:"Fixed",value:"fixed"},{label:"Screen",value:"screen"}],value:["auto","fixed","screen"].includes(a)?a:"auto",onChange:n,ariaLabel:Wt})})}),o=()=>({type:"custom",render:({value:r,onChange:a,field:n})=>{let s=n?.unit==="%"?"%":"px",i=s==="%"?ci:fi;return I("div",{className:"sf-field",children:je({min:i.min,max:i.max,step:i.step,value:typeof r=="number"?r:i.fallback,suffix:s,ariaLabel:Wt,onChange:a})})}}),t=()=>Hi("Unit",I(tx,{}),[{label:"px",value:"px"},{label:"%",value:"%"}],"px");return jt({_gHeight:He(Wt),sectionHeightMode:ve("desktop",e()),sectionHeightValue:ve("desktop",o()),sectionHeightUnit:ve("desktop",t()),sectionHeightModePhone:ve("mobile",e(r=>I(FF,{onClear:()=>r(void 0)}))),sectionHeightValuePhone:ve("mobile",o()),sectionHeightUnitPhone:ve("mobile",t())})}function FF({onClear:e}){let o=yt(),t=di(o),r=xn(o),a=l("{value} on desktop",{value:r.mode==="auto"?l("Auto"):`${r.value}${r.unit}`});return I(qe,{words:j()?.panel,label:l(Wt),changed:t,detail:a,onReset:e})}function Mi(){let e=t=>({type:"custom",render:({value:r,onChange:a,id:n,name:s})=>I(EF,{value:r,onChange:a,labelId:`${n??s??"stickTop"}-label`,phone:t})}),o=()=>({type:"custom",render:({value:t,onChange:r})=>I("div",{className:"sf-field",children:je({min:Vo.min,max:Vo.max,step:Vo.step,value:typeof t=="number"?t:Vo.fallback,suffix:"px",ariaLabel:l("Distance from top"),onChange:r})})});return{_gStick:He(In),stickTop:ve("desktop",e(!1)),stickTopDistance:ve("desktop",o()),stickTopPhone:ve("mobile",e(!0)),stickTopDistancePhone:ve("mobile",o())}}function EF({value:e,onChange:o,labelId:t,phone:r}){let a=yt(),n=pi(a),s=r?n.phone:e===!0;return I(ne,{label:l(In),labelId:t,icon:Co(I(xT,{})),action:bt(_o,{children:[r?I(qe,{words:j()?.panel,label:l(In),changed:ui(a),detail:l("{value} on desktop",{value:n.desktop?`${n.desktopDistance}px`:l("Off")}),onReset:()=>o(void 0)}):null,I(fx,{checked:s,onChange:o,ariaLabelledBy:t})]})})}function Nn(){return{_gAnchor:He("Anchor"),anchor:YT("Anchor name","e.g. about",jT)}}function UW(e,o,t){return{type:"custom",render:({value:r,onChange:a,id:n,name:s})=>{let i=`${n??s??e}-datetime`,f=Date.parse(typeof r=="string"?r:"");return I(ne,{label:l(e),icon:o,htmlFor:i,hint:t===void 0?void 0:l(t),children:I(BT,{id:i,value:Number.isFinite(f)?new Date(f):null,onChange:u=>a(u?u.toISOString():"")})})}}}function gt(e,o,t){return{type:"custom",render:({value:r,onChange:a,id:n,name:s})=>{let i=typeof r=="boolean"?r:o,f=`${n??s??e}-label`;return I(ne,{label:l(e),labelId:f,icon:t,action:I(fx,{checked:i,onChange:a,ariaLabelledBy:f})})}}}function $W(){return{type:"custom",render:({value:e,onChange:o,id:t,name:r})=>{let a=`${String(t??r??"pageBackground")}-colour`;return I(ne,{label:l("Background"),icon:I(sx,{}),htmlFor:a,action:I(Je,{id:a,label:"Background",value:Ds(e),onChange:o})})}}}function qW(e,o){return{type:"custom",render:({value:t,onChange:r})=>I(ne,{label:l(e),action:Je({value:t||o,onChange:r,label:e})})}}var PF=[{value:"0% 0%",label:"Top left"},{value:"50% 0%",label:"Top"},{value:"100% 0%",label:"Top right"},{value:"0% 50%",label:"Left"},{value:"50% 50%",label:"Center"},{value:"100% 50%",label:"Right"},{value:"0% 100%",label:"Bottom left"},{value:"50% 100%",label:"Bottom"},{value:"100% 100%",label:"Bottom right"}];function Fx({label:e,value:o,onChange:t,points:r=PF}){let a=r.map(n=>({...n,label:l(n.label),...n.title?{title:l(n.title)}:null}));return I(RT,{label:l(e),value:o,points:a,onChange:t})}function jW(){return Mr({type:"custom",render:()=>I(Ht,{})},"always")}var LF=Rs([]);function KW(e,{stacking:o,fallback:t=Qa}){return{type:"custom",render:({value:r,onChange:a})=>{let n=ho.includes(r)?r:t;return o?I(OF,{label:e,value:n,onChange:a}):Ex({label:e,value:n,onChange:a,points:LF})}}}function OF({label:e,value:o,onChange:t}){let{appState:r,selectedItem:a}=Kr(i=>i),n=a?.props?.id?String(a.props.id):void 0,s=n?Bs(r?.data,n):[];return Ex({label:e,value:o,onChange:t,points:Rs(s,n)})}function Ex({label:e,value:o,onChange:t,points:r}){let a=r.find(n=>n.disabled);return I(ne,{label:l(e),icon:I(pT,{}),hint:a?.title?l(a.title):void 0,children:Fx({label:e,value:dt(o),onChange:t,points:r})})}var VW={top:I(rT,{}),right:I(tT,{}),bottom:I(eT,{}),left:I(oT,{})};function YW(e,o,t,r,a,n){let s=p=>o.find(m=>m.value===p),i=p=>({value:p,label:"",disabled:!0,title:r}),f=p=>{let m=o.find(h=>h.cell===p);if(!m)return i(`missing-${p}`);let x=n?.[p];return x?{value:m.value,label:m.label,icon:x}:{value:m.value,label:m.label}},u=[i("corner-top-left"),f("top"),i("corner-top-right"),f("left"),i("centre"),f("right"),i("corner-bottom-left"),f("bottom"),i("corner-bottom-right")];return{type:"custom",render:({value:p,onChange:m})=>{let x=o.some(h=>h.value===p)?p:t;return I(ne,{label:l(e),icon:a,value:s(x)?.label?l(s(x).label):"",children:Fx({label:e,value:x,onChange:m,points:u})})}}}var RF="\0note";function Zo(e,o,t,r,a){return{type:"custom",options:t,fallback:r,...a?{note:a}:{},render:({value:n,onChange:s,field:i})=>{let f=i.options??t,u=i.fallback??r,p=f.some(m=>m.value===n)?n:u;return I(ne,{label:l(e),icon:Co(o),children:I(PT,{value:p,ariaLabel:l(e),onChange:s,options:[...a?[{label:l(a),value:RF,disabled:!0}]:[],...f.map(m=>({label:l(m.label),value:m.value}))]})})}}}function XW(e,o,t){return{type:"custom",options:o,render:({value:r,onChange:a,field:n})=>I(Rp,{label:e,options:(n.options??o).map(s=>({...s,label:l(s.label)})),value:Array.isArray(r)?r:[],onChange:a,...t?{emptyLabel:l(t)}:{}})}}function ZW(e,o={}){return{type:"custom",render:({value:t,onChange:r})=>{let a={value:t,onChange:r,...o};return I(e,{...a})}}}function Mn({options:e,value:o,onChange:t,ariaLabel:r,disabled:a=!1}){return I(wT,{options:e.map(n=>n.picture?{id:n.value,label:n.picture,title:l(n.title??n.label)}:{id:n.value,label:l(n.label),title:n.title===void 0?void 0:l(n.title)}),value:o,onChange:t,ariaLabel:l(r),disabled:a})}var QW=[{label:"Image",value:"image"},{label:"Video",value:"video"}];function Hi(e,o,t,r){let a=t.map(n=>typeof n=="string"?{label:n,value:n}:n);return{type:"custom",render:({value:n,onChange:s,field:i})=>I(ne,{label:l(e),icon:Co(o),children:Mn({options:a,value:a.some(f=>f.value===n)?n:n||i?.currentValue||r,onChange:s,ariaLabel:e})})}}function JW(e,o,t,r={}){return{type:"custom",[G0]:!0,render:({value:a,onChange:n})=>I(Lp,{value:a||"",onChange:n,label:e,accept:o,placeholder:t,focusKey:r.focus,focusWhen:r.focusWhen})}}function eG({value:e,onChange:o,label:t}){let r=e||{},a=!!r.pending,n=a?"var(--fg-dim, #888)":r.ok?"#1d9e75":"#d85a30",s=(i,f)=>o({...r,[i]:f===""?void 0:Number(f)});return bt(ne,{label:l(t),icon:I(Oi,{}),children:[I("button",{type:"button",disabled:a,onClick:()=>o({...r,pending:!0,ok:!1,status:"Finding\u2026"}),style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"center",gap:6,padding:"8px 10px",fontSize:13,cursor:a?"default":"pointer",opacity:a?.6:1,border:"1px solid var(--border-strong, #ccc)",borderRadius:6,background:"transparent",color:"inherit"},children:a?l("Finding\u2026"):l("Find coordinates")}),r.status&&I("div",{style:{marginTop:6,fontSize:12,lineHeight:1.4,color:n},children:l(r.status)}),I("div",{style:{marginTop:6,fontSize:11,color:"var(--fg-dim, #999)"},children:l("Coordinates from OpenStreetMap")}),I("button",{type:"button",onClick:()=>o({...r,manual:!r.manual}),style:{marginTop:8,padding:0,border:"none",background:"none",font:"inherit",fontSize:12,color:"var(--sf-accent, #2563eb)",cursor:"pointer",textDecoration:"underline"},children:r.manual?l("Hide manual coordinates"):l("Enter coordinates manually")}),r.manual&&bt("div",{style:{marginTop:8,display:"grid",gap:8},children:[I(ne,{label:l("Latitude"),icon:I(Oi,{}),children:I("input",{type:"number",step:"any",placeholder:l("e.g. {example}",{example:"34.0990198"}),value:typeof r.lat=="number"?r.lat:"",onChange:i=>s("lat",i.target.value)})}),I(ne,{label:l("Longitude"),icon:I(Oi,{}),children:I("input",{type:"number",step:"any",placeholder:l("e.g. {example}",{example:"-117.9842833"}),value:typeof r.lng=="number"?r.lng:"",onChange:i=>s("lng",i.target.value)})})]})]})}function AF(e,o){return o===null||o<0||o>=e.length?"":e[o]?.text??""}function BF(e,o,t){let r=e.map(a=>({text:a?.text??""}));return o===null||o<0||o>=e.length?r:r.map((a,n)=>n===o?{text:t}:a)}function _F(e,o,t){if(t===null||t>=o.length)return null;for(let r=0;r<t;r+=1)if(e[r]!==o[r])return null;return e[t]!==o[t]&&o.includes(e[t])||e[t]!==o[t]&&o.length!==e.length?null:t}var zi={label:"Ticker items",icon:I(cT,{})};function oG(e,o,t,r){return{type:"custom",[Bo]:{control:"textList",label:e,placeholder:t,itemKey:"text",rendering:r},render:({value:a,onChange:n})=>I(Wi,{label:e,icon:Co(o),items:Array.isArray(a)?a:[],placeholder:t,onChange:n,markup:r==="markup"})}}function Wi({label:e,icon:o,items:t,placeholder:r,onChange:a,markup:n=!1}){let s=Ri(null),[i,f]=Fn(null),u=m=>m.map(x=>({text:x?.text??""})),p=m=>{let x=_F(t,m,i);x===null&&(s.current=null),f(x),a(u(m))};return I(LT,{label:l(e),icon:o,noun:l("item"),items:t,onChange:p,newItem:()=>({text:""}),open:null,onOpen:()=>{},renderItem:()=>null,above:n?I(Ks,{target:s,value:AF(t,i),onChange:m=>a(BF(t,i??-1,m)),disabled:i===null,label:i===null?l("Formatting \u2014 click a row first"):l("Formatting \u2014 row {n}",{n:i+1})}):void 0,renderRow:(m,x,h)=>I("input",{type:"text",className:n&&i===x?"sf-list-marking":void 0,value:m?.text??"",placeholder:l(r),"aria-label":l("{label} {n}",{label:l(e),n:x+1}),onChange:b=>h({text:b.target.value}),onFocus:b=>{s.current=b.currentTarget,f(x)}})})}function Px(e,o){let t=`${e.label} \u2014 row ${o+1}`;return Vt({control:"plainText",label:t,placeholder:e.placeholder,offPage:e.offPage},{type:"custom",render:({value:r,onChange:a})=>I(Kt,{value:r,onChange:a,label:l("{label} \u2014 row {n}",{label:l(e.label),n:o+1}),placeholder:e.placeholder,hideable:!1,markup:e.rendering==="markup"})})}function Lx(e){return{_gCards:He("Cards"),coverIndex:Zo("Cover image",I(fT,{}),wp,String(1),e?.coverHint??"A card's opening picture \u2014 a card pinned to a finish keeps its own."),imageBackground:eF("Image background",Cn),cardImage:NF(),spinOnHover:gt("Rotate on hover",e?.spinDefault??!0,I(IT,{}))}}function Ox(){return{outline:Zo("Card outline",I(hT,{}),oi,Js),indexBadge:Zo("Card number",I(tx,{}),ei,Qs),showBadge:gt("Product badge",!0,I(_s,{noun:"tag"}))}}function Rx(e){let o=e&&"bottomDefault"in e?e.bottomDefault:!0,t=e&&"defaults"in e?e.defaults:{showCardSizes:o,showCardBuy:o,showCardPage:o};return{_gShowOnCard:He("Show on a card"),showCardPrice:gt("Price",!0,I(aT,{})),showCardFinishes:gt("Finish swatches",!0,I(nT,{})),showCardSizes:gt("Sizes",t.showCardSizes,I(mT,{})),showCardBuy:gt("Buy button",t.showCardBuy,I(Z0,{})),showCardPage:gt("Page button",t.showCardPage,I(sx,{}))}}function tG(e,o="display"){let t=Ro(o);return{[o]:ve("desktop",{type:"custom",render:({value:r,onChange:a})=>I(Ax,{parts:e,changed:Ju(r),shown:n=>rn(r,n),onPress:(n,s)=>a(op(r,n,s)),onReset:()=>a(void 0)})}),[t]:ve("mobile",{type:"custom",render:({value:r,onChange:a})=>I(DF,{parts:e,desktopKey:o,value:r,onChange:a})})}}function Ax({parts:e,changed:o,shown:t,onPress:r,onReset:a,detail:n}){let s=l("Display");return I(ne,{label:s,icon:I(j0,{}),changed:o,action:I(qe,{words:j()?.panel,label:s,changed:o,detail:n,onReset:a}),children:I(OT,{label:s,items:e.map(i=>({id:i.id,label:l(i.label),shown:t(i.id)})),onChange:r})})}function DF({parts:e,desktopKey:o,value:t,onChange:r}){let a=yt()[o];return I(Ax,{parts:e,changed:ep(t),shown:n=>Gs(a,t,n),onPress:(n,s)=>r(tp(t,n,s)),onReset:()=>r(ln),detail:l("the same as Desktop")})}function NF(){return Sx("Card image",{min:to,max:lt,step:Bu,hint:"Rounds the picture. The card's own corner is in Site styles."})}function rG(){return Di({sidesKey:"cornerSides",step:_u,useFollowed:()=>to,mark:I(MF,{label:Du}),hint:l("Rounds the picture. Left alone it stays square.")})}function MF({label:e,changed:o=!1,onReset:t=()=>{}}){return I(qe,{words:j()?.panel,label:l(e),changed:o,onReset:t})}function aG(){return{type:"custom",render:({value:e,onChange:o})=>I(HF,{value:typeof e=="string"?e:"",onChange:o})}}function HF({value:e,onChange:o}){let[t,r]=Fn(null),a=Ps.filter(s=>t===null||Lo[s].across===t),n=e&&e in Lo?Lo[e]:null;return bt(_o,{children:[I(ne,{label:l("Photos in a row"),icon:I(Q0,{}),children:bt("div",{className:"sf-gallery-filter",children:[I("button",{type:"button","aria-pressed":t===null,onClick:()=>r(null),children:l("All")}),Mu.map(s=>I("button",{type:"button","aria-pressed":t===s,onClick:()=>r(s),children:s},s))]})}),I(ne,{label:l("Layout"),icon:I(lT,{}),value:n?l(n.label):l("Not chosen"),hint:l("{n} of {total} layouts",{n:a.length,total:Ps.length}),children:I(cx,{className:"sf-gallery-layouts",label:l("Layout"),value:e,onChange:o,onClear:()=>o(""),options:a.map(s=>({value:s,label:l(Lo[s].label),picture:I("span",{className:"sf-gallery-pic",children:Lo[s].desktop.map(([i,f],u)=>I("i",{style:{gridColumn:`span ${i}`,gridRow:`span ${f}`}},u))})}))})})]})}import{jsx as Hn,Fragment as zF,jsxs as Bx}from"react/jsx-runtime";import{Button as _x,Dialog as WF}from"efficient-shell/ui";function GF(e){return it("This site has {n} color theme of its own. Clearing takes them away and puts back the four the shop supplies.","This site has {n} color themes of its own. Clearing takes them away and puts back the four the shop supplies.",e)}function Dx({count:e,onCancel:o,onConfirm:t}){return Bx(WF,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Clear this site\u2019s colors?"),footer:Bx(zF,{children:[Hn(_x,{variant:"secondary",onClick:o,children:l("Cancel")}),Hn(_x,{variant:"danger",onClick:t,children:l("Clear colors")})]}),children:[Hn("p",{children:GF(e)}),Hn("p",{className:"mt-2 font-medium",children:l("This cannot be undone.")})]})}var VF=Bi("the row's whole content is an action; the gutter names a subject and this row has none \u2014 the button's label is the name GG, 2026-09-23"),YF="Reset color",XF={selected:0,themes:[]};function ZF(e){e(XF)}function Hx({value:e,onChange:o}){let t=e?.themes??[],r=t.length===0,a=Qe(e),[n,s]=Mx(!1),i=jF(),[f,u]=Mx(null),p=(v,w)=>{o({...a,themes:a.themes.map((g,y)=>y===v?w:g)})},m=Ot(a).accent,x=new Set(a.themes.map(v=>v.brandInk).filter(Boolean)),h=qd.filter(v=>!x.has(v)).map(v=>jd(m,v)),b=[...a.themes,...h],C=v=>{if(v<a.themes.length)return o({...a,selected:v});let w=[...a.themes,b[v]];o({...a,themes:w,selected:w.length-1})},k=()=>{let v=[...a.themes,{...xo(a.themes[a.selected])}];o({...a,themes:v,selected:v.length-1}),u(v.length-1)};return Nx(UF,{children:[r?null:Xt(qF,{label:l(YF),icon:Co(VF),labelId:"sf-theme-reset",action:Xt($F,{label:l("all theme colors"),words:i.panel,changed:!0,onReset:()=>s(!0)})}),n&&Xt(Dx,{count:t.length,onCancel:()=>s(!1),onConfirm:()=>{s(!1),ZF(o)}}),Xt("div",{className:"sf-theme-list",role:"radiogroup","aria-label":l("Theme"),children:b.map((v,w)=>Xt(cn,{index:w,colors:v,selected:w===a.selected,open:f===w&&w<a.themes.length,editable:w<a.themes.length,onPick:()=>C(w),onEdit:()=>u(g=>g===w?null:w),onChangeColors:g=>p(w,g)},w))}),Nx("button",{type:"button",onClick:k,className:"sf-theme-add",children:[Xt(KF,{size:12}),l("Add new theme")]})]})}import{jsx as zn}from"react/jsx-runtime";import{SettingsDefaultReset as QF,SettingsField as JF}from"efficient-easel/panel";import{SquareIcon as eE}from"efficient-easel/icons";var oE="Applies to panels, cards, inputs and buttons. Round things \u2014 color swatches, switches, status dots \u2014 stay round.",Gi="Corners";function zx({value:e,onChange:o,showHint:t=!0}){let r=e===null;return zn(JF,{label:l(Gi),icon:zn(eE,{}),value:r?void 0:`${e}px`,changed:!r,action:zn(QF,{words:j()?.panel,label:l(Gi),changed:!r,detail:l("the built-in corners"),onReset:()=>o(null)}),hint:t?l(oE):void 0,children:zn(je,{min:to,max:lt,step:1,value:e??to,readout:!1,ariaLabel:l(Gi),onChange:o})})}import{jsx as Vr}from"react/jsx-runtime";import{SettingsDefaultReset as tE,SettingsField as rE,SettingsSegmented as aE}from"efficient-easel/panel";import{ShadowIcon as nE}from"efficient-easel/icons";var Ui={none:"None",soft:"Soft",lifted:"Lifted"},lE="Applies to cards \u2014 products, brands, journal entries and filter cells. Round things like swatches and status dots are never shadowed.",sE={none:"none",soft:"0 1px 1px rgba(20, 20, 22, 0.10), 0 2px 4px -1px rgba(20, 20, 22, 0.14)",lifted:"0 1px 2px rgba(20, 20, 22, 0.10), 0 4px 7px -2px rgba(20, 20, 22, 0.30)"},iE={labelsPx:90.25,widestLabelPx:34.6};function Wx({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??xs;return Vr(rE,{label:l("Card shadow"),icon:Vr(nE,{}),value:l(Ui[a]),changed:!r,action:Vr(tE,{words:j()?.panel,label:l("Card shadow"),changed:!r,detail:l(Ui[xs]),onReset:()=>o(null)}),hint:t?l(lE):void 0,children:Vr(aE,{options:eu.map(n=>({id:n,label:l(Ui[n]),icon:Vr("span",{className:"sf-shadow-chip",style:{boxShadow:sE[n]}})})),value:a,ariaLabel:l("Card shadow"),fit:iE,onChange:o})})}import{jsx as $i}from"react/jsx-runtime";import{SettingsDefaultReset as fE,SettingsField as cE}from"efficient-easel/panel";import{ShadowIcon as dE}from"efficient-easel/icons";var uE="Most useful on a dark theme, where a black shadow cannot be seen. Also used by the Lift hover, even with the card shadow off.";function Gx({value:e,onChange:o,showHint:t=!0}){let r=e===null;return $i(cE,{label:l("Shadow color"),icon:$i(dE,{}),changed:!r,action:Je({value:e??"",inherited:r?hs:void 0,onChange:o,label:"Shadow color",after:$i(fE,{words:j()?.panel,label:l("Shadow color"),changed:!r,detail:hs,onReset:()=>o(null)})}),hint:t?l(uE):void 0})}import{jsx as Wn}from"react/jsx-runtime";import{SettingsDefaultReset as pE,SettingsField as mE}from"efficient-easel/panel";import{AlignSeparateIcon as xE}from"efficient-easel/icons";var IE="The space between the blocks inside a row, a grid or a box. Default means each one keeps the spacing it already has.",qi="Block gap",hE=Gt.Grid;function Ux({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Wn(mE,{label:l(qi),labelId:"sf-block-gap",icon:Wn(xE,{}),value:r?void 0:`${e}px`,changed:!r,action:Wn(pE,{words:j()?.panel,label:l(qi),changed:!r,detail:l("each block's own spacing"),onReset:()=>o(null)}),hint:t?l(IE):void 0,children:Wn(je,{min:ht.min,max:ht.max,step:ht.step,value:r?hE:e,readout:!1,ariaLabel:l(qi),onChange:o})})}import{jsx as Gn}from"react/jsx-runtime";import{SettingsDefaultReset as gE,SettingsField as bE,SettingsSegmented as yE}from"efficient-easel/panel";import{HoverIcon as SE}from"efficient-easel/icons";var ji={none:"None",lift:"Lift",highlight:"Highlight"},CE="What a card does when a shopper points at it \u2014 or taps it, on a phone. Highlight is the effect your cards already use.";function $x({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??Is;return Gn(bE,{label:l("Hover effect"),icon:Gn(SE,{}),value:l(ji[a]),changed:!r,action:Gn(gE,{words:j()?.panel,label:l("Hover effect"),changed:!r,detail:l(ji[Is]),onReset:()=>o(null)}),hint:t?l(CE):void 0,children:Gn(yE,{options:ou.map(n=>({id:n,label:l(ji[n])})),value:a,ariaLabel:l("Hover effect"),onChange:o})})}import{jsx as Un}from"react/jsx-runtime";import{SettingsDefaultReset as vE,SettingsField as wE,SettingsSegmented as kE}from"efficient-easel/panel";import{ImageIcon as TE}from"efficient-easel/icons";var Ki="Hero image",Vi=[{followsWidth:!1,label:qr.full},{followsWidth:!0,label:qr.page}],FE="Whether the big picture at the top of a page runs edge to edge, or sits inside the page width. The words follow the page width either way.";function qx({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??!1;return Un(wE,{label:l(Ki),icon:Un(TE,{}),value:l(Vi.find(n=>n.followsWidth===a).label),changed:!r,action:Un(vE,{words:j()?.panel,label:l(Ki),changed:!r,detail:l(Vi.find(n=>!n.followsWidth).label),onReset:()=>o(null)}),hint:t?l(FE):void 0,children:Un(kE,{options:Vi.map(n=>({id:n.followsWidth,label:l(n.label)})),value:a,ariaLabel:l(Ki),onChange:o})})}import{jsx as $n}from"react/jsx-runtime";import{SettingsDefaultReset as EE,SettingsField as PE,SettingsSegmented as LE}from"efficient-easel/panel";import{DropIcon as OE}from"efficient-easel/icons";var Yi="Photography",jx={shot:"As shot",mono:"Black and white"},Xi=[{grayscale:!1,label:jx.shot},{grayscale:!0,label:jx.mono}],RE="Black and white photographs return to color on hover. Wheels and tyres keep their real finish either way.";function Kx({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??!1;return $n(PE,{label:l(Yi),icon:$n(OE,{}),value:l(Xi.find(n=>n.grayscale===a).label),changed:!r,action:$n(EE,{words:j()?.panel,label:l(Yi),changed:!r,detail:l(Xi.find(n=>!n.grayscale).label),onReset:()=>o(null)}),hint:t?l(RE):void 0,children:$n(LE,{options:Xi.map(n=>({id:n.grayscale,label:l(n.label)})),value:a,ariaLabel:l(Yi),onChange:o})})}import{jsx as Zi}from"react/jsx-runtime";import{useId as AE}from"react";import{SettingsField as BE,SettingsSwitch as _E}from"efficient-easel/panel";import{ShareIcon as DE}from"efficient-easel/icons";var NE="Share button",ME="On every blog post.";function Vx({value:e,onChange:o,showHint:t=!0}){let r=AE();return Zi(BE,{label:l(NE),labelId:r,icon:Zi(DE,{}),action:Zi(_E,{checked:e===!0,onChange:o,ariaLabelledBy:r}),hint:t?l(ME):void 0})}import{jsx as qn}from"react/jsx-runtime";import{SettingsDefaultReset as HE,SettingsField as zE}from"efficient-easel/panel";import{PaddingXIcon as WE}from"efficient-easel/icons";var Qi="Side space",Ji=So.default,GE="The room left at the left and right edge of every page.";function Yx({value:e,onChange:o,showHint:t=!0}){let r=e===null;return qn(zE,{label:l(Qi),labelId:"sf-side-space",icon:qn(WE,{}),value:`${e??Ji}px`,changed:!r,action:qn(HE,{words:j()?.panel,label:l(Qi),changed:!r,detail:`${Ji}px`,onReset:()=>o(null)}),hint:t?l(GE):void 0,children:qn(je,{min:So.min,max:So.max,step:So.step,value:e??Ji,readout:!1,ariaLabel:l(Qi),onChange:o})})}import{jsx as jn}from"react/jsx-runtime";import{SettingsDefaultReset as UE,SettingsField as $E}from"efficient-easel/panel";import{WidthIcon as qE}from"efficient-easel/icons";var ef="Content width",of=Be.default,jE="The standard width every page on this site renders at.";function Xx({value:e,onChange:o,showHint:t=!0}){let r=e===null;return jn($E,{label:l(ef),labelId:"sf-site-width",icon:jn(qE,{}),value:`${e??of}px`,changed:!r,action:jn(UE,{words:j()?.panel,label:l(ef),changed:!r,detail:`${of}px`,onReset:()=>o(null)}),hint:t?l(jE):void 0,children:jn(je,{min:Be.min,max:Be.max,step:Be.step,value:e??of,readout:!1,ariaLabel:l(ef),onChange:o})})}import{jsx as MI}from"react/jsx-runtime";import{TextStyleItem as oP,TextStylesGroup as tP}from"efficient-easel/text-styles";import{jsx as Y1}from"react/jsx-runtime";import{useState as X1}from"react";import{TextStylesList as Z1}from"efficient-easel/text-styles";import{usePreviewDevice as Q1}from"efficient-easel/draw/client";function tf(e,o){return o?`${e}[${o.index}].${o.rowKey}`:e}function so(e){let o=/^([A-Za-z0-9_$]+)\[(\d+)\]\.([A-Za-z0-9_$]+)$/u.exec(e);return o?{key:o[1],row:{index:Number(o[2]),rowKey:o[3]}}:{key:e,row:null}}import{decodePartId as Xn,encodePartId as Zn}from"efficient-easel/draw";import{LINK_FIELD_MARKER as lI,SCAFFOLD_FIELD_MARKER as aI,TEXT_FIELD_MARKER as Qn}from"efficient-easel/draw";import{readHidable as sI}from"efficient-easel/draw";import{SCALAR_TEXT_CONTROLS as JE}from"efficient-easel/draw";import{TEXT_FIELD_MARKER as QE}from"efficient-easel/draw";import{TEXT_FIELD_MARKER as Zx}from"efficient-easel/draw";import{readHidable as Qx}from"efficient-easel/draw";import{SCALAR_TEXT_CONTROLS as KE}from"efficient-easel/draw";var VE=KE,YE=["text","textarea"],XE=["textarea","plainTextarea"];function ZE(e){return!e||typeof e!="object"?null:e[Zx]?.control??null}function Zt(e){let o=ZE(e);return o&&VE.includes(o)?o:null}function Kn(e){return XE.includes(e)}function Jx(e){return!e||typeof e!="object"?void 0:e[Zx]?.placeholder}function Vn(e){return Qx(e).text}function rf(e,o,t){return YE.includes(e)?{text:t,hidden:Qx(o).hidden}:t}function eI(e,o,t,r){return Vn(e[o])===r?null:{...e,[o]:rf(t,e[o],r)}}function af(e){if(!(!e||typeof e!="object"))return e[QE]}function nf(e){if(!e||typeof e!="object")return null;let o=e.arrayFields;return o&&typeof o=="object"?o:null}function oI(e,o){if(!Array.isArray(o))return[];let t=af(e),r=[];if(t?.control==="textList"){let n=t.itemKey??"text";return o.forEach((s,i)=>{let f=s?.[n];typeof f=="string"&&f&&r.push({row:{index:i,rowKey:n},text:f})}),r}let a=nf(e);return a?(o.forEach((n,s)=>{for(let[i,f]of Object.entries(a)){if(!Zt(f))continue;let u=Vn(n?.[i]);u&&r.push({row:{index:s,rowKey:i},text:u})}}),r):[]}function Yr(e,o){if(Array.isArray(e))return e[o.index]?.[o.rowKey]}function lf(e,o,t,r){let a=e[o];return!Array.isArray(a)||t.index<0||t.index>=a.length?null:{...e,[o]:a.map((n,s)=>s===t.index?{...n,[t.rowKey]:r}:n)}}function tI(e,o,t,r,a){let n=Yr(e[o],t);return Vn(n)===a?null:lf(e,o,t,rf(r,n,a))}function rI(e,o){return o?`${e} \xB7 row ${o.index+1}`:e}var io="data-sf-part",Ke="data-sf-part-selected",VU="data-sf-part-kind",e1="data-sf-part-style-owner",o1="data-sf-part-style-kind";function YU(e){for(let o=e;o;o=o.parentElement){let t=o.getAttribute(e1),r=o.getAttribute(o1);if(t&&r)return{owner:t,kind:r};if(o.getAttribute("data-puck-component"))return null}return null}var nI=2;function iI(e,o){if(!e)return!1;let t=Xn(e);return!!t?.propKey&&t.nodeId===o}function Qt(e){return mt(e).replace(/\s+/gu,"")}function Yn(e,o,t){let r=e[Qn];if(r){if(r.control==="textList"){let n=r.itemKey??"text";if(!Array.isArray(o))return;for(let s of o){let i=s?.[n];typeof i=="string"&&t.push(i)}return}let{text:a}=sI(o);a?t.push(a):r.placeholder&&t.push(r.placeholder);return}if(!e[lI]){if(e.type==="text"||e.type==="textarea"){typeof o=="string"&&o&&t.push(o);return}if(e.arrayFields&&Array.isArray(o)){for(let a of o)for(let[n,s]of Object.entries(e.arrayFields))Yn(s,a?.[n],t);return}if(e.objectFields&&o&&typeof o=="object")for(let[a,n]of Object.entries(e.objectFields))Yn(n,o[a],t)}}function fI(e){if(!e||typeof e!="object")return!1;let o=e;return o[lI]?!1:!!o[Qn]||o.type==="text"||o.type==="textarea"}function Jn(e,o){let t=e[Qn];return t?.label?t.label:typeof e.label=="string"?e.label:o}function sf(e){let o=e.indexOf(" (");return(o>0?e.slice(0,o):e).trim()}function XU(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){if(!a||typeof a!="object"||Hr(r))continue;let n=a,s=[];Yn(n,o?.[r],s),!s.length&&n[aI]!==void 0&&Yn(n,n[aI],s);let i=Jn(n,r),f=new Set;for(let{row:m,text:x}of oI(n,o?.[r])){let h=Qt(x);h.length<nI||(f.add(h),t.push({key:r,label:i,texts:[h],row:m}))}let u=new Set(f),p=[];for(let m of s){let x=Qt(m);x.length<nI||u.has(x)||(u.add(x),p.push(x))}p.length&&t.push({key:r,label:i,texts:p})}return t}var t1=JE;function cI(e,o){if(!o||typeof o!="object"||Hr(e)||bp(o))return null;let t=o[Qn];return!t||!t1.includes(t.control)?null:t}function ZU(e,o){let t=cI(e,o);return t!==null&&t.identifier!==!0}function dI(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){let n=cI(r,a);if(!n)continue;let{text:s,hidden:i}=sI(o?.[r]),f=s||n.placeholder||"",u=mt(f).replace(/\s+/gu," ").trim();t.push({key:r,label:sf(Jn(a,r)),preview:u,offPage:n.offPage===!0,identifier:n.identifier===!0,hidden:!!i})}return t}var df="_partStyles",mf="data-sf-part-styled",r1=["none","upper","capitalize","lower"],a1=[400,500,600,700],bI=["left","center","right","justify"],uI=5,pI=1e3,n1=-5,l1=10,xf=0,If=64,hf=2,gf=120,Jo=1280,bf=10,mI={size:{min:uI,max:pI,step:1},sizePhone:{min:uI,max:pI,step:1},padding:{min:xf,max:If,step:hf},width:{min:gf,max:Jo,step:bf}},s1=.05,i1=.01,f1=["line","letter"],c1=.5,d1=2.5,u1=-1,p1=1,m1=0,x1=400,uf={none:"none",upper:"uppercase",capitalize:"capitalize",lower:"lowercase"};function Zr(e){return!e||typeof e!="object"||Array.isArray(e)?null:e}function yI(e){return Zr(e?.[df])??{}}function ol(e,o){let t=yI(e);return Object.hasOwn(t,o)?Zr(t[o])??{}:{}}function SI(e,o,t){let r={...yI(e)};if(I1(t).length?r[o]=t:delete r[o],!Object.keys(r).length){let{[df]:a,...n}=e;return n}return{...e,[df]:r}}function I1(e){return Object.entries(e).filter(([,o])=>o!==void 0)}function h1(e){return f1.includes(e)}var Xr=(e,o,t)=>Math.min(t,Math.max(o,e));function g1(e,o){if(h1(e)){let t=Math.round(Number(o));return!Number.isFinite(t)||t===0?null:Xr(t,n1,l1)}if(e==="lineHeight"){let t=Number(o);return Number.isFinite(t)?Jt(Xr(t,c1,d1),3):null}if(e==="letterSpacing"){let t=Number(o);return Number.isFinite(t)?Jt(Xr(t,u1,p1),4):null}if(e==="paragraphSpacing"){let t=Math.round(Number(o));return!Number.isFinite(t)||t<=0?null:Xr(t,m1,x1)}if(Object.hasOwn(mI,e)){let{min:t,max:r}=mI[e],a=Math.round(Number(o));return Number.isFinite(a)?Xr(a,t,r):null}return e==="italic"?typeof o=="boolean"?o:null:e==="role"?Eo.includes(String(o))?o:null:o}var b1=["weight","size","sizePhone","line","letter","lineHeight","letterSpacing","paragraphSpacing","padding","width"];function CI(e){let o=null,t=r=>{o??={...e},delete o[r]};for(let r of b1){let a=e[r];a!==void 0&&!(typeof a=="number"&&Number.isFinite(a))&&t(r)}return e.align!==void 0&&!bI.includes(e.align)&&t("align"),o??e}var y1=[["font","role"],["line","lineHeight"],["letter","letterSpacing"]];function S1(e){let o=[];for(let[t,r]of y1)t===e?o.push(r):r===e&&o.push(t);return o}function Jr(e,o,t,r){let a={...ol(e,o)},n=r==null?null:g1(t,r);if(n===null)delete a[t];else{a[t]=n;for(let s of S1(t))delete a[s]}return SI(e,o,a)}function vI(e,o){return SI(e,o,{})}function C1(e){for(let o of r1)if(uf[o]===e)return o;return"none"}function v1(e){return!e||!Object.hasOwn(uf,e)?"":uf[e]}var w1={heading:"--font-role-heading",heading2:"--font-role-heading2",heading3:"--font-role-heading3",body:"--font-role-body",accent:"--font-role-accent",label:"--font-role-label"};function k1(e){let o=e.role;return o&&Eo.includes(o)?o:null}var T1={headingLarge:"min(clamp(64px,9vw,144px), var(--sf-heading-max,9999px))",headingMedium:"min(32px, var(--sf-heading-max,9999px))",headingSmall:"min(24px, var(--sf-heading-max,9999px))",accent:"32px",body:"14px",label:"12px"};function F1(e){let o=Gd[e],t=T1[o];return t?`var(--size-${o}, ${t})`:`var(--size-${o})`}function ea(e){let o={};return typeof e.lineHeight=="number"?o.lineHeight=e.lineHeight:e.line&&(o.lineHeight=Jt(E1+e.line*s1,3)),typeof e.letterSpacing=="number"?o.letterSpacingEm=e.letterSpacing:e.letter&&(o.letterSpacingEm=Jt(e.letter*i1,4)),o}var E1=1,oa="--sf-part-para",yf="(max-width: 719.98px)";function xI(e){return e=CI(e),typeof e.sizePhone=="number"&&e.sizePhone>0?{fontSize:`${e.sizePhone}px`}:{}}function P1(e,o){return o&&typeof e.sizePhone=="number"&&e.sizePhone>0?{...e,size:e.sizePhone}:e}function el(e,o){e=CI(e);let t=k1(e),r=ea(e),a=e.size?`${e.size}px`:t?F1(t):"";return{fontFamily:e.font?A1(e.font):t?`var(${w1[t]})`:"",fontWeight:e.weight?String(e.weight):"",fontSize:a,minWidth:a?"0":"",overflowWrap:a?"break-word":"",lineHeight:r.lineHeight!==void 0?String(r.lineHeight):"",letterSpacing:r.letterSpacingEm!==void 0?`${r.letterSpacingEm}em`:"",[oa]:e.paragraphSpacing?`${e.paragraphSpacing}px`:"",textTransform:v1(e.case),textAlign:e.align??"",paddingTop:ff(e.padding),paddingBottom:ff(e.padding),maxWidth:ff(e.width),color:L1(e.color),fontStyle:e.italic===!0?"italic":e.italic===!1?"normal":""}}var L1=e=>e===void 0||e===""?"":Object.hasOwn(Oo,e)?Oo[e]:wI.test(e)?e:"",wI=/^#[0-9a-fA-F]{6}$/;function kI(e){return wI.test(e)}var ff=e=>e===void 0?"":`${e}px`,Jt=(e,o)=>Number(e.toFixed(o));function r7(e,o){let t=Number.parseFloat(e.fontSize)||16,r=Number.parseFloat(e.lineHeight),a=Number.parseFloat(e.letterSpacing),n=Number.parseFloat(e.paddingTop),s=Number.parseFloat(e.maxWidth);return{fontKey:o,sizePx:t,weight:O1(Number.parseInt(e.fontWeight,10)),lineRatio:Number.isFinite(r)?Jt(r/t,3):1.2,letterEm:Number.isFinite(a)?Jt(a/t,4):0,align:R1(e.textAlign),case:C1(e.textTransform),paddingPx:Number.isFinite(n)?Math.round(n):0,widthPx:Number.isFinite(s)&&s<Jo?Math.round(s):Jo}}function O1(e){return Number.isFinite(e)?a1.reduce((o,t)=>Math.abs(t-e)<Math.abs(o-e)?t:o):400}function R1(e){for(let o of bI)if(o===e)return o;return e==="end"?"right":"left"}function a7(e,o){let t=II(e);if(!t)return"";for(let r of no)if(II(o(r.cssVar))===t)return r.key;return""}var II=e=>(e.split(",")[0]??"").replace(/["']/g,"").replace(/\s+/g," ").trim().toLowerCase();function A1(e){let o=Lt(e);return o?`var(${o.cssVar})`:""}function n7(e,o,t,r){return!o||Xn(o)?.nodeId!==e?null:t.find(a=>r(a.getAttribute("class")))??t[0]??null}function l7(e,o,t=()=>Qr,r=s=>s,a=D1,n=!1){let s=0;for(let{element:i,partId:f}of e){let u=Xn(f)?.propKey;if(!u)continue;let p=r(u),m=Object.hasOwn(o,p)?Zr(o[p])??{}:{},x=el(P1(m,n),Qr),h=cf.some(C=>i.style[C]),b=!1;for(let[C,k]of Object.entries(x))N1(i,C,k),k&&(b=!0);if(h||cf.some(C=>x[C]))for(let C of B1(i,a))for(let k of cf)C.style[k]=x[k]??"";b&&(s+=1)}return s}function B1(e,o){let t=Qt(e.textContent??""),r=[],a=e;for(let n=0;n<_1&&o(a);n+=1){let s=a.parentElement;if(!s||Qt(s.textContent??"")!==t)break;r.push(s),a=s}return r}var _1=8;function D1(e){let o=e;return typeof window>"u"||!o?.ownerDocument?!1:window.getComputedStyle(o).display==="inline"}var Qr={fontKey:"",sizePx:16,weight:400,lineRatio:1,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:Jo};function N1(e,o,t){if(!o.startsWith("--")){e.style[o]=t;return}let r=e.style;typeof r.setProperty=="function"?t?r.setProperty(o,t):r.removeProperty?.(o):r[o]=t;let a=e;o===oa&&(t?a.setAttribute?.(hI,""):a.removeAttribute?.(hI))}var hI="data-sf-part-para",M1=Object.keys(el({},Qr)),pf=new Set(["color","overflowWrap",oa,"fontStyle"]),cf=M1.filter(e=>!pf.has(e));function TI(e,o,t,r=a=>a){let a=new Map;for(let i of e){let f=tf(i.key,i.row);for(let u of i.texts){let p=a.get(u);p?(p.keys.add(i.key),p.partKeys.add(f)):a.set(u,{keys:new Set([i.key]),partKeys:new Set([f])})}}let n=new Map;for(let i of Object.keys(o)){if(!H1(i))continue;let f=Zr(o[i])??{},u=el(f,Qr),p=xI(f);!Object.values(u).some(Boolean)&&!Object.keys(p).length||n.set(i,{stamp:gI(t,i),declarations:u,...Object.keys(p).length?{phone:p}:{}})}let s=new Map;for(let[i,{keys:f,partKeys:u}]of a){let p=u.size===1?[...u][0]:f.size===1?[...f][0]:null;if(!p)continue;let m=r(p);if(!Object.hasOwn(o,m))continue;let x=Zr(o[m])??{},h=el(x,Qr),b=xI(x);!Object.values(h).some(Boolean)&&!Object.keys(b).length||s.set(i,{stamp:gI(t,p),declarations:h,...Object.keys(b).length?{phone:b}:{}})}return s.size||n.size?{rules:s,kindRules:n,drawn:new Set(a.keys())}:null}function H1(e){return e.startsWith("@")}function Sf(e,o){return e?.kindRules.get(o)??null}function gI(e,o){let t=r=>r.replace(/[^A-Za-z0-9_-]+/g,"-");return`${t(e)}~${t(o)}`}function FI(e){let o=[],t=new Set,r=a=>{let{stamp:n,declarations:s}=a;if(t.has(n))return;t.add(n);let i=Object.entries(s).filter(([,h])=>h!==""),f=h=>h.map(([b,C])=>`${W1(b)}: ${C}`).join("; "),u=`[${mf}="${n}"]`,p=i.filter(([h])=>!pf.has(h)),m=i.filter(([h])=>pf.has(h));p.length&&o.push(`${u}, *:has(> ${u}) { ${f(p)} }`),m.length&&o.push(`${u} { ${f(m)} }`),s[oa]&&o.push(...z1(u));let x=Object.entries(a.phone??{}).filter(([,h])=>h!=="");x.length&&o.push(`@media ${yf} { ${u}, *:has(> ${u}) { ${f(x)} } }`)};for(let a of e.rules.values())r(a);for(let a of e.kindRules.values())r(a);return o.join(`
4
+ `)}function z1(e){let o=`var(${oa})`,t=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: ${o} }`,`${e} ${t}:not(:first-child) { margin-top: ${o} }`,`${e} ${t}:not(:last-child) { margin-bottom: ${o} }`]}var W1=e=>e.replace(/[A-Z]/g,o=>`-${o.toLowerCase()}`);function EI(e,o){if(!e)return null;let t=Qt(o),r=e.rules.get(t);if(r)return r;if(t.length<G1||e.drawn.has(t))return null;let a=null;for(let[n,s]of e.rules)if(n.includes(t)){if(a&&a.stamp!==s.stamp)return null;a=s}return a}var G1=8;var Cf=e=>e==="sentence"?"none":void 0,No=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,ta=e=>typeof e=="string"&&e?e:void 0,LI=["font","color","size","sizePhone","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function fo(e){let o={};for(let t of LI)e[t]!==void 0&&(o[t]=e[t]);return o}function wf(e,o){let{auto:t,...r}=e,a=new Set(o??[]),n=LI.filter(s=>a.has(s)&&e.values[s]===void 0);return n.length?{...r,auto:n}:r}function kf(e){let o=e.fonts,t=e.sizes,r=e.typography,a=ru(e.compression),n=(i,f)=>({id:`heading-${i}`,kind:"heading",name:`Heading ${i}`,values:fo(f)}),s=(i,f={})=>({id:`body-${i}`,kind:"body",name:`Body ${i}`,values:fo(f)});return[n(1,{font:ta(o.heading),size:No(t.headingLarge),weight:No(r.weight),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Cf(r.case),largestSize:No(r.maxPx)}),n(2,{font:ta(o.heading2),size:No(t.headingMedium),weight:No(r.weight2),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Cf(r.case2)}),n(3,{font:ta(o.heading3),size:No(t.headingSmall),weight:No(r.weight3),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Cf(r.case3)}),s(1,{font:ta(o.body),size:No(t.body)}),s(2),s(3),s(4),s(5,{font:ta(o.label),size:No(t.label)})]}function tl(e){return Array.isArray(e)&&e.every(o=>o&&typeof o=="object"&&typeof o.id=="string"&&(o.kind==="heading"||o.kind==="body")&&typeof o.name=="string")?e.map(o=>wf({...o,values:fo(o.values??{})},Array.isArray(o.auto)?o.auto:void 0)):null}function d7(e){return tl(e)??[]}function et(e,o){let t=kf(o),r=tl(e);return r?r.map(a=>{let n={...vf(t,a.id)};for(let s of a.auto??[])delete n[s];return{...a,values:fo({...n,...a.values})}}):t}var vf=(e,o)=>e.find(t=>t.id===o)?.values??{},PI=["heading-1","heading-2","heading-3"];function OI({saved:e,old:o,cur:t,next:r,sizeOf:a}){let n=kf(o),s=tl(e)??n.map(m=>({...m,values:{}})),i=et(s,o),f=[],u=r.map(m=>{let x=t.find(g=>g.id===m.id),h=s.find(g=>g.id===m.id);if(!x||!h)return U1([m],a)[0];let b={...h.values},C=new Set(h.auto??[]),k=m.values,v=x.values,w=[...new Set([...Object.keys(k),...Object.keys(v)])].filter(g=>JSON.stringify(k[g])!==JSON.stringify(v[g]));w.sort((g,y)=>+(g==="letterSpacing")-+(y==="letterSpacing"));for(let g of w){let y=g==="lineSpacing"?"lineHeight":g,E=k[g];if(E===void 0){delete b[y],vf(n,m.id)[y]!==void 0&&(f.push([m.id,y]),C.add(y));continue}if(C.delete(y),g==="lineSpacing")b.lineHeight=er(E/100,3);else if(g==="letterSpacing"){let F=i.find(B=>B.id===m.id),L=a({...m,values:fo({...F?.values??{},...b})});b.letterSpacing=L?er(E/L,4):0}else b[y]=E}return wf({id:m.id,kind:m.kind,name:m.name,values:fo(b)},C)}),p=o.compression;if(f.some(([m,x])=>(x==="lineHeight"||x==="letterSpacing")&&PI.includes(m))&&st(p)!=="normal"){for(let m of PI){let x=u.find(b=>b.id===m);if(!x)continue;let h={...x.values};for(let b of["lineHeight","letterSpacing"])f.some(([C,k])=>C===m&&k===b)||h[b]===void 0&&!(x.auto??[]).includes(b)&&(h[b]=vf(n,m)[b]);x.values=fo(h)}p="normal"}return{saved:u,old:{...o,compression:p}}}function RI(e,o){let t={text_styles:e.saved};return e.old.compression!==o.compression&&(t.heading_compression=st(e.old.compression)),t}var er=(e,o)=>Number(e.toFixed(o));function AI(e,o){return e.map(t=>{let{lineHeight:r,letterSpacing:a,...n}=t.values,s={...n};return r!==void 0&&(s.lineSpacing=er(r*100,1)),a!==void 0&&(s.letterSpacing=er(a*o(t),2)),{id:t.id,kind:t.kind,name:t.name,values:s}})}function U1(e,o){return e.map(t=>{let{lineSpacing:r,letterSpacing:a,...n}=t.values,s={id:t.id,kind:t.kind,name:t.name,values:fo({...n})},i={...s.values};if(r!==void 0&&(i.lineHeight=er(r/100,3)),a!==void 0){let f=o({...s,values:{...s.values}});i.letterSpacing=f?er(a/f,4):0}return{...s,values:fo(i)}})}function u7(e){let o={fonts:Lr({heading:e.heading_font??void 0,heading2:e.heading_2_font??void 0,heading3:e.heading_3_font??void 0,body:e.body_font??void 0,accent:e.accent_font??void 0,label:e.label_font??void 0}),sizes:ms({headingLarge:e.heading_size_large_px,headingMedium:e.heading_size_medium_px,headingSmall:e.heading_size_small_px,accent:e.accent_size_px,body:e.body_size_px,label:e.label_size_px}),compression:st(e.heading_compression),typography:nu(e)},t=e.text_styles??null,r=Array.isArray(t)?Tf(et(t,o),o):o;return{fonts:Lr(r.fonts),sizes:ms(r.sizes),compression:st(r.compression),typography:r.typography,textStyles:t}}function Tf(e,o){let t=x=>e.find(h=>h.id===x)?.values??{},r=t("heading-1"),a=t("heading-2"),n=t("heading-3"),s=t("body-1"),i=t("body-5"),f=o.fonts,u=o.sizes,p=o.typography,m=x=>x==="none"?"sentence":"authored";return{fonts:{...f,heading:r.font??f.heading,heading2:a.font??r.font??f.heading2,heading3:n.font??r.font??f.heading3,body:s.font??f.body,label:i.font??f.label},sizes:{...u,headingLarge:r.size??null,headingMedium:a.size??null,headingSmall:n.size??null,body:s.size??null,label:i.size??null},compression:o.compression,typography:{...p,case:m(r.letterCase),weight:r.weight??null,maxPx:r.largestSize??null,weight2:a.weight??null,weight3:n.weight??null,case2:m(a.letterCase),case3:m(n.letterCase)}}}function $1(e){switch(e.id){case"heading-1":return"font-display";case"heading-2":return"font-heading2";case"heading-3":return"font-heading3";case"body-1":return"font-body";case"body-5":return"font-mono";default:return`font-${e.id}`}}var q1={none:"none",upper:"uppercase",capitalize:"capitalize",lower:"lowercase"};function j1(e){return e==="accent"?"var(--accent)":e==="text"?"var(--fg)":e==="labels"?"var(--fg-dim)":/^#[0-9a-f]{6}$/i.test(e)?e:null}function K1(e){let o=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: var(--sf-part-para) }`,`${e} ${o}:not(:first-child) { margin-top: var(--sf-part-para) }`,`${e} ${o}:not(:last-child) { margin-bottom: var(--sf-part-para) }`]}function p7(e){let o=[];for(let t of e){let r=t.values,a=`.${$1(t)}`,n=[],s=r.font!==void 0?no.find(u=>u.key===r.font)?.cssVar:void 0;if(s&&n.push(`font-family: var(${s})`),r.size!==void 0){let u=r.largestSize!==void 0?Math.min(r.size,r.largestSize):r.size;n.push(`font-size: ${u}px`)}let i=r.color!==void 0?j1(r.color):null;i&&n.push(`color: ${i}`),r.italic===!0&&n.push("font-style: italic"),r.weight!==void 0&&n.push(`font-weight: ${r.weight}`);let f=[];if(r.lineHeight!==void 0&&f.push(`line-height: ${r.lineHeight}`),r.letterSpacing!==void 0&&f.push(`letter-spacing: ${r.letterSpacing}em`),t.kind==="body"&&n.push(...f),r.letterCase!==void 0&&n.push(`text-transform: ${q1[r.letterCase]}`),r.paragraphSpacing&&n.push(`--sf-part-para: ${r.paragraphSpacing}px`),n.length&&o.push(`${a} { ${n.join("; ")} }`),t.kind==="heading"&&f.length&&o.push(`${a}, ${a}:is(h1, h2, h3, h4) { ${f.join("; ")} }`),r.paragraphSpacing&&o.push(...K1(a)),r.sizePhone!==void 0){let u=V1[t.id],p=[`${a} { font-size: ${r.sizePhone}px }`];u&&p.push(`.sf-themed-content { --size-${u}: ${r.sizePhone}px !important }`),o.push(`@media ${yf} { ${p.join(" ")} }`)}}return o.join(`
5
+ `)}var V1={"heading-1":"headingLarge","heading-2":"headingMedium","heading-3":"headingSmall","body-1":"body","body-5":"label"};function m7(e){return e!==!0&&e!==!1?"":`em.text-accent { font-style: ${e?"italic":"normal"} }`}function Ff(e){switch(e){case"heading":return"heading-1";case"heading2":return"heading-2";case"heading3":return"heading-3";case"body":return"body-1";case"label":return"body-5";default:return}}function Ef(e){let o=ea(e);return fo({font:e.font,color:e.color,size:e.size,weight:e.weight,italic:e.italic,lineHeight:o.lineHeight,letterSpacing:o.letterSpacingEm,paragraphSpacing:e.paragraphSpacing,letterCase:e.case})}function BI(e){return Object.keys(Ef(e)).length>0}function _I({saved:e,old:o,styleId:t,values:r}){return{saved:(tl(e)??kf(o).map(a=>({...a,values:{}}))).map(a=>a.id===t?wf({...a,values:fo({...a.values,...r})},a.auto):a),old:o}}var DI=["font","color","size","weight","emphasis","lineSpacing","letterSpacing","paragraphSpacing","letterCase","largestSize"],J1=["size","lineSpacing","letterSpacing","letterCase"],eP=500,Pf=no.map(e=>({value:e.key,label:e.label,family:`var(${e.cssVar})`,italic:e.italicLoaded}));function NI({saved:e,old:o,colours:t,sizeOf:r,onChange:a,openId:n,onOpenChange:s,readOnly:i=!1,withoutSize:f=!1}){let[u,p]=X1(null),m=Q1()==="mobile",x=et(e,o),h=AI(x,r);return Y1(Z1,{styles:h,onChange:b=>a(OI({saved:e,old:o,cur:h,next:b,sizeOf:r})),fonts:Pf,colours:t,settings:f?DI.filter(b=>b!=="size"):DI,auto:J1,openId:n===void 0?u:n,onOpenChange:s??p,readOnly:i,device:m?"phone":"desktop",fallback:b=>{let C=x.find(v=>v.id===(b.kind==="heading"?"heading-1":"body-1")),k={};return C?.values.font&&b.id!==C.id&&(k.font=C.values.font),b.kind==="heading"&&(k.weight=eP),k}})}var HI=["font","size","weight","emphasis"],rP=500;function aP({font:e,size:o,weight:t,italic:r}){let a={font:e};return o!==null&&(a.size=o),t!==null&&(a.weight=t),r!==null&&(a.italic=r),{id:"accent",kind:"heading",name:l("Accent"),values:a}}function nP(e,o){let t=[],r=e.values,a=o.values;return a.font!==r.font&&a.font!==void 0&&t.push({key:"font",value:a.font}),a.size!==r.size&&t.push({key:"size",value:a.size??null}),a.weight!==r.weight&&t.push({key:"weight",value:a.weight??null}),a.italic!==r.italic&&t.push({key:"italic",value:a.italic??null}),t}function zI(e){let{headingWeight:o,open:t,onOpenChange:r,onChange:a,withoutSize:n=!1}=e,s=aP(e);return MI(tP,{label:l("Accent"),children:MI(oP,{style:s,fonts:Pf,settings:n?HI.filter(i=>i!=="size"):HI,auto:["size"],fallback:()=>({weight:o??rP}),open:t,onOpenChange:r,onChange:i=>nP(s,i).forEach(a)})})}import{SettingsTabs as sP}from"efficient-easel/panel";import{Tooltip as l$,tabButtonId as iP,tabPanelId as fP}from"efficient-shell/ui";import{ContrastIcon as cP,NoteIcon as dP,SettingsIcon as uP,TypeIcon as pP}from"efficient-easel/icons";function WI(e){switch(e.status){case"saved":return null;case"failed":return{msg:l("Not saved. Try again."),tone:"error"};case"skipped":switch(e.reason){case"empty":return null;case"no-token":return{msg:l("Not saved. Reload the page."),tone:"error"};case"template":return{msg:l("Templates keep their look. Press Done."),tone:"success"}}}}import{gotoPreviewSlide as O7,pinPreviewToBottom as R7,pinPreviewToSection as A7,previewFrame as GI,scrollPreviewToSection as UI,scrollPreviewToTop as Lf}from"efficient-easel/screen/lib/puck/preview-dom";import{useEasel as lP}from"efficient-easel/easel";function rl({themeFromDocument:e,persist:o}){let{appState:t,dispatch:r}=lP(L=>L),{fonts:a,setFonts:n,sizes:s,setSizes:i,headingCompression:f,setHeadingCompression:u,headingTypography:p,setHeadingTypography:m,textStyles:x,setTextStyles:h}=Z(),b=t.data,C=b.root?.props??{},k=e?Lr(C.fonts):a,v=e?Zd:s,w=e?st(C.headingCompression):f,g=e?au(C.headingTypography):p,y={fonts:k,sizes:v,compression:w,typography:g},E=e?C.textStyles:x,F=L=>r({type:"replaceRoot",root:{...b.root,props:{...C,...L}},recordHistory:!0});return{fonts:k,sizes:v,compression:w,typography:g,old:y,saved:E,write:(L,B)=>{let O=Tf(et(L.saved,L.old),L.old);e?F({textStyles:L.saved,fonts:O.fonts,headingCompression:O.compression,headingTypography:O.typography}):(h(L.saved),n(O.fonts),i(O.sizes),u(O.compression),m(O.typography)),o(RI(L,y),B)},writeRoot:F}}var Of="sf-site-styles",mP="sf-site-styles-tabpanel",Bf=!1,xP="Show hints";function _f({shown:e,onChange:o}){return J("div",{className:"sf-hints",children:St("button",{type:"button","aria-pressed":e,onClick:()=>o(!e),className:`sf-rung sf-hints-toggle${e?" is-active":""}`,children:[J(dP,{size:13}),l(xP)]})})}var qI="text",or=[{id:"basics",label:"Basics",icon:J(uP,{})},{id:"theme",label:"Theme",icon:J(cP,{})},{id:"text",label:"Text",icon:J(pP,{})}];function IP({themeFromDocument:e,persist:o}){let{appState:t,dispatch:r}=$I(u=>u),{theme:a,setTheme:n}=Z(),s=t.data,i=s.root?.props??{},f=u=>{if(e){let p={...i,theme:u};r({type:"replaceRoot",root:{...s.root,props:p},recordHistory:!0})}else n(u);o({selected_preset:u.selected,theme_presets:u.themes})};return J(Hx,{value:e?i.theme:a,onChange:f})}function hP({themeFromDocument:e,persist:o}){let[t,r]=Af(null),{theme:a,setFonts:n,setSizes:s,setHeadingTypography:i}=Z(),f=rl({themeFromDocument:e,persist:o}),{old:u,saved:p,writeRoot:m}=f,x=f.fonts,h=f.sizes,b=f.typography,C=F=>F.values.size??CP(bP[F.id]??"body")??yP[F.kind],k=F=>f.write(F),v=gP(a),w=F=>{let L={...x,accent:F};e?m({fonts:L}):n(L),o({accent_font:F})},g=F=>{s({...h,accent:F}),o({accent_size_px:F})},y=F=>{let L={...b,weightStrong:F};e?m({headingTypography:L}):i(L),o({heading_weight_strong:F})},E=F=>{let L={...b,italicStrong:F};e?m({headingTypography:L}):i(L),o({accent_italic:F})};return St(tr,{children:[J(NI,{saved:p,old:u,colours:v,sizeOf:C,onChange:k,openId:t===Rf?null:t,onOpenChange:r,withoutSize:e}),J(zI,{font:x.accent,size:h.accent,weight:b.weightStrong,italic:b.italicStrong,headingWeight:b.weight,open:t===Rf,onOpenChange:F=>r(F?Rf:null),onChange:F=>{F.key==="font"?w(F.value):F.key==="size"?g(F.value):F.key==="weight"?y(F.value):E(F.value)},withoutSize:e})]})}var Rf="accent";function gP(e){let o=Ot(e);return[{key:"accent",name:l("Accent"),value:o.accent},{key:"text",name:l("Text"),value:o.text},{key:"labels",name:l("Labels"),value:o.muted??o.text}]}var bP={"heading-1":"heading","heading-2":"heading2","heading-3":"heading3","body-1":"body","body-5":"label"},yP={heading:32,body:14},SP={heading:"main h1, main h2",heading2:"main h1, main h2",heading3:"main h1, main h2",accent:"main h1 em, main h2 em",body:"main p",label:"main .mono-eyebrow"};function CP(e){if(typeof document>"u")return null;let o=(GI()?.contentDocument??document).querySelector(SP[e]);if(!o)return null;let t=parseFloat(getComputedStyle(o).fontSize);return Number.isFinite(t)?t:null}function vP({themeFromDocument:e,persist:o,showHint:t}){let{appState:r,dispatch:a}=$I(x=>x),{cornerRadiusPx:n,setCornerRadiusPx:s}=Z(),i=r.data,f=i.root?.props??{},u=f.cornerRadiusPx===void 0?Jd[Qd(f.cornerStyle)]:Io(f.cornerRadiusPx),p=e?u:n,m=x=>a({type:"replaceRoot",root:{...i.root,props:{...f,...x}},recordHistory:!0});return J(zx,{value:p,onChange:x=>{e?m({cornerRadiusPx:x}):s(x),o({corner_radius_px:x})},showHint:t})}function wP(e){return{site_width:e}}function kP({persist:e,showHint:o}){let{siteWidth:t,setSiteWidth:r}=Z();return J(Xx,{value:t,onChange:a=>{r(a),e(wP(a),a===null)},showHint:o})}function TP(e){return{block_gap:e}}function FP(e){return{site_gutter:e}}function EP({persist:e,showHint:o}){let{siteGutter:t,setSiteGutter:r}=Z();return J(Yx,{value:t,onChange:a=>{r(a),e(FP(a),a===null)},showHint:o})}function PP({persist:e,showHint:o}){let{blockGap:t,setBlockGap:r}=Z();return J(Ux,{value:t,onChange:a=>{r(a),e(TP(a),a===null)},showHint:o})}function LP({persist:e,showHint:o}){let{heroBackgroundFollowsWidth:t,setHeroBackgroundFollowsWidth:r}=Z();return J(qx,{value:t,onChange:a=>{r(a),e({hero_background_follows_width:a},!0)},showHint:o})}function OP({persist:e,showHint:o=!0}){return St(tr,{children:[J(kP,{persist:e,showHint:o}),J(EP,{persist:e,showHint:o}),J(PP,{persist:e,showHint:o}),J(LP,{persist:e,showHint:o})]})}function RP(e){return{card_shadow:e}}function AP(e){return e===null?{shadow_color:null}:{shadow_color:tu(e)}}function BP(e){return{hover_effect:e}}function _P({persist:e,showHint:o=!0}){let{cardShadow:t,setCardShadow:r,shadowColor:a,setShadowColor:n,hoverEffect:s,setHoverEffect:i}=Z();return St(tr,{children:[J(Wx,{value:t,onChange:f=>{r(f),e(RP(f),!0)},showHint:o}),J(Gx,{value:a,onChange:f=>{n(f),e(AP(f),f===null)},showHint:o}),J($x,{value:s,onChange:f=>{i(f),e(BP(f),!0)},showHint:o})]})}function DP(e){return{photography_grayscale:e}}function NP({persist:e,showHint:o}){let{photographyGrayscale:t,setPhotographyGrayscale:r}=Z();return J(Kx,{value:t,onChange:a=>{r(a),e(DP(a),!0)},showHint:o})}function MP({persist:e,showHint:o=!0}){return J(tr,{children:J(NP,{persist:e,showHint:o})})}function HP(e){return{share_button_on_posts:e}}function zP({persist:e,showHint:o=!0}){let{shareButtonOnPosts:t,setShareButtonOnPosts:r}=Z();return J(Vx,{value:t,onChange:a=>{r(a),e(HP(a),!0)},showHint:o})}function rr(){let{websiteName:e}=Z();return e?.trim()||lu}function al({themeFromDocument:e=!1,tokenRef:o,siteId:t,onNotify:r,tab:a,onTabChange:n}){let{persist:s}=zt({themeFromDocument:e,tokenRef:o,siteId:t,onResult:C=>{let k=WI(C);k&&r?.(k.msg,k.tone)}}),[i,f]=Af(or[0].id),u=a!==void 0,p=u?a:i,m=u?n??(()=>{}):f,x=or.find(C=>C.id===p)??or[0],[h,b]=Af(Bf);return St(tr,{children:[J(sP,{items:or.map(C=>({...C,label:l(C.label)})),activeId:x.id,onSelect:m,ariaLabel:l("Site styles"),idPrefix:Of}),St("div",{id:fP(Of,x.id),className:mP,role:"tabpanel","aria-labelledby":iP(Of,x.id),children:[p==="basics"&&St(tr,{children:[J(vP,{themeFromDocument:e,persist:s,showHint:h}),!e&&J(_P,{persist:s,showHint:h}),!e&&J(OP,{persist:s,showHint:h}),!e&&J(MP,{persist:s,showHint:h}),!e&&J(zP,{persist:s,showHint:h}),J(_f,{shown:h,onChange:b})]}),p==="theme"&&J(IP,{themeFromDocument:e,persist:s}),p==="text"&&J(hP,{themeFromDocument:e,persist:s})]})]})}import{InspectorIconButton as XP}from"efficient-easel/chrome";import{Button as JI,Dialog as ZP,FormField as QP,Input as eh,toast as oh}from"efficient-shell/ui";import{LayersTree as JP,TreeGroupLabel as eL,TreeRow as th,TreeRowAction as Wf}from"efficient-easel/tree";import{AddIcon as oL,PageIcon as tL}from"efficient-easel/icons";import{PagesIcon as rL}from"efficient-easel/rail";var Df="Main Pages",WP="Dynamic Pages",Nf="dynamic",GP="dynamic";function Mf(e){return e.kind===GP}function jI(e){let o=[],t=[];for(let r of e){if(Mf(r)){t.push(r);continue}let a=r.groupKey??(r.group?`folder:${r.group}`:"top"),n=o[o.length-1];n&&n.key===a?n.rows.push(r):o.push({key:a,label:r.group??Df,rows:[r]})}if(t.length){let r=o.findIndex(a=>a.key.startsWith("system:"));o.splice(r===-1?o.length:r,0,{key:Nf,label:WP,rows:t})}return o}import{useCallback as nl,useEffect as UP,useSyncExternalStore as $P}from"react";var KI=new WeakMap;function ra(e){let o=KI.get(e);return o||(o={rows:null,loading:null,listeners:new Set},KI.set(e,o)),o}function Hf(e,o){e.rows=o;for(let t of e.listeners)t()}var ll=new Set;function sl(e,o){o?ll.add(e):ll.delete(e)}function VI(e){let o=ra(e),t=e.listPages().then(r=>Hf(o,ll.size?r.filter(a=>!ll.has(a.id)):r),()=>Hf(o,[])).finally(()=>{o.loading===t&&(o.loading=null)});return o.loading=t,t}var YI=()=>null,qP=()=>()=>{};function zf(){let{adapter:e,ready:o}=Se(),t=nl(i=>{let{listeners:f}=ra(e);return f.add(i),()=>f.delete(i)},[e]),r=nl(()=>ra(e).rows,[e]),a=$P(o?t:qP,o?r:YI,YI);UP(()=>{if(!o)return;let i=ra(e);i.rows===null&&!i.loading&&VI(e)},[e,o]);let n=nl(()=>o?VI(e):Promise.resolve(),[e,o]),s=nl(i=>Hf(ra(e),i),[e]);return{rows:a,reload:n,setRows:s,getRows:r}}function jP(e,o){return e?.find(t=>t.slug===o)?.label?.trim()||`/${o}`}function XI(){let{currentSlug:e}=Se(),{rows:o}=zf();return jP(o,e)}var rh="sf-editor-pages-collapsed-groups",aL=e=>e.toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""),ah=(e,o)=>{let t=aL(e)||"page";if(!o.has(t))return t;let r=2;for(;o.has(`${t}-${r}`);)r+=1;return`${t}-${r}`};function nh({onNavigate:e,onClose:o,activeSurface:t,onPreviewSurface:r}){let a=Ae().chrome?.pageRows,n=Bt(),{adapter:s,capabilities:i,ready:f,currentSlug:u}=Se(),p=rr(),{rows:m,reload:x,setRows:h,getRows:b}=zf(),[C,k]=ar(""),[v,w]=ar(!1),[g,y]=ar(null),[E,F]=ar(!1),[L,B]=ar(""),O=YP(),[M,re]=ar(()=>{if(typeof window>"u")return new Set;try{let P=window.localStorage.getItem(rh);return new Set(P?JSON.parse(P):[])}catch{return new Set}});VP(()=>{try{window.localStorage.setItem(rh,JSON.stringify([...M]))}catch{}},[M]);let H=P=>re(le=>{let Y=new Set(le);return Y.has(P)?Y.delete(P):Y.add(P),Y}),W=QI(()=>jI(m??[]),[m]),A=C.trim().toLowerCase(),oe=P=>!A||P.toLowerCase().includes(A),Oe=P=>A?!0:!M.has(P),Xe=QI(()=>new Set((m??[]).map(P=>P.slug)),[m]),ro=()=>{if(i.pageCreationInAdminForm){n.send("storefront-editor:new-page");return}B(""),y(null),F(!0)},We=async()=>{let P=L.trim();if(!(!P||!f||v||!s.createPage)){w(!0),y(null);try{let le=await s.createPage({slug:ah(P,Xe),title:P,layout:{}});await x(),F(!1),B(""),e(le.slug)}catch{y(l("Couldn\u2019t add the page \u2014 please retry."))}finally{w(!1)}}},Re=P=>{let le=m??[],Y=s.deletePage;if(!f||v||!Y||le.length<=1)return;let te=le.findIndex(ye=>ye.id===P.id),ae=le.filter(ye=>ye.id!==P.id),pe=P.slug===u;sl(P.id,!0),h(ae),y(null),pe&&ae[0]&&e(ae[0].slug);let Ne=()=>{sl(P.id,!1);let ye=b()??[];if(ye.some(Fo=>Fo.id===P.id))return;let po=[...ye];po.splice(Math.max(0,Math.min(te,po.length)),0,P),h(po)};oh.undoable(l("Deleted \u201C{name}\u201D",{name:P.label}),{actionLabel:l("Undo"),commit:async ye=>{await Y(P.id,ye),sl(P.id,!1)},undo:()=>{Ne(),pe&&e(P.slug)},onFail:()=>{Ne(),oh.error(l("Couldn\u2019t delete the page \u2014 please retry."))}})},Ge=P=>n.send("storefront-editor:open-page",{slug:P}),De=P=>{if(!oe(P.label))return null;let le=!t&&P.slug===u,Y=i.canDeletePagesInline&&(m??[]).length>1,te=Mf(P),ae=P.kind==="lightbox",pe=[...te?[{label:l("Dynamic"),tone:"info"}]:[],...ae?[{label:l("Lightbox"),tone:"success"}]:[],...P.draft?[{label:l("draft"),tone:"draft"}]:[]],Ne=pe.length>0?pe:void 0,ye=i.pageCreationInAdminForm||Y?il(ZI,{children:[i.pageCreationInAdminForm&&fe(Wf,{kind:"plain",label:l("Edit \u201C{name}\u201D in {place}",{name:P.label,place:l("the admin")}),onClick:()=>Ge(P.slug),children:fe(fl,{name:"pencil",size:13,strokeWidth:1.7,rounded:!0})}),Y&&fe(Wf,{kind:"delete",label:l("Delete \u201C{name}\u201D",{name:P.label}),disabled:v,onClick:()=>Re(P),children:fe(fl,{name:"trash",size:13,strokeWidth:1.7,rounded:!0})})]}):void 0;return fe(th,{icon:fe(tL,{size:14}),name:P.label,selected:le,onSelect:()=>e(P.slug),badge:Ne,actions:ye,rowProps:{"data-page-slug":P.slug}},P.id)},Ce=(P,le,Y)=>{let te=Y.filter(Boolean);if(te.length===0)return null;let ae=Oe(P);return il(KP,{children:[fe(eL,{count:te.length,expanded:ae,onToggle:()=>H(P),children:le}),ae&&te]},P)},ge=(a?.rows??[]).filter(P=>oe(P.label)).map(P=>{let le=t===P.key;return fe(th,{icon:P.icon,name:P.label,selected:le,onSelect:()=>r(P.key),badge:{label:l("Preview"),tone:"warning"},actions:fe(Wf,{kind:"plain",label:l("Open the {name} in a new tab",{name:P.label}),onClick:()=>window.open(P.href,"_blank","noopener,noreferrer"),children:fe(fl,{name:"external-link",size:13,strokeWidth:1.7,rounded:!0})}),rowProps:{"data-shop-surface":P.key}},P.key)}),Ie=i.hasSiteSettings&&!!a,Ze=(()=>{if(m===null)return null;let P=[],le=!1;for(let Y of W){Ie&&!le&&Y.key.startsWith("system:")&&(P.push(Ce("shop",a.title,ge)),le=!0);let te=Y.key===Nf||Y.label===Df?l(Y.label):Y.label;P.push(Ce(Y.key,te,Y.rows.map(De)))}return Ie&&!le&&P.push(Ce("shop",a.title,ge)),P})();return il("div",{className:"sf-pages",children:[fe(Va,{icon:fe(rL,{}),title:l("Pages"),context:p,actions:fe(XP,{label:l("New page"),onClick:ro,children:fe(oL,{size:15})}),onHide:o}),fe("div",{className:"sf-pages-find",children:fe(eh,{type:"search",leftIcon:fe(fl,{name:"search",size:14,rounded:!0}),placeholder:l("Search all pages\u2026"),value:C,onChange:P=>k(P.target.value),"aria-label":l("Search all pages")})}),g&&!E&&fe("div",{className:"sf-note sf-note--error",role:"alert",children:g}),Ze===null?fe("div",{className:"sf-note",children:l("Loading\u2026")}):Ze.some(Boolean)?fe(JP,{ariaLabel:l("Pages"),className:"sf-scroll",children:Ze}):fe("div",{className:"sf-note",children:C.trim()?l("No pages match your search"):l("No pages yet. Add one with + above.")}),fe(ZP,{open:E,onClose:()=>F(!1),size:"sm",title:l("Add a page"),description:l("Give the new template page a name. It starts blank \u2014 add sections once it opens."),footer:il(ZI,{children:[fe(JI,{variant:"secondary",onClick:()=>F(!1),children:l("Cancel")}),fe(JI,{onClick:()=>{We()},disabled:v||!L.trim(),loading:v,children:l("Add page")})]}),children:fe(QP,{label:l("Page name"),htmlFor:O,hint:L.trim()?l("URL: /{slug}",{slug:ah(L,Xe)}):void 0,error:g??void 0,children:fe(eh,{id:O,value:L,invalid:!!g,onChange:P=>B(P.target.value),onKeyDown:P=>{P.key==="Enter"&&We()},placeholder:l("e.g. About")})})})]})}import{jsx as nL}from"react/jsx-runtime";import{createContext as lL,useCallback as sL,useContext as iL,useState as fL}from"react";import{useSelectHandler as cL}from"efficient-easel/draw/client";var cl=["chat-bubble-left-right","chat-bubble-oval-left-ellipsis","chat","megaphone","phone","sparkles"],nr=cl[0];var Ct="right";function dl(e){return cl.includes(e??"")?e:nr}function lh(e){return e==="left"?"left":Ct}function sh(e){return/^#[0-9a-fA-F]{6}$/.test(e??"")?e.toLowerCase():""}var ul={enabled:!0,title:"",subtitle:"",greeting:"",launcherColor:"",launcherIcon:"",launcherPosition:Ct,launcherLabel:"",showOnPhones:!0};function G$(e){return{enabled:e.enabled,title:e.title,subtitle:e.subtitle,greeting:e.greeting,launcherColor:sh(e.launcherColor),launcherIcon:e.launcherIcon?dl(e.launcherIcon):"",launcherPosition:lh(e.launcherPosition),launcherLabel:e.launcherLabel??"",showOnPhones:e.showOnPhones!==!1}}var ih=lL({chat:ul,setChat:()=>{},selected:!1,setSelected:()=>{},select:()=>{},setSelectHandler:()=>{}});function U$({children:e,chat:o=ul,onChatChange:t}){let[r,a]=fL(!1),n=sL(f=>t?.(f),[t]),{select:s,setSelectHandler:i}=cL();return nL(ih.Provider,{value:{chat:o,setChat:n,selected:r,setSelected:a,select:s,setSelectHandler:i},children:e})}var pl=()=>iL(ih);import{jsx as Gf}from"react/jsx-runtime";import{DesktopIcon as dL,PhoneIcon as uL,TabletIcon as pL}from"efficient-easel/icons";import{VIEW_TIERS as mL,VIEW_TIER_LABEL as xL}from"efficient-easel/draw";var IL={desktop:Gf(dL,{}),tablet:Gf(pL,{}),mobile:Gf(uL,{})},fh=mL.map(e=>({id:e,get label(){return l(xL[e])},icon:IL[e]}));import{PreviewDeviceContext as xM}from"efficient-easel/draw/client";import{jsx as hL}from"react/jsx-runtime";import{createContext as gL,useCallback as ch,useContext as bL,useMemo as yL,useRef as SL}from"react";var CL=Object.fromEntries(Ua.map(e=>[e,{value:"",error:null}])),dh=gL({links:iu,rows:CL,canSave:!1,saveLink:async()=>({ok:!1,error:"There is no website to save to."}),openPanel:()=>{},setOpenHandler:()=>{}});function J$({children:e,value:o}){let t=SL(()=>{}),r=ch(()=>t.current(),[]),a=ch(s=>{t.current=s},[]),n=yL(()=>({...o,openPanel:r,setOpenHandler:a}),[o,r,a]);return hL(dh.Provider,{value:n,children:e})}var aa=()=>bL(dh);import{jsx as vL}from"react/jsx-runtime";import{createContext as wL,useContext as kL,useMemo as TL,useState as FL}from"react";var uh=wL(null);function r8({children:e}){let[o,t]=FL(null),r=TL(()=>({surface:o,setSurface:t}),[o]);return vL(uh.Provider,{value:r,children:e})}function ph(){return kL(uh)??{surface:null,setSurface:()=>{}}}import{createPreviewSelectionContext as EL}from"efficient-easel/draw/client";var na="Scrolling Bar",{Provider:l8,useSelection:ml}=EL("selectedHeroId");import{createPreviewSelectionContext as PL}from"efficient-easel/draw/client";var{Provider:f8,useSelection:xl}=PL("selectedHeroPart");import{isShown as UL}from"efficient-shell/format";var Il="product",LL="recordType",OL={key:Il,label:"Product",fields:[]};var RL=new Map,AL=0;function d8(){return[OL,...RL.values()]}function u8(){return AL}function BL(e){let o=e?.[LL];return typeof o!="string"?Il:o.trim()||Il}function Uf(e){return BL(e)===Il}var $f="product",_L="tyre";var DL="productType",NL={[$f]:"alloy-wheel",[_L]:"tyre"},ML=["alloy-wheel","tyre"];function mh(e,o){return Uf(o)?HL(o)??NL[e]??null:null}function HL(e){if(!Uf(e))return null;let o=e?.[DL];return typeof o=="string"&&ML.includes(o)?o:null}var hl=null,xh=null;function zL(e,o){hl=e,xh=o}function h8(e){zL(e,null)}function g8(){return hl}function Ih(){return xh==="dynamic"||hl===$f}function b8(e){return mh(hl??"",e)??"alloy-wheel"}function la(e,o){return{...e,showWhen:o}}function gl(e){return e&&typeof e=="object"?e.showWhen:void 0}var hh=new WeakMap;function sa(e,o,t){if(!e||!o.some(f=>f in e))return e;let r=hh.get(e);r||hh.set(e,r=new WeakMap);let a=r.get(t);a||r.set(t,a=new Map);let n=o.join("\0"),s=a.get(n);if(s)return s;let i={...e};for(let f of o){let u=i[f];if(!u||typeof u!="object")continue;let p=gl(u);i[f]=la(u,p?{all:[p,t]}:t)}return a.set(n,i),i}function WL(e,o){return o.reduce((t,[r,a])=>sa(t,r,a),e)}function GL(e,o,t,r){let a={field:e,in:r};return r.includes(t)?{any:[a,{not:{field:e,in:o}}]}:a}function S8(e,o){let t=e;t.showWhenFacts={...o,...t.showWhenFacts??{}}}function bh(e,o,t){let r=!1,a={};for(let[n,s]of Object.entries(e))UL(gl(s),o??{},t)?a[n]=s:r=!0;return r?a:e}function yh(e,o,t,r){let a=Xa(o,t,r);return{device:e,parentType:a?.item.type,parent:a?.item.props}}function gh(e,o){if(!e||typeof e!="object")return!1;let t=e;if(typeof t.context=="string"&&(t.context===o||t.context.startsWith(`${o}.`)))return!0;if("not"in t)return gh(t.not,o);for(let r of[t.all,t.any])if(Array.isArray(r)&&r.some(a=>gh(a,o)))return!0;return!1}function E8(e,o={}){let t={},r=(a,n)=>Object.defineProperty(t,a,{get:n,enumerable:!0});r("parentType",()=>e.parent?.type??void 0),r("parent",()=>e.parent?.props??void 0),r("dynamicPage",()=>Ih()),r("root",()=>e.appState?.data?.root?.props);for(let[a,n]of Object.entries(o))r(a,n);return t}var Ch=["one","side","stacked"];var L8={one:"One",side:"Side by side",stacked:"Stacked"};function vh(e){return Ch.includes(e)?e:"one"}function Sh(e){return e==="one"?1:2}function $L(e,o){if(Ch.includes(e))return e;let t=vh(o);return t==="side"?"stacked":t}function qf(e){let o=vh(e.mediaLayout);return Math.max(Sh(o),Sh($L(e.mediaLayoutPhone,o)))}var ia=["media","image","image2"],lr={media:"Media",image:"Image",image2:"Image 2"},fa={media:"heroMedia",image:"heroImage",image2:"heroImage2"};function bl(e,o){return e==="image"&&qf(o)>1?"Image 1":lr[e]}var B8="Video file",_8="Upload a video file";function qL(e,o){return{field:"mediaType",is:e,default:o}}var jL=new Set(["HeroSingle"]),wh="heroPart";function KL(e,o){return{...o,[wh]:e}}function D8(e,{parts:o={},onlyFor:t,fallback:r,rules:a}){let n={...e};for(let s of["image","video"])for(let i of t[s])n[i]=la(n[i],qL(s,r));for(let[s,i]of Object.entries(a??{}))i&&(n[s]=la(n[s],i));for(let s of ia)for(let i of o[s]??[])n[i]=KL(s,n[i]);return n}function VL(e){let o=e?.[wh];return ia.includes(o)?o:null}function kh(e,o){let t={};for(let[r,a]of Object.entries(e))VL(a)===o&&(t[r]=a);return t}function Th(e){if(!jL.has(e.type))return[];let o=[{part:"media",label:lr.media,depth:0}];return(e.props.mediaType??"image")!=="video"&&(o.push({part:"image",label:bl("image",e.props),depth:1}),qf(e.props)>1&&o.push({part:"image2",label:bl("image2",e.props),depth:1})),o}function ca(e,o){return`${e}::${o}`}function Fh(e){if(!e)return null;let o=e.lastIndexOf("::");if(o<=0)return null;let t=e.slice(o+2);return ia.includes(t)?{nodeId:e.slice(0,o),part:t}:null}var N8="data-sf-hero-part";import{jsx as ee,jsxs as kt,Fragment as rd}from"react/jsx-runtime";import{useState as Z_}from"react";import{useEasel as Q_}from"efficient-easel/easel";import{headWords as xy,InspectorHead as J_,InspectorIconButton as py}from"efficient-easel/chrome";import{DuplicateIcon as eD,TrashIcon as oD}from"efficient-easel/icons";import{panelFieldsOf as Eh}from"efficient-easel/screen/lib/puck/panel-fields";import{jsx as T,Fragment as K,jsxs as V}from"react/jsx-runtime";import{BlockBannerIcon as ZL,BlockBoxIcon as QL,BlockButtonIcon as JL,BlockDividerIcon as Lh,BlockFooterIcon as Oh,BlockHeadingIcon as eO,BlockProductIcon as oO,BlockSocialIcon as tO,BlockTextIcon as rO,ChatIcon as aO,GridIcon as nO,ImageIcon as Kf,MediaIcon as lO,PageIcon as sO}from"efficient-easel/icons";import{jsx as jf,Fragment as YL,jsxs as XL}from"react/jsx-runtime";var Ph=XL(YL,{children:[jf("circle",{cx:"9",cy:"20",r:"1.3"}),jf("circle",{cx:"18",cy:"20",r:"1.3"}),jf("path",{d:"M2.5 3.5h3l2.3 11.3a1.6 1.6 0 0 0 1.6 1.3h8.1a1.6 1.6 0 0 0 1.6-1.2L21 7H6"})]});var iO={header:V(K,{children:[T("rect",{x:"3",y:"5",width:"18",height:"14",rx:"2"}),T("path",{d:"M3 9.5h18"})]}),website:V(K,{children:[T("circle",{cx:"12",cy:"12",r:"9"}),T("path",{d:"M3 12h18M12 3c2.6 2.7 2.6 15.3 0 18M12 3c-2.6 2.7-2.6 15.3 0 18"})]}),social:V(K,{children:[T("circle",{cx:"6",cy:"12",r:"2.5"}),T("circle",{cx:"18",cy:"6",r:"2.5"}),T("circle",{cx:"18",cy:"18",r:"2.5"}),T("path",{d:"M8.2 10.8l7.6-3.6M8.2 13.2l7.6 3.6"})]}),ticker:V(K,{children:[T("rect",{x:"3",y:"8.5",width:"18",height:"7",rx:"2"}),T("path",{d:"M6 12h3.5M11.5 12h2M15.5 12h2.5"})]}),FooterLogo:V(K,{children:[T("path",{d:"M4 15.5h6M4 18h4"}),T("path",{d:"M14 8.5l3 7 3-7"})]}),FooterMenu:T("path",{d:"M6 7h12M6 11h12M6 15h8M6 19h8"}),FooterGroup:V(K,{children:[T("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",strokeDasharray:"3 2.5"}),T("path",{d:"M8 9h8M8 13h8M8 16h5"})]}),FooterText:T("path",{d:"M5 7h14M5 12h14M5 17h9"}),FooterEmailSignup:V(K,{children:[T("rect",{x:"3",y:"6",width:"18",height:"12",rx:"2"}),T("path",{d:"M3.5 7l8.5 6 8.5-6"})]}),SearchBlock:V(K,{children:[T("circle",{cx:"11",cy:"11",r:"6"}),T("path",{d:"M20 20l-4.2-4.2"})]}),CartBlock:Ph,CountrySwitchBlock:V(K,{children:[T("circle",{cx:"12",cy:"12",r:"8.5"}),T("path",{d:"M3.5 12h17M12 3.5c2.6 2.4 3.6 5.2 3.6 8.5s-1 6.1-3.6 8.5M12 3.5c-2.6 2.4-3.6 5.2-3.6 8.5s1 6.1 3.6 8.5"})]}),LegalLineBlock:V(K,{children:[T("path",{d:"M3 9h18"}),T("path",{d:"M3 14h8M14 14h2M18 14h3"})]}),Hero:V(K,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M7 13.5h7M7 16.5h10"})]}),HeroSlide:V(K,{children:[T("rect",{x:"3",y:"5",width:"18",height:"14",rx:"2"}),T("path",{d:"M7 15h6M16 9.5h.01M9.5 12l-2.5 3"})]}),HeroSingle:V(K,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M10.5 8.5l4 2.5-4 2.5z"}),T("path",{d:"M7 17h7"})]}),Collections:V(K,{children:[T("rect",{x:"3",y:"5",width:"4.6",height:"14",rx:"1.3"}),T("rect",{x:"9.7",y:"5",width:"4.6",height:"14",rx:"1.3"}),T("rect",{x:"16.4",y:"5",width:"4.6",height:"14",rx:"1.3"})]}),CollectionCard:V(K,{children:[T("rect",{x:"6",y:"4",width:"12",height:"16",rx:"2"}),T("path",{d:"M9 15h6M9 17.5h4"})]}),AlloyWheelsListing:V(K,{children:[T("path",{d:"M3 5h5M3 9h5M3 13h5M3 17h5"}),T("rect",{x:"11.5",y:"5",width:"4.2",height:"5",rx:"1"}),T("rect",{x:"17.3",y:"5",width:"4.2",height:"5",rx:"1"}),T("rect",{x:"11.5",y:"12",width:"4.2",height:"5",rx:"1"}),T("rect",{x:"17.3",y:"12",width:"4.2",height:"5",rx:"1"})]}),CatalogFilterBar:V(K,{children:[T("path",{d:"M3 7h9M15.5 7H21"}),T("circle",{cx:"13.5",cy:"7",r:"1.7"}),T("path",{d:"M3 12h4M10.5 12H21"}),T("circle",{cx:"8.5",cy:"12",r:"1.7"}),T("path",{d:"M3 17h9M15.5 17H21"}),T("circle",{cx:"13.5",cy:"17",r:"1.7"})]}),ProductGrid:V(K,{children:[T("rect",{x:"3",y:"5",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"9.6",y:"5",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"16.2",y:"5",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"3",y:"13",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"9.6",y:"13",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"16.2",y:"13",width:"4.8",height:"6",rx:"1"})]}),RelatedProducts:V(K,{children:[T("path",{d:"M3 5h10"}),T("rect",{x:"3",y:"9.5",width:"5",height:"9",rx:"1"}),T("rect",{x:"9.5",y:"9.5",width:"5",height:"9",rx:"1"}),T("rect",{x:"16",y:"9.5",width:"5",height:"9",rx:"1"})]}),Gallery:V(K,{children:[T("rect",{x:"3",y:"4",width:"11",height:"16",rx:"2"}),T("rect",{x:"15.5",y:"4",width:"5.5",height:"7.5",rx:"1.5"}),T("rect",{x:"15.5",y:"12.5",width:"5.5",height:"7.5",rx:"1.5"})]}),GalleryB:V(K,{children:[T("rect",{x:"3.5",y:"4",width:"7.5",height:"7.5",rx:"1.5"}),T("rect",{x:"13",y:"4",width:"7.5",height:"7.5",rx:"1.5"}),T("rect",{x:"3.5",y:"12.5",width:"7.5",height:"7.5",rx:"1.5"}),T("rect",{x:"13",y:"12.5",width:"7.5",height:"7.5",rx:"1.5"})]}),GalleryItem:V(K,{children:[T("rect",{x:"4",y:"5",width:"16",height:"14",rx:"2"}),T("circle",{cx:"9",cy:"10",r:"1.6"}),T("path",{d:"M20 15.5l-4.5-4L7 19"})]}),Events:V(K,{children:[T("rect",{x:"4",y:"5",width:"16",height:"15",rx:"2"}),T("path",{d:"M4 9.5h16M8.5 3v4M15.5 3v4M8 14h2M14 14h2"})]}),PostCard:V(K,{children:[T("rect",{x:"4",y:"3.5",width:"16",height:"17",rx:"2"}),T("rect",{x:"6.5",y:"6",width:"11",height:"6",rx:"1"}),T("path",{d:"M6.5 14.5h11M6.5 17.5h7"})]}),Manifesto:V(K,{children:[T("path",{d:"M7 8h3.2v4c0 1.6-1 2.6-3 3.2"}),T("path",{d:"M14 8h3.2v4c0 1.6-1 2.6-3 3.2"})]}),Stats:V(K,{children:[T("path",{d:"M3.5 20h17"}),T("path",{d:"M6 20v-7M11 20V7M16 20v-5M20.5 20v-9"})]}),Logos:V(K,{children:[T("circle",{cx:"6",cy:"12",r:"2.6"}),T("rect",{x:"10",y:"9.4",width:"5.2",height:"5.2",rx:"1.2"}),T("path",{d:"M19 9.2l2.4 5h-4.8z"})]}),Ticker:V(K,{children:[T("rect",{x:"3",y:"8.5",width:"18",height:"7",rx:"2"}),T("path",{d:"M6 12h3.5M11.5 12h2M15.5 12h2.5"})]}),SectionHeader:V(K,{children:[T("rect",{x:"3.5",y:"6",width:"5",height:"5",rx:"1.2"}),T("path",{d:"M11 8.5h9M3.5 15.5h17"})]}),IntroBleed:V(K,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M3 13.5h18M7 16.8h6"})]}),Split:V(K,{children:[T("rect",{x:"3",y:"5",width:"8",height:"14",rx:"1.5"}),T("path",{d:"M14 8.5h6M14 12h6M14 15.5h4"})]}),Eyebrow:V(K,{children:[T("path",{d:"M4 8.5h4.5M11 8.5h9"}),T("path",{d:"M4 14.5h16"})]}),HeroGroup:V(K,{children:[T("rect",{x:"3.5",y:"4.5",width:"17",height:"15",rx:"2"}),T("path",{d:"M7 9h8M7 12.5h10M7 16h6"})]}),Form:V(K,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M6.5 9h11M6.5 12.5h11"}),T("rect",{x:"6.5",y:"15",width:"6.5",height:"2.6",rx:"1.3"})]}),LogoBlock:T(K,{children:T("path",{d:"M12 3.5l7.5 3.2v5.1c0 4.2-3.2 7.1-7.5 8.7-4.3-1.6-7.5-4.5-7.5-8.7V6.7z"})}),Spacer:V(K,{children:[T("path",{d:"M12 4v6M9.5 6.5L12 4l2.5 2.5M12 20v-6M9.5 17.5L12 20l2.5-2.5"}),T("path",{d:"M5 13h14",strokeDasharray:"2 2.5"})]}),ContactRouting:V(K,{children:[T("rect",{x:"3",y:"4",width:"5",height:"5",rx:"1"}),T("rect",{x:"9.5",y:"4",width:"5",height:"5",rx:"1"}),T("rect",{x:"16",y:"4",width:"5",height:"5",rx:"1"}),T("path",{d:"M4 13.5h11M4 17.5h7"}),T("path",{d:"M17 15l3 2-3 2"})]}),CustomHTML:T("path",{d:"M9 8l-4 4 4 4M15 8l4 4-4 4"})},fO=T("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2.5"}),cO={footer:Oh,Footer:Oh,Divider:Lh,FooterDivider:Lh,Banner:ZL,Flex:QL,FooterSocial:tO,page:sO,chat:aO,Heading:eO,Text:rO,ImageBlock:Kf,ButtonBlock:JL,Grid:nO,ProductRef:oO,heroMedia:lO,heroImage:Kf,heroImage2:Kf},dO={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial",SiteHeader:"header",SiteFooter:"footer"};function vt({type:e,size:o=16,className:t}){let r=dO[e]??e,a=cO[r];return a?T(a,{size:o,className:t}):T("svg",{width:o,height:o,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round",className:t,"aria-hidden":"true",children:iO[r]??fO})}import{jsx as X,jsxs as Vf,Fragment as uO}from"react/jsx-runtime";import{useEffect as pO,useId as Rh,useState as mO}from"react";import{IconPicker as xO}from"efficient-shell/ui";import{SettingsDefaultReset as IO,SettingsField as sr,SettingsSegmented as hO,SettingsSwitch as Ah}from"efficient-easel/panel";import*as gO from"efficient-easel/icons";import{ButtonIcon as bO,ButtonIconIcon as yO,EyeIcon as SO,PhoneIcon as CO,PlacementIcon as vO,TypeIcon as wO}from"efficient-easel/icons";var kO="Chat with us",TO="We usually reply within a few minutes",FO="Hi! Ask us anything \u2014 about a wheel, an order, or fitment. Leave your details and we\u2019ll reply.";function yl({label:e,value:o,placeholder:t,onCommit:r,multiline:a=!1,hint:n}){let[s,i]=mO(o);pO(()=>i(o),[o]);let f=()=>{s!==o&&r(s)};return X(sr,{label:e,icon:X(wO,{}),changed:o!=="",action:X(ir,{label:e,changed:o!=="",onReset:()=>r("")}),hint:n,children:a?X("textarea",{value:s,placeholder:t,rows:3,onChange:u=>i(u.target.value),onBlur:f,"aria-label":e}):X("input",{type:"text",value:s,placeholder:t,onChange:u=>i(u.target.value),onBlur:f,onKeyDown:u=>{u.key==="Enter"&&u.currentTarget.blur()},"aria-label":e,autoComplete:"off"})})}function ir({label:e,changed:o,onReset:t}){return X(IO,{words:j()?.panel,label:e,changed:o,onReset:t})}function EO({label:e,icon:o,checked:t,fallback:r,onChange:a,hint:n}){let s=Rh();return X(sr,{label:e,labelId:s,icon:o,changed:t!==r,action:Vf("span",{className:"inline-flex items-center gap-2",children:[X(Ah,{checked:t,onChange:a,ariaLabelledBy:s}),X(ir,{label:e,changed:t!==r,onReset:()=>a(r)})]}),hint:n})}function PO(e){let o=e.replace(/(^|-)([a-z])/g,(r,a,n)=>n.toUpperCase()),t=gO[`${o}Icon`];return t?X(t,{size:16}):null}var LO=cl.map(e=>({value:e,icon:PO(e)}));function OO(){let{theme:e}=Z(),o=Qe(e).themes[0];return Or(o)??o?.accent??""}function Bh(){let{chat:e,setChat:o}=pl(),t=Rh(),r=OO(),a=e.launcherIcon?dl(e.launcherIcon):nr;return Vf(uO,{children:[X(sr,{label:l("Show the chat bubble"),labelId:t,icon:X(SO,{}),changed:!e.enabled,action:Vf("span",{className:"inline-flex items-center gap-2",children:[X(Ah,{checked:e.enabled,onChange:n=>o({enabled:n}),ariaLabelledBy:t}),X(ir,{label:l("Show the chat bubble"),changed:!e.enabled,onReset:()=>o({enabled:!0})})]}),hint:e.enabled?l("The floating chat bubble shows in the corner of every page."):l("The chat bubble is hidden across the whole site.")}),X(Yt,{label:"Look"}),X(sr,{label:l("Button color"),icon:X(bO,{}),changed:e.launcherColor!=="",action:X(Je,{label:l("Button color"),value:e.launcherColor,inherited:r,caption:e.launcherColor?void 0:l("Site button color"),onChange:n=>o({launcherColor:n}),after:X(ir,{label:l("Button color"),changed:e.launcherColor!=="",onReset:()=>o({launcherColor:""})})})}),X(sr,{label:l("Icon"),icon:X(yO,{}),changed:a!==nr,action:X(ir,{label:l("Icon"),changed:a!==nr,onReset:()=>o({launcherIcon:""})}),children:X(xO,{label:l("Icon"),value:a,options:LO,onChange:n=>o({launcherIcon:n===nr?"":n})})}),X(sr,{label:l("Position"),icon:X(vO,{}),changed:e.launcherPosition!==Ct,action:X(ir,{label:l("Position"),changed:e.launcherPosition!==Ct,onReset:()=>o({launcherPosition:Ct})}),children:X(hO,{options:[{label:l("Right"),id:"right"},{label:l("Left"),id:"left"}],value:e.launcherPosition,ariaLabel:l("Position"),onChange:n=>o({launcherPosition:n})})}),X(yl,{label:l("Label"),value:e.launcherLabel,placeholder:l("Icon only"),onCommit:n=>o({launcherLabel:n}),hint:l("Shows when a visitor points at the button")}),X(EO,{label:l("Show on phones"),icon:X(CO,{}),checked:e.showOnPhones,fallback:ul.showOnPhones,onChange:n=>o({showOnPhones:n})}),X(Yt,{label:"Wording"}),X(yl,{label:l("Title"),value:e.title,placeholder:kO,onCommit:n=>o({title:n})}),X(yl,{label:l("Subtitle"),value:e.subtitle,placeholder:TO,onCommit:n=>o({subtitle:n})}),X(yl,{label:l("Greeting message"),value:e.greeting,placeholder:FO,onCommit:n=>o({greeting:n}),multiline:!0}),X("p",{className:"es-field-hint sf-hint-keep",children:l("Leave a field blank to use the built-in wording.")})]})}import{jsx as wt,Fragment as Ic,jsxs as Hh}from"react/jsx-runtime";import{useEffect as sR,useId as Nh,useState as Mh}from"react";import{SettingsField as iR}from"efficient-easel/panel";import{jsx as QO}from"react/jsx-runtime";import{forwardRef as RO,createElement as Yf}from"react";var _h={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};var G=(e,o,t,r)=>{let a=RO(({color:n="currentColor",size:s=24,stroke:i=2,title:f,className:u,children:p,...m},x)=>Yf("svg",{ref:x,..._h[e],width:s,height:s,className:["tabler-icon",`tabler-icon-${o}`,u].filter(Boolean).join(" "),...e==="filled"?{fill:n}:{strokeWidth:i,stroke:n},...m},[f&&Yf("title",{key:"svg-title"},f),...r.map(([h,b])=>Yf(h,b)),...Array.isArray(p)?p:[p]]));return a.displayName=`${t}`,a};var AO=[["path",{d:"M7 10v4h3v7h4v-7h3l1 -4h-4v-2a1 1 0 0 1 1 -1h3v-4h-3a5 5 0 0 0 -5 5v2h-3",key:"svg-0"}]],Xf=G("outline","brand-facebook","BrandFacebook",AO);var BO=[["path",{d:"M3 7a4 4 0 0 1 4 -4h10a4 4 0 0 1 4 4v10a4 4 0 0 1 -4 4h-10a4 4 0 0 1 -4 -4l0 -10",key:"svg-0"}],["path",{d:"M8.5 12a3.5 3.5 0 1 0 7 0a3.5 3.5 0 0 0 -7 0",key:"svg-1"}],["path",{d:"M17 7v.01",key:"svg-2"}]],Zf=G("outline","brand-instagram","BrandInstagram",BO);var _O=[["path",{d:"M21 10.663c0 -4.224 -4.041 -7.663 -9 -7.663s-9 3.439 -9 7.663c0 3.783 3.201 6.958 7.527 7.56c1.053 .239 .932 .644 .696 2.133c-.039 .238 -.184 .932 .777 .512c.96 -.42 5.18 -3.201 7.073 -5.48c1.304 -1.504 1.927 -3.029 1.927 -4.715v-.01",key:"svg-0"}]],Qf=G("outline","brand-line","BrandLine",_O);var DO=[["path",{d:"M8 11v5",key:"svg-0"}],["path",{d:"M8 8v.01",key:"svg-1"}],["path",{d:"M12 16v-5",key:"svg-2"}],["path",{d:"M16 16v-3a2 2 0 1 0 -4 0",key:"svg-3"}],["path",{d:"M3 7a4 4 0 0 1 4 -4h10a4 4 0 0 1 4 4v10a4 4 0 0 1 -4 4h-10a4 4 0 0 1 -4 -4l0 -10",key:"svg-4"}]],Jf=G("outline","brand-linkedin","BrandLinkedin",DO);var NO=[["path",{d:"M8 20l4 -9",key:"svg-0"}],["path",{d:"M10.7 14c.437 1.263 1.43 2 2.55 2c2.071 0 3.75 -1.554 3.75 -4a5 5 0 1 0 -9.7 1.7",key:"svg-1"}],["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-2"}]],ec=G("outline","brand-pinterest","BrandPinterest",NO);var MO=[["path",{d:"M15 10l-4 4l6 6l4 -16l-18 7l4 2l2 6l3 -4",key:"svg-0"}]],oc=G("outline","brand-telegram","BrandTelegram",MO);var HO=[["path",{d:"M21 7.917v4.034a9.948 9.948 0 0 1 -5 -1.951v4.5a6.5 6.5 0 1 1 -8 -6.326v4.326a2.5 2.5 0 1 0 4 2v-11.5h4.083a6.005 6.005 0 0 0 4.917 4.917",key:"svg-0"}]],tc=G("outline","brand-tiktok","BrandTiktok",HO);var zO=[["path",{d:"M16.5 10c3.038 0 5.5 2.015 5.5 4.5c0 1.397 -.778 2.645 -2 3.47l0 2.03l-1.964 -1.178a6.649 6.649 0 0 1 -1.536 .178c-3.038 0 -5.5 -2.015 -5.5 -4.5s2.462 -4.5 5.5 -4.5",key:"svg-0"}],["path",{d:"M11.197 15.698c-.69 .196 -1.43 .302 -2.197 .302a8.008 8.008 0 0 1 -2.612 -.432l-2.388 1.432v-2.801c-1.237 -1.082 -2 -2.564 -2 -4.199c0 -3.314 3.134 -6 7 -6c3.782 0 6.863 2.57 7 5.785l0 .233",key:"svg-1"}],["path",{d:"M10 8h.01",key:"svg-2"}],["path",{d:"M7 8h.01",key:"svg-3"}],["path",{d:"M15 14h.01",key:"svg-4"}],["path",{d:"M18 14h.01",key:"svg-5"}]],rc=G("outline","brand-wechat","BrandWechat",zO);var WO=[["path",{d:"M3 21l1.65 -3.8a9 9 0 1 1 3.4 2.9l-5.05 .9",key:"svg-0"}],["path",{d:"M9 10a.5 .5 0 0 0 1 0v-1a.5 .5 0 0 0 -1 0v1a5 5 0 0 0 5 5h1a.5 .5 0 0 0 0 -1h-1a.5 .5 0 0 0 0 1",key:"svg-1"}]],ac=G("outline","brand-whatsapp","BrandWhatsapp",WO);var GO=[["path",{d:"M4 4l11.733 16h4.267l-11.733 -16l-4.267 0",key:"svg-0"}],["path",{d:"M4 20l6.768 -6.768m2.46 -2.46l6.772 -6.772",key:"svg-1"}]],nc=G("outline","brand-x","BrandX",GO);var UO=[["path",{d:"M2 8a4 4 0 0 1 4 -4h12a4 4 0 0 1 4 4v8a4 4 0 0 1 -4 4h-12a4 4 0 0 1 -4 -4v-8",key:"svg-0"}],["path",{d:"M10 9l5 3l-5 3l0 -6",key:"svg-1"}]],lc=G("outline","brand-youtube","BrandYoutube",UO);var $O=[["path",{d:"M18 2a1 1 0 0 1 .993 .883l.007 .117v4a1 1 0 0 1 -.883 .993l-.117 .007h-3v1h3a1 1 0 0 1 .991 1.131l-.02 .112l-1 4a1 1 0 0 1 -.858 .75l-.113 .007h-2v6a1 1 0 0 1 -.883 .993l-.117 .007h-4a1 1 0 0 1 -.993 -.883l-.007 -.117v-6h-2a1 1 0 0 1 -.993 -.883l-.007 -.117v-4a1 1 0 0 1 .883 -.993l.117 -.007h2v-1a6 6 0 0 1 5.775 -5.996l.225 -.004h3z",key:"svg-0"}]],sc=G("filled","brand-facebook-filled","BrandFacebookFilled",$O);var qO=[["path",{d:"M16 3a5 5 0 0 1 5 5v8a5 5 0 0 1 -5 5h-8a5 5 0 0 1 -5 -5v-8a5 5 0 0 1 5 -5zm-4 5a4 4 0 0 0 -3.995 3.8l-.005 .2a4 4 0 1 0 4 -4m4.5 -1.5a1 1 0 0 0 -.993 .883l-.007 .127a1 1 0 0 0 1.993 .117l.007 -.127a1 1 0 0 0 -1 -1",key:"svg-0"}]],ic=G("filled","brand-instagram-filled","BrandInstagramFilled",qO);var jO=[["path",{d:"M17 2a5 5 0 0 1 5 5v10a5 5 0 0 1 -5 5h-10a5 5 0 0 1 -5 -5v-10a5 5 0 0 1 5 -5zm-9 8a1 1 0 0 0 -1 1v5a1 1 0 0 0 2 0v-5a1 1 0 0 0 -1 -1m6 0a3 3 0 0 0 -1.168 .236l-.125 .057a1 1 0 0 0 -1.707 .707v5a1 1 0 0 0 2 0v-3a1 1 0 0 1 2 0v3a1 1 0 0 0 2 0v-3a3 3 0 0 0 -3 -3m-6 -3a1 1 0 0 0 -.993 .883l-.007 .127a1 1 0 0 0 1.993 .117l.007 -.127a1 1 0 0 0 -1 -1",key:"svg-0"}]],fc=G("filled","brand-linkedin-filled","BrandLinkedinFilled",jO);var KO=[["path",{d:"M17 3.34a10 10 0 0 1 -8.512 18.023l2.364 -5.315a3.5 3.5 0 0 0 2.398 .952c2.708 0 4.75 -2.089 4.75 -5a6 6 0 1 0 -11.64 2.041a1 1 0 1 0 1.88 -.682a4 4 0 1 1 7.76 -1.36c0 1.818 -1.156 3.001 -2.75 3.001c-.609 0 -1.153 -.361 -1.478 -1.022l1.142 -2.572a1 1 0 0 0 -1.828 -.812l-4.392 9.882a10 10 0 0 1 -4.694 -8.476l.005 -.324a10 10 0 0 1 14.995 -8.336",key:"svg-0"}]],cc=G("filled","brand-pinterest-filled","BrandPinterestFilled",KO);var VO=[["path",{d:"M16.083 2h-4.083a1 1 0 0 0 -1 1v11.5a1.5 1.5 0 1 1 -2.519 -1.1l.12 -.1a1 1 0 0 0 .399 -.8v-4.326a1 1 0 0 0 -1.23 -.974a7.5 7.5 0 0 0 1.73 14.8l.243 -.005a7.5 7.5 0 0 0 7.257 -7.495v-2.7l.311 .153c1.122 .53 2.333 .868 3.59 .993a1 1 0 0 0 1.099 -.996v-4.033a1 1 0 0 0 -.834 -.986a5.005 5.005 0 0 1 -4.097 -4.096a1 1 0 0 0 -.986 -.835z",key:"svg-0"}]],dc=G("filled","brand-tiktok-filled","BrandTiktokFilled",VO);var YO=[["path",{d:"M18.497 4.409a10 10 0 0 1 -10.36 16.828l-.223 -.098l-4.759 .849l-.11 .011a1 1 0 0 1 -.11 0l-.102 -.013l-.108 -.024l-.105 -.037l-.099 -.047l-.093 -.058l-.014 -.011l-.012 -.007l-.086 -.073l-.077 -.08l-.067 -.088l-.056 -.094l-.034 -.07l-.04 -.108l-.028 -.128l-.012 -.102a1 1 0 0 1 0 -.125l.012 -.1l.024 -.11l.045 -.122l1.433 -3.304l-.009 -.014a10 10 0 0 1 1.549 -12.454l.215 -.203a10 10 0 0 1 13.226 -.217m-8.997 3.09a1.5 1.5 0 0 0 -1.5 1.5v1a6 6 0 0 0 6 6h1a1.5 1.5 0 0 0 0 -3h-1l-.144 .007a1.5 1.5 0 0 0 -1.128 .697l-.042 .074l-.022 -.007a4.01 4.01 0 0 1 -2.435 -2.435l-.008 -.023l.075 -.041a1.5 1.5 0 0 0 .704 -1.272v-1a1.5 1.5 0 0 0 -1.5 -1.5",key:"svg-0"}]],uc=G("filled","brand-whatsapp-filled","BrandWhatsappFilled",YO);var XO=[["path",{d:"M8.267 3a1 1 0 0 1 .73 .317l.076 .092l4.274 5.828l5.946 -5.944a1 1 0 0 1 1.497 1.32l-.083 .094l-6.163 6.162l6.262 8.54a1 1 0 0 1 -.697 1.585l-.109 .006h-4.267a1 1 0 0 1 -.73 -.317l-.076 -.092l-4.276 -5.829l-5.944 5.945a1 1 0 0 1 -1.497 -1.32l.083 -.094l6.161 -6.163l-6.26 -8.539a1 1 0 0 1 .697 -1.585l.109 -.006h4.267z",key:"svg-0"}]],pc=G("filled","brand-x-filled","BrandXFilled",XO);var ZO=[["path",{d:"M18 3a5 5 0 0 1 5 5v8a5 5 0 0 1 -5 5h-12a5 5 0 0 1 -5 -5v-8a5 5 0 0 1 5 -5zm-9 6v6a1 1 0 0 0 1.514 .857l5 -3a1 1 0 0 0 0 -1.714l-5 -3a1 1 0 0 0 -1.514 .857z",key:"svg-0"}]],mc=G("filled","brand-youtube-filled","BrandYoutubeFilled",ZO);var h9="outline",Sl={fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},JO={},xc={fillRule:"evenodd"},eR=[["path",{...Sl,d:"M21 4L3 11L7 13L9 19L12 15L17 20z"}],["path",{...xc,d:"M21 4L3 11L7 13L9 19L12 15L17 20zM15.212 8.939 10.576 13.576 11.424 14.424 16.061 9.788z"}]],oR=[["path",{...Sl,d:["M21 10.663c0 -4.224 -4.041 -7.663 -9 -7.663s-9 3.439 -9 7.663","c0 3.783 3.201 6.958 7.527 7.56c1.053 .239 .932 .644 .696 2.133","c-.039 .238 -.184 .932 .777 .512c.96 -.42 5.18 -3.201 7.073 -5.48","c1.304 -1.504 1.927 -3.029 1.927 -4.715v-.01z"].join("")}],["path",{...JO,d:["M21 10.663c0 -4.224 -4.041 -7.663 -9 -7.663s-9 3.439 -9 7.663","c0 3.783 3.201 6.958 7.527 7.56c1.053 .239 .932 .644 .696 2.133","c-.039 .238 -.184 .932 .777 .512c.96 -.42 5.18 -3.201 7.073 -5.48","c1.304 -1.504 1.927 -3.029 1.927 -4.715v-.01z"].join("")}]],tR=[["path",{...Sl,d:["M16.5 10c3.038 0 5.5 2.015 5.5 4.5c0 1.397 -.778 2.645 -2 3.47l0 2.03l-1.964 -1.178","a6.649 6.649 0 0 1 -1.536 .178c-3.038 0 -5.5 -2.015 -5.5 -4.5s2.462 -4.5 5.5 -4.5z"].join("")}],["path",{...Sl,d:["M8.319 15.972L7.84 15.918L7.349 15.832L6.865 15.715L6.388 15.568L4 17L4 14.199","L3.559 13.775L3.197 13.356L2.877 12.91L2.603 12.439L2.376 11.946L2.201 11.433","L2.079 10.902L2.016 10.405L2.001 9.897L2.036 9.386L2.12 8.889L2.25 8.405L2.425 7.937","L2.642 7.486L2.9 7.055L3.195 6.645L3.459 6.333L3.744 6.037L4.05 5.757L4.377 5.495","L4.723 5.25L5.086 5.025L5.467 4.819L5.864 4.634L6.275 4.471L6.701 4.331L7.139 4.214","L7.589 4.122L8.05 4.055L8.521 4.014L9.352 4.007L9.815 4.04L10.269 4.098L10.713 4.181","L11.146 4.287L11.567 4.416L11.975 4.567L12.369 4.739L12.748 4.932L13.112 5.143","L13.459 5.374L13.788 5.622L14.172 5.956L14.458 6.241L14.722 6.542L14.965 6.856","L15.217 7.237A8.35 7.35 0 0 0 8.319 15.972z"].join("")}],["path",{...xc,d:["M8.319 15.972L7.84 15.918L7.349 15.832L6.865 15.715L6.388 15.568L4 17L4 14.199","L3.559 13.775L3.197 13.356L2.877 12.91L2.603 12.439L2.376 11.946L2.201 11.433","L2.079 10.902L2.016 10.405L2.001 9.897L2.036 9.386L2.12 8.889L2.25 8.405L2.425 7.937","L2.642 7.486L2.9 7.055L3.195 6.645L3.459 6.333L3.744 6.037L4.05 5.757L4.377 5.495","L4.723 5.25L5.086 5.025L5.467 4.819L5.864 4.634L6.275 4.471L6.701 4.331L7.139 4.214","L7.589 4.122L8.05 4.055L8.521 4.014L9.352 4.007L9.815 4.04L10.269 4.098L10.713 4.181","L11.146 4.287L11.567 4.416L11.975 4.567L12.369 4.739L12.748 4.932L13.112 5.143","L13.459 5.374L13.788 5.622L14.172 5.956L14.458 6.241L14.722 6.542L14.965 6.856","L15.217 7.237A8.35 7.35 0 0 0 8.319 15.972zM5.25 7.9a0.85 0.85 0 1 0 1.7 0","a0.85 0.85 0 1 0 -1.7 0zM8.25 7.9a0.85 0.85 0 1 0 1.7 0a0.85 0.85 0 1 0 -1.7 0z"].join("")}],["path",{...xc,d:["M16.5 10c3.038 0 5.5 2.015 5.5 4.5c0 1.397 -.778 2.645 -2 3.47l0 2.03l-1.964 -1.178","a6.649 6.649 0 0 1 -1.536 .178c-3.038 0 -5.5 -2.015 -5.5 -4.5s2.462 -4.5 5.5 -4.5z","M14.15 14a0.85 0.85 0 1 0 1.7 0a0.85 0.85 0 1 0 -1.7 0zM17.15 14","a0.85 0.85 0 1 0 1.7 0a0.85 0.85 0 1 0 -1.7 0z"].join("")}]],rR=G("filled","brand-telegram-filled","BrandTelegramFilled",eR),aR=G("filled","brand-line-filled","BrandLineFilled",oR),nR=G("filled","brand-wechat-filled","BrandWechatFilled",tR),lR={instagram:{outline:Zf,solid:ic},facebook:{outline:Xf,solid:sc},tiktok:{outline:tc,solid:dc},youtube:{outline:lc,solid:mc},x:{outline:nc,solid:pc},linkedin:{outline:Jf,solid:fc},pinterest:{outline:ec,solid:cc},whatsapp:{outline:ac,solid:uc},telegram:{outline:oc,solid:rR},line:{outline:Qf,solid:aR},wechat:{outline:rc,solid:nR}};function Dh({platform:e,iconStyle:o,size:t}){let r=lR[e][o];return QO(r,{size:t,stroke:1.75,"aria-hidden":"true",focusable:"false"})}var fR={instagram:"instagram.com/yourshop",facebook:"facebook.com/yourshop",tiktok:"tiktok.com/@yourshop",youtube:"youtube.com/@yourshop",x:"x.com/yourshop",linkedin:"linkedin.com/company/yourshop",pinterest:"pinterest.com/yourshop",whatsapp:"wa.me/61400000000",telegram:"t.me/yourshop",line:"line.me/ti/p/~yourshop",wechat:"u.wechat.com/your-qr-code-link"};function cR({platform:e}){let{rows:o,saveLink:t}=aa(),{value:r,error:a}=o[e],[n,s]=Mh(r),[i,f]=Mh(!1),u=Nh(),p=Nh();sR(()=>s(r),[r]);let m=async()=>{if(n.trim()===r){n!==r&&s(r);return}f(!0),await t(e,n),f(!1)},x=su[e];return Hh(Ic,{children:[wt(iR,{label:l(x),htmlFor:u,icon:wt(Dh,{platform:e,iconStyle:"outline",size:18}),children:wt("input",{id:u,type:"text",inputMode:"url",value:n,placeholder:fR[e],onChange:h=>s(h.target.value),onBlur:()=>{m()},onKeyDown:h=>{h.key==="Enter"&&h.currentTarget.blur(),h.key==="Escape"&&(s(r),h.currentTarget.blur())},"aria-invalid":a?!0:void 0,"aria-describedby":a?p:void 0,"aria-busy":i||void 0,autoComplete:"off",spellCheck:!1})}),a&&wt("p",{id:p,className:"sf-note sf-note--error",role:"alert",children:a})]})}function zh({unavailable:e}){let{canSave:o}=aa();return!o&&e?wt(Ic,{children:e}):Hh(Ic,{children:[wt("p",{className:"es-field-hint sf-hint-keep",children:l("Paste a link to each profile. A platform left empty shows nothing on the site.")}),Ua.map(t=>wt(cR,{platform:t},t))]})}import{jsx as pr,jsxs as eB}from"react/jsx-runtime";import{useId as oB,useMemo as tB}from"react";import{useEasel as rB}from"efficient-easel/easel";import{SettingsField as aB,SettingsSwitch as nB}from"efficient-easel/panel";import{EyeIcon as lB}from"efficient-easel/icons";import{jsx as vo,jsxs as Ll}from"react/jsx-runtime";import{useCallback as dr,useEffect as ur,useId as KA,useRef as Mo,useState as ba}from"react";var Wh="data-puck-overlay-portal";function Cl(e){return e.setAttribute(Wh,"true"),()=>e.removeAttribute(Wh)}import{jsx as xa,jsxs as sg}from"react/jsx-runtime";var hc="small",gc="dot",dR=[{label:"Small",value:"small"},{label:"Display",value:"display"}],uR=[{label:"Dot \u25CF",value:"dot"},{label:"Cross \u2715",value:"cross"},{label:"Slash /",value:"slash"},{label:"Triangle \u25BC",value:"triangle"},{label:"None",value:"none"}],Gh={dot:"\u25CF",cross:"\u2715",slash:"/",triangle:"\u25BC",none:""},pR={small:"font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.25em] max-[800px]:text-[length:var(--size-label,12px)]",display:"font-display font-medium text-[length:var(--size-headingMedium,44px)] uppercase leading-none tracking-[0.005em] max-[800px]:text-[length:var(--size-headingMedium,28px)]"},mR={small:{dot:"",cross:"text-[0.77em]",slash:"text-[0.77em]",triangle:"",none:""},display:{dot:"text-[0.3em]",cross:"text-[0.64em]",slash:"text-[0.64em]",triangle:"text-[0.3em]",none:""}};function Uh(e){return eo(dR,hc,e)}function $h(e){return eo(uR,gc,e)}function qh(e){return pR[e]}function jh(e,o){return mR[e][o]}var bc="left",xR=[{label:"Left",value:"left",cell:"left"},{label:"Right",value:"right",cell:"right"},{label:"Up",value:"up",cell:"top"},{label:"Down",value:"down",cell:"bottom"}],IR={left:"storefront-ticker",right:"storefront-ticker-right",up:"storefront-ticker-up",down:"storefront-ticker-down"};function Kh(e){return eo(xR,bc,e)}function Vh(e){return e==="up"||e==="down"}function Yh(e,o){return`${IR[e]} ${o}s linear infinite`}import{jsx as ce,jsxs as vc}from"react/jsx-runtime";import{Fragment as ng}from"react";import{Fragment as CR,jsx as Sc}from"react/jsx-runtime";import{Fragment as Qh,jsx as ua,jsxs as bR}from"react/jsx-runtime";import{createContext as yc,useContext as pa,useId as yR,useMemo as SR}from"react";var da="@name",Xh="@body",Zh="@value",A9={[da]:"Name",[Xh]:"Body",[Zh]:"Value"},hR={TimelineTrack:{"entries.date":da,"entries.title":da,"entries.blurb":Xh},Footprint:{"offices.city":da},Stats:{"items.label":da,"items.value":Zh}};function gR(e){let{key:o,row:t}=so(e);return t?`${o}.${t.rowKey}`:null}function vl(e,o){if(!e)return o;let t=gR(o);return t?hR[e]?.[t]??o:o}var wl=yc(null),Jh=yc(null),eg=yc(null);function H9({needles:e,styles:o,type:t,children:r}){let a=yR(),n=JSON.stringify([a,e,o,t]),s=SR(()=>TI(e,o,a,i=>vl(t,i)),[n]);return s?bR(Qh,{children:[ua("style",{"data-sf-part-styles":"",dangerouslySetInnerHTML:{__html:FI(s).replace(/</g,"\\3c ")}}),ua(wl.Provider,{value:s,children:r})]}):ua(Qh,{children:r})}function og(e){let o=pa(wl),t=pa(Jh),r=EI(o,e);return r&&r.stamp!==t?r:null}function z9(e){return Sf(pa(wl),e)}function tg({stamp:e,children:o}){return ua(Jh.Provider,{value:e,children:o})}function W9({children:e}){let o=pa(wl);return ua(eg.Provider,{value:o,children:e})}function G9(e){return Sf(pa(eg),e)}function ma({value:e,children:o}){let t=og(e);return t?Sc(tg,{stamp:t.stamp,children:Sc("span",{[mf]:t.stamp,children:o})}):Sc(CR,{children:o})}import{jsx as Cc,Fragment as vR}from"react/jsx-runtime";function rg({className:e=""}){return Cc("sup",{className:`text-accent tracking-normal text-[length:min(1em,max(0.75em,11px))] ${e}`,children:"\xAE"})}function kl(e){if(!e.includes("\xAE"))return e;let o=e.split("\xAE"),t=[];return o.forEach((r,a)=>{r&&t.push(r),a<o.length-1&&t.push(Cc(rg,{},`r${a}`))}),Cc(vR,{children:t})}var Y9=rg;function wc(e,o=!1){let t=OR(o),r=js(e);if(r.length===1){let[n]=r,s=qs(n),i=s?PR(s,n.children):n.children;return ce(ma,{value:e,children:Tl(i,t)})}let a=[];return r.forEach((n,s)=>{if(n.bullet){a.push(ce("span",{"data-sf-bullet":"",className:wR,children:Tl(n.children,t)},s));return}if(n.number!=null){a.push(vc("span",{"data-sf-number":n.number,className:kR,children:[vc("span",{className:TR,children:[n.number,"."]}),Tl(n.children,t)]},s));return}s>0&&!FR(r[s-1])&&a.push(ce("br",{},`br${s}`)),a.push(ce(ng,{children:Tl(n.children,t)},s))}),ce(ma,{value:e,children:a})}var wR="relative block pl-6 before:absolute before:left-1.5 before:font-bold before:text-accent before:content-['\xB7']",kR="relative block pl-[2em]",TR="absolute left-0 w-[1.6em] text-right tabular-nums";function FR(e){return e.bullet||e.number!=null}var ER="text-accent underline underline-offset-[0.18em]";function PR(e,o){let[t,...r]=o;return t?.kind==="text"?[{kind:"text",text:`${e}${t.text}`},...r]:[{kind:"text",text:e},...o]}function LR(e){if(e)return kI(e)?e:Object.hasOwn(Oo,e)?Oo[e]:void 0}function Tl(e,o){let t=[],r=!1;return e.forEach((a,n)=>{if(a.kind==="text"){t.push(ce("span",{children:kl(a.text)},n)),r=!0;return}r||t.push(ce("span",{},`e${n}`)),t.push(lg(a,n,o)),r=!1}),r||t.push(ce("span",{},"end")),t}function ag(e,o){return e.length===1&&e[0].kind==="text"?kl(e[0].text):e.map((t,r)=>t.kind==="text"?ce(ng,{children:kl(t.text)},r):lg(t,r,o))}function OR(e){return e?"font-normal italic text-accent":"not-italic text-accent"}function aj(e){return ce(ma,{value:e,children:ce("span",{children:e})})}function lg(e,o,t){if(e.kind==="link")return ce("a",{href:e.href,className:ER,children:ag(e.children,t)},o);let r=ag(e.children,t),a=sp[e.kind];if(a)return ce("span",{[ip]:a,children:r},o);switch(e.kind){case"underline":return ce("u",{children:r},o);case"sup":return ce("sup",{children:r},o);case"sub":return ce("sub",{children:r},o);case"color":{let n=LR(e.color);return n?ce("span",{style:{color:n},children:r},o):ce("span",{children:r},o)}case"accent":case"highlight":return ce("em",{className:t,children:r},o);case"bold":return ce("strong",{className:"font-semibold",children:r},o);case"italic":return ce("em",{className:"italic",children:r},o);case"strike":return ce("s",{className:"line-through",children:r},o);default:return ce("span",{children:r},o)}}function nj(e,o=!0){let t=e.split(`
6
+ `);return ce(ma,{value:e,children:t.map((r,a)=>vc("span",{children:[wc(r,o),a<t.length-1?ce("br",{}):null]},a))})}function lj(e){return e.split(/\n\s*\n/).map(o=>o.trim()).filter(Boolean)}var RR={"themed-band":"text-fg/70","themed-section":"text-fg-dim","dark-media":"text-overlay-fg/70"};function ig({items:e,separator:o=gc,size:t=hc,durationSec:r=50,scroll:a=bc,backdrop:n="themed-band",className:s}){let i=Uh(t),f=Kh(a),u=$h(o),p=`text-accent ${jh(i,u)}`.trim(),m=Gh[u],x=m===""?xa("span",{}):xa("span",{className:p,children:m}),h=Vh(f),b=h?"inline-flex flex-col items-center gap-[60px] pb-[60px] max-[800px]:gap-8 max-[800px]:pb-8":"inline-flex items-center gap-[60px] pr-[60px] max-[800px]:gap-8 max-[800px]:pr-8",C=h?"inline-flex flex-col items-center gap-[60px] max-[800px]:gap-8":"inline-flex items-center gap-[60px] max-[800px]:gap-8",k=v=>xa("span",{className:b,children:e.map((w,g)=>{let y=typeof w=="string"?w:w.text,E=typeof w=="object"&&w.gold;return sg("span",{className:C,children:[xa("span",{className:E?"text-accent":void 0,children:wc(y)}),x]},g)})},v);return xa("div",{className:`overflow-hidden ${s??""}`,children:sg("div",{className:`flex ${h?"flex-col ":""}whitespace-nowrap ${qh(i)} ${RR[n]}`,style:{animation:Yh(f,r)},children:[k("a"),k("b")]})})}import{jsx as ha,jsxs as sA}from"react/jsx-runtime";import{createContext as iA,useContext as fA}from"react";import{jsx as fr,jsxs as bg}from"react/jsx-runtime";import{useEffect as Tc,useRef as YR,useState as Ia}from"react";import{jsx as fg}from"react/jsx-runtime";import{createContext as AR,lazy as hj,Suspense as gj,useContext as BR}from"react";var _R={Link:Hd,Image:Md},DR=AR(_R);function cg(){return BR(DR)}function bj(e){let{Link:o}=cg();return fg(o,{...e})}function dg(e){let{Image:o}=cg();return fg(o,{...e})}import{jsx as ug,Fragment as NR,jsxs as MR}from"react/jsx-runtime";import{useEffect as HR,useRef as pg,useState as zR}from"react";var WR="#t=0.001",GR=2;function UR(e,o){if(e.readyState<GR||!e.videoWidth||!e.videoHeight)return!1;let t=o.getContext("2d");return t?(o.width=e.videoWidth,o.height=e.videoHeight,t.drawImage(e,0,0,o.width,o.height),!0):!1}function mg({src:e,objectPosition:o="50% 50%",onError:t}){let r=pg(null),a=pg(null),[n,s]=zR(!1);return HR(()=>{let i=r.current,f=a.current;if(n||!i||!f)return;let u=()=>{UR(i,f)&&s(!0)};return u(),i.addEventListener("loadeddata",u),i.addEventListener("seeked",u),()=>{i.removeEventListener("loadeddata",u),i.removeEventListener("seeked",u)}},[n]),MR(NR,{children:[ug("canvas",{ref:a,"aria-hidden":!0,className:"absolute inset-0 z-[3] h-full w-full object-cover",style:{objectPosition:o,visibility:n?"visible":"hidden"}}),!n&&ug("video",{ref:r,src:`${e}${WR}`,muted:!0,playsInline:!0,preload:"auto",className:"hidden",onError:t})]})}import{imageCopyUrl as Ig,imageSrcSet as $R}from"efficient-shell/image-copies";var xg;function kc(){return xg===void 0?{}:{host:xg}}var kj="(max-width: 800px) 100vw, min(100vw, 1600px)";function hg(e,{fallbackWidth:o=1280,maxWidth:t}={}){let r=$R(e,{...kc(),...t===void 0?{}:{maxWidth:t}});return r?{src:Ig(e,o,kc()),srcSet:r}:{src:e}}function Tj(e){let o=Ig(e,1920,kc());return o===e?`url(${e})`:`url("${o}")`}import{formatFocal as qR,parseFocal as jR}from"efficient-shell/format";var KR="sf-focus-phone",VR="--sf-focus-phone";function gg(e){if(typeof e!="string"||!/^\s*-?\d+(\.\d+)?%\s+-?\d+(\.\d+)?%\s*$/.test(e))return{className:"",style:{}};let{x:o,y:t}=jR(e);return{className:KR,style:{[VR]:qR(o,t)}}}var XR=.5;function yg({videoSrc:e,posterSrc:o,showVideo:t=!0,playbackRate:r=XR,objectPosition:a="50% 50%",objectPositionPhone:n,quiet:s=!1}){let i=gg(n),f=o||"",u=e||"",[p,m]=Ia(!1),[x,h]=Ia(!1),[b,C]=Ia(!1),[k,v]=Ia(!1),[w,g]=Ia(!1),y=YR(null);Tc(()=>{m(!1),h(!1),C(!1),v(!1)},[e,o]),Tc(()=>{if(typeof window>"u")return;let L=()=>{let B=window;B.requestIdleCallback?B.requestIdleCallback(()=>g(!0),{timeout:2e3}):setTimeout(()=>g(!0),800)};if(document.readyState==="complete"){L();return}return window.addEventListener("load",L,{once:!0}),()=>window.removeEventListener("load",L)},[]),Tc(()=>{let L=y.current;if(!L)return;let B=()=>{L.playbackRate=r};return B(),L.addEventListener("loadedmetadata",B),()=>L.removeEventListener("loadedmetadata",B)},[e,r]);let E=zd(f),F=f&&E&&!x?hg(f):{src:f};return bg("div",{className:"absolute inset-0 z-[1]",children:[fr("div",{className:"absolute inset-0",style:{background:"var(--site-surface)"}}),f&&(E?fr("img",{src:F.src,...F.srcSet?{srcSet:F.srcSet,sizes:"100vw"}:{},alt:"",className:`absolute inset-0 z-[2] h-full w-full object-cover ${i.className}`.trim(),style:{display:p?"none":"block",objectPosition:a,...i.style},onError:()=>F.srcSet?h(!0):m(!0)},f):fr(dg,{src:f,alt:"",fill:!0,priority:!0,sizes:"100vw",className:`z-[2] object-cover ${i.className}`.trim(),style:{display:p?"none":"block",objectPosition:a,...i.style},onError:()=>m(!0)},f)),t&&!s&&u&&w&&!b&&bg("video",{ref:y,autoPlay:!0,loop:!0,muted:!0,playsInline:!0,preload:"metadata",className:"absolute inset-0 z-[3] h-full w-full object-cover",style:{objectPosition:a},onError:()=>C(!0),children:[Wd(u)&&fr("source",{src:u.replace(/\.mp4$/,".av1.mp4"),type:'video/mp4; codecs="av01.0.08M.10"'}),fr("source",{src:u,type:"video/mp4"})]},u),t&&s&&u&&w&&!k&&(!f||p)&&fr(mg,{src:u,objectPosition:a,onError:()=>v(!0)},u)]})}var Sg=["top","middle","bottom"],Cg=["left","center","right"],vg="bottom",wg="left",ZR={top:"Top",middle:"Middle",bottom:"Bottom"},QR={left:"Left",center:"Center",right:"Right"};var Mj="Up and down",Hj="Sideways",JR={top:"flex-start",middle:"center",bottom:"flex-end"},eA={left:"flex-start",center:"center",right:"flex-end"},oA="--sf-hero-phone-y",tA="--sf-hero-phone-x";function rA(e){return Sg.includes(e)?e:vg}function aA(e){return Cg.includes(e)?e:wg}function kg(e,o){let t=rA(e),r=aA(o),a={};return t!==vg&&(a[oA]=JR[t]),r!==wg&&(a[tA]=eA[r]),a}function zj(){return Sg.map(e=>({label:ZR[e],value:e}))}function Wj(){return Cg.map(e=>({label:QR[e],value:e}))}var nA="#0A0A0A",lA=[[0,".5"],[30,".1"],[60,".1"],[100,".85"]];function Tg(e){let o=e.trim().replace(/^#/,""),t=o.length===3?o.split("").map(a=>a+a).join(""):o;if(!/^[0-9a-fA-F]{6}$/.test(t))return null;let r=Number.parseInt(t,16);return`${r>>16&255},${r>>8&255},${r&255}`}function Fg(e){return e==null?!0:e!==!1}function Eg(e){let o=(e?Tg(e):null)??Tg(nA);return`linear-gradient(180deg, ${lA.map(([t,r])=>`rgba(${o},${r}) ${t}%`).join(", ")})`}var Fc=iA({});function Zj({name:e,process:o,mediaType:t="video",mediaSrc:r,videoSpeed:a,poster:n,objectPosition:s,objectPositionPhone:i,tintColor:f="#000000",tintOpacity:u=0,groups:p,editing:m=!1,themeClassName:x,themeStyle:h}){let{alignment:b="left",textureOpacity:C,textureOn:k,textureColor:v,quietVideo:w,phoneUpDown:g,phoneSideways:y}=fA(Fc),E=t==="video",F=E?Pr(r):void 0,L=E?Pr(n):Pr(r)??Pr(n),B=typeof a=="number"?a/100:1;return sA("section",{className:x?`relative h-full w-full overflow-hidden ${x}`:"relative h-full w-full overflow-hidden",style:h,"data-slide-name":e??"","data-slide-process":o??"","data-slide-media":F?"video":"still",children:[ha(yg,{videoSrc:F,posterSrc:L,showVideo:E,playbackRate:B,objectPosition:s,objectPositionPhone:E?void 0:i,quiet:w}),u>0&&ha("div",{className:"absolute inset-0 z-[2]",style:{background:f,opacity:Math.min(Math.max(u,0),100)/100}}),Fg(k)&&ha("div",{className:"absolute inset-0 z-[2]",style:{background:Eg(v),...C!==void 0?{opacity:C/100}:null}}),ha("div",{className:["sf-hero-group-layer absolute inset-0 z-[3] mx-auto max-w-[min(var(--sf-page-cap,var(--sf-site-width,1600px)),var(--sf-site-width,1600px))] px-[var(--sf-site-gutter,40px)] pt-[140px] pb-14",m?"sf-hero-group-layer-edit":""].filter(Boolean).join(" "),style:{...Vu,...kg(g,y)},children:p&&ha(p,{className:"sf-hero-group-zone",minEmptyHeight:160})})]})}var Pg=Array.from({length:3},(e,o)=>({name:`Slide ${o+1}`,process:"Category",mediaType:"image",mediaVideo:"",poster:""}));import{jsx as Ec}from"react/jsx-runtime";import{UiIcon as bA}from"efficient-easel/draw/client";var cA={"top-left":"left-0 top-[120px]","top-center":"left-1/2 top-[120px] -translate-x-1/2","top-right":"right-0 top-[120px]",left:"left-0 top-1/2 -translate-y-1/2",center:"left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",right:"right-0 top-1/2 -translate-y-1/2","bottom-left":"left-0 bottom-[120px]","bottom-center":"left-1/2 bottom-[120px] -translate-x-1/2","bottom-right":"right-0 bottom-[120px]"},dA=`calc(${kn} - ${$e}*2)`,Lg=`var(${wi},${$e})`,oK=`pointer-events-none absolute inset-y-0 left-[${Lg}] right-[${Lg}] z-[6] mx-auto max-w-[var(${ki},${dA.replace(/ /g,"_")})]`;function Fl(e,o){return`pointer-events-auto absolute ${cA[e]} z-[6] sf-hero-overlay-rail flex ${o}`}function Og(e){return ho.includes(e)?e:null}var uA="bottom-right",pA=["outline","solid","square","bare"],mA="outline",aK={outline:"Outline",solid:"Solid",square:"Square",bare:"Bare"},nK=!1,Rg=["prev","next"],Ag={prev:"Previous slide",next:"Next slide"};function xA(e){return pA.includes(e)?e:mA}function IA(e){return Og(e)??uA}var hA="flex-row items-center gap-2";function Bg(e){return Fl(IA(e),hA)}var gA={outline:"grid h-10 w-10 cursor-pointer place-items-center rounded-full border border-overlay-chrome/60 text-overlay-fg transition-colors hover:border-overlay-chrome hover:bg-overlay-scrim/30",solid:"grid h-10 w-10 cursor-pointer place-items-center rounded-full border border-overlay-chrome bg-overlay-chrome text-overlay-scrim transition-colors hover:bg-overlay-chrome/85",square:"grid h-10 w-10 cursor-pointer place-items-center rounded-md border border-overlay-chrome/60 text-overlay-fg transition-colors hover:border-overlay-chrome hover:bg-overlay-scrim/30",bare:"grid h-10 w-10 cursor-pointer place-items-center text-overlay-fg transition-colors hover:text-overlay-chrome"};function _g(e){return gA[xA(e)]}function Dg(e){return e.shown===!0&&(e.count??0)>1}function El(e,o,t){if(t<=1)return o;let r=Math.min(Math.max(o,0),t-1);return e==="prev"?(r-1+t)%t:(r+1)%t}function Ng({shape:e,placement:o,ref:t}){let r=_g(e);return Ec("div",{ref:t,className:Bg(o),style:{color:"var(--overlay-fg)"},children:Rg.map(a=>Ec("button",{type:"button","data-hero-nav":a,"aria-label":Ag[a],className:r,children:Ec(bA,{name:"chevron-right",size:18,rounded:!0,style:a==="prev"?{rotate:"180deg"}:void 0})},a))})}import{jsx as we,jsxs as Pc,Fragment as cr}from"react/jsx-runtime";var yA=ho;var SA="top-right",CA=["cards","dots","numbers","bar","squares","tabs"],vA=["cards","dots","numbers","bar","squares"],Mg="cards",pK={cards:"Cards",dots:"Dots",numbers:"Numbers",bar:"Bar",squares:"Squares",tabs:"Tabs"},mK=!0;function Pl(e){return CA.includes(e)?e:Mg}function Hg(e){return vA.includes(e)?e:Mg}function wA(e){return yA.includes(e)?e:SA}var zg={cards:"flex-col gap-2.5",dots:"flex-row items-center gap-2",numbers:"flex-col gap-2",bar:"h-0.5 w-[34%] max-w-[420px] gap-px overflow-hidden rounded-full",squares:"flex-col gap-0",tabs:"flex-row items-stretch w-full overflow-x-auto"};function Wg(e,o){return Fl(wA(o),zg[Pl(e)])}function Gg(e){return`flex ${zg[Pl(e)]}`}function Ug(e){return e.shown!==!1&&(e.count??0)>1}function kA(e){return{name:e.dataset.slideName||"",process:e.dataset.slideProcess||"",video:e.dataset.slideMedia==="video"}}function TA(e,o){return e===o?!0:e.length!==o.length?!1:e.every((t,r)=>t.name===o[r].name&&t.process===o[r].process&&t.video===o[r].video)}function $g(e,o){let t=Array.from(o,kA);return TA(e,t)?e:t}function qg({slides:e,active:o,shape:t,placement:r,ref:a,tone:n="media",label:s}){let i=Pl(t),f=n==="surface"?{"--overlay-fg":"var(--fg)","--overlay-chrome":"var(--fg)","--overlay-scrim":"var(--site-surface-2)"}:void 0;return Pc("aside",{ref:a,"aria-label":s??"Featured slides",className:n==="surface"?Gg(i):Wg(i,r),style:{color:"var(--overlay-fg)",...f},children:[i==="cards"&&we(FA,{slides:e,active:o}),i==="dots"&&we(EA,{count:e.length,active:o}),i==="numbers"&&we(PA,{count:e.length,active:o}),i==="bar"&&we(OA,{count:e.length,active:o}),i==="squares"&&we(LA,{count:e.length,active:o}),i==="tabs"&&we(RA,{slides:e,active:o})]})}function FA({slides:e,active:o}){return Pc(cr,{children:[we("span",{className:"mb-1 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.28em] text-overlay-chrome/55",children:"Reel \xB7 pick a slide"}),e.map((t,r)=>{let a=r===o;return Pc("button",{type:"button","data-idx":r,"aria-pressed":a,"aria-label":`Go to ${t.name||`slide ${r+1}`}`,className:["group flex w-[170px] cursor-pointer flex-col items-start gap-0.5 border bg-overlay-scrim/55 px-3 py-2.5 text-left transition-all motion-reduce:transition-none max-[1100px]:w-[140px]",a?"border-accent bg-overlay-scrim/70":"border-overlay-chrome/15 hover:border-overlay-chrome/45 hover:bg-overlay-scrim/70"].join(" "),children:[we("span",{className:["font-display text-[length:var(--size-body,13px)] font-medium uppercase leading-tight tracking-[-0.01em]",a?"text-accent":"text-overlay-fg"].join(" "),children:t.name||`Slide ${r+1}`}),we("span",{className:"font-mono text-[length:var(--size-label,9px)] uppercase tracking-[0.2em] text-overlay-chrome/55",children:a?"\u25B6 Now playing":t.process||" "})]},r)})]})}function EA({count:e,active:o}){return we(cr,{children:Array.from({length:e},(t,r)=>we("button",{type:"button","data-idx":r,"aria-pressed":r===o,"aria-label":`Go to slide ${r+1}`,className:`h-2 cursor-pointer rounded-full transition-all motion-reduce:transition-none ${r===o?"w-5 bg-accent":"w-2 bg-overlay-chrome/45 hover:bg-overlay-chrome/70"}`},r))})}function PA({count:e,active:o}){return we(cr,{children:Array.from({length:e},(t,r)=>we("button",{type:"button","data-idx":r,"aria-pressed":r===o,"aria-label":`Go to slide ${r+1}`,className:`cursor-pointer font-mono text-[length:var(--size-label,11px)] leading-none tracking-[0.06em] transition-colors ${r===o?"text-overlay-fg":"text-overlay-chrome/45 hover:text-overlay-chrome/80"}`,children:String(r+1).padStart(2,"0")},r))})}function LA({count:e,active:o}){return we(cr,{children:Array.from({length:e},(t,r)=>we("button",{type:"button","data-idx":r,"aria-pressed":r===o,"aria-label":`Go to slide ${r+1}`,className:`grid h-8 w-8 cursor-pointer place-items-center border border-overlay-chrome/25 text-[length:var(--size-label,14px)] font-bold leading-none transition-colors motion-reduce:transition-none ${r===o?"bg-accent text-[color:var(--accent-ink)]":"bg-overlay-scrim/45 text-overlay-chrome/75 hover:text-overlay-chrome"}`,children:r+1},r))})}function OA({count:e,active:o}){return we(cr,{children:Array.from({length:e},(t,r)=>we("button",{type:"button","data-idx":r,"aria-pressed":r===o,"aria-label":`Go to slide ${r+1}`,className:`h-full flex-1 cursor-pointer transition-colors ${r<=o?"bg-overlay-fg":"bg-overlay-chrome/25"}`},r))})}function RA({slides:e,active:o}){return we(cr,{children:e.map((t,r)=>{let a=r===o;return we("button",{type:"button","data-idx":r,"aria-pressed":a,className:["flex min-w-[140px] flex-1 cursor-pointer items-end px-6 py-7 text-left transition-colors",r>0?"border-l border-overlay-chrome/15":"",a?"bg-overlay-scrim/70":"hover:bg-overlay-scrim/40"].join(" "),children:we("span",{className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium uppercase leading-tight tracking-[-0.02em]",a?"text-overlay-fg":"text-overlay-chrome/55"].join(" "),children:t.name})},r)})})}import{useEffect as AA,useState as BA}from"react";var jg="(prefers-reduced-motion: reduce)";function _A(){return globalThis.window?.matchMedia?.(jg)?.matches??!1}function yK(){return _A()?"auto":"smooth"}function Kg(){let[e,o]=BA(!1);return AA(()=>{let t=globalThis.window?.matchMedia?.(jg);if(!t||(o(t.matches),typeof t.addEventListener!="function"))return;let r=a=>o(a.matches);return t.addEventListener("change",r),()=>t.removeEventListener("change",r)},[]),e}var ga={accent:"#2563eb",accentTint:"#eff6ff",accentText:"#1d4ed8",appBg:"#f9fafb",previewBg:"#f3f4f6",panel:"#ffffff",fieldBg:"#ffffff",inputBorder:"#d1d5db",text:"#111827",text2:"#374151",muted:"#6b7280",line:"#e5e7eb",chipBg:"#f3f4f6",chipFg:"#6b7280",panelRadius:12,rowRadius:8,panelShadow:"0 1px 2px rgba(0,0,0,.05), 0 10px 30px rgba(0,0,0,.06)",topbarShadow:"0 1px 3px rgba(0,0,0,.06)",panelGap:10,leftWidth:288,rightWidth:308,topbarHeight:52,labelFont:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif"};var Vg={min:40,max:100,step:5,fallback:100,unit:"vh"};function Lc(e){return`${typeof e=="number"?e:Vg.fallback}${Vg.unit}`}function Yg(...e){return e.some(o=>typeof o=="number")}import{HEADER_TYPE as Oc,FOOTER_TYPE as DA}from"efficient-easel/draw";var NA=new Set(["Hero","HeroSingle","IntroBleed"]),Xg={min:56,max:140,default:88},kK={min:0,max:120,step:2,default:32},Zg=`var(--sf-header-h, ${Xg.default}px)`,MA="--sf-header-set-h",TK="--sf-header-h",FK=`var(${MA}, ${Xg.default}px)`,EK="sf-header-clearance",PK="sf-sticky-underheader";function HA(e){return e?.find(o=>o?.type&&o.type!==Oc)??null}function Qg(e){let o=HA(e)?.type;return!o||!NA.has(o)}function LK(e){return!Qg(e)}function OK(e){return!!e?.some(o=>o?.type===Oc)}function RK(e){return!e||e.length===0?!1:!e.some(o=>o?.type===Oc||o?.type===DA)}var zA=["auto","shared","own"],WA="auto",GA="topSpace",AK="data-top-space";function UA(e){return zA.includes(e)?e:WA}function $A(e,o){let t=UA(e?.props?.[GA]);return t==="own"?!0:t==="shared"?!1:Qg(o)}function BK(e,o){return $A(e,o)?"own":null}var qA=40;function jA(e,o){return Math.abs(e)<=qA||Math.abs(e)<=Math.abs(o)?null:e<0?"next":"prev"}function Jg(e,o,t,r){let a=jA(e,o);return a?El(a,t,r):t}function eb(e){return(e.count??0)>1&&e.editing!==!0}function ob(e){return e.editing!==!0?!1:(e.slides??[])[e.shown??0]?.video===!0}function tb(e){return e.editing!==!0?!1:!(e.playing===!0&&e.controlShown===!0)}import{HERO_SLIDER_GOTO_EVENT as rb}from"efficient-easel/draw";var VA=`
7
+ .hero-ticker-pick { cursor: pointer; }
8
+ .hero-ticker-pick:hover {
9
+ outline: 2px solid color-mix(in srgb, ${ga.accent} 45%, transparent);
10
+ outline-offset: -2px;
11
+ }
12
+ .hero-ticker-pick[data-selected] {
13
+ outline: 2px solid ${ga.accent};
14
+ outline-offset: -2px;
15
+ }
16
+ `,YA="Play video",XA="Hold video",ZA="flex h-7 cursor-pointer items-center gap-1.5 rounded-full border border-overlay-chrome/25 bg-overlay-scrim/80 px-[11px] font-mono text-[11px] leading-none tracking-[0.05em] text-overlay-fg",QA=()=>l("item"),Rc=["","","","","",""],ab=new Map;function JA(e,o){let t=e?.ownerDocument?.defaultView;if(t)return t.addEventListener(rb,o),()=>t.removeEventListener(rb,o)}function rV({slides:e,alignment:o,textureOpacity:t,showTexture:r,textureColor:a,phoneUpDown:n,phoneSideways:s,autoplay:i,autoplayInterval:f,showTicker:u,tickerItems:p,heightDesktop:m,heightMobile:x,showPicker:h,pickerShape:b,pickerPlacement:C,showArrows:k,arrowsShape:v,arrowsPlacement:w,editing:g}){let y=Yg(m,x),E=y?"h-[var(--sf-hero-h-m)] min-[720px]:h-[var(--sf-hero-h-d)]":"h-screen min-h-[680px]",F=y?{"--sf-hero-h-d":Lc(m),"--sf-hero-h-m":Lc(x)}:void 0,L=(p??Rc.map(N=>({text:N}))).map(N=>N?.text?.trim()?N.text:g?QA():"").filter(Boolean),B=u!==!1,O=Mo(null),M=Mo(null),re=Mo(null),H=Mo(null),W=Mo(null),A=KA(),oe=Mo(A),[Oe,Xe]=ba([]),[ro,We]=ba(0),Re=Mo(0),[Ge,De]=ba(!1),[Ce,ge]=ba(!1),[Ie,Ze]=ba(null),P=Kg(),{selectedHeroId:le,select:Y}=ml(),te=dr(()=>O.current?.querySelector(".hero-track")??null,[]),ae=dr((N,U=!1)=>{We(N),Re.current=N,ab.set(oe.current,N);let q=O.current?.querySelector(".hero-track");if(q)if(U){let se=q.style.transition;q.style.transition="none",q.style.transform=`translateX(-${Math.max(0,N)*100}%)`,q.offsetHeight,q.style.transition=se}else q.style.transform=`translateX(-${Math.max(0,N)*100}%)`},[]);ur(()=>{let N=O.current,U=N?.getAttribute("data-puck-component")||N?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||A;oe.current=U,Ze(U);let q=ab.get(U);typeof q=="number"&&(We(q),Re.current=q)},[]),ur(()=>{let N=te();if(!N)return;let U=()=>{Xe(se=>$g(se,N.querySelectorAll("[data-slide-name]")))};U();let q=new MutationObserver(U);return q.observe(N,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-slide-name","data-slide-process","data-slide-media"]}),()=>{q.disconnect()}},[te]),ur(()=>{if(!g)return;let N=U=>{let q=U.detail;if(!q||typeof q.index!="number")return;let se=O.current,oo=se?.getAttribute("data-puck-component")||se?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||oe.current;q.id&&q.id!==oo||ae(q.index,!0)};return JA(O.current,N)},[g,ae]);let pe=Oe.length,Ne=Math.min(Math.max(ro,0),Math.max(0,pe-1)),ye=Ug({shown:h,count:pe}),po=Dg({shown:k,count:pe}),Fo=ob({editing:g,shown:Ne,slides:Oe}),Wo=tb({editing:g,playing:Ce,controlShown:Fo}),Pe=eb({count:pe,editing:g}),Go=Mo(null),rt=Mo(null),at=dr(N=>{if(Go.current=null,rt.current=null,!Pe||N.touches.length!==1)return;let U=N.touches[0];Go.current={x:U.clientX,y:U.clientY},rt.current={x:U.clientX,y:U.clientY}},[Pe]),is=dr(N=>{if(!Go.current)return;if(N.touches.length!==1){Go.current=null;return}let U=N.touches[0];rt.current={x:U.clientX,y:U.clientY}},[]),Ha=dr(()=>{let N=Go.current,U=rt.current;if(Go.current=null,rt.current=null,!Pe||!N||!U)return;let q=Jg(U.x-N.x,U.y-N.y,Re.current,pe);q!==Re.current&&ae(q)},[Pe,pe,ae]);ur(()=>{if(g||!i||Ge||P||pe<=1)return;let N=Math.max(1,typeof f=="number"?f:6)*1e3,U=window.setTimeout(()=>ae((Ne+1)%pe),N);return()=>window.clearTimeout(U)},[g,i,f,Ge,P,pe,Ne,ae]),ur(()=>{let N=[M.current,re.current,H.current].filter(Boolean),U=N.map(se=>Cl(se)),q=se=>{let oo=se.target,Uo=oo.closest("[data-hero-nav]"),za=Uo??oo.closest("[data-idx]");if(!za)return;se.stopPropagation(),se.preventDefault();let Pt=Uo?El(Uo.dataset.heroNav,Re.current,pe):Number(za.dataset.idx);Number.isNaN(Pt)||(ae(Pt,g),te()?.querySelectorAll("[data-slide-name]")[Pt]?.click())};return N.forEach(se=>se.addEventListener("click",q,{capture:!0})),()=>{U.forEach(se=>se?.()),N.forEach(se=>se.removeEventListener("click",q,{capture:!0}))}},[pe,ae,te,g]),ur(()=>{if(!g)return;let N=W.current;if(!N)return;let U=Cl(N),q=se=>{se.stopPropagation(),se.preventDefault();let oo=O.current,Uo=oo?.getAttribute("data-puck-component")||oo?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||oe.current;Y(Uo)};return N.addEventListener("click",q,{capture:!0}),()=>{U?.(),N.removeEventListener("click",q,{capture:!0})}},[g,Y,B,L.length]);let Fr=dr(N=>{if(!N)return;let U=Cl(N),q=se=>{se.stopPropagation(),se.preventDefault(),ge(oo=>!oo)};return N.addEventListener("click",q,{capture:!0}),()=>{U?.(),N.removeEventListener("click",q,{capture:!0})}},[]);return vo(Fc.Provider,{value:{alignment:o,textureOpacity:t,textureOn:r,textureColor:a,quietVideo:Wo,phoneUpDown:n,phoneSideways:s},children:Ll("div",{ref:O,className:`relative mx-[var(--sf-hero-bleed-m,calc(50%_-_50vw))] w-[var(--sf-hero-bleed-w,100vw)] ${E} max-w-[var(--sf-hero-cap,none)] overflow-hidden`,style:F,onMouseEnter:()=>De(!0),onMouseLeave:()=>De(!1),onTouchStart:at,onTouchMove:is,onTouchEnd:Ha,children:[vo(e,{className:"hero-track flex h-full [&>*]:h-full [&>*]:min-w-full [&>*]:shrink-0 [&>*]:basis-full",style:{transform:`translateX(-${Ne*100}%)`,transition:P?"none":"transform 600ms cubic-bezier(.22,.61,.36,1)"},minEmptyHeight:400}),Fo&&vo("div",{ref:Fr,"data-hero-video-control":Ce?"playing":"held",className:"sf-hero-video-control absolute left-6 z-[7]",style:{top:`calc(${Zg} + 16px)`},children:Ll("button",{type:"button",className:ZA,children:[vo("span",{"aria-hidden":"true",children:Ce?"\u275A\u275A":"\u25B6"}),l(Ce?XA:YA)]})}),(ye||po)&&Ll("div",{className:"pointer-events-none absolute inset-y-0 left-[var(--sf-hero-chrome-x,var(--sf-site-gutter,40px))] right-[var(--sf-hero-chrome-x,var(--sf-site-gutter,40px))] z-[6] mx-auto max-w-[var(--sf-hero-chrome-cap,calc(min(var(--sf-page-cap,var(--sf-site-width,1600px)),var(--sf-site-width,1600px))_-_var(--sf-site-gutter,40px)*2))]",children:[ye&&vo(qg,{ref:M,slides:Oe,active:Ne,shape:Hg(b),placement:C}),po&&vo(Ng,{ref:H,shape:v,placement:w})]}),ye&&vo("div",{ref:re,className:"sf-hero-phone-dots absolute bottom-[80px] left-1/2 z-[6] hidden -translate-x-1/2 items-center gap-2",children:Oe.map((N,U)=>vo("button",{type:"button","data-idx":U,"aria-label":`Go to slide ${U+1}`,className:`h-2 rounded-full transition-all motion-reduce:transition-none ${U===Ne?"w-5 bg-accent":"w-2 bg-white/45 hover:bg-white/70"}`},U))}),B&&L.length>0&&Ll("div",{ref:W,className:`sf-hero-ticker absolute inset-x-0 bottom-0 z-[5] border-t border-overlay-chrome/10 py-3.5${g?" hero-ticker-pick":""}`,"data-selected":g&&Ie!=null&&le===Ie?"":void 0,style:{background:"rgba(10,10,10,.55)"},children:[g&&vo("style",{children:VA}),vo(ig,{items:L,backdrop:"dark-media"})]})]})})}var sB="root:default-zone";function nb({heroId:e}){let{appState:o,dispatch:t}=rB(p=>p),r=o.data.content??[],a=r.findIndex(p=>p.props.id===e),n=a>=0?r[a]:null,s=n?n.props.showTicker??!0:!0,i=tB(()=>{let p=n?.props.tickerItems;return Array.isArray(p)?p:Rc.map(m=>({text:m}))},[n]),f=oB();if(!n)return pr("p",{className:"sf-note",children:l("This ticker\u2019s hero is no longer on the page.")});let u=p=>t({type:"replace",destinationZone:sB,destinationIndex:a,data:{...n,props:{...n.props,...p}}});return eB("div",{children:[pr(Yt,{label:"Ticker"}),pr(aB,{label:l("Show ticker"),labelId:f,icon:pr(lB,{}),action:pr(nB,{checked:s,onChange:p=>u({showTicker:p}),ariaLabelledBy:f})}),pr(Wi,{label:zi.label,icon:zi.icon,items:i,placeholder:"item",onChange:p=>u({tickerItems:p}),markup:!0})]})}import{jsx as z,Fragment as Uc,jsxs as wo}from"react/jsx-runtime";import{useContext as NB,useEffect as zc,useRef as MB,useState as Eb}from"react";import{FieldSelect as HB,InspectorField as zB}from"efficient-easel/fields";import{SettingsField as WB}from"efficient-easel/panel";import{InspectorUpLevel as Nl}from"efficient-easel/chrome";import{StylesIcon as GB,TypeIcon as UB}from"efficient-easel/icons";import{useEasel as $B}from"efficient-easel/easel";import{TextPartPanel as qB}from"efficient-easel/copy";import{Tooltip as jB}from"efficient-shell/ui";import{jsx as Nc,jsxs as xB}from"react/jsx-runtime";import{COPY_CELLS as ya,CopyBox as IB}from"efficient-easel/copy";import{PaddingYIcon as hB,WidthIcon as gB}from"efficient-easel/icons";import{useSyncExternalStore as iB}from"react";import{decodePartId as fB}from"efficient-easel/draw";function mr(e,o){let t=af(e);return t?.control==="textList"?o.rowKey===(t.itemKey??"text")?Px(t,o.index):null:nf(e)?.[o.rowKey]??null}function Ol(e,o,t){let r=e.node.props,{key:a,row:n}=so(e.propKey),s=n?tI(r,a,n,e.kind,o):eI(r,a,e.kind,o);return s?(t(e.zone,e.index,{...e.node,props:s}),!0):!1}var cB=["bold","italic","underline","strike","link","sup","sub"],dB=["bullet","number"];function _c(e,o){return e?[...cB,...o?dB:[]]:[]}function lb(e,o){let t=fB(e);if(!t?.propKey)return null;let{nodeId:r,propKey:a}=t,n=o.getItemById(r),s=o.getSelectorForId(r);if(!n||!s)return null;let{key:i,row:f}=so(a),u=o.components[n.type]?.fields?.[i],p=f?mr(u,f):u,m=Zt(p);if(!m)return null;let x=n.props??{};if(f&&!(Array.isArray(x[i])&&f.index<x[i].length))return null;let h=f?Yr(x[i],f):x[i];return{node:n,selector:s,propKey:a,kind:m,stored:h,offPage:En(p)}}function sb(e,o){let t=lb(e,o);if(!t||t.offPage)return null;let{text:r,hidden:a}=Qo(t.stored);if(a)return null;let n=Kn(t.kind);return{partId:e,value:r,rules:Mt,multiline:n,offered:_c(t.kind!=="plainText",n),write:s=>{let i=lb(e,o);i&&Ol({node:i.node,propKey:i.propKey,kind:i.kind,zone:i.selector.zone,index:i.selector.index},s,o.replace)}}}function ib(e,o,t){return e?.isConnected&&e.getAttribute(io)===t?e:o?.querySelector(`[${io}="${uB(t)}"]`)??null}function uB(e){return e.replace(/["\\]/g,"\\$&")}function fb(e){let o=e.activeElement;return o?o.tagName==="IFRAME"||!!o.closest(".es-canvas"):!1}var Ac=null,Bc=new Set;function pB(){return Ac}function Dc(e){if(e!==Ac){Ac=e;for(let o of Bc)o()}}function mB(e){return Bc.add(e),()=>{Bc.delete(e)}}function cb(){return iB(mB,pB,()=>null)}var bB=["left","center","right","justify"];function Mc(e,o,t,r={}){let a=ea(e),n=(r.phone?e.sizePhone:void 0)??e.size??o.sizePx;return[r.phone?{...ya.fontSize,value:e.sizePhone,styleValue:Math.round(o.sizePx),onChange:s=>t({sizePhone:s??null})}:{...ya.fontSize,value:e.size,styleValue:Math.round(o.sizePx),onChange:s=>t({size:s??null})},{...ya.lineHeight,value:a.lineHeight,styleValue:o.lineRatio,onChange:s=>t(s===void 0?{lineHeight:null,line:null}:{lineHeight:s})},{...ya.letterSpacing,scale:n,value:a.letterSpacingEm,styleValue:o.letterEm,onChange:s=>t(s===void 0?{letterSpacing:null,letter:null}:{letterSpacing:s})},{...ya.paragraphSpacing,value:e.paragraphSpacing,styleValue:0,onChange:s=>t({paragraphSpacing:s??null})},{key:"padding",name:l("Padding"),icon:Nc(hB,{}),unit:"px",step:hf,shiftStep:10,min:xf,max:If,value:e.padding,styleValue:o.paddingPx,onChange:s=>t({padding:s??null})},{key:"width",name:l("Width"),icon:Nc(gB,{}),unit:"px",step:bf,shiftStep:100,min:gf,max:Jo,value:e.width,styleValue:o.widthPx,onChange:s=>t({width:s??null})}]}function db({text:e,onTextChange:o,multiline:t,markup:r=!0,styled:a=!0,style:n,base:s,setValue:i,colors:f,placeholder:u,ariaLabel:p,head:m,typedOnCanvas:x=!1}){let h=Mc(n,s,i),b=_c(r,t);return xB("div",{className:"sf-part-textbox",children:[m,Nc(IB,{value:e,onChange:o,multiline:t,placeholder:u,ariaLabel:p,rules:Mt,tools:b,barShows:x?"focus":"always",colors:r?f:[],align:a?{value:n.align??s.align,allow:bB,onChange:C=>i({align:C})}:void 0,letterCase:a?{value:n.case==="capitalize"?"":n.case??"",onChange:C=>i({case:C||null})}:void 0,cells:a?h:void 0})]})}import{UiIcon as Pb}from"efficient-easel/draw/client";import{jsx as Rl,Fragment as yB,jsxs as SB}from"react/jsx-runtime";import{Button as ub,Dialog as CB}from"efficient-shell/ui";function pb({styleName:e,onCancel:o,onConfirm:t}){return Rl(CB,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Update {style}?",{style:e}),footer:SB(yB,{children:[Rl(ub,{variant:"secondary",onClick:o,children:l("Cancel")}),Rl(ub,{variant:"primary",onClick:t,children:l("Update style")})]}),children:Rl("p",{children:l("Every text on the site that follows {style} changes to look like this one. This text\u2019s own changes are cleared, and it keeps following {style}.",{style:e})})})}import{usePreviewDevice as KB}from"efficient-easel/draw/client";import{jsx as vB}from"react/jsx-runtime";import{createContext as wB,useContext as kB,useMemo as TB,useState as FB}from"react";var EB={partStyle:null,setPartStyle:()=>{}},mb=wB(EB);function $V({children:e}){let[o,t]=FB(null),r=TB(()=>({partStyle:o,setPartStyle:t}),[o]);return vB(mb.Provider,{value:r,children:e})}function xb(){return kB(mb)}import{TEXT_FIELD_MARKER as VB}from"efficient-easel/draw";var PB="#9ca3af";function LB(e){return an.map(o=>({key:o,name:fp[o],value:e?.[o]||PB}))}function Al(e){return LB(e).map(o=>({name:o.key,label:l(o.name),value:o.value}))}function hb(e){let o={},t=e.ownerDocument,r=t?.defaultView;if(!t||!r)return o;let a=r.getComputedStyle(e),n=t.createElement("canvas").getContext("2d");for(let s of an){let i=Oo[s].replace(/^var\((--[\w-]+)\)$/,"$1"),f=a.getPropertyValue(i).trim();if(!f)continue;let u=Ib(f);!u&&n&&(n.fillStyle="#000000",n.fillStyle=f,u=Ib(String(n.fillStyle))),u&&(o[s]=u)}return o}function Ib(e){let o=e.trim().toLowerCase();if(/^#[0-9a-f]{6}$/.test(o))return o;if(/^#[0-9a-f]{3}$/.test(o))return`#${[...o.slice(1)].map(r=>r+r).join("")}`;let t=o.match(/^rgba?\(\s*(\d+)[\s,]+(\d+)[\s,]+(\d+)/);return t?`#${t.slice(1,4).map(r=>Math.min(255,Number(r)).toString(16).padStart(2,"0")).join("")}`:null}function OB(e){let o=new Set([...Object.keys(sn[e]??{}),...fn[e]??[]]);for(let[t,r]of Object.entries(Xs[e]??{}))r.verb==="snapshot"&&o.add(t);return[...o].sort()}var RB={CollectionCard:"product",FooterMenu:"menu",Gallery:"product",GalleryItem:"product",ProductGrid:"product",ProductHero:"product",SpecTable:"product",Events:"blog",FeaturedCover:"blog",LongRead:"blog",SubscribeBlogs:"blog"},gb={product:"Synced from the product.",blog:"Synced from the blog post.",menu:"Synced from the site menu."},bb="Open",yb={product:{type:"storefront-editor:open-product",needsSlug:!0},blog:{type:"storefront-editor:open-post",needsSlug:!0},menu:{type:"storefront-editor:open-menus",needsSlug:!1}};function Sa(e){let o=e?.source?.slug;return typeof o=="string"&&o.length>0?o:void 0}function Ca(e){return RB[e]??null}function Sb(e,o){let t=Ca(e);return t&&OB(e).includes(o)?t:null}function Bl(e){let o=e?.menu?.id;return typeof o=="string"&&o.length>0?o:void 0}var _l="data-sf-spec-region";function QV(e,o,t){if(!e)return;let r=t[e];if(r)return{fontFamily:`var(--font-role-${e})`,fontSize:`var(--size-${r}, ${o.builtIn})`}}function xr(e){let o=/var\(--size-[A-Za-z]+, ?([0-9.]+px)\)/.exec(e);if(!o)throw new Error(`builtInOf: no --size-* fallback in ${e}`);return o[1]}function AB(e){return`@${e}`}function Hc(e,o){if(!o.startsWith("@"))return null;let t=o.slice(1);return t in e?t:null}function Cb(e,o){return o&&o in e?o:null}function BB(e,o){let t=o?.closest(`[${_l}]`)?.getAttribute(_l);return Cb(e,t??null)}var va={tag:"text-[length:var(--size-label,13px)]",name:"text-[length:min(var(--size-headingMedium,48px),var(--sf-heading-max,9999px))]",namePhone:"max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))]",body:"text-[length:var(--size-body,14px)]",price:"text-[length:var(--size-label,15px)]",link:"text-[length:var(--size-label,14px)]"},_B={tag:{label:"Tag",follows:"Labels",builtIn:xr(va.tag),writable:!0},name:{label:"Name",follows:"Heading 2",builtIn:xr(va.name),writable:!0},body:{label:"Body",follows:"Body",builtIn:xr(va.body),writable:!0},price:{label:"Price",follows:"Labels",builtIn:xr(va.price),writable:!0},link:{label:"Link",follows:"Labels",builtIn:xr(va.link),writable:!0}},vb=_B;var DB={number:{label:"Number",follows:"Labels",builtIn:"14px",writable:!0},question:{label:"Question",follows:"Body",builtIn:"18px",writable:!0},answer:{label:"Answer",follows:"Body",builtIn:"15px",writable:!0}},wb=DB;var nY=_l;var kb={rowLabel:{label:"Spec row name",follows:"Labels",builtIn:"14px"},rowValue:{label:"Spec row value",follows:"Labels",builtIn:"14px"},diagramTitle:{label:"Diagram title",follows:"Labels",builtIn:"12px"},diagramCallout:{label:"Diagram measurement",follows:"Labels",builtIn:"12px"},diagramStatLabel:{label:"Diagram stat name",follows:"Labels",builtIn:"11px"},diagramStatValue:{label:"Diagram stat value",follows:"Labels",builtIn:"11px"}};var Tb={SpecTable:kb,FAQ:wb,Collections:vb};function Fb(e){return e&&Object.hasOwn(Tb,e)?Tb[e]:null}function Gc(e){return e?l(e):null}function Lb(e){return e.kind==="role"?Wa[e.role]:e.kind==="custom"?"Custom":null}function YB(e){let o=e.role;return o&&Eo.includes(o)?{kind:"role",role:o}:null}function XB(e,o){if(!e)return{kind:"unread"};let{faceRole:t,base:r}=e;if(o[t]===r.fontKey)return{kind:"role",role:t};let a=Object.keys(o).filter(n=>o[n]===r.fontKey);return a.length===1?{kind:"role",role:a[0]}:{kind:"custom"}}function Wc(e,o,t,r){return YB(ol(e,o))??XB(t,r)}function ZB(e,o){if(!e.length)return null;let t=o(e[0]);return e.every(r=>o(r)===t)?t:null}var Dl="";function QB({face:e,base:o,onPick:t}){let r=e.kind==="role"?e.role:Dl,a=[{label:l("No style"),value:Dl},...Eo.map(n=>({label:l(Wa[n]),value:n}))];return z(HB,{ariaLabel:l("Style"),value:r,options:a,inline:!0,onChange:n=>t(n===Dl?null:n),renderOption:n=>n.value===Dl?wo(Uc,{children:[z("span",{className:"es-fsel-label sf-part-style-keep",children:n.label}),z("span",{className:"sf-part-style-aside","aria-hidden":"true",children:l("Section\u2019s own")})]}):z("span",{className:"es-fsel-label",style:{fontFamily:`var(--font-role-${n.value})`},children:n.label}),renderValue:()=>z("span",{style:{fontFamily:o?.fontKey?`var(${Lt(o.fontKey)?.cssVar})`:void 0,fontWeight:o?.weight},children:Gc(Lb(e))}),valueText:n=>Gc(Lb(e))??n?.label??""})}function JB({sectionName:e,onBack:o,textEditor:t,styleRow:r,children:a}){return wo("div",{className:"sf-part-panel",children:[z(Nl,{inline:!0,name:l(e),onSelect:o}),t,r,a]})}function Ml({source:e,slug:o,menuId:t}){let r=Bt(),a=yb[e],n=!a.needsSlug||!!o;return z("div",{className:"sf-note sf-note--source",children:wo("p",{className:"es-field-hint sf-hint-keep",children:[l(gb[e]),n?wo(Uc,{children:[" ",z("button",{type:"button",className:"sf-source-open",onClick:()=>{a.type==="storefront-editor:open-menus"?r.send(a.type,{menuId:t??null}):o&&r.send(a.type,{slug:o})},children:l(bb)})]}):null]})})}var Ob=4,e_=120;function o_({region:e,sizePx:o,face:t,base:r,onFollowStyle:a,source:n,slug:s,onBack:i}){let f=e.follows;return wo("div",{className:"sf-note",children:[z("p",{children:z("strong",{children:l(e.label)})}),z("p",{children:o?l("Its size follows Site styles \u25B8 {follows} \u2014 {px}px right now.",{follows:l(f),px:Math.round(o)}):l("Its size follows Site styles \u25B8 {follows}.",{follows:l(f)})}),a?z(Uc,{children:z(WB,{label:l("Style"),icon:z(GB,{}),hint:l("Every {part} in this section follows it. The face and the size change; the letter case is the section\u2019s own and stays as it is.",{part:l(e.label).toLowerCase()}),children:z(QB,{face:t,base:r,onPick:a})})}):z("p",{className:"es-field-hint sf-hint-keep",children:l("Only the size follows a site style. This section sets its own font, weight and letter case.")}),n?z(Ml,{source:n,slug:s}):null,z(Nl,{inline:!0,name:l("Page"),onSelect:i})]})}function t_({onBack:e}){return wo("div",{className:"sf-note",children:[z("p",{children:z("strong",{children:l("This part is no longer here.")})}),z("p",{children:l("The section it belonged to has been changed or removed.")}),z(Nl,{inline:!0,name:l("Page"),onSelect:e})]})}function r_({onBack:e,partId:o,why:t}){return wo("div",{className:"sf-note",children:[z("p",{children:z("strong",{children:l("This part's settings did not open.")})}),z("p",{children:l("The words are still on your page and nothing has been lost. The editor could not work out which control belongs to them, which is a fault on our side. Go back and click the section to open its settings instead.")}),z("p",{className:"sf-note-detail",children:wo("code",{children:[o," \u2014 ",t]})}),z(Nl,{inline:!0,name:l("Page"),onSelect:e})]})}function Rb({nodeId:e,propKey:o,onBack:t,onEditStyle:r}){let{getItemById:a,getSelectorForId:n,config:s}=$B(D=>D),i=qo(),f=cb(),{partStyle:u}=xb(),{fonts:p,textStyles:m}=Z(),x=NB(Dt),h=!x?.capabilities?.hasSiteTheme,{persist:b}=zt({themeFromDocument:h,tokenRef:x?.tokenRef,siteId:x?.siteId??null}),C=rl({themeFromDocument:h,persist:b}),[k,v]=Eb(!1),w=KB()==="mobile",g=MB(null),y=a(e),E=n(e),F=y?s.components[y.type]:void 0,{key:L,row:B}=so(o),O=F?.fields?.[L],M=B?mr(O,B):O,re=Zn(e,o),H=y?.props??{},W=Zt(M),A=En(M),oe=fI(M),Oe=y?Ca(y.type):null,Xe=y?Sb(y.type,L):null,ro=B?Yr(H[L],B):H[L],We=!!B&&!(Array.isArray(H[L])&&B.index<H[L].length);zc(()=>{fb(document)||g.current?.querySelector(".es-copy [contenteditable='true'], .es-copy textarea, .sf-copybox textarea, .sf-copybox input")?.focus()},[re]);let[Re,Ge]=Eb(0);zc(()=>Ge(0),[re]);let De=!!y&&!We&&(!E||!M);zc(()=>{if(!De||Re>=Ob)return;let D=setTimeout(()=>Ge(ke=>ke+1),e_);return()=>clearTimeout(D)},[De,Re]);let Ce=De&&Re<Ob;if(!y||We)return z(t_,{onBack:t});let ge=Fb(y.type),Ie=ge?Hc(ge,o):null;if(ge&&Ie){let D=u?.partId===re?u:null,ke=ge[Ie],mo=ke.writable===!0&&!!E,Er=cs=>{E&&i.replaceComponent(E.zone,E.index,{...y,props:Jr(H,o,"role",cs)})};return z(o_,{region:ke,sizePx:D?.base.sizePx??null,face:Wc(H,o,D,p),base:D?.base??null,onFollowStyle:mo?Er:void 0,source:Oe,slug:Sa(H),onBack:t})}if(!E||!M)return Ce?z("div",{className:"sf-note","aria-busy":"true"}):z(r_,{onBack:t,partId:re,why:E?"no field":"no selector"});let Ze=D=>{i.replaceComponent(E.zone,E.index,{...y,props:D})},P=D=>{if(Qo(D).hidden!==Qo(ro).hidden||!W){let ke=B?lf(H,L,B,D):{...H,[L]:D};ke&&Ze(ke);return}Ol({node:y,propKey:o,kind:W,zone:E.zone,index:E.index},Qo(D).text,i.replaceComponent)},le=ro,Y=u?.partId===re?u:null,te=Y?.styleOwner,ae=te?a(te.owner):null,pe=te&&ae?n(te.owner):null,Ne=!!(te&&ae&&pe),ye=Ne?ae.props??{}:H,po=Ne?D=>i.replaceComponent(pe.zone,pe.index,{...ae,props:D}):Ze,Fo=Ne?te.kind:vl(y?.type,o),Wo=ol(ye,Fo),Pe=[{partKey:Fo,face:Wc(ye,Fo,Y,p),sizeGroup:Y?.sizeGroup??null,base:Y?.base??n_,style:Wo}],Go=ZB(Pe,D=>D.sizeGroup),rt=Al(Y?.inks),at=(D,ke)=>{let mo=ye;for(let Er of Pe)mo=Jr(mo,Er.partKey,D,ke);po(mo)},is=D=>at("role",D),Ha=D=>{let ke=ye;for(let mo of Pe)for(let[Er,cs]of Object.entries(D))ke=Jr(ke,mo.partKey,Er,cs??null);po(ke)},Fr=W==="text"||W==="textarea",{text:N,hidden:U}=Qo(ro),q=M?.[VB]?.label??o,se=U?l("Show {label} on the slide",{label:l(q)}):l("Hide {label} on the slide",{label:l(q)}),oo=wo("div",{className:"sf-field-head",children:[z(UB,{}),z("span",{className:"sf-field-label sf-field-label--inline",children:l(q)}),Fr&&z(jB,{content:se,children:z("button",{type:"button",className:"sf-field-eye","aria-pressed":U,"aria-label":se,onClick:()=>P({text:N,hidden:!U}),children:U?z(Pb,{name:"eye-off",size:14}):z(Pb,{name:"eye",size:14})})})]}),Uo=!A&&oe,za=!!W&&(mx(M)||A||U||!oe),Pt=Wc(ye,Fo,Y,p),fs=Pt.kind==="role"?Pt.role:null,_d=Object.entries(Wo).filter(([D,ke])=>D!=="role"&&ke!==void 0).length,Dd=()=>{let D=ye;for(let ke of Pe){let mo=ke.style.role;D=vI(D,ke.partKey),mo&&(D=Jr(D,ke.partKey,"role",mo))}po(D)},nt=Ff(fs),mC=BI(Pe[0].style),xC=nt?et(C.saved,C.old).find(D=>D.id===nt)?.name??nt:"",IC=()=>{v(!1),nt&&(C.write(_I({saved:C.saved,old:C.old,styleId:nt,values:Ef(Pe[0].style)}),!0),Dd())};return wo(JB,{sectionName:F?.label??y.type,onBack:t,textEditor:z("div",{ref:g,className:"sf-part-text",children:za?z(db,{text:N,onTextChange:D=>P(Fr?{text:D,hidden:U}:D),multiline:Kn(W),markup:W!=="plainText",styled:!1,style:Pe[0].style,base:Pe[0].base,setValue:Ha,colors:rt,placeholder:Gc(Jx(M))??void 0,ariaLabel:l(q),head:oo,typedOnCanvas:f===re}):W?Fr?oo:null:z(zB,{field:M,name:o,value:le,onChange:P,id:`sf-part-${e}-${o}`})}),children:[Xe&&z(Ml,{source:Xe,slug:Sa(H),menuId:Bl(H)}),Uo&&z(qB,{style:{value:fs??"",options:[{value:"",label:l("No style"),description:l("Section\u2019s own")},...Eo.map(D=>({value:D,label:l(Wa[D]),description:Lt(p[D])?.label}))],onChange:D=>is(D||null),changed:_d>0,onClearChanges:_d>0?Dd:void 0,onEditStyles:r,onUpdateStyle:nt&&mC?()=>v(!0):void 0},font:{value:Wo.font??"",styleValue:Lt(Pe[0].base.fontKey)?.label,options:no.map(D=>({label:D.label,value:D.key})),onChange:D=>at("font",D||null)},italic:{value:Wo.italic,styleValue:a_(m,fs),onChange:D=>at("italic",D??null)},cells:Mc(Pe[0].style,Pe[0].base,Ha,{phone:w}),align:{value:Wo.align??"",styleValue:Pe[0].base.align,onChange:D=>at("align",D||null)},letterCase:{value:Wo.case??"",styleValue:Pe[0].base.case,onChange:D=>at("case",D||null)}}),k&&nt&&z(pb,{styleName:xC,onCancel:()=>v(!1),onConfirm:IC}),Uo&&Go===null&&z("p",{className:"es-field-hint sf-hint-keep",children:l("Fixed size \u2014 the site\u2019s Text setting doesn\u2019t resize this.")})]})}function a_(e,o){let t=Ff(o);return!t||!Array.isArray(e)?!1:e.find(r=>r?.id===t)?.values?.italic===!0}var n_={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:Jo};import{jsx as co,jsxs as $c,Fragment as l_}from"react/jsx-runtime";import{useCallback as s_,useRef as i_,useState as wa}from"react";import{InspectorIconButton as f_}from"efficient-easel/chrome";import{PopupMenu as c_,PopupMenuItem as d_,PopupMenuLabel as Hl}from"efficient-shell/ui";import{CopyToPageIcon as u_}from"efficient-easel/icons";import{cloneNodeWithFreshIds as Ab,docToNode as XY,nodeToDoc as ZY}from"efficient-easel/screen/lib/puck/section-doc";import{FOOTER_TYPE as p_}from"efficient-easel/draw";function Bb({node:e,currentSlug:o,siteId:t,tokenRef:r,runAuthed:a,onNotify:n}){let[s,i]=wa(!1),[f,u]=wa(null),p=Ae(),[m,x]=wa(!1),[h,b]=wa(null),C=i_(null),[k,v]=wa(null),w=s_(async()=>{if(p.usesBridgedToken&&!r.current){x(!0);return}try{u(await Ue(p).pages.list(t?{siteId:t}:void 0))}catch{x(!0)}},[r,t,p]),g=()=>{if(s){i(!1);return}let F=C.current?.getBoundingClientRect();F&&v({top:F.bottom+6,right:Math.max(8,window.innerWidth-F.right)}),u(null),x(!1),w(),i(!0)},y=(f??[]).filter(F=>F.slug!==o),E=async F=>{if(h)return;b(F.slug);let L=Ab(e),B=p.documentHooks?.storedNode?.(L)??L,O=Ue(p).pages,M=await a(async()=>{let re=await O.load({id:F.id});if(!re)throw new Error(`Page "${F.slug}" no longer exists.`);let H=re.layout??{},W=Array.isArray(H.content)?[...H.content]:[],A=W.findIndex(oe=>oe?.type===p_);W.splice(A===-1?W.length:A,0,B),await O.save(F.id,{layout:{root:{},zones:{},...H,content:W}},{version:re.version,clientId:""})});b(null),i(!1),n?.(M?l("Duplicated to \u201C{name}\u201D",{name:F.label}):l("Couldn\u2019t duplicate the section \u2014 please retry"),M?"success":"error")};return $c(l_,{children:[co("span",{"data-menu-toggle":!0,style:{display:"contents"},children:co(f_,{buttonRef:C,label:l("Duplicate to another page"),hasPopup:"menu",expanded:s,onClick:g,children:co(u_,{size:15})})}),s&&k&&co(c_,{portal:!0,style:{top:k.top,right:k.right},onClose:()=>i(!1),children:$c("div",{role:"menu","aria-label":l("Duplicate to page"),children:[co(Hl,{children:l("Duplicate to page")}),m?co(Hl,{children:l("Couldn\u2019t load pages")}):f===null?co(Hl,{children:l("Loading\u2026")}):y.length===0?co(Hl,{children:l("No other pages")}):y.map(F=>$c(d_,{role:"menuitem",disabled:h!==null,onClick:()=>{E(F)},children:[co("span",{className:"min-w-0 flex-1 truncate",children:F.label}),h===F.slug?co("span",{className:"shrink-0 text-xs",children:l("Copying\u2026")}):F.draft&&co("span",{className:"shrink-0 text-xs",children:l("draft")})]},F.id))]})})]})}import{ScreenPartsProvider as dX,sameInspectorMode as uX,SELECTION_MODE as _b,useScreenParts as pX,useScreenBlockLook as mX,useScreenBlockRules as xX,useScreenBridges as IX,useScreenCanvasFrame as hX,useScreenDevices as gX,useScreenDocumentPass as bX,useScreenInspectorPanel as yX,useScreenLeftView as SX,useScreenOwnerName as CX,useScreenPinned as vX,useStandaloneScreenBridges as wX}from"efficient-easel/screen/lib/screen-parts";import{usePreviewParts as tD}from"efficient-easel/draw/client";import{jsx as ka,jsxs as m_}from"react/jsx-runtime";import{SettingsDrill as x_}from"efficient-easel/panel";import{UiIcon as I_}from"efficient-easel/draw/client";var h_="Not shown on the page";function g_({part:e,onOpen:o}){return ka(x_,{name:l(e.label),preview:e.offPage?l(h_):e.preview||l("Empty"),offPage:e.offPage,status:e.hidden?ka("span",{className:"sf-entry-eye",role:"img","aria-label":l("Hidden on the page"),children:ka(I_,{name:"eye-off",size:14})}):void 0,onOpen:()=>o(e.key)})}function qc(e){return e.filter(o=>!o.identifier)}function Db({parts:e,onOpen:o,heading:t=!0}){let r=qc(e);return r.length?m_("div",{className:"sf-entries",children:[t?ka("h3",{className:"sf-entries-head",children:l("Text")}):null,r.map(a=>ka(g_,{part:a,onOpen:o},a.key))]}):null}import{HEADER_TYPE as rD,ROOT_ZONE as my}from"efficient-easel/draw";import{HEADER_TYPE as Ve,FOOTER_TYPE as me,newNodeId as b_}from"efficient-easel/draw";function zl(){return{type:Ve,props:{id:b_(Ve)}}}var Nb=[{type:"FooterLogo",label:"Logo"},{type:"FooterMenu",label:"Menu"},{type:"FooterText",label:"Text"},{type:"FooterEmailSignup",label:"Email Form"},{type:"FooterSocial",label:"Social Logos"},{type:"FooterGroup",label:"Footer Box"},{type:"FooterDivider",label:"Divider"}],y_=Nb.filter(e=>e.type!=="FooterLogo"&&e.type!=="FooterGroup"),S_="FooterGroup",Mb="blocks";function Hb(e){return e===me?Nb:e===S_?y_:null}function Wl(){let e=(o,t)=>({type:o,props:{id:`${o}-${crypto.randomUUID()}`,...t}});return[e("FooterLogo",{widthPct:100,align:"left",tagline:""}),e("FooterGroup",{direction:"vertical",align:"start",blocks:[e("FooterText",{text:"Join our email list",size:"md",tone:"default"}),e("FooterEmailSignup",{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"})]})]}var _e="SiteHeader",de="SiteFooter",jc="sections",AX=[_e,de],Ir=e=>e===_e||e===de,zb=e=>`${e}:${jc}`;function Wb(e,o,t=[]){return{type:e,props:{id:o,[jc]:t}}}var C_=new Set(["Footer",_e,de]);function hr(e){let o=new Set,t=!1,r=e.filter(a=>{let n=a?.type??"";return n==="Header"?(t=!0,!1):C_.has(n)?o.has(n)?(t=!0,!1):(o.add(n),!0):!0});return t?r:e}function Gb(e,o){return e.some(t=>t?.type===o.type)?e:o.type===_e?[o,...e]:[...e,o]}var Ub={[_e]:{max:3,takes:["Flex","Ticker"]},[de]:{max:6,takes:["Flex","Prose","Logos","Divider"]}};function $b(e,o,t){if(!Ir(e))return!0;let r=Ub[e];return t<r.max&&r.takes.includes(o)}function qb(e,o){let t=o,r=t?.props?.id;if(r==null)return null;let a=e?.content;if(!Array.isArray(a))return null;for(let n of a){if(!Ir(n?.type))continue;let s=n.props?.[jc];if(!Array.isArray(s)||!s.some(f=>f?.props?.id===r))continue;let i=Ub[n.type];return i.takes.includes(t?.type??"")?s.length>=i.max?{group:n.type,why:"full"}:null:{group:n.type,why:"type"}}return null}function jb(e){switch(e?.type){case _e:return l("Header \xB7 on every page");case de:return l("Footer \xB7 on every page");case Ve:return l("Header \xB7 on every page \xB7 old style");case me:return l("Footer \xB7 on every page \xB7 old style");default:return null}}var Kb=()=>l("Every page"),Vb=()=>l("Changed on every page");function Gl(e,o){let t=Gu(e,o);if(t)return t;let r=qb(e,o);if(!r)return null;let a=r.group===_e;return r.why==="type"?a?l("The header cannot take another one of these"):l("The footer cannot take another one of these"):a?l("The header holds at most 3 sections"):l("The footer holds at most 6 sections")}import{jsx as $l,Fragment as k_,jsxs as T_}from"react/jsx-runtime";import{useState as F_}from"react";import{createNode as E_,newId as P_}from"efficient-easel/data";import{useEasel as L_}from"efficient-easel/easel";import{Banner as O_,Button as Kc}from"efficient-shell/ui";var Ul="Flex",v_={FooterMenu:"MenuBlock",FooterEmailSignup:"EmailFormBlock",FooterSocial:"SocialLogosBlock"},w_=e=>{let{id:o,...t}=e;return t},Yb=e=>typeof e=="string"?e:"";function Xb(e,o){let t=e.props??{},r=v_[e.type];if(r)return[o(r,w_(t))];switch(e.type){case"FooterLogo":{let a=o("LogoBlock",t.reverse?{reverse:t.reverse}:{}),n=Yb(t.tagline).trim();return n?[a,o("Text",{text:n,tone:"dim",align:t.align==="center"?"center":"left"})]:[a]}case"FooterText":return[o("Text",{text:Yb(t.text),tone:typeof t.tone=="string"?t.tone:"default"})];case"FooterDivider":return[o("Divider")];case"FooterGroup":{let a=Array.isArray(t.blocks)?t.blocks:[];return[o(Ul,{direction:t.direction==="horizontal"?"row":"column",content:a.flatMap(n=>Xb(n,o))})]}default:return[]}}function Ta(e,o,t){let r=(e&&Array.isArray(e.props?.blocks)?e.props.blocks:[]).flatMap(s=>{let i=Xb(s,o);return i.length<=1?i:[o(Ul,{direction:"column",content:i})]}),a=o(Ul,{direction:"row",wrap:!0,share:"equal",content:r}),n=o(Ul,{direction:"column",content:[o("LegalLineBlock")]});return Wb(de,t,[a,n])}function Zb(){let{appState:e,dispatch:o,config:t}=L_(p=>p),{readOnly:r}=Se(),[a,n]=F_(!1),s=e.data.content;if(r||s.some(p=>p.type===de))return null;let i=s.find(p=>p.type===me)??null,f=(p,m)=>E_(t,p,m),u=()=>{let p=Ta(i,f,P_(de));o({type:"setData",data:m=>({...m,content:[...Gb(m.content,p)]}),recordHistory:!0}),n(!1)};return $l(O_,{tone:"info",title:l("This footer uses the old layout"),action:a?T_(k_,{children:[$l(Kc,{variant:"primary",size:"sm",onClick:u,children:l("Switch now")}),$l(Kc,{variant:"secondary",size:"sm",onClick:()=>n(!1),children:l("Cancel")})]}):$l(Kc,{variant:"secondary",size:"sm",onClick:()=>n(!0),children:l("Switch to Box footer")}),children:l("Build this footer out of Boxes and blocks, like a page: the same menus, signup, social links and logo, with the copyright as a Legal Line. Your current footer is kept.")})}import{jsx as od}from"react/jsx-runtime";import{useLayoutEffect as G_,useMemo as fy,useRef as U_,useState as Jc}from"react";import{useEasel as $_,useSelectedFields as q_}from"efficient-easel/easel";import{Inspector as j_,planFields as cy}from"efficient-easel/fields";import{DESIGN_GROUPS as Yc,SETTINGS_BUCKETS as R_}from"efficient-easel/panel";import{BUCKET_KEY as Ye,DESIGN_GROUP_KEY as gr}from"efficient-easel/screen/lib/puck/field-buckets";var Fa=R_;var A_="Editor only \u2014 not shown live",Xc={"Archive link":"Content",Article:"Content",Blocks:"Content","Blog posts":"Content","Browser mock":"Content",Button:"Content","Call to action":"Content","Car prompt":"Content","Card link":"Content",Cards:"Content","Claims bars":"Content","Contact info":"Content",Content:"Content","Content source":"Content",Contents:"Content",Filters:"Content","Show on a card":"Content",Footnote:"Content",Form:"Content",Founders:"Content","Gallery A":"Content","Gallery B":"Content","Gallery link":"Content",Header:"Content","Header link":"Content","Image caption":"Content","In this issue":"Content",Items:"Content","Kanban columns":"Content",Lead:"Content","Left panel":"Content",Link:"Content",Links:"Content",List:"Content","Message form":"Content",Metadata:"Content",Milestones:"Content","Mockup card":"Content","Newsletter panel":"Content",Offices:"Content",Options:"Content","Others gallery":"Content","Overlay button":"Content",Product:"Content","Product page":"Content",Products:"Content","Pull quote":"Content",Questions:"Content","Recent issues":"Content","Recent posts":"Content",Reviews:"Content","Right panel \xB7 actions":"Content","Right panel \xB7 choices":"Content","Right panel \xB7 form":"Content","Routing groups":"Content",Rows:"Content",Search:"Content",Section:"Content","Section header":"Content",Sections:"Content","Signup form":"Content","Source product":"Content","Stat & note":"Content",Stats:"Content","Submit button":"Content","Success state":"Content",Wheel:"Content",Terminal:"Content",Text:"Content","Text column":"Content","Timeline entries":"Content","Top row":"Content",Total:"Content","Trailing note":"Content","\u201COther\u201D reason":"Content","Background images":"Design",Gallery:"Content",Image:"Content","Image column":"Content",Images:"Content",Logo:"Content",Media:"Content","Background image":"Design",Color:"Design","Image tint":"Design",Style:"Design",Shape:"Design",Texture:"Design","Text style":"Design",Motion:"Animation",Anchor:"Anchor",Arrangement:"Layout","Auto-slide":"Layout",Bar:"Layout","Cell width":"Size",Behavior:"Layout",Controls:"Layout",Diagram:"Layout",[A_]:"Layout","Filters shown":"Layout","Slide picker":"Layout",Arrows:"Layout","On a phone":"Layout",Nudge:"Position","Stick to top":"Position","Image gallery":"Layout",Grid:"Layout",Layout:"Layout",Padding:"Layout",Price:"Layout",Preview:"Layout",Setup:"Layout","Show / hide elements":"Layout","Show in the buy box":"Layout",Visibility:"Layout",Width:"Size",Height:"Size"},Jb={"AlloyWheelsListing._gCards":"Design","ProductGrid._gCards":"Design"},ey={"Text._gSpacing":"Size","Heading._gSpacing":"Size"};function Vc(e,o,t){let r=`${e}.${o}`;return ey[r]??Jb[r]??Xc[t]}function oy(e){return e==="Animation"?[Ye.Animation]:[Ye.Design,gr[e]]}function ql(...e){let o=[];for(let t of e)for(let r of Object.values(t)){let a=Vs(r),n=Do(a?a.inner:r),s=n?Xc[n.label]:void 0;if(s)for(let i of oy(s))o.includes(i)||o.push(i)}return o}var nZ=[...ql(Bn(),_n("full"),Dn(),Nn(),Mi()),...Object.keys(Bn()),...Object.keys(_n("full")),...Object.keys(Dn()),...Object.keys(Nn()),...Object.keys(Mi())],lZ=[...ql(Ln()),...Object.keys(Ln())],sZ=[...ql(Rn()),...Object.keys(Rn())],iZ=[...ql(An()),...Object.keys(An())],B_=Object.keys(Lx()),__=new Set(["cardImage","imageBackground"]),fZ=[...oy(Vc("ProductGrid","_gCards","Cards")??"Design"),...B_.filter(e=>e.startsWith("_g")||__.has(e))],cZ=Object.keys(Ox()),dZ=Object.keys(Rx({bottomDefault:!0})),D_={"ImageBlock._gStyle":"duplicated the Style bucket header above it (2026-09-04)","ButtonBlock._gStyle":"duplicated the Style bucket header above it (2026-09-04)","HeroGroup._gContent":"duplicated the Content bucket header above it (2026-09-04)","HeroGroup._gLayout":"duplicated the Layout bucket header above it (2026-09-04)","Footer._gLayout":"duplicated the Layout bucket header above it (2026-09-04)","FooterLogo._gContent":"duplicated the Content bucket header above it (2026-09-04)","FooterLogo._gStyle":"duplicated the Style bucket header above it (2026-09-04)","FooterMenu._gContent":"duplicated the Content bucket header above it (2026-09-04)","FooterMenu._gStyle":"duplicated the Style bucket header above it (2026-09-04)","FooterGroup._gLayout":"duplicated the Layout bucket header above it (2026-09-04)","FooterText._gContent":"duplicated the Content bucket header above it (2026-09-04)","FooterText._gStyle":"duplicated the Style bucket header above it (2026-09-04)","FooterSocial._gStyle":"duplicated the Style bucket header above it (born tabbed, 2026-09-17)","FooterSocial._gLayout":"duplicated the Layout bucket header above it (born tabbed, 2026-09-17)","MenuBlock._gContent":"duplicated the Content bucket header above it (born tabbed, H.1)","MenuBlock._gStyle":"duplicated the Style bucket header above it (born tabbed, H.1)","EmailFormBlock._gContent":"duplicated the Content bucket header above it (born tabbed, H.1)","SocialLogosBlock._gStyle":"duplicated the Style bucket header above it (born tabbed, H.1)","SocialLogosBlock._gLayout":"duplicated the Layout bucket header above it (born tabbed, H.1)","SearchBlock._gStyle":"duplicated the Style bucket header above it (born tabbed, H.2)","CartBlock._gStyle":"duplicated the Style bucket header above it (born tabbed, H.2)","CountrySwitchBlock._gStyle":"duplicated the Style bucket header above it (born tabbed with its Show as, 2026-10-17)","Split._gContent":"duplicated the Content bucket header above it (2026-09-04)","Gallery._gVehicleContent":"duplicated the Content bucket header above it (2026-09-04)","Gallery._gWheelContent":"duplicated the Content bucket header above it (2026-09-04)","Gallery._gOthersContent":"duplicated the Content bucket header above it (2026-09-04)","Subscribe._gHeadCopy":"duplicated the Content bucket header above it (2026-09-04)","Subscribe._gLeftCopy":"duplicated the Content bucket header above it (2026-09-04)","Subscribe._gRightCopy":"duplicated the Content bucket header above it (2026-09-04)","CollectionCard._gContent":"duplicated the Content bucket header above it (A Card Sets Its Own Corners)","HeroSlide._gContent":"duplicated the Content bucket header above it (Hero Slide Tabs And Theme)","BrandStrip._gContent":"duplicated the Content bucket header above it (66338)","BrandStrip._gStyle":"duplicated the Style bucket header above it (66338)","BrandStrip._gLayout":"duplicated the Layout bucket header above it (66338)","KeyFeatures._gContent":"duplicated the Content bucket header above it (66049)","KeyFeatures._gStyle":"duplicated the Style bucket header above it (66049)","ParagraphsA._gContent":"duplicated the Content bucket header above it (66049)","ParagraphsA._gStyle":"duplicated the Style bucket header above it (66049)","Chart._gContent":"duplicated the Content bucket header above it (66049)","Chart._gStyle":"duplicated the Style bucket header above it (66049)","Logos._gContent":"duplicated the Content bucket header above it (66049)","Logos._gStyle":"duplicated the Style bucket header above it (66049)","Mockup._gContent":"duplicated the Content bucket header above it (66049)","Mockup._gStyle":"duplicated the Style bucket header above it (66049)","Stats._gContent":"duplicated the Content bucket header above it (66049)","Stats._gStyle":"duplicated the Style bucket header above it (66049)","StatsParagraph._gContent":"duplicated the Content bucket header above it (66049)","StatsParagraph._gStyle":"duplicated the Style bucket header above it (66049)","Testimonials._gContent":"duplicated the Content bucket header above it (66049)","Testimonials._gStyle":"duplicated the Style bucket header above it (66049)","AppointmentBooking._gContent":"duplicated the Content bucket header above it (66050)","BookingBox._gContent":"duplicated the Content bucket header above it ([SPLIT] Booking Form Into Three Boxes) \u2014 the same fault its own section retired in 66050, one level down","FAQ._gContent":"duplicated the Content bucket header above it (66050, family sweep)","FAQ._gLayout":"duplicated the Layout bucket header above it (66050, family sweep)","Form._gContent":"duplicated the Content bucket header above it (66050)","ReviewForm._gContent":"duplicated the Content bucket header above it (66050)","SubmitBuild._gContent":"duplicated the Content bucket header above it (66050)","SubmitBox._gContent":"duplicated the Content bucket header above it ([SPLIT] SubmitBuild Keeps Its Two Columns) \u2014 the same fault its own section retired in 66050, one level down","CheckoutCTA._gContent":"duplicated the Content bucket header above it (66051)","CheckoutCTA._gLayout":"duplicated the Layout bucket header above it (66051)","DeliveryOptions._gContent":"duplicated the Content bucket header above it (66051)","DeliveryOptions._gLayout":"duplicated the Layout bucket header above it (66051)","OrderSummary._gContent":"duplicated the Content bucket header above it (66051)","OrderSummary._gLayout":"duplicated the Layout bucket header above it (66051)","PaymentBadges._gContent":"duplicated the Content bucket header above it (66051)","PaymentBadges._gLayout":"duplicated the Layout bucket header above it (66051)","Collections._gContent":"duplicated the Content bucket header above it (66052)","Collections._gLayout":"duplicated the Layout bucket header above it (66052)","DocMasthead._gContent":"duplicated the Content bucket header above it (66053)","Events._gContent":"duplicated the Content bucket header above it (66054)","Events._gLayout":"duplicated the Layout bucket header above it (66054)","FeaturedCover._gContent":"duplicated the Content bucket header above it (66054)","Series._gStyle":"duplicated the Style bucket header above it (66054)","Flex._gContent":"duplicated the Content bucket header above it (66055)","Flex._gLayout":"duplicated the Layout bucket header above it (66055)","SectionHeader._gContent":"duplicated the Content bucket header above it (66055)","Breadcrumb._gContent":"duplicated the Content bucket header above it (66056)","CategoryBar._gStyle":"duplicated the Style bucket header above it (66056)","Hero._gContent":"duplicated the Content bucket header above it (66056)","Hero._gStyle":"duplicated the Style bucket header above it (66056)","HeroSingle._gStyle":"duplicated the Style bucket header above it (66056)","IntroBleed._gContent":"duplicated the Content bucket header above it (66056)","IntroBleed._gLayout":"duplicated the Layout bucket header above it (66056)","BundleOffer._gLayout":"duplicated the Layout bucket header above it (66059)","ProcessSteps._gContent":"duplicated the Content bucket header above it (66059)","Banner._gContent":"duplicated the Content bucket header above it (66060.1)","Banner._gLayout":"duplicated the Layout bucket header above it, and governed no controls (66060.1)","Manifesto._gContent":"duplicated the Content bucket header above it (66060.1)","SubscribeBlogs._gHeadCopy":"duplicated the Content bucket header above it (66060.1)","SubscribeBlogs._gLeftCopy":"duplicated the Content bucket header above it (66060.1)","SubscribeBlogs._gRightCopy":"duplicated the Content bucket header above it (66060.1)","Ticker._gContent":"duplicated the Content bucket header above it (66060.1)","Ticker._gStyle":"duplicated the Style bucket header above it (66060.1)","Timeline._gContent":"duplicated the Content bucket header above it (66060.1)","TitleWithButtons._gContent":"duplicated the Content bucket header above it (66060.1)","TitleWithButtons._gStyle":"duplicated the Style bucket header above it (66060.1)","Cards._gContent":"duplicated the Content bucket header above it (66218)","Cards._gStyle":"duplicated the Style bucket header above it (66218)","Prose._gContent":"duplicated the Content bucket header above it (66218)","Reviews._gContent":"duplicated the Content bucket header above it (66218)","Reviews._gStyle":"duplicated the Style bucket header above it (66218)"},ty={Content:["Content"],Size:["Size"],Design:["Design","Style"],Layout:["Layout"],Position:["Position"],Anchor:["Anchor"],Animation:["Animation"]},ry={_gAnchor:"repeated the Anchor group heading above it (two tabs, 11.0.0)"};{let e={...Bn(),..._n("full"),...Dn(),...Nn(),...Ln(),...Rn(),...An()};for(let o of Object.keys(ry)){let t=Do(e[o]),r=t?Xc[t.label]:void 0;if(!t||t.level!==2||!r||!ty[r].includes(t.label))throw new Error(`INJECTED_RETIRED (lib/puck/field-groups.ts) lists "${o}", but no uniform builder makes a level-2 heading by that key whose label repeats its place's word. The heading was renamed, moved or removed and the row is stale \u2014 a list that quietly matches nothing is worse than no list.`)}}var N_=new Set(["_sContent","_sStyle","_sLayout","_sMedia"]),M_=new Map([[Ye.Design,"Content"],[Ye.Animation,"Animation"],...Yc.map(e=>[gr[e],e])]);function ay(e){let o=new Set([...Object.values(Ye),gr.Content]);for(let[t,r]of Object.entries(e))if(!o.has(t)&&Do(r)?.level===1)return 1;return 2}function H_(e){let o=`${e}.`;return Object.keys(D_).filter(t=>t.startsWith(o)).map(t=>t.slice(o.length))}function z_(e,o){let t=Vs(e),r=He(o);return t?ve(t.tier,r):r}function W_(e,o){let t=Do(o);return t?e==="Content"||e==="Animation"?gx(o,t.label):bx(o):o}function Qb(e){return e==="Design"?Yc:["Animation"]}function uZ(e,o){let t=[],r=new Set(H_(o)),a=new Set,n=!1,s=null;for(let[x,h]of Object.entries(e)){let b=Do(h);if(N_.has(x))throw new Error(`${o}.${x}: that key was a tab header until efficient-web-builder 11.0.0, when the panel moved to two tabs (Design \xB7 Animation). Its tab is gone, so the key may not come back. Give the heading a key of the section's own (\`_g\u2026\`), or open a Design group with its own key (\`_dDesign: section("Design")\`, \`_dLayout: section("Layout")\`).`);let C=M_.get(x);if(C!==void 0){if(b?.level!==1)throw new Error(`${o}.${x}: that key is reserved for the ${C} heading of the settings panel, but this field is ${b?`a level-${b.level} "${b.label}" header`:"not a header"}, so it cannot serve as one. Rename the section's own field.`);(x===Ye.Design||x===Ye.Animation)&&(n=!0),t.push(s={place:C,entries:[],adopted:!0});continue}if(!b){s||t.push(s={place:"Content",entries:[]}),s.entries.push([x,h]);continue}if(r.has(x)||x in ry){let v=Vc(o,x,b.label);if(b.level!==2||!v||!ty[v].includes(b.label))throw new Error(`${o}.${x}: ${r.has(x)?"RETIRED":"INJECTED_RETIRED"} (lib/puck/field-groups.ts) lists this sub-heading as one whose name repeats the place it sits in, but it is a level-${b.level} "${b.label}" header in the ${v??"(unclassified)"} place. Only a level-2 header whose label is one of its place's words (PLACE_WORDS) may be retired \u2014 anything else is a heading a merchant reads for its own sake. Fix the row or drop it.`);r.has(x)&&a.add(x),t.push(s={place:v,entries:[]});continue}let k=Vc(o,x,b.label);if(!k)throw new Error(`${o}.${x}: the inspector group "${b.label}" is not classified in LABEL_GROUP (lib/puck/field-groups.ts), so there is no way to say which of ${[...Yc,"Animation"].join(" / ")} its controls belong under. Classify it \u2014 an unclassified group silently lands wherever it was declared, which is the whole bug.`);t.push(s={place:k,entries:[[x,b.level===2?h:z_(h,b.label)]]})}let i=new Set(Object.entries(e).filter(([,x])=>Do(x)).map(([x])=>x));for(let[x,h]of[["BLOCK_KEY_GROUP",ey],["KEY_GROUP",Jb]]){let b=Object.keys(h).filter(C=>C.startsWith(`${o}.`)).filter(C=>!i.has(C.slice(o.length+1)));if(b.length)throw new Error(`${o}: ${x} (lib/puck/field-groups.ts) lists ${JSON.stringify(b)}, but no fold header by that key is in this section's panel. Either the heading was renamed or removed and the row is stale, or the row names the wrong key \u2014 an override that quietly matches nothing is worse than no override.`)}let f=n?[]:[...r].filter(x=>!a.has(x));if(f.length)throw new Error(`${o}: RETIRED (lib/puck/field-groups.ts) lists ${JSON.stringify(f)}, but this section has no such fold header${f.length>1?"s":""}. Either the heading was renamed or removed and the row is stale, or the row names the wrong section \u2014 a list that quietly matches nothing is worse than no list.`);let u=new Set(t.filter(x=>x.entries.length>0).map(x=>x.place)),p=Fa.filter(x=>Qb(x).some(h=>u.has(h))),m={};for(let x of p){m[Ye[x]]=Pn(x,x===p[0]?p:null);for(let h of Qb(x)){if(!u.has(h))continue;let b=t.filter(k=>k.place===h),C=b.findIndex(k=>k.adopted);C>0&&b.unshift(...b.splice(C,1)),x==="Design"&&(m[gr[h]]=_i(h));for(let k of b)for(let[v,w]of k.entries)m[v]=W_(h,w)}}return m}function pZ(e){return Ye.Design in e?e:{[Ye.Design]:Pn("Design",null),[gr.Content]:_i("Content"),...e}}function mZ(e){return Fa.some(o=>Ye[o]in e)}function xZ(e){let o=Fa.filter(r=>Ye[r]in e);if(o.length===0)return e;let t={...e};for(let r of o)t[Ye[r]]=Pn(r,r===o[0]?o:null);return t}import{usePreviewDevice as K_}from"efficient-easel/draw/client";var Zc=" text",ny="Text";function Qc(e){let o=e.rows.filter(t=>t.shown);return o.length===0||o.length===1&&o[0].labelled}function ly(e){return e.filter(Qc).map(o=>o.key)}function sy(e,o){let t=null;for(let r of o){let a=e[r];!a||a.marker!==!0||typeof a.fold!="string"||(t??={...e},t[r]={...a,fold:!1})}return t??e}function iy(e,o){if(e.size!==o.size)return!1;for(let t of e)if(!o.has(t))return!1;return!0}var ed=new Map,jl=new Set;function V_(e,o){let t=new Map;for(let a of e.querySelectorAll(".es-insp-row[data-field]"))t.set(a.getAttribute("data-field")??"",a);let r=[];for(let[a,n]of o)r.push({key:a,rows:n.map(s=>{let i=t.get(s),f=!!i&&[...i.children].some(p=>!p.hidden),u=i?.querySelector(".es-field-label, .es-list-label")?.textContent?.trim();return{shown:f,labelled:f&&!!u}})});return r}var Y_=Object.fromEntries(Fa.map(e=>{let o=xx[e];return[e,od(o,{},e)]}));function Ea({entries:e,entryCount:o=0,part:t=null}){let{id:r,fields:a,values:n,readOnly:s,onChange:i}=q_(),f=K_(),{appState:u,config:p}=$_(W=>W),m=yh(f,p,u.data.content??[],u.ui.itemSelector),x=kh(a,t),h=bh(x,n,m),[b,C]=Jc(()=>new Set(jl)),[k,v]=Jc(()=>new Set),w=U_(null),g=fy(()=>{let W=new Map;for(let A of cy(h).rows){if(!A.fold)continue;let oe=W.get(A.fold.key)??[];oe.push(A.name),W.set(A.fold.key,oe)}return W},[h]);G_(()=>{let W=w.current?.parentElement;if(!W)return;let A=new Set(ly(V_(W,g)));v(oe=>iy(oe,A)?oe:A)});let y=fy(()=>sy(h,k),[h,k]),E={key:Zc,rows:Array.from({length:o},()=>({shown:!0,labelled:!0}))},F=Qc(E)?void 0:{key:Zc,title:ny},[L,B]=Jc(()=>ed.get(r)),O=ed.get(r),M=cy(h).buckets,re=O&&M.includes(O)?O:L&&M.includes(L)?L:M[0],H=re===void 0||Ix(M,re)!==!0;return od(j_,{fields:y,values:n,onChange:i,readOnly:s,tab:re,onTab:W=>{ed.set(r,W),B(W)},tabIcons:Y_,idPrefix:r,ariaLabel:l("Section settings"),lead:H?e:null,leadFold:F,closedFolds:b,onFold:(W,A)=>{A?jl.delete(W):jl.add(W),C(new Set(jl))},children:od("span",{ref:w,hidden:!0})})}import{jsx as td,jsxs as X_}from"react/jsx-runtime";import{InspectorUpLevel as dy}from"efficient-easel/chrome";function uy({nodeId:e,part:o,sectionName:t,onUpToSection:r}){let{select:a}=xl();return X_("div",{children:[o!=="media"?td(dy,{inline:!0,name:l(lr.media),onSelect:()=>a(ca(e,"media"))}):td(dy,{inline:!0,name:l(t),onSelect:r}),td(Ea,{part:o})]})}import{SettingsSwitch as aD}from"efficient-easel/panel";var Iy=_b,nd={kind:"header"},ld={kind:"website"},hy={kind:"chat"},gy={kind:"social"},Pa="Part";function nD(e){return l("Part of {name}",{name:l(e)})}function lD(e,o,t){let r=e.describeNode(o);return{name:t,kindLabel:r?nD(r.label):l(Pa)}}function sD(e){switch(e){case"Header":return{title:l("Header settings belong to a website."),own:l("Each website created from this template sets its own header afterwards.")};case"Appearance":return{title:l("Appearance settings belong to a website."),own:l("Each website created from this template sets its own appearance afterwards.")};case"Live chat":return{title:l("Live chat settings belong to a website."),own:l("Each website created from this template sets its own live chat afterwards.")};case"Social link":return{title:l("Social link settings belong to a website."),own:l("Each website created from this template sets its own social link afterwards.")};default:return{title:l("{what} settings belong to a website.",{what:e}),own:l("Each website created from this template sets its own {what} afterwards.",{what:e.toLowerCase()})}}}function by({what:e}){let o=sD(e);return kt("div",{className:"sf-note",children:[ee("p",{children:ee("strong",{children:o.title})}),kt("p",{children:[l("A template is a blueprint \u2014 it has no website of its own, so there is nothing here to change.")," ",o.own]})]})}function ad(e){let o=fa[e];return{name:lr[e],kindLabel:Pa,icon:o,head:(t,r)=>{if(t.kind!==o)return null;let a=r.describeNode(t.nodeId);if(!a)return null;let n=xy({name:l(bl(e,a.props)),tier:"part",of:l(a.label)},{partOf:({name:s})=>l("Part of {name}",{name:s})});return{name:n.name,kindLabel:n.kind}},render:(t,r)=>t.kind===o?ee(uy,{nodeId:t.nodeId,part:e,sectionName:r.describeNode(t.nodeId)?.label??"Hero",onUpToSection:()=>r.onSelectNode(t.nodeId)}):null}}var iD={header:{name:"Header",kindLabel:"Site settings",icon:"header",render:(e,o)=>{let t=o.hostPanels?.header;return t?ee(t,{placeholderMode:o.capabilities.placeholderFrames,tokenRef:o.tokenRef,siteId:o.siteId,websiteName:o.websiteName,onOpenWebsiteSettings:o.onOpenWebsiteSettings,onAuthExpired:()=>o.notifyParent("storefront-editor:auth-expired")}):null}},website:{name:"Appearance",kindLabel:"Site settings",icon:"website",render:(e,o)=>ee(al,{themeFromDocument:!o.capabilities.hasSiteTheme,tokenRef:o.tokenRef,siteId:o.siteId,onNotify:o.onNotify})},chat:{name:"Live chat",kindLabel:"Site settings",icon:"chat",render:()=>ee(Bh,{})},social:{name:"Social links",kindLabel:"Site settings",icon:"social",render:()=>ee(zh,{unavailable:ee(by,{what:"Social link"})})},ticker:{name:na,kindLabel:Pa,icon:"ticker",head:(e,o)=>e.kind==="ticker"?lD(o,e.heroId,l(na)):null,render:e=>ee(nb,{heroId:e.kind==="ticker"?e.heroId:""})},heroMedia:ad("media"),heroImage:ad("image"),heroImage2:ad("image2"),part:{name:Pa,kindLabel:Pa,icon:"Text",head:(e,o)=>{if(e.kind!=="part")return null;let t=o.describeNode(e.nodeId);if(!t)return null;let{key:r,row:a}=so(e.propKey),n=a?mr(t.fields[r],a):t.fields[r],s=rI(l(sf(Jn(n??{},r))),a),i=xy({name:s,tier:"part",of:l(t.label)},{partOf:({name:f})=>l("Part of {name}",{name:f})});return{name:i.name,kindLabel:i.kind}},render:(e,o)=>e.kind==="part"?ee(Rb,{nodeId:e.nodeId,propKey:e.propKey,onBack:()=>o.onSelectNode(e.nodeId),onEditStyle:o.onOpenSiteStyles}):null}},fD=new Set(["header","website","chat"]);function cD(e,o){if(e==="puck")return null;let t=iD[e];return fD.has(e)&&!o.hasSiteSettings?{...t,kindLabel:"Not part of a template",render:()=>ee(by,{what:t.name})}:t}function yy({mode:e,onOpenWebsiteSettings:o,onOpenSiteStyles:t,onSelectNode:r,hideNodeActions:a=!1,onNotify:n,onHidePanel:s}){let{capabilities:i,tokenRef:f,notifyParent:u,currentSlug:p,siteId:m,runAuthed:x,readOnly:h}=Se(),{websiteName:b}=Z(),C=qo({readOnly:h}),{select:k}=tD(),{selectedItem:v,getItemById:w,getSelectorForId:g,config:y,appState:E}=Q_(te=>te),F=Eh(y,v?{type:v.type,props:v.props}:null),L=v?dI(F??y.components[v.type]?.fields,v.props):[],B=te=>y.components[te]?.label??te,O=v?g(v.props.id):void 0,M=cD(e.kind,i),re=Ae(),H={capabilities:i,tokenRef:f,hostPanels:re.chrome?.panels,describeNode:te=>{let ae=w(te);if(!ae)return null;let pe=y.components[ae.type];return{type:ae.type,label:pe?.label??ae.type,fields:pe?.fields??{},props:ae.props??{}}},siteId:m,websiteName:b??null,notifyParent:u,onNotify:n,onOpenWebsiteSettings:o,onOpenSiteStyles:t,onSelectNode:r},W=M?.head?.(e,H)??null,A=W?.name??(M?l(M.name):v?l(B(v.type)):l("Page settings")),oe=W?.kindLabel??(M?l(M.kindLabel):v?O&&O.zone!==my?l("Block"):l("Section"):l("Page")),Oe=M?M.icon:v?v.type:"page",Xe=M?null:v?y.components[v.type]?.fields??null:y.root?.fields??null,ro=Xe?ay(Xe):2,We=e.kind==="puck"&&v?Ca(v.type):null,Re=!!v&&!!O&&O.zone===my&&v.type!==me&&v.type!==rD,Ge=Gl(E?.data,v),De=()=>{Ge||O&&C.duplicateComponent(O.zone,O.index)},Ce=()=>{O&&(C.removeComponent(O.zone,O.index),C.select(null))},ge=v?y.components[v.type]?.defaultProps?.previewHover:void 0,Ie=e.kind==="puck"&&!!v&&!!O&&ge!==void 0,Ze=Ie&&v.props.previewHover===!0,P=()=>{!v||!O||C.replaceComponent(O.zone,O.index,{...v,props:{...v.props,previewHover:!Ze}})},[le,Y]=Z_(Bf);return kt("div",{className:`es-sidepanel es-sidepanel--right sf-panel sf-panel--right${le||!(!M&&v)?"":" sf-hints-folded"}`,children:[ee(J_,{icon:ee(vt,{type:Oe,size:15}),name:A,kind:oe,actions:!a&&e.kind==="puck"&&v&&v.type!==me?kt(rd,{children:[ee(py,{label:l("Duplicate section"),title:Ge??void 0,disabled:Ge!==null,onClick:De,children:ee(eD,{size:15})}),Re&&i.hasSiteSettings&&ee(Bb,{node:v,currentSlug:p,siteId:m??void 0,tokenRef:f,runAuthed:x,onNotify:n}),ee(py,{label:l("Remove section"),danger:!0,onClick:Ce,children:ee(oD,{size:15})}),s?ee(Ts,{side:"right",onHide:s,divider:!0}):null]}):s?ee(Ts,{side:"right",onHide:s}):void 0}),Ie&&kt("div",{className:"sf-preview-pin",children:[kt("div",{className:"sf-preview-pin-text",children:[ee("span",{className:"sf-preview-pin-label",children:l("Preview hover state")}),ee("span",{className:"sf-preview-pin-hint",children:l("not shown live")})]}),ee(aD,{checked:Ze,onChange:P,ariaLabel:l("Preview hover state")})]}),ee(qm,{tier:ro,children:ee("div",{className:"sf-insp-body es-insp-body sf-scroll",children:M?M.render(e,H):v?kt(rd,{children:[v.type===me&&i.hasSiteSettings&&ee(Zb,{}),ee(Sp,{children:ee(Ea,{entries:ee(Db,{parts:L,heading:!1,onOpen:te=>k(Zn(v.props.id,te))}),entryCount:qc(L).length})}),We&&ee(Ml,{source:We,slug:Sa(v?.props),menuId:Bl(v?.props)}),ee(_f,{shown:le,onChange:Y})]}):ee(rd,{children:ee(Ea,{})})})})]})}import{jsx as c,jsxs as S,Fragment as ky}from"react/jsx-runtime";var Fe={dark:"var(--sf-thumb-bar-dark)",soft:"var(--sf-thumb-bar-light)",accent:"var(--sf-thumb-accent)",tint:"var(--sf-thumb-accent-tint)",block:"var(--sf-thumb-block)",line:"var(--sf-thumb-border)",card:"var(--sf-thumb-card)"},sd="repeating-linear-gradient(135deg,var(--sf-thumb-hatch1) 0,var(--sf-thumb-hatch1) 5px,var(--sf-thumb-hatch2) 5px,var(--sf-thumb-hatch2) 10px)";function R({w:e,h:o,tone:t="dark",r=2,style:a}){return c("div",{style:{width:e,height:o,borderRadius:r,background:Fe[t],flex:"none",...a}})}var dD={Hero:"hero",HeroSingle:"herosingle",IntroBleed:"intro",Collections:"collections",AlloyWheelsListing:"wheelslisting",CatalogFilterBar:"catalogfilterbar",ProductGrid:"productgrid",BrandStrip:"brandstrip",FitmentFinder:"fitmentfinder",Gallery:"gallery",GalleryB:"gallerygrid",SpecStrip:"specstrip",ProductHero:"producthero",SpecTable:"spectable",ProcessSteps:"processsteps",DetailRows:"detailrows",FitmentTable:"fitmenttable",CompatibleTyres:"compatibletyres",TyreSizes:"tyresizes",TyreFitment:"tyrefitment",EuTyreLabel:"eutyrelabel",RelatedProducts:"productgrid",BundleOffer:"bundleoffer",OrderSummary:"ordersummary",DeliveryOptions:"deliveryoptions",PaymentBadges:"paymentbadges",CheckoutCTA:"checkoutcta",Manifesto:"manifesto",ParagraphsA:"paragraphs",Prose:"prose",StatsParagraph:"statsparagraph",Chart:"chart",Mockup:"mockup",Footprint:"footprint",Timeline:"timeline",TimelineTrack:"timelinetrack",TitleWithButtons:"titlewithbuttons",Split:"split",Cards:"cards",FAQ:"faq",Testimonials:"testimonials",Masthead:"masthead",Breadcrumb:"breadcrumb",CategoryBar:"categorybar",FeaturedCover:"featuredcover",LongRead:"longread",Series:"series",Subscribe:"subscribe",SubscribeBlogs:"subscribe",Events:"events",DocMasthead:"docmasthead",DocTabs:"doctabs",DocBody:"docbody",DocMetaCards:"docmetacards",Banner:"banner",Stats:"stats",KeyFeatures:"keyfeatures",Logos:"logos",Ticker:"ticker",Countdown:"countdown",Reviews:"reviews",SubmitBuild:"submitbuild",ReviewForm:"reviewform",Form:"form",AppointmentBooking:"appointmentbooking",ContactRouting:"contact",ContactLocations:"contactlocations",Header:"header",Footer:"footer",SectionHeader:"sectionheader",Grid:"grid",Flex:"blanksection",Spacer:"spacer",Divider:"divider",CustomHTML:"customhtml",Heading:"heading",Text:"text",ImageBlock:"image",ButtonBlock:"button",MenuBlock:"menu",EmailFormBlock:"emailform",SocialLogosBlock:"sociallogos",LegalLineBlock:"legalline",SearchBlock:"search",CartBlock:"cart",CountrySwitchBlock:"countryswitch"},_={position:"absolute",inset:0},d={ink:"var(--sf-thumb-ink)",ink2:"var(--sf-thumb-ink-2)",inkSoft:"var(--sf-thumb-ink-soft)",inkSoft2:"var(--sf-thumb-ink-soft-2)",paper:"var(--sf-thumb-paper)",paper2:"var(--sf-thumb-paper-2)",warm:"var(--sf-thumb-warm)",rust:"var(--sf-thumb-rust)",onInk:"var(--sf-thumb-on-ink)",text:"var(--sf-thumb-scene-text)",muted:"var(--sf-thumb-scene-muted)",rule:"var(--sf-thumb-scene-rule)",mark1:"var(--sf-thumb-mark-1)",mark2:"var(--sf-thumb-mark-2)",card:"var(--sf-thumb-card)",scrim:"var(--sf-thumb-scrim)"},xe=(e,o,t=160)=>({background:`linear-gradient(${t}deg,${e},${o})`});function zo({size:e,style:o}){let t=Math.max(2,Math.round(e*.13)),r=(a,n,s)=>({position:"absolute",inset:a,background:n,borderRadius:t,...s?{mixBlendMode:s}:null});return S("span",{style:{position:"absolute",display:"block",width:e,height:e,...o},children:[c("span",{style:r("8% 26% 30% 6%",d.mark1)}),c("span",{style:r("26% 6% 8% 30%",d.mark2,"multiply")})]})}function Oa({children:e}){return c("span",{style:{fontSize:"4.64cqw",fontWeight:700,letterSpacing:"0.06em",textTransform:"uppercase",color:d.muted},children:e})}function Sy({over:e,overTone:o,head:t,headSize:r=11.5,cta:a,ctaBg:n,ctaFg:s,tone:i}){return S(ky,{children:[e&&c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:o},children:e}),c("span",{style:{fontSize:r,lineHeight:1.15,fontWeight:700,maxWidth:"78%",color:i},children:t}),a&&c("span",{style:{alignSelf:"flex-start",fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"4px 8px",borderRadius:2,marginTop:2,background:n,color:s},children:a})]})}function id({name:e,price:o}){return S("div",{style:{display:"flex",flexDirection:"column",gap:2,minWidth:0},children:[c("div",{style:{flex:1,minHeight:0,borderRadius:3,position:"relative",overflow:"hidden",...xe(d.paper,d.paper2,150)},children:c(zo,{size:34,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),c("span",{style:{fontSize:"3.65cqw",fontWeight:600,color:d.text},children:e}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o})]})}function Ho({k:e,v:o,ok:t}){return S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:6,padding:"3.5px 2px",borderBottom:`1px solid ${d.rule}`,fontSize:"3.98cqw",color:d.muted},children:[c("span",{children:e}),S("span",{style:{display:"flex",gap:6,alignItems:"center"},children:[c("b",{style:{color:d.text,fontWeight:700},children:o}),t&&c("span",{style:{color:d.rust,fontWeight:700},children:"\u2713"})]})]})}function ie({title:e,children:o}){return S("div",{style:{..._,background:d.card,padding:"9px 10px",display:"flex",flexDirection:"column",gap:6},children:[c(Oa,{children:e}),o]})}function Cy({size:e=14}){return c("span",{style:{width:e,height:e,borderRadius:"50%",flex:"none",display:"block",background:`linear-gradient(150deg,${d.mark1},${d.mark2})`}})}function fd({filled:e=5,size:o=6}){return S("span",{style:{fontSize:o,letterSpacing:"0.06em",color:d.rust,lineHeight:1},children:["\u2605".repeat(e),c("span",{style:{color:d.mark1},children:"\u2605".repeat(5-e)})]})}function La({n:e,label:o,tone:t=d.text}){return S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[c("b",{style:{fontSize:"8.16cqw",lineHeight:1,color:t},children:e}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.08em",textTransform:"uppercase",opacity:.62,color:t},children:o})]})}function Le({children:e,w:o}){return c("span",{style:{fontSize:"3.98cqw",lineHeight:1.45,color:d.muted,width:o,display:"block"},children:e})}function Kl({label:e,w:o="100%",filled:t}){return S("div",{style:{width:o,display:"flex",flexDirection:"column",gap:2},children:[c("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:e}),c("span",{style:{height:9,borderRadius:3,border:`1px solid ${d.rule}`,background:t?d.paper:d.card}})]})}function vy({children:e}){return c("span",{style:{alignSelf:"flex-start",fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"5px 9px",borderRadius:2,background:d.text,color:d.onInk},children:e})}var uD={wheelslisting:c(ie,{title:"All wheels",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[["Ridge 19","20\xD79 +12","$365"],["Ridge 29","18\xD79 +20","$410"],["Ridge 39","17\xD78 \u221210","$455"]].map(([e,o,t])=>S("div",{style:{display:"flex",alignItems:"center",gap:6},children:[c("span",{style:{width:20,height:15,borderRadius:3,flex:"none",position:"relative",overflow:"hidden",...xe(d.paper,d.paper2,150)},children:c(zo,{size:12,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),c("b",{style:{flex:1,fontSize:"4.31cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o}),c("b",{style:{fontSize:"4.31cqw",color:d.text,width:26,textAlign:"right"},children:t})]},e))})}),catalogfilterbar:S("div",{style:{..._,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:7,padding:"0 11px"},children:[S("div",{style:{display:"flex",gap:4,alignItems:"center"},children:[["20 inch","6\xD7139.7","Black"].map(e=>S("span",{style:{fontSize:"3.65cqw",fontWeight:600,padding:"4px 7px",borderRadius:99,background:d.text,color:d.onInk,display:"flex",gap:4,alignItems:"center"},children:[e,c("span",{style:{opacity:.6},children:"\u2715"})]},e)),c("span",{style:{fontSize:"3.65cqw",color:d.rust,fontWeight:700},children:"Clear"})]}),S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"128 results"}),c("span",{style:{fontSize:"3.65cqw",color:d.muted,border:`1px solid ${d.rule}`,borderRadius:3,padding:"3px 6px"},children:"Sort: Price \u25BE"})]})]}),fitmentfinder:S("div",{style:{..._,padding:"10px 12px",display:"flex",flexDirection:"column",gap:6,justifyContent:"center",...xe(d.ink,d.inkSoft)},children:[c("span",{style:{fontSize:"5.31cqw",fontWeight:700,color:d.onInk},children:"Will it fit your rig?"}),S("div",{style:{display:"flex",gap:4},children:[["2021","Toyota","Hilux"].map(e=>S("span",{style:{flex:1,fontSize:"3.65cqw",color:d.text,background:d.card,borderRadius:3,padding:"5px 6px",display:"flex",justifyContent:"space-between"},children:[e," ",c("span",{style:{color:d.muted},children:"\u25BE"})]},e)),c("span",{style:{fontSize:"3.65cqw",fontWeight:700,letterSpacing:"0.08em",background:d.warm,color:d.ink,borderRadius:3,padding:"5px 7px"},children:"GO"})]})]}),compatibletyres:c(ie,{title:"Tyres that suit",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[["Ridge Grappler","$489"],["Trail Grappler","$525"],["Terra Grappler","$438"]].map(([e,o])=>S("div",{style:{display:"flex",flexDirection:"column",gap:2,minWidth:0},children:[c("div",{style:{flex:1,minHeight:0,borderRadius:3,position:"relative",overflow:"hidden",background:d.ink},children:c("span",{style:{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%,-50%)",width:26,height:26,borderRadius:"50%",border:`5px solid ${d.mark2}`,boxSizing:"border-box"}})}),c("span",{style:{fontSize:"3.32cqw",fontWeight:600,color:d.text,overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"},children:e}),c("span",{style:{fontSize:"3.32cqw",color:d.muted},children:o})]},e))})}),tyresizes:c(ie,{title:"Available sizes",children:c("div",{style:{flex:1,display:"flex",flexWrap:"wrap",gap:4,alignContent:"center"},children:["265/65R17","285/70R17","265/60R18","275/55R20"].map((e,o)=>c("span",{style:{fontSize:"3.65cqw",fontWeight:600,padding:"5px 7px",borderRadius:3,border:`1px solid ${o===0?d.rust:d.rule}`,color:o===0?d.rust:d.text,background:o===0?d.paper:d.card},children:e},e))})}),tyrefitment:S(ie,{title:"Will it fit your car?",children:[c("div",{style:{display:"flex",gap:3},children:["Make","Model","Year","Trim"].map(e=>S("span",{style:{flex:1,minWidth:0,fontSize:"3.32cqw",color:d.muted,background:d.paper,border:`1px solid ${d.rule}`,borderRadius:3,padding:"4px 5px",display:"flex",justifyContent:"space-between",gap:2,overflow:"hidden",whiteSpace:"nowrap"},children:[e," ",c("span",{style:{color:d.muted},children:"\u25BE"})]},e))}),c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:2,justifyContent:"center",minHeight:0},children:[["265/65R17","Fits",!0],["285/70R17","Not your size",!1]].map(([e,o,t])=>S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline",gap:6,borderTop:`1px solid ${d.rule}`,paddingTop:3},children:[c("span",{style:{fontSize:"3.32cqw",fontWeight:600,color:d.text},children:e}),c("span",{style:{fontSize:"3.32cqw",fontWeight:t?700:400,letterSpacing:"0.06em",color:t?d.warm:d.muted},children:o})]},e))})]}),eutyrelabel:S("div",{style:{..._,background:d.card,padding:"9px 11px",display:"flex",gap:8,alignItems:"center"},children:[c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1.5},children:[["A","42%"],["B","56%"],["C","70%"],["D","84%"]].map(([e,o],t)=>S("div",{style:{display:"flex",alignItems:"center",gap:3},children:[c("span",{style:{width:o,height:6,borderRadius:"0 2px 2px 0",background:t===1?d.rust:d.mark1}}),c("span",{style:{fontSize:"3.32cqw",fontWeight:700,color:t===1?d.rust:d.muted},children:e})]},e))}),S("div",{style:{flex:"none",display:"flex",flexDirection:"column",gap:3,alignItems:"center"},children:[c("b",{style:{fontSize:"6.63cqw",lineHeight:1,color:d.text},children:"72"}),c("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",color:d.muted},children:"dB"})]})]}),bundleoffer:S("div",{style:{..._,background:d.paper,padding:"9px 11px",display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[c(Oa,{children:"Buy it with"}),S("div",{style:{display:"flex",alignItems:"center",gap:5},children:[[0,1].map(e=>c("span",{style:{width:26,height:22,borderRadius:3,flex:"none",position:"relative",overflow:"hidden",background:d.card},children:c(zo,{size:17,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})},e)),c("span",{style:{fontSize:"5.69cqw",fontWeight:700,color:d.muted},children:"+"}),S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1},children:[c("span",{style:{fontSize:"3.65cqw",color:d.muted,textDecoration:"line-through"},children:"$1,024"}),c("b",{style:{fontSize:"6.02cqw",color:d.rust,lineHeight:1},children:"$899"})]})]})]}),checkoutcta:S("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 13px",gap:8,...xe(d.ink,d.ink2)},children:[S("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",color:d.warm,fontWeight:700},children:"READY TO ORDER"}),c("b",{style:{fontSize:"6.63cqw",color:d.onInk,lineHeight:1},children:"$1,956"}),c("span",{style:{fontSize:"3.65cqw",color:d.onInk,opacity:.65},children:"4 items \xB7 fitted free"})]}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"6px 10px",borderRadius:2,background:d.warm,color:d.ink,flex:"none"},children:"CHECKOUT"})]}),contact:c(ie,{title:"Who do you need?",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[["Fitment help","the workshop"],["Order status","the front desk"],["Trade accounts","sales"]].map(([e,o])=>S("div",{style:{display:"flex",alignItems:"center",gap:5},children:[c("b",{style:{flex:1,fontSize:"4.31cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o}),c("span",{style:{fontSize:"4.64cqw",color:d.rust,lineHeight:1},children:"\u203A"})]},e))})}),contactlocations:c(ie,{title:"Find us",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(2,1fr)",gap:5,minHeight:0},children:[["Brisbane","7 Kerry Rd","Mon\u2013Sat"],["Townsville","12 Enterprise","Mon\u2013Fri"]].map(([e,o,t])=>S("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:"5px 6px",display:"flex",flexDirection:"column",gap:1},children:[c("b",{style:{fontSize:"4.31cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.32cqw",color:d.muted},children:o}),c("span",{style:{fontSize:"3.32cqw",color:d.rust,fontWeight:700},children:t})]},e))})}),form:c(ie,{title:"Send us a message",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[S("div",{style:{display:"flex",gap:5},children:[c(Kl,{label:"Name"}),c(Kl,{label:"Email"})]}),c(Kl,{label:"Message",filled:!0}),c(vy,{children:"SEND"})]})}),appointmentbooking:c(ie,{title:"Book a fitting",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[c("div",{style:{display:"flex",gap:3},children:["Mon","Tue","Wed","Thu"].map((e,o)=>c("span",{style:{flex:1,textAlign:"center",fontSize:"3.32cqw",fontWeight:o===2?700:500,padding:"4px 0",borderRadius:3,background:o===2?d.text:d.paper,color:o===2?d.onInk:d.muted},children:e},e))}),c("div",{style:{display:"flex",gap:3},children:["8:00","10:30","13:00","15:30"].map((e,o)=>c("span",{style:{flex:1,textAlign:"center",fontSize:"3.32cqw",padding:"4px 0",borderRadius:3,border:`1px solid ${o===1?d.rust:d.rule}`,color:o===1?d.rust:d.muted,background:o===3?d.paper:d.card,textDecoration:o===3?"line-through":"none"},children:e},e))})]})}),reviewform:c(ie,{title:"Leave a review",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[c(fd,{filled:4,size:14}),c(Kl,{label:"Your review",filled:!0}),c(vy,{children:"POST"})]})}),submitbuild:c(ie,{title:"Show us your build",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:3,border:`1px dashed ${d.mark1}`,borderRadius:5,background:d.paper},children:[c("span",{style:{fontSize:"6.63cqw",lineHeight:1,color:d.rust,fontWeight:300},children:"+"}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"Drop a photo of your rig"})]})}),masthead:S("div",{style:{..._,background:d.paper,display:"flex",flexDirection:"column",justifyContent:"center",padding:"0 13px",gap:5},children:[c("span",{style:{height:1.5,background:d.text}}),c("span",{style:{fontSize:"7.65cqw",fontWeight:800,letterSpacing:"0.02em",color:d.text,lineHeight:1},children:"THE TRACK"}),S("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"3.65cqw",letterSpacing:"0.1em",textTransform:"uppercase",color:d.muted},children:[c("span",{children:"Issue 14"}),c("span",{children:"Spring 2026"})]}),c("span",{style:{height:1,background:d.rule}})]}),featuredcover:S("div",{style:{..._,overflow:"hidden",...xe(d.ink,d.inkSoft2)},children:[c(zo,{size:92,style:{right:-18,top:-14}}),c("div",{style:{position:"absolute",inset:0,background:`linear-gradient(0deg,${d.scrim},transparent 62%)`}}),S("div",{style:{position:"absolute",left:12,right:12,bottom:11,display:"flex",flexDirection:"column",gap:3},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.warm},children:"FEATURE"}),c("span",{style:{fontSize:"6.16cqw",lineHeight:1.15,fontWeight:700,color:d.onInk},children:"Four days on the Madigan Line"})]})]}),longread:S("div",{style:{..._,background:d.card,padding:"10px 14px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.14em",fontWeight:700,color:d.rust},children:"12 MIN READ"}),c("span",{style:{fontSize:"6.02cqw",lineHeight:1.15,fontWeight:700,color:d.text},children:"What breaks first, and why"}),c(Le,{children:"Every failure starts in the same place \u2014 not the rim, not"}),c(Le,{w:"62%",children:"the tyre, but the bolt nobody re-torqued."})]}),series:c(ie,{title:"Recurring columns",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[["Shed Notes","Monthly"],["Track Tested","Fortnightly"],["Reader Rigs","Weekly"]].map(([e,o])=>S("div",{style:{display:"flex",alignItems:"center",gap:6},children:[c("span",{style:{width:3,height:12,borderRadius:2,background:d.rust,flex:"none"}}),c("b",{style:{flex:1,fontSize:"4.64cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:o})]},e))})}),events:c(ie,{title:"Latest posts",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[[d.inkSoft,d.inkSoft2,"Madigan Line, four days"],[d.rust,d.warm,"Why offset beats width"]].map(([e,o,t])=>S("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[c("span",{style:{width:24,height:18,borderRadius:3,flex:"none",...xe(e,o,150)}}),S("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[c("b",{style:{fontSize:"4.31cqw",color:d.text},children:t}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"4 Sep \xB7 Shed Notes"})]})]},t))})}),docmasthead:S("div",{style:{..._,background:d.card,padding:"12px 14px",display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.muted},children:"POLICY"}),c("span",{style:{fontSize:"6.49cqw",fontWeight:700,color:d.text,lineHeight:1.1},children:"Returns & refunds"}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"Version 3 \xB7 Updated 4 Sep 2026"}),c("span",{style:{height:2,width:26,background:d.rust,borderRadius:1}})]}),docbody:c("div",{style:{..._,background:d.card,padding:"9px 13px",display:"flex",flexDirection:"column",gap:3,justifyContent:"center"},children:[["1.","You may return an unfitted wheel within 30 days."],["2.","Fitted wheels are covered by the structural warranty."],["3.","Freight on a change of mind is yours."]].map(([e,o])=>S("div",{style:{display:"flex",gap:5},children:[c("b",{style:{fontSize:"3.98cqw",color:d.rust,flex:"none"},children:e}),c(Le,{children:o})]},e))}),docmetacards:c(ie,{title:"At a glance",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(2,1fr)",gap:5,minHeight:0},children:[["30 days","To return"],["5 years","Structural"],["Free","Fitting"],["48 hrs","Dispatch"]].map(([e,o])=>S("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:"5px 6px",display:"flex",flexDirection:"column",gap:1},children:[c("b",{style:{fontSize:"5.31cqw",color:d.text,lineHeight:1},children:e}),c("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:o})]},o))})}),doctabs:S("div",{style:{..._,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:0,padding:"0 11px"},children:[c("div",{style:{display:"flex",gap:0},children:["Returns","Warranty","Shipping"].map((e,o)=>c("span",{style:{fontSize:"3.98cqw",fontWeight:o===0?700:500,padding:"5px 8px",color:o===0?d.text:d.muted,background:o===0?d.paper:"transparent",borderRadius:"4px 4px 0 0",border:`1px solid ${o===0?d.rule:"transparent"}`,borderBottom:"none"},children:e},e))}),c("span",{style:{height:1,background:d.rule}}),S("div",{style:{paddingTop:6,display:"flex",flexDirection:"column",gap:2},children:[c(Le,{children:"Unfitted wheels come back within 30 days, no questions."}),c(Le,{w:"58%",children:"Freight on a change of mind is yours."})]})]}),paragraphs:S("div",{style:{..._,background:d.card,padding:"11px 14px",display:"flex",gap:10,alignItems:"center"},children:[c("span",{style:{flex:1,fontSize:"5.86cqw",lineHeight:1.2,fontWeight:700,color:d.text},children:"The right wheel is the boring one."}),S("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:[c(Le,{children:"Forged, correctly offset, rated for what you actually"}),c(Le,{children:"carry. Everything else is a photograph."})]})]}),keyfeatures:c(ie,{title:"Key features",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:["Flow-formed barrel","1250 kg per corner","Hub-centric fit"].map(e=>S("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[c("span",{style:{fontSize:"4.64cqw",color:d.rust,fontWeight:700,lineHeight:1},children:"\u2713"}),c("span",{style:{fontSize:"4.31cqw",color:d.text},children:e})]},e))})}),statsparagraph:S("div",{style:{..._,background:d.paper,padding:"10px 12px",display:"flex",gap:10,alignItems:"center"},children:[S("div",{style:{flex:"none",display:"flex",flexDirection:"column",gap:5},children:[c(La,{n:"27k",label:"Rigs"}),c(La,{n:"4.9",label:"Rating"})]}),S("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:[c(Le,{children:"Twelve years of fitting the same three questions, and the"}),c(Le,{children:"answer has not moved: load rating, offset, then looks."})]})]}),chart:S(ie,{title:"Load vs weight",children:[c("div",{style:{flex:1,display:"flex",alignItems:"flex-end",gap:5,paddingBottom:2},children:[38,62,84,71,96].map((e,o)=>c("span",{style:{flex:1,height:`${e}%`,borderRadius:"2px 2px 0 0",background:o===4?d.rust:d.mark1}},o))}),c("span",{style:{height:1,background:d.rule,marginTop:-4}})]}),mockup:c("div",{style:{..._,overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center",...xe(d.inkSoft,d.ink)},children:S("div",{style:{width:"72%",height:"74%",borderRadius:4,overflow:"hidden",background:d.card,boxShadow:`0 6px 14px ${d.scrim}`},children:[c("div",{style:{height:9,background:d.paper,display:"flex",alignItems:"center",gap:2,padding:"0 4px"},children:[0,1,2].map(e=>c("span",{style:{width:2.5,height:2.5,borderRadius:"50%",background:d.mark1}},e))}),S("div",{style:{padding:5,display:"flex",flexDirection:"column",gap:3},children:[c("span",{style:{height:4,width:"56%",borderRadius:1,background:d.mark2}}),c("span",{style:{height:14,borderRadius:2,...xe(d.paper,d.paper2,150)}}),c("span",{style:{height:3,width:"38%",borderRadius:1,background:d.rust}})]})]})}),manifesto:c("div",{style:{..._,overflow:"hidden",display:"flex",alignItems:"center",padding:"0 16px",...xe(d.ink,d.ink2)},children:S("span",{style:{fontSize:"6.63cqw",lineHeight:1.2,fontWeight:700,color:d.onInk},children:["We build for the ",c("span",{style:{color:d.warm},children:"last"})," ten percent of the track."]})}),timeline:c(ie,{title:"Our story",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center",gap:6,paddingLeft:4},children:[["1998","One shed, one lathe."],["2009","First forged rim."],["2024","27,000 rigs on."]].map(([e,o],t)=>S("div",{style:{display:"flex",gap:7,alignItems:"flex-start",position:"relative"},children:[t<2&&c("span",{style:{position:"absolute",left:3,top:8,bottom:-8,width:1,background:d.rule}}),c("span",{style:{width:7,height:7,borderRadius:"50%",flex:"none",marginTop:1,background:d.rust,zIndex:1}}),S("div",{style:{display:"flex",flexDirection:"column",gap:0,minWidth:0},children:[c("b",{style:{fontSize:"4.64cqw",color:d.text},children:e}),c(Le,{children:o})]})]},e))})}),timelinetrack:S("div",{style:{..._,padding:"0 12px",display:"flex",flexDirection:"column",gap:10,justifyContent:"center",...xe(d.ink,d.inkSoft)},children:[c("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"Milestones"}),S("div",{style:{position:"relative",display:"flex",justifyContent:"space-between",paddingTop:7},children:[c("span",{style:{position:"absolute",left:0,right:0,top:3,height:1,background:d.mark2,opacity:.55}}),["1998","2009","2016","2024"].map((e,o)=>S("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:3,position:"relative"},children:[c("span",{style:{position:"absolute",top:-7,width:6,height:6,borderRadius:"50%",background:o===3?d.warm:d.mark1}}),c("span",{style:{fontSize:"4.31cqw",fontWeight:700,color:o===3?d.warm:d.onInk,opacity:o===3?1:.75},children:e})]},e))]})]}),footprint:S("div",{style:{..._,overflow:"hidden",...xe(d.paper,d.paper2,150)},children:[c("span",{style:{position:"absolute",left:"8%",top:"18%",width:"62%",height:"64%",borderRadius:"48% 52% 40% 60% / 55% 45% 55% 45%",background:d.mark1,opacity:.75}}),c("span",{style:{position:"absolute",left:"52%",top:"52%",width:"34%",height:"34%",borderRadius:"58% 42% 55% 45% / 45% 58% 42% 55%",background:d.mark2,opacity:.55}}),[["26%","38%"],["44%","58%"],["62%","34%"]].map(([e,o])=>c("span",{style:{position:"absolute",left:e,top:o,width:7,height:7,borderRadius:"50% 50% 50% 0",transform:"rotate(-45deg)",background:d.rust}},e)),c("span",{style:{position:"absolute",left:11,bottom:9,fontSize:"4.64cqw",fontWeight:700,color:d.text},children:"3 fitting bays"})]}),banner:S("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 13px",gap:8,background:d.rust},children:[S("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[c("b",{style:{fontSize:"6.02cqw",color:d.onInk},children:"End of season \xB7 20% off"}),c("span",{style:{fontSize:"3.98cqw",color:d.onInk,opacity:.8},children:"Fitted free, this month only."})]}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"5px 9px",borderRadius:2,background:d.onInk,color:d.text,flex:"none"},children:"SHOP"})]}),titlewithbuttons:S("div",{style:{..._,background:d.paper,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:7,padding:"0 14px",textAlign:"center"},children:[c("span",{style:{fontSize:"6.49cqw",lineHeight:1.15,fontWeight:700,color:d.text},children:"Not sure what fits?"}),S("div",{style:{display:"flex",gap:5},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"5px 9px",borderRadius:2,background:d.text,color:d.onInk},children:"FIND MY FIT"}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"5px 9px",borderRadius:2,border:`1px solid ${d.text}`,color:d.text},children:"CALL US"})]})]}),ticker:c("div",{style:{..._,overflow:"hidden",background:d.ink,display:"flex",alignItems:"center"},children:c("span",{style:{whiteSpace:"nowrap",fontSize:"6.29cqw",fontWeight:800,letterSpacing:"0.06em",color:d.warm,marginLeft:-14},children:"FREE FITTING \xB7 48HR DISPATCH \xB7 FREE FITTING \xB7 48HR DISPATCH"})}),countdown:S("div",{style:{..._,padding:"10px 12px",display:"flex",flexDirection:"column",alignItems:"center",gap:6,justifyContent:"center",...xe(d.ink,d.ink2)},children:[c("span",{style:{fontSize:"3.65cqw",fontWeight:700,letterSpacing:"0.16em",textTransform:"uppercase",color:d.muted},children:"Back online in"}),c("div",{style:{display:"flex",alignItems:"flex-start",gap:5},children:[["23","Hours"],["59","Minutes"],["48","Seconds"]].map(([e,o],t)=>S("div",{style:{display:"flex",alignItems:"flex-start",gap:5},children:[t>0&&c("b",{style:{fontSize:"9.5cqw",lineHeight:1,color:d.warm},children:":"}),S("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:2},children:[c("b",{style:{fontSize:"11.5cqw",lineHeight:1,color:d.onInk,fontVariantNumeric:"tabular-nums"},children:e}),c("span",{style:{fontSize:"3.2cqw",letterSpacing:"0.1em",textTransform:"uppercase",opacity:.62,color:d.onInk},children:o})]})]},o))})]}),breadcrumb:c("div",{style:{..._,background:d.card,display:"flex",alignItems:"center",padding:"0 13px"},children:S("span",{style:{fontSize:"4.64cqw",color:d.muted},children:["Home ",c("span",{style:{opacity:.5},children:"/"})," Wheels ",c("span",{style:{opacity:.5},children:"/"})," ",c("span",{style:{color:d.text,fontWeight:700},children:"20 inch"})]})}),categorybar:S("div",{style:{..._,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:7,padding:"0 11px"},children:[c("div",{style:{display:"flex",gap:5},children:["All","Wheels","Tyres","Lift"].map((e,o)=>c("span",{style:{fontSize:"3.98cqw",fontWeight:o===0?700:500,padding:"4px 7px",borderRadius:99,background:o===0?d.text:d.paper,color:o===0?d.onInk:d.muted},children:e},e))}),c("span",{style:{height:1,background:d.rule}})]}),intro:S("div",{style:{..._,overflow:"hidden",background:d.card},children:[c("div",{style:{position:"absolute",inset:0,...xe(d.ink,d.inkSoft2)}}),c(zo,{size:64,style:{right:8,top:6}}),S("div",{style:{position:"absolute",left:16,right:16,bottom:8,top:"46%",background:d.paper,borderRadius:6,padding:"8px 11px",display:"flex",flexDirection:"column",gap:2,boxShadow:`0 -4px 10px ${d.scrim}`},children:[c("span",{style:{fontSize:"5.69cqw",fontWeight:700,color:d.text},children:"Since 1998"}),c(Le,{children:"One shed, one lathe, one idea."}),c(Le,{w:"66%",children:"It turned out to be right."})]})]}),gallerygrid:c(ie,{title:"From our customers",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,1fr)",gap:4,minHeight:0},children:[[d.rust,d.warm],[d.inkSoft,d.ink],[d.paper2,d.mark2],[d.ink,d.inkSoft2],[d.warm,d.paper2],[d.mark2,d.inkSoft]].map(([e,o],t)=>c("div",{style:{borderRadius:3,...xe(e,o,140+t*22)}},t))})}),gallery:S(ie,{title:"Gallery",children:[c("div",{style:{display:"flex",gap:8,alignItems:"center",marginTop:-2},children:["On the truck","Studio","Close-ups"].map((e,o)=>c("span",{style:{fontSize:"3.98cqw",fontWeight:o===0?700:500,color:o===0?d.text:d.muted,borderBottom:`1.5px solid ${o===0?d.rust:"transparent"}`,paddingBottom:2},children:e},e))}),c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:4,minHeight:0},children:[[d.rust,d.warm],[d.ink,d.inkSoft],[d.paper2,d.mark2]].map(([e,o],t)=>c("div",{style:{borderRadius:3,...xe(e,o,150+t*20)}},t))})]}),ordersummary:S(ie,{title:"Order summary",children:[S("div",{style:{display:"flex",gap:6,alignItems:"center",paddingBottom:4},children:[c("span",{style:{width:26,height:26,borderRadius:4,position:"relative",overflow:"hidden",flex:"none",...xe(d.paper,d.paper2,150)},children:c(zo,{size:18,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),S("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[c("b",{style:{fontSize:"4.31cqw",color:d.text},children:"Ridge Grappler"}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"20\xD79 +12 \xB7 qty 4"})]})]}),S("div",{style:{flex:1,minHeight:0,display:"flex",flexDirection:"column",justifyContent:"center"},children:[c(Ho,{k:"Subtotal",v:"$1,956"}),c(Ho,{k:"Fitting",v:"Free"}),S("div",{style:{display:"flex",justifyContent:"space-between",paddingTop:5,fontSize:"4.64cqw"},children:[c("b",{style:{color:d.text},children:"Total"}),c("b",{style:{color:d.text,fontSize:"6.02cqw"},children:"$1,956"})]})]})]}),deliveryoptions:c(ie,{title:"Delivery",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[["Standard","3\u20135 days","Free",!0],["Express","Next day","$19",!1]].map(([e,o,t,r])=>S("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"5px 6px",borderRadius:4,border:`1px solid ${r?d.rust:d.rule}`,background:r?d.paper:d.card},children:[c("span",{style:{width:7,height:7,borderRadius:"50%",flex:"none",border:`1.5px solid ${r?d.rust:d.mark1}`,background:r?d.rust:"transparent"}}),c("span",{style:{flex:1,fontSize:"4.31cqw",fontWeight:600,color:d.text},children:e}),c("span",{style:{fontSize:"3.98cqw",color:d.muted},children:o}),c("b",{style:{fontSize:"4.31cqw",color:d.text},children:t})]},e))})}),paymentbadges:S("div",{style:{..._,background:d.paper,display:"flex",flexDirection:"column",gap:8,justifyContent:"center",padding:"0 12px"},children:[c(Oa,{children:"Ways to pay"}),c("div",{style:{display:"flex",gap:5},children:[["VISA",d.ink],["MC",d.rust],["AMEX",d.inkSoft],["PayPal",d.ink2]].map(([e,o])=>c("span",{style:{flex:1,textAlign:"center",fontSize:"3.65cqw",fontWeight:800,letterSpacing:"0.06em",color:d.onInk,borderRadius:3,padding:"6px 0",background:o},children:e},e))})]}),stats:S("div",{style:{..._,padding:"10px 12px",display:"flex",flexDirection:"column",gap:9,justifyContent:"center",...xe(d.ink,d.ink2)},children:[c("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"By the numbers"}),S("div",{style:{display:"flex",gap:8},children:[c(La,{n:"27k",label:"Rigs fitted",tone:d.onInk}),c(La,{n:"12",label:"Years",tone:d.onInk}),c(La,{n:"4.9",label:"Avg rating",tone:d.warm})]})]}),testimonials:S("div",{style:{..._,overflow:"hidden",background:d.paper,padding:"10px 11px",display:"flex",flexDirection:"column",gap:6,justifyContent:"center"},children:[c("span",{style:{position:"absolute",right:10,top:2,fontSize:"22.4cqw",lineHeight:1,fontWeight:800,color:d.rust,opacity:.16},children:"\u201D"}),c(fd,{filled:5,size:7}),c("span",{style:{position:"relative",fontSize:"5.31cqw",lineHeight:1.35,color:d.text,fontWeight:600},children:"\u201CTook them out to the Simpson and back. Not one chip.\u201D"}),S("div",{style:{display:"flex",alignItems:"center",gap:5},children:[c(Cy,{}),c("span",{style:{fontSize:"3.98cqw",color:d.muted},children:"Dave M. \xB7 Hilux N80"})]})]}),reviews:S(ie,{title:"Reviews",children:[c("div",{style:{display:"flex",gap:4,height:22},children:[[d.inkSoft,d.inkSoft2],[d.rust,d.warm],[d.ink,d.inkSoft],[d.mark2,d.mark1]].map(([e,o],t)=>c("div",{style:{flex:1,borderRadius:3,...xe(e,o,140+t*15)}},t))}),c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[["Dave M.",5,"Not one chip after the Simpson."],["Sara K.",4,"Fitted in an hour, no fuss."]].map(([e,o,t])=>S("div",{style:{display:"flex",gap:5,alignItems:"flex-start"},children:[c(Cy,{size:12}),S("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[S("div",{style:{display:"flex",gap:4,alignItems:"center"},children:[c("b",{style:{fontSize:"3.98cqw",color:d.text},children:e}),c(fd,{filled:o})]}),c(Le,{children:t})]})]},e))})]}),logos:S("div",{style:{..._,display:"flex",flexDirection:"column",gap:9,justifyContent:"center",padding:"0 12px",...xe(d.ink,d.inkSoft)},children:[c("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"As fitted by"}),c("div",{style:{display:"grid",gridTemplateColumns:"repeat(4,1fr)",gap:8},children:["ARB","TJM","IRONMAN","OPPOSITE"].map(e=>c("span",{style:{textAlign:"center",fontSize:"4.31cqw",fontWeight:800,letterSpacing:"0.08em",color:d.onInk,opacity:.82},children:e},e))})]}),prose:S("div",{style:{..._,background:d.paper,padding:"11px 14px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[c("span",{style:{fontSize:"5.86cqw",fontWeight:700,color:d.text},children:"Why offset matters"}),S("div",{style:{display:"flex",gap:6},children:[c("span",{style:{fontSize:"15.3cqw",lineHeight:.78,fontWeight:800,color:d.rust,marginTop:1},children:"T"}),S("div",{style:{display:"flex",flexDirection:"column"},children:[c(Le,{children:"he number on the back of your wheel decides whether the"}),c(Le,{w:"76%",children:"tyre sits under the guard or an inch outside it."})]})]})]}),cards:c(ie,{title:"What you get",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[["Fitted free","In store, same day."],["5 yr cover","Structural, no fine print."],["Swap it","30 days, any reason."]].map(([e,o])=>S("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:6,display:"flex",flexDirection:"column",gap:2},children:[c("span",{style:{width:11,height:11,borderRadius:3,background:d.rust,opacity:.9}}),c("b",{style:{fontSize:"3.98cqw",color:d.text},children:e}),c(Le,{children:o})]},e))})}),faq:c(ie,{title:"Questions",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center"},children:[["Will these fit my Hilux?",!0],["Do you fit them for me?",!1],["What if I pick wrong?",!1]].map(([e,o])=>S("div",{style:{borderBottom:`1px solid ${d.rule}`,padding:"4px 2px"},children:[S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:6},children:[c("b",{style:{fontSize:"4.31cqw",color:d.text},children:e}),c("span",{style:{fontSize:"4.64cqw",color:d.muted,lineHeight:1},children:o?"\u2212":"+"})]}),o&&c(Le,{w:"90%",children:"Use the fitment finder \u2014 it reads your build, not just the model."})]},e))})}),hero:S("div",{style:{..._,overflow:"hidden",...xe(d.ink,d.ink2)},children:[c("div",{style:{..._,background:`linear-gradient(90deg,${d.scrim},transparent 70%)`}}),c("div",{style:{position:"relative",height:"100%",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",padding:"12px 14px",gap:5},children:c(Sy,{over:"NEW \xB7 SUMMER",overTone:d.warm,head:"Built for the worst road you own",cta:"SHOP ALL",ctaBg:d.warm,ctaFg:d.ink,tone:d.onInk})}),c(zo,{size:104,style:{right:-24,bottom:-30}})]}),herosingle:S("div",{style:{..._,display:"flex",background:d.paper,overflow:"hidden"},children:[c("div",{style:{flex:1,padding:12,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:c(Sy,{over:"ALL-TERRAIN",overTone:d.rust,head:"Grip that does not ask",headSize:12,cta:"EXPLORE",ctaBg:d.text,ctaFg:d.onInk,tone:d.text})}),c("div",{style:{flex:1,position:"relative",...xe(d.inkSoft,d.inkSoft2)},children:c(zo,{size:74,style:{right:-14,top:16}})})]}),productgrid:c(ie,{title:"Best sellers",children:S("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[c(id,{name:"Ridge 19",price:"$365"}),c(id,{name:"Ridge 29",price:"$410"}),c(id,{name:"Ridge 39",price:"$455"})]})}),collections:c(ie,{title:"Shop by category",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[["Wheels",d.inkSoft,d.inkSoft2],["Tyres",d.rust,d.warm],["Lift kits",d.ink,d.inkSoft]].map(([e,o,t])=>c("div",{style:{borderRadius:4,display:"flex",alignItems:"flex-end",padding:5,color:d.onInk,...xe(o,t)},children:c("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.04em"},children:e})},e))})}),producthero:S("div",{style:{..._,display:"flex",background:d.card,overflow:"hidden"},children:[c("div",{style:{flex:1.1,position:"relative",...xe(d.paper,d.paper2,150)},children:c(zo,{size:78,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),S("div",{style:{flex:1,padding:"10px 10px 10px 8px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.rust},children:"NITTO"}),c("b",{style:{fontSize:"6.29cqw",color:d.text},children:"Ridge Grappler"}),c("span",{style:{fontSize:"6.63cqw",fontWeight:700,color:d.text},children:"$489"}),c("span",{style:{alignSelf:"flex-start",fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"4px 8px",borderRadius:2,background:d.text,color:d.onInk},children:"ADD TO CART"})]})]}),spectable:c(ie,{title:"Specifications",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center"},children:[c(Ho,{k:"Diameter",v:'20"'}),c(Ho,{k:"Width",v:"9.0J"}),c(Ho,{k:"Offset",v:"+12"}),c(Ho,{k:"Load",v:"1250 kg"})]})}),fitmenttable:c(ie,{title:"Will it fit?",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center"},children:[c(Ho,{k:"Hilux N80",v:"20\xD79 +12",ok:!0}),c(Ho,{k:"Ranger PX3",v:"20\xD79 +12",ok:!0}),c(Ho,{k:"LC79",v:"17\xD78 \u221210",ok:!0})]})}),brandstrip:S("div",{style:{..._,background:d.paper,display:"flex",flexDirection:"column",gap:8,justifyContent:"center",padding:"0 12px"},children:[c(Oa,{children:"Brands we carry"}),c("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:["NITTO","BFG","FUEL","TOYO"].map(e=>c("span",{style:{fontSize:"4.64cqw",fontWeight:800,letterSpacing:"0.1em",color:d.mark2},children:e},e))})]}),processsteps:S("div",{style:{..._,background:d.paper,padding:10,display:"flex",flexDirection:"column",gap:7,justifyContent:"center"},children:[c(Oa,{children:"How it works"}),c("div",{style:{display:"flex",gap:6},children:["Pick your rig","Match the fit","We fit it"].map((e,o)=>S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:2},children:[c("span",{style:{width:11,height:11,borderRadius:"50%",background:d.text,color:d.onInk,fontSize:"3.98cqw",display:"flex",alignItems:"center",justifyContent:"center",fontWeight:700},children:o+1}),c("span",{style:{fontSize:"3.98cqw",color:d.text,fontWeight:600},children:e})]},e))})]}),detailrows:c("div",{style:{..._,background:d.card,display:"flex",flexDirection:"column",overflow:"hidden"},children:[["Forged, not cast","Half the weight, twice the road.",!1],["Fits your load","Rated to 1250 kg a corner.",!0]].map(([e,o,t])=>{let r=c("div",{style:{flex:1,...xe(t?d.rust:d.inkSoft,t?d.warm:d.inkSoft2)}},"art"),a=S("div",{style:{flex:1.1,padding:8,display:"flex",flexDirection:"column",gap:2,justifyContent:"center"},children:[c("b",{style:{fontSize:"4.64cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.98cqw",color:d.muted,lineHeight:1.3},children:o})]},"tx");return c("div",{style:{flex:1,display:"flex",minHeight:0},children:t?[a,r]:[r,a]},e)})}),specstrip:c("div",{style:{..._,background:d.ink,color:d.onInk,display:"flex",alignItems:"center",justifyContent:"space-around",padding:"0 8px"},children:[["5 yr","Warranty"],["Free","Fitting"],["48 hr","Dispatch"]].map(([e,o])=>S("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:1},children:[c("b",{style:{fontSize:"5.69cqw",letterSpacing:"0.02em"},children:e}),c("span",{style:{fontSize:"3.65cqw",color:d.mark2,letterSpacing:"0.1em",textTransform:"uppercase"},children:o})]},o))})},wy={subscribe:S("div",{style:{..._,padding:13,display:"flex",flexDirection:"column"},children:[S("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:8},children:[S("div",{style:{display:"flex",alignItems:"center",gap:6},children:[c(R,{w:8,h:8,r:2,tone:"accent"}),c(R,{w:38,h:7,r:3,tone:"dark"}),c(R,{w:16,h:7,r:3,tone:"accent"})]}),c(R,{w:38,h:4,r:2,tone:"soft"})]}),c("div",{style:{height:1,background:Fe.line,marginBottom:10}}),S("div",{style:{flex:1,display:"flex",gap:10,border:`1px solid ${Fe.line}`,borderRadius:7,padding:10},children:[S("div",{style:{flex:1.1,display:"flex",flexDirection:"column",justifyContent:"center",gap:5},children:[c(R,{w:"46%",h:3,r:2,tone:"accent"}),c(R,{w:"84%",h:8,r:4,tone:"dark"}),c(R,{w:"56%",h:8,r:4,tone:"accent"}),c(R,{w:"96%",h:3,r:2,tone:"soft",style:{marginTop:2}}),S("div",{style:{display:"flex",gap:5,marginTop:4},children:[c("div",{style:{flex:1,height:13,borderRadius:5,border:`1px solid ${Fe.line}`,background:Fe.block}}),c(R,{w:34,h:13,r:5,tone:"accent"})]})]}),S("div",{style:{flex:1,background:Fe.block,borderRadius:6,padding:8,display:"flex",flexDirection:"column",gap:6},children:[c(R,{w:"52%",h:4,r:2,tone:"accent"}),Array.from({length:3}).map((e,o)=>S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:6,borderTop:o?`1px solid ${Fe.line}`:"none",paddingTop:o?4:0},children:[c(R,{w:34,h:4,r:2,tone:"dark"}),c(R,{w:16,h:3,r:2,tone:"soft"})]},o))]})]})]}),split:S("div",{style:{..._,display:"flex"},children:[c("div",{style:{width:"44%",background:sd}}),S("div",{style:{flex:1,padding:15,display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[c(R,{w:"44%",h:5,r:3,tone:"accent"}),c(R,{w:"88%",h:8,r:4,tone:"dark"}),c(R,{w:"70%",h:8,r:4,tone:"dark"}),c(R,{w:"94%",h:5,r:2,tone:"soft",style:{marginTop:2}}),c(R,{w:"80%",h:5,r:2,tone:"soft"}),c(R,{w:"40%",h:13,r:6,tone:"accent",style:{marginTop:5}})]})]}),sectionheader:S(ky,{children:[c(R,{w:"18%",h:6,r:3,tone:"accent",style:{position:"absolute",top:15,right:16}}),S("div",{style:{..._,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:10},children:[S("div",{style:{display:"flex",alignItems:"center",gap:9},children:[c(R,{w:16,h:16,r:4,tone:"accent"}),c(R,{w:"20%",h:9,r:4,tone:"dark"})]}),c(R,{w:"62%",h:10,r:5,tone:"dark"}),c(R,{w:"42%",h:6,r:3,tone:"soft"})]})]}),header:c("div",{style:{..._,padding:14,display:"flex",flexDirection:"column",justifyContent:"center"},children:S("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[c(R,{w:"22%",h:12,r:4,tone:"dark"}),S("div",{style:{display:"flex",gap:9,alignItems:"center"},children:[c(R,{w:26,h:6,r:3,tone:"soft"}),c(R,{w:26,h:6,r:3,tone:"soft"}),c(R,{w:26,h:6,r:3,tone:"soft"}),c(R,{w:18,h:14,r:5,tone:"accent"})]})]})}),footer:S("div",{style:{..._,padding:15,display:"flex",flexDirection:"column",justifyContent:"center",gap:12},children:[S("div",{style:{display:"flex",gap:14},children:[S("div",{style:{flex:1.4,display:"flex",flexDirection:"column",gap:6},children:[c(R,{w:"60%",h:9,r:4,tone:"dark"}),c(R,{w:"90%",h:5,r:2,tone:"soft"}),c(R,{w:"70%",h:5,r:2,tone:"soft"})]}),[0,1].map(e=>S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:6},children:[c(R,{w:"50%",h:6,r:3,tone:"dark"}),c(R,{w:"80%",h:5,r:2,tone:"soft"}),c(R,{w:"66%",h:5,r:2,tone:"soft"})]},e))]}),c("div",{style:{height:1,background:Fe.line}}),S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[c(R,{w:"30%",h:5,r:2,tone:"soft"}),c(R,{w:"16%",h:5,r:2,tone:"soft"})]})]}),grid:c("div",{style:{..._,padding:14,display:"grid",gridTemplateColumns:"1fr 1fr",gridTemplateRows:"1fr 1fr",gap:9},children:Array.from({length:4}).map((e,o)=>c("div",{style:{borderRadius:6,background:Fe.block}},o))}),blanksection:c("div",{style:{..._,padding:14,display:"flex"},children:S("div",{style:{flex:1,border:`1px dashed ${Fe.line}`,borderRadius:7,display:"flex",alignItems:"center",justifyContent:"center",position:"relative"},children:[c(R,{w:14,h:2,r:1,tone:"tint"}),c(R,{w:2,h:14,r:1,tone:"tint",style:{position:"absolute"}})]})}),spacer:S("div",{style:{..._,padding:14,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[c(R,{w:"100%",h:6,r:3,tone:"soft"}),c(R,{w:16,h:22,r:3,tone:"block",style:{alignSelf:"center"}}),c(R,{w:"100%",h:6,r:3,tone:"soft"})]}),divider:c("div",{style:{..._,padding:14,display:"flex",alignItems:"center"},children:c(R,{w:"100%",h:3,r:2,tone:"dark"})}),customhtml:S("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"center",gap:8,background:sd},children:[c(R,{w:5,h:16,r:2,tone:"dark",style:{transform:"skewX(-14deg)"}}),c(R,{w:16,h:10,r:3,tone:"accent"}),c(R,{w:5,h:16,r:2,tone:"dark",style:{transform:"skewX(14deg)"}})]}),heading:c("div",{style:{..._,padding:14,display:"flex",alignItems:"center"},children:c(R,{w:"64%",h:13,r:4,tone:"dark"})}),text:S("div",{style:{..._,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[c(R,{w:"100%",h:6,r:3,tone:"soft"}),c(R,{w:"96%",h:6,r:3,tone:"soft"}),c(R,{w:"100%",h:6,r:3,tone:"soft"}),c(R,{w:"58%",h:6,r:3,tone:"soft"})]}),image:c("div",{style:{position:"absolute",inset:14,borderRadius:7,background:sd}}),button:c("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"center"},children:c(R,{w:"34%",h:16,r:8,tone:"accent"})}),menu:S("div",{style:{..._,padding:"14px 22%",display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[c(R,{w:"48%",h:7,r:3,tone:"dark"}),c(R,{w:"82%",h:5,r:2,tone:"soft"}),c(R,{w:"66%",h:5,r:2,tone:"soft"}),c(R,{w:"74%",h:5,r:2,tone:"soft"}),c(R,{w:"58%",h:5,r:2,tone:"soft"})]}),emailform:S("div",{style:{..._,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:9},children:[c(R,{w:"56%",h:8,r:3,tone:"dark"}),S("div",{style:{display:"flex",gap:6},children:[c("div",{style:{flex:1,height:16,borderRadius:5,border:`1px solid ${Fe.line}`}}),c(R,{w:"30%",h:16,r:5,tone:"accent"})]})]}),sociallogos:c("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"center",gap:9},children:[0,1,2,3].map(e=>c(R,{w:16,h:16,r:8,tone:"dark"},e))}),search:c("div",{style:{..._,padding:"0 18%",display:"flex",alignItems:"center"},children:S("div",{style:{flex:1,height:22,borderRadius:11,border:`1px solid ${Fe.line}`,display:"flex",alignItems:"center",gap:7,padding:"0 9px"},children:[c("div",{style:{width:9,height:9,borderRadius:5,border:`2px solid ${Fe.dark}`}}),c(R,{w:"46%",h:5,r:2,tone:"soft"})]})}),cart:S("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"center",gap:7},children:[c("div",{style:{width:22,height:18,borderRadius:"3px 3px 6px 6px",border:`2px solid ${Fe.dark}`}}),c("div",{style:{padding:"2px 6px",borderRadius:6,border:`1.5px solid ${Fe.dark}`},children:c(R,{w:7,h:7,r:2,tone:"dark"})})]}),countryswitch:S("div",{style:{..._,padding:14,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:5},children:[S("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"4px 8px",border:`1px solid ${Fe.line}`},children:[c(R,{w:22,h:6,r:2,tone:"dark"}),c(R,{w:6,h:4,r:1,tone:"soft"})]}),S("div",{style:{width:"46%",display:"flex",flexDirection:"column",gap:4,padding:6,border:`1px solid ${Fe.line}`},children:[c(R,{w:"80%",h:4,r:2,tone:"accent"}),c(R,{w:"64%",h:4,r:2,tone:"soft"}),c(R,{w:"72%",h:4,r:2,tone:"soft"})]})]}),legalline:S("div",{style:{..._,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:9},children:[c("div",{style:{height:1,background:Fe.line}}),S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[c(R,{w:"38%",h:5,r:2,tone:"soft"}),S("div",{style:{display:"flex",gap:5},children:[c(R,{w:14,h:5,r:2,tone:"soft"}),c(R,{w:14,h:5,r:2,tone:"soft"}),c(R,{w:14,h:5,r:2,tone:"soft"})]})]})]}),fallback:c("div",{style:{position:"absolute",inset:14,borderRadius:8,background:Fe.block}})};function Ty({type:e}){let o=dD[e]??"",t=uD[o]??wy[o]??wy.fallback;return c("div",{className:"sf-thumb","aria-hidden":"true",style:{position:"absolute",inset:0,background:"var(--sf-thumb-thumb-bg)",pointerEvents:"none",containerType:"inline-size"},children:t})}import{jsx as br,jsxs as pD}from"react/jsx-runtime";import{StylesIcon as mD}from"efficient-easel/rail";import{Tooltip as xD}from"efficient-shell/ui";function Fy({tokenRef:e,siteId:o,onClose:t,onNotify:r,tab:a,onTabChange:n}){let s=rr();return pD("div",{className:"sf-styles",children:[br(Va,{icon:br(mD,{}),title:l("Site styles"),context:br(xD,{content:l("{name} \u2014 renamed in the Console: {place}.",{name:s,place:l("Storefront \u25B8 Sites \u25B8 Settings")}),className:"sf-name-tip",children:br("span",{className:"sf-name-text",children:s})}),onHide:t}),br("div",{className:"sf-insp-body sf-scroll",children:br(al,{tokenRef:e,siteId:o,onNotify:r,tab:a,onTabChange:n})})]})}import{jsx as Ee,jsxs as Ft,Fragment as SD}from"react/jsx-runtime";import{Fragment as Gy,useEffect as Uy,useRef as xd}from"react";import{useTreeDrag as $y}from"efficient-easel/drag";import{GlobeIcon as CD,ImageIcon as vD,LocationIcon as wD,MapIcon as kD,TextLinesIcon as TD,TrashIcon as qy}from"efficient-easel/icons";import{Subtree as jy,TreeRow as Aa,TreeRowAction as Ky,TreeSeam as Vy}from"efficient-easel/tree";import{useEaselStrings as FD}from"efficient-easel/strings";import{createPreviewSelectionContext as ID}from"efficient-easel/draw/client";var{Provider:RQ,useSelection:Ey}=ID("selectedLocationPartId");function Py(e,o,t){return`${e}::${o}::${t}`}function Ly(e){if(!e)return null;let o=e.split("::");if(o.length<3)return null;let t=o[o.length-1];if(t!=="image"&&t!=="map")return null;let r=Number(o[o.length-2]);if(!Number.isInteger(r)||r<0)return null;let a=o.slice(0,-2).join("::");return a?{nodeId:a,index:r,part:t}:null}import{useSyncExternalStore as hD}from"react";var gD={level:"groups"},Ry=gD,cd=new Set;function uo(e){Ry=e;for(let o of cd)o()}function bD(e){return cd.add(e),()=>{cd.delete(e)}}var Oy=()=>Ry;function Ay(){return hD(bD,Oy,Oy)}function By(e,o,t){let r=[];return e.forEach((a,n)=>{let s=o(a),i=r.find(f=>f.key===s);i||(i={key:s,name:t(a),items:[]},r.push(i)),i.items.push({item:a,index:n})}),r}function DQ(e){if(e<=1)return"grid-cols-1";if(e===2)return"grid-cols-2";if(e===3)return"grid-cols-3";if(e===4)return"grid-cols-4";let o=t=>e%t||t;return o(4)>=o(3)?"grid-cols-4":"grid-cols-3"}var Ra=e=>String(e?.group??""),dd=new WeakMap,yD=0;function Vl(e){let o=dd.get(e);return o||(o=`loc${++yD}`,dd.set(e,o)),o}var _y=(e,o)=>o||e||"Ungrouped",Dy={photo:"",group:"",groupName:"",name:"City name",state:"State",country:"Country",timezone:"GMT \xB7 UTC +0",address:`Address line one
17
+ Address line two`,phone:"+00 000 0000",hours:"Mon\u2013Fri 9:00\u201318:00",lat:0,lng:0,mapsUrl:""};function Tt(e){return By(e,Ra,o=>String(o?.groupName??"")).map(o=>({key:o.key,name:o.name,cards:o.items.map(t=>t.item)}))}var ud=e=>e.flatMap(o=>o.cards),Ny=(e,o,t)=>Math.min(Math.max(e,o),t);function Yl(e,o,t){let r=0;for(let a=0;a<e.length;a++)if(Ra(e[a])===o){if(r===t)return a;r++}return-1}function pd(e,o,t){let r=Tt(e);if(o<0||o>=r.length)return e;let[a]=r.splice(o,1),n=Ny(o<t?t-1:t,0,r.length);return r.splice(n,0,a),ud(r)}function md(e,o,t,r,a){let n=Tt(e),s=n.find(m=>m.key===o),i=n.find(m=>m.key===r);if(!s||!i||t<0||t>=s.cards.length)return e;let[f]=s.cards.splice(t,1),u=o===r?f:{...f,group:i.key,groupName:i.name};u!==f&&dd.set(u,Vl(f));let p=Ny(s===i&&t<a?a-1:a,0,i.cards.length);return i.cards.splice(p,0,u),ud(n)}function My(e,o){let t=Tt(e),r=t.find(n=>n.key===o),a={...Dy,group:o,groupName:r?.name??""};return r?(r.cards.push(a),ud(t)):[...e,a]}function Hy(e){let o=new Set(Tt(e).map(a=>a.key)),t=o.size+1,r=`Group ${t}`;for(;o.has(r);)r=`Group ${++t}`;return{cards:[...e,{...Dy,group:r,groupName:""}],key:r}}function zy(e,o){return e.filter(t=>Ra(t)!==o)}function Wy(e,o,t){let r=Yl(e,o,t);return r<0?e:e.filter((a,n)=>n!==r)}function HQ(e,o,t){let r=e.flatMap((s,i)=>Ra(s)===o?[i]:[]),a=e.slice();r.forEach((s,i)=>{a[s]=t[i]});let n=t.slice(r.length);return[...a.filter(s=>s!==void 0),...n]}function zQ(e,o,t){return o.flatMap(r=>{let a=e.filter(n=>Ra(n)===r);return a.length?a:t(r)})}var Zl="ContactLocations",Xl=e=>({parentId:`locations-${e}`,slot:"groups"}),Id=(e,o)=>({parentId:`locations-${e}`,slot:`cities:${o}`});function Yy(e,o){let{readOnly:t,selected:r}=o,a=FD().tree,n=o.data?.content??[],s=e.kind===Iy.kind,i=xd(null);Uy(()=>{let g=r?.type===Zl?String(r.props.id):null;g&&g!==i.current&&uo({level:"groups"}),i.current=g},[r?.props.id]);let{selectedLocationPartId:f,setSelectedLocationPartId:u,setSelectHandler:p}=Ey(),m=Ay(),x=(g,y)=>{let E=n[g];E&&o.replace(g,{type:E.type,props:{...E.props,locations:y}})},h=g=>{let y=n[g]?.props?.locations;return Array.isArray(y)?y:[]},b=$y({keyOf:g=>`group:${g.si}:${g.index}`,readOnly:!!t,canDrop:(g,y)=>y.parentId===Xl(g.si).parentId&&y.slot==="groups",onDrop:(g,y)=>{x(g.si,pd(h(g.si),g.index,y.index)),m.level==="city"&&uo({level:"groups"})},onStep:(g,y)=>{x(g.si,pd(h(g.si),g.index,y<0?g.index-1:g.index+2)),m.level==="city"&&uo({level:"groups"})}}),C=$y({keyOf:g=>`city:${g.si}:${g.group}:${g.index}`,readOnly:!!t,canDrop:(g,y)=>y.parentId===Xl(g.si).parentId&&y.slot.startsWith("cities:"),onDrop:(g,y)=>{let E=y.slot.slice(7);x(g.si,md(h(g.si),g.group,g.index,E,y.index)),uo({level:"group",key:E})},onStep:(g,y)=>{x(g.si,md(h(g.si),g.group,g.index,g.group,y<0?g.index-1:g.index+2)),m.level==="city"&&uo({level:"group",key:g.group})}}),k=xd(n);k.current=n;let v=xd(()=>{});Uy(()=>{p(g=>{let y=Ly(g);if(!y)return;let E=k.current.findIndex(F=>F.props?.id===y.nodeId);E<0||v.current(E,{level:y.part,index:y.index})})},[p]);let w=(g,y)=>{i.current=n[g]?.props?.id??null,o.select(g),uo(y),e.reveal();let E=n[g]?.props?.id;typeof E=="string"&&(y.level==="image"||y.level==="map")?u(Py(E,y.index,y.level)):u(null),typeof E=="string"&&o.scrollTo(E)};return v.current=w,{renderLocationTree:(g,y,{rowClick:E,isCollapsed:F,toggleCollapse:L})=>{let B=h(y),O=Tt(B),M=String(g.props.id),re=s&&r?.props.id===M,H=A=>Ee(Vy,{...t?{}:b.seam({place:{...Xl(y),index:A}})},`seam:${M}:groups:${A}`),W=(A,oe)=>Ee(Vy,{...t?{}:C.seam({place:{...Id(y,A),index:oe}})},`seam:${M}:cities:${A}:${oe}`);return Ft(SD,{children:[Ee(Aa,{icon:Ee(TD,{size:13}),name:l("Texts"),words:a,onSelect:()=>w(y,{level:"texts"}),selected:re&&m.level==="texts",rowProps:{onClick:E(()=>w(y,{level:"texts"}))}}),O.map((A,oe)=>{let Oe=`${M}::grp::${A.key}`,Xe=F(Oe),ro=re&&m.level==="group"&&m.key===A.key,We=A.name||A.key?_y(A.key,A.name):l("Ungrouped"),Re={...Id(y,A.key),index:A.cards.length},Ge=C.row({item:{si:y,group:A.key,index:-1},place:Re,into:Re,canDrag:!1},{onClick:E(()=>w(y,{level:"group",key:A.key}))}),De=b.row({item:{si:y,index:oe},place:{...Xl(y),index:oe}},Ge.rowProps);return Ft(Gy,{children:[oe===0&&H(0),Ee(Aa,{icon:Ee(CD,{size:13}),name:We,words:a,onSelect:()=>w(y,{level:"group",key:A.key}),selected:ro,draggable:De.draggable,dragging:De.dragging,drop:De.drop??Ge.drop,fold:{open:!Xe,label:l("group"),onToggle:()=>L(Oe)},actions:Ee(Ky,{kind:"delete",label:it("Delete {label} group ({n} city)","Delete {label} group ({n} cities)",A.cards.length,{label:We}),onClick:()=>{x(y,zy(B,A.key)),uo({level:"groups"})},children:Ee(qy,{size:15})}),rowProps:De.rowProps,children:Ee("span",{className:"es-group-count",children:A.cards.length})}),!Xe&&Ft(jy,{children:[A.cards.map((Ce,ge)=>{let Ie=Yl(B,A.key,ge),Ze=re&&m.level==="city"&&m.index===Ie,P=String(Ce?.name??"")||l("City"),le=`${M}::city::${Vl(Ce)}`,Y=F(le),{rowProps:te,...ae}=C.row({item:{si:y,group:A.key,index:ge},place:{...Id(y,A.key),index:ge}},{onClick:E(()=>w(y,{level:"city",index:Ie}))});return Ft(Gy,{children:[ge===0&&W(A.key,0),Ee(Aa,{icon:Ee(wD,{size:13}),name:P,words:a,onSelect:()=>w(y,{level:"city",index:Ie}),selected:Ze,...ae,fold:{open:!Y,label:P,onToggle:()=>L(le)},actions:Ee(Ky,{kind:"delete",label:l("Delete {name}",{name:P}),onClick:()=>{x(y,Wy(B,A.key,ge)),uo({level:"group",key:A.key})},children:Ee(qy,{size:15})}),rowProps:te}),!Y&&Ft(jy,{children:[Ee(Aa,{icon:Ee(vD,{size:13}),name:l("Image"),words:a,onSelect:()=>w(y,{level:"image",index:Ie}),selected:re&&m.level==="image"&&m.index===Ie,rowProps:{onClick:E(()=>w(y,{level:"image",index:Ie}))}}),Ee(Aa,{icon:Ee(kD,{size:13}),name:l("Map"),words:a,onSelect:()=>w(y,{level:"map",index:Ie}),selected:re&&m.level==="map"&&m.index===Ie,rowProps:{onClick:E(()=>w(y,{level:"map",index:Ie}))}})]}),W(A.key,ge+1)]},Vl(Ce))}),Ft("button",{type:"button",className:"sf-add-card",onClick:()=>{let Ce=My(B,A.key);x(y,Ce);let ge=Tt(Ce).find(Ie=>Ie.key===A.key);uo(ge&&ge.cards.length?{level:"city",index:Yl(Ce,A.key,ge.cards.length-1)}:{level:"group",key:A.key})},children:[Ee("span",{className:"sf-plus sf-plus--sm",children:"+"}),l("Add city")]})]}),H(oe+1)]},Oe)}),Ft("button",{type:"button",className:"sf-add-card",onClick:()=>{let{cards:A,key:oe}=Hy(B);x(y,A),w(y,{level:"group",key:oe})},children:[Ee("span",{className:"sf-plus sf-plus--sm",children:"+"}),l("Add group")]})]})},sectionPressed:g=>{g?.type===Zl&&uo({level:"groups"})}}}import{useEffect as OD,useRef as RD}from"react";import{createNode as Qy,newId as Jy}from"efficient-easel/data";import{useEaselApi as AD}from"efficient-easel/easel";import{ROOT_ZONE as yr,missingPinnedTypes as BD,pinnedDuplicateIds as hd}from"efficient-easel/draw";import{resetForDocumentSwitch as ED,saveStatusForNewDocument as PD,saveStatusOf as LD}from"efficient-easel/screen/lib/document-switch";function Xy(e){return!e.docId||e.saveStatus==="saving"?!1:e.seededDocId!==e.docId}function Zy(e,o){let t=e.some(n=>n?.type===de),r=e[e.length-1],a=!t&&r?.type===me?r:null;return{remove:e.filter(n=>n?.type===me&&n!==a).map(n=>String(n.props?.id??"")).filter(Boolean),seedHeader:!e.some(n=>n?.type===Ve),seedFooter:o.hasChromeDoc&&!t&&!a}}function eS(e,o){let{adapter:t,capabilities:r,currentSlug:a,docId:n,data:s,saveStatus:i}=Se(),{hasSiteSettings:f,hasPinnedChrome:u}=r,p=!!r.editsPinnedInPlace&&a!==_t,m=a===_t,x=AD().getState,h=RD(null);OD(()=>{if(!Xy({docId:n,saveStatus:i,seededDocId:h.current})||(h.current=n,!u))return;let b=x().appState.data,C=b.content,k=s?.content??[],v=(E,F)=>E.some(L=>L?.type===F);if(!f){let E=new Set(hd(C)),F=E.size?C.filter(B=>!E.has(B.props.id)):C;E.size&&e.setDocument({...b,content:F});let L=BD(F,k);if(L.includes(me)){let B=F.length,O=e.insertSection(me,B);e.replaceComponent(yr,B,{type:me,props:{id:O,blocks:Wl()}})}L.includes(Ve)&&e.insertNode(yr,0,zl());return}if(m){let E=hr(C);if(E!==C&&e.setDocument({...b,content:[...E]}),!E.find(F=>F.type===me)&&!v(k,me)&&!v(E,de)&&!v(k,de)){let F=(B,O)=>Qy(o,B,O),L={type:me,props:{blocks:Wl()}};e.insertNode(yr,E.length,Ta(L,F,Jy(de)))}return}if(p){let E=!!t?.pinnedChrome?.state().docId,F=Zy(C,{hasChromeDoc:E}),L=new Set([...F.remove,...hd(C.filter(O=>!F.remove.includes(String(O.props.id))))]),B=L.size?C.filter(O=>!L.has(String(O.props.id))):C;if(B.length!==C.length&&e.setDocument({...b,content:B}),F.seedFooter&&!v(k,me)&&!v(k,de)){let O=(re,H)=>Qy(o,re,H),M={type:me,props:{blocks:Wl()}};e.insertNode(yr,B.length,Ta(M,O,Jy(de)))}if(F.seedHeader&&!v(k,Ve)){let O=B[0]?.type==="SiteHeader"?1:0;e.insertNode(yr,O,zl())}return}let w=C.filter(E=>E.type!==me),g=new Set(hd(w)),y=g.size?w.filter(E=>!g.has(E.props.id)):w;y.length!==C.length&&e.setDocument({...b,content:y}),!v(y,Ve)&&!v(k,Ve)&&e.insertNode(yr,0,zl())},[n,i,s,x,e,f,u,m,p,t])}import{useEffect as rS,useState as aS}from"react";var Ql=new Map;async function _D(e,o){try{return(await Ue().site.get({siteId:o})).slug?.trim()||null}catch(t){return console.warn("[editor-site-slug] could not resolve the site slug",t),null}}function oS(e,o){let t=Ql.get(o);return t||(t=_D(e,o),Ql.set(o,t),t.catch(()=>{Ql.get(o)===t&&Ql.delete(o)})),t}var DD=/^(localhost|(?:[a-z0-9-]+\.)+localhost|127(?:\.\d{1,3}){3}|0\.0\.0\.0|\[::1\]|::1)$/i;function gd(e){return!!e&&DD.test(e)}function tS(e){let{pageSlug:o,siteSlug:t,hostname:r}=e,a=o===un?"/":`/${encodeURIComponent(o)}`;if(!gd(r))return a;let n=t?.trim();return n?`${a}?site=${encodeURIComponent(n)}`:a}function nS(e){let{pageSlug:o,siteId:t,token:r}=e,[a,n]=aS(null),[s,i]=aS(null),f=fu();rS(()=>i(f?new URL(f).hostname:window.location.hostname),[f]),rS(()=>{if(!gd(s)||!t||!r){n(null);return}let p=!1;return oS(r,t).then(m=>{p||n(m)}),()=>{p=!0}},[s,t,r]);let u=tS({pageSlug:o,siteSlug:a,hostname:s});return f?`${f}${u}`:u}import{jsx as Ba,jsxs as ND}from"react/jsx-runtime";import{ExternalIcon as lS}from"efficient-easel/icons";import{Button as MD,Tooltip as sS,buttonClasses as HD}from"efficient-shell/ui";function zD({pageId:e,liveHref:o,draftLink:t,win:r=window}){let a=r.open("","_blank");if(a)try{a.opener=null}catch{}let n=s=>{a&&!a.closed?a.location.href=s:r.open(s,"_blank","noopener,noreferrer")};return t(e).then(s=>n(s.url??o),()=>n(o))}function iS({liveHref:e,pageId:o,draftLink:t}){return t&&o?Ba(sS,{content:l("Open your saved draft in a new tab. Visitors don't see it."),children:Ba(MD,{variant:"secondary",onClick:()=>{zD({pageId:o,liveHref:e,draftLink:t})},rightIcon:Ba(lS,{size:15}),"aria-label":l("Preview your saved draft in a new tab"),children:l("Preview")})}):Ba(sS,{content:l("Preview the live site (opens in a new tab)"),children:ND("a",{className:HD({variant:"secondary"}),href:e,target:"_blank",rel:"noopener noreferrer","aria-label":l("Preview the live site in a new tab"),children:[l("Preview"),Ba(lS,{size:15})]})})}import{useCallback as qD,useEffect as jD,useRef as pS,useState as KD}from"react";import{useSyncExternalStore as WD}from"react";var GD=()=>()=>{},fS=()=>null;function Jl(e){return WD(e?e.subscribe:GD,e?e.state:fS,e?e.state:fS)}function es(){let{adapter:e}=Se();return e?.pinnedChrome}import{useSyncExternalStore as UD}from"react";var Sr=new Map,bd=new Set;function yd(e,o){if(!(Sr.has(e)&&Sr.get(e)===o)){Sr.set(e,o);for(let t of bd)t()}}function MJ(e,o){yd(e,o)}function HJ(e,o){let t=Sr.get(e);yd(e,o??(t==="live"?"changed":t))}function zJ(e,o){yd(e,o??"live")}function WJ(e){return Sr.get(e)}function $D(e){return bd.add(e),()=>{bd.delete(e)}}function cS(e){let o=()=>e?Sr.get(e):void 0;return UD($D,o,o)}function dS(e,o){return e==="live"&&o?"changed":e}function uS({live:e,onPress:o,busy:t=!1,pinnedUnpublished:r=!1}){let a=e==="live"&&!r,n=e==="changed"?l("Changes not live yet"):e==="never"?l("Never published"):r?l("Header and footer not live yet"):e==="live"?l("Everything is live"):null;return{label:l("Publish"),tooltip:e==="never"?l("Put this page on your site"):l("Put your changes on your site"),status:n,quiet:a?{label:l("Published"),reason:l("Everything is live")}:null,onPress:o,busy:t}}function mS(e){let{docId:o,capabilities:t,hasUnsavedEdits:r,onPublish:a}=Se(),n=dS(cS(o??null),r),s=Jl(es()),[i,f]=KD(!1),u=pS(e);u.current=e;let p=pS(!0);jD(()=>(p.current=!0,()=>{p.current=!1}),[]);let m=qD(()=>{f(!0),a(u.current).finally(()=>{p.current&&f(!1)})},[a]);if(t.canPublish)return uS({live:n,onPress:m,busy:i,pinnedUnpublished:s?.unpublished??!1})}var xS=["general","commerce","service"],Cr=[{key:"openers",title:"Hero & intros",defaultExpanded:!0,templateable:!0,sections:[{type:"Hero",label:"Hero Slideshow",set:"general"},{type:"HeroSingle",label:"Hero",set:"general"},{type:"IntroBleed",label:"Scroll-Over Text",set:"general"}]},{key:"shop",title:"Shop & galleries",templateable:!0,sections:[{type:"Collections",label:"Collections",set:"commerce"},{type:"BrandStrip",label:"Brand Strip",set:"commerce"},{type:"AlloyWheelsListing",label:"List",set:"commerce"},{type:"CatalogFilterBar",label:"Catalog Filter Bar",set:"commerce"},{type:"ProductGrid",label:"Product Grid",set:"commerce"},{type:"FitmentFinder",label:"Fitment Form",set:"commerce"},{type:"Gallery",label:"Tabbed Gallery",set:"commerce"},{type:"GalleryB",label:"Customer Photo Grid",set:"commerce"},{type:"SpecStrip",label:"Spec Strip",set:"general"}]},{key:"product",title:"Product page",templateable:!0,sections:[{type:"ProductHero",label:"Product Hero",set:"commerce"},{type:"SpecTable",label:"Spec Table",set:"commerce"},{type:"ProcessSteps",label:"Image & Text Columns",set:"general"},{type:"DetailRows",label:"Feature Rows",set:"commerce"},{type:"FitmentTable",label:"Fitment Table",set:"commerce"},{type:"TyreSizes",label:"Tyre Sizes",set:"commerce"},{type:"TyreFitment",label:"Tyre Fitment Form",set:"commerce"},{type:"EuTyreLabel",label:"EU Tyre Label",set:"commerce"},{type:"RelatedProducts",label:"Related Products",set:"commerce"},{type:"BundleOffer",label:"Bundle Products",set:"commerce"}]},{key:"checkout",title:"Checkout & ordering",templateable:!0,sections:[{type:"OrderSummary",label:"Order Table",set:"general"},{type:"DeliveryOptions",label:"Delivery Options",set:"commerce"},{type:"PaymentBadges",label:"Payment Methods",set:"general"},{type:"CheckoutCTA",label:"Ready-to-Order Banner",set:"commerce"}]},{key:"about",title:"About & brand story",templateable:!0,sections:[{type:"Manifesto",label:"Brand Text",set:"general"},{type:"Timeline",label:"Story Timeline",set:"general"},{type:"TimelineTrack",label:"Milestone Timeline",set:"general"},{type:"Footprint",label:"Locations Map",set:"general"}]},{key:"content",title:"Text & content",templateable:!0,sections:[{type:"Prose",label:"Editorial Text",set:"general"},{type:"ParagraphsA",label:"Lead Text",set:"general"},{type:"Split",label:"Image & Text Split",set:"general"},{type:"Cards",label:"Cards",set:"general"},{type:"KeyFeatures",label:"Key Features",set:"general"}]},{key:"proof",title:"Stats & social proof",templateable:!0,sections:[{type:"Stats",label:"Stats",set:"general"},{type:"StatsParagraph",label:"Stats with Text",set:"general"},{type:"Chart",label:"Chart",set:"general"},{type:"Mockup",label:"Mockup Card",set:"general"},{type:"Testimonials",label:"Testimonials",set:"general"},{type:"Reviews",label:"Reviews",set:"service"},{type:"Logos",label:"Logos",set:"general"}]},{key:"promo",title:"Promotions & sign-ups",templateable:!0,sections:[{type:"Banner",label:"Banner",set:"general"},{type:"TitleWithButtons",label:"Call-to-Action Heading",set:"general"},{type:"Ticker",label:"Scrolling Bar",set:"general"},{type:"Countdown",label:"Countdown",set:"general"},{type:"Subscribe",label:"Signup Form",set:"service"}]},{key:"blog",title:"Blog & journal",templateable:!0,sections:[{type:"Masthead",label:"Issue Header",set:"general"},{type:"FeaturedCover",label:"Feature Banner",set:"general"},{type:"LongRead",label:"Article Text",set:"general"},{type:"Series",label:"Recurring Columns",set:"general"},{type:"Events",label:"Latest Posts",set:"service"}]},{key:"navigation",title:"Navigation & wayfinding",templateable:!0,sections:[{type:"Breadcrumb",label:"Breadcrumb",set:"general"},{type:"CategoryBar",label:"Category Bar",set:"general"},{type:"DocTabs",label:"Document Tabs",set:"general"}]},{key:"legal",title:"Legal & documents",templateable:!0,sections:[{type:"DocMasthead",label:"Document Header",set:"general"},{type:"DocBody",label:"Document Text",set:"general"},{type:"DocMetaCards",label:"Document Detail Cards",set:"general"}]},{key:"contact",title:"Contact, FAQ & forms",templateable:!0,sections:[{type:"FAQ",label:"Q&A",set:"general"},{type:"ContactRouting",label:"Contact Form",set:"service"},{type:"ContactLocations",label:"Contact / Locations",set:"general"},{type:"SubmitBuild",label:"Photo Submission Form",set:"service"},{type:"ReviewForm",label:"Review Form",set:"service"},{type:"Form",label:"Form",set:"service"},{type:"AppointmentBooking",label:"Booking Form",set:"service"}]},{key:"structure",title:"Layout, structure & embeds",templateable:!1,sections:[{type:"SectionHeader",label:"Section Header",set:"general"},{type:"Flex",label:"Box",set:"general"},{type:"Spacer",label:"Spacer",set:"general"},{type:"Divider",label:"Divider",set:"general"},{type:"CustomHTML",label:"Custom HTML",set:"general"}]}];function VJ(){return Object.fromEntries(Cr.map(e=>[e.key,{title:e.title,components:e.sections.map(o=>o.type),...e.defaultExpanded?{defaultExpanded:!0}:{}}]))}var VD={Grid:'Lewis, 2026-09-14: Box and Grid duplicate each other and it feels confusing. 2026-09-15 he chose the order: give Box uneven widths FIRST, then merge Grid into Box. Shown three ways to pick the widths (mockup "Uneven Box Widths"), he chose A \u2014 shape pictures on the Box\'s `Block widths` row, the same "a row is a shape, pick a picture of it" rule he set for the photo wall on 2026-09-07.\n\nWHAT REPLACES IT: a Box set to One row, with `Block widths` at Equal or a shape (Big left, Big right, Bigger left, Bigger right) and its own `Columns on phone`. Measured on PRODUCTION 2026-09-16 ~09:28 AEST (database `efficient-system`, all 10 tenant schemas, 128 storefront pages, both `layout` and `published_layout` \u2014 256 documents): 2 Grid nodes, and they are ONE Grid counted twice \u2014 the 9DIEM homepage on 9diem.com (`xtreme_mudder` schema), once as draft and once as published. It is top-level, holds three `ImageBlock`s at `columns` 3 \u2014 equal thirds \u2014 and NO block sets `Positions`. A Box draws that with `Block widths` at Equal.\n\n\u26A0\uFE0F THE COUNT MOVES; THE RULE MUST NOT DEPEND ON IT. This entry has already carried three different readings. A local-clone snapshot said no Grid used `Positions`. A PRODUCTION reading on 2026-09-15 ~13:15 AEST found 6 nodes on two sites, 4 of them spanned \u2014 hartesmetal.com.au homepage and about, 4 columns, spans 1 + 3. That one was TRUE when it was taken and stopped being true the same day: those two pages were rebuilt on Box (`Block widths: Bigger right`), and on 2026-09-16 they hold zero Grid nodes and are built from `Flex`. \u26D4 So the rule is NOT "there are still N spanned Grids". NEVER delete the Grid component or its `gridSpan` handling, whatever a census says \u2014 Grid still renders, still edits, still drags, and a merchant may rebuild a page either way on any day. Re-run the census on production before anyone PROPOSES deleting either, and read any number written here as the reading of its own day, not as the state of the world.\n\nWHAT A MERCHANT LOSES: a new Grid, and with it a fixed "N per row" that wraps by itself past three across, and the per-block `Positions` number. Box wraps with `Wrap`, but by content width, not by a fixed count.\n\nTHE TYPE KEY STAYS AND SO DOES THE COMPONENT. Every page holding a Grid still renders through it and can still be edited, dragged and added to; no document is rewritten and NO MIGRATION RUNS \u2014 the owner redoes live sections himself.\n\n\u26A0\uFE0F AND IT STAYS DROPPABLE WHERE IT LIVES. The drop rule in lib/puck/config.tsx read the nestable containers off the catalogue\'s `structure` row, so leaving the catalogue would have made every open slot \u2014 a Box included \u2014 refuse a Grid already stored inside one. `scripts/test-retired-grid-stays-editable.tsx` \xA73 pins it.',CompatibleTyres:'Lewis, 2026-09-09: "Do not bother counting. Delete Compatible Tyres and use the new one. The new one needs complete settings \u2014 it must have every setting our cards have." Shown three ways to finish it, he chose C: retire from the menu now, and take styling the card text as its own card.\n\nWHAT REPLACES IT: `RelatedProducts` with its `Show` dropdown set to "Tyres that fit this product". That block is the GENERIC relationship section from card 1128 \u2014 it knows nothing about wheels or tyres, it asks the registry for a relationship by name. The two have rendered through the SAME renderer (`DynamicRelatedProducts`) since that card; this one is the pre-registry one-off that was never removed.\n\n\u26A0\uFE0F THE SWAP WAS NOT SAFE UNTIL #1305, AND SAYING SO IS THE POINT. The first old-versus-new table put in front of the owner was WRONG. `DynamicRelatedProducts` returns EARLY on a tyre answer and draws this component, so the seven card settings, the head split and the Width control all stopped at that call \u2014 nine settings, measured NO EFFECT, on precisely the relationship that replaces this block. #1283 gave the new block the card settings, #1299 the head split and its own Width, #1305 carried all of it onto the tyre branch. Only then was the claim true.\n\nWHAT WAS MEASURED BEFORE RETIRING, four ways, because the premise decides the card:\n \u2022 settable text kinds (SECTION_TEXT_KINDS): both blocks ABSENT \u2014 the map holds only TimelineTrack and Footprint, both AUTHORED lists\n \u2022 read-only text regions: neither `components/CompatibleTyres` nor `components/TyreCard` stamps one\n \u2022 panel rows through resolveFields: this block 31, `RelatedProducts` 42. This block\'s only style-ish key is `_sStyle`, the bucket HEADER, not a control\n \u2022 head text (num/title/description) is authored on both, so `_partStyles` reaches it identically\nSo on the CARD runs the two are zero against zero \u2014 neither can style them \u2014 and everywhere else the new block is ahead. Styling those runs needs a section-level prop family and a paint path for DERIVED text, which no section has yet: a part is anchored by matching an AUTHORED prop\'s string against the DOM, and `lib/puck/source-bound-parts` keeps hydrated copy unreachable on purpose so a merchant cannot type into a copy of a product name and lose it at the next sync. That is its own card, and `lib/sections/text-regions` is the read-only half that already ships.\n\nTHE TYPE KEY STAYS AND SO DOES THE COMPONENT, the same contract Subscribe, Split and SubscribeBlogs have. Every page holding a `CompatibleTyres` still renders through it, no published document is rewritten, and NO MIGRATION RUNS \u2014 the owner\'s standing ruling of 2026-09-05: he redoes live sections himself and deletes the old ones when he does. He also said explicitly not to count them first.\n\n\u26A0\uFE0F AND THIS COMPONENT IS LOAD-BEARING FOR ITS OWN REPLACEMENT: `DynamicRelatedProducts` draws it for EVERY tyre answer. Deleting it would blank the block that replaces it, not just the pages still holding this one.',SubscribeBlogs:"card 66396 \u2014 folded into `Subscribe`, which now chooses its rail's content with a `Type` control (the newsletter's own issues, or live blog posts). The two shared 21 of their fields and rendered THE SAME BYTES from equivalent rows, so offering both asked a merchant to choose between two names for one section. The type key stays because it is stored on published pages, and the component stays because those pages still render through it."},YJ=["Grid"],XJ=Array.from(new Set([...Cr.flatMap(e=>e.sections.map(o=>o.type)),...Object.keys(VD)])),ZJ=Object.fromEntries(Cr.flatMap(e=>e.sections.map(o=>[o.type,o.label]))),YD={Heading:"general",Text:"general",Eyebrow:"general",ImageBlock:"general",LogoBlock:"general",ButtonBlock:"general",PostCard:"general",HeroSlide:"general",HeroGroup:"general",Integrations:"general",Grid:"general",CollectionCard:"commerce",GalleryItem:"commerce",ProductRef:"commerce",CompatibleTyres:"commerce",Header:"commerce",SearchBlock:"commerce",CartBlock:"commerce",CountrySwitchBlock:"commerce",AccountBlock:"commerce",ThemeSwitchBlock:"commerce",SubmitBox:"service",BookingBox:"service",SubscribeBlogs:"service",Footer:"service",FooterLogo:"service",FooterMenu:"service",FooterDivider:"service",FooterGroup:"service",FooterText:"service",FooterEmailSignup:"service",FooterSocial:"service",MenuBlock:"service",EmailFormBlock:"service",SocialLogosBlock:"service",LegalLineBlock:"service",SiteHeader:"service",SiteFooter:"service"},os={...YD,...Object.fromEntries(Cr.flatMap(e=>e.sections.map(o=>[o.type,o.set])))};function IS(e){return Object.prototype.hasOwnProperty.call(os,e)?os[e]:void 0}function Sd(e){return Object.keys(os).filter(o=>os[o]===e).sort()}var QJ=Sd("general"),JJ=Sd("commerce"),eee=Sd("service"),Cd="Flex",ot="Box",oee=`${ot}es`;function XD(e){return e==="section"?"Blank section":ot}function vd(e,o,t){return e===Cd?XD(o):t}var ZD={openers:{label:"Hero & intros",icon:"image"},shop:{label:"Shop & galleries",icon:"bag"},product:{label:"Product page",icon:"box"},checkout:{label:"Checkout & ordering",icon:"bag"},about:{label:"About & brand story",icon:"book"},content:{label:"Text & content",icon:"type"},proof:{label:"Stats & social proof",icon:"star"},promo:{label:"Promotions & sign-ups",icon:"sparkles"},blog:{label:"Blog & journal",icon:"newspaper"},navigation:{label:"Navigation & wayfinding",icon:"bookmark"},legal:{label:"Legal & documents",icon:"file"},contact:{label:"Contact, FAQ & forms",icon:"mail"},structure:{label:"Layout, structure & embeds",icon:"grid"}};function hS(e){return ZD[e]?.label}var gS=Cd;var QD={general:!0,commerce:!0,service:!0};function wd(e){let o=e?.sets;return o?Object.fromEntries(xS.map(t=>[t,o.includes(t)])):QD}function see(e=ao()){return wd(e.blocks)}var vr="content",be="Flex",JD="Text & media",eN="Layout & structure",oN=[{type:"Eyebrow",label:"Eyebrow"},{type:"Heading",label:"Heading"},{type:"Text",label:"Text"},{type:"ImageBlock",label:"Image"},{type:"LogoBlock",label:"Logo"},{type:"ButtonBlock",label:"Button"},{type:"Form",label:"Form"},{type:"PostCard",label:"Post Card"},{type:"Stats",label:"Stats"},{type:"MenuBlock",label:"Menu"},{type:"EmailFormBlock",label:"Email Form"},{type:"SocialLogosBlock",label:"Social Logos"},{type:"LegalLineBlock",label:"Legal Line"},{type:"SearchBlock",label:"Search"},{type:"CartBlock",label:"Cart"},{type:"CountrySwitchBlock",label:"Country Switch"}].map(e=>({...e,group:JD})),tN=(Cr.find(e=>e.key==="structure")?.sections??[]).map(e=>({type:e.type,label:e.label,group:eN})),bS=[...oN,...tN],kd=[{type:"Eyebrow",label:"Eyebrow"},{type:"Heading",label:"Heading"},{type:"Text",label:"Text"},{type:"ImageBlock",label:"Image"},{type:"LogoBlock",label:"Logo"},{type:"ButtonBlock",label:"Button"},{type:"HeroGroup",label:ot}],cee=kd.map(e=>e.type),rN=1,aN=kd.filter(e=>e.type!=="HeroGroup");function nN(e){return e<rN?kd:aN}var lN={Flex:{slot:vr,choices:()=>bS},Grid:{slot:vr,choices:()=>bS},HeroGroup:{slot:vr,choices:nN}};function yS(e,o=0){let t=lN[e];return t?{slot:t.slot,choices:t.choices(o)}:null}function ze(e,o,t,r={}){return{type:e,props:{...o(e),id:t(e),...r}}}function SS(e,o,t){return ze(be,e,o,{...t,sectionPaddingTop:void 0,sectionPaddingBottom:void 0})}var sN={Manifesto:(e,o)=>({type:be,props:{...e(be),id:o(be),direction:"row",share:"equal",sectionHeightMode:"screen",name:"Brand Text",content:[ze(be,e,o,{direction:"column",justify:"center",blockSpacing:"gap",name:"Text",sectionPaddingTop:100,sectionPaddingBottom:100,sectionPaddingLeft:40,sectionPaddingRight:40,content:[ze("Eyebrow",e,o,{eyebrowLook:"plain"}),ze("Heading",e,o),ze("Text",e,o),ze("Stats",e,o)]}),SS(e,o,{direction:"column",name:"Picture",content:[]})]}}),Split:(e,o)=>({type:be,props:{...e(be),id:o(be),direction:"row",share:"equal",sectionHeightMode:"screen",sectionHeightValue:70,name:"Image & Text Split",content:[ze(be,e,o,{direction:"column",justify:"center",blockSpacing:"gap",name:"Text",sectionPaddingTop:100,sectionPaddingBottom:100,sectionPaddingLeft:60,sectionPaddingRight:60,content:[ze("Eyebrow",e,o,{eyebrowLook:"plain"}),ze("Heading",e,o),ze("Text",e,o),ze("ButtonBlock",e,o)]}),SS(e,o,{direction:"column",name:"Image",content:[ze("ImageBlock",e,o)]})]}}),Subscribe:(e,o)=>({type:be,props:{...e(be),id:o(be),direction:"column",name:"Subscribe",content:[ze("Heading",e,o),ze("Text",e,o),ze("Form",e,o)]}})};function ts(e){return sN[e]??null}import{blockTypesIn as Td}from"efficient-easel/screen/lib/puck/block-types-in";import{newNodeId as CS}from"efficient-easel/draw";var iN="ImageBlock",fN=3,rs=(e,o,t={})=>({type:e,props:{...o?.(e)??{},id:CS(e),...t}}),cN=e=>({...e?.(be)??{},direction:"column",[vr]:[rs(iN,e),rs(be,e,{direction:"column",[vr]:[rs("Heading",e),rs("Text",e)]})]}),ko={Hero:{slot:"slides",childType:"HeroSlide",addLabel:"Add slide",slider:!0,seeds:()=>Pg.map(e=>({...e}))},HeroSlide:{slot:"groups",childType:"HeroGroup",addLabel:`Add ${ot.toLowerCase()}`,seeds:()=>[],addBlocked:en,notice:As},HeroSingle:{slot:"boxes",childType:"HeroGroup",addLabel:`Add ${ot.toLowerCase()}`,seeds:()=>[],addBlocked:en,notice:As},ProcessSteps:{slot:"boxes",childType:be,addLabel:`Add ${ot.toLowerCase()}`,seeds:e=>Array.from({length:fN},()=>cN(e)),skipSeed:e=>Array.isArray(e.steps)&&e.steps.length>0}};function See(e){for(let[o,t]of Object.entries(e)){if(o in ko&&ko[o]!==t)throw new Error(`lib/puck/slot-specs: "${o}" already has a slot spec`);ko[o]=t}}function Cee(e,o){let t=ko[e];return t?{slot:t.slot,children:t.seeds(o).map(r=>({type:t.childType,props:{id:CS(t.childType),...r}}))}:null}var vS=()=>({}),wS=new Map;function dN(e){let o=wS.get(e);if(o)return o;let t=new Set,r=ko[e];if(r)for(let s of r.seeds(vS))for(let i of Td({type:r.childType,props:s}))t.add(i);let a=ts(e);if(a){let s=0;for(let i of Td(a(vS,f=>`${f}-${s+=1}`)))t.add(i)}t.delete(e);let n=[...t].sort();return wS.set(e,n),n}function uN(e){if(!e||!e.sets&&!e.allow&&!e.deny?.length)return null;let o=wd(e),t=e.allow?new Set(e.allow):null,r=new Set(e.deny??[]),a=new Set(Object.keys(e.host??{})),n=f=>{if(r.has(f))return!1;if(a.has(f))return!0;let u=IS(f);return!u||!o[u]?!1:t?t.has(f):!0},s=new Map,i=f=>{let u=s.get(f);if(u!==void 0)return u;s.set(f,!1);let p=n(f)&&dN(f).every(i);return s.set(f,p),p};return{sets:o,offers:i}}var pN="block-offer";function Fd(e=ao()){return e.cache(pN,()=>uN(Tp(e)))}function kS(e,o=ao()){let t=Fd(o);return t?t.offers(e):!0}function TS(e,o=0){let t=xN(e,o),r=t?Fd():null;return t&&r?mN(t,r):t}function mN(e,o){if(e.spec)return o.offers(e.spec.childType)?e:null;let t=e.choices??[],r=t.filter(a=>o.offers(a.type));return r.length===t.length?e:r.length>0?{...e,choices:r}:null}function xN(e,o){let t=ko[e];if(t)return{source:"section",slot:t.slot,choices:null,spec:t};let r=yS(e,o);if(r)return{source:"container",slot:r.slot,choices:r.choices,spec:null};let a=Hb(e);return a?{source:"footer",slot:Mb,choices:a,spec:null}:null}import{useSyncExternalStore as IN}from"react";var Ed=null,Pd=new Set;function FS(e){if(Ed!==e){Ed=e;for(let o of Pd)o()}}function hN(e){return Pd.add(e),()=>{Pd.delete(e)}}function Hee(){return IN(hN,()=>Ed,()=>null)}function ES(e){return Br(e)?.ownerId??null}function PS(e,o){let t=e.props;if(e.type==="FooterMenu"){let r=t.menu;return t.heading||r?.name||l("Menu")}if(e.type==="FooterText"){let r=typeof t.text=="string"?t.text.trim():"";return r?r.length>28?`${r.slice(0,28)}\u2026`:r:l("Text")}return e.type==="FooterEmailSignup"?t.heading||l("Email signup"):o(e.type)}var LS="sf-editor-left-view";function OS(){if(typeof window>"u")return"pages";try{let e=window.localStorage.getItem(LS);return e==="sections"||e==="styles"||e==="media"?e:"pages"}catch{return"pages"}}function RS(e){if(!(typeof window>"u"))try{window.localStorage.setItem(LS,e)}catch{}}function AS(e,o,t=!1){return e==="styles"&&!o||e==="media"&&!t?"sections":e}function BS(e,o){return e?"sections":o}var _S="Footer",gN=[_e,_S,de],wr=e=>{let o=e?.content;return Array.isArray(o)?o:[]},Et=e=>{let o=e?.zones;return o&&typeof o=="object"&&!Array.isArray(o)?o:null},_a=e=>{let o=e?.props?.id;return typeof o=="string"?o:void 0},DS=e=>Br(e)?.ownerId??"";function NS(e){let o=hr(wr(e)),t=o.some(r=>r?.type===de);return o.filter(r=>r?.type===_e||r?.type===de||r?.type===_S&&!t)}function Ld(e,o){let t=new Set,r=a=>{if(Array.isArray(a)){for(let s of a)r(s);return}if(!a||typeof a!="object")return;let n=a;if(typeof n.type=="string"&&n.props&&typeof n.props=="object"){let s=_a(n);s&&t.add(s)}for(let s of Object.values(a))r(s)};if(r(e),o){let a=!0,n=new Set;for(;a;){a=!1;for(let[s,i]of Object.entries(o))n.has(s)||!t.has(DS(s))||(n.add(s),r(i),a=!0)}}return t}function Od(e,o){let t={},r={};for(let[a,n]of Object.entries(e??{}))(o.has(DS(a))?t:r)[a]=n;return{owned:t,rest:r}}function jee(e,o){if(!o)return e;let t=NS(o);if(!t.length)return e;let r=t.filter(i=>i.type===_e),a=t.filter(i=>i.type!==_e),n={...e,content:[...r,...wr(e),...a]},{owned:s}=Od(Et(o),Ld(t,Et(o)));return Object.keys(s).length&&(n.zones={...Et(e)??{},...s}),n}function Kee(e,o){if(!o)return{page:e,chrome:null};let t=NS(o),r=new Set(t.map(_a).filter(w=>!!w)),a=[],n=[];for(let w of wr(e)){let g=_a(w);g&&r.has(g)||Ir(w?.type)?n.push(w):a.push(w)}let s=new Map(n.map(w=>[_a(w),w])),i=new Set,f=hr(wr(o)).flatMap(w=>{let g=_a(w);if(!g||!r.has(g))return[w];let y=s.get(g);return y?(i.add(y),[y]):[]});for(let w of n)i.has(w)||f.some(g=>g?.type===w.type)||(f=w.type===_e?[w,...f]:[...f,w]);f=hr(f);let u=f.length===wr(o).length&&f.every((w,g)=>w===wr(o)[g]),p=Et(e),m=Ld(f,p),{owned:x,rest:h}=Od(p,m),b=Od(Et(o),Ld(t,Et(o))).owned,C={...o,content:u?o.content:[...f]},k=Et(o);if(k||Object.keys(x).length){let w={};for(let[g,y]of Object.entries(k??{}))g in b?g in x&&(w[g]=x[g]):w[g]=y;for(let[g,y]of Object.entries(x))g in w||(w[g]=y);C.zones=w,k&&bN(C.zones,k)&&(C.zones=k)}let v={...e,content:a};return p&&(Object.keys(h).length||!Object.keys(b).length?v.zones=h:delete v.zones),{page:v,chrome:C}}function bN(e,o){let t=Object.keys(e),r=Object.keys(o);return t.length===r.length&&t.every((a,n)=>a===r[n]&&e[a]===o[a])}function MS(e,o){return t=>e(t)||t!==void 0&&gN.includes(t)&&o()}var as=null;function Yee(e){as=e}function HS(){return!!(as&&as.state().lockHolder)}function kr(){return as!==null}var yN=new Set(["BookingBox","SubmitBox"]);function SN(e){return typeof e=="string"&&yN.has(e)}var zS=MS(SN,HS);import{Fragment as Ad,jsx as ss,jsxs as UN}from"react/jsx-runtime";import{useMemo as $N,useRef as YS}from"react";import{EaselCanvas as qN,useEaselApi as jN}from"efficient-easel/easel";import{jsx as qS,Fragment as LN,jsxs as ON}from"react/jsx-runtime";import{useEffect as jS,useLayoutEffect as RN}from"react";var ns="data-theme",WS="light";function CN(e){return e.getAttribute(ns)===WS?"light":"dark"}function vN(e,o){return CN(e)===o?!1:(o==="light"?e.setAttribute(ns,WS):e.removeAttribute(ns),!0)}function wN(e){return gs(e).getItem(ds)}function toe(e,o){gs(e).setItem(ds,o)}function kN(e,o,t=new Date().getHours()){return Ud({mode:o.mode,override:wN(e),switchShown:o.switchShown,hour:t})}function GS(e,o){let t=e.documentElement;if(!t)return()=>{};let r=()=>vN(t,kN(e,o));r();let a=e.defaultView?.MutationObserver;if(!a)return()=>{};let n=new a(r);return n.observe(t,{attributes:!0,attributeFilter:[ns]}),()=>n.disconnect()}var TN="style";function FN(e,o){let t=Xd(o),r=!1;for(let a of Yd){let n=t[a]??"";e.style.getPropertyValue(a)!==n&&(n?e.style.setProperty(a,n):e.style.removeProperty(a),r=!0)}return r}function US(e,o){let t=e.body;if(!t)return()=>{};let r=()=>FN(t,o);r();let a=e.defaultView?.MutationObserver;if(!a)return()=>{};let n=new a(r);return n.observe(t,{attributes:!0,attributeFilter:[TN]}),()=>n.disconnect()}var EN=String.raw`(function (doc) {
18
+ if (doc.__sfFitWords) return;
19
+ var win = doc.defaultView;
20
+ var SELECTOR = "h1,h2,h3,h4,h5,h6,[class*='font-heading'],[class*='font-display']";
21
+ var MIN_SCALE = 0.3, MIN_PX = 16, SLACK = 1;
22
+
23
+ function measure(el) {
24
+ var widest = 0, current = 0, last = null, split = false, lastBlock = null;
25
+ function blockOf(n) {
26
+ for (var p = n.parentElement; p && p !== el; p = p.parentElement) {
27
+ var d = win.getComputedStyle(p).display;
28
+ if (d.indexOf("inline") !== 0 && d !== "contents") return p;
29
+ }
30
+ return el;
31
+ }
32
+ function close() { if (current > widest) widest = current; current = 0; last = null; }
33
+ var walker = doc.createTreeWalker(el, 5), range = doc.createRange(), node;
34
+ while ((node = walker.nextNode())) {
35
+ if (node.nodeType === 1) {
36
+ if (node.tagName === "BR" || node.tagName === "WBR") close();
37
+ continue;
38
+ }
39
+ var block = blockOf(node);
40
+ if (block !== lastBlock) close();
41
+ lastBlock = block;
42
+ var re = /(\S+)|(\s+)/g, m;
43
+ while ((m = re.exec(node.data))) {
44
+ if (m[2]) { close(); continue; }
45
+ range.setStart(node, m.index);
46
+ range.setEnd(node, m.index + m[0].length);
47
+ var rects = range.getClientRects();
48
+ for (var i = 0; i < rects.length; i++) {
49
+ var r = rects[i];
50
+ if (r.width <= 0) continue;
51
+ current += r.width;
52
+ if (last && r.top > last.top + last.height / 2) split = true;
53
+ last = r;
54
+ }
55
+ }
56
+ }
57
+ close();
58
+ return { widest: widest, split: split };
59
+ }
60
+
61
+ function lineWidth(el) {
62
+ var cs = win.getComputedStyle(el);
63
+ return el.getBoundingClientRect().width - parseFloat(cs.paddingLeft) - parseFloat(cs.paddingRight)
64
+ - parseFloat(cs.borderLeftWidth) - parseFloat(cs.borderRightWidth);
65
+ }
66
+
67
+ // ⚠️ THE HEADING ELEMENT IS NEVER TOUCHED — no style="", no data-*. This
68
+ // runs before React hydrates, and React 19 in development reports ANY
69
+ // attribute that differs from what it rendered ("a tree hydrated but some
70
+ // attributes didn't match"): first our inline font-size on the hero (which
71
+ // React owns via --heading-size), then, when that moved to a data-sf-fit
72
+ // attribute, the attribute itself. So the fitted size lives only in this
73
+ // script's own stylesheet, in <head>, addressed to each heading by its
74
+ // POSITION (":root>*:nth-child(2)>…"). A position goes stale when the page's
75
+ // structure changes, so the rules are rewritten in the MutationObserver
76
+ // callback, which runs before the next paint. !important so the size also
77
+ // beats a part's own inline size.
78
+ var head = doc.head || doc.documentElement;
79
+ var fitEl = doc.createElement("style");
80
+ fitEl.id = "storefront-fit-words-sizes";
81
+ head.appendChild(fitEl);
82
+ var fitted = new Map(); // heading -> fitted size, e.g. "43.8px"
83
+
84
+ function pathOf(el) {
85
+ var parts = [];
86
+ for (var e = el; e && e.parentElement; e = e.parentElement) {
87
+ var i = 1, s = e;
88
+ while ((s = s.previousElementSibling)) i++;
89
+ parts.unshift("*:nth-child(" + i + ")");
90
+ }
91
+ return ":root>" + parts.join(">");
92
+ }
93
+ function writeRules() {
94
+ var css = "";
95
+ fitted.forEach(function (size, el) {
96
+ if (!el.isConnected) { fitted.delete(el); return; }
97
+ css += pathOf(el) + "{font-size:" + size + " !important}";
98
+ });
99
+ if (fitEl.textContent !== css) fitEl.textContent = css;
100
+ }
101
+
102
+ function unfit(el) {
103
+ if (fitted.delete(el)) writeRules();
104
+ }
105
+
106
+ function fits(el) {
107
+ var m = measure(el);
108
+ return !m.split && m.widest <= lineWidth(el) + SLACK;
109
+ }
110
+
111
+ function fit(el) {
112
+ unfit(el);
113
+ if (lineWidth(el) <= 0) return; // hidden, or not laid out yet
114
+ if (fits(el)) return;
115
+ var set = parseFloat(win.getComputedStyle(el).fontSize);
116
+ if (!set) return;
117
+ var floor = Math.max(set * MIN_SCALE, MIN_PX);
118
+ if (floor >= set) return;
119
+ function size(px) { return Math.floor(px * 10) / 10 + "px"; }
120
+ // The SEARCH tries sizes on the element's own style and then puts that
121
+ // attribute back byte for byte (or removes it, if it had none), so nothing
122
+ // is left for React to see. A trial in a stylesheet instead restyles the
123
+ // whole page per step: a full pass on the Hartes home took 75–160ms at 4x
124
+ // CPU that way.
125
+ var hadStyle = el.hasAttribute("style"), origStyle = el.getAttribute("style");
126
+ function attempt(px) { el.style.setProperty("font-size", size(px), "important"); }
127
+ function done() { if (hadStyle) el.setAttribute("style", origStyle); else el.removeAttribute("style"); }
128
+ attempt(floor);
129
+ if (!fits(el)) { done(); return; } // even the floor does not fit: leave it as set
130
+ var lo = floor, hi = set;
131
+ for (var i = 0; i < 8; i++) {
132
+ var mid = (lo + hi) / 2;
133
+ attempt(mid);
134
+ if (fits(el)) lo = mid; else hi = mid;
135
+ }
136
+ done();
137
+ fitted.set(el, size(lo));
138
+ writeRules();
139
+ }
140
+
141
+ // What each heading measured right after we last fitted it, so the
142
+ // ResizeObserver below can tell a real change (a font swap, a rotate, a
143
+ // container that moved) from the size change our own write just caused.
144
+ var seen = new WeakMap();
145
+ function remember(el) {
146
+ var b = el.getBoundingClientRect();
147
+ seen.set(el, b.width + "x" + b.height);
148
+ }
149
+ function fitAndRemember(el) { fit(el); remember(el); }
150
+
151
+ // ⚠️ A ResizeObserver, NOT fonts.ready or a resize event, and the reason is
152
+ // WHEN it runs: after layout, BEFORE paint. The web font arriving re-wraps a
153
+ // fitted heading, and fonts.ready resolves only after that frame is painted —
154
+ // measured on the Hartes hero: a 42px jump in 2 of 3 loads. A size change
155
+ // reported here is fitted in the same frame, so the broken state is never
156
+ // drawn. It also covers a container that resizes.
157
+ var ro = new win.ResizeObserver(function (entries) {
158
+ for (var i = 0; i < entries.length; i++) {
159
+ var el = entries[i].target;
160
+ var b = el.getBoundingClientRect();
161
+ if (seen.get(el) === b.width + "x" + b.height) continue; // our own write
162
+ fitAndRemember(el);
163
+ }
164
+ });
165
+ // Its own set, not seen: fitAndRemember has written seen by the
166
+ // time watch runs, so a seen test observed no heading at all, and a
167
+ // heading fitted in the fallback face was never fitted again when the web
168
+ // font arrived (hartesmetal.com.au, "FusionForge." with its "." alone).
169
+ var watched = new WeakSet();
170
+ function watch(el) { if (!watched.has(el)) { watched.add(el); ro.observe(el); } }
171
+
172
+ function fitAll() {
173
+ var els = doc.querySelectorAll(SELECTOR);
174
+ for (var i = 0; i < els.length; i++) { fitAndRemember(els[i]); watch(els[i]); }
175
+ }
176
+
177
+ var queued = 0, all = false, touched = new Set();
178
+ function run() {
179
+ queued = 0;
180
+ if (all) { all = false; touched.clear(); fitAll(); return; }
181
+ var els = Array.from(touched);
182
+ touched.clear();
183
+ for (var i = 0; i < els.length; i++) if (els[i].isConnected) { fitAndRemember(els[i]); watch(els[i]); }
184
+ }
185
+ function schedule() { if (!queued) queued = win.requestAnimationFrame(run); }
186
+ function scheduleAll() { all = true; schedule(); }
187
+
188
+ fitAll();
189
+ // A backstop only: a font that changes widths without changing any
190
+ // heading's box is not seen by the ResizeObserver.
191
+ if (doc.fonts && doc.fonts.ready) doc.fonts.ready.then(scheduleAll, function () {});
192
+
193
+ // …and the viewport WIDTH, which the ResizeObserver cannot stand in for: a
194
+ // heading sized to its own text (fit-content, a flex item) keeps the SAME box
195
+ // when the phone turns to 844, so nothing reports a change and it would stay
196
+ // shrunk. The probe's rotate check caught exactly that.
197
+ var lastWidth = win.innerWidth;
198
+ function onResize() {
199
+ if (win.innerWidth === lastWidth) return; // a phone's toolbar changing HEIGHT is not our business
200
+ lastWidth = win.innerWidth;
201
+ scheduleAll();
202
+ }
203
+ win.addEventListener("resize", onResize);
204
+
205
+ var mo = new win.MutationObserver(function (records) {
206
+ // Positions first: a node added or removed anywhere can shift the
207
+ // nth-child path of a fitted heading, and this callback runs before paint.
208
+ if (fitted.size) {
209
+ for (var q = 0; q < records.length; q++) if (records[q].type === "childList") { writeRules(); break; }
210
+ }
211
+ for (var i = 0; i < records.length; i++) {
212
+ var r = records[i];
213
+ var target = r.target.nodeType === 1 ? r.target : r.target.parentElement;
214
+ var own = target && target.closest(SELECTOR);
215
+ if (own) touched.add(own);
216
+ for (var j = 0; j < r.addedNodes.length; j++) {
217
+ var n = r.addedNodes[j];
218
+ if (n.nodeType !== 1) continue;
219
+ if (n.matches(SELECTOR)) touched.add(n);
220
+ var inner = n.querySelectorAll(SELECTOR);
221
+ for (var k = 0; k < inner.length; k++) touched.add(inner[k]);
222
+ }
223
+ }
224
+ if (touched.size) schedule();
225
+ });
226
+ mo.observe(doc.body, { childList: true, subtree: true, characterData: true });
227
+
228
+ doc.__sfFitWords = function stop() {
229
+ win.removeEventListener("resize", onResize);
230
+ ro.disconnect();
231
+ mo.disconnect();
232
+ if (queued) win.cancelAnimationFrame(queued);
233
+ fitted.clear();
234
+ fitEl.remove();
235
+ delete doc.__sfFitWords;
236
+ };
237
+ // For the probe and for debugging: which headings are fitted, at what size,
238
+ // and the sheet that holds it (disable it to read a heading's set size).
239
+ doc.__sfFitWords.fitted = fitted;
240
+ doc.__sfFitWords.sheet = fitEl;
241
+ })(document);`,PN="storefront-fit-words";function $S(e){let o=e.createElement("script");return o.id=PN,o.textContent=EN,(e.head??e.documentElement).appendChild(o),()=>{e.__sfFitWords?.(),o.remove()}}var AN=`
242
+ [${io}][${io}] { cursor: text; }
243
+ [${Ke}][${Ke}][${Ke}] {
244
+ outline: 1px solid ${ga.accent};
245
+ outline-offset: 2px;
246
+ }
247
+ [${Ke}][${Ke}]:has([${Ke}]),
248
+ [data-puck-overlay-portal][data-puck-overlay-portal]:has([${Ke}]) {
249
+ outline: none;
250
+ }
251
+ [${Ke}][${Ke}][${Ke}][data-es-typing],
252
+ [data-es-typing] [${Ke}][${Ke}][${Ke}] {
253
+ outline: none;
254
+ }
255
+ `;function KS({children:e,document:o}){let{theme:t,themeMode:r,themeSwitchShown:a}=Z(),n=Qe(t);return jS(()=>{if(o)return GS(o,{mode:r,switchShown:a})},[o,r,a]),jS(()=>{if(o)return US(o,n)},[o,n]),RN(()=>{if(o)return $S(o)},[o]),ON(LN,{children:[qS(vu,{}),qS("style",{children:AN}),e]})}import{jsx as Rd}from"react/jsx-runtime";import{useEffect as BN,useState as _N}from"react";import{Banner as DN}from"efficient-shell/ui";var ls={load:"The header and footer could not load. They are hidden for now and nothing in them is saved. Reload to try again.",lock:"{name} is editing the header and footer. Nothing you change in them here is saved.",conflict:"The header and footer were changed somewhere else. Nothing you change in them here is saved. Reload to get the latest.",save:"The header and footer did not save. They are sent again with your next change."},NN=ls.load,MN=ls.lock,HN=ls.conflict,zN=ls.save;function WN(e){return e?e.loadFailed?l(NN):e.lockHolder?l(MN,{name:e.lockHolder.name||l("Somebody else")}):e.conflict?l(HN):e.saveFailed?l(zN):null:null}function GN({report:e}){let o=WN(Jl(e)),[t,r]=_N(null);return BN(()=>{o||r(null)},[o]),!o||t===o?null:Rd("aside",{className:"sf-canvas-notice",children:Rd(DN,{tone:"warning",onDismiss:()=>r(o),children:o})})}function VS(){return Rd(GN,{report:es()})}import{usePreviewParts as XS}from"efficient-easel/draw/client";function KN({children:e,componentId:o}){let{selectedPartId:t}=XS();return iI(t,o)?ss(Ad,{}):ss(Ad,{children:e})}function ZS(e){let{mirrorHostStyles:o}=ws(),t=ku(),r=YS(null),a=VN(r),{onDocument:n}=e,s=i=>{r.current=i,n?.(i)};return UN(Ad,{children:[ss(VS,{}),ss(qN,{...e,onDocument:s,typing:a,metadata:e.metadata??t,height:"fill",mirrorStyles:o,frameWrapper:KS,overlay:KN})]})}function VN(e){let o=jN(),t=qo(),r=XS(),a=YS({ops:t,parts:r});return a.current={ops:t,parts:r},$N(()=>{let n={getItemById:i=>o.getState().getItemById(i),getSelectorForId:i=>o.getState().getSelectorForId(i),get components(){return o.getState().config.components},replace:(i,f,u)=>a.current.ops.replaceComponent(i,f,u)},s=(i,f)=>{let u=sb(i,n);if(!u)return null;let p=f,m=()=>(p=ib(p,p?.ownerDocument??e.current,i),p),x=m();return x?{element:m,value:u.value,rules:u.rules,multiline:u.multiline,write:u.write,toolbar:{offered:u.offered,colors:u.offered.length>0?Al(hb(x)):void 0}}:null};return{at:i=>{let f=i.closest(`[${io}]`),u=f?.getAttribute(io);return f&&u?s(u,f):null},atSelection:()=>{let i=a.current.parts.selectedPartId;return i?s(i,null):null},onChange:i=>{if(!i.typing){Dc(null);return}let f=i.element.closest(`[${io}]`)?.getAttribute(io)??null;Dc(f),f&&a.current.parts.selectedPartId!==f&&a.current.parts.select(f)}}},[o,e])}var QS={Hero:"Full-screen opener with rotating slides.",HeroSingle:"Full-screen image or video with a headline.",IntroBleed:"Full-bleed intro image the next section scrolls over.",Collections:"Product collections in a tidy grid.",AlloyWheelsListing:"A full product-listing page: filter rail, sortable card grid and pagination, from the live catalog. Choose which product types it shows.",CatalogFilterBar:"Filters the collection grids below it \u2014 a sticky row of Pills (the default), or Columns, one per filter you switch on.",ProductGrid:"Hand-picked products in a tidy grid.",FitmentFinder:"A vehicle picker \u2014 make, model, year and trim resolve the OEM stock fitment live.",Gallery:"Two image galleries with tabs and filters.",GalleryB:"Customer photos in a card grid with a click-to-open lightbox.",SpecStrip:"A thin one-line spec strip \u2014 small-caps items spread across the width, as a dark band or a bare hairline row.",ProductHero:"A product hero \u2014 image beside price, bullets and a buy button.",SpecTable:"A spec sheet \u2014 labeled rows of product specifications.",ProcessSteps:"A heading over columns of image, title, blurb and specs.",DetailRows:"Repeating full-width rows \u2014 eyebrow, title and copy beside a numbered close-up image, alternating sides each row.",FitmentTable:"A fitment table \u2014 per-size bolt patterns, offsets and load ratings, filterable by diameter.",CompatibleTyres:"The current product's compatible tyres \u2014 image, size, key specs and price per tyre, with an inquiry link. Display only.",RelatedProducts:"The current product's related items in a tidy row \u2014 the product page's built-in 'Pair with' cross-sell.",OrderSummary:"A display order-summary panel \u2014 items, totals and a note.",DeliveryOptions:"Delivery tiers as cards \u2014 name, window and price, one highlighted.",PaymentBadges:"A payment-methods trust strip with reassurance lines.",CheckoutCTA:"A centered 'ready to order?' headline with the checkout button.",Manifesto:"A bold brand statement beside a full-height image, with a stat strip.",ParagraphsA:"An editorial text panel with a stat strip and founders' note.",StatsParagraph:"An editorial heading and paragraph over a row of theme-color-accented stat cards.",Chart:"A titled chart \u2014 bars, line or donut \u2014 drawn from your own labeled data points.",Mockup:"A headline beside a stylized product-UI mockup card \u2014 spec sheet, fitment, portal, kanban and more.",Prose:"A plain editorial text section \u2014 eyebrow, heading and body copy.",Timeline:"An editorial aside beside a rail-marked timeline of dated entries.",TimelineTrack:"A horizontal year track of milestones \u2014 company history or roadmap.",Footprint:"A world map of your locations with a legend \u2014 designed here, sold worldwide.",TitleWithButtons:"A big headline beside a stack of call-to-action buttons.",Split:"Side-by-side image and text in two columns.",Cards:"A heading over a grid of free-text title-and-blurb cards.",FAQ:"A frequently-asked-questions accordion with a header.",Testimonials:"Customer quotes in a grid \u2014 the quote, a name and a role.",Masthead:"A journal issue header with a lead statement and contents.",Breadcrumb:"A slim trail showing where the reader is (Home / Journal\u2026).",CategoryBar:"A sticky row of category tabs with counts and links.",FeaturedCover:"A featured article \u2014 big cover image beside a headline and dek.",LongRead:"A long-form article spread with a pull-quote and cover image.",Series:"A section heading over a grid of column cards.",Subscribe:"A newsletter signup beside a list of recent issues.",SubscribeBlogs:"A newsletter signup beside your latest blog posts, pulled live.",Events:"Latest journal posts in a three-card row.",DocMasthead:"A document header \u2014 headline, metadata and standfirst.",DocTabs:"A sticky tab bar to switch between documents.",DocBody:"Long-form document body with an 'On this page' contents list.",DocMetaCards:"A three-up meta strip for the foot of a document.",Banner:"Wide promo strip with background image.",Stats:"Highlight key numbers \u2014 years, designs.",Countdown:"Hours, minutes and seconds to a set date and time, then one line.",KeyFeatures:"A theme-color chip and heading over a grid of short feature labels.",Logos:"A row of partner or brand logos.",Ticker:"A scrolling marquee of short phrases, full width.",Reviews:"Approved customer reviews in a star-rated card grid, pulled live.",SubmitBuild:"A 'Show us yours.' headline with a photo-submission form.",ReviewForm:"A write-a-review form \u2014 submissions wait for your approval before they show.",ContactRouting:"Pick who to reach, then a form that routes the message.",ContactLocations:"Your locations as a city gallery plus address and map cards.",SectionHeader:"A numbered section title with optional link.",Grid:"Multi-column container for blocks.",Flex:"An empty section. Add whatever you want inside.",Spacer:"Vertical breathing room between sections.",Divider:"A thin horizontal rule between sections.",CustomHTML:"Drop in your own sanitized HTML.",Heading:"A single heading line.",Text:"A paragraph of body copy.",ImageBlock:"A standalone image, at the width you set.",ButtonBlock:"A call-to-action button."};var YN="Save your page changes first";function JS(e){return e.hasTrustedConsole?e.canCreatePlatformTemplate?!e.capabilities.canPublish||!e.capabilities.hasSiteSettings?{visible:!1,hiddenReason:"not-a-site-page"}:e.siteId?e.hasUnsavedEdits?{visible:!0,enabled:!1,disabledReason:YN}:{visible:!0,enabled:!0}:{visible:!1,hiddenReason:"no-site"}:{visible:!1,hiddenReason:"not-operator"}:{visible:!1,hiddenReason:"no-console"}}var eC="storefront-editor:save-as-template";var XN="plain",oC=[{label:"Plain",value:"plain"},{label:"Filled",value:"filled"},{label:"Line",value:"line"}],ZN="line",QN={KeyFeatures:"filled"};function Da(e){return QN[e]??XN}function Noe(e,o){return eo(oC,Da(o),e)}function Moe(e){return eo(oC,ZN,e)}var JN="inline",eM=[{label:"In this section",value:"inline"},{label:"In its own box",value:"own-box"}];var tt={ProductGrid:{num:"num",title:"title",description:"description",headRows:["num","title","titleSize","description","linkText","linkHref"],renderer:"ProductGridSection",padKey:"padTop",linkProp:"link"},TyreSizes:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicTyreSizes"},FitmentFinder:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"FitmentFinder"},TyreFitment:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicTyreFitment"},BundleOffer:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicBundleOffer"},CompatibleTyres:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicRelatedProducts"},RelatedProducts:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicRelatedProducts"},SpecTable:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"SpecTable"},FAQ:{num:"num",title:"title",linkProp:"link",headRows:["num","title","linkText","linkHref"],renderer:"FAQ"},GalleryB:{num:"num",title:"title",headRows:["num","title","linkText","linkHref"],renderer:"GalleryGrid"},FitmentTable:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"FitmentTable"},Events:{num:"num",title:"title",linkProp:"link",headRows:["num","title","linkText","linkHref"],renderer:"Events"},ProcessSteps:{num:"num",title:"title",description:"description",headRows:["num","title","description"],headStyle:"editorial",renderer:"ProcessSteps",padKey:"padTop"},LongRead:{num:"headNum",title:"headTitle",description:"headDesc",headRows:["headNum","headTitle","headDesc"],headStyle:"editorial",renderer:"LongRead"},Series:{num:"headNum",title:"headTitle",description:"headDesc",headRows:["headNum","headTitle","headDesc"],headStyle:"editorial",renderer:"Series"},TimelineTrack:{num:"eyebrow",title:"title",description:"intro",headRows:["eyebrow","title","intro"],headStyle:"editorial",renderer:"TimelineTrack",padKey:"padTop"},StatsParagraph:{num:"eyebrow",title:"title",description:"desc",headRows:["eyebrow","title","desc"],headStyle:"editorial",renderer:"StatsParagraph"},Footprint:{num:"sectionNumber",title:"heading",description:"tagline",headRows:["sectionNumber","heading","tagline"],headStyle:"editorial",renderer:"Footprint",padKey:"padTop"},Collections:{num:"eyebrow",title:"heading",headRows:["eyebrow","heading"],renderer:"Collections"},Cards:{num:"eyebrow",title:"title",headRows:["eyebrow","eyebrowLook","title"],headStyle:"simple",renderer:"Cards"},Testimonials:{num:"eyebrow",title:"title",headRows:["eyebrow","eyebrowLook","title"],headStyle:"simple",renderer:"Testimonials"},Reviews:{num:"eyebrow",title:"title",headRows:["eyebrow","eyebrowLook","title"],headStyle:"simple",renderer:"Reviews"},Prose:{num:"eyebrow",title:"title",headRows:["eyebrow","title"],headStyle:"essay",renderer:"Prose"},ReviewForm:{num:"eyebrow",title:"title",headRows:["eyebrow","title"],headStyle:"simple",renderer:"ReviewForm"},DeliveryOptions:{num:"eyebrow",title:"title",description:"body",headRows:["eyebrow","title","body"],headStyle:"natural",headRowGap:"gap-3",headDescriptionSize:"text-[15px]",renderer:"DeliveryOptions"}},Tr="SectionHeader";function tC(e){return e in tt}function Goe(e){return eo(eM,JN,e)}var rC=new Set(["Flex"]);function Uoe(e){return!!e?.type&&rC.has(e.type)}var oM={not:{context:"parentType",in:[...rC]}};function $oe(e,o,t){return sa(e,t,oM)}var tM={not:{field:"headPlacement",is:"own-box"}};function qoe(e,o,t){return sa(e,t,tM)}function aC(e,{nodeDefaults:o,newNodeId:t,sectionLabel:r,blockIsOffered:a}){let n=ts(e);return n?n(o,t):tC(e)&&a(be)&&a(Tr)?{type:be,props:{...o(be),id:t(be),direction:"column",name:`${r(e)} section`,content:[{type:Tr,props:{...o(Tr),id:t(Tr),...tt[e]?.headStyle?{headStyle:tt[e].headStyle}:{},...tt[e]?.headRowGap?{rowGap:tt[e].headRowGap}:{},...tt[e]?.headDescriptionSize?{descriptionSize:tt[e].headDescriptionSize}:{},...Da(e)!==Da(Tr)?{eyebrowLook:Da(e)}:{}}},{type:e,props:{...o(e),id:t(e),headPlacement:"own-box"}}]}}:ko[e]?.fixed===!0?{type:e,props:{...o(e),id:t(e),layout:"boxes"}}:null}import{useEffect as rM,useState as aM}from"react";function nC(){let e=Ae().chrome?.products?.list,[o,t]=aM(null);return rM(()=>{if(!e)return;let r=!1;return e().then(a=>{r||t(a)}),()=>{r=!0}},[e]),o}function dC({mode:e,open:o}){let{setSelectedHeroId:t,setSelectHandler:r}=ml(),a=cC().tree,n=e,s=n.kind==="ticker"?n.heroId:null,i=Ma(f=>{f&&(o({kind:"ticker",heroId:f}),UI(f))},[o]);return To(()=>{t(s)},[s,t]),To(()=>{r(i)},[r,i]),{partRows:(f,{rowClick:u})=>{let p=String(f.props.id);return f.type==="Hero"&&ue(fC,{icon:ue(vt,{type:"ticker",size:13}),name:l(na),onSelect:()=>i(p),selected:s===p,rowProps:{onClick:u(()=>i(p))},words:a})}}}function uC({mode:e,select:o}){let{setSelectedHeroPart:t,setSelectHandler:r}=xl(),a=cC().tree,{appState:n}=mM(x=>x),s=n.data.content??[],i=nM(s);i.current=s;let f=e,u=ia.find(x=>fa[x]===f.kind),p=u&&"nodeId"in f?ca(String(f.nodeId),u):null,m=Ma(x=>{let h=Fh(x);if(!h)return;let b=i.current.findIndex(k=>String(k.props.id)===h.nodeId);if(b<0)return;let C={kind:fa[h.part],nodeId:h.nodeId};o({index:b},C)},[o]);return To(()=>{t(p)},[p,t]),To(()=>{r(m)},[r,m]),{partRows:(x,{rowClick:h})=>{let b=String(x.props.id),C=Th(x);if(C.length===0)return null;let k=g=>{let y=ca(b,g.part);return ue(fC,{icon:ue(vt,{type:g.part==="media"?"heroMedia":"heroImage",size:13}),name:l(g.label),onSelect:()=>m(y),selected:p===y,rowProps:{onClick:h(()=>m(y))},words:a},y)},[v,...w]=C;return Na(iC,{children:[k(v),w.length>0&&ue(pM,{children:w.map(k)})]})}}}function pC(e,o){return{partRows:(t,r)=>Na(iC,{children:[e.partRows?.(t,r),o.partRows?.(t,r)]})}}function IM(e){let{adapter:o,capabilities:t,currentSlug:r,siteId:a,docId:n,hasUnsavedEdits:s,bridgeCapabilities:i,notifyParent:f,token:u}=Se(),{hasPreviewLink:p}=t,m=Ue(Ae()).preview?.draftLink,x=mS(e.data),h=JS({hasTrustedConsole:!!u,canCreatePlatformTemplate:i.canCreatePlatformTemplate,capabilities:t,siteId:a,hasUnsavedEdits:s}),b=Ma(()=>{!a||!r||f(eC,{siteId:a,slug:r})},[f,a,r]),C=nS({pageSlug:r,siteId:a,token:u}),k=o.previewHref?.(r)??C;return{barLead:()=>h.visible&&ue(iM,{side:"bottom",content:h.enabled?l("Save this website as a platform template"):l(h.disabledReason),children:ue("span",{className:"sf-tip-disabled",tabIndex:h.enabled?void 0:0,children:ue(sM,{variant:"secondary",disabled:!h.enabled,onClick:b,rightIcon:ue(uM,{size:15}),children:l("Save as Template")})})}),barTrail:()=>p&&r&&ue(iS,{liveHref:k,pageId:n??null,draftLink:m}),mainAction:x}}function hM(){return Na("svg",{width:"17",height:"17",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round",children:[ue("path",{d:"M12 3a9 9 0 0 0 0 18 2.3 2.3 0 0 0 2.3-2.3c0-.55-.22-1.05-.57-1.42-.34-.37-.56-.87-.56-1.43A2.35 2.35 0 0 1 15.6 13.5H18a3 3 0 0 0 3-3c0-4.14-4-7.5-9-7.5z"}),ue("circle",{cx:"7.7",cy:"11.3",r:"1.05",fill:"currentColor",stroke:"none"}),ue("circle",{cx:"12",cy:"8",r:"1.05",fill:"currentColor",stroke:"none"}),ue("circle",{cx:"16",cy:"11",r:"1.05",fill:"currentColor",stroke:"none"})]})}function gM(e,o){let{capabilities:t,templateId:r,siteId:a,tokenRef:n,navigate:s}=Se(),{hasSiteTheme:i,explainsSiteSettings:f}=t,u=v=>o.setView(v),[p,m]=lM(or[0].id),{surface:x,setSurface:h}=ph(),b=()=>{if(i){u("styles"),o.reveal(),Lf();return}e.show(ld),e.reveal(),Lf()},C={id:"pages",label:l("Pages"),icon:ue(cM,{}),panel:({onHide:v})=>ue(nh,{activeSurface:x,onPreviewSurface:h,onNavigate:w=>{h(null),s(r?{kind:"template",id:r,pageSlug:w}:{kind:"page",slug:w,siteId:a??void 0})},onClose:v})},k=[];return!i&&f&&k.push({id:"appearance",label:l("Appearance"),icon:ue(hM,{}),active:e.kind==="website",onSelect:b}),i&&k.push({id:"styles",label:l("Site styles"),icon:ue(dM,{}),panel:({onHide:v,notify:w})=>ue(Fy,{tokenRef:n,siteId:a??void 0,onClose:v,onNotify:w,tab:p,onTabChange:m})}),{railLead:[C],railTrail:k,resolveLeftView:(v,w)=>AS(v,i,w),openSettings:b,openStyles:()=>{m(qI),u("styles")}}}function bM(e,o,t,r){let{kind:a,open:n}=e,{selected:s,zoneOf:i}=o;To(()=>{FS(s?.type==="BookingBox"&&s.props.region==="confirm"?ES(i(String(s.props.id))):null)},[s?.props.id]);let f=Yy(e,o),{capabilities:{hasSiteSettings:u}}=Se(),{setSelected:p,setSelectHandler:m}=Z(),{chat:x,setChat:h,setSelected:b,setSelectHandler:C}=pl(),k=a==="header";To(()=>{p(k)},[k,p]),To(()=>{m(()=>n(nd))},[m,n]);let v=Ma(()=>n(hy),[n]),w=a==="chat";To(()=>{b(w)},[w,b]),To(()=>{C(v)},[C,v]);let{setOpenHandler:g}=aa(),y=Ma(()=>n(gy),[n]);To(()=>{g(y)},[g,y]);let E=pC(dC(e),uC(e)),F=IM(o),L=gM(e,r),B=t.device;return{...E,...F,...L,hasOwnRows:O=>O.type===Zl,ownRows:f.renderLocationTree,sectionPressed:f.sectionPressed,wrap:O=>ue(ks.Provider,{value:!0,children:ue(xM.Provider,{value:B,children:O})}),addPanelRow:O=>u?Na("div",{className:"sf-addside-sitewide",children:[ue("span",{className:"sf-addside-sitewide-glyph","aria-hidden":"true",children:ue(vt,{type:"chat",size:16})}),Na("button",{type:"button",className:"sf-addside-sitewide-name",onClick:()=>{O(),v()},children:[l("Live chat"),ue("span",{className:"sf-addside-sitewide-desc",children:l("A chat bubble on every page")})]}),ue(fM,{checked:x.enabled,onChange:M=>h({enabled:M}),ariaLabel:l("Show the chat bubble on the whole site")})]}):void 0}}var lC=null,Bd=new WeakMap;function yM(e){let o=uu();if(!e||!o)return e;lC!==o&&(lC=o,Bd=new WeakMap);let t=Bd.get(e);return t||(t={...e,choices:e.choices?e.choices.map(r=>({...r,label:l(r.label)})):null,spec:e.spec?{...e.spec,addLabel:l(e.spec.addLabel)}:null},Bd.set(e,t)),t}var SM={isLockedBlock:zS,duplicateBlocked:Gl,nestDepth:(e,o,t)=>o===on?Uu(e,t):0,newSectionNode:aC,canAddTo:(e,o)=>yM(TS(e,o)),blockIsOffered:kS},CM=new Proxy(QS,{get:(e,o)=>{let t=Reflect.get(e,o);return typeof t=="string"?l(t):t}}),vM={labelAtLevel:(e,o,t)=>l(vd(e,o,t)),descriptions:CM,categoryLabel:e=>{let o=hS(e);return o===void 0?void 0:l(o)},firstSection:gS,blockRowName:PS,plainText:mt,Icon:vt,Thumbnail:Ty,useProducts:nC},wM={desktop:2e3,tablet:800,mobile:390},sC="desktop",kM={options:fh,initial:sC,fluid:sC,widths:wM},TM={read:OS,write:e=>RS(e),forSelection:(e,o)=>BS(e,o)},FM={first:Ve,last:me,firstGroup:_e,lastGroup:de,isSectionGroup:Ir,sectionGroupZone:zb,panelOf:e=>e===Ve?nd:null,get groupTab(){return kr()?jb:void 0},get groupBadge(){return kr()?Kb():void 0},get changeNotice(){return kr()?Vb():void 0},get band(){return kr()?EM:void 0},get groupAccepts(){return kr()?$b:void 0}},EM={foldable:!0};function PM(e){return{...pC(dC(e),uC(e)),openSettings:()=>e.show(ld)}}var rre={useOwnerName:rr,useDocumentLabel:XI,useBridges:bM,useStandaloneBridges:PM,useDocumentPass:eS,blockRules:SM,blockLook:vM,devices:kM,leftView:TM,pinned:FM,Canvas:ZS,Inspector:yy};export{VJ as a,YJ as b,XJ as c,ZJ as d,ot as e,wd as f,see as g,Ue as h,Tp as i,bS as j,cee as k,bj as l,dg as m,kj as n,hg as o,Tj as p,gg as q,yg as r,vg as s,wg as t,Mj as u,Hj as v,zj as w,Wj as x,nA as y,Vu as z,Zj as A,Qa as B,yv as C,gH as D,dt as E,bH as F,yH as G,on as H,Uu as I,See as J,Cee as K,uN as L,Hu as M,Iv as N,cH as O,Za as P,zu as Q,hv as R,gv as S,bv as T,pH as U,mH as V,xH as W,IH as X,la as Y,gl as Z,sa as _,WL as $,GL as aa,S8 as ba,_e as ca,de as da,AX as ea,Wb as fa,Gb as ga,eo as ha,tt as ia,Goe as ja,Uoe as ka,$oe as la,qoe as ma,LM as na,j as oa,l as pa,it as qa,r5 as ra,a5 as sa,hb as ta,Cl as ua,$V as va,xb as wa,tf as xa,js as ya,mt as za,Hr as Aa,Zn as Ba,io as Ca,Ke as Da,VU as Ea,e1 as Fa,o1 as Ga,YU as Ha,Qt as Ia,XU as Ja,ZU as Ka,mf as La,yI as Ma,el as Na,r7 as Oa,a7 as Pa,n7 as Qa,l7 as Ra,M1 as Sa,da as Ta,Xh as Ua,Zh as Va,vl as Wa,H9 as Xa,z9 as Ya,W9 as Za,G9 as _a,A2 as $a,N2 as ab,M2 as bb,H2 as cb,Be as db,Hm as eb,B6 as fb,wn as gb,w0 as hb,N6 as ib,H6 as jb,T0 as kb,z6 as lb,Gm as mb,wi as nb,ki as ob,V6 as pb,X6 as qb,Z6 as rb,Q6 as sb,J6 as tb,qr as ub,Ei as vb,Pi as wb,un as xb,jp as yb,Gr as zb,Yp as Ab,L4 as Bb,Lk as Cb,O4 as Db,tn as Eb,Xu as Fb,AH as Gb,BH as Hb,Uv as Ib,_H as Jb,MH as Kb,Qu as Lb,HH as Mb,qv as Nb,zH as Ob,Yk as Pb,xn as Qb,r6 as Rb,di as Sb,a6 as Tb,t0 as Ub,n6 as Vb,s6 as Wb,i6 as Xb,g6 as Yb,b6 as Zb,y6 as _b,sm as $b,Q4 as ac,J4 as bc,e6 as cc,o6 as dc,s0 as ec,hn as fc,c6 as gc,Im as hc,Dt as ic,Se as jc,AM as kc,Ae as lc,yC as mc,SC as nc,bs as oc,Sk as pc,x4 as qc,Up as rc,qo as sc,aH as tc,iH as uc,_s as vc,Nv as wc,PH as xc,UH as yc,ve as zc,Vs as Ac,R5 as Bc,Mr as Cc,Ht as Dc,M5 as Ec,Qs as Fc,Js as Gc,e3 as Hc,o3 as Ic,vp as Jc,t3 as Kc,r3 as Lc,a3 as Mc,kp as Nc,zM as Oc,UM as Pc,Bt as Qc,Lp as Rc,Rp as Sc,C4 as Tc,qp as Uc,Me as Vc,xu as Wc,KM as Xc,wC as Yc,VM as Zc,YM as _c,kC as $c,QM as ad,TC as bd,JM as cd,_t as dd,o2 as ed,t2 as fd,r2 as gd,a2 as hd,ja as id,n2 as jd,PC as kd,d2 as ld,yu as md,_C as nd,DC as od,NC as pd,Cs as qd,u2 as rd,Mk as sd,X4 as td,u6 as ud,p6 as vd,m6 as wd,x6 as xd,I6 as yd,Em as zd,y0 as Ad,C6 as Bd,Tm as Cd,Fm as Dd,v6 as Ed,bn as Fd,yn as Gd,k6 as Hd,Ut as Id,Cn as Jd,E6 as Kd,P6 as Ld,L6 as Md,Nm as Nd,R6 as Od,Qo as Pd,Do as Qd,Bi as Rd,Co as Sd,dW as Td,uW as Ud,pW as Vd,mW as Wd,gW as Xd,bW as Yd,$T as Zd,yW as _d,SW as $d,CW as ae,YT as be,vW as ce,wW as de,kW as ee,He as fe,TW as ge,QT as he,FW as ie,EW as je,Yt as ke,PW as le,Ln as me,$t as ne,LW as oe,vx as pe,Rn as qe,An as re,OW as se,RW as te,AW as ue,BW as ve,_W as we,DW as xe,NW as ye,MW as ze,HW as Ae,zW as Be,WW as Ce,GW as De,Bn as Ee,_n as Fe,Dn as Ge,Mi as He,Nn as Ie,UW as Je,gt as Ke,$W as Le,qW as Me,jW as Ne,KW as Oe,VW as Pe,YW as Qe,Zo as Re,XW as Se,ZW as Te,Mn as Ue,QW as Ve,Hi as We,JW as Xe,eG as Ye,zi as Ze,oG as _e,Lx as $e,Ox as af,Rx as bf,tG as cf,NF as df,rG as ef,aG as ff,Ye as gf,gr as hf,A_ as if,oy as jf,nZ as kf,lZ as lf,sZ as mf,iZ as nf,fZ as of,cZ as pf,dZ as qf,uZ as rf,pZ as sf,mZ as tf,xZ as uf,Il as vf,LL as wf,d8 as xf,u8 as yf,BL as zf,DL as Af,mh as Bf,zL as Cf,h8 as Df,g8 as Ef,Ih as Ff,b8 as Gf,gh as Hf,E8 as If,ul as Jf,G$ as Kf,U$ as Lf,pl as Mf,CL as Nf,J$ as Of,aa as Pf,r8 as Qf,ph as Rf,MJ as Sf,HJ as Tf,zJ as Uf,WJ as Vf,jee as Wf,Kee as Xf,Yee as Yf,l8 as Zf,f8 as _f,xl as $f,RQ as ag,Ey as bg,Py as cg,v2 as dg,d7 as eg,u7 as fg,p7 as gg,m7 as hg,Bf as ig,_f as jg,Ch as kg,L8 as lg,vh as mg,$L as ng,qf as og,B8 as pg,_8 as qg,qL as rg,D8 as sg,ca as tg,Fh as ug,N8 as vg,Ph as wg,h9 as xg,Dh as yg,hc as zg,gc as Ag,dR as Bg,uR as Cg,bc as Dg,xR as Eg,ma as Fg,kl as Gg,Y9 as Hg,wc as Ig,aj as Jg,nj as Kg,lj as Lg,ig as Mg,uA as Ng,pA as Og,mA as Pg,aK as Qg,nK as Rg,SA as Sg,vA as Tg,Mg as Ug,pK as Vg,mK as Wg,qg as Xg,yK as Yg,ga as Zg,Vg as _g,Lc as $g,Yg as ah,Xg as bh,kK as ch,Zg as dh,MA as eh,TK as fh,FK as gh,EK as hh,PK as ih,HA as jh,LK as kh,OK as lh,RK as mh,WA as nh,AK as oh,$A as ph,BK as qh,Rc as rh,rV as sh,_l as th,QV as uh,AB as vh,Cb as wh,BB as xh,_B as yh,DB as zh,nY as Ah,Fb as Bh,XY as Ch,ZY as Dh,me as Eh,Wl as Fh,uo as Gh,Ay as Hh,By as Ih,DQ as Jh,Ra as Kh,_y as Lh,Dy as Mh,HQ as Nh,zQ as Oh,LD as Ph,oS as Qh,gd as Rh,tS as Sh,TS as Th,Hee as Uh,ns as Vh,CN as Wh,vN as Xh,toe as Yh,I2 as Zh,y2 as _h,XN as $h,oC as ai,ZN as bi,Da as ci,Noe as di,Moe as ei,rre as fi};