efficient-storefront-blocks 0.33.3 → 0.36.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 +64 -0
- package/dist/chunks/{EditorPreviewCheckout-PVUT5RZD.js → EditorPreviewCheckout-RQOY5RHE.js} +1 -1
- package/dist/chunks/SiteEditorProvider-R6224Z2C.js +1 -0
- package/dist/chunks/{chunk-P5QC7OSD.js → chunk-EZGGINPR.js} +1 -1
- package/dist/chunks/{chunk-ZK4TVVHJ.js → chunk-IYPIVAIO.js} +1 -1
- package/dist/chunks/{chunk-OADA35KT.js → chunk-O624SD7C.js} +1 -1
- package/dist/chunks/chunk-UX3A3F4A.js +249 -0
- package/dist/chunks/{fitment-data-6ZBHHNJ6.js → fitment-data-ZQPZXZ7O.js} +1 -1
- package/dist/editor.css +1 -1
- package/dist/index.js +169 -27
- package/dist/words.d.ts +14 -4
- package/dist/words.js +3 -3
- package/package.json +3 -3
- package/dist/chunks/PreviewFooter-7NEJ5BU4.js +0 -1
- package/dist/chunks/SiteEditorProvider-KJTQSHQI.js +0 -1
- package/dist/chunks/chunk-D6F4PRBB.js +0 -154
- package/dist/chunks/chunk-D6F4PRBB.js.LEGAL.txt +0 -5
- package/dist/chunks/chunk-FF2KE5VQ.js +0 -234
- package/dist/chunks/chunk-G5OLLOCT.js +0 -16
- package/dist/chunks/render-client-5K4A4MV2.js +0 -1
- /package/dist/chunks/{SectionEditorShell-DBJN2ZWK.js → SectionEditorShell-YRD6CL5R.js} +0 -0
- /package/dist/chunks/{chunk-TNXPBHCM.js → chunk-UT6IGC4H.js} +0 -0
- /package/dist/chunks/{chunk-G5OLLOCT.js.LEGAL.txt → chunk-UX3A3F4A.js.LEGAL.txt} +0 -0
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
import{$ as ud,A as td,Aa as yd,B as ma,Ba as Sd,C as wo,Ca as Cd,D as Uo,E as kt,F as Tt,Fa as vd,H as rd,Ia,Ja as wd,K as Ll,La as ne,M as ad,Ma as kd,N as Pl,Oa as ha,P as nd,Pa as Td,Q as ld,Qa as Fd,S as sd,T as id,U as fd,V as cd,Y as dd,Z as no,_ as nt,a as $c,aa as ko,ba as xa,c as jc,d as hr,da as pd,e as Xc,ea as Rl,f as Yc,g as Zc,h as oo,ha as md,i as Mo,ia as Al,j as pa,k as Qc,ka as Ol,n as wt,o as Tl,oa as xd,p as Jc,r as Fl,ta as Bl,ua as Id,w as ed,wa as hd,x as El,y as Ho,ya as gd,z as od,za as bd}from"./chunk-EZGGINPR.js";import{a as qc,c as uo,l as Kc,m as Ir,n as Vc,q as Ed,u as Dl}from"./chunk-UT6IGC4H.js";var ga=null,ky="en",Pd=null;function JB(e,o,t){ga=e??null,ky=o||"en",Pd=t??null}function oe(){return Pd}function Rd(){return ga}function Ld(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=ga?ga[e]:void 0;if(typeof t=="function"){try{let r=t(o??{});if(typeof r=="string"&&r)return r}catch{}return Ld(e,o)}return Ld(typeof t=="string"&&t?t:e,o)}function lt(e,o,t,r){return l(t===1?e:o,{...r,n:t})}import{EaselSessionProvider as tD,useEaselSession as Me}from"efficient-easel/screen/lib/session-context";import{hostLoadRefusalOf as Ty,hostUnreachableMessage as Fy,isBackendError as Ey,provideHostFailures as Ly,readHostFailure as Py,STATUS_UNREACHABLE as Ry,WebsiteBackendError as _l}from"efficient-easel/screen/lib/backend-error";import{createEaselHost as fD,DETACHED_EASEL_HOST as cD,EaselHostContext as dD,EaselHostProvider as uD,useEaselHost as Ft}from"efficient-easel/screen/lib/host";function Ue(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 Ad(e,o){return typeof e=="number"&&Number.isFinite(e)?e:o}function Od(e,o){return typeof e=="boolean"?e:o}function ba(e,o){if(!Array.isArray(e))return o;let t=e.map(r=>typeof r=="string"?r:Ue(r?.text,"")).map(r=>r.trim()).filter(Boolean);return t.length?t:o}var Bd="cart-drawer",ID="cart-drawer";var Ay={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 hD(e,o){return o===0?e.subtitleEmpty:o===1?e.subtitleOne:e.subtitleMany.replace("{count}",String(o))}function gD(e){let o=e??{},t=Ay;return{kickerBadge:Ue(o.kickerBadge,t.kickerBadge),kickerText:Ue(o.kickerText,t.kickerText),titleLead:Ue(o.titleLead,t.titleLead),titleAccent:Ue(o.titleAccent,t.titleAccent),subtitleEmpty:Ue(o.subtitleEmpty,t.subtitleEmpty),subtitleOne:Ue(o.subtitleOne,t.subtitleOne),subtitleMany:Ue(o.subtitleMany,t.subtitleMany),leadTimeValue:Ue(o.leadTimeValue,t.leadTimeValue),shipsToFallback:Ue(o.shipsToFallback,t.shipsToFallback),promises:ba(o.promises,t.promises),emptyKicker:Ue(o.emptyKicker,t.emptyKicker),emptyBody:Ue(o.emptyBody,t.emptyBody)}}var Oy=["meta","eyebrow","heading","body","statName","statValue","formEyebrow","formHeading","formIntro","fieldLabel","option","finePrint","dismiss","doneHeading","doneBody"],SD={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"},By={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"},CD={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 Dy(e){return typeof e=="string"&&Mo.includes(e)?e:null}function Dd(e){let o={};for(let t of Oy){let r=Dy(e[By[t]]);r&&(o[t]=r)}return o}var Et="site-footer";var wD=Et,kD={desktop:!0,tablet:!0,mobile:!0},TD={desktop:!1,tablet:!1,mobile:!1},Nl=1,_d=6,FD=Array.from({length:_d-Nl+1},(e,o)=>Nl+o),ya={desktop:6,tablet:3,mobile:2},_y={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}},st=e=>Math.min(Math.max(Math.round(e),Nl),_d);function ED(e){if(typeof e=="number")return _y[st(e)]??{desktop:st(e),tablet:st(e),mobile:st(e)};if(e&&typeof e=="object"){let o=e;return{desktop:st(o.desktop??ya.desktop),tablet:st(o.tablet??ya.tablet),mobile:st(o.mobile??ya.mobile)}}return{...ya}}var Ny="subscribe-popup",BD="subscribe-popup";var My=[Ny,Et,Bd];function Hd(e){return My.includes(e)}var Hy=["delay","scroll","exit"],Wy=["all","chosen"],Gy=["visit","days","never"],zy=["right","left"],Uy={min:0,max:60},qy={min:10,max:90},$y={min:1,max:90},Hl={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:{}},xe=Ue,jy=Ad,Nd=Od,Wd=ba;function Sa(e,o,t){return typeof o=="string"&&e.includes(o)?o:t}function Ml(e,o,t){let r=jy(e,t);return Math.min(o.max,Math.max(o.min,Math.round(r)))}function Ky(e){return typeof e.hideAfter=="string"?Sa(Gy,e.hideAfter,Hl.hideAfter):e.oncePerSession===!0?"visit":e.oncePerSession===!1?"never":Hl.hideAfter}function Vy(e){return Array.isArray(e)?e.map(o=>typeof o=="string"?o.trim():"").filter(Boolean).map(o=>o.startsWith("/")?o:`/${o}`):[]}function Md(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 Xy(e,o){return Array.isArray(e)?Wd(e,[]):o}function Yy(e,o){return Array.isArray(e)?e.map(t=>{let r=t??{};return{label:xe(r.label,""),value:xe(r.value,"")}}).filter(t=>t.label||t.value):o}function DD(e){let o=e??{},t=Hl;return{metaLabel:xe(o.metaLabel,t.metaLabel),issueLabel:Md(o.issueLabel,t.issueLabel),issueNumber:Md(o.issueNumber,t.issueNumber),kicker:xe(o.kicker,t.kicker),heading:xe(o.heading,t.heading),deck:xe(o.deck,t.deck),stats:Yy(o.stats,t.stats),formLabel:xe(o.formLabel,t.formLabel),formHeading:xe(o.formHeading,t.formHeading),formIntro:xe(o.formIntro,t.formIntro),firstNameLabel:xe(o.firstNameLabel,t.firstNameLabel),firstNamePlaceholder:xe(o.firstNamePlaceholder,t.firstNamePlaceholder),emailLabel:xe(o.emailLabel,t.emailLabel),emailPlaceholder:xe(o.emailPlaceholder,t.emailPlaceholder),interestsLabel:xe(o.interestsLabel,t.interestsLabel),interests:Wd(o.interests,t.interests),frequencyLabel:xe(o.frequencyLabel,t.frequencyLabel),frequencies:Xy(o.frequencies,t.frequencies),submitText:xe(o.submitText,t.submitText),finePrint:xe(o.finePrint,t.finePrint),dismissText:xe(o.dismissText,t.dismissText),emailInvalidText:xe(o.emailInvalidText,t.emailInvalidText),submitErrorText:xe(o.submitErrorText,t.submitErrorText),successHeading:xe(o.successHeading,t.successHeading),successBody:xe(o.successBody,t.successBody),keepBrowsingText:xe(o.keepBrowsingText,t.keepBrowsingText),formSlug:typeof o.formSlug=="string"?o.formSlug.trim():t.formSlug,autoOpen:Nd(o.autoOpen,t.autoOpen),autoOpenDelaySec:Ml(o.autoOpenDelaySec,Uy,t.autoOpenDelaySec),trigger:Sa(Hy,o.trigger,t.trigger),scrollPercent:Ml(o.scrollPercent,qy,t.scrollPercent),showOn:Sa(Wy,o.showOn,t.showOn),showOnPages:Vy(o.showOnPages),hideAfter:Ky(o),hideDays:Ml(o.hideDays,$y,t.hideDays),formSide:Sa(zy,o.formSide,t.formSide),valuePanelOnPhone:Nd(o.valuePanelOnPhone,t.valuePanelOnPhone),sectionAccent:o.sectionAccent,sectionCorners:o.sectionCorners,sectionCornerSides:o.sectionCornerSides,textStyles:Dd(o)}}import{jsx as Wl,Fragment as Zy,jsxs as Qy}from"react/jsx-runtime";import{createContext as Jy,useContext as eS}from"react";var oS={mirrorHostStyles:!0,css:null,fontHrefs:[]},Gd=Jy(oS);function HD({value:e,children:o}){return Wl(Gd.Provider,{value:e,children:o})}function Gl(){return eS(Gd)}function zd(){let{css:e,fontHrefs:o}=Gl();return Qy(Zy,{children:[o.map(t=>Wl("link",{rel:"stylesheet",href:t},t)),e?Wl("style",{"data-sf-canvas-css":"",children:e}):null]})}import{jsx as tS}from"react/jsx-runtime";import{createContext as rS,useContext as aS}from"react";var Ud=rS(void 0);function UD({metadata:e,children:o}){return tS(Ud.Provider,{value:e,children:o})}var qd=()=>aS(Ud);import{jsx as ve,jsxs as zc}from"react/jsx-runtime";import{useCallback as wl,useEffect as at,useState as RB}from"react";import{Button as AB,Tooltip as OB}from"efficient-shell/ui";import{SettingsSwitch as BB}from"efficient-easel/panel";import{PagesIcon as DB,StylesIcon as _B}from"efficient-easel/rail";import{TreeRow as NB}from"efficient-easel/tree";import{useEaselStrings as MB}from"efficient-easel/strings";import{createContext as nS,useContext as lS}from"react";var zl=nS(!1),jD=()=>lS(zl);import{jsx as X,Fragment as cf,jsxs as Jt}from"react/jsx-runtime";import{Fragment as mE,useEffect as xE,useId as IE,useMemo as uI,useState as Qt}from"react";import{ScreenDocumentContext as Ca,ScreenDocumentProvider as XD,useScreenDocument as ke}from"efficient-easel/screen/components/ScreenDocumentContext";import{default as qe}from"efficient-easel/screen/components/UiIcon";import{default as va,PanelHideButton as Ul,PanelModeExit as e_,PanelShowStrip as o_}from"efficient-easel/screen/components/SidePanelHead";import{jsx as te,jsxs as Yt,Fragment as qr}from"react/jsx-runtime";import{useEasel as of}from"efficient-easel/easel";import{useEffect as RF,useRef as nI,useState as Wn}from"react";import{jsx as et,jsxs as Wm,Fragment as b0}from"react/jsx-runtime";import{useState as Gm}from"react";import{SettingsDefaultReset as y0,SettingsField as S0}from"efficient-easel/panel";import{useEaselStrings as C0}from"efficient-easel/strings";import{jsx as h,jsxs as Mt,Fragment as Qo}from"react/jsx-runtime";import{cloneElement as im,useId as Nw,useRef as ei,useState as fm}from"react";import{useEasel as Ht,useSelectedFields as Mw}from"efficient-easel/easel";import{hidableText as $d,readHidable as $e}from"efficient-easel/screen/lib/puck/hidable";import{ANCHOR_FIELD_KEYS as l_,FOLD_FIELD_MARKER as wa,foldMetaOf as To,LINK_FIELD_MARKER as gr,MEDIA_FIELD_MARKER as jd,SCAFFOLD_FIELD_MARKER as br,TEXT_FIELD_MARKER as Te,textFieldIdentifier as sS}from"efficient-easel/screen/lib/puck/field-markers";import{jsx as eu}from"react/jsx-runtime";import{useCallback as dS,useEffect as uS,useRef as pS,useState as mS}from"react";import{useEasel as xS}from"efficient-easel/easel";import{SettingsAction as IS}from"efficient-easel/panel";function ql(e){return typeof e=="number"&&Number.isFinite(e)}function f_(e,o){if(!ql(e))return;let t=xa(ko(e));if(Object.keys(t).length===0)return;let r=t[ka];if(typeof r!="string")return t;let a=Lt(o)?Pt(r,Fo(o)??[]):r;return{...t,[iS]:a}}var iS="--sf-section-radius",ka="--sf-card-radius",qo=["tl","tr","br","bl"];function Fo(e){if(!Array.isArray(e))return null;let o=e.filter(t=>qo.includes(t));return qo.filter(t=>o.includes(t))}function Lt(e){let o=Fo(e);return o!==null&&o.length<qo.length}function Pt(e,o){return qo.map(t=>o.includes(t)?e:"0").join(" ")}var $l=[{value:"tl",label:"Top left"},{value:"tr",label:"Top right"},{value:"bl",label:"Bottom left"},{value:"br",label:"Bottom right"}];var fS="--sf-card-box-radius",cS="--sf-site-card-radius",m_="sf-section-bleeds";function jl(e){return typeof e=="number"&&Number.isFinite(e)}function x_(e,o){if(!jl(e))return;let t=xa(ko(e))[ka];if(typeof t!="string")return;let r=Lt(o)?Pt(t,Fo(o)??[]):t;return{[fS]:r}}function I_(e){let o=e[ka];return typeof o=="string"?{[cS]:o}:{}}function Kd(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{childSlotsOf as b_,FOOTER_TYPE as re,HEADER_TYPE as Fe,locateNode as Vd,missingPinnedTypes as Xd,nestsInTree as y_,newNodeId as yr,pinnedDuplicateIds as Ta,pinnedDuplicateIndices as S_,ROOT_ZONE as Eo,slotFieldsOf as C_,TREE_MAX_DEPTH as v_}from"efficient-easel/screen/lib/puck/content-tree";function Yd(e,o,t){let r=t?.zone??"",a=r.lastIndexOf(":"),n=a>0?r.slice(0,a):"",s=a>0?r.slice(a+1):"",i=n?Vd(e,o,n):null,c=i&&Array.isArray(i.item.props[s])?i.item.props[s]:[],p=t?.index??-1,u=p>=0?c[p]:void 0,m=u?.props?.id?String(u.props.id):"",x=Math.max(c.length-1,0);return!i||!m?{can:!1,reason:"unreachable",others:0}:c.length<=1?{can:!1,reason:"alone",others:x}:jl(u?.props?.cardCorners)?{can:!0,others:x,zone:i.zone,index:i.index,data:{...i.item,props:{...i.item.props,[s]:Kd(c,m)}}}:{can:!1,reason:"unset",others:x}}function Zd(e){return e.can?lt("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 Qd(e){return lt("Applied to {n} card","Applied to {n} cards",e)}function Jd(e,o){e.can&&o(e.zone,e.index,e.data)}import{useSectionOps as $o}from"efficient-easel/screen/lib/puck/use-section-ops";var hS=2200,gS="apply-corners-to-siblings",bS="Apply to all cards";function yS({plan:e,doneCount:o,onPress:t}){return eu(IS,{id:gS,label:l(bS),note:Zd(e),disabled:!e.can,done:o!==null,doneLabel:Qd(o??0),onPress:t})}function ou(){let{appState:e,config:o}=xS(c=>c),t=$o(),[r,a]=mS(null),n=pS(null);uS(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=Yd(o,e.data.content??[],e.ui.itemSelector),i=dS(()=>{Jd(s,t.replaceComponent),s.can&&(a(s.others),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>a(null),hS))},[s,t]);return eu(yS,{plan:s,doneCount:r,onPress:i})}var tu=1;function SS(e){return ko(e)}function W_(e){let o=SS(e);return o===null?{}:{"--sf-card-image-radius":`${o}px`}}var ru=1,au="Corners";function CS(e){return ko(e)}function q_(e,o){let t=CS(e);if(t===null)return null;let r=`${t}px`;return{borderRadius:Lt(o)?Pt(r,Fo(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]]}},Kl=Object.keys(Lo),lu=[2,3,4,6];function su(e){return typeof e!="string"||e===""?null:Lo[e]??null}function nu(e,o){return o?6/e.acrossPhone:12/e.across}var vS="sf-wall--";function wS(e){return`${vS}${e}`}function j_(e){let o=Lo[e],t=`.${wS(e)}`,r=[],a=(n,s)=>{let i=[],c=n.length;n.forEach(([p,u],m)=>{i.push(`${t} > :nth-child(${c}n+${m+1}){grid-column:span ${p};grid-row:span ${u}}`)});for(let p=1;p<c;p+=1)i.push(`${t}:has(> :nth-child(${c}n+${p}):last-child) > :nth-last-child(-n+${p}){grid-column:span ${s};grid-row:span 1}`);return i};return r.push(`${t}{grid-template-columns:repeat(12,minmax(0,1fr))}`),r.push(...a(o.desktop,nu(o,!1))),r.push("@media (max-width:800px){"),r.push(`${t}{grid-template-columns:repeat(6,minmax(0,1fr))}`),r.push(...a(o.phone,nu(o,!0))),r.push("}"),r.join("")}var Fa=12,iu=1,kS=3;var TS=3;function Vl(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 FS(e){return Vl(e,1,Fa)??TS}function X_(e,o){return Vl(e,iu,kS)??(FS(o)===4?2:iu)}function Y_(e){return e==null||e===""?null:Vl(e,1,Fa)}var Z_="data-sf-span";function Q_(e){if(!e)return!1;if(e.type==="Grid")return!0;if(e.type==="GalleryB"){if(su(e.props?.layout))return!1;let o=e.props?.columns;return o!=null&&o!==""}return!1}var po=["top-left","top-center","top-right","left","center","right","bottom-left","bottom-center","bottom-right"],Ea="bottom-left";var Sr={"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 ES(e){let o=po.indexOf(it(e));return{band:Math.floor(o/3),column:["start","center","end"][o%3]}}function LS(e){return 1+ES(e).band*6}function eN(e){return LS(e)+1}function it(e){return po.includes(e)?e:Ea}function oN(e){let o=typeof e=="number"&&Number.isFinite(e)?e:0;return Math.max(-40,Math.min(40,Math.round(o)))}function tN(e,o=60){let t=typeof e=="number"&&Number.isFinite(e)?e:o;return Math.max(30,Math.min(100,Math.round(t)))}function Xl(e,o){let t=it(o);return e.filter(r=>it(r?.props?.placement)===t).length}function fu(e){return`${Sr[it(e)]} already holds 4 boxes. Move one somewhere else first.`}function Yl(e,o){let t=e.filter(r=>r?.props?.id!==o);return po.map(r=>{let a=Xl(t,r)>=4,n=Sr[r];return a?{value:r,label:n,disabled:!0,title:fu(r)}:{value:r,label:n}})}function La(e,o){let t=o===void 0?Ea:it(o?.props?.placement);return Xl(e,t)>=4?fu(t):null}var Pa="HeroGroup";function PS(e){return po.map(o=>{let t=Xl(e,o);return{anchor:o,total:t,hidden:t-4}}).filter(o=>o.hidden>0)}function Zl(e){let o=PS(e);return o.length===0?null:o.map(({anchor:t,total:r,hidden:a})=>{let n=Sr[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 cu(e,o){let t=o;if(t?.type!==Pa)return null;let r=t.props?.id===void 0?"":String(t.props.id);return r?La(Ql(e,r),t):null}function Ql(e,o){let t=uu(e,o);return t&&t.ownerType===AS?t.siblings:[]}function du(e,o){let t=uu(e,o);return t?t.ancestorTypes.filter(r=>r===Pa).length:RS}var RS=1,AS="HeroSlide";function uu(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 c=i.type,p=r(i,n+1,[...s,String(c)]);if(p)return p}return null}for(let i of Object.values(a)){let c=r(i,n+1,s);if(c)return c}return null};return r(e,0,[])}import{jsx as OS}from"react/jsx-runtime";var BS="sf-hint-keep";function pu({children:e}){return OS("span",{className:BS,children:e})}import{AdjustIcon as Hw,AlignLeftIcon as Ww,AlignSeparateIcon as Gw,AnimationIcon as cm,BackgroundIcon as zw,BlockSectionIcon as Uw,CartIcon as qw,ColumnWidthsIcon as dm,ColumnsIcon as $w,CornerIcon as jw,DirectionDownIcon as Kw,DirectionLeftIcon as Vw,DirectionRightIcon as Xw,DirectionUpIcon as Yw,DollarIcon as Zw,FinishIcon as Qw,GapIcon as um,GridIcon as Jw,GroundIcon as ek,HashIcon as pm,HeightIcon as ok,ImageIcon as tk,ListIcon as rk,LocationIcon as Js,PaddingBottomIcon as mm,PaddingLeftIcon as xm,PaddingRightIcon as Im,PaddingTopIcon as hm,PageIcon as gm,PhoneIcon as ak,PlacementIcon as nk,ProductSizeIcon as lk,RotateIcon as sk,SquareIcon as ik,TypeIcon as fk,WidthIcon as ck,WrapIcon as dk}from"efficient-easel/icons";import{jsx as K,Fragment as Po,jsxs as Ro}from"react/jsx-runtime";import{TitleIcon as DS,ButtonIcon as _S,DollarIcon as NS,HashIcon as MS,LinkIcon as HS,NoteIcon as WS,TagIcon as GS,TextLinesIcon as zS}from"efficient-easel/icons";var mu={body:zS,button:_S,link:HS,label:GS,number:MS,price:NS,note:WS,title:DS},xu={eyebrow:Ro(Po,{children:[K("path",{d:"M5 6.5h5"}),K("path",{d:"M5 12.5h14"}),K("path",{d:"M5 18h11"})]}),heading:Ro(Po,{children:[K("path",{d:"M6.5 5v14"}),K("path",{d:"M17.5 5v14"}),K("path",{d:"M6.5 12h11"})]}),intro:Ro(Po,{children:[K("path",{d:"M4 5.5v13"}),K("path",{d:"M8 7.5h12"}),K("path",{d:"M8 12h12"}),K("path",{d:"M8 16.5h8"})]}),value:Ro(Po,{children:[K("rect",{x:"2.5",y:"7",width:"19",height:"10",rx:"2"}),K("path",{d:"M6.5 12h7"})]}),name:Ro(Po,{children:[K("path",{d:"M6 3.5v17"}),K("path",{d:"M6 5h11.5l-2.6 3.6L17.5 12H6z"})]}),date:Ro(Po,{children:[K("rect",{x:"4",y:"5.5",width:"16",height:"15",rx:"2"}),K("path",{d:"M4 10.5h16"}),K("path",{d:"M9 3.2v4.4"}),K("path",{d:"M15 3.2v4.4"})]}),caption:Ro(Po,{children:[K("rect",{x:"3.5",y:"4.5",width:"17",height:"11",rx:"2"}),K("path",{d:"M3.5 12.8l4.2-3.2 3.6 2.8 3.4-2.4 5.8 4"}),K("path",{d:"M6.5 19.5h11"})]}),quote:Ro(Po,{children:[K("path",{d:"M9.5 5.5C7 7.2 5.5 9.7 5.5 12.8h4v5.7h-5v-5.7"}),K("path",{d:"M19.5 5.5c-2.5 1.7-4 4.2-4 7.3h4v5.7h-5v-5.7"})]}),tag:Ro(Po,{children:[K("rect",{x:"3",y:"5.5",width:"18",height:"13",rx:"2.5"}),K("path",{d:"M8 9.5h8"}),K("path",{d:"M12 9.5v5"})]}),meta:Ro(Po,{children:[K("path",{d:"M4 7h16"}),K("path",{d:"M4 14h3.5"}),K("path",{d:"M10.5 14h3"}),K("path",{d:"M17 14h3"})]})};function Jl({noun:e,size:o=14,strokeWidth:t=1.8,className:r,style:a}){let n=mu[e];return n?K("span",{className:r,style:{display:"inline-flex",...a},"aria-hidden":"true",children:K(n,{size:o})}):K("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:xu[e]})}var iN=Object.keys(mu);var fN=Object.keys(xu);var US="#ffffff",qS=/^#[0-9a-fA-F]{6}$/;function es(e){return $S(e)?e:US}function $S(e){return typeof e=="string"&&qS.test(e)}function dN(e){return{"--bg":es(e)}}var os=[{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}],jS=os.filter(e=>e.ink);function KS(e){let o={color:e.fg};for(let{role:t,token:r}of jS)o[r]=e[t];return o}var VS={fg:"var(--overlay-fg)",line:"color-mix(in srgb, var(--overlay-fg) 24%, transparent)",muted:"color-mix(in srgb, var(--overlay-fg) 76%, transparent)"},Iu=Object.freeze(KS(VS));var Ra=-1,XS="sf-section-accent",hu="Color",gu=new Set(["CategoryBar","DocTabs"]),xN=new Set(["Flex"]),YS=0;function ts(e){return e===Ra?null:typeof e=="number"&&Number.isInteger(e)&&e>=0?e:YS}function IN(e){return e??Ra}function ZS(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 os)t[`--sf-sec-${r}`]=`var(${o}-${r}, var(--theme-${r}))`;return t}function hN(e){let o=ts(e.sectionAccent);return o===null?null:{className:XS,style:ZS(o)}}var QS=["fade","rise","scale"],rs="none",bu=[{label:"None",value:rs},{label:"Fade",value:"fade"},{label:"Rise",value:"rise"},{label:"Scale",value:"scale"}];function yN(e){return QS.includes(e)?e:null}var yu="data-sf-anim",Cr="data-sf-anim-state";function SN(e){let o=()=>{};if(typeof IntersectionObserver>"u"||!e.getAttribute(yu))return o;let t=window.innerHeight||document.documentElement.clientHeight;if(e.getBoundingClientRect().top<t)return o;e.setAttribute(Cr,"armed");let r=new IntersectionObserver(a=>{for(let n of a)if(n.isIntersecting){r.disconnect(),JS(e);break}},{threshold:0});return r.observe(e),()=>{r.disconnect(),e.removeAttribute(Cr)}}function JS(e){if(!e.getAttribute(yu))return;e.removeAttribute(Cr),e.offsetWidth,e.setAttribute(Cr,"play");let o=t=>{t.target===e&&(e.removeAttribute(Cr),e.removeEventListener("animationend",o))};e.addEventListener("animationend",o)}var CN=gu;function ns(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(as(r,o,0))return a??{}}return null}function as(e,o,t){if(t>12||!e||typeof e!="object")return!1;if(Array.isArray(e))return e.some(a=>as(a,o,t+1));let r=e.props;return r&&typeof r=="object"&&r.id===o?!0:Object.values(e).some(a=>as(a,o,t+1))}import{SettingsDefaultReset as ho,SettingsField as Ie,SettingsGroupHead as uk,SettingsGroupSub as pk,SettingsSegmented as mk,SettingsSwitch as xk}from"efficient-easel/panel";import{FieldSelect as Ik,ListField as hk}from"efficient-easel/fields";import{AlignmentGrid as gk,Checkbox as l4,CornersInput as bk,DateTimePicker as yk,FOCAL_DEFAULT as Sk,Slider as Ck,Tooltip as Ja}from"efficient-shell/ui";import{jsx as Rt,jsxs as oC}from"react/jsx-runtime";import{ColorPicker as Cu,HexInput as tC}from"efficient-shell/ui";import{typedHex as ls}from"efficient-easel/pick";import{typedHex as eC}from"efficient-easel/pick";function Su(e){let o=new Set,t=[];return Ho(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 c=i?eC(i):null;!c||o.has(c)||(o.add(c),t.push({name:s,value:c}))}}),t}function mo({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,after:s,ariaLabel:i}){return Rt(aC,{value:e,onChange:o,label:l(i??t),id:r,caption:a,inherited:n,after:s})}function rC(){let{theme:e}=ne();return Su(e).map(o=>({value:o.value,label:o.name}))}function aC({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,after:s}){let i=rC(),c=e?null:ls(n??""),p=a!==void 0&&(!e||ls(a)!==ls(e))?a:null,u=m=>{m!==e&&o(m)};return oC("div",{className:"sf-colour",children:[Rt(Cu,{id:r,value:e,onChange:u,label:t,presets:i,fallback:c??void 0,size:"sm",align:"end"}),p!==null?Rt("span",{className:"sf-colour-caption",children:p}):Rt("span",{className:"sf-colour-hexwrap",children:Rt(tC,{value:e||c||"",onChange:u,label:l("{label} hex code",{label:t}),placeholder:e||c?void 0:l("Not set"),className:c?"sf-colour-hex is-inherited":"sf-colour-hex",size:"sm"})}),s]})}function vu({value:e,onChange:o,label:t}){return Rt(Cu,{value:e,onChange:r=>{r&&r!==e&&o(r)},label:l(t),size:"sm",align:"end"})}import{jsx as He,Fragment as ds,jsxs as us}from"react/jsx-runtime";import{useEffect as mC,useState as xC}from"react";import{MarkBar as IC,markSelection as hC,useCaretEdit as gC}from"efficient-easel/copy";import{RevertIcon as bC}from"efficient-easel/icons";import{IconButton as yC,Tooltip as SC}from"efficient-shell/ui";import{applyMark as WN,markupTools as GN,MARKUP_TOOLS as zN,COPY_FIELD_TOOLS as UN,STOREFRONT_MARKUP as qN,tokenizeInline as $N,stripInline as jN,isSafeLinkHref as KN}from"efficient-easel/markup";import{applyMark as nC,markedAt as lC,markupTools as sC,MARKUP_TOOLS as iC,parseMarkup as fC,RETIRED_MARKS as cC,STOREFRONT_MARKUP as dC,tokenizeInline as XN}from"efficient-easel/markup";var Aa=["highlight","strong","quiet"],ft={highlight:"Highlight",strong:"Bold",quiet:"Quiet"},Ao={highlight:{kind:"wordHighlight",delimiter:"@@"},strong:{kind:"wordStrong",delimiter:"++"},quiet:{kind:"wordQuiet",delimiter:"^^"}},wu=Object.fromEntries(Aa.map(e=>[Ao[e].kind,e])),ku="data-sf-ws",is=["accent","text","labels"],Tu={accent:"Accent",text:"Text",labels:"Labels"},jo={accent:"var(--accent)",text:"var(--fg)",labels:"var(--fg-dim)"};var ss={font:null,size:null,weight:null,bold:null,italic:null,lineGap:null,textGap:null,colour:null},NN={highlight:{...ss},strong:{...ss},quiet:{...ss}};var Fu=Aa.map(e=>({open:Ao[e].delimiter,close:Ao[e].delimiter,kind:Ao[e].kind})),ZN=[{style:Ao.highlight.kind,label:ft.highlight,title:`${ft.highlight} word style`},{style:Ao.strong.kind,label:ft.strong,title:`${ft.strong} word style`},{style:Ao.quiet.kind,label:ft.quiet,title:`${ft.quiet} word style`}],uC=new Set(Fu.map(e=>e.open)),At=[...dC.filter(e=>!uC.has(e.open)),...Fu];function fs(e){return e.bullet?"- ":e.number!=null?`${e.number}. `:""}function cs(e){return fC(typeof e=="string"?e:"",At)}var pC=iC.map(e=>e.style).filter(e=>!cC.includes(e)).filter(e=>At.some(o=>o.kind===e));function Eu(){return sC(pC)}var Lu=Object.fromEntries(Aa.map(e=>[Ao[e].kind,Ao[e].delimiter]));function Pu(e,o,t,r){let a=Lu[r];if(!a)return nC(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 c=n||"styled text";return{text:e.slice(0,o)+a+c+a+e.slice(t),selectionStart:o+a.length,selectionEnd:o+a.length+c.length}}function Ru(e,o,t,r){let a=Lu[r];return a?o>=a.length&&e.slice(o-a.length,o)===a&&e.slice(t,t+a.length)===a:lC(e,o,t,r)}function ct(e){return cs(e).map(o=>fs(o)+Au(o.children)).join(`
|
|
3
|
+
`)}function Au(e){return e.map(o=>o.kind==="text"?o.text:Au(o.children)).join("")}function CC({style:e}){let o=t=>He("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.9,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:t});switch(e){case"bold":return o(He("path",{d:"M7 5h6.5a3.5 3.5 0 0 1 0 7H7zm0 7h7.5a3.5 3.5 0 0 1 0 7H7z"}));case"italic":return o(us(ds,{children:[He("line",{x1:"10",y1:"5",x2:"19",y2:"5"}),He("line",{x1:"5",y1:"19",x2:"14",y2:"19"}),He("line",{x1:"14",y1:"5",x2:"10",y2:"19"})]}));case"strike":return o(us(ds,{children:[He("path",{d:"M16.5 6.5A4.2 4.2 0 0 0 12.7 4.7C10 4.7 8.4 6 8.4 7.9c0 1.6 1.2 2.5 3.4 3.1"}),He("path",{d:"M7.6 17.4A4.4 4.4 0 0 0 11.7 19.3c2.8 0 4.5-1.4 4.5-3.4 0-1-.4-1.8-1.2-2.4"}),He("line",{x1:"4",y1:"12",x2:"20",y2:"12"})]}));case"highlight":return o(us(ds,{children:[He("path",{d:"M14.5 4.5l5 5-8 8H6.5v-5z"}),He("line",{x1:"4",y1:"21",x2:"20",y2:"21"})]}));default:return null}}var vC=["bold","italic","strike","highlight"],wC=Object.fromEntries(vC.map(e=>[e,He(CC,{style:e},e)])),Ou="Clear formatting";function kC(e,o,t){return hC(e,o,t,Pu)}function TC(e){let[o,t]=xC(null);return mC(()=>{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(c=>c&&c.start===s&&c.end===i?c:{start:s,end:i})};return r.addEventListener("selectionchange",a),()=>r.removeEventListener("selectionchange",a)},[e]),[o,t]}function FC({target:e,value:o,onChange:t,disabled:r=!1,label:a="Formatting"}){let n=gC({target:e,onChange:t}),[s,i]=TC(e),c=x=>n(g=>{let C=kC(o,x,g);return i({start:C.selectionStart,end:C.selectionEnd}),C}),p=Eu(),u={};if(s)for(let x of p)u[x.style]=Ru(o,s.start,s.end,x.style);let m=ct(o);return He(IC,{tools:p,onApply:c,pressed:u,disabled:r,glyphs:wC,ariaLabel:l(a),actions:He("span",{className:"sf-markup-clear",children:He(SC,{content:l(Ou),children:He(yC,{size:"sm",onMouseDown:x=>x.preventDefault(),onClick:()=>t(m),disabled:r||m===o,"aria-label":l(Ou),children:He(bC,{size:14})})})})})}var ps=FC;import{DEVICE_FIELD_MARKER as i2,DEVICE_HIDDEN_ATTR as f2,DEVICE_NOTE as c2,deviceField as xo,deviceMetaOf as ms,deviceNote as d2,shownTier as u2,withoutDeviceGate as p2}from"efficient-easel/screen/lib/puck/device-fields";import{NO_CONTROL_ATTR as I2,NO_CONTROL_FIELD as Bu,noControlField as xs,NoControlMark as Oa,noControlMetaOf as h2}from"efficient-easel/screen/lib/puck/panel-no-control-mark";var Is="__ownBox";function Du(e){return!!e&&typeof e=="object"&&e[Is]===!0}function vr(e){return`${e}Phone`}function Ba(e,o,t){return typeof e=="number"?e:typeof o=="number"?o:t}import{jsx as bs,Fragment as PC}from"react/jsx-runtime";import{createContext as RC,useContext as AC}from"react";var hs={ProductGrid:{source:{keep:["slug"]}},GalleryItem:{product:{keep:["code","finish"]}},FeaturedCover:{source:{keep:["slug"]}},LongRead:{source:{keep:["slug"]}}},gs={Events:["posts"],SubscribeBlogs:["posts"]};var EC=["anchor"],LC=/^href$|Href$|^url$|Url$|^link$|^mailto$|^tel$/;function wr(e){return EC.includes(e)||LC.test(e)}var _u={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"}}};_u.ContactLocations={"locations[].lat":{verb:"pii"},"locations[].lng":{verb:"pii"},"locations[].mapsUrl":{verb:"pii"},"locations[].geocode":{verb:"pii"}};var v2=Object.fromEntries(Object.entries(hs).map(([e,o])=>[e,Object.keys(o)])),w2=Object.fromEntries(Object.entries(gs).map(([e,o])=>[e,[...o]]));var Nu=RC(!1);function Mu({children:e}){return bs(Nu.Provider,{value:!0,children:e})}function OC(){return AC(Nu)}function Hu({name:e,children:o}){return!OC()||!e||wr(e)?bs(PC,{children:o}):bs(Oa,{})}function to(e,o,t){return e.some(r=>(typeof r=="object"?r.value:r)===t)?t:o}var ys="off",Ss="none",Cs=[{label:"None",value:"off"},{label:"1, 2, 3",value:"plain"},{label:"01, 02, 03",value:"padded"},{label:"N\xB001, N\xB002",value:"numero"}],vs=[{label:"None",value:"none"},{label:"Hairline",value:"hairline"}];function O2(e){return to(Cs,ys,e)}function B2(e){return to(vs,Ss,e)}var Wu="sf-card-index",kr="sf-card-index",D2="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",BC={plain:`counter(${kr})`,padded:`counter(${kr}, decimal-leading-zero)`,numero:`"N\xB0" counter(${kr}, decimal-leading-zero)`};function _2(e,o){return o==="off"?"":`.${e}{counter-reset:${kr}}.${e} .${Wu}{counter-increment:${kr}}.${e} .${Wu}::before{content:${BC[o]}}`}function N2(e){return e==="hairline"?"border border-line hover:border-accent":""}var Gu=[{value:"1",label:"1st rendering"},{value:"2",label:"2nd rendering"},{value:"3",label:"3rd rendering"},{value:"4",label:"4th rendering"},{value:"5",label:"5th rendering"}];import{SCALAR_TEXT_CONTROLS as dt,TEXT_CONTROL_KINDS as DC}from"efficient-easel/screen/lib/puck/text-control-kinds";import{jsx as ws}from"react/jsx-runtime";import{useState as HC}from"react";import{Button as WC,ImageFocusPoint as GC}from"efficient-shell/ui";import{jsx as lo,jsxs as zu}from"react/jsx-runtime";import{ChevronIcon as _C}from"efficient-easel/icons";import{Tooltip as NC}from"efficient-shell/ui";function Da({styleKey:e,label:o,icon:t,value:r,sampleStyle:a,open:n,onToggle:s,saved:i=!1,children:c}){return zu("div",{"data-sf-style-row":e,className:`sf-style-row${n?" is-open":""}`,children:[zu("button",{type:"button",className:"sf-style-head","aria-expanded":n,onClick:s,children:[lo("span",{className:"sf-style-caret","aria-hidden":"true",children:lo(_C,{size:13})}),t?lo("span",{className:"es-field-icon",children:t}):null,lo("span",{className:"sf-style-name",children:l(o)}),r!=null?typeof r=="string"?lo(NC,{content:r,className:"sf-style-sample-tip",children:lo("span",{className:"sf-style-sample",style:a,children:r})}):lo("span",{className:"sf-style-sample",style:a,children:r}):null,lo("span",{className:`sf-style-slot${i?" is-saved":""}`,children:lo(MC,{})})]}),n&&lo("div",{className:"sf-style-body",children:c})]})}function MC(){return lo("svg",{viewBox:"0 0 24 24",width:"14",height:"14",fill:"none",stroke:"currentColor",strokeWidth:3,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:lo("polyline",{points:"20 6 9 17 4 12"})})}function Uu({label:e,value:o,onChange:t,image:r}){let[a,n]=HC(!1);return ws(Da,{styleKey:"imageFocal",label:e,value:o,sampleStyle:{fontSize:11,fontVariantNumeric:"tabular-nums"},open:a,onToggle:()=>n(s=>!s),children:a?ws(GC,{label:l(e),value:o,onChange:t,image:r,emptyText:l("Choose a background image first \u2014 there\u2019s nothing to focus yet."),actions:ws(WC,{variant:"secondary",size:"sm",onClick:()=>n(!1),children:l("Done")})}):null})}import{jsx as so,jsxs as zC}from"react/jsx-runtime";import{SettingsField as $u}from"efficient-easel/panel";import{ImageIcon as ju,PlayIcon as Ku}from"efficient-easel/icons";import{ImageBox as UC}from"efficient-easel/pick";import{useEaselStrings as qC}from"efficient-easel/strings";import{useContext as $C,useState as Vu}from"react";import{FileIntakeAlert as jC,useFileIntake as KC}from"efficient-shell/file-intake";import{requestMediaPick as ks,resolveMediaPick as eM}from"efficient-easel/screen/lib/media-picker";var Ze=qc,qu=e=>e.blocks;function Xu({value:e,onChange:o,label:t,accept:r,placeholder:a}){let n=Ft(),s=Me(),i=qC(),c=l(t),[p,u]=Vu(!1),[m,x]=Vu(null),g=r.startsWith("video"),C=$C(Ca),w=KC({accept:r,maxSizeBytes:Ze(s).media.maxUploadBytes,acceptHint:g?l("videos only"):l("images only"),multiple:!1,disabled:p,onAccept:([k])=>{x(null),u(!0),ks(n,{accept:r,title:c,file:k}).then(S=>{S&&o(S.url)}).catch(()=>x(l("Couldn\u2019t open the media picker \u2014 please try again."))).finally(()=>u(!1))}}),b=()=>(w.clearRejections(),x(null),ks(n,{accept:r,title:c}).then(k=>k?.url??null));return C&&!C.capabilities.mediaEditing?so($u,{label:c,icon:g?so(Ku,{}):so(ju,{}),children:so("div",{className:"sf-image-slot-inert",children:g?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.")})}):zC("div",{children:[so($u,{label:c,icon:g?so(Ku,{}):so(ju,{}),children:so("div",{className:`sf-image-drop${w.dragOver?" is-dragover":""}`,...w.zoneProps,children:so(UC,{value:e,onChange:o,label:c,kind:g?"video":"image",placeholder:a===void 0?void 0:l(a),openLibrary:p?void 0:b,words:i.pick.image})})}),p&&so("div",{className:"sf-image-status",role:"status",children:l("Opening the picker\u2026")}),m&&so("div",{className:"sf-image-status sf-image-status--error",role:"alert",children:m}),so(jC,{rejections:w.rejections,className:"sf-image-status sf-image-status--error"})]})}import{jsx as Yu}from"react/jsx-runtime";import{useId as VC}from"react";import{FieldSelect as XC}from"efficient-easel/fields";import{SettingsField as YC}from"efficient-easel/panel";function ZC(e){return e.map(({value:o,label:t,note:r})=>({value:o,label:t,...r?{meta:r}:{}}))}function Zu({label:e,options:o,value:t,onChange:r,emptyLabel:a,icon:n,hint:s}){let i=VC(),c=`${i}-label`,p=`${i}-button`,u=Array.isArray(t)?t:[];return Yu(YC,{label:l(e),labelId:c,icon:n,hint:s,children:Yu(XC,{id:p,multiple:!0,value:u,options:ZC(o),onChange:r,placeholder:a===void 0?l("None"):l(a),ariaLabelledBy:`${c} ${p}`,inline:!0})})}import{jsx as Le,jsxs as ut,Fragment as gv}from"react/jsx-runtime";import{useCallback as bv,useContext as yv,useEffect as Sv,useId as sp,useRef as np,useState as lp}from"react";import{ThemeIcon as Cv}from"efficient-easel/icons";import{SettingsField as vv}from"efficient-easel/panel";import{jsx as U,jsxs as Vo,Fragment as nv}from"react/jsx-runtime";import{SettingsField as Es,SettingsGroupSub as lv}from"efficient-easel/panel";import{Button as Fs}from"efficient-shell/ui";import{jsx as Ko,jsxs as Qu}from"react/jsx-runtime";import{SettingsField as QC}from"efficient-easel/panel";import{AccentIcon as JC}from"efficient-easel/icons";import{Tooltip as ev}from"efficient-shell/ui";function Ts(e){return wo(e).background}function ov(e){let o=Uo(e.accent,Ts(e));return o===null?null:{ratio:o,grade:Tt(o)}}function tv(e){let o=Ts(e),t=Uo(e.accent,o);return t===null?[]:rd(e.accent).filter(r=>{let a=Uo(r,o);return a!==null&&a>t&&Tt(a)==="good"})}var rv={good:"Easy to read","large-only":kt["large-only"],hard:kt.hard};function Ju({value:e,onChange:o}){let t=ov(e),r=t?.grade,a=t&&t.grade!=="good"?tv(e):[];return Ko(QC,{label:l("Main color"),icon:Ko(JC,{}),hint:t?l(rv[t.grade]):void 0,action:Ko(mo,{value:e.accent,onChange:n=>o({...e,accent:n}),label:l("Main color")}),children:a.length>0?Ko("div",{className:"w-full min-w-0",children:Qu("div",{className:"sf-readability",children:[Ko("p",{className:"sf-readability-advice",children:av(r,!0)}),Ko("div",{className:"sf-readability-suggestions",children:a.map(n=>{let s=Uo(n,Ts(e));return Ko(ev,{content:l("Use {colour}",{colour:n.toUpperCase()}),children:Qu("button",{type:"button",className:"sf-readability-suggestion",onClick:()=>o({...e,accent:n}),children:[Ko("span",{className:"sf-readability-chip",style:{background:n},"aria-hidden":!0}),s?`${s.toFixed(1)}:1`:n.toUpperCase()]})},n)})})]})}):null})}function av(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 sv,GroundIcon as iv,LayoutIcon as fv,SquareIcon as cv,TextSmallIcon as dv,TypeIcon as ep}from"efficient-easel/icons";var Tr=e=>l("Theme {n}",{n:e+1});function op({colors:e}){let o=wo(e),t=Ll(e)??o.accent;return Vo("span",{className:"sf-theme-page",style:{background:o.background,color:o.text},"aria-hidden":!0,children:[U("span",{className:"sf-theme-eyebrow",style:{color:o.muted},children:l("label")}),Vo("span",{className:"sf-theme-headline",children:[l("Heading")," ",U("span",{style:{color:o.accent},children:l("accent")})]}),U("span",{className:"sf-theme-body",children:l("body text")}),Vo("span",{className:"sf-theme-row",children:[U("span",{className:"sf-theme-btn",style:{background:t,color:Pl(e,o.accent)},children:l("button")}),U("span",{className:"sf-theme-mini",style:{background:o.surface,borderColor:o.line},children:l("card")})]})]})}var Ls={"Text color":U(ep,{}),"Label color":U(dv,{}),Background:U(iv,{}),"Panels & cards":U(fv,{}),Borders:U(cv,{}),"Button color":U(sv,{}),"Button text color":U(ep,{})};function uv({label:e,colorKey:o,value:t,onChange:r,idPrefix:a="sf-theme-ink"}){let n=`${a}-${o}`;return U(Es,{label:l(e),icon:Ls[e],htmlFor:n,action:U(mo,{id:n,label:l(e),value:t,onChange:s=>r(o,s)})})}function pv({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 U(Es,{label:l("Button color"),icon:Ls["Button color"],htmlFor:a,action:U(mo,{id:a,label:l("Button color"),value:s,caption:n?s:l("Main"),onChange:t})})}function mv({colors:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button-ink`,n=ad(e),s=Pl(e,o),i=Ll(e)??o,c=Tt(Uo(s,i)??0);return U(Es,{label:l("Button text color"),icon:Ls["Button text color"],hint:n&&c!=="good"?l("{grade} on the button",{grade:l(kt[c])}):void 0,htmlFor:a,action:U(mo,{id:a,label:l("Button text color"),value:s,caption:n?s:l("Auto"),onChange:t})})}var xv=[{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 Ps({colors:e,onChange:o,idPrefix:t}){let r=wo(e);return U(nv,{children:xv.map(a=>"colour"in a?U(Ju,{value:e,onChange:o},"colour"):"group"in a?U(lv,{title:l(a.group)},a.group):"button"in a?U(pv,{value:e.button,accent:r.accent,onChange:n=>o({...e,button:n}),idPrefix:t},"button"):"buttonInk"in a?U(mv,{colors:e,accent:r.accent,onChange:n=>o({...e,buttonInk:n}),idPrefix:t},"buttonInk"):U(uv,{label:a.label,colorKey:a.key,value:r[a.key],onChange:(n,s)=>o({...e,[n]:s}),idPrefix:t},a.key))})}function _a({index:e,colors:o,selected:t,role:r="radio",open:a,editable:n=!0,onPick:s,onEdit:i,onChangeColors:c}){let p=wo(o),u=Tr(e),m=e<El.length&&!o.brandInk?El[e]:null,x=Tt(Uo(p.text,p.background)??0),g=m?JSON.stringify(o)!==JSON.stringify(m):!1,C=a!==void 0;return Vo("div",{className:`sf-theme-card${t?" is-selected":""}`,children:[U("button",{type:"button",role:r,"aria-checked":r==="radio"?t:void 0,"aria-selected":r==="option"?t:void 0,"aria-label":u,className:"sf-theme-pick",onClick:s,children:U(op,{colors:o})}),Vo("div",{className:"sf-theme-foot",children:[U("span",{className:"sf-theme-name",children:u}),x!=="good"&&U("span",{className:"sf-theme-warn",children:l(kt[x])}),n&&i&&U(Fs,{variant:a?"primary":"secondary",size:"sm",className:"sf-theme-edit","aria-expanded":C?a:void 0,"aria-controls":C?`sf-theme-colours-${e}`:void 0,"aria-label":a?l("Done {name}",{name:u}):l("Edit {name}",{name:u}),onClick:i,children:a?l("Done"):l("Edit")})]}),a&&Vo("div",{id:`sf-theme-colours-${e}`,className:"sf-theme-colours",children:[U(Ps,{colors:o,onChange:w=>c?.(w)}),m&&U(Fs,{variant:"link",size:"sm",className:"sf-theme-reset",disabled:!g,onClick:()=>c?.({...m}),children:g?l("Reset {name} to the preset",{name:u}):l("Not changed")})]})]})}function tp({colors:e,name:o,nameId:t,open:r,menuId:a,labelId:n,buttonRef:s,onClick:i,onKeyDown:c,onEdit:p}){return Vo("div",{className:"sf-secttheme-btn",children:[U("button",{ref:s,type:"button",className:"sf-theme-pick","aria-expanded":r,"aria-controls":a,"aria-labelledby":`${n} ${t}`,onClick:i,onKeyDown:c,children:e?U(op,{colors:e}):U("span",{className:"sf-secttheme-nopreview","aria-hidden":"true"})}),Vo("div",{className:"sf-theme-foot",children:[U("span",{id:t,className:"sf-theme-name",children:o}),p&&U(Fs,{variant:"secondary",size:"sm",className:"sf-theme-edit","aria-label":l("Edit {name}",{name:o}),onClick:p,children:l("Edit")}),U("button",{type:"button",className:"sf-secttheme-caret","aria-hidden":"true",tabIndex:-1,onClick:i,children:U("span",{className:"sf-multi-caret",children:"\u25BE"})})]})]})}import{useCallback as Rs,useEffect as Iv,useRef as Na}from"react";function rp(e=uo()){return(o,t,r)=>{let a=Ze(e).theme;return a?a.update(o,r?{siteId:r}:void 0):Promise.reject(new _l("invalid","This backend stores no site theme."))}}function ap(e){return e.themeFromDocument?{status:"skipped",reason:"template"}:e.token?null:{status:"skipped",reason:"no-token"}}async function hv(e,o=rp()){let{themeFromDocument:t,token:r,siteId:a,patch:n}=e,s=ap({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 Ma({themeFromDocument:e,tokenRef:o,siteId:t,onResult:r}){let a=Na(null),n=Na({}),s=Me(),i=Na(r);i.current=r;let c=Na(null),p=Rs(x=>{if(x.status==="skipped"){let g=`skipped:${x.reason}`;if(c.current===g)return;c.current=g}else c.current=null;i.current?.(x)},[]),u=Rs(async()=>{a.current&&(clearTimeout(a.current),a.current=null);let x=n.current;n.current={};let g=await hv({themeFromDocument:e,token:o?.current,siteId:t,patch:x},rp(s));return p(g),g},[e,o,t,p,s]),m=Rs((x,g=!1)=>{let C=ap({themeFromDocument:e,token:o?.current});if(C){p(C);return}n.current={...n.current,...x},a.current&&clearTimeout(a.current),g?u():a.current=setTimeout(()=>{u()},500)},[e,o,u,p]);return Iv(()=>()=>{u()},[u]),{persist:m,flush:u}}var wv="Follow the page",aH="Follow the slideshow",kv=e=>l("Editing {name} changes it everywhere.",{name:e});function Tv({colors:e}){if(!e)return Le("span",{className:"sf-secttheme-chip sf-secttheme-chip--none","aria-hidden":"true"});let o=wo(e);return ut("span",{className:"sf-secttheme-chip","aria-hidden":"true",children:[Le("i",{style:{background:o.background}}),Le("i",{className:"sf-secttheme-chip-accent",style:{background:o.accent}})]})}function Fv({themes:e,value:o,onPick:t,onEdit:r,menuId:a,followLabel:n}){return ut("div",{className:"sf-multi-menu sf-secttheme-menu",id:a,role:"listbox",children:[n!==void 0&&ut(gv,{children:[ut("button",{type:"button",role:"option","aria-selected":o===null,className:`sf-secttheme-item${o===null?" is-active":""}`,onClick:()=>t(Ra),children:[Le(Tv,{}),Le("span",{className:"sf-secttheme-name",children:l(n)})]}),Le("div",{className:"sf-secttheme-sep",role:"presentation"})]}),o!==null&&e[o]&&Le("p",{className:"sf-secttheme-oncard",role:"presentation",children:l("{name} is on this section",{name:Tr(o)})}),e.map((s,i)=>i===o?null:Le(_a,{role:"option",index:i,colors:s,selected:!1,onPick:()=>t(i),onEdit:()=>r(i)},i))]})}function Ev({index:e,colors:o,onChange:t,onDone:r}){let a=Tr(e),n=sp();return ut("div",{className:"sf-secttheme-sheet",children:[ut("div",{className:"sf-secttheme-sheet-head",children:[Le("span",{children:a}),Le("button",{type:"button",className:"sf-secttheme-done",onClick:r,children:l("Done")})]}),Le("div",{className:"sf-secttheme-rows",children:Le(Ps,{colors:o,onChange:t,idPrefix:n})}),Le("p",{className:"sf-secttheme-warn",children:kv(a)})]})}function ip({value:e,onChange:o,followLabel:t,hint:r}){let{theme:a,setTheme:n}=ne(),s=Ho(a),i=yv(Ca),c=i?.tokenRef,p=i?.siteId??null,u=!i?.capabilities?.hasSiteTheme,{persist:m,flush:x}=Ma({themeFromDocument:u,tokenRef:c,siteId:p}),g=Ho(s),C=g.themes,w=ts(e),b=w!==null?C[w]:void 0,k=b??(C.length?ma(g):void 0),[S,I]=lp(!1),[v,L]=lp(null),F=np(null),O=np(null),A=sp(),H=bv(()=>{I(!1),L(null)},[]);Sv(()=>{if(!S&&v===null)return;let W=ge=>{F.current&&!F.current.contains(ge.target)&&(x(),H())};return document.addEventListener("mousedown",W),()=>document.removeEventListener("mousedown",W)},[S,v,H,x]);let le=W=>{o(W),H()},q=W=>{if(v===null)return;let ge=C.map((ae,Be)=>Be===v?W:ae),_={...g,themes:ge};n(_),m({selected_preset:_.selected,theme_presets:_.themes})};return ut("div",{className:"sf-secttheme",ref:F,children:[Le(vv,{label:l("Theme"),icon:Le(Cv,{}),labelId:`${A}-label`,hint:r,children:Le(tp,{colors:k,onEdit:w!==null?()=>{L(w),I(!1)}:void 0,name:b?Tr(w):l(t??wv),nameId:`${A}-value`,labelId:`${A}-label`,open:S,menuId:A,buttonRef:O,onClick:()=>{L(null),I(W=>!W)},onKeyDown:W=>{W.key==="Escape"&&(S||v!==null)&&(W.preventDefault(),H())}})}),S&&v===null&&Le("div",{onKeyDown:W=>{W.key==="Escape"&&(W.preventDefault(),H(),O.current?.focus())},children:Le(Fv,{themes:C,value:w,onPick:le,onEdit:W=>{L(W),I(!1)},menuId:A,followLabel:t})}),v!==null&&C[v]&&Le(Ev,{index:v,colors:C[v],onChange:q,onDone:()=>{x(),H(),O.current?.focus()}})]})}import{jsx as fp}from"react/jsx-runtime";import{useId as Lv}from"react";import{FieldSelect as Pv}from"efficient-easel/fields";import{SettingsField as Rv}from"efficient-easel/panel";function Av(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 Ov({label:e,options:o,fallback:t,value:r,onChange:a,placeholder:n,bare:s=!1,icon:i}){let c=Lv(),p=`${c}-label`,u=`${c}-button`,m=r??"",x=o.some(b=>b.value===m)?m:t,g=l(e),C=n===void 0?void 0:l(n),w=fp(Pv,{id:u,value:x,options:Av(o),onChange:a,placeholder:C,searchPlaceholder:C,...s?{ariaLabel:g}:{ariaLabelledBy:`${p} ${u}`},searchable:!0,groupCount:!0,inline:!0});return s?w:fp(Rv,{label:g,labelId:p,icon:i,children:w})}import{jsx as pt,jsxs as Nv}from"react/jsx-runtime";import{SettingsField as bp}from"efficient-easel/panel";import{LinkIcon as Mv}from"efficient-easel/icons";import{LinkPicker as Hv,TextLinkField as Wv}from"efficient-shell/ui";import{useEffect as gp,useMemo as Ga,useRef as Gv,useState as Wa}from"react";function cp(){return uo().auth.token}var Ha="homepage";function dp(e){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}var up=[{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 pp(e){return e.offersCommerce&&e.offersService?up:up.filter(o=>!o.needs||(o.needs==="commerce"?e.offersCommerce:e.offersService))}function Fr(e){return e===Ha?"/":`/${e}`}function mp(e){return`/journal/${e}`}function gH(e){return`/wheels/${e}`}function xp(e,o){return`${Fr(e)}#${o}`}function Bv(e){return dp(e)}function Dv(e){return typeof e=="string"?e.trim():e&&typeof e=="object"&&typeof e.text=="string"?e.text.trim():""}function Ip(...e){let o=new Set,t=[];for(let r of e)for(let a of r?.content??[]){let n=Dv(a?.props?.anchor);if(!n)continue;let s=Bv(n);!s||o.has(s)||(o.add(s),t.push({slug:s,name:n}))}return t}function bH(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 _v=()=>({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 hp(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 As(e,o){let t=_v(),r=e.pages.map(u=>({value:Fr(u.slug),label:u.title})),a=o?.pageOptions?o.pageOptions(r):r,n=a.map(u=>u.value),s=e.pages.map(u=>({label:u.title,options:Ip(...u.docs).map(m=>({value:xp(u.slug,m.slug),label:m.name}))})).filter(u=>u.options.length>0),i=u=>{switch(u){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:mp(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"}}},c=pp(e.offers).map(u=>({value:u.value,label:l(u.label),target:i(u.value),...u.value==="anchor"?{hint:t.sectionHint}:{},...u.value==="blog"||u.value==="product"?{hideWhenEmpty:!0}:{}}));if(!o)return{kinds:c,rules:{kindOf:u=>hp(u,n),targetOf:u=>u,readFilter:()=>null,withFilter:u=>u}};let p=u=>{let m=o.withFilter(u,null);return o.listingPaths.includes(m)?m:u};return{kinds:c,rules:{kindOf:u=>hp(u,n,{listingPaths:o.listingPaths,targetOf:p}),targetOf:p,readFilter:o.readFilter,withFilter:o.withFilter},filtersFor:u=>o.listingPaths.includes(u)?o.filtersFor(u):null}}function yp(e){let o=new Map;return(t="")=>{let r=cp(),a=o.get(t);if(!a||a.token===null&&r!==null){let n=r||!uo().usesBridgedToken?e(r??"",t).catch(()=>[]):Promise.resolve([]);return o.set(t,{promise:n,token:r}),n}return a.promise}}var zv=yp(async(e,o)=>{let t=o?{siteId:o}:void 0,{pages:r}=Ze();return r.linkTargets?r.linkTargets(t):(await r.list(t)).map(a=>({id:a.id,slug:a.slug,label:a.label,layout:null}))}),Uv=yp(async(e,o)=>await Ze().blog?.posts(o?{siteId:o}:void 0)??[]);function qv({value:e,onChange:o,label:t="Link",data:r,filters:a}){let n=Ga(()=>As(r,a),[r,a]),s=l(t);return pt(bp,{label:s,icon:pt(Mv,{}),children:pt(Hv,{value:e,onChange:i=>o(i),kinds:n.kinds,rules:n.rules,filtersFor:n.filtersFor,label:s})})}function Sp(){let{siteId:e,capabilities:o}=ke(),{offersCommerce:t,hasBlog:r}=o,[a,n]=Wa([]),[s,i]=Wa([]),[c,p]=Wa([]),[u,m]=Wa(null),x=Me().chrome,g=x?.products?.list,C=x?.linkFilters,w=C?void 0:x?.linkRow,b=Gv(!0);gp(()=>(b.current=!0,()=>{b.current=!1}),[]),gp(()=>{let I=!0;return zv(e??void 0).then(v=>I&&b.current&&n(v)),r&&Uv(e??void 0).then(v=>I&&b.current&&i(v)),t&&g?.().then(v=>I&&b.current&&p(v)),t&&C?C.load(e).catch(()=>null).then(v=>I&&b.current&&m(()=>v)):m(null),()=>{I=!1}},[e,t,r,g,C]);let k=Ga(()=>({pages:a.filter(I=>!Hd(I.slug)).map(I=>({slug:I.slug,title:I.label,docs:[I.layout]})),posts:r?s.map(I=>({slug:I.slug,title:I.title})):[],products:t?c.map(I=>({href:I.href,name:I.name})):[],offers:{offersCommerce:t,offersService:r}}),[a,s,c,t,r]),S=Ga(()=>u?u(k.pages):null,[u,k]);return{data:k,filters:S,pages:a,offersCommerce:t,HostLinkRow:w}}function MH({label:e,icon:o,text:t,onTextChange:r,link:a,onLinkChange:n}){let{data:s,filters:i}=Sp(),c=Ga(()=>As(s,i),[s,i]),p=l(e);return pt(bp,{label:p,icon:o,children:pt(Wv,{label:p,text:t,onTextChange:r,link:a,onLinkChange:u=>n(u),kinds:c.kinds,rules:c.rules,filtersFor:c.filtersFor})})}function Cp({value:e,onChange:o,label:t="Link"}){let r=typeof e=="string"?e:"",{data:a,filters:n,pages:s,offersCommerce:i,HostLinkRow:c}=Sp(),p=a.pages.map(m=>Fr(m.slug)),u=i&&c&&(r==="/"||p.includes(r))?c:void 0;return Nv("div",{children:[pt(qv,{value:r,onChange:o,label:t,data:a,filters:n}),u&&pt(u,{value:r,onChange:o,pages:s})]})}var Io={min:10,max:200,step:10};function vp(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 $v="sf-pad-top-phone",jv="sf-pad-bottom-phone",Kv="--sf-pad-t-phone",Vv="--sf-pad-b-phone",Xv="sf-pad-left-phone",Yv="sf-pad-right-phone",Zv="--sf-pad-l-phone",Qv="--sf-pad-r-phone";function WH(e,o,t,r,a,n,s,i){let c=vp(e,o)??{},p={},u=["sf-section-pad"];typeof t=="number"&&(u.push($v),p[Kv]=`${t}px`),typeof r=="number"&&(u.push(jv),p[Vv]=`${r}px`);let m={};return typeof a=="number"&&(m.paddingLeft=a),typeof n=="number"&&(m.paddingRight=n),typeof s=="number"&&(u.push(Xv),p[Zv]=`${s}px`),typeof i=="number"&&(u.push(Yv),p[Qv]=`${i}px`),u.length===1&&vp(e,o)===void 0&&!Object.keys(m).length?null:{className:u.join(" "),style:{...c,...m,...p}}}var wp=e=>typeof e=="number"?e:void 0;function kp(e,o,t){let r=wp(e)??t,a=wp(o);return r===void 0?a:a===void 0?r:r+a}function GH(e,o={}){return{top:kp(e.padTop,e.sectionPaddingTop,o.top),bottom:kp(e.padBottom,e.sectionPaddingBottom,o.bottom)}}var Jv=["auto","fixed","screen"],ew=["px","%"];var ow="var(--sf-header-h, 88px)",Os={min:40,max:2e3,step:10,fallback:600},Bs={min:10,max:200,step:5,fallback:100},tw="sf-section-minh",Tp={base:"--sf-section-minh",small:"--sf-section-minh-s"},Ep=e=>typeof e=="string"&&Jv.includes(e),rw=e=>typeof e=="string"&&ew.includes(e);function za(e){let o=Ep(e.sectionHeightMode)?e.sectionHeightMode:"auto",t=o==="screen"?"%":rw(e.sectionHeightUnit)?e.sectionHeightUnit:"px",r=o==="screen"?Bs.fallback:Os.fallback,a=typeof e.sectionHeightValue=="number"?e.sectionHeightValue:r;return{mode:o,value:a,unit:t}}function Lp(e){let{mode:o,value:t,unit:r}=za(e);if(o==="auto")return;if(o==="fixed"&&r==="px")return[`${t}px`,null];let a=t/100,n=s=>o==="screen"?`(100${s} - ${ow})`:`100${s}`;return[`calc(${n("vh")} * ${a})`,`calc(${n("svh")} * ${a})`]}function aw(e){let o=Lp(e);if(!o)return;let[t,r]=o;return{display:"grid",[Tp.base]:t,...r?{[Tp.small]:r}:{}}}var UH=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),Ot="Height",nw="sf-section-minh-phone",Fp={base:"--sf-section-minh-p",small:"--sf-section-minh-ps"};function Ds(e){return Ep(e.sectionHeightModePhone)}function qH(e){return za({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone})}function lw(e){let o=aw(e),t=Ds(e)?Lp({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone}):void 0;if(!o&&!t)return null;let r=[tw],a={...o??{}};return t&&(r.push(nw),a[Fp.base]=t[0],t[1]&&(a[Fp.small]=t[1])),{className:r.join(" "),style:a}}function $H(e){return lw(e)!==null}var sw=["column","row","tabs"],Pp="Direction",iw={column:"Stacked",row:"One row",tabs:"Tabs"},Rp={Flex:sw,HeroGroup:["column","row"]},fw={Flex:"row",HeroGroup:"column"},cw={column:"flex-col",row:"flex-row",tabs:"flex-col"};function Ua(e,o){return Rp[e].includes(o)?o:fw[e]}function KH(e,o){return cw[Ua(e,o)]}function Ap(e){return Rp[e].map(o=>({label:iw[o],value:o}))}var _s=[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"Space between",value:"between"},{label:"End",value:"end"}],Dp=[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"Stretch",value:"stretch"}],_p="Wrap",Ns=[{label:"Wrap",value:"wrap"},{label:"No wrap",value:"nowrap"}],Op={start:"justify-start",center:"justify-center",between:"justify-between",end:"justify-end"},Bp={start:"items-start",center:"items-center",stretch:"items-stretch"};function XH(e,o){let t=typeof e=="string"&&e in Op?Op[e]:"",r=typeof o=="string"&&o in Bp?Bp[o]:"";return[t,r].filter(Boolean).join(" ")}function YH(e){return e===!0||e==="wrap"?"flex-wrap":""}var Ms="Block widths",qa=[{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]}],Er="[&>*]:min-w-0 [&>*]:flex-1 [&>*]:basis-0",dw={equal:Er,bigLeft:`${Er} [&>*:first-child]:min-[800px]:grow-[2]`,bigRight:`${Er} [&>*:last-child]:min-[800px]:grow-[2]`,biggerLeft:`${Er} [&>*:first-child]:min-[800px]:grow-[3]`,biggerRight:`${Er} [&>*:last-child]:min-[800px]:grow-[3]`};function ZH(e){return typeof e=="string"?dw[e]??"":""}var Np="Columns on phone",Hs=1,Mp=3,uw={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 QH(e){let o=Number(e);return uw[o]??"max-[800px]:flex-col"}var Hp="Block spacing",Ws=[{label:"Each block",value:"each"},{label:"Gap only",value:"gap"}],pw="sf-box-gap-only";function JH(e){return e==="gap"?pw:""}var zp="sf.gapContainer",Xo={min:-32,max:64,step:2},Up={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},Bt={Grid:24,Flex:24,FooterGroup:16,HeroGroup:0,Events:24,GalleryB:8,ProductGrid:2},mw=new Set(["Events","GalleryB"]);function Gs(e,o,t){if(typeof o=="number"&&Number.isFinite(o)&&o>=Xo.min)return o;if(typeof o=="string"){let r=Up[e]?.[o];if(typeof r=="number")return r}return typeof t=="number"&&Number.isFinite(t)?t:Bt[e]}var xw="sf-gap-overlap",Iw="--sf-gap-overlap",qp="--sf-block-gap",hw="--sf-block-gap-rem",mt={min:0,max:Xo.max,step:Xo.step};function gw(e){if(typeof e!="number"||!Number.isFinite(e))return null;let o=Math.min(Math.max(Math.round(e),mt.min),mt.max);return o-o%mt.step}function o5(e){let o=gw(e);return o===null?{}:{[qp]:`${o}px`,[hw]:`${o/16}rem`}}var Wp="sf-gap-zone",Gp="--sf-gap-len";function zs(e,o){return typeof o=="number"&&Number.isFinite(o)&&o>=Xo.min?!0:typeof o=="string"&&typeof Up[e]?.[o]=="number"}var bw={block:"sf-gap-overlap-block",inline:"sf-gap-overlap-inline",both:"sf-gap-overlap-both"};function t5(e,o,t){if(!zs(e,o)){let a=`${Bt[e]}px`,n=mw.has(e)?`var(--sf-card-gap, ${a})`:a;return{className:` ${Wp}`,style:{[Gp]:`var(${qp}, ${n})`}}}let r=Gs(e,o);return r>=0?{className:` ${Wp}`,style:{[Gp]:`${r}px`}}:{className:` ${xw} ${bw[t]}`,style:{gap:"0px",[Iw]:`${-r/2}px`}}}var $p=["transparent","var(--section-bg)","var(--surface)","var(--surface-2)"],jp={transparent:"No fill","var(--section-bg)":"Section band","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},$a="var(--section-bg)",ja="inherit";function a5(e,o){return e===ja?$a:e===void 0?o:Ka(e)}var yw=/var\(\s*--(surface-2|surface|line)\s*(?=[,)])/g;function Ka(e){return e.replace(yw,"var(--site-$1")}function Kp(e,o){return e===ja?!0:e===void 0&&o===$a}var Vp=["transparent","var(--wheel-stage)","var(--surface)","var(--surface-2)"],Xp={transparent:"No fill","var(--wheel-stage)":"Image stage","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},Dt="var(--wheel-stage)",Va="transparent",Lr="inherit";function s5(e,o){return Ka(Us(e,o))}function Us(e,o){return e===Lr?Dt:e==null?o:e===!0?Dt:e===!1?Va:e}function i5(e){return typeof e=="string"&&e!==Lr?Ka(e):Dt}function f5(e){return e!==Va&&e!=="none"&&e!==""}function Yp(e,o){return e===Lr||e===!0?!0:e==null?o===Dt:!1}var Zp="inherit",Xa="fixed",Qp=e=>typeof e!="number"&&e!==Xa,Sw="var(--sf-heading-max, 9999px)";function d5(e,o,t,r){if(typeof e=="number")return`${e}px`;if(e===Xa)return o;let a=r?`var(--size-${r}, ${o})`:o;return t==="heading"?`min(${a}, ${Sw})`:a}var We={min:1e3,max:2e3,step:50,default:1600};function Jp(e){return{maxWidth:e,marginInline:"auto",width:"100%"}}function p5(e,o){if(e!==!1)return null;let t=typeof o=="number"?o:We.default;return Jp(t)}var em="--sf-site-width",Ya=`var(${em},${We.default}px)`,m5=`max-w-[${Ya}]`,x5=`max-w-[${We.default}px]`;function Cw(e){return typeof e!="number"||!Number.isFinite(e)?We.default:Math.round(Math.min(Math.max(e,We.min),We.max))}function I5(e){let o=Cw(e);return o===We.default?{}:{[em]:`${o}px`}}var Oo={min:0,max:80,step:4,default:40},om="--sf-site-gutter",Qe=`var(${om},${Oo.default}px)`,vw=`px-[${Qe}]`;var Yo={md:`min(24px,${Qe})`,sm:`min(20px,${Qe})`,frame:`min(24px,${Qe})`,tabs:`min(16px,${Qe})`},h5=[[`max-[1100px]:px-[${Yo.md}]`,"max-[1100px]:px-6"],[`max-[1100px]:px-[${Yo.tabs}]`,"max-[1100px]:px-4"],[`max-[960px]:px-[${Yo.frame}]`,"max-[960px]:px-6"],[`max-[900px]:px-[${Yo.md}]`,"max-[900px]:px-6"],[`max-[800px]:px-[${Yo.md}]`,"max-[800px]:px-6"],[`max-[720px]:px-[${Yo.sm}]`,"max-[720px]:px-5"],[`max-[800px]:px-[${Yo.sm}]`,"max-[800px]:px-5"],[`max-[640px]:px-[${Yo.sm}]`,"max-[640px]:px-5"],[`min-[800px]:px-[${Qe}]`,"min-[800px]:px-10"],[`max-[720px]:px-[min(24px,${Qe})]`,"max-[720px]:px-6"],[`max-[800px]:-mx-[min(20px,${Qe})]`,"max-[800px]:-mx-5"],[`max-[720px]:-mx-[min(20px,${Qe})]`,"max-[720px]:-mx-5"],[`-mx-[${Qe}]`,"-mx-10"],[vw,"px-10"]];function ww(e){return typeof e!="number"||!Number.isFinite(e)?Oo.default:Math.round(Math.min(Math.max(e,Oo.min),Oo.max))}function g5(e){let o=ww(e);return o===Oo.default?{}:{[om]:`${o}px`}}var Za=`min(var(--sf-page-cap,${Ya}),${Ya})`,b5=`max-w-[${Za}]`,y5=`max-w-[min(var(--sf-page-cap,${We.default}px),${We.default}px)]`,tm="--sf-hero-cap",kw=`var(${tm},none)`,S5=`max-w-[${kw}]`,qs="--sf-hero-bleed-m",$s="--sf-hero-bleed-w",C5=`var(${qs},calc(50% - 50vw))`,v5=`var(${$s},100vw)`,w5=`mx-[var(${qs},calc(50%_-_50vw))]`,k5=`w-[var(${$s},100vw)]`,js="--sf-hero-chrome-x",Ks="--sf-hero-chrome-cap";function T5(e){return e===!0?{[tm]:Za,[qs]:"auto",[$s]:"100%",[js]:"24px",[Ks]:"none"}:{}}var Vs=`calc(${Ya} - ${Qe}*2)`,F5=`max-w-[${Vs.replace(/ /g,"_")}]`;var Tw="--sf-chrome-cap",Fw=`var(${Tw},${Vs})`,E5="data-page-width";function L5(e){return e==="full"?"full":null}function P5(e){return e==="full"?null:Jp(e==="content"?Vs:Fw)}function R5(e){if(e==="full")return"full";if(e==="content")return"content"}var Ew=["contained","page","full"],rm=["full","page"],Pr={full:"Full width",page:"Content width"},Xs="inherit",Lw=e=>typeof e=="string"&&Ew.includes(e),Pw=e=>e===Xs;function Ys(e,o){let t=typeof e.pageWidth=="number"?e.pageWidth:We.default;return Pw(e.widthMode)?{mode:"full",pageWidth:t,inherited:!0}:e.widthMode==="contained"?{mode:"page",pageWidth:t,inherited:!1}:Lw(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 Zs(e){return Ys(e,"page").mode==="full"}import{jsx as Rw}from"react/jsx-runtime";import{createContext as Aw,useContext as Ow}from"react";var Bw=2,Dw=Bw+1,am=Aw(2);function nm({tier:e,children:o}){return Rw(am.Provider,{value:e,children:o})}function Qs(e){let o=Ow(am);return Dw+Math.max(0,e-o)}import{withStyleKind as vk}from"efficient-easel/style-clipboard";function Rr(e){for(let[o,t]of Object.entries(e))t&&typeof t=="object"&&!To(t)&&vk(t,`section:${o}`);return e}function bm(){return null}function oi(e){if(!e.trim())throw new Error("noGlyph() needs a reason naming the ruling that decided it.");return h(bm,{},e)}function wk(e){return e.type===bm}function Jo(e){return wk(e)?void 0:e}function Nt(e,o){return l("{value} from {from}",{value:e,from:o})}function kk(){let{appState:e}=Ht(a=>a),o=e.data.root?.props??{},{mode:t,pageWidth:r}=Ys(o,"full");return t==="page"?Nt(`${r}px`,l("the page")):t==="contained"?Nt(l("Contained"),l("the page")):Nt(l("Full"),l("the page"))}function Tk(){let{blockGap:e}=ne();return e===null?l("this container's own spacing"):Nt(`${e}px`,l("Site styles"))}function Fk({inherited:e,onReset:o,label:t}){return h(ho,{words:oe()?.panel,label:l(t),changed:!e,detail:Tk(),onReset:o})}function Ek({inherited:e,onReset:o,label:t}){return h(ho,{words:oe()?.panel,label:l(t),changed:!e,detail:kk(),onReset:o})}function Wt({value:e,onChange:o,label:t,placeholder:r,hint:a,multiline:n,hideable:s=!0,markup:i=!0}){let{text:c,hidden:p}=$e(e),u=ei(null),m=ei(null),x=S=>o(s?{text:S,hidden:p}:S),g=()=>o({text:c,hidden:!p}),C=s&&p,w=Nw(),b=a?Ok(a)?h("span",{className:"sf-hint-keep sf-hint-while-typing",children:l(a)}):h(pu,{children:l(a)}):void 0,k=p?l("Show {label} on the slide",{label:l(t)}):l("Hide {label} on the slide",{label:l(t)});return h(Ie,{label:l(t),icon:h(fk,{}),htmlFor:w,className:C?"is-hidden":void 0,hint:b,action:s?h(Ja,{content:k,children:h("button",{type:"button",className:"sf-field-eye","aria-pressed":p,"aria-label":k,onClick:g,children:p?h(qe,{name:"eye-off",size:14}):h(qe,{name:"eye",size:14})})}):void 0,children:Mt("div",{className:"sf-copybox",children:[i&&h(ps,{target:n?m:u,value:c,onChange:x}),n?h("textarea",{id:w,ref:m,value:c,placeholder:r===void 0?void 0:l(r),onChange:S=>x(S.target.value)}):h("input",{id:w,ref:u,type:"text",value:c,placeholder:r===void 0?void 0:l(r),onChange:S=>x(S.target.value)})]})})}function M4(e,o){return{...e,[br]:o}}function H4(e){let o=e[Te];if(!o)throw new Error("withOffPage: the field holds no authored text");return{...e,[Te]:{...o,offPage:!0}}}function en(e){return!e||typeof e!="object"?!1:e[Te]?.offPage===!0}function W4(e){let o=e[Te];if(!o)throw new Error("withIdentifier: the field holds no authored text");return{...e,[Te]:{...o,identifier:!0}}}function z4(e,o){if(!e[Te])throw new Error("inOwnBox: the field holds no authored text");let{[Bu]:t,...r}=e;return{...r,[Is]:!0,render:o}}var Lk=new Set(dt),Gt=(e,o)=>{let t={...o,[Te]:e};if(!Lk.has(e.control))return t;let r=o.render;return{...xs(t,"authored-copy"),render:a=>h(Hu,{name:a.name,children:r(a)})}},U4="Everything else on this block comes from the linked post. Unlink it to edit by hand.",Pk="Select a word, then press the highlighter.",Rk="A short name so a link can jump straight to this section, like yoursite.com/page#about.",Ak=new Set([Pk]),Ok=e=>Ak.has(e);function q4(e,o,t){return Gt({control:"text",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>h(Wt,{value:r,onChange:a,label:e,placeholder:o,hint:t})})}function $4(e,o,t){return Gt({control:"textarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>h(Wt,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0})})}function Bk(e,o,t){return Gt({control:"plainText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>h(Wt,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1,markup:!1})})}function j4(e,o,t){return Gt({control:"copyText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>h(Wt,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1})})}function K4(e){return{type:"custom",[gr]:{label:e},render:({value:o,onChange:t})=>h(Cp,{value:$d(o),onChange:t,label:e})}}function V4(e,o,t){return Gt({control:"plainTextarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>h(Wt,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0,hideable:!1})})}var ym={Design:Hw,Animation:cm};function Sm(e,o){return e.includes("Design")?o!=="Design":null}function Dk({label:e}){return h(uk,{title:l(e),level:Qs(1)})}function _k({level:e,label:o}){return e===1?h(Dk,{label:o}):h(Ar,{label:o})}function Cm(e,o){return{type:"custom",[wa]:{label:e,level:o},render:()=>h(_k,{level:o,label:e})}}function ro(e){return Cm(e,2)}function X4(e){return{type:"custom",render:()=>h(Nk,{text:e})}}function Nk({text:e}){return h("p",{className:"sf-note",children:l(e)})}function Y4(e){return Cm(e,1)}function Z4(e){return To(e)!==null&&e?.tabs!==void 0}var lm=new Map;function on(e,o){let t=`${e}\0${o?o.join(""):""}`,r=lm.get(t)??{type:"custom",tabs:o,[wa]:{label:e,level:1},bucket:e,marker:!0,render:()=>h(Qo,{})};return lm.set(t,r),r}var sm=new Map;function ti(e){let o=sm.get(e)??{type:"custom",[wa]:{label:e,level:1},designGroup:e,marker:!0,...e==="Content"?{}:{fold:e},render:()=>h(Qo,{})};return sm.set(e,o),o}function Mk(e){let o=e;return o?.marker===!0&&typeof o.fold=="string"?o.fold:null}function vm(e,o){return Mk(e)===o?e:{...e,marker:!0,fold:o,render:()=>h(Qo,{})}}function wm(e){let o=e;if(o.marker===!0&&o.fold===void 0)return e;let{fold:t,...r}=e;return{...r,marker:!0,render:()=>h(Qo,{})}}function Ar({label:e}){return h(pk,{title:l(e),level:Qs(2)})}function km({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 Mt("div",{className:"sf-swatches",children:[e.map(i=>{let c=r?.[i]?l(r[i]):i;return h(Ja,{content:c,children:h("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":c})},i)}),h("span",{className:"sf-swatch-hex",children:s})]})}function Q4(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=Kp(t,o);return h(Ie,{label:l(e),icon:h(zw,{}),changed:!a,action:h(ho,{words:oe()?.panel,label:l(e),changed:!a,detail:l("the theme's section background"),onReset:()=>r(ja)}),children:km({swatches:$p,current:a?$a:t??o??"",onPick:r,names:jp})})}}}function Hk(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=t,n=Yp(a,o);return h(Ie,{label:l(e),icon:h(ek,{}),changed:!n,action:h(ho,{words:oe()?.panel,label:l(e),changed:!n,detail:l("the theme's image stage"),onReset:()=>r(Lr)}),children:km({swatches:Vp,current:n?Dt:Us(a,o),onPick:r,names:Xp})})}}}function tn(e=t=>t,o){return Rr({_gSectionTheme:ro(hu),sectionAccent:{type:"custom",render:({value:t,onChange:r})=>h(ip,{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:c,disabled:p=!1}){let u=i!==void 0&&Number.isFinite(i)&&i>=e&&i<=o;return h("div",{className:u?"sf-slider has-notch":"sf-slider",style:u?{"--sf-notch":(i-e)/(o-e)}:void 0,children:h(Ck,{min:e,max:o,step:t,value:r,suffix:n||void 0,showInput:s,label:c===void 0?void 0:l(c),disabled:p,size:"sm",className:"sf-slider-track",onChange:m=>{m!==null&&m!==r&&a(m)}})})}function _t(e,o,t,r,a,n,s="",i){return{type:"custom",render:c=>h(Ie,{label:l(e),icon:Jo(o),action:i?i("storedValue"in c?c.storedValue:c.value,c.onChange):void 0,children:je({min:t,max:r,step:a,value:typeof c.value=="number"?c.value:n,suffix:s,ariaLabel:e,onChange:c.onChange})})}}function Tm(e,o){let{min:t,max:r,step:a=1,unsetLabel:n,hint:s,restTrack:i,unsetMark:c,icon:p}=o;return{type:"custom",render:({value:u,onChange:m})=>{let x=typeof u=="number"?u:null,g=x===null;return h(Ie,{label:l(e),icon:p?Jo(p):void 0,value:g?c||n===void 0?void 0:l(n):`${x}px`,changed:!g,action:c?im(c,{changed:!g,onReset:()=>m(null)}):h(ho,{words:oe()?.panel,label:l(e),changed:!g,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 J4(e){let o=_t("Gap",h(um,{}),Xo.min,Xo.max,Xo.step,Bt[e],"px",(t,r)=>h(Fk,{inherited:!zs(e,t),onReset:()=>r(void 0),label:"Gap"}));return{type:"custom",[zp]:e,render:t=>o.render({...t,value:Gs(e,t.value,t.field?.siteGap),storedValue:t.value,onChange:r=>t.onChange(r)})}}var rn="Corners";function ri(e){return{type:"custom",render:({value:o,onChange:t})=>{let r=typeof o=="number"&&Number.isFinite(o)?o:null,a=r!==null;return h(Ie,{label:l(rn),icon:h(jw,{}),changed:a,action:im(e.mark,{changed:a,onReset:()=>t(null)}),hint:e.hint,children:h(Gk,{tier:e,px:r,onRadius:t})})}}}function Wk(e){let o=null;try{o=Mw()}catch{o=null}return[o?.values?.[e],t=>o?.onChange(e,t)]}function Gk({tier:e,px:o,onRadius:t}){let r=e.useFollowed(),a=e.useClosedReason?e.useClosedReason():null,[n,s]=Wk(e.sidesKey),i=Fo(n)??[...qo];return h(bk,{label:l(rn),value:i,corners:$l,onChange:c=>{let p=Fo(c)??[];s(p.length===qo.length?null:p)},radius:o,onRadiusChange:t,radiusMin:no,radiusMax:nt,radiusStep:e.step??1,radiusPlaceholder:String(r),disabled:a!==null,disabledReason:a??void 0})}function Fm(){return xs({type:"custom",render:()=>h(Oa,{})},"always")}function zk({label:e,changed:o=!1,onReset:t=()=>{}}){let{cornerRadiusPx:r}=ne(),a=typeof r=="number"?`${r}px`:l("not set");return h(ho,{words:oe()?.panel,label:l(e),changed:o,detail:r==null?l("the built-in corners"):Nt(a,l("Site styles")),onReset:t})}function Uk(){let{cornerRadiusPx:e}=ne();return typeof e=="number"?e:no}function qk(){return ri({sidesKey:"sectionCornerSides",useFollowed:Uk,useClosedReason:()=>Lm()?l(Em):null,mark:h(zk,{label:rn}),hint:h($k,{})})}var Em="This section runs edge to edge, so its corners sit off the page. Set Width to Content width to use them.";function Lm(){return Zs(ln())}function $k(){return h(Qo,{children:Lm()?Em:"Follows Site styles \u25B8 Basics \u25B8 Corners until you set a number here."})}function an(){return Rr({_gShape:ro("Shape"),sectionCorners:qk(),sectionCornerSides:Fm()})}function nn(){return{_gMotion:ro("Motion"),sectionAnimation:li("Entrance",h(cm,{}),[...bu],rs)}}function ai(){let e=null;try{let{appState:o,selectedItem:t}=Ht(a=>a),r=t?.props?.id?String(t.props.id):void 0;e=r?ns(o?.data,r):null}catch{e=null}return e!==null&&Zs(e)}function Pm(e){let{cornerRadiusPx:o}=ne(),t=ai(),r=typeof o=="number"?o:e,a=null;try{let{appState:s,selectedItem:i}=Ht(p=>p),c=i?.props?.id?String(i.props.id):void 0;a=c?ns(s?.data,c):null}catch{a=null}if(t||!a)return r;let n=a.sectionCorners;return ql(n)?n:r}function jk({label:e,changed:o=!1,onReset:t=()=>{}}){let r=ai(),a=Pm(no),n=r?"Site":"Section";return h(ho,{words:oe()?.panel,label:l(e),changed:o,detail:Nt(`${a}px`,r?l("Site styles"):l("the section")),onReset:t})}function Kk(){return h(Qo,{children:ai()?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 Vk(){return ri({sidesKey:"cardCornerSides",useFollowed:()=>Pm(no),mark:h(jk,{label:rn}),hint:h(Kk,{})})}function Xk(){return{type:"custom",render:()=>h(ou,{})}}function e3(){return{_gShape:ro("Shape"),cardCorners:Vk(),cardCornerSides:Fm(),cardCornersApplyAll:Xk()}}function o3(){return Zo("Justify",h(Gw,{}),_s,_s[0].value)}function t3(){return Zo("Item alignment",h(Ww,{}),Dp,"stretch")}function r3(){return Zo(_p,h(dk,{}),Ns,Ns[0].value)}function a3(){return{type:"custom",render:({value:e,onChange:o})=>{let t=qa.find(r=>r.value===e)??qa[0];return h(Ie,{label:l(Ms),icon:h(dm,{}),value:l(t.label),children:h("div",{className:"sf-gallery-layouts",role:"group","aria-label":l(Ms),children:qa.map(r=>h(Ja,{content:l(r.label),className:"sf-tile-tip",children:h("button",{type:"button","aria-pressed":t.value===r.value,"aria-label":l(r.label),onClick:()=>o(r.value),children:h("span",{className:"sf-gallery-pic",children:Yk(r.weights).map((a,n)=>h("i",{style:{gridColumn:`span ${a}`}},n))})})},r.value))})})}}}function Yk(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 n3(){return Zo(Hp,h(um,{}),Ws,Ws[0].value)}function l3(){return _t(Np,h(ak,{}),Hs,Mp,1,Hs)}function s3(e){let o=li(Pp,oi("`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)."),Ap(e),Ua(e,void 0));return{type:"custom",render:t=>o.render({...t,value:Ua(e,t.value),onChange:r=>t.onChange(r)})}}function i3(e,o,t,r,a,n){return{type:"custom",render:({value:s,onChange:i})=>h(Ie,{label:l(e),icon:h(Jl,{noun:n}),action:h(ho,{words:oe()?.panel,label:l(e),changed:!Qp(s),detail:l("the Text style in Site styles"),onReset:()=>i(Zp),defaultAction:{onPress:()=>i(Xa),title:l("Keep this section's own built-in size"),icon:h(Uw,{})}}),children:je({min:o,max:t,step:r,value:typeof s=="number"?s:a,suffix:"px",ariaLabel:e,onChange:i})})}}function f3(){return{_gCellWidth:ro("Cell width"),gridSpan:Zo("Positions",h(dm,{}),[{label:"Auto",value:""},...Array.from({length:Fa},(e,o)=>({label:o===0?"1 position":`${o+1} positions`,value:String(o+1)}))],"")}}function ln(){let e=null;try{e=Ht(o=>o).selectedItem}catch{e=null}return e?.props??{}}function Zk({min:e,max:o,step:t,px:r,label:a,onChange:n,desktopKey:s,fallback:i}){let c=ln()[s],p=Ba(void 0,c,i);return h(Qo,{children:je({min:e,max:o,step:t,value:Ba(r,c,i),readout:!1,ariaLabel:a,notch:p,onChange:n})})}function Qk({label:e,desktopKey:o,fallback:t,changed:r=!1,onReset:a=()=>{}}){let n=ln()[o],s=Ba(void 0,n,t);return h(ho,{words:oe()?.panel,label:l(e),changed:r,detail:l("{value} on desktop",{value:`${s}px`}),onReset:a})}function Jk(e){return Tm(e.label,{icon:e.icon,min:e.min,max:e.max,step:e.step,unsetLabel:"Follows Desktop",unsetMark:h(Qk,{label:e.label,desktopKey:e.desktopKey,fallback:e.fallback}),restTrack:o=>h(Zk,{...o,desktopKey:e.desktopKey,fallback:e.fallback})})}var e0={Top:"Padding top",Bottom:"Padding bottom",Left:"Padding left",Right:"Padding right"},o0={Top:hm,Bottom:mm,Left:xm,Right:Im},t0=e=>{let o=o0[e];return h(o,{})};function sn(e={}){let o=e.keys?.top??"sectionPaddingTop",t=e.keys?.bottom??"sectionPaddingBottom",r=e.group!==!1,a=b=>e0[b],n=b=>_t(a("Top"),h(hm,{}),Io.min,Io.max,Io.step,b,"px"),s=(b,k,S,I=Io)=>xo("mobile",Jk({label:a(b),icon:t0(b),desktopKey:k,min:I.min,max:I.max,step:I.step,fallback:S})),i=e.top??Io.min,c=e.bottom??Io.min,p="sectionPaddingLeft",u="sectionPaddingRight",m=e.sideBounds??Io,x=e.side??m.min,g=e.sidePhone??x,C=e.phone===!0,w=b=>C?xo("desktop",b):b;return Rr({...r?{_gSpacing:ro("Padding")}:{},[o]:w(n(i)),...C?{[vr(o)]:s("Top",o,i)}:{},...e.only==="top"?{}:{[t]:w(_t(a("Bottom"),h(mm,{}),Io.min,Io.max,Io.step,c,"px")),...C?{[vr(t)]:s("Bottom",t,c)}:{}},...e.sides?{[p]:w(_t(a("Left"),h(xm,{}),m.min,m.max,m.step,x,"px")),...C?{[vr(p)]:s("Left",p,g,m)}:{},[u]:w(_t(a("Right"),h(Im,{}),m.min,m.max,m.step,x,"px")),...C?{[vr(u)]:s("Right",u,g,m)}:{}}:{}})}var r0={contained:"Contained",page:"Page",full:"Full"},Qa="Width";function fn(e,o=rm,t=!0){let r=o.map(a=>({label:Pr[a]??r0[a],value:a}));return Rr({...t?{_gWidth:ro(Qa)}:{},widthMode:{type:"custom",render:({onChange:a,field:n})=>h(Ie,{label:l(Qa),icon:h(ck,{}),action:t?h(Ek,{inherited:n?.inherited??!1,onReset:()=>a(Xs),label:Qa}):void 0,children:ni({options:r,value:n?.currentValue||e,onChange:a,ariaLabel:Qa})})}})}function cn(){let e=r=>({type:"custom",render:({value:a,onChange:n})=>h(Ie,{label:Ot,icon:Jo(h(ok,{})),action:r?r(n):void 0,children:ni({options:[{label:"Auto",value:"auto"},{label:"Fixed",value:"fixed"},{label:"Screen",value:"screen"}],value:["auto","fixed","screen"].includes(a)?a:"auto",onChange:n,ariaLabel:Ot})})}),o=()=>({type:"custom",render:({value:r,onChange:a,field:n})=>{let s=n?.unit==="%"?"%":"px",i=s==="%"?Bs:Os;return h("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:Ot,onChange:a})})}}),t=()=>li("Unit",h(pm,{}),[{label:"px",value:"px"},{label:"%",value:"%"}],"px");return Rr({_gHeight:ro(Ot),sectionHeightMode:xo("desktop",e()),sectionHeightValue:xo("desktop",o()),sectionHeightUnit:xo("desktop",t()),sectionHeightModePhone:xo("mobile",e(r=>h(a0,{onClear:()=>r(void 0)}))),sectionHeightValuePhone:xo("mobile",o()),sectionHeightUnitPhone:xo("mobile",t())})}function a0({onClear:e}){let o=ln(),t=Ds(o),r=za(o),a=l("{value} on desktop",{value:r.mode==="auto"?l("Auto"):`${r.value}${r.unit}`});return h(ho,{words:oe()?.panel,label:l(Ot),changed:t,detail:a,onReset:e})}function dn(){return{_gAnchor:ro("Anchor"),anchor:Bk("Anchor name","e.g. about",Rk)}}function c3(e,o,t){return{type:"custom",render:({value:r,onChange:a,id:n,name:s})=>{let i=`${n??s??e}-datetime`,c=Date.parse(typeof r=="string"?r:"");return h(Ie,{label:l(e),icon:o,htmlFor:i,hint:t===void 0?void 0:l(t),children:h(yk,{id:i,value:Number.isFinite(c)?new Date(c):null,onChange:p=>a(p?p.toISOString():"")})})}}}function xt(e,o,t){return{type:"custom",render:({value:r,onChange:a,id:n,name:s})=>{let i=typeof r=="boolean"?r:o,c=`${n??s??e}-label`;return h(Ie,{label:l(e),labelId:c,icon:t,action:h(xk,{checked:i,onChange:a,ariaLabelledBy:c})})}}}function d3(){return{type:"custom",render:({value:e,onChange:o,id:t,name:r})=>{let a=`${String(t??r??"pageBackground")}-colour`;return h(Ie,{label:l("Background"),icon:h(gm,{}),htmlFor:a,action:h(mo,{id:a,label:"Background",value:es(e),onChange:o})})}}}function u3(e,o){return{type:"custom",render:({value:t,onChange:r})=>h(Ie,{label:l(e),action:mo({value:t||o,onChange:r,label:e})})}}var n0=[{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 Rm({label:e,value:o,onChange:t,points:r=n0}){let a=r.map(n=>({...n,label:l(n.label),...n.title?{title:l(n.title)}:null}));return h(gk,{label:l(e),value:o,points:a,onChange:t})}function p3(e,o=Sk,t="mediaImage"){return{type:"custom",render:({value:r,onChange:a})=>h("div",{className:"sf-focal-row",children:h(l0,{label:e,value:r||o,onChange:a,imageProp:t})})}}function l0({label:e,value:o,onChange:t,imageProp:r}){let{selectedItem:a}=Ht(s=>s),n=a?.props?.[r];return h(Uu,{label:e,value:o,onChange:t,image:typeof n=="string"?n:void 0})}var s0=Yl([]);function m3(e,{stacking:o,fallback:t=Ea}){return{type:"custom",render:({value:r,onChange:a})=>{let n=po.includes(r)?r:t;return o?h(i0,{label:e,value:n,onChange:a}):Am({label:e,value:n,onChange:a,points:s0})}}}function i0({label:e,value:o,onChange:t}){let{appState:r,selectedItem:a}=Ht(i=>i),n=a?.props?.id?String(a.props.id):void 0,s=n?Ql(r?.data,n):[];return Am({label:e,value:o,onChange:t,points:Yl(s,n)})}function Am({label:e,value:o,onChange:t,points:r}){let a=r.find(n=>n.disabled);return h(Ie,{label:l(e),icon:h(nk,{}),hint:a?.title?l(a.title):void 0,children:Rm({label:e,value:it(o),onChange:t,points:r})})}var x3={top:h(Yw,{}),right:h(Xw,{}),bottom:h(Kw,{}),left:h(Vw,{})};function I3(e,o,t,r,a,n){let s=u=>o.find(m=>m.value===u),i=u=>({value:u,label:"",disabled:!0,title:r}),c=u=>{let m=o.find(g=>g.cell===u);if(!m)return i(`missing-${u}`);let x=n?.[u];return x?{value:m.value,label:m.label,icon:x}:{value:m.value,label:m.label}},p=[i("corner-top-left"),c("top"),i("corner-top-right"),c("left"),i("centre"),c("right"),i("corner-bottom-left"),c("bottom"),i("corner-bottom-right")];return{type:"custom",render:({value:u,onChange:m})=>{let x=o.some(g=>g.value===u)?u:t;return h(Ie,{label:l(e),icon:a,value:s(x)?.label?l(s(x).label):"",children:Rm({label:e,value:x,onChange:m,points:p})})}}}var f0="\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 c=i.options??t,p=i.fallback??r,u=c.some(m=>m.value===n)?n:p;return h(Ie,{label:l(e),icon:Jo(o),children:h(Ik,{value:u,ariaLabel:l(e),onChange:s,options:[...a?[{label:l(a),value:f0,disabled:!0}]:[],...c.map(m=>({label:l(m.label),value:m.value}))]})})}}}function h3(e,o,t){return{type:"custom",options:o,render:({value:r,onChange:a,field:n})=>h(Zu,{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 g3(e,o={}){return{type:"custom",render:({value:t,onChange:r})=>{let a={value:t,onChange:r,...o};return h(e,{...a})}}}function ni({options:e,value:o,onChange:t,ariaLabel:r,disabled:a=!1}){return h(mk,{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 b3=[{label:"Image",value:"image"},{label:"Video",value:"video"}];function li(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})=>h(Ie,{label:l(e),icon:Jo(o),children:ni({options:a,value:a.some(c=>c.value===n)?n:n||i?.currentValue||r,onChange:s,ariaLabel:e})})}}function y3(e,o,t){return{type:"custom",[jd]:!0,render:({value:r,onChange:a})=>h(Xu,{value:r||"",onChange:a,label:e,accept:o,placeholder:t})}}function S3({value:e,onChange:o,label:t}){let r=e||{},a=!!r.pending,n=a?"var(--fg-dim, #888)":r.ok?"#1d9e75":"#d85a30",s=(i,c)=>o({...r,[i]:c===""?void 0:Number(c)});return Mt(Ie,{label:l(t),icon:h(Js,{}),children:[h("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&&h("div",{style:{marginTop:6,fontSize:12,lineHeight:1.4,color:n},children:l(r.status)}),h("div",{style:{marginTop:6,fontSize:11,color:"var(--fg-dim, #999)"},children:l("Coordinates from OpenStreetMap")}),h("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&&Mt("div",{style:{marginTop:8,display:"grid",gap:8},children:[h(Ie,{label:l("Latitude"),icon:h(Js,{}),children:h("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)})}),h(Ie,{label:l("Longitude"),icon:h(Js,{}),children:h("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 c0(e,o){return o===null||o<0||o>=e.length?"":e[o]?.text??""}function d0(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 u0(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 si={label:"Ticker items",icon:h(rk,{})};function C3(e,o,t,r){return{type:"custom",[Te]:{control:"textList",label:e,placeholder:t,itemKey:"text",rendering:r},render:({value:a,onChange:n})=>h(ii,{label:e,icon:Jo(o),items:Array.isArray(a)?a:[],placeholder:t,onChange:n,markup:r==="markup"})}}function ii({label:e,icon:o,items:t,placeholder:r,onChange:a,markup:n=!1}){let s=ei(null),[i,c]=fm(null),p=m=>m.map(x=>({text:x?.text??""})),u=m=>{let x=u0(t,m,i);x===null&&(s.current=null),c(x),a(p(m))};return h(hk,{label:l(e),icon:o,noun:l("item"),items:t,onChange:u,newItem:()=>({text:""}),open:null,onOpen:()=>{},renderItem:()=>null,above:n?h(ps,{target:s,value:c0(t,i),onChange:m=>a(d0(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,g)=>h("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:C=>g({text:C.target.value}),onFocus:C=>{s.current=C.currentTarget,c(x)}})})}function Om(e,o){let t=`${e.label} \u2014 row ${o+1}`;return Gt({control:"plainText",label:t,placeholder:e.placeholder,offPage:e.offPage},{type:"custom",render:({value:r,onChange:a})=>h(Wt,{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 Bm(e){return{_gCards:ro("Cards"),coverIndex:Zo("Cover image",h(tk,{}),Gu,String(1),e?.coverHint??"A card's opening picture \u2014 a card pinned to a finish keeps its own."),imageBackground:Hk("Image background",Va),cardImage:p0(),spinOnHover:xt("Rotate on hover",e?.spinDefault??!0,h(sk,{}))}}function Dm(){return{outline:Zo("Card outline",h(ik,{}),vs,Ss),indexBadge:Zo("Card number",h(pm,{}),Cs,ys),showBadge:xt("Product badge",!0,h(Jl,{noun:"tag"}))}}function _m(e){let o=e?.bottomDefault??!0;return{_gShowOnCard:ro("Show on a card"),showCardPrice:xt("Price",!0,h(Zw,{})),showCardFinishes:xt("Finish swatches",!0,h(Qw,{})),showCardSizes:xt("Sizes",o,h(lk,{})),showCardBuy:xt("Buy button",o,h(qw,{})),showCardPage:xt("Page button",o,h(gm,{}))}}function p0(){return Tm("Card image",{min:no,max:nt,step:tu,hint:"Rounds the picture. The card's own corner is in Site styles."})}function v3(){return ri({sidesKey:"cornerSides",step:ru,useFollowed:()=>no,mark:h(m0,{label:au}),hint:l("Rounds the picture. Left alone it stays square.")})}function m0({label:e,changed:o=!1,onReset:t=()=>{}}){return h(ho,{words:oe()?.panel,label:l(e),changed:o,onReset:t})}function w3(){return{type:"custom",render:({value:e,onChange:o})=>h(x0,{value:typeof e=="string"?e:"",onChange:o})}}function x0({value:e,onChange:o}){let[t,r]=fm(null),a=Kl.filter(s=>t===null||Lo[s].across===t),n=e&&e in Lo?Lo[e]:null;return Mt(Qo,{children:[h(Ie,{label:l("Photos in a row"),icon:h($w,{}),children:Mt("div",{className:"sf-gallery-filter",children:[h("button",{type:"button","aria-pressed":t===null,onClick:()=>r(null),children:l("All")}),lu.map(s=>h("button",{type:"button","aria-pressed":t===s,onClick:()=>r(s),children:s},s))]})}),h(Ie,{label:l("Layout"),icon:h(Jw,{}),value:n?l(n.label):l("Not chosen"),hint:l("{n} of {total} layouts",{n:a.length,total:Kl.length}),children:h("div",{className:"sf-gallery-layouts",children:a.map(s=>h(Ja,{content:l(Lo[s].label),className:"sf-tile-tip",children:h("button",{type:"button","aria-pressed":e===s,"aria-label":l(Lo[s].label),onClick:()=>o(e===s?"":s),children:h("span",{className:"sf-gallery-pic",children:Lo[s].desktop.map(([i,c],p)=>h("i",{style:{gridColumn:`span ${i}`,gridRow:`span ${c}`}},p))})})},s))})})]})}import{jsx as un,Fragment as I0,jsxs as Nm}from"react/jsx-runtime";import{Button as Mm,Dialog as h0}from"efficient-shell/ui";function g0(e){return lt("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 Hm({count:e,onCancel:o,onConfirm:t}){return Nm(h0,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Clear this site\u2019s colors?"),footer:Nm(I0,{children:[un(Mm,{variant:"secondary",onClick:o,children:l("Cancel")}),un(Mm,{variant:"danger",onClick:t,children:l("Clear colors")})]}),children:[un("p",{children:g0(e)}),un("p",{className:"mt-2 font-medium",children:l("This cannot be undone.")})]})}var v0=oi("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");function w0(){return et("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",children:et("path",{d:"M12 5v14M5 12h14"})})}var k0="Reset color",T0={selected:0,themes:[]};function F0(e){e(T0)}function zm({value:e,onChange:o}){let t=e?.themes??[],r=t.length===0,a=Ho(e),[n,s]=Gm(!1),i=C0(),[c,p]=Gm(null),u=(k,S)=>{o({...a,themes:a.themes.map((I,v)=>v===k?S:I)})},m=ma(a).accent,x=new Set(a.themes.map(k=>k.brandInk).filter(Boolean)),g=od.filter(k=>!x.has(k)).map(k=>td(m,k)),C=[...a.themes,...g],w=k=>{if(k<a.themes.length)return o({...a,selected:k});let S=[...a.themes,C[k]];o({...a,themes:S,selected:S.length-1})},b=()=>{let k=[...a.themes,{...wo(a.themes[a.selected])}];o({...a,themes:k,selected:k.length-1}),p(k.length-1)};return Wm(b0,{children:[r?null:et(S0,{label:l(k0),icon:Jo(v0),labelId:"sf-theme-reset",action:et(y0,{label:l("all theme colors"),words:i.panel,changed:!0,onReset:()=>s(!0)})}),n&&et(Hm,{count:t.length,onCancel:()=>s(!1),onConfirm:()=>{s(!1),F0(o)}}),et("div",{className:"sf-theme-list",role:"radiogroup","aria-label":l("Theme"),children:C.map((k,S)=>et(_a,{index:S,colors:k,selected:S===a.selected,open:c===S&&S<a.themes.length,editable:S<a.themes.length,onPick:()=>w(S),onEdit:()=>p(I=>I===S?null:S),onChangeColors:I=>u(S,I)},S))}),Wm("button",{type:"button",onClick:b,className:"sf-theme-add",children:[et(w0,{}),l("Add new theme")]})]})}import{jsx as pn}from"react/jsx-runtime";import{SettingsDefaultReset as E0,SettingsField as L0}from"efficient-easel/panel";import{SquareIcon as P0}from"efficient-easel/icons";var R0="Applies to panels, cards, inputs and buttons. Round things \u2014 color swatches, switches, status dots \u2014 stay round.",fi="Corners";function Um({value:e,onChange:o,showHint:t=!0}){let r=e===null;return pn(L0,{label:l(fi),icon:pn(P0,{}),value:r?void 0:`${e}px`,changed:!r,action:pn(E0,{words:oe()?.panel,label:l(fi),changed:!r,detail:l("the built-in corners"),onReset:()=>o(null)}),hint:t?l(R0):void 0,children:pn(je,{min:no,max:nt,step:1,value:e??no,readout:!1,ariaLabel:l(fi),onChange:o})})}import{jsx as Or}from"react/jsx-runtime";import{SettingsDefaultReset as A0,SettingsField as O0,SettingsSegmented as B0}from"efficient-easel/panel";import{ShadowIcon as D0}from"efficient-easel/icons";var ci={none:"None",soft:"Soft",lifted:"Lifted"},_0="Applies to cards \u2014 products, brands, journal entries and filter cells. Round things like swatches and status dots are never shadowed.",N0={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)"},M0={labelsPx:90.25,widestLabelPx:34.6};function qm({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??Rl;return Or(O0,{label:l("Card shadow"),icon:Or(D0,{}),value:l(ci[a]),changed:!r,action:Or(A0,{words:oe()?.panel,label:l("Card shadow"),changed:!r,detail:l(ci[Rl]),onReset:()=>o(null)}),hint:t?l(_0):void 0,children:Or(B0,{options:pd.map(n=>({id:n,label:l(ci[n]),icon:Or("span",{className:"sf-shadow-chip",style:{boxShadow:N0[n]}})})),value:a,ariaLabel:l("Card shadow"),fit:M0,onChange:o})})}import{jsx as di}from"react/jsx-runtime";import{SettingsDefaultReset as H0,SettingsField as W0}from"efficient-easel/panel";import{ShadowIcon as G0}from"efficient-easel/icons";var z0="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 $m({value:e,onChange:o,showHint:t=!0}){let r=e===null;return di(W0,{label:l("Shadow color"),icon:di(G0,{}),changed:!r,action:mo({value:e??"",inherited:r?Ol:void 0,onChange:o,label:"Shadow color",after:di(H0,{words:oe()?.panel,label:l("Shadow color"),changed:!r,detail:Ol,onReset:()=>o(null)})}),hint:t?l(z0):void 0})}import{jsx as mn}from"react/jsx-runtime";import{SettingsDefaultReset as U0,SettingsField as q0}from"efficient-easel/panel";import{AlignSeparateIcon as $0}from"efficient-easel/icons";var j0="The space between the blocks inside a row, a grid or a box. Default means each one keeps the spacing it already has.",ui="Block gap",K0=Bt.Grid;function jm({value:e,onChange:o,showHint:t=!0}){let r=e===null;return mn(q0,{label:l(ui),labelId:"sf-block-gap",icon:mn($0,{}),value:r?void 0:`${e}px`,changed:!r,action:mn(U0,{words:oe()?.panel,label:l(ui),changed:!r,detail:l("each block's own spacing"),onReset:()=>o(null)}),hint:t?l(j0):void 0,children:mn(je,{min:mt.min,max:mt.max,step:mt.step,value:r?K0:e,readout:!1,ariaLabel:l(ui),onChange:o})})}import{jsx as xn}from"react/jsx-runtime";import{SettingsDefaultReset as V0,SettingsField as X0,SettingsSegmented as Y0}from"efficient-easel/panel";import{HoverIcon as Z0}from"efficient-easel/icons";var pi={none:"None",lift:"Lift",highlight:"Highlight"},Q0="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 Km({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??Al;return xn(X0,{label:l("Hover effect"),icon:xn(Z0,{}),value:l(pi[a]),changed:!r,action:xn(V0,{words:oe()?.panel,label:l("Hover effect"),changed:!r,detail:l(pi[Al]),onReset:()=>o(null)}),hint:t?l(Q0):void 0,children:xn(Y0,{options:md.map(n=>({id:n,label:l(pi[n])})),value:a,ariaLabel:l("Hover effect"),onChange:o})})}import{jsx as In}from"react/jsx-runtime";import{SettingsDefaultReset as J0,SettingsField as e1,SettingsSegmented as o1}from"efficient-easel/panel";import{ImageIcon as t1}from"efficient-easel/icons";var mi="Hero image",xi=[{followsWidth:!1,label:Pr.full},{followsWidth:!0,label:Pr.page}],r1="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 Vm({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??!1;return In(e1,{label:l(mi),icon:In(t1,{}),value:l(xi.find(n=>n.followsWidth===a).label),changed:!r,action:In(J0,{words:oe()?.panel,label:l(mi),changed:!r,detail:l(xi.find(n=>!n.followsWidth).label),onReset:()=>o(null)}),hint:t?l(r1):void 0,children:In(o1,{options:xi.map(n=>({id:n.followsWidth,label:l(n.label)})),value:a,ariaLabel:l(mi),onChange:o})})}import{jsx as hn}from"react/jsx-runtime";import{SettingsDefaultReset as a1,SettingsField as n1,SettingsSegmented as l1}from"efficient-easel/panel";import{DropIcon as s1}from"efficient-easel/icons";var Ii="Photography",Xm={shot:"As shot",mono:"Black and white"},hi=[{grayscale:!1,label:Xm.shot},{grayscale:!0,label:Xm.mono}],i1="Black and white photographs return to color on hover. Wheels and tyres keep their real finish either way.";function Ym({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??!1;return hn(n1,{label:l(Ii),icon:hn(s1,{}),value:l(hi.find(n=>n.grayscale===a).label),changed:!r,action:hn(a1,{words:oe()?.panel,label:l(Ii),changed:!r,detail:l(hi.find(n=>!n.grayscale).label),onReset:()=>o(null)}),hint:t?l(i1):void 0,children:hn(l1,{options:hi.map(n=>({id:n.grayscale,label:l(n.label)})),value:a,ariaLabel:l(Ii),onChange:o})})}import{jsx as gn}from"react/jsx-runtime";import{SettingsDefaultReset as f1,SettingsField as c1}from"efficient-easel/panel";import{PaddingXIcon as d1}from"efficient-easel/icons";var gi="Side space",bi=Oo.default,u1="The room left at the left and right edge of every page.";function Zm({value:e,onChange:o,showHint:t=!0}){let r=e===null;return gn(c1,{label:l(gi),labelId:"sf-side-space",icon:gn(d1,{}),value:`${e??bi}px`,changed:!r,action:gn(f1,{words:oe()?.panel,label:l(gi),changed:!r,detail:`${bi}px`,onReset:()=>o(null)}),hint:t?l(u1):void 0,children:gn(je,{min:Oo.min,max:Oo.max,step:Oo.step,value:e??bi,readout:!1,ariaLabel:l(gi),onChange:o})})}import{jsx as bn}from"react/jsx-runtime";import{SettingsDefaultReset as p1,SettingsField as m1}from"efficient-easel/panel";import{WidthIcon as x1}from"efficient-easel/icons";var yi="Content width",Si=We.default,I1="The standard width every page on this site renders at.";function Qm({value:e,onChange:o,showHint:t=!0}){let r=e===null;return bn(m1,{label:l(yi),labelId:"sf-site-width",icon:bn(x1,{}),value:`${e??Si}px`,changed:!r,action:bn(p1,{words:oe()?.panel,label:l(yi),changed:!r,detail:`${Si}px`,onReset:()=>o(null)}),hint:t?l(I1):void 0,children:bn(je,{min:We.min,max:We.max,step:We.step,value:e??Si,readout:!1,ariaLabel:l(yi),onChange:o})})}import{jsx as z,jsxs as Mn,Fragment as Zi}from"react/jsx-runtime";import{FieldSelect as iF}from"efficient-easel/fields";import{SettingsField as Hn}from"efficient-easel/panel";import{Tooltip as Qx}from"efficient-shell/ui";import{AccentIcon as fF,CaseIcon as cF,StylesIcon as dF,TextLinesIcon as eI,TextSizeIcon as Ur,TextSmallIcon as uF,TypeIcon as pF,WeightIcon as mF}from"efficient-easel/icons";import{jsx as R,jsxs as Ee,Fragment as Gr}from"react/jsx-runtime";import{useEffect as Dn,useId as MT,useRef as Ki,useState as Vi}from"react";import{jsx as zt,jsxs as Jm}from"react/jsx-runtime";import{Tooltip as h1}from"efficient-shell/ui";function It({label:e,onClear:o,what:t="override"}){let r=l(e),a=t==="override"?l("Clear override"):t==="change"?l("Clear change"):l("Clear {what}",{what:t}),n=t==="override"?l("Clear override: {label}",{label:r}):t==="change"?l("Clear change: {label}",{label:r}):l("Clear {what}: {label}",{what:t,label:r});return zt(h1,{content:a,children:zt("button",{type:"button",className:"sf-part-mark","aria-label":n,onClick:o,children:zt(g1,{})})})}function g1(){return Jm("svg",{width:"12",height:"12",viewBox:"0 0 16 16","aria-hidden":"true",children:[zt("circle",{className:"sf-part-mark-dot",cx:"8",cy:"8",r:"3",fill:"currentColor"}),Jm("g",{className:"sf-part-mark-arrow",fill:"none",stroke:"currentColor",strokeWidth:1.8,strokeLinecap:"round",children:[zt("path",{d:"M13 8a5 5 0 1 1-1.6-3.7"}),zt("path",{d:"M13 2.5V5h-2.6"})]})]})}import{FieldSelect as jx,InspectorField as HT}from"efficient-easel/fields";import{SettingsField as Kx,SettingsGroup as WT}from"efficient-easel/panel";import{InspectorUpLevel as _n}from"efficient-easel/chrome";import{StylesIcon as GT,TextColorIcon as zT,TypeIcon as Vx}from"efficient-easel/icons";import{useEasel as UT}from"efficient-easel/easel";import{Tooltip as qT}from"efficient-shell/ui";import{jsx as yn,jsxs as Ci}from"react/jsx-runtime";import{ColorSwatch as b1,Tooltip as y1}from"efficient-shell/ui";function ex({value:e,label:o,colors:t,onChange:r}){let a=e===null,n=e||void 0,s=t.find(c=>c.key===n),i=s?s.value:n&&/^#[0-9a-f]{6}$/i.test(n)?n:void 0;return Ci("div",{className:"sf-part-ink",children:[Ci("div",{className:"sf-part-ink-top",children:[yn("span",{className:"sf-part-ink-label",children:l(o)}),yn("span",{className:"sf-part-ink-read",children:i?i.toUpperCase():a?l("Mixed"):l("Follows the style")})]}),Ci("div",{className:"sf-part-ink-swatches",role:"group","aria-label":l(o),children:[t.map(c=>yn(y1,{content:`${l(c.name)} \xB7 ${c.value.toUpperCase()}`,children:yn(b1,{color:c.value,"aria-label":l(c.name),size:"sm",selected:n===c.key,onClick:()=>r(n===c.key?null:c.key)})},c.key)),vu({value:s?"":(i??"").toLowerCase(),label:"Any color",onChange:r})]})]})}import{jsx as $i,jsxs as bT}from"react/jsx-runtime";import{COPY_CELLS as Ln,CopyBox as yT}from"efficient-easel/copy";import{PaddingYIcon as ST,WidthIcon as CT}from"efficient-easel/icons";import{useSyncExternalStore as T1}from"react";import{decodePartId as ht,encodePartId as Ut,PART_SEP as eW}from"efficient-easel/screen/lib/puck/part-id";var S1=dt,C1=["text","textarea"],v1=["textarea","plainTextarea"];function w1(e){return!e||typeof e!="object"?null:e[Te]?.control??null}function qt(e){let o=w1(e);return o&&S1.includes(o)?o:null}function Sn(e){return v1.includes(e)}function ox(e){return!e||typeof e!="object"?void 0:e[Te]?.placeholder}function Cn(e){return $e(e).text}function vi(e,o,t){return C1.includes(e)?{text:t,hidden:$e(o).hidden}:t}function tx(e,o,t,r){return Cn(e[o])===r?null:{...e,[o]:vi(t,e[o],r)}}function wi(e,o){return o?`${e}[${o.index}].${o.rowKey}`:e}function go(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}}function ki(e){if(!(!e||typeof e!="object"))return e[Te]}function Ti(e){if(!e||typeof e!="object")return null;let o=e.arrayFields;return o&&typeof o=="object"?o:null}function rx(e,o){if(!Array.isArray(o))return[];let t=ki(e),r=[];if(t?.control==="textList"){let n=t.itemKey??"text";return o.forEach((s,i)=>{let c=s?.[n];typeof c=="string"&&c&&r.push({row:{index:i,rowKey:n},text:c})}),r}let a=Ti(e);return a?(o.forEach((n,s)=>{for(let[i,c]of Object.entries(a)){if(!qt(c))continue;let p=Cn(n?.[i]);p&&r.push({row:{index:s,rowKey:i},text:p})}}),r):[]}function Br(e,o){if(Array.isArray(e))return e[o.index]?.[o.rowKey]}function Fi(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 ax(e,o,t,r,a){let n=Br(e[o],t);return Cn(n)===a?null:Fi(e,o,t,vi(r,n,a))}function nx(e,o){return o?`${e} \xB7 row ${o.index+1}`:e}var bo="data-sf-part",Je="data-sf-part-selected",bW="data-sf-part-kind",lx=2;function sx(e,o){if(!e)return!1;let t=ht(e);return!!t?.propKey&&t.nodeId===o}function $t(e){return ct(e).replace(/\s+/gu,"")}function vn(e,o,t){let r=e[Te];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}=$e(o);a?t.push(a):r.placeholder&&t.push(r.placeholder);return}if(!e[gr]){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))vn(s,a?.[n],t);return}if(e.objectFields&&o&&typeof o=="object")for(let[a,n]of Object.entries(e.objectFields))vn(n,o[a],t)}}function ix(e){if(!e||typeof e!="object")return!1;let o=e;return o[gr]?!1:!!o[Te]||o.type==="text"||o.type==="textarea"}function wn(e,o){let t=e[Te];return t?.label?t.label:typeof e.label=="string"?e.label:o}function Ei(e){let o=e.indexOf(" (");return(o>0?e.slice(0,o):e).trim()}function yW(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){if(!a||typeof a!="object"||wr(r))continue;let n=a,s=[];vn(n,o?.[r],s),!s.length&&n[br]!==void 0&&vn(n,n[br],s);let i=wn(n,r),c=new Set;for(let{row:m,text:x}of rx(n,o?.[r])){let g=$t(x);g.length<lx||(c.add(g),t.push({key:r,label:i,texts:[g],row:m}))}let p=new Set(c),u=[];for(let m of s){let x=$t(m);x.length<lx||p.has(x)||(p.add(x),u.push(x))}u.length&&t.push({key:r,label:i,texts:u})}return t}var k1=dt;function fx(e,o){if(!o||typeof o!="object"||wr(e)||Du(o))return null;let t=o[Te];return!t||!k1.includes(t.control)?null:t}function SW(e,o){let t=fx(e,o);return t!==null&&t.identifier!==!0}function cx(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){let n=fx(r,a);if(!n)continue;let{text:s,hidden:i}=$e(o?.[r]),c=s||n.placeholder||"",p=ct(c).replace(/\s+/gu," ").trim();t.push({key:r,label:Ei(wn(a,r)),preview:p,offPage:n.offPage===!0,identifier:n.identifier===!0,hidden:!!i})}return t}function jt(e,o){let t=ki(e);return t?.control==="textList"?o.rowKey===(t.itemKey??"text")?Om(t,o.index):null:Ti(e)?.[o.rowKey]??null}function kn(e,o,t){let r=e.node.props,{key:a,row:n}=go(e.propKey),s=n?ax(r,a,n,e.kind,o):tx(r,a,e.kind,o);return s?(t(e.zone,e.index,{...e.node,props:s}),!0):!1}var F1=["bold","italic","underline","strike","link","sup","sub"],E1=["bullet","number"];function Ri(e,o){return e?[...F1,...o?E1:[]]:[]}function dx(e,o){let t=ht(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:c}=go(a),p=o.components[n.type]?.fields?.[i],u=c?jt(p,c):p,m=qt(u);if(!m)return null;let x=n.props??{};if(c&&!(Array.isArray(x[i])&&c.index<x[i].length))return null;let g=c?Br(x[i],c):x[i];return{node:n,selector:s,propKey:a,kind:m,stored:g,offPage:en(u)}}function ux(e,o){let t=dx(e,o);if(!t||t.offPage)return null;let{text:r,hidden:a}=$e(t.stored);if(a)return null;let n=Sn(t.kind);return{partId:e,value:r,rules:At,multiline:n,offered:Ri(t.kind!=="plainText",n),write:s=>{let i=dx(e,o);i&&kn({node:i.node,propKey:i.propKey,kind:i.kind,zone:i.selector.zone,index:i.selector.index},s,o.replace)}}}function px(e,o,t){return e?.isConnected&&e.getAttribute(bo)===t?e:o?.querySelector(`[${bo}="${L1(t)}"]`)??null}function L1(e){return e.replace(/["\\]/g,"\\$&")}function mx(e){let o=e.activeElement;return o?o.tagName==="IFRAME"||!!o.closest(".es-canvas"):!1}var Li=null,Pi=new Set;function P1(){return Li}function Ai(e){if(e!==Li){Li=e;for(let o of Pi)o()}}function R1(e){return Pi.add(e),()=>{Pi.delete(e)}}function xx(){return T1(R1,P1,()=>null)}var Di="_partStyles",Mi="data-sf-part-styled",A1=["none","upper","lower"],O1=[400,500,600,700],B1=["left","center","right","justify"],D1=5,_1=1e3,N1=-5,M1=10,Hi=0,Wi=64,Gi=2,zi=120,ot=1280,Ui=10,Ix={size:{min:D1,max:_1,step:1},padding:{min:Hi,max:Wi,step:Gi},width:{min:zi,max:ot,step:Ui}},H1=.05,W1=.01,G1=["line","letter"],z1=.5,U1=2.5,q1=-1,$1=1,j1=0,K1=400,_i={none:"none",upper:"uppercase",lower:"lowercase"};function _r(e){return!e||typeof e!="object"||Array.isArray(e)?null:e}function yx(e){return _r(e?.[Di])??{}}function Fn(e,o){let t=yx(e);return Object.hasOwn(t,o)?_r(t[o])??{}:{}}function Sx(e,o,t){let r={...yx(e)};if(V1(t).length?r[o]=t:delete r[o],!Object.keys(r).length){let{[Di]:a,...n}=e;return n}return{...e,[Di]:r}}function V1(e){return Object.entries(e).filter(([,o])=>o!==void 0)}function X1(e){return G1.includes(e)}var Dr=(e,o,t)=>Math.min(t,Math.max(o,e));function Y1(e,o){if(X1(e)){let t=Math.round(Number(o));return!Number.isFinite(t)||t===0?null:Dr(t,N1,M1)}if(e==="lineHeight"){let t=Number(o);return Number.isFinite(t)?Kt(Dr(t,z1,U1),3):null}if(e==="letterSpacing"){let t=Number(o);return Number.isFinite(t)?Kt(Dr(t,q1,$1),4):null}if(e==="paragraphSpacing"){let t=Math.round(Number(o));return!Number.isFinite(t)||t<=0?null:Dr(t,j1,K1)}if(Object.hasOwn(Ix,e)){let{min:t,max:r}=Ix[e],a=Math.round(Number(o));return Number.isFinite(a)?Dr(a,t,r):null}return e==="role"?Mo.includes(String(o))?o:null:o}var Z1=[["font","role"],["line","lineHeight"],["letter","letterSpacing"]];function Q1(e){let o=[];for(let[t,r]of Z1)t===e?o.push(r):r===e&&o.push(t);return o}function En(e,o,t,r){let a={...Fn(e,o)},n=r==null?null:Y1(t,r);if(n===null)delete a[t];else{a[t]=n;for(let s of Q1(t))delete a[s]}return Sx(e,o,a)}function Cx(e,o){return Sx(e,o,{})}function J1(e){for(let o of A1)if(_i[o]===e)return o;return"none"}function eT(e){return!e||!Object.hasOwn(_i,e)?"":_i[e]}var oT={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 tT(e){let o=e.role;return o&&Mo.includes(o)?o:null}var rT={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 aT(e){let o=Qc[e],t=rT[o];return t?`var(--size-${o}, ${t})`:`var(--size-${o})`}function qi(e){let o={};return typeof e.lineHeight=="number"?o.lineHeight=e.lineHeight:e.line&&(o.lineHeight=Kt(nT+e.line*H1,3)),typeof e.letterSpacing=="number"?o.letterSpacingEm=e.letterSpacing:e.letter&&(o.letterSpacingEm=Kt(e.letter*W1,4)),o}var nT=1,Mr="--sf-part-para";function Tn(e,o){let t=tT(e),r=qi(e),a=e.size?`${e.size}px`:t?aT(t):"";return{fontFamily:e.font?fT(e.font):t?`var(${oT[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`:"",[Mr]:e.paragraphSpacing?`${e.paragraphSpacing}px`:"",textTransform:eT(e.case),textAlign:e.align??"",paddingTop:Oi(e.padding),paddingBottom:Oi(e.padding),maxWidth:Oi(e.width),color:lT(e.color)}}var lT=e=>e===void 0||e===""?"":Object.hasOwn(jo,e)?jo[e]:vx.test(e)?e:"",vx=/^#[0-9a-fA-F]{6}$/;function wx(e){return vx.test(e)}var Oi=e=>e===void 0?"":`${e}px`,Kt=(e,o)=>Number(e.toFixed(o));function UW(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:sT(Number.parseInt(e.fontWeight,10)),lineRatio:Number.isFinite(r)?Kt(r/t,3):1.2,letterEm:Number.isFinite(a)?Kt(a/t,4):0,align:iT(e.textAlign),case:J1(e.textTransform),paddingPx:Number.isFinite(n)?Math.round(n):0,widthPx:Number.isFinite(s)&&s<ot?Math.round(s):ot}}function sT(e){return Number.isFinite(e)?O1.reduce((o,t)=>Math.abs(t-e)<Math.abs(o-e)?t:o):400}function iT(e){for(let o of B1)if(o===e)return o;return e==="end"?"right":"left"}function qW(e,o){let t=hx(e);if(!t)return"";for(let r of hr)if(hx(o(r.cssVar))===t)return r.key;return""}var hx=e=>(e.split(",")[0]??"").replace(/["']/g,"").replace(/\s+/g," ").trim().toLowerCase();function fT(e){let o=oo(e);return o?`var(${o.cssVar})`:""}function $W(e,o,t,r){return!o||ht(o)?.nodeId!==e?null:t.find(a=>r(a.getAttribute("class")))??t[0]??null}function jW(e,o,t=()=>Nr,r=n=>n,a=uT){let n=0;for(let{element:s,partId:i}of e){let c=ht(i)?.propKey;if(!c)continue;let p=r(c),u=Object.hasOwn(o,p)?_r(o[p])??{}:{},m=Tn(u,Nr),x=Bi.some(C=>s.style[C]),g=!1;for(let[C,w]of Object.entries(m))pT(s,C,w),w&&(g=!0);if(x||Bi.some(C=>m[C]))for(let C of cT(s,a))for(let w of Bi)C.style[w]=m[w]??"";g&&(n+=1)}return n}function cT(e,o){let t=$t(e.textContent??""),r=[],a=e;for(let n=0;n<dT&&o(a);n+=1){let s=a.parentElement;if(!s||$t(s.textContent??"")!==t)break;r.push(s),a=s}return r}var dT=8;function uT(e){let o=e;return typeof window>"u"||!o?.ownerDocument?!1:window.getComputedStyle(o).display==="inline"}var Nr={fontKey:"",sizePx:16,weight:400,lineRatio:1,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:ot};function pT(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===Mr&&(t?a.setAttribute?.(gx,""):a.removeAttribute?.(gx))}var gx="data-sf-part-para",mT=Object.keys(Tn({},Nr)),Ni=new Set(["color","overflowWrap",Mr]),Bi=mT.filter(e=>!Ni.has(e));function kx(e,o,t,r=a=>a){let a=new Map;for(let i of e){let c=wi(i.key,i.row);for(let p of i.texts){let u=a.get(p);u?(u.keys.add(i.key),u.partKeys.add(c)):a.set(p,{keys:new Set([i.key]),partKeys:new Set([c])})}}let n=new Map;for(let i of Object.keys(o)){if(!xT(i))continue;let c=_r(o[i])??{},p=Tn(c,Nr);Object.values(p).some(Boolean)&&n.set(i,{stamp:bx(t,i),declarations:p})}let s=new Map;for(let[i,{keys:c,partKeys:p}]of a){let u=p.size===1?[...p][0]:c.size===1?[...c][0]:null;if(!u)continue;let m=r(u);if(!Object.hasOwn(o,m))continue;let x=_r(o[m])??{},g=Tn(x,Nr);Object.values(g).some(Boolean)&&s.set(i,{stamp:bx(t,u),declarations:g})}return s.size||n.size?{rules:s,kindRules:n,drawn:new Set(a.keys())}:null}function xT(e){return e.startsWith("@")}function Tx(e,o){return e?.kindRules.get(o)??null}function bx(e,o){let t=r=>r.replace(/[^A-Za-z0-9_-]+/g,"-");return`${t(e)}~${t(o)}`}function Fx(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(([,x])=>x!==""),c=x=>x.map(([g,C])=>`${hT(g)}: ${C}`).join("; "),p=`[${Mi}="${n}"]`,u=i.filter(([x])=>!Ni.has(x)),m=i.filter(([x])=>Ni.has(x));u.length&&o.push(`${p}, *:has(> ${p}) { ${c(u)} }`),m.length&&o.push(`${p} { ${c(m)} }`),s[Mr]&&o.push(...IT(p))};for(let a of e.rules.values())r(a);for(let a of e.kindRules.values())r(a);return o.join(`
|
|
4
|
+
`)}function IT(e){let o=`var(${Mr})`,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 hT=e=>e.replace(/[A-Z]/g,o=>`-${o.toLowerCase()}`);function Ex(e,o){if(!e)return null;let t=$t(o),r=e.rules.get(t);if(r)return r;if(t.length<gT||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 gT=8;var vT=["left","center","right","justify"];function Lx({text:e,onTextChange:o,multiline:t,markup:r=!0,styled:a=!0,style:n,base:s,setValue:i,colors:c,placeholder:p,ariaLabel:u,head:m,typedOnCanvas:x=!1}){let g=qi(n),C=n.size??s.sizePx,w=[{...Ln.fontSize,value:n.size,styleValue:Math.round(s.sizePx),onChange:k=>i({size:k??null})},{...Ln.lineHeight,value:g.lineHeight,styleValue:s.lineRatio,onChange:k=>i(k===void 0?{lineHeight:null,line:null}:{lineHeight:k})},{...Ln.letterSpacing,scale:C,value:g.letterSpacingEm,styleValue:s.letterEm,onChange:k=>i(k===void 0?{letterSpacing:null,letter:null}:{letterSpacing:k})},{...Ln.paragraphSpacing,value:n.paragraphSpacing,styleValue:0,onChange:k=>i({paragraphSpacing:k??null})},{key:"padding",name:l("Padding"),icon:$i(ST,{}),unit:"px",step:Gi,shiftStep:10,min:Hi,max:Wi,value:n.padding,styleValue:s.paddingPx,onChange:k=>i({padding:k??null})},{key:"width",name:l("Width"),icon:$i(CT,{}),unit:"px",step:Ui,shiftStep:100,min:zi,max:ot,value:n.width,styleValue:s.widthPx,onChange:k=>i({width:k??null})}],b=Ri(r,t);return bT("div",{className:"sf-part-textbox",children:[m,$i(yT,{value:e,onChange:o,multiline:t,placeholder:p,ariaLabel:u,rules:At,tools:b,barShows:x?"focus":"always",colors:r?c:[],align:a?{value:n.align??s.align,allow:vT,onChange:k=>i({align:k})}:void 0,letterCase:a?{value:n.case??"",onChange:k=>i({case:k||null})}:void 0,cells:a?w:void 0})]})}import{jsx as wT}from"react/jsx-runtime";import{createContext as kT,useContext as TT,useMemo as FT,useState as ET}from"react";var LT={partStyle:null,setPartStyle:()=>{}},Px=kT(LT);function aG({children:e}){let[o,t]=ET(null),r=FT(()=>({partStyle:o,setPartStyle:t}),[o]);return wT(Px.Provider,{value:r,children:e})}function Pn(){return TT(Px)}var PT="#9ca3af";function Ax(e){return is.map(o=>({key:o,name:Tu[o],value:e?.[o]||PT}))}function sG(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 is){let i=jo[s].replace(/^var\((--[\w-]+)\)$/,"$1"),c=a.getPropertyValue(i).trim();if(!c)continue;let p=Rx(c);!p&&n&&(n.fillStyle="#000000",n.fillStyle=c,p=Rx(String(n.fillStyle))),p&&(o[s]=p)}return o}function Rx(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}var Hr="@name",Ox="@body",Bx="@value",Dx={[Hr]:"Name",[Ox]:"Body",[Bx]:"Value"},RT={TimelineTrack:{"entries.date":Hr,"entries.title":Hr,"entries.blurb":Ox},Footprint:{"offices.city":Hr},Stats:{"items.label":Hr,"items.value":Bx}};function AT(e){let{key:o,row:t}=go(e);return t?`${o}.${t.rowKey}`:null}function Rn(e,o){if(!e)return o;let t=AT(o);return t?RT[e]?.[t]??o:o}var OT={CollectionCard:"product",FooterMenu:"menu",Gallery:"product",GalleryItem:"product",ProductGrid:"product",ProductHero:"product",SpecTable:"product",Events:"blog",FeaturedCover:"blog",LongRead:"blog",SubscribeBlogs:"blog"},_x={product:"Synced from the product.",blog:"Synced from the blog post.",menu:"Synced from the site menu."},Nx="Open",Mx={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 Wr(e){let o=e?.source?.slug;return typeof o=="string"&&o.length>0?o:void 0}function An(e){return OT[e]??null}var BT={tag:{label:"Tag",follows:"Labels",builtIn:"13px",writable:!0},name:{label:"Name",follows:"Heading 2",builtIn:"48px",writable:!0},body:{label:"Body",follows:"Body",builtIn:"14px",writable:!0},price:{label:"Price",follows:"Labels",builtIn:"15px",writable:!0},link:{label:"Link",follows:"Labels",builtIn:"14px",writable:!0}},Hx=BT;var DT={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}},Wx=DT;var On="data-sf-spec-region";function IG(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 _T(e){return`@${e}`}function ji(e,o){if(!o.startsWith("@"))return null;let t=o.slice(1);return t in e?t:null}function Gx(e,o){return o&&o in e?o:null}function NT(e,o){let t=o?.closest(`[${On}]`)?.getAttribute(On);return Gx(e,t??null)}var yG=On;var zx={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 Ux={SpecTable:zx,FAQ:Wx,Collections:Hx};function qx(e){return e&&Object.hasOwn(Ux,e)?Ux[e]:null}var $T={400:"Regular",500:"Medium",600:"Semibold",700:"Bold"},Xx=[{key:"font",label:"Font",group:"Style"},{key:"color",label:"Color",group:"Style"}],jT=[...new Set(Xx.map(e=>e.group))],KT={font:R(Vx,{}),color:R(zT,{})};function zr(e){return e?l(e):null}function gt(e){return e.kind==="role"?pa[e.role]:e.kind==="custom"?"Custom":null}var VT=e=>e.kind==="role"?`role:${e.role}`:e.kind;function XT(e){let o=e.role;return o&&Mo.includes(o)?{kind:"role",role:o}:null}function YT(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 Xi(e,o,t,r){return XT(Fn(e,o))??YT(t,r)}function Yx(e,o,t,r){return gt(Xi(e,o,t,r))}function Yi(e,o){if(!e.length)return null;let t=o(e[0]);return e.every(r=>o(r)===t)?t:null}function ZT(e){return Object.values(e).filter(o=>o!==void 0).length}function QT(e,o){let t=e.style[o];return o==="color"?t??"":t!==void 0?String(t):e.base.fontKey}function JT({face:e,base:o,onPick:t}){let[r,a]=Vi(!1),n=Ki(null),s=Ki(null),i=MT();Dn(()=>{if(!r)return;let u=m=>{n.current&&!n.current.contains(m.target)&&a(!1)};return document.addEventListener("mousedown",u),()=>document.removeEventListener("mousedown",u)},[r]);let c=e.kind==="role"?e.role:null,p=u=>{t(u),a(!1),s.current?.focus()};return Ee("div",{className:"sf-part-style-pick",ref:n,children:[Ee("button",{ref:s,type:"button",className:"sf-part-style-trigger","aria-expanded":r,"aria-controls":i,"aria-label":gt(e)?l("Follows {name} \u2014 change",{name:zr(gt(e))}):l("Follows no style \u2014 change"),onClick:()=>a(u=>!u),onKeyDown:u=>{u.key==="Escape"&&r&&(u.preventDefault(),a(!1))},children:[R("span",{className:"sf-part-style-name",style:{fontFamily:o?.fontKey?`var(${oo(o.fontKey)?.cssVar})`:void 0,fontWeight:o?.weight},children:zr(gt(e))}),R("span",{className:"sf-part-style-sign","aria-hidden":"true"})]}),r&&Ee("div",{className:"sf-multi-menu sf-part-style-menu",id:i,role:"listbox",onKeyDown:u=>{u.key==="Escape"&&(u.preventDefault(),a(!1),s.current?.focus())},children:[Ee("button",{type:"button",role:"option","aria-selected":c===null,className:`sf-part-style-option${c===null?" is-on":""}`,onClick:()=>p(null),children:[R("span",{className:"sf-part-style-option-name",children:l("No style")}),R("span",{className:"sf-note",children:l("Section\u2019s own")})]}),Mo.map(u=>R("button",{type:"button",role:"option","aria-selected":c===u,className:`sf-part-style-option${c===u?" is-on":""}`,onClick:()=>p(u),children:R("span",{className:"sf-part-style-option-name",style:{fontFamily:`var(--font-role-${u})`},children:l(pa[u])})},u))]})]})}var Bn="";function eF({face:e,base:o,onPick:t}){let r=e.kind==="role"?e.role:Bn,a=[{label:l("No style"),value:Bn},...Mo.map(n=>({label:l(pa[n]),value:n}))];return R(jx,{ariaLabel:l("Style"),value:r,options:a,inline:!0,onChange:n=>t(n===Bn?null:n),renderOption:n=>n.value===Bn?Ee(Gr,{children:[R("span",{className:"es-fsel-label sf-part-style-keep",children:n.label}),R("span",{className:"sf-part-style-aside","aria-hidden":"true",children:l("Section\u2019s own")})]}):R("span",{className:"es-fsel-label",style:{fontFamily:`var(--font-role-${n.value})`},children:n.label}),renderValue:()=>R("span",{style:{fontFamily:o?.fontKey?`var(${oo(o.fontKey)?.cssVar})`:void 0,fontWeight:o?.weight},children:zr(gt(e))}),valueText:n=>zr(gt(e))??n?.label??""})}function oF({parts:e,onEditStyle:o,onClearAll:t,onFollowStyle:r,kindLabel:a}){let n=Yi(e,u=>VT(u.face))?e[0].face:null,s=n?gt(n):null,i=n&&n.kind!=="unread"?e[0].base:null,c=e.reduce((u,m)=>u+ZT(m.style),0),p=i?oo(i.fontKey)?.label:void 0;return Ee("div",{className:`sf-part-style${c?" has-overrides":""}`,children:[R("div",{className:"sf-part-style-caption",children:l("Style")}),e.length>1&&R("div",{className:"sf-part-style-count",children:l("{n} selected",{n:e.length})}),e.length===1&&a&&R("div",{className:"sf-part-style-count",children:l("{kind} \xB7 every row",{kind:l(a)})}),s&&i?Ee(Gr,{children:[r&&n?R(JT,{face:n,base:i,onPick:r}):R("div",{className:"sf-part-style-name",style:{fontFamily:p?`var(${oo(i.fontKey)?.cssVar})`:void 0,fontWeight:i.weight},children:l(s)}),R("div",{className:"sf-part-style-meta",children:[p,`${Math.round(i.sizePx)} px`,l($T[i.weight])].filter(Boolean).join(" \xB7 ")})]}):R("div",{className:"sf-part-style-name",children:l("Mixed styles")}),Ee("div",{className:"sf-part-style-top",children:[s?c?Ee(Gr,{children:[R("span",{className:"sf-part-chip",children:l("{n} changed",{n:c})}),R("button",{type:"button",className:"sf-part-link",onClick:t,children:l("Clear")})]}):R("span",{className:"sf-part-style-state",children:l("This text follows the site style.")}):R("span",{className:"sf-part-style-state",children:l("Changes apply to all selected.")}),R("span",{className:"sf-part-style-gap"}),s&&o&&R("button",{type:"button",className:"sf-part-link",onClick:o,children:l("Edit")})]})]})}function tF({sectionName:e,onBack:o,textEditor:t,styleRow:r,children:a}){return Ee("div",{className:"sf-part-panel",children:[R(_n,{inline:!0,name:l(e),onSelect:o}),t,r,a]})}function Nn({source:e,slug:o}){let t=Ft(),r=Mx[e],a=!r.needsSlug||!!o;return R("div",{className:"sf-note sf-note--source",children:Ee("p",{className:"es-field-hint sf-hint-keep",children:[l(_x[e]),a?Ee(Gr,{children:[" ",R("button",{type:"button",className:"sf-source-open",onClick:()=>{r.type==="storefront-editor:open-menus"?t.send(r.type):o&&t.send(r.type,{slug:o})},children:l(Nx)})]}):null]})})}var $x=4,rF=120;function aF({region:e,sizePx:o,face:t,base:r,onFollowStyle:a,source:n,slug:s,onBack:i}){let c=e.follows;return Ee("div",{className:"sf-note",children:[R("p",{children:R("strong",{children:l(e.label)})}),R("p",{children:o?l("Its size follows Site styles \u25B8 {follows} \u2014 {px}px right now.",{follows:l(c),px:Math.round(o)}):l("Its size follows Site styles \u25B8 {follows}.",{follows:l(c)})}),a?R(Gr,{children:R(Kx,{label:l("Style"),icon:R(GT,{}),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:R(eF,{face:t,base:r,onPick:a})})}):R("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?R(Nn,{source:n,slug:s}):null,R(_n,{inline:!0,name:l("Page"),onSelect:i})]})}function nF({onBack:e}){return Ee("div",{className:"sf-note",children:[R("p",{children:R("strong",{children:l("This part is no longer here.")})}),R("p",{children:l("The section it belonged to has been changed or removed.")}),R(_n,{inline:!0,name:l("Page"),onSelect:e})]})}function lF({onBack:e,partId:o,why:t}){return Ee("div",{className:"sf-note",children:[R("p",{children:R("strong",{children:l("This part's settings did not open.")})}),R("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.")}),R("p",{className:"sf-note-detail",children:Ee("code",{children:[o," \u2014 ",t]})}),R(_n,{inline:!0,name:l("Page"),onSelect:e})]})}function Zx({nodeId:e,propKey:o,onBack:t,onEditStyle:r}){let{getItemById:a,getSelectorForId:n,config:s}=UT(D=>D),i=$o(),c=xx(),{partStyle:p}=Pn(),{fonts:u}=ne(),[m,x]=Vi({}),g=Ki(null),C=a(e),w=n(e),b=C?s.components[C.type]:void 0,{key:k,row:S}=go(o),I=b?.fields?.[k],v=S?jt(I,S):I,L=Ut(e,o),F=C?.props??{},O=qt(v),A=en(v),H=ix(v),le=C?An(C.type):null,q=S?Br(F[k],S):F[k],W=!!S&&!(Array.isArray(F[k])&&S.index<F[k].length);Dn(()=>{mx(document)||g.current?.querySelector(".es-copy [contenteditable='true'], .es-copy textarea, .sf-copybox textarea, .sf-copybox input")?.focus()},[L]);let[ge,_]=Vi(0);Dn(()=>_(0),[L]);let ae=!!C&&!W&&(!w||!v);Dn(()=>{if(!ae||ge>=$x)return;let D=setTimeout(()=>_(ie=>ie+1),rF);return()=>clearTimeout(D)},[ae,ge]);let Be=ae&&ge<$x;if(!C||W)return R(nF,{onBack:t});let Ke=qx(C.type),Co=Ke?ji(Ke,o):null;if(Ke&&Co){let D=p?.partId===L?p:null,ie=Ke[Co],Xe=ie.writable===!0&&!!w,Ye=Re=>{w&&i.replaceComponent(w.zone,w.index,{...C,props:En(F,o,"role",Re)})};return R(aF,{region:ie,sizePx:D?.base.sizePx??null,face:Xi(F,o,D,u),base:D?.base??null,onFollowStyle:Xe?Ye:void 0,source:le,slug:Wr(F),onBack:t})}if(!w||!v)return Be?R("div",{className:"sf-note","aria-busy":"true"}):R(lF,{onBack:t,partId:L,why:w?"no field":"no selector"});let De=D=>{i.replaceComponent(w.zone,w.index,{...C,props:D})},_e=D=>{if($e(D).hidden!==$e(q).hidden||!O){let ie=S?Fi(F,k,S,D):{...F,[k]:D};ie&&De(ie);return}kn({node:C,propKey:o,kind:O,zone:w.zone,index:w.index},$e(D).text,i.replaceComponent)},ao=q,Ne=Rn(C?.type,o),be=Fn(F,Ne),ye=p?.partId===L?p:null,Z=[{partKey:Ne,face:Xi(F,Ne,ye,u),sizeGroup:ye?.sizeGroup??null,base:ye?.base??sF,style:be}],fo=Yi(Z,D=>D.sizeGroup),E=Ax(ye?.inks),Q=(D,ie)=>{let Xe=F;for(let Ye of Z)Xe=En(Xe,Ye.partKey,D,ie);De(Xe)},J=D=>Q("role",D),Se=()=>{let D=F;for(let ie of Z)D=Cx(D,ie.partKey);De(D)},ue=D=>{let ie=F;for(let Xe of Z)for(let[Ye,Re]of Object.entries(D))ie=En(ie,Xe.partKey,Ye,Re??null);De(ie)},ee=(D,ie)=>{let Xe=Z.some(M=>M.style[D]!==void 0),Ye=Yi(Z,M=>QT(M,D)),Re=Ye===null,N=`sf-part-${e}-${o}-${D}`;return D==="color"?R(ex,{value:Re?null:String(Ye),label:ie,colors:E,onChange:M=>Q("color",M)},D):R(Kx,{label:l(ie),icon:KT[D],className:"sf-part-field",changed:Xe,htmlFor:N,action:Xe?R(It,{label:ie,onClear:()=>Q(D,null)}):void 0,children:D==="font"?R(jx,{id:N,ariaLabel:l(ie),value:!Re&&oo(String(Ye))?String(Ye):void 0,placeholder:Re?l("Mixed"):l("Site style"),options:hr.map(M=>({label:M.label,value:M.key})),onChange:M=>Q("font",M||null)}):null},D)},Ce=O==="text"||O==="textarea",{text:we,hidden:Ve}=$e(q),co=v?.[Te]?.label??o,ua=Ve?l("Show {label} on the slide",{label:l(co)}):l("Hide {label} on the slide",{label:l(co)}),vt=Ee("div",{className:"sf-field-head",children:[R(Vx,{}),R("span",{className:"sf-field-label sf-field-label--inline",children:l(co)}),Ce&&R(qT,{content:ua,children:R("button",{type:"button",className:"sf-field-eye","aria-pressed":Ve,"aria-label":ua,onClick:()=>_e({text:we,hidden:!Ve}),children:Ve?R(qe,{name:"eye-off",size:14}):R(qe,{name:"eye",size:14})})})]}),vo=!A&&H;return Ee(tF,{sectionName:b?.label??C.type,onBack:t,textEditor:Ee("div",{ref:g,className:"sf-part-text",children:[O?R(Lx,{text:we,onTextChange:D=>_e(Ce?{text:D,hidden:Ve}:D),multiline:Sn(O),markup:O!=="plainText",styled:vo,style:Z[0].style,base:Z[0].base,setValue:ue,colors:E.map(D=>({name:D.key,label:l(D.name),value:D.value})),placeholder:zr(ox(v))??void 0,ariaLabel:l(co),head:vt,typedOnCanvas:c===L}):R(HT,{field:v,name:o,value:ao,onChange:_e,id:`sf-part-${e}-${o}`}),vo&&O&&fo===null&&R("p",{className:"es-field-hint sf-hint-keep",children:l("Fixed size \u2014 the site\u2019s Text setting doesn\u2019t resize this.")})]}),children:[le&&R(Nn,{source:le,slug:Wr(F)}),vo&&jT.map(D=>{let ie=Xx.filter(Re=>Re.group===D),Xe=ie.filter(Re=>Z.some(N=>N.style[Re.key]!==void 0)).length,Ye=`sf-part-g-${e}-${o}-${D.replace(/\W+/g,"-")}`;return Ee(WT,{id:Ye,title:l(D),open:m[D]!==!0,onToggle:Re=>x(N=>({...N,[D]:!Re})),count:Xe,children:[R(oF,{parts:Z,onEditStyle:r,onClearAll:Se,onFollowStyle:J,kindLabel:Dx[Ne]}),ie.map(Re=>ee(Re.key,Re.label))]},D)})]})}var sF={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:ot};var xF=[{role:"heading",title:"Heading 1",group:"heading",step:"headingLarge",base:17,icon:z(Ur,{})},{role:"heading2",title:"Heading 2",group:"heading",step:"headingMedium",base:15,icon:z(Ur,{})},{role:"heading3",title:"Heading 3",group:"heading",step:"headingSmall",base:13,icon:z(Ur,{})},{role:"accent",title:"Accent",step:"accent",base:15,icon:z(fF,{})},{role:"body",title:"Body",group:"body",step:"body",base:14,icon:z(eI,{})},{role:"label",title:"Labels",group:"label",step:"label",base:11,icon:z(uF,{})}];var IF=9,Vt=500,hF=100,gF=80,bF=4,yF=600,SF=700,CF=400,vF="0.18em";function wF({id:e,value:o,onChange:t}){let r=Yc().flatMap(([n,s])=>s.map(i=>({label:i.label,value:i.key,group:l(Xc[n])}))),a=(n,s)=>z("span",{style:{fontFamily:`var(${oo(n)?.cssVar??"--font-body"})`},children:s});return z(iF,{id:e,value:o,onChange:t,options:r,renderOption:n=>a(n.value,n.label),renderValue:n=>n?a(n.value,n.label):null})}function kF({label:e,icon:o,readout:t,min:r,max:a,step:n,value:s,onChange:i,action:c,hint:p}){return z(Hn,{label:l(e),icon:o,value:t,action:c,hint:p,children:z(je,{min:r,max:a,step:n,value:s,readout:!1,ariaLabel:l(e),onChange:i})})}function Qi({label:e,icon:o,value:t,fallback:r,min:a,max:n,step:s,suffix:i="",hint:c,onChange:p}){let u=t===null;return z(kF,{label:e,icon:o,readout:u?l("Auto"):`${t}${i}`,min:a,max:n,step:s,value:u?r:t,onChange:p,action:u?null:z(It,{label:e,what:"change",onClear:()=>p(null)}),hint:c})}function Jx({label:e,icon:o,options:t,value:r,onChange:a,hint:n,action:s}){return z(Hn,{label:l(e),icon:o,value:TF(t.find(i=>i.value===r)?.label),hint:n,action:s,children:z("div",{className:"sf-rungs",children:t.map(i=>z("button",{type:"button","aria-pressed":i.value===r,onClick:()=>a(i.value),className:`sf-rung${i.value===r?" is-active":""}`,children:l(i.label)},i.value))})})}var TF=e=>e===void 0?void 0:l(e),FF=[{value:"authored",label:"As designed"},{value:"sentence",label:"As typed"}],EF=[{value:"normal",label:"Normal"},{value:"tight",label:"Tight"},{value:"compressed",label:"Compressed"}];function LF({fontKey:e,weight:o,fallbackWeight:t,onWeight:r}){let a=(o??t)>=yF,n=Zc(e),s=oo(e)?.label??l("This face");return z(Hn,{label:l("Style"),icon:z(dF,{}),value:a?l("Bold"):l("Normal"),hint:l("Bold is the weight above \u2014 one value, two ways to set it."),children:Mn("div",{className:"sf-rungs",children:[z(Qx,{content:l("Bold"),className:"sf-rung-tip",children:z("button",{type:"button","aria-pressed":a,"aria-label":l("Bold"),onClick:()=>r(a?CF:SF),className:`sf-rung sf-rung--glyph${a?" is-active":""}`,style:{fontWeight:700},children:"B"})}),z(Qx,{className:"sf-rung-tip",content:n?l("Italic is not saved yet \u2014 the theme row has no column for it (card 66162.b)."):l("{face} is loaded without an italic, so it cannot be set in italic. Slanting it would deform the letters rather than style them.",{face:s}),children:z("span",{className:"sf-tip-disabled",tabIndex:0,children:z("button",{type:"button","aria-pressed":!1,"aria-label":l("Italic"),disabled:!0,className:"sf-rung sf-rung--glyph",style:{fontStyle:"italic"},children:"I"})})})]})})}function oI({fonts:e,compression:o,headingTypography:t,openRole:r,onOpenRole:a,onFontChange:n,sizes:s,onSizeChange:i,onCompressionChange:c,onHeadingTypographyChange:p,livePx:u,savedRole:m=null}){let x=b=>p({...t,...b}),g=b=>b==="accent"?"weightStrong":b==="heading2"?"weight2":b==="heading3"?"weight3":"weight",C=b=>b==="heading2"?"case2":b==="heading3"?"case3":"case",w=hd(o);return z("div",{className:"sf-style-list",children:xF.map(b=>{let k=r===b.role;return z(Da,{styleKey:b.role,label:b.title,icon:b.icon,value:oo(e[b.role])?.label??e[b.role],sampleStyle:PF(b,e,t,w),open:k,onToggle:()=>a(k?null:b.role),saved:m===b.role,children:k&&Mn(Zi,{children:[z(Hn,{label:l("Font"),icon:z(pF,{}),htmlFor:`sf-font-${b.role}`,action:e[b.role]===Tl[b.role]?null:z(It,{label:"Font",what:"change",onClear:()=>n(b.role,Tl[b.role])}),children:z(wF,{id:`sf-font-${b.role}`,value:e[b.role],onChange:S=>n(b.role,S)})}),b.step&&i&&z(Qi,{label:"Size",icon:z(Ur,{}),value:s[b.step],fallback:b.base*2,min:id,max:fd,step:cd,suffix:"px",hint:s[b.step]===null?l("Auto = this style states no size, and text following it keeps the size its section drew."):l("The size a text takes when you set it to follow this style. Sections keep their own sizes."),onChange:S=>i(b.step,S)}),(wt(b.role)||b.role==="accent")&&Mn(Zi,{children:[z(Qi,{label:"Weight",icon:z(mF,{}),value:t[g(b.role)],fallback:wt(b.role)?Vt:t.weight??Vt,min:gd,max:bd,step:hF,hint:b.role==="accent"?l("Auto = the accent phrase takes the heading's own weight."):void 0,onChange:S=>x({[g(b.role)]:S})}),z(LF,{fontKey:e[b.role],weight:t[g(b.role)],fallbackWeight:wt(b.role)?Vt:t.weight??Vt,onWeight:S=>x({[g(b.role)]:S})})]}),wt(b.role)&&Mn(Zi,{children:[z(Jx,{label:"Line & text gap",icon:z(eI,{}),options:EF,value:o,onChange:c,hint:w.lineHeight===void 0?l("The built-in spacing."):l("Line gap {line} \xB7 text gap {letter}em.",{line:w.lineHeight,letter:String(w.letterSpacing)}),action:o===Bl?null:z(It,{label:"Line & text gap",what:"change",onClear:()=>c(Bl)})}),z(Jx,{label:"Capitals",icon:z(cF,{}),options:FF,value:t[C(b.role)],onChange:S=>x({[C(b.role)]:S}),hint:l("The only setting that changes a heading's capitals."),action:t[C(b.role)]==="authored"?null:z(It,{label:"Capitals",what:"change",onClear:()=>x({[C(b.role)]:"authored"})})}),z(Qi,{label:"Largest size",icon:z(Ur,{}),value:t.maxPx,fallback:gF,min:yd,max:Sd,step:bF,suffix:"px",hint:l("Caps the biggest heading on the site. Auto = each section's own."),onChange:S=>x({maxPx:S})})]})]})},b.role)})})}function PF(e,o,t,r){let a=Math.max(IF,e.base),n={fontFamily:`var(${oo(o[e.role])?.cssVar??"--font-body"})`,fontSize:`${a.toFixed(1)}px`,lineHeight:1.15};return wt(e.role)?(n.fontWeight=t.weight??Vt,n.textTransform=t.case==="sentence"?"none":"uppercase",r.letterSpacing!==void 0&&(n.letterSpacing=`${r.letterSpacing}em`)):e.role==="accent"?(n.fontWeight=t.weightStrong??t.weight??Vt,r.letterSpacing!==void 0&&(n.letterSpacing=`${r.letterSpacing}em`)):e.role==="label"&&(n.textTransform="uppercase",n.letterSpacing=vF),n}import{SettingsTabs as AF}from"efficient-easel/panel";import{Tooltip as zz,tabButtonId as OF,tabPanelId as BF}from"efficient-shell/ui";import{ContrastIcon as DF,NoteIcon as _F,SettingsIcon as NF,TypeIcon as MF}from"efficient-easel/icons";function tI(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 Sz,pinPreviewToBottom as Cz,pinPreviewToSection as vz,previewFrame as rI,scrollPreviewToSection as aI,scrollPreviewToTop as Ji}from"efficient-easel/screen/lib/puck/preview-dom";var ef="sf-site-styles",HF="sf-site-styles-tabpanel",tf=!1,WF="Show hints";function rf({shown:e,onChange:o}){return te("div",{className:"sf-hints",children:Yt("button",{type:"button","aria-pressed":e,onClick:()=>o(!e),className:`sf-rung sf-hints-toggle${e?" is-active":""}`,children:[te(_F,{size:13}),l(WF)]})})}var lI="text",Xt=[{id:"basics",label:"Basics",icon:te(NF,{})},{id:"theme",label:"Theme",icon:te(DF,{})},{id:"text",label:"Text",icon:te(MF,{})}];function GF({themeFromDocument:e,persist:o}){let{appState:t,dispatch:r}=of(p=>p),{theme:a,setTheme:n}=ne(),s=t.data,i=s.root?.props??{},c=p=>{if(e){let u={...i,theme:p};r({type:"replaceRoot",root:{...s.root,props:u},recordHistory:!0})}else n(p);o({selected_preset:p.selected,theme_presets:p.themes})};return te(zm,{value:e?i.theme:a,onChange:c})}function zF(e,o){let[t,r]=Wn(null),a=nI(null),n=JSON.stringify(e),s=nI(o);return s.current=o,RF(()=>{if(a.current===null){a.current=n;return}if(a.current===n)return;a.current=n;let i=window.setTimeout(()=>r(s.current),700),c=window.setTimeout(()=>r(null),2200);return()=>{window.clearTimeout(i),window.clearTimeout(c)}},[n]),t}function UF({themeFromDocument:e,persist:o}){let{appState:t,dispatch:r}=of(F=>F),[a,n]=Wn(null),{fonts:s,setFonts:i,sizes:c,setSizes:p,headingCompression:u,setHeadingCompression:m,headingTypography:x,setHeadingTypography:g}=ne(),C=t.data,w=C.root?.props??{},b=e?Jc(w.fonts):s,k=e?sd:c,S=e?Id(w.headingCompression):u,I=e?Cd(w.headingTypography):x,v=F=>r({type:"replaceRoot",root:{...C.root,props:{...w,...F}},recordHistory:!0}),L=zF({curFonts:b,curCompression:S,curTypography:I},a);return te(oI,{fonts:b,sizes:k,compression:S,headingTypography:I,openRole:a,onOpenRole:n,onFontChange:(F,O)=>{let A={...b,[F]:O};e?v({fonts:A}):i(A),o({heading_font:A.heading,body_font:A.body,accent_font:A.accent,label_font:A.label})},onSizeChange:e?void 0:(F,O)=>{let A={...k,[F]:O};p(A),o({heading_size_large_px:A.headingLarge,heading_size_medium_px:A.headingMedium,heading_size_small_px:A.headingSmall,accent_size_px:A.accent,body_size_px:A.body,label_size_px:A.label})},onCompressionChange:F=>{e?v({headingCompression:F}):m(F),o({heading_compression:F})},onHeadingTypographyChange:F=>{e?v({headingTypography:F}):g(F),o(vd(F))},livePx:$F,savedRole:L})}var qF={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 $F(e){if(typeof document>"u")return null;let o=(rI()?.contentDocument??document).querySelector(qF[e]);if(!o)return null;let t=parseFloat(getComputedStyle(o).fontSize);return Number.isFinite(t)?t:null}function jF({themeFromDocument:e,persist:o,showHint:t}){let{appState:r,dispatch:a}=of(x=>x),{cornerRadiusPx:n,setCornerRadiusPx:s}=ne(),i=r.data,c=i.root?.props??{},p=c.cornerRadiusPx===void 0?ud[dd(c.cornerStyle)]:ko(c.cornerRadiusPx),u=e?p:n,m=x=>a({type:"replaceRoot",root:{...i.root,props:{...c,...x}},recordHistory:!0});return te(Um,{value:u,onChange:x=>{e?m({cornerRadiusPx:x}):s(x),o({corner_radius_px:x})},showHint:t})}function KF(e){return{site_width:e}}function VF({persist:e,showHint:o}){let{siteWidth:t,setSiteWidth:r}=ne();return te(Qm,{value:t,onChange:a=>{r(a),e(KF(a),a===null)},showHint:o})}function XF(e){return{block_gap:e}}function YF(e){return{site_gutter:e}}function ZF({persist:e,showHint:o}){let{siteGutter:t,setSiteGutter:r}=ne();return te(Zm,{value:t,onChange:a=>{r(a),e(YF(a),a===null)},showHint:o})}function QF({persist:e,showHint:o}){let{blockGap:t,setBlockGap:r}=ne();return te(jm,{value:t,onChange:a=>{r(a),e(XF(a),a===null)},showHint:o})}function JF({persist:e,showHint:o}){let{heroBackgroundFollowsWidth:t,setHeroBackgroundFollowsWidth:r}=ne();return te(Vm,{value:t,onChange:a=>{r(a),e({hero_background_follows_width:a},!0)},showHint:o})}function eE({persist:e,showHint:o=!0}){return Yt(qr,{children:[te(VF,{persist:e,showHint:o}),te(ZF,{persist:e,showHint:o}),te(QF,{persist:e,showHint:o}),te(JF,{persist:e,showHint:o})]})}function oE(e){return{card_shadow:e}}function tE(e){return e===null?{shadow_color:null}:{shadow_color:xd(e)}}function rE(e){return{hover_effect:e}}function aE({persist:e,showHint:o=!0}){let{cardShadow:t,setCardShadow:r,shadowColor:a,setShadowColor:n,hoverEffect:s,setHoverEffect:i}=ne();return Yt(qr,{children:[te(qm,{value:t,onChange:c=>{r(c),e(oE(c),!0)},showHint:o}),te($m,{value:a,onChange:c=>{n(c),e(tE(c),c===null)},showHint:o}),te(Km,{value:s,onChange:c=>{i(c),e(rE(c),!0)},showHint:o})]})}function nE(e){return{photography_grayscale:e}}function lE({persist:e,showHint:o}){let{photographyGrayscale:t,setPhotographyGrayscale:r}=ne();return te(Ym,{value:t,onChange:a=>{r(a),e(nE(a),!0)},showHint:o})}function sE({persist:e,showHint:o=!0}){return te(qr,{children:te(lE,{persist:e,showHint:o})})}function Zt(){let{websiteName:e}=ne();return e?.trim()||kd}function Gn({themeFromDocument:e=!1,tokenRef:o,siteId:t,onNotify:r,tab:a,onTabChange:n}){let{persist:s}=Ma({themeFromDocument:e,tokenRef:o,siteId:t,onResult:w=>{let b=tI(w);b&&r?.(b.msg,b.tone)}}),[i,c]=Wn(Xt[0].id),p=a!==void 0,u=p?a:i,m=p?n??(()=>{}):c,x=Xt.find(w=>w.id===u)??Xt[0],[g,C]=Wn(tf);return Yt(qr,{children:[te(AF,{items:Xt.map(w=>({...w,label:l(w.label)})),activeId:x.id,onSelect:m,ariaLabel:l("Site styles"),idPrefix:ef}),Yt("div",{id:BF(ef,x.id),className:HF,role:"tabpanel","aria-labelledby":OF(ef,x.id),children:[u==="basics"&&Yt(qr,{children:[te(jF,{themeFromDocument:e,persist:s,showHint:g}),!e&&te(aE,{persist:s,showHint:g}),!e&&te(eE,{persist:s,showHint:g}),!e&&te(sE,{persist:s,showHint:g}),te(rf,{shown:g,onChange:C})]}),u==="theme"&&te(GF,{themeFromDocument:e,persist:s}),u==="text"&&te(UF,{themeFromDocument:e,persist:s})]})]})}import{InspectorIconButton as hE}from"efficient-easel/chrome";import{Button as pI,Dialog as gE,FormField as bE,Input as mI,toast as xI}from"efficient-shell/ui";import{LayersTree as yE,TreeGroupLabel as SE,TreeRow as II,TreeRowAction as df}from"efficient-easel/tree";import{AddIcon as CE}from"efficient-easel/icons";import{PagesIcon as vE}from"efficient-easel/rail";var af="Main Pages",iE="Dynamic Pages",nf="dynamic",fE="dynamic";function lf(e){return e.kind===fE}function sI(e){let o=[],t=[];for(let r of e){if(lf(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??af,rows:[r]})}if(t.length){let r=o.findIndex(a=>a.key.startsWith("system:"));o.splice(r===-1?o.length:r,0,{key:nf,label:iE,rows:t})}return o}import{useCallback as zn,useEffect as cE,useSyncExternalStore as dE}from"react";var iI=new WeakMap;function $r(e){let o=iI.get(e);return o||(o={rows:null,loading:null,listeners:new Set},iI.set(e,o)),o}function sf(e,o){e.rows=o;for(let t of e.listeners)t()}var Un=new Set;function qn(e,o){o?Un.add(e):Un.delete(e)}function fI(e){let o=$r(e),t=e.listPages().then(r=>sf(o,Un.size?r.filter(a=>!Un.has(a.id)):r),()=>sf(o,[])).finally(()=>{o.loading===t&&(o.loading=null)});return o.loading=t,t}var cI=()=>null,uE=()=>()=>{};function ff(){let{adapter:e,ready:o}=ke(),t=zn(i=>{let{listeners:c}=$r(e);return c.add(i),()=>c.delete(i)},[e]),r=zn(()=>$r(e).rows,[e]),a=dE(o?t:uE,o?r:cI,cI);cE(()=>{if(!o)return;let i=$r(e);i.rows===null&&!i.loading&&fI(e)},[e,o]);let n=zn(()=>o?fI(e):Promise.resolve(),[e,o]),s=zn(i=>sf($r(e),i),[e]);return{rows:a,reload:n,setRows:s,getRows:r}}function pE(e,o){return e?.find(t=>t.slug===o)?.label?.trim()||`/${o}`}function dI(){let{currentSlug:e}=ke(),{rows:o}=ff();return pE(o,e)}var hI="sf-editor-pages-collapsed-groups",wE=e=>e.toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""),gI=(e,o)=>{let t=wE(e)||"page";if(!o.has(t))return t;let r=2;for(;o.has(`${t}-${r}`);)r+=1;return`${t}-${r}`};function bI({onNavigate:e,onClose:o,activeSurface:t,onPreviewSurface:r}){let a=Me().chrome?.pageRows,n=Ft(),{adapter:s,capabilities:i,ready:c,currentSlug:p}=ke(),u=Zt(),{rows:m,reload:x,setRows:g,getRows:C}=ff(),[w,b]=Qt(""),[k,S]=Qt(!1),[I,v]=Qt(null),[L,F]=Qt(!1),[O,A]=Qt(""),H=IE(),[le,q]=Qt(()=>{if(typeof window>"u")return new Set;try{let E=window.localStorage.getItem(hI);return new Set(E?JSON.parse(E):[])}catch{return new Set}});xE(()=>{try{window.localStorage.setItem(hI,JSON.stringify([...le]))}catch{}},[le]);let W=E=>q(Q=>{let J=new Set(Q);return J.has(E)?J.delete(E):J.add(E),J}),ge=uI(()=>sI(m??[]),[m]),_=w.trim().toLowerCase(),ae=E=>!_||E.toLowerCase().includes(_),Be=E=>_?!0:!le.has(E),Ke=uI(()=>new Set((m??[]).map(E=>E.slug)),[m]),Co=()=>{if(i.pageCreationInAdminForm){n.send("storefront-editor:new-page");return}A(""),v(null),F(!0)},De=async()=>{let E=O.trim();if(!(!E||!c||k||!s.createPage)){S(!0),v(null);try{let Q=await s.createPage({slug:gI(E,Ke),title:E,layout:{}});await x(),F(!1),A(""),e(Q.slug)}catch{v(l("Couldn\u2019t add the page \u2014 please retry."))}finally{S(!1)}}},_e=E=>{let Q=m??[],J=s.deletePage;if(!c||k||!J||Q.length<=1)return;let Se=Q.findIndex(we=>we.id===E.id),ue=Q.filter(we=>we.id!==E.id),ee=E.slug===p;qn(E.id,!0),g(ue),v(null),ee&&ue[0]&&e(ue[0].slug);let Ce=()=>{qn(E.id,!1);let we=C()??[];if(we.some(co=>co.id===E.id))return;let Ve=[...we];Ve.splice(Math.max(0,Math.min(Se,Ve.length)),0,E),g(Ve)};xI.undoable(l("Deleted \u201C{name}\u201D",{name:E.label}),{actionLabel:l("Undo"),commit:async we=>{await J(E.id,we),qn(E.id,!1)},undo:()=>{Ce(),ee&&e(E.slug)},onFail:()=>{Ce(),xI.error(l("Couldn\u2019t delete the page \u2014 please retry."))}})},ao=E=>n.send("storefront-editor:open-page",{slug:E}),Ne=E=>{if(!ae(E.label))return null;let Q=!t&&E.slug===p,J=i.canDeletePagesInline&&(m??[]).length>1,Se=lf(E),ue=E.kind==="lightbox",ee=Se||ue||E.draft?Jt(cf,{children:[Se&&X("span",{className:"sf-badge-dynamic",children:l("Dynamic")}),ue&&X("span",{className:"sf-badge-lightbox",children:l("Lightbox")}),E.draft&&X("span",{className:"sf-page-draft",children:l("draft")})]}):void 0,Ce=i.pageCreationInAdminForm||J?Jt(cf,{children:[i.pageCreationInAdminForm&&X(df,{kind:"plain",label:l("Edit \u201C{name}\u201D in {place}",{name:E.label,place:l("the admin")}),onClick:()=>ao(E.slug),children:X(qe,{name:"pencil",size:13,strokeWidth:1.7,rounded:!0})}),J&&X(df,{kind:"delete",label:l("Delete \u201C{name}\u201D",{name:E.label}),disabled:k,onClick:()=>_e(E),children:X(qe,{name:"trash",size:13,strokeWidth:1.7,rounded:!0})})]}):void 0;return X(II,{icon:X(kE,{}),name:E.label,selected:Q,onSelect:()=>e(E.slug),preview:ee,actions:Ce,rowProps:{"data-page-slug":E.slug}},E.id)},be=(E,Q,J)=>{let Se=J.filter(Boolean);if(Se.length===0)return null;let ue=Be(E);return Jt(mE,{children:[X(SE,{count:Se.length,expanded:ue,onToggle:()=>W(E),children:Q}),ue&&Se]},E)},ye=(a?.rows??[]).filter(E=>ae(E.label)).map(E=>{let Q=t===E.key;return X(II,{icon:E.icon,name:E.label,selected:Q,onSelect:()=>r(E.key),preview:X("span",{className:"sf-badge-preview",children:l("Preview")}),actions:X(df,{kind:"plain",label:l("Open the {name} in a new tab",{name:E.label}),onClick:()=>window.open(E.href,"_blank","noopener,noreferrer"),children:X(qe,{name:"external-link",size:13,strokeWidth:1.7,rounded:!0})}),rowProps:{"data-shop-surface":E.key}},E.key)}),Z=i.hasSiteSettings&&!!a,fo=(()=>{if(m===null)return null;let E=[],Q=!1;for(let J of ge){Z&&!Q&&J.key.startsWith("system:")&&(E.push(be("shop",a.title,ye)),Q=!0);let Se=J.key===nf||J.label===af?l(J.label):J.label;E.push(be(J.key,Se,J.rows.map(Ne)))}return Z&&!Q&&E.push(be("shop",a.title,ye)),E})();return Jt("div",{className:"sf-pages",children:[X(va,{icon:X(vE,{}),title:l("Pages"),context:u,actions:X(hE,{label:l("New page"),onClick:Co,children:X(CE,{size:15})}),onHide:o}),X("div",{className:"sf-pages-find",children:X(mI,{type:"search",leftIcon:X(qe,{name:"search",size:14,rounded:!0}),placeholder:l("Search all pages\u2026"),value:w,onChange:E=>b(E.target.value),"aria-label":l("Search all pages")})}),I&&!L&&X("div",{className:"sf-note sf-note--error",role:"alert",children:I}),fo===null?X("div",{className:"sf-note",children:l("Loading\u2026")}):fo.some(Boolean)?X(yE,{ariaLabel:l("Pages"),className:"sf-scroll",children:fo}):X("div",{className:"sf-note",children:w.trim()?l("No pages match your search"):l("No pages yet. Add one with + above.")}),X(gE,{open:L,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:Jt(cf,{children:[X(pI,{variant:"secondary",onClick:()=>F(!1),children:l("Cancel")}),X(pI,{onClick:()=>{De()},disabled:k||!O.trim(),loading:k,children:l("Add page")})]}),children:X(bE,{label:l("Page name"),htmlFor:H,hint:O.trim()?l("URL: /{slug}",{slug:gI(O,Ke)}):void 0,error:I??void 0,children:X(mI,{id:H,value:O,invalid:!!I,onChange:E=>A(E.target.value),onKeyDown:E=>{E.key==="Enter"&&De()},placeholder:l("e.g. About")})})})]})}function kE(){return Jt("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[X("path",{d:"M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z"}),X("path",{d:"M14 3v5h5"})]})}import{jsx as TE}from"react/jsx-runtime";import{createContext as FE,useCallback as EE,useContext as LE,useState as PE}from"react";var yI={enabled:!0,title:"",subtitle:"",greeting:""},SI=FE({chat:yI,setChat:()=>{},selected:!1,setSelected:()=>{},select:()=>{},setSelectHandler:()=>{}});function CU({children:e,chat:o=yI,onChatChange:t}){let[r,a]=PE(!1),n=EE(c=>t?.(c),[t]),{select:s,setSelectHandler:i}=wd();return TE(SI.Provider,{value:{chat:o,setChat:n,selected:r,setSelected:a,select:s,setSelectHandler:i},children:e})}var $n=()=>LE(SI);import{jsx as uf}from"react/jsx-runtime";import{DesktopIcon as RE,PhoneIcon as AE,TabletIcon as OE}from"efficient-easel/icons";import{VIEW_DESKTOP_MIN as kU,VIEW_TABLET_MIN as TU,VIEW_TIER_LABEL as CI,VIEW_TIERS as vI,viewTierForWidth as FU}from"efficient-easel/screen/lib/content/view-tiers";var BE={desktop:uf(RE,{}),tablet:uf(OE,{}),mobile:uf(AE,{})},wI=vI.map(e=>({id:e,get label(){return l(CI[e])},icon:BE[e]}));import{PreviewDeviceContext as kI,usePreviewDevice as DU}from"efficient-easel/screen/components/PreviewDeviceContext";import{jsx as DE}from"react/jsx-runtime";import{createContext as _E,useCallback as TI,useContext as NE,useMemo as ME,useRef as HE}from"react";var WE=Object.fromEntries(ha.map(e=>[e,{value:"",error:null}])),FI=_E({links:Fd,rows:WE,canSave:!1,saveLink:async()=>({ok:!1,error:"There is no website to save to."}),openPanel:()=>{},setOpenHandler:()=>{}});function WU({children:e,value:o}){let t=HE(()=>{}),r=TI(()=>t.current(),[]),a=TI(s=>{t.current=s},[]),n=ME(()=>({...o,openPanel:r,setOpenHandler:a}),[o,r,a]);return DE(FI.Provider,{value:n,children:e})}var jr=()=>NE(FI);import{jsx as GE}from"react/jsx-runtime";import{createContext as zE,useContext as UE,useMemo as qE,useState as $E}from"react";var EI=zE(null);function qU({children:e}){let[o,t]=$E(null),r=qE(()=>({surface:o,setSurface:t}),[o]);return GE(EI.Provider,{value:r,children:e})}function LI(){return UE(EI)??{surface:null,setSurface:()=>{}}}var Kr="Scrolling Bar",{Provider:KU,useSelection:jn}=Ia("selectedHeroId");import{jsx as Y,jsxs as yt,Fragment as uc}from"react/jsx-runtime";import{useState as TA}from"react";import{useEasel as FA}from"efficient-easel/easel";import{InspectorHead as EA,InspectorIconButton as Ag}from"efficient-easel/chrome";import{DuplicateIcon as LA,TrashIcon as PA}from"efficient-easel/icons";import{panelFieldsOf as PI}from"efficient-easel/screen/lib/puck/panel-fields";import{jsx as T,Fragment as $,jsxs as j}from"react/jsx-runtime";import{BlockBannerIcon as VE,BlockBoxIcon as XE,BlockButtonIcon as YE,BlockDividerIcon as AI,BlockFooterIcon as OI,BlockHeadingIcon as ZE,BlockProductIcon as QE,BlockSocialIcon as JE,BlockTextIcon as eL,ChatIcon as oL,GridIcon as tL,ImageIcon as rL,PageIcon as aL}from"efficient-easel/icons";import{jsx as pf,Fragment as jE,jsxs as KE}from"react/jsx-runtime";var RI=KE(jE,{children:[pf("circle",{cx:"9",cy:"20",r:"1.3"}),pf("circle",{cx:"18",cy:"20",r:"1.3"}),pf("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 nL={header:j($,{children:[T("rect",{x:"3",y:"5",width:"18",height:"14",rx:"2"}),T("path",{d:"M3 9.5h18"})]}),website:j($,{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:j($,{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:j($,{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:j($,{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:j($,{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:j($,{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:j($,{children:[T("circle",{cx:"11",cy:"11",r:"6"}),T("path",{d:"M20 20l-4.2-4.2"})]}),CartBlock:RI,CountrySwitchBlock:j($,{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:j($,{children:[T("path",{d:"M3 9h18"}),T("path",{d:"M3 14h8M14 14h2M18 14h3"})]}),Hero:j($,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M7 13.5h7M7 16.5h10"})]}),HeroSlide:j($,{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:j($,{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:j($,{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:j($,{children:[T("rect",{x:"6",y:"4",width:"12",height:"16",rx:"2"}),T("path",{d:"M9 15h6M9 17.5h4"})]}),AlloyWheelsListing:j($,{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:j($,{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:j($,{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:j($,{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:j($,{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:j($,{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:j($,{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:j($,{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:j($,{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:j($,{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:j($,{children:[T("path",{d:"M3.5 20h17"}),T("path",{d:"M6 20v-7M11 20V7M16 20v-5M20.5 20v-9"})]}),Logos:j($,{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:j($,{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:j($,{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:j($,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M3 13.5h18M7 16.8h6"})]}),Split:j($,{children:[T("rect",{x:"3",y:"5",width:"8",height:"14",rx:"1.5"}),T("path",{d:"M14 8.5h6M14 12h6M14 15.5h4"})]}),Eyebrow:j($,{children:[T("path",{d:"M4 8.5h4.5M11 8.5h9"}),T("path",{d:"M4 14.5h16"})]}),HeroGroup:j($,{children:[T("rect",{x:"3.5",y:"4.5",width:"17",height:"15",rx:"2"}),T("path",{d:"M7 9h8M7 12.5h10M7 16h6"})]}),Form:j($,{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($,{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:j($,{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:j($,{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"})},lL=T("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2.5"}),sL={footer:OI,Footer:OI,Divider:AI,FooterDivider:AI,Banner:VE,Flex:XE,FooterSocial:JE,page:aL,chat:oL,Heading:ZE,Text:eL,ImageBlock:rL,ButtonBlock:YE,Grid:tL,ProductRef:QE},iL={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial",SiteHeader:"header",SiteFooter:"footer"};function er({type:e,size:o=16,className:t}){let r=iL[e]??e,a=sL[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:nL[r]??lL})}import{jsx as io,Fragment as fL,jsxs as cL}from"react/jsx-runtime";import{useEffect as dL,useId as uL,useState as pL}from"react";import{SettingsField as BI,SettingsSwitch as mL}from"efficient-easel/panel";import{EyeIcon as xL,TypeIcon as IL}from"efficient-easel/icons";var hL="Chat with us",gL="We usually reply within a few minutes",bL="Hi! Ask us anything \u2014 about a wheel, an order, or fitment. Leave your details and we\u2019ll reply.";function mf({label:e,value:o,placeholder:t,onCommit:r,multiline:a=!1}){let[n,s]=pL(o);dL(()=>s(o),[o]);let i=()=>{n!==o&&r(n)};return io(BI,{label:e,icon:io(IL,{}),children:a?io("textarea",{value:n,placeholder:t,rows:3,onChange:c=>s(c.target.value),onBlur:i,"aria-label":e}):io("input",{type:"text",value:n,placeholder:t,onChange:c=>s(c.target.value),onBlur:i,onKeyDown:c=>{c.key==="Enter"&&c.currentTarget.blur()},"aria-label":e,autoComplete:"off"})})}function DI(){let{chat:e,setChat:o}=$n(),t=uL();return cL(fL,{children:[io(BI,{label:l("Show the chat bubble"),labelId:t,icon:io(xL,{}),action:io(mL,{checked:e.enabled,onChange:r=>o({enabled:r}),ariaLabelledBy:t}),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.")}),io(Ar,{label:"Wording"}),io(mf,{label:l("Title"),value:e.title,placeholder:hL,onCommit:r=>o({title:r})}),io(mf,{label:l("Subtitle"),value:e.subtitle,placeholder:gL,onCommit:r=>o({subtitle:r})}),io(mf,{label:l("Greeting message"),value:e.greeting,placeholder:bL,onCommit:r=>o({greeting:r}),multiline:!0}),io("p",{className:"es-field-hint sf-hint-keep",children:l("Leave a field blank to use the built-in wording.")})]})}import{jsx as bt,Fragment as _f,jsxs as WI}from"react/jsx-runtime";import{useEffect as XL,useId as MI,useState as HI}from"react";import{SettingsField as YL}from"efficient-easel/panel";import{jsx as WL}from"react/jsx-runtime";import{forwardRef as yL,createElement as xf}from"react";var _I={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=yL(({color:n="currentColor",size:s=24,stroke:i=2,title:c,className:p,children:u,...m},x)=>xf("svg",{ref:x,..._I[e],width:s,height:s,className:["tabler-icon",`tabler-icon-${o}`,p].filter(Boolean).join(" "),...e==="filled"?{fill:n}:{strokeWidth:i,stroke:n},...m},[c&&xf("title",{key:"svg-title"},c),...r.map(([g,C])=>xf(g,C)),...Array.isArray(u)?u:[u]]));return a.displayName=`${t}`,a};var SL=[["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"}]],If=G("outline","brand-facebook","BrandFacebook",SL);var CL=[["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"}]],hf=G("outline","brand-instagram","BrandInstagram",CL);var vL=[["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"}]],gf=G("outline","brand-line","BrandLine",vL);var wL=[["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"}]],bf=G("outline","brand-linkedin","BrandLinkedin",wL);var kL=[["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"}]],yf=G("outline","brand-pinterest","BrandPinterest",kL);var TL=[["path",{d:"M15 10l-4 4l6 6l4 -16l-18 7l4 2l2 6l3 -4",key:"svg-0"}]],Sf=G("outline","brand-telegram","BrandTelegram",TL);var FL=[["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"}]],Cf=G("outline","brand-tiktok","BrandTiktok",FL);var EL=[["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"}]],vf=G("outline","brand-wechat","BrandWechat",EL);var LL=[["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"}]],wf=G("outline","brand-whatsapp","BrandWhatsapp",LL);var PL=[["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"}]],kf=G("outline","brand-x","BrandX",PL);var RL=[["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"}]],Tf=G("outline","brand-youtube","BrandYoutube",RL);var AL=[["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"}]],Ff=G("filled","brand-facebook-filled","BrandFacebookFilled",AL);var OL=[["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"}]],Ef=G("filled","brand-instagram-filled","BrandInstagramFilled",OL);var BL=[["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"}]],Lf=G("filled","brand-linkedin-filled","BrandLinkedinFilled",BL);var DL=[["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"}]],Pf=G("filled","brand-pinterest-filled","BrandPinterestFilled",DL);var _L=[["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"}]],Rf=G("filled","brand-tiktok-filled","BrandTiktokFilled",_L);var NL=[["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"}]],Af=G("filled","brand-whatsapp-filled","BrandWhatsappFilled",NL);var ML=[["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"}]],Of=G("filled","brand-x-filled","BrandXFilled",ML);var HL=[["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"}]],Bf=G("filled","brand-youtube-filled","BrandYoutubeFilled",HL);var C8="outline",Kn={fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},GL={},Df={fillRule:"evenodd"},zL=[["path",{...Kn,d:"M21 4L3 11L7 13L9 19L12 15L17 20z"}],["path",{...Df,d:"M21 4L3 11L7 13L9 19L12 15L17 20zM15.212 8.939 10.576 13.576 11.424 14.424 16.061 9.788z"}]],UL=[["path",{...Kn,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",{...GL,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("")}]],qL=[["path",{...Kn,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",{...Kn,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",{...Df,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",{...Df,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("")}]],$L=G("filled","brand-telegram-filled","BrandTelegramFilled",zL),jL=G("filled","brand-line-filled","BrandLineFilled",UL),KL=G("filled","brand-wechat-filled","BrandWechatFilled",qL),VL={instagram:{outline:hf,solid:Ef},facebook:{outline:If,solid:Ff},tiktok:{outline:Cf,solid:Rf},youtube:{outline:Tf,solid:Bf},x:{outline:kf,solid:Of},linkedin:{outline:bf,solid:Lf},pinterest:{outline:yf,solid:Pf},whatsapp:{outline:wf,solid:Af},telegram:{outline:Sf,solid:$L},line:{outline:gf,solid:jL},wechat:{outline:vf,solid:KL}};function NI({platform:e,iconStyle:o,size:t}){let r=VL[e][o];return WL(r,{size:t,stroke:1.75,"aria-hidden":"true",focusable:"false"})}var ZL={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 QL({platform:e}){let{rows:o,saveLink:t}=jr(),{value:r,error:a}=o[e],[n,s]=HI(r),[i,c]=HI(!1),p=MI(),u=MI();XL(()=>s(r),[r]);let m=async()=>{if(n.trim()===r){n!==r&&s(r);return}c(!0),await t(e,n),c(!1)},x=Td[e];return WI(_f,{children:[bt(YL,{label:l(x),htmlFor:p,icon:bt(NI,{platform:e,iconStyle:"outline",size:18}),children:bt("input",{id:p,type:"text",inputMode:"url",value:n,placeholder:ZL[e],onChange:g=>s(g.target.value),onBlur:()=>{m()},onKeyDown:g=>{g.key==="Enter"&&g.currentTarget.blur(),g.key==="Escape"&&(s(r),g.currentTarget.blur())},"aria-invalid":a?!0:void 0,"aria-describedby":a?u:void 0,"aria-busy":i||void 0,autoComplete:"off",spellCheck:!1})}),a&&bt("p",{id:u,className:"sf-note sf-note--error",role:"alert",children:a})]})}function GI({unavailable:e}){let{canSave:o}=jr();return!o&&e?bt(_f,{children:e}):WI(_f,{children:[bt("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.")}),ha.map(t=>bt(QL,{platform:t},t))]})}import{jsx as ar,jsxs as AR}from"react/jsx-runtime";import{useId as OR,useMemo as BR}from"react";import{useEasel as DR}from"efficient-easel/easel";import{SettingsField as _R,SettingsSwitch as NR}from"efficient-easel/panel";import{EyeIcon as MR}from"efficient-easel/icons";import{jsx as Bo,jsxs as tl}from"react/jsx-runtime";import{useCallback as tr,useEffect as rr,useId as kR,useRef as Wo,useState as Jr}from"react";var zI="data-puck-overlay-portal";function Vn(e){return e.setAttribute(zI,"true"),()=>e.removeAttribute(zI)}import{jsx as Xr,jsxs as lh}from"react/jsx-runtime";var Nf="small",Mf="dot",JL=[{label:"Small",value:"small"},{label:"Display",value:"display"}],eP=[{label:"Dot \u25CF",value:"dot"},{label:"Cross \u2715",value:"cross"},{label:"Slash /",value:"slash"},{label:"Triangle \u25BC",value:"triangle"},{label:"None",value:"none"}],UI={dot:"\u25CF",cross:"\u2715",slash:"/",triangle:"\u25BC",none:""},oP={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)]"},tP={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 qI(e){return to(JL,Nf,e)}function $I(e){return to(eP,Mf,e)}function jI(e){return oP[e]}function KI(e,o){return tP[e][o]}var Hf="left",rP=[{label:"Left",value:"left",cell:"left"},{label:"Right",value:"right",cell:"right"},{label:"Up",value:"up",cell:"top"},{label:"Down",value:"down",cell:"bottom"}],aP={left:"storefront-ticker",right:"storefront-ticker-right",up:"storefront-ticker-up",down:"storefront-ticker-down"};function VI(e){return to(rP,Hf,e)}function XI(e){return e==="up"||e==="down"}function YI(e,o){return`${aP[e]} ${o}s linear infinite`}import{jsx as fe,jsxs as qf}from"react/jsx-runtime";import{Fragment as ah}from"react";import{Fragment as iP,jsx as zf}from"react/jsx-runtime";import{Fragment as ZI,jsx as Xn,jsxs as nP}from"react/jsx-runtime";import{createContext as QI,useContext as Wf,useId as lP,useMemo as sP}from"react";var Gf=QI(null),JI=QI(null);function G8({needles:e,styles:o,type:t,children:r}){let a=lP(),n=JSON.stringify([a,e,o,t]),s=sP(()=>kx(e,o,a,i=>Rn(t,i)),[n]);return s?nP(ZI,{children:[Xn("style",{"data-sf-part-styles":"",dangerouslySetInnerHTML:{__html:Fx(s)}}),Xn(Gf.Provider,{value:s,children:r})]}):Xn(ZI,{children:r})}function eh(e){let o=Wf(Gf),t=Wf(JI),r=Ex(o,e);return r&&r.stamp!==t?r:null}function z8(e){return Tx(Wf(Gf),e)}function oh({stamp:e,children:o}){return Xn(JI.Provider,{value:e,children:o})}function Vr({value:e,children:o}){let t=eh(e);return t?zf(oh,{stamp:t.stamp,children:zf("span",{[Mi]:t.stamp,children:o})}):zf(iP,{children:o})}import{jsx as Uf,Fragment as fP}from"react/jsx-runtime";function th({className:e=""}){return Uf("sup",{className:`text-accent tracking-normal ${e}`,children:"\xAE"})}function Yn(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(Uf(th,{},`r${a}`))}),Uf(fP,{children:t})}var X8=th;function $f(e,o=!1){let t=hP(o),r=cs(e);if(r.length===1){let[n]=r,s=fs(n),i=s?xP(s,n.children):n.children;return fe(Vr,{value:e,children:Zn(i,t)})}let a=[];return r.forEach((n,s)=>{if(n.bullet){a.push(fe("span",{"data-sf-bullet":"",className:cP,children:Zn(n.children,t)},s));return}if(n.number!=null){a.push(qf("span",{"data-sf-number":n.number,className:dP,children:[qf("span",{className:uP,children:[n.number,"."]}),Zn(n.children,t)]},s));return}s>0&&!pP(r[s-1])&&a.push(fe("br",{},`br${s}`)),a.push(fe(ah,{children:Zn(n.children,t)},s))}),fe(Vr,{value:e,children:a})}var cP="relative block pl-6 before:absolute before:left-1.5 before:font-bold before:text-accent before:content-['\xB7']",dP="relative block pl-[2em]",uP="absolute left-0 w-[1.6em] text-right tabular-nums";function pP(e){return e.bullet||e.number!=null}var mP="text-accent underline underline-offset-[0.18em]";function xP(e,o){let[t,...r]=o;return t?.kind==="text"?[{kind:"text",text:`${e}${t.text}`},...r]:[{kind:"text",text:e},...o]}function IP(e){if(e)return wx(e)?e:Object.hasOwn(jo,e)?jo[e]:void 0}function Zn(e,o){let t=[],r=!1;return e.forEach((a,n)=>{if(a.kind==="text"){t.push(fe("span",{children:Yn(a.text)},n)),r=!0;return}r||t.push(fe("span",{},`e${n}`)),t.push(nh(a,n,o)),r=!1}),r||t.push(fe("span",{},"end")),t}function rh(e,o){return e.length===1&&e[0].kind==="text"?Yn(e[0].text):e.map((t,r)=>t.kind==="text"?fe(ah,{children:Yn(t.text)},r):nh(t,r,o))}function hP(e){return e?"font-normal italic text-accent":"not-italic text-accent"}function aq(e){return fe(Vr,{value:e,children:fe("span",{children:e})})}function nh(e,o,t){if(e.kind==="link")return fe("a",{href:e.href,className:mP,children:rh(e.children,t)},o);let r=rh(e.children,t),a=wu[e.kind];if(a)return fe("span",{[ku]:a,children:r},o);switch(e.kind){case"underline":return fe("u",{children:r},o);case"sup":return fe("sup",{children:r},o);case"sub":return fe("sub",{children:r},o);case"color":{let n=IP(e.color);return n?fe("span",{style:{color:n},children:r},o):fe("span",{children:r},o)}case"accent":case"highlight":return fe("em",{className:t,children:r},o);case"bold":return fe("strong",{className:"font-semibold",children:r},o);case"italic":return fe("em",{className:"italic",children:r},o);case"strike":return fe("s",{className:"line-through",children:r},o);default:return fe("span",{children:r},o)}}function nq(e,o=!0){let t=e.split(`
|
|
5
|
+
`);return fe(Vr,{value:e,children:t.map((r,a)=>qf("span",{children:[$f(r,o),a<t.length-1?fe("br",{}):null]},a))})}function lq(e){return e.split(/\n\s*\n/).map(o=>o.trim()).filter(Boolean)}var gP={"themed-band":"text-fg/70","themed-section":"text-fg-dim","dark-media":"text-overlay-fg/70"};function sh({items:e,separator:o=Mf,size:t=Nf,durationSec:r=50,scroll:a=Hf,backdrop:n="themed-band",className:s}){let i=qI(t),c=VI(a),p=$I(o),u=`text-accent ${KI(i,p)}`.trim(),m=UI[p],x=m===""?Xr("span",{}):Xr("span",{className:u,children:m}),g=XI(c),C=g?"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",w=g?"inline-flex flex-col items-center gap-[60px] max-[800px]:gap-8":"inline-flex items-center gap-[60px] max-[800px]:gap-8",b=k=>Xr("span",{className:C,children:e.map((S,I)=>{let v=typeof S=="string"?S:S.text,L=typeof S=="object"&&S.gold;return lh("span",{className:w,children:[Xr("span",{className:L?"text-accent":void 0,children:$f(v)}),x]},I)})},k);return Xr("div",{className:`overflow-hidden ${s??""}`,children:lh("div",{className:`flex ${g?"flex-col ":""}whitespace-nowrap ${jI(i)} ${gP[n]}`,style:{animation:YI(c,r)},children:[b("a"),b("b")]})})}import{jsx as Yr,jsxs as zP}from"react/jsx-runtime";import{createContext as UP,useContext as qP}from"react";import{jsx as or,jsxs as mh}from"react/jsx-runtime";import{useEffect as jf,useRef as PP,useState as Qn}from"react";import{jsx as ih}from"react/jsx-runtime";import{createContext as bP,lazy as hq,Suspense as gq,useContext as yP}from"react";var SP={Link:jc,Image:$c},CP=bP(SP);function fh(){return yP(CP)}function bq(e){let{Link:o}=fh();return ih(o,{...e})}function ch(e){let{Image:o}=fh();return ih(o,{...e})}import{jsx as dh,Fragment as vP,jsxs as wP}from"react/jsx-runtime";import{useEffect as kP,useRef as uh,useState as TP}from"react";var FP="#t=0.001",EP=2;function LP(e,o){if(e.readyState<EP||!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 ph({src:e,objectPosition:o="50% 50%",onError:t}){let r=uh(null),a=uh(null),[n,s]=TP(!1);return kP(()=>{let i=r.current,c=a.current;if(n||!i||!c)return;let p=()=>{LP(i,c)&&s(!0)};return p(),i.addEventListener("loadeddata",p),i.addEventListener("seeked",p),()=>{i.removeEventListener("loadeddata",p),i.removeEventListener("seeked",p)}},[n]),wP(vP,{children:[dh("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&&dh("video",{ref:r,src:`${e}${FP}`,muted:!0,playsInline:!0,preload:"auto",className:"hidden",onError:t})]})}var RP=.5;function xh({videoSrc:e,posterSrc:o,showVideo:t=!0,playbackRate:r=RP,objectPosition:a="50% 50%",quiet:n=!1}){let s=o||"",i=e||"",[c,p]=Qn(!1),[u,m]=Qn(!1),[x,g]=Qn(!1),[C,w]=Qn(!1),b=PP(null);jf(()=>{p(!1),m(!1),g(!1)},[e,o]),jf(()=>{if(typeof window>"u")return;let S=()=>{let I=window;I.requestIdleCallback?I.requestIdleCallback(()=>w(!0),{timeout:2e3}):setTimeout(()=>w(!0),800)};if(document.readyState==="complete"){S();return}return window.addEventListener("load",S,{once:!0}),()=>window.removeEventListener("load",S)},[]),jf(()=>{let S=b.current;if(!S)return;let I=()=>{S.playbackRate=r};return I(),S.addEventListener("loadedmetadata",I),()=>S.removeEventListener("loadedmetadata",I)},[e,r]);let k=Kc(s);return mh("div",{className:"absolute inset-0 z-[1]",children:[or("div",{className:"absolute inset-0",style:{background:"var(--site-surface)"}}),s&&(k?or("img",{src:s,alt:"",className:"absolute inset-0 z-[2] h-full w-full object-cover",style:{display:c?"none":"block",objectPosition:a},onError:()=>p(!0)},s):or(ch,{src:s,alt:"",fill:!0,priority:!0,sizes:"100vw",className:"z-[2] object-cover",style:{display:c?"none":"block",objectPosition:a},onError:()=>p(!0)},s)),t&&!n&&i&&C&&!u&&mh("video",{ref:b,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:()=>m(!0),children:[Vc(i)&&or("source",{src:i.replace(/\.mp4$/,".av1.mp4"),type:'video/mp4; codecs="av01.0.08M.10"'}),or("source",{src:i,type:"video/mp4"})]},i),t&&n&&i&&C&&!x&&(!s||c)&&or(ph,{src:i,objectPosition:a,onError:()=>g(!0)},i)]})}var Ih=["top","middle","bottom"],hh=["left","center","right"],gh="bottom",bh="left",AP={top:"Top",middle:"Middle",bottom:"Bottom"},OP={left:"Left",center:"Center",right:"Right"};var Pq="Up and down",Rq="Sideways",BP={top:"flex-start",middle:"center",bottom:"flex-end"},DP={left:"flex-start",center:"center",right:"flex-end"},_P="--sf-hero-phone-y",NP="--sf-hero-phone-x";function MP(e){return Ih.includes(e)?e:gh}function HP(e){return hh.includes(e)?e:bh}function yh(e,o){let t=MP(e),r=HP(o),a={};return t!==gh&&(a[_P]=BP[t]),r!==bh&&(a[NP]=DP[r]),a}function Aq(){return Ih.map(e=>({label:AP[e],value:e}))}function Oq(){return hh.map(e=>({label:OP[e],value:e}))}var WP="#0A0A0A",GP=[[0,".5"],[30,".1"],[60,".1"],[100,".85"]];function Sh(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 Ch(e){return e==null?!0:e!==!1}function vh(e){let o=(e?Sh(e):null)??Sh(WP);return`linear-gradient(180deg, ${GP.map(([t,r])=>`rgba(${o},${r}) ${t}%`).join(", ")})`}var Kf=UP({});function Uq({name:e,process:o,mediaType:t="video",mediaSrc:r,videoSpeed:a,poster:n,objectPosition:s,tintColor:i="#000000",tintOpacity:c=0,groups:p,editing:u=!1,themeClassName:m,themeStyle:x}){let{alignment:g="left",textureOpacity:C,textureOn:w,textureColor:b,quietVideo:k,phoneUpDown:S,phoneSideways:I}=qP(Kf),v=t==="video",L=v?Ir(r):void 0,F=v?Ir(n):Ir(r)??Ir(n),O=typeof a=="number"?a/100:1;return zP("section",{className:m?`relative h-full w-full overflow-hidden ${m}`:"relative h-full w-full overflow-hidden",style:x,"data-slide-name":e??"","data-slide-process":o??"","data-slide-media":L?"video":"still",children:[Yr(xh,{videoSrc:L,posterSrc:F,showVideo:v,playbackRate:O,objectPosition:s,quiet:k}),c>0&&Yr("div",{className:"absolute inset-0 z-[2]",style:{background:i,opacity:Math.min(Math.max(c,0),100)/100}}),Ch(w)&&Yr("div",{className:"absolute inset-0 z-[2]",style:{background:vh(b),...C!==void 0?{opacity:C/100}:null}}),Yr("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",u?"sf-hero-group-layer-edit":""].filter(Boolean).join(" "),style:{...Iu,...yh(S,I)},children:p&&Yr(p,{className:"sf-hero-group-zone",minEmptyHeight:160})})]})}var wh=Array.from({length:3},(e,o)=>({name:`Slide ${o+1}`,process:"Category",mediaType:"image",mediaVideo:"",poster:""}));import{jsx as Vf}from"react/jsx-runtime";var $P={"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]"},jP=`calc(${Za} - ${Qe}*2)`,kh=`var(${js},${Qe})`,Kq=`pointer-events-none absolute inset-y-0 left-[${kh}] right-[${kh}] z-[6] mx-auto max-w-[var(${Ks},${jP.replace(/ /g,"_")})]`;function Jn(e,o){return`pointer-events-auto absolute ${$P[e]} z-[6] sf-hero-overlay-rail flex ${o}`}function Th(e){return po.includes(e)?e:null}var KP="bottom-right",VP=["outline","solid","square","bare"],XP="outline",Zq={outline:"Outline",solid:"Solid",square:"Square",bare:"Bare"},Qq=!1,Fh=["prev","next"],Eh={prev:"Previous slide",next:"Next slide"};function YP(e){return VP.includes(e)?e:XP}function ZP(e){return Th(e)??KP}var QP="flex-row items-center gap-2";function Lh(e){return Jn(ZP(e),QP)}var JP={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 Ph(e){return JP[YP(e)]}function Rh(e){return e.shown===!0&&(e.count??0)>1}function el(e,o,t){if(t<=1)return o;let r=Math.min(Math.max(o,0),t-1);return e==="prev"?(r-1+t)%t:(r+1)%t}function Ah({shape:e,placement:o,ref:t}){let r=Ph(e);return Vf("div",{ref:t,className:Lh(o),style:{color:"var(--overlay-fg)"},children:Fh.map(a=>Vf("button",{type:"button","data-hero-nav":a,"aria-label":Eh[a],className:r,children:Vf(qe,{name:"chevron-right",size:18,rounded:!0,style:a==="prev"?{rotate:"180deg"}:void 0})},a))})}import{jsx as Ae,jsxs as Xf,Fragment as Zr}from"react/jsx-runtime";var eR=po;var oR="top-right",tR=["cards","dots","numbers","bar","tabs"],rR=["cards","dots","numbers","bar"],Oh="cards",l$={cards:"Cards",dots:"Dots",numbers:"Numbers",bar:"Bar",tabs:"Tabs"},s$=!0;function ol(e){return tR.includes(e)?e:Oh}function Bh(e){return rR.includes(e)?e:Oh}function aR(e){return eR.includes(e)?e:oR}var Dh={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",tabs:"flex-row items-stretch w-full overflow-x-auto"};function _h(e,o){return Jn(aR(o),Dh[ol(e)])}function Nh(e){return`flex ${Dh[ol(e)]}`}function Mh(e){return e.shown!==!1&&(e.count??0)>1}function nR(e){return{name:e.dataset.slideName||"",process:e.dataset.slideProcess||"",video:e.dataset.slideMedia==="video"}}function lR(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 Hh(e,o){let t=Array.from(o,nR);return lR(e,t)?e:t}function Wh({slides:e,active:o,shape:t,placement:r,ref:a,tone:n="media",label:s}){let i=ol(t),c=n==="surface"?{"--overlay-fg":"var(--fg)","--overlay-chrome":"var(--fg)","--overlay-scrim":"var(--site-surface-2)"}:void 0;return Xf("aside",{ref:a,"aria-label":s??"Featured slides",className:n==="surface"?Nh(i):_h(i,r),style:{color:"var(--overlay-fg)",...c},children:[i==="cards"&&Ae(sR,{slides:e,active:o}),i==="dots"&&Ae(iR,{count:e.length,active:o}),i==="numbers"&&Ae(fR,{count:e.length,active:o}),i==="bar"&&Ae(cR,{count:e.length,active:o}),i==="tabs"&&Ae(dR,{slides:e,active:o})]})}function sR({slides:e,active:o}){return Xf(Zr,{children:[Ae("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 Xf("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:[Ae("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}`}),Ae("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 iR({count:e,active:o}){return Ae(Zr,{children:Array.from({length:e},(t,r)=>Ae("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 fR({count:e,active:o}){return Ae(Zr,{children:Array.from({length:e},(t,r)=>Ae("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 cR({count:e,active:o}){return Ae(Zr,{children:Array.from({length:e},(t,r)=>Ae("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 dR({slides:e,active:o}){return Ae(Zr,{children:e.map((t,r)=>{let a=r===o;return Ae("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:Ae("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 uR,useState as pR}from"react";var Gh="(prefers-reduced-motion: reduce)";function mR(){return globalThis.window?.matchMedia?.(Gh)?.matches??!1}function p$(){return mR()?"auto":"smooth"}function zh(){let[e,o]=pR(!1);return uR(()=>{let t=globalThis.window?.matchMedia?.(Gh);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 Qr={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 Uh={min:40,max:100,step:5,fallback:100,unit:"vh"};function Yf(e){return`${typeof e=="number"?e:Uh.fallback}${Uh.unit}`}function qh(...e){return e.some(o=>typeof o=="number")}var xR=new Set(["Hero","HeroSingle","IntroBleed"]),$h={min:56,max:140,default:88},g$={min:0,max:120,step:2,default:28},jh=`var(--sf-header-h, ${$h.default}px)`,IR="--sf-header-set-h",b$="--sf-header-h",y$=`var(${IR}, ${$h.default}px)`,S$="sf-header-clearance",C$="sf-sticky-underheader";function hR(e){return e?.find(o=>o?.type&&o.type!==Fe)??null}function Kh(e){let o=hR(e)?.type;return!o||!xR.has(o)}function v$(e){return!Kh(e)}function w$(e){return!!e?.some(o=>o?.type===Fe)}function k$(e){return!e||e.length===0?!1:!e.some(o=>o?.type===Fe||o?.type===re)}var gR=["auto","shared","own"],bR="auto",yR="topSpace",T$="data-top-space";function SR(e){return gR.includes(e)?e:bR}function CR(e,o){let t=SR(e?.props?.[yR]);return t==="own"?!0:t==="shared"?!1:Kh(o)}function F$(e,o){return CR(e,o)?"own":null}var vR=40;function wR(e,o){return Math.abs(e)<=vR||Math.abs(e)<=Math.abs(o)?null:e<0?"next":"prev"}function Vh(e,o,t,r){let a=wR(e,o);return a?el(a,t,r):t}function Xh(e){return(e.count??0)>1&&e.editing!==!0}function Yh(e){return e.editing!==!0?!1:(e.slides??[])[e.shown??0]?.video===!0}function Zh(e){return e.editing!==!0?!1:!(e.playing===!0&&e.controlShown===!0)}import{HERO_SLIDER_GOTO_EVENT as Zf}from"efficient-easel/screen/lib/puck/preview-events";var TR=`
|
|
6
|
+
.hero-ticker-pick { cursor: pointer; }
|
|
7
|
+
.hero-ticker-pick:hover {
|
|
8
|
+
outline: 2px solid color-mix(in srgb, ${Qr.accent} 45%, transparent);
|
|
9
|
+
outline-offset: -2px;
|
|
10
|
+
}
|
|
11
|
+
.hero-ticker-pick[data-selected] {
|
|
12
|
+
outline: 2px solid ${Qr.accent};
|
|
13
|
+
outline-offset: -2px;
|
|
14
|
+
}
|
|
15
|
+
`,FR="Play video",ER="Hold video",LR="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",PR=()=>l("item"),Qf=["","","","","",""],Qh=new Map;function RR(e,o){let t=e?.ownerDocument?.defaultView;if(t)return t.addEventListener(Zf,o),()=>t.removeEventListener(Zf,o)}function Q$({slides:e,alignment:o,textureOpacity:t,showTexture:r,textureColor:a,phoneUpDown:n,phoneSideways:s,autoplay:i,autoplayInterval:c,showTicker:p,tickerItems:u,heightDesktop:m,heightMobile:x,showPicker:g,pickerShape:C,pickerPlacement:w,showArrows:b,arrowsShape:k,arrowsPlacement:S,editing:I}){let v=qh(m,x),L=v?"h-[var(--sf-hero-h-m)] min-[720px]:h-[var(--sf-hero-h-d)]":"h-screen min-h-[680px]",F=v?{"--sf-hero-h-d":Yf(m),"--sf-hero-h-m":Yf(x)}:void 0,O=(u??Qf.map(N=>({text:N}))).map(N=>N?.text?.trim()?N.text:I?PR():"").filter(Boolean),A=p!==!1,H=Wo(null),le=Wo(null),q=Wo(null),W=Wo(null),ge=Wo(null),_=kR(),ae=Wo(_),[Be,Ke]=Jr([]),[Co,De]=Jr(0),_e=Wo(0),[ao,Ne]=Jr(!1),[be,ye]=Jr(!1),[Z,fo]=Jr(null),E=zh(),{selectedHeroId:Q,select:J}=jn(),Se=tr(()=>H.current?.querySelector(".hero-track")??null,[]),ue=tr((N,M=!1)=>{De(N),_e.current=N,Qh.set(ae.current,N);let V=H.current?.querySelector(".hero-track");if(V)if(M){let pe=V.style.transition;V.style.transition="none",V.style.transform=`translateX(-${Math.max(0,N)*100}%)`,V.offsetHeight,V.style.transition=pe}else V.style.transform=`translateX(-${Math.max(0,N)*100}%)`},[]);rr(()=>{let N=H.current,M=N?.getAttribute("data-puck-component")||N?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||_;ae.current=M,fo(M);let V=Qh.get(M);typeof V=="number"&&(De(V),_e.current=V)},[]),rr(()=>{let N=Se();if(!N)return;let M=()=>{Ke(pe=>Hh(pe,N.querySelectorAll("[data-slide-name]")))};M();let V=new MutationObserver(M);return V.observe(N,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-slide-name","data-slide-process","data-slide-media"]}),()=>{V.disconnect()}},[Se]),rr(()=>{if(!I)return;let N=M=>{let V=M.detail;if(!V||typeof V.index!="number")return;let pe=H.current,No=pe?.getAttribute("data-puck-component")||pe?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||ae.current;V.id&&V.id!==No||ue(V.index,!0)};return RR(H.current,N)},[I,ue]);let ee=Be.length,Ce=Math.min(Math.max(Co,0),Math.max(0,ee-1)),we=Mh({shown:g,count:ee}),Ve=Rh({shown:b,count:ee}),co=Yh({editing:I,shown:Ce,slides:Be}),ua=Zh({editing:I,playing:be,controlShown:co}),vt=Xh({count:ee,editing:I}),vo=Wo(null),D=Wo(null),ie=tr(N=>{if(vo.current=null,D.current=null,!vt||N.touches.length!==1)return;let M=N.touches[0];vo.current={x:M.clientX,y:M.clientY},D.current={x:M.clientX,y:M.clientY}},[vt]),Xe=tr(N=>{if(!vo.current)return;if(N.touches.length!==1){vo.current=null;return}let M=N.touches[0];D.current={x:M.clientX,y:M.clientY}},[]),Ye=tr(()=>{let N=vo.current,M=D.current;if(vo.current=null,D.current=null,!vt||!N||!M)return;let V=Vh(M.x-N.x,M.y-N.y,_e.current,ee);V!==_e.current&&ue(V)},[vt,ee,ue]);rr(()=>{if(I||!i||ao||E||ee<=1)return;let N=Math.max(1,typeof c=="number"?c:6)*1e3,M=window.setTimeout(()=>ue((Ce+1)%ee),N);return()=>window.clearTimeout(M)},[I,i,c,ao,E,ee,Ce,ue]),rr(()=>{let N=[le.current,q.current,W.current].filter(Boolean),M=N.map(pe=>Vn(pe)),V=pe=>{let No=pe.target,xr=No.closest("[data-hero-nav]"),Uc=xr??No.closest("[data-idx]");if(!Uc)return;pe.stopPropagation(),pe.preventDefault();let kl=xr?el(xr.dataset.heroNav,_e.current,ee):Number(Uc.dataset.idx);Number.isNaN(kl)||(ue(kl,I),Se()?.querySelectorAll("[data-slide-name]")[kl]?.click())};return N.forEach(pe=>pe.addEventListener("click",V,{capture:!0})),()=>{M.forEach(pe=>pe?.()),N.forEach(pe=>pe.removeEventListener("click",V,{capture:!0}))}},[ee,ue,Se,I]),rr(()=>{if(!I)return;let N=ge.current;if(!N)return;let M=Vn(N),V=pe=>{pe.stopPropagation(),pe.preventDefault();let No=H.current,xr=No?.getAttribute("data-puck-component")||No?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||ae.current;J(xr)};return N.addEventListener("click",V,{capture:!0}),()=>{M?.(),N.removeEventListener("click",V,{capture:!0})}},[I,J,A,O.length]);let Re=tr(N=>{if(!N)return;let M=Vn(N),V=pe=>{pe.stopPropagation(),pe.preventDefault(),ye(No=>!No)};return N.addEventListener("click",V,{capture:!0}),()=>{M?.(),N.removeEventListener("click",V,{capture:!0})}},[]);return Bo(Kf.Provider,{value:{alignment:o,textureOpacity:t,textureOn:r,textureColor:a,quietVideo:ua,phoneUpDown:n,phoneSideways:s},children:tl("div",{ref:H,className:`relative mx-[var(--sf-hero-bleed-m,calc(50%_-_50vw))] w-[var(--sf-hero-bleed-w,100vw)] ${L} max-w-[var(--sf-hero-cap,none)] overflow-hidden`,style:F,onMouseEnter:()=>Ne(!0),onMouseLeave:()=>Ne(!1),onTouchStart:ie,onTouchMove:Xe,onTouchEnd:Ye,children:[Bo(e,{className:"hero-track flex h-full [&>*]:h-full [&>*]:min-w-full [&>*]:shrink-0 [&>*]:basis-full",style:{transform:`translateX(-${Ce*100}%)`,transition:E?"none":"transform 600ms cubic-bezier(.22,.61,.36,1)"},minEmptyHeight:400}),co&&Bo("div",{ref:Re,"data-hero-video-control":be?"playing":"held",className:"sf-hero-video-control absolute left-6 z-[7]",style:{top:`calc(${jh} + 16px)`},children:tl("button",{type:"button",className:LR,children:[Bo("span",{"aria-hidden":"true",children:be?"\u275A\u275A":"\u25B6"}),l(be?ER:FR)]})}),(we||Ve)&&tl("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:[we&&Bo(Wh,{ref:le,slides:Be,active:Ce,shape:Bh(C),placement:w}),Ve&&Bo(Ah,{ref:W,shape:k,placement:S})]}),we&&Bo("div",{ref:q,className:"sf-hero-phone-dots absolute bottom-[80px] left-1/2 z-[6] hidden -translate-x-1/2 items-center gap-2",children:Be.map((N,M)=>Bo("button",{type:"button","data-idx":M,"aria-label":`Go to slide ${M+1}`,className:`h-2 rounded-full transition-all motion-reduce:transition-none ${M===Ce?"w-5 bg-accent":"w-2 bg-white/45 hover:bg-white/70"}`},M))}),A&&O.length>0&&tl("div",{ref:ge,className:`sf-hero-ticker absolute inset-x-0 bottom-0 z-[5] border-t border-overlay-chrome/10 py-3.5${I?" hero-ticker-pick":""}`,"data-selected":I&&Z!=null&&Q===Z?"":void 0,style:{background:"rgba(10,10,10,.55)"},children:[I&&Bo("style",{children:TR}),Bo(sh,{items:O,backdrop:"dark-media"})]})]})})}var HR="root:default-zone";function Jh({heroId:e}){let{appState:o,dispatch:t}=DR(u=>u),r=o.data.content??[],a=r.findIndex(u=>u.props.id===e),n=a>=0?r[a]:null,s=n?n.props.showTicker??!0:!0,i=BR(()=>{let u=n?.props.tickerItems;return Array.isArray(u)?u:Qf.map(m=>({text:m}))},[n]),c=OR();if(!n)return ar("p",{className:"sf-note",children:l("This ticker\u2019s hero is no longer on the page.")});let p=u=>t({type:"replace",destinationZone:HR,destinationIndex:a,data:{...n,props:{...n.props,...u}}});return AR("div",{children:[ar(Ar,{label:"Ticker"}),ar(_R,{label:l("Show ticker"),labelId:c,icon:ar(MR,{}),action:ar(NR,{checked:s,onChange:u=>p({showTicker:u}),ariaLabelledBy:c})}),ar(ii,{label:si.label,icon:si.icon,items:i,placeholder:"item",onChange:u=>p({tickerItems:u}),markup:!0})]})}import{jsx as yo,jsxs as Jf,Fragment as WR}from"react/jsx-runtime";import{useCallback as GR,useRef as zR,useState as ea}from"react";import{InspectorIconButton as UR}from"efficient-easel/chrome";import{PopupMenu as qR,PopupMenuItem as $R,PopupMenuLabel as rl}from"efficient-shell/ui";import{CopyToPageIcon as jR}from"efficient-easel/icons";import{cloneNodeWithFreshIds as eg,docToNode as c9,nodeToDoc as d9}from"efficient-easel/screen/lib/puck/section-doc";function og({node:e,currentSlug:o,siteId:t,tokenRef:r,runAuthed:a,onNotify:n}){let[s,i]=ea(!1),[c,p]=ea(null),u=Me(),[m,x]=ea(!1),[g,C]=ea(null),w=zR(null),[b,k]=ea(null),S=GR(async()=>{if(u.usesBridgedToken&&!r.current){x(!0);return}try{p(await Ze(u).pages.list(t?{siteId:t}:void 0))}catch{x(!0)}},[r,t,u]),I=()=>{if(s){i(!1);return}let F=w.current?.getBoundingClientRect();F&&k({top:F.bottom+6,right:Math.max(8,window.innerWidth-F.right)}),p(null),x(!1),S(),i(!0)},v=(c??[]).filter(F=>F.slug!==o),L=async F=>{if(g)return;C(F.slug);let O=eg(e),A=u.documentHooks?.storedNode?.(O)??O,H=Ze(u).pages,le=await a(async()=>{let q=await H.load({id:F.id});if(!q)throw new Error(`Page "${F.slug}" no longer exists.`);let W=q.layout??{},ge=Array.isArray(W.content)?[...W.content]:[],_=ge.findIndex(ae=>ae?.type===re);ge.splice(_===-1?ge.length:_,0,A),await H.save(F.id,{layout:{root:{},zones:{},...W,content:ge}},{version:q.version,clientId:""})});C(null),i(!1),n?.(le?l("Duplicated to \u201C{name}\u201D",{name:F.label}):l("Couldn\u2019t duplicate the section \u2014 please retry"),le?"success":"error")};return Jf(WR,{children:[yo("span",{"data-menu-toggle":!0,style:{display:"contents"},children:yo(UR,{buttonRef:w,label:l("Duplicate to another page"),hasPopup:"menu",expanded:s,onClick:I,children:yo(jR,{size:15})})}),s&&b&&yo(qR,{portal:!0,style:{top:b.top,right:b.right},onClose:()=>i(!1),children:Jf("div",{role:"menu","aria-label":l("Duplicate to page"),children:[yo(rl,{children:l("Duplicate to page")}),m?yo(rl,{children:l("Couldn\u2019t load pages")}):c===null?yo(rl,{children:l("Loading\u2026")}):v.length===0?yo(rl,{children:l("No other pages")}):v.map(F=>Jf($R,{role:"menuitem",disabled:g!==null,onClick:()=>{L(F)},children:[yo("span",{className:"min-w-0 flex-1 truncate",children:F.label}),g===F.slug?yo("span",{className:"shrink-0 text-xs",children:l("Copying\u2026")}):F.draft&&yo("span",{className:"shrink-0 text-xs",children:l("draft")})]},F.id))]})})]})}import{ScreenPartsProvider as k9,sameInspectorMode as T9,SELECTION_MODE as tg,useScreenParts as F9,useScreenBlockLook as E9,useScreenBlockRules as L9,useScreenBridges as P9,useScreenCanvasFrame as R9,useScreenDevices as A9,useScreenDocumentPass as O9,useScreenInspectorPanel as B9,useScreenLeftView as D9,useScreenOwnerName as _9,useScreenPinned as N9,useStandaloneScreenBridges as M9}from"efficient-easel/screen/lib/screen-parts";import{PreviewPartsProvider as G9,usePreviewParts as oa}from"efficient-easel/screen/components/PreviewPartsContext";import{jsx as ta,jsxs as KR}from"react/jsx-runtime";import{SettingsDrill as VR}from"efficient-easel/panel";var XR="Not shown on the page";function YR({part:e,onOpen:o}){return ta(VR,{name:l(e.label),preview:e.offPage?l(XR):e.preview||l("Empty"),offPage:e.offPage,status:e.hidden?ta("span",{className:"sf-entry-eye",role:"img","aria-label":l("Hidden on the page"),children:ta(qe,{name:"eye-off",size:14})}):void 0,onOpen:()=>o(e.key)})}function ec(e){return e.filter(o=>!o.identifier)}function rg({parts:e,onOpen:o,heading:t=!0}){let r=ec(e);return r.length?KR("div",{className:"sf-entries",children:[t?ta("h3",{className:"sf-entries-head",children:l("Text")}):null,r.map(a=>ta(YR,{part:a,onOpen:o},a.key))]}):null}import{blockRuns as ZR}from"efficient-easel/screen/lib/puck/block-choice";function al(){return{type:Fe,props:{id:yr(Fe)}}}var ag=[{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"}],QR=ag.filter(e=>e.type!=="FooterLogo"&&e.type!=="FooterGroup"),JR="FooterGroup",ng="blocks";function lg(e){return e===re?ag:e===JR?QR:null}function nl(){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 Ge="SiteHeader",ce="SiteFooter",oc="sections",J9=[Ge,ce],nr=e=>e===Ge||e===ce,sg=e=>`${e}:${oc}`;function ig(e,o,t=[]){return{type:e,props:{id:o,[oc]:t}}}var eA=new Set(["Footer",Ge,ce]);function lr(e){let o=new Set,t=!1,r=e.filter(a=>{let n=a?.type??"";return n==="Header"?(t=!0,!1):eA.has(n)?o.has(n)?(t=!0,!1):(o.add(n),!0):!0});return t?r:e}function fg(e,o){return e.some(t=>t?.type===o.type)?e:o.type===Ge?[o,...e]:[...e,o]}var cg={[Ge]:{max:3,takes:["Flex","Ticker"]},[ce]:{max:6,takes:["Flex","Prose","Logos","Divider"]}};function dg(e,o,t){if(!nr(e))return!0;let r=cg[e];return t<r.max&&r.takes.includes(o)}function ug(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(!nr(n?.type))continue;let s=n.props?.[oc];if(!Array.isArray(s)||!s.some(c=>c?.props?.id===r))continue;let i=cg[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 pg(e){switch(e?.type){case Ge:return l("Header \xB7 on every page");case ce:return l("Footer \xB7 on every page");case Fe:return l("Header \xB7 on every page \xB7 old style");case re:return l("Footer \xB7 on every page \xB7 old style");default:return null}}var mg=()=>l("Every page"),xg=()=>l("Changed on every page");function ll(e,o){let t=cu(e,o);if(t)return t;let r=ug(e,o);if(!r)return null;let a=r.group===Ge;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 il,Fragment as rA,jsxs as aA}from"react/jsx-runtime";import{useState as nA}from"react";import{createNode as lA,newId as sA}from"efficient-easel/data";import{useEasel as iA}from"efficient-easel/easel";import{Banner as fA,Button as tc}from"efficient-shell/ui";var sl="Flex",oA={FooterMenu:"MenuBlock",FooterEmailSignup:"EmailFormBlock",FooterSocial:"SocialLogosBlock"},tA=e=>{let{id:o,...t}=e;return t},Ig=e=>typeof e=="string"?e:"";function hg(e,o){let t=e.props??{},r=oA[e.type];if(r)return[o(r,tA(t))];switch(e.type){case"FooterLogo":{let a=o("LogoBlock",t.reverse?{reverse:t.reverse}:{}),n=Ig(t.tagline).trim();return n?[a,o("Text",{text:n,tone:"dim",align:t.align==="center"?"center":"left"})]:[a]}case"FooterText":return[o("Text",{text:Ig(t.text),tone:typeof t.tone=="string"?t.tone:"default"})];case"FooterDivider":return[o("Divider")];case"FooterGroup":{let a=Array.isArray(t.blocks)?t.blocks:[];return[o(sl,{direction:t.direction==="horizontal"?"row":"column",content:a.flatMap(n=>hg(n,o))})]}default:return[]}}function ra(e,o,t){let r=(e&&Array.isArray(e.props?.blocks)?e.props.blocks:[]).flatMap(s=>{let i=hg(s,o);return i.length<=1?i:[o(sl,{direction:"column",content:i})]}),a=o(sl,{direction:"row",wrap:!0,share:"equal",content:r}),n=o(sl,{direction:"column",content:[o("LegalLineBlock")]});return ig(ce,t,[a,n])}function gg(){let{appState:e,dispatch:o,config:t}=iA(u=>u),{readOnly:r}=ke(),[a,n]=nA(!1),s=e.data.content;if(r||s.some(u=>u.type===ce))return null;let i=s.find(u=>u.type===re)??null,c=(u,m)=>lA(t,u,m),p=()=>{let u=ra(i,c,sA(ce));o({type:"setData",data:m=>({...m,content:[...fg(m.content,u)]}),recordHistory:!0}),n(!1)};return il(fA,{tone:"info",title:l("This footer uses the old layout"),action:a?aA(rA,{children:[il(tc,{variant:"primary",size:"sm",onClick:p,children:l("Switch now")}),il(tc,{variant:"secondary",size:"sm",onClick:()=>n(!1),children:l("Cancel")})]}):il(tc,{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 cc}from"react/jsx-runtime";import{useLayoutEffect as yA,useMemo as Pg,useRef as SA,useState as ic}from"react";import{useSelectedFields as CA}from"efficient-easel/easel";import{Inspector as vA,planFields as Rg}from"efficient-easel/fields";import{DESIGN_GROUPS as ac,SETTINGS_BUCKETS as cA}from"efficient-easel/panel";import{BUCKET_KEY as eo,DESIGN_GROUP_KEY as sr}from"efficient-easel/screen/lib/puck/field-buckets";var aa=cA;var dA="Editor only \u2014 not shown live",nc={"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","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",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",[dA]:"Layout","Filters shown":"Layout","Slide picker":"Layout",Arrows:"Layout","On a phone":"Layout",Nudge:"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"},yg={"AlloyWheelsListing._gCards":"Design","ProductGrid._gCards":"Design"},Sg={"Text._gSpacing":"Size","Heading._gSpacing":"Size"};function rc(e,o,t){let r=`${e}.${o}`;return Sg[r]??yg[r]??nc[t]}function Cg(e){return e==="Animation"?[eo.Animation]:[eo.Design,sr[e]]}function fl(...e){let o=[];for(let t of e)for(let r of Object.values(t)){let a=ms(r),n=To(a?a.inner:r),s=n?nc[n.label]:void 0;if(s)for(let i of Cg(s))o.includes(i)||o.push(i)}return o}var kj=[...fl(sn({phone:!0}),fn("full"),cn(),dn()),...Object.keys(sn({phone:!0})),...Object.keys(fn("full")),...Object.keys(cn()),...Object.keys(dn())],Tj=[...fl(tn()),...Object.keys(tn())],Fj=[...fl(an()),...Object.keys(an())],Ej=[...fl(nn()),...Object.keys(nn())],uA=Object.keys(Bm()),pA=new Set(["cardImage","imageBackground"]),Lj=[...Cg(rc("ProductGrid","_gCards","Cards")??"Design"),...uA.filter(e=>e.startsWith("_g")||pA.has(e))],Pj=Object.keys(Dm()),Rj=Object.keys(_m({bottomDefault:!0})),mA={"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)","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)"},vg={Content:["Content"],Size:["Size"],Design:["Design","Style"],Layout:["Layout"],Position:["Position"],Anchor:["Anchor"],Animation:["Animation"]},wg={_gAnchor:"repeated the Anchor group heading above it (two tabs, 11.0.0)"};{let e={...sn({phone:!0}),...fn("full"),...cn(),...dn(),...tn(),...an(),...nn()};for(let o of Object.keys(wg)){let t=To(e[o]),r=t?nc[t.label]:void 0;if(!t||t.level!==2||!r||!vg[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 xA=new Set(["_sContent","_sStyle","_sLayout","_sMedia"]),IA=new Map([[eo.Design,"Content"],[eo.Animation,"Animation"],...ac.map(e=>[sr[e],e])]);function kg(e){let o=new Set([...Object.values(eo),sr.Content]);for(let[t,r]of Object.entries(e))if(!o.has(t)&&To(r)?.level===1)return 1;return 2}function hA(e){let o=`${e}.`;return Object.keys(mA).filter(t=>t.startsWith(o)).map(t=>t.slice(o.length))}function gA(e,o){let t=ms(e),r=ro(o);return t?xo(t.tier,r):r}function bA(e,o){let t=To(o);return t?e==="Content"||e==="Animation"?vm(o,t.label):wm(o):o}function bg(e){return e==="Design"?ac:["Animation"]}function Aj(e,o){let t=[],r=new Set(hA(o)),a=new Set,n=!1,s=null;for(let[x,g]of Object.entries(e)){let C=To(g);if(xA.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 w=IA.get(x);if(w!==void 0){if(C?.level!==1)throw new Error(`${o}.${x}: that key is reserved for the ${w} heading of the settings panel, but this field is ${C?`a level-${C.level} "${C.label}" header`:"not a header"}, so it cannot serve as one. Rename the section's own field.`);(x===eo.Design||x===eo.Animation)&&(n=!0),t.push(s={place:w,entries:[],adopted:!0});continue}if(!C){s||t.push(s={place:"Content",entries:[]}),s.entries.push([x,g]);continue}if(r.has(x)||x in wg){let k=rc(o,x,C.label);if(C.level!==2||!k||!vg[k].includes(C.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-${C.level} "${C.label}" header in the ${k??"(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:k,entries:[]});continue}let b=rc(o,x,C.label);if(!b)throw new Error(`${o}.${x}: the inspector group "${C.label}" is not classified in LABEL_GROUP (lib/puck/field-groups.ts), so there is no way to say which of ${[...ac,"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:b,entries:[[x,C.level===2?g:gA(g,C.label)]]})}let i=new Set(Object.entries(e).filter(([,x])=>To(x)).map(([x])=>x));for(let[x,g]of[["BLOCK_KEY_GROUP",Sg],["KEY_GROUP",yg]]){let C=Object.keys(g).filter(w=>w.startsWith(`${o}.`)).filter(w=>!i.has(w.slice(o.length+1)));if(C.length)throw new Error(`${o}: ${x} (lib/puck/field-groups.ts) lists ${JSON.stringify(C)}, 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 c=n?[]:[...r].filter(x=>!a.has(x));if(c.length)throw new Error(`${o}: RETIRED (lib/puck/field-groups.ts) lists ${JSON.stringify(c)}, but this section has no such fold header${c.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 p=new Set(t.filter(x=>x.entries.length>0).map(x=>x.place)),u=aa.filter(x=>bg(x).some(g=>p.has(g))),m={};for(let x of u){m[eo[x]]=on(x,x===u[0]?u:null);for(let g of bg(x)){if(!p.has(g))continue;let C=t.filter(b=>b.place===g),w=C.findIndex(b=>b.adopted);w>0&&C.unshift(...C.splice(w,1)),x==="Design"&&(m[sr[g]]=ti(g));for(let b of C)for(let[k,S]of b.entries)m[k]=bA(g,S)}}return m}function Oj(e){return eo.Design in e?e:{[eo.Design]:on("Design",null),[sr.Content]:ti("Content"),...e}}function Bj(e){return aa.some(o=>eo[o]in e)}function Dj(e){let o=aa.filter(r=>eo[r]in e);if(o.length===0)return e;let t={...e};for(let r of o)t[eo[r]]=on(r,r===o[0]?o:null);return t}var lc=" text",Tg="Text";function sc(e){let o=e.rows.filter(t=>t.shown);return o.length===0||o.length===1&&o[0].labelled}function Fg(e){return e.filter(sc).map(o=>o.key)}function Eg(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 Lg(e,o){if(e.size!==o.size)return!1;for(let t of e)if(!o.has(t))return!1;return!0}var fc=new Map,cl=new Set;function wA(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),c=!!i&&[...i.children].some(u=>!u.hidden),p=i?.querySelector(".es-field-label, .es-list-label")?.textContent?.trim();return{shown:c,labelled:c&&!!p}})});return r}var kA=Object.fromEntries(aa.map(e=>{let o=ym[e];return[e,cc(o,{},e)]}));function dc({entries:e,entryCount:o=0}){let{id:t,fields:r,values:a,readOnly:n,onChange:s}=CA(),[i,c]=ic(()=>new Set(cl)),[p,u]=ic(()=>new Set),m=SA(null),x=Pg(()=>{let F=new Map;for(let O of Rg(r).rows){if(!O.fold)continue;let A=F.get(O.fold.key)??[];A.push(O.name),F.set(O.fold.key,A)}return F},[r]);yA(()=>{let F=m.current?.parentElement;if(!F)return;let O=new Set(Fg(wA(F,x)));u(A=>Lg(A,O)?A:O)});let g=Pg(()=>Eg(r,p),[r,p]),C={key:lc,rows:Array.from({length:o},()=>({shown:!0,labelled:!0}))},w=sc(C)?void 0:{key:lc,title:Tg},[b,k]=ic(()=>fc.get(t)),S=fc.get(t),I=Rg(r).buckets,v=S&&I.includes(S)?S:b&&I.includes(b)?b:I[0],L=v===void 0||Sm(I,v)!==!0;return cc(vA,{fields:g,values:a,onChange:s,readOnly:n,tab:v,onTab:F=>{fc.set(t,F),k(F)},tabIcons:kA,idPrefix:t,ariaLabel:l("Section settings"),lead:L?e:null,leadFold:w,closedFolds:i,onFold:(F,O)=>{O?cl.delete(F):cl.add(F),c(new Set(cl))},children:cc("span",{ref:m,hidden:!0})})}import{SettingsSwitch as RA}from"efficient-easel/panel";var Og=tg,pc={kind:"header"},mc={kind:"website"},Bg={kind:"chat"},Dg={kind:"social"},dl="Part";function _g(e){return l("Part of {name}",{name:l(e)})}function AA(e,o,t){let r=e.describeNode(o);return{name:t,kindLabel:r?_g(r.label):l(dl)}}function OA(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 Ng({what:e}){let o=OA(e);return yt("div",{className:"sf-note",children:[Y("p",{children:Y("strong",{children:o.title})}),yt("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]})]})}var BA={header:{name:"Header",kindLabel:"Site settings",icon:"header",render:(e,o)=>{let t=o.hostPanels?.header;return t?Y(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)=>Y(Gn,{themeFromDocument:!o.capabilities.hasSiteTheme,tokenRef:o.tokenRef,siteId:o.siteId,onNotify:o.onNotify})},chat:{name:"Live chat",kindLabel:"Site settings",icon:"chat",render:()=>Y(DI,{})},social:{name:"Social links",kindLabel:"Site settings",icon:"social",render:()=>Y(GI,{unavailable:Y(Ng,{what:"Social link"})})},ticker:{name:Kr,kindLabel:dl,icon:"ticker",head:(e,o)=>e.kind==="ticker"?AA(o,e.heroId,l(Kr)):null,render:e=>Y(Jh,{heroId:e.kind==="ticker"?e.heroId:""})},part:{name:dl,kindLabel:dl,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}=go(e.propKey),n=a?jt(t.fields[r],a):t.fields[r],s=nx(l(Ei(wn(n??{},r))),a),i=o.styleNameOfPart(e.nodeId,e.propKey);return{name:i!==null?l(i):s,kindLabel:_g(t.label)}},render:(e,o)=>e.kind==="part"?Y(Zx,{nodeId:e.nodeId,propKey:e.propKey,onBack:()=>o.onSelectNode(e.nodeId),onEditStyle:o.onOpenSiteStyles}):null}},DA=new Set(["header","website","chat"]);function _A(e,o){if(e==="puck")return null;let t=BA[e];return DA.has(e)&&!o.hasSiteSettings?{...t,kindLabel:"Not part of a template",render:()=>Y(Ng,{what:t.name})}:t}function Mg({mode:e,onOpenWebsiteSettings:o,onOpenSiteStyles:t,onSelectNode:r,hideNodeActions:a=!1,onNotify:n,onHidePanel:s}){let{capabilities:i,tokenRef:c,notifyParent:p,currentSlug:u,siteId:m,runAuthed:x,readOnly:g}=ke(),{websiteName:C,fonts:w}=ne(),{partStyle:b}=Pn(),k=$o({readOnly:g}),{select:S}=oa(),{selectedItem:I,getItemById:v,getSelectorForId:L,config:F,appState:O}=FA(ee=>ee),A=PI(F,I?{type:I.type,props:I.props}:null),H=I?cx(A??F.components[I.type]?.fields,I.props):[],le=ee=>F.components[ee]?.label??ee,q=I?L(I.props.id):void 0,W=_A(e.kind,i),ge=Me(),_={capabilities:i,tokenRef:c,hostPanels:ge.chrome?.panels,describeNode:ee=>{let Ce=v(ee);if(!Ce)return null;let we=F.components[Ce.type];return{type:Ce.type,label:we?.label??Ce.type,fields:we?.fields??{}}},styleNameOfPart:(ee,Ce)=>{let we=v(ee);if(!we)return null;let Ve=Ut(ee,Ce),co=b?.partId===Ve?b:null;return Yx(we.props,Ce,co,w)},siteId:m,websiteName:C??null,notifyParent:p,onNotify:n,onOpenWebsiteSettings:o,onOpenSiteStyles:t,onSelectNode:r},ae=W?.head?.(e,_)??null,Be=ae?.name??(W?l(W.name):I?l(le(I.type)):l("Page settings")),Ke=ae?.kindLabel??(W?l(W.kindLabel):I?q&&q.zone!==Eo?l("Block"):l("Section"):l("Page")),Co=W?W.icon:I?I.type:"page",De=W?null:I?F.components[I.type]?.fields??null:F.root?.fields??null,_e=De?kg(De):2,ao=e.kind==="puck"&&I?An(I.type):null,Ne=!!I&&!!q&&q.zone===Eo&&I.type!==re&&I.type!==Fe,be=ll(O?.data,I),ye=()=>{be||q&&k.duplicateComponent(q.zone,q.index)},Z=()=>{q&&(k.removeComponent(q.zone,q.index),k.select(null))},fo=I?F.components[I.type]?.defaultProps?.previewHover:void 0,E=e.kind==="puck"&&!!I&&!!q&&fo!==void 0,Q=E&&I.props.previewHover===!0,J=()=>{!I||!q||k.replaceComponent(q.zone,q.index,{...I,props:{...I.props,previewHover:!Q}})},[Se,ue]=TA(tf);return yt("div",{className:`es-sidepanel es-sidepanel--right sf-panel sf-panel--right${Se||!(!W&&I)?"":" sf-hints-folded"}`,children:[Y(EA,{icon:Y(er,{type:Co,size:15}),name:Be,kind:Ke,actions:!a&&e.kind==="puck"&&I&&I.type!==re?yt(uc,{children:[Y(Ag,{label:l("Duplicate section"),title:be??void 0,disabled:be!==null,onClick:ye,children:Y(LA,{size:15})}),Ne&&i.hasSiteSettings&&Y(og,{node:I,currentSlug:u,siteId:m??void 0,tokenRef:c,runAuthed:x,onNotify:n}),Y(Ag,{label:l("Remove section"),danger:!0,onClick:Z,children:Y(PA,{size:15})}),s?Y(Ul,{side:"right",onHide:s,divider:!0}):null]}):s?Y(Ul,{side:"right",onHide:s}):void 0}),E&&yt("div",{className:"sf-preview-pin",children:[yt("div",{className:"sf-preview-pin-text",children:[Y("span",{className:"sf-preview-pin-label",children:l("Preview hover state")}),Y("span",{className:"sf-preview-pin-hint",children:l("not shown live")})]}),Y(RA,{checked:Q,onChange:J,ariaLabel:l("Preview hover state")})]}),Y(nm,{tier:_e,children:Y("div",{className:"sf-insp-body sf-scroll",children:W?W.render(e,_):I?yt(uc,{children:[I.type===re&&i.hasSiteSettings&&Y(gg,{}),Y(Mu,{children:Y(dc,{entries:Y(rg,{parts:H,heading:!1,onOpen:ee=>S(Ut(I.props.id,ee))}),entryCount:ec(H).length})}),ao&&Y(Nn,{source:ao,slug:Wr(I?.props)}),Y(rf,{shown:Se,onChange:ue})]}):Y(uc,{children:Y(dc,{})})})})]})}import{jsx as f,jsxs as y,Fragment as Ug}from"react/jsx-runtime";var Pe={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)"},xc="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 P({w:e,h:o,tone:t="dark",r=2,style:a}){return f("div",{style:{width:e,height:o,borderRadius:r,background:Pe[t],flex:"none",...a}})}var NA={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"},B={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 y("span",{style:{position:"absolute",display:"block",width:e,height:e,...o},children:[f("span",{style:r("8% 26% 30% 6%",d.mark1)}),f("span",{style:r("26% 6% 8% 30%",d.mark2,"multiply")})]})}function la({children:e}){return f("span",{style:{fontSize:"4.64cqw",fontWeight:700,letterSpacing:"0.06em",textTransform:"uppercase",color:d.muted},children:e})}function Hg({over:e,overTone:o,head:t,headSize:r=11.5,cta:a,ctaBg:n,ctaFg:s,tone:i}){return y(Ug,{children:[e&&f("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:o},children:e}),f("span",{style:{fontSize:r,lineHeight:1.15,fontWeight:700,maxWidth:"78%",color:i},children:t}),a&&f("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 Ic({name:e,price:o}){return y("div",{style:{display:"flex",flexDirection:"column",gap:2,minWidth:0},children:[f("div",{style:{flex:1,minHeight:0,borderRadius:3,position:"relative",overflow:"hidden",...me(d.paper,d.paper2,150)},children:f(zo,{size:34,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),f("span",{style:{fontSize:"3.65cqw",fontWeight:600,color:d.text},children:e}),f("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o})]})}function Go({k:e,v:o,ok:t}){return y("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:[f("span",{children:e}),y("span",{style:{display:"flex",gap:6,alignItems:"center"},children:[f("b",{style:{color:d.text,fontWeight:700},children:o}),t&&f("span",{style:{color:d.rust,fontWeight:700},children:"\u2713"})]})]})}function se({title:e,children:o}){return y("div",{style:{...B,background:d.card,padding:"9px 10px",display:"flex",flexDirection:"column",gap:6},children:[f(la,{children:e}),o]})}function Wg({size:e=14}){return f("span",{style:{width:e,height:e,borderRadius:"50%",flex:"none",display:"block",background:`linear-gradient(150deg,${d.mark1},${d.mark2})`}})}function hc({filled:e=5,size:o=6}){return y("span",{style:{fontSize:o,letterSpacing:"0.06em",color:d.rust,lineHeight:1},children:["\u2605".repeat(e),f("span",{style:{color:d.mark1},children:"\u2605".repeat(5-e)})]})}function na({n:e,label:o,tone:t=d.text}){return y("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[f("b",{style:{fontSize:"8.16cqw",lineHeight:1,color:t},children:e}),f("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.08em",textTransform:"uppercase",opacity:.62,color:t},children:o})]})}function Oe({children:e,w:o}){return f("span",{style:{fontSize:"3.98cqw",lineHeight:1.45,color:d.muted,width:o,display:"block"},children:e})}function ul({label:e,w:o="100%",filled:t}){return y("div",{style:{width:o,display:"flex",flexDirection:"column",gap:2},children:[f("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:e}),f("span",{style:{height:9,borderRadius:3,border:`1px solid ${d.rule}`,background:t?d.paper:d.card}})]})}function Gg({children:e}){return f("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 MA={wheelslisting:f(se,{title:"All wheels",children:f("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])=>y("div",{style:{display:"flex",alignItems:"center",gap:6},children:[f("span",{style:{width:20,height:15,borderRadius:3,flex:"none",position:"relative",overflow:"hidden",...me(d.paper,d.paper2,150)},children:f(zo,{size:12,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),f("b",{style:{flex:1,fontSize:"4.31cqw",color:d.text},children:e}),f("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o}),f("b",{style:{fontSize:"4.31cqw",color:d.text,width:26,textAlign:"right"},children:t})]},e))})}),catalogfilterbar:y("div",{style:{...B,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:7,padding:"0 11px"},children:[y("div",{style:{display:"flex",gap:4,alignItems:"center"},children:[["20 inch","6\xD7139.7","Black"].map(e=>y("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,f("span",{style:{opacity:.6},children:"\u2715"})]},e)),f("span",{style:{fontSize:"3.65cqw",color:d.rust,fontWeight:700},children:"Clear"})]}),y("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[f("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"128 results"}),f("span",{style:{fontSize:"3.65cqw",color:d.muted,border:`1px solid ${d.rule}`,borderRadius:3,padding:"3px 6px"},children:"Sort: Price \u25BE"})]})]}),fitmentfinder:y("div",{style:{...B,padding:"10px 12px",display:"flex",flexDirection:"column",gap:6,justifyContent:"center",...me(d.ink,d.inkSoft)},children:[f("span",{style:{fontSize:"5.31cqw",fontWeight:700,color:d.onInk},children:"Will it fit your rig?"}),y("div",{style:{display:"flex",gap:4},children:[["2021","Toyota","Hilux"].map(e=>y("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," ",f("span",{style:{color:d.muted},children:"\u25BE"})]},e)),f("span",{style:{fontSize:"3.65cqw",fontWeight:700,letterSpacing:"0.08em",background:d.warm,color:d.ink,borderRadius:3,padding:"5px 7px"},children:"GO"})]})]}),compatibletyres:f(se,{title:"Tyres that suit",children:f("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])=>y("div",{style:{display:"flex",flexDirection:"column",gap:2,minWidth:0},children:[f("div",{style:{flex:1,minHeight:0,borderRadius:3,position:"relative",overflow:"hidden",background:d.ink},children:f("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"}})}),f("span",{style:{fontSize:"3.32cqw",fontWeight:600,color:d.text,overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"},children:e}),f("span",{style:{fontSize:"3.32cqw",color:d.muted},children:o})]},e))})}),tyresizes:f(se,{title:"Available sizes",children:f("div",{style:{flex:1,display:"flex",flexWrap:"wrap",gap:4,alignContent:"center"},children:["265/65R17","285/70R17","265/60R18","275/55R20"].map((e,o)=>f("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:y(se,{title:"Will it fit your car?",children:[f("div",{style:{display:"flex",gap:3},children:["Make","Model","Year","Trim"].map(e=>y("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," ",f("span",{style:{color:d.muted},children:"\u25BE"})]},e))}),f("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])=>y("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline",gap:6,borderTop:`1px solid ${d.rule}`,paddingTop:3},children:[f("span",{style:{fontSize:"3.32cqw",fontWeight:600,color:d.text},children:e}),f("span",{style:{fontSize:"3.32cqw",fontWeight:t?700:400,letterSpacing:"0.06em",color:t?d.warm:d.muted},children:o})]},e))})]}),eutyrelabel:y("div",{style:{...B,background:d.card,padding:"9px 11px",display:"flex",gap:8,alignItems:"center"},children:[f("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1.5},children:[["A","42%"],["B","56%"],["C","70%"],["D","84%"]].map(([e,o],t)=>y("div",{style:{display:"flex",alignItems:"center",gap:3},children:[f("span",{style:{width:o,height:6,borderRadius:"0 2px 2px 0",background:t===1?d.rust:d.mark1}}),f("span",{style:{fontSize:"3.32cqw",fontWeight:700,color:t===1?d.rust:d.muted},children:e})]},e))}),y("div",{style:{flex:"none",display:"flex",flexDirection:"column",gap:3,alignItems:"center"},children:[f("b",{style:{fontSize:"6.63cqw",lineHeight:1,color:d.text},children:"72"}),f("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",color:d.muted},children:"dB"})]})]}),bundleoffer:y("div",{style:{...B,background:d.paper,padding:"9px 11px",display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[f(la,{children:"Buy it with"}),y("div",{style:{display:"flex",alignItems:"center",gap:5},children:[[0,1].map(e=>f("span",{style:{width:26,height:22,borderRadius:3,flex:"none",position:"relative",overflow:"hidden",background:d.card},children:f(zo,{size:17,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})},e)),f("span",{style:{fontSize:"5.69cqw",fontWeight:700,color:d.muted},children:"+"}),y("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1},children:[f("span",{style:{fontSize:"3.65cqw",color:d.muted,textDecoration:"line-through"},children:"$1,024"}),f("b",{style:{fontSize:"6.02cqw",color:d.rust,lineHeight:1},children:"$899"})]})]})]}),checkoutcta:y("div",{style:{...B,display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 13px",gap:8,...me(d.ink,d.ink2)},children:[y("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[f("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",color:d.warm,fontWeight:700},children:"READY TO ORDER"}),f("b",{style:{fontSize:"6.63cqw",color:d.onInk,lineHeight:1},children:"$1,956"}),f("span",{style:{fontSize:"3.65cqw",color:d.onInk,opacity:.65},children:"4 items \xB7 fitted free"})]}),f("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:f(se,{title:"Who do you need?",children:f("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])=>y("div",{style:{display:"flex",alignItems:"center",gap:5},children:[f("b",{style:{flex:1,fontSize:"4.31cqw",color:d.text},children:e}),f("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o}),f("span",{style:{fontSize:"4.64cqw",color:d.rust,lineHeight:1},children:"\u203A"})]},e))})}),contactlocations:f(se,{title:"Find us",children:f("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])=>y("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:"5px 6px",display:"flex",flexDirection:"column",gap:1},children:[f("b",{style:{fontSize:"4.31cqw",color:d.text},children:e}),f("span",{style:{fontSize:"3.32cqw",color:d.muted},children:o}),f("span",{style:{fontSize:"3.32cqw",color:d.rust,fontWeight:700},children:t})]},e))})}),form:f(se,{title:"Send us a message",children:y("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[y("div",{style:{display:"flex",gap:5},children:[f(ul,{label:"Name"}),f(ul,{label:"Email"})]}),f(ul,{label:"Message",filled:!0}),f(Gg,{children:"SEND"})]})}),appointmentbooking:f(se,{title:"Book a fitting",children:y("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[f("div",{style:{display:"flex",gap:3},children:["Mon","Tue","Wed","Thu"].map((e,o)=>f("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))}),f("div",{style:{display:"flex",gap:3},children:["8:00","10:30","13:00","15:30"].map((e,o)=>f("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:f(se,{title:"Leave a review",children:y("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[f(hc,{filled:4,size:14}),f(ul,{label:"Your review",filled:!0}),f(Gg,{children:"POST"})]})}),submitbuild:f(se,{title:"Show us your build",children:y("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:[f("span",{style:{fontSize:"6.63cqw",lineHeight:1,color:d.rust,fontWeight:300},children:"+"}),f("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"Drop a photo of your rig"})]})}),masthead:y("div",{style:{...B,background:d.paper,display:"flex",flexDirection:"column",justifyContent:"center",padding:"0 13px",gap:5},children:[f("span",{style:{height:1.5,background:d.text}}),f("span",{style:{fontSize:"7.65cqw",fontWeight:800,letterSpacing:"0.02em",color:d.text,lineHeight:1},children:"THE TRACK"}),y("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"3.65cqw",letterSpacing:"0.1em",textTransform:"uppercase",color:d.muted},children:[f("span",{children:"Issue 14"}),f("span",{children:"Spring 2026"})]}),f("span",{style:{height:1,background:d.rule}})]}),featuredcover:y("div",{style:{...B,overflow:"hidden",...me(d.ink,d.inkSoft2)},children:[f(zo,{size:92,style:{right:-18,top:-14}}),f("div",{style:{position:"absolute",inset:0,background:`linear-gradient(0deg,${d.scrim},transparent 62%)`}}),y("div",{style:{position:"absolute",left:12,right:12,bottom:11,display:"flex",flexDirection:"column",gap:3},children:[f("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.warm},children:"FEATURE"}),f("span",{style:{fontSize:"6.16cqw",lineHeight:1.15,fontWeight:700,color:d.onInk},children:"Four days on the Madigan Line"})]})]}),longread:y("div",{style:{...B,background:d.card,padding:"10px 14px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[f("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.14em",fontWeight:700,color:d.rust},children:"12 MIN READ"}),f("span",{style:{fontSize:"6.02cqw",lineHeight:1.15,fontWeight:700,color:d.text},children:"What breaks first, and why"}),f(Oe,{children:"Every failure starts in the same place \u2014 not the rim, not"}),f(Oe,{w:"62%",children:"the tyre, but the bolt nobody re-torqued."})]}),series:f(se,{title:"Recurring columns",children:f("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])=>y("div",{style:{display:"flex",alignItems:"center",gap:6},children:[f("span",{style:{width:3,height:12,borderRadius:2,background:d.rust,flex:"none"}}),f("b",{style:{flex:1,fontSize:"4.64cqw",color:d.text},children:e}),f("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:o})]},e))})}),events:f(se,{title:"Latest posts",children:f("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])=>y("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[f("span",{style:{width:24,height:18,borderRadius:3,flex:"none",...me(e,o,150)}}),y("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[f("b",{style:{fontSize:"4.31cqw",color:d.text},children:t}),f("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"4 Sep \xB7 Shed Notes"})]})]},t))})}),docmasthead:y("div",{style:{...B,background:d.card,padding:"12px 14px",display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[f("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.muted},children:"POLICY"}),f("span",{style:{fontSize:"6.49cqw",fontWeight:700,color:d.text,lineHeight:1.1},children:"Returns & refunds"}),f("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"Version 3 \xB7 Updated 4 Sep 2026"}),f("span",{style:{height:2,width:26,background:d.rust,borderRadius:1}})]}),docbody:f("div",{style:{...B,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])=>y("div",{style:{display:"flex",gap:5},children:[f("b",{style:{fontSize:"3.98cqw",color:d.rust,flex:"none"},children:e}),f(Oe,{children:o})]},e))}),docmetacards:f(se,{title:"At a glance",children:f("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])=>y("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:"5px 6px",display:"flex",flexDirection:"column",gap:1},children:[f("b",{style:{fontSize:"5.31cqw",color:d.text,lineHeight:1},children:e}),f("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:o})]},o))})}),doctabs:y("div",{style:{...B,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:0,padding:"0 11px"},children:[f("div",{style:{display:"flex",gap:0},children:["Returns","Warranty","Shipping"].map((e,o)=>f("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))}),f("span",{style:{height:1,background:d.rule}}),y("div",{style:{paddingTop:6,display:"flex",flexDirection:"column",gap:2},children:[f(Oe,{children:"Unfitted wheels come back within 30 days, no questions."}),f(Oe,{w:"58%",children:"Freight on a change of mind is yours."})]})]}),paragraphs:y("div",{style:{...B,background:d.card,padding:"11px 14px",display:"flex",gap:10,alignItems:"center"},children:[f("span",{style:{flex:1,fontSize:"5.86cqw",lineHeight:1.2,fontWeight:700,color:d.text},children:"The right wheel is the boring one."}),y("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:[f(Oe,{children:"Forged, correctly offset, rated for what you actually"}),f(Oe,{children:"carry. Everything else is a photograph."})]})]}),keyfeatures:f(se,{title:"Key features",children:f("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=>y("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[f("span",{style:{fontSize:"4.64cqw",color:d.rust,fontWeight:700,lineHeight:1},children:"\u2713"}),f("span",{style:{fontSize:"4.31cqw",color:d.text},children:e})]},e))})}),statsparagraph:y("div",{style:{...B,background:d.paper,padding:"10px 12px",display:"flex",gap:10,alignItems:"center"},children:[y("div",{style:{flex:"none",display:"flex",flexDirection:"column",gap:5},children:[f(na,{n:"27k",label:"Rigs"}),f(na,{n:"4.9",label:"Rating"})]}),y("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:[f(Oe,{children:"Twelve years of fitting the same three questions, and the"}),f(Oe,{children:"answer has not moved: load rating, offset, then looks."})]})]}),chart:y(se,{title:"Load vs weight",children:[f("div",{style:{flex:1,display:"flex",alignItems:"flex-end",gap:5,paddingBottom:2},children:[38,62,84,71,96].map((e,o)=>f("span",{style:{flex:1,height:`${e}%`,borderRadius:"2px 2px 0 0",background:o===4?d.rust:d.mark1}},o))}),f("span",{style:{height:1,background:d.rule,marginTop:-4}})]}),mockup:f("div",{style:{...B,overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center",...me(d.inkSoft,d.ink)},children:y("div",{style:{width:"72%",height:"74%",borderRadius:4,overflow:"hidden",background:d.card,boxShadow:`0 6px 14px ${d.scrim}`},children:[f("div",{style:{height:9,background:d.paper,display:"flex",alignItems:"center",gap:2,padding:"0 4px"},children:[0,1,2].map(e=>f("span",{style:{width:2.5,height:2.5,borderRadius:"50%",background:d.mark1}},e))}),y("div",{style:{padding:5,display:"flex",flexDirection:"column",gap:3},children:[f("span",{style:{height:4,width:"56%",borderRadius:1,background:d.mark2}}),f("span",{style:{height:14,borderRadius:2,...me(d.paper,d.paper2,150)}}),f("span",{style:{height:3,width:"38%",borderRadius:1,background:d.rust}})]})]})}),manifesto:f("div",{style:{...B,overflow:"hidden",display:"flex",alignItems:"center",padding:"0 16px",...me(d.ink,d.ink2)},children:y("span",{style:{fontSize:"6.63cqw",lineHeight:1.2,fontWeight:700,color:d.onInk},children:["We build for the ",f("span",{style:{color:d.warm},children:"last"})," ten percent of the track."]})}),timeline:f(se,{title:"Our story",children:f("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)=>y("div",{style:{display:"flex",gap:7,alignItems:"flex-start",position:"relative"},children:[t<2&&f("span",{style:{position:"absolute",left:3,top:8,bottom:-8,width:1,background:d.rule}}),f("span",{style:{width:7,height:7,borderRadius:"50%",flex:"none",marginTop:1,background:d.rust,zIndex:1}}),y("div",{style:{display:"flex",flexDirection:"column",gap:0,minWidth:0},children:[f("b",{style:{fontSize:"4.64cqw",color:d.text},children:e}),f(Oe,{children:o})]})]},e))})}),timelinetrack:y("div",{style:{...B,padding:"0 12px",display:"flex",flexDirection:"column",gap:10,justifyContent:"center",...me(d.ink,d.inkSoft)},children:[f("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"Milestones"}),y("div",{style:{position:"relative",display:"flex",justifyContent:"space-between",paddingTop:7},children:[f("span",{style:{position:"absolute",left:0,right:0,top:3,height:1,background:d.mark2,opacity:.55}}),["1998","2009","2016","2024"].map((e,o)=>y("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:3,position:"relative"},children:[f("span",{style:{position:"absolute",top:-7,width:6,height:6,borderRadius:"50%",background:o===3?d.warm:d.mark1}}),f("span",{style:{fontSize:"4.31cqw",fontWeight:700,color:o===3?d.warm:d.onInk,opacity:o===3?1:.75},children:e})]},e))]})]}),footprint:y("div",{style:{...B,overflow:"hidden",...me(d.paper,d.paper2,150)},children:[f("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}}),f("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])=>f("span",{style:{position:"absolute",left:e,top:o,width:7,height:7,borderRadius:"50% 50% 50% 0",transform:"rotate(-45deg)",background:d.rust}},e)),f("span",{style:{position:"absolute",left:11,bottom:9,fontSize:"4.64cqw",fontWeight:700,color:d.text},children:"3 fitting bays"})]}),banner:y("div",{style:{...B,display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 13px",gap:8,background:d.rust},children:[y("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[f("b",{style:{fontSize:"6.02cqw",color:d.onInk},children:"End of season \xB7 20% off"}),f("span",{style:{fontSize:"3.98cqw",color:d.onInk,opacity:.8},children:"Fitted free, this month only."})]}),f("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:y("div",{style:{...B,background:d.paper,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:7,padding:"0 14px",textAlign:"center"},children:[f("span",{style:{fontSize:"6.49cqw",lineHeight:1.15,fontWeight:700,color:d.text},children:"Not sure what fits?"}),y("div",{style:{display:"flex",gap:5},children:[f("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"}),f("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:f("div",{style:{...B,overflow:"hidden",background:d.ink,display:"flex",alignItems:"center"},children:f("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:y("div",{style:{...B,padding:"10px 12px",display:"flex",flexDirection:"column",alignItems:"center",gap:6,justifyContent:"center",...me(d.ink,d.ink2)},children:[f("span",{style:{fontSize:"3.65cqw",fontWeight:700,letterSpacing:"0.16em",textTransform:"uppercase",color:d.muted},children:"Back online in"}),f("div",{style:{display:"flex",alignItems:"flex-start",gap:5},children:[["23","Hours"],["59","Minutes"],["48","Seconds"]].map(([e,o],t)=>y("div",{style:{display:"flex",alignItems:"flex-start",gap:5},children:[t>0&&f("b",{style:{fontSize:"9.5cqw",lineHeight:1,color:d.warm},children:":"}),y("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:2},children:[f("b",{style:{fontSize:"11.5cqw",lineHeight:1,color:d.onInk,fontVariantNumeric:"tabular-nums"},children:e}),f("span",{style:{fontSize:"3.2cqw",letterSpacing:"0.1em",textTransform:"uppercase",opacity:.62,color:d.onInk},children:o})]})]},o))})]}),breadcrumb:f("div",{style:{...B,background:d.card,display:"flex",alignItems:"center",padding:"0 13px"},children:y("span",{style:{fontSize:"4.64cqw",color:d.muted},children:["Home ",f("span",{style:{opacity:.5},children:"/"})," Wheels ",f("span",{style:{opacity:.5},children:"/"})," ",f("span",{style:{color:d.text,fontWeight:700},children:"20 inch"})]})}),categorybar:y("div",{style:{...B,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:7,padding:"0 11px"},children:[f("div",{style:{display:"flex",gap:5},children:["All","Wheels","Tyres","Lift"].map((e,o)=>f("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))}),f("span",{style:{height:1,background:d.rule}})]}),intro:y("div",{style:{...B,overflow:"hidden",background:d.card},children:[f("div",{style:{position:"absolute",inset:0,...me(d.ink,d.inkSoft2)}}),f(zo,{size:64,style:{right:8,top:6}}),y("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:[f("span",{style:{fontSize:"5.69cqw",fontWeight:700,color:d.text},children:"Since 1998"}),f(Oe,{children:"One shed, one lathe, one idea."}),f(Oe,{w:"66%",children:"It turned out to be right."})]})]}),gallerygrid:f(se,{title:"From our customers",children:f("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)=>f("div",{style:{borderRadius:3,...me(e,o,140+t*22)}},t))})}),gallery:y(se,{title:"Gallery",children:[f("div",{style:{display:"flex",gap:8,alignItems:"center",marginTop:-2},children:["On the truck","Studio","Close-ups"].map((e,o)=>f("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))}),f("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)=>f("div",{style:{borderRadius:3,...me(e,o,150+t*20)}},t))})]}),ordersummary:y(se,{title:"Order summary",children:[y("div",{style:{display:"flex",gap:6,alignItems:"center",paddingBottom:4},children:[f("span",{style:{width:26,height:26,borderRadius:4,position:"relative",overflow:"hidden",flex:"none",...me(d.paper,d.paper2,150)},children:f(zo,{size:18,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),y("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[f("b",{style:{fontSize:"4.31cqw",color:d.text},children:"Ridge Grappler"}),f("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"20\xD79 +12 \xB7 qty 4"})]})]}),y("div",{style:{flex:1,minHeight:0,display:"flex",flexDirection:"column",justifyContent:"center"},children:[f(Go,{k:"Subtotal",v:"$1,956"}),f(Go,{k:"Fitting",v:"Free"}),y("div",{style:{display:"flex",justifyContent:"space-between",paddingTop:5,fontSize:"4.64cqw"},children:[f("b",{style:{color:d.text},children:"Total"}),f("b",{style:{color:d.text,fontSize:"6.02cqw"},children:"$1,956"})]})]})]}),deliveryoptions:f(se,{title:"Delivery",children:f("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])=>y("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:[f("span",{style:{width:7,height:7,borderRadius:"50%",flex:"none",border:`1.5px solid ${r?d.rust:d.mark1}`,background:r?d.rust:"transparent"}}),f("span",{style:{flex:1,fontSize:"4.31cqw",fontWeight:600,color:d.text},children:e}),f("span",{style:{fontSize:"3.98cqw",color:d.muted},children:o}),f("b",{style:{fontSize:"4.31cqw",color:d.text},children:t})]},e))})}),paymentbadges:y("div",{style:{...B,background:d.paper,display:"flex",flexDirection:"column",gap:8,justifyContent:"center",padding:"0 12px"},children:[f(la,{children:"Ways to pay"}),f("div",{style:{display:"flex",gap:5},children:[["VISA",d.ink],["MC",d.rust],["AMEX",d.inkSoft],["PayPal",d.ink2]].map(([e,o])=>f("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:y("div",{style:{...B,padding:"10px 12px",display:"flex",flexDirection:"column",gap:9,justifyContent:"center",...me(d.ink,d.ink2)},children:[f("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"By the numbers"}),y("div",{style:{display:"flex",gap:8},children:[f(na,{n:"27k",label:"Rigs fitted",tone:d.onInk}),f(na,{n:"12",label:"Years",tone:d.onInk}),f(na,{n:"4.9",label:"Avg rating",tone:d.warm})]})]}),testimonials:y("div",{style:{...B,overflow:"hidden",background:d.paper,padding:"10px 11px",display:"flex",flexDirection:"column",gap:6,justifyContent:"center"},children:[f("span",{style:{position:"absolute",right:10,top:2,fontSize:"22.4cqw",lineHeight:1,fontWeight:800,color:d.rust,opacity:.16},children:"\u201D"}),f(hc,{filled:5,size:7}),f("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"}),y("div",{style:{display:"flex",alignItems:"center",gap:5},children:[f(Wg,{}),f("span",{style:{fontSize:"3.98cqw",color:d.muted},children:"Dave M. \xB7 Hilux N80"})]})]}),reviews:y(se,{title:"Reviews",children:[f("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)=>f("div",{style:{flex:1,borderRadius:3,...me(e,o,140+t*15)}},t))}),f("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])=>y("div",{style:{display:"flex",gap:5,alignItems:"flex-start"},children:[f(Wg,{size:12}),y("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[y("div",{style:{display:"flex",gap:4,alignItems:"center"},children:[f("b",{style:{fontSize:"3.98cqw",color:d.text},children:e}),f(hc,{filled:o})]}),f(Oe,{children:t})]})]},e))})]}),logos:y("div",{style:{...B,display:"flex",flexDirection:"column",gap:9,justifyContent:"center",padding:"0 12px",...me(d.ink,d.inkSoft)},children:[f("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"As fitted by"}),f("div",{style:{display:"grid",gridTemplateColumns:"repeat(4,1fr)",gap:8},children:["ARB","TJM","IRONMAN","OPPOSITE"].map(e=>f("span",{style:{textAlign:"center",fontSize:"4.31cqw",fontWeight:800,letterSpacing:"0.08em",color:d.onInk,opacity:.82},children:e},e))})]}),prose:y("div",{style:{...B,background:d.paper,padding:"11px 14px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[f("span",{style:{fontSize:"5.86cqw",fontWeight:700,color:d.text},children:"Why offset matters"}),y("div",{style:{display:"flex",gap:6},children:[f("span",{style:{fontSize:"15.3cqw",lineHeight:.78,fontWeight:800,color:d.rust,marginTop:1},children:"T"}),y("div",{style:{display:"flex",flexDirection:"column"},children:[f(Oe,{children:"he number on the back of your wheel decides whether the"}),f(Oe,{w:"76%",children:"tyre sits under the guard or an inch outside it."})]})]})]}),cards:f(se,{title:"What you get",children:f("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])=>y("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:6,display:"flex",flexDirection:"column",gap:2},children:[f("span",{style:{width:11,height:11,borderRadius:3,background:d.rust,opacity:.9}}),f("b",{style:{fontSize:"3.98cqw",color:d.text},children:e}),f(Oe,{children:o})]},e))})}),faq:f(se,{title:"Questions",children:f("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])=>y("div",{style:{borderBottom:`1px solid ${d.rule}`,padding:"4px 2px"},children:[y("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:6},children:[f("b",{style:{fontSize:"4.31cqw",color:d.text},children:e}),f("span",{style:{fontSize:"4.64cqw",color:d.muted,lineHeight:1},children:o?"\u2212":"+"})]}),o&&f(Oe,{w:"90%",children:"Use the fitment finder \u2014 it reads your build, not just the model."})]},e))})}),hero:y("div",{style:{...B,overflow:"hidden",...me(d.ink,d.ink2)},children:[f("div",{style:{...B,background:`linear-gradient(90deg,${d.scrim},transparent 70%)`}}),f("div",{style:{position:"relative",height:"100%",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",padding:"12px 14px",gap:5},children:f(Hg,{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})}),f(zo,{size:104,style:{right:-24,bottom:-30}})]}),herosingle:y("div",{style:{...B,display:"flex",background:d.paper,overflow:"hidden"},children:[f("div",{style:{flex:1,padding:12,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:f(Hg,{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})}),f("div",{style:{flex:1,position:"relative",...me(d.inkSoft,d.inkSoft2)},children:f(zo,{size:74,style:{right:-14,top:16}})})]}),productgrid:f(se,{title:"Best sellers",children:y("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[f(Ic,{name:"Ridge 19",price:"$365"}),f(Ic,{name:"Ridge 29",price:"$410"}),f(Ic,{name:"Ridge 39",price:"$455"})]})}),collections:f(se,{title:"Shop by category",children:f("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])=>f("div",{style:{borderRadius:4,display:"flex",alignItems:"flex-end",padding:5,color:d.onInk,...me(o,t)},children:f("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.04em"},children:e})},e))})}),producthero:y("div",{style:{...B,display:"flex",background:d.card,overflow:"hidden"},children:[f("div",{style:{flex:1.1,position:"relative",...me(d.paper,d.paper2,150)},children:f(zo,{size:78,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),y("div",{style:{flex:1,padding:"10px 10px 10px 8px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[f("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.rust},children:"NITTO"}),f("b",{style:{fontSize:"6.29cqw",color:d.text},children:"Ridge Grappler"}),f("span",{style:{fontSize:"6.63cqw",fontWeight:700,color:d.text},children:"$489"}),f("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:f(se,{title:"Specifications",children:y("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center"},children:[f(Go,{k:"Diameter",v:'20"'}),f(Go,{k:"Width",v:"9.0J"}),f(Go,{k:"Offset",v:"+12"}),f(Go,{k:"Load",v:"1250 kg"})]})}),fitmenttable:f(se,{title:"Will it fit?",children:y("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center"},children:[f(Go,{k:"Hilux N80",v:"20\xD79 +12",ok:!0}),f(Go,{k:"Ranger PX3",v:"20\xD79 +12",ok:!0}),f(Go,{k:"LC79",v:"17\xD78 \u221210",ok:!0})]})}),brandstrip:y("div",{style:{...B,background:d.paper,display:"flex",flexDirection:"column",gap:8,justifyContent:"center",padding:"0 12px"},children:[f(la,{children:"Brands we carry"}),f("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:["NITTO","BFG","FUEL","TOYO"].map(e=>f("span",{style:{fontSize:"4.64cqw",fontWeight:800,letterSpacing:"0.1em",color:d.mark2},children:e},e))})]}),processsteps:y("div",{style:{...B,background:d.paper,padding:10,display:"flex",flexDirection:"column",gap:7,justifyContent:"center"},children:[f(la,{children:"How it works"}),f("div",{style:{display:"flex",gap:6},children:["Pick your rig","Match the fit","We fit it"].map((e,o)=>y("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:2},children:[f("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}),f("span",{style:{fontSize:"3.98cqw",color:d.text,fontWeight:600},children:e})]},e))})]}),detailrows:f("div",{style:{...B,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=f("div",{style:{flex:1,...me(t?d.rust:d.inkSoft,t?d.warm:d.inkSoft2)}},"art"),a=y("div",{style:{flex:1.1,padding:8,display:"flex",flexDirection:"column",gap:2,justifyContent:"center"},children:[f("b",{style:{fontSize:"4.64cqw",color:d.text},children:e}),f("span",{style:{fontSize:"3.98cqw",color:d.muted,lineHeight:1.3},children:o})]},"tx");return f("div",{style:{flex:1,display:"flex",minHeight:0},children:t?[a,r]:[r,a]},e)})}),specstrip:f("div",{style:{...B,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])=>y("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:1},children:[f("b",{style:{fontSize:"5.69cqw",letterSpacing:"0.02em"},children:e}),f("span",{style:{fontSize:"3.65cqw",color:d.mark2,letterSpacing:"0.1em",textTransform:"uppercase"},children:o})]},o))})},zg={subscribe:y("div",{style:{...B,padding:13,display:"flex",flexDirection:"column"},children:[y("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:8},children:[y("div",{style:{display:"flex",alignItems:"center",gap:6},children:[f(P,{w:8,h:8,r:2,tone:"accent"}),f(P,{w:38,h:7,r:3,tone:"dark"}),f(P,{w:16,h:7,r:3,tone:"accent"})]}),f(P,{w:38,h:4,r:2,tone:"soft"})]}),f("div",{style:{height:1,background:Pe.line,marginBottom:10}}),y("div",{style:{flex:1,display:"flex",gap:10,border:`1px solid ${Pe.line}`,borderRadius:7,padding:10},children:[y("div",{style:{flex:1.1,display:"flex",flexDirection:"column",justifyContent:"center",gap:5},children:[f(P,{w:"46%",h:3,r:2,tone:"accent"}),f(P,{w:"84%",h:8,r:4,tone:"dark"}),f(P,{w:"56%",h:8,r:4,tone:"accent"}),f(P,{w:"96%",h:3,r:2,tone:"soft",style:{marginTop:2}}),y("div",{style:{display:"flex",gap:5,marginTop:4},children:[f("div",{style:{flex:1,height:13,borderRadius:5,border:`1px solid ${Pe.line}`,background:Pe.block}}),f(P,{w:34,h:13,r:5,tone:"accent"})]})]}),y("div",{style:{flex:1,background:Pe.block,borderRadius:6,padding:8,display:"flex",flexDirection:"column",gap:6},children:[f(P,{w:"52%",h:4,r:2,tone:"accent"}),Array.from({length:3}).map((e,o)=>y("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:6,borderTop:o?`1px solid ${Pe.line}`:"none",paddingTop:o?4:0},children:[f(P,{w:34,h:4,r:2,tone:"dark"}),f(P,{w:16,h:3,r:2,tone:"soft"})]},o))]})]})]}),split:y("div",{style:{...B,display:"flex"},children:[f("div",{style:{width:"44%",background:xc}}),y("div",{style:{flex:1,padding:15,display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[f(P,{w:"44%",h:5,r:3,tone:"accent"}),f(P,{w:"88%",h:8,r:4,tone:"dark"}),f(P,{w:"70%",h:8,r:4,tone:"dark"}),f(P,{w:"94%",h:5,r:2,tone:"soft",style:{marginTop:2}}),f(P,{w:"80%",h:5,r:2,tone:"soft"}),f(P,{w:"40%",h:13,r:6,tone:"accent",style:{marginTop:5}})]})]}),sectionheader:y(Ug,{children:[f(P,{w:"18%",h:6,r:3,tone:"accent",style:{position:"absolute",top:15,right:16}}),y("div",{style:{...B,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:10},children:[y("div",{style:{display:"flex",alignItems:"center",gap:9},children:[f(P,{w:16,h:16,r:4,tone:"accent"}),f(P,{w:"20%",h:9,r:4,tone:"dark"})]}),f(P,{w:"62%",h:10,r:5,tone:"dark"}),f(P,{w:"42%",h:6,r:3,tone:"soft"})]})]}),header:f("div",{style:{...B,padding:14,display:"flex",flexDirection:"column",justifyContent:"center"},children:y("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[f(P,{w:"22%",h:12,r:4,tone:"dark"}),y("div",{style:{display:"flex",gap:9,alignItems:"center"},children:[f(P,{w:26,h:6,r:3,tone:"soft"}),f(P,{w:26,h:6,r:3,tone:"soft"}),f(P,{w:26,h:6,r:3,tone:"soft"}),f(P,{w:18,h:14,r:5,tone:"accent"})]})]})}),footer:y("div",{style:{...B,padding:15,display:"flex",flexDirection:"column",justifyContent:"center",gap:12},children:[y("div",{style:{display:"flex",gap:14},children:[y("div",{style:{flex:1.4,display:"flex",flexDirection:"column",gap:6},children:[f(P,{w:"60%",h:9,r:4,tone:"dark"}),f(P,{w:"90%",h:5,r:2,tone:"soft"}),f(P,{w:"70%",h:5,r:2,tone:"soft"})]}),[0,1].map(e=>y("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:6},children:[f(P,{w:"50%",h:6,r:3,tone:"dark"}),f(P,{w:"80%",h:5,r:2,tone:"soft"}),f(P,{w:"66%",h:5,r:2,tone:"soft"})]},e))]}),f("div",{style:{height:1,background:Pe.line}}),y("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[f(P,{w:"30%",h:5,r:2,tone:"soft"}),f(P,{w:"16%",h:5,r:2,tone:"soft"})]})]}),grid:f("div",{style:{...B,padding:14,display:"grid",gridTemplateColumns:"1fr 1fr",gridTemplateRows:"1fr 1fr",gap:9},children:Array.from({length:4}).map((e,o)=>f("div",{style:{borderRadius:6,background:Pe.block}},o))}),blanksection:f("div",{style:{...B,padding:14,display:"flex"},children:y("div",{style:{flex:1,border:`1px dashed ${Pe.line}`,borderRadius:7,display:"flex",alignItems:"center",justifyContent:"center",position:"relative"},children:[f(P,{w:14,h:2,r:1,tone:"tint"}),f(P,{w:2,h:14,r:1,tone:"tint",style:{position:"absolute"}})]})}),spacer:y("div",{style:{...B,padding:14,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[f(P,{w:"100%",h:6,r:3,tone:"soft"}),f(P,{w:16,h:22,r:3,tone:"block",style:{alignSelf:"center"}}),f(P,{w:"100%",h:6,r:3,tone:"soft"})]}),divider:f("div",{style:{...B,padding:14,display:"flex",alignItems:"center"},children:f(P,{w:"100%",h:3,r:2,tone:"dark"})}),customhtml:y("div",{style:{...B,display:"flex",alignItems:"center",justifyContent:"center",gap:8,background:xc},children:[f(P,{w:5,h:16,r:2,tone:"dark",style:{transform:"skewX(-14deg)"}}),f(P,{w:16,h:10,r:3,tone:"accent"}),f(P,{w:5,h:16,r:2,tone:"dark",style:{transform:"skewX(14deg)"}})]}),heading:f("div",{style:{...B,padding:14,display:"flex",alignItems:"center"},children:f(P,{w:"64%",h:13,r:4,tone:"dark"})}),text:y("div",{style:{...B,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[f(P,{w:"100%",h:6,r:3,tone:"soft"}),f(P,{w:"96%",h:6,r:3,tone:"soft"}),f(P,{w:"100%",h:6,r:3,tone:"soft"}),f(P,{w:"58%",h:6,r:3,tone:"soft"})]}),image:f("div",{style:{position:"absolute",inset:14,borderRadius:7,background:xc}}),button:f("div",{style:{...B,display:"flex",alignItems:"center",justifyContent:"center"},children:f(P,{w:"34%",h:16,r:8,tone:"accent"})}),menu:y("div",{style:{...B,padding:"14px 22%",display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[f(P,{w:"48%",h:7,r:3,tone:"dark"}),f(P,{w:"82%",h:5,r:2,tone:"soft"}),f(P,{w:"66%",h:5,r:2,tone:"soft"}),f(P,{w:"74%",h:5,r:2,tone:"soft"}),f(P,{w:"58%",h:5,r:2,tone:"soft"})]}),emailform:y("div",{style:{...B,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:9},children:[f(P,{w:"56%",h:8,r:3,tone:"dark"}),y("div",{style:{display:"flex",gap:6},children:[f("div",{style:{flex:1,height:16,borderRadius:5,border:`1px solid ${Pe.line}`}}),f(P,{w:"30%",h:16,r:5,tone:"accent"})]})]}),sociallogos:f("div",{style:{...B,display:"flex",alignItems:"center",justifyContent:"center",gap:9},children:[0,1,2,3].map(e=>f(P,{w:16,h:16,r:8,tone:"dark"},e))}),search:f("div",{style:{...B,padding:"0 18%",display:"flex",alignItems:"center"},children:y("div",{style:{flex:1,height:22,borderRadius:11,border:`1px solid ${Pe.line}`,display:"flex",alignItems:"center",gap:7,padding:"0 9px"},children:[f("div",{style:{width:9,height:9,borderRadius:5,border:`2px solid ${Pe.dark}`}}),f(P,{w:"46%",h:5,r:2,tone:"soft"})]})}),cart:y("div",{style:{...B,display:"flex",alignItems:"center",justifyContent:"center",gap:7},children:[f("div",{style:{width:22,height:18,borderRadius:"3px 3px 6px 6px",border:`2px solid ${Pe.dark}`}}),f("div",{style:{padding:"2px 6px",borderRadius:6,border:`1.5px solid ${Pe.dark}`},children:f(P,{w:7,h:7,r:2,tone:"dark"})})]}),countryswitch:y("div",{style:{...B,padding:14,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:5},children:[y("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"4px 8px",border:`1px solid ${Pe.line}`},children:[f(P,{w:22,h:6,r:2,tone:"dark"}),f(P,{w:6,h:4,r:1,tone:"soft"})]}),y("div",{style:{width:"46%",display:"flex",flexDirection:"column",gap:4,padding:6,border:`1px solid ${Pe.line}`},children:[f(P,{w:"80%",h:4,r:2,tone:"accent"}),f(P,{w:"64%",h:4,r:2,tone:"soft"}),f(P,{w:"72%",h:4,r:2,tone:"soft"})]})]}),legalline:y("div",{style:{...B,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:9},children:[f("div",{style:{height:1,background:Pe.line}}),y("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[f(P,{w:"38%",h:5,r:2,tone:"soft"}),y("div",{style:{display:"flex",gap:5},children:[f(P,{w:14,h:5,r:2,tone:"soft"}),f(P,{w:14,h:5,r:2,tone:"soft"}),f(P,{w:14,h:5,r:2,tone:"soft"})]})]})]}),fallback:f("div",{style:{position:"absolute",inset:14,borderRadius:8,background:Pe.block}})};function qg({type:e}){let o=NA[e]??"",t=MA[o]??zg[o]??zg.fallback;return f("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 ir,jsxs as HA}from"react/jsx-runtime";import{StylesIcon as WA}from"efficient-easel/rail";import{Tooltip as GA}from"efficient-shell/ui";function $g({tokenRef:e,siteId:o,onClose:t,onNotify:r,tab:a,onTabChange:n}){let s=Zt();return HA("div",{className:"sf-styles",children:[ir(va,{icon:ir(WA,{}),title:l("Site styles"),context:ir(GA,{content:l("{name} \u2014 renamed in the Console: {place}.",{name:s,place:l("Storefront \u25B8 Sites \u25B8 Settings")}),className:"sf-name-tip",children:ir("span",{className:"sf-name-text",children:s})}),onHide:t}),ir("div",{className:"sf-insp-body sf-scroll",children:ir(Gn,{tokenRef:e,siteId:o,onNotify:r,tab:a,onTabChange:n})})]})}import{jsx as jg}from"react/jsx-runtime";var zA="M6 3h12a1 1 0 0 1 1 1v17l-7-4-7 4V4a1 1 0 0 1 1-1z";function Kg({size:e=15,className:o,strokeWidth:t=1.7}){return jg("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:t,strokeLinecap:"round",strokeLinejoin:"round",className:o,"aria-hidden":"true",focusable:"false",children:jg("path",{d:zA})})}import{jsx as de,jsxs as Do,Fragment as KA}from"react/jsx-runtime";import{Fragment as ib,useEffect as fb,useRef as vc}from"react";import{useTreeDrag as cb}from"efficient-easel/drag";import{ImageIcon as VA,TextLinesIcon as XA,TrashIcon as db}from"efficient-easel/icons";import{Subtree as ub,TreeRow as ia,TreeRowAction as pb,TreeSeam as mb}from"efficient-easel/tree";import{useEaselStrings as YA}from"efficient-easel/strings";var{Provider:UK,useSelection:Vg}=Ia("selectedLocationPartId");function Xg(e,o,t){return`${e}::${o}::${t}`}function Yg(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 UA}from"react";var qA={level:"groups"},Qg=qA,gc=new Set;function So(e){Qg=e;for(let o of gc)o()}function $A(e){return gc.add(e),()=>{gc.delete(e)}}var Zg=()=>Qg;function Jg(){return UA($A,Zg,Zg)}function eb(e,o,t){let r=[];return e.forEach((a,n)=>{let s=o(a),i=r.find(c=>c.key===s);i||(i={key:s,name:t(a),items:[]},r.push(i)),i.items.push({item:a,index:n})}),r}function KK(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 sa=e=>String(e?.group??""),bc=new WeakMap,jA=0;function pl(e){let o=bc.get(e);return o||(o=`loc${++jA}`,bc.set(e,o)),o}var ob=(e,o)=>o||e||"Ungrouped",tb={photo:"",group:"",groupName:"",name:"City name",state:"State",country:"Country",timezone:"GMT \xB7 UTC +0",address:`Address line one
|
|
16
|
+
Address line two`,phone:"+00 000 0000",hours:"Mon\u2013Fri 9:00\u201318:00",lat:0,lng:0,mapsUrl:""};function St(e){return eb(e,sa,o=>String(o?.groupName??"")).map(o=>({key:o.key,name:o.name,cards:o.items.map(t=>t.item)}))}var yc=e=>e.flatMap(o=>o.cards),rb=(e,o,t)=>Math.min(Math.max(e,o),t);function ml(e,o,t){let r=0;for(let a=0;a<e.length;a++)if(sa(e[a])===o){if(r===t)return a;r++}return-1}function Sc(e,o,t){let r=St(e);if(o<0||o>=r.length)return e;let[a]=r.splice(o,1),n=rb(o<t?t-1:t,0,r.length);return r.splice(n,0,a),yc(r)}function Cc(e,o,t,r,a){let n=St(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[c]=s.cards.splice(t,1),p=o===r?c:{...c,group:i.key,groupName:i.name};p!==c&&bc.set(p,pl(c));let u=rb(s===i&&t<a?a-1:a,0,i.cards.length);return i.cards.splice(u,0,p),yc(n)}function ab(e,o){let t=St(e),r=t.find(n=>n.key===o),a={...tb,group:o,groupName:r?.name??""};return r?(r.cards.push(a),yc(t)):[...e,a]}function nb(e){let o=new Set(St(e).map(a=>a.key)),t=o.size+1,r=`Group ${t}`;for(;o.has(r);)r=`Group ${++t}`;return{cards:[...e,{...tb,group:r,groupName:""}],key:r}}function lb(e,o){return e.filter(t=>sa(t)!==o)}function sb(e,o,t){let r=ml(e,o,t);return r<0?e:e.filter((a,n)=>n!==r)}function YK(e,o,t){let r=e.flatMap((s,i)=>sa(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 ZK(e,o,t){return o.flatMap(r=>{let a=e.filter(n=>sa(n)===r);return a.length?a:t(r)})}var Il="ContactLocations";function ZA({size:e=13}){return Do("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[de("circle",{cx:"12",cy:"12",r:"9"}),de("path",{d:"M3 12h18M12 3c2.6 2.6 2.6 15.4 0 18M12 3c-2.6 2.6-2.6 15.4 0 18"})]})}function QA({size:e=13}){return Do("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[de("path",{d:"M12 21s6-5 6-10a6 6 0 10-12 0c0 5 6 10 6 10z"}),de("circle",{cx:"12",cy:"11",r:"2"})]})}function JA({size:e=13}){return Do("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[de("path",{d:"M9 4 3 6.5v13L9 17l6 3 6-2.5v-13L15 7z"}),de("path",{d:"M9 4v13M15 7v13"})]})}var xl=e=>({parentId:`locations-${e}`,slot:"groups"}),wc=(e,o)=>({parentId:`locations-${e}`,slot:`cities:${o}`});function xb(e,o){let{readOnly:t,selected:r}=o,a=YA().tree,n=o.data?.content??[],s=e.kind===Og.kind,i=vc(null);fb(()=>{let I=r?.type===Il?String(r.props.id):null;I&&I!==i.current&&So({level:"groups"}),i.current=I},[r?.props.id]);let{selectedLocationPartId:c,setSelectedLocationPartId:p,setSelectHandler:u}=Vg(),m=Jg(),x=(I,v)=>{let L=n[I];L&&o.replace(I,{type:L.type,props:{...L.props,locations:v}})},g=I=>{let v=n[I]?.props?.locations;return Array.isArray(v)?v:[]},C=cb({keyOf:I=>`group:${I.si}:${I.index}`,readOnly:!!t,canDrop:(I,v)=>v.parentId===xl(I.si).parentId&&v.slot==="groups",onDrop:(I,v)=>{x(I.si,Sc(g(I.si),I.index,v.index)),m.level==="city"&&So({level:"groups"})},onStep:(I,v)=>{x(I.si,Sc(g(I.si),I.index,v<0?I.index-1:I.index+2)),m.level==="city"&&So({level:"groups"})}}),w=cb({keyOf:I=>`city:${I.si}:${I.group}:${I.index}`,readOnly:!!t,canDrop:(I,v)=>v.parentId===xl(I.si).parentId&&v.slot.startsWith("cities:"),onDrop:(I,v)=>{let L=v.slot.slice(7);x(I.si,Cc(g(I.si),I.group,I.index,L,v.index)),So({level:"group",key:L})},onStep:(I,v)=>{x(I.si,Cc(g(I.si),I.group,I.index,I.group,v<0?I.index-1:I.index+2)),m.level==="city"&&So({level:"group",key:I.group})}}),b=vc(n);b.current=n;let k=vc(()=>{});fb(()=>{u(I=>{let v=Yg(I);if(!v)return;let L=b.current.findIndex(F=>F.props?.id===v.nodeId);L<0||k.current(L,{level:v.part,index:v.index})})},[u]);let S=(I,v)=>{i.current=n[I]?.props?.id??null,o.select(I),So(v),e.reveal();let L=n[I]?.props?.id;typeof L=="string"&&(v.level==="image"||v.level==="map")?p(Xg(L,v.index,v.level)):p(null),typeof L=="string"&&o.scrollTo(L)};return k.current=S,{renderLocationTree:(I,v,{rowClick:L,isCollapsed:F,toggleCollapse:O})=>{let A=g(v),H=St(A),le=String(I.props.id),q=s&&r?.props.id===le,W=_=>de(mb,{...t?{}:C.seam({place:{...xl(v),index:_}})},`seam:${le}:groups:${_}`),ge=(_,ae)=>de(mb,{...t?{}:w.seam({place:{...wc(v,_),index:ae}})},`seam:${le}:cities:${_}:${ae}`);return Do(KA,{children:[de(ia,{icon:de(XA,{size:13}),name:l("Texts"),words:a,onSelect:()=>S(v,{level:"texts"}),selected:q&&m.level==="texts",rowProps:{onClick:L(()=>S(v,{level:"texts"}))}}),H.map((_,ae)=>{let Be=`${le}::grp::${_.key}`,Ke=F(Be),Co=q&&m.level==="group"&&m.key===_.key,De=_.name||_.key?ob(_.key,_.name):l("Ungrouped"),_e={...wc(v,_.key),index:_.cards.length},ao=w.row({item:{si:v,group:_.key,index:-1},place:_e,into:_e,canDrag:!1},{onClick:L(()=>S(v,{level:"group",key:_.key}))}),Ne=C.row({item:{si:v,index:ae},place:{...xl(v),index:ae}},ao.rowProps);return Do(ib,{children:[ae===0&&W(0),de(ia,{icon:de(ZA,{size:13}),name:De,words:a,onSelect:()=>S(v,{level:"group",key:_.key}),selected:Co,draggable:Ne.draggable,dragging:Ne.dragging,drop:Ne.drop??ao.drop,fold:{open:!Ke,label:l("group"),onToggle:()=>O(Be)},actions:de(pb,{kind:"delete",label:lt("Delete {label} group ({n} city)","Delete {label} group ({n} cities)",_.cards.length,{label:De}),onClick:()=>{x(v,lb(A,_.key)),So({level:"groups"})},children:de(db,{size:15})}),rowProps:Ne.rowProps,children:de("span",{className:"es-group-count",children:_.cards.length})}),!Ke&&Do(ub,{children:[_.cards.map((be,ye)=>{let Z=ml(A,_.key,ye),fo=q&&m.level==="city"&&m.index===Z,E=String(be?.name??"")||l("City"),Q=`${le}::city::${pl(be)}`,J=F(Q),{rowProps:Se,...ue}=w.row({item:{si:v,group:_.key,index:ye},place:{...wc(v,_.key),index:ye}},{onClick:L(()=>S(v,{level:"city",index:Z}))});return Do(ib,{children:[ye===0&&ge(_.key,0),de(ia,{icon:de(QA,{size:13}),name:E,words:a,onSelect:()=>S(v,{level:"city",index:Z}),selected:fo,...ue,fold:{open:!J,label:E,onToggle:()=>O(Q)},actions:de(pb,{kind:"delete",label:l("Delete {name}",{name:E}),onClick:()=>{x(v,sb(A,_.key,ye)),So({level:"group",key:_.key})},children:de(db,{size:15})}),rowProps:Se}),!J&&Do(ub,{children:[de(ia,{icon:de(VA,{size:13}),name:l("Image"),words:a,onSelect:()=>S(v,{level:"image",index:Z}),selected:q&&m.level==="image"&&m.index===Z,rowProps:{onClick:L(()=>S(v,{level:"image",index:Z}))}}),de(ia,{icon:de(JA,{size:13}),name:l("Map"),words:a,onSelect:()=>S(v,{level:"map",index:Z}),selected:q&&m.level==="map"&&m.index===Z,rowProps:{onClick:L(()=>S(v,{level:"map",index:Z}))}})]}),ge(_.key,ye+1)]},pl(be))}),Do("button",{type:"button",className:"sf-add-card",onClick:()=>{let be=ab(A,_.key);x(v,be);let ye=St(be).find(Z=>Z.key===_.key);So(ye&&ye.cards.length?{level:"city",index:ml(be,_.key,ye.cards.length-1)}:{level:"group",key:_.key})},children:[de("span",{className:"sf-plus sf-plus--sm",children:"+"}),l("Add city")]})]}),W(ae+1)]},Be)}),Do("button",{type:"button",className:"sf-add-card",onClick:()=>{let{cards:_,key:ae}=nb(A);x(v,_),S(v,{level:"group",key:ae})},children:[de("span",{className:"sf-plus sf-plus--sm",children:"+"}),l("Add group")]})]})},sectionPressed:I=>{I?.type===Il&&So({level:"groups"})}}}import{useEffect as rO,useRef as aO}from"react";import{createNode as gb,newId as bb}from"efficient-easel/data";import{useEaselApi as nO}from"efficient-easel/easel";import{resetForDocumentSwitch as eO,saveStatusForNewDocument as oO,saveStatusOf as tO}from"efficient-easel/screen/lib/document-switch";function Ib(e){return!e.docId||e.saveStatus==="saving"?!1:e.seededDocId!==e.docId}function hb(e,o){let t=e.some(n=>n?.type===ce),r=e[e.length-1],a=!t&&r?.type===re?r:null;return{remove:e.filter(n=>n?.type===re&&n!==a).map(n=>String(n.props?.id??"")).filter(Boolean),seedHeader:!e.some(n=>n?.type===Fe),seedFooter:o.hasChromeDoc&&!t&&!a}}function yb(e,o){let{adapter:t,capabilities:r,currentSlug:a,docId:n,data:s,saveStatus:i}=ke(),{hasSiteSettings:c,hasPinnedChrome:p}=r,u=!!r.editsPinnedInPlace&&a!==Et,m=a===Et,x=nO().getState,g=aO(null);rO(()=>{if(!Ib({docId:n,saveStatus:i,seededDocId:g.current})||(g.current=n,!p))return;let C=x().appState.data,w=C.content,b=s?.content??[],k=(L,F)=>L.some(O=>O?.type===F);if(!c){let L=new Set(Ta(w)),F=L.size?w.filter(A=>!L.has(A.props.id)):w;L.size&&e.setDocument({...C,content:F});let O=Xd(F,b);if(O.includes(re)){let A=F.length,H=e.insertSection(re,A);e.replaceComponent(Eo,A,{type:re,props:{id:H,blocks:nl()}})}O.includes(Fe)&&e.insertNode(Eo,0,al());return}if(m){let L=lr(w);if(L!==w&&e.setDocument({...C,content:[...L]}),!L.find(F=>F.type===re)&&!k(b,re)&&!k(L,ce)&&!k(b,ce)){let F=(A,H)=>gb(o,A,H),O={type:re,props:{blocks:nl()}};e.insertNode(Eo,L.length,ra(O,F,bb(ce)))}return}if(u){let L=!!t?.pinnedChrome?.state().docId,F=hb(w,{hasChromeDoc:L}),O=new Set([...F.remove,...Ta(w.filter(H=>!F.remove.includes(String(H.props.id))))]),A=O.size?w.filter(H=>!O.has(String(H.props.id))):w;if(A.length!==w.length&&e.setDocument({...C,content:A}),F.seedFooter&&!k(b,re)&&!k(b,ce)){let H=(q,W)=>gb(o,q,W),le={type:re,props:{blocks:nl()}};e.insertNode(Eo,A.length,ra(le,H,bb(ce)))}if(F.seedHeader&&!k(b,Fe)){let H=A[0]?.type==="SiteHeader"?1:0;e.insertNode(Eo,H,al())}return}let S=w.filter(L=>L.type!==re),I=new Set(Ta(S)),v=I.size?S.filter(L=>!I.has(L.props.id)):S;v.length!==w.length&&e.setDocument({...C,content:v}),!k(v,Fe)&&!k(b,Fe)&&e.insertNode(Eo,0,al())},[n,i,s,x,e,c,p,m,u,t])}import{useEffect as vb,useState as wb}from"react";var hl=new Map;async function lO(e,o){try{return(await Ze().site.get({siteId:o})).slug?.trim()||null}catch(t){return console.warn("[editor-site-slug] could not resolve the site slug",t),null}}function Sb(e,o){let t=hl.get(o);return t||(t=lO(e,o),hl.set(o,t),t.catch(()=>{hl.get(o)===t&&hl.delete(o)})),t}var sO=/^(localhost|(?:[a-z0-9-]+\.)+localhost|127(?:\.\d{1,3}){3}|0\.0\.0\.0|\[::1\]|::1)$/i;function kc(e){return!!e&&sO.test(e)}function Cb(e){let{pageSlug:o,siteSlug:t,hostname:r}=e,a=o===Ha?"/":`/${encodeURIComponent(o)}`;if(!kc(r))return a;let n=t?.trim();return n?`${a}?site=${encodeURIComponent(n)}`:a}function kb(e){let{pageSlug:o,siteId:t,token:r}=e,[a,n]=wb(null),[s,i]=wb(null),c=Ed();vb(()=>i(c?new URL(c).hostname:window.location.hostname),[c]),vb(()=>{if(!kc(s)||!t||!r){n(null);return}let u=!1;return Sb(r,t).then(m=>{u||n(m)}),()=>{u=!0}},[s,t,r]);let p=Cb({pageSlug:o,siteSlug:a,hostname:s});return c?`${c}${p}`:p}import{jsx as fa,jsxs as iO}from"react/jsx-runtime";import{ExternalIcon as Tb}from"efficient-easel/icons";import{Button as fO,Tooltip as Fb,buttonClasses as cO}from"efficient-shell/ui";function dO({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 Eb({liveHref:e,pageId:o,draftLink:t}){return t&&o?fa(Fb,{content:l("Open your saved draft in a new tab. Visitors don't see it."),children:fa(fO,{variant:"secondary",onClick:()=>{dO({pageId:o,liveHref:e,draftLink:t})},rightIcon:fa(Tb,{size:15}),"aria-label":l("Preview your saved draft in a new tab"),children:l("Preview")})}):fa(Fb,{content:l("Preview the live site (opens in a new tab)"),children:iO("a",{className:cO({variant:"secondary"}),href:e,target:"_blank",rel:"noopener noreferrer","aria-label":l("Preview the live site in a new tab"),children:[l("Preview"),fa(Tb,{size:15})]})})}import{useCallback as mO,useEffect as xO,useRef as Ab,useState as IO}from"react";import{useSyncExternalStore as uO}from"react";var fr=new Map,Tc=new Set;function Fc(e,o){if(!(fr.has(e)&&fr.get(e)===o)){fr.set(e,o);for(let t of Tc)t()}}function jV(e,o){Fc(e,o)}function KV(e,o){let t=fr.get(e);Fc(e,o??(t==="live"?"changed":t))}function VV(e,o){Fc(e,o??"live")}function XV(e){return fr.get(e)}function pO(e){return Tc.add(e),()=>{Tc.delete(e)}}function Lb(e){let o=()=>e?fr.get(e):void 0;return uO(pO,o,o)}function Pb(e,o){return e==="live"&&o?"changed":e}function Rb({live:e,onPress:o,busy:t=!1}){let r=e==="live"?l("Everything is live"):e==="changed"?l("Changes not live yet"):e==="never"?l("Never published"):null;return{label:l("Publish"),tooltip:e==="never"?l("Put this page on your site"):l("Put your changes on your site"),status:r,quiet:e==="live"?{label:l("Published"),reason:l("Everything is live")}:null,onPress:o,busy:t}}function Ob(e){let{docId:o,capabilities:t,hasUnsavedEdits:r,onPublish:a}=ke(),n=Pb(Lb(o??null),r),[s,i]=IO(!1),c=Ab(e);c.current=e;let p=Ab(!0);xO(()=>(p.current=!0,()=>{p.current=!1}),[]);let u=mO(()=>{i(!0),a(c.current).finally(()=>{p.current&&i(!1)})},[a]);if(t.canPublish)return Rb({live:n,onPress:u,busy:s})}import{buildPaletteSections as hO,categoryLabel as gO,matchesQuery as bO,paletteWithoutPinned as yO,pinnedSection as SO}from"efficient-easel/screen/lib/puck/palette-sections";var Bb=["general","commerce","service"],cr=[{key:"openers",title:"Hero & intros",defaultExpanded:!0,templateable:!0,sections:[{type:"Hero",label:"Hero Slideshow",set:"general"},{type:"HeroSingle",label:"Hero",set:"general"},{type:"IntroBleed",label:"Scroll-Over Text",set:"general"}]},{key:"shop",title:"Shop & galleries",templateable:!0,sections:[{type:"Collections",label:"Collections",set:"commerce"},{type:"BrandStrip",label:"Brand Strip",set:"commerce"},{type:"AlloyWheelsListing",label:"List",set:"commerce"},{type:"CatalogFilterBar",label:"Catalog Filter Bar",set:"commerce"},{type:"ProductGrid",label:"Product Grid",set:"commerce"},{type:"FitmentFinder",label:"Fitment Form",set:"commerce"},{type:"Gallery",label:"Tabbed Gallery",set:"commerce"},{type:"GalleryB",label:"Customer Photo Grid",set:"commerce"},{type:"SpecStrip",label:"Spec Strip",set:"general"}]},{key:"product",title:"Product page",templateable:!0,sections:[{type:"ProductHero",label:"Product Hero",set:"commerce"},{type:"SpecTable",label:"Spec Table",set:"commerce"},{type:"ProcessSteps",label:"Image & Text Columns",set:"general"},{type:"DetailRows",label:"Feature Rows",set:"commerce"},{type:"FitmentTable",label:"Fitment Table",set:"commerce"},{type:"TyreSizes",label:"Tyre Sizes",set:"commerce"},{type:"TyreFitment",label:"Tyre Fitment Form",set:"commerce"},{type:"EuTyreLabel",label:"EU Tyre Label",set:"commerce"},{type:"RelatedProducts",label:"Related Products",set:"commerce"},{type:"BundleOffer",label:"Bundle Products",set:"commerce"}]},{key:"checkout",title:"Checkout & ordering",templateable:!0,sections:[{type:"OrderSummary",label:"Order Table",set:"general"},{type:"DeliveryOptions",label:"Delivery Options",set:"commerce"},{type:"PaymentBadges",label:"Payment Methods",set:"general"},{type:"CheckoutCTA",label:"Ready-to-Order Banner",set:"commerce"}]},{key:"about",title:"About & brand story",templateable:!0,sections:[{type:"Manifesto",label:"Brand Text",set:"general"},{type:"Timeline",label:"Story Timeline",set:"general"},{type:"TimelineTrack",label:"Milestone Timeline",set:"general"},{type:"Footprint",label:"Locations Map",set:"general"}]},{key:"content",title:"Text & content",templateable:!0,sections:[{type:"Prose",label:"Editorial Text",set:"general"},{type:"ParagraphsA",label:"Lead Text",set:"general"},{type:"Split",label:"Image & Text Split",set:"general"},{type:"Cards",label:"Cards",set:"general"},{type:"KeyFeatures",label:"Key Features",set:"general"}]},{key:"proof",title:"Stats & social proof",templateable:!0,sections:[{type:"Stats",label:"Stats",set:"general"},{type:"StatsParagraph",label:"Stats with Text",set:"general"},{type:"Chart",label:"Chart",set:"general"},{type:"Mockup",label:"Mockup Card",set:"general"},{type:"Testimonials",label:"Testimonials",set:"general"},{type:"Reviews",label:"Reviews",set:"service"},{type:"Logos",label:"Logos",set:"general"}]},{key:"promo",title:"Promotions & sign-ups",templateable:!0,sections:[{type:"Banner",label:"Banner",set:"general"},{type:"TitleWithButtons",label:"Call-to-Action Heading",set:"general"},{type:"Ticker",label:"Scrolling Bar",set:"general"},{type:"Countdown",label:"Countdown",set:"general"},{type:"Subscribe",label:"Signup Form",set:"service"}]},{key:"blog",title:"Blog & journal",templateable:!0,sections:[{type:"Masthead",label:"Issue Header",set:"general"},{type:"FeaturedCover",label:"Feature Banner",set:"general"},{type:"LongRead",label:"Article Text",set:"general"},{type:"Series",label:"Recurring Columns",set:"general"},{type:"Events",label:"Latest Posts",set:"service"}]},{key:"navigation",title:"Navigation & wayfinding",templateable:!0,sections:[{type:"Breadcrumb",label:"Breadcrumb",set:"general"},{type:"CategoryBar",label:"Category Bar",set:"general"},{type:"DocTabs",label:"Document Tabs",set:"general"}]},{key:"legal",title:"Legal & documents",templateable:!0,sections:[{type:"DocMasthead",label:"Document Header",set:"general"},{type:"DocBody",label:"Document Text",set:"general"},{type:"DocMetaCards",label:"Document Detail Cards",set:"general"}]},{key:"contact",title:"Contact, FAQ & forms",templateable:!0,sections:[{type:"FAQ",label:"Q&A",set:"general"},{type:"ContactRouting",label:"Contact Form",set:"service"},{type:"ContactLocations",label:"Contact / Locations",set:"general"},{type:"SubmitBuild",label:"Photo Submission Form",set:"service"},{type:"ReviewForm",label:"Review Form",set:"service"},{type:"Form",label:"Form",set:"service"},{type:"AppointmentBooking",label:"Booking Form",set:"service"}]},{key:"structure",title:"Layout, structure & embeds",templateable:!1,sections:[{type:"SectionHeader",label:"Section Header",set:"general"},{type:"Flex",label:"Box",set:"general"},{type:"Spacer",label:"Spacer",set:"general"},{type:"Divider",label:"Divider",set:"general"},{type:"CustomHTML",label:"Custom HTML",set:"general"}]}];function rX(){return Object.fromEntries(cr.map(e=>[e.key,{title:e.title,components:e.sections.map(o=>o.type),...e.defaultExpanded?{defaultExpanded:!0}:{}}]))}var CO={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."},aX=["Grid"],nX=Array.from(new Set([...cr.flatMap(e=>e.sections.map(o=>o.type)),...Object.keys(CO)])),lX=Object.fromEntries(cr.flatMap(e=>e.sections.map(o=>[o.type,o.label]))),vO={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"},gl={...vO,...Object.fromEntries(cr.flatMap(e=>e.sections.map(o=>[o.type,o.set])))};function Db(e){return Object.prototype.hasOwnProperty.call(gl,e)?gl[e]:void 0}function Ec(e){return Object.keys(gl).filter(o=>gl[o]===e).sort()}var sX=Ec("general"),iX=Ec("commerce"),fX=Ec("service"),Lc="Flex",tt="Box",cX=`${tt}es`;function wO(e){return e==="section"?"Blank section":tt}function Pc(e,o,t){return e===Lc?wO(o):t}var kO={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 _b(e){return kO[e]?.label}var Nb=Lc;var TO={general:!0,commerce:!0,service:!0};function Rc(e){let o=e?.sets;return o?Object.fromEntries(Bb.map(t=>[t,o.includes(t)])):TO}function gX(e=uo()){return Rc(e.blocks)}var dr="content",he="Flex",FO="Text & media",EO="Layout & structure",LO=[{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:FO})),PO=(cr.find(e=>e.key==="structure")?.sections??[]).map(e=>({type:e.type,label:e.label,group:EO})),Mb=[...LO,...PO],Ac=[{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:tt}],SX=Ac.map(e=>e.type),RO=1,AO=Ac.filter(e=>e.type!=="HeroGroup");function OO(e){return e<RO?Ac:AO}var BO={Flex:{slot:dr,choices:()=>Mb},Grid:{slot:dr,choices:()=>Mb},HeroGroup:{slot:dr,choices:OO}};function Hb(e,o=0){let t=BO[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}}}var DO={Manifesto:(e,o)=>({type:he,props:{...e(he),id:o(he),direction:"row",share:"equal",sectionHeightMode:"screen",name:"Brand Text",content:[ze(he,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)]}),ze(he,e,o,{direction:"column",name:"Picture",content:[]})]}}),Split:(e,o)=>({type:he,props:{...e(he),id:o(he),direction:"row",share:"equal",sectionHeightMode:"screen",sectionHeightValue:70,name:"Image & Text Split",content:[ze(he,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)]}),ze(he,e,o,{direction:"column",name:"Image",content:[ze("ImageBlock",e,o)]})]}}),Subscribe:(e,o)=>({type:he,props:{...e(he),id:o(he),direction:"column",name:"Subscribe",content:[ze("Heading",e,o),ze("Text",e,o),ze("Form",e,o)]}})};function bl(e){return DO[e]??null}import{blockTypesIn as Oc}from"efficient-easel/screen/lib/puck/block-types-in";var _O="ImageBlock",NO=3,yl=(e,o,t={})=>({type:e,props:{...o?.(e)??{},id:yr(e),...t}}),MO=e=>({...e?.(he)??{},direction:"column",[dr]:[yl(_O,e),yl(he,e,{direction:"column",[dr]:[yl("Heading",e),yl("Text",e)]})]}),_o={Hero:{slot:"slides",childType:"HeroSlide",addLabel:"Add slide",slider:!0,seeds:()=>wh.map(e=>({...e}))},HeroSlide:{slot:"groups",childType:"HeroGroup",addLabel:`Add ${tt.toLowerCase()}`,seeds:()=>[],addBlocked:La,notice:Zl},HeroSingle:{slot:"boxes",childType:"HeroGroup",addLabel:`Add ${tt.toLowerCase()}`,seeds:()=>[],addBlocked:La,notice:Zl},ProcessSteps:{slot:"boxes",childType:he,addLabel:`Add ${tt.toLowerCase()}`,seeds:e=>Array.from({length:NO},()=>MO(e)),skipSeed:e=>Array.isArray(e.steps)&&e.steps.length>0}};function AX(e){for(let[o,t]of Object.entries(e)){if(o in _o&&_o[o]!==t)throw new Error(`lib/puck/slot-specs: "${o}" already has a slot spec`);_o[o]=t}}function OX(e,o){let t=_o[e];return t?{slot:t.slot,children:t.seeds(o).map(r=>({type:t.childType,props:{id:yr(t.childType),...r}}))}:null}var Wb=()=>({}),Gb=new Map;function HO(e){let o=Gb.get(e);if(o)return o;let t=new Set,r=_o[e];if(r)for(let s of r.seeds(Wb))for(let i of Oc({type:r.childType,props:s}))t.add(i);let a=bl(e);if(a){let s=0;for(let i of Oc(a(Wb,c=>`${c}-${s+=1}`)))t.add(i)}t.delete(e);let n=[...t].sort();return Gb.set(e,n),n}function WO(e){if(!e||!e.sets&&!e.allow&&!e.deny?.length)return null;let o=Rc(e),t=e.allow?new Set(e.allow):null,r=new Set(e.deny??[]),a=new Set(Object.keys(e.host??{})),n=c=>{if(r.has(c))return!1;if(a.has(c))return!0;let p=Db(c);return!p||!o[p]?!1:t?t.has(c):!0},s=new Map,i=c=>{let p=s.get(c);if(p!==void 0)return p;s.set(c,!1);let u=n(c)&&HO(c).every(i);return s.set(c,u),u};return{sets:o,offers:i}}var GO="block-offer";function Bc(e=uo()){return e.cache(GO,()=>WO(qu(e)))}function zb(e,o=uo()){let t=Bc(o);return t?t.offers(e):!0}function Ub(e,o=0){let t=UO(e,o),r=t?Bc():null;return t&&r?zO(t,r):t}function zO(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 UO(e,o){let t=_o[e];if(t)return{source:"section",slot:t.slot,choices:null,spec:t};let r=Hb(e,o);if(r)return{source:"container",slot:r.slot,choices:r.choices,spec:null};let a=lg(e);return a?{source:"footer",slot:ng,choices:a,spec:null}:null}import{useSyncExternalStore as qO}from"react";var Dc=null,_c=new Set;function qb(e){if(Dc!==e){Dc=e;for(let o of _c)o()}}function $O(e){return _c.add(e),()=>{_c.delete(e)}}function XX(){return qO($O,()=>Dc,()=>null)}function $b(e){if(!e)return null;let o=e.lastIndexOf(":");return o>0?e.slice(0,o):null}function jb(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 Kb="sf-editor-left-view";function Vb(){if(typeof window>"u")return"pages";try{let e=window.localStorage.getItem(Kb);return e==="sections"||e==="styles"||e==="media"?e:"pages"}catch{return"pages"}}function Xb(e){if(!(typeof window>"u"))try{window.localStorage.setItem(Kb,e)}catch{}}function Yb(e,o,t=!1){return e==="styles"&&!o||e==="media"&&!t?"sections":e}function Zb(e,o){return e?"sections":o}var Qb="Footer",jO=[Ge,Qb,ce],ur=e=>{let o=e?.content;return Array.isArray(o)?o:[]},Ct=e=>{let o=e?.zones;return o&&typeof o=="object"&&!Array.isArray(o)?o:null},ca=e=>{let o=e?.props?.id;return typeof o=="string"?o:void 0},Jb=e=>e.slice(0,Math.max(0,e.lastIndexOf(":")));function ey(e){let o=lr(ur(e)),t=o.some(r=>r?.type===ce);return o.filter(r=>r?.type===Ge||r?.type===ce||r?.type===Qb&&!t)}function Nc(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=ca(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(Jb(s))||(n.add(s),r(i),a=!0)}}return t}function Mc(e,o){let t={},r={};for(let[a,n]of Object.entries(e??{}))(o.has(Jb(a))?t:r)[a]=n;return{owned:t,rest:r}}function oY(e,o){if(!o)return e;let t=ey(o);if(!t.length)return e;let r=t.filter(i=>i.type===Ge),a=t.filter(i=>i.type!==Ge),n={...e,content:[...r,...ur(e),...a]},{owned:s}=Mc(Ct(o),Nc(t,Ct(o)));return Object.keys(s).length&&(n.zones={...Ct(e)??{},...s}),n}function tY(e,o){if(!o)return{page:e,chrome:null};let t=ey(o),r=new Set(t.map(ca).filter(S=>!!S)),a=[],n=[];for(let S of ur(e)){let I=ca(S);I&&r.has(I)||nr(S?.type)?n.push(S):a.push(S)}let s=new Map(n.map(S=>[ca(S),S])),i=new Set,c=lr(ur(o)).flatMap(S=>{let I=ca(S);if(!I||!r.has(I))return[S];let v=s.get(I);return v?(i.add(v),[v]):[]});for(let S of n)i.has(S)||c.some(I=>I?.type===S.type)||(c=S.type===Ge?[S,...c]:[...c,S]);c=lr(c);let p=c.length===ur(o).length&&c.every((S,I)=>S===ur(o)[I]),u=Ct(e),m=Nc(c,u),{owned:x,rest:g}=Mc(u,m),C=Mc(Ct(o),Nc(t,Ct(o))).owned,w={...o,content:p?o.content:[...c]},b=Ct(o);if(b||Object.keys(x).length){let S={};for(let[I,v]of Object.entries(b??{}))I in C?I in x&&(S[I]=x[I]):S[I]=v;for(let[I,v]of Object.entries(x))I in S||(S[I]=v);w.zones=S,b&&KO(w.zones,b)&&(w.zones=b)}let k={...e,content:a};return u&&(Object.keys(g).length||!Object.keys(C).length?k.zones=g:delete k.zones),{page:k,chrome:w}}function KO(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 oy(e,o){return t=>e(t)||t!==void 0&&jO.includes(t)&&o()}var Sl=null;function aY(e){Sl=e}function ty(){return!!(Sl&&Sl.state().lockHolder)}function pr(){return Sl!==null}var VO=new Set(["BookingBox","SubmitBox"]);function XO(e){return typeof e=="string"&&VO.has(e)}var ry=oy(XO,ty);import{Fragment as Wc,jsx as vl,jsxs as mB}from"react/jsx-runtime";import{useMemo as xB,useRef as py}from"react";import{EaselCanvas as IB,useEaselApi as hB}from"efficient-easel/easel";import{jsx as iy,Fragment as aB,jsxs as nB}from"react/jsx-runtime";import{useEffect as fy,useLayoutEffect as lB}from"react";var Cl="data-theme",ay="light";function YO(e){return e.getAttribute(Cl)===ay?"light":"dark"}function ZO(e,o){return YO(e)===o?!1:(o==="light"?e.setAttribute(Cl,ay):e.removeAttribute(Cl),!0)}function QO(e){return Dl(e).getItem(Fl)}function dY(e,o){Dl(e).setItem(Fl,o)}function JO(e,o,t=new Date().getHours()){return ed({mode:o.mode,override:QO(e),switchShown:o.switchShown,hour:t})}function ny(e,o){let t=e.documentElement;if(!t)return()=>{};let r=()=>ZO(t,JO(e,o));r();let a=e.defaultView?.MutationObserver;if(!a)return()=>{};let n=new a(r);return n.observe(t,{attributes:!0,attributeFilter:[Cl]}),()=>n.disconnect()}var eB="style";function oB(e,o){let t=ld(o),r=!1;for(let a of nd){let n=t[a]??"";e.style.getPropertyValue(a)!==n&&(n?e.style.setProperty(a,n):e.style.removeProperty(a),r=!0)}return r}function ly(e,o){let t=e.body;if(!t)return()=>{};let r=()=>oB(t,o);r();let a=e.defaultView?.MutationObserver;if(!a)return()=>{};let n=new a(r);return n.observe(t,{attributes:!0,attributeFilter:[eB]}),()=>n.disconnect()}var tB=String.raw`(function (doc) {
|
|
17
|
+
if (doc.__sfFitWords) return;
|
|
18
|
+
var win = doc.defaultView;
|
|
19
|
+
var SELECTOR = "h1,h2,h3,h4,h5,h6,[class*='font-heading'],[class*='font-display']";
|
|
20
|
+
var MIN_SCALE = 0.3, MIN_PX = 16, SLACK = 1;
|
|
21
|
+
|
|
22
|
+
function measure(el) {
|
|
23
|
+
var widest = 0, current = 0, last = null, split = false, lastBlock = null;
|
|
24
|
+
function blockOf(n) {
|
|
25
|
+
for (var p = n.parentElement; p && p !== el; p = p.parentElement) {
|
|
26
|
+
var d = win.getComputedStyle(p).display;
|
|
27
|
+
if (d.indexOf("inline") !== 0 && d !== "contents") return p;
|
|
28
|
+
}
|
|
29
|
+
return el;
|
|
30
|
+
}
|
|
31
|
+
function close() { if (current > widest) widest = current; current = 0; last = null; }
|
|
32
|
+
var walker = doc.createTreeWalker(el, 5), range = doc.createRange(), node;
|
|
33
|
+
while ((node = walker.nextNode())) {
|
|
34
|
+
if (node.nodeType === 1) {
|
|
35
|
+
if (node.tagName === "BR" || node.tagName === "WBR") close();
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
var block = blockOf(node);
|
|
39
|
+
if (block !== lastBlock) close();
|
|
40
|
+
lastBlock = block;
|
|
41
|
+
var re = /(\S+)|(\s+)/g, m;
|
|
42
|
+
while ((m = re.exec(node.data))) {
|
|
43
|
+
if (m[2]) { close(); continue; }
|
|
44
|
+
range.setStart(node, m.index);
|
|
45
|
+
range.setEnd(node, m.index + m[0].length);
|
|
46
|
+
var rects = range.getClientRects();
|
|
47
|
+
for (var i = 0; i < rects.length; i++) {
|
|
48
|
+
var r = rects[i];
|
|
49
|
+
if (r.width <= 0) continue;
|
|
50
|
+
current += r.width;
|
|
51
|
+
if (last && r.top > last.top + last.height / 2) split = true;
|
|
52
|
+
last = r;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
close();
|
|
57
|
+
return { widest: widest, split: split };
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function lineWidth(el) {
|
|
61
|
+
var cs = win.getComputedStyle(el);
|
|
62
|
+
return el.getBoundingClientRect().width - parseFloat(cs.paddingLeft) - parseFloat(cs.paddingRight)
|
|
63
|
+
- parseFloat(cs.borderLeftWidth) - parseFloat(cs.borderRightWidth);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// ⚠️ THE HEADING ELEMENT IS NEVER TOUCHED — no style="", no data-*. This
|
|
67
|
+
// runs before React hydrates, and React 19 in development reports ANY
|
|
68
|
+
// attribute that differs from what it rendered ("a tree hydrated but some
|
|
69
|
+
// attributes didn't match"): first our inline font-size on the hero (which
|
|
70
|
+
// React owns via --heading-size), then, when that moved to a data-sf-fit
|
|
71
|
+
// attribute, the attribute itself. So the fitted size lives only in this
|
|
72
|
+
// script's own stylesheet, in <head>, addressed to each heading by its
|
|
73
|
+
// POSITION (":root>*:nth-child(2)>…"). A position goes stale when the page's
|
|
74
|
+
// structure changes, so the rules are rewritten in the MutationObserver
|
|
75
|
+
// callback, which runs before the next paint. !important so the size also
|
|
76
|
+
// beats a part's own inline size.
|
|
77
|
+
var head = doc.head || doc.documentElement;
|
|
78
|
+
var fitEl = doc.createElement("style");
|
|
79
|
+
fitEl.id = "storefront-fit-words-sizes";
|
|
80
|
+
head.appendChild(fitEl);
|
|
81
|
+
var fitted = new Map(); // heading -> fitted size, e.g. "43.8px"
|
|
82
|
+
|
|
83
|
+
function pathOf(el) {
|
|
84
|
+
var parts = [];
|
|
85
|
+
for (var e = el; e && e.parentElement; e = e.parentElement) {
|
|
86
|
+
var i = 1, s = e;
|
|
87
|
+
while ((s = s.previousElementSibling)) i++;
|
|
88
|
+
parts.unshift("*:nth-child(" + i + ")");
|
|
89
|
+
}
|
|
90
|
+
return ":root>" + parts.join(">");
|
|
91
|
+
}
|
|
92
|
+
function writeRules() {
|
|
93
|
+
var css = "";
|
|
94
|
+
fitted.forEach(function (size, el) {
|
|
95
|
+
if (!el.isConnected) { fitted.delete(el); return; }
|
|
96
|
+
css += pathOf(el) + "{font-size:" + size + " !important}";
|
|
97
|
+
});
|
|
98
|
+
if (fitEl.textContent !== css) fitEl.textContent = css;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
function unfit(el) {
|
|
102
|
+
if (fitted.delete(el)) writeRules();
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
function fits(el) {
|
|
106
|
+
var m = measure(el);
|
|
107
|
+
return !m.split && m.widest <= lineWidth(el) + SLACK;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
function fit(el) {
|
|
111
|
+
unfit(el);
|
|
112
|
+
if (lineWidth(el) <= 0) return; // hidden, or not laid out yet
|
|
113
|
+
if (fits(el)) return;
|
|
114
|
+
var set = parseFloat(win.getComputedStyle(el).fontSize);
|
|
115
|
+
if (!set) return;
|
|
116
|
+
var floor = Math.max(set * MIN_SCALE, MIN_PX);
|
|
117
|
+
if (floor >= set) return;
|
|
118
|
+
function size(px) { return Math.floor(px * 10) / 10 + "px"; }
|
|
119
|
+
// The SEARCH tries sizes on the element's own style and then puts that
|
|
120
|
+
// attribute back byte for byte (or removes it, if it had none), so nothing
|
|
121
|
+
// is left for React to see. A trial in a stylesheet instead restyles the
|
|
122
|
+
// whole page per step: a full pass on the Hartes home took 75–160ms at 4x
|
|
123
|
+
// CPU that way.
|
|
124
|
+
var hadStyle = el.hasAttribute("style"), origStyle = el.getAttribute("style");
|
|
125
|
+
function attempt(px) { el.style.setProperty("font-size", size(px), "important"); }
|
|
126
|
+
function done() { if (hadStyle) el.setAttribute("style", origStyle); else el.removeAttribute("style"); }
|
|
127
|
+
attempt(floor);
|
|
128
|
+
if (!fits(el)) { done(); return; } // even the floor does not fit: leave it as set
|
|
129
|
+
var lo = floor, hi = set;
|
|
130
|
+
for (var i = 0; i < 8; i++) {
|
|
131
|
+
var mid = (lo + hi) / 2;
|
|
132
|
+
attempt(mid);
|
|
133
|
+
if (fits(el)) lo = mid; else hi = mid;
|
|
134
|
+
}
|
|
135
|
+
done();
|
|
136
|
+
fitted.set(el, size(lo));
|
|
137
|
+
writeRules();
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
// What each heading measured right after we last fitted it, so the
|
|
141
|
+
// ResizeObserver below can tell a real change (a font swap, a rotate, a
|
|
142
|
+
// container that moved) from the size change our own write just caused.
|
|
143
|
+
var seen = new WeakMap();
|
|
144
|
+
function remember(el) {
|
|
145
|
+
var b = el.getBoundingClientRect();
|
|
146
|
+
seen.set(el, b.width + "x" + b.height);
|
|
147
|
+
}
|
|
148
|
+
function fitAndRemember(el) { fit(el); remember(el); }
|
|
149
|
+
|
|
150
|
+
// ⚠️ A ResizeObserver, NOT fonts.ready or a resize event, and the reason is
|
|
151
|
+
// WHEN it runs: after layout, BEFORE paint. The web font arriving re-wraps a
|
|
152
|
+
// fitted heading, and fonts.ready resolves only after that frame is painted —
|
|
153
|
+
// measured on the Hartes hero: a 42px jump in 2 of 3 loads. A size change
|
|
154
|
+
// reported here is fitted in the same frame, so the broken state is never
|
|
155
|
+
// drawn. It also covers a container that resizes.
|
|
156
|
+
var ro = new win.ResizeObserver(function (entries) {
|
|
157
|
+
for (var i = 0; i < entries.length; i++) {
|
|
158
|
+
var el = entries[i].target;
|
|
159
|
+
var b = el.getBoundingClientRect();
|
|
160
|
+
if (seen.get(el) === b.width + "x" + b.height) continue; // our own write
|
|
161
|
+
fitAndRemember(el);
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
function watch(el) { if (!seen.has(el)) { remember(el); ro.observe(el); } }
|
|
165
|
+
|
|
166
|
+
function fitAll() {
|
|
167
|
+
var els = doc.querySelectorAll(SELECTOR);
|
|
168
|
+
for (var i = 0; i < els.length; i++) { fitAndRemember(els[i]); watch(els[i]); }
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
var queued = 0, all = false, touched = new Set();
|
|
172
|
+
function run() {
|
|
173
|
+
queued = 0;
|
|
174
|
+
if (all) { all = false; touched.clear(); fitAll(); return; }
|
|
175
|
+
var els = Array.from(touched);
|
|
176
|
+
touched.clear();
|
|
177
|
+
for (var i = 0; i < els.length; i++) if (els[i].isConnected) { fitAndRemember(els[i]); watch(els[i]); }
|
|
178
|
+
}
|
|
179
|
+
function schedule() { if (!queued) queued = win.requestAnimationFrame(run); }
|
|
180
|
+
function scheduleAll() { all = true; schedule(); }
|
|
181
|
+
|
|
182
|
+
fitAll();
|
|
183
|
+
// A backstop only: a font that changes widths without changing any
|
|
184
|
+
// heading's box is not seen by the ResizeObserver.
|
|
185
|
+
if (doc.fonts && doc.fonts.ready) doc.fonts.ready.then(scheduleAll, function () {});
|
|
186
|
+
|
|
187
|
+
// …and the viewport WIDTH, which the ResizeObserver cannot stand in for: a
|
|
188
|
+
// heading sized to its own text (fit-content, a flex item) keeps the SAME box
|
|
189
|
+
// when the phone turns to 844, so nothing reports a change and it would stay
|
|
190
|
+
// shrunk. The probe's rotate check caught exactly that.
|
|
191
|
+
var lastWidth = win.innerWidth;
|
|
192
|
+
function onResize() {
|
|
193
|
+
if (win.innerWidth === lastWidth) return; // a phone's toolbar changing HEIGHT is not our business
|
|
194
|
+
lastWidth = win.innerWidth;
|
|
195
|
+
scheduleAll();
|
|
196
|
+
}
|
|
197
|
+
win.addEventListener("resize", onResize);
|
|
198
|
+
|
|
199
|
+
var mo = new win.MutationObserver(function (records) {
|
|
200
|
+
// Positions first: a node added or removed anywhere can shift the
|
|
201
|
+
// nth-child path of a fitted heading, and this callback runs before paint.
|
|
202
|
+
if (fitted.size) {
|
|
203
|
+
for (var q = 0; q < records.length; q++) if (records[q].type === "childList") { writeRules(); break; }
|
|
204
|
+
}
|
|
205
|
+
for (var i = 0; i < records.length; i++) {
|
|
206
|
+
var r = records[i];
|
|
207
|
+
var target = r.target.nodeType === 1 ? r.target : r.target.parentElement;
|
|
208
|
+
var own = target && target.closest(SELECTOR);
|
|
209
|
+
if (own) touched.add(own);
|
|
210
|
+
for (var j = 0; j < r.addedNodes.length; j++) {
|
|
211
|
+
var n = r.addedNodes[j];
|
|
212
|
+
if (n.nodeType !== 1) continue;
|
|
213
|
+
if (n.matches(SELECTOR)) touched.add(n);
|
|
214
|
+
var inner = n.querySelectorAll(SELECTOR);
|
|
215
|
+
for (var k = 0; k < inner.length; k++) touched.add(inner[k]);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
if (touched.size) schedule();
|
|
219
|
+
});
|
|
220
|
+
mo.observe(doc.body, { childList: true, subtree: true, characterData: true });
|
|
221
|
+
|
|
222
|
+
doc.__sfFitWords = function stop() {
|
|
223
|
+
win.removeEventListener("resize", onResize);
|
|
224
|
+
ro.disconnect();
|
|
225
|
+
mo.disconnect();
|
|
226
|
+
if (queued) win.cancelAnimationFrame(queued);
|
|
227
|
+
fitted.clear();
|
|
228
|
+
fitEl.remove();
|
|
229
|
+
delete doc.__sfFitWords;
|
|
230
|
+
};
|
|
231
|
+
// For the probe and for debugging: which headings are fitted, at what size,
|
|
232
|
+
// and the sheet that holds it (disable it to read a heading's set size).
|
|
233
|
+
doc.__sfFitWords.fitted = fitted;
|
|
234
|
+
doc.__sfFitWords.sheet = fitEl;
|
|
235
|
+
})(document);`,rB="storefront-fit-words";function sy(e){let o=e.createElement("script");return o.id=rB,o.textContent=tB,(e.head??e.documentElement).appendChild(o),()=>{e.__sfFitWords?.(),o.remove()}}var sB=`
|
|
236
|
+
[${bo}][${bo}] { cursor: text; }
|
|
237
|
+
[${Je}][${Je}][${Je}] {
|
|
238
|
+
outline: 1px solid ${Qr.accent};
|
|
239
|
+
outline-offset: 2px;
|
|
240
|
+
}
|
|
241
|
+
[${Je}][${Je}]:has([${Je}]),
|
|
242
|
+
[data-puck-overlay-portal][data-puck-overlay-portal]:has([${Je}]) {
|
|
243
|
+
outline: none;
|
|
244
|
+
}
|
|
245
|
+
[${Je}][${Je}][${Je}][data-es-typing],
|
|
246
|
+
[data-es-typing] [${Je}][${Je}][${Je}] {
|
|
247
|
+
outline: none;
|
|
248
|
+
}
|
|
249
|
+
`;function cy({children:e,document:o}){let{theme:t,themeMode:r,themeSwitchShown:a}=ne(),n=Ho(t);return fy(()=>{if(o)return ny(o,{mode:r,switchShown:a})},[o,r,a]),fy(()=>{if(o)return ly(o,n)},[o,n]),lB(()=>{if(o)return sy(o)},[o]),nB(aB,{children:[iy(zd,{}),iy("style",{children:sB}),e]})}import{jsx as Hc}from"react/jsx-runtime";import{useEffect as iB,useState as fB,useSyncExternalStore as cB}from"react";import{Banner as dB}from"efficient-shell/ui";var uB=()=>()=>{},dy=()=>!1;function pB({report:e}){let o=cB(e?e.subscribe:uB,e?()=>e.state().loadFailed:dy,e?()=>e.state().loadFailed:dy),[t,r]=fB(!1);return iB(()=>{o||r(!1)},[o]),!o||t?null:Hc("aside",{className:"sf-canvas-notice",children:Hc(dB,{tone:"warning",onDismiss:()=>r(!0),children:l("The header and footer could not load. They are hidden for now and nothing in them is saved. Reload to try again.")})})}function uy(){let{adapter:e}=ke();return Hc(pB,{report:e?.pinnedChrome})}function gB({children:e,componentId:o}){let{selectedPartId:t}=oa();return sx(t,o)?vl(Wc,{}):vl(Wc,{children:e})}function my(e){let{mirrorHostStyles:o}=Gl(),t=qd(),r=py(null),a=bB(r),{onDocument:n}=e,s=i=>{r.current=i,n?.(i)};return mB(Wc,{children:[vl(uy,{}),vl(IB,{...e,onDocument:s,typing:a,metadata:e.metadata??t,height:"fill",mirrorStyles:o,frameWrapper:cy,overlay:gB})]})}function bB(e){let o=hB(),t=$o(),r=oa(),a=py({ops:t,parts:r});return a.current={ops:t,parts:r},xB(()=>{let n={getItemById:i=>o.getState().getItemById(i),getSelectorForId:i=>o.getState().getSelectorForId(i),get components(){return o.getState().config.components},replace:(i,c,p)=>a.current.ops.replaceComponent(i,c,p)},s=(i,c)=>{let p=ux(i,n);if(!p)return null;let u=c,m=()=>(u=px(u,u?.ownerDocument??e.current,i),u);return m()?{element:m,value:p.value,rules:p.rules,multiline:p.multiline,write:p.write,toolbar:{offered:p.offered}}:null};return{at:i=>{let c=i.closest(`[${bo}]`),p=c?.getAttribute(bo);return c&&p?s(p,c):null},atSelection:()=>{let i=a.current.parts.selectedPartId;return i?s(i,null):null},onChange:i=>{if(!i.typing){Ai(null);return}let c=i.element.closest(`[${bo}]`)?.getAttribute(bo)??null;Ai(c),c&&a.current.parts.selectedPartId!==c&&a.current.parts.select(c)}}},[o,e])}var xy={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 yB="Save your page changes first";function Iy(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:yB}:{visible:!0,enabled:!0}:{visible:!1,hiddenReason:"no-site"}:{visible:!1,hiddenReason:"not-operator"}:{visible:!1,hiddenReason:"no-console"}}var hy="storefront-editor:save-as-template";var SB="plain",gy=[{label:"Plain",value:"plain"},{label:"Filled",value:"filled"},{label:"Line",value:"line"}],CB="line",vB={KeyFeatures:"filled"};function da(e){return vB[e]??SB}function $Y(e,o){return to(gy,da(o),e)}function jY(e){return to(gy,CB,e)}var wB="inline",kB=[{label:"In this section",value:"inline"},{label:"In its own box",value:"own-box"}];var rt={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"}},mr="SectionHeader";function by(e){return e in rt}function TB(e){return to(kB,wB,e)}var FB=new Set(["Flex"]);function EB(e){return!!e?.type&&FB.has(e.type)}function XY(e,o,t){if(!EB(o))return e;let r={};for(let[a,n]of Object.entries(e))t.includes(a)||(r[a]=n);return r}function YY(e,o,t){if(TB(o)!=="own-box")return e;let r={};for(let[a,n]of Object.entries(e))t.includes(a)||(r[a]=n);return r}function yy(e,{nodeDefaults:o,newNodeId:t,sectionLabel:r,blockIsOffered:a}){let n=bl(e);return n?n(o,t):by(e)&&a(he)&&a(mr)?{type:he,props:{...o(he),id:t(he),direction:"column",name:`${r(e)} section`,content:[{type:mr,props:{...o(mr),id:t(mr),...rt[e]?.headStyle?{headStyle:rt[e].headStyle}:{},...rt[e]?.headRowGap?{rowGap:rt[e].headRowGap}:{},...rt[e]?.headDescriptionSize?{descriptionSize:rt[e].headDescriptionSize}:{},...da(e)!==da(mr)?{eyebrowLook:da(e)}:{}}},{type:e,props:{...o(e),id:t(e),headPlacement:"own-box"}}]}}:_o[e]?.fixed===!0?{type:e,props:{...o(e),id:t(e),layout:"boxes"}}:null}import{useEffect as LB,useState as PB}from"react";function Sy(){let e=Me().chrome?.products?.list,[o,t]=PB(null);return LB(()=>{if(!e)return;let r=!1;return e().then(a=>{r||t(a)}),()=>{r=!0}},[e]),o}function wy({mode:e,open:o}){let{setSelectedHeroId:t,setSelectHandler:r}=jn(),a=MB().tree,n=e,s=n.kind==="ticker"?n.heroId:null,i=wl(c=>{c&&(o({kind:"ticker",heroId:c}),aI(c))},[o]);return at(()=>{t(s)},[s,t]),at(()=>{r(i)},[r,i]),{partRows:(c,{rowClick:p})=>{let u=String(c.props.id);return c.type==="Hero"&&ve(NB,{icon:ve(er,{type:"ticker",size:13}),name:l(Kr),onSelect:()=>i(u),selected:s===u,rowProps:{onClick:p(()=>i(u))},words:a})}}}function HB(e){let{adapter:o,capabilities:t,currentSlug:r,siteId:a,docId:n,hasUnsavedEdits:s,bridgeCapabilities:i,notifyParent:c,token:p}=ke(),{hasPreviewLink:u}=t,m=Ze(Me()).preview?.draftLink,x=Ob(e.data),g=Iy({hasTrustedConsole:!!p,canCreatePlatformTemplate:i.canCreatePlatformTemplate,capabilities:t,siteId:a,hasUnsavedEdits:s}),C=wl(()=>{!a||!r||c(hy,{siteId:a,slug:r})},[c,a,r]),w=kb({pageSlug:r,siteId:a,token:p}),b=o.previewHref?.(r)??w;return{barLead:()=>g.visible&&ve(OB,{side:"bottom",content:g.enabled?l("Save this website as a platform template"):l(g.disabledReason),children:ve("span",{className:"sf-tip-disabled",tabIndex:g.enabled?void 0:0,children:ve(AB,{variant:"secondary",disabled:!g.enabled,onClick:C,rightIcon:ve(Kg,{}),children:l("Save as Template")})})}),barTrail:()=>u&&r&&ve(Eb,{liveHref:b,pageId:n??null,draftLink:m}),mainAction:x}}function WB(){return zc("svg",{width:"17",height:"17",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round",children:[ve("path",{d:"M12 3a9 9 0 0 0 0 18 2.3 2.3 0 0 0 2.3-2.3c0-.55-.22-1.05-.57-1.42-.34-.37-.56-.87-.56-1.43A2.35 2.35 0 0 1 15.6 13.5H18a3 3 0 0 0 3-3c0-4.14-4-7.5-9-7.5z"}),ve("circle",{cx:"7.7",cy:"11.3",r:"1.05",fill:"currentColor",stroke:"none"}),ve("circle",{cx:"12",cy:"8",r:"1.05",fill:"currentColor",stroke:"none"}),ve("circle",{cx:"16",cy:"11",r:"1.05",fill:"currentColor",stroke:"none"})]})}function GB(e,o){let{capabilities:t,templateId:r,siteId:a,tokenRef:n,navigate:s}=ke(),{hasSiteTheme:i,explainsSiteSettings:c}=t,p=k=>o.setView(k),[u,m]=RB(Xt[0].id),{surface:x,setSurface:g}=LI(),C=()=>{if(i){p("styles"),o.reveal(),Ji();return}e.show(mc),e.reveal(),Ji()},w={id:"pages",label:l("Pages"),icon:ve(DB,{}),panel:({onHide:k})=>ve(bI,{activeSurface:x,onPreviewSurface:g,onNavigate:S=>{g(null),s(r?{kind:"template",id:r,pageSlug:S}:{kind:"page",slug:S,siteId:a??void 0})},onClose:k})},b=[];return!i&&c&&b.push({id:"appearance",label:l("Appearance"),icon:ve(WB,{}),active:e.kind==="website",onSelect:C}),i&&b.push({id:"styles",label:l("Site styles"),icon:ve(_B,{}),panel:({onHide:k,notify:S})=>ve($g,{tokenRef:n,siteId:a??void 0,onClose:k,onNotify:S,tab:u,onTabChange:m})}),{railLead:[w],railTrail:b,resolveLeftView:(k,S)=>Yb(k,i,S),openSettings:C,openStyles:()=>{m(lI),p("styles")}}}function zB(e,o,t,r){let{kind:a,open:n}=e,{selected:s,zoneOf:i}=o;at(()=>{qb(s?.type==="BookingBox"&&s.props.region==="confirm"?$b(i(String(s.props.id))):null)},[s?.props.id]);let c=xb(e,o),{capabilities:{hasSiteSettings:p}}=ke(),{setSelected:u,setSelectHandler:m}=ne(),{chat:x,setChat:g,setSelected:C,setSelectHandler:w}=$n(),b=a==="header";at(()=>{u(b)},[b,u]),at(()=>{m(()=>n(pc))},[m,n]);let k=wl(()=>n(Bg),[n]),S=a==="chat";at(()=>{C(S)},[S,C]),at(()=>{w(k)},[w,k]);let{setOpenHandler:I}=jr(),v=wl(()=>n(Dg),[n]);at(()=>{I(v)},[I,v]);let L=wy(e),F=HB(o),O=GB(e,r),A=t.device;return{...L,...F,...O,hasOwnRows:H=>H.type===Il,ownRows:c.renderLocationTree,sectionPressed:c.sectionPressed,wrap:H=>ve(zl.Provider,{value:!0,children:ve(kI.Provider,{value:A,children:H})}),addPanelRow:H=>p?zc("div",{className:"sf-addside-sitewide",children:[ve("span",{className:"sf-addside-sitewide-glyph","aria-hidden":"true",children:ve(er,{type:"chat",size:16})}),zc("button",{type:"button",className:"sf-addside-sitewide-name",onClick:()=>{H(),k()},children:[l("Live chat"),ve("span",{className:"sf-addside-sitewide-desc",children:l("A chat bubble on every page")})]}),ve(BB,{checked:x.enabled,onChange:le=>g({enabled:le}),ariaLabel:l("Show the chat bubble on the whole site")})]}):void 0}}var Cy=null,Gc=new WeakMap;function UB(e){let o=Rd();if(!e||!o)return e;Cy!==o&&(Cy=o,Gc=new WeakMap);let t=Gc.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},Gc.set(e,t)),t}var qB={isLockedBlock:ry,duplicateBlocked:ll,nestDepth:(e,o,t)=>o===Pa?du(e,t):0,newSectionNode:yy,canAddTo:(e,o)=>UB(Ub(e,o)),blockIsOffered:zb},$B=new Proxy(xy,{get:(e,o)=>{let t=Reflect.get(e,o);return typeof t=="string"?l(t):t}}),jB={labelAtLevel:(e,o,t)=>l(Pc(e,o,t)),descriptions:$B,categoryLabel:e=>{let o=_b(e);return o===void 0?void 0:l(o)},firstSection:Nb,blockRowName:jb,plainText:ct,Icon:er,Thumbnail:qg,useProducts:Sy},KB={desktop:2e3,tablet:800,mobile:390},vy="desktop",VB={options:wI,initial:vy,fluid:vy,widths:KB},XB={read:Vb,write:e=>Xb(e),forSelection:(e,o)=>Zb(e,o)},YB={first:Fe,last:re,firstGroup:Ge,lastGroup:ce,isSectionGroup:nr,sectionGroupZone:sg,panelOf:e=>e===Fe?pc:null,get groupTab(){return pr()?pg:void 0},get groupBadge(){return pr()?mg():void 0},get changeNotice(){return pr()?xg():void 0},get band(){return pr()?ZB:void 0},get groupAccepts(){return pr()?dg:void 0}},ZB={foldable:!0};function QB(e){return{...wy(e),openSettings:()=>e.show(mc)}}var nQ={useOwnerName:Zt,useDocumentLabel:dI,useBridges:zB,useStandaloneBridges:QB,useDocumentPass:yb,blockRules:qB,blockLook:jB,devices:VB,leftView:XB,pinned:YB,Canvas:my,Inspector:Mg};export{rX as a,aX as b,nX as c,lX as d,tt as e,Rc as f,gX as g,Ze as h,qu as i,Mb as j,SX as k,bq as l,ch as m,xh as n,gh as o,bh as p,Pq as q,Rq as r,Aq as s,Oq as t,WP as u,Iu as v,Uq as w,Ea as x,ES as y,eN as z,it as A,oN as B,tN as C,Pa as D,du as E,re as F,yr as G,Eo as H,AX as I,OX as J,WO as K,su as L,wS as M,j_ as N,Fa as O,iu as P,kS as Q,TS as R,FS as S,X_ as T,Y_ as U,Z_ as V,Q_ as W,Ge as X,ce as Y,J9 as Z,ig as _,fg as $,to as aa,rt as ba,TB as ca,EB as da,XY as ea,YY as fa,sG as ga,Vn as ha,G9 as ia,oa as ja,aG as ka,Pn as la,wi as ma,Ut as na,cs as oa,ct as pa,To as qa,$d as ra,$e as sa,wr as ta,bo as ua,Je as va,bW as wa,$t as xa,yW as ya,SW as za,Mi as Aa,yx as Ba,Tn as Ca,UW as Da,qW as Ea,$W as Fa,jW as Ga,mT as Ha,Hr as Ia,Ox as Ja,Bx as Ka,Rn as La,G8 as Ma,z8 as Na,f_ as Oa,m_ as Pa,x_ as Qa,I_ as Ra,We as Sa,Jp as Ta,p5 as Ua,Ya as Va,Cw as Wa,I5 as Xa,ww as Ya,g5 as Za,tm as _a,js as $a,Ks as ab,T5 as bb,E5 as cb,L5 as db,P5 as eb,R5 as fb,Pr as gb,Ys as hb,Zs as ib,Ha as jb,dp as kb,Fr as lb,mp as mb,gH as nb,Bv as ob,bH as pb,Ra as qb,gu as rb,xN as sb,IN as tb,ZS as ub,hN as vb,yN as wb,yu as xb,SN as yb,JS as zb,CN as Ab,za as Bb,UH as Cb,Ds as Db,qH as Eb,lw as Fb,$H as Gb,WH as Hb,GH as Ib,iw as Jb,Ua as Kb,KH as Lb,Ap as Mb,Ca as Nb,ke as Ob,JB as Pb,oe as Qb,l as Rb,lt as Sb,tD as Tb,Me as Ub,Ey as Vb,Ly as Wb,_l as Xb,wv as Yb,aH as Zb,ip as _b,$o as $b,W_ as ac,q_ as bc,Jl as cc,$S as dc,dN as ec,xo as fc,ms as gc,d2 as hc,xs as ic,Oa as jc,h2 as kc,ys as lc,Ss as mc,O2 as nc,B2 as oc,Wu as pc,D2 as qc,_2 as rc,N2 as sc,ks as tc,fD as uc,uD as vc,Ft as wc,Xu as xc,Zu as yc,Ov as zc,cp as Ac,Ue as Bc,Bd as Cc,ID as Dc,Ay as Ec,hD as Fc,gD as Gc,Oy as Hc,SD as Ic,By as Jc,CD as Kc,Et as Lc,wD as Mc,kD as Nc,TD as Oc,FD as Pc,ya as Qc,ED as Rc,Ny as Sc,BD as Tc,Hd as Uc,Uy as Vc,qy as Wc,$y as Xc,Hl as Yc,DD as Zc,zv as _c,MH as $c,qe as ad,XH as bd,YH as cd,ZH as dd,QH as ed,JH as fd,zp as gd,gw as hd,o5 as id,t5 as jd,$a as kd,ja as ld,a5 as md,Dt as nd,Va as od,s5 as pd,i5 as qd,f5 as rd,Zp as sd,d5 as td,Sk as ud,oi as vd,Jo as wd,M4 as xd,H4 as yd,W4 as zd,z4 as Ad,U4 as Bd,q4 as Cd,$4 as Dd,Bk as Ed,j4 as Fd,K4 as Gd,V4 as Hd,ro as Id,X4 as Jd,Nk as Kd,Y4 as Ld,Z4 as Md,Ar as Nd,Q4 as Od,tn as Pd,_t as Qd,J4 as Rd,Fm as Sd,an as Td,nn as Ud,e3 as Vd,o3 as Wd,t3 as Xd,r3 as Yd,a3 as Zd,n3 as _d,l3 as $d,s3 as ae,i3 as be,f3 as ce,sn as de,fn as ee,cn as fe,dn as ge,c3 as he,xt as ie,d3 as je,u3 as ke,p3 as le,m3 as me,x3 as ne,I3 as oe,Zo as pe,h3 as qe,g3 as re,ni as se,b3 as te,li as ue,y3 as ve,S3 as we,si as xe,C3 as ye,Bm as ze,Dm as Ae,_m as Be,p0 as Ce,v3 as De,w3 as Ee,eo as Fe,sr as Ge,dA as He,Cg as Ie,kj as Je,Tj as Ke,Fj as Le,Ej as Me,Lj as Ne,Pj as Oe,Rj as Pe,Aj as Qe,Oj as Re,Bj as Se,Dj as Te,yI as Ue,CU as Ve,$n as We,WE as Xe,WU as Ye,jr as Ze,qU as _e,LI as $e,jV as af,KV as bf,VV as cf,XV as df,oY as ef,tY as ff,aY as gf,KU as hf,UK as if,Vg as jf,Xg as kf,jD as lf,BT as mf,DT as nf,On as of,IG as pf,_T as qf,Gx as rf,NT as sf,yG as tf,qx as uf,tf as vf,rf as wf,CI as xf,vI as yf,FU as zf,DU as Af,RI as Bf,C8 as Cf,NI as Df,Nf as Ef,Mf as Ff,JL as Gf,eP as Hf,Hf as If,rP as Jf,Vr as Kf,Yn as Lf,X8 as Mf,$f as Nf,aq as Of,nq as Pf,lq as Qf,sh as Rf,KP as Sf,VP as Tf,XP as Uf,Zq as Vf,Qq as Wf,oR as Xf,rR as Yf,Oh as Zf,l$ as _f,s$ as $f,Wh as ag,p$ as bg,Qr as cg,Uh as dg,Yf as eg,qh as fg,$h as gg,g$ as hg,jh as ig,IR as jg,b$ as kg,y$ as lg,S$ as mg,C$ as ng,hR as og,v$ as pg,w$ as qg,k$ as rg,bR as sg,T$ as tg,CR as ug,F$ as vg,Qf as wg,Q$ as xg,c9 as yg,d9 as zg,nl as Ag,So as Bg,Jg as Cg,eb as Dg,KK as Eg,sa as Fg,ob as Gg,tb as Hg,YK as Ig,ZK as Jg,tO as Kg,Sb as Lg,kc as Mg,Cb as Ng,Ub as Og,XX as Pg,Cl as Qg,YO as Rg,ZO as Sg,dY as Tg,HD as Ug,UD as Vg,SB as Wg,gy as Xg,CB as Yg,da as Zg,$Y as _g,jY as $g,nQ as ah};
|