efficient-storefront-blocks 0.47.0 → 0.49.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.
- package/CHANGELOG.md +49 -0
- package/dist/chunks/EditorPreviewCheckout-PU4R5GN7.js +4 -0
- package/dist/chunks/{SiteEditorProvider-F3CFXIIO.js → SiteEditorProvider-FZBRQ2B2.js} +1 -1
- package/dist/chunks/chunk-5JCRKBCY.js +1 -0
- package/dist/chunks/chunk-C7MFEEPZ.js +1 -0
- package/dist/chunks/chunk-VMPVYAOB.js +255 -0
- package/dist/chunks/{chunk-IAV6LRGK.js → chunk-ZC7LDSMX.js} +1 -1
- package/dist/chunks/{fitment-data-2FUV22CG.js → fitment-data-K76YEOJL.js} +1 -1
- package/dist/consent.d.ts +47 -0
- package/dist/consent.js +1 -0
- package/dist/contract.js +1 -1
- package/dist/editor.css +1 -1
- package/dist/index.d.ts +21 -91
- package/dist/index.js +108 -80
- package/dist/words.d.ts +12 -3
- package/dist/words.js +6 -6
- package/package.json +10 -3
- package/dist/chunks/EditorPreviewCheckout-33A6G6NG.js +0 -4
- package/dist/chunks/chunk-C6CQWBF7.js +0 -255
- package/dist/chunks/chunk-OUTUANSR.js +0 -1
- package/dist/chunks/chunk-PNTJHDOO.js +0 -1
- /package/dist/chunks/{SectionEditorShell-3ZKNO54T.js → SectionEditorShell-2BUHUZDQ.js} +0 -0
- /package/dist/chunks/{chunk-64T5EISP.js → chunk-OCPDFASX.js} +0 -0
- /package/dist/chunks/{chunk-C6CQWBF7.js.LEGAL.txt → chunk-VMPVYAOB.js.LEGAL.txt} +0 -0
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
import{$ as ys,A as $o,Aa as mu,B as _t,C as Dt,Ca as Ga,Da as xu,E as eu,Ea as Iu,H as Ar,J as ou,Ja as hu,K as gs,L as tu,N as ru,O as au,Q as nu,R as bs,T as lu,U as oo,V as lt,W as su,X as Io,Y as Wa,_ as iu,a as qd,c as jd,ca as fu,d as no,da as Ss,e as At,f as Eo,fa as Cs,g as za,h as Yd,ja as cu,l as Rr,n as Is,pa as st,ra as du,s as Xd,t as Zd,ta as uu,u as hs,v as Qe,va as pu,w as Qd,x as Jd,y as Bt,z as xo,za as X}from"./chunk-C7MFEEPZ.js";import{a as $d,c as ao,l as Kd,m as Or,n as Vd,q as gu,u as vs}from"./chunk-OCPDFASX.js";var Ua=null,MC="en",yu=null;function d2(e,o,t){Ua=e??null,MC=o||"en",yu=t??null}function j(){return yu}function Su(){return Ua}function bu(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=Ua?Ua[e]:void 0;if(typeof t=="function"){try{let r=t(o??{});if(typeof r=="string"&&r)return r}catch{}return bu(e,o)}return bu(typeof t=="string"&&t?t:e,o)}function it(e,o,t,r){return l(t===1?e:o,{...r,n:t})}import{hostLoadRefusalOf as HC,hostUnreachableMessage as zC,isBackendError as WC,provideHostFailures as GC,readHostFailure as UC,STATUS_UNREACHABLE as $C,WebsiteBackendError as ws}from"efficient-easel/screen/lib/backend-error";function Le(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 Cu(e,o){return typeof e=="number"&&Number.isFinite(e)?e:o}function vu(e,o){return typeof e=="boolean"?e:o}function $a(e,o){if(!Array.isArray(e))return o;let t=e.map(r=>typeof r=="string"?r:Le(r?.text,"")).map(r=>r.trim()).filter(Boolean);return t.length?t:o}var wu="cart-drawer",b2="cart-drawer";var qC={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 y2(e,o){return o===0?e.subtitleEmpty:o===1?e.subtitleOne:e.subtitleMany.replace("{count}",String(o))}function S2(e){let o=e??{},t=qC;return{kickerBadge:Le(o.kickerBadge,t.kickerBadge),kickerText:Le(o.kickerText,t.kickerText),titleLead:Le(o.titleLead,t.titleLead),titleAccent:Le(o.titleAccent,t.titleAccent),subtitleEmpty:Le(o.subtitleEmpty,t.subtitleEmpty),subtitleOne:Le(o.subtitleOne,t.subtitleOne),subtitleMany:Le(o.subtitleMany,t.subtitleMany),leadTimeValue:Le(o.leadTimeValue,t.leadTimeValue),shipsToFallback:Le(o.shipsToFallback,t.shipsToFallback),promises:$a(o.promises,t.promises),emptyKicker:Le(o.emptyKicker,t.emptyKicker),emptyBody:Le(o.emptyBody,t.emptyBody)}}var Tu="consent-banner",w2="consent-banner";var jC=[{value:"bar",label:"Bar"},{value:"card",label:"Card"}],k2="Layout",ku={layout:"bar"},KC=e=>jC.some(o=>o.value===e);function T2(e){let o=Le((e??{}).layout,ku.layout);return{layout:KC(o)?o:ku.layout}}var VC=["meta","eyebrow","heading","body","statName","statValue","formEyebrow","formHeading","formIntro","fieldLabel","option","finePrint","dismiss","doneHeading","doneBody"],P2={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"},YC={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"},L2={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 XC(e){return typeof e=="string"&&Eo.includes(e)?e:null}function Fu(e){let o={};for(let t of VC){let r=XC(e[YC[t]]);r&&(o[t]=r)}return o}var Nt="site-footer";var R2=Nt,A2={desktop:!0,tablet:!0,mobile:!0},B2={desktop:!1,tablet:!1,mobile:!1},ks=1,Eu=6,_2=Array.from({length:Eu-ks+1},(e,o)=>ks+o),qa={desktop:6,tablet:3,mobile:2},ZC={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),ks),Eu);function D2(e){if(typeof e=="number")return ZC[ft(e)]??{desktop:ft(e),tablet:ft(e),mobile:ft(e)};if(e&&typeof e=="object"){let o=e;return{desktop:ft(o.desktop??qa.desktop),tablet:ft(o.tablet??qa.tablet),mobile:ft(o.mobile??qa.mobile)}}return{...qa}}var QC="subscribe-popup",U2="subscribe-popup";var JC=[QC,Nt,wu,Tu];function Ou(e){return JC.includes(e)}var ev=["delay","scroll","exit"],ov=["all","chosen"],tv=["visit","days","never"],rv=["right","left"],av={min:0,max:60},nv={min:10,max:90},lv={min:1,max:90},Fs={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:{}},Ie=Le,sv=Cu,Pu=vu,Ru=$a;function ja(e,o,t){return typeof o=="string"&&e.includes(o)?o:t}function Ts(e,o,t){let r=sv(e,t);return Math.min(o.max,Math.max(o.min,Math.round(r)))}function iv(e){return typeof e.hideAfter=="string"?ja(tv,e.hideAfter,Fs.hideAfter):e.oncePerSession===!0?"visit":e.oncePerSession===!1?"never":Fs.hideAfter}function fv(e){return Array.isArray(e)?e.map(o=>typeof o=="string"?o.trim():"").filter(Boolean).map(o=>o.startsWith("/")?o:`/${o}`):[]}function Lu(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 cv(e,o){return Array.isArray(e)?Ru(e,[]):o}function dv(e,o){return Array.isArray(e)?e.map(t=>{let r=t??{};return{label:Ie(r.label,""),value:Ie(r.value,"")}}).filter(t=>t.label||t.value):o}function $2(e){let o=e??{},t=Fs;return{metaLabel:Ie(o.metaLabel,t.metaLabel),issueLabel:Lu(o.issueLabel,t.issueLabel),issueNumber:Lu(o.issueNumber,t.issueNumber),kicker:Ie(o.kicker,t.kicker),heading:Ie(o.heading,t.heading),deck:Ie(o.deck,t.deck),stats:dv(o.stats,t.stats),formLabel:Ie(o.formLabel,t.formLabel),formHeading:Ie(o.formHeading,t.formHeading),formIntro:Ie(o.formIntro,t.formIntro),firstNameLabel:Ie(o.firstNameLabel,t.firstNameLabel),firstNamePlaceholder:Ie(o.firstNamePlaceholder,t.firstNamePlaceholder),emailLabel:Ie(o.emailLabel,t.emailLabel),emailPlaceholder:Ie(o.emailPlaceholder,t.emailPlaceholder),interestsLabel:Ie(o.interestsLabel,t.interestsLabel),interests:Ru(o.interests,t.interests),frequencyLabel:Ie(o.frequencyLabel,t.frequencyLabel),frequencies:cv(o.frequencies,t.frequencies),submitText:Ie(o.submitText,t.submitText),finePrint:Ie(o.finePrint,t.finePrint),dismissText:Ie(o.dismissText,t.dismissText),emailInvalidText:Ie(o.emailInvalidText,t.emailInvalidText),submitErrorText:Ie(o.submitErrorText,t.submitErrorText),successHeading:Ie(o.successHeading,t.successHeading),successBody:Ie(o.successBody,t.successBody),keepBrowsingText:Ie(o.keepBrowsingText,t.keepBrowsingText),formSlug:typeof o.formSlug=="string"?o.formSlug.trim():t.formSlug,autoOpen:Pu(o.autoOpen,t.autoOpen),autoOpenDelaySec:Ts(o.autoOpenDelaySec,av,t.autoOpenDelaySec),trigger:ja(ev,o.trigger,t.trigger),scrollPercent:Ts(o.scrollPercent,nv,t.scrollPercent),showOn:ja(ov,o.showOn,t.showOn),showOnPages:fv(o.showOnPages),hideAfter:iv(o),hideDays:Ts(o.hideDays,lv,t.hideDays),formSide:ja(rv,o.formSide,t.formSide),valuePanelOnPhone:Pu(o.valuePanelOnPhone,t.valuePanelOnPhone),sectionAccent:o.sectionAccent,sectionCorners:o.sectionCorners,sectionCornerSides:o.sectionCornerSides,textStyles:Fu(o)}}import{jsx as Es,Fragment as uv,jsxs as pv}from"react/jsx-runtime";import{createContext as mv,useContext as xv}from"react";var Iv={mirrorHostStyles:!0,css:null,fontHrefs:[]},Au=mv(Iv);function V2({value:e,children:o}){return Es(Au.Provider,{value:e,children:o})}function Ps(){return xv(Au)}function Bu(){let{css:e,fontHrefs:o}=Ps();return pv(uv,{children:[o.map(t=>Es("link",{rel:"stylesheet",href:t},t)),e?Es("style",{"data-sf-canvas-css":"",children:e}):null]})}import{jsx as hv}from"react/jsx-runtime";import{createContext as gv,useContext as bv}from"react";var _u=gv(void 0);function Q2({metadata:e,children:o}){return hv(_u.Provider,{value:e,children:o})}var Du=()=>bv(_u);import{jsx as Se,Fragment as FC,jsxs as us}from"react/jsx-runtime";import{useCallback as Na,useEffect as To,useRef as zM,useState as WM}from"react";import{Button as GM,Tooltip as UM}from"efficient-shell/ui";import{SettingsSwitch as $M}from"efficient-easel/panel";import{PagesIcon as qM,StylesIcon as jM}from"efficient-easel/rail";import{PaletteIcon as KM}from"efficient-shell/icons/efficient";import{TemplateIcon as VM}from"efficient-easel/icons";import{Subtree as YM,TreeRow as EC}from"efficient-easel/tree";import{useEasel as XM}from"efficient-easel/easel";import{useEaselStrings as PC}from"efficient-easel/strings";import{createContext as yv,useContext as Sv}from"react";var Ls=yv(!1),oH=()=>Sv(Ls);import{jsx as fe,Fragment as mh,jsxs as cl}from"react/jsx-runtime";import{Fragment as yL,useEffect as SL,useId as CL,useMemo as xh,useState as lr}from"react";import{ScreenDocumentContext as Mt,ScreenDocumentProvider as aH,useScreenDocument as ye}from"efficient-easel/screen/components/ScreenDocumentContext";import{UiIcon as dl}from"efficient-easel/draw/client";import{default as Ka,PanelHideButton as Os,PanelModeExit as sH,PanelShowStrip as iH}from"efficient-easel/screen/components/SidePanelHead";import{jsx as Z,jsxs as wt,Fragment as ar}from"react/jsx-runtime";import{useEasel as sh}from"efficient-easel/easel";import{useState as Hf}from"react";import{jsx as Qt,jsxs as Jx,Fragment as IE}from"react/jsx-runtime";import{useState as eI}from"react";import{SettingsDefaultReset as hE,SettingsField as gE}from"efficient-easel/panel";import{useEaselStrings as bE}from"efficient-easel/strings";import{AddIcon as yE}from"efficient-easel/icons";import{jsx as I,jsxs as Ct,Fragment as _o}from"react/jsx-runtime";import{cloneElement as px,useId as d0,useRef as Wi,useState as Pn}from"react";import{useEasel as Yr,useSelectedFields as mx}from"efficient-easel/easel";import{readHidable as Qo,hidableText as u0}from"efficient-easel/draw";import{FOLD_FIELD_MARKER as Gi,LINK_FIELD_MARKER as p0,MEDIA_FIELD_MARKER as m0,SCAFFOLD_FIELD_MARKER as x0,TEXT_FIELD_MARKER as Bo,foldMetaOf as Do,textFieldIdentifier as iW}from"efficient-easel/draw";import{jsx as Uu}from"react/jsx-runtime";import{useCallback as Tv,useEffect as Fv,useRef as Ev,useState as Pv}from"react";import{useEasel as Lv}from"efficient-easel/easel";import{SettingsAction as Ov}from"efficient-easel/panel";function Rs(e){return typeof e=="number"&&Number.isFinite(e)}function dH(e,o){if(!Rs(e))return;let t=Wa(Io(e));if(Object.keys(t).length===0)return;let r=t[Va];if(typeof r!="string")return t;let a=Br(o)?_r(r,Po(o)??[]):r;return{...t,[Cv]:a}}var Cv="--sf-section-radius",Va="--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 Br(e){let o=Po(e);return o!==null&&o.length<ct.length}function _r(e,o){return ct.map(t=>o.includes(t)?e:"0").join(" ")}var Nu=[{value:"tl",label:"Top left"},{value:"tr",label:"Top right"},{value:"bl",label:"Bottom left"},{value:"br",label:"Bottom right"}];var vv="--sf-card-box-radius",wv="--sf-site-card-radius",xH="sf-section-bleeds";function As(e){return typeof e=="number"&&Number.isFinite(e)}function IH(e,o){if(!As(e))return;let t=Wa(Io(e))[Va];if(typeof t!="string")return;let r=Br(o)?_r(t,Po(o)??[]):t;return{[vv]:r}}function hH(e){let o=e[Va];return typeof o=="string"?{[wv]:o}:{}}function Mu(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 kv}from"efficient-easel/draw";function Dr(e){if(!e)return null;let o=e.lastIndexOf(":");return o>0?{ownerId:e.slice(0,o),slot:e.slice(o+1)}:null}function Ya(e,o,t){let r=Dr(t?.zone),a=r?kv(e,o,r.ownerId):null;return a&&r?{...a,slot:r.slot}:null}function Hu(e,o,t){let r=Ya(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}:As(i?.props?.cardCorners)?{can:!0,others:u,zone:r.zone,index:r.index,data:{...r.item,props:{...r.item.props,[a]:Mu(n,f)}}}:{can:!1,reason:"unset",others:u}}function zu(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 Wu(e){return it("Applied to {n} card","Applied to {n} cards",e)}function Gu(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 Rv=2200,Av="apply-corners-to-siblings",Bv="Apply to all cards";function _v({plan:e,doneCount:o,onPress:t}){return Uu(Ov,{id:Av,label:l(Bv),note:zu(e),disabled:!e.can,done:o!==null,doneLabel:Wu(o??0),onPress:t})}function $u(){let{appState:e,config:o}=Lv(f=>f),t=qo(),[r,a]=Pv(null),n=Ev(null);Fv(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=Hu(o,e.data.content??[],e.ui.itemSelector),i=Tv(()=>{Gu(s,t.replaceComponent),s.can&&(a(s.others),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>a(null),Rv))},[s,t]);return Uu(_v,{plan:s,doneCount:r,onPress:i})}var qu=1;function Dv(e){return Io(e)}function DH(e){let o=Dv(e);return o===null?{}:{"--sf-card-image-radius":`${o}px`}}var ju=1,Ku="Corners";function Nv(e){return Io(e)}function zH(e,o){let t=Nv(e);if(t===null)return null;let r=`${t}px`;return{borderRadius:Br(o)?_r(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]]}},Bs=Object.keys(Lo),Yu=[2,3,4,6];function Xu(e){return typeof e!="string"||e===""?null:Lo[e]??null}function Vu(e,o){return o?6/e.acrossPhone:12/e.across}var Mv="sf-wall--";function Hv(e){return`${Mv}${e}`}function GH(e){let o=Lo[e],t=`.${Hv(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,Vu(o,!1))),r.push("@media (max-width:800px){"),r.push(`${t}{grid-template-columns:repeat(6,minmax(0,1fr))}`),r.push(...a(o.phone,Vu(o,!0))),r.push("}"),r.join("")}var Xa=12,Zu=1,zv=3;var Wv=3;function _s(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 Gv(e){return _s(e,1,Xa)??Wv}function qH(e,o){return _s(e,Zu,zv)??(Gv(o)===4?2:Zu)}function jH(e){return e==null||e===""?null:_s(e,1,Xa)}var KH="data-sf-span";function VH(e){if(!e)return!1;if(e.type==="Grid")return!0;if(e.type==="GalleryB"){if(Xu(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"],Za="bottom-left";var Qa={"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 Uv(e){let o=ho.indexOf(dt(e));return{band:Math.floor(o/3),column:["start","center","end"][o%3]}}function $v(e){return 1+Uv(e).band*6}function XH(e){return $v(e)+1}function dt(e){return ho.includes(e)?e:Za}function ZH(e){let o=typeof e=="number"&&Number.isFinite(e)?e:0;return Math.max(-40,Math.min(40,Math.round(o)))}function QH(e,o=60){let t=typeof e=="number"&&Number.isFinite(e)?e:o;return Math.max(30,Math.min(100,Math.round(t)))}function Ds(e,o){let t=dt(o);return e.filter(r=>dt(r?.props?.placement)===t).length}function Qu(e){return`${Qa[dt(e)]} already holds 4 boxes. Move one somewhere else first.`}function Ns(e,o){let t=e.filter(r=>r?.props?.id!==o);return ho.map(r=>{let a=Ds(t,r)>=4,n=Qa[r];return a?{value:r,label:n,disabled:!0,title:Qu(r)}:{value:r,label:n}})}function Ja(e,o){let t=o===void 0?Za:dt(o?.props?.placement);return Ds(e,t)>=4?Qu(t):null}var en="HeroGroup";function qv(e){return ho.map(o=>{let t=Ds(e,o);return{anchor:o,total:t,hidden:t-4}}).filter(o=>o.hidden>0)}function Ms(e){let o=qv(e);return o.length===0?null:o.map(({anchor:t,total:r,hidden:a})=>{let n=Qa[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 Ju(e,o){let t=o;if(t?.type!==en)return null;let r=t.props?.id===void 0?"":String(t.props.id);return r?Ja(Hs(e,r),t):null}function Hs(e,o){let t=op(e,o);return t&&t.ownerType===Kv?t.siblings:[]}function ep(e,o){let t=op(e,o);return t?t.ancestorTypes.filter(r=>r===en).length:jv}var jv=1,Kv="HeroSlide";function op(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 Vv}from"react/jsx-runtime";var Yv="sf-hint-keep";function tp({children:e}){return Vv("span",{className:Yv,children:e})}import{AdjustIcon as I0,AlignLeftIcon as h0,EyeIcon as g0,AlignSeparateIcon as b0,AnimationIcon as xx,BackgroundIcon as y0,BorderAllIcon as S0,BlockSectionIcon as C0,CartIcon as v0,ColumnWidthsIcon as Ix,ColumnsIcon as w0,CornerIcon as k0,DirectionDownIcon as T0,DirectionLeftIcon as F0,DirectionRightIcon as E0,DirectionUpIcon as P0,DollarIcon as L0,FinishIcon as O0,GapIcon as hx,GridIcon as R0,GroundIcon as A0,HashIcon as gx,HeightIcon as B0,ImageIcon as _0,ListIcon as D0,LocationIcon as zi,PaddingAllIcon as N0,PaddingBottomIcon as bx,PaddingLeftIcon as yx,PaddingRightIcon as Sx,PaddingTopIcon as Cx,PageIcon as vx,PhoneIcon as M0,PlacementIcon as H0,ProductSizeIcon as z0,StickyIcon as W0,RotateIcon as G0,SquareIcon as U0,TypeIcon as $0,WidthIcon as q0,WrapIcon as j0}from"efficient-easel/icons";import{jsx as J,Fragment as go,jsxs as bo}from"react/jsx-runtime";import{TitleIcon as Xv,ButtonIcon as Zv,DollarIcon as Qv,HashIcon as Jv,LinkIcon as ew,NoteIcon as ow,TagIcon as tw,TextLinesIcon as rw}from"efficient-easel/icons";var rp={body:rw,button:Zv,link:ew,label:tw,number:Jv,price:Qv,note:ow,title:Xv},ap={eyebrow:bo(go,{children:[J("path",{d:"M5 6.5h5"}),J("path",{d:"M5 12.5h14"}),J("path",{d:"M5 18h11"})]}),heading:bo(go,{children:[J("path",{d:"M6.5 5v14"}),J("path",{d:"M17.5 5v14"}),J("path",{d:"M6.5 12h11"})]}),intro:bo(go,{children:[J("path",{d:"M4 5.5v13"}),J("path",{d:"M8 7.5h12"}),J("path",{d:"M8 12h12"}),J("path",{d:"M8 16.5h8"})]}),value:bo(go,{children:[J("rect",{x:"2.5",y:"7",width:"19",height:"10",rx:"2"}),J("path",{d:"M6.5 12h7"})]}),name:bo(go,{children:[J("path",{d:"M6 3.5v17"}),J("path",{d:"M6 5h11.5l-2.6 3.6L17.5 12H6z"})]}),date:bo(go,{children:[J("rect",{x:"4",y:"5.5",width:"16",height:"15",rx:"2"}),J("path",{d:"M4 10.5h16"}),J("path",{d:"M9 3.2v4.4"}),J("path",{d:"M15 3.2v4.4"})]}),caption:bo(go,{children:[J("rect",{x:"3.5",y:"4.5",width:"17",height:"11",rx:"2"}),J("path",{d:"M3.5 12.8l4.2-3.2 3.6 2.8 3.4-2.4 5.8 4"}),J("path",{d:"M6.5 19.5h11"})]}),quote:bo(go,{children:[J("path",{d:"M9.5 5.5C7 7.2 5.5 9.7 5.5 12.8h4v5.7h-5v-5.7"}),J("path",{d:"M19.5 5.5c-2.5 1.7-4 4.2-4 7.3h4v5.7h-5v-5.7"})]}),tag:bo(go,{children:[J("rect",{x:"3",y:"5.5",width:"18",height:"13",rx:"2.5"}),J("path",{d:"M8 9.5h8"}),J("path",{d:"M12 9.5v5"})]}),meta:bo(go,{children:[J("path",{d:"M4 7h16"}),J("path",{d:"M4 14h3.5"}),J("path",{d:"M10.5 14h3"}),J("path",{d:"M17 14h3"})]})};function zs({noun:e,size:o=14,strokeWidth:t=1.8,className:r,style:a}){let n=rp[e];return n?J("span",{className:r,style:{display:"inline-flex",...a},"aria-hidden":"true",children:J(n,{size:o})}):J("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:ap[e]})}var a5=Object.keys(rp);var n5=Object.keys(ap);var aw="#ffffff",nw=/^#[0-9a-fA-F]{6}$/;function Ws(e){return lw(e)?e:aw}function lw(e){return typeof e=="string"&&nw.test(e)}function s5(e){return{"--bg":Ws(e)}}var Gs=[{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}],sw=Gs.filter(e=>e.ink);function iw(e){let o={color:e.fg};for(let{role:t,token:r}of sw)o[r]=e[t];return o}var fw={fg:"var(--overlay-fg)",line:"color-mix(in srgb, var(--overlay-fg) 24%, transparent)",muted:"color-mix(in srgb, var(--overlay-fg) 76%, transparent)"},np=Object.freeze(iw(fw));var on=-1,cw="sf-section-accent",lp="Color",sp=new Set(["CategoryBar","DocTabs"]),d5=new Set(["Flex"]),dw=0;function Us(e){return e===on?null:typeof e=="number"&&Number.isInteger(e)&&e>=0?e:dw}function u5(e){return e??on}function uw(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 Gs)t[`--sf-sec-${r}`]=`var(${o}-${r}, var(--theme-${r}))`;return t}function p5(e){let o=Us(e.sectionAccent);return o===null?null:{className:cw,style:uw(o)}}var pw=["fade","rise","scale"],$s="none",ip=[{label:"None",value:$s},{label:"Fade",value:"fade"},{label:"Rise",value:"rise"},{label:"Scale",value:"scale"}];function I5(e){return pw.includes(e)?e:null}var fp="data-sf-anim",Nr="data-sf-anim-state";function h5(e){let o=()=>{};if(typeof IntersectionObserver>"u"||!e.getAttribute(fp))return o;let t=window.innerHeight||document.documentElement.clientHeight;if(e.getBoundingClientRect().top<t)return o;e.setAttribute(Nr,"armed");let r=new IntersectionObserver(a=>{for(let n of a)if(n.isIntersecting){r.disconnect(),mw(e);break}},{threshold:0});return r.observe(e),()=>{r.disconnect(),e.removeAttribute(Nr)}}function mw(e){if(!e.getAttribute(fp))return;e.removeAttribute(Nr),e.offsetWidth,e.setAttribute(Nr,"play");let o=t=>{t.target===e&&(e.removeAttribute(Nr),e.removeEventListener("animationend",o))};e.addEventListener("animationend",o)}var g5=sp;function js(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(qs(r,o,0))return a??{}}return null}function qs(e,o,t){if(t>12||!e||typeof e!="object")return!1;if(Array.isArray(e))return e.some(a=>qs(a,o,t+1));let r=e.props;return r&&typeof r=="object"&&r.id===o?!0:Object.values(e).some(a=>qs(a,o,t+1))}import{SettingsDefaultReset as qe,SettingsField as ne,SettingsGroupHead as K0,SettingsGroupSub as V0,SettingsBorder as Y0,SettingsSegmented as X0,SettingsSides as Z0,SettingsSidesEach as wx,sidesStartEach as Q0,SettingsSwitch as kx,borderSides as J0,borderStartEach as eF}from"efficient-easel/panel";import{FieldSelect as oF,ListField as tF}from"efficient-easel/fields";import{DisplayChips as rF}from"efficient-shell/ui";function Ht(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 tn(e,o){return Ht(e)[o]!==!1}function Ks(e,o,t){let r=Ht(o)[t];return typeof r=="boolean"?r:tn(e,t)}function cp(e){return Object.values(Ht(e)).some(o=>o===!1)}function dp(e){return Object.keys(Ht(e)).length>0}function up(e,o,t){let r={...Ht(e)};return t?delete r[o]:r[o]=!1,Object.keys(r).length?r:void 0}function pp(e,o,t){return{...Ht(e),[o]:t}}function S5(e,o,t){let r=tn(e,t),a=Ks(e,o,t);return r&&a?"":!r&&!a?"hidden":r?"max-[720px]:hidden":"min-[720px]:hidden"}import{AlignmentGrid as aF,Checkbox as FW,CornersInput as nF,DateTimePicker as lF,FOCAL_DEFAULT as EW,PictureTiles as Tx,Slider as sF,Tooltip as Fx}from"efficient-shell/ui";import{jsx as ut,jsxs as Iw}from"react/jsx-runtime";import{ColorPicker as hw,HexInput as gw}from"efficient-shell/ui";import{SettingsDefaultReset as bw,SettingsField as yw}from"efficient-easel/panel";import{typedHex as Vs}from"efficient-easel/pick";import{typedHex as xw}from"efficient-easel/pick";function mp(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?xw(i):null;!f||o.has(f)||(o.add(f),t.push({name:s,value:f}))}}),t}function to({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,after:s,ariaLabel:i}){return ut(Cw,{value:e,onChange:o,label:l(i??t),id:r,caption:a,inherited:n,after:s})}function Sw(){let{theme:e}=X();return mp(e).map(o=>({value:o.value,label:o.name}))}function Cw({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,after:s}){let i=Sw(),f=e?null:Vs(n??""),u=a!==void 0&&(!e||Vs(a)!==Vs(e))?a:null,p=m=>{m!==e&&o(m)};return Iw("div",{className:"sf-colour",children:[ut(hw,{id:r,value:e,onChange:p,label:t,presets:i,fallback:f??void 0,size:"sm",align:"end"}),u!==null?ut("span",{className:"sf-colour-caption",children:u}):ut("span",{className:"sf-colour-hexwrap",children:ut(gw,{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]})}function rn({label:e,icon:o,value:t,inherited:r,resetTo:a,onChange:n,onReset:s,hint:i}){let f=!!t;return ut(yw,{label:e,icon:o,changed:f,action:to({value:t,inherited:f?void 0:r,onChange:n,label:e,after:ut(bw,{words:j()?.panel,label:e,changed:f,detail:a,onReset:s})}),hint:i})}import{jsx as Mr}from"react/jsx-runtime";import{useEffect as $w,useState as qw}from"react";import{markSelection as jw,useCaretEdit as Kw}from"efficient-easel/copy";import{RevertIcon as Vw}from"efficient-easel/icons";import{IconButton as Yw,TextToolbar as Xw,Tooltip as Zw}from"efficient-shell/ui";import{applyMark as z5,markupTools as W5,MARKUP_TOOLS as G5,COPY_FIELD_TOOLS as U5,STOREFRONT_MARKUP as $5,tokenizeInline as q5,stripInline as j5,isSafeLinkHref as K5}from"efficient-shell/markup";import{applyMark as Bw,markedAt as _w,markupTools as Dw,MARKUP_TOOLS as Nw,parseMarkup as Mw,RETIRED_MARKS as Hw,STOREFRONT_MARKUP as zw,tokenizeInline as Y5}from"efficient-shell/markup";var pt=["highlight","strong","quiet"],mt={highlight:"Highlight",strong:"Bold",quiet:"Quiet"},yo={highlight:{kind:"wordHighlight",delimiter:"@@"},strong:{kind:"wordStrong",delimiter:"++"},quiet:{kind:"wordQuiet",delimiter:"^^"}},gp=Object.fromEntries(pt.map(e=>[yo[e].kind,e])),bp="data-sf-ws",an=["accent","text","labels"],yp={accent:"Accent",text:"Text",labels:"Labels"},Oo={accent:"var(--accent)",text:"var(--fg)",labels:"var(--fg-dim)"},vw=80,ww=120,kw=100,Tw=900,Fw=.5,Ew=3,Pw=-.1,Lw=.5,Ow=3,Ys={font:null,size:null,weight:null,bold:null,italic:null,lineGap:null,textGap:null,colour:null},Rw={highlight:{...Ys},strong:{...Ys},quiet:{...Ys}};function xp(e,o,t){return typeof e!="number"||!Number.isFinite(e)?null:Math.round(Math.min(Math.max(e,o),t))}function Ip(e,o,t){if(typeof e!="number"||!Number.isFinite(e))return null;let r=10**Ow;return Math.round(Math.min(Math.max(e,o),t)*r)/r}function hp(e){return typeof e=="boolean"?e:null}function Aw(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:xp(e?.size,vw,ww),weight:xp(e?.weight,kw,Tw),bold:hp(e?.bold),italic:hp(e?.italic),lineGap:Ip(e?.lineGap,Fw,Ew),textGap:Ip(e?.textGap,Pw,Lw),colour:t}}function Sp(e){let o={};for(let t of pt)o[t]=e&&t in e&&e[t]?Aw(e[t]):{...Rw[t]};return o}function D5(e){let o=Sp(e),t={};for(let r of pt){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 N5(e){let o=e?.word_styles??void 0,t={};for(let r of pt)o&&r in o&&(t[r]=o[r]??null);return Sp(t)}var Ww=new Set(["strong"]),Cp=pt.map(e=>({open:yo[e].delimiter,close:yo[e].delimiter,kind:yo[e].kind,...Ww.has(e)?{wordStart:!0}:{}})),Z5=[{style:yo.highlight.kind,label:mt.highlight,title:`${mt.highlight} word style`},{style:yo.strong.kind,label:mt.strong,title:`${mt.strong} word style`},{style:yo.quiet.kind,label:mt.quiet,title:`${mt.quiet} word style`}],Gw=new Set(Cp.map(e=>e.open)),zt=[...zw.filter(e=>!Gw.has(e.open)),...Cp];function Xs(e){return e.bullet?"- ":e.number!=null?`${e.number}. `:""}function Zs(e){return Mw(typeof e=="string"?e:"",zt)}var Uw=Nw.map(e=>e.style).filter(e=>!Hw.includes(e)).filter(e=>zt.some(o=>o.kind===e));function vp(){return Dw(Uw)}var wp=Object.fromEntries(pt.map(e=>[yo[e].kind,yo[e].delimiter]));function kp(e,o,t,r){let a=wp[r];if(!a)return Bw(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 Tp(e,o,t,r){let a=wp[r];return a?o>=a.length&&e.slice(o-a.length,o)===a&&e.slice(t,t+a.length)===a:_w(e,o,t,r)}function xt(e){return Zs(e).map(o=>Xs(o)+Fp(o.children)).join(`
|
|
3
|
+
`)}function Fp(e){return e.map(o=>o.kind==="text"?o.text:Fp(o.children)).join("")}var Ep="Clear formatting";function Qw(e,o,t){return jw(e,o,t,kp)}function Jw(e){let[o,t]=qw(null);return $w(()=>{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 ek({target:e,value:o,onChange:t,disabled:r=!1,label:a="Formatting"}){let n=Kw({target:e,onChange:t}),[s,i]=Jw(e),f=x=>n(h=>{let b=Qw(o,x,h);return i({start:b.selectionStart,end:b.selectionEnd}),b}),u=vp(),p={};if(s)for(let x of u)p[x.style]=Tp(o,s.start,s.end,x.style);let m=xt(o);return Mr(Xw,{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:Mr("span",{className:"sf-markup-clear",children:Mr(Zw,{content:l(Ep),children:Mr(Yw,{size:"sm",onMouseDown:x=>x.preventDefault(),onClick:()=>t(m),disabled:r||m===o,"aria-label":l(Ep),children:Mr(Vw,{size:14})})})})})}var Qs=ek;import{DEVICE_FIELD_MARKER as i3,DEVICE_HIDDEN_ATTR as f3,DEVICE_NOTE as c3,deviceField as ve,deviceMetaOf as Js,deviceNote as d3,shownTier as u3,withoutDeviceGate as p3}from"efficient-easel/screen/lib/puck/device-fields";import{NO_CONTROL_ATTR as I3,NO_CONTROL_FIELD as Pp,noControlField as Hr,NoControlMark as Wt,noControlMetaOf as h3}from"efficient-easel/screen/lib/puck/panel-no-control-mark";var ei="__ownBox";function Lp(e){return!!e&&typeof e=="object"&&e[ei]===!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 ti,Fragment as rk}from"react/jsx-runtime";import{createContext as ak,useContext as nk}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 ok=["anchor"],tk=/^href$|Href$|^url$|Url$|^link$|^mailto$|^tel$/;function zr(e){return ok.includes(e)||tk.test(e)}var oi={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"}}};oi.ContactLocations={"locations[].lat":{verb:"pii"},"locations[].lng":{verb:"pii"},"locations[].mapsUrl":{verb:"pii"},"locations[].geocode":{verb:"pii"}};var v3=Object.fromEntries(Object.entries(sn).map(([e,o])=>[e,Object.keys(o)])),w3=Object.fromEntries(Object.entries(fn).map(([e,o])=>[e,[...o]]));var Op=ak(!1);function Rp({children:e}){return ti(Op.Provider,{value:!0,children:e})}function lk(){return nk(Op)}function Ap({name:e,children:o}){return!lk()||!e||zr(e)?ti(rk,{children:o}):ti(Wt,{})}function Je(e,o,t){return e.some(r=>(typeof r=="object"?r.value:r)===t)?t:o}var ri="off",ai="none",ni=[{label:"None",value:"off"},{label:"1, 2, 3",value:"plain"},{label:"01, 02, 03",value:"padded"},{label:"N\xB001, N\xB002",value:"numero"}],li=[{label:"None",value:"none"},{label:"Hairline",value:"hairline"}];function A3(e){return Je(ni,ri,e)}function B3(e){return Je(li,ai,e)}var Bp="sf-card-index",Wr="sf-card-index",_3="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",sk={plain:`counter(${Wr})`,padded:`counter(${Wr}, decimal-leading-zero)`,numero:`"N\xB0" counter(${Wr}, decimal-leading-zero)`};function D3(e,o){return o==="off"?"":`.${e}{counter-reset:${Wr}}.${e} .${Bp}{counter-increment:${Wr}}.${e} .${Bp}::before{content:${sk[o]}}`}function N3(e){return e==="hairline"?"border border-line hover:border-accent":""}var _p=[{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 iF}from"efficient-easel/draw";import{jsx as Ao}from"react/jsx-runtime";import{SettingsDefaultReset as ik,SettingsField as Mp}from"efficient-easel/panel";import{useSelectedFields as fk}from"efficient-easel/easel";import{FOCAL_DEFAULT as ck}from"efficient-shell/format";import{ImageIcon as Hp,PlayIcon as zp}from"efficient-easel/icons";import{ImageBox as dk}from"efficient-easel/pick";import{useEaselStrings as uk}from"efficient-easel/strings";import{useContext as pk}from"react";import{usePreviewDevice as mk}from"efficient-easel/draw/client";import{requestMediaPick as Dp,resolveMediaPick as W3}from"efficient-easel/screen/lib/media-picker";import{createEaselHost as $3,DETACHED_EASEL_HOST as q3,EaselHostContext as j3,EaselHostProvider as K3,useEaselHost as Gt}from"efficient-easel/screen/lib/host";var Ue=$d,Np=e=>e.blocks;import{EaselSessionProvider as Q3,useEaselSession as Be}from"efficient-easel/screen/lib/session-context";function xk(e,o){let t=null;try{t=fk()}catch{t=null}let r=mk()==="mobile";if(!e||!t||o&&!o(t.values??{}))return null;let a=typeof t.values?.[e]=="string"&&t.values[e]?String(t.values[e]):ck,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 Wp({value:e,onChange:o,label:t,accept:r,placeholder:a,focusKey:n,focusWhen:s}){let i=Gt(),f=Be(),u=uk(),p=l(t),m=r.startsWith("video"),x=xk(m?void 0:n,s),h=pk(Mt),b=k=>Dp(i,{accept:r,title:p,...k?{file:k}:{}}).then(v=>v?.url??null);if(h&&!h.capabilities.mediaEditing)return Ao(Mp,{label:p,icon:m?Ao(zp,{}):Ao(Hp,{}),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(ik,{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(Mp,{label:p,icon:m?Ao(zp,{}):Ao(Hp,{}),action:C,children:Ao(dk,{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 Gp}from"react/jsx-runtime";import{useId as Ik}from"react";import{FieldSelect as hk}from"efficient-easel/fields";import{SettingsField as gk}from"efficient-easel/panel";function bk(e){return e.map(({value:o,label:t,note:r})=>({value:o,label:t,...r?{meta:r}:{}}))}function Up({label:e,options:o,value:t,onChange:r,emptyLabel:a,icon:n,hint:s}){let i=Ik(),f=`${i}-label`,u=`${i}-button`,p=Array.isArray(t)?t:[];return Gp(gk,{label:l(e),labelId:f,icon:n,hint:s,children:Gp(hk,{id:u,multiple:!0,value:p,options:bk(o),onChange:r,placeholder:a===void 0?l("None"):l(a),ariaLabelledBy:`${f} ${u}`,inline:!0})})}import{jsx as Te,jsxs as ht,Fragment as Wk}from"react/jsx-runtime";import{useCallback as Gk,useContext as Uk,useEffect as $k,useId as am,useRef as tm,useState as rm}from"react";import{ThemeIcon as qk}from"efficient-easel/icons";import{SettingsField as jk}from"efficient-easel/panel";import{jsx as $,jsxs as Ko,Fragment as Fk}from"react/jsx-runtime";import{SettingsField as fi,SettingsGroupSub as Ek}from"efficient-easel/panel";import{Button as ii}from"efficient-shell/ui";import{jsx as jo,jsxs as $p}from"react/jsx-runtime";import{SettingsField as yk}from"efficient-easel/panel";import{AccentIcon as Sk}from"efficient-easel/icons";import{Tooltip as Ck}from"efficient-shell/ui";function si(e){return xo(e).background}function vk(e){let o=$o(e.accent,si(e));return o===null?null:{ratio:o,grade:Dt(o)}}function wk(e){let o=si(e),t=$o(e.accent,o);return t===null?[]:eu(e.accent).filter(r=>{let a=$o(r,o);return a!==null&&a>t&&Dt(a)==="good"})}var kk={good:"Easy to read","large-only":_t["large-only"],hard:_t.hard};function qp({value:e,onChange:o}){let t=vk(e),r=t?.grade,a=t&&t.grade!=="good"?wk(e):[];return jo(yk,{label:l("Main color"),icon:jo(Sk,{}),hint:t?l(kk[t.grade]):void 0,action:jo(to,{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:$p("div",{className:"sf-readability",children:[jo("p",{className:"sf-readability-advice",children:Tk(r,!0)}),jo("div",{className:"sf-readability-suggestions",children:a.map(n=>{let s=$o(n,si(e));return jo(Ck,{content:l("Use {colour}",{colour:n.toUpperCase()}),children:$p("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 Tk(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 Pk,GroundIcon as Lk,LayoutIcon as Ok,SquareIcon as Rk,TextSmallIcon as Ak,TypeIcon as jp}from"efficient-easel/icons";var Gr=e=>l("Theme {n}",{n:e+1});function Kp({colors:e}){let o=xo(e),t=Ar(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:gs(e,o.accent)},children:l("button")}),$("span",{className:"sf-theme-mini",style:{background:o.surface,borderColor:o.line},children:l("card")})]})]})}var ci={"Text color":$(jp,{}),"Label color":$(Ak,{}),Background:$(Lk,{}),"Panels & cards":$(Ok,{}),Borders:$(Rk,{}),"Button color":$(Pk,{}),"Button text color":$(jp,{})};function Bk({label:e,colorKey:o,value:t,onChange:r,idPrefix:a="sf-theme-ink"}){let n=`${a}-${o}`;return $(fi,{label:l(e),icon:ci[e],htmlFor:n,action:$(to,{id:n,label:l(e),value:t,onChange:s=>r(o,s)})})}function _k({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 $(fi,{label:l("Button color"),icon:ci["Button color"],htmlFor:a,action:$(to,{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=ou(e),s=gs(e,o),i=Ar(e)??o,f=Dt($o(s,i)??0);return $(fi,{label:l("Button text color"),icon:ci["Button text color"],hint:n&&f!=="good"?l("{grade} on the button",{grade:l(_t[f])}):void 0,htmlFor:a,action:$(to,{id:a,label:l("Button text color"),value:s,caption:n?s:l("Auto"),onChange:t})})}var Nk=[{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 di({colors:e,onChange:o,idPrefix:t}){let r=xo(e);return $(Fk,{children:Nk.map(a=>"colour"in a?$(qp,{value:e,onChange:o},"colour"):"group"in a?$(Ek,{title:l(a.group)},a.group):"button"in a?$(_k,{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"):$(Bk,{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=Gr(e),m=e<hs.length&&!o.brandInk?hs[e]:null,x=Dt($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:$(Kp,{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(_t[x])}),n&&i&&$(ii,{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:[$(di,{colors:o,onChange:C=>f?.(C)}),m&&$(ii,{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 Vp({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?$(Kp,{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&&$(ii,{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 hi,useEffect as Jp,useRef as pn}from"react";import{useSyncExternalStore as Mk}from"react";var Xp,ui=null,It=null,dn=0,pi=new Set;function mi(e){Xp=e;for(let o of pi)o()}function xi(e){ui=e,dn+=1,It&&clearTimeout(It),It=null,mi(void 0)}function W4(e){dn+=1,mi(e)}function un(e=250){ui&&(It&&clearTimeout(It),It=setTimeout(()=>{It=null;let o=ui;if(!o)return;let t=++dn;o().then(r=>{t===dn&&mi(r)}).catch(()=>{})},e))}function Yp(){return Xp}function Hk(e){return pi.add(e),()=>{pi.delete(e)}}function Zp(){return Mk(Hk,Yp,Yp)}var Ii=new Set;function Qp(e){return Ii.add(e),()=>{Ii.delete(e)}}async function U4(){let e=(await Promise.allSettled([...Ii].map(async o=>o()))).find(o=>o.status==="rejected");if(e)throw e.reason}function em(e=ao()){return(o,t,r)=>{let a=Ue(e).theme;return a?a.update(o,r?{siteId:r}:void 0):Promise.reject(new ws("invalid","This backend stores no site theme."))}}function om(e){return e.themeFromDocument?{status:"skipped",reason:"template"}:e.token?null:{status:"skipped",reason:"no-token"}}async function zk(e,o=em()){let{themeFromDocument:t,token:r,siteId:a,patch:n}=e,s=om({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 Ut({themeFromDocument:e,tokenRef:o,siteId:t,onResult:r}){let a=pn(null),n=pn({}),s=Be(),i=pn(r);i.current=r;let f=pn(null),u=hi(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=hi(async()=>{a.current&&(clearTimeout(a.current),a.current=null);let x=n.current;n.current={};let h=await zk({themeFromDocument:e,token:o?.current,siteId:t,patch:x},em(s));return u(h),h.status==="saved"&&un(),h.status==="failed"&&(n.current={...x,...n.current}),h},[e,o,t,u,s]),m=hi((x,h=!1)=>{let b=om({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 Jp(()=>()=>{p()},[p]),Jp(()=>Qp(async()=>{if(!a.current&&Object.keys(n.current).length===0)return;let x=await p();if(x.status==="failed")throw x.error}),[p]),{persist:m,flush:p}}var Kk="Follow the page",c6="Follow the slideshow",Vk=e=>l("Editing {name} changes it everywhere.",{name:e});function Yk({colors:e}){if(!e)return Te("span",{className:"sf-secttheme-chip sf-secttheme-chip--none","aria-hidden":"true"});let o=xo(e);return ht("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 Xk({themes:e,value:o,onPick:t,onEdit:r,menuId:a,followLabel:n}){return ht("div",{className:"sf-multi-menu sf-secttheme-menu",id:a,role:"listbox",children:[n!==void 0&&ht(Wk,{children:[ht("button",{type:"button",role:"option","aria-selected":o===null,className:`sf-secttheme-item${o===null?" is-active":""}`,onClick:()=>t(on),children:[Te(Yk,{}),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:Gr(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 Zk({index:e,colors:o,onChange:t,onDone:r}){let a=Gr(e),n=am();return ht("div",{className:"sf-secttheme-sheet",children:[ht("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(di,{colors:o,onChange:t,idPrefix:n})}),Te("p",{className:"sf-secttheme-warn",children:Vk(a)})]})}function nm({value:e,onChange:o,followLabel:t,hint:r}){let{theme:a,setTheme:n}=X(),s=Qe(a),i=Uk(Mt),f=i?.tokenRef,u=i?.siteId??null,p=!i?.capabilities?.hasSiteTheme,{persist:m,flush:x}=Ut({themeFromDocument:p,tokenRef:f,siteId:u}),h=Qe(s),b=h.themes,C=Us(e),k=C!==null?b[C]:void 0,v=k??(b.length?Bt(h):void 0),[w,g]=rm(!1),[y,E]=rm(null),F=tm(null),L=tm(null),B=am(),O=Gk(()=>{g(!1),E(null)},[]);$k(()=>{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,Re)=>Re===y?H:oe),A={...h,themes:W};n(A),m({selected_preset:A.selected,theme_presets:A.themes})};return ht("div",{className:"sf-secttheme",ref:F,children:[Te(jk,{label:l("Theme"),icon:Te(qk,{}),labelId:`${B}-label`,hint:r,children:Te(Vp,{colors:v,onEdit:C!==null?()=>{E(C),g(!1)}:void 0,name:k?Gr(C):l(t??Kk),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(Xk,{themes:b,value:C,onPick:M,onEdit:H=>{E(H),g(!1)},menuId:B,followLabel:t})}),y!==null&&b[y]&&Te(Zk,{index:y,colors:b[y],onChange:re,onDone:()=>{x(),O(),L.current?.focus()}})]})}import{jsx as lm}from"react/jsx-runtime";import{useId as Qk}from"react";import{FieldSelect as Jk}from"efficient-easel/fields";import{SettingsField as eT}from"efficient-easel/panel";function oT(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 h6({label:e,options:o,fallback:t,value:r,onChange:a,placeholder:n,bare:s=!1,icon:i}){let f=Qk(),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=lm(Jk,{id:p,value:x,options:oT(o),onChange:a,placeholder:b,searchPlaceholder:b,...s?{ariaLabel:h}:{ariaLabelledBy:`${u} ${p}`},searchable:!0,groupCount:!0,inline:!0});return s?C:lm(eT,{label:h,labelId:u,icon:i,children:C})}import{jsx as gt,jsxs as nT}from"react/jsx-runtime";import{SettingsField as Im}from"efficient-easel/panel";import{LinkIcon as lT}from"efficient-easel/icons";import{LinkPicker as sT,TextLinkField as iT}from"efficient-shell/ui";import{useEffect as xm,useMemo as In,useRef as fT,useState as xn}from"react";function sm(){return ao().auth.token}var mn="homepage";function im(e){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}var fm=[{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 cm(e){return e.offersCommerce&&e.offersService?fm:fm.filter(o=>!o.needs||(o.needs==="commerce"?e.offersCommerce:e.offersService))}function Ur(e){return e===mn?"/":`/${e}`}function dm(e){return`/journal/${e}`}function k6(e){return`/wheels/${e}`}function um(e,o){return`${Ur(e)}#${o}`}function tT(e){return im(e)}function rT(e){return typeof e=="string"?e.trim():e&&typeof e=="object"&&typeof e.text=="string"?e.text.trim():""}function pm(...e){let o=new Set,t=[];for(let r of e)for(let a of r?.content??[]){let n=rT(a?.props?.anchor);if(!n)continue;let s=tT(n);!s||o.has(s)||(o.add(s),t.push({slug:s,name:n}))}return t}function T6(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 aT=()=>({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 mm(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 gi(e,o){let t=aT(),r=e.pages.map(p=>({value:Ur(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:pm(...p.docs).map(m=>({value:um(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:dm(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=cm(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=>mm(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=>mm(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 hm(e){let o=new Map;return(t="")=>{let r=sm(),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 cT=hm(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}))}),dT=hm(async(e,o)=>await Ue().blog?.posts(o?{siteId:o}:void 0)??[]);function uT({value:e,onChange:o,label:t="Link",data:r,filters:a}){let n=In(()=>gi(r,a),[r,a]),s=l(t);return gt(Im,{label:s,icon:gt(lT,{}),children:gt(sT,{value:e,onChange:i=>o(i),kinds:n.kinds,rules:n.rules,filtersFor:n.filtersFor,label:s})})}function gm(){let{siteId:e,capabilities:o}=ye(),{offersCommerce:t,hasBlog:r}=o,[a,n]=xn([]),[s,i]=xn([]),[f,u]=xn([]),[p,m]=xn(null),x=Be().chrome,h=x?.products?.list,b=x?.linkFilters,C=b?void 0:x?.linkRow,k=fT(!0);xm(()=>(k.current=!0,()=>{k.current=!1}),[]),xm(()=>{let g=!0;return cT(e??void 0).then(y=>g&&k.current&&n(y)),r&&dT(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=In(()=>({pages:a.filter(g=>!Ou(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=In(()=>p?p(v.pages):null,[p,v]);return{data:v,filters:w,pages:a,offersCommerce:t,HostLinkRow:C}}function q6({label:e,icon:o,text:t,onTextChange:r,link:a,onLinkChange:n}){let{data:s,filters:i}=gm(),f=In(()=>gi(s,i),[s,i]),u=l(e);return gt(Im,{label:u,icon:o,children:gt(iT,{label:u,text:t,onTextChange:r,link:a,onLinkChange:p=>n(p),kinds:f.kinds,rules:f.rules,filtersFor:f.filtersFor})})}function bm({value:e,onChange:o,label:t="Link"}){let r=typeof e=="string"?e:"",{data:a,filters:n,pages:s,offersCommerce:i,HostLinkRow:f}=gm(),u=a.pages.map(m=>Ur(m.slug)),p=i&&f&&(r==="/"||u.includes(r))?f:void 0;return nT("div",{children:[gt(uT,{value:r,onChange:o,label:t,data:a,filters:n}),p&>(p,{value:r,onChange:o,pages:s})]})}import{UiIcon as ix}from"efficient-easel/draw/client";var lo={min:10,max:200,step:10};function ym(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 pT="sf-pad-top-phone",mT="sf-pad-bottom-phone",xT="--sf-pad-t-phone",IT="--sf-pad-b-phone",hT="sf-pad-left-phone",gT="sf-pad-right-phone",bT="--sf-pad-l-phone",yT="--sf-pad-r-phone";function vm(e,o,t,r,a,n,s,i){let f=ym(e,o)??{},u={},p=["sf-section-pad"];typeof t=="number"&&(p.push(pT),u[xT]=`${t}px`),typeof r=="number"&&(p.push(mT),u[IT]=`${r}px`);let m={};return typeof a=="number"&&(m.paddingLeft=a),typeof n=="number"&&(m.paddingRight=n),typeof s=="number"&&(p.push(hT),u[bT]=`${s}px`),typeof i=="number"&&(p.push(gT),u[yT]=`${i}px`),p.length===1&&ym(e,o)===void 0&&!Object.keys(m).length?null:{className:p.join(" "),style:{...f,...m,...u}}}var Sm=e=>typeof e=="number"?e:void 0;function Cm(e,o,t){let r=Sm(e)??t,a=Sm(o);return r===void 0?a:a===void 0?r:r+a}function K6(e,o={}){return{top:Cm(e.padTop,e.sectionPaddingTop,o.top),bottom:Cm(e.padBottom,e.sectionPaddingBottom,o.bottom)}}function V6(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 Y6(e){return vm(e.top,e.bottom,e.topPhone,e.bottomPhone,e.left,e.right,e.leftPhone,e.rightPhone)}function X6(e,o){let t=r=>typeof r=="number"?r+o:void 0;return vm(t(e.top),t(e.bottom),t(e.topPhone),t(e.bottomPhone),e.left,e.right,e.leftPhone,e.rightPhone)}var ST=["auto","fixed","screen"],CT=["px","%"];var vT="var(--sf-header-h, 88px)",bi={min:40,max:2e3,step:10,fallback:600},yi={min:10,max:200,step:5,fallback:100},wT="sf-section-minh",wm={base:"--sf-section-minh",small:"--sf-section-minh-s"},Tm=e=>typeof e=="string"&&ST.includes(e),kT=e=>typeof e=="string"&&CT.includes(e);function hn(e){let o=Tm(e.sectionHeightMode)?e.sectionHeightMode:"auto",t=o==="screen"?"%":kT(e.sectionHeightUnit)?e.sectionHeightUnit:"px",r=o==="screen"?yi.fallback:bi.fallback,a=typeof e.sectionHeightValue=="number"?e.sectionHeightValue:r;return{mode:o,value:a,unit:t}}function Fm(e){let{mode:o,value:t,unit:r}=hn(e);if(o==="auto")return;if(o==="fixed"&&r==="px")return[`${t}px`,null];let a=t/100,n=s=>o==="screen"?`(100${s} - ${vT})`:`100${s}`;return[`calc(${n("vh")} * ${a})`,`calc(${n("svh")} * ${a})`]}function TT(e){let o=Fm(e);if(!o)return;let[t,r]=o;return{display:"grid",[wm.base]:t,...r?{[wm.small]:r}:{}}}var Q6=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),$t="Height",FT="sf-section-minh-phone",km={base:"--sf-section-minh-p",small:"--sf-section-minh-ps"};function Si(e){return Tm(e.sectionHeightModePhone)}function J6(e){return hn({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone})}function ET(e){let o=TT(e),t=Si(e)?Fm({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone}):void 0;if(!o&&!t)return null;let r=[wT],a={...o??{}};return t&&(r.push(FT),a[km.base]=t[0],t[1]&&(a[km.small]=t[1])),{className:r.join(" "),style:a}}function ez(e){return ET(e)!==null}var gn="Stick to top",Vo={min:0,max:200,step:4,fallback:0},PT="sf-section-stick",LT="sf-section-stick-phone-on",OT="sf-section-stick-phone-off",Em={desktop:"--sf-stick-distance",phone:"--sf-stick-distance-phone"},tz=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 Ci(e){return typeof e.stickTopPhone=="boolean"}function vi(e){let o=e.stickTop===!0,t=Pm(e.stickTopDistance),r=Ci(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 rz(e){let o=vi(e);if(!o.desktop&&!o.phone)return null;let t=[PT],r={};return o.desktop&&(r[Em.desktop]=`${o.desktopDistance}px`),(o.ownPhone||o.phone!==o.desktop)&&(t.push(o.phone?LT:OT),o.phone&&(r[Em.phone]=`${o.phoneDistance}px`)),o.desktop||t.push("sf-section-stick-desktop-off"),{className:t.join(" "),style:r}}var RT=["column","row","tabs"],Lm="Direction",AT={column:"Stacked",row:"One row",tabs:"Tabs"},Om={Flex:RT,HeroGroup:["column","row"]},BT={Flex:"row",HeroGroup:"column"},_T={column:"flex-col",row:"flex-row",tabs:"flex-col"};function bn(e,o){return Om[e].includes(o)?o:BT[e]}function nz(e,o){return _T[bn(e,o)]}function Rm(e){return Om[e].map(o=>({label:AT[o],value:o}))}var wi=[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"Space between",value:"between"},{label:"End",value:"end"}],_m=[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"},{label:"Stretch",value:"stretch"}],Dm="Wrap",ki=[{label:"Wrap",value:"wrap"},{label:"No wrap",value:"nowrap"}],Am={start:"justify-start",center:"justify-center",between:"justify-between",end:"justify-end"},Bm={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"};function sz(e,o){let t=typeof e=="string"&&e in Am?Am[e]:"",r=typeof o=="string"&&o in Bm?Bm[o]:"";return[t,r].filter(Boolean).join(" ")}function iz(e){return e===!0||e==="wrap"?"flex-wrap":""}var Ti="Block widths",yn=[{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]}],$r="[&>*]:min-w-0 [&>*]:flex-1 [&>*]:basis-0",DT={equal:$r,bigLeft:`${$r} [&>*:first-child]:min-[800px]:grow-[2]`,bigRight:`${$r} [&>*:last-child]:min-[800px]:grow-[2]`,biggerLeft:`${$r} [&>*:first-child]:min-[800px]:grow-[3]`,biggerRight:`${$r} [&>*:last-child]:min-[800px]:grow-[3]`};function fz(e){return typeof e=="string"?DT[e]??"":""}var Nm="Columns on phone",Fi=1,Mm=3,NT={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 cz(e){let o=Number(e);return NT[o]??"max-[800px]:flex-col"}var Hm="Block spacing",Ei=[{label:"Each block",value:"each"},{label:"Gap only",value:"gap"}],MT="sf-box-gap-only";function dz(e){return e==="gap"?MT:""}var HT=["solid","dashed","dotted"],zT=["top","right","bottom","left"],pz="sf-section-border",mz="sf-section-border-self",WT=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,zm=e=>typeof e=="number"&&Number.isFinite(e)?`${Math.min(20,Math.max(0,Math.round(e)))}px`:void 0;function Wm(e,{phone:o=!1}={}){if(!e||typeof e!="object")return;let t=o?"-phone":"",r={};for(let a of zT){let n=zm(e[a])??zm(e.width);n!==void 0&&(r[`--sf-border-${a}-width${t}`]=n)}return typeof e.style=="string"&&HT.includes(e.style)&&(r[`--sf-border-style${t}`]=e.style),typeof e.color=="string"&&WT.test(e.color)&&(r[`--sf-border-color${t}`]=e.color.toLowerCase()),Object.keys(r).length?r:void 0}function xz(e,o){let t=Wm(e),r=Wm(o,{phone:!0});return t||r?{...t,...r}:void 0}var $m="sf.gapContainer",Yo={min:-32,max:64,step:2},qm={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},qt={Grid:24,Flex:24,FooterGroup:16,HeroGroup:0,Events:24,GalleryB:8,ProductGrid:2},GT=new Set(["Events","GalleryB"]);function qr(e,o,t){if(typeof o=="number"&&Number.isFinite(o)&&o>=Yo.min)return o;if(typeof o=="string"){let r=qm[e]?.[o];if(typeof r=="number")return r}return typeof t=="number"&&Number.isFinite(t)?t:qt[e]}var UT="sf-gap-overlap",$T="--sf-gap-overlap",jm="--sf-block-gap",qT="--sf-block-gap-rem",bt={min:0,max:Yo.max,step:Yo.step};function jT(e){if(typeof e!="number"||!Number.isFinite(e))return null;let o=Math.min(Math.max(Math.round(e),bt.min),bt.max);return o-o%bt.step}function hz(e){let o=jT(e);return o===null?{}:{[jm]:`${o}px`,[qT]:`${o/16}rem`}}var Gm="sf-gap-zone",Um="--sf-gap-len";function Pi(e,o){return typeof o=="number"&&Number.isFinite(o)&&o>=Yo.min?!0:typeof o=="string"&&typeof qm[e]?.[o]=="number"}var KT={block:"sf-gap-overlap-block",inline:"sf-gap-overlap-inline",both:"sf-gap-overlap-both"};function gz(e,o,t){if(!Pi(e,o)){let a=`${qt[e]}px`,n=GT.has(e)?`var(--sf-card-gap, ${a})`:a;return{className:` ${Gm}`,style:{[Um]:`var(${jm}, ${n})`}}}let r=qr(e,o);return r>=0?{className:` ${Gm}`,style:{[Um]:`${r}px`}}:{className:` ${UT} ${KT[t]}`,style:{gap:"0px",[$T]:`${-r/2}px`}}}var Km=["transparent","var(--section-bg)","var(--surface)","var(--surface-2)"],Vm={transparent:"No fill","var(--section-bg)":"Section band","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},Sn="var(--section-bg)",Cn="inherit";function yz(e,o){return e===Cn?Sn:e===void 0?o:vn(e)}var VT=/var\(\s*--(surface-2|surface|line)\s*(?=[,)])/g;function vn(e){return e.replace(VT,"var(--site-$1")}function Ym(e,o){return e===Cn?!0:e===void 0&&o===Sn}var Xm=["transparent","var(--wheel-stage)","var(--surface)","var(--surface-2)"],Zm={transparent:"No fill","var(--wheel-stage)":"Image stage","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},jt="var(--wheel-stage)",wn="transparent",jr="inherit";function vz(e,o){return vn(Li(e,o))}function Li(e,o){return e===jr?jt:e==null?o:e===!0?jt:e===!1?wn:e}function wz(e){return typeof e=="string"&&e!==jr?vn(e):jt}function kz(e){return e!==wn&&e!=="none"&&e!==""}function Qm(e,o){return e===jr||e===!0?!0:e==null?o===jt:!1}var Jm="inherit",kn="fixed",ex=e=>typeof e!="number"&&e!==kn,YT="var(--sf-heading-max, 9999px)";function Fz(e,o,t,r){if(typeof e=="number")return`${e}px`;if(e===kn)return o;let a=r?`var(--size-${r}, ${o})`:o;return t==="heading"?`min(${a}, ${YT})`:a}var _e={min:1e3,max:2e3,step:50,default:1600};function ox(e){return{maxWidth:e,marginInline:"auto",width:"100%"}}function Pz(e,o){if(e!==!1)return null;let t=typeof o=="number"?o:_e.default;return ox(t)}var tx="--sf-site-width",Tn=`var(${tx},${_e.default}px)`,Lz=`max-w-[${Tn}]`,Oz=`max-w-[${_e.default}px]`;function XT(e){return typeof e!="number"||!Number.isFinite(e)?_e.default:Math.round(Math.min(Math.max(e,_e.min),_e.max))}function Rz(e){let o=XT(e);return o===_e.default?{}:{[tx]:`${o}px`}}var So={min:0,max:80,step:4,default:40},rx="--sf-site-gutter",$e=`var(${rx},${So.default}px)`,ZT=`px-[${$e}]`;var Xo={md:`min(24px,${$e})`,sm:`min(20px,${$e})`,frame:`min(24px,${$e})`,tabs:`min(16px,${$e})`},Az=[[`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"],[ZT,"px-10"]];var Bz="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 QT(e){return typeof e!="number"||!Number.isFinite(e)?So.default:Math.round(Math.min(Math.max(e,So.min),So.max))}function _z(e){let o=QT(e);return o===So.default?{}:{[rx]:`${o}px`}}var Fn=`min(var(--sf-page-cap,${Tn}),${Tn})`,Dz=`max-w-[${Fn}]`,Nz=`max-w-[min(var(--sf-page-cap,${_e.default}px),${_e.default}px)]`,ax="--sf-hero-cap",JT=`var(${ax},none)`,Mz=`max-w-[${JT}]`,Oi="--sf-hero-bleed-m",Ri="--sf-hero-bleed-w",Hz=`var(${Oi},calc(50% - 50vw))`,zz=`var(${Ri},100vw)`,Wz=`mx-[var(${Oi},calc(50%_-_50vw))]`,Gz=`w-[var(${Ri},100vw)]`,Ai="--sf-hero-chrome-x",Bi="--sf-hero-chrome-cap";function Uz(e){return e===!0?{[ax]:Fn,[Oi]:"auto",[Ri]:"100%",[Ai]:"24px",[Bi]:"none"}:{}}var _i=`calc(${Tn} - ${$e}*2)`,$z=`max-w-[${_i.replace(/ /g,"_")}]`;var e0="--sf-chrome-cap",o0=`var(${e0},${_i})`,qz="data-page-width";function jz(e){return e==="full"?"full":null}function Kz(e){return e==="full"?null:ox(e==="content"?_i:o0)}function Vz(e){if(e==="full")return"full";if(e==="content")return"content"}var t0=["contained","page","full"],nx=["full","page"],Kr={full:"Full width",page:"Content width"},Di="inherit",r0=e=>typeof e=="string"&&t0.includes(e),a0=e=>e===Di;function Ni(e,o){let t=typeof e.pageWidth=="number"?e.pageWidth:_e.default;return a0(e.widthMode)?{mode:"full",pageWidth:t,inherited:!0}:e.widthMode==="contained"?{mode:"page",pageWidth:t,inherited:!1}:r0(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 Mi(e){return Ni(e,"page").mode==="full"}import{jsx as n0}from"react/jsx-runtime";import{createContext as l0,useContext as s0}from"react";var i0=2,f0=i0+1,lx=l0(2);function sx({tier:e,children:o}){return n0(lx.Provider,{value:e,children:o})}function Hi(e){let o=s0(lx);return f0+Math.max(0,e-o)}import{withStyleKind as fF}from"efficient-easel/style-clipboard";import{TEXT_CONTROL_KINDS as dG,SCALAR_TEXT_CONTROLS as uG}from"efficient-easel/draw";function Vt(e){for(let[o,t]of Object.entries(e))t&&typeof t=="object"&&!Do(t)&&fF(t,`section:${o}`);return e}function Ex(){return null}function Ui(e){if(!e.trim())throw new Error("noGlyph() needs a reason naming the ruling that decided it.");return I(Ex,{},e)}function cF(e){return e.type===Ex}function Co(e){return cF(e)?void 0:e}function St(e,o){return l("{value} from {from}",{value:e,from:o})}function dF(){let{appState:e}=Yr(a=>a),o=e.data.root?.props??{},{mode:t,pageWidth:r}=Ni(o,"full");return t==="page"?St(`${r}px`,l("the page")):t==="contained"?St(l("Contained"),l("the page")):St(l("Full"),l("the page"))}function uF(){let{blockGap:e}=X();return e===null?l("this container's own spacing"):St(`${e}px`,l("Site styles"))}function pF({inherited:e,onReset:o,label:t}){return I(qe,{words:j()?.panel,label:l(t),changed:!e,detail:uF(),onReset:o})}function mF({inherited:e,onReset:o,label:t}){return I(qe,{words:j()?.panel,label:l(t),changed:!e,detail:dF(),onReset:o})}function Yt({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=Wi(null),m=Wi(null),x=w=>o(s?{text:w,hidden:u}:w),h=()=>o({text:f,hidden:!u}),b=s&&u,C=d0(),k=a?yF(a)?I("span",{className:"sf-hint-keep sf-hint-while-typing",children:l(a)}):I(tp,{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($0,{}),htmlFor:C,className:b?"is-hidden":void 0,hint:k,action:s?I(Fx,{content:v,children:I("button",{type:"button",className:"sf-field-eye","aria-pressed":u,"aria-label":v,onClick:h,children:u?I(ix,{name:"eye-off",size:14}):I(ix,{name:"eye",size:14})})}):void 0,children:Ct("div",{className:"sf-copybox",children:[i&&I(Qs,{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 lG(e,o){return{...e,[x0]:o}}function sG(e){let o=e[Bo];if(!o)throw new Error("withOffPage: the field holds no authored text");return{...e,[Bo]:{...o,offPage:!0}}}function Ln(e){return!e||typeof e!="object"?!1:e[Bo]?.offPage===!0}var Px="sfPanelOnly";function iG(e){if(!e[Bo])throw new Error("withPanelOnly: the field holds no authored text");return{...e,[Px]:!0}}function Lx(e){return!!e&&typeof e=="object"&&e[Px]===!0}function fG(e){let o=e[Bo];if(!o)throw new Error("withIdentifier: the field holds no authored text");return{...e,[Bo]:{...o,identifier:!0}}}function pG(e,o){if(!e[Bo])throw new Error("inOwnBox: the field holds no authored text");let{[Pp]:t,...r}=e;return{...r,[ei]:!0,render:o}}var xF=new Set(iF),Xt=(e,o)=>{let t={...o,[Bo]:e};if(!xF.has(e.control))return t;let r=o.render;return{...Hr(t,"authored-copy"),render:a=>I(Ap,{name:a.name,children:r(a)})}},mG="Everything else on this block comes from the linked post. Unlink it to edit by hand.",IF={field:"source.slug",set:!0},xG={not:IF},hF="Select a word, then press the highlighter.",gF="A short name so a link can jump straight to this section, like yoursite.com/page#about.",bF=new Set([hF]),yF=e=>bF.has(e);function IG(e,o,t){return Xt({control:"text",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Yt,{value:r,onChange:a,label:e,placeholder:o,hint:t})})}function hG(e,o,t){return Xt({control:"textarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Yt,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0})})}function SF(e,o,t){return Xt({control:"plainText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Yt,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1,markup:!1})})}function gG(e,o,t){return Xt({control:"copyText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Yt,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1})})}function bG(e){return{type:"custom",[p0]:{label:e},render:({value:o,onChange:t})=>I(bm,{value:u0(o),onChange:t,label:e})}}function yG(e,o,t){return Xt({control:"plainTextarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(Yt,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0,hideable:!1})})}var Ox={Design:I0,Animation:xx};function Rx(e,o){return e.includes("Design")?o!=="Design":null}function CF({label:e}){return I(K0,{title:l(e),level:Hi(1)})}function vF({level:e,label:o}){return e===1?I(CF,{label:o}):I(Zt,{label:o})}function Ax(e,o){return{type:"custom",[Gi]:{label:e,level:o},render:()=>I(vF,{level:o,label:e})}}function He(e){return Ax(e,2)}function SG(e){return{type:"custom",render:()=>I(wF,{text:e})}}function wF({text:e}){return I("p",{className:"sf-note",children:l(e)})}function CG(e){return Ax(e,1)}function vG(e){return Do(e)!==null&&e?.tabs!==void 0}var fx=new Map;function On(e,o){let t=`${e}\0${o?o.join(""):""}`,r=fx.get(t)??{type:"custom",tabs:o,[Gi]:{label:e,level:1},bucket:e,marker:!0,render:()=>I(_o,{})};return fx.set(t,r),r}var cx=new Map;function $i(e){let o=cx.get(e)??{type:"custom",[Gi]:{label:e,level:1},designGroup:e,marker:!0,...e==="Content"?{}:{fold:e},render:()=>I(_o,{})};return cx.set(e,o),o}function kF(e){let o=e;return o?.marker===!0&&typeof o.fold=="string"?o.fold:null}function Bx(e,o){return kF(e)===o?e:{...e,marker:!0,fold:o,render:()=>I(_o,{})}}function _x(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 Zt({label:e}){return I(V0,{title:l(e),level:Hi(2)})}function Dx({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 Ct("div",{className:"sf-swatches",children:[e.map(i=>{let f=r?.[i]?l(r[i]):i;return I(Fx,{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 wG(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=Ym(t,o);return I(ne,{label:l(e),icon:I(y0,{}),changed:!a,action:I(qe,{words:j()?.panel,label:l(e),changed:!a,detail:l("the theme's section background"),onReset:()=>r(Cn)}),children:Dx({swatches:Km,current:a?Sn:t??o??"",onPick:r,names:Vm})})}}}function TF(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=t,n=Qm(a,o);return I(ne,{label:l(e),icon:I(A0,{}),changed:!n,action:I(qe,{words:j()?.panel,label:l(e),changed:!n,detail:l("the theme's image stage"),onReset:()=>r(jr)}),children:Dx({swatches:Xm,current:n?jt:Li(a,o),onPick:r,names:Zm})})}}}function Rn(e=t=>t,o){return Vt({_gSectionTheme:He(lp),sectionAccent:{type:"custom",render:({value:t,onChange:r})=>I(nm,{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(sF,{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 Kt(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 Nx(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?px(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 kG(e){let o=Kt("Gap",I(hx,{}),Yo.min,Yo.max,Yo.step,qt[e],"px",(t,r)=>I(pF,{inherited:!Pi(e,t),onReset:()=>r(void 0),label:"Gap"}));return{type:"custom",[$m]:e,render:t=>o.render({...t,value:qr(e,t.value,t.field?.siteGap),storedValue:t.value,onChange:r=>t.onChange(r)})}}var An="Corners";function qi(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(An),icon:I(k0,{}),changed:a,action:px(e.mark,{changed:a,onReset:()=>t(null)}),hint:e.hint,children:I(FF,{tier:e,px:r,onRadius:t})})}}}function Mx(e){let o=null;try{o=mx()}catch{o=null}return[o?.values?.[e],t=>o?.onChange(e,t)]}function FF({tier:e,px:o,onRadius:t}){let r=e.useFollowed(),a=e.useClosedReason?e.useClosedReason():null,[n,s]=Mx(e.sidesKey),i=Po(n)??[...ct];return I(nF,{label:l(An),value:i,corners:Nu,onChange:f=>{let u=Po(f)??[];s(u.length===ct.length?null:u)},radius:o,onRadiusChange:t,radiusMin:oo,radiusMax:lt,radiusStep:e.step??1,radiusPlaceholder:String(r),disabled:a!==null,disabledReason:a??void 0})}function Hx(){return Hr({type:"custom",render:()=>I(Wt,{})},"always")}function EF({label:e,changed:o=!1,onReset:t=()=>{}}){let{cornerRadiusPx:r}=X(),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"):St(a,l("Site styles")),onReset:t})}function PF(){let{cornerRadiusPx:e}=X();return typeof e=="number"?e:oo}function LF(){return qi({sidesKey:"sectionCornerSides",useFollowed:PF,useClosedReason:()=>Wx()?l(zx):null,mark:I(EF,{label:An}),hint:I(OF,{})})}var zx="This section runs edge to edge, so its corners sit off the page. Set Width to Content width to use them.";function Wx(){return Mi(vt())}function OF(){return I(_o,{children:Wx()?zx:"Follows Site styles \u25B8 Basics \u25B8 Corners until you set a number here."})}function Bn(){return Vt({_gShape:He("Shape"),sectionCorners:LF(),sectionCornerSides:Hx(),sectionBorder:dx("desktop"),sectionBorderPhone:dx("mobile")})}var RF=()=>({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 AF(e){let o=Object.fromEntries(Object.entries(e).filter(([,t])=>t!=null&&t!==""));return Object.keys(o).length?o:void 0}function BF(){let e;try{let o=Qe(X().theme);e=o.themes[o.selected]?.line}catch{e=void 0}return e||Zd.line}function _F({value:e,onChange:o,tier:t}){let[r]=Mx("sectionBorder"),a=BF(),n=e&&typeof e=="object"?e:{},s=t==="mobile"?r&&typeof r=="object"?r:{}:{},[i,f]=Pn(()=>eF(n,s)),u=RF();return I(ne,{label:l("Border"),icon:I(S0,{}),action:I(wx,{each:i,label:l("Each side"),onChange:f}),children:I(Y0,{label:l("Border"),value:n,each:i,onChange:p=>o(AF(p)),placeholder:{sides:J0(s),style:s.style??"solid",color:s.color||a},presets:[a],words:u,max:20})})}function dx(e){return ve(e,{type:"custom",render:({value:o,onChange:t})=>I(_F,{value:o,onChange:t,tier:e})})}function _n(){return{_gMotion:He("Motion"),sectionAnimation:Vi("Entrance",I(xx,{}),[...ip],$s)}}function ji(){let e=null;try{let{appState:o,selectedItem:t}=Yr(a=>a),r=t?.props?.id?String(t.props.id):void 0;e=r?js(o?.data,r):null}catch{e=null}return e!==null&&Mi(e)}function Gx(e){let{cornerRadiusPx:o}=X(),t=ji(),r=typeof o=="number"?o:e,a=null;try{let{appState:s,selectedItem:i}=Yr(u=>u),f=i?.props?.id?String(i.props.id):void 0;a=f?js(s?.data,f):null}catch{a=null}if(t||!a)return r;let n=a.sectionCorners;return Rs(n)?n:r}function DF({label:e,changed:o=!1,onReset:t=()=>{}}){let r=ji(),a=Gx(oo),n=r?"Site":"Section";return I(qe,{words:j()?.panel,label:l(e),changed:o,detail:St(`${a}px`,r?l("Site styles"):l("the section")),onReset:t})}function NF(){return I(_o,{children:ji()?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 MF(){return qi({sidesKey:"cardCornerSides",useFollowed:()=>Gx(oo),mark:I(DF,{label:An}),hint:I(NF,{})})}function HF(){return{type:"custom",render:()=>I($u,{})}}function TG(){return{_gShape:He("Shape"),cardCorners:MF(),cardCornerSides:Hx(),cardCornersApplyAll:HF()}}function FG(){return Zo("Justify",I(b0,{}),wi,wi[0].value)}function EG(){return Zo("Item alignment",I(h0,{}),_m,"stretch")}function PG(){return Zo(Dm,I(j0,{}),ki,ki[0].value)}function LG(){return{type:"custom",render:({value:e,onChange:o})=>{let t=yn.find(r=>r.value===e)??yn[0];return I(ne,{label:l(Ti),icon:I(Ix,{}),value:l(t.label),children:I(Tx,{className:"sf-gallery-layouts",label:l(Ti),value:t.value,onChange:o,options:yn.map(r=>({value:r.value,label:l(r.label),picture:I("span",{className:"sf-gallery-pic",children:zF(r.weights).map((a,n)=>I("i",{style:{gridColumn:`span ${a}`}},n))})}))})})}}}function zF(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 OG(){return Zo(Hm,I(hx,{}),Ei,Ei[0].value)}function RG(){return Kt(Nm,I(M0,{}),Fi,Mm,1,Fi)}function AG(e){let o=Vi(Lm,Ui("`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)."),Rm(e),bn(e,void 0));return{type:"custom",render:t=>o.render({...t,value:bn(e,t.value),onChange:r=>t.onChange(r)})}}function BG(e,o,t,r,a,n){return{type:"custom",render:({value:s,onChange:i})=>I(ne,{label:l(e),icon:I(zs,{noun:n}),action:I(qe,{words:j()?.panel,label:l(e),changed:!ex(s),detail:l("the Text style in Site styles"),onReset:()=>i(Jm),defaultAction:{onPress:()=>i(kn),title:l("Keep this section's own built-in size"),icon:I(C0,{})}}),children:je({min:o,max:t,step:r,value:typeof s=="number"?s:a,suffix:"px",ariaLabel:e,onChange:i})})}}function _G(){return{_gCellWidth:He("Cell width"),gridSpan:Zo("Positions",I(Ix,{}),[{label:"Auto",value:""},...Array.from({length:Xa},(e,o)=>({label:o===0?"1 position":`${o+1} positions`,value:String(o+1)}))],"")}}function vt(){let e=null;try{e=Yr(o=>o).selectedItem}catch{e=null}return e?.props??{}}function WF({min:e,max:o,step:t,px:r,label:a,onChange:n,desktopKey:s,fallback:i}){let f=vt()[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 GF({label:e,desktopKey:o,fallback:t,changed:r=!1,onReset:a=()=>{}}){let n=vt()[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 UF(e){return Nx(e.label,{icon:e.icon,min:e.min,max:e.max,step:e.step,unsetLabel:"Follows Desktop",unsetMark:I(GF,{label:e.label,desktopKey:e.desktopKey,fallback:e.fallback}),restTrack:o=>I(WF,{...o,desktopKey:e.desktopKey,fallback:e.fallback})})}function DG(e){return{type:"custom",render:({value:o,onChange:t})=>I(qF,{...e,value:o,onChange:t})}}function $F({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:zn({options:t,value:i?r:a,onChange:f=>s(f),ariaLabel:e})})}function qF({label:e,icon:o,options:t,desktopKey:r,resolve:a,value:n,onChange:s}){let i=vt()[r],f=a(void 0,i),u=t.find(p=>p.value===f)?.label??"";return I($F,{label:e,icon:o,options:t,value:n,resolved:f,restWord:u,onChange:s})}var jF={Top:"Padding top",Bottom:"Padding bottom",Left:"Padding left",Right:"Padding right"},KF={Top:Cx,Bottom:bx,Left:yx,Right:Sx},VF=e=>{let o=KF[e];return I(o,{})};function NG(e={}){let o=e.keys?.top??"sectionPaddingTop",t=e.keys?.bottom??"sectionPaddingBottom",r=e.group!==!1,a=k=>jF[k],n=k=>Kt(a("Top"),I(Cx,{}),lo.min,lo.max,lo.step,k,"px"),s=(k,v,w,g=lo)=>ve("mobile",UF({label:a(k),icon:VF(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 Vt({...r?{_gSpacing:He("Padding")}:{},[o]:C(n(i)),...b?{[Ro(o)]:s("Top",o,i)}:{},...e.only==="top"?{}:{[t]:C(Kt(a("Bottom"),I(bx,{}),lo.min,lo.max,lo.step,f,"px")),...b?{[Ro(t)]:s("Bottom",t,f)}:{}},...e.sides?{[u]:C(Kt(a("Left"),I(yx,{}),m.min,m.max,m.step,x,"px")),...b?{[Ro(u)]:s("Left",u,h,m)}:{},[p]:C(Kt(a("Right"),I(Sx,{}),m.min,m.max,m.step,x,"px")),...b?{[Ro(p)]:s("Right",p,h,m)}:{}}:{}})}var Vr=["top","right","bottom","left"],YF={top:"sectionPaddingTop",right:"sectionPaddingRight",bottom:"sectionPaddingBottom",left:"sectionPaddingLeft"},ux=e=>typeof e=="number"?e:null;function XF(e,o,t){let r={};for(let a of Vr)t[a]!==o[a]&&(r[e[a]]=t[a]??void 0);return r}function ZF({tier:e,o}){let t=null;try{t=mx()}catch{t=null}let r=t?.values??{},a=e==="mobile"?o.phoneKeys:o.keys,n=Object.fromEntries(Vr.map(u=>[u,ux(r[a[u]])])),s=Object.fromEntries(Vr.map(u=>[u,String(e==="mobile"?ux(r[o.keys[u]])??o.fallback[u]:o.fallback[u])])),[i,f]=Pn(()=>Q0(n,s));return I(ne,{label:l("Padding"),icon:I(N0,{}),action:I(wx,{each:i,label:l("Each side"),onChange:f}),children:I(Z0,{label:l("Padding"),each:i,value:n,placeholder:s,min:o.min,max:o.max,step:o.step,onChange:u=>{let p=XF(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 Dn(e={}){let o={...YF,...e.keys},t={keys:o,phoneKeys:Object.fromEntries(Vr.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(ZF,{tier:i,o:t})};return r?ve(i,f):f},n=()=>Hr({type:"custom",render:()=>I(Wt,{})},"always"),s=Vr.filter(i=>i!=="top");return Vt({...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 QF={contained:"Contained",page:"Page",full:"Full"},En="Width";function Nn(e,o=nx,t=!0){let r=o.map(a=>({label:Kr[a]??QF[a],value:a}));return Vt({...t?{_gWidth:He(En)}:{},widthMode:{type:"custom",render:({onChange:a,field:n})=>I(ne,{label:l(En),icon:I(q0,{}),action:t?I(mF,{inherited:n?.inherited??!1,onReset:()=>a(Di),label:En}):void 0,children:zn({options:r,value:n?.currentValue||e,onChange:a,ariaLabel:En})})}})}function Mn(){let e=r=>({type:"custom",render:({value:a,onChange:n})=>I(ne,{label:$t,icon:Co(I(B0,{})),action:r?r(n):void 0,children:zn({options:[{label:"Auto",value:"auto"},{label:"Fixed",value:"fixed"},{label:"Screen",value:"screen"}],value:["auto","fixed","screen"].includes(a)?a:"auto",onChange:n,ariaLabel:$t})})}),o=()=>({type:"custom",render:({value:r,onChange:a,field:n})=>{let s=n?.unit==="%"?"%":"px",i=s==="%"?yi:bi;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:$t,onChange:a})})}}),t=()=>Vi("Unit",I(gx,{}),[{label:"px",value:"px"},{label:"%",value:"%"}],"px");return Vt({_gHeight:He($t),sectionHeightMode:ve("desktop",e()),sectionHeightValue:ve("desktop",o()),sectionHeightUnit:ve("desktop",t()),sectionHeightModePhone:ve("mobile",e(r=>I(JF,{onClear:()=>r(void 0)}))),sectionHeightValuePhone:ve("mobile",o()),sectionHeightUnitPhone:ve("mobile",t())})}function JF({onClear:e}){let o=vt(),t=Si(o),r=hn(o),a=l("{value} on desktop",{value:r.mode==="auto"?l("Auto"):`${r.value}${r.unit}`});return I(qe,{words:j()?.panel,label:l($t),changed:t,detail:a,onReset:e})}function Ki(){let e=t=>({type:"custom",render:({value:r,onChange:a,id:n,name:s})=>I(eE,{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(gn),stickTop:ve("desktop",e(!1)),stickTopDistance:ve("desktop",o()),stickTopPhone:ve("mobile",e(!0)),stickTopDistancePhone:ve("mobile",o())}}function eE({value:e,onChange:o,labelId:t,phone:r}){let a=vt(),n=vi(a),s=r?n.phone:e===!0;return I(ne,{label:l(gn),labelId:t,icon:Co(I(W0,{})),action:Ct(_o,{children:[r?I(qe,{words:j()?.panel,label:l(gn),changed:Ci(a),detail:l("{value} on desktop",{value:n.desktop?`${n.desktopDistance}px`:l("Off")}),onReset:()=>o(void 0)}):null,I(kx,{checked:s,onChange:o,ariaLabelledBy:t})]})})}function Hn(){return{_gAnchor:He("Anchor"),anchor:SF("Anchor name","e.g. about",gF)}}function MG(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(lF,{id:i,value:Number.isFinite(f)?new Date(f):null,onChange:u=>a(u?u.toISOString():"")})})}}}function yt(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(kx,{checked:i,onChange:a,ariaLabelledBy:f})})}}}function HG(){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(vx,{}),htmlFor:a,action:I(to,{id:a,label:"Background",value:Ws(e),onChange:o})})}}}var zG={follows:"fill"},WG={follows:"ink"};function GG(e,o,t){if(typeof o!="string"){let r=o.follows;return{type:"custom",render:({value:a,onChange:n})=>I(oE,{label:e,part:r,icon:t,value:a,onChange:n})}}return{type:"custom",render:({value:r,onChange:a})=>I(ne,{label:l(e),icon:t,action:to({value:r||o,onChange:a,label:e})})}}function oE({label:e,part:o,icon:t,value:r,onChange:a}){let n=tu(X().theme),s=o==="fill"?n.fill:n.ink;return I(rn,{label:l(e),icon:t,value:r||"",inherited:s,resetTo:St(s.toUpperCase(),l("Site styles")),onChange:a,onReset:()=>a("")})}var tE=[{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 Ux({label:e,value:o,onChange:t,points:r=tE}){let a=r.map(n=>({...n,label:l(n.label),...n.title?{title:l(n.title)}:null}));return I(aF,{label:l(e),value:o,points:a,onChange:t})}function UG(){return Hr({type:"custom",render:()=>I(Wt,{})},"always")}var rE=Ns([]);function $G(e,{stacking:o,fallback:t=Za}){return{type:"custom",render:({value:r,onChange:a})=>{let n=ho.includes(r)?r:t;return o?I(aE,{label:e,value:n,onChange:a}):$x({label:e,value:n,onChange:a,points:rE})}}}function aE({label:e,value:o,onChange:t}){let{appState:r,selectedItem:a}=Yr(i=>i),n=a?.props?.id?String(a.props.id):void 0,s=n?Hs(r?.data,n):[];return $x({label:e,value:o,onChange:t,points:Ns(s,n)})}function $x({label:e,value:o,onChange:t,points:r}){let a=r.find(n=>n.disabled);return I(ne,{label:l(e),icon:I(H0,{}),hint:a?.title?l(a.title):void 0,children:Ux({label:e,value:dt(o),onChange:t,points:r})})}var qG={top:I(P0,{}),right:I(E0,{}),bottom:I(T0,{}),left:I(F0,{})};function jG(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:Ux({label:e,value:x,onChange:m,points:u})})}}}var nE="\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(oF,{value:p,ariaLabel:l(e),onChange:s,options:[...a?[{label:l(a),value:nE,disabled:!0}]:[],...f.map(m=>({label:l(m.label),value:m.value}))]})})}}}function KG(e,o,t){return{type:"custom",options:o,render:({value:r,onChange:a,field:n})=>I(Up,{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 VG(e,o={}){return{type:"custom",render:({value:t,onChange:r})=>{let a={value:t,onChange:r,...o};return I(e,{...a})}}}function zn({options:e,value:o,onChange:t,ariaLabel:r,disabled:a=!1}){return I(X0,{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 YG=[{label:"Image",value:"image"},{label:"Video",value:"video"}];function Vi(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:zn({options:a,value:a.some(f=>f.value===n)?n:n||i?.currentValue||r,onChange:s,ariaLabel:e})})}}function XG(e,o,t,r={}){return{type:"custom",[m0]:!0,render:({value:a,onChange:n})=>I(Wp,{value:a||"",onChange:n,label:e,accept:o,placeholder:t,focusKey:r.focus,focusWhen:r.focusWhen})}}function ZG({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 Ct(ne,{label:l(t),icon:I(zi,{}),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&&Ct("div",{style:{marginTop:8,display:"grid",gap:8},children:[I(ne,{label:l("Latitude"),icon:I(zi,{}),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(zi,{}),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 lE(e,o){return o===null||o<0||o>=e.length?"":e[o]?.text??""}function sE(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 iE(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 Yi={label:"Ticker items",icon:I(D0,{})};function QG(e,o,t,r){return{type:"custom",[Bo]:{control:"textList",label:e,placeholder:t,itemKey:"text",rendering:r},render:({value:a,onChange:n})=>I(Xi,{label:e,icon:Co(o),items:Array.isArray(a)?a:[],placeholder:t,onChange:n,markup:r==="markup"})}}function Xi({label:e,icon:o,items:t,placeholder:r,onChange:a,markup:n=!1}){let s=Wi(null),[i,f]=Pn(null),u=m=>m.map(x=>({text:x?.text??""})),p=m=>{let x=iE(t,m,i);x===null&&(s.current=null),f(x),a(u(m))};return I(tF,{label:l(e),icon:o,noun:l("item"),items:t,onChange:p,newItem:()=>({text:""}),open:null,onOpen:()=>{},renderItem:()=>null,above:n?I(Qs,{target:s,value:lE(t,i),onChange:m=>a(sE(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 qx(e,o){let t=`${e.label} \u2014 row ${o+1}`;return Xt({control:"plainText",label:t,placeholder:e.placeholder,offPage:e.offPage},{type:"custom",render:({value:r,onChange:a})=>I(Yt,{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 jx(e){return{_gCards:He("Cards"),coverIndex:Zo("Cover image",I(_0,{}),_p,String(1),e?.coverHint??"A card's opening picture \u2014 a card pinned to a finish keeps its own."),imageBackground:TF("Image background",wn),cardImage:cE(),spinOnHover:yt("Rotate on hover",e?.spinDefault??!0,I(G0,{}))}}function Kx(){return{outline:Zo("Card outline",I(U0,{}),li,ai),indexBadge:Zo("Card number",I(gx,{}),ni,ri),showBadge:yt("Product badge",!0,I(zs,{noun:"tag"}))}}function Vx(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:yt("Price",!0,I(L0,{})),showCardFinishes:yt("Finish swatches",!0,I(O0,{})),showCardSizes:yt("Sizes",t.showCardSizes,I(z0,{})),showCardBuy:yt("Buy button",t.showCardBuy,I(v0,{})),showCardPage:yt("Page button",t.showCardPage,I(vx,{}))}}function JG(e,o="display"){let t=Ro(o);return{[o]:ve("desktop",{type:"custom",render:({value:r,onChange:a})=>I(Yx,{parts:e,changed:cp(r),shown:n=>tn(r,n),onPress:(n,s)=>a(up(r,n,s)),onReset:()=>a(void 0)})}),[t]:ve("mobile",{type:"custom",render:({value:r,onChange:a})=>I(fE,{parts:e,desktopKey:o,value:r,onChange:a})})}}function Yx({parts:e,changed:o,shown:t,onPress:r,onReset:a,detail:n}){let s=l("Display");return I(ne,{label:s,icon:I(g0,{}),changed:o,action:I(qe,{words:j()?.panel,label:s,changed:o,detail:n,onReset:a}),children:I(rF,{label:s,items:e.map(i=>({id:i.id,label:l(i.label),shown:t(i.id)})),onChange:r})})}function fE({parts:e,desktopKey:o,value:t,onChange:r}){let a=vt()[o];return I(Yx,{parts:e,changed:dp(t),shown:n=>Ks(a,t,n),onPress:(n,s)=>r(pp(t,n,s)),onReset:()=>r(ln),detail:l("the same as Desktop")})}function cE(){return Nx("Card image",{min:oo,max:lt,step:qu,hint:"Rounds the picture. The card's own corner is in Site styles."})}function eU(){return qi({sidesKey:"cornerSides",step:ju,useFollowed:()=>oo,mark:I(dE,{label:Ku}),hint:l("Rounds the picture. Left alone it stays square.")})}function dE({label:e,changed:o=!1,onReset:t=()=>{}}){return I(qe,{words:j()?.panel,label:l(e),changed:o,onReset:t})}function oU(){return{type:"custom",render:({value:e,onChange:o})=>I(uE,{value:typeof e=="string"?e:"",onChange:o})}}function uE({value:e,onChange:o}){let[t,r]=Pn(null),a=Bs.filter(s=>t===null||Lo[s].across===t),n=e&&e in Lo?Lo[e]:null;return Ct(_o,{children:[I(ne,{label:l("Photos in a row"),icon:I(w0,{}),children:Ct("div",{className:"sf-gallery-filter",children:[I("button",{type:"button","aria-pressed":t===null,onClick:()=>r(null),children:l("All")}),Yu.map(s=>I("button",{type:"button","aria-pressed":t===s,onClick:()=>r(s),children:s},s))]})}),I(ne,{label:l("Layout"),icon:I(R0,{}),value:n?l(n.label):l("Not chosen"),hint:l("{n} of {total} layouts",{n:a.length,total:Bs.length}),children:I(Tx,{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 Wn,Fragment as pE,jsxs as Xx}from"react/jsx-runtime";import{Button as Zx,Dialog as mE}from"efficient-shell/ui";function xE(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 Qx({count:e,onCancel:o,onConfirm:t}){return Xx(mE,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Clear this site\u2019s colors?"),footer:Xx(pE,{children:[Wn(Zx,{variant:"secondary",onClick:o,children:l("Cancel")}),Wn(Zx,{variant:"danger",onClick:t,children:l("Clear colors")})]}),children:[Wn("p",{children:xE(e)}),Wn("p",{className:"mt-2 font-medium",children:l("This cannot be undone.")})]})}var SE=Ui("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"),CE="Reset color",vE={selected:0,themes:[]};function wE(e){e(vE)}function oI({value:e,onChange:o}){let t=e?.themes??[],r=t.length===0,a=Qe(e),[n,s]=eI(!1),i=bE(),[f,u]=eI(null),p=(v,w)=>{o({...a,themes:a.themes.map((g,y)=>y===v?w:g)})},m=Bt(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 Jx(IE,{children:[r?null:Qt(gE,{label:l(CE),icon:Co(SE),labelId:"sf-theme-reset",action:Qt(hE,{label:l("all theme colors"),words:i.panel,changed:!0,onReset:()=>s(!0)})}),n&&Qt(Qx,{count:t.length,onCancel:()=>s(!1),onConfirm:()=>{s(!1),wE(o)}}),Qt("div",{className:"sf-theme-list",role:"radiogroup","aria-label":l("Theme"),children:b.map((v,w)=>Qt(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))}),Jx("button",{type:"button",onClick:k,className:"sf-theme-add",children:[Qt(yE,{size:12}),l("Add new theme")]})]})}import{jsx as Gn}from"react/jsx-runtime";import{SettingsDefaultReset as kE,SettingsField as TE}from"efficient-easel/panel";import{SquareIcon as FE}from"efficient-easel/icons";var EE="Applies to panels, cards, inputs and buttons. Round things \u2014 color swatches, switches, status dots \u2014 stay round.",Zi="Corners";function tI({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Gn(TE,{label:l(Zi),icon:Gn(FE,{}),value:r?l("Default"):`${e}px`,changed:!r,action:Gn(kE,{words:j()?.panel,label:l(Zi),changed:!r,detail:l("the built-in corners"),onReset:()=>o(null)}),hint:t?l(EE):void 0,children:Gn(je,{min:oo,max:lt,step:1,value:e??oo,readout:!1,ariaLabel:l(Zi),onChange:o})})}import{jsx as Xr}from"react/jsx-runtime";import{SettingsDefaultReset as PE,SettingsField as LE,SettingsSegmented as OE}from"efficient-easel/panel";import{ShadowIcon as RE}from"efficient-easel/icons";var Qi={none:"None",soft:"Soft",lifted:"Lifted"},AE="Applies to cards \u2014 products, brands, journal entries and filter cells. Round things like swatches and status dots are never shadowed.",BE={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)"},_E={labelsPx:90.25,widestLabelPx:34.6};function rI({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??ys;return Xr(LE,{label:l("Card shadow"),icon:Xr(RE,{}),value:l(Qi[a]),changed:!r,action:Xr(PE,{words:j()?.panel,label:l("Card shadow"),changed:!r,detail:l(Qi[ys]),onReset:()=>o(null)}),hint:t?l(AE):void 0,children:Xr(OE,{options:iu.map(n=>({id:n,label:l(Qi[n]),icon:Xr("span",{className:"sf-shadow-chip",style:{boxShadow:BE[n]}})})),value:a,ariaLabel:l("Card shadow"),fit:_E,onChange:o})})}import{jsx as aI}from"react/jsx-runtime";import{ShadowIcon as DE}from"efficient-easel/icons";var NE="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 nI({value:e,onChange:o,showHint:t=!0}){let r=e===null;return aI(rn,{label:l("Shadow color"),icon:aI(DE,{}),value:e??"",inherited:Cs,resetTo:Cs,onChange:o,onReset:()=>o(null),hint:t?l(NE):void 0})}import{jsx as Un}from"react/jsx-runtime";import{SettingsDefaultReset as ME,SettingsField as HE}from"efficient-easel/panel";import{AlignSeparateIcon as zE}from"efficient-easel/icons";var WE="The space between the blocks inside a row, a grid or a box. Default means each one keeps the spacing it already has.",Ji="Block gap",GE=qt.Grid;function lI({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Un(HE,{label:l(Ji),labelId:"sf-block-gap",icon:Un(zE,{}),value:r?l("Default"):`${e}px`,changed:!r,action:Un(ME,{words:j()?.panel,label:l(Ji),changed:!r,detail:l("each block's own spacing"),onReset:()=>o(null)}),hint:t?l(WE):void 0,children:Un(je,{min:bt.min,max:bt.max,step:bt.step,value:r?GE:e,readout:!1,ariaLabel:l(Ji),onChange:o})})}import{jsx as $n}from"react/jsx-runtime";import{SettingsDefaultReset as UE,SettingsField as $E,SettingsSegmented as qE}from"efficient-easel/panel";import{HoverIcon as jE}from"efficient-easel/icons";var ef={none:"None",lift:"Lift",highlight:"Highlight"},KE="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 sI({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??Ss;return $n($E,{label:l("Hover effect"),icon:$n(jE,{}),value:l(ef[a]),changed:!r,action:$n(UE,{words:j()?.panel,label:l("Hover effect"),changed:!r,detail:l(ef[Ss]),onReset:()=>o(null)}),hint:t?l(KE):void 0,children:$n(qE,{options:fu.map(n=>({id:n,label:l(ef[n])})),value:a,ariaLabel:l("Hover effect"),onChange:o})})}import{jsx as qn}from"react/jsx-runtime";import{SettingsDefaultReset as VE,SettingsField as YE,SettingsSegmented as XE}from"efficient-easel/panel";import{ImageIcon as ZE}from"efficient-easel/icons";var of="Hero image",tf=[{followsWidth:!1,label:Kr.full},{followsWidth:!0,label:Kr.page}],QE="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 iI({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??!1;return qn(YE,{label:l(of),icon:qn(ZE,{}),value:l(tf.find(n=>n.followsWidth===a).label),changed:!r,action:qn(VE,{words:j()?.panel,label:l(of),changed:!r,detail:l(tf.find(n=>!n.followsWidth).label),onReset:()=>o(null)}),hint:t?l(QE):void 0,children:qn(XE,{options:tf.map(n=>({id:n.followsWidth,label:l(n.label)})),value:a,ariaLabel:l(of),onChange:o})})}import{jsx as jn}from"react/jsx-runtime";import{SettingsDefaultReset as JE,SettingsField as eP,SettingsSegmented as oP}from"efficient-easel/panel";import{DropIcon as tP}from"efficient-easel/icons";var rf="Photography",fI={shot:"As shot",mono:"Black and white"},af=[{grayscale:!1,label:fI.shot},{grayscale:!0,label:fI.mono}],rP="Black and white photographs return to color on hover. Wheels and tyres keep their real finish either way.";function cI({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??!1;return jn(eP,{label:l(rf),icon:jn(tP,{}),value:l(af.find(n=>n.grayscale===a).label),changed:!r,action:jn(JE,{words:j()?.panel,label:l(rf),changed:!r,detail:l(af.find(n=>!n.grayscale).label),onReset:()=>o(null)}),hint:t?l(rP):void 0,children:jn(oP,{options:af.map(n=>({id:n.grayscale,label:l(n.label)})),value:a,ariaLabel:l(rf),onChange:o})})}import{jsx as nf}from"react/jsx-runtime";import{useId as aP}from"react";import{SettingsField as nP,SettingsSwitch as lP}from"efficient-easel/panel";import{ShareIcon as sP}from"efficient-easel/icons";var iP="Share button",fP="On every blog post.";function dI({value:e,onChange:o,showHint:t=!0}){let r=aP();return nf(nP,{label:l(iP),labelId:r,icon:nf(sP,{}),action:nf(lP,{checked:e===!0,onChange:o,ariaLabelledBy:r}),hint:t?l(fP):void 0})}import{jsx as Kn}from"react/jsx-runtime";import{SettingsDefaultReset as cP,SettingsField as dP}from"efficient-easel/panel";import{PaddingXIcon as uP}from"efficient-easel/icons";var lf="Side space",sf=So.default,pP="The room left at the left and right edge of every page.";function uI({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Kn(dP,{label:l(lf),labelId:"sf-side-space",icon:Kn(uP,{}),value:`${e??sf}px`,changed:!r,action:Kn(cP,{words:j()?.panel,label:l(lf),changed:!r,detail:`${sf}px`,onReset:()=>o(null)}),hint:t?l(pP):void 0,children:Kn(je,{min:So.min,max:So.max,step:So.step,value:e??sf,readout:!1,ariaLabel:l(lf),onChange:o})})}import{jsx as Vn}from"react/jsx-runtime";import{SettingsDefaultReset as mP,SettingsField as xP}from"efficient-easel/panel";import{WidthIcon as IP}from"efficient-easel/icons";var ff="Content width",cf=_e.default,hP="The standard width every page on this site renders at.";function pI({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Vn(xP,{label:l(ff),labelId:"sf-site-width",icon:Vn(IP,{}),value:`${e??cf}px`,changed:!r,action:Vn(mP,{words:j()?.panel,label:l(ff),changed:!r,detail:`${cf}px`,onReset:()=>o(null)}),hint:t?l(hP):void 0,children:Vn(je,{min:_e.min,max:_e.max,step:_e.step,value:e??cf,readout:!1,ariaLabel:l(ff),onChange:o})})}import{jsx as oh}from"react/jsx-runtime";import{TextStyleItem as F1,TextStylesGroup as E1}from"efficient-easel/text-styles";import{jsx as S1}from"react/jsx-runtime";import{useState as C1}from"react";import{TextStylesList as v1}from"efficient-easel/text-styles";import{usePreviewDevice as w1}from"efficient-easel/draw/client";import{textStyleCaseCss as x1}from"efficient-easel/draw";import{textStyleCaseCss as EP,textStyleCaseOfCss as PP}from"efficient-easel/draw";function df(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 Qn,encodePartId as Jn}from"efficient-easel/draw";import{LINK_FIELD_MARKER as vI,SCAFFOLD_FIELD_MARKER as SI,TEXT_FIELD_MARKER as el}from"efficient-easel/draw";import{readHidable as wI}from"efficient-easel/draw";import{SCALAR_TEXT_CONTROLS as wP}from"efficient-easel/draw";import{TEXT_FIELD_MARKER as vP}from"efficient-easel/draw";import{TEXT_FIELD_MARKER as mI}from"efficient-easel/draw";import{readHidable as xI}from"efficient-easel/draw";import{SCALAR_TEXT_CONTROLS as gP}from"efficient-easel/draw";var bP=gP,yP=["text","textarea"],SP=["textarea","plainTextarea"];function CP(e){return!e||typeof e!="object"?null:e[mI]?.control??null}function Jt(e){let o=CP(e);return o&&bP.includes(o)?o:null}function Yn(e){return SP.includes(e)}function II(e){return!e||typeof e!="object"?void 0:e[mI]?.placeholder}function Xn(e){return xI(e).text}function uf(e,o,t){return yP.includes(e)?{text:t,hidden:xI(o).hidden}:t}function hI(e,o,t,r){return Xn(e[o])===r?null:{...e,[o]:uf(t,e[o],r)}}function pf(e){if(!(!e||typeof e!="object"))return e[vP]}function mf(e){if(!e||typeof e!="object")return null;let o=e.arrayFields;return o&&typeof o=="object"?o:null}function gI(e,o){if(!Array.isArray(o))return[];let t=pf(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=mf(e);return a?(o.forEach((n,s)=>{for(let[i,f]of Object.entries(a)){if(!Jt(f))continue;let u=Xn(n?.[i]);u&&r.push({row:{index:s,rowKey:i},text:u})}}),r):[]}function Zr(e,o){if(Array.isArray(e))return e[o.index]?.[o.rowKey]}function xf(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 bI(e,o,t,r,a){let n=Zr(e[o],t);return Xn(n)===a?null:xf(e,o,t,uf(r,n,a))}function yI(e,o){return o?`${e} \xB7 row ${o.index+1}`:e}var io="data-sf-part",Ke="data-sf-part-selected",$$="data-sf-part-kind",kP="data-sf-part-style-owner",TP="data-sf-part-style-kind";function q$(e){for(let o=e;o;o=o.parentElement){let t=o.getAttribute(kP),r=o.getAttribute(TP);if(t&&r)return{owner:t,kind:r};if(o.getAttribute("data-puck-component"))return null}return null}var CI=2;function kI(e,o){if(!e)return!1;let t=Qn(e);return!!t?.propKey&&t.nodeId===o}function er(e){return xt(e).replace(/\s+/gu,"")}function Zn(e,o,t){let r=e[el];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}=wI(o);a?t.push(a):r.placeholder&&t.push(r.placeholder);return}if(!e[vI]){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))Zn(s,a?.[n],t);return}if(e.objectFields&&o&&typeof o=="object")for(let[a,n]of Object.entries(e.objectFields))Zn(n,o[a],t)}}function TI(e){if(!e||typeof e!="object")return!1;let o=e;return o[vI]?!1:!!o[el]||o.type==="text"||o.type==="textarea"}function ol(e,o){let t=e[el];return t?.label?t.label:typeof e.label=="string"?e.label:o}function If(e){let o=e.indexOf(" (");return(o>0?e.slice(0,o):e).trim()}function j$(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){if(!a||typeof a!="object"||zr(r))continue;let n=a,s=[];Zn(n,o?.[r],s),!s.length&&n[SI]!==void 0&&Zn(n,n[SI],s);let i=ol(n,r),f=new Set;for(let{row:m,text:x}of gI(n,o?.[r])){let h=er(x);h.length<CI||(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=er(m);x.length<CI||u.has(x)||(u.add(x),p.push(x))}p.length&&t.push({key:r,label:i,texts:p})}return t}var FP=wP;function FI(e,o){if(!o||typeof o!="object"||zr(e)||Lp(o))return null;let t=o[el];return!t||!FP.includes(t.control)?null:t}function K$(e,o){let t=FI(e,o);return t!==null&&t.identifier!==!0}function EI(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){let n=FI(r,a);if(!n)continue;let{text:s,hidden:i}=wI(o?.[r]),f=s||n.placeholder||"",u=xt(f).replace(/\s+/gu," ").trim();t.push({key:r,label:If(ol(a,r)),preview:u,offPage:n.offPage===!0,identifier:n.identifier===!0,hidden:!!i})}return t}var bf="_partStyles",Sf="data-sf-part-styled",LP=[400,500,600,700],DI=["left","center","right","justify"],PI=5,LI=1e3,OP=-5,RP=10,Cf=0,vf=64,wf=2,kf=120,Jo=1280,Tf=10,OI={size:{min:PI,max:LI,step:1},sizePhone:{min:PI,max:LI,step:1},padding:{min:Cf,max:vf,step:wf},width:{min:kf,max:Jo,step:Tf}},AP=.05,BP=.01,_P=["line","letter"],DP=.5,NP=2.5,MP=-1,HP=1,zP=0,WP=400;function Jr(e){return!e||typeof e!="object"||Array.isArray(e)?null:e}function NI(e){return Jr(e?.[bf])??{}}function rl(e,o){let t=NI(e);return Object.hasOwn(t,o)?Jr(t[o])??{}:{}}function MI(e,o,t){let r={...NI(e)};if(GP(t).length?r[o]=t:delete r[o],!Object.keys(r).length){let{[bf]:a,...n}=e;return n}return{...e,[bf]:r}}function GP(e){return Object.entries(e).filter(([,o])=>o!==void 0)}function UP(e){return _P.includes(e)}var Qr=(e,o,t)=>Math.min(t,Math.max(o,e));function $P(e,o){if(UP(e)){let t=Math.round(Number(o));return!Number.isFinite(t)||t===0?null:Qr(t,OP,RP)}if(e==="lineHeight"){let t=Number(o);return Number.isFinite(t)?or(Qr(t,DP,NP),3):null}if(e==="letterSpacing"){let t=Number(o);return Number.isFinite(t)?or(Qr(t,MP,HP),4):null}if(e==="paragraphSpacing"){let t=Math.round(Number(o));return!Number.isFinite(t)||t<=0?null:Qr(t,zP,WP)}if(Object.hasOwn(OI,e)){let{min:t,max:r}=OI[e],a=Math.round(Number(o));return Number.isFinite(a)?Qr(a,t,r):null}return e==="italic"?typeof o=="boolean"?o:null:e==="role"?Eo.includes(String(o))?o:null:o}var qP=["weight","size","sizePhone","line","letter","lineHeight","letterSpacing","paragraphSpacing","padding","width"];function HI(e){let o=null,t=r=>{o??={...e},delete o[r]};for(let r of qP){let a=e[r];a!==void 0&&!(typeof a=="number"&&Number.isFinite(a))&&t(r)}return e.align!==void 0&&!DI.includes(e.align)&&t("align"),o??e}var jP=[["font","role"],["line","lineHeight"],["letter","letterSpacing"]];function KP(e){let o=[];for(let[t,r]of jP)t===e?o.push(r):r===e&&o.push(t);return o}function oa(e,o,t,r){let a={...rl(e,o)},n=r==null?null:$P(t,r);if(n===null)delete a[t];else{a[t]=n;for(let s of KP(t))delete a[s]}return MI(e,o,a)}function zI(e,o){return MI(e,o,{})}function VP(e){return PP(e)??"none"}function YP(e){return EP(e)??""}var XP={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 ZP(e){let o=e.role;return o&&Eo.includes(o)?o:null}var QP={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 JP(e){let o=Yd[e],t=QP[o];return t?`var(--size-${o}, ${t})`:`var(--size-${o})`}function ta(e){let o={};return typeof e.lineHeight=="number"?o.lineHeight=e.lineHeight:e.line&&(o.lineHeight=or(e1+e.line*AP,3)),typeof e.letterSpacing=="number"?o.letterSpacingEm=e.letterSpacing:e.letter&&(o.letterSpacingEm=or(e.letter*BP,4)),o}var e1=1,ra="--sf-part-para",Ff="(max-width: 719.98px)";function RI(e){return e=HI(e),typeof e.sizePhone=="number"&&e.sizePhone>0?{fontSize:`${e.sizePhone}px`}:{}}function o1(e,o){return o&&typeof e.sizePhone=="number"&&e.sizePhone>0?{...e,size:e.sizePhone}:e}function tl(e,o){e=HI(e);let t=ZP(e),r=ta(e),a=e.size?`${e.size}px`:t?JP(t):"";return{fontFamily:e.font?n1(e.font):t?`var(${XP[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`:"",[ra]:e.paragraphSpacing?`${e.paragraphSpacing}px`:"",textTransform:YP(e.case),textAlign:e.align??"",paddingTop:hf(e.padding),paddingBottom:hf(e.padding),maxWidth:hf(e.width),color:t1(e.color),fontStyle:e.italic===!0?"italic":e.italic===!1?"normal":""}}var t1=e=>e===void 0||e===""?"":Object.hasOwn(Oo,e)?Oo[e]:WI.test(e)?e:"",WI=/^#[0-9a-fA-F]{6}$/;function GI(e){return WI.test(e)}var hf=e=>e===void 0?"":`${e}px`,or=(e,o)=>Number(e.toFixed(o));function e8(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:r1(Number.parseInt(e.fontWeight,10)),lineRatio:Number.isFinite(r)?or(r/t,3):1.2,letterEm:Number.isFinite(a)?or(a/t,4):0,align:a1(e.textAlign),case:VP(e.textTransform),paddingPx:Number.isFinite(n)?Math.round(n):0,widthPx:Number.isFinite(s)&&s<Jo?Math.round(s):Jo}}function r1(e){return Number.isFinite(e)?LP.reduce((o,t)=>Math.abs(t-e)<Math.abs(o-e)?t:o):400}function a1(e){for(let o of DI)if(o===e)return o;return e==="end"?"right":"left"}function o8(e,o){let t=AI(e);if(!t)return"";for(let r of no)if(AI(o(r.cssVar))===t)return r.key;return""}var AI=e=>(e.split(",")[0]??"").replace(/["']/g,"").replace(/\s+/g," ").trim().toLowerCase();function n1(e){let o=At(e);return o?`var(${o.cssVar})`:""}function t8(e,o,t,r){return!o||Qn(o)?.nodeId!==e?null:t.find(a=>r(a.getAttribute("class")))??t[0]??null}function r8(e,o,t=()=>ea,r=s=>s,a=i1,n=!1){let s=0;for(let{element:i,partId:f}of e){let u=Qn(f)?.propKey;if(!u)continue;let p=r(u),m=Object.hasOwn(o,p)?Jr(o[p])??{}:{},x=tl(o1(m,n),ea),h=gf.some(C=>i.style[C]),b=!1;for(let[C,k]of Object.entries(x))f1(i,C,k),k&&(b=!0);if(h||gf.some(C=>x[C]))for(let C of l1(i,a))for(let k of gf)C.style[k]=x[k]??"";b&&(s+=1)}return s}function l1(e,o){let t=er(e.textContent??""),r=[],a=e;for(let n=0;n<s1&&o(a);n+=1){let s=a.parentElement;if(!s||er(s.textContent??"")!==t)break;r.push(s),a=s}return r}var s1=8;function i1(e){let o=e;return typeof window>"u"||!o?.ownerDocument?!1:window.getComputedStyle(o).display==="inline"}var ea={fontKey:"",sizePx:16,weight:400,lineRatio:1,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:Jo};function f1(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===ra&&(t?a.setAttribute?.(BI,""):a.removeAttribute?.(BI))}var BI="data-sf-part-para",c1=Object.keys(tl({},ea)),yf=new Set(["color","overflowWrap",ra,"fontStyle"]),gf=c1.filter(e=>!yf.has(e));function UI(e,o,t,r=a=>a){let a=new Map;for(let i of e){let f=df(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(!d1(i))continue;let f=Jr(o[i])??{},u=tl(f,ea),p=RI(f);!Object.values(u).some(Boolean)&&!Object.keys(p).length||n.set(i,{stamp:_I(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=Jr(o[m])??{},h=tl(x,ea),b=RI(x);!Object.values(h).some(Boolean)&&!Object.keys(b).length||s.set(i,{stamp:_I(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 d1(e){return e.startsWith("@")}function Ef(e,o){return e?.kindRules.get(o)??null}function _I(e,o){let t=r=>r.replace(/[^A-Za-z0-9_-]+/g,"-");return`${t(e)}~${t(o)}`}function $I(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])=>`${p1(b)}: ${C}`).join("; "),u=`[${Sf}="${n}"]`,p=i.filter(([h])=>!yf.has(h)),m=i.filter(([h])=>yf.has(h));p.length&&o.push(`${u}, *:has(> ${u}) { ${f(p)} }`),m.length&&o.push(`${u} { ${f(m)} }`),s[ra]&&o.push(...u1(u));let x=Object.entries(a.phone??{}).filter(([,h])=>h!=="");x.length&&o.push(`@media ${Ff} { ${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 u1(e){let o=`var(${ra})`,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 p1=e=>e.replace(/[A-Z]/g,o=>`-${o.toLowerCase()}`);function qI(e,o){if(!e)return null;let t=er(o),r=e.rules.get(t);if(r)return r;if(t.length<m1||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 m1=8;var Pf=e=>e==="sentence"?"none":void 0,No=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,aa=e=>typeof e=="string"&&e?e:void 0,KI=["font","color","size","sizePhone","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function fo(e){let o={};for(let t of KI)e[t]!==void 0&&(o[t]=e[t]);return o}function Of(e,o){let{auto:t,...r}=e,a=new Set(o??[]),n=KI.filter(s=>a.has(s)&&e.values[s]===void 0);return n.length?{...r,auto:n}:r}function Rf(e){let o=e.fonts,t=e.sizes,r=e.typography,a=du(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:aa(o.heading),size:No(t.headingLarge),weight:No(r.weight),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Pf(r.case),largestSize:No(r.maxPx)}),n(2,{font:aa(o.heading2),size:No(t.headingMedium),weight:No(r.weight2),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Pf(r.case2)}),n(3,{font:aa(o.heading3),size:No(t.headingSmall),weight:No(r.weight3),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Pf(r.case3)}),s(1,{font:aa(o.body),size:No(t.body)}),s(2),s(3),s(4),s(5,{font:aa(o.label),size:No(t.label)})]}function al(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=>Of({...o,values:fo(o.values??{})},Array.isArray(o.auto)?o.auto:void 0)):null}function f8(e){return al(e)??[]}function et(e,o){let t=Rf(o),r=al(e);return r?r.map(a=>{let n={...Lf(t,a.id)};for(let s of a.auto??[])delete n[s];return{...a,values:fo({...n,...a.values})}}):t}var Lf=(e,o)=>e.find(t=>t.id===o)?.values??{},jI=["heading-1","heading-2","heading-3"];function VI({saved:e,old:o,cur:t,next:r,sizeOf:a}){let n=Rf(o),s=al(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 I1([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],Lf(n,m.id)[y]!==void 0&&(f.push([m.id,y]),C.add(y));continue}if(C.delete(y),g==="lineSpacing")b.lineHeight=tr(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?tr(E/L,4):0}else b[y]=E}return Of({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")&&jI.includes(m))&&st(p)!=="normal"){for(let m of jI){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]=Lf(n,m)[b]);x.values=fo(h)}p="normal"}return{saved:u,old:{...o,compression:p}}}function YI(e,o){let t={text_styles:e.saved};return e.old.compression!==o.compression&&(t.heading_compression=st(e.old.compression)),t}var tr=(e,o)=>Number(e.toFixed(o));function XI(e,o){return e.map(t=>{let{lineHeight:r,letterSpacing:a,...n}=t.values,s={...n};return r!==void 0&&(s.lineSpacing=tr(r*100,1)),a!==void 0&&(s.letterSpacing=tr(a*o(t),2)),{id:t.id,kind:t.kind,name:t.name,values:s}})}function I1(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=tr(r/100,3)),a!==void 0){let f=o({...s,values:{...s.values}});i.letterSpacing=f?tr(a/f,4):0}return{...s,values:fo(i)}})}function c8(e){let o={fonts:Rr({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:bs({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:pu(e)},t=e.text_styles??null,r=Array.isArray(t)?Af(et(t,o),o):o;return{fonts:Rr(r.fonts),sizes:bs(r.sizes),compression:st(r.compression),typography:r.typography,textStyles:t}}function Af(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 h1(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}`}}function g1(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 b1(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 d8(e){let o=[];for(let t of e){let r=t.values,a=`.${h1(t)}`,n=[],s=r.font!==void 0?no.find(p=>p.key===r.font)?.cssVar:void 0;if(s&&n.push(`font-family: var(${s})`),r.size!==void 0){let p=r.largestSize!==void 0?Math.min(r.size,r.largestSize):r.size;n.push(`font-size: ${p}px`)}let i=r.color!==void 0?g1(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=[];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);let u=x1(r.letterCase);if(u&&n.push(`text-transform: ${u}`),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(...b1(a)),r.sizePhone!==void 0){let p=y1[t.id],m=[`${a} { font-size: ${r.sizePhone}px }`];p&&m.push(`.sf-themed-content { --size-${p}: ${r.sizePhone}px !important }`),o.push(`@media ${Ff} { ${m.join(" ")} }`)}}return o.join(`
|
|
5
|
+
`)}var y1={"heading-1":"headingLarge","heading-2":"headingMedium","heading-3":"headingSmall","body-1":"body","body-5":"label"};function u8(e){return e!==!0&&e!==!1?"":`em.text-accent { font-style: ${e?"italic":"normal"} }`}function Bf(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 _f(e){let o=ta(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 ZI(e){return Object.keys(_f(e)).length>0}function QI({saved:e,old:o,styleId:t,values:r}){return{saved:(al(e)??Rf(o).map(a=>({...a,values:{}}))).map(a=>a.id===t?Of({...a,values:fo({...a.values,...r})},a.auto):a),old:o}}var JI=["font","color","size","weight","emphasis","lineSpacing","letterSpacing","paragraphSpacing","letterCase","largestSize"],k1=["size","lineSpacing","letterSpacing","letterCase"],T1=500,Df=no.map(e=>({value:e.key,label:e.label,family:`var(${e.cssVar})`,italic:e.italicLoaded}));function eh({saved:e,old:o,colours:t,sizeOf:r,onChange:a,openId:n,onOpenChange:s,readOnly:i=!1,withoutSize:f=!1}){let[u,p]=C1(null),m=w1()==="mobile",x=et(e,o),h=XI(x,r);return S1(v1,{styles:h,onChange:b=>a(VI({saved:e,old:o,cur:h,next:b,sizeOf:r})),fonts:Df,colours:t,settings:f?JI.filter(b=>b!=="size"):JI,auto:k1,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=T1),k}})}var th=["font","size","weight","emphasis"],P1=500;function L1({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 O1(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 rh(e){let{headingWeight:o,open:t,onOpenChange:r,onChange:a,withoutSize:n=!1}=e,s=L1(e);return oh(E1,{label:l("Accent"),children:oh(F1,{style:s,fonts:Df,settings:n?th.filter(i=>i!=="size"):th,auto:["size"],fallback:()=>({weight:o??P1}),open:t,onOpenChange:r,onChange:i=>O1(s,i).forEach(a)})})}import{Tabs as A1,Tooltip as r7,tabButtonId as B1,tabPanelId as _1}from"efficient-shell/ui";import{ContrastIcon as D1,NoteIcon as N1,SettingsIcon as M1,TypeIcon as H1}from"efficient-easel/icons";function ah(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 P8,pinPreviewToBottom as L8,pinPreviewToSection as O8,previewFrame as nh,scrollPreviewToSection as lh,scrollPreviewToTop as Nf}from"efficient-easel/screen/lib/puck/preview-dom";import{useEasel as R1}from"efficient-easel/easel";function nl({themeFromDocument:e,persist:o}){let{appState:t,dispatch:r}=R1(L=>L),{fonts:a,setFonts:n,sizes:s,setSizes:i,headingCompression:f,setHeadingCompression:u,headingTypography:p,setHeadingTypography:m,textStyles:x,setTextStyles:h}=X(),b=t.data,C=b.root?.props??{},k=e?Rr(C.fonts):a,v=e?nu:s,w=e?st(C.headingCompression):f,g=e?uu(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=Af(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(YI(L,y),B)},writeRoot:F}}var zf="sf-site-styles",z1="sf-site-styles-tabpanel",Wf=!1,W1="Show hints";function Gf({shown:e,onChange:o}){return Z("div",{className:"sf-hints",children:wt("button",{type:"button","aria-pressed":e,onClick:()=>o(!e),className:`sf-rung sf-hints-toggle${e?" is-active":""}`,children:[Z(N1,{size:13}),l(W1)]})})}var ih="text",rr=[{id:"basics",label:"Basics",icon:Z(M1,{})},{id:"theme",label:"Theme",icon:Z(D1,{})},{id:"text",label:"Text",icon:Z(H1,{})}];function G1({themeFromDocument:e,persist:o}){let{appState:t,dispatch:r}=sh(u=>u),{theme:a,setTheme:n}=X(),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 Z(oI,{value:e?i.theme:a,onChange:f})}function U1({themeFromDocument:e,persist:o}){let[t,r]=Hf(null),{theme:a,setFonts:n,setSizes:s,setHeadingTypography:i}=X(),f=nl({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??V1(q1[F.id]??"body")??j1[F.kind],k=F=>f.write(F),v=$1(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 wt(ar,{children:[Z(eh,{saved:p,old:u,colours:v,sizeOf:C,onChange:k,openId:t===Mf?null:t,onOpenChange:r,withoutSize:e}),Z(rh,{font:x.accent,size:h.accent,weight:b.weightStrong,italic:b.italicStrong,headingWeight:b.weight,open:t===Mf,onOpenChange:F=>r(F?Mf: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 Mf="accent";function $1(e){let o=Bt(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 q1={"heading-1":"heading","heading-2":"heading2","heading-3":"heading3","body-1":"body","body-5":"label"},j1={heading:32,body:14},K1={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 V1(e){if(typeof document>"u")return null;let o=(nh()?.contentDocument??document).querySelector(K1[e]);if(!o)return null;let t=parseFloat(getComputedStyle(o).fontSize);return Number.isFinite(t)?t:null}function Y1({themeFromDocument:e,persist:o,showHint:t}){let{appState:r,dispatch:a}=sh(x=>x),{cornerRadiusPx:n,setCornerRadiusPx:s}=X(),i=r.data,f=i.root?.props??{},u=f.cornerRadiusPx===void 0?su[lu(f.cornerStyle)]:Io(f.cornerRadiusPx),p=e?u:n,m=x=>a({type:"replaceRoot",root:{...i.root,props:{...f,...x}},recordHistory:!0});return Z(tI,{value:p,onChange:x=>{e?m({cornerRadiusPx:x}):s(x),o({corner_radius_px:x})},showHint:t})}function X1(e){return{site_width:e}}function Z1({persist:e,showHint:o}){let{siteWidth:t,setSiteWidth:r}=X();return Z(pI,{value:t,onChange:a=>{r(a),e(X1(a),a===null)},showHint:o})}function Q1(e){return{block_gap:e}}function J1(e){return{site_gutter:e}}function eL({persist:e,showHint:o}){let{siteGutter:t,setSiteGutter:r}=X();return Z(uI,{value:t,onChange:a=>{r(a),e(J1(a),a===null)},showHint:o})}function oL({persist:e,showHint:o}){let{blockGap:t,setBlockGap:r}=X();return Z(lI,{value:t,onChange:a=>{r(a),e(Q1(a),a===null)},showHint:o})}function tL({persist:e,showHint:o}){let{heroBackgroundFollowsWidth:t,setHeroBackgroundFollowsWidth:r}=X();return Z(iI,{value:t,onChange:a=>{r(a),e({hero_background_follows_width:a},!0)},showHint:o})}function rL({persist:e,showHint:o=!0}){return wt(ar,{children:[Z(Z1,{persist:e,showHint:o}),Z(eL,{persist:e,showHint:o}),Z(oL,{persist:e,showHint:o}),Z(tL,{persist:e,showHint:o})]})}function aL(e){return{card_shadow:e}}function nL(e){return e===null?{shadow_color:null}:{shadow_color:cu(e)}}function lL(e){return{hover_effect:e}}function sL({persist:e,showHint:o=!0}){let{cardShadow:t,setCardShadow:r,shadowColor:a,setShadowColor:n,hoverEffect:s,setHoverEffect:i}=X();return wt(ar,{children:[Z(rI,{value:t,onChange:f=>{r(f),e(aL(f),!0)},showHint:o}),Z(nI,{value:a,onChange:f=>{n(f),e(nL(f),f===null)},showHint:o}),Z(sI,{value:s,onChange:f=>{i(f),e(lL(f),!0)},showHint:o})]})}function iL(e){return{photography_grayscale:e}}function fL({persist:e,showHint:o}){let{photographyGrayscale:t,setPhotographyGrayscale:r}=X();return Z(cI,{value:t,onChange:a=>{r(a),e(iL(a),!0)},showHint:o})}function cL({persist:e,showHint:o=!0}){return Z(ar,{children:Z(fL,{persist:e,showHint:o})})}function dL(e){return{share_button_on_posts:e}}function uL({persist:e,showHint:o=!0}){let{shareButtonOnPosts:t,setShareButtonOnPosts:r}=X();return Z(dI,{value:t,onChange:a=>{r(a),e(dL(a),!0)},showHint:o})}function nr(){let{websiteName:e}=X();return e?.trim()||mu}function ll({themeFromDocument:e=!1,tokenRef:o,siteId:t,onNotify:r,tab:a,onTabChange:n}){let{persist:s}=Ut({themeFromDocument:e,tokenRef:o,siteId:t,onResult:C=>{let k=ah(C);k&&r?.(k.msg,k.tone)}}),[i,f]=Hf(rr[0].id),u=a!==void 0,p=u?a:i,m=u?n??(()=>{}):f,x=rr.find(C=>C.id===p)??rr[0],[h,b]=Hf(Wf);return wt(ar,{children:[Z(pL,{activeId:x.id,onSelect:m}),wt("div",{id:_1(zf,x.id),className:z1,role:"tabpanel","aria-labelledby":B1(zf,x.id),children:[p==="basics"&&wt(ar,{children:[Z(Y1,{themeFromDocument:e,persist:s,showHint:h}),!e&&Z(sL,{persist:s,showHint:h}),!e&&Z(rL,{persist:s,showHint:h}),!e&&Z(cL,{persist:s,showHint:h}),!e&&Z(uL,{persist:s,showHint:h}),Z(Gf,{shown:h,onChange:b})]}),p==="theme"&&Z(G1,{themeFromDocument:e,persist:s}),p==="text"&&Z(U1,{themeFromDocument:e,persist:s})]})]})}function pL({activeId:e,onSelect:o}){return Z("div",{className:"es-insp-tabs",children:Z(A1,{variant:"underline",block:!0,labelsFit:!0,"aria-label":l("Site styles"),idPrefix:zf,value:e,onChange:o,items:rr.map(t=>{let r=l(t.label);return{id:t.id,icon:t.icon,label:r}})})})}import{InspectorIconButton as vL}from"efficient-easel/chrome";import{Button as Ih,Dialog as wL,FormField as kL,Input as hh,toast as gh}from"efficient-shell/ui";import{LayersTree as TL,TreeGroupLabel as FL,TreeRow as bh,TreeRowAction as Vf}from"efficient-easel/tree";import{AddIcon as EL,PageIcon as PL}from"efficient-easel/icons";import{PagesIcon as LL}from"efficient-easel/rail";var Uf="Main Pages",mL="Dynamic Pages",$f="dynamic",xL="dynamic";function qf(e){return e.kind===xL}function fh(e){let o=[],t=[];for(let r of e){if(qf(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??Uf,rows:[r]})}if(t.length){let r=o.findIndex(a=>a.key.startsWith("system:"));o.splice(r===-1?o.length:r,0,{key:$f,label:mL,rows:t})}return o}import{useCallback as sl,useEffect as IL,useSyncExternalStore as hL}from"react";var ch=new WeakMap;function na(e){let o=ch.get(e);return o||(o={rows:null,loading:null,listeners:new Set},ch.set(e,o)),o}function jf(e,o){e.rows=o;for(let t of e.listeners)t()}var il=new Set;function fl(e,o){o?il.add(e):il.delete(e)}function dh(e){let o=na(e),t=e.listPages().then(r=>jf(o,il.size?r.filter(a=>!il.has(a.id)):r),()=>jf(o,[])).finally(()=>{o.loading===t&&(o.loading=null)});return o.loading=t,t}var uh=()=>null,gL=()=>()=>{};function Kf(){let{adapter:e,ready:o}=ye(),t=sl(i=>{let{listeners:f}=na(e);return f.add(i),()=>f.delete(i)},[e]),r=sl(()=>na(e).rows,[e]),a=hL(o?t:gL,o?r:uh,uh);IL(()=>{if(!o)return;let i=na(e);i.rows===null&&!i.loading&&dh(e)},[e,o]);let n=sl(()=>o?dh(e):Promise.resolve(),[e,o]),s=sl(i=>jf(na(e),i),[e]);return{rows:a,reload:n,setRows:s,getRows:r}}function bL(e,o){return e?.find(t=>t.slug===o)?.label?.trim()||`/${o}`}function ph(){let{currentSlug:e}=ye(),{rows:o}=Kf();return bL(o,e)}var yh="sf-editor-pages-collapsed-groups",OL=e=>e.toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""),Sh=(e,o)=>{let t=OL(e)||"page";if(!o.has(t))return t;let r=2;for(;o.has(`${t}-${r}`);)r+=1;return`${t}-${r}`};function Ch({onNavigate:e,onClose:o,activeSurface:t,onPreviewSurface:r}){let a=Be().chrome?.pageRows,n=Gt(),{adapter:s,capabilities:i,ready:f,currentSlug:u}=ye(),p=nr(),{rows:m,reload:x,setRows:h,getRows:b}=Kf(),[C,k]=lr(""),[v,w]=lr(!1),[g,y]=lr(null),[E,F]=lr(!1),[L,B]=lr(""),O=CL(),[M,re]=lr(()=>{if(typeof window>"u")return new Set;try{let P=window.localStorage.getItem(yh);return new Set(P?JSON.parse(P):[])}catch{return new Set}});SL(()=>{try{window.localStorage.setItem(yh,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=xh(()=>fh(m??[]),[m]),A=C.trim().toLowerCase(),oe=P=>!A||P.toLowerCase().includes(A),Re=P=>A?!0:!M.has(P),Xe=xh(()=>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:Sh(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)}}},Ae=P=>{let le=m??[],Y=s.deletePage;if(!f||v||!Y||le.length<=1)return;let te=le.findIndex(be=>be.id===P.id),ae=le.filter(be=>be.id!==P.id),ue=P.slug===u;fl(P.id,!0),h(ae),y(null),ue&&ae[0]&&e(ae[0].slug);let Me=()=>{fl(P.id,!1);let be=b()??[];if(be.some(Fo=>Fo.id===P.id))return;let po=[...be];po.splice(Math.max(0,Math.min(te,po.length)),0,P),h(po)};gh.undoable(l("Deleted \u201C{name}\u201D",{name:P.label}),{actionLabel:l("Undo"),commit:async be=>{await Y(P.id,be),fl(P.id,!1)},undo:()=>{Me(),ue&&e(P.slug)},onFail:()=>{Me(),gh.error(l("Couldn\u2019t delete the page \u2014 please retry."))}})},Ge=P=>n.send("storefront-editor:open-page",{slug:P}),Ne=P=>{if(!oe(P.label))return null;let le=!t&&P.slug===u,Y=i.canDeletePagesInline&&(m??[]).length>1,te=qf(P),ae=P.kind==="lightbox",ue=[...te?[{label:l("Dynamic"),tone:"info"}]:[],...ae?[{label:l("Lightbox"),tone:"success"}]:[],...P.draft?[{label:l("draft"),tone:"draft"}]:[]],Me=ue.length>0?ue:void 0,be=i.pageCreationInAdminForm||Y?cl(mh,{children:[i.pageCreationInAdminForm&&fe(Vf,{kind:"plain",label:l("Edit \u201C{name}\u201D in {place}",{name:P.label,place:l("the admin")}),onClick:()=>Ge(P.slug),children:fe(dl,{name:"pencil",size:13,strokeWidth:1.7,rounded:!0})}),Y&&fe(Vf,{kind:"delete",label:l("Delete \u201C{name}\u201D",{name:P.label}),disabled:v,onClick:()=>Ae(P),children:fe(dl,{name:"trash",size:13,strokeWidth:1.7,rounded:!0})})]}):void 0;return fe(bh,{icon:fe(PL,{size:14}),name:P.label,selected:le,onSelect:()=>e(P.slug),badge:Me,actions:be,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=Re(P);return cl(yL,{children:[fe(FL,{count:te.length,expanded:ae,onToggle:()=>H(P),children:le}),ae&&te]},P)},he=(a?.rows??[]).filter(P=>oe(P.label)).map(P=>{let le=t===P.key;return fe(bh,{icon:P.icon,name:P.label,selected:le,onSelect:()=>r(P.key),badge:{label:l("Preview"),tone:"warning"},actions:fe(Vf,{kind:"plain",label:l("Open the {name} in a new tab",{name:P.label}),onClick:()=>window.open(P.href,"_blank","noopener,noreferrer"),children:fe(dl,{name:"external-link",size:13,strokeWidth:1.7,rounded:!0})}),rowProps:{"data-shop-surface":P.key}},P.key)}),xe=i.hasSiteSettings&&!!a,Ze=(()=>{if(m===null)return null;let P=[],le=!1;for(let Y of W){xe&&!le&&Y.key.startsWith("system:")&&(P.push(Ce("shop",a.title,he)),le=!0);let te=Y.key===$f||Y.label===Uf?l(Y.label):Y.label;P.push(Ce(Y.key,te,Y.rows.map(Ne)))}return xe&&!le&&P.push(Ce("shop",a.title,he)),P})();return cl("div",{className:"sf-pages",children:[fe(Ka,{icon:fe(LL,{}),title:l("Pages"),context:p,actions:fe(vL,{label:l("New page"),onClick:ro,children:fe(EL,{size:15})}),onHide:o}),fe("div",{className:"sf-pages-find",children:fe(hh,{type:"search",leftIcon:fe(dl,{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(TL,{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(wL,{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:cl(mh,{children:[fe(Ih,{variant:"secondary",onClick:()=>F(!1),children:l("Cancel")}),fe(Ih,{onClick:()=>{We()},disabled:v||!L.trim(),loading:v,children:l("Add page")})]}),children:fe(kL,{label:l("Page name"),htmlFor:O,hint:L.trim()?l("URL: /{slug}",{slug:Sh(L,Xe)}):void 0,error:g??void 0,children:fe(hh,{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 RL}from"react/jsx-runtime";import{createContext as AL,useCallback as BL,useContext as _L,useState as DL}from"react";import{useSelectHandler as NL}from"efficient-easel/draw/client";var ul=["chat-bubble-left-right","chat-bubble-oval-left-ellipsis","chat","megaphone","phone","sparkles"],sr=ul[0];var kt="right";function pl(e){return ul.includes(e??"")?e:sr}function vh(e){return e==="left"?"left":kt}function wh(e){return/^#[0-9a-fA-F]{6}$/.test(e??"")?e.toLowerCase():""}var ml={enabled:!0,title:"",subtitle:"",greeting:"",launcherColor:"",launcherIcon:"",launcherPosition:kt,launcherLabel:"",showOnPhones:!0};function H7(e){return{enabled:e.enabled,title:e.title,subtitle:e.subtitle,greeting:e.greeting,launcherColor:wh(e.launcherColor),launcherIcon:e.launcherIcon?pl(e.launcherIcon):"",launcherPosition:vh(e.launcherPosition),launcherLabel:e.launcherLabel??"",showOnPhones:e.showOnPhones!==!1}}var kh=AL({chat:ml,setChat:()=>{},selected:!1,setSelected:()=>{},select:()=>{},setSelectHandler:()=>{}});function z7({children:e,chat:o=ml,onChatChange:t}){let[r,a]=DL(!1),n=BL(f=>t?.(f),[t]),{select:s,setSelectHandler:i}=NL();return RL(kh.Provider,{value:{chat:o,setChat:n,selected:r,setSelected:a,select:s,setSelectHandler:i},children:e})}var xl=()=>_L(kh);import{jsx as Yf}from"react/jsx-runtime";import{DesktopIcon as ML,PhoneIcon as HL,TabletIcon as zL}from"efficient-easel/icons";import{VIEW_TIERS as WL,VIEW_TIER_LABEL as GL}from"efficient-easel/draw";var UL={desktop:Yf(ML,{}),tablet:Yf(zL,{}),mobile:Yf(HL,{})},Th=WL.map(e=>({id:e,get label(){return l(GL[e])},icon:UL[e]}));import{PreviewDeviceContext as ZM}from"efficient-easel/draw/client";import{jsx as $L}from"react/jsx-runtime";import{createContext as qL,useCallback as Fh,useContext as jL,useMemo as KL,useRef as VL}from"react";var YL=Object.fromEntries(Ga.map(e=>[e,{value:"",error:null}])),Eh=qL({links:Iu,rows:YL,canSave:!1,saveLink:async()=>({ok:!1,error:"There is no website to save to."}),openPanel:()=>{},setOpenHandler:()=>{}});function X7({children:e,value:o}){let t=VL(()=>{}),r=Fh(()=>t.current(),[]),a=Fh(s=>{t.current=s},[]),n=KL(()=>({...o,openPanel:r,setOpenHandler:a}),[o,r,a]);return $L(Eh.Provider,{value:n,children:e})}var la=()=>jL(Eh);import{jsx as XL}from"react/jsx-runtime";import{createContext as ZL,useContext as QL,useMemo as JL,useState as eO}from"react";var Ph=ZL(null);function eq({children:e}){let[o,t]=eO(null),r=JL(()=>({surface:o,setSurface:t}),[o]);return XL(Ph.Provider,{value:r,children:e})}function Lh(){return QL(Ph)??{surface:null,setSurface:()=>{}}}import{createPreviewSelectionContext as oO}from"efficient-easel/draw/client";var sa="Scrolling Bar",{Provider:rq,useSelection:Il}=oO("selectedHeroId");import{createPreviewSelectionContext as tO}from"efficient-easel/draw/client";var{Provider:lq,useSelection:hl}=tO("selectedHeroPart");import{isShown as gO,lazyShowWhenContext as bO}from"efficient-shell/format";var gl="product",rO="recordType",aO={key:gl,label:"Product",fields:[]};var nO=new Map,lO=0;function iq(){return[aO,...nO.values()]}function fq(){return lO}function sO(e){let o=e?.[rO];return typeof o!="string"?gl:o.trim()||gl}function Xf(e){return sO(e)===gl}var Zf="product",iO="tyre";var fO="productType",cO={[Zf]:"alloy-wheel",[iO]:"tyre"},dO=["alloy-wheel","tyre"];function Oh(e,o){return Xf(o)?uO(o)??cO[e]??null:null}function uO(e){if(!Xf(e))return null;let o=e?.[fO];return typeof o=="string"&&dO.includes(o)?o:null}var bl=null,Rh=null;function pO(e,o){bl=e,Rh=o}function mq(e){pO(e,null)}function xq(){return bl}function Ah(){return Rh==="dynamic"||bl===Zf}function Iq(e){return Oh(bl??"",e)??"alloy-wheel"}import{addShowWhenFacts as mO}from"efficient-shell/format";import{showWhenOf as Qf,shownForOption as xO,truthy as IO,withRowRules as hO,withRowsShownWhen as yl,withShowWhen as Sl}from"efficient-shell/format";var yq=mO;function _h(e,o,t){let r=!1,a={};for(let[n,s]of Object.entries(e))gO(Qf(s),o??{},t)?a[n]=s:r=!0;return r?a:e}function Dh(e,o,t,r){let a=Ya(o,t,r);return{device:e,parentType:a?.item.type,parent:a?.item.props}}function Bh(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 Bh(t.not,o);for(let r of[t.all,t.any])if(Array.isArray(r)&&r.some(a=>Bh(a,o)))return!0;return!1}function Fq(e,o={}){return bO({parentType:()=>e.parent?.type??void 0,parent:()=>e.parent?.props??void 0,dynamicPage:()=>Ah(),root:()=>e.appState?.data?.root?.props,...o})}var Mh=["one","side","stacked"];var Pq={one:"One",side:"Side by side",stacked:"Stacked"};function Hh(e){return Mh.includes(e)?e:"one"}function Nh(e){return e==="one"?1:2}function yO(e,o){if(Mh.includes(e))return e;let t=Hh(o);return t==="side"?"stacked":t}function Jf(e){let o=Hh(e.mediaLayout);return Math.max(Nh(o),Nh(yO(e.mediaLayoutPhone,o)))}var ia=["media","image","image2"],ir={media:"Media",image:"Image",image2:"Image 2"},fa={media:"heroMedia",image:"heroImage",image2:"heroImage2"};function Cl(e,o){return e==="image"&&Jf(o)>1?"Image 1":ir[e]}var Aq="Video file",Bq="Upload a video file";function SO(e,o){return{field:"mediaType",is:e,default:o}}var CO=new Set(["HeroSingle"]),zh="heroPart";function vO(e,o){return{...o,[zh]:e}}function _q(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]=Sl(n[i],SO(s,r));for(let[s,i]of Object.entries(a??{}))i&&(n[s]=Sl(n[s],i));for(let s of ia)for(let i of o[s]??[])n[i]=vO(s,n[i]);return n}function wO(e){let o=e?.[zh];return ia.includes(o)?o:null}function Wh(e,o){let t={};for(let[r,a]of Object.entries(e))wO(a)===o&&(t[r]=a);return t}function Gh(e){if(!CO.has(e.type))return[];let o=[{part:"media",label:ir.media,depth:0}];return(e.props.mediaType??"image")!=="video"&&(o.push({part:"image",label:Cl("image",e.props),depth:1}),Jf(e.props)>1&&o.push({part:"image2",label:Cl("image2",e.props),depth:1})),o}function ca(e,o){return`${e}::${o}`}function Uh(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 Dq="data-sf-hero-part";import{jsx as ee,jsxs as Et,Fragment as dd}from"react/jsx-runtime";import{useState as AD}from"react";import{useEasel as BD}from"efficient-easel/easel";import{headWords as Ay,InspectorHead as _D,InspectorIconButton as Oy}from"efficient-easel/chrome";import{DuplicateIcon as DD,TrashIcon as ND}from"efficient-easel/icons";import{panelFieldsOf as $h}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 FO,BlockBoxIcon as EO,BlockButtonIcon as PO,BlockDividerIcon as jh,BlockFooterIcon as Kh,BlockHeadingIcon as LO,BlockProductIcon as OO,BlockSocialIcon as RO,BlockTextIcon as AO,ChatIcon as BO,GridIcon as _O,ImageIcon as oc,MediaIcon as DO,PageIcon as NO}from"efficient-easel/icons";import{jsx as ec,Fragment as kO,jsxs as TO}from"react/jsx-runtime";var qh=TO(kO,{children:[ec("circle",{cx:"9",cy:"20",r:"1.3"}),ec("circle",{cx:"18",cy:"20",r:"1.3"}),ec("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 MO={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:qh,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"})},HO=T("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2.5"}),zO={footer:Kh,Footer:Kh,Divider:jh,FooterDivider:jh,Banner:FO,Flex:EO,FooterSocial:RO,page:NO,chat:BO,Heading:LO,Text:AO,ImageBlock:oc,ButtonBlock:PO,Grid:_O,ProductRef:OO,heroMedia:DO,heroImage:oc,heroImage2:oc},WO={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial",SiteHeader:"header",SiteFooter:"footer"};function Tt({type:e,size:o=16,className:t}){let r=WO[e]??e,a=zO[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:MO[r]??HO})}import{jsx as Q,jsxs as tc,Fragment as GO}from"react/jsx-runtime";import{useEffect as UO,useId as Vh,useState as $O}from"react";import{IconPicker as qO}from"efficient-shell/ui";import{SettingsDefaultReset as jO,SettingsField as fr,SettingsSegmented as KO,SettingsSwitch as Yh}from"efficient-easel/panel";import*as VO from"efficient-easel/icons";import{ButtonIcon as YO,ButtonIconIcon as XO,EyeIcon as ZO,PhoneIcon as QO,PlacementIcon as JO,TypeIcon as eR}from"efficient-easel/icons";var oR="Chat with us",tR="We usually reply within a few minutes",rR="Hi! Ask us anything \u2014 about a wheel, an order, or fitment. Leave your details and we\u2019ll reply.";function vl({label:e,value:o,placeholder:t,onCommit:r,multiline:a=!1,hint:n}){let[s,i]=$O(o);UO(()=>i(o),[o]);let f=()=>{s!==o&&r(s)};return Q(fr,{label:e,icon:Q(eR,{}),changed:o!=="",action:Q(cr,{label:e,changed:o!=="",onReset:()=>r("")}),hint:n,children:a?Q("textarea",{value:s,placeholder:t,rows:3,onChange:u=>i(u.target.value),onBlur:f,"aria-label":e}):Q("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 cr({label:e,changed:o,onReset:t}){return Q(jO,{words:j()?.panel,label:e,changed:o,onReset:t})}function aR({label:e,icon:o,checked:t,fallback:r,onChange:a,hint:n}){let s=Vh();return Q(fr,{label:e,labelId:s,icon:o,changed:t!==r,action:tc("span",{className:"inline-flex items-center gap-2",children:[Q(Yh,{checked:t,onChange:a,ariaLabelledBy:s}),Q(cr,{label:e,changed:t!==r,onReset:()=>a(r)})]}),hint:n})}function nR(e){let o=e.replace(/(^|-)([a-z])/g,(r,a,n)=>n.toUpperCase()),t=VO[`${o}Icon`];return t?Q(t,{size:16}):null}var lR=ul.map(e=>({value:e,icon:nR(e)}));function sR(){let{theme:e}=X(),o=Qe(e).themes[0];return Ar(o)??o?.accent??""}function Xh(){let{chat:e,setChat:o}=xl(),t=Vh(),r=sR(),a=e.launcherIcon?pl(e.launcherIcon):sr;return tc(GO,{children:[Q(fr,{label:l("Show the chat bubble"),labelId:t,icon:Q(ZO,{}),changed:!e.enabled,action:tc("span",{className:"inline-flex items-center gap-2",children:[Q(Yh,{checked:e.enabled,onChange:n=>o({enabled:n}),ariaLabelledBy:t}),Q(cr,{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.")}),Q(Zt,{label:"Look"}),Q(fr,{label:l("Button color"),icon:Q(YO,{}),changed:e.launcherColor!=="",action:Q(to,{label:l("Button color"),value:e.launcherColor,inherited:r,caption:e.launcherColor?void 0:l("Site button color"),onChange:n=>o({launcherColor:n}),after:Q(cr,{label:l("Button color"),changed:e.launcherColor!=="",onReset:()=>o({launcherColor:""})})})}),Q(fr,{label:l("Icon"),icon:Q(XO,{}),changed:a!==sr,action:Q(cr,{label:l("Icon"),changed:a!==sr,onReset:()=>o({launcherIcon:""})}),children:Q(qO,{label:l("Icon"),value:a,options:lR,onChange:n=>o({launcherIcon:n===sr?"":n})})}),Q(fr,{label:l("Position"),icon:Q(JO,{}),changed:e.launcherPosition!==kt,action:Q(cr,{label:l("Position"),changed:e.launcherPosition!==kt,onReset:()=>o({launcherPosition:kt})}),children:Q(KO,{options:[{label:l("Right"),id:"right"},{label:l("Left"),id:"left"}],value:e.launcherPosition,ariaLabel:l("Position"),onChange:n=>o({launcherPosition:n})})}),Q(vl,{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")}),Q(aR,{label:l("Show on phones"),icon:Q(QO,{}),checked:e.showOnPhones,fallback:ml.showOnPhones,onChange:n=>o({showOnPhones:n})}),Q(Zt,{label:"Wording"}),Q(vl,{label:l("Title"),value:e.title,placeholder:oR,onCommit:n=>o({title:n})}),Q(vl,{label:l("Subtitle"),value:e.subtitle,placeholder:tR,onCommit:n=>o({subtitle:n})}),Q(vl,{label:l("Greeting message"),value:e.greeting,placeholder:rR,onCommit:n=>o({greeting:n}),multiline:!0}),Q("p",{className:"es-field-hint sf-hint-keep",children:l("Leave a field blank to use the built-in wording.")})]})}import{jsx as Ft,Fragment as wc,jsxs as og}from"react/jsx-runtime";import{useEffect as NR,useId as Jh,useState as eg}from"react";import{SettingsField as MR}from"efficient-easel/panel";import{jsx as ER}from"react/jsx-runtime";import{forwardRef as iR,createElement as rc}from"react";var Zh={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=iR(({color:n="currentColor",size:s=24,stroke:i=2,title:f,className:u,children:p,...m},x)=>rc("svg",{ref:x,...Zh[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&&rc("title",{key:"svg-title"},f),...r.map(([h,b])=>rc(h,b)),...Array.isArray(p)?p:[p]]));return a.displayName=`${t}`,a};var fR=[["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"}]],ac=G("outline","brand-facebook","BrandFacebook",fR);var cR=[["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"}]],nc=G("outline","brand-instagram","BrandInstagram",cR);var dR=[["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"}]],lc=G("outline","brand-line","BrandLine",dR);var uR=[["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"}]],sc=G("outline","brand-linkedin","BrandLinkedin",uR);var pR=[["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"}]],ic=G("outline","brand-pinterest","BrandPinterest",pR);var mR=[["path",{d:"M15 10l-4 4l6 6l4 -16l-18 7l4 2l2 6l3 -4",key:"svg-0"}]],fc=G("outline","brand-telegram","BrandTelegram",mR);var xR=[["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"}]],cc=G("outline","brand-tiktok","BrandTiktok",xR);var IR=[["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"}]],dc=G("outline","brand-wechat","BrandWechat",IR);var hR=[["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"}]],uc=G("outline","brand-whatsapp","BrandWhatsapp",hR);var gR=[["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"}]],pc=G("outline","brand-x","BrandX",gR);var bR=[["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"}]],mc=G("outline","brand-youtube","BrandYoutube",bR);var yR=[["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"}]],xc=G("filled","brand-facebook-filled","BrandFacebookFilled",yR);var SR=[["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",SR);var CR=[["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"}]],hc=G("filled","brand-linkedin-filled","BrandLinkedinFilled",CR);var vR=[["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"}]],gc=G("filled","brand-pinterest-filled","BrandPinterestFilled",vR);var wR=[["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"}]],bc=G("filled","brand-tiktok-filled","BrandTiktokFilled",wR);var kR=[["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"}]],yc=G("filled","brand-whatsapp-filled","BrandWhatsappFilled",kR);var TR=[["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"}]],Sc=G("filled","brand-x-filled","BrandXFilled",TR);var FR=[["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"}]],Cc=G("filled","brand-youtube-filled","BrandYoutubeFilled",FR);var Ij="outline",wl={fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},PR={},vc={fillRule:"evenodd"},LR=[["path",{...wl,d:"M21 4L3 11L7 13L9 19L12 15L17 20z"}],["path",{...vc,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",{...wl,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",{...PR,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("")}]],RR=[["path",{...wl,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",{...wl,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",{...vc,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",{...vc,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("")}]],AR=G("filled","brand-telegram-filled","BrandTelegramFilled",LR),BR=G("filled","brand-line-filled","BrandLineFilled",OR),_R=G("filled","brand-wechat-filled","BrandWechatFilled",RR),DR={instagram:{outline:nc,solid:Ic},facebook:{outline:ac,solid:xc},tiktok:{outline:cc,solid:bc},youtube:{outline:mc,solid:Cc},x:{outline:pc,solid:Sc},linkedin:{outline:sc,solid:hc},pinterest:{outline:ic,solid:gc},whatsapp:{outline:uc,solid:yc},telegram:{outline:fc,solid:AR},line:{outline:lc,solid:BR},wechat:{outline:dc,solid:_R}};function Qh({platform:e,iconStyle:o,size:t}){let r=DR[e][o];return ER(r,{size:t,stroke:1.75,"aria-hidden":"true",focusable:"false"})}var HR={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 zR({platform:e}){let{rows:o,saveLink:t}=la(),{value:r,error:a}=o[e],[n,s]=eg(r),[i,f]=eg(!1),u=Jh(),p=Jh();NR(()=>s(r),[r]);let m=async()=>{if(n.trim()===r){n!==r&&s(r);return}f(!0),await t(e,n),f(!1)},x=xu[e];return og(wc,{children:[Ft(MR,{label:l(x),htmlFor:u,icon:Ft(Qh,{platform:e,iconStyle:"outline",size:18}),children:Ft("input",{id:u,type:"text",inputMode:"url",value:n,placeholder:HR[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&&Ft("p",{id:p,className:"sf-note sf-note--error",role:"alert",children:a})]})}function tg({unavailable:e}){let{canSave:o}=la();return!o&&e?Ft(wc,{children:e}):og(wc,{children:[Ft("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.")}),Ga.map(t=>Ft(zR,{platform:t},t))]})}import{jsx as xr,jsxs as LB}from"react/jsx-runtime";import{useId as OB,useMemo as RB}from"react";import{useEasel as AB}from"efficient-easel/easel";import{SettingsField as BB,SettingsSwitch as _B}from"efficient-easel/panel";import{EyeIcon as DB}from"efficient-easel/icons";import{jsx as vo,jsxs as Al}from"react/jsx-runtime";import{useCallback as pr,useEffect as mr,useId as vB,useRef as Mo,useState as ba}from"react";var rg="data-puck-overlay-portal";function kl(e){return e.setAttribute(rg,"true"),()=>e.removeAttribute(rg)}import{jsx as xa,jsxs as vg}from"react/jsx-runtime";var kc="small",Tc="dot",WR=[{label:"Small",value:"small"},{label:"Display",value:"display"}],GR=[{label:"Dot \u25CF",value:"dot"},{label:"Cross \u2715",value:"cross"},{label:"Slash /",value:"slash"},{label:"Triangle \u25BC",value:"triangle"},{label:"None",value:"none"}],ag={dot:"\u25CF",cross:"\u2715",slash:"/",triangle:"\u25BC",none:""},UR={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)]"},$R={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 ng(e){return Je(WR,kc,e)}function lg(e){return Je(GR,Tc,e)}function sg(e){return UR[e]}function ig(e,o){return $R[e][o]}var Fc="left",qR=[{label:"Left",value:"left",cell:"left"},{label:"Right",value:"right",cell:"right"},{label:"Up",value:"up",cell:"top"},{label:"Down",value:"down",cell:"bottom"}],jR={left:"storefront-ticker",right:"storefront-ticker-right",up:"storefront-ticker-up",down:"storefront-ticker-down"};function fg(e){return Je(qR,Fc,e)}function cg(e){return e==="up"||e==="down"}function dg(e,o){return`${jR[e]} ${o}s linear infinite`}import{jsx as ce,jsxs as Oc}from"react/jsx-runtime";import{Fragment as Sg}from"react";import{Fragment as QR,jsx as Pc}from"react/jsx-runtime";import{Fragment as mg,jsx as ua,jsxs as YR}from"react/jsx-runtime";import{createContext as Ec,useContext as pa,useId as XR,useMemo as ZR}from"react";var da="@name",ug="@body",pg="@value",Rj={[da]:"Name",[ug]:"Body",[pg]:"Value"},KR={TimelineTrack:{"entries.date":da,"entries.title":da,"entries.blurb":ug},Footprint:{"offices.city":da},Stats:{"items.label":da,"items.value":pg}};function VR(e){let{key:o,row:t}=so(e);return t?`${o}.${t.rowKey}`:null}function Tl(e,o){if(!e)return o;let t=VR(o);return t?KR[e]?.[t]??o:o}var Fl=Ec(null),xg=Ec(null),Ig=Ec(null);function Mj({needles:e,styles:o,type:t,children:r}){let a=XR(),n=JSON.stringify([a,e,o,t]),s=ZR(()=>UI(e,o,a,i=>Tl(t,i)),[n]);return s?YR(mg,{children:[ua("style",{"data-sf-part-styles":"",dangerouslySetInnerHTML:{__html:$I(s).replace(/</g,"\\3c ")}}),ua(Fl.Provider,{value:s,children:r})]}):ua(mg,{children:r})}function hg(e){let o=pa(Fl),t=pa(xg),r=qI(o,e);return r&&r.stamp!==t?r:null}function Hj(e){return Ef(pa(Fl),e)}function gg({stamp:e,children:o}){return ua(xg.Provider,{value:e,children:o})}function zj({children:e}){let o=pa(Fl);return ua(Ig.Provider,{value:o,children:e})}function Wj(e){return Ef(pa(Ig),e)}function ma({value:e,children:o}){let t=hg(e);return t?Pc(gg,{stamp:t.stamp,children:Pc("span",{[Sf]:t.stamp,children:o})}):Pc(QR,{children:o})}import{jsx as Lc,Fragment as JR}from"react/jsx-runtime";function bg({className:e=""}){return Lc("sup",{className:`text-accent tracking-normal text-[length:min(1em,max(0.75em,11px))] ${e}`,children:"\xAE"})}function El(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(Lc(bg,{},`r${a}`))}),Lc(JR,{children:t})}var Vj=bg;function Rc(e,o=!1){let t=sA(o),r=Zs(e);if(r.length===1){let[n]=r,s=Xs(n),i=s?nA(s,n.children):n.children;return ce(ma,{value:e,children:Pl(i,t)})}let a=[];return r.forEach((n,s)=>{if(n.bullet){a.push(ce("span",{"data-sf-bullet":"",className:eA,children:Pl(n.children,t)},s));return}if(n.number!=null){a.push(Oc("span",{"data-sf-number":n.number,className:oA,children:[Oc("span",{className:tA,children:[n.number,"."]}),Pl(n.children,t)]},s));return}s>0&&!rA(r[s-1])&&a.push(ce("br",{},`br${s}`)),a.push(ce(Sg,{children:Pl(n.children,t)},s))}),ce(ma,{value:e,children:a})}var eA="relative block pl-6 before:absolute before:left-1.5 before:font-bold before:text-accent before:content-['\xB7']",oA="relative block pl-[2em]",tA="absolute left-0 w-[1.6em] text-right tabular-nums";function rA(e){return e.bullet||e.number!=null}var aA="text-accent underline underline-offset-[0.18em]";function nA(e,o){let[t,...r]=o;return t?.kind==="text"?[{kind:"text",text:`${e}${t.text}`},...r]:[{kind:"text",text:e},...o]}function lA(e){if(e)return GI(e)?e:Object.hasOwn(Oo,e)?Oo[e]:void 0}function Pl(e,o){let t=[],r=!1;return e.forEach((a,n)=>{if(a.kind==="text"){t.push(ce("span",{children:El(a.text)},n)),r=!0;return}r||t.push(ce("span",{},`e${n}`)),t.push(Cg(a,n,o)),r=!1}),r||t.push(ce("span",{},"end")),t}function yg(e,o){return e.length===1&&e[0].kind==="text"?El(e[0].text):e.map((t,r)=>t.kind==="text"?ce(Sg,{children:El(t.text)},r):Cg(t,r,o))}function sA(e){return e?"font-normal italic text-accent":"not-italic text-accent"}function rK(e){return ce(ma,{value:e,children:ce("span",{children:e})})}function Cg(e,o,t){if(e.kind==="link")return ce("a",{href:e.href,className:aA,children:yg(e.children,t)},o);let r=yg(e.children,t),a=gp[e.kind];if(a)return ce("span",{[bp]: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=lA(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 aK(e,o=!0){let t=e.split(`
|
|
6
|
+
`);return ce(ma,{value:e,children:t.map((r,a)=>Oc("span",{children:[Rc(r,o),a<t.length-1?ce("br",{}):null]},a))})}function nK(e){return e.split(/\n\s*\n/).map(o=>o.trim()).filter(Boolean)}var iA={"themed-band":"text-fg/70","themed-section":"text-fg-dim","dark-media":"text-overlay-fg/70"};function wg({items:e,separator:o=Tc,size:t=kc,durationSec:r=50,scroll:a=Fc,backdrop:n="themed-band",className:s}){let i=ng(t),f=fg(a),u=lg(o),p=`text-accent ${ig(i,u)}`.trim(),m=ag[u],x=m===""?xa("span",{}):xa("span",{className:p,children:m}),h=cg(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 vg("span",{className:C,children:[xa("span",{className:E?"text-accent":void 0,children:Rc(y)}),x]},g)})},v);return xa("div",{className:`overflow-hidden ${s??""}`,children:vg("div",{className:`flex ${h?"flex-col ":""}whitespace-nowrap ${sg(i)} ${iA[n]}`,style:{animation:dg(f,r)},children:[k("a"),k("b")]})})}import{jsx as ha,jsxs as NA}from"react/jsx-runtime";import{createContext as MA,useContext as HA}from"react";import{jsx as dr,jsxs as _g}from"react/jsx-runtime";import{useEffect as Bc,useRef as kA,useState as Ia}from"react";import{jsx as kg}from"react/jsx-runtime";import{createContext as fA,lazy as IK,Suspense as hK,useContext as cA}from"react";var dA={Link:jd,Image:qd},uA=fA(dA);function Tg(){return cA(uA)}function gK(e){let{Link:o}=Tg();return kg(o,{...e})}function Fg(e){let{Image:o}=Tg();return kg(o,{...e})}import{jsx as Eg,Fragment as pA,jsxs as mA}from"react/jsx-runtime";import{useEffect as xA,useRef as Pg,useState as IA}from"react";var hA="#t=0.001",gA=2;function bA(e,o){if(e.readyState<gA||!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 Lg({src:e,objectPosition:o="50% 50%",onError:t}){let r=Pg(null),a=Pg(null),[n,s]=IA(!1);return xA(()=>{let i=r.current,f=a.current;if(n||!i||!f)return;let u=()=>{bA(i,f)&&s(!0)};return u(),i.addEventListener("loadeddata",u),i.addEventListener("seeked",u),()=>{i.removeEventListener("loadeddata",u),i.removeEventListener("seeked",u)}},[n]),mA(pA,{children:[Eg("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&&Eg("video",{ref:r,src:`${e}${hA}`,muted:!0,playsInline:!0,preload:"auto",className:"hidden",onError:t})]})}import{imageCopyUrl as Rg,imageSrcSet as yA}from"efficient-shell/image-copies";var Og;function Ac(){return Og===void 0?{}:{host:Og}}var wK="(max-width: 800px) 100vw, min(100vw, 1600px)";function Ag(e,{fallbackWidth:o=1280,maxWidth:t}={}){let r=yA(e,{...Ac(),...t===void 0?{}:{maxWidth:t}});return r?{src:Rg(e,o,Ac()),srcSet:r}:{src:e}}function kK(e){let o=Rg(e,1920,Ac());return o===e?`url(${e})`:`url("${o}")`}import{formatFocal as SA,parseFocal as CA}from"efficient-shell/format";var vA="sf-focus-phone",wA="--sf-focus-phone";function Bg(e){if(typeof e!="string"||!/^\s*-?\d+(\.\d+)?%\s+-?\d+(\.\d+)?%\s*$/.test(e))return{className:"",style:{}};let{x:o,y:t}=CA(e);return{className:vA,style:{[wA]:SA(o,t)}}}var TA=.5;function Dg({videoSrc:e,posterSrc:o,showVideo:t=!0,playbackRate:r=TA,objectPosition:a="50% 50%",objectPositionPhone:n,quiet:s=!1}){let i=Bg(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=kA(null);Bc(()=>{m(!1),h(!1),C(!1),v(!1)},[e,o]),Bc(()=>{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)},[]),Bc(()=>{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=Kd(f),F=f&&E&&!x?Ag(f):{src:f};return _g("div",{className:"absolute inset-0 z-[1]",children:[dr("div",{className:"absolute inset-0",style:{background:"var(--site-surface)"}}),f&&(E?dr("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):dr(Fg,{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&&_g("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:[Vd(u)&&dr("source",{src:u.replace(/\.mp4$/,".av1.mp4"),type:'video/mp4; codecs="av01.0.08M.10"'}),dr("source",{src:u,type:"video/mp4"})]},u),t&&s&&u&&w&&!k&&(!f||p)&&dr(Lg,{src:u,objectPosition:a,onError:()=>v(!0)},u)]})}var Ng=["top","middle","bottom"],Mg=["left","center","right"],Hg="bottom",zg="left",FA={top:"Top",middle:"Middle",bottom:"Bottom"},EA={left:"Left",center:"Center",right:"Right"};var NK="Up and down",MK="Sideways",PA={top:"flex-start",middle:"center",bottom:"flex-end"},LA={left:"flex-start",center:"center",right:"flex-end"},OA="--sf-hero-phone-y",RA="--sf-hero-phone-x";function AA(e){return Ng.includes(e)?e:Hg}function BA(e){return Mg.includes(e)?e:zg}function Wg(e,o){let t=AA(e),r=BA(o),a={};return t!==Hg&&(a[OA]=PA[t]),r!==zg&&(a[RA]=LA[r]),a}function HK(){return Ng.map(e=>({label:FA[e],value:e}))}function zK(){return Mg.map(e=>({label:EA[e],value:e}))}var _A="#0A0A0A",DA=[[0,".5"],[30,".1"],[60,".1"],[100,".85"]];function Gg(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 Ug(e){return e==null?!0:e!==!1}function $g(e){let o=(e?Gg(e):null)??Gg(_A);return`linear-gradient(180deg, ${DA.map(([t,r])=>`rgba(${o},${r}) ${t}%`).join(", ")})`}var _c=MA({});function XK({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}=HA(_c),E=t==="video",F=E?Or(r):void 0,L=E?Or(n):Or(r)??Or(n),B=typeof a=="number"?a/100:1;return NA("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(Dg,{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}}),Ug(k)&&ha("div",{className:"absolute inset-0 z-[2]",style:{background:$g(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:{...np,...Wg(g,y)},children:p&&ha(p,{className:"sf-hero-group-zone",minEmptyHeight:160})})]})}var qg=Array.from({length:3},(e,o)=>({name:`Slide ${o+1}`,process:"Category",mediaType:"image",mediaVideo:"",poster:""}));import{jsx as Dc}from"react/jsx-runtime";import{UiIcon as YA}from"efficient-easel/draw/client";var zA={"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]"},WA=`calc(${Fn} - ${$e}*2)`,jg=`var(${Ai},${$e})`,eV=`pointer-events-none absolute inset-y-0 left-[${jg}] right-[${jg}] z-[6] mx-auto max-w-[var(${Bi},${WA.replace(/ /g,"_")})]`;function Ll(e,o){return`pointer-events-auto absolute ${zA[e]} z-[6] sf-hero-overlay-rail flex ${o}`}function Kg(e){return ho.includes(e)?e:null}var GA="bottom-right",UA=["outline","solid","square","bare"],$A="outline",rV={outline:"Outline",solid:"Solid",square:"Square",bare:"Bare"},aV=!1,Vg=["prev","next"],Yg={prev:"Previous slide",next:"Next slide"};function qA(e){return UA.includes(e)?e:$A}function jA(e){return Kg(e)??GA}var KA="flex-row items-center gap-2";function Xg(e){return Ll(jA(e),KA)}var VA={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 Zg(e){return VA[qA(e)]}function Qg(e){return e.shown===!0&&(e.count??0)>1}function Ol(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 Jg({shape:e,placement:o,ref:t}){let r=Zg(e);return Dc("div",{ref:t,className:Xg(o),style:{color:"var(--overlay-fg)"},children:Vg.map(a=>Dc("button",{type:"button","data-hero-nav":a,"aria-label":Yg[a],className:r,children:Dc(YA,{name:"chevron-right",size:18,rounded:!0,style:a==="prev"?{rotate:"180deg"}:void 0})},a))})}import{jsx as we,jsxs as Nc,Fragment as ur}from"react/jsx-runtime";var XA=ho;var ZA="top-right",QA=["cards","dots","numbers","bar","squares","tabs"],JA=["cards","dots","numbers","bar","squares"],eb="cards",uV={cards:"Cards",dots:"Dots",numbers:"Numbers",bar:"Bar",squares:"Squares",tabs:"Tabs"},pV=!0;function Rl(e){return QA.includes(e)?e:eb}function ob(e){return JA.includes(e)?e:eb}function eB(e){return XA.includes(e)?e:ZA}var tb={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 rb(e,o){return Ll(eB(o),tb[Rl(e)])}function ab(e){return`flex ${tb[Rl(e)]}`}function nb(e){return e.shown!==!1&&(e.count??0)>1}function oB(e){return{name:e.dataset.slideName||"",process:e.dataset.slideProcess||"",video:e.dataset.slideMedia==="video"}}function tB(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 lb(e,o){let t=Array.from(o,oB);return tB(e,t)?e:t}function sb({slides:e,active:o,shape:t,placement:r,ref:a,tone:n="media",label:s}){let i=Rl(t),f=n==="surface"?{"--overlay-fg":"var(--fg)","--overlay-chrome":"var(--fg)","--overlay-scrim":"var(--site-surface-2)"}:void 0;return Nc("aside",{ref:a,"aria-label":s??"Featured slides",className:n==="surface"?ab(i):rb(i,r),style:{color:"var(--overlay-fg)",...f},children:[i==="cards"&&we(rB,{slides:e,active:o}),i==="dots"&&we(aB,{count:e.length,active:o}),i==="numbers"&&we(nB,{count:e.length,active:o}),i==="bar"&&we(sB,{count:e.length,active:o}),i==="squares"&&we(lB,{count:e.length,active:o}),i==="tabs"&&we(iB,{slides:e,active:o})]})}function rB({slides:e,active:o}){return Nc(ur,{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 Nc("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 aB({count:e,active:o}){return we(ur,{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 nB({count:e,active:o}){return we(ur,{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 lB({count:e,active:o}){return we(ur,{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 sB({count:e,active:o}){return we(ur,{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 iB({slides:e,active:o}){return we(ur,{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 fB,useState as cB}from"react";var ib="(prefers-reduced-motion: reduce)";function dB(){return globalThis.window?.matchMedia?.(ib)?.matches??!1}function bV(){return dB()?"auto":"smooth"}function fb(){let[e,o]=cB(!1);return fB(()=>{let t=globalThis.window?.matchMedia?.(ib);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 cb={min:40,max:100,step:5,fallback:100,unit:"vh"};function Mc(e){return`${typeof e=="number"?e:cb.fallback}${cb.unit}`}function db(...e){return e.some(o=>typeof o=="number")}import{HEADER_TYPE as Hc,FOOTER_TYPE as uB}from"efficient-easel/draw";var pB=new Set(["Hero","HeroSingle","IntroBleed"]),ub={min:56,max:140,default:88},wV={min:0,max:120,step:2,default:32},pb=`var(--sf-header-h, ${ub.default}px)`,mB="--sf-header-set-h",kV="--sf-header-h",TV=`var(${mB}, ${ub.default}px)`,FV="sf-header-clearance",EV="sf-sticky-underheader";function xB(e){return e?.find(o=>o?.type&&o.type!==Hc)??null}function mb(e){let o=xB(e)?.type;return!o||!pB.has(o)}function PV(e){return!mb(e)}function LV(e){return!!e?.some(o=>o?.type===Hc)}function OV(e){return!e||e.length===0?!1:!e.some(o=>o?.type===Hc||o?.type===uB)}var IB=["auto","shared","own"],hB="auto",gB="topSpace",RV="data-top-space";function bB(e){return IB.includes(e)?e:hB}function yB(e,o){let t=bB(e?.props?.[gB]);return t==="own"?!0:t==="shared"?!1:mb(o)}function AV(e,o){return yB(e,o)?"own":null}var SB=40;function CB(e,o){return Math.abs(e)<=SB||Math.abs(e)<=Math.abs(o)?null:e<0?"next":"prev"}function xb(e,o,t,r){let a=CB(e,o);return a?Ol(a,t,r):t}function Ib(e){return(e.count??0)>1&&e.editing!==!0}function hb(e){return e.editing!==!0?!1:(e.slides??[])[e.shown??0]?.video===!0}function gb(e){return e.editing!==!0?!1:!(e.playing===!0&&e.controlShown===!0)}import{HERO_SLIDER_GOTO_EVENT as bb}from"efficient-easel/draw";var wB=`
|
|
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
|
+
`,kB="Play video",TB="Hold video",FB="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",EB=()=>l("item"),zc=["","","","","",""],yb=new Map;function PB(e,o){let t=e?.ownerDocument?.defaultView;if(t)return t.addEventListener(bb,o),()=>t.removeEventListener(bb,o)}function tY({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=db(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":Mc(m),"--sf-hero-h-m":Mc(x)}:void 0,L=(p??zc.map(N=>({text:N}))).map(N=>N?.text?.trim()?N.text:g?EB():"").filter(Boolean),B=u!==!1,O=Mo(null),M=Mo(null),re=Mo(null),H=Mo(null),W=Mo(null),A=vB(),oe=Mo(A),[Re,Xe]=ba([]),[ro,We]=ba(0),Ae=Mo(0),[Ge,Ne]=ba(!1),[Ce,he]=ba(!1),[xe,Ze]=ba(null),P=fb(),{selectedHeroId:le,select:Y}=Il(),te=pr(()=>O.current?.querySelector(".hero-track")??null,[]),ae=pr((N,U=!1)=>{We(N),Ae.current=N,yb.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}%)`},[]);mr(()=>{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=yb.get(U);typeof q=="number"&&(We(q),Ae.current=q)},[]),mr(()=>{let N=te();if(!N)return;let U=()=>{Xe(se=>lb(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]),mr(()=>{if(!g)return;let N=U=>{let q=U.detail;if(!q||typeof q.index!="number")return;let se=O.current,eo=se?.getAttribute("data-puck-component")||se?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||oe.current;q.id&&q.id!==eo||ae(q.index,!0)};return PB(O.current,N)},[g,ae]);let ue=Re.length,Me=Math.min(Math.max(ro,0),Math.max(0,ue-1)),be=nb({shown:h,count:ue}),po=Qg({shown:k,count:ue}),Fo=hb({editing:g,shown:Me,slides:Re}),Wo=gb({editing:g,playing:Ce,controlShown:Fo}),Pe=Ib({count:ue,editing:g}),Go=Mo(null),rt=Mo(null),at=pr(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]),ps=pr(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}},[]),Ma=pr(()=>{let N=Go.current,U=rt.current;if(Go.current=null,rt.current=null,!Pe||!N||!U)return;let q=xb(U.x-N.x,U.y-N.y,Ae.current,ue);q!==Ae.current&&ae(q)},[Pe,ue,ae]);mr(()=>{if(g||!i||Ge||P||ue<=1)return;let N=Math.max(1,typeof f=="number"?f:6)*1e3,U=window.setTimeout(()=>ae((Me+1)%ue),N);return()=>window.clearTimeout(U)},[g,i,f,Ge,P,ue,Me,ae]),mr(()=>{let N=[M.current,re.current,H.current].filter(Boolean),U=N.map(se=>kl(se)),q=se=>{let eo=se.target,Uo=eo.closest("[data-hero-nav]"),Ha=Uo??eo.closest("[data-idx]");if(!Ha)return;se.stopPropagation(),se.preventDefault();let Rt=Uo?Ol(Uo.dataset.heroNav,Ae.current,ue):Number(Ha.dataset.idx);Number.isNaN(Rt)||(ae(Rt,g),te()?.querySelectorAll("[data-slide-name]")[Rt]?.click())};return N.forEach(se=>se.addEventListener("click",q,{capture:!0})),()=>{U.forEach(se=>se?.()),N.forEach(se=>se.removeEventListener("click",q,{capture:!0}))}},[ue,ae,te,g]),mr(()=>{if(!g)return;let N=W.current;if(!N)return;let U=kl(N),q=se=>{se.stopPropagation(),se.preventDefault();let eo=O.current,Uo=eo?.getAttribute("data-puck-component")||eo?.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 Pr=pr(N=>{if(!N)return;let U=kl(N),q=se=>{se.stopPropagation(),se.preventDefault(),he(eo=>!eo)};return N.addEventListener("click",q,{capture:!0}),()=>{U?.(),N.removeEventListener("click",q,{capture:!0})}},[]);return vo(_c.Provider,{value:{alignment:o,textureOpacity:t,textureOn:r,textureColor:a,quietVideo:Wo,phoneUpDown:n,phoneSideways:s},children:Al("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:()=>Ne(!0),onMouseLeave:()=>Ne(!1),onTouchStart:at,onTouchMove:ps,onTouchEnd:Ma,children:[vo(e,{className:"hero-track flex h-full [&>*]:h-full [&>*]:min-w-full [&>*]:shrink-0 [&>*]:basis-full",style:{transform:`translateX(-${Me*100}%)`,transition:P?"none":"transform 600ms cubic-bezier(.22,.61,.36,1)"},minEmptyHeight:400}),Fo&&vo("div",{ref:Pr,"data-hero-video-control":Ce?"playing":"held",className:"sf-hero-video-control absolute left-6 z-[7]",style:{top:`calc(${pb} + 16px)`},children:Al("button",{type:"button",className:FB,children:[vo("span",{"aria-hidden":"true",children:Ce?"\u275A\u275A":"\u25B6"}),l(Ce?TB:kB)]})}),(be||po)&&Al("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:[be&&vo(sb,{ref:M,slides:Re,active:Me,shape:ob(b),placement:C}),po&&vo(Jg,{ref:H,shape:v,placement:w})]}),be&&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:Re.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===Me?"w-5 bg-accent":"w-2 bg-white/45 hover:bg-white/70"}`},U))}),B&&L.length>0&&Al("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&&xe!=null&&le===xe?"":void 0,style:{background:"rgba(10,10,10,.55)"},children:[g&&vo("style",{children:wB}),vo(wg,{items:L,backdrop:"dark-media"})]})]})})}var NB="root:default-zone";function Sb({heroId:e}){let{appState:o,dispatch:t}=AB(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=RB(()=>{let p=n?.props.tickerItems;return Array.isArray(p)?p:zc.map(m=>({text:m}))},[n]),f=OB();if(!n)return xr("p",{className:"sf-note",children:l("This ticker\u2019s hero is no longer on the page.")});let u=p=>t({type:"replace",destinationZone:NB,destinationIndex:a,data:{...n,props:{...n.props,...p}}});return LB("div",{children:[xr(Zt,{label:"Ticker"}),xr(BB,{label:l("Show ticker"),labelId:f,icon:xr(DB,{}),action:xr(_B,{checked:s,onChange:p=>u({showTicker:p}),ariaLabelledBy:f})}),xr(Xi,{label:Yi.label,icon:Yi.icon,items:i,placeholder:"item",onChange:p=>u({tickerItems:p}),markup:!0})]})}import{jsx as z,Fragment as Zc,jsxs as wo}from"react/jsx-runtime";import{useContext as p_,useEffect as Vc,useRef as m_,useState as $b}from"react";import{FieldSelect as x_,InspectorField as I_}from"efficient-easel/fields";import{SettingsField as h_}from"efficient-easel/panel";import{InspectorUpLevel as zl}from"efficient-easel/chrome";import{StylesIcon as g_,TypeIcon as b_}from"efficient-easel/icons";import{useEasel as y_}from"efficient-easel/easel";import{TextPartPanel as S_}from"efficient-easel/copy";import{Tooltip as C_}from"efficient-shell/ui";import{jsx as qc,jsxs as qB}from"react/jsx-runtime";import{COPY_CELLS as ya,CopyBox as jB}from"efficient-easel/copy";import{PaddingYIcon as KB,WidthIcon as VB}from"efficient-easel/icons";import{useSyncExternalStore as MB}from"react";import{decodePartId as HB}from"efficient-easel/draw";function Ir(e,o){let t=pf(e);return t?.control==="textList"?o.rowKey===(t.itemKey??"text")?qx(t,o.index):null:mf(e)?.[o.rowKey]??null}function Bl(e,o,t){let r=e.node.props,{key:a,row:n}=so(e.propKey),s=n?bI(r,a,n,e.kind,o):hI(r,a,e.kind,o);return s?(t(e.zone,e.index,{...e.node,props:s}),!0):!1}var zB=["bold","italic","underline","strike","link","sup","sub"],WB=["bullet","number"];function Uc(e,o){return e?[...zB,...o?WB:[]]:[]}function Cb(e,o){let t=HB(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?Ir(u,f):u,m=Jt(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?Zr(x[i],f):x[i];return{node:n,selector:s,propKey:a,kind:m,stored:h,offPage:Ln(p)}}function vb(e,o){let t=Cb(e,o);if(!t||t.offPage)return null;let{text:r,hidden:a}=Qo(t.stored);if(a)return null;let n=Yn(t.kind);return{partId:e,value:r,rules:zt,multiline:n,offered:Uc(t.kind!=="plainText",n),write:s=>{let i=Cb(e,o);i&&Bl({node:i.node,propKey:i.propKey,kind:i.kind,zone:i.selector.zone,index:i.selector.index},s,o.replace)}}}function wb(e,o,t){return e?.isConnected&&e.getAttribute(io)===t?e:o?.querySelector(`[${io}="${GB(t)}"]`)??null}function GB(e){return e.replace(/["\\]/g,"\\$&")}function kb(e){let o=e.activeElement;return o?o.tagName==="IFRAME"||!!o.closest(".es-canvas"):!1}var Wc=null,Gc=new Set;function UB(){return Wc}function $c(e){if(e!==Wc){Wc=e;for(let o of Gc)o()}}function $B(e){return Gc.add(e),()=>{Gc.delete(e)}}function Tb(){return MB($B,UB,()=>null)}var YB=["left","center","right","justify"];function jc(e,o,t,r={}){let a=ta(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:qc(KB,{}),unit:"px",step:wf,shiftStep:10,min:Cf,max:vf,value:e.padding,styleValue:o.paddingPx,onChange:s=>t({padding:s??null})},{key:"width",name:l("Width"),icon:qc(VB,{}),unit:"px",step:Tf,shiftStep:100,min:kf,max:Jo,value:e.width,styleValue:o.widthPx,onChange:s=>t({width:s??null})}]}function Fb({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=jc(n,s,i),b=Uc(r,t);return qB("div",{className:"sf-part-textbox",children:[m,qc(jB,{value:e,onChange:o,multiline:t,placeholder:u,ariaLabel:p,rules:zt,tools:b,barShows:x?"focus":"always",colors:r?f:[],align:a?{value:n.align??s.align,allow:YB,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 qb}from"efficient-easel/draw/client";import{jsx as _l,Fragment as XB,jsxs as ZB}from"react/jsx-runtime";import{Button as Eb,Dialog as QB}from"efficient-shell/ui";function Pb({styleName:e,onCancel:o,onConfirm:t}){return _l(QB,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Update {style}?",{style:e}),footer:ZB(XB,{children:[_l(Eb,{variant:"secondary",onClick:o,children:l("Cancel")}),_l(Eb,{variant:"primary",onClick:t,children:l("Update style")})]}),children:_l("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 v_}from"efficient-easel/draw/client";import{jsx as JB}from"react/jsx-runtime";import{createContext as e_,useContext as o_,useMemo as t_,useState as r_}from"react";var a_={partStyle:null,setPartStyle:()=>{}},Lb=e_(a_);function UY({children:e}){let[o,t]=r_(null),r=t_(()=>({partStyle:o,setPartStyle:t}),[o]);return JB(Lb.Provider,{value:r,children:e})}function Ob(){return o_(Lb)}import{TEXT_FIELD_MARKER as w_}from"efficient-easel/draw";var n_="#9ca3af";function l_(e){return an.map(o=>({key:o,name:yp[o],value:e?.[o]||n_}))}function Dl(e){return l_(e).map(o=>({name:o.key,label:l(o.name),value:o.value}))}function Ab(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=Rb(f);!u&&n&&(n.fillStyle="#000000",n.fillStyle=f,u=Rb(String(n.fillStyle))),u&&(o[s]=u)}return o}function Rb(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 s_(e){let o=new Set([...Object.keys(sn[e]??{}),...fn[e]??[]]);for(let[t,r]of Object.entries(oi[e]??{}))r.verb==="snapshot"&&o.add(t);return[...o].sort()}var i_={CollectionCard:"product",FooterMenu:"menu",Gallery:"product",GalleryItem:"product",ProductGrid:"product",ProductHero:"product",SpecTable:"product",Events:"blog",FeaturedCover:"blog",LongRead:"blog",SubscribeBlogs:"blog"},Bb={product:"Synced from the product.",blog:"Synced from the blog post.",menu:"Synced from the site menu."},_b="Open",Db={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 i_[e]??null}function Nb(e,o){let t=Ca(e);return t&&s_(e).includes(o)?t:null}function Nl(e){let o=e?.menu?.id;return typeof o=="string"&&o.length>0?o:void 0}var Ml="data-sf-spec-region";function ZY(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 hr(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 f_(e){return`@${e}`}function Kc(e,o){if(!o.startsWith("@"))return null;let t=o.slice(1);return t in e?t:null}function Mb(e,o){return o&&o in e?o:null}function c_(e,o){let t=o?.closest(`[${Ml}]`)?.getAttribute(Ml);return Mb(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)]"},d_={tag:{label:"Tag",follows:"Labels",builtIn:hr(va.tag),writable:!0},name:{label:"Name",follows:"Heading 2",builtIn:hr(va.name),writable:!0},body:{label:"Body",follows:"Body",builtIn:hr(va.body),writable:!0},price:{label:"Price",follows:"Labels",builtIn:hr(va.price),writable:!0},link:{label:"Link",follows:"Labels",builtIn:hr(va.link),writable:!0}},Hb=d_;var u_={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}},zb=u_;var aX=Ml;var Wb={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 Gb={SpecTable:Wb,FAQ:zb,Collections:Hb};function Ub(e){return e&&Object.hasOwn(Gb,e)?Gb[e]:null}function Xc(e){return e?l(e):null}function jb(e){return e.kind==="role"?za[e.role]:e.kind==="custom"?"Custom":null}function k_(e){let o=e.role;return o&&Eo.includes(o)?{kind:"role",role:o}:null}function T_(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 Yc(e,o,t,r){return k_(rl(e,o))??T_(t,r)}function F_(e,o){if(!e.length)return null;let t=o(e[0]);return e.every(r=>o(r)===t)?t:null}var Hl="";function E_({face:e,base:o,onPick:t}){let r=e.kind==="role"?e.role:Hl,a=[{label:l("No style"),value:Hl},...Eo.map(n=>({label:l(za[n]),value:n}))];return z(x_,{ariaLabel:l("Style"),value:r,options:a,inline:!0,onChange:n=>t(n===Hl?null:n),renderOption:n=>n.value===Hl?wo(Zc,{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(${At(o.fontKey)?.cssVar})`:void 0,fontWeight:o?.weight},children:Xc(jb(e))}),valueText:n=>Xc(jb(e))??n?.label??""})}function P_({sectionName:e,onBack:o,textEditor:t,styleRow:r,children:a}){return wo("div",{className:"sf-part-panel",children:[z(zl,{inline:!0,name:l(e),onSelect:o}),t,r,a]})}function Wl({source:e,slug:o,menuId:t}){let r=Gt(),a=Db[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(Bb[e]),n?wo(Zc,{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(_b)})]}):null]})})}var Kb=4,L_=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(Zc,{children:z(h_,{label:l("Style"),icon:z(g_,{}),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(E_,{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(Wl,{source:n,slug:s}):null,z(zl,{inline:!0,name:l("Page"),onSelect:i})]})}function R_({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(zl,{inline:!0,name:l("Page"),onSelect:e})]})}function A_({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(zl,{inline:!0,name:l("Page"),onSelect:e})]})}function Vb({nodeId:e,propKey:o,onBack:t,onEditStyle:r}){let{getItemById:a,getSelectorForId:n,config:s}=y_(D=>D),i=qo(),f=Tb(),{partStyle:u}=Ob(),{fonts:p,textStyles:m}=X(),x=p_(Mt),h=!x?.capabilities?.hasSiteTheme,{persist:b}=Ut({themeFromDocument:h,tokenRef:x?.tokenRef,siteId:x?.siteId??null}),C=nl({themeFromDocument:h,persist:b}),[k,v]=$b(!1),w=v_()==="mobile",g=m_(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?Ir(O,B):O,re=Jn(e,o),H=y?.props??{},W=Jt(M),A=Ln(M),oe=TI(M),Re=y?Ca(y.type):null,Xe=y?Nb(y.type,L):null,ro=B?Zr(H[L],B):H[L],We=!!B&&!(Array.isArray(H[L])&&B.index<H[L].length);Vc(()=>{kb(document)||g.current?.querySelector(".es-copy [contenteditable='true'], .es-copy textarea, .sf-copybox textarea, .sf-copybox input")?.focus()},[re]);let[Ae,Ge]=$b(0);Vc(()=>Ge(0),[re]);let Ne=!!y&&!We&&(!E||!M);Vc(()=>{if(!Ne||Ae>=Kb)return;let D=setTimeout(()=>Ge(ke=>ke+1),L_);return()=>clearTimeout(D)},[Ne,Ae]);let Ce=Ne&&Ae<Kb;if(!y||We)return z(R_,{onBack:t});let he=Ub(y.type),xe=he?Kc(he,o):null;if(he&&xe){let D=u?.partId===re?u:null,ke=he[xe],mo=ke.writable===!0&&!!E,Lr=xs=>{E&&i.replaceComponent(E.zone,E.index,{...y,props:oa(H,o,"role",xs)})};return z(O_,{region:ke,sizePx:D?.base.sizePx??null,face:Yc(H,o,D,p),base:D?.base??null,onFollowStyle:mo?Lr:void 0,source:Re,slug:Sa(H),onBack:t})}if(!E||!M)return Ce?z("div",{className:"sf-note","aria-busy":"true"}):z(A_,{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?xf(H,L,B,D):{...H,[L]:D};ke&&Ze(ke);return}Bl({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,ue=te&&ae?n(te.owner):null,Me=!!(te&&ae&&ue),be=Me?ae.props??{}:H,po=Me?D=>i.replaceComponent(ue.zone,ue.index,{...ae,props:D}):Ze,Fo=Me?te.kind:Tl(y?.type,o),Wo=rl(be,Fo),Pe=[{partKey:Fo,face:Yc(be,Fo,Y,p),sizeGroup:Y?.sizeGroup??null,base:Y?.base??__,style:Wo}],Go=F_(Pe,D=>D.sizeGroup),rt=Dl(Y?.inks),at=(D,ke)=>{let mo=be;for(let Lr of Pe)mo=oa(mo,Lr.partKey,D,ke);po(mo)},ps=D=>at("role",D),Ma=D=>{let ke=be;for(let mo of Pe)for(let[Lr,xs]of Object.entries(D))ke=oa(ke,mo.partKey,Lr,xs??null);po(ke)},Pr=W==="text"||W==="textarea",{text:N,hidden:U}=Qo(ro),q=M?.[w_]?.label??o,se=U?l("Show {label} on the slide",{label:l(q)}):l("Hide {label} on the slide",{label:l(q)}),eo=wo("div",{className:"sf-field-head",children:[z(b_,{}),z("span",{className:"sf-field-label sf-field-label--inline",children:l(q)}),Pr&&z(C_,{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(qb,{name:"eye-off",size:14}):z(qb,{name:"eye",size:14})})})]}),Uo=!A&&oe,Ha=!!W&&(Lx(M)||A||U||!oe),Rt=Yc(be,Fo,Y,p),ms=Rt.kind==="role"?Rt.role:null,AC=Object.entries(Wo).filter(([D,ke])=>D!=="role"&&ke!==void 0).length,BC=()=>{let D=be;for(let ke of Pe){let mo=ke.style.role;D=zI(D,ke.partKey),mo&&(D=oa(D,ke.partKey,"role",mo))}po(D)},nt=Bf(ms),_C=ZI(Pe[0].style),DC=nt?et(C.saved,C.old).find(D=>D.id===nt)?.name??nt:"",NC=()=>{v(!1),nt&&(C.write(QI({saved:C.saved,old:C.old,styleId:nt,values:_f(Pe[0].style)}),!0),BC())};return wo(P_,{sectionName:F?.label??y.type,onBack:t,textEditor:z("div",{ref:g,className:"sf-part-text",children:Ha?z(Fb,{text:N,onTextChange:D=>P(Pr?{text:D,hidden:U}:D),multiline:Yn(W),markup:W!=="plainText",styled:!1,style:Pe[0].style,base:Pe[0].base,setValue:Ma,colors:rt,placeholder:Xc(II(M))??void 0,ariaLabel:l(q),head:eo,typedOnCanvas:f===re}):W?Pr?eo:null:z(I_,{field:M,name:o,value:le,onChange:P,id:`sf-part-${e}-${o}`})}),children:[Xe&&z(Wl,{source:Xe,slug:Sa(H),menuId:Nl(H)}),Uo&&z(S_,{style:{value:ms??"",options:[{value:"",label:l("No style"),description:l("Section\u2019s own")},...Eo.map(D=>({value:D,label:l(za[D]),description:At(p[D])?.label}))],onChange:D=>ps(D||null),changed:AC>0,onEditStyles:r,onUpdateStyle:nt&&_C?()=>v(!0):void 0},font:{value:Wo.font??"",styleValue:At(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:B_(m,ms),onChange:D=>at("italic",D??null)},cells:jc(Pe[0].style,Pe[0].base,Ma,{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:DC,onCancel:()=>v(!1),onConfirm:NC}),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 B_(e,o){let t=Bf(o);return!t||!Array.isArray(e)?!1:e.find(r=>r?.id===t)?.values?.italic===!0}var __={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:Jo};import{jsx as co,jsxs as Qc,Fragment as D_}from"react/jsx-runtime";import{useCallback as N_,useRef as M_,useState as wa}from"react";import{InspectorIconButton as H_}from"efficient-easel/chrome";import{PopupMenu as z_,PopupMenuItem as W_,PopupMenuLabel as Gl}from"efficient-shell/ui";import{CopyToPageIcon as G_}from"efficient-easel/icons";import{cloneNodeWithFreshIds as Yb,docToNode as YX,nodeToDoc as XX}from"efficient-easel/screen/lib/puck/section-doc";import{FOOTER_TYPE as U_}from"efficient-easel/draw";function Xb({node:e,currentSlug:o,siteId:t,tokenRef:r,runAuthed:a,onNotify:n}){let[s,i]=wa(!1),[f,u]=wa(null),p=Be(),[m,x]=wa(!1),[h,b]=wa(null),C=M_(null),[k,v]=wa(null),w=N_(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=Yb(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===U_);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 Qc(D_,{children:[co("span",{"data-menu-toggle":!0,style:{display:"contents"},children:co(H_,{buttonRef:C,label:l("Duplicate to another page"),hasPopup:"menu",expanded:s,onClick:g,children:co(G_,{size:15})})}),s&&k&&co(z_,{portal:!0,style:{top:k.top,right:k.right},onClose:()=>i(!1),children:Qc("div",{role:"menu","aria-label":l("Duplicate to page"),children:[co(Gl,{children:l("Duplicate to page")}),m?co(Gl,{children:l("Couldn\u2019t load pages")}):f===null?co(Gl,{children:l("Loading\u2026")}):y.length===0?co(Gl,{children:l("No other pages")}):y.map(F=>Qc(W_,{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 cZ,sameInspectorMode as dZ,SELECTION_MODE as Zb,useScreenParts as uZ,useScreenBlockLook as pZ,useScreenBlockRules as mZ,useScreenBridges as xZ,useScreenCanvasFrame as IZ,useScreenDevices as hZ,useScreenDocumentPass as gZ,useScreenInspectorPanel as bZ,useScreenLeftView as yZ,useScreenOwnerName as SZ,useScreenPinned as CZ,useStandaloneScreenBridges as vZ}from"efficient-easel/screen/lib/screen-parts";import{usePreviewParts as MD}from"efficient-easel/draw/client";import{jsx as ka,jsxs as $_}from"react/jsx-runtime";import{SettingsDrill as q_}from"efficient-easel/panel";import{UiIcon as j_}from"efficient-easel/draw/client";var K_="Not shown on the page";function V_({part:e,onOpen:o}){return ka(q_,{name:l(e.label),preview:e.offPage?l(K_):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(j_,{name:"eye-off",size:14})}):void 0,onOpen:()=>o(e.key)})}function Jc(e){return e.filter(o=>!o.identifier)}function Qb({parts:e,onOpen:o,heading:t=!0}){let r=Jc(e);return r.length?$_("div",{className:"sf-entries",children:[t?ka("h3",{className:"sf-entries-head",children:l("Text")}):null,r.map(a=>ka(V_,{part:a,onOpen:o},a.key))]}):null}import{HEADER_TYPE as HD,ROOT_ZONE as Ry}from"efficient-easel/draw";import{HEADER_TYPE as Ve,FOOTER_TYPE as pe,newNodeId as Y_}from"efficient-easel/draw";function Ul(){return{type:Ve,props:{id:Y_(Ve)}}}var Jb=[{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"}],X_=Jb.filter(e=>e.type!=="FooterLogo"&&e.type!=="FooterGroup"),Z_="FooterGroup",ey="blocks";function oy(e){return e===pe?Jb:e===Z_?X_:null}function $l(){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 De="SiteHeader",de="SiteFooter",ed="sections",RZ=[De,de],gr=e=>e===De||e===de,ty=e=>`${e}:${ed}`;function ry(e,o,t=[]){return{type:e,props:{id:o,[ed]:t}}}var Q_=new Set(["Footer",De,de]);function br(e){let o=new Set,t=!1,r=e.filter(a=>{let n=a?.type??"";return n==="Header"?(t=!0,!1):Q_.has(n)?o.has(n)?(t=!0,!1):(o.add(n),!0):!0});return t?r:e}function ay(e,o){return e.some(t=>t?.type===o.type)?e:o.type===De?[o,...e]:[...e,o]}var ny={[De]:{max:3,takes:["Flex","Ticker"]},[de]:{max:6,takes:["Flex","Prose","Logos","Divider"]}};function ly(e,o,t){if(!gr(e))return!0;let r=ny[e];return t<r.max&&r.takes.includes(o)}function sy(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(!gr(n?.type))continue;let s=n.props?.[ed];if(!Array.isArray(s)||!s.some(f=>f?.props?.id===r))continue;let i=ny[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 iy(e){switch(e?.type){case De: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 pe:return l("Footer \xB7 on every page \xB7 old style");default:return null}}var fy=()=>l("Every page"),cy=()=>l("Changed on every page");function ql(e,o){let t=Ju(e,o);if(t)return t;let r=sy(e,o);if(!r)return null;let a=r.group===De;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 Vl,Fragment as sD,jsxs as iD}from"react/jsx-runtime";import{useState as fD}from"react";import{createNode as cD,newId as dD}from"efficient-easel/data";import{useEasel as uD}from"efficient-easel/easel";import{Banner as pD,Button as od}from"efficient-shell/ui";var jl="Flex",J_={FooterMenu:"MenuBlock",FooterEmailSignup:"EmailFormBlock",FooterSocial:"SocialLogosBlock"},eD=e=>{let{id:o,...t}=e;return t},dy=e=>typeof e=="string"?e:"",Kl=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,uy={sm:12,md:13,lg:15},oD="md",py=1.5,tD={size:13,lineHeight:py,width:280},rD=14,aD=40,nD=e=>e==="center"||e==="right"?e:"left";function lD(e){let o={},t=[["padTop","sectionPaddingTop"],["padRight","sectionPaddingRight"],["padBottom","sectionPaddingBottom"],["padLeft","sectionPaddingLeft"]];for(let[r,a]of t){let n=Kl(e[r]);n&&(o[a]=n)}return o}function my(e,o){let t=e.props??{},r=J_[e.type];if(r)return[o(r,eD(t))];switch(e.type){case"FooterLogo":{let a=nD(t.align),n=o("LogoBlock",{...t.reverse?{reverse:t.reverse}:{},...typeof t.customColor=="string"&&t.customColor?{customColor:t.customColor}:{},heightPx:Math.round(hu*((Kl(t.widthPct)??100)/100)),href:"/",align:a,...lD(t)}),s=dy(t.tagline).trim();return s?[n,o("Text",{text:s,tone:"dim",align:a,_partStyles:{text:{...tD}}})]:[n]}case"FooterText":{let a=typeof t.size=="string"&&t.size in uy?t.size:oD;return[o("Text",{text:dy(t.text),tone:typeof t.tone=="string"?t.tone:"default",_partStyles:{text:{size:uy[a],lineHeight:py}}})]}case"FooterDivider":{let a=Kl(t.thickness),n=Kl(t.lengthPct);return[o("Divider",{...a!==void 0?{thickness:a}:{},...n!==void 0?{lengthPct:n}:{},...t.hideOnMobile===!0?{hideOnMobile:!0}:{}})]}case"FooterGroup":{let a=Array.isArray(t.blocks)?t.blocks:[];return[o(jl,{direction:t.direction==="horizontal"?"row":"column",gap:qr("FooterGroup",t.gap),align:t.align==="center"||t.align==="end"?t.align:"start",content:a.flatMap(n=>my(n,o))})]}default:return[]}}function Ta(e,o,t){let r=e&&Array.isArray(e.props?.blocks)?e.props.blocks:[],a=u=>o(jl,{direction:"row",wrap:!0,share:"equal",gap:aD,content:u}),n=[],s=[];for(let u of r){let p=my(u,o);if(u.type==="FooterDivider"){s.length&&n.push(a(s)),s=[],n.push(...p);continue}p.length<=1?s.push(...p):s.push(o(jl,{direction:"column",gap:rD,align:"stretch",content:p}))}(s.length||!n.length)&&n.push(a(s));let i=o(jl,{direction:"column",content:[o("LegalLineBlock")]}),f=ry(de,t,[...n,i]);return{...f,props:{...f.props,...e?.props?.width==="full"?{fullWidth:!0}:{}}}}function xy(){let{appState:e,dispatch:o,config:t}=uD(p=>p),{readOnly:r}=ye(),[a,n]=fD(!1),s=e.data.content;if(r||s.some(p=>p.type===de))return null;let i=s.find(p=>p.type===pe)??null,f=(p,m)=>cD(t,p,m),u=()=>{let p=Ta(i,f,dD(de));o({type:"setData",data:m=>({...m,content:[...ay(m.content,p)]}),recordHistory:!0}),n(!1)};return Vl(pD,{tone:"info",title:l("This footer uses the old layout"),action:a?iD(sD,{children:[Vl(od,{variant:"primary",size:"sm",onClick:u,children:l("Switch now")}),Vl(od,{variant:"secondary",size:"sm",onClick:()=>n(!1),children:l("Cancel")})]}):Vl(od,{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 fd}from"react/jsx-runtime";import{useLayoutEffect as wD,useMemo as Fy,useRef as kD,useState as sd}from"react";import{useEasel as TD,useSelectedFields as FD}from"efficient-easel/easel";import{Inspector as ED,planFields as Ey}from"efficient-easel/fields";import{DESIGN_GROUPS as rd,SETTINGS_BUCKETS as mD}from"efficient-easel/panel";import{BUCKET_KEY as Ye,DESIGN_GROUP_KEY as yr}from"efficient-easel/screen/lib/puck/field-buckets";var Fa=mD;var xD="Editor only \u2014 not shown live",ad={"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",[xD]:"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"},hy={"AlloyWheelsListing._gCards":"Design","ProductGrid._gCards":"Design"},gy={"Text._gSpacing":"Size","Heading._gSpacing":"Size"};function td(e,o,t){let r=`${e}.${o}`;return gy[r]??hy[r]??ad[t]}function by(e){return e==="Animation"?[Ye.Animation]:[Ye.Design,yr[e]]}function Yl(...e){let o=[];for(let t of e)for(let r of Object.values(t)){let a=Js(r),n=Do(a?a.inner:r),s=n?ad[n.label]:void 0;if(s)for(let i of by(s))o.includes(i)||o.push(i)}return o}var lQ=[...Yl(Dn(),Nn("full"),Mn(),Hn(),Ki()),...Object.keys(Dn()),...Object.keys(Nn("full")),...Object.keys(Mn()),...Object.keys(Hn()),...Object.keys(Ki())],sQ=[...Yl(Rn()),...Object.keys(Rn())],iQ=[...Yl(Bn()),...Object.keys(Bn())],fQ=[...Yl(_n()),...Object.keys(_n())],ID=Object.keys(jx()),hD=new Set(["cardImage","imageBackground"]),cQ=[...by(td("ProductGrid","_gCards","Cards")??"Design"),...ID.filter(e=>e.startsWith("_g")||hD.has(e))],dQ=Object.keys(Kx()),uQ=Object.keys(Vx({bottomDefault:!0})),gD={"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)"},yy={Content:["Content"],Size:["Size"],Design:["Design","Style"],Layout:["Layout"],Position:["Position"],Anchor:["Anchor"],Animation:["Animation"]},Sy={_gAnchor:"repeated the Anchor group heading above it (two tabs, 11.0.0)"};{let e={...Dn(),...Nn("full"),...Mn(),...Hn(),...Rn(),...Bn(),..._n()};for(let o of Object.keys(Sy)){let t=Do(e[o]),r=t?ad[t.label]:void 0;if(!t||t.level!==2||!r||!yy[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 bD=new Set(["_sContent","_sStyle","_sLayout","_sMedia"]),yD=new Map([[Ye.Design,"Content"],[Ye.Animation,"Animation"],...rd.map(e=>[yr[e],e])]);function Cy(e){let o=new Set([...Object.values(Ye),yr.Content]);for(let[t,r]of Object.entries(e))if(!o.has(t)&&Do(r)?.level===1)return 1;return 2}function SD(e){let o=`${e}.`;return Object.keys(gD).filter(t=>t.startsWith(o)).map(t=>t.slice(o.length))}function CD(e,o){let t=Js(e),r=He(o);return t?ve(t.tier,r):r}function vD(e,o){let t=Do(o);return t?e==="Content"||e==="Animation"?Bx(o,t.label):_x(o):o}function Iy(e){return e==="Design"?rd:["Animation"]}function pQ(e,o){let t=[],r=new Set(SD(o)),a=new Set,n=!1,s=null;for(let[x,h]of Object.entries(e)){let b=Do(h);if(bD.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=yD.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 Sy){let v=td(o,x,b.label);if(b.level!==2||!v||!yy[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=td(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 ${[...rd,"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:CD(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",gy],["KEY_GROUP",hy]]){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=>Iy(x).some(h=>u.has(h))),m={};for(let x of p){m[Ye[x]]=On(x,x===p[0]?p:null);for(let h of Iy(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[yr[h]]=$i(h));for(let k of b)for(let[v,w]of k.entries)m[v]=vD(h,w)}}return m}function mQ(e){return Ye.Design in e?e:{[Ye.Design]:On("Design",null),[yr.Content]:$i("Content"),...e}}function xQ(e){return Fa.some(o=>Ye[o]in e)}function IQ(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]]=On(r,r===o[0]?o:null);return t}import{usePreviewDevice as PD}from"efficient-easel/draw/client";var nd=" text",vy="Text";function ld(e){let o=e.rows.filter(t=>t.shown);return o.length===0||o.length===1&&o[0].labelled}function wy(e){return e.filter(ld).map(o=>o.key)}function ky(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 Ty(e,o){if(e.size!==o.size)return!1;for(let t of e)if(!o.has(t))return!1;return!0}var id=new Map,Xl=new Set;function LD(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 OD=Object.fromEntries(Fa.map(e=>{let o=Ox[e];return[e,fd(o,{},e)]}));function Ea({entries:e,entryCount:o=0,part:t=null}){let{id:r,fields:a,values:n,readOnly:s,onChange:i}=FD(),f=PD(),{appState:u,config:p}=TD(W=>W),m=Dh(f,p,u.data.content??[],u.ui.itemSelector),x=Wh(a,t),h=_h(x,n,m),[b,C]=sd(()=>new Set(Xl)),[k,v]=sd(()=>new Set),w=kD(null),g=Fy(()=>{let W=new Map;for(let A of Ey(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]);wD(()=>{let W=w.current?.parentElement;if(!W)return;let A=new Set(wy(LD(W,g)));v(oe=>Ty(oe,A)?oe:A)});let y=Fy(()=>ky(h,k),[h,k]),E={key:nd,rows:Array.from({length:o},()=>({shown:!0,labelled:!0}))},F=ld(E)?void 0:{key:nd,title:vy},[L,B]=sd(()=>id.get(r)),O=id.get(r),M=Ey(h).buckets,re=O&&M.includes(O)?O:L&&M.includes(L)?L:M[0],H=re===void 0||Rx(M,re)!==!0;return fd(ED,{fields:y,values:n,onChange:i,readOnly:s,showWhenContext:{...m,node:n},tab:re,onTab:W=>{id.set(r,W),B(W)},tabIcons:OD,idPrefix:r,ariaLabel:l("Section settings"),lead:H?e:null,leadFold:F,closedFolds:b,onFold:(W,A)=>{A?Xl.delete(W):Xl.add(W),C(new Set(Xl))},children:fd("span",{ref:w,hidden:!0})})}import{jsx as cd,jsxs as RD}from"react/jsx-runtime";import{InspectorUpLevel as Py}from"efficient-easel/chrome";function Ly({nodeId:e,part:o,sectionName:t,onUpToSection:r}){let{select:a}=hl();return RD("div",{children:[o!=="media"?cd(Py,{inline:!0,name:l(ir.media),onSelect:()=>a(ca(e,"media"))}):cd(Py,{inline:!0,name:l(t),onSelect:r}),cd(Ea,{part:o})]})}import{SettingsSwitch as zD}from"efficient-easel/panel";var By=Zb,pd={kind:"header"},md={kind:"website"},_y={kind:"chat"},Dy={kind:"social"},Pa="Part";function WD(e){return l("Part of {name}",{name:l(e)})}function GD(e,o,t){let r=e.describeNode(o);return{name:t,kindLabel:r?WD(r.label):l(Pa)}}function UD(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 Ny({what:e}){let o=UD(e);return Et("div",{className:"sf-note",children:[ee("p",{children:ee("strong",{children:o.title})}),Et("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 ud(e){let o=fa[e];return{name:ir[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=Ay({name:l(Cl(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(Ly,{nodeId:t.nodeId,part:e,sectionName:r.describeNode(t.nodeId)?.label??"Hero",onUpToSection:()=>r.onSelectNode(t.nodeId)}):null}}var $D={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(ll,{themeFromDocument:!o.capabilities.hasSiteTheme,tokenRef:o.tokenRef,siteId:o.siteId,onNotify:o.onNotify})},chat:{name:"Live chat",kindLabel:"Site settings",icon:"chat",render:()=>ee(Xh,{})},social:{name:"Social links",kindLabel:"Site settings",icon:"social",render:()=>ee(tg,{unavailable:ee(Ny,{what:"Social link"})})},ticker:{name:sa,kindLabel:Pa,icon:"ticker",head:(e,o)=>e.kind==="ticker"?GD(o,e.heroId,l(sa)):null,render:e=>ee(Sb,{heroId:e.kind==="ticker"?e.heroId:""})},heroMedia:ud("media"),heroImage:ud("image"),heroImage2:ud("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?Ir(t.fields[r],a):t.fields[r],s=yI(l(If(ol(n??{},r))),a),i=Ay({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(Vb,{nodeId:e.nodeId,propKey:e.propKey,onBack:()=>o.onSelectNode(e.nodeId),onEditStyle:o.onOpenSiteStyles}):null}},qD=new Set(["header","website","chat"]);function jD(e,o){if(e==="puck")return null;let t=$D[e];return qD.has(e)&&!o.hasSiteSettings?{...t,kindLabel:"Not part of a template",render:()=>ee(Ny,{what:t.name})}:t}function My({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}=ye(),{websiteName:b}=X(),C=qo({readOnly:h}),{select:k}=MD(),{selectedItem:v,getItemById:w,getSelectorForId:g,config:y,appState:E}=BD(te=>te),F=$h(y,v?{type:v.type,props:v.props}:null),L=v?EI(F??y.components[v.type]?.fields,v.props):[],B=te=>y.components[te]?.label??te,O=v?g(v.props.id):void 0,M=jD(e.kind,i),re=Be(),H={capabilities:i,tokenRef:f,hostPanels:re.chrome?.panels,describeNode:te=>{let ae=w(te);if(!ae)return null;let ue=y.components[ae.type];return{type:ae.type,label:ue?.label??ae.type,fields:ue?.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!==Ry?l("Block"):l("Section"):l("Page")),Re=M?M.icon:v?v.type:"page",Xe=M?null:v?y.components[v.type]?.fields??null:y.root?.fields??null,ro=Xe?Cy(Xe):2,We=e.kind==="puck"&&v?Ca(v.type):null,Ae=!!v&&!!O&&O.zone===Ry&&v.type!==pe&&v.type!==HD,Ge=ql(E?.data,v),Ne=()=>{Ge||O&&C.duplicateComponent(O.zone,O.index)},Ce=()=>{O&&(C.removeComponent(O.zone,O.index),C.select(null))},he=v?y.components[v.type]?.defaultProps?.previewHover:void 0,xe=e.kind==="puck"&&!!v&&!!O&&he!==void 0,Ze=xe&&v.props.previewHover===!0,P=()=>{!v||!O||C.replaceComponent(O.zone,O.index,{...v,props:{...v.props,previewHover:!Ze}})},[le,Y]=AD(Wf);return Et("div",{className:`es-sidepanel es-sidepanel--right sf-panel sf-panel--right${le||!(!M&&v)?"":" sf-hints-folded"}`,children:[ee(_D,{icon:ee(Tt,{type:Re,size:15}),name:A,kind:oe,actions:!a&&e.kind==="puck"&&v&&v.type!==pe?Et(dd,{children:[ee(Oy,{label:l("Duplicate section"),title:Ge??void 0,disabled:Ge!==null,onClick:Ne,children:ee(DD,{size:15})}),Ae&&i.hasSiteSettings&&ee(Xb,{node:v,currentSlug:p,siteId:m??void 0,tokenRef:f,runAuthed:x,onNotify:n}),ee(Oy,{label:l("Remove section"),danger:!0,onClick:Ce,children:ee(ND,{size:15})}),s?ee(Os,{side:"right",onHide:s,divider:!0}):null]}):s?ee(Os,{side:"right",onHide:s}):void 0}),xe&&Et("div",{className:"sf-preview-pin",children:[Et("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(zD,{checked:Ze,onChange:P,ariaLabel:l("Preview hover state")})]}),ee(sx,{tier:ro,children:ee("div",{className:"sf-insp-body es-insp-body sf-scroll",children:M?M.render(e,H):v?Et(dd,{children:[v.type===pe&&i.hasSiteSettings&&ee(xy,{}),ee(Rp,{children:ee(Ea,{entries:ee(Qb,{parts:L,heading:!1,onOpen:te=>k(Jn(v.props.id,te))}),entryCount:Jc(L).length})}),We&&ee(Wl,{source:We,slug:Sa(v?.props),menuId:Nl(v?.props)}),ee(Gf,{shown:le,onChange:Y})]}):ee(dd,{children:ee(Ea,{})})})})]})}import{jsx as c,jsxs as S,Fragment as Uy}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)"},xd="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 KD={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)"},me=(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 Hy({over:e,overTone:o,head:t,headSize:r=11.5,cta:a,ctaBg:n,ctaFg:s,tone:i}){return S(Uy,{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",...me(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 zy({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 hd({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 Oe({children:e,w:o}){return c("span",{style:{fontSize:"3.98cqw",lineHeight:1.45,color:d.muted,width:o,display:"block"},children:e})}function Zl({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 Wy({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 VD={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",...me(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",...me(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,...me(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(Zl,{label:"Name"}),c(Zl,{label:"Email"})]}),c(Zl,{label:"Message",filled:!0}),c(Wy,{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(hd,{filled:4,size:14}),c(Zl,{label:"Your review",filled:!0}),c(Wy,{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",...me(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(Oe,{children:"Every failure starts in the same place \u2014 not the rim, not"}),c(Oe,{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",...me(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(Oe,{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(Oe,{children:"Unfitted wheels come back within 30 days, no questions."}),c(Oe,{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(Oe,{children:"Forged, correctly offset, rated for what you actually"}),c(Oe,{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(Oe,{children:"Twelve years of fitting the same three questions, and the"}),c(Oe,{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",...me(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,...me(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",...me(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(Oe,{children:o})]})]},e))})}),timelinetrack:S("div",{style:{..._,padding:"0 12px",display:"flex",flexDirection:"column",gap:10,justifyContent:"center",...me(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",...me(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",...me(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,...me(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(Oe,{children:"One shed, one lathe, one idea."}),c(Oe,{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,...me(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,...me(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",...me(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",...me(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(hd,{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(zy,{}),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,...me(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(zy,{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(hd,{filled:o})]}),c(Oe,{children:t})]})]},e))})]}),logos:S("div",{style:{..._,display:"flex",flexDirection:"column",gap:9,justifyContent:"center",padding:"0 12px",...me(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(Oe,{children:"he number on the back of your wheel decides whether the"}),c(Oe,{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(Oe,{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(Oe,{w:"90%",children:"Use the fitment finder \u2014 it reads your build, not just the model."})]},e))})}),hero:S("div",{style:{..._,overflow:"hidden",...me(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(Hy,{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(Hy,{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",...me(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,...me(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",...me(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,...me(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))})},Gy={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:xd}}),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(Uy,{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:xd},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:xd}}),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 $y({type:e}){let o=KD[e]??"",t=VD[o]??Gy[o]??Gy.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 Sr,jsxs as YD}from"react/jsx-runtime";import{StylesIcon as XD}from"efficient-easel/rail";import{Tooltip as ZD}from"efficient-shell/ui";function qy({tokenRef:e,siteId:o,onClose:t,onNotify:r,tab:a,onTabChange:n}){let s=nr();return YD("div",{className:"sf-styles",children:[Sr(Ka,{icon:Sr(XD,{}),title:l("Site styles"),context:Sr(ZD,{content:l("{name} \u2014 renamed in the Console: {place}.",{name:s,place:l("Storefront \u25B8 Sites \u25B8 Settings")}),className:"sf-name-tip",children:Sr("span",{className:"sf-name-text",children:s})}),onHide:t}),Sr("div",{className:"sf-insp-body es-insp-body sf-scroll",children:Sr(ll,{tokenRef:e,siteId:o,onNotify:r,tab:a,onTabChange:n})})]})}import{jsx as Ee,jsxs as Lt,Fragment as rN}from"react/jsx-runtime";import{Fragment as lS,useEffect as sS,useRef as vd}from"react";import{useTreeDrag as iS}from"efficient-easel/drag";import{GlobeIcon as aN,ImageIcon as nN,LocationIcon as lN,MapIcon as sN,TextLinesIcon as iN,TrashIcon as fS}from"efficient-easel/icons";import{Subtree as cS,TreeRow as Aa,TreeRowAction as dS,TreeSeam as uS}from"efficient-easel/tree";import{useEaselStrings as fN}from"efficient-easel/strings";import{createPreviewSelectionContext as QD}from"efficient-easel/draw/client";var{Provider:AJ,useSelection:jy}=QD("selectedLocationPartId");function Ky(e,o,t){return`${e}::${o}::${t}`}function Vy(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 JD}from"react";var eN={level:"groups"},Xy=eN,gd=new Set;function uo(e){Xy=e;for(let o of gd)o()}function oN(e){return gd.add(e),()=>{gd.delete(e)}}var Yy=()=>Xy;function Zy(){return JD(oN,Yy,Yy)}function Qy(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 NJ(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??""),bd=new WeakMap,tN=0;function Ql(e){let o=bd.get(e);return o||(o=`loc${++tN}`,bd.set(e,o)),o}var Jy=(e,o)=>o||e||"Ungrouped",eS={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 Pt(e){return Qy(e,Ra,o=>String(o?.groupName??"")).map(o=>({key:o.key,name:o.name,cards:o.items.map(t=>t.item)}))}var yd=e=>e.flatMap(o=>o.cards),oS=(e,o,t)=>Math.min(Math.max(e,o),t);function Jl(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 Sd(e,o,t){let r=Pt(e);if(o<0||o>=r.length)return e;let[a]=r.splice(o,1),n=oS(o<t?t-1:t,0,r.length);return r.splice(n,0,a),yd(r)}function Cd(e,o,t,r,a){let n=Pt(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&&bd.set(u,Ql(f));let p=oS(s===i&&t<a?a-1:a,0,i.cards.length);return i.cards.splice(p,0,u),yd(n)}function tS(e,o){let t=Pt(e),r=t.find(n=>n.key===o),a={...eS,group:o,groupName:r?.name??""};return r?(r.cards.push(a),yd(t)):[...e,a]}function rS(e){let o=new Set(Pt(e).map(a=>a.key)),t=o.size+1,r=`Group ${t}`;for(;o.has(r);)r=`Group ${++t}`;return{cards:[...e,{...eS,group:r,groupName:""}],key:r}}function aS(e,o){return e.filter(t=>Ra(t)!==o)}function nS(e,o,t){let r=Jl(e,o,t);return r<0?e:e.filter((a,n)=>n!==r)}function zJ(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 WJ(e,o,t){return o.flatMap(r=>{let a=e.filter(n=>Ra(n)===r);return a.length?a:t(r)})}var os="ContactLocations",es=e=>({parentId:`locations-${e}`,slot:"groups"}),wd=(e,o)=>({parentId:`locations-${e}`,slot:`cities:${o}`});function pS(e,o){let{readOnly:t,selected:r}=o,a=fN().tree,n=o.data?.content??[],s=e.kind===By.kind,i=vd(null);sS(()=>{let g=r?.type===os?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}=jy(),m=Zy(),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=iS({keyOf:g=>`group:${g.si}:${g.index}`,readOnly:!!t,canDrop:(g,y)=>y.parentId===es(g.si).parentId&&y.slot==="groups",onDrop:(g,y)=>{x(g.si,Sd(h(g.si),g.index,y.index)),m.level==="city"&&uo({level:"groups"})},onStep:(g,y)=>{x(g.si,Sd(h(g.si),g.index,y<0?g.index-1:g.index+2)),m.level==="city"&&uo({level:"groups"})}}),C=iS({keyOf:g=>`city:${g.si}:${g.group}:${g.index}`,readOnly:!!t,canDrop:(g,y)=>y.parentId===es(g.si).parentId&&y.slot.startsWith("cities:"),onDrop:(g,y)=>{let E=y.slot.slice(7);x(g.si,Cd(h(g.si),g.group,g.index,E,y.index)),uo({level:"group",key:E})},onStep:(g,y)=>{x(g.si,Cd(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=vd(n);k.current=n;let v=vd(()=>{});sS(()=>{p(g=>{let y=Vy(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(Ky(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=Pt(B),M=String(g.props.id),re=s&&r?.props.id===M,H=A=>Ee(uS,{...t?{}:b.seam({place:{...es(y),index:A}})},`seam:${M}:groups:${A}`),W=(A,oe)=>Ee(uS,{...t?{}:C.seam({place:{...wd(y,A),index:oe}})},`seam:${M}:cities:${A}:${oe}`);return Lt(rN,{children:[Ee(Aa,{icon:Ee(iN,{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 Re=`${M}::grp::${A.key}`,Xe=F(Re),ro=re&&m.level==="group"&&m.key===A.key,We=A.name||A.key?Jy(A.key,A.name):l("Ungrouped"),Ae={...wd(y,A.key),index:A.cards.length},Ge=C.row({item:{si:y,group:A.key,index:-1},place:Ae,into:Ae,canDrag:!1},{onClick:E(()=>w(y,{level:"group",key:A.key}))}),Ne=b.row({item:{si:y,index:oe},place:{...es(y),index:oe}},Ge.rowProps);return Lt(lS,{children:[oe===0&&H(0),Ee(Aa,{icon:Ee(aN,{size:13}),name:We,words:a,onSelect:()=>w(y,{level:"group",key:A.key}),selected:ro,draggable:Ne.draggable,dragging:Ne.dragging,drop:Ne.drop??Ge.drop,fold:{open:!Xe,label:l("group"),onToggle:()=>L(Re)},actions:Ee(dS,{kind:"delete",label:it("Delete {label} group ({n} city)","Delete {label} group ({n} cities)",A.cards.length,{label:We}),onClick:()=>{x(y,aS(B,A.key)),uo({level:"groups"})},children:Ee(fS,{size:15})}),rowProps:Ne.rowProps,children:Ee("span",{className:"es-group-count",children:A.cards.length})}),!Xe&&Lt(cS,{children:[A.cards.map((Ce,he)=>{let xe=Jl(B,A.key,he),Ze=re&&m.level==="city"&&m.index===xe,P=String(Ce?.name??"")||l("City"),le=`${M}::city::${Ql(Ce)}`,Y=F(le),{rowProps:te,...ae}=C.row({item:{si:y,group:A.key,index:he},place:{...wd(y,A.key),index:he}},{onClick:E(()=>w(y,{level:"city",index:xe}))});return Lt(lS,{children:[he===0&&W(A.key,0),Ee(Aa,{icon:Ee(lN,{size:13}),name:P,words:a,onSelect:()=>w(y,{level:"city",index:xe}),selected:Ze,...ae,fold:{open:!Y,label:P,onToggle:()=>L(le)},actions:Ee(dS,{kind:"delete",label:l("Delete {name}",{name:P}),onClick:()=>{x(y,nS(B,A.key,he)),uo({level:"group",key:A.key})},children:Ee(fS,{size:15})}),rowProps:te}),!Y&&Lt(cS,{children:[Ee(Aa,{icon:Ee(nN,{size:13}),name:l("Image"),words:a,onSelect:()=>w(y,{level:"image",index:xe}),selected:re&&m.level==="image"&&m.index===xe,rowProps:{onClick:E(()=>w(y,{level:"image",index:xe}))}}),Ee(Aa,{icon:Ee(sN,{size:13}),name:l("Map"),words:a,onSelect:()=>w(y,{level:"map",index:xe}),selected:re&&m.level==="map"&&m.index===xe,rowProps:{onClick:E(()=>w(y,{level:"map",index:xe}))}})]}),W(A.key,he+1)]},Ql(Ce))}),Lt("button",{type:"button",className:"sf-add-card",onClick:()=>{let Ce=tS(B,A.key);x(y,Ce);let he=Pt(Ce).find(xe=>xe.key===A.key);uo(he&&he.cards.length?{level:"city",index:Jl(Ce,A.key,he.cards.length-1)}:{level:"group",key:A.key})},children:[Ee("span",{className:"sf-plus sf-plus--sm",children:"+"}),l("Add city")]})]}),H(oe+1)]},Re)}),Lt("button",{type:"button",className:"sf-add-card",onClick:()=>{let{cards:A,key:oe}=rS(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===os&&uo({level:"groups"})}}}import{useEffect as pN,useRef as mN}from"react";import{createNode as IS,newId as hS}from"efficient-easel/data";import{useEaselApi as xN}from"efficient-easel/easel";import{ROOT_ZONE as Cr,missingPinnedTypes as IN,pinnedDuplicateIds as kd}from"efficient-easel/draw";import{resetForDocumentSwitch as cN,saveStatusForNewDocument as dN,saveStatusOf as uN}from"efficient-easel/screen/lib/document-switch";function mS(e){return!e.docId||e.saveStatus==="saving"?!1:e.seededDocId!==e.docId}function xS(e,o){let t=e.some(n=>n?.type===de),r=e[e.length-1],a=!t&&r?.type===pe?r:null;return{remove:e.filter(n=>n?.type===pe&&n!==a).map(n=>String(n.props?.id??"")).filter(Boolean),seedHeader:!e.some(n=>n?.type===Ve),seedFooter:o.hasChromeDoc&&!t&&!a}}function gS(e,o){let{adapter:t,capabilities:r,currentSlug:a,docId:n,data:s,saveStatus:i}=ye(),{hasSiteSettings:f,hasPinnedChrome:u}=r,p=!!r.editsPinnedInPlace&&a!==Nt,m=a===Nt,x=xN().getState,h=mN(null);pN(()=>{if(!mS({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(kd(C)),F=E.size?C.filter(B=>!E.has(B.props.id)):C;E.size&&e.setDocument({...b,content:F});let L=IN(F,k);if(L.includes(pe)){let B=F.length,O=e.insertSection(pe,B);e.replaceComponent(Cr,B,{type:pe,props:{id:O,blocks:$l()}})}L.includes(Ve)&&e.insertNode(Cr,0,Ul());return}if(m){let E=br(C);if(E!==C&&e.setDocument({...b,content:[...E]}),!E.find(F=>F.type===pe)&&!v(k,pe)&&!v(E,de)&&!v(k,de)){let F=(B,O)=>IS(o,B,O),L={type:pe,props:{blocks:$l()}};e.insertNode(Cr,E.length,Ta(L,F,hS(de)))}return}if(p){let E=!!t?.pinnedChrome?.state().docId,F=xS(C,{hasChromeDoc:E}),L=new Set([...F.remove,...kd(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,pe)&&!v(k,de)){let O=(re,H)=>IS(o,re,H),M={type:pe,props:{blocks:$l()}};e.insertNode(Cr,B.length,Ta(M,O,hS(de)))}if(F.seedHeader&&!v(k,Ve)){let O=B[0]?.type==="SiteHeader"?1:0;e.insertNode(Cr,O,Ul())}return}let w=C.filter(E=>E.type!==pe),g=new Set(kd(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(Cr,0,Ul())},[n,i,s,x,e,f,u,m,p,t])}import{useEffect as SS,useState as CS}from"react";var ts=new Map;async function hN(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 bS(e,o){let t=ts.get(o);return t||(t=hN(e,o),ts.set(o,t),t.catch(()=>{ts.get(o)===t&&ts.delete(o)})),t}var gN=/^(localhost|(?:[a-z0-9-]+\.)+localhost|127(?:\.\d{1,3}){3}|0\.0\.0\.0|\[::1\]|::1)$/i;function Td(e){return!!e&&gN.test(e)}function yS(e){let{pageSlug:o,siteSlug:t,hostname:r}=e,a=o===mn?"/":`/${encodeURIComponent(o)}`;if(!Td(r))return a;let n=t?.trim();return n?`${a}?site=${encodeURIComponent(n)}`:a}function vS(e){let{pageSlug:o,siteId:t,token:r}=e,[a,n]=CS(null),[s,i]=CS(null),f=gu();SS(()=>i(f?new URL(f).hostname:window.location.hostname),[f]),SS(()=>{if(!Td(s)||!t||!r){n(null);return}let p=!1;return bS(r,t).then(m=>{p||n(m)}),()=>{p=!0}},[s,t,r]);let u=yS({pageSlug:o,siteSlug:a,hostname:s});return f?`${f}${u}`:u}import{jsx as Ba,jsxs as bN}from"react/jsx-runtime";import{ExternalIcon as wS}from"efficient-easel/icons";import{Button as yN,Tooltip as kS,buttonClasses as SN}from"efficient-shell/ui";function CN({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 TS({liveHref:e,pageId:o,draftLink:t}){return t&&o?Ba(kS,{content:l("Open your saved draft in a new tab. Visitors don't see it."),children:Ba(yN,{variant:"secondary",onClick:()=>{CN({pageId:o,liveHref:e,draftLink:t})},rightIcon:Ba(wS,{size:15}),"aria-label":l("Preview your saved draft in a new tab"),children:l("Preview")})}):Ba(kS,{content:l("Preview the live site (opens in a new tab)"),children:bN("a",{className:SN({variant:"secondary"}),href:e,target:"_blank",rel:"noopener noreferrer","aria-label":l("Preview the live site in a new tab"),children:[l("Preview"),Ba(wS,{size:15})]})})}import{useCallback as FN,useEffect as OS,useRef as RS,useState as EN}from"react";import{useSyncExternalStore as vN}from"react";var wN=()=>()=>{},FS=()=>null;function rs(e){return vN(e?e.subscribe:wN,e?e.state:FS,e?e.state:FS)}function as(){let{adapter:e}=ye();return e?.pinnedChrome}import{useSyncExternalStore as kN}from"react";var vr=new Map,Fd=new Set;function Ed(e,o){if(!(vr.has(e)&&vr.get(e)===o)){vr.set(e,o);for(let t of Fd)t()}}function Hee(e,o){Ed(e,o)}function zee(e,o){let t=vr.get(e);Ed(e,o??(t==="live"?"changed":t))}function Wee(e,o){Ed(e,o??"live")}function Gee(e){return vr.get(e)}function TN(e){return Fd.add(e),()=>{Fd.delete(e)}}function ES(e){let o=()=>e?vr.get(e):void 0;return kN(TN,o,o)}function PS(e,o){return e==="live"&&o?"changed":e}function Pd({live:e,onPress:o,busy:t=!1,pinnedUnpublished:r=!1,goingLive:a}){let n=e==="live"&&!r,s=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:s,quiet:n?{label:l("Published"),reason:l("Everything is live")}:null,...a&&a.length?{goingLive:a}:{},onPress:o,busy:t}}function LS(e){return e.map(o=>o.change==="take_down"?l("{name} (taken down)",{name:o.name}):o.name)}function AS(e){let{docId:o,capabilities:t,hasUnsavedEdits:r,onPublish:a,adapter:n}=ye(),s=PS(ES(o??null),r),i=rs(as()),f=n.siteLiveState;OS(()=>{if(f)return xi(f),un(0),()=>xi(null)},[f]);let u=Zp(),[p,m]=EN(!1),x=RS(e);x.current=e;let h=RS(!0);OS(()=>(h.current=!0,()=>{h.current=!1}),[]);let b=FN(()=>{m(!0),a(x.current).finally(()=>{h.current&&m(!1)})},[a]);if(t.canPublish){if(f){let C=u===void 0?void 0:r||u.state==="changed"?"changed":"live";return Pd({live:C,onPress:b,busy:p,goingLive:LS(u?.changes??[])})}return Pd({live:s,onPress:b,busy:p,pinnedUnpublished:i?.unpublished??!1})}}var BS=["general","commerce","service"],wr=[{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 Xee(){return Object.fromEntries(wr.map(e=>[e.key,{title:e.title,components:e.sections.map(o=>o.type),...e.defaultExpanded?{defaultExpanded:!0}:{}}]))}var PN={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."},Zee=["Grid"],Qee=Array.from(new Set([...wr.flatMap(e=>e.sections.map(o=>o.type)),...Object.keys(PN)])),Jee=Object.fromEntries(wr.flatMap(e=>e.sections.map(o=>[o.type,o.label]))),LN={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"},ns={...LN,...Object.fromEntries(wr.flatMap(e=>e.sections.map(o=>[o.type,o.set])))};function _S(e){return Object.prototype.hasOwnProperty.call(ns,e)?ns[e]:void 0}function Ld(e){return Object.keys(ns).filter(o=>ns[o]===e).sort()}var eoe=Ld("general"),ooe=Ld("commerce"),toe=Ld("service"),Od="Flex",ot="Box",roe=`${ot}es`;function ON(e){return e==="section"?"Blank section":ot}function Rd(e,o,t){return e===Od?ON(o):t}var RN={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 DS(e){return RN[e]?.label}var NS=Od;var AN={general:!0,commerce:!0,service:!0};function Ad(e){let o=e?.sets;return o?Object.fromEntries(BS.map(t=>[t,o.includes(t)])):AN}function foe(e=ao()){return Ad(e.blocks)}var kr="content",ge="Flex",BN="Text & media",_N="Layout & structure",DN=[{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:BN})),NN=(wr.find(e=>e.key==="structure")?.sections??[]).map(e=>({type:e.type,label:e.label,group:_N})),MS=[...DN,...NN],Bd=[{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}],uoe=Bd.map(e=>e.type),MN=1,HN=Bd.filter(e=>e.type!=="HeroGroup");function zN(e){return e<MN?Bd:HN}var WN={Flex:{slot:kr,choices:()=>MS},Grid:{slot:kr,choices:()=>MS},HeroGroup:{slot:kr,choices:zN}};function HS(e,o=0){let t=WN[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 zS(e,o,t){return ze(ge,e,o,{...t,sectionPaddingTop:void 0,sectionPaddingBottom:void 0})}var GN={Manifesto:(e,o)=>({type:ge,props:{...e(ge),id:o(ge),direction:"row",share:"equal",sectionHeightMode:"screen",name:"Brand Text",content:[ze(ge,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)]}),zS(e,o,{direction:"column",name:"Picture",content:[]})]}}),Split:(e,o)=>({type:ge,props:{...e(ge),id:o(ge),direction:"row",share:"equal",sectionHeightMode:"screen",sectionHeightValue:70,name:"Image & Text Split",content:[ze(ge,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)]}),zS(e,o,{direction:"column",name:"Image",content:[ze("ImageBlock",e,o)]})]}}),Subscribe:(e,o)=>({type:ge,props:{...e(ge),id:o(ge),direction:"column",name:"Subscribe",content:[ze("Heading",e,o),ze("Text",e,o),ze("Form",e,o)]}})};function ls(e){return GN[e]??null}import{blockTypesIn as _d}from"efficient-easel/screen/lib/puck/block-types-in";import{newNodeId as WS}from"efficient-easel/draw";var UN="ImageBlock",$N=3,ss=(e,o,t={})=>({type:e,props:{...o?.(e)??{},id:WS(e),...t}}),qN=e=>({...e?.(ge)??{},direction:"column",[kr]:[ss(UN,e),ss(ge,e,{direction:"column",[kr]:[ss("Heading",e),ss("Text",e)]})]}),ko={Hero:{slot:"slides",childType:"HeroSlide",addLabel:"Add slide",slider:!0,seeds:()=>qg.map(e=>({...e}))},HeroSlide:{slot:"groups",childType:"HeroGroup",addLabel:`Add ${ot.toLowerCase()}`,seeds:()=>[],addBlocked:Ja,notice:Ms},HeroSingle:{slot:"boxes",childType:"HeroGroup",addLabel:`Add ${ot.toLowerCase()}`,seeds:()=>[],addBlocked:Ja,notice:Ms},ProcessSteps:{slot:"boxes",childType:ge,addLabel:`Add ${ot.toLowerCase()}`,seeds:e=>Array.from({length:$N},()=>qN(e)),skipSeed:e=>Array.isArray(e.steps)&&e.steps.length>0}};function voe(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 woe(e,o){let t=ko[e];return t?{slot:t.slot,children:t.seeds(o).map(r=>({type:t.childType,props:{id:WS(t.childType),...r}}))}:null}var GS=()=>({}),US=new Map;function jN(e){let o=US.get(e);if(o)return o;let t=new Set,r=ko[e];if(r)for(let s of r.seeds(GS))for(let i of _d({type:r.childType,props:s}))t.add(i);let a=ls(e);if(a){let s=0;for(let i of _d(a(GS,f=>`${f}-${s+=1}`)))t.add(i)}t.delete(e);let n=[...t].sort();return US.set(e,n),n}function KN(e){if(!e||!e.sets&&!e.allow&&!e.deny?.length)return null;let o=Ad(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=_S(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)&&jN(f).every(i);return s.set(f,p),p};return{sets:o,offers:i}}var VN="block-offer";function Dd(e=ao()){return e.cache(VN,()=>KN(Np(e)))}function $S(e,o=ao()){let t=Dd(o);return t?t.offers(e):!0}function qS(e,o=0){let t=XN(e,o),r=t?Dd():null;return t&&r?YN(t,r):t}function YN(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=HS(e,o);if(r)return{source:"container",slot:r.slot,choices:r.choices,spec:null};let a=oy(e);return a?{source:"footer",slot:ey,choices:a,spec:null}:null}import{useSyncExternalStore as ZN}from"react";var Nd=null,Md=new Set;function jS(e){if(Nd!==e){Nd=e;for(let o of Md)o()}}function QN(e){return Md.add(e),()=>{Md.delete(e)}}function Woe(){return ZN(QN,()=>Nd,()=>null)}function KS(e){return Dr(e)?.ownerId??null}function VS(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 YS="sf-editor-left-view";function XS(){if(typeof window>"u")return"pages";try{let e=window.localStorage.getItem(YS);return e==="sections"||e==="styles"||e==="media"?e:"pages"}catch{return"pages"}}function ZS(e){if(!(typeof window>"u"))try{window.localStorage.setItem(YS,e)}catch{}}function QS(e,o,t=!1){return e==="styles"&&!o||e==="media"&&!t?"sections":e}function JS(e,o){return e?"sections":o}var eC="Footer",JN=[De,eC,de],Tr=e=>{let o=e?.content;return Array.isArray(o)?o:[]},Ot=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},oC=e=>Dr(e)?.ownerId??"";function tC(e){let o=br(Tr(e)),t=o.some(r=>r?.type===de);return o.filter(r=>r?.type===De||r?.type===de||r?.type===eC&&!t)}function Hd(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(oC(s))||(n.add(s),r(i),a=!0)}}return t}function zd(e,o){let t={},r={};for(let[a,n]of Object.entries(e??{}))(o.has(oC(a))?t:r)[a]=n;return{owned:t,rest:r}}function Voe(e,o){if(!o)return e;let t=tC(o);if(!t.length)return e;let r=t.filter(i=>i.type===De),a=t.filter(i=>i.type!==De),n={...e,content:[...r,...Tr(e),...a]},{owned:s}=zd(Ot(o),Hd(t,Ot(o)));return Object.keys(s).length&&(n.zones={...Ot(e)??{},...s}),n}function Yoe(e,o){if(!o)return{page:e,chrome:null};let t=tC(o),r=new Set(t.map(_a).filter(w=>!!w)),a=[],n=[];for(let w of Tr(e)){let g=_a(w);g&&r.has(g)||gr(w?.type)?n.push(w):a.push(w)}let s=new Map(n.map(w=>[_a(w),w])),i=new Set,f=br(Tr(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===De?[w,...f]:[...f,w]);f=br(f);let u=f.length===Tr(o).length&&f.every((w,g)=>w===Tr(o)[g]),p=Ot(e),m=Hd(f,p),{owned:x,rest:h}=zd(p,m),b=zd(Ot(o),Hd(t,Ot(o))).owned,C={...o,content:u?o.content:[...f]},k=Ot(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&&eM(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 eM(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 rC(e,o){return t=>e(t)||t!==void 0&&JN.includes(t)&&o()}var is=null;function Zoe(e){is=e}function aC(){return!!(is&&is.state().lockHolder)}function Fr(){return is!==null}var oM=new Set(["BookingBox","SubmitBox"]);function tM(e){return typeof e=="string"&&oM.has(e)}var nC=rC(tM,aC);import{Fragment as Gd,jsx as ds,jsxs as wM}from"react/jsx-runtime";import{useMemo as kM,useRef as mC}from"react";import{EaselCanvas as TM,useEaselApi as FM}from"efficient-easel/easel";import{jsx as cC,Fragment as dM,jsxs as uM}from"react/jsx-runtime";import{useEffect as dC,useLayoutEffect as pM}from"react";var fs="data-theme",lC="light";function rM(e){return e.getAttribute(fs)===lC?"light":"dark"}function aM(e,o){return rM(e)===o?!1:(o==="light"?e.setAttribute(fs,lC):e.removeAttribute(fs),!0)}function nM(e){return vs(e).getItem(Is)}function ate(e,o){vs(e).setItem(Is,o)}function lM(e,o,t=new Date().getHours()){return Xd({mode:o.mode,override:nM(e),switchShown:o.switchShown,hour:t})}function sC(e,o){let t=e.documentElement;if(!t)return()=>{};let r=()=>aM(t,lM(e,o));r();let a=e.defaultView?.MutationObserver;if(!a)return()=>{};let n=new a(r);return n.observe(t,{attributes:!0,attributeFilter:[fs]}),()=>n.disconnect()}var sM="style";function iM(e,o){let t=au(o),r=!1;for(let a of ru){let n=t[a]??"";e.style.getPropertyValue(a)!==n&&(n?e.style.setProperty(a,n):e.style.removeProperty(a),r=!0)}return r}function iC(e,o){let t=e.body;if(!t)return()=>{};let r=()=>iM(t,o);r();let a=e.defaultView?.MutationObserver;if(!a)return()=>{};let n=new a(r);return n.observe(t,{attributes:!0,attributeFilter:[sM]}),()=>n.disconnect()}var fM=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);`,cM="storefront-fit-words";function fC(e){let o=e.createElement("script");return o.id=cM,o.textContent=fM,(e.head??e.documentElement).appendChild(o),()=>{e.__sfFitWords?.(),o.remove()}}var mM=`
|
|
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 uC({children:e,document:o}){let{theme:t,themeMode:r,themeSwitchShown:a}=X(),n=Qe(t);return dC(()=>{if(o)return sC(o,{mode:r,switchShown:a})},[o,r,a]),dC(()=>{if(o)return iC(o,n)},[o,n]),pM(()=>{if(o)return fC(o)},[o]),uM(dM,{children:[cC(Bu,{}),cC("style",{children:mM}),e]})}import{jsx as Wd}from"react/jsx-runtime";import{useEffect as xM,useState as IM}from"react";import{Banner as hM}from"efficient-shell/ui";var cs={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."},gM=cs.load,bM=cs.lock,yM=cs.conflict,SM=cs.save;function CM(e){return e?e.loadFailed?l(gM):e.lockHolder?l(bM,{name:e.lockHolder.name||l("Somebody else")}):e.conflict?l(yM):e.saveFailed?l(SM):null:null}function vM({report:e}){let o=CM(rs(e)),[t,r]=IM(null);return xM(()=>{o||r(null)},[o]),!o||t===o?null:Wd("aside",{className:"sf-canvas-notice",children:Wd(hM,{tone:"warning",onDismiss:()=>r(o),children:o})})}function pC(){return Wd(vM,{report:as()})}import{usePreviewParts as xC}from"efficient-easel/draw/client";function EM({children:e,componentId:o}){let{selectedPartId:t}=xC();return kI(t,o)?ds(Gd,{}):ds(Gd,{children:e})}function IC(e){let{mirrorHostStyles:o}=Ps(),t=Du(),r=mC(null),a=PM(r),{onDocument:n}=e,s=i=>{r.current=i,n?.(i)};return wM(Gd,{children:[ds(pC,{}),ds(TM,{...e,onDocument:s,typing:a,metadata:e.metadata??t,height:"fill",mirrorStyles:o,frameWrapper:uC,overlay:EM})]})}function PM(e){let o=FM(),t=qo(),r=xC(),a=mC({ops:t,parts:r});return a.current={ops:t,parts:r},kM(()=>{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=vb(i,n);if(!u)return null;let p=f,m=()=>(p=wb(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?Dl(Ab(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){$c(null);return}let f=i.element.closest(`[${io}]`)?.getAttribute(io)??null;$c(f),f&&a.current.parts.selectedPartId!==f&&a.current.parts.select(f)}}},[o,e])}var hC={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 LM="Save your page changes first";function gC(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:LM}:{visible:!0,enabled:!0}:{visible:!1,hiddenReason:"no-site"}:{visible:!1,hiddenReason:"not-operator"}:{visible:!1,hiddenReason:"no-console"}}var bC="storefront-editor:save-as-template";var OM="plain",yC=[{label:"Plain",value:"plain"},{label:"Filled",value:"filled"},{label:"Line",value:"line"}],RM="line",AM={KeyFeatures:"filled"};function Da(e){return AM[e]??OM}function Hte(e,o){return Je(yC,Da(o),e)}function zte(e){return Je(yC,RM,e)}var BM="inline",_M=[{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"}},Er="SectionHeader";function SC(e){return e in tt}function $te(e){return Je(_M,BM,e)}var CC=new Set(["Flex"]);function qte(e){return!!e?.type&&CC.has(e.type)}var DM={not:{context:"parentType",in:[...CC]}};function jte(e,o,t){return yl(e,t,DM)}var NM={not:{field:"headPlacement",is:"own-box"}};function Kte(e,o,t){return yl(e,t,NM)}function vC(e,{nodeDefaults:o,newNodeId:t,sectionLabel:r,blockIsOffered:a}){let n=ls(e);return n?n(o,t):SC(e)&&a(ge)&&a(Er)?{type:ge,props:{...o(ge),id:t(ge),direction:"column",name:`${r(e)} section`,content:[{type:Er,props:{...o(Er),id:t(Er),...tt[e]?.headStyle?{headStyle:tt[e].headStyle}:{},...tt[e]?.headRowGap?{rowGap:tt[e].headRowGap}:{},...tt[e]?.headDescriptionSize?{descriptionSize:tt[e].headDescriptionSize}:{},...Da(e)!==Da(Er)?{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 MM,useState as HM}from"react";function wC(){let e=Be().chrome?.products?.list,[o,t]=HM(null);return MM(()=>{if(!e)return;let r=!1;return e().then(a=>{r||t(a)}),()=>{r=!0}},[e]),o}function LC({mode:e,open:o}){let{setSelectedHeroId:t,setSelectHandler:r}=Il(),a=PC().tree,n=e,s=n.kind==="ticker"?n.heroId:null,i=Na(f=>{f&&(o({kind:"ticker",heroId:f}),lh(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"&&Se(EC,{icon:Se(Tt,{type:"ticker",size:13}),name:l(sa),onSelect:()=>i(p),selected:s===p,rowProps:{onClick:u(()=>i(p))},words:a})}}}function OC({mode:e,select:o}){let{setSelectedHeroPart:t,setSelectHandler:r}=hl(),a=PC().tree,{appState:n}=XM(x=>x),s=n.data.content??[],i=zM(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=Na(x=>{let h=Uh(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=Gh(x);if(C.length===0)return null;let k=g=>{let y=ca(b,g.part);return Se(EC,{icon:Se(Tt,{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 us(FC,{children:[k(v),w.length>0&&Se(YM,{children:w.map(k)})]})}}}function RC(e,o){return{partRows:(t,r)=>us(FC,{children:[e.partRows?.(t,r),o.partRows?.(t,r)]})}}function QM(e){let{adapter:o,capabilities:t,currentSlug:r,siteId:a,docId:n,hasUnsavedEdits:s,bridgeCapabilities:i,notifyParent:f,token:u}=ye(),{hasPreviewLink:p}=t,m=Ue(Be()).preview?.draftLink,x=AS(e.data),h=gC({hasTrustedConsole:!!u,canCreatePlatformTemplate:i.canCreatePlatformTemplate,capabilities:t,siteId:a,hasUnsavedEdits:s}),b=Na(()=>{!a||!r||f(bC,{siteId:a,slug:r})},[f,a,r]),C=vS({pageSlug:r,siteId:a,token:u}),k=o.previewHref?.(r)??C;return{barLead:()=>h.visible&&Se(UM,{side:"bottom",content:h.enabled?l("Save this website as a platform template"):l(h.disabledReason),children:Se("span",{className:"sf-tip-disabled",tabIndex:h.enabled?void 0:0,children:Se(GM,{variant:"secondary",disabled:!h.enabled,onClick:b,rightIcon:Se(VM,{size:15}),children:l("Save as Template")})})}),barTrail:()=>p&&r&&Se(TS,{liveHref:k,pageId:n??null,draftLink:m}),mainAction:x}}function JM(e,o){let{capabilities:t,templateId:r,siteId:a,tokenRef:n,navigate:s}=ye(),{hasSiteTheme:i,explainsSiteSettings:f}=t,u=v=>o.setView(v),[p,m]=WM(rr[0].id),{surface:x,setSurface:h}=Lh(),b=()=>{if(i){u("styles"),o.reveal(),Nf();return}e.show(md),e.reveal(),Nf()},C={id:"pages",label:l("Pages"),icon:Se(qM,{}),panel:({onHide:v})=>Se(Ch,{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:Se(KM,{}),active:e.kind==="website",onSelect:b}),i&&k.push({id:"styles",label:l("Site styles"),icon:Se(jM,{}),panel:({onHide:v,notify:w})=>Se(qy,{tokenRef:n,siteId:a??void 0,onClose:v,onNotify:w,tab:p,onTabChange:m})}),{railLead:[C],railTrail:k,resolveLeftView:(v,w)=>QS(v,i,w),openSettings:b,openStyles:()=>{m(ih),u("styles")}}}function e2(e,o,t,r){let{kind:a,open:n}=e,{selected:s,zoneOf:i}=o;To(()=>{jS(s?.type==="BookingBox"&&s.props.region==="confirm"?KS(i(String(s.props.id))):null)},[s?.props.id]);let f=pS(e,o),{capabilities:{hasSiteSettings:u}}=ye(),{setSelected:p,setSelectHandler:m}=X(),{chat:x,setChat:h,setSelected:b,setSelectHandler:C}=xl(),k=a==="header";To(()=>{p(k)},[k,p]),To(()=>{m(()=>n(pd))},[m,n]);let v=Na(()=>n(_y),[n]),w=a==="chat";To(()=>{b(w)},[w,b]),To(()=>{C(v)},[C,v]);let{setOpenHandler:g}=la(),y=Na(()=>n(Dy),[n]);To(()=>{g(y)},[g,y]);let E=RC(LC(e),OC(e)),F=QM(o),L=JM(e,r),B=t.device;return{...E,...F,...L,hasOwnRows:O=>O.type===os,ownRows:f.renderLocationTree,sectionPressed:f.sectionPressed,wrap:O=>Se(Ls.Provider,{value:!0,children:Se(ZM.Provider,{value:B,children:O})}),addPanelRow:O=>u?us("div",{className:"sf-addside-sitewide",children:[Se("span",{className:"sf-addside-sitewide-glyph","aria-hidden":"true",children:Se(Tt,{type:"chat",size:16})}),us("button",{type:"button",className:"sf-addside-sitewide-name",onClick:()=>{O(),v()},children:[l("Live chat"),Se("span",{className:"sf-addside-sitewide-desc",children:l("A chat bubble on every page")})]}),Se($M,{checked:x.enabled,onChange:M=>h({enabled:M}),ariaLabel:l("Show the chat bubble on the whole site")})]}):void 0}}var kC=null,Ud=new WeakMap;function o2(e){let o=Su();if(!e||!o)return e;kC!==o&&(kC=o,Ud=new WeakMap);let t=Ud.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},Ud.set(e,t)),t}var t2={isLockedBlock:nC,duplicateBlocked:ql,nestDepth:(e,o,t)=>o===en?ep(e,t):0,newSectionNode:vC,canAddTo:(e,o)=>o2(qS(e,o)),blockIsOffered:$S},r2=new Proxy(hC,{get:(e,o)=>{let t=Reflect.get(e,o);return typeof t=="string"?l(t):t}}),a2={labelAtLevel:(e,o,t)=>l(Rd(e,o,t)),descriptions:r2,categoryLabel:e=>{let o=DS(e);return o===void 0?void 0:l(o)},firstSection:NS,blockRowName:VS,plainText:xt,Icon:Tt,Thumbnail:$y,useProducts:wC},n2={desktop:2e3,tablet:800,mobile:390},TC="desktop",l2={options:Th,initial:TC,fluid:TC,widths:n2},s2={read:XS,write:e=>ZS(e),forSelection:(e,o)=>JS(e,o)},i2={first:Ve,last:pe,firstGroup:De,lastGroup:de,isSectionGroup:gr,sectionGroupZone:ty,panelOf:e=>e===Ve?pd:null,get groupTab(){return Fr()?iy:void 0},get groupBadge(){return Fr()?fy():void 0},get changeNotice(){return Fr()?cy():void 0},get band(){return Fr()?f2:void 0},get groupAccepts(){return Fr()?ly:void 0}},f2={foldable:!0};function c2(e){return{...RC(LC(e),OC(e)),openSettings:()=>e.show(md)}}var lae={useOwnerName:nr,useDocumentLabel:ph,useBridges:e2,useStandaloneBridges:c2,useDocumentPass:gS,blockRules:t2,blockLook:a2,devices:l2,leftView:s2,pinned:i2,Canvas:IC,Inspector:My};export{Xee as a,Zee as b,Qee as c,Jee as d,ot as e,Ad as f,foe as g,Ue as h,Np as i,MS as j,uoe as k,gK as l,Fg as m,wK as n,Ag as o,kK as p,Bg as q,Dg as r,Hg as s,zg as t,NK as u,MK as v,HK as w,zK as x,_A as y,np as z,XK as A,Za as B,Uv as C,XH as D,dt as E,ZH as F,QH as G,en as H,ep as I,voe as J,woe as K,KN as L,Xu as M,Hv as N,GH as O,Xa as P,Zu as Q,zv as R,Wv as S,Gv as T,qH as U,jH as V,KH as W,VH as X,Qf as Y,xO as Z,IO as _,hO as $,yl as aa,Sl as ba,yq as ca,De as da,de as ea,RZ as fa,ry as ga,ay as ha,Je as ia,tt as ja,$te as ka,qte as la,jte as ma,Kte as na,df as oa,D5 as pa,N5 as qa,Zs as ra,xt as sa,zr as ta,Jn as ua,io as va,Ke as wa,$$ as xa,kP as ya,TP as za,q$ as Aa,er as Ba,j$ as Ca,K$ as Da,Sf as Ea,NI as Fa,tl as Ga,e8 as Ha,o8 as Ia,t8 as Ja,r8 as Ka,c1 as La,da as Ma,ug as Na,pg as Oa,Tl as Pa,Mj as Qa,Hj as Ra,zj as Sa,Wj as Ta,dH as Ua,xH as Va,IH as Wa,hH as Xa,_e as Ya,ox as Za,Pz as _a,Tn as $a,XT as ab,Rz as bb,Bz as cb,QT as db,_z as eb,ax as fb,Ai as gb,Bi as hb,Uz as ib,qz as jb,jz as kb,Kz as lb,Vz as mb,Kr as nb,Ni as ob,Mi as pb,mn as qb,im as rb,Ur as sb,dm as tb,k6 as ub,tT as vb,T6 as wb,on as xb,sp as yb,d5 as zb,u5 as Ab,uw as Bb,p5 as Cb,I5 as Db,fp as Eb,h5 as Fb,mw as Gb,g5 as Hb,ST as Ib,hn as Jb,Q6 as Kb,Si as Lb,J6 as Mb,ET as Nb,ez as Ob,tz as Pb,rz as Qb,pz as Rb,mz as Sb,xz as Tb,vm as Ub,K6 as Vb,V6 as Wb,Y6 as Xb,X6 as Yb,AT as Zb,bn as _b,nz as $b,Rm as ac,d2 as bc,j as cc,l as dc,it as ec,Ab as fc,kl as gc,UY as hc,Ob as ic,Mt as jc,ye as kc,Be as lc,W4 as mc,un as nc,Qp as oc,U4 as pc,WC as qc,GC as rc,ws as sc,Kk as tc,c6 as uc,nm as vc,qo as wc,DH as xc,zH as yc,zs as zc,lw as Ac,s5 as Bc,S5 as Cc,ve as Dc,Js as Ec,d3 as Fc,Hr as Gc,Wt as Hc,h3 as Ic,ri as Jc,ai as Kc,A3 as Lc,B3 as Mc,Bp as Nc,_3 as Oc,D3 as Pc,N3 as Qc,Gt as Rc,Wp as Sc,Up as Tc,h6 as Uc,sm as Vc,Le as Wc,wu as Xc,b2 as Yc,qC as Zc,y2 as _c,S2 as $c,Tu as ad,w2 as bd,jC as cd,k2 as dd,T2 as ed,VC as fd,P2 as gd,YC as hd,L2 as id,Nt as jd,R2 as kd,A2 as ld,B2 as md,_2 as nd,qa as od,D2 as pd,QC as qd,U2 as rd,Ou as sd,ev as td,ov as ud,tv as vd,av as wd,nv as xd,lv as yd,Fs as zd,$2 as Ad,cT as Bd,q6 as Cd,sz as Dd,iz as Ed,fz as Fd,cz as Gd,dz as Hd,$m as Id,jT as Jd,hz as Kd,Gm as Ld,Um as Md,gz as Nd,Sn as Od,Cn as Pd,yz as Qd,jt as Rd,wn as Sd,vz as Td,wz as Ud,kz as Vd,Jm as Wd,Fz as Xd,Qo as Yd,Do as Zd,Ui as _d,Co as $d,lG as ae,sG as be,iG as ce,fG as de,pG as ee,mG as fe,IF as ge,xG as he,IG as ie,hG as je,SF as ke,gG as le,bG as me,yG as ne,He as oe,SG as pe,wF as qe,CG as re,vG as se,Zt as te,wG as ue,Rn as ve,Kt as we,kG as xe,Hx as ye,Bn as ze,_n as Ae,TG as Be,FG as Ce,EG as De,PG as Ee,LG as Fe,OG as Ge,RG as He,AG as Ie,BG as Je,_G as Ke,DG as Le,NG as Me,Dn as Ne,Nn as Oe,Mn as Pe,Ki as Qe,Hn as Re,MG as Se,yt as Te,HG as Ue,zG as Ve,WG as We,GG as Xe,UG as Ye,$G as Ze,qG as _e,jG as $e,Zo as af,KG as bf,VG as cf,zn as df,YG as ef,Vi as ff,XG as gf,ZG as hf,Yi as if,QG as jf,jx as kf,Kx as lf,Vx as mf,JG as nf,cE as of,eU as pf,oU as qf,Ye as rf,yr as sf,xD as tf,by as uf,lQ as vf,sQ as wf,iQ as xf,fQ as yf,cQ as zf,dQ as Af,uQ as Bf,pQ as Cf,mQ as Df,xQ as Ef,IQ as Ff,gl as Gf,rO as Hf,iq as If,fq as Jf,sO as Kf,fO as Lf,Oh as Mf,pO as Nf,mq as Of,xq as Pf,Ah as Qf,Iq as Rf,_h as Sf,Bh as Tf,Fq as Uf,ml as Vf,H7 as Wf,z7 as Xf,xl as Yf,YL as Zf,X7 as _f,la as $f,eq as ag,Lh as bg,Hee as cg,zee as dg,Wee as eg,Gee as fg,Voe as gg,Yoe as hg,Zoe as ig,rq as jg,lq as kg,hl as lg,AJ as mg,jy as ng,Ky as og,oH as pg,f8 as qg,c8 as rg,d8 as sg,u8 as tg,Wf as ug,Gf as vg,Mh as wg,Pq as xg,Hh as yg,yO as zg,Jf as Ag,Aq as Bg,Bq as Cg,SO as Dg,_q as Eg,ca as Fg,Uh as Gg,Dq as Hg,qh as Ig,Ij as Jg,Qh as Kg,kc as Lg,Tc as Mg,WR as Ng,GR as Og,Fc as Pg,qR as Qg,ma as Rg,El as Sg,Vj as Tg,Rc as Ug,rK as Vg,aK as Wg,nK as Xg,wg as Yg,GA as Zg,UA as _g,$A as $g,rV as ah,aV as bh,ZA as ch,JA as dh,eb as eh,uV as fh,pV as gh,sb as hh,bV as ih,ga as jh,cb as kh,Mc as lh,db as mh,ub as nh,wV as oh,pb as ph,mB as qh,kV as rh,TV as sh,FV as th,EV as uh,xB as vh,PV as wh,LV as xh,OV as yh,hB as zh,RV as Ah,yB as Bh,AV as Ch,zc as Dh,tY as Eh,Ml as Fh,ZY as Gh,f_ as Hh,Mb as Ih,c_ as Jh,va as Kh,d_ as Lh,u_ as Mh,aX as Nh,Ub as Oh,YX as Ph,XX as Qh,pe as Rh,$l as Sh,uo as Th,Zy as Uh,Qy as Vh,NJ as Wh,Ra as Xh,Jy as Yh,eS as Zh,zJ as _h,WJ as $h,uN as ai,bS as bi,Td as ci,yS as di,qS as ei,Woe as fi,fs as gi,rM as hi,aM as ii,ate as ji,V2 as ki,Q2 as li,OM as mi,yC as ni,RM as oi,Da as pi,Hte as qi,zte as ri,lae as si};
|